@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":"values.d.ts","sourceRoot":"","sources":["../../../src/core/tools/values.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAE9E,yCAAyC;AACzC,eAAO,MAAM,mBAAmB;;;CAGtB,CAAC;AAEX,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,oFAAoF;AACpF,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../../src/core/tools/values.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAE9E,yCAAyC;AACzC,eAAO,MAAM,mBAAmB;;;CAGtB,CAAC;AAEX,wFAAwF;AACxF,eAAO,MAAM,cAAc;;CAEjB,CAAC;AACX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAE9E,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,SAAS,CAAC;AAE9C,oFAAoF;AACpF,eAAO,MAAM,iBAAiB;;;;CAIpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,OAAO,iBAAiB,CAAC,MAAM,OAAO,iBAAiB,CAAC,CAAC;AAQtF,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD"}
|
|
@@ -21,6 +21,10 @@ export const INTROSPECTION_TOOLS = {
|
|
|
21
21
|
LIST_OBJECTS: 'list_objects',
|
|
22
22
|
DESCRIBE_OBJECT: 'describe_object',
|
|
23
23
|
};
|
|
24
|
+
/** fixed workflow tool names (exposed to subjects that can update a workflow object) */
|
|
25
|
+
export const WORKFLOW_TOOLS = {
|
|
26
|
+
TRANSITION: 'workflow_transition',
|
|
27
|
+
};
|
|
24
28
|
/** custom tool `name` format (snake_case, lowercase start) */
|
|
25
29
|
export const TOOL_NAME_PATTERN = '^[a-z][a-z0-9_]*$';
|
|
26
30
|
/** audit namespace prefix custom tools must not use (action = `<prefix>.<detail>`) */
|
|
@@ -31,7 +35,11 @@ export const APPROVAL_STATUSES = {
|
|
|
31
35
|
APPROVED: 'approved',
|
|
32
36
|
REJECTED: 'rejected',
|
|
33
37
|
};
|
|
34
|
-
const reservedNames = [
|
|
38
|
+
const reservedNames = [
|
|
39
|
+
...Object.values(REGISTRY_TOOLS),
|
|
40
|
+
...Object.values(INTROSPECTION_TOOLS),
|
|
41
|
+
...Object.values(WORKFLOW_TOOLS),
|
|
42
|
+
];
|
|
35
43
|
/** true when a custom tool name collides with a built-in tool or the audit namespace */
|
|
36
44
|
export function isReservedToolName(name) {
|
|
37
45
|
return reservedNames.includes(name) || name.startsWith(RESERVED_TOOL_NAMESPACE);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/tools/values.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,gBAAgB;IACxB,GAAG,EAAE,YAAY;IACjB,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,eAAe;CACf,CAAC;AAGX,yCAAyC;AACzC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,YAAY,EAAE,cAAc;IAC5B,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAEX,8DAA8D;AAC9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,sFAAsF;AACtF,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C,oFAAoF;AACpF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,MAAM,aAAa,GAAsB,
|
|
1
|
+
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../../src/core/tools/values.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,gBAAgB;IACxB,GAAG,EAAE,YAAY;IACjB,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,eAAe;CACf,CAAC;AAGX,yCAAyC;AACzC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,YAAY,EAAE,cAAc;IAC5B,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAEX,wFAAwF;AACxF,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,UAAU,EAAE,qBAAqB;CACzB,CAAC;AAGX,8DAA8D;AAC9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,sFAAsF;AACtF,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C,oFAAoF;AACpF,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACZ,CAAC;AAGX,MAAM,aAAa,GAAsB;IACvC,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC;IAChC,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC;IACrC,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC;CACjC,CAAC;AAEF,wFAAwF;AACxF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAClF,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ISO 4217 currency helpers for the `currency` field type. Browser-safe: uses
|
|
3
|
+
* only the global `Intl` (no imports), so it can be consumed from any layer.
|
|
4
|
+
*/
|
|
5
|
+
/** true when `code` is a currency the runtime recognizes (ISO 4217) */
|
|
6
|
+
export declare function isCurrencyCode(code: string): boolean;
|
|
7
|
+
/** minor-unit fraction digits for a currency (USD=2, JPY=0); falls back to 2 */
|
|
8
|
+
export declare function currencyMinorUnits(code: string): number;
|
|
9
|
+
//# sourceMappingURL=currency.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"currency.d.ts","sourceRoot":"","sources":["../../../src/core/types/currency.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,uEAAuE;AACvE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQpD;AAED,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQvD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ISO 4217 currency helpers for the `currency` field type. Browser-safe: uses
|
|
3
|
+
* only the global `Intl` (no imports), so it can be consumed from any layer.
|
|
4
|
+
*/
|
|
5
|
+
/** true when `code` is a currency the runtime recognizes (ISO 4217) */
|
|
6
|
+
export function isCurrencyCode(code) {
|
|
7
|
+
if (!/^[A-Z]{3}$/.test(code))
|
|
8
|
+
return false;
|
|
9
|
+
try {
|
|
10
|
+
new Intl.NumberFormat('en', { style: 'currency', currency: code });
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/** minor-unit fraction digits for a currency (USD=2, JPY=0); falls back to 2 */
|
|
18
|
+
export function currencyMinorUnits(code) {
|
|
19
|
+
try {
|
|
20
|
+
const digits = new Intl.NumberFormat('en', { style: 'currency', currency: code }).resolvedOptions()
|
|
21
|
+
.maximumFractionDigits;
|
|
22
|
+
return typeof digits === 'number' ? digits : 2;
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return 2;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=currency.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"currency.js","sourceRoot":"","sources":["../../../src/core/types/currency.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,uEAAuE;AACvE,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,eAAe,EAAE;aAChG,qBAAqB,CAAC;QACzB,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
|
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
import type { FieldType } from './values.js';
|
|
2
|
+
import type { RegisteredField } from './fields.js';
|
|
2
3
|
/**
|
|
3
4
|
* Field-type registration contract (open registration).
|
|
4
5
|
*
|
|
5
6
|
* Built-in field types are expressed as registrations too; user/plugin types
|
|
6
7
|
* declare a `base` primitive and inherit all behaviour (storage / TS / MCP /
|
|
7
|
-
* OpenAPI / describe) from it. The engine resolves every
|
|
8
|
-
* immutable {@link FieldTypeRegistry} built at load time
|
|
9
|
-
* no mutable global).
|
|
8
|
+
* OpenAPI / describe / write validation) from it. The engine resolves every
|
|
9
|
+
* field through an immutable {@link FieldTypeRegistry} built at load time
|
|
10
|
+
* (explicit injection — no mutable global).
|
|
11
|
+
*
|
|
12
|
+
* Beyond the base, a registration may declare:
|
|
13
|
+
* - `attrs` — typed extra attributes a field of this type accepts (validated);
|
|
14
|
+
* - `storage.pgType` — a pure function mapping the field to its PostgreSQL
|
|
15
|
+
* column type (its output is validated against a safe grammar);
|
|
16
|
+
* - `validate` — a pure, synchronous write-time check (returns a detail string
|
|
17
|
+
* to reject, or `undefined` to allow).
|
|
10
18
|
*/
|
|
11
19
|
/** single source of truth for registered-type name shape (namespace segment required) */
|
|
12
20
|
export declare const FIELD_TYPE_NAME_PATTERN = "^[a-z][a-z0-9]*(_[a-z0-9]+)+$";
|
|
@@ -14,6 +22,45 @@ export declare const FIELD_TYPE_NAME_PATTERN = "^[a-z][a-z0-9]*(_[a-z0-9]+)+$";
|
|
|
14
22
|
export interface FieldTypeUiHints {
|
|
15
23
|
visual?: string;
|
|
16
24
|
}
|
|
25
|
+
/** value kinds a declared extra attribute (`AttrSpec.type`) may take */
|
|
26
|
+
export declare const ATTR_KINDS: {
|
|
27
|
+
readonly STRING: "string";
|
|
28
|
+
readonly NUMBER: "number";
|
|
29
|
+
readonly INTEGER: "integer";
|
|
30
|
+
readonly BOOLEAN: "boolean";
|
|
31
|
+
readonly JSON: "json";
|
|
32
|
+
readonly ENUM: "enum";
|
|
33
|
+
};
|
|
34
|
+
export type AttrKind = typeof ATTR_KINDS[keyof typeof ATTR_KINDS];
|
|
35
|
+
/** typed spec for one extra attribute a registered type accepts */
|
|
36
|
+
export interface AttrSpec {
|
|
37
|
+
/** the value kind of the attribute */
|
|
38
|
+
type: AttrKind;
|
|
39
|
+
/** allowed values (enum only) */
|
|
40
|
+
values?: readonly string[];
|
|
41
|
+
/** the attribute must be declared on every field of this type */
|
|
42
|
+
required?: boolean;
|
|
43
|
+
/** default value (validated against the spec; not injected into the field) */
|
|
44
|
+
default?: unknown;
|
|
45
|
+
/** human description (docs / describe) */
|
|
46
|
+
description?: string;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Custom storage mapping for a registered type. `pgType` must be pure and
|
|
50
|
+
* synchronous; its return value must be a PostgreSQL column type from the
|
|
51
|
+
* engine's safe grammar (validated before it reaches DDL). Only valid on
|
|
52
|
+
* non-relation value bases.
|
|
53
|
+
*/
|
|
54
|
+
export interface FieldTypeStorage {
|
|
55
|
+
pgType: (field: RegisteredField) => string;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Write-time check for a registered type: return a human-readable detail to
|
|
59
|
+
* reject the value, or `undefined` to allow it. Must be pure and synchronous
|
|
60
|
+
* (no I/O); DB-backed or cross-record rules belong to server hooks or a
|
|
61
|
+
* data-driven `enum` (`options.from`) instead.
|
|
62
|
+
*/
|
|
63
|
+
export type FieldTypeValidator = (field: RegisteredField, value: unknown) => string | undefined;
|
|
17
64
|
/** one field-type registration (built-in or user-defined) */
|
|
18
65
|
export interface FieldTypeRegistration {
|
|
19
66
|
/** the type name as it appears in `schema.json` (namespace already applied) */
|
|
@@ -22,16 +69,23 @@ export interface FieldTypeRegistration {
|
|
|
22
69
|
namespace?: string;
|
|
23
70
|
/** the primitive this type inherits from; `undefined` = engine primitive/structural */
|
|
24
71
|
base?: FieldType;
|
|
25
|
-
/** scalar (
|
|
72
|
+
/** a scalar value type (usable as a value; see `keyEligible` for PK use). Defaults from `base`. */
|
|
26
73
|
scalar?: boolean;
|
|
74
|
+
/** eligible as a primary key. Defaults from `base` (a scalar-only override for
|
|
75
|
+
* value scalars PG cannot key on, e.g. json/jsonb/real/double/interval). */
|
|
76
|
+
keyEligible?: boolean;
|
|
27
77
|
/** relation-like (carries `target`). Defaults from `base`. */
|
|
28
78
|
relationLike?: boolean;
|
|
29
79
|
/** frontend hints (consumed by `@weave-kit/ui`) */
|
|
30
80
|
ui?: FieldTypeUiHints;
|
|
31
81
|
/** OpenAPI `format` keyword for string-based types (e.g. `email`, `uri`) */
|
|
32
82
|
openApiFormat?: string;
|
|
33
|
-
/** extra attributes accepted on a field of this type (beyond the base attributes) */
|
|
34
|
-
attrs?:
|
|
83
|
+
/** typed extra attributes accepted on a field of this type (beyond the base attributes) */
|
|
84
|
+
attrs?: Record<string, AttrSpec>;
|
|
85
|
+
/** custom PostgreSQL column mapping (non-relation value bases only) */
|
|
86
|
+
storage?: FieldTypeStorage;
|
|
87
|
+
/** pure, synchronous write-time value check (non-relation value bases only) */
|
|
88
|
+
validate?: FieldTypeValidator;
|
|
35
89
|
/**
|
|
36
90
|
* reverse hint for `weave introspect`: a live PostgreSQL column type that maps
|
|
37
91
|
* back to this registered type (e.g. `{ pgType: 'NUMERIC(12,2)' }`). Only valid
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-type.d.ts","sourceRoot":"","sources":["../../../src/core/types/field-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"field-type.d.ts","sourceRoot":"","sources":["../../../src/core/types/field-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD;;;;;;;;;;;;;;;GAeG;AAEH,yFAAyF;AACzF,eAAO,MAAM,uBAAuB,kCAAkC,CAAC;AAEvE,8EAA8E;AAC9E,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wEAAwE;AACxE,eAAO,MAAM,UAAU;;;;;;;CAOb,CAAC;AACX,MAAM,MAAM,QAAQ,GAAG,OAAO,UAAU,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAElE,mEAAmE;AACnE,MAAM,WAAW,QAAQ;IACvB,sCAAsC;IACtC,IAAI,EAAE,QAAQ,CAAC;IACf,iCAAiC;IACjC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,iEAAiE;IACjE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,MAAM,CAAC;CAC5C;AAED;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;AAEhG,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACpC,+EAA+E;IAC/E,IAAI,EAAE,MAAM,CAAC;IACb,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,mGAAmG;IACnG,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;iFAC6E;IAC7E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,8DAA8D;IAC9D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mDAAmD;IACnD,EAAE,CAAC,EAAE,gBAAgB,CAAC;IACtB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2FAA2F;IAC3F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC,uEAAuE;IACvE,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B;;;;;OAKG;IACH,OAAO,CAAC,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAClE;AAED,+CAA+C;AAC/C,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC"}
|
|
@@ -3,10 +3,26 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Built-in field types are expressed as registrations too; user/plugin types
|
|
5
5
|
* declare a `base` primitive and inherit all behaviour (storage / TS / MCP /
|
|
6
|
-
* OpenAPI / describe) from it. The engine resolves every
|
|
7
|
-
* immutable {@link FieldTypeRegistry} built at load time
|
|
8
|
-
* no mutable global).
|
|
6
|
+
* OpenAPI / describe / write validation) from it. The engine resolves every
|
|
7
|
+
* field through an immutable {@link FieldTypeRegistry} built at load time
|
|
8
|
+
* (explicit injection — no mutable global).
|
|
9
|
+
*
|
|
10
|
+
* Beyond the base, a registration may declare:
|
|
11
|
+
* - `attrs` — typed extra attributes a field of this type accepts (validated);
|
|
12
|
+
* - `storage.pgType` — a pure function mapping the field to its PostgreSQL
|
|
13
|
+
* column type (its output is validated against a safe grammar);
|
|
14
|
+
* - `validate` — a pure, synchronous write-time check (returns a detail string
|
|
15
|
+
* to reject, or `undefined` to allow).
|
|
9
16
|
*/
|
|
10
17
|
/** single source of truth for registered-type name shape (namespace segment required) */
|
|
11
18
|
export const FIELD_TYPE_NAME_PATTERN = '^[a-z][a-z0-9]*(_[a-z0-9]+)+$';
|
|
19
|
+
/** value kinds a declared extra attribute (`AttrSpec.type`) may take */
|
|
20
|
+
export const ATTR_KINDS = {
|
|
21
|
+
STRING: 'string',
|
|
22
|
+
NUMBER: 'number',
|
|
23
|
+
INTEGER: 'integer',
|
|
24
|
+
BOOLEAN: 'boolean',
|
|
25
|
+
JSON: 'json',
|
|
26
|
+
ENUM: 'enum',
|
|
27
|
+
};
|
|
12
28
|
//# sourceMappingURL=field-type.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-type.js","sourceRoot":"","sources":["../../../src/core/types/field-type.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"field-type.js","sourceRoot":"","sources":["../../../src/core/types/field-type.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;GAeG;AAEH,yFAAyF;AACzF,MAAM,CAAC,MAAM,uBAAuB,GAAG,+BAA+B,CAAC;AAOvE,wEAAwE;AACxE,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { BuiltinFieldType, FIELD_TYPES, OnDeleteAction, SequenceCycle } from './values.js';
|
|
2
|
-
export type {
|
|
1
|
+
import type { BuiltinFieldType, FIELD_TYPES, OnDeleteAction, ScopeSource, SequenceCycle } from './values.js';
|
|
2
|
+
export type { BuiltinFieldType, FieldType, OnDeleteAction, SequenceCycle } from './values.js';
|
|
3
3
|
export interface FieldBase {
|
|
4
4
|
name: string;
|
|
5
5
|
/**
|
|
@@ -19,10 +19,6 @@ export interface FieldBase {
|
|
|
19
19
|
primary?: boolean;
|
|
20
20
|
/** user-declared system-reserved field marker (engine protects values/schema ops) */
|
|
21
21
|
system?: boolean;
|
|
22
|
-
/** row-level ownership marker (RBAC read=own); string fields only, at most one per object */
|
|
23
|
-
ownership?: boolean;
|
|
24
|
-
/** row-level team marker (RBAC read=team); string fields only, at most one per object */
|
|
25
|
-
team?: boolean;
|
|
26
22
|
/**
|
|
27
23
|
* secret field: masked (omitted) from every REST read response — written
|
|
28
24
|
* normally (create/update), never read back over REST. The data-access layer
|
|
@@ -41,6 +37,14 @@ export interface StringField extends FieldBase {
|
|
|
41
37
|
default?: string;
|
|
42
38
|
/** computed field expression */
|
|
43
39
|
formula?: string;
|
|
40
|
+
/** row-level ownership marker (RBAC read/manage=own); at most one per object */
|
|
41
|
+
ownership?: boolean;
|
|
42
|
+
/** where the ownership column's values come from (`internal` default | `external`) */
|
|
43
|
+
ownershipSource?: ScopeSource;
|
|
44
|
+
/** row-level department marker (RBAC read/manage=department); at most one per object */
|
|
45
|
+
department?: boolean;
|
|
46
|
+
/** where the department column's values come from (`internal` default | `external`) */
|
|
47
|
+
departmentSource?: ScopeSource;
|
|
44
48
|
}
|
|
45
49
|
export interface TextField extends FieldBase {
|
|
46
50
|
type: typeof FIELD_TYPES.TEXT;
|
|
@@ -64,6 +68,54 @@ export interface NumberField extends FieldBase {
|
|
|
64
68
|
min?: number;
|
|
65
69
|
max?: number;
|
|
66
70
|
precision?: number;
|
|
71
|
+
/** numeric scale (`NUMERIC(p,s)`); only meaningful with `precision` */
|
|
72
|
+
scale?: number;
|
|
73
|
+
required?: boolean;
|
|
74
|
+
unique?: boolean;
|
|
75
|
+
default?: number;
|
|
76
|
+
formula?: string;
|
|
77
|
+
}
|
|
78
|
+
/** fixed-length character (`CHAR(n)` / `BPCHAR(n)`) */
|
|
79
|
+
export interface CharField extends FieldBase {
|
|
80
|
+
type: typeof FIELD_TYPES.CHAR;
|
|
81
|
+
length?: number;
|
|
82
|
+
required?: boolean;
|
|
83
|
+
unique?: boolean;
|
|
84
|
+
default?: string;
|
|
85
|
+
formula?: string;
|
|
86
|
+
}
|
|
87
|
+
export interface SmallIntField extends FieldBase {
|
|
88
|
+
type: typeof FIELD_TYPES.SMALLINT;
|
|
89
|
+
min?: number;
|
|
90
|
+
max?: number;
|
|
91
|
+
required?: boolean;
|
|
92
|
+
unique?: boolean;
|
|
93
|
+
default?: number;
|
|
94
|
+
formula?: string;
|
|
95
|
+
}
|
|
96
|
+
/** 64-bit integer; the generated TS type is `string` (precision-safe) */
|
|
97
|
+
export interface BigIntField extends FieldBase {
|
|
98
|
+
type: typeof FIELD_TYPES.BIGINT;
|
|
99
|
+
min?: number;
|
|
100
|
+
max?: number;
|
|
101
|
+
required?: boolean;
|
|
102
|
+
unique?: boolean;
|
|
103
|
+
default?: string;
|
|
104
|
+
formula?: string;
|
|
105
|
+
}
|
|
106
|
+
export interface RealField extends FieldBase {
|
|
107
|
+
type: typeof FIELD_TYPES.REAL;
|
|
108
|
+
min?: number;
|
|
109
|
+
max?: number;
|
|
110
|
+
required?: boolean;
|
|
111
|
+
unique?: boolean;
|
|
112
|
+
default?: number;
|
|
113
|
+
formula?: string;
|
|
114
|
+
}
|
|
115
|
+
export interface DoubleField extends FieldBase {
|
|
116
|
+
type: typeof FIELD_TYPES.DOUBLE;
|
|
117
|
+
min?: number;
|
|
118
|
+
max?: number;
|
|
67
119
|
required?: boolean;
|
|
68
120
|
unique?: boolean;
|
|
69
121
|
default?: number;
|
|
@@ -77,6 +129,10 @@ export interface CurrencyField extends FieldBase {
|
|
|
77
129
|
unique?: boolean;
|
|
78
130
|
default?: number;
|
|
79
131
|
formula?: string;
|
|
132
|
+
/** ISO 4217 code (optional; drives the column scale; absent → 2 minor units) */
|
|
133
|
+
currency?: string;
|
|
134
|
+
/** NUMERIC precision (`NUMERIC(p,scale)`); defaults to 12. Must exceed the scale. */
|
|
135
|
+
precision?: number;
|
|
80
136
|
}
|
|
81
137
|
export interface BooleanField extends FieldBase {
|
|
82
138
|
type: typeof FIELD_TYPES.BOOLEAN;
|
|
@@ -85,14 +141,36 @@ export interface BooleanField extends FieldBase {
|
|
|
85
141
|
default?: boolean;
|
|
86
142
|
formula?: string;
|
|
87
143
|
}
|
|
88
|
-
|
|
89
|
-
|
|
144
|
+
/** shared shape for the date/time family (a scalar column with an optional textual default) */
|
|
145
|
+
interface TemporalFieldBase extends FieldBase {
|
|
90
146
|
required?: boolean;
|
|
91
147
|
unique?: boolean;
|
|
92
148
|
default?: string;
|
|
93
149
|
}
|
|
94
|
-
export interface DateField extends
|
|
150
|
+
export interface DateField extends TemporalFieldBase {
|
|
95
151
|
type: typeof FIELD_TYPES.DATE;
|
|
152
|
+
}
|
|
153
|
+
export interface TimeField extends TemporalFieldBase {
|
|
154
|
+
type: typeof FIELD_TYPES.TIME;
|
|
155
|
+
}
|
|
156
|
+
export interface TimeTzField extends TemporalFieldBase {
|
|
157
|
+
type: typeof FIELD_TYPES.TIMETZ;
|
|
158
|
+
}
|
|
159
|
+
export interface TimestampField extends TemporalFieldBase {
|
|
160
|
+
type: typeof FIELD_TYPES.TIMESTAMP;
|
|
161
|
+
}
|
|
162
|
+
export interface TimestamptzField extends TemporalFieldBase {
|
|
163
|
+
type: typeof FIELD_TYPES.TIMESTAMPTZ;
|
|
164
|
+
}
|
|
165
|
+
/** interval is a value scalar but not PK-eligible (no textual default in DDL) */
|
|
166
|
+
export interface IntervalField extends FieldBase {
|
|
167
|
+
type: typeof FIELD_TYPES.INTERVAL;
|
|
168
|
+
required?: boolean;
|
|
169
|
+
unique?: boolean;
|
|
170
|
+
}
|
|
171
|
+
/** PostgreSQL uuid scalar (application-generated; maps to a UUID column) */
|
|
172
|
+
export interface UuidField extends FieldBase {
|
|
173
|
+
type: typeof FIELD_TYPES.UUID;
|
|
96
174
|
required?: boolean;
|
|
97
175
|
unique?: boolean;
|
|
98
176
|
default?: string;
|
|
@@ -102,10 +180,33 @@ export interface JsonField extends FieldBase {
|
|
|
102
180
|
required?: boolean;
|
|
103
181
|
default?: unknown;
|
|
104
182
|
}
|
|
183
|
+
export interface JsonbField extends FieldBase {
|
|
184
|
+
type: typeof FIELD_TYPES.JSONB;
|
|
185
|
+
required?: boolean;
|
|
186
|
+
default?: unknown;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Enum option source: an inline list of strings, or a data-driven source
|
|
190
|
+
* (`{ from: { object, column? } }`) whose allowed values are the distinct
|
|
191
|
+
* values of a modeled object's column (default: the object's primary key).
|
|
192
|
+
*/
|
|
193
|
+
export type EnumOptions = string[] | {
|
|
194
|
+
from: {
|
|
195
|
+
object: string;
|
|
196
|
+
column?: string;
|
|
197
|
+
};
|
|
198
|
+
};
|
|
105
199
|
export interface EnumField extends FieldBase {
|
|
106
200
|
type: typeof FIELD_TYPES.ENUM;
|
|
107
|
-
options:
|
|
201
|
+
/** inline options, or a data-driven `{ from: { object, column? } }` source */
|
|
202
|
+
options: EnumOptions;
|
|
108
203
|
multiple?: boolean;
|
|
204
|
+
/**
|
|
205
|
+
* native PostgreSQL enum type name backing a static (inline-options) enum.
|
|
206
|
+
* Derived (`<object>_<field>`) for engine-created tables; captured by
|
|
207
|
+
* introspect for adopted tables. Absent for data-driven enums (VARCHAR/TEXT[]).
|
|
208
|
+
*/
|
|
209
|
+
enumType?: string;
|
|
109
210
|
required?: boolean;
|
|
110
211
|
unique?: boolean;
|
|
111
212
|
default?: string | string[];
|
|
@@ -162,22 +263,19 @@ export interface ImageField extends FieldBase {
|
|
|
162
263
|
multiple?: boolean;
|
|
163
264
|
default?: string | string[];
|
|
164
265
|
}
|
|
165
|
-
/** identity FK to the
|
|
166
|
-
export interface
|
|
167
|
-
type: typeof FIELD_TYPES.
|
|
266
|
+
/** identity FK to the engine identity directory (relation-like, mirrors RelationField) */
|
|
267
|
+
export interface UserField extends FieldBase {
|
|
268
|
+
type: typeof FIELD_TYPES.USER;
|
|
269
|
+
/** engine-injected target (always `weavekit_user`); never declared in schema.json */
|
|
168
270
|
target: string;
|
|
169
271
|
required?: boolean;
|
|
170
272
|
unique?: boolean;
|
|
171
273
|
onDelete?: OnDeleteAction;
|
|
172
|
-
/**
|
|
173
|
-
* the department FK field name on the *person target* object (e.g. `dept_id`).
|
|
174
|
-
* Lets the resolve layer pull the person's department (department icon + name).
|
|
175
|
-
*/
|
|
176
|
-
department?: string;
|
|
177
274
|
}
|
|
178
|
-
/** identity FK to the
|
|
275
|
+
/** identity FK to the engine department/organization directory (relation-like, mirrors RelationField) */
|
|
179
276
|
export interface DepartmentField extends FieldBase {
|
|
180
277
|
type: typeof FIELD_TYPES.DEPARTMENT;
|
|
278
|
+
/** engine-injected target (always `weavekit_department`); never declared in schema.json */
|
|
181
279
|
target: string;
|
|
182
280
|
required?: boolean;
|
|
183
281
|
unique?: boolean;
|
|
@@ -198,5 +296,5 @@ export interface RegisteredField extends Omit<FieldBase, 'type'> {
|
|
|
198
296
|
[key: string]: unknown;
|
|
199
297
|
}
|
|
200
298
|
/** discriminated union of every field shape; each member is keyed by its literal `type` */
|
|
201
|
-
export type FieldDefinition = StringField | TextField | IntegerField | NumberField | CurrencyField | BooleanField |
|
|
299
|
+
export type FieldDefinition = StringField | TextField | CharField | SmallIntField | IntegerField | BigIntField | NumberField | RealField | DoubleField | CurrencyField | BooleanField | DateField | TimeField | TimeTzField | TimestampField | TimestamptzField | IntervalField | UuidField | JsonField | JsonbField | EnumField | RelationField | DetailsField | MultiRelationField | SeqNoField | FirstNameField | LastNameField | EmailField | PhoneField | ImageField | UserField | DepartmentField;
|
|
202
300
|
//# sourceMappingURL=fields.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../src/core/types/fields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,aAAa,EACd,MAAM,aAAa,CAAC;AAErB,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../src/core/types/fields.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
export type {
|
|
2
|
-
export type { FieldBase, StringField, TextField, IntegerField, NumberField, CurrencyField, BooleanField,
|
|
1
|
+
export type { BuiltinFieldType, FieldType, OnDeleteAction } from './fields.js';
|
|
2
|
+
export type { FieldBase, StringField, TextField, CharField, SmallIntField, IntegerField, BigIntField, NumberField, RealField, DoubleField, CurrencyField, BooleanField, DateField, TimeField, TimeTzField, TimestampField, TimestamptzField, IntervalField, UuidField, JsonField, JsonbField, EnumField, EnumOptions, RelationField, DetailsField, MultiRelationField, SeqNoField, RegisteredField, FieldDefinition, } from './fields.js';
|
|
3
3
|
export type { ReadScope, PermissionDefinition, Permissions } from './permission.js';
|
|
4
4
|
export type { BelongsToEdge, HasManyEdge, MultiRelationEdge, RelationEdge, } from './relation.js';
|
|
5
|
-
export type { IndexDefinition, ObjectDefinition } from './object.js';
|
|
6
|
-
export type {
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
5
|
+
export type { IndexDefinition, ConstraintDefinition, ObjectDefinition } from './object.js';
|
|
6
|
+
export type { WorkflowDefinition, WorkflowNode, WorkflowNodeKind, WorkflowAssign, WorkflowAssignMode, WorkflowTimeout, WorkflowTimeoutAction, EngineWorkflowConfig, WorkflowTimer, WorkflowTimerStore, WorkflowBackend, WorkflowTimerSync } from './workflow.js';
|
|
7
|
+
export type { IndexType, ConstraintType, SequenceCycle, SequenceToken, DetailsColumn, RelationKind, RowScopeMarker, WeaveStatus, ScopeSource, IdentityObjectName } from './values.js';
|
|
8
|
+
export { DETAILS_COLUMNS, FIELD_TYPES, BUILTIN_CUSTOM_FIELD_TYPES, PG_FIELD_TYPES, IDENTITY_OBJECT_NAMES, READ_SCOPES, RELATION_KINDS, ROW_SCOPE_MARKERS, SCOPE_SOURCES, CONSTRAINT_TYPES, WEAVE_STATUS } from './values.js';
|
|
9
|
+
export { WORKFLOW_FORMAT_VERSION, WORKFLOW_START_NODE, WORKFLOW_NODE_KINDS, WORKFLOW_ASSIGN_MODES, WORKFLOW_TIMEOUT_ACTIONS, WORKFLOW_TIMER_DEFAULTS, parseDuration } from './workflow.js';
|
|
10
|
+
export { primaryFieldOf, primaryFieldsOf, primaryKeyOf } from './primaryField.js';
|
|
9
11
|
export { SchemaError } from './errors.js';
|
|
10
|
-
export { buildFieldTypeRegistry, DEFAULT_FIELD_TYPE_REGISTRY, describeFieldType, fieldBase, fieldOpenApiFormat, fieldUiVisual, isRelationLike, isScalarFieldType, PRIMITIVE_FIELD_TYPES,
|
|
11
|
-
export type { FieldTypeRegistration, FieldTypeRegistry, FieldTypeUiHints } from './field-type.js';
|
|
12
|
-
export { FIELD_TYPE_NAME_PATTERN } from './field-type.js';
|
|
12
|
+
export { buildFieldTypeRegistry, DEFAULT_FIELD_TYPE_REGISTRY, describeFieldType, fieldBase, fieldOpenApiFormat, fieldUiVisual, isRelationLike, isScalarFieldType, isKeyEligible, PRIMITIVE_FIELD_TYPES, OPT_IN_FIELD_TYPES, } from './registry.js';
|
|
13
|
+
export type { AttrKind, AttrSpec, FieldTypeRegistration, FieldTypeRegistry, FieldTypeStorage, FieldTypeUiHints, FieldTypeValidator, } from './field-type.js';
|
|
14
|
+
export { ATTR_KINDS, FIELD_TYPE_NAME_PATTERN } from './field-type.js';
|
|
13
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC/E,YAAY,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,SAAS,EACT,aAAa,EACb,YAAY,EACZ,WAAW,EACX,WAAW,EACX,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,EACZ,SAAS,EACT,SAAS,EACT,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,WAAW,EACX,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,UAAU,EACV,eAAe,EACf,eAAe,GAChB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,SAAS,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACpF,YAAY,EACV,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC3F,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,kBAAkB,EAAE,eAAe,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACjQ,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtL,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,0BAA0B,EAAE,cAAc,EAAE,qBAAqB,EAAE,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC7N,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC3L,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/core/types/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
export { DETAILS_COLUMNS, FIELD_TYPES, READ_SCOPES, RELATION_KINDS, ROW_SCOPE_MARKERS } from './values.js';
|
|
2
|
-
export {
|
|
1
|
+
export { DETAILS_COLUMNS, FIELD_TYPES, BUILTIN_CUSTOM_FIELD_TYPES, PG_FIELD_TYPES, IDENTITY_OBJECT_NAMES, READ_SCOPES, RELATION_KINDS, ROW_SCOPE_MARKERS, SCOPE_SOURCES, CONSTRAINT_TYPES, WEAVE_STATUS } from './values.js';
|
|
2
|
+
export { WORKFLOW_FORMAT_VERSION, WORKFLOW_START_NODE, WORKFLOW_NODE_KINDS, WORKFLOW_ASSIGN_MODES, WORKFLOW_TIMEOUT_ACTIONS, WORKFLOW_TIMER_DEFAULTS, parseDuration } from './workflow.js';
|
|
3
|
+
export { primaryFieldOf, primaryFieldsOf, primaryKeyOf } from './primaryField.js';
|
|
3
4
|
export { SchemaError } from './errors.js';
|
|
4
|
-
export { buildFieldTypeRegistry, DEFAULT_FIELD_TYPE_REGISTRY, describeFieldType, fieldBase, fieldOpenApiFormat, fieldUiVisual, isRelationLike, isScalarFieldType, PRIMITIVE_FIELD_TYPES,
|
|
5
|
-
export { FIELD_TYPE_NAME_PATTERN } from './field-type.js';
|
|
5
|
+
export { buildFieldTypeRegistry, DEFAULT_FIELD_TYPE_REGISTRY, describeFieldType, fieldBase, fieldOpenApiFormat, fieldUiVisual, isRelationLike, isScalarFieldType, isKeyEligible, PRIMITIVE_FIELD_TYPES, OPT_IN_FIELD_TYPES, } from './registry.js';
|
|
6
|
+
export { ATTR_KINDS, FIELD_TYPE_NAME_PATTERN } from './field-type.js';
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/types/index.ts"],"names":[],"mappings":"AA0CA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,0BAA0B,EAAE,cAAc,EAAE,qBAAqB,EAAE,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC7N,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC3L,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EACL,sBAAsB,EACtB,2BAA2B,EAC3B,iBAAiB,EACjB,SAAS,EACT,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAUvB,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import type { FieldDefinition } from './fields.js';
|
|
2
2
|
import type { Permissions } from './permission.js';
|
|
3
|
-
import type { IndexType } from './values.js';
|
|
3
|
+
import type { ConstraintType, IndexType } from './values.js';
|
|
4
|
+
import type { WorkflowDefinition } from './workflow.js';
|
|
4
5
|
/** a user-declared extra index */
|
|
5
6
|
export interface IndexDefinition {
|
|
6
7
|
type: IndexType;
|
|
7
8
|
fields: string[];
|
|
8
9
|
}
|
|
10
|
+
/** a declarative table-level constraint (currently `unique`, possibly composite/scoped) */
|
|
11
|
+
export interface ConstraintDefinition {
|
|
12
|
+
type: ConstraintType;
|
|
13
|
+
/** one or more field names the constraint spans */
|
|
14
|
+
fields: string[];
|
|
15
|
+
}
|
|
9
16
|
/** a validated object definition (the engine's core metadata unit) */
|
|
10
17
|
export interface ObjectDefinition {
|
|
11
18
|
/**
|
|
@@ -23,8 +30,20 @@ export interface ObjectDefinition {
|
|
|
23
30
|
description?: string;
|
|
24
31
|
fields: FieldDefinition[];
|
|
25
32
|
permissions?: Permissions;
|
|
26
|
-
|
|
33
|
+
/**
|
|
34
|
+
* whether the declared state machine in `objects/<name>/workflow.json` is
|
|
35
|
+
* active. Absent/`false` = disabled (the file is kept but ignored, so the
|
|
36
|
+
* state field stays a plain writable enum). Only an explicit `true` enables it.
|
|
37
|
+
* Present on the definition only when the flag was declared.
|
|
38
|
+
*/
|
|
39
|
+
workflowEnabled?: boolean;
|
|
40
|
+
/** declared state machine (`objects/<name>/workflow.json`), when enabled */
|
|
41
|
+
workflow?: WorkflowDefinition;
|
|
42
|
+
/** content-addressed identity of the active workflow's runtime semantics (see `hashWorkflow`) */
|
|
43
|
+
workflowHash?: string;
|
|
27
44
|
indexes?: IndexDefinition[];
|
|
45
|
+
/** declarative table-level constraints (composite/scoped UNIQUE) */
|
|
46
|
+
constraints?: ConstraintDefinition[];
|
|
28
47
|
/** composite title template, e.g. "{doc_no} {customer_name}" */
|
|
29
48
|
titleTemplate?: string;
|
|
30
49
|
/**
|
|
@@ -35,5 +54,11 @@ export interface ObjectDefinition {
|
|
|
35
54
|
* a column fails the sync (fail-fast, protects user-owned tables).
|
|
36
55
|
*/
|
|
37
56
|
alter?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* for a `details` child: the owning parent object name. Set by `buildGraph`
|
|
59
|
+
* (a child has at most one parent). Its row-level permission + scope are
|
|
60
|
+
* derived from the parent — see `resolvePermissionFor`/`buildRowScopeFor`.
|
|
61
|
+
*/
|
|
62
|
+
detailsParent?: string;
|
|
38
63
|
}
|
|
39
64
|
//# sourceMappingURL=object.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/core/types/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/core/types/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD,kCAAkC;AAClC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,2FAA2F;AAC3F,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,cAAc,CAAC;IACrB,mDAAmD;IACnD,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,sEAAsE;AACtE,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,iGAAiG;IACjG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,oEAAoE;IACpE,WAAW,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACrC,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
|
|
@@ -3,6 +3,11 @@ export type { ReadScope } from './values.js';
|
|
|
3
3
|
/** per-role permissions for one object (roles come from the user system) */
|
|
4
4
|
export interface PermissionDefinition {
|
|
5
5
|
read?: ReadScope;
|
|
6
|
+
/**
|
|
7
|
+
* row scope for writes (update/delete); defaults to `read` when unset. Lets a
|
|
8
|
+
* role read narrowly but manage broadly (or vice versa).
|
|
9
|
+
*/
|
|
10
|
+
manage?: ReadScope;
|
|
6
11
|
create?: boolean;
|
|
7
12
|
/** true = all fields updatable; string[] = whitelist; false/undefined = none (fail-closed) */
|
|
8
13
|
update?: boolean | string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../../src/core/types/permission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,4EAA4E;AAC5E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE;QACP,sFAAsF;QACtF,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB;;;;WAIG;QACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;CACH;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../../src/core/types/permission.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,4EAA4E;AAC5E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE;QACP,sFAAsF;QACtF,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB;;;;WAIG;QACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;CACH;AAED,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC"}
|
|
@@ -10,6 +10,11 @@ import type { ObjectDefinition } from './object.js';
|
|
|
10
10
|
*/
|
|
11
11
|
/** primary field of an object — the field carrying `primary: true` */
|
|
12
12
|
export declare function primaryFieldOf(def: ObjectDefinition | undefined): FieldDefinition | undefined;
|
|
13
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* every primary field, in declaration order. A composite key carries more than
|
|
15
|
+
* one; declare order is the tuple order used by `record_key`.
|
|
16
|
+
*/
|
|
17
|
+
export declare function primaryFieldsOf(def: ObjectDefinition | undefined): FieldDefinition[];
|
|
18
|
+
/** name of the (first) primary field; undefined when the object has no primary declaration */
|
|
14
19
|
export declare function primaryKeyOf(def: ObjectDefinition | undefined): string | undefined;
|
|
15
20
|
//# sourceMappingURL=primaryField.d.ts.map
|