@weave-kit/engine 0.4.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +61 -0
- package/README.md +6 -6
- package/dist/adapters/auth/index.d.ts +4 -2
- package/dist/adapters/auth/index.d.ts.map +1 -1
- package/dist/adapters/auth/index.js +1 -0
- package/dist/adapters/auth/index.js.map +1 -1
- package/dist/adapters/auth/source.d.ts +4 -4
- package/dist/adapters/auth/source.d.ts.map +1 -1
- package/dist/adapters/auth/subject.d.ts +22 -0
- package/dist/adapters/auth/subject.d.ts.map +1 -0
- package/dist/adapters/auth/subject.js +42 -0
- package/dist/adapters/auth/subject.js.map +1 -0
- package/dist/adapters/auth/verify.d.ts +12 -0
- package/dist/adapters/auth/verify.d.ts.map +1 -0
- package/dist/adapters/auth/verify.js +2 -0
- package/dist/adapters/auth/verify.js.map +1 -0
- package/dist/adapters/events/index.d.ts +2 -1
- package/dist/adapters/events/index.d.ts.map +1 -1
- package/dist/adapters/events/index.js +2 -1
- package/dist/adapters/events/index.js.map +1 -1
- package/dist/adapters/mcp/generate.d.ts +3 -3
- package/dist/adapters/mcp/generate.d.ts.map +1 -1
- package/dist/adapters/mcp/generate.js +34 -11
- package/dist/adapters/mcp/generate.js.map +1 -1
- package/dist/adapters/mcp/guardrails.d.ts +1 -1
- package/dist/adapters/mcp/http.d.ts +3 -1
- package/dist/adapters/mcp/http.d.ts.map +1 -1
- package/dist/adapters/mcp/http.js +2 -2
- package/dist/adapters/mcp/http.js.map +1 -1
- package/dist/adapters/mcp/index.d.ts +13 -4
- package/dist/adapters/mcp/index.d.ts.map +1 -1
- package/dist/adapters/mcp/index.js +12 -8
- package/dist/adapters/mcp/index.js.map +1 -1
- package/dist/adapters/mcp/session.d.ts +5 -5
- package/dist/adapters/mcp/session.d.ts.map +1 -1
- package/dist/adapters/mcp/tools.d.ts +6 -0
- package/dist/adapters/mcp/tools.d.ts.map +1 -1
- package/dist/adapters/mcp/tools.js +38 -14
- package/dist/adapters/mcp/tools.js.map +1 -1
- package/dist/adapters/mcp/types.d.ts +3 -1
- package/dist/adapters/mcp/types.d.ts.map +1 -1
- package/dist/adapters/mcp/types.js +1 -1
- package/dist/adapters/mcp/types.js.map +1 -1
- package/dist/adapters/openapi/document.d.ts.map +1 -1
- package/dist/adapters/openapi/document.js +72 -2
- package/dist/adapters/openapi/document.js.map +1 -1
- package/dist/adapters/openapi/schema.d.ts.map +1 -1
- package/dist/adapters/openapi/schema.js +47 -7
- package/dist/adapters/openapi/schema.js.map +1 -1
- package/dist/adapters/openapi/types.d.ts +1 -0
- package/dist/adapters/openapi/types.d.ts.map +1 -1
- package/dist/adapters/openapi/types.js +2 -0
- package/dist/adapters/openapi/types.js.map +1 -1
- package/dist/adapters/rest/approvals.d.ts +2 -2
- package/dist/adapters/rest/approvals.js +2 -2
- package/dist/adapters/rest/audit.d.ts +2 -2
- package/dist/adapters/rest/audit.js +2 -2
- package/dist/adapters/rest/common.d.ts +3 -3
- package/dist/adapters/rest/common.d.ts.map +1 -1
- package/dist/adapters/rest/common.js +1 -1
- package/dist/adapters/rest/guardrails.d.ts +1 -1
- package/dist/adapters/rest/guardrails.js +1 -1
- package/dist/adapters/rest/identities.d.ts +4 -4
- package/dist/adapters/rest/identities.d.ts.map +1 -1
- package/dist/adapters/rest/identities.js +3 -3
- package/dist/adapters/rest/identities.js.map +1 -1
- package/dist/adapters/rest/identityAdmin.d.ts +18 -0
- package/dist/adapters/rest/identityAdmin.d.ts.map +1 -0
- package/dist/adapters/rest/identityAdmin.js +58 -0
- package/dist/adapters/rest/identityAdmin.js.map +1 -0
- package/dist/adapters/rest/index.d.ts +4 -0
- package/dist/adapters/rest/index.d.ts.map +1 -1
- package/dist/adapters/rest/index.js +3 -0
- package/dist/adapters/rest/index.js.map +1 -1
- package/dist/adapters/rest/metadata.d.ts +1 -1
- package/dist/adapters/rest/metadata.js +1 -1
- package/dist/adapters/rest/pages.d.ts +1 -1
- package/dist/adapters/rest/pages.d.ts.map +1 -1
- package/dist/adapters/rest/permissions.d.ts +1 -1
- package/dist/adapters/rest/permissions.js +1 -1
- package/dist/adapters/rest/plugin.d.ts +2 -2
- package/dist/adapters/rest/plugin.d.ts.map +1 -1
- package/dist/adapters/rest/schemas.d.ts +1 -1
- package/dist/adapters/rest/schemas.d.ts.map +1 -1
- package/dist/adapters/rest/workflow.d.ts +15 -0
- package/dist/adapters/rest/workflow.d.ts.map +1 -0
- package/dist/adapters/rest/workflow.js +89 -0
- package/dist/adapters/rest/workflow.js.map +1 -0
- package/dist/adapters/rest/workflowSource.d.ts +15 -0
- package/dist/adapters/rest/workflowSource.d.ts.map +1 -0
- package/dist/adapters/rest/workflowSource.js +63 -0
- package/dist/adapters/rest/workflowSource.js.map +1 -0
- package/dist/cli/commands/build.js +1 -1
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/connect.d.ts +1 -1
- package/dist/cli/commands/default-view.d.ts +2 -2
- package/dist/cli/commands/default-view.js +2 -2
- package/dist/cli/commands/dev.d.ts.map +1 -1
- package/dist/cli/commands/dev.js +18 -9
- package/dist/cli/commands/dev.js.map +1 -1
- package/dist/cli/commands/field-add.d.ts.map +1 -1
- package/dist/cli/commands/field-add.js +12 -6
- package/dist/cli/commands/field-add.js.map +1 -1
- package/dist/cli/commands/field-types.d.ts.map +1 -1
- package/dist/cli/commands/field-types.js +10 -1
- package/dist/cli/commands/field-types.js.map +1 -1
- package/dist/cli/commands/identity.d.ts +15 -0
- package/dist/cli/commands/identity.d.ts.map +1 -0
- package/dist/cli/commands/identity.js +115 -0
- package/dist/cli/commands/identity.js.map +1 -0
- package/dist/cli/commands/introspect.d.ts.map +1 -1
- package/dist/cli/commands/introspect.js +23 -0
- package/dist/cli/commands/introspect.js.map +1 -1
- package/dist/cli/commands/mcp-config.js +1 -1
- package/dist/cli/commands/mcp-config.js.map +1 -1
- package/dist/cli/commands/migrate.js +2 -2
- package/dist/cli/commands/migrate.js.map +1 -1
- package/dist/cli/commands/module.d.ts +2 -2
- package/dist/cli/commands/module.d.ts.map +1 -1
- package/dist/cli/commands/module.js +2 -2
- package/dist/cli/commands/module.js.map +1 -1
- package/dist/cli/commands/object-create.d.ts.map +1 -1
- package/dist/cli/commands/object-create.js +15 -15
- package/dist/cli/commands/object-create.js.map +1 -1
- package/dist/cli/commands/schema-map.d.ts.map +1 -1
- package/dist/cli/commands/schema-map.js +6 -0
- package/dist/cli/commands/schema-map.js.map +1 -1
- package/dist/cli/commands/workflow-close.d.ts +9 -0
- package/dist/cli/commands/workflow-close.d.ts.map +1 -0
- package/dist/cli/commands/workflow-close.js +48 -0
- package/dist/cli/commands/workflow-close.js.map +1 -0
- package/dist/cli/commands/workflow-migrate.d.ts +11 -0
- package/dist/cli/commands/workflow-migrate.d.ts.map +1 -0
- package/dist/cli/commands/workflow-migrate.js +120 -0
- package/dist/cli/commands/workflow-migrate.js.map +1 -0
- package/dist/cli/commands/workflow-open.d.ts +10 -0
- package/dist/cli/commands/workflow-open.d.ts.map +1 -0
- package/dist/cli/commands/workflow-open.js +112 -0
- package/dist/cli/commands/workflow-open.js.map +1 -0
- package/dist/cli/commands/workflow-starter.d.ts +10 -0
- package/dist/cli/commands/workflow-starter.d.ts.map +1 -0
- package/dist/cli/commands/workflow-starter.js +29 -0
- package/dist/cli/commands/workflow-starter.js.map +1 -0
- package/dist/cli/commands/workflow-switch.d.ts +10 -0
- package/dist/cli/commands/workflow-switch.d.ts.map +1 -0
- package/dist/cli/commands/workflow-switch.js +60 -0
- package/dist/cli/commands/workflow-switch.js.map +1 -0
- package/dist/cli/commands/workflow-upgrade.d.ts +12 -0
- package/dist/cli/commands/workflow-upgrade.d.ts.map +1 -0
- package/dist/cli/commands/workflow-upgrade.js +116 -0
- package/dist/cli/commands/workflow-upgrade.js.map +1 -0
- package/dist/cli/index.js +74 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/project-types/manifest.d.ts +25 -0
- package/dist/cli/project-types/manifest.d.ts.map +1 -0
- package/dist/cli/project-types/manifest.js +40 -0
- package/dist/cli/project-types/manifest.js.map +1 -0
- package/dist/cli/ready-screen.js +1 -1
- package/dist/cli/ready-screen.js.map +1 -1
- package/dist/cli/scaffold.d.ts.map +1 -1
- package/dist/cli/scaffold.js +21 -34
- package/dist/cli/scaffold.js.map +1 -1
- package/dist/cli/types/commands.d.ts +48 -0
- package/dist/cli/types/commands.d.ts.map +1 -1
- package/dist/cli/types/index.d.ts +1 -1
- package/dist/cli/types/index.d.ts.map +1 -1
- package/dist/cli/types/values.d.ts +9 -0
- package/dist/cli/types/values.d.ts.map +1 -1
- package/dist/cli/types/values.js +9 -0
- package/dist/cli/types/values.js.map +1 -1
- package/dist/core/api/error.d.ts.map +1 -1
- package/dist/core/api/error.js +7 -4
- package/dist/core/api/error.js.map +1 -1
- package/dist/core/audit/types.d.ts +4 -2
- package/dist/core/audit/types.d.ts.map +1 -1
- package/dist/core/audit/types.js +2 -0
- package/dist/core/audit/types.js.map +1 -1
- package/dist/core/formula/validate.d.ts.map +1 -1
- package/dist/core/formula/validate.js +6 -0
- package/dist/core/formula/validate.js.map +1 -1
- package/dist/core/i18n/ar.d.ts.map +1 -1
- package/dist/core/i18n/ar.js +59 -3
- package/dist/core/i18n/ar.js.map +1 -1
- package/dist/core/i18n/de.d.ts.map +1 -1
- package/dist/core/i18n/de.js +59 -3
- package/dist/core/i18n/de.js.map +1 -1
- package/dist/core/i18n/en.d.ts +60 -4
- package/dist/core/i18n/en.d.ts.map +1 -1
- package/dist/core/i18n/en.js +60 -4
- package/dist/core/i18n/en.js.map +1 -1
- package/dist/core/i18n/es.d.ts.map +1 -1
- package/dist/core/i18n/es.js +59 -3
- package/dist/core/i18n/es.js.map +1 -1
- package/dist/core/i18n/fr.d.ts.map +1 -1
- package/dist/core/i18n/fr.js +59 -3
- package/dist/core/i18n/fr.js.map +1 -1
- package/dist/core/i18n/hi.d.ts.map +1 -1
- package/dist/core/i18n/hi.js +59 -3
- package/dist/core/i18n/hi.js.map +1 -1
- package/dist/core/i18n/id.d.ts.map +1 -1
- package/dist/core/i18n/id.js +59 -3
- package/dist/core/i18n/id.js.map +1 -1
- package/dist/core/i18n/ja.d.ts.map +1 -1
- package/dist/core/i18n/ja.js +59 -3
- package/dist/core/i18n/ja.js.map +1 -1
- package/dist/core/i18n/ko.d.ts.map +1 -1
- package/dist/core/i18n/ko.js +59 -3
- package/dist/core/i18n/ko.js.map +1 -1
- package/dist/core/i18n/pt.d.ts.map +1 -1
- package/dist/core/i18n/pt.js +59 -3
- package/dist/core/i18n/pt.js.map +1 -1
- package/dist/core/i18n/ru.d.ts.map +1 -1
- package/dist/core/i18n/ru.js +59 -3
- package/dist/core/i18n/ru.js.map +1 -1
- package/dist/core/i18n/vi.d.ts.map +1 -1
- package/dist/core/i18n/vi.js +59 -3
- package/dist/core/i18n/vi.js.map +1 -1
- package/dist/core/i18n/zh-hant.d.ts.map +1 -1
- package/dist/core/i18n/zh-hant.js +59 -3
- package/dist/core/i18n/zh-hant.js.map +1 -1
- package/dist/core/i18n/zh.d.ts.map +1 -1
- package/dist/core/i18n/zh.js +60 -4
- package/dist/core/i18n/zh.js.map +1 -1
- package/dist/core/object/describe.d.ts +62 -3
- package/dist/core/object/describe.d.ts.map +1 -1
- package/dist/core/object/describe.js +81 -11
- package/dist/core/object/describe.js.map +1 -1
- package/dist/core/object/gen-types.d.ts.map +1 -1
- package/dist/core/object/gen-types.js +14 -1
- package/dist/core/object/gen-types.js.map +1 -1
- package/dist/core/object/graph.d.ts +3 -0
- package/dist/core/object/graph.d.ts.map +1 -1
- package/dist/core/object/graph.js +90 -14
- package/dist/core/object/graph.js.map +1 -1
- package/dist/core/object/index.d.ts +6 -2
- package/dist/core/object/index.d.ts.map +1 -1
- package/dist/core/object/index.js +5 -1
- package/dist/core/object/index.js.map +1 -1
- package/dist/core/object/migrations.d.ts.map +1 -1
- package/dist/core/object/migrations.js +45 -0
- package/dist/core/object/migrations.js.map +1 -1
- package/dist/core/object/parse.d.ts +7 -0
- package/dist/core/object/parse.d.ts.map +1 -1
- package/dist/core/object/parse.js +32 -1
- package/dist/core/object/parse.js.map +1 -1
- package/dist/core/object/record-key.d.ts +19 -0
- package/dist/core/object/record-key.d.ts.map +1 -0
- package/dist/core/object/record-key.js +100 -0
- package/dist/core/object/record-key.js.map +1 -0
- package/dist/core/object/registry.js +1 -1
- package/dist/core/object/registry.js.map +1 -1
- package/dist/core/object/schema-version.d.ts +1 -1
- package/dist/core/object/schema-version.js +1 -1
- package/dist/core/object/system-objects.d.ts +16 -0
- package/dist/core/object/system-objects.d.ts.map +1 -0
- package/dist/core/object/system-objects.js +72 -0
- package/dist/core/object/system-objects.js.map +1 -0
- package/dist/core/object/validate/constraints.d.ts +9 -0
- package/dist/core/object/validate/constraints.d.ts.map +1 -0
- package/dist/core/object/validate/constraints.js +45 -0
- package/dist/core/object/validate/constraints.js.map +1 -0
- package/dist/core/object/validate/field.d.ts.map +1 -1
- package/dist/core/object/validate/field.js +339 -66
- package/dist/core/object/validate/field.js.map +1 -1
- package/dist/core/object/validate/formulas.d.ts.map +1 -1
- package/dist/core/object/validate/formulas.js +6 -0
- package/dist/core/object/validate/formulas.js.map +1 -1
- package/dist/core/object/validate/object.d.ts +2 -0
- package/dist/core/object/validate/object.d.ts.map +1 -1
- package/dist/core/object/validate/object.js +54 -19
- package/dist/core/object/validate/object.js.map +1 -1
- package/dist/core/object/validate/permissions.d.ts.map +1 -1
- package/dist/core/object/validate/permissions.js +4 -0
- package/dist/core/object/validate/permissions.js.map +1 -1
- package/dist/core/object/validate/primitives.d.ts +0 -1
- package/dist/core/object/validate/primitives.d.ts.map +1 -1
- package/dist/core/object/validate/primitives.js +1 -2
- package/dist/core/object/validate/primitives.js.map +1 -1
- package/dist/core/object/validate/workflow.d.ts +10 -0
- package/dist/core/object/validate/workflow.d.ts.map +1 -0
- package/dist/core/object/validate/workflow.js +143 -0
- package/dist/core/object/validate/workflow.js.map +1 -0
- package/dist/core/object/workflow-hash.d.ts +10 -0
- package/dist/core/object/workflow-hash.d.ts.map +1 -0
- package/dist/core/object/workflow-hash.js +27 -0
- package/dist/core/object/workflow-hash.js.map +1 -0
- package/dist/core/object/workflow-migrations.d.ts +27 -0
- package/dist/core/object/workflow-migrations.d.ts.map +1 -0
- package/dist/core/object/workflow-migrations.js +125 -0
- package/dist/core/object/workflow-migrations.js.map +1 -0
- package/dist/core/provider/event/index.d.ts +1 -1
- package/dist/core/provider/event/index.d.ts.map +1 -1
- package/dist/core/provider/event/index.js.map +1 -1
- package/dist/core/provider/event/types.d.ts +17 -2
- package/dist/core/provider/event/types.d.ts.map +1 -1
- package/dist/core/provider/event/types.js +2 -1
- package/dist/core/provider/event/types.js.map +1 -1
- package/dist/core/provider/identity/directory.d.ts +90 -0
- package/dist/core/provider/identity/directory.d.ts.map +1 -0
- package/dist/core/provider/identity/directory.js +3 -0
- package/dist/core/provider/identity/directory.js.map +1 -0
- package/dist/core/provider/identity/index.d.ts +5 -1
- package/dist/core/provider/identity/index.d.ts.map +1 -1
- package/dist/core/provider/identity/index.js +2 -1
- package/dist/core/provider/identity/index.js.map +1 -1
- package/dist/core/provider/identity/source.d.ts +22 -0
- package/dist/core/provider/identity/source.d.ts.map +1 -0
- package/dist/core/provider/identity/source.js +3 -0
- package/dist/core/provider/identity/source.js.map +1 -0
- package/dist/core/provider/identity/types.d.ts +62 -7
- package/dist/core/provider/identity/types.d.ts.map +1 -1
- package/dist/core/provider/identity/types.js +13 -0
- package/dist/core/provider/identity/types.js.map +1 -1
- package/dist/core/proxy/types.d.ts +4 -4
- package/dist/core/proxy/types.d.ts.map +1 -1
- package/dist/core/rbac/authorize.d.ts +10 -9
- package/dist/core/rbac/authorize.d.ts.map +1 -1
- package/dist/core/rbac/authorize.js +23 -18
- package/dist/core/rbac/authorize.js.map +1 -1
- package/dist/core/rbac/details.d.ts +33 -0
- package/dist/core/rbac/details.d.ts.map +1 -0
- package/dist/core/rbac/details.js +74 -0
- package/dist/core/rbac/details.js.map +1 -0
- package/dist/core/rbac/fields.d.ts +2 -1
- package/dist/core/rbac/fields.d.ts.map +1 -1
- package/dist/core/rbac/fields.js +3 -2
- package/dist/core/rbac/fields.js.map +1 -1
- package/dist/core/rbac/index.d.ts +3 -2
- package/dist/core/rbac/index.d.ts.map +1 -1
- package/dist/core/rbac/index.js +2 -1
- package/dist/core/rbac/index.js.map +1 -1
- package/dist/core/rbac/resolve.d.ts +3 -1
- package/dist/core/rbac/resolve.d.ts.map +1 -1
- package/dist/core/rbac/resolve.js +17 -9
- package/dist/core/rbac/resolve.js.map +1 -1
- package/dist/core/rbac/rls.d.ts +6 -0
- package/dist/core/rbac/rls.d.ts.map +1 -1
- package/dist/core/rbac/rls.js +52 -7
- package/dist/core/rbac/rls.js.map +1 -1
- package/dist/core/rbac/rowScope.d.ts +13 -6
- package/dist/core/rbac/rowScope.d.ts.map +1 -1
- package/dist/core/rbac/rowScope.js +88 -16
- package/dist/core/rbac/rowScope.js.map +1 -1
- package/dist/core/rbac/types.d.ts +6 -7
- package/dist/core/rbac/types.d.ts.map +1 -1
- package/dist/core/script/types.d.ts +1 -1
- package/dist/core/script/types.d.ts.map +1 -1
- package/dist/core/storage/diff.d.ts +10 -2
- package/dist/core/storage/diff.d.ts.map +1 -1
- package/dist/core/storage/diff.js +40 -18
- package/dist/core/storage/diff.js.map +1 -1
- package/dist/core/storage/index.d.ts +7 -1
- package/dist/core/storage/index.d.ts.map +1 -1
- package/dist/core/storage/index.js +6 -1
- package/dist/core/storage/index.js.map +1 -1
- package/dist/core/storage/inspect.d.ts +12 -3
- package/dist/core/storage/inspect.d.ts.map +1 -1
- package/dist/core/storage/inspect.js +39 -22
- package/dist/core/storage/inspect.js.map +1 -1
- package/dist/core/storage/introspect.d.ts +9 -2
- package/dist/core/storage/introspect.d.ts.map +1 -1
- package/dist/core/storage/introspect.js +100 -43
- package/dist/core/storage/introspect.js.map +1 -1
- package/dist/core/storage/link-table.d.ts +47 -0
- package/dist/core/storage/link-table.d.ts.map +1 -0
- package/dist/core/storage/link-table.js +110 -0
- package/dist/core/storage/link-table.js.map +1 -0
- package/dist/core/storage/map.d.ts +14 -5
- package/dist/core/storage/map.d.ts.map +1 -1
- package/dist/core/storage/map.js +207 -39
- package/dist/core/storage/map.js.map +1 -1
- package/dist/core/storage/meta.d.ts +6 -3
- package/dist/core/storage/meta.d.ts.map +1 -1
- package/dist/core/storage/meta.js +9 -5
- package/dist/core/storage/meta.js.map +1 -1
- package/dist/core/storage/migrate.d.ts.map +1 -1
- package/dist/core/storage/migrate.js +144 -11
- package/dist/core/storage/migrate.js.map +1 -1
- package/dist/core/storage/record-key-sql.d.ts +19 -0
- package/dist/core/storage/record-key-sql.d.ts.map +1 -0
- package/dist/core/storage/record-key-sql.js +43 -0
- package/dist/core/storage/record-key-sql.js.map +1 -0
- package/dist/core/storage/record-meta.d.ts +68 -0
- package/dist/core/storage/record-meta.d.ts.map +1 -0
- package/dist/core/storage/record-meta.js +108 -0
- package/dist/core/storage/record-meta.js.map +1 -0
- package/dist/core/storage/report.d.ts +10 -0
- package/dist/core/storage/report.d.ts.map +1 -1
- package/dist/core/storage/report.js +31 -9
- package/dist/core/storage/report.js.map +1 -1
- package/dist/core/storage/sql-literals.d.ts +9 -0
- package/dist/core/storage/sql-literals.d.ts.map +1 -0
- package/dist/core/storage/sql-literals.js +13 -0
- package/dist/core/storage/sql-literals.js.map +1 -0
- package/dist/core/storage/system-tables.d.ts +44 -0
- package/dist/core/storage/system-tables.d.ts.map +1 -0
- package/dist/core/storage/system-tables.js +268 -0
- package/dist/core/storage/system-tables.js.map +1 -0
- package/dist/core/tools/policies.d.ts +2 -2
- package/dist/core/tools/policies.js +2 -2
- package/dist/core/tools/types.d.ts +6 -6
- package/dist/core/tools/types.d.ts.map +1 -1
- package/dist/core/tools/values.d.ts +5 -0
- package/dist/core/tools/values.d.ts.map +1 -1
- package/dist/core/tools/values.js +9 -1
- package/dist/core/tools/values.js.map +1 -1
- package/dist/core/types/currency.d.ts +9 -0
- package/dist/core/types/currency.d.ts.map +1 -0
- package/dist/core/types/currency.js +28 -0
- package/dist/core/types/currency.js.map +1 -0
- package/dist/core/types/field-type.d.ts +60 -6
- package/dist/core/types/field-type.d.ts.map +1 -1
- package/dist/core/types/field-type.js +19 -3
- package/dist/core/types/field-type.js.map +1 -1
- package/dist/core/types/fields.d.ts +118 -20
- package/dist/core/types/fields.d.ts.map +1 -1
- package/dist/core/types/index.d.ts +11 -9
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/core/types/index.js +5 -4
- package/dist/core/types/index.js.map +1 -1
- package/dist/core/types/object.d.ts +27 -2
- package/dist/core/types/object.d.ts.map +1 -1
- package/dist/core/types/permission.d.ts +5 -0
- package/dist/core/types/permission.d.ts.map +1 -1
- package/dist/core/types/primaryField.d.ts +6 -1
- package/dist/core/types/primaryField.d.ts.map +1 -1
- package/dist/core/types/primaryField.js +8 -1
- package/dist/core/types/primaryField.js.map +1 -1
- package/dist/core/types/registry.d.ts +6 -4
- package/dist/core/types/registry.d.ts.map +1 -1
- package/dist/core/types/registry.js +40 -30
- package/dist/core/types/registry.js.map +1 -1
- package/dist/core/types/values.d.ts +102 -27
- package/dist/core/types/values.d.ts.map +1 -1
- package/dist/core/types/values.js +68 -29
- package/dist/core/types/values.js.map +1 -1
- package/dist/core/types/workflow.d.ts +140 -0
- package/dist/core/types/workflow.d.ts.map +1 -0
- package/dist/core/types/workflow.js +49 -0
- package/dist/core/types/workflow.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/event/bus.d.ts.map +1 -1
- package/dist/infrastructure/event/bus.js +14 -0
- package/dist/infrastructure/event/bus.js.map +1 -1
- package/dist/infrastructure/identity.d.ts +2 -2
- package/dist/infrastructure/identity.d.ts.map +1 -1
- package/dist/infrastructure/identity.js.map +1 -1
- package/dist/layout-format.d.ts +6 -6
- package/dist/layout-format.js +4 -4
- package/dist/runtime/data-access/builder.d.ts +15 -5
- package/dist/runtime/data-access/builder.d.ts.map +1 -1
- package/dist/runtime/data-access/builder.js +222 -30
- package/dist/runtime/data-access/builder.js.map +1 -1
- package/dist/runtime/data-access/details.d.ts.map +1 -1
- package/dist/runtime/data-access/details.js +7 -2
- package/dist/runtime/data-access/details.js.map +1 -1
- package/dist/runtime/data-access/formula.d.ts +11 -3
- package/dist/runtime/data-access/formula.d.ts.map +1 -1
- package/dist/runtime/data-access/formula.js +82 -19
- package/dist/runtime/data-access/formula.js.map +1 -1
- package/dist/runtime/data-access/index.d.ts +1 -1
- package/dist/runtime/data-access/index.d.ts.map +1 -1
- package/dist/runtime/data-access/index.js +1 -1
- package/dist/runtime/data-access/index.js.map +1 -1
- package/dist/runtime/data-access/link.d.ts +7 -0
- package/dist/runtime/data-access/link.d.ts.map +1 -0
- package/dist/runtime/data-access/link.js +80 -0
- package/dist/runtime/data-access/link.js.map +1 -0
- package/dist/runtime/data-access/query.d.ts +48 -3
- package/dist/runtime/data-access/query.d.ts.map +1 -1
- package/dist/runtime/data-access/query.js +399 -45
- package/dist/runtime/data-access/query.js.map +1 -1
- package/dist/runtime/data-access/rbac.d.ts.map +1 -1
- package/dist/runtime/data-access/rbac.js +134 -16
- package/dist/runtime/data-access/rbac.js.map +1 -1
- package/dist/runtime/data-access/seqno.d.ts +0 -2
- package/dist/runtime/data-access/seqno.d.ts.map +1 -1
- package/dist/runtime/data-access/seqno.js +0 -9
- package/dist/runtime/data-access/seqno.js.map +1 -1
- package/dist/runtime/data-access/sql-executor.d.ts +13 -3
- package/dist/runtime/data-access/sql-executor.d.ts.map +1 -1
- package/dist/runtime/data-access/sql-executor.js +20 -14
- package/dist/runtime/data-access/sql-executor.js.map +1 -1
- package/dist/runtime/data-access/sql-gate.d.ts +4 -4
- package/dist/runtime/data-access/sql-gate.d.ts.map +1 -1
- package/dist/runtime/data-access/sql-gate.js +5 -5
- package/dist/runtime/data-access/sql-gate.js.map +1 -1
- package/dist/runtime/data-access/tx.d.ts +1 -1
- package/dist/runtime/data-access/tx.js +1 -1
- package/dist/runtime/data-access/types.d.ts +31 -3
- package/dist/runtime/data-access/types.d.ts.map +1 -1
- package/dist/runtime/data-access/validate.d.ts.map +1 -1
- package/dist/runtime/data-access/validate.js +186 -39
- package/dist/runtime/data-access/validate.js.map +1 -1
- package/dist/runtime/data-access/workflow.d.ts +146 -0
- package/dist/runtime/data-access/workflow.d.ts.map +1 -0
- package/dist/runtime/data-access/workflow.js +636 -0
- package/dist/runtime/data-access/workflow.js.map +1 -0
- package/dist/runtime/engine.d.ts +89 -14
- package/dist/runtime/engine.d.ts.map +1 -1
- package/dist/runtime/engine.js +123 -26
- package/dist/runtime/engine.js.map +1 -1
- package/dist/runtime/fieldtypes/loader.d.ts.map +1 -1
- package/dist/runtime/fieldtypes/loader.js +84 -2
- package/dist/runtime/fieldtypes/loader.js.map +1 -1
- package/dist/runtime/git/guardrailSource.d.ts +1 -1
- package/dist/runtime/git/index.d.ts +4 -2
- package/dist/runtime/git/index.d.ts.map +1 -1
- package/dist/runtime/git/index.js +2 -1
- package/dist/runtime/git/index.js.map +1 -1
- package/dist/runtime/git/layoutSource.d.ts +1 -1
- package/dist/runtime/git/loader.d.ts.map +1 -1
- package/dist/runtime/git/loader.js +18 -6
- package/dist/runtime/git/loader.js.map +1 -1
- package/dist/runtime/git/pageCatalog.d.ts +1 -1
- package/dist/runtime/git/schemaChange.d.ts +22 -0
- package/dist/runtime/git/schemaChange.d.ts.map +1 -1
- package/dist/runtime/git/schemaChange.js +28 -2
- package/dist/runtime/git/schemaChange.js.map +1 -1
- package/dist/runtime/git/schemaSource.d.ts +1 -1
- package/dist/runtime/git/sourceFile.d.ts +1 -1
- package/dist/runtime/git/sourceFile.js +1 -1
- package/dist/runtime/git/sourceTransaction.d.ts +1 -1
- package/dist/runtime/git/workflowSource.d.ts +40 -0
- package/dist/runtime/git/workflowSource.d.ts.map +1 -0
- package/dist/runtime/git/workflowSource.js +45 -0
- package/dist/runtime/git/workflowSource.js.map +1 -0
- package/dist/runtime/identity/admin.d.ts +18 -0
- package/dist/runtime/identity/admin.d.ts.map +1 -0
- package/dist/runtime/identity/admin.js +27 -0
- package/dist/runtime/identity/admin.js.map +1 -0
- package/dist/runtime/identity/directory.d.ts +12 -0
- package/dist/runtime/identity/directory.d.ts.map +1 -0
- package/dist/runtime/identity/directory.js +22 -0
- package/dist/runtime/identity/directory.js.map +1 -0
- package/dist/runtime/identity/index.d.ts +11 -0
- package/dist/runtime/identity/index.d.ts.map +1 -0
- package/dist/runtime/identity/index.js +8 -0
- package/dist/runtime/identity/index.js.map +1 -0
- package/dist/runtime/identity/resolve.d.ts +10 -0
- package/dist/runtime/identity/resolve.d.ts.map +1 -0
- package/dist/runtime/identity/resolve.js +16 -0
- package/dist/runtime/identity/resolve.js.map +1 -0
- package/dist/runtime/identity/sources/function.d.ts +10 -0
- package/dist/runtime/identity/sources/function.d.ts.map +1 -0
- package/dist/runtime/identity/sources/function.js +9 -0
- package/dist/runtime/identity/sources/function.js.map +1 -0
- package/dist/runtime/identity/sources/pg.d.ts +42 -0
- package/dist/runtime/identity/sources/pg.d.ts.map +1 -0
- package/dist/runtime/identity/sources/pg.js +121 -0
- package/dist/runtime/identity/sources/pg.js.map +1 -0
- package/dist/runtime/identity/store.d.ts +27 -0
- package/dist/runtime/identity/store.d.ts.map +1 -0
- package/dist/runtime/identity/store.js +139 -0
- package/dist/runtime/identity/store.js.map +1 -0
- package/dist/runtime/identity/sync.d.ts +34 -0
- package/dist/runtime/identity/sync.d.ts.map +1 -0
- package/dist/runtime/identity/sync.js +149 -0
- package/dist/runtime/identity/sync.js.map +1 -0
- package/dist/runtime/metadata/cache.d.ts +0 -2
- package/dist/runtime/metadata/cache.d.ts.map +1 -1
- package/dist/runtime/metadata/cache.js +0 -11
- package/dist/runtime/metadata/cache.js.map +1 -1
- package/dist/runtime/metadata/index.d.ts +1 -1
- package/dist/runtime/metadata/index.d.ts.map +1 -1
- package/dist/runtime/metadata/index.js +1 -1
- package/dist/runtime/metadata/index.js.map +1 -1
- package/dist/runtime/record-meta/index.d.ts +2 -0
- package/dist/runtime/record-meta/index.d.ts.map +1 -0
- package/dist/runtime/record-meta/index.js +2 -0
- package/dist/runtime/record-meta/index.js.map +1 -0
- package/dist/runtime/record-meta/store.d.ts +43 -0
- package/dist/runtime/record-meta/store.d.ts.map +1 -0
- package/dist/runtime/record-meta/store.js +88 -0
- package/dist/runtime/record-meta/store.js.map +1 -0
- package/dist/runtime/sql-analyzer/index.d.ts.map +1 -1
- package/dist/runtime/sql-analyzer/index.js +59 -0
- package/dist/runtime/sql-analyzer/index.js.map +1 -1
- package/dist/runtime/tools/executor.d.ts +11 -11
- package/dist/runtime/tools/executor.d.ts.map +1 -1
- package/dist/runtime/tools/executor.js +6 -6
- package/dist/runtime/tools/executor.js.map +1 -1
- package/dist/runtime/tools/index.d.ts +2 -0
- package/dist/runtime/tools/index.d.ts.map +1 -1
- package/dist/runtime/tools/index.js +1 -0
- package/dist/runtime/tools/index.js.map +1 -1
- package/dist/runtime/tools/policies.d.ts +22 -5
- package/dist/runtime/tools/policies.d.ts.map +1 -1
- package/dist/runtime/tools/policies.js +42 -12
- package/dist/runtime/tools/policies.js.map +1 -1
- package/dist/runtime/tunnel/connector.d.ts +1 -1
- package/dist/runtime/tunnel/forwarder.js +1 -1
- package/dist/runtime/tunnel/framing.d.ts +1 -1
- package/dist/runtime/tunnel/server.d.ts +1 -1
- package/dist/subsystems/approvals/index.d.ts +4 -4
- package/dist/subsystems/approvals/index.d.ts.map +1 -1
- package/dist/subsystems/approvals/index.js +5 -6
- package/dist/subsystems/approvals/index.js.map +1 -1
- package/dist/subsystems/approvals/store.d.ts +1 -3
- package/dist/subsystems/approvals/store.d.ts.map +1 -1
- package/dist/subsystems/approvals/store.js +1 -16
- package/dist/subsystems/approvals/store.js.map +1 -1
- package/dist/subsystems/audit/index.d.ts +1 -1
- package/dist/subsystems/audit/index.d.ts.map +1 -1
- package/dist/subsystems/audit/index.js +2 -3
- package/dist/subsystems/audit/index.js.map +1 -1
- package/dist/subsystems/audit/store.d.ts +0 -2
- package/dist/subsystems/audit/store.d.ts.map +1 -1
- package/dist/subsystems/audit/store.js +0 -21
- package/dist/subsystems/audit/store.js.map +1 -1
- package/dist/subsystems/quota/store.d.ts +9 -0
- package/dist/subsystems/quota/store.d.ts.map +1 -1
- package/dist/subsystems/quota/store.js +0 -8
- package/dist/subsystems/quota/store.js.map +1 -1
- package/dist/subsystems/script/backend/isolated-vm.js +1 -1
- package/dist/subsystems/script/backend/types.d.ts +2 -2
- package/dist/subsystems/script/backend/types.d.ts.map +1 -1
- package/dist/subsystems/script/bridge.d.ts +1 -1
- package/dist/subsystems/script/bridge.d.ts.map +1 -1
- package/dist/subsystems/script/bridge.js +6 -4
- package/dist/subsystems/script/bridge.js.map +1 -1
- package/dist/subsystems/script/dispatcher.d.ts.map +1 -1
- package/dist/subsystems/script/dispatcher.js +3 -1
- package/dist/subsystems/script/dispatcher.js.map +1 -1
- package/dist/subsystems/workflow/index.d.ts +4 -0
- package/dist/subsystems/workflow/index.d.ts.map +1 -0
- package/dist/subsystems/workflow/index.js +3 -0
- package/dist/subsystems/workflow/index.js.map +1 -0
- package/dist/subsystems/workflow/scheduler.d.ts +27 -0
- package/dist/subsystems/workflow/scheduler.d.ts.map +1 -0
- package/dist/subsystems/workflow/scheduler.js +109 -0
- package/dist/subsystems/workflow/scheduler.js.map +1 -0
- package/dist/subsystems/workflow/store.d.ts +10 -0
- package/dist/subsystems/workflow/store.d.ts.map +1 -0
- package/dist/subsystems/workflow/store.js +44 -0
- package/dist/subsystems/workflow/store.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +7 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/runtime/data-access/query.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/runtime/data-access/query.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/rbac.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rbac.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/rbac.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,KAAK,EAA8C,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAwF/F;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,gBAAgB,EAAE,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,SAAS,CAAA;CAAO,GAAG,gBAAgB,CAkOvG"}
|
|
@@ -1,6 +1,42 @@
|
|
|
1
|
-
import { SchemaError,
|
|
2
|
-
import { assertCanCreate, assertCanDelete, assertCanUpdate, buildRowScope,
|
|
1
|
+
import { DETAILS_COLUMNS, SchemaError, primaryFieldsOf, recordKeySql } from '../../core/index.js';
|
|
2
|
+
import { assertCanCreate, assertCanDelete, assertCanUpdate, buildRowScope, buildRowScopeFor, resolvePermissionFor, } from '../../core/index.js';
|
|
3
3
|
import { AUDIT_ACTOR_TYPES, DATA_ACTIONS } from '../../core/audit/index.js';
|
|
4
|
+
import { scopeSuffix } from './builder.js';
|
|
5
|
+
const q = (id) => `"${id}"`;
|
|
6
|
+
function deniedCreate(object, role, locale) {
|
|
7
|
+
throw new SchemaError('rbac.denied.create', { object, role }, locale);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* For a direct details-child create, the referenced `parent_id` must point at a
|
|
11
|
+
* parent row the subject can read (within the parent's row scope). Nested child
|
|
12
|
+
* writes go through the parent's own create (which already enforces this).
|
|
13
|
+
*/
|
|
14
|
+
async function assertChildParentInScope(ctx, def, data) {
|
|
15
|
+
const parentName = def.detailsParent;
|
|
16
|
+
if (parentName === undefined || ctx.subject === undefined)
|
|
17
|
+
return;
|
|
18
|
+
const parent = ctx.registry.get(parentName);
|
|
19
|
+
if (parent === undefined)
|
|
20
|
+
return;
|
|
21
|
+
const role = ctx.subject.roles.join(',');
|
|
22
|
+
const parentId = data[DETAILS_COLUMNS.PARENT_ID];
|
|
23
|
+
const pp = resolvePermissionFor(ctx.registry, parent, ctx.subject.roles);
|
|
24
|
+
if (pp === undefined || pp.read === undefined || parentId === undefined || parentId === null) {
|
|
25
|
+
deniedCreate(def.name, role, ctx.locale);
|
|
26
|
+
}
|
|
27
|
+
const scope = buildRowScope(parent, pp.read, ctx.subject, ctx.subject.roles, ctx.locale);
|
|
28
|
+
const rk = recordKeySql(parent, (field) => q(field));
|
|
29
|
+
let sql = `SELECT 1 FROM ${q(parent.name)} WHERE ${rk} = $1`;
|
|
30
|
+
const params = [String(parentId)];
|
|
31
|
+
if (scope !== undefined) {
|
|
32
|
+
const scoped = scopeSuffix(scope, params.length);
|
|
33
|
+
sql = `${sql} AND (${scoped.sql})`;
|
|
34
|
+
params.push(...scoped.params);
|
|
35
|
+
}
|
|
36
|
+
const res = await ctx.pool.query(`${sql} LIMIT 1`, params);
|
|
37
|
+
if (res.rowCount === 0)
|
|
38
|
+
deniedCreate(def.name, role, ctx.locale);
|
|
39
|
+
}
|
|
4
40
|
function requireDef(ctx, objectName) {
|
|
5
41
|
const def = ctx.registry.get(objectName);
|
|
6
42
|
if (def === undefined)
|
|
@@ -36,7 +72,7 @@ function scopedCtx(ctx, objectName, read) {
|
|
|
36
72
|
if (read === undefined || ctx.subject === undefined)
|
|
37
73
|
return ctx;
|
|
38
74
|
const def = requireDef(ctx, objectName);
|
|
39
|
-
const rowScope =
|
|
75
|
+
const rowScope = buildRowScopeFor(ctx.registry, def, read, ctx.subject, ctx.subject.roles, ctx.locale);
|
|
40
76
|
return { ...ctx, rowScope };
|
|
41
77
|
}
|
|
42
78
|
/**
|
|
@@ -55,7 +91,7 @@ export function withRbac(inner, options = {}) {
|
|
|
55
91
|
if (ctx.subject === undefined)
|
|
56
92
|
return inner.find(objectName, opts, ctx);
|
|
57
93
|
const def = requireDef(ctx, objectName);
|
|
58
|
-
const p =
|
|
94
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
59
95
|
if (p === undefined || p.read === undefined) {
|
|
60
96
|
const err = new SchemaError('rbac.denied.read', { object: objectName, role: ctx.subject.roles.join(',') }, ctx.locale);
|
|
61
97
|
denied(audit, ctx, DATA_ACTIONS.READ, objectName, undefined, err);
|
|
@@ -67,7 +103,7 @@ export function withRbac(inner, options = {}) {
|
|
|
67
103
|
if (ctx.subject === undefined)
|
|
68
104
|
return inner.findOne(objectName, id, ctx);
|
|
69
105
|
const def = requireDef(ctx, objectName);
|
|
70
|
-
const p =
|
|
106
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
71
107
|
if (p === undefined || p.read === undefined) {
|
|
72
108
|
const err = new SchemaError('rbac.denied.read', { object: objectName, role: ctx.subject.roles.join(',') }, ctx.locale);
|
|
73
109
|
denied(audit, ctx, DATA_ACTIONS.READ, objectName, id, err);
|
|
@@ -81,21 +117,24 @@ export function withRbac(inner, options = {}) {
|
|
|
81
117
|
return inner.create(objectName, data, ctx);
|
|
82
118
|
const def = requireDef(ctx, objectName);
|
|
83
119
|
try {
|
|
84
|
-
assertCanCreate(def, ctx.subject.roles, ctx.locale);
|
|
120
|
+
assertCanCreate(def, ctx.subject.roles, ctx.locale, ctx.registry);
|
|
85
121
|
}
|
|
86
122
|
catch (error) {
|
|
87
123
|
denied(audit, ctx, DATA_ACTIONS.CREATE, objectName, undefined, error);
|
|
88
124
|
throw error;
|
|
89
125
|
}
|
|
90
|
-
const p =
|
|
126
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
127
|
+
// a direct details-child create must attach to a parent row in scope
|
|
128
|
+
await assertChildParentInScope(ctx, def, data);
|
|
91
129
|
// `p.createFields === null` means "all writable fields allowed on create"
|
|
92
130
|
// (no fields.create declared); otherwise only the whitelist is accepted
|
|
93
131
|
let payload = data;
|
|
94
132
|
const allowed = p?.createFields ?? null;
|
|
133
|
+
const primaryKeys = new Set(primaryFieldsOf(def).map((f) => f.name));
|
|
95
134
|
if (allowed !== null) {
|
|
96
135
|
const filtered = {};
|
|
97
136
|
for (const [key, value] of Object.entries(data)) {
|
|
98
|
-
if (key
|
|
137
|
+
if (primaryKeys.has(key)) {
|
|
99
138
|
filtered[key] = value;
|
|
100
139
|
continue;
|
|
101
140
|
}
|
|
@@ -116,13 +155,13 @@ export function withRbac(inner, options = {}) {
|
|
|
116
155
|
return inner.update(objectName, id, changes, ctx);
|
|
117
156
|
const def = requireDef(ctx, objectName);
|
|
118
157
|
try {
|
|
119
|
-
assertCanUpdate(def, ctx.subject.roles, ctx.locale);
|
|
158
|
+
assertCanUpdate(def, ctx.subject.roles, ctx.locale, ctx.registry);
|
|
120
159
|
}
|
|
121
160
|
catch (error) {
|
|
122
161
|
denied(audit, ctx, DATA_ACTIONS.UPDATE, objectName, id, error);
|
|
123
162
|
throw error;
|
|
124
163
|
}
|
|
125
|
-
const p =
|
|
164
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
126
165
|
// fail-closed: without a read scope we cannot derive a row scope, so an
|
|
127
166
|
// update would silently target any row — deny instead
|
|
128
167
|
if (p?.read === undefined) {
|
|
@@ -133,10 +172,14 @@ export function withRbac(inner, options = {}) {
|
|
|
133
172
|
// `p.update === null` means "all fields updatable" (open mode / update: true) —
|
|
134
173
|
// keep the null sentinel; `?? []` would collapse it and deny every field
|
|
135
174
|
const allowed = p.update;
|
|
175
|
+
const primaryNames = new Set(primaryFieldsOf(def).map((f) => f.name));
|
|
136
176
|
const filtered = {};
|
|
137
177
|
for (const [key, value] of Object.entries(changes)) {
|
|
138
|
-
if (key
|
|
139
|
-
|
|
178
|
+
if (primaryNames.has(key)) {
|
|
179
|
+
const err = new SchemaError('object.primary.mutable', { object: objectName, field: key }, ctx.locale);
|
|
180
|
+
denied(audit, ctx, DATA_ACTIONS.UPDATE, objectName, id, err);
|
|
181
|
+
throw err;
|
|
182
|
+
}
|
|
140
183
|
if (allowed !== null && !allowed.includes(key)) {
|
|
141
184
|
const err = new SchemaError('rbac.denied.field', { object: objectName, role: ctx.subject.roles.join(','), field: key }, ctx.locale);
|
|
142
185
|
denied(audit, ctx, DATA_ACTIONS.UPDATE, objectName, id, err);
|
|
@@ -144,28 +187,103 @@ export function withRbac(inner, options = {}) {
|
|
|
144
187
|
}
|
|
145
188
|
filtered[key] = value;
|
|
146
189
|
}
|
|
147
|
-
const record = await inner.update(objectName, id, filtered, scopedCtx(ctx, objectName, p?.read));
|
|
190
|
+
const record = await inner.update(objectName, id, filtered, scopedCtx(ctx, objectName, p?.manage ?? p?.read));
|
|
148
191
|
return strip(record, p?.exclude ?? []);
|
|
149
192
|
},
|
|
193
|
+
async transition(objectName, id, action, ctx, payload) {
|
|
194
|
+
if (ctx.subject === undefined)
|
|
195
|
+
return inner.transition(objectName, id, action, ctx, payload);
|
|
196
|
+
const def = requireDef(ctx, objectName);
|
|
197
|
+
try {
|
|
198
|
+
assertCanUpdate(def, ctx.subject.roles, ctx.locale, ctx.registry);
|
|
199
|
+
}
|
|
200
|
+
catch (error) {
|
|
201
|
+
denied(audit, ctx, DATA_ACTIONS.UPDATE, objectName, id, error);
|
|
202
|
+
throw error;
|
|
203
|
+
}
|
|
204
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
205
|
+
if (p?.read === undefined) {
|
|
206
|
+
const err = new SchemaError('rbac.denied.update', { object: objectName, role: ctx.subject.roles.join(',') }, ctx.locale);
|
|
207
|
+
denied(audit, ctx, DATA_ACTIONS.UPDATE, objectName, id, err);
|
|
208
|
+
throw err;
|
|
209
|
+
}
|
|
210
|
+
const record = await inner.transition(objectName, id, action, scopedCtx(ctx, objectName, p.manage ?? p.read), payload);
|
|
211
|
+
return strip(record, p?.exclude ?? []);
|
|
212
|
+
},
|
|
213
|
+
async workflowStatus(objectName, id, ctx) {
|
|
214
|
+
if (ctx.subject === undefined)
|
|
215
|
+
return inner.workflowStatus(objectName, id, ctx);
|
|
216
|
+
const def = requireDef(ctx, objectName);
|
|
217
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
218
|
+
if (p === undefined || p.read === undefined) {
|
|
219
|
+
const err = new SchemaError('rbac.denied.read', { object: objectName, role: ctx.subject.roles.join(',') }, ctx.locale);
|
|
220
|
+
denied(audit, ctx, DATA_ACTIONS.READ, objectName, id, err);
|
|
221
|
+
throw err;
|
|
222
|
+
}
|
|
223
|
+
return inner.workflowStatus(objectName, id, scopedCtx(ctx, objectName, p.read));
|
|
224
|
+
},
|
|
225
|
+
async acquireWorkflowLock(objectName, id, ctx) {
|
|
226
|
+
if (ctx.subject === undefined)
|
|
227
|
+
return inner.acquireWorkflowLock(objectName, id, ctx);
|
|
228
|
+
const def = requireDef(ctx, objectName);
|
|
229
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
230
|
+
if (p === undefined || p.read === undefined) {
|
|
231
|
+
const err = new SchemaError('rbac.denied.read', { object: objectName, role: ctx.subject.roles.join(',') }, ctx.locale);
|
|
232
|
+
denied(audit, ctx, DATA_ACTIONS.READ, objectName, id, err);
|
|
233
|
+
throw err;
|
|
234
|
+
}
|
|
235
|
+
return inner.acquireWorkflowLock(objectName, id, scopedCtx(ctx, objectName, p.read));
|
|
236
|
+
},
|
|
237
|
+
async releaseWorkflowLock(objectName, id, ctx) {
|
|
238
|
+
return inner.releaseWorkflowLock(objectName, id, ctx);
|
|
239
|
+
},
|
|
240
|
+
async workflowHistory(objectName, id, ctx) {
|
|
241
|
+
if (ctx.subject === undefined)
|
|
242
|
+
return inner.workflowHistory(objectName, id, ctx);
|
|
243
|
+
const def = requireDef(ctx, objectName);
|
|
244
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
245
|
+
if (p === undefined || p.read === undefined) {
|
|
246
|
+
const err = new SchemaError('rbac.denied.read', { object: objectName, role: ctx.subject.roles.join(',') }, ctx.locale);
|
|
247
|
+
denied(audit, ctx, DATA_ACTIONS.READ, objectName, id, err);
|
|
248
|
+
throw err;
|
|
249
|
+
}
|
|
250
|
+
return inner.workflowHistory(objectName, id, scopedCtx(ctx, objectName, p.read));
|
|
251
|
+
},
|
|
252
|
+
async workflowTodos(ctx) {
|
|
253
|
+
return inner.workflowTodos(ctx);
|
|
254
|
+
},
|
|
255
|
+
async overrideWorkflow(objectName, id, patch, ctx) {
|
|
256
|
+
if (ctx.subject === undefined)
|
|
257
|
+
return inner.overrideWorkflow(objectName, id, patch, ctx);
|
|
258
|
+
const def = requireDef(ctx, objectName);
|
|
259
|
+
try {
|
|
260
|
+
assertCanUpdate(def, ctx.subject.roles, ctx.locale, ctx.registry);
|
|
261
|
+
}
|
|
262
|
+
catch (error) {
|
|
263
|
+
denied(audit, ctx, DATA_ACTIONS.UPDATE, objectName, id, error);
|
|
264
|
+
throw error;
|
|
265
|
+
}
|
|
266
|
+
return inner.overrideWorkflow(objectName, id, patch, ctx);
|
|
267
|
+
},
|
|
150
268
|
async delete(objectName, id, ctx) {
|
|
151
269
|
if (ctx.subject === undefined)
|
|
152
270
|
return inner.delete(objectName, id, ctx);
|
|
153
271
|
const def = requireDef(ctx, objectName);
|
|
154
272
|
try {
|
|
155
|
-
assertCanDelete(def, ctx.subject.roles, ctx.locale);
|
|
273
|
+
assertCanDelete(def, ctx.subject.roles, ctx.locale, ctx.registry);
|
|
156
274
|
}
|
|
157
275
|
catch (error) {
|
|
158
276
|
denied(audit, ctx, DATA_ACTIONS.DELETE, objectName, id, error);
|
|
159
277
|
throw error;
|
|
160
278
|
}
|
|
161
|
-
const p =
|
|
279
|
+
const p = resolvePermissionFor(ctx.registry, def, ctx.subject.roles);
|
|
162
280
|
// fail-closed: same as update — no read scope means no row scope
|
|
163
281
|
if (p?.read === undefined) {
|
|
164
282
|
const err = new SchemaError('rbac.denied.delete', { object: objectName, role: ctx.subject.roles.join(',') }, ctx.locale);
|
|
165
283
|
denied(audit, ctx, DATA_ACTIONS.DELETE, objectName, id, err);
|
|
166
284
|
throw err;
|
|
167
285
|
}
|
|
168
|
-
return inner.delete(objectName, id, scopedCtx(ctx, objectName, p.read));
|
|
286
|
+
return inner.delete(objectName, id, scopedCtx(ctx, objectName, p.manage ?? p.read));
|
|
169
287
|
},
|
|
170
288
|
};
|
|
171
289
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac.js","sourceRoot":"","sources":["../../../src/runtime/data-access/rbac.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rbac.js","sourceRoot":"","sources":["../../../src/runtime/data-access/rbac.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import type { SeqNoField } from '../../core/index.js';
|
|
2
2
|
import type { Queryable } from './types.js';
|
|
3
|
-
/** create the seq counter table if it does not exist (once per write transaction) */
|
|
4
|
-
export declare function ensureSeqTable(db: Queryable): Promise<void>;
|
|
5
3
|
/** counter bucket: format literal prefix; for cycle=year the year is baked in */
|
|
6
4
|
export declare function seqBucket(field: SeqNoField, format: string, now: Date): string;
|
|
7
5
|
/** render a sequence value through the format template ({seq}, {seq:N}, {year}/{month}/{day}) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seqno.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/seqno.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C,
|
|
1
|
+
{"version":3,"file":"seqno.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/seqno.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C,iFAAiF;AACjF,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAI9E;AAED,iGAAiG;AACjG,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAS9E;AAED,oFAAoF;AACpF,wBAAsB,aAAa,CACjC,EAAE,EAAE,SAAS,EACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,IAAI,GACR,OAAO,CAAC,MAAM,CAAC,CAUjB"}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
const SEQ_TABLE = 'weavekit_seq';
|
|
2
|
-
/** create the seq counter table if it does not exist (once per write transaction) */
|
|
3
|
-
export async function ensureSeqTable(db) {
|
|
4
|
-
await db.query(`CREATE TABLE IF NOT EXISTS ${SEQ_TABLE} (
|
|
5
|
-
object_name text NOT NULL,
|
|
6
|
-
bucket text NOT NULL,
|
|
7
|
-
last_value bigint NOT NULL,
|
|
8
|
-
PRIMARY KEY (object_name, bucket)
|
|
9
|
-
)`);
|
|
10
|
-
}
|
|
11
2
|
/** counter bucket: format literal prefix; for cycle=year the year is baked in */
|
|
12
3
|
export function seqBucket(field, format, now) {
|
|
13
4
|
const idx = format.indexOf('{seq');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seqno.js","sourceRoot":"","sources":["../../../src/runtime/data-access/seqno.ts"],"names":[],"mappings":"AAGA,MAAM,SAAS,GAAG,cAAc,CAAC;AAEjC,
|
|
1
|
+
{"version":3,"file":"seqno.js","sourceRoot":"","sources":["../../../src/runtime/data-access/seqno.ts"],"names":[],"mappings":"AAGA,MAAM,SAAS,GAAG,cAAc,CAAC;AAEjC,iFAAiF;AACjF,MAAM,UAAU,SAAS,CAAC,KAAiB,EAAE,MAAc,EAAE,GAAS;IACpE,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAClG,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,SAAiB,EAAE,GAAS;IACpE,OAAO,MAAM;SACV,OAAO,CAAC,qBAAqB,EAAE,CAAC,EAAE,EAAE,GAAuB,EAAE,EAAE;QAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5B,OAAO,GAAG,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxF,CAAC,CAAC;SACD,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;SAC/C,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;SACjD,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AAChD,CAAC;AAED,oFAAoF;AACpF,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,EAAa,EACb,MAAc,EACd,KAAiB,EACjB,GAAS;IAET,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC;IACvC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7C,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,KAAK,CACxB,eAAe,SAAS;oEACwC,SAAS;0BACnD,EACtB,CAAC,MAAM,EAAE,MAAM,CAAC,CACjB,CAAC;IACF,OAAO,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { Pool } from 'pg';
|
|
2
|
+
import type { Locale } from '../../core/index.js';
|
|
3
|
+
import type { SqlAnalyzer } from '../sql-analyzer/index.js';
|
|
2
4
|
export interface RestrictedSqlSubject {
|
|
3
5
|
id: string;
|
|
4
6
|
roles: string[];
|
|
5
|
-
|
|
7
|
+
departmentId?: string;
|
|
6
8
|
}
|
|
7
9
|
export interface RestrictedSqlRls {
|
|
8
10
|
/** non-owner role to switch to via `SET LOCAL ROLE` so PostgreSQL RLS applies */
|
|
@@ -22,6 +24,10 @@ export interface RestrictedSqlOptions {
|
|
|
22
24
|
* (0 rows) — fail-closed.
|
|
23
25
|
*/
|
|
24
26
|
rls?: RestrictedSqlRls;
|
|
27
|
+
/** analyzer used for the mandatory SELECT-only gate; defaults to a shared instance */
|
|
28
|
+
analyzer?: SqlAnalyzer;
|
|
29
|
+
/** message locale for gate failures */
|
|
30
|
+
locale?: Locale;
|
|
25
31
|
}
|
|
26
32
|
export interface RestrictedSqlResult {
|
|
27
33
|
rows: unknown[];
|
|
@@ -30,8 +36,12 @@ export interface RestrictedSqlResult {
|
|
|
30
36
|
* Controlled SQL execution for sandbox scripts (`this.db.query`).
|
|
31
37
|
*
|
|
32
38
|
* Gates:
|
|
33
|
-
* - SELECT-only —
|
|
34
|
-
*
|
|
39
|
+
* - SELECT-only — enforced by the AST analyzer (`analyzeSelect`), which is the
|
|
40
|
+
* single source: exactly one statement, a `SelectStmt` root, no nested DML,
|
|
41
|
+
* no denied functions, bounded AST. A raw regex is not used (it is both
|
|
42
|
+
* bypassable and over-restrictive). The script bridge runs `analyzeSelect`
|
|
43
|
+
* too, but for a different purpose (its RBAC table/column gate); the executor
|
|
44
|
+
* re-runs it so a direct caller cannot bypass the SELECT-only boundary.
|
|
35
45
|
* - row cap — the query is wrapped in a subquery and the outer LIMIT is
|
|
36
46
|
* clamped to `maxRows`, so a runaway result can never flood the response
|
|
37
47
|
* - server-side timeout — runs on a dedicated pooled client with
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-executor.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/sql-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"sql-executor.d.ts","sourceRoot":"","sources":["../../../src/runtime/data-access/sql-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAE/B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,OAAO,EAAE,oBAAoB,CAAC;CAC/B;AAED,MAAM,WAAW,oBAAoB;IACnC,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,sFAAsF;IACtF,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,EAAE,CAAC;CACjB;AAeD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAkD9B"}
|
|
@@ -1,16 +1,25 @@
|
|
|
1
|
-
import { SchemaError } from '../../core/index.js';
|
|
1
|
+
import { isSafeRlsRole, sqlIdent, SchemaError } from '../../core/index.js';
|
|
2
|
+
import { createSqlAnalyzer } from '../sql-analyzer/index.js';
|
|
2
3
|
const MAX_ROWS_DEFAULT = 1000;
|
|
3
4
|
const TIMEOUT_DEFAULT = 2000;
|
|
4
|
-
const RLS_ROLE_RE = /^[a-z_][a-z0-9_]*$/;
|
|
5
5
|
function gucLiteral(value) {
|
|
6
6
|
return `'${value.replace(/'/g, "''")}'`;
|
|
7
7
|
}
|
|
8
|
+
/** shared analyzer for callers that don't inject one (WASM is initialized once) */
|
|
9
|
+
let sharedAnalyzer;
|
|
10
|
+
function defaultAnalyzer() {
|
|
11
|
+
return (sharedAnalyzer ??= createSqlAnalyzer());
|
|
12
|
+
}
|
|
8
13
|
/**
|
|
9
14
|
* Controlled SQL execution for sandbox scripts (`this.db.query`).
|
|
10
15
|
*
|
|
11
16
|
* Gates:
|
|
12
|
-
* - SELECT-only —
|
|
13
|
-
*
|
|
17
|
+
* - SELECT-only — enforced by the AST analyzer (`analyzeSelect`), which is the
|
|
18
|
+
* single source: exactly one statement, a `SelectStmt` root, no nested DML,
|
|
19
|
+
* no denied functions, bounded AST. A raw regex is not used (it is both
|
|
20
|
+
* bypassable and over-restrictive). The script bridge runs `analyzeSelect`
|
|
21
|
+
* too, but for a different purpose (its RBAC table/column gate); the executor
|
|
22
|
+
* re-runs it so a direct caller cannot bypass the SELECT-only boundary.
|
|
14
23
|
* - row cap — the query is wrapped in a subquery and the outer LIMIT is
|
|
15
24
|
* clamped to `maxRows`, so a runaway result can never flood the response
|
|
16
25
|
* - server-side timeout — runs on a dedicated pooled client with
|
|
@@ -29,13 +38,10 @@ export async function executeRestrictedSql(pool, sql, params, options = {}) {
|
|
|
29
38
|
let trimmed = sql.trim();
|
|
30
39
|
if (trimmed.endsWith(';'))
|
|
31
40
|
trimmed = trimmed.slice(0, -1);
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
if (
|
|
36
|
-
throw new SchemaError('script.query.invalid', { detail: 'multiple statements are not allowed' });
|
|
37
|
-
}
|
|
38
|
-
if (options.rls !== undefined && !RLS_ROLE_RE.test(options.rls.role)) {
|
|
41
|
+
// mandatory AST gate (fail-closed): the analyzer — not a regex — is the single
|
|
42
|
+
// SELECT-only check, so a direct caller cannot run a non-SELECT or multi-statement.
|
|
43
|
+
await (options.analyzer ?? defaultAnalyzer()).analyzeSelect(trimmed, options.locale);
|
|
44
|
+
if (options.rls !== undefined && !isSafeRlsRole(options.rls.role)) {
|
|
39
45
|
throw new SchemaError('script.query.invalid', { detail: `invalid RLS role "${options.rls.role}"` });
|
|
40
46
|
}
|
|
41
47
|
const client = await pool.connect();
|
|
@@ -46,11 +52,11 @@ export async function executeRestrictedSql(pool, sql, params, options = {}) {
|
|
|
46
52
|
await client.query(`SET LOCAL statement_timeout = ${Math.max(1, Math.floor(timeoutMs))}`);
|
|
47
53
|
if (options.rls !== undefined) {
|
|
48
54
|
const { role, subject } = options.rls;
|
|
49
|
-
await client.query(`SET LOCAL ROLE ${role}`);
|
|
55
|
+
await client.query(`SET LOCAL ROLE ${sqlIdent(role)}`);
|
|
50
56
|
await client.query(`SET LOCAL weavekit.actor_id = ${gucLiteral(subject.id)}`);
|
|
51
57
|
await client.query(`SET LOCAL weavekit.roles = ${gucLiteral(subject.roles.join(','))}`);
|
|
52
|
-
if (subject.
|
|
53
|
-
await client.query(`SET LOCAL weavekit.
|
|
58
|
+
if (subject.departmentId !== undefined) {
|
|
59
|
+
await client.query(`SET LOCAL weavekit.department_id = ${gucLiteral(subject.departmentId)}`);
|
|
54
60
|
}
|
|
55
61
|
}
|
|
56
62
|
const result = await client.query(`SELECT * FROM (${trimmed}) AS __restricted__ LIMIT $${params.length + 1}`, [...params, maxRows]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-executor.js","sourceRoot":"","sources":["../../../src/runtime/data-access/sql-executor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"sql-executor.js","sourceRoot":"","sources":["../../../src/runtime/data-access/sql-executor.ts"],"names":[],"mappings":"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"}
|