diff options
Diffstat (limited to 'admin/src/index.ts')
| -rw-r--r-- | admin/src/index.ts | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/admin/src/index.ts b/admin/src/index.ts new file mode 100644 index 0000000..4dff817 --- /dev/null +++ b/admin/src/index.ts @@ -0,0 +1,43 @@ +import { getTranslation } from './utils/getTranslation'; +import { PLUGIN_ID } from './pluginId'; +import { Initializer } from './components/Initializer'; +import { PluginIcon } from './components/PluginIcon'; + +export default { + register(app: any) { + app.addMenuLink({ + to: `plugins/${PLUGIN_ID}`, + icon: PluginIcon, + intlLabel: { + id: `${PLUGIN_ID}.plugin.name`, + defaultMessage: PLUGIN_ID, + }, + Component: async () => { + const { App } = await import('./pages/App'); + + return App; + }, + }); + + app.registerPlugin({ + id: PLUGIN_ID, + initializer: Initializer, + isReady: false, + name: PLUGIN_ID, + }); + }, + + async registerTrads({ locales }: { locales: string[] }) { + return Promise.all( + locales.map(async (locale) => { + try { + const { default: data } = await import(`./translations/${locale}.json`); + + return { data, locale }; + } catch { + return { data: {}, locale }; + } + }) + ); + }, +}; |
