@sealcode/jdd-editor 0.1.20 → 0.1.23
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/.nyc_output/cfebf13d-f940-426b-a4d3-af28d17bb6b8.json +1 -0
- package/.nyc_output/processinfo/2ad4e34c-cebb-4299-9698-08eccbbe71f7.json +1 -0
- package/.nyc_output/processinfo/71f2685b-e2c9-4db2-9f31-0dbdcacfcea1.json +1 -0
- package/.nyc_output/processinfo/cfebf13d-f940-426b-a4d3-af28d17bb6b8.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -1
- package/.xunit +1 -1
- package/@types/test.test.d.ts +0 -0
- package/coverage/clover.xml +279 -259
- package/dist/src/components.sreact.js +1 -1
- package/dist/src/components.sreact.js.map +2 -2
- package/dist/src/controllers/autogrow-textarea.stimulus.js.map +2 -2
- package/dist/src/controllers/markdown-textarea.stimulus.js +1 -1
- package/dist/src/controllers/markdown-textarea.stimulus.js.map +2 -2
- package/dist/src/controllers/refresh-styles.stimulus.js +1 -1
- package/dist/src/controllers/refresh-styles.stimulus.js.map +2 -2
- package/dist/src/inputs/component-input-single-reference.js +1 -1
- package/dist/src/inputs/component-input-single-reference.js.map +2 -2
- package/dist/src/inputs/component-input-structured.js +1 -1
- package/dist/src/inputs/component-input-structured.js.map +2 -2
- package/dist/src/inputs/component-input.js +30 -7
- package/dist/src/inputs/component-input.js.map +2 -2
- package/dist/src/jdd-page.js +1 -1
- package/dist/src/jdd-page.js.map +2 -2
- package/{lib → dist}/src/test.test.js +1 -1
- package/dist/src/test.test.js.map +7 -0
- package/package.json +8 -7
- package/src/components.sreact.ts +1 -1
- package/src/controllers/autogrow-textarea.stimulus.ts +2 -1
- package/src/controllers/markdown-textarea.stimulus.ts +1 -1
- package/src/controllers/refresh-styles.stimulus.ts +3 -1
- package/src/inputs/component-input-single-reference.ts +1 -1
- package/src/inputs/component-input-structured.ts +1 -1
- package/src/inputs/component-input.ts +31 -9
- package/src/jdd-page.ts +1 -1
- package/src/test.test.ts +3 -0
- package/test.cjs +53 -0
- package/.mocharc.js +0 -6
- package/.nyc_output/9bfa248d-4f8e-4d29-9c47-d1a3961c5254.json +0 -1
- package/.nyc_output/processinfo/29e7bb87-9f10-462e-84d8-ec620cfa9e6b.json +0 -1
- package/.nyc_output/processinfo/7d7104e8-f179-427b-b4bd-30f78397e4f1.json +0 -1
- package/.nyc_output/processinfo/9bfa248d-4f8e-4d29-9c47-d1a3961c5254.json +0 -1
- package/esbuild.js +0 -23
- package/lib/src/component-preview-actions.js +0 -377
- package/lib/src/component-preview-actions.js.map +0 -7
- package/lib/src/components.sreact.js +0 -93
- package/lib/src/components.sreact.js.map +0 -7
- package/lib/src/controllers/autogrow-textarea.stimulus.js +0 -13
- package/lib/src/controllers/autogrow-textarea.stimulus.js.map +0 -7
- package/lib/src/controllers/component-debugger.stimulus.js +0 -193
- package/lib/src/controllers/component-debugger.stimulus.js.map +0 -7
- package/lib/src/controllers/exportable-textarea.stimulus.js +0 -71
- package/lib/src/controllers/exportable-textarea.stimulus.js.map +0 -7
- package/lib/src/controllers/input-image-preview.stimulus.js +0 -30
- package/lib/src/controllers/input-image-preview.stimulus.js.map +0 -7
- package/lib/src/controllers/jdd-table-paste.stimulus.js +0 -78
- package/lib/src/controllers/jdd-table-paste.stimulus.js.map +0 -7
- package/lib/src/controllers/json-editor.stimulus.js +0 -114
- package/lib/src/controllers/json-editor.stimulus.js.map +0 -7
- package/lib/src/controllers/markdown-textarea.stimulus.js +0 -174
- package/lib/src/controllers/markdown-textarea.stimulus.js.map +0 -7
- package/lib/src/controllers/refresh-on-ts-changes.stimulus.js +0 -90
- package/lib/src/controllers/refresh-on-ts-changes.stimulus.js.map +0 -7
- package/lib/src/controllers/refresh-styles.stimulus.js +0 -67
- package/lib/src/controllers/refresh-styles.stimulus.js.map +0 -7
- package/lib/src/controllers/submit-on-input.stimulus.js +0 -55
- package/lib/src/controllers/submit-on-input.stimulus.js.map +0 -7
- package/lib/src/controllers/toast.stimulus.js +0 -19
- package/lib/src/controllers/toast.stimulus.js.map +0 -7
- package/lib/src/edit-jdd-field.js +0 -94
- package/lib/src/edit-jdd-field.js.map +0 -7
- package/lib/src/index.js +0 -3
- package/lib/src/index.js.map +0 -7
- package/lib/src/inputs/component-input-enum.js +0 -30
- package/lib/src/inputs/component-input-enum.js.map +0 -7
- package/lib/src/inputs/component-input-image.js +0 -63
- package/lib/src/inputs/component-input-image.js.map +0 -7
- package/lib/src/inputs/component-input-list.js +0 -74
- package/lib/src/inputs/component-input-list.js.map +0 -7
- package/lib/src/inputs/component-input-single-reference.js +0 -31
- package/lib/src/inputs/component-input-single-reference.js.map +0 -7
- package/lib/src/inputs/component-input-structured.js +0 -36
- package/lib/src/inputs/component-input-structured.js.map +0 -7
- package/lib/src/inputs/component-input-table.js +0 -228
- package/lib/src/inputs/component-input-table.js.map +0 -7
- package/lib/src/inputs/component-input.js +0 -164
- package/lib/src/inputs/component-input.js.map +0 -7
- package/lib/src/inputs/print-arg-path.js +0 -7
- package/lib/src/inputs/print-arg-path.js.map +0 -7
- package/lib/src/jdd-creator.js +0 -131
- package/lib/src/jdd-creator.js.map +0 -7
- package/lib/src/jdd-page.js +0 -339
- package/lib/src/jdd-page.js.map +0 -7
- package/lib/src/test.test.js.map +0 -7
- /package/{.eslintrc.js → .eslintrc.cjs} +0 -0
- /package/.nyc_output/{29e7bb87-9f10-462e-84d8-ec620cfa9e6b.json → 2ad4e34c-cebb-4299-9698-08eccbbe71f7.json} +0 -0
- /package/.nyc_output/{7d7104e8-f179-427b-b4bd-30f78397e4f1.json → 71f2685b-e2c9-4db2-9f31-0dbdcacfcea1.json} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":"7d7104e8-f179-427b-b4bd-30f78397e4f1","pid":178998,"argv":["/usr/bin/node","/home/kuba/projects/sealcode/jdd-editor/node_modules/.bin/mocha","--recursive","--timeout=10000","--require","source-map-support/register","lib/src/**/*.test.js"],"execArgv":[],"cwd":"/home/kuba/projects/sealcode/jdd-editor","time":1733064903142,"ppid":178991,"coverageFilename":"/home/kuba/projects/sealcode/jdd-editor/.nyc_output/29e7bb87-9f10-462e-84d8-ec620cfa9e6b.json","externalId":"","uuid":"29e7bb87-9f10-462e-84d8-ec620cfa9e6b","files":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":null,"pid":178991,"argv":["/usr/bin/node","/home/kuba/projects/sealcode/jdd-editor/node_modules/.bin/mocha","--reporter","xunit","--reporter-option","output=.xunit"],"execArgv":[],"cwd":"/home/kuba/projects/sealcode/jdd-editor","time":1733064903016,"ppid":178968,"coverageFilename":"/home/kuba/projects/sealcode/jdd-editor/.nyc_output/7d7104e8-f179-427b-b4bd-30f78397e4f1.json","externalId":"","uuid":"7d7104e8-f179-427b-b4bd-30f78397e4f1","files":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"parent":null,"pid":178968,"argv":["/usr/bin/node","/home/kuba/projects/sealcode/jdd-editor/node_modules/.bin/nyc","--reporter","clover","mocha","--reporter","xunit","--reporter-option","output=.xunit"],"execArgv":[],"cwd":"/home/kuba/projects/sealcode/jdd-editor","time":1733064902571,"ppid":178957,"coverageFilename":"/home/kuba/projects/sealcode/jdd-editor/.nyc_output/9bfa248d-4f8e-4d29-9c47-d1a3961c5254.json","externalId":"","uuid":"9bfa248d-4f8e-4d29-9c47-d1a3961c5254","files":["/home/kuba/projects/sealcode/jdd-editor/src/component-preview-actions.ts","/home/kuba/projects/sealcode/jdd-editor/src/components.sreact.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/autogrow-textarea.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/component-debugger.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/exportable-textarea.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/input-image-preview.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/jdd-table-paste.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/json-editor.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/markdown-textarea.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/refresh-on-ts-changes.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/refresh-styles.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/submit-on-input.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/controllers/toast.stimulus.ts","/home/kuba/projects/sealcode/jdd-editor/src/edit-jdd-field.ts","/home/kuba/projects/sealcode/jdd-editor/src/index.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/component-input-enum.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/component-input-image.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/component-input-list.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/component-input-single-reference.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/component-input-structured.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/component-input-table.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/component-input.ts","/home/kuba/projects/sealcode/jdd-editor/src/inputs/print-arg-path.ts","/home/kuba/projects/sealcode/jdd-editor/src/jdd-creator.ts","/home/kuba/projects/sealcode/jdd-editor/src/jdd-page.ts","/home/kuba/projects/sealcode/jdd-editor/src/test.test.ts"]}
|
package/esbuild.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
const { build } = require("esbuild");
|
|
2
|
-
const glob = require("tiny-glob");
|
|
3
|
-
|
|
4
|
-
const watch = process.argv.at(-1) === "--watch";
|
|
5
|
-
|
|
6
|
-
(async () => {
|
|
7
|
-
let entryPoints = Object.fromEntries(
|
|
8
|
-
(await glob("./src/**/*.ts")).map((e) => [
|
|
9
|
-
e.replace(/\.ts$/, ""),
|
|
10
|
-
e,
|
|
11
|
-
])
|
|
12
|
-
);
|
|
13
|
-
build({
|
|
14
|
-
entryPoints,
|
|
15
|
-
sourcemap: true,
|
|
16
|
-
outdir: "./dist",
|
|
17
|
-
logLevel: "info",
|
|
18
|
-
platform: "node",
|
|
19
|
-
watch,
|
|
20
|
-
target: "node16",
|
|
21
|
-
format: "cjs",
|
|
22
|
-
});
|
|
23
|
-
})();
|
|
@@ -1,377 +0,0 @@
|
|
|
1
|
-
import { List, Table } from "@sealcode/jdd";
|
|
2
|
-
import { isTableData, isTableRegularRow } from "@sealcode/jdd";
|
|
3
|
-
import objectPath from "object-path";
|
|
4
|
-
function moveElement(array, fromIndex, toIndex) {
|
|
5
|
-
const element = array.splice(fromIndex, 1)[0];
|
|
6
|
-
array.splice(toIndex, 0, element);
|
|
7
|
-
return array;
|
|
8
|
-
}
|
|
9
|
-
function getComponentData(state, arg_path, registry) {
|
|
10
|
-
var _a, _b;
|
|
11
|
-
const index_arg = arg_path[1];
|
|
12
|
-
if (!index_arg) {
|
|
13
|
-
throw new Error("Missing component index in arg path");
|
|
14
|
-
}
|
|
15
|
-
const component_index = parseInt(index_arg);
|
|
16
|
-
const component_args =
|
|
17
|
-
((_a = state.components[component_index]) == null ? void 0 : _a.args) ||
|
|
18
|
-
{};
|
|
19
|
-
const component_name =
|
|
20
|
-
((_b = state.components[component_index]) == null
|
|
21
|
-
? void 0
|
|
22
|
-
: _b.component_name) || "";
|
|
23
|
-
const component = registry.get(component_name);
|
|
24
|
-
const arg_path_within_component = arg_path.slice(3);
|
|
25
|
-
const [argument, , argument_value] = (component == null
|
|
26
|
-
? void 0
|
|
27
|
-
: component.getArgumentAtPath(
|
|
28
|
-
arg_path_within_component,
|
|
29
|
-
component_args
|
|
30
|
-
)) || [null, null, null];
|
|
31
|
-
return {
|
|
32
|
-
component_index,
|
|
33
|
-
component_args,
|
|
34
|
-
component_name,
|
|
35
|
-
component,
|
|
36
|
-
argument,
|
|
37
|
-
argument_value,
|
|
38
|
-
arg_path_within_component,
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
const ComponentPreviewActions = {
|
|
42
|
-
add_array_item: async ({ ctx, state, args: [arg_path], page }) => {
|
|
43
|
-
const {
|
|
44
|
-
component_name,
|
|
45
|
-
component,
|
|
46
|
-
argument,
|
|
47
|
-
arg_path_within_component,
|
|
48
|
-
argument_value,
|
|
49
|
-
} = getComponentData(state, arg_path, page.registry);
|
|
50
|
-
if (!component) {
|
|
51
|
-
console.error("unknown component: ", component_name);
|
|
52
|
-
return state;
|
|
53
|
-
}
|
|
54
|
-
if (!argument) {
|
|
55
|
-
console.error(
|
|
56
|
-
"Didn't find a list argument at this path",
|
|
57
|
-
arg_path_within_component
|
|
58
|
-
);
|
|
59
|
-
return state;
|
|
60
|
-
}
|
|
61
|
-
if (!(argument instanceof List)) {
|
|
62
|
-
throw new Error(
|
|
63
|
-
`Expected argument in path ${arg_path.join(
|
|
64
|
-
"."
|
|
65
|
-
)} to be an instance of List`
|
|
66
|
-
);
|
|
67
|
-
}
|
|
68
|
-
objectPath.insert(
|
|
69
|
-
state,
|
|
70
|
-
arg_path,
|
|
71
|
-
await argument.item_type.getExampleValue(page.makeJDDContext(ctx)),
|
|
72
|
-
Array.isArray(argument_value) ? argument_value.length : 0
|
|
73
|
-
);
|
|
74
|
-
return state;
|
|
75
|
-
},
|
|
76
|
-
remove_array_item: ({ state, args: [arg_path, index_to_remove] }) => {
|
|
77
|
-
objectPath.del(state, [...arg_path, index_to_remove]);
|
|
78
|
-
return state;
|
|
79
|
-
},
|
|
80
|
-
move_array_item_up: async ({ state, args: [arg_path, element_index] }) => {
|
|
81
|
-
const array_values = objectPath.get(state, arg_path);
|
|
82
|
-
const curr = array_values[element_index];
|
|
83
|
-
const prev = array_values[element_index - 1];
|
|
84
|
-
if (!prev || !curr) {
|
|
85
|
-
throw new Error("No element at such index or cannot move it up");
|
|
86
|
-
}
|
|
87
|
-
[array_values[element_index - 1], array_values[element_index]] = [
|
|
88
|
-
curr,
|
|
89
|
-
prev,
|
|
90
|
-
];
|
|
91
|
-
return state;
|
|
92
|
-
},
|
|
93
|
-
move_array_item_down: async ({
|
|
94
|
-
state,
|
|
95
|
-
args: [arg_path, element_index],
|
|
96
|
-
}) => {
|
|
97
|
-
const array_values = objectPath.get(state, arg_path);
|
|
98
|
-
const curr = array_values[element_index];
|
|
99
|
-
const next = array_values[element_index + 1];
|
|
100
|
-
if (!next || !curr) {
|
|
101
|
-
throw new Error("No element at such index or cannot move it up");
|
|
102
|
-
}
|
|
103
|
-
[array_values[element_index], array_values[element_index + 1]] = [
|
|
104
|
-
next,
|
|
105
|
-
curr,
|
|
106
|
-
];
|
|
107
|
-
return state;
|
|
108
|
-
},
|
|
109
|
-
change_component: async ({ ctx, inputs, state, page }) => {
|
|
110
|
-
const component_name = inputs.component;
|
|
111
|
-
if (!component_name || typeof component_name !== "string") {
|
|
112
|
-
throw new Error(
|
|
113
|
-
"Missing input: 'component' for action change_component. It should contain the name of the new component type"
|
|
114
|
-
);
|
|
115
|
-
}
|
|
116
|
-
const component = page.registry.get(component_name);
|
|
117
|
-
if (!component) {
|
|
118
|
-
throw new Error(
|
|
119
|
-
`Unknown or disallowed component name: ${component_name}`
|
|
120
|
-
);
|
|
121
|
-
}
|
|
122
|
-
return {
|
|
123
|
-
...state,
|
|
124
|
-
components: [
|
|
125
|
-
{
|
|
126
|
-
component_name,
|
|
127
|
-
args:
|
|
128
|
-
(await (component == null
|
|
129
|
-
? void 0
|
|
130
|
-
: component.getExampleValues(
|
|
131
|
-
page.makeJDDContext(ctx)
|
|
132
|
-
))) || {},
|
|
133
|
-
},
|
|
134
|
-
],
|
|
135
|
-
};
|
|
136
|
-
},
|
|
137
|
-
randomize_args: async ({
|
|
138
|
-
ctx,
|
|
139
|
-
state,
|
|
140
|
-
page,
|
|
141
|
-
args: [component_index_str],
|
|
142
|
-
}) => {
|
|
143
|
-
const { component_index, component } = getComponentData(
|
|
144
|
-
state,
|
|
145
|
-
["components", component_index_str],
|
|
146
|
-
page.registry
|
|
147
|
-
);
|
|
148
|
-
const component_data = state.components[component_index];
|
|
149
|
-
if (!component_data) {
|
|
150
|
-
throw new Error("Missing component data");
|
|
151
|
-
}
|
|
152
|
-
component_data.args =
|
|
153
|
-
(await (component == null
|
|
154
|
-
? void 0
|
|
155
|
-
: component.getExampleValues(page.makeJDDContext(ctx)))) || {};
|
|
156
|
-
return {
|
|
157
|
-
...state,
|
|
158
|
-
};
|
|
159
|
-
},
|
|
160
|
-
add_table_row: async ({
|
|
161
|
-
ctx,
|
|
162
|
-
state,
|
|
163
|
-
page,
|
|
164
|
-
args: [arg_path, columns, type = "row"],
|
|
165
|
-
}) => {
|
|
166
|
-
const jdd_context = page.makeJDDContext(ctx);
|
|
167
|
-
const { component_args, argument } = getComponentData(
|
|
168
|
-
state,
|
|
169
|
-
arg_path,
|
|
170
|
-
page.registry
|
|
171
|
-
);
|
|
172
|
-
let row;
|
|
173
|
-
if (!argument) {
|
|
174
|
-
console.error("Unknown component at path", arg_path);
|
|
175
|
-
return state;
|
|
176
|
-
}
|
|
177
|
-
if (!(argument instanceof Table)) {
|
|
178
|
-
throw new Error(
|
|
179
|
-
`Expected argument at path ${arg_path.join(
|
|
180
|
-
"."
|
|
181
|
-
)} to be of type Table`
|
|
182
|
-
);
|
|
183
|
-
}
|
|
184
|
-
if (type == "header") {
|
|
185
|
-
row = {
|
|
186
|
-
type: "header",
|
|
187
|
-
header_content: await argument.header_type.getExampleValue(
|
|
188
|
-
jdd_context
|
|
189
|
-
),
|
|
190
|
-
};
|
|
191
|
-
} else {
|
|
192
|
-
const cells = [];
|
|
193
|
-
for (let i = 0; i < columns; i++) {
|
|
194
|
-
cells.push(
|
|
195
|
-
await argument.cell_type.getExampleValue(jdd_context)
|
|
196
|
-
);
|
|
197
|
-
}
|
|
198
|
-
row = { type: "row", cells };
|
|
199
|
-
}
|
|
200
|
-
objectPath.push(state, [...arg_path, "rows"], row);
|
|
201
|
-
return state;
|
|
202
|
-
},
|
|
203
|
-
add_table_column: async ({ ctx, state, page, args: [arg_path] }) => {
|
|
204
|
-
const { argument } = getComponentData(state, arg_path, page.registry);
|
|
205
|
-
if (!argument) {
|
|
206
|
-
console.error("Unknown component at path", arg_path);
|
|
207
|
-
return state;
|
|
208
|
-
}
|
|
209
|
-
const tableData = objectPath.get(state, arg_path);
|
|
210
|
-
if (!isTableData(tableData)) {
|
|
211
|
-
throw new Error("wrong table data");
|
|
212
|
-
}
|
|
213
|
-
for (const i in tableData.rows) {
|
|
214
|
-
const row = tableData.rows[i];
|
|
215
|
-
if (isTableRegularRow(row)) {
|
|
216
|
-
row.cells.push(
|
|
217
|
-
await argument.cell_type.getExampleValue(
|
|
218
|
-
page.makeJDDContext(ctx)
|
|
219
|
-
)
|
|
220
|
-
);
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
objectPath.set(state, arg_path, tableData);
|
|
224
|
-
console.log("NEW STATE AFTER ADDING THE COLUN");
|
|
225
|
-
console.dir(state, { depth: 10 });
|
|
226
|
-
return state;
|
|
227
|
-
},
|
|
228
|
-
remove_table_column: ({
|
|
229
|
-
state,
|
|
230
|
-
args: [arg_path, column_index_to_remove],
|
|
231
|
-
}) => {
|
|
232
|
-
const tableData = objectPath.get(state, arg_path);
|
|
233
|
-
if (!isTableData(tableData)) {
|
|
234
|
-
throw new Error("wrong table data");
|
|
235
|
-
}
|
|
236
|
-
for (const i in tableData.rows) {
|
|
237
|
-
const row = tableData.rows[i];
|
|
238
|
-
if (isTableRegularRow(row)) {
|
|
239
|
-
row.cells = row.cells.filter(
|
|
240
|
-
(_, i2) => i2 != column_index_to_remove
|
|
241
|
-
);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
objectPath.set(state, arg_path, tableData);
|
|
245
|
-
return state;
|
|
246
|
-
},
|
|
247
|
-
remove_table_row: ({ state, args: [arg_path, row_index] }) => {
|
|
248
|
-
objectPath.del(state, [...arg_path, "rows", row_index]);
|
|
249
|
-
return state;
|
|
250
|
-
},
|
|
251
|
-
move_table_column_right: ({
|
|
252
|
-
state,
|
|
253
|
-
page,
|
|
254
|
-
args: [arg_path, column_index],
|
|
255
|
-
}) => {
|
|
256
|
-
const { component_args } = getComponentData(
|
|
257
|
-
state,
|
|
258
|
-
arg_path,
|
|
259
|
-
page.registry
|
|
260
|
-
);
|
|
261
|
-
const last_path_element = arg_path.at(-1);
|
|
262
|
-
if (!last_path_element) {
|
|
263
|
-
throw new Error("arg path is empty");
|
|
264
|
-
}
|
|
265
|
-
const data = objectPath.get(component_args, last_path_element, "");
|
|
266
|
-
if (!isTableData(data)) {
|
|
267
|
-
throw new Error(
|
|
268
|
-
"Expected arg value for a table to be properly shaped"
|
|
269
|
-
);
|
|
270
|
-
}
|
|
271
|
-
for (const row of data.rows) {
|
|
272
|
-
if (row.type == "row") {
|
|
273
|
-
moveElement(row.cells, column_index, column_index + 1);
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
objectPath.set(state, [...arg_path, "rows"], data.rows);
|
|
277
|
-
return state;
|
|
278
|
-
},
|
|
279
|
-
move_table_row_down: ({ state, page, args: [arg_path, row_index] }) => {
|
|
280
|
-
const { component_args } = getComponentData(
|
|
281
|
-
state,
|
|
282
|
-
arg_path,
|
|
283
|
-
page.registry
|
|
284
|
-
);
|
|
285
|
-
const last_path_element = arg_path.at(-1);
|
|
286
|
-
if (!last_path_element) {
|
|
287
|
-
throw new Error("arg path is empty");
|
|
288
|
-
}
|
|
289
|
-
const data = objectPath.get(component_args, last_path_element, "");
|
|
290
|
-
if (!isTableData(data)) {
|
|
291
|
-
throw new Error(
|
|
292
|
-
"Expected arg value for a table to be properly shaped"
|
|
293
|
-
);
|
|
294
|
-
}
|
|
295
|
-
moveElement(data.rows, row_index, row_index + 1);
|
|
296
|
-
objectPath.set(state, [...arg_path, "rows"], data.rows);
|
|
297
|
-
return state;
|
|
298
|
-
},
|
|
299
|
-
change_size: ({ state, inputs }) => {
|
|
300
|
-
return {
|
|
301
|
-
...state,
|
|
302
|
-
preview_size: inputs.size,
|
|
303
|
-
};
|
|
304
|
-
},
|
|
305
|
-
add_component: async ({ ctx, state, inputs, page }) => {
|
|
306
|
-
const component_name = inputs.component;
|
|
307
|
-
if (!component_name) {
|
|
308
|
-
throw new Error("Missing component name");
|
|
309
|
-
}
|
|
310
|
-
const component = page.registry.get(component_name);
|
|
311
|
-
return {
|
|
312
|
-
...state,
|
|
313
|
-
components: [
|
|
314
|
-
...state.components,
|
|
315
|
-
{
|
|
316
|
-
component_name,
|
|
317
|
-
args:
|
|
318
|
-
(await (component == null
|
|
319
|
-
? void 0
|
|
320
|
-
: component.getExampleValues(
|
|
321
|
-
page.makeJDDContext(ctx)
|
|
322
|
-
))) || {},
|
|
323
|
-
},
|
|
324
|
-
],
|
|
325
|
-
};
|
|
326
|
-
},
|
|
327
|
-
remove_component: async ({ state, args: [component_index] }) => {
|
|
328
|
-
const newComponentState = [...state.components];
|
|
329
|
-
newComponentState.splice(component_index, 1);
|
|
330
|
-
return {
|
|
331
|
-
...state,
|
|
332
|
-
components: newComponentState,
|
|
333
|
-
};
|
|
334
|
-
},
|
|
335
|
-
move_component_up: async ({ state, args: [component_index] }) => {
|
|
336
|
-
const newComps = [...state.components];
|
|
337
|
-
const prev = newComps[component_index - 1];
|
|
338
|
-
const curr = newComps[component_index];
|
|
339
|
-
if (!prev || !curr) {
|
|
340
|
-
throw new Error("No component at such index or cannot move it up");
|
|
341
|
-
}
|
|
342
|
-
[newComps[component_index], newComps[component_index - 1]] = [
|
|
343
|
-
prev,
|
|
344
|
-
curr,
|
|
345
|
-
];
|
|
346
|
-
return { ...state, components: newComps };
|
|
347
|
-
},
|
|
348
|
-
move_component_down: async ({ state, args: [component_index] }) => {
|
|
349
|
-
const newComps = [...state.components];
|
|
350
|
-
const next = newComps[component_index + 1];
|
|
351
|
-
const curr = newComps[component_index];
|
|
352
|
-
if (!next || !curr) {
|
|
353
|
-
throw new Error("No component at such index or cannot move it up");
|
|
354
|
-
}
|
|
355
|
-
[newComps[component_index], newComps[component_index + 1]] = [
|
|
356
|
-
next,
|
|
357
|
-
curr,
|
|
358
|
-
];
|
|
359
|
-
return { ...state, components: newComps };
|
|
360
|
-
},
|
|
361
|
-
remove_file: async ({ state, args: [arg_path] }) => {
|
|
362
|
-
objectPath.set(state, arg_path, null);
|
|
363
|
-
return state;
|
|
364
|
-
},
|
|
365
|
-
replace_state: async ({ ctx, state, inputs, page }) => {
|
|
366
|
-
const new_state = await page.deserializeState(
|
|
367
|
-
ctx,
|
|
368
|
-
inputs["state_override"] || "{}"
|
|
369
|
-
);
|
|
370
|
-
return {
|
|
371
|
-
...new_state,
|
|
372
|
-
preview_size: state.preview_size,
|
|
373
|
-
};
|
|
374
|
-
},
|
|
375
|
-
};
|
|
376
|
-
export { ComponentPreviewActions, getComponentData };
|
|
377
|
-
//# sourceMappingURL=component-preview-actions.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/component-preview-actions.ts"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable @typescript-eslint/consistent-type-assertions */\nimport type { Registry, TableData } from \"@sealcode/jdd\";\nimport { List, Table } from \"@sealcode/jdd\";\nimport { isTableData, isTableRegularRow } from \"@sealcode/jdd\";\nimport objectPath from \"object-path\";\nimport type { JDDPageState } from \"./jdd-page.js\";\nimport type { StatefulPageActionArgument } from \"@sealcode/sealgen\";\nimport type JDDPage from \"./jdd-page.js\";\n\nfunction moveElement<T>(\n\tarray: Array<T>,\n\tfromIndex: number,\n\ttoIndex: number\n): Array<T> {\n\tconst element = array.splice(fromIndex, 1)[0];\n\tarray.splice(toIndex, 0, element as T);\n\treturn array;\n}\n\nexport function getComponentData(\n\tstate: JDDPageState,\n\targ_path: string[],\n\tregistry: Registry\n) {\n\tconst index_arg = arg_path[1];\n\tif (!index_arg) {\n\t\tthrow new Error(\"Missing component index in arg path\");\n\t}\n\tconst component_index = parseInt(index_arg);\n\tconst component_args = state.components[component_index]?.args || {};\n\tconst component_name =\n\t\tstate.components[component_index]?.component_name || \"\";\n\tconst component = registry.get(component_name);\n\tconst arg_path_within_component = arg_path.slice(3); // remove \"components\" and the index of the component and \"args\"\n\n\tconst [argument, , argument_value] = component?.getArgumentAtPath(\n\t\targ_path_within_component,\n\t\tcomponent_args\n\t) || [null, null, null];\n\n\treturn {\n\t\tcomponent_index,\n\t\tcomponent_args,\n\t\tcomponent_name,\n\t\tcomponent,\n\t\targument,\n\t\targument_value,\n\t\targ_path_within_component,\n\t};\n}\n\nexport const ComponentPreviewActions = <const>{\n\tadd_array_item: async ({\n\t\tctx,\n\t\tstate,\n\t\targs: [arg_path],\n\t\tpage,\n\t}: StatefulPageActionArgument<JDDPageState, [string[]]>) => {\n\t\tconst {\n\t\t\tcomponent_name,\n\t\t\tcomponent,\n\t\t\targument,\n\t\t\targ_path_within_component,\n\t\t\targument_value,\n\t\t} = getComponentData(state, arg_path, (page as JDDPage).registry);\n\t\tif (!component) {\n\t\t\tconsole.error(\"unknown component: \", component_name);\n\t\t\treturn state;\n\t\t}\n\t\tif (!argument) {\n\t\t\tconsole.error(\n\t\t\t\t\"Didn't find a list argument at this path\",\n\t\t\t\targ_path_within_component\n\t\t\t);\n\t\t\treturn state;\n\t\t}\n\t\tif (!(argument instanceof List)) {\n\t\t\tthrow new Error(\n\t\t\t\t`Expected argument in path ${arg_path.join(\n\t\t\t\t\t\".\"\n\t\t\t\t)} to be an instance of List`\n\t\t\t);\n\t\t}\n\t\tobjectPath.insert(\n\t\t\tstate,\n\t\t\targ_path,\n\t\t\tawait argument.item_type.getExampleValue(\n\t\t\t\t(page as JDDPage).makeJDDContext(ctx)\n\t\t\t),\n\t\t\t// eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n\t\t\tArray.isArray(argument_value) ? argument_value.length : 0\n\t\t);\n\t\treturn state;\n\t},\n\n\tremove_array_item: ({\n\t\tstate,\n\t\targs: [arg_path, index_to_remove],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string[], number]\n\t>): JDDPageState => {\n\t\tobjectPath.del(state, [...arg_path, index_to_remove]);\n\t\treturn state;\n\t},\n\n\tmove_array_item_up: async ({\n\t\tstate,\n\t\targs: [arg_path, element_index],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string[], number]\n\t>): Promise<JDDPageState> => {\n\t\tconst array_values = objectPath.get(state, arg_path) as unknown[];\n\t\tconst curr = array_values[element_index];\n\t\tconst prev = array_values[element_index - 1];\n\t\tif (!prev || !curr) {\n\t\t\tthrow new Error(\"No element at such index or cannot move it up\");\n\t\t}\n\t\t[array_values[element_index - 1], array_values[element_index]] = [\n\t\t\tcurr,\n\t\t\tprev,\n\t\t];\n\t\treturn state;\n\t},\n\n\tmove_array_item_down: async ({\n\t\tstate,\n\t\targs: [arg_path, element_index],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string[], number]\n\t>): Promise<JDDPageState> => {\n\t\tconst array_values = objectPath.get(state, arg_path) as unknown[];\n\t\tconst curr = array_values[element_index];\n\t\tconst next = array_values[element_index + 1];\n\t\tif (!next || !curr) {\n\t\t\tthrow new Error(\"No element at such index or cannot move it up\");\n\t\t}\n\t\t[array_values[element_index], array_values[element_index + 1]] = [\n\t\t\tnext,\n\t\t\tcurr,\n\t\t];\n\t\treturn state;\n\t},\n\n\tchange_component: async ({\n\t\tctx,\n\t\tinputs,\n\t\tstate,\n\t\tpage,\n\t}: StatefulPageActionArgument<JDDPageState, []>): Promise<JDDPageState> => {\n\t\tconst component_name = inputs.component;\n\t\tif (!component_name || typeof component_name !== \"string\") {\n\t\t\tthrow new Error(\n\t\t\t\t\"Missing input: 'component' for action change_component. It should contain the name of the new component type\"\n\t\t\t);\n\t\t}\n\t\tconst component = (page as JDDPage).registry.get(component_name);\n\t\tif (!component) {\n\t\t\tthrow new Error(\n\t\t\t\t`Unknown or disallowed component name: ${component_name}`\n\t\t\t);\n\t\t}\n\t\treturn {\n\t\t\t...state,\n\t\t\tcomponents: [\n\t\t\t\t{\n\t\t\t\t\tcomponent_name: component_name,\n\t\t\t\t\targs:\n\t\t\t\t\t\t(await component?.getExampleValues(\n\t\t\t\t\t\t\t(page as JDDPage).makeJDDContext(ctx)\n\t\t\t\t\t\t)) || {},\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n\n\trandomize_args: async ({\n\t\tctx,\n\t\tstate,\n\t\tpage,\n\t\targs: [component_index_str],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string]\n\t>): Promise<JDDPageState> => {\n\t\tconst { component_index, component } = getComponentData(\n\t\t\tstate,\n\t\t\t[\"components\", component_index_str],\n\t\t\t(page as JDDPage).registry\n\t\t);\n\n\t\tconst component_data = state.components[component_index];\n\t\tif (!component_data) {\n\t\t\tthrow new Error(\"Missing component data\");\n\t\t}\n\t\tcomponent_data.args =\n\t\t\t(await component?.getExampleValues(\n\t\t\t\t(page as JDDPage).makeJDDContext(ctx)\n\t\t\t)) || {};\n\t\treturn {\n\t\t\t...state,\n\t\t};\n\t},\n\n\tadd_table_row: async ({\n\t\tctx,\n\t\tstate,\n\t\tpage,\n\t\targs: [arg_path, columns, type = \"row\"],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string[], number, \"header\" | \"row\" | undefined]\n\t>) => {\n\t\tconst jdd_context = (page as JDDPage).makeJDDContext(ctx);\n\t\tconst { component_args, argument } = getComponentData(\n\t\t\tstate,\n\t\t\targ_path,\n\t\t\t(page as JDDPage).registry\n\t\t);\n\t\tlet row;\n\n\t\tif (!argument) {\n\t\t\tconsole.error(\"Unknown component at path\", arg_path);\n\t\t\treturn state;\n\t\t}\n\t\tif (!(argument instanceof Table)) {\n\t\t\tthrow new Error(\n\t\t\t\t`Expected argument at path ${arg_path.join(\n\t\t\t\t\t\".\"\n\t\t\t\t)} to be of type Table`\n\t\t\t);\n\t\t}\n\t\tif (type == \"header\") {\n\t\t\trow = {\n\t\t\t\ttype: \"header\",\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n\t\t\t\theader_content: await argument.header_type.getExampleValue(\n\t\t\t\t\tjdd_context\n\t\t\t\t),\n\t\t\t};\n\t\t} else {\n\t\t\tconst cells = [];\n\t\t\tfor (let i = 0; i < columns; i++) {\n\t\t\t\tcells.push(\n\t\t\t\t\t// eslint-disable-next-line no-await-in-loop\n\t\t\t\t\tawait argument.cell_type.getExampleValue(jdd_context)\n\t\t\t\t);\n\t\t\t}\n\t\t\trow = { type: \"row\", cells };\n\t\t}\n\t\tobjectPath.push(state, [...arg_path, \"rows\"], row);\n\t\treturn state;\n\t},\n\n\tadd_table_column: async ({\n\t\tctx,\n\t\tstate,\n\t\tpage,\n\t\targs: [arg_path],\n\t}: StatefulPageActionArgument<JDDPageState, [string[]]>) => {\n\t\tconst { argument } = getComponentData(\n\t\t\tstate,\n\t\t\targ_path,\n\t\t\t(page as JDDPage).registry\n\t\t) as unknown as {\n\t\t\targument: Table<unknown, unknown>;\n\t\t};\n\t\tif (!argument) {\n\t\t\tconsole.error(\"Unknown component at path\", arg_path);\n\t\t\treturn state;\n\t\t}\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n\t\tconst tableData: TableData<unknown, unknown> = objectPath.get(\n\t\t\tstate,\n\t\t\targ_path\n\t\t);\n\t\tif (!isTableData(tableData)) {\n\t\t\tthrow new Error(\"wrong table data\");\n\t\t}\n\t\t// eslint-disable-next-line @typescript-eslint/no-for-in-array\n\t\tfor (const i in tableData.rows) {\n\t\t\tconst row = tableData.rows[i];\n\t\t\tif (isTableRegularRow(row)) {\n\t\t\t\trow.cells.push(\n\t\t\t\t\t// eslint-disable-next-line no-await-in-loop\n\t\t\t\t\tawait argument.cell_type.getExampleValue(\n\t\t\t\t\t\t(page as JDDPage).makeJDDContext(ctx)\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tobjectPath.set(state, arg_path, tableData);\n\t\tconsole.log(\"NEW STATE AFTER ADDING THE COLUN\");\n\t\tconsole.dir(state, { depth: 10 });\n\t\treturn state;\n\t},\n\n\tremove_table_column: ({\n\t\tstate,\n\t\targs: [arg_path, column_index_to_remove],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string[], number]\n\t>): JDDPageState => {\n\t\t// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n\t\tconst tableData: TableData<unknown, unknown> = objectPath.get(\n\t\t\tstate,\n\t\t\targ_path\n\t\t);\n\t\tif (!isTableData(tableData)) {\n\t\t\tthrow new Error(\"wrong table data\");\n\t\t}\n\t\t// eslint-disable-next-line @typescript-eslint/no-for-in-array\n\t\tfor (const i in tableData.rows) {\n\t\t\tconst row = tableData.rows[i];\n\t\t\tif (isTableRegularRow(row)) {\n\t\t\t\trow.cells = row.cells.filter(\n\t\t\t\t\t(_, i) => i != column_index_to_remove\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tobjectPath.set(state, arg_path, tableData);\n\t\treturn state;\n\t},\n\n\tremove_table_row: ({\n\t\tstate,\n\t\targs: [arg_path, row_index],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string[], number]\n\t>): JDDPageState => {\n\t\tobjectPath.del(state, [...arg_path, \"rows\", row_index]);\n\t\treturn state;\n\t},\n\n\tmove_table_column_right: ({\n\t\tstate,\n\t\tpage,\n\t\targs: [arg_path, column_index],\n\t}: StatefulPageActionArgument<JDDPageState, [string[], number]>) => {\n\t\tconst { component_args } = getComponentData(\n\t\t\tstate,\n\t\t\targ_path,\n\t\t\t(page as JDDPage).registry\n\t\t);\n\n\t\tconst last_path_element = arg_path.at(-1);\n\t\tif (!last_path_element) {\n\t\t\tthrow new Error(\"arg path is empty\");\n\t\t}\n\t\tconst data = objectPath.get<unknown>(\n\t\t\tcomponent_args,\n\t\t\tlast_path_element,\n\t\t\t\"\"\n\t\t);\n\t\tif (!isTableData(data)) {\n\t\t\tthrow new Error(\n\t\t\t\t\"Expected arg value for a table to be properly shaped\"\n\t\t\t);\n\t\t}\n\t\tfor (const row of data.rows) {\n\t\t\tif (row.type == \"row\") {\n\t\t\t\tmoveElement(row.cells, column_index, column_index + 1);\n\t\t\t}\n\t\t}\n\t\tobjectPath.set(state, [...arg_path, \"rows\"], data.rows);\n\t\treturn state;\n\t},\n\n\tmove_table_row_down: ({\n\t\tstate,\n\t\tpage,\n\t\targs: [arg_path, row_index],\n\t}: StatefulPageActionArgument<JDDPageState, [string[], number]>) => {\n\t\tconst { component_args } = getComponentData(\n\t\t\tstate,\n\t\t\targ_path,\n\t\t\t(page as JDDPage).registry\n\t\t);\n\t\tconst last_path_element = arg_path.at(-1);\n\t\tif (!last_path_element) {\n\t\t\tthrow new Error(\"arg path is empty\");\n\t\t}\n\t\tconst data = objectPath.get<unknown>(\n\t\t\tcomponent_args,\n\t\t\tlast_path_element,\n\t\t\t\"\"\n\t\t);\n\t\tif (!isTableData(data)) {\n\t\t\tthrow new Error(\n\t\t\t\t\"Expected arg value for a table to be properly shaped\"\n\t\t\t);\n\t\t}\n\t\tmoveElement(data.rows, row_index, row_index + 1);\n\t\tobjectPath.set(state, [...arg_path, \"rows\"], data.rows);\n\t\treturn state;\n\t},\n\n\tchange_size: ({\n\t\tstate,\n\t\tinputs,\n\t}: StatefulPageActionArgument<JDDPageState>) => {\n\t\treturn {\n\t\t\t...state,\n\t\t\tpreview_size: inputs.size,\n\t\t};\n\t},\n\n\tadd_component: async ({\n\t\tctx,\n\t\tstate,\n\t\tinputs,\n\t\tpage,\n\t}: StatefulPageActionArgument<JDDPageState, []>): Promise<JDDPageState> => {\n\t\tconst component_name = inputs.component;\n\t\tif (!component_name) {\n\t\t\tthrow new Error(\"Missing component name\");\n\t\t}\n\t\tconst component = (page as JDDPage).registry.get(component_name);\n\n\t\treturn {\n\t\t\t...state,\n\t\t\tcomponents: [\n\t\t\t\t...state.components,\n\t\t\t\t{\n\t\t\t\t\tcomponent_name: component_name,\n\t\t\t\t\targs:\n\t\t\t\t\t\t(await component?.getExampleValues(\n\t\t\t\t\t\t\t(page as JDDPage).makeJDDContext(ctx)\n\t\t\t\t\t\t)) || {},\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t},\n\n\tremove_component: async ({\n\t\tstate,\n\t\targs: [component_index],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[number]\n\t>): Promise<JDDPageState> => {\n\t\tconst newComponentState = [...state.components];\n\t\tnewComponentState.splice(component_index, 1);\n\t\treturn {\n\t\t\t...state,\n\t\t\tcomponents: newComponentState,\n\t\t};\n\t},\n\n\tmove_component_up: async ({\n\t\tstate,\n\t\targs: [component_index],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[number]\n\t>): Promise<JDDPageState> => {\n\t\tconst newComps = [...state.components];\n\t\tconst prev = newComps[component_index - 1];\n\t\tconst curr = newComps[component_index];\n\t\tif (!prev || !curr) {\n\t\t\tthrow new Error(\"No component at such index or cannot move it up\");\n\t\t}\n\t\t[newComps[component_index], newComps[component_index - 1]] = [\n\t\t\tprev,\n\t\t\tcurr,\n\t\t];\n\t\treturn { ...state, components: newComps };\n\t},\n\n\tmove_component_down: async ({\n\t\tstate,\n\t\targs: [component_index],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[number]\n\t>): Promise<JDDPageState> => {\n\t\tconst newComps = [...state.components];\n\t\tconst next = newComps[component_index + 1];\n\t\tconst curr = newComps[component_index];\n\t\tif (!next || !curr) {\n\t\t\tthrow new Error(\"No component at such index or cannot move it up\");\n\t\t}\n\t\t[newComps[component_index], newComps[component_index + 1]] = [\n\t\t\tnext,\n\t\t\tcurr,\n\t\t];\n\t\treturn { ...state, components: newComps };\n\t},\n\n\tremove_file: async ({\n\t\tstate,\n\t\targs: [arg_path],\n\t}: StatefulPageActionArgument<\n\t\tJDDPageState,\n\t\t[string[]]\n\t>): Promise<JDDPageState> => {\n\t\tobjectPath.set(state, arg_path, null);\n\t\treturn state;\n\t},\n\n\treplace_state: async ({\n\t\tctx,\n\t\tstate,\n\t\tinputs,\n\t\tpage,\n\t}: StatefulPageActionArgument<JDDPageState>) => {\n\t\tconst new_state = await (page as JDDPage).deserializeState(\n\t\t\tctx,\n\t\t\tinputs[\"state_override\"] || \"{}\"\n\t\t);\n\t\treturn {\n\t\t\t...new_state,\n\t\t\tpreview_size: state.preview_size,\n\t\t};\n\t},\n};\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["i"]
|
|
7
|
-
}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { documentContainerFromParsed, JDD } from "@sealcode/jdd";
|
|
2
|
-
import { tempstream } from "tempstream";
|
|
3
|
-
import { ComponentPreviewActions } from "./component-preview-actions.js";
|
|
4
|
-
import JDDPage from "./jdd-page.js";
|
|
5
|
-
class JDDDebugger extends JDDPage {
|
|
6
|
-
constructor() {
|
|
7
|
-
super(...arguments);
|
|
8
|
-
this.actions = ComponentPreviewActions;
|
|
9
|
-
this.containerSizes = ["320", "600", "800", "1024", "1300", "1920"];
|
|
10
|
-
}
|
|
11
|
-
renderParameterButtons(state) {
|
|
12
|
-
const all_components = super.getRegistryComponents();
|
|
13
|
-
if (!state.components[0]) {
|
|
14
|
-
console.error("No components are present in state.components");
|
|
15
|
-
}
|
|
16
|
-
return `<div>
|
|
17
|
-
<input type="submit" value="Preview" />
|
|
18
|
-
<select
|
|
19
|
-
name="component"
|
|
20
|
-
onchange="${this.makeActionCallback("change_component")}"
|
|
21
|
-
autocomplete="off"
|
|
22
|
-
>
|
|
23
|
-
${Object.entries(all_components).map(
|
|
24
|
-
([name]) => {
|
|
25
|
-
var _a;
|
|
26
|
-
return `<option
|
|
27
|
-
value="${name}"
|
|
28
|
-
${name == ((_a = state.components[0]) == null ? void 0 : _a.component_name) ? "selected" : ""}
|
|
29
|
-
>
|
|
30
|
-
${name}
|
|
31
|
-
</option>`;
|
|
32
|
-
}
|
|
33
|
-
).join("")}
|
|
34
|
-
</select>
|
|
35
|
-
<noscript>
|
|
36
|
-
${this.makeActionButton(state, "change_component")}
|
|
37
|
-
</noscript>
|
|
38
|
-
${this.makeActionButton(state, "randomize_args", "0")}
|
|
39
|
-
</div>`;
|
|
40
|
-
}
|
|
41
|
-
async getInitialState(ctx) {
|
|
42
|
-
const first_component = Object.entries(this.registry.getAll())[0];
|
|
43
|
-
if (!first_component) {
|
|
44
|
-
throw new Error("No registered components!");
|
|
45
|
-
}
|
|
46
|
-
const [component_name, component] = first_component;
|
|
47
|
-
const initial_state = {
|
|
48
|
-
components: [
|
|
49
|
-
{
|
|
50
|
-
component_name,
|
|
51
|
-
args: await component.getExampleValues(
|
|
52
|
-
this.makeJDDContext(ctx)
|
|
53
|
-
),
|
|
54
|
-
open: true
|
|
55
|
-
}
|
|
56
|
-
]
|
|
57
|
-
};
|
|
58
|
-
return initial_state;
|
|
59
|
-
}
|
|
60
|
-
wrapInLayout(ctx, content, state) {
|
|
61
|
-
const jdd = new JDD(
|
|
62
|
-
this.registry,
|
|
63
|
-
this.makeJDDContext(ctx),
|
|
64
|
-
documentContainerFromParsed(state.components)
|
|
65
|
-
);
|
|
66
|
-
return this.html({
|
|
67
|
-
ctx,
|
|
68
|
-
title: "Components",
|
|
69
|
-
body: content,
|
|
70
|
-
description: "",
|
|
71
|
-
css_clumps: ["jdd-page", ...jdd.getAllCSSClumps()],
|
|
72
|
-
htmlOptions: {
|
|
73
|
-
morphing: true,
|
|
74
|
-
preserveScroll: true,
|
|
75
|
-
autoRefreshCSS: true,
|
|
76
|
-
showBanner: false,
|
|
77
|
-
navbar: () => ``,
|
|
78
|
-
bodyClasses: ["jdd-editor"],
|
|
79
|
-
showBottomNavbar: false,
|
|
80
|
-
showFooter: false,
|
|
81
|
-
loadHamburgerMenu: false,
|
|
82
|
-
loadSearchModal: false
|
|
83
|
-
},
|
|
84
|
-
makeHead: (...args) => tempstream`${this.defaultHead(
|
|
85
|
-
...args
|
|
86
|
-
)}${jdd.renderEarlyAssets()}`
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
export {
|
|
91
|
-
JDDDebugger
|
|
92
|
-
};
|
|
93
|
-
//# sourceMappingURL=components.sreact.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components.sreact.ts"],
|
|
4
|
-
"sourcesContent": ["import { documentContainerFromParsed, JDD } from \"@sealcode/jdd\";\nimport type { Context } from \"koa\";\nimport type { Templatable } from \"tempstream\";\nimport { tempstream } from \"tempstream\";\nimport type { Stringifiable } from \"tempstream/@types/stringify.js\";\nimport { ComponentPreviewActions } from \"./component-preview-actions.js\";\nimport type { JDDPageState } from \"./jdd-page.js\";\nimport JDDPage from \"./jdd-page.js\";\n\nexport class JDDDebugger extends JDDPage {\n\trenderParameterButtons(state: JDDPageState): Stringifiable {\n\t\tconst all_components = super.getRegistryComponents();\n\t\tif (!state.components[0]) {\n\t\t\tconsole.error(\"No components are present in state.components\");\n\t\t}\n\t\treturn /* HTML */ `<div>\n\t\t\t<input type=\"submit\" value=\"Preview\" />\n\t\t\t<select\n\t\t\t\tname=\"component\"\n\t\t\t\tonchange=\"${this.makeActionCallback(\"change_component\")}\"\n\t\t\t\tautocomplete=\"off\"\n\t\t\t>\n\t\t\t\t${Object.entries(all_components)\n\t\t\t\t\t.map(\n\t\t\t\t\t\t([name]) => /* HTML */ `<option\n\t\t\t\t\t\t\tvalue=\"${name}\"\n\t\t\t\t\t\t\t${name == state.components[0]?.component_name\n\t\t\t\t\t\t\t\t? \"selected\"\n\t\t\t\t\t\t\t\t: \"\"}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t${name}\n\t\t\t\t\t\t</option>`\n\t\t\t\t\t)\n\t\t\t\t\t.join(\"\")}\n\t\t\t</select>\n\t\t\t<noscript>\n\t\t\t\t${this.makeActionButton(state, \"change_component\")}\n\t\t\t</noscript>\n\t\t\t${this.makeActionButton(state, \"randomize_args\", \"0\")}\n\t\t</div>`;\n\t}\n\tactions = ComponentPreviewActions;\n\n\tasync getInitialState(ctx: Context) {\n\t\tconst first_component = Object.entries(this.registry.getAll())[0];\n\t\tif (!first_component) {\n\t\t\tthrow new Error(\"No registered components!\");\n\t\t}\n\t\tconst [component_name, component] = first_component;\n\t\tconst initial_state = {\n\t\t\tcomponents: [\n\t\t\t\t{\n\t\t\t\t\tcomponent_name: component_name,\n\t\t\t\t\targs: await component.getExampleValues(\n\t\t\t\t\t\tthis.makeJDDContext(ctx)\n\t\t\t\t\t),\n\t\t\t\t\topen: true,\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t\treturn initial_state;\n\t}\n\n\twrapInLayout(\n\t\tctx: Context,\n\t\tcontent: Templatable,\n\t\tstate: JDDPageState\n\t): Templatable {\n\t\tconst jdd = new JDD(\n\t\t\tthis.registry,\n\t\t\tthis.makeJDDContext(ctx),\n\t\t\tdocumentContainerFromParsed(state.components)\n\t\t);\n\t\treturn this.html({\n\t\t\tctx,\n\t\t\ttitle: \"Components\",\n\t\t\tbody: content,\n\t\t\tdescription: \"\",\n\t\t\tcss_clumps: [\"jdd-page\", ...jdd.getAllCSSClumps()],\n\t\t\thtmlOptions: {\n\t\t\t\tmorphing: true,\n\t\t\t\tpreserveScroll: true,\n\t\t\t\tautoRefreshCSS: true,\n\t\t\t\tshowBanner: false,\n\t\t\t\tnavbar: () => ``,\n\t\t\t\tbodyClasses: [\"jdd-editor\"],\n\t\t\t\tshowBottomNavbar: false,\n\t\t\t\tshowFooter: false,\n\t\t\t\tloadHamburgerMenu: false,\n\t\t\t\tloadSearchModal: false,\n\t\t\t},\n\t\t\tmakeHead: (...args: unknown[]) =>\n\t\t\t\ttempstream`${this.defaultHead(\n\t\t\t\t\t...args\n\t\t\t\t)}${jdd.renderEarlyAssets()}`,\n\t\t});\n\t}\n\n\tcontainerSizes = [\"320\", \"600\", \"800\", \"1024\", \"1300\", \"1920\"];\n}\n"],
|
|
5
|
-
"mappings": "AAAA,SAAS,6BAA6B,WAAW;AAGjD,SAAS,kBAAkB;AAE3B,SAAS,+BAA+B;AAExC,OAAO,aAAa;AAEb,MAAM,oBAAoB,QAAQ;AAAA,EAAlC;AAAA;AAgCN,mBAAU;AAyDV,0BAAiB,CAAC,OAAO,OAAO,OAAO,QAAQ,QAAQ,MAAM;AAAA;AAAA,EAxF7D,uBAAuB,OAAoC;AAC1D,UAAM,iBAAiB,MAAM,sBAAsB;AACnD,QAAI,CAAC,MAAM,WAAW,IAAI;AACzB,cAAQ,MAAM,+CAA+C;AAAA,IAC9D;AACA,WAAkB;AAAA;AAAA;AAAA;AAAA,gBAIJ,KAAK,mBAAmB,kBAAkB;AAAA;AAAA;AAAA,MAGpD,OAAO,QAAQ,cAAc,EAC7B;AAAA,MACA,CAAC,CAAC,IAAI,MAAG;AAxBf;AAwB6B;AAAA,gBACb;AAAA,SACP,UAAQ,WAAM,WAAW,OAAjB,mBAAqB,kBAC5B,aACA;AAAA;AAAA,SAED;AAAA;AAAA;AAAA,IAEJ,EACC,KAAK,EAAE;AAAA;AAAA;AAAA,MAGP,KAAK,iBAAiB,OAAO,kBAAkB;AAAA;AAAA,KAEhD,KAAK,iBAAiB,OAAO,kBAAkB,GAAG;AAAA;AAAA,EAEtD;AAAA,EAGA,MAAM,gBAAgB,KAAc;AACnC,UAAM,kBAAkB,OAAO,QAAQ,KAAK,SAAS,OAAO,CAAC,EAAE;AAC/D,QAAI,CAAC,iBAAiB;AACrB,YAAM,IAAI,MAAM,2BAA2B;AAAA,IAC5C;AACA,UAAM,CAAC,gBAAgB,SAAS,IAAI;AACpC,UAAM,gBAAgB;AAAA,MACrB,YAAY;AAAA,QACX;AAAA,UACC;AAAA,UACA,MAAM,MAAM,UAAU;AAAA,YACrB,KAAK,eAAe,GAAG;AAAA,UACxB;AAAA,UACA,MAAM;AAAA,QACP;AAAA,MACD;AAAA,IACD;AACA,WAAO;AAAA,EACR;AAAA,EAEA,aACC,KACA,SACA,OACc;AACd,UAAM,MAAM,IAAI;AAAA,MACf,KAAK;AAAA,MACL,KAAK,eAAe,GAAG;AAAA,MACvB,4BAA4B,MAAM,UAAU;AAAA,IAC7C;AACA,WAAO,KAAK,KAAK;AAAA,MAChB;AAAA,MACA,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY,CAAC,YAAY,GAAG,IAAI,gBAAgB,CAAC;AAAA,MACjD,aAAa;AAAA,QACZ,UAAU;AAAA,QACV,gBAAgB;AAAA,QAChB,gBAAgB;AAAA,QAChB,YAAY;AAAA,QACZ,QAAQ,MAAM;AAAA,QACd,aAAa,CAAC,YAAY;AAAA,QAC1B,kBAAkB;AAAA,QAClB,YAAY;AAAA,QACZ,mBAAmB;AAAA,QACnB,iBAAiB;AAAA,MAClB;AAAA,MACA,UAAU,IAAI,SACb,aAAa,KAAK;AAAA,QACjB,GAAG;AAAA,MACJ,IAAI,IAAI,kBAAkB;AAAA,IAC5B,CAAC;AAAA,EACF;AAGD;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Controller } from "stimulus";
|
|
2
|
-
class AutogrowTextarea extends Controller {
|
|
3
|
-
connect() {
|
|
4
|
-
this.autogrow();
|
|
5
|
-
}
|
|
6
|
-
autogrow() {
|
|
7
|
-
this.element.parentNode.dataset.replicatedValue = this.element.value;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
export {
|
|
11
|
-
AutogrowTextarea as default
|
|
12
|
-
};
|
|
13
|
-
//# sourceMappingURL=autogrow-textarea.stimulus.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/controllers/autogrow-textarea.stimulus.ts"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable @typescript-eslint/consistent-type-assertions, @typescript-eslint/no-unsafe-assignment */\nimport { Controller } from \"stimulus\";\n\nexport default class AutogrowTextarea extends Controller<HTMLTextAreaElement> {\n\tconnect() {\n\t\tthis.autogrow();\n\t}\n\n\tautogrow() {\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access\n\t\t(this.element.parentNode as any).dataset.replicatedValue = this.element.value;\n\t}\n}\n"],
|
|
5
|
-
"mappings": "AACA,SAAS,kBAAkB;AAE3B,MAAO,yBAAuC,WAAgC;AAAA,EAC7E,UAAU;AACT,SAAK,SAAS;AAAA,EACf;AAAA,EAEA,WAAW;AAEV,IAAC,KAAK,QAAQ,WAAmB,QAAQ,kBAAkB,KAAK,QAAQ;AAAA,EACzE;AACD;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|