@pie-element/drag-in-the-blank 10.2.0 → 10.2.2-beta.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.
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
5
+ var _react = _interopRequireDefault(require("react"));
6
+ var _react2 = require("@testing-library/react");
7
+ var _styles = require("@mui/material/styles");
8
+ var _main = require("../main");
9
+ var _defaults = _interopRequireDefault(require("../defaults"));
10
+ var _markupUtils = require("../markupUtils");
11
+ jest.mock('@pie-lib/config-ui', () => ({
12
+ choiceUtils: {
13
+ firstAvailableIndex: jest.fn()
14
+ },
15
+ settings: {
16
+ Panel: props => /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
17
+ "data-testid": "settings-panel"
18
+ }, props)),
19
+ toggle: jest.fn(),
20
+ radio: jest.fn(),
21
+ dropdown: jest.fn()
22
+ },
23
+ layout: {
24
+ ConfigLayout: props => /*#__PURE__*/_react.default.createElement("div", {
25
+ "data-testid": "config-layout"
26
+ }, props.children)
27
+ },
28
+ InputContainer: props => /*#__PURE__*/_react.default.createElement("div", {
29
+ "data-testid": "input-container"
30
+ }, props.children)
31
+ }));
32
+ jest.mock('@pie-lib/render-ui', () => ({
33
+ InputContainer: props => /*#__PURE__*/_react.default.createElement("div", {
34
+ "data-testid": "input-container"
35
+ }, props.children)
36
+ }));
37
+ jest.mock('@pie-lib/editable-html-tip-tap', () => ({
38
+ __esModule: true,
39
+ default: ({
40
+ markup,
41
+ onChange
42
+ }) => /*#__PURE__*/_react.default.createElement("div", {
43
+ "data-testid": "editable-html",
44
+ onClick: () => onChange && onChange('new value')
45
+ }, markup),
46
+ ALL_PLUGINS: []
47
+ }));
48
+ jest.mock('@pie-lib/drag', () => ({
49
+ DragProvider: ({
50
+ children
51
+ }) => /*#__PURE__*/_react.default.createElement("div", {
52
+ "data-testid": "drag-provider"
53
+ }, children)
54
+ }));
55
+ jest.mock('@pie-lib/math-rendering', () => ({
56
+ renderMath: jest.fn()
57
+ }));
58
+ jest.mock('@dnd-kit/core', () => ({
59
+ DragOverlay: ({
60
+ children
61
+ }) => /*#__PURE__*/_react.default.createElement("div", {
62
+ "data-testid": "drag-overlay"
63
+ }, children)
64
+ }));
65
+ jest.mock('@dnd-kit/modifiers', () => ({
66
+ restrictToFirstScrollableAncestor: jest.fn()
67
+ }));
68
+ jest.mock('../choice', () => ({
69
+ __esModule: true,
70
+ default: props => /*#__PURE__*/_react.default.createElement("div", {
71
+ "data-testid": "choice"
72
+ }, props.choice?.value)
73
+ }));
74
+ jest.mock('../choices', () => ({
75
+ __esModule: true,
76
+ default: props => /*#__PURE__*/_react.default.createElement("div", {
77
+ "data-testid": "choices"
78
+ }, props.children)
79
+ }));
80
+ const theme = (0, _styles.createTheme)();
81
+ const model = {
82
+ markup: '{{0}} + {{1}} = 15',
83
+ prompt: '<p>Solve the equation below.</p>',
84
+ choices: [{
85
+ value: '<div>6</div>',
86
+ id: '0'
87
+ }, {
88
+ value: '<div>9</div>',
89
+ id: '1'
90
+ }],
91
+ choicesPosition: 'below',
92
+ correctResponse: {
93
+ 0: '0',
94
+ 1: '1'
95
+ },
96
+ duplicates: true,
97
+ alternateResponses: [['1'], ['0']],
98
+ rationale: '<p>A correct response is shown below:</p><ul><li>2/6 = 1/3</li><li>4/8 = 1/2</li><li>6/10 = 3/5</li><li>9/12 = 3/4</li></ul>'
99
+ };
100
+ const prepareModel = (model = {}) => {
101
+ const joinedObj = {
102
+ ..._defaults.default.model,
103
+ ...model
104
+ };
105
+ // Handle null choices by converting to empty array for processing
106
+ const choicesForProcessing = joinedObj.choices || [];
107
+ const slateMarkup = model.slateMarkup || (0, _markupUtils.createSlateMarkup)(joinedObj.markup, choicesForProcessing, joinedObj.correctResponse);
108
+ const processedMarkup = (0, _markupUtils.processMarkup)(slateMarkup);
109
+ return {
110
+ ...joinedObj,
111
+ slateMarkup,
112
+ markup: processedMarkup.markup,
113
+ correctResponse: processedMarkup.correctResponse
114
+ };
115
+ };
116
+ describe('Main', () => {
117
+ let onModelChanged;
118
+ let onConfigurationChanged;
119
+ beforeEach(() => {
120
+ onModelChanged = jest.fn();
121
+ onConfigurationChanged = jest.fn();
122
+ });
123
+ const renderMain = (extras = {}) => {
124
+ const defaults = {
125
+ onModelChanged,
126
+ onConfigurationChanged,
127
+ classes: {},
128
+ model: prepareModel({
129
+ ...model,
130
+ ...extras
131
+ }),
132
+ configuration: _defaults.default.configuration
133
+ };
134
+ return (0, _react2.render)(/*#__PURE__*/_react.default.createElement(_styles.ThemeProvider, {
135
+ theme: theme
136
+ }, /*#__PURE__*/_react.default.createElement(_main.Main, defaults)));
137
+ };
138
+ describe('render', () => {
139
+ it('renders with teacher instructions, prompt and rationale even if not set', () => {
140
+ const {
141
+ container
142
+ } = renderMain();
143
+ expect(container.firstChild).toBeInTheDocument();
144
+ });
145
+ it('renders without teacher instructions, prompt and rationale', () => {
146
+ const {
147
+ container
148
+ } = renderMain({
149
+ promptEnabled: false,
150
+ teacherInstructionsEnabled: false,
151
+ rationaleEnabled: false
152
+ });
153
+ expect(container.firstChild).toBeInTheDocument();
154
+ });
155
+ });
156
+
157
+ // Note: Tests for internal methods (onModelChange, onPromptChanged, onRationaleChanged,
158
+ // onTeacherInstructionsChanged, onMarkupChanged, onResponsesChanged) are implementation
159
+ // details and cannot be directly tested with RTL.
160
+ // These methods should be tested through user interactions in integration tests:
161
+ // - onPromptChanged: Test by typing in the prompt EditableHtml component
162
+ // - onRationaleChanged: Test by typing in the rationale EditableHtml component
163
+ // - onTeacherInstructionsChanged: Test by typing in the teacher instructions EditableHtml component
164
+ // - onMarkupChanged: Test by modifying the markup via the Design component
165
+ // - onResponsesChanged: Test by adding/removing/editing choices via the Choices component
166
+ });
167
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfc3R5bGVzIiwiX21haW4iLCJfZGVmYXVsdHMiLCJfbWFya3VwVXRpbHMiLCJqZXN0IiwibW9jayIsImNob2ljZVV0aWxzIiwiZmlyc3RBdmFpbGFibGVJbmRleCIsImZuIiwic2V0dGluZ3MiLCJQYW5lbCIsInByb3BzIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJfZXh0ZW5kczIiLCJ0b2dnbGUiLCJyYWRpbyIsImRyb3Bkb3duIiwibGF5b3V0IiwiQ29uZmlnTGF5b3V0IiwiY2hpbGRyZW4iLCJJbnB1dENvbnRhaW5lciIsIl9fZXNNb2R1bGUiLCJtYXJrdXAiLCJvbkNoYW5nZSIsIm9uQ2xpY2siLCJBTExfUExVR0lOUyIsIkRyYWdQcm92aWRlciIsInJlbmRlck1hdGgiLCJEcmFnT3ZlcmxheSIsInJlc3RyaWN0VG9GaXJzdFNjcm9sbGFibGVBbmNlc3RvciIsImNob2ljZSIsInZhbHVlIiwidGhlbWUiLCJjcmVhdGVUaGVtZSIsIm1vZGVsIiwicHJvbXB0IiwiY2hvaWNlcyIsImlkIiwiY2hvaWNlc1Bvc2l0aW9uIiwiY29ycmVjdFJlc3BvbnNlIiwiZHVwbGljYXRlcyIsImFsdGVybmF0ZVJlc3BvbnNlcyIsInJhdGlvbmFsZSIsInByZXBhcmVNb2RlbCIsImpvaW5lZE9iaiIsInNlbnNpYmxlRGVmYXVsdHMiLCJjaG9pY2VzRm9yUHJvY2Vzc2luZyIsInNsYXRlTWFya3VwIiwiY3JlYXRlU2xhdGVNYXJrdXAiLCJwcm9jZXNzZWRNYXJrdXAiLCJwcm9jZXNzTWFya3VwIiwiZGVzY3JpYmUiLCJvbk1vZGVsQ2hhbmdlZCIsIm9uQ29uZmlndXJhdGlvbkNoYW5nZWQiLCJiZWZvcmVFYWNoIiwicmVuZGVyTWFpbiIsImV4dHJhcyIsImRlZmF1bHRzIiwiY2xhc3NlcyIsImNvbmZpZ3VyYXRpb24iLCJyZW5kZXIiLCJUaGVtZVByb3ZpZGVyIiwiTWFpbiIsIml0IiwiY29udGFpbmVyIiwiZXhwZWN0IiwiZmlyc3RDaGlsZCIsInRvQmVJblRoZURvY3VtZW50IiwicHJvbXB0RW5hYmxlZCIsInRlYWNoZXJJbnN0cnVjdGlvbnNFbmFibGVkIiwicmF0aW9uYWxlRW5hYmxlZCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9fX3Rlc3RzX18vbWFpbi50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAnQHRlc3RpbmctbGlicmFyeS9yZWFjdCc7XG5pbXBvcnQgeyBUaGVtZVByb3ZpZGVyLCBjcmVhdGVUaGVtZSB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwvc3R5bGVzJztcblxuaW1wb3J0IHsgTWFpbiB9IGZyb20gJy4uL21haW4nO1xuaW1wb3J0IHNlbnNpYmxlRGVmYXVsdHMgZnJvbSAnLi4vZGVmYXVsdHMnO1xuaW1wb3J0IHsgY3JlYXRlU2xhdGVNYXJrdXAsIHByb2Nlc3NNYXJrdXAgfSBmcm9tICcuLi9tYXJrdXBVdGlscyc7XG5cbmplc3QubW9jaygnQHBpZS1saWIvY29uZmlnLXVpJywgKCkgPT4gKHtcbiAgY2hvaWNlVXRpbHM6IHtcbiAgICBmaXJzdEF2YWlsYWJsZUluZGV4OiBqZXN0LmZuKCksXG4gIH0sXG4gIHNldHRpbmdzOiB7XG4gICAgUGFuZWw6IChwcm9wcykgPT4gPGRpdiBkYXRhLXRlc3RpZD1cInNldHRpbmdzLXBhbmVsXCIgey4uLnByb3BzfSAvPixcbiAgICB0b2dnbGU6IGplc3QuZm4oKSxcbiAgICByYWRpbzogamVzdC5mbigpLFxuICAgIGRyb3Bkb3duOiBqZXN0LmZuKCksXG4gIH0sXG4gIGxheW91dDoge1xuICAgIENvbmZpZ0xheW91dDogKHByb3BzKSA9PiA8ZGl2IGRhdGEtdGVzdGlkPVwiY29uZmlnLWxheW91dFwiPntwcm9wcy5jaGlsZHJlbn08L2Rpdj4sXG4gIH0sXG4gIElucHV0Q29udGFpbmVyOiAocHJvcHMpID0+IDxkaXYgZGF0YS10ZXN0aWQ9XCJpbnB1dC1jb250YWluZXJcIj57cHJvcHMuY2hpbGRyZW59PC9kaXY+LFxufSkpO1xuXG5qZXN0Lm1vY2soJ0BwaWUtbGliL3JlbmRlci11aScsICgpID0+ICh7XG4gIElucHV0Q29udGFpbmVyOiAocHJvcHMpID0+IDxkaXYgZGF0YS10ZXN0aWQ9XCJpbnB1dC1jb250YWluZXJcIj57cHJvcHMuY2hpbGRyZW59PC9kaXY+LFxufSkpO1xuXG5qZXN0Lm1vY2soJ0BwaWUtbGliL2VkaXRhYmxlLWh0bWwtdGlwLXRhcCcsICgpID0+ICh7XG4gIF9fZXNNb2R1bGU6IHRydWUsXG4gIGRlZmF1bHQ6ICh7IG1hcmt1cCwgb25DaGFuZ2UgfSkgPT4gKFxuICAgIDxkaXZcbiAgICAgIGRhdGEtdGVzdGlkPVwiZWRpdGFibGUtaHRtbFwiXG4gICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZSAmJiBvbkNoYW5nZSgnbmV3IHZhbHVlJyl9XG4gICAgPlxuICAgICAge21hcmt1cH1cbiAgICA8L2Rpdj5cbiAgKSxcbiAgQUxMX1BMVUdJTlM6IFtdLFxufSkpO1xuXG5qZXN0Lm1vY2soJ0BwaWUtbGliL2RyYWcnLCAoKSA9PiAoe1xuICBEcmFnUHJvdmlkZXI6ICh7IGNoaWxkcmVuIH0pID0+IDxkaXYgZGF0YS10ZXN0aWQ9XCJkcmFnLXByb3ZpZGVyXCI+e2NoaWxkcmVufTwvZGl2Pixcbn0pKTtcblxuamVzdC5tb2NrKCdAcGllLWxpYi9tYXRoLXJlbmRlcmluZycsICgpID0+ICh7XG4gIHJlbmRlck1hdGg6IGplc3QuZm4oKSxcbn0pKTtcblxuamVzdC5tb2NrKCdAZG5kLWtpdC9jb3JlJywgKCkgPT4gKHtcbiAgRHJhZ092ZXJsYXk6ICh7IGNoaWxkcmVuIH0pID0+IDxkaXYgZGF0YS10ZXN0aWQ9XCJkcmFnLW92ZXJsYXlcIj57Y2hpbGRyZW59PC9kaXY+LFxufSkpO1xuXG5qZXN0Lm1vY2soJ0BkbmQta2l0L21vZGlmaWVycycsICgpID0+ICh7XG4gIHJlc3RyaWN0VG9GaXJzdFNjcm9sbGFibGVBbmNlc3RvcjogamVzdC5mbigpLFxufSkpO1xuXG5qZXN0Lm1vY2soJy4uL2Nob2ljZScsICgpID0+ICh7XG4gIF9fZXNNb2R1bGU6IHRydWUsXG4gIGRlZmF1bHQ6IChwcm9wcykgPT4gPGRpdiBkYXRhLXRlc3RpZD1cImNob2ljZVwiPntwcm9wcy5jaG9pY2U/LnZhbHVlfTwvZGl2Pixcbn0pKTtcblxuamVzdC5tb2NrKCcuLi9jaG9pY2VzJywgKCkgPT4gKHtcbiAgX19lc01vZHVsZTogdHJ1ZSxcbiAgZGVmYXVsdDogKHByb3BzKSA9PiA8ZGl2IGRhdGEtdGVzdGlkPVwiY2hvaWNlc1wiPntwcm9wcy5jaGlsZHJlbn08L2Rpdj4sXG59KSk7XG5cbmNvbnN0IHRoZW1lID0gY3JlYXRlVGhlbWUoKTtcblxuY29uc3QgbW9kZWwgPSB7XG4gIG1hcmt1cDogJ3t7MH19ICsge3sxfX0gPSAxNScsXG4gIHByb21wdDogJzxwPlNvbHZlIHRoZSBlcXVhdGlvbiBiZWxvdy48L3A+JyxcbiAgY2hvaWNlczogW1xuICAgIHsgdmFsdWU6ICc8ZGl2PjY8L2Rpdj4nLCBpZDogJzAnIH0sXG4gICAgeyB2YWx1ZTogJzxkaXY+OTwvZGl2PicsIGlkOiAnMScgfSxcbiAgXSxcbiAgY2hvaWNlc1Bvc2l0aW9uOiAnYmVsb3cnLFxuICBjb3JyZWN0UmVzcG9uc2U6IHtcbiAgICAwOiAnMCcsXG4gICAgMTogJzEnLFxuICB9LFxuICBkdXBsaWNhdGVzOiB0cnVlLFxuICBhbHRlcm5hdGVSZXNwb25zZXM6IFtbJzEnXSwgWycwJ11dLFxuICByYXRpb25hbGU6XG4gICAgJzxwPkEgY29ycmVjdCByZXNwb25zZSBpcyBzaG93biBiZWxvdzo8L3A+PHVsPjxsaT4yLzYgPSAxLzM8L2xpPjxsaT40LzggPSAxLzI8L2xpPjxsaT42LzEwID0gMy81PC9saT48bGk+OS8xMiA9IDMvNDwvbGk+PC91bD4nLFxufTtcblxuY29uc3QgcHJlcGFyZU1vZGVsID0gKG1vZGVsID0ge30pID0+IHtcbiAgY29uc3Qgam9pbmVkT2JqID0ge1xuICAgIC4uLnNlbnNpYmxlRGVmYXVsdHMubW9kZWwsXG4gICAgLi4ubW9kZWwsXG4gIH07XG4gIC8vIEhhbmRsZSBudWxsIGNob2ljZXMgYnkgY29udmVydGluZyB0byBlbXB0eSBhcnJheSBmb3IgcHJvY2Vzc2luZ1xuICBjb25zdCBjaG9pY2VzRm9yUHJvY2Vzc2luZyA9IGpvaW5lZE9iai5jaG9pY2VzIHx8IFtdO1xuICBjb25zdCBzbGF0ZU1hcmt1cCA9XG4gICAgbW9kZWwuc2xhdGVNYXJrdXAgfHwgY3JlYXRlU2xhdGVNYXJrdXAoam9pbmVkT2JqLm1hcmt1cCwgY2hvaWNlc0ZvclByb2Nlc3NpbmcsIGpvaW5lZE9iai5jb3JyZWN0UmVzcG9uc2UpO1xuICBjb25zdCBwcm9jZXNzZWRNYXJrdXAgPSBwcm9jZXNzTWFya3VwKHNsYXRlTWFya3VwKTtcblxuICByZXR1cm4ge1xuICAgIC4uLmpvaW5lZE9iaixcbiAgICBzbGF0ZU1hcmt1cCxcbiAgICBtYXJrdXA6IHByb2Nlc3NlZE1hcmt1cC5tYXJrdXAsXG4gICAgY29ycmVjdFJlc3BvbnNlOiBwcm9jZXNzZWRNYXJrdXAuY29ycmVjdFJlc3BvbnNlLFxuICB9O1xufTtcblxuZGVzY3JpYmUoJ01haW4nLCAoKSA9PiB7XG4gIGxldCBvbk1vZGVsQ2hhbmdlZDtcbiAgbGV0IG9uQ29uZmlndXJhdGlvbkNoYW5nZWQ7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgb25Nb2RlbENoYW5nZWQgPSBqZXN0LmZuKCk7XG4gICAgb25Db25maWd1cmF0aW9uQ2hhbmdlZCA9IGplc3QuZm4oKTtcbiAgfSk7XG5cbiAgY29uc3QgcmVuZGVyTWFpbiA9IChleHRyYXMgPSB7fSkgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgb25Nb2RlbENoYW5nZWQsXG4gICAgICBvbkNvbmZpZ3VyYXRpb25DaGFuZ2VkLFxuICAgICAgY2xhc3Nlczoge30sXG4gICAgICBtb2RlbDogcHJlcGFyZU1vZGVsKHtcbiAgICAgICAgLi4ubW9kZWwsXG4gICAgICAgIC4uLmV4dHJhcyxcbiAgICAgIH0pLFxuICAgICAgY29uZmlndXJhdGlvbjogc2Vuc2libGVEZWZhdWx0cy5jb25maWd1cmF0aW9uLFxuICAgIH07XG5cbiAgICByZXR1cm4gcmVuZGVyKFxuICAgICAgPFRoZW1lUHJvdmlkZXIgdGhlbWU9e3RoZW1lfT5cbiAgICAgICAgPE1haW4gey4uLmRlZmF1bHRzfSAvPlxuICAgICAgPC9UaGVtZVByb3ZpZGVyPlxuICAgICk7XG4gIH07XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcicsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRoIHRlYWNoZXIgaW5zdHJ1Y3Rpb25zLCBwcm9tcHQgYW5kIHJhdGlvbmFsZSBldmVuIGlmIG5vdCBzZXQnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyTWFpbigpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgd2l0aG91dCB0ZWFjaGVyIGluc3RydWN0aW9ucywgcHJvbXB0IGFuZCByYXRpb25hbGUnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyTWFpbih7XG4gICAgICAgIHByb21wdEVuYWJsZWQ6IGZhbHNlLFxuICAgICAgICB0ZWFjaGVySW5zdHJ1Y3Rpb25zRW5hYmxlZDogZmFsc2UsXG4gICAgICAgIHJhdGlvbmFsZUVuYWJsZWQ6IGZhbHNlLFxuICAgICAgfSk7XG4gICAgICBleHBlY3QoY29udGFpbmVyLmZpcnN0Q2hpbGQpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIC8vIE5vdGU6IFRlc3RzIGZvciBpbnRlcm5hbCBtZXRob2RzIChvbk1vZGVsQ2hhbmdlLCBvblByb21wdENoYW5nZWQsIG9uUmF0aW9uYWxlQ2hhbmdlZCwgXG4gIC8vIG9uVGVhY2hlckluc3RydWN0aW9uc0NoYW5nZWQsIG9uTWFya3VwQ2hhbmdlZCwgb25SZXNwb25zZXNDaGFuZ2VkKSBhcmUgaW1wbGVtZW50YXRpb24gXG4gIC8vIGRldGFpbHMgYW5kIGNhbm5vdCBiZSBkaXJlY3RseSB0ZXN0ZWQgd2l0aCBSVEwuXG4gIC8vIFRoZXNlIG1ldGhvZHMgc2hvdWxkIGJlIHRlc3RlZCB0aHJvdWdoIHVzZXIgaW50ZXJhY3Rpb25zIGluIGludGVncmF0aW9uIHRlc3RzOlxuICAvLyAtIG9uUHJvbXB0Q2hhbmdlZDogVGVzdCBieSB0eXBpbmcgaW4gdGhlIHByb21wdCBFZGl0YWJsZUh0bWwgY29tcG9uZW50XG4gIC8vIC0gb25SYXRpb25hbGVDaGFuZ2VkOiBUZXN0IGJ5IHR5cGluZyBpbiB0aGUgcmF0aW9uYWxlIEVkaXRhYmxlSHRtbCBjb21wb25lbnRcbiAgLy8gLSBvblRlYWNoZXJJbnN0cnVjdGlvbnNDaGFuZ2VkOiBUZXN0IGJ5IHR5cGluZyBpbiB0aGUgdGVhY2hlciBpbnN0cnVjdGlvbnMgRWRpdGFibGVIdG1sIGNvbXBvbmVudFxuICAvLyAtIG9uTWFya3VwQ2hhbmdlZDogVGVzdCBieSBtb2RpZnlpbmcgdGhlIG1hcmt1cCB2aWEgdGhlIERlc2lnbiBjb21wb25lbnRcbiAgLy8gLSBvblJlc3BvbnNlc0NoYW5nZWQ6IFRlc3QgYnkgYWRkaW5nL3JlbW92aW5nL2VkaXRpbmcgY2hvaWNlcyB2aWEgdGhlIENob2ljZXMgY29tcG9uZW50XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUVBLElBQUFHLEtBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLFlBQUEsR0FBQUwsT0FBQTtBQUVBTSxJQUFJLENBQUNDLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxPQUFPO0VB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
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+
3
+ var _markupUtils = require("../markupUtils");
4
+ describe('markupUtils', () => {
5
+ describe('createElementFromHTML', () => {
6
+ it('should create dom element from string', () => {
7
+ const el = (0, _markupUtils.createElementFromHTML)(`<div>Foo Bar</div>`);
8
+ expect(el.outerHTML).toEqual('<div><div>Foo Bar</div></div>');
9
+ });
10
+ });
11
+ describe('removeUnwantedCharacters', () => {
12
+ it('should remove \\t and \\n characters', () => {
13
+ expect((0, _markupUtils.removeUnwantedCharacters)('<div>foo\t\nbar</div>')).toEqual('<div>foobar</div>');
14
+ });
15
+ it('should remove \\t and \\n characters', () => {
16
+ expect((0, _markupUtils.removeUnwantedCharacters)('<div>foo\\t\\nbar</div>')).toEqual('<div>foobar</div>');
17
+ });
18
+ it('should replace \\" with "', () => {
19
+ expect((0, _markupUtils.removeUnwantedCharacters)('<div>"foo bar"</div>')).toEqual('<div>"foo bar"</div>');
20
+ });
21
+ it('should replace \\/ with /', () => {
22
+ expect((0, _markupUtils.removeUnwantedCharacters)('<div>foo/bar</div>')).toEqual('<div>foo/bar</div>');
23
+ });
24
+ it('should not remove \\t character which has latex like \\times', () => {
25
+ expect((0, _markupUtils.removeUnwantedCharacters)('<div><span data-latex="" data-raw="3\\times3\\div2">3\\times3\\div2</span></div>')).toEqual('<div><span data-latex="" data-raw="3\\times3\\div2">3\\times3\\div2</span></div>');
26
+ });
27
+ });
28
+ describe('processMarkup', () => {
29
+ it('should get choices, markup and correctResponse from markup', () => {
30
+ const markup = ['<div>', '<span data-type="drag_in_the_blank" data-value="foobar" data-id="0"></span>', '<span data-type="drag_in_the_blank" data-value="barfoo" data-id="1"></span>', '</div>'].join('');
31
+ const processed = (0, _markupUtils.processMarkup)(markup);
32
+ expect(processed).toEqual(expect.objectContaining({
33
+ markup: ['<div>', '{{0}}', '{{1}}', '</div>'].join(''),
34
+ choices: [{
35
+ value: 'foobar',
36
+ id: '0'
37
+ }, {
38
+ value: 'barfoo',
39
+ id: '1'
40
+ }],
41
+ correctResponse: {
42
+ 0: '0',
43
+ 1: '1'
44
+ }
45
+ }));
46
+ });
47
+
48
+ // TODO: not sure if this test is very good
49
+ it('should get value with &nbsp; replaced with a regular space', () => {
50
+ const markup = ['<div>', '<span data-type="drag_in_the_blank" data-value="foo&nbsp;bar" data-id="0"></span>', '</div>'].join('');
51
+ const processed = (0, _markupUtils.processMarkup)(markup);
52
+ expect(encodeURIComponent(processed.choices[0].value)).toEqual('foo%C2%A0bar');
53
+ });
54
+ });
55
+ describe('createSlateMarkup', () => {
56
+ it('should create slate markup from the regular markup, choices and correctResponses', () => {
57
+ const markup = ['<div>', '{{0}}', '{{1}}', '</div>'].join('');
58
+ const choices = [{
59
+ value: 'foobar',
60
+ id: '0'
61
+ }, {
62
+ value: 'barfoo',
63
+ id: '1'
64
+ }];
65
+ const correctResponse = {
66
+ 0: '0',
67
+ 1: '1'
68
+ };
69
+ const slateMarkup = (0, _markupUtils.createSlateMarkup)(markup, choices, correctResponse);
70
+ expect(slateMarkup).toEqual(['<div>', '<span data-type="drag_in_the_blank" data-index="0" data-id="0" data-value="foobar"></span>', '<span data-type="drag_in_the_blank" data-index="1" data-id="1" data-value="barfoo"></span>', '</div>'].join(''));
71
+ });
72
+ it('should handle choices with empty values', () => {
73
+ const markup = ['<div>', '{{0}}', '{{1}}', '</div>'].join('');
74
+ const choices = [{
75
+ value: 'foobar',
76
+ id: '0'
77
+ }, {
78
+ value: '',
79
+ id: '1'
80
+ }];
81
+ const correctResponse = {
82
+ 0: '0',
83
+ 1: '1'
84
+ };
85
+ const slateMarkup = (0, _markupUtils.createSlateMarkup)(markup, choices, correctResponse);
86
+ expect(slateMarkup).toEqual(['<div>', '<span data-type="drag_in_the_blank" data-index="0" data-id="0" data-value="foobar"></span>', '<span data-type="drag_in_the_blank" data-index="1" data-id="" data-value=""></span>', '</div>'].join(''));
87
+ });
88
+ });
89
+ describe('choiceIsEmpty', () => {
90
+ it('should return false if choice is null or undefined', () => {
91
+ expect((0, _markupUtils.choiceIsEmpty)(null)).toEqual(false);
92
+ expect((0, _markupUtils.choiceIsEmpty)(undefined)).toEqual(false);
93
+ });
94
+ it('should handle choices with no value provided', () => {
95
+ expect((0, _markupUtils.choiceIsEmpty)({})).toEqual(true);
96
+ });
97
+ it('should handle choices with img tags provided', () => {
98
+ const markup = ['<div>', '<img src="foobar" />', '</div>'].join('');
99
+ expect((0, _markupUtils.choiceIsEmpty)({
100
+ value: markup
101
+ })).toEqual(false);
102
+ });
103
+ });
104
+ });
105
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWFya3VwVXRpbHMiLCJyZXF1aXJlIiwiZGVzY3JpYmUiLCJpdCIsImVsIiwiY3JlYXRlRWxlbWVudEZyb21IVE1MIiwiZXhwZWN0Iiwib3V0ZXJIVE1MIiwidG9FcXVhbCIsInJlbW92ZVVud2FudGVkQ2hhcmFjdGVycyIsIm1hcmt1cCIsImpvaW4iLCJwcm9jZXNzZWQiLCJwcm9jZXNzTWFya3VwIiwib2JqZWN0Q29udGFpbmluZyIsImNob2ljZXMiLCJ2YWx1ZSIsImlkIiwiY29ycmVjdFJlc3BvbnNlIiwiZW5jb2RlVVJJQ29tcG9uZW50Iiwic2xhdGVNYXJrdXAiLCJjcmVhdGVTbGF0ZU1hcmt1cCIsImNob2ljZUlzRW1wdHkiLCJ1bmRlZmluZWQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvX190ZXN0c19fL21hcmt1cFV0aWxzLnRlc3QuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGNob2ljZUlzRW1wdHksXG4gIGNyZWF0ZUVsZW1lbnRGcm9tSFRNTCxcbiAgY3JlYXRlU2xhdGVNYXJrdXAsXG4gIHByb2Nlc3NNYXJrdXAsXG4gIHJlbW92ZVVud2FudGVkQ2hhcmFjdGVycyxcbn0gZnJvbSAnLi4vbWFya3VwVXRpbHMnO1xuXG5kZXNjcmliZSgnbWFya3VwVXRpbHMnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdjcmVhdGVFbGVtZW50RnJvbUhUTUwnLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCBjcmVhdGUgZG9tIGVsZW1lbnQgZnJvbSBzdHJpbmcnLCAoKSA9PiB7XG4gICAgICBjb25zdCBlbCA9IGNyZWF0ZUVsZW1lbnRGcm9tSFRNTChgPGRpdj5Gb28gQmFyPC9kaXY+YCk7XG5cbiAgICAgIGV4cGVjdChlbC5vdXRlckhUTUwpLnRvRXF1YWwoJzxkaXY+PGRpdj5Gb28gQmFyPC9kaXY+PC9kaXY+Jyk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdyZW1vdmVVbndhbnRlZENoYXJhY3RlcnMnLCAoKSA9PiB7XG4gICAgaXQoJ3Nob3VsZCByZW1vdmUgXFxcXHQgYW5kIFxcXFxuIGNoYXJhY3RlcnMnLCAoKSA9PiB7XG4gICAgICBleHBlY3QocmVtb3ZlVW53YW50ZWRDaGFyYWN0ZXJzKCc8ZGl2PmZvb1xcdFxcbmJhcjwvZGl2PicpKS50b0VxdWFsKCc8ZGl2PmZvb2JhcjwvZGl2PicpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCByZW1vdmUgXFxcXHQgYW5kIFxcXFxuIGNoYXJhY3RlcnMnLCAoKSA9PiB7XG4gICAgICBleHBlY3QocmVtb3ZlVW53YW50ZWRDaGFyYWN0ZXJzKCc8ZGl2PmZvb1xcXFx0XFxcXG5iYXI8L2Rpdj4nKSkudG9FcXVhbCgnPGRpdj5mb29iYXI8L2Rpdj4nKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgcmVwbGFjZSBcXFxcXCIgd2l0aCBcIicsICgpID0+IHtcbiAgICAgIGV4cGVjdChyZW1vdmVVbndhbnRlZENoYXJhY3RlcnMoJzxkaXY+XCJmb28gYmFyXCI8L2Rpdj4nKSkudG9FcXVhbCgnPGRpdj5cImZvbyBiYXJcIjwvZGl2PicpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCByZXBsYWNlIFxcXFwvIHdpdGggLycsICgpID0+IHtcbiAgICAgIGV4cGVjdChyZW1vdmVVbndhbnRlZENoYXJhY3RlcnMoJzxkaXY+Zm9vL2JhcjwvZGl2PicpKS50b0VxdWFsKCc8ZGl2PmZvby9iYXI8L2Rpdj4nKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgbm90IHJlbW92ZSBcXFxcdCBjaGFyYWN0ZXIgd2hpY2ggaGFzIGxhdGV4IGxpa2UgXFxcXHRpbWVzJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KFxuICAgICAgICByZW1vdmVVbndhbnRlZENoYXJhY3RlcnMoJzxkaXY+PHNwYW4gZGF0YS1sYXRleD1cIlwiIGRhdGEtcmF3PVwiM1xcXFx0aW1lczNcXFxcZGl2MlwiPjNcXFxcdGltZXMzXFxcXGRpdjI8L3NwYW4+PC9kaXY+JyksXG4gICAgICApLnRvRXF1YWwoJzxkaXY+PHNwYW4gZGF0YS1sYXRleD1cIlwiIGRhdGEtcmF3PVwiM1xcXFx0aW1lczNcXFxcZGl2MlwiPjNcXFxcdGltZXMzXFxcXGRpdjI8L3NwYW4+PC9kaXY+Jyk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdwcm9jZXNzTWFya3VwJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgZ2V0IGNob2ljZXMsIG1hcmt1cCBhbmQgY29ycmVjdFJlc3BvbnNlIGZyb20gbWFya3VwJywgKCkgPT4ge1xuICAgICAgY29uc3QgbWFya3VwID0gW1xuICAgICAgICAnPGRpdj4nLFxuICAgICAgICAnPHNwYW4gZGF0YS10eXBlPVwiZHJhZ19pbl90aGVfYmxhbmtcIiBkYXRhLXZhbHVlPVwiZm9vYmFyXCIgZGF0YS1pZD1cIjBcIj48L3NwYW4+JyxcbiAgICAgICAgJzxzcGFuIGRhdGEtdHlwZT1cImRyYWdfaW5fdGhlX2JsYW5rXCIgZGF0YS12YWx1ZT1cImJhcmZvb1wiIGRhdGEtaWQ9XCIxXCI+PC9zcGFuPicsXG4gICAgICAgICc8L2Rpdj4nLFxuICAgICAgXS5qb2luKCcnKTtcbiAgICAgIGNvbnN0IHByb2Nlc3NlZCA9IHByb2Nlc3NNYXJrdXAobWFya3VwKTtcblxuICAgICAgZXhwZWN0KHByb2Nlc3NlZCkudG9FcXVhbChcbiAgICAgICAgZXhwZWN0Lm9iamVjdENvbnRhaW5pbmcoe1xuICAgICAgICAgIG1hcmt1cDogWyc8ZGl2PicsICd7ezB9fScsICd7ezF9fScsICc8L2Rpdj4nXS5qb2luKCcnKSxcbiAgICAgICAgICBjaG9pY2VzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnZm9vYmFyJyxcbiAgICAgICAgICAgICAgaWQ6ICcwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIHZhbHVlOiAnYmFyZm9vJyxcbiAgICAgICAgICAgICAgaWQ6ICcxJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBjb3JyZWN0UmVzcG9uc2U6IHtcbiAgICAgICAgICAgIDA6ICcwJyxcbiAgICAgICAgICAgIDE6ICcxJyxcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICAvLyBUT0RPOiBub3Qgc3VyZSBpZiB0aGlzIHRlc3QgaXMgdmVyeSBnb29kXG4gICAgaXQoJ3Nob3VsZCBnZXQgdmFsdWUgd2l0aCAmbmJzcDsgcmVwbGFjZWQgd2l0aCBhIHJlZ3VsYXIgc3BhY2UnLCAoKSA9PiB7XG4gICAgICBjb25zdCBtYXJrdXAgPSBbXG4gICAgICAgICc8ZGl2PicsXG4gICAgICAgICc8c3BhbiBkYXRhLXR5cGU9XCJkcmFnX2luX3RoZV9ibGFua1wiIGRhdGEtdmFsdWU9XCJmb28mbmJzcDtiYXJcIiBkYXRhLWlkPVwiMFwiPjwvc3Bhbj4nLFxuICAgICAgICAnPC9kaXY+JyxcbiAgICAgIF0uam9pbignJyk7XG4gICAgICBjb25zdCBwcm9jZXNzZWQgPSBwcm9jZXNzTWFya3VwKG1hcmt1cCk7XG5cbiAgICAgIGV4cGVjdChlbmNvZGVVUklDb21wb25lbnQocHJvY2Vzc2VkLmNob2ljZXNbMF0udmFsdWUpKS50b0VxdWFsKCdmb28lQzIlQTBiYXInKTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ2NyZWF0ZVNsYXRlTWFya3VwJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgY3JlYXRlIHNsYXRlIG1hcmt1cCBmcm9tIHRoZSByZWd1bGFyIG1hcmt1cCwgY2hvaWNlcyBhbmQgY29ycmVjdFJlc3BvbnNlcycsICgpID0+IHtcbiAgICAgIGNvbnN0IG1hcmt1cCA9IFsnPGRpdj4nLCAne3swfX0nLCAne3sxfX0nLCAnPC9kaXY+J10uam9pbignJyk7XG4gICAgICBjb25zdCBjaG9pY2VzID0gW1xuICAgICAgICB7XG4gICAgICAgICAgdmFsdWU6ICdmb29iYXInLFxuICAgICAgICAgIGlkOiAnMCcsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB2YWx1ZTogJ2JhcmZvbycsXG4gICAgICAgICAgaWQ6ICcxJyxcbiAgICAgICAgfSxcbiAgICAgIF07XG4gICAgICBjb25zdCBjb3JyZWN0UmVzcG9uc2UgPSB7XG4gICAgICAgIDA6ICcwJyxcbiAgICAgICAgMTogJzEnLFxuICAgICAgfTtcbiAgICAgIGNvbnN0IHNsYXRlTWFya3VwID0gY3JlYXRlU2xhdGVNYXJrdXAobWFya3VwLCBjaG9pY2VzLCBjb3JyZWN0UmVzcG9uc2UpO1xuXG4gICAgICBleHBlY3Qoc2xhdGVNYXJrdXApLnRvRXF1YWwoXG4gICAgICAgIFtcbiAgICAgICAgICAnPGRpdj4nLFxuICAgICAgICAgICc8c3BhbiBkYXRhLXR5cGU9XCJkcmFnX2luX3RoZV9ibGFua1wiIGRhdGEtaW5kZXg9XCIwXCIgZGF0YS1pZD1cIjBcIiBkYXRhLXZhbHVlPVwiZm9vYmFyXCI+PC9zcGFuPicsXG4gICAgICAgICAgJzxzcGFuIGRhdGEtdHlwZT1cImRyYWdfaW5fdGhlX2JsYW5rXCIgZGF0YS1pbmRleD1cIjFcIiBkYXRhLWlkPVwiMVwiIGRhdGEtdmFsdWU9XCJiYXJmb29cIj48L3NwYW4+JyxcbiAgICAgICAgICAnPC9kaXY+JyxcbiAgICAgICAgXS5qb2luKCcnKSxcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGhhbmRsZSBjaG9pY2VzIHdpdGggZW1wdHkgdmFsdWVzJywgKCkgPT4ge1xuICAgICAgY29uc3QgbWFya3VwID0gWyc8ZGl2PicsICd7ezB9fScsICd7ezF9fScsICc8L2Rpdj4nXS5qb2luKCcnKTtcbiAgICAgIGNvbnN0IGNob2ljZXMgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICB2YWx1ZTogJ2Zvb2JhcicsXG4gICAgICAgICAgaWQ6ICcwJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHZhbHVlOiAnJyxcbiAgICAgICAgICBpZDogJzEnLFxuICAgICAgICB9LFxuICAgICAgXTtcbiAgICAgIGNvbnN0IGNvcnJlY3RSZXNwb25zZSA9IHtcbiAgICAgICAgMDogJzAnLFxuICAgICAgICAxOiAnMScsXG4gICAgICB9O1xuICAgICAgY29uc3Qgc2xhdGVNYXJrdXAgPSBjcmVhdGVTbGF0ZU1hcmt1cChtYXJrdXAsIGNob2ljZXMsIGNvcnJlY3RSZXNwb25zZSk7XG5cbiAgICAgIGV4cGVjdChzbGF0ZU1hcmt1cCkudG9FcXVhbChcbiAgICAgICAgW1xuICAgICAgICAgICc8ZGl2PicsXG4gICAgICAgICAgJzxzcGFuIGRhdGEtdHlwZT1cImRyYWdfaW5fdGhlX2JsYW5rXCIgZGF0YS1pbmRleD1cIjBcIiBkYXRhLWlkPVwiMFwiIGRhdGEtdmFsdWU9XCJmb29iYXJcIj48L3NwYW4+JyxcbiAgICAgICAgICAnPHNwYW4gZGF0YS10eXBlPVwiZHJhZ19pbl90aGVfYmxhbmtcIiBkYXRhLWluZGV4PVwiMVwiIGRhdGEtaWQ9XCJcIiBkYXRhLXZhbHVlPVwiXCI+PC9zcGFuPicsXG4gICAgICAgICAgJzwvZGl2PicsXG4gICAgICAgIF0uam9pbignJyksXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnY2hvaWNlSXNFbXB0eScsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIHJldHVybiBmYWxzZSBpZiBjaG9pY2UgaXMgbnVsbCBvciB1bmRlZmluZWQnLCAoKSA9PiB7XG4gICAgICBleHBlY3QoY2hvaWNlSXNFbXB0eShudWxsKSkudG9FcXVhbChmYWxzZSk7XG5cbiAgICAgIGV4cGVjdChjaG9pY2VJc0VtcHR5KHVuZGVmaW5lZCkpLnRvRXF1YWwoZmFsc2UpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBoYW5kbGUgY2hvaWNlcyB3aXRoIG5vIHZhbHVlIHByb3ZpZGVkJywgKCkgPT4ge1xuICAgICAgZXhwZWN0KGNob2ljZUlzRW1wdHkoe30pKS50b0VxdWFsKHRydWUpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBoYW5kbGUgY2hvaWNlcyB3aXRoIGltZyB0YWdzIHByb3ZpZGVkJywgKCkgPT4ge1xuICAgICAgY29uc3QgbWFya3VwID0gWyc8ZGl2PicsICc8aW1nIHNyYz1cImZvb2JhclwiIC8+JywgJzwvZGl2PiddLmpvaW4oJycpO1xuXG4gICAgICBleHBlY3QoY2hvaWNlSXNFbXB0eSh7IHZhbHVlOiBtYXJrdXAgfSkpLnRvRXF1YWwoZmFsc2UpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOztBQUFBLElBQUFBLFlBQUEsR0FBQUMsT0FBQTtBQVFBQyxRQUFRLENBQUMsYUFBYSxFQUFFLE1BQU07RUFDNUJBLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxNQUFNO0lBQ3RDQyxFQUFFLENBQUMsdUNBQXVDLEVBQUUsTUFBTTtNQUNoRCxNQUFNQyxFQUFFLEdBQUcsSUFBQUMsa0NBQXFCLEVBQUMsb0JBQW9CLENBQUM7TUFFdERDLE1BQU0sQ0FBQ0YsRUFBRSxDQUFDRyxTQUFTLENBQUMsQ0FBQ0MsT0FBTyxDQUFDLCtCQUErQixDQUFDO0lBQy9ELENBQUMsQ0FBQztFQUNKLENBQUMsQ0FBQztFQUVGTixRQUFRLENBQUMsMEJBQTBCLEVBQUUsTUFBTTtJQUN6Q0MsRUFBRSxDQUFDLHNDQUFzQyxFQUFFLE1BQU07TUFDL0NHLE1BQU0sQ0FBQyxJQUFBRyxxQ0FBd0IsRUFBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUNELE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztJQUN4RixDQUFDLENBQUM7SUFFRkwsRUFBRSxDQUFDLHNDQUFzQyxFQUFFLE1BQU07TUFDL0NHLE1BQU0sQ0FBQyxJQUFBRyxxQ0FBd0IsRUFBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUNELE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQztJQUMxRixDQUFDLENBQUM7SUFFRkwsRUFBRSxDQUFDLDJCQUEyQixFQUFFLE1BQU07TUFDcENHLE1BQU0sQ0FBQyxJQUFBRyxxQ0FBd0IsRUFBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUNELE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQztJQUMxRixDQUFDLENBQUM7SUFFRkwsRUFBRSxDQUFD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RSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDQyxJQUFJLENBQUMsRUFBRSxDQUFDO01BQzdELE1BQU1JLE9BQU8sR0FBRyxDQUNkO1FBQ0VDLEtBQUssRUFBRSxRQUFRO1FBQ2ZDLEVBQUUsRUFBRTtNQUNOLENBQUMsRUFDRDtRQUNFRCxLQUFLLEVBQUUsRUFBRTtRQUNUQyxFQUFFLEVBQUU7TUFDTixDQUFDLENBQ0Y7TUFDRCxNQUFNQyxlQUFlLEdBQUc7UUFDdEIsQ0FBQyxFQUFFLEdBQUc7UUFDTixDQUFDLEVBQUU7TUFDTCxDQUFDO01BQ0QsTUFBTUUsV0FBVyxHQUFHLElBQUFDLDhCQUFpQixFQUFDWCxNQUFNLEVBQUVLLE9BQU8sRUFBRUcsZUFBZSxDQUFDO01BRXZFWixNQUFNLENBQUNjLFdBQVcsQ0FBQyxDQUFDWixPQUFPLENBQ3pCLENBQ0UsT0FBTyxFQUNQLDRGQUE0RixFQUM1RixxRkFBcUYsRUFDckYsUUFBUSxDQUNULENBQUNHLElBQUksQ0FBQyxFQUFFLENBQ1gsQ0FBQztJQUNILENBQUMsQ0FBQztFQUNKLENBQUMsQ0FBQztFQUVGVCxRQUFRLENBQUMsZUFBZSxFQUFFLE1BQU07SUFDOUJDLEVBQUUsQ0FBQyxvREFBb0QsRUFBRSxNQUFNO01BQzdERyxNQUFNLENBQUMsSUFBQWdCLDBCQUFhLEVBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQ2QsT0FBTyxDQUFDLEtBQUssQ0FBQztNQUUxQ0YsTUFBTSxDQUFDLElBQUFnQiwwQkFBYSxFQUFDQyxTQUFTLENBQUMsQ0FBQyxDQUFDZixPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ2pELENBQUMsQ0FBQztJQUVGTCxFQUFFLENBQUMsOENBQThDLEVBQUUsTUFBTTtNQUN2REcsTUFBTSxDQUFDLElBQUFnQiwwQkFBYSxFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQztJQUN6QyxDQUFDLENBQUM7SUFFRkwsRUFBRSxDQUFDLDhDQUE4QyxFQUFFLE1BQU07TUFDdkQsTUFBTU8sTUFBTSxHQUFHLENBQUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFFBQVEsQ0FBQyxDQUFDQyxJQUFJLENBQUMsRUFBRSxDQUFDO01BRW5FTCxNQUFNLENBQUMsSUFBQWdCLDBCQUFhLEVBQUM7UUFBRU4sS0FBSyxFQUFFTjtNQUFPLENBQUMsQ0FBQyxDQUFDLENBQUNGLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDekQsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
@@ -12,7 +12,6 @@ var _MoreVert = _interopRequireDefault(require("@mui/icons-material/MoreVert"));
12
12
  var _Delete = _interopRequireDefault(require("@mui/icons-material/Delete"));
13
13
  var _core = require("@dnd-kit/core");
14
14
  var _styles = require("@mui/material/styles");
15
- var _renderUi = require("@pie-lib/render-ui");
16
15
  var _markupUtils = require("./markupUtils");
17
16
  const GripIcon = ({
18
17
  style
@@ -42,7 +41,7 @@ const StyledChoice = (0, _styles.styled)('div', {
42
41
  position: 'relative',
43
42
  padding: '8px 35px 8px 35px',
44
43
  cursor: 'grab',
45
- border: `1px solid ${error ? '#f44336' : _renderUi.color.border()}`,
44
+ border: `1px solid ${error ? '#f44336' : '#C0C3CF'}`,
46
45
  '& img': {
47
46
  display: 'flex'
48
47
  },
@@ -60,7 +59,7 @@ const StyledDeleteIcon = (0, _styles.styled)(_Delete.default)(({
60
59
  position: 'absolute',
61
60
  top: '6px',
62
61
  right: '0',
63
- color: _renderUi.color.text(),
62
+ color: theme.palette.grey[500],
64
63
  zIndex: 2,
65
64
  '&:hover': {
66
65
  cursor: 'pointer',
@@ -110,7 +109,7 @@ const BlankContent = props => {
110
109
  position: 'absolute',
111
110
  top: '6px',
112
111
  left: '15px',
113
- color: _renderUi.color.borderGray(),
112
+ color: '#9e9e9e',
114
113
  zIndex: 2
115
114
  }
116
115
  }), /*#__PURE__*/_react.default.createElement("span", {
@@ -1 +1 @@
1
- {"version":3,"file":"choice.js","names":["_react","_interopRequireDefault","require","_propTypes","_MoreVert","_Delete","_core","_styles","_renderUi","_markupUtils","GripIcon","style","default","createElement","margin","propTypes","PropTypes","object","StyledChoice","styled","shouldForwardProp","prop","includes","theme","error","display","minWidth","minHeight","background","palette","common","white","boxSizing","borderRadius","overflow","position","padding","cursor","border","color","fontSize","StyledDeleteIcon","Delete","top","right","text","zIndex","black","BlankContent","props","choice","onClick","onRemoveChoice","instanceId","disabled","attributes","listeners","setNodeRef","isDragging","useDraggable","id","data","type","value","choiceIsEmpty","handleDragStart","e","preventDefault","alert","_extends2","ref","onDragStart","left","borderGray","dangerouslySetInnerHTML","__html","stopPropagation","exports","isRequired","func","bool","string","_default"],"sources":["../src/choice.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport MoreVert from '@mui/icons-material/MoreVert';\nimport Delete from '@mui/icons-material/Delete';\nimport { useDraggable } from '@dnd-kit/core';\nimport { styled } from '@mui/material/styles';\nimport { color } from '@pie-lib/render-ui';\nimport { choiceIsEmpty } from './markupUtils';\n\nconst GripIcon = ({ style }) => (\n <span style={style}>\n <MoreVert style={{ margin: '0 -16px' }} />\n <MoreVert />\n </span>\n);\n\nGripIcon.propTypes = {\n style: PropTypes.object,\n};\n\nconst StyledChoice = styled('div', {\n shouldForwardProp: (prop) => !['error', 'isDragging'].includes(prop),\n})(({ theme, error }) => ({\n display: 'inline-flex',\n minWidth: '178px',\n minHeight: '36px',\n background: theme.palette.common.white,\n boxSizing: 'border-box',\n borderRadius: '3px',\n overflow: 'hidden',\n position: 'relative',\n padding: '8px 35px 8px 35px',\n cursor: 'grab',\n border: `1px solid ${error ? '#f44336' : color.border()}`,\n '& img': {\n display: 'flex',\n },\n // browser adds extra marrgin for p tags by default\n '& p': {\n margin: 0,\n },\n '& mjx-frac': {\n fontSize: '120% !important',\n },\n}));\n\nconst StyledDeleteIcon = styled(Delete)(({ theme }) => ({\n position: 'absolute',\n top: '6px',\n right: '0',\n color: color.text(),\n zIndex: 2,\n '&:hover': {\n cursor: 'pointer',\n color: theme.palette.common.black,\n },\n}));\n\nexport const BlankContent = (props) => {\n const { choice, onClick, onRemoveChoice, error, instanceId, disabled } = props;\n const { attributes, listeners, setNodeRef, isDragging } = useDraggable({\n id: `choice-${choice.id}-${instanceId || 'default'}`,\n data: {\n type: 'drag-in-the-blank-choice',\n id: choice.id,\n value: choice,\n instanceId: instanceId,\n },\n disabled: disabled || choiceIsEmpty(choice),\n });\n\n const handleDragStart = (e) => {\n if (choiceIsEmpty(choice)) {\n e.preventDefault();\n alert('You need to define a value for an answer choice before it can be associated with a response area.');\n return;\n }\n };\n\n return (\n <StyledChoice\n ref={setNodeRef}\n error={error}\n isDragging={isDragging}\n onClick={onClick}\n {...attributes}\n {...listeners}\n onDragStart={handleDragStart}\n >\n <GripIcon\n style={{\n position: 'absolute',\n top: '6px',\n left: '15px',\n color: color.borderGray(),\n zIndex: 2,\n }}\n />\n\n <span dangerouslySetInnerHTML={{ __html: choice.value }} />\n\n <StyledDeleteIcon\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n\n onRemoveChoice(e);\n }}\n />\n </StyledChoice>\n );\n};\n\nBlankContent.propTypes = {\n choice: PropTypes.object.isRequired,\n onClick: PropTypes.func,\n onRemoveChoice: PropTypes.func.isRequired,\n error: PropTypes.bool,\n instanceId: PropTypes.string,\n disabled: PropTypes.bool,\n};\n\nexport default BlankContent;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"choice.js","names":["_react","_interopRequireDefault","require","_propTypes","_MoreVert","_Delete","_core","_styles","_markupUtils","GripIcon","style","default","createElement","margin","propTypes","PropTypes","object","StyledChoice","styled","shouldForwardProp","prop","includes","theme","error","display","minWidth","minHeight","background","palette","common","white","boxSizing","borderRadius","overflow","position","padding","cursor","border","fontSize","StyledDeleteIcon","Delete","top","right","color","grey","zIndex","black","BlankContent","props","choice","onClick","onRemoveChoice","instanceId","disabled","attributes","listeners","setNodeRef","isDragging","useDraggable","id","data","type","value","choiceIsEmpty","handleDragStart","e","preventDefault","alert","_extends2","ref","onDragStart","left","dangerouslySetInnerHTML","__html","stopPropagation","exports","isRequired","func","bool","string","_default"],"sources":["../src/choice.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport MoreVert from '@mui/icons-material/MoreVert';\nimport Delete from '@mui/icons-material/Delete';\nimport { useDraggable } from '@dnd-kit/core';\nimport { styled } from '@mui/material/styles';\nimport { choiceIsEmpty } from './markupUtils';\n\nconst GripIcon = ({ style }) => (\n <span style={style}>\n <MoreVert style={{ margin: '0 -16px' }} />\n <MoreVert />\n </span>\n);\n\nGripIcon.propTypes = {\n style: PropTypes.object,\n};\n\nconst StyledChoice = styled('div', {\n shouldForwardProp: (prop) => !['error', 'isDragging'].includes(prop),\n})(({ theme, error }) => ({\n display: 'inline-flex',\n minWidth: '178px',\n minHeight: '36px',\n background: theme.palette.common.white,\n boxSizing: 'border-box',\n borderRadius: '3px',\n overflow: 'hidden',\n position: 'relative',\n padding: '8px 35px 8px 35px',\n cursor: 'grab',\n border: `1px solid ${error ? '#f44336' : '#C0C3CF'}`,\n '& img': {\n display: 'flex',\n },\n // browser adds extra marrgin for p tags by default\n '& p': {\n margin: 0,\n },\n '& mjx-frac': {\n fontSize: '120% !important',\n },\n}));\n\nconst StyledDeleteIcon = styled(Delete)(({ theme }) => ({\n position: 'absolute',\n top: '6px',\n right: '0',\n color: theme.palette.grey[500],\n zIndex: 2,\n '&:hover': {\n cursor: 'pointer',\n color: theme.palette.common.black,\n },\n}));\n\nexport const BlankContent = (props) => {\n const { choice, onClick, onRemoveChoice, error, instanceId, disabled } = props;\n const { attributes, listeners, setNodeRef, isDragging } = useDraggable({\n id: `choice-${choice.id}-${instanceId || 'default'}`,\n data: {\n type: 'drag-in-the-blank-choice',\n id: choice.id,\n value: choice,\n instanceId: instanceId,\n },\n disabled: disabled || choiceIsEmpty(choice),\n });\n\n const handleDragStart = (e) => {\n if (choiceIsEmpty(choice)) {\n e.preventDefault();\n alert('You need to define a value for an answer choice before it can be associated with a response area.');\n return;\n }\n };\n\n return (\n <StyledChoice\n ref={setNodeRef}\n error={error}\n isDragging={isDragging}\n onClick={onClick}\n {...attributes}\n {...listeners}\n onDragStart={handleDragStart}\n >\n <GripIcon\n style={{\n position: 'absolute',\n top: '6px',\n left: '15px',\n color: '#9e9e9e',\n zIndex: 2,\n }}\n />\n\n <span dangerouslySetInnerHTML={{ __html: choice.value }} />\n\n <StyledDeleteIcon\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n\n onRemoveChoice(e);\n }}\n />\n </StyledChoice>\n );\n};\n\nBlankContent.propTypes = {\n choice: PropTypes.object.isRequired,\n onClick: PropTypes.func,\n onRemoveChoice: PropTypes.func.isRequired,\n error: PropTypes.bool,\n instanceId: PropTypes.string,\n disabled: PropTypes.bool,\n};\n\nexport default BlankContent;\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAEA,MAAMO,QAAQ,GAAGA,CAAC;EAAEC;AAAM,CAAC,kBACzBV,MAAA,CAAAW,OAAA,CAAAC,aAAA;EAAMF,KAAK,EAAEA;AAAM,gBACjBV,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACR,SAAA,CAAAO,OAAQ;EAACD,KAAK,EAAE;IAAEG,MAAM,EAAE;EAAU;AAAE,CAAE,CAAC,eAC1Cb,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACR,SAAA,CAAAO,OAAQ,MAAE,CACP,CACP;AAEDF,QAAQ,CAACK,SAAS,GAAG;EACnBJ,KAAK,EAAEK,kBAAS,CAACC;AACnB,CAAC;AAED,MAAMC,YAAY,GAAG,IAAAC,cAAM,EAAC,KAAK,EAAE;EACjCC,iBAAiB,EAAGC,IAAI,IAAK,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAACC,QAAQ,CAACD,IAAI;AACrE,CAAC,CAAC,CAAC,CAAC;EAAEE,KAAK;EAAEC;AAAM,CAAC,MAAM;EACxBC,OAAO,EAAE,aAAa;EACtBC,QAAQ,EAAE,OAAO;EACjBC,SAAS,EAAE,MAAM;EACjBC,UAAU,EAAEL,KAAK,CAACM,OAAO,CAACC,MAAM,CAACC,KAAK;EACtCC,SAAS,EAAE,YAAY;EACvBC,YAAY,EAAE,KAAK;EACnBC,QAAQ,EAAE,QAAQ;EAClBC,QAAQ,EAAE,UAAU;EACpBC,OAAO,EAAE,mBAAmB;EAC5BC,MAAM,EAAE,MAAM;EACdC,MAAM,EAAE,aAAad,KAAK,GAAG,SAAS,GAAG,SAAS,EAAE;EACpD,OAAO,EAAE;IACPC,OAAO,EAAE;EACX,CAAC;EACD;EACA,KAAK,EAAE;IACLX,MAAM,EAAE;EACV,CAAC;EACD,YAAY,EAAE;IACZyB,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC,CAAC;AAEH,MAAMC,gBAAgB,GAAG,IAAArB,cAAM,EAACsB,eAAM,CAAC,CAAC,CAAC;EAAElB;AAAM,CAAC,MAAM;EACtDY,QAAQ,EAAE,UAAU;EACpBO,GAAG,EAAE,KAAK;EACVC,KAAK,EAAE,GAAG;EACVC,KAAK,EAAErB,KAAK,CAACM,OAAO,CAACgB,IAAI,CAAC,GAAG,CAAC;EAC9BC,MAAM,EAAE,CAAC;EACT,SAAS,EAAE;IACTT,MAAM,EAAE,SAAS;IACjBO,KAAK,EAAErB,KAAK,CAACM,OAAO,CAACC,MAAM,CAACiB;EAC9B;AACF,CAAC,CAAC,CAAC;AAEI,MAAMC,YAAY,GAAIC,KAAK,IAAK;EACrC,MAAM;IAAEC,MAAM;IAAEC,OAAO;IAAEC,cAAc;IAAE5B,KAAK;IAAE6B,UAAU;IAAEC;EAAS,CAAC,GAAGL,KAAK;EAC9E,MAAM;IAAEM,UAAU;IAAEC,SAAS;IAAEC,UAAU;IAAEC;EAAW,CAAC,GAAG,IAAAC,kBAAY,EAAC;IACrEC,EAAE,EAAE,UAAUV,MAAM,CAACU,EAAE,IAAIP,UAAU,IAAI,SAAS,EAAE;IACpDQ,IAAI,EAAE;MACJC,IAAI,EAAE,0BAA0B;MAChCF,EAAE,EAAEV,MAAM,CAACU,EAAE;MACbG,KAAK,EAAEb,MAAM;MACbG,UAAU,EAAEA;IACd,CAAC;IACDC,QAAQ,EAAEA,QAAQ,IAAI,IAAAU,0BAAa,EAACd,MAAM;EAC5C,CAAC,CAAC;EAEF,MAAMe,eAAe,GAAIC,CAAC,IAAK;IAC7B,IAAI,IAAAF,0BAAa,EAACd,MAAM,CAAC,EAAE;MACzBgB,CAAC,CAACC,cAAc,CAAC,CAAC;MAClBC,KAAK,CAAC,mGAAmG,CAAC;MAC1G;IACF;EACF,CAAC;EAED,oBACEnE,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACK,YAAY,MAAAmD,SAAA,CAAAzD,OAAA;IACX0D,GAAG,EAAEb,UAAW;IAChBjC,KAAK,EAAEA,KAAM;IACbkC,UAAU,EAAEA,UAAW;IACvBP,OAAO,EAAEA;EAAQ,GACbI,UAAU,EACVC,SAAS;IACbe,WAAW,EAAEN;EAAgB,iBAE7BhE,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAACH,QAAQ;IACPC,KAAK,EAAE;MACLwB,QAAQ,EAAE,UAAU;MACpBO,GAAG,EAAE,KAAK;MACV8B,IAAI,EAAE,MAAM;MACZ5B,KAAK,EAAE,SAAS;MAChBE,MAAM,EAAE;IACV;EAAE,CACH,CAAC,eAEF7C,MAAA,CAAAW,OAAA,CAAAC,aAAA;IAAM4D,uBAAuB,EAAE;MAAEC,MAAM,EAAExB,MAAM,CAACa;IAAM;EAAE,CAAE,CAAC,eAE3D9D,MAAA,CAAAW,OAAA,CAAAC,aAAA,CAAC2B,gBAAgB;IACfW,OAAO,EAAGe,CAAC,IAAK;MACdA,CAAC,CAACC,cAAc,CAAC,CAAC;MAClBD,CAAC,CAACS,eAAe,CAAC,CAAC;MAEnBvB,cAAc,CAACc,CAAC,CAAC;IACnB;EAAE,CACH,CACW,CAAC;AAEnB,CAAC;AAACU,OAAA,CAAA5B,YAAA,GAAAA,YAAA;AAEFA,YAAY,CAACjC,SAAS,GAAG;EACvBmC,MAAM,EAAElC,kBAAS,CAACC,MAAM,CAAC4D,UAAU;EACnC1B,OAAO,EAAEnC,kBAAS,CAAC8D,IAAI;EACvB1B,cAAc,EAAEpC,kBAAS,CAAC8D,IAAI,CAACD,UAAU;EACzCrD,KAAK,EAAER,kBAAS,CAAC+D,IAAI;EACrB1B,UAAU,EAAErC,kBAAS,CAACgE,MAAM;EAC5B1B,QAAQ,EAAEtC,kBAAS,CAAC+D;AACtB,CAAC;AAAC,IAAAE,QAAA,GAAAL,OAAA,CAAAhE,OAAA,GAEaoC,YAAY","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pie-element/drag-in-the-blank-configure",
3
- "version": "9.2.0",
3
+ "version": "9.4.0-beta.8",
4
4
  "private": true,
5
5
  "main": "lib/index.js",
6
6
  "module": "src/index.js",
@@ -12,9 +12,9 @@
12
12
  "@mui/icons-material": "^7.3.4",
13
13
  "@mui/material": "^7.3.4",
14
14
  "@pie-framework/pie-configure-events": "^1.3.0",
15
- "@pie-lib/config-ui": "13.0.16",
16
- "@pie-lib/drag": "4.1.1",
17
- "@pie-lib/editable-html-tip-tap": "2.1.14",
15
+ "@pie-lib/config-ui": "13.1.0-beta.6",
16
+ "@pie-lib/drag": "4.0.6",
17
+ "@pie-lib/editable-html-tip-tap": "2.2.0-beta.6",
18
18
  "@pie-lib/math-rendering": "5.1.0",
19
19
  "debug": "^4.1.1",
20
20
  "lodash-es": "^4.17.23",
@@ -3,24 +3,56 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [9.1.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.1.2...@pie-element/drag-in-the-blank-controller@9.1.4) (2026-08-13)
6
+ # [9.4.0-beta.8](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.7...@pie-element/drag-in-the-blank-controller@9.4.0-beta.8) (2026-08-26)
7
7
 
8
8
  **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
9
9
 
10
- ## [9.1.3](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.1.2...@pie-element/drag-in-the-blank-controller@9.1.3) (2026-08-11)
10
+ # [9.4.0-beta.7](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.6...@pie-element/drag-in-the-blank-controller@9.4.0-beta.7) (2026-08-20)
11
11
 
12
12
  **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
13
13
 
14
- ## [9.1.2](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.1.1...@pie-element/drag-in-the-blank-controller@9.1.2) (2026-07-02)
14
+ # [9.4.0-beta.6](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.5...@pie-element/drag-in-the-blank-controller@9.4.0-beta.6) (2026-08-14)
15
15
 
16
- ### Bug Fixes
16
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
17
17
 
18
- - bump shared modules and libs PIE-695, PIE-697, PIE-699, PIE-680, PIE-714, PIE-665, PIE-656 ([4b76ae7](https://github.com/pie-framework/pie-elements/commit/4b76ae75d1c5ea6d55f7c6fb53f299dfcbda2b1f))
18
+ # [9.4.0-beta.5](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.4...@pie-element/drag-in-the-blank-controller@9.4.0-beta.5) (2026-08-11)
19
+
20
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
21
+
22
+ # [9.4.0-beta.4](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.3...@pie-element/drag-in-the-blank-controller@9.4.0-beta.4) (2026-08-11)
23
+
24
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
25
+
26
+ # [9.4.0-beta.3](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.2...@pie-element/drag-in-the-blank-controller@9.4.0-beta.3) (2026-08-11)
27
+
28
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
29
+
30
+ # [9.4.0-beta.2](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.1...@pie-element/drag-in-the-blank-controller@9.4.0-beta.2) (2026-08-11)
31
+
32
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
19
33
 
20
- ## [9.1.1](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.1.0...@pie-element/drag-in-the-blank-controller@9.1.1) (2026-05-21)
34
+ # [9.4.0-beta.1](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.4.0-beta.0...@pie-element/drag-in-the-blank-controller@9.4.0-beta.1) (2026-08-07)
21
35
 
22
36
  **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
23
37
 
38
+ # [9.4.0-beta.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.3.0-beta.0...@pie-element/drag-in-the-blank-controller@9.4.0-beta.0) (2026-08-07)
39
+
40
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
41
+
42
+ # [9.3.0-beta.1](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.3.0-beta.0...@pie-element/drag-in-the-blank-controller@9.3.0-beta.1) (2026-08-07)
43
+
44
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
45
+
46
+ # [9.3.0-beta.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.2.0-beta.0...@pie-element/drag-in-the-blank-controller@9.3.0-beta.0) (2026-08-07)
47
+
48
+ **Note:** Version bump only for package @pie-element/drag-in-the-blank-controller
49
+
50
+ # [9.2.0-beta.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.1.0...@pie-element/drag-in-the-blank-controller@9.2.0-beta.0) (2026-08-07)
51
+
52
+ ### Bug Fixes
53
+
54
+ - bump shared modules and libs PIE-695, PIE-697, PIE-699, PIE-680, PIE-714, PIE-665, PIE-656 ([4b76ae7](https://github.com/pie-framework/pie-elements/commit/4b76ae75d1c5ea6d55f7c6fb53f299dfcbda2b1f))
55
+
24
56
  # [9.1.0](https://github.com/pie-framework/pie-elements/compare/@pie-element/drag-in-the-blank-controller@9.1.0-next.1...@pie-element/drag-in-the-blank-controller@9.1.0) (2026-05-21)
25
57
 
26
58
  ### Bug Fixes