@memberjunction/core 6.2.0-edge.1 → 6.2.0-edge.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generic/InMemoryLocalStorageProvider.d.ts +5 -0
- package/dist/generic/InMemoryLocalStorageProvider.d.ts.map +1 -1
- package/dist/generic/InMemoryLocalStorageProvider.js +5 -0
- package/dist/generic/InMemoryLocalStorageProvider.js.map +1 -1
- package/dist/generic/JSONType-interfaces/IEntityConfiguration.d.ts +192 -0
- package/dist/generic/JSONType-interfaces/IEntityConfiguration.d.ts.map +1 -1
- package/dist/generic/JSONType-interfaces/IEntityFieldConfiguration.d.ts +28 -0
- package/dist/generic/JSONType-interfaces/IEntityFieldConfiguration.d.ts.map +1 -1
- package/dist/generic/JSONType-interfaces/IEntityRelationshipConfiguration.d.ts +95 -0
- package/dist/generic/JSONType-interfaces/IEntityRelationshipConfiguration.d.ts.map +1 -1
- package/dist/generic/baseEngine.d.ts +21 -1
- package/dist/generic/baseEngine.d.ts.map +1 -1
- package/dist/generic/baseEngine.js +15 -1
- package/dist/generic/baseEngine.js.map +1 -1
- package/dist/generic/baseEntity.d.ts +292 -18
- package/dist/generic/baseEntity.d.ts.map +1 -1
- package/dist/generic/baseEntity.js +553 -105
- package/dist/generic/baseEntity.js.map +1 -1
- package/dist/generic/databaseProviderBase.d.ts +47 -7
- package/dist/generic/databaseProviderBase.d.ts.map +1 -1
- package/dist/generic/databaseProviderBase.js +106 -29
- package/dist/generic/databaseProviderBase.js.map +1 -1
- package/dist/generic/entityConfiguration.d.ts +21 -0
- package/dist/generic/entityConfiguration.d.ts.map +1 -1
- package/dist/generic/entityConfiguration.js +34 -0
- package/dist/generic/entityConfiguration.js.map +1 -1
- package/dist/generic/entityInfo.d.ts +60 -2
- package/dist/generic/entityInfo.d.ts.map +1 -1
- package/dist/generic/entityInfo.js +81 -2
- package/dist/generic/entityInfo.js.map +1 -1
- package/dist/generic/entityRecordNameCache.d.ts +48 -0
- package/dist/generic/entityRecordNameCache.d.ts.map +1 -0
- package/dist/generic/entityRecordNameCache.js +92 -0
- package/dist/generic/entityRecordNameCache.js.map +1 -0
- package/dist/generic/interfaces.d.ts +45 -9
- package/dist/generic/interfaces.d.ts.map +1 -1
- package/dist/generic/interfaces.js.map +1 -1
- package/dist/generic/jsonFieldBinding.d.ts +196 -0
- package/dist/generic/jsonFieldBinding.d.ts.map +1 -0
- package/dist/generic/jsonFieldBinding.js +508 -0
- package/dist/generic/jsonFieldBinding.js.map +1 -0
- package/dist/generic/localCacheManager.d.ts +11 -0
- package/dist/generic/localCacheManager.d.ts.map +1 -1
- package/dist/generic/localCacheManager.js +9 -0
- package/dist/generic/localCacheManager.js.map +1 -1
- package/dist/generic/providerBase.d.ts +150 -33
- package/dist/generic/providerBase.d.ts.map +1 -1
- package/dist/generic/providerBase.js +304 -139
- package/dist/generic/providerBase.js.map +1 -1
- package/dist/generic/runQuery.d.ts +18 -1
- package/dist/generic/runQuery.d.ts.map +1 -1
- package/dist/generic/runQuery.js.map +1 -1
- package/dist/generic/runQuerySQLFilterImplementations.d.ts +7 -1
- package/dist/generic/runQuerySQLFilterImplementations.d.ts.map +1 -1
- package/dist/generic/runQuerySQLFilterImplementations.js +65 -140
- package/dist/generic/runQuerySQLFilterImplementations.js.map +1 -1
- package/dist/generic/telemetryManager.d.ts +11 -0
- package/dist/generic/telemetryManager.d.ts.map +1 -1
- package/dist/generic/telemetryManager.js +40 -0
- package/dist/generic/telemetryManager.js.map +1 -1
- package/dist/generic/util.d.ts +6 -0
- package/dist/generic/util.d.ts.map +1 -1
- package/dist/generic/util.js +20 -0
- package/dist/generic/util.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/views/runView.d.ts +24 -0
- package/dist/views/runView.d.ts.map +1 -1
- package/dist/views/runView.js +4 -0
- package/dist/views/runView.js.map +1 -1
- package/package.json +3 -3
- package/readme.md +29 -2
|
@@ -21,6 +21,11 @@ export declare class InMemoryLocalStorageProvider implements ILocalStorageProvid
|
|
|
21
21
|
* {@link ILocalStorageProvider.SharesReferences}.
|
|
22
22
|
*/
|
|
23
23
|
readonly SharesReferences = true;
|
|
24
|
+
/**
|
|
25
|
+
* `false` — a `Map` on the heap. Nothing written here survives the process, so there is never
|
|
26
|
+
* a second reader; see {@link ILocalStorageProvider.SupportsCrossProcessPersistence}.
|
|
27
|
+
*/
|
|
28
|
+
readonly SupportsCrossProcessPersistence = false;
|
|
24
29
|
/**
|
|
25
30
|
* Gets or creates a category map
|
|
26
31
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InMemoryLocalStorageProvider.d.ts","sourceRoot":"","sources":["../../src/generic/InMemoryLocalStorageProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,qBAAa,4BAA6B,YAAW,qBAAqB;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IACrD,OAAO,CAAC,QAAQ,CAAgD;IAEhE;;;;OAIG;IACH,SAAgB,gBAAgB,QAAQ;IAExC;;OAEG;IACH,OAAO,CAAC,cAAc;IAUT,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAMvE,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAcxF,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAIpE"}
|
|
1
|
+
{"version":3,"file":"InMemoryLocalStorageProvider.d.ts","sourceRoot":"","sources":["../../src/generic/InMemoryLocalStorageProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,qBAAa,4BAA6B,YAAW,qBAAqB;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAa;IACrD,OAAO,CAAC,QAAQ,CAAgD;IAEhE;;;;OAIG;IACH,SAAgB,gBAAgB,QAAQ;IAExC;;;OAGG;IACH,SAAgB,+BAA+B,SAAS;IAExD;;OAEG;IACH,OAAO,CAAC,cAAc;IAUT,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAMvE,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IAcxF,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKnE,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrD,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAIpE"}
|
|
@@ -20,6 +20,11 @@ export class InMemoryLocalStorageProvider {
|
|
|
20
20
|
* {@link ILocalStorageProvider.SharesReferences}.
|
|
21
21
|
*/
|
|
22
22
|
this.SharesReferences = true;
|
|
23
|
+
/**
|
|
24
|
+
* `false` — a `Map` on the heap. Nothing written here survives the process, so there is never
|
|
25
|
+
* a second reader; see {@link ILocalStorageProvider.SupportsCrossProcessPersistence}.
|
|
26
|
+
*/
|
|
27
|
+
this.SupportsCrossProcessPersistence = false;
|
|
23
28
|
}
|
|
24
29
|
static { this.DEFAULT_CATEGORY = 'default'; }
|
|
25
30
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InMemoryLocalStorageProvider.js","sourceRoot":"","sources":["../../src/generic/InMemoryLocalStorageProvider.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,4BAA4B;IAAzC;QAEY,aAAQ,GAAsC,IAAI,GAAG,EAAE,CAAC;QAEhE;;;;WAIG;QACa,qBAAgB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"InMemoryLocalStorageProvider.js","sourceRoot":"","sources":["../../src/generic/InMemoryLocalStorageProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,13 @@ export interface IEntityConfiguration {
|
|
|
31
31
|
* Controls whether attachments are permitted and sets entity-level upload policies.
|
|
32
32
|
*/
|
|
33
33
|
Attachments?: IEntityAttachmentsConfiguration;
|
|
34
|
+
/**
|
|
35
|
+
* Record cloning configuration.
|
|
36
|
+
* Omitted or Enabled=false means the entity cannot be a clone ROOT.
|
|
37
|
+
* It may still be cloned as a child of another root when that root's relationship
|
|
38
|
+
* policy says Deep, unless NotCloneable is true.
|
|
39
|
+
*/
|
|
40
|
+
Clone?: IEntityCloneConfiguration;
|
|
34
41
|
}
|
|
35
42
|
/**
|
|
36
43
|
* Configuration for entity-level file attachments.
|
|
@@ -116,5 +123,190 @@ export interface IEntityFormConfiguration {
|
|
|
116
123
|
* `inclusion: 'Primary'` is never capped by this number.
|
|
117
124
|
*/
|
|
118
125
|
PrimaryRelatedBudget?: number;
|
|
126
|
+
/**
|
|
127
|
+
* Default empty-section behaviour for this form's related sections when a
|
|
128
|
+
* relationship does not set `UI.whenEmpty` itself.
|
|
129
|
+
* `'show'` | `'hide'` | `'more'` — see `IEntityRelationshipUIConfiguration.whenEmpty`.
|
|
130
|
+
* Omit to treat as `'show'`.
|
|
131
|
+
*/
|
|
132
|
+
RelatedWhenEmpty?: 'show' | 'hide' | 'more';
|
|
133
|
+
/**
|
|
134
|
+
* Default for prefetching related-section row counts (badges) when a
|
|
135
|
+
* relationship does not set `UI.showCount` itself. Omit to treat as `true`.
|
|
136
|
+
*/
|
|
137
|
+
ShowRelatedCounts?: boolean;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Configuration for record cloning at the entity level.
|
|
141
|
+
* @see plans/record-cloning/README.md §4.1
|
|
142
|
+
*/
|
|
143
|
+
export interface IEntityCloneConfiguration {
|
|
144
|
+
/** Schema version of this section. Default 1. */
|
|
145
|
+
Version?: 1;
|
|
146
|
+
/** Master switch for cloning this entity as a ROOT. Default false. */
|
|
147
|
+
Enabled?: boolean;
|
|
148
|
+
/** Hard refusal: this entity's rows are never created by the clone engine, as root or as child. Overrides every relationship policy. Use for audit, run, credential and metadata entities. */
|
|
149
|
+
NotCloneable?: boolean;
|
|
150
|
+
/** Shown to users and returned in warnings when NotCloneable or Enabled=false. */
|
|
151
|
+
NotCloneableReason?: string;
|
|
152
|
+
/** Authorization name checked with ancestors. Default 'Clone Records'; resolved per §9.1. */
|
|
153
|
+
RequiredAuthorization?: string;
|
|
154
|
+
/** Caps. Defaults 3 and 500. A plan that exceeds either is Blocked. */
|
|
155
|
+
MaxDepth?: number;
|
|
156
|
+
MaxRecords?: number;
|
|
157
|
+
/** IS-A subtype rows. Default 'include'. */
|
|
158
|
+
Subtypes?: 'include' | 'exclude';
|
|
159
|
+
/** Self-referencing IsHierarchy fields. Default 'subtree'. */
|
|
160
|
+
Hierarchy?: 'subtree' | 'node';
|
|
161
|
+
/** Inbound polymorphic EntityID/RecordID rows (tags, attachments, notes...). Default 'skip'. */
|
|
162
|
+
SoftLinks?: 'skip' | 'include';
|
|
163
|
+
Naming?: ICloneNamingConfig;
|
|
164
|
+
Fields?: ICloneFieldRules;
|
|
165
|
+
/** Per-relationship policy, keyed by "<RelatedEntityName>" or "<RelatedEntityName>.<JoinField>" when an entity has two FKs to the same target. Overrides the relationship's own bag when Locked is false there. */
|
|
166
|
+
Relationships?: Record<string, ICloneRelationshipPolicy>;
|
|
167
|
+
/** Rules applied to descendant rows cloned under THIS root, keyed by descendant entity name. Lets a root shape its children without editing the child entity's bag. */
|
|
168
|
+
Descendants?: Record<string, ICloneDescendantConfig>;
|
|
169
|
+
Hooks?: ICloneHookConfig;
|
|
170
|
+
/** Route the ROOT through an existing creation path instead of a raw Save. Children still clone through the engine against the created root. */
|
|
171
|
+
CreationPath?: ICloneCreationPath;
|
|
172
|
+
/** Offer "create derived record" (BasedOnID-style inheritance) as an alternative to copying. */
|
|
173
|
+
Derivation?: {
|
|
174
|
+
Field: string;
|
|
175
|
+
Label?: string;
|
|
176
|
+
Description?: string;
|
|
177
|
+
};
|
|
178
|
+
/** Persisted embedding columns. Default 'copy' when EmbeddingModelID matches the configured model, else regenerate. */
|
|
179
|
+
Embeddings?: 'copy' | 'regenerate';
|
|
180
|
+
/** The entity's own server class refuses creates by other user types (Users, Roles). The planner blocks early with the entity's reason. */
|
|
181
|
+
RequiredUserType?: 'Owner';
|
|
182
|
+
/** How much the UI may change. Default 'all'. 'none' = confirm only. */
|
|
183
|
+
UserEditable?: 'none' | 'fields' | 'scope' | 'all';
|
|
184
|
+
Presets?: IClonePreset[];
|
|
185
|
+
UI?: {
|
|
186
|
+
Label?: string;
|
|
187
|
+
Icon?: string;
|
|
188
|
+
ConfirmationMessage?: string;
|
|
189
|
+
DefaultPreset?: string;
|
|
190
|
+
/** FK fields the panel offers as retarget pickers (CompanyID → another company). */
|
|
191
|
+
RetargetFields?: string[];
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
export interface ICloneNamingConfig {
|
|
195
|
+
/** Template for the name field and any string unique field with no other rule. '{Name}' interpolates the source value; '{n}' the collision counter. Default 'Copy of {Name}'. */
|
|
196
|
+
Template?: string;
|
|
197
|
+
/** Fields the template applies to. Default: the entity's NameField plus every IsUnique string field not otherwise handled. */
|
|
198
|
+
Fields?: string[];
|
|
199
|
+
/** suffix = apply Template and probe for collisions appending ' {n}'; increment = numeric/versioned bump; prompt = user must supply; none = leave untouched. Default 'suffix'. */
|
|
200
|
+
Strategy?: 'suffix' | 'increment' | 'prompt' | 'none';
|
|
201
|
+
}
|
|
202
|
+
export interface ICloneFieldRules {
|
|
203
|
+
/** Never copied; take the column default. Beyond the always-excluded set (PK, __mj_*, identity, computed, virtual, denied-create). */
|
|
204
|
+
Exclude?: string[];
|
|
205
|
+
/** Literal stamps applied after the copy. Values pass through BaseEntity.Set and validation. */
|
|
206
|
+
Reset?: Record<string, unknown>;
|
|
207
|
+
/** Set to the cloning user's ID. */
|
|
208
|
+
Ownership?: string[];
|
|
209
|
+
/** The user must supply a value; un-suffixable uniques such as Email. Missing → plan Blocked. */
|
|
210
|
+
PromptFor?: string[];
|
|
211
|
+
/** Server-minted values (numbers, slugs): blanked so the entity's Save hook allocates. */
|
|
212
|
+
ServerAllocated?: string[];
|
|
213
|
+
/** Rich rewrites. Evaluated per row with the source row as fields, plus clone context (user, now, root, keyMap) — see §7.5. */
|
|
214
|
+
Rules?: Record<string, unknown>;
|
|
215
|
+
/** JSON columns that embed record IDs, one entry per column. */
|
|
216
|
+
JsonRemap?: IJsonRemapColumn[];
|
|
217
|
+
/** Columns that must be cleared together (all-or-nothing CHECK pairs). Each group is cleared as a unit when any member is reset. */
|
|
218
|
+
ClearTogether?: string[][];
|
|
219
|
+
/** Unique keys the metadata cannot see: composite and filtered indexes. See §7.3. */
|
|
220
|
+
UniqueKeys?: Array<{
|
|
221
|
+
Fields: string[];
|
|
222
|
+
Scope: 'Global' | 'Parent' | 'LiveState';
|
|
223
|
+
ScopeField?: string;
|
|
224
|
+
}>;
|
|
225
|
+
/** Drift guard (§13.3): every field must appear in Copy, Exclude, Reset, Ownership, PromptFor, ServerAllocated or JsonRemap, or validation fails. Default false. */
|
|
226
|
+
Strict?: boolean;
|
|
227
|
+
/** Explicit copy allow-list, used with Strict. */
|
|
228
|
+
Copy?: string[];
|
|
229
|
+
}
|
|
230
|
+
export interface IJsonRemapSpec {
|
|
231
|
+
/** Path selector: dot segments and [*] for arrays, e.g. 'layout.content[*].componentState.config.viewId'. */
|
|
232
|
+
Path: string;
|
|
233
|
+
/** remap = rewrite via key map when the target is in the clone set, else per OnMissing; reuse = leave; regenerate = new UUID; null = set null; drop = remove element/key. */
|
|
234
|
+
Mode: 'remap' | 'reuse' | 'regenerate' | 'null' | 'drop';
|
|
235
|
+
/** Entity the ID refers to, for remap. */
|
|
236
|
+
TargetEntityName?: string;
|
|
237
|
+
/** For remap when the referenced record was not cloned: reuse the original (default) or drop the element and count it. */
|
|
238
|
+
OnMissing?: 'reuse' | 'drop';
|
|
239
|
+
/** Remove arrays and objects left empty by a drop. Default true. */
|
|
240
|
+
CleanEmptyContainers?: boolean;
|
|
241
|
+
}
|
|
242
|
+
/** One JSON column to rewrite: explicit rules, a shipped preset, or both (the preset's rules run first). An entry with neither is invalid. */
|
|
243
|
+
export interface IJsonRemapColumn {
|
|
244
|
+
/** The JSON column. */
|
|
245
|
+
Field: string;
|
|
246
|
+
Rules?: IJsonRemapSpec[];
|
|
247
|
+
/** A shipped rule set for a known payload shape. */
|
|
248
|
+
Preset?: 'dashboard-ui-config' | 'scheduled-job-configuration';
|
|
249
|
+
}
|
|
250
|
+
export interface ICloneRelationshipPolicy {
|
|
251
|
+
Policy?: 'Deep' | 'Reference' | 'Skip';
|
|
252
|
+
/** UI may not change it. */
|
|
253
|
+
Locked?: boolean;
|
|
254
|
+
MaxRecords?: number;
|
|
255
|
+
/** Write the source's positional values after the last Add instead of letting the collection renumber. Default false. */
|
|
256
|
+
PreserveSequence?: boolean;
|
|
257
|
+
/** Formula over the child row (fields.X); only rows evaluating true are cloned. */
|
|
258
|
+
IncludeWhen?: string;
|
|
259
|
+
/** Rows left out even when the edge is Deep, e.g. per-device or per-person settings. A row matching any entry is not cloned, nor are its descendants. */
|
|
260
|
+
ExcludeRows?: ICloneRowExclusion[];
|
|
261
|
+
Fields?: ICloneFieldRules;
|
|
262
|
+
}
|
|
263
|
+
/** Matches a child row by one field: equal to one of `Equals`, or a string starting with one of `StartsWith` (case-sensitive). */
|
|
264
|
+
export interface ICloneRowExclusion {
|
|
265
|
+
Field: string;
|
|
266
|
+
Equals?: Array<string | number | boolean>;
|
|
267
|
+
StartsWith?: string[];
|
|
268
|
+
}
|
|
269
|
+
export interface ICloneDescendantConfig {
|
|
270
|
+
Fields?: ICloneFieldRules;
|
|
271
|
+
Naming?: ICloneNamingConfig;
|
|
272
|
+
}
|
|
273
|
+
export interface ICloneHookConfig {
|
|
274
|
+
/** Entity Actions (Create/Update invocations) during the clone save. Default 'fire', as for any create. */
|
|
275
|
+
EntityActions?: 'suppress' | 'fire';
|
|
276
|
+
/** Entity AI Actions. Default 'suppress': each can be a paid model call per cloned row. */
|
|
277
|
+
AIActions?: 'suppress' | 'fire';
|
|
278
|
+
/** Children the entity's own server Save() creates. The engine never clones these, and warns if a relationship policy tries. */
|
|
279
|
+
ServerGeneratedChildren?: string[];
|
|
280
|
+
/** Values set before the save to keep expensive hooks quiet, restored on the row after the clone when RestoreAfterSave is true. */
|
|
281
|
+
PreSaveOverrides?: Record<string, unknown>;
|
|
282
|
+
RestoreAfterSave?: string[];
|
|
283
|
+
/** Action run once per created ROOT after commit, with the new key. */
|
|
284
|
+
PostCloneAction?: string;
|
|
285
|
+
}
|
|
286
|
+
export interface ICloneCreationPath {
|
|
287
|
+
Kind: 'Action' | 'RemoteOperation';
|
|
288
|
+
Name: string;
|
|
289
|
+
/** Source field or formula → input param. */
|
|
290
|
+
InputMapping: Record<string, string>;
|
|
291
|
+
/** Output param holding the created key. */
|
|
292
|
+
OutputKeyParam: string;
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* A named clone scope a user can pick instead of adjusting options one by one.
|
|
296
|
+
* `Options` apply as if the request had sent them (so `UserEditable` still limits them);
|
|
297
|
+
* `Relationships` override edge policies by related entity name, like `Clone.Relationships`.
|
|
298
|
+
*/
|
|
299
|
+
export interface IClonePreset {
|
|
300
|
+
/** Stable identifier sent by clients in `Options.Preset`. */
|
|
301
|
+
Key: string;
|
|
302
|
+
/** Name shown in the preset picker. */
|
|
303
|
+
Label: string;
|
|
304
|
+
Description?: string;
|
|
305
|
+
/** Plan options this preset sets, e.g. `{ "MaxDepth": 2 }`. */
|
|
306
|
+
Options?: Record<string, unknown>;
|
|
307
|
+
/** Edge policy overrides, keyed by related entity name. */
|
|
308
|
+
Relationships?: Record<string, {
|
|
309
|
+
Policy: 'Deep' | 'Reference' | 'Skip';
|
|
310
|
+
}>;
|
|
119
311
|
}
|
|
120
312
|
//# sourceMappingURL=IEntityConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IEntityConfiguration.d.ts","sourceRoot":"","sources":["../../../src/generic/JSONType-interfaces/IEntityConfiguration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,oBAAoB;IACjC;;;OAGG;IACH,EAAE,CAAC,EAAE,sBAAsB,CAAC;IAE5B;;;OAGG;IACH,WAAW,CAAC,EAAE,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"IEntityConfiguration.d.ts","sourceRoot":"","sources":["../../../src/generic/JSONType-interfaces/IEntityConfiguration.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,11 @@ export interface IEntityFieldConfiguration {
|
|
|
14
14
|
* Hierarchy and tree structure configuration for self-referencing foreign keys.
|
|
15
15
|
*/
|
|
16
16
|
Hierarchy?: IEntityFieldHierarchyConfig;
|
|
17
|
+
/**
|
|
18
|
+
* Record cloning configuration for this field.
|
|
19
|
+
* @see plans/record-cloning/README.md §4.3
|
|
20
|
+
*/
|
|
21
|
+
Clone?: IEntityFieldCloneConfiguration;
|
|
17
22
|
}
|
|
18
23
|
/**
|
|
19
24
|
* Hierarchy options to explicitly declare recursive tree hierarchies.
|
|
@@ -28,4 +33,27 @@ export interface IEntityFieldHierarchyConfig {
|
|
|
28
33
|
*/
|
|
29
34
|
MaxDepth?: number;
|
|
30
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Record cloning configuration for an entity field.
|
|
38
|
+
* @see plans/record-cloning/README.md §4.3
|
|
39
|
+
*/
|
|
40
|
+
export interface IEntityFieldCloneConfiguration {
|
|
41
|
+
/** Copy (default) | Reset (column default, or Value) | Suffix (naming template) | Prompt | Ownership | ServerAllocated | Remap (FK inside the set → new key) | RemapJSON | Transform */
|
|
42
|
+
Policy?: 'Copy' | 'Reset' | 'Suffix' | 'Prompt' | 'Ownership' | 'ServerAllocated' | 'Remap' | 'RemapJSON' | 'Transform';
|
|
43
|
+
Value?: unknown;
|
|
44
|
+
JsonRemap?: IJsonRemapSpec[];
|
|
45
|
+
Transform?: unknown;
|
|
46
|
+
}
|
|
47
|
+
export interface IJsonRemapSpec {
|
|
48
|
+
/** Path selector: dot segments and [*] for arrays, e.g. 'layout.content[*].componentState.config.viewId'. */
|
|
49
|
+
Path: string;
|
|
50
|
+
/** remap = rewrite via key map when the target is in the clone set, else per OnMissing; reuse = leave; regenerate = new UUID; null = set null; drop = remove element/key. */
|
|
51
|
+
Mode: 'remap' | 'reuse' | 'regenerate' | 'null' | 'drop';
|
|
52
|
+
/** Entity the ID refers to, for remap. */
|
|
53
|
+
TargetEntityName?: string;
|
|
54
|
+
/** For remap when the referenced record was not cloned: reuse the original (default) or drop the element and count it. */
|
|
55
|
+
OnMissing?: 'reuse' | 'drop';
|
|
56
|
+
/** Remove arrays and objects left empty by a drop. Default true. */
|
|
57
|
+
CleanEmptyContainers?: boolean;
|
|
58
|
+
}
|
|
31
59
|
//# sourceMappingURL=IEntityFieldConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IEntityFieldConfiguration.d.ts","sourceRoot":"","sources":["../../../src/generic/JSONType-interfaces/IEntityFieldConfiguration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"IEntityFieldConfiguration.d.ts","sourceRoot":"","sources":["../../../src/generic/JSONType-interfaces/IEntityFieldConfiguration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,2BAA2B,CAAC;IAExC;;;OAGG;IACH,KAAK,CAAC,EAAE,8BAA8B,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IACxC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC3C,wLAAwL;IACxL,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,iBAAiB,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,CAAC;IACxH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC3B,6GAA6G;IAC7G,IAAI,EAAE,MAAM,CAAC;IACb,6KAA6K;IAC7K,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;IACzD,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0HAA0H;IAC1H,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7B,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAClC"}
|
|
@@ -32,6 +32,11 @@ export interface IEntityRelationshipConfiguration {
|
|
|
32
32
|
* Null = the parent entity's related-role ranker decides.
|
|
33
33
|
*/
|
|
34
34
|
UI?: IEntityRelationshipUIConfiguration;
|
|
35
|
+
/**
|
|
36
|
+
* Clone policy for rows of RelatedEntity that point at this entity through RelatedEntityJoinField.
|
|
37
|
+
* @see plans/record-cloning/README.md §4.2
|
|
38
|
+
*/
|
|
39
|
+
Clone?: ICloneRelationshipPolicy;
|
|
35
40
|
}
|
|
36
41
|
/**
|
|
37
42
|
* How this relationship appears on the parent entity's generated form.
|
|
@@ -71,5 +76,95 @@ export interface IEntityRelationshipUIConfiguration {
|
|
|
71
76
|
* after lead contributions such as Overview). Omit = 0.
|
|
72
77
|
*/
|
|
73
78
|
sortKey?: number;
|
|
79
|
+
/**
|
|
80
|
+
* What the parent form does with this section when it has 0 rows.
|
|
81
|
+
* Counts are fetched in one batched round trip when the record loads.
|
|
82
|
+
*
|
|
83
|
+
* - `'show'` — always show (use when users create the first row here).
|
|
84
|
+
* - `'hide'` — hide while empty. The "show empty fields" toolbar toggle reveals it.
|
|
85
|
+
* - `'more'` — move into the More folder while empty; returns to its normal
|
|
86
|
+
* placement once it has rows.
|
|
87
|
+
*
|
|
88
|
+
* Omit = inherit the parent entity's `UI.Form.RelatedWhenEmpty`, else `'show'`.
|
|
89
|
+
*/
|
|
90
|
+
whenEmpty?: 'show' | 'hide' | 'more';
|
|
91
|
+
/**
|
|
92
|
+
* Prefetch this section's row count when the record loads and show it as a
|
|
93
|
+
* badge. Set `false` for known-expensive related entities.
|
|
94
|
+
*
|
|
95
|
+
* Omit = inherit the parent entity's `UI.Form.ShowRelatedCounts`, else `true`.
|
|
96
|
+
*/
|
|
97
|
+
showCount?: boolean;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Clone policy for rows of RelatedEntity that point at this entity through RelatedEntityJoinField.
|
|
101
|
+
* @see plans/record-cloning/README.md §4.2
|
|
102
|
+
*/
|
|
103
|
+
export interface ICloneRelationshipPolicy {
|
|
104
|
+
Policy?: 'Deep' | 'Reference' | 'Skip';
|
|
105
|
+
/** UI may not change it. */
|
|
106
|
+
Locked?: boolean;
|
|
107
|
+
MaxRecords?: number;
|
|
108
|
+
/** Write the source's positional values after the last Add instead of letting the collection renumber. Default false. */
|
|
109
|
+
PreserveSequence?: boolean;
|
|
110
|
+
/** Formula over the child row (fields.X); only rows evaluating true are cloned. */
|
|
111
|
+
IncludeWhen?: string;
|
|
112
|
+
/** Rows left out even when the edge is Deep, e.g. per-device or per-person settings. A row matching any entry is not cloned, nor are its descendants. */
|
|
113
|
+
ExcludeRows?: ICloneRowExclusion[];
|
|
114
|
+
Fields?: ICloneFieldRules;
|
|
115
|
+
}
|
|
116
|
+
/** Matches a child row by one field: equal to one of `Equals`, or a string starting with one of `StartsWith` (case-sensitive). */
|
|
117
|
+
export interface ICloneRowExclusion {
|
|
118
|
+
Field: string;
|
|
119
|
+
Equals?: Array<string | number | boolean>;
|
|
120
|
+
StartsWith?: string[];
|
|
121
|
+
}
|
|
122
|
+
export interface ICloneFieldRules {
|
|
123
|
+
/** Never copied; take the column default. Beyond the always-excluded set (PK, __mj_*, identity, computed, virtual, denied-create). */
|
|
124
|
+
Exclude?: string[];
|
|
125
|
+
/** Literal stamps applied after the copy. Values pass through BaseEntity.Set and validation. */
|
|
126
|
+
Reset?: Record<string, unknown>;
|
|
127
|
+
/** Set to the cloning user's ID. */
|
|
128
|
+
Ownership?: string[];
|
|
129
|
+
/** The user must supply a value; un-suffixable uniques such as Email. Missing → plan Blocked. */
|
|
130
|
+
PromptFor?: string[];
|
|
131
|
+
/** Server-minted values (numbers, slugs): blanked so the entity's Save hook allocates. */
|
|
132
|
+
ServerAllocated?: string[];
|
|
133
|
+
/** Rich rewrites. Evaluated per row with the source row as fields, plus clone context (user, now, root, keyMap) — see §7.5. */
|
|
134
|
+
Rules?: Record<string, unknown>;
|
|
135
|
+
/** JSON columns that embed record IDs, one entry per column. */
|
|
136
|
+
JsonRemap?: IJsonRemapColumn[];
|
|
137
|
+
/** Columns that must be cleared together (all-or-nothing CHECK pairs). Each group is cleared as a unit when any member is reset. */
|
|
138
|
+
ClearTogether?: string[][];
|
|
139
|
+
/** Unique keys the metadata cannot see: composite and filtered indexes. See §7.3. */
|
|
140
|
+
UniqueKeys?: Array<{
|
|
141
|
+
Fields: string[];
|
|
142
|
+
Scope: 'Global' | 'Parent' | 'LiveState';
|
|
143
|
+
ScopeField?: string;
|
|
144
|
+
}>;
|
|
145
|
+
/** Drift guard (§13.3): every field must appear in Copy, Exclude, Reset, Ownership, PromptFor, ServerAllocated or JsonRemap, or validation fails. Default false. */
|
|
146
|
+
Strict?: boolean;
|
|
147
|
+
/** Explicit copy allow-list, used with Strict. */
|
|
148
|
+
Copy?: string[];
|
|
149
|
+
}
|
|
150
|
+
export interface IJsonRemapSpec {
|
|
151
|
+
/** Path selector: dot segments and [*] for arrays, e.g. 'layout.content[*].componentState.config.viewId'. */
|
|
152
|
+
Path: string;
|
|
153
|
+
/** remap = rewrite via key map when the target is in the clone set, else per OnMissing; reuse = leave; regenerate = new UUID; null = set null; drop = remove element/key. */
|
|
154
|
+
Mode: 'remap' | 'reuse' | 'regenerate' | 'null' | 'drop';
|
|
155
|
+
/** Entity the ID refers to, for remap. */
|
|
156
|
+
TargetEntityName?: string;
|
|
157
|
+
/** For remap when the referenced record was not cloned: reuse the original (default) or drop the element and count it. */
|
|
158
|
+
OnMissing?: 'reuse' | 'drop';
|
|
159
|
+
/** Remove arrays and objects left empty by a drop. Default true. */
|
|
160
|
+
CleanEmptyContainers?: boolean;
|
|
161
|
+
}
|
|
162
|
+
/** One JSON column to rewrite: explicit rules, a shipped preset, or both (the preset's rules run first). An entry with neither is invalid. */
|
|
163
|
+
export interface IJsonRemapColumn {
|
|
164
|
+
/** The JSON column. */
|
|
165
|
+
Field: string;
|
|
166
|
+
Rules?: IJsonRemapSpec[];
|
|
167
|
+
/** A shipped rule set for a known payload shape. */
|
|
168
|
+
Preset?: 'dashboard-ui-config' | 'scheduled-job-configuration';
|
|
74
169
|
}
|
|
75
170
|
//# sourceMappingURL=IEntityRelationshipConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IEntityRelationshipConfiguration.d.ts","sourceRoot":"","sources":["../../../src/generic/JSONType-interfaces/IEntityRelationshipConfiguration.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,gCAAgC;IAC7C;;;OAGG;IACH,EAAE,CAAC,EAAE,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"IEntityRelationshipConfiguration.d.ts","sourceRoot":"","sources":["../../../src/generic/JSONType-interfaces/IEntityRelationshipConfiguration.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,6 +83,21 @@ export declare class BaseEnginePropertyConfig extends BaseInfo {
|
|
|
83
83
|
* If not specified, the LocalCacheManager's default TTL will be used (typically 5 minutes).
|
|
84
84
|
*/
|
|
85
85
|
CacheLocalTTL?: number;
|
|
86
|
+
/**
|
|
87
|
+
* Whether the engine loads the entity's binary fields (`varbinary` / `bytea` columns, held as
|
|
88
|
+
* base64 strings) along with the rest. Engines leave them out by default, like every RunView,
|
|
89
|
+
* so a cached entity never carries large embeddings or file content it does not use.
|
|
90
|
+
*
|
|
91
|
+
* - `true` — always load them.
|
|
92
|
+
* - `'DatabaseProviderOnly'` — load them only when the engine runs on a database provider
|
|
93
|
+
* (the server), never over a network provider (the browser). Use this for an engine shared
|
|
94
|
+
* by both tiers where only server code reads the binary values — e.g. persisted embeddings
|
|
95
|
+
* that only the server indexes — so the browser never downloads them.
|
|
96
|
+
* - `false` / omitted — never load them.
|
|
97
|
+
*
|
|
98
|
+
* @default false
|
|
99
|
+
*/
|
|
100
|
+
IncludeBinaryFields?: boolean | 'DatabaseProviderOnly';
|
|
86
101
|
/**
|
|
87
102
|
* Controls whether loaded rows are returned as full BaseEntity subclass instances
|
|
88
103
|
* ('entity_object') or plain JavaScript objects ('simple').
|
|
@@ -825,11 +840,16 @@ export declare abstract class BaseEngine<T> extends BaseSingleton<T> implements
|
|
|
825
840
|
* a newer refresh was initiated afterward and read a more-recent state.
|
|
826
841
|
*/
|
|
827
842
|
protected isLatestConfigRefresh(propertyName: string, generation: number): boolean;
|
|
843
|
+
/**
|
|
844
|
+
* Resolves {@link BaseEnginePropertyConfig.IncludeBinaryFields} for this engine's provider:
|
|
845
|
+
* `'DatabaseProviderOnly'` becomes true on a database provider and false on any other.
|
|
846
|
+
*/
|
|
847
|
+
protected ResolveConfigIncludeBinaryFields(config: BaseEnginePropertyConfig): boolean;
|
|
828
848
|
/**
|
|
829
849
|
* Builds the RunViewParams for an engine config. Used by LoadSingleEntityConfig,
|
|
830
850
|
* LoadMultipleEntityConfigs, RegisterCacheChangeCallbacks, and syncLocalCacheForConfig
|
|
831
851
|
* to ensure the fingerprint-affecting params (EntityName, ExtraFilter, OrderBy,
|
|
832
|
-
* IgnoreMaxRows) are always consistent — preventing cache key mismatches that break
|
|
852
|
+
* IgnoreMaxRows, IncludeBinaryFields) are always consistent — preventing cache key mismatches that break
|
|
833
853
|
* cross-server invalidation via Redis pub/sub and local cache upsert/remove operations.
|
|
834
854
|
*/
|
|
835
855
|
protected BuildRunViewParamsForConfig(config: BaseEnginePropertyConfig, bypassCache?: boolean): RunViewParams;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseEngine.d.ts","sourceRoot":"","sources":["../../src/generic/baseEngine.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"baseEngine.d.ts","sourceRoot":"","sources":["../../src/generic/baseEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1541,11 +1541,21 @@ export class BaseEngine extends BaseSingleton {
|
|
|
1541
1541
|
isLatestConfigRefresh(propertyName, generation) {
|
|
1542
1542
|
return this._configRefreshGeneration.get(propertyName) === generation;
|
|
1543
1543
|
}
|
|
1544
|
+
/**
|
|
1545
|
+
* Resolves {@link BaseEnginePropertyConfig.IncludeBinaryFields} for this engine's provider:
|
|
1546
|
+
* `'DatabaseProviderOnly'` becomes true on a database provider and false on any other.
|
|
1547
|
+
*/
|
|
1548
|
+
ResolveConfigIncludeBinaryFields(config) {
|
|
1549
|
+
if (config.IncludeBinaryFields === 'DatabaseProviderOnly') {
|
|
1550
|
+
return this.ProviderToUse?.ProviderType === ProviderType.Database;
|
|
1551
|
+
}
|
|
1552
|
+
return config.IncludeBinaryFields === true;
|
|
1553
|
+
}
|
|
1544
1554
|
/**
|
|
1545
1555
|
* Builds the RunViewParams for an engine config. Used by LoadSingleEntityConfig,
|
|
1546
1556
|
* LoadMultipleEntityConfigs, RegisterCacheChangeCallbacks, and syncLocalCacheForConfig
|
|
1547
1557
|
* to ensure the fingerprint-affecting params (EntityName, ExtraFilter, OrderBy,
|
|
1548
|
-
* IgnoreMaxRows) are always consistent — preventing cache key mismatches that break
|
|
1558
|
+
* IgnoreMaxRows, IncludeBinaryFields) are always consistent — preventing cache key mismatches that break
|
|
1549
1559
|
* cross-server invalidation via Redis pub/sub and local cache upsert/remove operations.
|
|
1550
1560
|
*/
|
|
1551
1561
|
BuildRunViewParamsForConfig(config, bypassCache = false) {
|
|
@@ -1558,6 +1568,10 @@ export class BaseEngine extends BaseSingleton {
|
|
|
1558
1568
|
_fromEngine: true, // Mark as engine-initiated to avoid false positive telemetry warnings
|
|
1559
1569
|
CacheLocal: config.CacheLocal,
|
|
1560
1570
|
CacheLocalTTL: config.CacheLocalTTL,
|
|
1571
|
+
// Present only when true. RunViewParams.Equals treats undefined and false alike, so
|
|
1572
|
+
// fingerprints are unaffected, and an engine that never asked for binary fields sends
|
|
1573
|
+
// the same request shape it always did (a network provider forwards any key that is set).
|
|
1574
|
+
...(this.ResolveConfigIncludeBinaryFields(config) ? { IncludeBinaryFields: true } : {}),
|
|
1561
1575
|
BypassCache: bypassCache
|
|
1562
1576
|
};
|
|
1563
1577
|
}
|