@stonecrop/stonecrop 0.10.15 → 0.11.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/README.md +72 -29
- package/dist/composable.js +1 -0
- package/dist/composables/lazy-link.js +125 -0
- package/dist/composables/stonecrop.js +123 -68
- package/dist/composables/use-lazy-link-state.js +125 -0
- package/dist/composables/use-stonecrop.js +476 -0
- package/dist/doctype.js +10 -2
- package/dist/field-triggers.js +15 -3
- package/dist/index.js +4 -3
- package/dist/operation-log-DB-dGNT9.js +593 -0
- package/dist/operation-log-DB-dGNT9.js.map +1 -0
- package/dist/registry.js +261 -101
- package/dist/schema-validator.js +105 -1
- package/dist/src/composable.d.ts +11 -0
- package/dist/src/composable.d.ts.map +1 -0
- package/dist/src/composable.js +477 -0
- package/dist/src/composables/lazy-link.d.ts +25 -0
- package/dist/src/composables/lazy-link.d.ts.map +1 -0
- package/dist/src/composables/operation-log.d.ts +5 -5
- package/dist/src/composables/operation-log.d.ts.map +1 -1
- package/dist/src/composables/operation-log.js +224 -0
- package/dist/src/composables/stonecrop.d.ts +11 -1
- package/dist/src/composables/stonecrop.d.ts.map +1 -1
- package/dist/src/composables/stonecrop.js +574 -0
- package/dist/src/composables/use-lazy-link-state.d.ts +25 -0
- package/dist/src/composables/use-lazy-link-state.d.ts.map +1 -0
- package/dist/src/composables/use-stonecrop.d.ts +93 -0
- package/dist/src/composables/use-stonecrop.d.ts.map +1 -0
- package/dist/src/composables/useNestedSchema.d.ts +110 -0
- package/dist/src/composables/useNestedSchema.d.ts.map +1 -0
- package/dist/src/composables/useNestedSchema.js +155 -0
- package/dist/src/doctype.d.ts +9 -1
- package/dist/src/doctype.d.ts.map +1 -1
- package/dist/src/doctype.js +234 -0
- package/dist/src/exceptions.js +16 -0
- package/dist/src/field-triggers.d.ts +6 -0
- package/dist/src/field-triggers.d.ts.map +1 -1
- package/dist/src/field-triggers.js +567 -0
- package/dist/src/index.d.ts +3 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +23 -0
- package/dist/src/plugins/index.js +96 -0
- package/dist/src/registry.d.ts +102 -23
- package/dist/src/registry.d.ts.map +1 -1
- package/dist/src/registry.js +246 -0
- package/dist/src/schema-validator.d.ts +8 -1
- package/dist/src/schema-validator.d.ts.map +1 -1
- package/dist/src/schema-validator.js +315 -0
- package/dist/src/stonecrop.d.ts +73 -28
- package/dist/src/stonecrop.d.ts.map +1 -1
- package/dist/src/stonecrop.js +339 -0
- package/dist/src/stores/data.d.ts +11 -0
- package/dist/src/stores/data.d.ts.map +1 -0
- package/dist/src/stores/hst.d.ts +5 -75
- package/dist/src/stores/hst.d.ts.map +1 -1
- package/dist/src/stores/hst.js +495 -0
- package/dist/src/stores/index.js +12 -0
- package/dist/src/stores/operation-log.d.ts +14 -14
- package/dist/src/stores/operation-log.d.ts.map +1 -1
- package/dist/src/stores/operation-log.js +568 -0
- package/dist/src/stores/xstate.d.ts +31 -0
- package/dist/src/stores/xstate.d.ts.map +1 -0
- package/dist/src/tsdoc-metadata.json +11 -0
- package/dist/src/types/composable.d.ts +50 -12
- package/dist/src/types/composable.d.ts.map +1 -1
- package/dist/src/types/doctype.d.ts +6 -7
- package/dist/src/types/doctype.d.ts.map +1 -1
- package/dist/src/types/field-triggers.d.ts +1 -1
- package/dist/src/types/field-triggers.d.ts.map +1 -1
- package/dist/src/types/field-triggers.js +4 -0
- package/dist/src/types/hst.d.ts +70 -0
- package/dist/src/types/hst.d.ts.map +1 -0
- package/dist/src/types/index.d.ts +1 -0
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +4 -0
- package/dist/src/types/operation-log.d.ts +4 -4
- package/dist/src/types/operation-log.d.ts.map +1 -1
- package/dist/src/types/operation-log.js +0 -0
- package/dist/src/types/registry.js +0 -0
- package/dist/src/types/schema-validator.d.ts +2 -0
- package/dist/src/types/schema-validator.d.ts.map +1 -1
- package/dist/src/utils.d.ts +24 -0
- package/dist/src/utils.d.ts.map +1 -0
- package/dist/stonecrop.d.ts +317 -99
- package/dist/stonecrop.js +2191 -1897
- package/dist/stonecrop.js.map +1 -1
- package/dist/stonecrop.umd.cjs +6 -0
- package/dist/stonecrop.umd.cjs.map +1 -0
- package/dist/stores/data.js +7 -0
- package/dist/stores/hst.js +27 -25
- package/dist/stores/operation-log.js +59 -47
- package/dist/stores/xstate.js +29 -0
- package/dist/tests/setup.d.ts +5 -0
- package/dist/tests/setup.d.ts.map +1 -0
- package/dist/tests/setup.js +15 -0
- package/dist/types/hst.js +0 -0
- package/dist/types/index.js +1 -0
- package/dist/utils.js +46 -0
- package/package.json +4 -4
- package/src/composables/lazy-link.ts +146 -0
- package/src/composables/operation-log.ts +1 -1
- package/src/composables/stonecrop.ts +142 -73
- package/src/doctype.ts +13 -4
- package/src/field-triggers.ts +18 -4
- package/src/index.ts +4 -2
- package/src/registry.ts +289 -111
- package/src/schema-validator.ts +120 -1
- package/src/stonecrop.ts +230 -106
- package/src/stores/hst.ts +29 -104
- package/src/stores/operation-log.ts +64 -50
- package/src/types/composable.ts +55 -12
- package/src/types/doctype.ts +6 -7
- package/src/types/field-triggers.ts +1 -1
- package/src/types/hst.ts +77 -0
- package/src/types/index.ts +1 -0
- package/src/types/operation-log.ts +4 -4
- package/src/types/schema-validator.ts +2 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { SchemaTypes } from '@stonecrop/aform';
|
|
1
|
+
import type { SchemaTypes } from '@stonecrop/aform';
|
|
2
2
|
import type { Ref, ComputedRef } from 'vue';
|
|
3
3
|
import type Doctype from '../doctype';
|
|
4
|
-
import type { HSTNode } from '
|
|
4
|
+
import type { HSTNode } from './hst';
|
|
5
5
|
import type { HSTOperation, OperationLogConfig, OperationLogSnapshot } from './operation-log';
|
|
6
6
|
/**
|
|
7
7
|
* Operation Log API - nested object containing all operation log functionality
|
|
@@ -169,14 +169,24 @@ export type HSTStonecropReturn = BaseStonecropReturn & {
|
|
|
169
169
|
*/
|
|
170
170
|
resolvedSchema: Ref<SchemaTypes[]>;
|
|
171
171
|
/**
|
|
172
|
-
*
|
|
173
|
-
*
|
|
174
|
-
* @param
|
|
175
|
-
* @param childDoctype - The nested doctype metadata
|
|
176
|
-
* @param recordId - Optional record ID (reserved for future API fetch)
|
|
177
|
-
* @returns The loaded or initialized data object
|
|
172
|
+
* Scaffold empty descendant records from defaults for all descendant links.
|
|
173
|
+
* @param path - The HST path where initialized data should be stored
|
|
174
|
+
* @param doctype - The doctype to initialize
|
|
178
175
|
*/
|
|
179
|
-
|
|
176
|
+
initializeNestedData: (path: string, doctype: Doctype) => void;
|
|
177
|
+
/**
|
|
178
|
+
* Fetch a record and its nested data from the server.
|
|
179
|
+
* Stores each field at its own HST path per the field-level convention.
|
|
180
|
+
* @param path - The HST path (e.g., "recipe.r1")
|
|
181
|
+
* @param doctype - The doctype to fetch
|
|
182
|
+
* @param recordId - Record ID to fetch
|
|
183
|
+
* @param options - Query options (includeNested to control which links are fetched)
|
|
184
|
+
* @throws Error with code "CLIENT_REQUIRED" if no data client is configured
|
|
185
|
+
* @throws Error with code "RECORD_NOT_FOUND" if the server returns null
|
|
186
|
+
*/
|
|
187
|
+
fetchNestedData: (path: string, doctype: Doctype, recordId: string, options?: {
|
|
188
|
+
includeNested?: boolean | string[];
|
|
189
|
+
}) => Promise<void>;
|
|
180
190
|
/**
|
|
181
191
|
* Collects a complete record payload with all nested data from HST.
|
|
182
192
|
* Use this before submitting to an API. Recursively includes 1:1 and 1:many nested records.
|
|
@@ -186,13 +196,13 @@ export type HSTStonecropReturn = BaseStonecropReturn & {
|
|
|
186
196
|
*/
|
|
187
197
|
collectRecordPayload: (doctype: Doctype, recordId: string) => Record<string, any>;
|
|
188
198
|
/**
|
|
189
|
-
* Creates a nested context for a
|
|
199
|
+
* Creates a nested context for a descendant doctype component.
|
|
190
200
|
* Use this in parent components to pass scoped handlers to child components.
|
|
191
201
|
* @param basePath - The parent HST path prefix
|
|
192
|
-
* @param
|
|
202
|
+
* @param descendantDoctype - The descendant doctype metadata
|
|
193
203
|
* @returns Scoped provideHSTPath and handleHSTChange functions
|
|
194
204
|
*/
|
|
195
|
-
createNestedContext: (basePath: string,
|
|
205
|
+
createNestedContext: (basePath: string, descendantDoctype: Doctype) => {
|
|
196
206
|
provideHSTPath: (fieldname: string) => string;
|
|
197
207
|
handleHSTChange: (changeData: HSTChangeData) => void;
|
|
198
208
|
};
|
|
@@ -211,6 +221,17 @@ export type HSTStonecropReturn = BaseStonecropReturn & {
|
|
|
211
221
|
* Available immediately if Doctype instance passed, after async resolution if slug string passed.
|
|
212
222
|
*/
|
|
213
223
|
resolvedDoctype: Ref<Doctype | undefined>;
|
|
224
|
+
/**
|
|
225
|
+
* Computed ref indicating whether workflow actions are ready to run.
|
|
226
|
+
* True when all links with blockWorkflows are loaded in HST.
|
|
227
|
+
* Use with v-bind:disabled="!isWorkflowReady" on action buttons.
|
|
228
|
+
*/
|
|
229
|
+
isWorkflowReady: ComputedRef<boolean>;
|
|
230
|
+
/**
|
|
231
|
+
* List of link fieldnames that are blocking workflow execution.
|
|
232
|
+
* Empty array when isWorkflowReady is true.
|
|
233
|
+
*/
|
|
234
|
+
blockedLinks: ComputedRef<string[]>;
|
|
214
235
|
};
|
|
215
236
|
import type { Stonecrop } from '../stonecrop';
|
|
216
237
|
/**
|
|
@@ -227,4 +248,21 @@ export type HSTChangeData = {
|
|
|
227
248
|
/** Optional record ID */
|
|
228
249
|
recordId?: string;
|
|
229
250
|
};
|
|
251
|
+
/**
|
|
252
|
+
* Lazy link state for a single link field.
|
|
253
|
+
* Provides reactive state and reload capability for lazy-loaded links.
|
|
254
|
+
* @public
|
|
255
|
+
*/
|
|
256
|
+
export type LazyLink = {
|
|
257
|
+
/** True while fetching data */
|
|
258
|
+
loading: Ref<boolean>;
|
|
259
|
+
/** True after successful fetch (permanent until reload) */
|
|
260
|
+
loaded: Ref<boolean>;
|
|
261
|
+
/** Error state, if any */
|
|
262
|
+
error: Ref<Error | null>;
|
|
263
|
+
/** Explicitly trigger a fetch for this link */
|
|
264
|
+
reload: () => Promise<void>;
|
|
265
|
+
/** The loaded data from HST, or undefined if not loaded */
|
|
266
|
+
data: ComputedRef<any>;
|
|
267
|
+
};
|
|
230
268
|
//# sourceMappingURL=composable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composable.d.ts","sourceRoot":"","sources":["../../../src/types/composable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"composable.d.ts","sourceRoot":"","sources":["../../../src/types/composable.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { SchemaTypes } from '@stonecrop/aform';
|
|
2
|
-
import type { WorkflowMeta } from '@stonecrop/schema';
|
|
2
|
+
import type { LinkDeclaration, WorkflowMeta } from '@stonecrop/schema';
|
|
3
3
|
import { List, Map } from 'immutable';
|
|
4
4
|
import type { AnyStateNodeConfig, UnknownMachineConfig } from 'xstate';
|
|
5
5
|
/**
|
|
@@ -10,6 +10,7 @@ export type ImmutableDoctype = {
|
|
|
10
10
|
readonly schema?: List<SchemaTypes>;
|
|
11
11
|
readonly workflow?: UnknownMachineConfig | AnyStateNodeConfig | WorkflowMeta;
|
|
12
12
|
readonly actions?: Map<string, string[]>;
|
|
13
|
+
readonly links?: Record<string, LinkDeclaration>;
|
|
13
14
|
};
|
|
14
15
|
/**
|
|
15
16
|
* Mutable Doctype type for Stonecrop instances
|
|
@@ -41,17 +42,15 @@ export type DoctypeConfig = {
|
|
|
41
42
|
slug?: string;
|
|
42
43
|
/** Database table name */
|
|
43
44
|
tableName?: string;
|
|
44
|
-
/** Field definitions */
|
|
45
|
+
/** Field definitions (including link fields with fieldtype: 'Link') */
|
|
45
46
|
fields?: SchemaTypes[];
|
|
47
|
+
/** Relationship links to other doctypes */
|
|
48
|
+
links?: Record<string, LinkDeclaration>;
|
|
46
49
|
/** Workflow configuration (XState format or simple WorkflowMeta) */
|
|
47
50
|
workflow?: UnknownMachineConfig | WorkflowMeta;
|
|
48
51
|
/** Actions and their field triggers */
|
|
49
52
|
actions?: Record<string, string[]>;
|
|
50
|
-
/**
|
|
53
|
+
/** Ancestor doctype for inheritance */
|
|
51
54
|
inherits?: string;
|
|
52
|
-
/** Doctype to use for list views */
|
|
53
|
-
listDoctype?: string;
|
|
54
|
-
/** Parent doctype for child tables */
|
|
55
|
-
parentDoctype?: string;
|
|
56
55
|
};
|
|
57
56
|
//# sourceMappingURL=doctype.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctype.d.ts","sourceRoot":"","sources":["../../../src/types/doctype.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"doctype.d.ts","sourceRoot":"","sources":["../../../src/types/doctype.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACtE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAEtE;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;IACnC,QAAQ,CAAC,QAAQ,CAAC,EAAE,oBAAoB,GAAG,kBAAkB,GAAG,YAAY,CAAA;IAC5E,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;CAChD,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;IACtB,QAAQ,CAAC,EAAE,oBAAoB,GAAG,kBAAkB,GAAG,YAAY,CAAA;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CAClC,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;CACzB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG;IAC3B,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,qCAAqC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,0BAA0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,uEAAuE;IACvE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;IACtB,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACvC,oEAAoE;IACpE,QAAQ,CAAC,EAAE,oBAAoB,GAAG,YAAY,CAAA;IAC9C,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAClC,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-triggers.d.ts","sourceRoot":"","sources":["../../../src/types/field-triggers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"field-triggers.d.ts","sourceRoot":"","sources":["../../../src/types/field-triggers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core HST Interface - enhanced with tree navigation
|
|
3
|
+
* Provides a hierarchical state tree interface for navigating and manipulating nested data structures.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export interface HSTNode {
|
|
8
|
+
/**
|
|
9
|
+
* Gets a value at the specified path
|
|
10
|
+
* @param path - The dot-separated path to the value
|
|
11
|
+
* @returns The value at the specified path
|
|
12
|
+
*/
|
|
13
|
+
get(path: string): any;
|
|
14
|
+
/**
|
|
15
|
+
* Sets a value at the specified path
|
|
16
|
+
* @param path - The dot-separated path where to set the value
|
|
17
|
+
* @param value - The value to set
|
|
18
|
+
* @param source - Optional source of the operation (user, system, sync, undo, redo)
|
|
19
|
+
*/
|
|
20
|
+
set(path: string, value: any, source?: 'user' | 'system' | 'sync' | 'undo' | 'redo'): void;
|
|
21
|
+
/**
|
|
22
|
+
* Checks if a value exists at the specified path
|
|
23
|
+
* @param path - The dot-separated path to check
|
|
24
|
+
* @returns True if the path exists, false otherwise
|
|
25
|
+
*/
|
|
26
|
+
has(path: string): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Gets the ancestor node in the tree hierarchy (immediate predecessor)
|
|
29
|
+
* @returns The ancestor HSTNode or null if this is the root
|
|
30
|
+
*/
|
|
31
|
+
getAncestor(): HSTNode | null;
|
|
32
|
+
/**
|
|
33
|
+
* Gets the root node of the tree
|
|
34
|
+
* @returns The root HSTNode
|
|
35
|
+
*/
|
|
36
|
+
getRoot(): HSTNode;
|
|
37
|
+
/**
|
|
38
|
+
* Gets the full path from root to this node
|
|
39
|
+
* @returns The dot-separated path string
|
|
40
|
+
*/
|
|
41
|
+
getPath(): string;
|
|
42
|
+
/**
|
|
43
|
+
* Gets the depth level of this node in the tree
|
|
44
|
+
* @returns The depth as a number (0 for root)
|
|
45
|
+
*/
|
|
46
|
+
getDepth(): number;
|
|
47
|
+
/**
|
|
48
|
+
* Gets an array of path segments from root to this node
|
|
49
|
+
* @returns Array of path segments representing breadcrumbs
|
|
50
|
+
*/
|
|
51
|
+
getBreadcrumbs(): string[];
|
|
52
|
+
/**
|
|
53
|
+
* Gets a child node at the specified relative path
|
|
54
|
+
* @param path - The relative path to the child node
|
|
55
|
+
* @returns The child HSTNode
|
|
56
|
+
*/
|
|
57
|
+
getNode(path: string): HSTNode;
|
|
58
|
+
/**
|
|
59
|
+
* Trigger an XState transition with optional context data
|
|
60
|
+
* @param transition - The transition name (should be uppercase per convention)
|
|
61
|
+
* @param context - Optional additional FSM context data
|
|
62
|
+
* @returns Promise resolving to the transition execution results
|
|
63
|
+
*/
|
|
64
|
+
triggerTransition(transition: string, context?: {
|
|
65
|
+
currentState?: string;
|
|
66
|
+
targetState?: string;
|
|
67
|
+
fsmContext?: Record<string, any>;
|
|
68
|
+
}): Promise<any>;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=hst.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hst.d.ts","sourceRoot":"","sources":["../../../src/types/hst.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,OAAO;IACvB;;;;OAIG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAA;IAEtB;;;;;OAKG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAE1F;;;;OAIG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;IAE1B;;;OAGG;IACH,WAAW,IAAI,OAAO,GAAG,IAAI,CAAA;IAE7B;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAA;IAElB;;;OAGG;IACH,OAAO,IAAI,MAAM,CAAA;IAEjB;;;OAGG;IACH,QAAQ,IAAI,MAAM,CAAA;IAElB;;;OAGG;IACH,cAAc,IAAI,MAAM,EAAE,CAAA;IAE1B;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;IAE9B;;;;;OAKG;IACH,iBAAiB,CAChB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,GACzF,OAAO,CAAC,GAAG,CAAC,CAAA;CACf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,kBAAkB,CAAA;AAChC,cAAc,OAAO,CAAA;AACrB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA"}
|
|
@@ -56,10 +56,10 @@ export interface HSTOperation {
|
|
|
56
56
|
userId?: string;
|
|
57
57
|
/** Additional metadata for custom use cases */
|
|
58
58
|
metadata?: Record<string, any>;
|
|
59
|
-
/**
|
|
60
|
-
|
|
61
|
-
/**
|
|
62
|
-
|
|
59
|
+
/** Ancestor operation ID for batch operations */
|
|
60
|
+
ancestorOperationId?: string;
|
|
61
|
+
/** Descendant operation IDs for batch operations */
|
|
62
|
+
descendantOperationIds?: string[];
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
65
65
|
* Input type for adding operations
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-log.d.ts","sourceRoot":"","sources":["../../../src/types/operation-log.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,QAAQ,CAAA;AAEnF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAE1E;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC5B,kCAAkC;IAClC,EAAE,EAAE,MAAM,CAAA;IAEV,kCAAkC;IAClC,IAAI,EAAE,gBAAgB,CAAA;IAEtB,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAA;IAEZ,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAA;IAEjB,iCAAiC;IACjC,WAAW,EAAE,GAAG,CAAA;IAEhB,gCAAgC;IAChC,UAAU,EAAE,GAAG,CAAA;IAEf,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAA;IAEf,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB,iCAAiC;IACjC,SAAS,EAAE,IAAI,CAAA;IAEf,oEAAoE;IACpE,MAAM,CAAC,EAAE,eAAe,CAAA;IAExB,2CAA2C;IAC3C,UAAU,EAAE,OAAO,CAAA;IAEnB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAE3B,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,2CAA2C;IAC3C,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,iDAAiD;IACjD,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAE1B,+CAA+C;IAC/C,YAAY,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;IAEhD,+CAA+C;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB,iCAAiC;IACjC,MAAM,CAAC,EAAE,MAAM,CAAA;IAEf,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAE9B
|
|
1
|
+
{"version":3,"file":"operation-log.d.ts","sourceRoot":"","sources":["../../../src/types/operation-log.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|
|
@@ -54,6 +54,8 @@ export interface ValidatorOptions {
|
|
|
54
54
|
registry?: Registry;
|
|
55
55
|
/** Whether to validate Link field targets */
|
|
56
56
|
validateLinkTargets?: boolean;
|
|
57
|
+
/** Whether to validate links object (target resolution, backlink consistency, Link field correspondence) */
|
|
58
|
+
validateLinks?: boolean;
|
|
57
59
|
/** Whether to validate workflow reachability */
|
|
58
60
|
validateWorkflows?: boolean;
|
|
59
61
|
/** Whether to validate action registration */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../../../src/types/schema-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAA;AAEvC;;;GAGG;AACH,oBAAY,kBAAkB;IAC7B,wCAAwC;IACxC,KAAK,UAAU;IACf,wCAAwC;IACxC,OAAO,YAAY;IACnB,4BAA4B;IAC5B,IAAI,SAAS;CACb;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,qBAAqB;IACrB,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,mBAAmB;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAChC,qDAAqD;IACrD,KAAK,EAAE,OAAO,CAAA;IACd,gCAAgC;IAChC,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,sBAAsB;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,wBAAwB;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAA;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAChC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,6CAA6C;IAC7C,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,gDAAgD;IAChD,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,8CAA8C;IAC9C,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,qDAAqD;IACrD,0BAA0B,CAAC,EAAE,OAAO,CAAA;CACpC"}
|
|
1
|
+
{"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../../../src/types/schema-validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAA;AAEvC;;;GAGG;AACH,oBAAY,kBAAkB;IAC7B,wCAAwC;IACxC,KAAK,UAAU;IACf,wCAAwC;IACxC,OAAO,YAAY;IACnB,4BAA4B;IAC5B,IAAI,SAAS;CACb;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,qBAAqB;IACrB,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAA;IACf,mBAAmB;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yBAAyB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAChC,qDAAqD;IACrD,KAAK,EAAE,OAAO,CAAA;IACd,gCAAgC;IAChC,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,sBAAsB;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,wBAAwB;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAA;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAChC,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,6CAA6C;IAC7C,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,4GAA4G;IAC5G,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,gDAAgD;IAChD,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,8CAA8C;IAC9C,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,qDAAqD;IACrD,0BAA0B,CAAC,EAAE,OAAO,CAAA;CACpC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type SchemaTypes } from '@stonecrop/aform';
|
|
2
|
+
import type { HSTNode } from './stores/hst';
|
|
3
|
+
/**
|
|
4
|
+
* Recursively collect nested data from HST using pre-resolved schemas.
|
|
5
|
+
*
|
|
6
|
+
* Walks through a resolved schema and collects all values from the HST store,
|
|
7
|
+
* including nested 1:1 Doctype fields and 1:many child arrays.
|
|
8
|
+
*
|
|
9
|
+
* @param resolvedSchema - The already-resolved schema (with nested schemas embedded)
|
|
10
|
+
* @param basePath - The base path in HST (e.g., "customer.123.address")
|
|
11
|
+
* @param hstStore - The HST store instance
|
|
12
|
+
* @returns The collected data object with all nested fields
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* const addressSchema = registry.resolveSchema(addressDoctype.schema)
|
|
17
|
+
* const addressData = collectNestedData(addressSchema, 'customer.123.address', hstStore)
|
|
18
|
+
* // Returns: { street: '123 Main St', city: 'Portland', ... }
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* @public
|
|
22
|
+
*/
|
|
23
|
+
export declare function collectNestedData(resolvedSchema: SchemaTypes[], basePath: string, hstStore: HSTNode): Record<string, unknown>;
|
|
24
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAIN,KAAK,WAAW,EAEhB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAE3C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAChC,cAAc,EAAE,WAAW,EAAE,EAC7B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,OAAO,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkCzB"}
|