{"version":3,"sources":["../../src/register.ts"],"names":["Plugin","preGenericsInitialization","container","InternationalizationHandler","preLogin","postLogin","watch","SapphireClient"],"mappings":";;;;;;;;AAOO,IAAM,cAAA,GAAN,MAAM,cAAA,SAAsBA,gBAAO,CAAA;AAAA,EACzC,QAAeC,mCAAyB,CAAA,CAAwB,OAA8B,EAAA;AAC7F,IAAAC,mBAAA,CAAU,IAAO,GAAA,IAAIC,qCAA4B,CAAA,OAAA,CAAQ,IAAI,CAAA;AAAA;AAC9D,EAEA,cAAqBC,kBAAQ,CAAuC,GAAA;AACnE,IAAM,MAAAF,mBAAA,CAAU,KAAK,IAAK,EAAA;AAAA;AAC3B,EAEA,QAAeG,mBAAS,CAA8B,GAAA;AACrD,IAAA,IAAI,IAAK,CAAA,OAAA,CAAQ,IAAM,EAAA,GAAA,EAAK,OAAS,EAAA;AACpC,MAAUH,mBAAA,CAAA,MAAA,CAAO,KAAK,gEAAgE,CAAA;AAEtF,MAAMI,cAAA,CAAAJ,mBAAA,CAAU,IAAK,CAAA,kBAAA,EAAoB,IAAK,CAAA,OAAA,CAAQ,KAAK,GAAI,CAAA,OAAA,IAAW,EAAE,CAC1E,CAAA,EAAA,CAAG,UAAU,MAAMA,mBAAA,CAAU,IAAK,CAAA,eAAA,EAAiB,CAAA,CACnD,EAAG,CAAA,QAAA,EAAU,MAAMA,mBAAA,CAAU,IAAK,CAAA,eAAA,EAAiB,CAAA;AAAA;AACtD;AAEF,CAAA;AAlB0C,MAAA,CAAA,cAAA,EAAA,eAAA,CAAA;AAAnC,IAAM,aAAN,GAAA;AAoBPK,wBAAA,CAAe,OAAQ,CAAA,8BAAA,CAA+B,aAAc,CAAAN,mCAAyB,GAAG,mCAAmC,CAAA;AACnIM,wBAAA,CAAe,OAAQ,CAAA,oBAAA,CAAqB,aAAc,CAAAH,kBAAQ,GAAG,kBAAkB,CAAA;AACvFG,wBAAA,CAAe,OAAQ,CAAA,qBAAA,CAAsB,aAAc,CAAAF,mBAAS,GAAG,mBAAmB,CAAA","file":"register.cjs","sourcesContent":["import './index';\n\nimport { Plugin, SapphireClient, container, postLogin, preGenericsInitialization, preLogin } from '@sapphire/framework';\nimport { watch } from 'chokidar';\nimport type { ClientOptions } from 'discord.js';\nimport { InternationalizationHandler } from './index';\n\nexport class I18nextPlugin extends Plugin {\n\tpublic static [preGenericsInitialization](this: SapphireClient, options: ClientOptions): void {\n\t\tcontainer.i18n = new InternationalizationHandler(options.i18n);\n\t}\n\n\tpublic static async [preLogin](this: SapphireClient): Promise<void> {\n\t\tawait container.i18n.init();\n\t}\n\n\tpublic static [postLogin](this: SapphireClient): void {\n\t\tif (this.options.i18n?.hmr?.enabled) {\n\t\t\tcontainer.logger.info('[i18next-Plugin]: HMR enabled. Watching for languages changes.');\n\n\t\t\twatch(container.i18n.languagesDirectory, this.options.i18n.hmr.options ?? {})\n\t\t\t\t.on('change', () => container.i18n.reloadResources())\n\t\t\t\t.on('unlink', () => container.i18n.reloadResources());\n\t\t}\n\t}\n}\n\nSapphireClient.plugins.registerPostInitializationHook(I18nextPlugin[preGenericsInitialization], 'I18next-PreGenericsInitialization');\nSapphireClient.plugins.registerPreLoginHook(I18nextPlugin[preLogin], 'I18next-PreLogin');\nSapphireClient.plugins.registerPostLoginHook(I18nextPlugin[postLogin], 'I18next-PostLogin');\n"]}