@pie-element/select-text 13.1.2-next.1 → 13.1.2
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/CHANGELOG.json +1422 -0
- package/CHANGELOG.md +2288 -0
- package/LICENSE.md +5 -0
- package/README.md +5 -0
- package/configure/CHANGELOG.json +1032 -0
- package/configure/CHANGELOG.md +2023 -0
- package/configure/lib/defaultConfiguration.js +177 -0
- package/configure/lib/defaultConfiguration.js.map +1 -0
- package/configure/lib/design.js +406 -0
- package/configure/lib/design.js.map +1 -0
- package/configure/lib/index.js +128 -0
- package/configure/lib/index.js.map +1 -0
- package/configure/lib/utils.js +92 -0
- package/configure/lib/utils.js.map +1 -0
- package/configure/package.json +25 -0
- package/controller/CHANGELOG.json +442 -0
- package/controller/CHANGELOG.md +1468 -0
- package/controller/lib/defaults.js +25 -0
- package/controller/lib/defaults.js.map +1 -0
- package/controller/lib/index.js +258 -0
- package/controller/lib/index.js.map +1 -0
- package/controller/package.json +16 -0
- package/docs/config-schema.json +2135 -0
- package/docs/config-schema.json.md +1579 -0
- package/docs/demo/config.js +8 -0
- package/docs/demo/generate.js +823 -0
- package/docs/demo/index.html +1 -0
- package/docs/demo/session.js +24 -0
- package/docs/pie-schema.json +1248 -0
- package/docs/pie-schema.json.md +711 -0
- package/lib/index.js +103 -0
- package/lib/index.js.map +1 -0
- package/lib/main.js +191 -0
- package/lib/main.js.map +1 -0
- package/lib/print.js +87 -0
- package/lib/print.js.map +1 -0
- package/lib/utils.js +80 -0
- package/lib/utils.js.map +1 -0
- package/package.json +21 -91
- package/configure.js +0 -2
- package/controller.js +0 -1
- package/dist/author/defaultConfiguration.d.ts +0 -179
- package/dist/author/defaultConfiguration.js +0 -141
- package/dist/author/design.d.ts +0 -38
- package/dist/author/design.js +0 -263
- package/dist/author/index.d.ts +0 -27
- package/dist/author/index.js +0 -74
- package/dist/author/utils.d.ts +0 -10
- package/dist/author/utils.js +0 -50
- package/dist/browser/Check-BEV41wEJ.js +0 -9254
- package/dist/browser/Check-BEV41wEJ.js.map +0 -1
- package/dist/browser/author/index.js +0 -41129
- package/dist/browser/author/index.js.map +0 -1
- package/dist/browser/controller/index.js +0 -194
- package/dist/browser/controller/index.js.map +0 -1
- package/dist/browser/delivery/index.js +0 -89
- package/dist/browser/delivery/index.js.map +0 -1
- package/dist/browser/dist-SG92p6xV.js +0 -319
- package/dist/browser/dist-SG92p6xV.js.map +0 -1
- package/dist/browser/main-gsFiosO8.js +0 -4804
- package/dist/browser/main-gsFiosO8.js.map +0 -1
- package/dist/browser/print/index.js +0 -41
- package/dist/browser/print/index.js.map +0 -1
- package/dist/browser/select-text.css +0 -2
- package/dist/controller/defaults.d.ts +0 -27
- package/dist/controller/defaults.js +0 -21
- package/dist/controller/index.d.ts +0 -25
- package/dist/controller/index.js +0 -121
- package/dist/delivery/index.d.ts +0 -19
- package/dist/delivery/index.js +0 -60
- package/dist/delivery/main.d.ts +0 -34
- package/dist/delivery/main.js +0 -136
- package/dist/delivery/utils.d.ts +0 -10
- package/dist/delivery/utils.js +0 -47
- package/dist/index.d.ts +0 -1
- package/dist/index.iife.d.ts +0 -8
- package/dist/index.iife.js +0 -167
- package/dist/index.js +0 -2
- package/dist/print/index.d.ts +0 -15
- package/dist/print/index.js +0 -41
- package/dist/runtime-support.d.ts +0 -12
- package/dist/runtime-support.js +0 -12
package/dist/author/design.js
DELETED
|
@@ -1,263 +0,0 @@
|
|
|
1
|
-
import { generateValidationMessage as e } from "./utils.js";
|
|
2
|
-
import t from "react";
|
|
3
|
-
import n from "prop-types";
|
|
4
|
-
import { Tokenizer as r } from "@pie-lib/text-select";
|
|
5
|
-
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
6
|
-
import { styled as o } from "@mui/material/styles";
|
|
7
|
-
import s from "debug";
|
|
8
|
-
import { cloneDeep as c, debounce as l } from "@pie-element/shared-lodash";
|
|
9
|
-
import u from "@mui/material/TextField";
|
|
10
|
-
import { FeedbackConfig as ee, InputContainer as d, NumberTextField as f, layout as p, settings as m } from "@pie-lib/config-ui";
|
|
11
|
-
import h from "@mui/material/Chip";
|
|
12
|
-
import te from "@mui/icons-material/Info";
|
|
13
|
-
import g from "@pie-lib/editable-html-tip-tap";
|
|
14
|
-
import _ from "@mui/material/Tooltip";
|
|
15
|
-
//#region src/author/design.tsx
|
|
16
|
-
var { Panel: ne, toggle: v, radio: y, dropdown: re } = m, b = o(d)(({ theme: e }) => ({
|
|
17
|
-
width: "100%",
|
|
18
|
-
paddingTop: e.spacing(2),
|
|
19
|
-
marginBottom: e.spacing(2)
|
|
20
|
-
})), x = o(g)({ width: "100%" }), S = o("div")(({ theme: e }) => ({
|
|
21
|
-
fontSize: e.typography.fontSize - 2,
|
|
22
|
-
color: e.palette.error.main,
|
|
23
|
-
paddingTop: e.spacing(1)
|
|
24
|
-
})), ie = o(u)({ width: "100%" }), ae = o(d)(({ theme: e }) => ({
|
|
25
|
-
paddingRight: 0,
|
|
26
|
-
marginRight: 0,
|
|
27
|
-
position: "relative",
|
|
28
|
-
"&:after": {
|
|
29
|
-
position: "absolute",
|
|
30
|
-
bottom: 0,
|
|
31
|
-
left: 0,
|
|
32
|
-
right: 0,
|
|
33
|
-
height: "1px",
|
|
34
|
-
content: "\"\"",
|
|
35
|
-
backgroundColor: e.palette.primary.main
|
|
36
|
-
},
|
|
37
|
-
marginBottom: e.spacing(1)
|
|
38
|
-
})), C = o(_)(({ theme: e }) => ({ "& .MuiTooltip-tooltip": {
|
|
39
|
-
fontSize: e.typography.fontSize - 2,
|
|
40
|
-
whiteSpace: "pre",
|
|
41
|
-
maxWidth: "500px"
|
|
42
|
-
} })), oe = o(r)(({ theme: e }) => ({ marginTop: e.spacing(2) })), w = o(h)(({ theme: e }) => ({
|
|
43
|
-
marginTop: e.spacing(.5),
|
|
44
|
-
marginRight: e.spacing(2)
|
|
45
|
-
})), se = o("div")(({ theme: e }) => ({
|
|
46
|
-
display: "flex",
|
|
47
|
-
alignItems: "center",
|
|
48
|
-
flexWrap: "wrap",
|
|
49
|
-
marginBottom: e.spacing(2.5)
|
|
50
|
-
})), ce = o(f)(({ theme: e }) => ({
|
|
51
|
-
width: "180px",
|
|
52
|
-
margin: `${e.spacing(.5)} auto 0`
|
|
53
|
-
})), le = s("@pie-element:select-text:configure"), T = class extends t.Component {
|
|
54
|
-
static propTypes = {
|
|
55
|
-
model: n.object.isRequired,
|
|
56
|
-
configuration: n.object.isRequired,
|
|
57
|
-
onModelChanged: n.func.isRequired,
|
|
58
|
-
onConfigurationChanged: n.func.isRequired,
|
|
59
|
-
imageSupport: n.shape({
|
|
60
|
-
add: n.func.isRequired,
|
|
61
|
-
delete: n.func.isRequired
|
|
62
|
-
}),
|
|
63
|
-
uploadSoundSupport: n.object
|
|
64
|
-
};
|
|
65
|
-
static defaultProps = {};
|
|
66
|
-
constructor(e) {
|
|
67
|
-
super(e);
|
|
68
|
-
let { model: t } = this.props;
|
|
69
|
-
this.state = { text: t && t.text || "" };
|
|
70
|
-
}
|
|
71
|
-
UNSAFE_componentWillReceiveProps(e) {
|
|
72
|
-
let { model: t } = e;
|
|
73
|
-
t && t.text && this.setState({ text: t.text });
|
|
74
|
-
}
|
|
75
|
-
updateText = l((e) => {
|
|
76
|
-
this.apply((t) => {
|
|
77
|
-
t.text = e, t.tokens = [];
|
|
78
|
-
});
|
|
79
|
-
}, 200);
|
|
80
|
-
changeText = (e) => this.updateText(e.target.value);
|
|
81
|
-
changeTokens = (e, t) => {
|
|
82
|
-
this.apply((n) => {
|
|
83
|
-
n.tokens = e, n.mode = t;
|
|
84
|
-
let r = e.filter((e) => e.correct).length, i = isFinite(n.maxSelections) ? n.maxSelections : 0;
|
|
85
|
-
n.maxSelections = Math.max(i, r);
|
|
86
|
-
});
|
|
87
|
-
};
|
|
88
|
-
changeMaxSelections = (e, t) => {
|
|
89
|
-
this.apply((e) => e.maxSelections = t);
|
|
90
|
-
};
|
|
91
|
-
apply = (e) => {
|
|
92
|
-
let { onModelChanged: t, model: n } = this.props, r = c(n);
|
|
93
|
-
e(r), t(r);
|
|
94
|
-
};
|
|
95
|
-
changeFeedback = (e) => {
|
|
96
|
-
this.apply((t) => t.feedback = e);
|
|
97
|
-
};
|
|
98
|
-
changePartialScoring = (e) => {
|
|
99
|
-
let { onModelChanged: t, model: n } = this.props, r = c(n);
|
|
100
|
-
r.partialScoring = e, t(r);
|
|
101
|
-
};
|
|
102
|
-
onPromptChanged = (e) => {
|
|
103
|
-
let { onModelChanged: t, model: n } = this.props, r = c(n);
|
|
104
|
-
r.prompt = e, t(r);
|
|
105
|
-
};
|
|
106
|
-
onTeacherInstructionsChanged = (e) => {
|
|
107
|
-
let { onModelChanged: t, model: n } = this.props, r = c(n);
|
|
108
|
-
r.teacherInstructions = e, t(r);
|
|
109
|
-
};
|
|
110
|
-
onRationaleChanged = (e) => {
|
|
111
|
-
let { onModelChanged: t, model: n } = this.props;
|
|
112
|
-
t({
|
|
113
|
-
...n,
|
|
114
|
-
rationale: e
|
|
115
|
-
});
|
|
116
|
-
};
|
|
117
|
-
render() {
|
|
118
|
-
let { text: t } = this.state, { configuration: n, imageSupport: r, model: o, onConfigurationChanged: s, onModelChanged: c, uploadSoundSupport: l } = this.props, { baseInputConfiguration: u = {}, correctAnswer: d = {}, contentDimensions: f = {}, feedback: m = {}, highlightChoices: h = {}, mode: g = {}, partialScoring: _ = {}, prompt: T = {}, rationale: E = {}, selectionCount: D = {}, selections: O = {}, settingsPanelDisabled: ue, scoringType: k = {}, spellCheck: A = {}, studentInstructions: j = {}, teacherInstructions: M = {}, text: N = {}, tokens: P = {}, maxImageWidth: F = {}, maxImageHeight: I = {}, withRubric: L = {}, mathMlOptions: R = {}, language: z = {}, languageChoices: B = {} } = n || {}, { errors: V, extraCSSRules: H, feedbackEnabled: de, promptEnabled: fe, rationaleEnabled: pe, spellCheckEnabled: U, teacherInstructionsEnabled: me, toolbarEditorPosition: he } = o || {}, { prompt: W, rationale: G, selectionsError: K, teacherInstructions: q, tokensError: J } = V || {}, ge = e(n), Y = F && F.prompt, X = I && I.prompt, { tokens: Z } = o;
|
|
119
|
-
Z ||= [];
|
|
120
|
-
let Q = { position: he === "top" ? "top" : "bottom" };
|
|
121
|
-
le("[render] maxSelections:", o.maxSelections);
|
|
122
|
-
let _e = {
|
|
123
|
-
partialScoring: _.settings && v(_.label),
|
|
124
|
-
highlightChoices: h.settings && v(h.label),
|
|
125
|
-
feedbackEnabled: m.settings && v(m.label),
|
|
126
|
-
"language.enabled": z.settings && v(z.label, !0),
|
|
127
|
-
language: z.settings && z.enabled && re(B.label, B.options)
|
|
128
|
-
}, ve = {
|
|
129
|
-
teacherInstructionsEnabled: M.settings && v(M.label),
|
|
130
|
-
studentInstructionsEnabled: j.settings && v(j.label),
|
|
131
|
-
promptEnabled: T.settings && v(T.label),
|
|
132
|
-
rationaleEnabled: E.settings && v(E.label),
|
|
133
|
-
spellCheckEnabled: A.settings && v(A.label),
|
|
134
|
-
scoringType: k.settings && y(k.label, ["auto", "rubric"]),
|
|
135
|
-
rubricEnabled: L?.settings && v(L?.label)
|
|
136
|
-
}, $ = (e = {}) => ({
|
|
137
|
-
...u,
|
|
138
|
-
...e
|
|
139
|
-
});
|
|
140
|
-
return /* @__PURE__ */ a(p.ConfigLayout, {
|
|
141
|
-
extraCSSRules: H,
|
|
142
|
-
dimensions: f,
|
|
143
|
-
hideSettings: ue,
|
|
144
|
-
settings: /* @__PURE__ */ i(ne, {
|
|
145
|
-
model: o,
|
|
146
|
-
configuration: n,
|
|
147
|
-
onChangeModel: (e) => c(e),
|
|
148
|
-
onChangeConfiguration: s,
|
|
149
|
-
groups: {
|
|
150
|
-
Settings: _e,
|
|
151
|
-
Properties: ve
|
|
152
|
-
}
|
|
153
|
-
}),
|
|
154
|
-
children: [
|
|
155
|
-
me && /* @__PURE__ */ a(b, {
|
|
156
|
-
label: M.label,
|
|
157
|
-
children: [/* @__PURE__ */ i(x, {
|
|
158
|
-
markup: o.teacherInstructions || "",
|
|
159
|
-
onChange: this.onTeacherInstructionsChanged,
|
|
160
|
-
imageSupport: r,
|
|
161
|
-
nonEmpty: !1,
|
|
162
|
-
error: q,
|
|
163
|
-
toolbarOpts: Q,
|
|
164
|
-
pluginProps: $(n?.teacherInstructions?.inputConfiguration),
|
|
165
|
-
spellCheck: U,
|
|
166
|
-
maxImageWidth: F && F.teacherInstructions || Y,
|
|
167
|
-
maxImageHeight: I && I.teacherInstructions || X,
|
|
168
|
-
uploadSoundSupport: l,
|
|
169
|
-
languageCharactersProps: [{ language: "spanish" }, { language: "special" }],
|
|
170
|
-
mathMlOptions: R
|
|
171
|
-
}), q && /* @__PURE__ */ i(S, { children: q })]
|
|
172
|
-
}),
|
|
173
|
-
fe && /* @__PURE__ */ a(b, {
|
|
174
|
-
label: T.label || "",
|
|
175
|
-
children: [/* @__PURE__ */ i(x, {
|
|
176
|
-
markup: o.prompt,
|
|
177
|
-
onChange: this.onPromptChanged,
|
|
178
|
-
imageSupport: r,
|
|
179
|
-
error: W,
|
|
180
|
-
toolbarOpts: Q,
|
|
181
|
-
pluginProps: $(n?.prompt?.inputConfiguration),
|
|
182
|
-
spellCheck: U,
|
|
183
|
-
maxImageWidth: Y,
|
|
184
|
-
maxImageHeight: X,
|
|
185
|
-
uploadSoundSupport: l,
|
|
186
|
-
languageCharactersProps: [{ language: "spanish" }, { language: "special" }],
|
|
187
|
-
mathMlOptions: R
|
|
188
|
-
}), W && /* @__PURE__ */ i(S, { children: W })]
|
|
189
|
-
}),
|
|
190
|
-
N.settings && /* @__PURE__ */ i(b, {
|
|
191
|
-
label: N.label || "",
|
|
192
|
-
children: /* @__PURE__ */ i(ie, {
|
|
193
|
-
variant: "standard",
|
|
194
|
-
multiline: !0,
|
|
195
|
-
defaultValue: t,
|
|
196
|
-
onChange: this.changeText,
|
|
197
|
-
spellCheck: U
|
|
198
|
-
})
|
|
199
|
-
}),
|
|
200
|
-
P.settings && /* @__PURE__ */ a(ae, {
|
|
201
|
-
label: P.label || "",
|
|
202
|
-
children: [/* @__PURE__ */ i(C, {
|
|
203
|
-
disableFocusListener: !0,
|
|
204
|
-
disableTouchListener: !0,
|
|
205
|
-
placement: "right",
|
|
206
|
-
title: ge,
|
|
207
|
-
children: /* @__PURE__ */ i(te, {
|
|
208
|
-
fontSize: "small",
|
|
209
|
-
color: "primary",
|
|
210
|
-
style: {
|
|
211
|
-
position: "absolute",
|
|
212
|
-
left: "48px",
|
|
213
|
-
top: "-3px"
|
|
214
|
-
}
|
|
215
|
-
})
|
|
216
|
-
}), /* @__PURE__ */ i(oe, {
|
|
217
|
-
text: o.text,
|
|
218
|
-
tokens: Z,
|
|
219
|
-
onChange: this.changeTokens
|
|
220
|
-
})]
|
|
221
|
-
}),
|
|
222
|
-
J && /* @__PURE__ */ i(S, { children: J }),
|
|
223
|
-
K && /* @__PURE__ */ i(S, { children: K }),
|
|
224
|
-
/* @__PURE__ */ a(se, { children: [
|
|
225
|
-
g.settings && /* @__PURE__ */ i(w, { label: `${g.label}: ${o.mode ? o.mode : "None"}` }),
|
|
226
|
-
O.settings && /* @__PURE__ */ i(w, { label: `${O.label}: ${Z.length}` }),
|
|
227
|
-
d.settings && /* @__PURE__ */ i(w, { label: `${d.label}: ${Z.filter((e) => e.correct).length}` }),
|
|
228
|
-
D.settings && /* @__PURE__ */ i(ce, {
|
|
229
|
-
min: Z.filter((e) => e.correct).length || 0,
|
|
230
|
-
label: `${D.label} (0:any)`,
|
|
231
|
-
max: Z.length,
|
|
232
|
-
value: o.maxSelections,
|
|
233
|
-
onChange: this.changeMaxSelections
|
|
234
|
-
})
|
|
235
|
-
] }),
|
|
236
|
-
pe && /* @__PURE__ */ a(b, {
|
|
237
|
-
label: E.label || "",
|
|
238
|
-
children: [/* @__PURE__ */ i(x, {
|
|
239
|
-
markup: o.rationale || "",
|
|
240
|
-
onChange: this.onRationaleChanged,
|
|
241
|
-
imageSupport: r,
|
|
242
|
-
error: G,
|
|
243
|
-
toolbarOpts: Q,
|
|
244
|
-
pluginProps: $(n?.rationale?.inputConfiguration),
|
|
245
|
-
spellCheck: U,
|
|
246
|
-
maxImageWidth: F && F.rationale || Y,
|
|
247
|
-
maxImageHeight: I && I.rationale || X,
|
|
248
|
-
uploadSoundSupport: l,
|
|
249
|
-
languageCharactersProps: [{ language: "spanish" }, { language: "special" }],
|
|
250
|
-
mathMlOptions: R
|
|
251
|
-
}), G && /* @__PURE__ */ i(S, { children: G })]
|
|
252
|
-
}),
|
|
253
|
-
de && /* @__PURE__ */ i(ee, {
|
|
254
|
-
feedback: o.feedback,
|
|
255
|
-
onChange: this.changeFeedback,
|
|
256
|
-
toolbarOpts: Q
|
|
257
|
-
})
|
|
258
|
-
]
|
|
259
|
-
});
|
|
260
|
-
}
|
|
261
|
-
};
|
|
262
|
-
//#endregion
|
|
263
|
-
export { T as default };
|
package/dist/author/index.d.ts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @synced-from pie-elements/packages/select-text/configure/src/index.js
|
|
3
|
-
* @auto-generated
|
|
4
|
-
*
|
|
5
|
-
* This file is automatically synced from pie-elements and converted to TypeScript.
|
|
6
|
-
* Manual edits will be overwritten on next sync.
|
|
7
|
-
* To make changes, edit the upstream JavaScript file and run sync again.
|
|
8
|
-
*/
|
|
9
|
-
export default class SelectTextConfigure extends HTMLElement {
|
|
10
|
-
static createDefaultModel: (model?: {}) => any;
|
|
11
|
-
constructor();
|
|
12
|
-
set model(m: any);
|
|
13
|
-
set configuration(c: any);
|
|
14
|
-
connectedCallback(): void;
|
|
15
|
-
modelChanged(m: any): void;
|
|
16
|
-
onConfigurationChanged(c: any): void;
|
|
17
|
-
/**
|
|
18
|
-
*
|
|
19
|
-
* @param {done, progress, file} handler
|
|
20
|
-
*/
|
|
21
|
-
insertImage(handler: any): void;
|
|
22
|
-
onDeleteImage(src: any, done: any): void;
|
|
23
|
-
insertSound(handler: any): void;
|
|
24
|
-
onDeleteSound(src: any, done: any): void;
|
|
25
|
-
render(): void;
|
|
26
|
-
disconnectedCallback(): void;
|
|
27
|
-
}
|
package/dist/author/index.js
DELETED
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
import { generateModel as e } from "./utils.js";
|
|
2
|
-
import t from "./design.js";
|
|
3
|
-
import n from "./defaultConfiguration.js";
|
|
4
|
-
import r from "react";
|
|
5
|
-
import { createRoot as i } from "react-dom/client";
|
|
6
|
-
import { DeleteImageEvent as a, DeleteSoundEvent as o, InsertImageEvent as s, InsertSoundEvent as c, ModelUpdatedEvent as l } from "@pie-element/shared-configure-events";
|
|
7
|
-
//#region src/author/index.ts
|
|
8
|
-
var u = class u extends HTMLElement {
|
|
9
|
-
static createDefaultModel = (t = {}) => e({
|
|
10
|
-
...n.model,
|
|
11
|
-
...t
|
|
12
|
-
});
|
|
13
|
-
constructor() {
|
|
14
|
-
super(), this._root = null, this._model = u.createDefaultModel(), this._configuration = n.configuration;
|
|
15
|
-
}
|
|
16
|
-
set model(e) {
|
|
17
|
-
this._model = u.createDefaultModel(e), this.render();
|
|
18
|
-
}
|
|
19
|
-
set configuration(e) {
|
|
20
|
-
let t = {
|
|
21
|
-
...n.configuration,
|
|
22
|
-
...e
|
|
23
|
-
};
|
|
24
|
-
this._configuration = t, t?.language?.enabled ? t?.languageChoices?.options?.length && (this._model.language = t?.languageChoices.options[0].value) : t.language.settings && this._model.language ? (this._configuration.language.enabled = !0, (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) && (this._configuration.languageChoices.options = []), this._configuration.languageChoices.options.find((e) => e.value === this._model.language) || this._configuration.languageChoices.options.push({
|
|
25
|
-
value: this._model.language,
|
|
26
|
-
label: this._model.language
|
|
27
|
-
})) : delete this._model.language, this.render();
|
|
28
|
-
}
|
|
29
|
-
connectedCallback() {
|
|
30
|
-
this.render();
|
|
31
|
-
}
|
|
32
|
-
modelChanged(e) {
|
|
33
|
-
this._model = e, this.dispatchEvent(new l(this._model), !0), this.render();
|
|
34
|
-
}
|
|
35
|
-
onConfigurationChanged(e) {
|
|
36
|
-
this._configuration = e, this._model && this.dispatchEvent(new l(this._model), !1), this.render();
|
|
37
|
-
}
|
|
38
|
-
insertImage(e) {
|
|
39
|
-
this.dispatchEvent(new s(e));
|
|
40
|
-
}
|
|
41
|
-
onDeleteImage(e, t) {
|
|
42
|
-
this.dispatchEvent(new a(e, t));
|
|
43
|
-
}
|
|
44
|
-
insertSound(e) {
|
|
45
|
-
this.dispatchEvent(new c(e));
|
|
46
|
-
}
|
|
47
|
-
onDeleteSound(e, t) {
|
|
48
|
-
this.dispatchEvent(new o(e, t));
|
|
49
|
-
}
|
|
50
|
-
render() {
|
|
51
|
-
if (this._model) {
|
|
52
|
-
let e = r.createElement(t, {
|
|
53
|
-
model: this._model,
|
|
54
|
-
configuration: this._configuration,
|
|
55
|
-
onModelChanged: this.modelChanged.bind(this),
|
|
56
|
-
onConfigurationChanged: this.onConfigurationChanged.bind(this),
|
|
57
|
-
imageSupport: {
|
|
58
|
-
add: this.insertImage.bind(this),
|
|
59
|
-
delete: this.onDeleteImage.bind(this)
|
|
60
|
-
},
|
|
61
|
-
uploadSoundSupport: {
|
|
62
|
-
add: this.insertSound.bind(this),
|
|
63
|
-
delete: this.onDeleteSound.bind(this)
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
this._root ||= i(this), this._root.render(e);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
disconnectedCallback() {
|
|
70
|
-
this._root && this._root.unmount();
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
//#endregion
|
|
74
|
-
export { u as default };
|
package/dist/author/utils.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @synced-from pie-elements/packages/select-text/configure/src/utils.js
|
|
3
|
-
* @auto-generated
|
|
4
|
-
*
|
|
5
|
-
* This file is automatically synced from pie-elements and converted to TypeScript.
|
|
6
|
-
* Manual edits will be overwritten on next sync.
|
|
7
|
-
* To make changes, edit the upstream JavaScript file and run sync again.
|
|
8
|
-
*/
|
|
9
|
-
export declare const generateModel: (model: any) => any;
|
|
10
|
-
export declare const generateValidationMessage: (config: any) => string;
|
package/dist/author/utils.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
//#region src/author/utils.tsx
|
|
2
|
-
var e = function() {
|
|
3
|
-
var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", t = document.createElement("div");
|
|
4
|
-
return t.innerHTML = e.trim(), t;
|
|
5
|
-
}, t = function(e, t) {
|
|
6
|
-
return t ? e.innerHTML : `${e.innerHTML}
|
|
7
|
-
|
|
8
|
-
`;
|
|
9
|
-
}, n = function(e) {
|
|
10
|
-
var n = e.querySelectorAll("div[separator=true]"), r = "";
|
|
11
|
-
return n.forEach(function(e, i) {
|
|
12
|
-
r += t(e, i === n.length - 1);
|
|
13
|
-
}), r || null;
|
|
14
|
-
}, r = function(t) {
|
|
15
|
-
var r = e(t), i = document.createElement("div");
|
|
16
|
-
return i.innerHTML = `<div separator='true'>${r.innerHTML}</div>`, r = i, Array.from(r.querySelectorAll("*")).length === 0 ? t : n(r);
|
|
17
|
-
}, i = (e) => {
|
|
18
|
-
if (!e) return e;
|
|
19
|
-
let t = r(e.text || ""), n = (e.tokens || []).reduce((n, i = {}) => {
|
|
20
|
-
let a = r((e.text || "").slice(i.start, i.end));
|
|
21
|
-
if (!a) return [...n, i];
|
|
22
|
-
let o = (e) => {
|
|
23
|
-
let n = e;
|
|
24
|
-
for (; n >= 0;) {
|
|
25
|
-
let e = t.slice(n).indexOf(a);
|
|
26
|
-
if (e >= 0) return e + n;
|
|
27
|
-
n--;
|
|
28
|
-
}
|
|
29
|
-
return 0;
|
|
30
|
-
}, s = n[n.length - 1], c = o(s ? s.end : i.start), l = c + a.length;
|
|
31
|
-
return [...n, {
|
|
32
|
-
...i,
|
|
33
|
-
text: a,
|
|
34
|
-
start: c,
|
|
35
|
-
end: l,
|
|
36
|
-
oldStart: i.start,
|
|
37
|
-
oldEnd: i.end
|
|
38
|
-
}];
|
|
39
|
-
}, []);
|
|
40
|
-
return {
|
|
41
|
-
...e,
|
|
42
|
-
tokens: n,
|
|
43
|
-
text: t
|
|
44
|
-
};
|
|
45
|
-
}, a = (e) => {
|
|
46
|
-
let { minTokens: t, maxTokens: n, maxSelections: r } = e, i = `\nThere should be at least ${t} ` + (n ? `and at most ${n} ` : "") + "tokens defined.", a = "\nThere should be at least 1 " + (r ? `and at most ${r} ` : "") + "token" + (r ? "s" : "") + " selected.";
|
|
47
|
-
return "Validation requirements:" + i + a;
|
|
48
|
-
};
|
|
49
|
-
//#endregion
|
|
50
|
-
export { i as generateModel, a as generateValidationMessage };
|