json-renderers 1.12.3 → 1.13.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.
Files changed (178) hide show
  1. package/docs/dist/v13/min.js +678 -0
  2. package/docs/index.html +14 -0
  3. package/package.json +3 -3
  4. package/src/index.js +2 -2
  5. package/src/v13/buildSpec/index.js +28 -0
  6. package/src/v13/index.js +41 -0
  7. package/src/{v10 → v13}/meta.js +1 -1
  8. package/src/v10/dataLists/fragments.json +0 -1
  9. package/src/v10/dataLists/index.js +0 -32
  10. package/src/v10/dataLists/skeleton.json +0 -38
  11. package/src/v10/index.js +0 -142
  12. package/src/v10/select/fragments.json +0 -1
  13. package/src/v10/select/index.js +0 -34
  14. package/src/v10/select/skeleton.json +0 -23
  15. package/src/v10/table/index.js +0 -35
  16. package/src/v10/table/skeleton.json +0 -47
  17. package/src/v5/dataLists/fragments.json +0 -1
  18. package/src/v5/dataLists/index.js +0 -26
  19. package/src/v5/dataLists/skeleton.json +0 -20
  20. package/src/v5/form/attachFormClickEventListener.js +0 -27
  21. package/src/v5/form/clickFunc/extractFormData.js +0 -27
  22. package/src/v5/form/clickFunc/handleNew.js +0 -24
  23. package/src/v5/form/clickFunc/handleSave.js +0 -33
  24. package/src/v5/form/clickFunc/index.js +0 -32
  25. package/src/v5/form/index.js +0 -87
  26. package/src/v5/form/structure.json +0 -410
  27. package/src/v5/index.js +0 -150
  28. package/src/v5/meta.js +0 -6
  29. package/src/v5/navTabs/fragments.json +0 -59
  30. package/src/v5/navTabs/index.js +0 -82
  31. package/src/v5/navTabs/skeleton.json +0 -18
  32. package/src/v5/registerGlobal.js +0 -14
  33. package/src/v5/select/fragments.json +0 -1
  34. package/src/v5/select/index.js +0 -31
  35. package/src/v5/select/skeleton.json +0 -21
  36. package/src/v5/table/attachTableClickEventListener.js +0 -22
  37. package/src/v5/table/buildTableDataAsJson.js +0 -19
  38. package/src/v5/table/buildTableDomElement.js +0 -21
  39. package/src/v5/table/buildTableStructureSpec.js +0 -28
  40. package/src/v5/table/clickFunc/v3/createTable.js +0 -16
  41. package/src/v5/table/clickFunc/v3/getContainer/extractClickedRowDetails.js +0 -23
  42. package/src/v5/table/clickFunc/v3/getContainer/getOrCreateChildTableContainer.js +0 -21
  43. package/src/v5/table/clickFunc/v3/getContainer/index.js +0 -39
  44. package/src/v5/table/clickFunc/v3/getContainer/isSameRowClickedToToggleOff.js +0 -14
  45. package/src/v5/table/clickFunc/v3/getContainer/resetAndShowChildTableContainer.js +0 -12
  46. package/src/v5/table/clickFunc/v3/index.js +0 -21
  47. package/src/v5/table/fragments.json +0 -112
  48. package/src/v5/table/index.js +0 -72
  49. package/src/v5/table/resolveTargetContainer.js +0 -9
  50. package/src/v5/table/skeleton.json +0 -371
  51. package/src/v6/dataLists/fragments.json +0 -1
  52. package/src/v6/dataLists/index.js +0 -32
  53. package/src/v6/dataLists/skeleton.json +0 -38
  54. package/src/v6/form/attachFormClickEventListener.js +0 -27
  55. package/src/v6/form/clickFunc/extractFormData.js +0 -27
  56. package/src/v6/form/clickFunc/handleNew.js +0 -24
  57. package/src/v6/form/clickFunc/handleSave.js +0 -33
  58. package/src/v6/form/clickFunc/index.js +0 -32
  59. package/src/v6/form/index.js +0 -87
  60. package/src/v6/form/structure.json +0 -410
  61. package/src/v6/index.js +0 -150
  62. package/src/v6/meta.js +0 -6
  63. package/src/v6/navTabs/fragments.json +0 -59
  64. package/src/v6/navTabs/index.js +0 -82
  65. package/src/v6/navTabs/skeleton.json +0 -18
  66. package/src/v6/registerGlobal.js +0 -14
  67. package/src/v6/select/fragments.json +0 -1
  68. package/src/v6/select/index.js +0 -34
  69. package/src/v6/select/skeleton.json +0 -23
  70. package/src/v6/table/attachTableClickEventListener.js +0 -22
  71. package/src/v6/table/buildTableDataAsJson.js +0 -19
  72. package/src/v6/table/buildTableDomElement.js +0 -21
  73. package/src/v6/table/buildTableStructureSpec.js +0 -28
  74. package/src/v6/table/clickFunc/v3/createTable.js +0 -16
  75. package/src/v6/table/clickFunc/v3/getContainer/extractClickedRowDetails.js +0 -23
  76. package/src/v6/table/clickFunc/v3/getContainer/getOrCreateChildTableContainer.js +0 -21
  77. package/src/v6/table/clickFunc/v3/getContainer/index.js +0 -39
  78. package/src/v6/table/clickFunc/v3/getContainer/isSameRowClickedToToggleOff.js +0 -14
  79. package/src/v6/table/clickFunc/v3/getContainer/resetAndShowChildTableContainer.js +0 -12
  80. package/src/v6/table/clickFunc/v3/index.js +0 -21
  81. package/src/v6/table/fragments.json +0 -112
  82. package/src/v6/table/index.js +0 -72
  83. package/src/v6/table/resolveTargetContainer.js +0 -9
  84. package/src/v6/table/skeleton.json +0 -371
  85. package/src/v7/common/deriveColumnsFromData.js +0 -20
  86. package/src/v7/dataLists/fragments.json +0 -1
  87. package/src/v7/dataLists/index.js +0 -32
  88. package/src/v7/dataLists/skeleton.json +0 -38
  89. package/src/v7/form/attachFormClickEventListener.js +0 -27
  90. package/src/v7/form/clickFunc/extractFormData.js +0 -27
  91. package/src/v7/form/clickFunc/handleNew.js +0 -24
  92. package/src/v7/form/clickFunc/handleSave.js +0 -33
  93. package/src/v7/form/clickFunc/index.js +0 -32
  94. package/src/v7/form/index.js +0 -87
  95. package/src/v7/form/structure.json +0 -410
  96. package/src/v7/index.js +0 -141
  97. package/src/v7/meta.js +0 -6
  98. package/src/v7/navTabs/fragments.json +0 -59
  99. package/src/v7/navTabs/index.js +0 -82
  100. package/src/v7/navTabs/skeleton.json +0 -18
  101. package/src/v7/registerGlobal.js +0 -14
  102. package/src/v7/select/fragments.json +0 -1
  103. package/src/v7/select/index.js +0 -34
  104. package/src/v7/select/skeleton.json +0 -23
  105. package/src/v7/table/attachTableClickEventListener.js +0 -28
  106. package/src/v7/table/buildTableDataAsJson.js +0 -25
  107. package/src/v7/table/buildTableDomElement.js +0 -25
  108. package/src/v7/table/buildTableStructureSpec.js +0 -33
  109. package/src/v7/table/clickFunc/v3/createTable.js +0 -20
  110. package/src/v7/table/clickFunc/v3/getContainer/extractClickedRowDetails.js +0 -27
  111. package/src/v7/table/clickFunc/v3/getContainer/getOrCreateChildTableContainer.js +0 -24
  112. package/src/v7/table/clickFunc/v3/getContainer/index.js +0 -44
  113. package/src/v7/table/clickFunc/v3/getContainer/isSameRowClickedToToggleOff.js +0 -17
  114. package/src/v7/table/clickFunc/v3/getContainer/resetAndShowChildTableContainer.js +0 -15
  115. package/src/v7/table/clickFunc/v3/index.js +0 -35
  116. package/src/v7/table/fragments.json +0 -112
  117. package/src/v7/table/index.js +0 -82
  118. package/src/v7/table/resolveTargetContainer.js +0 -11
  119. package/src/v7/table/skeleton.json +0 -371
  120. package/src/v8/common/deriveColumnsFromData.js +0 -20
  121. package/src/v8/dataLists/fragments.json +0 -1
  122. package/src/v8/dataLists/index.js +0 -32
  123. package/src/v8/dataLists/skeleton.json +0 -38
  124. package/src/v8/form/attachFormClickEventListener.js +0 -27
  125. package/src/v8/form/clickFunc/extractFormData.js +0 -27
  126. package/src/v8/form/clickFunc/handleNew.js +0 -24
  127. package/src/v8/form/clickFunc/handleSave.js +0 -33
  128. package/src/v8/form/clickFunc/index.js +0 -32
  129. package/src/v8/form/index.js +0 -87
  130. package/src/v8/form/structure.json +0 -410
  131. package/src/v8/index.js +0 -141
  132. package/src/v8/meta.js +0 -6
  133. package/src/v8/navTabs/fragments.json +0 -59
  134. package/src/v8/navTabs/index.js +0 -82
  135. package/src/v8/navTabs/skeleton.json +0 -18
  136. package/src/v8/registerGlobal.js +0 -14
  137. package/src/v8/select/fragments.json +0 -1
  138. package/src/v8/select/index.js +0 -34
  139. package/src/v8/select/skeleton.json +0 -23
  140. package/src/v8/table/attachTableClickEventListener.js +0 -28
  141. package/src/v8/table/buildTableDataAsJson.js +0 -25
  142. package/src/v8/table/buildTableDomElement.js +0 -25
  143. package/src/v8/table/buildTableStructureSpec.js +0 -33
  144. package/src/v8/table/clickFunc/v3/createTable.js +0 -20
  145. package/src/v8/table/clickFunc/v3/getContainer/extractClickedRowDetails.js +0 -27
  146. package/src/v8/table/clickFunc/v3/getContainer/getOrCreateChildTableContainer.js +0 -24
  147. package/src/v8/table/clickFunc/v3/getContainer/index.js +0 -44
  148. package/src/v8/table/clickFunc/v3/getContainer/isSameRowClickedToToggleOff.js +0 -17
  149. package/src/v8/table/clickFunc/v3/getContainer/resetAndShowChildTableContainer.js +0 -15
  150. package/src/v8/table/clickFunc/v3/index.js +0 -35
  151. package/src/v8/table/fragments.json +0 -112
  152. package/src/v8/table/index.js +0 -82
  153. package/src/v8/table/resolveTargetContainer.js +0 -11
  154. package/src/v8/table/skeleton.json +0 -371
  155. package/src/v9/common/deriveColumnsFromData.js +0 -20
  156. package/src/v9/dataLists/fragments.json +0 -1
  157. package/src/v9/dataLists/index.js +0 -32
  158. package/src/v9/dataLists/skeleton.json +0 -38
  159. package/src/v9/form/attachFormClickEventListener.js +0 -27
  160. package/src/v9/form/clickFunc/extractFormData.js +0 -27
  161. package/src/v9/form/clickFunc/handleNew.js +0 -24
  162. package/src/v9/form/clickFunc/handleSave.js +0 -33
  163. package/src/v9/form/clickFunc/index.js +0 -32
  164. package/src/v9/form/index.js +0 -87
  165. package/src/v9/form/structure.json +0 -410
  166. package/src/v9/index.js +0 -141
  167. package/src/v9/meta.js +0 -6
  168. package/src/v9/navTabs/fragments.json +0 -59
  169. package/src/v9/navTabs/index.js +0 -82
  170. package/src/v9/navTabs/skeleton.json +0 -18
  171. package/src/v9/registerGlobal.js +0 -14
  172. package/src/v9/select/fragments.json +0 -1
  173. package/src/v9/select/index.js +0 -34
  174. package/src/v9/select/skeleton.json +0 -23
  175. package/src/v9/table/index.js +0 -35
  176. package/src/v9/table/skeleton.json +0 -47
  177. /package/src/{v10 → v13}/common/deriveColumnsFromData.js +0 -0
  178. /package/src/{v10 → v13}/registerGlobal.js +0 -0
@@ -1,87 +0,0 @@
1
- import jsonToSpec from "../../../jsonToSpec/v2/index.js";
2
- import jsonToTag from "../../../jsonToTag/v2/index.js";
3
- import attachFormClickEventListener from "./attachFormClickEventListener.js";
4
-
5
- import structureJson from './structure.json' with {type: 'json'};
6
-
7
- const startFunc = ({
8
- targetHtmlId,
9
- inTargetHtmlId,
10
- inFields = [],
11
- inData = {},
12
- inColumns = [],
13
- inVariant = "stacked",
14
- inSkeletonType,
15
- inShowLog = false,
16
- onSave,
17
- afterSave,
18
- onNew,
19
- onClear
20
- } = {}) => {
21
- const localTargetHtmlId = inTargetHtmlId ?? targetHtmlId;
22
- const localVariant = inSkeletonType ?? inVariant;
23
- const localShowLog = inShowLog;
24
-
25
- try {
26
- let fieldsArray = [];
27
-
28
- if (Array.isArray(inFields) && inFields.length > 0) {
29
- fieldsArray = inFields;
30
- } else if (Array.isArray(inColumns) && inColumns.length > 0) {
31
- fieldsArray = inColumns.map((col) => ({
32
- key: col.field ?? col.name ?? col.key,
33
- label: col.title ?? col.label ?? col.field ?? col.name,
34
- type: col.type ?? "text",
35
- value: inData?.[col.field ?? col.name ?? col.key] ?? col.value ?? "",
36
- readonly: col.readonly ? "true" : "",
37
- disabled: col.disabled ? "true" : ""
38
- }));
39
- } else if (typeof inData === "object" && inData !== null && !Array.isArray(inData)) {
40
- fieldsArray = Object.entries(inData).map(([key, value]) => ({
41
- key,
42
- label: key,
43
- type: "text",
44
- value: value ?? "",
45
- readonly: "",
46
- disabled: ""
47
- }));
48
- }
49
-
50
- const dataAsJson = { fields: fieldsArray };
51
-
52
- const rawStructure = structureJson[localVariant] ?? structureJson.stacked ?? structureJson;
53
- const targetStructure = structuredClone(rawStructure);
54
-
55
- if (localShowLog) console.log("form targetStructure : ", targetStructure);
56
-
57
- const specAsJsonToDom = jsonToSpec({ specJson: targetStructure, dataJson: dataAsJson, showLog: false });
58
- if (localShowLog) console.log("form specAsJsonToDom : ", specAsJsonToDom);
59
-
60
- const fromRenderer = jsonToTag(specAsJsonToDom);
61
-
62
- const html = (typeof localTargetHtmlId === "string")
63
- ? document.getElementById(localTargetHtmlId)
64
- : localTargetHtmlId;
65
-
66
- const containerToAttach = html || fromRenderer;
67
-
68
- // Attach modular click event listener for Save and New actions
69
- attachFormClickEventListener({
70
- inTargetContainer: containerToAttach,
71
- onSave,
72
- afterSave,
73
- onNew,
74
- onClear
75
- });
76
-
77
- if (!html) return fromRenderer;
78
-
79
- html.append(fromRenderer);
80
- return fromRenderer;
81
- } catch (error) {
82
- console.log("error : ", error);
83
- }
84
- };
85
-
86
- export { startFunc };
87
- export default startFunc;
@@ -1,410 +0,0 @@
1
- {
2
- "stacked": {
3
- "tagName": "div",
4
- "attributes": {
5
- "class": "card shadow-sm"
6
- },
7
- "children": [
8
- {
9
- "tagName": "div",
10
- "attributes": {
11
- "class": "card-header fw-semibold"
12
- },
13
- "children": [
14
- {
15
- "tagName": "span",
16
- "textContent": "Ledger Details"
17
- }
18
- ]
19
- },
20
- {
21
- "tagName": "div",
22
- "attributes": {
23
- "class": "card-body"
24
- },
25
- "jsonToSpec": {
26
- "operation": "loopArray",
27
- "source": "fields",
28
- "template": {
29
- "tagName": "div",
30
- "attributes": {
31
- "class": "mb-3"
32
- },
33
- "children": [
34
- {
35
- "tagName": "label",
36
- "attributes": {
37
- "class": "form-label"
38
- },
39
- "textContent": "${label}"
40
- },
41
- {
42
- "tagName": "input",
43
- "attributes": {
44
- "type": "${type}",
45
- "class": "form-control",
46
- "value": "${value}",
47
- "name": "${key}",
48
- "readonly": "${readonly}",
49
- "disabled": "${disabled}"
50
- }
51
- }
52
- ]
53
- }
54
- },
55
- "jsonToSpec1": {
56
- "operation": "iterate",
57
- "source": "fields",
58
- "template": {
59
- "tagName": "div",
60
- "attributes": {
61
- "class": "mb-3"
62
- },
63
- "children": [
64
- {
65
- "tagName": "label",
66
- "attributes": {
67
- "class": "form-label"
68
- },
69
- "textContent": "${label}"
70
- },
71
- {
72
- "tagName": "input",
73
- "attributes": {
74
- "type": "text",
75
- "class": "form-control",
76
- "value": "${value}",
77
- "readonly": "true"
78
- }
79
- }
80
- ]
81
- }
82
- },
83
- "children": []
84
- }
85
- ]
86
- },
87
- "stackedWithButtons": {
88
- "tagName": "div",
89
- "attributes": {
90
- "class": "card shadow-sm"
91
- },
92
- "children": [
93
- {
94
- "tagName": "div",
95
- "attributes": {
96
- "class": "card-header fw-semibold"
97
- },
98
- "children": [
99
- {
100
- "tagName": "span",
101
- "textContent": "Ledger Details"
102
- }
103
- ]
104
- },
105
- {
106
- "tagName": "div",
107
- "attributes": {
108
- "class": "card-body"
109
- },
110
- "jsonToSpec": {
111
- "operation": "loopArray",
112
- "source": "fields",
113
- "template": {
114
- "tagName": "div",
115
- "attributes": {
116
- "class": "mb-3"
117
- },
118
- "children": [
119
- {
120
- "tagName": "label",
121
- "attributes": {
122
- "class": "form-label"
123
- },
124
- "textContent": "${label}"
125
- },
126
- {
127
- "tagName": "input",
128
- "attributes": {
129
- "type": "${type}",
130
- "class": "form-control",
131
- "value": "${value}",
132
- "name": "${key}",
133
- "readonly": "${readonly}",
134
- "disabled": "${disabled}"
135
- }
136
- }
137
- ]
138
- }
139
- },
140
- "children": []
141
- },
142
- {
143
- "tagName": "div",
144
- "attributes": {
145
- "class": "card-footer bg-white border-top-0 d-flex justify-content-end gap-2 pt-0 pb-3"
146
- },
147
- "children": [
148
- {
149
- "tagName": "button",
150
- "attributes": {
151
- "type": "button",
152
- "class": "btn btn-outline-secondary btn-sm",
153
- "id": "btn-form-new"
154
- },
155
- "textContent": "New"
156
- },
157
- {
158
- "tagName": "button",
159
- "attributes": {
160
- "type": "button",
161
- "class": "btn btn-primary btn-sm",
162
- "id": "btn-form-save"
163
- },
164
- "textContent": "Save"
165
- }
166
- ]
167
- }
168
- ]
169
- },
170
- "inline": {
171
- "tagName": "div",
172
- "attributes": {
173
- "class": "card shadow-sm"
174
- },
175
- "children": [
176
- {
177
- "tagName": "div",
178
- "attributes": {
179
- "class": "card-header fw-semibold"
180
- },
181
- "children": [
182
- {
183
- "tagName": "span",
184
- "textContent": "Ledger Details"
185
- }
186
- ]
187
- },
188
- {
189
- "tagName": "div",
190
- "attributes": {
191
- "class": "card-body"
192
- },
193
- "jsonToSpec": {
194
- "operation": "loopArray",
195
- "source": "fields",
196
- "template": {
197
- "tagName": "div",
198
- "attributes": {
199
- "class": "row mb-2 align-items-center"
200
- },
201
- "children": [
202
- {
203
- "tagName": "label",
204
- "attributes": {
205
- "class": "col-sm-4 col-form-label text-sm-end mb-0 fw-semibold text-secondary small"
206
- },
207
- "textContent": "${label}"
208
- },
209
- {
210
- "tagName": "div",
211
- "attributes": {
212
- "class": "col-sm-8"
213
- },
214
- "children": [
215
- {
216
- "tagName": "input",
217
- "attributes": {
218
- "class": "form-control",
219
- "name": "${key}",
220
- "value": "${value}",
221
- "list": "${list}",
222
- "type": "${type}"
223
- }
224
- }
225
- ]
226
- }
227
- ]
228
- }
229
- },
230
- "jsonToSpec1": {
231
- "operation": "iterate",
232
- "source": "fields",
233
- "template": {
234
- "tagName": "div",
235
- "attributes": {
236
- "class": "row mb-2 align-items-center"
237
- },
238
- "children": [
239
- {
240
- "tagName": "label",
241
- "attributes": {
242
- "class": "col-4 col-form-label fw-medium text-end"
243
- },
244
- "textContent": "${label}"
245
- },
246
- {
247
- "tagName": "div",
248
- "attributes": {
249
- "class": "col-8"
250
- },
251
- "children": [
252
- {
253
- "tagName": "input",
254
- "attributes": {
255
- "type": "text",
256
- "class": "form-control form-control-sm",
257
- "value": "${value}",
258
- "list": "${list}"
259
- }
260
- }
261
- ]
262
- }
263
- ]
264
- }
265
- },
266
- "children": []
267
- }
268
- ]
269
- },
270
- "inlineWithButtons": {
271
- "tagName": "div",
272
- "attributes": {
273
- "class": "card shadow-sm"
274
- },
275
- "children": [
276
- {
277
- "tagName": "div",
278
- "attributes": {
279
- "class": "card-header fw-semibold"
280
- },
281
- "children": [
282
- {
283
- "tagName": "span",
284
- "textContent": "Ledger Details"
285
- }
286
- ]
287
- },
288
- {
289
- "tagName": "div",
290
- "attributes": {
291
- "class": "card-body"
292
- },
293
- "jsonToSpec": {
294
- "operation": "iterate",
295
- "source": "fields",
296
- "template": {
297
- "tagName": "div",
298
- "attributes": {
299
- "class": "row mb-2 align-items-center"
300
- },
301
- "children": [
302
- {
303
- "tagName": "label",
304
- "attributes": {
305
- "class": "col-4 col-form-label fw-medium text-end"
306
- },
307
- "textContent": "${label}"
308
- },
309
- {
310
- "tagName": "div",
311
- "attributes": {
312
- "class": "col-6"
313
- },
314
- "children": [
315
- {
316
- "tagName": "input",
317
- "attributes": {
318
- "type": "text",
319
- "class": "form-control form-control-sm",
320
- "value": "${value}",
321
- "readonly": "true"
322
- }
323
- }
324
- ]
325
- },
326
- {
327
- "tagName": "div",
328
- "attributes": {
329
- "class": "col-2 d-flex gap-1"
330
- },
331
- "children": [
332
- {
333
- "tagName": "button",
334
- "attributes": {
335
- "type": "button",
336
- "class": "btn btn-sm btn-outline-primary"
337
- },
338
- "textContent": "Edit"
339
- },
340
- {
341
- "tagName": "button",
342
- "attributes": {
343
- "type": "button",
344
- "class": "btn btn-sm btn-outline-secondary"
345
- },
346
- "textContent": "Copy"
347
- }
348
- ]
349
- }
350
- ]
351
- }
352
- },
353
- "children": []
354
- }
355
- ]
356
- },
357
- "list": {
358
- "tagName": "div",
359
- "attributes": {
360
- "class": "card shadow-sm"
361
- },
362
- "children": [
363
- {
364
- "tagName": "div",
365
- "attributes": {
366
- "class": "card-header fw-semibold"
367
- },
368
- "children": [
369
- {
370
- "tagName": "span",
371
- "textContent": "Ledger Details"
372
- }
373
- ]
374
- },
375
- {
376
- "tagName": "ul",
377
- "attributes": {
378
- "class": "list-group list-group-flush"
379
- },
380
- "jsonToSpec": {
381
- "operation": "iterate",
382
- "source": "fields",
383
- "template": {
384
- "tagName": "li",
385
- "attributes": {
386
- "class": "list-group-item d-flex justify-content-between align-items-center"
387
- },
388
- "children": [
389
- {
390
- "tagName": "span",
391
- "attributes": {
392
- "class": "text-muted"
393
- },
394
- "textContent": "${label}"
395
- },
396
- {
397
- "tagName": "span",
398
- "attributes": {
399
- "class": "fw-medium"
400
- },
401
- "textContent": "${value}"
402
- }
403
- ]
404
- }
405
- },
406
- "children": []
407
- }
408
- ]
409
- }
410
- }
package/src/v7/index.js DELETED
@@ -1,141 +0,0 @@
1
- import registerGlobal from "./registerGlobal.js";
2
-
3
- import renderTable from "./table/index.js";
4
- // import renderNavTabs from "./navTabs/index.js";
5
- // import renderForm from "./form/index.js";
6
-
7
- import renderDataList from "./dataLists/index.js";
8
- import renderSelect from "./select/index.js";
9
-
10
- const RENDERER_MAP = {
11
- table: renderTable,
12
- datalist: renderDataList,
13
- select: renderSelect
14
- };
15
-
16
-
17
- /**
18
- * Unified Renderer
19
- * Dispatches to the corresponding renderer strategy (table, navTabs, form)
20
- * based on the provided type.
21
- */
22
-
23
- // render({ type: "select", data, targetHtmlId: "dom-render-container" });
24
-
25
- const render = ({
26
- type = "table",
27
- targetHtmlId,
28
- data,
29
- classToApply,
30
- inTargetHtmlId,
31
- inData,
32
- columns,
33
- inColumns,
34
- fields,
35
- inFields,
36
- tabs,
37
- inTabs,
38
- options,
39
- inOptions,
40
- datalistId,
41
- inDatalistId,
42
- listId,
43
- inListId,
44
- id,
45
- valueField,
46
- inValueField,
47
- labelField,
48
- inLabelField,
49
- colGroup,
50
- inColGroup,
51
- footerData,
52
- inFooterData,
53
- config,
54
- inConfig,
55
- variant,
56
- skeletonType,
57
- inSkeletonType,
58
- showLog = false,
59
- inShowLog,
60
- ...restProps
61
- } = {}) => {
62
- const rawType = type;
63
- const resolvedType = typeof rawType === "string" ? rawType.toLowerCase() : "table";
64
- const renderer = RENDERER_MAP[resolvedType];
65
-
66
- if (!renderer) {
67
- console.error(
68
- `[Renderer] Unknown renderer type "${rawType}". Available types: ${Object.keys(RENDERER_MAP).join(", ")}`
69
- );
70
- return null;
71
- }
72
-
73
- const localTargetHtmlId = inTargetHtmlId ?? targetHtmlId;
74
- const localData = inData ?? data;
75
- const localColumns = inColumns ?? columns;
76
- const localFields = inFields ?? fields;
77
- const localTabs = inTabs ?? tabs;
78
- const localOptions = inOptions ?? options ?? localData;
79
- const localSkeletonType = inSkeletonType ?? skeletonType ?? variant ?? "default";
80
- const localShowLog = inShowLog ?? showLog ?? false;
81
-
82
- if (resolvedType === "form") {
83
- return renderer({
84
- targetHtmlId: localTargetHtmlId,
85
- inFields: localFields,
86
- inData: localData,
87
- inColumns: localColumns,
88
- inVariant: localSkeletonType,
89
- inSkeletonType: localSkeletonType,
90
- inShowLog: localShowLog,
91
- onSave: restProps?.onSave,
92
- afterSave: restProps?.afterSave,
93
- onNew: restProps?.onNew
94
- });
95
- }
96
-
97
- if (resolvedType === "navtabs" || resolvedType === "nav" || resolvedType === "tabs") {
98
- return renderer({
99
- targetHtmlId: localTargetHtmlId,
100
- inTabs: localTabs,
101
- inData: localData,
102
- inSkeletonType: localSkeletonType,
103
- inShowLog: localShowLog
104
- });
105
- }
106
-
107
- if (resolvedType === "datalist" || resolvedType === "data-list") {
108
- return renderer({
109
- targetHtmlId: localTargetHtmlId,
110
- inData: localData,
111
- inSkeletonType: localSkeletonType,
112
- inShowLog: localShowLog
113
- });
114
- }
115
-
116
- if (resolvedType === "select") {
117
- return renderer({
118
- targetHtmlId: localTargetHtmlId,
119
- inData: localData,
120
- inSkeletonType: localSkeletonType,
121
- inShowLog: localShowLog,
122
- inClassToApply: classToApply
123
- });
124
- };
125
-
126
- // Default to table renderer
127
- return renderer({
128
- targetHtmlId: localTargetHtmlId,
129
- inColumns: localColumns,
130
- inData: localData,
131
- inColGroup: inColGroup ?? colGroup,
132
- inFooterData: inFooterData ?? footerData ?? [],
133
- inConfig: inConfig ?? config ?? {},
134
- inSkeletonType: localSkeletonType,
135
- inShowLog: localShowLog
136
- });
137
- };
138
-
139
- registerGlobal(render);
140
-
141
- export default render;
package/src/v7/meta.js DELETED
@@ -1,6 +0,0 @@
1
- export const meta = {
2
- version: "v4.0.0",
3
- description: "build table from store data and render to DOM uses json-to-spec, json-to-dom under the hood"
4
- };
5
-
6
- export default meta;