@antelopejs/dms 0.15.0 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +47 -0
- package/README.md +36 -26
- package/bin/control/base.mjs +9 -4
- package/bin/control/browser-client.mjs +24 -5
- package/bin/control/browser-wire.mjs +41 -0
- package/bin/control/browser-wire.test.mjs +96 -0
- package/bin/control/browser.mjs +78 -27
- package/bin/control/commands-stack.mjs +58 -8
- package/bin/control/commands-verify.mjs +47 -1
- package/bin/control/doctor.mjs +49 -4
- package/bin/control/failure.mjs +9 -0
- package/bin/control/journey.mjs +163 -30
- package/bin/control/journey.test.mjs +61 -0
- package/bin/control/json.mjs +229 -0
- package/bin/control/json.test.mjs +130 -0
- package/bin/control/mail.mjs +57 -7
- package/bin/control/mail.test.mjs +55 -0
- package/bin/control/mongo.mjs +205 -27
- package/bin/control/mongo.test.mjs +298 -0
- package/bin/control/options.mjs +33 -0
- package/bin/control/processes.mjs +24 -2
- package/bin/control/renderer.mjs +39 -0
- package/bin/control/renderer.test.mjs +324 -0
- package/bin/control/run-state.mjs +119 -6
- package/bin/control/run-state.test.mjs +171 -0
- package/bin/control/session.mjs +31 -14
- package/bin/control/stack.mjs +96 -24
- package/bin/control/tab.mjs +117 -18
- package/bin/control/verify/behaviour.mjs +44 -6
- package/bin/control/verify/behaviour.test.mjs +130 -22
- package/bin/control/verify/decode.mjs +220 -0
- package/bin/control/verify/decode.test.mjs +245 -0
- package/bin/control/verify/doors.mjs +1 -1
- package/bin/control/verify/doors.test.mjs +40 -0
- package/bin/control/verify/emit.mjs +135 -9
- package/bin/control/verify/formal.mjs +61 -10
- package/bin/control/verify/formal.test.mjs +19 -3
- package/bin/control/verify/judgement.mjs +22 -3
- package/bin/control/verify/map.mjs +25 -5
- package/bin/control/verify/publish.mjs +20 -14
- package/bin/control/verify/seeded.mjs +65 -16
- package/bin/control/verify/skill.mjs +27 -6
- package/bin/control/verify/types.mjs +29 -0
- package/bin/control/verify/verdict.mjs +72 -7
- package/bin/dms-control.mjs +8 -28
- package/checks/api-error-presentation.d.mts +61 -0
- package/dist/attachments/access.js +1 -1
- package/dist/attachments/access.js.map +1 -1
- package/dist/attachments/fields.d.ts +2 -2
- package/dist/attachments/fields.js +26 -13
- package/dist/attachments/fields.js.map +1 -1
- package/dist/attachments/index.d.ts +1 -0
- package/dist/attachments/index.js +1 -0
- package/dist/attachments/index.js.map +1 -1
- package/dist/attachments/read.js.map +1 -1
- package/dist/attachments/save.d.ts +1 -1
- package/dist/attachments/save.js +49 -17
- package/dist/attachments/save.js.map +1 -1
- package/dist/attachments/table-view.d.ts +1 -2
- package/dist/attachments/table-view.js +23 -13
- package/dist/attachments/table-view.js.map +1 -1
- package/dist/automation/events.d.ts +10 -10
- package/dist/automation/index.js +3 -4
- package/dist/automation/index.js.map +1 -1
- package/dist/automation/send-notification.d.ts +2 -2
- package/dist/automation/send-notification.js +4 -6
- package/dist/automation/send-notification.js.map +1 -1
- package/dist/config/internal/state.d.ts +7 -0
- package/dist/config/internal/state.js +9 -0
- package/dist/config/internal/state.js.map +1 -1
- package/dist/config/startup-config.d.ts +1 -0
- package/dist/config/startup-config.js +11 -0
- package/dist/config/startup-config.js.map +1 -1
- package/dist/crons/cleanup-user-invites.js.map +1 -1
- package/dist/crons/sweep-expired-sessions.js.map +1 -1
- package/dist/crons/sweep-stale-exports.js.map +1 -1
- package/dist/db/guard-row.d.ts +2 -3
- package/dist/db/guard-row.js +1 -2
- package/dist/db/guard-row.js.map +1 -1
- package/dist/db/index.d.ts +1 -0
- package/dist/db/index.js +1 -0
- package/dist/db/index.js.map +1 -1
- package/dist/db/models/attachments.model.d.ts +7 -5
- package/dist/db/models/index.d.ts +1 -0
- package/dist/db/models/index.js +1 -0
- package/dist/db/models/index.js.map +1 -1
- package/dist/db/models/setupToken.model.d.ts +31 -0
- package/dist/db/models/setupToken.model.js +62 -0
- package/dist/db/models/setupToken.model.js.map +1 -0
- package/dist/db/models/signInAttempts.model.d.ts +7 -5
- package/dist/db/models/systemState.model.d.ts +7 -5
- package/dist/db/models/userEmailChanges.model.d.ts +7 -5
- package/dist/db/models/userKnownDevices.model.d.ts +7 -5
- package/dist/db/models/userNotificationPreferences.model.d.ts +7 -5
- package/dist/db/models/userNotifications.model.d.ts +9 -6
- package/dist/db/models/userNotifications.model.js.map +1 -1
- package/dist/db/setup-token.d.ts +2 -0
- package/dist/db/setup-token.js +28 -0
- package/dist/db/setup-token.js.map +1 -0
- package/dist/db/tables/index.d.ts +1 -0
- package/dist/db/tables/index.js +1 -0
- package/dist/db/tables/index.js.map +1 -1
- package/dist/db/tables/setupToken.table.d.ts +7 -0
- package/dist/db/tables/setupToken.table.js +34 -0
- package/dist/db/tables/setupToken.table.js.map +1 -0
- package/dist/dev/module-update-notifications.js.map +1 -1
- package/dist/hooks/internal/sign-in-monitor.js +6 -6
- package/dist/hooks/internal/sign-in-monitor.js.map +1 -1
- package/dist/implementations/dms/page/controller.d.ts +2 -2
- package/dist/implementations/dms/page/controller.js +3 -1
- package/dist/implementations/dms/page/controller.js.map +1 -1
- package/dist/implementations/dms/page/dynamic-menu.js +3 -2
- package/dist/implementations/dms/page/dynamic-menu.js.map +1 -1
- package/dist/implementations/dms/page/notifications.d.ts +6 -2
- package/dist/implementations/dms/page/notifications.js +1 -0
- package/dist/implementations/dms/page/notifications.js.map +1 -1
- package/dist/implementations/dms/page/payloads.js +6 -10
- package/dist/implementations/dms/page/payloads.js.map +1 -1
- package/dist/implementations/dms/page/preview-pages.js +6 -3
- package/dist/implementations/dms/page/preview-pages.js.map +1 -1
- package/dist/implementations/dms/page/public-layout.d.ts +2 -0
- package/dist/implementations/dms/page/public-layout.js +45 -0
- package/dist/implementations/dms/page/public-layout.js.map +1 -0
- package/dist/implementations/dms/page/registry.js +10 -4
- package/dist/implementations/dms/page/registry.js.map +1 -1
- package/dist/implementations/dms/permissions.js +12 -12
- package/dist/implementations/dms/permissions.js.map +1 -1
- package/dist/implementations/dms-base/bulk-selection.d.ts +3 -4
- package/dist/implementations/dms-base/bulk-selection.js +18 -6
- package/dist/implementations/dms-base/bulk-selection.js.map +1 -1
- package/dist/implementations/dms-base/filter-tokens.js.map +1 -1
- package/dist/implementations/dms-base/footer-summary.js +44 -27
- package/dist/implementations/dms-base/footer-summary.js.map +1 -1
- package/dist/implementations/dms-base/row-rule-operand.d.ts +6 -0
- package/dist/implementations/dms-base/row-rule-operand.js +41 -0
- package/dist/implementations/dms-base/row-rule-operand.js.map +1 -0
- package/dist/implementations/dms-base/search-route.d.ts +9 -13
- package/dist/implementations/dms-base/search-route.js +7 -6
- package/dist/implementations/dms-base/search-route.js.map +1 -1
- package/dist/implementations/dms-base/services.d.ts +1 -0
- package/dist/implementations/dms-base/services.js +1 -0
- package/dist/implementations/dms-base/services.js.map +1 -1
- package/dist/implementations/dms-base/table-view.d.ts +5 -6
- package/dist/implementations/dms-base/table-view.js +17 -6
- package/dist/implementations/dms-base/table-view.js.map +1 -1
- package/dist/implementations/dms-html-render/index.js +16 -6
- package/dist/implementations/dms-html-render/index.js.map +1 -1
- package/dist/implementations/dms-notifications/delivery-guard.d.ts +3 -2
- package/dist/implementations/dms-notifications/delivery-guard.js.map +1 -1
- package/dist/implementations/dms-notifications/index.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/pages/public/preview/block-types.d.ts +1 -2
- package/dist/pages/public/preview/block-types.js.map +1 -1
- package/dist/pages/settings/overview/account-summary.js +4 -1
- package/dist/pages/settings/overview/account-summary.js.map +1 -1
- package/dist/pages/settings/users/account-activity-feed.js +3 -2
- package/dist/pages/settings/users/account-activity-feed.js.map +1 -1
- package/dist/pages/settings/users/account-credentials.d.ts +1 -1
- package/dist/pages/settings/users/account-credentials.js +1 -2
- package/dist/pages/settings/users/account-credentials.js.map +1 -1
- package/dist/pages/settings/users/account-data-store.d.ts +1 -1
- package/dist/pages/settings/users/account-data-store.js +1 -3
- package/dist/pages/settings/users/account-data-store.js.map +1 -1
- package/dist/pages/settings/users/current-password.js +1 -1
- package/dist/pages/settings/users/current-password.js.map +1 -1
- package/dist/pages/settings/users/email-change.d.ts +2 -2
- package/dist/pages/settings/users/email-change.js +2 -3
- package/dist/pages/settings/users/email-change.js.map +1 -1
- package/dist/pages/settings/users/invite-extension-routes.d.ts +2 -2
- package/dist/pages/settings/users/invite-extension-routes.js +11 -4
- package/dist/pages/settings/users/invite-extension-routes.js.map +1 -1
- package/dist/pages/settings/users/invites.d.ts +2 -2
- package/dist/pages/settings/users/member-invite-batch.d.ts +2 -2
- package/dist/pages/settings/users/member-invite-batch.js +7 -3
- package/dist/pages/settings/users/member-invite-batch.js.map +1 -1
- package/dist/pages/settings/users/member-roles-field.js +1 -4
- package/dist/pages/settings/users/member-roles-field.js.map +1 -1
- package/dist/pages/settings/users/members.d.ts +2 -3
- package/dist/pages/settings/users/members.js.map +1 -1
- package/dist/pages/settings/users/notifications.d.ts +2 -3
- package/dist/pages/settings/users/notifications.js +2 -1
- package/dist/pages/settings/users/notifications.js.map +1 -1
- package/dist/pages/settings/users/profile-helpers.d.ts +0 -1
- package/dist/pages/settings/users/profile-helpers.js +0 -17
- package/dist/pages/settings/users/profile-helpers.js.map +1 -1
- package/dist/pages/settings/users/profile.d.ts +3 -4
- package/dist/pages/settings/users/profile.js +12 -12
- package/dist/pages/settings/users/profile.js.map +1 -1
- package/dist/pages/settings/users/region.d.ts +3 -4
- package/dist/pages/settings/users/region.js.map +1 -1
- package/dist/pages/settings/users/regional-preferences.d.ts +8 -1
- package/dist/pages/settings/users/regional-preferences.js +10 -6
- package/dist/pages/settings/users/regional-preferences.js.map +1 -1
- package/dist/pages/settings/users/role-preview.js +3 -2
- package/dist/pages/settings/users/role-preview.js.map +1 -1
- package/dist/pages/settings/users/roles.d.ts +4 -5
- package/dist/pages/settings/users/roles.js.map +1 -1
- package/dist/pages/settings/users/security.d.ts +9 -12
- package/dist/pages/settings/users/security.js +11 -9
- package/dist/pages/settings/users/security.js.map +1 -1
- package/dist/pages/settings/users/two-factor-operations.d.ts +7 -7
- package/dist/pages/settings/users/two-factor-operations.js +5 -7
- package/dist/pages/settings/users/two-factor-operations.js.map +1 -1
- package/dist/realtime/broker.js.map +1 -1
- package/dist/realtime/heartbeat.js.map +1 -1
- package/dist/realtime/redis-broker.js.map +1 -1
- package/dist/realtime/sessions.js.map +1 -1
- package/dist/realtime/sse.js +1 -2
- package/dist/realtime/sse.js.map +1 -1
- package/dist/routes/auth/forgot-password.d.ts +1 -1
- package/dist/routes/auth/forgot-password.js +1 -3
- package/dist/routes/auth/forgot-password.js.map +1 -1
- package/dist/routes/auth/login.d.ts +2 -2
- package/dist/routes/auth/login.js +8 -4
- package/dist/routes/auth/login.js.map +1 -1
- package/dist/routes/auth/logout.d.ts +1 -1
- package/dist/routes/auth/logout.js +1 -2
- package/dist/routes/auth/logout.js.map +1 -1
- package/dist/routes/auth/oauth/providers.js +30 -6
- package/dist/routes/auth/oauth/providers.js.map +1 -1
- package/dist/routes/auth/oauth/state.js +8 -5
- package/dist/routes/auth/oauth/state.js.map +1 -1
- package/dist/routes/auth/oauth/token-exchange.js +8 -1
- package/dist/routes/auth/oauth/token-exchange.js.map +1 -1
- package/dist/routes/auth/password-hash-upgrade.d.ts +2 -0
- package/dist/routes/auth/password-hash-upgrade.js +22 -0
- package/dist/routes/auth/password-hash-upgrade.js.map +1 -0
- package/dist/routes/auth/refresh.d.ts +1 -1
- package/dist/routes/auth/refresh.js +1 -2
- package/dist/routes/auth/refresh.js.map +1 -1
- package/dist/routes/auth/request-2fa-email.d.ts +1 -1
- package/dist/routes/auth/request-2fa-email.js +1 -2
- package/dist/routes/auth/request-2fa-email.js.map +1 -1
- package/dist/routes/auth/reset-password.d.ts +1 -1
- package/dist/routes/auth/reset-password.js +1 -3
- package/dist/routes/auth/reset-password.js.map +1 -1
- package/dist/routes/auth/session-handoff.d.ts +1 -1
- package/dist/routes/auth/session-handoff.js +1 -2
- package/dist/routes/auth/session-handoff.js.map +1 -1
- package/dist/routes/auth/signup.d.ts +1 -1
- package/dist/routes/auth/signup.js +1 -2
- package/dist/routes/auth/signup.js.map +1 -1
- package/dist/routes/auth/switch-tenant.d.ts +2 -3
- package/dist/routes/auth/switch-tenant.js +3 -2
- package/dist/routes/auth/switch-tenant.js.map +1 -1
- package/dist/routes/auth/validate-forgot-password-token.d.ts +1 -1
- package/dist/routes/auth/validate-forgot-password-token.js +1 -3
- package/dist/routes/auth/validate-forgot-password-token.js.map +1 -1
- package/dist/routes/auth/validate-invite-token.d.ts +1 -1
- package/dist/routes/auth/validate-invite-token.js +1 -3
- package/dist/routes/auth/validate-invite-token.js.map +1 -1
- package/dist/routes/auth/verify-2fa.d.ts +1 -1
- package/dist/routes/auth/verify-2fa.js +1 -2
- package/dist/routes/auth/verify-2fa.js.map +1 -1
- package/dist/routes/auth/verify-email.d.ts +1 -1
- package/dist/routes/auth/verify-email.js +1 -2
- package/dist/routes/auth/verify-email.js.map +1 -1
- package/dist/routes/auth.d.ts +14 -15
- package/dist/routes/auth.js +15 -13
- package/dist/routes/auth.js.map +1 -1
- package/dist/routes/authentication.d.ts +2 -0
- package/dist/routes/authentication.js +2 -0
- package/dist/routes/authentication.js.map +1 -1
- package/dist/routes/files.d.ts +1 -2
- package/dist/routes/files.js.map +1 -1
- package/dist/routes/onboarding.d.ts +4 -3
- package/dist/routes/onboarding.js +20 -3
- package/dist/routes/onboarding.js.map +1 -1
- package/dist/routes/realtime.js +5 -6
- package/dist/routes/realtime.js.map +1 -1
- package/dist/routes/store.d.ts +6 -7
- package/dist/routes/store.js +19 -13
- package/dist/routes/store.js.map +1 -1
- package/dist/store/catalog.d.ts +13 -5
- package/dist/store/catalog.js +19 -9
- package/dist/store/catalog.js.map +1 -1
- package/dist/store/compatibility.d.ts +1 -0
- package/dist/store/compatibility.js +24 -8
- package/dist/store/compatibility.js.map +1 -1
- package/dist/store/frontend-compatibility.js +15 -3
- package/dist/store/frontend-compatibility.js.map +1 -1
- package/dist/store/interfaces.js +35 -13
- package/dist/store/interfaces.js.map +1 -1
- package/dist/store/internal/frontend/frontend-modules.js +7 -3
- package/dist/store/internal/frontend/frontend-modules.js.map +1 -1
- package/dist/store/internal/frontend/frontend-ready.d.ts +2 -1
- package/dist/store/internal/frontend/frontend-ready.js +6 -4
- package/dist/store/internal/frontend/frontend-ready.js.map +1 -1
- package/dist/store/internal/frontend/manifest.js +6 -7
- package/dist/store/internal/frontend/manifest.js.map +1 -1
- package/dist/store/operations.js.map +1 -1
- package/dist/store/registry.js.map +1 -1
- package/dist/store/runtime.d.ts +13 -0
- package/dist/store/runtime.js +9 -1
- package/dist/store/runtime.js.map +1 -1
- package/dist/utils/admin-invite-email.js +3 -1
- package/dist/utils/admin-invite-email.js.map +1 -1
- package/dist/utils/email-subjects.js +3 -1
- package/dist/utils/email-subjects.js.map +1 -1
- package/dist/utils/ensure-default-tenant.d.ts +2 -1
- package/dist/utils/ensure-default-tenant.js +126 -8
- package/dist/utils/ensure-default-tenant.js.map +1 -1
- package/dist/utils/export-jobs-run.js.map +1 -1
- package/dist/utils/export-jobs.js +3 -9
- package/dist/utils/export-jobs.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/own-value.d.ts +1 -0
- package/dist/utils/own-value.js +7 -0
- package/dist/utils/own-value.js.map +1 -0
- package/dist/utils/row-action-rule-evaluator.js +31 -35
- package/dist/utils/row-action-rule-evaluator.js.map +1 -1
- package/dist/utils/sign-in-country.js +4 -2
- package/dist/utils/sign-in-country.js.map +1 -1
- package/dist/utils/tenant-export-archive.js +9 -14
- package/dist/utils/tenant-export-archive.js.map +1 -1
- package/dist/utils/user-agent.js +2 -1
- package/dist/utils/user-agent.js.map +1 -1
- package/dist/validation/auth.schema.d.ts +10 -10
- package/dist/validation/onboarding/register-admin.schema.d.ts +5 -0
- package/dist/validation/onboarding/register-admin.schema.js +3 -0
- package/dist/validation/onboarding/register-admin.schema.js.map +1 -1
- package/dist/validation/regional-preferences.schema.d.ts +2 -2
- package/dist/validation/role-editor.schema.d.ts +1 -1
- package/frontend-vue/build/backend-boundary.ts +49 -18
- package/frontend-vue/dms.frontend.ts +8 -12
- package/frontend-vue/layers/dms-auth/server/accounts.ts +44 -3
- package/frontend-vue/layers/dms-auth/server/actions.ts +17 -4
- package/frontend-vue/layers/dms-auth/server/oauth.ts +42 -4
- package/frontend-vue/layers/dms-core/app/types/watch.ts +1 -2
- package/frontend-vue/layers/dms-core/i18n/locales/core-en-GB.json +1 -0
- package/frontend-vue/layers/dms-core/i18n/locales/core-fr-FR.json +1 -0
- package/frontend-vue/layers/dms-core/shared/types/app-config.ts +5 -0
- package/frontend-vue/layers/dms-layout/app/app.config.ts +1 -0
- package/frontend-vue/layers/dms-layout/app/build/components/layout/DashboardSidebar.vue +9 -9
- package/frontend-vue/layers/dms-layout/app/components/layout/AppLogo.vue +1 -0
- package/frontend-vue/layers/dms-layout/app/composables/page/useInstalledModules.ts +78 -0
- package/frontend-vue/layers/dms-layout/app/custom-pages/modules.vue +5 -24
- package/frontend-vue/layers/dms-layout/i18n/locales/layout-en-GB.json +2 -1
- package/frontend-vue/layers/dms-layout/i18n/locales/layout-fr-FR.json +2 -1
- package/frontend-vue/layers/dms-onboarding/app/components/onboarding/steps/register.vue +21 -1
- package/frontend-vue/layers/dms-onboarding/app/custom-pages/onboarding.vue +14 -0
- package/frontend-vue/layers/dms-onboarding/i18n/locales/onboarding-en-GB.json +2 -0
- package/frontend-vue/layers/dms-onboarding/i18n/locales/onboarding-fr-FR.json +2 -0
- package/frontend-vue/layers/dms-ui/app/build/composables/form/fieldValueRule.ts +57 -6
- package/frontend-vue/layers/dms-ui/app/build/composables/form/registerFormFunctions.ts +7 -9
- package/frontend-vue/layers/dms-ui/app/entries/composables/form/registerFormFunctions.ts +1 -0
- package/frontend-vue/lazy-plugin.ts +18 -0
- package/frontend-vue/package.json +2 -2
- package/package.json +19 -13
- package/skills/dms-project/SKILL.md +4 -3
package/dist/routes/realtime.js
CHANGED
|
@@ -104,11 +104,6 @@ const cleanupSession = async (sessionId) => {
|
|
|
104
104
|
unsubscribe();
|
|
105
105
|
await (0, realtime_1.getPresenceTracker)().releaseAllForSession(sessionId);
|
|
106
106
|
};
|
|
107
|
-
const warnUnlessClosed = (sessionId) => (error) => {
|
|
108
|
-
if (!(0, realtime_1.getSessionInfo)(sessionId))
|
|
109
|
-
return;
|
|
110
|
-
logging_1.Logging.Warn("Realtime: applySessionTopics failed", error);
|
|
111
|
-
};
|
|
112
107
|
const isSessionOf = (info, requester) => info.user?._id === requester.userId && info.tenantId === requester.tenantId;
|
|
113
108
|
const ensureSessionOnPage = async (sessionId, pageId, requester) => {
|
|
114
109
|
const info = (0, realtime_1.getSessionInfo)(sessionId);
|
|
@@ -169,7 +164,11 @@ class RealtimeController extends (0, interface_api_1.Controller)(REALTIME_BASE)
|
|
|
169
164
|
await cleanupSession(sessionId);
|
|
170
165
|
},
|
|
171
166
|
});
|
|
172
|
-
void applySessionTopics(sessionId).catch(
|
|
167
|
+
void applySessionTopics(sessionId).catch((error) => {
|
|
168
|
+
if (!(0, realtime_1.getSessionInfo)(sessionId))
|
|
169
|
+
return;
|
|
170
|
+
logging_1.Logging.Warn("Realtime: applySessionTopics failed", error);
|
|
171
|
+
});
|
|
173
172
|
return {
|
|
174
173
|
ok: true,
|
|
175
174
|
sessionId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../src/routes/realtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"realtime.js","sourceRoot":"","sources":["../../src/routes/realtime.ts"],"names":[],"mappings":"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"}
|
package/dist/routes/store.d.ts
CHANGED
|
@@ -2,7 +2,6 @@ import { type RequestContext } from "@antelopejs/interface-api";
|
|
|
2
2
|
import { RoleModel, TenantMemberModel } from "@antelopejs/interface-dms/db";
|
|
3
3
|
import type { User } from "@antelopejs/interface-dms/auth/db";
|
|
4
4
|
import type { StoreListing } from "../store";
|
|
5
|
-
import { storeInstallSchema, storeOperationSchema } from "../validation";
|
|
6
5
|
declare const ModuleStoreController_base: import("@antelopejs/interface-api").ControllerClass<object>;
|
|
7
6
|
export declare class ModuleStoreController extends ModuleStoreController_base {
|
|
8
7
|
requestContext: RequestContext;
|
|
@@ -12,11 +11,11 @@ export declare class ModuleStoreController extends ModuleStoreController_base {
|
|
|
12
11
|
private assertOwner;
|
|
13
12
|
private run;
|
|
14
13
|
listing(): Promise<StoreListing>;
|
|
15
|
-
install(body:
|
|
16
|
-
update(body:
|
|
17
|
-
enable(body:
|
|
18
|
-
disable(body:
|
|
19
|
-
uninstall(body:
|
|
20
|
-
apply(body:
|
|
14
|
+
install(body: unknown): Promise<StoreListing>;
|
|
15
|
+
update(body: unknown): Promise<StoreListing>;
|
|
16
|
+
enable(body: unknown): Promise<StoreListing>;
|
|
17
|
+
disable(body: unknown): Promise<StoreListing>;
|
|
18
|
+
uninstall(body: unknown): Promise<StoreListing>;
|
|
19
|
+
apply(body: unknown): Promise<StoreListing>;
|
|
21
20
|
}
|
|
22
21
|
export {};
|
package/dist/routes/store.js
CHANGED
|
@@ -24,14 +24,15 @@ const store_1 = require("../store");
|
|
|
24
24
|
const validation_1 = require("../validation");
|
|
25
25
|
const HTTP_FORBIDDEN = 403;
|
|
26
26
|
const ERROR_UNAUTHORIZED = "error.unauthorized";
|
|
27
|
+
function parseStoreOperation(body) {
|
|
28
|
+
return (0, interface_api_util_1.assertValidation)(body, (value) => validation_1.storeOperationSchema.parse(value));
|
|
29
|
+
}
|
|
27
30
|
class ModuleStoreController extends (0, interface_api_1.Controller)("/dms/store") {
|
|
28
31
|
async assertOwner() {
|
|
29
32
|
const isOwner = await (0, page_1.isPlatformOwner)(this.user, this.memberModel, this.roleModel, (0, request_tenant_1.getRequestTenantId)(this.requestContext));
|
|
30
33
|
(0, interface_api_util_1.assert)(isOwner, HTTP_FORBIDDEN, ERROR_UNAUTHORIZED);
|
|
31
34
|
}
|
|
32
|
-
async run(kind,
|
|
33
|
-
await this.assertOwner();
|
|
34
|
-
const { id } = (0, interface_api_util_1.assertValidation)(body, (value) => validation_1.storeOperationSchema.parse(value));
|
|
35
|
+
async run(kind, { id }) {
|
|
35
36
|
await (0, store_1.startStoreOperation)(kind, id);
|
|
36
37
|
return (0, store_1.buildStoreListing)();
|
|
37
38
|
}
|
|
@@ -45,20 +46,25 @@ class ModuleStoreController extends (0, interface_api_1.Controller)("/dms/store"
|
|
|
45
46
|
await (0, store_1.startStoreOperation)("install", id, { dependencies });
|
|
46
47
|
return (0, store_1.buildStoreListing)();
|
|
47
48
|
}
|
|
48
|
-
update(body) {
|
|
49
|
-
|
|
49
|
+
async update(body) {
|
|
50
|
+
await this.assertOwner();
|
|
51
|
+
return this.run("update", parseStoreOperation(body));
|
|
50
52
|
}
|
|
51
|
-
enable(body) {
|
|
52
|
-
|
|
53
|
+
async enable(body) {
|
|
54
|
+
await this.assertOwner();
|
|
55
|
+
return this.run("enable", parseStoreOperation(body));
|
|
53
56
|
}
|
|
54
|
-
disable(body) {
|
|
55
|
-
|
|
57
|
+
async disable(body) {
|
|
58
|
+
await this.assertOwner();
|
|
59
|
+
return this.run("disable", parseStoreOperation(body));
|
|
56
60
|
}
|
|
57
|
-
uninstall(body) {
|
|
58
|
-
|
|
61
|
+
async uninstall(body) {
|
|
62
|
+
await this.assertOwner();
|
|
63
|
+
return this.run("uninstall", parseStoreOperation(body));
|
|
59
64
|
}
|
|
60
|
-
apply(body) {
|
|
61
|
-
|
|
65
|
+
async apply(body) {
|
|
66
|
+
await this.assertOwner();
|
|
67
|
+
return this.run("apply", parseStoreOperation(body));
|
|
62
68
|
}
|
|
63
69
|
}
|
|
64
70
|
exports.ModuleStoreController = ModuleStoreController;
|
package/dist/routes/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/routes/store.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6DAOmC;AACnC,uEAA0E;AAC1E,qDAA4E;AAC5E,yDAA4D;AAE5D,6EAA8E;AAC9E,uFAAkF;AAClF,sDAA8D;AAC9D,oCAAkE;AAElE,8CAAyE;AAEzE,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/routes/store.ts"],"names":[],"mappings":"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"}
|
package/dist/store/catalog.d.ts
CHANGED
|
@@ -1,8 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import type { StoreCatalogEntry } from "./types";
|
|
3
|
+
declare const CatalogDocumentSchema: z.ZodObject<{
|
|
4
|
+
version: z.ZodUnknown;
|
|
5
|
+
modules: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnknown, "many">>>;
|
|
6
|
+
}, "strip", z.ZodTypeAny, {
|
|
7
|
+
version?: unknown;
|
|
8
|
+
modules?: unknown[] | null | undefined;
|
|
9
|
+
}, {
|
|
10
|
+
version?: unknown;
|
|
11
|
+
modules?: unknown[] | null | undefined;
|
|
12
|
+
}>;
|
|
13
|
+
type CatalogDocument = z.infer<typeof CatalogDocumentSchema>;
|
|
6
14
|
export declare function readCatalogDocument(catalog: CatalogDocument | null): StoreCatalogEntry[];
|
|
7
15
|
export declare function loadStoreCatalog(): Promise<StoreCatalogEntry[]>;
|
|
8
16
|
export declare function findCatalogEntry(id: string): Promise<StoreCatalogEntry | undefined>;
|
package/dist/store/catalog.js
CHANGED
|
@@ -9,27 +9,37 @@ exports.findCatalogEntry = findCatalogEntry;
|
|
|
9
9
|
const node_fs_1 = require("node:fs");
|
|
10
10
|
const node_path_1 = __importDefault(require("node:path"));
|
|
11
11
|
const logging_1 = require("@antelopejs/interface-core/logging");
|
|
12
|
+
const zod_1 = require("zod");
|
|
12
13
|
const config_1 = require("../config");
|
|
13
14
|
const BUNDLED_CATALOG_PATH = node_path_1.default.join(__dirname, "../../data/module-store/catalog.json");
|
|
14
15
|
const CATALOG_TTL_MS = 60 * 60 * 1000;
|
|
15
16
|
const CATALOG_FETCH_TIMEOUT_MS = 10_000;
|
|
16
17
|
const SUPPORTED_CATALOG_VERSION = 1;
|
|
18
|
+
const CatalogEntrySchema = zod_1.z
|
|
19
|
+
.object({
|
|
20
|
+
id: zod_1.z.string(),
|
|
21
|
+
package: zod_1.z.string(),
|
|
22
|
+
icon: zod_1.z.string(),
|
|
23
|
+
category: zod_1.z.string(),
|
|
24
|
+
})
|
|
25
|
+
.passthrough();
|
|
26
|
+
const CatalogDocumentSchema = zod_1.z.object({
|
|
27
|
+
version: zod_1.z.unknown(),
|
|
28
|
+
modules: zod_1.z.array(zod_1.z.unknown()).nullish(),
|
|
29
|
+
});
|
|
17
30
|
let cachedRemote;
|
|
18
31
|
let bundled;
|
|
19
|
-
function isCatalogEntry(entry) {
|
|
20
|
-
return (typeof entry?.id === "string" &&
|
|
21
|
-
typeof entry.package === "string" &&
|
|
22
|
-
typeof entry.icon === "string" &&
|
|
23
|
-
typeof entry.category === "string");
|
|
24
|
-
}
|
|
25
32
|
function readCatalogDocument(catalog) {
|
|
26
33
|
if (catalog?.version !== SUPPORTED_CATALOG_VERSION) {
|
|
27
34
|
throw new Error(`Unsupported module catalog version: ${String(catalog?.version)}`);
|
|
28
35
|
}
|
|
29
|
-
return (catalog.modules ?? []).
|
|
36
|
+
return (catalog.modules ?? []).flatMap((entry) => {
|
|
37
|
+
const parsed = CatalogEntrySchema.safeParse(entry);
|
|
38
|
+
return parsed.success ? [parsed.data] : [];
|
|
39
|
+
});
|
|
30
40
|
}
|
|
31
41
|
function bundledCatalog() {
|
|
32
|
-
bundled ??= readCatalogDocument(JSON.parse((0, node_fs_1.readFileSync)(BUNDLED_CATALOG_PATH, "utf-8")));
|
|
42
|
+
bundled ??= readCatalogDocument(CatalogDocumentSchema.parse(JSON.parse((0, node_fs_1.readFileSync)(BUNDLED_CATALOG_PATH, "utf-8"))));
|
|
33
43
|
return bundled;
|
|
34
44
|
}
|
|
35
45
|
async function fetchRemoteCatalog(url) {
|
|
@@ -39,7 +49,7 @@ async function fetchRemoteCatalog(url) {
|
|
|
39
49
|
if (!response.ok) {
|
|
40
50
|
throw new Error(`HTTP ${response.status}`);
|
|
41
51
|
}
|
|
42
|
-
return readCatalogDocument(await response.json());
|
|
52
|
+
return readCatalogDocument(CatalogDocumentSchema.parse(await response.json()));
|
|
43
53
|
}
|
|
44
54
|
async function loadStoreCatalog() {
|
|
45
55
|
const url = (0, config_1.getStoreConfig)().catalogUrl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/store/catalog.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/store/catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import type { PackageRelease } from "./types";
|
|
2
|
+
export declare function findInterfaceVersion(startFolder: string): string | undefined;
|
|
2
3
|
export declare function installedInterfaceVersion(): string;
|
|
3
4
|
export declare function isCompatible(release: PackageRelease, installedVersion: string): boolean;
|
|
@@ -3,36 +3,52 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.findInterfaceVersion = findInterfaceVersion;
|
|
6
7
|
exports.installedInterfaceVersion = installedInterfaceVersion;
|
|
7
8
|
exports.isCompatible = isCompatible;
|
|
8
9
|
const node_fs_1 = require("node:fs");
|
|
9
10
|
const node_path_1 = __importDefault(require("node:path"));
|
|
10
11
|
const semver_1 = require("semver");
|
|
12
|
+
const zod_1 = require("zod");
|
|
11
13
|
const registry_1 = require("./registry");
|
|
12
14
|
const PACKAGE_JSON = "package.json";
|
|
13
15
|
const INTERFACE_ENTRY = `${registry_1.INTERFACE_PACKAGE}/page`;
|
|
16
|
+
const PackageManifestSchema = zod_1.z
|
|
17
|
+
.object({
|
|
18
|
+
name: zod_1.z.string().optional().catch(undefined),
|
|
19
|
+
version: zod_1.z.string().optional().catch(undefined),
|
|
20
|
+
})
|
|
21
|
+
.catch({});
|
|
14
22
|
let interfaceVersion;
|
|
15
23
|
function readManifest(folder) {
|
|
16
24
|
try {
|
|
17
|
-
return JSON.parse((0, node_fs_1.readFileSync)(node_path_1.default.join(folder, PACKAGE_JSON), "utf-8"));
|
|
25
|
+
return PackageManifestSchema.parse(JSON.parse((0, node_fs_1.readFileSync)(node_path_1.default.join(folder, PACKAGE_JSON), "utf-8")));
|
|
18
26
|
}
|
|
19
27
|
catch {
|
|
20
28
|
return undefined;
|
|
21
29
|
}
|
|
22
30
|
}
|
|
23
|
-
function
|
|
24
|
-
|
|
25
|
-
return interfaceVersion;
|
|
26
|
-
let folder = node_path_1.default.dirname(require.resolve(INTERFACE_ENTRY));
|
|
31
|
+
function findInterfaceVersion(startFolder) {
|
|
32
|
+
let folder = startFolder;
|
|
27
33
|
while (folder !== node_path_1.default.dirname(folder)) {
|
|
28
34
|
const manifest = readManifest(folder);
|
|
29
35
|
if (manifest?.name === registry_1.INTERFACE_PACKAGE && manifest.version) {
|
|
30
|
-
|
|
31
|
-
return interfaceVersion;
|
|
36
|
+
return manifest.version;
|
|
32
37
|
}
|
|
33
38
|
folder = node_path_1.default.dirname(folder);
|
|
34
39
|
}
|
|
35
|
-
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
function installedInterfaceVersion() {
|
|
43
|
+
if (interfaceVersion)
|
|
44
|
+
return interfaceVersion;
|
|
45
|
+
const entryFolder = node_path_1.default.dirname(require.resolve(INTERFACE_ENTRY));
|
|
46
|
+
const found = findInterfaceVersion(entryFolder);
|
|
47
|
+
if (!found) {
|
|
48
|
+
throw new Error(`Cannot find the installed ${registry_1.INTERFACE_PACKAGE} version`);
|
|
49
|
+
}
|
|
50
|
+
interfaceVersion = found;
|
|
51
|
+
return found;
|
|
36
52
|
}
|
|
37
53
|
function isCompatible(release, installedVersion) {
|
|
38
54
|
const range = release.interfaceRange
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../../src/store/compatibility.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../../src/store/compatibility.ts"],"names":[],"mappings":";;;;;AAoCA,oDAUC;AAOD,8DASC;AAOD,oCASC;AA9ED,qCAAuC;AACvC,0DAA6B;AAC7B,mCAA+C;AAC/C,6BAAwB;AACxB,yCAA+C;AAG/C,MAAM,YAAY,GAAG,cAAc,CAAC;AACpC,MAAM,eAAe,GAAG,GAAG,4BAAiB,OAAO,CAAC;AAEpD,MAAM,qBAAqB,GAAG,OAAC;KAC5B,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IAC5C,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;CAChD,CAAC;KACD,KAAK,CAAC,EAAE,CAAC,CAAC;AAIb,IAAI,gBAAoC,CAAC;AAEzC,SAAS,YAAY,CAAC,MAAc;IAClC,IAAI,CAAC;QACH,OAAO,qBAAqB,CAAC,KAAK,CAChC,IAAI,CAAC,KAAK,CAAC,IAAA,sBAAY,EAAC,mBAAI,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC,CACnE,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAOD,SAAgB,oBAAoB,CAAC,WAAmB;IACtD,IAAI,MAAM,GAAG,WAAW,CAAC;IACzB,OAAO,MAAM,KAAK,mBAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,QAAQ,EAAE,IAAI,KAAK,4BAAiB,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC7D,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;QACD,MAAM,GAAG,mBAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAOD,SAAgB,yBAAyB;IACvC,IAAI,gBAAgB;QAAE,OAAO,gBAAgB,CAAC;IAC9C,MAAM,WAAW,GAAG,mBAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,6BAA6B,4BAAiB,UAAU,CAAC,CAAC;IAC5E,CAAC;IACD,gBAAgB,GAAG,KAAK,CAAC;IACzB,OAAO,KAAK,CAAC;AACf,CAAC;AAOD,SAAgB,YAAY,CAC1B,OAAuB,EACvB,gBAAwB;IAExB,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc;QAClC,CAAC,CAAC,IAAA,mBAAU,EAAC,OAAO,CAAC,cAAc,CAAC;QACpC,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,IAAA,kBAAS,EAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -11,6 +11,7 @@ exports.frontendRequirement = frontendRequirement;
|
|
|
11
11
|
const node_fs_1 = require("node:fs");
|
|
12
12
|
const node_path_1 = __importDefault(require("node:path"));
|
|
13
13
|
const semver_1 = require("semver");
|
|
14
|
+
const zod_1 = require("zod");
|
|
14
15
|
const frontend_modules_1 = require("./internal/frontend/frontend-modules");
|
|
15
16
|
const frontend_ready_1 = require("./internal/frontend/frontend-ready");
|
|
16
17
|
const cache_1 = require("./cache");
|
|
@@ -23,11 +24,20 @@ const HOUR_MS = 60 * 60 * 1000;
|
|
|
23
24
|
const FAILED_LOOKUP_MS = 5 * 60 * 1000;
|
|
24
25
|
const RELEASE_RANGE_LIFETIMES = { found: Infinity, failed: FAILED_LOOKUP_MS };
|
|
25
26
|
const VERSIONS_LIFETIMES = { found: HOUR_MS, failed: FAILED_LOOKUP_MS };
|
|
27
|
+
const PackageManifestSchema = zod_1.z
|
|
28
|
+
.object({
|
|
29
|
+
version: zod_1.z.string().optional().catch(undefined),
|
|
30
|
+
engines: zod_1.z
|
|
31
|
+
.object({ [exports.FRONTEND_PACKAGE]: zod_1.z.string().optional().catch(undefined) })
|
|
32
|
+
.optional()
|
|
33
|
+
.catch(undefined),
|
|
34
|
+
})
|
|
35
|
+
.catch({});
|
|
26
36
|
const releaseRanges = (0, cache_1.createLookupCache)(RELEASE_RANGE_LIFETIMES);
|
|
27
37
|
const publishedVersions = (0, cache_1.createLookupCache)(VERSIONS_LIFETIMES);
|
|
28
38
|
function readManifest(file) {
|
|
29
39
|
try {
|
|
30
|
-
return JSON.parse((0, node_fs_1.readFileSync)(file, "utf-8"));
|
|
40
|
+
return PackageManifestSchema.parse(JSON.parse((0, node_fs_1.readFileSync)(file, "utf-8")));
|
|
31
41
|
}
|
|
32
42
|
catch {
|
|
33
43
|
return undefined;
|
|
@@ -35,7 +45,7 @@ function readManifest(file) {
|
|
|
35
45
|
}
|
|
36
46
|
function engineRange(manifest) {
|
|
37
47
|
const range = manifest?.engines?.[exports.FRONTEND_PACKAGE];
|
|
38
|
-
return
|
|
48
|
+
return range !== undefined && (0, semver_1.validRange)(range) ? range : null;
|
|
39
49
|
}
|
|
40
50
|
function releaseFrontendRange(packageName, version, projectPath) {
|
|
41
51
|
return releaseRanges.get(`${packageName}@${version}`, async () => {
|
|
@@ -43,7 +53,9 @@ function releaseFrontendRange(packageName, version, projectPath) {
|
|
|
43
53
|
LAYER_MANIFEST,
|
|
44
54
|
]);
|
|
45
55
|
const manifest = files.get(LAYER_MANIFEST);
|
|
46
|
-
return manifest
|
|
56
|
+
return manifest
|
|
57
|
+
? engineRange(PackageManifestSchema.parse(JSON.parse(manifest)))
|
|
58
|
+
: null;
|
|
47
59
|
});
|
|
48
60
|
}
|
|
49
61
|
function runningFrontend(projectPath) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontend-compatibility.js","sourceRoot":"","sources":["../../src/store/frontend-compatibility.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"frontend-compatibility.js","sourceRoot":"","sources":["../../src/store/frontend-compatibility.ts"],"names":[],"mappings":"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"}
|
package/dist/store/interfaces.js
CHANGED
|
@@ -11,6 +11,7 @@ exports.isProjectModule = isProjectModule;
|
|
|
11
11
|
exports.findDependents = findDependents;
|
|
12
12
|
const promises_1 = require("node:fs/promises");
|
|
13
13
|
const node_path_1 = __importDefault(require("node:path"));
|
|
14
|
+
const zod_1 = require("zod");
|
|
14
15
|
const cache_1 = require("./cache");
|
|
15
16
|
const registry_1 = require("./registry");
|
|
16
17
|
const INTERFACES_REGISTRY_URL = "https://raw.githubusercontent.com/AntelopeJS/interfaces/main";
|
|
@@ -23,21 +24,45 @@ const HOUR_MS = 60 * 60 * 1000;
|
|
|
23
24
|
const FAILED_LOOKUP_MS = 5 * 60 * 1000;
|
|
24
25
|
const LIFETIMES = { found: HOUR_MS, failed: FAILED_LOOKUP_MS };
|
|
25
26
|
const INTERFACE_NAME_PATTERN = /(^|\/)interface-/;
|
|
27
|
+
const TextSchema = zod_1.z.string().optional().catch(undefined);
|
|
28
|
+
const RegistryManifestSchema = zod_1.z.object({
|
|
29
|
+
interfaces: zod_1.z.record(zod_1.z.string().catch("")).optional().catch(undefined),
|
|
30
|
+
});
|
|
31
|
+
const RegistryModuleSchema = zod_1.z.object({
|
|
32
|
+
name: TextSchema,
|
|
33
|
+
source: zod_1.z
|
|
34
|
+
.object({ type: TextSchema, package: TextSchema })
|
|
35
|
+
.optional()
|
|
36
|
+
.catch(undefined),
|
|
37
|
+
});
|
|
38
|
+
const InterfaceManifestSchema = zod_1.z.object({
|
|
39
|
+
modules: zod_1.z.array(RegistryModuleSchema).optional().catch(undefined),
|
|
40
|
+
});
|
|
41
|
+
const AntelopeManifestSchema = zod_1.z.object({
|
|
42
|
+
implements: zod_1.z.unknown(),
|
|
43
|
+
standalone: zod_1.z.unknown(),
|
|
44
|
+
});
|
|
45
|
+
const ModulePackageSchema = zod_1.z.object({
|
|
46
|
+
dependencies: zod_1.z.record(zod_1.z.string().catch("")).optional().catch(undefined),
|
|
47
|
+
antelopeJs: AntelopeManifestSchema.optional().catch(undefined),
|
|
48
|
+
});
|
|
26
49
|
const registryDocuments = (0, cache_1.createLookupCache)(LIFETIMES);
|
|
27
50
|
const interfaceKinds = (0, cache_1.createLookupCache)(LIFETIMES);
|
|
28
|
-
function fetchRegistryDocument(file) {
|
|
29
|
-
|
|
51
|
+
async function fetchRegistryDocument(file, schema) {
|
|
52
|
+
const document = await registryDocuments.get(file, async () => {
|
|
30
53
|
const response = await fetch(`${INTERFACES_REGISTRY_URL}/${file}`, {
|
|
31
54
|
signal: AbortSignal.timeout(FETCH_TIMEOUT_MS),
|
|
32
55
|
});
|
|
33
56
|
if (!response.ok)
|
|
34
57
|
return undefined;
|
|
35
|
-
const
|
|
36
|
-
return
|
|
58
|
+
const body = await response.json();
|
|
59
|
+
return body;
|
|
37
60
|
});
|
|
61
|
+
const parsed = schema.safeParse(document);
|
|
62
|
+
return parsed.success ? parsed.data : undefined;
|
|
38
63
|
}
|
|
39
64
|
async function registryFolders() {
|
|
40
|
-
const manifest = await fetchRegistryDocument(MANIFEST_FILE);
|
|
65
|
+
const manifest = await fetchRegistryDocument(MANIFEST_FILE, RegistryManifestSchema);
|
|
41
66
|
return manifest?.interfaces ?? {};
|
|
42
67
|
}
|
|
43
68
|
function asImplementation(module) {
|
|
@@ -50,7 +75,7 @@ async function findImplementations(interfacePackage) {
|
|
|
50
75
|
const folder = (await registryFolders())[interfacePackage];
|
|
51
76
|
if (!folder)
|
|
52
77
|
return [];
|
|
53
|
-
const manifest = await fetchRegistryDocument(`interfaces/${folder}/${MANIFEST_FILE}
|
|
78
|
+
const manifest = await fetchRegistryDocument(`interfaces/${folder}/${MANIFEST_FILE}`, InterfaceManifestSchema);
|
|
54
79
|
return (manifest?.modules ?? []).flatMap((module) => {
|
|
55
80
|
const implementation = asImplementation(module);
|
|
56
81
|
return implementation ? [implementation] : [];
|
|
@@ -65,24 +90,21 @@ function kindOf(packageName, antelopeJs) {
|
|
|
65
90
|
return "library";
|
|
66
91
|
return antelopeJs.standalone === true ? "standalone" : "required";
|
|
67
92
|
}
|
|
68
|
-
function newestManifest(view) {
|
|
69
|
-
const manifest = Array.isArray(view) ? view.at(-1) : view;
|
|
70
|
-
return manifest && typeof manifest === "object" ? manifest : undefined;
|
|
71
|
-
}
|
|
72
93
|
async function interfaceKind(dependency, range, projectPath) {
|
|
73
94
|
const looksLikeInterface = INTERFACE_NAME_PATTERN.test(dependency) ||
|
|
74
95
|
dependency in (await registryFolders());
|
|
75
96
|
if (!looksLikeInterface)
|
|
76
97
|
return "library";
|
|
77
98
|
const kind = await interfaceKinds.get(`${dependency}@${range}`, async () => {
|
|
78
|
-
const
|
|
79
|
-
|
|
99
|
+
const view = await (0, registry_1.npmView)(`${dependency}@${range}`, ["antelopeJs"], projectPath);
|
|
100
|
+
const antelopeJs = AntelopeManifestSchema.safeParse(Array.isArray(view) ? view.at(-1) : view);
|
|
101
|
+
return antelopeJs.success ? kindOf(dependency, antelopeJs.data) : "library";
|
|
80
102
|
});
|
|
81
103
|
return kind ?? "library";
|
|
82
104
|
}
|
|
83
105
|
async function readModulePackage(localPath) {
|
|
84
106
|
try {
|
|
85
|
-
return JSON.parse(await (0, promises_1.readFile)(node_path_1.default.join(localPath, PACKAGE_JSON), "utf-8"));
|
|
107
|
+
return ModulePackageSchema.parse(JSON.parse(await (0, promises_1.readFile)(node_path_1.default.join(localPath, PACKAGE_JSON), "utf-8")));
|
|
86
108
|
}
|
|
87
109
|
catch {
|
|
88
110
|
return undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/store/interfaces.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/store/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ exports.removeFrontendModulesUnder = removeFrontendModulesUnder;
|
|
|
7
7
|
exports.GetFrontendModules = GetFrontendModules;
|
|
8
8
|
exports.buildFrontendManifest = buildFrontendManifest;
|
|
9
9
|
const node_fs_1 = require("node:fs");
|
|
10
|
+
const zod_1 = require("zod");
|
|
10
11
|
const node_path_1 = require("node:path");
|
|
11
12
|
const interface_api_util_1 = require("@antelopejs/interface-api-util");
|
|
12
13
|
const runtime_1 = require("@antelopejs/interface-core/runtime");
|
|
@@ -18,6 +19,7 @@ const frontend_bootstrap_1 = require("./frontend-bootstrap");
|
|
|
18
19
|
const manifest_1 = require("./manifest");
|
|
19
20
|
const activity_1 = require("../../activity");
|
|
20
21
|
const warn_once_1 = require("./warn-once");
|
|
22
|
+
const utils_1 = require("../../../utils");
|
|
21
23
|
const frontend_public_endpoints_1 = require("./frontend-public-endpoints");
|
|
22
24
|
const frontend_backend_proxies_1 = require("./frontend-backend-proxies");
|
|
23
25
|
const BACKEND_API_PATH = /^\/api\/[A-Za-z0-9][A-Za-z0-9._~-]*(?:\/[A-Za-z0-9][A-Za-z0-9._~-]*)*$/;
|
|
@@ -74,7 +76,7 @@ function AddFrontendModule(config) {
|
|
|
74
76
|
const authEstablishEndpoints = resolveAuthEstablishEndpoints(config);
|
|
75
77
|
const publicEndpoints = (0, frontend_public_endpoints_1.resolvePublicEndpoints)(config);
|
|
76
78
|
const backendProxies = (0, frontend_backend_proxies_1.resolveBackendProxies)(config);
|
|
77
|
-
const registeredModule = modules
|
|
79
|
+
const registeredModule = (0, utils_1.ownValue)(modules, identity);
|
|
78
80
|
if (registeredModule && registeredModule.priority > (config.priority ?? 0)) {
|
|
79
81
|
return;
|
|
80
82
|
}
|
|
@@ -94,10 +96,12 @@ function AddFrontendModule(config) {
|
|
|
94
96
|
(0, dev_reload_1.scheduleBroadcast)();
|
|
95
97
|
page_1.FrontendModulesChanged.emit();
|
|
96
98
|
}
|
|
99
|
+
const ShippingPackageSchema = zod_1.z.object({
|
|
100
|
+
version: zod_1.z.string().optional().catch(undefined),
|
|
101
|
+
});
|
|
97
102
|
function shippingPackageVersion(sourcePath) {
|
|
98
103
|
try {
|
|
99
|
-
|
|
100
|
-
return typeof manifest.version === "string" ? manifest.version : undefined;
|
|
104
|
+
return ShippingPackageSchema.parse(JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)((0, node_path_1.dirname)(sourcePath), "package.json"), "utf-8"))).version;
|
|
101
105
|
}
|
|
102
106
|
catch {
|
|
103
107
|
return undefined;
|