@marinoscar/platform-api 0.0.0-stage → 0.1.0-next.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +54 -0
- package/LICENSE +21 -0
- package/README.md +106 -2
- package/dist/core/crypto/encryption-key-startup-check.d.ts +29 -0
- package/dist/core/crypto/encryption-key-startup-check.d.ts.map +1 -0
- package/dist/core/crypto/encryption-key-startup-check.js +221 -0
- package/dist/core/crypto/encryption-key-startup-check.js.map +1 -0
- package/dist/core/crypto/secret-cipher.d.ts +151 -0
- package/dist/core/crypto/secret-cipher.d.ts.map +1 -0
- package/dist/core/crypto/secret-cipher.js +452 -0
- package/dist/core/crypto/secret-cipher.js.map +1 -0
- package/dist/core/data-access/index.d.ts +6 -0
- package/dist/core/data-access/index.d.ts.map +1 -0
- package/dist/core/data-access/index.js +19 -0
- package/dist/core/data-access/index.js.map +1 -0
- package/dist/core/data-access/scoped-access.error.d.ts +35 -0
- package/dist/core/data-access/scoped-access.error.d.ts.map +1 -0
- package/dist/core/data-access/scoped-access.error.js +43 -0
- package/dist/core/data-access/scoped-access.error.js.map +1 -0
- package/dist/core/data-access/scoped-client.d.ts +104 -0
- package/dist/core/data-access/scoped-client.d.ts.map +1 -0
- package/dist/core/data-access/scoped-client.js +270 -0
- package/dist/core/data-access/scoped-client.js.map +1 -0
- package/dist/core/data-access/types.d.ts +85 -0
- package/dist/core/data-access/types.d.ts.map +1 -0
- package/dist/core/data-access/types.js +12 -0
- package/dist/core/data-access/types.js.map +1 -0
- package/dist/core/data-access/user-owned-data.registry.d.ts +60 -0
- package/dist/core/data-access/user-owned-data.registry.d.ts.map +1 -0
- package/dist/core/data-access/user-owned-data.registry.js +140 -0
- package/dist/core/data-access/user-owned-data.registry.js.map +1 -0
- package/dist/core/errors/database-seed.exception.d.ts +23 -0
- package/dist/core/errors/database-seed.exception.d.ts.map +1 -0
- package/dist/core/errors/database-seed.exception.js +49 -0
- package/dist/core/errors/database-seed.exception.js.map +1 -0
- package/dist/core/errors/error.dto.d.ts +47 -0
- package/dist/core/errors/error.dto.d.ts.map +1 -0
- package/dist/core/errors/error.dto.js +121 -0
- package/dist/core/errors/error.dto.js.map +1 -0
- package/dist/core/errors/http-exception.filter.d.ts +63 -0
- package/dist/core/errors/http-exception.filter.d.ts.map +1 -0
- package/dist/core/errors/http-exception.filter.js +234 -0
- package/dist/core/errors/http-exception.filter.js.map +1 -0
- package/dist/core/errors/verbatim-error-body.exception.d.ts +46 -0
- package/dist/core/errors/verbatim-error-body.exception.d.ts.map +1 -0
- package/dist/core/errors/verbatim-error-body.exception.js +135 -0
- package/dist/core/errors/verbatim-error-body.exception.js.map +1 -0
- package/dist/core/host/index.d.ts +7 -0
- package/dist/core/host/index.d.ts.map +1 -0
- package/dist/core/host/index.js +14 -0
- package/dist/core/host/index.js.map +1 -0
- package/dist/core/host/platform-host.d.ts +58 -0
- package/dist/core/host/platform-host.d.ts.map +1 -0
- package/dist/core/host/platform-host.js +104 -0
- package/dist/core/host/platform-host.js.map +1 -0
- package/dist/core/host/platform-host.module.d.ts +53 -0
- package/dist/core/host/platform-host.module.d.ts.map +1 -0
- package/dist/core/host/platform-host.module.js +90 -0
- package/dist/core/host/platform-host.module.js.map +1 -0
- package/dist/core/host/ports.d.ts +132 -0
- package/dist/core/host/ports.d.ts.map +1 -0
- package/dist/core/host/ports.js +48 -0
- package/dist/core/host/ports.js.map +1 -0
- package/dist/core/index.d.ts +15 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +77 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/openapi/openapi-tag.registry.d.ts +80 -0
- package/dist/core/openapi/openapi-tag.registry.d.ts.map +1 -0
- package/dist/core/openapi/openapi-tag.registry.js +72 -0
- package/dist/core/openapi/openapi-tag.registry.js.map +1 -0
- package/dist/core/principal/index.d.ts +6 -0
- package/dist/core/principal/index.d.ts.map +1 -0
- package/dist/core/principal/index.js +3 -0
- package/dist/core/principal/index.js.map +1 -0
- package/dist/core/principal/principal.types.d.ts +222 -0
- package/dist/core/principal/principal.types.d.ts.map +1 -0
- package/dist/core/principal/principal.types.js +22 -0
- package/dist/core/principal/principal.types.js.map +1 -0
- package/dist/core/registry/index.d.ts +4 -0
- package/dist/core/registry/index.d.ts.map +1 -0
- package/dist/core/registry/index.js +19 -0
- package/dist/core/registry/index.js.map +1 -0
- package/dist/core/registry/registry-freeze.service.d.ts +14 -0
- package/dist/core/registry/registry-freeze.service.d.ts.map +1 -0
- package/dist/core/registry/registry-freeze.service.js +55 -0
- package/dist/core/registry/registry-freeze.service.js.map +1 -0
- package/dist/core/registry/registry.d.ts +268 -0
- package/dist/core/registry/registry.d.ts.map +1 -0
- package/dist/core/registry/registry.js +351 -0
- package/dist/core/registry/registry.js.map +1 -0
- package/dist/core/registry/testing.d.ts +29 -0
- package/dist/core/registry/testing.d.ts.map +1 -0
- package/dist/core/registry/testing.js +63 -0
- package/dist/core/registry/testing.js.map +1 -0
- package/dist/doctor/doctor-check.interface.d.ts +100 -0
- package/dist/doctor/doctor-check.interface.d.ts.map +1 -0
- package/dist/doctor/doctor-check.interface.js +95 -0
- package/dist/doctor/doctor-check.interface.js.map +1 -0
- package/dist/doctor/doctor-check.registry.d.ts +37 -0
- package/dist/doctor/doctor-check.registry.d.ts.map +1 -0
- package/dist/doctor/doctor-check.registry.js +96 -0
- package/dist/doctor/doctor-check.registry.js.map +1 -0
- package/dist/doctor/doctor.controller.factory.d.ts +29 -0
- package/dist/doctor/doctor.controller.factory.d.ts.map +1 -0
- package/dist/doctor/doctor.controller.factory.js +121 -0
- package/dist/doctor/doctor.controller.factory.js.map +1 -0
- package/dist/doctor/doctor.module.d.ts +78 -0
- package/dist/doctor/doctor.module.d.ts.map +1 -0
- package/dist/doctor/doctor.module.js +158 -0
- package/dist/doctor/doctor.module.js.map +1 -0
- package/dist/doctor/doctor.options.d.ts +39 -0
- package/dist/doctor/doctor.options.d.ts.map +1 -0
- package/dist/doctor/doctor.options.js +21 -0
- package/dist/doctor/doctor.options.js.map +1 -0
- package/dist/doctor/doctor.service.d.ts +80 -0
- package/dist/doctor/doctor.service.d.ts.map +1 -0
- package/dist/doctor/doctor.service.js +301 -0
- package/dist/doctor/doctor.service.js.map +1 -0
- package/dist/doctor/dto/doctor-query.dto.d.ts +15 -0
- package/dist/doctor/dto/doctor-query.dto.d.ts.map +1 -0
- package/dist/doctor/dto/doctor-query.dto.js +16 -0
- package/dist/doctor/dto/doctor-query.dto.js.map +1 -0
- package/dist/doctor/dto/doctor-report.dto.d.ts +27 -0
- package/dist/doctor/dto/doctor-report.dto.d.ts.map +1 -0
- package/dist/doctor/dto/doctor-report.dto.js +23 -0
- package/dist/doctor/dto/doctor-report.dto.js.map +1 -0
- package/dist/doctor/egress/classify-host.d.ts +73 -0
- package/dist/doctor/egress/classify-host.d.ts.map +1 -0
- package/dist/doctor/egress/classify-host.js +210 -0
- package/dist/doctor/egress/classify-host.js.map +1 -0
- package/dist/doctor/egress/egress.registry.d.ts +34 -0
- package/dist/doctor/egress/egress.registry.d.ts.map +1 -0
- package/dist/doctor/egress/egress.registry.js +70 -0
- package/dist/doctor/egress/egress.registry.js.map +1 -0
- package/dist/doctor/egress/egress.types.d.ts +135 -0
- package/dist/doctor/egress/egress.types.d.ts.map +1 -0
- package/dist/doctor/egress/egress.types.js +42 -0
- package/dist/doctor/egress/egress.types.js.map +1 -0
- package/dist/doctor/egress/index.d.ts +6 -0
- package/dist/doctor/egress/index.d.ts.map +1 -0
- package/dist/doctor/egress/index.js +23 -0
- package/dist/doctor/egress/index.js.map +1 -0
- package/dist/doctor/egress/network-egress.doctor-check.d.ts +78 -0
- package/dist/doctor/egress/network-egress.doctor-check.d.ts.map +1 -0
- package/dist/doctor/egress/network-egress.doctor-check.js +226 -0
- package/dist/doctor/egress/network-egress.doctor-check.js.map +1 -0
- package/dist/doctor/index.d.ts +19 -0
- package/dist/doctor/index.d.ts.map +1 -0
- package/dist/doctor/index.js +66 -0
- package/dist/doctor/index.js.map +1 -0
- package/dist/doctor/support-bundle/index.d.ts +12 -0
- package/dist/doctor/support-bundle/index.d.ts.map +1 -0
- package/dist/doctor/support-bundle/index.js +32 -0
- package/dist/doctor/support-bundle/index.js.map +1 -0
- package/dist/doctor/support-bundle/redact.d.ts +76 -0
- package/dist/doctor/support-bundle/redact.d.ts.map +1 -0
- package/dist/doctor/support-bundle/redact.js +236 -0
- package/dist/doctor/support-bundle/redact.js.map +1 -0
- package/dist/doctor/support-bundle/sections/doctor.section.d.ts +81 -0
- package/dist/doctor/support-bundle/sections/doctor.section.d.ts.map +1 -0
- package/dist/doctor/support-bundle/sections/doctor.section.js +83 -0
- package/dist/doctor/support-bundle/sections/doctor.section.js.map +1 -0
- package/dist/doctor/support-bundle/sections/egress.section.d.ts +73 -0
- package/dist/doctor/support-bundle/sections/egress.section.d.ts.map +1 -0
- package/dist/doctor/support-bundle/sections/egress.section.js +97 -0
- package/dist/doctor/support-bundle/sections/egress.section.js.map +1 -0
- package/dist/doctor/support-bundle/sections/meta.section.d.ts +39 -0
- package/dist/doctor/support-bundle/sections/meta.section.d.ts.map +1 -0
- package/dist/doctor/support-bundle/sections/meta.section.js +89 -0
- package/dist/doctor/support-bundle/sections/meta.section.js.map +1 -0
- package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts +100 -0
- package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts.map +1 -0
- package/dist/doctor/support-bundle/support-bundle-section.interface.js +59 -0
- package/dist/doctor/support-bundle/support-bundle-section.interface.js.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.controller.d.ts +57 -0
- package/dist/doctor/support-bundle/support-bundle.controller.d.ts.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.controller.js +141 -0
- package/dist/doctor/support-bundle/support-bundle.controller.js.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.options.d.ts +92 -0
- package/dist/doctor/support-bundle/support-bundle.options.d.ts.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.options.js +100 -0
- package/dist/doctor/support-bundle/support-bundle.options.js.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.registry.d.ts +38 -0
- package/dist/doctor/support-bundle/support-bundle.registry.d.ts.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.registry.js +90 -0
- package/dist/doctor/support-bundle/support-bundle.registry.js.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.service.d.ts +63 -0
- package/dist/doctor/support-bundle/support-bundle.service.d.ts.map +1 -0
- package/dist/doctor/support-bundle/support-bundle.service.js +244 -0
- package/dist/doctor/support-bundle/support-bundle.service.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/otel-core/index.d.ts +9 -0
- package/dist/otel-core/index.d.ts.map +1 -0
- package/dist/otel-core/index.js +58 -0
- package/dist/otel-core/index.js.map +1 -0
- package/dist/otel-core/metrics/gauge-provider.d.ts +44 -0
- package/dist/otel-core/metrics/gauge-provider.d.ts.map +1 -0
- package/dist/otel-core/metrics/gauge-provider.js +37 -0
- package/dist/otel-core/metrics/gauge-provider.js.map +1 -0
- package/dist/otel-core/metrics/labels.d.ts +79 -0
- package/dist/otel-core/metrics/labels.d.ts.map +1 -0
- package/dist/otel-core/metrics/labels.js +135 -0
- package/dist/otel-core/metrics/labels.js.map +1 -0
- package/dist/otel-core/metrics/metric-name.registry.d.ts +130 -0
- package/dist/otel-core/metrics/metric-name.registry.d.ts.map +1 -0
- package/dist/otel-core/metrics/metric-name.registry.js +134 -0
- package/dist/otel-core/metrics/metric-name.registry.js.map +1 -0
- package/dist/otel-core/metrics/metrics-host.service.d.ts +163 -0
- package/dist/otel-core/metrics/metrics-host.service.d.ts.map +1 -0
- package/dist/otel-core/metrics/metrics-host.service.js +344 -0
- package/dist/otel-core/metrics/metrics-host.service.js.map +1 -0
- package/dist/otel-core/metrics/otel-metrics.module.d.ts +54 -0
- package/dist/otel-core/metrics/otel-metrics.module.d.ts.map +1 -0
- package/dist/otel-core/metrics/otel-metrics.module.js +83 -0
- package/dist/otel-core/metrics/otel-metrics.module.js.map +1 -0
- package/dist/otel-core/sdk/index.d.ts +5 -0
- package/dist/otel-core/sdk/index.d.ts.map +1 -0
- package/dist/otel-core/sdk/index.js +27 -0
- package/dist/otel-core/sdk/index.js.map +1 -0
- package/dist/otel-core/sdk/initialize-otel.d.ts +126 -0
- package/dist/otel-core/sdk/initialize-otel.d.ts.map +1 -0
- package/dist/otel-core/sdk/initialize-otel.js +204 -0
- package/dist/otel-core/sdk/initialize-otel.js.map +1 -0
- package/dist/otel-core/sdk/instance-id.d.ts +29 -0
- package/dist/otel-core/sdk/instance-id.d.ts.map +1 -0
- package/dist/otel-core/sdk/instance-id.js +65 -0
- package/dist/otel-core/sdk/instance-id.js.map +1 -0
- package/dist/otel-core/sdk/service-name.d.ts +28 -0
- package/dist/otel-core/sdk/service-name.d.ts.map +1 -0
- package/dist/otel-core/sdk/service-name.js +63 -0
- package/dist/otel-core/sdk/service-name.js.map +1 -0
- package/dist/otel-core/sdk/telemetry-gate.d.ts +116 -0
- package/dist/otel-core/sdk/telemetry-gate.d.ts.map +1 -0
- package/dist/otel-core/sdk/telemetry-gate.js +297 -0
- package/dist/otel-core/sdk/telemetry-gate.js.map +1 -0
- package/dist/otel-core/spans/request-span-attributes.d.ts +58 -0
- package/dist/otel-core/spans/request-span-attributes.d.ts.map +1 -0
- package/dist/otel-core/spans/request-span-attributes.js +155 -0
- package/dist/otel-core/spans/request-span-attributes.js.map +1 -0
- package/dist/otel-core/spans/trace.decorator.d.ts +36 -0
- package/dist/otel-core/spans/trace.decorator.d.ts.map +1 -0
- package/dist/otel-core/spans/trace.decorator.js +74 -0
- package/dist/otel-core/spans/trace.decorator.js.map +1 -0
- package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts +15 -0
- package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts.map +1 -0
- package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js +50 -0
- package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts +14 -0
- package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.controller.js +178 -0
- package/dist/telemetry/assistant/telemetry-assistant.controller.js.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts +147 -0
- package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.metrics.js +495 -0
- package/dist/telemetry/assistant/telemetry-assistant.metrics.js.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.service.d.ts +216 -0
- package/dist/telemetry/assistant/telemetry-assistant.service.d.ts.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.service.js +1256 -0
- package/dist/telemetry/assistant/telemetry-assistant.service.js.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts +69 -0
- package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.sql.js +471 -0
- package/dist/telemetry/assistant/telemetry-assistant.sql.js.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts +15 -0
- package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts.map +1 -0
- package/dist/telemetry/assistant/telemetry-assistant.sse.js +68 -0
- package/dist/telemetry/assistant/telemetry-assistant.sse.js.map +1 -0
- package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts +92 -0
- package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts.map +1 -0
- package/dist/telemetry/connection/dto/telemetry-connection.dto.js +41 -0
- package/dist/telemetry/connection/dto/telemetry-connection.dto.js.map +1 -0
- package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts +45 -0
- package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts.map +1 -0
- package/dist/telemetry/connection/telemetry-connection-admin.service.js +303 -0
- package/dist/telemetry/connection/telemetry-connection-admin.service.js.map +1 -0
- package/dist/telemetry/connection/telemetry-connection-test.service.d.ts +41 -0
- package/dist/telemetry/connection/telemetry-connection-test.service.d.ts.map +1 -0
- package/dist/telemetry/connection/telemetry-connection-test.service.js +187 -0
- package/dist/telemetry/connection/telemetry-connection-test.service.js.map +1 -0
- package/dist/telemetry/connection/telemetry-connection.controller.d.ts +14 -0
- package/dist/telemetry/connection/telemetry-connection.controller.d.ts.map +1 -0
- package/dist/telemetry/connection/telemetry-connection.controller.js +192 -0
- package/dist/telemetry/connection/telemetry-connection.controller.js.map +1 -0
- package/dist/telemetry/connection/telemetry-connection.schema.d.ts +28 -0
- package/dist/telemetry/connection/telemetry-connection.schema.d.ts.map +1 -0
- package/dist/telemetry/connection/telemetry-connection.schema.js +106 -0
- package/dist/telemetry/connection/telemetry-connection.schema.js.map +1 -0
- package/dist/telemetry/connection/telemetry-connection.service.d.ts +197 -0
- package/dist/telemetry/connection/telemetry-connection.service.d.ts.map +1 -0
- package/dist/telemetry/connection/telemetry-connection.service.js +461 -0
- package/dist/telemetry/connection/telemetry-connection.service.js.map +1 -0
- package/dist/telemetry/dashboard/sql-literals.d.ts +19 -0
- package/dist/telemetry/dashboard/sql-literals.d.ts.map +1 -0
- package/dist/telemetry/dashboard/sql-literals.js +75 -0
- package/dist/telemetry/dashboard/sql-literals.js.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts +14 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.controller.js +277 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.controller.js.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts +112 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.service.js +904 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.service.js.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts +212 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.sql.js +486 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.sql.js.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts +235 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts.map +1 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js +269 -0
- package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js.map +1 -0
- package/dist/telemetry/dashboard/verdict-policy.d.ts +51 -0
- package/dist/telemetry/dashboard/verdict-policy.d.ts.map +1 -0
- package/dist/telemetry/dashboard/verdict-policy.js +77 -0
- package/dist/telemetry/dashboard/verdict-policy.js.map +1 -0
- package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts +21 -0
- package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts.map +1 -0
- package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js +59 -0
- package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js.map +1 -0
- package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts +23 -0
- package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts.map +1 -0
- package/dist/telemetry/doctor/telemetry-connection.doctor-check.js +69 -0
- package/dist/telemetry/doctor/telemetry-connection.doctor-check.js.map +1 -0
- package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts +33 -0
- package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts.map +1 -0
- package/dist/telemetry/doctor/telemetry-export.doctor-check.js +105 -0
- package/dist/telemetry/doctor/telemetry-export.doctor-check.js.map +1 -0
- package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts +38 -0
- package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts.map +1 -0
- package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js +104 -0
- package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js.map +1 -0
- package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts +23 -0
- package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts.map +1 -0
- package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js +65 -0
- package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js.map +1 -0
- package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts +23 -0
- package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts.map +1 -0
- package/dist/telemetry/doctor/telemetry-tables.doctor-check.js +91 -0
- package/dist/telemetry/doctor/telemetry-tables.doctor-check.js.map +1 -0
- package/dist/telemetry/dto/telemetry-assistant.dto.d.ts +14 -0
- package/dist/telemetry/dto/telemetry-assistant.dto.d.ts.map +1 -0
- package/dist/telemetry/dto/telemetry-assistant.dto.js +29 -0
- package/dist/telemetry/dto/telemetry-assistant.dto.js.map +1 -0
- package/dist/telemetry/dto/telemetry-config.dto.d.ts +59 -0
- package/dist/telemetry/dto/telemetry-config.dto.d.ts.map +1 -0
- package/dist/telemetry/dto/telemetry-config.dto.js +18 -0
- package/dist/telemetry/dto/telemetry-config.dto.js.map +1 -0
- package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts +397 -0
- package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts.map +1 -0
- package/dist/telemetry/dto/telemetry-dashboard.dto.js +118 -0
- package/dist/telemetry/dto/telemetry-dashboard.dto.js.map +1 -0
- package/dist/telemetry/dto/telemetry-query.dto.d.ts +44 -0
- package/dist/telemetry/dto/telemetry-query.dto.d.ts.map +1 -0
- package/dist/telemetry/dto/telemetry-query.dto.js +42 -0
- package/dist/telemetry/dto/telemetry-query.dto.js.map +1 -0
- package/dist/telemetry/dto/telemetry-status.dto.d.ts +22 -0
- package/dist/telemetry/dto/telemetry-status.dto.d.ts.map +1 -0
- package/dist/telemetry/dto/telemetry-status.dto.js +12 -0
- package/dist/telemetry/dto/telemetry-status.dto.js.map +1 -0
- package/dist/telemetry/export/parquet-writer.loader.d.ts +13 -0
- package/dist/telemetry/export/parquet-writer.loader.d.ts.map +1 -0
- package/dist/telemetry/export/parquet-writer.loader.js +29 -0
- package/dist/telemetry/export/parquet-writer.loader.js.map +1 -0
- package/dist/telemetry/export/telemetry-export.service.d.ts +39 -0
- package/dist/telemetry/export/telemetry-export.service.d.ts.map +1 -0
- package/dist/telemetry/export/telemetry-export.service.js +185 -0
- package/dist/telemetry/export/telemetry-export.service.js.map +1 -0
- package/dist/telemetry/greptime/greptime-host.d.ts +44 -0
- package/dist/telemetry/greptime/greptime-host.d.ts.map +1 -0
- package/dist/telemetry/greptime/greptime-host.js +114 -0
- package/dist/telemetry/greptime/greptime-host.js.map +1 -0
- package/dist/telemetry/greptime/greptime.client.d.ts +171 -0
- package/dist/telemetry/greptime/greptime.client.d.ts.map +1 -0
- package/dist/telemetry/greptime/greptime.client.js +352 -0
- package/dist/telemetry/greptime/greptime.client.js.map +1 -0
- package/dist/telemetry/greptime/greptime.errors.d.ts +59 -0
- package/dist/telemetry/greptime/greptime.errors.d.ts.map +1 -0
- package/dist/telemetry/greptime/greptime.errors.js +100 -0
- package/dist/telemetry/greptime/greptime.errors.js.map +1 -0
- package/dist/telemetry/handlers/telemetry-retention.handler.d.ts +27 -0
- package/dist/telemetry/handlers/telemetry-retention.handler.d.ts.map +1 -0
- package/dist/telemetry/handlers/telemetry-retention.handler.js +123 -0
- package/dist/telemetry/handlers/telemetry-retention.handler.js.map +1 -0
- package/dist/telemetry/index.d.ts +37 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +97 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/internal/blank-secret.d.ts +3 -0
- package/dist/telemetry/internal/blank-secret.d.ts.map +1 -0
- package/dist/telemetry/internal/blank-secret.js +14 -0
- package/dist/telemetry/internal/blank-secret.js.map +1 -0
- package/dist/telemetry/internal/csv.d.ts +9 -0
- package/dist/telemetry/internal/csv.d.ts.map +1 -0
- package/dist/telemetry/internal/csv.js +23 -0
- package/dist/telemetry/internal/csv.js.map +1 -0
- package/dist/telemetry/internal/sse.d.ts +23 -0
- package/dist/telemetry/internal/sse.d.ts.map +1 -0
- package/dist/telemetry/internal/sse.js +43 -0
- package/dist/telemetry/internal/sse.js.map +1 -0
- package/dist/telemetry/metrics/groups/database.metric-group.d.ts +7 -0
- package/dist/telemetry/metrics/groups/database.metric-group.d.ts.map +1 -0
- package/dist/telemetry/metrics/groups/database.metric-group.js +159 -0
- package/dist/telemetry/metrics/groups/database.metric-group.js.map +1 -0
- package/dist/telemetry/metrics/groups/host.metric-group.d.ts +7 -0
- package/dist/telemetry/metrics/groups/host.metric-group.d.ts.map +1 -0
- package/dist/telemetry/metrics/groups/host.metric-group.js +146 -0
- package/dist/telemetry/metrics/groups/host.metric-group.js.map +1 -0
- package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts +7 -0
- package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts.map +1 -0
- package/dist/telemetry/metrics/groups/nodes.metric-group.js +159 -0
- package/dist/telemetry/metrics/groups/nodes.metric-group.js.map +1 -0
- package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts +7 -0
- package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts.map +1 -0
- package/dist/telemetry/metrics/groups/pipeline.metric-group.js +144 -0
- package/dist/telemetry/metrics/groups/pipeline.metric-group.js.map +1 -0
- package/dist/telemetry/metrics/groups/queue.metric-group.d.ts +7 -0
- package/dist/telemetry/metrics/groups/queue.metric-group.d.ts.map +1 -0
- package/dist/telemetry/metrics/groups/queue.metric-group.js +163 -0
- package/dist/telemetry/metrics/groups/queue.metric-group.js.map +1 -0
- package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts +7 -0
- package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts.map +1 -0
- package/dist/telemetry/metrics/groups/uptime.metric-group.js +103 -0
- package/dist/telemetry/metrics/groups/uptime.metric-group.js.map +1 -0
- package/dist/telemetry/metrics/metric-catalog.d.ts +324 -0
- package/dist/telemetry/metrics/metric-catalog.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-catalog.helpers.d.ts +30 -0
- package/dist/telemetry/metrics/metric-catalog.helpers.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-catalog.helpers.js +37 -0
- package/dist/telemetry/metrics/metric-catalog.helpers.js.map +1 -0
- package/dist/telemetry/metrics/metric-catalog.js +180 -0
- package/dist/telemetry/metrics/metric-catalog.js.map +1 -0
- package/dist/telemetry/metrics/metric-group-registry.service.d.ts +59 -0
- package/dist/telemetry/metrics/metric-group-registry.service.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-group-registry.service.js +99 -0
- package/dist/telemetry/metrics/metric-group-registry.service.js.map +1 -0
- package/dist/telemetry/metrics/metric-group.d.ts +113 -0
- package/dist/telemetry/metrics/metric-group.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-group.js +647 -0
- package/dist/telemetry/metrics/metric-group.js.map +1 -0
- package/dist/telemetry/metrics/metric-group.manifest.d.ts +2 -0
- package/dist/telemetry/metrics/metric-group.manifest.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-group.manifest.js +30 -0
- package/dist/telemetry/metrics/metric-group.manifest.js.map +1 -0
- package/dist/telemetry/metrics/metric-group.registry.d.ts +109 -0
- package/dist/telemetry/metrics/metric-group.registry.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-group.registry.js +181 -0
- package/dist/telemetry/metrics/metric-group.registry.js.map +1 -0
- package/dist/telemetry/metrics/metric-sql.d.ts +98 -0
- package/dist/telemetry/metrics/metric-sql.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-sql.js +259 -0
- package/dist/telemetry/metrics/metric-sql.js.map +1 -0
- package/dist/telemetry/metrics/metric-values.d.ts +19 -0
- package/dist/telemetry/metrics/metric-values.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-values.js +97 -0
- package/dist/telemetry/metrics/metric-values.js.map +1 -0
- package/dist/telemetry/metrics/metric-verdict.d.ts +20 -0
- package/dist/telemetry/metrics/metric-verdict.d.ts.map +1 -0
- package/dist/telemetry/metrics/metric-verdict.js +218 -0
- package/dist/telemetry/metrics/metric-verdict.js.map +1 -0
- package/dist/telemetry/ports.d.ts +575 -0
- package/dist/telemetry/ports.d.ts.map +1 -0
- package/dist/telemetry/ports.js +78 -0
- package/dist/telemetry/ports.js.map +1 -0
- package/dist/telemetry/query/sql-guard.d.ts +71 -0
- package/dist/telemetry/query/sql-guard.d.ts.map +1 -0
- package/dist/telemetry/query/sql-guard.js +258 -0
- package/dist/telemetry/query/sql-guard.js.map +1 -0
- package/dist/telemetry/query/telemetry-availability.d.ts +11 -0
- package/dist/telemetry/query/telemetry-availability.d.ts.map +1 -0
- package/dist/telemetry/query/telemetry-availability.js +55 -0
- package/dist/telemetry/query/telemetry-availability.js.map +1 -0
- package/dist/telemetry/query/telemetry-query.errors.d.ts +48 -0
- package/dist/telemetry/query/telemetry-query.errors.d.ts.map +1 -0
- package/dist/telemetry/query/telemetry-query.errors.js +100 -0
- package/dist/telemetry/query/telemetry-query.errors.js.map +1 -0
- package/dist/telemetry/query/telemetry-query.service.d.ts +57 -0
- package/dist/telemetry/query/telemetry-query.service.d.ts.map +1 -0
- package/dist/telemetry/query/telemetry-query.service.js +194 -0
- package/dist/telemetry/query/telemetry-query.service.js.map +1 -0
- package/dist/telemetry/query/telemetry-schema.service.d.ts +36 -0
- package/dist/telemetry/query/telemetry-schema.service.d.ts.map +1 -0
- package/dist/telemetry/query/telemetry-schema.service.js +154 -0
- package/dist/telemetry/query/telemetry-schema.service.js.map +1 -0
- package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts +29 -0
- package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts.map +1 -0
- package/dist/telemetry/stack/dto/telemetry-stack.dto.js +27 -0
- package/dist/telemetry/stack/dto/telemetry-stack.dto.js.map +1 -0
- package/dist/telemetry/stack/stack-agent.client.d.ts +76 -0
- package/dist/telemetry/stack/stack-agent.client.d.ts.map +1 -0
- package/dist/telemetry/stack/stack-agent.client.js +208 -0
- package/dist/telemetry/stack/stack-agent.client.js.map +1 -0
- package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts +43 -0
- package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts.map +1 -0
- package/dist/telemetry/stack/telemetry-stack-deploy.handler.js +159 -0
- package/dist/telemetry/stack/telemetry-stack-deploy.handler.js.map +1 -0
- package/dist/telemetry/stack/telemetry-stack.controller.d.ts +14 -0
- package/dist/telemetry/stack/telemetry-stack.controller.d.ts.map +1 -0
- package/dist/telemetry/stack/telemetry-stack.controller.js +107 -0
- package/dist/telemetry/stack/telemetry-stack.controller.js.map +1 -0
- package/dist/telemetry/stack/telemetry-stack.service.d.ts +19 -0
- package/dist/telemetry/stack/telemetry-stack.service.d.ts.map +1 -0
- package/dist/telemetry/stack/telemetry-stack.service.js +122 -0
- package/dist/telemetry/stack/telemetry-stack.service.js.map +1 -0
- package/dist/telemetry/tasks/telemetry-retention.task.d.ts +8 -0
- package/dist/telemetry/tasks/telemetry-retention.task.d.ts.map +1 -0
- package/dist/telemetry/tasks/telemetry-retention.task.js +61 -0
- package/dist/telemetry/tasks/telemetry-retention.task.js.map +1 -0
- package/dist/telemetry/telemetry-admin.controller.d.ts +14 -0
- package/dist/telemetry/telemetry-admin.controller.d.ts.map +1 -0
- package/dist/telemetry/telemetry-admin.controller.js +148 -0
- package/dist/telemetry/telemetry-admin.controller.js.map +1 -0
- package/dist/telemetry/telemetry-config.controller.d.ts +14 -0
- package/dist/telemetry/telemetry-config.controller.d.ts.map +1 -0
- package/dist/telemetry/telemetry-config.controller.js +73 -0
- package/dist/telemetry/telemetry-config.controller.js.map +1 -0
- package/dist/telemetry/telemetry-explorer.controller.d.ts +14 -0
- package/dist/telemetry/telemetry-explorer.controller.d.ts.map +1 -0
- package/dist/telemetry/telemetry-explorer.controller.js +193 -0
- package/dist/telemetry/telemetry-explorer.controller.js.map +1 -0
- package/dist/telemetry/telemetry-settings.service.d.ts +85 -0
- package/dist/telemetry/telemetry-settings.service.d.ts.map +1 -0
- package/dist/telemetry/telemetry-settings.service.js +278 -0
- package/dist/telemetry/telemetry-settings.service.js.map +1 -0
- package/dist/telemetry/telemetry-status.service.d.ts +28 -0
- package/dist/telemetry/telemetry-status.service.d.ts.map +1 -0
- package/dist/telemetry/telemetry-status.service.js +185 -0
- package/dist/telemetry/telemetry-status.service.js.map +1 -0
- package/dist/telemetry/telemetry-support-bundle.section.d.ts +163 -0
- package/dist/telemetry/telemetry-support-bundle.section.d.ts.map +1 -0
- package/dist/telemetry/telemetry-support-bundle.section.js +187 -0
- package/dist/telemetry/telemetry-support-bundle.section.js.map +1 -0
- package/dist/telemetry/telemetry.module.d.ts +35 -0
- package/dist/telemetry/telemetry.module.d.ts.map +1 -0
- package/dist/telemetry/telemetry.module.js +210 -0
- package/dist/telemetry/telemetry.module.js.map +1 -0
- package/dist/telemetry/telemetry.options.d.ts +176 -0
- package/dist/telemetry/telemetry.options.d.ts.map +1 -0
- package/dist/telemetry/telemetry.options.js +246 -0
- package/dist/telemetry/telemetry.options.js.map +1 -0
- package/dist/telemetry/telemetry.permissions.d.ts +76 -0
- package/dist/telemetry/telemetry.permissions.d.ts.map +1 -0
- package/dist/telemetry/telemetry.permissions.js +85 -0
- package/dist/telemetry/telemetry.permissions.js.map +1 -0
- package/dist/telemetry/telemetry.settings.d.ts +79 -0
- package/dist/telemetry/telemetry.settings.d.ts.map +1 -0
- package/dist/telemetry/telemetry.settings.js +92 -0
- package/dist/telemetry/telemetry.settings.js.map +1 -0
- package/dist/telemetry/testing/coach-metric-group.fixture.d.ts +17 -0
- package/dist/telemetry/testing/coach-metric-group.fixture.d.ts.map +1 -0
- package/dist/telemetry/testing/coach-metric-group.fixture.js +128 -0
- package/dist/telemetry/testing/coach-metric-group.fixture.js.map +1 -0
- package/dist/telemetry/testing/conformance.d.ts +257 -0
- package/dist/telemetry/testing/conformance.d.ts.map +1 -0
- package/dist/telemetry/testing/conformance.js +626 -0
- package/dist/telemetry/testing/conformance.js.map +1 -0
- package/dist/telemetry/testing/index.d.ts +10 -0
- package/dist/telemetry/testing/index.d.ts.map +1 -0
- package/dist/telemetry/testing/index.js +41 -0
- package/dist/telemetry/testing/index.js.map +1 -0
- package/dist/telemetry/testing/metric-schema.fixture.d.ts +73 -0
- package/dist/telemetry/testing/metric-schema.fixture.d.ts.map +1 -0
- package/dist/telemetry/testing/metric-schema.fixture.js +362 -0
- package/dist/telemetry/testing/metric-schema.fixture.js.map +1 -0
- package/dist/telemetry/testing/stub-ports.d.ts +46 -0
- package/dist/telemetry/testing/stub-ports.d.ts.map +1 -0
- package/dist/telemetry/testing/stub-ports.js +119 -0
- package/dist/telemetry/testing/stub-ports.js.map +1 -0
- package/dist/testing/conformance-suite.d.ts +106 -0
- package/dist/testing/conformance-suite.d.ts.map +1 -0
- package/dist/testing/conformance-suite.js +8 -0
- package/dist/testing/conformance-suite.js.map +1 -0
- package/dist/testing/conformance-suites.d.ts +14 -0
- package/dist/testing/conformance-suites.d.ts.map +1 -0
- package/dist/testing/conformance-suites.js +27 -0
- package/dist/testing/conformance-suites.js.map +1 -0
- package/dist/testing/host/in-memory-audit-sink.d.ts +23 -0
- package/dist/testing/host/in-memory-audit-sink.d.ts.map +1 -0
- package/dist/testing/host/in-memory-audit-sink.js +30 -0
- package/dist/testing/host/in-memory-audit-sink.js.map +1 -0
- package/dist/testing/host/in-memory-system-settings-store.d.ts +31 -0
- package/dist/testing/host/in-memory-system-settings-store.d.ts.map +1 -0
- package/dist/testing/host/in-memory-system-settings-store.js +54 -0
- package/dist/testing/host/in-memory-system-settings-store.js.map +1 -0
- package/dist/testing/host/index.d.ts +4 -0
- package/dist/testing/host/index.d.ts.map +1 -0
- package/dist/testing/host/index.js +13 -0
- package/dist/testing/host/index.js.map +1 -0
- package/dist/testing/host/test-platform-host.d.ts +35 -0
- package/dist/testing/host/test-platform-host.d.ts.map +1 -0
- package/dist/testing/host/test-platform-host.js +81 -0
- package/dist/testing/host/test-platform-host.js.map +1 -0
- package/dist/testing/index.d.ts +12 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +32 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/prisma-schema.d.ts +99 -0
- package/dist/testing/prisma-schema.d.ts.map +1 -0
- package/dist/testing/prisma-schema.js +175 -0
- package/dist/testing/prisma-schema.js.map +1 -0
- package/dist/testing/run-platform-conformance.d.ts +70 -0
- package/dist/testing/run-platform-conformance.d.ts.map +1 -0
- package/dist/testing/run-platform-conformance.js +77 -0
- package/dist/testing/run-platform-conformance.js.map +1 -0
- package/dist/testing/suites/cron-enqueue-only.d.ts +46 -0
- package/dist/testing/suites/cron-enqueue-only.d.ts.map +1 -0
- package/dist/testing/suites/cron-enqueue-only.js +177 -0
- package/dist/testing/suites/cron-enqueue-only.js.map +1 -0
- package/dist/testing/suites/user-owned-data.d.ts +86 -0
- package/dist/testing/suites/user-owned-data.d.ts.map +1 -0
- package/dist/testing/suites/user-owned-data.js +329 -0
- package/dist/testing/suites/user-owned-data.js.map +1 -0
- package/package.json +129 -4
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { DynamicModule, ModuleMetadata } from '@nestjs/common';
|
|
2
|
+
import { AuditSink, PortBinding, PrismaClientLike, SystemSettingsStore } from './ports';
|
|
3
|
+
/**
|
|
4
|
+
* The app's adapters for the DI-time ports, plus the modules they need.
|
|
5
|
+
*
|
|
6
|
+
* @stability experimental
|
|
7
|
+
*/
|
|
8
|
+
export interface PlatformHostPorts {
|
|
9
|
+
/** Binds {@link AUDIT_SINK}. */
|
|
10
|
+
audit?: PortBinding<AuditSink>;
|
|
11
|
+
/** Binds {@link SYSTEM_SETTINGS_STORE}. */
|
|
12
|
+
settings?: PortBinding<SystemSettingsStore>;
|
|
13
|
+
/** Binds {@link PLATFORM_PRISMA}. */
|
|
14
|
+
prisma?: PortBinding<PrismaClientLike>;
|
|
15
|
+
/**
|
|
16
|
+
* Modules the adapters' own dependencies come from (a settings adapter that
|
|
17
|
+
* injects the app's settings service needs that service's module). Global
|
|
18
|
+
* modules (the app's Prisma module) need not be listed.
|
|
19
|
+
*/
|
|
20
|
+
imports?: ModuleMetadata['imports'];
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Binds the platform's DI-time host ports to the app's adapters.
|
|
24
|
+
*
|
|
25
|
+
* @stability experimental
|
|
26
|
+
*/
|
|
27
|
+
export declare class PlatformHostModule {
|
|
28
|
+
/**
|
|
29
|
+
* Global. Binds the DI-time ports to the app's adapters. Each port is
|
|
30
|
+
* optional; a slice that injects a missing port fails at boot with Nest's
|
|
31
|
+
* missing-provider error naming the token.
|
|
32
|
+
*
|
|
33
|
+
* @param ports - one binding per port the app supplies, and the modules the
|
|
34
|
+
* adapters need.
|
|
35
|
+
* @returns a global dynamic module exporting every bound token.
|
|
36
|
+
* @throws Error when a binding names no provider shape, or more than one.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```ts
|
|
40
|
+
* PlatformHostModule.forRoot({
|
|
41
|
+
* audit: { useClass: PrismaAuditSink },
|
|
42
|
+
* settings: { useClass: SystemSettingsStoreAdapter },
|
|
43
|
+
* prisma: { useExisting: PrismaService },
|
|
44
|
+
* imports: [SettingsModule],
|
|
45
|
+
* });
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* @extensionPoint option
|
|
49
|
+
* @stability experimental
|
|
50
|
+
*/
|
|
51
|
+
static forRoot(ports?: PlatformHostPorts): DynamicModule;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=platform-host.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-host.module.d.ts","sourceRoot":"","sources":["../../../src/core/host/platform-host.module.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,aAAa,EAAU,cAAc,EAAY,MAAM,gBAAgB,CAAC;AAEjF,OAAO,EAEL,SAAS,EAET,WAAW,EACX,gBAAgB,EAEhB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAEjB;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,KAAK,CAAC,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/B,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,WAAW,CAAC,mBAAmB,CAAC,CAAC;IAC5C,qCAAqC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,CAAC;IACvC;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;CACrC;AAeD;;;;GAIG;AACH,qBACa,kBAAkB;IAC7B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,OAAO,CAAC,KAAK,GAAE,iBAAsB,GAAG,aAAa;CAqB7D"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// =============================================================================
|
|
3
|
+
// PlatformHostModule: binds the DI-time host ports once (issue #696, PP-2.7)
|
|
4
|
+
// =============================================================================
|
|
5
|
+
//
|
|
6
|
+
// The app imports `PlatformHostModule.forRoot({...})` ONCE, in its root
|
|
7
|
+
// module (`apps/api/src/platform/platform-host.module.ts`). The module is
|
|
8
|
+
// global, so every packaged slice injects `AUDIT_SINK`, `SYSTEM_SETTINGS_STORE`
|
|
9
|
+
// or `PLATFORM_PRISMA` without importing anything of the app.
|
|
10
|
+
//
|
|
11
|
+
// Every port is optional. A slice that injects a port the app did not bind
|
|
12
|
+
// fails at boot with Nest's own missing-provider error, which names the token:
|
|
13
|
+
// loud, early and specific, the same failure a missing app provider gives.
|
|
14
|
+
// =============================================================================
|
|
15
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
16
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
17
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
18
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
19
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
20
|
+
};
|
|
21
|
+
var PlatformHostModule_1;
|
|
22
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
+
exports.PlatformHostModule = void 0;
|
|
24
|
+
const common_1 = require("@nestjs/common");
|
|
25
|
+
const ports_1 = require("./ports");
|
|
26
|
+
function toProvider(token, name, binding) {
|
|
27
|
+
const shape = binding;
|
|
28
|
+
const kinds = shape && typeof shape === 'object' ? ['useExisting', 'useClass', 'useFactory'].filter((k) => k in shape) : [];
|
|
29
|
+
if (kinds.length !== 1) {
|
|
30
|
+
throw new Error(`PlatformHostModule.forRoot: the "${name}" port needs exactly one of useExisting, useClass or useFactory` +
|
|
31
|
+
(kinds.length > 1 ? ` (got ${kinds.join(', ')})` : '') +
|
|
32
|
+
'.');
|
|
33
|
+
}
|
|
34
|
+
return { provide: token, ...shape };
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Binds the platform's DI-time host ports to the app's adapters.
|
|
38
|
+
*
|
|
39
|
+
* @stability experimental
|
|
40
|
+
*/
|
|
41
|
+
let PlatformHostModule = PlatformHostModule_1 = class PlatformHostModule {
|
|
42
|
+
/**
|
|
43
|
+
* Global. Binds the DI-time ports to the app's adapters. Each port is
|
|
44
|
+
* optional; a slice that injects a missing port fails at boot with Nest's
|
|
45
|
+
* missing-provider error naming the token.
|
|
46
|
+
*
|
|
47
|
+
* @param ports - one binding per port the app supplies, and the modules the
|
|
48
|
+
* adapters need.
|
|
49
|
+
* @returns a global dynamic module exporting every bound token.
|
|
50
|
+
* @throws Error when a binding names no provider shape, or more than one.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```ts
|
|
54
|
+
* PlatformHostModule.forRoot({
|
|
55
|
+
* audit: { useClass: PrismaAuditSink },
|
|
56
|
+
* settings: { useClass: SystemSettingsStoreAdapter },
|
|
57
|
+
* prisma: { useExisting: PrismaService },
|
|
58
|
+
* imports: [SettingsModule],
|
|
59
|
+
* });
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @extensionPoint option
|
|
63
|
+
* @stability experimental
|
|
64
|
+
*/
|
|
65
|
+
static forRoot(ports = {}) {
|
|
66
|
+
const providers = [];
|
|
67
|
+
const exported = [];
|
|
68
|
+
const bind = (token, name, binding) => {
|
|
69
|
+
if (binding === undefined)
|
|
70
|
+
return;
|
|
71
|
+
providers.push(toProvider(token, name, binding));
|
|
72
|
+
exported.push(token);
|
|
73
|
+
};
|
|
74
|
+
bind(ports_1.AUDIT_SINK, 'audit', ports.audit);
|
|
75
|
+
bind(ports_1.SYSTEM_SETTINGS_STORE, 'settings', ports.settings);
|
|
76
|
+
bind(ports_1.PLATFORM_PRISMA, 'prisma', ports.prisma);
|
|
77
|
+
return {
|
|
78
|
+
global: true,
|
|
79
|
+
module: PlatformHostModule_1,
|
|
80
|
+
imports: ports.imports ?? [],
|
|
81
|
+
providers,
|
|
82
|
+
exports: exported,
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
exports.PlatformHostModule = PlatformHostModule;
|
|
87
|
+
exports.PlatformHostModule = PlatformHostModule = PlatformHostModule_1 = __decorate([
|
|
88
|
+
(0, common_1.Module)({})
|
|
89
|
+
], PlatformHostModule);
|
|
90
|
+
//# sourceMappingURL=platform-host.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-host.module.js","sourceRoot":"","sources":["../../../src/core/host/platform-host.module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,6EAA6E;AAC7E,gFAAgF;AAChF,EAAE;AACF,wEAAwE;AACxE,0EAA0E;AAC1E,gFAAgF;AAChF,8DAA8D;AAC9D,EAAE;AACF,2EAA2E;AAC3E,+EAA+E;AAC/E,2EAA2E;AAC3E,gFAAgF;;;;;;;;;;AAEhF,2CAAiF;AAEjF,mCAQiB;AAsBjB,SAAS,UAAU,CAAC,KAAa,EAAE,IAAY,EAAE,OAAgB;IAC/D,MAAM,KAAK,GAAG,OAAyC,CAAC;IACxD,MAAM,KAAK,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5H,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,iEAAiE;YACvG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CACN,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,GAAI,KAAgB,EAAc,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AAEI,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAC7B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,MAAM,CAAC,OAAO,CAAC,QAA2B,EAAE;QAC1C,MAAM,SAAS,GAAe,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,IAAY,EAAE,OAAgB,EAAE,EAAE;YAC7D,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO;YAClC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YACjD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC;QAEF,IAAI,CAAC,kBAAU,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,6BAAqB,EAAE,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,CAAC,uBAAe,EAAE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAE9C,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,oBAAkB;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;YAC5B,SAAS;YACT,OAAO,EAAE,QAAQ;SAClB,CAAC;IACJ,CAAC;CACF,CAAA;AA7CY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,kBAAkB,CA6C9B"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import type { Type } from '@nestjs/common';
|
|
2
|
+
/**
|
|
3
|
+
* Injection token of the app's {@link AuditSink}.
|
|
4
|
+
*
|
|
5
|
+
* @example
|
|
6
|
+
* ```ts
|
|
7
|
+
* constructor(@Inject(AUDIT_SINK) private readonly audit: AuditSink) {}
|
|
8
|
+
* ```
|
|
9
|
+
*
|
|
10
|
+
* @extensionPoint token
|
|
11
|
+
* @stability experimental
|
|
12
|
+
*/
|
|
13
|
+
export declare const AUDIT_SINK: unique symbol;
|
|
14
|
+
/**
|
|
15
|
+
* One audit event, as a packaged slice reports it. Never carries secret
|
|
16
|
+
* material: `meta` holds scalars only.
|
|
17
|
+
*
|
|
18
|
+
* @stability experimental
|
|
19
|
+
*/
|
|
20
|
+
export interface AuditEventInput {
|
|
21
|
+
/** What happened, `<resource>.<verb>` (`settings.updated`). */
|
|
22
|
+
action: string;
|
|
23
|
+
/** Who did it; `null` for the system itself. */
|
|
24
|
+
actorUserId: string | null;
|
|
25
|
+
/** The kind of thing it happened to (`system_settings`). */
|
|
26
|
+
targetType: string;
|
|
27
|
+
/** Which one. */
|
|
28
|
+
targetId: string;
|
|
29
|
+
/** Small scalar facts about the event. Never secret material. */
|
|
30
|
+
meta?: Record<string, string | number | boolean | null>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Where a packaged slice records audit events. The app persists them in its
|
|
34
|
+
* own audit table.
|
|
35
|
+
*
|
|
36
|
+
* @stability experimental
|
|
37
|
+
*/
|
|
38
|
+
export interface AuditSink {
|
|
39
|
+
/**
|
|
40
|
+
* Persists one audit event. Called after the triggering write commits.
|
|
41
|
+
* Never receives secret material.
|
|
42
|
+
*/
|
|
43
|
+
record(event: AuditEventInput): Promise<void>;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Injection token of the app's {@link SystemSettingsStore}.
|
|
47
|
+
*
|
|
48
|
+
* @extensionPoint token
|
|
49
|
+
* @stability experimental
|
|
50
|
+
*/
|
|
51
|
+
export declare const SYSTEM_SETTINGS_STORE: unique symbol;
|
|
52
|
+
/**
|
|
53
|
+
* One settings namespace and the version of the row it was read from.
|
|
54
|
+
*
|
|
55
|
+
* @stability experimental
|
|
56
|
+
*/
|
|
57
|
+
export interface SystemSettingsSnapshot {
|
|
58
|
+
/** The namespace's current value, as the app's namespace registry validated it. */
|
|
59
|
+
value: unknown;
|
|
60
|
+
/** The row version, for `If-Match` optimistic concurrency. */
|
|
61
|
+
version: number;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The app's deployment-wide settings, one namespace at a time. Validation,
|
|
65
|
+
* `If-Match` and the settings audit trail stay in the app.
|
|
66
|
+
*
|
|
67
|
+
* @stability experimental
|
|
68
|
+
*/
|
|
69
|
+
export interface SystemSettingsStore {
|
|
70
|
+
/**
|
|
71
|
+
* The current value of one settings namespace (validated by the app's
|
|
72
|
+
* namespace registry), plus the row version for If-Match.
|
|
73
|
+
*/
|
|
74
|
+
read(namespace: string): Promise<SystemSettingsSnapshot>;
|
|
75
|
+
/**
|
|
76
|
+
* Patches one namespace with optimistic concurrency; audits through the
|
|
77
|
+
* app's own settings path. Rejects on a version mismatch (the app's 409).
|
|
78
|
+
*/
|
|
79
|
+
patch(namespace: string, patch: Record<string, unknown>, ctx: {
|
|
80
|
+
actorUserId: string;
|
|
81
|
+
ifMatchVersion?: number;
|
|
82
|
+
}): Promise<SystemSettingsSnapshot>;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Injection token of the app's Prisma client, seen as a {@link PrismaClientLike}.
|
|
86
|
+
*
|
|
87
|
+
* @extensionPoint token
|
|
88
|
+
* @stability experimental
|
|
89
|
+
*/
|
|
90
|
+
export declare const PLATFORM_PRISMA: unique symbol;
|
|
91
|
+
/**
|
|
92
|
+
* Schema-independent view of the app's generated client. Slices that own
|
|
93
|
+
* models narrow it with their own structural delegate types.
|
|
94
|
+
*
|
|
95
|
+
* @stability experimental
|
|
96
|
+
*/
|
|
97
|
+
export interface PrismaClientLike {
|
|
98
|
+
/** A tagged-template raw query. */
|
|
99
|
+
$queryRaw<T = unknown>(query: TemplateStringsArray, ...values: unknown[]): Promise<T>;
|
|
100
|
+
/** A tagged-template raw statement; resolves to the affected row count. */
|
|
101
|
+
$executeRaw(query: TemplateStringsArray, ...values: unknown[]): Promise<number>;
|
|
102
|
+
/** An interactive transaction. */
|
|
103
|
+
$transaction<T>(fn: (tx: unknown) => Promise<T>, options?: {
|
|
104
|
+
timeout?: number;
|
|
105
|
+
}): Promise<T>;
|
|
106
|
+
/** A client extension. */
|
|
107
|
+
$extends(extension: unknown): unknown;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* How the app binds one port: an existing provider, a class, or a factory
|
|
111
|
+
* (Nest's own provider shapes, minus `provide`).
|
|
112
|
+
*
|
|
113
|
+
* @typeParam T - the port's interface.
|
|
114
|
+
*
|
|
115
|
+
* @stability experimental
|
|
116
|
+
*/
|
|
117
|
+
export type PortBinding<T> = {
|
|
118
|
+
/** Reuse a provider the app already has (a class, or a string or symbol token). */
|
|
119
|
+
useExisting: Type<T> | string | symbol;
|
|
120
|
+
} | {
|
|
121
|
+
/** Instantiate this class (its own dependencies are injected). */
|
|
122
|
+
useClass: Type<T>;
|
|
123
|
+
} | {
|
|
124
|
+
/**
|
|
125
|
+
* Build the port. Nest's own factory signature: dependencies arrive
|
|
126
|
+
* untyped, in `inject` order.
|
|
127
|
+
*/
|
|
128
|
+
useFactory: (...deps: any[]) => T | Promise<T>;
|
|
129
|
+
/** The tokens whose instances `useFactory` receives. */
|
|
130
|
+
inject?: any[];
|
|
131
|
+
};
|
|
132
|
+
//# sourceMappingURL=ports.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ports.d.ts","sourceRoot":"","sources":["../../../src/core/host/ports.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,EAAE,OAAO,MAAsD,CAAC;AAEvF;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,+DAA+D;IAC/D,MAAM,EAAE,MAAM,CAAC;IACf,gDAAgD;IAChD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,4DAA4D;IAC5D,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;CACzD;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,OAAO,MAAiE,CAAC;AAE7G;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,mFAAmF;IACnF,KAAK,EAAE,OAAO,CAAC;IACf,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACzD;;;OAGG;IACH,KAAK,CACH,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,GAAG,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GACpD,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACpC;AAED;;;;;GAKG;AACH,eAAO,MAAM,eAAe,EAAE,OAAO,MAA2D,CAAC;AAEjG;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,SAAS,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtF,2EAA2E;IAC3E,WAAW,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChF,kCAAkC;IAClC,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7F,0BAA0B;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC;CACvC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IACE,mFAAmF;IACnF,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC;CACxC,GACD;IACE,kEAAkE;IAClE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;CACnB,GACD;IACE;;;OAGG;IACH,UAAU,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/C,wDAAwD;IACxD,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;CAChB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// =============================================================================
|
|
3
|
+
// The DI-time host ports (issue #696, PP-2.7)
|
|
4
|
+
// =============================================================================
|
|
5
|
+
//
|
|
6
|
+
// App-owned capabilities a packaged slice may need at runtime, reached through
|
|
7
|
+
// injection tokens the app binds once with `PlatformHostModule.forRoot(...)`
|
|
8
|
+
// (`apps/api/src/platform/platform-host.module.ts`). A slice injects a port by
|
|
9
|
+
// token and never imports the app's services.
|
|
10
|
+
//
|
|
11
|
+
// The tokens are `Symbol.for(...)` keys, so two copies of this file (two
|
|
12
|
+
// bundles, a test that loads the source next to the built package) still agree
|
|
13
|
+
// on identity.
|
|
14
|
+
//
|
|
15
|
+
// No port for logging (packaged code uses `new Logger(Context)` from
|
|
16
|
+
// `@nestjs/common`, which already routes to the app's logger through
|
|
17
|
+
// `app.useLogger`) and none for metrics or spans (packaged code uses
|
|
18
|
+
// `@opentelemetry/api`, a peer). See README.md next to this folder.
|
|
19
|
+
// =============================================================================
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.PLATFORM_PRISMA = exports.SYSTEM_SETTINGS_STORE = exports.AUDIT_SINK = void 0;
|
|
22
|
+
/**
|
|
23
|
+
* Injection token of the app's {@link AuditSink}.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* constructor(@Inject(AUDIT_SINK) private readonly audit: AuditSink) {}
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* @extensionPoint token
|
|
31
|
+
* @stability experimental
|
|
32
|
+
*/
|
|
33
|
+
exports.AUDIT_SINK = Symbol.for('@marinoscar/platform/AUDIT_SINK');
|
|
34
|
+
/**
|
|
35
|
+
* Injection token of the app's {@link SystemSettingsStore}.
|
|
36
|
+
*
|
|
37
|
+
* @extensionPoint token
|
|
38
|
+
* @stability experimental
|
|
39
|
+
*/
|
|
40
|
+
exports.SYSTEM_SETTINGS_STORE = Symbol.for('@marinoscar/platform/SYSTEM_SETTINGS_STORE');
|
|
41
|
+
/**
|
|
42
|
+
* Injection token of the app's Prisma client, seen as a {@link PrismaClientLike}.
|
|
43
|
+
*
|
|
44
|
+
* @extensionPoint token
|
|
45
|
+
* @stability experimental
|
|
46
|
+
*/
|
|
47
|
+
exports.PLATFORM_PRISMA = Symbol.for('@marinoscar/platform/PLATFORM_PRISMA');
|
|
48
|
+
//# sourceMappingURL=ports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ports.js","sourceRoot":"","sources":["../../../src/core/host/ports.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,8CAA8C;AAC9C,gFAAgF;AAChF,EAAE;AACF,+EAA+E;AAC/E,6EAA6E;AAC7E,+EAA+E;AAC/E,8CAA8C;AAC9C,EAAE;AACF,yEAAyE;AACzE,+EAA+E;AAC/E,eAAe;AACf,EAAE;AACF,qEAAqE;AACrE,qEAAqE;AACrE,qEAAqE;AACrE,oEAAoE;AACpE,gFAAgF;;;AAIhF;;;;;;;;;;GAUG;AACU,QAAA,UAAU,GAAkB,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;AAmCvF;;;;;GAKG;AACU,QAAA,qBAAqB,GAAkB,MAAM,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;AAqC7G;;;;;GAKG;AACU,QAAA,eAAe,GAAkB,MAAM,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from './registry/index';
|
|
2
|
+
export { RegistryFreezeService } from './registry/registry-freeze.service';
|
|
3
|
+
export * from './host/index';
|
|
4
|
+
export type { CredentialKind, GroupMembership, NodePrincipal, OrgMembership, Principal, PrincipalKind, Scope, SystemActor, TenancyMode, UserPrincipal, } from './principal/index';
|
|
5
|
+
export { HttpExceptionFilter } from './errors/http-exception.filter';
|
|
6
|
+
export { withVerbatimErrorBody, hasVerbatimErrorBody } from './errors/verbatim-error-body.exception';
|
|
7
|
+
export { DatabaseSeedException } from './errors/database-seed.exception';
|
|
8
|
+
export { ErrorDto } from './errors/error.dto';
|
|
9
|
+
export { USER_CREDENTIAL_DOMAIN_PREFIX, assertEncryptionKeyConfigured, decryptSecret, deriveSigningKey, encryptSecret, isCanonicalUuid, userCredentialPurpose, } from './crypto/secret-cipher';
|
|
10
|
+
export { verifyEncryptionKeyAtStartup } from './crypto/encryption-key-startup-check';
|
|
11
|
+
export { OPENAPI_TAG_NAME_PATTERN, openApiTagGroups, openApiTags, } from './openapi/openapi-tag.registry';
|
|
12
|
+
export type { OpenApiTag, OpenApiTagGroup } from './openapi/openapi-tag.registry';
|
|
13
|
+
export { ScopedAccessError, asSystem, forUser, ownerFieldOf, ownerRelationOf, registerUserOwnedModels, userOwnedModelRegistry, userScopeExtension, } from './data-access/index';
|
|
14
|
+
export type { ExportPolicy, ExtendableClient, PurgePolicy, UserOwnedModelDef, UserOwnedModelLookup, UserScopeExtension, } from './data-access/index';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AASA,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAK3E,cAAc,cAAc,CAAC;AAG7B,YAAY,EACV,cAAc,EACd,eAAe,EACf,aAAa,EACb,aAAa,EACb,SAAS,EACT,aAAa,EACb,KAAK,EACL,WAAW,EACX,WAAW,EACX,aAAa,GACd,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,wCAAwC,CAAC;AACrG,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAM9C,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAIrF,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,WAAW,GACZ,MAAM,gCAAgC,CAAC;AACxC,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAMlF,OAAO,EACL,iBAAiB,EACjB,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,eAAe,EACf,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// `@marinoscar/platform-api/core`: the primitives every other slice builds on
|
|
3
|
+
// (issue #698): the typed registry primitive (issue #675, moved here by issue
|
|
4
|
+
// #694) and the principal and scope contract (ADR 0001). Documented in
|
|
5
|
+
// ./README.md. Explicit named exports below the registry barrel.
|
|
6
|
+
//
|
|
7
|
+
// `registry/index.ts` stays free of Nest so it can load where no container
|
|
8
|
+
// exists (seeds, standalone scripts, import-time DTOs); `RegistryFreezeService`
|
|
9
|
+
// is the one Nest-aware export and lives in its own file.
|
|
10
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
13
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
14
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
15
|
+
}
|
|
16
|
+
Object.defineProperty(o, k2, desc);
|
|
17
|
+
}) : (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
o[k2] = m[k];
|
|
20
|
+
}));
|
|
21
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
22
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.userScopeExtension = exports.userOwnedModelRegistry = exports.registerUserOwnedModels = exports.ownerRelationOf = exports.ownerFieldOf = exports.forUser = exports.asSystem = exports.ScopedAccessError = exports.openApiTags = exports.openApiTagGroups = exports.OPENAPI_TAG_NAME_PATTERN = exports.verifyEncryptionKeyAtStartup = exports.userCredentialPurpose = exports.isCanonicalUuid = exports.encryptSecret = exports.deriveSigningKey = exports.decryptSecret = exports.assertEncryptionKeyConfigured = exports.USER_CREDENTIAL_DOMAIN_PREFIX = exports.ErrorDto = exports.DatabaseSeedException = exports.hasVerbatimErrorBody = exports.withVerbatimErrorBody = exports.HttpExceptionFilter = exports.RegistryFreezeService = void 0;
|
|
26
|
+
__exportStar(require("./registry/index"), exports);
|
|
27
|
+
var registry_freeze_service_1 = require("./registry/registry-freeze.service");
|
|
28
|
+
Object.defineProperty(exports, "RegistryFreezeService", { enumerable: true, get: function () { return registry_freeze_service_1.RegistryFreezeService; } });
|
|
29
|
+
// The host ports (issue #696): the access port (`definePlatformHost`), the
|
|
30
|
+
// DI-time ports (`AUDIT_SINK`, `SYSTEM_SETTINGS_STORE`, `PLATFORM_PRISMA`) and
|
|
31
|
+
// `PlatformHostModule`, which binds them. Every packaged slice reuses them.
|
|
32
|
+
__exportStar(require("./host/index"), exports);
|
|
33
|
+
// Errors: the application-wide exception filter, the error envelope's
|
|
34
|
+
// OpenAPI DTO and the two exceptions that go with it (issue #698).
|
|
35
|
+
var http_exception_filter_1 = require("./errors/http-exception.filter");
|
|
36
|
+
Object.defineProperty(exports, "HttpExceptionFilter", { enumerable: true, get: function () { return http_exception_filter_1.HttpExceptionFilter; } });
|
|
37
|
+
var verbatim_error_body_exception_1 = require("./errors/verbatim-error-body.exception");
|
|
38
|
+
Object.defineProperty(exports, "withVerbatimErrorBody", { enumerable: true, get: function () { return verbatim_error_body_exception_1.withVerbatimErrorBody; } });
|
|
39
|
+
Object.defineProperty(exports, "hasVerbatimErrorBody", { enumerable: true, get: function () { return verbatim_error_body_exception_1.hasVerbatimErrorBody; } });
|
|
40
|
+
var database_seed_exception_1 = require("./errors/database-seed.exception");
|
|
41
|
+
Object.defineProperty(exports, "DatabaseSeedException", { enumerable: true, get: function () { return database_seed_exception_1.DatabaseSeedException; } });
|
|
42
|
+
var error_dto_1 = require("./errors/error.dto");
|
|
43
|
+
Object.defineProperty(exports, "ErrorDto", { enumerable: true, get: function () { return error_dto_1.ErrorDto; } });
|
|
44
|
+
// Crypto: the AES-256-GCM secret cipher under every runtime-configured
|
|
45
|
+
// credential, and its bootstrap check (issue #698), plus HMAC signing sub-keys
|
|
46
|
+
// from the same master key (issue #822). The cipher reads
|
|
47
|
+
// SECRETS_ENCRYPTION_KEY from the environment once and caches it.
|
|
48
|
+
var secret_cipher_1 = require("./crypto/secret-cipher");
|
|
49
|
+
Object.defineProperty(exports, "USER_CREDENTIAL_DOMAIN_PREFIX", { enumerable: true, get: function () { return secret_cipher_1.USER_CREDENTIAL_DOMAIN_PREFIX; } });
|
|
50
|
+
Object.defineProperty(exports, "assertEncryptionKeyConfigured", { enumerable: true, get: function () { return secret_cipher_1.assertEncryptionKeyConfigured; } });
|
|
51
|
+
Object.defineProperty(exports, "decryptSecret", { enumerable: true, get: function () { return secret_cipher_1.decryptSecret; } });
|
|
52
|
+
Object.defineProperty(exports, "deriveSigningKey", { enumerable: true, get: function () { return secret_cipher_1.deriveSigningKey; } });
|
|
53
|
+
Object.defineProperty(exports, "encryptSecret", { enumerable: true, get: function () { return secret_cipher_1.encryptSecret; } });
|
|
54
|
+
Object.defineProperty(exports, "isCanonicalUuid", { enumerable: true, get: function () { return secret_cipher_1.isCanonicalUuid; } });
|
|
55
|
+
Object.defineProperty(exports, "userCredentialPurpose", { enumerable: true, get: function () { return secret_cipher_1.userCredentialPurpose; } });
|
|
56
|
+
var encryption_key_startup_check_1 = require("./crypto/encryption-key-startup-check");
|
|
57
|
+
Object.defineProperty(exports, "verifyEncryptionKeyAtStartup", { enumerable: true, get: function () { return encryption_key_startup_check_1.verifyEncryptionKeyAtStartup; } });
|
|
58
|
+
// OpenAPI tag registry: apps and slices register the @ApiTags names their
|
|
59
|
+
// controllers use, with a description and a sidebar group (issue #698).
|
|
60
|
+
var openapi_tag_registry_1 = require("./openapi/openapi-tag.registry");
|
|
61
|
+
Object.defineProperty(exports, "OPENAPI_TAG_NAME_PATTERN", { enumerable: true, get: function () { return openapi_tag_registry_1.OPENAPI_TAG_NAME_PATTERN; } });
|
|
62
|
+
Object.defineProperty(exports, "openApiTagGroups", { enumerable: true, get: function () { return openapi_tag_registry_1.openApiTagGroups; } });
|
|
63
|
+
Object.defineProperty(exports, "openApiTags", { enumerable: true, get: function () { return openapi_tag_registry_1.openApiTags; } });
|
|
64
|
+
// Scoped data access (issue #699; origin #688): the user-owned data registry,
|
|
65
|
+
// the user-scoped client extension and the explicit unscoped escape. The app
|
|
66
|
+
// fills the registry and injects its generated client; nothing here imports a
|
|
67
|
+
// generated model type (`@prisma/client/extension` only).
|
|
68
|
+
var index_1 = require("./data-access/index");
|
|
69
|
+
Object.defineProperty(exports, "ScopedAccessError", { enumerable: true, get: function () { return index_1.ScopedAccessError; } });
|
|
70
|
+
Object.defineProperty(exports, "asSystem", { enumerable: true, get: function () { return index_1.asSystem; } });
|
|
71
|
+
Object.defineProperty(exports, "forUser", { enumerable: true, get: function () { return index_1.forUser; } });
|
|
72
|
+
Object.defineProperty(exports, "ownerFieldOf", { enumerable: true, get: function () { return index_1.ownerFieldOf; } });
|
|
73
|
+
Object.defineProperty(exports, "ownerRelationOf", { enumerable: true, get: function () { return index_1.ownerRelationOf; } });
|
|
74
|
+
Object.defineProperty(exports, "registerUserOwnedModels", { enumerable: true, get: function () { return index_1.registerUserOwnedModels; } });
|
|
75
|
+
Object.defineProperty(exports, "userOwnedModelRegistry", { enumerable: true, get: function () { return index_1.userOwnedModelRegistry; } });
|
|
76
|
+
Object.defineProperty(exports, "userScopeExtension", { enumerable: true, get: function () { return index_1.userScopeExtension; } });
|
|
77
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,8EAA8E;AAC9E,uEAAuE;AACvE,iEAAiE;AACjE,EAAE;AACF,2EAA2E;AAC3E,gFAAgF;AAChF,0DAA0D;;;;;;;;;;;;;;;;;AAE1D,mDAAiC;AACjC,8EAA2E;AAAlE,gIAAA,qBAAqB,OAAA;AAE9B,2EAA2E;AAC3E,+EAA+E;AAC/E,4EAA4E;AAC5E,+CAA6B;AAgB7B,sEAAsE;AACtE,mEAAmE;AACnE,wEAAqE;AAA5D,4HAAA,mBAAmB,OAAA;AAC5B,wFAAqG;AAA5F,sIAAA,qBAAqB,OAAA;AAAE,qIAAA,oBAAoB,OAAA;AACpD,4EAAyE;AAAhE,gIAAA,qBAAqB,OAAA;AAC9B,gDAA8C;AAArC,qGAAA,QAAQ,OAAA;AAEjB,uEAAuE;AACvE,+EAA+E;AAC/E,0DAA0D;AAC1D,kEAAkE;AAClE,wDAQgC;AAP9B,8HAAA,6BAA6B,OAAA;AAC7B,8HAAA,6BAA6B,OAAA;AAC7B,8GAAA,aAAa,OAAA;AACb,iHAAA,gBAAgB,OAAA;AAChB,8GAAA,aAAa,OAAA;AACb,gHAAA,eAAe,OAAA;AACf,sHAAA,qBAAqB,OAAA;AAEvB,sFAAqF;AAA5E,4IAAA,4BAA4B,OAAA;AAErC,0EAA0E;AAC1E,wEAAwE;AACxE,uEAIwC;AAHtC,gIAAA,wBAAwB,OAAA;AACxB,wHAAA,gBAAgB,OAAA;AAChB,mHAAA,WAAW,OAAA;AAIb,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAC9E,0DAA0D;AAC1D,6CAS6B;AAR3B,0GAAA,iBAAiB,OAAA;AACjB,iGAAA,QAAQ,OAAA;AACR,gGAAA,OAAO,OAAA;AACP,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AACf,gHAAA,uBAAuB,OAAA;AACvB,+GAAA,sBAAsB,OAAA;AACtB,2GAAA,kBAAkB,OAAA"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { type Registry } from '../registry/index';
|
|
2
|
+
/**
|
|
3
|
+
* One OpenAPI tag: the name a controller passes to `@ApiTags(...)`, its
|
|
4
|
+
* sidebar description, and the sidebar group (`x-tagGroups`) it belongs to.
|
|
5
|
+
*
|
|
6
|
+
* @stability experimental
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const tag: OpenApiTag = { name: 'Jobs', description: 'Background job queue.', group: 'Operations' };
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export interface OpenApiTag {
|
|
13
|
+
/** Must match the controller's `@ApiTags(...)` argument byte-for-byte; the registry id. */
|
|
14
|
+
readonly name: string;
|
|
15
|
+
/** One or two sentences, rendered under the section heading in the sidebar. */
|
|
16
|
+
readonly description: string;
|
|
17
|
+
/** The sidebar section (`x-tagGroups` entry) the tag is listed under. */
|
|
18
|
+
readonly group: string;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* One sidebar section of the published document, as emitted in
|
|
22
|
+
* `x-tagGroups`: a group name and its tag names, in registration order.
|
|
23
|
+
*
|
|
24
|
+
* @stability experimental
|
|
25
|
+
* @example
|
|
26
|
+
* ```ts
|
|
27
|
+
* const group: OpenApiTagGroup = { name: 'Operations', tags: ['Health', 'Jobs'] };
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export interface OpenApiTagGroup {
|
|
31
|
+
/** The group's name, as given in each member tag's `group`. */
|
|
32
|
+
readonly name: string;
|
|
33
|
+
/** Names of the group's tags, in registration order. */
|
|
34
|
+
readonly tags: readonly string[];
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* What an OpenAPI tag or group name looks like: words of letters and digits
|
|
38
|
+
* separated by single spaces, with `&`, `.`, `/`, `-`, `(` and `)` allowed
|
|
39
|
+
* inside (`'Authentication & Access'`, `'AI Administration'`). No leading or
|
|
40
|
+
* trailing space.
|
|
41
|
+
*
|
|
42
|
+
* @stability experimental
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* OPENAPI_TAG_NAME_PATTERN.test('Personal Access Tokens'); // true
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
export declare const OPENAPI_TAG_NAME_PATTERN: RegExp;
|
|
49
|
+
/**
|
|
50
|
+
* The OpenAPI tag registry: every tag a controller of the application uses,
|
|
51
|
+
* registered at module scope before bootstrap (frozen by
|
|
52
|
+
* `RegistryFreezeService` after it). A duplicate name throws `DUPLICATE_ID`;
|
|
53
|
+
* an empty description, or a group that does not match
|
|
54
|
+
* {@link OPENAPI_TAG_NAME_PATTERN}, throws `INVALID_ENTRY`.
|
|
55
|
+
*
|
|
56
|
+
* @stability experimental
|
|
57
|
+
* @extensionPoint registry
|
|
58
|
+
* @example
|
|
59
|
+
* ```ts
|
|
60
|
+
* openApiTags.registerAll([
|
|
61
|
+
* { name: 'Invoices', description: 'Billing documents.', group: 'Billing' },
|
|
62
|
+
* ]);
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare const openApiTags: Registry<OpenApiTag>;
|
|
66
|
+
/**
|
|
67
|
+
* Group tags into sidebar sections: one group per distinct `group`, in the
|
|
68
|
+
* order each group first appears, each listing its tags in input order.
|
|
69
|
+
*
|
|
70
|
+
* @param tags - The tags to group; defaults to everything registered in
|
|
71
|
+
* {@link openApiTags}, in registration order.
|
|
72
|
+
* @returns The groups, ready to emit as `x-tagGroups`.
|
|
73
|
+
* @stability experimental
|
|
74
|
+
* @example
|
|
75
|
+
* ```ts
|
|
76
|
+
* document['x-tagGroups'] = openApiTagGroups();
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
export declare function openApiTagGroups(tags?: readonly OpenApiTag[]): OpenApiTagGroup[];
|
|
80
|
+
//# sourceMappingURL=openapi-tag.registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi-tag.registry.d.ts","sourceRoot":"","sources":["../../../src/core/openapi/openapi-tag.registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAsBlE;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU;IACzB,2FAA2F;IAC3F,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,yEAAyE;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,+DAA+D;IAC/D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,wBAAwB,QAAuD,CAAC;AAE7F;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAC,UAAU,CAY3C,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,SAAS,UAAU,EAAuB,GAAG,eAAe,EAAE,CAQpG"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.openApiTags = exports.OPENAPI_TAG_NAME_PATTERN = void 0;
|
|
4
|
+
exports.openApiTagGroups = openApiTagGroups;
|
|
5
|
+
const index_1 = require("../registry/index");
|
|
6
|
+
/**
|
|
7
|
+
* What an OpenAPI tag or group name looks like: words of letters and digits
|
|
8
|
+
* separated by single spaces, with `&`, `.`, `/`, `-`, `(` and `)` allowed
|
|
9
|
+
* inside (`'Authentication & Access'`, `'AI Administration'`). No leading or
|
|
10
|
+
* trailing space.
|
|
11
|
+
*
|
|
12
|
+
* @stability experimental
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* OPENAPI_TAG_NAME_PATTERN.test('Personal Access Tokens'); // true
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
exports.OPENAPI_TAG_NAME_PATTERN = /^[A-Za-z0-9(](?:[A-Za-z0-9 &./()-]*[A-Za-z0-9)])?$/;
|
|
19
|
+
/**
|
|
20
|
+
* The OpenAPI tag registry: every tag a controller of the application uses,
|
|
21
|
+
* registered at module scope before bootstrap (frozen by
|
|
22
|
+
* `RegistryFreezeService` after it). A duplicate name throws `DUPLICATE_ID`;
|
|
23
|
+
* an empty description, or a group that does not match
|
|
24
|
+
* {@link OPENAPI_TAG_NAME_PATTERN}, throws `INVALID_ENTRY`.
|
|
25
|
+
*
|
|
26
|
+
* @stability experimental
|
|
27
|
+
* @extensionPoint registry
|
|
28
|
+
* @example
|
|
29
|
+
* ```ts
|
|
30
|
+
* openApiTags.registerAll([
|
|
31
|
+
* { name: 'Invoices', description: 'Billing documents.', group: 'Billing' },
|
|
32
|
+
* ]);
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
exports.openApiTags = (0, index_1.defineRegistry)({
|
|
36
|
+
name: 'openapi-tags',
|
|
37
|
+
idOf: (tag) => tag.name,
|
|
38
|
+
idPattern: exports.OPENAPI_TAG_NAME_PATTERN,
|
|
39
|
+
validate: (tag) => {
|
|
40
|
+
if (typeof tag.description !== 'string' || tag.description.trim().length === 0) {
|
|
41
|
+
throw new Error('description must be a non-empty string');
|
|
42
|
+
}
|
|
43
|
+
if (typeof tag.group !== 'string' || !exports.OPENAPI_TAG_NAME_PATTERN.test(tag.group)) {
|
|
44
|
+
throw new Error(`group must match ${String(exports.OPENAPI_TAG_NAME_PATTERN)}`);
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
/**
|
|
49
|
+
* Group tags into sidebar sections: one group per distinct `group`, in the
|
|
50
|
+
* order each group first appears, each listing its tags in input order.
|
|
51
|
+
*
|
|
52
|
+
* @param tags - The tags to group; defaults to everything registered in
|
|
53
|
+
* {@link openApiTags}, in registration order.
|
|
54
|
+
* @returns The groups, ready to emit as `x-tagGroups`.
|
|
55
|
+
* @stability experimental
|
|
56
|
+
* @example
|
|
57
|
+
* ```ts
|
|
58
|
+
* document['x-tagGroups'] = openApiTagGroups();
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
function openApiTagGroups(tags = exports.openApiTags.list()) {
|
|
62
|
+
const groups = new Map();
|
|
63
|
+
for (const tag of tags) {
|
|
64
|
+
const members = groups.get(tag.group);
|
|
65
|
+
if (members)
|
|
66
|
+
members.push(tag.name);
|
|
67
|
+
else
|
|
68
|
+
groups.set(tag.group, [tag.name]);
|
|
69
|
+
}
|
|
70
|
+
return [...groups].map(([name, members]) => ({ name, tags: members }));
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=openapi-tag.registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openapi-tag.registry.js","sourceRoot":"","sources":["../../../src/core/openapi/openapi-tag.registry.ts"],"names":[],"mappings":";;;AAmHA,4CAQC;AA3HD,6CAAkE;AA0DlE;;;;;;;;;;;GAWG;AACU,QAAA,wBAAwB,GAAG,oDAAoD,CAAC;AAE7F;;;;;;;;;;;;;;;GAeG;AACU,QAAA,WAAW,GAAyB,IAAA,sBAAc,EAAa;IAC1E,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI;IACvB,SAAS,EAAE,gCAAwB;IACnC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;QAChB,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,gCAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/E,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,gCAAwB,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;CACF,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,SAAgB,gBAAgB,CAAC,OAA8B,mBAAW,CAAC,IAAI,EAAE;IAC/E,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,OAAO;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;;YAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;AACzE,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The org-aware principal and scope contract. Types only; see
|
|
3
|
+
* docs/adr/0001-org-aware-principal-and-scope.md.
|
|
4
|
+
*/
|
|
5
|
+
export type { TenancyMode, CredentialKind, PrincipalKind, OrgMembership, GroupMembership, UserPrincipal, NodePrincipal, Principal, Scope, SystemActor, } from './principal.types';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/principal/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,YAAY,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,EACb,eAAe,EACf,aAAa,EACb,aAAa,EACb,SAAS,EACT,KAAK,EACL,WAAW,GACZ,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/principal/index.ts"],"names":[],"mappings":""}
|