@open-mercato/core 0.4.2-canary-ed15f2e753 → 0.4.2-canary-e2aeb1a7bf
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/dist/generated/entities/notification/index.js +57 -0
- package/dist/generated/entities/notification/index.js.map +7 -0
- package/dist/generated/entities.ids.generated.js +5 -2
- package/dist/generated/entities.ids.generated.js.map +2 -2
- package/dist/generated/entity-fields-registry.js +2 -2
- package/dist/generated/entity-fields-registry.js.map +2 -2
- package/dist/modules/api_docs/frontend/docs/api/page.js +3 -2
- package/dist/modules/api_docs/frontend/docs/api/page.js.map +2 -2
- package/dist/modules/api_keys/backend/api-keys/page.js +1 -1
- package/dist/modules/api_keys/backend/api-keys/page.js.map +2 -2
- package/dist/modules/api_keys/setup.js +11 -0
- package/dist/modules/api_keys/setup.js.map +7 -0
- package/dist/modules/attachments/components/AttachmentLibrary.js +5 -1
- package/dist/modules/attachments/components/AttachmentLibrary.js.map +2 -2
- package/dist/modules/attachments/components/AttachmentPartitionSettings.js +2 -0
- package/dist/modules/attachments/components/AttachmentPartitionSettings.js.map +2 -2
- package/dist/modules/attachments/lib/assignmentDetails.js +31 -17
- package/dist/modules/attachments/lib/assignmentDetails.js.map +2 -2
- package/dist/modules/attachments/lib/partitions.js +3 -3
- package/dist/modules/attachments/lib/partitions.js.map +2 -2
- package/dist/modules/attachments/setup.js +11 -0
- package/dist/modules/attachments/setup.js.map +7 -0
- package/dist/modules/audit_logs/setup.js +12 -0
- package/dist/modules/audit_logs/setup.js.map +7 -0
- package/dist/modules/auth/api/admin/nav.js +4 -3
- package/dist/modules/auth/api/admin/nav.js.map +2 -2
- package/dist/modules/auth/api/login.js +25 -6
- package/dist/modules/auth/api/login.js.map +2 -2
- package/dist/modules/auth/api/profile/route.js +157 -0
- package/dist/modules/auth/api/profile/route.js.map +7 -0
- package/dist/modules/auth/api/reset/confirm.js +25 -2
- package/dist/modules/auth/api/reset/confirm.js.map +2 -2
- package/dist/modules/auth/api/reset.js +23 -0
- package/dist/modules/auth/api/reset.js.map +2 -2
- package/dist/modules/auth/api/sidebar/preferences/route.js +14 -9
- package/dist/modules/auth/api/sidebar/preferences/route.js.map +2 -2
- package/dist/modules/auth/api/users/route.js +4 -2
- package/dist/modules/auth/api/users/route.js.map +2 -2
- package/dist/modules/auth/backend/auth/profile/page.js +141 -0
- package/dist/modules/auth/backend/auth/profile/page.js.map +7 -0
- package/dist/modules/auth/backend/auth/profile/page.meta.js +13 -0
- package/dist/modules/auth/backend/auth/profile/page.meta.js.map +7 -0
- package/dist/modules/auth/backend/roles/[id]/edit/page.js +4 -1
- package/dist/modules/auth/backend/roles/[id]/edit/page.js.map +2 -2
- package/dist/modules/auth/backend/roles/page.js +3 -3
- package/dist/modules/auth/backend/roles/page.js.map +2 -2
- package/dist/modules/auth/backend/users/[id]/edit/page.js +18 -3
- package/dist/modules/auth/backend/users/[id]/edit/page.js.map +2 -2
- package/dist/modules/auth/backend/users/create/page.js +15 -2
- package/dist/modules/auth/backend/users/create/page.js.map +2 -2
- package/dist/modules/auth/backend/users/page.js +3 -3
- package/dist/modules/auth/backend/users/page.js.map +2 -2
- package/dist/modules/auth/cli.js +25 -11
- package/dist/modules/auth/cli.js.map +2 -2
- package/dist/modules/auth/commands/users.js +59 -2
- package/dist/modules/auth/commands/users.js.map +2 -2
- package/dist/modules/auth/data/validators.js +6 -3
- package/dist/modules/auth/data/validators.js.map +2 -2
- package/dist/modules/auth/frontend/login.js +112 -3
- package/dist/modules/auth/frontend/login.js.map +2 -2
- package/dist/modules/auth/frontend/reset/[token]/page.js +20 -10
- package/dist/modules/auth/frontend/reset/[token]/page.js.map +2 -2
- package/dist/modules/auth/lib/setup-app.js +70 -167
- package/dist/modules/auth/lib/setup-app.js.map +2 -2
- package/dist/modules/auth/notifications.js +112 -0
- package/dist/modules/auth/notifications.js.map +7 -0
- package/dist/modules/auth/services/authService.js +24 -3
- package/dist/modules/auth/services/authService.js.map +2 -2
- package/dist/modules/auth/setup.js +11 -0
- package/dist/modules/auth/setup.js.map +7 -0
- package/dist/modules/business_rules/api/execute/route.js +7 -1
- package/dist/modules/business_rules/api/execute/route.js.map +2 -2
- package/dist/modules/business_rules/backend/rules/page.js +4 -0
- package/dist/modules/business_rules/backend/rules/page.js.map +2 -2
- package/dist/modules/business_rules/backend/sets/page.js +3 -0
- package/dist/modules/business_rules/backend/sets/page.js.map +2 -2
- package/dist/modules/business_rules/cli.js +2 -1
- package/dist/modules/business_rules/cli.js.map +2 -2
- package/dist/modules/business_rules/data/validators.js +0 -34
- package/dist/modules/business_rules/data/validators.js.map +2 -2
- package/dist/modules/business_rules/index.js +1 -21
- package/dist/modules/business_rules/index.js.map +2 -2
- package/dist/modules/business_rules/lib/rule-engine.js +34 -185
- package/dist/modules/business_rules/lib/rule-engine.js.map +2 -2
- package/dist/modules/business_rules/notifications.js +28 -0
- package/dist/modules/business_rules/notifications.js.map +7 -0
- package/dist/modules/business_rules/setup.js +11 -0
- package/dist/modules/business_rules/setup.js.map +7 -0
- package/dist/modules/business_rules/subscribers/rule-execution-failed-notification.js +37 -0
- package/dist/modules/business_rules/subscribers/rule-execution-failed-notification.js.map +7 -0
- package/dist/modules/catalog/components/PriceKindSettings.js +2 -0
- package/dist/modules/catalog/components/PriceKindSettings.js.map +2 -2
- package/dist/modules/catalog/components/categories/CategoriesDataTable.js +2 -2
- package/dist/modules/catalog/components/categories/CategoriesDataTable.js.map +2 -2
- package/dist/modules/catalog/components/products/ProductsDataTable.js +2 -0
- package/dist/modules/catalog/components/products/ProductsDataTable.js.map +2 -2
- package/dist/modules/catalog/notifications.js +28 -0
- package/dist/modules/catalog/notifications.js.map +7 -0
- package/dist/modules/catalog/setup.js +22 -0
- package/dist/modules/catalog/setup.js.map +7 -0
- package/dist/modules/catalog/subscribers/low-stock-notification.js +38 -0
- package/dist/modules/catalog/subscribers/low-stock-notification.js.map +7 -0
- package/dist/modules/configs/cli.js +6 -0
- package/dist/modules/configs/cli.js.map +2 -2
- package/dist/modules/configs/components/CachePanel.js +4 -4
- package/dist/modules/configs/components/CachePanel.js.map +2 -2
- package/dist/modules/configs/lib/system-status.js +48 -1
- package/dist/modules/configs/lib/system-status.js.map +2 -2
- package/dist/modules/configs/lib/upgrade-actions.js +1 -302
- package/dist/modules/configs/lib/upgrade-actions.js.map +2 -2
- package/dist/modules/configs/setup.js +16 -0
- package/dist/modules/configs/setup.js.map +7 -0
- package/dist/modules/currencies/backend/currencies/page.js +3 -0
- package/dist/modules/currencies/backend/currencies/page.js.map +2 -2
- package/dist/modules/currencies/backend/exchange-rates/page.js +2 -0
- package/dist/modules/currencies/backend/exchange-rates/page.js.map +2 -2
- package/dist/modules/currencies/setup.js +16 -0
- package/dist/modules/currencies/setup.js.map +7 -0
- package/dist/modules/customers/backend/customers/companies/page.js +3 -0
- package/dist/modules/customers/backend/customers/companies/page.js.map +2 -2
- package/dist/modules/customers/backend/customers/deals/page.js +3 -0
- package/dist/modules/customers/backend/customers/deals/page.js.map +2 -2
- package/dist/modules/customers/backend/customers/people/page.js +3 -0
- package/dist/modules/customers/backend/customers/people/page.js.map +2 -2
- package/dist/modules/customers/commands/deals.js +31 -0
- package/dist/modules/customers/commands/deals.js.map +2 -2
- package/dist/modules/customers/components/CustomerTodosTable.js +1 -0
- package/dist/modules/customers/components/CustomerTodosTable.js.map +2 -2
- package/dist/modules/customers/notifications.js +48 -0
- package/dist/modules/customers/notifications.js.map +7 -0
- package/dist/modules/customers/setup.js +36 -0
- package/dist/modules/customers/setup.js.map +7 -0
- package/dist/modules/customers/widgets/dashboard/customer-todos/widget.js +2 -1
- package/dist/modules/customers/widgets/dashboard/customer-todos/widget.js.map +2 -2
- package/dist/modules/customers/widgets/dashboard/new-customers/widget.js +2 -1
- package/dist/modules/customers/widgets/dashboard/new-customers/widget.js.map +2 -2
- package/dist/modules/customers/widgets/dashboard/new-deals/widget.js +2 -1
- package/dist/modules/customers/widgets/dashboard/new-deals/widget.js.map +2 -2
- package/dist/modules/customers/widgets/dashboard/next-interactions/widget.js +2 -1
- package/dist/modules/customers/widgets/dashboard/next-interactions/widget.js.map +2 -2
- package/dist/modules/dashboards/cli.js +44 -5
- package/dist/modules/dashboards/cli.js.map +2 -2
- package/dist/modules/dashboards/components/WidgetVisibilityEditor.js +16 -11
- package/dist/modules/dashboards/components/WidgetVisibilityEditor.js.map +3 -3
- package/dist/modules/dashboards/lib/role-widgets.js +58 -0
- package/dist/modules/dashboards/lib/role-widgets.js.map +7 -0
- package/dist/modules/dashboards/services/widgetDataService.js +139 -3
- package/dist/modules/dashboards/services/widgetDataService.js.map +2 -2
- package/dist/modules/dashboards/setup.js +27 -0
- package/dist/modules/dashboards/setup.js.map +7 -0
- package/dist/modules/dashboards/widgets/dashboard/aov-kpi/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/aov-kpi/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/new-customers-kpi/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/new-customers-kpi/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/orders-by-status/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/orders-by-status/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/orders-kpi/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/orders-kpi/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/pipeline-summary/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/pipeline-summary/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/revenue-kpi/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/revenue-kpi/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/revenue-trend/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/revenue-trend/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/sales-by-region/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/sales-by-region/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/top-customers/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/top-customers/widget.js.map +2 -2
- package/dist/modules/dashboards/widgets/dashboard/top-products/widget.js +2 -1
- package/dist/modules/dashboards/widgets/dashboard/top-products/widget.js.map +2 -2
- package/dist/modules/dictionaries/components/DictionaryTable.js +2 -0
- package/dist/modules/dictionaries/components/DictionaryTable.js.map +2 -2
- package/dist/modules/dictionaries/setup.js +12 -0
- package/dist/modules/dictionaries/setup.js.map +7 -0
- package/dist/modules/directory/api/get/tenants/lookup.js +70 -0
- package/dist/modules/directory/api/get/tenants/lookup.js.map +7 -0
- package/dist/modules/directory/backend/directory/organizations/page.js +2 -2
- package/dist/modules/directory/backend/directory/organizations/page.js.map +2 -2
- package/dist/modules/directory/backend/directory/tenants/page.js +2 -2
- package/dist/modules/directory/backend/directory/tenants/page.js.map +2 -2
- package/dist/modules/directory/setup.js +12 -0
- package/dist/modules/directory/setup.js.map +7 -0
- package/dist/modules/entities/backend/entities/user/[entityId]/records/page.js +2 -2
- package/dist/modules/entities/backend/entities/user/[entityId]/records/page.js.map +2 -2
- package/dist/modules/entities/components/SystemEntitiesTable.js +1 -1
- package/dist/modules/entities/components/SystemEntitiesTable.js.map +2 -2
- package/dist/modules/entities/components/UserEntitiesTable.js +2 -2
- package/dist/modules/entities/components/UserEntitiesTable.js.map +2 -2
- package/dist/modules/entities/setup.js +11 -0
- package/dist/modules/entities/setup.js.map +7 -0
- package/dist/modules/feature_toggles/components/FeatureTogglesTable.js +3 -3
- package/dist/modules/feature_toggles/components/FeatureTogglesTable.js.map +2 -2
- package/dist/modules/feature_toggles/components/OverridesTable.js +1 -1
- package/dist/modules/feature_toggles/components/OverridesTable.js.map +2 -2
- package/dist/modules/feature_toggles/setup.js +11 -0
- package/dist/modules/feature_toggles/setup.js.map +7 -0
- package/dist/modules/notifications/acl.js +11 -0
- package/dist/modules/notifications/acl.js.map +7 -0
- package/dist/modules/notifications/api/[id]/action/route.js +74 -0
- package/dist/modules/notifications/api/[id]/action/route.js.map +7 -0
- package/dist/modules/notifications/api/[id]/dismiss/route.js +15 -0
- package/dist/modules/notifications/api/[id]/dismiss/route.js.map +7 -0
- package/dist/modules/notifications/api/[id]/read/route.js +15 -0
- package/dist/modules/notifications/api/[id]/read/route.js.map +7 -0
- package/dist/modules/notifications/api/[id]/restore/route.js +53 -0
- package/dist/modules/notifications/api/[id]/restore/route.js.map +7 -0
- package/dist/modules/notifications/api/batch/route.js +17 -0
- package/dist/modules/notifications/api/batch/route.js.map +7 -0
- package/dist/modules/notifications/api/feature/route.js +17 -0
- package/dist/modules/notifications/api/feature/route.js.map +7 -0
- package/dist/modules/notifications/api/mark-all-read/route.js +35 -0
- package/dist/modules/notifications/api/mark-all-read/route.js.map +7 -0
- package/dist/modules/notifications/api/openapi.js +76 -0
- package/dist/modules/notifications/api/openapi.js.map +7 -0
- package/dist/modules/notifications/api/role/route.js +17 -0
- package/dist/modules/notifications/api/role/route.js.map +7 -0
- package/dist/modules/notifications/api/route.js +85 -0
- package/dist/modules/notifications/api/route.js.map +7 -0
- package/dist/modules/notifications/api/settings/route.js +155 -0
- package/dist/modules/notifications/api/settings/route.js.map +7 -0
- package/dist/modules/notifications/api/unread-count/route.js +38 -0
- package/dist/modules/notifications/api/unread-count/route.js.map +7 -0
- package/dist/modules/notifications/backend/config/notifications/page.js +10 -0
- package/dist/modules/notifications/backend/config/notifications/page.js.map +7 -0
- package/dist/modules/notifications/backend/config/notifications/page.meta.js +24 -0
- package/dist/modules/notifications/backend/config/notifications/page.meta.js.map +7 -0
- package/dist/modules/notifications/cli.js +16 -0
- package/dist/modules/notifications/cli.js.map +7 -0
- package/dist/modules/notifications/data/entities.js +112 -0
- package/dist/modules/notifications/data/entities.js.map +7 -0
- package/dist/modules/notifications/data/validators.js +98 -0
- package/dist/modules/notifications/data/validators.js.map +7 -0
- package/dist/modules/notifications/di.js +13 -0
- package/dist/modules/notifications/di.js.map +7 -0
- package/dist/modules/notifications/emails/NotificationEmail.js +58 -0
- package/dist/modules/notifications/emails/NotificationEmail.js.map +7 -0
- package/dist/modules/notifications/frontend/NotificationInboxPageClient.js +44 -0
- package/dist/modules/notifications/frontend/NotificationInboxPageClient.js.map +7 -0
- package/dist/modules/notifications/frontend/NotificationSettingsPageClient.js +220 -0
- package/dist/modules/notifications/frontend/NotificationSettingsPageClient.js.map +7 -0
- package/dist/modules/notifications/index.js +14 -0
- package/dist/modules/notifications/index.js.map +7 -0
- package/dist/modules/notifications/lib/deliveryConfig.js +107 -0
- package/dist/modules/notifications/lib/deliveryConfig.js.map +7 -0
- package/dist/modules/notifications/lib/deliveryStrategies.js +14 -0
- package/dist/modules/notifications/lib/deliveryStrategies.js.map +7 -0
- package/dist/modules/notifications/lib/events.js +12 -0
- package/dist/modules/notifications/lib/events.js.map +7 -0
- package/dist/modules/notifications/lib/notificationBuilder.js +66 -0
- package/dist/modules/notifications/lib/notificationBuilder.js.map +7 -0
- package/dist/modules/notifications/lib/notificationFactory.js +54 -0
- package/dist/modules/notifications/lib/notificationFactory.js.map +7 -0
- package/dist/modules/notifications/lib/notificationMapper.js +34 -0
- package/dist/modules/notifications/lib/notificationMapper.js.map +7 -0
- package/dist/modules/notifications/lib/notificationRecipients.js +35 -0
- package/dist/modules/notifications/lib/notificationRecipients.js.map +7 -0
- package/dist/modules/notifications/lib/notificationService.js +279 -0
- package/dist/modules/notifications/lib/notificationService.js.map +7 -0
- package/dist/modules/notifications/lib/routeHelpers.js +101 -0
- package/dist/modules/notifications/lib/routeHelpers.js.map +7 -0
- package/dist/modules/notifications/lib/safeHref.js +24 -0
- package/dist/modules/notifications/lib/safeHref.js.map +7 -0
- package/dist/modules/notifications/migrations/Migration20260123000001.js +70 -0
- package/dist/modules/notifications/migrations/Migration20260123000001.js.map +7 -0
- package/dist/modules/notifications/migrations/Migration20260126150000.js +37 -0
- package/dist/modules/notifications/migrations/Migration20260126150000.js.map +7 -0
- package/dist/modules/notifications/migrations/Migration20260129082610.js +13 -0
- package/dist/modules/notifications/migrations/Migration20260129082610.js.map +7 -0
- package/dist/modules/notifications/subscribers/deliver-notification.js +165 -0
- package/dist/modules/notifications/subscribers/deliver-notification.js.map +7 -0
- package/dist/modules/notifications/workers/create-notification.worker.js +70 -0
- package/dist/modules/notifications/workers/create-notification.worker.js.map +7 -0
- package/dist/modules/perspectives/setup.js +12 -0
- package/dist/modules/perspectives/setup.js.map +7 -0
- package/dist/modules/planner/backend/planner/availability-rulesets/page.js +2 -2
- package/dist/modules/planner/backend/planner/availability-rulesets/page.js.map +2 -2
- package/dist/modules/planner/setup.js +21 -0
- package/dist/modules/planner/setup.js.map +7 -0
- package/dist/modules/query_index/cli.js +63 -7
- package/dist/modules/query_index/cli.js.map +2 -2
- package/dist/modules/query_index/components/QueryIndexesTable.js +7 -1
- package/dist/modules/query_index/components/QueryIndexesTable.js.map +2 -2
- package/dist/modules/query_index/setup.js +11 -0
- package/dist/modules/query_index/setup.js.map +7 -0
- package/dist/modules/resources/backend/resources/resource-types/page.js +2 -2
- package/dist/modules/resources/backend/resources/resource-types/page.js.map +2 -2
- package/dist/modules/resources/backend/resources/resources/page.js +2 -2
- package/dist/modules/resources/backend/resources/resources/page.js.map +2 -2
- package/dist/modules/resources/setup.js +21 -0
- package/dist/modules/resources/setup.js.map +7 -0
- package/dist/modules/sales/acl.js +0 -1
- package/dist/modules/sales/acl.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/offers/page.js +2 -0
- package/dist/modules/sales/backend/sales/channels/offers/page.js.map +2 -2
- package/dist/modules/sales/backend/sales/channels/page.js +2 -0
- package/dist/modules/sales/backend/sales/channels/page.js.map +2 -2
- package/dist/modules/sales/backend/sales/documents/[id]/page.js +0 -12
- package/dist/modules/sales/backend/sales/documents/[id]/page.js.map +2 -2
- package/dist/modules/sales/cli.js +2 -42
- package/dist/modules/sales/cli.js.map +2 -2
- package/dist/modules/sales/commands/documents.js +53 -62
- package/dist/modules/sales/commands/documents.js.map +2 -2
- package/dist/modules/sales/commands/payments.js +26 -0
- package/dist/modules/sales/commands/payments.js.map +2 -2
- package/dist/modules/sales/components/AdjustmentKindSettings.js +2 -2
- package/dist/modules/sales/components/AdjustmentKindSettings.js.map +2 -2
- package/dist/modules/sales/components/PaymentMethodsSettings.js +2 -2
- package/dist/modules/sales/components/PaymentMethodsSettings.js.map +2 -2
- package/dist/modules/sales/components/ShippingMethodsSettings.js +2 -2
- package/dist/modules/sales/components/ShippingMethodsSettings.js.map +2 -2
- package/dist/modules/sales/components/TaxRatesSettings.js +2 -2
- package/dist/modules/sales/components/TaxRatesSettings.js.map +2 -2
- package/dist/modules/sales/components/channels/SalesChannelOffersPanel.js +2 -0
- package/dist/modules/sales/components/channels/SalesChannelOffersPanel.js.map +2 -2
- package/dist/modules/sales/components/documents/AdjustmentsSection.js +2 -0
- package/dist/modules/sales/components/documents/AdjustmentsSection.js.map +2 -2
- package/dist/modules/sales/components/documents/PaymentsSection.js +2 -1
- package/dist/modules/sales/components/documents/PaymentsSection.js.map +2 -2
- package/dist/modules/sales/components/documents/SalesDocumentsTable.js +2 -0
- package/dist/modules/sales/components/documents/SalesDocumentsTable.js.map +2 -2
- package/dist/modules/sales/lib/dictionaries.js +0 -3
- package/dist/modules/sales/lib/dictionaries.js.map +2 -2
- package/dist/modules/sales/lib/seeds.js +48 -0
- package/dist/modules/sales/lib/seeds.js.map +7 -0
- package/dist/modules/sales/notifications.client.js +51 -0
- package/dist/modules/sales/notifications.client.js.map +7 -0
- package/dist/modules/sales/notifications.js +88 -0
- package/dist/modules/sales/notifications.js.map +7 -0
- package/dist/modules/sales/setup.js +99 -0
- package/dist/modules/sales/setup.js.map +7 -0
- package/dist/modules/sales/subscribers/quote-expiring-notification.js +38 -0
- package/dist/modules/sales/subscribers/quote-expiring-notification.js.map +7 -0
- package/dist/modules/sales/widgets/notifications/SalesOrderCreatedRenderer.js +137 -0
- package/dist/modules/sales/widgets/notifications/SalesOrderCreatedRenderer.js.map +7 -0
- package/dist/modules/sales/widgets/notifications/SalesQuoteCreatedRenderer.js +137 -0
- package/dist/modules/sales/widgets/notifications/SalesQuoteCreatedRenderer.js.map +7 -0
- package/dist/modules/sales/widgets/notifications/index.js +7 -0
- package/dist/modules/sales/widgets/notifications/index.js.map +7 -0
- package/dist/modules/sales/widgets/notifications/useSalesDocumentTotals.js +60 -0
- package/dist/modules/sales/widgets/notifications/useSalesDocumentTotals.js.map +7 -0
- package/dist/modules/staff/backend/staff/team-members/page.js +1 -1
- package/dist/modules/staff/backend/staff/team-members/page.js.map +2 -2
- package/dist/modules/staff/backend/staff/team-roles/page.js +2 -2
- package/dist/modules/staff/backend/staff/team-roles/page.js.map +2 -2
- package/dist/modules/staff/backend/staff/teams/[id]/edit/page.js +2 -2
- package/dist/modules/staff/backend/staff/teams/[id]/edit/page.js.map +2 -2
- package/dist/modules/staff/backend/staff/teams/page.js +2 -2
- package/dist/modules/staff/backend/staff/teams/page.js.map +2 -2
- package/dist/modules/staff/commands/leave-requests.js +79 -0
- package/dist/modules/staff/commands/leave-requests.js.map +2 -2
- package/dist/modules/staff/notifications.js +75 -0
- package/dist/modules/staff/notifications.js.map +7 -0
- package/dist/modules/staff/setup.js +27 -0
- package/dist/modules/staff/setup.js.map +7 -0
- package/dist/modules/workflows/acl.js +0 -2
- package/dist/modules/workflows/acl.js.map +2 -2
- package/dist/modules/workflows/api/instances/route.js +6 -18
- package/dist/modules/workflows/api/instances/route.js.map +2 -2
- package/dist/modules/workflows/api/tasks/route.js +1 -6
- package/dist/modules/workflows/api/tasks/route.js.map +2 -2
- package/dist/modules/workflows/backend/definitions/[id]/page.js +1 -9
- package/dist/modules/workflows/backend/definitions/[id]/page.js.map +2 -2
- package/dist/modules/workflows/backend/definitions/[id]/page.meta.js +1 -1
- package/dist/modules/workflows/backend/definitions/[id]/page.meta.js.map +2 -2
- package/dist/modules/workflows/backend/definitions/create/page.js +15 -24
- package/dist/modules/workflows/backend/definitions/create/page.js.map +2 -2
- package/dist/modules/workflows/backend/definitions/create/page.meta.js +1 -1
- package/dist/modules/workflows/backend/definitions/create/page.meta.js.map +2 -2
- package/dist/modules/workflows/backend/definitions/page.js +5 -0
- package/dist/modules/workflows/backend/definitions/page.js.map +2 -2
- package/dist/modules/workflows/backend/definitions/visual-editor/page.js +132 -150
- package/dist/modules/workflows/backend/definitions/visual-editor/page.js.map +2 -2
- package/dist/modules/workflows/backend/definitions/visual-editor/page.meta.js +1 -1
- package/dist/modules/workflows/backend/definitions/visual-editor/page.meta.js.map +2 -2
- package/dist/modules/workflows/backend/events/[id]/page.js +1 -1
- package/dist/modules/workflows/backend/events/[id]/page.js.map +2 -2
- package/dist/modules/workflows/backend/events/[id]/page.meta.js +2 -2
- package/dist/modules/workflows/backend/events/[id]/page.meta.js.map +2 -2
- package/dist/modules/workflows/backend/instances/[id]/page.meta.js +2 -2
- package/dist/modules/workflows/backend/instances/[id]/page.meta.js.map +2 -2
- package/dist/modules/workflows/backend/instances/page.js +3 -0
- package/dist/modules/workflows/backend/instances/page.js.map +2 -2
- package/dist/modules/workflows/backend/tasks/[id]/page.js +1 -1
- package/dist/modules/workflows/backend/tasks/[id]/page.js.map +2 -2
- package/dist/modules/workflows/backend/tasks/[id]/page.meta.js +2 -2
- package/dist/modules/workflows/backend/tasks/[id]/page.meta.js.map +2 -2
- package/dist/modules/workflows/backend/tasks/page.js +9 -5
- package/dist/modules/workflows/backend/tasks/page.js.map +2 -2
- package/dist/modules/workflows/cli.js +15 -93
- package/dist/modules/workflows/cli.js.map +3 -3
- package/dist/modules/workflows/data/entities.js +1 -64
- package/dist/modules/workflows/data/entities.js.map +2 -2
- package/dist/modules/workflows/data/validators.js +0 -115
- package/dist/modules/workflows/data/validators.js.map +2 -2
- package/dist/modules/workflows/examples/checkout-demo-definition.json +5 -1
- package/dist/modules/workflows/lib/activity-executor.js +13 -75
- package/dist/modules/workflows/lib/activity-executor.js.map +2 -2
- package/dist/modules/workflows/lib/graph-utils.js +2 -71
- package/dist/modules/workflows/lib/graph-utils.js.map +2 -2
- package/dist/modules/workflows/lib/seeds.js +7 -36
- package/dist/modules/workflows/lib/seeds.js.map +2 -2
- package/dist/modules/workflows/lib/start-validator.js +23 -33
- package/dist/modules/workflows/lib/start-validator.js.map +2 -2
- package/dist/modules/workflows/lib/transition-handler.js +57 -161
- package/dist/modules/workflows/lib/transition-handler.js.map +3 -3
- package/dist/modules/workflows/migrations/Migration20251207131955.js +76 -72
- package/dist/modules/workflows/migrations/Migration20251207131955.js.map +2 -2
- package/dist/modules/workflows/notifications.js +28 -0
- package/dist/modules/workflows/notifications.js.map +7 -0
- package/dist/modules/workflows/setup.js +16 -0
- package/dist/modules/workflows/setup.js.map +7 -0
- package/dist/modules/workflows/subscribers/task-assigned-notification.js +38 -0
- package/dist/modules/workflows/subscribers/task-assigned-notification.js.map +7 -0
- package/generated/entities/notification/index.ts +27 -0
- package/generated/entities.ids.generated.ts +5 -2
- package/generated/entity-fields-registry.ts +2 -2
- package/package.json +2 -2
- package/src/__tests__/module-decoupling.test.ts +356 -0
- package/src/modules/api_docs/frontend/docs/api/page.tsx +3 -2
- package/src/modules/api_keys/backend/api-keys/page.tsx +1 -1
- package/src/modules/api_keys/setup.ts +9 -0
- package/src/modules/attachments/components/AttachmentLibrary.tsx +6 -2
- package/src/modules/attachments/components/AttachmentPartitionSettings.tsx +2 -0
- package/src/modules/attachments/lib/assignmentDetails.ts +32 -16
- package/src/modules/attachments/lib/partitions.ts +3 -3
- package/src/modules/attachments/setup.ts +9 -0
- package/src/modules/audit_logs/setup.ts +10 -0
- package/src/modules/auth/README.md +1 -1
- package/src/modules/auth/__tests__/cli-setup-acl.test.ts +31 -1
- package/src/modules/auth/api/__tests__/login.test.ts +2 -0
- package/src/modules/auth/api/admin/nav.ts +10 -6
- package/src/modules/auth/api/login.ts +26 -7
- package/src/modules/auth/api/profile/route.ts +163 -0
- package/src/modules/auth/api/reset/confirm.ts +25 -2
- package/src/modules/auth/api/reset.ts +23 -0
- package/src/modules/auth/api/sidebar/preferences/route.ts +21 -12
- package/src/modules/auth/api/users/route.ts +5 -2
- package/src/modules/auth/backend/auth/profile/page.meta.ts +9 -0
- package/src/modules/auth/backend/auth/profile/page.tsx +174 -0
- package/src/modules/auth/backend/roles/[id]/edit/page.tsx +4 -1
- package/src/modules/auth/backend/roles/page.tsx +3 -3
- package/src/modules/auth/backend/users/[id]/edit/page.tsx +22 -3
- package/src/modules/auth/backend/users/create/page.tsx +19 -2
- package/src/modules/auth/backend/users/page.tsx +3 -3
- package/src/modules/auth/cli.ts +38 -11
- package/src/modules/auth/commands/users.ts +73 -2
- package/src/modules/auth/data/validators.ts +6 -2
- package/src/modules/auth/frontend/login.tsx +134 -5
- package/src/modules/auth/frontend/reset/[token]/page.tsx +24 -11
- package/src/modules/auth/i18n/de.json +48 -1
- package/src/modules/auth/i18n/en.json +48 -1
- package/src/modules/auth/i18n/es.json +48 -1
- package/src/modules/auth/i18n/pl.json +48 -1
- package/src/modules/auth/lib/setup-app.ts +97 -186
- package/src/modules/auth/notifications.ts +109 -0
- package/src/modules/auth/services/authService.ts +27 -4
- package/src/modules/auth/setup.ts +9 -0
- package/src/modules/business_rules/api/execute/route.ts +8 -1
- package/src/modules/business_rules/backend/rules/page.tsx +4 -0
- package/src/modules/business_rules/backend/sets/page.tsx +3 -0
- package/src/modules/business_rules/cli.ts +2 -1
- package/src/modules/business_rules/data/validators.ts +0 -40
- package/src/modules/business_rules/i18n/en.json +3 -1
- package/src/modules/business_rules/index.ts +0 -25
- package/src/modules/business_rules/lib/__tests__/rule-engine.test.ts +51 -0
- package/src/modules/business_rules/lib/rule-engine.ts +51 -277
- package/src/modules/business_rules/notifications.ts +25 -0
- package/src/modules/business_rules/setup.ts +9 -0
- package/src/modules/business_rules/subscribers/rule-execution-failed-notification.ts +50 -0
- package/src/modules/catalog/components/PriceKindSettings.tsx +2 -0
- package/src/modules/catalog/components/categories/CategoriesDataTable.tsx +2 -2
- package/src/modules/catalog/components/products/ProductsDataTable.tsx +2 -0
- package/src/modules/catalog/i18n/en.json +3 -1
- package/src/modules/catalog/notifications.ts +25 -0
- package/src/modules/catalog/setup.ts +22 -0
- package/src/modules/catalog/subscribers/low-stock-notification.ts +52 -0
- package/src/modules/configs/cli.ts +6 -0
- package/src/modules/configs/components/CachePanel.tsx +4 -4
- package/src/modules/configs/i18n/en.json +12 -2
- package/src/modules/configs/i18n/pl.json +12 -2
- package/src/modules/configs/lib/system-status.ts +48 -1
- package/src/modules/configs/lib/system-status.types.ts +1 -0
- package/src/modules/configs/lib/upgrade-actions.ts +5 -338
- package/src/modules/configs/setup.ts +14 -0
- package/src/modules/currencies/backend/currencies/page.tsx +3 -0
- package/src/modules/currencies/backend/exchange-rates/page.tsx +2 -0
- package/src/modules/currencies/setup.ts +15 -0
- package/src/modules/customers/backend/customers/companies/page.tsx +3 -0
- package/src/modules/customers/backend/customers/deals/page.tsx +3 -0
- package/src/modules/customers/backend/customers/people/page.tsx +3 -0
- package/src/modules/customers/commands/deals.ts +39 -0
- package/src/modules/customers/components/CustomerTodosTable.tsx +1 -0
- package/src/modules/customers/i18n/en.json +5 -1
- package/src/modules/customers/notifications.ts +44 -0
- package/src/modules/customers/setup.ts +36 -0
- package/src/modules/customers/widgets/dashboard/customer-todos/widget.ts +2 -2
- package/src/modules/customers/widgets/dashboard/new-customers/widget.ts +2 -2
- package/src/modules/customers/widgets/dashboard/new-deals/widget.ts +2 -2
- package/src/modules/customers/widgets/dashboard/next-interactions/widget.ts +2 -2
- package/src/modules/dashboards/cli.ts +55 -5
- package/src/modules/dashboards/components/WidgetVisibilityEditor.tsx +22 -11
- package/src/modules/dashboards/lib/role-widgets.ts +80 -0
- package/src/modules/dashboards/services/widgetDataService.ts +164 -4
- package/src/modules/dashboards/setup.ts +26 -0
- package/src/modules/dashboards/widgets/dashboard/aov-kpi/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/new-customers-kpi/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/orders-by-status/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/orders-kpi/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/pipeline-summary/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/revenue-kpi/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/revenue-trend/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/sales-by-region/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/top-customers/widget.ts +2 -2
- package/src/modules/dashboards/widgets/dashboard/top-products/widget.ts +2 -2
- package/src/modules/dictionaries/components/DictionaryTable.tsx +2 -0
- package/src/modules/dictionaries/setup.ts +10 -0
- package/src/modules/directory/api/get/tenants/lookup.ts +75 -0
- package/src/modules/directory/backend/directory/organizations/page.tsx +2 -2
- package/src/modules/directory/backend/directory/tenants/page.tsx +2 -2
- package/src/modules/directory/setup.ts +10 -0
- package/src/modules/entities/backend/entities/user/[entityId]/records/page.tsx +2 -2
- package/src/modules/entities/components/SystemEntitiesTable.tsx +1 -1
- package/src/modules/entities/components/UserEntitiesTable.tsx +2 -2
- package/src/modules/entities/setup.ts +9 -0
- package/src/modules/feature_toggles/components/FeatureTogglesTable.tsx +3 -4
- package/src/modules/feature_toggles/components/OverridesTable.tsx +1 -1
- package/src/modules/feature_toggles/setup.ts +9 -0
- package/src/modules/notifications/__tests__/deliver-notification.test.ts +195 -0
- package/src/modules/notifications/__tests__/deliveryStrategies.test.ts +19 -0
- package/src/modules/notifications/__tests__/notificationService.test.ts +208 -0
- package/src/modules/notifications/acl.ts +7 -0
- package/src/modules/notifications/api/[id]/action/route.ts +75 -0
- package/src/modules/notifications/api/[id]/dismiss/route.ts +12 -0
- package/src/modules/notifications/api/[id]/read/route.ts +12 -0
- package/src/modules/notifications/api/[id]/restore/route.ts +53 -0
- package/src/modules/notifications/api/batch/route.ts +14 -0
- package/src/modules/notifications/api/feature/route.ts +14 -0
- package/src/modules/notifications/api/mark-all-read/route.ts +34 -0
- package/src/modules/notifications/api/openapi.ts +76 -0
- package/src/modules/notifications/api/role/route.ts +14 -0
- package/src/modules/notifications/api/route.ts +92 -0
- package/src/modules/notifications/api/settings/route.ts +157 -0
- package/src/modules/notifications/api/unread-count/route.ts +38 -0
- package/src/modules/notifications/backend/config/notifications/page.meta.ts +22 -0
- package/src/modules/notifications/backend/config/notifications/page.tsx +12 -0
- package/src/modules/notifications/cli.ts +18 -0
- package/src/modules/notifications/data/entities.ts +99 -0
- package/src/modules/notifications/data/validators.ts +115 -0
- package/src/modules/notifications/di.ts +11 -0
- package/src/modules/notifications/emails/NotificationEmail.tsx +98 -0
- package/src/modules/notifications/frontend/NotificationInboxPageClient.tsx +42 -0
- package/src/modules/notifications/frontend/NotificationSettingsPageClient.tsx +233 -0
- package/src/modules/notifications/i18n/de.json +50 -0
- package/src/modules/notifications/i18n/en.json +50 -0
- package/src/modules/notifications/i18n/es.json +50 -0
- package/src/modules/notifications/i18n/pl.json +50 -0
- package/src/modules/notifications/index.ts +12 -0
- package/src/modules/notifications/lib/deliveryConfig.ts +153 -0
- package/src/modules/notifications/lib/deliveryStrategies.ts +50 -0
- package/src/modules/notifications/lib/events.ts +48 -0
- package/src/modules/notifications/lib/notificationBuilder.ts +121 -0
- package/src/modules/notifications/lib/notificationFactory.ts +76 -0
- package/src/modules/notifications/lib/notificationMapper.ts +33 -0
- package/src/modules/notifications/lib/notificationRecipients.ts +83 -0
- package/src/modules/notifications/lib/notificationService.ts +414 -0
- package/src/modules/notifications/lib/routeHelpers.ts +151 -0
- package/src/modules/notifications/lib/safeHref.ts +29 -0
- package/src/modules/notifications/migrations/.snapshot-open-mercato.json +336 -0
- package/src/modules/notifications/migrations/Migration20260123000001.ts +73 -0
- package/src/modules/notifications/migrations/Migration20260126150000.ts +39 -0
- package/src/modules/notifications/migrations/Migration20260129082610.ts +13 -0
- package/src/modules/notifications/subscribers/deliver-notification.ts +204 -0
- package/src/modules/notifications/workers/create-notification.worker.ts +122 -0
- package/src/modules/perspectives/setup.ts +10 -0
- package/src/modules/planner/backend/planner/availability-rulesets/page.tsx +2 -2
- package/src/modules/planner/setup.ts +21 -0
- package/src/modules/query_index/cli.ts +82 -13
- package/src/modules/query_index/components/QueryIndexesTable.tsx +8 -2
- package/src/modules/query_index/setup.ts +9 -0
- package/src/modules/resources/backend/resources/resource-types/page.tsx +2 -2
- package/src/modules/resources/backend/resources/resources/page.tsx +2 -2
- package/src/modules/resources/setup.ts +21 -0
- package/src/modules/sales/acl.ts +0 -1
- package/src/modules/sales/backend/sales/channels/offers/page.tsx +2 -0
- package/src/modules/sales/backend/sales/channels/page.tsx +2 -0
- package/src/modules/sales/backend/sales/documents/[id]/page.tsx +0 -16
- package/src/modules/sales/cli.ts +2 -43
- package/src/modules/sales/commands/documents.ts +62 -70
- package/src/modules/sales/commands/payments.ts +33 -0
- package/src/modules/sales/components/AdjustmentKindSettings.tsx +2 -2
- package/src/modules/sales/components/PaymentMethodsSettings.tsx +2 -2
- package/src/modules/sales/components/ShippingMethodsSettings.tsx +2 -2
- package/src/modules/sales/components/TaxRatesSettings.tsx +2 -2
- package/src/modules/sales/components/channels/SalesChannelOffersPanel.tsx +2 -0
- package/src/modules/sales/components/documents/AdjustmentsSection.tsx +2 -0
- package/src/modules/sales/components/documents/PaymentsSection.tsx +2 -1
- package/src/modules/sales/components/documents/SalesDocumentsTable.tsx +2 -0
- package/src/modules/sales/i18n/de.json +20 -0
- package/src/modules/sales/i18n/en.json +25 -1
- package/src/modules/sales/i18n/es.json +20 -0
- package/src/modules/sales/i18n/pl.json +20 -0
- package/src/modules/sales/lib/dictionaries.ts +0 -3
- package/src/modules/sales/lib/seeds.ts +53 -0
- package/src/modules/sales/notifications.client.ts +65 -0
- package/src/modules/sales/notifications.ts +82 -0
- package/src/modules/sales/setup.ts +108 -0
- package/src/modules/sales/subscribers/quote-expiring-notification.ts +53 -0
- package/src/modules/sales/widgets/notifications/SalesOrderCreatedRenderer.tsx +156 -0
- package/src/modules/sales/widgets/notifications/SalesQuoteCreatedRenderer.tsx +156 -0
- package/src/modules/sales/widgets/notifications/index.ts +2 -0
- package/src/modules/sales/widgets/notifications/useSalesDocumentTotals.ts +81 -0
- package/src/modules/staff/backend/staff/team-members/page.tsx +1 -1
- package/src/modules/staff/backend/staff/team-roles/page.tsx +2 -2
- package/src/modules/staff/backend/staff/teams/[id]/edit/page.tsx +2 -2
- package/src/modules/staff/backend/staff/teams/page.tsx +2 -2
- package/src/modules/staff/commands/leave-requests.ts +94 -0
- package/src/modules/staff/i18n/de.json +4 -0
- package/src/modules/staff/i18n/en.json +9 -1
- package/src/modules/staff/i18n/es.json +4 -0
- package/src/modules/staff/i18n/pl.json +4 -0
- package/src/modules/staff/notifications.ts +71 -0
- package/src/modules/staff/setup.ts +27 -0
- package/src/modules/workflows/acl.ts +0 -2
- package/src/modules/workflows/api/__tests__/instances.route.test.ts +2 -5
- package/src/modules/workflows/api/instances/route.ts +7 -21
- package/src/modules/workflows/api/tasks/route.ts +1 -7
- package/src/modules/workflows/backend/definitions/[id]/page.meta.ts +1 -1
- package/src/modules/workflows/backend/definitions/[id]/page.tsx +0 -9
- package/src/modules/workflows/backend/definitions/create/page.meta.ts +1 -1
- package/src/modules/workflows/backend/definitions/create/page.tsx +0 -9
- package/src/modules/workflows/backend/definitions/page.tsx +5 -0
- package/src/modules/workflows/backend/definitions/visual-editor/page.meta.ts +1 -1
- package/src/modules/workflows/backend/definitions/visual-editor/page.tsx +3 -21
- package/src/modules/workflows/backend/events/[id]/page.meta.ts +2 -2
- package/src/modules/workflows/backend/events/[id]/page.tsx +1 -1
- package/src/modules/workflows/backend/instances/[id]/page.meta.ts +2 -2
- package/src/modules/workflows/backend/instances/page.tsx +4 -1
- package/src/modules/workflows/backend/tasks/[id]/page.meta.ts +2 -2
- package/src/modules/workflows/backend/tasks/[id]/page.tsx +1 -1
- package/src/modules/workflows/backend/tasks/page.tsx +10 -6
- package/src/modules/workflows/cli.ts +12 -123
- package/src/modules/workflows/data/entities.ts +0 -124
- package/src/modules/workflows/data/validators.ts +0 -138
- package/src/modules/workflows/examples/checkout-demo-definition.json +5 -1
- package/src/modules/workflows/i18n/en.json +3 -72
- package/src/modules/workflows/lib/__tests__/activity-executor.test.ts +36 -43
- package/src/modules/workflows/lib/__tests__/transition-handler.test.ts +90 -170
- package/src/modules/workflows/lib/activity-executor.ts +16 -129
- package/src/modules/workflows/lib/graph-utils.ts +2 -117
- package/src/modules/workflows/lib/seeds.ts +12 -50
- package/src/modules/workflows/lib/start-validator.ts +28 -38
- package/src/modules/workflows/lib/transition-handler.ts +71 -212
- package/src/modules/workflows/migrations/Migration20251207131955.ts +77 -143
- package/src/modules/workflows/notifications.ts +25 -0
- package/src/modules/workflows/setup.ts +15 -0
- package/src/modules/workflows/subscribers/task-assigned-notification.ts +53 -0
- package/dist/generated/entities/workflow_event_trigger/index.js +0 -33
- package/dist/generated/entities/workflow_event_trigger/index.js.map +0 -7
- package/dist/modules/auth/events.js +0 -30
- package/dist/modules/auth/events.js.map +0 -7
- package/dist/modules/business_rules/api/execute/[ruleId]/route.js +0 -145
- package/dist/modules/business_rules/api/execute/[ruleId]/route.js.map +0 -7
- package/dist/modules/catalog/events.js +0 -34
- package/dist/modules/catalog/events.js.map +0 -7
- package/dist/modules/customers/events.js +0 -49
- package/dist/modules/customers/events.js.map +0 -7
- package/dist/modules/directory/events.js +0 -23
- package/dist/modules/directory/events.js.map +0 -7
- package/dist/modules/sales/events.js +0 -63
- package/dist/modules/sales/events.js.map +0 -7
- package/dist/modules/sales/lib/frontend/documentDataEvents.js +0 -25
- package/dist/modules/sales/lib/frontend/documentDataEvents.js.map +0 -7
- package/dist/modules/workflows/components/DefinitionTriggersEditor.js +0 -481
- package/dist/modules/workflows/components/DefinitionTriggersEditor.js.map +0 -7
- package/dist/modules/workflows/components/EventTriggersEditor.js +0 -553
- package/dist/modules/workflows/components/EventTriggersEditor.js.map +0 -7
- package/dist/modules/workflows/events.js +0 -38
- package/dist/modules/workflows/events.js.map +0 -7
- package/dist/modules/workflows/examples/order-approval-definition.json +0 -257
- package/dist/modules/workflows/examples/order-approval-guard-rules.json +0 -32
- package/dist/modules/workflows/lib/event-trigger-service.js +0 -308
- package/dist/modules/workflows/lib/event-trigger-service.js.map +0 -7
- package/dist/modules/workflows/migrations/Migration20260123143500.js +0 -36
- package/dist/modules/workflows/migrations/Migration20260123143500.js.map +0 -7
- package/dist/modules/workflows/subscribers/event-trigger.js +0 -78
- package/dist/modules/workflows/subscribers/event-trigger.js.map +0 -7
- package/dist/modules/workflows/widgets/injection/order-approval/widget.client.js +0 -323
- package/dist/modules/workflows/widgets/injection/order-approval/widget.client.js.map +0 -7
- package/dist/modules/workflows/widgets/injection/order-approval/widget.js +0 -17
- package/dist/modules/workflows/widgets/injection/order-approval/widget.js.map +0 -7
- package/dist/modules/workflows/widgets/injection-table.js +0 -19
- package/dist/modules/workflows/widgets/injection-table.js.map +0 -7
- package/generated/entities/workflow_event_trigger/index.ts +0 -15
- package/src/modules/auth/events.ts +0 -39
- package/src/modules/business_rules/api/execute/[ruleId]/route.ts +0 -163
- package/src/modules/catalog/events.ts +0 -45
- package/src/modules/customers/events.ts +0 -63
- package/src/modules/directory/events.ts +0 -31
- package/src/modules/sales/events.ts +0 -82
- package/src/modules/sales/lib/frontend/documentDataEvents.ts +0 -28
- package/src/modules/workflows/components/DefinitionTriggersEditor.tsx +0 -581
- package/src/modules/workflows/components/EventTriggersEditor.tsx +0 -664
- package/src/modules/workflows/events.ts +0 -49
- package/src/modules/workflows/examples/order-approval-definition.json +0 -257
- package/src/modules/workflows/examples/order-approval-guard-rules.json +0 -32
- package/src/modules/workflows/lib/event-trigger-service.ts +0 -557
- package/src/modules/workflows/migrations/Migration20260123143500.ts +0 -38
- package/src/modules/workflows/subscribers/event-trigger.ts +0 -109
- package/src/modules/workflows/widgets/injection/order-approval/widget.client.tsx +0 -446
- package/src/modules/workflows/widgets/injection/order-approval/widget.ts +0 -16
- package/src/modules/workflows/widgets/injection-table.ts +0 -21
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { EntityManager } from '@mikro-orm/postgresql'
|
|
2
|
+
import { resolveNotificationService } from '../../notifications/lib/notificationService'
|
|
3
|
+
import { buildNotificationFromType } from '../../notifications/lib/notificationBuilder'
|
|
4
|
+
import { notificationTypes } from '../notifications'
|
|
5
|
+
|
|
6
|
+
export const metadata = {
|
|
7
|
+
event: 'workflows.task.assigned',
|
|
8
|
+
persistent: true,
|
|
9
|
+
id: 'workflows:task-assigned-notification',
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
type TaskAssignedPayload = {
|
|
13
|
+
taskId: string
|
|
14
|
+
taskName: string
|
|
15
|
+
workflowName: string
|
|
16
|
+
assignedUserId: string
|
|
17
|
+
dueDate?: string | null
|
|
18
|
+
tenantId: string
|
|
19
|
+
organizationId?: string | null
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
type ResolverContext = {
|
|
23
|
+
resolve: <T = unknown>(name: string) => T
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export default async function handle(payload: TaskAssignedPayload, ctx: ResolverContext) {
|
|
27
|
+
if (!payload.assignedUserId) return
|
|
28
|
+
|
|
29
|
+
try {
|
|
30
|
+
const notificationService = resolveNotificationService(ctx)
|
|
31
|
+
const typeDef = notificationTypes.find((type) => type.type === 'workflows.task.assigned')
|
|
32
|
+
if (!typeDef) return
|
|
33
|
+
|
|
34
|
+
const notificationInput = buildNotificationFromType(typeDef, {
|
|
35
|
+
recipientUserId: payload.assignedUserId,
|
|
36
|
+
bodyVariables: {
|
|
37
|
+
taskName: payload.taskName,
|
|
38
|
+
workflowName: payload.workflowName,
|
|
39
|
+
dueDate: payload.dueDate ?? '',
|
|
40
|
+
},
|
|
41
|
+
sourceEntityType: 'workflows:user_task',
|
|
42
|
+
sourceEntityId: payload.taskId,
|
|
43
|
+
linkHref: `/backend/workflows/tasks/${payload.taskId}`,
|
|
44
|
+
})
|
|
45
|
+
|
|
46
|
+
await notificationService.create(notificationInput, {
|
|
47
|
+
tenantId: payload.tenantId,
|
|
48
|
+
organizationId: payload.organizationId ?? null,
|
|
49
|
+
})
|
|
50
|
+
} catch (err) {
|
|
51
|
+
console.error('[workflows:task-assigned-notification] Failed to create notification:', err)
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
const id = "id";
|
|
2
|
-
const name = "name";
|
|
3
|
-
const description = "description";
|
|
4
|
-
const workflow_definition_id = "workflow_definition_id";
|
|
5
|
-
const event_pattern = "event_pattern";
|
|
6
|
-
const config = "config";
|
|
7
|
-
const enabled = "enabled";
|
|
8
|
-
const priority = "priority";
|
|
9
|
-
const tenant_id = "tenant_id";
|
|
10
|
-
const organization_id = "organization_id";
|
|
11
|
-
const created_by = "created_by";
|
|
12
|
-
const updated_by = "updated_by";
|
|
13
|
-
const created_at = "created_at";
|
|
14
|
-
const updated_at = "updated_at";
|
|
15
|
-
const deleted_at = "deleted_at";
|
|
16
|
-
export {
|
|
17
|
-
config,
|
|
18
|
-
created_at,
|
|
19
|
-
created_by,
|
|
20
|
-
deleted_at,
|
|
21
|
-
description,
|
|
22
|
-
enabled,
|
|
23
|
-
event_pattern,
|
|
24
|
-
id,
|
|
25
|
-
name,
|
|
26
|
-
organization_id,
|
|
27
|
-
priority,
|
|
28
|
-
tenant_id,
|
|
29
|
-
updated_at,
|
|
30
|
-
updated_by,
|
|
31
|
-
workflow_definition_id
|
|
32
|
-
};
|
|
33
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../generated/entities/workflow_event_trigger/index.ts"],
|
|
4
|
-
"sourcesContent": ["export const id = 'id'\nexport const name = 'name'\nexport const description = 'description'\nexport const workflow_definition_id = 'workflow_definition_id'\nexport const event_pattern = 'event_pattern'\nexport const config = 'config'\nexport const enabled = 'enabled'\nexport const priority = 'priority'\nexport const tenant_id = 'tenant_id'\nexport const organization_id = 'organization_id'\nexport const created_by = 'created_by'\nexport const updated_by = 'updated_by'\nexport const created_at = 'created_at'\nexport const updated_at = 'updated_at'\nexport const deleted_at = 'deleted_at'\n"],
|
|
5
|
-
"mappings": "AAAO,MAAM,KAAK;AACX,MAAM,OAAO;AACb,MAAM,cAAc;AACpB,MAAM,yBAAyB;AAC/B,MAAM,gBAAgB;AACtB,MAAM,SAAS;AACf,MAAM,UAAU;AAChB,MAAM,WAAW;AACjB,MAAM,YAAY;AAClB,MAAM,kBAAkB;AACxB,MAAM,aAAa;AACnB,MAAM,aAAa;AACnB,MAAM,aAAa;AACnB,MAAM,aAAa;AACnB,MAAM,aAAa;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { createModuleEvents } from "@open-mercato/shared/modules/events";
|
|
2
|
-
const events = [
|
|
3
|
-
// Users
|
|
4
|
-
{ id: "auth.users.created", label: "User Created", entity: "users", category: "crud" },
|
|
5
|
-
{ id: "auth.users.updated", label: "User Updated", entity: "users", category: "crud" },
|
|
6
|
-
{ id: "auth.users.deleted", label: "User Deleted", entity: "users", category: "crud" },
|
|
7
|
-
// Roles
|
|
8
|
-
{ id: "auth.roles.created", label: "Role Created", entity: "roles", category: "crud" },
|
|
9
|
-
{ id: "auth.roles.updated", label: "Role Updated", entity: "roles", category: "crud" },
|
|
10
|
-
{ id: "auth.roles.deleted", label: "Role Deleted", entity: "roles", category: "crud" },
|
|
11
|
-
// Authentication events
|
|
12
|
-
{ id: "auth.login.success", label: "Login Successful", category: "lifecycle" },
|
|
13
|
-
{ id: "auth.login.failed", label: "Login Failed", category: "lifecycle" },
|
|
14
|
-
{ id: "auth.logout", label: "User Logged Out", category: "lifecycle" },
|
|
15
|
-
{ id: "auth.password.changed", label: "Password Changed", category: "lifecycle" },
|
|
16
|
-
{ id: "auth.password.reset.requested", label: "Password Reset Requested", category: "lifecycle" },
|
|
17
|
-
{ id: "auth.password.reset.completed", label: "Password Reset Completed", category: "lifecycle" }
|
|
18
|
-
];
|
|
19
|
-
const eventsConfig = createModuleEvents({
|
|
20
|
-
moduleId: "auth",
|
|
21
|
-
events
|
|
22
|
-
});
|
|
23
|
-
const emitAuthEvent = eventsConfig.emit;
|
|
24
|
-
var events_default = eventsConfig;
|
|
25
|
-
export {
|
|
26
|
-
events_default as default,
|
|
27
|
-
emitAuthEvent,
|
|
28
|
-
eventsConfig
|
|
29
|
-
};
|
|
30
|
-
//# sourceMappingURL=events.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/modules/auth/events.ts"],
|
|
4
|
-
"sourcesContent": ["import { createModuleEvents } from '@open-mercato/shared/modules/events'\n\n/**\n * Auth Module Events\n *\n * Declares all events that can be emitted by the auth module.\n */\nconst events = [\n // Users\n { id: 'auth.users.created', label: 'User Created', entity: 'users', category: 'crud' },\n { id: 'auth.users.updated', label: 'User Updated', entity: 'users', category: 'crud' },\n { id: 'auth.users.deleted', label: 'User Deleted', entity: 'users', category: 'crud' },\n\n // Roles\n { id: 'auth.roles.created', label: 'Role Created', entity: 'roles', category: 'crud' },\n { id: 'auth.roles.updated', label: 'Role Updated', entity: 'roles', category: 'crud' },\n { id: 'auth.roles.deleted', label: 'Role Deleted', entity: 'roles', category: 'crud' },\n\n // Authentication events\n { id: 'auth.login.success', label: 'Login Successful', category: 'lifecycle' },\n { id: 'auth.login.failed', label: 'Login Failed', category: 'lifecycle' },\n { id: 'auth.logout', label: 'User Logged Out', category: 'lifecycle' },\n { id: 'auth.password.changed', label: 'Password Changed', category: 'lifecycle' },\n { id: 'auth.password.reset.requested', label: 'Password Reset Requested', category: 'lifecycle' },\n { id: 'auth.password.reset.completed', label: 'Password Reset Completed', category: 'lifecycle' },\n] as const\n\nexport const eventsConfig = createModuleEvents({\n moduleId: 'auth',\n events,\n})\n\n/** Type-safe event emitter for auth module */\nexport const emitAuthEvent = eventsConfig.emit\n\n/** Event IDs that can be emitted by the auth module */\nexport type AuthEventId = typeof events[number]['id']\n\nexport default eventsConfig\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,0BAA0B;AAOnC,MAAM,SAAS;AAAA;AAAA,EAEb,EAAE,IAAI,sBAAsB,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EACrF,EAAE,IAAI,sBAAsB,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EACrF,EAAE,IAAI,sBAAsB,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA;AAAA,EAGrF,EAAE,IAAI,sBAAsB,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EACrF,EAAE,IAAI,sBAAsB,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EACrF,EAAE,IAAI,sBAAsB,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA;AAAA,EAGrF,EAAE,IAAI,sBAAsB,OAAO,oBAAoB,UAAU,YAAY;AAAA,EAC7E,EAAE,IAAI,qBAAqB,OAAO,gBAAgB,UAAU,YAAY;AAAA,EACxE,EAAE,IAAI,eAAe,OAAO,mBAAmB,UAAU,YAAY;AAAA,EACrE,EAAE,IAAI,yBAAyB,OAAO,oBAAoB,UAAU,YAAY;AAAA,EAChF,EAAE,IAAI,iCAAiC,OAAO,4BAA4B,UAAU,YAAY;AAAA,EAChG,EAAE,IAAI,iCAAiC,OAAO,4BAA4B,UAAU,YAAY;AAClG;AAEO,MAAM,eAAe,mBAAmB;AAAA,EAC7C,UAAU;AAAA,EACV;AACF,CAAC;AAGM,MAAM,gBAAgB,aAAa;AAK1C,IAAO,iBAAQ;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import { NextResponse } from "next/server";
|
|
2
|
-
import { z } from "zod";
|
|
3
|
-
import { getAuthFromRequest } from "@open-mercato/shared/lib/auth/server";
|
|
4
|
-
import { createRequestContainer } from "@open-mercato/shared/lib/di/container";
|
|
5
|
-
import * as ruleEngine from "../../../lib/rule-engine.js";
|
|
6
|
-
const executeByIdRequestSchema = z.object({
|
|
7
|
-
data: z.any(),
|
|
8
|
-
dryRun: z.boolean().optional().default(false),
|
|
9
|
-
entityType: z.string().optional(),
|
|
10
|
-
entityId: z.string().optional(),
|
|
11
|
-
eventType: z.string().optional()
|
|
12
|
-
});
|
|
13
|
-
const executeByIdResponseSchema = z.object({
|
|
14
|
-
success: z.boolean(),
|
|
15
|
-
ruleId: z.string(),
|
|
16
|
-
ruleName: z.string(),
|
|
17
|
-
conditionResult: z.boolean(),
|
|
18
|
-
actionsExecuted: z.object({
|
|
19
|
-
success: z.boolean(),
|
|
20
|
-
results: z.array(z.object({
|
|
21
|
-
type: z.string(),
|
|
22
|
-
success: z.boolean(),
|
|
23
|
-
error: z.string().optional()
|
|
24
|
-
}))
|
|
25
|
-
}).nullable(),
|
|
26
|
-
executionTime: z.number(),
|
|
27
|
-
error: z.string().optional(),
|
|
28
|
-
logId: z.string().optional()
|
|
29
|
-
});
|
|
30
|
-
const errorResponseSchema = z.object({
|
|
31
|
-
error: z.string()
|
|
32
|
-
});
|
|
33
|
-
const routeMetadata = {
|
|
34
|
-
POST: { requireAuth: true, requireFeatures: ["business_rules.execute"] }
|
|
35
|
-
};
|
|
36
|
-
const metadata = routeMetadata;
|
|
37
|
-
async function POST(req, context) {
|
|
38
|
-
const auth = await getAuthFromRequest(req);
|
|
39
|
-
if (!auth) {
|
|
40
|
-
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
|
|
41
|
-
}
|
|
42
|
-
const params = await context.params;
|
|
43
|
-
const ruleId = params.ruleId;
|
|
44
|
-
if (!ruleId || !z.uuid().safeParse(ruleId).success) {
|
|
45
|
-
return NextResponse.json({ error: "Invalid rule ID" }, { status: 400 });
|
|
46
|
-
}
|
|
47
|
-
const container = await createRequestContainer();
|
|
48
|
-
const em = container.resolve("em");
|
|
49
|
-
let body;
|
|
50
|
-
try {
|
|
51
|
-
body = await req.json();
|
|
52
|
-
} catch {
|
|
53
|
-
return NextResponse.json({ error: "Invalid JSON body" }, { status: 400 });
|
|
54
|
-
}
|
|
55
|
-
const parsed = executeByIdRequestSchema.safeParse(body);
|
|
56
|
-
if (!parsed.success) {
|
|
57
|
-
const errors = parsed.error.issues.map((e) => `${e.path.join(".")}: ${e.message}`);
|
|
58
|
-
return NextResponse.json({ error: `Validation failed: ${errors.join(", ")}` }, { status: 400 });
|
|
59
|
-
}
|
|
60
|
-
const { data, dryRun, entityType, entityId, eventType } = parsed.data;
|
|
61
|
-
const execContext = {
|
|
62
|
-
ruleId,
|
|
63
|
-
data,
|
|
64
|
-
user: {
|
|
65
|
-
id: auth.sub,
|
|
66
|
-
email: auth.email,
|
|
67
|
-
role: auth.role ?? void 0
|
|
68
|
-
},
|
|
69
|
-
tenantId: auth.tenantId ?? "",
|
|
70
|
-
organizationId: auth.orgId ?? "",
|
|
71
|
-
executedBy: auth.sub ?? auth.email ?? void 0,
|
|
72
|
-
dryRun,
|
|
73
|
-
entityType,
|
|
74
|
-
entityId,
|
|
75
|
-
eventType
|
|
76
|
-
};
|
|
77
|
-
try {
|
|
78
|
-
const result = await ruleEngine.executeRuleById(em, execContext);
|
|
79
|
-
const response = {
|
|
80
|
-
success: result.success,
|
|
81
|
-
ruleId: result.ruleId,
|
|
82
|
-
ruleName: result.ruleName,
|
|
83
|
-
conditionResult: result.conditionResult,
|
|
84
|
-
actionsExecuted: result.actionsExecuted ? {
|
|
85
|
-
success: result.actionsExecuted.success,
|
|
86
|
-
results: result.actionsExecuted.results.map((ar) => ({
|
|
87
|
-
type: ar.action.type,
|
|
88
|
-
success: ar.success,
|
|
89
|
-
error: ar.error
|
|
90
|
-
}))
|
|
91
|
-
} : null,
|
|
92
|
-
executionTime: result.executionTime,
|
|
93
|
-
error: result.error,
|
|
94
|
-
logId: result.logId
|
|
95
|
-
};
|
|
96
|
-
const status = result.success ? 200 : result.error === "Rule not found" ? 404 : 200;
|
|
97
|
-
return NextResponse.json(response, { status });
|
|
98
|
-
} catch (error) {
|
|
99
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
100
|
-
return NextResponse.json(
|
|
101
|
-
{ error: `Rule execution failed: ${errorMessage}` },
|
|
102
|
-
{ status: 500 }
|
|
103
|
-
);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
const openApi = {
|
|
107
|
-
tag: "Business Rules",
|
|
108
|
-
summary: "Execute a specific business rule by ID",
|
|
109
|
-
methods: {
|
|
110
|
-
POST: {
|
|
111
|
-
summary: "Execute a specific rule by its database UUID",
|
|
112
|
-
description: "Directly executes a specific business rule identified by its UUID, bypassing the normal entityType/eventType discovery mechanism. Useful for workflows and targeted rule execution.",
|
|
113
|
-
pathParams: z.object({
|
|
114
|
-
ruleId: z.string().uuid().describe("The database UUID of the business rule to execute")
|
|
115
|
-
}),
|
|
116
|
-
requestBody: {
|
|
117
|
-
contentType: "application/json",
|
|
118
|
-
schema: executeByIdRequestSchema
|
|
119
|
-
},
|
|
120
|
-
responses: [
|
|
121
|
-
{
|
|
122
|
-
status: 200,
|
|
123
|
-
description: "Rule executed successfully",
|
|
124
|
-
schema: executeByIdResponseSchema
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
status: 404,
|
|
128
|
-
description: "Rule not found",
|
|
129
|
-
schema: errorResponseSchema
|
|
130
|
-
}
|
|
131
|
-
],
|
|
132
|
-
errors: [
|
|
133
|
-
{ status: 400, description: "Invalid request payload or rule ID", schema: errorResponseSchema },
|
|
134
|
-
{ status: 401, description: "Unauthorized", schema: errorResponseSchema },
|
|
135
|
-
{ status: 500, description: "Execution error", schema: errorResponseSchema }
|
|
136
|
-
]
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
};
|
|
140
|
-
export {
|
|
141
|
-
POST,
|
|
142
|
-
metadata,
|
|
143
|
-
openApi
|
|
144
|
-
};
|
|
145
|
-
//# sourceMappingURL=route.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../../src/modules/business_rules/api/execute/%5BruleId%5D/route.ts"],
|
|
4
|
-
"sourcesContent": ["import { NextResponse } from 'next/server'\nimport { z } from 'zod'\nimport type { OpenApiRouteDoc } from '@open-mercato/shared/lib/openapi'\nimport { getAuthFromRequest } from '@open-mercato/shared/lib/auth/server'\nimport { createRequestContainer } from '@open-mercato/shared/lib/di/container'\nimport type { EntityManager } from '@mikro-orm/postgresql'\nimport * as ruleEngine from '../../../lib/rule-engine'\n\nconst executeByIdRequestSchema = z.object({\n data: z.any(),\n dryRun: z.boolean().optional().default(false),\n entityType: z.string().optional(),\n entityId: z.string().optional(),\n eventType: z.string().optional(),\n})\n\nconst executeByIdResponseSchema = z.object({\n success: z.boolean(),\n ruleId: z.string(),\n ruleName: z.string(),\n conditionResult: z.boolean(),\n actionsExecuted: z.object({\n success: z.boolean(),\n results: z.array(z.object({\n type: z.string(),\n success: z.boolean(),\n error: z.string().optional(),\n })),\n }).nullable(),\n executionTime: z.number(),\n error: z.string().optional(),\n logId: z.string().optional(),\n})\n\nconst errorResponseSchema = z.object({\n error: z.string(),\n})\n\nconst routeMetadata = {\n POST: { requireAuth: true, requireFeatures: ['business_rules.execute'] },\n}\n\nexport const metadata = routeMetadata\n\ninterface RouteContext {\n params: Promise<{ ruleId: string }>\n}\n\nexport async function POST(req: Request, context: RouteContext) {\n const auth = await getAuthFromRequest(req)\n if (!auth) {\n return NextResponse.json({ error: 'Unauthorized' }, { status: 401 })\n }\n\n const params = await context.params\n const ruleId = params.ruleId\n\n if (!ruleId || !z.uuid().safeParse(ruleId).success) {\n return NextResponse.json({ error: 'Invalid rule ID' }, { status: 400 })\n }\n\n const container = await createRequestContainer()\n const em = container.resolve('em') as EntityManager\n\n let body: any\n try {\n body = await req.json()\n } catch {\n return NextResponse.json({ error: 'Invalid JSON body' }, { status: 400 })\n }\n\n const parsed = executeByIdRequestSchema.safeParse(body)\n if (!parsed.success) {\n const errors = parsed.error.issues.map(e => `${e.path.join('.')}: ${e.message}`)\n return NextResponse.json({ error: `Validation failed: ${errors.join(', ')}` }, { status: 400 })\n }\n\n const { data, dryRun, entityType, entityId, eventType } = parsed.data\n\n const execContext: ruleEngine.DirectRuleExecutionContext = {\n ruleId,\n data,\n user: {\n id: auth.sub,\n email: auth.email,\n role: (auth.role as string) ?? undefined,\n },\n tenantId: auth.tenantId ?? '',\n organizationId: auth.orgId ?? '',\n executedBy: auth.sub ?? auth.email ?? undefined,\n dryRun,\n entityType,\n entityId,\n eventType,\n }\n\n try {\n const result = await ruleEngine.executeRuleById(em, execContext)\n\n const response = {\n success: result.success,\n ruleId: result.ruleId,\n ruleName: result.ruleName,\n conditionResult: result.conditionResult,\n actionsExecuted: result.actionsExecuted ? {\n success: result.actionsExecuted.success,\n results: result.actionsExecuted.results.map(ar => ({\n type: ar.action.type,\n success: ar.success,\n error: ar.error,\n })),\n } : null,\n executionTime: result.executionTime,\n error: result.error,\n logId: result.logId,\n }\n\n // Return appropriate status based on result\n const status = result.success ? 200 : (result.error === 'Rule not found' ? 404 : 200)\n return NextResponse.json(response, { status })\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error)\n return NextResponse.json(\n { error: `Rule execution failed: ${errorMessage}` },\n { status: 500 }\n )\n }\n}\n\nexport const openApi: OpenApiRouteDoc = {\n tag: 'Business Rules',\n summary: 'Execute a specific business rule by ID',\n methods: {\n POST: {\n summary: 'Execute a specific rule by its database UUID',\n description: 'Directly executes a specific business rule identified by its UUID, bypassing the normal entityType/eventType discovery mechanism. Useful for workflows and targeted rule execution.',\n pathParams: z.object({\n ruleId: z.string().uuid().describe('The database UUID of the business rule to execute'),\n }),\n requestBody: {\n contentType: 'application/json',\n schema: executeByIdRequestSchema,\n },\n responses: [\n {\n status: 200,\n description: 'Rule executed successfully',\n schema: executeByIdResponseSchema,\n },\n {\n status: 404,\n description: 'Rule not found',\n schema: errorResponseSchema,\n },\n ],\n errors: [\n { status: 400, description: 'Invalid request payload or rule ID', schema: errorResponseSchema },\n { status: 401, description: 'Unauthorized', schema: errorResponseSchema },\n { status: 500, description: 'Execution error', schema: errorResponseSchema },\n ],\n },\n },\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { createModuleEvents } from "@open-mercato/shared/modules/events";
|
|
2
|
-
const events = [
|
|
3
|
-
// Products
|
|
4
|
-
{ id: "catalog.product.created", label: "Product Created", entity: "product", category: "crud" },
|
|
5
|
-
{ id: "catalog.product.updated", label: "Product Updated", entity: "product", category: "crud" },
|
|
6
|
-
{ id: "catalog.product.deleted", label: "Product Deleted", entity: "product", category: "crud" },
|
|
7
|
-
// Categories
|
|
8
|
-
{ id: "catalog.category.created", label: "Category Created", entity: "category", category: "crud" },
|
|
9
|
-
{ id: "catalog.category.updated", label: "Category Updated", entity: "category", category: "crud" },
|
|
10
|
-
{ id: "catalog.category.deleted", label: "Category Deleted", entity: "category", category: "crud" },
|
|
11
|
-
// Variants
|
|
12
|
-
{ id: "catalog.variant.created", label: "Variant Created", entity: "variant", category: "crud" },
|
|
13
|
-
{ id: "catalog.variant.updated", label: "Variant Updated", entity: "variant", category: "crud" },
|
|
14
|
-
{ id: "catalog.variant.deleted", label: "Variant Deleted", entity: "variant", category: "crud" },
|
|
15
|
-
// Prices
|
|
16
|
-
{ id: "catalog.price.created", label: "Price Created", entity: "price", category: "crud" },
|
|
17
|
-
{ id: "catalog.price.updated", label: "Price Updated", entity: "price", category: "crud" },
|
|
18
|
-
{ id: "catalog.price.deleted", label: "Price Deleted", entity: "price", category: "crud" },
|
|
19
|
-
// Lifecycle events - Pricing resolution
|
|
20
|
-
{ id: "catalog.pricing.resolve.before", label: "Before Pricing Resolve", category: "lifecycle", excludeFromTriggers: true },
|
|
21
|
-
{ id: "catalog.pricing.resolve.after", label: "After Pricing Resolve", category: "lifecycle", excludeFromTriggers: true }
|
|
22
|
-
];
|
|
23
|
-
const eventsConfig = createModuleEvents({
|
|
24
|
-
moduleId: "catalog",
|
|
25
|
-
events
|
|
26
|
-
});
|
|
27
|
-
const emitCatalogEvent = eventsConfig.emit;
|
|
28
|
-
var events_default = eventsConfig;
|
|
29
|
-
export {
|
|
30
|
-
events_default as default,
|
|
31
|
-
emitCatalogEvent,
|
|
32
|
-
eventsConfig
|
|
33
|
-
};
|
|
34
|
-
//# sourceMappingURL=events.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/modules/catalog/events.ts"],
|
|
4
|
-
"sourcesContent": ["import { createModuleEvents } from '@open-mercato/shared/modules/events'\n\n/**\n * Catalog Module Events\n *\n * Declares all events that can be emitted by the catalog module.\n */\nconst events = [\n // Products\n { id: 'catalog.product.created', label: 'Product Created', entity: 'product', category: 'crud' },\n { id: 'catalog.product.updated', label: 'Product Updated', entity: 'product', category: 'crud' },\n { id: 'catalog.product.deleted', label: 'Product Deleted', entity: 'product', category: 'crud' },\n\n // Categories\n { id: 'catalog.category.created', label: 'Category Created', entity: 'category', category: 'crud' },\n { id: 'catalog.category.updated', label: 'Category Updated', entity: 'category', category: 'crud' },\n { id: 'catalog.category.deleted', label: 'Category Deleted', entity: 'category', category: 'crud' },\n\n // Variants\n { id: 'catalog.variant.created', label: 'Variant Created', entity: 'variant', category: 'crud' },\n { id: 'catalog.variant.updated', label: 'Variant Updated', entity: 'variant', category: 'crud' },\n { id: 'catalog.variant.deleted', label: 'Variant Deleted', entity: 'variant', category: 'crud' },\n\n // Prices\n { id: 'catalog.price.created', label: 'Price Created', entity: 'price', category: 'crud' },\n { id: 'catalog.price.updated', label: 'Price Updated', entity: 'price', category: 'crud' },\n { id: 'catalog.price.deleted', label: 'Price Deleted', entity: 'price', category: 'crud' },\n\n // Lifecycle events - Pricing resolution\n { id: 'catalog.pricing.resolve.before', label: 'Before Pricing Resolve', category: 'lifecycle', excludeFromTriggers: true },\n { id: 'catalog.pricing.resolve.after', label: 'After Pricing Resolve', category: 'lifecycle', excludeFromTriggers: true },\n] as const\n\nexport const eventsConfig = createModuleEvents({\n moduleId: 'catalog',\n events,\n})\n\n/** Type-safe event emitter for catalog module */\nexport const emitCatalogEvent = eventsConfig.emit\n\n/** Event IDs that can be emitted by the catalog module */\nexport type CatalogEventId = typeof events[number]['id']\n\nexport default eventsConfig\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,0BAA0B;AAOnC,MAAM,SAAS;AAAA;AAAA,EAEb,EAAE,IAAI,2BAA2B,OAAO,mBAAmB,QAAQ,WAAW,UAAU,OAAO;AAAA,EAC/F,EAAE,IAAI,2BAA2B,OAAO,mBAAmB,QAAQ,WAAW,UAAU,OAAO;AAAA,EAC/F,EAAE,IAAI,2BAA2B,OAAO,mBAAmB,QAAQ,WAAW,UAAU,OAAO;AAAA;AAAA,EAG/F,EAAE,IAAI,4BAA4B,OAAO,oBAAoB,QAAQ,YAAY,UAAU,OAAO;AAAA,EAClG,EAAE,IAAI,4BAA4B,OAAO,oBAAoB,QAAQ,YAAY,UAAU,OAAO;AAAA,EAClG,EAAE,IAAI,4BAA4B,OAAO,oBAAoB,QAAQ,YAAY,UAAU,OAAO;AAAA;AAAA,EAGlG,EAAE,IAAI,2BAA2B,OAAO,mBAAmB,QAAQ,WAAW,UAAU,OAAO;AAAA,EAC/F,EAAE,IAAI,2BAA2B,OAAO,mBAAmB,QAAQ,WAAW,UAAU,OAAO;AAAA,EAC/F,EAAE,IAAI,2BAA2B,OAAO,mBAAmB,QAAQ,WAAW,UAAU,OAAO;AAAA;AAAA,EAG/F,EAAE,IAAI,yBAAyB,OAAO,iBAAiB,QAAQ,SAAS,UAAU,OAAO;AAAA,EACzF,EAAE,IAAI,yBAAyB,OAAO,iBAAiB,QAAQ,SAAS,UAAU,OAAO;AAAA,EACzF,EAAE,IAAI,yBAAyB,OAAO,iBAAiB,QAAQ,SAAS,UAAU,OAAO;AAAA;AAAA,EAGzF,EAAE,IAAI,kCAAkC,OAAO,0BAA0B,UAAU,aAAa,qBAAqB,KAAK;AAAA,EAC1H,EAAE,IAAI,iCAAiC,OAAO,yBAAyB,UAAU,aAAa,qBAAqB,KAAK;AAC1H;AAEO,MAAM,eAAe,mBAAmB;AAAA,EAC7C,UAAU;AAAA,EACV;AACF,CAAC;AAGM,MAAM,mBAAmB,aAAa;AAK7C,IAAO,iBAAQ;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { createModuleEvents } from "@open-mercato/shared/modules/events";
|
|
2
|
-
const events = [
|
|
3
|
-
// People
|
|
4
|
-
{ id: "customers.people.created", label: "Customer (Person) Created", entity: "people", category: "crud" },
|
|
5
|
-
{ id: "customers.people.updated", label: "Customer (Person) Updated", entity: "people", category: "crud" },
|
|
6
|
-
{ id: "customers.people.deleted", label: "Customer (Person) Deleted", entity: "people", category: "crud" },
|
|
7
|
-
// Companies
|
|
8
|
-
{ id: "customers.companies.created", label: "Customer (Company) Created", entity: "companies", category: "crud" },
|
|
9
|
-
{ id: "customers.companies.updated", label: "Customer (Company) Updated", entity: "companies", category: "crud" },
|
|
10
|
-
{ id: "customers.companies.deleted", label: "Customer (Company) Deleted", entity: "companies", category: "crud" },
|
|
11
|
-
// Deals
|
|
12
|
-
{ id: "customers.deals.created", label: "Deal Created", entity: "deals", category: "crud" },
|
|
13
|
-
{ id: "customers.deals.updated", label: "Deal Updated", entity: "deals", category: "crud" },
|
|
14
|
-
{ id: "customers.deals.deleted", label: "Deal Deleted", entity: "deals", category: "crud" },
|
|
15
|
-
// Comments
|
|
16
|
-
{ id: "customers.comments.created", label: "Comment Created", entity: "comments", category: "crud" },
|
|
17
|
-
{ id: "customers.comments.updated", label: "Comment Updated", entity: "comments", category: "crud" },
|
|
18
|
-
{ id: "customers.comments.deleted", label: "Comment Deleted", entity: "comments", category: "crud" },
|
|
19
|
-
// Addresses
|
|
20
|
-
{ id: "customers.addresses.created", label: "Address Created", entity: "addresses", category: "crud" },
|
|
21
|
-
{ id: "customers.addresses.updated", label: "Address Updated", entity: "addresses", category: "crud" },
|
|
22
|
-
{ id: "customers.addresses.deleted", label: "Address Deleted", entity: "addresses", category: "crud" },
|
|
23
|
-
// Activities
|
|
24
|
-
{ id: "customers.activities.created", label: "Activity Created", entity: "activities", category: "crud" },
|
|
25
|
-
{ id: "customers.activities.updated", label: "Activity Updated", entity: "activities", category: "crud" },
|
|
26
|
-
{ id: "customers.activities.deleted", label: "Activity Deleted", entity: "activities", category: "crud" },
|
|
27
|
-
// Tags
|
|
28
|
-
{ id: "customers.tags.created", label: "Tag Created", entity: "tags", category: "crud" },
|
|
29
|
-
{ id: "customers.tags.updated", label: "Tag Updated", entity: "tags", category: "crud" },
|
|
30
|
-
{ id: "customers.tags.deleted", label: "Tag Deleted", entity: "tags", category: "crud" },
|
|
31
|
-
{ id: "customers.tags.assigned", label: "Tag Assigned", entity: "tags", category: "crud" },
|
|
32
|
-
{ id: "customers.tags.removed", label: "Tag Removed", entity: "tags", category: "crud" },
|
|
33
|
-
// Todos
|
|
34
|
-
{ id: "customers.todos.created", label: "Todo Created", entity: "todos", category: "crud" },
|
|
35
|
-
{ id: "customers.todos.updated", label: "Todo Updated", entity: "todos", category: "crud" },
|
|
36
|
-
{ id: "customers.todos.deleted", label: "Todo Deleted", entity: "todos", category: "crud" }
|
|
37
|
-
];
|
|
38
|
-
const eventsConfig = createModuleEvents({
|
|
39
|
-
moduleId: "customers",
|
|
40
|
-
events
|
|
41
|
-
});
|
|
42
|
-
const emitCustomersEvent = eventsConfig.emit;
|
|
43
|
-
var events_default = eventsConfig;
|
|
44
|
-
export {
|
|
45
|
-
events_default as default,
|
|
46
|
-
emitCustomersEvent,
|
|
47
|
-
eventsConfig
|
|
48
|
-
};
|
|
49
|
-
//# sourceMappingURL=events.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/modules/customers/events.ts"],
|
|
4
|
-
"sourcesContent": ["import { createModuleEvents } from '@open-mercato/shared/modules/events'\n\n/**\n * Customers Module Events\n *\n * Declares all events that can be emitted by the customers module.\n */\nconst events = [\n // People\n { id: 'customers.people.created', label: 'Customer (Person) Created', entity: 'people', category: 'crud' },\n { id: 'customers.people.updated', label: 'Customer (Person) Updated', entity: 'people', category: 'crud' },\n { id: 'customers.people.deleted', label: 'Customer (Person) Deleted', entity: 'people', category: 'crud' },\n\n // Companies\n { id: 'customers.companies.created', label: 'Customer (Company) Created', entity: 'companies', category: 'crud' },\n { id: 'customers.companies.updated', label: 'Customer (Company) Updated', entity: 'companies', category: 'crud' },\n { id: 'customers.companies.deleted', label: 'Customer (Company) Deleted', entity: 'companies', category: 'crud' },\n\n // Deals\n { id: 'customers.deals.created', label: 'Deal Created', entity: 'deals', category: 'crud' },\n { id: 'customers.deals.updated', label: 'Deal Updated', entity: 'deals', category: 'crud' },\n { id: 'customers.deals.deleted', label: 'Deal Deleted', entity: 'deals', category: 'crud' },\n\n // Comments\n { id: 'customers.comments.created', label: 'Comment Created', entity: 'comments', category: 'crud' },\n { id: 'customers.comments.updated', label: 'Comment Updated', entity: 'comments', category: 'crud' },\n { id: 'customers.comments.deleted', label: 'Comment Deleted', entity: 'comments', category: 'crud' },\n\n // Addresses\n { id: 'customers.addresses.created', label: 'Address Created', entity: 'addresses', category: 'crud' },\n { id: 'customers.addresses.updated', label: 'Address Updated', entity: 'addresses', category: 'crud' },\n { id: 'customers.addresses.deleted', label: 'Address Deleted', entity: 'addresses', category: 'crud' },\n\n // Activities\n { id: 'customers.activities.created', label: 'Activity Created', entity: 'activities', category: 'crud' },\n { id: 'customers.activities.updated', label: 'Activity Updated', entity: 'activities', category: 'crud' },\n { id: 'customers.activities.deleted', label: 'Activity Deleted', entity: 'activities', category: 'crud' },\n\n // Tags\n { id: 'customers.tags.created', label: 'Tag Created', entity: 'tags', category: 'crud' },\n { id: 'customers.tags.updated', label: 'Tag Updated', entity: 'tags', category: 'crud' },\n { id: 'customers.tags.deleted', label: 'Tag Deleted', entity: 'tags', category: 'crud' },\n { id: 'customers.tags.assigned', label: 'Tag Assigned', entity: 'tags', category: 'crud' },\n { id: 'customers.tags.removed', label: 'Tag Removed', entity: 'tags', category: 'crud' },\n\n // Todos\n { id: 'customers.todos.created', label: 'Todo Created', entity: 'todos', category: 'crud' },\n { id: 'customers.todos.updated', label: 'Todo Updated', entity: 'todos', category: 'crud' },\n { id: 'customers.todos.deleted', label: 'Todo Deleted', entity: 'todos', category: 'crud' },\n] as const\n\nexport const eventsConfig = createModuleEvents({\n moduleId: 'customers',\n events,\n})\n\n/** Type-safe event emitter for customers module */\nexport const emitCustomersEvent = eventsConfig.emit\n\n/** Event IDs that can be emitted by the customers module */\nexport type CustomersEventId = typeof events[number]['id']\n\nexport default eventsConfig\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,0BAA0B;AAOnC,MAAM,SAAS;AAAA;AAAA,EAEb,EAAE,IAAI,4BAA4B,OAAO,6BAA6B,QAAQ,UAAU,UAAU,OAAO;AAAA,EACzG,EAAE,IAAI,4BAA4B,OAAO,6BAA6B,QAAQ,UAAU,UAAU,OAAO;AAAA,EACzG,EAAE,IAAI,4BAA4B,OAAO,6BAA6B,QAAQ,UAAU,UAAU,OAAO;AAAA;AAAA,EAGzG,EAAE,IAAI,+BAA+B,OAAO,8BAA8B,QAAQ,aAAa,UAAU,OAAO;AAAA,EAChH,EAAE,IAAI,+BAA+B,OAAO,8BAA8B,QAAQ,aAAa,UAAU,OAAO;AAAA,EAChH,EAAE,IAAI,+BAA+B,OAAO,8BAA8B,QAAQ,aAAa,UAAU,OAAO;AAAA;AAAA,EAGhH,EAAE,IAAI,2BAA2B,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EAC1F,EAAE,IAAI,2BAA2B,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EAC1F,EAAE,IAAI,2BAA2B,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA;AAAA,EAG1F,EAAE,IAAI,8BAA8B,OAAO,mBAAmB,QAAQ,YAAY,UAAU,OAAO;AAAA,EACnG,EAAE,IAAI,8BAA8B,OAAO,mBAAmB,QAAQ,YAAY,UAAU,OAAO;AAAA,EACnG,EAAE,IAAI,8BAA8B,OAAO,mBAAmB,QAAQ,YAAY,UAAU,OAAO;AAAA;AAAA,EAGnG,EAAE,IAAI,+BAA+B,OAAO,mBAAmB,QAAQ,aAAa,UAAU,OAAO;AAAA,EACrG,EAAE,IAAI,+BAA+B,OAAO,mBAAmB,QAAQ,aAAa,UAAU,OAAO;AAAA,EACrG,EAAE,IAAI,+BAA+B,OAAO,mBAAmB,QAAQ,aAAa,UAAU,OAAO;AAAA;AAAA,EAGrG,EAAE,IAAI,gCAAgC,OAAO,oBAAoB,QAAQ,cAAc,UAAU,OAAO;AAAA,EACxG,EAAE,IAAI,gCAAgC,OAAO,oBAAoB,QAAQ,cAAc,UAAU,OAAO;AAAA,EACxG,EAAE,IAAI,gCAAgC,OAAO,oBAAoB,QAAQ,cAAc,UAAU,OAAO;AAAA;AAAA,EAGxG,EAAE,IAAI,0BAA0B,OAAO,eAAe,QAAQ,QAAQ,UAAU,OAAO;AAAA,EACvF,EAAE,IAAI,0BAA0B,OAAO,eAAe,QAAQ,QAAQ,UAAU,OAAO;AAAA,EACvF,EAAE,IAAI,0BAA0B,OAAO,eAAe,QAAQ,QAAQ,UAAU,OAAO;AAAA,EACvF,EAAE,IAAI,2BAA2B,OAAO,gBAAgB,QAAQ,QAAQ,UAAU,OAAO;AAAA,EACzF,EAAE,IAAI,0BAA0B,OAAO,eAAe,QAAQ,QAAQ,UAAU,OAAO;AAAA;AAAA,EAGvF,EAAE,IAAI,2BAA2B,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EAC1F,EAAE,IAAI,2BAA2B,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAAA,EAC1F,EAAE,IAAI,2BAA2B,OAAO,gBAAgB,QAAQ,SAAS,UAAU,OAAO;AAC5F;AAEO,MAAM,eAAe,mBAAmB;AAAA,EAC7C,UAAU;AAAA,EACV;AACF,CAAC;AAGM,MAAM,qBAAqB,aAAa;AAK/C,IAAO,iBAAQ;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { createModuleEvents } from "@open-mercato/shared/modules/events";
|
|
2
|
-
const events = [
|
|
3
|
-
// Tenants
|
|
4
|
-
{ id: "directory.tenants.created", label: "Tenant Created", entity: "tenants", category: "crud" },
|
|
5
|
-
{ id: "directory.tenants.updated", label: "Tenant Updated", entity: "tenants", category: "crud" },
|
|
6
|
-
{ id: "directory.tenants.deleted", label: "Tenant Deleted", entity: "tenants", category: "crud" },
|
|
7
|
-
// Organizations
|
|
8
|
-
{ id: "directory.organizations.created", label: "Organization Created", entity: "organizations", category: "crud" },
|
|
9
|
-
{ id: "directory.organizations.updated", label: "Organization Updated", entity: "organizations", category: "crud" },
|
|
10
|
-
{ id: "directory.organizations.deleted", label: "Organization Deleted", entity: "organizations", category: "crud" }
|
|
11
|
-
];
|
|
12
|
-
const eventsConfig = createModuleEvents({
|
|
13
|
-
moduleId: "directory",
|
|
14
|
-
events
|
|
15
|
-
});
|
|
16
|
-
const emitDirectoryEvent = eventsConfig.emit;
|
|
17
|
-
var events_default = eventsConfig;
|
|
18
|
-
export {
|
|
19
|
-
events_default as default,
|
|
20
|
-
emitDirectoryEvent,
|
|
21
|
-
eventsConfig
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=events.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/modules/directory/events.ts"],
|
|
4
|
-
"sourcesContent": ["import { createModuleEvents } from '@open-mercato/shared/modules/events'\n\n/**\n * Directory Module Events\n *\n * Declares all events that can be emitted by the directory module.\n */\nconst events = [\n // Tenants\n { id: 'directory.tenants.created', label: 'Tenant Created', entity: 'tenants', category: 'crud' },\n { id: 'directory.tenants.updated', label: 'Tenant Updated', entity: 'tenants', category: 'crud' },\n { id: 'directory.tenants.deleted', label: 'Tenant Deleted', entity: 'tenants', category: 'crud' },\n\n // Organizations\n { id: 'directory.organizations.created', label: 'Organization Created', entity: 'organizations', category: 'crud' },\n { id: 'directory.organizations.updated', label: 'Organization Updated', entity: 'organizations', category: 'crud' },\n { id: 'directory.organizations.deleted', label: 'Organization Deleted', entity: 'organizations', category: 'crud' },\n] as const\n\nexport const eventsConfig = createModuleEvents({\n moduleId: 'directory',\n events,\n})\n\n/** Type-safe event emitter for directory module */\nexport const emitDirectoryEvent = eventsConfig.emit\n\n/** Event IDs that can be emitted by the directory module */\nexport type DirectoryEventId = typeof events[number]['id']\n\nexport default eventsConfig\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,0BAA0B;AAOnC,MAAM,SAAS;AAAA;AAAA,EAEb,EAAE,IAAI,6BAA6B,OAAO,kBAAkB,QAAQ,WAAW,UAAU,OAAO;AAAA,EAChG,EAAE,IAAI,6BAA6B,OAAO,kBAAkB,QAAQ,WAAW,UAAU,OAAO;AAAA,EAChG,EAAE,IAAI,6BAA6B,OAAO,kBAAkB,QAAQ,WAAW,UAAU,OAAO;AAAA;AAAA,EAGhG,EAAE,IAAI,mCAAmC,OAAO,wBAAwB,QAAQ,iBAAiB,UAAU,OAAO;AAAA,EAClH,EAAE,IAAI,mCAAmC,OAAO,wBAAwB,QAAQ,iBAAiB,UAAU,OAAO;AAAA,EAClH,EAAE,IAAI,mCAAmC,OAAO,wBAAwB,QAAQ,iBAAiB,UAAU,OAAO;AACpH;AAEO,MAAM,eAAe,mBAAmB;AAAA,EAC7C,UAAU;AAAA,EACV;AACF,CAAC;AAGM,MAAM,qBAAqB,aAAa;AAK/C,IAAO,iBAAQ;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { createModuleEvents } from "@open-mercato/shared/modules/events";
|
|
2
|
-
const events = [
|
|
3
|
-
// Orders
|
|
4
|
-
{ id: "sales.orders.created", label: "Sales Order Created", entity: "orders", category: "crud" },
|
|
5
|
-
{ id: "sales.orders.updated", label: "Sales Order Updated", entity: "orders", category: "crud" },
|
|
6
|
-
{ id: "sales.orders.deleted", label: "Sales Order Deleted", entity: "orders", category: "crud" },
|
|
7
|
-
// Quotes
|
|
8
|
-
{ id: "sales.quotes.created", label: "Quote Created", entity: "quotes", category: "crud" },
|
|
9
|
-
{ id: "sales.quotes.updated", label: "Quote Updated", entity: "quotes", category: "crud" },
|
|
10
|
-
{ id: "sales.quotes.deleted", label: "Quote Deleted", entity: "quotes", category: "crud" },
|
|
11
|
-
// Invoices
|
|
12
|
-
{ id: "sales.invoices.created", label: "Invoice Created", entity: "invoices", category: "crud" },
|
|
13
|
-
{ id: "sales.invoices.updated", label: "Invoice Updated", entity: "invoices", category: "crud" },
|
|
14
|
-
{ id: "sales.invoices.deleted", label: "Invoice Deleted", entity: "invoices", category: "crud" },
|
|
15
|
-
// Order Lines
|
|
16
|
-
{ id: "sales.lines.created", label: "Order Line Created", entity: "lines", category: "crud" },
|
|
17
|
-
{ id: "sales.lines.updated", label: "Order Line Updated", entity: "lines", category: "crud" },
|
|
18
|
-
{ id: "sales.lines.deleted", label: "Order Line Deleted", entity: "lines", category: "crud" },
|
|
19
|
-
// Payments
|
|
20
|
-
{ id: "sales.payments.created", label: "Payment Created", entity: "payments", category: "crud" },
|
|
21
|
-
{ id: "sales.payments.updated", label: "Payment Updated", entity: "payments", category: "crud" },
|
|
22
|
-
{ id: "sales.payments.deleted", label: "Payment Deleted", entity: "payments", category: "crud" },
|
|
23
|
-
// Shipments
|
|
24
|
-
{ id: "sales.shipments.created", label: "Shipment Created", entity: "shipments", category: "crud" },
|
|
25
|
-
{ id: "sales.shipments.updated", label: "Shipment Updated", entity: "shipments", category: "crud" },
|
|
26
|
-
{ id: "sales.shipments.deleted", label: "Shipment Deleted", entity: "shipments", category: "crud" },
|
|
27
|
-
// Notes
|
|
28
|
-
{ id: "sales.notes.created", label: "Note Created", entity: "notes", category: "crud" },
|
|
29
|
-
{ id: "sales.notes.updated", label: "Note Updated", entity: "notes", category: "crud" },
|
|
30
|
-
{ id: "sales.notes.deleted", label: "Note Deleted", entity: "notes", category: "crud" },
|
|
31
|
-
// Configuration
|
|
32
|
-
{ id: "sales.configuration.created", label: "Configuration Created", entity: "configuration", category: "crud" },
|
|
33
|
-
{ id: "sales.configuration.updated", label: "Configuration Updated", entity: "configuration", category: "crud" },
|
|
34
|
-
{ id: "sales.configuration.deleted", label: "Configuration Deleted", entity: "configuration", category: "crud" },
|
|
35
|
-
// Lifecycle events - Document calculations
|
|
36
|
-
{ id: "sales.document.totals.calculated", label: "Document Totals Calculated", category: "lifecycle" },
|
|
37
|
-
{ id: "sales.document.calculate.before", label: "Before Document Calculate", category: "lifecycle", excludeFromTriggers: true },
|
|
38
|
-
{ id: "sales.document.calculate.after", label: "After Document Calculate", category: "lifecycle", excludeFromTriggers: true },
|
|
39
|
-
// Lifecycle events - Line calculations
|
|
40
|
-
{ id: "sales.line.calculate.before", label: "Before Line Calculate", category: "lifecycle", excludeFromTriggers: true },
|
|
41
|
-
{ id: "sales.line.calculate.after", label: "After Line Calculate", category: "lifecycle", excludeFromTriggers: true },
|
|
42
|
-
// Lifecycle events - Tax calculations
|
|
43
|
-
{ id: "sales.tax.calculate.before", label: "Before Tax Calculate", category: "lifecycle", excludeFromTriggers: true },
|
|
44
|
-
{ id: "sales.tax.calculate.after", label: "After Tax Calculate", category: "lifecycle", excludeFromTriggers: true },
|
|
45
|
-
// Lifecycle events - Shipping adjustments
|
|
46
|
-
{ id: "sales.shipping.adjustments.apply.before", label: "Before Shipping Adjustments", category: "lifecycle", excludeFromTriggers: true },
|
|
47
|
-
{ id: "sales.shipping.adjustments.apply.after", label: "After Shipping Adjustments", category: "lifecycle", excludeFromTriggers: true },
|
|
48
|
-
// Lifecycle events - Payment adjustments
|
|
49
|
-
{ id: "sales.payment.adjustments.apply.before", label: "Before Payment Adjustments", category: "lifecycle", excludeFromTriggers: true },
|
|
50
|
-
{ id: "sales.payment.adjustments.apply.after", label: "After Payment Adjustments", category: "lifecycle", excludeFromTriggers: true }
|
|
51
|
-
];
|
|
52
|
-
const eventsConfig = createModuleEvents({
|
|
53
|
-
moduleId: "sales",
|
|
54
|
-
events
|
|
55
|
-
});
|
|
56
|
-
const emitSalesEvent = eventsConfig.emit;
|
|
57
|
-
var events_default = eventsConfig;
|
|
58
|
-
export {
|
|
59
|
-
events_default as default,
|
|
60
|
-
emitSalesEvent,
|
|
61
|
-
eventsConfig
|
|
62
|
-
};
|
|
63
|
-
//# sourceMappingURL=events.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/modules/sales/events.ts"],
|
|
4
|
-
"sourcesContent": ["import { createModuleEvents } from '@open-mercato/shared/modules/events'\n\n/**\n * Sales Module Events\n *\n * Declares all events that can be emitted by the sales module.\n */\nconst events = [\n // Orders\n { id: 'sales.orders.created', label: 'Sales Order Created', entity: 'orders', category: 'crud' },\n { id: 'sales.orders.updated', label: 'Sales Order Updated', entity: 'orders', category: 'crud' },\n { id: 'sales.orders.deleted', label: 'Sales Order Deleted', entity: 'orders', category: 'crud' },\n\n // Quotes\n { id: 'sales.quotes.created', label: 'Quote Created', entity: 'quotes', category: 'crud' },\n { id: 'sales.quotes.updated', label: 'Quote Updated', entity: 'quotes', category: 'crud' },\n { id: 'sales.quotes.deleted', label: 'Quote Deleted', entity: 'quotes', category: 'crud' },\n\n // Invoices\n { id: 'sales.invoices.created', label: 'Invoice Created', entity: 'invoices', category: 'crud' },\n { id: 'sales.invoices.updated', label: 'Invoice Updated', entity: 'invoices', category: 'crud' },\n { id: 'sales.invoices.deleted', label: 'Invoice Deleted', entity: 'invoices', category: 'crud' },\n\n // Order Lines\n { id: 'sales.lines.created', label: 'Order Line Created', entity: 'lines', category: 'crud' },\n { id: 'sales.lines.updated', label: 'Order Line Updated', entity: 'lines', category: 'crud' },\n { id: 'sales.lines.deleted', label: 'Order Line Deleted', entity: 'lines', category: 'crud' },\n\n // Payments\n { id: 'sales.payments.created', label: 'Payment Created', entity: 'payments', category: 'crud' },\n { id: 'sales.payments.updated', label: 'Payment Updated', entity: 'payments', category: 'crud' },\n { id: 'sales.payments.deleted', label: 'Payment Deleted', entity: 'payments', category: 'crud' },\n\n // Shipments\n { id: 'sales.shipments.created', label: 'Shipment Created', entity: 'shipments', category: 'crud' },\n { id: 'sales.shipments.updated', label: 'Shipment Updated', entity: 'shipments', category: 'crud' },\n { id: 'sales.shipments.deleted', label: 'Shipment Deleted', entity: 'shipments', category: 'crud' },\n\n // Notes\n { id: 'sales.notes.created', label: 'Note Created', entity: 'notes', category: 'crud' },\n { id: 'sales.notes.updated', label: 'Note Updated', entity: 'notes', category: 'crud' },\n { id: 'sales.notes.deleted', label: 'Note Deleted', entity: 'notes', category: 'crud' },\n\n // Configuration\n { id: 'sales.configuration.created', label: 'Configuration Created', entity: 'configuration', category: 'crud' },\n { id: 'sales.configuration.updated', label: 'Configuration Updated', entity: 'configuration', category: 'crud' },\n { id: 'sales.configuration.deleted', label: 'Configuration Deleted', entity: 'configuration', category: 'crud' },\n\n // Lifecycle events - Document calculations\n { id: 'sales.document.totals.calculated', label: 'Document Totals Calculated', category: 'lifecycle' },\n { id: 'sales.document.calculate.before', label: 'Before Document Calculate', category: 'lifecycle', excludeFromTriggers: true },\n { id: 'sales.document.calculate.after', label: 'After Document Calculate', category: 'lifecycle', excludeFromTriggers: true },\n\n // Lifecycle events - Line calculations\n { id: 'sales.line.calculate.before', label: 'Before Line Calculate', category: 'lifecycle', excludeFromTriggers: true },\n { id: 'sales.line.calculate.after', label: 'After Line Calculate', category: 'lifecycle', excludeFromTriggers: true },\n\n // Lifecycle events - Tax calculations\n { id: 'sales.tax.calculate.before', label: 'Before Tax Calculate', category: 'lifecycle', excludeFromTriggers: true },\n { id: 'sales.tax.calculate.after', label: 'After Tax Calculate', category: 'lifecycle', excludeFromTriggers: true },\n\n // Lifecycle events - Shipping adjustments\n { id: 'sales.shipping.adjustments.apply.before', label: 'Before Shipping Adjustments', category: 'lifecycle', excludeFromTriggers: true },\n { id: 'sales.shipping.adjustments.apply.after', label: 'After Shipping Adjustments', category: 'lifecycle', excludeFromTriggers: true },\n\n // Lifecycle events - Payment adjustments\n { id: 'sales.payment.adjustments.apply.before', label: 'Before Payment Adjustments', category: 'lifecycle', excludeFromTriggers: true },\n { id: 'sales.payment.adjustments.apply.after', label: 'After Payment Adjustments', category: 'lifecycle', excludeFromTriggers: true },\n] as const\n\nexport const eventsConfig = createModuleEvents({\n moduleId: 'sales',\n events,\n})\n\n/** Type-safe event emitter for sales module */\nexport const emitSalesEvent = eventsConfig.emit\n\n/** Event IDs that can be emitted by the sales module */\nexport type SalesEventId = typeof events[number]['id']\n\nexport default eventsConfig\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
const SALES_DOCUMENT_DATA_REFRESH_EVENT = "sales:document:data:refresh";
|
|
3
|
-
function emitSalesDocumentDataRefresh(detail) {
|
|
4
|
-
if (typeof window === "undefined" || typeof CustomEvent === "undefined") return;
|
|
5
|
-
window.dispatchEvent(
|
|
6
|
-
new CustomEvent(SALES_DOCUMENT_DATA_REFRESH_EVENT, { detail })
|
|
7
|
-
);
|
|
8
|
-
}
|
|
9
|
-
function subscribeSalesDocumentDataRefresh(handler) {
|
|
10
|
-
if (typeof window === "undefined") return () => {
|
|
11
|
-
};
|
|
12
|
-
const listener = (event) => {
|
|
13
|
-
const detail = event.detail;
|
|
14
|
-
if (!detail) return;
|
|
15
|
-
handler(detail);
|
|
16
|
-
};
|
|
17
|
-
window.addEventListener(SALES_DOCUMENT_DATA_REFRESH_EVENT, listener);
|
|
18
|
-
return () => window.removeEventListener(SALES_DOCUMENT_DATA_REFRESH_EVENT, listener);
|
|
19
|
-
}
|
|
20
|
-
export {
|
|
21
|
-
SALES_DOCUMENT_DATA_REFRESH_EVENT,
|
|
22
|
-
emitSalesDocumentDataRefresh,
|
|
23
|
-
subscribeSalesDocumentDataRefresh
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=documentDataEvents.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../../src/modules/sales/lib/frontend/documentDataEvents.ts"],
|
|
4
|
-
"sourcesContent": ["\"use client\"\n\nexport const SALES_DOCUMENT_DATA_REFRESH_EVENT = 'sales:document:data:refresh'\n\nexport type SalesDocumentDataRefreshDetail = {\n documentId: string\n kind?: 'order' | 'quote'\n}\n\nexport function emitSalesDocumentDataRefresh(detail: SalesDocumentDataRefreshDetail): void {\n if (typeof window === 'undefined' || typeof CustomEvent === 'undefined') return\n window.dispatchEvent(\n new CustomEvent<SalesDocumentDataRefreshDetail>(SALES_DOCUMENT_DATA_REFRESH_EVENT, { detail }),\n )\n}\n\nexport function subscribeSalesDocumentDataRefresh(\n handler: (detail: SalesDocumentDataRefreshDetail) => void,\n): () => void {\n if (typeof window === 'undefined') return () => {}\n const listener = (event: Event) => {\n const detail = (event as CustomEvent<SalesDocumentDataRefreshDetail>).detail\n if (!detail) return\n handler(detail)\n }\n window.addEventListener(SALES_DOCUMENT_DATA_REFRESH_EVENT, listener as EventListener)\n return () => window.removeEventListener(SALES_DOCUMENT_DATA_REFRESH_EVENT, listener as EventListener)\n}\n"],
|
|
5
|
-
"mappings": ";AAEO,MAAM,oCAAoC;AAO1C,SAAS,6BAA6B,QAA8C;AACzF,MAAI,OAAO,WAAW,eAAe,OAAO,gBAAgB,YAAa;AACzE,SAAO;AAAA,IACL,IAAI,YAA4C,mCAAmC,EAAE,OAAO,CAAC;AAAA,EAC/F;AACF;AAEO,SAAS,kCACd,SACY;AACZ,MAAI,OAAO,WAAW,YAAa,QAAO,MAAM;AAAA,EAAC;AACjD,QAAM,WAAW,CAAC,UAAiB;AACjC,UAAM,SAAU,MAAsD;AACtE,QAAI,CAAC,OAAQ;AACb,YAAQ,MAAM;AAAA,EAChB;AACA,SAAO,iBAAiB,mCAAmC,QAAyB;AACpF,SAAO,MAAM,OAAO,oBAAoB,mCAAmC,QAAyB;AACtG;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|