@micromag/editor 0.2.412 → 0.3.1
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 -9
- package/es/index.js +1259 -833
- package/lib/index.js +1256 -829
- 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;
|
|
149
|
+
|
|
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
|
+
}
|
|
104
185
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
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;
|
|
313
|
+
|
|
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);
|
|
266
330
|
|
|
267
|
-
|
|
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$d = {"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
|
-
|
|
664
|
+
Breadcrumb.propTypes = propTypes$l;
|
|
665
|
+
Breadcrumb.defaultProps = defaultProps$l;
|
|
465
666
|
|
|
466
|
-
|
|
467
|
-
className: classNames__default["default"]([styles$d.container, _defineProperty__default["default"]({}, className, className)])
|
|
468
|
-
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
469
|
-
className: styles$d.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
|
-
};
|
|
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"};
|
|
478
668
|
|
|
479
|
-
ScreenForm.propTypes = propTypes$l;
|
|
480
|
-
ScreenForm.defaultProps = defaultProps$l;
|
|
481
|
-
|
|
482
|
-
/* eslint-disable react/jsx-props-no-spreading */
|
|
483
669
|
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;
|
|
506
|
-
|
|
507
|
-
var styles$c = {"container":"micromag-editor-modals-delete-screen-container","description":"micromag-editor-modals-delete-screen-description","actions":"micromag-editor-modals-delete-screen-actions"};
|
|
508
|
-
|
|
509
|
-
var propTypes$j = {
|
|
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
|
|
@@ -529,10 +689,10 @@ var DeleteScreenModal = function DeleteScreenModal(_ref) {
|
|
|
529
689
|
"value": "Delete screen"
|
|
530
690
|
}]
|
|
531
691
|
}),
|
|
532
|
-
className: classNames__default["default"]([styles$
|
|
692
|
+
className: classNames__default["default"]([styles$e.container, _defineProperty__default["default"]({}, className, className)]),
|
|
533
693
|
onClickClose: onCancel
|
|
534
694
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
535
|
-
className: styles$
|
|
695
|
+
className: styles$e.description
|
|
536
696
|
}, /*#__PURE__*/React__default["default"].createElement(components.Label, null, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
537
697
|
id: "q/tLk0",
|
|
538
698
|
defaultMessage: [{
|
|
@@ -540,10 +700,10 @@ var DeleteScreenModal = function DeleteScreenModal(_ref) {
|
|
|
540
700
|
"value": "Are you sure you want to delete this screen?"
|
|
541
701
|
}]
|
|
542
702
|
}))), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
543
|
-
className: styles$
|
|
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$b = {"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;
|
|
611
773
|
|
|
612
|
-
|
|
613
|
-
|
|
774
|
+
var definition = type !== null ? screensManager.getDefinition(type) : null;
|
|
775
|
+
return definition != null ? getScreenFieldsWithStates(definition) : [];
|
|
776
|
+
}, [screensManager, screen]); // Get transition value
|
|
777
|
+
|
|
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
|
|
|
813
|
-
var styles$
|
|
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
|
+
|
|
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,
|
|
@@ -884,78 +1095,418 @@ var DeviceIcons = /*#__PURE__*/Object.freeze({
|
|
|
884
1095
|
Mobile: MobileIcon
|
|
885
1096
|
});
|
|
886
1097
|
|
|
887
|
-
var styles$
|
|
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
|
};
|
|
899
1110
|
|
|
900
|
-
var DeviceButton = function DeviceButton(_ref) {
|
|
901
|
-
var device = _ref.device,
|
|
902
|
-
className = _ref.className,
|
|
903
|
-
iconComponents = _ref.iconComponents,
|
|
904
|
-
props = _objectWithoutProperties__default["default"](_ref, _excluded$6);
|
|
1111
|
+
var DeviceButton = function DeviceButton(_ref) {
|
|
1112
|
+
var device = _ref.device,
|
|
1113
|
+
className = _ref.className,
|
|
1114
|
+
iconComponents = _ref.iconComponents,
|
|
1115
|
+
props = _objectWithoutProperties__default["default"](_ref, _excluded$6);
|
|
1116
|
+
|
|
1117
|
+
var DeviceIcon = utils.getComponentFromName(device, iconComponents, DesktopIcon);
|
|
1118
|
+
return /*#__PURE__*/React__default["default"].createElement(components.Button, Object.assign({
|
|
1119
|
+
className: classNames__default["default"]([styles$b.container, _defineProperty__default["default"]({}, className, className !== null)])
|
|
1120
|
+
}, props), /*#__PURE__*/React__default["default"].createElement(DeviceIcon, {
|
|
1121
|
+
className: styles$b.icon
|
|
1122
|
+
}));
|
|
1123
|
+
};
|
|
1124
|
+
|
|
1125
|
+
DeviceButton.propTypes = propTypes$g;
|
|
1126
|
+
DeviceButton.defaultProps = defaultProps$g;
|
|
1127
|
+
|
|
1128
|
+
var _excluded$5 = ["id"];
|
|
1129
|
+
var propTypes$f = {
|
|
1130
|
+
items: core.PropTypes.menuItems,
|
|
1131
|
+
className: PropTypes__default["default"].string,
|
|
1132
|
+
onClickItem: PropTypes__default["default"].func
|
|
1133
|
+
};
|
|
1134
|
+
var defaultProps$f = {
|
|
1135
|
+
items: [],
|
|
1136
|
+
className: null,
|
|
1137
|
+
onClickItem: null
|
|
1138
|
+
};
|
|
1139
|
+
|
|
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;
|
|
905
1301
|
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
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
|
+
}))));
|
|
912
1356
|
};
|
|
913
1357
|
|
|
914
|
-
|
|
915
|
-
|
|
1358
|
+
ScreenWithPreview.propTypes = propTypes$d;
|
|
1359
|
+
ScreenWithPreview.defaultProps = defaultProps$d;
|
|
916
1360
|
|
|
917
|
-
var
|
|
918
|
-
|
|
919
|
-
|
|
1361
|
+
var propTypes$c = {
|
|
1362
|
+
screen: core.PropTypes.screen.isRequired,
|
|
1363
|
+
screenState: PropTypes__default["default"].string,
|
|
1364
|
+
value: core.PropTypes.story.isRequired,
|
|
920
1365
|
className: PropTypes__default["default"].string,
|
|
921
|
-
|
|
1366
|
+
onChange: PropTypes__default["default"].func
|
|
922
1367
|
};
|
|
923
|
-
var defaultProps$
|
|
924
|
-
|
|
1368
|
+
var defaultProps$c = {
|
|
1369
|
+
screenState: null,
|
|
925
1370
|
className: null,
|
|
926
|
-
|
|
1371
|
+
onChange: null
|
|
927
1372
|
};
|
|
928
1373
|
|
|
929
|
-
|
|
930
|
-
var
|
|
1374
|
+
function ScreenStates(_ref) {
|
|
1375
|
+
var screen = _ref.screen,
|
|
1376
|
+
value = _ref.value,
|
|
931
1377
|
className = _ref.className,
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
theme: "outline-secondary",
|
|
936
|
-
className: classNames__default["default"]([styles$a.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);
|
|
1378
|
+
onChange = _ref.onChange;
|
|
1379
|
+
var url = contexts.useUrlGenerator();
|
|
1380
|
+
var push = contexts.useRoutePush();
|
|
940
1381
|
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
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
|
+
};
|
|
1457
|
+
|
|
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),
|
|
944
1470
|
className: styles$a.button,
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
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
|
-
}
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
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
|
+
// }}
|
|
1501
|
+
|
|
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$8.viewerContainer
|
|
1087
|
-
}, /*#__PURE__*/React__default["default"].createElement(viewer.Viewer, {
|
|
1088
|
-
story: valueParsed,
|
|
1089
|
-
storyIsParsed: true,
|
|
1090
|
-
screen: screenId,
|
|
1091
|
-
className: styles$8.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$7 = {"container":"micromag-editor-screens-container","navbar":"micromag-editor-screens-navbar"};
|
|
1105
|
-
|
|
1106
|
-
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","isVertical":"micromag-editor-menus-screens-isVertical","noWrap":"micromag-editor-menus-screens-noWrap","withPlaceholder":"micromag-editor-menus-screens-withPlaceholder"};
|
|
1107
|
-
|
|
1108
|
-
var styles$5 = {"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$4 = {"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$4.container, 'rounded', (_ref2 = {}, _defineProperty__default["default"](_ref2, styles$4.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
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
className: classNames__default["default"]([styles$4.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
|
|
1209
|
-
};
|
|
1210
|
-
|
|
1211
|
-
var ScreenWithPreview = function ScreenWithPreview(_ref) {
|
|
1212
|
-
var _ref3;
|
|
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$5.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
|
-
}
|
|
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
|
+
})))))));
|
|
1691
|
+
};
|
|
1692
|
+
|
|
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$5.preview,
|
|
1246
|
-
style: previewStyle
|
|
1247
|
-
}, /*#__PURE__*/React__default["default"].createElement(components.ScreenPreview, {
|
|
1248
|
-
screen: screen,
|
|
1249
|
-
width: width,
|
|
1250
|
-
height: height,
|
|
1251
|
-
className: styles$5.screen
|
|
1252
|
-
})) : null, withPlaceholder && !withPreview ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1253
|
-
className: styles$5.placeholder,
|
|
1254
|
-
style: previewStyle
|
|
1255
|
-
}, /*#__PURE__*/React__default["default"].createElement(components.ScreenPlaceholder, {
|
|
1256
|
-
screen: screen,
|
|
1257
|
-
width: width,
|
|
1258
|
-
height: height,
|
|
1259
|
-
className: styles$5.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) {
|
|
@@ -1661,9 +2095,13 @@ var sortableTreeKeyboardCoordinates = function sortableTreeKeyboardCoordinates(c
|
|
|
1661
2095
|
};
|
|
1662
2096
|
};
|
|
1663
2097
|
|
|
1664
|
-
var styles$
|
|
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"};
|
|
2099
|
+
|
|
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"};
|
|
2101
|
+
|
|
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"};
|
|
1665
2103
|
|
|
1666
|
-
var _excluded$4 = ["childCount", "clone", "depth", "disableSelection", "disableInteraction", "ghost", "handleProps", "indentationWidth", "indicator", "collapsed", "onCollapse", "onRemove", "onClick", "style", "value", "wrapperRef", "showId", "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"];
|
|
1667
2105
|
var propTypes$a = {
|
|
1668
2106
|
childCount: PropTypes__default["default"].number,
|
|
1669
2107
|
clone: PropTypes__default["default"].bool,
|
|
@@ -1688,6 +2126,8 @@ var propTypes$a = {
|
|
|
1688
2126
|
transform: PropTypes__default["default"].string.isRequired
|
|
1689
2127
|
}),
|
|
1690
2128
|
showId: PropTypes__default["default"].bool,
|
|
2129
|
+
showCount: PropTypes__default["default"].bool,
|
|
2130
|
+
showCollapsedCount: PropTypes__default["default"].bool,
|
|
1691
2131
|
children: PropTypes__default["default"].node
|
|
1692
2132
|
};
|
|
1693
2133
|
var defaultProps$a = {
|
|
@@ -1706,6 +2146,8 @@ var defaultProps$a = {
|
|
|
1706
2146
|
wrapperRef: null,
|
|
1707
2147
|
style: null,
|
|
1708
2148
|
showId: false,
|
|
2149
|
+
showCount: false,
|
|
2150
|
+
showCollapsedCount: false,
|
|
1709
2151
|
children: null
|
|
1710
2152
|
};
|
|
1711
2153
|
var SortableTreeItemActions = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
@@ -1728,22 +2170,22 @@ var SortableTreeItemActions = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
|
1728
2170
|
_ref.value;
|
|
1729
2171
|
var wrapperRef = _ref.wrapperRef;
|
|
1730
2172
|
_ref.showId;
|
|
1731
|
-
var
|
|
2173
|
+
var showCount = _ref.showCount,
|
|
2174
|
+
showCollapsedCount = _ref.showCollapsedCount,
|
|
2175
|
+
children = _ref.children,
|
|
1732
2176
|
props = _objectWithoutProperties__default["default"](_ref, _excluded$4);
|
|
1733
2177
|
|
|
1734
|
-
return /*#__PURE__*/React__default["default"].createElement("
|
|
2178
|
+
return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
1735
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)]),
|
|
1736
2180
|
ref: wrapperRef,
|
|
1737
|
-
style:
|
|
1738
|
-
marginLeft: "".concat(indentationWidth * depth, "px")
|
|
1739
|
-
|
|
2181
|
+
style: {
|
|
2182
|
+
marginLeft: "".concat(indentationWidth * depth, "px"),
|
|
2183
|
+
marginRight: "".concat(5 * depth, "px")
|
|
2184
|
+
}
|
|
1740
2185
|
}, props), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
1741
2186
|
className: styles$3.inner,
|
|
1742
2187
|
ref: ref,
|
|
1743
|
-
style:
|
|
1744
|
-
width: style.width,
|
|
1745
|
-
height: style.height
|
|
1746
|
-
}
|
|
2188
|
+
style: style
|
|
1747
2189
|
}, /*#__PURE__*/React__default["default"].createElement("button", Object.assign({
|
|
1748
2190
|
className: classNames__default["default"]([styles$3.button, styles$3.handle]),
|
|
1749
2191
|
type: "button"
|
|
@@ -1755,27 +2197,24 @@ var SortableTreeItemActions = /*#__PURE__*/React.forwardRef(function (_ref, ref)
|
|
|
1755
2197
|
onClick: onRemove
|
|
1756
2198
|
}, /*#__PURE__*/React__default["default"].createElement(reactFontawesome.FontAwesomeIcon, {
|
|
1757
2199
|
icon: freeSolidSvgIcons.faTimes
|
|
1758
|
-
})) : null, clone && childCount && childCount > 1 ? /*#__PURE__*/React__default["default"].createElement("span", {
|
|
2200
|
+
})) : null, clone && showCount && childCount && childCount > 1 ? /*#__PURE__*/React__default["default"].createElement("span", {
|
|
1759
2201
|
className: styles$3.count
|
|
1760
|
-
}, childCount) : null, onCollapse && 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", {
|
|
1761
2203
|
className: styles$3.collapsedCount
|
|
1762
2204
|
}, childCount) : null, onCollapse && depth === 0 ? /*#__PURE__*/React__default["default"].createElement("button", {
|
|
1763
2205
|
type: "button",
|
|
1764
|
-
onClick: onCollapse,
|
|
1765
|
-
className: classNames__default["default"](styles$3.button, styles$3.collapse, collapsed && styles$3.collapsed)
|
|
1766
|
-
style: {
|
|
1767
|
-
width: style.width
|
|
1768
|
-
}
|
|
2206
|
+
onClick: onCollapse,
|
|
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", "onCollapse", "onClickItem"];
|
|
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,
|
|
@@ -1792,16 +2231,23 @@ var propTypes$9 = {
|
|
|
1792
2231
|
scale: PropTypes__default["default"].number.isRequired
|
|
1793
2232
|
}),
|
|
1794
2233
|
smallScale: PropTypes__default["default"].number,
|
|
2234
|
+
collapsed: PropTypes__default["default"].bool,
|
|
1795
2235
|
onCollapse: PropTypes__default["default"].func,
|
|
1796
|
-
onClickItem: PropTypes__default["default"].func
|
|
2236
|
+
onClickItem: PropTypes__default["default"].func,
|
|
2237
|
+
// eslint-disable-next-line react/forbid-prop-types
|
|
2238
|
+
childValue: PropTypes__default["default"].object,
|
|
2239
|
+
isLastChild: PropTypes__default["default"].bool
|
|
1797
2240
|
};
|
|
1798
2241
|
var defaultProps$9 = {
|
|
1799
2242
|
component: null,
|
|
1800
2243
|
value: null,
|
|
1801
2244
|
style: null,
|
|
1802
2245
|
smallScale: 0.75,
|
|
2246
|
+
collapsed: false,
|
|
1803
2247
|
onCollapse: null,
|
|
1804
|
-
onClickItem: null
|
|
2248
|
+
onClickItem: null,
|
|
2249
|
+
childValue: null,
|
|
2250
|
+
isLastChild: false
|
|
1805
2251
|
};
|
|
1806
2252
|
|
|
1807
2253
|
var animateLayoutChanges = function animateLayoutChanges(_ref) {
|
|
@@ -1815,12 +2261,15 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1815
2261
|
index = _ref2.index,
|
|
1816
2262
|
depth = _ref2.depth,
|
|
1817
2263
|
Component = _ref2.component,
|
|
1818
|
-
value = _ref2.value
|
|
1819
|
-
|
|
1820
|
-
|
|
2264
|
+
value = _ref2.value;
|
|
2265
|
+
_ref2.style;
|
|
2266
|
+
_ref2.smallScale;
|
|
2267
|
+
var collapsed = _ref2.collapsed,
|
|
1821
2268
|
onCollapse = _ref2.onCollapse,
|
|
1822
2269
|
onClickItem = _ref2.onClickItem,
|
|
1823
|
-
|
|
2270
|
+
childValue = _ref2.childValue;
|
|
2271
|
+
_ref2.isLastChild;
|
|
2272
|
+
var props = _objectWithoutProperties__default["default"](_ref2, _excluded$3);
|
|
1824
2273
|
|
|
1825
2274
|
var _useSortable = sortable.useSortable({
|
|
1826
2275
|
id: id,
|
|
@@ -1835,28 +2284,17 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1835
2284
|
transform = _useSortable.transform,
|
|
1836
2285
|
transition = _useSortable.transition;
|
|
1837
2286
|
|
|
1838
|
-
var
|
|
1839
|
-
var _itemStyle$scaledWidt = itemStyle.scaledWidth,
|
|
1840
|
-
scaledWidth = _itemStyle$scaledWidt === void 0 ? 100 : _itemStyle$scaledWidt,
|
|
1841
|
-
_itemStyle$scaledHeig = itemStyle.scaledHeight,
|
|
1842
|
-
scaledHeight = _itemStyle$scaledHeig === void 0 ? 66 : _itemStyle$scaledHeig,
|
|
1843
|
-
_itemStyle$scale = itemStyle.scale,
|
|
1844
|
-
scale = _itemStyle$scale === void 0 ? 1 : _itemStyle$scale;
|
|
1845
|
-
var extraHeight = hasCollapse ? 30 : 0;
|
|
2287
|
+
var timeout = React.useRef(null);
|
|
1846
2288
|
var actionsStyle = {
|
|
1847
|
-
width: depth === 0 ? scaledWidth : scaledWidth * smallScale,
|
|
1848
|
-
height: depth === 0 ? scaledHeight + extraHeight : scaledHeight * smallScale,
|
|
1849
2289
|
transform: utilities.CSS.Translate.toString(transform),
|
|
1850
2290
|
transition: transition
|
|
1851
2291
|
};
|
|
1852
|
-
var previewStyle = {
|
|
1853
|
-
width: itemStyle.width,
|
|
1854
|
-
height: itemStyle.height,
|
|
1855
|
-
transform: depth === 0 ? itemStyle.transform : "scale(".concat(scale * smallScale, ", ").concat(scale * smallScale, ")")
|
|
1856
|
-
};
|
|
1857
2292
|
|
|
1858
2293
|
var _ref3 = listeners || {},
|
|
1859
|
-
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;
|
|
1860
2298
|
|
|
1861
2299
|
var onClickAction = React.useCallback(function (e) {
|
|
1862
2300
|
if (onClickItem !== null) {
|
|
@@ -1864,10 +2302,28 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1864
2302
|
}
|
|
1865
2303
|
|
|
1866
2304
|
if (onPointerDown !== null) {
|
|
1867
|
-
|
|
2305
|
+
e.persist();
|
|
2306
|
+
timeout.current = setTimeout(function () {
|
|
2307
|
+
if (onPointerDown !== null) {
|
|
2308
|
+
onPointerDown(e);
|
|
2309
|
+
}
|
|
2310
|
+
|
|
2311
|
+
timeout.current = null;
|
|
2312
|
+
}, 200);
|
|
1868
2313
|
}
|
|
1869
2314
|
}, [value, index, onClickItem, onPointerDown]);
|
|
1870
|
-
|
|
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]);
|
|
2324
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2325
|
+
className: classNames__default["default"]([styles$4.container])
|
|
2326
|
+
}, /*#__PURE__*/React__default["default"].createElement(SortableTreeItemActions, Object.assign({
|
|
1871
2327
|
ref: setDraggableNodeRef,
|
|
1872
2328
|
wrapperRef: setDroppableNodeRef,
|
|
1873
2329
|
style: actionsStyle,
|
|
@@ -1876,13 +2332,18 @@ var SortableTreeItem = function SortableTreeItem(_ref2) {
|
|
|
1876
2332
|
disableSelection: iOS,
|
|
1877
2333
|
disableInteraction: isSorting,
|
|
1878
2334
|
handleProps: _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, attributes), listeners), {}, {
|
|
1879
|
-
onPointerDown: onClickAction
|
|
2335
|
+
onPointerDown: onClickAction,
|
|
2336
|
+
onPointerUp: cancellingPointerUp
|
|
1880
2337
|
}),
|
|
2338
|
+
collapsed: collapsed,
|
|
1881
2339
|
onCollapse: onCollapse
|
|
1882
|
-
}, props), Component !== null ? /*#__PURE__*/React__default["default"].createElement(
|
|
1883
|
-
|
|
1884
|
-
})) : 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));
|
|
1885
2345
|
};
|
|
2346
|
+
|
|
1886
2347
|
SortableTreeItem.propTypes = propTypes$9;
|
|
1887
2348
|
SortableTreeItem.defaultProps = defaultProps$9;
|
|
1888
2349
|
|
|
@@ -1904,18 +2365,6 @@ var initialItems = [{
|
|
|
1904
2365
|
id: 'Winter',
|
|
1905
2366
|
children: []
|
|
1906
2367
|
}]
|
|
1907
|
-
}, {
|
|
1908
|
-
id: 'About Us',
|
|
1909
|
-
children: []
|
|
1910
|
-
}, {
|
|
1911
|
-
id: 'My Account',
|
|
1912
|
-
children: [{
|
|
1913
|
-
id: 'Addresses',
|
|
1914
|
-
children: []
|
|
1915
|
-
}, {
|
|
1916
|
-
id: 'Order History',
|
|
1917
|
-
children: []
|
|
1918
|
-
}]
|
|
1919
2368
|
}];
|
|
1920
2369
|
var measuring = {
|
|
1921
2370
|
droppable: {
|
|
@@ -1942,7 +2391,6 @@ var propTypes$8 = {
|
|
|
1942
2391
|
indicator: PropTypes__default["default"].bool,
|
|
1943
2392
|
removable: PropTypes__default["default"].bool,
|
|
1944
2393
|
component: PropTypes__default["default"].func,
|
|
1945
|
-
itemStyle: PropTypes__default["default"].shape({}),
|
|
1946
2394
|
onClickItem: PropTypes__default["default"].func,
|
|
1947
2395
|
onChange: PropTypes__default["default"].func
|
|
1948
2396
|
};
|
|
@@ -1953,10 +2401,10 @@ var defaultProps$8 = {
|
|
|
1953
2401
|
indicator: false,
|
|
1954
2402
|
removable: false,
|
|
1955
2403
|
component: null,
|
|
1956
|
-
itemStyle: null,
|
|
1957
2404
|
onClickItem: null,
|
|
1958
2405
|
onChange: null
|
|
1959
2406
|
};
|
|
2407
|
+
|
|
1960
2408
|
var SortableTree = function SortableTree(_ref2) {
|
|
1961
2409
|
var collapsible = _ref2.collapsible,
|
|
1962
2410
|
defaultItems = _ref2.items,
|
|
@@ -1964,12 +2412,11 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
1964
2412
|
indentationWidth = _ref2.indentationWidth,
|
|
1965
2413
|
removable = _ref2.removable,
|
|
1966
2414
|
component = _ref2.component,
|
|
1967
|
-
itemStyle = _ref2.itemStyle,
|
|
1968
2415
|
onClickItem = _ref2.onClickItem,
|
|
1969
2416
|
onChange = _ref2.onChange;
|
|
1970
2417
|
|
|
1971
2418
|
var _useState = React.useState(function () {
|
|
1972
|
-
return defaultItems;
|
|
2419
|
+
return buildTree(defaultItems);
|
|
1973
2420
|
}),
|
|
1974
2421
|
_useState2 = _slicedToArray__default["default"](_useState, 2),
|
|
1975
2422
|
items = _useState2[0],
|
|
@@ -1993,11 +2440,20 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
1993
2440
|
var _useState9 = React.useState(null),
|
|
1994
2441
|
_useState10 = _slicedToArray__default["default"](_useState9, 2),
|
|
1995
2442
|
currentPosition = _useState10[0],
|
|
1996
|
-
setCurrentPosition = _useState10[1];
|
|
2443
|
+
setCurrentPosition = _useState10[1]; // Tree setup from list
|
|
1997
2444
|
|
|
1998
|
-
var flattenedItems = React.useMemo(function () {
|
|
1999
|
-
var flattenedTree = flattenTree(items); // console.log('yo', items, flattenedTree);
|
|
2000
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);
|
|
2001
2457
|
var collapsedItems = flattenedTree.reduce(function (acc, _ref3) {
|
|
2002
2458
|
var _ref3$children = _ref3.children,
|
|
2003
2459
|
children = _ref3$children === void 0 ? [] : _ref3$children,
|
|
@@ -2006,7 +2462,7 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2006
2462
|
return collapsed && children.length ? [].concat(_toConsumableArray__default["default"](acc), [id]) : acc;
|
|
2007
2463
|
}, []) || null;
|
|
2008
2464
|
return removeChildrenOf(flattenedTree, activeId ? [activeId].concat(_toConsumableArray__default["default"](collapsedItems)) : collapsedItems);
|
|
2009
|
-
}, [activeId, items]);
|
|
2465
|
+
}, [activeId, items, items.length]);
|
|
2010
2466
|
var projected = activeId && overId ? getProjection(flattenedItems, activeId, overId, offsetLeft, indentationWidth) : null;
|
|
2011
2467
|
var sensorContext = React.useRef({
|
|
2012
2468
|
items: flattenedItems,
|
|
@@ -2038,6 +2494,69 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2038
2494
|
offset: offsetLeft
|
|
2039
2495
|
};
|
|
2040
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
|
+
}
|
|
2559
|
+
|
|
2041
2560
|
var announcements = React.useMemo(function () {
|
|
2042
2561
|
return {
|
|
2043
2562
|
onDragStart: function onDragStart(id) {
|
|
@@ -2050,16 +2569,17 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2050
2569
|
return getMovementAnnouncement('onDragOver', id, currentOverId);
|
|
2051
2570
|
},
|
|
2052
2571
|
onDragEnd: function onDragEnd(id, currentOverId) {
|
|
2053
|
-
|
|
2572
|
+
var flat = flattenTree(items);
|
|
2573
|
+
|
|
2054
2574
|
if (onChange !== null) {
|
|
2055
|
-
onChange((
|
|
2056
|
-
var itemId =
|
|
2057
|
-
|
|
2058
|
-
children =
|
|
2059
|
-
|
|
2060
|
-
parentId =
|
|
2061
|
-
|
|
2062
|
-
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;
|
|
2063
2583
|
return {
|
|
2064
2584
|
id: itemId,
|
|
2065
2585
|
props: _objectSpread__default["default"](_objectSpread__default["default"]({}, (children || []).length > 0 ? {
|
|
@@ -2084,78 +2604,18 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2084
2604
|
return "Moving was cancelled. ".concat(id, " was dropped in its original position.");
|
|
2085
2605
|
}
|
|
2086
2606
|
};
|
|
2087
|
-
}, [flattenedItems, onChange]);
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
}
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
sensors: sensors,
|
|
2096
|
-
collisionDetection: core$1.closestCenter,
|
|
2097
|
-
measuring: measuring,
|
|
2098
|
-
onDragStart: handleDragStart,
|
|
2099
|
-
onDragMove: handleDragMove,
|
|
2100
|
-
onDragOver: handleDragOver,
|
|
2101
|
-
onDragEnd: handleDragEnd,
|
|
2102
|
-
onDragCancel: handleDragCancel
|
|
2103
|
-
}, /*#__PURE__*/React__default["default"].createElement(sortable.SortableContext, {
|
|
2104
|
-
items: sortedIds,
|
|
2105
|
-
strategy: sortable.verticalListSortingStrategy
|
|
2106
|
-
}, flattenedItems.map(function (_ref7, idx) {
|
|
2107
|
-
var id = _ref7.id,
|
|
2108
|
-
_ref7$children = _ref7.children,
|
|
2109
|
-
children = _ref7$children === void 0 ? [] : _ref7$children,
|
|
2110
|
-
collapsed = _ref7.collapsed,
|
|
2111
|
-
depth = _ref7.depth,
|
|
2112
|
-
_ref7$value = _ref7.value,
|
|
2113
|
-
value = _ref7$value === void 0 ? null : _ref7$value;
|
|
2114
|
-
return /*#__PURE__*/React__default["default"].createElement(SortableTreeItem, {
|
|
2115
|
-
key: id,
|
|
2116
|
-
id: id,
|
|
2117
|
-
depth: id === activeId && projected ? projected.depth : depth,
|
|
2118
|
-
indentationWidth: indentationWidth,
|
|
2119
|
-
indicator: indicator,
|
|
2120
|
-
collapsed: Boolean(collapsed && children.length),
|
|
2121
|
-
onCollapse: collapsible && children.length ? function () {
|
|
2122
|
-
return handleCollapse(id);
|
|
2123
|
-
} : undefined,
|
|
2124
|
-
onRemove: removable ? function () {
|
|
2125
|
-
return handleRemove(id);
|
|
2126
|
-
} : undefined,
|
|
2127
|
-
childCount: getChildCount(items, id),
|
|
2128
|
-
component: component,
|
|
2129
|
-
value: value,
|
|
2130
|
-
style: itemStyle,
|
|
2131
|
-
onClickItem: onClickItem,
|
|
2132
|
-
index: idx
|
|
2133
|
-
});
|
|
2134
|
-
}), /*#__PURE__*/reactDom.createPortal( /*#__PURE__*/React__default["default"].createElement(core$1.DragOverlay, {
|
|
2135
|
-
dropAnimation: dropAnimation,
|
|
2136
|
-
modifiers: indicator ? [adjustTranslate] : undefined
|
|
2137
|
-
}, activeId && activeItem ? /*#__PURE__*/React__default["default"].createElement(SortableTreeItem, {
|
|
2138
|
-
id: activeId,
|
|
2139
|
-
depth: activeItem.depth,
|
|
2140
|
-
clone: true,
|
|
2141
|
-
childCount: getChildCount(items, activeId) + 1,
|
|
2142
|
-
indentationWidth: indentationWidth,
|
|
2143
|
-
component: component,
|
|
2144
|
-
value: activeItem === null || activeItem === void 0 ? void 0 : activeItem.value,
|
|
2145
|
-
onClickItem: onClickItem,
|
|
2146
|
-
index: flattenedItems.findIndex(function (_ref8) {
|
|
2147
|
-
var id = _ref8.id;
|
|
2148
|
-
return activeId === id;
|
|
2149
|
-
}),
|
|
2150
|
-
style: itemStyle
|
|
2151
|
-
}) : null), document.body)));
|
|
2152
|
-
|
|
2153
|
-
function handleDragStart(_ref9) {
|
|
2154
|
-
var newActiveId = _ref9.active.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;
|
|
2611
|
+
return defaultId === activeId;
|
|
2612
|
+
});
|
|
2613
|
+
var handleDragStart = React.useCallback(function (_ref11) {
|
|
2614
|
+
var newActiveId = _ref11.active.id;
|
|
2155
2615
|
setActiveId(newActiveId);
|
|
2156
2616
|
setOverId(newActiveId);
|
|
2157
|
-
var newActiveItem = flattenedItems.find(function (
|
|
2158
|
-
var id =
|
|
2617
|
+
var newActiveItem = flattenedItems.find(function (_ref12) {
|
|
2618
|
+
var id = _ref12.id;
|
|
2159
2619
|
return id === newActiveId;
|
|
2160
2620
|
});
|
|
2161
2621
|
|
|
@@ -2167,53 +2627,49 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2167
2627
|
}
|
|
2168
2628
|
|
|
2169
2629
|
document.body.style.setProperty('cursor', 'grabbing');
|
|
2170
|
-
}
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
var delta = _ref11.delta;
|
|
2630
|
+
}, [flattenedItems, setActiveId, setOverId, setCurrentPosition]);
|
|
2631
|
+
var handleDragMove = React.useCallback(function (_ref13) {
|
|
2632
|
+
var delta = _ref13.delta;
|
|
2174
2633
|
setOffsetLeft(delta.x);
|
|
2175
|
-
}
|
|
2176
|
-
|
|
2177
|
-
function handleDragOver(_ref12) {
|
|
2634
|
+
}, [setOffsetLeft]);
|
|
2635
|
+
var handleDragOver = React.useCallback(function (_ref14) {
|
|
2178
2636
|
var _over$id;
|
|
2179
2637
|
|
|
2180
|
-
var over =
|
|
2638
|
+
var over = _ref14.over;
|
|
2181
2639
|
setOverId((_over$id = over === null || over === void 0 ? void 0 : over.id) !== null && _over$id !== void 0 ? _over$id : null);
|
|
2182
|
-
}
|
|
2183
|
-
|
|
2184
|
-
function resetState() {
|
|
2640
|
+
}, [setOverId]);
|
|
2641
|
+
var resetState = React.useCallback(function () {
|
|
2185
2642
|
setOverId(null);
|
|
2186
2643
|
setActiveId(null);
|
|
2187
2644
|
setOffsetLeft(0);
|
|
2188
2645
|
setCurrentPosition(null);
|
|
2189
2646
|
document.body.style.setProperty('cursor', '');
|
|
2190
|
-
}
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2194
|
-
over = _ref13.over;
|
|
2647
|
+
}, [setOverId, setActiveId, setOffsetLeft, setCurrentPosition]);
|
|
2648
|
+
var handleDragEnd = React.useCallback(function (_ref15) {
|
|
2649
|
+
var active = _ref15.active,
|
|
2650
|
+
over = _ref15.over;
|
|
2195
2651
|
resetState();
|
|
2196
2652
|
|
|
2197
2653
|
if (projected && over) {
|
|
2198
2654
|
var depth = projected.depth,
|
|
2199
2655
|
parentId = projected.parentId;
|
|
2200
2656
|
var clonedItems = JSON.parse(JSON.stringify(flattenTree(items)));
|
|
2201
|
-
var overIndex = clonedItems.findIndex(function (
|
|
2202
|
-
var id =
|
|
2657
|
+
var overIndex = clonedItems.findIndex(function (_ref16) {
|
|
2658
|
+
var id = _ref16.id;
|
|
2203
2659
|
return id === over.id;
|
|
2204
2660
|
});
|
|
2205
|
-
var activeIndex = clonedItems.findIndex(function (
|
|
2206
|
-
var id =
|
|
2661
|
+
var activeIndex = clonedItems.findIndex(function (_ref17) {
|
|
2662
|
+
var id = _ref17.id;
|
|
2207
2663
|
return id === active.id;
|
|
2208
2664
|
});
|
|
2209
2665
|
var activeTreeItem = clonedItems[activeIndex];
|
|
2210
2666
|
var maxDepth = getMaxDepth(activeTreeItem); // Un-merge and flatten
|
|
2211
2667
|
|
|
2212
2668
|
if (depth > 0 && depth >= maxDepth && (activeTreeItem === null || activeTreeItem === void 0 ? void 0 : activeTreeItem.children) !== null && activeTreeItem.children.length > 0) {
|
|
2213
|
-
var
|
|
2669
|
+
var _loop2 = function _loop2(i) {
|
|
2214
2670
|
var childId = activeTreeItem.children[i].id;
|
|
2215
|
-
var childIndex = clonedItems.findIndex(function (
|
|
2216
|
-
var id =
|
|
2671
|
+
var childIndex = clonedItems.findIndex(function (_ref18) {
|
|
2672
|
+
var id = _ref18.id;
|
|
2217
2673
|
return id === childId;
|
|
2218
2674
|
});
|
|
2219
2675
|
clonedItems[childIndex].parentId = parentId;
|
|
@@ -2221,7 +2677,7 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2221
2677
|
};
|
|
2222
2678
|
|
|
2223
2679
|
for (var i = 0; i < activeTreeItem.children.length; i += 1) {
|
|
2224
|
-
|
|
2680
|
+
_loop2(i);
|
|
2225
2681
|
}
|
|
2226
2682
|
|
|
2227
2683
|
activeTreeItem.children = [];
|
|
@@ -2235,96 +2691,113 @@ var SortableTree = function SortableTree(_ref2) {
|
|
|
2235
2691
|
var newItems = buildTree(sortedItems);
|
|
2236
2692
|
setItems(newItems);
|
|
2237
2693
|
}
|
|
2238
|
-
}
|
|
2239
|
-
|
|
2240
|
-
function handleDragCancel() {
|
|
2694
|
+
}, [projected, items, resetState, sortable.arrayMove, buildTree, setItems]);
|
|
2695
|
+
var handleDragCancel = React.useCallback(function () {
|
|
2241
2696
|
resetState();
|
|
2242
|
-
}
|
|
2243
|
-
|
|
2244
|
-
function handleRemove(id) {
|
|
2697
|
+
}, [resetState]);
|
|
2698
|
+
var handleRemove = React.useCallback(function (id) {
|
|
2245
2699
|
setItems(function (newItems) {
|
|
2246
2700
|
return removeItem(newItems, id);
|
|
2247
2701
|
});
|
|
2248
|
-
}
|
|
2249
|
-
|
|
2250
|
-
function handleCollapse(id) {
|
|
2702
|
+
}, [setItems, removeItem]);
|
|
2703
|
+
var handleCollapse = React.useCallback(function (id) {
|
|
2251
2704
|
setItems(function (newItems) {
|
|
2252
2705
|
return setProperty(newItems, id, 'collapsed', function (value) {
|
|
2253
2706
|
return !value;
|
|
2254
2707
|
});
|
|
2255
2708
|
});
|
|
2256
|
-
}
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
|
|
2267
|
-
|
|
2268
|
-
|
|
2269
|
-
|
|
2270
|
-
|
|
2271
|
-
|
|
2272
|
-
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
|
|
2278
|
-
|
|
2279
|
-
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2283
|
-
|
|
2284
|
-
|
|
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
|
-
|
|
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)));
|
|
2316
2789
|
};
|
|
2790
|
+
|
|
2317
2791
|
SortableTree.propTypes = propTypes$8;
|
|
2318
2792
|
SortableTree.defaultProps = defaultProps$8;
|
|
2319
2793
|
|
|
2320
|
-
var _excluded$2 = ["className", "screen", "type", "onClick"],
|
|
2321
|
-
_excluded2 = ["id", "screen"];
|
|
2794
|
+
var _excluded$2 = ["className", "screen", "type", "onClick", "active", "href"],
|
|
2795
|
+
_excluded2 = ["id", "screen", "href"];
|
|
2322
2796
|
var propTypes$7 = {
|
|
2323
2797
|
items: core.PropTypes.menuItems,
|
|
2324
2798
|
withPreview: PropTypes__default["default"].bool,
|
|
2325
2799
|
withPlaceholder: PropTypes__default["default"].bool,
|
|
2326
|
-
settings: PropTypes__default["default"].node,
|
|
2327
|
-
previewMinWidth: PropTypes__default["default"].number,
|
|
2800
|
+
settings: PropTypes__default["default"].oneOfType([PropTypes__default["default"].node, PropTypes__default["default"].func]),
|
|
2328
2801
|
sortable: PropTypes__default["default"].bool,
|
|
2329
2802
|
isTree: PropTypes__default["default"].bool,
|
|
2330
2803
|
isVertical: PropTypes__default["default"].bool,
|
|
@@ -2341,7 +2814,6 @@ var defaultProps$7 = {
|
|
|
2341
2814
|
withPreview: false,
|
|
2342
2815
|
withPlaceholder: false,
|
|
2343
2816
|
settings: null,
|
|
2344
|
-
previewMinWidth: 320,
|
|
2345
2817
|
sortable: false,
|
|
2346
2818
|
isTree: false,
|
|
2347
2819
|
isVertical: false,
|
|
@@ -2355,13 +2827,12 @@ var defaultProps$7 = {
|
|
|
2355
2827
|
};
|
|
2356
2828
|
|
|
2357
2829
|
var ScreensMenu = function ScreensMenu(_ref) {
|
|
2358
|
-
var
|
|
2830
|
+
var _ref8;
|
|
2359
2831
|
|
|
2360
2832
|
var items = _ref.items,
|
|
2361
2833
|
withPreview = _ref.withPreview,
|
|
2362
2834
|
withPlaceholder = _ref.withPlaceholder,
|
|
2363
2835
|
settings = _ref.settings,
|
|
2364
|
-
previewMinWidth = _ref.previewMinWidth,
|
|
2365
2836
|
isVertical = _ref.isVertical,
|
|
2366
2837
|
noWrap = _ref.noWrap,
|
|
2367
2838
|
className = _ref.className,
|
|
@@ -2372,78 +2843,31 @@ var ScreensMenu = function ScreensMenu(_ref) {
|
|
|
2372
2843
|
isTree = _ref.isTree,
|
|
2373
2844
|
onClickItem = _ref.onClickItem,
|
|
2374
2845
|
onOrderChange = _ref.onOrderChange;
|
|
2375
|
-
|
|
2376
|
-
|
|
2377
|
-
|
|
2378
|
-
|
|
2379
|
-
|
|
2380
|
-
|
|
2381
|
-
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
|
|
2387
|
-
itemWidth = _ref2$width === void 0 ? 0 : _ref2$width,
|
|
2388
|
-
_ref2$height = _ref2.height,
|
|
2389
|
-
itemHeight = _ref2$height === void 0 ? 0 : _ref2$height;
|
|
2390
|
-
|
|
2391
|
-
var ratio = itemHeight !== 0 && itemWidth !== 0 ? itemHeight / itemWidth : 2 / 3;
|
|
2392
|
-
|
|
2393
|
-
var _getSizeWithinBounds = size.getSizeWithinBounds(previewMinWidth, previewMinWidth * ratio, itemWidth, itemHeight),
|
|
2394
|
-
previewScale = _getSizeWithinBounds.scale;
|
|
2395
|
-
|
|
2396
|
-
return {
|
|
2397
|
-
width: previewMinWidth,
|
|
2398
|
-
height: previewMinWidth * ratio,
|
|
2399
|
-
transform: "scale(".concat(previewScale, ", ").concat(previewScale, ")")
|
|
2400
|
-
};
|
|
2401
|
-
}, [previewMinWidth, contentRect]);
|
|
2402
|
-
var treeStyle = React.useMemo(function () {
|
|
2403
|
-
var _ref3 = columnRect || {},
|
|
2404
|
-
_ref3$width = _ref3.width,
|
|
2405
|
-
itemWidth = _ref3$width === void 0 ? 0 : _ref3$width;
|
|
2406
|
-
|
|
2407
|
-
var itemHeight = itemWidth * 3 / 2;
|
|
2408
|
-
var ratio = itemHeight !== 0 && itemWidth !== 0 ? itemHeight / itemWidth : 0;
|
|
2409
|
-
|
|
2410
|
-
var _getSizeWithinBounds2 = size.getSizeWithinBounds(previewMinWidth, previewMinWidth * ratio, itemWidth, itemHeight),
|
|
2411
|
-
scaledWidth = _getSizeWithinBounds2.width,
|
|
2412
|
-
scaledHeight = _getSizeWithinBounds2.height,
|
|
2413
|
-
previewScale = _getSizeWithinBounds2.scale;
|
|
2414
|
-
|
|
2415
|
-
return {
|
|
2416
|
-
width: previewMinWidth,
|
|
2417
|
-
height: previewMinWidth * ratio,
|
|
2418
|
-
transform: "scale(".concat(previewScale, ", ").concat(previewScale, ")"),
|
|
2419
|
-
scale: previewScale,
|
|
2420
|
-
scaledWidth: scaledWidth,
|
|
2421
|
-
scaledHeight: scaledHeight
|
|
2422
|
-
};
|
|
2423
|
-
}, [previewMinWidth, columnRect]);
|
|
2424
|
-
var itemsElements = !isTree ? items.map(function (_ref4, index) {
|
|
2425
|
-
var _ref5;
|
|
2426
|
-
|
|
2427
|
-
var _ref4$className = _ref4.className,
|
|
2428
|
-
itemCustomClassName = _ref4$className === void 0 ? null : _ref4$className,
|
|
2429
|
-
screen = _ref4.screen,
|
|
2430
|
-
type = _ref4.type,
|
|
2431
|
-
_ref4$onClick = _ref4.onClick,
|
|
2432
|
-
onClick = _ref4$onClick === void 0 ? null : _ref4$onClick,
|
|
2433
|
-
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);
|
|
2434
2858
|
|
|
2435
2859
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
|
2436
2860
|
key: item.id,
|
|
2437
|
-
className: classNames__default["default"]([styles$6.item, (
|
|
2438
|
-
"data-screen-id": item.id
|
|
2439
|
-
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
|
|
2440
2863
|
}, /*#__PURE__*/React__default["default"].createElement(ScreenWithPreview, {
|
|
2441
2864
|
index: index,
|
|
2442
|
-
screen: _objectSpread__default["default"](_objectSpread__default["default"]({}, screen),
|
|
2865
|
+
screen: withPlaceholder ? _objectSpread__default["default"](_objectSpread__default["default"]({}, screen), {}, {
|
|
2443
2866
|
type: type
|
|
2444
|
-
} :
|
|
2445
|
-
|
|
2446
|
-
|
|
2867
|
+
}) : screen,
|
|
2868
|
+
href: href,
|
|
2869
|
+
className: buttonClassName,
|
|
2870
|
+
active: active,
|
|
2447
2871
|
withPreview: withPreview,
|
|
2448
2872
|
withPlaceholder: withPlaceholder,
|
|
2449
2873
|
onClick: onClick,
|
|
@@ -2453,44 +2877,44 @@ var ScreensMenu = function ScreensMenu(_ref) {
|
|
|
2453
2877
|
}, isFunction__default["default"](settings) ? settings(index) : settings) : null);
|
|
2454
2878
|
}) : [];
|
|
2455
2879
|
var sortableItems = React.useMemo(function () {
|
|
2456
|
-
return isTree ? items.map(function (
|
|
2457
|
-
var id =
|
|
2458
|
-
|
|
2459
|
-
screen =
|
|
2460
|
-
|
|
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);
|
|
2461
2886
|
|
|
2462
2887
|
var _screen$parentId = screen.parentId,
|
|
2463
2888
|
parentId = _screen$parentId === void 0 ? null : _screen$parentId,
|
|
2464
2889
|
_screen$group = screen.group,
|
|
2465
2890
|
group = _screen$group === void 0 ? {} : _screen$group;
|
|
2466
2891
|
|
|
2467
|
-
var
|
|
2468
|
-
|
|
2469
|
-
collapsed =
|
|
2892
|
+
var _ref6 = group || {},
|
|
2893
|
+
_ref6$collapsed = _ref6.collapsed,
|
|
2894
|
+
collapsed = _ref6$collapsed === void 0 ? true : _ref6$collapsed;
|
|
2470
2895
|
|
|
2471
|
-
return
|
|
2896
|
+
return {
|
|
2472
2897
|
id: id,
|
|
2473
2898
|
parentId: parentId,
|
|
2474
2899
|
collapsed: collapsed,
|
|
2475
|
-
value: {
|
|
2900
|
+
value: _objectSpread__default["default"]({
|
|
2476
2901
|
id: id,
|
|
2477
|
-
screen: screen
|
|
2478
|
-
|
|
2479
|
-
|
|
2480
|
-
|
|
2481
|
-
|
|
2902
|
+
screen: screen,
|
|
2903
|
+
href: href
|
|
2904
|
+
}, props)
|
|
2905
|
+
};
|
|
2906
|
+
}, []) : items.map(function (_ref7) {
|
|
2907
|
+
var id = _ref7.id;
|
|
2482
2908
|
return {
|
|
2483
2909
|
id: id
|
|
2484
2910
|
};
|
|
2485
2911
|
});
|
|
2486
|
-
}, [items, isTree]);
|
|
2912
|
+
}, [items, isTree, items.length]);
|
|
2487
2913
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2488
|
-
className: classNames__default["default"]([styles$6.container, (
|
|
2489
|
-
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)])
|
|
2490
2915
|
}, isTree && !sortable ? /*#__PURE__*/React__default["default"].createElement(SortableTree, {
|
|
2491
2916
|
items: sortableItems,
|
|
2492
2917
|
component: ScreenWithPreview,
|
|
2493
|
-
itemStyle: treeStyle,
|
|
2494
2918
|
onClickItem: onClickItem,
|
|
2495
2919
|
onChange: onOrderChange
|
|
2496
2920
|
}) : null, !isTree && sortable && items.length > 1 ? /*#__PURE__*/React__default["default"].createElement(reactSortablejs.ReactSortable, {
|
|
@@ -2509,7 +2933,7 @@ var ScreensMenu = function ScreensMenu(_ref) {
|
|
|
2509
2933
|
ScreensMenu.propTypes = propTypes$7;
|
|
2510
2934
|
ScreensMenu.defaultProps = defaultProps$7;
|
|
2511
2935
|
|
|
2512
|
-
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"};
|
|
2513
2937
|
|
|
2514
2938
|
var propTypes$6 = {
|
|
2515
2939
|
screens: core.PropTypes.screenDefinitions,
|
|
@@ -2605,13 +3029,12 @@ var ScreenTypes = function ScreenTypes(_ref) {
|
|
|
2605
3029
|
}, /*#__PURE__*/React__default["default"].createElement(ScreensMenu, {
|
|
2606
3030
|
items: items,
|
|
2607
3031
|
withPlaceholder: true,
|
|
2608
|
-
itemClassName: classNames__default["default"](['border', 'rounded', {
|
|
3032
|
+
itemClassName: classNames__default["default"]([styles$2.screen, 'border', 'rounded', {
|
|
2609
3033
|
'border-secondary': selectedTypes === null,
|
|
2610
3034
|
'border-dark': selectedTypes !== null,
|
|
2611
3035
|
'bg-secondary': selectedTypes === null,
|
|
2612
3036
|
'text-secondary': selectedTypes !== null
|
|
2613
3037
|
}]),
|
|
2614
|
-
previewMinWidth: 100,
|
|
2615
3038
|
onClickItem: onClickItem
|
|
2616
3039
|
})));
|
|
2617
3040
|
})));
|
|
@@ -2787,6 +3210,8 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2787
3210
|
}, true);
|
|
2788
3211
|
|
|
2789
3212
|
if (!sameOrder || hasScreenProps) {
|
|
3213
|
+
console.log('order', ids);
|
|
3214
|
+
|
|
2790
3215
|
var newValue = _objectSpread__default["default"](_objectSpread__default["default"]({}, value), {}, {
|
|
2791
3216
|
components: _toConsumableArray__default["default"](currentScreens).sort(function (_ref13, _ref14) {
|
|
2792
3217
|
var idA = _ref13.id;
|
|
@@ -2840,7 +3265,8 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2840
3265
|
}, [setCreateModalOpened]);
|
|
2841
3266
|
var onCreateModalRequestClose = React.useCallback(function () {
|
|
2842
3267
|
return setCreateModalOpened(false);
|
|
2843
|
-
}, [setCreateModalOpened]);
|
|
3268
|
+
}, [setCreateModalOpened]); // console.log(screens);
|
|
3269
|
+
|
|
2844
3270
|
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
2845
3271
|
className: classNames__default["default"](['d-flex', 'flex-column', styles$7.container, className])
|
|
2846
3272
|
}, /*#__PURE__*/React__default["default"].createElement(components.Navbar, {
|
|
@@ -2849,7 +3275,7 @@ var EditorScreens = function EditorScreens(_ref) {
|
|
|
2849
3275
|
withoutCollapse: true,
|
|
2850
3276
|
className: classNames__default["default"](['sticky-top', styles$7.navbar])
|
|
2851
3277
|
}, /*#__PURE__*/React__default["default"].createElement("strong", {
|
|
2852
|
-
className: "mb-0
|
|
3278
|
+
className: "mb-0 me-auto"
|
|
2853
3279
|
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
2854
3280
|
id: "jf+4Hq",
|
|
2855
3281
|
defaultMessage: [{
|
|
@@ -3049,21 +3475,21 @@ var Editor = function Editor(_ref) {
|
|
|
3049
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, {
|
|
3050
3476
|
size: screenSize
|
|
3051
3477
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3052
|
-
className: classNames__default["default"]([styles$
|
|
3053
|
-
return styles$
|
|
3054
|
-
}) : 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)]),
|
|
3055
3481
|
ref: refContainer
|
|
3056
3482
|
}, /*#__PURE__*/React__default["default"].createElement(components.Navbar, {
|
|
3057
3483
|
theme: "light",
|
|
3058
3484
|
compact: true,
|
|
3059
3485
|
noWrap: true,
|
|
3060
3486
|
withoutCollapse: true,
|
|
3061
|
-
className: styles$
|
|
3487
|
+
className: styles$i.top
|
|
3062
3488
|
}, mobileView !== 'screens' ? /*#__PURE__*/React__default["default"].createElement(components.Button, {
|
|
3063
3489
|
size: "sm",
|
|
3064
3490
|
theme: "secondary",
|
|
3065
3491
|
onClick: onClickScreens,
|
|
3066
|
-
className: "
|
|
3492
|
+
className: "me-auto"
|
|
3067
3493
|
}, /*#__PURE__*/React__default["default"].createElement(reactIntl.FormattedMessage, {
|
|
3068
3494
|
id: "wkysUu",
|
|
3069
3495
|
defaultMessage: [{
|
|
@@ -3091,9 +3517,9 @@ var Editor = function Editor(_ref) {
|
|
|
3091
3517
|
"value": "View screen"
|
|
3092
3518
|
}]
|
|
3093
3519
|
})) : null), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3094
|
-
className: styles$
|
|
3520
|
+
className: styles$i.inner
|
|
3095
3521
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3096
|
-
className: classNames__default["default"]([styles$
|
|
3522
|
+
className: classNames__default["default"]([styles$i.left, _defineProperty__default["default"]({}, styles$i.visible, !isMobile || mobileView === 'screens')]),
|
|
3097
3523
|
ref: refScreensContainer
|
|
3098
3524
|
}, /*#__PURE__*/React__default["default"].createElement(EditorScreens, {
|
|
3099
3525
|
value: story,
|
|
@@ -3103,24 +3529,25 @@ var Editor = function Editor(_ref) {
|
|
|
3103
3529
|
onChange: onStoryChange,
|
|
3104
3530
|
onClickScreen: onClickScreen,
|
|
3105
3531
|
isVertical: !isMobile,
|
|
3106
|
-
className: styles$
|
|
3532
|
+
className: styles$i.inner,
|
|
3107
3533
|
isTree: true
|
|
3108
3534
|
})), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3109
|
-
className: classNames__default["default"]([styles$
|
|
3535
|
+
className: classNames__default["default"]([styles$i.center, _defineProperty__default["default"]({}, styles$i.visible, !isMobile || mobileView === 'preview')])
|
|
3110
3536
|
}, /*#__PURE__*/React__default["default"].createElement(EditorPreview, {
|
|
3111
3537
|
value: story,
|
|
3112
3538
|
isTheme: isTheme,
|
|
3113
3539
|
viewerTheme: viewerTheme,
|
|
3114
|
-
className: styles$
|
|
3115
|
-
onScreenChange: onPreviewScreenChange
|
|
3540
|
+
className: styles$i.preview,
|
|
3541
|
+
onScreenChange: onPreviewScreenChange,
|
|
3542
|
+
onChange: onStoryChange
|
|
3116
3543
|
})), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
3117
|
-
className: classNames__default["default"]([styles$
|
|
3544
|
+
className: classNames__default["default"]([styles$i.right, _defineProperty__default["default"]({}, styles$i.visible, !isMobile || mobileView === 'form')])
|
|
3118
3545
|
}, /*#__PURE__*/React__default["default"].createElement(EditForm, {
|
|
3119
3546
|
key: screenId,
|
|
3120
3547
|
value: story,
|
|
3121
3548
|
isTheme: isTheme,
|
|
3122
3549
|
onChange: onStoryChange,
|
|
3123
|
-
className: styles$
|
|
3550
|
+
className: styles$i.inner
|
|
3124
3551
|
}))), /*#__PURE__*/React__default["default"].createElement(components.Modals, null)))));
|
|
3125
3552
|
};
|
|
3126
3553
|
|