@json-layout/core 0.23.0 → 0.24.1
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/package.json +2 -3
- package/src/state/index.js +15 -24
- package/src/state/state-node.js +15 -11
- package/src/state/types.ts +3 -7
- package/types/state/index.d.ts +0 -7
- package/types/state/index.d.ts.map +1 -1
- package/types/state/state-node.d.ts.map +1 -1
- package/types/state/types.d.ts +3 -5
- package/types/state/types.d.ts.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@json-layout/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.24.1",
|
|
4
4
|
"description": "Compilation and state management utilities for JSON Layout.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -68,8 +68,7 @@
|
|
|
68
68
|
"debug": "^4.3.4",
|
|
69
69
|
"immer": "^10.0.3",
|
|
70
70
|
"magicast": "^0.3.3",
|
|
71
|
-
"markdown-it": "^13.0.2"
|
|
72
|
-
"mitt": "^3.0.1"
|
|
71
|
+
"markdown-it": "^13.0.2"
|
|
73
72
|
},
|
|
74
73
|
"devDependencies": {
|
|
75
74
|
"@types/debug": "^4.1.7",
|
package/src/state/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
// eslint-disable-next-line import/no-named-default
|
|
2
|
-
import mittModule from 'mitt'
|
|
3
2
|
import debug from 'debug'
|
|
4
3
|
import { produce } from 'immer'
|
|
5
4
|
import { evalExpression, producePatchedData } from './state-node.js'
|
|
@@ -14,7 +13,6 @@ export { Display } from './utils/display.js'
|
|
|
14
13
|
* @typedef {import('./types.js').StateNode} StateNode
|
|
15
14
|
* @typedef {import('./types.js').StateTree} StateTree
|
|
16
15
|
* @typedef {import('./types.js').StatefulLayoutOptions} StatefulLayoutOptions
|
|
17
|
-
* @typedef {import('./types.js').StatefulLayoutEvents} StatefulLayoutEvents
|
|
18
16
|
* @typedef {import('./types.js').CreateStateTreeContext} CreateStateTreeContext
|
|
19
17
|
* @typedef {import('./types.js').TextFieldNode} TextFieldNode
|
|
20
18
|
* @typedef {import('./types.js').TextareaNode} TextareaNode
|
|
@@ -51,10 +49,6 @@ export const isItemsNode = (node, components) => !!node && isItemsLayout(node.la
|
|
|
51
49
|
|
|
52
50
|
const logDataBinding = debug('jl:data-binding')
|
|
53
51
|
|
|
54
|
-
// ugly fix of modules whose default export were wrongly declared
|
|
55
|
-
// @ts-ignore
|
|
56
|
-
const mitt = /** @type {typeof mittModule.default} */ (mittModule)
|
|
57
|
-
|
|
58
52
|
/**
|
|
59
53
|
* @param {Partial<StatefulLayoutOptions>} partialOptions
|
|
60
54
|
* @param {import('../index.js').CompiledLayout} compiledLayout
|
|
@@ -78,18 +72,15 @@ function fillOptions (partialOptions, compiledLayout) {
|
|
|
78
72
|
removeAdditional: 'error',
|
|
79
73
|
autofocus: false,
|
|
80
74
|
readOnlyPropertiesMode: 'show',
|
|
75
|
+
onAutofocus: () => {},
|
|
76
|
+
onUpdate: () => {},
|
|
77
|
+
onData: () => {},
|
|
81
78
|
...partialOptions,
|
|
82
79
|
messages
|
|
83
80
|
}
|
|
84
81
|
}
|
|
85
82
|
|
|
86
83
|
export class StatefulLayout {
|
|
87
|
-
/**
|
|
88
|
-
* @readonly
|
|
89
|
-
* @type {import('mitt').Emitter<StatefulLayoutEvents>}
|
|
90
|
-
*/
|
|
91
|
-
events
|
|
92
|
-
|
|
93
84
|
/**
|
|
94
85
|
* @private
|
|
95
86
|
* @readonly
|
|
@@ -221,8 +212,6 @@ export class StatefulLayout {
|
|
|
221
212
|
logDataBinding('create stateful layout', compiledLayout, skeletonTree, options, data)
|
|
222
213
|
this._compiledLayout = compiledLayout
|
|
223
214
|
this.skeletonTree = skeletonTree
|
|
224
|
-
/** @type {import('mitt').Emitter<StatefulLayoutEvents>} */
|
|
225
|
-
this.events = mitt()
|
|
226
215
|
this.prepareOptions(options)
|
|
227
216
|
this._autofocusTarget = this.options.autofocus ? '' : null
|
|
228
217
|
this._previousAutofocusTarget = null
|
|
@@ -274,7 +263,7 @@ export class StatefulLayout {
|
|
|
274
263
|
this.createStateTree(true)
|
|
275
264
|
}
|
|
276
265
|
logDataBinding('emit update event', this._data, this._stateTree)
|
|
277
|
-
this.
|
|
266
|
+
this.options.onUpdate(this)
|
|
278
267
|
this.emitData()
|
|
279
268
|
}
|
|
280
269
|
|
|
@@ -285,7 +274,7 @@ export class StatefulLayout {
|
|
|
285
274
|
// emit data event only if the data has changed, as it is immutable this simple comparison should suffice
|
|
286
275
|
if (!this._dataWaitingForBlur && this._data !== this._previousData) {
|
|
287
276
|
logDataBinding('emit data event', this._data)
|
|
288
|
-
this.
|
|
277
|
+
this.options.onData(this._data)
|
|
289
278
|
this._previousData = this._data
|
|
290
279
|
}
|
|
291
280
|
}
|
|
@@ -606,20 +595,22 @@ export class StatefulLayout {
|
|
|
606
595
|
prepareSelectItem (node, rawItem) {
|
|
607
596
|
/** @type {Partial<import('@json-layout/vocabulary').SelectItem>} */
|
|
608
597
|
const item = {}
|
|
598
|
+
/** @type {import('@json-layout/vocabulary').ItemsBasedCompObject} */
|
|
599
|
+
const layout = node.layout
|
|
609
600
|
if (typeof rawItem === 'object') {
|
|
610
|
-
item.value =
|
|
611
|
-
item.key =
|
|
612
|
-
item.title =
|
|
601
|
+
item.value = layout.getItems?.itemValue ? this.evalNodeExpression(node, layout.getItems.itemValue, rawItem) : (layout.getItems?.returnObjects ? rawItem : rawItem.value)
|
|
602
|
+
item.key = layout.getItems?.itemKey ? this.evalNodeExpression(node, layout.getItems.itemKey, rawItem) : rawItem.key
|
|
603
|
+
item.title = layout.getItems?.itemTitle ? this.evalNodeExpression(node, layout.getItems.itemTitle, rawItem) : rawItem.title
|
|
613
604
|
item.value = item.value ?? item.key
|
|
614
605
|
item.key = item.key ?? item.value + ''
|
|
615
606
|
item.title = item.title ?? item.key
|
|
616
607
|
if (!item.icon && rawItem.icon) item.icon = rawItem.icon
|
|
617
608
|
} else {
|
|
618
|
-
item.value =
|
|
619
|
-
item.key =
|
|
620
|
-
item.title =
|
|
609
|
+
item.value = layout.getItems?.itemValue ? this.evalNodeExpression(node, layout.getItems.itemValue, rawItem) : rawItem
|
|
610
|
+
item.key = layout.getItems?.itemKey ? this.evalNodeExpression(node, layout.getItems.itemKey, rawItem) : item.value
|
|
611
|
+
item.title = layout.getItems?.itemTitle ? this.evalNodeExpression(node, layout.getItems.itemTitle, rawItem) : item.value
|
|
621
612
|
}
|
|
622
|
-
if (
|
|
613
|
+
if (layout.getItems?.itemIcon) item.icon = this.evalNodeExpression(node, layout.getItems?.itemIcon, rawItem)
|
|
623
614
|
return /** @type {import('@json-layout/vocabulary').SelectItem} */(item)
|
|
624
615
|
}
|
|
625
616
|
|
|
@@ -662,7 +653,7 @@ export class StatefulLayout {
|
|
|
662
653
|
this._previousAutofocusTarget = autofocusTarget
|
|
663
654
|
setTimeout(() => {
|
|
664
655
|
logDataBinding('emit autofocus event', autofocusTarget)
|
|
665
|
-
this.
|
|
656
|
+
this.options.onAutofocus(autofocusTarget)
|
|
666
657
|
})
|
|
667
658
|
}
|
|
668
659
|
}
|
package/src/state/state-node.js
CHANGED
|
@@ -422,24 +422,28 @@ export function createStateNode (
|
|
|
422
422
|
(validationState.initialized === false && options.initialValidation === 'always') ||
|
|
423
423
|
(validationState.initialized === false && options.initialValidation === 'withData' && !isDataEmpty(data))
|
|
424
424
|
|
|
425
|
+
let nodeData = data
|
|
426
|
+
|
|
427
|
+
if (nodeData === null && !layout.nullable) nodeData = undefined
|
|
428
|
+
|
|
425
429
|
/** @type {unknown} */
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
/** @type {Record<string, unknown>} */(
|
|
430
|
+
if (typeof nodeData === 'object' && !(nodeData instanceof File)) {
|
|
431
|
+
nodeData = produceStateNodeData(
|
|
432
|
+
/** @type {Record<string, unknown>} */(nodeData ?? {}),
|
|
429
433
|
dataPath,
|
|
430
434
|
children,
|
|
431
435
|
context.additionalPropertiesErrors,
|
|
432
436
|
[true, 'unknown'].includes(options.removeAdditional) ? skeleton.propertyKeys : undefined,
|
|
433
437
|
options.readOnlyPropertiesMode === 'remove' ? skeleton.roPropertyKeys : undefined
|
|
434
438
|
)
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
439
|
+
|
|
440
|
+
// the producer is not perfect, sometimes data is considered mutated but it is actually the same
|
|
441
|
+
// we double check here to avoid unnecessary re-renders
|
|
442
|
+
if (nodeData !== data) {
|
|
443
|
+
if (Array.isArray(data) && Array.isArray(nodeData)) nodeData = shallowProduceArray(data, nodeData)
|
|
444
|
+
// @ts-ignore
|
|
445
|
+
else if (typeof data === 'object' && typeof nodeData === 'object') nodeData = shallowProduceObject(data, nodeData)
|
|
446
|
+
}
|
|
443
447
|
}
|
|
444
448
|
|
|
445
449
|
if (layout.getConstData) {
|
package/src/state/types.ts
CHANGED
|
@@ -96,17 +96,13 @@ export interface ValidationState {
|
|
|
96
96
|
validatedChildren: string[]
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
|
|
100
|
-
export type StatefulLayoutEvents = {
|
|
101
|
-
data: any
|
|
102
|
-
update: StatefulLayout
|
|
103
|
-
autofocus: string
|
|
104
|
-
}
|
|
105
|
-
|
|
106
99
|
// StateNodeOptionsBase come from the vocabulary and should contain all node options that can be set in the layout
|
|
107
100
|
export type StateNodeOptions = Required<StateNodeOptionsBase & {
|
|
108
101
|
context: Record<string, any>
|
|
109
102
|
messages: LocaleMessages
|
|
103
|
+
onData: (data: any) => void
|
|
104
|
+
onUpdate: (statefulLayout: StatefulLayout) => void
|
|
105
|
+
onAutofocus: (key: string) => void
|
|
110
106
|
}>
|
|
111
107
|
|
|
112
108
|
export type StatefulLayoutOptions = StateNodeOptions & {
|
package/types/state/index.d.ts
CHANGED
|
@@ -3,7 +3,6 @@ export { Display } from "./utils/display.js";
|
|
|
3
3
|
* @typedef {import('./types.js').StateNode} StateNode
|
|
4
4
|
* @typedef {import('./types.js').StateTree} StateTree
|
|
5
5
|
* @typedef {import('./types.js').StatefulLayoutOptions} StatefulLayoutOptions
|
|
6
|
-
* @typedef {import('./types.js').StatefulLayoutEvents} StatefulLayoutEvents
|
|
7
6
|
* @typedef {import('./types.js').CreateStateTreeContext} CreateStateTreeContext
|
|
8
7
|
* @typedef {import('./types.js').TextFieldNode} TextFieldNode
|
|
9
8
|
* @typedef {import('./types.js').TextareaNode} TextareaNode
|
|
@@ -43,11 +42,6 @@ export class StatefulLayout {
|
|
|
43
42
|
* @param {unknown} [data]
|
|
44
43
|
*/
|
|
45
44
|
constructor(compiledLayout: import("../index.js").CompiledLayout, skeletonTree: import("../index.js").SkeletonTree, options: Partial<StatefulLayoutOptions>, data?: unknown);
|
|
46
|
-
/**
|
|
47
|
-
* @readonly
|
|
48
|
-
* @type {import('mitt').Emitter<StatefulLayoutEvents>}
|
|
49
|
-
*/
|
|
50
|
-
readonly events: import('mitt').Emitter<StatefulLayoutEvents>;
|
|
51
45
|
/**
|
|
52
46
|
* @private
|
|
53
47
|
* @readonly
|
|
@@ -254,7 +248,6 @@ export class StatefulLayout {
|
|
|
254
248
|
export type StateNode = import('./types.js').StateNode;
|
|
255
249
|
export type StateTree = import('./types.js').StateTree;
|
|
256
250
|
export type StatefulLayoutOptions = import('./types.js').StatefulLayoutOptions;
|
|
257
|
-
export type StatefulLayoutEvents = import('./types.js').StatefulLayoutEvents;
|
|
258
251
|
export type CreateStateTreeContext = import('./types.js').CreateStateTreeContext;
|
|
259
252
|
export type TextFieldNode = import('./types.js').TextFieldNode;
|
|
260
253
|
export type TextareaNode = import('./types.js').TextareaNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-node.d.ts","sourceRoot":"","sources":["../../src/state/state-node.js"],"names":[],"mappings":"AAyKA;;;;;;;;;;;GAWG;AACH,4CAXW,OAAO,aAAa,EAAE,kBAAkB,EAAE,cAC1C,OAAO,yBAAyB,EAAE,UAAU,QAC5C,GAAG,WACH,OAAO,YAAY,EAAE,gBAAgB,WACrC,OAAO,oBAAoB,EAAE,OAAO,UACpC,OAAO,yBAAyB,EAAE,cAAc,aAChD,OAAO,MAAM,EAAE,OAAO,KAAK,EAAE,gBAAgB,CAAC,YAC9C,OAAO,iBACP,OAAO,qBAAqB,EAAE,uBAAuB,GAAG,IAAI,GAC1D,GAAG,CAef;AA+BD;;;;;;;;;;;;;;;;;;GAkBG;AACH,yCAjBW,OAAO,YAAY,EAAE,sBAAsB,iBAC3C,OAAO,YAAY,EAAE,gBAAgB,kBACrC,OAAO,aAAa,EAAE,cAAc,OACpC,MAAM,GAAG,MAAM,WACf,MAAM,iBACN,MAAM,GAAG,IAAI,YACb,MAAM,kBACN,MAAM,GAAG,IAAI,YACb,OAAO,aAAa,EAAE,YAAY,mBAClC,OAAO,yBAAyB,EAAE,KAAK,GAAG,IAAI,iBAC9C,OAAO,oBAAoB,EAAE,OAAO,QACpC,OAAO,iBACP,OAAO,qBAAqB,EAAE,uBAAuB,GAAG,IAAI,mBAC5D,OAAO,YAAY,EAAE,eAAe,4DAElC,OAAO,YAAY,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"state-node.d.ts","sourceRoot":"","sources":["../../src/state/state-node.js"],"names":[],"mappings":"AAyKA;;;;;;;;;;;GAWG;AACH,4CAXW,OAAO,aAAa,EAAE,kBAAkB,EAAE,cAC1C,OAAO,yBAAyB,EAAE,UAAU,QAC5C,GAAG,WACH,OAAO,YAAY,EAAE,gBAAgB,WACrC,OAAO,oBAAoB,EAAE,OAAO,UACpC,OAAO,yBAAyB,EAAE,cAAc,aAChD,OAAO,MAAM,EAAE,OAAO,KAAK,EAAE,gBAAgB,CAAC,YAC9C,OAAO,iBACP,OAAO,qBAAqB,EAAE,uBAAuB,GAAG,IAAI,GAC1D,GAAG,CAef;AA+BD;;;;;;;;;;;;;;;;;;GAkBG;AACH,yCAjBW,OAAO,YAAY,EAAE,sBAAsB,iBAC3C,OAAO,YAAY,EAAE,gBAAgB,kBACrC,OAAO,aAAa,EAAE,cAAc,OACpC,MAAM,GAAG,MAAM,WACf,MAAM,iBACN,MAAM,GAAG,IAAI,YACb,MAAM,kBACN,MAAM,GAAG,IAAI,YACb,OAAO,aAAa,EAAE,YAAY,mBAClC,OAAO,yBAAyB,EAAE,KAAK,GAAG,IAAI,iBAC9C,OAAO,oBAAoB,EAAE,OAAO,QACpC,OAAO,iBACP,OAAO,qBAAqB,EAAE,uBAAuB,GAAG,IAAI,mBAC5D,OAAO,YAAY,EAAE,eAAe,4DAElC,OAAO,YAAY,EAAE,SAAS,CAiS1C;AAED,uFAAuF;AACvF,yCADmB,GAAG,QAAQ,OAAO,YAAY,EAAE,SAAS,QAAQ,OAAO,KAAK,GAAG,CAOjF"}
|
package/types/state/types.d.ts
CHANGED
|
@@ -61,14 +61,12 @@ export interface ValidationState {
|
|
|
61
61
|
validatedForm: boolean;
|
|
62
62
|
validatedChildren: string[];
|
|
63
63
|
}
|
|
64
|
-
export type StatefulLayoutEvents = {
|
|
65
|
-
data: any;
|
|
66
|
-
update: StatefulLayout;
|
|
67
|
-
autofocus: string;
|
|
68
|
-
};
|
|
69
64
|
export type StateNodeOptions = Required<StateNodeOptionsBase & {
|
|
70
65
|
context: Record<string, any>;
|
|
71
66
|
messages: LocaleMessages;
|
|
67
|
+
onData: (data: any) => void;
|
|
68
|
+
onUpdate: (statefulLayout: StatefulLayout) => void;
|
|
69
|
+
onAutofocus: (key: string) => void;
|
|
72
70
|
}>;
|
|
73
71
|
export type StatefulLayoutOptions = StateNodeOptions & {
|
|
74
72
|
width: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/state/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/state/types.ts"],"names":[],"mappings":"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"}
|