diff --git a/.gitignore b/.gitignore index d824a1f1..94b8f06e 100644 --- a/.gitignore +++ b/.gitignore @@ -7,12 +7,9 @@ yarn-error.log* pnpm-debug.log* lerna-debug.log* -node_modules +artifacts coverage -.jitar -dist -dist-ssr -*.local +node_modules # Editor directories and files !.vscode/extensions.json diff --git a/.npmrc b/.npmrc new file mode 100644 index 00000000..84503b80 --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +min-release-age=4 \ No newline at end of file diff --git a/.nvmrc b/.nvmrc deleted file mode 100644 index 36060ce8..00000000 --- a/.nvmrc +++ /dev/null @@ -1,2 +0,0 @@ -# .nvmrc -lts/* \ No newline at end of file diff --git a/changelog.hbs b/changelog.hbs deleted file mode 100644 index 5a9d2342..00000000 --- a/changelog.hbs +++ /dev/null @@ -1,33 +0,0 @@ -{{#each releases}} -# {{title}} -[{{isoDate}}] - -{{#commit-list -merges -heading='### Features' -message='feat(?:(\(\w+\))|):'}} -* \[[{{id}}]({{href}})] {{commit.subject}} by {{commit.author}} -{{/commit-list}} - -{{#commit-list -merges -heading='### Fixes' -message='(bug(?:(\(\w+\))|):)|(fix(?:(\(\w+\))|):)'}} -* \[[{{id}}]({{href}})] {{commit.subject}} by {{commit.author}} -{{/commit-list}} - -{{#commit-list -merges -heading='### Chores' -message='(chore(?:(\(\w+\))|):)|(build(?:(\(\w+\))|):)|(npm(?:(\(\w+\))|):)'}} -* \[[{{id}}]({{href}})] {{commit.subject}} by {{commit.author}} -{{/commit-list}} - -{{#commit-list -merges -heading='### Other' -exclude='(feat(?:(\(\w+\))|):)|(chore(?:(\(\w+\))|):)|(build(?:(\(\w+\))|):)|(npm(?:(\(\w+\))|):)|(fix(?:(\(\w+\))|):)|(bug(?:(\(\w+\))|):)'}} -* \[[{{id}}]({{href}})] {{commit.subject}} by {{commit.author}} -{{/commit-list}} - -{{/each}} \ No newline at end of file diff --git a/docker/Dockerfile b/deployment/docker/Dockerfile similarity index 100% rename from docker/Dockerfile rename to deployment/docker/Dockerfile diff --git a/docker/build.sh b/deployment/docker/build.sh similarity index 100% rename from docker/build.sh rename to deployment/docker/build.sh diff --git a/docker/keycloak/comify-realm.json b/deployment/docker/keycloak/comify-realm.json similarity index 100% rename from docker/keycloak/comify-realm.json rename to deployment/docker/keycloak/comify-realm.json diff --git a/docker/keycloak/themes/keycloak-theme-for-kc-all-other-versions.jar b/deployment/docker/keycloak/themes/keycloak-theme-for-kc-all-other-versions.jar similarity index 100% rename from docker/keycloak/themes/keycloak-theme-for-kc-all-other-versions.jar rename to deployment/docker/keycloak/themes/keycloak-theme-for-kc-all-other-versions.jar diff --git a/docker/keycloak/themes_src/README.md b/deployment/docker/keycloak/themes_src/README.md similarity index 100% rename from docker/keycloak/themes_src/README.md rename to deployment/docker/keycloak/themes_src/README.md diff --git a/docker/keycloak/themes_src/logo.svg b/deployment/docker/keycloak/themes_src/logo.svg similarity index 100% rename from docker/keycloak/themes_src/logo.svg rename to deployment/docker/keycloak/themes_src/logo.svg diff --git a/docker/keycloak/themes_src/main.css b/deployment/docker/keycloak/themes_src/main.css similarity index 100% rename from docker/keycloak/themes_src/main.css rename to deployment/docker/keycloak/themes_src/main.css diff --git a/docker/mongodb/init.js b/deployment/docker/mongodb/init.js similarity index 100% rename from docker/mongodb/init.js rename to deployment/docker/mongodb/init.js diff --git a/docker/push.sh b/deployment/docker/push.sh similarity index 100% rename from docker/push.sh rename to deployment/docker/push.sh diff --git a/resources/global.json b/deployment/resources/global.json similarity index 100% rename from resources/global.json rename to deployment/resources/global.json diff --git a/deployment/segments/common.bff.json b/deployment/segments/common.bff.json new file mode 100644 index 00000000..d85acbfc --- /dev/null +++ b/deployment/segments/common.bff.json @@ -0,0 +1,3 @@ +{ + "./common/domain/tenant/getByOriginConverted": { "default": { "access": "public" } } +} \ No newline at end of file diff --git a/deployment/segments/common.reads.json b/deployment/segments/common.reads.json new file mode 100644 index 00000000..d2157492 --- /dev/null +++ b/deployment/segments/common.reads.json @@ -0,0 +1,3 @@ +{ + "./common/domain/tenant/getByOrigin": { "default": { "access": "protected" }, "TenantNotFound": { } } +} \ No newline at end of file diff --git a/deployment/segments/social.bff.json b/deployment/segments/social.bff.json new file mode 100644 index 00000000..1b61bd4f --- /dev/null +++ b/deployment/segments/social.bff.json @@ -0,0 +1,46 @@ +{ + "./social/domain/authentication/getLoginUrl": { "default": { "access": "public" } }, + "./social/domain/authentication/login": { "default": { "access": "public" } }, + "./social/domain/authentication/logout": { "default": { "access": "public" } }, + + "./social/domain/creator/aggregate": { "default": { "access": "private" }}, + "./social/domain/creator/getByIdAggregated": { "default": { "access": "private" } }, + "./social/domain/creator/getByNicknameAggregated": { "default": { "access": "public" } }, + "./social/domain/creator/getMeAggregated": { "default": { "access": "public" } }, + "./social/domain/creator/updateFullName": { "default": { "access": "public" } }, + "./social/domain/creator/updateNickname": { "default": { "access": "public" } }, + + "./social/domain/creator.metrics/create": { "subscriptions": { "access": "private" } }, + "./social/domain/creator.metrics/updateFollowers": { "subscriptions": { "access": "private" } }, + "./social/domain/creator.metrics/updateFollowing": { "subscriptions": { "access": "private" } }, + "./social/domain/creator.metrics/updatePosts": { "subscriptions": { "access": "private" } }, + + "./social/domain/notification/aggregate": { "default": { "access": "private" } }, + "./social/domain/notification/notify": { "subscriptions": { "access": "private" } }, + "./social/domain/notification/getRecentAggregated": { "default": { "access": "public" } }, + + "./social/domain/post/aggregate": { "default": { "access": "private" } }, + "./social/domain/post/create": { "default": { "access": "private" }, "subscribe": { "access": "private" } }, + "./social/domain/post/createWithComic": { "default": { "access": "public" } }, + "./social/domain/post/createWithComment": { "default": { "access": "public" } }, + "./social/domain/post/getByCreatorAggregated": { "default": { "access": "public" } }, + "./social/domain/post/getByFollowingAggregated": { "default": { "access": "public" } }, + "./social/domain/post/exploreAggregated": { "default": { "access": "public" } }, + "./social/domain/post/getByIdAggregated": { "default": { "access": "public" } }, + "./social/domain/post/getByParentAggregated": { "default": { "access": "public" } }, + "./social/domain/post/getRecommendedAggregated": { "default": { "access": "public"}}, + "./social/domain/post/remove": { "default": { "access": "public" }, "subscribe": { "access": "private" } }, + + "./social/domain/post.metrics/create": { "subscriptions": { "access": "private" } }, + "./social/domain/post.metrics/updateRatings": { "subscriptions": { "access": "private" } }, + "./social/domain/post.metrics/updateReactions": { "subscriptions": { "access": "private" } }, + + "./social/domain/rating/toggle": { "default": { "access": "public" }, "subscribe": { "access": "private" } }, + + "./social/domain/relation/aggregate": { "default": { "access": "private" }}, + "./social/domain/relation/exploreAggregated": { "default": { "access": "public" } }, + "./social/domain/relation/establish": { "default": { "access": "public" }, "subscribe": { "access": "private" } }, + "./social/domain/relation/getAggregated": { "default": { "access": "public" } }, + "./social/domain/relation/getFollowersAggregated": { "default": { "access": "public" } }, + "./social/domain/relation/getFollowingAggregated": { "default": { "access": "public" } } +} \ No newline at end of file diff --git a/deployment/segments/social.notification.json b/deployment/segments/social.notification.json new file mode 100644 index 00000000..02806337 --- /dev/null +++ b/deployment/segments/social.notification.json @@ -0,0 +1,6 @@ +{ + "./social/domain/notification/create": { "default": { "access": "protected" } }, + "./social/domain/notification/getByPostId": { "default": { "access": "protected" } }, + "./social/domain/notification/getRecent": { "default": { "access": "protected" } }, + "./social/domain/notification/remove": { "default": { "access": "protected" } } +} \ No newline at end of file diff --git a/deployment/segments/social.reads.json b/deployment/segments/social.reads.json new file mode 100644 index 00000000..865e5b94 --- /dev/null +++ b/deployment/segments/social.reads.json @@ -0,0 +1,36 @@ +{ + "./social/domain/comic/getById": { "default": { "access": "protected" } }, + + "./social/domain/comment/getById": { "default": { "access": "protected" } }, + + "./social/domain/creator/generateNickname/retrieveByNickname": { "default": { "access": "protected" } }, + "./social/domain/creator/generateNickname/retrieveByStartNickname": { "default": { "access": "protected" } }, + "./social/domain/creator/getByEmail": { "default": { "access": "protected" } }, + "./social/domain/creator/getById": { "default": { "access": "protected" } }, + "./social/domain/creator/getByNickname": { "default": { "access": "protected" } }, + "./social/domain/creator/getMe": { "default": { "access": "protected" } }, + "./social/domain/creator/getOthers": { "default": { "access": "private" }}, + "./social/domain/creator/updateNickname/retrieveByNickname": { "default": { "access": "protected" } }, + + "./social/domain/creator.metrics/getByCreator": { "default": { "access": "protected" } }, + + "./social/domain/image/getById": { "default": { "access": "protected" } }, + + "./social/domain/post/explore": { "default": { "access": "protected" } }, + "./social/domain/post/getByCreator": { "default": { "access": "protected" } }, + "./social/domain/post/getByFollowing": { "default": { "access": "protected" } }, + "./social/domain/post/getById": { "default": { "access": "protected" } }, + "./social/domain/post/getByParent": { "default": { "access": "protected" } }, + "./social/domain/post/getRecommended": { "default": { "access": "protected" } }, + + "./social/domain/post.metrics/getByPost": { "default": { "access": "protected" } }, + + "./social/domain/rating/exists": { "default": { "access": "protected" } }, + "./social/domain/rating/toggle/getData": { "default": { "access": "protected" } }, + + "./social/domain/relation/exists": { "default": { "access": "protected" } }, + "./social/domain/relation/explore": { "default": { "access": "protected" } }, + "./social/domain/relation/get": { "default": { "access": "protected" } }, + "./social/domain/relation/getFollowers": { "default": { "access": "protected" } }, + "./social/domain/relation/getFollowing": { "default": { "access": "protected" } } +} \ No newline at end of file diff --git a/deployment/segments/social.writes.json b/deployment/segments/social.writes.json new file mode 100644 index 00000000..37c8b288 --- /dev/null +++ b/deployment/segments/social.writes.json @@ -0,0 +1,32 @@ +{ + "./social/domain/comic/create/insertData": { "default": { "access": "protected" } }, + "./social/domain/comic/erase": { "default": { "access": "protected" } }, + + "./social/domain/comment/create": { "default": { "access": "protected" } }, + "./social/domain/comment/erase": { "default": { "access": "protected" } }, + + "./social/domain/creator/create": { "default": { "access": "protected" } }, + "./social/domain/creator/erase": { "default": { "access": "protected" } }, + "./social/domain/creator/update": { "default": { "access": "protected" } }, + + "./social/domain/creator.metrics/create/insertData": { "default": { "access": "protected" } }, + "./social/domain/creator.metrics/update": { "default": { "access": "protected" } }, + + "./social/domain/image/erase": { "default": { "access": "protected" } }, + "./social/domain/image/save": { "default": { "access": "protected" } }, + + "./social/domain/post/create/insertData": { "default": { "access": "protected" } }, + "./social/domain/post/erase": { "default": { "access": "protected" } }, + "./social/domain/post/remove/deleteData": { "default": { "access": "protected" }}, + "./social/domain/post/remove/undeleteData": { "default": { "access": "protected" }}, + "./social/domain/post/update": { "default": { "access": "protected" } }, + + "./social/domain/post.metrics/create/insertData": { "default": { "access": "protected" } }, + "./social/domain/post.metrics/update": { "default": { "access": "protected" } }, + + "./social/domain/rating/create": { "default": { "access": "protected" } }, + "./social/domain/rating/erase": { "default": { "access": "protected" } }, + + "./social/domain/relation/create": { "default": { "access": "protected" } }, + "./social/domain/relation/erase": { "default": { "access": "protected" } } +} \ No newline at end of file diff --git a/deployment/services/demonstration/social.json b/deployment/services/demonstration/social.json new file mode 100644 index 00000000..6d3ef2da --- /dev/null +++ b/deployment/services/demonstration/social.json @@ -0,0 +1,40 @@ +{ + "url": "http://127.0.0.1:3000", + "setUp": [ + "./common/integrations/authentication/setUp", + "./common/integrations/database/setUp", + "./common/integrations/fileStore/setUp", + "./common/integrations/eventBroker/setUp" + ], + "tearDown": [ + "./common/integrations/authentication/tearDown", + "./common/integrations/database/tearDown", + "./common/integrations/fileStore/tearDown", + "./common/integrations/eventBroker/tearDown" + ], + "healthChecks": [ + "./common/integrations/database/healthCheck", + "./common/integrations/fileStore/healthCheck", + "./common/integrations/eventBroker/healthCheck" + ], + "middleware": [ + "./common/integrations/authentication/originMiddleware", + "./common/integrations/authentication/authenticationMiddleware", + "./common/integrations/tenancy/tenantMiddleware" + ], + "standalone": + { + "segments": [ + "common.bff", + "common.reads", + "social.bff", + "social.notification", + "social.reads", + "social.writes" + ], + + "serveIndexOnNotFound": true, + "assetRoot": "./social/app", + "assets": ["index.html", "assets/**/*", "registerSW.js", "sw.js", "workbox-*.js", "manifest.webmanifest" ] + } +} \ No newline at end of file diff --git a/deployment/services/development/worker.json b/deployment/services/development/worker.json new file mode 100644 index 00000000..a598ba4f --- /dev/null +++ b/deployment/services/development/worker.json @@ -0,0 +1,36 @@ +{ + "url": "http://127.0.0.1:3000", + "setUp": [ + "./common/integrations/authentication/setUp", + "./common/integrations/database/setUp", + "./common/integrations/fileStore/setUp", + "./common/integrations/eventBroker/setUp" + ], + "tearDown": [ + "./common/integrations/authentication/tearDown", + "./common/integrations/database/tearDown", + "./common/integrations/fileStore/tearDown", + "./common/integrations/eventBroker/tearDown" + ], + "healthChecks": [ + "./common/integrations/database/healthCheck", + "./common/integrations/fileStore/healthCheck", + "./common/integrations/eventBroker/healthCheck" + ], + "middleware": [ + "./common/integrations/authentication/originMiddleware", + "./common/integrations/authentication/authenticationMiddleware", + "./common/integrations/tenancy/tenantMiddleware" + ], + "worker": + { + "segments": [ + "common.bff", + "common.reads", + "social.bff", + "social.notification", + "social.reads", + "social.writes" + ] + } +} \ No newline at end of file diff --git a/deployment/services/production/bff.json b/deployment/services/production/bff.json new file mode 100644 index 00000000..0c09bd56 --- /dev/null +++ b/deployment/services/production/bff.json @@ -0,0 +1,25 @@ +{ + "url": "http://127.0.0.1:4000", + "setUp": [ + "./common/integrations/authentication/setUp", + "./common/integrations/eventBroker/setUp" + ], + "tearDown": [ + "./common/integrations/authentication/tearDown", + "./common/integrations/eventBroker/tearDown" + ], + "healthChecks": [ + "./common/integrations/eventBroker/healthCheck" + ], + "middleware": [ + "./common/integrations/authentication/originMiddleware", + "./common/integrations/authentication/authenticationMiddleware", + "./common/integrations/tenancy/tenantMiddleware" + ], + "worker": + { + "gateway": "http://127.0.0.1:2000", + "trustKey": "${JITAR_TRUST_KEY}", + "segments": ["common.bff", "social.bff"] + } +} \ No newline at end of file diff --git a/services/gateway.json b/deployment/services/production/gateway.json similarity index 100% rename from services/gateway.json rename to deployment/services/production/gateway.json diff --git a/deployment/services/production/insights-app.json b/deployment/services/production/insights-app.json new file mode 100644 index 00000000..5f262b45 --- /dev/null +++ b/deployment/services/production/insights-app.json @@ -0,0 +1,9 @@ +{ + "url": "http://127.0.0.1:1000", + "repository": + { + "serveIndexOnNotFound": true, + "assetRoot": "./insights/app", + "assets": ["index.html", "assets/**/*", "registerSW.js", "sw.js", "workbox-*.js", "manifest.webmanifest" ] + } +} \ No newline at end of file diff --git a/deployment/services/production/moderation-app.json b/deployment/services/production/moderation-app.json new file mode 100644 index 00000000..a555f21d --- /dev/null +++ b/deployment/services/production/moderation-app.json @@ -0,0 +1,9 @@ +{ + "url": "http://127.0.0.1:1000", + "repository": + { + "serveIndexOnNotFound": true, + "assetRoot": "./moderation/app", + "assets": ["index.html", "assets/**/*", "registerSW.js", "sw.js", "workbox-*.js", "manifest.webmanifest" ] + } +} \ No newline at end of file diff --git a/services/notification.json b/deployment/services/production/notification.json similarity index 53% rename from services/notification.json rename to deployment/services/production/notification.json index 98f2fcf5..e48fb644 100644 --- a/services/notification.json +++ b/deployment/services/production/notification.json @@ -1,18 +1,18 @@ { "url": "http://127.0.0.1:4001", "setUp": [ - "./integrations/database/setUp" + "./common/integrations/database/setUp" ], "tearDown": [ - "./integrations/database/tearDown" + "./common/integrations/database/tearDown" ], "healthChecks": [ - "./integrations/database/healthCheck" + "./common/integrations/database/healthCheck" ], "worker": { "gateway": "http://127.0.0.1:2000", "trustKey": "${JITAR_TRUST_KEY}", - "segments": ["notification"] + "segments": ["social.notification"] } } \ No newline at end of file diff --git a/services/proxy.json b/deployment/services/production/proxy.json similarity index 100% rename from services/proxy.json rename to deployment/services/production/proxy.json diff --git a/deployment/services/production/reads.json b/deployment/services/production/reads.json new file mode 100644 index 00000000..64e5f547 --- /dev/null +++ b/deployment/services/production/reads.json @@ -0,0 +1,21 @@ +{ + "url": "http://127.0.0.1:4002", + "setUp": [ + "./common/integrations/database/setUp", + "./common/integrations/fileStore/setUp" + ], + "tearDown": [ + "./common/integrations/database/tearDown", + "./common/integrations/fileStore/tearDown" + ], + "healthChecks": [ + "./common/integrations/database/healthCheck", + "./common/integrations/fileStore/healthCheck" + ], + "worker": + { + "gateway": "http://127.0.0.1:2000", + "trustKey": "${JITAR_TRUST_KEY}", + "segments": ["common.reads", "social.reads"] + } +} \ No newline at end of file diff --git a/deployment/services/production/reads2.json b/deployment/services/production/reads2.json new file mode 100644 index 00000000..6fa08551 --- /dev/null +++ b/deployment/services/production/reads2.json @@ -0,0 +1,21 @@ +{ + "url": "http://127.0.0.1:4003", + "setUp": [ + "./common/integrations/database/setUp", + "./common/integrations/fileStore/setUp" + ], + "tearDown": [ + "./common/integrations/database/tearDown", + "./common/integrations/fileStore/tearDown" + ], + "healthChecks": [ + "./common/integrations/database/healthCheck", + "./common/integrations/fileStore/healthCheck" + ], + "worker": + { + "gateway": "http://127.0.0.1:2000", + "trustKey": "${JITAR_TRUST_KEY}", + "segments": ["common.reads", "social.reads"] + } +} \ No newline at end of file diff --git a/deployment/services/production/social-app.json b/deployment/services/production/social-app.json new file mode 100644 index 00000000..fc9bd41b --- /dev/null +++ b/deployment/services/production/social-app.json @@ -0,0 +1,9 @@ +{ + "url": "http://127.0.0.1:1000", + "repository": + { + "serveIndexOnNotFound": true, + "assetRoot": "./social/app", + "assets": ["index.html", "assets/**/*", "registerSW.js", "sw.js", "workbox-*.js", "manifest.webmanifest" ] + } +} \ No newline at end of file diff --git a/deployment/services/production/writes.json b/deployment/services/production/writes.json new file mode 100644 index 00000000..66c7bd18 --- /dev/null +++ b/deployment/services/production/writes.json @@ -0,0 +1,21 @@ +{ + "url": "http://127.0.0.1:4004", + "setUp": [ + "./common/integrations/database/setUp", + "./common/integrations/fileStore/setUp" + ], + "tearDown": [ + "./common/integrations/database/tearDown", + "./common/integrations/fileStore/tearDown" + ], + "healthChecks": [ + "./common/integrations/database/healthCheck", + "./common/integrations/fileStore/healthCheck" + ], + "worker": + { + "gateway": "http://127.0.0.1:2000", + "trustKey": "${JITAR_TRUST_KEY}", + "segments": ["social.writes"] + } +} \ No newline at end of file diff --git a/src/domain/tenant/definitions.ts b/development/common/domain/tenant/definitions.ts similarity index 100% rename from src/domain/tenant/definitions.ts rename to development/common/domain/tenant/definitions.ts diff --git a/src/domain/tenant/getByOrigin/TenantNotFound.ts b/development/common/domain/tenant/getByOrigin/TenantNotFound.ts similarity index 100% rename from src/domain/tenant/getByOrigin/TenantNotFound.ts rename to development/common/domain/tenant/getByOrigin/TenantNotFound.ts diff --git a/src/domain/tenant/getByOrigin/getByOrigin.ts b/development/common/domain/tenant/getByOrigin/getByOrigin.ts similarity index 100% rename from src/domain/tenant/getByOrigin/getByOrigin.ts rename to development/common/domain/tenant/getByOrigin/getByOrigin.ts diff --git a/src/domain/tenant/getByOrigin/index.ts b/development/common/domain/tenant/getByOrigin/index.ts similarity index 100% rename from src/domain/tenant/getByOrigin/index.ts rename to development/common/domain/tenant/getByOrigin/index.ts diff --git a/src/domain/tenant/getByOriginConverted/InvalidOrigin.ts b/development/common/domain/tenant/getByOriginConverted/InvalidOrigin.ts similarity index 100% rename from src/domain/tenant/getByOriginConverted/InvalidOrigin.ts rename to development/common/domain/tenant/getByOriginConverted/InvalidOrigin.ts diff --git a/src/domain/tenant/getByOriginConverted/getByOriginConverted.ts b/development/common/domain/tenant/getByOriginConverted/getByOriginConverted.ts similarity index 100% rename from src/domain/tenant/getByOriginConverted/getByOriginConverted.ts rename to development/common/domain/tenant/getByOriginConverted/getByOriginConverted.ts diff --git a/src/domain/tenant/getByOriginConverted/index.ts b/development/common/domain/tenant/getByOriginConverted/index.ts similarity index 100% rename from src/domain/tenant/getByOriginConverted/index.ts rename to development/common/domain/tenant/getByOriginConverted/index.ts diff --git a/src/domain/tenant/getByOriginConverted/types.ts b/development/common/domain/tenant/getByOriginConverted/types.ts similarity index 100% rename from src/domain/tenant/getByOriginConverted/types.ts rename to development/common/domain/tenant/getByOriginConverted/types.ts diff --git a/src/domain/tenant/getByOriginConverted/validateData.ts b/development/common/domain/tenant/getByOriginConverted/validateData.ts similarity index 100% rename from src/domain/tenant/getByOriginConverted/validateData.ts rename to development/common/domain/tenant/getByOriginConverted/validateData.ts diff --git a/src/domain/tenant/index.ts b/development/common/domain/tenant/index.ts similarity index 100% rename from src/domain/tenant/index.ts rename to development/common/domain/tenant/index.ts diff --git a/src/domain/tenant/tenant.ts b/development/common/domain/tenant/tenant.ts similarity index 100% rename from src/domain/tenant/tenant.ts rename to development/common/domain/tenant/tenant.ts diff --git a/src/domain/tenant/types.ts b/development/common/domain/tenant/types.ts similarity index 100% rename from src/domain/tenant/types.ts rename to development/common/domain/tenant/types.ts diff --git a/development/common/domain/types.ts b/development/common/domain/types.ts new file mode 100644 index 00000000..0ba2f92b --- /dev/null +++ b/development/common/domain/types.ts @@ -0,0 +1,6 @@ + +type BaseDataModel = { + readonly id: string; +}; + +export type { BaseDataModel }; diff --git a/src/integrations/authentication/authenticationMiddleware.ts b/development/common/integrations/authentication/authenticationMiddleware.ts similarity index 63% rename from src/integrations/authentication/authenticationMiddleware.ts rename to development/common/integrations/authentication/authenticationMiddleware.ts index 8e40278a..492324e1 100644 --- a/src/integrations/authentication/authenticationMiddleware.ts +++ b/development/common/integrations/authentication/authenticationMiddleware.ts @@ -4,15 +4,15 @@ import { AuthenticationMiddleware } from '@jitar-plugins/authentication'; import identityProvider from './identityProvider'; const authProcedures = { - loginUrl: 'domain/authentication/getLoginUrl', - login: 'domain/authentication/login', - logout: 'domain/authentication/logout' + loginUrl: 'social/domain/authentication/getLoginUrl', + login: 'social/domain/authentication/login', + logout: 'social/domain/authentication/logout' }; const redirectPath = process.env.AUTHENTICATION_CLIENT_PATH || ''; const whiteList: string[] = [ - 'domain/tenant/getByOriginConverted' + 'common/domain/tenant/getByOriginConverted' ]; export default new AuthenticationMiddleware(identityProvider, authProcedures, redirectPath, whiteList); diff --git a/src/integrations/authentication/identityProvider.ts b/development/common/integrations/authentication/identityProvider.ts similarity index 100% rename from src/integrations/authentication/identityProvider.ts rename to development/common/integrations/authentication/identityProvider.ts diff --git a/src/integrations/authentication/originMiddleware.ts b/development/common/integrations/authentication/originMiddleware.ts similarity index 100% rename from src/integrations/authentication/originMiddleware.ts rename to development/common/integrations/authentication/originMiddleware.ts diff --git a/src/integrations/authentication/requesterMiddleware.ts b/development/common/integrations/authentication/requesterMiddleware.ts similarity index 100% rename from src/integrations/authentication/requesterMiddleware.ts rename to development/common/integrations/authentication/requesterMiddleware.ts diff --git a/src/integrations/authentication/setUp.ts b/development/common/integrations/authentication/setUp.ts similarity index 100% rename from src/integrations/authentication/setUp.ts rename to development/common/integrations/authentication/setUp.ts diff --git a/src/integrations/authentication/tearDown.ts b/development/common/integrations/authentication/tearDown.ts similarity index 100% rename from src/integrations/authentication/tearDown.ts rename to development/common/integrations/authentication/tearDown.ts diff --git a/src/integrations/database/database.ts b/development/common/integrations/database/database.ts similarity index 100% rename from src/integrations/database/database.ts rename to development/common/integrations/database/database.ts diff --git a/src/integrations/database/healthCheck.ts b/development/common/integrations/database/healthCheck.ts similarity index 100% rename from src/integrations/database/healthCheck.ts rename to development/common/integrations/database/healthCheck.ts diff --git a/src/integrations/database/index.ts b/development/common/integrations/database/index.ts similarity index 100% rename from src/integrations/database/index.ts rename to development/common/integrations/database/index.ts diff --git a/src/integrations/database/setUp.ts b/development/common/integrations/database/setUp.ts similarity index 100% rename from src/integrations/database/setUp.ts rename to development/common/integrations/database/setUp.ts diff --git a/src/integrations/database/tearDown.ts b/development/common/integrations/database/tearDown.ts similarity index 100% rename from src/integrations/database/tearDown.ts rename to development/common/integrations/database/tearDown.ts diff --git a/src/integrations/errors/BadRequest.ts b/development/common/integrations/errors/BadRequest.ts similarity index 100% rename from src/integrations/errors/BadRequest.ts rename to development/common/integrations/errors/BadRequest.ts diff --git a/src/integrations/errors/NotFound.ts b/development/common/integrations/errors/NotFound.ts similarity index 100% rename from src/integrations/errors/NotFound.ts rename to development/common/integrations/errors/NotFound.ts diff --git a/src/integrations/errors/ServerError.ts b/development/common/integrations/errors/ServerError.ts similarity index 100% rename from src/integrations/errors/ServerError.ts rename to development/common/integrations/errors/ServerError.ts diff --git a/src/integrations/errors/Unauthorized.ts b/development/common/integrations/errors/Unauthorized.ts similarity index 100% rename from src/integrations/errors/Unauthorized.ts rename to development/common/integrations/errors/Unauthorized.ts diff --git a/src/integrations/errors/ValidationError.ts b/development/common/integrations/errors/ValidationError.ts similarity index 100% rename from src/integrations/errors/ValidationError.ts rename to development/common/integrations/errors/ValidationError.ts diff --git a/src/integrations/errors/index.ts b/development/common/integrations/errors/index.ts similarity index 100% rename from src/integrations/errors/index.ts rename to development/common/integrations/errors/index.ts diff --git a/src/integrations/eventBroker/eventBroker.ts b/development/common/integrations/eventBroker/eventBroker.ts similarity index 100% rename from src/integrations/eventBroker/eventBroker.ts rename to development/common/integrations/eventBroker/eventBroker.ts diff --git a/src/integrations/eventBroker/healthCheck.ts b/development/common/integrations/eventBroker/healthCheck.ts similarity index 100% rename from src/integrations/eventBroker/healthCheck.ts rename to development/common/integrations/eventBroker/healthCheck.ts diff --git a/src/integrations/eventBroker/index.ts b/development/common/integrations/eventBroker/index.ts similarity index 100% rename from src/integrations/eventBroker/index.ts rename to development/common/integrations/eventBroker/index.ts diff --git a/src/integrations/eventBroker/setUp.ts b/development/common/integrations/eventBroker/setUp.ts similarity index 100% rename from src/integrations/eventBroker/setUp.ts rename to development/common/integrations/eventBroker/setUp.ts diff --git a/src/integrations/eventBroker/tearDown.ts b/development/common/integrations/eventBroker/tearDown.ts similarity index 100% rename from src/integrations/eventBroker/tearDown.ts rename to development/common/integrations/eventBroker/tearDown.ts diff --git a/src/integrations/fileStore/fileStore.ts b/development/common/integrations/fileStore/fileStore.ts similarity index 95% rename from src/integrations/fileStore/fileStore.ts rename to development/common/integrations/fileStore/fileStore.ts index a7cade02..ed65f527 100644 --- a/src/integrations/fileStore/fileStore.ts +++ b/development/common/integrations/fileStore/fileStore.ts @@ -10,7 +10,7 @@ function setUpMemory(): MemoryDriver return new MemoryDriver(); } -function setUpMinio(): S3Driver +function setUpS3(): S3Driver { const config = { bucketName: process.env.S3_BUCKET_NAME ?? '', @@ -29,7 +29,7 @@ function setUpMinio(): S3Driver } export const driver = process.env.FILE_STORE_DRIVER === 's3' - ? setUpMinio() + ? setUpS3() : setUpMemory(); const fileStore = new FileStore(driver, shelfLogger); diff --git a/src/integrations/fileStore/healthCheck.ts b/development/common/integrations/fileStore/healthCheck.ts similarity index 100% rename from src/integrations/fileStore/healthCheck.ts rename to development/common/integrations/fileStore/healthCheck.ts diff --git a/src/integrations/fileStore/index.ts b/development/common/integrations/fileStore/index.ts similarity index 100% rename from src/integrations/fileStore/index.ts rename to development/common/integrations/fileStore/index.ts diff --git a/src/integrations/fileStore/setUp.ts b/development/common/integrations/fileStore/setUp.ts similarity index 100% rename from src/integrations/fileStore/setUp.ts rename to development/common/integrations/fileStore/setUp.ts diff --git a/src/integrations/fileStore/tearDown.ts b/development/common/integrations/fileStore/tearDown.ts similarity index 100% rename from src/integrations/fileStore/tearDown.ts rename to development/common/integrations/fileStore/tearDown.ts diff --git a/src/integrations/http/http.ts b/development/common/integrations/http/http.ts similarity index 100% rename from src/integrations/http/http.ts rename to development/common/integrations/http/http.ts diff --git a/src/integrations/http/index.ts b/development/common/integrations/http/index.ts similarity index 100% rename from src/integrations/http/index.ts rename to development/common/integrations/http/index.ts diff --git a/src/integrations/logging/index.ts b/development/common/integrations/logging/index.ts similarity index 100% rename from src/integrations/logging/index.ts rename to development/common/integrations/logging/index.ts diff --git a/src/integrations/logging/logger.ts b/development/common/integrations/logging/logger.ts similarity index 100% rename from src/integrations/logging/logger.ts rename to development/common/integrations/logging/logger.ts diff --git a/src/integrations/notification/notificationHealthCheck.ts b/development/common/integrations/notification/notificationHealthCheck.ts similarity index 100% rename from src/integrations/notification/notificationHealthCheck.ts rename to development/common/integrations/notification/notificationHealthCheck.ts diff --git a/src/integrations/notification/notificationService.ts b/development/common/integrations/notification/notificationService.ts similarity index 100% rename from src/integrations/notification/notificationService.ts rename to development/common/integrations/notification/notificationService.ts diff --git a/src/integrations/tenancy/middleware/MultiTenantMiddleware.ts b/development/common/integrations/tenancy/middleware/MultiTenantMiddleware.ts similarity index 95% rename from src/integrations/tenancy/middleware/MultiTenantMiddleware.ts rename to development/common/integrations/tenancy/middleware/MultiTenantMiddleware.ts index b8fd22b0..572693e3 100644 --- a/src/integrations/tenancy/middleware/MultiTenantMiddleware.ts +++ b/development/common/integrations/tenancy/middleware/MultiTenantMiddleware.ts @@ -5,7 +5,7 @@ import { Response } from 'jitar'; import type { Tenant } from '^/domain/tenant'; import getByOrigin from '^/domain/tenant/getByOriginConverted'; -const GEY_BY_ORIGIN_FQN = 'domain/tenant/getByOriginConverted'; +const GEY_BY_ORIGIN_FQN = 'common/domain/tenant/getByOriginConverted'; const TENANT_PARAMETER = '*tenant'; export default class MultiTenantMiddleware implements Middleware diff --git a/src/integrations/tenancy/tenantMiddleware.ts b/development/common/integrations/tenancy/tenantMiddleware.ts similarity index 100% rename from src/integrations/tenancy/tenantMiddleware.ts rename to development/common/integrations/tenancy/tenantMiddleware.ts diff --git a/src/integrations/utilities/crypto.ts b/development/common/integrations/utilities/crypto.ts similarity index 100% rename from src/integrations/utilities/crypto.ts rename to development/common/integrations/utilities/crypto.ts diff --git a/src/integrations/utilities/dates.ts b/development/common/integrations/utilities/dates.ts similarity index 100% rename from src/integrations/utilities/dates.ts rename to development/common/integrations/utilities/dates.ts diff --git a/src/integrations/utilities/webbrowser.ts b/development/common/integrations/utilities/webbrowser.ts similarity index 100% rename from src/integrations/utilities/webbrowser.ts rename to development/common/integrations/utilities/webbrowser.ts diff --git a/src/integrations/validation/index.ts b/development/common/integrations/validation/index.ts similarity index 100% rename from src/integrations/validation/index.ts rename to development/common/integrations/validation/index.ts diff --git a/src/integrations/validation/validator.ts b/development/common/integrations/validation/validator.ts similarity index 100% rename from src/integrations/validation/validator.ts rename to development/common/integrations/validation/validator.ts diff --git a/development/common/package.json b/development/common/package.json new file mode 100644 index 00000000..1bcfc493 --- /dev/null +++ b/development/common/package.json @@ -0,0 +1,13 @@ +{ + "name": "@comify/common", + "private": true, + "version": "0.0.1", + "type": "module", + "scripts": { + "dev": "vite --config app/vite.config.js", + "build": "npm run clean && npm run build-domain", + "build-domain": "tsc && tsc-alias", + "clean": "rimraf ../../artifacts/build/common", + "lint": "eslint" + } +} diff --git a/development/common/tsconfig.json b/development/common/tsconfig.json new file mode 100644 index 00000000..2153ea77 --- /dev/null +++ b/development/common/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "composite": true, + "rootDir": "./", + "outDir": "../../artifacts/build/common", + "paths": { + "^/*": ["./*"], + } + }, + "include": ["./domain", "./integrations"] +} \ No newline at end of file diff --git a/src/assets/localhost.css b/development/insights/app/assets/.gitkeep similarity index 100% rename from src/assets/localhost.css rename to development/insights/app/assets/.gitkeep diff --git a/development/insights/app/components/main.tsx b/development/insights/app/components/main.tsx new file mode 100644 index 00000000..29ad513b --- /dev/null +++ b/development/insights/app/components/main.tsx @@ -0,0 +1,6 @@ + +import ReactDOM from 'react-dom/client'; + +ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render( +

Hello Insights

+); diff --git a/development/insights/app/index.html b/development/insights/app/index.html new file mode 100644 index 00000000..9f8de572 --- /dev/null +++ b/development/insights/app/index.html @@ -0,0 +1,14 @@ + + + + + + Insights + + + +
+ + + + \ No newline at end of file diff --git a/development/insights/app/public/.gitkeep b/development/insights/app/public/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/src/apps/social/tsconfig.json b/development/insights/app/tsconfig.json similarity index 75% rename from src/apps/social/tsconfig.json rename to development/insights/app/tsconfig.json index d62702c7..2e1aba0d 100644 --- a/src/apps/social/tsconfig.json +++ b/development/insights/app/tsconfig.json @@ -3,9 +3,8 @@ "compilerOptions": { "jsx": "react-jsx", "noEmit": true, - "outDir": "../../../dist", "paths": { - "^/*": ["../../*"], + "^/*": ["../*"], "~/*": ["./*"], } }, diff --git a/src/apps/social/app/vite-env.d.ts b/development/insights/app/vite-env.d.ts similarity index 100% rename from src/apps/social/app/vite-env.d.ts rename to development/insights/app/vite-env.d.ts diff --git a/development/insights/app/vite.config.ts b/development/insights/app/vite.config.ts new file mode 100644 index 00000000..7b437368 --- /dev/null +++ b/development/insights/app/vite.config.ts @@ -0,0 +1,32 @@ + +import jitar, { JitarConfig } from '@jitar/plugin-vite'; +import react from '@vitejs/plugin-react'; +import { defineConfig } from 'vite'; +import tsconfigPaths from 'vite-tsconfig-paths'; + +const JITAR_URL = 'http://localhost:3000'; +const JITAR_SEGMENTS: string[] = []; +const JITAR_MIDDLEWARES: string[] = []; + +const jitarConfig: JitarConfig = { + projectRoot: '../../../', + sourceRoot: '../../', + jitarUrl: JITAR_URL, + segments: JITAR_SEGMENTS, + middleware: JITAR_MIDDLEWARES +}; + +export default defineConfig({ + root: './app', + publicDir: 'public', + build: { + outDir: '../../../artifacts/build/insights/app', + assetsDir: 'assets', + emptyOutDir: true + }, + plugins: [ + react(), + tsconfigPaths(), + jitar(jitarConfig) + ] +}); \ No newline at end of file diff --git a/development/insights/domain/definitions.ts b/development/insights/domain/definitions.ts new file mode 100644 index 00000000..e69de29b diff --git a/development/insights/domain/types.ts b/development/insights/domain/types.ts new file mode 100644 index 00000000..e69de29b diff --git a/development/insights/package.json b/development/insights/package.json new file mode 100644 index 00000000..60effa42 --- /dev/null +++ b/development/insights/package.json @@ -0,0 +1,14 @@ +{ + "name": "@comify/insights", + "private": true, + "version": "0.0.1", + "type": "module", + "scripts": { + "dev": "vite --config app/vite.config.js", + "build": "npm run clean && npm run build-domain && npm run build-app", + "build-app": "vite build --config app/vite.config.js", + "build-domain": "tsc && tsc-alias", + "clean": "rimraf ../../artifacts/build/insights", + "lint": "eslint" + } +} diff --git a/development/insights/tsconfig.json b/development/insights/tsconfig.json new file mode 100644 index 00000000..86a26e91 --- /dev/null +++ b/development/insights/tsconfig.json @@ -0,0 +1,16 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "composite": true, + "rootDir": "./", + "outDir": "../../artifacts/build/insights", + "paths": { + "^/*": ["./*"], + "@comify/common/*": ["../common/*"] + } + }, + "references": [ + { "path" : "../common" } + ], + "include": ["./domain"] +} \ No newline at end of file diff --git a/development/moderation/app/assets/.gitkeep b/development/moderation/app/assets/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/development/moderation/app/components/main.tsx b/development/moderation/app/components/main.tsx new file mode 100644 index 00000000..24d7fea2 --- /dev/null +++ b/development/moderation/app/components/main.tsx @@ -0,0 +1,6 @@ + +import ReactDOM from 'react-dom/client'; + +ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render( +

Hello Moderation

+); diff --git a/development/moderation/app/index.html b/development/moderation/app/index.html new file mode 100644 index 00000000..1d24f377 --- /dev/null +++ b/development/moderation/app/index.html @@ -0,0 +1,14 @@ + + + + + + Moderation + + + +
+ + + + \ No newline at end of file diff --git a/development/moderation/app/public/.gitkeep b/development/moderation/app/public/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/development/moderation/app/tsconfig.json b/development/moderation/app/tsconfig.json new file mode 100644 index 00000000..2e1aba0d --- /dev/null +++ b/development/moderation/app/tsconfig.json @@ -0,0 +1,12 @@ +{ + "extends": "../../../tsconfig.json", + "compilerOptions": { + "jsx": "react-jsx", + "noEmit": true, + "paths": { + "^/*": ["../*"], + "~/*": ["./*"], + } + }, + "include": ["./"] +} \ No newline at end of file diff --git a/src/apps/social/vite-env.d.ts b/development/moderation/app/vite-env.d.ts similarity index 100% rename from src/apps/social/vite-env.d.ts rename to development/moderation/app/vite-env.d.ts diff --git a/development/moderation/app/vite.config.ts b/development/moderation/app/vite.config.ts new file mode 100644 index 00000000..d5d854bd --- /dev/null +++ b/development/moderation/app/vite.config.ts @@ -0,0 +1,32 @@ + +import jitar, { JitarConfig } from '@jitar/plugin-vite'; +import react from '@vitejs/plugin-react'; +import { defineConfig } from 'vite'; +import tsconfigPaths from 'vite-tsconfig-paths'; + +const JITAR_URL = 'http://localhost:3000'; +const JITAR_SEGMENTS: string[] = []; +const JITAR_MIDDLEWARES: string[] = []; + +const jitarConfig: JitarConfig = { + projectRoot: '../../../', + sourceRoot: '../../', + jitarUrl: JITAR_URL, + segments: JITAR_SEGMENTS, + middleware: JITAR_MIDDLEWARES +}; + +export default defineConfig({ + root: './app', + publicDir: 'public', + build: { + outDir: '../../../artifacts/build/moderation/app', + assetsDir: 'assets', + emptyOutDir: true + }, + plugins: [ + react(), + tsconfigPaths(), + jitar(jitarConfig) + ] +}); \ No newline at end of file diff --git a/development/moderation/domain/definitions.ts b/development/moderation/domain/definitions.ts new file mode 100644 index 00000000..e69de29b diff --git a/development/moderation/domain/types.ts b/development/moderation/domain/types.ts new file mode 100644 index 00000000..e69de29b diff --git a/development/moderation/package.json b/development/moderation/package.json new file mode 100644 index 00000000..734a8d03 --- /dev/null +++ b/development/moderation/package.json @@ -0,0 +1,14 @@ +{ + "name": "@comify/moderation", + "private": true, + "version": "0.0.1", + "type": "module", + "scripts": { + "dev": "vite --config app/vite.config.js", + "build": "npm run clean && npm run build-domain && npm run build-app", + "build-app": "vite build --config app/vite.config.js", + "build-domain": "tsc && tsc-alias", + "clean": "rimraf ../../artifacts/build/moderation", + "lint": "eslint" + } +} diff --git a/development/moderation/tsconfig.json b/development/moderation/tsconfig.json new file mode 100644 index 00000000..7cca0e3e --- /dev/null +++ b/development/moderation/tsconfig.json @@ -0,0 +1,16 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "composite": true, + "rootDir": "./", + "outDir": "../../artifacts/build/moderation", + "paths": { + "^/*": ["./*"], + "@comify/common/*": ["../common/*"] + } + }, + "references": [ + { "path" : "../common" } + ], + "include": ["./domain"] +} \ No newline at end of file diff --git a/src/apps/social/assets/images/icons/logout.svg b/development/social/app/assets/images/icons/logout.svg similarity index 100% rename from src/apps/social/assets/images/icons/logout.svg rename to development/social/app/assets/images/icons/logout.svg diff --git a/src/apps/social/assets/images/icons/rated.svg b/development/social/app/assets/images/icons/rated.svg similarity index 100% rename from src/apps/social/assets/images/icons/rated.svg rename to development/social/app/assets/images/icons/rated.svg diff --git a/src/apps/social/assets/images/icons/reactions.svg b/development/social/app/assets/images/icons/reactions.svg similarity index 100% rename from src/apps/social/assets/images/icons/reactions.svg rename to development/social/app/assets/images/icons/reactions.svg diff --git a/src/apps/social/assets/images/icons/unrated.svg b/development/social/app/assets/images/icons/unrated.svg similarity index 100% rename from src/apps/social/assets/images/icons/unrated.svg rename to development/social/app/assets/images/icons/unrated.svg diff --git a/src/apps/social/assets/images/introduction.png b/development/social/app/assets/images/introduction.png similarity index 100% rename from src/apps/social/assets/images/introduction.png rename to development/social/app/assets/images/introduction.png diff --git a/src/apps/social/assets/images/logo.svg b/development/social/app/assets/images/logo.svg similarity index 100% rename from src/apps/social/assets/images/logo.svg rename to development/social/app/assets/images/logo.svg diff --git a/src/apps/social/assets/images/navigation/create-active.svg b/development/social/app/assets/images/navigation/create-active.svg similarity index 100% rename from src/apps/social/assets/images/navigation/create-active.svg rename to development/social/app/assets/images/navigation/create-active.svg diff --git a/src/apps/social/assets/images/navigation/create-inactive.svg b/development/social/app/assets/images/navigation/create-inactive.svg similarity index 100% rename from src/apps/social/assets/images/navigation/create-inactive.svg rename to development/social/app/assets/images/navigation/create-inactive.svg diff --git a/src/apps/social/assets/images/navigation/explore-active.svg b/development/social/app/assets/images/navigation/explore-active.svg similarity index 100% rename from src/apps/social/assets/images/navigation/explore-active.svg rename to development/social/app/assets/images/navigation/explore-active.svg diff --git a/src/apps/social/assets/images/navigation/explore-inactive.svg b/development/social/app/assets/images/navigation/explore-inactive.svg similarity index 100% rename from src/apps/social/assets/images/navigation/explore-inactive.svg rename to development/social/app/assets/images/navigation/explore-inactive.svg diff --git a/src/apps/social/assets/images/navigation/notifications-active.svg b/development/social/app/assets/images/navigation/notifications-active.svg similarity index 100% rename from src/apps/social/assets/images/navigation/notifications-active.svg rename to development/social/app/assets/images/navigation/notifications-active.svg diff --git a/src/apps/social/assets/images/navigation/notifications-inactive.svg b/development/social/app/assets/images/navigation/notifications-inactive.svg similarity index 100% rename from src/apps/social/assets/images/navigation/notifications-inactive.svg rename to development/social/app/assets/images/navigation/notifications-inactive.svg diff --git a/src/apps/social/assets/images/navigation/profile-active.svg b/development/social/app/assets/images/navigation/profile-active.svg similarity index 100% rename from src/apps/social/assets/images/navigation/profile-active.svg rename to development/social/app/assets/images/navigation/profile-active.svg diff --git a/src/apps/social/assets/images/navigation/profile-inactive.svg b/development/social/app/assets/images/navigation/profile-inactive.svg similarity index 100% rename from src/apps/social/assets/images/navigation/profile-inactive.svg rename to development/social/app/assets/images/navigation/profile-inactive.svg diff --git a/src/apps/social/assets/images/navigation/timeline-active.svg b/development/social/app/assets/images/navigation/timeline-active.svg similarity index 100% rename from src/apps/social/assets/images/navigation/timeline-active.svg rename to development/social/app/assets/images/navigation/timeline-active.svg diff --git a/src/apps/social/assets/images/navigation/timeline-inactive.svg b/development/social/app/assets/images/navigation/timeline-inactive.svg similarity index 100% rename from src/apps/social/assets/images/navigation/timeline-inactive.svg rename to development/social/app/assets/images/navigation/timeline-inactive.svg diff --git a/src/apps/social/assets/images/noresult.svg b/development/social/app/assets/images/noresult.svg similarity index 100% rename from src/apps/social/assets/images/noresult.svg rename to development/social/app/assets/images/noresult.svg diff --git a/src/apps/social/assets/images/portrait.svg b/development/social/app/assets/images/portrait.svg similarity index 100% rename from src/apps/social/assets/images/portrait.svg rename to development/social/app/assets/images/portrait.svg diff --git a/src/apps/social/app/App.tsx b/development/social/app/components/App.tsx similarity index 100% rename from src/apps/social/app/App.tsx rename to development/social/app/components/App.tsx diff --git a/src/apps/social/app/Routes.tsx b/development/social/app/components/Routes.tsx similarity index 100% rename from src/apps/social/app/Routes.tsx rename to development/social/app/components/Routes.tsx diff --git a/src/apps/social/app/account/Edit.tsx b/development/social/app/components/account/Edit.tsx similarity index 100% rename from src/apps/social/app/account/Edit.tsx rename to development/social/app/components/account/Edit.tsx diff --git a/src/apps/social/app/account/Main.tsx b/development/social/app/components/account/Main.tsx similarity index 82% rename from src/apps/social/app/account/Main.tsx rename to development/social/app/components/account/Main.tsx index 4a6a44e6..41dc751f 100644 --- a/src/apps/social/app/account/Main.tsx +++ b/development/social/app/components/account/Main.tsx @@ -5,8 +5,8 @@ import { Column, Ruler } from '@maskingtech/designsystem'; import type { AggregatedData as AggregatedCreatorData } from '^/domain/creator/aggregate'; -import { useAppContext } from '~/app/application'; -import { Profile } from '~/app/creator'; +import { useAppContext } from '~/components/application'; +import { Profile } from '~/components/creator'; export default function Feature() { diff --git a/src/apps/social/app/account/Routes.tsx b/development/social/app/components/account/Routes.tsx similarity index 83% rename from src/apps/social/app/account/Routes.tsx rename to development/social/app/components/account/Routes.tsx index 14fb3b2f..9c69c0a3 100644 --- a/src/apps/social/app/account/Routes.tsx +++ b/development/social/app/components/account/Routes.tsx @@ -1,7 +1,7 @@ import { Route } from 'react-router-dom'; -import { NotFound } from '~/app/common'; +import { NotFound } from '~/components/common'; import Main from './Main'; import Edit from './Edit'; diff --git a/src/apps/social/app/account/components/FullNameForm.tsx b/development/social/app/components/account/components/FullNameForm.tsx similarity index 95% rename from src/apps/social/app/account/components/FullNameForm.tsx rename to development/social/app/components/account/components/FullNameForm.tsx index ee013406..2f1dd1cf 100644 --- a/src/apps/social/app/account/components/FullNameForm.tsx +++ b/development/social/app/components/account/components/FullNameForm.tsx @@ -1,7 +1,7 @@ import { Input, Label, Panel, TextBox } from '@maskingtech/designsystem'; -import { Form } from '~/app/common'; +import { Form } from '~/components/common'; import type { SubmitHandler } from './hooks/useFullNameFormHandler'; import useFullNameFormHandler from './hooks/useFullNameFormHandler'; diff --git a/src/apps/social/app/account/components/NicknameForm.tsx b/development/social/app/components/account/components/NicknameForm.tsx similarity index 96% rename from src/apps/social/app/account/components/NicknameForm.tsx rename to development/social/app/components/account/components/NicknameForm.tsx index 2ffce43b..cb71f21f 100644 --- a/src/apps/social/app/account/components/NicknameForm.tsx +++ b/development/social/app/components/account/components/NicknameForm.tsx @@ -1,7 +1,7 @@ import { Input, Label, Panel, TextBox } from '@maskingtech/designsystem'; -import { Form } from '~/app/common'; +import { Form } from '~/components/common'; import type { SubmitHandler } from './hooks/useNicknameFormHandler'; import useNicknameFormHandler from './hooks/useNicknameFormHandler'; diff --git a/src/apps/social/app/account/components/hooks/useFullNameFormHandler.ts b/development/social/app/components/account/components/hooks/useFullNameFormHandler.ts similarity index 100% rename from src/apps/social/app/account/components/hooks/useFullNameFormHandler.ts rename to development/social/app/components/account/components/hooks/useFullNameFormHandler.ts diff --git a/src/apps/social/app/account/components/hooks/useNicknameFormHandler.ts b/development/social/app/components/account/components/hooks/useNicknameFormHandler.ts similarity index 100% rename from src/apps/social/app/account/components/hooks/useNicknameFormHandler.ts rename to development/social/app/components/account/components/hooks/useNicknameFormHandler.ts diff --git a/src/apps/social/app/account/hooks/useUpdateFullName.ts b/development/social/app/components/account/hooks/useUpdateFullName.ts similarity index 90% rename from src/apps/social/app/account/hooks/useUpdateFullName.ts rename to development/social/app/components/account/hooks/useUpdateFullName.ts index fccccc7b..9b30a96b 100644 --- a/src/apps/social/app/account/hooks/useUpdateFullName.ts +++ b/development/social/app/components/account/hooks/useUpdateFullName.ts @@ -5,7 +5,7 @@ import { requester } from '^/domain/authentication'; import type { AggregatedData as AggregatedCreatorData } from '^/domain/creator/aggregate'; import updateFullName from '^/domain/creator/updateFullName'; -import { useAppContext } from '~/app/application'; +import { useAppContext } from '~/components/application'; export default function useUpdateFullName() { diff --git a/src/apps/social/app/account/hooks/useUpdateNickname.ts b/development/social/app/components/account/hooks/useUpdateNickname.ts similarity index 90% rename from src/apps/social/app/account/hooks/useUpdateNickname.ts rename to development/social/app/components/account/hooks/useUpdateNickname.ts index 5c88070a..d5bdae9b 100644 --- a/src/apps/social/app/account/hooks/useUpdateNickname.ts +++ b/development/social/app/components/account/hooks/useUpdateNickname.ts @@ -5,9 +5,9 @@ import { requester } from '^/domain/authentication'; import type { AggregatedData as AggregatedCreatorData } from '^/domain/creator/aggregate'; import updateNickname from '^/domain/creator/updateNickname'; import NicknameAlreadyExists from '^/domain/creator/updateNickname/NicknameAlreadyExists'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; -import { useAppContext } from '~/app/application'; +import { useAppContext } from '~/components/application'; export default function useUpdateNickname() { diff --git a/src/apps/social/app/account/index.ts b/development/social/app/components/account/index.ts similarity index 100% rename from src/apps/social/app/account/index.ts rename to development/social/app/components/account/index.ts diff --git a/src/apps/social/app/application/ErrorHandler.tsx b/development/social/app/components/application/ErrorHandler.tsx similarity index 100% rename from src/apps/social/app/application/ErrorHandler.tsx rename to development/social/app/components/application/ErrorHandler.tsx diff --git a/src/apps/social/app/application/Home.tsx b/development/social/app/components/application/Home.tsx similarity index 100% rename from src/apps/social/app/application/Home.tsx rename to development/social/app/components/application/Home.tsx diff --git a/src/apps/social/app/application/Identify.tsx b/development/social/app/components/application/Identify.tsx similarity index 100% rename from src/apps/social/app/application/Identify.tsx rename to development/social/app/components/application/Identify.tsx diff --git a/src/apps/social/app/application/Login.tsx b/development/social/app/components/application/Login.tsx similarity index 100% rename from src/apps/social/app/application/Login.tsx rename to development/social/app/components/application/Login.tsx diff --git a/src/apps/social/app/application/Logout.tsx b/development/social/app/components/application/Logout.tsx similarity index 100% rename from src/apps/social/app/application/Logout.tsx rename to development/social/app/components/application/Logout.tsx diff --git a/src/apps/social/app/application/NotFound.tsx b/development/social/app/components/application/NotFound.tsx similarity index 100% rename from src/apps/social/app/application/NotFound.tsx rename to development/social/app/components/application/NotFound.tsx diff --git a/src/apps/social/app/application/Privacy.tsx b/development/social/app/components/application/Privacy.tsx similarity index 100% rename from src/apps/social/app/application/Privacy.tsx rename to development/social/app/components/application/Privacy.tsx diff --git a/src/apps/social/app/application/ProtectedRoute.tsx b/development/social/app/components/application/ProtectedRoute.tsx similarity index 100% rename from src/apps/social/app/application/ProtectedRoute.tsx rename to development/social/app/components/application/ProtectedRoute.tsx diff --git a/src/apps/social/app/application/Routes.tsx b/development/social/app/components/application/Routes.tsx similarity index 93% rename from src/apps/social/app/application/Routes.tsx rename to development/social/app/components/application/Routes.tsx index 1f2526b8..47719151 100644 --- a/src/apps/social/app/application/Routes.tsx +++ b/development/social/app/components/application/Routes.tsx @@ -1,7 +1,7 @@ import { Route } from 'react-router-dom'; -import { NotFound } from '~/app/common'; +import { NotFound } from '~/components/common'; import Home from './Home'; import Login from './Login'; diff --git a/src/apps/social/app/application/Terms.tsx b/development/social/app/components/application/Terms.tsx similarity index 100% rename from src/apps/social/app/application/Terms.tsx rename to development/social/app/components/application/Terms.tsx diff --git a/src/apps/social/app/application/components/Footer.tsx b/development/social/app/components/application/components/Footer.tsx similarity index 100% rename from src/apps/social/app/application/components/Footer.tsx rename to development/social/app/components/application/components/Footer.tsx diff --git a/src/apps/social/app/application/components/Header.tsx b/development/social/app/components/application/components/Header.tsx similarity index 91% rename from src/apps/social/app/application/components/Header.tsx rename to development/social/app/components/application/components/Header.tsx index 766084be..ad2afad3 100644 --- a/src/apps/social/app/application/components/Header.tsx +++ b/development/social/app/components/application/components/Header.tsx @@ -3,7 +3,7 @@ import { Row } from '@maskingtech/designsystem'; import type { AggregatedData as IdentityModel } from '^/domain/creator/aggregate'; -import { ConciseIdentity } from '~/app/creator'; +import { ConciseIdentity } from '~/components/creator'; import Logo from './Logo'; import LogoutButton from './LogoutButton'; diff --git a/src/apps/social/app/application/components/Identity.tsx b/development/social/app/components/application/components/Identity.tsx similarity index 90% rename from src/apps/social/app/application/components/Identity.tsx rename to development/social/app/components/application/components/Identity.tsx index 112de7f4..f29c6bca 100644 --- a/src/apps/social/app/application/components/Identity.tsx +++ b/development/social/app/components/application/components/Identity.tsx @@ -3,7 +3,7 @@ import { Row } from '@maskingtech/designsystem'; import type { AggregatedData as AggregatedCreatorData } from '^/domain/creator/aggregate'; -import { FullIdentity } from '~/app/creator'; +import { FullIdentity } from '~/components/creator'; import LogoutButton from './LogoutButton'; type Props = { diff --git a/src/apps/social/app/application/components/Introduction.tsx b/development/social/app/components/application/components/Introduction.tsx similarity index 100% rename from src/apps/social/app/application/components/Introduction.tsx rename to development/social/app/components/application/components/Introduction.tsx diff --git a/src/apps/social/app/application/components/LegalHeader.tsx b/development/social/app/components/application/components/LegalHeader.tsx similarity index 100% rename from src/apps/social/app/application/components/LegalHeader.tsx rename to development/social/app/components/application/components/LegalHeader.tsx diff --git a/src/apps/social/app/application/components/LegalInfo.tsx b/development/social/app/components/application/components/LegalInfo.tsx similarity index 100% rename from src/apps/social/app/application/components/LegalInfo.tsx rename to development/social/app/components/application/components/LegalInfo.tsx diff --git a/src/apps/social/app/application/components/Logo.tsx b/development/social/app/components/application/components/Logo.tsx similarity index 100% rename from src/apps/social/app/application/components/Logo.tsx rename to development/social/app/components/application/components/Logo.tsx diff --git a/src/apps/social/app/application/components/LogoutButton.tsx b/development/social/app/components/application/components/LogoutButton.tsx similarity index 100% rename from src/apps/social/app/application/components/LogoutButton.tsx rename to development/social/app/components/application/components/LogoutButton.tsx diff --git a/src/apps/social/app/application/components/LogoutPanel.tsx b/development/social/app/components/application/components/LogoutPanel.tsx similarity index 100% rename from src/apps/social/app/application/components/LogoutPanel.tsx rename to development/social/app/components/application/components/LogoutPanel.tsx diff --git a/src/apps/social/app/application/components/Menu.tsx b/development/social/app/components/application/components/Menu.tsx similarity index 97% rename from src/apps/social/app/application/components/Menu.tsx rename to development/social/app/components/application/components/Menu.tsx index 1d23a4a7..0f24b160 100644 --- a/src/apps/social/app/application/components/Menu.tsx +++ b/development/social/app/components/application/components/Menu.tsx @@ -14,7 +14,7 @@ import profileInactiveIcon from '~/assets/images/navigation/profile-inactive.svg import timelineActiveIcon from '~/assets/images/navigation/timeline-active.svg'; import timelineInactiveIcon from '~/assets/images/navigation/timeline-inactive.svg'; -import { Menu } from '~/app/common'; +import { Menu } from '~/components/common'; type Props = { readonly vertical: boolean; diff --git a/src/apps/social/app/application/components/Modal.tsx b/development/social/app/components/application/components/Modal.tsx similarity index 100% rename from src/apps/social/app/application/components/Modal.tsx rename to development/social/app/components/application/components/Modal.tsx diff --git a/src/apps/social/app/application/components/Sidebar.tsx b/development/social/app/components/application/components/Sidebar.tsx similarity index 100% rename from src/apps/social/app/application/components/Sidebar.tsx rename to development/social/app/components/application/components/Sidebar.tsx diff --git a/src/apps/social/app/application/contexts/AppContext.tsx b/development/social/app/components/application/contexts/AppContext.tsx similarity index 100% rename from src/apps/social/app/application/contexts/AppContext.tsx rename to development/social/app/components/application/contexts/AppContext.tsx diff --git a/src/apps/social/app/application/contexts/hooks/useAppContextValue.ts b/development/social/app/components/application/contexts/hooks/useAppContextValue.ts similarity index 100% rename from src/apps/social/app/application/contexts/hooks/useAppContextValue.ts rename to development/social/app/components/application/contexts/hooks/useAppContextValue.ts diff --git a/src/apps/social/app/application/hooks/useAppState.ts b/development/social/app/components/application/hooks/useAppState.ts similarity index 100% rename from src/apps/social/app/application/hooks/useAppState.ts rename to development/social/app/components/application/hooks/useAppState.ts diff --git a/src/apps/social/app/application/hooks/useIdentify.ts b/development/social/app/components/application/hooks/useIdentify.ts similarity index 94% rename from src/apps/social/app/application/hooks/useIdentify.ts rename to development/social/app/components/application/hooks/useIdentify.ts index a2d7d5be..2b58bafe 100644 --- a/src/apps/social/app/application/hooks/useIdentify.ts +++ b/development/social/app/components/application/hooks/useIdentify.ts @@ -5,7 +5,7 @@ import { useNavigate } from 'react-router-dom'; import { requester } from '^/domain/authentication'; import type { AggregatedData as IdentityModel } from '^/domain/creator/aggregate'; import getMe from '^/domain/creator/getMeAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; import { useAppContext } from '../contexts/AppContext'; diff --git a/src/apps/social/app/application/hooks/useLogin.ts b/development/social/app/components/application/hooks/useLogin.ts similarity index 100% rename from src/apps/social/app/application/hooks/useLogin.ts rename to development/social/app/components/application/hooks/useLogin.ts diff --git a/src/apps/social/app/application/hooks/useLogout.ts b/development/social/app/components/application/hooks/useLogout.ts similarity index 100% rename from src/apps/social/app/application/hooks/useLogout.ts rename to development/social/app/components/application/hooks/useLogout.ts diff --git a/src/apps/social/app/application/hooks/useNavigateHome.ts b/development/social/app/components/application/hooks/useNavigateHome.ts similarity index 100% rename from src/apps/social/app/application/hooks/useNavigateHome.ts rename to development/social/app/components/application/hooks/useNavigateHome.ts diff --git a/src/apps/social/app/application/hooks/useNavigateLogin.ts b/development/social/app/components/application/hooks/useNavigateLogin.ts similarity index 100% rename from src/apps/social/app/application/hooks/useNavigateLogin.ts rename to development/social/app/components/application/hooks/useNavigateLogin.ts diff --git a/src/apps/social/app/application/index.ts b/development/social/app/components/application/index.ts similarity index 100% rename from src/apps/social/app/application/index.ts rename to development/social/app/components/application/index.ts diff --git a/src/apps/social/app/application/layouts/Application.tsx b/development/social/app/components/application/layouts/Application.tsx similarity index 100% rename from src/apps/social/app/application/layouts/Application.tsx rename to development/social/app/components/application/layouts/Application.tsx diff --git a/src/apps/social/app/application/layouts/Guest.tsx b/development/social/app/components/application/layouts/Guest.tsx similarity index 100% rename from src/apps/social/app/application/layouts/Guest.tsx rename to development/social/app/components/application/layouts/Guest.tsx diff --git a/src/apps/social/app/application/layouts/Legal.tsx b/development/social/app/components/application/layouts/Legal.tsx similarity index 100% rename from src/apps/social/app/application/layouts/Legal.tsx rename to development/social/app/components/application/layouts/Legal.tsx diff --git a/src/apps/social/app/comic/components/Editor.tsx b/development/social/app/components/comic/components/Editor.tsx similarity index 100% rename from src/apps/social/app/comic/components/Editor.tsx rename to development/social/app/components/comic/components/Editor.tsx diff --git a/src/apps/social/app/comic/components/Image.tsx b/development/social/app/components/comic/components/Image.tsx similarity index 100% rename from src/apps/social/app/comic/components/Image.tsx rename to development/social/app/components/comic/components/Image.tsx diff --git a/src/apps/social/app/comic/components/hooks/useCreateHandler.ts b/development/social/app/components/comic/components/hooks/useCreateHandler.ts similarity index 100% rename from src/apps/social/app/comic/components/hooks/useCreateHandler.ts rename to development/social/app/components/comic/components/hooks/useCreateHandler.ts diff --git a/src/apps/social/app/comic/components/hooks/useEditor.ts b/development/social/app/components/comic/components/hooks/useEditor.ts similarity index 100% rename from src/apps/social/app/comic/components/hooks/useEditor.ts rename to development/social/app/components/comic/components/hooks/useEditor.ts diff --git a/src/apps/social/app/comic/index.ts b/development/social/app/components/comic/index.ts similarity index 100% rename from src/apps/social/app/comic/index.ts rename to development/social/app/components/comic/index.ts diff --git a/src/apps/social/app/comment/components/Comment.tsx b/development/social/app/components/comment/components/Comment.tsx similarity index 100% rename from src/apps/social/app/comment/components/Comment.tsx rename to development/social/app/components/comment/components/Comment.tsx diff --git a/src/apps/social/app/comment/components/Form.tsx b/development/social/app/components/comment/components/Form.tsx similarity index 100% rename from src/apps/social/app/comment/components/Form.tsx rename to development/social/app/components/comment/components/Form.tsx diff --git a/src/apps/social/app/comment/components/hooks/useCreateHandler.ts b/development/social/app/components/comment/components/hooks/useCreateHandler.ts similarity index 100% rename from src/apps/social/app/comment/components/hooks/useCreateHandler.ts rename to development/social/app/components/comment/components/hooks/useCreateHandler.ts diff --git a/src/apps/social/app/comment/index.ts b/development/social/app/components/comment/index.ts similarity index 100% rename from src/apps/social/app/comment/index.ts rename to development/social/app/components/comment/index.ts diff --git a/src/apps/social/app/common/components/BackButton.tsx b/development/social/app/components/common/components/BackButton.tsx similarity index 100% rename from src/apps/social/app/common/components/BackButton.tsx rename to development/social/app/components/common/components/BackButton.tsx diff --git a/src/apps/social/app/common/components/BackRow.tsx b/development/social/app/components/common/components/BackRow.tsx similarity index 100% rename from src/apps/social/app/common/components/BackRow.tsx rename to development/social/app/components/common/components/BackRow.tsx diff --git a/src/apps/social/app/common/components/CompactNumber.tsx b/development/social/app/components/common/components/CompactNumber.tsx similarity index 100% rename from src/apps/social/app/common/components/CompactNumber.tsx rename to development/social/app/components/common/components/CompactNumber.tsx diff --git a/src/apps/social/app/common/components/ConfirmationPanel.tsx b/development/social/app/components/common/components/ConfirmationPanel.tsx similarity index 100% rename from src/apps/social/app/common/components/ConfirmationPanel.tsx rename to development/social/app/components/common/components/ConfirmationPanel.tsx diff --git a/src/apps/social/app/common/components/EditButton.tsx b/development/social/app/components/common/components/EditButton.tsx similarity index 100% rename from src/apps/social/app/common/components/EditButton.tsx rename to development/social/app/components/common/components/EditButton.tsx diff --git a/src/apps/social/app/common/components/Form.tsx b/development/social/app/components/common/components/Form.tsx similarity index 100% rename from src/apps/social/app/common/components/Form.tsx rename to development/social/app/components/common/components/Form.tsx diff --git a/src/apps/social/app/common/components/LoadingAndResultContainer.tsx b/development/social/app/components/common/components/LoadingAndResultContainer.tsx similarity index 100% rename from src/apps/social/app/common/components/LoadingAndResultContainer.tsx rename to development/social/app/components/common/components/LoadingAndResultContainer.tsx diff --git a/src/apps/social/app/common/components/LoadingContainer.tsx b/development/social/app/components/common/components/LoadingContainer.tsx similarity index 100% rename from src/apps/social/app/common/components/LoadingContainer.tsx rename to development/social/app/components/common/components/LoadingContainer.tsx diff --git a/src/apps/social/app/common/components/Menu.tsx b/development/social/app/components/common/components/Menu.tsx similarity index 100% rename from src/apps/social/app/common/components/Menu.tsx rename to development/social/app/components/common/components/Menu.tsx diff --git a/src/apps/social/app/common/components/Modal.tsx b/development/social/app/components/common/components/Modal.tsx similarity index 100% rename from src/apps/social/app/common/components/Modal.tsx rename to development/social/app/components/common/components/Modal.tsx diff --git a/src/apps/social/app/common/components/NotFound.tsx b/development/social/app/components/common/components/NotFound.tsx similarity index 100% rename from src/apps/social/app/common/components/NotFound.tsx rename to development/social/app/components/common/components/NotFound.tsx diff --git a/src/apps/social/app/common/components/OrderAndAddRow.tsx b/development/social/app/components/common/components/OrderAndAddRow.tsx similarity index 100% rename from src/apps/social/app/common/components/OrderAndAddRow.tsx rename to development/social/app/components/common/components/OrderAndAddRow.tsx diff --git a/src/apps/social/app/common/components/OrderAndSearchRow.tsx b/development/social/app/components/common/components/OrderAndSearchRow.tsx similarity index 100% rename from src/apps/social/app/common/components/OrderAndSearchRow.tsx rename to development/social/app/components/common/components/OrderAndSearchRow.tsx diff --git a/src/apps/social/app/common/components/OrderRow.tsx b/development/social/app/components/common/components/OrderRow.tsx similarity index 100% rename from src/apps/social/app/common/components/OrderRow.tsx rename to development/social/app/components/common/components/OrderRow.tsx diff --git a/src/apps/social/app/common/components/PullToRefresh.tsx b/development/social/app/components/common/components/PullToRefresh.tsx similarity index 100% rename from src/apps/social/app/common/components/PullToRefresh.tsx rename to development/social/app/components/common/components/PullToRefresh.tsx diff --git a/src/apps/social/app/common/components/Quantifier.tsx b/development/social/app/components/common/components/Quantifier.tsx similarity index 100% rename from src/apps/social/app/common/components/Quantifier.tsx rename to development/social/app/components/common/components/Quantifier.tsx diff --git a/src/apps/social/app/common/components/RemoveOption.tsx b/development/social/app/components/common/components/RemoveOption.tsx similarity index 100% rename from src/apps/social/app/common/components/RemoveOption.tsx rename to development/social/app/components/common/components/RemoveOption.tsx diff --git a/src/apps/social/app/common/components/ResultContainer.tsx b/development/social/app/components/common/components/ResultContainer.tsx similarity index 100% rename from src/apps/social/app/common/components/ResultContainer.tsx rename to development/social/app/components/common/components/ResultContainer.tsx diff --git a/src/apps/social/app/common/components/ScrollLoader.tsx b/development/social/app/components/common/components/ScrollLoader.tsx similarity index 100% rename from src/apps/social/app/common/components/ScrollLoader.tsx rename to development/social/app/components/common/components/ScrollLoader.tsx diff --git a/src/apps/social/app/common/components/Tabs.tsx b/development/social/app/components/common/components/Tabs.tsx similarity index 100% rename from src/apps/social/app/common/components/Tabs.tsx rename to development/social/app/components/common/components/Tabs.tsx diff --git a/src/apps/social/app/common/components/TenantContainer.tsx b/development/social/app/components/common/components/TenantContainer.tsx similarity index 89% rename from src/apps/social/app/common/components/TenantContainer.tsx rename to development/social/app/components/common/components/TenantContainer.tsx index 4e54256f..9ef0a558 100644 --- a/src/apps/social/app/common/components/TenantContainer.tsx +++ b/development/social/app/components/common/components/TenantContainer.tsx @@ -17,7 +17,7 @@ export default function Component({ children }: Props) const link = document.createElement('link'); link.setAttribute('rel', 'stylesheet'); - link.setAttribute('href', `/assets/${tenant.id}.css`); + link.setAttribute('href', `/${tenant.id}.css`); document.head.appendChild(link); diff --git a/src/apps/social/app/common/components/TimeElapsed.tsx b/development/social/app/components/common/components/TimeElapsed.tsx similarity index 84% rename from src/apps/social/app/common/components/TimeElapsed.tsx rename to development/social/app/components/common/components/TimeElapsed.tsx index 880ee07f..3982922c 100644 --- a/src/apps/social/app/common/components/TimeElapsed.tsx +++ b/development/social/app/components/common/components/TimeElapsed.tsx @@ -1,7 +1,7 @@ import { Text } from '@maskingtech/designsystem'; -import { timeElapsed } from '^/integrations/utilities/dates'; +import { timeElapsed } from '@comify/common/integrations/utilities/dates'; type Props = { readonly date: string; diff --git a/src/apps/social/app/common/components/elements/LoadingIndicator.tsx b/development/social/app/components/common/components/elements/LoadingIndicator.tsx similarity index 100% rename from src/apps/social/app/common/components/elements/LoadingIndicator.tsx rename to development/social/app/components/common/components/elements/LoadingIndicator.tsx diff --git a/src/apps/social/app/common/components/elements/NoResult.tsx b/development/social/app/components/common/components/elements/NoResult.tsx similarity index 100% rename from src/apps/social/app/common/components/elements/NoResult.tsx rename to development/social/app/components/common/components/elements/NoResult.tsx diff --git a/src/apps/social/app/common/components/elements/OrderSelection.tsx b/development/social/app/components/common/components/elements/OrderSelection.tsx similarity index 100% rename from src/apps/social/app/common/components/elements/OrderSelection.tsx rename to development/social/app/components/common/components/elements/OrderSelection.tsx diff --git a/src/apps/social/app/common/components/hooks/useLoadOnScroll.ts b/development/social/app/components/common/components/hooks/useLoadOnScroll.ts similarity index 100% rename from src/apps/social/app/common/components/hooks/useLoadOnScroll.ts rename to development/social/app/components/common/components/hooks/useLoadOnScroll.ts diff --git a/src/apps/social/app/common/components/hooks/useRefreshOnPull.ts b/development/social/app/components/common/components/hooks/useRefreshOnPull.ts similarity index 100% rename from src/apps/social/app/common/components/hooks/useRefreshOnPull.ts rename to development/social/app/components/common/components/hooks/useRefreshOnPull.ts diff --git a/src/apps/social/app/common/components/hooks/useScrollContainer.ts b/development/social/app/components/common/components/hooks/useScrollContainer.ts similarity index 100% rename from src/apps/social/app/common/components/hooks/useScrollContainer.ts rename to development/social/app/components/common/components/hooks/useScrollContainer.ts diff --git a/src/apps/social/app/common/components/hooks/useTenant.ts b/development/social/app/components/common/components/hooks/useTenant.ts similarity index 67% rename from src/apps/social/app/common/components/hooks/useTenant.ts rename to development/social/app/components/common/components/hooks/useTenant.ts index 16c087d8..9e14a657 100644 --- a/src/apps/social/app/common/components/hooks/useTenant.ts +++ b/development/social/app/components/common/components/hooks/useTenant.ts @@ -3,8 +3,8 @@ import { useCallback } from 'react'; import { useLoadData } from '@maskingtech/react-toolkit'; -import { tenant } from '^/domain/tenant'; -import getByOriginConverted from '^/domain/tenant/getByOriginConverted'; +import { tenant } from '@comify/common/domain/tenant'; +import getByOriginConverted from '@comify/common/domain/tenant/getByOriginConverted'; export function useTenant() { diff --git a/src/apps/social/app/common/index.ts b/development/social/app/components/common/index.ts similarity index 100% rename from src/apps/social/app/common/index.ts rename to development/social/app/components/common/index.ts diff --git a/src/apps/social/app/creator/components/ConciseIdentity.tsx b/development/social/app/components/creator/components/ConciseIdentity.tsx similarity index 100% rename from src/apps/social/app/creator/components/ConciseIdentity.tsx rename to development/social/app/components/creator/components/ConciseIdentity.tsx diff --git a/src/apps/social/app/creator/components/Counters.tsx b/development/social/app/components/creator/components/Counters.tsx similarity index 100% rename from src/apps/social/app/creator/components/Counters.tsx rename to development/social/app/components/creator/components/Counters.tsx diff --git a/src/apps/social/app/creator/components/FullIdentity.tsx b/development/social/app/components/creator/components/FullIdentity.tsx similarity index 100% rename from src/apps/social/app/creator/components/FullIdentity.tsx rename to development/social/app/components/creator/components/FullIdentity.tsx diff --git a/src/apps/social/app/creator/components/Profile.tsx b/development/social/app/components/creator/components/Profile.tsx similarity index 100% rename from src/apps/social/app/creator/components/Profile.tsx rename to development/social/app/components/creator/components/Profile.tsx diff --git a/src/apps/social/app/creator/components/TimeElapsed.tsx b/development/social/app/components/creator/components/TimeElapsed.tsx similarity index 100% rename from src/apps/social/app/creator/components/TimeElapsed.tsx rename to development/social/app/components/creator/components/TimeElapsed.tsx diff --git a/src/apps/social/app/creator/components/elements/Avatar.tsx b/development/social/app/components/creator/components/elements/Avatar.tsx similarity index 100% rename from src/apps/social/app/creator/components/elements/Avatar.tsx rename to development/social/app/components/creator/components/elements/Avatar.tsx diff --git a/src/apps/social/app/creator/components/elements/AvatarRow.tsx b/development/social/app/components/creator/components/elements/AvatarRow.tsx similarity index 100% rename from src/apps/social/app/creator/components/elements/AvatarRow.tsx rename to development/social/app/components/creator/components/elements/AvatarRow.tsx diff --git a/src/apps/social/app/creator/components/elements/CountersColumn.tsx b/development/social/app/components/creator/components/elements/CountersColumn.tsx similarity index 100% rename from src/apps/social/app/creator/components/elements/CountersColumn.tsx rename to development/social/app/components/creator/components/elements/CountersColumn.tsx diff --git a/src/apps/social/app/creator/components/elements/CountersRow.tsx b/development/social/app/components/creator/components/elements/CountersRow.tsx similarity index 90% rename from src/apps/social/app/creator/components/elements/CountersRow.tsx rename to development/social/app/components/creator/components/elements/CountersRow.tsx index 9f4eafc3..f364adcb 100644 --- a/src/apps/social/app/creator/components/elements/CountersRow.tsx +++ b/development/social/app/components/creator/components/elements/CountersRow.tsx @@ -1,7 +1,7 @@ import { Row } from '@maskingtech/designsystem'; -import { Quantifier } from '~/app/common'; +import { Quantifier } from '~/components/common'; type Props = { readonly postCount: number; diff --git a/src/apps/social/app/creator/components/elements/JoinedColumn.tsx b/development/social/app/components/creator/components/elements/JoinedColumn.tsx similarity index 100% rename from src/apps/social/app/creator/components/elements/JoinedColumn.tsx rename to development/social/app/components/creator/components/elements/JoinedColumn.tsx diff --git a/src/apps/social/app/creator/components/elements/NamesColumn.tsx b/development/social/app/components/creator/components/elements/NamesColumn.tsx similarity index 100% rename from src/apps/social/app/creator/components/elements/NamesColumn.tsx rename to development/social/app/components/creator/components/elements/NamesColumn.tsx diff --git a/src/apps/social/app/creator/components/elements/NamesRow.tsx b/development/social/app/components/creator/components/elements/NamesRow.tsx similarity index 100% rename from src/apps/social/app/creator/components/elements/NamesRow.tsx rename to development/social/app/components/creator/components/elements/NamesRow.tsx diff --git a/src/apps/social/app/creator/components/elements/TimeElapsedColumn.tsx b/development/social/app/components/creator/components/elements/TimeElapsedColumn.tsx similarity index 90% rename from src/apps/social/app/creator/components/elements/TimeElapsedColumn.tsx rename to development/social/app/components/creator/components/elements/TimeElapsedColumn.tsx index 4963982b..e3c9cb41 100644 --- a/src/apps/social/app/creator/components/elements/TimeElapsedColumn.tsx +++ b/development/social/app/components/creator/components/elements/TimeElapsedColumn.tsx @@ -1,7 +1,7 @@ import { ClickArea, Column, Text } from '@maskingtech/designsystem'; -import { TimeElapsed } from '~/app/common'; +import { TimeElapsed } from '~/components/common'; type Props = { readonly fullName: string; diff --git a/src/apps/social/app/creator/index.ts b/development/social/app/components/creator/index.ts similarity index 100% rename from src/apps/social/app/creator/index.ts rename to development/social/app/components/creator/index.ts diff --git a/src/apps/social/app/editor/Editor.ts b/development/social/app/components/editor/Editor.ts similarity index 100% rename from src/apps/social/app/editor/Editor.ts rename to development/social/app/components/editor/Editor.ts diff --git a/src/apps/social/app/editor/Renderer.ts b/development/social/app/components/editor/Renderer.ts similarity index 100% rename from src/apps/social/app/editor/Renderer.ts rename to development/social/app/components/editor/Renderer.ts diff --git a/src/apps/social/app/editor/Workbench.ts b/development/social/app/components/editor/Workbench.ts similarity index 100% rename from src/apps/social/app/editor/Workbench.ts rename to development/social/app/components/editor/Workbench.ts diff --git a/src/apps/social/app/editor/assets/add-speech-bubble.png b/development/social/app/components/editor/assets/add-speech-bubble.png similarity index 100% rename from src/apps/social/app/editor/assets/add-speech-bubble.png rename to development/social/app/components/editor/assets/add-speech-bubble.png diff --git a/src/apps/social/app/editor/assets/delete.png b/development/social/app/components/editor/assets/delete.png similarity index 100% rename from src/apps/social/app/editor/assets/delete.png rename to development/social/app/components/editor/assets/delete.png diff --git a/src/apps/social/app/editor/assets/edit.png b/development/social/app/components/editor/assets/edit.png similarity index 100% rename from src/apps/social/app/editor/assets/edit.png rename to development/social/app/components/editor/assets/edit.png diff --git a/src/apps/social/app/editor/assets/instructions.png b/development/social/app/components/editor/assets/instructions.png similarity index 100% rename from src/apps/social/app/editor/assets/instructions.png rename to development/social/app/components/editor/assets/instructions.png diff --git a/src/apps/social/app/editor/assets/move.png b/development/social/app/components/editor/assets/move.png similarity index 100% rename from src/apps/social/app/editor/assets/move.png rename to development/social/app/components/editor/assets/move.png diff --git a/src/apps/social/app/editor/assets/resize.png b/development/social/app/components/editor/assets/resize.png similarity index 100% rename from src/apps/social/app/editor/assets/resize.png rename to development/social/app/components/editor/assets/resize.png diff --git a/src/apps/social/app/editor/assets/select-image.png b/development/social/app/components/editor/assets/select-image.png similarity index 100% rename from src/apps/social/app/editor/assets/select-image.png rename to development/social/app/components/editor/assets/select-image.png diff --git a/src/apps/social/app/editor/assets/take-picture.png b/development/social/app/components/editor/assets/take-picture.png similarity index 100% rename from src/apps/social/app/editor/assets/take-picture.png rename to development/social/app/components/editor/assets/take-picture.png diff --git a/src/apps/social/app/editor/definitions/Styling.ts b/development/social/app/components/editor/definitions/Styling.ts similarity index 100% rename from src/apps/social/app/editor/definitions/Styling.ts rename to development/social/app/components/editor/definitions/Styling.ts diff --git a/src/apps/social/app/editor/elements/Element.ts b/development/social/app/components/editor/elements/Element.ts similarity index 100% rename from src/apps/social/app/editor/elements/Element.ts rename to development/social/app/components/editor/elements/Element.ts diff --git a/src/apps/social/app/editor/elements/Group.ts b/development/social/app/components/editor/elements/Group.ts similarity index 100% rename from src/apps/social/app/editor/elements/Group.ts rename to development/social/app/components/editor/elements/Group.ts diff --git a/src/apps/social/app/editor/elements/ImageElement.ts b/development/social/app/components/editor/elements/ImageElement.ts similarity index 100% rename from src/apps/social/app/editor/elements/ImageElement.ts rename to development/social/app/components/editor/elements/ImageElement.ts diff --git a/src/apps/social/app/editor/index.ts b/development/social/app/components/editor/index.ts similarity index 100% rename from src/apps/social/app/editor/index.ts rename to development/social/app/components/editor/index.ts diff --git a/src/apps/social/app/editor/model/Background.ts b/development/social/app/components/editor/model/Background.ts similarity index 100% rename from src/apps/social/app/editor/model/Background.ts rename to development/social/app/components/editor/model/Background.ts diff --git a/src/apps/social/app/editor/model/Bubble.ts b/development/social/app/components/editor/model/Bubble.ts similarity index 100% rename from src/apps/social/app/editor/model/Bubble.ts rename to development/social/app/components/editor/model/Bubble.ts diff --git a/src/apps/social/app/editor/model/Model.ts b/development/social/app/components/editor/model/Model.ts similarity index 100% rename from src/apps/social/app/editor/model/Model.ts rename to development/social/app/components/editor/model/Model.ts diff --git a/src/apps/social/app/editor/model/SpeechBubble.ts b/development/social/app/components/editor/model/SpeechBubble.ts similarity index 100% rename from src/apps/social/app/editor/model/SpeechBubble.ts rename to development/social/app/components/editor/model/SpeechBubble.ts diff --git a/src/apps/social/app/editor/toolkit/BubbleSelection.ts b/development/social/app/components/editor/toolkit/BubbleSelection.ts similarity index 100% rename from src/apps/social/app/editor/toolkit/BubbleSelection.ts rename to development/social/app/components/editor/toolkit/BubbleSelection.ts diff --git a/src/apps/social/app/editor/toolkit/Button.ts b/development/social/app/components/editor/toolkit/Button.ts similarity index 100% rename from src/apps/social/app/editor/toolkit/Button.ts rename to development/social/app/components/editor/toolkit/Button.ts diff --git a/src/apps/social/app/editor/toolkit/MainActions.ts b/development/social/app/components/editor/toolkit/MainActions.ts similarity index 100% rename from src/apps/social/app/editor/toolkit/MainActions.ts rename to development/social/app/components/editor/toolkit/MainActions.ts diff --git a/src/apps/social/app/editor/utils/Camera.ts b/development/social/app/components/editor/utils/Camera.ts similarity index 100% rename from src/apps/social/app/editor/utils/Camera.ts rename to development/social/app/components/editor/utils/Camera.ts diff --git a/src/apps/social/app/editor/utils/CameraDialog.ts b/development/social/app/components/editor/utils/CameraDialog.ts similarity index 100% rename from src/apps/social/app/editor/utils/CameraDialog.ts rename to development/social/app/components/editor/utils/CameraDialog.ts diff --git a/src/apps/social/app/editor/utils/FileDialog.ts b/development/social/app/components/editor/utils/FileDialog.ts similarity index 100% rename from src/apps/social/app/editor/utils/FileDialog.ts rename to development/social/app/components/editor/utils/FileDialog.ts diff --git a/src/apps/social/app/editor/utils/Geometry.ts b/development/social/app/components/editor/utils/Geometry.ts similarity index 100% rename from src/apps/social/app/editor/utils/Geometry.ts rename to development/social/app/components/editor/utils/Geometry.ts diff --git a/src/apps/social/app/editor/utils/InputDialog.ts b/development/social/app/components/editor/utils/InputDialog.ts similarity index 100% rename from src/apps/social/app/editor/utils/InputDialog.ts rename to development/social/app/components/editor/utils/InputDialog.ts diff --git a/src/apps/social/app/editor/utils/InputManager.ts b/development/social/app/components/editor/utils/InputManager.ts similarity index 100% rename from src/apps/social/app/editor/utils/InputManager.ts rename to development/social/app/components/editor/utils/InputManager.ts diff --git a/src/apps/social/app/editor/utils/TextProcessor.ts b/development/social/app/components/editor/utils/TextProcessor.ts similarity index 100% rename from src/apps/social/app/editor/utils/TextProcessor.ts rename to development/social/app/components/editor/utils/TextProcessor.ts diff --git a/src/apps/social/app/explore/Creators.tsx b/development/social/app/components/explore/Creators.tsx similarity index 56% rename from src/apps/social/app/explore/Creators.tsx rename to development/social/app/components/explore/Creators.tsx index 121bfa40..183aa422 100644 --- a/src/apps/social/app/explore/Creators.tsx +++ b/development/social/app/components/explore/Creators.tsx @@ -1,5 +1,5 @@ -import { Explore } from '~/app/relation'; +import { Explore } from '~/components/relation'; export default function Feature() { diff --git a/src/apps/social/app/explore/Main.tsx b/development/social/app/components/explore/Main.tsx similarity index 85% rename from src/apps/social/app/explore/Main.tsx rename to development/social/app/components/explore/Main.tsx index 04f6bf88..6a58bb9e 100644 --- a/src/apps/social/app/explore/Main.tsx +++ b/development/social/app/components/explore/Main.tsx @@ -1,7 +1,7 @@ import { Outlet } from 'react-router-dom'; -import { Tabs } from '~/app/common'; +import { Tabs } from '~/components/common'; const tabItems = [ { title: 'Comics', route: 'comics' }, diff --git a/src/apps/social/app/explore/Posts.tsx b/development/social/app/components/explore/Posts.tsx similarity index 58% rename from src/apps/social/app/explore/Posts.tsx rename to development/social/app/components/explore/Posts.tsx index 6ae248b6..e3af0d5c 100644 --- a/src/apps/social/app/explore/Posts.tsx +++ b/development/social/app/components/explore/Posts.tsx @@ -1,5 +1,5 @@ -import { Explore } from '~/app/post'; +import { Explore } from '~/components/post'; export default function Feature() { diff --git a/src/apps/social/app/explore/Routes.tsx b/development/social/app/components/explore/Routes.tsx similarity index 89% rename from src/apps/social/app/explore/Routes.tsx rename to development/social/app/components/explore/Routes.tsx index 0d78ad96..cbad8a1c 100644 --- a/src/apps/social/app/explore/Routes.tsx +++ b/development/social/app/components/explore/Routes.tsx @@ -1,7 +1,7 @@ import { Route, Navigate } from 'react-router-dom'; -import { NotFound } from '~/app/common'; +import { NotFound } from '~/components/common'; import Main from './Main'; import Posts from './Posts'; diff --git a/src/apps/social/app/explore/index.ts b/development/social/app/components/explore/index.ts similarity index 100% rename from src/apps/social/app/explore/index.ts rename to development/social/app/components/explore/index.ts diff --git a/src/apps/social/app/main.css b/development/social/app/components/main.css similarity index 100% rename from src/apps/social/app/main.css rename to development/social/app/components/main.css diff --git a/src/apps/social/app/main.tsx b/development/social/app/components/main.tsx similarity index 100% rename from src/apps/social/app/main.tsx rename to development/social/app/components/main.tsx diff --git a/src/apps/social/app/notification/Main.tsx b/development/social/app/components/notification/Main.tsx similarity index 91% rename from src/apps/social/app/notification/Main.tsx rename to development/social/app/components/notification/Main.tsx index e24d69ff..a7c895ee 100644 --- a/src/apps/social/app/notification/Main.tsx +++ b/development/social/app/components/notification/Main.tsx @@ -3,9 +3,9 @@ import { Column } from '@maskingtech/designsystem'; import type { AggregatedData as AggregatedNotificationData } from '^/domain/notification/aggregate'; -import { PullToRefresh, ResultContainer, ScrollLoader } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; -import { useEstablish } from '~/app/relation'; +import { PullToRefresh, ResultContainer, ScrollLoader } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; +import { useEstablish } from '~/components/relation'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/notification/Routes.tsx b/development/social/app/components/notification/Routes.tsx similarity index 78% rename from src/apps/social/app/notification/Routes.tsx rename to development/social/app/components/notification/Routes.tsx index 3d08e651..88e65259 100644 --- a/src/apps/social/app/notification/Routes.tsx +++ b/development/social/app/components/notification/Routes.tsx @@ -1,7 +1,7 @@ import { Route } from 'react-router-dom'; -import { NotFound } from '~/app/common'; +import { NotFound } from '~/components/common'; import Main from './Main'; diff --git a/src/apps/social/app/notification/components/Panel.tsx b/development/social/app/components/notification/components/Panel.tsx similarity index 97% rename from src/apps/social/app/notification/components/Panel.tsx rename to development/social/app/components/notification/components/Panel.tsx index 89b3efe1..4ef8ae0d 100644 --- a/src/apps/social/app/notification/components/Panel.tsx +++ b/development/social/app/components/notification/components/Panel.tsx @@ -5,7 +5,7 @@ import { Types } from '^/domain/notification'; import type { AggregatedData as AggregatedNotificationData } from '^/domain/notification/aggregate'; import type { AggregatedData as AggregatedRelationData } from '^/domain/relation/aggregate'; -import { TimeElapsed } from '~/app/relation'; +import { TimeElapsed } from '~/components/relation'; import RatedPost from './elements/RatedPost'; import ReactedToPost from './elements/ReactedToPost'; diff --git a/src/apps/social/app/notification/components/PanelList.tsx b/development/social/app/components/notification/components/PanelList.tsx similarity index 100% rename from src/apps/social/app/notification/components/PanelList.tsx rename to development/social/app/components/notification/components/PanelList.tsx diff --git a/src/apps/social/app/notification/components/elements/Comic.tsx b/development/social/app/components/notification/components/elements/Comic.tsx similarity index 100% rename from src/apps/social/app/notification/components/elements/Comic.tsx rename to development/social/app/components/notification/components/elements/Comic.tsx diff --git a/src/apps/social/app/notification/components/elements/Comment.tsx b/development/social/app/components/notification/components/elements/Comment.tsx similarity index 100% rename from src/apps/social/app/notification/components/elements/Comment.tsx rename to development/social/app/components/notification/components/elements/Comment.tsx diff --git a/src/apps/social/app/notification/components/elements/RatedPost.tsx b/development/social/app/components/notification/components/elements/RatedPost.tsx similarity index 100% rename from src/apps/social/app/notification/components/elements/RatedPost.tsx rename to development/social/app/components/notification/components/elements/RatedPost.tsx diff --git a/src/apps/social/app/notification/components/elements/ReactedToPost.tsx b/development/social/app/components/notification/components/elements/ReactedToPost.tsx similarity index 100% rename from src/apps/social/app/notification/components/elements/ReactedToPost.tsx rename to development/social/app/components/notification/components/elements/ReactedToPost.tsx diff --git a/src/apps/social/app/notification/components/elements/StartedFollowing.tsx b/development/social/app/components/notification/components/elements/StartedFollowing.tsx similarity index 100% rename from src/apps/social/app/notification/components/elements/StartedFollowing.tsx rename to development/social/app/components/notification/components/elements/StartedFollowing.tsx diff --git a/src/apps/social/app/notification/hooks/useNotifications.ts b/development/social/app/components/notification/hooks/useNotifications.ts similarity index 90% rename from src/apps/social/app/notification/hooks/useNotifications.ts rename to development/social/app/components/notification/hooks/useNotifications.ts index 14c390d4..73ca7021 100644 --- a/src/apps/social/app/notification/hooks/useNotifications.ts +++ b/development/social/app/components/notification/hooks/useNotifications.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getRecentNotifications from '^/domain/notification/getRecentAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useNotifications() { diff --git a/src/apps/social/app/notification/hooks/useViewNotificationDetails.ts b/development/social/app/components/notification/hooks/useViewNotificationDetails.ts similarity index 100% rename from src/apps/social/app/notification/hooks/useViewNotificationDetails.ts rename to development/social/app/components/notification/hooks/useViewNotificationDetails.ts diff --git a/src/apps/social/app/notification/index.ts b/development/social/app/components/notification/index.ts similarity index 100% rename from src/apps/social/app/notification/index.ts rename to development/social/app/components/notification/index.ts diff --git a/src/apps/social/app/post/Create.tsx b/development/social/app/components/post/Create.tsx similarity index 80% rename from src/apps/social/app/post/Create.tsx rename to development/social/app/components/post/Create.tsx index b27a425c..e6653096 100644 --- a/src/apps/social/app/post/Create.tsx +++ b/development/social/app/components/post/Create.tsx @@ -1,5 +1,5 @@ -import { Editor } from '~/app/comic'; +import { Editor } from '~/components/comic'; import useAddComicPost from './hooks/useAddComicPost'; diff --git a/src/apps/social/app/post/Creator.tsx b/development/social/app/components/post/Creator.tsx similarity index 94% rename from src/apps/social/app/post/Creator.tsx rename to development/social/app/components/post/Creator.tsx index 7ffcb11e..5402c774 100644 --- a/src/apps/social/app/post/Creator.tsx +++ b/development/social/app/components/post/Creator.tsx @@ -1,8 +1,8 @@ import { Column } from '@maskingtech/designsystem'; -import { PullToRefresh, ResultContainer, ScrollLoader } from '~/app/common'; -import { useToggle } from '~/app/rating'; +import { PullToRefresh, ResultContainer, ScrollLoader } from '~/components/common'; +import { useToggle } from '~/components/rating'; import useCreatorPosts from './hooks/useCreatorPosts'; import useViewPostDetails from './hooks/useViewPostDetails'; diff --git a/src/apps/social/app/post/Details.tsx b/development/social/app/components/post/Details.tsx similarity index 88% rename from src/apps/social/app/post/Details.tsx rename to development/social/app/components/post/Details.tsx index 4b1f3749..5a04af7d 100644 --- a/src/apps/social/app/post/Details.tsx +++ b/development/social/app/components/post/Details.tsx @@ -5,10 +5,10 @@ import { Column, Ruler } from '@maskingtech/designsystem'; import type { AggregatedData as AggregatedPostData } from '^/domain/post/aggregate'; -import { BackRow, LoadingAndResultContainer } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; -import { useToggle } from '~/app/rating'; -import { useEstablish } from '~/app/relation'; +import { BackRow, LoadingAndResultContainer } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; +import { useToggle } from '~/components/rating'; +import { useEstablish } from '~/components/relation'; import DetailsPanel from './components/DetailsPanel'; diff --git a/src/apps/social/app/post/Explore.tsx b/development/social/app/components/post/Explore.tsx similarity index 89% rename from src/apps/social/app/post/Explore.tsx rename to development/social/app/components/post/Explore.tsx index 8be8c3db..72736cc2 100644 --- a/src/apps/social/app/post/Explore.tsx +++ b/development/social/app/components/post/Explore.tsx @@ -1,11 +1,11 @@ import { Column } from '@maskingtech/designsystem'; -import { PullToRefresh, ResultContainer, ScrollLoader, OrderRow } from '~/app/common'; +import { PullToRefresh, ResultContainer, ScrollLoader, OrderRow } from '~/components/common'; -import { useViewProfile } from '~/app/profile'; -import { useToggle } from '~/app/rating'; -import { useEstablish } from '~/app/relation'; +import { useViewProfile } from '~/components/profile'; +import { useToggle } from '~/components/rating'; +import { useEstablish } from '~/components/relation'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/post/Following.tsx b/development/social/app/components/post/Following.tsx similarity index 88% rename from src/apps/social/app/post/Following.tsx rename to development/social/app/components/post/Following.tsx index bc299632..d52e3d00 100644 --- a/src/apps/social/app/post/Following.tsx +++ b/development/social/app/components/post/Following.tsx @@ -1,10 +1,10 @@ import { Column } from '@maskingtech/designsystem'; -import { PullToRefresh, ResultContainer, ScrollLoader } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; -import { useToggle } from '~/app/rating'; -import { useEstablish } from '~/app/relation'; +import { PullToRefresh, ResultContainer, ScrollLoader } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; +import { useToggle } from '~/components/rating'; +import { useEstablish } from '~/components/relation'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/post/Highlight.tsx b/development/social/app/components/post/Highlight.tsx similarity index 88% rename from src/apps/social/app/post/Highlight.tsx rename to development/social/app/components/post/Highlight.tsx index a42c945c..f635aa4f 100644 --- a/src/apps/social/app/post/Highlight.tsx +++ b/development/social/app/components/post/Highlight.tsx @@ -5,11 +5,11 @@ import { Column, Ruler } from '@maskingtech/designsystem'; import type { AggregatedData as AggregatedPostData } from '^/domain/post/aggregate'; -import { LoadingAndResultContainer } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; -import { useToggle } from '~/app/rating'; -import { SingleReactionRow } from '~/app/reaction'; -import { useEstablish } from '~/app/relation'; +import { LoadingAndResultContainer } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; +import { useToggle } from '~/components/rating'; +import { SingleReactionRow } from '~/components/reaction'; +import { useEstablish } from '~/components/relation'; import DetailsPanel from './components/DetailsPanel'; import LargePanel from './components/LargePanel'; diff --git a/src/apps/social/app/post/Main.tsx b/development/social/app/components/post/Main.tsx similarity index 100% rename from src/apps/social/app/post/Main.tsx rename to development/social/app/components/post/Main.tsx diff --git a/src/apps/social/app/post/Reactions.tsx b/development/social/app/components/post/Reactions.tsx similarity index 90% rename from src/apps/social/app/post/Reactions.tsx rename to development/social/app/components/post/Reactions.tsx index 8da2d5b5..2594a9cf 100644 --- a/src/apps/social/app/post/Reactions.tsx +++ b/development/social/app/components/post/Reactions.tsx @@ -3,11 +3,11 @@ import { Column } from '@maskingtech/designsystem'; import type { AggregatedData as AggregatedPostData } from '^/domain/post/aggregate'; -import { PullToRefresh, ResultContainer, ScrollLoader, OrderAndAddRow } from '~/app/common'; +import { PullToRefresh, ResultContainer, ScrollLoader, OrderAndAddRow } from '~/components/common'; -import { useViewProfile } from '~/app/profile'; -import { useToggle } from '~/app/rating'; -import { useEstablish } from '~/app/relation'; +import { useViewProfile } from '~/components/profile'; +import { useToggle } from '~/components/rating'; +import { useEstablish } from '~/components/relation'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/post/Recommended.tsx b/development/social/app/components/post/Recommended.tsx similarity index 88% rename from src/apps/social/app/post/Recommended.tsx rename to development/social/app/components/post/Recommended.tsx index 68f9b502..fc192738 100644 --- a/src/apps/social/app/post/Recommended.tsx +++ b/development/social/app/components/post/Recommended.tsx @@ -1,10 +1,10 @@ import { Column } from '@maskingtech/designsystem'; -import { PullToRefresh, ResultContainer, ScrollLoader } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; -import { useToggle } from '~/app/rating'; -import { useEstablish } from '~/app/relation'; +import { PullToRefresh, ResultContainer, ScrollLoader } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; +import { useToggle } from '~/components/rating'; +import { useEstablish } from '~/components/relation'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/post/Remove.tsx b/development/social/app/components/post/Remove.tsx similarity index 88% rename from src/apps/social/app/post/Remove.tsx rename to development/social/app/components/post/Remove.tsx index 89046146..451a863d 100644 --- a/src/apps/social/app/post/Remove.tsx +++ b/development/social/app/components/post/Remove.tsx @@ -1,7 +1,7 @@ import { useNavigate, useParams } from 'react-router-dom'; -import { ConfirmationPanel, Modal } from '~/app/common'; +import { ConfirmationPanel, Modal } from '~/components/common'; import useRemove from './hooks/useRemovePost'; diff --git a/src/apps/social/app/post/Routes.tsx b/development/social/app/components/post/Routes.tsx similarity index 92% rename from src/apps/social/app/post/Routes.tsx rename to development/social/app/components/post/Routes.tsx index 440bc8c4..17101d4c 100644 --- a/src/apps/social/app/post/Routes.tsx +++ b/development/social/app/components/post/Routes.tsx @@ -1,7 +1,7 @@ import { Route } from 'react-router-dom'; -import reactionRoutes from '~/app/reaction'; +import reactionRoutes from '~/components/reaction'; import Main from './Main'; import Create from './Create'; diff --git a/src/apps/social/app/post/components/DetailsPanel.tsx b/development/social/app/components/post/components/DetailsPanel.tsx similarity index 90% rename from src/apps/social/app/post/components/DetailsPanel.tsx rename to development/social/app/components/post/components/DetailsPanel.tsx index 3a9c01ee..a9a76d0f 100644 --- a/src/apps/social/app/post/components/DetailsPanel.tsx +++ b/development/social/app/components/post/components/DetailsPanel.tsx @@ -4,10 +4,10 @@ import type { AggregatedData as AggregatedRelationData } from '^/domain/relation import { Column, Panel, Row } from '@maskingtech/designsystem'; -import { RemoveOption } from '~/app/common'; -import { Image as Comic } from '~/app/comic'; -import { Comment } from '~/app/comment'; -import { TimeElapsed } from '~/app/relation'; +import { RemoveOption } from '~/components/common'; +import { Image as Comic } from '~/components/comic'; +import { Comment } from '~/components/comment'; +import { TimeElapsed } from '~/components/relation'; import EngagementRow from './elements/EngagementRow'; diff --git a/src/apps/social/app/post/components/LargePanel.tsx b/development/social/app/components/post/components/LargePanel.tsx similarity index 91% rename from src/apps/social/app/post/components/LargePanel.tsx rename to development/social/app/components/post/components/LargePanel.tsx index 10a49878..f12cb719 100644 --- a/src/apps/social/app/post/components/LargePanel.tsx +++ b/development/social/app/components/post/components/LargePanel.tsx @@ -4,9 +4,9 @@ import type { AggregatedData as AggregatedRelationData } from '^/domain/relation import { ClickArea, Column, Panel } from '@maskingtech/designsystem'; -import { Image as Comic } from '~/app/comic'; -import { Comment } from '~/app/comment'; -import { TimeElapsed } from '~/app/relation'; +import { Image as Comic } from '~/components/comic'; +import { Comment } from '~/components/comment'; +import { TimeElapsed } from '~/components/relation'; import EngagementsRow from './elements/EngagementRow'; diff --git a/src/apps/social/app/post/components/PanelGrid.tsx b/development/social/app/components/post/components/PanelGrid.tsx similarity index 100% rename from src/apps/social/app/post/components/PanelGrid.tsx rename to development/social/app/components/post/components/PanelGrid.tsx diff --git a/src/apps/social/app/post/components/PanelList.tsx b/development/social/app/components/post/components/PanelList.tsx similarity index 100% rename from src/apps/social/app/post/components/PanelList.tsx rename to development/social/app/components/post/components/PanelList.tsx diff --git a/src/apps/social/app/post/components/SmallPanel.tsx b/development/social/app/components/post/components/SmallPanel.tsx similarity index 89% rename from src/apps/social/app/post/components/SmallPanel.tsx rename to development/social/app/components/post/components/SmallPanel.tsx index 0db750e9..86cdb9cb 100644 --- a/src/apps/social/app/post/components/SmallPanel.tsx +++ b/development/social/app/components/post/components/SmallPanel.tsx @@ -3,9 +3,9 @@ import type { AggregatedData as AggregatedPostData } from '^/domain/post/aggrega import { ClickArea, Column, Panel, Row } from '@maskingtech/designsystem'; -import { TimeElapsed } from '~/app/common'; -import { Image as Comic } from '~/app/comic'; -import { Comment } from '~/app/comment'; +import { TimeElapsed } from '~/components/common'; +import { Image as Comic } from '~/components/comic'; +import { Comment } from '~/components/comment'; import EngagementsRow from './elements/EngagementRow'; diff --git a/src/apps/social/app/post/components/elements/EngagementRow.tsx b/development/social/app/components/post/components/elements/EngagementRow.tsx similarity index 81% rename from src/apps/social/app/post/components/elements/EngagementRow.tsx rename to development/social/app/components/post/components/elements/EngagementRow.tsx index 4ce50827..ae45ce22 100644 --- a/src/apps/social/app/post/components/elements/EngagementRow.tsx +++ b/development/social/app/components/post/components/elements/EngagementRow.tsx @@ -1,8 +1,8 @@ import { Row } from '@maskingtech/designsystem'; -import { Engagement as RatingEngagement } from '~/app/rating'; -import { Engagement as ReactionEngagement } from '~/app/reaction'; +import { Engagement as RatingEngagement } from '~/components/rating'; +import { Engagement as ReactionEngagement } from '~/components/reaction'; type Props = { readonly isRated: boolean; diff --git a/src/apps/social/app/post/hooks/useAddComicPost.ts b/development/social/app/components/post/hooks/useAddComicPost.ts similarity index 82% rename from src/apps/social/app/post/hooks/useAddComicPost.ts rename to development/social/app/components/post/hooks/useAddComicPost.ts index ac4a21b9..1af22460 100644 --- a/src/apps/social/app/post/hooks/useAddComicPost.ts +++ b/development/social/app/components/post/hooks/useAddComicPost.ts @@ -4,9 +4,9 @@ import { useNavigate } from 'react-router-dom'; import { requester } from '^/domain/authentication'; import createPostWithComic from '^/domain/post/createWithComic'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; -import { useAppContext } from '~/app/application'; +import { useAppContext } from '~/components/application'; export default function useAddComicPost() { diff --git a/src/apps/social/app/post/hooks/useConfirmPostRemoval.ts b/development/social/app/components/post/hooks/useConfirmPostRemoval.ts similarity index 100% rename from src/apps/social/app/post/hooks/useConfirmPostRemoval.ts rename to development/social/app/components/post/hooks/useConfirmPostRemoval.ts diff --git a/src/apps/social/app/post/hooks/useCreatorPosts.ts b/development/social/app/components/post/hooks/useCreatorPosts.ts similarity index 90% rename from src/apps/social/app/post/hooks/useCreatorPosts.ts rename to development/social/app/components/post/hooks/useCreatorPosts.ts index e4f15277..b3535339 100644 --- a/src/apps/social/app/post/hooks/useCreatorPosts.ts +++ b/development/social/app/components/post/hooks/useCreatorPosts.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getCreatorPosts from '^/domain/post/getByCreatorAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useCreatorPosts(creatorId: string) { diff --git a/src/apps/social/app/post/hooks/useExplorePosts.ts b/development/social/app/components/post/hooks/useExplorePosts.ts similarity index 89% rename from src/apps/social/app/post/hooks/useExplorePosts.ts rename to development/social/app/components/post/hooks/useExplorePosts.ts index 002150dc..055e79e9 100644 --- a/src/apps/social/app/post/hooks/useExplorePosts.ts +++ b/development/social/app/components/post/hooks/useExplorePosts.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import explorePosts from '^/domain/post/exploreAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useExplorePosts() { diff --git a/src/apps/social/app/post/hooks/useGoToParentPost.ts b/development/social/app/components/post/hooks/useGoToParentPost.ts similarity index 100% rename from src/apps/social/app/post/hooks/useGoToParentPost.ts rename to development/social/app/components/post/hooks/useGoToParentPost.ts diff --git a/src/apps/social/app/post/hooks/useHighlight.ts b/development/social/app/components/post/hooks/useHighlight.ts similarity index 91% rename from src/apps/social/app/post/hooks/useHighlight.ts rename to development/social/app/components/post/hooks/useHighlight.ts index f06bfaea..84b2ba19 100644 --- a/src/apps/social/app/post/hooks/useHighlight.ts +++ b/development/social/app/components/post/hooks/useHighlight.ts @@ -6,7 +6,7 @@ import { useLoadData } from '@maskingtech/react-toolkit'; import requester from '^/domain/authentication/requester'; import get from '^/domain/post/getByIdAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useReaction() { diff --git a/src/apps/social/app/post/hooks/usePost.ts b/development/social/app/components/post/hooks/usePost.ts similarity index 90% rename from src/apps/social/app/post/hooks/usePost.ts rename to development/social/app/components/post/hooks/usePost.ts index acdddbe6..d6d4288c 100644 --- a/src/apps/social/app/post/hooks/usePost.ts +++ b/development/social/app/components/post/hooks/usePost.ts @@ -6,7 +6,7 @@ import { useLoadData } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import get from '^/domain/post/getByIdAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function usePost() { diff --git a/src/apps/social/app/post/hooks/usePostsFollowing.ts b/development/social/app/components/post/hooks/usePostsFollowing.ts similarity index 89% rename from src/apps/social/app/post/hooks/usePostsFollowing.ts rename to development/social/app/components/post/hooks/usePostsFollowing.ts index ebe8a4b7..c67a75cb 100644 --- a/src/apps/social/app/post/hooks/usePostsFollowing.ts +++ b/development/social/app/components/post/hooks/usePostsFollowing.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getPostsFollowing from '^/domain/post/getByFollowingAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function usePostsFollowing() { diff --git a/src/apps/social/app/post/hooks/usePostsRecommended.ts b/development/social/app/components/post/hooks/usePostsRecommended.ts similarity index 90% rename from src/apps/social/app/post/hooks/usePostsRecommended.ts rename to development/social/app/components/post/hooks/usePostsRecommended.ts index fffaf3f0..dcfd1452 100644 --- a/src/apps/social/app/post/hooks/usePostsRecommended.ts +++ b/development/social/app/components/post/hooks/usePostsRecommended.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getPostsRecommended from '^/domain/post/getRecommendedAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function usePostsRecommended() { diff --git a/src/apps/social/app/post/hooks/useReactions.ts b/development/social/app/components/post/hooks/useReactions.ts similarity index 91% rename from src/apps/social/app/post/hooks/useReactions.ts rename to development/social/app/components/post/hooks/useReactions.ts index d711dae6..38d8073b 100644 --- a/src/apps/social/app/post/hooks/useReactions.ts +++ b/development/social/app/components/post/hooks/useReactions.ts @@ -6,7 +6,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import type { AggregatedData as AggregatedPostData } from '^/domain/post/aggregate'; import getReactionsByPost from '^/domain/post/getByParentAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useReactions(post: AggregatedPostData) { diff --git a/src/apps/social/app/post/hooks/useRemovePost.ts b/development/social/app/components/post/hooks/useRemovePost.ts similarity index 82% rename from src/apps/social/app/post/hooks/useRemovePost.ts rename to development/social/app/components/post/hooks/useRemovePost.ts index 3eb4c500..f2ee6314 100644 --- a/src/apps/social/app/post/hooks/useRemovePost.ts +++ b/development/social/app/components/post/hooks/useRemovePost.ts @@ -2,11 +2,11 @@ import { useCallback } from 'react'; import { useNavigate } from 'react-router-dom'; -import { useAppContext } from '~/app/application'; +import { useAppContext } from '~/components/application'; import { requester } from '^/domain/authentication'; import remove from '^/domain/post/remove'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useRemovePost(id?: string) { diff --git a/src/apps/social/app/post/hooks/useReorderList.ts b/development/social/app/components/post/hooks/useReorderList.ts similarity index 100% rename from src/apps/social/app/post/hooks/useReorderList.ts rename to development/social/app/components/post/hooks/useReorderList.ts diff --git a/src/apps/social/app/post/hooks/useShowCreateReaction.ts b/development/social/app/components/post/hooks/useShowCreateReaction.ts similarity index 100% rename from src/apps/social/app/post/hooks/useShowCreateReaction.ts rename to development/social/app/components/post/hooks/useShowCreateReaction.ts diff --git a/src/apps/social/app/post/hooks/useViewPostDetails.ts b/development/social/app/components/post/hooks/useViewPostDetails.ts similarity index 100% rename from src/apps/social/app/post/hooks/useViewPostDetails.ts rename to development/social/app/components/post/hooks/useViewPostDetails.ts diff --git a/src/apps/social/app/post/hooks/useViewPostHighlightDetails.ts b/development/social/app/components/post/hooks/useViewPostHighlightDetails.ts similarity index 100% rename from src/apps/social/app/post/hooks/useViewPostHighlightDetails.ts rename to development/social/app/components/post/hooks/useViewPostHighlightDetails.ts diff --git a/src/apps/social/app/post/index.ts b/development/social/app/components/post/index.ts similarity index 100% rename from src/apps/social/app/post/index.ts rename to development/social/app/components/post/index.ts diff --git a/src/apps/social/app/profile/Comics.tsx b/development/social/app/components/profile/Comics.tsx similarity index 84% rename from src/apps/social/app/profile/Comics.tsx rename to development/social/app/components/profile/Comics.tsx index 8cbaee07..4bbcb131 100644 --- a/src/apps/social/app/profile/Comics.tsx +++ b/development/social/app/components/profile/Comics.tsx @@ -1,7 +1,7 @@ import { useOutletContext } from 'react-router-dom'; -import { Creator } from '~/app/post'; +import { Creator } from '~/components/post'; type Props = { readonly creatorId: string; diff --git a/src/apps/social/app/profile/Followers.tsx b/development/social/app/components/profile/Followers.tsx similarity index 82% rename from src/apps/social/app/profile/Followers.tsx rename to development/social/app/components/profile/Followers.tsx index e4fff87d..edac690e 100644 --- a/src/apps/social/app/profile/Followers.tsx +++ b/development/social/app/components/profile/Followers.tsx @@ -1,7 +1,7 @@ import { useOutletContext } from 'react-router-dom'; -import { Followers } from '~/app/relation'; +import { Followers } from '~/components/relation'; type Props = { readonly creatorId?: string; diff --git a/src/apps/social/app/profile/Following.tsx b/development/social/app/components/profile/Following.tsx similarity index 82% rename from src/apps/social/app/profile/Following.tsx rename to development/social/app/components/profile/Following.tsx index 73faf4a6..633e90c2 100644 --- a/src/apps/social/app/profile/Following.tsx +++ b/development/social/app/components/profile/Following.tsx @@ -1,7 +1,7 @@ import { useOutletContext } from 'react-router-dom'; -import { Following } from '~/app/relation'; +import { Following } from '~/components/relation'; type Props = { readonly creatorId?: string; diff --git a/src/apps/social/app/profile/Main.tsx b/development/social/app/components/profile/Main.tsx similarity index 89% rename from src/apps/social/app/profile/Main.tsx rename to development/social/app/components/profile/Main.tsx index 13b8a829..00c977f4 100644 --- a/src/apps/social/app/profile/Main.tsx +++ b/development/social/app/components/profile/Main.tsx @@ -4,8 +4,8 @@ import { useParams, Outlet } from 'react-router-dom'; import { Column } from '@maskingtech/designsystem'; -import { Tabs, LoadingAndResultContainer } from '~/app/common'; -import { Profile } from '~/app/relation'; +import { Tabs, LoadingAndResultContainer } from '~/components/common'; +import { Profile } from '~/components/relation'; import useProfile from './hooks/useProfile'; import useEditProfile from './hooks/useEditProfile'; diff --git a/src/apps/social/app/profile/Routes.tsx b/development/social/app/components/profile/Routes.tsx similarity index 91% rename from src/apps/social/app/profile/Routes.tsx rename to development/social/app/components/profile/Routes.tsx index fcd363bc..5ed6a4d1 100644 --- a/src/apps/social/app/profile/Routes.tsx +++ b/development/social/app/components/profile/Routes.tsx @@ -1,7 +1,7 @@ import { Route, Navigate } from 'react-router-dom'; -import { NotFound } from '~/app/common'; +import { NotFound } from '~/components/common'; import Main from './Main'; import Comics from './Comics'; diff --git a/src/apps/social/app/profile/hooks/useEditProfile.ts b/development/social/app/components/profile/hooks/useEditProfile.ts similarity index 100% rename from src/apps/social/app/profile/hooks/useEditProfile.ts rename to development/social/app/components/profile/hooks/useEditProfile.ts diff --git a/src/apps/social/app/profile/hooks/useProfile.ts b/development/social/app/components/profile/hooks/useProfile.ts similarity index 90% rename from src/apps/social/app/profile/hooks/useProfile.ts rename to development/social/app/components/profile/hooks/useProfile.ts index ec424cf5..a7372330 100644 --- a/src/apps/social/app/profile/hooks/useProfile.ts +++ b/development/social/app/components/profile/hooks/useProfile.ts @@ -5,7 +5,7 @@ import { useLoadData } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getCreatorByNickname from '^/domain/creator/getByNicknameAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useProfile(nickname?: string) { diff --git a/src/apps/social/app/profile/hooks/useViewProfile.ts b/development/social/app/components/profile/hooks/useViewProfile.ts similarity index 100% rename from src/apps/social/app/profile/hooks/useViewProfile.ts rename to development/social/app/components/profile/hooks/useViewProfile.ts diff --git a/src/apps/social/app/profile/index.ts b/development/social/app/components/profile/index.ts similarity index 100% rename from src/apps/social/app/profile/index.ts rename to development/social/app/components/profile/index.ts diff --git a/src/apps/social/app/rating/components/Engagement.tsx b/development/social/app/components/rating/components/Engagement.tsx similarity index 93% rename from src/apps/social/app/rating/components/Engagement.tsx rename to development/social/app/components/rating/components/Engagement.tsx index 197232b1..b8316591 100644 --- a/src/apps/social/app/rating/components/Engagement.tsx +++ b/development/social/app/components/rating/components/Engagement.tsx @@ -1,7 +1,7 @@ import { ClickArea, Row } from '@maskingtech/designsystem'; -import { CompactNumber } from '~/app/common'; +import { CompactNumber } from '~/components/common'; import Icon from './elements/Icon'; import type { EngageHandler } from './hooks/useEngagement'; diff --git a/src/apps/social/app/rating/components/elements/Icon.tsx b/development/social/app/components/rating/components/elements/Icon.tsx similarity index 100% rename from src/apps/social/app/rating/components/elements/Icon.tsx rename to development/social/app/components/rating/components/elements/Icon.tsx diff --git a/src/apps/social/app/rating/components/hooks/useEngagement.ts b/development/social/app/components/rating/components/hooks/useEngagement.ts similarity index 100% rename from src/apps/social/app/rating/components/hooks/useEngagement.ts rename to development/social/app/components/rating/components/hooks/useEngagement.ts diff --git a/src/apps/social/app/rating/hooks/useTogglePostRating.ts b/development/social/app/components/rating/hooks/useTogglePostRating.ts similarity index 88% rename from src/apps/social/app/rating/hooks/useTogglePostRating.ts rename to development/social/app/components/rating/hooks/useTogglePostRating.ts index 13ba8ed1..07f0f066 100644 --- a/src/apps/social/app/rating/hooks/useTogglePostRating.ts +++ b/development/social/app/components/rating/hooks/useTogglePostRating.ts @@ -4,7 +4,7 @@ import { useCallback } from 'react'; import { requester } from '^/domain/authentication'; import type { AggregatedData as AggregatedPostData } from '^/domain/post/aggregate'; import toggleRating from '^/domain/rating/toggle'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useTogglePostRating() { diff --git a/src/apps/social/app/rating/index.ts b/development/social/app/components/rating/index.ts similarity index 100% rename from src/apps/social/app/rating/index.ts rename to development/social/app/components/rating/index.ts diff --git a/src/apps/social/app/reaction/Create.tsx b/development/social/app/components/reaction/Create.tsx similarity index 92% rename from src/apps/social/app/reaction/Create.tsx rename to development/social/app/components/reaction/Create.tsx index 2985d55e..6b10c48e 100644 --- a/src/apps/social/app/reaction/Create.tsx +++ b/development/social/app/components/reaction/Create.tsx @@ -1,7 +1,7 @@ import { useParams, Outlet } from 'react-router-dom'; -import { Modal, Tabs } from '~/app/common'; +import { Modal, Tabs } from '~/components/common'; import useViewPost from './hooks/useViewPost'; import useViewReaction from './hooks/useViewReaction'; diff --git a/src/apps/social/app/reaction/CreateComic.tsx b/development/social/app/components/reaction/CreateComic.tsx similarity index 91% rename from src/apps/social/app/reaction/CreateComic.tsx rename to development/social/app/components/reaction/CreateComic.tsx index 01951503..f75aab5b 100644 --- a/src/apps/social/app/reaction/CreateComic.tsx +++ b/development/social/app/components/reaction/CreateComic.tsx @@ -1,7 +1,7 @@ import { useOutletContext } from 'react-router-dom'; -import { Editor } from '~/app/comic'; +import { Editor } from '~/components/comic'; import useCreateComic from './hooks/useCreateComic'; diff --git a/src/apps/social/app/reaction/CreateComment.tsx b/development/social/app/components/reaction/CreateComment.tsx similarity index 92% rename from src/apps/social/app/reaction/CreateComment.tsx rename to development/social/app/components/reaction/CreateComment.tsx index b0998d14..1d839580 100644 --- a/src/apps/social/app/reaction/CreateComment.tsx +++ b/development/social/app/components/reaction/CreateComment.tsx @@ -1,7 +1,7 @@ import { useOutletContext } from 'react-router-dom'; -import { Form } from '~/app/comment'; +import { Form } from '~/components/comment'; import useCreateComment from './hooks/useCreateComment'; diff --git a/src/apps/social/app/reaction/Routes.tsx b/development/social/app/components/reaction/Routes.tsx similarity index 100% rename from src/apps/social/app/reaction/Routes.tsx rename to development/social/app/components/reaction/Routes.tsx diff --git a/src/apps/social/app/reaction/components/Engagement.tsx b/development/social/app/components/reaction/components/Engagement.tsx similarity index 89% rename from src/apps/social/app/reaction/components/Engagement.tsx rename to development/social/app/components/reaction/components/Engagement.tsx index 3a15b60f..f03ffba1 100644 --- a/src/apps/social/app/reaction/components/Engagement.tsx +++ b/development/social/app/components/reaction/components/Engagement.tsx @@ -1,7 +1,7 @@ import { ClickArea, Row } from '@maskingtech/designsystem'; -import { CompactNumber } from '~/app/common'; +import { CompactNumber } from '~/components/common'; import Icon from './elements/Icon'; diff --git a/src/apps/social/app/reaction/components/SingleReactionRow.tsx b/development/social/app/components/reaction/components/SingleReactionRow.tsx similarity index 100% rename from src/apps/social/app/reaction/components/SingleReactionRow.tsx rename to development/social/app/components/reaction/components/SingleReactionRow.tsx diff --git a/src/apps/social/app/reaction/components/elements/Icon.tsx b/development/social/app/components/reaction/components/elements/Icon.tsx similarity index 100% rename from src/apps/social/app/reaction/components/elements/Icon.tsx rename to development/social/app/components/reaction/components/elements/Icon.tsx diff --git a/src/apps/social/app/reaction/hooks/useCreateComic.ts b/development/social/app/components/reaction/hooks/useCreateComic.ts similarity index 89% rename from src/apps/social/app/reaction/hooks/useCreateComic.ts rename to development/social/app/components/reaction/hooks/useCreateComic.ts index bb8e72c0..e8ad3eb6 100644 --- a/src/apps/social/app/reaction/hooks/useCreateComic.ts +++ b/development/social/app/components/reaction/hooks/useCreateComic.ts @@ -3,7 +3,7 @@ import { useCallback } from 'react'; import { requester } from '^/domain/authentication'; import createComicReaction from '^/domain/post/createWithComic'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useCreateComic(postId: string, onCreated: (reactionId: string) => void) { diff --git a/src/apps/social/app/reaction/hooks/useCreateComment.ts b/development/social/app/components/reaction/hooks/useCreateComment.ts similarity index 89% rename from src/apps/social/app/reaction/hooks/useCreateComment.ts rename to development/social/app/components/reaction/hooks/useCreateComment.ts index 6962f55e..23bdc4eb 100644 --- a/src/apps/social/app/reaction/hooks/useCreateComment.ts +++ b/development/social/app/components/reaction/hooks/useCreateComment.ts @@ -3,7 +3,7 @@ import { useCallback } from 'react'; import { requester } from '^/domain/authentication'; import createCommentReaction from '^/domain/post/createWithComment'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useCreateComment(postId: string, onCreated: (reactionId: string) => void) { diff --git a/src/apps/social/app/reaction/hooks/useViewPost.tsx b/development/social/app/components/reaction/hooks/useViewPost.tsx similarity index 100% rename from src/apps/social/app/reaction/hooks/useViewPost.tsx rename to development/social/app/components/reaction/hooks/useViewPost.tsx diff --git a/src/apps/social/app/reaction/hooks/useViewReaction.tsx b/development/social/app/components/reaction/hooks/useViewReaction.tsx similarity index 100% rename from src/apps/social/app/reaction/hooks/useViewReaction.tsx rename to development/social/app/components/reaction/hooks/useViewReaction.tsx diff --git a/src/apps/social/app/reaction/index.ts b/development/social/app/components/reaction/index.ts similarity index 100% rename from src/apps/social/app/reaction/index.ts rename to development/social/app/components/reaction/index.ts diff --git a/src/apps/social/app/relation/Explore.tsx b/development/social/app/components/relation/Explore.tsx similarity index 94% rename from src/apps/social/app/relation/Explore.tsx rename to development/social/app/components/relation/Explore.tsx index b8f364da..b5027fd6 100644 --- a/src/apps/social/app/relation/Explore.tsx +++ b/development/social/app/components/relation/Explore.tsx @@ -3,8 +3,8 @@ import { Column } from '@maskingtech/designsystem'; import type { AggregatedData as AggregatedRelationData } from '^/domain/relation/aggregate'; -import { OrderAndSearchRow, PullToRefresh, ResultContainer, ScrollLoader } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; +import { OrderAndSearchRow, PullToRefresh, ResultContainer, ScrollLoader } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/relation/Followers.tsx b/development/social/app/components/relation/Followers.tsx similarity index 94% rename from src/apps/social/app/relation/Followers.tsx rename to development/social/app/components/relation/Followers.tsx index 89849a13..55f9af4e 100644 --- a/src/apps/social/app/relation/Followers.tsx +++ b/development/social/app/components/relation/Followers.tsx @@ -1,8 +1,8 @@ import { Column } from '@maskingtech/designsystem'; -import { OrderAndSearchRow, PullToRefresh, ResultContainer, ScrollLoader } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; +import { OrderAndSearchRow, PullToRefresh, ResultContainer, ScrollLoader } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/relation/Following.tsx b/development/social/app/components/relation/Following.tsx similarity index 94% rename from src/apps/social/app/relation/Following.tsx rename to development/social/app/components/relation/Following.tsx index 86dcd366..6588c261 100644 --- a/src/apps/social/app/relation/Following.tsx +++ b/development/social/app/components/relation/Following.tsx @@ -1,8 +1,8 @@ import { Column } from '@maskingtech/designsystem'; -import { OrderAndSearchRow, PullToRefresh, ResultContainer, ScrollLoader } from '~/app/common'; -import { useViewProfile } from '~/app/profile'; +import { OrderAndSearchRow, PullToRefresh, ResultContainer, ScrollLoader } from '~/components/common'; +import { useViewProfile } from '~/components/profile'; import PanelList from './components/PanelList'; diff --git a/src/apps/social/app/relation/Profile.tsx b/development/social/app/components/relation/Profile.tsx similarity index 92% rename from src/apps/social/app/relation/Profile.tsx rename to development/social/app/components/relation/Profile.tsx index c5abfe56..72ccf580 100644 --- a/src/apps/social/app/relation/Profile.tsx +++ b/development/social/app/components/relation/Profile.tsx @@ -1,7 +1,7 @@ import type { AggregatedData as AggregatedRelationData } from '^/domain/relation/aggregate'; -import { LoadingAndResultContainer } from '~/app/common'; +import { LoadingAndResultContainer } from '~/components/common'; import Profile from './components/Profile'; diff --git a/src/apps/social/app/relation/components/Counters.tsx b/development/social/app/components/relation/components/Counters.tsx similarity index 93% rename from src/apps/social/app/relation/components/Counters.tsx rename to development/social/app/components/relation/components/Counters.tsx index e3a2c471..ba8c2313 100644 --- a/src/apps/social/app/relation/components/Counters.tsx +++ b/development/social/app/components/relation/components/Counters.tsx @@ -1,7 +1,7 @@ import type { AggregatedData as AggregatedRelationData } from '^/domain/relation/aggregate'; -import { Counters } from '~/app/creator'; +import { Counters } from '~/components/creator'; import FollowRow from './elements/FollowRow'; diff --git a/src/apps/social/app/relation/components/Panel.tsx b/development/social/app/components/relation/components/Panel.tsx similarity index 100% rename from src/apps/social/app/relation/components/Panel.tsx rename to development/social/app/components/relation/components/Panel.tsx diff --git a/src/apps/social/app/relation/components/PanelList.tsx b/development/social/app/components/relation/components/PanelList.tsx similarity index 100% rename from src/apps/social/app/relation/components/PanelList.tsx rename to development/social/app/components/relation/components/PanelList.tsx diff --git a/src/apps/social/app/relation/components/Profile.tsx b/development/social/app/components/relation/components/Profile.tsx similarity index 93% rename from src/apps/social/app/relation/components/Profile.tsx rename to development/social/app/components/relation/components/Profile.tsx index 18e1bbbb..34448930 100644 --- a/src/apps/social/app/relation/components/Profile.tsx +++ b/development/social/app/components/relation/components/Profile.tsx @@ -1,7 +1,7 @@ import type { AggregatedData as AggregatedRelationData } from '^/domain/relation/aggregate'; -import { Profile } from '~/app/creator'; +import { Profile } from '~/components/creator'; import FollowRow from './elements/FollowRow'; diff --git a/src/apps/social/app/relation/components/TimeElapsed.tsx b/development/social/app/components/relation/components/TimeElapsed.tsx similarity index 95% rename from src/apps/social/app/relation/components/TimeElapsed.tsx rename to development/social/app/components/relation/components/TimeElapsed.tsx index 2d897fc1..d2896da5 100644 --- a/src/apps/social/app/relation/components/TimeElapsed.tsx +++ b/development/social/app/components/relation/components/TimeElapsed.tsx @@ -1,7 +1,7 @@ import type { AggregatedData as AggregatedRelationData } from '^/domain/relation/aggregate'; -import { TimeElapsed } from '~/app/creator'; +import { TimeElapsed } from '~/components/creator'; import FollowRow from './elements/FollowRow'; diff --git a/src/apps/social/app/relation/components/elements/FollowButton.tsx b/development/social/app/components/relation/components/elements/FollowButton.tsx similarity index 100% rename from src/apps/social/app/relation/components/elements/FollowButton.tsx rename to development/social/app/components/relation/components/elements/FollowButton.tsx diff --git a/src/apps/social/app/relation/components/elements/FollowRow.tsx b/development/social/app/components/relation/components/elements/FollowRow.tsx similarity index 93% rename from src/apps/social/app/relation/components/elements/FollowRow.tsx rename to development/social/app/components/relation/components/elements/FollowRow.tsx index 7e8d44ac..fb3c8d9a 100644 --- a/src/apps/social/app/relation/components/elements/FollowRow.tsx +++ b/development/social/app/components/relation/components/elements/FollowRow.tsx @@ -3,7 +3,7 @@ import type { ReactNode } from 'react'; import { Row } from '@maskingtech/designsystem'; -import { EditButton } from '~/app/common'; +import { EditButton } from '~/components/common'; import FollowButton from './FollowButton'; diff --git a/src/apps/social/app/relation/components/hooks/useEstablish.ts b/development/social/app/components/relation/components/hooks/useEstablish.ts similarity index 100% rename from src/apps/social/app/relation/components/hooks/useEstablish.ts rename to development/social/app/components/relation/components/hooks/useEstablish.ts diff --git a/src/apps/social/app/relation/hooks/useCreatorFollowers.ts b/development/social/app/components/relation/hooks/useCreatorFollowers.ts similarity index 92% rename from src/apps/social/app/relation/hooks/useCreatorFollowers.ts rename to development/social/app/components/relation/hooks/useCreatorFollowers.ts index 21e78745..77f2eaa1 100644 --- a/src/apps/social/app/relation/hooks/useCreatorFollowers.ts +++ b/development/social/app/components/relation/hooks/useCreatorFollowers.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getFollowers from '^/domain/relation/getFollowersAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useCreatorFollowers(creatorId?: string) { diff --git a/src/apps/social/app/relation/hooks/useCreatorFollowing.ts b/development/social/app/components/relation/hooks/useCreatorFollowing.ts similarity index 91% rename from src/apps/social/app/relation/hooks/useCreatorFollowing.ts rename to development/social/app/components/relation/hooks/useCreatorFollowing.ts index 96c80638..f64ba8fb 100644 --- a/src/apps/social/app/relation/hooks/useCreatorFollowing.ts +++ b/development/social/app/components/relation/hooks/useCreatorFollowing.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getFollowing from '^/domain/relation/getFollowingAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useCreatorFollowing(creatorId?: string) { diff --git a/src/apps/social/app/relation/hooks/useEstablish.ts b/development/social/app/components/relation/hooks/useEstablish.ts similarity index 89% rename from src/apps/social/app/relation/hooks/useEstablish.ts rename to development/social/app/components/relation/hooks/useEstablish.ts index c4f81320..88fae99c 100644 --- a/src/apps/social/app/relation/hooks/useEstablish.ts +++ b/development/social/app/components/relation/hooks/useEstablish.ts @@ -4,7 +4,7 @@ import { useCallback } from 'react'; import { requester } from '^/domain/authentication'; import type { AggregatedData as AggregatedRelationData } from '^/domain/relation/aggregate'; import establishRelation from '^/domain/relation/establish'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useEstablish() { diff --git a/src/apps/social/app/relation/hooks/useExploreCreators.ts b/development/social/app/components/relation/hooks/useExploreCreators.ts similarity index 90% rename from src/apps/social/app/relation/hooks/useExploreCreators.ts rename to development/social/app/components/relation/hooks/useExploreCreators.ts index 8b65726f..7cf072be 100644 --- a/src/apps/social/app/relation/hooks/useExploreCreators.ts +++ b/development/social/app/components/relation/hooks/useExploreCreators.ts @@ -5,7 +5,7 @@ import { usePagination } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import exploreRelations from '^/domain/relation/exploreAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; export default function useExploreCreators() { diff --git a/src/apps/social/app/relation/hooks/useRelation.ts b/development/social/app/components/relation/hooks/useRelation.ts similarity index 85% rename from src/apps/social/app/relation/hooks/useRelation.ts rename to development/social/app/components/relation/hooks/useRelation.ts index 91e9d3b3..da36fa4e 100644 --- a/src/apps/social/app/relation/hooks/useRelation.ts +++ b/development/social/app/components/relation/hooks/useRelation.ts @@ -5,9 +5,9 @@ import { useLoadData } from '@maskingtech/react-toolkit'; import { requester } from '^/domain/authentication'; import getRelation from '^/domain/relation/getAggregated'; -import { tenant } from '^/domain/tenant'; +import { tenant } from '@comify/common/domain/tenant'; -import { useAppContext } from '~/app/application'; +import { useAppContext } from '~/components/application'; export default function useRelation(creatorId?: string) { diff --git a/src/apps/social/app/relation/hooks/useReorderList.ts b/development/social/app/components/relation/hooks/useReorderList.ts similarity index 100% rename from src/apps/social/app/relation/hooks/useReorderList.ts rename to development/social/app/components/relation/hooks/useReorderList.ts diff --git a/src/apps/social/app/relation/index.ts b/development/social/app/components/relation/index.ts similarity index 100% rename from src/apps/social/app/relation/index.ts rename to development/social/app/components/relation/index.ts diff --git a/src/apps/social/app/theme.css b/development/social/app/components/theme.css similarity index 100% rename from src/apps/social/app/theme.css rename to development/social/app/components/theme.css diff --git a/src/apps/social/app/timeline/Following.tsx b/development/social/app/components/timeline/Following.tsx similarity index 58% rename from src/apps/social/app/timeline/Following.tsx rename to development/social/app/components/timeline/Following.tsx index f17f851a..c09d5225 100644 --- a/src/apps/social/app/timeline/Following.tsx +++ b/development/social/app/components/timeline/Following.tsx @@ -1,5 +1,5 @@ -import { Following } from '~/app/post'; +import { Following } from '~/components/post'; export default function Feature() { diff --git a/src/apps/social/app/timeline/ForYou.tsx b/development/social/app/components/timeline/ForYou.tsx similarity index 58% rename from src/apps/social/app/timeline/ForYou.tsx rename to development/social/app/components/timeline/ForYou.tsx index e7b849ad..6564b52f 100644 --- a/src/apps/social/app/timeline/ForYou.tsx +++ b/development/social/app/components/timeline/ForYou.tsx @@ -1,5 +1,5 @@ -import { Recommended } from '~/app/post'; +import { Recommended } from '~/components/post'; export default function Feature() { diff --git a/src/apps/social/app/timeline/Main.tsx b/development/social/app/components/timeline/Main.tsx similarity index 85% rename from src/apps/social/app/timeline/Main.tsx rename to development/social/app/components/timeline/Main.tsx index d122bd5f..03098b12 100644 --- a/src/apps/social/app/timeline/Main.tsx +++ b/development/social/app/components/timeline/Main.tsx @@ -1,7 +1,7 @@ import { Outlet } from 'react-router-dom'; -import { Tabs } from '~/app/common'; +import { Tabs } from '~/components/common'; const tabItems = [ { title: 'For you', route: 'foryou' }, diff --git a/src/apps/social/app/timeline/Routes.tsx b/development/social/app/components/timeline/Routes.tsx similarity index 89% rename from src/apps/social/app/timeline/Routes.tsx rename to development/social/app/components/timeline/Routes.tsx index d980689d..bca64cb6 100644 --- a/src/apps/social/app/timeline/Routes.tsx +++ b/development/social/app/components/timeline/Routes.tsx @@ -1,7 +1,7 @@ import { Route, Navigate } from 'react-router-dom'; -import { NotFound } from '~/app/common'; +import { NotFound } from '~/components/common'; import Main from './Main'; import ForYou from './ForYou'; diff --git a/src/apps/social/app/timeline/index.ts b/development/social/app/components/timeline/index.ts similarity index 100% rename from src/apps/social/app/timeline/index.ts rename to development/social/app/components/timeline/index.ts diff --git a/development/social/app/components/vite-env.d.ts b/development/social/app/components/vite-env.d.ts new file mode 100644 index 00000000..11f02fe2 --- /dev/null +++ b/development/social/app/components/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/src/apps/social/index.html b/development/social/app/index.html similarity index 90% rename from src/apps/social/index.html rename to development/social/app/index.html index ede92781..3a40dc8e 100644 --- a/src/apps/social/index.html +++ b/development/social/app/index.html @@ -15,7 +15,7 @@
- + \ No newline at end of file diff --git a/src/assets/appicon192.png b/development/social/app/public/appicon192.png similarity index 100% rename from src/assets/appicon192.png rename to development/social/app/public/appicon192.png diff --git a/src/assets/appicon32.png b/development/social/app/public/appicon32.png similarity index 100% rename from src/assets/appicon32.png rename to development/social/app/public/appicon32.png diff --git a/src/assets/appicon512.png b/development/social/app/public/appicon512.png similarity index 100% rename from src/assets/appicon512.png rename to development/social/app/public/appicon512.png diff --git a/development/social/app/public/localhost.css b/development/social/app/public/localhost.css new file mode 100644 index 00000000..e69de29b diff --git a/src/apps/social/public/robots.txt b/development/social/app/public/robots.txt similarity index 100% rename from src/apps/social/public/robots.txt rename to development/social/app/public/robots.txt diff --git a/development/social/app/tsconfig.json b/development/social/app/tsconfig.json new file mode 100644 index 00000000..b9bb13f9 --- /dev/null +++ b/development/social/app/tsconfig.json @@ -0,0 +1,13 @@ +{ + "extends": "../../../tsconfig.json", + "compilerOptions": { + "jsx": "react-jsx", + "noEmit": true, + "paths": { + "^/*": ["../*"], + "~/*": ["./*"], + "@comify/common/*": ["../../common/*"] + } + }, + "include": ["./"] +} \ No newline at end of file diff --git a/development/social/app/vite-env.d.ts b/development/social/app/vite-env.d.ts new file mode 100644 index 00000000..11f02fe2 --- /dev/null +++ b/development/social/app/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/development/social/app/vite.config.ts b/development/social/app/vite.config.ts new file mode 100644 index 00000000..89848e45 --- /dev/null +++ b/development/social/app/vite.config.ts @@ -0,0 +1,34 @@ + +import jitar, { JitarConfig } from '@jitar/plugin-vite'; +import react from '@vitejs/plugin-react'; +import { defineConfig } from 'vite'; +import tsconfigPaths from 'vite-tsconfig-paths'; + +const JITAR_URL = 'http://localhost:3000'; +const JITAR_SEGMENTS: string[] = []; +const JITAR_MIDDLEWARES: string[] = [ + '../../common/integrations/authentication/requesterMiddleware' +]; + +const jitarConfig: JitarConfig = { + projectRoot: '../../../', + sourceRoot: '../../', + jitarUrl: JITAR_URL, + segments: JITAR_SEGMENTS, + middleware: JITAR_MIDDLEWARES +}; + +export default defineConfig({ + root: './app', + publicDir: 'public', + build: { + outDir: '../../../artifacts/build/social/app', + assetsDir: 'assets', + emptyOutDir: true + }, + plugins: [ + react(), + tsconfigPaths(), + jitar(jitarConfig) + ] +}); \ No newline at end of file diff --git a/src/domain/authentication/getLoginUrl/getLoginUrl.ts b/development/social/domain/authentication/getLoginUrl/getLoginUrl.ts similarity index 100% rename from src/domain/authentication/getLoginUrl/getLoginUrl.ts rename to development/social/domain/authentication/getLoginUrl/getLoginUrl.ts diff --git a/src/domain/authentication/getLoginUrl/index.ts b/development/social/domain/authentication/getLoginUrl/index.ts similarity index 100% rename from src/domain/authentication/getLoginUrl/index.ts rename to development/social/domain/authentication/getLoginUrl/index.ts diff --git a/src/domain/authentication/index.ts b/development/social/domain/authentication/index.ts similarity index 100% rename from src/domain/authentication/index.ts rename to development/social/domain/authentication/index.ts diff --git a/src/domain/authentication/login/index.ts b/development/social/domain/authentication/login/index.ts similarity index 100% rename from src/domain/authentication/login/index.ts rename to development/social/domain/authentication/login/index.ts diff --git a/src/domain/authentication/login/login.ts b/development/social/domain/authentication/login/login.ts similarity index 92% rename from src/domain/authentication/login/login.ts rename to development/social/domain/authentication/login/login.ts index 6cfe4cf7..a4926b73 100644 --- a/src/domain/authentication/login/login.ts +++ b/development/social/domain/authentication/login/login.ts @@ -3,7 +3,7 @@ import type { Identity } from '@theshelf/authentication'; import getCreatorByEmail from '^/domain/creator/getByEmail'; import registerCreator from '^/domain/creator/register'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { Requester } from '../types'; diff --git a/src/domain/authentication/logout/index.ts b/development/social/domain/authentication/logout/index.ts similarity index 100% rename from src/domain/authentication/logout/index.ts rename to development/social/domain/authentication/logout/index.ts diff --git a/src/domain/authentication/logout/logout.ts b/development/social/domain/authentication/logout/logout.ts similarity index 100% rename from src/domain/authentication/logout/logout.ts rename to development/social/domain/authentication/logout/logout.ts diff --git a/src/domain/authentication/requester.ts b/development/social/domain/authentication/requester.ts similarity index 100% rename from src/domain/authentication/requester.ts rename to development/social/domain/authentication/requester.ts diff --git a/src/domain/authentication/types.ts b/development/social/domain/authentication/types.ts similarity index 100% rename from src/domain/authentication/types.ts rename to development/social/domain/authentication/types.ts diff --git a/src/domain/comic/aggregate/aggregate.ts b/development/social/domain/comic/aggregate/aggregate.ts similarity index 100% rename from src/domain/comic/aggregate/aggregate.ts rename to development/social/domain/comic/aggregate/aggregate.ts diff --git a/src/domain/comic/aggregate/index.ts b/development/social/domain/comic/aggregate/index.ts similarity index 100% rename from src/domain/comic/aggregate/index.ts rename to development/social/domain/comic/aggregate/index.ts diff --git a/src/domain/comic/aggregate/types.ts b/development/social/domain/comic/aggregate/types.ts similarity index 100% rename from src/domain/comic/aggregate/types.ts rename to development/social/domain/comic/aggregate/types.ts diff --git a/development/social/domain/comic/create/InvalidComic.ts b/development/social/domain/comic/create/InvalidComic.ts new file mode 100644 index 00000000..519f7468 --- /dev/null +++ b/development/social/domain/comic/create/InvalidComic.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidComic extends ValidationError +{ + +} diff --git a/src/domain/comic/create/create.ts b/development/social/domain/comic/create/create.ts similarity index 100% rename from src/domain/comic/create/create.ts rename to development/social/domain/comic/create/create.ts diff --git a/src/domain/comic/create/createData.ts b/development/social/domain/comic/create/createData.ts similarity index 75% rename from src/domain/comic/create/createData.ts rename to development/social/domain/comic/create/createData.ts index 0f0772ac..cd68bf03 100644 --- a/src/domain/comic/create/createData.ts +++ b/development/social/domain/comic/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/comic/create/index.ts b/development/social/domain/comic/create/index.ts similarity index 100% rename from src/domain/comic/create/index.ts rename to development/social/domain/comic/create/index.ts diff --git a/src/domain/comic/create/insertData.ts b/development/social/domain/comic/create/insertData.ts similarity index 78% rename from src/domain/comic/create/insertData.ts rename to development/social/domain/comic/create/insertData.ts index 764eeeb9..6a519f76 100644 --- a/src/domain/comic/create/insertData.ts +++ b/development/social/domain/comic/create/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/comic/create/types.ts b/development/social/domain/comic/create/types.ts similarity index 100% rename from src/domain/comic/create/types.ts rename to development/social/domain/comic/create/types.ts diff --git a/src/domain/comic/create/validateData.ts b/development/social/domain/comic/create/validateData.ts similarity index 91% rename from src/domain/comic/create/validateData.ts rename to development/social/domain/comic/create/validateData.ts index 7dc6e964..a9bdfa02 100644 --- a/src/domain/comic/create/validateData.ts +++ b/development/social/domain/comic/create/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { requiredIdValidation } from '^/domain/definitions'; diff --git a/src/domain/comic/definitions.ts b/development/social/domain/comic/definitions.ts similarity index 100% rename from src/domain/comic/definitions.ts rename to development/social/domain/comic/definitions.ts diff --git a/src/domain/comic/erase/erase.ts b/development/social/domain/comic/erase/erase.ts similarity index 100% rename from src/domain/comic/erase/erase.ts rename to development/social/domain/comic/erase/erase.ts diff --git a/src/domain/comic/erase/eraseData.ts b/development/social/domain/comic/erase/eraseData.ts similarity index 72% rename from src/domain/comic/erase/eraseData.ts rename to development/social/domain/comic/erase/eraseData.ts index cf62de8f..440ac23d 100644 --- a/src/domain/comic/erase/eraseData.ts +++ b/development/social/domain/comic/erase/eraseData.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/comic/erase/index.ts b/development/social/domain/comic/erase/index.ts similarity index 100% rename from src/domain/comic/erase/index.ts rename to development/social/domain/comic/erase/index.ts diff --git a/src/domain/comic/getById/ComicNotFound.ts b/development/social/domain/comic/getById/ComicNotFound.ts similarity index 65% rename from src/domain/comic/getById/ComicNotFound.ts rename to development/social/domain/comic/getById/ComicNotFound.ts index 1da29a1a..4a30d1d4 100644 --- a/src/domain/comic/getById/ComicNotFound.ts +++ b/development/social/domain/comic/getById/ComicNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class ComicNotFound extends NotFound { diff --git a/src/domain/comic/getById/getById.ts b/development/social/domain/comic/getById/getById.ts similarity index 79% rename from src/domain/comic/getById/getById.ts rename to development/social/domain/comic/getById/getById.ts index 43bc1fbf..ede65c95 100644 --- a/src/domain/comic/getById/getById.ts +++ b/development/social/domain/comic/getById/getById.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/comic/getById/index.ts b/development/social/domain/comic/getById/index.ts similarity index 100% rename from src/domain/comic/getById/index.ts rename to development/social/domain/comic/getById/index.ts diff --git a/src/domain/comic/getByIdAggregated/getByIdAggregated.ts b/development/social/domain/comic/getByIdAggregated/getByIdAggregated.ts similarity index 100% rename from src/domain/comic/getByIdAggregated/getByIdAggregated.ts rename to development/social/domain/comic/getByIdAggregated/getByIdAggregated.ts diff --git a/src/domain/comic/getByIdAggregated/index.ts b/development/social/domain/comic/getByIdAggregated/index.ts similarity index 100% rename from src/domain/comic/getByIdAggregated/index.ts rename to development/social/domain/comic/getByIdAggregated/index.ts diff --git a/src/domain/comic/index.ts b/development/social/domain/comic/index.ts similarity index 100% rename from src/domain/comic/index.ts rename to development/social/domain/comic/index.ts diff --git a/src/domain/comic/types.ts b/development/social/domain/comic/types.ts similarity index 100% rename from src/domain/comic/types.ts rename to development/social/domain/comic/types.ts diff --git a/development/social/domain/comment/create/InvalidComment.ts b/development/social/domain/comment/create/InvalidComment.ts new file mode 100644 index 00000000..3b6ffa6a --- /dev/null +++ b/development/social/domain/comment/create/InvalidComment.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidComment extends ValidationError +{ + +} diff --git a/src/domain/comment/create/create.ts b/development/social/domain/comment/create/create.ts similarity index 100% rename from src/domain/comment/create/create.ts rename to development/social/domain/comment/create/create.ts diff --git a/src/domain/comment/create/createData.ts b/development/social/domain/comment/create/createData.ts similarity index 70% rename from src/domain/comment/create/createData.ts rename to development/social/domain/comment/create/createData.ts index 1cc948ec..6cda6157 100644 --- a/src/domain/comment/create/createData.ts +++ b/development/social/domain/comment/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/comment/create/index.ts b/development/social/domain/comment/create/index.ts similarity index 100% rename from src/domain/comment/create/index.ts rename to development/social/domain/comment/create/index.ts diff --git a/src/domain/image/save/insertData.ts b/development/social/domain/comment/create/insertData.ts similarity index 78% rename from src/domain/image/save/insertData.ts rename to development/social/domain/comment/create/insertData.ts index 764eeeb9..6a519f76 100644 --- a/src/domain/image/save/insertData.ts +++ b/development/social/domain/comment/create/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/comment/create/types.ts b/development/social/domain/comment/create/types.ts similarity index 100% rename from src/domain/comment/create/types.ts rename to development/social/domain/comment/create/types.ts diff --git a/src/domain/comment/create/validateData.ts b/development/social/domain/comment/create/validateData.ts similarity index 91% rename from src/domain/comment/create/validateData.ts rename to development/social/domain/comment/create/validateData.ts index 9d7f6850..a085c1c1 100644 --- a/src/domain/comment/create/validateData.ts +++ b/development/social/domain/comment/create/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { MESSAGE_MAX_LENGTH } from '../definitions'; import InvalidComment from './InvalidComment'; diff --git a/src/domain/comment/definitions.ts b/development/social/domain/comment/definitions.ts similarity index 100% rename from src/domain/comment/definitions.ts rename to development/social/domain/comment/definitions.ts diff --git a/src/domain/comment/erase/erase.ts b/development/social/domain/comment/erase/erase.ts similarity index 72% rename from src/domain/comment/erase/erase.ts rename to development/social/domain/comment/erase/erase.ts index d0d90407..a77690ca 100644 --- a/src/domain/comment/erase/erase.ts +++ b/development/social/domain/comment/erase/erase.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/comment/erase/index.ts b/development/social/domain/comment/erase/index.ts similarity index 100% rename from src/domain/comment/erase/index.ts rename to development/social/domain/comment/erase/index.ts diff --git a/src/domain/comment/getById/CommentNotFound.ts b/development/social/domain/comment/getById/CommentNotFound.ts similarity index 66% rename from src/domain/comment/getById/CommentNotFound.ts rename to development/social/domain/comment/getById/CommentNotFound.ts index c01a1b23..917e464d 100644 --- a/src/domain/comment/getById/CommentNotFound.ts +++ b/development/social/domain/comment/getById/CommentNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class CommentNotFound extends NotFound { diff --git a/src/domain/comment/getById/getById.ts b/development/social/domain/comment/getById/getById.ts similarity index 80% rename from src/domain/comment/getById/getById.ts rename to development/social/domain/comment/getById/getById.ts index 5bcd16a0..a4de8c93 100644 --- a/src/domain/comment/getById/getById.ts +++ b/development/social/domain/comment/getById/getById.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/comment/getById/index.ts b/development/social/domain/comment/getById/index.ts similarity index 100% rename from src/domain/comment/getById/index.ts rename to development/social/domain/comment/getById/index.ts diff --git a/src/domain/comment/index.ts b/development/social/domain/comment/index.ts similarity index 100% rename from src/domain/comment/index.ts rename to development/social/domain/comment/index.ts diff --git a/src/domain/comment/types.ts b/development/social/domain/comment/types.ts similarity index 100% rename from src/domain/comment/types.ts rename to development/social/domain/comment/types.ts diff --git a/src/domain/common/filterResolved/filterResolved.ts b/development/social/domain/common/filterResolved/filterResolved.ts similarity index 88% rename from src/domain/common/filterResolved/filterResolved.ts rename to development/social/domain/common/filterResolved/filterResolved.ts index 7c65f540..dcd74a8e 100644 --- a/src/domain/common/filterResolved/filterResolved.ts +++ b/development/social/domain/common/filterResolved/filterResolved.ts @@ -1,5 +1,5 @@ -import logger from '^/integrations/logging'; +import logger from '@comify/common/integrations/logging'; export default async function filterResolved(items: Promise[]): Promise { diff --git a/src/domain/common/filterResolved/index.ts b/development/social/domain/common/filterResolved/index.ts similarity index 100% rename from src/domain/common/filterResolved/index.ts rename to development/social/domain/common/filterResolved/index.ts diff --git a/development/social/domain/common/validateRange/InvalidRange.ts b/development/social/domain/common/validateRange/InvalidRange.ts new file mode 100644 index 00000000..5ce6d4a0 --- /dev/null +++ b/development/social/domain/common/validateRange/InvalidRange.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidRange extends ValidationError +{ + +} diff --git a/src/domain/common/validateRange/index.ts b/development/social/domain/common/validateRange/index.ts similarity index 100% rename from src/domain/common/validateRange/index.ts rename to development/social/domain/common/validateRange/index.ts diff --git a/src/domain/common/validateRange/types.ts b/development/social/domain/common/validateRange/types.ts similarity index 100% rename from src/domain/common/validateRange/types.ts rename to development/social/domain/common/validateRange/types.ts diff --git a/src/domain/common/validateRange/validateRange.ts b/development/social/domain/common/validateRange/validateRange.ts similarity index 92% rename from src/domain/common/validateRange/validateRange.ts rename to development/social/domain/common/validateRange/validateRange.ts index 67fa2be0..553debbd 100644 --- a/src/domain/common/validateRange/validateRange.ts +++ b/development/social/domain/common/validateRange/validateRange.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import InvalidRange from './InvalidRange'; import type { Range } from './types'; diff --git a/src/domain/creator.metrics/create/create.ts b/development/social/domain/creator.metrics/create/create.ts similarity index 100% rename from src/domain/creator.metrics/create/create.ts rename to development/social/domain/creator.metrics/create/create.ts diff --git a/src/domain/creator.metrics/create/createData.ts b/development/social/domain/creator.metrics/create/createData.ts similarity index 77% rename from src/domain/creator.metrics/create/createData.ts rename to development/social/domain/creator.metrics/create/createData.ts index 4d0a2827..bc208d26 100644 --- a/src/domain/creator.metrics/create/createData.ts +++ b/development/social/domain/creator.metrics/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/creator.metrics/create/index.ts b/development/social/domain/creator.metrics/create/index.ts similarity index 100% rename from src/domain/creator.metrics/create/index.ts rename to development/social/domain/creator.metrics/create/index.ts diff --git a/src/domain/post.metrics/create/insertData.ts b/development/social/domain/creator.metrics/create/insertData.ts similarity index 79% rename from src/domain/post.metrics/create/insertData.ts rename to development/social/domain/creator.metrics/create/insertData.ts index aa1171c6..f1dd37ce 100644 --- a/src/domain/post.metrics/create/insertData.ts +++ b/development/social/domain/creator.metrics/create/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator.metrics/create/subscriptions.ts b/development/social/domain/creator.metrics/create/subscriptions.ts similarity index 75% rename from src/domain/creator.metrics/create/subscriptions.ts rename to development/social/domain/creator.metrics/create/subscriptions.ts index 2ee6066c..8b264d67 100644 --- a/src/domain/creator.metrics/create/subscriptions.ts +++ b/development/social/domain/creator.metrics/create/subscriptions.ts @@ -3,11 +3,11 @@ import { subscribe as subscribeToCreatorRegistered } from '^/domain/creator/regi import create from './create'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ subscribeToCreatorRegistered(({ creatorId }) => create(creatorId)), ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/creator.metrics/definitions.ts b/development/social/domain/creator.metrics/definitions.ts similarity index 100% rename from src/domain/creator.metrics/definitions.ts rename to development/social/domain/creator.metrics/definitions.ts diff --git a/src/domain/creator.metrics/getByCreator/CreatorMetricsNotFound.ts b/development/social/domain/creator.metrics/getByCreator/CreatorMetricsNotFound.ts similarity index 69% rename from src/domain/creator.metrics/getByCreator/CreatorMetricsNotFound.ts rename to development/social/domain/creator.metrics/getByCreator/CreatorMetricsNotFound.ts index 9a27ada6..cac8e979 100644 --- a/src/domain/creator.metrics/getByCreator/CreatorMetricsNotFound.ts +++ b/development/social/domain/creator.metrics/getByCreator/CreatorMetricsNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class CreatorMetricsNotFound extends NotFound { diff --git a/src/domain/creator.metrics/getByCreator/getByCreator.ts b/development/social/domain/creator.metrics/getByCreator/getByCreator.ts similarity index 82% rename from src/domain/creator.metrics/getByCreator/getByCreator.ts rename to development/social/domain/creator.metrics/getByCreator/getByCreator.ts index 274c9300..072820ae 100644 --- a/src/domain/creator.metrics/getByCreator/getByCreator.ts +++ b/development/social/domain/creator.metrics/getByCreator/getByCreator.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator.metrics/getByCreator/index.ts b/development/social/domain/creator.metrics/getByCreator/index.ts similarity index 100% rename from src/domain/creator.metrics/getByCreator/index.ts rename to development/social/domain/creator.metrics/getByCreator/index.ts diff --git a/src/domain/creator.metrics/index.ts b/development/social/domain/creator.metrics/index.ts similarity index 100% rename from src/domain/creator.metrics/index.ts rename to development/social/domain/creator.metrics/index.ts diff --git a/src/domain/creator.metrics/types.ts b/development/social/domain/creator.metrics/types.ts similarity index 100% rename from src/domain/creator.metrics/types.ts rename to development/social/domain/creator.metrics/types.ts diff --git a/src/domain/creator.metrics/update/index.ts b/development/social/domain/creator.metrics/update/index.ts similarity index 100% rename from src/domain/creator.metrics/update/index.ts rename to development/social/domain/creator.metrics/update/index.ts diff --git a/src/domain/creator.metrics/update/update.ts b/development/social/domain/creator.metrics/update/update.ts similarity index 77% rename from src/domain/creator.metrics/update/update.ts rename to development/social/domain/creator.metrics/update/update.ts index 5d49f23c..0dc08948 100644 --- a/src/domain/creator.metrics/update/update.ts +++ b/development/social/domain/creator.metrics/update/update.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator.metrics/updateFollowers/index.ts b/development/social/domain/creator.metrics/updateFollowers/index.ts similarity index 100% rename from src/domain/creator.metrics/updateFollowers/index.ts rename to development/social/domain/creator.metrics/updateFollowers/index.ts diff --git a/src/domain/creator.metrics/updateFollowers/subscriptions.ts b/development/social/domain/creator.metrics/updateFollowers/subscriptions.ts similarity index 78% rename from src/domain/creator.metrics/updateFollowers/subscriptions.ts rename to development/social/domain/creator.metrics/updateFollowers/subscriptions.ts index 1a703add..5f82c53c 100644 --- a/src/domain/creator.metrics/updateFollowers/subscriptions.ts +++ b/development/social/domain/creator.metrics/updateFollowers/subscriptions.ts @@ -3,11 +3,11 @@ import { subscribe as subscribeToRelationEstablished } from '^/domain/relation/e import updateFollowerCount from './updateFollowers'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ subscribeToRelationEstablished(({ followingId }) => updateFollowerCount(followingId, 'increase')) ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/creator.metrics/updateFollowers/updateFollowers.ts b/development/social/domain/creator.metrics/updateFollowers/updateFollowers.ts similarity index 100% rename from src/domain/creator.metrics/updateFollowers/updateFollowers.ts rename to development/social/domain/creator.metrics/updateFollowers/updateFollowers.ts diff --git a/src/domain/creator.metrics/updateFollowing/index.ts b/development/social/domain/creator.metrics/updateFollowing/index.ts similarity index 100% rename from src/domain/creator.metrics/updateFollowing/index.ts rename to development/social/domain/creator.metrics/updateFollowing/index.ts diff --git a/src/domain/creator.metrics/updateFollowing/subscriptions.ts b/development/social/domain/creator.metrics/updateFollowing/subscriptions.ts similarity index 78% rename from src/domain/creator.metrics/updateFollowing/subscriptions.ts rename to development/social/domain/creator.metrics/updateFollowing/subscriptions.ts index d30d6519..285ba2f7 100644 --- a/src/domain/creator.metrics/updateFollowing/subscriptions.ts +++ b/development/social/domain/creator.metrics/updateFollowing/subscriptions.ts @@ -3,11 +3,11 @@ import { subscribe as subscribeToRelationEstablished } from '^/domain/relation/e import updateFollowing from './updateFollowing'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ subscribeToRelationEstablished(({ followerId }) => updateFollowing(followerId, 'increase')) ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/creator.metrics/updateFollowing/updateFollowing.ts b/development/social/domain/creator.metrics/updateFollowing/updateFollowing.ts similarity index 100% rename from src/domain/creator.metrics/updateFollowing/updateFollowing.ts rename to development/social/domain/creator.metrics/updateFollowing/updateFollowing.ts diff --git a/src/domain/creator.metrics/updatePosts/index.ts b/development/social/domain/creator.metrics/updatePosts/index.ts similarity index 100% rename from src/domain/creator.metrics/updatePosts/index.ts rename to development/social/domain/creator.metrics/updatePosts/index.ts diff --git a/src/domain/creator.metrics/updatePosts/subscriptions.ts b/development/social/domain/creator.metrics/updatePosts/subscriptions.ts similarity index 88% rename from src/domain/creator.metrics/updatePosts/subscriptions.ts rename to development/social/domain/creator.metrics/updatePosts/subscriptions.ts index aee5cb31..229d9170 100644 --- a/src/domain/creator.metrics/updatePosts/subscriptions.ts +++ b/development/social/domain/creator.metrics/updatePosts/subscriptions.ts @@ -4,7 +4,7 @@ import { subscribe as subscribeToPostRemoved } from '^/domain/post/remove'; import updatePosts from './updatePosts'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ @@ -25,4 +25,4 @@ async function subscribe(): Promise ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/creator.metrics/updatePosts/updatePosts.ts b/development/social/domain/creator.metrics/updatePosts/updatePosts.ts similarity index 100% rename from src/domain/creator.metrics/updatePosts/updatePosts.ts rename to development/social/domain/creator.metrics/updatePosts/updatePosts.ts diff --git a/src/domain/creator/aggregate/aggregate.ts b/development/social/domain/creator/aggregate/aggregate.ts similarity index 100% rename from src/domain/creator/aggregate/aggregate.ts rename to development/social/domain/creator/aggregate/aggregate.ts diff --git a/src/domain/creator/aggregate/index.ts b/development/social/domain/creator/aggregate/index.ts similarity index 100% rename from src/domain/creator/aggregate/index.ts rename to development/social/domain/creator/aggregate/index.ts diff --git a/src/domain/creator/aggregate/types.ts b/development/social/domain/creator/aggregate/types.ts similarity index 100% rename from src/domain/creator/aggregate/types.ts rename to development/social/domain/creator/aggregate/types.ts diff --git a/src/domain/creator/cleanNickname/cleanNickname.ts b/development/social/domain/creator/cleanNickname/cleanNickname.ts similarity index 100% rename from src/domain/creator/cleanNickname/cleanNickname.ts rename to development/social/domain/creator/cleanNickname/cleanNickname.ts diff --git a/src/domain/creator/cleanNickname/definitions.ts b/development/social/domain/creator/cleanNickname/definitions.ts similarity index 100% rename from src/domain/creator/cleanNickname/definitions.ts rename to development/social/domain/creator/cleanNickname/definitions.ts diff --git a/src/domain/creator/cleanNickname/index.ts b/development/social/domain/creator/cleanNickname/index.ts similarity index 100% rename from src/domain/creator/cleanNickname/index.ts rename to development/social/domain/creator/cleanNickname/index.ts diff --git a/development/social/domain/creator/create/InvalidCreator.ts b/development/social/domain/creator/create/InvalidCreator.ts new file mode 100644 index 00000000..20998005 --- /dev/null +++ b/development/social/domain/creator/create/InvalidCreator.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidCreator extends ValidationError +{ + +} diff --git a/src/domain/creator/create/create.ts b/development/social/domain/creator/create/create.ts similarity index 100% rename from src/domain/creator/create/create.ts rename to development/social/domain/creator/create/create.ts diff --git a/src/domain/creator/create/createData.ts b/development/social/domain/creator/create/createData.ts similarity index 83% rename from src/domain/creator/create/createData.ts rename to development/social/domain/creator/create/createData.ts index aaed975e..c1c5f8c2 100644 --- a/src/domain/creator/create/createData.ts +++ b/development/social/domain/creator/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/create/index.ts b/development/social/domain/creator/create/index.ts similarity index 100% rename from src/domain/creator/create/index.ts rename to development/social/domain/creator/create/index.ts diff --git a/src/domain/comment/create/insertData.ts b/development/social/domain/creator/create/insertData.ts similarity index 78% rename from src/domain/comment/create/insertData.ts rename to development/social/domain/creator/create/insertData.ts index 764eeeb9..6a519f76 100644 --- a/src/domain/comment/create/insertData.ts +++ b/development/social/domain/creator/create/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/create/types.ts b/development/social/domain/creator/create/types.ts similarity index 100% rename from src/domain/creator/create/types.ts rename to development/social/domain/creator/create/types.ts diff --git a/src/domain/creator/create/validateData.ts b/development/social/domain/creator/create/validateData.ts similarity index 93% rename from src/domain/creator/create/validateData.ts rename to development/social/domain/creator/create/validateData.ts index e29fac6e..018eca13 100644 --- a/src/domain/creator/create/validateData.ts +++ b/development/social/domain/creator/create/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { optionalIdValidation } from '^/domain/definitions'; diff --git a/src/domain/creator/definitions.ts b/development/social/domain/creator/definitions.ts similarity index 100% rename from src/domain/creator/definitions.ts rename to development/social/domain/creator/definitions.ts diff --git a/src/domain/creator/erase/erase.ts b/development/social/domain/creator/erase/erase.ts similarity index 72% rename from src/domain/creator/erase/erase.ts rename to development/social/domain/creator/erase/erase.ts index 91657532..6390c6b8 100644 --- a/src/domain/creator/erase/erase.ts +++ b/development/social/domain/creator/erase/erase.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/creator/erase/index.ts b/development/social/domain/creator/erase/index.ts similarity index 100% rename from src/domain/creator/erase/index.ts rename to development/social/domain/creator/erase/index.ts diff --git a/src/domain/creator/generateNickname/TooManySimilarNicknames.ts b/development/social/domain/creator/generateNickname/TooManySimilarNicknames.ts similarity index 72% rename from src/domain/creator/generateNickname/TooManySimilarNicknames.ts rename to development/social/domain/creator/generateNickname/TooManySimilarNicknames.ts index 70c29bce..8490e4b2 100644 --- a/src/domain/creator/generateNickname/TooManySimilarNicknames.ts +++ b/development/social/domain/creator/generateNickname/TooManySimilarNicknames.ts @@ -1,5 +1,5 @@ -import { BadRequest } from '^/integrations/errors'; +import { BadRequest } from '@comify/common/integrations/errors'; export default class TooManySimilarNicknames extends BadRequest { diff --git a/src/domain/creator/generateNickname/generateNickname.ts b/development/social/domain/creator/generateNickname/generateNickname.ts similarity index 100% rename from src/domain/creator/generateNickname/generateNickname.ts rename to development/social/domain/creator/generateNickname/generateNickname.ts diff --git a/src/domain/creator/generateNickname/index.ts b/development/social/domain/creator/generateNickname/index.ts similarity index 100% rename from src/domain/creator/generateNickname/index.ts rename to development/social/domain/creator/generateNickname/index.ts diff --git a/src/domain/creator/generateNickname/retrieveByNickname.ts b/development/social/domain/creator/generateNickname/retrieveByNickname.ts similarity index 87% rename from src/domain/creator/generateNickname/retrieveByNickname.ts rename to development/social/domain/creator/generateNickname/retrieveByNickname.ts index f2ed8675..3c884892 100644 --- a/src/domain/creator/generateNickname/retrieveByNickname.ts +++ b/development/social/domain/creator/generateNickname/retrieveByNickname.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/generateNickname/retrieveByStartNickname.ts b/development/social/domain/creator/generateNickname/retrieveByStartNickname.ts similarity index 91% rename from src/domain/creator/generateNickname/retrieveByStartNickname.ts rename to development/social/domain/creator/generateNickname/retrieveByStartNickname.ts index 0422f323..1add1824 100644 --- a/src/domain/creator/generateNickname/retrieveByStartNickname.ts +++ b/development/social/domain/creator/generateNickname/retrieveByStartNickname.ts @@ -2,7 +2,7 @@ import type { RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/getByEmail/getByEmail.ts b/development/social/domain/creator/getByEmail/getByEmail.ts similarity index 86% rename from src/domain/creator/getByEmail/getByEmail.ts rename to development/social/domain/creator/getByEmail/getByEmail.ts index 6195913d..91f4b3b4 100644 --- a/src/domain/creator/getByEmail/getByEmail.ts +++ b/development/social/domain/creator/getByEmail/getByEmail.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/getByEmail/index.ts b/development/social/domain/creator/getByEmail/index.ts similarity index 100% rename from src/domain/creator/getByEmail/index.ts rename to development/social/domain/creator/getByEmail/index.ts diff --git a/src/domain/creator/getById/CreatorNotFound.ts b/development/social/domain/creator/getById/CreatorNotFound.ts similarity index 66% rename from src/domain/creator/getById/CreatorNotFound.ts rename to development/social/domain/creator/getById/CreatorNotFound.ts index fd560001..28cb5216 100644 --- a/src/domain/creator/getById/CreatorNotFound.ts +++ b/development/social/domain/creator/getById/CreatorNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class CreatorNotFound extends NotFound { diff --git a/src/domain/creator/getById/getById.ts b/development/social/domain/creator/getById/getById.ts similarity index 84% rename from src/domain/creator/getById/getById.ts rename to development/social/domain/creator/getById/getById.ts index 85d9e1a6..6be80530 100644 --- a/src/domain/creator/getById/getById.ts +++ b/development/social/domain/creator/getById/getById.ts @@ -1,8 +1,8 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/getById/index.ts b/development/social/domain/creator/getById/index.ts similarity index 100% rename from src/domain/creator/getById/index.ts rename to development/social/domain/creator/getById/index.ts diff --git a/src/domain/creator/getByIdAggregated/getByIdAggregated.ts b/development/social/domain/creator/getByIdAggregated/getByIdAggregated.ts similarity index 100% rename from src/domain/creator/getByIdAggregated/getByIdAggregated.ts rename to development/social/domain/creator/getByIdAggregated/getByIdAggregated.ts diff --git a/src/domain/creator/getByIdAggregated/index.ts b/development/social/domain/creator/getByIdAggregated/index.ts similarity index 100% rename from src/domain/creator/getByIdAggregated/index.ts rename to development/social/domain/creator/getByIdAggregated/index.ts diff --git a/src/domain/creator/getByNickname/NicknameNotFound.ts b/development/social/domain/creator/getByNickname/NicknameNotFound.ts similarity index 68% rename from src/domain/creator/getByNickname/NicknameNotFound.ts rename to development/social/domain/creator/getByNickname/NicknameNotFound.ts index e2cca6b5..473c55b8 100644 --- a/src/domain/creator/getByNickname/NicknameNotFound.ts +++ b/development/social/domain/creator/getByNickname/NicknameNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class NicknameNotFound extends NotFound { diff --git a/src/domain/creator/getByNickname/getByNickname.ts b/development/social/domain/creator/getByNickname/getByNickname.ts similarity index 85% rename from src/domain/creator/getByNickname/getByNickname.ts rename to development/social/domain/creator/getByNickname/getByNickname.ts index 72abce22..b83c5113 100644 --- a/src/domain/creator/getByNickname/getByNickname.ts +++ b/development/social/domain/creator/getByNickname/getByNickname.ts @@ -1,8 +1,8 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/getByNickname/index.ts b/development/social/domain/creator/getByNickname/index.ts similarity index 100% rename from src/domain/creator/getByNickname/index.ts rename to development/social/domain/creator/getByNickname/index.ts diff --git a/src/domain/creator/getByNicknameAggregated/getByNicknameAggregated.ts b/development/social/domain/creator/getByNicknameAggregated/getByNicknameAggregated.ts similarity index 87% rename from src/domain/creator/getByNicknameAggregated/getByNicknameAggregated.ts rename to development/social/domain/creator/getByNicknameAggregated/getByNicknameAggregated.ts index 7c4d61fd..98874aa5 100644 --- a/src/domain/creator/getByNicknameAggregated/getByNicknameAggregated.ts +++ b/development/social/domain/creator/getByNicknameAggregated/getByNicknameAggregated.ts @@ -1,6 +1,6 @@ import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/creator/getByNicknameAggregated/index.ts b/development/social/domain/creator/getByNicknameAggregated/index.ts similarity index 100% rename from src/domain/creator/getByNicknameAggregated/index.ts rename to development/social/domain/creator/getByNicknameAggregated/index.ts diff --git a/src/domain/creator/getMe/getMe.ts b/development/social/domain/creator/getMe/getMe.ts similarity index 82% rename from src/domain/creator/getMe/getMe.ts rename to development/social/domain/creator/getMe/getMe.ts index 79f71b3f..af1f6541 100644 --- a/src/domain/creator/getMe/getMe.ts +++ b/development/social/domain/creator/getMe/getMe.ts @@ -1,6 +1,6 @@ import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import getById from '../getById'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/getMe/index.ts b/development/social/domain/creator/getMe/index.ts similarity index 100% rename from src/domain/creator/getMe/index.ts rename to development/social/domain/creator/getMe/index.ts diff --git a/src/domain/creator/getMeAggregated/getMeAggregated.ts b/development/social/domain/creator/getMeAggregated/getMeAggregated.ts similarity index 86% rename from src/domain/creator/getMeAggregated/getMeAggregated.ts rename to development/social/domain/creator/getMeAggregated/getMeAggregated.ts index 1b170185..27f5f0ed 100644 --- a/src/domain/creator/getMeAggregated/getMeAggregated.ts +++ b/development/social/domain/creator/getMeAggregated/getMeAggregated.ts @@ -1,6 +1,6 @@ import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/creator/getMeAggregated/index.ts b/development/social/domain/creator/getMeAggregated/index.ts similarity index 100% rename from src/domain/creator/getMeAggregated/index.ts rename to development/social/domain/creator/getMeAggregated/index.ts diff --git a/src/domain/creator/getOthers/getOthers.ts b/development/social/domain/creator/getOthers/getOthers.ts similarity index 95% rename from src/domain/creator/getOthers/getOthers.ts rename to development/social/domain/creator/getOthers/getOthers.ts index 4f0fe13c..7ae01c78 100644 --- a/src/domain/creator/getOthers/getOthers.ts +++ b/development/social/domain/creator/getOthers/getOthers.ts @@ -2,7 +2,7 @@ import type { QueryStatement, RecordQuery, RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import type { SortOrder } from '../definitions'; import { RECORD_TYPE, SortOrders } from '../definitions'; diff --git a/src/domain/creator/getOthers/index.ts b/development/social/domain/creator/getOthers/index.ts similarity index 100% rename from src/domain/creator/getOthers/index.ts rename to development/social/domain/creator/getOthers/index.ts diff --git a/src/domain/creator/index.ts b/development/social/domain/creator/index.ts similarity index 100% rename from src/domain/creator/index.ts rename to development/social/domain/creator/index.ts diff --git a/src/domain/creator/register/definitions.ts b/development/social/domain/creator/register/definitions.ts similarity index 100% rename from src/domain/creator/register/definitions.ts rename to development/social/domain/creator/register/definitions.ts diff --git a/src/domain/creator/register/downloadPortrait.ts b/development/social/domain/creator/register/downloadPortrait.ts similarity index 100% rename from src/domain/creator/register/downloadPortrait.ts rename to development/social/domain/creator/register/downloadPortrait.ts diff --git a/src/domain/creator/register/index.ts b/development/social/domain/creator/register/index.ts similarity index 100% rename from src/domain/creator/register/index.ts rename to development/social/domain/creator/register/index.ts diff --git a/src/domain/creator/register/publish.ts b/development/social/domain/creator/register/publish.ts similarity index 86% rename from src/domain/creator/register/publish.ts rename to development/social/domain/creator/register/publish.ts index 0e725860..b1233e28 100644 --- a/src/domain/creator/register/publish.ts +++ b/development/social/domain/creator/register/publish.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/creator/register/register.ts b/development/social/domain/creator/register/register.ts similarity index 95% rename from src/domain/creator/register/register.ts rename to development/social/domain/creator/register/register.ts index 8a0656e8..94202648 100644 --- a/src/domain/creator/register/register.ts +++ b/development/social/domain/creator/register/register.ts @@ -1,5 +1,5 @@ -import logger from '^/integrations/logging'; +import logger from '@comify/common/integrations/logging'; import create from '../create'; import { FULL_NAME_MAX_LENGTH } from '../definitions'; diff --git a/src/domain/creator/register/subscribe.ts b/development/social/domain/creator/register/subscribe.ts similarity index 86% rename from src/domain/creator/register/subscribe.ts rename to development/social/domain/creator/register/subscribe.ts index eb1a4632..948cd58d 100644 --- a/src/domain/creator/register/subscribe.ts +++ b/development/social/domain/creator/register/subscribe.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/creator/register/types.ts b/development/social/domain/creator/register/types.ts similarity index 100% rename from src/domain/creator/register/types.ts rename to development/social/domain/creator/register/types.ts diff --git a/src/domain/creator/types.ts b/development/social/domain/creator/types.ts similarity index 100% rename from src/domain/creator/types.ts rename to development/social/domain/creator/types.ts diff --git a/src/domain/creator/update/index.ts b/development/social/domain/creator/update/index.ts similarity index 100% rename from src/domain/creator/update/index.ts rename to development/social/domain/creator/update/index.ts diff --git a/src/domain/creator/update/update.ts b/development/social/domain/creator/update/update.ts similarity index 77% rename from src/domain/creator/update/update.ts rename to development/social/domain/creator/update/update.ts index 8e7c1e31..2bd00c76 100644 --- a/src/domain/creator/update/update.ts +++ b/development/social/domain/creator/update/update.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/development/social/domain/creator/updateFullName/InvalidFullName.ts b/development/social/domain/creator/updateFullName/InvalidFullName.ts new file mode 100644 index 00000000..468874b4 --- /dev/null +++ b/development/social/domain/creator/updateFullName/InvalidFullName.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidFullName extends ValidationError +{ + +} diff --git a/src/domain/creator/updateFullName/index.ts b/development/social/domain/creator/updateFullName/index.ts similarity index 100% rename from src/domain/creator/updateFullName/index.ts rename to development/social/domain/creator/updateFullName/index.ts diff --git a/src/domain/creator/updateFullName/types.ts b/development/social/domain/creator/updateFullName/types.ts similarity index 100% rename from src/domain/creator/updateFullName/types.ts rename to development/social/domain/creator/updateFullName/types.ts diff --git a/src/domain/creator/updateFullName/updateFullName.ts b/development/social/domain/creator/updateFullName/updateFullName.ts similarity index 100% rename from src/domain/creator/updateFullName/updateFullName.ts rename to development/social/domain/creator/updateFullName/updateFullName.ts diff --git a/src/domain/creator/updateFullName/validateData.ts b/development/social/domain/creator/updateFullName/validateData.ts similarity index 88% rename from src/domain/creator/updateFullName/validateData.ts rename to development/social/domain/creator/updateFullName/validateData.ts index ecfd6a9b..08043094 100644 --- a/src/domain/creator/updateFullName/validateData.ts +++ b/development/social/domain/creator/updateFullName/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { fullNameValidation } from '../definitions'; import InvalidFullName from './InvalidFullName'; diff --git a/src/domain/creator/updateNickname/NicknameAlreadyExists.ts b/development/social/domain/creator/updateNickname/NicknameAlreadyExists.ts similarity index 68% rename from src/domain/creator/updateNickname/NicknameAlreadyExists.ts rename to development/social/domain/creator/updateNickname/NicknameAlreadyExists.ts index bc5792ce..326be867 100644 --- a/src/domain/creator/updateNickname/NicknameAlreadyExists.ts +++ b/development/social/domain/creator/updateNickname/NicknameAlreadyExists.ts @@ -1,5 +1,5 @@ -import { BadRequest } from '^/integrations/errors'; +import { BadRequest } from '@comify/common/integrations/errors'; export default class NicknameAlreadyExists extends BadRequest { diff --git a/src/domain/creator/updateNickname/index.ts b/development/social/domain/creator/updateNickname/index.ts similarity index 100% rename from src/domain/creator/updateNickname/index.ts rename to development/social/domain/creator/updateNickname/index.ts diff --git a/src/domain/creator/updateNickname/retrieveByNickname.ts b/development/social/domain/creator/updateNickname/retrieveByNickname.ts similarity index 86% rename from src/domain/creator/updateNickname/retrieveByNickname.ts rename to development/social/domain/creator/updateNickname/retrieveByNickname.ts index eb44bb04..693cfcd7 100644 --- a/src/domain/creator/updateNickname/retrieveByNickname.ts +++ b/development/social/domain/creator/updateNickname/retrieveByNickname.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/creator/updateNickname/updateNickname.ts b/development/social/domain/creator/updateNickname/updateNickname.ts similarity index 86% rename from src/domain/creator/updateNickname/updateNickname.ts rename to development/social/domain/creator/updateNickname/updateNickname.ts index 3ea94a35..efd73134 100644 --- a/src/domain/creator/updateNickname/updateNickname.ts +++ b/development/social/domain/creator/updateNickname/updateNickname.ts @@ -1,8 +1,8 @@ -import logger from '^/integrations/logging'; +import logger from '@comify/common/integrations/logging'; import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import cleanNickname from '../cleanNickname'; import update from '../update'; diff --git a/src/domain/definitions.ts b/development/social/domain/definitions.ts similarity index 100% rename from src/domain/definitions.ts rename to development/social/domain/definitions.ts diff --git a/src/domain/image/create/InvalidDataURL.ts b/development/social/domain/image/create/InvalidDataURL.ts similarity index 68% rename from src/domain/image/create/InvalidDataURL.ts rename to development/social/domain/image/create/InvalidDataURL.ts index fa032a83..2772f624 100644 --- a/src/domain/image/create/InvalidDataURL.ts +++ b/development/social/domain/image/create/InvalidDataURL.ts @@ -1,5 +1,5 @@ -import { BadRequest } from '^/integrations/errors'; +import { BadRequest } from '@comify/common/integrations/errors'; export default class InvalidDataURL extends BadRequest { diff --git a/src/domain/image/create/convertDataUrl.ts b/development/social/domain/image/create/convertDataUrl.ts similarity index 100% rename from src/domain/image/create/convertDataUrl.ts rename to development/social/domain/image/create/convertDataUrl.ts diff --git a/src/domain/image/create/create.ts b/development/social/domain/image/create/create.ts similarity index 100% rename from src/domain/image/create/create.ts rename to development/social/domain/image/create/create.ts diff --git a/src/domain/image/create/index.ts b/development/social/domain/image/create/index.ts similarity index 100% rename from src/domain/image/create/index.ts rename to development/social/domain/image/create/index.ts diff --git a/src/domain/image/definitions.ts b/development/social/domain/image/definitions.ts similarity index 100% rename from src/domain/image/definitions.ts rename to development/social/domain/image/definitions.ts diff --git a/src/domain/image/download/ImageNotDownloaded.ts b/development/social/domain/image/download/ImageNotDownloaded.ts similarity index 67% rename from src/domain/image/download/ImageNotDownloaded.ts rename to development/social/domain/image/download/ImageNotDownloaded.ts index 39dd64bd..c0710605 100644 --- a/src/domain/image/download/ImageNotDownloaded.ts +++ b/development/social/domain/image/download/ImageNotDownloaded.ts @@ -1,5 +1,5 @@ -import { ServerError } from '^/integrations/errors'; +import { ServerError } from '@comify/common/integrations/errors'; export default class ImageNotDownloaded extends ServerError { diff --git a/src/domain/image/download/download.ts b/development/social/domain/image/download/download.ts similarity index 100% rename from src/domain/image/download/download.ts rename to development/social/domain/image/download/download.ts diff --git a/src/domain/image/download/downloadImage.ts b/development/social/domain/image/download/downloadImage.ts similarity index 87% rename from src/domain/image/download/downloadImage.ts rename to development/social/domain/image/download/downloadImage.ts index 3bf76b6a..4ab37538 100644 --- a/src/domain/image/download/downloadImage.ts +++ b/development/social/domain/image/download/downloadImage.ts @@ -1,5 +1,5 @@ -import http from '^/integrations/http'; +import http from '@comify/common/integrations/http'; import ImageNotDownloaded from './ImageNotDownloaded'; diff --git a/src/domain/image/download/getMetaData.ts b/development/social/domain/image/download/getMetaData.ts similarity index 92% rename from src/domain/image/download/getMetaData.ts rename to development/social/domain/image/download/getMetaData.ts index ed7858e5..afa629b0 100644 --- a/src/domain/image/download/getMetaData.ts +++ b/development/social/domain/image/download/getMetaData.ts @@ -1,5 +1,5 @@ -import http from '^/integrations/http'; +import http from '@comify/common/integrations/http'; import type { MetaData } from '../types'; import ImageNotDownloaded from './ImageNotDownloaded'; diff --git a/src/domain/image/download/index.ts b/development/social/domain/image/download/index.ts similarity index 100% rename from src/domain/image/download/index.ts rename to development/social/domain/image/download/index.ts diff --git a/src/domain/image/erase/erase.ts b/development/social/domain/image/erase/erase.ts similarity index 71% rename from src/domain/image/erase/erase.ts rename to development/social/domain/image/erase/erase.ts index b57a2c64..e53040c2 100644 --- a/src/domain/image/erase/erase.ts +++ b/development/social/domain/image/erase/erase.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/image/erase/index.ts b/development/social/domain/image/erase/index.ts similarity index 100% rename from src/domain/image/erase/index.ts rename to development/social/domain/image/erase/index.ts diff --git a/src/domain/image/getById/ImageNotFound.ts b/development/social/domain/image/getById/ImageNotFound.ts similarity index 65% rename from src/domain/image/getById/ImageNotFound.ts rename to development/social/domain/image/getById/ImageNotFound.ts index 9591936a..7c9a90de 100644 --- a/src/domain/image/getById/ImageNotFound.ts +++ b/development/social/domain/image/getById/ImageNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class ImageNotFound extends NotFound { diff --git a/src/domain/image/getById/createDataUrl.ts b/development/social/domain/image/getById/createDataUrl.ts similarity index 100% rename from src/domain/image/getById/createDataUrl.ts rename to development/social/domain/image/getById/createDataUrl.ts diff --git a/src/domain/image/getById/getById.ts b/development/social/domain/image/getById/getById.ts similarity index 100% rename from src/domain/image/getById/getById.ts rename to development/social/domain/image/getById/getById.ts diff --git a/src/domain/image/getById/index.ts b/development/social/domain/image/getById/index.ts similarity index 100% rename from src/domain/image/getById/index.ts rename to development/social/domain/image/getById/index.ts diff --git a/src/domain/image/getById/retrieveData.ts b/development/social/domain/image/getById/retrieveData.ts similarity index 80% rename from src/domain/image/getById/retrieveData.ts rename to development/social/domain/image/getById/retrieveData.ts index 4145f76a..2b8937da 100644 --- a/src/domain/image/getById/retrieveData.ts +++ b/development/social/domain/image/getById/retrieveData.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/image/getById/retrieveFile.ts b/development/social/domain/image/getById/retrieveFile.ts similarity index 67% rename from src/domain/image/getById/retrieveFile.ts rename to development/social/domain/image/getById/retrieveFile.ts index 2fe35317..be208854 100644 --- a/src/domain/image/getById/retrieveFile.ts +++ b/development/social/domain/image/getById/retrieveFile.ts @@ -1,5 +1,5 @@ -import fileStore from '^/integrations/fileStore'; +import fileStore from '@comify/common/integrations/fileStore'; export default async function retrieveFile(storageKey: string): Promise { diff --git a/src/domain/image/index.ts b/development/social/domain/image/index.ts similarity index 100% rename from src/domain/image/index.ts rename to development/social/domain/image/index.ts diff --git a/development/social/domain/image/save/InvalidImage.ts b/development/social/domain/image/save/InvalidImage.ts new file mode 100644 index 00000000..78425cba --- /dev/null +++ b/development/social/domain/image/save/InvalidImage.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidImage extends ValidationError +{ + +} diff --git a/src/domain/image/save/createData.ts b/development/social/domain/image/save/createData.ts similarity index 84% rename from src/domain/image/save/createData.ts rename to development/social/domain/image/save/createData.ts index f02d3ebb..0cc0a50b 100644 --- a/src/domain/image/save/createData.ts +++ b/development/social/domain/image/save/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; type Data = { readonly id: string; diff --git a/src/domain/image/save/fileExists.ts b/development/social/domain/image/save/fileExists.ts similarity index 66% rename from src/domain/image/save/fileExists.ts rename to development/social/domain/image/save/fileExists.ts index 65888881..d8cece32 100644 --- a/src/domain/image/save/fileExists.ts +++ b/development/social/domain/image/save/fileExists.ts @@ -1,5 +1,5 @@ -import fileStore from '^/integrations/fileStore'; +import fileStore from '@comify/common/integrations/fileStore'; export default async function fileExists(storageKey: string): Promise { diff --git a/src/domain/image/save/generateStorageKey.ts b/development/social/domain/image/save/generateStorageKey.ts similarity index 72% rename from src/domain/image/save/generateStorageKey.ts rename to development/social/domain/image/save/generateStorageKey.ts index 7c2fb5a0..0965b317 100644 --- a/src/domain/image/save/generateStorageKey.ts +++ b/development/social/domain/image/save/generateStorageKey.ts @@ -1,5 +1,5 @@ -import { generateHash } from '^/integrations/utilities/crypto'; +import { generateHash } from '@comify/common/integrations/utilities/crypto'; export default function generateStorageKey(type: string, data: Buffer): string { diff --git a/src/domain/image/save/index.ts b/development/social/domain/image/save/index.ts similarity index 100% rename from src/domain/image/save/index.ts rename to development/social/domain/image/save/index.ts diff --git a/src/domain/creator/create/insertData.ts b/development/social/domain/image/save/insertData.ts similarity index 78% rename from src/domain/creator/create/insertData.ts rename to development/social/domain/image/save/insertData.ts index 764eeeb9..6a519f76 100644 --- a/src/domain/creator/create/insertData.ts +++ b/development/social/domain/image/save/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/image/save/insertFile.ts b/development/social/domain/image/save/insertFile.ts similarity index 68% rename from src/domain/image/save/insertFile.ts rename to development/social/domain/image/save/insertFile.ts index 11be7821..e2693916 100644 --- a/src/domain/image/save/insertFile.ts +++ b/development/social/domain/image/save/insertFile.ts @@ -1,5 +1,5 @@ -import fileStore from '^/integrations/fileStore'; +import fileStore from '@comify/common/integrations/fileStore'; export default async function insertFile(path: string, buffer: Buffer): Promise { diff --git a/src/domain/image/save/save.ts b/development/social/domain/image/save/save.ts similarity index 100% rename from src/domain/image/save/save.ts rename to development/social/domain/image/save/save.ts diff --git a/src/domain/image/save/validateData.ts b/development/social/domain/image/save/validateData.ts similarity index 92% rename from src/domain/image/save/validateData.ts rename to development/social/domain/image/save/validateData.ts index 92615c5e..71ef0984 100644 --- a/src/domain/image/save/validateData.ts +++ b/development/social/domain/image/save/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { requiredStringValidation } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/image/types.ts b/development/social/domain/image/types.ts similarity index 100% rename from src/domain/image/types.ts rename to development/social/domain/image/types.ts diff --git a/development/social/domain/image/validate/InvalidImage.ts b/development/social/domain/image/validate/InvalidImage.ts new file mode 100644 index 00000000..78425cba --- /dev/null +++ b/development/social/domain/image/validate/InvalidImage.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidImage extends ValidationError +{ + +} diff --git a/src/domain/image/validate/index.ts b/development/social/domain/image/validate/index.ts similarity index 100% rename from src/domain/image/validate/index.ts rename to development/social/domain/image/validate/index.ts diff --git a/src/domain/image/validate/validate.ts b/development/social/domain/image/validate/validate.ts similarity index 92% rename from src/domain/image/validate/validate.ts rename to development/social/domain/image/validate/validate.ts index de83128f..5249f6d8 100644 --- a/src/domain/image/validate/validate.ts +++ b/development/social/domain/image/validate/validate.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import type { MetaData } from '../types'; import InvalidImage from './InvalidImage'; diff --git a/src/domain/notification/aggregate/aggregate.ts b/development/social/domain/notification/aggregate/aggregate.ts similarity index 93% rename from src/domain/notification/aggregate/aggregate.ts rename to development/social/domain/notification/aggregate/aggregate.ts index 41664b0a..8bfaba39 100644 --- a/src/domain/notification/aggregate/aggregate.ts +++ b/development/social/domain/notification/aggregate/aggregate.ts @@ -2,7 +2,7 @@ import type { Requester } from '^/domain/authentication'; import { default as getPostData } from '^/domain/post/getByIdAggregated'; import getRelationData from '^/domain/relation/getAggregated'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { DataModel } from '../types'; import type { AggregatedData } from './types'; diff --git a/src/domain/notification/aggregate/index.ts b/development/social/domain/notification/aggregate/index.ts similarity index 100% rename from src/domain/notification/aggregate/index.ts rename to development/social/domain/notification/aggregate/index.ts diff --git a/src/domain/notification/aggregate/types.ts b/development/social/domain/notification/aggregate/types.ts similarity index 100% rename from src/domain/notification/aggregate/types.ts rename to development/social/domain/notification/aggregate/types.ts diff --git a/src/domain/notification/create/create.ts b/development/social/domain/notification/create/create.ts similarity index 91% rename from src/domain/notification/create/create.ts rename to development/social/domain/notification/create/create.ts index c91def04..d4ee214f 100644 --- a/src/domain/notification/create/create.ts +++ b/development/social/domain/notification/create/create.ts @@ -1,5 +1,5 @@ -import logger from '^/integrations/logging'; +import logger from '@comify/common/integrations/logging'; import type { Type } from '../definitions'; import createData from './createData'; diff --git a/src/domain/notification/create/createData.ts b/development/social/domain/notification/create/createData.ts similarity index 82% rename from src/domain/notification/create/createData.ts rename to development/social/domain/notification/create/createData.ts index ec38349c..2af18b68 100644 --- a/src/domain/notification/create/createData.ts +++ b/development/social/domain/notification/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/notification/create/index.ts b/development/social/domain/notification/create/index.ts similarity index 100% rename from src/domain/notification/create/index.ts rename to development/social/domain/notification/create/index.ts diff --git a/src/domain/notification/create/insertData.ts b/development/social/domain/notification/create/insertData.ts similarity index 80% rename from src/domain/notification/create/insertData.ts rename to development/social/domain/notification/create/insertData.ts index 1742358e..58afd3ce 100644 --- a/src/domain/notification/create/insertData.ts +++ b/development/social/domain/notification/create/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/notification/definitions.ts b/development/social/domain/notification/definitions.ts similarity index 100% rename from src/domain/notification/definitions.ts rename to development/social/domain/notification/definitions.ts diff --git a/src/domain/notification/getByPostId/getByPostId.ts b/development/social/domain/notification/getByPostId/getByPostId.ts similarity index 87% rename from src/domain/notification/getByPostId/getByPostId.ts rename to development/social/domain/notification/getByPostId/getByPostId.ts index 95dfcdcd..dca6c57c 100644 --- a/src/domain/notification/getByPostId/getByPostId.ts +++ b/development/social/domain/notification/getByPostId/getByPostId.ts @@ -1,7 +1,7 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/notification/getByPostId/index.ts b/development/social/domain/notification/getByPostId/index.ts similarity index 100% rename from src/domain/notification/getByPostId/index.ts rename to development/social/domain/notification/getByPostId/index.ts diff --git a/src/domain/notification/getRecent/getRecent.ts b/development/social/domain/notification/getRecent/getRecent.ts similarity index 91% rename from src/domain/notification/getRecent/getRecent.ts rename to development/social/domain/notification/getRecent/getRecent.ts index 1edb8092..0e95f137 100644 --- a/src/domain/notification/getRecent/getRecent.ts +++ b/development/social/domain/notification/getRecent/getRecent.ts @@ -2,7 +2,7 @@ import type { RecordQuery, RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/notification/getRecent/index.ts b/development/social/domain/notification/getRecent/index.ts similarity index 100% rename from src/domain/notification/getRecent/index.ts rename to development/social/domain/notification/getRecent/index.ts diff --git a/src/domain/notification/getRecentAggregated/getRecentAggregated.ts b/development/social/domain/notification/getRecentAggregated/getRecentAggregated.ts similarity index 92% rename from src/domain/notification/getRecentAggregated/getRecentAggregated.ts rename to development/social/domain/notification/getRecentAggregated/getRecentAggregated.ts index e7dbb559..eef718d3 100644 --- a/src/domain/notification/getRecentAggregated/getRecentAggregated.ts +++ b/development/social/domain/notification/getRecentAggregated/getRecentAggregated.ts @@ -3,7 +3,7 @@ import type { Requester } from '^/domain/authentication'; import filterResolved from '^/domain/common/filterResolved'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/notification/getRecentAggregated/index.ts b/development/social/domain/notification/getRecentAggregated/index.ts similarity index 100% rename from src/domain/notification/getRecentAggregated/index.ts rename to development/social/domain/notification/getRecentAggregated/index.ts diff --git a/src/domain/notification/index.ts b/development/social/domain/notification/index.ts similarity index 100% rename from src/domain/notification/index.ts rename to development/social/domain/notification/index.ts diff --git a/src/domain/notification/notify/createdPost.ts b/development/social/domain/notification/notify/createdPost.ts similarity index 100% rename from src/domain/notification/notify/createdPost.ts rename to development/social/domain/notification/notify/createdPost.ts diff --git a/src/domain/notification/notify/index.ts b/development/social/domain/notification/notify/index.ts similarity index 100% rename from src/domain/notification/notify/index.ts rename to development/social/domain/notification/notify/index.ts diff --git a/src/domain/notification/notify/ratedPost.ts b/development/social/domain/notification/notify/ratedPost.ts similarity index 100% rename from src/domain/notification/notify/ratedPost.ts rename to development/social/domain/notification/notify/ratedPost.ts diff --git a/src/domain/notification/notify/removedPost.ts b/development/social/domain/notification/notify/removedPost.ts similarity index 100% rename from src/domain/notification/notify/removedPost.ts rename to development/social/domain/notification/notify/removedPost.ts diff --git a/src/domain/notification/notify/startedFollowing.ts b/development/social/domain/notification/notify/startedFollowing.ts similarity index 100% rename from src/domain/notification/notify/startedFollowing.ts rename to development/social/domain/notification/notify/startedFollowing.ts diff --git a/src/domain/notification/notify/subscriptions.ts b/development/social/domain/notification/notify/subscriptions.ts similarity index 92% rename from src/domain/notification/notify/subscriptions.ts rename to development/social/domain/notification/notify/subscriptions.ts index 66c87f36..c14391cc 100644 --- a/src/domain/notification/notify/subscriptions.ts +++ b/development/social/domain/notification/notify/subscriptions.ts @@ -9,7 +9,7 @@ import ratedPost from './ratedPost'; import removedPost from './removedPost'; import startedFollowing from './startedFollowing'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ subscribeToPostRated(({ tenantId, creatorId, postId, rated }) => ratedPost(tenantId, creatorId, postId, rated)), @@ -19,4 +19,4 @@ async function subscribe(): Promise ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/notification/remove/index.ts b/development/social/domain/notification/remove/index.ts similarity index 100% rename from src/domain/notification/remove/index.ts rename to development/social/domain/notification/remove/index.ts diff --git a/src/domain/notification/remove/remove.ts b/development/social/domain/notification/remove/remove.ts similarity index 73% rename from src/domain/notification/remove/remove.ts rename to development/social/domain/notification/remove/remove.ts index 970501ba..195a1696 100644 --- a/src/domain/notification/remove/remove.ts +++ b/development/social/domain/notification/remove/remove.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/notification/types.ts b/development/social/domain/notification/types.ts similarity index 100% rename from src/domain/notification/types.ts rename to development/social/domain/notification/types.ts diff --git a/src/domain/post.metrics/create/create.ts b/development/social/domain/post.metrics/create/create.ts similarity index 100% rename from src/domain/post.metrics/create/create.ts rename to development/social/domain/post.metrics/create/create.ts diff --git a/src/domain/post.metrics/create/createData.ts b/development/social/domain/post.metrics/create/createData.ts similarity index 76% rename from src/domain/post.metrics/create/createData.ts rename to development/social/domain/post.metrics/create/createData.ts index 3b7daccf..4bd61f99 100644 --- a/src/domain/post.metrics/create/createData.ts +++ b/development/social/domain/post.metrics/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/post.metrics/create/index.ts b/development/social/domain/post.metrics/create/index.ts similarity index 100% rename from src/domain/post.metrics/create/index.ts rename to development/social/domain/post.metrics/create/index.ts diff --git a/src/domain/creator.metrics/create/insertData.ts b/development/social/domain/post.metrics/create/insertData.ts similarity index 79% rename from src/domain/creator.metrics/create/insertData.ts rename to development/social/domain/post.metrics/create/insertData.ts index aa1171c6..f1dd37ce 100644 --- a/src/domain/creator.metrics/create/insertData.ts +++ b/development/social/domain/post.metrics/create/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post.metrics/create/subscriptions.ts b/development/social/domain/post.metrics/create/subscriptions.ts similarity index 73% rename from src/domain/post.metrics/create/subscriptions.ts rename to development/social/domain/post.metrics/create/subscriptions.ts index c78a9113..6392bcf7 100644 --- a/src/domain/post.metrics/create/subscriptions.ts +++ b/development/social/domain/post.metrics/create/subscriptions.ts @@ -3,11 +3,11 @@ import { subscribe as subscribeToPostCreated } from '^/domain/post/create'; import create from './create'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ subscribeToPostCreated(({ postId }) => create(postId)), ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/post.metrics/definitions.ts b/development/social/domain/post.metrics/definitions.ts similarity index 100% rename from src/domain/post.metrics/definitions.ts rename to development/social/domain/post.metrics/definitions.ts diff --git a/src/domain/post.metrics/getByPost/PostMetricsNotFound.ts b/development/social/domain/post.metrics/getByPost/PostMetricsNotFound.ts similarity index 68% rename from src/domain/post.metrics/getByPost/PostMetricsNotFound.ts rename to development/social/domain/post.metrics/getByPost/PostMetricsNotFound.ts index 1a93019f..49080b6d 100644 --- a/src/domain/post.metrics/getByPost/PostMetricsNotFound.ts +++ b/development/social/domain/post.metrics/getByPost/PostMetricsNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class PostMetricsNotFound extends NotFound { diff --git a/src/domain/post.metrics/getByPost/getByPost.ts b/development/social/domain/post.metrics/getByPost/getByPost.ts similarity index 81% rename from src/domain/post.metrics/getByPost/getByPost.ts rename to development/social/domain/post.metrics/getByPost/getByPost.ts index 79eb59e7..52594288 100644 --- a/src/domain/post.metrics/getByPost/getByPost.ts +++ b/development/social/domain/post.metrics/getByPost/getByPost.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post.metrics/getByPost/index.ts b/development/social/domain/post.metrics/getByPost/index.ts similarity index 100% rename from src/domain/post.metrics/getByPost/index.ts rename to development/social/domain/post.metrics/getByPost/index.ts diff --git a/src/domain/post.metrics/index.ts b/development/social/domain/post.metrics/index.ts similarity index 100% rename from src/domain/post.metrics/index.ts rename to development/social/domain/post.metrics/index.ts diff --git a/src/domain/post.metrics/types.ts b/development/social/domain/post.metrics/types.ts similarity index 100% rename from src/domain/post.metrics/types.ts rename to development/social/domain/post.metrics/types.ts diff --git a/src/domain/post.metrics/update/index.ts b/development/social/domain/post.metrics/update/index.ts similarity index 100% rename from src/domain/post.metrics/update/index.ts rename to development/social/domain/post.metrics/update/index.ts diff --git a/src/domain/post.metrics/update/update.ts b/development/social/domain/post.metrics/update/update.ts similarity index 77% rename from src/domain/post.metrics/update/update.ts rename to development/social/domain/post.metrics/update/update.ts index 37a10908..12f9be62 100644 --- a/src/domain/post.metrics/update/update.ts +++ b/development/social/domain/post.metrics/update/update.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post.metrics/updateRatings/index.ts b/development/social/domain/post.metrics/updateRatings/index.ts similarity index 100% rename from src/domain/post.metrics/updateRatings/index.ts rename to development/social/domain/post.metrics/updateRatings/index.ts diff --git a/src/domain/post.metrics/updateRatings/subscriptions.ts b/development/social/domain/post.metrics/updateRatings/subscriptions.ts similarity index 82% rename from src/domain/post.metrics/updateRatings/subscriptions.ts rename to development/social/domain/post.metrics/updateRatings/subscriptions.ts index 398be5a1..a8658e89 100644 --- a/src/domain/post.metrics/updateRatings/subscriptions.ts +++ b/development/social/domain/post.metrics/updateRatings/subscriptions.ts @@ -3,7 +3,7 @@ import { subscribe as subscribeToRatingToggled } from '^/domain/rating/toggle'; import updateRatings from './updateRatings'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ @@ -17,4 +17,4 @@ async function subscribe(): Promise ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/post.metrics/updateRatings/updateRatings.ts b/development/social/domain/post.metrics/updateRatings/updateRatings.ts similarity index 100% rename from src/domain/post.metrics/updateRatings/updateRatings.ts rename to development/social/domain/post.metrics/updateRatings/updateRatings.ts diff --git a/src/domain/post.metrics/updateReactions/index.ts b/development/social/domain/post.metrics/updateReactions/index.ts similarity index 100% rename from src/domain/post.metrics/updateReactions/index.ts rename to development/social/domain/post.metrics/updateReactions/index.ts diff --git a/src/domain/post.metrics/updateReactions/subscriptions.ts b/development/social/domain/post.metrics/updateReactions/subscriptions.ts similarity index 88% rename from src/domain/post.metrics/updateReactions/subscriptions.ts rename to development/social/domain/post.metrics/updateReactions/subscriptions.ts index d03d380d..a3d0a502 100644 --- a/src/domain/post.metrics/updateReactions/subscriptions.ts +++ b/development/social/domain/post.metrics/updateReactions/subscriptions.ts @@ -4,7 +4,7 @@ import { subscribe as subscribeToPostRemoved } from '^/domain/post/remove'; import updateReactions from './updateReactions'; -async function subscribe(): Promise +export default async function subscriptions(): Promise { await Promise.all([ @@ -25,4 +25,4 @@ async function subscribe(): Promise ]); } -export default subscribe(); +subscriptions(); diff --git a/src/domain/post.metrics/updateReactions/updateReactions.ts b/development/social/domain/post.metrics/updateReactions/updateReactions.ts similarity index 100% rename from src/domain/post.metrics/updateReactions/updateReactions.ts rename to development/social/domain/post.metrics/updateReactions/updateReactions.ts diff --git a/src/domain/post/aggregate/aggregate.ts b/development/social/domain/post/aggregate/aggregate.ts similarity index 95% rename from src/domain/post/aggregate/aggregate.ts rename to development/social/domain/post/aggregate/aggregate.ts index 473c28da..55fd2e3c 100644 --- a/src/domain/post/aggregate/aggregate.ts +++ b/development/social/domain/post/aggregate/aggregate.ts @@ -5,7 +5,7 @@ import getCommentData from '^/domain/comment/getById'; import getMetrics from '^/domain/post.metrics/getByPost'; import ratingExists from '^/domain/rating/exists'; import getRelationData from '^/domain/relation/getAggregated'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { DataModel } from '../types'; import type { AggregatedData } from './types'; diff --git a/src/domain/post/aggregate/index.ts b/development/social/domain/post/aggregate/index.ts similarity index 100% rename from src/domain/post/aggregate/index.ts rename to development/social/domain/post/aggregate/index.ts diff --git a/src/domain/post/aggregate/types.ts b/development/social/domain/post/aggregate/types.ts similarity index 100% rename from src/domain/post/aggregate/types.ts rename to development/social/domain/post/aggregate/types.ts diff --git a/development/social/domain/post/create/InvalidPost.ts b/development/social/domain/post/create/InvalidPost.ts new file mode 100644 index 00000000..80cc7dc6 --- /dev/null +++ b/development/social/domain/post/create/InvalidPost.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidPost extends ValidationError +{ + +} diff --git a/src/domain/post/create/create.ts b/development/social/domain/post/create/create.ts similarity index 93% rename from src/domain/post/create/create.ts rename to development/social/domain/post/create/create.ts index 55c6f6a7..2a361f49 100644 --- a/src/domain/post/create/create.ts +++ b/development/social/domain/post/create/create.ts @@ -1,5 +1,5 @@ -import logger from '^/integrations/logging'; +import logger from '@comify/common/integrations/logging'; import erase from '../erase'; import createData from './createData'; diff --git a/src/domain/post/create/createData.ts b/development/social/domain/post/create/createData.ts similarity index 83% rename from src/domain/post/create/createData.ts rename to development/social/domain/post/create/createData.ts index 91ade3f8..18aeed46 100644 --- a/src/domain/post/create/createData.ts +++ b/development/social/domain/post/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/post/create/definitions.ts b/development/social/domain/post/create/definitions.ts similarity index 100% rename from src/domain/post/create/definitions.ts rename to development/social/domain/post/create/definitions.ts diff --git a/src/domain/post/create/index.ts b/development/social/domain/post/create/index.ts similarity index 100% rename from src/domain/post/create/index.ts rename to development/social/domain/post/create/index.ts diff --git a/src/domain/post/create/insertData.ts b/development/social/domain/post/create/insertData.ts similarity index 80% rename from src/domain/post/create/insertData.ts rename to development/social/domain/post/create/insertData.ts index 1742358e..58afd3ce 100644 --- a/src/domain/post/create/insertData.ts +++ b/development/social/domain/post/create/insertData.ts @@ -1,5 +1,5 @@ -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post/create/publish.ts b/development/social/domain/post/create/publish.ts similarity index 87% rename from src/domain/post/create/publish.ts rename to development/social/domain/post/create/publish.ts index 40b7bb56..e7b0a69d 100644 --- a/src/domain/post/create/publish.ts +++ b/development/social/domain/post/create/publish.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/post/create/subscribe.ts b/development/social/domain/post/create/subscribe.ts similarity index 86% rename from src/domain/post/create/subscribe.ts rename to development/social/domain/post/create/subscribe.ts index 1a2d5997..02cbab43 100644 --- a/src/domain/post/create/subscribe.ts +++ b/development/social/domain/post/create/subscribe.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/post/create/types.ts b/development/social/domain/post/create/types.ts similarity index 100% rename from src/domain/post/create/types.ts rename to development/social/domain/post/create/types.ts diff --git a/src/domain/post/create/validateData.ts b/development/social/domain/post/create/validateData.ts similarity index 94% rename from src/domain/post/create/validateData.ts rename to development/social/domain/post/create/validateData.ts index 21bfff8e..8c894b9c 100644 --- a/src/domain/post/create/validateData.ts +++ b/development/social/domain/post/create/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { optionalIdValidation, requiredIdValidation } from '^/domain/definitions'; diff --git a/src/domain/post/createWithComic/createWithComic.ts b/development/social/domain/post/createWithComic/createWithComic.ts similarity index 88% rename from src/domain/post/createWithComic/createWithComic.ts rename to development/social/domain/post/createWithComic/createWithComic.ts index 32b01d8f..7179e698 100644 --- a/src/domain/post/createWithComic/createWithComic.ts +++ b/development/social/domain/post/createWithComic/createWithComic.ts @@ -1,7 +1,7 @@ import type { Requester } from '^/domain/authentication'; import createComic from '^/domain/comic/create'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import createPost from '../create'; diff --git a/src/domain/post/createWithComic/index.ts b/development/social/domain/post/createWithComic/index.ts similarity index 100% rename from src/domain/post/createWithComic/index.ts rename to development/social/domain/post/createWithComic/index.ts diff --git a/src/domain/post/createWithComment/createWithComment.ts b/development/social/domain/post/createWithComment/createWithComment.ts similarity index 88% rename from src/domain/post/createWithComment/createWithComment.ts rename to development/social/domain/post/createWithComment/createWithComment.ts index 6d36295e..2837c225 100644 --- a/src/domain/post/createWithComment/createWithComment.ts +++ b/development/social/domain/post/createWithComment/createWithComment.ts @@ -1,7 +1,7 @@ import type { Requester } from '^/domain/authentication'; import createComment from '^/domain/comment/create'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import createPost from '../create'; diff --git a/src/domain/post/createWithComment/index.ts b/development/social/domain/post/createWithComment/index.ts similarity index 100% rename from src/domain/post/createWithComment/index.ts rename to development/social/domain/post/createWithComment/index.ts diff --git a/src/domain/post/definitions.ts b/development/social/domain/post/definitions.ts similarity index 100% rename from src/domain/post/definitions.ts rename to development/social/domain/post/definitions.ts diff --git a/src/domain/post/erase/erase.ts b/development/social/domain/post/erase/erase.ts similarity index 71% rename from src/domain/post/erase/erase.ts rename to development/social/domain/post/erase/erase.ts index 01ce3d10..2e0d4def 100644 --- a/src/domain/post/erase/erase.ts +++ b/development/social/domain/post/erase/erase.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/post/erase/index.ts b/development/social/domain/post/erase/index.ts similarity index 100% rename from src/domain/post/erase/index.ts rename to development/social/domain/post/erase/index.ts diff --git a/src/domain/post/explore/explore.ts b/development/social/domain/post/explore/explore.ts similarity index 91% rename from src/domain/post/explore/explore.ts rename to development/social/domain/post/explore/explore.ts index b08cb69e..3003db5f 100644 --- a/src/domain/post/explore/explore.ts +++ b/development/social/domain/post/explore/explore.ts @@ -1,7 +1,7 @@ import type { Requester } from '^/domain/authentication'; import retrieveRelationsByFollower from '^/domain/relation/getFollowing'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { DataModel } from '../types'; import retrieveData from './retrieveData'; diff --git a/src/domain/post/explore/index.ts b/development/social/domain/post/explore/index.ts similarity index 100% rename from src/domain/post/explore/index.ts rename to development/social/domain/post/explore/index.ts diff --git a/src/domain/post/explore/retrieveData.ts b/development/social/domain/post/explore/retrieveData.ts similarity index 92% rename from src/domain/post/explore/retrieveData.ts rename to development/social/domain/post/explore/retrieveData.ts index 692a8ac6..0fa1d713 100644 --- a/src/domain/post/explore/retrieveData.ts +++ b/development/social/domain/post/explore/retrieveData.ts @@ -2,7 +2,7 @@ import type { RecordQuery, RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post/exploreAggregated/exploreAggregated.ts b/development/social/domain/post/exploreAggregated/exploreAggregated.ts similarity index 92% rename from src/domain/post/exploreAggregated/exploreAggregated.ts rename to development/social/domain/post/exploreAggregated/exploreAggregated.ts index 27e7a8d9..e66df47f 100644 --- a/src/domain/post/exploreAggregated/exploreAggregated.ts +++ b/development/social/domain/post/exploreAggregated/exploreAggregated.ts @@ -3,7 +3,7 @@ import type { Requester } from '^/domain/authentication'; import filterResolved from '^/domain/common/filterResolved'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/post/exploreAggregated/index.ts b/development/social/domain/post/exploreAggregated/index.ts similarity index 100% rename from src/domain/post/exploreAggregated/index.ts rename to development/social/domain/post/exploreAggregated/index.ts diff --git a/src/domain/post/getByCreator/getByCreator.ts b/development/social/domain/post/getByCreator/getByCreator.ts similarity index 91% rename from src/domain/post/getByCreator/getByCreator.ts rename to development/social/domain/post/getByCreator/getByCreator.ts index 8d6e3020..4a67b4ce 100644 --- a/src/domain/post/getByCreator/getByCreator.ts +++ b/development/social/domain/post/getByCreator/getByCreator.ts @@ -2,7 +2,7 @@ import type { RecordQuery, RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post/getByCreator/index.ts b/development/social/domain/post/getByCreator/index.ts similarity index 100% rename from src/domain/post/getByCreator/index.ts rename to development/social/domain/post/getByCreator/index.ts diff --git a/src/domain/post/getByCreatorAggregated/getByCreatorAggregated.ts b/development/social/domain/post/getByCreatorAggregated/getByCreatorAggregated.ts similarity index 92% rename from src/domain/post/getByCreatorAggregated/getByCreatorAggregated.ts rename to development/social/domain/post/getByCreatorAggregated/getByCreatorAggregated.ts index 312f1d1b..f75e04a4 100644 --- a/src/domain/post/getByCreatorAggregated/getByCreatorAggregated.ts +++ b/development/social/domain/post/getByCreatorAggregated/getByCreatorAggregated.ts @@ -3,7 +3,7 @@ import type { Requester } from '^/domain/authentication'; import filterResolved from '^/domain/common/filterResolved'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/post/getByCreatorAggregated/index.ts b/development/social/domain/post/getByCreatorAggregated/index.ts similarity index 100% rename from src/domain/post/getByCreatorAggregated/index.ts rename to development/social/domain/post/getByCreatorAggregated/index.ts diff --git a/src/domain/post/getByFollowing/getByFollowing.ts b/development/social/domain/post/getByFollowing/getByFollowing.ts similarity index 100% rename from src/domain/post/getByFollowing/getByFollowing.ts rename to development/social/domain/post/getByFollowing/getByFollowing.ts diff --git a/src/domain/post/getByFollowing/index.ts b/development/social/domain/post/getByFollowing/index.ts similarity index 100% rename from src/domain/post/getByFollowing/index.ts rename to development/social/domain/post/getByFollowing/index.ts diff --git a/src/domain/post/getByFollowing/retrieveData.ts b/development/social/domain/post/getByFollowing/retrieveData.ts similarity index 91% rename from src/domain/post/getByFollowing/retrieveData.ts rename to development/social/domain/post/getByFollowing/retrieveData.ts index 7a526b60..51a7cedf 100644 --- a/src/domain/post/getByFollowing/retrieveData.ts +++ b/development/social/domain/post/getByFollowing/retrieveData.ts @@ -2,7 +2,7 @@ import type { RecordQuery, RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post/getByFollowingAggregated/getByFollowingAggregated.ts b/development/social/domain/post/getByFollowingAggregated/getByFollowingAggregated.ts similarity index 92% rename from src/domain/post/getByFollowingAggregated/getByFollowingAggregated.ts rename to development/social/domain/post/getByFollowingAggregated/getByFollowingAggregated.ts index 108d4c0c..5f3ce892 100644 --- a/src/domain/post/getByFollowingAggregated/getByFollowingAggregated.ts +++ b/development/social/domain/post/getByFollowingAggregated/getByFollowingAggregated.ts @@ -3,7 +3,7 @@ import type { Requester } from '^/domain/authentication'; import filterResolved from '^/domain/common/filterResolved'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/post/getByFollowingAggregated/index.ts b/development/social/domain/post/getByFollowingAggregated/index.ts similarity index 100% rename from src/domain/post/getByFollowingAggregated/index.ts rename to development/social/domain/post/getByFollowingAggregated/index.ts diff --git a/src/domain/post/getById/PostNotFound.ts b/development/social/domain/post/getById/PostNotFound.ts similarity index 65% rename from src/domain/post/getById/PostNotFound.ts rename to development/social/domain/post/getById/PostNotFound.ts index e28f9948..167ef8bc 100644 --- a/src/domain/post/getById/PostNotFound.ts +++ b/development/social/domain/post/getById/PostNotFound.ts @@ -1,5 +1,5 @@ -import { NotFound } from '^/integrations/errors'; +import { NotFound } from '@comify/common/integrations/errors'; export default class PostNotFound extends NotFound { diff --git a/src/domain/post/getById/getById.ts b/development/social/domain/post/getById/getById.ts similarity index 84% rename from src/domain/post/getById/getById.ts rename to development/social/domain/post/getById/getById.ts index e251d7f8..c5cc73f4 100644 --- a/src/domain/post/getById/getById.ts +++ b/development/social/domain/post/getById/getById.ts @@ -1,8 +1,8 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post/getById/index.ts b/development/social/domain/post/getById/index.ts similarity index 100% rename from src/domain/post/getById/index.ts rename to development/social/domain/post/getById/index.ts diff --git a/src/domain/post/getByIdAggregated/getByIdAggregated.ts b/development/social/domain/post/getByIdAggregated/getByIdAggregated.ts similarity index 88% rename from src/domain/post/getByIdAggregated/getByIdAggregated.ts rename to development/social/domain/post/getByIdAggregated/getByIdAggregated.ts index 7b269a56..f5ca2cf4 100644 --- a/src/domain/post/getByIdAggregated/getByIdAggregated.ts +++ b/development/social/domain/post/getByIdAggregated/getByIdAggregated.ts @@ -1,6 +1,6 @@ import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/post/getByIdAggregated/index.ts b/development/social/domain/post/getByIdAggregated/index.ts similarity index 100% rename from src/domain/post/getByIdAggregated/index.ts rename to development/social/domain/post/getByIdAggregated/index.ts diff --git a/src/domain/post/getByParent/getByParent.ts b/development/social/domain/post/getByParent/getByParent.ts similarity index 91% rename from src/domain/post/getByParent/getByParent.ts rename to development/social/domain/post/getByParent/getByParent.ts index 4c867071..233d701f 100644 --- a/src/domain/post/getByParent/getByParent.ts +++ b/development/social/domain/post/getByParent/getByParent.ts @@ -2,7 +2,7 @@ import type { RecordQuery, RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post/getByParent/index.ts b/development/social/domain/post/getByParent/index.ts similarity index 100% rename from src/domain/post/getByParent/index.ts rename to development/social/domain/post/getByParent/index.ts diff --git a/src/domain/post/getByParentAggregated/getByParentAggregated.ts b/development/social/domain/post/getByParentAggregated/getByParentAggregated.ts similarity index 91% rename from src/domain/post/getByParentAggregated/getByParentAggregated.ts rename to development/social/domain/post/getByParentAggregated/getByParentAggregated.ts index f68457d1..4981912b 100644 --- a/src/domain/post/getByParentAggregated/getByParentAggregated.ts +++ b/development/social/domain/post/getByParentAggregated/getByParentAggregated.ts @@ -2,7 +2,7 @@ import type { Requester } from '^/domain/authentication'; import filterResolved from '^/domain/common/filterResolved'; import type { Range } from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/post/getByParentAggregated/index.ts b/development/social/domain/post/getByParentAggregated/index.ts similarity index 100% rename from src/domain/post/getByParentAggregated/index.ts rename to development/social/domain/post/getByParentAggregated/index.ts diff --git a/src/domain/post/getRecommended/getRecommended.ts b/development/social/domain/post/getRecommended/getRecommended.ts similarity index 92% rename from src/domain/post/getRecommended/getRecommended.ts rename to development/social/domain/post/getRecommended/getRecommended.ts index d4360d00..f5b3c677 100644 --- a/src/domain/post/getRecommended/getRecommended.ts +++ b/development/social/domain/post/getRecommended/getRecommended.ts @@ -2,7 +2,7 @@ import type { RecordQuery, RecordSort } from '@theshelf/database'; import { SortDirections } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/post/getRecommended/index.ts b/development/social/domain/post/getRecommended/index.ts similarity index 100% rename from src/domain/post/getRecommended/index.ts rename to development/social/domain/post/getRecommended/index.ts diff --git a/src/domain/post/getRecommendedAggregated/getRecommendedAggregated.ts b/development/social/domain/post/getRecommendedAggregated/getRecommendedAggregated.ts similarity index 92% rename from src/domain/post/getRecommendedAggregated/getRecommendedAggregated.ts rename to development/social/domain/post/getRecommendedAggregated/getRecommendedAggregated.ts index 23be9c13..050505b3 100644 --- a/src/domain/post/getRecommendedAggregated/getRecommendedAggregated.ts +++ b/development/social/domain/post/getRecommendedAggregated/getRecommendedAggregated.ts @@ -3,7 +3,7 @@ import type { Requester } from '^/domain/authentication'; import filterResolved from '^/domain/common/filterResolved'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/post/getRecommendedAggregated/index.ts b/development/social/domain/post/getRecommendedAggregated/index.ts similarity index 100% rename from src/domain/post/getRecommendedAggregated/index.ts rename to development/social/domain/post/getRecommendedAggregated/index.ts diff --git a/src/domain/post/index.ts b/development/social/domain/post/index.ts similarity index 100% rename from src/domain/post/index.ts rename to development/social/domain/post/index.ts diff --git a/src/domain/post/remove/definitions.ts b/development/social/domain/post/remove/definitions.ts similarity index 100% rename from src/domain/post/remove/definitions.ts rename to development/social/domain/post/remove/definitions.ts diff --git a/src/domain/post/remove/deleteData.ts b/development/social/domain/post/remove/deleteData.ts similarity index 73% rename from src/domain/post/remove/deleteData.ts rename to development/social/domain/post/remove/deleteData.ts index 104d3b40..397c49b2 100644 --- a/src/domain/post/remove/deleteData.ts +++ b/development/social/domain/post/remove/deleteData.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/post/remove/index.ts b/development/social/domain/post/remove/index.ts similarity index 100% rename from src/domain/post/remove/index.ts rename to development/social/domain/post/remove/index.ts diff --git a/src/domain/post/remove/isNotOwner.ts b/development/social/domain/post/remove/isNotOwner.ts similarity index 100% rename from src/domain/post/remove/isNotOwner.ts rename to development/social/domain/post/remove/isNotOwner.ts diff --git a/src/domain/post/remove/publish.ts b/development/social/domain/post/remove/publish.ts similarity index 87% rename from src/domain/post/remove/publish.ts rename to development/social/domain/post/remove/publish.ts index b1084d45..aee957ea 100644 --- a/src/domain/post/remove/publish.ts +++ b/development/social/domain/post/remove/publish.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/post/remove/remove.ts b/development/social/domain/post/remove/remove.ts similarity index 89% rename from src/domain/post/remove/remove.ts rename to development/social/domain/post/remove/remove.ts index 1d9b46ee..85eccfd8 100644 --- a/src/domain/post/remove/remove.ts +++ b/development/social/domain/post/remove/remove.ts @@ -1,8 +1,8 @@ -import logger from '^/integrations/logging'; +import logger from '@comify/common/integrations/logging'; import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import getById from '../getById'; import deleteData from './deleteData'; diff --git a/src/domain/post/remove/subscribe.ts b/development/social/domain/post/remove/subscribe.ts similarity index 86% rename from src/domain/post/remove/subscribe.ts rename to development/social/domain/post/remove/subscribe.ts index fd46f25b..2e87af31 100644 --- a/src/domain/post/remove/subscribe.ts +++ b/development/social/domain/post/remove/subscribe.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/post/remove/types.ts b/development/social/domain/post/remove/types.ts similarity index 100% rename from src/domain/post/remove/types.ts rename to development/social/domain/post/remove/types.ts diff --git a/src/domain/post/remove/undeleteData.ts b/development/social/domain/post/remove/undeleteData.ts similarity index 73% rename from src/domain/post/remove/undeleteData.ts rename to development/social/domain/post/remove/undeleteData.ts index e99c0aea..c6bd587a 100644 --- a/src/domain/post/remove/undeleteData.ts +++ b/development/social/domain/post/remove/undeleteData.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/post/types.ts b/development/social/domain/post/types.ts similarity index 100% rename from src/domain/post/types.ts rename to development/social/domain/post/types.ts diff --git a/src/domain/post/update/index.ts b/development/social/domain/post/update/index.ts similarity index 100% rename from src/domain/post/update/index.ts rename to development/social/domain/post/update/index.ts diff --git a/src/domain/post/update/update.ts b/development/social/domain/post/update/update.ts similarity index 77% rename from src/domain/post/update/update.ts rename to development/social/domain/post/update/update.ts index 43cc4d5c..958c266a 100644 --- a/src/domain/post/update/update.ts +++ b/development/social/domain/post/update/update.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/development/social/domain/rating/create/InvalidRating.ts b/development/social/domain/rating/create/InvalidRating.ts new file mode 100644 index 00000000..57516091 --- /dev/null +++ b/development/social/domain/rating/create/InvalidRating.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidRating extends ValidationError +{ + +} diff --git a/src/domain/rating/create/create.ts b/development/social/domain/rating/create/create.ts similarity index 100% rename from src/domain/rating/create/create.ts rename to development/social/domain/rating/create/create.ts diff --git a/src/domain/rating/create/createData.ts b/development/social/domain/rating/create/createData.ts similarity index 77% rename from src/domain/rating/create/createData.ts rename to development/social/domain/rating/create/createData.ts index 0b3febc0..de4cf2e7 100644 --- a/src/domain/rating/create/createData.ts +++ b/development/social/domain/rating/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/rating/create/index.ts b/development/social/domain/rating/create/index.ts similarity index 100% rename from src/domain/rating/create/index.ts rename to development/social/domain/rating/create/index.ts diff --git a/development/social/domain/rating/create/insertData.ts b/development/social/domain/rating/create/insertData.ts new file mode 100644 index 00000000..6a519f76 --- /dev/null +++ b/development/social/domain/rating/create/insertData.ts @@ -0,0 +1,10 @@ + +import database from '@comify/common/integrations/database'; + +import { RECORD_TYPE } from '../definitions'; +import type { DataModel } from '../types'; + +export default async function insertData(data: DataModel): Promise +{ + return database.createRecord(RECORD_TYPE, data); +} diff --git a/src/domain/rating/create/types.ts b/development/social/domain/rating/create/types.ts similarity index 100% rename from src/domain/rating/create/types.ts rename to development/social/domain/rating/create/types.ts diff --git a/src/domain/rating/create/validateData.ts b/development/social/domain/rating/create/validateData.ts similarity index 88% rename from src/domain/rating/create/validateData.ts rename to development/social/domain/rating/create/validateData.ts index 294dc5b6..ac2f183b 100644 --- a/src/domain/rating/create/validateData.ts +++ b/development/social/domain/rating/create/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { requiredIdValidation } from '^/domain/definitions'; diff --git a/src/domain/rating/definitions.ts b/development/social/domain/rating/definitions.ts similarity index 100% rename from src/domain/rating/definitions.ts rename to development/social/domain/rating/definitions.ts diff --git a/src/domain/rating/erase/erase.ts b/development/social/domain/rating/erase/erase.ts similarity index 72% rename from src/domain/rating/erase/erase.ts rename to development/social/domain/rating/erase/erase.ts index 21c4e77d..3b4c427d 100644 --- a/src/domain/rating/erase/erase.ts +++ b/development/social/domain/rating/erase/erase.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/rating/erase/index.ts b/development/social/domain/rating/erase/index.ts similarity index 100% rename from src/domain/rating/erase/index.ts rename to development/social/domain/rating/erase/index.ts diff --git a/src/domain/rating/exists/exists.ts b/development/social/domain/rating/exists/exists.ts similarity index 87% rename from src/domain/rating/exists/exists.ts rename to development/social/domain/rating/exists/exists.ts index 615034a1..4ff58192 100644 --- a/src/domain/rating/exists/exists.ts +++ b/development/social/domain/rating/exists/exists.ts @@ -1,7 +1,7 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/rating/exists/index.ts b/development/social/domain/rating/exists/index.ts similarity index 100% rename from src/domain/rating/exists/index.ts rename to development/social/domain/rating/exists/index.ts diff --git a/src/domain/rating/index.ts b/development/social/domain/rating/index.ts similarity index 100% rename from src/domain/rating/index.ts rename to development/social/domain/rating/index.ts diff --git a/src/domain/rating/toggle/definitions.ts b/development/social/domain/rating/toggle/definitions.ts similarity index 100% rename from src/domain/rating/toggle/definitions.ts rename to development/social/domain/rating/toggle/definitions.ts diff --git a/src/domain/rating/toggle/getData.ts b/development/social/domain/rating/toggle/getData.ts similarity index 88% rename from src/domain/rating/toggle/getData.ts rename to development/social/domain/rating/toggle/getData.ts index 58f897f0..60965ffd 100644 --- a/src/domain/rating/toggle/getData.ts +++ b/development/social/domain/rating/toggle/getData.ts @@ -1,7 +1,7 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/rating/toggle/index.ts b/development/social/domain/rating/toggle/index.ts similarity index 100% rename from src/domain/rating/toggle/index.ts rename to development/social/domain/rating/toggle/index.ts diff --git a/src/domain/rating/toggle/publish.ts b/development/social/domain/rating/toggle/publish.ts similarity index 87% rename from src/domain/rating/toggle/publish.ts rename to development/social/domain/rating/toggle/publish.ts index 1f96ffd4..d0c997c6 100644 --- a/src/domain/rating/toggle/publish.ts +++ b/development/social/domain/rating/toggle/publish.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/rating/toggle/subscribe.ts b/development/social/domain/rating/toggle/subscribe.ts similarity index 86% rename from src/domain/rating/toggle/subscribe.ts rename to development/social/domain/rating/toggle/subscribe.ts index 3b4dbd34..7c438631 100644 --- a/src/domain/rating/toggle/subscribe.ts +++ b/development/social/domain/rating/toggle/subscribe.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/rating/toggle/switchOff.ts b/development/social/domain/rating/toggle/switchOff.ts similarity index 100% rename from src/domain/rating/toggle/switchOff.ts rename to development/social/domain/rating/toggle/switchOff.ts diff --git a/src/domain/rating/toggle/switchOn.ts b/development/social/domain/rating/toggle/switchOn.ts similarity index 100% rename from src/domain/rating/toggle/switchOn.ts rename to development/social/domain/rating/toggle/switchOn.ts diff --git a/src/domain/rating/toggle/toggle.ts b/development/social/domain/rating/toggle/toggle.ts similarity index 88% rename from src/domain/rating/toggle/toggle.ts rename to development/social/domain/rating/toggle/toggle.ts index 9b9d023c..6c4ee2db 100644 --- a/src/domain/rating/toggle/toggle.ts +++ b/development/social/domain/rating/toggle/toggle.ts @@ -1,6 +1,6 @@ import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import getData from './getData'; import switchOff from './switchOff'; diff --git a/src/domain/rating/toggle/types.ts b/development/social/domain/rating/toggle/types.ts similarity index 100% rename from src/domain/rating/toggle/types.ts rename to development/social/domain/rating/toggle/types.ts diff --git a/src/domain/rating/types.ts b/development/social/domain/rating/types.ts similarity index 100% rename from src/domain/rating/types.ts rename to development/social/domain/rating/types.ts diff --git a/src/domain/relation/aggregate/aggregate.ts b/development/social/domain/relation/aggregate/aggregate.ts similarity index 89% rename from src/domain/relation/aggregate/aggregate.ts rename to development/social/domain/relation/aggregate/aggregate.ts index fbfc8624..8b93dd2a 100644 --- a/src/domain/relation/aggregate/aggregate.ts +++ b/development/social/domain/relation/aggregate/aggregate.ts @@ -1,6 +1,6 @@ import getCreatorData from '^/domain/creator/getByIdAggregated'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { DataModel } from '../types'; import type { AggregatedData } from './types'; diff --git a/src/domain/relation/aggregate/index.ts b/development/social/domain/relation/aggregate/index.ts similarity index 100% rename from src/domain/relation/aggregate/index.ts rename to development/social/domain/relation/aggregate/index.ts diff --git a/src/domain/relation/aggregate/types.ts b/development/social/domain/relation/aggregate/types.ts similarity index 100% rename from src/domain/relation/aggregate/types.ts rename to development/social/domain/relation/aggregate/types.ts diff --git a/development/social/domain/relation/create/InvalidRelation.ts b/development/social/domain/relation/create/InvalidRelation.ts new file mode 100644 index 00000000..9f35f3c2 --- /dev/null +++ b/development/social/domain/relation/create/InvalidRelation.ts @@ -0,0 +1,7 @@ + +import { ValidationError } from '@comify/common/integrations/errors'; + +export default class InvalidRelation extends ValidationError +{ + +} diff --git a/src/domain/relation/create/create.ts b/development/social/domain/relation/create/create.ts similarity index 100% rename from src/domain/relation/create/create.ts rename to development/social/domain/relation/create/create.ts diff --git a/src/domain/relation/create/createData.ts b/development/social/domain/relation/create/createData.ts similarity index 74% rename from src/domain/relation/create/createData.ts rename to development/social/domain/relation/create/createData.ts index e1b65d19..b60a707f 100644 --- a/src/domain/relation/create/createData.ts +++ b/development/social/domain/relation/create/createData.ts @@ -1,5 +1,5 @@ -import { generateId } from '^/integrations/utilities/crypto'; +import { generateId } from '@comify/common/integrations/utilities/crypto'; import type { DataModel } from '../types'; diff --git a/src/domain/relation/create/index.ts b/development/social/domain/relation/create/index.ts similarity index 100% rename from src/domain/relation/create/index.ts rename to development/social/domain/relation/create/index.ts diff --git a/development/social/domain/relation/create/insertData.ts b/development/social/domain/relation/create/insertData.ts new file mode 100644 index 00000000..6a519f76 --- /dev/null +++ b/development/social/domain/relation/create/insertData.ts @@ -0,0 +1,10 @@ + +import database from '@comify/common/integrations/database'; + +import { RECORD_TYPE } from '../definitions'; +import type { DataModel } from '../types'; + +export default async function insertData(data: DataModel): Promise +{ + return database.createRecord(RECORD_TYPE, data); +} diff --git a/src/domain/relation/create/types.ts b/development/social/domain/relation/create/types.ts similarity index 100% rename from src/domain/relation/create/types.ts rename to development/social/domain/relation/create/types.ts diff --git a/src/domain/relation/create/validateData.ts b/development/social/domain/relation/create/validateData.ts similarity index 90% rename from src/domain/relation/create/validateData.ts rename to development/social/domain/relation/create/validateData.ts index 327f949b..30f7459e 100644 --- a/src/domain/relation/create/validateData.ts +++ b/development/social/domain/relation/create/validateData.ts @@ -1,7 +1,7 @@ import type { ValidationSchema } from '@theshelf/validation'; -import validator from '^/integrations/validation'; +import validator from '@comify/common/integrations/validation'; import { requiredIdValidation } from '^/domain/definitions'; diff --git a/src/domain/relation/definitions.ts b/development/social/domain/relation/definitions.ts similarity index 100% rename from src/domain/relation/definitions.ts rename to development/social/domain/relation/definitions.ts diff --git a/src/domain/relation/erase/erase.ts b/development/social/domain/relation/erase/erase.ts similarity index 71% rename from src/domain/relation/erase/erase.ts rename to development/social/domain/relation/erase/erase.ts index 01ce3d10..2e0d4def 100644 --- a/src/domain/relation/erase/erase.ts +++ b/development/social/domain/relation/erase/erase.ts @@ -1,6 +1,6 @@ -import database from '^/integrations/database'; -import logger from '^/integrations/logging'; +import database from '@comify/common/integrations/database'; +import logger from '@comify/common/integrations/logging'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/relation/erase/index.ts b/development/social/domain/relation/erase/index.ts similarity index 100% rename from src/domain/relation/erase/index.ts rename to development/social/domain/relation/erase/index.ts diff --git a/src/domain/relation/establish/RelationAlreadyExists.ts b/development/social/domain/relation/establish/RelationAlreadyExists.ts similarity index 71% rename from src/domain/relation/establish/RelationAlreadyExists.ts rename to development/social/domain/relation/establish/RelationAlreadyExists.ts index 92a18fe4..3bd98ca2 100644 --- a/src/domain/relation/establish/RelationAlreadyExists.ts +++ b/development/social/domain/relation/establish/RelationAlreadyExists.ts @@ -1,5 +1,5 @@ -import { BadRequest } from '^/integrations/errors'; +import { BadRequest } from '@comify/common/integrations/errors'; export default class RelationAlreadyExists extends BadRequest { diff --git a/src/domain/relation/establish/definitions.ts b/development/social/domain/relation/establish/definitions.ts similarity index 100% rename from src/domain/relation/establish/definitions.ts rename to development/social/domain/relation/establish/definitions.ts diff --git a/src/domain/relation/establish/establish.ts b/development/social/domain/relation/establish/establish.ts similarity index 89% rename from src/domain/relation/establish/establish.ts rename to development/social/domain/relation/establish/establish.ts index 568ec1e1..72c649fd 100644 --- a/src/domain/relation/establish/establish.ts +++ b/development/social/domain/relation/establish/establish.ts @@ -1,9 +1,9 @@ -import logger from '^/integrations/logging'; +import logger from '@comify/common/integrations/logging'; import type { Requester } from '^/domain/authentication'; import getCreator from '^/domain/creator/getById'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import create from '../create'; import erase from '../erase'; diff --git a/src/domain/relation/establish/index.ts b/development/social/domain/relation/establish/index.ts similarity index 100% rename from src/domain/relation/establish/index.ts rename to development/social/domain/relation/establish/index.ts diff --git a/src/domain/relation/establish/publish.ts b/development/social/domain/relation/establish/publish.ts similarity index 87% rename from src/domain/relation/establish/publish.ts rename to development/social/domain/relation/establish/publish.ts index 3eda3abd..cf82092e 100644 --- a/src/domain/relation/establish/publish.ts +++ b/development/social/domain/relation/establish/publish.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/relation/establish/subscribe.ts b/development/social/domain/relation/establish/subscribe.ts similarity index 87% rename from src/domain/relation/establish/subscribe.ts rename to development/social/domain/relation/establish/subscribe.ts index 48e36424..87a1c575 100644 --- a/src/domain/relation/establish/subscribe.ts +++ b/development/social/domain/relation/establish/subscribe.ts @@ -1,5 +1,5 @@ -import eventBroker from '^/integrations/eventBroker'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { EVENT_CHANNEL } from '../definitions'; import { EVENT_NAME } from './definitions'; diff --git a/src/domain/relation/establish/types.ts b/development/social/domain/relation/establish/types.ts similarity index 100% rename from src/domain/relation/establish/types.ts rename to development/social/domain/relation/establish/types.ts diff --git a/src/domain/relation/exists/exists.ts b/development/social/domain/relation/exists/exists.ts similarity index 87% rename from src/domain/relation/exists/exists.ts rename to development/social/domain/relation/exists/exists.ts index 8023a722..4d4c82e0 100644 --- a/src/domain/relation/exists/exists.ts +++ b/development/social/domain/relation/exists/exists.ts @@ -1,7 +1,7 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; diff --git a/src/domain/relation/exists/index.ts b/development/social/domain/relation/exists/index.ts similarity index 100% rename from src/domain/relation/exists/index.ts rename to development/social/domain/relation/exists/index.ts diff --git a/src/domain/relation/explore/explore.ts b/development/social/domain/relation/explore/explore.ts similarity index 93% rename from src/domain/relation/explore/explore.ts rename to development/social/domain/relation/explore/explore.ts index 520de360..1eba391f 100644 --- a/src/domain/relation/explore/explore.ts +++ b/development/social/domain/relation/explore/explore.ts @@ -1,7 +1,7 @@ import type { Requester } from '^/domain/authentication'; import getOtherCreators from '^/domain/creator/getOthers'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { SortOrder } from '../definitions'; import getFollowing from '../getFollowing'; diff --git a/src/domain/relation/explore/index.ts b/development/social/domain/relation/explore/index.ts similarity index 100% rename from src/domain/relation/explore/index.ts rename to development/social/domain/relation/explore/index.ts diff --git a/src/domain/relation/exploreAggregated/exploreAggregated.ts b/development/social/domain/relation/exploreAggregated/exploreAggregated.ts similarity index 92% rename from src/domain/relation/exploreAggregated/exploreAggregated.ts rename to development/social/domain/relation/exploreAggregated/exploreAggregated.ts index d6d9270e..c644274c 100644 --- a/src/domain/relation/exploreAggregated/exploreAggregated.ts +++ b/development/social/domain/relation/exploreAggregated/exploreAggregated.ts @@ -2,7 +2,7 @@ import type { Requester } from '^/domain/authentication'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/relation/exploreAggregated/index.ts b/development/social/domain/relation/exploreAggregated/index.ts similarity index 100% rename from src/domain/relation/exploreAggregated/index.ts rename to development/social/domain/relation/exploreAggregated/index.ts diff --git a/src/domain/relation/get/get.ts b/development/social/domain/relation/get/get.ts similarity index 89% rename from src/domain/relation/get/get.ts rename to development/social/domain/relation/get/get.ts index 037c05b4..adc0ede6 100644 --- a/src/domain/relation/get/get.ts +++ b/development/social/domain/relation/get/get.ts @@ -1,7 +1,7 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/relation/get/index.ts b/development/social/domain/relation/get/index.ts similarity index 100% rename from src/domain/relation/get/index.ts rename to development/social/domain/relation/get/index.ts diff --git a/src/domain/relation/getAggregated/getAggregated.ts b/development/social/domain/relation/getAggregated/getAggregated.ts similarity index 87% rename from src/domain/relation/getAggregated/getAggregated.ts rename to development/social/domain/relation/getAggregated/getAggregated.ts index 5af6c16a..c25435dd 100644 --- a/src/domain/relation/getAggregated/getAggregated.ts +++ b/development/social/domain/relation/getAggregated/getAggregated.ts @@ -1,6 +1,6 @@ import type { Requester } from '^/domain/authentication'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/relation/getAggregated/index.ts b/development/social/domain/relation/getAggregated/index.ts similarity index 100% rename from src/domain/relation/getAggregated/index.ts rename to development/social/domain/relation/getAggregated/index.ts diff --git a/src/domain/relation/getFollowers/getFollowers.ts b/development/social/domain/relation/getFollowers/getFollowers.ts similarity index 100% rename from src/domain/relation/getFollowers/getFollowers.ts rename to development/social/domain/relation/getFollowers/getFollowers.ts diff --git a/src/domain/relation/getFollowers/index.ts b/development/social/domain/relation/getFollowers/index.ts similarity index 100% rename from src/domain/relation/getFollowers/index.ts rename to development/social/domain/relation/getFollowers/index.ts diff --git a/src/domain/relation/getFollowers/retrieveData.ts b/development/social/domain/relation/getFollowers/retrieveData.ts similarity index 88% rename from src/domain/relation/getFollowers/retrieveData.ts rename to development/social/domain/relation/getFollowers/retrieveData.ts index e15ff9ad..bd548456 100644 --- a/src/domain/relation/getFollowers/retrieveData.ts +++ b/development/social/domain/relation/getFollowers/retrieveData.ts @@ -1,7 +1,7 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/relation/getFollowersAggregated/getFollowersAggregated.ts b/development/social/domain/relation/getFollowersAggregated/getFollowersAggregated.ts similarity index 91% rename from src/domain/relation/getFollowersAggregated/getFollowersAggregated.ts rename to development/social/domain/relation/getFollowersAggregated/getFollowersAggregated.ts index 03017f8a..ca98f654 100644 --- a/src/domain/relation/getFollowersAggregated/getFollowersAggregated.ts +++ b/development/social/domain/relation/getFollowersAggregated/getFollowersAggregated.ts @@ -2,7 +2,7 @@ import type { Requester } from '^/domain/authentication'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/relation/getFollowersAggregated/index.ts b/development/social/domain/relation/getFollowersAggregated/index.ts similarity index 100% rename from src/domain/relation/getFollowersAggregated/index.ts rename to development/social/domain/relation/getFollowersAggregated/index.ts diff --git a/src/domain/relation/getFollowing/getFollowing.ts b/development/social/domain/relation/getFollowing/getFollowing.ts similarity index 100% rename from src/domain/relation/getFollowing/getFollowing.ts rename to development/social/domain/relation/getFollowing/getFollowing.ts diff --git a/src/domain/relation/getFollowing/index.ts b/development/social/domain/relation/getFollowing/index.ts similarity index 100% rename from src/domain/relation/getFollowing/index.ts rename to development/social/domain/relation/getFollowing/index.ts diff --git a/src/domain/relation/getFollowing/retrieveData.ts b/development/social/domain/relation/getFollowing/retrieveData.ts similarity index 89% rename from src/domain/relation/getFollowing/retrieveData.ts rename to development/social/domain/relation/getFollowing/retrieveData.ts index 42edd554..66fc9750 100644 --- a/src/domain/relation/getFollowing/retrieveData.ts +++ b/development/social/domain/relation/getFollowing/retrieveData.ts @@ -1,7 +1,7 @@ import type { RecordQuery } from '@theshelf/database'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '../definitions'; import type { DataModel } from '../types'; diff --git a/src/domain/relation/getFollowingAggregated/getFollowingAggregated.ts b/development/social/domain/relation/getFollowingAggregated/getFollowingAggregated.ts similarity index 91% rename from src/domain/relation/getFollowingAggregated/getFollowingAggregated.ts rename to development/social/domain/relation/getFollowingAggregated/getFollowingAggregated.ts index 0ec87187..b02a7353 100644 --- a/src/domain/relation/getFollowingAggregated/getFollowingAggregated.ts +++ b/development/social/domain/relation/getFollowingAggregated/getFollowingAggregated.ts @@ -2,7 +2,7 @@ import type { Requester } from '^/domain/authentication'; import type { Range } from '^/domain/common/validateRange'; import validateRange from '^/domain/common/validateRange'; -import type { Tenant } from '^/domain/tenant'; +import type { Tenant } from '@comify/common/domain/tenant'; import type { AggregatedData } from '../aggregate'; import aggregate from '../aggregate'; diff --git a/src/domain/relation/getFollowingAggregated/index.ts b/development/social/domain/relation/getFollowingAggregated/index.ts similarity index 100% rename from src/domain/relation/getFollowingAggregated/index.ts rename to development/social/domain/relation/getFollowingAggregated/index.ts diff --git a/src/domain/relation/index.ts b/development/social/domain/relation/index.ts similarity index 100% rename from src/domain/relation/index.ts rename to development/social/domain/relation/index.ts diff --git a/src/domain/relation/translateToRequester/index.ts b/development/social/domain/relation/translateToRequester/index.ts similarity index 100% rename from src/domain/relation/translateToRequester/index.ts rename to development/social/domain/relation/translateToRequester/index.ts diff --git a/src/domain/relation/translateToRequester/translate.ts b/development/social/domain/relation/translateToRequester/translate.ts similarity index 100% rename from src/domain/relation/translateToRequester/translate.ts rename to development/social/domain/relation/translateToRequester/translate.ts diff --git a/src/domain/relation/translateToRequester/translateToRequester.ts b/development/social/domain/relation/translateToRequester/translateToRequester.ts similarity index 100% rename from src/domain/relation/translateToRequester/translateToRequester.ts rename to development/social/domain/relation/translateToRequester/translateToRequester.ts diff --git a/src/domain/relation/translateToRequester/types.ts b/development/social/domain/relation/translateToRequester/types.ts similarity index 100% rename from src/domain/relation/translateToRequester/types.ts rename to development/social/domain/relation/translateToRequester/types.ts diff --git a/src/domain/relation/types.ts b/development/social/domain/relation/types.ts similarity index 100% rename from src/domain/relation/types.ts rename to development/social/domain/relation/types.ts diff --git a/src/domain/types.ts b/development/social/domain/types.ts similarity index 100% rename from src/domain/types.ts rename to development/social/domain/types.ts diff --git a/development/social/package.json b/development/social/package.json new file mode 100644 index 00000000..d47257c0 --- /dev/null +++ b/development/social/package.json @@ -0,0 +1,14 @@ +{ + "name": "@comify/social", + "private": true, + "version": "0.0.1", + "type": "module", + "scripts": { + "dev": "vite --config app/vite.config.js", + "build": "npm run clean && npm run build-domain && npm run build-app", + "build-app": "vite build --config app/vite.config.js", + "build-domain": "tsc && tsc-alias", + "clean": "rimraf ../../artifacts/build/social", + "lint": "eslint" + } +} diff --git a/development/social/tsconfig.json b/development/social/tsconfig.json new file mode 100644 index 00000000..543eea36 --- /dev/null +++ b/development/social/tsconfig.json @@ -0,0 +1,16 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "composite": true, + "rootDir": "./", + "outDir": "../../artifacts/build/social", + "paths": { + "^/*": ["./*"], + "@comify/common/*": ["../common/*"] + } + }, + "references": [ + { "path" : "../common" } + ], + "include": ["./domain"] +} \ No newline at end of file diff --git a/development/tsconfig.json b/development/tsconfig.json new file mode 100644 index 00000000..8b4ff642 --- /dev/null +++ b/development/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "../tsconfig.json" +} \ No newline at end of file diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index 5d183cc9..00000000 --- a/docs/README.md +++ /dev/null @@ -1,141 +0,0 @@ - -# Comify docs - -Hi, welcome to the Comify documentation. 👋 - -Here you'll find all the technical details on how we are building the application. We'll start with the fundamentals below. From there you can zoom in at any part for the details. - -## Architecture - -At the heart of any application lies architecture. To explain ours, we found inspiration from the [C4 model](https://c4model.com/) and added our own sauce. - -### Context - -Comify runs as a stand-alone application and hasn't many external dependencies (yet?). The most important one is the `Creator` that represents the end-user. Without it, the application doesn't have any value. Secondly we're outsourcing the identity and access management (IAM) to save on development that doesn't add business value. - -Application context - -**Note:** We use OpenID Connect for the IAM integration. - -### Shadows - -The application has two shadows. Each shadow contains content related to the application. - -Application shadows - -If you're reading this, then you've already found the docs. This is the darkest shadow, because it's the furthest away from the code. The tests are more code related, and can be found in the `test` folder in the project root. The application itself is placed in the `src` folder also in the project root. - -The structure of the shadows mimic the application structure to make navigating them easy. This structure is explained in the containers section below. - -### Containers - -The application is divided into multiple parts, called containers. We have these four. - -Application containers - -Let's look at their usages and responsibilities. - -* [**Web UI**](./webui/) - Contains the web based interface for user interaction (SPA). -* [**Assets**](./assets/) - Contains shared things like images, downloads, etc... -* [**Domain**](./domain/) - Contains business related components like business logic, data entities, etc.. -* [**Integrations**](./integrations/) - Contains implementations for IAM, database, etc.. - -Each part has its own folder in the application (and its shadows). For more detailed information you can click on their names. - -## Technology stack - -The project is 100% [TypeScript](https://www.typescriptlang.org/) based. - -**Runtime requirements** - -* [Node.js](https://nodejs.org/) as runtime (version 20+). -* [Docker](https://www.docker.com/) for additional services. - -**Main dependencies** - -* [Jitar](http://jitar.dev) for E2E communication and scaling concerns. -* [React](https://react.dev) for the frontend. - -All backend components are written in pure TypeScript without a framework. - -**Additional services** - -* [MongoDB](https://www.mongodb.com/) as database. -* [MinIO](https://min.io/) as file store (images). -* [Keycloak](https://www.keycloak.org/) as identity and access manager. - -## Configuration - -The application has several configuration options. You can find them here. - -### Environment - -For both the application and Docker services we've set up environment variables that can be managed from a single configuration file. An example of this file is located in the root of the project with the name `example.env`. - -**Note:** The project uses the `development.env` file for development. - -### Segments - -The domain container can be split into multiple segments for scalability reasons like deployment, load balancing and fail over. This is a feature provided by Jitar, more information on this can be found in the [documentation](https://docs.jitar.dev/deploy/segmentation.html). The configuration files can be found in the `segments` folder in the project root. - -We use a backend for frontend (BFF) segmentation strategy. The `bff.json` file exposes all functions that can be remotely accessed by the frontend. The other segment files are used to demonstrate two deployment strategies: - -1. vertical slicing (`notification.json`) -1. horizontal slicing (`reads.json` and `writes.json`) - -Based on this segmentation model, the application can run in a monolithic and microservice fashion. - -### Resources - -The application uses resources like a database, file store, event broker, etc. that need to be defined in Jitar for sharing them across segments that are running on the same node. More information on this can be found in the [documentation](https://docs.jitar.dev/deploy/resources.html). The configuration files can be found in the `resources` folder in the project root. - -### Services - -Jitar provides [multiple services](https://docs.jitar.dev/fundamentals/runtime-services.html) to deploy applications with different strategies. Currently, we have configurations for running the application as a monolith and as microservices. The configuration files can de found in the `services` folder in the project root. - -The `standalone.json` configuration file configures the monolithic deployment. All other files configure the microservice setup. - -## Getting started - -Before you start, make sure you meet all the runtime requirements. Follow these instructions next. - -1. Run `npm install` from a terminal to install the dependencies. -1. Copy the `example.env` file to a `development.env` file. -1. Run `npm run build` to build the application. -1. Run `npm run standalone` to run Jitar at port 3000. - -To start the application you need to open a new terminal and run `npm run dev`. Now a [Vite](https://vitest.dev/) dev server is running on port 5173. You can then navigate to to open the application. - -To stop the application you can press CONTROL+C in both terminals. - -### Build & run - -To build and run the application you can keep using the `npm run build` and `npm run standalone` commands. For convenience both commands are combined in the following command: `npm run rebuild`. - -### Test & lint - -To run the tests you can use the `npm run test` command. You can also run the linter with the `npm run lint` command. For convenience the **build**, **test** and **lint** commands are combined in the following command: `npm run review`. - -### Run without Vite - -If you want to run the application without a Vite dev server, you can change the port number in the `AUTHENTICATION_CLIENT_URI` environment variable to `3000`. After that you can start the application again as standalone and navigate to to open the application. - -### Run as microservices - -For running the application as microservices, you need to start some additional helper services: - -* Proxy - central access point for the web browser. -* Repository - provider for static assets. -* Gateway - locator and load balancer for all procedures. - -After that, the segment services can be started. You can follow these instructions: - -1. Start the proxy by running `npm run proxy`. -1. Start the repository by running `npm run repository`. -1. Start the gateway by running `npm run gateway`. -1. Start the BFF service by running `npm run bff`. -1. Start the Notification service by running `npm run notification`. -1. Start the Reads service by running `npm run reads`. -1. Start the Writes service by running `npm run writes`. - -You can then navigate to to open the application via the proxy service. diff --git a/docs/assets/README.md b/docs/assets/README.md deleted file mode 100644 index 62f52f61..00000000 --- a/docs/assets/README.md +++ /dev/null @@ -1,6 +0,0 @@ - -# Assets | Comify docs - -The assets container contains all kind of non-code related things that can be use by the [Web UI](../webui/) and / or the [Domain](../domain/) containers. Currently it only holds the application icon, but sooner or later it will be accompanied by other files like the *privacy statement* and the *terms of use* documents. - -This shadow container serves the same goal. It contains all the images used for the documentation. diff --git a/docs/assets/images/architecture/containers.png b/docs/assets/images/architecture/containers.png deleted file mode 100644 index ab9a08eb..00000000 Binary files a/docs/assets/images/architecture/containers.png and /dev/null differ diff --git a/docs/assets/images/architecture/context.png b/docs/assets/images/architecture/context.png deleted file mode 100644 index e76451cb..00000000 Binary files a/docs/assets/images/architecture/context.png and /dev/null differ diff --git a/docs/assets/images/architecture/shadows.png b/docs/assets/images/architecture/shadows.png deleted file mode 100644 index b81b047d..00000000 Binary files a/docs/assets/images/architecture/shadows.png and /dev/null differ diff --git a/docs/assets/images/domain/modules.png b/docs/assets/images/domain/modules.png deleted file mode 100644 index 31cb794e..00000000 Binary files a/docs/assets/images/domain/modules.png and /dev/null differ diff --git a/docs/assets/images/webui/example.png b/docs/assets/images/webui/example.png deleted file mode 100644 index d7121335..00000000 Binary files a/docs/assets/images/webui/example.png and /dev/null differ diff --git a/docs/assets/images/webui/modules.png b/docs/assets/images/webui/modules.png deleted file mode 100644 index fa63f997..00000000 Binary files a/docs/assets/images/webui/modules.png and /dev/null differ diff --git a/docs/domain/README.md b/docs/domain/README.md deleted file mode 100644 index 17986ca1..00000000 --- a/docs/domain/README.md +++ /dev/null @@ -1,69 +0,0 @@ - -# Domain | Comify docs - -The domain contains the implementation of all business related components. It leverages a procedural approach using [Jitar](https://jitar.dev). - -## Module structure - -We're using a feature-oriented approach. Our root module structure looks like this. - -Web UI module structure - -Basically, it boils down to a root module per domain concept. Each module contains its features. - -A module is implemented as a folder containing an index file that exposes its essentials for consumers. - -## Features - -A feature is a sub-module containing all components required for its implementation. Features vary in size, ranging from small (single components) to large (multiple components), depending on the requirements. - -Every feature exposes its main function as the default export through the index file. Additionally, its types, errors, etc., can be exposed if their consumers require them. - -We aim to keep features as autonomous as possible by encapsulating their internal components. If another feature requires the same component (such as retrieving data by ID), we tend to make a copy on the first occurrence and move the component to its own feature upon multiple occurrences. This decision heavily depends on the complexity of the component. - -## Components - -Components can have different types depending on their responsibilities. Currently, we distinct the following types: - -* **Process** - a series of steps, where each step is a separate component. -* **Task** - handles calculations, data manipulations, etc. -* **Persistence** - responsible for querying, inserting, and updating the database. -* **Aggregation** - gathers all related data. -* **Validation** - ensures incoming data meets the required criteria. -* **Event** - handles publications and subscriptions. - -Each component is implemented in its own file and exported as the default. - -A feature typically contains a combination of these component types. Process components that perform multiple database writes follow the [SAGA pattern](https://microservices.io/patterns/data/saga.html) as described in the [Jitar documentation](https://docs.jitar.dev/develop/data-consistency.html). - -## Data - -Data is defined per domain concept. We distinguish between two types: - -* **Persistent** - data stored in the database. -* **Aggregated** - a data view containing all referenced data. - -Both types are defined as TypeScript types with read-only fields to ensure immutability. - -Persistent data is defined in the `types.ts` file in the root of the domain concept folder, as it is used by multiple features. Aggregated data is defined in the `types.ts` file of the aggregation feature, as it is more specific. - -Persistent data is read and written by persistence components using the database integration. - -## Events - -We use a publish/subscribe model for side effects such as updating counters, creating notifications, etc. - -Features that trigger side effects contain both a **publish** and **subscribe** component. Both components use the event broker integration to manage events. - -The publish component is used as the last step in the process. The subscribe component is exported in the feature's index file for use by other features. - -Features leverage a **subscriptions** component that imports and uses the subscribe components of other features. The subscriptions component is also exported in the feature's index file. - -## Definitions - -Every module (domain, concept, and feature) can have two types of definitions: - -* **Types** - TypeScript types such as data and event definitions, defined in the `types.ts` file. -* **Definitions** - constants such as enums, validation schemas, record types, etc., defined in the `definitions.ts` file. - -The location of a definition depends on its scope of use. For example, the base data model is located in the domain root module, a record type is defined per domain concept, and a validation schema is defined per validation feature. diff --git a/docs/integrations/AUTHENTICATION.md b/docs/integrations/AUTHENTICATION.md deleted file mode 100644 index 1d42319a..00000000 --- a/docs/integrations/AUTHENTICATION.md +++ /dev/null @@ -1,109 +0,0 @@ - -# Authentication | Comify docs - -The authentication integration provides a universal interaction layer with an actual identity provider solution. - -This integration is based on the following authentication flow: - -1. Browser redirects to the IDP login page. -2. User authenticate at the IDP. -3. IDP provides identity information to this integration. -4. This integration starts a session based on the provided identity. -5. Sessions can be refreshed via this integration. -6. Until the user logs out via this integration. - -## Implementations - -Currently, there is only one implementation: - -* **OpenID** - persistent document storage (used in production). - -## Configuration - -The used implementation needs to be configured in the `.env` file, together with the client URL. - -```env -AUTHENTICATION_IMPLEMENTATION="openid" -AUTHENTICATION_CLIENT_URI="http://localhost:5173/identify" -``` - -In case of OpenID, additional configuration is required. - -```env -OPENID_ISSUER="http://localhost:8080/realms/comify" -OPENID_CLIENT_ID="openid" -OPENID_CLIENT_SECRET="" -OPENID_REDIRECT_PATH="/rpc/domain/authentication/login" -OPENID_ALLOW_INSECURE_REQUESTS=true -``` - -## How to use - -An instance of the configured identity provider implementation can be imported for performing authentication operations. - -```ts -import identityProvider from '^/integrations/authentication'; - -// Perform operations with the identityProvider instance -``` - -### Operations - -```ts -import identityProvider, { Session } from '^/integrations/authentication'; - -// Open connection -await identityProvider.connect(); - -// Close connection -await identityProvider.disconnect(); - -// Request the URL of the login page -const loginUrl: string = await identityProvider.getLoginUrl(); - -// Handle a login and get a session -// Throws LoginFailed if not successful -const firstSession: Session = await identityProvider.login(providedIdentity); - -// Refresh a session -// Throws LoginFailed if not successful -const secondSession: Session = await identityProvider.refresh(firstSession); - -// Logout -await identityProvider.logout(secondSession); -``` - -### Session structure - -The session has the following structure. - -```ts -type Session = { - key?: string; - requester?: unknown; - identity: Identity; - accessToken: Token; - refreshToken: Token; - expires: Date; -}; -``` - -Every session has a unique key that will be provided to external clients. This key is an unrelated hash value that contains no session information. It's ony used for referencing and storage. - -The requester represents the actual logged in user retrieved from the identity information (email), and can be stored in the session for quick reference. The full Identity structure looks like this. - -```ts -type Identity = { - name: string; - nickname: string | undefined; - picture: string | undefined; - email: string; - email_verified: boolean; -}; -``` - -The access and refresh tokens can be of any type, but is always represented as string. This depends on the configured implementation. In most cases this will be a JWT. - -```ts -type Token = string; -``` diff --git a/docs/integrations/DATABASE.md b/docs/integrations/DATABASE.md deleted file mode 100644 index 3f24a7b5..00000000 --- a/docs/integrations/DATABASE.md +++ /dev/null @@ -1,120 +0,0 @@ - -# Database | Comify docs - -The database integration provides a universal interaction layer with an actual data storage solution. - -This integration is based on simple CRUD operations and purposely does NOT support relational querying. - -## Implementations - -Currently, there are two implementations: - -* **Memory** - non-persistent in memory storage (used for testing). -* **MongoDB** - persistent document storage (used in production). - -## Configuration - -The used implementation needs to be configured in the `.env` file. - -```env -DATABASE_IMPLEMENTATION="mongodb" # (memory | mongodb) -``` - -In case of MongoDB, additional configuration is required. - -```env -MONGODB_CONNECTION_STRING="mongodb://development:development@localhost:27017" -MONGODB_DATABASE_NAME="comify" -``` - -## How to use - -An instance of the configured implementation can be imported for performing database operations. - -```ts -import database from '^/integrations/database'; - -// Perform operations with the database instance -``` - -### Operations - -```ts -import database, { RecordData, RecordQuery, RecordSort, SortDirections } from '^/integrations/database'; - -// Open connection -await database.connect(); - -// Close connection -await database.disconnect(); - -// INSERT INTO items (name, quantity) VALUES (?, ?) -const id: string = await database.createRecord('items', { name: 'Popcorn', quantity: 3 }); - -// SELECT * FROM items WHERE id = ? -// Throws RecordNotFound if not found -const record: RecordData = await database.readRecord('items', id); - -// SELECT name FROM items WHERE id = ? -const record: RecordData = await database.readRecord('items', id, ['name']); - -// SELECT * FROM items WHERE id = ? LIMIT 1 OFFSET 0 -const records: RecordData | undefined = await database.findRecord('items', { id }); - -// SELECT * FROM items -const records: RecordData[] = await database.searchRecords('items', {}); - -// SELECT name FROM items -const records: RecordData[] = await database.searchRecords('items', {}, ['name']); - -// UPDATE items SET name = ? WHERE id = ? -// Throws RecordNotFound if not found -await database.updateRecord('items', item.id, { 'name': item.name }); - -// DELETE FROM items WHERE id = ? -// Throws RecordNotFound if not found -await database.deleteRecord('items', item.id); - -// SELECT * FROM items WHERE name LIKE "%?%" ORDER BY name ASC LIMIT ? OFFSET ? -const query: RecordQuery = { name: { CONTAINS: name }}; -const sort: RecordSort = { name: SortDirections.ASCENDING }; -const records: RecordData[] = await database.searchRecords('items', query, undefined, sort, limit, offset); - -// SELECT name FROM items WHERE name LIKE "?%" OR name LIKE "%?" ORDER BY name ASC, quantity DESC LIMIT ? OFFSET ?; -const query: RecordQuery = { OR: [ { name: { STARTS_WITH: name } }, { name: { ENDS_WITH: name } } ] }; -const sort: RecordSort = { name: SortDirections.ASCENDING, quantity: SortDirections.DESCENDING }; -const records: RecordData[] = await database.searchRecords('items', query, ['name'], sort, limit, offset); -``` - -### Query options - -A basic query has the following structure. - -```ts -const query: RecordQuery = { fieldName1: { OPERATOR: value }, fieldName2: { OPERATOR: value }, ... } -``` - -The following operators are supported: `EQUALS`, `NOT_EQUALS`, `LESS_THAN`, `LESS_THAN_OR_EQUALS`, `GREATER_THAN`, `GREATER_THAN_OR_EQUALS`, `IN`, `NOT_IN`, `CONTAINS`, `STARTS_WITH`, `ENDS_WITH` - -Multiple queries can be grouped using the logical operators: `AND`, `OR`. - -```ts -const andQuery: RecordQuery = { AND: [ query1, query2, ...] } -const orQuery: RecordQuery = { OR: [ query1, query2, ...] } -``` - -### Sort options - -A basic query has the following structure. - -```ts -const sort: RecordSort = { fieldName1: DIRECTION, fieldName2: DIRECTION, ... }; -``` - -The following directions are supported: `ASCENDING`, `DESCENDING`. Both are defined in the `SortDirections` enum. - -```ts -const sort: RecordSort = { fieldName1: SortDirections.ASCENDING, fieldName2: SortDirections.DESCENDING, ... }; -``` - -The sort will be performed in the configured order. diff --git a/docs/integrations/EVENT_BROKER.md b/docs/integrations/EVENT_BROKER.md deleted file mode 100644 index efe62e6c..00000000 --- a/docs/integrations/EVENT_BROKER.md +++ /dev/null @@ -1,55 +0,0 @@ - -# Event Broker | Comify docs - -The event broker integration provides a universal interaction layer with an actual event broker solution. - -This integration is based on a publish / subscribe model. - -## Implementations - -Currently, there is only one implementation: - -* **Memory** - non-persistent event broker based on the Node.js `EventEmitter` (used in test and production). - -We have plans to add a Kafka implementation later on. - -## Configuration - -The used implementation needs to be configured in the `.env` file. - -```env -EVENT_BROKER_IMPLEMENTATION="memory" -``` - -## How to use - -An instance of the configured event broker implementation can be imported for performing event operations. - -```ts -import eventBroker from '^/integrations/eventbroker'; - -// Perform operations with the eventBroker instance -``` - -### Operations - -```ts -import eventBroker, { Publication, Subscription } from '^/integrations/eventbroker'; - -// Open connection -await eventBroker.connect(); - -// Close connection -await eventBroker.disconnect(); - -// Subscribe to an event -const subscription: Subscription = { channel: 'post', name: 'updated', handler: (postId: string) => { ... } }; -await eventBroker.subscribe(subscription); - -// Publish an event -const publication: Publication = { channel: 'post', name: 'updated', data: { postId: '123' } }; -await eventBroker.publish(publication); - -// Unsubscribe from an event -await eventBroker.unsubscribe(subscription); -``` diff --git a/docs/integrations/FILE_STORE.md b/docs/integrations/FILE_STORE.md deleted file mode 100644 index ba4b081d..00000000 --- a/docs/integrations/FILE_STORE.md +++ /dev/null @@ -1,66 +0,0 @@ - -# File Store | Comify docs - -The file store integration provides a universal interaction layer with an actual file storage solution. - -## Implementations - -Currently, there are two implementations: - -* **Memory** - non-persistent in memory storage (used for testing). -* **Minio** - persistent S3 compatible object storage (used in production). - -## Configuration - -The used implementation needs to be configured in the `.env` file. - -```env -FILE_STORE_IMPLEMENTATION="minio" # (memory | minio) -``` - -In case of Minio, additional configuration is required. - -```env -MINIO_END_POINT="localhost" -MINIO_PORT_NUMBER=9000 -MINIO_USE_SSL=false -MINIO_ACCESS_KEY="development" -MINIO_SECRET_KEY="development" -``` - -## How to use - -An instance of the configured file storage implementation can be imported for performing file operations. - -```ts -import fileStorage from '^/integrations/filestorage'; - -// Perform operations with the fileStorage instance -``` - -### Operations - -```ts -import fileStorage from '^/integrations/filestorage'; - -// Open connection -await fileStorage.connect(); - -// Close connection -await fileStorage.disconnect(); - -// Check if a file exists -const exists: boolean = await fileStorage.hasFile('path/to/file.txt'); - -// Write a file to the storage -const data: Buffer = Buffer.from('Something interesting'); -await fileStorage.writeFile('path/to/file.txt', data); - -// Read a file from storage -// Throws FileNotFound if not found -const data: Buffer = await fileStorage.readFile('path/to/file.txt'); - -// Delete a file from storage -// Throws FileNotFound if not found -await fileStorage.deleteFile('path/to/file.txt'); -``` diff --git a/docs/integrations/HTTP.md b/docs/integrations/HTTP.md deleted file mode 100644 index 3e4fd6f1..00000000 --- a/docs/integrations/HTTP.md +++ /dev/null @@ -1,82 +0,0 @@ - -# HTTP | Comify docs - -The HTTP integration provides a universal interaction layer with an actual HTTP client solution. - -## Implementations - -Currently, there is only one implementation: - -* **Fetch** - Node.js fetch implementation. - -## Configuration - -The used implementation needs to be configured in the `.env` file. - -```env -HTTP_IMPLEMENTATION="fetch" -``` - -## How to use - -An instance of the configured HTTP client implementation can be imported for performing HTTP operations. - -```ts -import httpClient from '^/integrations/http'; - -// Perform operations with the httpClient instance -``` - -### Operations - -```ts -import httpClient, { HTTP_METHODS } from '^/integrations/http'; - -// Set a cached response -const response: Response = new Response(); -httpClient.setCache(HTTP_METHODS.GET, url, response); - -// Get a cached response -const response: Response | undefined = httpClient.getCache(HTTP_METHODS.GET, url); - -// Remove a cached response -httpClient.removeCache(method: string, url: string) - -// Clear all cache -httpClient.clearCache() - -// Perform a GET request -const response: Response = await httpClient.get(url); - -// Perform a GET request with optional headers -const headers: Record = { 'Accept': 'application/json' }; -const response: Response = await httpClient.get(url, headers); - -// Perform a POST request with optional headers -const headers: Record = { 'Content-Type': 'application/json' }; -const response: Response = await httpClient.post(url, data, headers); - -// Perform a PUT request with optional headers -const headers: Record = { 'Content-Type': 'application/json' }; -const response: Response = await httpClient.put(url, data, headers); - -// Perform a PATCH request with optional headers -const headers: Record = { 'Content-Type': 'application/json' }; -const response: Response = await httpClient.patch(url, data, headers); - -// Perform a DELETE request with optional headers -const headers: Record = { }; -const response: Response = await httpClient.delete(url, headers); - -// Perform a HEAD request with optional headers -const headers: Record = { }; -const response: Response = await httpClient.head(url, headers); -``` - -### Response model - -The result of every request is a standard [ECMAScript Response](https://developer.mozilla.org/en-US/docs/Web/API/Response) object. - -### Caching mechanism - -All requests are cached by URL. To prevent this behavior, the cache for the URL must be deleted before performing the request. diff --git a/docs/integrations/LOGGING.md b/docs/integrations/LOGGING.md deleted file mode 100644 index 7188dc7f..00000000 --- a/docs/integrations/LOGGING.md +++ /dev/null @@ -1,66 +0,0 @@ - -# Logging | Comify docs - -The logging integration provides a universal interaction layer with an actual logging solution. - -## Implementations - -Currently, there are two implementations: - -* **Void** - dummy implementation that doesn't log anything (used for testing). -* **Console** - implementation based on the Node.js console (used in production). - -## Configuration - -The used implementation needs to be configured in the `.env` file with the debug enabled setting. - -```env -LOGGING_IMPLEMENTATION="console" # (void | console) -LOGGING_DEBUG_ENABLED=true -``` - -## How to use - -An instance of the configured logger implementation can be imported for performing logging operations. - -```ts -import logger from '^/integrations/logging'; - -// Perform operations with the logger instance -``` - -### Operations - -```ts -import logger from '^/integrations/logging'; - -// Log info -await logger.logInfo(message); - -// Log warning -await logger.logWarn(message); - -// Log error -await logger.logError(message); - -// Log debug information -await logger.logDebug(message); - -// Log multiple messages (works for all levels) -await logger.logInfo(message1, message2, ...); - -// Logging multiple types of values (works for all levels) -await logger.logInfo('string', new Error('Oops...'), 42, [ 'a', 3.14 ], { name: 'John Doe', age: null }); -``` - -### Value interpretation - -Currently, the logger has support for the following types of values: - -* All primitive types -* Null / undefined -* Errors (its stack if available or else its message) -* Arrays (all values will be interpreted and concatenated with a space between them) -* Objects (will be stringyfied) - -In case multiple messages are given, they will be concatenated with a space between them. diff --git a/docs/integrations/NOTIFICATION.md b/docs/integrations/NOTIFICATION.md deleted file mode 100644 index 9b945444..00000000 --- a/docs/integrations/NOTIFICATION.md +++ /dev/null @@ -1,62 +0,0 @@ - -# Notification | Comify docs - -The notification integration provides a universal interaction layer with an actual notification solution. - -This integration is based on a push notification model. - -## Implementations - -Currently, there are two implementations: - -* **Memory** - non-persistent in memory notifications (used for testing). -* **WebPush** - web browser based push notifications (used in production). - -## Configuration - -The used implementation needs to be configured in the `.env` file with the debug enabled setting. - -```env -NOTIFICATION_IMPLEMENTATION="webpush" # (memory | webpush) -``` - -In case of WebPush, additional configuration is required. - -```env -WEBPUSH_VAPID_SUBJECT="..." -WEBPUSH_VAPID_PUBLIC_KEY="..." -WEBPUSH_VAPID_PRIVATE_KEY="..." -``` - -## How to use - -An instance of the configured notification service implementation can be imported for performing notification operations. - -```ts -import notificationService from '^/integrations/notification'; - -// Perform operations with the notificationService instance -``` - -### Operations - -```ts -import notificationService from '^/integrations/notification'; - -// Open connection -await notificationService.connect(); - -// Close connection -await notificationService.disconnect(); - -// Subscribe to receive notifications -await notificationService.subscribe(recipientId); - -// Unsubscribe from receiving notifications -// Throws SubscriptionNotFound if subscription not found. -await notificationService.unsubscribe(recipientId); - -// Send a notification to a recipient -// Throws SubscriptionNotFound if subscription not found. -await notificationService.sendNotification(recipientId, title, body); -``` diff --git a/docs/integrations/README.md b/docs/integrations/README.md deleted file mode 100644 index 4d4516be..00000000 --- a/docs/integrations/README.md +++ /dev/null @@ -1,25 +0,0 @@ - -# Integrations | Comify docs - -The integrations contain interfaces and implementations for decoupling technical concerns and external dependencies from the domain and Web UI containers. - -## Concerns - -Currently, we have dependency integrations for the following concerns: - -* [**Authentication**](./AUTHENTICATION.md) - handles access and identity management. -* [**Database**](./DATABASE.md) - handles storing and retrieving data. -* [**Event broker**](./EVENT_BROKER.md) - handles event management. -* [**File store**](./FILE_STORE.md) - handles storing and retrieving files (comic images). -* [**HTTP**](./HTTP.md) - handles outgoing HTTP requests. -* [**Logging**](./LOGGING.md) - handles application logging. -* [**Notification**](./NOTIFICATION.md) - handles sending notifications to devices. -* [**Runtime**](./RUNTIME.md) - handles the runtime configuration for setting up the infrastructure. -* [**Validation**](./VALIDATION.md) - handles incoming data validation. - -Besides these, we have some smaller integrations for the following utilities: - -* [**Crypto**](../../src/integrations/utilities/crypto.ts) - handles generating hashes and IDs. -* [**Dates**](../../src/integrations/utilities/dates.ts) - handles complex date querying like calculating time elapsed. -* [**Sanitize**](../../src/integrations/utilities/sanitize.ts) - handles sanitizing incoming data. -* [**Web browser**](../../src/integrations/utilities/webbrowser.ts) - handles common web browser-related functions. diff --git a/docs/integrations/RUNTIME.md b/docs/integrations/RUNTIME.md deleted file mode 100644 index a9f32db1..00000000 --- a/docs/integrations/RUNTIME.md +++ /dev/null @@ -1,48 +0,0 @@ - -# Runtime | Comify docs - -The runtime integration provides a universal interaction layer with Jitar and the configuration for setting up the other integrations. - -## Errors - -Both the domain and web UI containers do not depend on Jitar to operate. However, there are certain aspects of Jitar that we want to utilize for better debuggability—specifically, its error handling. - -Jitar automatically creates API endpoints based on the segment configuration. By default, it translates every application error into an Internal Server Error, which is transported with a 500 status code over HTTP. To help Jitar translate application errors into more meaningful status codes, we can leverage its error-handling mechanisms. - -To decouple these errors from the domain, a separate set of errors has been added to this integration, which are used by the domain. Each error is an extension of a Jitar error: - -* **BadRequest** - status code 400 -* **Unauthorized** - status code 401 -* **NotFound** - status code 404 -* **ValidationError** - status code 400 (specialization of BadRequest) -* **ServerError** - status code 500 - -If we decide to migrate from Jitar to another solution, these errors will need to be remapped. - -## Health checks - -Jitar provides a [health check](https://docs.jitar.dev/deploy/health-checks.html) system for monitoring the health of worker nodes. We leverage this system to check the availability of the services behind the integrations: - -* Database -* File store -* Notification - -For each health check, we implemented Jitar's interface. These implementations are located in the `healthchecks` folder. An instance is created and provided to Jitar from the similarly named health check file in the runtime root folder. - -## Middleware - -Jitar provides a [middleware](https://docs.jitar.dev/develop/middleware.html) system for intercepting RPC requests. We leverage this system for authentication. For this we've created two types of middleware: - -* Authentication - server side middleware hooked to the authentication integration -* Requester - client side middleware for browser control - -For each middleware, we implemented Jitar's interface. These implementations are located in the `middleswares` folder. An instance is created and provided to Jitar from the similarly named middleware file in the runtime root folder. - -## Set up and tear down - -Jitar provides a [set-up and tear-down](https://docs.jitar.dev/develop/setup-and-teardown.html) system for executing tasks before starting and stopping a service. We leverage this system for connection / disconnecting the services behind the integrations. We have script for the following two Jitar services: - -* Gateway (authentication) -* Node (database, event broker, file store, notification) - -For each service, we implemented a separate set-up and tear-down script in the runtime root folder. diff --git a/docs/integrations/VALIDATION.md b/docs/integrations/VALIDATION.md deleted file mode 100644 index e3df929e..00000000 --- a/docs/integrations/VALIDATION.md +++ /dev/null @@ -1,96 +0,0 @@ - -# Validation | Comify docs - -The validation integration provides a universal interaction layer with an actual data validation solution. - -## Implementations - -Currently, there is only one implementation: - -* **Zod** - implementation for the currently popular Zod library (used in test and production). - -## Configuration - -The used implementation needs to be configured in the `.env` file. - -```env -VALIDATION_IMPLEMENTATION="zod" -``` - -## How to use - -An instance of the configured validator implementation can be imported for performing validation operations. - -```ts -import validator from '^/integrations/validation'; - -// Perform operations with the validator instance -``` - -### Operations - -```ts -import validator, { ValidationSchema, ValidationResult } from '^/integrations/validation'; - -const data = { - name: 'John Doe', - age: '42' -}; - -const schema: ValidationSchema = { - name: { message: 'Invalid name', STRING: { required: true, minLength: 4, maxLength: 40 } }, - nickname: { message: 'Invalid nickname', STRING: { required: false, , pattern: '^[a-z]+$' } }, - age: { message: 'Invalid age', NUMBER: { required: true, minValue: 18, maxValue: 99 } } -}; - -// Validate data -const result: ValidationResult = validator.validate(data, schema); -``` - -### Validation scheme options - -A basic validation scheme has the following structure. - -```ts -const schema: ValidationSchema = { - fieldName1: { TYPE: { /* type options */ } }, - fieldName2: { TYPE: { /* type options */ } }, - ... -} -``` - -**Note** that a custom validation error `message` can optionally be set per field. - -The following types are supported: - -* **STRING** - * `required: boolean` - * `minLength?: number` - * `maxLength?: number` - * `pattern?: string` -* **NUMBER** - * `required: boolean` - * `minValue?: number` - * `maxValue?: number` -* **ARRAY** - * `required: boolean` - * `minLength?: number` - * `maxLength?: number` - * `validations?: Partial` -* **BOOLEAN** - * `required: boolean` -* **DATE** - * `required: boolean` -* **UUID** - * `required: boolean` -* **EMAIL** - * `required: boolean` -* **URL** - * `required: boolean` - -### Validation result structure - -The validation result has two fields: - -* **invalid** - boolean indicating if at least one of the fields is invalid. -* **messages** - map containing the validation error messages per field. diff --git a/docs/webui/DESIGNSYSTEM.md b/docs/webui/DESIGNSYSTEM.md deleted file mode 100644 index 10dac4a8..00000000 --- a/docs/webui/DESIGNSYSTEM.md +++ /dev/null @@ -1,4 +0,0 @@ - -# Design System | Web UI | Comify docs - -Yet to be written... diff --git a/docs/webui/README.md b/docs/webui/README.md deleted file mode 100644 index 463907b6..00000000 --- a/docs/webui/README.md +++ /dev/null @@ -1,105 +0,0 @@ - -# Web UI | Comify docs - -The Web UI container contains the web based interface for user interaction. It's set up as a single page application (SPA) using [React](https://react.dev). - -## Module structure - -We're using a modular composable approach. Our primary module structure looks like this. - -Web UI module structure - -Let's look at their usages and responsibilities. - -* **Layouts** - templates for building pages. -* **Pages** - composition of features. -* **Features** - interactive composition of components. -* **Components** - small reusable building blocks. - -Each module has its own folder in the `webui` folder and exports its components in an `index.ts` file. - -Besides these, there are some additional modules. - -* **Context** - custom React context providers -* **Design system** - our own simple design system (details provided later) -* **Editor** - implementation of the comic editor -* **Hooks** - custom React hooks -* **Utils** - custom React utils - -## Composition model - -The following example shows the graphical design of the UI showing the users timeline containing comics from followed users. - -Web UI page example - -We'll use this design to explain the composition from layout till components. - -### Layout - -A layout only provide containers for content and do not contain any content themselves. We currently have two layouts: - -1. **Centered** - centers all content both vertically and horizontally. -2. **Sidebar** - two-column layout with a 100% height and centered horizontally. - -The example clearly shows the **Sidebar** layout. - -### Page - -Each page picks a layout and fills its containers. We have a single page per layout because we're using feature based routing: - -1. **Guest** - for non-logged in users (centered layout). -1. **Application** - for logged in users (sidebar layout). - -The example shows the **Application** page. This page has a fixed sidebar coming from the components module. The content is a feature coming from the router. - -### Feature - -Features compose components and make them work as a functional whole. For the largest part the features are implementations of a use-case, like the **Timeline** showed in the example. The other main features are: - -* **Explore** - posts and creators the user isn't following yet. -* **Notifications** - of likes, reactions, followers, etc.. -* **Create** - a new post. -* **Profile** - the users posts, followers and following. - -These features can link to, or contain, sub-features like **PostDetails**, **PostReactions**, etc.. - -At the composition of a feature, actions need to be defined for the components. For example, what needs to happen when the ordering of the overview has changed, or when the follow button is pressed. All available actions are provided as hooks (from the `hooks` module), so they only need to be imported and linked. For example, the `useEstablishRelation` hook is linked as action for the follow button. - -A feature is also responsible for loading data. For this, hooks are also available like the `useNotifications` hook used for the notifications feature. - -### Components - -Components are small reusable building blocks grouped per domain concept. To keep them small, we break them down into smaller pieces. Conceptually we distinguish two types of components: - -1. **Primary** - public (shared) components for building features. -1. **Elementary** - private components for building primary components. - -Our basic design rule: components are dumb! A component can define actions, but does not implement them. Features will provide the implementation, because they know the context of use. - -Also, primary components can be bound to a domain model. Elementary components cannot, because they are even dumber. - -### Design system - -At the core of the design lies a design system that we use for building the pages, features and components. When done correctly, you won't find a trace of standard HTML in them. - -The design system consists for the most part of a set of elements like a button, panel, etc.. But it also has interactive components like a dropdown and tabs. A full description of the design system can be found in a [separate document](./DESIGNSYSTEM.md). - -**Note:** In the future we might move the design system to its own project so we can reuse it for other projects. - -## Other topics - -### Routing - -The routes can be found in the `Routes.tsx` file in the root of the webui folder. They are used in the `App` components that is also placed in the root folder. - -### Contexts - -Currently we only a single context for the application. The `AppContext` only provides the identity of the user. We try to limit the number of contexts, so we hope we can leave it like this. - -### Server communication - -All server communication comes from hooks. A hook is allowed to import and execute a domain function, like establishing a relation. - -Many of the domain functions require a requester object for authorization purposes. We've created a `requester` object to act as placeholder when calling these functions. The authentication middleware will replace this object with the actual requester. - -**Note:** Because we're using Jitar, we can import and call the functions directly and don't have to build API requests. diff --git a/documentation/diagrams/context.cml b/documentation/diagrams/context.cml new file mode 100644 index 00000000..f64210a8 --- /dev/null +++ b/documentation/diagrams/context.cml @@ -0,0 +1,43 @@ +ContextMap SocialMediaMap { + contains SocialContext + contains EventsContext + contains AdministrationContext + contains ModerationContext + contains InsightsContext + + /* * Social is the core. Moderation acts as a 'Protective' layer + * or an Upstream system that Social relies on. + */ + SocialContext [U, S]->[D, C] ModerationContext { + exposedAggregates UserProfiles, Posts + } + + /* * Events context consumes data from Social (new posts, likes) + * to trigger notifications. + */ + SocialContext [U]->[D] EventsContext { + implementationTechnology "Kafka" + } + + /* * Insights usually functions as an Open Host Service (OHS) + * pulling data from multiple upstream sources for analysis. + */ + SocialContext [U, OHS]->[D] InsightsContext + EventsContext [U, OHS]->[D] InsightsContext + + /* * Administration is often a 'Master' context that affects + * Social and Moderation settings. + */ + AdministrationContext [U]->[D] SocialContext + AdministrationContext [U]->[D] ModerationContext +} + +BoundedContext SocialContext { + Aggregate UserProfiles + Aggregate Posts +} + +BoundedContext EventsContext +BoundedContext ModerationContext +BoundedContext AdministrationContext +BoundedContext InsightsContext \ No newline at end of file diff --git a/documentation/diagrams/workspace.dsl b/documentation/diagrams/workspace.dsl new file mode 100644 index 00000000..f7ea4e22 --- /dev/null +++ b/documentation/diagrams/workspace.dsl @@ -0,0 +1,111 @@ +workspace "Name" "Description" { + + !identifiers hierarchical + + model { + // Content users + cv = person "Content Viewer", "Views content anonymously" + cc = person "Content Creator", "Views and creates content" + cmo = person "Content Moderator", "Moderates the content" + cma = person "Content Manager", "Monitors and manages content" + + // Event users + emo = person "Event Moderator", "Selects event content" + ema = person "Event Manager", "Creates, monitors and manages event content" + + // System users + sm = person "System Manager", "Manages the system" + + ss = softwareSystem "Comify" { + // Web applications + swa = container "Social Web Application" + mwa = container "Moderation Web Application" + dwa = container "Dashboard Web Application" + ewa = container "Event Web Application" + awa = container "Administration Web Application" + + // Services + cs = container "Content Service" + ms = container "Moderation Service" + is = container "Insights Service" + es = container "Event Service" + as = container "Administration Service" + + // Databases + sdb = container "Social Database" { + tags "Database" + } + mdb = container "Moderation Database" { + tags "Database" + } + idb = container "Insights Database" { + tags "Database" + } + edb = container "Events Database" { + tags "Database" + } + } + + // Social (core) context relations + cv -> ss.swa "Uses" + cc -> ss.swa "Uses" + ss.swa -> ss.cs "Uses" + ss.cs -> ss.sdb "Reads from and writes to" + + // Moderation context relations + cmo -> ss.mwa "Uses" + ss.mwa -> ss.ms "Uses" + ss.ms -> ss.mdb "Reads from and writes to" + + // Insights context relations + cma -> ss.dwa "Uses" + ss.dwa -> ss.is "Uses" + ss.is -> ss.idb "Reads from and writes to" + + // Event context relations + emo -> ss.ewa "Uses" + ema -> ss.ewa "Uses" + ss.ewa -> ss.es "Uses" + ss.es -> ss.edb "Reads from and writes to" + + // Administration context relations + sm -> ss.awa "Uses" + ss.awa -> ss.as "Uses" + } + + views { + systemContext ss "Context" { + include * + } + + container ss "Container" { + include * + } + + styles { + element "Element" { + color #f88728 + stroke #f88728 + strokeWidth 7 + shape roundedbox + } + element "Person" { + shape person + } + element "Database" { + shape cylinder + } + element "Boundary" { + strokeWidth 5 + } + relationship "Relationship" { + thickness 4 + } + } + } + + configuration { + scope softwaresystem + } + +} \ No newline at end of file diff --git a/example.env b/example.env index 65c9c7be..baa5d76d 100644 --- a/example.env +++ b/example.env @@ -55,7 +55,7 @@ NOTIFICATION_DRIVER="memory" MONGODB_PORT_NUMBER=27017 MONGODB_ROOT_USERNAME="development" MONGODB_ROOT_PASSWORD="development" -MONGODB_INIT_PATH="./docker/mongodb" +MONGODB_INIT_PATH="./deployment/docker/mongodb" # MONGO EXPRESS MONGO_EXPRESS_PORT_NUMBER=8081 @@ -73,8 +73,8 @@ KEYCLOAK_HOSTNAME_STRICT="false" KEYCLOAK_PORT_NUMBER=8080 KEYCLOAK_BOOTSTRAP_ADMIN_USERNAME="development" KEYCLOAK_BOOTSTRAP_ADMIN_PASSWORD="development" -KEYCLOAK_IMPORT_PATH="./docker/keycloak" -KEYCLOAK_THEME_PATH="./docker/keycloak/themes" +KEYCLOAK_IMPORT_PATH="./deployment/docker/keycloak" +KEYCLOAK_THEME_PATH="./deployment/docker/keycloak/themes" KEYCLOAK_GITHUB_CLIENT_ID="development" KEYCLOAK_GITHUB_CLIENT_SECRET="development" KEYCLOAK_GOOGLE_CLIENT_ID="development" diff --git a/jitar.json b/jitar.json index 0b5cfb99..5083665e 100644 --- a/jitar.json +++ b/jitar.json @@ -1,6 +1,6 @@ { - "source": "./dist", - "target": "./dist", - "segments": "./segments", - "resources": "./resources" + "source": "./artifacts/build", + "target": "./artifacts/dist", + "segments": "./deployment/segments", + "resources": "./deployment/resources" } \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 70d7fe82..c71bb670 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,17 @@ { - "name": "comify", - "version": "0.1.4", + "name": "concept", + "version": "0.0.1", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "comify", - "version": "0.1.4", + "name": "concept", + "version": "0.0.1", + "workspaces": [ + "development/insights", + "development/social", + "development/moderation" + ], "dependencies": { "@jitar-plugins/authentication": "0.1.3", "@jitar-plugins/database": "0.1.3", @@ -32,14 +37,14 @@ "@theshelf/validation-driver-zod": "0.4.3", "dayjs": "1.11.20", "jitar": "0.10.7", - "react": "19.2.4", - "react-dom": "19.2.4", - "react-router-dom": "7.13.2" + "react": "19.2.6", + "react-dom": "19.2.6", + "react-router-dom": "7.15.0" }, "devDependencies": { "@eslint/js": "9.39.4", "@jitar/plugin-vite": "0.10.7", - "@types/node": "25.3.0", + "@types/node": "24.10.4", "@types/react": "19.2.14", "@types/react-dom": "19.2.3", "@vitejs/plugin-react": "5.1.4", @@ -57,6 +62,18 @@ "vitest": "4.0.18" } }, + "development/insights": { + "name": "@concept/insights", + "version": "0.0.1" + }, + "development/moderation": { + "name": "@concept/moderation", + "version": "0.0.1" + }, + "development/social": { + "name": "@concept/social", + "version": "0.0.1" + }, "node_modules/@aws-crypto/crc32": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz", @@ -96,31 +113,6 @@ "tslib": "^2.6.2" } }, - "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", - "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", @@ -149,31 +141,6 @@ "tslib": "^2.6.2" } }, - "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", - "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", @@ -221,31 +188,6 @@ "tslib": "^2.6.2" } }, - "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", - "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, - "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", - "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/is-array-buffer": "^2.2.0", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", @@ -260,65 +202,65 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.1019.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1019.0.tgz", - "integrity": "sha512-0pb9x7PPhS4oEi4c0rL3vzQQoXA4cWKtPuGga/UfVYLZ68yrqdq0NDKg0fr55qzdhNvWFCpmGx73g9Iyy03kkA==", + "version": "3.1045.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1045.0.tgz", + "integrity": "sha512-fsuO3Y6t+3Ro9Bsg41DKj4Sfy53CGSrhnMldNplWmG8Tx0UbYk+YDa4RD1hVlJpERw4JBmPkl0+J9qlxMh1pcA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/credential-provider-node": "^3.972.27", - "@aws-sdk/middleware-bucket-endpoint": "^3.972.8", - "@aws-sdk/middleware-expect-continue": "^3.972.8", - "@aws-sdk/middleware-flexible-checksums": "^3.974.5", - "@aws-sdk/middleware-host-header": "^3.972.8", - "@aws-sdk/middleware-location-constraint": "^3.972.8", - "@aws-sdk/middleware-logger": "^3.972.8", - "@aws-sdk/middleware-recursion-detection": "^3.972.9", - "@aws-sdk/middleware-sdk-s3": "^3.972.26", - "@aws-sdk/middleware-ssec": "^3.972.8", - "@aws-sdk/middleware-user-agent": "^3.972.26", - "@aws-sdk/region-config-resolver": "^3.972.10", - "@aws-sdk/signature-v4-multi-region": "^3.996.14", - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-endpoints": "^3.996.5", - "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.12", - "@smithy/config-resolver": "^4.4.13", - "@smithy/core": "^3.23.12", - "@smithy/eventstream-serde-browser": "^4.2.12", - "@smithy/eventstream-serde-config-resolver": "^4.3.12", - "@smithy/eventstream-serde-node": "^4.2.12", - "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/hash-blob-browser": "^4.2.13", - "@smithy/hash-node": "^4.2.12", - "@smithy/hash-stream-node": "^4.2.12", - "@smithy/invalid-dependency": "^4.2.12", - "@smithy/md5-js": "^4.2.12", - "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.27", - "@smithy/middleware-retry": "^4.4.44", - "@smithy/middleware-serde": "^4.2.15", - "@smithy/middleware-stack": "^4.2.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.5.0", - "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/credential-provider-node": "^3.972.39", + "@aws-sdk/middleware-bucket-endpoint": "^3.972.10", + "@aws-sdk/middleware-expect-continue": "^3.972.10", + "@aws-sdk/middleware-flexible-checksums": "^3.974.16", + "@aws-sdk/middleware-host-header": "^3.972.10", + "@aws-sdk/middleware-location-constraint": "^3.972.10", + "@aws-sdk/middleware-logger": "^3.972.10", + "@aws-sdk/middleware-recursion-detection": "^3.972.11", + "@aws-sdk/middleware-sdk-s3": "^3.972.37", + "@aws-sdk/middleware-ssec": "^3.972.10", + "@aws-sdk/middleware-user-agent": "^3.972.38", + "@aws-sdk/region-config-resolver": "^3.972.13", + "@aws-sdk/signature-v4-multi-region": "^3.996.25", + "@aws-sdk/types": "^3.973.8", + "@aws-sdk/util-endpoints": "^3.996.8", + "@aws-sdk/util-user-agent-browser": "^3.972.10", + "@aws-sdk/util-user-agent-node": "^3.973.24", + "@smithy/config-resolver": "^4.4.17", + "@smithy/core": "^3.23.17", + "@smithy/eventstream-serde-browser": "^4.2.14", + "@smithy/eventstream-serde-config-resolver": "^4.3.14", + "@smithy/eventstream-serde-node": "^4.2.14", + "@smithy/fetch-http-handler": "^5.3.17", + "@smithy/hash-blob-browser": "^4.2.15", + "@smithy/hash-node": "^4.2.14", + "@smithy/hash-stream-node": "^4.2.14", + "@smithy/invalid-dependency": "^4.2.14", + "@smithy/md5-js": "^4.2.14", + "@smithy/middleware-content-length": "^4.2.14", + "@smithy/middleware-endpoint": "^4.4.32", + "@smithy/middleware-retry": "^4.5.7", + "@smithy/middleware-serde": "^4.2.20", + "@smithy/middleware-stack": "^4.2.14", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/node-http-handler": "^4.6.1", + "@smithy/protocol-http": "^5.3.14", + "@smithy/smithy-client": "^4.12.13", + "@smithy/types": "^4.14.1", + "@smithy/url-parser": "^4.2.14", "@smithy/util-base64": "^4.3.2", "@smithy/util-body-length-browser": "^4.2.2", "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.43", - "@smithy/util-defaults-mode-node": "^4.2.47", - "@smithy/util-endpoints": "^3.3.3", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-retry": "^4.2.12", - "@smithy/util-stream": "^4.5.20", + "@smithy/util-defaults-mode-browser": "^4.3.49", + "@smithy/util-defaults-mode-node": "^4.2.54", + "@smithy/util-endpoints": "^3.4.2", + "@smithy/util-middleware": "^4.2.14", + "@smithy/util-retry": "^4.3.6", + "@smithy/util-stream": "^4.5.25", "@smithy/util-utf8": "^4.2.2", - "@smithy/util-waiter": "^4.2.13", + "@smithy/util-waiter": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -326,22 +268,23 @@ } }, "node_modules/@aws-sdk/core": { - "version": "3.973.25", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.973.25.tgz", - "integrity": "sha512-TNrx7eq6nKNOO62HWPqoBqPLXEkW6nLZQGwjL6lq1jZtigWYbK1NbCnT7mKDzbLMHZfuOECUt3n6CzxjUW9HWQ==", + "version": "3.974.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.974.8.tgz", + "integrity": "sha512-njR2qoG6ZuB0kvAS2FyICsFZJ6gmCcf2X/7JcD14sUvGDm26wiZ5BrA6LOiUxKFEF+IVe7kdroxyE00YlkiYsw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/xml-builder": "^3.972.16", - "@smithy/core": "^3.23.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/property-provider": "^4.2.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/signature-v4": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@aws-sdk/xml-builder": "^3.972.22", + "@smithy/core": "^3.23.17", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/property-provider": "^4.2.14", + "@smithy/protocol-http": "^5.3.14", + "@smithy/signature-v4": "^5.3.14", + "@smithy/smithy-client": "^4.12.13", + "@smithy/types": "^4.14.1", "@smithy/util-base64": "^4.3.2", - "@smithy/util-middleware": "^4.2.12", + "@smithy/util-middleware": "^4.2.14", + "@smithy/util-retry": "^4.3.6", "@smithy/util-utf8": "^4.2.2", "tslib": "^2.6.2" }, @@ -350,12 +293,12 @@ } }, "node_modules/@aws-sdk/crc64-nvme": { - "version": "3.972.5", - "resolved": "https://registry.npmjs.org/@aws-sdk/crc64-nvme/-/crc64-nvme-3.972.5.tgz", - "integrity": "sha512-2VbTstbjKdT+yKi8m7b3a9CiVac+pL/IY2PHJwsaGkkHmuuqkJZIErPck1h6P3T9ghQMLSdMPyW6Qp7Di5swFg==", + "version": "3.972.7", + "resolved": "https://registry.npmjs.org/@aws-sdk/crc64-nvme/-/crc64-nvme-3.972.7.tgz", + "integrity": "sha512-QUagVVBbC8gODCF6e1aV0mE2TXWB9Opz4k8EJFdNrujUVQm5R4AjJa1mpOqzwOuROBzqJU9zawzig7M96L8Ejg==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -363,15 +306,15 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.972.23", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.23.tgz", - "integrity": "sha512-EamaclJcCEaPHp6wiVknNMM2RlsPMjAHSsYSFLNENBM8Wz92QPc6cOn3dif6vPDQt0Oo4IEghDy3NMDCzY/IvA==", + "version": "3.972.34", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.34.tgz", + "integrity": "sha512-XT0jtf8Fw9JE6ppsQeoNnZRiG+jqRixMT1v1ZR17G60UvVdsQmTG8nbEyHuEPfMxDXEhfdARaM/XiEhca4lGHQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/types": "^3.973.6", - "@smithy/property-provider": "^4.2.12", - "@smithy/types": "^4.13.1", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/types": "^3.973.8", + "@smithy/property-provider": "^4.2.14", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -379,20 +322,20 @@ } }, "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.972.25", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.25.tgz", - "integrity": "sha512-qPymamdPcLp6ugoVocG1y5r69ScNiRzb0hogX25/ij+Wz7c7WnsgjLTaz7+eB5BfRxeyUwuw5hgULMuwOGOpcw==", + "version": "3.972.36", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.36.tgz", + "integrity": "sha512-DPoGWfy7J7RKxvbf5kOKIGQkD2ek3dbKgzKIGrnLuvZBz5myU+Im/H6pmc14QcnFbqHMqxvtWSgRDSJW3qXLQg==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/types": "^3.973.6", - "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/node-http-handler": "^4.5.0", - "@smithy/property-provider": "^4.2.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/util-stream": "^4.5.20", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/types": "^3.973.8", + "@smithy/fetch-http-handler": "^5.3.17", + "@smithy/node-http-handler": "^4.6.1", + "@smithy/property-provider": "^4.2.14", + "@smithy/protocol-http": "^5.3.14", + "@smithy/smithy-client": "^4.12.13", + "@smithy/types": "^4.14.1", + "@smithy/util-stream": "^4.5.25", "tslib": "^2.6.2" }, "engines": { @@ -400,24 +343,24 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.972.26", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.26.tgz", - "integrity": "sha512-xKxEAMuP6GYx2y5GET+d3aGEroax3AgGfwBE65EQAUe090lzyJ/RzxPX9s8v7Z6qAk0XwfQl+LrmH05X7YvTeg==", + "version": "3.972.38", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.38.tgz", + "integrity": "sha512-oDzUBu2MGJFgoar05sPMCwSrhw44ASyccrHzj66vO69OZqi7I6hZZxXfuPLC8OCzW7C+sU+bI73XHij41yekgQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/credential-provider-env": "^3.972.23", - "@aws-sdk/credential-provider-http": "^3.972.25", - "@aws-sdk/credential-provider-login": "^3.972.26", - "@aws-sdk/credential-provider-process": "^3.972.23", - "@aws-sdk/credential-provider-sso": "^3.972.26", - "@aws-sdk/credential-provider-web-identity": "^3.972.26", - "@aws-sdk/nested-clients": "^3.996.16", - "@aws-sdk/types": "^3.973.6", - "@smithy/credential-provider-imds": "^4.2.12", - "@smithy/property-provider": "^4.2.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/credential-provider-env": "^3.972.34", + "@aws-sdk/credential-provider-http": "^3.972.36", + "@aws-sdk/credential-provider-login": "^3.972.38", + "@aws-sdk/credential-provider-process": "^3.972.34", + "@aws-sdk/credential-provider-sso": "^3.972.38", + "@aws-sdk/credential-provider-web-identity": "^3.972.38", + "@aws-sdk/nested-clients": "^3.997.6", + "@aws-sdk/types": "^3.973.8", + "@smithy/credential-provider-imds": "^4.2.14", + "@smithy/property-provider": "^4.2.14", + "@smithy/shared-ini-file-loader": "^4.4.9", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -425,18 +368,18 @@ } }, "node_modules/@aws-sdk/credential-provider-login": { - "version": "3.972.26", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.26.tgz", - "integrity": "sha512-EFcM8RM3TUxnZOfMJo++3PnyxFu1fL/huzmn3Vh+8IWRgqZawUD3cRwwOr+/4bE9DpyHaLOWFAjY0lfK5X9ZkQ==", + "version": "3.972.38", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.38.tgz", + "integrity": "sha512-g1NosS8qe4OF++G2UFCM5ovSkgipC7YYor5KCWatG0UoMSO5YFj9C8muePlyVmOBV/WTI16Jo3/s1NUo/o1Bww==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/nested-clients": "^3.996.16", - "@aws-sdk/types": "^3.973.6", - "@smithy/property-provider": "^4.2.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/nested-clients": "^3.997.6", + "@aws-sdk/types": "^3.973.8", + "@smithy/property-provider": "^4.2.14", + "@smithy/protocol-http": "^5.3.14", + "@smithy/shared-ini-file-loader": "^4.4.9", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -444,22 +387,22 @@ } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.972.27", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.27.tgz", - "integrity": "sha512-jXpxSolfFnPVj6GCTtx3xIdWNoDR7hYC/0SbetGZxOC9UnNmipHeX1k6spVstf7eWJrMhXNQEgXC0pD1r5tXIg==", + "version": "3.972.39", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.39.tgz", + "integrity": "sha512-HEswDQyxUtadoZ/bJsPPENHg7R0Lzym5LuMksJeHvqhCOpP+rtkDLKI4/ZChH4w3cf5kG8n6bZuI8PzajoiqMg==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "^3.972.23", - "@aws-sdk/credential-provider-http": "^3.972.25", - "@aws-sdk/credential-provider-ini": "^3.972.26", - "@aws-sdk/credential-provider-process": "^3.972.23", - "@aws-sdk/credential-provider-sso": "^3.972.26", - "@aws-sdk/credential-provider-web-identity": "^3.972.26", - "@aws-sdk/types": "^3.973.6", - "@smithy/credential-provider-imds": "^4.2.12", - "@smithy/property-provider": "^4.2.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/credential-provider-env": "^3.972.34", + "@aws-sdk/credential-provider-http": "^3.972.36", + "@aws-sdk/credential-provider-ini": "^3.972.38", + "@aws-sdk/credential-provider-process": "^3.972.34", + "@aws-sdk/credential-provider-sso": "^3.972.38", + "@aws-sdk/credential-provider-web-identity": "^3.972.38", + "@aws-sdk/types": "^3.973.8", + "@smithy/credential-provider-imds": "^4.2.14", + "@smithy/property-provider": "^4.2.14", + "@smithy/shared-ini-file-loader": "^4.4.9", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -467,16 +410,16 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.972.23", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.23.tgz", - "integrity": "sha512-IL/TFW59++b7MpHserjUblGrdP5UXy5Ekqqx1XQkERXBFJcZr74I7VaSrQT5dxdRMU16xGK4L0RQ5fQG1pMgnA==", + "version": "3.972.34", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.34.tgz", + "integrity": "sha512-T3IFs4EVmVi1dVN5RciFnklCANSzvrQd/VuHY9ThHSQmYkTogjcGkoJEr+oNUPQZnso52183088NqysMPji1/Q==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/types": "^3.973.6", - "@smithy/property-provider": "^4.2.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/types": "^3.973.8", + "@smithy/property-provider": "^4.2.14", + "@smithy/shared-ini-file-loader": "^4.4.9", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -484,18 +427,18 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.972.26", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.26.tgz", - "integrity": "sha512-c6ghvRb6gTlMznWhGxn/bpVCcp0HRaz4DobGVD9kI4vwHq186nU2xN/S7QGkm0lo0H2jQU8+dgpUFLxfTcwCOg==", + "version": "3.972.38", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.38.tgz", + "integrity": "sha512-5ZxG+t0+3Q3QPh8KEjX6syskhgNf7I0MN7oGioTf6Lm1NTjfP7sIcYGNsthXC2qR8vcD3edNZwCr2ovfSSWuRA==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/nested-clients": "^3.996.16", - "@aws-sdk/token-providers": "3.1019.0", - "@aws-sdk/types": "^3.973.6", - "@smithy/property-provider": "^4.2.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/nested-clients": "^3.997.6", + "@aws-sdk/token-providers": "3.1041.0", + "@aws-sdk/types": "^3.973.8", + "@smithy/property-provider": "^4.2.14", + "@smithy/shared-ini-file-loader": "^4.4.9", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -503,17 +446,17 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.972.26", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.26.tgz", - "integrity": "sha512-cXcS3+XD3iwhoXkM44AmxjmbcKueoLCINr1e+IceMmCySda5ysNIfiGBGe9qn5EMiQ9Jd7pP0AGFtcd6OV3Lvg==", + "version": "3.972.38", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.38.tgz", + "integrity": "sha512-lYHFF30DGI20jZcYX8cm6Ns0V7f1dDN6g/MBDLTyD/5iw+bXs3yBr2iAiHDkx4RFU5JgsnZvCHYKiRVPRdmOgw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/nested-clients": "^3.996.16", - "@aws-sdk/types": "^3.973.6", - "@smithy/property-provider": "^4.2.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/nested-clients": "^3.997.6", + "@aws-sdk/types": "^3.973.8", + "@smithy/property-provider": "^4.2.14", + "@smithy/shared-ini-file-loader": "^4.4.9", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -521,16 +464,16 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.972.8.tgz", - "integrity": "sha512-WR525Rr2QJSETa9a050isktyWi/4yIGcmY3BQ1kpHqb0LqUglQHCS8R27dTJxxWNZvQ0RVGtEZjTCbZJpyF3Aw==", + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.972.10.tgz", + "integrity": "sha512-Vbc2frZH7wXlMNd+ZZSXUEs/l1Sv8Jj4zUnIfwrYF5lwaLdXHZ9xx4U3rjUcaye3HRhFVc+E5DbBxpRAbB16BA==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", + "@aws-sdk/types": "^3.973.8", "@aws-sdk/util-arn-parser": "^3.972.3", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/protocol-http": "^5.3.14", + "@smithy/types": "^4.14.1", "@smithy/util-config-provider": "^4.2.2", "tslib": "^2.6.2" }, @@ -539,14 +482,14 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.972.8.tgz", - "integrity": "sha512-5DTBTiotEES1e2jOHAq//zyzCjeMB78lEHd35u15qnrid4Nxm7diqIf9fQQ3Ov0ChH1V3Vvt13thOnrACmfGVQ==", + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.972.10.tgz", + "integrity": "sha512-2Yn0f1Qiq/DjxYR3wfI3LokXnjOhFM7Ssn4LTdFDIxRMCE6I32MAsVnhPX1cUZsuVA9tiZtwwhlSLAtFGxAZlQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@smithy/protocol-http": "^5.3.14", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -554,23 +497,23 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.974.5", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.974.5.tgz", - "integrity": "sha512-SPSvF0G1t8m8CcB0L+ClNFszzQOvXaxmRj25oRWDf6aU+TuN2PXPFAJ9A6lt1IvX4oGAqqbTdMPTYs/SSHUYYQ==", + "version": "3.974.16", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.974.16.tgz", + "integrity": "sha512-6ru8doI0/XzszqLIPXf0E/V7HhAw1Pu94010XCKYtBUfD0LxF0BuOzrUf8OQGR6j2o6wgKTHUniOmndQycHwCA==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", "@aws-crypto/util": "5.2.0", - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/crc64-nvme": "^3.972.5", - "@aws-sdk/types": "^3.973.6", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/crc64-nvme": "^3.972.7", + "@aws-sdk/types": "^3.973.8", "@smithy/is-array-buffer": "^4.2.2", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.20", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/protocol-http": "^5.3.14", + "@smithy/types": "^4.14.1", + "@smithy/util-middleware": "^4.2.14", + "@smithy/util-stream": "^4.5.25", "@smithy/util-utf8": "^4.2.2", "tslib": "^2.6.2" }, @@ -579,14 +522,14 @@ } }, "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.972.8.tgz", - "integrity": "sha512-wAr2REfKsqoKQ+OkNqvOShnBoh+nkPurDKW7uAeVSu6kUECnWlSJiPvnoqxGlfousEY/v9LfS9sNc46hjSYDIQ==", + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.972.10.tgz", + "integrity": "sha512-IJSsIMeVQ8MMCPbuh1AbltkFhLBLXn7aejzfX5YKT/VLDHn++Dcz8886tXckE+wQssyPUhaXrJhdakO2VilRhg==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@smithy/protocol-http": "^5.3.14", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -594,13 +537,13 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.972.8.tgz", - "integrity": "sha512-KaUoFuoFPziIa98DSQsTPeke1gvGXlc5ZGMhy+b+nLxZ4A7jmJgLzjEF95l8aOQN2T/qlPP3MrAyELm8ExXucw==", + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.972.10.tgz", + "integrity": "sha512-rI3NZvJcEvjoD0+0PI0iUAwlPw2IlSlhyvgBK/3WkKJQE/YiKFedd9dMN2lVacdNxPNhxL/jzQaKQdrGtQagjQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -608,13 +551,13 @@ } }, "node_modules/@aws-sdk/middleware-logger": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.972.8.tgz", - "integrity": "sha512-CWl5UCM57WUFaFi5kB7IBY1UmOeLvNZAZ2/OZ5l20ldiJ3TiIz1pC65gYj8X0BCPWkeR1E32mpsCk1L1I4n+lA==", + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.972.10.tgz", + "integrity": "sha512-OOuGvvz1Dm20SjZo5oEBePFqxt5nf8AwkNDSyUHvD9/bfNASmstcYxFAHUowy4n6Io7mWUZ04JURZwSBvyQanQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -622,15 +565,15 @@ } }, "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.972.9", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.972.9.tgz", - "integrity": "sha512-/Wt5+CT8dpTFQxEJ9iGy/UGrXr7p2wlIOEHvIr/YcHYByzoLjrqkYqXdJjd9UIgWjv7eqV2HnFJen93UTuwfTQ==", + "version": "3.972.11", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.972.11.tgz", + "integrity": "sha512-+zz6f79Kj9V5qFK2P+D8Ehjnw4AhphAlCAsPjUqEcInA9umtSSKMrHbSagEeOIsDNuvVrH98bjRHcyQukTrhaQ==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", + "@aws-sdk/types": "^3.973.8", "@aws/lambda-invoke-store": "^0.2.2", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", + "@smithy/protocol-http": "^5.3.14", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -638,23 +581,23 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.972.26", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.26.tgz", - "integrity": "sha512-5q7UGSTtt7/KF0Os8wj2VZtlLxeWJVb0e2eDrDJlWot2EIxUNKDDMPFq/FowUqrwZ40rO2bu6BypxaKNvQhI+g==", + "version": "3.972.37", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.37.tgz", + "integrity": "sha512-Km7M+i8DrLArVzrid1gfxeGhYHBd3uxvE77g0s5a52zPSVosxzQBnJ0gwWb6NIp/DOk8gsBMhi7V+cpJG0ndTA==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/types": "^3.973.6", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/types": "^3.973.8", "@aws-sdk/util-arn-parser": "^3.972.3", - "@smithy/core": "^3.23.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/signature-v4": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.23.17", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/protocol-http": "^5.3.14", + "@smithy/signature-v4": "^5.3.14", + "@smithy/smithy-client": "^4.12.13", + "@smithy/types": "^4.14.1", "@smithy/util-config-provider": "^4.2.2", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.20", + "@smithy/util-middleware": "^4.2.14", + "@smithy/util-stream": "^4.5.25", "@smithy/util-utf8": "^4.2.2", "tslib": "^2.6.2" }, @@ -663,13 +606,13 @@ } }, "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.972.8.tgz", - "integrity": "sha512-wqlK0yO/TxEC2UsY9wIlqeeutF6jjLe0f96Pbm40XscTo57nImUk9lBcw0dPgsm0sppFtAkSlDrfpK+pC30Wqw==", + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.972.10.tgz", + "integrity": "sha512-Gli9A0u8EVVb+5bFDGS/QbSVg28w/wpEidg1ggVcSj65BDTdGR6punsOcVjqdiu1i42WHWo51MCvARPIIz9juw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -677,18 +620,18 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.972.26", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.972.26.tgz", - "integrity": "sha512-AilFIh4rI/2hKyyGN6XrB0yN96W2o7e7wyrPWCM6QjZM1mcC/pVkW3IWWRvuBWMpVP8Fg+rMpbzeLQ6dTM4gig==", + "version": "3.972.38", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.972.38.tgz", + "integrity": "sha512-iz+B29TXcAZsJpwB+AwG/TTGA5l/VnmMZ2UxtiySOZjI6gCdmviXPwdgzcmuazMy16rXoPY4mYCGe7zdNKfx5A==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-endpoints": "^3.996.5", - "@smithy/core": "^3.23.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "@smithy/util-retry": "^4.2.12", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/types": "^3.973.8", + "@aws-sdk/util-endpoints": "^3.996.8", + "@smithy/core": "^3.23.17", + "@smithy/protocol-http": "^5.3.14", + "@smithy/types": "^4.14.1", + "@smithy/util-retry": "^4.3.6", "tslib": "^2.6.2" }, "engines": { @@ -696,47 +639,48 @@ } }, "node_modules/@aws-sdk/nested-clients": { - "version": "3.996.16", - "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.996.16.tgz", - "integrity": "sha512-L7Qzoj/qQU1cL5GnYLQP5LbI+wlLCLoINvcykR3htKcQ4tzrPf2DOs72x933BM7oArYj1SKrkb2lGlsJHIic3g==", + "version": "3.997.6", + "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.997.6.tgz", + "integrity": "sha512-WBDnqatJl+kGObpfmfSxqnXeYTu3Me8wx8WCtvoxX3pfWrrTv8I4WTMSSs7PZqcRcVh8WeUKMgGFjMG+52SR1w==", "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/middleware-host-header": "^3.972.8", - "@aws-sdk/middleware-logger": "^3.972.8", - "@aws-sdk/middleware-recursion-detection": "^3.972.9", - "@aws-sdk/middleware-user-agent": "^3.972.26", - "@aws-sdk/region-config-resolver": "^3.972.10", - "@aws-sdk/types": "^3.973.6", - "@aws-sdk/util-endpoints": "^3.996.5", - "@aws-sdk/util-user-agent-browser": "^3.972.8", - "@aws-sdk/util-user-agent-node": "^3.973.12", - "@smithy/config-resolver": "^4.4.13", - "@smithy/core": "^3.23.12", - "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/hash-node": "^4.2.12", - "@smithy/invalid-dependency": "^4.2.12", - "@smithy/middleware-content-length": "^4.2.12", - "@smithy/middleware-endpoint": "^4.4.27", - "@smithy/middleware-retry": "^4.4.44", - "@smithy/middleware-serde": "^4.2.15", - "@smithy/middleware-stack": "^4.2.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/node-http-handler": "^4.5.0", - "@smithy/protocol-http": "^5.3.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/middleware-host-header": "^3.972.10", + "@aws-sdk/middleware-logger": "^3.972.10", + "@aws-sdk/middleware-recursion-detection": "^3.972.11", + "@aws-sdk/middleware-user-agent": "^3.972.38", + "@aws-sdk/region-config-resolver": "^3.972.13", + "@aws-sdk/signature-v4-multi-region": "^3.996.25", + "@aws-sdk/types": "^3.973.8", + "@aws-sdk/util-endpoints": "^3.996.8", + "@aws-sdk/util-user-agent-browser": "^3.972.10", + "@aws-sdk/util-user-agent-node": "^3.973.24", + "@smithy/config-resolver": "^4.4.17", + "@smithy/core": "^3.23.17", + "@smithy/fetch-http-handler": "^5.3.17", + "@smithy/hash-node": "^4.2.14", + "@smithy/invalid-dependency": "^4.2.14", + "@smithy/middleware-content-length": "^4.2.14", + "@smithy/middleware-endpoint": "^4.4.32", + "@smithy/middleware-retry": "^4.5.7", + "@smithy/middleware-serde": "^4.2.20", + "@smithy/middleware-stack": "^4.2.14", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/node-http-handler": "^4.6.1", + "@smithy/protocol-http": "^5.3.14", + "@smithy/smithy-client": "^4.12.13", + "@smithy/types": "^4.14.1", + "@smithy/url-parser": "^4.2.14", "@smithy/util-base64": "^4.3.2", "@smithy/util-body-length-browser": "^4.2.2", "@smithy/util-body-length-node": "^4.2.3", - "@smithy/util-defaults-mode-browser": "^4.3.43", - "@smithy/util-defaults-mode-node": "^4.2.47", - "@smithy/util-endpoints": "^3.3.3", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-retry": "^4.2.12", + "@smithy/util-defaults-mode-browser": "^4.3.49", + "@smithy/util-defaults-mode-node": "^4.2.54", + "@smithy/util-endpoints": "^3.4.2", + "@smithy/util-middleware": "^4.2.14", + "@smithy/util-retry": "^4.3.6", "@smithy/util-utf8": "^4.2.2", "tslib": "^2.6.2" }, @@ -745,15 +689,15 @@ } }, "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.972.10", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.972.10.tgz", - "integrity": "sha512-1dq9ToC6e070QvnVhhbAs3bb5r6cQ10gTVc6cyRV5uvQe7P138TV2uG2i6+Yok4bAkVAcx5AqkTEBUvWEtBlsQ==", + "version": "3.972.13", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.972.13.tgz", + "integrity": "sha512-CvJ2ZIjK/jVD/lbOpowBVElJyC1YxLTIJ13yM0AEo0t2v7swOzGjSA6lJGH+DwZXQhcjUjoYwc8bVYCX5MDr1A==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/config-resolver": "^4.4.13", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@smithy/config-resolver": "^4.4.17", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -761,16 +705,16 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.996.14", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.14.tgz", - "integrity": "sha512-4nZSrBr1NO+48HCM/6BRU8mnRjuHZjcpziCvLXZk5QVftwWz5Mxqbhwdz4xf7WW88buaTB8uRO2MHklSX1m0vg==", + "version": "3.996.25", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.25.tgz", + "integrity": "sha512-+CMIt3e1VzlklAECmG+DtP1sV8iKq25FuA0OKpnJ4KA0kxUtd7CgClY7/RU6VzJBQwbN4EJ9Ue6plvqx1qGadw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-sdk-s3": "^3.972.26", - "@aws-sdk/types": "^3.973.6", - "@smithy/protocol-http": "^5.3.12", - "@smithy/signature-v4": "^5.3.12", - "@smithy/types": "^4.13.1", + "@aws-sdk/middleware-sdk-s3": "^3.972.37", + "@aws-sdk/types": "^3.973.8", + "@smithy/protocol-http": "^5.3.14", + "@smithy/signature-v4": "^5.3.14", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -778,17 +722,17 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.1019.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1019.0.tgz", - "integrity": "sha512-OF+2RfRmUKyjzrRWlDcyju3RBsuqcrYDQ8TwrJg8efcOotMzuZN4U9mpVTIdATpmEc4lWNZBMSjPzrGm6JPnAQ==", + "version": "3.1041.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1041.0.tgz", + "integrity": "sha512-Th7kPI6YPtvJUcdznooXJMy+9rQWjmEF81LxaJssngBzuysK4a/x+l8kjm1zb7nYsUPbndnBdUnwng/3PLvtGw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "^3.973.25", - "@aws-sdk/nested-clients": "^3.996.16", - "@aws-sdk/types": "^3.973.6", - "@smithy/property-provider": "^4.2.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@aws-sdk/core": "^3.974.8", + "@aws-sdk/nested-clients": "^3.997.6", + "@aws-sdk/types": "^3.973.8", + "@smithy/property-provider": "^4.2.14", + "@smithy/shared-ini-file-loader": "^4.4.9", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -796,12 +740,12 @@ } }, "node_modules/@aws-sdk/types": { - "version": "3.973.6", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.973.6.tgz", - "integrity": "sha512-Atfcy4E++beKtwJHiDln2Nby8W/mam64opFPTiHEqgsthqeydFS1pY+OUlN1ouNOmf8ArPU/6cDS65anOP3KQw==", + "version": "3.973.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.973.8.tgz", + "integrity": "sha512-gjlAdtHMbtR9X5iIhVUvbVcy55KnznpC6bkDUWW9z915bi0ckdUr5cjf16Kp6xq0bP5HBD2xzgbL9F9Quv5vUw==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -821,15 +765,15 @@ } }, "node_modules/@aws-sdk/util-endpoints": { - "version": "3.996.5", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.996.5.tgz", - "integrity": "sha512-Uh93L5sXFNbyR5sEPMzUU8tJ++Ku97EY4udmC01nB8Zu+xfBPwpIwJ6F7snqQeq8h2pf+8SGN5/NoytfKgYPIw==", + "version": "3.996.8", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.996.8.tgz", + "integrity": "sha512-oOZHcRDihk5iEe5V25NVWg45b3qEA8OpHWVdU/XQh8Zj4heVPAJqWvMphQnU7LkufmUo10EpvFPZuQMiFLJK3g==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", - "@smithy/util-endpoints": "^3.3.3", + "@aws-sdk/types": "^3.973.8", + "@smithy/types": "^4.14.1", + "@smithy/url-parser": "^4.2.14", + "@smithy/util-endpoints": "^3.4.2", "tslib": "^2.6.2" }, "engines": { @@ -849,27 +793,27 @@ } }, "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.972.8", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.972.8.tgz", - "integrity": "sha512-B3KGXJviV2u6Cdw2SDY2aDhoJkVfY/Q/Trwk2CMSkikE1Oi6gRzxhvhIfiRpHfmIsAhV4EA54TVEX8K6CbHbkA==", + "version": "3.972.10", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.972.10.tgz", + "integrity": "sha512-FAzqXvfEssGdSIz8ejatan0bOdx1qefBWKF/gWmVBXIP1HkS7v/wjjaqrAGGKvyihrXTXW00/2/1nTJtxpXz7g==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "^3.973.6", - "@smithy/types": "^4.13.1", + "@aws-sdk/types": "^3.973.8", + "@smithy/types": "^4.14.1", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.973.12", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.973.12.tgz", - "integrity": "sha512-8phW0TS8ntENJgDcFewYT/Q8dOmarpvSxEjATu2GUBAutiHr++oEGCiBUwxslCMNvwW2cAPZNT53S/ym8zm/gg==", + "version": "3.973.24", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.973.24.tgz", + "integrity": "sha512-ZWwlkjcIp7cEL8ZfTpTAPNkwx25p7xol0xlKoWVVf22+nsjwmLcHYtTPjIV1cSpmB/b6DaK4cb1fSkvCXHgRdw==", "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "^3.972.26", - "@aws-sdk/types": "^3.973.6", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/types": "^4.13.1", + "@aws-sdk/middleware-user-agent": "^3.972.38", + "@aws-sdk/types": "^3.973.8", + "@smithy/node-config-provider": "^4.3.14", + "@smithy/types": "^4.14.1", "@smithy/util-config-provider": "^4.2.2", "tslib": "^2.6.2" }, @@ -886,13 +830,14 @@ } }, "node_modules/@aws-sdk/xml-builder": { - "version": "3.972.16", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.16.tgz", - "integrity": "sha512-iu2pyvaqmeatIJLURLqx9D+4jKAdTH20ntzB6BFwjyN7V960r4jK32mx0Zf7YbtOYAbmbtQfDNuL60ONinyw7A==", + "version": "3.972.22", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.22.tgz", + "integrity": "sha512-PMYKKtJd70IsSG0yHrdAbxBr+ZWBKLvzFZfD3/urxgf6hXVMzuU5M+3MJ5G67RpOmLBu1fAUN65SbWuKUCOlAA==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", - "fast-xml-parser": "5.5.8", + "@nodable/entities": "2.1.0", + "@smithy/types": "^4.14.1", + "fast-xml-parser": "5.7.2", "tslib": "^2.6.2" }, "engines": { @@ -924,9 +869,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", - "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.3.tgz", + "integrity": "sha512-LIVqM46zQWZhj17qA8wb4nW/ixr2y1Nw+r1etiAWgRM6U1IqP+LNhL1yg440jYZR72jCWcWbLWzIosH+uP1fqg==", "dev": true, "license": "MIT", "engines": { @@ -1012,9 +957,9 @@ } }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.28.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.6.tgz", - "integrity": "sha512-dTOdvsjnG3xNT9Y0AUg1wAl38y+4Rl4sf9caSQZOXdNqVn+H+HbbJ4IyyHaIqNR6SW9oJpA/RuRjsjCw2IdIow==", + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.29.3.tgz", + "integrity": "sha512-RpLYy2sb51oNLjuu1iD3bwBqCBWUzjO0ocp+iaCP/lJtb2CPLcnC2Fftw+4sAzaMELGeWTgExSKADbdo0GFVzA==", "dev": true, "license": "MIT", "dependencies": { @@ -1023,7 +968,7 @@ "@babel/helper-optimise-call-expression": "^7.27.1", "@babel/helper-replace-supers": "^7.28.6", "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1", - "@babel/traverse": "^7.28.6", + "@babel/traverse": "^7.29.0", "semver": "^6.3.1" }, "engines": { @@ -1257,9 +1202,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.2.tgz", - "integrity": "sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==", + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.3.tgz", + "integrity": "sha512-b3ctpQwp+PROvU/cttc4OYl4MzfJUWy6FZg+PMXfzmt/+39iHVF0sDfqay8TQM3JA2EUOyKcFZt75jWriQijsA==", "dev": true, "license": "MIT", "dependencies": { @@ -1321,6 +1266,23 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": { + "version": "7.29.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/-/plugin-bugfix-safari-rest-destructuring-rhs-array-7.29.3.tgz", + "integrity": "sha512-SRS46DFR4HqzUzCVgi90/xMoL+zeBDBvWdKYXSEzh79kXswNFEglUpMKxR04//dPqwYXWUBJ3mpUd933ru9Kmg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.28.6", + "@babel/helper-skip-transparent-expression-wrappers": "^7.27.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz", @@ -1840,9 +1802,9 @@ } }, "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.0.tgz", - "integrity": "sha512-PrujnVFbOdUpw4UHiVwKvKRLMMic8+eC0CuNlxjsyZUiBjhFdPsewdXCkveh2KqBA9/waD0W1b4hXSOBQJezpQ==", + "version": "7.29.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.4.tgz", + "integrity": "sha512-N7QmZ0xRZfjHOfZeQLJjwgX2zS9pdGHSVl/cjSGlo4dXMqvurfxXDMKY4RqEKzPozV78VMcd0lxyG13mlbKc4w==", "dev": true, "license": "MIT", "dependencies": { @@ -2307,19 +2269,20 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.29.2", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.2.tgz", - "integrity": "sha512-DYD23veRYGvBFhcTY1iUvJnDNpuqNd/BzBwCvzOTKUnJjKg5kpUBh3/u9585Agdkgj+QuygG7jLfOPWMa2KVNw==", + "version": "7.29.5", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.29.5.tgz", + "integrity": "sha512-/69t2aEzGKHD76DyLbHysF/QH2LJOB8iFnYO37unDTKBTubzcMRv0f3H5EiN1Q6ajOd/eB7dAInF0qdFVS06kA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.29.0", + "@babel/compat-data": "^7.29.3", "@babel/helper-compilation-targets": "^7.28.6", "@babel/helper-plugin-utils": "^7.28.6", "@babel/helper-validator-option": "^7.27.1", "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.28.5", "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.27.1", "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.27.1", + "@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": "^7.29.3", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.27.1", "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.28.6", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", @@ -2351,7 +2314,7 @@ "@babel/plugin-transform-member-expression-literals": "^7.27.1", "@babel/plugin-transform-modules-amd": "^7.27.1", "@babel/plugin-transform-modules-commonjs": "^7.28.6", - "@babel/plugin-transform-modules-systemjs": "^7.29.0", + "@babel/plugin-transform-modules-systemjs": "^7.29.4", "@babel/plugin-transform-modules-umd": "^7.27.1", "@babel/plugin-transform-named-capturing-groups-regex": "^7.29.0", "@babel/plugin-transform-new-target": "^7.27.1", @@ -2474,10 +2437,22 @@ "node": ">=18" } }, + "node_modules/@concept/insights": { + "resolved": "development/insights", + "link": true + }, + "node_modules/@concept/moderation": { + "resolved": "development/moderation", + "link": true + }, + "node_modules/@concept/social": { + "resolved": "development/social", + "link": true + }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.4.tgz", - "integrity": "sha512-cQPwL2mp2nSmHHJlCyoXgHGhbEPMrEEU5xhkcy3Hs/O7nGZqEpZ2sUtLaL9MORLtDfRvVl2/3PAuEkYZH0Ty8Q==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz", + "integrity": "sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==", "cpu": [ "ppc64" ], @@ -2492,9 +2467,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.4.tgz", - "integrity": "sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.7.tgz", + "integrity": "sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==", "cpu": [ "arm" ], @@ -2509,9 +2484,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.4.tgz", - "integrity": "sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz", + "integrity": "sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==", "cpu": [ "arm64" ], @@ -2526,9 +2501,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.4.tgz", - "integrity": "sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.7.tgz", + "integrity": "sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==", "cpu": [ "x64" ], @@ -2543,9 +2518,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.4.tgz", - "integrity": "sha512-b7xaGIwdJlht8ZFCvMkpDN6uiSmnxxK56N2GDTMYPr2/gzvfdQN8rTfBsvVKmIVY/X7EM+/hJKEIbbHs9oA4tQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz", + "integrity": "sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==", "cpu": [ "arm64" ], @@ -2560,9 +2535,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.4.tgz", - "integrity": "sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz", + "integrity": "sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==", "cpu": [ "x64" ], @@ -2577,9 +2552,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.4.tgz", - "integrity": "sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz", + "integrity": "sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==", "cpu": [ "arm64" ], @@ -2594,9 +2569,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.4.tgz", - "integrity": "sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz", + "integrity": "sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==", "cpu": [ "x64" ], @@ -2611,9 +2586,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.4.tgz", - "integrity": "sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz", + "integrity": "sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==", "cpu": [ "arm" ], @@ -2628,9 +2603,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.4.tgz", - "integrity": "sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz", + "integrity": "sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==", "cpu": [ "arm64" ], @@ -2645,9 +2620,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.4.tgz", - "integrity": "sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz", + "integrity": "sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==", "cpu": [ "ia32" ], @@ -2662,9 +2637,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.4.tgz", - "integrity": "sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz", + "integrity": "sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==", "cpu": [ "loong64" ], @@ -2679,9 +2654,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.4.tgz", - "integrity": "sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz", + "integrity": "sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==", "cpu": [ "mips64el" ], @@ -2696,9 +2671,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.4.tgz", - "integrity": "sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz", + "integrity": "sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==", "cpu": [ "ppc64" ], @@ -2713,9 +2688,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.4.tgz", - "integrity": "sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz", + "integrity": "sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==", "cpu": [ "riscv64" ], @@ -2730,9 +2705,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.4.tgz", - "integrity": "sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz", + "integrity": "sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==", "cpu": [ "s390x" ], @@ -2747,9 +2722,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.4.tgz", - "integrity": "sha512-S5qOXrKV8BQEzJPVxAwnryi2+Iq5pB40gTEIT69BQONqR7JH1EPIcQ/Uiv9mCnn05jff9umq/5nqzxlqTOg9NA==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz", + "integrity": "sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==", "cpu": [ "x64" ], @@ -2764,9 +2739,9 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.4.tgz", - "integrity": "sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz", + "integrity": "sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==", "cpu": [ "arm64" ], @@ -2781,9 +2756,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.4.tgz", - "integrity": "sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz", + "integrity": "sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==", "cpu": [ "x64" ], @@ -2798,9 +2773,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.4.tgz", - "integrity": "sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz", + "integrity": "sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==", "cpu": [ "arm64" ], @@ -2815,9 +2790,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.4.tgz", - "integrity": "sha512-u8fg/jQ5aQDfsnIV6+KwLOf1CmJnfu1ShpwqdwC0uA7ZPwFws55Ngc12vBdeUdnuWoQYx/SOQLGDcdlfXhYmXQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz", + "integrity": "sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==", "cpu": [ "x64" ], @@ -2832,9 +2807,9 @@ } }, "node_modules/@esbuild/openharmony-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.4.tgz", - "integrity": "sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz", + "integrity": "sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==", "cpu": [ "arm64" ], @@ -2849,9 +2824,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.4.tgz", - "integrity": "sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz", + "integrity": "sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==", "cpu": [ "x64" ], @@ -2866,9 +2841,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.4.tgz", - "integrity": "sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz", + "integrity": "sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==", "cpu": [ "arm64" ], @@ -2883,9 +2858,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.4.tgz", - "integrity": "sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz", + "integrity": "sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==", "cpu": [ "ia32" ], @@ -2900,9 +2875,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.4.tgz", - "integrity": "sha512-+knoa0BDoeXgkNvvV1vvbZX4+hizelrkwmGJBdT17t8FNPwG2lKemmuMZlmaNQ3ws3DKKCxpb4zRZEIp3UxFCg==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz", + "integrity": "sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==", "cpu": [ "x64" ], @@ -2983,9 +2958,9 @@ "peer": true }, "node_modules/@eslint/config-array/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "license": "MIT", "peer": true, @@ -3070,9 +3045,9 @@ "peer": true }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "license": "MIT", "peer": true, @@ -3146,31 +3121,46 @@ } }, "node_modules/@humanfs/core": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", - "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz", + "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==", "dev": true, "license": "Apache-2.0", "peer": true, + "dependencies": { + "@humanfs/types": "^0.15.0" + }, "engines": { "node": ">=18.18.0" } }, "node_modules/@humanfs/node": { - "version": "0.16.7", - "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.7.tgz", - "integrity": "sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==", + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz", + "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==", "dev": true, "license": "Apache-2.0", "peer": true, "dependencies": { - "@humanfs/core": "^0.19.1", + "@humanfs/core": "^0.19.2", + "@humanfs/types": "^0.15.0", "@humanwhocodes/retry": "^0.4.0" }, "engines": { "node": ">=18.18.0" } }, + "node_modules/@humanfs/types": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz", + "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=18.18.0" + } + }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -3369,6 +3359,9 @@ "cpu": [ "x64" ], + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3376,14 +3369,26 @@ ] }, "node_modules/@mongodb-js/saslprep": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.4.6.tgz", - "integrity": "sha512-y+x3H1xBZd38n10NZF/rEBlvDOOMQ6LKUTHqr8R9VkJ+mmQOYtJFxIlkkK8fZrtOiL6VixbOBWMbZGBdal3Z1g==", + "version": "1.4.11", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.4.11.tgz", + "integrity": "sha512-o9rAHc0IpIjuPSxRutWpE1F62x7n+4mVS4rCNHkzhIUMQcc18bb6xEq5wd2NdN0WjepIyXIppRshYI2kQDOZVA==", "license": "MIT", "dependencies": { "sparse-bitfield": "^3.0.3" } }, + "node_modules/@nodable/entities": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.0.tgz", + "integrity": "sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/nodable" + } + ], + "license": "MIT" + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -3429,10 +3434,37 @@ "dev": true, "license": "MIT" }, + "node_modules/@rollup/plugin-babel": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-6.1.0.tgz", + "integrity": "sha512-dFZNuFD2YRcoomP4oYf+DvQNSUA9ih+A3vUqopQx5EdtPGo3WBnQcI/S8pwpz91UsGfL0HsMSOlaMld8HrbubA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@rollup/pluginutils": "^5.0.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "@types/babel__core": "^7.1.9", + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "@types/babel__core": { + "optional": true + }, + "rollup": { + "optional": true + } + } + }, "node_modules/@rollup/plugin-node-resolve": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.1.tgz", - "integrity": "sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==", + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.3.tgz", + "integrity": "sha512-lUYM3UBGuM93CnMPG1YocWu7X802BrNF3jW2zny5gQyLQgRFJhV1Sq0Zi74+dh/6NBx1DxFC4b4GXg9wUCG5Qg==", "dev": true, "license": "MIT", "dependencies": { @@ -3454,6 +3486,28 @@ } } }, + "node_modules/@rollup/plugin-replace": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.3.tgz", + "integrity": "sha512-J4RZarRvQAm5IF0/LwUUg+obsm+xZhYnbMXmXROyoSE1ATJe3oXSb9L5MMppdxP2ylNSjv6zFBwKYjcKMucVfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, "node_modules/@rollup/plugin-terser": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-1.0.0.tgz", @@ -3521,9 +3575,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.60.0.tgz", - "integrity": "sha512-WOhNW9K8bR3kf4zLxbfg6Pxu2ybOUbB2AjMDHSQx86LIF4rH4Ft7vmMwNt0loO0eonglSNy4cpD3MKXXKQu0/A==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.60.3.tgz", + "integrity": "sha512-x35CNW/ANXG3hE/EZpRU8MXX1JDN86hBb2wMGAtltkz7pc6cxgjpy1OMMfDosOQ+2hWqIkag/fGok1Yady9nGw==", "cpu": [ "arm" ], @@ -3535,9 +3589,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.0.tgz", - "integrity": "sha512-u6JHLll5QKRvjciE78bQXDmqRqNs5M/3GVqZeMwvmjaNODJih/WIrJlFVEihvV0MiYFmd+ZyPr9wxOVbPAG2Iw==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.3.tgz", + "integrity": "sha512-xw3xtkDApIOGayehp2+Rz4zimfkaX65r4t47iy+ymQB2G4iJCBBfj0ogVg5jpvjpn8UWn/+q9tprxleYeNp3Hw==", "cpu": [ "arm64" ], @@ -3549,9 +3603,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.0.tgz", - "integrity": "sha512-qEF7CsKKzSRc20Ciu2Zw1wRrBz4g56F7r/vRwY430UPp/nt1x21Q/fpJ9N5l47WWvJlkNCPJz3QRVw008fi7yA==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.3.tgz", + "integrity": "sha512-vo6Y5Qfpx7/5EaamIwi0WqW2+zfiusVihKatLvtN1VFVy3D13uERk/6gZLU1UiHRL6fDXqj/ELIeVRGnvcTE1g==", "cpu": [ "arm64" ], @@ -3563,9 +3617,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.0.tgz", - "integrity": "sha512-WADYozJ4QCnXCH4wPB+3FuGmDPoFseVCUrANmA5LWwGmC6FL14BWC7pcq+FstOZv3baGX65tZ378uT6WG8ynTw==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.3.tgz", + "integrity": "sha512-D+0QGcZhBzTN82weOnsSlY7V7+RMmPuF1CkbxyMAGE8+ZHeUjyb76ZiWmBlCu//AQQONvxcqRbwZTajZKqjuOw==", "cpu": [ "x64" ], @@ -3577,9 +3631,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.60.0.tgz", - "integrity": "sha512-6b8wGHJlDrGeSE3aH5mGNHBjA0TTkxdoNHik5EkvPHCt351XnigA4pS7Wsj/Eo9Y8RBU6f35cjN9SYmCFBtzxw==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.60.3.tgz", + "integrity": "sha512-6HnvHCT7fDyj6R0Ph7A6x8dQS/S38MClRWeDLqc0MdfWkxjiu1HSDYrdPhqSILzjTIC/pnXbbJbo+ft+gy/9hQ==", "cpu": [ "arm64" ], @@ -3591,9 +3645,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.60.0.tgz", - "integrity": "sha512-h25Ga0t4jaylMB8M/JKAyrvvfxGRjnPQIR8lnCayyzEjEOx2EJIlIiMbhpWxDRKGKF8jbNH01NnN663dH638mA==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.60.3.tgz", + "integrity": "sha512-KHLgC3WKlUYW3ShFKnnosZDOJ0xjg9zp7au3sIm2bs/tGBeC2ipmvRh/N7JKi0t9Ue20C0dpEshi8WUubg+cnA==", "cpu": [ "x64" ], @@ -3605,13 +3659,16 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.60.0.tgz", - "integrity": "sha512-RzeBwv0B3qtVBWtcuABtSuCzToo2IEAIQrcyB/b2zMvBWVbjo8bZDjACUpnaafaxhTw2W+imQbP2BD1usasK4g==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.60.3.tgz", + "integrity": "sha512-DV6fJoxEYWJOvaZIsok7KrYl0tPvga5OZ2yvKHNNYyk/2roMLqQAbGhr78EQ5YhHpnhLKJD3S1WFusAkmUuV5g==", "cpu": [ "arm" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3619,13 +3676,16 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.60.0.tgz", - "integrity": "sha512-Sf7zusNI2CIU1HLzuu9Tc5YGAHEZs5Lu7N1ssJG4Tkw6e0MEsN7NdjUDDfGNHy2IU+ENyWT+L2obgWiguWibWQ==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.60.3.tgz", + "integrity": "sha512-mQKoJAzvuOs6F+TZybQO4GOTSMUu7v0WdxEk24krQ/uUxXoPTtHjuaUuPmFhtBcM4K0ons8nrE3JyhTuCFtT/w==", "cpu": [ "arm" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -3633,13 +3693,16 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.0.tgz", - "integrity": "sha512-DX2x7CMcrJzsE91q7/O02IJQ5/aLkVtYFryqCjduJhUfGKG6yJV8hxaw8pZa93lLEpPTP/ohdN4wFz7yp/ry9A==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.3.tgz", + "integrity": "sha512-Whjj2qoiJ6+OOJMGptTYazaJvjOJm+iKHpXQM1P3LzGjt7Ff++Tp7nH4N8J/BUA7R9IHfDyx4DJIflifwnbmIA==", "cpu": [ "arm64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3647,13 +3710,16 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.60.0.tgz", - "integrity": "sha512-09EL+yFVbJZlhcQfShpswwRZ0Rg+z/CsSELFCnPt3iK+iqwGsI4zht3secj5vLEs957QvFFXnzAT0FFPIxSrkQ==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.60.3.tgz", + "integrity": "sha512-4YTNHKqGng5+yiZt3mg77nmyuCfmNfX4fPmyUapBcIk+BdwSwmCWGXOUxhXbBEkFHtoN5boLj/5NON+u5QC9tg==", "cpu": [ "arm64" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -3661,13 +3727,16 @@ ] }, "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.60.0.tgz", - "integrity": "sha512-i9IcCMPr3EXm8EQg5jnja0Zyc1iFxJjZWlb4wr7U2Wx/GrddOuEafxRdMPRYVaXjgbhvqalp6np07hN1w9kAKw==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.60.3.tgz", + "integrity": "sha512-SU3kNlhkpI4UqlUc2VXPGK9o886ZsSeGfMAX2ba2b8DKmMXq4AL7KUrkSWVbb7koVqx41Yczx6dx5PNargIrEA==", "cpu": [ "loong64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3675,13 +3744,16 @@ ] }, "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.60.0.tgz", - "integrity": "sha512-DGzdJK9kyJ+B78MCkWeGnpXJ91tK/iKA6HwHxF4TAlPIY7GXEvMe8hBFRgdrR9Ly4qebR/7gfUs9y2IoaVEyog==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.60.3.tgz", + "integrity": "sha512-6lDLl5h4TXpB1mTf2rQWnAk/LcXrx9vBfu/DT5TIPhvMhRWaZ5MxkIc8u4lJAmBo6klTe1ywXIUHFjylW505sg==", "cpu": [ "loong64" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -3689,13 +3761,16 @@ ] }, "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.60.0.tgz", - "integrity": "sha512-RwpnLsqC8qbS8z1H1AxBA1H6qknR4YpPR9w2XX0vo2Sz10miu57PkNcnHVaZkbqyw/kUWfKMI73jhmfi9BRMUQ==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.60.3.tgz", + "integrity": "sha512-BMo8bOw8evlup/8G+cj5xWtPyp93xPdyoSN16Zy90Q2QZ0ZYRhCt6ZJSwbrRzG9HApFabjwj2p25TUPDWrhzqQ==", "cpu": [ "ppc64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3703,13 +3778,16 @@ ] }, "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.60.0.tgz", - "integrity": "sha512-Z8pPf54Ly3aqtdWC3G4rFigZgNvd+qJlOE52fmko3KST9SoGfAdSRCwyoyG05q1HrrAblLbk1/PSIV+80/pxLg==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.60.3.tgz", + "integrity": "sha512-E0L8X1dZN1/Rph+5VPF6Xj2G7JJvMACVXtamTJIDrVI44Y3K+G8gQaMEAavbqCGTa16InptiVrX6eM6pmJ+7qA==", "cpu": [ "ppc64" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -3717,13 +3795,16 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.60.0.tgz", - "integrity": "sha512-3a3qQustp3COCGvnP4SvrMHnPQ9d1vzCakQVRTliaz8cIp/wULGjiGpbcqrkv0WrHTEp8bQD/B3HBjzujVWLOA==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.60.3.tgz", + "integrity": "sha512-oZJ/WHaVfHUiRAtmTAeo3DcevNsVvH8mbvodjZy7D5QKvCefO371SiKRpxoDcCxB3PTRTLayWBkvmDQKTcX/sw==", "cpu": [ "riscv64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3731,13 +3812,16 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.60.0.tgz", - "integrity": "sha512-pjZDsVH/1VsghMJ2/kAaxt6dL0psT6ZexQVrijczOf+PeP2BUqTHYejk3l6TlPRydggINOeNRhvpLa0AYpCWSQ==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.60.3.tgz", + "integrity": "sha512-Dhbyh7j9FybM3YaTgaHmVALwA8AkUwTPccyCQ79TG9AJUsMQqgN1DDEZNr4+QUfwiWvLDumW5vdwzoeUF+TNxQ==", "cpu": [ "riscv64" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -3745,13 +3829,16 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.60.0.tgz", - "integrity": "sha512-3ObQs0BhvPgiUVZrN7gqCSvmFuMWvWvsjG5ayJ3Lraqv+2KhOsp+pUbigqbeWqueGIsnn+09HBw27rJ+gYK4VQ==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.60.3.tgz", + "integrity": "sha512-cJd1X5XhHHlltkaypz1UcWLA8AcoIi1aWhsvaWDskD1oz2eKCypnqvTQ8ykMNI0RSmm7NkTdSqSSD7zM0xa6Ig==", "cpu": [ "s390x" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3765,6 +3852,9 @@ "cpu": [ "x64" ], + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -3772,13 +3862,16 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.60.0.tgz", - "integrity": "sha512-k09oiRCi/bHU9UVFqD17r3eJR9bn03TyKraCrlz5ULFJGdJGi7VOmm9jl44vOJvRJ6P7WuBi/s2A97LxxHGIdw==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.60.3.tgz", + "integrity": "sha512-cRxsE8c13mZOh3vP+wLDxpQBRrOHDIGOWyDL93Sy0Ga8y515fBcC2pjUfFwUe5T7tqvTvWbCpg1URM/AXdWIXA==", "cpu": [ "x64" ], "dev": true, + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -3786,9 +3879,9 @@ ] }, "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.60.0.tgz", - "integrity": "sha512-1o/0/pIhozoSaDJoDcec+IVLbnRtQmHwPV730+AOD29lHEEo4F5BEUB24H0OBdhbBBDwIOSuf7vgg0Ywxdfiiw==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.60.3.tgz", + "integrity": "sha512-QaWcIgRxqEdQdhJqW4DJctsH6HCmo5vHxY0krHSX4jMtOqfzC+dqDGuHM87bu4H8JBeibWx7jFz+h6/4C8wA5Q==", "cpu": [ "x64" ], @@ -3800,9 +3893,9 @@ ] }, "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.60.0.tgz", - "integrity": "sha512-pESDkos/PDzYwtyzB5p/UoNU/8fJo68vcXM9ZW2V0kjYayj1KaaUfi1NmTUTUpMn4UhU4gTuK8gIaFO4UGuMbA==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.60.3.tgz", + "integrity": "sha512-AaXwSvUi3QIPtroAUw1t5yHGIyqKEXwH54WUocFolZhpGDruJcs8c+xPNDRn4XiQsS7MEwnYsHW2l0MBLDMkWg==", "cpu": [ "arm64" ], @@ -3814,9 +3907,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.60.0.tgz", - "integrity": "sha512-hj1wFStD7B1YBeYmvY+lWXZ7ey73YGPcViMShYikqKT1GtstIKQAtfUI6yrzPjAy/O7pO0VLXGmUVWXQMaYgTQ==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.60.3.tgz", + "integrity": "sha512-65LAKM/bAWDqKNEelHlcHvm2V+Vfb8C6INFxQXRHCvaVN1rJfwr4NvdP4FyzUaLqWfaCGaadf6UbTm8xJeYfEg==", "cpu": [ "arm64" ], @@ -3828,9 +3921,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.60.0.tgz", - "integrity": "sha512-SyaIPFoxmUPlNDq5EHkTbiKzmSEmq/gOYFI/3HHJ8iS/v1mbugVa7dXUzcJGQfoytp9DJFLhHH4U3/eTy2Bq4w==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.60.3.tgz", + "integrity": "sha512-EEM2gyhBF5MFnI6vMKdX1LAosE627RGBzIoGMdLloPZkXrUN0Ckqgr2Qi8+J3zip/8NVVro3/FjB+tjhZUgUHA==", "cpu": [ "ia32" ], @@ -3842,9 +3935,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.60.0.tgz", - "integrity": "sha512-RdcryEfzZr+lAr5kRm2ucN9aVlCCa2QNq4hXelZxb8GG0NJSazq44Z3PCCc8wISRuCVnGs0lQJVX5Vp6fKA+IA==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.60.3.tgz", + "integrity": "sha512-E5Eb5H/DpxaoXH++Qkv28RcUJboMopmdDUALBczvHMf7hNIxaDZqwY5lK12UK1BHacSmvupoEWGu+n993Z0y1A==", "cpu": [ "x64" ], @@ -3856,9 +3949,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.60.0.tgz", - "integrity": "sha512-PrsWNQ8BuE00O3Xsx3ALh2Df8fAj9+cvvX9AIA6o4KpATR98c9mud4XtDWVvsEuyia5U4tVSTKygawyJkjm60w==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.60.3.tgz", + "integrity": "sha512-hPt/bgL5cE+Qp+/TPHBqptcAgPzgj46mPcg/16zNUmbQk0j+mOEQV/+Lqu8QRtDV3Ek95Q6FeFITpuhl6OTsAA==", "cpu": [ "x64" ], @@ -3869,55 +3962,13 @@ "win32" ] }, - "node_modules/@smithy/abort-controller": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.2.12.tgz", - "integrity": "sha512-xolrFw6b+2iYGl6EcOL7IJY71vvyZ0DJ3mcKtpykqPe2uscwtzDZJa1uVQXyP7w9Dd+kGwYnPbMsJrGISKiY/Q==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/chunked-blob-reader": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-5.2.2.tgz", - "integrity": "sha512-St+kVicSyayWQca+I1rGitaOEH6uKgE8IUWoYnnEX26SWdWQcL6LvMSD19Lg+vYHKdT9B2Zuu7rd3i6Wnyb/iw==", - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/chunked-blob-reader-native": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-4.2.3.tgz", - "integrity": "sha512-jA5k5Udn7Y5717L86h4EIv06wIr3xn8GM1qHRi/Nf31annXcXHJjBKvgztnbn2TxH3xWrPBfgwHsOwZf0UmQWw==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/util-base64": "^4.3.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@smithy/config-resolver": { - "version": "4.4.13", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.13.tgz", - "integrity": "sha512-iIzMC5NmOUP6WL6o8iPBjFhUhBZ9pPjpUpQYWMUFQqKyXXzOftbfK8zcQCz/jFV1Psmf05BK5ypx4K2r4Tnwdg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.5.0.tgz", + "integrity": "sha512-m5PNfr7xKdIegNG8DlLz+Gf/DlAhHWFGmFbe0DZo9pnvBwuZ3P/9OMtQU0UyWMYy8zjl+HDFVS7rdD9p2xEFjQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.3.12", - "@smithy/types": "^4.13.1", - "@smithy/util-config-provider": "^4.2.2", - "@smithy/util-endpoints": "^3.3.3", - "@smithy/util-middleware": "^4.2.12", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -3925,20 +3976,13 @@ } }, "node_modules/@smithy/core": { - "version": "3.23.12", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.23.12.tgz", - "integrity": "sha512-o9VycsYNtgC+Dy3I0yrwCqv9CWicDnke0L7EVOrZtJpjb2t0EjaEofmMrYc0T1Kn3yk32zm6cspxF9u9Bj7e5w==", + "version": "3.24.0", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.24.0.tgz", + "integrity": "sha512-rZ5YfycIXX6puoGjthnDiMpUgtKNOq3c7CndQYkCNYQTv26AiCrZQOJPy7ANSfZ6Okk3UvCRnmO1OYWlLnYZgg==", "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", - "@smithy/util-base64": "^4.3.2", - "@smithy/util-body-length-browser": "^4.2.2", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-stream": "^4.5.20", - "@smithy/util-utf8": "^4.2.2", - "@smithy/uuid": "^1.1.2", + "@aws-crypto/crc32": "5.2.0", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -3946,30 +3990,13 @@ } }, "node_modules/@smithy/credential-provider-imds": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.2.12.tgz", - "integrity": "sha512-cr2lR792vNZcYMriSIj+Um3x9KWrjcu98kn234xA6reOAFMmbRpQMOv8KPgEmLLtx3eldU6c5wALKFqNOhugmg==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/node-config-provider": "^4.3.12", - "@smithy/property-provider": "^4.2.12", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/eventstream-codec": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.2.12.tgz", - "integrity": "sha512-FE3bZdEl62ojmy8x4FHqxq2+BuOHlcxiH5vaZ6aqHJr3AIZzwF5jfx8dEiU/X0a8RboyNDjmXjlbr8AdEyLgiA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.3.0.tgz", + "integrity": "sha512-5gi+28FH+RurB2+tcRH1CK7KiLJ0dVnabjWLY3DgeFLiU45dbyrsq7NOYvMUcHgu9LVZH5F7G+Qk1GdXF0y6jg==", "license": "Apache-2.0", "dependencies": { - "@aws-crypto/crc32": "5.2.0", - "@smithy/types": "^4.13.1", - "@smithy/util-hex-encoding": "^4.2.2", + "@smithy/core": "^3.24.0", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -3977,13 +4004,12 @@ } }, "node_modules/@smithy/eventstream-serde-browser": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.2.12.tgz", - "integrity": "sha512-XUSuMxlTxV5pp4VpqZf6Sa3vT/Q75FVkLSpSSE3KkWBvAQWeuWt1msTv8fJfgA4/jcJhrbrbMzN1AC/hvPmm5A==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.3.0.tgz", + "integrity": "sha512-JlY17/ZwBJ2O7FK/bKt8PZR+HBkyFwvgssgT6LiB0xYtz5/E5XG/HeKr5q2NMaVm8u8xjFfGk/6DVlbBe1qNkA==", "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-serde-universal": "^4.2.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -3991,12 +4017,12 @@ } }, "node_modules/@smithy/eventstream-serde-config-resolver": { - "version": "4.3.12", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.3.12.tgz", - "integrity": "sha512-7epsAZ3QvfHkngz6RXQYseyZYHlmWXSTPOfPmXkiS+zA6TBNo1awUaMFL9vxyXlGdoELmCZyZe1nQE+imbmV+Q==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.4.0.tgz", + "integrity": "sha512-1Pg7aqxIdMilTbGJKCHTx0toIkKSrHdO6VHCh9oCncWJG+1wkJa90O/xb9mmRPuoOFCg2DLZAqnRyuBiUQnNIA==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4004,27 +4030,12 @@ } }, "node_modules/@smithy/eventstream-serde-node": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.2.12.tgz", - "integrity": "sha512-D1pFuExo31854eAvg89KMn9Oab/wEeJR6Buy32B49A9Ogdtx5fwZPqBHUlDzaCDpycTFk2+fSQgX689Qsk7UGA==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/eventstream-serde-universal": "^4.2.12", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/eventstream-serde-universal": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.2.12.tgz", - "integrity": "sha512-+yNuTiyBACxOJUTvbsNsSOfH9G9oKbaJE1lNL3YHpGcuucl6rPZMi3nrpehpVOVR2E07YqFFmtwpImtpzlouHQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.3.0.tgz", + "integrity": "sha512-Xte1Td6CQpc/D0WnPZ2k98CvF7y1GopylMoGY/r26a9wbRHV5xusRbT6O9vouSeZlvtxoVb4ON/1fLRofO7m4Q==", "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-codec": "^4.2.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4032,15 +4043,13 @@ } }, "node_modules/@smithy/fetch-http-handler": { - "version": "5.3.15", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.15.tgz", - "integrity": "sha512-T4jFU5N/yiIfrtrsb9uOQn7RdELdM/7HbyLNr6uO/mpkj1ctiVs7CihVr51w4LyQlXWDpXFn4BElf1WmQvZu/A==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.4.0.tgz", + "integrity": "sha512-yxurumLvHfgYgM0FVtjOVIyBSJXfno4xKKOgD43wOk9Qh+2lTKfP9Qhu4JHU7IUwrqVPa888byUzomHMgvKVMg==", "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.3.12", - "@smithy/querystring-builder": "^4.2.12", - "@smithy/types": "^4.13.1", - "@smithy/util-base64": "^4.3.2", + "@smithy/core": "^3.24.0", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -4048,14 +4057,12 @@ } }, "node_modules/@smithy/hash-blob-browser": { - "version": "4.2.13", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.2.13.tgz", - "integrity": "sha512-YrF4zWKh+ghLuquldj6e/RzE3xZYL8wIPfkt0MqCRphVICjyyjH8OwKD7LLlKpVEbk4FLizFfC1+gwK6XQdR3g==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.3.0.tgz", + "integrity": "sha512-xOQ7w5hSzTe8IAwQ6BAbX+1d9s9SRwWUbU8cYYh5DHgkYOi131Q5+B9Blelg9u0zoPfM4VYOuuBRAmregPkzpQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/chunked-blob-reader": "^5.2.2", - "@smithy/chunked-blob-reader-native": "^4.2.3", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4063,14 +4070,12 @@ } }, "node_modules/@smithy/hash-node": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.12.tgz", - "integrity": "sha512-QhBYbGrbxTkZ43QoTPrK72DoYviDeg6YKDrHTMJbbC+A0sml3kSjzFtXP7BtbyJnXojLfTQldGdUR0RGD8dA3w==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.3.0.tgz", + "integrity": "sha512-4a+KoVqr1SZtw7cZvY24XU1S5OL+c23MdDQ3jFmMCQ5s9diBFdMG/UIgp5dNqlwvDrWA0U5KO+z3Gzq1ize+LA==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", - "@smithy/util-buffer-from": "^4.2.2", - "@smithy/util-utf8": "^4.2.2", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4078,13 +4083,12 @@ } }, "node_modules/@smithy/hash-stream-node": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.2.12.tgz", - "integrity": "sha512-O3YbmGExeafuM/kP7Y8r6+1y0hIh3/zn6GROx0uNlB54K9oihAL75Qtc+jFfLNliTi6pxOAYZrRKD9A7iA6UFw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.3.0.tgz", + "integrity": "sha512-DPDT0UyOREMPwipO7BzSJfD8z2YYp/x1FMpHqEppBF+gmGr7FoqUUFlXfK+YPOfHhlr8HDJRQpmShNb9C9po5Q==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", - "@smithy/util-utf8": "^4.2.2", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4092,12 +4096,12 @@ } }, "node_modules/@smithy/invalid-dependency": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.12.tgz", - "integrity": "sha512-/4F1zb7Z8LOu1PalTdESFHR0RbPwHd3FcaG1sI3UEIriQTWakysgJr65lc1jj6QY5ye7aFsisajotH6UhWfm/g==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.3.0.tgz", + "integrity": "sha512-TaoGtqi2ZNdGzxUgYcLczjW8rb/h5DQ8vlCMYDSdZ4LRzGQrrEYgUjlZVM9dAagTsLK5gZx1f7+44sFTjz5vuQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4105,11 +4109,12 @@ } }, "node_modules/@smithy/is-array-buffer": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-4.2.2.tgz", - "integrity": "sha512-n6rQ4N8Jj4YTQO3YFrlgZuwKodf4zUFs7EJIWH86pSCWBaAtAGBFfCM7Wx6D2bBJ2xqFNxGBSrUWswT3M0VJow==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-4.3.0.tgz", + "integrity": "sha512-V9ZCT5mHNteWOKtu3LkGHTheEyBWzTU3XydeSOHrqG6znEoCARjxFZ0XP9JJyKV9jxEMx7hNbzGlQaXtKkmvSQ==", "license": "Apache-2.0", "dependencies": { + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4117,13 +4122,12 @@ } }, "node_modules/@smithy/md5-js": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.2.12.tgz", - "integrity": "sha512-W/oIpHCpWU2+iAkfZYyGWE+qkpuf3vEXHLxQQDx9FPNZTTdnul0dZ2d/gUFrtQ5je1G2kp4cjG0/24YueG2LbQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.3.0.tgz", + "integrity": "sha512-bODwWrXILREpCL7XZq1/QxiMqFxdWadw3noiKGjNKsPl1/nvWtLVFInNjK6pmHjM4BUOgfgZkrl9+V56ez2FNA==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", - "@smithy/util-utf8": "^4.2.2", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4131,13 +4135,12 @@ } }, "node_modules/@smithy/middleware-content-length": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.12.tgz", - "integrity": "sha512-YE58Yz+cvFInWI/wOTrB+DbvUVz/pLn5mC5MvOV4fdRUc6qGwygyngcucRQjAhiCEbmfLOXX0gntSIcgMvAjmA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.3.0.tgz", + "integrity": "sha512-IbSiS/3nOxsimCthzElEoBrjQo+Na4bsQ63qyC8qSI8lkMjOv9+VlosDQd8gfNolAD9XmC5tLqYTI0bJGJsscg==", "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4145,18 +4148,12 @@ } }, "node_modules/@smithy/middleware-endpoint": { - "version": "4.4.27", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.4.27.tgz", - "integrity": "sha512-T3TFfUgXQlpcg+UdzcAISdZpj4Z+XECZ/cefgA6wLBd6V4lRi0svN2hBouN/be9dXQ31X4sLWz3fAQDf+nt6BA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.5.0.tgz", + "integrity": "sha512-ux8LgN/m/X7ET2ISRc8G4aKFI1QhINZtkKpoayNPTrhwpsCVxb47mlpYFuWceTlesc0Wmb0S9y6DP195ReQoXA==", "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.23.12", - "@smithy/middleware-serde": "^4.2.15", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", - "@smithy/url-parser": "^4.2.12", - "@smithy/util-middleware": "^4.2.12", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4164,19 +4161,12 @@ } }, "node_modules/@smithy/middleware-retry": { - "version": "4.4.44", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.44.tgz", - "integrity": "sha512-Y1Rav7m5CFRPQyM4CI0koD/bXjyjJu3EQxZZhtLGD88WIrBrQ7kqXM96ncd6rYnojwOo/u9MXu57JrEvu/nLrA==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.6.0.tgz", + "integrity": "sha512-8CtxY9aHT4f3UvZUbU2O0bccRckqTDfTKk3t1DawUZa5DWRZdV2AMABLsdMTdj7KE1uumhzEaT0X7/jTcOtoBw==", "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.3.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/service-error-classification": "^4.2.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-retry": "^4.2.12", - "@smithy/uuid": "^1.1.2", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4184,14 +4174,12 @@ } }, "node_modules/@smithy/middleware-serde": { - "version": "4.2.15", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.15.tgz", - "integrity": "sha512-ExYhcltZSli0pgAKOpQQe1DLFBLryeZ22605y/YS+mQpdNWekum9Ujb/jMKfJKgjtz1AZldtwA/wCYuKJgjjlg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.3.0.tgz", + "integrity": "sha512-c+V02hZlIStscI4ie2VllJjM4DLxdI2SymIBvXmqCqicrNb0NAbgDXDTBiwcMiruaBOqEFYxpKXbz6JjsNEN3Q==", "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.23.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4199,12 +4187,12 @@ } }, "node_modules/@smithy/middleware-stack": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.2.12.tgz", - "integrity": "sha512-kruC5gRHwsCOuyCd4ouQxYjgRAym2uDlCvQ5acuMtRrcdfg7mFBg6blaxcJ09STpt3ziEkis6bhg1uwrWU7txw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.3.0.tgz", + "integrity": "sha512-KtYcs+sJn7AiT0YdM53/6MT0dKsaW2MSAr9MpprRVSfwN9qyKQf2dBIuCXt18/nEZaWerol/bGaQ63G949aovw==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4212,14 +4200,12 @@ } }, "node_modules/@smithy/node-config-provider": { - "version": "4.3.12", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.3.12.tgz", - "integrity": "sha512-tr2oKX2xMcO+rBOjobSwVAkV05SIfUKz8iI53rzxEmgW3GOOPOv0UioSDk+J8OpRQnpnhsO3Af6IEBabQBVmiw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.4.0.tgz", + "integrity": "sha512-5RutFJsYoqK4tWYZOjGQrPLowGf2Ku8rbNuVeGkNJ5axIDO4LV/fydBojPtwcDz2zf87YNCOXfNyuEyAwYgI7A==", "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.2.12", - "@smithy/shared-ini-file-loader": "^4.4.7", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4227,15 +4213,13 @@ } }, "node_modules/@smithy/node-http-handler": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.5.0.tgz", - "integrity": "sha512-Rnq9vQWiR1+/I6NZZMNzJHV6pZYyEHt2ZnuV3MG8z2NNenC4i/8Kzttz7CjZiHSmsN5frhXhg17z3Zqjjhmz1A==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.7.0.tgz", + "integrity": "sha512-PxF57Jr3dPm+RgZWekOL+o96FPdaT62xZUyDfi47uMRFi5rHpwO/ewFbrztrASQ/7H8moNi1sspIHihHpfoKsQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.2.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/querystring-builder": "^4.2.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -4243,12 +4227,12 @@ } }, "node_modules/@smithy/property-provider": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.2.12.tgz", - "integrity": "sha512-jqve46eYU1v7pZ5BM+fmkbq3DerkSluPr5EhvOcHxygxzD05ByDRppRwRPPpFrsFo5yDtCYLKu+kreHKVrvc7A==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.3.0.tgz", + "integrity": "sha512-/YBWtO2SdvPSAUk/Ke1Xpdg1E1lfaNGblla7mnIVGtaGkSQ5bK7KBZqpuj5IokHlU9UcLDvt2QwTLV7oRzBUTA==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4256,64 +4240,25 @@ } }, "node_modules/@smithy/protocol-http": { - "version": "5.3.12", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.3.12.tgz", - "integrity": "sha512-fit0GZK9I1xoRlR4jXmbLhoN0OdEpa96ul8M65XdmXnxXkuMxM0Y8HDT0Fh0Xb4I85MBvBClOzgSrV1X2s1Hxw==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/querystring-builder": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.2.12.tgz", - "integrity": "sha512-6wTZjGABQufekycfDGMEB84BgtdOE/rCVTov+EDXQ8NHKTUNIp/j27IliwP7tjIU9LR+sSzyGBOXjeEtVgzCHg==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1", - "@smithy/util-uri-escape": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/querystring-parser": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.2.12.tgz", - "integrity": "sha512-P2OdvrgiAKpkPNKlKUtWbNZKB1XjPxM086NeVhK+W+wI46pIKdWBe5QyXvhUm3MEcyS/rkLvY8rZzyUdmyDZBw==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.4.0.tgz", + "integrity": "sha512-WG0LgSZg+WbvWYD04uwIYVyMEpyd0cPx1lkqx61JxunxiFti+wGoFiDKr6wswun1r25Z2f8yUoMQWyxjMnnXtw==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { "node": ">=18.0.0" } }, - "node_modules/@smithy/service-error-classification": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.2.12.tgz", - "integrity": "sha512-LlP29oSQN0Tw0b6D0Xo6BIikBswuIiGYbRACy5ujw/JgWSzTdYj46U83ssf6Ux0GyNJVivs2uReU8pt7Eu9okQ==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/types": "^4.13.1" - }, - "engines": { - "node": ">=18.0.0" - } - }, "node_modules/@smithy/shared-ini-file-loader": { - "version": "4.4.7", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.7.tgz", - "integrity": "sha512-HrOKWsUb+otTeo1HxVWeEb99t5ER1XrBi/xka2Wv6NVmTbuCUC1dvlrksdvxFtODLBjsC+PHK+fuy2x/7Ynyiw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.5.0.tgz", + "integrity": "sha512-xATpw6gcurFztdsUrMNaKb2ugqk3545Whhqg7ZD4sxTg+zI27THjg3IY+InXsVWturOWdCdV+UHQx11g9Sp5Kw==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4321,18 +4266,13 @@ } }, "node_modules/@smithy/signature-v4": { - "version": "5.3.12", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.3.12.tgz", - "integrity": "sha512-B/FBwO3MVOL00DaRSXfXfa/TRXRheagt/q5A2NM13u7q+sHS59EOVGQNfG7DkmVtdQm5m3vOosoKAXSqn/OEgw==", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.4.0.tgz", + "integrity": "sha512-nkdB9T8JS6iD5PukE5TB8KqcvMEPVPHVUY7J0odYJgyIM40Du2msUhBdoPNRqRArDDcGQqVQcbzu0CZA7b+Nkw==", "license": "Apache-2.0", "dependencies": { - "@smithy/is-array-buffer": "^4.2.2", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "@smithy/util-hex-encoding": "^4.2.2", - "@smithy/util-middleware": "^4.2.12", - "@smithy/util-uri-escape": "^4.2.2", - "@smithy/util-utf8": "^4.2.2", + "@smithy/core": "^3.24.0", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -4340,17 +4280,13 @@ } }, "node_modules/@smithy/smithy-client": { - "version": "4.12.7", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.12.7.tgz", - "integrity": "sha512-q3gqnwml60G44FECaEEsdQMplYhDMZYCtYhMCzadCnRnnHIobZJjegmdoUo6ieLQlPUzvrMdIJUpx6DoPmzANQ==", + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.13.0.tgz", + "integrity": "sha512-lysfoRCr7PdD9CsPp9VQuJYRGI5mWYb8FRkbdBSQttxpQmW7tZsFgmpBNKVcgvBsAgBCkYX/UQs0NmznuBcZQQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.23.12", - "@smithy/middleware-endpoint": "^4.4.27", - "@smithy/middleware-stack": "^4.2.12", - "@smithy/protocol-http": "^5.3.12", - "@smithy/types": "^4.13.1", - "@smithy/util-stream": "^4.5.20", + "@smithy/core": "^3.24.0", + "@smithy/types": "^4.14.1", "tslib": "^2.6.2" }, "engines": { @@ -4358,9 +4294,9 @@ } }, "node_modules/@smithy/types": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.13.1.tgz", - "integrity": "sha512-787F3yzE2UiJIQ+wYW1CVg2odHjmaWLGksnKQHUrK/lYZSEcy1msuLVvxaR/sI2/aDe9U+TBuLsXnr3vod1g0g==", + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.14.1.tgz", + "integrity": "sha512-59b5HtSVrVR/eYNei3BUj3DCPKD/G7EtDDe7OEJE7i7FtQFugYo6MxbotS8mVJkLNVf8gYaAlEBwwtJ9HzhWSg==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" @@ -4370,13 +4306,12 @@ } }, "node_modules/@smithy/url-parser": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.2.12.tgz", - "integrity": "sha512-wOPKPEpso+doCZGIlr+e1lVI6+9VAKfL4kZWFgzVgGWY2hZxshNKod4l2LXS3PRC9otH/JRSjtEHqQ/7eLciRA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.3.0.tgz", + "integrity": "sha512-I5tCWs/ndLrJrbvlnsN1cOt8PVAbQEqg0nNeQqebD5ynQcbhgch9uA7KmpX9vfq/vEudq0iVYAOxt+4aBkUlWA==", "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.2.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4384,13 +4319,12 @@ } }, "node_modules/@smithy/util-base64": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-4.3.2.tgz", - "integrity": "sha512-XRH6b0H/5A3SgblmMa5ErXQ2XKhfbQB+Fm/oyLZ2O2kCUrwgg55bU0RekmzAhuwOjA9qdN5VU2BprOvGGUkOOQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-4.4.0.tgz", + "integrity": "sha512-puJITyefgQ9a5F+wKylCLkf0VCwesWbaN4O3YCEalRin4N0CTPQu/XA3kz/QsMOTgd3knhd0BQwGCBm/tv0Y1A==", "license": "Apache-2.0", "dependencies": { - "@smithy/util-buffer-from": "^4.2.2", - "@smithy/util-utf8": "^4.2.2", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4398,11 +4332,12 @@ } }, "node_modules/@smithy/util-body-length-browser": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-4.2.2.tgz", - "integrity": "sha512-JKCrLNOup3OOgmzeaKQwi4ZCTWlYR5H4Gm1r2uTMVBXoemo1UEghk5vtMi1xSu2ymgKVGW631e2fp9/R610ZjQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-4.3.0.tgz", + "integrity": "sha512-83U8xa8EmdExGzFuqBzgXvtmbLQIYcCuCNm5no4rlPqpGdOPGUufzMvLdlw+sPTb01qHIsDDNwOecm4s8ROOPw==", "license": "Apache-2.0", "dependencies": { + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4410,11 +4345,12 @@ } }, "node_modules/@smithy/util-body-length-node": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-4.2.3.tgz", - "integrity": "sha512-ZkJGvqBzMHVHE7r/hcuCxlTY8pQr1kMtdsVPs7ex4mMU+EAbcXppfo5NmyxMYi2XU49eqaz56j2gsk4dHHPG/g==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-4.3.0.tgz", + "integrity": "sha512-Ok2v9zPFfd6uOJMTIIJ8HFdCpARD77q4OHYhwhG9y5X1Y9oeQ0CHUQVJD6LhT6l8FUkFYisqcUaZSg7SArFUTA==", "license": "Apache-2.0", "dependencies": { + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4422,83 +4358,76 @@ } }, "node_modules/@smithy/util-buffer-from": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-4.2.2.tgz", - "integrity": "sha512-FDXD7cvUoFWwN6vtQfEta540Y/YBe5JneK3SoZg9bThSoOAC/eGeYEua6RkBgKjGa/sz6Y+DuBZj3+YEY21y4Q==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", "license": "Apache-2.0", "dependencies": { - "@smithy/is-array-buffer": "^4.2.2", + "@smithy/is-array-buffer": "^2.2.0", "tslib": "^2.6.2" }, "engines": { - "node": ">=18.0.0" + "node": ">=14.0.0" } }, - "node_modules/@smithy/util-config-provider": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-4.2.2.tgz", - "integrity": "sha512-dWU03V3XUprJwaUIFVv4iOnS1FC9HnMHDfUrlNDSh4315v0cWyaIErP8KiqGVbf5z+JupoVpNM7ZB3jFiTejvQ==", + "node_modules/@smithy/util-buffer-from/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", "license": "Apache-2.0", "dependencies": { "tslib": "^2.6.2" }, "engines": { - "node": ">=18.0.0" + "node": ">=14.0.0" } }, - "node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.3.43", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.43.tgz", - "integrity": "sha512-Qd/0wCKMaXxev/z00TvNzGCH2jlKKKxXP1aDxB6oKwSQthe3Og2dMhSayGCnsma1bK/kQX1+X7SMP99t6FgiiQ==", + "node_modules/@smithy/util-config-provider": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-4.3.0.tgz", + "integrity": "sha512-kAC6/UB9qW9r2xQAOko2iDxAXmRD2VGMZjnXSEacAhQySdJs58CwvoOE0tHWdtc/lWF4g78X6Z9ucLanJnuVUw==", "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.2.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { "node": ">=18.0.0" } }, - "node_modules/@smithy/util-defaults-mode-node": { - "version": "4.2.47", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.47.tgz", - "integrity": "sha512-qSRbYp1EQ7th+sPFuVcVO05AE0QH635hycdEXlpzIahqHHf2Fyd/Zl+8v0XYMJ3cgDVPa0lkMefU7oNUjAP+DQ==", + "node_modules/@smithy/util-defaults-mode-browser": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.4.0.tgz", + "integrity": "sha512-jKezW5Taa+N2gbkB02UVijH1rFlEJC+cskZzwasFqFJMBBi/bcVgHqcYOX0WOnUk6MDZfHf0gEsr5Br4XMHiAg==", "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.4.13", - "@smithy/credential-provider-imds": "^4.2.12", - "@smithy/node-config-provider": "^4.3.12", - "@smithy/property-provider": "^4.2.12", - "@smithy/smithy-client": "^4.12.7", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { "node": ">=18.0.0" } }, - "node_modules/@smithy/util-endpoints": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.3.3.tgz", - "integrity": "sha512-VACQVe50j0HZPjpwWcjyT51KUQ4AnsvEaQ2lKHOSL4mNLD0G9BjEniQ+yCt1qqfKfiAHRAts26ud7hBjamrwig==", + "node_modules/@smithy/util-defaults-mode-node": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.3.0.tgz", + "integrity": "sha512-xYRuNHHIztu5AzruMJ8kTyA1JsBL/yZKvX5z/A7OHUxsf+rkEESZFZWJDcAj5dDWSu6brWFe5KH6qJNTVztX/w==", "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.3.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { "node": ">=18.0.0" } }, - "node_modules/@smithy/util-hex-encoding": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-4.2.2.tgz", - "integrity": "sha512-Qcz3W5vuHK4sLQdyT93k/rfrUwdJ8/HZ+nMUOyGdpeGA1Wxt65zYwi3oEl9kOM+RswvYq90fzkNDahPS8K0OIg==", + "node_modules/@smithy/util-endpoints": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.5.0.tgz", + "integrity": "sha512-pcvTCp9Wch/9UnWWfRGoG5GJogDXFPjevE+CqALxtPFGA4GqFQRD6eUtgJhHN+NPtohcozI12u1skF2/iubGrQ==", "license": "Apache-2.0", "dependencies": { + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4506,12 +4435,12 @@ } }, "node_modules/@smithy/util-middleware": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.2.12.tgz", - "integrity": "sha512-Er805uFUOvgc0l8nv0e0su0VFISoxhJ/AwOn3gL2NWNY2LUEldP5WtVcRYSQBcjg0y9NfG8JYrCJaYDpupBHJQ==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.3.0.tgz", + "integrity": "sha512-X/DNQxgUCbjjs3HosLmt5Yi1NocxjRFiiOgHml4tVV3w4mIbqZxPR8kq7apGPEMnhIpyxeTgFyypMrfxfn2DlQ==", "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4519,13 +4448,12 @@ } }, "node_modules/@smithy/util-retry": { - "version": "4.2.12", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.2.12.tgz", - "integrity": "sha512-1zopLDUEOwumjcHdJ1mwBHddubYF8GMQvstVCLC54Y46rqoHwlIU+8ZzUeaBcD+WCJHyDGSeZ2ml9YSe9aqcoQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.4.0.tgz", + "integrity": "sha512-pV/Kq4jUuP9raOqwSPeBiut2IWmwbc9vM+nE3ly4YUkzPHbBZvfhikwMOyudER+KHPjakuc8r4TecEPMsI7nVg==", "license": "Apache-2.0", "dependencies": { - "@smithy/service-error-classification": "^4.2.12", - "@smithy/types": "^4.13.1", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4533,30 +4461,12 @@ } }, "node_modules/@smithy/util-stream": { - "version": "4.5.20", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.20.tgz", - "integrity": "sha512-4yXLm5n/B5SRBR2p8cZ90Sbv4zL4NKsgxdzCzp/83cXw2KxLEumt5p+GAVyRNZgQOSrzXn9ARpO0lUe8XSlSDw==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/fetch-http-handler": "^5.3.15", - "@smithy/node-http-handler": "^4.5.0", - "@smithy/types": "^4.13.1", - "@smithy/util-base64": "^4.3.2", - "@smithy/util-buffer-from": "^4.2.2", - "@smithy/util-hex-encoding": "^4.2.2", - "@smithy/util-utf8": "^4.2.2", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/util-uri-escape": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-4.2.2.tgz", - "integrity": "sha512-2kAStBlvq+lTXHyAZYfJRb/DfS3rsinLiwb+69SstC9Vb0s9vNWkRwpnj918Pfi85mzi42sOqdV72OLxWAISnw==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.6.0.tgz", + "integrity": "sha512-BlWg46UASokl3O5YqWmbLpINE5stmAxynXlyOe1nE4dx+tvwgqtT4ug/rPcRg0xVcBnj68XlcOqbXeaGGcH0DA==", "license": "Apache-2.0", "dependencies": { + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4564,12 +4474,12 @@ } }, "node_modules/@smithy/util-utf8": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-4.2.2.tgz", - "integrity": "sha512-75MeYpjdWRe8M5E3AW0O4Cx3UadweS+cwdXjwYGBW5h/gxxnbeZ877sLPX/ZJA9GVTlL/qG0dXP29JWFCD1Ayw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-4.3.0.tgz", + "integrity": "sha512-5hrmCc+dTgZkiFhX72Q16LemYPkvZ1M4pFMOhk0X9tQnLY7dn7zC1+C+aAJn0dw6CXldbqY/KMbMYCwm8yw14g==", "license": "Apache-2.0", "dependencies": { - "@smithy/util-buffer-from": "^4.2.2", + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4577,25 +4487,12 @@ } }, "node_modules/@smithy/util-waiter": { - "version": "4.2.13", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.2.13.tgz", - "integrity": "sha512-2zdZ9DTHngRtcYxJK1GUDxruNr53kv5W2Lupe0LMU+Imr6ohQg8M2T14MNkj1Y0wS3FFwpgpGQyvuaMF7CiTmQ==", - "license": "Apache-2.0", - "dependencies": { - "@smithy/abort-controller": "^4.2.12", - "@smithy/types": "^4.13.1", - "tslib": "^2.6.2" - }, - "engines": { - "node": ">=18.0.0" - } - }, - "node_modules/@smithy/uuid": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@smithy/uuid/-/uuid-1.1.2.tgz", - "integrity": "sha512-O/IEdcCUKkubz60tFbGA7ceITTAJsty+lBjNoorP4Z6XRqaFb/OjQjZODophEcuq68nKm6/0r+6/lLQ+XVpk8g==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.4.0.tgz", + "integrity": "sha512-7kAlrB3n7/BHyw+uLq83d5jdadPUcDkdMOUSGxvpXjrJ++G0hTedTnoNChjybIxhZ/Gk7sCrfIOLkMAB0LhRBA==", "license": "Apache-2.0", "dependencies": { + "@smithy/core": "^3.24.0", "tslib": "^2.6.2" }, "engines": { @@ -4609,29 +4506,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@surma/rollup-plugin-off-main-thread": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz", - "integrity": "sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "ejs": "^3.1.6", - "json5": "^2.2.0", - "magic-string": "^0.25.0", - "string.prototype.matchall": "^4.0.6" - } - }, - "node_modules/@surma/rollup-plugin-off-main-thread/node_modules/magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "sourcemap-codec": "^1.4.8" - } - }, "node_modules/@theshelf/authentication": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@theshelf/authentication/-/authentication-0.4.3.tgz", @@ -4768,6 +4642,22 @@ "@theshelf/validation": "^0.4.3" } }, + "node_modules/@trickfilm400/rollup-plugin-off-main-thread": { + "version": "3.0.0-pre1", + "resolved": "https://registry.npmjs.org/@trickfilm400/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-3.0.0-pre1.tgz", + "integrity": "sha512-/67zpWDBLV+oYAEL682s1ktXL0HgqX76f6gaVGkGnVZlBbm1zd0v4Bz8MFF2GGhoX9rvfq3KSQHubFHwa6w6/Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "ejs": "^3.1.10", + "json5": "^2.2.3", + "magic-string": "^0.30.21", + "string.prototype.matchall": "^4.0.12" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", @@ -4832,9 +4722,9 @@ "license": "MIT" }, "node_modules/@types/estree": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", "dev": true, "license": "MIT" }, @@ -4847,13 +4737,13 @@ "peer": true }, "node_modules/@types/node": { - "version": "25.3.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.0.tgz", - "integrity": "sha512-4K3bqJpXpqfg2XKGK9bpDTc6xO/xoUP/RBWS7AtRMug6zZFaRekiLzjVtAoZMquxoAbzBvy5nxQ7veS5eYzf8A==", + "version": "24.10.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.4.tgz", + "integrity": "sha512-vnDVpYPMzs4wunl27jHrfmwojOGKya0xyM3sH+UE5iv5uPS6vX7UIoh6m+vQc5LGBq52HBKPIn/zcSZVzeDEZg==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~7.18.0" + "undici-types": "~7.16.0" } }, "node_modules/@types/react": { @@ -5101,9 +4991,9 @@ "license": "MIT" }, "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", - "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz", + "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==", "dev": true, "license": "MIT", "dependencies": { @@ -5127,9 +5017,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", "dev": true, "license": "ISC", "bin": { @@ -5395,9 +5285,9 @@ } }, "node_modules/ajv": { - "version": "6.14.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.14.0.tgz", - "integrity": "sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==", + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", "dev": true, "license": "MIT", "peer": true, @@ -5723,9 +5613,9 @@ } }, "node_modules/baseline-browser-mapping": { - "version": "2.10.12", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.12.tgz", - "integrity": "sha512-qyq26DxfY4awP2gIRXhhLWfwzwI+N5Nxk6iQi8EFizIaWIjqicQTE4sLnZZVdeKPRcVNoJOkkpfzoIYuvCKaIQ==", + "version": "2.10.28", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.28.tgz", + "integrity": "sha512-Ic44hnOtFIgravCunj1ifSoQPSUrkNiJuH9Mf6jr2jjoA74icqV8wU0KuadXeOR8zuIJMOoTv0GuQjZ9ZYNMeA==", "dev": true, "license": "Apache-2.0", "bin": { @@ -5779,9 +5669,9 @@ "license": "MIT" }, "node_modules/brace-expansion": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.5.tgz", - "integrity": "sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==", + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.6.tgz", + "integrity": "sha512-kLpxurY4Z4r9sgMsyG0Z9uzsBlgiU/EFKhj/h91/8yHu0edo7XuixOIH3VcJ8kkxs6/jPzoI6U9Vj3WqbMQ94g==", "license": "MIT", "dependencies": { "balanced-match": "^4.0.2" @@ -5804,9 +5694,9 @@ } }, "node_modules/browserslist": { - "version": "4.28.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.2.tgz", + "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==", "dev": true, "funding": [ { @@ -5824,11 +5714,11 @@ ], "license": "MIT", "dependencies": { - "baseline-browser-mapping": "^2.9.0", - "caniuse-lite": "^1.0.30001759", - "electron-to-chromium": "^1.5.263", - "node-releases": "^2.0.27", - "update-browserslist-db": "^1.2.0" + "baseline-browser-mapping": "^2.10.12", + "caniuse-lite": "^1.0.30001782", + "electron-to-chromium": "^1.5.328", + "node-releases": "^2.0.36", + "update-browserslist-db": "^1.2.3" }, "bin": { "browserslist": "cli.js" @@ -5863,15 +5753,15 @@ } }, "node_modules/call-bind": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", - "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", + "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind-apply-helpers": "^1.0.0", - "es-define-property": "^1.0.0", - "get-intrinsic": "^1.2.4", + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "get-intrinsic": "^1.3.0", "set-function-length": "^1.2.2" }, "engines": { @@ -5922,9 +5812,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001782", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001782.tgz", - "integrity": "sha512-dZcaJLJeDMh4rELYFw1tvSn1bhZWYFOt468FcbHHxx/Z/dFidd1I6ciyFdi3iwfQCyOjqo9upF6lGQYtMiJWxw==", + "version": "1.0.30001792", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001792.tgz", + "integrity": "sha512-hVLMUZFgR4JJ6ACt1uEESvQN1/dBVqPAKY0hgrV70eN3391K6juAfTjKZLKvOMsx8PxA7gsY1/tLMMTcfFLLpw==", "dev": true, "funding": [ { @@ -6058,9 +5948,9 @@ "license": "MIT" }, "node_modules/content-disposition": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.1.tgz", - "integrity": "sha512-oIXISMynqSqm241k6kcQ5UwttDILMK4BiurCfGEREw6+X9jkkpEe5T9FZaApyLGGOnFuyMWZpdolTXMtvEJ08Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz", + "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==", "license": "MIT", "engines": { "node": ">=18" @@ -6468,9 +6358,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.328", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.328.tgz", - "integrity": "sha512-QNQ5l45DzYytThO21403XN3FvK0hOkWDG8viNf6jqS42msJ8I4tGDSpBCgvDRRPnkffafiwAym2X2eHeGD2V0w==", + "version": "1.5.353", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.353.tgz", + "integrity": "sha512-kOrWphBi8TOZyiJZqsgqIle0lw+tzmnQK83pV9dZUd01Nm2POECSyFQMAuarzZdYqQW7FH9RaYOuaRo3h+bQ3w==", "dev": true, "license": "ISC" }, @@ -6496,9 +6386,9 @@ } }, "node_modules/es-abstract": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.1.tgz", - "integrity": "sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==", + "version": "1.24.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz", + "integrity": "sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==", "dev": true, "license": "MIT", "dependencies": { @@ -6583,16 +6473,16 @@ } }, "node_modules/es-iterator-helpers": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.3.1.tgz", - "integrity": "sha512-zWwRvqWiuBPr0muUG/78cW3aHROFCNIQ3zpmYDpwdbnt2m+xlNyRWpHBpa2lJjSBit7BQ+RXA1iwbSmu5yJ/EQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.3.2.tgz", + "integrity": "sha512-HVLACW1TppGYjJ8H6/jqH/pqOtKRw6wMlrB23xfExmFWxFquAIWCmwoLsOyN96K4a5KbmOf5At9ZUO3GZbetAw==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.8", + "call-bind": "^1.0.9", "call-bound": "^1.0.4", "define-properties": "^1.2.1", - "es-abstract": "^1.24.1", + "es-abstract": "^1.24.2", "es-errors": "^1.3.0", "es-set-tostringtag": "^2.1.0", "function-bind": "^1.1.2", @@ -6604,8 +6494,7 @@ "has-symbols": "^1.1.0", "internal-slot": "^1.1.0", "iterator.prototype": "^1.1.5", - "math-intrinsics": "^1.1.0", - "safe-array-concat": "^1.1.3" + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -6678,9 +6567,9 @@ } }, "node_modules/esbuild": { - "version": "0.27.4", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.4.tgz", - "integrity": "sha512-Rq4vbHnYkK5fws5NF7MYTU68FPRE1ajX7heQ/8QXXWqNgqqJ/GkmmyxIzUnf2Sr/bakf8l54716CcMGHYhMrrQ==", + "version": "0.27.7", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.7.tgz", + "integrity": "sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -6691,32 +6580,32 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.27.4", - "@esbuild/android-arm": "0.27.4", - "@esbuild/android-arm64": "0.27.4", - "@esbuild/android-x64": "0.27.4", - "@esbuild/darwin-arm64": "0.27.4", - "@esbuild/darwin-x64": "0.27.4", - "@esbuild/freebsd-arm64": "0.27.4", - "@esbuild/freebsd-x64": "0.27.4", - "@esbuild/linux-arm": "0.27.4", - "@esbuild/linux-arm64": "0.27.4", - "@esbuild/linux-ia32": "0.27.4", - "@esbuild/linux-loong64": "0.27.4", - "@esbuild/linux-mips64el": "0.27.4", - "@esbuild/linux-ppc64": "0.27.4", - "@esbuild/linux-riscv64": "0.27.4", - "@esbuild/linux-s390x": "0.27.4", - "@esbuild/linux-x64": "0.27.4", - "@esbuild/netbsd-arm64": "0.27.4", - "@esbuild/netbsd-x64": "0.27.4", - "@esbuild/openbsd-arm64": "0.27.4", - "@esbuild/openbsd-x64": "0.27.4", - "@esbuild/openharmony-arm64": "0.27.4", - "@esbuild/sunos-x64": "0.27.4", - "@esbuild/win32-arm64": "0.27.4", - "@esbuild/win32-ia32": "0.27.4", - "@esbuild/win32-x64": "0.27.4" + "@esbuild/aix-ppc64": "0.27.7", + "@esbuild/android-arm": "0.27.7", + "@esbuild/android-arm64": "0.27.7", + "@esbuild/android-x64": "0.27.7", + "@esbuild/darwin-arm64": "0.27.7", + "@esbuild/darwin-x64": "0.27.7", + "@esbuild/freebsd-arm64": "0.27.7", + "@esbuild/freebsd-x64": "0.27.7", + "@esbuild/linux-arm": "0.27.7", + "@esbuild/linux-arm64": "0.27.7", + "@esbuild/linux-ia32": "0.27.7", + "@esbuild/linux-loong64": "0.27.7", + "@esbuild/linux-mips64el": "0.27.7", + "@esbuild/linux-ppc64": "0.27.7", + "@esbuild/linux-riscv64": "0.27.7", + "@esbuild/linux-s390x": "0.27.7", + "@esbuild/linux-x64": "0.27.7", + "@esbuild/netbsd-arm64": "0.27.7", + "@esbuild/netbsd-x64": "0.27.7", + "@esbuild/openbsd-arm64": "0.27.7", + "@esbuild/openbsd-x64": "0.27.7", + "@esbuild/openharmony-arm64": "0.27.7", + "@esbuild/sunos-x64": "0.27.7", + "@esbuild/win32-arm64": "0.27.7", + "@esbuild/win32-ia32": "0.27.7", + "@esbuild/win32-x64": "0.27.7" } }, "node_modules/escalade": { @@ -6869,9 +6758,9 @@ "license": "MIT" }, "node_modules/eslint-plugin-react/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "license": "MIT", "dependencies": { @@ -6957,9 +6846,9 @@ "peer": true }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.13.tgz", - "integrity": "sha512-9ZLprWS6EENmhEOpjCYW2c8VkmOvckIJZfkr7rBW6dObmfgJ/L1GpSYW5Hpo9lDz4D1+n0Ckz8rU7FwHDQiG/w==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.14.tgz", + "integrity": "sha512-MWPGfDxnyzKU7rNOW9SP/c50vi3xrmrua/+6hfPbCS2ABNWfx24vPidzvC7krjU/RTo235sV776ymlsMtGKj8g==", "dev": true, "license": "MIT", "peer": true, @@ -7070,6 +6959,19 @@ "node": ">=0.10.0" } }, + "node_modules/eta": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eta/-/eta-4.6.0.tgz", + "integrity": "sha512-lW6is4T1NFOYnmqGZIfvixqj7A7sSvScF+DN8EK6K58xI5MZ5UvYe0GjopxOXQtZvUn4eDdVuZ8XSoYWTMEKwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/bgub/eta?sponsor=1" + } + }, "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", @@ -7185,9 +7087,9 @@ "peer": true }, "node_modules/fast-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz", - "integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.2.tgz", + "integrity": "sha512-rVjf7ArG3LTk+FS6Yw81V1DLuZl1bRbNrev6Tmd/9RaroeeRRJhAt7jg/6YFxbvAQXUCavSoZhPPj6oOx+5KjQ==", "dev": true, "funding": [ { @@ -7202,9 +7104,9 @@ "license": "BSD-3-Clause" }, "node_modules/fast-xml-builder": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.1.4.tgz", - "integrity": "sha512-f2jhpN4Eccy0/Uz9csxh3Nu6q4ErKxf0XIsasomfOihuSUa3/xw6w8dnOtCDgEItQFJG8KyXPzQXzcODDrrbOg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.2.0.tgz", + "integrity": "sha512-00aAWieqff+ZJhsXA4g1g7M8k+7AYoMUUHF+/zFb5U6Uv/P0Vl4QZo84/IcufzYalLuEj9928bXN9PbbFzMF0Q==", "funding": [ { "type": "github", @@ -7213,13 +7115,14 @@ ], "license": "MIT", "dependencies": { - "path-expression-matcher": "^1.1.3" + "path-expression-matcher": "^1.5.0", + "xml-naming": "^0.1.0" } }, "node_modules/fast-xml-parser": { - "version": "5.5.8", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.5.8.tgz", - "integrity": "sha512-Z7Fh2nVQSb2d+poDViM063ix2ZGt9jmY1nWhPfHBOK2Hgnb/OW3P4Et3P/81SEej0J7QbWtJqxO05h8QYfK7LQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.7.2.tgz", + "integrity": "sha512-P7oW7tLbYnhOLQk/Gv7cZgzgMPP/XN03K02/Jy6Y/NHzyIAIpxuZIM/YqAkfiXFPxA2CTm7NtCijK9EDu09u2w==", "funding": [ { "type": "github", @@ -7228,9 +7131,10 @@ ], "license": "MIT", "dependencies": { - "fast-xml-builder": "^1.1.4", - "path-expression-matcher": "^1.2.0", - "strnum": "^2.2.0" + "@nodable/entities": "^2.1.0", + "fast-xml-builder": "^1.1.5", + "path-expression-matcher": "^1.5.0", + "strnum": "^2.2.3" }, "bin": { "fxparser": "src/cli/cli.js" @@ -7278,9 +7182,9 @@ "license": "MIT" }, "node_modules/filelist/node_modules/brace-expansion": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.3.tgz", - "integrity": "sha512-MCV/fYJEbqx68aE58kv2cA/kiky1G8vux3OR6/jbS+jIMe/6fJWa0DTzJU7dqijOWYwHi1t29FlfYI9uytqlpA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz", + "integrity": "sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w==", "dev": true, "license": "MIT", "dependencies": { @@ -7434,9 +7338,9 @@ } }, "node_modules/fs-extra": { - "version": "11.3.4", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.4.tgz", - "integrity": "sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==", + "version": "11.3.5", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.5.tgz", + "integrity": "sha512-eKpRKAovdpZtR1WopLHxlBWvAgPny3c4gX1G5Jhwmmw4XJj0ifSD5qB5TOo8hmA0wlRKDAOAhEE1yVPgs6Fgcg==", "dev": true, "license": "MIT", "dependencies": { @@ -7586,9 +7490,9 @@ } }, "node_modules/get-tsconfig": { - "version": "4.13.7", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.7.tgz", - "integrity": "sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q==", + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.14.0.tgz", + "integrity": "sha512-yTb+8DXzDREzgvYmh6s9vHsSVCHeC0G3PI5bEXNBHtmshPnO+S5O7qgLEOn0I5QvMy6kpZN8K1NKGyilLb93wA==", "dev": true, "license": "MIT", "dependencies": { @@ -7818,9 +7722,9 @@ } }, "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.3.tgz", + "integrity": "sha512-ej4AhfhfL2Q2zpMmLo7U1Uv9+PyhIZpgQLGT1F9miIGmiCJIoCgSmczFdrc97mWT4kVY72KA+WnnhJ5pghSvSg==", "license": "MIT", "dependencies": { "function-bind": "^1.1.2" @@ -8082,13 +7986,13 @@ } }, "node_modules/is-core-module": { - "version": "2.16.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "version": "2.16.2", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.2.tgz", + "integrity": "sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==", "dev": true, "license": "MIT", "dependencies": { - "hasown": "^2.0.2" + "hasown": "^2.0.3" }, "engines": { "node": ">= 0.4" @@ -8585,9 +8489,9 @@ } }, "node_modules/jose": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.2.tgz", - "integrity": "sha512-d7kPDd34KO/YnzaDOlikGpOurfF0ByC2sEV4cANCtdqLlTfBlw2p14O/5d/zv40gJPbIQxfES3nSx1/oYNyuZQ==", + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.3.tgz", + "integrity": "sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/panva" @@ -8665,9 +8569,9 @@ } }, "node_modules/jsonfile": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", - "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", "dev": true, "license": "MIT", "dependencies": { @@ -8756,13 +8660,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/lodash": { - "version": "4.17.23", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", - "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==", - "dev": true, - "license": "MIT" - }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", @@ -8847,9 +8744,9 @@ } }, "node_modules/make-dir/node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.0.tgz", + "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==", "dev": true, "license": "ISC", "bin": { @@ -8945,12 +8842,12 @@ } }, "node_modules/minimatch": { - "version": "10.2.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.4.tgz", - "integrity": "sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==", + "version": "10.2.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz", + "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==", "license": "BlueOak-1.0.0", "dependencies": { - "brace-expansion": "^5.0.2" + "brace-expansion": "^5.0.5" }, "engines": { "node": "18 || 20 || >=22" @@ -9058,9 +8955,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.11", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", "funding": [ { "type": "github", @@ -9111,9 +9008,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.36", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.36.tgz", - "integrity": "sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==", + "version": "2.0.38", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.38.tgz", + "integrity": "sha512-3qT/88Y3FbH/Kx4szpQQ4HzUbVrHPKTLVpVocKiLfoYvw9XSGOX2FmD2d6DrXbVYyAQTF2HeF6My8jmzx7/CRw==", "dev": true, "license": "MIT" }, @@ -9128,9 +9025,9 @@ } }, "node_modules/oauth4webapi": { - "version": "3.8.5", - "resolved": "https://registry.npmjs.org/oauth4webapi/-/oauth4webapi-3.8.5.tgz", - "integrity": "sha512-A8jmyUckVhRJj5lspguklcl90Ydqk61H3dcU0oLhH3Yv13KpAliKTt5hknpGGPZSSfOwGyraNEFmofDYH+1kSg==", + "version": "3.8.6", + "resolved": "https://registry.npmjs.org/oauth4webapi/-/oauth4webapi-3.8.6.tgz", + "integrity": "sha512-iwemM91xz8nryHti2yTmg5fhyEMVOkOXwHNqbvcATjyajb5oQxCQzrNOA6uElRHuMhQQTKUyFKV9y/CNyg25BQ==", "license": "MIT", "funding": { "url": "https://github.com/sponsors/panva" @@ -9420,9 +9317,9 @@ } }, "node_modules/path-expression-matcher": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.2.0.tgz", - "integrity": "sha512-DwmPWeFn+tq7TiyJ2CxezCAirXjFxvaiD03npak3cRjlP9+OjTmSy1EpIrEbh+l6JgUundniloMLDQ/6VTdhLQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.5.0.tgz", + "integrity": "sha512-cbrerZV+6rvdQrrD+iGMcZFEiiSrbv9Tfdkvnusy6y0x0GKBXREFg/Y65GhIfm0tnLntThhzCnfKwp1WRjeCyQ==", "funding": [ { "type": "github", @@ -9468,18 +9365,18 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "11.2.7", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.7.tgz", - "integrity": "sha512-aY/R+aEsRelme17KGQa/1ZSIpLpNYYrhcrepKTZgE+W3WM16YMCaPwOHLHsmopZHELU0Ojin1lPVxKR0MihncA==", + "version": "11.3.6", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.3.6.tgz", + "integrity": "sha512-Gf/KoL3C/MlI7Bt0PGI9I+TeTC/I6r/csU58N4BSNc4lppLBeKsOdFYkK+dX0ABDUMJNfCHTyPpzwwO21Awd3A==", "license": "BlueOak-1.0.0", "engines": { "node": "20 || >=22" } }, "node_modules/path-to-regexp": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.0.tgz", - "integrity": "sha512-PuseHIvAnz3bjrM2rGJtSgo1zjgxapTLZ7x2pjhzWwlp4SJQgK3f3iZIQwkpEnBaKz6seKBADpM4B4ySkuYypg==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz", + "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==", "license": "MIT", "funding": { "type": "opencollective", @@ -9546,9 +9443,9 @@ } }, "node_modules/postcss": { - "version": "8.5.8", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.8.tgz", - "integrity": "sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==", + "version": "8.5.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.14.tgz", + "integrity": "sha512-SoSL4+OSEtR99LHFZQiJLkT59C5B1amGO1NzTwj7TT1qCUgUO6hxOvzkOYxD+vMrXBM3XJIKzokoERdqQq/Zmg==", "funding": [ { "type": "opencollective", @@ -9632,9 +9529,9 @@ } }, "node_modules/qs": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.0.tgz", - "integrity": "sha512-mAZTtNCeetKMH+pSjrb76NAM8V9a05I9aBZOHztWy/UqcJdQYNsf59vrRKWnojAT9Y+GbIvoTBC++CPHqpDBhQ==", + "version": "6.15.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.1.tgz", + "integrity": "sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==", "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.1.0" @@ -9702,24 +9599,24 @@ } }, "node_modules/react": { - "version": "19.2.4", - "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", - "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", + "version": "19.2.6", + "resolved": "https://registry.npmjs.org/react/-/react-19.2.6.tgz", + "integrity": "sha512-sfWGGfavi0xr8Pg0sVsyHMAOziVYKgPLNrS7ig+ivMNb3wbCBw3KxtflsGBAwD3gYQlE/AEZsTLgToRrSCjb0Q==", "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/react-dom": { - "version": "19.2.4", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", - "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", + "version": "19.2.6", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.6.tgz", + "integrity": "sha512-0prMI+hvBbPjsWnxDLxlCGyM8PN6UuWjEUCYmZhO67xIV9Xasa/r/vDnq+Xyq4Lo27g8QSbO5YzARu0D1Sps3g==", "license": "MIT", "dependencies": { "scheduler": "^0.27.0" }, "peerDependencies": { - "react": "^19.2.4" + "react": "^19.2.6" } }, "node_modules/react-is": { @@ -9740,9 +9637,9 @@ } }, "node_modules/react-router": { - "version": "7.13.2", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.13.2.tgz", - "integrity": "sha512-tX1Aee+ArlKQP+NIUd7SE6Li+CiGKwQtbS+FfRxPX6Pe4vHOo6nr9d++u5cwg+Z8K/x8tP+7qLmujDtfrAoUJA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.15.0.tgz", + "integrity": "sha512-HW9vYwuM8f4yx66Izy8xfrzCM+SBJluoZcCbww9A1TySax11S5Vgw6fi3ZjMONw9J4gQwngL7PzkyIpJJpJ7RQ==", "license": "MIT", "dependencies": { "cookie": "^1.0.1", @@ -9762,12 +9659,12 @@ } }, "node_modules/react-router-dom": { - "version": "7.13.2", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.13.2.tgz", - "integrity": "sha512-aR7SUORwTqAW0JDeiWF07e9SBE9qGpByR9I8kJT5h/FrBKxPMS6TiC7rmVO+gC0q52Bx7JnjWe8Z1sR9faN4YA==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.15.0.tgz", + "integrity": "sha512-VcrVg64Fo8nwBvDscajG8gRTLIuTC6N50nb22l2HOOV4PTOHgoGp8mUjy9wLiHYoYTSYI36tUnXZgasSRFZorQ==", "license": "MIT", "dependencies": { - "react-router": "7.13.2" + "react-router": "7.15.0" }, "engines": { "node": ">=20.0.0" @@ -9893,9 +9790,9 @@ "license": "MIT" }, "node_modules/regjsparser": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.0.tgz", - "integrity": "sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==", + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.1.tgz", + "integrity": "sha512-dLsljMd9sqwRkby8zhO1gSg3PnJIBFid8f4CQj/sXx+7cKx+E7u0PKhZ+U4wmhx7EfmtvnA318oVaIkAB1lRJw==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -9916,12 +9813,13 @@ } }, "node_modules/resolve": { - "version": "1.22.11", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "version": "1.22.12", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.12.tgz", + "integrity": "sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==", "dev": true, "license": "MIT", "dependencies": { + "es-errors": "^1.3.0", "is-core-module": "^2.16.1", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" @@ -10007,9 +9905,9 @@ } }, "node_modules/rollup": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.0.tgz", - "integrity": "sha512-yqjxruMGBQJ2gG4HtjZtAfXArHomazDHoFwFFmZZl0r7Pdo7qCIXKqKHZc8yeoMgzJJ+pO6pEEHa+V7uzWlrAQ==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.60.3.tgz", + "integrity": "sha512-pAQK9HalE84QSm4Po3EmWIZPd3FnjkShVkiMlz1iligWYkWQ7wHYd1PF/T7QZ5TVSD6uSTon5gBVMSM4JfBV+A==", "dev": true, "license": "MIT", "dependencies": { @@ -10023,48 +9921,58 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.60.0", - "@rollup/rollup-android-arm64": "4.60.0", - "@rollup/rollup-darwin-arm64": "4.60.0", - "@rollup/rollup-darwin-x64": "4.60.0", - "@rollup/rollup-freebsd-arm64": "4.60.0", - "@rollup/rollup-freebsd-x64": "4.60.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.60.0", - "@rollup/rollup-linux-arm-musleabihf": "4.60.0", - "@rollup/rollup-linux-arm64-gnu": "4.60.0", - "@rollup/rollup-linux-arm64-musl": "4.60.0", - "@rollup/rollup-linux-loong64-gnu": "4.60.0", - "@rollup/rollup-linux-loong64-musl": "4.60.0", - "@rollup/rollup-linux-ppc64-gnu": "4.60.0", - "@rollup/rollup-linux-ppc64-musl": "4.60.0", - "@rollup/rollup-linux-riscv64-gnu": "4.60.0", - "@rollup/rollup-linux-riscv64-musl": "4.60.0", - "@rollup/rollup-linux-s390x-gnu": "4.60.0", - "@rollup/rollup-linux-x64-gnu": "4.60.0", - "@rollup/rollup-linux-x64-musl": "4.60.0", - "@rollup/rollup-openbsd-x64": "4.60.0", - "@rollup/rollup-openharmony-arm64": "4.60.0", - "@rollup/rollup-win32-arm64-msvc": "4.60.0", - "@rollup/rollup-win32-ia32-msvc": "4.60.0", - "@rollup/rollup-win32-x64-gnu": "4.60.0", - "@rollup/rollup-win32-x64-msvc": "4.60.0", + "@rollup/rollup-android-arm-eabi": "4.60.3", + "@rollup/rollup-android-arm64": "4.60.3", + "@rollup/rollup-darwin-arm64": "4.60.3", + "@rollup/rollup-darwin-x64": "4.60.3", + "@rollup/rollup-freebsd-arm64": "4.60.3", + "@rollup/rollup-freebsd-x64": "4.60.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.60.3", + "@rollup/rollup-linux-arm-musleabihf": "4.60.3", + "@rollup/rollup-linux-arm64-gnu": "4.60.3", + "@rollup/rollup-linux-arm64-musl": "4.60.3", + "@rollup/rollup-linux-loong64-gnu": "4.60.3", + "@rollup/rollup-linux-loong64-musl": "4.60.3", + "@rollup/rollup-linux-ppc64-gnu": "4.60.3", + "@rollup/rollup-linux-ppc64-musl": "4.60.3", + "@rollup/rollup-linux-riscv64-gnu": "4.60.3", + "@rollup/rollup-linux-riscv64-musl": "4.60.3", + "@rollup/rollup-linux-s390x-gnu": "4.60.3", + "@rollup/rollup-linux-x64-gnu": "4.60.3", + "@rollup/rollup-linux-x64-musl": "4.60.3", + "@rollup/rollup-openbsd-x64": "4.60.3", + "@rollup/rollup-openharmony-arm64": "4.60.3", + "@rollup/rollup-win32-arm64-msvc": "4.60.3", + "@rollup/rollup-win32-ia32-msvc": "4.60.3", + "@rollup/rollup-win32-x64-gnu": "4.60.3", + "@rollup/rollup-win32-x64-msvc": "4.60.3", "fsevents": "~2.3.2" } }, "node_modules/rollup/node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.60.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.60.0.tgz", - "integrity": "sha512-EtylprDtQPdS5rXvAayrNDYoJhIz1/vzN2fEubo3yLE7tfAw+948dO0g4M0vkTVFhKojnF+n6C8bDNe+gDRdTg==", + "version": "4.60.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.60.3.tgz", + "integrity": "sha512-DAZDBHQfG2oQuhY7mc6I3/qB4LU2fQCjRvxbDwd/Jdvb9fypP4IJ4qmtu6lNjes6B531AI8cg1aKC2di97bUxA==", "cpu": [ "x64" ], "dev": true, + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ "linux" ] }, + "node_modules/rollup/node_modules/@types/estree": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", + "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", + "dev": true, + "license": "MIT" + }, "node_modules/router": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz", @@ -10106,15 +10014,15 @@ } }, "node_modules/safe-array-concat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", - "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.4.tgz", + "integrity": "sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.2", - "get-intrinsic": "^1.2.6", + "call-bind": "^1.0.9", + "call-bound": "^1.0.4", + "get-intrinsic": "^1.3.0", "has-symbols": "^1.1.0", "isarray": "^2.0.5" }, @@ -10389,13 +10297,13 @@ } }, "node_modules/side-channel-list": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", - "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0", - "object-inspect": "^1.13.3" + "object-inspect": "^1.13.4" }, "engines": { "node": ">= 0.4" @@ -10554,14 +10462,6 @@ "webidl-conversions": "^4.0.2" } }, - "node_modules/sourcemap-codec": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "deprecated": "Please use @jridgewell/sourcemap-codec instead", - "dev": true, - "license": "MIT" - }, "node_modules/sparse-bitfield": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", @@ -10746,9 +10646,9 @@ } }, "node_modules/strnum": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.2.2.tgz", - "integrity": "sha512-DnR90I+jtXNSTXWdwrEy9FakW7UX+qUZg28gj5fk2vxxl7uS/3bpI4fjFYVmdK9etptYBPNkpahuQnEwhwECqA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.3.0.tgz", + "integrity": "sha512-ums3KNd42PGyx5xaoVTO1mjU1bH3NpY4vsrVlnv9PNGqQj8wd7rJ6nEypLrJ7z5vxK5RP0yMLo6J/Gsm62DI5Q==", "funding": [ { "type": "github", @@ -10823,9 +10723,9 @@ } }, "node_modules/terser": { - "version": "5.46.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.46.1.tgz", - "integrity": "sha512-vzCjQO/rgUuK9sf8VJZvjqiqiHFaZLnOiimmUuOKODxWL8mm/xua7viT7aqX7dgPY60otQjUotzFMmCB4VdmqQ==", + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.47.1.tgz", + "integrity": "sha512-tPbLXTI6ohPASb/1YViL428oEHu6/qv1OxqYnfaonVCFHqx4+wCd95pHrQWsL5X4pl90CTyW9piSAsS2L0VoMw==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -10856,9 +10756,9 @@ "license": "MIT" }, "node_modules/tinyexec": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.4.tgz", - "integrity": "sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.1.2.tgz", + "integrity": "sha512-dAqSqE/RabpBKI8+h26GfLq6Vb3JVXs30XYQjdMjaj/c2tS8IYYMbIzP599KtRj7c57/wYApb3QjgRgXmrCukA==", "dev": true, "license": "MIT", "engines": { @@ -10866,14 +10766,14 @@ } }, "node_modules/tinyglobby": { - "version": "0.2.15", - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", - "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", + "version": "0.2.16", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", + "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", "dev": true, "license": "MIT", "dependencies": { "fdir": "^6.5.0", - "picomatch": "^4.0.3" + "picomatch": "^4.0.4" }, "engines": { "node": ">=12.0.0" @@ -11196,9 +11096,9 @@ } }, "node_modules/undici-types": { - "version": "7.18.2", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", - "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", "dev": true, "license": "MIT" }, @@ -11744,30 +11644,30 @@ } }, "node_modules/workbox-background-sync": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-7.4.0.tgz", - "integrity": "sha512-8CB9OxKAgKZKyNMwfGZ1XESx89GryWTfI+V5yEj8sHjFH8MFelUwYXEyldEK6M6oKMmn807GoJFUEA1sC4XS9w==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-7.4.1.tgz", + "integrity": "sha512-HhT7KE8tOWDm02wRNshXUnUPofMlhenF2DBdUnDPOubhizzPeItkYTmAB6td1Z2cjYPa98vzEiPLEuzn5hN66g==", "dev": true, "license": "MIT", "dependencies": { "idb": "^7.0.1", - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-broadcast-update": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-7.4.0.tgz", - "integrity": "sha512-+eZQwoktlvo62cI0b+QBr40v5XjighxPq3Fzo9AWMiAosmpG5gxRHgTbGGhaJv/q/MFVxwFNGh/UwHZ/8K88lA==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-7.4.1.tgz", + "integrity": "sha512-uAlgslKLvbQY+suirIdnBCSYrcgBhjp81Nj4l1lj/Jmj0MJO2CJERnCJjT0GFVwmReV0N+zs78K6gqd5gr9/+A==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-build": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-7.4.0.tgz", - "integrity": "sha512-Ntk1pWb0caOFIvwz/hfgrov/OJ45wPEhI5PbTywQcYjyZiVhT3UrwwUPl6TRYbTm4moaFYithYnl1lvZ8UjxcA==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-7.4.1.tgz", + "integrity": "sha512-SDhxIvEAde9Gy/5w4Yo1Jh/M49Z0qE3q0oteyE8zGq0DScxFqVBcCtIXFuLtmtxRQZCMbf0prco4VyEu3KBQuw==", "dev": true, "license": "MIT", "dependencies": { @@ -11775,39 +11675,39 @@ "@babel/core": "^7.24.4", "@babel/preset-env": "^7.11.0", "@babel/runtime": "^7.11.2", - "@rollup/plugin-babel": "^5.2.0", - "@rollup/plugin-node-resolve": "^15.2.3", - "@rollup/plugin-replace": "^2.4.1", - "@rollup/plugin-terser": "^0.4.3", - "@surma/rollup-plugin-off-main-thread": "^2.2.3", + "@rollup/plugin-babel": "^6.1.0", + "@rollup/plugin-node-resolve": "^16.0.3", + "@rollup/plugin-replace": "^6.0.3", + "@rollup/plugin-terser": "^1.0.0", + "@trickfilm400/rollup-plugin-off-main-thread": "^3.0.0-pre1", "ajv": "^8.6.0", "common-tags": "^1.8.0", + "eta": "^4.5.1", "fast-json-stable-stringify": "^2.1.0", "fs-extra": "^9.0.1", "glob": "^11.0.1", - "lodash": "^4.17.20", "pretty-bytes": "^5.3.0", - "rollup": "^2.79.2", + "rollup": "^4.53.3", "source-map": "^0.8.0-beta.0", "stringify-object": "^3.3.0", "strip-comments": "^2.0.1", "tempy": "^0.6.0", "upath": "^1.2.0", - "workbox-background-sync": "7.4.0", - "workbox-broadcast-update": "7.4.0", - "workbox-cacheable-response": "7.4.0", - "workbox-core": "7.4.0", - "workbox-expiration": "7.4.0", - "workbox-google-analytics": "7.4.0", - "workbox-navigation-preload": "7.4.0", - "workbox-precaching": "7.4.0", - "workbox-range-requests": "7.4.0", - "workbox-recipes": "7.4.0", - "workbox-routing": "7.4.0", - "workbox-strategies": "7.4.0", - "workbox-streams": "7.4.0", - "workbox-sw": "7.4.0", - "workbox-window": "7.4.0" + "workbox-background-sync": "7.4.1", + "workbox-broadcast-update": "7.4.1", + "workbox-cacheable-response": "7.4.1", + "workbox-core": "7.4.1", + "workbox-expiration": "7.4.1", + "workbox-google-analytics": "7.4.1", + "workbox-navigation-preload": "7.4.1", + "workbox-precaching": "7.4.1", + "workbox-range-requests": "7.4.1", + "workbox-recipes": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1", + "workbox-streams": "7.4.1", + "workbox-sw": "7.4.1", + "workbox-window": "7.4.1" }, "engines": { "node": ">=20.0.0" @@ -11830,73 +11730,10 @@ "ajv": ">=8" } }, - "node_modules/workbox-build/node_modules/@rollup/plugin-babel": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz", - "integrity": "sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.10.4", - "@rollup/pluginutils": "^3.1.0" - }, - "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0", - "@types/babel__core": "^7.1.9", - "rollup": "^1.20.0||^2.0.0" - }, - "peerDependenciesMeta": { - "@types/babel__core": { - "optional": true - } - } - }, - "node_modules/workbox-build/node_modules/@rollup/plugin-replace": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-2.4.2.tgz", - "integrity": "sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@rollup/pluginutils": "^3.1.0", - "magic-string": "^0.25.7" - }, - "peerDependencies": { - "rollup": "^1.20.0 || ^2.0.0" - } - }, - "node_modules/workbox-build/node_modules/@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" - }, - "engines": { - "node": ">= 8.0.0" - }, - "peerDependencies": { - "rollup": "^1.20.0||^2.0.0" - } - }, - "node_modules/workbox-build/node_modules/@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true, - "license": "MIT" - }, "node_modules/workbox-build/node_modules/ajv": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", - "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "dev": true, "license": "MIT", "dependencies": { @@ -11910,13 +11747,6 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/workbox-build/node_modules/estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true, - "license": "MIT" - }, "node_modules/workbox-build/node_modules/fs-extra": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", @@ -11940,16 +11770,6 @@ "dev": true, "license": "MIT" }, - "node_modules/workbox-build/node_modules/magic-string": { - "version": "0.25.9", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.9.tgz", - "integrity": "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "sourcemap-codec": "^1.4.8" - } - }, "node_modules/workbox-build/node_modules/pretty-bytes": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", @@ -11963,157 +11783,141 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/workbox-build/node_modules/rollup": { - "version": "2.80.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.80.0.tgz", - "integrity": "sha512-cIFJOD1DESzpjOBl763Kp1AH7UE/0fcdHe6rZXUdQ9c50uvgigvW97u3IcSeBwOkgqL/PXPBktBCh0KEu5L8XQ==", - "dev": true, - "license": "MIT", - "bin": { - "rollup": "dist/bin/rollup" - }, - "engines": { - "node": ">=10.0.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, "node_modules/workbox-cacheable-response": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-7.4.0.tgz", - "integrity": "sha512-0Fb8795zg/x23ISFkAc7lbWes6vbw34DGFIMw31cwuHPgDEC/5EYm6m/ZkylLX0EnEbbOyOCLjKgFS/Z5g0HeQ==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-7.4.1.tgz", + "integrity": "sha512-8xaFoJdDc2OjrlbbL3gEeBO1WKcMwRqwLRupgqahYXu75yXajPLuwrbXMrIGZuWYXrQwk0xDjOxZ/ujCy/oJYw==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-core": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-7.4.0.tgz", - "integrity": "sha512-6BMfd8tYEnN4baG4emG9U0hdXM4gGuDU3ectXuVHnj71vwxTFI7WOpQJC4siTOlVtGqCUtj0ZQNsrvi6kZZTAQ==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-7.4.1.tgz", + "integrity": "sha512-DT+vu46eh/2vRsSHTY4Xmc32Z1rr9PRlQUXr1Dx30ZuXRWwOsvZgGgcwxcasubQLQmbTNYZjv44LkBAQ4tT5tQ==", "dev": true, "license": "MIT" }, "node_modules/workbox-expiration": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-7.4.0.tgz", - "integrity": "sha512-V50p4BxYhtA80eOvulu8xVfPBgZbkxJ1Jr8UUn0rvqjGhLDqKNtfrDfjJKnLz2U8fO2xGQJTx/SKXNTzHOjnHw==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-7.4.1.tgz", + "integrity": "sha512-lRKUF7b+OGbeXkQk1s6MHXOa3d7Xxf7Of31W6c6hCfipfIyrtdWZ89stq21AHZMaoG7VNFoHply4Ox+rU31TWg==", "dev": true, "license": "MIT", "dependencies": { "idb": "^7.0.1", - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-google-analytics": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-7.4.0.tgz", - "integrity": "sha512-MVPXQslRF6YHkzGoFw1A4GIB8GrKym/A5+jYDUSL+AeJw4ytQGrozYdiZqUW1TPQHW8isBCBtyFJergUXyNoWQ==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-7.4.1.tgz", + "integrity": "sha512-Mks1JwLEt++ZAkF6sS1OpSh9RtAMIsiDgRpK+codiHGIPXeaUOgi4cPc3GFadUl8V5QPeypEk8Oxgl3HlwVzHw==", "dev": true, "license": "MIT", "dependencies": { - "workbox-background-sync": "7.4.0", - "workbox-core": "7.4.0", - "workbox-routing": "7.4.0", - "workbox-strategies": "7.4.0" + "workbox-background-sync": "7.4.1", + "workbox-core": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1" } }, "node_modules/workbox-navigation-preload": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-7.4.0.tgz", - "integrity": "sha512-etzftSgdQfjMcfPgbfaZCfM2QuR1P+4o8uCA2s4rf3chtKTq/Om7g/qvEOcZkG6v7JZOSOxVYQiOu6PbAZgU6w==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-7.4.1.tgz", + "integrity": "sha512-C4KVsjPcYKJOhr631AxR9XoG2rLF3QiTk5aMv36MXOjtWvm8axwNFAtKUPGsWUwLXXAMgYM1En7fsvndaXeXRQ==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-precaching": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-7.4.0.tgz", - "integrity": "sha512-VQs37T6jDqf1rTxUJZXRl3yjZMf5JX/vDPhmx2CPgDDKXATzEoqyRqhYnRoxl6Kr0rqaQlp32i9rtG5zTzIlNg==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-7.4.1.tgz", + "integrity": "sha512-cdr/9qByww7yzEp7zg/qI4ukUrrNjQLgN+ONQRpjy/VqGQXwkgHwr00KksGJK8v0VifwDXBb8a4cWNZH71jn3Q==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0", - "workbox-routing": "7.4.0", - "workbox-strategies": "7.4.0" + "workbox-core": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1" } }, "node_modules/workbox-range-requests": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-7.4.0.tgz", - "integrity": "sha512-3Vq854ZNuP6Y0KZOQWLaLC9FfM7ZaE+iuQl4VhADXybwzr4z/sMmnLgTeUZLq5PaDlcJBxYXQ3U91V7dwAIfvw==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-7.4.1.tgz", + "integrity": "sha512-7i2oxAUE82gHdAJBCAQ04JzNOdRPqzuOzGfoUyJpFSmeqBNYGPrAH8GPoPjUQTfp+NycwrD2H68VtuF8qxv0vQ==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-recipes": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-recipes/-/workbox-recipes-7.4.0.tgz", - "integrity": "sha512-kOkWvsAn4H8GvAkwfJTbwINdv4voFoiE9hbezgB1sb/0NLyTG4rE7l6LvS8lLk5QIRIto+DjXLuAuG3Vmt3cxQ==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-recipes/-/workbox-recipes-7.4.1.tgz", + "integrity": "sha512-gnbVfmV4/TtmQaM4x9AtuXhcdstJsep3XMVeztOrQVPT+R6+6DeBjGTCQ7fFCXm+4GEHUA5VEBTyi5+4gWGeog==", "dev": true, "license": "MIT", "dependencies": { - "workbox-cacheable-response": "7.4.0", - "workbox-core": "7.4.0", - "workbox-expiration": "7.4.0", - "workbox-precaching": "7.4.0", - "workbox-routing": "7.4.0", - "workbox-strategies": "7.4.0" + "workbox-cacheable-response": "7.4.1", + "workbox-core": "7.4.1", + "workbox-expiration": "7.4.1", + "workbox-precaching": "7.4.1", + "workbox-routing": "7.4.1", + "workbox-strategies": "7.4.1" } }, "node_modules/workbox-routing": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-7.4.0.tgz", - "integrity": "sha512-C/ooj5uBWYAhAqwmU8HYQJdOjjDKBp9MzTQ+otpMmd+q0eF59K+NuXUek34wbL0RFrIXe/KKT+tUWcZcBqxbHQ==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-7.4.1.tgz", + "integrity": "sha512-yubJGErZOusuidAenaL5ypfhQOa7urxP/f8E0ws7FPb4039RiWXUWBAyUkmUoOL/BcQGen3h0J8872d51IYxtA==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-strategies": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-7.4.0.tgz", - "integrity": "sha512-T4hVqIi5A4mHi92+5EppMX3cLaVywDp8nsyUgJhOZxcfSV/eQofcOA6/EMo5rnTNmNTpw0rUgjAI6LaVullPpg==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-7.4.1.tgz", + "integrity": "sha512-GZxpaw9NbmOelj7667uZ2kpk5BFpOGbO4X0qjwh5ls8XQ8C+Lha5LQchTiUzsTFSS+NlUpftYAyOVXvQUrcqOQ==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/workbox-streams": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-7.4.0.tgz", - "integrity": "sha512-QHPBQrey7hQbnTs5GrEVoWz7RhHJXnPT+12qqWM378orDMo5VMJLCkCM1cnCk+8Eq92lccx/VgRZ7WAzZWbSLg==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-7.4.1.tgz", + "integrity": "sha512-HWWtraKUbJknd9kgqGcpQ3G114HOPYvqs8HaJMDs2ebLNAimDkVDaWfAXE6Ybl+m8U6KsCE6pWyLYuigWmnAXw==", "dev": true, "license": "MIT", "dependencies": { - "workbox-core": "7.4.0", - "workbox-routing": "7.4.0" + "workbox-core": "7.4.1", + "workbox-routing": "7.4.1" } }, "node_modules/workbox-sw": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-7.4.0.tgz", - "integrity": "sha512-ltU+Kr3qWR6BtbdlMnCjobZKzeV1hN+S6UvDywBrwM19TTyqA03X66dzw1tEIdJvQ4lYKkBFox6IAEhoSEZ8Xw==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-7.4.1.tgz", + "integrity": "sha512-fez5f2DUlDJWTFYkCWQpY10N8gtztd849NswCbVFk0QlcSM4HT5A8x4g4ii650yem4I8tHY0R7JZahwp3ltIPw==", "dev": true, "license": "MIT" }, "node_modules/workbox-window": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-7.4.0.tgz", - "integrity": "sha512-/bIYdBLAVsNR3v7gYGaV4pQW3M3kEPx5E8vDxGvxo6khTrGtSSCS7QiFKv9ogzBgZiy0OXLP9zO28U/1nF1mfw==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-7.4.1.tgz", + "integrity": "sha512-notZDH2u8VXaqyuD7xaqIfEFi6SRM4SUSd7ewe9PDsVqADuepxX2ZMY3uvuZGxzY5ZOsGC/vD3A/3smFtJt4/A==", "dev": true, "license": "MIT", "dependencies": { "@types/trusted-types": "^2.0.2", - "workbox-core": "7.4.0" + "workbox-core": "7.4.1" } }, "node_modules/wrappy": { @@ -12122,6 +11926,21 @@ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "license": "ISC" }, + "node_modules/xml-naming": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/xml-naming/-/xml-naming-0.1.0.tgz", + "integrity": "sha512-k8KO9hrMyNk6tUWqUfkTEZbezRRpONVOzUTnc97VnCvyj6Tf9lyUR9EDAIeiVLv56jsMcoXEwjW8Kv5yPY52lw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", diff --git a/package.json b/package.json index 11ccf817..959054ac 100644 --- a/package.json +++ b/package.json @@ -1,49 +1,53 @@ { "name": "comify", "private": true, - "version": "0.1.4", + "version": "0.0.1", "type": "module", - "scripts": { - "dev": "vite --config src/apps/social/vite.config.js", - "copy-assets": "cpx src/assets/**/* dist/assets", - "build": "npm run clean && npm run build-domain && npm run build-social", - "build-domain": "tsc -p src && tsc-alias -p src/tsconfig.json && jitar build && npm run copy-assets", - "build-social": "vite build --config src/apps/social/vite.config.js", - "clean": "rimraf dist", + "scripts": + { + "build": "npm run build --workspaces", + "lint": "npm run lint --workspaces", + "review": "npm run review --workspaces", + "clean": "npm run clean --workspaces", "test": "vitest run", "test-coverage": "vitest run --coverage", - "lint": "eslint", - "compile": "npm run compile-domain && npm run compile-social", - "compile-domain": "tsc -p src --noEmit", - "compile-social": "tsc -p src/apps/social --noEmit", - "preview": "vite preview", - "version": "npm version $VERSION --no-git-tag-version", + + "dist": "npm run clean-dist && npm run bundle && npm run copy", + "bundle": "jitar build", + "clean-build": "rimraf artifacts/build", + "clean-dist": "rimraf artifacts/dist", + "copy": "npm run copy-apps && npm run copy-assets", + "copy-apps": "cpx 'artifacts/build/*/app/**/*' 'artifacts/dist'", + "copy-assets": "cpx 'artifacts/build/*/assets/**/*' 'artifacts/dist'", + "docker-up": "docker compose --env-file development.env up -d", "docker-down": "docker compose --env-file development.env down", - "review": "npm run compile && npm run lint && npm run test", - "rebuild": "npm run clean && npm run build && npm run standalone", - "standalone": "jitar start --env-file=development.env --service=services/standalone.json --http-body-limit=512000", - "repository": "jitar start --env-file=development.env --service=services/repository.json", - "proxy": "jitar start --env-file=development.env --service=services/proxy.json --http-body-limit=512000", - "gateway": "jitar start --env-file=development.env --service=services/gateway.json --http-body-limit=640000", - "bff": "jitar start --env-file=development.env --service=services/bff.json --http-body-limit=640000", - "notification": "jitar start --env-file=development.env --service=services/notification.json --http-body-limit=640000", - "reads": "jitar start --env-file=development.env --service=services/reads.json --http-body-limit=640000", - "reads2": "jitar start --env-file=development.env --service=services/reads2.json --http-body-limit=640000", - "writes": "jitar start --env-file=development.env --service=services/writes.json --http-body-limit=640000", - "production": "jitar start --log-level=warn --service=services/standalone.json --http-body-limit=640000" + + "dev": "jitar start --env-file=development.env --service=deployment/services/development/worker.json --http-body-limit=512000", + + "demo": "jitar start --env-file=development.env --service=deployment/services/demonstration/social.json --http-body-limit=512000", + + "gateway": "jitar start --env-file=development.env --service=deployment/services/production/gateway.json --http-body-limit=512000", + "bff": "jitar start --env-file=development.env --service=deployment/services/production/bff.json --http-body-limit=512000", + "notification": "jitar start --env-file=development.env --service=deployment/services/production/notification.json --http-body-limit=512000", + "reads": "jitar start --env-file=development.env --service=deployment/services/production/reads.json --http-body-limit=512000", + "reads2": "jitar start --env-file=development.env --service=deployment/services/production/reads2.json --http-body-limit=512000", + "writes": "jitar start --env-file=development.env --service=deployment/services/production/writes.json --http-body-limit=512000", + "social-app": "jitar start --env-file=development.env --service=deployment/services/production/social-app.json --http-body-limit=512000", + "proxy": "jitar start --env-file=development.env --service=deployment/services/production/proxy.json --http-body-limit=512000" }, - "files": [ - "CHANGELOG.md", - "README.md", - "dist" + "workspaces": [ + "development/common", + "development/insights", + "development/social", + "development/moderation" ], "dependencies": { "dayjs": "1.11.20", - "react": "19.2.4", - "react-dom": "19.2.4", - "react-router-dom": "7.13.2", - "jitar": "0.10.7", + "react": "19.2.6", + "react-dom": "19.2.6", + "react-router-dom": "7.15.0", + "jitar": "0.11.0", "@maskingtech/designsystem": "0.0.8", "@maskingtech/react-toolkit": "0.0.4", "@theshelf/authentication": "0.4.3", @@ -69,8 +73,8 @@ }, "devDependencies": { "@eslint/js": "9.39.4", - "@jitar/plugin-vite": "0.10.7", - "@types/node": "25.3.0", + "@types/node": "24.10.4", + "@jitar/plugin-vite": "0.11.0", "@types/react": "19.2.14", "@types/react-dom": "19.2.3", "@vitejs/plugin-react": "5.1.4", diff --git a/segments/bff.json b/segments/bff.json deleted file mode 100644 index 000d9812..00000000 --- a/segments/bff.json +++ /dev/null @@ -1,48 +0,0 @@ -{ - "./domain/authentication/getLoginUrl": { "default": { "access": "public" } }, - "./domain/authentication/login": { "default": { "access": "public" } }, - "./domain/authentication/logout": { "default": { "access": "public" } }, - - "./domain/creator/aggregate": { "default": { "access": "private" }}, - "./domain/creator/getByIdAggregated": { "default": { "access": "private" } }, - "./domain/creator/getByNicknameAggregated": { "default": { "access": "public" } }, - "./domain/creator/getMeAggregated": { "default": { "access": "public" } }, - "./domain/creator/updateFullName": { "default": { "access": "public" } }, - "./domain/creator/updateNickname": { "default": { "access": "public" } }, - - "./domain/creator.metrics/create": { "subscriptions": { "access": "private" } }, - "./domain/creator.metrics/updateFollowers": { "subscriptions": { "access": "private" } }, - "./domain/creator.metrics/updateFollowing": { "subscriptions": { "access": "private" } }, - "./domain/creator.metrics/updatePosts": { "subscriptions": { "access": "private" } }, - - "./domain/notification/aggregate": { "default": { "access": "private" } }, - "./domain/notification/notify": { "subscriptions": { "access": "private" } }, - "./domain/notification/getRecentAggregated": { "default": { "access": "public" } }, - - "./domain/post/aggregate": { "default": { "access": "private" } }, - "./domain/post/create": { "default": { "access": "private" }, "subscribe": { "access": "private" } }, - "./domain/post/createWithComic": { "default": { "access": "public" } }, - "./domain/post/createWithComment": { "default": { "access": "public" } }, - "./domain/post/getByCreatorAggregated": { "default": { "access": "public" } }, - "./domain/post/getByFollowingAggregated": { "default": { "access": "public" } }, - "./domain/post/exploreAggregated": { "default": { "access": "public" } }, - "./domain/post/getByIdAggregated": { "default": { "access": "public" } }, - "./domain/post/getByParentAggregated": { "default": { "access": "public" } }, - "./domain/post/getRecommendedAggregated": { "default": { "access": "public"}}, - "./domain/post/remove": { "default": { "access": "public" }, "subscribe": { "access": "private" } }, - - "./domain/post.metrics/create": { "subscriptions": { "access": "private" } }, - "./domain/post.metrics/updateRatings": { "subscriptions": { "access": "private" } }, - "./domain/post.metrics/updateReactions": { "subscriptions": { "access": "private" } }, - - "./domain/rating/toggle": { "default": { "access": "public" }, "subscribe": { "access": "private" } }, - - "./domain/relation/aggregate": { "default": { "access": "private" }}, - "./domain/relation/exploreAggregated": { "default": { "access": "public" } }, - "./domain/relation/establish": { "default": { "access": "public" }, "subscribe": { "access": "private" } }, - "./domain/relation/getAggregated": { "default": { "access": "public" } }, - "./domain/relation/getFollowersAggregated": { "default": { "access": "public" } }, - "./domain/relation/getFollowingAggregated": { "default": { "access": "public" } }, - - "./domain/tenant/getByOriginConverted": { "default": { "access": "public" } } -} \ No newline at end of file diff --git a/segments/notification.json b/segments/notification.json deleted file mode 100644 index a6c6a98c..00000000 --- a/segments/notification.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "./domain/notification/create": { "default": { "access": "protected" } }, - "./domain/notification/getByPostId": { "default": { "access": "protected" } }, - "./domain/notification/getRecent": { "default": { "access": "protected" } }, - "./domain/notification/remove": { "default": { "access": "protected" } } -} \ No newline at end of file diff --git a/segments/reads.json b/segments/reads.json deleted file mode 100644 index a5e99a36..00000000 --- a/segments/reads.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "./domain/comic/getById": { "default": { "access": "protected" } }, - - "./domain/comment/getById": { "default": { "access": "protected" } }, - - "./domain/creator/generateNickname/retrieveByNickname": { "default": { "access": "protected" } }, - "./domain/creator/generateNickname/retrieveByStartNickname": { "default": { "access": "protected" } }, - "./domain/creator/getByEmail": { "default": { "access": "protected" } }, - "./domain/creator/getById": { "default": { "access": "protected" } }, - "./domain/creator/getByNickname": { "default": { "access": "protected" } }, - "./domain/creator/getMe": { "default": { "access": "protected" } }, - "./domain/creator/getOthers": { "default": { "access": "private" }}, - "./domain/creator/updateNickname/retrieveByNickname": { "default": { "access": "protected" } }, - - "./domain/creator.metrics/getByCreator": { "default": { "access": "protected" } }, - - "./domain/image/getById": { "default": { "access": "protected" } }, - - "./domain/post/explore": { "default": { "access": "protected" } }, - "./domain/post/getByCreator": { "default": { "access": "protected" } }, - "./domain/post/getByFollowing": { "default": { "access": "protected" } }, - "./domain/post/getById": { "default": { "access": "protected" } }, - "./domain/post/getByParent": { "default": { "access": "protected" } }, - "./domain/post/getRecommended": { "default": { "access": "protected" } }, - - "./domain/post.metrics/getByPost": { "default": { "access": "protected" } }, - - "./domain/rating/exists": { "default": { "access": "protected" } }, - "./domain/rating/toggle/getData": { "default": { "access": "protected" } }, - - "./domain/relation/exists": { "default": { "access": "protected" } }, - "./domain/relation/explore": { "default": { "access": "protected" } }, - "./domain/relation/get": { "default": { "access": "protected" } }, - "./domain/relation/getFollowers": { "default": { "access": "protected" } }, - "./domain/relation/getFollowing": { "default": { "access": "protected" } }, - - "./domain/tenant/getByOrigin": { "default": { "access": "protected" }, "TenantNotFound": { } } -} \ No newline at end of file diff --git a/segments/writes.json b/segments/writes.json deleted file mode 100644 index 11e4fa36..00000000 --- a/segments/writes.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "./domain/comic/create/insertData": { "default": { "access": "protected" } }, - "./domain/comic/erase": { "default": { "access": "protected" } }, - - "./domain/comment/create": { "default": { "access": "protected" } }, - "./domain/comment/erase": { "default": { "access": "protected" } }, - - "./domain/creator/create": { "default": { "access": "protected" } }, - "./domain/creator/erase": { "default": { "access": "protected" } }, - "./domain/creator/update": { "default": { "access": "protected" } }, - - "./domain/creator.metrics/create/insertData": { "default": { "access": "protected" } }, - "./domain/creator.metrics/update": { "default": { "access": "protected" } }, - - "./domain/image/erase": { "default": { "access": "protected" } }, - "./domain/image/save": { "default": { "access": "protected" } }, - - "./domain/post/create/insertData": { "default": { "access": "protected" } }, - "./domain/post/erase": { "default": { "access": "protected" } }, - "./domain/post/remove/deleteData": { "default": { "access": "protected" }}, - "./domain/post/remove/undeleteData": { "default": { "access": "protected" }}, - "./domain/post/update": { "default": { "access": "protected" } }, - - "./domain/post.metrics/create/insertData": { "default": { "access": "protected" } }, - "./domain/post.metrics/update": { "default": { "access": "protected" } }, - - "./domain/rating/create": { "default": { "access": "protected" } }, - "./domain/rating/erase": { "default": { "access": "protected" } }, - - "./domain/relation/create": { "default": { "access": "protected" } }, - "./domain/relation/erase": { "default": { "access": "protected" } } -} \ No newline at end of file diff --git a/services/bff.json b/services/bff.json deleted file mode 100644 index b038be16..00000000 --- a/services/bff.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "url": "http://127.0.0.1:4000", - "setUp": [ - "./integrations/authentication/setUp", - "./integrations/eventBroker/setUp" - ], - "tearDown": [ - "./integrations/authentication/tearDown", - "./integrations/eventBroker/tearDown" - ], - "healthChecks": [ - "./integrations/eventBroker/healthCheck" - ], - "middleware": [ - "./integrations/authentication/originMiddleware", - "./integrations/authentication/authenticationMiddleware", - "./integrations/tenancy/tenantMiddleware" - ], - "worker": - { - "gateway": "http://127.0.0.1:2000", - "trustKey": "${JITAR_TRUST_KEY}", - "segments": ["bff"] - } -} \ No newline at end of file diff --git a/services/reads.json b/services/reads.json deleted file mode 100644 index 539d917d..00000000 --- a/services/reads.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "url": "http://127.0.0.1:4002", - "setUp": [ - "./integrations/database/setUp", - "./integrations/fileStore/setUp" - ], - "tearDown": [ - "./integrations/database/tearDown", - "./integrations/fileStore/tearDown" - ], - "healthChecks": [ - "./integrations/database/healthCheck", - "./integrations/fileStore/healthCheck" - ], - "worker": - { - "gateway": "http://127.0.0.1:2000", - "trustKey": "${JITAR_TRUST_KEY}", - "segments": ["reads"] - } -} \ No newline at end of file diff --git a/services/reads2.json b/services/reads2.json deleted file mode 100644 index a2dc0eea..00000000 --- a/services/reads2.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "url": "http://127.0.0.1:4003", - "setUp": [ - "./integrations/database/setUp", - "./integrations/fileStore/setUp" - ], - "tearDown": [ - "./integrations/database/tearDown", - "./integrations/fileStore/tearDown" - ], - "healthChecks": [ - "./integrations/database/healthCheck", - "./integrations/fileStore/healthCheck" - ], - "worker": - { - "gateway": "http://127.0.0.1:2000", - "trustKey": "${JITAR_TRUST_KEY}", - "segments": ["reads"] - } -} \ No newline at end of file diff --git a/services/repository.json b/services/repository.json deleted file mode 100644 index 1cc2324d..00000000 --- a/services/repository.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "url": "http://127.0.0.1:1000", - "repository": - { - "serveIndexOnNotFound": true, - "assets": ["index.html", "assets/**/*", "social/**/*", "registerSW.js", "sw.js", "workbox-*.js", "manifest.webmanifest" ] - } -} \ No newline at end of file diff --git a/services/standalone.json b/services/standalone.json deleted file mode 100644 index 68590ded..00000000 --- a/services/standalone.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "url": "http://127.0.0.1:3000", - "setUp": [ - "./integrations/authentication/setUp", - "./integrations/database/setUp", - "./integrations/fileStore/setUp", - "./integrations/eventBroker/setUp" - ], - "tearDown": [ - "./integrations/authentication/tearDown", - "./integrations/database/tearDown", - "./integrations/fileStore/tearDown", - "./integrations/eventBroker/tearDown" - ], - "healthChecks": [ - "./integrations/database/healthCheck", - "./integrations/fileStore/healthCheck", - "./integrations/eventBroker/healthCheck" - ], - "middleware": [ - "./integrations/authentication/originMiddleware", - "./integrations/authentication/authenticationMiddleware", - "./integrations/tenancy/tenantMiddleware" - ], - "standalone": - { - "segments": ["bff", "notification", "reads", "writes"], - - "serveIndexOnNotFound": true, - "assets": ["index.html", "assets/**/*", "social/**/*", "registerSW.js", "sw.js", "workbox-*.js", "manifest.webmanifest" ] - } -} \ No newline at end of file diff --git a/services/writes.json b/services/writes.json deleted file mode 100644 index f60ee1c8..00000000 --- a/services/writes.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "url": "http://127.0.0.1:4004", - "setUp": [ - "./integrations/database/setUp", - "./integrations/fileStore/setUp" - ], - "tearDown": [ - "./integrations/database/tearDown", - "./integrations/fileStore/tearDown" - ], - "healthChecks": [ - "./integrations/database/healthCheck", - "./integrations/fileStore/healthCheck" - ], - "worker": - { - "gateway": "http://127.0.0.1:2000", - "trustKey": "${JITAR_TRUST_KEY}", - "segments": ["writes"] - } -} \ No newline at end of file diff --git a/src/apps/social/public/manifest.webmanifest b/src/apps/social/public/manifest.webmanifest deleted file mode 100644 index 9dbaa7e8..00000000 --- a/src/apps/social/public/manifest.webmanifest +++ /dev/null @@ -1,41 +0,0 @@ - -{ - "name": "Comify", - "short_name": "Comify", - "theme_color": "#ffffff", - - "icons": [ - - { - "src": "/assets/appicon32.png", - "type": "image/png", - "sizes": "32x32" - }, - - { - "src": "/assets/appicon192.png", - "type": "image/png", - "sizes": "192x192" - }, - - { - "src": "/assets/appicon512.png", - "type": "image/png", - "sizes": "512x512" - } - - ], - - "start_url": "/", - - "id": "/", - - "display": "standalone", - "description": "Take or upload a picture. Add speech bubbles. Share with friends.", - "background_color": "#ffffff", - "dir": "ltr", - "lang": "en-US", - "orientation": "portrait-primary" - - - } diff --git a/src/apps/social/vite.config.ts b/src/apps/social/vite.config.ts deleted file mode 100644 index 9ccb5f30..00000000 --- a/src/apps/social/vite.config.ts +++ /dev/null @@ -1,59 +0,0 @@ -import jitar, { JitarConfig } from '@jitar/plugin-vite'; -import react from '@vitejs/plugin-react'; -import { defineConfig } from 'vite'; -import tsconfigPaths from 'vite-tsconfig-paths'; - -const JITAR_URL = 'http://localhost:3000'; -const JITAR_SEGMENTS: string[] = []; -const JITAR_MIDDLEWARES: string[] = [ - './integrations/authentication/requesterMiddleware' -]; - -const jitarConfig: JitarConfig = { - sourceDir: '../../../src', - targetDir: '../../../dist', - jitarDir: 'domain', - jitarUrl: JITAR_URL, - segments: JITAR_SEGMENTS, - middleware: JITAR_MIDDLEWARES -}; - -// const pwaConfig: Partial = { -// strategies: 'generateSW', -// manifest: false, -// workbox: { -// navigateFallbackDenylist: [/^\/rpc/], -// additionalManifestEntries: [ -// { url: '/manifest.webmanifest', revision: null } -// ], -// globPatterns: ['index.html', 'registerSW.js', 'assets/*', 'social/**/*.{js,css,html,png,svg}'] -// } -// }; - -// const addManifestLink = { -// name: 'add-manifest-link', -// transformIndexHtml(html) -// { -// return html.replace( -// '', -// '' -// ); -// } -// }; - -export default defineConfig({ - root: './src/apps/social', - publicDir: 'public', - build: { - outDir: '../../../dist', - assetsDir: 'social', - emptyOutDir: false - }, - plugins: [ - react(), - // VitePWA(pwaConfig), - // addManifestLink, - tsconfigPaths(), - jitar(jitarConfig) - ] -}); \ No newline at end of file diff --git a/src/domain/comic/create/InvalidComic.ts b/src/domain/comic/create/InvalidComic.ts deleted file mode 100644 index 9a3acf13..00000000 --- a/src/domain/comic/create/InvalidComic.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidComic extends ValidationError -{ - -} diff --git a/src/domain/comment/create/InvalidComment.ts b/src/domain/comment/create/InvalidComment.ts deleted file mode 100644 index 6d88f797..00000000 --- a/src/domain/comment/create/InvalidComment.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidComment extends ValidationError -{ - -} diff --git a/src/domain/common/validateRange/InvalidRange.ts b/src/domain/common/validateRange/InvalidRange.ts deleted file mode 100644 index ef602844..00000000 --- a/src/domain/common/validateRange/InvalidRange.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidRange extends ValidationError -{ - -} diff --git a/src/domain/creator/create/InvalidCreator.ts b/src/domain/creator/create/InvalidCreator.ts deleted file mode 100644 index 9265a501..00000000 --- a/src/domain/creator/create/InvalidCreator.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidCreator extends ValidationError -{ - -} diff --git a/src/domain/creator/updateFullName/InvalidFullName.ts b/src/domain/creator/updateFullName/InvalidFullName.ts deleted file mode 100644 index b9081bce..00000000 --- a/src/domain/creator/updateFullName/InvalidFullName.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidFullName extends ValidationError -{ - -} diff --git a/src/domain/image/save/InvalidImage.ts b/src/domain/image/save/InvalidImage.ts deleted file mode 100644 index 6e1d9597..00000000 --- a/src/domain/image/save/InvalidImage.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidImage extends ValidationError -{ - -} diff --git a/src/domain/image/validate/InvalidImage.ts b/src/domain/image/validate/InvalidImage.ts deleted file mode 100644 index 6e1d9597..00000000 --- a/src/domain/image/validate/InvalidImage.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidImage extends ValidationError -{ - -} diff --git a/src/domain/post/create/InvalidPost.ts b/src/domain/post/create/InvalidPost.ts deleted file mode 100644 index 3522fbd5..00000000 --- a/src/domain/post/create/InvalidPost.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidPost extends ValidationError -{ - -} diff --git a/src/domain/rating/create/InvalidRating.ts b/src/domain/rating/create/InvalidRating.ts deleted file mode 100644 index dfc6f3cd..00000000 --- a/src/domain/rating/create/InvalidRating.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidRating extends ValidationError -{ - -} diff --git a/src/domain/rating/create/insertData.ts b/src/domain/rating/create/insertData.ts deleted file mode 100644 index 764eeeb9..00000000 --- a/src/domain/rating/create/insertData.ts +++ /dev/null @@ -1,10 +0,0 @@ - -import database from '^/integrations/database'; - -import { RECORD_TYPE } from '../definitions'; -import type { DataModel } from '../types'; - -export default async function insertData(data: DataModel): Promise -{ - return database.createRecord(RECORD_TYPE, data); -} diff --git a/src/domain/relation/create/InvalidRelation.ts b/src/domain/relation/create/InvalidRelation.ts deleted file mode 100644 index b3681251..00000000 --- a/src/domain/relation/create/InvalidRelation.ts +++ /dev/null @@ -1,7 +0,0 @@ - -import { ValidationError } from '^/integrations/errors'; - -export default class InvalidRelation extends ValidationError -{ - -} diff --git a/src/domain/relation/create/insertData.ts b/src/domain/relation/create/insertData.ts deleted file mode 100644 index 764eeeb9..00000000 --- a/src/domain/relation/create/insertData.ts +++ /dev/null @@ -1,10 +0,0 @@ - -import database from '^/integrations/database'; - -import { RECORD_TYPE } from '../definitions'; -import type { DataModel } from '../types'; - -export default async function insertData(data: DataModel): Promise -{ - return database.createRecord(RECORD_TYPE, data); -} diff --git a/src/tsconfig.json b/src/tsconfig.json deleted file mode 100644 index 63462fd9..00000000 --- a/src/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "extends": "../tsconfig.json", - "include": ["./domain", "./integrations"] -} \ No newline at end of file diff --git a/test/domain/authentication/fixtures/tenants.fixture.ts b/test/domain/authentication/fixtures/tenants.fixture.ts deleted file mode 100644 index ea725060..00000000 --- a/test/domain/authentication/fixtures/tenants.fixture.ts +++ /dev/null @@ -1,4 +0,0 @@ - -import { tenant } from '^/domain/tenant'; - -export const TENANTS = { default: tenant }; diff --git a/test/domain/creator/fixtures/tenants.fixture.ts b/test/domain/creator/fixtures/tenants.fixture.ts deleted file mode 100644 index ea725060..00000000 --- a/test/domain/creator/fixtures/tenants.fixture.ts +++ /dev/null @@ -1,4 +0,0 @@ - -import { tenant } from '^/domain/tenant'; - -export const TENANTS = { default: tenant }; diff --git a/test/domain/notification/fixtures/tenants.fixture.ts b/test/domain/notification/fixtures/tenants.fixture.ts deleted file mode 100644 index ea725060..00000000 --- a/test/domain/notification/fixtures/tenants.fixture.ts +++ /dev/null @@ -1,4 +0,0 @@ - -import { tenant } from '^/domain/tenant'; - -export const TENANTS = { default: tenant }; diff --git a/test/domain/post/fixtures/tenants.fixture.ts b/test/domain/post/fixtures/tenants.fixture.ts deleted file mode 100644 index ea725060..00000000 --- a/test/domain/post/fixtures/tenants.fixture.ts +++ /dev/null @@ -1,4 +0,0 @@ - -import { tenant } from '^/domain/tenant'; - -export const TENANTS = { default: tenant }; diff --git a/test/domain/rating/fixtures/tenants.fixture.ts b/test/domain/rating/fixtures/tenants.fixture.ts deleted file mode 100644 index ea725060..00000000 --- a/test/domain/rating/fixtures/tenants.fixture.ts +++ /dev/null @@ -1,4 +0,0 @@ - -import { tenant } from '^/domain/tenant'; - -export const TENANTS = { default: tenant }; diff --git a/test/domain/relation/fixtures/tenants.fixture.ts b/test/domain/relation/fixtures/tenants.fixture.ts deleted file mode 100644 index ea725060..00000000 --- a/test/domain/relation/fixtures/tenants.fixture.ts +++ /dev/null @@ -1,4 +0,0 @@ - -import { tenant } from '^/domain/tenant'; - -export const TENANTS = { default: tenant }; diff --git a/test/domain/tenant/fixtures/databases.fixtures.ts b/testing/common/domain/tenant/fixtures/databases.fixtures.ts similarity index 100% rename from test/domain/tenant/fixtures/databases.fixtures.ts rename to testing/common/domain/tenant/fixtures/databases.fixtures.ts diff --git a/test/domain/tenant/fixtures/index.ts b/testing/common/domain/tenant/fixtures/index.ts similarity index 100% rename from test/domain/tenant/fixtures/index.ts rename to testing/common/domain/tenant/fixtures/index.ts diff --git a/test/domain/tenant/fixtures/records.fixtures.ts b/testing/common/domain/tenant/fixtures/records.fixtures.ts similarity index 100% rename from test/domain/tenant/fixtures/records.fixtures.ts rename to testing/common/domain/tenant/fixtures/records.fixtures.ts diff --git a/test/domain/tenant/fixtures/values.fixtures.ts b/testing/common/domain/tenant/fixtures/values.fixtures.ts similarity index 100% rename from test/domain/tenant/fixtures/values.fixtures.ts rename to testing/common/domain/tenant/fixtures/values.fixtures.ts diff --git a/test/domain/tenant/getByOrigin.spec.ts b/testing/common/domain/tenant/getByOrigin.spec.ts similarity index 100% rename from test/domain/tenant/getByOrigin.spec.ts rename to testing/common/domain/tenant/getByOrigin.spec.ts diff --git a/test/domain/tenant/getByOriginConverted.spec.ts b/testing/common/domain/tenant/getByOriginConverted.spec.ts similarity index 100% rename from test/domain/tenant/getByOriginConverted.spec.ts rename to testing/common/domain/tenant/getByOriginConverted.spec.ts diff --git a/testing/common/tsconfig.json b/testing/common/tsconfig.json new file mode 100644 index 00000000..8747e78c --- /dev/null +++ b/testing/common/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "paths": { + "^/*": ["../../development/common/*"] + } + } +} \ No newline at end of file diff --git a/testing/insights/tsconfig.json b/testing/insights/tsconfig.json new file mode 100644 index 00000000..c98f8637 --- /dev/null +++ b/testing/insights/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "paths": { + "^/*": ["../../development/insights/*"], + "@comify/common/*": ["../../development/common/*"] + } + } +} \ No newline at end of file diff --git a/testing/moderation/tsconfig.json b/testing/moderation/tsconfig.json new file mode 100644 index 00000000..958dda8c --- /dev/null +++ b/testing/moderation/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "paths": { + "^/*": ["../../development/moderation/*"], + "@comify/common/*": ["../../development/common/*"] + } + } +} \ No newline at end of file diff --git a/test/domain/authentication/fixtures/databases.fixture.ts b/testing/social/domain/authentication/fixtures/databases.fixture.ts similarity index 86% rename from test/domain/authentication/fixtures/databases.fixture.ts rename to testing/social/domain/authentication/fixtures/databases.fixture.ts index 3ec6de7f..448ad423 100644 --- a/test/domain/authentication/fixtures/databases.fixture.ts +++ b/testing/social/domain/authentication/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import database, { driver } from '^/integrations/database'; +import database, { driver } from '@comify/common/integrations/database'; import { RECORD_TYPE as CREATOR_RECORD_TYPE } from '^/domain/creator'; diff --git a/test/domain/authentication/fixtures/fileStores.fixture.ts b/testing/social/domain/authentication/fixtures/fileStores.fixture.ts similarity index 73% rename from test/domain/authentication/fixtures/fileStores.fixture.ts rename to testing/social/domain/authentication/fixtures/fileStores.fixture.ts index 01badd4f..db8ede55 100644 --- a/test/domain/authentication/fixtures/fileStores.fixture.ts +++ b/testing/social/domain/authentication/fixtures/fileStores.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/filestore'; -import { driver } from '^/integrations/fileStore'; +import { driver } from '@comify/common/integrations/fileStore'; async function empty(): Promise { diff --git a/test/domain/authentication/fixtures/httpClients.fixture.ts b/testing/social/domain/authentication/fixtures/httpClients.fixture.ts similarity index 91% rename from test/domain/authentication/fixtures/httpClients.fixture.ts rename to testing/social/domain/authentication/fixtures/httpClients.fixture.ts index b588818c..ec9fc648 100644 --- a/test/domain/authentication/fixtures/httpClients.fixture.ts +++ b/testing/social/domain/authentication/fixtures/httpClients.fixture.ts @@ -2,7 +2,7 @@ import { HttpMethods } from '@theshelf/http'; import type { MappedDriver } from '@theshelf/http'; -import { driver } from '^/integrations/http'; +import { driver } from '@comify/common/integrations/http'; import { IMAGES } from './images.fixture'; import { VALUES } from './values.fixture'; diff --git a/test/domain/authentication/fixtures/identities.fixture.ts b/testing/social/domain/authentication/fixtures/identities.fixture.ts similarity index 100% rename from test/domain/authentication/fixtures/identities.fixture.ts rename to testing/social/domain/authentication/fixtures/identities.fixture.ts diff --git a/test/domain/authentication/fixtures/images.fixture.ts b/testing/social/domain/authentication/fixtures/images.fixture.ts similarity index 100% rename from test/domain/authentication/fixtures/images.fixture.ts rename to testing/social/domain/authentication/fixtures/images.fixture.ts diff --git a/test/domain/authentication/fixtures/index.ts b/testing/social/domain/authentication/fixtures/index.ts similarity index 100% rename from test/domain/authentication/fixtures/index.ts rename to testing/social/domain/authentication/fixtures/index.ts diff --git a/test/domain/authentication/fixtures/records.fixture.ts b/testing/social/domain/authentication/fixtures/records.fixture.ts similarity index 100% rename from test/domain/authentication/fixtures/records.fixture.ts rename to testing/social/domain/authentication/fixtures/records.fixture.ts diff --git a/testing/social/domain/authentication/fixtures/tenants.fixture.ts b/testing/social/domain/authentication/fixtures/tenants.fixture.ts new file mode 100644 index 00000000..9a322b6c --- /dev/null +++ b/testing/social/domain/authentication/fixtures/tenants.fixture.ts @@ -0,0 +1,4 @@ + +import { tenant } from '@comify/common/domain/tenant'; + +export const TENANTS = { default: tenant }; diff --git a/test/domain/authentication/fixtures/values.fixture.ts b/testing/social/domain/authentication/fixtures/values.fixture.ts similarity index 100% rename from test/domain/authentication/fixtures/values.fixture.ts rename to testing/social/domain/authentication/fixtures/values.fixture.ts diff --git a/test/domain/authentication/login.spec.ts b/testing/social/domain/authentication/login.spec.ts similarity index 93% rename from test/domain/authentication/login.spec.ts rename to testing/social/domain/authentication/login.spec.ts index 602df17e..6367a1ff 100644 --- a/test/domain/authentication/login.spec.ts +++ b/testing/social/domain/authentication/login.spec.ts @@ -1,9 +1,9 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import eventBroker from '^/integrations/eventBroker'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import eventBroker from '@comify/common/integrations/eventBroker'; +import fileStore from '@comify/common/integrations/fileStore'; import login from '^/domain/authentication/login'; import { TooManySimilarNicknames } from '^/domain/creator/generateNickname'; diff --git a/test/domain/comic/create.spec.ts b/testing/social/domain/comic/create.spec.ts similarity index 88% rename from test/domain/comic/create.spec.ts rename to testing/social/domain/comic/create.spec.ts index 642ae9ef..5ab6c4c9 100644 --- a/test/domain/comic/create.spec.ts +++ b/testing/social/domain/comic/create.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import fileStore from '@comify/common/integrations/fileStore'; import create from '^/domain/comic/create'; import { RECORD_TYPE as COMIC_RECORD_TYPE } from '^/domain/comic/definitions'; diff --git a/test/domain/comment/fixtures/databases.fixture.ts b/testing/social/domain/comic/fixtures/databases.fixture.ts similarity index 73% rename from test/domain/comment/fixtures/databases.fixture.ts rename to testing/social/domain/comic/fixtures/databases.fixture.ts index 3c27b6d1..4724233f 100644 --- a/test/domain/comment/fixtures/databases.fixture.ts +++ b/testing/social/domain/comic/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import { driver } from '^/integrations/database'; +import { driver } from '@comify/common/integrations/database'; async function empty(): Promise { diff --git a/test/domain/image/fixtures/fileStores.fixture.ts b/testing/social/domain/comic/fixtures/fileStores.fixture.ts similarity index 73% rename from test/domain/image/fixtures/fileStores.fixture.ts rename to testing/social/domain/comic/fixtures/fileStores.fixture.ts index 01badd4f..db8ede55 100644 --- a/test/domain/image/fixtures/fileStores.fixture.ts +++ b/testing/social/domain/comic/fixtures/fileStores.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/filestore'; -import { driver } from '^/integrations/fileStore'; +import { driver } from '@comify/common/integrations/fileStore'; async function empty(): Promise { diff --git a/test/domain/comic/fixtures/index.ts b/testing/social/domain/comic/fixtures/index.ts similarity index 100% rename from test/domain/comic/fixtures/index.ts rename to testing/social/domain/comic/fixtures/index.ts diff --git a/test/domain/comic/fixtures/values.fixture.ts b/testing/social/domain/comic/fixtures/values.fixture.ts similarity index 100% rename from test/domain/comic/fixtures/values.fixture.ts rename to testing/social/domain/comic/fixtures/values.fixture.ts diff --git a/test/domain/comment/create.spec.ts b/testing/social/domain/comment/create.spec.ts similarity index 94% rename from test/domain/comment/create.spec.ts rename to testing/social/domain/comment/create.spec.ts index d3ad91f6..e4645169 100644 --- a/test/domain/comment/create.spec.ts +++ b/testing/social/domain/comment/create.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE } from '^/domain/comment'; import create, { InvalidComment } from '^/domain/comment/create'; diff --git a/test/domain/comic/fixtures/databases.fixture.ts b/testing/social/domain/comment/fixtures/databases.fixture.ts similarity index 73% rename from test/domain/comic/fixtures/databases.fixture.ts rename to testing/social/domain/comment/fixtures/databases.fixture.ts index 3c27b6d1..4724233f 100644 --- a/test/domain/comic/fixtures/databases.fixture.ts +++ b/testing/social/domain/comment/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import { driver } from '^/integrations/database'; +import { driver } from '@comify/common/integrations/database'; async function empty(): Promise { diff --git a/test/domain/comment/fixtures/index.ts b/testing/social/domain/comment/fixtures/index.ts similarity index 100% rename from test/domain/comment/fixtures/index.ts rename to testing/social/domain/comment/fixtures/index.ts diff --git a/test/domain/comment/fixtures/values.fixture.ts b/testing/social/domain/comment/fixtures/values.fixture.ts similarity index 100% rename from test/domain/comment/fixtures/values.fixture.ts rename to testing/social/domain/comment/fixtures/values.fixture.ts diff --git a/test/domain/common/fixtures/index.ts b/testing/social/domain/common/fixtures/index.ts similarity index 100% rename from test/domain/common/fixtures/index.ts rename to testing/social/domain/common/fixtures/index.ts diff --git a/test/domain/common/fixtures/values.fixtures.ts b/testing/social/domain/common/fixtures/values.fixtures.ts similarity index 100% rename from test/domain/common/fixtures/values.fixtures.ts rename to testing/social/domain/common/fixtures/values.fixtures.ts diff --git a/test/domain/common/validateRange.spec.ts b/testing/social/domain/common/validateRange.spec.ts similarity index 100% rename from test/domain/common/validateRange.spec.ts rename to testing/social/domain/common/validateRange.spec.ts diff --git a/test/domain/creator/fixtures/databases.fixture.ts b/testing/social/domain/creator/fixtures/databases.fixture.ts similarity index 86% rename from test/domain/creator/fixtures/databases.fixture.ts rename to testing/social/domain/creator/fixtures/databases.fixture.ts index 8224d6a9..19998a3b 100644 --- a/test/domain/creator/fixtures/databases.fixture.ts +++ b/testing/social/domain/creator/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import database, { driver } from '^/integrations/database'; +import database, { driver } from '@comify/common/integrations/database'; import { RECORD_TYPE as CREATOR_RECORD_TYPE } from '^/domain/creator'; diff --git a/test/domain/creator/fixtures/index.ts b/testing/social/domain/creator/fixtures/index.ts similarity index 100% rename from test/domain/creator/fixtures/index.ts rename to testing/social/domain/creator/fixtures/index.ts diff --git a/test/domain/creator/fixtures/records.fixture.ts b/testing/social/domain/creator/fixtures/records.fixture.ts similarity index 100% rename from test/domain/creator/fixtures/records.fixture.ts rename to testing/social/domain/creator/fixtures/records.fixture.ts diff --git a/test/domain/creator/fixtures/requesters.fixture.ts b/testing/social/domain/creator/fixtures/requesters.fixture.ts similarity index 100% rename from test/domain/creator/fixtures/requesters.fixture.ts rename to testing/social/domain/creator/fixtures/requesters.fixture.ts diff --git a/testing/social/domain/creator/fixtures/tenants.fixture.ts b/testing/social/domain/creator/fixtures/tenants.fixture.ts new file mode 100644 index 00000000..9a322b6c --- /dev/null +++ b/testing/social/domain/creator/fixtures/tenants.fixture.ts @@ -0,0 +1,4 @@ + +import { tenant } from '@comify/common/domain/tenant'; + +export const TENANTS = { default: tenant }; diff --git a/test/domain/creator/fixtures/values.fixture.ts b/testing/social/domain/creator/fixtures/values.fixture.ts similarity index 100% rename from test/domain/creator/fixtures/values.fixture.ts rename to testing/social/domain/creator/fixtures/values.fixture.ts diff --git a/test/domain/creator/updateFullName.spec.ts b/testing/social/domain/creator/updateFullName.spec.ts similarity index 94% rename from test/domain/creator/updateFullName.spec.ts rename to testing/social/domain/creator/updateFullName.spec.ts index b5c0d112..0a472c0e 100644 --- a/test/domain/creator/updateFullName.spec.ts +++ b/testing/social/domain/creator/updateFullName.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE as CREATOR_RECORD_TYPE } from '^/domain/creator'; import updateFullName, { InvalidFullName } from '^/domain/creator/updateFullName'; diff --git a/test/domain/creator/updateNickname.spec.ts b/testing/social/domain/creator/updateNickname.spec.ts similarity index 95% rename from test/domain/creator/updateNickname.spec.ts rename to testing/social/domain/creator/updateNickname.spec.ts index 8321d4f9..1b33df6c 100644 --- a/test/domain/creator/updateNickname.spec.ts +++ b/testing/social/domain/creator/updateNickname.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { RECORD_TYPE as CREATOR_RECORD_TYPE } from '^/domain/creator'; import updateNickname, { NicknameAlreadyExists } from '^/domain/creator/updateNickname'; diff --git a/test/domain/image/create.spec.ts b/testing/social/domain/image/create.spec.ts similarity index 94% rename from test/domain/image/create.spec.ts rename to testing/social/domain/image/create.spec.ts index 54e86665..371dc72c 100644 --- a/test/domain/image/create.spec.ts +++ b/testing/social/domain/image/create.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import fileStore from '@comify/common/integrations/fileStore'; import { RECORD_TYPE } from '^/domain/image'; import create, { InvalidDataURL } from '^/domain/image/create'; diff --git a/test/domain/image/download.spec.ts b/testing/social/domain/image/download.spec.ts similarity index 94% rename from test/domain/image/download.spec.ts rename to testing/social/domain/image/download.spec.ts index a83f641d..ca24d637 100644 --- a/test/domain/image/download.spec.ts +++ b/testing/social/domain/image/download.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import fileStore from '@comify/common/integrations/fileStore'; import { RECORD_TYPE } from '^/domain/image'; import download, { ImageNotDownloaded } from '^/domain/image/download'; diff --git a/test/domain/image/fixtures/dataUrls.fixture.ts b/testing/social/domain/image/fixtures/dataUrls.fixture.ts similarity index 100% rename from test/domain/image/fixtures/dataUrls.fixture.ts rename to testing/social/domain/image/fixtures/dataUrls.fixture.ts diff --git a/test/domain/image/fixtures/databases.fixture.ts b/testing/social/domain/image/fixtures/databases.fixture.ts similarity index 71% rename from test/domain/image/fixtures/databases.fixture.ts rename to testing/social/domain/image/fixtures/databases.fixture.ts index 0462361f..ad1d96b8 100644 --- a/test/domain/image/fixtures/databases.fixture.ts +++ b/testing/social/domain/image/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import { driver } from '^/integrations/database'; +import { driver } from '@comify/common/integrations/database'; async function empty() { diff --git a/test/domain/comic/fixtures/fileStores.fixture.ts b/testing/social/domain/image/fixtures/fileStores.fixture.ts similarity index 73% rename from test/domain/comic/fixtures/fileStores.fixture.ts rename to testing/social/domain/image/fixtures/fileStores.fixture.ts index 01badd4f..db8ede55 100644 --- a/test/domain/comic/fixtures/fileStores.fixture.ts +++ b/testing/social/domain/image/fixtures/fileStores.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/filestore'; -import { driver } from '^/integrations/fileStore'; +import { driver } from '@comify/common/integrations/fileStore'; async function empty(): Promise { diff --git a/test/domain/image/fixtures/httpClients.fixture.ts b/testing/social/domain/image/fixtures/httpClients.fixture.ts similarity index 92% rename from test/domain/image/fixtures/httpClients.fixture.ts rename to testing/social/domain/image/fixtures/httpClients.fixture.ts index 81943854..41398a50 100644 --- a/test/domain/image/fixtures/httpClients.fixture.ts +++ b/testing/social/domain/image/fixtures/httpClients.fixture.ts @@ -2,7 +2,7 @@ import { HttpMethods } from '@theshelf/http'; import type { MappedDriver } from '@theshelf/http'; -import { driver } from '^/integrations/http'; +import { driver } from '@comify/common/integrations/http'; import { RESPONSES } from './responses.fixture'; import { URLS } from './urls.fixture'; diff --git a/test/domain/image/fixtures/index.ts b/testing/social/domain/image/fixtures/index.ts similarity index 100% rename from test/domain/image/fixtures/index.ts rename to testing/social/domain/image/fixtures/index.ts diff --git a/test/domain/image/fixtures/responses.fixture.ts b/testing/social/domain/image/fixtures/responses.fixture.ts similarity index 100% rename from test/domain/image/fixtures/responses.fixture.ts rename to testing/social/domain/image/fixtures/responses.fixture.ts diff --git a/test/domain/image/fixtures/urls.fixture.ts b/testing/social/domain/image/fixtures/urls.fixture.ts similarity index 100% rename from test/domain/image/fixtures/urls.fixture.ts rename to testing/social/domain/image/fixtures/urls.fixture.ts diff --git a/test/domain/notification/create.spec.ts b/testing/social/domain/notification/create.spec.ts similarity index 97% rename from test/domain/notification/create.spec.ts rename to testing/social/domain/notification/create.spec.ts index 4afb8791..52af3bdb 100644 --- a/test/domain/notification/create.spec.ts +++ b/testing/social/domain/notification/create.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import type { DataModel} from '^/domain/notification'; import { RECORD_TYPE as NOTIFICATION_RECORD_TYPE, Types } from '^/domain/notification'; diff --git a/test/domain/notification/fixtures/dataUrls.fixture.ts b/testing/social/domain/notification/fixtures/dataUrls.fixture.ts similarity index 100% rename from test/domain/notification/fixtures/dataUrls.fixture.ts rename to testing/social/domain/notification/fixtures/dataUrls.fixture.ts diff --git a/test/domain/notification/fixtures/databases.fixture.ts b/testing/social/domain/notification/fixtures/databases.fixture.ts similarity index 96% rename from test/domain/notification/fixtures/databases.fixture.ts rename to testing/social/domain/notification/fixtures/databases.fixture.ts index acec49a8..2cc49d6b 100644 --- a/test/domain/notification/fixtures/databases.fixture.ts +++ b/testing/social/domain/notification/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import database, { driver } from '^/integrations/database'; +import database, { driver } from '@comify/common/integrations/database'; import { RECORD_TYPE as COMIC_RECORD_TYPE } from '^/domain/comic'; import { RECORD_TYPE as CREATOR_RECORD_TYPE } from '^/domain/creator'; diff --git a/test/domain/notification/fixtures/fileStores.fixture.ts b/testing/social/domain/notification/fixtures/fileStores.fixture.ts similarity index 82% rename from test/domain/notification/fixtures/fileStores.fixture.ts rename to testing/social/domain/notification/fixtures/fileStores.fixture.ts index 73785195..1a5eadb7 100644 --- a/test/domain/notification/fixtures/fileStores.fixture.ts +++ b/testing/social/domain/notification/fixtures/fileStores.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/filestore'; -import fileStore, { driver } from '^/integrations/fileStore'; +import fileStore, { driver } from '@comify/common/integrations/fileStore'; import { FILES } from './files.fixture'; import { VALUES } from './values.fixture'; diff --git a/test/domain/notification/fixtures/files.fixture.ts b/testing/social/domain/notification/fixtures/files.fixture.ts similarity index 100% rename from test/domain/notification/fixtures/files.fixture.ts rename to testing/social/domain/notification/fixtures/files.fixture.ts diff --git a/test/domain/notification/fixtures/index.ts b/testing/social/domain/notification/fixtures/index.ts similarity index 100% rename from test/domain/notification/fixtures/index.ts rename to testing/social/domain/notification/fixtures/index.ts diff --git a/test/domain/notification/fixtures/records.fixture.ts b/testing/social/domain/notification/fixtures/records.fixture.ts similarity index 100% rename from test/domain/notification/fixtures/records.fixture.ts rename to testing/social/domain/notification/fixtures/records.fixture.ts diff --git a/test/domain/notification/fixtures/requesters.fixture.ts b/testing/social/domain/notification/fixtures/requesters.fixture.ts similarity index 100% rename from test/domain/notification/fixtures/requesters.fixture.ts rename to testing/social/domain/notification/fixtures/requesters.fixture.ts diff --git a/testing/social/domain/notification/fixtures/tenants.fixture.ts b/testing/social/domain/notification/fixtures/tenants.fixture.ts new file mode 100644 index 00000000..9a322b6c --- /dev/null +++ b/testing/social/domain/notification/fixtures/tenants.fixture.ts @@ -0,0 +1,4 @@ + +import { tenant } from '@comify/common/domain/tenant'; + +export const TENANTS = { default: tenant }; diff --git a/test/domain/notification/fixtures/values.fixture.ts b/testing/social/domain/notification/fixtures/values.fixture.ts similarity index 100% rename from test/domain/notification/fixtures/values.fixture.ts rename to testing/social/domain/notification/fixtures/values.fixture.ts diff --git a/test/domain/notification/getRecentAggregated.spec.ts b/testing/social/domain/notification/getRecentAggregated.spec.ts similarity index 94% rename from test/domain/notification/getRecentAggregated.spec.ts rename to testing/social/domain/notification/getRecentAggregated.spec.ts index 9e57304d..17bb20c6 100644 --- a/test/domain/notification/getRecentAggregated.spec.ts +++ b/testing/social/domain/notification/getRecentAggregated.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import fileStore from '@comify/common/integrations/fileStore'; import { Types } from '^/domain/notification'; import getRecentAggregated from '^/domain/notification/getRecentAggregated'; diff --git a/test/domain/notification/removePostNotifications.spec.ts b/testing/social/domain/notification/removePostNotifications.spec.ts similarity index 92% rename from test/domain/notification/removePostNotifications.spec.ts rename to testing/social/domain/notification/removePostNotifications.spec.ts index d3d4a780..5495b3cc 100644 --- a/test/domain/notification/removePostNotifications.spec.ts +++ b/testing/social/domain/notification/removePostNotifications.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import getByPostId from '^/domain/notification/getByPostId'; import removedPost from '^/domain/notification/notify/removedPost'; diff --git a/test/domain/post/createWithComic.spec.ts b/testing/social/domain/post/createWithComic.spec.ts similarity index 86% rename from test/domain/post/createWithComic.spec.ts rename to testing/social/domain/post/createWithComic.spec.ts index 1a795c8c..882e2870 100644 --- a/test/domain/post/createWithComic.spec.ts +++ b/testing/social/domain/post/createWithComic.spec.ts @@ -1,9 +1,9 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import eventBroker from '^/integrations/eventBroker'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import eventBroker from '@comify/common/integrations/eventBroker'; +import fileStore from '@comify/common/integrations/fileStore'; import { RECORD_TYPE as POST_RECORD_TYPE } from '^/domain/post'; import createWithComic from '^/domain/post/createWithComic'; diff --git a/test/domain/post/fixtures/dataUrls.fixture.ts b/testing/social/domain/post/fixtures/dataUrls.fixture.ts similarity index 100% rename from test/domain/post/fixtures/dataUrls.fixture.ts rename to testing/social/domain/post/fixtures/dataUrls.fixture.ts diff --git a/test/domain/post/fixtures/databases.fixture.ts b/testing/social/domain/post/fixtures/databases.fixture.ts similarity index 96% rename from test/domain/post/fixtures/databases.fixture.ts rename to testing/social/domain/post/fixtures/databases.fixture.ts index 3131fac2..e03e51a0 100644 --- a/test/domain/post/fixtures/databases.fixture.ts +++ b/testing/social/domain/post/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import database, { driver } from '^/integrations/database'; +import database, { driver } from '@comify/common/integrations/database'; import { RECORD_TYPE as COMIC_RECORD_TYPE } from '^/domain/comic'; import { RECORD_TYPE as CREATOR_RECORD_TYPE } from '^/domain/creator'; diff --git a/test/domain/post/fixtures/fileStores.fixture.ts b/testing/social/domain/post/fixtures/fileStores.fixture.ts similarity index 85% rename from test/domain/post/fixtures/fileStores.fixture.ts rename to testing/social/domain/post/fixtures/fileStores.fixture.ts index 5d32f5fd..3e590357 100644 --- a/test/domain/post/fixtures/fileStores.fixture.ts +++ b/testing/social/domain/post/fixtures/fileStores.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/filestore'; -import fileStore, { driver } from '^/integrations/fileStore'; +import fileStore, { driver } from '@comify/common/integrations/fileStore'; import { FILES } from './files.fixture'; import { VALUES } from './values.fixture'; diff --git a/test/domain/post/fixtures/files.fixture.ts b/testing/social/domain/post/fixtures/files.fixture.ts similarity index 100% rename from test/domain/post/fixtures/files.fixture.ts rename to testing/social/domain/post/fixtures/files.fixture.ts diff --git a/test/domain/post/fixtures/index.ts b/testing/social/domain/post/fixtures/index.ts similarity index 100% rename from test/domain/post/fixtures/index.ts rename to testing/social/domain/post/fixtures/index.ts diff --git a/test/domain/post/fixtures/queries.fixture.ts b/testing/social/domain/post/fixtures/queries.fixture.ts similarity index 100% rename from test/domain/post/fixtures/queries.fixture.ts rename to testing/social/domain/post/fixtures/queries.fixture.ts diff --git a/test/domain/post/fixtures/records.fixture.ts b/testing/social/domain/post/fixtures/records.fixture.ts similarity index 100% rename from test/domain/post/fixtures/records.fixture.ts rename to testing/social/domain/post/fixtures/records.fixture.ts diff --git a/test/domain/post/fixtures/requesters.fixture.ts b/testing/social/domain/post/fixtures/requesters.fixture.ts similarity index 100% rename from test/domain/post/fixtures/requesters.fixture.ts rename to testing/social/domain/post/fixtures/requesters.fixture.ts diff --git a/testing/social/domain/post/fixtures/tenants.fixture.ts b/testing/social/domain/post/fixtures/tenants.fixture.ts new file mode 100644 index 00000000..9a322b6c --- /dev/null +++ b/testing/social/domain/post/fixtures/tenants.fixture.ts @@ -0,0 +1,4 @@ + +import { tenant } from '@comify/common/domain/tenant'; + +export const TENANTS = { default: tenant }; diff --git a/test/domain/post/fixtures/values.fixture.ts b/testing/social/domain/post/fixtures/values.fixture.ts similarity index 100% rename from test/domain/post/fixtures/values.fixture.ts rename to testing/social/domain/post/fixtures/values.fixture.ts diff --git a/test/domain/post/getByFollowingAggregated.spec.ts b/testing/social/domain/post/getByFollowingAggregated.spec.ts similarity index 89% rename from test/domain/post/getByFollowingAggregated.spec.ts rename to testing/social/domain/post/getByFollowingAggregated.spec.ts index 0e2ee438..e00b0a60 100644 --- a/test/domain/post/getByFollowingAggregated.spec.ts +++ b/testing/social/domain/post/getByFollowingAggregated.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import fileStore from '@comify/common/integrations/fileStore'; import getByFollowingAggregated from '^/domain/post/getByFollowingAggregated'; diff --git a/test/domain/post/getRecommendedAggregated.spec.ts b/testing/social/domain/post/getRecommendedAggregated.spec.ts similarity index 89% rename from test/domain/post/getRecommendedAggregated.spec.ts rename to testing/social/domain/post/getRecommendedAggregated.spec.ts index 8275b3d0..abddd9ea 100644 --- a/test/domain/post/getRecommendedAggregated.spec.ts +++ b/testing/social/domain/post/getRecommendedAggregated.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import fileStore from '^/integrations/fileStore'; +import database from '@comify/common/integrations/database'; +import fileStore from '@comify/common/integrations/fileStore'; import getRecommendedAggregated from '^/domain/post/getRecommendedAggregated'; diff --git a/test/domain/post/remove.spec.ts b/testing/social/domain/post/remove.spec.ts similarity index 92% rename from test/domain/post/remove.spec.ts rename to testing/social/domain/post/remove.spec.ts index 573c2af4..b195f06a 100644 --- a/test/domain/post/remove.spec.ts +++ b/testing/social/domain/post/remove.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import eventBroker from '^/integrations/eventBroker'; +import database from '@comify/common/integrations/database'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { PostNotFound, RECORD_TYPE } from '^/domain/post'; import remove from '^/domain/post/remove'; diff --git a/test/domain/rating/fixtures/databases.fixture.ts b/testing/social/domain/rating/fixtures/databases.fixture.ts similarity index 86% rename from test/domain/rating/fixtures/databases.fixture.ts rename to testing/social/domain/rating/fixtures/databases.fixture.ts index d7ef6510..a9478ef7 100644 --- a/test/domain/rating/fixtures/databases.fixture.ts +++ b/testing/social/domain/rating/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import database, { driver } from '^/integrations/database'; +import database, { driver } from '@comify/common/integrations/database'; import { RECORD_TYPE as RATING_RECORD_TYPE } from '^/domain/rating'; diff --git a/test/domain/rating/fixtures/index.ts b/testing/social/domain/rating/fixtures/index.ts similarity index 100% rename from test/domain/rating/fixtures/index.ts rename to testing/social/domain/rating/fixtures/index.ts diff --git a/test/domain/rating/fixtures/records.fixture.ts b/testing/social/domain/rating/fixtures/records.fixture.ts similarity index 100% rename from test/domain/rating/fixtures/records.fixture.ts rename to testing/social/domain/rating/fixtures/records.fixture.ts diff --git a/test/domain/rating/fixtures/requesters.fixture.ts b/testing/social/domain/rating/fixtures/requesters.fixture.ts similarity index 100% rename from test/domain/rating/fixtures/requesters.fixture.ts rename to testing/social/domain/rating/fixtures/requesters.fixture.ts diff --git a/testing/social/domain/rating/fixtures/tenants.fixture.ts b/testing/social/domain/rating/fixtures/tenants.fixture.ts new file mode 100644 index 00000000..9a322b6c --- /dev/null +++ b/testing/social/domain/rating/fixtures/tenants.fixture.ts @@ -0,0 +1,4 @@ + +import { tenant } from '@comify/common/domain/tenant'; + +export const TENANTS = { default: tenant }; diff --git a/test/domain/rating/fixtures/values.fixture.ts b/testing/social/domain/rating/fixtures/values.fixture.ts similarity index 100% rename from test/domain/rating/fixtures/values.fixture.ts rename to testing/social/domain/rating/fixtures/values.fixture.ts diff --git a/test/domain/rating/toggle.spec.ts b/testing/social/domain/rating/toggle.spec.ts similarity index 88% rename from test/domain/rating/toggle.spec.ts rename to testing/social/domain/rating/toggle.spec.ts index 1f4ce9ec..4c559e4d 100644 --- a/test/domain/rating/toggle.spec.ts +++ b/testing/social/domain/rating/toggle.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import eventBroker from '^/integrations/eventBroker'; +import database from '@comify/common/integrations/database'; +import eventBroker from '@comify/common/integrations/eventBroker'; import toggle from '^/domain/rating/toggle'; diff --git a/test/domain/relation/establish.spec.ts b/testing/social/domain/relation/establish.spec.ts similarity index 90% rename from test/domain/relation/establish.spec.ts rename to testing/social/domain/relation/establish.spec.ts index ccb7dac7..3869dbaf 100644 --- a/test/domain/relation/establish.spec.ts +++ b/testing/social/domain/relation/establish.spec.ts @@ -1,8 +1,8 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; -import eventBroker from '^/integrations/eventBroker'; +import database from '@comify/common/integrations/database'; +import eventBroker from '@comify/common/integrations/eventBroker'; import { RECORD_TYPE as RELATION_RECORD_TYPE } from '^/domain/relation'; import establish, { RelationAlreadyExists } from '^/domain/relation/establish'; diff --git a/test/domain/relation/exploreAggregated.spec.ts b/testing/social/domain/relation/exploreAggregated.spec.ts similarity index 97% rename from test/domain/relation/exploreAggregated.spec.ts rename to testing/social/domain/relation/exploreAggregated.spec.ts index 3c9d76df..0bbb6c6f 100644 --- a/test/domain/relation/exploreAggregated.spec.ts +++ b/testing/social/domain/relation/exploreAggregated.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import { SortOrders } from '^/domain/relation/definitions'; import explore from '^/domain/relation/exploreAggregated'; diff --git a/test/domain/relation/fixtures/databases.fixture.ts b/testing/social/domain/relation/fixtures/databases.fixture.ts similarity index 92% rename from test/domain/relation/fixtures/databases.fixture.ts rename to testing/social/domain/relation/fixtures/databases.fixture.ts index a2c75fcf..13edf74d 100644 --- a/test/domain/relation/fixtures/databases.fixture.ts +++ b/testing/social/domain/relation/fixtures/databases.fixture.ts @@ -1,7 +1,7 @@ import type { MemoryDriver } from '@theshelf/database'; -import database, { driver } from '^/integrations/database'; +import database, { driver } from '@comify/common/integrations/database'; import { RECORD_TYPE as CREATOR_RECORD_TYPE } from '^/domain/creator'; import { RECORD_TYPE as CREATOR_METRICS_RECORD_TYPE } from '^/domain/creator.metrics'; diff --git a/test/domain/relation/fixtures/index.ts b/testing/social/domain/relation/fixtures/index.ts similarity index 100% rename from test/domain/relation/fixtures/index.ts rename to testing/social/domain/relation/fixtures/index.ts diff --git a/test/domain/relation/fixtures/queries.fixture.ts b/testing/social/domain/relation/fixtures/queries.fixture.ts similarity index 100% rename from test/domain/relation/fixtures/queries.fixture.ts rename to testing/social/domain/relation/fixtures/queries.fixture.ts diff --git a/test/domain/relation/fixtures/records.fixture.ts b/testing/social/domain/relation/fixtures/records.fixture.ts similarity index 100% rename from test/domain/relation/fixtures/records.fixture.ts rename to testing/social/domain/relation/fixtures/records.fixture.ts diff --git a/test/domain/relation/fixtures/requesters.fixture.ts b/testing/social/domain/relation/fixtures/requesters.fixture.ts similarity index 100% rename from test/domain/relation/fixtures/requesters.fixture.ts rename to testing/social/domain/relation/fixtures/requesters.fixture.ts diff --git a/testing/social/domain/relation/fixtures/tenants.fixture.ts b/testing/social/domain/relation/fixtures/tenants.fixture.ts new file mode 100644 index 00000000..9a322b6c --- /dev/null +++ b/testing/social/domain/relation/fixtures/tenants.fixture.ts @@ -0,0 +1,4 @@ + +import { tenant } from '@comify/common/domain/tenant'; + +export const TENANTS = { default: tenant }; diff --git a/test/domain/relation/fixtures/values.fixture.ts b/testing/social/domain/relation/fixtures/values.fixture.ts similarity index 100% rename from test/domain/relation/fixtures/values.fixture.ts rename to testing/social/domain/relation/fixtures/values.fixture.ts diff --git a/test/domain/relation/getFollowersAggregated.spec.ts b/testing/social/domain/relation/getFollowersAggregated.spec.ts similarity index 93% rename from test/domain/relation/getFollowersAggregated.spec.ts rename to testing/social/domain/relation/getFollowersAggregated.spec.ts index 149bb993..f2999726 100644 --- a/test/domain/relation/getFollowersAggregated.spec.ts +++ b/testing/social/domain/relation/getFollowersAggregated.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import getFollowers from '^/domain/relation/getFollowersAggregated'; diff --git a/test/domain/relation/getFollowingAggregated.spec.ts b/testing/social/domain/relation/getFollowingAggregated.spec.ts similarity index 93% rename from test/domain/relation/getFollowingAggregated.spec.ts rename to testing/social/domain/relation/getFollowingAggregated.spec.ts index d96d1e08..fa2ba3e7 100644 --- a/test/domain/relation/getFollowingAggregated.spec.ts +++ b/testing/social/domain/relation/getFollowingAggregated.spec.ts @@ -1,7 +1,7 @@ import { beforeAll, afterAll, beforeEach, describe, expect, it } from 'vitest'; -import database from '^/integrations/database'; +import database from '@comify/common/integrations/database'; import getFollowing from '^/domain/relation/getFollowingAggregated'; diff --git a/testing/social/tsconfig.json b/testing/social/tsconfig.json new file mode 100644 index 00000000..160244d4 --- /dev/null +++ b/testing/social/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "paths": { + "^/*": ["../../development/social/*"], + "@comify/common/*": ["../../development/common/*"] + } + } +} \ No newline at end of file diff --git a/testing/tsconfig.json b/testing/tsconfig.json new file mode 100644 index 00000000..8b4ff642 --- /dev/null +++ b/testing/tsconfig.json @@ -0,0 +1,3 @@ +{ + "extends": "../tsconfig.json" +} \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index f88c6487..2825f22b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,20 +1,17 @@ { "compilerOptions": { + "types": ["node"], + "target": "esnext", + "module": "esnext", + "moduleResolution": "bundler", + "isolatedModules": true, + "noEmit": false, + "declaration": true, "useDefineForClassFields": true, "allowJs": false, "skipLibCheck": true, - "esModuleInterop": false, "allowSyntheticDefaultImports": true, "strict": true, - "forceConsistentCasingInFileNames": true, - "isolatedModules": true, - "target": "esnext", - "module": "esnext", - "moduleResolution": "bundler", - "outDir": "./dist", - "paths": { - "^/*": ["./src/*"], - } - }, - "include": ["src", "test"] + "forceConsistentCasingInFileNames": true + } } \ No newline at end of file