@micromag/editor 0.2.413 → 0.3.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/assets/css/styles.css +12 -11
- package/es/index.js +1282 -879
- package/lib/index.js +1279 -875
- package/package.json +8 -8
package/lib/index.js
CHANGED
|
@@ -15,11 +15,11 @@ var PropTypes = require('prop-types');
|
|
|
15
15
|
var React = require('react');
|
|
16
16
|
var reactIntl = require('react-intl');
|
|
17
17
|
var reactRouter = require('react-router');
|
|
18
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
18
19
|
var reactTransitionGroup = require('react-transition-group');
|
|
19
20
|
var uuid = require('uuid');
|
|
20
21
|
var isString = require('lodash/isString');
|
|
21
22
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
22
|
-
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
23
23
|
require('lodash/isArray');
|
|
24
24
|
require('lodash/get');
|
|
25
25
|
require('lodash/set');
|
|
@@ -28,6 +28,7 @@ var freeSolidSvgIcons = require('@fortawesome/free-solid-svg-icons');
|
|
|
28
28
|
var fields = require('@micromag/fields');
|
|
29
29
|
var size = require('@folklore/size');
|
|
30
30
|
var viewer = require('@micromag/viewer');
|
|
31
|
+
var _toArray = require('@babel/runtime/helpers/toArray');
|
|
31
32
|
var isFunction = require('lodash/isFunction');
|
|
32
33
|
var reactSortablejs = require('react-sortablejs');
|
|
33
34
|
var core$1 = require('@dnd-kit/core');
|
|
@@ -47,9 +48,10 @@ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray)
|
|
|
47
48
|
var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
|
|
48
49
|
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
49
50
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
51
|
+
var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
|
|
50
52
|
var isString__default = /*#__PURE__*/_interopDefaultLegacy(isString);
|
|
51
53
|
var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
|
|
52
|
-
var
|
|
54
|
+
var _toArray__default = /*#__PURE__*/_interopDefaultLegacy(_toArray);
|
|
53
55
|
var isFunction__default = /*#__PURE__*/_interopDefaultLegacy(isFunction);
|
|
54
56
|
var _createForOfIteratorHelper__default = /*#__PURE__*/_interopDefaultLegacy(_createForOfIteratorHelper);
|
|
55
57
|
var orderBy__default = /*#__PURE__*/_interopDefaultLegacy(orderBy);
|
|
@@ -90,24 +92,110 @@ var useRouteParams = function useRouteParams() {
|
|
|
90
92
|
return routeParams;
|
|
91
93
|
};
|
|
92
94
|
|
|
93
|
-
var styles$
|
|
95
|
+
var styles$i = {"container":"micromag-editor-container","left":"micromag-editor-left","right":"micromag-editor-right","center":"micromag-editor-center","fullscreen":"micromag-editor-fullscreen","preview":"micromag-editor-preview","inner":"micromag-editor-inner","visible":"micromag-editor-visible","screen-medium":"micromag-editor-screen-medium","top":"micromag-editor-top"};
|
|
94
96
|
|
|
95
|
-
var
|
|
96
|
-
var
|
|
97
|
+
var useFormTransition = function useFormTransition(url, screenIndex, styles) {
|
|
98
|
+
var lastPageRef = React.useRef({
|
|
99
|
+
url: url,
|
|
100
|
+
screenIndex: screenIndex
|
|
101
|
+
});
|
|
102
|
+
var direction = React.useMemo(function () {
|
|
103
|
+
var _lastPageRef$current = lastPageRef.current,
|
|
104
|
+
lastScreenIndex = _lastPageRef$current.screenIndex,
|
|
105
|
+
lastUrl = _lastPageRef$current.url;
|
|
106
|
+
lastPageRef.current.url = url;
|
|
107
|
+
lastPageRef.current.screenIndex = screenIndex;
|
|
97
108
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
109
|
+
if (screenIndex !== lastScreenIndex) {
|
|
110
|
+
// return screenIndex > lastScreenIndex ? 'bottom' : 'top';
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
var urlSplit = url.split('/');
|
|
115
|
+
var lastUrlSplit = lastUrl.split('/');
|
|
116
|
+
var currentPartsCount = urlSplit.length;
|
|
117
|
+
var previousPartsCount = lastUrlSplit.length;
|
|
118
|
+
var isSettings = urlSplit[currentPartsCount - 1] === 'settings';
|
|
119
|
+
var wasSettings = lastUrlSplit[previousPartsCount - 1] === 'settings';
|
|
120
|
+
currentPartsCount -= isSettings ? 1 : 0;
|
|
121
|
+
previousPartsCount -= wasSettings ? 1 : 0;
|
|
122
|
+
return currentPartsCount >= previousPartsCount ? 'right' : 'left';
|
|
123
|
+
}, [url, screenIndex]);
|
|
124
|
+
var transitionClassNames = React.useMemo(function () {
|
|
125
|
+
var _classNames, _classNames2, _classNames3;
|
|
126
|
+
|
|
127
|
+
return {
|
|
128
|
+
enter: classNames__default["default"]((_classNames = {}, _defineProperty__default["default"](_classNames, styles.enterRight, direction === 'right'), _defineProperty__default["default"](_classNames, styles.enterLeft, direction === 'left'), _defineProperty__default["default"](_classNames, styles.enterTop, direction === 'top'), _defineProperty__default["default"](_classNames, styles.enterBottom, direction === 'bottom'), _classNames)) || 'none',
|
|
129
|
+
enterActive: classNames__default["default"]((_classNames2 = {}, _defineProperty__default["default"](_classNames2, styles.enterActiveHorizontal, direction === 'left' || direction === 'right'), _defineProperty__default["default"](_classNames2, styles.enterActiveVertical, direction === 'top' || direction === 'bottom'), _classNames2)) || 'none',
|
|
130
|
+
exit: styles.exit || 'none',
|
|
131
|
+
exitActive: classNames__default["default"]((_classNames3 = {}, _defineProperty__default["default"](_classNames3, styles.exitActiveRight, direction === 'right'), _defineProperty__default["default"](_classNames3, styles.exitActiveLeft, direction === 'left'), _defineProperty__default["default"](_classNames3, styles.exitActiveTop, direction === 'top'), _defineProperty__default["default"](_classNames3, styles.exitActiveBottom, direction === 'bottom'), _classNames3)) || 'none'
|
|
132
|
+
};
|
|
133
|
+
}, [direction, screenIndex]);
|
|
134
|
+
return {
|
|
135
|
+
direction: direction,
|
|
136
|
+
classNames: transitionClassNames,
|
|
137
|
+
timeout: direction === 'left' || direction === 'right' ? 300 : 10
|
|
138
|
+
};
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
var styles$h = {"panel":"micromag-editor-form-panel","exit":"micromag-editor-form-exit","content":"micromag-editor-form-content","navbar":"micromag-editor-form-navbar","enterBottom":"micromag-editor-form-enterBottom","enterLeft":"micromag-editor-form-enterLeft","enterRight":"micromag-editor-form-enterRight","enterTop":"micromag-editor-form-enterTop","enterActiveHorizontal":"micromag-editor-form-enterActiveHorizontal","enterActiveVertical":"micromag-editor-form-enterActiveVertical","exitActiveLeft":"micromag-editor-form-exitActiveLeft","exitActiveRight":"micromag-editor-form-exitActiveRight","exitActiveBottom":"micromag-editor-form-exitActiveBottom","exitActiveTop":"micromag-editor-form-exitActiveTop"};
|
|
142
|
+
|
|
143
|
+
function getScreenFieldsWithStates(definition) {
|
|
144
|
+
var _ref = definition || {},
|
|
102
145
|
_ref$fields = _ref.fields,
|
|
103
|
-
|
|
146
|
+
screenFields = _ref$fields === void 0 ? [] : _ref$fields,
|
|
147
|
+
_ref$states = _ref.states,
|
|
148
|
+
states = _ref$states === void 0 ? null : _ref$states;
|
|
104
149
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
150
|
+
if (states === null) {
|
|
151
|
+
return screenFields;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
return [].concat(_toConsumableArray__default["default"](states.reduce(function (statesFields, _ref2) {
|
|
155
|
+
var id = _ref2.id,
|
|
156
|
+
_ref2$fields = _ref2.fields,
|
|
157
|
+
fields = _ref2$fields === void 0 ? [] : _ref2$fields,
|
|
158
|
+
_ref2$repeatable = _ref2.repeatable,
|
|
159
|
+
repeatable = _ref2$repeatable === void 0 ? false : _ref2$repeatable,
|
|
160
|
+
_ref2$fieldName = _ref2.fieldName,
|
|
161
|
+
fieldName = _ref2$fieldName === void 0 ? null : _ref2$fieldName,
|
|
162
|
+
label = _ref2.label;
|
|
163
|
+
return [].concat(_toConsumableArray__default["default"](statesFields), _toConsumableArray__default["default"](repeatable ? [{
|
|
164
|
+
type: 'items',
|
|
165
|
+
name: fieldName || id,
|
|
166
|
+
label: label,
|
|
167
|
+
stateId: id,
|
|
168
|
+
itemsField: {
|
|
169
|
+
label: label,
|
|
170
|
+
type: 'fields',
|
|
171
|
+
fields: fields
|
|
172
|
+
}
|
|
173
|
+
}] : []), _toConsumableArray__default["default"](!repeatable && fieldName !== null ? [{
|
|
174
|
+
type: 'fields',
|
|
175
|
+
name: fieldName,
|
|
176
|
+
stateId: id,
|
|
177
|
+
fields: fields
|
|
178
|
+
}] : []), _toConsumableArray__default["default"](!repeatable && fieldName === null ? fields.map(function (it) {
|
|
179
|
+
return _objectSpread__default["default"](_objectSpread__default["default"]({}, it), {}, {
|
|
180
|
+
stateId: id
|
|
181
|
+
});
|
|
182
|
+
}) : []));
|
|
183
|
+
}, [])), _toConsumableArray__default["default"](screenFields));
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
var createScreen = function createScreen(definition) {
|
|
187
|
+
var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
188
|
+
var finalDefinition = isString__default["default"](definition) ? {
|
|
189
|
+
id: definition
|
|
190
|
+
} : definition;
|
|
191
|
+
var id = finalDefinition.id;
|
|
192
|
+
var screenFields = getScreenFieldsWithStates(finalDefinition);
|
|
193
|
+
var defaultValueFields = screenFields.reduce(function (all, curr) {
|
|
194
|
+
var _ref = curr || {},
|
|
195
|
+
_ref$name = _ref.name,
|
|
196
|
+
name = _ref$name === void 0 ? null : _ref$name,
|
|
197
|
+
_ref$defaultValue = _ref.defaultValue,
|
|
198
|
+
defaultValue = _ref$defaultValue === void 0 ? null : _ref$defaultValue;
|
|
111
199
|
|
|
112
200
|
var newAll = _objectSpread__default["default"]({}, all);
|
|
113
201
|
|
|
@@ -124,13 +212,13 @@ var createScreen = function createScreen(definition) {
|
|
|
124
212
|
});
|
|
125
213
|
};
|
|
126
214
|
|
|
127
|
-
var _excluded$
|
|
215
|
+
var _excluded$c = ["components"];
|
|
128
216
|
|
|
129
217
|
var deleteScreen = function deleteScreen(story, screenId) {
|
|
130
218
|
var _ref = story || {},
|
|
131
219
|
_ref$components = _ref.components,
|
|
132
220
|
components = _ref$components === void 0 ? [] : _ref$components,
|
|
133
|
-
currentValue = _objectWithoutProperties__default["default"](_ref, _excluded$
|
|
221
|
+
currentValue = _objectWithoutProperties__default["default"](_ref, _excluded$c);
|
|
134
222
|
|
|
135
223
|
return _objectSpread__default["default"](_objectSpread__default["default"]({}, currentValue), {}, {
|
|
136
224
|
components: components.filter(function (_ref2) {
|
|
@@ -140,13 +228,13 @@ var deleteScreen = function deleteScreen(story, screenId) {
|
|
|
140
228
|
});
|
|
141
229
|
};
|
|
142
230
|
|
|
143
|
-
var _excluded$
|
|
231
|
+
var _excluded$b = ["components"];
|
|
144
232
|
|
|
145
233
|
var duplicateScreen = function duplicateScreen(story, screenId) {
|
|
146
234
|
var _ref = story || {},
|
|
147
235
|
_ref$components = _ref.components,
|
|
148
236
|
components = _ref$components === void 0 ? [] : _ref$components,
|
|
149
|
-
currentValue = _objectWithoutProperties__default["default"](_ref, _excluded$
|
|
237
|
+
currentValue = _objectWithoutProperties__default["default"](_ref, _excluded$b);
|
|
150
238
|
|
|
151
239
|
var screen = components.find(function (it) {
|
|
152
240
|
return it.id === screenId;
|
|
@@ -158,7 +246,7 @@ var duplicateScreen = function duplicateScreen(story, screenId) {
|
|
|
158
246
|
});
|
|
159
247
|
};
|
|
160
248
|
|
|
161
|
-
var _excluded$
|
|
249
|
+
var _excluded$a = ["components"];
|
|
162
250
|
|
|
163
251
|
var updateScreen = function updateScreen(story, newScreenValue) {
|
|
164
252
|
var newScreenId = newScreenValue.id;
|
|
@@ -166,7 +254,7 @@ var updateScreen = function updateScreen(story, newScreenValue) {
|
|
|
166
254
|
var _ref = story || {},
|
|
167
255
|
_ref$components = _ref.components,
|
|
168
256
|
components = _ref$components === void 0 ? [] : _ref$components,
|
|
169
|
-
currentValue = _objectWithoutProperties__default["default"](_ref, _excluded$
|
|
257
|
+
currentValue = _objectWithoutProperties__default["default"](_ref, _excluded$a);
|
|
170
258
|
|
|
171
259
|
var index = components.findIndex(function (it) {
|
|
172
260
|
return it.id === newScreenId;
|
|
@@ -195,78 +283,179 @@ var getFieldByName = function getFieldByName(fields, name) {
|
|
|
195
283
|
}, null);
|
|
196
284
|
};
|
|
197
285
|
|
|
198
|
-
var
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
screenIndex: screenIndex
|
|
202
|
-
});
|
|
203
|
-
var direction = React.useMemo(function () {
|
|
204
|
-
var _lastPageRef$current = lastPageRef.current,
|
|
205
|
-
lastScreenIndex = _lastPageRef$current.screenIndex,
|
|
206
|
-
lastUrl = _lastPageRef$current.url;
|
|
207
|
-
lastPageRef.current.url = url;
|
|
208
|
-
lastPageRef.current.screenIndex = screenIndex;
|
|
209
|
-
|
|
210
|
-
if (screenIndex !== lastScreenIndex) {
|
|
211
|
-
// return screenIndex > lastScreenIndex ? 'bottom' : 'top';
|
|
212
|
-
return null;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
var urlSplit = url.split('/');
|
|
216
|
-
var lastUrlSplit = lastUrl.split('/');
|
|
217
|
-
var currentPartsCount = urlSplit.length;
|
|
218
|
-
var previousPartsCount = lastUrlSplit.length;
|
|
219
|
-
var isSettings = urlSplit[currentPartsCount - 1] === 'settings';
|
|
220
|
-
var wasSettings = lastUrlSplit[previousPartsCount - 1] === 'settings';
|
|
221
|
-
currentPartsCount -= isSettings ? 1 : 0;
|
|
222
|
-
previousPartsCount -= wasSettings ? 1 : 0;
|
|
223
|
-
return currentPartsCount >= previousPartsCount ? 'right' : 'left';
|
|
224
|
-
}, [url, screenIndex]);
|
|
225
|
-
var name = React.useMemo(function () {
|
|
226
|
-
var _classNames, _classNames2, _classNames3;
|
|
227
|
-
|
|
228
|
-
return {
|
|
229
|
-
enter: classNames__default["default"]((_classNames = {}, _defineProperty__default["default"](_classNames, styles.enterRight, direction === 'right'), _defineProperty__default["default"](_classNames, styles.enterLeft, direction === 'left'), _defineProperty__default["default"](_classNames, styles.enterTop, direction === 'top'), _defineProperty__default["default"](_classNames, styles.enterBottom, direction === 'bottom'), _classNames)) || 'none',
|
|
230
|
-
enterActive: classNames__default["default"]((_classNames2 = {}, _defineProperty__default["default"](_classNames2, styles.enterActiveHorizontal, direction === 'left' || direction === 'right'), _defineProperty__default["default"](_classNames2, styles.enterActiveVertical, direction === 'top' || direction === 'bottom'), _classNames2)) || 'none',
|
|
231
|
-
leave: styles.leave || 'none',
|
|
232
|
-
leaveActive: classNames__default["default"]((_classNames3 = {}, _defineProperty__default["default"](_classNames3, styles.leaveActiveRight, direction === 'right'), _defineProperty__default["default"](_classNames3, styles.leaveActiveLeft, direction === 'left'), _defineProperty__default["default"](_classNames3, styles.leaveActiveTop, direction === 'top'), _defineProperty__default["default"](_classNames3, styles.leaveActiveBottom, direction === 'bottom'), _classNames3)) || 'none'
|
|
233
|
-
};
|
|
234
|
-
}, [direction, screenIndex]);
|
|
235
|
-
return {
|
|
236
|
-
direction: direction,
|
|
237
|
-
name: name,
|
|
238
|
-
timeout: direction === 'left' || direction === 'right' ? 300 : 10
|
|
239
|
-
};
|
|
240
|
-
};
|
|
241
|
-
|
|
242
|
-
var _excluded$8 = ["className"];
|
|
243
|
-
var propTypes$n = {
|
|
286
|
+
var _excluded$9 = ["className", "dots"];
|
|
287
|
+
var propTypes$o = {
|
|
288
|
+
dots: PropTypes__default["default"].bool,
|
|
244
289
|
className: PropTypes__default["default"].string
|
|
245
290
|
};
|
|
246
|
-
var defaultProps$
|
|
291
|
+
var defaultProps$o = {
|
|
292
|
+
dots: false,
|
|
247
293
|
className: null
|
|
248
294
|
};
|
|
249
295
|
|
|
250
296
|
var SettingsButton = function SettingsButton(_ref) {
|
|
251
297
|
var className = _ref.className,
|
|
252
|
-
|
|
298
|
+
dots = _ref.dots,
|
|
299
|
+
props = _objectWithoutProperties__default["default"](_ref, _excluded$9);
|
|
253
300
|
|
|
254
301
|
return /*#__PURE__*/React__default["default"].createElement(components.Button, Object.assign({
|
|
255
302
|
className: className,
|
|
256
303
|
theme: "secondary",
|
|
257
304
|
size: "sm",
|
|
258
305
|
icon: /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
259
|
-
icon: freeSolidSvgIcons.faCogs
|
|
306
|
+
icon: dots ? freeSolidSvgIcons.faEllipsisV : freeSolidSvgIcons.faCogs
|
|
260
307
|
})
|
|
261
308
|
}, props));
|
|
262
309
|
};
|
|
263
310
|
|
|
264
|
-
SettingsButton.propTypes = propTypes$
|
|
265
|
-
SettingsButton.defaultProps = defaultProps$
|
|
311
|
+
SettingsButton.propTypes = propTypes$o;
|
|
312
|
+
SettingsButton.defaultProps = defaultProps$o;
|
|
266
313
|
|
|
267
|
-
var
|
|
314
|
+
var _excluded$8 = ["name", "form"];
|
|
315
|
+
var propTypes$n = {
|
|
316
|
+
name: PropTypes__default["default"].string,
|
|
317
|
+
form: PropTypes__default["default"].string,
|
|
318
|
+
children: PropTypes__default["default"].node
|
|
319
|
+
};
|
|
320
|
+
var defaultProps$n = {
|
|
321
|
+
name: null,
|
|
322
|
+
form: null,
|
|
323
|
+
children: null
|
|
324
|
+
};
|
|
325
|
+
|
|
326
|
+
var FieldWithContexts = function FieldWithContexts(_ref) {
|
|
327
|
+
var name = _ref.name,
|
|
328
|
+
form = _ref.form,
|
|
329
|
+
props = _objectWithoutProperties__default["default"](_ref, _excluded$8);
|
|
330
|
+
|
|
331
|
+
// Get definitions
|
|
332
|
+
var definition = contexts.useScreenDefinition();
|
|
333
|
+
var _definition$states = definition.states,
|
|
334
|
+
states = _definition$states === void 0 ? null : _definition$states;
|
|
335
|
+
var screenFields = getScreenFieldsWithStates(definition); // const [stateId = null] = name.split('.');
|
|
336
|
+
// const currentState = states !== null ? states.find(({ id }) => id === stateId) || null : null;
|
|
337
|
+
|
|
338
|
+
var nameParts = name.split('.');
|
|
339
|
+
|
|
340
|
+
var _nameParts = _slicedToArray__default["default"](nameParts, 1),
|
|
341
|
+
_nameParts$ = _nameParts[0],
|
|
342
|
+
stateId = _nameParts$ === void 0 ? null : _nameParts$;
|
|
343
|
+
|
|
344
|
+
var currentState = states !== null ? states.find(function (_ref2) {
|
|
345
|
+
var id = _ref2.id;
|
|
346
|
+
return id === stateId;
|
|
347
|
+
}) || null : null;
|
|
348
|
+
var finalNameParts = nameParts;
|
|
349
|
+
|
|
350
|
+
var _ref3 = currentState || {},
|
|
351
|
+
_ref3$repeatable = _ref3.repeatable,
|
|
352
|
+
repeatable = _ref3$repeatable === void 0 ? false : _ref3$repeatable,
|
|
353
|
+
_ref3$fieldName = _ref3.fieldName,
|
|
354
|
+
fieldName = _ref3$fieldName === void 0 ? null : _ref3$fieldName,
|
|
355
|
+
_ref3$fields = _ref3.fields,
|
|
356
|
+
stateFields = _ref3$fields === void 0 ? [] : _ref3$fields;
|
|
357
|
+
|
|
358
|
+
if (currentState !== null) {
|
|
359
|
+
finalNameParts = (repeatable || fieldName !== null) && nameParts.length <= (repeatable ? 2 : 1) ? [fieldName || stateId].concat(_toConsumableArray__default["default"](nameParts.slice(1))) : nameParts.slice(1);
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
var formComponents = contexts.useFormsComponents(); // if (currentState !== null && !repeatable && stateFieldName === null) {
|
|
363
|
+
// return (
|
|
364
|
+
// <div className="p-2">
|
|
365
|
+
// <Fields fields={stateFields} {...props} />
|
|
366
|
+
// </div>
|
|
367
|
+
// );
|
|
368
|
+
// }
|
|
369
|
+
// const finalFields =
|
|
370
|
+
// repeatable || stateFieldName !== null
|
|
371
|
+
// ? [{
|
|
372
|
+
// name: stateFieldName || stateId,
|
|
373
|
+
// itemsField: {
|
|
374
|
+
// type: 'fields',
|
|
375
|
+
// fields: stateFields,
|
|
376
|
+
// className: 'p-2'
|
|
377
|
+
// },
|
|
378
|
+
// }]
|
|
379
|
+
// : fields;
|
|
380
|
+
|
|
381
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
382
|
+
className: classNames__default["default"]({
|
|
383
|
+
'p-2': form === null
|
|
384
|
+
})
|
|
385
|
+
}, finalNameParts.length > 0 ? /*#__PURE__*/React__default["default"].createElement(components.FieldForm, Object.assign({
|
|
386
|
+
fields: screenFields,
|
|
387
|
+
formComponents: formComponents,
|
|
388
|
+
name: finalNameParts.join('.'),
|
|
389
|
+
form: form
|
|
390
|
+
}, props)) : /*#__PURE__*/React__default["default"].createElement(fields.Fields, Object.assign({
|
|
391
|
+
fields: stateFields
|
|
392
|
+
}, props)));
|
|
393
|
+
};
|
|
394
|
+
|
|
395
|
+
FieldWithContexts.propTypes = propTypes$n;
|
|
396
|
+
FieldWithContexts.defaultProps = defaultProps$n;
|
|
397
|
+
|
|
398
|
+
var styles$g = {"container":"micromag-editor-forms-screen-container","inner":"micromag-editor-forms-screen-inner"};
|
|
268
399
|
|
|
269
400
|
var propTypes$m = {
|
|
401
|
+
value: core.PropTypes.component,
|
|
402
|
+
className: PropTypes__default["default"].string,
|
|
403
|
+
gotoFieldForm: PropTypes__default["default"].func.isRequired,
|
|
404
|
+
closeFieldForm: PropTypes__default["default"].func.isRequired,
|
|
405
|
+
onChange: PropTypes__default["default"].func // onClickDelete: PropTypes.func,
|
|
406
|
+
|
|
407
|
+
};
|
|
408
|
+
var defaultProps$m = {
|
|
409
|
+
value: null,
|
|
410
|
+
className: null,
|
|
411
|
+
onChange: null // onClickDelete: null,
|
|
412
|
+
|
|
413
|
+
};
|
|
414
|
+
|
|
415
|
+
var ScreenForm = function ScreenForm(_ref) {
|
|
416
|
+
var value = _ref.value,
|
|
417
|
+
className = _ref.className,
|
|
418
|
+
gotoFieldForm = _ref.gotoFieldForm,
|
|
419
|
+
closeFieldForm = _ref.closeFieldForm,
|
|
420
|
+
onChange = _ref.onChange;
|
|
421
|
+
|
|
422
|
+
var _useScreenDefinition = contexts.useScreenDefinition(),
|
|
423
|
+
_useScreenDefinition$ = _useScreenDefinition.fields,
|
|
424
|
+
fields$1 = _useScreenDefinition$ === void 0 ? [] : _useScreenDefinition$; // const intl = useIntl();
|
|
425
|
+
// const finalOnClickDelete = useCallback(() => {
|
|
426
|
+
// if (
|
|
427
|
+
// onClickDelete !== null &&
|
|
428
|
+
// window.confirm(
|
|
429
|
+
// intl.formatMessage({
|
|
430
|
+
// defaultMessage: 'Are you sure you want to delete this screen?',
|
|
431
|
+
// description: 'Confirm message when deleting a screen',
|
|
432
|
+
// }),
|
|
433
|
+
// )
|
|
434
|
+
// ) {
|
|
435
|
+
// onClickDelete(value);
|
|
436
|
+
// }
|
|
437
|
+
// }, [intl, onClickDelete, value]);
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
441
|
+
className: classNames__default["default"]([styles$g.container, _defineProperty__default["default"]({}, className, className)])
|
|
442
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
443
|
+
className: styles$g.inner
|
|
444
|
+
}, /*#__PURE__*/React__default["default"].createElement(fields.Fields, {
|
|
445
|
+
fields: fields$1,
|
|
446
|
+
value: value,
|
|
447
|
+
onChange: onChange,
|
|
448
|
+
gotoFieldForm: gotoFieldForm,
|
|
449
|
+
closeFieldForm: closeFieldForm
|
|
450
|
+
})));
|
|
451
|
+
};
|
|
452
|
+
|
|
453
|
+
ScreenForm.propTypes = propTypes$m;
|
|
454
|
+
ScreenForm.defaultProps = defaultProps$m;
|
|
455
|
+
|
|
456
|
+
var styles$f = {"container":"micromag-editor-menus-breadcrumb-container"};
|
|
457
|
+
|
|
458
|
+
var propTypes$l = {
|
|
270
459
|
story: core.PropTypes.story,
|
|
271
460
|
screenId: PropTypes__default["default"].string,
|
|
272
461
|
field: PropTypes__default["default"].string,
|
|
@@ -274,7 +463,7 @@ var propTypes$m = {
|
|
|
274
463
|
url: PropTypes__default["default"].string.isRequired,
|
|
275
464
|
className: PropTypes__default["default"].string
|
|
276
465
|
};
|
|
277
|
-
var defaultProps$
|
|
466
|
+
var defaultProps$l = {
|
|
278
467
|
story: null,
|
|
279
468
|
screenId: null,
|
|
280
469
|
field: null,
|
|
@@ -298,44 +487,87 @@ var Breadcrumb = function Breadcrumb(_ref) {
|
|
|
298
487
|
var history = reactRouter.useHistory();
|
|
299
488
|
var screensManager = contexts.useScreensManager();
|
|
300
489
|
var fieldsManager = contexts.useFieldsManager();
|
|
301
|
-
var
|
|
490
|
+
var route = contexts.useUrlGenerator();
|
|
491
|
+
|
|
492
|
+
var _useMemo = React.useMemo(function () {
|
|
302
493
|
var screenIndex = screens.findIndex(function (it) {
|
|
303
494
|
return it.id === screenId;
|
|
304
495
|
});
|
|
305
496
|
|
|
306
497
|
if (!screens[screenIndex]) {
|
|
307
|
-
return
|
|
498
|
+
return {};
|
|
308
499
|
}
|
|
309
500
|
|
|
310
501
|
var type = screens[screenIndex].type;
|
|
502
|
+
var definition = screensManager.getDefinition(type);
|
|
503
|
+
var states = definition.states;
|
|
504
|
+
return {
|
|
505
|
+
fields: [].concat(_toConsumableArray__default["default"](getScreenFieldsWithStates(definition)), [utils.getScreenExtraField(intl)]),
|
|
506
|
+
states: states
|
|
507
|
+
};
|
|
508
|
+
}, [screens, screenId, screensManager, intl]),
|
|
509
|
+
_useMemo$fields = _useMemo.fields,
|
|
510
|
+
screenFields = _useMemo$fields === void 0 ? [] : _useMemo$fields,
|
|
511
|
+
_useMemo$states = _useMemo.states,
|
|
512
|
+
screenStates = _useMemo$states === void 0 ? null : _useMemo$states;
|
|
513
|
+
|
|
514
|
+
var items = React.useMemo(function () {
|
|
311
515
|
var fieldItems = [];
|
|
516
|
+
var currentState = null;
|
|
312
517
|
|
|
313
518
|
if (field !== null) {
|
|
314
|
-
var
|
|
315
|
-
|
|
316
|
-
|
|
519
|
+
var fieldPath = field.split('/'); // Get state and remove it from path. Replace it with field name if necessary (repeatable or fieldName present)
|
|
520
|
+
|
|
521
|
+
var _fieldPath = _slicedToArray__default["default"](fieldPath, 1),
|
|
522
|
+
_fieldPath$ = _fieldPath[0],
|
|
523
|
+
stateId = _fieldPath$ === void 0 ? null : _fieldPath$;
|
|
524
|
+
|
|
525
|
+
currentState = screenStates !== null ? screenStates.find(function (_ref3) {
|
|
526
|
+
var id = _ref3.id;
|
|
527
|
+
return id === stateId;
|
|
528
|
+
}) || null : null;
|
|
529
|
+
var finalFieldPath = fieldPath;
|
|
530
|
+
|
|
531
|
+
if (currentState !== null) {
|
|
532
|
+
var _ref4 = currentState || {},
|
|
533
|
+
_ref4$repeatable = _ref4.repeatable,
|
|
534
|
+
repeatable = _ref4$repeatable === void 0 ? false : _ref4$repeatable,
|
|
535
|
+
_ref4$fieldName = _ref4.fieldName,
|
|
536
|
+
fieldName = _ref4$fieldName === void 0 ? null : _ref4$fieldName;
|
|
537
|
+
|
|
538
|
+
finalFieldPath = (repeatable || fieldName !== null) && fieldPath.length <= (repeatable ? 2 : 1) ? [fieldName || stateId].concat(_toConsumableArray__default["default"](fieldPath.slice(1))) : fieldPath.slice(1);
|
|
539
|
+
}
|
|
317
540
|
|
|
318
|
-
var
|
|
319
|
-
var fieldPath = field.split('/');
|
|
320
|
-
var lastKeyIndex = fieldPath.length - 1;
|
|
541
|
+
var lastKeyIndex = finalFieldPath.length - 1;
|
|
321
542
|
var parentItem = null;
|
|
322
|
-
|
|
543
|
+
finalFieldPath.reduce(function (currentFields, key, keyIndex) {
|
|
323
544
|
var _currentFields$type = currentFields.type,
|
|
324
|
-
fieldType = _currentFields$type === void 0 ? null : _currentFields$type
|
|
545
|
+
fieldType = _currentFields$type === void 0 ? null : _currentFields$type,
|
|
546
|
+
_currentFields$fields = currentFields.fields,
|
|
547
|
+
currentSubFields = _currentFields$fields === void 0 ? null : _currentFields$fields,
|
|
548
|
+
_currentFields$itemsF = currentFields.itemsField,
|
|
549
|
+
currentItemsField = _currentFields$itemsF === void 0 ? null : _currentFields$itemsF;
|
|
325
550
|
var fieldsDef = fieldType !== null ? fieldsManager.getDefinition(fieldType) : currentFields;
|
|
326
551
|
var _fieldsDef$fields = fieldsDef.fields,
|
|
327
|
-
|
|
552
|
+
defSubFields = _fieldsDef$fields === void 0 ? null : _fieldsDef$fields,
|
|
328
553
|
_fieldsDef$settings = fieldsDef.settings,
|
|
329
554
|
settings = _fieldsDef$settings === void 0 ? null : _fieldsDef$settings,
|
|
330
555
|
_fieldsDef$itemsField = fieldsDef.itemsField,
|
|
331
|
-
|
|
556
|
+
defItemsField = _fieldsDef$itemsField === void 0 ? null : _fieldsDef$itemsField;
|
|
557
|
+
var itemsField = currentItemsField || defItemsField;
|
|
558
|
+
var subFields = currentSubFields || defSubFields;
|
|
332
559
|
var currentSubfields = subFields !== null ? getFieldByName(subFields, key) : null;
|
|
333
560
|
var currentSettings = settings !== null ? getFieldByName(settings, key) : null;
|
|
334
561
|
var isCurrentSubfields = currentSubfields !== null;
|
|
335
562
|
var isCurrentSettings = currentSettings !== null;
|
|
336
563
|
var isListItems = itemsField !== null && !!key.match(/^[0-9]+$/);
|
|
337
564
|
var isLastIndex = keyIndex === lastKeyIndex;
|
|
338
|
-
var pathPrefix =
|
|
565
|
+
var pathPrefix = route('screen.field', {
|
|
566
|
+
screen: screenId,
|
|
567
|
+
field: [currentState !== null ? currentState.id : null].concat(_toConsumableArray__default["default"](finalFieldPath.slice(0, keyIndex + 1))).filter(function (it) {
|
|
568
|
+
return it !== null;
|
|
569
|
+
})
|
|
570
|
+
});
|
|
339
571
|
var pathSuffix = isLastIndex && form !== null ? "/".concat(form) : '';
|
|
340
572
|
var addNewItem = isLastIndex || isListItems;
|
|
341
573
|
var itemPath = "".concat(pathPrefix).concat(pathSuffix);
|
|
@@ -348,7 +580,13 @@ var Breadcrumb = function Breadcrumb(_ref) {
|
|
|
348
580
|
|
|
349
581
|
if (parentItem !== null) {
|
|
350
582
|
fieldItems.push(_objectSpread__default["default"](_objectSpread__default["default"]({}, parentItem), {}, {
|
|
351
|
-
url:
|
|
583
|
+
url: route('screen.field.form', {
|
|
584
|
+
screen: screenId,
|
|
585
|
+
field: [currentState !== null ? currentState.id : null].concat(_toConsumableArray__default["default"](finalFieldPath.slice(0, keyIndex))).filter(function (it) {
|
|
586
|
+
return it !== null;
|
|
587
|
+
}),
|
|
588
|
+
form: 'settings'
|
|
589
|
+
})
|
|
352
590
|
}));
|
|
353
591
|
}
|
|
354
592
|
} else if (isListItems) {
|
|
@@ -358,9 +596,9 @@ var Breadcrumb = function Breadcrumb(_ref) {
|
|
|
358
596
|
var fieldLabel = nextFields ? nextFields.breadcrumbLabel || nextFields.label : null;
|
|
359
597
|
var itemLabel = utils.isMessage(fieldLabel) ? intl.formatMessage(fieldLabel) : fieldLabel;
|
|
360
598
|
|
|
361
|
-
var
|
|
362
|
-
|
|
363
|
-
parentItemLabel =
|
|
599
|
+
var _ref5 = parentItem || {},
|
|
600
|
+
_ref5$label = _ref5.label,
|
|
601
|
+
parentItemLabel = _ref5$label === void 0 ? null : _ref5$label;
|
|
364
602
|
|
|
365
603
|
var finalItemLabel = isListItems ? "".concat(itemLabel, " #").concat(parseInt(key, 10) + 1) : itemLabel || parentItemLabel;
|
|
366
604
|
var item = {
|
|
@@ -376,21 +614,26 @@ var Breadcrumb = function Breadcrumb(_ref) {
|
|
|
376
614
|
parentItem = item;
|
|
377
615
|
return nextFields;
|
|
378
616
|
}, {
|
|
379
|
-
fields:
|
|
617
|
+
fields: screenFields
|
|
380
618
|
});
|
|
381
619
|
}
|
|
382
620
|
|
|
383
|
-
var finalItems = [{
|
|
384
|
-
label: intl.formatMessage({
|
|
621
|
+
var finalItems = [currentState === null || (currentState.repeatable || false) === false ? {
|
|
622
|
+
label: currentState !== null ? currentState.label : intl.formatMessage({
|
|
385
623
|
id: "AHvHaY",
|
|
386
624
|
defaultMessage: [{
|
|
387
625
|
"type": 0,
|
|
388
626
|
"value": "Parameters"
|
|
389
627
|
}]
|
|
390
628
|
}),
|
|
391
|
-
url:
|
|
629
|
+
url: currentState !== null ? route('screen.field', {
|
|
630
|
+
screen: screenId,
|
|
631
|
+
field: currentState.id
|
|
632
|
+
}) : route('screen', {
|
|
633
|
+
screen: screenId
|
|
634
|
+
}),
|
|
392
635
|
active: false
|
|
393
|
-
}].concat(fieldItems).filter(function (it) {
|
|
636
|
+
} : null].concat(fieldItems).filter(function (it) {
|
|
394
637
|
return it !== null;
|
|
395
638
|
});
|
|
396
639
|
var lastItemsIndex = finalItems.length - 1;
|
|
@@ -400,7 +643,7 @@ var Breadcrumb = function Breadcrumb(_ref) {
|
|
|
400
643
|
active: true
|
|
401
644
|
}) : it;
|
|
402
645
|
});
|
|
403
|
-
}, [intl,
|
|
646
|
+
}, [intl, route, screenId, field, form, url, screenFields, screenStates, fieldsManager]);
|
|
404
647
|
var itemsLength = items.length;
|
|
405
648
|
var onClickBack = React.useCallback(function () {
|
|
406
649
|
history.push(items[itemsLength - 2].url);
|
|
@@ -408,110 +651,27 @@ var Breadcrumb = function Breadcrumb(_ref) {
|
|
|
408
651
|
var withBack = itemsLength > 1;
|
|
409
652
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, withBack ? /*#__PURE__*/React__default["default"].createElement(components.BackButton, {
|
|
410
653
|
onClick: onClickBack,
|
|
411
|
-
className: "
|
|
654
|
+
className: "me-2 py-0"
|
|
412
655
|
}) : null, /*#__PURE__*/React__default["default"].createElement(components.Breadcrumb, {
|
|
413
656
|
items: items,
|
|
414
657
|
theme: "secondary",
|
|
415
658
|
withoutBar: true,
|
|
416
659
|
noWrap: true,
|
|
417
|
-
className: classNames__default["default"]([styles$
|
|
660
|
+
className: classNames__default["default"]([styles$f.container, 'text-truncate', _defineProperty__default["default"]({}, className, className !== null)])
|
|
418
661
|
}));
|
|
419
662
|
};
|
|
420
663
|
|
|
421
|
-
Breadcrumb.propTypes = propTypes$
|
|
422
|
-
Breadcrumb.defaultProps = defaultProps$
|
|
423
|
-
|
|
424
|
-
var styles$f = {"container":"micromag-editor-forms-screen-container","inner":"micromag-editor-forms-screen-inner"};
|
|
425
|
-
|
|
426
|
-
var propTypes$l = {
|
|
427
|
-
value: core.PropTypes.component,
|
|
428
|
-
className: PropTypes__default["default"].string,
|
|
429
|
-
gotoFieldForm: PropTypes__default["default"].func.isRequired,
|
|
430
|
-
closeFieldForm: PropTypes__default["default"].func.isRequired,
|
|
431
|
-
onChange: PropTypes__default["default"].func // onClickDelete: PropTypes.func,
|
|
432
|
-
|
|
433
|
-
};
|
|
434
|
-
var defaultProps$l = {
|
|
435
|
-
value: null,
|
|
436
|
-
className: null,
|
|
437
|
-
onChange: null // onClickDelete: null,
|
|
438
|
-
|
|
439
|
-
};
|
|
440
|
-
|
|
441
|
-
var ScreenForm = function ScreenForm(_ref) {
|
|
442
|
-
var value = _ref.value,
|
|
443
|
-
className = _ref.className,
|
|
444
|
-
gotoFieldForm = _ref.gotoFieldForm,
|
|
445
|
-
closeFieldForm = _ref.closeFieldForm,
|
|
446
|
-
onChange = _ref.onChange;
|
|
447
|
-
|
|
448
|
-
var _useScreenDefinition = contexts.useScreenDefinition(),
|
|
449
|
-
_useScreenDefinition$ = _useScreenDefinition.fields,
|
|
450
|
-
fields$1 = _useScreenDefinition$ === void 0 ? [] : _useScreenDefinition$; // const intl = useIntl();
|
|
451
|
-
// const finalOnClickDelete = useCallback(() => {
|
|
452
|
-
// if (
|
|
453
|
-
// onClickDelete !== null &&
|
|
454
|
-
// window.confirm(
|
|
455
|
-
// intl.formatMessage({
|
|
456
|
-
// defaultMessage: 'Are you sure you want to delete this screen?',
|
|
457
|
-
// description: 'Confirm message when deleting a screen',
|
|
458
|
-
// }),
|
|
459
|
-
// )
|
|
460
|
-
// ) {
|
|
461
|
-
// onClickDelete(value);
|
|
462
|
-
// }
|
|
463
|
-
// }, [intl, onClickDelete, value]);
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
467
|
-
className: classNames__default["default"]([styles$f.container, _defineProperty__default["default"]({}, className, className)])
|
|
468
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
469
|
-
className: styles$f.inner
|
|
470
|
-
}, /*#__PURE__*/React__default["default"].createElement(fields.Fields, {
|
|
471
|
-
fields: fields$1,
|
|
472
|
-
value: value,
|
|
473
|
-
onChange: onChange,
|
|
474
|
-
gotoFieldForm: gotoFieldForm,
|
|
475
|
-
closeFieldForm: closeFieldForm
|
|
476
|
-
})));
|
|
477
|
-
};
|
|
478
|
-
|
|
479
|
-
ScreenForm.propTypes = propTypes$l;
|
|
480
|
-
ScreenForm.defaultProps = defaultProps$l;
|
|
481
|
-
|
|
482
|
-
/* eslint-disable react/jsx-props-no-spreading */
|
|
483
|
-
var propTypes$k = {
|
|
484
|
-
children: PropTypes__default["default"].node
|
|
485
|
-
};
|
|
486
|
-
var defaultProps$k = {
|
|
487
|
-
children: null
|
|
488
|
-
};
|
|
489
|
-
|
|
490
|
-
var FieldWithContexts = function FieldWithContexts(props) {
|
|
491
|
-
// Get definitions
|
|
492
|
-
var _useScreenDefinition = contexts.useScreenDefinition(),
|
|
493
|
-
_useScreenDefinition$ = _useScreenDefinition.fields,
|
|
494
|
-
fields = _useScreenDefinition$ === void 0 ? [] : _useScreenDefinition$; // To use a specific form component
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
var formComponents = contexts.useFormsComponents();
|
|
498
|
-
return /*#__PURE__*/React__default["default"].createElement(components.FieldForm, Object.assign({
|
|
499
|
-
fields: fields,
|
|
500
|
-
formComponents: formComponents
|
|
501
|
-
}, props));
|
|
502
|
-
};
|
|
503
|
-
|
|
504
|
-
FieldWithContexts.propTypes = propTypes$k;
|
|
505
|
-
FieldWithContexts.defaultProps = defaultProps$k;
|
|
664
|
+
Breadcrumb.propTypes = propTypes$l;
|
|
665
|
+
Breadcrumb.defaultProps = defaultProps$l;
|
|
506
666
|
|
|
507
667
|
var styles$e = {"container":"micromag-editor-modals-delete-screen-container","description":"micromag-editor-modals-delete-screen-description","actions":"micromag-editor-modals-delete-screen-actions"};
|
|
508
668
|
|
|
509
|
-
var propTypes$
|
|
669
|
+
var propTypes$k = {
|
|
510
670
|
className: PropTypes__default["default"].string,
|
|
511
671
|
onConfirm: PropTypes__default["default"].func,
|
|
512
672
|
onCancel: PropTypes__default["default"].func
|
|
513
673
|
};
|
|
514
|
-
var defaultProps$
|
|
674
|
+
var defaultProps$k = {
|
|
515
675
|
className: null,
|
|
516
676
|
onConfirm: null,
|
|
517
677
|
onCancel: null
|
|
@@ -543,7 +703,7 @@ var DeleteScreenModal = function DeleteScreenModal(_ref) {
|
|
|
543
703
|
className: styles$e.actions
|
|
544
704
|
}, /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
545
705
|
onClick: onCancel,
|
|
546
|
-
className: "btn-outline-secondary
|
|
706
|
+
className: "btn-outline-secondary me-2"
|
|
547
707
|
}, /*#__PURE__*/React__default["default"].createElement(components.Label, null, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
548
708
|
id: "0GT0SI",
|
|
549
709
|
defaultMessage: [{
|
|
@@ -563,18 +723,16 @@ var DeleteScreenModal = function DeleteScreenModal(_ref) {
|
|
|
563
723
|
}))));
|
|
564
724
|
};
|
|
565
725
|
|
|
566
|
-
DeleteScreenModal.propTypes = propTypes$
|
|
567
|
-
DeleteScreenModal.defaultProps = defaultProps$
|
|
568
|
-
|
|
569
|
-
var styles$d = {"panel":"micromag-editor-form-panel","leave":"micromag-editor-form-leave","content":"micromag-editor-form-content","navbar":"micromag-editor-form-navbar","enterBottom":"micromag-editor-form-enterBottom","enterLeft":"micromag-editor-form-enterLeft","enterRight":"micromag-editor-form-enterRight","enterTop":"micromag-editor-form-enterTop","enterActiveHorizontal":"micromag-editor-form-enterActiveHorizontal","enterActiveVertical":"micromag-editor-form-enterActiveVertical","leaveActiveLeft":"micromag-editor-form-leaveActiveLeft","leaveActiveRight":"micromag-editor-form-leaveActiveRight","leaveActiveBottom":"micromag-editor-form-leaveActiveBottom","leaveActiveTop":"micromag-editor-form-leaveActiveTop"};
|
|
726
|
+
DeleteScreenModal.propTypes = propTypes$k;
|
|
727
|
+
DeleteScreenModal.defaultProps = defaultProps$k;
|
|
570
728
|
|
|
571
|
-
var propTypes$
|
|
729
|
+
var propTypes$j = {
|
|
572
730
|
value: PropTypes__default["default"].oneOfType([core.PropTypes.story, core.PropTypes.theme]),
|
|
573
731
|
isTheme: PropTypes__default["default"].bool,
|
|
574
732
|
className: PropTypes__default["default"].string,
|
|
575
733
|
onChange: PropTypes__default["default"].func
|
|
576
734
|
};
|
|
577
|
-
var defaultProps$
|
|
735
|
+
var defaultProps$j = {
|
|
578
736
|
value: null,
|
|
579
737
|
isTheme: false,
|
|
580
738
|
className: null,
|
|
@@ -607,10 +765,18 @@ var EditForm = function EditForm(_ref) {
|
|
|
607
765
|
var screenIndex = screens.findIndex(function (it) {
|
|
608
766
|
return it.id === screenId;
|
|
609
767
|
});
|
|
610
|
-
var screen = screenIndex !== -1 ? screens[screenIndex] : null;
|
|
768
|
+
var screen = screenIndex !== -1 ? screens[screenIndex] : null;
|
|
769
|
+
var screensManager = contexts.useScreensManager();
|
|
770
|
+
var screenFields = React.useMemo(function () {
|
|
771
|
+
var _ref3 = screen || {},
|
|
772
|
+
type = _ref3.type;
|
|
773
|
+
|
|
774
|
+
var definition = type !== null ? screensManager.getDefinition(type) : null;
|
|
775
|
+
return definition != null ? getScreenFieldsWithStates(definition) : [];
|
|
776
|
+
}, [screensManager, screen]); // Get transition value
|
|
611
777
|
|
|
612
|
-
var _useFormTransition = useFormTransition(url, screenIndex, styles$
|
|
613
|
-
|
|
778
|
+
var _useFormTransition = useFormTransition(url, screenIndex, styles$h),
|
|
779
|
+
transitionClassNames = _useFormTransition.classNames,
|
|
614
780
|
transitionTimeout = _useFormTransition.timeout;
|
|
615
781
|
|
|
616
782
|
var _useState = React.useState(false),
|
|
@@ -640,14 +806,29 @@ var EditForm = function EditForm(_ref) {
|
|
|
640
806
|
var context = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
|
|
641
807
|
var hasField = field !== null;
|
|
642
808
|
var fieldRoute = formName !== null ? 'screen.field.form' : 'screen.field';
|
|
809
|
+
|
|
810
|
+
var _ref4 = field !== null ? field.split('.') : [],
|
|
811
|
+
_ref5 = _slicedToArray__default["default"](_ref4, 1),
|
|
812
|
+
_ref5$ = _ref5[0],
|
|
813
|
+
rootFieldName = _ref5$ === void 0 ? null : _ref5$;
|
|
814
|
+
|
|
815
|
+
var _ref6 = (rootFieldName !== null ? screenFields.find(function (_ref7) {
|
|
816
|
+
var name = _ref7.name;
|
|
817
|
+
return name === rootFieldName;
|
|
818
|
+
}) || null : null) || {},
|
|
819
|
+
_ref6$stateId = _ref6.stateId,
|
|
820
|
+
stateId = _ref6$stateId === void 0 ? null : _ref6$stateId;
|
|
821
|
+
|
|
643
822
|
routePush(hasField ? fieldRoute : 'screen', {
|
|
644
823
|
screen: screenId,
|
|
645
|
-
field: field !== null ? field.split('.')
|
|
824
|
+
field: field !== null ? [stateId].concat(_toConsumableArray__default["default"](field.split('.'))).filter(function (it) {
|
|
825
|
+
return it !== null;
|
|
826
|
+
}) : null,
|
|
646
827
|
form: formName !== null ? utils.slug(formName) : null
|
|
647
828
|
});
|
|
648
829
|
setFieldForms(_objectSpread__default["default"](_objectSpread__default["default"]({}, fieldForms), {}, _defineProperty__default["default"]({}, "".concat(field).concat(formName !== null ? ":".concat(formName) : ''), url)));
|
|
649
830
|
setFieldContext(context);
|
|
650
|
-
}, [routePush, screenId, url, fieldForms, setFieldForms, fieldContext, setFieldContext]);
|
|
831
|
+
}, [routePush, screenId, screenFields, url, fieldForms, setFieldForms, fieldContext, setFieldContext]);
|
|
651
832
|
var closeFieldForm = React.useCallback(function (field) {
|
|
652
833
|
var formName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
653
834
|
var fieldKey = "".concat(field).concat(formName !== null ? ":".concat(formName) : '');
|
|
@@ -695,7 +876,6 @@ var EditForm = function EditForm(_ref) {
|
|
|
695
876
|
var dropdownItems = [!isTheme ? {
|
|
696
877
|
id: 'duplicate',
|
|
697
878
|
type: 'button',
|
|
698
|
-
className: 'text-left text-info',
|
|
699
879
|
label: /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
700
880
|
id: "IBjY5r",
|
|
701
881
|
defaultMessage: [{
|
|
@@ -707,7 +887,6 @@ var EditForm = function EditForm(_ref) {
|
|
|
707
887
|
} : null, {
|
|
708
888
|
id: 'delete',
|
|
709
889
|
type: 'button',
|
|
710
|
-
className: 'text-left text-danger',
|
|
711
890
|
label: /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
712
891
|
id: "hpiKce",
|
|
713
892
|
defaultMessage: [{
|
|
@@ -725,54 +904,67 @@ var EditForm = function EditForm(_ref) {
|
|
|
725
904
|
compact: true,
|
|
726
905
|
noWrap: true,
|
|
727
906
|
withoutCollapse: true,
|
|
728
|
-
className: classNames__default["default"](['sticky-top', 'border-bottom', 'border-dark', styles$
|
|
907
|
+
className: classNames__default["default"](['sticky-top', 'border-bottom', 'border-dark', styles$h.navbar])
|
|
729
908
|
}, /*#__PURE__*/React__default["default"].createElement(Breadcrumb, {
|
|
730
909
|
story: value,
|
|
731
910
|
url: url,
|
|
732
911
|
screenId: screenId,
|
|
733
912
|
field: fieldParams,
|
|
734
913
|
form: formParams,
|
|
735
|
-
className: "
|
|
736
|
-
}), fieldParams === null ? /*#__PURE__*/React__default["default"].createElement(
|
|
737
|
-
|
|
914
|
+
className: "me-auto"
|
|
915
|
+
}), fieldParams === null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
916
|
+
className: "dropdown"
|
|
917
|
+
}, /*#__PURE__*/React__default["default"].createElement(SettingsButton, {
|
|
918
|
+
onClick: onSettingsClick,
|
|
919
|
+
dots: true,
|
|
920
|
+
className: "py-0",
|
|
921
|
+
theme: "default"
|
|
738
922
|
}), /*#__PURE__*/React__default["default"].createElement(components.DropdownMenu, {
|
|
923
|
+
align: "end",
|
|
739
924
|
items: dropdownItems,
|
|
740
925
|
visible: screenSettingsOpened,
|
|
741
|
-
align: "right",
|
|
742
926
|
onClickOutside: onDropdownClickOutside
|
|
743
927
|
})) : null) : null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
744
|
-
className: classNames__default["default"](['flex-grow-1', 'd-flex', 'w-100', styles$
|
|
745
|
-
}, screen !== null ? /*#__PURE__*/React__default["default"].createElement(reactTransitionGroup.
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
928
|
+
className: classNames__default["default"](['flex-grow-1', 'd-flex', 'w-100', styles$h.content])
|
|
929
|
+
}, screen !== null ? /*#__PURE__*/React__default["default"].createElement(reactTransitionGroup.TransitionGroup, {
|
|
930
|
+
className: "w-100 flex-grow-1",
|
|
931
|
+
childFactory: function childFactory(child) {
|
|
932
|
+
return /*#__PURE__*/React__default["default"].cloneElement(child, {
|
|
933
|
+
classNames: transitionClassNames
|
|
934
|
+
});
|
|
935
|
+
}
|
|
936
|
+
}, fieldParams !== null ? /*#__PURE__*/React__default["default"].createElement(reactTransitionGroup.CSSTransition, {
|
|
937
|
+
timeout: transitionTimeout,
|
|
752
938
|
key: "field-".concat(fieldParams, "-").concat(formParams)
|
|
939
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
940
|
+
className: classNames__default["default"](['w-100', styles$h.panel])
|
|
753
941
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.ScreenProvider, {
|
|
754
942
|
data: screen
|
|
755
943
|
}, /*#__PURE__*/React__default["default"].createElement(FieldWithContexts, {
|
|
756
944
|
name: fieldParams.replace(/\//g, '.'),
|
|
757
945
|
value: screen,
|
|
758
946
|
form: formParams,
|
|
759
|
-
className: styles$
|
|
947
|
+
className: styles$h.form,
|
|
760
948
|
gotoFieldForm: gotoFieldForm,
|
|
761
949
|
closeFieldForm: closeFieldForm,
|
|
762
950
|
fieldContext: fieldContext,
|
|
763
951
|
onChange: onScreenFormChange
|
|
764
|
-
}))) : /*#__PURE__*/React__default["default"].createElement(
|
|
765
|
-
|
|
952
|
+
})))) : /*#__PURE__*/React__default["default"].createElement(reactTransitionGroup.CSSTransition, {
|
|
953
|
+
classNames: transitionClassNames,
|
|
954
|
+
timeout: transitionTimeout,
|
|
955
|
+
key: "screen-".concat(screen.id)
|
|
956
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
957
|
+
className: classNames__default["default"](['w-100', styles$h.panel]),
|
|
766
958
|
key: "screen-".concat(screen.id)
|
|
767
959
|
}, /*#__PURE__*/React__default["default"].createElement(contexts.ScreenProvider, {
|
|
768
960
|
data: screen
|
|
769
961
|
}, /*#__PURE__*/React__default["default"].createElement(ScreenForm, {
|
|
770
962
|
value: screen,
|
|
771
|
-
className: styles$
|
|
963
|
+
className: styles$h.form,
|
|
772
964
|
onChange: onScreenFormChange,
|
|
773
965
|
gotoFieldForm: gotoFieldForm,
|
|
774
966
|
closeFieldForm: closeFieldForm
|
|
775
|
-
})))) : /*#__PURE__*/React__default["default"].createElement(components.Empty, {
|
|
967
|
+
}))))) : /*#__PURE__*/React__default["default"].createElement(components.Empty, {
|
|
776
968
|
className: "w-100 m-2"
|
|
777
969
|
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
778
970
|
id: "QfpTKK",
|
|
@@ -787,8 +979,25 @@ var EditForm = function EditForm(_ref) {
|
|
|
787
979
|
}) : null);
|
|
788
980
|
};
|
|
789
981
|
|
|
790
|
-
EditForm.propTypes = propTypes$
|
|
791
|
-
EditForm.defaultProps = defaultProps$
|
|
982
|
+
EditForm.propTypes = propTypes$j;
|
|
983
|
+
EditForm.defaultProps = defaultProps$j;
|
|
984
|
+
|
|
985
|
+
function useScreenStates(screen) {
|
|
986
|
+
var _ref = screen || {},
|
|
987
|
+
type = _ref.type;
|
|
988
|
+
|
|
989
|
+
var screensManager = contexts.useScreensManager();
|
|
990
|
+
var states = React.useMemo(function () {
|
|
991
|
+
var definition = screensManager.getDefinition(type) || null;
|
|
992
|
+
|
|
993
|
+
var _ref2 = definition || {},
|
|
994
|
+
_ref2$states = _ref2.states,
|
|
995
|
+
screenStates = _ref2$states === void 0 ? null : _ref2$states;
|
|
996
|
+
|
|
997
|
+
return screenStates;
|
|
998
|
+
}, [screensManager, type]);
|
|
999
|
+
return states;
|
|
1000
|
+
}
|
|
792
1001
|
|
|
793
1002
|
var _excluded$7 = ["components"];
|
|
794
1003
|
|
|
@@ -810,14 +1019,16 @@ var useThemeValue = function useThemeValue(value) {
|
|
|
810
1019
|
return valueWithTheme;
|
|
811
1020
|
};
|
|
812
1021
|
|
|
1022
|
+
var styles$d = {"container":"micromag-editor-preview-container","noStory":"micromag-editor-preview-noStory","story":"micromag-editor-preview-story","inner":"micromag-editor-preview-inner","top":"micromag-editor-preview-top","bottom":"micromag-editor-preview-bottom","preview":"micromag-editor-preview-preview","viewerContainer":"micromag-editor-preview-viewerContainer","screen-medium":"micromag-editor-preview-screen-medium"};
|
|
1023
|
+
|
|
813
1024
|
var styles$c = {"container":"micromag-editor-menus-devices-container","button":"micromag-editor-menus-devices-button"};
|
|
814
1025
|
|
|
815
1026
|
/* eslint-disable react/button-has-type, react/jsx-props-no-spreading */
|
|
816
|
-
var propTypes$
|
|
1027
|
+
var propTypes$i = {
|
|
817
1028
|
color: PropTypes__default["default"].string,
|
|
818
1029
|
className: PropTypes__default["default"].string
|
|
819
1030
|
};
|
|
820
|
-
var defaultProps$
|
|
1031
|
+
var defaultProps$i = {
|
|
821
1032
|
color: 'currentColor',
|
|
822
1033
|
className: null
|
|
823
1034
|
};
|
|
@@ -842,15 +1053,15 @@ var DesktopIcon = function DesktopIcon(_ref) {
|
|
|
842
1053
|
}));
|
|
843
1054
|
};
|
|
844
1055
|
|
|
845
|
-
DesktopIcon.propTypes = propTypes$
|
|
846
|
-
DesktopIcon.defaultProps = defaultProps$
|
|
1056
|
+
DesktopIcon.propTypes = propTypes$i;
|
|
1057
|
+
DesktopIcon.defaultProps = defaultProps$i;
|
|
847
1058
|
|
|
848
1059
|
/* eslint-disable react/button-has-type, react/jsx-props-no-spreading */
|
|
849
|
-
var propTypes$
|
|
1060
|
+
var propTypes$h = {
|
|
850
1061
|
color: PropTypes__default["default"].string,
|
|
851
1062
|
className: PropTypes__default["default"].string
|
|
852
1063
|
};
|
|
853
|
-
var defaultProps$
|
|
1064
|
+
var defaultProps$h = {
|
|
854
1065
|
color: 'currentColor',
|
|
855
1066
|
className: null
|
|
856
1067
|
};
|
|
@@ -875,8 +1086,8 @@ var MobileIcon = function MobileIcon(_ref) {
|
|
|
875
1086
|
}));
|
|
876
1087
|
};
|
|
877
1088
|
|
|
878
|
-
MobileIcon.propTypes = propTypes$
|
|
879
|
-
MobileIcon.defaultProps = defaultProps$
|
|
1089
|
+
MobileIcon.propTypes = propTypes$h;
|
|
1090
|
+
MobileIcon.defaultProps = defaultProps$h;
|
|
880
1091
|
|
|
881
1092
|
var DeviceIcons = /*#__PURE__*/Object.freeze({
|
|
882
1093
|
__proto__: null,
|
|
@@ -887,12 +1098,12 @@ var DeviceIcons = /*#__PURE__*/Object.freeze({
|
|
|
887
1098
|
var styles$b = {"container":"micromag-editor-buttons-device-container","icon":"micromag-editor-buttons-device-icon"};
|
|
888
1099
|
|
|
889
1100
|
var _excluded$6 = ["device", "className", "iconComponents"];
|
|
890
|
-
var propTypes$
|
|
1101
|
+
var propTypes$g = {
|
|
891
1102
|
device: PropTypes__default["default"].string.isRequired,
|
|
892
1103
|
iconComponents: core.PropTypes.components,
|
|
893
1104
|
className: PropTypes__default["default"].string
|
|
894
1105
|
};
|
|
895
|
-
var defaultProps$
|
|
1106
|
+
var defaultProps$g = {
|
|
896
1107
|
iconComponents: DeviceIcons,
|
|
897
1108
|
className: null
|
|
898
1109
|
};
|
|
@@ -911,51 +1122,391 @@ var DeviceButton = function DeviceButton(_ref) {
|
|
|
911
1122
|
}));
|
|
912
1123
|
};
|
|
913
1124
|
|
|
914
|
-
DeviceButton.propTypes = propTypes$
|
|
915
|
-
DeviceButton.defaultProps = defaultProps$
|
|
1125
|
+
DeviceButton.propTypes = propTypes$g;
|
|
1126
|
+
DeviceButton.defaultProps = defaultProps$g;
|
|
916
1127
|
|
|
917
1128
|
var _excluded$5 = ["id"];
|
|
918
|
-
var propTypes$
|
|
1129
|
+
var propTypes$f = {
|
|
919
1130
|
items: core.PropTypes.menuItems,
|
|
920
1131
|
className: PropTypes__default["default"].string,
|
|
921
1132
|
onClickItem: PropTypes__default["default"].func
|
|
922
1133
|
};
|
|
923
|
-
var defaultProps$
|
|
1134
|
+
var defaultProps$f = {
|
|
924
1135
|
items: [],
|
|
925
1136
|
className: null,
|
|
926
1137
|
onClickItem: null
|
|
927
1138
|
};
|
|
928
1139
|
|
|
929
|
-
var DevicesMenu = function DevicesMenu(_ref) {
|
|
930
|
-
var items = _ref.items,
|
|
931
|
-
className = _ref.className,
|
|
932
|
-
onClickItem = _ref.onClickItem;
|
|
933
|
-
return /*#__PURE__*/React__default["default"].createElement(components.Tabs, {
|
|
934
|
-
items: items,
|
|
935
|
-
theme: "outline-secondary",
|
|
936
|
-
className: classNames__default["default"]([styles$c.container, _defineProperty__default["default"]({}, className, className !== null)]),
|
|
937
|
-
renderItemButton: function renderItemButton(item, index, props) {
|
|
938
|
-
var id = item.id,
|
|
939
|
-
itemProps = _objectWithoutProperties__default["default"](item, _excluded$5);
|
|
1140
|
+
var DevicesMenu = function DevicesMenu(_ref) {
|
|
1141
|
+
var items = _ref.items,
|
|
1142
|
+
className = _ref.className,
|
|
1143
|
+
onClickItem = _ref.onClickItem;
|
|
1144
|
+
return /*#__PURE__*/React__default["default"].createElement(components.Tabs, {
|
|
1145
|
+
items: items,
|
|
1146
|
+
theme: "outline-secondary",
|
|
1147
|
+
className: classNames__default["default"]([styles$c.container, _defineProperty__default["default"]({}, className, className !== null)]),
|
|
1148
|
+
renderItemButton: function renderItemButton(item, index, props) {
|
|
1149
|
+
var id = item.id,
|
|
1150
|
+
itemProps = _objectWithoutProperties__default["default"](item, _excluded$5);
|
|
1151
|
+
|
|
1152
|
+
return /*#__PURE__*/React__default["default"].createElement(DeviceButton, Object.assign({
|
|
1153
|
+
device: id
|
|
1154
|
+
}, props, itemProps, {
|
|
1155
|
+
className: styles$c.button,
|
|
1156
|
+
onClick: function onClick(e) {
|
|
1157
|
+
return onClickItem !== null ? onClickItem(e, item, index) : null;
|
|
1158
|
+
}
|
|
1159
|
+
}));
|
|
1160
|
+
}
|
|
1161
|
+
});
|
|
1162
|
+
};
|
|
1163
|
+
|
|
1164
|
+
DevicesMenu.propTypes = propTypes$f;
|
|
1165
|
+
DevicesMenu.defaultProps = defaultProps$f;
|
|
1166
|
+
|
|
1167
|
+
var styles$a = {"button":"micromag-editor-partials-screen-states-button","addButton":"micromag-editor-partials-screen-states-addButton","title":"micromag-editor-partials-screen-states-title"};
|
|
1168
|
+
|
|
1169
|
+
var styles$9 = {"button":"micromag-editor-buttons-screen-with-preview-button","placeholder":"micromag-editor-buttons-screen-with-preview-placeholder","preview":"micromag-editor-buttons-screen-with-preview-preview","screen":"micromag-editor-buttons-screen-with-preview-screen","frame":"micromag-editor-buttons-screen-with-preview-frame"};
|
|
1170
|
+
|
|
1171
|
+
var styles$8 = {"container":"micromag-editor-buttons-screen-container","button":"micromag-editor-buttons-screen-button","border":"micromag-editor-buttons-screen-border","screen":"micromag-editor-buttons-screen-screen","inner":"micromag-editor-buttons-screen-inner","icon":"micromag-editor-buttons-screen-icon","label":"micromag-editor-buttons-screen-label","active":"micromag-editor-buttons-screen-active"};
|
|
1172
|
+
|
|
1173
|
+
var propTypes$e = {
|
|
1174
|
+
active: PropTypes__default["default"].bool,
|
|
1175
|
+
id: PropTypes__default["default"].string,
|
|
1176
|
+
href: PropTypes__default["default"].string,
|
|
1177
|
+
label: core.PropTypes.label,
|
|
1178
|
+
icon: PropTypes__default["default"].node,
|
|
1179
|
+
title: PropTypes__default["default"].string,
|
|
1180
|
+
onClick: PropTypes__default["default"].func,
|
|
1181
|
+
children: PropTypes__default["default"].node,
|
|
1182
|
+
refButton: PropTypes__default["default"].shape({
|
|
1183
|
+
current: PropTypes__default["default"].any // eslint-disable-line
|
|
1184
|
+
|
|
1185
|
+
}),
|
|
1186
|
+
className: PropTypes__default["default"].string
|
|
1187
|
+
};
|
|
1188
|
+
var defaultProps$e = {
|
|
1189
|
+
active: false,
|
|
1190
|
+
id: null,
|
|
1191
|
+
href: null,
|
|
1192
|
+
label: null,
|
|
1193
|
+
icon: null,
|
|
1194
|
+
title: null,
|
|
1195
|
+
onClick: null,
|
|
1196
|
+
children: null,
|
|
1197
|
+
refButton: null,
|
|
1198
|
+
className: null
|
|
1199
|
+
};
|
|
1200
|
+
|
|
1201
|
+
var ScreenButton = function ScreenButton(_ref) {
|
|
1202
|
+
var _ref2;
|
|
1203
|
+
|
|
1204
|
+
var active = _ref.active,
|
|
1205
|
+
id = _ref.id,
|
|
1206
|
+
href = _ref.href,
|
|
1207
|
+
className = _ref.className,
|
|
1208
|
+
label = _ref.label,
|
|
1209
|
+
icon = _ref.icon,
|
|
1210
|
+
children = _ref.children,
|
|
1211
|
+
title = _ref.title,
|
|
1212
|
+
onClick = _ref.onClick,
|
|
1213
|
+
refButton = _ref.refButton;
|
|
1214
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1215
|
+
className: classNames__default["default"]([styles$8.container, 'rounded', (_ref2 = {}, _defineProperty__default["default"](_ref2, styles$8.active, active), _defineProperty__default["default"](_ref2, className, className !== null), _ref2)])
|
|
1216
|
+
}, children !== null ? children : /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1217
|
+
className: styles$8.screen
|
|
1218
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1219
|
+
className: styles$8.inner
|
|
1220
|
+
}, icon !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1221
|
+
className: styles$8.icon
|
|
1222
|
+
}, icon) : null, label !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1223
|
+
className: styles$8.label
|
|
1224
|
+
}, label) : null)), /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
1225
|
+
className: styles$8.button,
|
|
1226
|
+
withoutStyle: true,
|
|
1227
|
+
id: id,
|
|
1228
|
+
href: href,
|
|
1229
|
+
title: title,
|
|
1230
|
+
onClick: onClick,
|
|
1231
|
+
refButton: refButton
|
|
1232
|
+
}, /*#__PURE__*/React__default["default"].createElement("span", {
|
|
1233
|
+
className: classNames__default["default"]([styles$8.border, 'rounded'])
|
|
1234
|
+
})));
|
|
1235
|
+
};
|
|
1236
|
+
|
|
1237
|
+
ScreenButton.propTypes = propTypes$e;
|
|
1238
|
+
ScreenButton.defaultProps = defaultProps$e;
|
|
1239
|
+
var ScreenButton$1 = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
1240
|
+
return /*#__PURE__*/React__default["default"].createElement(ScreenButton, Object.assign({}, props, {
|
|
1241
|
+
refButton: ref
|
|
1242
|
+
}));
|
|
1243
|
+
});
|
|
1244
|
+
|
|
1245
|
+
var propTypes$d = {
|
|
1246
|
+
screen: core.PropTypes.screenComponent,
|
|
1247
|
+
screenState: PropTypes__default["default"].string,
|
|
1248
|
+
index: PropTypes__default["default"].number.isRequired,
|
|
1249
|
+
href: PropTypes__default["default"].string,
|
|
1250
|
+
title: PropTypes__default["default"].string,
|
|
1251
|
+
active: PropTypes__default["default"].bool,
|
|
1252
|
+
previewWidth: PropTypes__default["default"].number,
|
|
1253
|
+
previewHeight: PropTypes__default["default"].number,
|
|
1254
|
+
withPreview: PropTypes__default["default"].bool,
|
|
1255
|
+
withPlaceholder: PropTypes__default["default"].bool,
|
|
1256
|
+
onClick: PropTypes__default["default"].func,
|
|
1257
|
+
onClickItem: PropTypes__default["default"].func,
|
|
1258
|
+
className: PropTypes__default["default"].string
|
|
1259
|
+
};
|
|
1260
|
+
var defaultProps$d = {
|
|
1261
|
+
screen: null,
|
|
1262
|
+
screenState: null,
|
|
1263
|
+
title: null,
|
|
1264
|
+
href: null,
|
|
1265
|
+
active: false,
|
|
1266
|
+
previewWidth: 320,
|
|
1267
|
+
previewHeight: 480,
|
|
1268
|
+
withPreview: true,
|
|
1269
|
+
withPlaceholder: false,
|
|
1270
|
+
onClick: null,
|
|
1271
|
+
onClickItem: null,
|
|
1272
|
+
className: null
|
|
1273
|
+
};
|
|
1274
|
+
|
|
1275
|
+
var ScreenWithPreview = function ScreenWithPreview(_ref) {
|
|
1276
|
+
var _classNames;
|
|
1277
|
+
|
|
1278
|
+
var screen = _ref.screen,
|
|
1279
|
+
screenState = _ref.screenState,
|
|
1280
|
+
index = _ref.index,
|
|
1281
|
+
title = _ref.title,
|
|
1282
|
+
href = _ref.href,
|
|
1283
|
+
active = _ref.active,
|
|
1284
|
+
className = _ref.className,
|
|
1285
|
+
previewWidth = _ref.previewWidth,
|
|
1286
|
+
previewHeight = _ref.previewHeight,
|
|
1287
|
+
_onClick = _ref.onClick,
|
|
1288
|
+
onClickItem = _ref.onClickItem,
|
|
1289
|
+
withPreview = _ref.withPreview,
|
|
1290
|
+
withPlaceholder = _ref.withPlaceholder;
|
|
1291
|
+
var intl = reactIntl.useIntl();
|
|
1292
|
+
|
|
1293
|
+
var _useResizeObserver = hooks.useResizeObserver(),
|
|
1294
|
+
refResize = _useResizeObserver.ref,
|
|
1295
|
+
contentRect = _useResizeObserver.entry.contentRect;
|
|
1296
|
+
|
|
1297
|
+
var _useMemo = React.useMemo(function () {
|
|
1298
|
+
var _ref2 = contentRect || {},
|
|
1299
|
+
_ref2$width = _ref2.width,
|
|
1300
|
+
itemWidth = _ref2$width === void 0 ? 0 : _ref2$width;
|
|
1301
|
+
|
|
1302
|
+
var ratio = 3 / 4;
|
|
1303
|
+
var finalWidth = previewWidth;
|
|
1304
|
+
var finalHeight = previewHeight !== null ? previewHeight : previewWidth * ratio;
|
|
1305
|
+
var previewScale = itemWidth / previewWidth;
|
|
1306
|
+
return {
|
|
1307
|
+
width: itemWidth,
|
|
1308
|
+
height: finalHeight * previewScale,
|
|
1309
|
+
screenWidth: finalWidth,
|
|
1310
|
+
screenHeight: finalHeight,
|
|
1311
|
+
scale: previewScale
|
|
1312
|
+
};
|
|
1313
|
+
}, [withPlaceholder, previewWidth, previewHeight, contentRect]),
|
|
1314
|
+
width = _useMemo.width,
|
|
1315
|
+
height = _useMemo.height,
|
|
1316
|
+
screenWidth = _useMemo.screenWidth,
|
|
1317
|
+
screenHeight = _useMemo.screenHeight,
|
|
1318
|
+
scale = _useMemo.scale;
|
|
1319
|
+
|
|
1320
|
+
var ScreenComponent = withPlaceholder ? components.ScreenPlaceholder : components.ScreenPreview;
|
|
1321
|
+
return /*#__PURE__*/React__default["default"].createElement(ScreenButton$1, {
|
|
1322
|
+
href: href,
|
|
1323
|
+
ref: refResize,
|
|
1324
|
+
active: active,
|
|
1325
|
+
className: classNames__default["default"]([styles$9.button, _defineProperty__default["default"]({}, className, className !== null)]),
|
|
1326
|
+
title: utils.isMessage(title) ? intl.formatMessage(title) : null,
|
|
1327
|
+
onClick: function onClick() {
|
|
1328
|
+
if (_onClick !== null) {
|
|
1329
|
+
_onClick(screen, index);
|
|
1330
|
+
}
|
|
1331
|
+
|
|
1332
|
+
if (onClickItem !== null) {
|
|
1333
|
+
onClickItem(screen, index);
|
|
1334
|
+
}
|
|
1335
|
+
}
|
|
1336
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1337
|
+
className: styles$9.frame,
|
|
1338
|
+
style: {
|
|
1339
|
+
width: width,
|
|
1340
|
+
height: height
|
|
1341
|
+
}
|
|
1342
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1343
|
+
className: classNames__default["default"]((_classNames = {}, _defineProperty__default["default"](_classNames, styles$9.preview, withPreview && !withPlaceholder), _defineProperty__default["default"](_classNames, styles$9.placeholder, withPlaceholder && !withPreview), _classNames)),
|
|
1344
|
+
style: {
|
|
1345
|
+
width: withPlaceholder ? width : screenWidth,
|
|
1346
|
+
height: withPlaceholder ? height : screenHeight,
|
|
1347
|
+
transform: withPlaceholder ? null : "scale(".concat(scale, ")")
|
|
1348
|
+
}
|
|
1349
|
+
}, /*#__PURE__*/React__default["default"].createElement(ScreenComponent, {
|
|
1350
|
+
screen: screen,
|
|
1351
|
+
screenState: screenState,
|
|
1352
|
+
width: withPlaceholder ? width : screenWidth,
|
|
1353
|
+
height: withPlaceholder ? height : screenHeight,
|
|
1354
|
+
className: styles$9.screen
|
|
1355
|
+
}))));
|
|
1356
|
+
};
|
|
1357
|
+
|
|
1358
|
+
ScreenWithPreview.propTypes = propTypes$d;
|
|
1359
|
+
ScreenWithPreview.defaultProps = defaultProps$d;
|
|
1360
|
+
|
|
1361
|
+
var propTypes$c = {
|
|
1362
|
+
screen: core.PropTypes.screen.isRequired,
|
|
1363
|
+
screenState: PropTypes__default["default"].string,
|
|
1364
|
+
value: core.PropTypes.story.isRequired,
|
|
1365
|
+
className: PropTypes__default["default"].string,
|
|
1366
|
+
onChange: PropTypes__default["default"].func
|
|
1367
|
+
};
|
|
1368
|
+
var defaultProps$c = {
|
|
1369
|
+
screenState: null,
|
|
1370
|
+
className: null,
|
|
1371
|
+
onChange: null
|
|
1372
|
+
};
|
|
1373
|
+
|
|
1374
|
+
function ScreenStates(_ref) {
|
|
1375
|
+
var screen = _ref.screen,
|
|
1376
|
+
value = _ref.value,
|
|
1377
|
+
className = _ref.className,
|
|
1378
|
+
onChange = _ref.onChange;
|
|
1379
|
+
var url = contexts.useUrlGenerator();
|
|
1380
|
+
var push = contexts.useRoutePush();
|
|
1381
|
+
|
|
1382
|
+
var _useRouteParams = useRouteParams(),
|
|
1383
|
+
_useRouteParams$scree = _useRouteParams.screen,
|
|
1384
|
+
screenParam = _useRouteParams$scree === void 0 ? null : _useRouteParams$scree,
|
|
1385
|
+
_useRouteParams$field = _useRouteParams.field,
|
|
1386
|
+
field = _useRouteParams$field === void 0 ? null : _useRouteParams$field;
|
|
1387
|
+
|
|
1388
|
+
var states = useScreenStates(screen);
|
|
1389
|
+
|
|
1390
|
+
var _ref2 = field !== null ? field.split('/') : [],
|
|
1391
|
+
_ref3 = _toArray__default["default"](_ref2),
|
|
1392
|
+
_ref3$ = _ref3[0],
|
|
1393
|
+
stateParam = _ref3$ === void 0 ? null : _ref3$,
|
|
1394
|
+
stateIndexes = _ref3.slice(1);
|
|
1395
|
+
|
|
1396
|
+
var stateIndex = stateIndexes.find(function (it) {
|
|
1397
|
+
return it.match(/^[0-9]+$/) !== null;
|
|
1398
|
+
}) || null;
|
|
1399
|
+
var currentState = stateParam !== null && states.findIndex(function (_ref4) {
|
|
1400
|
+
var id = _ref4.id;
|
|
1401
|
+
return id === stateParam;
|
|
1402
|
+
}) !== -1 ? stateParam : null;
|
|
1403
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1404
|
+
className: classNames__default["default"]([styles$a.container, _defineProperty__default["default"]({}, className, className !== null)])
|
|
1405
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1406
|
+
className: "d-flex align-items-end flex-wrap m-n1"
|
|
1407
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1408
|
+
className: "p-1 align-self-stretch d-flex flex-column"
|
|
1409
|
+
}, /*#__PURE__*/React__default["default"].createElement("h6", {
|
|
1410
|
+
className: classNames__default["default"](['fw-normal', 'invisible', styles$a.title])
|
|
1411
|
+
}, "Settings"), /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
1412
|
+
className: classNames__default["default"]([styles$a.button, 'p-0', 'flex-grow-1', 'justify-content-center']),
|
|
1413
|
+
theme: screenParam !== null && field === null ? 'primary' : 'secondary',
|
|
1414
|
+
outline: screenParam === null || field !== null,
|
|
1415
|
+
size: "lg",
|
|
1416
|
+
icon: /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1417
|
+
icon: freeSolidSvgIcons.faCogs
|
|
1418
|
+
}),
|
|
1419
|
+
href: url('screen', {
|
|
1420
|
+
screen: screen.id
|
|
1421
|
+
})
|
|
1422
|
+
})), states.map(function (state) {
|
|
1423
|
+
var id = state.id,
|
|
1424
|
+
_state$label = state.label,
|
|
1425
|
+
label = _state$label === void 0 ? null : _state$label,
|
|
1426
|
+
_state$repeatable = state.repeatable,
|
|
1427
|
+
repeatable = _state$repeatable === void 0 ? false : _state$repeatable,
|
|
1428
|
+
_state$fieldName = state.fieldName,
|
|
1429
|
+
fieldName = _state$fieldName === void 0 ? null : _state$fieldName;
|
|
1430
|
+
var repeatableItems = repeatable ? screen[fieldName || id] || [] : null;
|
|
1431
|
+
|
|
1432
|
+
var onClickAdd = function onClickAdd() {
|
|
1433
|
+
var _ref6 = value || {},
|
|
1434
|
+
_ref6$components = _ref6.components,
|
|
1435
|
+
currentComponentsValue = _ref6$components === void 0 ? [] : _ref6$components;
|
|
1436
|
+
|
|
1437
|
+
var currentScreenIndex = currentComponentsValue.findIndex(function (_ref7) {
|
|
1438
|
+
var screenId = _ref7.id;
|
|
1439
|
+
return screen.id === screenId;
|
|
1440
|
+
});
|
|
1441
|
+
var currentScreenValue = currentComponentsValue[currentScreenIndex] || {};
|
|
1442
|
+
var currentFieldValue = currentScreenValue[fieldName || id] || [];
|
|
1443
|
+
|
|
1444
|
+
var newValue = _objectSpread__default["default"](_objectSpread__default["default"]({}, value), {}, {
|
|
1445
|
+
components: [].concat(_toConsumableArray__default["default"](currentComponentsValue.slice(0, currentScreenIndex)), [_objectSpread__default["default"](_objectSpread__default["default"]({}, currentScreenValue), {}, _defineProperty__default["default"]({}, fieldName || id, [].concat(_toConsumableArray__default["default"](currentFieldValue), [{}])))], _toConsumableArray__default["default"](currentComponentsValue.slice(currentScreenIndex + 1)))
|
|
1446
|
+
});
|
|
1447
|
+
|
|
1448
|
+
if (onChange !== null) {
|
|
1449
|
+
onChange(newValue);
|
|
1450
|
+
}
|
|
1451
|
+
|
|
1452
|
+
push('screen.field', {
|
|
1453
|
+
screen: screen.id,
|
|
1454
|
+
field: [id, currentFieldValue.length]
|
|
1455
|
+
});
|
|
1456
|
+
};
|
|
940
1457
|
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
1458
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1459
|
+
className: "p-1 align-self-stretch d-flex flex-column"
|
|
1460
|
+
}, /*#__PURE__*/React__default["default"].createElement("h6", {
|
|
1461
|
+
className: classNames__default["default"](['fw-normal', 'text-muted', styles$a.title])
|
|
1462
|
+
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, label)), repeatable ? /*#__PURE__*/React__default["default"].createElement("ul", {
|
|
1463
|
+
className: "d-flex list-unstyled flex-wrap m-n1 flex-grow-1"
|
|
1464
|
+
}, repeatableItems.map(function (item, index) {
|
|
1465
|
+
return /*#__PURE__*/React__default["default"].createElement("li", {
|
|
1466
|
+
className: "p-1"
|
|
1467
|
+
}, /*#__PURE__*/React__default["default"].createElement(ScreenWithPreview, {
|
|
1468
|
+
screen: screen,
|
|
1469
|
+
screenState: "".concat(id, ".").concat(index),
|
|
1470
|
+
className: styles$a.button,
|
|
1471
|
+
active: currentState !== null && id === currentState.split('.')[0] && stateIndex !== null && parseInt(stateIndex, 10) === index,
|
|
1472
|
+
href: url('screen.field', {
|
|
1473
|
+
screen: screen.id,
|
|
1474
|
+
field: [id, index]
|
|
1475
|
+
})
|
|
948
1476
|
}));
|
|
949
|
-
}
|
|
950
|
-
|
|
951
|
-
}
|
|
1477
|
+
}), /*#__PURE__*/React__default["default"].createElement("li", {
|
|
1478
|
+
className: "p-1"
|
|
1479
|
+
}, /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
1480
|
+
className: classNames__default["default"]([styles$a.button, styles$a.addButton, 'h-100', 'p-0', 'justify-content-center']),
|
|
1481
|
+
theme: "secondary",
|
|
1482
|
+
outline: true,
|
|
1483
|
+
size: "lg",
|
|
1484
|
+
icon: /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1485
|
+
icon: freeSolidSvgIcons.faPlus
|
|
1486
|
+
}),
|
|
1487
|
+
onClick: onClickAdd
|
|
1488
|
+
}))) : /*#__PURE__*/React__default["default"].createElement(ScreenWithPreview, {
|
|
1489
|
+
screen: screen,
|
|
1490
|
+
screenState: id,
|
|
1491
|
+
className: styles$a.button,
|
|
1492
|
+
active: id === currentState,
|
|
1493
|
+
href: url('screen.field', {
|
|
1494
|
+
screen: screen.id,
|
|
1495
|
+
field: id
|
|
1496
|
+
}) // onClick={() => {
|
|
1497
|
+
// if (onStateChange !== null) {
|
|
1498
|
+
// onStateChange(id);
|
|
1499
|
+
// }
|
|
1500
|
+
// }}
|
|
952
1501
|
|
|
953
|
-
|
|
954
|
-
|
|
1502
|
+
}));
|
|
1503
|
+
})));
|
|
1504
|
+
}
|
|
955
1505
|
|
|
956
|
-
|
|
1506
|
+
ScreenStates.propTypes = propTypes$c;
|
|
1507
|
+
ScreenStates.defaultProps = defaultProps$c;
|
|
957
1508
|
|
|
958
|
-
var propTypes$
|
|
1509
|
+
var propTypes$b = {
|
|
959
1510
|
value: PropTypes__default["default"].oneOfType([core.PropTypes.story, core.PropTypes.theme]),
|
|
960
1511
|
devices: core.PropTypes.devices,
|
|
961
1512
|
device: PropTypes__default["default"].string,
|
|
@@ -963,9 +1514,10 @@ var propTypes$d = {
|
|
|
963
1514
|
isTheme: PropTypes__default["default"].bool,
|
|
964
1515
|
className: PropTypes__default["default"].string,
|
|
965
1516
|
onScreenChange: PropTypes__default["default"].func,
|
|
1517
|
+
onChange: PropTypes__default["default"].func,
|
|
966
1518
|
withoutDevicesSizes: PropTypes__default["default"].bool
|
|
967
1519
|
};
|
|
968
|
-
var defaultProps$
|
|
1520
|
+
var defaultProps$b = {
|
|
969
1521
|
value: null,
|
|
970
1522
|
devices: [{
|
|
971
1523
|
id: 'mobile',
|
|
@@ -976,16 +1528,17 @@ var defaultProps$d = {
|
|
|
976
1528
|
width: 1200,
|
|
977
1529
|
height: 900
|
|
978
1530
|
}],
|
|
979
|
-
device:
|
|
1531
|
+
device: 'mobile',
|
|
980
1532
|
viewerTheme: null,
|
|
981
1533
|
isTheme: false,
|
|
982
1534
|
className: null,
|
|
983
1535
|
onScreenChange: null,
|
|
984
|
-
|
|
1536
|
+
onChange: null,
|
|
1537
|
+
withoutDevicesSizes: true
|
|
985
1538
|
};
|
|
986
1539
|
|
|
987
1540
|
var EditorPreview = function EditorPreview(_ref) {
|
|
988
|
-
var
|
|
1541
|
+
var _ref9;
|
|
989
1542
|
|
|
990
1543
|
var value = _ref.value,
|
|
991
1544
|
viewerTheme = _ref.viewerTheme,
|
|
@@ -994,8 +1547,14 @@ var EditorPreview = function EditorPreview(_ref) {
|
|
|
994
1547
|
initialDevice = _ref.device,
|
|
995
1548
|
className = _ref.className,
|
|
996
1549
|
onScreenChange = _ref.onScreenChange,
|
|
1550
|
+
onChange = _ref.onChange,
|
|
997
1551
|
withoutDevicesSizes = _ref.withoutDevicesSizes;
|
|
998
|
-
|
|
1552
|
+
|
|
1553
|
+
var _useRouteParams = useRouteParams(),
|
|
1554
|
+
_useRouteParams$scree = _useRouteParams.screen,
|
|
1555
|
+
screenId = _useRouteParams$scree === void 0 ? null : _useRouteParams$scree,
|
|
1556
|
+
_useRouteParams$field = _useRouteParams.field,
|
|
1557
|
+
fieldParam = _useRouteParams$field === void 0 ? null : _useRouteParams$field;
|
|
999
1558
|
|
|
1000
1559
|
var _useScreenSize = contexts.useScreenSize(),
|
|
1001
1560
|
_useScreenSize$screen = _useScreenSize.screen,
|
|
@@ -1029,7 +1588,7 @@ var EditorPreview = function EditorPreview(_ref) {
|
|
|
1029
1588
|
contentRect = _useResizeObserver.entry.contentRect;
|
|
1030
1589
|
|
|
1031
1590
|
var previewStyle = React.useMemo(function () {
|
|
1032
|
-
if (withoutDevicesSizes) {
|
|
1591
|
+
if (withoutDevicesSizes && initialDevice === null) {
|
|
1033
1592
|
return {};
|
|
1034
1593
|
}
|
|
1035
1594
|
|
|
@@ -1053,215 +1612,90 @@ var EditorPreview = function EditorPreview(_ref) {
|
|
|
1053
1612
|
height: maxHeight,
|
|
1054
1613
|
transform: "scale(".concat(previewScale, ", ").concat(previewScale, ")")
|
|
1055
1614
|
};
|
|
1056
|
-
}, [device, contentRect, screen, withoutDevicesSizes]);
|
|
1615
|
+
}, [device, contentRect, screen, withoutDevicesSizes, initialDevice]);
|
|
1616
|
+
var currentScreen = React.useMemo(function () {
|
|
1617
|
+
var _ref3 = valueParsed || {},
|
|
1618
|
+
_ref3$components = _ref3.components,
|
|
1619
|
+
components = _ref3$components === void 0 ? [] : _ref3$components;
|
|
1620
|
+
|
|
1621
|
+
return (screenId !== null ? components.find(function (_ref4) {
|
|
1622
|
+
var id = _ref4.id;
|
|
1623
|
+
return id === screenId;
|
|
1624
|
+
}) : components[0]) || null;
|
|
1625
|
+
}, [valueParsed, screenId]);
|
|
1626
|
+
var currentScreenStates = useScreenStates(currentScreen);
|
|
1627
|
+
|
|
1628
|
+
var _ref5 = fieldParam !== null && currentScreenStates !== null ? fieldParam.split('/') : [],
|
|
1629
|
+
_ref6 = _slicedToArray__default["default"](_ref5, 1),
|
|
1630
|
+
_ref6$ = _ref6[0],
|
|
1631
|
+
screenStateParam = _ref6$ === void 0 ? null : _ref6$;
|
|
1632
|
+
|
|
1633
|
+
var currentScreenState = screenStateParam !== null ? currentScreenStates.find(function (_ref7) {
|
|
1634
|
+
var id = _ref7.id;
|
|
1635
|
+
return id === screenStateParam;
|
|
1636
|
+
}) || null : null;
|
|
1637
|
+
|
|
1638
|
+
var _ref8 = currentScreenState || {},
|
|
1639
|
+
_ref8$id = _ref8.id,
|
|
1640
|
+
screenStateId = _ref8$id === void 0 ? null : _ref8$id,
|
|
1641
|
+
_ref8$repeatable = _ref8.repeatable,
|
|
1642
|
+
repeatable = _ref8$repeatable === void 0 ? false : _ref8$repeatable;
|
|
1643
|
+
|
|
1644
|
+
var currentScreenStateId = currentScreenState !== null && repeatable ? "".concat(screenStateId, ".").concat(fieldParam.split('/').find(function (it) {
|
|
1645
|
+
return it.match(/^[0-9]+$/) !== null;
|
|
1646
|
+
}) || 0) : screenStateId;
|
|
1057
1647
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1058
|
-
className: classNames__default["default"]([styles$
|
|
1059
|
-
return styles$
|
|
1060
|
-
}), (
|
|
1648
|
+
className: classNames__default["default"]([styles$d.container, screens.map(function (screenName) {
|
|
1649
|
+
return styles$d["screen-".concat(screenName)];
|
|
1650
|
+
}), (_ref9 = {}, _defineProperty__default["default"](_ref9, className, className), _defineProperty__default["default"](_ref9, styles$d.withoutDevicesSizes, withoutDevicesSizes), _ref9)])
|
|
1061
1651
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1062
|
-
className: styles$
|
|
1652
|
+
className: styles$d.inner
|
|
1063
1653
|
}, !withoutDevicesSizes ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1064
|
-
className: styles$
|
|
1654
|
+
className: styles$d.top
|
|
1065
1655
|
}, /*#__PURE__*/React__default["default"].createElement(DevicesMenu, {
|
|
1066
1656
|
items: devices.map(function (it) {
|
|
1067
1657
|
return _objectSpread__default["default"](_objectSpread__default["default"]({}, it), {}, {
|
|
1068
1658
|
active: it.id === deviceId
|
|
1069
1659
|
});
|
|
1070
1660
|
}),
|
|
1071
|
-
onClickItem: onClickDeviceItem
|
|
1661
|
+
onClickItem: onClickDeviceItem,
|
|
1662
|
+
className: styles$d.devices
|
|
1663
|
+
})) : null, currentScreenStates !== null && currentScreen !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1664
|
+
className: classNames__default["default"]([styles$d.top, 'px-1'])
|
|
1665
|
+
}, /*#__PURE__*/React__default["default"].createElement(ScreenStates, {
|
|
1666
|
+
screen: currentScreen,
|
|
1667
|
+
screenState: currentScreenStateId,
|
|
1668
|
+
value: value,
|
|
1669
|
+
onChange: onChange
|
|
1072
1670
|
})) : null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1073
|
-
className: styles$
|
|
1671
|
+
className: styles$d.bottom
|
|
1074
1672
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1075
|
-
className: styles$
|
|
1673
|
+
className: styles$d.inner,
|
|
1076
1674
|
ref: bottomRef
|
|
1077
1675
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1078
|
-
className: styles$
|
|
1676
|
+
className: styles$d.preview,
|
|
1079
1677
|
style: previewStyle
|
|
1080
|
-
}, /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
|
1081
|
-
path: [routes.screen, routes.home],
|
|
1082
|
-
render: function render(_ref4) {
|
|
1083
|
-
var _ref4$match$params$sc = _ref4.match.params.screen,
|
|
1084
|
-
screenId = _ref4$match$params$sc === void 0 ? null : _ref4$match$params$sc;
|
|
1085
|
-
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1086
|
-
className: styles$a.viewerContainer
|
|
1087
|
-
}, /*#__PURE__*/React__default["default"].createElement(viewer.Viewer, {
|
|
1088
|
-
story: valueParsed,
|
|
1089
|
-
storyIsParsed: true,
|
|
1090
|
-
screen: screenId,
|
|
1091
|
-
className: styles$a.story,
|
|
1092
|
-
theme: viewerTheme,
|
|
1093
|
-
interactions: null,
|
|
1094
|
-
renderContext: "edit",
|
|
1095
|
-
onScreenChange: onScreenChange
|
|
1096
|
-
}));
|
|
1097
|
-
}
|
|
1098
|
-
}))))));
|
|
1099
|
-
};
|
|
1100
|
-
|
|
1101
|
-
EditorPreview.propTypes = propTypes$d;
|
|
1102
|
-
EditorPreview.defaultProps = defaultProps$d;
|
|
1103
|
-
|
|
1104
|
-
var styles$9 = {"container":"micromag-editor-screens-container","navbar":"micromag-editor-screens-navbar"};
|
|
1105
|
-
|
|
1106
|
-
var styles$8 = {"container":"micromag-editor-menus-screens-container","placeholder":"micromag-editor-menus-screens-placeholder","preview":"micromag-editor-menus-screens-preview","screen":"micromag-editor-menus-screens-screen","item":"micromag-editor-menus-screens-item","items":"micromag-editor-menus-screens-items","button":"micromag-editor-menus-screens-button","settings":"micromag-editor-menus-screens-settings","isVertical":"micromag-editor-menus-screens-isVertical","noWrap":"micromag-editor-menus-screens-noWrap","withPlaceholder":"micromag-editor-menus-screens-withPlaceholder"};
|
|
1107
|
-
|
|
1108
|
-
var styles$7 = {"button":"micromag-editor-buttons-screen-with-preview-button","placeholder":"micromag-editor-buttons-screen-with-preview-placeholder","preview":"micromag-editor-buttons-screen-with-preview-preview","screen":"micromag-editor-buttons-screen-with-preview-screen"};
|
|
1109
|
-
|
|
1110
|
-
var styles$6 = {"container":"micromag-editor-buttons-screen-container","button":"micromag-editor-buttons-screen-button","border":"micromag-editor-buttons-screen-border","screen":"micromag-editor-buttons-screen-screen","inner":"micromag-editor-buttons-screen-inner","icon":"micromag-editor-buttons-screen-icon","label":"micromag-editor-buttons-screen-label","active":"micromag-editor-buttons-screen-active"};
|
|
1111
|
-
|
|
1112
|
-
var propTypes$c = {
|
|
1113
|
-
active: PropTypes__default["default"].bool,
|
|
1114
|
-
id: PropTypes__default["default"].string,
|
|
1115
|
-
href: PropTypes__default["default"].string,
|
|
1116
|
-
label: core.PropTypes.label,
|
|
1117
|
-
icon: PropTypes__default["default"].node,
|
|
1118
|
-
title: PropTypes__default["default"].string,
|
|
1119
|
-
onClick: PropTypes__default["default"].func,
|
|
1120
|
-
children: PropTypes__default["default"].node,
|
|
1121
|
-
refButton: PropTypes__default["default"].shape({
|
|
1122
|
-
current: PropTypes__default["default"].any // eslint-disable-line
|
|
1123
|
-
|
|
1124
|
-
}),
|
|
1125
|
-
className: PropTypes__default["default"].string
|
|
1126
|
-
};
|
|
1127
|
-
var defaultProps$c = {
|
|
1128
|
-
active: false,
|
|
1129
|
-
id: null,
|
|
1130
|
-
href: null,
|
|
1131
|
-
label: null,
|
|
1132
|
-
icon: null,
|
|
1133
|
-
title: null,
|
|
1134
|
-
onClick: null,
|
|
1135
|
-
children: null,
|
|
1136
|
-
refButton: null,
|
|
1137
|
-
className: null
|
|
1138
|
-
};
|
|
1139
|
-
|
|
1140
|
-
var ScreenButton = function ScreenButton(_ref) {
|
|
1141
|
-
var _ref2;
|
|
1142
|
-
|
|
1143
|
-
var active = _ref.active,
|
|
1144
|
-
id = _ref.id,
|
|
1145
|
-
href = _ref.href,
|
|
1146
|
-
className = _ref.className,
|
|
1147
|
-
label = _ref.label,
|
|
1148
|
-
icon = _ref.icon,
|
|
1149
|
-
children = _ref.children,
|
|
1150
|
-
title = _ref.title,
|
|
1151
|
-
onClick = _ref.onClick,
|
|
1152
|
-
refButton = _ref.refButton;
|
|
1153
|
-
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1154
|
-
className: classNames__default["default"]([styles$6.container, 'rounded', (_ref2 = {}, _defineProperty__default["default"](_ref2, styles$6.active, active), _defineProperty__default["default"](_ref2, className, className !== null), _ref2)])
|
|
1155
1678
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1156
|
-
className: styles$
|
|
1157
|
-
},
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
className: styles$
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
title: title,
|
|
1169
|
-
onClick: onClick,
|
|
1170
|
-
refButton: refButton
|
|
1171
|
-
}, /*#__PURE__*/React__default["default"].createElement("span", {
|
|
1172
|
-
className: classNames__default["default"]([styles$6.border, 'rounded'])
|
|
1173
|
-
})));
|
|
1174
|
-
};
|
|
1175
|
-
|
|
1176
|
-
ScreenButton.propTypes = propTypes$c;
|
|
1177
|
-
ScreenButton.defaultProps = defaultProps$c;
|
|
1178
|
-
var ScreenButton$1 = /*#__PURE__*/React__default["default"].forwardRef(function (props, ref) {
|
|
1179
|
-
return /*#__PURE__*/React__default["default"].createElement(ScreenButton, Object.assign({}, props, {
|
|
1180
|
-
refButton: ref
|
|
1181
|
-
}));
|
|
1182
|
-
});
|
|
1183
|
-
|
|
1184
|
-
var propTypes$b = {
|
|
1185
|
-
screen: PropTypes__default["default"].oneOfType([core.PropTypes.story, core.PropTypes.theme]),
|
|
1186
|
-
index: PropTypes__default["default"].number.isRequired,
|
|
1187
|
-
title: PropTypes__default["default"].string,
|
|
1188
|
-
previewStyle: PropTypes__default["default"].shape({
|
|
1189
|
-
width: PropTypes__default["default"].number,
|
|
1190
|
-
height: PropTypes__default["default"].number
|
|
1191
|
-
}),
|
|
1192
|
-
withPreview: PropTypes__default["default"].bool,
|
|
1193
|
-
withPlaceholder: PropTypes__default["default"].bool,
|
|
1194
|
-
onClick: PropTypes__default["default"].func,
|
|
1195
|
-
onClickItem: PropTypes__default["default"].func,
|
|
1196
|
-
buttonClassName: PropTypes__default["default"].string,
|
|
1197
|
-
className: PropTypes__default["default"].string
|
|
1198
|
-
};
|
|
1199
|
-
var defaultProps$b = {
|
|
1200
|
-
screen: null,
|
|
1201
|
-
title: null,
|
|
1202
|
-
previewStyle: null,
|
|
1203
|
-
withPreview: true,
|
|
1204
|
-
withPlaceholder: false,
|
|
1205
|
-
onClick: null,
|
|
1206
|
-
onClickItem: null,
|
|
1207
|
-
buttonClassName: null,
|
|
1208
|
-
className: null
|
|
1679
|
+
className: styles$d.viewerContainer
|
|
1680
|
+
}, /*#__PURE__*/React__default["default"].createElement(viewer.Viewer, {
|
|
1681
|
+
story: valueParsed,
|
|
1682
|
+
storyIsParsed: true,
|
|
1683
|
+
screen: screenId,
|
|
1684
|
+
screenState: currentScreenStateId,
|
|
1685
|
+
className: styles$d.story,
|
|
1686
|
+
theme: viewerTheme,
|
|
1687
|
+
interactions: null,
|
|
1688
|
+
renderContext: "edit",
|
|
1689
|
+
onScreenChange: onScreenChange
|
|
1690
|
+
})))))));
|
|
1209
1691
|
};
|
|
1210
1692
|
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
var screen = _ref.screen,
|
|
1215
|
-
index = _ref.index,
|
|
1216
|
-
title = _ref.title,
|
|
1217
|
-
className = _ref.className,
|
|
1218
|
-
buttonClassName = _ref.buttonClassName,
|
|
1219
|
-
previewStyle = _ref.previewStyle,
|
|
1220
|
-
_onClick = _ref.onClick,
|
|
1221
|
-
onClickItem = _ref.onClickItem,
|
|
1222
|
-
withPreview = _ref.withPreview,
|
|
1223
|
-
withPlaceholder = _ref.withPlaceholder;
|
|
1224
|
-
var intl = reactIntl.useIntl();
|
|
1225
|
-
|
|
1226
|
-
var _ref2 = previewStyle || {},
|
|
1227
|
-
_ref2$width = _ref2.width,
|
|
1228
|
-
width = _ref2$width === void 0 ? null : _ref2$width,
|
|
1229
|
-
_ref2$height = _ref2.height,
|
|
1230
|
-
height = _ref2$height === void 0 ? null : _ref2$height;
|
|
1231
|
-
|
|
1232
|
-
return /*#__PURE__*/React__default["default"].createElement(ScreenButton$1, Object.assign({}, screen, {
|
|
1233
|
-
className: classNames__default["default"]([styles$7.button, (_ref3 = {}, _defineProperty__default["default"](_ref3, buttonClassName, buttonClassName !== null), _defineProperty__default["default"](_ref3, className, className !== null), _ref3)]),
|
|
1234
|
-
title: utils.isMessage(title) ? intl.formatMessage(title) : null,
|
|
1235
|
-
onClick: function onClick() {
|
|
1236
|
-
if (_onClick !== null) {
|
|
1237
|
-
_onClick(screen, index);
|
|
1238
|
-
}
|
|
1693
|
+
EditorPreview.propTypes = propTypes$b;
|
|
1694
|
+
EditorPreview.defaultProps = defaultProps$b;
|
|
1239
1695
|
|
|
1240
|
-
|
|
1241
|
-
onClickItem(screen, index);
|
|
1242
|
-
}
|
|
1243
|
-
}
|
|
1244
|
-
}), withPreview && !withPlaceholder ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1245
|
-
className: styles$7.preview,
|
|
1246
|
-
style: previewStyle
|
|
1247
|
-
}, /*#__PURE__*/React__default["default"].createElement(components.ScreenPreview, {
|
|
1248
|
-
screen: screen,
|
|
1249
|
-
width: width,
|
|
1250
|
-
height: height,
|
|
1251
|
-
className: styles$7.screen
|
|
1252
|
-
})) : null, withPlaceholder && !withPreview ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1253
|
-
className: styles$7.placeholder,
|
|
1254
|
-
style: previewStyle
|
|
1255
|
-
}, /*#__PURE__*/React__default["default"].createElement(components.ScreenPlaceholder, {
|
|
1256
|
-
screen: screen,
|
|
1257
|
-
width: width,
|
|
1258
|
-
height: height,
|
|
1259
|
-
className: styles$7.screen
|
|
1260
|
-
})) : null);
|
|
1261
|
-
};
|
|
1696
|
+
var styles$7 = {"container":"micromag-editor-screens-container","navbar":"micromag-editor-screens-navbar"};
|
|
1262
1697
|
|
|
1263
|
-
|
|
1264
|
-
ScreenWithPreview.defaultProps = defaultProps$b;
|
|
1698
|
+
var styles$6 = {"container":"micromag-editor-menus-screens-container","placeholder":"micromag-editor-menus-screens-placeholder","preview":"micromag-editor-menus-screens-preview","screen":"micromag-editor-menus-screens-screen","item":"micromag-editor-menus-screens-item","items":"micromag-editor-menus-screens-items","button":"micromag-editor-menus-screens-button","settings":"micromag-editor-menus-screens-settings","noWrap":"micromag-editor-menus-screens-noWrap","isVertical":"micromag-editor-menus-screens-isVertical","withPlaceholder":"micromag-editor-menus-screens-withPlaceholder"};
|
|
1265
1699
|
|
|
1266
1700
|
var iOS = /iPad|iPhone|iPod/.test(navigator.platform);
|
|
1267
1701
|
function getDragDepth(offset, indentationWidth) {
|
|
@@ -1663,11 +2097,11 @@ var sortableTreeKeyboardCoordinates = function sortableTreeKeyboardCoordinates(c
|
|
|
1663
2097
|
|
|
1664
2098
|
var styles$5 = {"item":"micromag-editor-sortable-sortable-tree-item","parent":"micromag-editor-sortable-sortable-tree-parent","group":"micromag-editor-sortable-sortable-tree-group","isLastChild":"micromag-editor-sortable-sortable-tree-isLastChild"};
|
|
1665
2099
|
|
|
1666
|
-
var styles$4 = {};
|
|
2100
|
+
var styles$4 = {"container":"micromag-editor-sortable-sortable-tree-item-container","parent":"micromag-editor-sortable-sortable-tree-item-parent","child":"micromag-editor-sortable-sortable-tree-item-child"};
|
|
1667
2101
|
|
|
1668
2102
|
var styles$3 = {"wrapper":"micromag-editor-sortable-sortable-tree-item-actions-wrapper","inner":"micromag-editor-sortable-sortable-tree-item-actions-inner","button":"micromag-editor-sortable-sortable-tree-item-actions-button","handle":"micromag-editor-sortable-sortable-tree-item-actions-handle","icon":"micromag-editor-sortable-sortable-tree-item-actions-icon","text":"micromag-editor-sortable-sortable-tree-item-actions-text","collapsedCount":"micromag-editor-sortable-sortable-tree-item-actions-collapsedCount","count":"micromag-editor-sortable-sortable-tree-item-actions-count","disableInteraction":"micromag-editor-sortable-sortable-tree-item-actions-disableInteraction","clone":"micromag-editor-sortable-sortable-tree-item-actions-clone","disableSelection":"micromag-editor-sortable-sortable-tree-item-actions-disableSelection","collapse":"micromag-editor-sortable-sortable-tree-item-actions-collapse","collapsed":"micromag-editor-sortable-sortable-tree-item-actions-collapsed","children":"micromag-editor-sortable-sortable-tree-item-actions-children","withChildren":"micromag-editor-sortable-sortable-tree-item-actions-withChildren","ghost":"micromag-editor-sortable-sortable-tree-item-actions-ghost","indicator":"micromag-editor-sortable-sortable-tree-item-actions-indicator"};
|
|
1669
2103
|
|
|
1670
|
-
var _excluded$4 = ["childCount", "clone", "depth", "disableSelection", "disableInteraction", "ghost", "handleProps", "indentationWidth", "indicator", "collapsed", "onCollapse", "onRemove", "onClick", "style", "value", "wrapperRef", "showId", "showCount", "children"];
|
|
2104
|
+
var _excluded$4 = ["childCount", "clone", "depth", "disableSelection", "disableInteraction", "ghost", "handleProps", "indentationWidth", "indicator", "collapsed", "onCollapse", "onRemove", "onClick", "style", "value", "wrapperRef", "showId", "showCount", "showCollapsedCount", "children"];
|
|
1671
2105
|
var propTypes$a = {
|
|
1672
2106
|
childCount: PropTypes__default["default"].number,
|
|
1673
2107
|
clone: PropTypes__default["default"].bool,
|
|
@@ -1693,6 +2127,7 @@ var propTypes$a = {
|
|
|
1693
2127
|
}),
|
|
1694
2128
|
showId: PropTypes__default["default"].bool,
|
|
1695
2129
|
showCount: PropTypes__default["default"].bool,
|
|
2130
|
+
showCollapsedCount: PropTypes__default["default"].bool,
|
|
1696
2131
|
children: PropTypes__default["default"].node
|
|
1697
2132
|
};
|
|
1698
2133
|
var defaultProps$a = {
|
|
@@ -1712,6 +2147,7 @@ var defaultProps$a = {
|
|
|
1712
2147
|
style: null,
|
|
1713
2148
|
showId: false,
|
|
1714
2149
|
showCount: false,
|
|
2150
|
+
showCollapsedCount: false,
|
|
1715
2151
|
children: null
|
|
1716
2152
|
};
|
|
1717
2153
|
var SortableTreeItemActions = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
@@ -1735,18 +2171,21 @@ var SortableTreeItemActions = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
|
1735
2171
|
var wrapperRef = _ref.wrapperRef;
|
|
1736
2172
|
_ref.showId;
|
|
1737
2173
|
var showCount = _ref.showCount,
|
|
2174
|
+
showCollapsedCount = _ref.showCollapsedCount,
|
|
1738
2175
|
children = _ref.children,
|
|
1739
2176
|
props = _objectWithoutProperties__default["default"](_ref, _excluded$4);
|
|
1740
2177
|
|
|
1741
|
-
return /*#__PURE__*/React__default["default"].createElement("
|
|
2178
|
+
return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
1742
2179
|
className: classNames__default["default"]([styles$3.wrapper, (_ref2 = {}, _defineProperty__default["default"](_ref2, styles$3.clone, clone), _defineProperty__default["default"](_ref2, styles$3.ghost, ghost), _defineProperty__default["default"](_ref2, styles$3.indicator, indicator), _defineProperty__default["default"](_ref2, styles$3.disableSelection, disableSelection), _defineProperty__default["default"](_ref2, styles$3.disableInteraction, disableInteraction), _defineProperty__default["default"](_ref2, styles$3.withChildren, onCollapse !== null), _ref2)]),
|
|
1743
2180
|
ref: wrapperRef,
|
|
1744
|
-
style:
|
|
1745
|
-
marginLeft: "".concat(indentationWidth * depth, "px")
|
|
1746
|
-
|
|
2181
|
+
style: {
|
|
2182
|
+
marginLeft: "".concat(indentationWidth * depth, "px"),
|
|
2183
|
+
marginRight: "".concat(5 * depth, "px")
|
|
2184
|
+
}
|
|
1747
2185
|
}, props), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1748
2186
|
className: styles$3.inner,
|
|
1749
|
-
ref: ref
|
|
2187
|
+
ref: ref,
|
|
2188
|
+
style: style
|
|
1750
2189
|
}, /*#__PURE__*/React__default["default"].createElement("button", Object.assign({
|
|
1751
2190
|
className: classNames__default["default"]([styles$3.button, styles$3.handle]),
|
|
1752
2191
|
type: "button"
|
|
@@ -1760,7 +2199,7 @@ var SortableTreeItemActions = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
|
1760
2199
|
icon: freeSolidSvgIcons.faTimes
|
|
1761
2200
|
})) : null, clone && showCount && childCount && childCount > 1 ? /*#__PURE__*/React__default["default"].createElement("span", {
|
|
1762
2201
|
className: styles$3.count
|
|
1763
|
-
}, childCount) : null, onCollapse && collapsed && childCount !== null && childCount > 0 ? /*#__PURE__*/React__default["default"].createElement("span", {
|
|
2202
|
+
}, childCount) : null, showCollapsedCount && onCollapse && collapsed && childCount !== null && childCount > 0 ? /*#__PURE__*/React__default["default"].createElement("span", {
|
|
1764
2203
|
className: styles$3.collapsedCount
|
|
1765
2204
|
}, childCount) : null, onCollapse && depth === 0 ? /*#__PURE__*/React__default["default"].createElement("button", {
|
|
1766
2205
|
type: "button",
|
|
@@ -1768,14 +2207,14 @@ var SortableTreeItemActions = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
|
1768
2207
|
className: classNames__default["default"](styles$3.button, styles$3.collapse, collapsed && styles$3.collapsed)
|
|
1769
2208
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1770
2209
|
icon: freeSolidSvgIcons.faAngleDown
|
|
1771
|
-
})) : null
|
|
2210
|
+
})) : null, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1772
2211
|
className: styles$3.children
|
|
1773
|
-
}, children));
|
|
2212
|
+
}, children)));
|
|
1774
2213
|
});
|
|
1775
2214
|
SortableTreeItemActions.propTypes = propTypes$a;
|
|
1776
2215
|
SortableTreeItemActions.defaultProps = defaultProps$a;
|
|
1777
2216
|
|
|
1778
|
-
var _excluded$3 = ["id", "index", "depth", "component", "value", "style", "smallScale", "collapsed", "onCollapse", "onClickItem", "isLastChild"];
|
|
2217
|
+
var _excluded$3 = ["id", "index", "depth", "component", "value", "style", "smallScale", "collapsed", "onCollapse", "onClickItem", "childValue", "isLastChild"];
|
|
1779
2218
|
var propTypes$9 = {
|
|
1780
2219
|
id: PropTypes__default["default"].string.isRequired,
|
|
1781
2220
|
index: PropTypes__default["default"].number.isRequired,
|
|
@@ -1795,6 +2234,8 @@ var propTypes$9 = {
|
|
|
1795
2234
|
collapsed: PropTypes__default["default"].bool,
|
|
1796
2235
|
onCollapse: PropTypes__default["default"].func,
|
|
1797
2236
|
onClickItem: PropTypes__default["default"].func,
|
|
2237
|
+
// eslint-disable-next-line react/forbid-prop-types
|
|
2238
|
+
childValue: PropTypes__default["default"].object,
|
|
1798
2239
|
isLastChild: PropTypes__default["default"].bool
|
|
1799
2240
|
};
|
|
1800
2241
|
var defaultProps$9 = {
|
|
@@ -1805,6 +2246,7 @@ var defaultProps$9 = {
|
|
|
1805
2246
|
collapsed: false,
|
|
1806
2247
|
onCollapse: null,
|
|
1807
2248
|
onClickItem: null,
|
|
2249
|
+
childValue: null,
|
|
1808
2250
|
isLastChild: false
|
|
1809
2251
|
};
|
|
1810
2252
|
|
|
@@ -1819,12 +2261,13 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1819
2261
|
index = _ref2.index,
|
|
1820
2262
|
depth = _ref2.depth,
|
|
1821
2263
|
Component = _ref2.component,
|
|
1822
|
-
value = _ref2.value
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
collapsed = _ref2.collapsed,
|
|
2264
|
+
value = _ref2.value;
|
|
2265
|
+
_ref2.style;
|
|
2266
|
+
_ref2.smallScale;
|
|
2267
|
+
var collapsed = _ref2.collapsed,
|
|
1826
2268
|
onCollapse = _ref2.onCollapse,
|
|
1827
|
-
onClickItem = _ref2.onClickItem
|
|
2269
|
+
onClickItem = _ref2.onClickItem,
|
|
2270
|
+
childValue = _ref2.childValue;
|
|
1828
2271
|
_ref2.isLastChild;
|
|
1829
2272
|
var props = _objectWithoutProperties__default["default"](_ref2, _excluded$3);
|
|
1830
2273
|
|
|
@@ -1841,28 +2284,17 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1841
2284
|
transform = _useSortable.transform,
|
|
1842
2285
|
transition = _useSortable.transition;
|
|
1843
2286
|
|
|
1844
|
-
var
|
|
1845
|
-
var _itemStyle$scaledWidt = itemStyle.scaledWidth,
|
|
1846
|
-
scaledWidth = _itemStyle$scaledWidt === void 0 ? 100 : _itemStyle$scaledWidt,
|
|
1847
|
-
_itemStyle$scaledHeig = itemStyle.scaledHeight,
|
|
1848
|
-
scaledHeight = _itemStyle$scaledHeig === void 0 ? 66 : _itemStyle$scaledHeig,
|
|
1849
|
-
_itemStyle$scale = itemStyle.scale,
|
|
1850
|
-
scale = _itemStyle$scale === void 0 ? 1 : _itemStyle$scale;
|
|
1851
|
-
var extraHeight = hasCollapse ? 30 : 0;
|
|
2287
|
+
var timeout = React.useRef(null);
|
|
1852
2288
|
var actionsStyle = {
|
|
1853
|
-
width: depth === 0 ? scaledWidth : scaledWidth * smallScale,
|
|
1854
|
-
height: depth === 0 ? scaledHeight + extraHeight : scaledHeight * smallScale,
|
|
1855
2289
|
transform: utilities.CSS.Translate.toString(transform),
|
|
1856
2290
|
transition: transition
|
|
1857
2291
|
};
|
|
1858
|
-
var previewStyle = {
|
|
1859
|
-
width: itemStyle.width,
|
|
1860
|
-
height: itemStyle.height,
|
|
1861
|
-
transform: depth === 0 ? itemStyle.transform : "scale(".concat(scale * smallScale, ", ").concat(scale * smallScale, ")")
|
|
1862
|
-
};
|
|
1863
2292
|
|
|
1864
2293
|
var _ref3 = listeners || {},
|
|
1865
|
-
onPointerDown = _ref3.onPointerDown
|
|
2294
|
+
_ref3$onPointerDown = _ref3.onPointerDown,
|
|
2295
|
+
onPointerDown = _ref3$onPointerDown === void 0 ? null : _ref3$onPointerDown,
|
|
2296
|
+
_ref3$onPointerUp = _ref3.onPointerUp,
|
|
2297
|
+
onPointerUp = _ref3$onPointerUp === void 0 ? null : _ref3$onPointerUp;
|
|
1866
2298
|
|
|
1867
2299
|
var onClickAction = React.useCallback(function (e) {
|
|
1868
2300
|
if (onClickItem !== null) {
|
|
@@ -1870,9 +2302,25 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1870
2302
|
}
|
|
1871
2303
|
|
|
1872
2304
|
if (onPointerDown !== null) {
|
|
1873
|
-
|
|
2305
|
+
e.persist();
|
|
2306
|
+
timeout.current = setTimeout(function () {
|
|
2307
|
+
if (onPointerDown !== null) {
|
|
2308
|
+
onPointerDown(e);
|
|
2309
|
+
}
|
|
2310
|
+
|
|
2311
|
+
timeout.current = null;
|
|
2312
|
+
}, 200);
|
|
1874
2313
|
}
|
|
1875
2314
|
}, [value, index, onClickItem, onPointerDown]);
|
|
2315
|
+
var cancellingPointerUp = React.useCallback(function (e) {
|
|
2316
|
+
if (timeout.current !== null) {
|
|
2317
|
+
clearTimeout(timeout.current);
|
|
2318
|
+
}
|
|
2319
|
+
|
|
2320
|
+
if (onPointerUp !== null) {
|
|
2321
|
+
onPointerUp(e);
|
|
2322
|
+
}
|
|
2323
|
+
}, [onPointerUp]);
|
|
1876
2324
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1877
2325
|
className: classNames__default["default"]([styles$4.container])
|
|
1878
2326
|
}, /*#__PURE__*/React__default["default"].createElement(SortableTreeItemActions, Object.assign({
|
|
@@ -1884,14 +2332,18 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1884
2332
|
disableSelection: iOS,
|
|
1885
2333
|
disableInteraction: isSorting,
|
|
1886
2334
|
handleProps: _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, attributes), listeners), {}, {
|
|
1887
|
-
onPointerDown: onClickAction
|
|
2335
|
+
onPointerDown: onClickAction,
|
|
2336
|
+
onPointerUp: cancellingPointerUp
|
|
1888
2337
|
}),
|
|
1889
2338
|
collapsed: collapsed,
|
|
1890
2339
|
onCollapse: onCollapse
|
|
1891
|
-
}, props), Component !== null ? /*#__PURE__*/React__default["default"].createElement(
|
|
1892
|
-
|
|
1893
|
-
})) : null
|
|
2340
|
+
}, props), Component !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2341
|
+
className: styles$4.parent
|
|
2342
|
+
}, /*#__PURE__*/React__default["default"].createElement(Component, value)) : null, childValue !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2343
|
+
className: styles$4.child
|
|
2344
|
+
}, /*#__PURE__*/React__default["default"].createElement(Component, childValue)) : null));
|
|
1894
2345
|
};
|
|
2346
|
+
|
|
1895
2347
|
SortableTreeItem.propTypes = propTypes$9;
|
|
1896
2348
|
SortableTreeItem.defaultProps = defaultProps$9;
|
|
1897
2349
|
|
|
@@ -1913,18 +2365,6 @@ var initialItems = [{
|
|
|
1913
2365
|
id: 'Winter',
|
|
1914
2366
|
children: []
|
|
1915
2367
|
}]
|
|
1916
|
-
}, {
|
|
1917
|
-
id: 'About Us',
|
|
1918
|
-
children: []
|
|
1919
|
-
}, {
|
|
1920
|
-
id: 'My Account',
|
|
1921
|
-
children: [{
|
|
1922
|
-
id: 'Addresses',
|
|
1923
|
-
children: []
|
|
1924
|
-
}, {
|
|
1925
|
-
id: 'Order History',
|
|
1926
|
-
children: []
|
|
1927
|
-
}]
|
|
1928
2368
|
}];
|
|
1929
2369
|
var measuring = {
|
|
1930
2370
|
droppable: {
|
|
@@ -1951,7 +2391,6 @@ var propTypes$8 = {
|
|
|
1951
2391
|
indicator: PropTypes__default["default"].bool,
|
|
1952
2392
|
removable: PropTypes__default["default"].bool,
|
|
1953
2393
|
component: PropTypes__default["default"].func,
|
|
1954
|
-
itemStyle: PropTypes__default["default"].shape({}),
|
|
1955
2394
|
onClickItem: PropTypes__default["default"].func,
|
|
1956
2395
|
onChange: PropTypes__default["default"].func
|
|
1957
2396
|
};
|
|
@@ -1962,10 +2401,10 @@ var defaultProps$8 = {
|
|
|
1962
2401
|
indicator: false,
|
|
1963
2402
|
removable: false,
|
|
1964
2403
|
component: null,
|
|
1965
|
-
itemStyle: null,
|
|
1966
2404
|
onClickItem: null,
|
|
1967
2405
|
onChange: null
|
|
1968
2406
|
};
|
|
2407
|
+
|
|
1969
2408
|
var SortableTree = function SortableTree(_ref2) {
|
|
1970
2409
|
var collapsible = _ref2.collapsible,
|
|
1971
2410
|
defaultItems = _ref2.items,
|
|
@@ -1973,12 +2412,11 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
1973
2412
|
indentationWidth = _ref2.indentationWidth,
|
|
1974
2413
|
removable = _ref2.removable,
|
|
1975
2414
|
component = _ref2.component,
|
|
1976
|
-
itemStyle = _ref2.itemStyle,
|
|
1977
2415
|
onClickItem = _ref2.onClickItem,
|
|
1978
2416
|
onChange = _ref2.onChange;
|
|
1979
2417
|
|
|
1980
2418
|
var _useState = React.useState(function () {
|
|
1981
|
-
return defaultItems;
|
|
2419
|
+
return buildTree(defaultItems);
|
|
1982
2420
|
}),
|
|
1983
2421
|
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
1984
2422
|
items = _useState2[0],
|
|
@@ -2002,11 +2440,20 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2002
2440
|
var _useState9 = React.useState(null),
|
|
2003
2441
|
_useState10 = _slicedToArray__default["default"](_useState9, 2),
|
|
2004
2442
|
currentPosition = _useState10[0],
|
|
2005
|
-
setCurrentPosition = _useState10[1];
|
|
2443
|
+
setCurrentPosition = _useState10[1]; // Tree setup from list
|
|
2006
2444
|
|
|
2007
|
-
var flattenedItems = React.useMemo(function () {
|
|
2008
|
-
var flattenedTree = flattenTree(items); // console.log('yo', items, flattenedTree);
|
|
2009
2445
|
|
|
2446
|
+
React.useEffect(function () {
|
|
2447
|
+
var flat = flattenTree(items);
|
|
2448
|
+
var merged = defaultItems.map(function (t1) {
|
|
2449
|
+
return _objectSpread__default["default"](_objectSpread__default["default"]({}, flat.find(function (t2) {
|
|
2450
|
+
return t2.id === t1.id;
|
|
2451
|
+
})), t1);
|
|
2452
|
+
});
|
|
2453
|
+
setItems(buildTree(merged));
|
|
2454
|
+
}, [defaultItems.length]);
|
|
2455
|
+
var flattenedItems = React.useMemo(function () {
|
|
2456
|
+
var flattenedTree = flattenTree(items);
|
|
2010
2457
|
var collapsedItems = flattenedTree.reduce(function (acc, _ref3) {
|
|
2011
2458
|
var _ref3$children = _ref3.children,
|
|
2012
2459
|
children = _ref3$children === void 0 ? [] : _ref3$children,
|
|
@@ -2015,38 +2462,101 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2015
2462
|
return collapsed && children.length ? [].concat(_toConsumableArray__default["default"](acc), [id]) : acc;
|
|
2016
2463
|
}, []) || null;
|
|
2017
2464
|
return removeChildrenOf(flattenedTree, activeId ? [activeId].concat(_toConsumableArray__default["default"](collapsedItems)) : collapsedItems);
|
|
2018
|
-
}, [activeId, items]);
|
|
2465
|
+
}, [activeId, items, items.length]);
|
|
2019
2466
|
var projected = activeId && overId ? getProjection(flattenedItems, activeId, overId, offsetLeft, indentationWidth) : null;
|
|
2020
2467
|
var sensorContext = React.useRef({
|
|
2021
2468
|
items: flattenedItems,
|
|
2022
2469
|
offset: offsetLeft
|
|
2023
2470
|
});
|
|
2024
2471
|
|
|
2025
|
-
var _useState11 = React.useState(function () {
|
|
2026
|
-
return sortableTreeKeyboardCoordinates(sensorContext, indentationWidth);
|
|
2027
|
-
}),
|
|
2028
|
-
_useState12 = _slicedToArray__default["default"](_useState11, 1),
|
|
2029
|
-
coordinateGetter = _useState12[0];
|
|
2472
|
+
var _useState11 = React.useState(function () {
|
|
2473
|
+
return sortableTreeKeyboardCoordinates(sensorContext, indentationWidth);
|
|
2474
|
+
}),
|
|
2475
|
+
_useState12 = _slicedToArray__default["default"](_useState11, 1),
|
|
2476
|
+
coordinateGetter = _useState12[0];
|
|
2477
|
+
|
|
2478
|
+
var sensors = core$1.useSensors(core$1.useSensor(core$1.PointerSensor), core$1.useSensor(core$1.KeyboardSensor, {
|
|
2479
|
+
coordinateGetter: coordinateGetter
|
|
2480
|
+
}));
|
|
2481
|
+
var sortedIds = React.useMemo(function () {
|
|
2482
|
+
return flattenedItems.map(function (_ref4) {
|
|
2483
|
+
var id = _ref4.id;
|
|
2484
|
+
return id;
|
|
2485
|
+
});
|
|
2486
|
+
}, [flattenedItems]);
|
|
2487
|
+
var activeItem = activeId ? flattenedItems.find(function (_ref5) {
|
|
2488
|
+
var id = _ref5.id;
|
|
2489
|
+
return id === activeId;
|
|
2490
|
+
}) : null;
|
|
2491
|
+
React.useEffect(function () {
|
|
2492
|
+
sensorContext.current = {
|
|
2493
|
+
items: flattenedItems,
|
|
2494
|
+
offset: offsetLeft
|
|
2495
|
+
};
|
|
2496
|
+
}, [flattenedItems, offsetLeft]);
|
|
2497
|
+
|
|
2498
|
+
function getMovementAnnouncement(eventName, currentActiveId, currentOverId) {
|
|
2499
|
+
if (currentOverId && projected) {
|
|
2500
|
+
if (eventName !== 'onDragEnd') {
|
|
2501
|
+
if (currentPosition && projected.parentId === currentPosition.parentId && currentOverId === currentPosition.overId) {
|
|
2502
|
+
return;
|
|
2503
|
+
}
|
|
2504
|
+
|
|
2505
|
+
setCurrentPosition({
|
|
2506
|
+
parentId: projected.parentId,
|
|
2507
|
+
overId: currentOverId
|
|
2508
|
+
});
|
|
2509
|
+
}
|
|
2510
|
+
|
|
2511
|
+
var clonedItems = JSON.parse(JSON.stringify(flattenTree(items)));
|
|
2512
|
+
var overIndex = clonedItems.findIndex(function (_ref6) {
|
|
2513
|
+
var id = _ref6.id;
|
|
2514
|
+
return id === currentOverId;
|
|
2515
|
+
});
|
|
2516
|
+
var activeIndex = clonedItems.findIndex(function (_ref7) {
|
|
2517
|
+
var id = _ref7.id;
|
|
2518
|
+
return id === currentActiveId;
|
|
2519
|
+
});
|
|
2520
|
+
var sortedItems = sortable.arrayMove(clonedItems, activeIndex, overIndex);
|
|
2521
|
+
var previousItem = sortedItems[overIndex - 1];
|
|
2522
|
+
var newAnnouncement;
|
|
2523
|
+
var movedVerb = eventName === 'onDragEnd' ? 'dropped' : 'moved';
|
|
2524
|
+
var nestedVerb = eventName === 'onDragEnd' ? 'dropped' : 'nested';
|
|
2525
|
+
|
|
2526
|
+
if (!previousItem) {
|
|
2527
|
+
var nextItem = typeof sortedItems[overIndex + 1] !== 'undefined' ? sortedItems[overIndex + 1] : null;
|
|
2528
|
+
|
|
2529
|
+
if (nextItem !== null) {
|
|
2530
|
+
newAnnouncement = "".concat(currentActiveId, " was ").concat(movedVerb, " before ").concat(nextItem.id, ".");
|
|
2531
|
+
}
|
|
2532
|
+
} else if (projected.depth > previousItem.depth) {
|
|
2533
|
+
newAnnouncement = "".concat(currentActiveId, " was ").concat(nestedVerb, " under ").concat(previousItem.id, ".");
|
|
2534
|
+
} else {
|
|
2535
|
+
var previousSibling = previousItem;
|
|
2536
|
+
|
|
2537
|
+
var _loop = function _loop() {
|
|
2538
|
+
var _previousSibling = previousSibling,
|
|
2539
|
+
parentId = _previousSibling.parentId;
|
|
2540
|
+
previousSibling = sortedItems.find(function (_ref8) {
|
|
2541
|
+
var id = _ref8.id;
|
|
2542
|
+
return id === parentId;
|
|
2543
|
+
});
|
|
2544
|
+
};
|
|
2545
|
+
|
|
2546
|
+
while (previousSibling && projected.depth < previousSibling.depth) {
|
|
2547
|
+
_loop();
|
|
2548
|
+
}
|
|
2549
|
+
|
|
2550
|
+
if (previousSibling) {
|
|
2551
|
+
newAnnouncement = "".concat(currentActiveId, " was ").concat(movedVerb, " after ").concat(previousSibling.id, ".");
|
|
2552
|
+
}
|
|
2553
|
+
} // eslint-disable-next-line consistent-return
|
|
2554
|
+
|
|
2555
|
+
|
|
2556
|
+
return newAnnouncement;
|
|
2557
|
+
}
|
|
2558
|
+
}
|
|
2030
2559
|
|
|
2031
|
-
var sensors = core$1.useSensors(core$1.useSensor(core$1.PointerSensor), core$1.useSensor(core$1.KeyboardSensor, {
|
|
2032
|
-
coordinateGetter: coordinateGetter
|
|
2033
|
-
}));
|
|
2034
|
-
var sortedIds = React.useMemo(function () {
|
|
2035
|
-
return flattenedItems.map(function (_ref4) {
|
|
2036
|
-
var id = _ref4.id;
|
|
2037
|
-
return id;
|
|
2038
|
-
});
|
|
2039
|
-
}, [flattenedItems]);
|
|
2040
|
-
var activeItem = activeId ? flattenedItems.find(function (_ref5) {
|
|
2041
|
-
var id = _ref5.id;
|
|
2042
|
-
return id === activeId;
|
|
2043
|
-
}) : null;
|
|
2044
|
-
React.useEffect(function () {
|
|
2045
|
-
sensorContext.current = {
|
|
2046
|
-
items: flattenedItems,
|
|
2047
|
-
offset: offsetLeft
|
|
2048
|
-
};
|
|
2049
|
-
}, [flattenedItems, offsetLeft]);
|
|
2050
2560
|
var announcements = React.useMemo(function () {
|
|
2051
2561
|
return {
|
|
2052
2562
|
onDragStart: function onDragStart(id) {
|
|
@@ -2059,16 +2569,17 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2059
2569
|
return getMovementAnnouncement('onDragOver', id, currentOverId);
|
|
2060
2570
|
},
|
|
2061
2571
|
onDragEnd: function onDragEnd(id, currentOverId) {
|
|
2062
|
-
|
|
2572
|
+
var flat = flattenTree(items);
|
|
2573
|
+
|
|
2063
2574
|
if (onChange !== null) {
|
|
2064
|
-
onChange((
|
|
2065
|
-
var itemId =
|
|
2066
|
-
|
|
2067
|
-
children =
|
|
2068
|
-
|
|
2069
|
-
parentId =
|
|
2070
|
-
|
|
2071
|
-
collapsed =
|
|
2575
|
+
onChange((flat || []).map(function (_ref9) {
|
|
2576
|
+
var itemId = _ref9.id,
|
|
2577
|
+
_ref9$children = _ref9.children,
|
|
2578
|
+
children = _ref9$children === void 0 ? [] : _ref9$children,
|
|
2579
|
+
_ref9$parentId = _ref9.parentId,
|
|
2580
|
+
parentId = _ref9$parentId === void 0 ? null : _ref9$parentId,
|
|
2581
|
+
_ref9$collapsed = _ref9.collapsed,
|
|
2582
|
+
collapsed = _ref9$collapsed === void 0 ? false : _ref9$collapsed;
|
|
2072
2583
|
return {
|
|
2073
2584
|
id: itemId,
|
|
2074
2585
|
props: _objectSpread__default["default"](_objectSpread__default["default"]({}, (children || []).length > 0 ? {
|
|
@@ -2093,98 +2604,18 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2093
2604
|
return "Moving was cancelled. ".concat(id, " was dropped in its original position.");
|
|
2094
2605
|
}
|
|
2095
2606
|
};
|
|
2096
|
-
}, [flattenedItems, onChange]);
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
setItems(buildTree(defaultItems));
|
|
2101
|
-
}, []);
|
|
2102
|
-
var activeValue = defaultItems.find(function (_ref7) {
|
|
2103
|
-
var _ref7$id = _ref7.id,
|
|
2104
|
-
defaultId = _ref7$id === void 0 ? null : _ref7$id;
|
|
2607
|
+
}, [flattenedItems, onChange, getMovementAnnouncement]);
|
|
2608
|
+
var activeValue = defaultItems.find(function (_ref10) {
|
|
2609
|
+
var _ref10$id = _ref10.id,
|
|
2610
|
+
defaultId = _ref10$id === void 0 ? null : _ref10$id;
|
|
2105
2611
|
return defaultId === activeId;
|
|
2106
2612
|
});
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
sensors: sensors,
|
|
2110
|
-
collisionDetection: core$1.closestCenter,
|
|
2111
|
-
measuring: measuring,
|
|
2112
|
-
onDragStart: handleDragStart,
|
|
2113
|
-
onDragMove: handleDragMove,
|
|
2114
|
-
onDragOver: handleDragOver,
|
|
2115
|
-
onDragEnd: handleDragEnd,
|
|
2116
|
-
onDragCancel: handleDragCancel
|
|
2117
|
-
}, /*#__PURE__*/React__default["default"].createElement(sortable.SortableContext, {
|
|
2118
|
-
items: sortedIds,
|
|
2119
|
-
strategy: sortable.verticalListSortingStrategy
|
|
2120
|
-
}, flattenedItems.map(function (_ref8, idx) {
|
|
2121
|
-
var _flattenedItems, _ref10;
|
|
2122
|
-
|
|
2123
|
-
var id = _ref8.id,
|
|
2124
|
-
_ref8$children = _ref8.children,
|
|
2125
|
-
children = _ref8$children === void 0 ? [] : _ref8$children,
|
|
2126
|
-
collapsed = _ref8.collapsed,
|
|
2127
|
-
depth = _ref8.depth;
|
|
2128
|
-
var screenValue = defaultItems.find(function (_ref9) {
|
|
2129
|
-
var _ref9$id = _ref9.id,
|
|
2130
|
-
defaultId = _ref9$id === void 0 ? null : _ref9$id;
|
|
2131
|
-
return defaultId === id;
|
|
2132
|
-
});
|
|
2133
|
-
var next = ((_flattenedItems = flattenedItems[idx + 1]) === null || _flattenedItems === void 0 ? void 0 : _flattenedItems.parentId) || null;
|
|
2134
|
-
var isCollapsed = collapsed && children.length > 0;
|
|
2135
|
-
var onCollapse = collapsible && children.length ? function () {
|
|
2136
|
-
return handleCollapse(id);
|
|
2137
|
-
} : null;
|
|
2138
|
-
var currentDepth = id === activeId && projected ? projected.depth : depth;
|
|
2139
|
-
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2140
|
-
className: classNames__default["default"]([styles$5.item, (_ref10 = {}, _defineProperty__default["default"](_ref10, styles$5.parent, onCollapse !== null && !collapsed), _defineProperty__default["default"](_ref10, styles$5.group, depth === 1), _defineProperty__default["default"](_ref10, styles$5.isLastChild, next === null), _ref10)]),
|
|
2141
|
-
key: id
|
|
2142
|
-
}, /*#__PURE__*/React__default["default"].createElement(SortableTreeItem, {
|
|
2143
|
-
key: id,
|
|
2144
|
-
id: id,
|
|
2145
|
-
depth: currentDepth,
|
|
2146
|
-
indentationWidth: indentationWidth,
|
|
2147
|
-
indicator: indicator,
|
|
2148
|
-
collapsed: isCollapsed,
|
|
2149
|
-
onCollapse: onCollapse,
|
|
2150
|
-
onRemove: removable ? function () {
|
|
2151
|
-
return handleRemove(id);
|
|
2152
|
-
} : undefined,
|
|
2153
|
-
childCount: getChildCount(items, id),
|
|
2154
|
-
component: component,
|
|
2155
|
-
value: (screenValue === null || screenValue === void 0 ? void 0 : screenValue.value) || null,
|
|
2156
|
-
style: itemStyle,
|
|
2157
|
-
onClickItem: onClickItem,
|
|
2158
|
-
index: idx
|
|
2159
|
-
}));
|
|
2160
|
-
}), /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement(core$1.DragOverlay, {
|
|
2161
|
-
dropAnimation: dropAnimation,
|
|
2162
|
-
modifiers: indicator ? [adjustTranslate] : undefined
|
|
2163
|
-
}, activeId && activeItem ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2164
|
-
className: styles$5.item,
|
|
2165
|
-
key: activeId
|
|
2166
|
-
}, /*#__PURE__*/React__default["default"].createElement(SortableTreeItem, {
|
|
2167
|
-
id: activeId,
|
|
2168
|
-
depth: activeItem.depth,
|
|
2169
|
-
clone: true,
|
|
2170
|
-
childCount: getChildCount(items, activeId) + 1,
|
|
2171
|
-
indentationWidth: indentationWidth,
|
|
2172
|
-
component: component,
|
|
2173
|
-
value: activeValue === null || activeValue === void 0 ? void 0 : activeValue.value,
|
|
2174
|
-
onClickItem: onClickItem,
|
|
2175
|
-
index: flattenedItems.findIndex(function (_ref11) {
|
|
2176
|
-
var id = _ref11.id;
|
|
2177
|
-
return activeId === id;
|
|
2178
|
-
}),
|
|
2179
|
-
style: itemStyle
|
|
2180
|
-
})) : null), document.body)));
|
|
2181
|
-
|
|
2182
|
-
function handleDragStart(_ref12) {
|
|
2183
|
-
var newActiveId = _ref12.active.id;
|
|
2613
|
+
var handleDragStart = React.useCallback(function (_ref11) {
|
|
2614
|
+
var newActiveId = _ref11.active.id;
|
|
2184
2615
|
setActiveId(newActiveId);
|
|
2185
2616
|
setOverId(newActiveId);
|
|
2186
|
-
var newActiveItem = flattenedItems.find(function (
|
|
2187
|
-
var id =
|
|
2617
|
+
var newActiveItem = flattenedItems.find(function (_ref12) {
|
|
2618
|
+
var id = _ref12.id;
|
|
2188
2619
|
return id === newActiveId;
|
|
2189
2620
|
});
|
|
2190
2621
|
|
|
@@ -2196,53 +2627,49 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2196
2627
|
}
|
|
2197
2628
|
|
|
2198
2629
|
document.body.style.setProperty('cursor', 'grabbing');
|
|
2199
|
-
}
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
var delta = _ref14.delta;
|
|
2630
|
+
}, [flattenedItems, setActiveId, setOverId, setCurrentPosition]);
|
|
2631
|
+
var handleDragMove = React.useCallback(function (_ref13) {
|
|
2632
|
+
var delta = _ref13.delta;
|
|
2203
2633
|
setOffsetLeft(delta.x);
|
|
2204
|
-
}
|
|
2205
|
-
|
|
2206
|
-
function handleDragOver(_ref15) {
|
|
2634
|
+
}, [setOffsetLeft]);
|
|
2635
|
+
var handleDragOver = React.useCallback(function (_ref14) {
|
|
2207
2636
|
var _over$id;
|
|
2208
2637
|
|
|
2209
|
-
var over =
|
|
2638
|
+
var over = _ref14.over;
|
|
2210
2639
|
setOverId((_over$id = over === null || over === void 0 ? void 0 : over.id) !== null && _over$id !== void 0 ? _over$id : null);
|
|
2211
|
-
}
|
|
2212
|
-
|
|
2213
|
-
function resetState() {
|
|
2640
|
+
}, [setOverId]);
|
|
2641
|
+
var resetState = React.useCallback(function () {
|
|
2214
2642
|
setOverId(null);
|
|
2215
2643
|
setActiveId(null);
|
|
2216
2644
|
setOffsetLeft(0);
|
|
2217
2645
|
setCurrentPosition(null);
|
|
2218
2646
|
document.body.style.setProperty('cursor', '');
|
|
2219
|
-
}
|
|
2220
|
-
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
over = _ref16.over;
|
|
2647
|
+
}, [setOverId, setActiveId, setOffsetLeft, setCurrentPosition]);
|
|
2648
|
+
var handleDragEnd = React.useCallback(function (_ref15) {
|
|
2649
|
+
var active = _ref15.active,
|
|
2650
|
+
over = _ref15.over;
|
|
2224
2651
|
resetState();
|
|
2225
2652
|
|
|
2226
2653
|
if (projected && over) {
|
|
2227
2654
|
var depth = projected.depth,
|
|
2228
2655
|
parentId = projected.parentId;
|
|
2229
2656
|
var clonedItems = JSON.parse(JSON.stringify(flattenTree(items)));
|
|
2230
|
-
var overIndex = clonedItems.findIndex(function (
|
|
2231
|
-
var id =
|
|
2657
|
+
var overIndex = clonedItems.findIndex(function (_ref16) {
|
|
2658
|
+
var id = _ref16.id;
|
|
2232
2659
|
return id === over.id;
|
|
2233
2660
|
});
|
|
2234
|
-
var activeIndex = clonedItems.findIndex(function (
|
|
2235
|
-
var id =
|
|
2661
|
+
var activeIndex = clonedItems.findIndex(function (_ref17) {
|
|
2662
|
+
var id = _ref17.id;
|
|
2236
2663
|
return id === active.id;
|
|
2237
2664
|
});
|
|
2238
2665
|
var activeTreeItem = clonedItems[activeIndex];
|
|
2239
2666
|
var maxDepth = getMaxDepth(activeTreeItem); // Un-merge and flatten
|
|
2240
2667
|
|
|
2241
2668
|
if (depth > 0 && depth >= maxDepth && (activeTreeItem === null || activeTreeItem === void 0 ? void 0 : activeTreeItem.children) !== null && activeTreeItem.children.length > 0) {
|
|
2242
|
-
var
|
|
2669
|
+
var _loop2 = function _loop2(i) {
|
|
2243
2670
|
var childId = activeTreeItem.children[i].id;
|
|
2244
|
-
var childIndex = clonedItems.findIndex(function (
|
|
2245
|
-
var id =
|
|
2671
|
+
var childIndex = clonedItems.findIndex(function (_ref18) {
|
|
2672
|
+
var id = _ref18.id;
|
|
2246
2673
|
return id === childId;
|
|
2247
2674
|
});
|
|
2248
2675
|
clonedItems[childIndex].parentId = parentId;
|
|
@@ -2250,7 +2677,7 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2250
2677
|
};
|
|
2251
2678
|
|
|
2252
2679
|
for (var i = 0; i < activeTreeItem.children.length; i += 1) {
|
|
2253
|
-
|
|
2680
|
+
_loop2(i);
|
|
2254
2681
|
}
|
|
2255
2682
|
|
|
2256
2683
|
activeTreeItem.children = [];
|
|
@@ -2264,96 +2691,113 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2264
2691
|
var newItems = buildTree(sortedItems);
|
|
2265
2692
|
setItems(newItems);
|
|
2266
2693
|
}
|
|
2267
|
-
}
|
|
2268
|
-
|
|
2269
|
-
function handleDragCancel() {
|
|
2694
|
+
}, [projected, items, resetState, sortable.arrayMove, buildTree, setItems]);
|
|
2695
|
+
var handleDragCancel = React.useCallback(function () {
|
|
2270
2696
|
resetState();
|
|
2271
|
-
}
|
|
2272
|
-
|
|
2273
|
-
function handleRemove(id) {
|
|
2697
|
+
}, [resetState]);
|
|
2698
|
+
var handleRemove = React.useCallback(function (id) {
|
|
2274
2699
|
setItems(function (newItems) {
|
|
2275
2700
|
return removeItem(newItems, id);
|
|
2276
2701
|
});
|
|
2277
|
-
}
|
|
2278
|
-
|
|
2279
|
-
function handleCollapse(id) {
|
|
2702
|
+
}, [setItems, removeItem]);
|
|
2703
|
+
var handleCollapse = React.useCallback(function (id) {
|
|
2280
2704
|
setItems(function (newItems) {
|
|
2281
2705
|
return setProperty(newItems, id, 'collapsed', function (value) {
|
|
2282
2706
|
return !value;
|
|
2283
2707
|
});
|
|
2284
2708
|
});
|
|
2285
|
-
}
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
|
|
2291
|
-
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
|
|
2295
|
-
|
|
2296
|
-
|
|
2297
|
-
|
|
2298
|
-
|
|
2299
|
-
|
|
2300
|
-
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2307
|
-
|
|
2308
|
-
|
|
2309
|
-
|
|
2310
|
-
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2319
|
-
|
|
2320
|
-
|
|
2321
|
-
|
|
2322
|
-
|
|
2323
|
-
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
|
|
2334
|
-
|
|
2335
|
-
|
|
2336
|
-
|
|
2337
|
-
|
|
2338
|
-
|
|
2339
|
-
|
|
2340
|
-
|
|
2341
|
-
|
|
2342
|
-
|
|
2343
|
-
|
|
2344
|
-
|
|
2709
|
+
}, [setItems, setProperty]);
|
|
2710
|
+
return /*#__PURE__*/React__default["default"].createElement(core$1.DndContext, {
|
|
2711
|
+
announcements: announcements,
|
|
2712
|
+
sensors: sensors,
|
|
2713
|
+
collisionDetection: core$1.closestCenter,
|
|
2714
|
+
measuring: measuring,
|
|
2715
|
+
onDragStart: handleDragStart,
|
|
2716
|
+
onDragMove: handleDragMove,
|
|
2717
|
+
onDragOver: handleDragOver,
|
|
2718
|
+
onDragEnd: handleDragEnd,
|
|
2719
|
+
onDragCancel: handleDragCancel
|
|
2720
|
+
}, /*#__PURE__*/React__default["default"].createElement(sortable.SortableContext, {
|
|
2721
|
+
items: sortedIds,
|
|
2722
|
+
strategy: sortable.verticalListSortingStrategy
|
|
2723
|
+
}, flattenedItems.map(function (_ref19, idx) {
|
|
2724
|
+
var _flattenedItems, _ref22;
|
|
2725
|
+
|
|
2726
|
+
var id = _ref19.id,
|
|
2727
|
+
_ref19$children = _ref19.children,
|
|
2728
|
+
children = _ref19$children === void 0 ? [] : _ref19$children,
|
|
2729
|
+
collapsed = _ref19.collapsed,
|
|
2730
|
+
depth = _ref19.depth;
|
|
2731
|
+
var screenValue = defaultItems.find(function (_ref20) {
|
|
2732
|
+
var _ref20$id = _ref20.id,
|
|
2733
|
+
defaultId = _ref20$id === void 0 ? null : _ref20$id;
|
|
2734
|
+
return defaultId === id;
|
|
2735
|
+
});
|
|
2736
|
+
var next = ((_flattenedItems = flattenedItems[idx + 1]) === null || _flattenedItems === void 0 ? void 0 : _flattenedItems.parentId) || null;
|
|
2737
|
+
var isCollapsed = collapsed && children.length > 0;
|
|
2738
|
+
var onCollapse = collapsible && children.length ? function () {
|
|
2739
|
+
return handleCollapse(id);
|
|
2740
|
+
} : null;
|
|
2741
|
+
var currentDepth = id === activeId && projected ? projected.depth : depth;
|
|
2742
|
+
var childCount = getChildCount(items, id);
|
|
2743
|
+
var childValue = childCount > 0 && collapsed ? defaultItems.slice().reverse().find(function (_ref21) {
|
|
2744
|
+
var _ref21$parentId = _ref21.parentId,
|
|
2745
|
+
parentId = _ref21$parentId === void 0 ? null : _ref21$parentId;
|
|
2746
|
+
return parentId === id;
|
|
2747
|
+
}) : null;
|
|
2748
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2749
|
+
className: classNames__default["default"]([styles$5.item, (_ref22 = {}, _defineProperty__default["default"](_ref22, styles$5.parent, onCollapse !== null && !collapsed), _defineProperty__default["default"](_ref22, styles$5.group, depth === 1), _defineProperty__default["default"](_ref22, styles$5.isLastChild, next === null), _ref22)]),
|
|
2750
|
+
key: id
|
|
2751
|
+
}, /*#__PURE__*/React__default["default"].createElement(SortableTreeItem, {
|
|
2752
|
+
key: id,
|
|
2753
|
+
id: id,
|
|
2754
|
+
depth: currentDepth,
|
|
2755
|
+
indentationWidth: indentationWidth,
|
|
2756
|
+
indicator: indicator,
|
|
2757
|
+
collapsed: isCollapsed,
|
|
2758
|
+
onCollapse: onCollapse,
|
|
2759
|
+
onRemove: removable ? function () {
|
|
2760
|
+
return handleRemove(id);
|
|
2761
|
+
} : undefined,
|
|
2762
|
+
childCount: childCount,
|
|
2763
|
+
component: component,
|
|
2764
|
+
value: (screenValue === null || screenValue === void 0 ? void 0 : screenValue.value) || null,
|
|
2765
|
+
onClickItem: onClickItem,
|
|
2766
|
+
index: idx,
|
|
2767
|
+
childValue: (childValue === null || childValue === void 0 ? void 0 : childValue.value) || null
|
|
2768
|
+
}));
|
|
2769
|
+
}), /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement(core$1.DragOverlay, {
|
|
2770
|
+
dropAnimation: dropAnimation,
|
|
2771
|
+
modifiers: indicator ? [adjustTranslate] : undefined
|
|
2772
|
+
}, activeId && activeItem ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2773
|
+
className: styles$5.item,
|
|
2774
|
+
key: activeId
|
|
2775
|
+
}, /*#__PURE__*/React__default["default"].createElement(SortableTreeItem, {
|
|
2776
|
+
id: activeId,
|
|
2777
|
+
depth: activeItem.depth,
|
|
2778
|
+
clone: true,
|
|
2779
|
+
childCount: getChildCount(items, activeId) + 1,
|
|
2780
|
+
indentationWidth: indentationWidth,
|
|
2781
|
+
component: component,
|
|
2782
|
+
value: activeValue === null || activeValue === void 0 ? void 0 : activeValue.value,
|
|
2783
|
+
onClickItem: onClickItem,
|
|
2784
|
+
index: flattenedItems.findIndex(function (_ref23) {
|
|
2785
|
+
var id = _ref23.id;
|
|
2786
|
+
return activeId === id;
|
|
2787
|
+
})
|
|
2788
|
+
})) : null), document.body)));
|
|
2345
2789
|
};
|
|
2790
|
+
|
|
2346
2791
|
SortableTree.propTypes = propTypes$8;
|
|
2347
2792
|
SortableTree.defaultProps = defaultProps$8;
|
|
2348
2793
|
|
|
2349
|
-
var _excluded$2 = ["className", "screen", "type", "onClick"],
|
|
2350
|
-
_excluded2 = ["id", "screen"];
|
|
2794
|
+
var _excluded$2 = ["className", "screen", "type", "onClick", "active", "href"],
|
|
2795
|
+
_excluded2 = ["id", "screen", "href"];
|
|
2351
2796
|
var propTypes$7 = {
|
|
2352
2797
|
items: core.PropTypes.menuItems,
|
|
2353
2798
|
withPreview: PropTypes__default["default"].bool,
|
|
2354
2799
|
withPlaceholder: PropTypes__default["default"].bool,
|
|
2355
2800
|
settings: PropTypes__default["default"].oneOfType([PropTypes__default["default"].node, PropTypes__default["default"].func]),
|
|
2356
|
-
previewMinWidth: PropTypes__default["default"].number,
|
|
2357
2801
|
sortable: PropTypes__default["default"].bool,
|
|
2358
2802
|
isTree: PropTypes__default["default"].bool,
|
|
2359
2803
|
isVertical: PropTypes__default["default"].bool,
|
|
@@ -2370,7 +2814,6 @@ var defaultProps$7 = {
|
|
|
2370
2814
|
withPreview: false,
|
|
2371
2815
|
withPlaceholder: false,
|
|
2372
2816
|
settings: null,
|
|
2373
|
-
previewMinWidth: 320,
|
|
2374
2817
|
sortable: false,
|
|
2375
2818
|
isTree: false,
|
|
2376
2819
|
isVertical: false,
|
|
@@ -2384,13 +2827,12 @@ var defaultProps$7 = {
|
|
|
2384
2827
|
};
|
|
2385
2828
|
|
|
2386
2829
|
var ScreensMenu = function ScreensMenu(_ref) {
|
|
2387
|
-
var
|
|
2830
|
+
var _ref8;
|
|
2388
2831
|
|
|
2389
2832
|
var items = _ref.items,
|
|
2390
2833
|
withPreview = _ref.withPreview,
|
|
2391
2834
|
withPlaceholder = _ref.withPlaceholder,
|
|
2392
2835
|
settings = _ref.settings,
|
|
2393
|
-
previewMinWidth = _ref.previewMinWidth,
|
|
2394
2836
|
isVertical = _ref.isVertical,
|
|
2395
2837
|
noWrap = _ref.noWrap,
|
|
2396
2838
|
className = _ref.className,
|
|
@@ -2401,125 +2843,78 @@ var ScreensMenu = function ScreensMenu(_ref) {
|
|
|
2401
2843
|
isTree = _ref.isTree,
|
|
2402
2844
|
onClickItem = _ref.onClickItem,
|
|
2403
2845
|
onOrderChange = _ref.onOrderChange;
|
|
2404
|
-
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
|
-
|
|
2411
|
-
|
|
2412
|
-
|
|
2413
|
-
|
|
2414
|
-
|
|
2415
|
-
|
|
2416
|
-
itemWidth = _ref2$width === void 0 ? 0 : _ref2$width,
|
|
2417
|
-
_ref2$height = _ref2.height,
|
|
2418
|
-
itemHeight = _ref2$height === void 0 ? 0 : _ref2$height;
|
|
2419
|
-
|
|
2420
|
-
var ratio = itemHeight !== 0 && itemWidth !== 0 ? itemHeight / itemWidth : 2 / 3;
|
|
2421
|
-
|
|
2422
|
-
var _getSizeWithinBounds = size.getSizeWithinBounds(previewMinWidth, previewMinWidth * ratio, itemWidth, itemHeight),
|
|
2423
|
-
previewScale = _getSizeWithinBounds.scale;
|
|
2424
|
-
|
|
2425
|
-
return {
|
|
2426
|
-
width: previewMinWidth,
|
|
2427
|
-
height: previewMinWidth * ratio,
|
|
2428
|
-
transform: "scale(".concat(previewScale, ", ").concat(previewScale, ")")
|
|
2429
|
-
};
|
|
2430
|
-
}, [previewMinWidth, contentRect]);
|
|
2431
|
-
var treeStyle = React.useMemo(function () {
|
|
2432
|
-
var _ref3 = columnRect || {},
|
|
2433
|
-
_ref3$width = _ref3.width,
|
|
2434
|
-
itemWidth = _ref3$width === void 0 ? 0 : _ref3$width;
|
|
2435
|
-
|
|
2436
|
-
var itemHeight = itemWidth * 3 / 2;
|
|
2437
|
-
var ratio = itemHeight !== 0 && itemWidth !== 0 ? itemHeight / itemWidth : 0;
|
|
2438
|
-
|
|
2439
|
-
var _getSizeWithinBounds2 = size.getSizeWithinBounds(previewMinWidth, previewMinWidth * ratio, itemWidth, itemHeight),
|
|
2440
|
-
scaledWidth = _getSizeWithinBounds2.width,
|
|
2441
|
-
scaledHeight = _getSizeWithinBounds2.height,
|
|
2442
|
-
previewScale = _getSizeWithinBounds2.scale;
|
|
2443
|
-
|
|
2444
|
-
return {
|
|
2445
|
-
width: previewMinWidth,
|
|
2446
|
-
height: previewMinWidth * ratio,
|
|
2447
|
-
transform: "scale(".concat(previewScale, ", ").concat(previewScale, ")"),
|
|
2448
|
-
scale: previewScale,
|
|
2449
|
-
scaledWidth: scaledWidth,
|
|
2450
|
-
scaledHeight: scaledHeight
|
|
2451
|
-
};
|
|
2452
|
-
}, [previewMinWidth, columnRect]);
|
|
2453
|
-
var itemsElements = !isTree ? items.map(function (_ref4, index) {
|
|
2454
|
-
var _ref5;
|
|
2455
|
-
|
|
2456
|
-
var _ref4$className = _ref4.className,
|
|
2457
|
-
itemCustomClassName = _ref4$className === void 0 ? null : _ref4$className,
|
|
2458
|
-
screen = _ref4.screen,
|
|
2459
|
-
type = _ref4.type,
|
|
2460
|
-
_ref4$onClick = _ref4.onClick,
|
|
2461
|
-
onClick = _ref4$onClick === void 0 ? null : _ref4$onClick,
|
|
2462
|
-
item = _objectWithoutProperties__default["default"](_ref4, _excluded$2);
|
|
2846
|
+
var itemsElements = !isTree ? items.map(function (_ref2, index) {
|
|
2847
|
+
var _ref3;
|
|
2848
|
+
|
|
2849
|
+
var _ref2$className = _ref2.className,
|
|
2850
|
+
itemCustomClassName = _ref2$className === void 0 ? null : _ref2$className,
|
|
2851
|
+
screen = _ref2.screen,
|
|
2852
|
+
type = _ref2.type,
|
|
2853
|
+
_ref2$onClick = _ref2.onClick,
|
|
2854
|
+
onClick = _ref2$onClick === void 0 ? null : _ref2$onClick,
|
|
2855
|
+
active = _ref2.active,
|
|
2856
|
+
href = _ref2.href,
|
|
2857
|
+
item = _objectWithoutProperties__default["default"](_ref2, _excluded$2);
|
|
2463
2858
|
|
|
2464
2859
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
|
2465
2860
|
key: item.id,
|
|
2466
|
-
className: classNames__default["default"]([styles$
|
|
2467
|
-
"data-screen-id": item.id
|
|
2468
|
-
ref: index === 0 ? containerRef : null
|
|
2861
|
+
className: classNames__default["default"]([styles$6.item, (_ref3 = {}, _defineProperty__default["default"](_ref3, itemClassName, itemClassName !== null), _defineProperty__default["default"](_ref3, itemCustomClassName, itemCustomClassName !== null), _ref3)]),
|
|
2862
|
+
"data-screen-id": item.id
|
|
2469
2863
|
}, /*#__PURE__*/React__default["default"].createElement(ScreenWithPreview, {
|
|
2470
2864
|
index: index,
|
|
2471
|
-
screen: _objectSpread__default["default"](_objectSpread__default["default"]({}, screen),
|
|
2865
|
+
screen: withPlaceholder ? _objectSpread__default["default"](_objectSpread__default["default"]({}, screen), {}, {
|
|
2472
2866
|
type: type
|
|
2473
|
-
} :
|
|
2474
|
-
|
|
2475
|
-
|
|
2867
|
+
}) : screen,
|
|
2868
|
+
href: href,
|
|
2869
|
+
className: buttonClassName,
|
|
2870
|
+
active: active,
|
|
2476
2871
|
withPreview: withPreview,
|
|
2477
2872
|
withPlaceholder: withPlaceholder,
|
|
2478
2873
|
onClick: onClick,
|
|
2479
2874
|
onClickItem: onClickItem
|
|
2480
2875
|
}), settings !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2481
|
-
className: classNames__default["default"]([_defineProperty__default["default"]({}, settingsClassName, settingsClassName !== null), styles$
|
|
2876
|
+
className: classNames__default["default"]([_defineProperty__default["default"]({}, settingsClassName, settingsClassName !== null), styles$6.settings, 'p-2'])
|
|
2482
2877
|
}, isFunction__default["default"](settings) ? settings(index) : settings) : null);
|
|
2483
2878
|
}) : [];
|
|
2484
2879
|
var sortableItems = React.useMemo(function () {
|
|
2485
|
-
return isTree ? items.map(function (
|
|
2486
|
-
var id =
|
|
2487
|
-
|
|
2488
|
-
screen =
|
|
2489
|
-
|
|
2880
|
+
return isTree ? items.map(function (_ref5) {
|
|
2881
|
+
var id = _ref5.id,
|
|
2882
|
+
_ref5$screen = _ref5.screen,
|
|
2883
|
+
screen = _ref5$screen === void 0 ? {} : _ref5$screen,
|
|
2884
|
+
href = _ref5.href,
|
|
2885
|
+
props = _objectWithoutProperties__default["default"](_ref5, _excluded2);
|
|
2490
2886
|
|
|
2491
2887
|
var _screen$parentId = screen.parentId,
|
|
2492
2888
|
parentId = _screen$parentId === void 0 ? null : _screen$parentId,
|
|
2493
2889
|
_screen$group = screen.group,
|
|
2494
2890
|
group = _screen$group === void 0 ? {} : _screen$group;
|
|
2495
2891
|
|
|
2496
|
-
var
|
|
2497
|
-
|
|
2498
|
-
collapsed =
|
|
2892
|
+
var _ref6 = group || {},
|
|
2893
|
+
_ref6$collapsed = _ref6.collapsed,
|
|
2894
|
+
collapsed = _ref6$collapsed === void 0 ? true : _ref6$collapsed;
|
|
2499
2895
|
|
|
2500
|
-
return
|
|
2896
|
+
return {
|
|
2501
2897
|
id: id,
|
|
2502
2898
|
parentId: parentId,
|
|
2503
2899
|
collapsed: collapsed,
|
|
2504
|
-
value: {
|
|
2900
|
+
value: _objectSpread__default["default"]({
|
|
2505
2901
|
id: id,
|
|
2506
|
-
screen: screen
|
|
2507
|
-
|
|
2508
|
-
|
|
2509
|
-
|
|
2510
|
-
|
|
2902
|
+
screen: screen,
|
|
2903
|
+
href: href
|
|
2904
|
+
}, props)
|
|
2905
|
+
};
|
|
2906
|
+
}, []) : items.map(function (_ref7) {
|
|
2907
|
+
var id = _ref7.id;
|
|
2511
2908
|
return {
|
|
2512
2909
|
id: id
|
|
2513
2910
|
};
|
|
2514
2911
|
});
|
|
2515
|
-
}, [items, isTree]);
|
|
2912
|
+
}, [items, isTree, items.length]);
|
|
2516
2913
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2517
|
-
className: classNames__default["default"]([styles$
|
|
2518
|
-
ref: columnRef
|
|
2914
|
+
className: classNames__default["default"]([styles$6.container, (_ref8 = {}, _defineProperty__default["default"](_ref8, styles$6.noWrap, noWrap), _defineProperty__default["default"](_ref8, styles$6.isVertical, isVertical), _defineProperty__default["default"](_ref8, styles$6.isTree, isTree), _defineProperty__default["default"](_ref8, styles$6.withPlaceholder, withPlaceholder), _defineProperty__default["default"](_ref8, className, className), _ref8)])
|
|
2519
2915
|
}, isTree && !sortable ? /*#__PURE__*/React__default["default"].createElement(SortableTree, {
|
|
2520
2916
|
items: sortableItems,
|
|
2521
2917
|
component: ScreenWithPreview,
|
|
2522
|
-
itemStyle: treeStyle,
|
|
2523
2918
|
onClickItem: onClickItem,
|
|
2524
2919
|
onChange: onOrderChange
|
|
2525
2920
|
}) : null, !isTree && sortable && items.length > 1 ? /*#__PURE__*/React__default["default"].createElement(reactSortablejs.ReactSortable, {
|
|
@@ -2529,16 +2924,16 @@ var ScreensMenu = function ScreensMenu(_ref) {
|
|
|
2529
2924
|
delayOnTouchStart: true,
|
|
2530
2925
|
delay: 2,
|
|
2531
2926
|
tag: "ul",
|
|
2532
|
-
className: styles$
|
|
2927
|
+
className: styles$6.items
|
|
2533
2928
|
}, itemsElements) : null, !isTree && (!sortable || items.length < 1) ? /*#__PURE__*/React__default["default"].createElement("ul", {
|
|
2534
|
-
className: styles$
|
|
2929
|
+
className: styles$6.items
|
|
2535
2930
|
}, itemsElements) : null);
|
|
2536
2931
|
};
|
|
2537
2932
|
|
|
2538
2933
|
ScreensMenu.propTypes = propTypes$7;
|
|
2539
2934
|
ScreensMenu.defaultProps = defaultProps$7;
|
|
2540
2935
|
|
|
2541
|
-
var styles$2 = {"container":"micromag-editor-menus-screen-types-container","row":"micromag-editor-menus-screen-types-row","title":"micromag-editor-menus-screen-types-title"};
|
|
2936
|
+
var styles$2 = {"container":"micromag-editor-menus-screen-types-container","row":"micromag-editor-menus-screen-types-row","title":"micromag-editor-menus-screen-types-title","screen":"micromag-editor-menus-screen-types-screen"};
|
|
2542
2937
|
|
|
2543
2938
|
var propTypes$6 = {
|
|
2544
2939
|
screens: core.PropTypes.screenDefinitions,
|
|
@@ -2634,13 +3029,12 @@ var ScreenTypes = function ScreenTypes(_ref) {
|
|
|
2634
3029
|
}, /*#__PURE__*/React__default["default"].createElement(ScreensMenu, {
|
|
2635
3030
|
items: items,
|
|
2636
3031
|
withPlaceholder: true,
|
|
2637
|
-
itemClassName: classNames__default["default"](['border', 'rounded', {
|
|
3032
|
+
itemClassName: classNames__default["default"]([styles$2.screen, 'border', 'rounded', {
|
|
2638
3033
|
'border-secondary': selectedTypes === null,
|
|
2639
3034
|
'border-dark': selectedTypes !== null,
|
|
2640
3035
|
'bg-secondary': selectedTypes === null,
|
|
2641
3036
|
'text-secondary': selectedTypes !== null
|
|
2642
3037
|
}]),
|
|
2643
|
-
previewMinWidth: 100,
|
|
2644
3038
|
onClickItem: onClickItem
|
|
2645
3039
|
})));
|
|
2646
3040
|
})));
|
|
@@ -2784,54 +3178,62 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2784
3178
|
return newScreen;
|
|
2785
3179
|
}, [value, onChange, isTheme, screens, currentScreenId, setCreateModalOpened]);
|
|
2786
3180
|
var onOrderChange = React.useCallback(function (listItems) {
|
|
2787
|
-
|
|
2788
|
-
|
|
2789
|
-
|
|
2790
|
-
|
|
2791
|
-
|
|
3181
|
+
var ids = listItems.map(function (_ref7) {
|
|
3182
|
+
var id = _ref7.id;
|
|
3183
|
+
return id;
|
|
3184
|
+
});
|
|
3185
|
+
var screenProps = listItems.map(function (_ref8) {
|
|
3186
|
+
var id = _ref8.id,
|
|
3187
|
+
_ref8$props = _ref8.props,
|
|
3188
|
+
props = _ref8$props === void 0 ? null : _ref8$props;
|
|
2792
3189
|
return {
|
|
2793
3190
|
id: id,
|
|
2794
3191
|
props: props
|
|
2795
3192
|
};
|
|
2796
3193
|
});
|
|
2797
|
-
var hasScreenProps = (screenProps.filter(function (
|
|
2798
|
-
var props =
|
|
3194
|
+
var hasScreenProps = (screenProps.filter(function (_ref9) {
|
|
3195
|
+
var props = _ref9.props;
|
|
2799
3196
|
return props !== null;
|
|
2800
3197
|
}) || []).length > 0;
|
|
2801
3198
|
|
|
2802
|
-
var
|
|
2803
|
-
|
|
2804
|
-
currentScreens =
|
|
3199
|
+
var _ref10 = value || {},
|
|
3200
|
+
_ref10$components = _ref10.components,
|
|
3201
|
+
currentScreens = _ref10$components === void 0 ? [] : _ref10$components;
|
|
2805
3202
|
|
|
2806
|
-
var currentIds = currentScreens.map(function (
|
|
2807
|
-
var id =
|
|
3203
|
+
var currentIds = currentScreens.map(function (_ref11) {
|
|
3204
|
+
var id = _ref11.id;
|
|
2808
3205
|
return id;
|
|
2809
3206
|
});
|
|
2810
|
-
var sameOrder = listItems.reduce(function (same,
|
|
2811
|
-
var id =
|
|
3207
|
+
var sameOrder = listItems.reduce(function (same, _ref12, index) {
|
|
3208
|
+
var id = _ref12.id;
|
|
2812
3209
|
return same && id === currentIds[index];
|
|
2813
3210
|
}, true);
|
|
2814
3211
|
|
|
2815
3212
|
if (!sameOrder || hasScreenProps) {
|
|
3213
|
+
console.log('order', ids);
|
|
3214
|
+
|
|
2816
3215
|
var newValue = _objectSpread__default["default"](_objectSpread__default["default"]({}, value), {}, {
|
|
2817
|
-
components: _toConsumableArray__default["default"](currentScreens)
|
|
2818
|
-
|
|
2819
|
-
|
|
2820
|
-
|
|
2821
|
-
|
|
2822
|
-
|
|
2823
|
-
|
|
2824
|
-
|
|
2825
|
-
|
|
3216
|
+
components: _toConsumableArray__default["default"](currentScreens).sort(function (_ref13, _ref14) {
|
|
3217
|
+
var idA = _ref13.id;
|
|
3218
|
+
var idB = _ref14.id;
|
|
3219
|
+
var indexA = ids.indexOf(idA);
|
|
3220
|
+
var indexB = ids.indexOf(idB);
|
|
3221
|
+
|
|
3222
|
+
if (indexA === indexB) {
|
|
3223
|
+
return 0;
|
|
3224
|
+
}
|
|
3225
|
+
|
|
3226
|
+
return indexA > indexB ? 1 : -1;
|
|
3227
|
+
}).map(function (_ref15) {
|
|
2826
3228
|
var _screenProps$find;
|
|
2827
3229
|
|
|
2828
|
-
var id =
|
|
2829
|
-
props = _objectWithoutProperties__default["default"](
|
|
3230
|
+
var id = _ref15.id,
|
|
3231
|
+
props = _objectWithoutProperties__default["default"](_ref15, _excluded$1);
|
|
2830
3232
|
|
|
2831
3233
|
return _objectSpread__default["default"](_objectSpread__default["default"]({
|
|
2832
3234
|
id: id
|
|
2833
|
-
}, props), (_screenProps$find = screenProps.find(function (
|
|
2834
|
-
var propsId =
|
|
3235
|
+
}, props), (_screenProps$find = screenProps.find(function (_ref16) {
|
|
3236
|
+
var propsId = _ref16.id;
|
|
2835
3237
|
return propsId === id;
|
|
2836
3238
|
})) === null || _screenProps$find === void 0 ? void 0 : _screenProps$find.props);
|
|
2837
3239
|
})
|
|
@@ -2844,8 +3246,8 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2844
3246
|
}, [value, onChange]);
|
|
2845
3247
|
var onClickScreenType = React.useCallback(function (definition) {
|
|
2846
3248
|
setCreateModalOpened(false);
|
|
2847
|
-
var currentScreen = isTheme ? screens.find(function (
|
|
2848
|
-
var type =
|
|
3249
|
+
var currentScreen = isTheme ? screens.find(function (_ref17) {
|
|
3250
|
+
var type = _ref17.type;
|
|
2849
3251
|
return type === definition.id;
|
|
2850
3252
|
}) || null : null;
|
|
2851
3253
|
|
|
@@ -2863,16 +3265,17 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2863
3265
|
}, [setCreateModalOpened]);
|
|
2864
3266
|
var onCreateModalRequestClose = React.useCallback(function () {
|
|
2865
3267
|
return setCreateModalOpened(false);
|
|
2866
|
-
}, [setCreateModalOpened]);
|
|
3268
|
+
}, [setCreateModalOpened]); // console.log(screens);
|
|
3269
|
+
|
|
2867
3270
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2868
|
-
className: classNames__default["default"](['d-flex', 'flex-column', styles$
|
|
3271
|
+
className: classNames__default["default"](['d-flex', 'flex-column', styles$7.container, className])
|
|
2869
3272
|
}, /*#__PURE__*/React__default["default"].createElement(components.Navbar, {
|
|
2870
3273
|
compact: true,
|
|
2871
3274
|
noWrap: true,
|
|
2872
3275
|
withoutCollapse: true,
|
|
2873
|
-
className: classNames__default["default"](['sticky-top', styles$
|
|
3276
|
+
className: classNames__default["default"](['sticky-top', styles$7.navbar])
|
|
2874
3277
|
}, /*#__PURE__*/React__default["default"].createElement("strong", {
|
|
2875
|
-
className: "mb-0
|
|
3278
|
+
className: "mb-0 me-auto"
|
|
2876
3279
|
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
2877
3280
|
id: "jf+4Hq",
|
|
2878
3281
|
defaultMessage: [{
|
|
@@ -2890,9 +3293,9 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2890
3293
|
className: "flex-grow-1 d-flex w-100 p-2"
|
|
2891
3294
|
}, /*#__PURE__*/React__default["default"].createElement(reactRouter.Route, {
|
|
2892
3295
|
path: [routes.screen, routes.home],
|
|
2893
|
-
render: function render(
|
|
2894
|
-
var
|
|
2895
|
-
screenId =
|
|
3296
|
+
render: function render(_ref18) {
|
|
3297
|
+
var _ref18$match$params$s = _ref18.match.params.screen,
|
|
3298
|
+
screenId = _ref18$match$params$s === void 0 ? null : _ref18$match$params$s;
|
|
2896
3299
|
return screens.length > 0 ? /*#__PURE__*/React__default["default"].createElement(ScreensMenu, {
|
|
2897
3300
|
items: screens.map(function (it) {
|
|
2898
3301
|
return {
|
|
@@ -2925,8 +3328,8 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2925
3328
|
})));
|
|
2926
3329
|
}
|
|
2927
3330
|
})), createModalOpened ? /*#__PURE__*/React__default["default"].createElement(ScreenTypesModal, {
|
|
2928
|
-
selectedTypes: isTheme ? screens.map(function (
|
|
2929
|
-
var type =
|
|
3331
|
+
selectedTypes: isTheme ? screens.map(function (_ref19) {
|
|
3332
|
+
var type = _ref19.type;
|
|
2930
3333
|
return type;
|
|
2931
3334
|
}) : [],
|
|
2932
3335
|
onClickScreenType: onClickScreenType,
|
|
@@ -3072,21 +3475,21 @@ var Editor = function Editor(_ref) {
|
|
|
3072
3475
|
return /*#__PURE__*/React__default["default"].createElement(contexts.ModalsProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.PanelsProvider, null, /*#__PURE__*/React__default["default"].createElement(contexts.ScreenSizeProvider, {
|
|
3073
3476
|
size: screenSize
|
|
3074
3477
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3075
|
-
className: classNames__default["default"]([styles$
|
|
3076
|
-
return styles$
|
|
3077
|
-
}) : null, (_ref5 = {}, _defineProperty__default["default"](_ref5, styles$
|
|
3478
|
+
className: classNames__default["default"]([styles$i.container, screenSize !== null ? screenSize.screens.map(function (screenName) {
|
|
3479
|
+
return styles$i["screen-".concat(screenName)];
|
|
3480
|
+
}) : null, (_ref5 = {}, _defineProperty__default["default"](_ref5, styles$i.fullscreen, fullscreen), _defineProperty__default["default"](_ref5, className, className), _ref5)]),
|
|
3078
3481
|
ref: refContainer
|
|
3079
3482
|
}, /*#__PURE__*/React__default["default"].createElement(components.Navbar, {
|
|
3080
3483
|
theme: "light",
|
|
3081
3484
|
compact: true,
|
|
3082
3485
|
noWrap: true,
|
|
3083
3486
|
withoutCollapse: true,
|
|
3084
|
-
className: styles$
|
|
3487
|
+
className: styles$i.top
|
|
3085
3488
|
}, mobileView !== 'screens' ? /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
3086
3489
|
size: "sm",
|
|
3087
3490
|
theme: "secondary",
|
|
3088
3491
|
onClick: onClickScreens,
|
|
3089
|
-
className: "
|
|
3492
|
+
className: "me-auto"
|
|
3090
3493
|
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
3091
3494
|
id: "wkysUu",
|
|
3092
3495
|
defaultMessage: [{
|
|
@@ -3114,9 +3517,9 @@ var Editor = function Editor(_ref) {
|
|
|
3114
3517
|
"value": "View screen"
|
|
3115
3518
|
}]
|
|
3116
3519
|
})) : null), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3117
|
-
className: styles$
|
|
3520
|
+
className: styles$i.inner
|
|
3118
3521
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3119
|
-
className: classNames__default["default"]([styles$
|
|
3522
|
+
className: classNames__default["default"]([styles$i.left, _defineProperty__default["default"]({}, styles$i.visible, !isMobile || mobileView === 'screens')]),
|
|
3120
3523
|
ref: refScreensContainer
|
|
3121
3524
|
}, /*#__PURE__*/React__default["default"].createElement(EditorScreens, {
|
|
3122
3525
|
value: story,
|
|
@@ -3126,24 +3529,25 @@ var Editor = function Editor(_ref) {
|
|
|
3126
3529
|
onChange: onStoryChange,
|
|
3127
3530
|
onClickScreen: onClickScreen,
|
|
3128
3531
|
isVertical: !isMobile,
|
|
3129
|
-
className: styles$
|
|
3532
|
+
className: styles$i.inner,
|
|
3130
3533
|
isTree: true
|
|
3131
3534
|
})), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3132
|
-
className: classNames__default["default"]([styles$
|
|
3535
|
+
className: classNames__default["default"]([styles$i.center, _defineProperty__default["default"]({}, styles$i.visible, !isMobile || mobileView === 'preview')])
|
|
3133
3536
|
}, /*#__PURE__*/React__default["default"].createElement(EditorPreview, {
|
|
3134
3537
|
value: story,
|
|
3135
3538
|
isTheme: isTheme,
|
|
3136
3539
|
viewerTheme: viewerTheme,
|
|
3137
|
-
className: styles$
|
|
3138
|
-
onScreenChange: onPreviewScreenChange
|
|
3540
|
+
className: styles$i.preview,
|
|
3541
|
+
onScreenChange: onPreviewScreenChange,
|
|
3542
|
+
onChange: onStoryChange
|
|
3139
3543
|
})), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3140
|
-
className: classNames__default["default"]([styles$
|
|
3544
|
+
className: classNames__default["default"]([styles$i.right, _defineProperty__default["default"]({}, styles$i.visible, !isMobile || mobileView === 'form')])
|
|
3141
3545
|
}, /*#__PURE__*/React__default["default"].createElement(EditForm, {
|
|
3142
3546
|
key: screenId,
|
|
3143
3547
|
value: story,
|
|
3144
3548
|
isTheme: isTheme,
|
|
3145
3549
|
onChange: onStoryChange,
|
|
3146
|
-
className: styles$
|
|
3550
|
+
className: styles$i.inner
|
|
3147
3551
|
}))), /*#__PURE__*/React__default["default"].createElement(components.Modals, null)))));
|
|
3148
3552
|
};
|
|
3149
3553
|
|