@raclettejs/core 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/README.md +4 -2
- package/package.json +1 -1
- package/services/backend/package.json +1 -3
- package/services/frontend/src/orchestrator/components/chip/UserChip.vue +1 -1
- package/services/frontend/src/orchestrator/components/menu/UserNotifications.vue +4 -2
- package/services/frontend/src/orchestrator/setup/i18n.ts +251 -157
- package/dist/cli.js.map +0 -7
- package/dist/index.js.map +0 -7
- package/services/.DS_Store +0 -0
- package/services/backend/.DS_Store +0 -0
- package/services/backend/.env +0 -5
- package/services/backend/.vscode/launch.json +0 -18
- package/services/backend/dist/src/app.d.ts +0 -9
- package/services/backend/dist/src/app.js +0 -164
- package/services/backend/dist/src/core/backgroundTasks/taskManager.d.ts +0 -12
- package/services/backend/dist/src/core/backgroundTasks/taskManager.js +0 -135
- package/services/backend/dist/src/core/backgroundTasks/taskManagerTypes.d.ts +0 -19
- package/services/backend/dist/src/core/backgroundTasks/taskManagerTypes.js +0 -2
- package/services/backend/dist/src/core/backgroundTasks/toadSchedulerTypes.d.ts +0 -7
- package/services/backend/dist/src/core/backgroundTasks/toadSchedulerTypes.js +0 -1
- package/services/backend/dist/src/core/config/configService.d.ts +0 -38
- package/services/backend/dist/src/core/config/configService.js +0 -98
- package/services/backend/dist/src/core/config/configTypes.d.ts +0 -33
- package/services/backend/dist/src/core/config/configTypes.js +0 -5
- package/services/backend/dist/src/core/contracting/contractRegistrar.d.ts +0 -13
- package/services/backend/dist/src/core/contracting/contractRegistrar.js +0 -83
- package/services/backend/dist/src/core/contracting/contractTypes.d.ts +0 -18
- package/services/backend/dist/src/core/contracting/contractTypes.js +0 -1
- package/services/backend/dist/src/core/crud/crudRegistrar.d.ts +0 -6
- package/services/backend/dist/src/core/crud/crudRegistrar.js +0 -16
- package/services/backend/dist/src/core/crud/crudTypes.d.ts +0 -8
- package/services/backend/dist/src/core/crud/crudTypes.js +0 -1
- package/services/backend/dist/src/core/eventBus/eventBusEventMap.d.ts +0 -65
- package/services/backend/dist/src/core/eventBus/eventBusEventMap.js +0 -64
- package/services/backend/dist/src/core/eventBus/index.d.ts +0 -3
- package/services/backend/dist/src/core/eventBus/index.js +0 -7
- package/services/backend/dist/src/core/events/eventEmitter.d.ts +0 -13
- package/services/backend/dist/src/core/events/eventEmitter.js +0 -120
- package/services/backend/dist/src/core/http/headers.d.ts +0 -3
- package/services/backend/dist/src/core/http/headers.js +0 -22
- package/services/backend/dist/src/core/http/httpService.d.ts +0 -4
- package/services/backend/dist/src/core/http/httpService.js +0 -28
- package/services/backend/dist/src/core/http/httpTypes.d.ts +0 -15
- package/services/backend/dist/src/core/http/httpTypes.js +0 -1
- package/services/backend/dist/src/core/http/request-params.plugin.d.ts +0 -2
- package/services/backend/dist/src/core/http/request-params.plugin.js +0 -34
- package/services/backend/dist/src/core/payload/payloadRegistrar.d.ts +0 -45
- package/services/backend/dist/src/core/payload/payloadRegistrar.js +0 -121
- package/services/backend/dist/src/core/payload/payloadTypes.d.ts +0 -42
- package/services/backend/dist/src/core/payload/payloadTypes.js +0 -1
- package/services/backend/dist/src/core/pluginSystem/configGenerator/generatorTypes.d.ts +0 -49
- package/services/backend/dist/src/core/pluginSystem/configGenerator/generatorTypes.js +0 -1
- package/services/backend/dist/src/core/pluginSystem/configGenerator/index.d.ts +0 -14
- package/services/backend/dist/src/core/pluginSystem/configGenerator/index.js +0 -342
- package/services/backend/dist/src/core/pluginSystem/pluginFastifyInstance.d.ts +0 -3
- package/services/backend/dist/src/core/pluginSystem/pluginFastifyInstance.js +0 -161
- package/services/backend/dist/src/core/pluginSystem/pluginLoader.d.ts +0 -5
- package/services/backend/dist/src/core/pluginSystem/pluginLoader.js +0 -317
- package/services/backend/dist/src/core/pluginSystem/pluginTypes.d.ts +0 -51
- package/services/backend/dist/src/core/pluginSystem/pluginTypes.js +0 -6
- package/services/backend/dist/src/core/sockets/createSystemEventHandlers.d.ts +0 -20
- package/services/backend/dist/src/core/sockets/createSystemEventHandlers.js +0 -74
- package/services/backend/dist/src/core/sockets/index.d.ts +0 -2
- package/services/backend/dist/src/core/sockets/index.js +0 -65
- package/services/backend/dist/src/core/sockets/socketManager.d.ts +0 -3
- package/services/backend/dist/src/core/sockets/socketManager.js +0 -125
- package/services/backend/dist/src/core/sockets/socketTypes.d.ts +0 -32
- package/services/backend/dist/src/core/sockets/socketTypes.js +0 -1
- package/services/backend/dist/src/core/validation/schemaGenerator.d.ts +0 -6
- package/services/backend/dist/src/core/validation/schemaGenerator.js +0 -242
- package/services/backend/dist/src/core/validation/schemaTypes.d.ts +0 -15
- package/services/backend/dist/src/core/validation/schemaTypes.js +0 -1
- package/services/backend/dist/src/core/validation/sharedSchemas.d.ts +0 -8
- package/services/backend/dist/src/core/validation/sharedSchemas.js +0 -7
- package/services/backend/dist/src/corePlugins/raclette__core/client/generated-config.d.ts +0 -304
- package/services/backend/dist/src/corePlugins/raclette__core/client/generated-config.js +0 -359
- package/services/backend/dist/src/corePlugins/raclette__core/client/index.d.ts +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/client/index.js +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.model.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.model.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.schema.d.ts +0 -36
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.schema.js +0 -29
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.service.d.ts +0 -74
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/account.service.js +0 -242
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/events/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/events/index.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/crud.d.ts +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/crud.js +0 -9
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/payload.d.ts +0 -4
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/helpers/payload.js +0 -13
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/index.d.ts +0 -16
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/index.js +0 -48
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/index.js +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.get.d.ts +0 -24
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.get.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.getAll.d.ts +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.getAll.js +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.hardDelete.d.ts +0 -26
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.hardDelete.js +0 -32
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.patch.d.ts +0 -39
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.patch.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.post.d.ts +0 -30
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.post.js +0 -27
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.remove.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/account/routes/route.account.remove.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.model.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.model.js +0 -92
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.schema.d.ts +0 -128
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.schema.js +0 -97
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.service.d.ts +0 -63
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/composition.service.js +0 -212
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/events/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/events/index.js +0 -22
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/crud.d.ts +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/crud.js +0 -10
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/payload.d.ts +0 -4
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/helpers/payload.js +0 -11
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/index.d.ts +0 -46
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/index.js +0 -51
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/index.js +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.get.d.ts +0 -24
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.get.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.getAll.d.ts +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.getAll.js +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.hardDelete.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.hardDelete.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.patch.d.ts +0 -49
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.patch.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.post.d.ts +0 -40
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.post.js +0 -27
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.remove.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/composition/routes/route.composition.remove.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/events/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/events/index.js +0 -22
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/crud.d.ts +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/crud.js +0 -9
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/payload.d.ts +0 -4
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/helpers/payload.js +0 -11
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/index.d.ts +0 -16
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/index.js +0 -48
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.model.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.model.js +0 -61
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.schema.d.ts +0 -86
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.schema.js +0 -74
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.service.d.ts +0 -79
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/interactionLink.service.js +0 -272
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/index.js +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.get.d.ts +0 -24
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.get.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.getAll.d.ts +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.getAll.js +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.hardDelete.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.hardDelete.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.patch.d.ts +0 -39
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.patch.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.post.d.ts +0 -30
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.post.js +0 -27
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.remove.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/interactionLink/routes/route.interactionLink.remove.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/events/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/events/index.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/crud.d.ts +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/crud.js +0 -9
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/payload.d.ts +0 -4
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/helpers/payload.js +0 -13
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/index.d.ts +0 -17
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/index.js +0 -49
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.model.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.model.js +0 -30
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.schema.d.ts +0 -61
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.schema.js +0 -65
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.service.d.ts +0 -68
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/project.service.js +0 -230
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/index.js +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.get.d.ts +0 -24
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.get.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.getAll.d.ts +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.getAll.js +0 -28
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.hardDelete.d.ts +0 -26
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.hardDelete.js +0 -32
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.patch.d.ts +0 -38
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.patch.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.post.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.post.js +0 -27
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.remove.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/project/routes/route.project.remove.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/events/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/events/index.js +0 -39
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/crud.d.ts +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/crud.js +0 -9
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/payload.d.ts +0 -4
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/helpers/payload.js +0 -13
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/index.d.ts +0 -17
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/index.js +0 -49
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/index.js +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.get.d.ts +0 -24
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.get.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.getAll.d.ts +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.getAll.js +0 -28
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.hardDelete.d.ts +0 -26
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.hardDelete.js +0 -32
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.patch.d.ts +0 -39
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.patch.js +0 -34
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.post.d.ts +0 -40
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.post.js +0 -35
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.remove.d.ts +0 -26
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/routes/route.tag.remove.js +0 -32
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.model.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.model.js +0 -74
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.schema.d.ts +0 -68
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.schema.js +0 -71
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.service.d.ts +0 -65
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/tag/tag.service.js +0 -232
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/events/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/events/index.js +0 -31
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/crud.d.ts +0 -2
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/crud.js +0 -9
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/payload.d.ts +0 -4
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/helpers/payload.js +0 -11
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/index.d.ts +0 -17
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/index.js +0 -51
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/index.js +0 -15
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.get.d.ts +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.get.js +0 -33
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.getAll.d.ts +0 -25
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.getAll.js +0 -35
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patch.d.ts +0 -43
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patch.js +0 -37
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patchLastProject.d.ts +0 -23
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.patchLastProject.js +0 -29
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.post.d.ts +0 -34
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.post.js +0 -28
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.remove.d.ts +0 -26
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/routes/route.user.remove.js +0 -35
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.model.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.model.js +0 -145
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.schema.d.ts +0 -120
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.schema.js +0 -109
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.service.d.ts +0 -69
- package/services/backend/dist/src/corePlugins/raclette__core/server/datatypes/user/user.service.js +0 -225
- package/services/backend/dist/src/corePlugins/raclette__core/server/index.d.ts +0 -3
- package/services/backend/dist/src/corePlugins/raclette__core/server/index.js +0 -32
- package/services/backend/dist/src/domains/index.d.ts +0 -3
- package/services/backend/dist/src/domains/index.js +0 -8
- package/services/backend/dist/src/domains/system/index.d.ts +0 -3
- package/services/backend/dist/src/domains/system/index.js +0 -5
- package/services/backend/dist/src/domains/system/routes/index.d.ts +0 -3
- package/services/backend/dist/src/domains/system/routes/index.js +0 -13
- package/services/backend/dist/src/domains/system/routes/route.admin.redis.d.ts +0 -47
- package/services/backend/dist/src/domains/system/routes/route.admin.redis.js +0 -81
- package/services/backend/dist/src/domains/system/routes/route.deploy.d.ts +0 -14
- package/services/backend/dist/src/domains/system/routes/route.deploy.js +0 -20
- package/services/backend/dist/src/domains/system/routes/route.user.checkToken.d.ts +0 -12
- package/services/backend/dist/src/domains/system/routes/route.user.checkToken.js +0 -40
- package/services/backend/dist/src/domains/system/routes/route.user.login.d.ts +0 -44
- package/services/backend/dist/src/domains/system/routes/route.user.login.js +0 -163
- package/services/backend/dist/src/helpers/index.d.ts +0 -11
- package/services/backend/dist/src/helpers/index.js +0 -13
- package/services/backend/dist/src/index.d.ts +0 -3
- package/services/backend/dist/src/index.js +0 -3
- package/services/backend/dist/src/modules/authentication/index.d.ts +0 -4
- package/services/backend/dist/src/modules/authentication/index.js +0 -80
- package/services/backend/dist/src/modules/cache/cacheManager.d.ts +0 -6
- package/services/backend/dist/src/modules/cache/cacheManager.js +0 -131
- package/services/backend/dist/src/modules/cache/cacheTypes.d.ts +0 -102
- package/services/backend/dist/src/modules/cache/cacheTypes.js +0 -1
- package/services/backend/dist/src/modules/cache/providers/redis/redisConfig.d.ts +0 -11
- package/services/backend/dist/src/modules/cache/providers/redis/redisConfig.js +0 -17
- package/services/backend/dist/src/modules/cache/providers/redis/redisConnection.d.ts +0 -4
- package/services/backend/dist/src/modules/cache/providers/redis/redisConnection.js +0 -65
- package/services/backend/dist/src/modules/cache/providers/redis/redisTypes.d.ts +0 -18
- package/services/backend/dist/src/modules/cache/providers/redis/redisTypes.js +0 -1
- package/services/backend/dist/src/modules/database/providers/mongodb/mongoConnection.d.ts +0 -4
- package/services/backend/dist/src/modules/database/providers/mongodb/mongoConnection.js +0 -21
- package/services/backend/dist/src/modules/database/providers/mongodb/service.d.ts +0 -7
- package/services/backend/dist/src/modules/database/providers/mongodb/service.js +0 -1
- package/services/backend/dist/src/server.d.ts +0 -1
- package/services/backend/dist/src/server.js +0 -98
- package/services/backend/dist/src/shared/helper/mongoHelper.d.ts +0 -3
- package/services/backend/dist/src/shared/helper/mongoHelper.js +0 -59
- package/services/backend/dist/src/shared/helper/pluginHelper.d.ts +0 -19
- package/services/backend/dist/src/shared/helper/pluginHelper.js +0 -33
- package/services/backend/dist/src/shared/schemas/core/Account.schema.d.ts +0 -63
- package/services/backend/dist/src/shared/schemas/core/Account.schema.js +0 -74
- package/services/backend/dist/src/shared/schemas/core/Composition.schema.d.ts +0 -103
- package/services/backend/dist/src/shared/schemas/core/Composition.schema.js +0 -132
- package/services/backend/dist/src/shared/schemas/core/CompositionCreate.schema.d.ts +0 -82
- package/services/backend/dist/src/shared/schemas/core/CompositionCreate.schema.js +0 -105
- package/services/backend/dist/src/shared/schemas/core/CompositionUpdate.schema.d.ts +0 -78
- package/services/backend/dist/src/shared/schemas/core/CompositionUpdate.schema.js +0 -95
- package/services/backend/dist/src/shared/schemas/core/InteractionLink.schema.d.ts +0 -84
- package/services/backend/dist/src/shared/schemas/core/InteractionLink.schema.js +0 -97
- package/services/backend/dist/src/shared/schemas/core/InteractionLinkCreate.schema.d.ts +0 -63
- package/services/backend/dist/src/shared/schemas/core/InteractionLinkCreate.schema.js +0 -70
- package/services/backend/dist/src/shared/schemas/core/InteractionLinkUpdate.schema.d.ts +0 -63
- package/services/backend/dist/src/shared/schemas/core/InteractionLinkUpdate.schema.js +0 -70
- package/services/backend/dist/src/shared/schemas/core/Project.schema.d.ts +0 -53
- package/services/backend/dist/src/shared/schemas/core/Project.schema.js +0 -58
- package/services/backend/dist/src/shared/schemas/core/ProjectCreate.schema.d.ts +0 -41
- package/services/backend/dist/src/shared/schemas/core/ProjectCreate.schema.js +0 -41
- package/services/backend/dist/src/shared/schemas/core/ProjectUpdate.schema.d.ts +0 -38
- package/services/backend/dist/src/shared/schemas/core/ProjectUpdate.schema.js +0 -38
- package/services/backend/dist/src/shared/schemas/core/Tag.schema.d.ts +0 -68
- package/services/backend/dist/src/shared/schemas/core/Tag.schema.js +0 -81
- package/services/backend/dist/src/shared/schemas/core/TagCreate.schema.d.ts +0 -52
- package/services/backend/dist/src/shared/schemas/core/TagCreate.schema.js +0 -60
- package/services/backend/dist/src/shared/schemas/core/TagUpdate.schema.d.ts +0 -47
- package/services/backend/dist/src/shared/schemas/core/TagUpdate.schema.js +0 -55
- package/services/backend/dist/src/shared/schemas/core/Trigger.schema.d.ts +0 -25
- package/services/backend/dist/src/shared/schemas/core/Trigger.schema.js +0 -27
- package/services/backend/dist/src/shared/schemas/core/User.schema.d.ts +0 -161
- package/services/backend/dist/src/shared/schemas/core/User.schema.js +0 -185
- package/services/backend/dist/src/shared/schemas/core/UserCreate.schema.d.ts +0 -59
- package/services/backend/dist/src/shared/schemas/core/UserCreate.schema.js +0 -67
- package/services/backend/dist/src/shared/schemas/core/UserUpdate.schema.d.ts +0 -52
- package/services/backend/dist/src/shared/schemas/core/UserUpdate.schema.js +0 -52
- package/services/backend/dist/src/shared/schemas/core/Widget.schema.d.ts +0 -25
- package/services/backend/dist/src/shared/schemas/core/Widget.schema.js +0 -29
- package/services/backend/dist/src/shared/schemas/core/WidgetLayout.schema.d.ts +0 -34
- package/services/backend/dist/src/shared/schemas/core/WidgetLayout.schema.js +0 -41
- package/services/backend/dist/src/shared/types/core/Account.types.d.ts +0 -19
- package/services/backend/dist/src/shared/types/core/Account.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/Composition.types.d.ts +0 -31
- package/services/backend/dist/src/shared/types/core/Composition.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/CompositionCreate.types.d.ts +0 -25
- package/services/backend/dist/src/shared/types/core/CompositionCreate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/CompositionUpdate.types.d.ts +0 -25
- package/services/backend/dist/src/shared/types/core/CompositionUpdate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/InteractionLink.types.d.ts +0 -25
- package/services/backend/dist/src/shared/types/core/InteractionLink.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/InteractionLinkCreate.types.d.ts +0 -19
- package/services/backend/dist/src/shared/types/core/InteractionLinkCreate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/InteractionLinkUpdate.types.d.ts +0 -19
- package/services/backend/dist/src/shared/types/core/InteractionLinkUpdate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/Project.types.d.ts +0 -18
- package/services/backend/dist/src/shared/types/core/Project.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/ProjectCreate.types.d.ts +0 -15
- package/services/backend/dist/src/shared/types/core/ProjectCreate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/ProjectUpdate.types.d.ts +0 -15
- package/services/backend/dist/src/shared/types/core/ProjectUpdate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/Tag.types.d.ts +0 -21
- package/services/backend/dist/src/shared/types/core/Tag.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/TagCreate.types.d.ts +0 -17
- package/services/backend/dist/src/shared/types/core/TagCreate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/TagUpdate.types.d.ts +0 -17
- package/services/backend/dist/src/shared/types/core/TagUpdate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/Trigger.types.d.ts +0 -11
- package/services/backend/dist/src/shared/types/core/Trigger.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/User.types.d.ts +0 -50
- package/services/backend/dist/src/shared/types/core/User.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/UserCreate.types.d.ts +0 -22
- package/services/backend/dist/src/shared/types/core/UserCreate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/UserUpdate.types.d.ts +0 -21
- package/services/backend/dist/src/shared/types/core/UserUpdate.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/Widget.types.d.ts +0 -14
- package/services/backend/dist/src/shared/types/core/Widget.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/WidgetLayout.types.d.ts +0 -17
- package/services/backend/dist/src/shared/types/core/WidgetLayout.types.js +0 -8
- package/services/backend/dist/src/shared/types/core/index.d.ts +0 -26
- package/services/backend/dist/src/shared/types/core/index.js +0 -8
- package/services/backend/dist/src/shared/types/dataTypes/index.d.ts +0 -5
- package/services/backend/dist/src/shared/types/dataTypes/index.js +0 -6
- package/services/backend/dist/src/shared/types/dataTypes/tags.d.ts +0 -12
- package/services/backend/dist/src/shared/types/dataTypes/tags.js +0 -17
- package/services/backend/dist/src/shared/types/global/api.d.ts +0 -10
- package/services/backend/dist/src/shared/types/global/api.js +0 -1
- package/services/backend/dist/src/shared/types/global/search.d.ts +0 -7
- package/services/backend/dist/src/shared/types/global/search.js +0 -13
- package/services/backend/dist/src/shared/types/index.d.ts +0 -9
- package/services/backend/dist/src/shared/types/index.js +0 -8
- package/services/backend/dist/src/shared/types/plugins/index.d.ts +0 -8
- package/services/backend/dist/src/shared/types/plugins/index.js +0 -8
- package/services/backend/dist/src/types/index.d.ts +0 -12
- package/services/backend/dist/src/types/index.js +0 -12
- package/services/backend/dist/src/utils/errors.d.ts +0 -16
- package/services/backend/dist/src/utils/errors.js +0 -28
- package/services/backend/dist/src/utils/index.d.ts +0 -2
- package/services/backend/dist/src/utils/index.js +0 -2
- package/services/backend/dist/src/utils/request.utils.d.ts +0 -8
- package/services/backend/dist/src/utils/request.utils.js +0 -12
- package/services/backend/dist/types/index.d.ts +0 -3
- package/services/backend/dist/types/index.js +0 -2
- package/services/backend/src/.DS_Store +0 -0
- package/services/backend/src/core/.DS_Store +0 -0
- package/services/backend/src/core/pluginSystem/.DS_Store +0 -0
- package/services/backend/src/domains/.DS_Store +0 -0
- package/services/backend/src/domains/system/.DS_Store +0 -0
- package/services/backend/src/ssh-keys/krake +0 -8
- package/services/backend/src/ssh-keys/krake.pub +0 -1
- package/services/frontend/.DS_Store +0 -0
- package/services/frontend/src/.DS_Store +0 -0
- package/services/frontend/src/core/.DS_Store +0 -0
- package/services/frontend/src/core/lib/.DS_Store +0 -0
- package/services/frontend/src/orchestrator/.DS_Store +0 -0
- package/services/frontend/src/orchestrator/assets/fonts/.DS_Store +0 -0
- package/services/frontend/src/orchestrator/assets/styles/.DS_Store +0 -0
- package/services/frontend/src/orchestrator/components/.DS_Store +0 -0
- package/services/frontend/src/orchestrator/components/utils/.DS_Store +0 -0
- package/services/frontend/src/orchestrator/composables/.DS_Store +0 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [0.1.1] - 03.09.2025
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- i18n will now fallback to other region locale if requested region locale is not provided. Will finally fall back to fallbackLocale
|
|
15
|
+
|
|
16
|
+
### Removed
|
|
17
|
+
|
|
18
|
+
- removed self dependency from backend on core and workbench
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
- added core. prefix to notifications.
|
|
23
|
+
- Prevent template exception during notification from system user
|
package/README.md
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
[](https://www.npmjs.com/package/@raclettejs/core)
|
|
2
|
+
[](LICENSE)
|
|
3
|
+
|
|
2
4
|
|
|
3
5
|
> [!important] Beta Phase!
|
|
4
|
-
>
|
|
6
|
+
> raclette is still in the Beta phase. There might be breaking changes over the next couple of month so be aware of migration needs. Visit our [Milestone Overview](https://gitlab.com/groups/raclettejs/-/milestones) for more insights and estimates
|
|
5
7
|
|
|
6
8
|
## What is **raclette**?
|
|
7
9
|
|
package/package.json
CHANGED
|
@@ -32,8 +32,6 @@
|
|
|
32
32
|
"@fastify/swagger": "^9.5.1",
|
|
33
33
|
"@fastify/swagger-ui": "^5.2.3",
|
|
34
34
|
"@fastify/type-provider-typebox": "^5.1.0",
|
|
35
|
-
"@raclettejs/core": "^0.0.1",
|
|
36
|
-
"@raclettejs/workbench": "^0.0.1",
|
|
37
35
|
"@sinclair/typebox": "^0.34.37",
|
|
38
36
|
"@types/vary": "^1.1.3",
|
|
39
37
|
"axios": "^1.10.0",
|
|
@@ -74,4 +72,4 @@
|
|
|
74
72
|
"typescript": "^5.8.3",
|
|
75
73
|
"typescript-eslint": "^8.36.0"
|
|
76
74
|
}
|
|
77
|
-
}
|
|
75
|
+
}
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
<v-tooltip activator="parent" location="bottom">
|
|
24
24
|
{{
|
|
25
25
|
$t(
|
|
26
|
-
"receivedNotifications$count",
|
|
26
|
+
"core.receivedNotifications$count",
|
|
27
27
|
state.unreadCount,
|
|
28
28
|
state.unreadCount,
|
|
29
29
|
)
|
|
@@ -86,7 +86,9 @@
|
|
|
86
86
|
:user-id="entry.updatedBy"
|
|
87
87
|
compact
|
|
88
88
|
/>
|
|
89
|
-
<TimeAgo
|
|
89
|
+
<TimeAgo
|
|
90
|
+
:timestamp="new Date(entry.time).toISOString()"
|
|
91
|
+
/>
|
|
90
92
|
</v-col>
|
|
91
93
|
</v-row>
|
|
92
94
|
</v-list-item-subtitle>
|
|
@@ -7,9 +7,12 @@ import configService from "@racletteCore/lib/configService"
|
|
|
7
7
|
import logger from "@racletteCore/lib/logger"
|
|
8
8
|
import { mergeDeepRight } from "ramda"
|
|
9
9
|
|
|
10
|
+
// Types
|
|
10
11
|
type LocaleFileImports = Record<string, () => Promise<any>>
|
|
11
12
|
type Messages = Record<string, any>
|
|
12
13
|
type DateLocales = Record<string, any>
|
|
14
|
+
type LocaleEnrichmentMap = Record<string, string[]>
|
|
15
|
+
type SectionPriorities = Record<string, number>
|
|
13
16
|
|
|
14
17
|
interface I18nInstance {
|
|
15
18
|
i18nInstance: I18n
|
|
@@ -17,6 +20,13 @@ interface I18nInstance {
|
|
|
17
20
|
dateLocale: DateLocales
|
|
18
21
|
}
|
|
19
22
|
|
|
23
|
+
interface LocaleSection {
|
|
24
|
+
section: string
|
|
25
|
+
content: any
|
|
26
|
+
priority: number
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// File imports using Vite's glob
|
|
20
30
|
const i18nFiles: LocaleFileImports = import.meta.glob(
|
|
21
31
|
["/src/orchestrator/i18n/**/*.json"],
|
|
22
32
|
{ eager: false },
|
|
@@ -32,144 +42,182 @@ const dateFnsLocaleFiles: LocaleFileImports = import.meta.glob(
|
|
|
32
42
|
{ eager: false },
|
|
33
43
|
)
|
|
34
44
|
|
|
45
|
+
// Global state
|
|
35
46
|
let i18nInstance: I18n | null = null
|
|
36
47
|
let instanceAdapter: { adapter: any } | null = null
|
|
37
48
|
let dateLocale: DateLocales = {}
|
|
38
49
|
let messages: Messages = {}
|
|
39
50
|
|
|
51
|
+
// Utility functions
|
|
52
|
+
const extractLocaleFromFilePath = (filePath: string): string => {
|
|
53
|
+
const fileName = filePath.split("/").pop()!
|
|
54
|
+
return fileName.replace(/\.(json|js)$/, "")
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const getShortLocale = (longLocale: string): string => {
|
|
58
|
+
return longLocale.split("-")[0]
|
|
59
|
+
}
|
|
60
|
+
|
|
40
61
|
const getAvailableLocales = (files: LocaleFileImports): string[] => {
|
|
41
|
-
return Object.keys(files).map(
|
|
42
|
-
const fileName = filePath.split("/").pop()!
|
|
43
|
-
return fileName.replace(".json", "").replace(".js", "")
|
|
44
|
-
})
|
|
62
|
+
return Object.keys(files).map(extractLocaleFromFilePath)
|
|
45
63
|
}
|
|
46
64
|
|
|
47
65
|
const getAvailableDateFnsLocales = (files: LocaleFileImports): string[] => {
|
|
48
66
|
return Object.keys(files)
|
|
49
|
-
.map(
|
|
50
|
-
|
|
51
|
-
return fileName.replace(".js", "")
|
|
52
|
-
})
|
|
53
|
-
.filter((locale) => !locale.includes("cdn") && locale !== "types") // Filter out non-locale files
|
|
67
|
+
.map(extractLocaleFromFilePath)
|
|
68
|
+
.filter((locale) => !locale.includes("cdn") && locale !== "types")
|
|
54
69
|
}
|
|
55
70
|
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
)
|
|
71
|
+
const createFormatsForLocales = (
|
|
72
|
+
locales: string[],
|
|
73
|
+
defaultFormats: any
|
|
74
|
+
): Record<string, any> => {
|
|
75
|
+
return locales.reduce((formats, locale) => {
|
|
76
|
+
formats[locale] = defaultFormats.EU
|
|
77
|
+
return formats
|
|
78
|
+
}, {} as Record<string, any>)
|
|
64
79
|
}
|
|
65
80
|
|
|
66
|
-
|
|
67
|
-
|
|
81
|
+
// Locale filtering functions
|
|
82
|
+
const createLocaleFilter = (targetLocales: string[]) => {
|
|
83
|
+
return (files: LocaleFileImports): LocaleFileImports => {
|
|
84
|
+
const filtered: LocaleFileImports = {}
|
|
85
|
+
|
|
86
|
+
Object.entries(files).forEach(([filePath, importFn]) => {
|
|
87
|
+
const fileLocale = extractLocaleFromFilePath(filePath)
|
|
88
|
+
if (targetLocales.includes(fileLocale)) {
|
|
89
|
+
filtered[filePath] = importFn
|
|
90
|
+
}
|
|
91
|
+
})
|
|
92
|
+
|
|
93
|
+
return filtered
|
|
94
|
+
}
|
|
68
95
|
}
|
|
69
96
|
|
|
70
|
-
const
|
|
71
|
-
files: LocaleFileImports
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
97
|
+
const createDateFnsLocaleFilter = (requestedLocales: string[]) => {
|
|
98
|
+
return (files: LocaleFileImports): LocaleFileImports => {
|
|
99
|
+
const filtered: LocaleFileImports = {}
|
|
100
|
+
const availableDateFnsLocales = getAvailableDateFnsLocales(files)
|
|
101
|
+
|
|
102
|
+
requestedLocales.forEach((locale) => {
|
|
103
|
+
const targetLocale = findBestDateFnsLocale(locale, availableDateFnsLocales)
|
|
104
|
+
|
|
105
|
+
if (targetLocale) {
|
|
106
|
+
const matchingFilePath = Object.keys(files).find((filePath) => {
|
|
107
|
+
return extractLocaleFromFilePath(filePath) === targetLocale
|
|
108
|
+
})
|
|
109
|
+
|
|
110
|
+
if (matchingFilePath) {
|
|
111
|
+
filtered[matchingFilePath] = files[matchingFilePath]
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
})
|
|
115
|
+
|
|
116
|
+
return filtered
|
|
117
|
+
}
|
|
118
|
+
}
|
|
75
119
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
120
|
+
const findBestDateFnsLocale = (
|
|
121
|
+
requestedLocale: string,
|
|
122
|
+
availableLocales: string[]
|
|
123
|
+
): string | null => {
|
|
124
|
+
// Try exact match first
|
|
125
|
+
if (availableLocales.includes(requestedLocale)) {
|
|
126
|
+
return requestedLocale
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
// Try short locale
|
|
130
|
+
const shortLocale = getShortLocale(requestedLocale)
|
|
131
|
+
if (availableLocales.includes(shortLocale)) {
|
|
132
|
+
return shortLocale
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// Fallback to "eu"
|
|
136
|
+
if (availableLocales.includes("eu")) {
|
|
137
|
+
return "eu"
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
return null
|
|
141
|
+
}
|
|
79
142
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
143
|
+
// Locale enrichment logic
|
|
144
|
+
const buildFallbackChain = (
|
|
145
|
+
requestedLocale: string,
|
|
146
|
+
availableLocales: string[]
|
|
147
|
+
): string[] => {
|
|
148
|
+
const fallbackChain: string[] = []
|
|
149
|
+
const requestedLang = getShortLocale(requestedLocale)
|
|
150
|
+
|
|
151
|
+
// 1. Exact match
|
|
152
|
+
if (availableLocales.includes(requestedLocale)) {
|
|
153
|
+
fallbackChain.push(requestedLocale)
|
|
154
|
+
}
|
|
84
155
|
|
|
85
|
-
|
|
86
|
-
|
|
156
|
+
// 2. Same language, different region
|
|
157
|
+
const sameLanguageDifferentRegion = availableLocales.filter(
|
|
158
|
+
(locale) =>
|
|
159
|
+
locale !== requestedLocale &&
|
|
160
|
+
getShortLocale(locale) === requestedLang &&
|
|
161
|
+
locale.includes("-")
|
|
162
|
+
)
|
|
163
|
+
fallbackChain.push(...sameLanguageDifferentRegion)
|
|
87
164
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
const filtered: LocaleFileImports = {}
|
|
93
|
-
const availableDateFnsLocales = getAvailableDateFnsLocales(files)
|
|
165
|
+
// 3. Short locale
|
|
166
|
+
if (availableLocales.includes(requestedLang) && !fallbackChain.includes(requestedLang)) {
|
|
167
|
+
fallbackChain.push(requestedLang)
|
|
168
|
+
}
|
|
94
169
|
|
|
95
|
-
|
|
96
|
-
|
|
170
|
+
return fallbackChain
|
|
171
|
+
}
|
|
97
172
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
173
|
+
const createLocaleEnrichmentMap = (
|
|
174
|
+
requestedLocales: string[],
|
|
175
|
+
availableLocales: string[],
|
|
176
|
+
fallbackLocale: string
|
|
177
|
+
): LocaleEnrichmentMap => {
|
|
178
|
+
const enrichmentMap: LocaleEnrichmentMap = {}
|
|
179
|
+
|
|
180
|
+
requestedLocales.forEach((requestedLocale) => {
|
|
181
|
+
let fallbackChain = buildFallbackChain(requestedLocale, availableLocales)
|
|
182
|
+
|
|
183
|
+
// Add fallback locale if nothing else was found
|
|
184
|
+
if (fallbackChain.length === 0 && availableLocales.includes(fallbackLocale)) {
|
|
185
|
+
fallbackChain = [fallbackLocale]
|
|
109
186
|
}
|
|
110
187
|
|
|
111
|
-
if (
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
const fileName = filePath.split("/").pop()!
|
|
115
|
-
return fileName.replace(".js", "") === targetLocale
|
|
116
|
-
})
|
|
117
|
-
|
|
118
|
-
if (matchingFilePath) {
|
|
119
|
-
filtered[matchingFilePath] = files[matchingFilePath]
|
|
120
|
-
console.log(
|
|
121
|
-
`Matched ${locale} -> ${targetLocale} (${matchingFilePath})`,
|
|
122
|
-
)
|
|
123
|
-
}
|
|
188
|
+
if (fallbackChain.length > 0) {
|
|
189
|
+
enrichmentMap[requestedLocale] = fallbackChain
|
|
190
|
+
logger.orchestrator(`Enrichment chain for ${requestedLocale}:`, fallbackChain)
|
|
124
191
|
}
|
|
125
192
|
})
|
|
126
193
|
|
|
127
|
-
|
|
128
|
-
return filtered
|
|
194
|
+
return enrichmentMap
|
|
129
195
|
}
|
|
130
196
|
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
)
|
|
135
|
-
const
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
vuetifyLocaleFiles,
|
|
139
|
-
shortLocales,
|
|
140
|
-
)
|
|
141
|
-
|
|
142
|
-
const messages: Messages = {}
|
|
143
|
-
|
|
144
|
-
// Initialize message structure for each locale
|
|
145
|
-
locales.forEach((locale) => {
|
|
146
|
-
messages[locale] = {}
|
|
147
|
-
})
|
|
197
|
+
// Message loading functions
|
|
198
|
+
const extractSectionFromFilePath = (filePath: string): string => {
|
|
199
|
+
const pathParts = filePath.split("/")
|
|
200
|
+
const i18nIndex = pathParts.findIndex((part) => part === "i18n")
|
|
201
|
+
const folderPath = pathParts.slice(i18nIndex + 1, -1).join("/")
|
|
202
|
+
return folderPath || "."
|
|
203
|
+
}
|
|
148
204
|
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
> = {}
|
|
205
|
+
const loadAndCategorizeI18nFiles = async (
|
|
206
|
+
files: LocaleFileImports,
|
|
207
|
+
priorities: SectionPriorities
|
|
208
|
+
): Promise<Record<string, LocaleSection[]>> => {
|
|
209
|
+
const sectionsByLocale: Record<string, LocaleSection[]> = {}
|
|
154
210
|
|
|
155
|
-
for (const [filePath, importFn] of Object.entries(
|
|
211
|
+
for (const [filePath, importFn] of Object.entries(files)) {
|
|
156
212
|
const module = await importFn()
|
|
157
213
|
const content = module.default || module
|
|
158
|
-
|
|
159
|
-
const
|
|
160
|
-
const fileLocale = fileName.replace(".json", "")
|
|
161
|
-
|
|
162
|
-
// Determine the folder/section
|
|
163
|
-
const pathParts = filePath.split("/")
|
|
164
|
-
const i18nIndex = pathParts.findIndex((part) => part === "i18n")
|
|
165
|
-
const folderPath = pathParts.slice(i18nIndex + 1, -1).join("/")
|
|
166
|
-
const section = folderPath || "."
|
|
167
|
-
|
|
168
|
-
// Check if section has priority defined
|
|
214
|
+
const fileLocale = extractLocaleFromFilePath(filePath)
|
|
215
|
+
const section = extractSectionFromFilePath(filePath)
|
|
169
216
|
const priority = priorities[section]
|
|
217
|
+
|
|
170
218
|
if (priority === undefined) {
|
|
171
219
|
logger.warning(
|
|
172
|
-
`Section "${section}" for locale "${fileLocale}" has no priority defined and will be skipped
|
|
220
|
+
`Section "${section}" for locale "${fileLocale}" has no priority defined and will be skipped`
|
|
173
221
|
)
|
|
174
222
|
continue
|
|
175
223
|
}
|
|
@@ -178,35 +226,67 @@ const loadMessages = async (
|
|
|
178
226
|
sectionsByLocale[fileLocale] = []
|
|
179
227
|
}
|
|
180
228
|
|
|
181
|
-
sectionsByLocale[fileLocale].push({
|
|
182
|
-
section,
|
|
183
|
-
content,
|
|
184
|
-
priority,
|
|
185
|
-
})
|
|
229
|
+
sectionsByLocale[fileLocale].push({ section, content, priority })
|
|
186
230
|
}
|
|
187
231
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
232
|
+
return sectionsByLocale
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
const mergeSectionsByPriority = (
|
|
236
|
+
sectionsByLocale: Record<string, LocaleSection[]>
|
|
237
|
+
): Record<string, any> => {
|
|
238
|
+
const mergedByLocale: Record<string, any> = {}
|
|
239
|
+
|
|
240
|
+
Object.entries(sectionsByLocale).forEach(([locale, sections]) => {
|
|
241
|
+
// Sort by priority descending (highest number = lowest priority)
|
|
191
242
|
const sortedSections = sections.sort((a, b) => b.priority - a.priority)
|
|
192
243
|
|
|
193
244
|
// Deep merge from lowest to highest priority
|
|
194
|
-
|
|
245
|
+
mergedByLocale[locale] = sortedSections.reduce((merged, { content }) => {
|
|
195
246
|
return mergeDeepRight(merged, content || {})
|
|
196
247
|
}, {})
|
|
197
|
-
}
|
|
248
|
+
})
|
|
198
249
|
|
|
199
|
-
|
|
200
|
-
|
|
250
|
+
return mergedByLocale
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
const enrichMessagesWithFallbacks = (
|
|
254
|
+
enrichmentMap: LocaleEnrichmentMap,
|
|
255
|
+
mergedByLocale: Record<string, any>
|
|
256
|
+
): Messages => {
|
|
257
|
+
const enrichedMessages: Messages = {}
|
|
258
|
+
|
|
259
|
+
Object.entries(enrichmentMap).forEach(([requestedLocale, fallbackChain]) => {
|
|
260
|
+
let localeMessages = {}
|
|
261
|
+
|
|
262
|
+
// Merge in reverse order (lowest priority first)
|
|
263
|
+
const reversedChain = [...fallbackChain].reverse()
|
|
264
|
+
reversedChain.forEach((sourceLocale) => {
|
|
265
|
+
if (mergedByLocale[sourceLocale]) {
|
|
266
|
+
localeMessages = mergeDeepRight(localeMessages, mergedByLocale[sourceLocale])
|
|
267
|
+
logger.orchestrator(`Merged ${sourceLocale} into ${requestedLocale}`)
|
|
268
|
+
}
|
|
269
|
+
})
|
|
270
|
+
|
|
271
|
+
enrichedMessages[requestedLocale] = localeMessages
|
|
272
|
+
})
|
|
273
|
+
|
|
274
|
+
return enrichedMessages
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
const loadVuetifyLocales = async (
|
|
278
|
+
files: LocaleFileImports,
|
|
279
|
+
locales: string[],
|
|
280
|
+
messages: Messages
|
|
281
|
+
): Promise<void> => {
|
|
282
|
+
for (const [filePath, importFn] of Object.entries(files)) {
|
|
201
283
|
const module = await importFn()
|
|
202
284
|
const vuetifyLocale = module.default || module
|
|
203
|
-
|
|
204
|
-
const fileName = filePath.split("/").pop()!
|
|
205
|
-
const shortLocale = fileName.replace(".js", "")
|
|
285
|
+
const shortLocale = extractLocaleFromFilePath(filePath)
|
|
206
286
|
|
|
207
287
|
// Find corresponding long locale(s)
|
|
208
288
|
const matchingLocales = locales.filter(
|
|
209
|
-
(locale) => getShortLocale(locale) === shortLocale
|
|
289
|
+
(locale) => getShortLocale(locale) === shortLocale
|
|
210
290
|
)
|
|
211
291
|
|
|
212
292
|
matchingLocales.forEach((locale) => {
|
|
@@ -215,52 +295,55 @@ const loadMessages = async (
|
|
|
215
295
|
}
|
|
216
296
|
})
|
|
217
297
|
}
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
const loadMessages = async (
|
|
301
|
+
locales: string[],
|
|
302
|
+
priorities: SectionPriorities
|
|
303
|
+
): Promise<Messages> => {
|
|
304
|
+
const availableLocales = getAvailableLocales(i18nFiles)
|
|
305
|
+
const enrichmentMap = createLocaleEnrichmentMap(locales, availableLocales, "en-EU")
|
|
306
|
+
|
|
307
|
+
// Get all unique locales to load
|
|
308
|
+
const allLocalesToLoad = new Set<string>()
|
|
309
|
+
Object.values(enrichmentMap).forEach((fallbackChain) => {
|
|
310
|
+
fallbackChain.forEach((locale) => allLocalesToLoad.add(locale))
|
|
311
|
+
})
|
|
312
|
+
|
|
313
|
+
// Filter and load i18n files
|
|
314
|
+
const filteredI18nFiles = createLocaleFilter(Array.from(allLocalesToLoad))(i18nFiles)
|
|
315
|
+
const sectionsByLocale = await loadAndCategorizeI18nFiles(filteredI18nFiles, priorities)
|
|
316
|
+
const mergedByLocale = mergeSectionsByPriority(sectionsByLocale)
|
|
317
|
+
const messages = enrichMessagesWithFallbacks(enrichmentMap, mergedByLocale)
|
|
318
|
+
|
|
319
|
+
// Load Vuetify locales
|
|
320
|
+
const shortLocales = locales.map(getShortLocale)
|
|
321
|
+
const filteredVuetifyFiles = createLocaleFilter(shortLocales)(vuetifyLocaleFiles)
|
|
322
|
+
await loadVuetifyLocales(filteredVuetifyFiles, locales, messages)
|
|
218
323
|
|
|
219
324
|
return messages
|
|
220
325
|
}
|
|
221
326
|
|
|
327
|
+
// Date-fns locale loading
|
|
222
328
|
const loadDateFnsLocales = async (locales: string[]): Promise<DateLocales> => {
|
|
223
|
-
const filteredDateFnsFiles =
|
|
224
|
-
dateFnsLocaleFiles,
|
|
225
|
-
locales,
|
|
226
|
-
)
|
|
329
|
+
const filteredDateFnsFiles = createDateFnsLocaleFilter(locales)(dateFnsLocaleFiles)
|
|
227
330
|
const dateLocales: DateLocales = {}
|
|
331
|
+
const availableDateFnsLocales = getAvailableDateFnsLocales(dateFnsLocaleFiles)
|
|
228
332
|
|
|
229
|
-
// Load date-fns locales
|
|
230
333
|
for (const [filePath, importFn] of Object.entries(filteredDateFnsFiles)) {
|
|
231
334
|
const module = await importFn()
|
|
232
335
|
const dateFnsLocale = module.default || module
|
|
233
|
-
|
|
234
|
-
// Extract the actual locale from the file path
|
|
235
|
-
const fileName = filePath.split("/").pop()!
|
|
236
|
-
const actualLocale = fileName.replace(".js", "")
|
|
336
|
+
const actualLocale = extractLocaleFromFilePath(filePath)
|
|
237
337
|
|
|
238
338
|
// Map to all requesting locales that should use this date-fns locale
|
|
239
339
|
locales.forEach((requestedLocale) => {
|
|
240
|
-
const
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
shouldUseThisLocale = true
|
|
248
|
-
}
|
|
249
|
-
// Check if this is the short locale fallback
|
|
250
|
-
else if (
|
|
251
|
-
getShortLocale(requestedLocale) === actualLocale &&
|
|
252
|
-
!availableDateFnsLocales.includes(requestedLocale)
|
|
253
|
-
) {
|
|
254
|
-
shouldUseThisLocale = true
|
|
255
|
-
}
|
|
256
|
-
// Check if this is the "eu" fallback
|
|
257
|
-
else if (
|
|
258
|
-
actualLocale === "eu" &&
|
|
259
|
-
!availableDateFnsLocales.includes(requestedLocale) &&
|
|
260
|
-
!availableDateFnsLocales.includes(getShortLocale(requestedLocale))
|
|
261
|
-
) {
|
|
262
|
-
shouldUseThisLocale = true
|
|
263
|
-
}
|
|
340
|
+
const shouldUseThisLocale =
|
|
341
|
+
requestedLocale === actualLocale ||
|
|
342
|
+
(getShortLocale(requestedLocale) === actualLocale &&
|
|
343
|
+
!availableDateFnsLocales.includes(requestedLocale)) ||
|
|
344
|
+
(actualLocale === "eu" &&
|
|
345
|
+
!availableDateFnsLocales.includes(requestedLocale) &&
|
|
346
|
+
!availableDateFnsLocales.includes(getShortLocale(requestedLocale)))
|
|
264
347
|
|
|
265
348
|
if (shouldUseThisLocale) {
|
|
266
349
|
dateLocales[requestedLocale] = dateFnsLocale
|
|
@@ -271,22 +354,33 @@ const loadDateFnsLocales = async (locales: string[]): Promise<DateLocales> => {
|
|
|
271
354
|
return dateLocales
|
|
272
355
|
}
|
|
273
356
|
|
|
357
|
+
// Main initialization function
|
|
274
358
|
const initI18n = async (): Promise<I18nInstance> => {
|
|
275
359
|
if (!i18nInstance) {
|
|
276
360
|
const fallbackLocale = "en-EU"
|
|
277
361
|
const { locales, priorities } = configService.getI18nConfig()
|
|
278
362
|
const availableLocales = getAvailableLocales(i18nFiles)
|
|
363
|
+
|
|
279
364
|
logger.orchestrator("Configured locales:", locales)
|
|
280
365
|
logger.orchestrator("Available locale files:", availableLocales)
|
|
281
366
|
|
|
282
|
-
// Load messages and date locales
|
|
283
|
-
|
|
284
|
-
|
|
367
|
+
// Load messages and date locales concurrently
|
|
368
|
+
const [loadedMessages, loadedDateLocales] = await Promise.all([
|
|
369
|
+
loadMessages(locales, priorities),
|
|
370
|
+
loadDateFnsLocales(locales)
|
|
371
|
+
])
|
|
372
|
+
|
|
373
|
+
messages = loadedMessages
|
|
374
|
+
dateLocale = loadedDateLocales
|
|
375
|
+
|
|
285
376
|
logger.orchestrator("Loaded messages:", Object.keys(messages))
|
|
286
377
|
logger.orchestrator("Loaded date locales:", Object.keys(dateLocale))
|
|
287
|
-
const dateTimeFormats = createFormats(locales, defaultDateTimeFormats)
|
|
288
|
-
const numberFormatsForLocales = createFormats(locales, defaultNumberFormats)
|
|
289
378
|
|
|
379
|
+
// Create formats
|
|
380
|
+
const dateTimeFormats = createFormatsForLocales(locales, defaultDateTimeFormats)
|
|
381
|
+
const numberFormatsForLocales = createFormatsForLocales(locales, defaultNumberFormats)
|
|
382
|
+
|
|
383
|
+
// Initialize i18n instance
|
|
290
384
|
i18nInstance = createI18n({
|
|
291
385
|
legacy: false,
|
|
292
386
|
globalInjection: true,
|
|
@@ -309,4 +403,4 @@ const initI18n = async (): Promise<I18nInstance> => {
|
|
|
309
403
|
}
|
|
310
404
|
|
|
311
405
|
export default initI18n
|
|
312
|
-
export { i18nInstance, instanceAdapter, dateLocale, initI18n }
|
|
406
|
+
export { i18nInstance, instanceAdapter, dateLocale, initI18n }
|