@camstack/core 0.1.15 → 0.1.17
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/addon/addon-api-factory.d.ts +36 -0
- package/dist/addon/addon-api-factory.d.ts.map +1 -0
- package/dist/addon-routes/addon-route-registry.d.ts +38 -0
- package/dist/addon-routes/addon-route-registry.d.ts.map +1 -0
- package/dist/auth/api-key-manager.d.ts +27 -0
- package/dist/auth/api-key-manager.d.ts.map +1 -0
- package/dist/auth/auth-manager.d.ts +47 -0
- package/dist/auth/auth-manager.d.ts.map +1 -0
- package/dist/auth/parse-record.d.ts +19 -0
- package/dist/auth/parse-record.d.ts.map +1 -0
- package/dist/auth/scoped-token-manager.d.ts +18 -0
- package/dist/auth/scoped-token-manager.d.ts.map +1 -0
- package/dist/auth/user-manager.d.ts +34 -0
- package/dist/auth/user-manager.d.ts.map +1 -0
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -0
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts.map +1 -0
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +223 -217
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js.map +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +216 -7
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs.map +1 -1
- package/dist/builtins/addon-pages-aggregator/index.d.ts +2 -0
- package/dist/builtins/addon-pages-aggregator/index.d.ts.map +1 -0
- package/dist/builtins/addon-pages-aggregator/index.js +6 -221
- package/dist/builtins/addon-pages-aggregator/index.mjs +2 -9
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +33 -0
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts.map +1 -0
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +199 -197
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js.map +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +192 -7
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs.map +1 -1
- package/dist/builtins/addon-widgets-aggregator/index.d.ts +2 -0
- package/dist/builtins/addon-widgets-aggregator/index.d.ts.map +1 -0
- package/dist/builtins/addon-widgets-aggregator/index.js +6 -201
- package/dist/builtins/addon-widgets-aggregator/index.mjs +2 -9
- package/dist/builtins/alerts/alerts.addon.d.ts +82 -0
- package/dist/builtins/alerts/alerts.addon.d.ts.map +1 -0
- package/dist/builtins/alerts/alerts.addon.js +590 -430
- package/dist/builtins/alerts/alerts.addon.js.map +1 -1
- package/dist/builtins/alerts/alerts.addon.mjs +595 -7
- package/dist/builtins/alerts/alerts.addon.mjs.map +1 -1
- package/dist/builtins/alerts/index.d.ts +2 -0
- package/dist/builtins/alerts/index.d.ts.map +1 -0
- package/dist/builtins/alerts/index.js +3 -443
- package/dist/builtins/alerts/index.mjs +2 -8
- package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.d.ts +8 -0
- package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.d.ts.map +1 -0
- package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.js +56 -0
- package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.js.map +1 -0
- package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.mjs +50 -0
- package/dist/builtins/auth-orchestrator/auth-orchestrator.addon.mjs.map +1 -0
- package/dist/builtins/auth-orchestrator/index.d.ts +2 -0
- package/dist/builtins/auth-orchestrator/index.d.ts.map +1 -0
- package/dist/builtins/auth-orchestrator/index.js +7 -0
- package/dist/builtins/auth-orchestrator/index.mjs +2 -0
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +148 -0
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts.map +1 -0
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +7639 -0
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js.map +1 -0
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +7627 -0
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs.map +1 -0
- package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +24 -0
- package/dist/builtins/backup-orchestrator/cron-helpers.d.ts.map +1 -0
- package/dist/builtins/backup-orchestrator/destination-policy.d.ts +73 -0
- package/dist/builtins/backup-orchestrator/destination-policy.d.ts.map +1 -0
- package/dist/builtins/backup-orchestrator/download-helpers.d.ts +13 -0
- package/dist/builtins/backup-orchestrator/download-helpers.d.ts.map +1 -0
- package/dist/builtins/backup-orchestrator/index.d.ts +3 -0
- package/dist/builtins/backup-orchestrator/index.d.ts.map +1 -0
- package/dist/builtins/backup-orchestrator/index.js +7 -0
- package/dist/builtins/backup-orchestrator/index.mjs +2 -0
- package/dist/builtins/backup-orchestrator/manifest-store.d.ts +78 -0
- package/dist/builtins/backup-orchestrator/manifest-store.d.ts.map +1 -0
- package/dist/builtins/console-logging/console-destination.d.ts +14 -0
- package/dist/builtins/console-logging/console-destination.d.ts.map +1 -0
- package/dist/builtins/console-logging/console-logging.addon.d.ts +26 -0
- package/dist/builtins/console-logging/console-logging.addon.d.ts.map +1 -0
- package/dist/builtins/console-logging/index.d.ts +4 -0
- package/dist/builtins/console-logging/index.d.ts.map +1 -0
- package/dist/builtins/console-logging/index.js +99 -235
- package/dist/builtins/console-logging/index.js.map +1 -1
- package/dist/builtins/console-logging/index.mjs +95 -9
- package/dist/builtins/console-logging/index.mjs.map +1 -1
- package/dist/builtins/device-manager/device-event-propagator.d.ts +27 -0
- package/dist/builtins/device-manager/device-event-propagator.d.ts.map +1 -0
- package/dist/builtins/device-manager/device-manager.addon.d.ts +259 -0
- package/dist/builtins/device-manager/device-manager.addon.d.ts.map +1 -0
- package/dist/builtins/device-manager/device-manager.addon.js +2125 -2127
- package/dist/builtins/device-manager/device-manager.addon.js.map +1 -1
- package/dist/builtins/device-manager/device-manager.addon.mjs +2145 -7
- package/dist/builtins/device-manager/device-manager.addon.mjs.map +1 -1
- package/dist/builtins/device-manager/index.d.ts +3 -0
- package/dist/builtins/device-manager/index.d.ts.map +1 -0
- package/dist/builtins/device-manager/index.js +6 -2156
- package/dist/builtins/device-manager/index.mjs +2 -10
- package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +45 -0
- package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts.map +1 -0
- package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +16 -0
- package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts.map +1 -0
- package/dist/builtins/hub-forwarder/index.d.ts +4 -0
- package/dist/builtins/hub-forwarder/index.d.ts.map +1 -0
- package/dist/builtins/hub-forwarder/index.js +150 -291
- package/dist/builtins/hub-forwarder/index.js.map +1 -1
- package/dist/builtins/hub-forwarder/index.mjs +145 -9
- package/dist/builtins/hub-forwarder/index.mjs.map +1 -1
- package/dist/builtins/local-auth/auth-schema.d.ts +12 -0
- package/dist/builtins/local-auth/auth-schema.d.ts.map +1 -0
- package/dist/builtins/local-auth/index.d.ts +2 -0
- package/dist/builtins/local-auth/index.d.ts.map +1 -0
- package/dist/builtins/local-auth/index.js +3 -623
- package/dist/builtins/local-auth/index.mjs +2 -8
- package/dist/builtins/local-auth/local-auth.addon.d.ts +17 -0
- package/dist/builtins/local-auth/local-auth.addon.d.ts.map +1 -0
- package/dist/builtins/local-auth/local-auth.addon.js +6861 -589
- package/dist/builtins/local-auth/local-auth.addon.js.map +1 -1
- package/dist/builtins/local-auth/local-auth.addon.mjs +6883 -7
- package/dist/builtins/local-auth/local-auth.addon.mjs.map +1 -1
- package/dist/builtins/local-network/index.d.ts +3 -0
- package/dist/builtins/local-network/index.d.ts.map +1 -0
- package/dist/builtins/local-network/index.js +9 -0
- package/dist/builtins/local-network/index.mjs +2 -0
- package/dist/builtins/local-network/local-network.addon.d.ts +110 -0
- package/dist/builtins/local-network/local-network.addon.d.ts.map +1 -0
- package/dist/builtins/local-network/local-network.addon.js +399 -0
- package/dist/builtins/local-network/local-network.addon.js.map +1 -0
- package/dist/builtins/local-network/local-network.addon.mjs +387 -0
- package/dist/builtins/local-network/local-network.addon.mjs.map +1 -0
- package/dist/builtins/mesh-orchestrator/index.d.ts +2 -0
- package/dist/builtins/mesh-orchestrator/index.d.ts.map +1 -0
- package/dist/builtins/mesh-orchestrator/index.js +7 -0
- package/dist/builtins/mesh-orchestrator/index.mjs +2 -0
- package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.d.ts +9 -0
- package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.d.ts.map +1 -0
- package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.js +83 -0
- package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.js.map +1 -0
- package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.mjs +77 -0
- package/dist/builtins/mesh-orchestrator/mesh-orchestrator.addon.mjs.map +1 -0
- package/dist/builtins/native-metrics/index.d.ts +3 -0
- package/dist/builtins/native-metrics/index.d.ts.map +1 -0
- package/dist/builtins/native-metrics/native-metrics-provider.d.ts +49 -0
- package/dist/builtins/native-metrics/native-metrics-provider.d.ts.map +1 -0
- package/dist/builtins/native-metrics/native-metrics.addon.d.ts +74 -0
- package/dist/builtins/native-metrics/native-metrics.addon.d.ts.map +1 -0
- package/dist/builtins/native-metrics/native-metrics.addon.js +887 -861
- package/dist/builtins/native-metrics/native-metrics.addon.js.map +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.mjs +914 -5
- package/dist/builtins/native-metrics/native-metrics.addon.mjs.map +1 -1
- package/dist/builtins/platform-probe/index.d.ts +12 -0
- package/dist/builtins/platform-probe/index.d.ts.map +1 -0
- package/dist/builtins/platform-probe/index.js +539 -0
- package/dist/builtins/platform-probe/index.js.map +1 -0
- package/dist/builtins/platform-probe/index.mjs +530 -0
- package/dist/builtins/platform-probe/index.mjs.map +1 -0
- package/dist/builtins/platform-probe/inference-config-resolver.d.ts +30 -0
- package/dist/builtins/platform-probe/inference-config-resolver.d.ts.map +1 -0
- package/dist/builtins/platform-probe/platform-scorer.d.ts +22 -0
- package/dist/builtins/platform-probe/platform-scorer.d.ts.map +1 -0
- package/dist/builtins/remote-access-orchestrator/index.d.ts +2 -0
- package/dist/builtins/remote-access-orchestrator/index.d.ts.map +1 -0
- package/dist/builtins/remote-access-orchestrator/index.js +7 -0
- package/dist/builtins/remote-access-orchestrator/index.mjs +2 -0
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +9 -0
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts.map +1 -0
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +72 -0
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js.map +1 -0
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +66 -0
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs.map +1 -0
- package/dist/builtins/snapshot/index.d.ts +3 -0
- package/dist/builtins/snapshot/index.d.ts.map +1 -0
- package/dist/builtins/snapshot/index.js +481 -491
- package/dist/builtins/snapshot/index.js.map +1 -1
- package/dist/builtins/snapshot/index.mjs +475 -464
- package/dist/builtins/snapshot/index.mjs.map +1 -1
- package/dist/builtins/snapshot/snapshot.addon.d.ts +121 -0
- package/dist/builtins/snapshot/snapshot.addon.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/config-store.d.ts +9 -0
- package/dist/builtins/sqlite-storage/config-store.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/device-store.d.ts +24 -0
- package/dist/builtins/sqlite-storage/device-store.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +87 -0
- package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +32 -0
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +312 -56
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js.map +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +305 -7
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs.map +1 -1
- package/dist/builtins/sqlite-storage/index.d.ts +12 -0
- package/dist/builtins/sqlite-storage/index.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/index.js +229 -1001
- package/dist/builtins/sqlite-storage/index.js.map +1 -1
- package/dist/builtins/sqlite-storage/index.mjs +268 -26
- package/dist/builtins/sqlite-storage/index.mjs.map +1 -1
- package/dist/builtins/sqlite-storage/integration-registry.d.ts +28 -0
- package/dist/builtins/sqlite-storage/integration-registry.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/settings-store.d.ts +40 -0
- package/dist/builtins/sqlite-storage/settings-store.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/sql-schema.d.ts +33 -0
- package/dist/builtins/sqlite-storage/sql-schema.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +94 -0
- package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +15 -0
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts.map +1 -0
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +586 -653
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js.map +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +582 -7
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs.map +1 -1
- package/dist/builtins/storage-orchestrator/index.d.ts +7 -0
- package/dist/builtins/storage-orchestrator/index.d.ts.map +1 -0
- package/dist/builtins/storage-orchestrator/index.js +9 -0
- package/dist/builtins/storage-orchestrator/index.mjs +2 -0
- package/dist/builtins/storage-orchestrator/location-store.d.ts +50 -0
- package/dist/builtins/storage-orchestrator/location-store.d.ts.map +1 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +60 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts.map +1 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +755 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js.map +1 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +746 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs.map +1 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +121 -0
- package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts.map +1 -0
- package/dist/builtins/system-backup/system-backup.service.d.ts +138 -0
- package/dist/builtins/system-backup/system-backup.service.d.ts.map +1 -0
- package/dist/builtins/system-config/index.d.ts +2 -0
- package/dist/builtins/system-config/index.d.ts.map +1 -0
- package/dist/builtins/system-config/index.js +6 -188
- package/dist/builtins/system-config/index.mjs +2 -10
- package/dist/builtins/system-config/system-config.addon.d.ts +11 -0
- package/dist/builtins/system-config/system-config.addon.d.ts.map +1 -0
- package/dist/builtins/system-config/system-config.addon.js +227 -180
- package/dist/builtins/system-config/system-config.addon.js.map +1 -1
- package/dist/builtins/system-config/system-config.addon.mjs +226 -7
- package/dist/builtins/system-config/system-config.addon.mjs.map +1 -1
- package/dist/builtins/turn-orchestrator/index.d.ts +2 -0
- package/dist/builtins/turn-orchestrator/index.d.ts.map +1 -0
- package/dist/builtins/turn-orchestrator/index.js +7 -0
- package/dist/builtins/turn-orchestrator/index.mjs +2 -0
- package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.d.ts +10 -0
- package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.d.ts.map +1 -0
- package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.js +78 -0
- package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.js.map +1 -0
- package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.mjs +72 -0
- package/dist/builtins/turn-orchestrator/turn-orchestrator.addon.mjs.map +1 -0
- package/dist/builtins/winston-logging/index.d.ts +4 -0
- package/dist/builtins/winston-logging/index.d.ts.map +1 -0
- package/dist/builtins/winston-logging/index.js +153 -300
- package/dist/builtins/winston-logging/index.js.map +1 -1
- package/dist/builtins/winston-logging/index.mjs +144 -9
- package/dist/builtins/winston-logging/index.mjs.map +1 -1
- package/dist/builtins/winston-logging/winston-destination.d.ts +22 -0
- package/dist/builtins/winston-logging/winston-destination.d.ts.map +1 -0
- package/dist/builtins/winston-logging/winston-logging.addon.d.ts +20 -0
- package/dist/builtins/winston-logging/winston-logging.addon.d.ts.map +1 -0
- package/dist/chunk-C13QxCFV.js +50 -0
- package/dist/chunk-hT5z_Zn9.mjs +35 -0
- package/dist/download/model-download-service.d.ts +42 -0
- package/dist/download/model-download-service.d.ts.map +1 -0
- package/dist/download/model-downloader.d.ts +32 -0
- package/dist/download/model-downloader.d.ts.map +1 -0
- package/dist/events/event-bus.d.ts +11 -0
- package/dist/events/event-bus.d.ts.map +1 -0
- package/dist/events/system-event-bus.d.ts +15 -0
- package/dist/events/system-event-bus.d.ts.map +1 -0
- package/dist/feature/feature-manager.d.ts +12 -0
- package/dist/feature/feature-manager.d.ts.map +1 -0
- package/dist/formatter-C-5An4Bl.mjs +164 -0
- package/dist/formatter-C-5An4Bl.mjs.map +1 -0
- package/dist/formatter-Dr_6NNZc.js +169 -0
- package/dist/formatter-Dr_6NNZc.js.map +1 -0
- package/dist/index.d.ts +76 -1696
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7780 -8035
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +7707 -2148
- package/dist/index.mjs.map +1 -1
- package/dist/lifecycle/lifecycle-state-machine.d.ts +29 -0
- package/dist/lifecycle/lifecycle-state-machine.d.ts.map +1 -0
- package/dist/logging/formatter.d.ts +31 -0
- package/dist/logging/formatter.d.ts.map +1 -0
- package/dist/logging/log-manager.d.ts +52 -0
- package/dist/logging/log-manager.d.ts.map +1 -0
- package/dist/logging/log-ring-buffer.d.ts +48 -0
- package/dist/logging/log-ring-buffer.d.ts.map +1 -0
- package/dist/logging/scoped-logger.d.ts +18 -0
- package/dist/logging/scoped-logger.d.ts.map +1 -0
- package/dist/network/network-quality.d.ts +12 -0
- package/dist/network/network-quality.d.ts.map +1 -0
- package/dist/notification/notification-service.d.ts +38 -0
- package/dist/notification/notification-service.d.ts.map +1 -0
- package/dist/notification/toast-service.d.ts +23 -0
- package/dist/notification/toast-service.d.ts.map +1 -0
- package/dist/pipeline/engine-manager-resolver.d.ts +16 -0
- package/dist/pipeline/engine-manager-resolver.d.ts.map +1 -0
- package/dist/pipeline/pipeline-runner.d.ts +9 -0
- package/dist/pipeline/pipeline-runner.d.ts.map +1 -0
- package/dist/pipeline/pipeline-validator.d.ts +14 -0
- package/dist/pipeline/pipeline-validator.d.ts.map +1 -0
- package/dist/process/resource-monitor.d.ts +12 -0
- package/dist/process/resource-monitor.d.ts.map +1 -0
- package/dist/python/python-env-manager.d.ts +13 -0
- package/dist/python/python-env-manager.d.ts.map +1 -0
- package/dist/repl/interfaces.d.ts +32 -0
- package/dist/repl/interfaces.d.ts.map +1 -0
- package/dist/repl/repl-engine.d.ts +9 -0
- package/dist/repl/repl-engine.d.ts.map +1 -0
- package/dist/resource-monitor-CmuWlmap.js +76 -0
- package/dist/resource-monitor-CmuWlmap.js.map +1 -0
- package/dist/resource-monitor-DcQdKGYU.mjs +59 -0
- package/dist/resource-monitor-DcQdKGYU.mjs.map +1 -0
- package/dist/storage/fs-storage-backend.d.ts +41 -0
- package/dist/storage/fs-storage-backend.d.ts.map +1 -0
- package/dist/storage/storage-location-manager.d.ts +24 -0
- package/dist/storage/storage-location-manager.d.ts.map +1 -0
- package/dist/storage/storage-manager.d.ts +77 -0
- package/dist/storage/storage-manager.d.ts.map +1 -0
- package/dist/tls/cert-manager.d.ts +27 -0
- package/dist/tls/cert-manager.d.ts.map +1 -0
- package/dist/tls/index.d.ts +2 -0
- package/dist/tls/index.d.ts.map +1 -0
- package/package.json +119 -23
- package/dist/builtins/addon-pages-aggregator/index.js.map +0 -1
- package/dist/builtins/addon-pages-aggregator/index.mjs.map +0 -1
- package/dist/builtins/addon-widgets-aggregator/index.js.map +0 -1
- package/dist/builtins/addon-widgets-aggregator/index.mjs.map +0 -1
- package/dist/builtins/alerts/index.js.map +0 -1
- package/dist/builtins/alerts/index.mjs.map +0 -1
- package/dist/builtins/device-manager/index.js.map +0 -1
- package/dist/builtins/device-manager/index.mjs.map +0 -1
- package/dist/builtins/local-auth/index.js.map +0 -1
- package/dist/builtins/local-auth/index.mjs.map +0 -1
- package/dist/builtins/local-backup/index.js +0 -173
- package/dist/builtins/local-backup/index.js.map +0 -1
- package/dist/builtins/local-backup/index.mjs +0 -10
- package/dist/builtins/local-backup/index.mjs.map +0 -1
- package/dist/builtins/system-config/index.js.map +0 -1
- package/dist/builtins/system-config/index.mjs.map +0 -1
- package/dist/chunk-2CIYKDRN.mjs +0 -1
- package/dist/chunk-2CIYKDRN.mjs.map +0 -1
- package/dist/chunk-2F76X6NL.mjs +0 -136
- package/dist/chunk-2F76X6NL.mjs.map +0 -1
- package/dist/chunk-2QUFBZ7M.mjs +0 -1
- package/dist/chunk-2QUFBZ7M.mjs.map +0 -1
- package/dist/chunk-3BK2Y7GY.mjs +0 -593
- package/dist/chunk-3BK2Y7GY.mjs.map +0 -1
- package/dist/chunk-4OOHFJHT.mjs +0 -421
- package/dist/chunk-4OOHFJHT.mjs.map +0 -1
- package/dist/chunk-4XHB7IHT.mjs +0 -809
- package/dist/chunk-4XHB7IHT.mjs.map +0 -1
- package/dist/chunk-6M2HSSTQ.mjs +0 -98
- package/dist/chunk-6M2HSSTQ.mjs.map +0 -1
- package/dist/chunk-7FI7SQS7.mjs +0 -135
- package/dist/chunk-7FI7SQS7.mjs.map +0 -1
- package/dist/chunk-ED57RCQE.mjs +0 -171
- package/dist/chunk-ED57RCQE.mjs.map +0 -1
- package/dist/chunk-FZN56HGQ.mjs +0 -626
- package/dist/chunk-FZN56HGQ.mjs.map +0 -1
- package/dist/chunk-GL4OOB25.mjs +0 -51
- package/dist/chunk-GL4OOB25.mjs.map +0 -1
- package/dist/chunk-KDG2NTDB.mjs +0 -137
- package/dist/chunk-KDG2NTDB.mjs.map +0 -1
- package/dist/chunk-NRBQWBDM.mjs +0 -191
- package/dist/chunk-NRBQWBDM.mjs.map +0 -1
- package/dist/chunk-O4V246GG.mjs +0 -2137
- package/dist/chunk-O4V246GG.mjs.map +0 -1
- package/dist/chunk-QT57H266.mjs +0 -163
- package/dist/chunk-QT57H266.mjs.map +0 -1
- package/dist/chunk-QX4RH25I.mjs +0 -141
- package/dist/chunk-QX4RH25I.mjs.map +0 -1
- package/dist/chunk-TB562PZX.mjs +0 -86
- package/dist/chunk-TB562PZX.mjs.map +0 -1
- package/dist/chunk-TDYPZXK5.mjs +0 -1
- package/dist/chunk-TDYPZXK5.mjs.map +0 -1
- package/dist/chunk-UJI4LN5P.mjs +0 -36
- package/dist/chunk-UJI4LN5P.mjs.map +0 -1
- package/dist/chunk-W6RTHQGP.mjs +0 -1
- package/dist/chunk-W6RTHQGP.mjs.map +0 -1
- package/dist/chunk-ZELBCPDC.mjs +0 -369
- package/dist/chunk-ZELBCPDC.mjs.map +0 -1
- package/dist/index.d.mts +0 -1696
- package/dist/resource-monitor-UZUGPIAU.mjs +0 -9
- package/dist/resource-monitor-UZUGPIAU.mjs.map +0 -1
- package/dist/storage-location-manager-HFNB3PCS.mjs +0 -7
- package/dist/storage-location-manager-HFNB3PCS.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/builtins/alerts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA"}
|
|
@@ -1,443 +1,3 @@
|
|
|
1
|
-
"
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __export = (target, all) => {
|
|
7
|
-
for (var name in all)
|
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
|
|
20
|
-
// src/builtins/alerts/index.ts
|
|
21
|
-
var alerts_exports = {};
|
|
22
|
-
__export(alerts_exports, {
|
|
23
|
-
AlertCenterAddon: () => AlertCenterAddon
|
|
24
|
-
});
|
|
25
|
-
module.exports = __toCommonJS(alerts_exports);
|
|
26
|
-
|
|
27
|
-
// src/builtins/alerts/alerts.addon.ts
|
|
28
|
-
var import_types = require("@camstack/types");
|
|
29
|
-
var import_types2 = require("@camstack/types");
|
|
30
|
-
var CATEGORY_MAPPINGS = {
|
|
31
|
-
// ── Critical — always surface ──────────────────────────────────────
|
|
32
|
-
"addon.crashed": { severity: "error", titleTemplate: "Addon crashed" },
|
|
33
|
-
"addon.error": { severity: "error", titleTemplate: "Addon error" },
|
|
34
|
-
"process.crashed": { severity: "error", titleTemplate: "Process crashed" },
|
|
35
|
-
"recording.error": { severity: "error", titleTemplate: "Recording error" },
|
|
36
|
-
"recording.storage.critical": { severity: "warning", titleTemplate: "Storage critical" },
|
|
37
|
-
"notification.failed": { severity: "error", titleTemplate: "Notification failed" },
|
|
38
|
-
// ── Cluster — agent connect/disconnect ─────────────────────────────
|
|
39
|
-
"agent.online": { severity: "info", titleTemplate: "Agent connected" },
|
|
40
|
-
"agent.offline": { severity: "warning", titleTemplate: "Agent disconnected" },
|
|
41
|
-
// ── System lifecycle ──────────────────────────────────────────────
|
|
42
|
-
"system.boot": { severity: "info", titleTemplate: "System boot" },
|
|
43
|
-
"system.restarting": { severity: "warning", titleTemplate: "System restarting" },
|
|
44
|
-
// ── Device lifecycle (add/remove only, not settings tweaks) ───────
|
|
45
|
-
"device.registered": { severity: "info", titleTemplate: "Device registered" },
|
|
46
|
-
"device.unregistered": { severity: "warning", titleTemplate: "Device unregistered" },
|
|
47
|
-
// ── Package management ────────────────────────────────────────────
|
|
48
|
-
"addon.installed": { severity: "info", titleTemplate: "Addon installed" },
|
|
49
|
-
"addon.updated": { severity: "info", titleTemplate: "Addon updated" },
|
|
50
|
-
"addon.uninstalled": { severity: "info", titleTemplate: "Addon uninstalled" },
|
|
51
|
-
// ── Backup (rare, important) ──────────────────────────────────────
|
|
52
|
-
"backup.completed": { severity: "info", titleTemplate: "Backup completed" },
|
|
53
|
-
"backup.restored": { severity: "info", titleTemplate: "Backup restored" },
|
|
54
|
-
// ── Model downloads (in-progress merging path) ────────────────────
|
|
55
|
-
"model.download.progress": { severity: "info", titleTemplate: "Model download" }
|
|
56
|
-
};
|
|
57
|
-
var TRACKED_CATEGORIES = Object.keys(CATEGORY_MAPPINGS);
|
|
58
|
-
var RATE_LIMIT_WINDOW_MS = 6e4;
|
|
59
|
-
var RATE_LIMIT_MAX_PER_SOURCE = 5;
|
|
60
|
-
function parseAlert(record) {
|
|
61
|
-
return import_types2.AlertSchema.parse({ id: record.id, ...record.data });
|
|
62
|
-
}
|
|
63
|
-
var DEFAULT_CONFIG = {
|
|
64
|
-
maxAlerts: 500,
|
|
65
|
-
retentionDays: 30
|
|
66
|
-
};
|
|
67
|
-
var ALERTS_COLLECTION = "alerts";
|
|
68
|
-
var EVENT_SOURCE = { type: "addon", id: "alert-center" };
|
|
69
|
-
var AlertCenterAddon = class extends import_types2.BaseAddon {
|
|
70
|
-
unsubscribers = [];
|
|
71
|
-
constructor() {
|
|
72
|
-
super({ ...DEFAULT_CONFIG });
|
|
73
|
-
}
|
|
74
|
-
/**
|
|
75
|
-
* Per `(category, source.id)` counter used to rate-limit chatty
|
|
76
|
-
* events. Entries are pruned lazily when they age out of
|
|
77
|
-
* `RATE_LIMIT_WINDOW_MS`; see `shouldSuppressByRate()` below.
|
|
78
|
-
*/
|
|
79
|
-
rateLimitCounters = /* @__PURE__ */ new Map();
|
|
80
|
-
async onInitialize() {
|
|
81
|
-
const alertsProvider = {
|
|
82
|
-
emit: (alert) => this.emitAlert(alert),
|
|
83
|
-
update: (input) => this.updateAlert(input.alertId, input.patch),
|
|
84
|
-
list: (filter) => this.listAlerts(filter),
|
|
85
|
-
getUnreadCount: () => this.getUnreadCount(),
|
|
86
|
-
markRead: (input) => this.markRead(input.alertId),
|
|
87
|
-
markAllRead: () => this.markAllRead(),
|
|
88
|
-
dismiss: (input) => this.dismiss(input.alertId)
|
|
89
|
-
};
|
|
90
|
-
const unsubs = [];
|
|
91
|
-
for (const category of TRACKED_CATEGORIES) {
|
|
92
|
-
const unsub = this.ctx.eventBus.subscribe(
|
|
93
|
-
{ category },
|
|
94
|
-
(event) => {
|
|
95
|
-
void this.handleEvent(category, event);
|
|
96
|
-
}
|
|
97
|
-
);
|
|
98
|
-
unsubs.push(unsub);
|
|
99
|
-
}
|
|
100
|
-
this.unsubscribers = unsubs;
|
|
101
|
-
this.ctx.logger.info("Initialized", { meta: { trackedCategoriesCount: TRACKED_CATEGORIES.length } });
|
|
102
|
-
return [{ capability: import_types2.alertsCapability, provider: alertsProvider }];
|
|
103
|
-
}
|
|
104
|
-
async onShutdown() {
|
|
105
|
-
for (const unsub of this.unsubscribers) {
|
|
106
|
-
unsub();
|
|
107
|
-
}
|
|
108
|
-
this.unsubscribers = [];
|
|
109
|
-
}
|
|
110
|
-
globalSettingsSchema() {
|
|
111
|
-
return this.schema({
|
|
112
|
-
sections: [{
|
|
113
|
-
id: "alerts",
|
|
114
|
-
title: "Alert Center",
|
|
115
|
-
description: "Configure alert storage and retention.",
|
|
116
|
-
columns: 1,
|
|
117
|
-
fields: [
|
|
118
|
-
this.field({
|
|
119
|
-
type: "number",
|
|
120
|
-
key: "maxAlerts",
|
|
121
|
-
label: "Maximum stored alerts",
|
|
122
|
-
description: "Oldest read alerts are deleted when this limit is exceeded.",
|
|
123
|
-
min: 50,
|
|
124
|
-
max: 5e3,
|
|
125
|
-
step: 50,
|
|
126
|
-
default: 500
|
|
127
|
-
}),
|
|
128
|
-
this.field({
|
|
129
|
-
type: "number",
|
|
130
|
-
key: "retentionDays",
|
|
131
|
-
label: "Alert retention (days)",
|
|
132
|
-
description: "Alerts older than this are automatically removed.",
|
|
133
|
-
min: 1,
|
|
134
|
-
max: 365,
|
|
135
|
-
step: 1,
|
|
136
|
-
default: 30
|
|
137
|
-
})
|
|
138
|
-
]
|
|
139
|
-
}]
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
// ── Public methods (called by the tRPC router) ────────────────────
|
|
143
|
-
async listAlerts(filter) {
|
|
144
|
-
const backend = this.ctx.api.settingsStore;
|
|
145
|
-
if (!backend) return [];
|
|
146
|
-
const whereClause = {};
|
|
147
|
-
if (filter?.unreadOnly) {
|
|
148
|
-
whereClause.read = false;
|
|
149
|
-
}
|
|
150
|
-
const records = await backend.query.query({ collection: ALERTS_COLLECTION, filter: {
|
|
151
|
-
where: Object.keys(whereClause).length > 0 ? whereClause : void 0,
|
|
152
|
-
orderBy: { field: "updatedAt", direction: "desc" },
|
|
153
|
-
limit: filter?.limit ?? 100
|
|
154
|
-
} });
|
|
155
|
-
return records.map(parseAlert);
|
|
156
|
-
}
|
|
157
|
-
async getUnreadCount() {
|
|
158
|
-
const backend = this.ctx.api.settingsStore;
|
|
159
|
-
if (!backend) return 0;
|
|
160
|
-
return backend.count.query({ collection: ALERTS_COLLECTION, filter: { where: { read: false } } });
|
|
161
|
-
}
|
|
162
|
-
async markRead(alertId) {
|
|
163
|
-
await this.mergeUpdate(alertId, { read: true, updatedAt: Date.now() });
|
|
164
|
-
}
|
|
165
|
-
async markAllRead() {
|
|
166
|
-
const backend = this.ctx.api.settingsStore;
|
|
167
|
-
if (!backend) return;
|
|
168
|
-
const unread = await backend.query.query({ collection: ALERTS_COLLECTION, filter: { where: { read: false } } });
|
|
169
|
-
const now = Date.now();
|
|
170
|
-
for (const record of unread) {
|
|
171
|
-
await this.mergeUpdate(record.id, { read: true, updatedAt: now });
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
async dismiss(alertId) {
|
|
175
|
-
await this.mergeUpdate(alertId, {
|
|
176
|
-
status: "dismissed",
|
|
177
|
-
read: true,
|
|
178
|
-
updatedAt: Date.now()
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
// ── Private: event handling ──────────────────────────────────────
|
|
182
|
-
async handleEvent(category, event) {
|
|
183
|
-
try {
|
|
184
|
-
if (category === "model.download.progress") {
|
|
185
|
-
await this.handleModelDownload(event);
|
|
186
|
-
return;
|
|
187
|
-
}
|
|
188
|
-
const mapping = CATEGORY_MAPPINGS[category];
|
|
189
|
-
if (!mapping) return;
|
|
190
|
-
if (this.shouldSuppressByRate(category, event)) return;
|
|
191
|
-
const message = this.buildMessage(category, event.data);
|
|
192
|
-
const alert = {
|
|
193
|
-
id: crypto.randomUUID(),
|
|
194
|
-
category,
|
|
195
|
-
severity: mapping.severity,
|
|
196
|
-
title: mapping.titleTemplate,
|
|
197
|
-
message,
|
|
198
|
-
status: "active",
|
|
199
|
-
read: false,
|
|
200
|
-
createdAt: Date.now(),
|
|
201
|
-
updatedAt: Date.now(),
|
|
202
|
-
source: event.source ? { type: event.source.type, id: String(event.source.id) } : void 0,
|
|
203
|
-
metadata: event.data
|
|
204
|
-
};
|
|
205
|
-
await this.emitAlert(alert);
|
|
206
|
-
} catch (err) {
|
|
207
|
-
this.ctx.logger?.warn(
|
|
208
|
-
"Failed to handle event",
|
|
209
|
-
{ meta: { category, error: (0, import_types2.errMsg)(err) } }
|
|
210
|
-
);
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
async handleModelDownload(event) {
|
|
214
|
-
const data = event.data;
|
|
215
|
-
const modelId = data.modelId ?? "unknown";
|
|
216
|
-
const progress = data.progress ?? 0;
|
|
217
|
-
const stableId = `model-download:${modelId}`;
|
|
218
|
-
const backend = this.ctx.api.settingsStore;
|
|
219
|
-
if (!backend) return;
|
|
220
|
-
const existing = await backend.query.query({ collection: ALERTS_COLLECTION, filter: {
|
|
221
|
-
where: { id: stableId }
|
|
222
|
-
} });
|
|
223
|
-
if (existing.length > 0) {
|
|
224
|
-
const now = Date.now();
|
|
225
|
-
if (progress >= 100) {
|
|
226
|
-
await this.mergeUpdate(stableId, {
|
|
227
|
-
status: "completed",
|
|
228
|
-
progress: 100,
|
|
229
|
-
message: `Model "${modelId}" download completed`,
|
|
230
|
-
updatedAt: now
|
|
231
|
-
});
|
|
232
|
-
this.emitAlertUpdatedEvent(stableId, { status: "completed", progress: 100 });
|
|
233
|
-
} else if (progress < 0) {
|
|
234
|
-
await this.mergeUpdate(stableId, {
|
|
235
|
-
status: "failed",
|
|
236
|
-
message: `Model "${modelId}" download failed`,
|
|
237
|
-
updatedAt: now
|
|
238
|
-
});
|
|
239
|
-
this.emitAlertUpdatedEvent(stableId, { status: "failed" });
|
|
240
|
-
} else {
|
|
241
|
-
await this.mergeUpdate(stableId, {
|
|
242
|
-
progress,
|
|
243
|
-
message: `Downloading model "${modelId}" \u2014 ${String(Math.round(progress))}%`,
|
|
244
|
-
updatedAt: now
|
|
245
|
-
});
|
|
246
|
-
this.emitAlertUpdatedEvent(stableId, { progress });
|
|
247
|
-
}
|
|
248
|
-
} else {
|
|
249
|
-
const alert = {
|
|
250
|
-
id: stableId,
|
|
251
|
-
category: import_types.EventCategory.ModelDownloadProgress,
|
|
252
|
-
severity: "info",
|
|
253
|
-
title: "Model download",
|
|
254
|
-
message: `Downloading model "${modelId}" \u2014 ${String(Math.round(progress))}%`,
|
|
255
|
-
status: "in-progress",
|
|
256
|
-
progress,
|
|
257
|
-
read: false,
|
|
258
|
-
createdAt: Date.now(),
|
|
259
|
-
updatedAt: Date.now(),
|
|
260
|
-
source: event.source ? { type: event.source.type, id: String(event.source.id) } : void 0,
|
|
261
|
-
metadata: { modelId }
|
|
262
|
-
};
|
|
263
|
-
await this.persistAlert(alert);
|
|
264
|
-
this.emitAlertCreatedEvent(alert);
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
/**
|
|
268
|
-
* `[ALERT-CENTER-EVENTS]` — rate limit a `(category, source.id)`
|
|
269
|
-
* tuple. Returns `true` when the caller should DROP this event
|
|
270
|
-
* without persisting an alert, and `false` when the alert should
|
|
271
|
-
* proceed normally.
|
|
272
|
-
*
|
|
273
|
-
* Heuristic: the first `RATE_LIMIT_MAX_PER_SOURCE` events within a
|
|
274
|
-
* `RATE_LIMIT_WINDOW_MS` window go through. Once the threshold is
|
|
275
|
-
* crossed, subsequent events are suppressed until the window rolls
|
|
276
|
-
* over. When the threshold is first crossed, the suppression is
|
|
277
|
-
* logged once so operators know why they're not seeing the follow-
|
|
278
|
-
* up alerts; after the window rolls over the next event is
|
|
279
|
-
* un-suppressed and starts a new window.
|
|
280
|
-
*/
|
|
281
|
-
shouldSuppressByRate(category, event) {
|
|
282
|
-
const sourceId = event.source?.id ?? "unknown";
|
|
283
|
-
const key = `${category}::${sourceId}`;
|
|
284
|
-
const now = Date.now();
|
|
285
|
-
const entry = this.rateLimitCounters.get(key);
|
|
286
|
-
if (!entry || now - entry.firstAt > RATE_LIMIT_WINDOW_MS) {
|
|
287
|
-
this.rateLimitCounters.set(key, { firstAt: now, count: 1, suppressedLogged: false });
|
|
288
|
-
return false;
|
|
289
|
-
}
|
|
290
|
-
entry.count += 1;
|
|
291
|
-
if (entry.count <= RATE_LIMIT_MAX_PER_SOURCE) return false;
|
|
292
|
-
if (!entry.suppressedLogged) {
|
|
293
|
-
entry.suppressedLogged = true;
|
|
294
|
-
this.ctx.logger?.info(
|
|
295
|
-
"rate-limiting suppressing remainder of window",
|
|
296
|
-
{ meta: { category, sourceId, maxPerSource: RATE_LIMIT_MAX_PER_SOURCE, windowSeconds: RATE_LIMIT_WINDOW_MS / 1e3 } }
|
|
297
|
-
);
|
|
298
|
-
}
|
|
299
|
-
return true;
|
|
300
|
-
}
|
|
301
|
-
buildMessage(category, data) {
|
|
302
|
-
const addonId = data.addonId;
|
|
303
|
-
const deviceId = data.deviceId;
|
|
304
|
-
const error = data.error;
|
|
305
|
-
const processId = data.processId;
|
|
306
|
-
switch (category) {
|
|
307
|
-
case "addon.crashed":
|
|
308
|
-
return `Addon "${addonId ?? "unknown"}" crashed${error ? `: ${error}` : ""}`;
|
|
309
|
-
case "addon.error":
|
|
310
|
-
return `Addon "${addonId ?? "unknown"}" error${error ? `: ${error}` : ""}`;
|
|
311
|
-
case "addon.installed":
|
|
312
|
-
return `Addon "${addonId ?? "unknown"}" installed`;
|
|
313
|
-
case "addon.updated": {
|
|
314
|
-
const from = data.fromVersion;
|
|
315
|
-
const to = data.toVersion;
|
|
316
|
-
return `Addon "${addonId ?? "unknown"}" updated${from && to ? ` from ${from} to ${to}` : ""}`;
|
|
317
|
-
}
|
|
318
|
-
case "addon.uninstalled":
|
|
319
|
-
return `Addon "${addonId ?? "unknown"}" uninstalled`;
|
|
320
|
-
case "device.registered":
|
|
321
|
-
return `Device "${data.name ?? deviceId ?? "unknown"}" registered`;
|
|
322
|
-
case "device.unregistered":
|
|
323
|
-
return `Device "${deviceId ?? "unknown"}" unregistered`;
|
|
324
|
-
case "agent.online":
|
|
325
|
-
return `Agent "${data.agentId ?? data.nodeId ?? "unknown"}" connected`;
|
|
326
|
-
case "agent.offline":
|
|
327
|
-
return `Agent "${data.agentId ?? data.nodeId ?? "unknown"}" disconnected${data.reason ? `: ${String(data.reason)}` : ""}`;
|
|
328
|
-
case "backup.completed":
|
|
329
|
-
return `Backup completed${data.targetId ? ` (${String(data.targetId)})` : ""}`;
|
|
330
|
-
case "backup.restored":
|
|
331
|
-
return `Backup restored${data.source ? ` from ${String(data.source)}` : ""}`;
|
|
332
|
-
case "notification.failed":
|
|
333
|
-
return `Notification failed${error ? `: ${error}` : ""}`;
|
|
334
|
-
case "system.restarting":
|
|
335
|
-
return `System restarting${data.reason ? ` \u2014 ${String(data.reason)}` : ""}`;
|
|
336
|
-
case "recording.error":
|
|
337
|
-
return `Recording error on device "${deviceId ?? "unknown"}"${error ? `: ${error}` : ""}`;
|
|
338
|
-
case "recording.storage.critical":
|
|
339
|
-
return `Storage critical for device "${deviceId ?? "unknown"}"`;
|
|
340
|
-
case "system.boot":
|
|
341
|
-
return `System booted in "${data.mode ?? "unknown"}" mode`;
|
|
342
|
-
case "process.crashed":
|
|
343
|
-
return `Process "${processId ?? "unknown"}" crashed`;
|
|
344
|
-
default:
|
|
345
|
-
return `Event: ${category}`;
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
// ── Private: persistence ─────────────────────────────────────────
|
|
349
|
-
async emitAlert(alert) {
|
|
350
|
-
await this.persistAlert(alert);
|
|
351
|
-
this.emitAlertCreatedEvent(alert);
|
|
352
|
-
await this.enforceMaxAlerts();
|
|
353
|
-
await this.enforceRetention();
|
|
354
|
-
}
|
|
355
|
-
async updateAlert(alertId, patch) {
|
|
356
|
-
await this.mergeUpdate(alertId, { ...patch, updatedAt: Date.now() });
|
|
357
|
-
this.emitAlertUpdatedEvent(alertId, patch);
|
|
358
|
-
}
|
|
359
|
-
/**
|
|
360
|
-
* Read-merge-write: SettingsBackend.update() replaces the entire `data` blob,
|
|
361
|
-
* so we must read the existing record, merge the patch, and write back.
|
|
362
|
-
*/
|
|
363
|
-
async mergeUpdate(id, patch) {
|
|
364
|
-
const backend = this.ctx.api.settingsStore;
|
|
365
|
-
if (!backend) return;
|
|
366
|
-
const raw = await backend.get.query({ collection: ALERTS_COLLECTION, key: id });
|
|
367
|
-
if (raw === null || raw === void 0 || typeof raw !== "object") return;
|
|
368
|
-
const existing = Object.fromEntries(Object.entries(raw));
|
|
369
|
-
await backend.set.mutate({ collection: ALERTS_COLLECTION, key: id, value: { ...existing, ...patch } });
|
|
370
|
-
}
|
|
371
|
-
async persistAlert(alert) {
|
|
372
|
-
const backend = this.ctx.api.settingsStore;
|
|
373
|
-
if (!backend) return;
|
|
374
|
-
const data = {
|
|
375
|
-
id: alert.id,
|
|
376
|
-
category: alert.category,
|
|
377
|
-
severity: alert.severity,
|
|
378
|
-
title: alert.title,
|
|
379
|
-
message: alert.message,
|
|
380
|
-
status: alert.status,
|
|
381
|
-
read: alert.read,
|
|
382
|
-
createdAt: alert.createdAt,
|
|
383
|
-
updatedAt: alert.updatedAt,
|
|
384
|
-
...alert.progress !== void 0 ? { progress: alert.progress } : {},
|
|
385
|
-
...alert.source ? { source: alert.source } : {},
|
|
386
|
-
...alert.metadata ? { metadata: alert.metadata } : {}
|
|
387
|
-
};
|
|
388
|
-
await backend.set.mutate({ collection: ALERTS_COLLECTION, key: alert.id, value: data });
|
|
389
|
-
}
|
|
390
|
-
emitAlertCreatedEvent(alert) {
|
|
391
|
-
this.ctx.eventBus?.emit((0, import_types2.createEvent)("alert.created", EVENT_SOURCE, {
|
|
392
|
-
id: alert.id,
|
|
393
|
-
category: alert.category,
|
|
394
|
-
severity: alert.severity,
|
|
395
|
-
title: alert.title,
|
|
396
|
-
status: alert.status
|
|
397
|
-
}));
|
|
398
|
-
}
|
|
399
|
-
emitAlertUpdatedEvent(alertId, patch) {
|
|
400
|
-
const patchRecord = {};
|
|
401
|
-
for (const [key, value] of Object.entries(patch)) {
|
|
402
|
-
patchRecord[key] = value;
|
|
403
|
-
}
|
|
404
|
-
this.ctx.eventBus?.emit((0, import_types2.createEvent)("alert.updated", EVENT_SOURCE, {
|
|
405
|
-
alertId,
|
|
406
|
-
patch: patchRecord
|
|
407
|
-
}));
|
|
408
|
-
}
|
|
409
|
-
async enforceMaxAlerts() {
|
|
410
|
-
const backend = this.ctx.api.settingsStore;
|
|
411
|
-
if (!backend) return;
|
|
412
|
-
const total = await backend.count.query({ collection: ALERTS_COLLECTION });
|
|
413
|
-
if (total <= this.config.maxAlerts) return;
|
|
414
|
-
const excess = total - this.config.maxAlerts;
|
|
415
|
-
const oldest = await backend.query.query({ collection: ALERTS_COLLECTION, filter: {
|
|
416
|
-
where: { read: true },
|
|
417
|
-
orderBy: { field: "createdAt", direction: "asc" },
|
|
418
|
-
limit: excess
|
|
419
|
-
} });
|
|
420
|
-
for (const record of oldest) {
|
|
421
|
-
await backend.delete.mutate({ collection: ALERTS_COLLECTION, key: record.id });
|
|
422
|
-
}
|
|
423
|
-
}
|
|
424
|
-
async enforceRetention() {
|
|
425
|
-
const backend = this.ctx.api.settingsStore;
|
|
426
|
-
if (!backend) return;
|
|
427
|
-
const cutoff = Date.now() - this.config.retentionDays * 24 * 60 * 60 * 1e3;
|
|
428
|
-
const expired = await backend.query.query({ collection: ALERTS_COLLECTION, filter: {
|
|
429
|
-
where: { read: true },
|
|
430
|
-
orderBy: { field: "createdAt", direction: "asc" }
|
|
431
|
-
} });
|
|
432
|
-
for (const record of expired) {
|
|
433
|
-
if (Number(record.data["createdAt"] ?? 0) < cutoff) {
|
|
434
|
-
await backend.delete.mutate({ collection: ALERTS_COLLECTION, key: record.id });
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
|
-
}
|
|
438
|
-
};
|
|
439
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
440
|
-
0 && (module.exports = {
|
|
441
|
-
AlertCenterAddon
|
|
442
|
-
});
|
|
443
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_builtins_alerts_alerts_addon = require("./alerts.addon.js");
|
|
3
|
+
exports.AlertCenterAddon = require_builtins_alerts_alerts_addon.AlertCenterAddon;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BaseAddon, ProviderRegistration } from '@camstack/types';
|
|
2
|
+
export declare class AuthOrchestratorAddon extends BaseAddon<Record<string, never>> {
|
|
3
|
+
constructor();
|
|
4
|
+
protected onInitialize(): Promise<ProviderRegistration[]>;
|
|
5
|
+
private listProviders;
|
|
6
|
+
}
|
|
7
|
+
export default AuthOrchestratorAddon;
|
|
8
|
+
//# sourceMappingURL=auth-orchestrator.addon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-orchestrator.addon.d.ts","sourceRoot":"","sources":["../../../src/builtins/auth-orchestrator/auth-orchestrator.addon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EACL,SAAS,EAIT,KAAK,oBAAoB,EAC1B,MAAM,iBAAiB,CAAA;AAYxB,qBAAa,qBAAsB,SAAQ,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;;cAKzD,YAAY,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAgBjD,aAAa;CAa5B;AAED,eAAe,qBAAqB,CAAA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
Object.defineProperties(exports, {
|
|
2
|
+
__esModule: { value: true },
|
|
3
|
+
[Symbol.toStringTag]: { value: "Module" }
|
|
4
|
+
});
|
|
5
|
+
require("../../chunk-C13QxCFV.js");
|
|
6
|
+
let _camstack_types = require("@camstack/types");
|
|
7
|
+
//#region src/builtins/auth-orchestrator/auth-orchestrator.addon.ts
|
|
8
|
+
/**
|
|
9
|
+
* Authentication orchestrator — singleton facade over the
|
|
10
|
+
* `auth-provider` collection. Mirrors the backup-orchestrator pattern:
|
|
11
|
+
* UI consumers go through this builtin, which walks the
|
|
12
|
+
* `auth-provider` collection registered by `local-auth` and any
|
|
13
|
+
* additional `auth-*` addons (OIDC, SAML, LDAP, …) and returns a
|
|
14
|
+
* curated view.
|
|
15
|
+
*
|
|
16
|
+
* The actual login flow still goes through `auth-provider`
|
|
17
|
+
* collection methods (validateCredentials / getLoginUrl / …); this
|
|
18
|
+
* cap exists so the admin UI's "Authentication" page and the login
|
|
19
|
+
* screen's provider picker have ONE place to query instead of
|
|
20
|
+
* walking the collection themselves.
|
|
21
|
+
*/
|
|
22
|
+
var AuthOrchestratorAddon = class extends _camstack_types.BaseAddon {
|
|
23
|
+
constructor() {
|
|
24
|
+
super({});
|
|
25
|
+
}
|
|
26
|
+
async onInitialize() {
|
|
27
|
+
const provider = {
|
|
28
|
+
listProviders: async () => this.listProviders(),
|
|
29
|
+
setProviderEnabled: async () => {
|
|
30
|
+
return { success: true };
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
this.ctx.logger.info("Authentication orchestrator initialized");
|
|
34
|
+
return [{
|
|
35
|
+
capability: _camstack_types.authenticationCapability,
|
|
36
|
+
provider
|
|
37
|
+
}];
|
|
38
|
+
}
|
|
39
|
+
async listProviders() {
|
|
40
|
+
return (this.capabilities?.getCollectionEntries("auth-provider") ?? []).map(([addonId, raw]) => ({
|
|
41
|
+
addonId: raw?.addonId ?? addonId,
|
|
42
|
+
displayName: raw?.displayName ?? addonId,
|
|
43
|
+
kind: raw?.kind ?? (addonId === "local-auth" ? "local" : "other"),
|
|
44
|
+
...raw?.icon !== void 0 ? { icon: raw.icon } : {},
|
|
45
|
+
hasRedirectFlow: raw?.hasRedirectFlow ?? false,
|
|
46
|
+
hasCredentialFlow: raw?.hasCredentialFlow ?? addonId === "local-auth",
|
|
47
|
+
...raw?.status !== void 0 ? { status: raw.status } : {},
|
|
48
|
+
enabled: true
|
|
49
|
+
}));
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
//#endregion
|
|
53
|
+
exports.AuthOrchestratorAddon = AuthOrchestratorAddon;
|
|
54
|
+
exports.default = AuthOrchestratorAddon;
|
|
55
|
+
|
|
56
|
+
//# sourceMappingURL=auth-orchestrator.addon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-orchestrator.addon.js","names":[],"sources":["../../../src/builtins/auth-orchestrator/auth-orchestrator.addon.ts"],"sourcesContent":["/**\n * Authentication orchestrator — singleton facade over the\n * `auth-provider` collection. Mirrors the backup-orchestrator pattern:\n * UI consumers go through this builtin, which walks the\n * `auth-provider` collection registered by `local-auth` and any\n * additional `auth-*` addons (OIDC, SAML, LDAP, …) and returns a\n * curated view.\n *\n * The actual login flow still goes through `auth-provider`\n * collection methods (validateCredentials / getLoginUrl / …); this\n * cap exists so the admin UI's \"Authentication\" page and the login\n * screen's provider picker have ONE place to query instead of\n * walking the collection themselves.\n */\nimport {\n BaseAddon,\n authenticationCapability,\n type AuthProviderInfo,\n type IAuthenticationProvider,\n type ProviderRegistration,\n} from '@camstack/types'\n\ninterface AuthProviderRegistrationLike {\n readonly addonId?: string\n readonly displayName?: string\n readonly kind?: AuthProviderInfo['kind']\n readonly icon?: string\n readonly hasRedirectFlow?: boolean\n readonly hasCredentialFlow?: boolean\n readonly status?: string\n}\n\nexport class AuthOrchestratorAddon extends BaseAddon<Record<string, never>> {\n constructor() {\n super({})\n }\n\n protected async onInitialize(): Promise<ProviderRegistration[]> {\n const provider: IAuthenticationProvider = {\n listProviders: async () => this.listProviders(),\n setProviderEnabled: async () => {\n // Persistence is per-addon today — operators toggle enabled\n // via the provider addon's own settings panel. The orchestrator\n // exposes the affordance for forward-compat (UI may move the\n // enabled toggle into the Authentication page later) but\n // currently no-ops the persistence side.\n return { success: true as const }\n },\n }\n this.ctx.logger.info('Authentication orchestrator initialized')\n return [{ capability: authenticationCapability, provider }]\n }\n\n private async listProviders(): Promise<readonly AuthProviderInfo[]> {\n const entries = this.capabilities?.getCollectionEntries<AuthProviderRegistrationLike>('auth-provider') ?? []\n return entries.map(([addonId, raw]) => ({\n addonId: raw?.addonId ?? addonId,\n displayName: raw?.displayName ?? addonId,\n kind: raw?.kind ?? (addonId === 'local-auth' ? ('local' as const) : ('other' as const)),\n ...(raw?.icon !== undefined ? { icon: raw.icon } : {}),\n hasRedirectFlow: raw?.hasRedirectFlow ?? false,\n hasCredentialFlow: raw?.hasCredentialFlow ?? (addonId === 'local-auth'),\n ...(raw?.status !== undefined ? { status: raw.status } : {}),\n enabled: true,\n }))\n }\n}\n\nexport default AuthOrchestratorAddon\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAgCA,IAAa,wBAAb,cAA2C,gBAAA,UAAiC;CAC1E,cAAc;EACZ,MAAM,EAAE,CAAC;;CAGX,MAAgB,eAAgD;EAC9D,MAAM,WAAoC;GACxC,eAAe,YAAY,KAAK,eAAe;GAC/C,oBAAoB,YAAY;IAM9B,OAAO,EAAE,SAAS,MAAe;;GAEpC;EACD,KAAK,IAAI,OAAO,KAAK,0CAA0C;EAC/D,OAAO,CAAC;GAAE,YAAY,gBAAA;GAA0B;GAAU,CAAC;;CAG7D,MAAc,gBAAsD;EAElE,QADgB,KAAK,cAAc,qBAAmD,gBAAgB,IAAI,EAAE,EAC7F,KAAK,CAAC,SAAS,UAAU;GACtC,SAAS,KAAK,WAAW;GACzB,aAAa,KAAK,eAAe;GACjC,MAAM,KAAK,SAAS,YAAY,eAAgB,UAAqB;GACrE,GAAI,KAAK,SAAS,KAAA,IAAY,EAAE,MAAM,IAAI,MAAM,GAAG,EAAE;GACrD,iBAAiB,KAAK,mBAAmB;GACzC,mBAAmB,KAAK,qBAAsB,YAAY;GAC1D,GAAI,KAAK,WAAW,KAAA,IAAY,EAAE,QAAQ,IAAI,QAAQ,GAAG,EAAE;GAC3D,SAAS;GACV,EAAE"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { BaseAddon, authenticationCapability } from "@camstack/types";
|
|
2
|
+
//#region src/builtins/auth-orchestrator/auth-orchestrator.addon.ts
|
|
3
|
+
/**
|
|
4
|
+
* Authentication orchestrator — singleton facade over the
|
|
5
|
+
* `auth-provider` collection. Mirrors the backup-orchestrator pattern:
|
|
6
|
+
* UI consumers go through this builtin, which walks the
|
|
7
|
+
* `auth-provider` collection registered by `local-auth` and any
|
|
8
|
+
* additional `auth-*` addons (OIDC, SAML, LDAP, …) and returns a
|
|
9
|
+
* curated view.
|
|
10
|
+
*
|
|
11
|
+
* The actual login flow still goes through `auth-provider`
|
|
12
|
+
* collection methods (validateCredentials / getLoginUrl / …); this
|
|
13
|
+
* cap exists so the admin UI's "Authentication" page and the login
|
|
14
|
+
* screen's provider picker have ONE place to query instead of
|
|
15
|
+
* walking the collection themselves.
|
|
16
|
+
*/
|
|
17
|
+
var AuthOrchestratorAddon = class extends BaseAddon {
|
|
18
|
+
constructor() {
|
|
19
|
+
super({});
|
|
20
|
+
}
|
|
21
|
+
async onInitialize() {
|
|
22
|
+
const provider = {
|
|
23
|
+
listProviders: async () => this.listProviders(),
|
|
24
|
+
setProviderEnabled: async () => {
|
|
25
|
+
return { success: true };
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
this.ctx.logger.info("Authentication orchestrator initialized");
|
|
29
|
+
return [{
|
|
30
|
+
capability: authenticationCapability,
|
|
31
|
+
provider
|
|
32
|
+
}];
|
|
33
|
+
}
|
|
34
|
+
async listProviders() {
|
|
35
|
+
return (this.capabilities?.getCollectionEntries("auth-provider") ?? []).map(([addonId, raw]) => ({
|
|
36
|
+
addonId: raw?.addonId ?? addonId,
|
|
37
|
+
displayName: raw?.displayName ?? addonId,
|
|
38
|
+
kind: raw?.kind ?? (addonId === "local-auth" ? "local" : "other"),
|
|
39
|
+
...raw?.icon !== void 0 ? { icon: raw.icon } : {},
|
|
40
|
+
hasRedirectFlow: raw?.hasRedirectFlow ?? false,
|
|
41
|
+
hasCredentialFlow: raw?.hasCredentialFlow ?? addonId === "local-auth",
|
|
42
|
+
...raw?.status !== void 0 ? { status: raw.status } : {},
|
|
43
|
+
enabled: true
|
|
44
|
+
}));
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
//#endregion
|
|
48
|
+
export { AuthOrchestratorAddon, AuthOrchestratorAddon as default };
|
|
49
|
+
|
|
50
|
+
//# sourceMappingURL=auth-orchestrator.addon.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-orchestrator.addon.mjs","names":[],"sources":["../../../src/builtins/auth-orchestrator/auth-orchestrator.addon.ts"],"sourcesContent":["/**\n * Authentication orchestrator — singleton facade over the\n * `auth-provider` collection. Mirrors the backup-orchestrator pattern:\n * UI consumers go through this builtin, which walks the\n * `auth-provider` collection registered by `local-auth` and any\n * additional `auth-*` addons (OIDC, SAML, LDAP, …) and returns a\n * curated view.\n *\n * The actual login flow still goes through `auth-provider`\n * collection methods (validateCredentials / getLoginUrl / …); this\n * cap exists so the admin UI's \"Authentication\" page and the login\n * screen's provider picker have ONE place to query instead of\n * walking the collection themselves.\n */\nimport {\n BaseAddon,\n authenticationCapability,\n type AuthProviderInfo,\n type IAuthenticationProvider,\n type ProviderRegistration,\n} from '@camstack/types'\n\ninterface AuthProviderRegistrationLike {\n readonly addonId?: string\n readonly displayName?: string\n readonly kind?: AuthProviderInfo['kind']\n readonly icon?: string\n readonly hasRedirectFlow?: boolean\n readonly hasCredentialFlow?: boolean\n readonly status?: string\n}\n\nexport class AuthOrchestratorAddon extends BaseAddon<Record<string, never>> {\n constructor() {\n super({})\n }\n\n protected async onInitialize(): Promise<ProviderRegistration[]> {\n const provider: IAuthenticationProvider = {\n listProviders: async () => this.listProviders(),\n setProviderEnabled: async () => {\n // Persistence is per-addon today — operators toggle enabled\n // via the provider addon's own settings panel. The orchestrator\n // exposes the affordance for forward-compat (UI may move the\n // enabled toggle into the Authentication page later) but\n // currently no-ops the persistence side.\n return { success: true as const }\n },\n }\n this.ctx.logger.info('Authentication orchestrator initialized')\n return [{ capability: authenticationCapability, provider }]\n }\n\n private async listProviders(): Promise<readonly AuthProviderInfo[]> {\n const entries = this.capabilities?.getCollectionEntries<AuthProviderRegistrationLike>('auth-provider') ?? []\n return entries.map(([addonId, raw]) => ({\n addonId: raw?.addonId ?? addonId,\n displayName: raw?.displayName ?? addonId,\n kind: raw?.kind ?? (addonId === 'local-auth' ? ('local' as const) : ('other' as const)),\n ...(raw?.icon !== undefined ? { icon: raw.icon } : {}),\n hasRedirectFlow: raw?.hasRedirectFlow ?? false,\n hasCredentialFlow: raw?.hasCredentialFlow ?? (addonId === 'local-auth'),\n ...(raw?.status !== undefined ? { status: raw.status } : {}),\n enabled: true,\n }))\n }\n}\n\nexport default AuthOrchestratorAddon\n"],"mappings":";;;;;;;;;;;;;;;;AAgCA,IAAa,wBAAb,cAA2C,UAAiC;CAC1E,cAAc;EACZ,MAAM,EAAE,CAAC;;CAGX,MAAgB,eAAgD;EAC9D,MAAM,WAAoC;GACxC,eAAe,YAAY,KAAK,eAAe;GAC/C,oBAAoB,YAAY;IAM9B,OAAO,EAAE,SAAS,MAAe;;GAEpC;EACD,KAAK,IAAI,OAAO,KAAK,0CAA0C;EAC/D,OAAO,CAAC;GAAE,YAAY;GAA0B;GAAU,CAAC;;CAG7D,MAAc,gBAAsD;EAElE,QADgB,KAAK,cAAc,qBAAmD,gBAAgB,IAAI,EAAE,EAC7F,KAAK,CAAC,SAAS,UAAU;GACtC,SAAS,KAAK,WAAW;GACzB,aAAa,KAAK,eAAe;GACjC,MAAM,KAAK,SAAS,YAAY,eAAgB,UAAqB;GACrE,GAAI,KAAK,SAAS,KAAA,IAAY,EAAE,MAAM,IAAI,MAAM,GAAG,EAAE;GACrD,iBAAiB,KAAK,mBAAmB;GACzC,mBAAmB,KAAK,qBAAsB,YAAY;GAC1D,GAAI,KAAK,WAAW,KAAA,IAAY,EAAE,QAAQ,IAAI,QAAQ,GAAG,EAAE;GAC3D,SAAS;GACV,EAAE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/builtins/auth-orchestrator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
Object.defineProperties(exports, {
|
|
2
|
+
__esModule: { value: true },
|
|
3
|
+
[Symbol.toStringTag]: { value: "Module" }
|
|
4
|
+
});
|
|
5
|
+
const require_builtins_auth_orchestrator_auth_orchestrator_addon = require("./auth-orchestrator.addon.js");
|
|
6
|
+
exports.AuthOrchestratorAddon = require_builtins_auth_orchestrator_auth_orchestrator_addon.AuthOrchestratorAddon;
|
|
7
|
+
exports.default = require_builtins_auth_orchestrator_auth_orchestrator_addon.AuthOrchestratorAddon;
|