node-type-registry 0.18.1 → 0.20.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.
Files changed (151) hide show
  1. package/authz/authz-allow-all.js +10 -10
  2. package/authz/authz-composite.js +28 -28
  3. package/authz/authz-deny-all.js +10 -10
  4. package/authz/authz-direct-owner-any.js +19 -18
  5. package/authz/authz-direct-owner.js +17 -16
  6. package/authz/authz-entity-membership.js +39 -38
  7. package/authz/authz-member-list.js +17 -16
  8. package/authz/authz-membership-check.js +34 -34
  9. package/authz/authz-not-read-only.js +23 -22
  10. package/authz/authz-org-hierarchy.js +33 -31
  11. package/authz/authz-peer-ownership.js +40 -39
  12. package/authz/authz-publishable.js +26 -24
  13. package/authz/authz-related-entity-membership.js +57 -55
  14. package/authz/authz-related-member-list.js +35 -32
  15. package/authz/authz-related-peer-ownership.js +62 -59
  16. package/authz/authz-temporal.js +32 -30
  17. package/authz/index.d.ts +9 -9
  18. package/authz/index.js +19 -19
  19. package/blueprint-types.generated.d.ts +10 -17
  20. package/blueprint-types.generated.js +1 -1
  21. package/codegen/generate-types.js +10 -21
  22. package/data/data-composite-field.js +27 -25
  23. package/data/data-direct-owner.js +24 -23
  24. package/data/data-entity-membership.js +24 -23
  25. package/data/data-force-current-user.js +17 -16
  26. package/data/data-id.js +16 -15
  27. package/data/data-immutable-fields.js +20 -19
  28. package/data/data-inflection.js +33 -32
  29. package/data/data-inherit-from-parent.js +31 -29
  30. package/data/data-job-trigger.js +87 -84
  31. package/data/data-jsonb.js +27 -26
  32. package/data/data-owned-fields.js +25 -23
  33. package/data/data-ownership-in-entity.js +21 -21
  34. package/data/data-peoplestamps.js +19 -19
  35. package/data/data-publishable.js +16 -16
  36. package/data/data-slug.js +21 -19
  37. package/data/data-soft-delete.js +14 -14
  38. package/data/data-status-field.js +32 -31
  39. package/data/data-tags.js +23 -22
  40. package/data/data-timestamps.js +15 -15
  41. package/data/index.d.ts +17 -17
  42. package/data/index.js +35 -35
  43. package/data/search-bm25.js +34 -33
  44. package/data/search-full-text.js +49 -47
  45. package/data/search-spatial-aggregate.js +77 -74
  46. package/data/search-spatial.js +51 -50
  47. package/data/search-trgm.js +20 -19
  48. package/data/search-unified.js +170 -162
  49. package/data/search-vector.js +104 -101
  50. package/data/table-organization-settings.js +13 -13
  51. package/data/table-user-profiles.js +13 -13
  52. package/data/table-user-settings.js +13 -13
  53. package/esm/authz/authz-allow-all.js +10 -10
  54. package/esm/authz/authz-composite.js +28 -28
  55. package/esm/authz/authz-deny-all.js +10 -10
  56. package/esm/authz/authz-direct-owner-any.js +19 -18
  57. package/esm/authz/authz-direct-owner.js +17 -16
  58. package/esm/authz/authz-entity-membership.js +39 -38
  59. package/esm/authz/authz-member-list.js +17 -16
  60. package/esm/authz/authz-membership-check.js +34 -34
  61. package/esm/authz/authz-not-read-only.js +23 -22
  62. package/esm/authz/authz-org-hierarchy.js +33 -31
  63. package/esm/authz/authz-peer-ownership.js +40 -39
  64. package/esm/authz/authz-publishable.js +26 -24
  65. package/esm/authz/authz-related-entity-membership.js +57 -55
  66. package/esm/authz/authz-related-member-list.js +35 -32
  67. package/esm/authz/authz-related-peer-ownership.js +62 -59
  68. package/esm/authz/authz-temporal.js +32 -30
  69. package/esm/authz/index.d.ts +9 -9
  70. package/esm/authz/index.js +9 -9
  71. package/esm/blueprint-types.generated.d.ts +10 -17
  72. package/esm/blueprint-types.generated.js +1 -1
  73. package/esm/codegen/generate-types.js +10 -21
  74. package/esm/data/data-composite-field.js +27 -25
  75. package/esm/data/data-direct-owner.js +24 -23
  76. package/esm/data/data-entity-membership.js +24 -23
  77. package/esm/data/data-force-current-user.js +17 -16
  78. package/esm/data/data-id.js +16 -15
  79. package/esm/data/data-immutable-fields.js +20 -19
  80. package/esm/data/data-inflection.js +33 -32
  81. package/esm/data/data-inherit-from-parent.js +31 -29
  82. package/esm/data/data-job-trigger.js +87 -84
  83. package/esm/data/data-jsonb.js +27 -26
  84. package/esm/data/data-owned-fields.js +25 -23
  85. package/esm/data/data-ownership-in-entity.js +21 -21
  86. package/esm/data/data-peoplestamps.js +19 -19
  87. package/esm/data/data-publishable.js +16 -16
  88. package/esm/data/data-slug.js +21 -19
  89. package/esm/data/data-soft-delete.js +14 -14
  90. package/esm/data/data-status-field.js +32 -31
  91. package/esm/data/data-tags.js +23 -22
  92. package/esm/data/data-timestamps.js +15 -15
  93. package/esm/data/index.d.ts +17 -17
  94. package/esm/data/index.js +17 -17
  95. package/esm/data/search-bm25.js +34 -33
  96. package/esm/data/search-full-text.js +49 -47
  97. package/esm/data/search-spatial-aggregate.js +77 -74
  98. package/esm/data/search-spatial.js +51 -50
  99. package/esm/data/search-trgm.js +20 -19
  100. package/esm/data/search-unified.js +170 -162
  101. package/esm/data/search-vector.js +104 -101
  102. package/esm/data/table-organization-settings.js +13 -13
  103. package/esm/data/table-user-profiles.js +13 -13
  104. package/esm/data/table-user-settings.js +13 -13
  105. package/esm/index.d.ts +3 -3
  106. package/esm/index.js +3 -3
  107. package/esm/module-presets/auth-email-magic.js +2 -2
  108. package/esm/module-presets/auth-email.js +8 -8
  109. package/esm/module-presets/auth-passkey.js +4 -4
  110. package/esm/module-presets/auth-sso.js +7 -7
  111. package/esm/module-presets/full.js +1 -1
  112. package/esm/module-presets/index.d.ts +5 -5
  113. package/esm/module-presets/index.js +4 -4
  114. package/esm/relation/index.d.ts +1 -1
  115. package/esm/relation/index.js +1 -1
  116. package/esm/relation/relation-belongs-to.js +41 -40
  117. package/esm/relation/relation-has-many.js +42 -41
  118. package/esm/relation/relation-has-one.js +42 -41
  119. package/esm/relation/relation-many-to-many.js +70 -68
  120. package/esm/relation/relation-spatial.js +54 -54
  121. package/esm/view/index.d.ts +3 -3
  122. package/esm/view/index.js +3 -3
  123. package/esm/view/view-aggregated.js +50 -48
  124. package/esm/view/view-composite.js +18 -18
  125. package/esm/view/view-filtered-table.js +37 -36
  126. package/esm/view/view-joined-tables.js +65 -61
  127. package/esm/view/view-table-projection.js +29 -28
  128. package/index.d.ts +3 -3
  129. package/index.js +3 -3
  130. package/module-presets/auth-email-magic.js +2 -2
  131. package/module-presets/auth-email.js +8 -8
  132. package/module-presets/auth-passkey.js +4 -4
  133. package/module-presets/auth-sso.js +7 -7
  134. package/module-presets/full.js +1 -1
  135. package/module-presets/index.d.ts +5 -5
  136. package/module-presets/index.js +7 -7
  137. package/package.json +2 -2
  138. package/relation/index.d.ts +1 -1
  139. package/relation/index.js +3 -3
  140. package/relation/relation-belongs-to.js +41 -40
  141. package/relation/relation-has-many.js +42 -41
  142. package/relation/relation-has-one.js +42 -41
  143. package/relation/relation-many-to-many.js +70 -68
  144. package/relation/relation-spatial.js +54 -54
  145. package/view/index.d.ts +3 -3
  146. package/view/index.js +7 -7
  147. package/view/view-aggregated.js +50 -48
  148. package/view/view-composite.js +18 -18
  149. package/view/view-filtered-table.js +37 -36
  150. package/view/view-joined-tables.js +65 -61
  151. package/view/view-table-projection.js +29 -28
@@ -2,67 +2,69 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViewAggregated = void 0;
4
4
  exports.ViewAggregated = {
5
- "name": "ViewAggregated",
6
- "slug": "view_aggregated",
7
- "category": "view",
8
- "display_name": "Aggregated View",
9
- "description": "View with GROUP BY and aggregate functions. Useful for summary/reporting views.",
10
- "parameter_schema": {
11
- "type": "object",
12
- "properties": {
13
- "source_table_id": {
14
- "type": "string",
15
- "format": "uuid",
16
- "description": "UUID of the source table"
5
+ name: 'ViewAggregated',
6
+ slug: 'view_aggregated',
7
+ category: 'view',
8
+ display_name: 'Aggregated View',
9
+ description: 'View with GROUP BY and aggregate functions. Useful for summary/reporting views.',
10
+ parameter_schema: {
11
+ type: 'object',
12
+ properties: {
13
+ source_table_id: {
14
+ type: 'string',
15
+ format: 'uuid',
16
+ description: 'UUID of the source table'
17
17
  },
18
- "group_by_fields": {
19
- "type": "array",
20
- "items": {
21
- "type": "string"
18
+ group_by_fields: {
19
+ type: 'array',
20
+ items: {
21
+ type: 'string',
22
+ format: 'column-ref'
22
23
  },
23
- "description": "Field names to group by"
24
+ description: 'Field names to group by'
24
25
  },
25
- "aggregates": {
26
- "type": "array",
27
- "items": {
28
- "type": "object",
29
- "properties": {
30
- "function": {
31
- "type": "string",
32
- "enum": [
33
- "COUNT",
34
- "SUM",
35
- "AVG",
36
- "MIN",
37
- "MAX"
26
+ aggregates: {
27
+ type: 'array',
28
+ items: {
29
+ type: 'object',
30
+ properties: {
31
+ function: {
32
+ type: 'string',
33
+ enum: [
34
+ 'COUNT',
35
+ 'SUM',
36
+ 'AVG',
37
+ 'MIN',
38
+ 'MAX'
38
39
  ]
39
40
  },
40
- "field": {
41
- "type": "string",
42
- "description": "Field to aggregate (or * for COUNT)"
41
+ field: {
42
+ type: 'string',
43
+ format: 'column-ref',
44
+ description: 'Field to aggregate (or * for COUNT)'
43
45
  },
44
- "alias": {
45
- "type": "string",
46
- "description": "Output column name"
46
+ alias: {
47
+ type: 'string',
48
+ description: 'Output column name'
47
49
  }
48
50
  },
49
- "required": [
50
- "function",
51
- "alias"
51
+ required: [
52
+ 'function',
53
+ 'alias'
52
54
  ]
53
55
  },
54
- "description": "Array of aggregate specifications"
56
+ description: 'Array of aggregate specifications'
55
57
  }
56
58
  },
57
- "required": [
58
- "source_table_id",
59
- "group_by_fields",
60
- "aggregates"
59
+ required: [
60
+ 'source_table_id',
61
+ 'group_by_fields',
62
+ 'aggregates'
61
63
  ]
62
64
  },
63
- "tags": [
64
- "view",
65
- "aggregate",
66
- "reporting"
65
+ tags: [
66
+ 'view',
67
+ 'aggregate',
68
+ 'reporting'
67
69
  ]
68
70
  };
@@ -2,27 +2,27 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViewComposite = void 0;
4
4
  exports.ViewComposite = {
5
- "name": "ViewComposite",
6
- "slug": "view_composite",
7
- "category": "view",
8
- "display_name": "Composite View",
9
- "description": "Advanced view using composite AST for the query. Use when other node types are insufficient (CTEs, UNIONs, complex subqueries, etc.).",
10
- "parameter_schema": {
11
- "type": "object",
12
- "properties": {
13
- "query_ast": {
14
- "type": "object",
15
- "description": "Composite SELECT query AST (JSONB)"
5
+ name: 'ViewComposite',
6
+ slug: 'view_composite',
7
+ category: 'view',
8
+ display_name: 'Composite View',
9
+ description: 'Advanced view using composite AST for the query. Use when other node types are insufficient (CTEs, UNIONs, complex subqueries, etc.).',
10
+ parameter_schema: {
11
+ type: 'object',
12
+ properties: {
13
+ query_ast: {
14
+ type: 'object',
15
+ description: 'Composite SELECT query AST (JSONB)'
16
16
  }
17
17
  },
18
- "required": [
19
- "query_ast"
18
+ required: [
19
+ 'query_ast'
20
20
  ]
21
21
  },
22
- "tags": [
23
- "view",
24
- "advanced",
25
- "composite",
26
- "ast"
22
+ tags: [
23
+ 'view',
24
+ 'advanced',
25
+ 'composite',
26
+ 'ast'
27
27
  ]
28
28
  };
@@ -2,51 +2,52 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViewFilteredTable = void 0;
4
4
  exports.ViewFilteredTable = {
5
- "name": "ViewFilteredTable",
6
- "slug": "view_filtered_table",
7
- "category": "view",
8
- "display_name": "Filtered Table",
9
- "description": "Table projection with an Authz* filter baked into the view definition. The view only returns records matching the filter.",
10
- "parameter_schema": {
11
- "type": "object",
12
- "properties": {
13
- "source_table_id": {
14
- "type": "string",
15
- "format": "uuid",
16
- "description": "UUID of the source table"
5
+ name: 'ViewFilteredTable',
6
+ slug: 'view_filtered_table',
7
+ category: 'view',
8
+ display_name: 'Filtered Table',
9
+ description: 'Table projection with an Authz* filter baked into the view definition. The view only returns records matching the filter.',
10
+ parameter_schema: {
11
+ type: 'object',
12
+ properties: {
13
+ source_table_id: {
14
+ type: 'string',
15
+ format: 'uuid',
16
+ description: 'UUID of the source table'
17
17
  },
18
- "filter_type": {
19
- "type": "string",
20
- "description": "Authz* node type name (e.g., AuthzDirectOwner, AuthzPublishable)"
18
+ filter_type: {
19
+ type: 'string',
20
+ description: 'Authz* node type name (e.g., AuthzDirectOwner, AuthzPublishable)'
21
21
  },
22
- "filter_data": {
23
- "type": "object",
24
- "description": "Parameters for the Authz* filter type"
22
+ filter_data: {
23
+ type: 'object',
24
+ description: 'Parameters for the Authz* filter type'
25
25
  },
26
- "field_ids": {
27
- "type": "array",
28
- "items": {
29
- "type": "string",
30
- "format": "uuid"
26
+ field_ids: {
27
+ type: 'array',
28
+ items: {
29
+ type: 'string',
30
+ format: 'uuid'
31
31
  },
32
- "description": "Optional array of field UUIDs to include (alternative to field_names)"
32
+ description: 'Optional array of field UUIDs to include (alternative to field_names)'
33
33
  },
34
- "field_names": {
35
- "type": "array",
36
- "items": {
37
- "type": "string"
34
+ field_names: {
35
+ type: 'array',
36
+ items: {
37
+ type: 'string',
38
+ format: 'column-ref'
38
39
  },
39
- "description": "Optional array of field names to include (alternative to field_ids)"
40
+ description: 'Optional array of field names to include (alternative to field_ids)'
40
41
  }
41
42
  },
42
- "required": [
43
- "source_table_id",
44
- "filter_type"
43
+ required: [
44
+ 'source_table_id',
45
+ 'filter_type'
45
46
  ]
46
47
  },
47
- "tags": [
48
- "view",
49
- "filter",
50
- "authz"
48
+ tags: [
49
+ 'view',
50
+ 'filter',
51
+ 'authz'
51
52
  ]
52
53
  };
@@ -2,85 +2,89 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViewJoinedTables = void 0;
4
4
  exports.ViewJoinedTables = {
5
- "name": "ViewJoinedTables",
6
- "slug": "view_joined_tables",
7
- "category": "view",
8
- "display_name": "Joined Tables",
9
- "description": "View that joins multiple tables together. Supports INNER, LEFT, RIGHT, and FULL joins.",
10
- "parameter_schema": {
11
- "type": "object",
12
- "properties": {
13
- "primary_table_id": {
14
- "type": "string",
15
- "format": "uuid",
16
- "description": "UUID of the primary (left-most) table"
5
+ name: 'ViewJoinedTables',
6
+ slug: 'view_joined_tables',
7
+ category: 'view',
8
+ display_name: 'Joined Tables',
9
+ description: 'View that joins multiple tables together. Supports INNER, LEFT, RIGHT, and FULL joins.',
10
+ parameter_schema: {
11
+ type: 'object',
12
+ properties: {
13
+ primary_table_id: {
14
+ type: 'string',
15
+ format: 'uuid',
16
+ description: 'UUID of the primary (left-most) table'
17
17
  },
18
- "primary_columns": {
19
- "type": "array",
20
- "items": {
21
- "type": "string"
18
+ primary_columns: {
19
+ type: 'array',
20
+ items: {
21
+ type: 'string',
22
+ format: 'column-ref'
22
23
  },
23
- "description": "Optional array of column names to include from the primary table"
24
+ description: 'Optional array of column names to include from the primary table'
24
25
  },
25
- "joins": {
26
- "type": "array",
27
- "items": {
28
- "type": "object",
29
- "properties": {
30
- "table_id": {
31
- "type": "string",
32
- "format": "uuid",
33
- "description": "UUID of the joined table"
26
+ joins: {
27
+ type: 'array',
28
+ items: {
29
+ type: 'object',
30
+ properties: {
31
+ table_id: {
32
+ type: 'string',
33
+ format: 'uuid',
34
+ description: 'UUID of the joined table'
34
35
  },
35
- "join_type": {
36
- "type": "string",
37
- "enum": [
38
- "INNER",
39
- "LEFT",
40
- "RIGHT",
41
- "FULL"
36
+ join_type: {
37
+ type: 'string',
38
+ enum: [
39
+ 'INNER',
40
+ 'LEFT',
41
+ 'RIGHT',
42
+ 'FULL'
42
43
  ]
43
44
  },
44
- "primary_field": {
45
- "type": "string",
46
- "description": "Field on primary table"
45
+ primary_field: {
46
+ type: 'string',
47
+ format: 'column-ref',
48
+ description: 'Field on primary table'
47
49
  },
48
- "join_field": {
49
- "type": "string",
50
- "description": "Field on joined table"
50
+ join_field: {
51
+ type: 'string',
52
+ format: 'column-ref',
53
+ description: 'Field on joined table'
51
54
  },
52
- "columns": {
53
- "type": "array",
54
- "items": {
55
- "type": "string"
55
+ columns: {
56
+ type: 'array',
57
+ items: {
58
+ type: 'string',
59
+ format: 'column-ref'
56
60
  },
57
- "description": "Optional column names to include from this joined table"
61
+ description: 'Optional column names to include from this joined table'
58
62
  }
59
63
  },
60
- "required": [
61
- "table_id",
62
- "primary_field",
63
- "join_field"
64
+ required: [
65
+ 'table_id',
66
+ 'primary_field',
67
+ 'join_field'
64
68
  ]
65
69
  },
66
- "description": "Array of join specifications"
70
+ description: 'Array of join specifications'
67
71
  },
68
- "field_ids": {
69
- "type": "array",
70
- "items": {
71
- "type": "string",
72
- "format": "uuid"
72
+ field_ids: {
73
+ type: 'array',
74
+ items: {
75
+ type: 'string',
76
+ format: 'uuid'
73
77
  },
74
- "description": "Optional array of field UUIDs to include (alternative to per-table columns)"
78
+ description: 'Optional array of field UUIDs to include (alternative to per-table columns)'
75
79
  }
76
80
  },
77
- "required": [
78
- "primary_table_id",
79
- "joins"
81
+ required: [
82
+ 'primary_table_id',
83
+ 'joins'
80
84
  ]
81
85
  },
82
- "tags": [
83
- "view",
84
- "join"
86
+ tags: [
87
+ 'view',
88
+ 'join'
85
89
  ]
86
90
  };
@@ -2,41 +2,42 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViewTableProjection = void 0;
4
4
  exports.ViewTableProjection = {
5
- "name": "ViewTableProjection",
6
- "slug": "view_table_projection",
7
- "category": "view",
8
- "display_name": "Table Projection",
9
- "description": "Simple column selection from a single source table. Projects all or specific fields.",
10
- "parameter_schema": {
11
- "type": "object",
12
- "properties": {
13
- "source_table_id": {
14
- "type": "string",
15
- "format": "uuid",
16
- "description": "UUID of the source table to project from"
5
+ name: 'ViewTableProjection',
6
+ slug: 'view_table_projection',
7
+ category: 'view',
8
+ display_name: 'Table Projection',
9
+ description: 'Simple column selection from a single source table. Projects all or specific fields.',
10
+ parameter_schema: {
11
+ type: 'object',
12
+ properties: {
13
+ source_table_id: {
14
+ type: 'string',
15
+ format: 'uuid',
16
+ description: 'UUID of the source table to project from'
17
17
  },
18
- "field_ids": {
19
- "type": "array",
20
- "items": {
21
- "type": "string",
22
- "format": "uuid"
18
+ field_ids: {
19
+ type: 'array',
20
+ items: {
21
+ type: 'string',
22
+ format: 'uuid'
23
23
  },
24
- "description": "Optional array of field UUIDs to include (all fields if omitted)"
24
+ description: 'Optional array of field UUIDs to include (all fields if omitted)'
25
25
  },
26
- "field_names": {
27
- "type": "array",
28
- "items": {
29
- "type": "string"
26
+ field_names: {
27
+ type: 'array',
28
+ items: {
29
+ type: 'string',
30
+ format: 'column-ref'
30
31
  },
31
- "description": "Optional array of field names to include (alternative to field_ids)"
32
+ description: 'Optional array of field names to include (alternative to field_ids)'
32
33
  }
33
34
  },
34
- "required": [
35
- "source_table_id"
35
+ required: [
36
+ 'source_table_id'
36
37
  ]
37
38
  },
38
- "tags": [
39
- "view",
40
- "projection"
39
+ tags: [
40
+ 'view',
41
+ 'projection'
41
42
  ]
42
43
  };