@webda/core 4.0.0-beta.2 → 4.0.0-beta.4
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/README.md +252 -0
- package/lib/application/application.d.ts +468 -0
- package/lib/application/application.d.ts.map +1 -0
- package/lib/application/application.js +845 -0
- package/lib/application/application.js.map +1 -0
- package/lib/application/deployment.d.ts +93 -0
- package/lib/application/deployment.d.ts.map +1 -0
- package/lib/application/deployment.js +99 -0
- package/lib/application/deployment.js.map +1 -0
- package/lib/application/hooks.d.ts +34 -0
- package/lib/application/hooks.d.ts.map +1 -0
- package/lib/application/hooks.js +57 -0
- package/lib/application/hooks.js.map +1 -0
- package/lib/application/iapplication.d.ts +43 -0
- package/lib/application/iapplication.d.ts.map +1 -0
- package/lib/application/iapplication.js +2 -0
- package/lib/application/iapplication.js.map +1 -0
- package/lib/application/iconfiguration.d.ts +176 -0
- package/lib/application/iconfiguration.d.ts.map +1 -0
- package/lib/application/iconfiguration.js +8 -0
- package/lib/application/iconfiguration.js.map +1 -0
- package/lib/application/runner.d.ts +8 -0
- package/lib/application/runner.d.ts.map +1 -0
- package/lib/application/runner.js +26 -0
- package/lib/application/runner.js.map +1 -0
- package/lib/{unpackedapplication.d.ts → application/unpackedapplication.d.ts} +43 -23
- package/lib/application/unpackedapplication.d.ts.map +1 -0
- package/lib/application/unpackedapplication.js +500 -0
- package/lib/application/unpackedapplication.js.map +1 -0
- package/lib/bin/cli-phase.d.ts +28 -0
- package/lib/bin/cli-phase.d.ts.map +1 -0
- package/lib/bin/cli-phase.js +44 -0
- package/lib/bin/cli-phase.js.map +1 -0
- package/lib/bin/cli.d.ts +196 -0
- package/lib/bin/cli.d.ts.map +1 -0
- package/lib/bin/cli.js +934 -0
- package/lib/bin/cli.js.map +1 -0
- package/lib/bin/launcher.d.ts +3 -0
- package/lib/bin/launcher.d.ts.map +1 -0
- package/lib/bin/launcher.js +50 -0
- package/lib/bin/launcher.js.map +1 -0
- package/lib/cache/cache.d.ts +33 -0
- package/lib/cache/cache.d.ts.map +1 -0
- package/lib/cache/cache.js +8 -0
- package/lib/cache/cache.js.map +1 -0
- package/lib/{services/configuration.d.ts → configurations/configuration.service.d.ts} +58 -58
- package/lib/configurations/configuration.service.d.ts.map +1 -0
- package/lib/configurations/configuration.service.js +248 -0
- package/lib/configurations/configuration.service.js.map +1 -0
- package/lib/configurations/fileconfiguration.service.d.ts +30 -0
- package/lib/configurations/fileconfiguration.service.d.ts.map +1 -0
- package/lib/configurations/fileconfiguration.service.js +65 -0
- package/lib/configurations/fileconfiguration.service.js.map +1 -0
- package/lib/configurations/kubernetesconfiguration.service.d.ts +43 -0
- package/lib/configurations/kubernetesconfiguration.service.d.ts.map +1 -0
- package/lib/configurations/kubernetesconfiguration.service.js +83 -0
- package/lib/configurations/kubernetesconfiguration.service.js.map +1 -0
- package/lib/contexts/execution.d.ts +33 -0
- package/lib/contexts/execution.d.ts.map +1 -0
- package/lib/contexts/execution.js +73 -0
- package/lib/contexts/execution.js.map +1 -0
- package/lib/contexts/globalcontext.d.ts +29 -0
- package/lib/contexts/globalcontext.d.ts.map +1 -0
- package/lib/contexts/globalcontext.js +38 -0
- package/lib/contexts/globalcontext.js.map +1 -0
- package/lib/{utils → contexts}/httpcontext.d.ts +44 -19
- package/lib/contexts/httpcontext.d.ts.map +1 -0
- package/lib/{utils → contexts}/httpcontext.js +95 -27
- package/lib/contexts/httpcontext.js.map +1 -0
- package/lib/contexts/icontext.d.ts +236 -0
- package/lib/contexts/icontext.d.ts.map +1 -0
- package/lib/contexts/icontext.js +230 -0
- package/lib/contexts/icontext.js.map +1 -0
- package/lib/contexts/operationcontext.d.ts +182 -0
- package/lib/contexts/operationcontext.d.ts.map +1 -0
- package/lib/contexts/operationcontext.js +361 -0
- package/lib/contexts/operationcontext.js.map +1 -0
- package/lib/contexts/simplecontext.d.ts +31 -0
- package/lib/contexts/simplecontext.d.ts.map +1 -0
- package/lib/contexts/simplecontext.js +45 -0
- package/lib/contexts/simplecontext.js.map +1 -0
- package/lib/contexts/webcontext.d.ts +218 -0
- package/lib/contexts/webcontext.d.ts.map +1 -0
- package/lib/contexts/webcontext.js +389 -0
- package/lib/contexts/webcontext.js.map +1 -0
- package/lib/core/authorizer.d.ts +23 -0
- package/lib/core/authorizer.d.ts.map +1 -0
- package/lib/core/authorizer.js +17 -0
- package/lib/core/authorizer.js.map +1 -0
- package/lib/core/core.d.ts +225 -0
- package/lib/core/core.d.ts.map +1 -0
- package/lib/core/core.js +576 -0
- package/lib/core/core.js.map +1 -0
- package/lib/core/hooks.d.ts +94 -0
- package/lib/core/hooks.d.ts.map +1 -0
- package/lib/core/hooks.js +97 -0
- package/lib/core/hooks.js.map +1 -0
- package/lib/core/icore.d.ts +249 -0
- package/lib/core/icore.d.ts.map +1 -0
- package/lib/core/icore.js +15 -0
- package/lib/core/icore.js.map +1 -0
- package/lib/core/instancestorage.d.ts +61 -0
- package/lib/core/instancestorage.d.ts.map +1 -0
- package/lib/core/instancestorage.js +75 -0
- package/lib/core/instancestorage.js.map +1 -0
- package/lib/core/operations.d.ts +181 -0
- package/lib/core/operations.d.ts.map +1 -0
- package/lib/core/operations.js +559 -0
- package/lib/core/operations.js.map +1 -0
- package/lib/deployers/deployer.d.ts +157 -0
- package/lib/deployers/deployer.d.ts.map +1 -0
- package/lib/deployers/deployer.js +81 -0
- package/lib/deployers/deployer.js.map +1 -0
- package/lib/deployers/git.d.ts +27 -0
- package/lib/deployers/git.d.ts.map +1 -0
- package/lib/deployers/git.js +66 -0
- package/lib/deployers/git.js.map +1 -0
- package/lib/deployers/packager.d.ts +85 -0
- package/lib/deployers/packager.d.ts.map +1 -0
- package/lib/deployers/packager.js +259 -0
- package/lib/deployers/packager.js.map +1 -0
- package/lib/errors/errors.d.ts +126 -0
- package/lib/errors/errors.d.ts.map +1 -0
- package/lib/errors/errors.js +165 -0
- package/lib/errors/errors.js.map +1 -0
- package/lib/events/asynceventemitter.d.ts +159 -0
- package/lib/events/asynceventemitter.d.ts.map +1 -0
- package/lib/events/asynceventemitter.js +152 -0
- package/lib/events/asynceventemitter.js.map +1 -0
- package/lib/events/events.d.ts +112 -0
- package/lib/events/events.d.ts.map +1 -0
- package/lib/events/events.js +45 -0
- package/lib/events/events.js.map +1 -0
- package/lib/index.d.ts +88 -54
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +88 -64
- package/lib/index.js.map +1 -1
- package/lib/loggers/console.service.d.ts +24 -0
- package/lib/loggers/console.service.d.ts.map +1 -0
- package/lib/loggers/console.service.js +30 -0
- package/lib/loggers/console.service.js.map +1 -0
- package/lib/loggers/file.service.d.ts +25 -0
- package/lib/loggers/file.service.d.ts.map +1 -0
- package/lib/loggers/file.service.js +33 -0
- package/lib/loggers/file.service.js.map +1 -0
- package/lib/loggers/hooks.d.ts +20 -0
- package/lib/loggers/hooks.d.ts.map +1 -0
- package/lib/loggers/hooks.js +40 -0
- package/lib/loggers/hooks.js.map +1 -0
- package/lib/loggers/ilogger.d.ts +76 -0
- package/lib/loggers/ilogger.d.ts.map +1 -0
- package/lib/loggers/ilogger.js +108 -0
- package/lib/loggers/ilogger.js.map +1 -0
- package/lib/loggers/logger.d.ts +13 -0
- package/lib/loggers/logger.d.ts.map +1 -0
- package/lib/loggers/logger.js +18 -0
- package/lib/loggers/logger.js.map +1 -0
- package/lib/loggers/memory.service.d.ts +18 -0
- package/lib/loggers/memory.service.d.ts.map +1 -0
- package/lib/loggers/memory.service.js +21 -0
- package/lib/loggers/memory.service.js.map +1 -0
- package/lib/loggers/params.d.ts +47 -0
- package/lib/loggers/params.d.ts.map +1 -0
- package/lib/loggers/params.js +56 -0
- package/lib/loggers/params.js.map +1 -0
- package/lib/metrics/metrics.d.ts +25 -0
- package/lib/metrics/metrics.d.ts.map +1 -0
- package/lib/metrics/metrics.js +51 -0
- package/lib/metrics/metrics.js.map +1 -0
- package/lib/models/aclmodel.d.ts +20 -76
- package/lib/models/aclmodel.d.ts.map +1 -1
- package/lib/models/aclmodel.js +27 -203
- package/lib/models/aclmodel.js.map +1 -1
- package/lib/models/coremodel.model.d.ts +5 -0
- package/lib/models/coremodel.model.d.ts.map +1 -0
- package/lib/models/coremodel.model.js +5 -0
- package/lib/models/coremodel.model.js.map +1 -0
- package/lib/models/decorator.d.ts +67 -0
- package/lib/models/decorator.d.ts.map +1 -0
- package/lib/models/decorator.js +67 -0
- package/lib/models/decorator.js.map +1 -0
- package/lib/models/deployment.d.ts +2 -21
- package/lib/models/deployment.d.ts.map +1 -1
- package/lib/models/encrypted.model.d.ts +46 -0
- package/lib/models/encrypted.model.d.ts.map +1 -0
- package/lib/models/encrypted.model.js +87 -0
- package/lib/models/encrypted.model.js.map +1 -0
- package/lib/models/ident.model.d.ts +128 -0
- package/lib/models/ident.model.d.ts.map +1 -0
- package/lib/models/ident.model.js +207 -0
- package/lib/models/ident.model.js.map +1 -0
- package/lib/models/ownermodel.model.d.ts +68 -0
- package/lib/models/ownermodel.model.d.ts.map +1 -0
- package/lib/models/ownermodel.model.js +113 -0
- package/lib/models/ownermodel.model.js.map +1 -0
- package/lib/models/password.model.d.ts +78 -0
- package/lib/models/password.model.d.ts.map +1 -0
- package/lib/models/password.model.js +171 -0
- package/lib/models/password.model.js.map +1 -0
- package/lib/models/refreshtoken.model.d.ts +30 -0
- package/lib/models/refreshtoken.model.d.ts.map +1 -0
- package/lib/models/refreshtoken.model.js +29 -0
- package/lib/models/refreshtoken.model.js.map +1 -0
- package/lib/models/registry.model.d.ts +76 -0
- package/lib/models/registry.model.d.ts.map +1 -0
- package/lib/models/registry.model.js +104 -0
- package/lib/models/registry.model.js.map +1 -0
- package/lib/models/rolemodel.model.d.ts +28 -0
- package/lib/models/rolemodel.model.d.ts.map +1 -0
- package/lib/models/{rolemodel.js → rolemodel.model.js} +23 -5
- package/lib/models/rolemodel.model.js.map +1 -0
- package/lib/models/simpleuser.model.d.ts +78 -0
- package/lib/models/simpleuser.model.d.ts.map +1 -0
- package/lib/models/simpleuser.model.js +124 -0
- package/lib/models/simpleuser.model.js.map +1 -0
- package/lib/models/types.d.ts +113 -0
- package/lib/models/types.d.ts.map +1 -0
- package/lib/models/types.js +2 -0
- package/lib/models/types.js.map +1 -0
- package/lib/models/user.model.d.ts +103 -0
- package/lib/models/user.model.d.ts.map +1 -0
- package/lib/models/user.model.js +164 -0
- package/lib/models/user.model.js.map +1 -0
- package/lib/queues/{memoryqueue.d.ts → memoryqueue.service.d.ts} +26 -13
- package/lib/queues/memoryqueue.service.d.ts.map +1 -0
- package/lib/queues/{memoryqueue.js → memoryqueue.service.js} +55 -31
- package/lib/queues/memoryqueue.service.js.map +1 -0
- package/lib/queues/pubsubservice.d.ts +8 -6
- package/lib/queues/pubsubservice.d.ts.map +1 -1
- package/lib/queues/pubsubservice.js +5 -4
- package/lib/queues/pubsubservice.js.map +1 -1
- package/lib/queues/queueservice.d.ts +9 -11
- package/lib/queues/queueservice.d.ts.map +1 -1
- package/lib/queues/queueservice.js +41 -13
- package/lib/queues/queueservice.js.map +1 -1
- package/lib/rest/hooks.d.ts +8 -0
- package/lib/rest/hooks.d.ts.map +1 -0
- package/lib/rest/hooks.js +10 -0
- package/lib/rest/hooks.js.map +1 -0
- package/lib/rest/irest.d.ts +212 -0
- package/lib/rest/irest.d.ts.map +1 -0
- package/lib/rest/irest.js +39 -0
- package/lib/rest/irest.js.map +1 -0
- package/lib/rest/originfilter.d.ts +38 -0
- package/lib/rest/originfilter.d.ts.map +1 -0
- package/lib/rest/originfilter.js +61 -0
- package/lib/rest/originfilter.js.map +1 -0
- package/lib/rest/restoperationstransport.service.d.ts +193 -0
- package/lib/rest/restoperationstransport.service.d.ts.map +1 -0
- package/lib/rest/restoperationstransport.service.js +780 -0
- package/lib/rest/restoperationstransport.service.js.map +1 -0
- package/lib/rest/router.service.d.ts +244 -0
- package/lib/rest/router.service.d.ts.map +1 -0
- package/lib/rest/router.service.js +843 -0
- package/lib/rest/router.service.js.map +1 -0
- package/lib/schemas/hooks.d.ts +48 -0
- package/lib/schemas/hooks.d.ts.map +1 -0
- package/lib/schemas/hooks.js +152 -0
- package/lib/schemas/hooks.js.map +1 -0
- package/lib/services/audit.model.d.ts +208 -0
- package/lib/services/audit.model.d.ts.map +1 -0
- package/lib/services/audit.model.js +432 -0
- package/lib/services/audit.model.js.map +1 -0
- package/lib/services/binary.service.d.ts +808 -0
- package/lib/services/binary.service.d.ts.map +1 -0
- package/lib/services/binary.service.js +1365 -0
- package/lib/services/binary.service.js.map +1 -0
- package/lib/services/cloudbinary.d.ts +17 -12
- package/lib/services/cloudbinary.d.ts.map +1 -1
- package/lib/services/cloudbinary.js +23 -17
- package/lib/services/cloudbinary.js.map +1 -1
- package/lib/services/command.d.ts +118 -0
- package/lib/services/command.d.ts.map +1 -0
- package/lib/services/command.js +97 -0
- package/lib/services/command.js.map +1 -0
- package/lib/services/cron.service.d.ts +142 -0
- package/lib/services/cron.service.d.ts.map +1 -0
- package/lib/services/cron.service.js +291 -0
- package/lib/services/cron.service.js.map +1 -0
- package/lib/services/{cryptoservice.d.ts → cryptoservice.service.d.ts} +75 -141
- package/lib/services/cryptoservice.service.d.ts.map +1 -0
- package/lib/services/cryptoservice.service.js +527 -0
- package/lib/services/cryptoservice.service.js.map +1 -0
- package/lib/services/debugmailer.service.d.ts +49 -0
- package/lib/services/debugmailer.service.d.ts.map +1 -0
- package/lib/services/{debugmailer.js → debugmailer.service.js} +25 -10
- package/lib/services/debugmailer.service.js.map +1 -0
- package/lib/services/domainservice.service.d.ts +242 -0
- package/lib/services/domainservice.service.d.ts.map +1 -0
- package/lib/services/domainservice.service.js +676 -0
- package/lib/services/domainservice.service.js.map +1 -0
- package/lib/services/httpserver.service.d.ts +248 -0
- package/lib/services/httpserver.service.d.ts.map +1 -0
- package/lib/services/httpserver.service.js +673 -0
- package/lib/services/httpserver.service.js.map +1 -0
- package/lib/services/iauthentication.d.ts +202 -0
- package/lib/services/iauthentication.d.ts.map +1 -0
- package/lib/services/iauthentication.js +2 -0
- package/lib/services/iauthentication.js.map +1 -0
- package/lib/services/icryptoservice.d.ts +127 -0
- package/lib/services/icryptoservice.d.ts.map +1 -0
- package/lib/services/icryptoservice.js +68 -0
- package/lib/services/icryptoservice.js.map +1 -0
- package/lib/services/imailer.d.ts +17 -0
- package/lib/services/imailer.d.ts.map +1 -0
- package/lib/services/imailer.js +2 -0
- package/lib/services/imailer.js.map +1 -0
- package/lib/services/iservice.d.ts +104 -0
- package/lib/services/iservice.d.ts.map +1 -0
- package/lib/services/iservice.js +63 -0
- package/lib/services/iservice.js.map +1 -0
- package/lib/services/mailer.service.d.ts +220 -0
- package/lib/services/mailer.service.d.ts.map +1 -0
- package/lib/services/mailer.service.js +251 -0
- package/lib/services/mailer.service.js.map +1 -0
- package/lib/services/{notificationservice.d.ts → notificationservice.service.d.ts} +10 -11
- package/lib/services/notificationservice.service.d.ts.map +1 -0
- package/lib/services/{notificationservice.js → notificationservice.service.js} +24 -12
- package/lib/services/notificationservice.service.js.map +1 -0
- package/lib/services/operationstransport.d.ts +65 -0
- package/lib/services/operationstransport.d.ts.map +1 -0
- package/lib/services/operationstransport.js +103 -0
- package/lib/services/operationstransport.js.map +1 -0
- package/lib/services/{prometheus.d.ts → prometheus.service.d.ts} +13 -12
- package/lib/services/prometheus.service.d.ts.map +1 -0
- package/lib/services/prometheus.service.js +203 -0
- package/lib/services/prometheus.service.js.map +1 -0
- package/lib/services/{resource.d.ts → resource.service.d.ts} +34 -15
- package/lib/services/resource.service.d.ts.map +1 -0
- package/lib/services/resource.service.js +301 -0
- package/lib/services/resource.service.js.map +1 -0
- package/lib/services/service.d.ts +87 -188
- package/lib/services/service.d.ts.map +1 -1
- package/lib/services/service.js +407 -422
- package/lib/services/service.js.map +1 -1
- package/lib/services/servicecommands.d.ts +99 -0
- package/lib/services/servicecommands.d.ts.map +1 -0
- package/lib/services/servicecommands.js +171 -0
- package/lib/services/servicecommands.js.map +1 -0
- package/lib/services/serviceparameters.d.ts +33 -0
- package/lib/services/serviceparameters.d.ts.map +1 -0
- package/lib/services/serviceparameters.js +79 -0
- package/lib/services/serviceparameters.js.map +1 -0
- package/lib/services/token.service.d.ts +95 -0
- package/lib/services/token.service.d.ts.map +1 -0
- package/lib/services/token.service.js +182 -0
- package/lib/services/token.service.js.map +1 -0
- package/lib/{utils → session}/cookie.d.ts +32 -19
- package/lib/session/cookie.d.ts.map +1 -0
- package/lib/{utils → session}/cookie.js +76 -23
- package/lib/session/cookie.js.map +1 -0
- package/lib/session/manager.model.d.ts +87 -0
- package/lib/session/manager.model.d.ts.map +1 -0
- package/lib/session/manager.model.js +212 -0
- package/lib/session/manager.model.js.map +1 -0
- package/lib/session/session.d.ts +100 -0
- package/lib/session/session.d.ts.map +1 -0
- package/lib/session/session.js +175 -0
- package/lib/session/session.js.map +1 -0
- package/lib/stores/istore.d.ts +99 -0
- package/lib/stores/istore.d.ts.map +1 -0
- package/lib/stores/istore.js +26 -0
- package/lib/stores/istore.js.map +1 -0
- package/lib/stores/memory.service.d.ts +114 -0
- package/lib/stores/memory.service.d.ts.map +1 -0
- package/lib/stores/memory.service.js +344 -0
- package/lib/stores/memory.service.js.map +1 -0
- package/lib/stores/store.d.ts +126 -626
- package/lib/stores/store.d.ts.map +1 -1
- package/lib/stores/store.js +257 -1117
- package/lib/stores/store.js.map +1 -1
- package/lib/templates/templates.d.ts +47 -0
- package/lib/templates/templates.d.ts.map +1 -0
- package/lib/templates/templates.js +101 -0
- package/lib/templates/templates.js.map +1 -0
- package/lib/test/application.d.ts +174 -0
- package/lib/test/application.d.ts.map +1 -0
- package/lib/test/application.js +288 -0
- package/lib/test/application.js.map +1 -0
- package/lib/test/asyncstorage.d.ts +16 -0
- package/lib/test/asyncstorage.d.ts.map +1 -0
- package/lib/test/asyncstorage.js +32 -0
- package/lib/test/asyncstorage.js.map +1 -0
- package/lib/test/behavior-fixture.model.d.ts +30 -0
- package/lib/test/behavior-fixture.model.d.ts.map +1 -0
- package/lib/test/behavior-fixture.model.js +63 -0
- package/lib/test/behavior-fixture.model.js.map +1 -0
- package/lib/test/core.d.ts +63 -0
- package/lib/test/core.d.ts.map +1 -0
- package/lib/test/core.js +190 -0
- package/lib/test/core.js.map +1 -0
- package/lib/test/index.d.ts +7 -0
- package/lib/test/index.d.ts.map +1 -0
- package/lib/test/index.js +8 -0
- package/lib/test/index.js.map +1 -0
- package/lib/test/internal.d.ts +34 -0
- package/lib/test/internal.d.ts.map +1 -0
- package/lib/test/internal.js +156 -0
- package/lib/test/internal.js.map +1 -0
- package/lib/test/legacyident.fixture.model.d.ts +98 -0
- package/lib/test/legacyident.fixture.model.d.ts.map +1 -0
- package/lib/test/legacyident.fixture.model.js +125 -0
- package/lib/test/legacyident.fixture.model.js.map +1 -0
- package/lib/test/objects.d.ts +318 -0
- package/lib/test/objects.d.ts.map +1 -0
- package/lib/test/objects.js +443 -0
- package/lib/test/objects.js.map +1 -0
- package/lib/utils/abstractdeployer.d.ts +4 -2
- package/lib/utils/abstractdeployer.d.ts.map +1 -1
- package/lib/utils/abstractdeployer.js +3 -0
- package/lib/utils/abstractdeployer.js.map +1 -1
- package/package.json +102 -60
- package/test/cachedapp/webda.config.json +1 -5
- package/test/config-cached.json +3 -6
- package/test/config.json +3 -10
- package/test/my-cnf.json +9 -0
- package/webda.module.json +3755 -2496
- package/lib/application.d.ts +0 -888
- package/lib/application.d.ts.map +0 -1
- package/lib/application.js +0 -768
- package/lib/application.js.map +0 -1
- package/lib/application.spec.d.ts +0 -2
- package/lib/application.spec.d.ts.map +0 -1
- package/lib/application.spec.js +0 -248
- package/lib/application.spec.js.map +0 -1
- package/lib/core.d.ts +0 -743
- package/lib/core.d.ts.map +0 -1
- package/lib/core.js +0 -1334
- package/lib/core.js.map +0 -1
- package/lib/core.spec.d.ts +0 -2
- package/lib/core.spec.d.ts.map +0 -1
- package/lib/core.spec.js +0 -790
- package/lib/core.spec.js.map +0 -1
- package/lib/errors.d.ts +0 -64
- package/lib/errors.d.ts.map +0 -1
- package/lib/errors.js +0 -97
- package/lib/errors.js.map +0 -1
- package/lib/errors.spec.d.ts +0 -2
- package/lib/errors.spec.d.ts.map +0 -1
- package/lib/errors.spec.js +0 -33
- package/lib/errors.spec.js.map +0 -1
- package/lib/models/aclmodel.spec.d.ts +0 -2
- package/lib/models/aclmodel.spec.d.ts.map +0 -1
- package/lib/models/aclmodel.spec.js +0 -187
- package/lib/models/aclmodel.spec.js.map +0 -1
- package/lib/models/coremodel.d.ts +0 -896
- package/lib/models/coremodel.d.ts.map +0 -1
- package/lib/models/coremodel.js +0 -1214
- package/lib/models/coremodel.js.map +0 -1
- package/lib/models/coremodel.spec.d.ts +0 -2
- package/lib/models/coremodel.spec.d.ts.map +0 -1
- package/lib/models/coremodel.spec.js +0 -464
- package/lib/models/coremodel.spec.js.map +0 -1
- package/lib/models/ident.d.ts +0 -68
- package/lib/models/ident.d.ts.map +0 -1
- package/lib/models/ident.js +0 -26
- package/lib/models/ident.js.map +0 -1
- package/lib/models/ident.spec.d.ts +0 -2
- package/lib/models/ident.spec.d.ts.map +0 -1
- package/lib/models/ident.spec.js +0 -24
- package/lib/models/ident.spec.js.map +0 -1
- package/lib/models/ownermodel.d.ts +0 -51
- package/lib/models/ownermodel.d.ts.map +0 -1
- package/lib/models/ownermodel.js +0 -65
- package/lib/models/ownermodel.js.map +0 -1
- package/lib/models/ownermodel.spec.d.ts +0 -2
- package/lib/models/ownermodel.spec.d.ts.map +0 -1
- package/lib/models/ownermodel.spec.js +0 -215
- package/lib/models/ownermodel.spec.js.map +0 -1
- package/lib/models/relations.d.ts +0 -182
- package/lib/models/relations.d.ts.map +0 -1
- package/lib/models/relations.js +0 -157
- package/lib/models/relations.js.map +0 -1
- package/lib/models/relations.spec.d.ts +0 -14
- package/lib/models/relations.spec.d.ts.map +0 -1
- package/lib/models/relations.spec.js +0 -217
- package/lib/models/relations.spec.js.map +0 -1
- package/lib/models/rolemodel.d.ts +0 -11
- package/lib/models/rolemodel.d.ts.map +0 -1
- package/lib/models/rolemodel.js.map +0 -1
- package/lib/models/rolemodel.spec.d.ts +0 -2
- package/lib/models/rolemodel.spec.d.ts.map +0 -1
- package/lib/models/rolemodel.spec.js +0 -90
- package/lib/models/rolemodel.spec.js.map +0 -1
- package/lib/models/simpleuser.d.ts +0 -47
- package/lib/models/simpleuser.d.ts.map +0 -1
- package/lib/models/simpleuser.js +0 -84
- package/lib/models/simpleuser.js.map +0 -1
- package/lib/models/test.d.ts +0 -11
- package/lib/models/test.d.ts.map +0 -1
- package/lib/models/test.js +0 -7
- package/lib/models/test.js.map +0 -1
- package/lib/models/user.d.ts +0 -67
- package/lib/models/user.d.ts.map +0 -1
- package/lib/models/user.js +0 -86
- package/lib/models/user.js.map +0 -1
- package/lib/models/user.spec.d.ts +0 -2
- package/lib/models/user.spec.d.ts.map +0 -1
- package/lib/models/user.spec.js +0 -89
- package/lib/models/user.spec.js.map +0 -1
- package/lib/queues/filequeue.d.ts +0 -59
- package/lib/queues/filequeue.d.ts.map +0 -1
- package/lib/queues/filequeue.js +0 -131
- package/lib/queues/filequeue.js.map +0 -1
- package/lib/queues/filequeue.spec.d.ts +0 -2
- package/lib/queues/filequeue.spec.d.ts.map +0 -1
- package/lib/queues/filequeue.spec.js +0 -84
- package/lib/queues/filequeue.spec.js.map +0 -1
- package/lib/queues/memoryqueue.d.ts.map +0 -1
- package/lib/queues/memoryqueue.js.map +0 -1
- package/lib/queues/memoryqueue.spec.d.ts +0 -2
- package/lib/queues/memoryqueue.spec.d.ts.map +0 -1
- package/lib/queues/memoryqueue.spec.js +0 -203
- package/lib/queues/memoryqueue.spec.js.map +0 -1
- package/lib/queues/queue.spec.d.ts +0 -6
- package/lib/queues/queue.spec.d.ts.map +0 -1
- package/lib/queues/queue.spec.js +0 -55
- package/lib/queues/queue.spec.js.map +0 -1
- package/lib/rest/restdomainservice.d.ts +0 -63
- package/lib/rest/restdomainservice.d.ts.map +0 -1
- package/lib/rest/restdomainservice.js +0 -687
- package/lib/rest/restdomainservice.js.map +0 -1
- package/lib/rest/restdomainservice.spec.d.ts +0 -2
- package/lib/rest/restdomainservice.spec.d.ts.map +0 -1
- package/lib/rest/restdomainservice.spec.js +0 -124
- package/lib/rest/restdomainservice.spec.js.map +0 -1
- package/lib/rest/router.d.ts +0 -174
- package/lib/rest/router.d.ts.map +0 -1
- package/lib/rest/router.js +0 -429
- package/lib/rest/router.js.map +0 -1
- package/lib/rest/router.spec.d.ts +0 -2
- package/lib/rest/router.spec.d.ts.map +0 -1
- package/lib/rest/router.spec.js +0 -255
- package/lib/rest/router.spec.js.map +0 -1
- package/lib/services/asyncevents.d.ts +0 -152
- package/lib/services/asyncevents.d.ts.map +0 -1
- package/lib/services/asyncevents.js +0 -217
- package/lib/services/asyncevents.js.map +0 -1
- package/lib/services/asyncevents.spec.d.ts +0 -2
- package/lib/services/asyncevents.spec.d.ts.map +0 -1
- package/lib/services/asyncevents.spec.js +0 -118
- package/lib/services/asyncevents.spec.js.map +0 -1
- package/lib/services/authentication.d.ts +0 -361
- package/lib/services/authentication.d.ts.map +0 -1
- package/lib/services/authentication.js +0 -773
- package/lib/services/authentication.js.map +0 -1
- package/lib/services/authentication.spec.d.ts +0 -2
- package/lib/services/authentication.spec.d.ts.map +0 -1
- package/lib/services/authentication.spec.js +0 -458
- package/lib/services/authentication.spec.js.map +0 -1
- package/lib/services/binary.d.ts +0 -477
- package/lib/services/binary.d.ts.map +0 -1
- package/lib/services/binary.js +0 -617
- package/lib/services/binary.js.map +0 -1
- package/lib/services/binary.spec.d.ts +0 -41
- package/lib/services/binary.spec.d.ts.map +0 -1
- package/lib/services/binary.spec.js +0 -151
- package/lib/services/binary.spec.js.map +0 -1
- package/lib/services/cloudbinary.spec.d.ts +0 -6
- package/lib/services/cloudbinary.spec.d.ts.map +0 -1
- package/lib/services/cloudbinary.spec.js +0 -66
- package/lib/services/cloudbinary.spec.js.map +0 -1
- package/lib/services/configuration.d.ts.map +0 -1
- package/lib/services/configuration.js +0 -193
- package/lib/services/configuration.js.map +0 -1
- package/lib/services/configuration.spec.d.ts +0 -2
- package/lib/services/configuration.spec.d.ts.map +0 -1
- package/lib/services/configuration.spec.js +0 -130
- package/lib/services/configuration.spec.js.map +0 -1
- package/lib/services/cron.d.ts +0 -74
- package/lib/services/cron.d.ts.map +0 -1
- package/lib/services/cron.js +0 -141
- package/lib/services/cron.js.map +0 -1
- package/lib/services/cron.spec.d.ts +0 -2
- package/lib/services/cron.spec.d.ts.map +0 -1
- package/lib/services/cron.spec.js +0 -76
- package/lib/services/cron.spec.js.map +0 -1
- package/lib/services/cryptoservice.d.ts.map +0 -1
- package/lib/services/cryptoservice.js +0 -433
- package/lib/services/cryptoservice.js.map +0 -1
- package/lib/services/cryptoservice.spec.d.ts +0 -2
- package/lib/services/cryptoservice.spec.d.ts.map +0 -1
- package/lib/services/cryptoservice.spec.js +0 -177
- package/lib/services/cryptoservice.spec.js.map +0 -1
- package/lib/services/debugmailer.d.ts +0 -36
- package/lib/services/debugmailer.d.ts.map +0 -1
- package/lib/services/debugmailer.js.map +0 -1
- package/lib/services/debugmailer.spec.d.ts +0 -2
- package/lib/services/debugmailer.spec.d.ts.map +0 -1
- package/lib/services/debugmailer.spec.js +0 -32
- package/lib/services/debugmailer.spec.js.map +0 -1
- package/lib/services/domainservice.d.ts +0 -272
- package/lib/services/domainservice.d.ts.map +0 -1
- package/lib/services/domainservice.js +0 -651
- package/lib/services/domainservice.js.map +0 -1
- package/lib/services/domainservice.spec.d.ts +0 -2
- package/lib/services/domainservice.spec.d.ts.map +0 -1
- package/lib/services/domainservice.spec.js +0 -592
- package/lib/services/domainservice.spec.js.map +0 -1
- package/lib/services/filebinary.d.ts +0 -136
- package/lib/services/filebinary.d.ts.map +0 -1
- package/lib/services/filebinary.js +0 -373
- package/lib/services/filebinary.js.map +0 -1
- package/lib/services/filebinary.spec.d.ts +0 -25
- package/lib/services/filebinary.spec.d.ts.map +0 -1
- package/lib/services/filebinary.spec.js +0 -428
- package/lib/services/filebinary.spec.js.map +0 -1
- package/lib/services/fileconfiguration.d.ts +0 -23
- package/lib/services/fileconfiguration.d.ts.map +0 -1
- package/lib/services/fileconfiguration.js +0 -48
- package/lib/services/fileconfiguration.js.map +0 -1
- package/lib/services/fileconfiguration.spec.d.ts +0 -2
- package/lib/services/fileconfiguration.spec.d.ts.map +0 -1
- package/lib/services/fileconfiguration.spec.js +0 -215
- package/lib/services/fileconfiguration.spec.js.map +0 -1
- package/lib/services/invitationservice.d.ts +0 -223
- package/lib/services/invitationservice.d.ts.map +0 -1
- package/lib/services/invitationservice.js +0 -529
- package/lib/services/invitationservice.js.map +0 -1
- package/lib/services/invitationservice.spec.d.ts +0 -2
- package/lib/services/invitationservice.spec.d.ts.map +0 -1
- package/lib/services/invitationservice.spec.js +0 -567
- package/lib/services/invitationservice.spec.js.map +0 -1
- package/lib/services/kubernetesconfiguration.d.ts +0 -27
- package/lib/services/kubernetesconfiguration.d.ts.map +0 -1
- package/lib/services/kubernetesconfiguration.js +0 -52
- package/lib/services/kubernetesconfiguration.js.map +0 -1
- package/lib/services/kubernetesconfiguration.spec.d.ts +0 -2
- package/lib/services/kubernetesconfiguration.spec.d.ts.map +0 -1
- package/lib/services/kubernetesconfiguration.spec.js +0 -206
- package/lib/services/kubernetesconfiguration.spec.js.map +0 -1
- package/lib/services/mailer.d.ts +0 -166
- package/lib/services/mailer.d.ts.map +0 -1
- package/lib/services/mailer.js +0 -176
- package/lib/services/mailer.js.map +0 -1
- package/lib/services/mailer.spec.d.ts +0 -2
- package/lib/services/mailer.spec.d.ts.map +0 -1
- package/lib/services/mailer.spec.js +0 -158
- package/lib/services/mailer.spec.js.map +0 -1
- package/lib/services/notificationservice.d.ts.map +0 -1
- package/lib/services/notificationservice.js.map +0 -1
- package/lib/services/notificationservice.spec.d.ts +0 -2
- package/lib/services/notificationservice.spec.d.ts.map +0 -1
- package/lib/services/notificationservice.spec.js +0 -83
- package/lib/services/notificationservice.spec.js.map +0 -1
- package/lib/services/oauth.d.ts +0 -226
- package/lib/services/oauth.d.ts.map +0 -1
- package/lib/services/oauth.js +0 -294
- package/lib/services/oauth.js.map +0 -1
- package/lib/services/oauth.spec.d.ts +0 -2
- package/lib/services/oauth.spec.d.ts.map +0 -1
- package/lib/services/oauth.spec.js +0 -208
- package/lib/services/oauth.spec.js.map +0 -1
- package/lib/services/prometheus.d.ts.map +0 -1
- package/lib/services/prometheus.js +0 -160
- package/lib/services/prometheus.js.map +0 -1
- package/lib/services/prometheus.spec.d.ts +0 -2
- package/lib/services/prometheus.spec.d.ts.map +0 -1
- package/lib/services/prometheus.spec.js +0 -76
- package/lib/services/prometheus.spec.js.map +0 -1
- package/lib/services/resource.d.ts.map +0 -1
- package/lib/services/resource.js +0 -170
- package/lib/services/resource.js.map +0 -1
- package/lib/services/resource.spec.d.ts +0 -2
- package/lib/services/resource.spec.d.ts.map +0 -1
- package/lib/services/resource.spec.js +0 -140
- package/lib/services/resource.spec.js.map +0 -1
- package/lib/services/service.spec.d.ts +0 -2
- package/lib/services/service.spec.d.ts.map +0 -1
- package/lib/services/service.spec.js +0 -286
- package/lib/services/service.spec.js.map +0 -1
- package/lib/stores/aggregator.d.ts +0 -48
- package/lib/stores/aggregator.d.ts.map +0 -1
- package/lib/stores/aggregator.js +0 -80
- package/lib/stores/aggregator.js.map +0 -1
- package/lib/stores/file.d.ts +0 -108
- package/lib/stores/file.d.ts.map +0 -1
- package/lib/stores/file.js +0 -188
- package/lib/stores/file.js.map +0 -1
- package/lib/stores/file.spec.d.ts +0 -13
- package/lib/stores/file.spec.d.ts.map +0 -1
- package/lib/stores/file.spec.js +0 -138
- package/lib/stores/file.spec.js.map +0 -1
- package/lib/stores/mapper.d.ts +0 -150
- package/lib/stores/mapper.d.ts.map +0 -1
- package/lib/stores/mapper.js +0 -293
- package/lib/stores/mapper.js.map +0 -1
- package/lib/stores/mapper.spec.d.ts +0 -2
- package/lib/stores/mapper.spec.d.ts.map +0 -1
- package/lib/stores/mapper.spec.js +0 -167
- package/lib/stores/mapper.spec.js.map +0 -1
- package/lib/stores/memory.d.ts +0 -152
- package/lib/stores/memory.d.ts.map +0 -1
- package/lib/stores/memory.js +0 -371
- package/lib/stores/memory.js.map +0 -1
- package/lib/stores/memory.spec.d.ts +0 -14
- package/lib/stores/memory.spec.d.ts.map +0 -1
- package/lib/stores/memory.spec.js +0 -263
- package/lib/stores/memory.spec.js.map +0 -1
- package/lib/stores/modelmapper.d.ts +0 -62
- package/lib/stores/modelmapper.d.ts.map +0 -1
- package/lib/stores/modelmapper.js +0 -197
- package/lib/stores/modelmapper.js.map +0 -1
- package/lib/stores/store.spec.d.ts +0 -57
- package/lib/stores/store.spec.d.ts.map +0 -1
- package/lib/stores/store.spec.js +0 -737
- package/lib/stores/store.spec.js.map +0 -1
- package/lib/test.d.ts +0 -265
- package/lib/test.d.ts.map +0 -1
- package/lib/test.js +0 -622
- package/lib/test.js.map +0 -1
- package/lib/unpackedapplication.d.ts.map +0 -1
- package/lib/unpackedapplication.js +0 -350
- package/lib/unpackedapplication.js.map +0 -1
- package/lib/utils/abstractdeployer.spec.d.ts +0 -2
- package/lib/utils/abstractdeployer.spec.d.ts.map +0 -1
- package/lib/utils/abstractdeployer.spec.js +0 -21
- package/lib/utils/abstractdeployer.spec.js.map +0 -1
- package/lib/utils/case.d.ts +0 -8
- package/lib/utils/case.d.ts.map +0 -1
- package/lib/utils/case.js +0 -43
- package/lib/utils/case.js.map +0 -1
- package/lib/utils/case.spec.d.ts +0 -2
- package/lib/utils/case.spec.d.ts.map +0 -1
- package/lib/utils/case.spec.js +0 -50
- package/lib/utils/case.spec.js.map +0 -1
- package/lib/utils/context.d.ts +0 -482
- package/lib/utils/context.d.ts.map +0 -1
- package/lib/utils/context.js +0 -739
- package/lib/utils/context.js.map +0 -1
- package/lib/utils/context.spec.d.ts +0 -10
- package/lib/utils/context.spec.d.ts.map +0 -1
- package/lib/utils/context.spec.js +0 -383
- package/lib/utils/context.spec.js.map +0 -1
- package/lib/utils/cookie.d.ts.map +0 -1
- package/lib/utils/cookie.js.map +0 -1
- package/lib/utils/cookie.spec.d.ts +0 -2
- package/lib/utils/cookie.spec.d.ts.map +0 -1
- package/lib/utils/cookie.spec.js +0 -88
- package/lib/utils/cookie.spec.js.map +0 -1
- package/lib/utils/esm.d.ts +0 -14
- package/lib/utils/esm.d.ts.map +0 -1
- package/lib/utils/esm.js +0 -19
- package/lib/utils/esm.js.map +0 -1
- package/lib/utils/httpcontext.d.ts.map +0 -1
- package/lib/utils/httpcontext.js.map +0 -1
- package/lib/utils/httpcontext.spec.d.ts +0 -5
- package/lib/utils/httpcontext.spec.d.ts.map +0 -1
- package/lib/utils/httpcontext.spec.js +0 -77
- package/lib/utils/httpcontext.spec.js.map +0 -1
- package/lib/utils/logger.d.ts +0 -92
- package/lib/utils/logger.d.ts.map +0 -1
- package/lib/utils/logger.js +0 -121
- package/lib/utils/logger.js.map +0 -1
- package/lib/utils/logger.spec.d.ts +0 -2
- package/lib/utils/logger.spec.d.ts.map +0 -1
- package/lib/utils/logger.spec.js +0 -48
- package/lib/utils/logger.spec.js.map +0 -1
- package/lib/utils/serializers.d.ts +0 -162
- package/lib/utils/serializers.d.ts.map +0 -1
- package/lib/utils/serializers.js +0 -420
- package/lib/utils/serializers.js.map +0 -1
- package/lib/utils/serializers.spec.d.ts +0 -2
- package/lib/utils/serializers.spec.d.ts.map +0 -1
- package/lib/utils/serializers.spec.js +0 -311
- package/lib/utils/serializers.spec.js.map +0 -1
- package/lib/utils/session.d.ts +0 -123
- package/lib/utils/session.d.ts.map +0 -1
- package/lib/utils/session.js +0 -156
- package/lib/utils/session.js.map +0 -1
- package/lib/utils/session.spec.d.ts +0 -2
- package/lib/utils/session.spec.d.ts.map +0 -1
- package/lib/utils/session.spec.js +0 -81
- package/lib/utils/session.spec.js.map +0 -1
- package/lib/utils/throttler.d.ts +0 -99
- package/lib/utils/throttler.d.ts.map +0 -1
- package/lib/utils/throttler.js +0 -160
- package/lib/utils/throttler.js.map +0 -1
- package/lib/utils/throttler.spec.d.ts +0 -2
- package/lib/utils/throttler.spec.d.ts.map +0 -1
- package/lib/utils/throttler.spec.js +0 -53
- package/lib/utils/throttler.spec.js.map +0 -1
- package/lib/utils/waiter.d.ts +0 -94
- package/lib/utils/waiter.d.ts.map +0 -1
- package/lib/utils/waiter.js +0 -148
- package/lib/utils/waiter.js.map +0 -1
- package/lib/utils/waiter.spec.d.ts +0 -2
- package/lib/utils/waiter.spec.d.ts.map +0 -1
- package/lib/utils/waiter.spec.js +0 -98
- package/lib/utils/waiter.spec.js.map +0 -1
- package/test/jsonutils/mdocs.yaml +0 -56
- package/test/jsonutils/test.json +0 -3
- package/test/jsonutils/test.yml +0 -5
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"router.service.js","sourceRoot":"","sources":["../../src/rest/router.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ErrorObject } from "ajv";
|
|
2
|
+
import type { Model } from "@webda/models";
|
|
3
|
+
type NoSchemaResult = null;
|
|
4
|
+
type SchemaValidResult = true;
|
|
5
|
+
/**
|
|
6
|
+
* Copy from https://github.com/ajv-validator/ajv/blob/master/lib/runtime/validation_error.ts
|
|
7
|
+
* It is not exported by ajv
|
|
8
|
+
*/
|
|
9
|
+
export declare class ValidationError extends Error {
|
|
10
|
+
readonly errors: Partial<ErrorObject>[];
|
|
11
|
+
readonly ajv: true;
|
|
12
|
+
readonly validation: true;
|
|
13
|
+
/** Create a new ValidationError
|
|
14
|
+
* @param errors - the validation error objects
|
|
15
|
+
*/
|
|
16
|
+
constructor(errors: Partial<ErrorObject>[]);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Validate the model schema
|
|
20
|
+
* @param webdaObject The WebDA object to validate
|
|
21
|
+
* @param object The object to validate
|
|
22
|
+
* @param ignoreRequired Whether to ignore required fields
|
|
23
|
+
* @returns Whether the object is valid
|
|
24
|
+
*/
|
|
25
|
+
export declare function validateModelSchema(webdaObject: Model | string, object: any, ignoreRequired?: boolean): NoSchemaResult | SchemaValidResult;
|
|
26
|
+
/**
|
|
27
|
+
* Register a schema
|
|
28
|
+
* @param name - the name to use
|
|
29
|
+
* @param schema - the schema object
|
|
30
|
+
*/
|
|
31
|
+
export declare function registerSchema(name: string, schema: object): void;
|
|
32
|
+
/**
|
|
33
|
+
* Validate the object with schema
|
|
34
|
+
*
|
|
35
|
+
* @param schema path to use
|
|
36
|
+
* @param object to validate
|
|
37
|
+
* @param ignoreRequired - whether to ignore required fields
|
|
38
|
+
* @returns the result
|
|
39
|
+
*/
|
|
40
|
+
export declare function validateSchema(schema: string, object: any, ignoreRequired?: boolean): NoSchemaResult | SchemaValidResult;
|
|
41
|
+
/**
|
|
42
|
+
* Check whether a JSON schema is registered for the given model or schema key
|
|
43
|
+
* @param webdaObject - the Webda object to validate
|
|
44
|
+
* @returns true if the condition is met
|
|
45
|
+
*/
|
|
46
|
+
export declare function hasSchema(webdaObject: Model | string): boolean;
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=hooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/schemas/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,WAAW,EAAE,MAAM,KAAK,CAAC;AAGvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAK3C,KAAK,cAAc,GAAG,IAAI,CAAC;AAE3B,KAAK,iBAAiB,GAAG,IAAI,CAAC;AAkB9B;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;IACxC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;IACnB,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC;IAE1B;;OAEG;IACH,YAAY,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,EAAE,EAIzC;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,KAAK,GAAG,MAAM,EAC3B,MAAM,EAAE,GAAG,EACX,cAAc,CAAC,EAAE,OAAO,GACvB,cAAc,GAAG,iBAAiB,CAepC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAIjE;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,GAAG,EACX,cAAc,CAAC,EAAE,OAAO,GACvB,cAAc,GAAG,iBAAiB,CAsCpC;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,WAAW,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAyB9D"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { Ajv } from "ajv";
|
|
2
|
+
import addFormats from "ajv-formats";
|
|
3
|
+
import { useApplication, useModelId } from "../application/hooks.js";
|
|
4
|
+
import { JSONUtils } from "@webda/utils";
|
|
5
|
+
import { useLog } from "@webda/workout";
|
|
6
|
+
let ajvInstance = null;
|
|
7
|
+
/**
|
|
8
|
+
* Get or lazily create the singleton Ajv validator instance
|
|
9
|
+
* @returns the result
|
|
10
|
+
*/
|
|
11
|
+
function getAjv() {
|
|
12
|
+
if (!ajvInstance) {
|
|
13
|
+
ajvInstance = new Ajv({ allErrors: true, strict: false, allowUnionTypes: true });
|
|
14
|
+
// When content is generated
|
|
15
|
+
ajvInstance.addKeyword("$generated");
|
|
16
|
+
addFormats.default(ajvInstance);
|
|
17
|
+
}
|
|
18
|
+
ajvInstance.rawSchema ??= {};
|
|
19
|
+
return ajvInstance;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Copy from https://github.com/ajv-validator/ajv/blob/master/lib/runtime/validation_error.ts
|
|
23
|
+
* It is not exported by ajv
|
|
24
|
+
*/
|
|
25
|
+
export class ValidationError extends Error {
|
|
26
|
+
errors;
|
|
27
|
+
ajv;
|
|
28
|
+
validation;
|
|
29
|
+
/** Create a new ValidationError
|
|
30
|
+
* @param errors - the validation error objects
|
|
31
|
+
*/
|
|
32
|
+
constructor(errors) {
|
|
33
|
+
super(`validation failed: ${errors.map(e => e.message).join("; ")}`);
|
|
34
|
+
this.errors = errors;
|
|
35
|
+
this.ajv = this.validation = true;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Validate the model schema
|
|
40
|
+
* @param webdaObject The WebDA object to validate
|
|
41
|
+
* @param object The object to validate
|
|
42
|
+
* @param ignoreRequired Whether to ignore required fields
|
|
43
|
+
* @returns Whether the object is valid
|
|
44
|
+
*/
|
|
45
|
+
export function validateModelSchema(webdaObject, object, ignoreRequired) {
|
|
46
|
+
const name = typeof webdaObject === "string" ? webdaObject : useModelId(webdaObject);
|
|
47
|
+
const cacheName = `$WEBDA_${name}`;
|
|
48
|
+
const ajv = getAjv();
|
|
49
|
+
if (!ajv.rawSchema[cacheName]) {
|
|
50
|
+
const schema = useApplication()?.getSchema(name);
|
|
51
|
+
if (!schema) {
|
|
52
|
+
useLog("WARN", `No schema found for ${name}`);
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
// , false, false to avoid revalidating schema?
|
|
56
|
+
ajv.addSchema(schema, cacheName);
|
|
57
|
+
ajv.rawSchema[cacheName] = schema;
|
|
58
|
+
}
|
|
59
|
+
return validateSchema(cacheName, object, ignoreRequired);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Register a schema
|
|
63
|
+
* @param name - the name to use
|
|
64
|
+
* @param schema - the schema object
|
|
65
|
+
*/
|
|
66
|
+
export function registerSchema(name, schema) {
|
|
67
|
+
const ajv = getAjv();
|
|
68
|
+
ajv.addSchema(schema, name);
|
|
69
|
+
ajv.rawSchema[name] = schema;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Validate the object with schema
|
|
73
|
+
*
|
|
74
|
+
* @param schema path to use
|
|
75
|
+
* @param object to validate
|
|
76
|
+
* @param ignoreRequired - whether to ignore required fields
|
|
77
|
+
* @returns the result
|
|
78
|
+
*/
|
|
79
|
+
export function validateSchema(schema, object, ignoreRequired) {
|
|
80
|
+
const ajv = getAjv();
|
|
81
|
+
if (!schema.endsWith("?") && ignoreRequired) {
|
|
82
|
+
if (!ajv.rawSchema[schema + "?"] && ajv.rawSchema[schema]) {
|
|
83
|
+
const newSchema = JSONUtils.duplicate(ajv.rawSchema[schema]);
|
|
84
|
+
newSchema.required = [];
|
|
85
|
+
ajv.addSchema(newSchema, schema + "?");
|
|
86
|
+
ajv.rawSchema[schema + "?"] = newSchema;
|
|
87
|
+
}
|
|
88
|
+
schema += "?";
|
|
89
|
+
}
|
|
90
|
+
if (!ajv.rawSchema[schema]) {
|
|
91
|
+
// Lazily register from the application schema registry
|
|
92
|
+
const baseSchema = schema.endsWith("?") ? schema.slice(0, -1) : schema;
|
|
93
|
+
try {
|
|
94
|
+
const appSchema = useApplication()?.getSchema(baseSchema);
|
|
95
|
+
if (appSchema) {
|
|
96
|
+
ajv.addSchema(appSchema, baseSchema);
|
|
97
|
+
ajv.rawSchema[baseSchema] = appSchema;
|
|
98
|
+
// If ignoreRequired variant was requested, also create it
|
|
99
|
+
if (schema.endsWith("?")) {
|
|
100
|
+
const noReqSchema = JSONUtils.duplicate(appSchema);
|
|
101
|
+
noReqSchema.required = [];
|
|
102
|
+
ajv.addSchema(noReqSchema, schema);
|
|
103
|
+
ajv.rawSchema[schema] = noReqSchema;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
// Application may not be available
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
if (!ajv.rawSchema[schema]) {
|
|
112
|
+
throw new Error(`Schema not found: ${schema}`);
|
|
113
|
+
}
|
|
114
|
+
if (ajv.validate(schema, object)) {
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
throw new ValidationError(ajv.errors);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Check whether a JSON schema is registered for the given model or schema key
|
|
121
|
+
* @param webdaObject - the Webda object to validate
|
|
122
|
+
* @returns true if the condition is met
|
|
123
|
+
*/
|
|
124
|
+
export function hasSchema(webdaObject) {
|
|
125
|
+
let key;
|
|
126
|
+
if (typeof webdaObject === "string") {
|
|
127
|
+
key = webdaObject;
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
key = `$WEBDA_${useModelId(webdaObject)}`;
|
|
131
|
+
}
|
|
132
|
+
if (!key) {
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
135
|
+
if (getAjv().rawSchema[key] !== undefined) {
|
|
136
|
+
return true;
|
|
137
|
+
}
|
|
138
|
+
// Schemas baked into a package's `webda.module.json` (e.g. core's
|
|
139
|
+
// `Webda/Binary.setMetadata.input`) are loaded into the application
|
|
140
|
+
// registry but are only copied into ajv on first validation. `hasSchema`
|
|
141
|
+
// is used at operation-registration time to choose between a typed input
|
|
142
|
+
// schema and the generic `uuidRequest` fallback, so it must consult the
|
|
143
|
+
// application registry too — otherwise behaviour-action arguments lose
|
|
144
|
+
// their type info and `resolveArguments` drops every parameter past `uuid`.
|
|
145
|
+
try {
|
|
146
|
+
return useApplication()?.getSchema(key) !== undefined;
|
|
147
|
+
}
|
|
148
|
+
catch {
|
|
149
|
+
return false;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/schemas/hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import { Service } from "../services/service.js";
|
|
2
|
+
import { ServiceParameters } from "./serviceparameters.js";
|
|
3
|
+
import { CoreModel } from "../models/coremodel.model.js";
|
|
4
|
+
import { QueryValidator } from "@webda/ql";
|
|
5
|
+
import type { OperationContext } from "../contexts/operationcontext.js";
|
|
6
|
+
import { type OperationSubject } from "../core/operations.js";
|
|
7
|
+
/**
|
|
8
|
+
* Represents a single audit log entry
|
|
9
|
+
*/
|
|
10
|
+
export declare class AuditEntry extends CoreModel {
|
|
11
|
+
operationId: string;
|
|
12
|
+
success: boolean;
|
|
13
|
+
error?: string;
|
|
14
|
+
userId?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Identifier of the model the operation targeted, e.g. `WebdaSample/Post`
|
|
17
|
+
*/
|
|
18
|
+
subjectModel?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Canonical primary key of the targeted object (see `serializeSubjectKey`)
|
|
21
|
+
*/
|
|
22
|
+
subjectKey?: string;
|
|
23
|
+
get timestamp(): Date;
|
|
24
|
+
set timestamp(value: string | number | Date);
|
|
25
|
+
/** Generated by @webda/content-mapper: include values held in WEBDA_STORAGE. */
|
|
26
|
+
toJSON(): any;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Parameters for the AuditService
|
|
30
|
+
*/
|
|
31
|
+
export declare class AuditServiceParameters extends ServiceParameters {
|
|
32
|
+
/**
|
|
33
|
+
* List of operations to include/exclude.
|
|
34
|
+
* Supports wildcards and negation: ["*", "!User.Delete"]
|
|
35
|
+
* @default ["*"]
|
|
36
|
+
*/
|
|
37
|
+
operations?: string[];
|
|
38
|
+
/**
|
|
39
|
+
* Audit level filter:
|
|
40
|
+
* - "all" — audit everything (default)
|
|
41
|
+
* - "write" — everything except read operations (Get, List, Query)
|
|
42
|
+
* - "failure" — only failed operations
|
|
43
|
+
* @default "all"
|
|
44
|
+
*/
|
|
45
|
+
level?: "all" | "write" | "failure";
|
|
46
|
+
/**
|
|
47
|
+
* WebdaQL query evaluated against the session, required for global (`Audit.Query`)
|
|
48
|
+
* and other-user (`Audit.Actor`) reads, and for the history of an object that no
|
|
49
|
+
* longer exists. Unset means nobody.
|
|
50
|
+
* @example "roles CONTAINS 'admin'"
|
|
51
|
+
*/
|
|
52
|
+
readPermission?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Register the `Audit.Subject`, `Audit.Actor` and `Audit.Query` operations, which
|
|
55
|
+
* the REST/GraphQL transports then expose. Off by default so adding the service
|
|
56
|
+
* never publishes the audit trail by surprise.
|
|
57
|
+
* @default false
|
|
58
|
+
*/
|
|
59
|
+
exposeReadOperations?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Parsed exclude list
|
|
62
|
+
* @SchemaIgnore
|
|
63
|
+
*/
|
|
64
|
+
private excludedOperations;
|
|
65
|
+
/**
|
|
66
|
+
* Load parameters and parse include/exclude lists
|
|
67
|
+
* @param params - the service parameters
|
|
68
|
+
* @returns this for chaining
|
|
69
|
+
*/
|
|
70
|
+
load(params?: any): this;
|
|
71
|
+
/**
|
|
72
|
+
* Check if an operation matches a pattern (supports trailing wildcard)
|
|
73
|
+
* @param operationId - the operation identifier
|
|
74
|
+
* @param pattern - the pattern to match against
|
|
75
|
+
* @returns true if the operation matches the pattern
|
|
76
|
+
*/
|
|
77
|
+
private matchesPattern;
|
|
78
|
+
/**
|
|
79
|
+
* Check if an operation is included by this configuration
|
|
80
|
+
* @param operationId - the operation identifier
|
|
81
|
+
* @returns true if the operation is included
|
|
82
|
+
*/
|
|
83
|
+
isIncluded(operationId: string): boolean;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* @WebdaModda AuditService
|
|
87
|
+
*
|
|
88
|
+
* Service that listens to operation success/failure events and records audit entries.
|
|
89
|
+
* Entries are kept in memory (accessible via getEntries()) and saved through the
|
|
90
|
+
* AuditEntry repository (the store the AuditEntry model is mapped to, the default
|
|
91
|
+
* store otherwise).
|
|
92
|
+
*
|
|
93
|
+
* With `exposeReadOperations: true` it also registers the read operations
|
|
94
|
+
* `Audit.Subject` (history of an object), `Audit.Actor` (activity of a user) and
|
|
95
|
+
* `Audit.Query` (whole log), guarded by the object's `canAct("audit")` or the
|
|
96
|
+
* `readPermission` parameter.
|
|
97
|
+
*/
|
|
98
|
+
export declare class AuditService extends Service<AuditServiceParameters> {
|
|
99
|
+
/**
|
|
100
|
+
* In-memory log of audit entries
|
|
101
|
+
*/
|
|
102
|
+
protected entries: AuditEntry[];
|
|
103
|
+
/**
|
|
104
|
+
* Parsed readPermission
|
|
105
|
+
*/
|
|
106
|
+
protected readPermissionQuery?: QueryValidator;
|
|
107
|
+
/**
|
|
108
|
+
* Unsubscribe functions of the core event listeners
|
|
109
|
+
*/
|
|
110
|
+
protected unsubscribers: (() => void)[];
|
|
111
|
+
/**
|
|
112
|
+
* Remove the core event listeners
|
|
113
|
+
*/
|
|
114
|
+
protected unsubscribe(): void;
|
|
115
|
+
/**
|
|
116
|
+
* Stop recording audit entries
|
|
117
|
+
*/
|
|
118
|
+
stop(): Promise<void>;
|
|
119
|
+
/**
|
|
120
|
+
* Subscribe to operation success and failure events for audit logging
|
|
121
|
+
* @returns this for chaining
|
|
122
|
+
*/
|
|
123
|
+
resolve(): this;
|
|
124
|
+
/**
|
|
125
|
+
* Get all in-memory audit entries
|
|
126
|
+
* @returns the list of audit entries
|
|
127
|
+
*/
|
|
128
|
+
getEntries(): AuditEntry[];
|
|
129
|
+
/**
|
|
130
|
+
* Determine whether the given operation should be audited
|
|
131
|
+
* based on include/exclude filters and level configuration.
|
|
132
|
+
* @param operationId - the operation identifier
|
|
133
|
+
* @param success - whether the operation succeeded
|
|
134
|
+
* @returns true if this operation should be audited
|
|
135
|
+
*/
|
|
136
|
+
shouldAudit(operationId: string, success: boolean): boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Create and store an audit entry for the given operation context and optional error
|
|
139
|
+
* @param operationId - the operation identifier
|
|
140
|
+
* @param userId - the user identifier (may be undefined for anonymous)
|
|
141
|
+
* @param err - the error if the operation failed
|
|
142
|
+
* @param subject - the object the operation targeted, if any
|
|
143
|
+
*/
|
|
144
|
+
addAuditEntry(operationId: string, userId?: string, err?: Error, subject?: OperationSubject): Promise<void>;
|
|
145
|
+
/**
|
|
146
|
+
* Register the request schemas and the Audit.Subject / Audit.Actor / Audit.Query operations
|
|
147
|
+
*/
|
|
148
|
+
protected registerReadOperations(): void;
|
|
149
|
+
/**
|
|
150
|
+
* Check the readPermission query against the current session
|
|
151
|
+
* @param context - the operation context
|
|
152
|
+
* @returns true if the session matches readPermission
|
|
153
|
+
*/
|
|
154
|
+
hasReadPermission(context: OperationContext): boolean;
|
|
155
|
+
/**
|
|
156
|
+
* Query the audit entries matching a filter, newest first
|
|
157
|
+
* @param filter - WebdaQL filter (may be empty)
|
|
158
|
+
* @param limit - page size, clamped to 1..200 (default 50)
|
|
159
|
+
* @param continuationToken - token of the previous page
|
|
160
|
+
* @returns the page of entries
|
|
161
|
+
*/
|
|
162
|
+
protected findEntries(filter: string, limit?: number, continuationToken?: string): Promise<{
|
|
163
|
+
results: AuditEntry[];
|
|
164
|
+
continuationToken?: string;
|
|
165
|
+
}>;
|
|
166
|
+
/**
|
|
167
|
+
* Audit entries of one object (`Audit.Subject`)
|
|
168
|
+
*
|
|
169
|
+
* Allowed when `subject.canAct(context, "audit")` is true. When the object does not
|
|
170
|
+
* exist (deleted or never created), `readPermission` is required, otherwise 404.
|
|
171
|
+
* @param model - model identifier, e.g. `WebdaSample/Post`
|
|
172
|
+
* @param key - primary key: scalar, object of key fields, or canonical JSON array
|
|
173
|
+
* @param limit - page size
|
|
174
|
+
* @param continuationToken - token of the previous page
|
|
175
|
+
* @returns the page of entries
|
|
176
|
+
*/
|
|
177
|
+
subjectEntries(model: string, key: unknown, limit?: number, continuationToken?: string): Promise<{
|
|
178
|
+
results: AuditEntry[];
|
|
179
|
+
continuationToken?: string;
|
|
180
|
+
}>;
|
|
181
|
+
/**
|
|
182
|
+
* Audit entries of one user (`Audit.Actor`)
|
|
183
|
+
*
|
|
184
|
+
* A logged-in user can read their own entries; anyone else needs `readPermission`.
|
|
185
|
+
* @param userId - the user, defaults to the current user
|
|
186
|
+
* @param limit - page size
|
|
187
|
+
* @param continuationToken - token of the previous page
|
|
188
|
+
* @returns the page of entries
|
|
189
|
+
*/
|
|
190
|
+
actorEntries(userId?: string, limit?: number, continuationToken?: string): Promise<{
|
|
191
|
+
results: AuditEntry[];
|
|
192
|
+
continuationToken?: string;
|
|
193
|
+
}>;
|
|
194
|
+
/**
|
|
195
|
+
* Query the whole audit log (`Audit.Query`), requires `readPermission`
|
|
196
|
+
*
|
|
197
|
+
* Only the filter part of `q` is used; ordering and paging are fixed.
|
|
198
|
+
* @param q - WebdaQL filter over the entry fields
|
|
199
|
+
* @param limit - page size
|
|
200
|
+
* @param continuationToken - token of the previous page
|
|
201
|
+
* @returns the page of entries
|
|
202
|
+
*/
|
|
203
|
+
queryEntries(q?: string, limit?: number, continuationToken?: string): Promise<{
|
|
204
|
+
results: AuditEntry[];
|
|
205
|
+
continuationToken?: string;
|
|
206
|
+
}>;
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=audit.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit.model.d.ts","sourceRoot":"","sources":["../../src/services/audit.model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAiB,cAAc,EAAE,MAAM,WAAW,CAAC;AAK1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,OAAO,EAA2D,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEvH;;GAEG;AACH,qBAAa,UAAW,SAAQ,SAAS;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,SAAS,IAAI,IAAI,CAEpB;IACD,IAAI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAE1C;IAED,gFAAgF;IAChF,MAAM,IAAI,GAAG,CAQZ;CACF;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,iBAAiB;IAC3D;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CAAC;IAEpC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;OAGG;IACH,OAAO,CAAC,kBAAkB,CAAW;IAErC;;;;OAIG;IACH,IAAI,CAAC,MAAM,GAAE,GAAQ,GAAG,IAAI,CAa3B;IAED;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAQtB;;;;OAIG;IACH,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAKvC;CACF;AA6CD;;;;;;;;;;;;GAYG;AACH,qBAAa,YAAa,SAAQ,OAAO,CAAC,sBAAsB,CAAC;IAC/D;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAM;IAErC;;OAEG;IACH,SAAS,CAAC,mBAAmB,CAAC,EAAE,cAAc,CAAC;IAE/C;;OAEG;IACH,SAAS,CAAC,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAM;IAE7C;;OAEG;IACH,SAAS,CAAC,WAAW,IAAI,IAAI,CAI5B;IAED;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAG1B;IAED;;;OAGG;IACH,OAAO,IAAI,IAAI,CAed;IAED;;;OAGG;IACH,UAAU,IAAI,UAAU,EAAE,CAEzB;IAED;;;;;;OAMG;IACH,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAe1D;IAED;;;;;;OAMG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhH;IAED;;OAEG;IACH,SAAS,CAAC,sBAAsB,IAAI,IAAI,CA8BvC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAMpD;IAED;;;;;;OAMG;IACH,UAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC;QAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAQhE;IAED;;;;;;;;;;OAUG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM;iBArBtE,UAAU,EAAE;4BAAsB,MAAM;OAyD7D;IAED;;;;;;;;OAQG;IACG,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM;iBApExD,UAAU,EAAE;4BAAsB,MAAM;OA4E7D;IAED;;;;;;;;OAQG;IACG,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM;iBAvFnD,UAAU,EAAE;4BAAsB,MAAM;OAqG7D;CACF"}
|