@crystaldesign/diva-backoffice 26.14.0-beta.26 → 26.14.0-beta.28

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.
Files changed (26) hide show
  1. package/build/esm/index.js +1440 -433
  2. package/build/types/backoffice/src/layout/Navigation/types.d.ts +1 -1
  3. package/build/types/backoffice/src/layout/Navigation/types.d.ts.map +1 -1
  4. package/build/types/backoffice/src/layout/Toolbar/Tools/ConfigSettings/index.d.ts +20 -0
  5. package/build/types/backoffice/src/layout/Toolbar/Tools/ConfigSettings/index.d.ts.map +1 -0
  6. package/build/types/backoffice/src/layout/Toolbar/index.d.ts.map +1 -1
  7. package/build/types/backoffice/src/tests/unit/ui/Form/inheritance.test.d.ts +2 -0
  8. package/build/types/backoffice/src/tests/unit/ui/Form/inheritance.test.d.ts.map +1 -0
  9. package/build/types/backoffice/src/tests/unit/ui/JsonEditor/configSchema.test.d.ts +2 -0
  10. package/build/types/backoffice/src/tests/unit/ui/JsonEditor/configSchema.test.d.ts.map +1 -0
  11. package/build/types/backoffice/src/ui/Form/InheritedValue.d.ts +16 -0
  12. package/build/types/backoffice/src/ui/Form/InheritedValue.d.ts.map +1 -0
  13. package/build/types/backoffice/src/ui/Form/index.d.ts.map +1 -1
  14. package/build/types/backoffice/src/ui/Form/inheritance.d.ts +35 -0
  15. package/build/types/backoffice/src/ui/Form/inheritance.d.ts.map +1 -0
  16. package/build/types/backoffice/src/ui/Form/types.d.ts +8 -0
  17. package/build/types/backoffice/src/ui/Form/types.d.ts.map +1 -1
  18. package/build/types/backoffice/src/ui/Form/useInheritance.d.ts +11 -0
  19. package/build/types/backoffice/src/ui/Form/useInheritance.d.ts.map +1 -0
  20. package/build/types/backoffice/src/ui/JsonEditor/configSchema.d.ts +91 -0
  21. package/build/types/backoffice/src/ui/JsonEditor/configSchema.d.ts.map +1 -0
  22. package/build/types/backoffice/src/ui/JsonEditor/index.d.ts +2 -0
  23. package/build/types/backoffice/src/ui/JsonEditor/index.d.ts.map +1 -1
  24. package/build/types/backoffice/src/ui/JsonEditor/useJsonEditorData.d.ts +4 -0
  25. package/build/types/backoffice/src/ui/JsonEditor/useJsonEditorData.d.ts.map +1 -1
  26. package/package.json +12 -12
@@ -2,7 +2,7 @@ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
2
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
3
  import React, { createElement, createContext, useState, useEffect, useRef, useMemo, forwardRef, useImperativeHandle, useCallback, createRef, useReducer, useContext, memo, useDeferredValue, useSyncExternalStore, Suspense, lazy } from 'react';
4
4
  import 'antd/dist/reset.css';
5
- import { Divider, Form as Form$2, Button, Input as Input$1, Popover, Typography, Progress, Select, Avatar, Spin, Radio, Space, Dropdown, InputNumber, ColorPicker, Tooltip as Tooltip$1, Slider, DatePicker, Checkbox as Checkbox$1, Modal as Modal$2, Tabs, Cascader, Descriptions, Row, Col, Collapse, List as List$1, Skeleton, Alert, Card, Upload as Upload$2, Table as Table$1, message, Switch, Popconfirm, Image as Image$1, Breadcrumb, Result as Result$1, Badge, Tag, theme, Empty, Splitter, notification, ConfigProvider, Layout, Drawer, Segmented } from 'antd';
5
+ import { Divider, Form as Form$2, Button, Input as Input$1, Popover, Typography, Progress, Select, Avatar, Spin, Radio, Space, Dropdown, InputNumber, ColorPicker, Tooltip as Tooltip$1, Slider, DatePicker, Checkbox as Checkbox$1, Modal as Modal$2, theme, Tabs, Cascader, Descriptions, Row, Col, Collapse, List as List$1, Skeleton, Alert, Card, Upload as Upload$2, Table as Table$1, message, Switch, Popconfirm, Image as Image$1, Breadcrumb, Result as Result$1, Badge, Tag, Empty, Splitter, notification, ConfigProvider, Layout, Drawer, Segmented } from 'antd';
6
6
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
7
7
  import { observer } from 'mobx-react-lite';
8
8
  import { getLogger, DivaError, useTranslation, useDivaCore, DivaUtils, i18n } from '@crystaldesign/diva-core';
@@ -95,10 +95,16 @@ import Button$1 from 'antd/es/button';
95
95
  import Upload$1 from 'antd/es/upload';
96
96
  import DownOutlined from '@ant-design/icons/lib/icons/DownOutlined';
97
97
  import Space$1 from 'antd/es/space';
98
+ import get from 'lodash/get';
98
99
  import { stringify } from 'csv';
99
100
  import InfiniteScroll from 'react-infinite-scroll-component';
100
101
  import SearchOutlined from '@ant-design/icons/SearchOutlined';
101
102
  import PlusOutlined$1 from '@ant-design/icons/PlusOutlined';
103
+ import set from 'lodash/set';
104
+ import has from 'lodash/has';
105
+ import isEqual from 'lodash/isEqual';
106
+ import mapValues from 'lodash/mapValues';
107
+ import omit from 'lodash/omit';
102
108
  import { jsonEditorTheme, Spreadsheet as Spreadsheet$1, SelectAllOption, applyFilterToAddtionalColumn, resolveEnumValue, SpreadsheetSearchInput } from '@crystaldesign/spreadsheet';
103
109
  import ReactCrop from 'react-image-crop';
104
110
  import 'react-image-crop/dist/ReactCrop.css';
@@ -164,12 +170,13 @@ import MoonOutlined from '@ant-design/icons/MoonOutlined';
164
170
  import SunOutlined from '@ant-design/icons/SunOutlined';
165
171
  import { WebPlannerReact } from '@crystaldesign/diva-web-planner-react';
166
172
  import * as analyzerComponents from '@crystaldesign/web-planner-analyzer';
167
- import isEqual from 'lodash/isEqual';
168
173
  import Input$2 from 'antd/es/input';
169
174
  import Popover$1 from 'antd/es/popover';
170
175
  import Select$1 from 'antd/es/select';
171
176
  import message$1 from 'antd/es/message';
172
177
  import Popconfirm$1 from 'antd/es/popconfirm';
178
+ import PlusOutlined$2 from '@ant-design/icons/lib/icons/PlusOutlined';
179
+ import RightOutlined$2 from '@ant-design/icons/lib/icons/RightOutlined';
173
180
  import { mergeToolsets, AiCatalogChat, bridgeAutoConnectWanted, detachBridgeClients, subscribeToBridgeStatus, getBridgeStatusSnapshot, getBridgeWorkspaceSnapshot } from '@crystaldesign/diva-agent';
174
181
  import DivaWebPlanner from '@crystaldesign/web-planner-logic';
175
182
  import _toArray from '@babel/runtime/helpers/toArray';
@@ -193,8 +200,6 @@ import EditOutlined$2 from '@ant-design/icons/lib/icons/EditOutlined';
193
200
  import EyeOutlined$1 from '@ant-design/icons/lib/icons/EyeOutlined';
194
201
  import Radio$1 from 'antd/es/radio';
195
202
  import Checkbox$3 from 'antd/es/checkbox';
196
- import get from 'lodash/get';
197
- import set from 'lodash/set';
198
203
  import pick from 'lodash/pick';
199
204
  import MinusCircleOutlined$1 from '@ant-design/icons/MinusCircleOutlined';
200
205
  import { loadModels, groupModelsByCollection, filterModels } from '@crystaldesign/bulk-product-configurator';
@@ -243,9 +248,9 @@ function plannerBasesEditedAt(path, plannerTools) {
243
248
  return _toConsumableArray(new Set([packageId].concat(_toConsumableArray(keyedBy))));
244
249
  }
245
250
 
246
- function _createForOfIteratorHelper$1c(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1c(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
247
- function _unsupportedIterableToArray$1c(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1c(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1c(r, a) : void 0; } }
248
- function _arrayLikeToArray$1c(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
251
+ function _createForOfIteratorHelper$1d(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1d(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
252
+ function _unsupportedIterableToArray$1d(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1d(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1d(r, a) : void 0; } }
253
+ function _arrayLikeToArray$1d(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
249
254
  var MAX_HEADLESS_INSTANCES = 3;
250
255
  /** How long the mounted view gets to rebuild its planner before a consumer builds its own. */
251
256
  var VIEW_REBUILD_WAIT_MS = 30000;
@@ -409,7 +414,7 @@ var WebplannerInstanceStore = /*#__PURE__*/function () {
409
414
  value: function flagStale(baseIds) {
410
415
  var bases = new Set(baseIds);
411
416
  // A creation in flight is a use in progress — it discards its result and builds again on the new data.
412
- var _iterator = _createForOfIteratorHelper$1c(bases),
417
+ var _iterator = _createForOfIteratorHelper$1d(bases),
413
418
  _step;
414
419
  try {
415
420
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -423,7 +428,7 @@ var WebplannerInstanceStore = /*#__PURE__*/function () {
423
428
  _iterator.f();
424
429
  }
425
430
  if (this._activeKey && this._activeInstance && bases.has(baseOf(this._activeKey))) this._staleInstances.add(this._activeInstance);
426
- var _iterator2 = _createForOfIteratorHelper$1c(this._headless),
431
+ var _iterator2 = _createForOfIteratorHelper$1d(this._headless),
427
432
  _step2;
428
433
  try {
429
434
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -930,12 +935,12 @@ function staleBasesOf(message) {
930
935
  return bases.length ? bases : undefined;
931
936
  }
932
937
 
933
- function _createForOfIteratorHelper$1b(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1b(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
934
- function _unsupportedIterableToArray$1b(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1b(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1b(r, a) : void 0; } }
935
- function _arrayLikeToArray$1b(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
936
- function ownKeys$2N(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
937
- function _objectSpread$2N(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2N(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2N(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
938
- var LOG$w = getLogger('Backoffice', 'ApplyMapping');
938
+ function _createForOfIteratorHelper$1c(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1c(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
939
+ function _unsupportedIterableToArray$1c(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1c(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1c(r, a) : void 0; } }
940
+ function _arrayLikeToArray$1c(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
941
+ function ownKeys$2P(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
942
+ function _objectSpread$2P(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2P(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2P(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
943
+ var LOG$x = getLogger('Backoffice', 'ApplyMapping');
939
944
  function applyMapping (_ref) {
940
945
  var mappable = _ref.mappable,
941
946
  mappingData = _ref.mappingData,
@@ -955,10 +960,10 @@ function applyMapping (_ref) {
955
960
  var newValue = {};
956
961
  newValue[newKey] = valueToAdd;
957
962
  if ((startValue === null || startValue === void 0 ? void 0 : startValue[newKey]) != undefined) {
958
- if (_typeof(startValue[newKey]) == 'object') startValue[newKey] = _objectSpread$2N(_objectSpread$2N({}, startValue[newKey]), valueToAdd);else startValue[newKey] = type == 'addToSourceValue' ? startValue[newKey] + valueToAdd : valueToAdd;
963
+ if (_typeof(startValue[newKey]) == 'object') startValue[newKey] = _objectSpread$2P(_objectSpread$2P({}, startValue[newKey]), valueToAdd);else startValue[newKey] = type == 'addToSourceValue' ? startValue[newKey] + valueToAdd : valueToAdd;
959
964
  return startValue;
960
965
  }
961
- if (newIdx == 1) return _objectSpread$2N(_objectSpread$2N({}, startValue), newValue);
966
+ if (newIdx == 1) return _objectSpread$2P(_objectSpread$2P({}, startValue), newValue);
962
967
  return _getTarget(idx + 1, keys, startValue, newValue);
963
968
  };
964
969
  returnValue = _getTarget(0, key.split('.'), returnValue, value);
@@ -967,7 +972,7 @@ function applyMapping (_ref) {
967
972
  function meetsCondition(map) {
968
973
  if (!map.condition) return true;
969
974
  var value = mappingData[map.condition.field];
970
- var _iterator = _createForOfIteratorHelper$1b(map.condition.values),
975
+ var _iterator = _createForOfIteratorHelper$1c(map.condition.values),
971
976
  _step;
972
977
  try {
973
978
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -1046,7 +1051,7 @@ function applyMapping (_ref) {
1046
1051
  _url.href = _url.href.replace('&' + m.targetField + '=${' + m.targetField + '}', '');
1047
1052
  }
1048
1053
  }
1049
- var _iterator2 = _createForOfIteratorHelper$1b(_url.searchParams.entries()),
1054
+ var _iterator2 = _createForOfIteratorHelper$1c(_url.searchParams.entries()),
1050
1055
  _step2;
1051
1056
  try {
1052
1057
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -1081,13 +1086,13 @@ function applyMapping (_ref) {
1081
1086
  }
1082
1087
  return returnValue;
1083
1088
  } catch (e) {
1084
- LOG$w.debug('Mapabledata', mappable);
1089
+ LOG$x.debug('Mapabledata', mappable);
1085
1090
  throw e;
1086
1091
  }
1087
1092
  }
1088
1093
 
1089
- function ownKeys$2M(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1090
- function _objectSpread$2M(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2M(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2M(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1094
+ function ownKeys$2O(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1095
+ function _objectSpread$2O(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2O(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2O(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1091
1096
  function parseServersideFilters (_ref) {
1092
1097
  var baseUrl = _ref.baseUrl,
1093
1098
  columns = _ref.columns,
@@ -1243,7 +1248,7 @@ var ALL_FIELDS_OPERATORS = ['ne', 'doesnotcontain', 'isnull'];
1243
1248
  * has to check both fields. Expands such column filters (keyed by `column.field`) into one entry per field.
1244
1249
  */
1245
1250
  function expandFallbackFieldFilters(filters, columns) {
1246
- var expanded = _objectSpread$2M({}, filters);
1251
+ var expanded = _objectSpread$2O({}, filters);
1247
1252
  // parseFilter treats group index 0 as "no OR group", so numbering starts at 1.
1248
1253
  var orGroup = 1;
1249
1254
  for (var _i = 0, _getLeafColumns = getLeafColumns(columns); _i < _getLeafColumns.length; _i++) {
@@ -1293,9 +1298,9 @@ function getLeafColumns(columns) {
1293
1298
  });
1294
1299
  }
1295
1300
 
1296
- function ownKeys$2L(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1297
- function _objectSpread$2L(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2L(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2L(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1298
- var LOG$v = getLogger('Backoffice', 'ApiHandler');
1301
+ function ownKeys$2N(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1302
+ function _objectSpread$2N(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2N(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2N(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1303
+ var LOG$w = getLogger('Backoffice', 'ApiHandler');
1299
1304
  var jp = require('jsonpath');
1300
1305
  var _default$c = /*#__PURE__*/function () {
1301
1306
  function _default(configuration, _rootStore) {
@@ -1475,7 +1480,7 @@ var _default$c = /*#__PURE__*/function () {
1475
1480
  _context2.next = 21;
1476
1481
  return fetch(finalUrl, {
1477
1482
  method: this._updateMethod,
1478
- headers: _objectSpread$2L(_objectSpread$2L({}, jwt ? {
1483
+ headers: _objectSpread$2N(_objectSpread$2N({}, jwt ? {
1479
1484
  Authorization: 'Bearer ' + jwt
1480
1485
  } : {}), {}, {
1481
1486
  'Content-Type': 'application/json'
@@ -1570,7 +1575,7 @@ var _default$c = /*#__PURE__*/function () {
1570
1575
  rootStore: this._rootStore,
1571
1576
  fallBackToParams: true
1572
1577
  });
1573
- if (data) createData = _objectSpread$2L({}, data);
1578
+ if (data) createData = _objectSpread$2N({}, data);
1574
1579
  } else if (data !== undefined) {
1575
1580
  createData = applyMapping({
1576
1581
  mappable: data,
@@ -1835,7 +1840,7 @@ var _default$c = /*#__PURE__*/function () {
1835
1840
  throw new Error('Read List endpoint is missing in configuration.');
1836
1841
  case 2:
1837
1842
  jwt = (_this$_rootStore5 = this._rootStore) === null || _this$_rootStore5 === void 0 ? void 0 : _this$_rootStore5.dataStore.jwt;
1838
- url = filterServerSide ? parseServersideFilters(_objectSpread$2L(_objectSpread$2L({}, filterServerSide), {}, {
1843
+ url = filterServerSide ? parseServersideFilters(_objectSpread$2N(_objectSpread$2N({}, filterServerSide), {}, {
1839
1844
  columns: this._filterFields ? filterServerSide.columns : undefined,
1840
1845
  baseUrl: this._readListUrl,
1841
1846
  prefilter: prefilter
@@ -1855,7 +1860,7 @@ var _default$c = /*#__PURE__*/function () {
1855
1860
  });
1856
1861
  case 6:
1857
1862
  response = _context8.sent;
1858
- return _context8.abrupt("return", _objectSpread$2L(_objectSpread$2L({}, response), {}, {
1863
+ return _context8.abrupt("return", _objectSpread$2N(_objectSpread$2N({}, response), {}, {
1859
1864
  data: response.data.map(function (d) {
1860
1865
  return _this2.aplyJsonPath(d, _this2._readJsonPath);
1861
1866
  })
@@ -1879,7 +1884,7 @@ var _default$c = /*#__PURE__*/function () {
1879
1884
  throw new Error('Read List endpoint is missing in configuration.');
1880
1885
  }
1881
1886
  (_this$_rootStore6 = this._rootStore) === null || _this$_rootStore6 === void 0 ? void 0 : _this$_rootStore6.dataStore.jwt;
1882
- var url = filterServerSide ? parseServersideFilters(_objectSpread$2L(_objectSpread$2L({}, filterServerSide), {}, {
1887
+ var url = filterServerSide ? parseServersideFilters(_objectSpread$2N(_objectSpread$2N({}, filterServerSide), {}, {
1883
1888
  columns: this._filterFields ? filterServerSide.columns : undefined,
1884
1889
  baseUrl: this._readListUrl,
1885
1890
  prefilter: prefilter
@@ -1980,16 +1985,16 @@ var _default$c = /*#__PURE__*/function () {
1980
1985
  }
1981
1986
  });
1982
1987
  this._socket.on('error', function (error) {
1983
- LOG$v.error(new DivaError('Error on connection', error));
1988
+ LOG$w.error(new DivaError('Error on connection', error));
1984
1989
  });
1985
1990
  this._socket.on('connect_error', function (error) {
1986
- LOG$v.log("connect_error due to ".concat(error.message));
1991
+ LOG$w.log("connect_error due to ".concat(error.message));
1987
1992
  });
1988
1993
  this._socket.on('connect', function () {
1989
- LOG$v.debug('Successfully connected to socket');
1994
+ LOG$w.debug('Successfully connected to socket');
1990
1995
  });
1991
1996
  this._socket.on('disconnect', function () {
1992
- LOG$v.debug('Disconnect from socket');
1997
+ LOG$w.debug('Disconnect from socket');
1993
1998
  });
1994
1999
  return this._socket;
1995
2000
  }
@@ -2705,8 +2710,8 @@ var ASPECT_RATIOS_FULL = ['1:1', '2:3', '3:2', '3:4', '4:3', '4:5', '5:4', '9:16
2705
2710
  /** All four image sizes — only `gemini-3.1-flash-image-preview` supports `512`. */
2706
2711
  var IMAGE_SIZES_FULL = ['512', '1K', '2K', '4K'];
2707
2712
 
2708
- function ownKeys$2K(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2709
- function _objectSpread$2K(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2K(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2K(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2713
+ function ownKeys$2M(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2714
+ function _objectSpread$2M(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2M(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2M(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
2710
2715
 
2711
2716
  /** The types of an AI service prompt: TEXT is a text template for /v2/text, every other type an image template. */
2712
2717
  var PROMPT_TYPES = ['ROOM_RENDERING', 'SOCIAL_ADD', 'PRODUCT', 'HERO_IMAGE', 'UPSCALE', 'TEXT'];
@@ -2772,7 +2777,7 @@ var _default$7 = /*#__PURE__*/function () {
2772
2777
  var _i$permission;
2773
2778
  return !i.permission || _this.root.actions.userHasPermission((_i$permission = i.permission) === null || _i$permission === void 0 ? void 0 : _i$permission.toLocaleLowerCase());
2774
2779
  });
2775
- config = _objectSpread$2K(_objectSpread$2K({}, config), {}, {
2780
+ config = _objectSpread$2M(_objectSpread$2M({}, config), {}, {
2776
2781
  items: filteredItems
2777
2782
  });
2778
2783
  }
@@ -8648,6 +8653,13 @@ function loadConfiguration(t, root, config, lang, apiConfig) {
8648
8653
  create: '${adminService}/v1/services/configs'
8649
8654
  },
8650
8655
  preview: '${adminService}/v1/services/configs/preview',
8656
+ schema: '${adminService}/v1/services/configs/schema?type={type}&identifier={identifier}&environmentId={environmentId}',
8657
+ tools: [{
8658
+ id: 'ConfigSettings',
8659
+ name: t('backoffice.configSettings.toolName'),
8660
+ type: 'ConfigSettings',
8661
+ startWidth: 450
8662
+ }],
8651
8663
  "default": {
8652
8664
  identifier: null,
8653
8665
  type: null,
@@ -8694,6 +8706,13 @@ function loadConfiguration(t, root, config, lang, apiConfig) {
8694
8706
  create: '${adminService}/v1/views/configs'
8695
8707
  },
8696
8708
  preview: '${adminService}/v1/views/configs/preview',
8709
+ schema: '${adminService}/v1/views/configs/schema?type={type}',
8710
+ tools: [{
8711
+ id: 'ConfigSettings',
8712
+ name: t('backoffice.configSettings.toolName'),
8713
+ type: 'ConfigSettings',
8714
+ startWidth: 450
8715
+ }],
8697
8716
  "default": {
8698
8717
  identifier: null,
8699
8718
  type: null,
@@ -9423,9 +9442,21 @@ function loadConfiguration(t, root, config, lang, apiConfig) {
9423
9442
  },
9424
9443
  create: '${authService}/v2/organizations/${parentId}'
9425
9444
  },
9445
+ inheritance: {
9446
+ apiInterface: {
9447
+ read: '${authService}/v2/organizations/${organizationId}/inheritance'
9448
+ },
9449
+ mapping: {
9450
+ type: 'query',
9451
+ map: [{
9452
+ sourceField: '_id',
9453
+ targetField: 'organizationId'
9454
+ }]
9455
+ }
9456
+ },
9426
9457
  triggerRerender: true,
9427
9458
  enableSearch: true,
9428
- items: [{
9459
+ items: hideForCampaigns(t, [{
9429
9460
  name: 'type',
9430
9461
  label: t('backoffice.form.organizationdetails.items.type'),
9431
9462
  type: 'radio',
@@ -9753,6 +9784,7 @@ function loadConfiguration(t, root, config, lang, apiConfig) {
9753
9784
  label: t('backoffice.form.organizationdetails.items.iwofurn'),
9754
9785
  tabgroup: t('backoffice.subtitle.generally'),
9755
9786
  type: 'checkbox',
9787
+ inheritancePath: 'iwoFurnOptions',
9756
9788
  hidden: function hidden(data) {
9757
9789
  return (data === null || data === void 0 ? void 0 : data.type) !== 'RETAILER' && (data === null || data === void 0 ? void 0 : data.parentType) !== 'RETAILER';
9758
9790
  },
@@ -11204,7 +11236,7 @@ function loadConfiguration(t, root, config, lang, apiConfig) {
11204
11236
  name: ''
11205
11237
  }],
11206
11238
  initialValue: []
11207
- }]
11239
+ }])
11208
11240
  },
11209
11241
  FromAffilateOrganizationDetails: {
11210
11242
  type: 'Form',
@@ -15706,6 +15738,30 @@ var showCampaignFields = function showCampaignFields(data) {
15706
15738
  return (data === null || data === void 0 ? void 0 : data.type) !== 'SUPPLIER' && !((data === null || data === void 0 ? void 0 : data.parentType) === 'SUPPLIER' && (data === null || data === void 0 ? void 0 : data.type) === undefined);
15707
15739
  };
15708
15740
 
15741
+ /**
15742
+ * A campaign organization shows only what its landing page, widgets and tracking read; everything else is the same for every
15743
+ * campaign and comes from the retailer, so it is hidden there. Only hidden: stored values stay.
15744
+ */
15745
+ function hideForCampaigns(t, items) {
15746
+ var campaignTabs = [t('backoffice.form.organizationdetails.campaignLandingPage'), t('backoffice.form.organizationdetails.additionalContactData')];
15747
+ var campaignFields = ['type', t('backoffice.subtitle.generally'), '_id', 'displayName', 'description', 'email', 'phone', 'homepage', t('backoffice.subtitle.configurator'), 'privacyPolicyUrl', 'termsAndConditionsUrl', 'impressumUrl'];
15748
+ return items.map(function (item) {
15749
+ var _item$tabgroup;
15750
+ if (campaignTabs.includes((_item$tabgroup = item.tabgroup) !== null && _item$tabgroup !== void 0 ? _item$tabgroup : '') || campaignFields.includes(item.name.toString())) return item;
15751
+ var _hidden = item.hidden,
15752
+ _required = item.required;
15753
+ return _objectSpread$2M(_objectSpread$2M({}, item), {}, {
15754
+ hidden: function hidden(data) {
15755
+ return (data === null || data === void 0 ? void 0 : data.type) === 'CAMPAIGN' || (typeof _hidden === 'function' ? _hidden(data) : !!_hidden);
15756
+ }
15757
+ }, _required !== undefined && {
15758
+ required: function required(data) {
15759
+ return (data === null || data === void 0 ? void 0 : data.type) !== 'CAMPAIGN' && (typeof _required === 'function' ? _required(data) : _required);
15760
+ }
15761
+ });
15762
+ });
15763
+ }
15764
+
15709
15765
  function styleInject(css, ref) {
15710
15766
  if ( ref === void 0 ) ref = {};
15711
15767
  var insertAt = ref.insertAt;
@@ -15739,8 +15795,8 @@ var navMinified = "nav-minified-tSt-a";
15739
15795
  var navOverlay = "nav-overlay-rKJNC";
15740
15796
  var navSettings = "nav-settings-82cjv";
15741
15797
  var menuLabel = "menu-label-4dXQk";
15742
- var css_248z$1o = ".nav-minify-button-ZX7dm {\n color: rgba(255, 255, 255, 0.65);\n background: #001529;\n cursor: pointer;\n padding: 10px;\n height: 40px;\n}\n\n.nav-minify-button-ZX7dm:hover {\n color: #fff;\n background-color: rgba(0, 0, 0, 0.06);\n}\n\n.nav-minify-button-ZX7dm .anticon {\n float: right;\n}\n\n.nav-container-JCR24 {\n display: flex;\n min-width: 30px;\n overflow: visible;\n z-index: 10001;\n}\n\n.nav-container-JCR24 .ant-layout-sider-children {\n display: flex;\n flex-direction: column;\n}\n\n.nav-minified-tSt-a {\n flex: 0 0 30px !important;\n max-width: 30px !important;\n min-width: 30px !important;\n width: 30px !important;\n}\n\n.nav-minified-tSt-a {\n /* position: absolute !important; */\n height: 100%;\n z-index: 1;\n}\n\n.nav-overlay-rKJNC {\n max-width: 200px !important;\n min-width: 200px !important;\n width: 200px !important;\n}\n\n.nav-minified-tSt-a .ant-menu-root {\n display: none;\n}\n\n.nav-overlay-rKJNC .ant-menu-root {\n display: inline !important;\n display: initial !important;\n}\n\n.nav-settings-82cjv {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin: auto 18px 55px;\n}\n\n.nav-container-JCR24 .ant-menu-title-content {\n overflow: visible;\n}\n\n.menu-label-4dXQk {\n display: flex;\n}\n\n.ant-menu .ant-menu-item .menu-label-4dXQk .anticon {\n margin-left: auto;\n margin-right: -6px;\n font-size: 10px;\n}\n\n.menu-label-4dXQk span:first-child {\n width: 120px;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n";
15743
- styleInject(css_248z$1o);
15798
+ var css_248z$1p = ".nav-minify-button-ZX7dm {\n color: rgba(255, 255, 255, 0.65);\n background: #001529;\n cursor: pointer;\n padding: 10px;\n height: 40px;\n}\n\n.nav-minify-button-ZX7dm:hover {\n color: #fff;\n background-color: rgba(0, 0, 0, 0.06);\n}\n\n.nav-minify-button-ZX7dm .anticon {\n float: right;\n}\n\n.nav-container-JCR24 {\n display: flex;\n min-width: 30px;\n overflow: visible;\n z-index: 10001;\n}\n\n.nav-container-JCR24 .ant-layout-sider-children {\n display: flex;\n flex-direction: column;\n}\n\n.nav-minified-tSt-a {\n flex: 0 0 30px !important;\n max-width: 30px !important;\n min-width: 30px !important;\n width: 30px !important;\n}\n\n.nav-minified-tSt-a {\n /* position: absolute !important; */\n height: 100%;\n z-index: 1;\n}\n\n.nav-overlay-rKJNC {\n max-width: 200px !important;\n min-width: 200px !important;\n width: 200px !important;\n}\n\n.nav-minified-tSt-a .ant-menu-root {\n display: none;\n}\n\n.nav-overlay-rKJNC .ant-menu-root {\n display: inline !important;\n display: initial !important;\n}\n\n.nav-settings-82cjv {\n display: flex;\n justify-content: space-between;\n align-items: center;\n margin: auto 18px 55px;\n}\n\n.nav-container-JCR24 .ant-menu-title-content {\n overflow: visible;\n}\n\n.menu-label-4dXQk {\n display: flex;\n}\n\n.ant-menu .ant-menu-item .menu-label-4dXQk .anticon {\n margin-left: auto;\n margin-right: -6px;\n font-size: 10px;\n}\n\n.menu-label-4dXQk span:first-child {\n width: 120px;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n";
15799
+ styleInject(css_248z$1p);
15744
15800
 
15745
15801
  function MenuLabel (_ref) {
15746
15802
  var disabled = _ref.disabled,
@@ -15760,9 +15816,9 @@ function MenuLabel (_ref) {
15760
15816
  });
15761
15817
  }
15762
15818
 
15763
- function _createForOfIteratorHelper$1a(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1a(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
15764
- function _unsupportedIterableToArray$1a(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1a(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1a(r, a) : void 0; } }
15765
- function _arrayLikeToArray$1a(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15819
+ function _createForOfIteratorHelper$1b(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1b(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
15820
+ function _unsupportedIterableToArray$1b(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1b(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1b(r, a) : void 0; } }
15821
+ function _arrayLikeToArray$1b(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15766
15822
  function applyRule(_ref) {
15767
15823
  var rules = _ref.rules,
15768
15824
  data = _ref.data,
@@ -15771,7 +15827,7 @@ function applyRule(_ref) {
15771
15827
  //if or we start with false until the first time some result is true
15772
15828
  //if and we start with true until the frist time some result is false
15773
15829
  var result = !or;
15774
- var _iterator = _createForOfIteratorHelper$1a(rules),
15830
+ var _iterator = _createForOfIteratorHelper$1b(rules),
15775
15831
  _step;
15776
15832
  try {
15777
15833
  var _loop = function _loop() {
@@ -15843,7 +15899,7 @@ function aplyRules(_ref2) {
15843
15899
  if (!data || data.length == 0) return {
15844
15900
  applied: false
15845
15901
  };
15846
- var _iterator2 = _createForOfIteratorHelper$1a(data),
15902
+ var _iterator2 = _createForOfIteratorHelper$1b(data),
15847
15903
  _step2;
15848
15904
  try {
15849
15905
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -15866,19 +15922,19 @@ function aplyRules(_ref2) {
15866
15922
  };
15867
15923
  }
15868
15924
 
15869
- function ownKeys$2J(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15870
- function _objectSpread$2J(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2J(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2J(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15925
+ function ownKeys$2L(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15926
+ function _objectSpread$2L(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2L(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2L(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15871
15927
  /**
15872
15928
  * Wraps 16x16 path data from Bootstrap Icons (MIT) in the antd `Icon`, so it sizes like the antd icons and takes the
15873
15929
  * surrounding text color (`currentColor`) in the light and the dark theme.
15874
15930
  */
15875
15931
  function svgIcon(paths) {
15876
15932
  var Svg = function Svg(props) {
15877
- return /*#__PURE__*/jsx("svg", _objectSpread$2J(_objectSpread$2J({
15933
+ return /*#__PURE__*/jsx("svg", _objectSpread$2L(_objectSpread$2L({
15878
15934
  viewBox: "0 0 16 16"
15879
15935
  }, props), {}, {
15880
15936
  children: paths.map(function (path) {
15881
- return /*#__PURE__*/jsx("path", _objectSpread$2J({}, path), path.d);
15937
+ return /*#__PURE__*/jsx("path", _objectSpread$2L({}, path), path.d);
15882
15938
  })
15883
15939
  }));
15884
15940
  };
@@ -16119,8 +16175,8 @@ function getIcon(icon) {
16119
16175
  return undefined;
16120
16176
  }
16121
16177
 
16122
- function ownKeys$2I(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16123
- function _objectSpread$2I(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2I(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2I(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16178
+ function ownKeys$2K(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16179
+ function _objectSpread$2K(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2K(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2K(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16124
16180
  /**
16125
16181
  * Browser-persisted per-tool user preferences (docked width/pin/open + popout geometry).
16126
16182
  * Keyed by the owning toolbar's preference key: the tool id, or one shared slot key for
@@ -16166,14 +16222,14 @@ function readToolPreferences(toolId) {
16166
16222
  /** Merges the given fields into the tool's stored preferences. Best-effort — preferences are non-essential. */
16167
16223
  function updateToolPreferences(toolId, patch) {
16168
16224
  try {
16169
- localStorage.setItem(STORAGE_PREFIX$1 + toolId, JSON.stringify(_objectSpread$2I(_objectSpread$2I({}, readToolPreferences(toolId)), patch)));
16225
+ localStorage.setItem(STORAGE_PREFIX$1 + toolId, JSON.stringify(_objectSpread$2K(_objectSpread$2K({}, readToolPreferences(toolId)), patch)));
16170
16226
  } catch (_unused2) {
16171
16227
  // storage unavailable / quota exceeded
16172
16228
  }
16173
16229
  }
16174
16230
 
16175
- function ownKeys$2H(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16176
- function _objectSpread$2H(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2H(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2H(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16231
+ function ownKeys$2J(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16232
+ function _objectSpread$2J(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2J(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2J(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16177
16233
  var DEFAULT_WIDTH = 500;
16178
16234
 
16179
16235
  /** The toolbar lent to a temporary owner, see ToolBarStore.borrowTools. */
@@ -16300,7 +16356,7 @@ var ToolBarStore = /*#__PURE__*/function () {
16300
16356
  // The page updates a tool it has lent out: this version comes back at the end of the loan, until then the
16301
16357
  // tool keeps showing the borrower's data
16302
16358
  loan.own = tool;
16303
- return _objectSpread$2H(_objectSpread$2H({}, tool), {}, {
16359
+ return _objectSpread$2J(_objectSpread$2J({}, tool), {}, {
16304
16360
  parameters: loan.parameters
16305
16361
  });
16306
16362
  }));
@@ -16368,7 +16424,7 @@ var ToolBarStore = /*#__PURE__*/function () {
16368
16424
  var loan = _this4._loans.get(tool.id);
16369
16425
  if (!loan) return tool;
16370
16426
  loan.parameters = tool.parameters;
16371
- return _objectSpread$2H(_objectSpread$2H({}, loan.own), {}, {
16427
+ return _objectSpread$2J(_objectSpread$2J({}, loan.own), {}, {
16372
16428
  parameters: tool.parameters
16373
16429
  });
16374
16430
  }));
@@ -16906,11 +16962,11 @@ var ToolBarStore = /*#__PURE__*/function () {
16906
16962
  }]);
16907
16963
  }();
16908
16964
 
16909
- function ownKeys$2G(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16910
- function _objectSpread$2G(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2G(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2G(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16911
- function _createForOfIteratorHelper$19(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$19(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
16912
- function _unsupportedIterableToArray$19(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$19(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$19(r, a) : void 0; } }
16913
- function _arrayLikeToArray$19(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
16965
+ function ownKeys$2I(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16966
+ function _objectSpread$2I(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2I(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2I(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16967
+ function _createForOfIteratorHelper$1a(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$1a(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
16968
+ function _unsupportedIterableToArray$1a(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$1a(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$1a(r, a) : void 0; } }
16969
+ function _arrayLikeToArray$1a(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
16914
16970
  var _default$6 = /*#__PURE__*/function () {
16915
16971
  function _default(root) {
16916
16972
  _classCallCheck(this, _default);
@@ -16952,7 +17008,7 @@ var _default$6 = /*#__PURE__*/function () {
16952
17008
  var initKeys = this.root.navigationState.path == '' ? [] : this.keysFormPath(this._menu, this.root.navigationState.path);
16953
17009
  var checkedKeys = [];
16954
17010
  var currentMenu = this._menu;
16955
- var _iterator = _createForOfIteratorHelper$19(initKeys),
17011
+ var _iterator = _createForOfIteratorHelper$1a(initKeys),
16956
17012
  _step;
16957
17013
  try {
16958
17014
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -16961,7 +17017,7 @@ var _default$6 = /*#__PURE__*/function () {
16961
17017
  var level = currentMenu;
16962
17018
  var lastResolved = void 0;
16963
17019
  var chainOk = true;
16964
- var _iterator2 = _createForOfIteratorHelper$19(key),
17020
+ var _iterator2 = _createForOfIteratorHelper$1a(key),
16965
17021
  _step2;
16966
17022
  try {
16967
17023
  var _loop = function _loop() {
@@ -17056,7 +17112,7 @@ var _default$6 = /*#__PURE__*/function () {
17056
17112
  if (index >= 0) {
17057
17113
  this._additionalMenuElements[index] = {
17058
17114
  key: key,
17059
- element: _objectSpread$2G(_objectSpread$2G({}, this._additionalMenuElements[index].element), {}, {
17115
+ element: _objectSpread$2I(_objectSpread$2I({}, this._additionalMenuElements[index].element), {}, {
17060
17116
  items: items,
17061
17117
  selected: selected
17062
17118
  })
@@ -17145,7 +17201,7 @@ var _default$6 = /*#__PURE__*/function () {
17145
17201
  // A host with its own navigation has no menu columns to keep in sync (see `RootStore.menu`).
17146
17202
  if (this._menuElement1) {
17147
17203
  var _this$_menu$find;
17148
- this._menuElement1 = _objectSpread$2G(_objectSpread$2G({}, this._menuElement1), {}, {
17204
+ this._menuElement1 = _objectSpread$2I(_objectSpread$2I({}, this._menuElement1), {}, {
17149
17205
  selected: this._selectedMenuKeys[0]
17150
17206
  });
17151
17207
  var menu2 = (_this$_menu$find = this._menu.find(function (element) {
@@ -17435,7 +17491,7 @@ var _default$6 = /*#__PURE__*/function () {
17435
17491
  }
17436
17492
  return !item.permission || hasPermission(item.permission.toLocaleLowerCase());
17437
17493
  }).map(function (item) {
17438
- return _objectSpread$2G(_objectSpread$2G({}, item), {}, {
17494
+ return _objectSpread$2I(_objectSpread$2I({}, item), {}, {
17439
17495
  items: item.items ? _this5.filterMenuByPermission(hasPermission, item.items) : undefined,
17440
17496
  subMenu: item.subMenu ? _this5.filterMenuByPermission(hasPermission, item.subMenu) : undefined
17441
17497
  });
@@ -18246,10 +18302,10 @@ var _default$3 = /*#__PURE__*/function () {
18246
18302
  }]);
18247
18303
  }();
18248
18304
 
18249
- function _createForOfIteratorHelper$18(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$18(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
18250
- function _unsupportedIterableToArray$18(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$18(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$18(r, a) : void 0; } }
18251
- function _arrayLikeToArray$18(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
18252
- var LOG$u = getLogger('Backoffice', 'DownloadStore');
18305
+ function _createForOfIteratorHelper$19(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$19(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
18306
+ function _unsupportedIterableToArray$19(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$19(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$19(r, a) : void 0; } }
18307
+ function _arrayLikeToArray$19(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
18308
+ var LOG$v = getLogger('Backoffice', 'DownloadStore');
18253
18309
  var DownloadStore = /*#__PURE__*/function () {
18254
18310
  function DownloadStore(_rootStore) {
18255
18311
  var _this = this;
@@ -18276,7 +18332,7 @@ var DownloadStore = /*#__PURE__*/function () {
18276
18332
  _context2.next = 23;
18277
18333
  break;
18278
18334
  }
18279
- _iterator = _createForOfIteratorHelper$18(action.download);
18335
+ _iterator = _createForOfIteratorHelper$19(action.download);
18280
18336
  _context2.prev = 8;
18281
18337
  _loop = /*#__PURE__*/_regeneratorRuntime.mark(function _loop() {
18282
18338
  var _download$params, _data$fileFormat, _data$fileUrl;
@@ -18305,7 +18361,7 @@ var DownloadStore = /*#__PURE__*/function () {
18305
18361
  _context.next = 11;
18306
18362
  break;
18307
18363
  }
18308
- LOG$u.error(new DivaError("Failed to download file: ".concat(download.fileName, ". Status: ").concat(file.status, " ").concat(file.statusText)));
18364
+ LOG$v.error(new DivaError("Failed to download file: ".concat(download.fileName, ". Status: ").concat(file.status, " ").concat(file.statusText)));
18309
18365
  // Optionally, notify the user here
18310
18366
  return _context.abrupt("break", 41);
18311
18367
  case 11:
@@ -18319,7 +18375,7 @@ var DownloadStore = /*#__PURE__*/function () {
18319
18375
  case 17:
18320
18376
  _context.prev = 17;
18321
18377
  _context.t1 = _context["catch"](4);
18322
- LOG$u.error(new DivaError("Error during file download (".concat(download.fileName, "):") + _context.t1));
18378
+ LOG$v.error(new DivaError("Error during file download (".concat(download.fileName, "):") + _context.t1));
18323
18379
  // Optionally, notify the user here
18324
18380
  case 20:
18325
18381
  return _context.abrupt("break", 41);
@@ -18500,7 +18556,7 @@ var DownloadStore = /*#__PURE__*/function () {
18500
18556
  _context5.next = 4;
18501
18557
  break;
18502
18558
  }
18503
- LOG$u.debug("The organization ".concat(data._id, " has no parentType of ").concat(validTypes.join(' or ')));
18559
+ LOG$v.debug("The organization ".concat(data._id, " has no parentType of ").concat(validTypes.join(' or ')));
18504
18560
  throw new Error("Current organization is no ".concat(type == 'RETAILER' ? 'retailer, retailer channel or association' : 'supplier or dealer'));
18505
18561
  case 4:
18506
18562
  orgData = data;
@@ -18519,7 +18575,7 @@ var DownloadStore = /*#__PURE__*/function () {
18519
18575
  _context5.next = 14;
18520
18576
  break;
18521
18577
  }
18522
- LOG$u.debug("The organization ".concat(data._id, " has no type of ").concat(validTypes.join(' or '), " nor a parent organization"));
18578
+ LOG$v.debug("The organization ".concat(data._id, " has no type of ").concat(validTypes.join(' or '), " nor a parent organization"));
18523
18579
  throw new Error("Current organization is no ".concat(type == 'RETAILER' ? 'retailer channel or association' : 'supplier or dealer'));
18524
18580
  case 14:
18525
18581
  _context5.prev = 14;
@@ -18581,7 +18637,7 @@ var DownloadStore = /*#__PURE__*/function () {
18581
18637
  _context6.next = 7;
18582
18638
  break;
18583
18639
  }
18584
- LOG$u.error(new DivaError("Download request failed: ".concat(result.status, " ").concat(result.statusText)));
18640
+ LOG$v.error(new DivaError("Download request failed: ".concat(result.status, " ").concat(result.statusText)));
18585
18641
  throw new Error("Download failed: ".concat(result.status, " ").concat(result.statusText));
18586
18642
  case 7:
18587
18643
  contentDisposition = result.headers.get('Content-Disposition');
@@ -18672,7 +18728,7 @@ var DownloadStore = /*#__PURE__*/function () {
18672
18728
  successCount = 0;
18673
18729
  failedCount = 0;
18674
18730
  promises = [];
18675
- _iterator2 = _createForOfIteratorHelper$18(props.data);
18731
+ _iterator2 = _createForOfIteratorHelper$19(props.data);
18676
18732
  _context7.prev = 5;
18677
18733
  _iterator2.s();
18678
18734
  case 7:
@@ -18815,9 +18871,9 @@ var _default$2 = /*#__PURE__*/function (_ApiHandler) {
18815
18871
  return _createClass(_default);
18816
18872
  }(_default$c);
18817
18873
 
18818
- function ownKeys$2F(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18819
- function _objectSpread$2F(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2F(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2F(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18820
- var LOG$t = getLogger('Backoffice', 'ContextStore');
18874
+ function ownKeys$2H(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18875
+ function _objectSpread$2H(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2H(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2H(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18876
+ var LOG$u = getLogger('Backoffice', 'ContextStore');
18821
18877
 
18822
18878
  /**
18823
18879
  * ContextStore is a store that manages the contexts of the application.
@@ -18858,9 +18914,9 @@ var ContextStore = /*#__PURE__*/function () {
18858
18914
  key: "updateContext",
18859
18915
  value: function updateContext(contextId, updates) {
18860
18916
  var currentState = this.contexts.get(contextId) || {};
18861
- var updatedState = _objectSpread$2F(_objectSpread$2F({}, currentState), updates);
18917
+ var updatedState = _objectSpread$2H(_objectSpread$2H({}, currentState), updates);
18862
18918
  this.contexts.set(contextId, updatedState);
18863
- LOG$t.debug("Updated context ".concat(contextId), {
18919
+ LOG$u.debug("Updated context ".concat(contextId), {
18864
18920
  updatedState: updatedState
18865
18921
  });
18866
18922
  }
@@ -18874,8 +18930,8 @@ var ContextStore = /*#__PURE__*/function () {
18874
18930
  }]);
18875
18931
  }();
18876
18932
 
18877
- function ownKeys$2E(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18878
- function _objectSpread$2E(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2E(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2E(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18933
+ function ownKeys$2G(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18934
+ function _objectSpread$2G(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2G(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2G(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18879
18935
 
18880
18936
  /**
18881
18937
  * An operation a table offers beyond cell edits - adding a matrix column, a server-side bulk removal. The VIEW
@@ -18965,7 +19021,7 @@ var GridRegistry = /*#__PURE__*/function () {
18965
19021
  key: "register",
18966
19022
  value: function register(entry) {
18967
19023
  var id = ++this._seq;
18968
- this._entries = [].concat(_toConsumableArray(this._entries), [_objectSpread$2E({
19024
+ this._entries = [].concat(_toConsumableArray(this._entries), [_objectSpread$2G({
18969
19025
  id: id
18970
19026
  }, entry)]);
18971
19027
  return id;
@@ -19264,8 +19320,8 @@ function useBorrowedTools(tools) {
19264
19320
  }, []);
19265
19321
  }
19266
19322
 
19267
- function ownKeys$2D(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
19268
- function _objectSpread$2D(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2D(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2D(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19323
+ function ownKeys$2F(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
19324
+ function _objectSpread$2F(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2F(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2F(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19269
19325
  function fetchFileData(_x) {
19270
19326
  return _fetchFileData.apply(this, arguments);
19271
19327
  }
@@ -19425,7 +19481,7 @@ function _uploadMediaItem() {
19425
19481
  _context4.next = 4;
19426
19482
  return fetch("".concat(root, "/v1/assets/uploads"), {
19427
19483
  method: 'POST',
19428
- headers: _objectSpread$2D({
19484
+ headers: _objectSpread$2F({
19429
19485
  'Content-Type': 'application/json'
19430
19486
  }, auth),
19431
19487
  body: JSON.stringify({
@@ -19491,7 +19547,7 @@ function _uploadMediaItem() {
19491
19547
  _context4.next = 31;
19492
19548
  return fetch("".concat(root, "/v1/assets/uploads/complete"), {
19493
19549
  method: 'POST',
19494
- headers: _objectSpread$2D({
19550
+ headers: _objectSpread$2F({
19495
19551
  'Content-Type': 'application/json'
19496
19552
  }, auth),
19497
19553
  body: JSON.stringify({
@@ -19536,7 +19592,7 @@ function _uploadMediaItem() {
19536
19592
  refUrl = (_ref$url = ref.url) !== null && _ref$url !== void 0 ? _ref$url : ref.cdnUrl;
19537
19593
  return _context4.abrupt("return", {
19538
19594
  _id: mediaItem._id,
19539
- ref: _objectSpread$2D(_objectSpread$2D({}, ref), {}, {
19595
+ ref: _objectSpread$2F(_objectSpread$2F({}, ref), {}, {
19540
19596
  _id: ref._id,
19541
19597
  url: refUrl
19542
19598
  })
@@ -19587,7 +19643,7 @@ function isExternalVid(file) {
19587
19643
  }
19588
19644
 
19589
19645
  var VIDEO_THUMB_PLACEHOLDER = 'data:image/svg+xml;base64,PHN2ZyBmaWxsPSIjMDAwMDAwIiBoZWlnaHQ9IjgwMHB4IiB3aWR0aD0iODAwcHgiIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgCgkgdmlld0JveD0iMCAwIDQ5IDQ5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPGc+Cgk8Zz4KCQk8cGF0aCBkPSJNMzkuMjU2LDYuNUg5Ljc0NEM0LjM3MSw2LjUsMCwxMC44ODUsMCwxNi4yNzR2MTYuNDUxYzAsNS4zOSw0LjM3MSw5Ljc3NCw5Ljc0NCw5Ljc3NGgyOS41MTIKCQkJYzUuMzczLDAsOS43NDQtNC4zODUsOS43NDQtOS43NzRWMTYuMjc0QzQ5LDEwLjg4NSw0NC42MjksNi41LDM5LjI1Niw2LjV6IE00NywzMi43MjZjMCw0LjI4Ny0zLjQ3NCw3Ljc3NC03Ljc0NCw3Ljc3NEg5Ljc0NAoJCQlDNS40NzQsNDAuNSwyLDM3LjAxMiwyLDMyLjcyNlYxNi4yNzRDMiwxMS45ODgsNS40NzQsOC41LDkuNzQ0LDguNWgyOS41MTJjNC4yNywwLDcuNzQ0LDMuNDg4LDcuNzQ0LDcuNzc0VjMyLjcyNnoiLz4KCQk8cGF0aCBkPSJNMzMuMzYsMjQuMTM4bC0xMy44NTUtOC4xMTVjLTAuMzA4LTAuMTgtMC42OTEtMC4xODMtMS4wMDItMC4wMDVTMTgsMTYuNTI3LDE4LDE2Ljg4NnYxNi4yMjkKCQkJYzAsMC4zNTgsMC4xOTIsMC42OSwwLjUwMiwwLjg2OGMwLjE1NCwwLjA4OCwwLjMyNiwwLjEzMiwwLjQ5OCwwLjEzMmMwLjE3NSwwLDAuMzQ5LTAuMDQ2LDAuNTA1LTAuMTM3bDEzLjg1NS04LjExMwoJCQljMC4zMDYtMC4xNzksMC40OTUtMC41MDgsMC40OTUtMC44NjNTMzMuNjY3LDI0LjMxNywzMy4zNiwyNC4xMzh6IE0yMCwzMS4zN1YxOC42M2wxMC44NzYsNi4zNzFMMjAsMzEuMzd6Ii8+Cgk8L2c+CjwvZz4KPC9zdmc+';
19590
- var LOG$s = getLogger('Backoffice', 'MediaItem');
19646
+ var LOG$t = getLogger('Backoffice', 'MediaItem');
19591
19647
  var MediaItem = /*#__PURE__*/function () {
19592
19648
  function MediaItem(_ref) {
19593
19649
  var media = _ref.media,
@@ -19700,7 +19756,7 @@ var MediaItem = /*#__PURE__*/function () {
19700
19756
  _context2.prev = 8;
19701
19757
  _context2.t0 = _context2["catch"](1);
19702
19758
  this._mediaItemRefId = undefined;
19703
- LOG$s.error(new DivaError$1('Failed to get media item ref, on next upload a new ref will be created', {
19759
+ LOG$t.error(new DivaError$1('Failed to get media item ref, on next upload a new ref will be created', {
19704
19760
  cause: _context2.t0
19705
19761
  }));
19706
19762
  case 12:
@@ -19797,9 +19853,9 @@ var MediaItem = /*#__PURE__*/function () {
19797
19853
  }]);
19798
19854
  }();
19799
19855
 
19800
- function _createForOfIteratorHelper$17(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$17(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
19801
- function _unsupportedIterableToArray$17(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$17(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$17(r, a) : void 0; } }
19802
- function _arrayLikeToArray$17(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
19856
+ function _createForOfIteratorHelper$18(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$18(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
19857
+ function _unsupportedIterableToArray$18(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$18(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$18(r, a) : void 0; } }
19858
+ function _arrayLikeToArray$18(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
19803
19859
  function processFormMediaBeforeSave(_x, _x2, _x3) {
19804
19860
  return _processFormMediaBeforeSave.apply(this, arguments);
19805
19861
  }
@@ -19817,7 +19873,7 @@ function _processFormMediaBeforeSave() {
19817
19873
  _context.next = 3;
19818
19874
  return processItems(data, items, root);
19819
19875
  case 3:
19820
- _iterator = _createForOfIteratorHelper$17(removedMedias);
19876
+ _iterator = _createForOfIteratorHelper$18(removedMedias);
19821
19877
  _context.prev = 4;
19822
19878
  _iterator.s();
19823
19879
  case 6:
@@ -19859,7 +19915,7 @@ function _processItems() {
19859
19915
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
19860
19916
  while (1) switch (_context2.prev = _context2.next) {
19861
19917
  case 0:
19862
- _iterator2 = _createForOfIteratorHelper$17(items);
19918
+ _iterator2 = _createForOfIteratorHelper$18(items);
19863
19919
  _context2.prev = 1;
19864
19920
  _iterator2.s();
19865
19921
  case 3:
@@ -19981,11 +20037,11 @@ function getData$1(id, data) {
19981
20037
  }
19982
20038
  }
19983
20039
 
19984
- function _createForOfIteratorHelper$16(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$16(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
19985
- function _unsupportedIterableToArray$16(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$16(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$16(r, a) : void 0; } }
19986
- function _arrayLikeToArray$16(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
19987
- function ownKeys$2C(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
19988
- function _objectSpread$2C(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2C(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2C(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20040
+ function _createForOfIteratorHelper$17(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$17(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
20041
+ function _unsupportedIterableToArray$17(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$17(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$17(r, a) : void 0; } }
20042
+ function _arrayLikeToArray$17(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
20043
+ function ownKeys$2E(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20044
+ function _objectSpread$2E(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2E(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2E(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19989
20045
  function toNamePath$2(name) {
19990
20046
  if (name === undefined || name === '') return [];
19991
20047
  return Array.isArray(name) ? name : [name];
@@ -20056,7 +20112,7 @@ function useFormData (_ref) {
20056
20112
  var _useMemo = useMemo(function () {
20057
20113
  setCanSave === null || setCanSave === void 0 || setCanSave(true);
20058
20114
  var baseConfiguration = configurationOverride !== null && configurationOverride !== void 0 ? configurationOverride : root.configurationStore.getConfiguration(id, 'Form');
20059
- var configuration = _objectSpread$2C(_objectSpread$2C({}, baseConfiguration), {}, {
20115
+ var configuration = _objectSpread$2E(_objectSpread$2E({}, baseConfiguration), {}, {
20060
20116
  apiInterface: apiInterface !== null && apiInterface !== void 0 ? apiInterface : baseConfiguration.apiInterface
20061
20117
  });
20062
20118
  var c = {
@@ -20115,7 +20171,7 @@ function useFormData (_ref) {
20115
20171
  setSelectedItems = _useState14[1];
20116
20172
  var _onLoadFields = function onLoadFields(data) {
20117
20173
  var items = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : selectedItems;
20118
- var _iterator = _createForOfIteratorHelper$16(items),
20174
+ var _iterator = _createForOfIteratorHelper$17(items),
20119
20175
  _step;
20120
20176
  try {
20121
20177
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -20156,7 +20212,7 @@ function useFormData (_ref) {
20156
20212
  multipleEditingData = inboundData;
20157
20213
  }
20158
20214
  return {
20159
- loadedData: _onLoadFields(_objectSpread$2C({}, dt)),
20215
+ loadedData: _onLoadFields(_objectSpread$2E({}, dt)),
20160
20216
  multipleEditingData: multipleEditingData
20161
20217
  };
20162
20218
  }, [inboundData]),
@@ -20183,7 +20239,7 @@ function useFormData (_ref) {
20183
20239
  setFieldErrors = _useState20[1];
20184
20240
  useEffect(function () {
20185
20241
  var _ref3, _loadedData$_id2;
20186
- setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20242
+ setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20187
20243
  data: loadedData,
20188
20244
  origData: JSON.parse(JSON.stringify((_ref3 = storedData !== null && storedData !== void 0 ? storedData : inboundData) !== null && _ref3 !== void 0 ? _ref3 : {})),
20189
20245
  update: !!((_loadedData$_id2 = loadedData === null || loadedData === void 0 ? void 0 : loadedData._id) !== null && _loadedData$_id2 !== void 0 ? _loadedData$_id2 : loadedData === null || loadedData === void 0 ? void 0 : loadedData.ID),
@@ -20296,7 +20352,7 @@ function useFormData (_ref) {
20296
20352
  root.actions.toggleLoading('saving_form');
20297
20353
  _context2.prev = 4;
20298
20354
  _context2.next = 7;
20299
- return setDynamicFields(_objectSpread$2C({}, state.data), newData);
20355
+ return setDynamicFields(_objectSpread$2E({}, state.data), newData);
20300
20356
  case 7:
20301
20357
  newData = _context2.sent;
20302
20358
  _context2.next = 10;
@@ -20311,7 +20367,7 @@ function useFormData (_ref) {
20311
20367
  root.actions.toggleLoading('saving_form');
20312
20368
  throw _context2.t0;
20313
20369
  case 17:
20314
- setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20370
+ setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20315
20371
  loading: true
20316
20372
  }));
20317
20373
  finalData = state.data;
@@ -20364,14 +20420,14 @@ function useFormData (_ref) {
20364
20420
  _context2.next = 47;
20365
20421
  break;
20366
20422
  }
20367
- setFieldErrors(_objectSpread$2C(_objectSpread$2C({}, fieldErrors), {}, _defineProperty({}, item.name.toString(), item.onError[errorCode])));
20423
+ setFieldErrors(_objectSpread$2E(_objectSpread$2E({}, fieldErrors), {}, _defineProperty({}, item.name.toString(), item.onError[errorCode])));
20368
20424
  return _context2.abrupt("return", undefined);
20369
20425
  case 47:
20370
20426
  throw _context2.t1;
20371
20427
  case 48:
20372
20428
  _context2.prev = 48;
20373
20429
  root.actions.toggleLoading('saving_form');
20374
- setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20430
+ setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20375
20431
  data: finalData,
20376
20432
  loading: false
20377
20433
  }));
@@ -20427,18 +20483,18 @@ function useFormData (_ref) {
20427
20483
  var data = d !== null && d !== void 0 ? d : mergeWith(cloneDeep(state.data), formValues, mergeFormWithCustomizer);
20428
20484
  if (id) {
20429
20485
  setFieldInObject(id, data, value);
20430
- var newFieldErrors = _objectSpread$2C({}, fieldErrors);
20486
+ var newFieldErrors = _objectSpread$2E({}, fieldErrors);
20431
20487
  delete newFieldErrors[id.toString()];
20432
20488
  setFieldErrors(newFieldErrors);
20433
20489
  }
20434
- setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20490
+ setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20435
20491
  data: data
20436
20492
  }));
20437
20493
  return data;
20438
20494
  };
20439
20495
  var getItem = function getItem(id) {
20440
20496
  var items = selectedItems;
20441
- var _iterator2 = _createForOfIteratorHelper$16(items),
20497
+ var _iterator2 = _createForOfIteratorHelper$17(items),
20442
20498
  _step2;
20443
20499
  try {
20444
20500
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
@@ -20487,10 +20543,10 @@ function useFormData (_ref) {
20487
20543
  } else {
20488
20544
  data[name] = val;
20489
20545
  }
20490
- if (configuration.itemSelectorReset) setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20546
+ if (configuration.itemSelectorReset) setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20491
20547
  data: data
20492
- }));else setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20493
- data: _objectSpread$2C(_objectSpread$2C({}, state.data), data)
20548
+ }));else setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20549
+ data: _objectSpread$2E(_objectSpread$2E({}, state.data), data)
20494
20550
  }));
20495
20551
  if (Array.isArray(configuration.items[selectorIdx[0]]) && Array.isArray(configuration.items[selectorIdx[0]][selectorIdx[1]])) {
20496
20552
  setSelectedItemsIndex([selectorIdx[0], selectorIdx[1]]);
@@ -20523,12 +20579,12 @@ function useFormData (_ref) {
20523
20579
  var val = _ref8.value;
20524
20580
  if (value === val) {
20525
20581
  if (configuration.itemSelectorReset) {
20526
- setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20582
+ setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20527
20583
  data: _defineProperty({}, name, val)
20528
20584
  }));
20529
20585
  } else {
20530
- setState(_objectSpread$2C(_objectSpread$2C({}, state), {}, {
20531
- data: _objectSpread$2C(_objectSpread$2C({}, state.data), {}, _defineProperty({}, name, val))
20586
+ setState(_objectSpread$2E(_objectSpread$2E({}, state), {}, {
20587
+ data: _objectSpread$2E(_objectSpread$2E({}, state.data), {}, _defineProperty({}, name, val))
20532
20588
  }));
20533
20589
  }
20534
20590
  setSelectedItemsIndex([selectedItemsIndex[0], idx]);
@@ -20614,7 +20670,7 @@ function useFormData (_ref) {
20614
20670
  return _getDynamicValue.apply(this, arguments);
20615
20671
  };
20616
20672
  items = selectedItems !== null && selectedItems !== void 0 ? selectedItems : configuration.items;
20617
- _iterator4 = _createForOfIteratorHelper$16(items);
20673
+ _iterator4 = _createForOfIteratorHelper$17(items);
20618
20674
  _context6.prev = 4;
20619
20675
  _iterator4.s();
20620
20676
  case 6:
@@ -20700,7 +20756,7 @@ function useFormData (_ref) {
20700
20756
  var _configuration$tools;
20701
20757
  return (_configuration$tools = configuration.tools) === null || _configuration$tools === void 0 ? void 0 : _configuration$tools.map(function (tool) {
20702
20758
  var _tool$defaultOpen;
20703
- return _objectSpread$2C(_objectSpread$2C({}, tool), {}, {
20759
+ return _objectSpread$2E(_objectSpread$2E({}, tool), {}, {
20704
20760
  parameters: {
20705
20761
  data: state.data,
20706
20762
  formInstance: form,
@@ -20722,7 +20778,7 @@ function useFormData (_ref) {
20722
20778
  return _regeneratorRuntime.wrap(function _callee3$(_context3) {
20723
20779
  while (1) switch (_context3.prev = _context3.next) {
20724
20780
  case 0:
20725
- _iterator3 = _createForOfIteratorHelper$16(items);
20781
+ _iterator3 = _createForOfIteratorHelper$17(items);
20726
20782
  _context3.prev = 1;
20727
20783
  _iterator3.s();
20728
20784
  case 3:
@@ -20848,7 +20904,7 @@ function useFormData (_ref) {
20848
20904
  }
20849
20905
  });
20850
20906
  }
20851
- return _objectSpread$2C(_objectSpread$2C({}, state), {}, {
20907
+ return _objectSpread$2E(_objectSpread$2E({}, state), {}, {
20852
20908
  getIsHidden: getIsHidden,
20853
20909
  setUsedPreset: setUsedPreset,
20854
20910
  configuration: configuration,
@@ -20966,8 +21022,8 @@ var JsonEditor$2 = function JsonEditor(_ref) {
20966
21022
  };
20967
21023
 
20968
21024
  var _excluded$h = ["key", "name"];
20969
- function ownKeys$2B(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20970
- function _objectSpread$2B(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2B(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2B(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21025
+ function ownKeys$2D(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21026
+ function _objectSpread$2D(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2D(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2D(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20971
21027
  var FormList$2 = function FormList(_ref) {
20972
21028
  var value = _ref.value,
20973
21029
  item = _ref.item,
@@ -21032,7 +21088,7 @@ var FormList$2 = function FormList(_ref) {
21032
21088
  var n = [name].concat(_toConsumableArray(Array.isArray(i.name) ? i.name : [i.name]), _toConsumableArray(i.doTranslate && postFixName ? Array.isArray(postFixName) ? postFixName : [postFixName] : []));
21033
21089
  var aName = [].concat(_toConsumableArray(Array.isArray(absoluteName) ? absoluteName : [absoluteName]), _toConsumableArray(n));
21034
21090
  var hidden = state.getIsHidden(i, state.data, [].concat(_toConsumableArray(Array.isArray(absoluteName) ? absoluteName : [absoluteName]), [name]));
21035
- return /*#__PURE__*/createElement(Form$2.Item, _objectSpread$2B(_objectSpread$2B({}, restField), {}, {
21091
+ return /*#__PURE__*/createElement(Form$2.Item, _objectSpread$2D(_objectSpread$2D({}, restField), {}, {
21036
21092
  id: n.join(),
21037
21093
  key: n.join(),
21038
21094
  name: n,
@@ -21044,7 +21100,7 @@ var FormList$2 = function FormList(_ref) {
21044
21100
  validateStatus: !!state.fieldErrors[n.toString()] ? 'error' : undefined,
21045
21101
  help: (_state$fieldErrors$n$ = state.fieldErrors[n.toString()]) !== null && _state$fieldErrors$n$ !== void 0 ? _state$fieldErrors$n$ : i.helpText,
21046
21102
  hidden: hidden
21047
- }), getElement(_objectSpread$2B(_objectSpread$2B({}, i), {}, {
21103
+ }), getElement(_objectSpread$2D(_objectSpread$2D({}, i), {}, {
21048
21104
  name: n
21049
21105
  }), setCanSave, state, aName, state.onInputChanged, onError, root, form, hidden));
21050
21106
  })
@@ -21210,8 +21266,8 @@ var Result = function Result(_ref) {
21210
21266
 
21211
21267
  var success = "success-tRJ7j";
21212
21268
  var error = "error-MtAFB";
21213
- var css_248z$1n = ".success-tRJ7j {\n color: #fff !important;\n background-color: #449d44 !important;\n border-color: #398439 !important;\n}\n\n.error-MtAFB {\n color: #fff !important;\n background-color: #c9302c !important;\n border-color: #ac2925 !important;\n}\n";
21214
- styleInject(css_248z$1n);
21269
+ var css_248z$1o = ".success-tRJ7j {\n color: #fff !important;\n background-color: #449d44 !important;\n border-color: #398439 !important;\n}\n\n.error-MtAFB {\n color: #fff !important;\n background-color: #c9302c !important;\n border-color: #ac2925 !important;\n}\n";
21270
+ styleInject(css_248z$1o);
21215
21271
 
21216
21272
  var azureIcon = "data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%20width%3D%2248px%22%20height%3D%2248px%22%3E%20%3ClinearGradient%20id%3D%22k8yl7~hDat~FaoWq8WjN6a%22%20x1%3D%22-1254.397%22%20x2%3D%22-1261.911%22%20y1%3D%22877.268%22%20y2%3D%22899.466%22%20gradientTransform%3D%22translate%281981.75%20-1362.063%29%20scale%281.5625%29%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23114a8b%22%2F%3E%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%230669bc%22%2F%3E%20%3C%2FlinearGradient%3E%20%3Cpath%20fill%3D%22url%28%23k8yl7~hDat~FaoWq8WjN6a%29%22%20d%3D%22M17.634%2C6h11.305L17.203%2C40.773c-0.247%2C0.733-0.934%2C1.226-1.708%2C1.226H6.697%20c-0.994%2C0-1.8-0.806-1.8-1.8c0-0.196%2C0.032-0.39%2C0.094-0.576L15.926%2C7.227C16.173%2C6.494%2C16.86%2C6%2C17.634%2C6L17.634%2C6z%22%2F%3E%20%3Cpath%20fill%3D%22%230078d4%22%20d%3D%22M34.062%2C29.324H16.135c-0.458-0.001-0.83%2C0.371-0.831%2C0.829c0%2C0.231%2C0.095%2C0.451%2C0.264%2C0.608%20l11.52%2C10.752C27.423%2C41.826%2C27.865%2C42%2C28.324%2C42h10.151L34.062%2C29.324z%22%2F%3E%20%3ClinearGradient%20id%3D%22k8yl7~hDat~FaoWq8WjN6b%22%20x1%3D%22-1252.05%22%20x2%3D%22-1253.788%22%20y1%3D%22887.612%22%20y2%3D%22888.2%22%20gradientTransform%3D%22translate%281981.75%20-1362.063%29%20scale%281.5625%29%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%20%20%3Cstop%20offset%3D%220%22%20stop-opacity%3D%22.3%22%2F%3E%20%20%3Cstop%20offset%3D%22.071%22%20stop-opacity%3D%22.2%22%2F%3E%20%20%3Cstop%20offset%3D%22.321%22%20stop-opacity%3D%22.1%22%2F%3E%20%20%3Cstop%20offset%3D%22.623%22%20stop-opacity%3D%22.05%22%2F%3E%20%20%3Cstop%20offset%3D%221%22%20stop-opacity%3D%220%22%2F%3E%20%3C%2FlinearGradient%3E%20%3Cpath%20fill%3D%22url%28%23k8yl7~hDat~FaoWq8WjN6b%29%22%20d%3D%22M17.634%2C6c-0.783-0.003-1.476%2C0.504-1.712%2C1.25L5.005%2C39.595%20c-0.335%2C0.934%2C0.151%2C1.964%2C1.085%2C2.299C6.286%2C41.964%2C6.493%2C42%2C6.702%2C42h9.026c0.684-0.122%2C1.25-0.603%2C1.481-1.259l2.177-6.416%20l7.776%2C7.253c0.326%2C0.27%2C0.735%2C0.419%2C1.158%2C0.422h10.114l-4.436-12.676l-12.931%2C0.003L28.98%2C6H17.634z%22%2F%3E%20%3ClinearGradient%20id%3D%22k8yl7~hDat~FaoWq8WjN6c%22%20x1%3D%22-1252.952%22%20x2%3D%22-1244.704%22%20y1%3D%22876.6%22%20y2%3D%22898.575%22%20gradientTransform%3D%22translate%281981.75%20-1362.063%29%20scale%281.5625%29%22%20gradientUnits%3D%22userSpaceOnUse%22%3E%20%20%3Cstop%20offset%3D%220%22%20stop-color%3D%22%233ccbf4%22%2F%3E%20%20%3Cstop%20offset%3D%221%22%20stop-color%3D%22%232892df%22%2F%3E%20%3C%2FlinearGradient%3E%20%3Cpath%20fill%3D%22url%28%23k8yl7~hDat~FaoWq8WjN6c%29%22%20d%3D%22M32.074%2C7.225C31.827%2C6.493%2C31.141%2C6%2C30.368%2C6h-12.6c0.772%2C0%2C1.459%2C0.493%2C1.705%2C1.224%20l10.935%2C32.399c0.318%2C0.942-0.188%2C1.963-1.13%2C2.281C29.093%2C41.968%2C28.899%2C42%2C28.703%2C42h12.6c0.994%2C0%2C1.8-0.806%2C1.8-1.801%20c0-0.196-0.032-0.39-0.095-0.575L32.074%2C7.225z%22%2F%3E%3C%2Fsvg%3E";
21217
21273
 
@@ -21275,11 +21331,11 @@ var CustomButton$1 = observer(CustomButton);
21275
21331
 
21276
21332
  var wrapper$a = "wrapper-GVe2h";
21277
21333
  var buttonGroup = "button-group-GYt-T";
21278
- var css_248z$1m = ".wrapper-GVe2h {\n display: flex;\n flex-direction: row;\n gap: 12px;\n}\n\n.button-group-GYt-T {\n display: flex;\n flex-direction: row;\n gap: 12px;\n margin: 0 12px;\n}\n";
21279
- styleInject(css_248z$1m);
21334
+ var css_248z$1n = ".wrapper-GVe2h {\n display: flex;\n flex-direction: row;\n gap: 12px;\n}\n\n.button-group-GYt-T {\n display: flex;\n flex-direction: row;\n gap: 12px;\n margin: 0 12px;\n}\n";
21335
+ styleInject(css_248z$1n);
21280
21336
 
21281
- function ownKeys$2A(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21282
- function _objectSpread$2A(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2A(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2A(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21337
+ function ownKeys$2C(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21338
+ function _objectSpread$2C(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2C(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2C(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21283
21339
  var SubTitle = function SubTitle(_ref) {
21284
21340
  var _item$label, _item$orientation, _item$buttonIds;
21285
21341
  var item = _ref.item,
@@ -21289,7 +21345,7 @@ var SubTitle = function SubTitle(_ref) {
21289
21345
  var title = (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : Array.isArray(item.name) ? item.name[0].toString() : item.name;
21290
21346
  return /*#__PURE__*/jsx(Divider, {
21291
21347
  orientation: (_item$orientation = item.orientation) !== null && _item$orientation !== void 0 ? _item$orientation : 'horizontal',
21292
- style: _objectSpread$2A({}, item.style),
21348
+ style: _objectSpread$2C({}, item.style),
21293
21349
  children: /*#__PURE__*/jsxs("div", {
21294
21350
  className: wrapper$a,
21295
21351
  children: [t(title, title), ((_item$buttonIds = item.buttonIds) === null || _item$buttonIds === void 0 ? void 0 : _item$buttonIds.length) && item.buttonIds.map(function (b) {
@@ -21380,15 +21436,15 @@ var InputComponent = function InputComponent(_ref, ref) {
21380
21436
  };
21381
21437
  var InputComponent$1 = observer(/*#__PURE__*/React.forwardRef(InputComponent));
21382
21438
 
21383
- function _createForOfIteratorHelper$15(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$15(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
21384
- function _unsupportedIterableToArray$15(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$15(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$15(r, a) : void 0; } }
21385
- function _arrayLikeToArray$15(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
21439
+ function _createForOfIteratorHelper$16(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$16(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
21440
+ function _unsupportedIterableToArray$16(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$16(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$16(r, a) : void 0; } }
21441
+ function _arrayLikeToArray$16(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
21386
21442
  function getCombinedValues(data, pattern) {
21387
21443
  if (!pattern || !data) {
21388
21444
  return data;
21389
21445
  }
21390
21446
  var value = pattern;
21391
- var _iterator = _createForOfIteratorHelper$15(pattern.matchAll(/\$\{(.*?)\}/g)),
21447
+ var _iterator = _createForOfIteratorHelper$16(pattern.matchAll(/\$\{(.*?)\}/g)),
21392
21448
  _step;
21393
21449
  try {
21394
21450
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -21404,7 +21460,7 @@ function getCombinedValues(data, pattern) {
21404
21460
  return value;
21405
21461
  }
21406
21462
 
21407
- var LOG$r = getLogger('Backoffice', 'SelectSimple');
21463
+ var LOG$s = getLogger('Backoffice', 'SelectSimple');
21408
21464
  function useSelectSimpleData (_ref) {
21409
21465
  var apiInterface = _ref.apiInterface,
21410
21466
  selectMapping = _ref.selectMapping,
@@ -21479,7 +21535,7 @@ function useSelectSimpleData (_ref) {
21479
21535
  var _options$;
21480
21536
  setOptions(options);
21481
21537
  if (value && options) {
21482
- LOG$r.debug('value changed', toJS(value), toJS(options));
21538
+ LOG$s.debug('value changed', toJS(value), toJS(options));
21483
21539
  var _selected = findByValue(value, options, selectMapping);
21484
21540
  var selectedValues = Array.isArray(_selected) ? _selected.map(function (item) {
21485
21541
  return item.value;
@@ -21491,7 +21547,7 @@ function useSelectSimpleData (_ref) {
21491
21547
  };
21492
21548
  useEffect(function () {
21493
21549
  if (configuredOptions) {
21494
- if (apiHandler.canReadList) LOG$r.warn('If options are provided, apiInterface will not be used');
21550
+ if (apiHandler.canReadList) LOG$s.warn('If options are provided, apiInterface will not be used');
21495
21551
  setLoadedOptions(configuredOptions);
21496
21552
  setLoading(false);
21497
21553
  return;
@@ -21544,7 +21600,7 @@ function findByValue(value, options, selectMapping) {
21544
21600
  return (selectMapping === null || selectMapping === void 0 ? void 0 : selectMapping.externalValue) == 'value' ? option.value == value : getCombinedValues(option.data, selectMapping === null || selectMapping === void 0 ? void 0 : selectMapping.value) == getCombinedValues(value, selectMapping === null || selectMapping === void 0 ? void 0 : selectMapping.value);
21545
21601
  });
21546
21602
  if (!option) {
21547
- LOG$r.debug('findByValue: option not found, add dummy option for current value', value, options);
21603
+ LOG$s.debug('findByValue: option not found, add dummy option for current value', value, options);
21548
21604
  //TODO: if we and server side filtering, the dummy option must be handled differently
21549
21605
  option = {
21550
21606
  label: (selectMapping === null || selectMapping === void 0 ? void 0 : selectMapping.externalValue) == 'value' ? value : typeof (selectMapping === null || selectMapping === void 0 ? void 0 : selectMapping.label) === 'function' ? selectMapping.label(value) : getCombinedValues(value, selectMapping === null || selectMapping === void 0 ? void 0 : selectMapping.label),
@@ -21579,12 +21635,12 @@ function parseReturnData(options, selectMapping) {
21579
21635
  }
21580
21636
 
21581
21637
  var wrapper$9 = "wrapper-4xyke";
21582
- var css_248z$1l = ".wrapper-4xyke {\n display: flex;\n flex-direction: column;\n min-height: 50px;\n justify-content: flex-end;\n font-size: 12px;\n}\n";
21583
- styleInject(css_248z$1l);
21638
+ var css_248z$1m = ".wrapper-4xyke {\n display: flex;\n flex-direction: column;\n min-height: 50px;\n justify-content: flex-end;\n font-size: 12px;\n}\n";
21639
+ styleInject(css_248z$1m);
21584
21640
 
21585
21641
  var _excluded$g = ["apiInterface", "selectMapping", "apiMapping", "onChange", "value", "search", "options", "autoSelectFirst", "title", "sharedState"];
21586
- function ownKeys$2z(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21587
- function _objectSpread$2z(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2z(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2z(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21642
+ function ownKeys$2B(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
21643
+ function _objectSpread$2B(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2B(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2B(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21588
21644
  var SelectWrapper$1 = function SelectWrapper(_ref, ref) {
21589
21645
  var apiInterface = _ref.apiInterface,
21590
21646
  selectMapping = _ref.selectMapping,
@@ -21611,7 +21667,7 @@ var SelectWrapper$1 = function SelectWrapper(_ref, ref) {
21611
21667
  return /*#__PURE__*/jsxs("div", {
21612
21668
  ref: ref,
21613
21669
  className: classNames(title ? wrapper$9 : undefined),
21614
- children: [title, /*#__PURE__*/jsx(Select, _objectSpread$2z(_objectSpread$2z({}, selectProps), {}, {
21670
+ children: [title, /*#__PURE__*/jsx(Select, _objectSpread$2B(_objectSpread$2B({}, selectProps), {}, {
21615
21671
  showSearch: search,
21616
21672
  loading: state.loading,
21617
21673
  options: state.options,
@@ -22228,8 +22284,8 @@ var _default = /*#__PURE__*/function (_ApiHandler) {
22228
22284
  }]);
22229
22285
  }(_default$c);
22230
22286
 
22231
- function ownKeys$2y(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22232
- function _objectSpread$2y(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2y(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2y(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22287
+ function ownKeys$2A(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22288
+ function _objectSpread$2A(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2A(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2A(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22233
22289
  getLogger('Backoffice', 'SelectClientRelationCatalog');
22234
22290
  function useSelectClientRelationCatalog (_ref) {
22235
22291
  var onSelectedCatalog = _ref.onSelectedCatalog,
@@ -22398,7 +22454,7 @@ function useSelectClientRelationCatalog (_ref) {
22398
22454
  case 22:
22399
22455
  supplierData = _context2.sent;
22400
22456
  case 23:
22401
- onSelectedSupplier === null || onSelectedSupplier === void 0 || onSelectedSupplier(_objectSpread$2y(_objectSpread$2y({}, _selectedSupplier), {}, {
22457
+ onSelectedSupplier === null || onSelectedSupplier === void 0 || onSelectedSupplier(_objectSpread$2A(_objectSpread$2A({}, _selectedSupplier), {}, {
22402
22458
  supplierGuid: catalogList === null || catalogList === void 0 || (_catalogList$ = catalogList[0]) === null || _catalogList$ === void 0 ? void 0 : _catalogList$.Subfolder
22403
22459
  }), supplierData);
22404
22460
  if (catalogId && catalogList.find(function (c) {
@@ -22466,8 +22522,8 @@ var customSelectContentWrapper = "custom-select-content-wrapper-v98Ms";
22466
22522
  var customSelectOptionContent = "custom-select-option-content-LIbzl";
22467
22523
  var customSelectAvatar = "custom-select-avatar-DPCn1";
22468
22524
  var customSelectOptionText = "custom-select-option-text-crPF-";
22469
- var css_248z$1k = ".custom-select-container-rPcLx {\n display: flex;\n gap: 8px;\n height: 32px;\n}\n\n.custom-select-ESUJX {\n width: 300px;\n}\n\n.custom-select-content-wrapper-v98Ms {\n display: flex;\n align-items: center;\n height: 22px;\n}\n\n.custom-select-option-content-LIbzl {\n display: flex;\n align-items: center;\n gap: 8px;\n max-width: 100%;\n height: 100%;\n}\n\n.custom-select-option-content-LIbzl .custom-select-avatar-DPCn1 {\n flex-shrink: 0;\n}\n\n.custom-select-option-content-LIbzl .custom-select-option-text-crPF- {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n";
22470
- styleInject(css_248z$1k);
22525
+ var css_248z$1l = ".custom-select-container-rPcLx {\n display: flex;\n gap: 8px;\n height: 32px;\n}\n\n.custom-select-ESUJX {\n width: 300px;\n}\n\n.custom-select-content-wrapper-v98Ms {\n display: flex;\n align-items: center;\n height: 22px;\n}\n\n.custom-select-option-content-LIbzl {\n display: flex;\n align-items: center;\n gap: 8px;\n max-width: 100%;\n height: 100%;\n}\n\n.custom-select-option-content-LIbzl .custom-select-avatar-DPCn1 {\n flex-shrink: 0;\n}\n\n.custom-select-option-content-LIbzl .custom-select-option-text-crPF- {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n";
22526
+ styleInject(css_248z$1l);
22471
22527
 
22472
22528
  var Selector = function Selector(_ref) {
22473
22529
  var items = _ref.items,
@@ -22628,11 +22684,11 @@ function SelectClientRelationCatalog (_ref) {
22628
22684
  });
22629
22685
  }
22630
22686
 
22631
- function _createForOfIteratorHelper$14(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$14(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
22632
- function _unsupportedIterableToArray$14(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$14(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$14(r, a) : void 0; } }
22633
- function _arrayLikeToArray$14(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
22634
- function ownKeys$2x(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22635
- function _objectSpread$2x(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2x(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2x(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22687
+ function _createForOfIteratorHelper$15(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$15(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
22688
+ function _unsupportedIterableToArray$15(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$15(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$15(r, a) : void 0; } }
22689
+ function _arrayLikeToArray$15(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
22690
+ function ownKeys$2z(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
22691
+ function _objectSpread$2z(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2z(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2z(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22636
22692
  function useSelectData (_ref) {
22637
22693
  var data = _ref.data,
22638
22694
  onChange = _ref.onChange,
@@ -22886,7 +22942,7 @@ function useSelectData (_ref) {
22886
22942
  }
22887
22943
  emails = initData;
22888
22944
  optionByValue = new Map();
22889
- _iterator2 = _createForOfIteratorHelper$14(emails);
22945
+ _iterator2 = _createForOfIteratorHelper$15(emails);
22890
22946
  _context4.prev = 12;
22891
22947
  _loop = /*#__PURE__*/_regeneratorRuntime.mark(function _loop() {
22892
22948
  var email, list, opt;
@@ -22953,7 +23009,7 @@ function useSelectData (_ref) {
22953
23009
  }
22954
23010
  keys = initData;
22955
23011
  _optionByValue = new Map();
22956
- _iterator3 = _createForOfIteratorHelper$14(keys);
23012
+ _iterator3 = _createForOfIteratorHelper$15(keys);
22957
23013
  _context4.prev = 35;
22958
23014
  _loop2 = /*#__PURE__*/_regeneratorRuntime.mark(function _loop2() {
22959
23015
  var key, list, opt;
@@ -23104,7 +23160,7 @@ function useSelectData (_ref) {
23104
23160
  setFetching(true);
23105
23161
  serverSideParams = {
23106
23162
  filters: selectMapping !== null && selectMapping !== void 0 && selectMapping.searchField ? (_selectMapping$search = selectMapping.searchField) === null || _selectMapping$search === void 0 ? void 0 : _selectMapping$search.reduce(function (filter, field) {
23107
- return _objectSpread$2x(_objectSpread$2x({}, filter), value !== undefined ? _defineProperty({}, field.field, [value, field.filter, true]) : {});
23163
+ return _objectSpread$2z(_objectSpread$2z({}, filter), value !== undefined ? _defineProperty({}, field.field, [value, field.filter, true]) : {});
23108
23164
  }, {}) : {
23109
23165
  _id: [value, 'contains']
23110
23166
  },
@@ -23181,7 +23237,7 @@ function useSelectData (_ref) {
23181
23237
  var verifySelection = function verifySelection(opt) {
23182
23238
  if (disabledConfig == undefined) return [];
23183
23239
  var _missingFields = [];
23184
- var _iterator = _createForOfIteratorHelper$14(disabledConfig),
23240
+ var _iterator = _createForOfIteratorHelper$15(disabledConfig),
23185
23241
  _step;
23186
23242
  try {
23187
23243
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -23410,8 +23466,8 @@ function useSelectData (_ref) {
23410
23466
 
23411
23467
  var selectWithCopy = "select-with-copy-r6iEI";
23412
23468
  var selectGrow = "select-grow-Zr2r9";
23413
- var css_248z$1j = ".select-with-copy-r6iEI {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n}\n\n.select-with-copy-r6iEI > .select-grow-Zr2r9 {\n flex: 1;\n min-width: 0;\n}\n\n.darkmode .ant-select-selection-search-input {\n color: #fff;\n}\n";
23414
- styleInject(css_248z$1j);
23469
+ var css_248z$1k = ".select-with-copy-r6iEI {\n display: flex;\n align-items: center;\n gap: 8px;\n width: 100%;\n}\n\n.select-with-copy-r6iEI > .select-grow-Zr2r9 {\n flex: 1;\n min-width: 0;\n}\n\n.darkmode .ant-select-selection-search-input {\n color: #fff;\n}\n";
23470
+ styleInject(css_248z$1k);
23415
23471
 
23416
23472
  function selectedToClipboardText(selected) {
23417
23473
  if (!(selected !== null && selected !== void 0 && selected.length)) return '';
@@ -23578,12 +23634,12 @@ var LookupSelect = observer(SelectWrapper);
23578
23634
  var wrapper$8 = "wrapper-WStAk";
23579
23635
  var headerWrapper = "header-wrapper-gWQuH";
23580
23636
  var buttonsWrapper$1 = "buttons-wrapper-7ebR9";
23581
- var css_248z$1i = ".wrapper-WStAk {\n display: flex;\n flex-direction: column;\n}\n.header-wrapper-gWQuH {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-left: 64px;\n}\n\n.buttons-wrapper-7ebR9 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-grow: 1;\n}\n";
23582
- styleInject(css_248z$1i);
23637
+ var css_248z$1j = ".wrapper-WStAk {\n display: flex;\n flex-direction: column;\n}\n.header-wrapper-gWQuH {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-left: 64px;\n}\n\n.buttons-wrapper-7ebR9 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-grow: 1;\n}\n";
23638
+ styleInject(css_248z$1j);
23583
23639
 
23584
- function ownKeys$2w(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23585
- function _objectSpread$2w(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2w(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2w(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23586
- var LOG$q = getLogger('Backoffice', 'Translation Form');
23640
+ function ownKeys$2y(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23641
+ function _objectSpread$2y(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2y(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2y(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23642
+ var LOG$r = getLogger('Backoffice', 'Translation Form');
23587
23643
 
23588
23644
  /** The languages a translation field edits - also the ones the content item preview offers. */
23589
23645
  var TRANSLATION_LANGUAGES = ['de', 'it', 'fr', 'en'];
@@ -23670,7 +23726,7 @@ function useTranslationHook (item, state) {
23670
23726
  case 23:
23671
23727
  _context.prev = 23;
23672
23728
  _context.t2 = _context["catch"](9);
23673
- LOG$q.error({
23729
+ LOG$r.error({
23674
23730
  message: 'Error on translating ' + value,
23675
23731
  name: ''
23676
23732
  });
@@ -23724,7 +23780,7 @@ function useTranslationHook (item, state) {
23724
23780
  case 0:
23725
23781
  _context2.next = 2;
23726
23782
  return apiHandler.create({
23727
- locales: _objectSpread$2w({
23783
+ locales: _objectSpread$2y({
23728
23784
  de: {},
23729
23785
  it: {},
23730
23786
  fr: {},
@@ -23773,8 +23829,8 @@ function useTranslationHook (item, state) {
23773
23829
  };
23774
23830
  }
23775
23831
 
23776
- function ownKeys$2v(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23777
- function _objectSpread$2v(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2v(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2v(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23832
+ function ownKeys$2x(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23833
+ function _objectSpread$2x(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2x(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2x(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
23778
23834
  var HiddenFormField = function HiddenFormField() {
23779
23835
  return null;
23780
23836
  };
@@ -23840,7 +23896,7 @@ var Translation = function Translation(_ref) {
23840
23896
  }, key);
23841
23897
  }
23842
23898
  return /*#__PURE__*/jsx(React.Fragment, {
23843
- children: ['subTitle', 'array'].includes(i.type) ? getElement(_objectSpread$2v(_objectSpread$2v({}, i), {}, {
23899
+ children: ['subTitle', 'array'].includes(i.type) ? getElement(_objectSpread$2x(_objectSpread$2x({}, i), {}, {
23844
23900
  name: n
23845
23901
  }), setCanSave, state, newAbsoluteName, state.onInputChanged, onError, root, form, hidden, currentLang, newFormName) : /*#__PURE__*/jsx(Form$2.Item, {
23846
23902
  id: idx.toString(),
@@ -23853,7 +23909,7 @@ var Translation = function Translation(_ref) {
23853
23909
  validateStatus: !!state.fieldErrors[n.toString()] ? 'error' : undefined,
23854
23910
  help: (_state$fieldErrors$n$ = state.fieldErrors[n.toString()]) !== null && _state$fieldErrors$n$ !== void 0 ? _state$fieldErrors$n$ : i.helpText,
23855
23911
  hidden: hidden,
23856
- children: getElement(_objectSpread$2v(_objectSpread$2v({}, i), {}, {
23912
+ children: getElement(_objectSpread$2x(_objectSpread$2x({}, i), {}, {
23857
23913
  name: n
23858
23914
  }), setCanSave, state, newAbsoluteName, state.onInputChanged, onError, root, form, hidden)
23859
23915
  })
@@ -23949,7 +24005,7 @@ function FileInput(_ref3) {
23949
24005
  });
23950
24006
  }
23951
24007
 
23952
- var LOG$p = getLogger('Backoffice', 'AssetManager');
24008
+ var LOG$q = getLogger('Backoffice', 'AssetManager');
23953
24009
  function Upload (_ref) {
23954
24010
  var allowedTypes = _ref.allowedTypes,
23955
24011
  media = _ref.media,
@@ -23981,10 +24037,10 @@ function Upload (_ref) {
23981
24037
  if (!e) {
23982
24038
  setError === null || setError === void 0 || setError(undefined);
23983
24039
  } else if (e instanceof DivaError) {
23984
- LOG$p.error(e);
24040
+ LOG$q.error(e);
23985
24041
  setError(t('backoffice.mediaupload.error.' + e.name));
23986
24042
  } else {
23987
- LOG$p.error(new DivaError('An unexpected error occurred', {
24043
+ LOG$q.error(new DivaError('An unexpected error occurred', {
23988
24044
  cause: e
23989
24045
  }));
23990
24046
  setError(t('backoffice.mediaupload.error.unknown'));
@@ -24209,8 +24265,8 @@ var Text$9 = observer(Text$8);
24209
24265
 
24210
24266
  var root$e = "root-Eiuo1";
24211
24267
  var popoverContent = "popoverContent-uExP4";
24212
- var css_248z$1h = ".root-Eiuo1 {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.popoverContent-uExP4 {\n display: flex;\n flex-direction: column;\n gap: 8px;\n min-width: 140px;\n}\n";
24213
- styleInject(css_248z$1h);
24268
+ var css_248z$1i = ".root-Eiuo1 {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.popoverContent-uExP4 {\n display: flex;\n flex-direction: column;\n gap: 8px;\n min-width: 140px;\n}\n";
24269
+ styleInject(css_248z$1i);
24214
24270
 
24215
24271
  var CustomColorPicker = function CustomColorPicker(_ref) {
24216
24272
  var item = _ref.item,
@@ -24340,8 +24396,8 @@ function deltaFromColors(mainHex, valueHex) {
24340
24396
  return avg;
24341
24397
  }
24342
24398
 
24343
- function ownKeys$2u(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24344
- function _objectSpread$2u(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2u(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2u(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24399
+ function ownKeys$2w(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24400
+ function _objectSpread$2w(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2w(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2w(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24345
24401
  function FormSlider(_ref) {
24346
24402
  var item = _ref.item,
24347
24403
  disabled = _ref.disabled,
@@ -24375,7 +24431,7 @@ function FormSlider(_ref) {
24375
24431
  children: t('backoffice.form.slider.apiDefaultHint', {
24376
24432
  defaultValue: 'Not set (Gemini API default, typically 1). Move the slider to set.'
24377
24433
  })
24378
- }) : null, /*#__PURE__*/jsx(Slider, _objectSpread$2u(_objectSpread$2u({
24434
+ }) : null, /*#__PURE__*/jsx(Slider, _objectSpread$2w(_objectSpread$2w({
24379
24435
  min: item.min,
24380
24436
  max: item.max,
24381
24437
  step: item.step
@@ -24403,11 +24459,11 @@ function FormSlider(_ref) {
24403
24459
  });
24404
24460
  }
24405
24461
 
24406
- function _createForOfIteratorHelper$13(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$13(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
24407
- function _unsupportedIterableToArray$13(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$13(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$13(r, a) : void 0; } }
24408
- function _arrayLikeToArray$13(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
24409
- function ownKeys$2t(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24410
- function _objectSpread$2t(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2t(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2t(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24462
+ function _createForOfIteratorHelper$14(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$14(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
24463
+ function _unsupportedIterableToArray$14(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$14(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$14(r, a) : void 0; } }
24464
+ function _arrayLikeToArray$14(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
24465
+ function ownKeys$2v(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24466
+ function _objectSpread$2v(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2v(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2v(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24411
24467
  function getElement(item, setCanSave, state, absoluteName, _onChange, _onError, root, form, hidden, postFixName, formName) {
24412
24468
  var _isReadonly, _state$hiddenRequired, _state$data$_id, _state$data;
24413
24469
  if (hidden) return /*#__PURE__*/jsx(Fragment, {});
@@ -24444,7 +24500,7 @@ function getElement(item, setCanSave, state, absoluteName, _onChange, _onError,
24444
24500
  }
24445
24501
  });
24446
24502
  case 'selectSimple':
24447
- return /*#__PURE__*/jsx(SimpleSelect, _objectSpread$2t(_objectSpread$2t({}, item), {}, {
24503
+ return /*#__PURE__*/jsx(SimpleSelect, _objectSpread$2v(_objectSpread$2v({}, item), {}, {
24448
24504
  disabled: disabled,
24449
24505
  onChange: function onChange(value) {
24450
24506
  _onChange(absoluteName, value);
@@ -24520,7 +24576,7 @@ function getElement(item, setCanSave, state, absoluteName, _onChange, _onError,
24520
24576
  mappingData: state.data,
24521
24577
  callback: function callback(data) {
24522
24578
  if (!item.callbackMapping) return;
24523
- var _iterator = _createForOfIteratorHelper$13(item.callbackMapping),
24579
+ var _iterator = _createForOfIteratorHelper$14(item.callbackMapping),
24524
24580
  _step;
24525
24581
  try {
24526
24582
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -24719,7 +24775,7 @@ function getElement(item, setCanSave, state, absoluteName, _onChange, _onError,
24719
24775
  },
24720
24776
  icon: item.icon,
24721
24777
  callback: function callback(data) {
24722
- return form === null || form === void 0 ? void 0 : form.setFieldsValue(_objectSpread$2t(_objectSpread$2t({}, state.data), data));
24778
+ return form === null || form === void 0 ? void 0 : form.setFieldsValue(_objectSpread$2v(_objectSpread$2v({}, state.data), data));
24723
24779
  }
24724
24780
  });
24725
24781
  case 'media':
@@ -24757,7 +24813,7 @@ function getElement(item, setCanSave, state, absoluteName, _onChange, _onError,
24757
24813
  var DisplayInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
24758
24814
  var _useTranslation = useTranslation(),
24759
24815
  t = _useTranslation.t;
24760
- return /*#__PURE__*/jsx(Input$1, _objectSpread$2t(_objectSpread$2t({}, props), {}, {
24816
+ return /*#__PURE__*/jsx(Input$1, _objectSpread$2v(_objectSpread$2v({}, props), {}, {
24761
24817
  ref: ref,
24762
24818
  disabled: true,
24763
24819
  value: t(props.translationPrefix + '.' + props.value)
@@ -24776,11 +24832,11 @@ function isReadonly(item, data) {
24776
24832
  return false;
24777
24833
  }
24778
24834
 
24779
- function ownKeys$2s(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24780
- function _objectSpread$2s(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2s(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2s(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24781
- function _createForOfIteratorHelper$12(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$12(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
24782
- function _unsupportedIterableToArray$12(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$12(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$12(r, a) : void 0; } }
24783
- function _arrayLikeToArray$12(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
24835
+ function ownKeys$2u(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24836
+ function _objectSpread$2u(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2u(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2u(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24837
+ function _createForOfIteratorHelper$13(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$13(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
24838
+ function _unsupportedIterableToArray$13(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$13(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$13(r, a) : void 0; } }
24839
+ function _arrayLikeToArray$13(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
24784
24840
  var Presets = function Presets(_ref) {
24785
24841
  var state = _ref.state,
24786
24842
  apiHandler = _ref.apiHandler,
@@ -24815,7 +24871,7 @@ var Presets = function Presets(_ref) {
24815
24871
  if (state.selectedItems == undefined) return;
24816
24872
  setIsModalVisible(false);
24817
24873
  var names = [];
24818
- var _iterator = _createForOfIteratorHelper$12(state.selectedItems),
24874
+ var _iterator = _createForOfIteratorHelper$13(state.selectedItems),
24819
24875
  _step;
24820
24876
  try {
24821
24877
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
@@ -24827,13 +24883,13 @@ var Presets = function Presets(_ref) {
24827
24883
  } finally {
24828
24884
  _iterator.f();
24829
24885
  }
24830
- var data = _objectSpread$2s(_objectSpread$2s({}, form.getFieldsValue(names)), {}, {
24886
+ var data = _objectSpread$2u(_objectSpread$2u({}, form.getFieldsValue(names)), {}, {
24831
24887
  newPresetName: newPresetName
24832
24888
  });
24833
24889
  data.dpi = parseInt(data.dpi);
24834
24890
  data.organization = root.getGlobalValue('organizationId');
24835
24891
  apiHandler.create({}, state.configuration.createPresetMapping, data);
24836
- var dt = _objectSpread$2s(_objectSpread$2s({}, form.getFieldsValue(names)), {}, {
24892
+ var dt = _objectSpread$2u(_objectSpread$2u({}, form.getFieldsValue(names)), {}, {
24837
24893
  name: newPresetName
24838
24894
  });
24839
24895
  setPresets({
@@ -24967,8 +25023,8 @@ function ModalProgressBar(_ref) {
24967
25023
  });
24968
25024
  }
24969
25025
 
24970
- function ownKeys$2r(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24971
- function _objectSpread$2r(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2r(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2r(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25026
+ function ownKeys$2t(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25027
+ function _objectSpread$2t(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2t(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2t(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24972
25028
  function ItemSelector(_ref) {
24973
25029
  var state = _ref.state,
24974
25030
  setCanSave = _ref.setCanSave,
@@ -24985,7 +25041,7 @@ function ItemSelector(_ref) {
24985
25041
  rules: state.getRules(itemSelector, state.data),
24986
25042
  label: itemSelector.label ? t(itemSelector.label, itemSelector.label) : itemSelector.name,
24987
25043
  valuePropName: itemSelector.type == 'checkbox' ? 'checked' : 'value',
24988
- children: getElement(_objectSpread$2r(_objectSpread$2r({}, itemSelector), {}, {
25044
+ children: getElement(_objectSpread$2t(_objectSpread$2t({}, itemSelector), {}, {
24989
25045
  value: itemSelector.type == 'select' ? itemSelector.values[state.selectedItemsIndex[idx]] : undefined
24990
25046
  }), setCanSave, state, itemSelector.name, state.onItemSelectorChanged, onErrorInternal)
24991
25047
  }, itemSelector.name.toString());
@@ -25005,6 +25061,193 @@ function formErrorText(error, onError) {
25005
25061
  return error instanceof DivaError ? onError === null || onError === void 0 ? void 0 : onError[error.name] : undefined;
25006
25062
  }
25007
25063
 
25064
+ var LOG$p = getLogger('Backoffice', 'Form');
25065
+
25066
+ /**
25067
+ * Reads which values of the opened record are inherited from a parent and which override a parent's value, keyed by path.
25068
+ * Kept apart from the form data, so saving never patches it. Empty without `inheritance` configured, while creating, or while loading.
25069
+ *
25070
+ * @param inheritance the form's inheritance configuration
25071
+ * @param id the `_id` of the opened record
25072
+ */
25073
+ function useInheritance(inheritance, id) {
25074
+ var root = useStore();
25075
+ var _useState = useState(new Map()),
25076
+ _useState2 = _slicedToArray(_useState, 2),
25077
+ entries = _useState2[0],
25078
+ setEntries = _useState2[1];
25079
+ useEffect(function () {
25080
+ setEntries(new Map());
25081
+ if (!inheritance || !id) return;
25082
+ var active = true;
25083
+ new _default$c({
25084
+ type: 'Form',
25085
+ apiInterface: inheritance.apiInterface
25086
+ }, root).read(inheritance.mapping, {
25087
+ _id: id
25088
+ }).then(function (response) {
25089
+ var loaded = response === null || response === void 0 ? void 0 : response.entries;
25090
+ // the read resolves with the error body on a failed request
25091
+ if (!Array.isArray(loaded)) {
25092
+ LOG$p.warn('Loading the inherited values failed — the form shows no inheritance', response);
25093
+ return;
25094
+ }
25095
+ if (active) setEntries(new Map(loaded.map(function (entry) {
25096
+ return [entry.path, entry];
25097
+ })));
25098
+ })["catch"](function (error) {
25099
+ return LOG$p.warn('Loading the inherited values failed — the form shows no inheritance', error);
25100
+ });
25101
+ return function () {
25102
+ active = false;
25103
+ };
25104
+ }, [inheritance, id]);
25105
+ return entries;
25106
+ }
25107
+
25108
+ function ownKeys$2s(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25109
+ function _objectSpread$2s(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2s(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2s(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25110
+ function _createForOfIteratorHelper$12(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$12(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
25111
+ function _unsupportedIterableToArray$12(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$12(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$12(r, a) : void 0; } }
25112
+ function _arrayLikeToArray$12(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
25113
+
25114
+ /** A value of the form data that is inherited from a parent organization, or a local value that overrides a parent's value. */
25115
+
25116
+ /**
25117
+ * Finds the inheritance entry of a form field: the entry of its exact path, else the first entry below it, since an object value
25118
+ * (e.g. a populated reference) is reported per leaf. Below the field only a `name` leaf stands for the field's value.
25119
+ */
25120
+ function findInheritanceEntry(entries, name) {
25121
+ var path = Array.isArray(name) ? name.join('.') : name;
25122
+ var exact = entries.get(path);
25123
+ if (exact) return exact;
25124
+ var _iterator = _createForOfIteratorHelper$12(entries),
25125
+ _step;
25126
+ try {
25127
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
25128
+ var _entries$get;
25129
+ var _step$value = _slicedToArray(_step.value, 2),
25130
+ entryPath = _step$value[0],
25131
+ entry = _step$value[1];
25132
+ if (entryPath.startsWith("".concat(path, "."))) return _objectSpread$2s(_objectSpread$2s({}, entry), {}, {
25133
+ value: (_entries$get = entries.get("".concat(path, ".name"))) === null || _entries$get === void 0 ? void 0 : _entries$get.value
25134
+ });
25135
+ }
25136
+ } catch (err) {
25137
+ _iterator.e(err);
25138
+ } finally {
25139
+ _iterator.f();
25140
+ }
25141
+ return undefined;
25142
+ }
25143
+
25144
+ /**
25145
+ * Formats an inherited value for display: the label of the matching radio option, list items comma separated,
25146
+ * the entries of a list field one per line, or the plain value.
25147
+ */
25148
+ function formatInheritedValue(value, item) {
25149
+ // a radio's "inherited" option has the value undefined, so a missing value must not match it
25150
+ if (value === undefined) return undefined;
25151
+ if (storesId(item)) return undefined;
25152
+ if (item.type === 'radio') {
25153
+ var option = item.options.find(function (o) {
25154
+ return o.value === value;
25155
+ });
25156
+ if (option) return option.label;
25157
+ }
25158
+ if (Array.isArray(value)) {
25159
+ if (value.every(isPrimitive)) return value.join(', ');
25160
+ if (item.type !== 'array') return undefined;
25161
+ // an entry shows the texts and numbers of its fields, in the order of the form
25162
+ var lines = value.map(function (entry) {
25163
+ return item.items.filter(function (field) {
25164
+ return !storesId(field);
25165
+ }).map(function (field) {
25166
+ return get(entry, field.name);
25167
+ }).filter(function (v) {
25168
+ return typeof v === 'string' && v !== '' || typeof v === 'number';
25169
+ }).join(' · ');
25170
+ }).filter(Boolean);
25171
+ return lines.length ? lines.join('\n') : undefined;
25172
+ }
25173
+ return isPrimitive(value) ? String(value) : undefined;
25174
+ }
25175
+
25176
+ /** Whether a field currently holds no own value (an unchecked checkbox counts as empty). */
25177
+ function isEmptyFieldValue(value, item) {
25178
+ if (value === undefined || value === null || value === '') return true;
25179
+ if (Array.isArray(value)) return value.length === 0;
25180
+ return item.type === 'checkbox' && value === false;
25181
+ }
25182
+
25183
+ /**
25184
+ * Whether the current value of a field overrides the parent's value. As loaded, the stored state tells, since only the backend knows the
25185
+ * field's inheritance rule: a rule may inherit into an unset value only, so a stored '' or false overrides, or take a whole block from the
25186
+ * parent, so an own value is ignored. An edited field is judged by its value: an own value overrides, an emptied field inherits.
25187
+ *
25188
+ * @param value the current value of the field
25189
+ * @param item the form field
25190
+ * @param entry the field's inheritance entry, as stored
25191
+ * @param edited whether the field was edited since the form was loaded
25192
+ */
25193
+ function overridesParent(value, item, entry, edited) {
25194
+ if (!edited) return entry.state === 'overridden';
25195
+ return !isEmptyFieldValue(value, item);
25196
+ }
25197
+
25198
+ /** Whether the field stores an id, which means nothing to the reader. */
25199
+ function storesId(item) {
25200
+ return item.type === 'media' || item.type === 'selectClientRelationCatalog';
25201
+ }
25202
+ function isPrimitive(value) {
25203
+ return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';
25204
+ }
25205
+
25206
+ /**
25207
+ * Shows the value of a parent organization below a form field — the value the field inherits, or the one its own value overrides —
25208
+ * followed by the organization and whether it is inherited or overridden; a value without a display text shows that text only.
25209
+ */
25210
+ var InheritedValue = function InheritedValue(_ref) {
25211
+ var entry = _ref.entry,
25212
+ item = _ref.item,
25213
+ overridden = _ref.overridden;
25214
+ var _useTranslation = useTranslation(),
25215
+ t = _useTranslation.t;
25216
+ var _theme$useToken = theme.useToken(),
25217
+ token = _theme$useToken.token;
25218
+ var value = formatInheritedValue(entry.value, item);
25219
+ var origin = overridden ? t('backoffice.form.inheritance.overrides', {
25220
+ organization: entry.displayName,
25221
+ defaultValue: 'Überschreibt den Wert von {{organization}}'
25222
+ }) : t('backoffice.form.inheritance.inheritedFrom', {
25223
+ organization: entry.displayName,
25224
+ defaultValue: 'Geerbt von {{organization}}'
25225
+ });
25226
+ return /*#__PURE__*/jsxs(Typography.Text, {
25227
+ type: "secondary",
25228
+ style: {
25229
+ whiteSpace: 'pre-wrap'
25230
+ },
25231
+ children: [item.type === 'colorPicker' && value !== undefined &&
25232
+ /*#__PURE__*/
25233
+ // the outline keeps white and very light colors visible
25234
+ jsx("span", {
25235
+ style: {
25236
+ display: 'inline-block',
25237
+ width: 10,
25238
+ height: 10,
25239
+ borderRadius: '50%',
25240
+ background: value,
25241
+ boxShadow: "0 0 0 1px ".concat(token.colorBorder),
25242
+ marginInlineEnd: 6,
25243
+ verticalAlign: 'middle'
25244
+ }
25245
+ }), value !== undefined && /*#__PURE__*/jsxs(Fragment, {
25246
+ children: [value, " \xB7 "]
25247
+ }), origin]
25248
+ });
25249
+ };
25250
+
25008
25251
  var LOG$o = getLogger('Backoffice', 'Form');
25009
25252
  function toNamePath$1(name) {
25010
25253
  if (name === undefined || name === '') return [];
@@ -25016,6 +25259,7 @@ function isFormItemHidden(item, hiddenRequiredDisabled) {
25016
25259
  return ((_hiddenRequiredDisabl = hiddenRequiredDisabled[key]) === null || _hiddenRequiredDisabl === void 0 ? void 0 : _hiddenRequiredDisabl.hidden) === true;
25017
25260
  }
25018
25261
  var FormWrapper$1 = function FormWrapper(_ref, ref) {
25262
+ var _state$data;
25019
25263
  var id = _ref.id,
25020
25264
  data = _ref.data,
25021
25265
  origData = _ref.origData,
@@ -25061,6 +25305,30 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25061
25305
  configuration: configuration,
25062
25306
  namePrefix: namePrefix
25063
25307
  });
25308
+ var inheritance = useInheritance(state.configuration.inheritance, (_state$data = state.data) === null || _state$data === void 0 ? void 0 : _state$data._id);
25309
+ // names below a prefix are relative to it, the inheritance paths are absolute
25310
+ var inheritedItems = useMemo(function () {
25311
+ var _state$selectedItems;
25312
+ return namePrefixPath.length || !inheritance.size ? [] : ((_state$selectedItems = state.selectedItems) !== null && _state$selectedItems !== void 0 ? _state$selectedItems : []).flatMap(function (item) {
25313
+ var _item$inheritancePath;
25314
+ var entry = findInheritanceEntry(inheritance, (_item$inheritancePath = item.inheritancePath) !== null && _item$inheritancePath !== void 0 ? _item$inheritancePath : item.name);
25315
+ return entry ? [{
25316
+ item: item,
25317
+ entry: entry
25318
+ }] : [];
25319
+ });
25320
+ }, [inheritance, state.selectedItems, namePrefixPath]);
25321
+ // of those, the fields whose current value overrides the parent's value; re-renders only when this list changes
25322
+ var overridingFields = Form$2.useWatch(function (values) {
25323
+ return inheritedItems.filter(function (_ref2) {
25324
+ var item = _ref2.item,
25325
+ entry = _ref2.entry;
25326
+ return overridesParent(get(values, item.name), item, entry, form.isFieldTouched(item.name));
25327
+ }).map(function (_ref3) {
25328
+ var item = _ref3.item;
25329
+ return item.name.toString();
25330
+ });
25331
+ }, form);
25064
25332
  useImperativeHandle(ref, function () {
25065
25333
  return {
25066
25334
  submit: function submit() {
@@ -25082,7 +25350,7 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25082
25350
  }
25083
25351
  }, [form, namePrefixPath, state.data]);
25084
25352
  var onFinish = /*#__PURE__*/function () {
25085
- var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(values) {
25353
+ var _ref4 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(values) {
25086
25354
  var newData;
25087
25355
  return _regeneratorRuntime.wrap(function _callee$(_context) {
25088
25356
  while (1) switch (_context.prev = _context.next) {
@@ -25092,10 +25360,10 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25092
25360
  if (_typeof(values) == 'object' && values !== null) {
25093
25361
  state.trimStringsOfObject(values, state.data);
25094
25362
  }
25095
- Object.entries(values).forEach(function (_ref3, idx) {
25096
- var _ref4 = _slicedToArray(_ref3, 2),
25097
- key = _ref4[0],
25098
- value = _ref4[1];
25363
+ Object.entries(values).forEach(function (_ref5, idx) {
25364
+ var _ref6 = _slicedToArray(_ref5, 2),
25365
+ key = _ref6[0],
25366
+ value = _ref6[1];
25099
25367
  if (typeof (value === null || value === void 0 ? void 0 : value.unix) !== 'undefined') {
25100
25368
  values[key] = value === null || value === void 0 ? void 0 : value.unix();
25101
25369
  }
@@ -25126,7 +25394,7 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25126
25394
  }, _callee, null, [[0, 12]]);
25127
25395
  }));
25128
25396
  return function onFinish(_x) {
25129
- return _ref2.apply(this, arguments);
25397
+ return _ref4.apply(this, arguments);
25130
25398
  };
25131
25399
  }();
25132
25400
  var onErrorInternal = function onErrorInternal(err, errorText) {
@@ -25147,8 +25415,8 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25147
25415
  var onFinishFailed = function onFinishFailed(data) {
25148
25416
  if (data.errorFields.length) {
25149
25417
  onError === null || onError === void 0 || onError("Folgende Felder wurden nicht korrekt bef\xFCllt: ".concat(data.errorFields.map(function (f) {
25150
- var _state$selectedItems;
25151
- var item = (_state$selectedItems = state.selectedItems) === null || _state$selectedItems === void 0 ? void 0 : _state$selectedItems.find(function (item) {
25418
+ var _state$selectedItems2;
25419
+ var item = (_state$selectedItems2 = state.selectedItems) === null || _state$selectedItems2 === void 0 ? void 0 : _state$selectedItems2.find(function (item) {
25152
25420
  return (typeof item.name == 'string' ? item.name : item.name.join('.')) == (typeof f.name == 'string' ? f.name : f.name.join('.'));
25153
25421
  });
25154
25422
  if (!item) return f.name;
@@ -25171,10 +25439,10 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25171
25439
  }
25172
25440
  groups[tabGroup].push(item);
25173
25441
  });
25174
- return Object.entries(groups).map(function (_ref5) {
25175
- var _ref6 = _slicedToArray(_ref5, 2),
25176
- tabGroup = _ref6[0],
25177
- items = _ref6[1];
25442
+ return Object.entries(groups).map(function (_ref7) {
25443
+ var _ref8 = _slicedToArray(_ref7, 2),
25444
+ tabGroup = _ref8[0],
25445
+ items = _ref8[1];
25178
25446
  return {
25179
25447
  tabGroup: tabGroup,
25180
25448
  items: items
@@ -25182,19 +25450,28 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25182
25450
  });
25183
25451
  };
25184
25452
  var getGeneralItems = function getGeneralItems() {
25185
- var _state$selectedItems2;
25186
- return (_state$selectedItems2 = state.selectedItems) === null || _state$selectedItems2 === void 0 ? void 0 : _state$selectedItems2.filter(function (item) {
25453
+ var _state$selectedItems3;
25454
+ return (_state$selectedItems3 = state.selectedItems) === null || _state$selectedItems3 === void 0 ? void 0 : _state$selectedItems3.filter(function (item) {
25187
25455
  return item.showInAllTabs;
25188
25456
  });
25189
25457
  };
25190
25458
  var renderFormItems = function renderFormItems(items) {
25191
25459
  return /*#__PURE__*/jsx(Fragment, {
25192
25460
  children: items.map(function (item) {
25193
- var _state$hiddenRequired, _state$fieldErrors$it;
25461
+ var _state$hiddenRequired, _inheritedItems$find, _state$fieldErrors$it;
25194
25462
  var hidden = (_state$hiddenRequired = state.hiddenRequiredDisabled[typeof item.name == 'string' ? item.name : item.name.join('.')]) === null || _state$hiddenRequired === void 0 ? void 0 : _state$hiddenRequired.hidden;
25195
25463
  var fieldName = getFieldName(item.name);
25464
+ var inheritanceEntry = (_inheritedItems$find = inheritedItems.find(function (inherited) {
25465
+ return inherited.item.name.toString() === item.name.toString();
25466
+ })) === null || _inheritedItems$find === void 0 ? void 0 : _inheritedItems$find.entry;
25467
+ var inheritedValue = inheritanceEntry && /*#__PURE__*/jsx(InheritedValue, {
25468
+ entry: inheritanceEntry,
25469
+ item: item,
25470
+ overridden: !!(overridingFields !== null && overridingFields !== void 0 && overridingFields.includes(item.name.toString()))
25471
+ });
25472
+ var withoutFormItem = ['subTitle', 'array', 'text', 'translation'].includes(item.type);
25196
25473
  return /*#__PURE__*/jsxs("div", {
25197
- children: [item.marker && /*#__PURE__*/jsx(InfoCircleOutlined, {}), ['subTitle', 'array', 'text', 'translation'].includes(item.type) ? getElement(item, setCanSave, state, item.name, state.onInputChanged, onErrorInternal, root, form, hidden, undefined, namePrefixPath.length ? fieldName : undefined) : /*#__PURE__*/jsx(Form$2.Item, {
25474
+ children: [item.marker && /*#__PURE__*/jsx(InfoCircleOutlined, {}), withoutFormItem && !hidden && inheritedValue, withoutFormItem ? getElement(item, setCanSave, state, item.name, state.onInputChanged, onErrorInternal, root, form, hidden, undefined, namePrefixPath.length ? fieldName : undefined) : /*#__PURE__*/jsx(Form$2.Item, {
25198
25475
  name: fieldName,
25199
25476
  rules: state.getRules(item, state.data),
25200
25477
  label: getLabel(item, t),
@@ -25202,7 +25479,10 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25202
25479
  initialValue: item === null || item === void 0 ? void 0 : item.defaultValue,
25203
25480
  hasFeedback: !!state.fieldErrors[item.name.toString()],
25204
25481
  validateStatus: !!state.fieldErrors[item.name.toString()] ? 'error' : undefined,
25205
- help: (_state$fieldErrors$it = state.fieldErrors[item.name.toString()]) !== null && _state$fieldErrors$it !== void 0 ? _state$fieldErrors$it : item.helpText,
25482
+ help: (_state$fieldErrors$it = state.fieldErrors[item.name.toString()]) !== null && _state$fieldErrors$it !== void 0 ? _state$fieldErrors$it : item.helpText
25483
+ // below the field: horizontal labels do not wrap and would cut the value off
25484
+ ,
25485
+ extra: inheritedValue,
25206
25486
  hidden: hidden,
25207
25487
  children: getElement(item, setCanSave, state, item.name, state.onInputChanged, onErrorInternal, root, form, hidden)
25208
25488
  }, Array.isArray(fieldName) ? fieldName.join('.') : fieldName)]
@@ -25223,6 +25503,13 @@ var FormWrapper$1 = function FormWrapper(_ref, ref) {
25223
25503
  var generalItems = useMemo(function () {
25224
25504
  return getGeneralItems();
25225
25505
  }, [state.selectedItems]);
25506
+ // the tab keys are positions, so another set of tabs (e.g. after choosing another organization type) starts on the first tab
25507
+ var visibleTabNames = visibleTabGroups.map(function (group) {
25508
+ return group.tabGroup;
25509
+ }).join();
25510
+ useEffect(function () {
25511
+ return setActiveTabKey('0');
25512
+ }, [visibleTabNames]);
25226
25513
  var handleSearchChange = function handleSearchChange(e) {
25227
25514
  var searchValue = e.target.value.toLowerCase();
25228
25515
  if (searchValue.length <= 2) {
@@ -25388,8 +25675,8 @@ function getLabel(item, t) {
25388
25675
  }
25389
25676
  var Form$1 = observer(/*#__PURE__*/React.forwardRef(FormWrapper$1));
25390
25677
 
25391
- function ownKeys$2q(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25392
- function _objectSpread$2q(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2q(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2q(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25678
+ function ownKeys$2r(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
25679
+ function _objectSpread$2r(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2r(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2r(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25393
25680
  function _createForOfIteratorHelper$11(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$11(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
25394
25681
  function _unsupportedIterableToArray$11(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$11(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$11(r, a) : void 0; } }
25395
25682
  function _arrayLikeToArray$11(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -25591,7 +25878,7 @@ function useRoleSelectorData (_ref) {
25591
25878
  roles.forEach(function (r) {
25592
25879
  //check if after the changes the role is selected
25593
25880
  if (value.includes(r._id)) {
25594
- var newValue = _objectSpread$2q(_objectSpread$2q({}, r), {}, {
25881
+ var newValue = _objectSpread$2r(_objectSpread$2r({}, r), {}, {
25595
25882
  selected: true
25596
25883
  });
25597
25884
  //add it to the new list as selected role
@@ -25627,7 +25914,7 @@ function useRoleSelectorData (_ref) {
25627
25914
  }
25628
25915
  }
25629
25916
  } else {
25630
- var _newValue = _objectSpread$2q(_objectSpread$2q({}, r), {}, {
25917
+ var _newValue = _objectSpread$2r(_objectSpread$2r({}, r), {}, {
25631
25918
  selected: false
25632
25919
  });
25633
25920
  //add it to the new list as unselected role
@@ -25831,7 +26118,7 @@ function _updateRoles() {
25831
26118
  userRole = userRoles.find(function (r) {
25832
26119
  return r._id == role._id;
25833
26120
  });
25834
- newRole = _objectSpread$2q({}, role);
26121
+ newRole = _objectSpread$2r({}, role);
25835
26122
  if (userRole) {
25836
26123
  newRole.selected = true;
25837
26124
  newRole.inherited = userRole.inherited;
@@ -26051,7 +26338,7 @@ function _fetchOptions() {
26051
26338
  case 4:
26052
26339
  result = _context11.sent;
26053
26340
  options = result.data.map(function (d) {
26054
- return _objectSpread$2q(_objectSpread$2q({}, d), {}, {
26341
+ return _objectSpread$2r(_objectSpread$2r({}, d), {}, {
26055
26342
  label: d.displayName,
26056
26343
  value: d._id,
26057
26344
  isLeaf: !d.hasChildren
@@ -26150,13 +26437,13 @@ var skeleton = "skeleton--xCI0";
26150
26437
  var filterField$1 = "filterField-1kU1O";
26151
26438
  var parentScroll = "parent-scroll-GmaL9";
26152
26439
  var parent = "parent-NZJ3S";
26153
- var container$9 = "container--O28P";
26440
+ var container$a = "container--O28P";
26154
26441
  var infiniteScrollContainer = "infiniteScrollContainer-8G1wc";
26155
- var css_248z$1g = ".permission-Button-XctsZ {\n position: relative;\n top: 25px;\n left: -30px;\n float: right;\n height: 20px;\n z-index: 1000;\n}\n.select-lzft- {\n width: 100%;\n}\n.loadingOption-qCkRw {\n margin-top: 11px;\n padding-left: 500px;\n}\n.scroller-lrdk9 {\n overflow: auto;\n flex: 1;\n min-height: 0;\n}\n\n.skeleton--xCI0 {\n padding-left: 25px;\n padding-bottom: 10px;\n}\n.filterField-1kU1O {\n display: flex;\n gap: 10px;\n}\n.filterField-1kU1O button {\n height: 32px;\n}\n.filterField-1kU1O div {\n height: 32px;\n}\n\n.parent-scroll-GmaL9 {\n overflow: hidden;\n padding: 24px;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.parent-NZJ3S {\n overflow: auto;\n padding: 24px;\n height: 100%;\n}\n\n.container--O28P {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n.infiniteScrollContainer-8G1wc {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n\n.infiniteScrollContainer-8G1wc .infinite-scroll-component__outerdiv {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n\n.infiniteScrollContainer-8G1wc .infinite-scroll-component {\n flex: 1 !important;\n min-height: 0 !important;\n height: auto !important;\n display: flex !important;\n flex-direction: column !important;\n}\n";
26156
- styleInject(css_248z$1g);
26442
+ var css_248z$1h = ".permission-Button-XctsZ {\n position: relative;\n top: 25px;\n left: -30px;\n float: right;\n height: 20px;\n z-index: 1000;\n}\n.select-lzft- {\n width: 100%;\n}\n.loadingOption-qCkRw {\n margin-top: 11px;\n padding-left: 500px;\n}\n.scroller-lrdk9 {\n overflow: auto;\n flex: 1;\n min-height: 0;\n}\n\n.skeleton--xCI0 {\n padding-left: 25px;\n padding-bottom: 10px;\n}\n.filterField-1kU1O {\n display: flex;\n gap: 10px;\n}\n.filterField-1kU1O button {\n height: 32px;\n}\n.filterField-1kU1O div {\n height: 32px;\n}\n\n.parent-scroll-GmaL9 {\n overflow: hidden;\n padding: 24px;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.parent-NZJ3S {\n overflow: auto;\n padding: 24px;\n height: 100%;\n}\n\n.container--O28P {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n.infiniteScrollContainer-8G1wc {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n\n.infiniteScrollContainer-8G1wc .infinite-scroll-component__outerdiv {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n\n.infiniteScrollContainer-8G1wc .infinite-scroll-component {\n flex: 1 !important;\n min-height: 0 !important;\n height: auto !important;\n display: flex !important;\n flex-direction: column !important;\n}\n";
26443
+ styleInject(css_248z$1h);
26157
26444
 
26158
- function ownKeys$2p(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26159
- function _objectSpread$2p(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2p(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2p(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26445
+ function ownKeys$2q(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26446
+ function _objectSpread$2q(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2q(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2q(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26160
26447
  function _createForOfIteratorHelper$10(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$10(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
26161
26448
  function _unsupportedIterableToArray$10(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$10(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$10(r, a) : void 0; } }
26162
26449
  function _arrayLikeToArray$10(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -26216,8 +26503,8 @@ function _generateCSV() {
26216
26503
  break;
26217
26504
  }
26218
26505
  _context2.next = 21;
26219
- return generateCSV(_objectSpread$2p(_objectSpread$2p({}, exportParams.children), {}, {
26220
- mappingData: _objectSpread$2p(_objectSpread$2p({}, parent), {}, {
26506
+ return generateCSV(_objectSpread$2q(_objectSpread$2q({}, exportParams.children), {}, {
26507
+ mappingData: _objectSpread$2q(_objectSpread$2q({}, parent), {}, {
26221
26508
  parentId: exportParams.mappingData._id
26222
26509
  })
26223
26510
  }), csvData);
@@ -26340,8 +26627,8 @@ function _downloadFile() {
26340
26627
  return _downloadFile.apply(this, arguments);
26341
26628
  }
26342
26629
 
26343
- function ownKeys$2o(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26344
- function _objectSpread$2o(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2o(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2o(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26630
+ function ownKeys$2p(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26631
+ function _objectSpread$2p(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2p(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2p(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26345
26632
  function _createForOfIteratorHelper$$(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$$(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
26346
26633
  function _unsupportedIterableToArray$$(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$$(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$$(r, a) : void 0; } }
26347
26634
  function _arrayLikeToArray$$(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -26760,7 +27047,7 @@ function useRelationSelectorData (_ref) {
26760
27047
  var activeItem = _step.value;
26761
27048
  if ((activeItem === null || activeItem === void 0 ? void 0 : activeItem._id) === (addedData === null || addedData === void 0 ? void 0 : addedData._id)) {
26762
27049
  addedObjects.push(addedData);
26763
- getSplittedItems(_objectSpread$2o(_objectSpread$2o({}, activeItem), {}, {
27050
+ getSplittedItems(_objectSpread$2p(_objectSpread$2p({}, activeItem), {}, {
26764
27051
  userId: data === null || data === void 0 ? void 0 : data._id
26765
27052
  }));
26766
27053
  ret = true;
@@ -26965,8 +27252,8 @@ function useRelationSelectorData (_ref) {
26965
27252
  };
26966
27253
  }
26967
27254
 
26968
- function ownKeys$2n(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26969
- function _objectSpread$2n(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2n(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2n(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27255
+ function ownKeys$2o(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27256
+ function _objectSpread$2o(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2o(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2o(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26970
27257
  function _createForOfIteratorHelper$_(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$_(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
26971
27258
  function _unsupportedIterableToArray$_(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$_(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$_(r, a) : void 0; } }
26972
27259
  function _arrayLikeToArray$_(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
@@ -27114,7 +27401,7 @@ function ActionButton (_ref) {
27114
27401
  _iterator2.f();
27115
27402
  }
27116
27403
  _context.next = 19;
27117
- return apiInterface.update(_objectSpread$2n(_objectSpread$2n({}, data), {}, {
27404
+ return apiInterface.update(_objectSpread$2o(_objectSpread$2o({}, data), {}, {
27118
27405
  state: toSwitch
27119
27406
  }), data);
27120
27407
  case 19:
@@ -27250,14 +27537,14 @@ function _simpleChangeValue() {
27250
27537
  break;
27251
27538
  }
27252
27539
  for (i = 0; i < action.newValues.length; i++) {
27253
- fieldsToUpdate = _objectSpread$2n(_objectSpread$2n({}, fieldsToUpdate), {}, _defineProperty({}, action.newValues[i].field, action.newValues[i].value));
27540
+ fieldsToUpdate = _objectSpread$2o(_objectSpread$2o({}, fieldsToUpdate), {}, _defineProperty({}, action.newValues[i].field, action.newValues[i].value));
27254
27541
  }
27255
27542
  if (!apiInterface.canUpdate) {
27256
27543
  _context2.next = 9;
27257
27544
  break;
27258
27545
  }
27259
27546
  _context2.next = 7;
27260
- return apiInterface.update(_objectSpread$2n({}, fieldsToUpdate), data);
27547
+ return apiInterface.update(_objectSpread$2o({}, fieldsToUpdate), data);
27261
27548
  case 7:
27262
27549
  response = _context2.sent;
27263
27550
  return _context2.abrupt("return", response);
@@ -27272,7 +27559,7 @@ function _simpleChangeValue() {
27272
27559
  return _simpleChangeValue.apply(this, arguments);
27273
27560
  }
27274
27561
  function A(props) {
27275
- return /*#__PURE__*/jsx("a", _objectSpread$2n({}, props));
27562
+ return /*#__PURE__*/jsx("a", _objectSpread$2o({}, props));
27276
27563
  }
27277
27564
 
27278
27565
  function _createForOfIteratorHelper$Z(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$Z(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
@@ -27400,18 +27687,18 @@ var getListItems = function getListItems(items, value) {
27400
27687
  };
27401
27688
 
27402
27689
  var titleCl = "title-cl-ZAj2y";
27403
- var description$1 = "description-m3mNY";
27690
+ var description$2 = "description-m3mNY";
27404
27691
  var itemGroup = "item-group-xWnj-";
27405
27692
  var deleteItem = "delete-item-otdSr";
27406
27693
  var newscroller = "newscroller-INKeD";
27407
27694
  var antCollapseHeader = "ant-collapse-header--6FgU";
27408
27695
  var itemTitle$1 = "item-title--BTvC";
27409
27696
  var itemDesc = "item-desc-DBiiF";
27410
- var css_248z$1f = ".diva-component-DIVA_BACKOFFICE_NEW .title-cl-ZAj2y {\n color: black;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .description-m3mNY {\n color: grey;\n flex: 1 1 100%;\n margin-left: 25px;\n margin-top: -25px;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .item-group-xWnj- {\n /* border-bottom: 1px solid black; */\n margin-bottom: 40px;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .delete-item-otdSr {\n cursor: pointer;\n position: relative;\n float: right;\n top: 13px;\n margin-right: 20px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .newscroller-INKeD {\n overflow: auto;\n height: 400px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-collapse-header--6FgU div {\n flex-wrap: wrap !important;\n}\n.diva-component-DIVA_BACKOFFICE_NEW a .item-title--BTvC {\n padding: 0 0 0 30px;\n color: rgba(0, 0, 0, 0.85);\n}\n.diva-component-DIVA_BACKOFFICE_NEW .item-desc-DBiiF {\n padding: 0 0 0 30px;\n color: rgba(0, 0, 0, 0.45);\n}\n";
27411
- styleInject(css_248z$1f);
27697
+ var css_248z$1g = ".diva-component-DIVA_BACKOFFICE_NEW .title-cl-ZAj2y {\n color: black;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .description-m3mNY {\n color: grey;\n flex: 1 1 100%;\n margin-left: 25px;\n margin-top: -25px;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .item-group-xWnj- {\n /* border-bottom: 1px solid black; */\n margin-bottom: 40px;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .delete-item-otdSr {\n cursor: pointer;\n position: relative;\n float: right;\n top: 13px;\n margin-right: 20px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .newscroller-INKeD {\n overflow: auto;\n height: 400px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-collapse-header--6FgU div {\n flex-wrap: wrap !important;\n}\n.diva-component-DIVA_BACKOFFICE_NEW a .item-title--BTvC {\n padding: 0 0 0 30px;\n color: rgba(0, 0, 0, 0.85);\n}\n.diva-component-DIVA_BACKOFFICE_NEW .item-desc-DBiiF {\n padding: 0 0 0 30px;\n color: rgba(0, 0, 0, 0.45);\n}\n";
27698
+ styleInject(css_248z$1g);
27412
27699
 
27413
- function ownKeys$2m(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27414
- function _objectSpread$2m(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2m(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2m(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27700
+ function ownKeys$2n(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27701
+ function _objectSpread$2n(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2n(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2n(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27415
27702
  var DropDown = function DropDown(_ref) {
27416
27703
  var _curItem$data$length;
27417
27704
  var split = _ref.split,
@@ -27443,7 +27730,7 @@ var DropDown = function DropDown(_ref) {
27443
27730
  });
27444
27731
  return /*#__PURE__*/jsx(Collapse, {
27445
27732
  onChange: function onChange() {
27446
- return getSplittedItems(_objectSpread$2m(_objectSpread$2m({}, item.item), {}, {
27733
+ return getSplittedItems(_objectSpread$2n(_objectSpread$2n({}, item.item), {}, {
27447
27734
  parentId: item.parentId
27448
27735
  }), 0);
27449
27736
  },
@@ -27455,7 +27742,7 @@ var DropDown = function DropDown(_ref) {
27455
27742
  children: title
27456
27743
  })
27457
27744
  }), /*#__PURE__*/jsx("br", {}), /*#__PURE__*/jsx("div", {
27458
- className: description$1,
27745
+ className: description$2,
27459
27746
  children: /*#__PURE__*/jsx(Typography.Text, {
27460
27747
  children: desc
27461
27748
  })
@@ -27547,7 +27834,7 @@ var RelationSelector = function RelationSelector(_ref, ref) {
27547
27834
  relationState.searchItems('');
27548
27835
  }, []);
27549
27836
  return /*#__PURE__*/jsxs("div", {
27550
- className: container$9,
27837
+ className: container$a,
27551
27838
  children: [relationState.configuration.search != undefined && (((_relationState$config = relationState.configuration.filter) === null || _relationState$config === void 0 ? void 0 : _relationState$config.type) === 'default' ? /*#__PURE__*/jsxs(Select, {
27552
27839
  className: select$3,
27553
27840
  showSearch: true,
@@ -27703,8 +27990,8 @@ var RelationSelector = function RelationSelector(_ref, ref) {
27703
27990
  };
27704
27991
  var RelationSelector$1 = observer(/*#__PURE__*/React.forwardRef(RelationSelector));
27705
27992
 
27706
- function ownKeys$2l(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27707
- function _objectSpread$2l(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2l(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2l(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27993
+ function ownKeys$2m(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27994
+ function _objectSpread$2m(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2m(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2m(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27708
27995
  function useFormListData (_ref) {
27709
27996
  var _configuration$defaul;
27710
27997
  var id = _ref.id,
@@ -27784,7 +28071,7 @@ function useFormListData (_ref) {
27784
28071
  if (updated.length == state.length) {
27785
28072
  newState = state.map(function (s, i) {
27786
28073
  var _updated$find;
27787
- return _objectSpread$2l(_objectSpread$2l({}, s), {}, {
28074
+ return _objectSpread$2m(_objectSpread$2m({}, s), {}, {
27788
28075
  data: (_updated$find = updated.find(function (u) {
27789
28076
  return u.index == i;
27790
28077
  })) === null || _updated$find === void 0 ? void 0 : _updated$find.data
@@ -27921,8 +28208,8 @@ var FormList = function FormList(_ref, ref) {
27921
28208
  };
27922
28209
  var FormList$1 = observer(/*#__PURE__*/React.forwardRef(FormList));
27923
28210
 
27924
- function ownKeys$2k(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
27925
- function _objectSpread$2k(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2k(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2k(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
28211
+ function ownKeys$2l(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28212
+ function _objectSpread$2l(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2l(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2l(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27926
28213
  var LOG$n = getLogger('Backoffice', 'SelectOrCreate');
27927
28214
  function useSelectOrCreateData (_ref) {
27928
28215
  var id = _ref.id,
@@ -28019,7 +28306,7 @@ function useSelectOrCreateData (_ref) {
28019
28306
  _context.next = 7;
28020
28307
  return apiHandler.readList(configuration.readMapping, mappingData, {
28021
28308
  filters: (_configuration$select3 = configuration.selectMapping) !== null && _configuration$select3 !== void 0 && _configuration$select3.searchField ? (_configuration$select4 = configuration.selectMapping) === null || _configuration$select4 === void 0 ? void 0 : _configuration$select4.searchField.reduce(function (filter, field) {
28022
- return _objectSpread$2k(_objectSpread$2k({}, filter), {}, _defineProperty({}, field.field, [value, field.filter]));
28309
+ return _objectSpread$2l(_objectSpread$2l({}, filter), {}, _defineProperty({}, field.field, [value, field.filter]));
28023
28310
  }, {}) : {
28024
28311
  _id: [value, 'contains']
28025
28312
  },
@@ -28330,8 +28617,8 @@ var Multiple = function Multiple(_ref3) {
28330
28617
  });
28331
28618
  };
28332
28619
 
28333
- function ownKeys$2j(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28334
- function _objectSpread$2j(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2j(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2j(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
28620
+ function ownKeys$2k(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28621
+ function _objectSpread$2k(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2k(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2k(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
28335
28622
  function useListData (_ref) {
28336
28623
  var id = _ref.id,
28337
28624
  data = _ref.data;
@@ -28374,7 +28661,7 @@ function useListData (_ref) {
28374
28661
  case 3:
28375
28662
  result = _context.sent;
28376
28663
  setListData(result.data.map(parseField));
28377
- initData = _objectSpread$2j({}, data);
28664
+ initData = _objectSpread$2k({}, data);
28378
28665
  setUpdatedObject(initData);
28379
28666
  setLoading(false);
28380
28667
  case 8:
@@ -28415,7 +28702,7 @@ function useListData (_ref) {
28415
28702
  });
28416
28703
  (_configuration$itemMa7 = configuration.itemMapping.itemUpdate) === null || _configuration$itemMa7 === void 0 || _configuration$itemMa7.forEach(function (field) {
28417
28704
  var parsedField = field.field.split('.');
28418
- item.itemUpdate = _objectSpread$2j(_objectSpread$2j({}, field), {}, {
28705
+ item.itemUpdate = _objectSpread$2k(_objectSpread$2k({}, field), {}, {
28419
28706
  value: dataEntry[parsedField[parsedField.length - 1]]
28420
28707
  });
28421
28708
  });
@@ -28446,16 +28733,16 @@ function useListData (_ref) {
28446
28733
  console.error('field with more than 2 parts not allowed');
28447
28734
  return;
28448
28735
  }
28449
- var updObj = _objectSpread$2j({}, updatedObject);
28736
+ var updObj = _objectSpread$2k({}, updatedObject);
28450
28737
  if (fields.length === 1) {
28451
- updObj = _objectSpread$2j(_objectSpread$2j({}, updObj), {}, _defineProperty({}, fields[0], value));
28738
+ updObj = _objectSpread$2k(_objectSpread$2k({}, updObj), {}, _defineProperty({}, fields[0], value));
28452
28739
  } else if (fields.length === 2) {
28453
28740
  var updatedField = updObj[fields[0]].find(function (v) {
28454
28741
  return v.id === item.id.trim();
28455
28742
  });
28456
28743
  if (updatedField) {
28457
- var updatedFieldCopy = _objectSpread$2j(_objectSpread$2j({}, updatedField), {}, _defineProperty({}, fields[1], value));
28458
- updObj = _objectSpread$2j(_objectSpread$2j({}, updObj), {}, _defineProperty({}, fields[0], updObj[fields[0]].map(function (v) {
28744
+ var updatedFieldCopy = _objectSpread$2k(_objectSpread$2k({}, updatedField), {}, _defineProperty({}, fields[1], value));
28745
+ updObj = _objectSpread$2k(_objectSpread$2k({}, updObj), {}, _defineProperty({}, fields[0], updObj[fields[0]].map(function (v) {
28459
28746
  return v.id === item.id.trim() ? updatedFieldCopy : v;
28460
28747
  })));
28461
28748
  }
@@ -28464,11 +28751,11 @@ function useListData (_ref) {
28464
28751
  var acItems = listData;
28465
28752
  for (var i = 0; i < acItems.length; i++) {
28466
28753
  if (i == index) {
28467
- acItems[i].itemUpdate = _objectSpread$2j(_objectSpread$2j({}, acItems[i].itemUpdate), {}, {
28754
+ acItems[i].itemUpdate = _objectSpread$2k(_objectSpread$2k({}, acItems[i].itemUpdate), {}, {
28468
28755
  value: value
28469
28756
  });
28470
28757
  } else if (!acItems[i].itemUpdate.multiselect) {
28471
- acItems[i].itemUpdate = _objectSpread$2j(_objectSpread$2j({}, acItems[i].itemUpdate), {}, {
28758
+ acItems[i].itemUpdate = _objectSpread$2k(_objectSpread$2k({}, acItems[i].itemUpdate), {}, {
28472
28759
  value: !value
28473
28760
  });
28474
28761
  }
@@ -28648,6 +28935,252 @@ var ListWrapper = function ListWrapper(props, ref) {
28648
28935
  };
28649
28936
  var List = observer(/*#__PURE__*/React.forwardRef(ListWrapper));
28650
28937
 
28938
+ /** A JSON schema node as the configuration schemas of the admin service use it */
28939
+
28940
+ /** The schema of a configuration type, as the admin service returns it */
28941
+
28942
+ /** How a setting of the edited configuration is set */
28943
+
28944
+ /** What kind of value a setting takes, as the settings tool names it */
28945
+
28946
+ /**
28947
+ * The schema the editor checks the whole edited document with: the configuration parameters are checked as a single layer,
28948
+ * which leaves required settings to other layers, and an unknown setting is marked. The editor's validator (ajv 6) does not know
28949
+ * `nullable`, so it becomes a type list.
28950
+ */
28951
+ function toEditorSchema(schema) {
28952
+ return {
28953
+ type: 'object',
28954
+ properties: {
28955
+ configParams: prepareForEditor(schema, true)
28956
+ }
28957
+ };
28958
+ }
28959
+
28960
+ /**
28961
+ * @param closed whether settings the node does not describe are marked - not for a branch of a oneOf/anyOf, whose node or
28962
+ * sibling branches describe further settings
28963
+ */
28964
+ function prepareForEditor(node, closed) {
28965
+ var result = omit(node, ['required', 'nullable']);
28966
+ if (node.nullable && node.type) {
28967
+ result.type = [].concat(_toConsumableArray(asArray(node.type)), ['null']);
28968
+ }
28969
+ if (node.properties) {
28970
+ result.properties = mapValues(node.properties, function (child) {
28971
+ return prepareForEditor(child, true);
28972
+ });
28973
+ if (closed && node.additionalProperties === undefined && !node.anyOf && !node.oneOf) {
28974
+ result.additionalProperties = false;
28975
+ }
28976
+ }
28977
+ if (_typeof(node.additionalProperties) == 'object') {
28978
+ result.additionalProperties = prepareForEditor(node.additionalProperties, true);
28979
+ }
28980
+ if (node.items) {
28981
+ result.items = prepareForEditor(node.items, true);
28982
+ }
28983
+ if (node.anyOf) {
28984
+ result.anyOf = node.anyOf.map(function (option) {
28985
+ return prepareForEditor(option, false);
28986
+ });
28987
+ }
28988
+ if (node.oneOf) {
28989
+ // Without `required`, several branches match a layer that leaves out the setting telling them apart: one is enough
28990
+ var branches = node.oneOf.map(function (option) {
28991
+ return prepareForEditor(option, false);
28992
+ });
28993
+ delete result.oneOf;
28994
+ if (result.anyOf) {
28995
+ var _result$allOf;
28996
+ result.allOf = [].concat(_toConsumableArray((_result$allOf = result.allOf) !== null && _result$allOf !== void 0 ? _result$allOf : []), [{
28997
+ anyOf: branches
28998
+ }]);
28999
+ } else {
29000
+ result.anyOf = branches;
29001
+ }
29002
+ }
29003
+ return result;
29004
+ }
29005
+
29006
+ /**
29007
+ * Every setting the schema describes, in the order of the schema, nested settings after their parent. A setting described by
29008
+ * several branches of a oneOf/anyOf is listed once, and a branch does not make a setting required.
29009
+ */
29010
+ function listSettings(schema) {
29011
+ var settings = new Map();
29012
+ var addProperties = function addProperties(node, parentPath, depth, inBranch) {
29013
+ var _node$properties;
29014
+ Object.entries((_node$properties = node.properties) !== null && _node$properties !== void 0 ? _node$properties : {}).forEach(function (_ref) {
29015
+ var _ref2 = _slicedToArray(_ref, 2),
29016
+ key = _ref2[0],
29017
+ child = _ref2[1];
29018
+ var path = parentPath ? "".concat(parentPath, ".").concat(key) : key;
29019
+ if (!settings.has(path)) {
29020
+ var _node$required;
29021
+ settings.set(path, {
29022
+ path: path,
29023
+ depth: depth,
29024
+ kind: settingKind(child),
29025
+ "enum": child["enum"],
29026
+ description: child.description,
29027
+ "default": child["default"],
29028
+ required: !inBranch && !!((_node$required = node.required) !== null && _node$required !== void 0 && _node$required.includes(key)),
29029
+ plain: !path.includes('[]') && !path.includes('*')
29030
+ });
29031
+ }
29032
+ _addNested(child, path, depth + 1, false);
29033
+ });
29034
+ };
29035
+ var _addNested = function addNested(node, path, depth, inBranch) {
29036
+ var _node$anyOf, _node$oneOf;
29037
+ addProperties(node, path, depth, inBranch);
29038
+ if (_typeof(node.additionalProperties) == 'object') {
29039
+ _addNested(node.additionalProperties, "".concat(path, ".*"), depth, false);
29040
+ }
29041
+ if (node.items) {
29042
+ _addNested(node.items, "".concat(path, "[]"), depth, false);
29043
+ }
29044
+ [].concat(_toConsumableArray((_node$anyOf = node.anyOf) !== null && _node$anyOf !== void 0 ? _node$anyOf : []), _toConsumableArray((_node$oneOf = node.oneOf) !== null && _node$oneOf !== void 0 ? _node$oneOf : [])).forEach(function (option) {
29045
+ return _addNested(option, path, depth, true);
29046
+ });
29047
+ };
29048
+ _addNested(schema, '', 0, false);
29049
+ return _toConsumableArray(settings.values());
29050
+ }
29051
+
29052
+ /**
29053
+ * How a setting is set: by an environment variable the deployment sets, in the edited layer, by another layer or by the schema's
29054
+ * default - or missing, when it is required, its parent exists (in the configuration or by a variable the deployment sets in it)
29055
+ * and neither the configuration nor an environment variable that is or may be set sets it.
29056
+ *
29057
+ * @param layer the configuration parameters of the edited layer
29058
+ * @param merged the configuration parameters merged with the other layers and completed with the defaults
29059
+ * @param environment the paths an environment variable can set, with whether the deployment sets it (undefined: unknown)
29060
+ */
29061
+ function settingStatus(setting, layer, merged, environment) {
29062
+ if (!setting.plain) {
29063
+ return 'unset';
29064
+ }
29065
+ // The service takes a variable's value instead of the configuration's
29066
+ if (environment.get(setting.path)) {
29067
+ return 'environment';
29068
+ }
29069
+ if (has(layer, setting.path)) {
29070
+ return 'set';
29071
+ }
29072
+ if (merged && has(merged, setting.path)) {
29073
+ return setting["default"] !== undefined && isEqual(get(merged, setting.path), setting["default"]) ? 'default' : 'inherited';
29074
+ }
29075
+ // An object counts when a variable can set a setting in it
29076
+ var byEnvironment = _toConsumableArray(environment).some(function (_ref3) {
29077
+ var _ref4 = _slicedToArray(_ref3, 2),
29078
+ path = _ref4[0],
29079
+ set = _ref4[1];
29080
+ return set !== false && (path == setting.path || path.startsWith("".concat(setting.path, ".")));
29081
+ });
29082
+ var parentPath = setting.path.split('.').slice(0, -1).join('.');
29083
+ // The service creates the parent of a variable it sets
29084
+ var parentExists = !parentPath || merged && has(merged, parentPath) || _toConsumableArray(environment).some(function (_ref5) {
29085
+ var _ref6 = _slicedToArray(_ref5, 2),
29086
+ path = _ref6[0],
29087
+ set = _ref6[1];
29088
+ return set && path.startsWith("".concat(parentPath, "."));
29089
+ });
29090
+ if (setting.required && !byEnvironment && merged && parentExists) {
29091
+ return 'missing';
29092
+ }
29093
+ return 'unset';
29094
+ }
29095
+
29096
+ /**
29097
+ * Every setting of the schema with how it is set in the edited configuration
29098
+ *
29099
+ * @param layer the configuration parameters of the edited layer
29100
+ * @param merged the configuration parameters merged with the other layers and completed with the defaults
29101
+ */
29102
+ function settingStates(_ref7, layer, merged) {
29103
+ var schema = _ref7.schema,
29104
+ environmentVariables = _ref7.environmentVariables;
29105
+ var variables = new Map(environmentVariables === null || environmentVariables === void 0 ? void 0 : environmentVariables.map(function (_ref8) {
29106
+ var path = _ref8.path,
29107
+ variable = _ref8.variable;
29108
+ return [path, variable];
29109
+ }));
29110
+ var environment = new Map(environmentVariables === null || environmentVariables === void 0 ? void 0 : environmentVariables.map(function (_ref9) {
29111
+ var path = _ref9.path,
29112
+ set = _ref9.set;
29113
+ return [path, set];
29114
+ }));
29115
+ return listSettings(schema).map(function (setting) {
29116
+ var status = settingStatus(setting, layer, merged, environment);
29117
+ // The merged value is the one that applies, also for a setting of the edited layer
29118
+ var source = merged && has(merged, setting.path) ? merged : layer;
29119
+ var value = get(source, setting.path);
29120
+ // A variable replaces a value of the configuration, not the schema's default that fills the merged settings
29121
+ var onlyDefault = !has(layer, setting.path) && setting["default"] !== undefined && isEqual(value, setting["default"]);
29122
+ return {
29123
+ setting: setting,
29124
+ status: status,
29125
+ value: ['set', 'inherited', 'default'].includes(status) || status == 'environment' && !onlyDefault ? value : undefined,
29126
+ variable: variables.get(setting.path)
29127
+ };
29128
+ });
29129
+ }
29130
+
29131
+ /**
29132
+ * The value a setting gets when it is inserted into the edited layer: the value that applies now, so inserting changes nothing
29133
+ * until it is edited; else the schema's default; else an empty value of its kind - for an enum null where it allows it, else its
29134
+ * first value. An object is always inserted empty: the layers are merged deeply, so it changes nothing either, and later changes
29135
+ * of its settings in other layers still apply.
29136
+ */
29137
+ function valueToInsert(_ref10) {
29138
+ var _setting$enum, _emptyValues$setting$;
29139
+ var setting = _ref10.setting,
29140
+ value = _ref10.value,
29141
+ status = _ref10.status;
29142
+ if (setting.kind == 'object') {
29143
+ return {};
29144
+ }
29145
+ if (status == 'inherited' || status == 'default') {
29146
+ return value;
29147
+ }
29148
+ if (setting["default"] !== undefined) {
29149
+ return setting["default"];
29150
+ }
29151
+ if ((_setting$enum = setting["enum"]) !== null && _setting$enum !== void 0 && _setting$enum.length) {
29152
+ return setting["enum"].includes(null) ? null : setting["enum"][0];
29153
+ }
29154
+ var emptyValues = {
29155
+ object: {},
29156
+ array: [],
29157
+ "boolean": false,
29158
+ number: 0,
29159
+ integer: 0,
29160
+ string: ''
29161
+ };
29162
+ return (_emptyValues$setting$ = emptyValues[setting.kind]) !== null && _emptyValues$setting$ !== void 0 ? _emptyValues$setting$ : null;
29163
+ }
29164
+ function settingKind(node) {
29165
+ var _node$anyOf2, _node$oneOf2, _kinds$find;
29166
+ if (node["enum"]) {
29167
+ return 'enum';
29168
+ }
29169
+ var options = [].concat(_toConsumableArray((_node$anyOf2 = node.anyOf) !== null && _node$anyOf2 !== void 0 ? _node$anyOf2 : []), _toConsumableArray((_node$oneOf2 = node.oneOf) !== null && _node$oneOf2 !== void 0 ? _node$oneOf2 : []));
29170
+ var type = node.type ? asArray(node.type).find(function (candidate) {
29171
+ return candidate != 'null';
29172
+ }) : options[0] && settingKind(options[0]);
29173
+ var kinds = ['string', 'number', 'integer', 'boolean', 'object', 'array', 'enum'];
29174
+ return (_kinds$find = kinds.find(function (kind) {
29175
+ return kind == type;
29176
+ })) !== null && _kinds$find !== void 0 ? _kinds$find : 'any';
29177
+ }
29178
+ function asArray(type) {
29179
+ return Array.isArray(type) ? type : [type];
29180
+ }
29181
+
29182
+ function ownKeys$2j(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
29183
+ function _objectSpread$2j(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2j(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2j(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
28651
29184
  var LOG$m = getLogger('Backoffice', 'JsonEditor');
28652
29185
  function useJsonEditorData (id, setCanSave, onChange, onError) {
28653
29186
  var _useState = useState(0),
@@ -28666,6 +29199,14 @@ function useJsonEditorData (id, setCanSave, onChange, onError) {
28666
29199
  _useState8 = _slicedToArray(_useState7, 2),
28667
29200
  inPreview = _useState8[0],
28668
29201
  setInPreview = _useState8[1];
29202
+ var _useState9 = useState(),
29203
+ _useState10 = _slicedToArray(_useState9, 2),
29204
+ schema = _useState10[0],
29205
+ setSchema = _useState10[1];
29206
+ var _useState11 = useState(),
29207
+ _useState12 = _slicedToArray(_useState11, 2),
29208
+ merged = _useState12[0],
29209
+ setMerged = _useState12[1];
28669
29210
  var jsonEditor = useRef(null);
28670
29211
  var root = useStore();
28671
29212
  var _useMemo = useMemo(function () {
@@ -28679,6 +29220,7 @@ function useJsonEditorData (id, setCanSave, onChange, onError) {
28679
29220
  function init(div) {
28680
29221
  var options = {
28681
29222
  mode: 'code',
29223
+ allowSchemaSuggestions: true,
28682
29224
  onChange: function onChange() {
28683
29225
  try {
28684
29226
  var e = jsonEditor.current.get();
@@ -28710,109 +29252,239 @@ function useJsonEditorData (id, setCanSave, onChange, onError) {
28710
29252
  return _save.apply(this, arguments);
28711
29253
  }
28712
29254
  function _save() {
28713
- _save = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(original) {
29255
+ _save = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3(original) {
28714
29256
  var data;
28715
- return _regeneratorRuntime.wrap(function _callee$(_context) {
28716
- while (1) switch (_context.prev = _context.next) {
29257
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
29258
+ while (1) switch (_context3.prev = _context3.next) {
28717
29259
  case 0:
28718
- _context.prev = 0;
29260
+ _context3.prev = 0;
28719
29261
  if (!(curData !== null && curData !== void 0 && curData._id && apiHandler.canUpdate)) {
28720
- _context.next = 7;
29262
+ _context3.next = 7;
28721
29263
  break;
28722
29264
  }
28723
- _context.next = 4;
29265
+ _context3.next = 4;
28724
29266
  return apiHandler.update(curData, original);
28725
29267
  case 4:
28726
- data = _context.sent;
28727
- _context.next = 11;
29268
+ data = _context3.sent;
29269
+ _context3.next = 11;
28728
29270
  break;
28729
29271
  case 7:
28730
29272
  if (!apiHandler.canCreate) {
28731
- _context.next = 11;
29273
+ _context3.next = 11;
28732
29274
  break;
28733
29275
  }
28734
- _context.next = 10;
29276
+ _context3.next = 10;
28735
29277
  return apiHandler.create(curData);
28736
29278
  case 10:
28737
- data = _context.sent;
29279
+ data = _context3.sent;
28738
29280
  case 11:
28739
29281
  onChange === null || onChange === void 0 || onChange(data);
28740
- _context.next = 18;
29282
+ _context3.next = 18;
28741
29283
  break;
28742
29284
  case 14:
28743
- _context.prev = 14;
28744
- _context.t0 = _context["catch"](0);
29285
+ _context3.prev = 14;
29286
+ _context3.t0 = _context3["catch"](0);
28745
29287
  LOG$m.error(new DivaError('Error saving data', {
28746
- cause: _context.t0,
29288
+ cause: _context3.t0,
28747
29289
  code: 'BACKO_0002'
28748
29290
  }));
28749
- onError === null || onError === void 0 || onError(_context.t0.message);
29291
+ onError === null || onError === void 0 || onError(_context3.t0.message);
28750
29292
  case 18:
28751
29293
  case "end":
28752
- return _context.stop();
29294
+ return _context3.stop();
28753
29295
  }
28754
- }, _callee, null, [[0, 14]]);
29296
+ }, _callee3, null, [[0, 14]]);
28755
29297
  }));
28756
29298
  return _save.apply(this, arguments);
28757
29299
  }
29300
+ function fetchPreview(data) {
29301
+ return fetch(configuration.preview, {
29302
+ headers: {
29303
+ Authorization: 'Bearer ' + root.dataStore.jwt,
29304
+ 'content-type': 'application/json'
29305
+ },
29306
+ method: 'POST',
29307
+ body: JSON.stringify(data)
29308
+ }).then(function (r) {
29309
+ return r.text();
29310
+ }).then(function (r) {
29311
+ try {
29312
+ return JSON.parse(r);
29313
+ } catch (_unused2) {
29314
+ return undefined;
29315
+ }
29316
+ });
29317
+ }
28758
29318
  function previewMode() {
28759
29319
  return _previewMode.apply(this, arguments);
28760
29320
  }
28761
29321
  function _previewMode() {
28762
- _previewMode = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
29322
+ _previewMode = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4() {
28763
29323
  var response;
28764
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
28765
- while (1) switch (_context2.prev = _context2.next) {
29324
+ return _regeneratorRuntime.wrap(function _callee4$(_context4) {
29325
+ while (1) switch (_context4.prev = _context4.next) {
28766
29326
  case 0:
28767
- _context2.next = 2;
28768
- return fetch(configuration.preview, {
28769
- headers: {
28770
- Authorization: 'Bearer ' + root.dataStore.jwt,
28771
- 'content-type': 'application/json'
28772
- },
28773
- method: 'POST',
28774
- body: JSON.stringify(curData)
28775
- }).then(function (r) {
28776
- return r.text();
28777
- }).then(function (r) {
28778
- try {
28779
- return JSON.parse(r);
28780
- } catch (_unused2) {
28781
- return undefined;
28782
- }
28783
- });
29327
+ _context4.next = 2;
29328
+ return fetchPreview(curData);
28784
29329
  case 2:
28785
- response = _context2.sent;
29330
+ response = _context4.sent;
28786
29331
  jsonEditor.current.aceEditor.setReadOnly(true);
28787
29332
  jsonEditor.current.set(response);
28788
29333
  setInPreview(true);
28789
29334
  case 6:
28790
29335
  case "end":
28791
- return _context2.stop();
29336
+ return _context4.stop();
28792
29337
  }
28793
- }, _callee2);
29338
+ }, _callee4);
28794
29339
  }));
28795
29340
  return _previewMode.apply(this, arguments);
28796
29341
  }
28797
29342
  function editMode() {
28798
29343
  return _editMode.apply(this, arguments);
28799
29344
  }
29345
+ /** Inserts a setting into the edited configuration parameters, as if it had been typed - it can be undone in the editor */
28800
29346
  function _editMode() {
28801
- _editMode = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
28802
- return _regeneratorRuntime.wrap(function _callee3$(_context3) {
28803
- while (1) switch (_context3.prev = _context3.next) {
29347
+ _editMode = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5() {
29348
+ return _regeneratorRuntime.wrap(function _callee5$(_context5) {
29349
+ while (1) switch (_context5.prev = _context5.next) {
28804
29350
  case 0:
28805
29351
  jsonEditor.current.aceEditor.setReadOnly(false);
28806
29352
  jsonEditor.current.set(curData);
28807
29353
  setInPreview(false);
28808
29354
  case 3:
28809
29355
  case "end":
28810
- return _context3.stop();
29356
+ return _context5.stop();
28811
29357
  }
28812
- }, _callee3);
29358
+ }, _callee5);
28813
29359
  }));
28814
29360
  return _editMode.apply(this, arguments);
28815
29361
  }
29362
+ function insert(path, value) {
29363
+ var _curData$configParams;
29364
+ var d = _objectSpread$2j(_objectSpread$2j({}, curData), {}, {
29365
+ configParams: set(cloneDeep((_curData$configParams = curData === null || curData === void 0 ? void 0 : curData.configParams) !== null && _curData$configParams !== void 0 ? _curData$configParams : {}), path, value)
29366
+ });
29367
+ jsonEditor.current.update(d);
29368
+ setCurData(d);
29369
+ setCanSave === null || setCanSave === void 0 || setCanSave(true);
29370
+ setHasError(false);
29371
+ }
29372
+
29373
+ // The schema of the edited configuration's type: the editor checks against it, the settings tool lists it
29374
+ useEffect(function () {
29375
+ var applySchema = function applySchema(result) {
29376
+ var _jsonEditor$current2;
29377
+ setSchema(result);
29378
+ (_jsonEditor$current2 = jsonEditor.current) === null || _jsonEditor$current2 === void 0 || _jsonEditor$current2.setSchema(result ? toEditorSchema(result.schema) : undefined);
29379
+ };
29380
+ if (!configuration.schema || !(curData !== null && curData !== void 0 && curData.type)) {
29381
+ applySchema(undefined);
29382
+ return;
29383
+ }
29384
+ var url = new URL(configuration.schema, window.location.href);
29385
+ var values = {
29386
+ '{type}': curData.type,
29387
+ '{identifier}': curData.identifier,
29388
+ '{environmentId}': curData.environmentId
29389
+ };
29390
+ _toConsumableArray(url.searchParams.entries()).forEach(function (_ref2) {
29391
+ var _ref3 = _slicedToArray(_ref2, 2),
29392
+ key = _ref3[0],
29393
+ placeholder = _ref3[1];
29394
+ var value = values[placeholder];
29395
+ // The admin service refuses an empty query parameter, e.g. the identifier of a base configuration
29396
+ if (value) url.searchParams.set(key, value);else if (placeholder in values) url.searchParams["delete"](key);
29397
+ });
29398
+ var current = true;
29399
+ var timeout = setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
29400
+ var response, result;
29401
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
29402
+ while (1) switch (_context.prev = _context.next) {
29403
+ case 0:
29404
+ _context.prev = 0;
29405
+ _context.next = 3;
29406
+ return fetch(url.toString(), {
29407
+ headers: {
29408
+ Authorization: 'Bearer ' + root.dataStore.jwt
29409
+ }
29410
+ });
29411
+ case 3:
29412
+ response = _context.sent;
29413
+ if (!response.ok) {
29414
+ _context.next = 10;
29415
+ break;
29416
+ }
29417
+ _context.next = 7;
29418
+ return response.json();
29419
+ case 7:
29420
+ _context.t0 = _context.sent;
29421
+ _context.next = 11;
29422
+ break;
29423
+ case 10:
29424
+ _context.t0 = undefined;
29425
+ case 11:
29426
+ result = _context.t0;
29427
+ if (current) applySchema(result);
29428
+ _context.next = 19;
29429
+ break;
29430
+ case 15:
29431
+ _context.prev = 15;
29432
+ _context.t1 = _context["catch"](0);
29433
+ LOG$m.warn('Could not load the configuration schema', _context.t1);
29434
+ if (current) applySchema(undefined);
29435
+ case 19:
29436
+ case "end":
29437
+ return _context.stop();
29438
+ }
29439
+ }, _callee, null, [[0, 15]]);
29440
+ })), 500);
29441
+ return function () {
29442
+ current = false;
29443
+ clearTimeout(timeout);
29444
+ };
29445
+ }, [curData === null || curData === void 0 ? void 0 : curData.type, curData === null || curData === void 0 ? void 0 : curData.identifier, curData === null || curData === void 0 ? void 0 : curData.environmentId]);
29446
+
29447
+ // Another configuration does not show the merged settings of the one before while its own load, e.g. as the value to insert
29448
+ useEffect(function () {
29449
+ setMerged(undefined);
29450
+ }, [curData === null || curData === void 0 ? void 0 : curData._id, curData === null || curData === void 0 ? void 0 : curData.type, curData === null || curData === void 0 ? void 0 : curData.identifier, curData === null || curData === void 0 ? void 0 : curData.environmentId, curData === null || curData === void 0 ? void 0 : curData.domain, curData === null || curData === void 0 ? void 0 : curData.organizationId]);
29451
+
29452
+ // The settings of all layers together: a setting another layer or a default sets is not missing
29453
+ useEffect(function () {
29454
+ if (!schema || !configuration.preview || !(curData !== null && curData !== void 0 && curData.type)) {
29455
+ setMerged(undefined);
29456
+ return;
29457
+ }
29458
+ var current = true;
29459
+ var timeout = setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
29460
+ var response;
29461
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
29462
+ while (1) switch (_context2.prev = _context2.next) {
29463
+ case 0:
29464
+ _context2.prev = 0;
29465
+ _context2.next = 3;
29466
+ return fetchPreview(curData);
29467
+ case 3:
29468
+ response = _context2.sent;
29469
+ if (current) setMerged(response === null || response === void 0 ? void 0 : response.configParams);
29470
+ _context2.next = 11;
29471
+ break;
29472
+ case 7:
29473
+ _context2.prev = 7;
29474
+ _context2.t0 = _context2["catch"](0);
29475
+ LOG$m.warn('Could not load the merged configuration', _context2.t0);
29476
+ if (current) setMerged(undefined);
29477
+ case 11:
29478
+ case "end":
29479
+ return _context2.stop();
29480
+ }
29481
+ }, _callee2, null, [[0, 7]]);
29482
+ })), 600);
29483
+ return function () {
29484
+ current = false;
29485
+ clearTimeout(timeout);
29486
+ };
29487
+ }, [curData, schema]);
28816
29488
  return {
28817
29489
  save: save,
28818
29490
  init: init,
@@ -28825,7 +29497,10 @@ function useJsonEditorData (id, setCanSave, onChange, onError) {
28825
29497
  setCounter: setCounter,
28826
29498
  setData: setData,
28827
29499
  curData: curData,
28828
- configuration: configuration
29500
+ configuration: configuration,
29501
+ schema: schema,
29502
+ merged: merged,
29503
+ insert: insert
28829
29504
  };
28830
29505
  }
28831
29506
 
@@ -28833,12 +29508,14 @@ var jsoneditor = "jsoneditor-WMs15";
28833
29508
  var preview$2 = "preview-9wK81";
28834
29509
  var previewButton = "preview-button-vupuG";
28835
29510
  var editButton = "edit-button-m6r3M";
28836
- var css_248z$1e = ".jsoneditor-WMs15 .preview-9wK81 {\n background-color: #f19e34;\n}\n\n.jsoneditor-WMs15 .preview-button-vupuG {\n background-image: url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22iso-8859-1%22%3F%3E%3C!-- Generator%3A Adobe Illustrator 19.0.0%2C SVG Export Plug-In . SVG Version%3A 6.00 Build 0) --%3E%3Csvg version%3D%221.1%22 id%3D%22Layer_1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 x%3D%220px%22 y%3D%220px%22%09 viewBox%3D%220 0 502 502%22 style%3D%22enable-background%3Anew 0 0 502 502%3B%22 xml%3Aspace%3D%22preserve%22 fill%3D%22%23fff%22%3E%3Cg%3E%09%3Cg%3E%09%09%3Cg%3E%09%09%09%3Cpath d%3D%22M478.482%2C448.601l-101.6-101.599c8.089-15.262%2C12.339-32.29%2C12.339-49.717c0-35.689-18.182-69.164-47.804-88.743V92.53%09%09%09%09c0-2.652-1.054-5.196-2.929-7.071l-82.529-82.53C254.083%2C1.054%2C251.54%2C0%2C248.888%2C0H24.371c-5.522%2C0-10%2C4.477-10%2C10v427.735%09%09%09%09c0%2C5.523%2C4.478%2C10%2C10%2C10h307.046c5.522%2C0%2C10-4.477%2C10-10v-37.722l92.825%2C92.825c5.908%2C5.908%2C13.764%2C9.162%2C22.119%2C9.162%09%09%09%09c8.356%2C0%2C16.212-3.254%2C22.12-9.162C490.678%2C480.642%2C490.678%2C460.797%2C478.482%2C448.601z M307.276%2C82.53h-48.387V34.143%09%09%09%09l24.193%2C24.193L307.276%2C82.53z M321.417%2C396.377v31.358H34.371V20h204.517v72.53c0%2C5.523%2C4.478%2C10%2C10%2C10h72.529v95.662%09%09%09%09l0.009%2C0.014c-12.214-4.741-25.275-7.215-38.499-7.215c-58.61%2C0-106.294%2C47.683-106.294%2C106.293s47.684%2C106.293%2C106.294%2C106.293%09%09%09%09c13.224%2C0%2C26.285-2.474%2C38.499-7.215L321.417%2C396.377z M328.948%2C370.291c-0.848%2C0.536-1.706%2C1.057-2.574%2C1.563%09%09%09%09c-13.131%2C7.67-28.154%2C11.724-43.446%2C11.724c-47.583%2C0-86.294-38.711-86.294-86.293c0-47.582%2C38.711-86.293%2C86.294-86.293%09%09%09%09c15.291%2C0%2C30.315%2C4.054%2C43.447%2C11.724c26.428%2C15.435%2C42.846%2C44.008%2C42.846%2C74.569c0%2C16.35-4.595%2C32.264-13.289%2C46.022%09%09%09%09C349.097%2C354.125%2C339.766%2C363.455%2C328.948%2C370.291z M464.339%2C478.696c-2.131%2C2.131-4.964%2C3.304-7.978%2C3.304%09%09%09%09c-3.014%2C0-5.847-1.173-7.977-3.304l-98.706-98.706l-0.008-0.001c5.856-4.74%2C11.221-10.104%2C15.961-15.96l0.001%2C0.008%09%09%09%09l98.707%2C98.707C468.737%2C467.142%2C468.737%2C474.298%2C464.339%2C478.696z%22%2F%3E%09%09%09%3Cpath d%3D%22M246.838%2C238.403c-20.641%2C12.674-32.964%2C34.686-32.964%2C58.882c0%2C5.523%2C4.478%2C10%2C10%2C10c5.522%2C0%2C10-4.477%2C10-10%09%09%09%09c0-17.19%2C8.759-32.83%2C23.429-41.838c4.707-2.89%2C6.179-9.048%2C3.289-13.754C257.702%2C236.986%2C251.544%2C235.513%2C246.838%2C238.403z%22%2F%3E%09%09%09%3Cpath d%3D%22M317.708%2C237.624c-10.52-6.145-22.547-9.392-34.781-9.392c-5.522%2C0-10%2C4.477-10%2C10s4.478%2C10%2C10%2C10%09%09%09%09c8.693%2C0%2C17.232%2C2.304%2C24.693%2C6.662c1.586%2C0.926%2C3.321%2C1.367%2C5.034%2C1.367c3.438%2C0%2C6.785-1.775%2C8.645-4.958%09%09%09%09C324.085%2C246.533%2C322.477%2C240.409%2C317.708%2C237.624z%22%2F%3E%09%09%3C%2Fg%3E%09%3C%2Fg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E\");\n background-size: 20px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.jsoneditor-WMs15 .preview-button-vupuG:hover {\n border: 0;\n}\n.jsoneditor-WMs15 .preview-button-vupuG:disabled {\n opacity: 0.3;\n}\n\n.jsoneditor-WMs15 .edit-button-m6r3M {\n background-image: url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22iso-8859-1%22%3F%3E%3C!-- Generator%3A Adobe Illustrator 16.0.0%2C SVG Export Plug-In . SVG Version%3A 6.00 Build 0) --%3E%3C!DOCTYPE svg PUBLIC %22-%2F%2FW3C%2F%2FDTD SVG 1.1%2F%2FEN%22 %22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%3Csvg version%3D%221.1%22 id%3D%22Capa_1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 x%3D%220px%22 y%3D%220px%22%09 width%3D%22494.936px%22 height%3D%22494.936px%22 viewBox%3D%220 0 494.936 494.936%22 style%3D%22enable-background%3Anew 0 0 494.936 494.936%3B%22%09 xml%3Aspace%3D%22preserve%22 fill%3D%22%23fff%22%3E%3Cg%3E%09%3Cg%3E%09%09%3Cpath d%3D%22M389.844%2C182.85c-6.743%2C0-12.21%2C5.467-12.21%2C12.21v222.968c0%2C23.562-19.174%2C42.735-42.736%2C42.735H67.157%09%09%09c-23.562%2C0-42.736-19.174-42.736-42.735V150.285c0-23.562%2C19.174-42.735%2C42.736-42.735h267.741c6.743%2C0%2C12.21-5.467%2C12.21-12.21%09%09%09s-5.467-12.21-12.21-12.21H67.157C30.126%2C83.13%2C0%2C113.255%2C0%2C150.285v267.743c0%2C37.029%2C30.126%2C67.155%2C67.157%2C67.155h267.741%09%09%09c37.03%2C0%2C67.156-30.126%2C67.156-67.155V195.061C402.054%2C188.318%2C396.587%2C182.85%2C389.844%2C182.85z%22%2F%3E%09%09%3Cpath d%3D%22M483.876%2C20.791c-14.72-14.72-38.669-14.714-53.377%2C0L221.352%2C229.944c-0.28%2C0.28-3.434%2C3.559-4.251%2C5.396l-28.963%2C65.069%09%09%09c-2.057%2C4.619-1.056%2C10.027%2C2.521%2C13.6c2.337%2C2.336%2C5.461%2C3.576%2C8.639%2C3.576c1.675%2C0%2C3.362-0.346%2C4.96-1.057l65.07-28.963%09%09%09c1.83-0.815%2C5.114-3.97%2C5.396-4.25L483.876%2C74.169c7.131-7.131%2C11.06-16.61%2C11.06-26.692%09%09%09C494.936%2C37.396%2C491.007%2C27.915%2C483.876%2C20.791z M466.61%2C56.897L257.457%2C266.05c-0.035%2C0.036-0.055%2C0.078-0.089%2C0.107%09%09%09l-33.989%2C15.131L238.51%2C247.3c0.03-0.036%2C0.071-0.055%2C0.107-0.09L447.765%2C38.058c5.038-5.039%2C13.819-5.033%2C18.846%2C0.005%09%09%09c2.518%2C2.51%2C3.905%2C5.855%2C3.905%2C9.414C470.516%2C51.036%2C469.127%2C54.38%2C466.61%2C56.897z%22%2F%3E%09%3C%2Fg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E\");\n}\n\n/* The orange menu while the JSON preview shows (see useJsonEditorData.previewMode) wins over both themes */\n.jsoneditor-WMs15 .jsoneditor-menu.preview-9wK81,\n.darkmode .jsoneditor-WMs15 .jsoneditor-menu.preview-9wK81 {\n background-color: #f19e34;\n}\n";
28837
- styleInject(css_248z$1e);
29511
+ var missingRequired = "missing-required-hPUHo";
29512
+ var css_248z$1f = ".jsoneditor-WMs15 .preview-9wK81 {\n background-color: #f19e34;\n}\n\n.jsoneditor-WMs15 .preview-button-vupuG {\n background-image: url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22iso-8859-1%22%3F%3E%3C!-- Generator%3A Adobe Illustrator 19.0.0%2C SVG Export Plug-In . SVG Version%3A 6.00 Build 0) --%3E%3Csvg version%3D%221.1%22 id%3D%22Layer_1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 x%3D%220px%22 y%3D%220px%22%09 viewBox%3D%220 0 502 502%22 style%3D%22enable-background%3Anew 0 0 502 502%3B%22 xml%3Aspace%3D%22preserve%22 fill%3D%22%23fff%22%3E%3Cg%3E%09%3Cg%3E%09%09%3Cg%3E%09%09%09%3Cpath d%3D%22M478.482%2C448.601l-101.6-101.599c8.089-15.262%2C12.339-32.29%2C12.339-49.717c0-35.689-18.182-69.164-47.804-88.743V92.53%09%09%09%09c0-2.652-1.054-5.196-2.929-7.071l-82.529-82.53C254.083%2C1.054%2C251.54%2C0%2C248.888%2C0H24.371c-5.522%2C0-10%2C4.477-10%2C10v427.735%09%09%09%09c0%2C5.523%2C4.478%2C10%2C10%2C10h307.046c5.522%2C0%2C10-4.477%2C10-10v-37.722l92.825%2C92.825c5.908%2C5.908%2C13.764%2C9.162%2C22.119%2C9.162%09%09%09%09c8.356%2C0%2C16.212-3.254%2C22.12-9.162C490.678%2C480.642%2C490.678%2C460.797%2C478.482%2C448.601z M307.276%2C82.53h-48.387V34.143%09%09%09%09l24.193%2C24.193L307.276%2C82.53z M321.417%2C396.377v31.358H34.371V20h204.517v72.53c0%2C5.523%2C4.478%2C10%2C10%2C10h72.529v95.662%09%09%09%09l0.009%2C0.014c-12.214-4.741-25.275-7.215-38.499-7.215c-58.61%2C0-106.294%2C47.683-106.294%2C106.293s47.684%2C106.293%2C106.294%2C106.293%09%09%09%09c13.224%2C0%2C26.285-2.474%2C38.499-7.215L321.417%2C396.377z M328.948%2C370.291c-0.848%2C0.536-1.706%2C1.057-2.574%2C1.563%09%09%09%09c-13.131%2C7.67-28.154%2C11.724-43.446%2C11.724c-47.583%2C0-86.294-38.711-86.294-86.293c0-47.582%2C38.711-86.293%2C86.294-86.293%09%09%09%09c15.291%2C0%2C30.315%2C4.054%2C43.447%2C11.724c26.428%2C15.435%2C42.846%2C44.008%2C42.846%2C74.569c0%2C16.35-4.595%2C32.264-13.289%2C46.022%09%09%09%09C349.097%2C354.125%2C339.766%2C363.455%2C328.948%2C370.291z M464.339%2C478.696c-2.131%2C2.131-4.964%2C3.304-7.978%2C3.304%09%09%09%09c-3.014%2C0-5.847-1.173-7.977-3.304l-98.706-98.706l-0.008-0.001c5.856-4.74%2C11.221-10.104%2C15.961-15.96l0.001%2C0.008%09%09%09%09l98.707%2C98.707C468.737%2C467.142%2C468.737%2C474.298%2C464.339%2C478.696z%22%2F%3E%09%09%09%3Cpath d%3D%22M246.838%2C238.403c-20.641%2C12.674-32.964%2C34.686-32.964%2C58.882c0%2C5.523%2C4.478%2C10%2C10%2C10c5.522%2C0%2C10-4.477%2C10-10%09%09%09%09c0-17.19%2C8.759-32.83%2C23.429-41.838c4.707-2.89%2C6.179-9.048%2C3.289-13.754C257.702%2C236.986%2C251.544%2C235.513%2C246.838%2C238.403z%22%2F%3E%09%09%09%3Cpath d%3D%22M317.708%2C237.624c-10.52-6.145-22.547-9.392-34.781-9.392c-5.522%2C0-10%2C4.477-10%2C10s4.478%2C10%2C10%2C10%09%09%09%09c8.693%2C0%2C17.232%2C2.304%2C24.693%2C6.662c1.586%2C0.926%2C3.321%2C1.367%2C5.034%2C1.367c3.438%2C0%2C6.785-1.775%2C8.645-4.958%09%09%09%09C324.085%2C246.533%2C322.477%2C240.409%2C317.708%2C237.624z%22%2F%3E%09%09%3C%2Fg%3E%09%3C%2Fg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E\");\n background-size: 20px;\n background-repeat: no-repeat;\n background-position: center;\n}\n.jsoneditor-WMs15 .preview-button-vupuG:hover {\n border: 0;\n}\n.jsoneditor-WMs15 .preview-button-vupuG:disabled {\n opacity: 0.3;\n}\n\n.jsoneditor-WMs15 .edit-button-m6r3M {\n background-image: url(\"data:image/svg+xml,%3C%3Fxml version%3D%221.0%22 encoding%3D%22iso-8859-1%22%3F%3E%3C!-- Generator%3A Adobe Illustrator 16.0.0%2C SVG Export Plug-In . SVG Version%3A 6.00 Build 0) --%3E%3C!DOCTYPE svg PUBLIC %22-%2F%2FW3C%2F%2FDTD SVG 1.1%2F%2FEN%22 %22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%3Csvg version%3D%221.1%22 id%3D%22Capa_1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 x%3D%220px%22 y%3D%220px%22%09 width%3D%22494.936px%22 height%3D%22494.936px%22 viewBox%3D%220 0 494.936 494.936%22 style%3D%22enable-background%3Anew 0 0 494.936 494.936%3B%22%09 xml%3Aspace%3D%22preserve%22 fill%3D%22%23fff%22%3E%3Cg%3E%09%3Cg%3E%09%09%3Cpath d%3D%22M389.844%2C182.85c-6.743%2C0-12.21%2C5.467-12.21%2C12.21v222.968c0%2C23.562-19.174%2C42.735-42.736%2C42.735H67.157%09%09%09c-23.562%2C0-42.736-19.174-42.736-42.735V150.285c0-23.562%2C19.174-42.735%2C42.736-42.735h267.741c6.743%2C0%2C12.21-5.467%2C12.21-12.21%09%09%09s-5.467-12.21-12.21-12.21H67.157C30.126%2C83.13%2C0%2C113.255%2C0%2C150.285v267.743c0%2C37.029%2C30.126%2C67.155%2C67.157%2C67.155h267.741%09%09%09c37.03%2C0%2C67.156-30.126%2C67.156-67.155V195.061C402.054%2C188.318%2C396.587%2C182.85%2C389.844%2C182.85z%22%2F%3E%09%09%3Cpath d%3D%22M483.876%2C20.791c-14.72-14.72-38.669-14.714-53.377%2C0L221.352%2C229.944c-0.28%2C0.28-3.434%2C3.559-4.251%2C5.396l-28.963%2C65.069%09%09%09c-2.057%2C4.619-1.056%2C10.027%2C2.521%2C13.6c2.337%2C2.336%2C5.461%2C3.576%2C8.639%2C3.576c1.675%2C0%2C3.362-0.346%2C4.96-1.057l65.07-28.963%09%09%09c1.83-0.815%2C5.114-3.97%2C5.396-4.25L483.876%2C74.169c7.131-7.131%2C11.06-16.61%2C11.06-26.692%09%09%09C494.936%2C37.396%2C491.007%2C27.915%2C483.876%2C20.791z M466.61%2C56.897L257.457%2C266.05c-0.035%2C0.036-0.055%2C0.078-0.089%2C0.107%09%09%09l-33.989%2C15.131L238.51%2C247.3c0.03-0.036%2C0.071-0.055%2C0.107-0.09L447.765%2C38.058c5.038-5.039%2C13.819-5.033%2C18.846%2C0.005%09%09%09c2.518%2C2.51%2C3.905%2C5.855%2C3.905%2C9.414C470.516%2C51.036%2C469.127%2C54.38%2C466.61%2C56.897z%22%2F%3E%09%3C%2Fg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E\");\n}\n\n/* The orange menu while the JSON preview shows (see useJsonEditorData.previewMode) wins over both themes */\n.jsoneditor-WMs15 .jsoneditor-menu.preview-9wK81,\n.darkmode .jsoneditor-WMs15 .jsoneditor-menu.preview-9wK81 {\n background-color: #f19e34;\n}\n\n/* Required settings that nothing sets yet: a warning, saving stays possible. Specific enough to override the icon styling the\n editor and its theme give every menu button (sprite background, darkening filter) */\n.jsoneditor-WMs15 .jsoneditor-menu > button.missing-required-hPUHo,\n.jsoneditor-WMs15 .jsoneditor-menu > button.missing-required-hPUHo:hover,\n.jsoneditor-WMs15 .jsoneditor-menu > button.missing-required-hPUHo:focus {\n width: auto;\n padding: 0 8px;\n background-image: none;\n background-color: #faad14;\n color: #000;\n font-size: 12px;\n border-radius: 2px;\n filter: none;\n opacity: 1;\n}\n";
29513
+ styleInject(css_248z$1f);
28838
29514
 
28839
29515
  function ownKeys$2i(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
28840
29516
  function _objectSpread$2i(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2i(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2i(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
28841
29517
  var JsonEditor = function JsonEditor(_ref, ref) {
29518
+ var _state$configuration$;
28842
29519
  var id = _ref.id,
28843
29520
  value = _ref.value,
28844
29521
  onChange = _ref.onChange,
@@ -28848,7 +29525,24 @@ var JsonEditor = function JsonEditor(_ref, ref) {
28848
29525
  height = _ref.height;
28849
29526
  var container = useRef(null);
28850
29527
  var reviewButton = useRef(null);
29528
+ var missingButton = useRef(null);
28851
29529
  var state = useJsonEditorData(id, setCanSave, onChange, onError);
29530
+ var root = useStore();
29531
+ var _useTranslation = useTranslation(),
29532
+ t = _useTranslation.t;
29533
+
29534
+ // Required settings no layer, default or environment variable sets: shown, but saving stays possible
29535
+ var missingCount = useMemo(function () {
29536
+ var _state$curData$config, _state$curData;
29537
+ if (!state.schema || !state.merged) return 0;
29538
+ return settingStates(state.schema, (_state$curData$config = (_state$curData = state.curData) === null || _state$curData === void 0 ? void 0 : _state$curData.configParams) !== null && _state$curData$config !== void 0 ? _state$curData$config : {}, state.merged).filter(function (_ref2) {
29539
+ var status = _ref2.status;
29540
+ return status == 'missing';
29541
+ }).length;
29542
+ }, [state.schema, state.merged, state.curData]);
29543
+ var settingsToolId = (_state$configuration$ = state.configuration.tools) === null || _state$configuration$ === void 0 || (_state$configuration$ = _state$configuration$.find(function (tool) {
29544
+ return tool.type == 'ConfigSettings';
29545
+ })) === null || _state$configuration$ === void 0 ? void 0 : _state$configuration$.id;
28852
29546
  useImperativeHandle(ref, function () {
28853
29547
  return {
28854
29548
  submit: function submit() {
@@ -28863,20 +29557,24 @@ var JsonEditor = function JsonEditor(_ref, ref) {
28863
29557
 
28864
29558
  // Like a form's: configured tools show the edited data meanwhile, and can save it
28865
29559
  var tools = useMemo(function () {
28866
- var _state$configuration$;
28867
- return (_state$configuration$ = state.configuration.tools) === null || _state$configuration$ === void 0 ? void 0 : _state$configuration$.map(function (tool) {
29560
+ var _state$configuration$2;
29561
+ return (_state$configuration$2 = state.configuration.tools) === null || _state$configuration$2 === void 0 ? void 0 : _state$configuration$2.map(function (tool) {
28868
29562
  var _tool$defaultOpen;
28869
29563
  return _objectSpread$2i(_objectSpread$2i({}, tool), {}, {
28870
29564
  parameters: {
28871
29565
  data: state.curData,
28872
29566
  submit: function submit() {
28873
29567
  return state.save(data);
28874
- }
29568
+ },
29569
+ schema: state.schema,
29570
+ merged: state.merged,
29571
+ // Inserting works on the last valid text, and the preview is read-only
29572
+ insert: state.hasErrors || state.inPreview ? undefined : state.insert
28875
29573
  },
28876
29574
  defaultOpen: (_tool$defaultOpen = tool.defaultOpen) !== null && _tool$defaultOpen !== void 0 ? _tool$defaultOpen : true
28877
29575
  });
28878
29576
  });
28879
- }, [state.curData]);
29577
+ }, [state.curData, state.schema, state.merged, state.hasErrors, state.inPreview]);
28880
29578
  useBorrowedTools(tools);
28881
29579
  useEffect(function () {
28882
29580
  state.init(container.current);
@@ -28910,8 +29608,24 @@ var JsonEditor = function JsonEditor(_ref, ref) {
28910
29608
  reviewButton.current.onclick = function () {
28911
29609
  return state.inPreview ? state.editMode() : state.previewMode();
28912
29610
  };
29611
+ if (!missingButton.current) {
29612
+ missingButton.current = document.createElement('button');
29613
+ missingButton.current.className = missingRequired;
29614
+ }
29615
+ if (!jsoneditorMenu.contains(missingButton.current)) {
29616
+ jsoneditorMenu.appendChild(missingButton.current);
29617
+ }
29618
+ missingButton.current.style.display = missingCount ? '' : 'none';
29619
+ missingButton.current.textContent = t('backoffice.configSettings.missingCount', {
29620
+ count: missingCount
29621
+ });
29622
+ missingButton.current.onclick = function () {
29623
+ if (!settingsToolId) return;
29624
+ root.contentStore.rightToolBar.selectTool(settingsToolId);
29625
+ root.contentStore.rightToolBar.hidden = false;
29626
+ };
28913
29627
  }
28914
- }, [state.previewMode, container.current, state.inPreview]);
29628
+ }, [state.previewMode, container.current, state.inPreview, missingCount]);
28915
29629
  useEffect(function () {
28916
29630
  // antd sets value after initiating once as undefined, the jsoneditor should only be set once with the initial value that gets set by antd
28917
29631
  if (state.counter === 2) {
@@ -29644,13 +30358,13 @@ function reducer(state, action) {
29644
30358
 
29645
30359
  var grid$1 = "grid-sGemi";
29646
30360
  var textWrapper = "text-wrapper-xsPXE";
29647
- var css_248z$1d = ".grid-sGemi {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));\n grid-auto-rows: min-content;\n grid-gap: 10px;\n}\n\n.text-wrapper-xsPXE {\n display: flex;\n justify-content: space-around;\n align-items: center;\n}\n";
29648
- styleInject(css_248z$1d);
30361
+ var css_248z$1e = ".grid-sGemi {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));\n grid-auto-rows: min-content;\n grid-gap: 10px;\n}\n\n.text-wrapper-xsPXE {\n display: flex;\n justify-content: space-around;\n align-items: center;\n}\n";
30362
+ styleInject(css_248z$1e);
29649
30363
 
29650
30364
  var wrapper$7 = "wrapper-p-gR3";
29651
- var container$8 = "container-DoZqe";
29652
- var css_248z$1c = ".wrapper-p-gR3 {\n background: #ececec;\n}\n\n.container-DoZqe {\n display: flex;\n justify-content: space-between;\n}\n";
29653
- styleInject(css_248z$1c);
30365
+ var container$9 = "container-DoZqe";
30366
+ var css_248z$1d = ".wrapper-p-gR3 {\n background: #ececec;\n}\n\n.container-DoZqe {\n display: flex;\n justify-content: space-between;\n}\n";
30367
+ styleInject(css_248z$1d);
29654
30368
 
29655
30369
  var ToolTipInfo = function ToolTipInfo(props) {
29656
30370
  var _useTranslation = useTranslation(),
@@ -29669,7 +30383,7 @@ var ToolTipInfo = function ToolTipInfo(props) {
29669
30383
  width: 230
29670
30384
  },
29671
30385
  children: /*#__PURE__*/jsx("div", {
29672
- className: container$8
30386
+ className: container$9
29673
30387
  })
29674
30388
  })
29675
30389
  });
@@ -29945,8 +30659,8 @@ var useMediaUpload = function useMediaUpload(_ref) {
29945
30659
  var small = "small-NY1-k";
29946
30660
  var medium = "medium---QcO";
29947
30661
  var big = "big--E39S";
29948
- var css_248z$1b = ".diva-component-DIVA_BACKOFFICE_NEW .ant-upload-wrapper {\n width: 100%;\n height: 100%;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-spin-nested-loading {\n width: 100%;\n height: 100%;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .ant-table-wrapper, .diva-component-DIVA_BACKOFFICE_NEW .ant-table {\n height: inherit;\n overflow: auto;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-drawer-body .ant-spin-nested-loading {\n width: 100%;\n height: 80%;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-spin-container {\n width: 100%;\n height: 100%;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .andt-table .ant-spin-container {\n display: flex;\n flex-direction: column;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-space-item .andt-table .ant-spin-container {\n height: calc(60vh - 90px);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .andt-table .ant-table-container {\n height: calc(100% - 80px);\n}\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-list {\n width: 100%;\n height: 100%;\n}\n\n/* since antd 6.3.1 the picture-card list only has a min-height; the 100% heights of the select and item below need a fixed one */\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-list-picture-card {\n height: var(--ant-upload-picture-card-size);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-list-item-container {\n width: 100% !important;\n height: 100% !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-select {\n width: 100% !important;\n height: 100% !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .small-NY1-k {\n width: 104px;\n height: 104px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .medium---QcO {\n width: 200px;\n height: 200px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .big--E39S {\n width: 400px;\n height: 400px;\n}\n";
29949
- styleInject(css_248z$1b);
30662
+ var css_248z$1c = ".diva-component-DIVA_BACKOFFICE_NEW .ant-upload-wrapper {\n width: 100%;\n height: 100%;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-spin-nested-loading {\n width: 100%;\n height: 100%;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .ant-table-wrapper, .diva-component-DIVA_BACKOFFICE_NEW .ant-table {\n height: inherit;\n overflow: auto;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-drawer-body .ant-spin-nested-loading {\n width: 100%;\n height: 80%;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-spin-container {\n width: 100%;\n height: 100%;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .andt-table .ant-spin-container {\n display: flex;\n flex-direction: column;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-space-item .andt-table .ant-spin-container {\n height: calc(60vh - 90px);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .andt-table .ant-table-container {\n height: calc(100% - 80px);\n}\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-list {\n width: 100%;\n height: 100%;\n}\n\n/* since antd 6.3.1 the picture-card list only has a min-height; the 100% heights of the select and item below need a fixed one */\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-list-picture-card {\n height: var(--ant-upload-picture-card-size);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-list-item-container {\n width: 100% !important;\n height: 100% !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .ant-upload-select {\n width: 100% !important;\n height: 100% !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .small-NY1-k {\n width: 104px;\n height: 104px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .medium---QcO {\n width: 200px;\n height: 200px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .big--E39S {\n width: 400px;\n height: 400px;\n}\n";
30663
+ styleInject(css_248z$1c);
29950
30664
 
29951
30665
  var MediaUpload = observer(function (_ref) {
29952
30666
  var id = _ref.id;
@@ -30087,8 +30801,8 @@ var checkbox = "checkbox-H7R-w";
30087
30801
  var editableCellValueWrap = "editable-cell-value-wrap-ugTs4";
30088
30802
  var contentWidth = "content-width-hGyVI";
30089
30803
  var tableLoadingSpin = "table-loading-spin-QjnC-";
30090
- var css_248z$1a = ".checkbox-readonly-0-bzT {\n cursor: default;\n}\n\n.checkbox-readonly-0-bzT .ant-checkbox-input {\n cursor: default;\n}\n\n.checkbox-readonly-0-bzT .ant-checkbox {\n cursor: default;\n}\n\n.editable-row-9BEHi:hover .checkbox-H7R-w .ant-checkbox {\n box-shadow: 0 0 5px rgba(0, 0, 0, 0.6);\n}\n\n.editable-cell-value-wrap-ugTs4 {\n padding: 5px 12px;\n cursor: pointer;\n}\n\n.editable-row-9BEHi:hover .editable-cell-value-wrap-ugTs4 {\n padding: 4px 11px;\n border: 1px solid #d9d9d9;\n border-radius: 4px;\n}\n\n.content-width-hGyVI .ant-modal-confirm-content {\n width: 100%;\n}\n\n.ant-select {\n display: inline-flex !important;\n}\n\n/* Fix for antd Table extra column on Windows */\n/* workarround for https://github.com/ant-design/ant-design/issues/55633, if resolved try to remove this */\n.ant-table-cell-scrollbar:not(.ant-table-cell-fix-right) {\n display: none !important;\n}\n\n.table-loading-spin-QjnC- {\n overflow: auto;\n height: 100%;\n}\n";
30091
- styleInject(css_248z$1a);
30804
+ var css_248z$1b = ".checkbox-readonly-0-bzT {\n cursor: default;\n}\n\n.checkbox-readonly-0-bzT .ant-checkbox-input {\n cursor: default;\n}\n\n.checkbox-readonly-0-bzT .ant-checkbox {\n cursor: default;\n}\n\n.editable-row-9BEHi:hover .checkbox-H7R-w .ant-checkbox {\n box-shadow: 0 0 5px rgba(0, 0, 0, 0.6);\n}\n\n.editable-cell-value-wrap-ugTs4 {\n padding: 5px 12px;\n cursor: pointer;\n}\n\n.editable-row-9BEHi:hover .editable-cell-value-wrap-ugTs4 {\n padding: 4px 11px;\n border: 1px solid #d9d9d9;\n border-radius: 4px;\n}\n\n.content-width-hGyVI .ant-modal-confirm-content {\n width: 100%;\n}\n\n.ant-select {\n display: inline-flex !important;\n}\n\n/* Fix for antd Table extra column on Windows */\n/* workarround for https://github.com/ant-design/ant-design/issues/55633, if resolved try to remove this */\n.ant-table-cell-scrollbar:not(.ant-table-cell-fix-right) {\n display: none !important;\n}\n\n.table-loading-spin-QjnC- {\n overflow: auto;\n height: 100%;\n}\n";
30805
+ styleInject(css_248z$1b);
30092
30806
 
30093
30807
  function BooleanCell (_ref) {
30094
30808
  var children = _ref.children,
@@ -31227,11 +31941,11 @@ function useAGHistogram (_ref) {
31227
31941
  };
31228
31942
  }
31229
31943
 
31230
- var container$7 = "container-2r-OJ";
31944
+ var container$8 = "container-2r-OJ";
31231
31945
  var column1 = "column1-9viTK";
31232
31946
  var spinner = "spinner-00VcK";
31233
- var css_248z$19 = ".container-2r-OJ {\n display: flex;\n gap: 40px; /* Distribute the columns evenly */\n}\n\n.column-yZ2Qc {\n padding: 10px;\n}\n\n.column1-9viTK .column-yZ2Qc {\n flex: 8;\n}\n\n.column2-pCnEz .column-yZ2Qc {\n flex: 1;\n}\n\n.column3-QZDVv .column-yZ2Qc {\n flex: 3;\n}\n\n.spinner-00VcK {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n";
31234
- styleInject(css_248z$19);
31947
+ var css_248z$1a = ".container-2r-OJ {\n display: flex;\n gap: 40px; /* Distribute the columns evenly */\n}\n\n.column-yZ2Qc {\n padding: 10px;\n}\n\n.column1-9viTK .column-yZ2Qc {\n flex: 8;\n}\n\n.column2-pCnEz .column-yZ2Qc {\n flex: 1;\n}\n\n.column3-QZDVv .column-yZ2Qc {\n flex: 3;\n}\n\n.spinner-00VcK {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n";
31948
+ styleInject(css_248z$1a);
31235
31949
 
31236
31950
  var Panel$1 = Collapse.Panel;
31237
31951
  function AGHistogram (_ref) {
@@ -31344,7 +32058,7 @@ function AGHistogram (_ref) {
31344
32058
  children: /*#__PURE__*/jsx(Panel$1, {
31345
32059
  header: headerText,
31346
32060
  children: /*#__PURE__*/jsxs("div", {
31347
- className: container$7,
32061
+ className: container$8,
31348
32062
  children: [!loadingHistogram && /*#__PURE__*/jsx("div", {
31349
32063
  className: classNames(column1, 'ag-theme-alpine'),
31350
32064
  style: {
@@ -34770,9 +35484,9 @@ var overlay = "overlay-lm0tm";
34770
35484
  var loader = "loader-LaXZy";
34771
35485
  var flex = "flex-yQdda";
34772
35486
  var bar = "bar-Y663f";
34773
- var value = "value-FCA-6";
34774
- var css_248z$18 = ".overlay-lm0tm {\n position: absolute;\n z-index: 1;\n background-color: rgba(247,247,247,0.45882);\n height: 60vh;\n width: 100%;\n}\n.loader-LaXZy {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 50px;\n height: 50px;\n border: 3px solid rgba(0, 0, 0, 0.3);\n border-radius: 50%;\n border-top-color: #fff;\n animation: spin-qUdpu 1s ease-in-out infinite;\n -webkit-animation: spin-qUdpu 1s ease-in-out infinite;\n}\n.flex-yQdda {\n display: flex;\n}\n\n.bar-Y663f {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n margin-top: 7%;\n}\n\n.value-FCA-6 {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: -moz-fit-content;\n width: fit-content;\n}\n@keyframes spin-qUdpu {\n to {\n -webkit-transform: rotate(360deg);\n }\n}\n";
34775
- styleInject(css_248z$18);
35487
+ var value$1 = "value-FCA-6";
35488
+ var css_248z$19 = ".overlay-lm0tm {\n position: absolute;\n z-index: 1;\n background-color: rgba(247,247,247,0.45882);\n height: 60vh;\n width: 100%;\n}\n.loader-LaXZy {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 50px;\n height: 50px;\n border: 3px solid rgba(0, 0, 0, 0.3);\n border-radius: 50%;\n border-top-color: #fff;\n animation: spin-qUdpu 1s ease-in-out infinite;\n -webkit-animation: spin-qUdpu 1s ease-in-out infinite;\n}\n.flex-yQdda {\n display: flex;\n}\n\n.bar-Y663f {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n margin-top: 7%;\n}\n\n.value-FCA-6 {\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: -moz-fit-content;\n width: fit-content;\n}\n@keyframes spin-qUdpu {\n to {\n -webkit-transform: rotate(360deg);\n }\n}\n";
35489
+ styleInject(css_248z$19);
34776
35490
 
34777
35491
  function ownKeys$21(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34778
35492
  function _objectSpread$21(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$21(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$21(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -34907,7 +35621,7 @@ var AGGrid = /*#__PURE__*/memo(function (_ref) {
34907
35621
  size: "small"
34908
35622
  })
34909
35623
  }), /*#__PURE__*/jsx("div", {
34910
- className: value,
35624
+ className: value$1,
34911
35625
  children: roundedNum.toFixed(2)
34912
35626
  })]
34913
35627
  });
@@ -35711,15 +36425,15 @@ function UIBuilder(_ref) {
35711
36425
  var label$4 = "label-rYNbb";
35712
36426
  var notClickable = "not-clickable-wHc5V";
35713
36427
  var selected$2 = "selected-34dYg";
35714
- var description = "description-iFui2";
36428
+ var description$1 = "description-iFui2";
35715
36429
  var retailer = "retailer-YNzAh";
35716
36430
  var retailerChild = "retailer-child-5ll0K";
35717
36431
  var supplier = "supplier-8sm0I";
35718
36432
  var dealer = "dealer-xgnku";
35719
36433
  var association = "association-b8uVW";
35720
36434
  var campaign = "campaign-zlrTx";
35721
- var css_248z$17 = ".label-rYNbb {\n width: 225px;\n background-color: #fff;\n cursor: pointer;\n padding: 10px 15px;\n border-radius: 5px;\n display: flex;\n gap: 12px;\n flex-direction: column;\n font-weight: 500;\n}\n\n.not-clickable-wHc5V {\n cursor: inherit;\n color: grey;\n}\n\n.selected-34dYg {\n font-weight: 630;\n}\n\n.description-iFui2 {\n font-weight: 300;\n font-size: small;\n margin-top: -8px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .org-tree-node-label .org-tree-node-label-inner {\n padding: 0;\n padding: initial;\n}\n\n.darkmode .org-tree-container {\n background-color: rgb(20, 20, 20);\n}\n\n.org-tree-container .org-tree-node-label .ant-btn-default:disabled, .org-tree-container .org-tree-node-label .ant-btn-primary:disabled {\n border-color: #d9d9d9;\n color: rgba(0, 0, 0, 0.25);\n background-color: rgba(0, 0, 0, 0.04);\n}\n\n.retailer-YNzAh {\n border-bottom: #81c784 solid 5px;\n}\n\n.retailer-child-5ll0K {\n border-bottom: #c8e6c9 solid 5px;\n}\n\n.supplier-8sm0I {\n border-bottom: #ba68c8 solid 5px;\n}\n\n.dealer-xgnku {\n border-bottom: #e1bee7 solid 5px;\n}\n\n.association-b8uVW {\n border-bottom: #fff176 solid 5px;\n}\n\n.campaign-zlrTx {\n border-bottom: #64b5f6 solid 5px;\n}\n";
35722
- styleInject(css_248z$17);
36435
+ var css_248z$18 = ".label-rYNbb {\n width: 225px;\n background-color: #fff;\n cursor: pointer;\n padding: 10px 15px;\n border-radius: 5px;\n display: flex;\n gap: 12px;\n flex-direction: column;\n font-weight: 500;\n}\n\n.not-clickable-wHc5V {\n cursor: inherit;\n color: grey;\n}\n\n.selected-34dYg {\n font-weight: 630;\n}\n\n.description-iFui2 {\n font-weight: 300;\n font-size: small;\n margin-top: -8px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .org-tree-node-label .org-tree-node-label-inner {\n padding: 0;\n padding: initial;\n}\n\n.darkmode .org-tree-container {\n background-color: rgb(20, 20, 20);\n}\n\n.org-tree-container .org-tree-node-label .ant-btn-default:disabled, .org-tree-container .org-tree-node-label .ant-btn-primary:disabled {\n border-color: #d9d9d9;\n color: rgba(0, 0, 0, 0.25);\n background-color: rgba(0, 0, 0, 0.04);\n}\n\n.retailer-YNzAh {\n border-bottom: #81c784 solid 5px;\n}\n\n.retailer-child-5ll0K {\n border-bottom: #c8e6c9 solid 5px;\n}\n\n.supplier-8sm0I {\n border-bottom: #ba68c8 solid 5px;\n}\n\n.dealer-xgnku {\n border-bottom: #e1bee7 solid 5px;\n}\n\n.association-b8uVW {\n border-bottom: #fff176 solid 5px;\n}\n\n.campaign-zlrTx {\n border-bottom: #64b5f6 solid 5px;\n}\n";
36436
+ styleInject(css_248z$18);
35723
36437
 
35724
36438
  /**
35725
36439
  * The form data a new child organization of `parent` starts with. It decides which organization types the form offers.
@@ -36078,7 +36792,7 @@ var OrgItem = function OrgItem(_ref) {
36078
36792
  children: [/*#__PURE__*/jsx("div", {
36079
36793
  children: data.displayName
36080
36794
  }), /*#__PURE__*/jsx("div", {
36081
- className: description,
36795
+ className: description$1,
36082
36796
  children: (_data$description = data.description) !== null && _data$description !== void 0 ? _data$description : ''
36083
36797
  }), ((_itemChain = itemChain[itemChain.length - 1]) === null || _itemChain === void 0 ? void 0 : _itemChain.id) == data.id && /*#__PURE__*/jsx(ActionButton, {
36084
36798
  action: configuration.createAction,
@@ -36269,8 +36983,8 @@ var arrow = "arrow-Rd0hp";
36269
36983
  var openClass = "open-class--gGXs";
36270
36984
  var breadcrumb = "breadcrumb-Z0VvH";
36271
36985
  var selected$1 = "selected-w-sfW";
36272
- var css_248z$16 = ".trigger-wrapper-OkPRc {\n width: 100%;\n padding: 12px 0px;\n display: flex;\n gap: 32px;\n}\n\n.arrow-Rd0hp {\n background-image: url(\"data:image/svg+xml,%3Csvg width%3D%228%22 height%3D%2213%22 viewBox%3D%220 0 8 13%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cpath d%3D%22M0.947266 1.14893L6.94727 6.29178L0.947266 11.9489%22 stroke%3D%22%236F6F6F%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E %3C%2Fsvg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n transform: rotateZ(0deg);\n transition: all 0.35s ease;\n width: 20.8px;\n height: 22.4px;\n cursor: pointer;\n}\n\n.open-class--gGXs {\n transform: rotateZ(90deg);\n}\n\n.breadcrumb-Z0VvH {\n transition: color 0.3s;\n}\n.breadcrumb-Z0VvH:hover:not(.selected-w-sfW) {\n cursor: pointer;\n color: #000;\n}\n\n.selected-w-sfW {\n color: #000;\n font-weight: 400;\n}\n\n.selected-w-sfW {\n color: #000;\n font-weight: 400;\n}\n\n.disabled-0nado {\n pointer-events: none;\n color: lightgray;\n}\n\n.darkmode .selected-w-sfW {\n color: #fff;\n font-weight: 400;\n}\n";
36273
- styleInject(css_248z$16);
36986
+ var css_248z$17 = ".trigger-wrapper-OkPRc {\n width: 100%;\n padding: 12px 0px;\n display: flex;\n gap: 32px;\n}\n\n.arrow-Rd0hp {\n background-image: url(\"data:image/svg+xml,%3Csvg width%3D%228%22 height%3D%2213%22 viewBox%3D%220 0 8 13%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E %3Cpath d%3D%22M0.947266 1.14893L6.94727 6.29178L0.947266 11.9489%22 stroke%3D%22%236F6F6F%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E %3C%2Fsvg%3E\");\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n transform: rotateZ(0deg);\n transition: all 0.35s ease;\n width: 20.8px;\n height: 22.4px;\n cursor: pointer;\n}\n\n.open-class--gGXs {\n transform: rotateZ(90deg);\n}\n\n.breadcrumb-Z0VvH {\n transition: color 0.3s;\n}\n.breadcrumb-Z0VvH:hover:not(.selected-w-sfW) {\n cursor: pointer;\n color: #000;\n}\n\n.selected-w-sfW {\n color: #000;\n font-weight: 400;\n}\n\n.selected-w-sfW {\n color: #000;\n font-weight: 400;\n}\n\n.disabled-0nado {\n pointer-events: none;\n color: lightgray;\n}\n\n.darkmode .selected-w-sfW {\n color: #fff;\n font-weight: 400;\n}\n";
36987
+ styleInject(css_248z$17);
36274
36988
 
36275
36989
  var BreadCrumbsTrigger = function BreadCrumbsTrigger(_ref) {
36276
36990
  var open = _ref.open,
@@ -36303,8 +37017,8 @@ var BreadCrumbsTrigger = function BreadCrumbsTrigger(_ref) {
36303
37017
 
36304
37018
  var collapsibleInner = "collapsible-inner-rI8kI";
36305
37019
  var toolbarLeft = "toolbar-left-X9WRo";
36306
- var css_248z$15 = ".collapsible-inner-rI8kI {\n overflow: auto;\n padding: 32px 0;\n position: relative;\n}\n\n.toolbar-left-X9WRo {\n position: absolute;\n right: 22px;\n top: 10px;\n display: flex;\n gap: 10px;\n}\n";
36307
- styleInject(css_248z$15);
37020
+ var css_248z$16 = ".collapsible-inner-rI8kI {\n overflow: auto;\n padding: 32px 0;\n position: relative;\n}\n\n.toolbar-left-X9WRo {\n position: absolute;\n right: 22px;\n top: 10px;\n display: flex;\n gap: 10px;\n}\n";
37021
+ styleInject(css_248z$16);
36308
37022
 
36309
37023
  var Legend = function Legend(props) {
36310
37024
  return /*#__PURE__*/jsx(List$1, {
@@ -36358,8 +37072,8 @@ var Legend = function Legend(props) {
36358
37072
  var buttonsWrapper = "buttons-wrapper-Bubkr";
36359
37073
  var mask = "mask-ssagp";
36360
37074
  var transformWrapper = "transform-wrapper--8t0v";
36361
- var css_248z$14 = ".buttons-wrapper-Bubkr {\n display: flex;\n gap: 6px;\n}\n\n.buttons-wrapper-Bubkr button {\n min-width: 24px;\n}\n\n.mask-ssagp {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.45);\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n -webkit-backdrop-filter: blur(3px);\n backdrop-filter: blur(3px);\n}\n.mask-ssagp p {\n font-size: 18px;\n font-weight: bold;\n background: rgba(255, 255, 255, 0.4);\n padding: 10px;\n border-radius: 5px;\n}\n\n.transform-wrapper--8t0v .ant-modal-mask,\n.transform-wrapper--8t0v .ant-modal-wrap {\n position: absolute;\n}\n";
36362
- styleInject(css_248z$14);
37075
+ var css_248z$15 = ".buttons-wrapper-Bubkr {\n display: flex;\n gap: 6px;\n}\n\n.buttons-wrapper-Bubkr button {\n min-width: 24px;\n}\n\n.mask-ssagp {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.45);\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n -webkit-backdrop-filter: blur(3px);\n backdrop-filter: blur(3px);\n}\n.mask-ssagp p {\n font-size: 18px;\n font-weight: bold;\n background: rgba(255, 255, 255, 0.4);\n padding: 10px;\n border-radius: 5px;\n}\n\n.transform-wrapper--8t0v .ant-modal-mask,\n.transform-wrapper--8t0v .ant-modal-wrap {\n position: absolute;\n}\n";
37076
+ styleInject(css_248z$15);
36363
37077
 
36364
37078
  var ZoomWrapper = function ZoomWrapper(_ref) {
36365
37079
  var _children = _ref.children,
@@ -37534,7 +38248,7 @@ var SendToPIM = function SendToPIM(_ref) {
37534
38248
  };
37535
38249
  var SendToPIM$1 = observer(SendToPIM);
37536
38250
 
37537
- var container$6 = "container-fszxW";
38251
+ var container$7 = "container-fszxW";
37538
38252
  var approvalBar = "approval-bar-nVCIH";
37539
38253
  var label$3 = "label-BDsm4";
37540
38254
  var applyButton = "apply-button-OCoIX";
@@ -37542,8 +38256,8 @@ var discardButton = "discard-button-oUFPg";
37542
38256
  var inUseList = "in-use-list-wml4r";
37543
38257
  var inUseKind = "in-use-kind-8MLky";
37544
38258
  var inUseCatalogList = "in-use-catalog-list-oJHR9";
37545
- var css_248z$13 = ".container-fszxW {\n display: contents;\n}\n\n.approval-bar-nVCIH {\n position: sticky;\n top: 0;\n z-index: 20;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 14px;\n background: #fffbea;\n color: #744210;\n border: 1px solid #d69e2e;\n border-radius: 6px;\n margin: 0 0 6px 0;\n font-size: 13px;\n}\n\n.darkmode .approval-bar-nVCIH {\n background: #3b3416;\n color: #fbd38d;\n border-color: #b7791f;\n}\n\n.label-BDsm4 {\n font-weight: 600;\n}\n\n.apply-button-OCoIX {\n background: #2f855a;\n color: #fff;\n border: none;\n border-radius: 5px;\n padding: 5px 16px;\n font-weight: 600;\n cursor: pointer;\n}\n\n.discard-button-oUFPg {\n background: transparent;\n border: 1px solid #a0aec0;\n border-radius: 5px;\n padding: 5px 16px;\n font-weight: 600;\n cursor: pointer;\n color: inherit;\n}\n\n.in-use-list-wml4r {\n max-height: 240px;\n margin: 4px 0 8px;\n padding-left: 18px;\n overflow-y: auto;\n}\n\n.in-use-kind-8MLky {\n font-weight: 600;\n}\n\n/* The tables of one catalog inside the in-use list, which already scrolls */\n.in-use-catalog-list-oJHR9 {\n margin: 2px 0 6px;\n padding-left: 18px;\n}\n";
37546
- styleInject(css_248z$13);
38259
+ var css_248z$14 = ".container-fszxW {\n display: contents;\n}\n\n.approval-bar-nVCIH {\n position: sticky;\n top: 0;\n z-index: 20;\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 8px 14px;\n background: #fffbea;\n color: #744210;\n border: 1px solid #d69e2e;\n border-radius: 6px;\n margin: 0 0 6px 0;\n font-size: 13px;\n}\n\n.darkmode .approval-bar-nVCIH {\n background: #3b3416;\n color: #fbd38d;\n border-color: #b7791f;\n}\n\n.label-BDsm4 {\n font-weight: 600;\n}\n\n.apply-button-OCoIX {\n background: #2f855a;\n color: #fff;\n border: none;\n border-radius: 5px;\n padding: 5px 16px;\n font-weight: 600;\n cursor: pointer;\n}\n\n.discard-button-oUFPg {\n background: transparent;\n border: 1px solid #a0aec0;\n border-radius: 5px;\n padding: 5px 16px;\n font-weight: 600;\n cursor: pointer;\n color: inherit;\n}\n\n.in-use-list-wml4r {\n max-height: 240px;\n margin: 4px 0 8px;\n padding-left: 18px;\n overflow-y: auto;\n}\n\n.in-use-kind-8MLky {\n font-weight: 600;\n}\n\n/* The tables of one catalog inside the in-use list, which already scrolls */\n.in-use-catalog-list-oJHR9 {\n margin: 2px 0 6px;\n padding-left: 18px;\n}\n";
38260
+ styleInject(css_248z$14);
37547
38261
 
37548
38262
  function ownKeys$1U(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
37549
38263
  function _objectSpread$1U(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1U(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1U(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -39018,7 +39732,7 @@ var SpreadsheetWrapper = /*#__PURE__*/forwardRef(function SpreadsheetWrapper(_re
39018
39732
  });
39019
39733
  return /*#__PURE__*/jsxs("div", {
39020
39734
  ref: containerRef,
39021
- className: container$6,
39735
+ className: container$7,
39022
39736
  children: [modalContextHolder, agentApproval &&
39023
39737
  /*#__PURE__*/
39024
39738
  // The grid saves its pending changes on every pointer event outside it — deciding must not commit them first.
@@ -40695,8 +41409,8 @@ function Maintenance() {
40695
41409
  var shell = "shell-2U8ER";
40696
41410
  var shellDark = "shellDark-Xzi3I";
40697
41411
  var editorHost = "editorHost-9538u";
40698
- var css_248z$12 = "/* Scoped jsoneditor theming; light uses stock colors via fallbacks, dark uses CSS vars from inline style + .shellDark. */\n\n.shell-2U8ER {\n width: 100%;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.shell-2U8ER .jsoneditor {\n border-color: #3883fa;\n border-color: var(--je-border, #3883fa);\n color: #1a1a1a;\n color: var(--je-text, #1a1a1a);\n}\n\n.shell-2U8ER div.jsoneditor-tree {\n background: #fff;\n background: var(--je-tree-bg, #fff);\n}\n\n.shell-2U8ER .jsoneditor td,\n.shell-2U8ER .jsoneditor th,\n.shell-2U8ER .jsoneditor tr,\n.shell-2U8ER div.jsoneditor-field,\n.shell-2U8ER div.jsoneditor-value,\n.shell-2U8ER pre.jsoneditor-preview {\n color: #1a1a1a;\n color: var(--je-text, #1a1a1a);\n}\n\n.shell-2U8ER div.jsoneditor td.jsoneditor-separator {\n color: grey;\n color: var(--je-separator, grey);\n}\n\n.shell-2U8ER div.jsoneditor-default {\n color: grey;\n color: var(--je-dim, grey);\n}\n\n.shell-2U8ER div.jsoneditor-readonly {\n color: grey;\n color: var(--je-dim, grey);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-string,\n.shell-2U8ER a.jsoneditor-value.jsoneditor-url {\n color: #006000;\n color: var(--je-string, #006000);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-number {\n color: #ee422e;\n color: var(--je-number, #ee422e);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-boolean {\n color: #ff8c00;\n color: var(--je-boolean, #ff8c00);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-null {\n color: #004ed0;\n color: var(--je-null, #004ed0);\n}\n\n.shell-2U8ER tr.jsoneditor-highlight,\n.shell-2U8ER tr.jsoneditor-selected {\n background-color: #d3d3d3;\n background-color: var(--je-row-bg, #d3d3d3);\n}\n\n.shell-2U8ER div.jsoneditor-tree button.jsoneditor-button:focus {\n background-color: #f5f5f5;\n background-color: var(--je-btn-focus, #f5f5f5);\n outline: 1px solid #e5e5e5;\n outline: 1px solid var(--je-btn-outline, #e5e5e5);\n}\n\n.shell-2U8ER div.jsoneditor-tree div.jsoneditor-show-more {\n background-color: #e5e5e5;\n background-color: var(--je-show-more-bg, #e5e5e5);\n color: grey;\n color: var(--je-dim, grey);\n}\n\n.shell-2U8ER div.jsoneditor-tree div.jsoneditor-show-more a {\n color: grey;\n color: var(--je-dim, grey);\n}\n\n/* Dark: syntax + tree chrome (vars set inline from Ant token where possible) */\n.shellDark-Xzi3I {\n --je-string: #89d185;\n --je-number: #b5cea8;\n --je-boolean: #dcdcaa;\n --je-null: #569cd6;\n --je-url: #4ec9b0;\n --je-row-bg: rgba(255, 255, 255, 0.08);\n --je-btn-focus: rgba(255, 255, 255, 0.12);\n --je-btn-outline: rgba(255, 255, 255, 0.2);\n --je-show-more-bg: rgba(255, 255, 255, 0.12);\n}\n\n.shellDark-Xzi3I div.jsoneditor-tree button.jsoneditor-button {\n filter: invert(1);\n}\n\n.shellDark-Xzi3I div.jsoneditor-tree button.jsoneditor-button:focus {\n filter: invert(1);\n}\n\n.editorHost-9538u {\n height: 100%;\n width: 100%;\n min-height: 200px;\n}\n";
40699
- styleInject(css_248z$12);
41412
+ var css_248z$13 = "/* Scoped jsoneditor theming; light uses stock colors via fallbacks, dark uses CSS vars from inline style + .shellDark. */\n\n.shell-2U8ER {\n width: 100%;\n border-radius: 8px;\n overflow: hidden;\n}\n\n.shell-2U8ER .jsoneditor {\n border-color: #3883fa;\n border-color: var(--je-border, #3883fa);\n color: #1a1a1a;\n color: var(--je-text, #1a1a1a);\n}\n\n.shell-2U8ER div.jsoneditor-tree {\n background: #fff;\n background: var(--je-tree-bg, #fff);\n}\n\n.shell-2U8ER .jsoneditor td,\n.shell-2U8ER .jsoneditor th,\n.shell-2U8ER .jsoneditor tr,\n.shell-2U8ER div.jsoneditor-field,\n.shell-2U8ER div.jsoneditor-value,\n.shell-2U8ER pre.jsoneditor-preview {\n color: #1a1a1a;\n color: var(--je-text, #1a1a1a);\n}\n\n.shell-2U8ER div.jsoneditor td.jsoneditor-separator {\n color: grey;\n color: var(--je-separator, grey);\n}\n\n.shell-2U8ER div.jsoneditor-default {\n color: grey;\n color: var(--je-dim, grey);\n}\n\n.shell-2U8ER div.jsoneditor-readonly {\n color: grey;\n color: var(--je-dim, grey);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-string,\n.shell-2U8ER a.jsoneditor-value.jsoneditor-url {\n color: #006000;\n color: var(--je-string, #006000);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-number {\n color: #ee422e;\n color: var(--je-number, #ee422e);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-boolean {\n color: #ff8c00;\n color: var(--je-boolean, #ff8c00);\n}\n\n.shell-2U8ER div.jsoneditor-value.jsoneditor-null {\n color: #004ed0;\n color: var(--je-null, #004ed0);\n}\n\n.shell-2U8ER tr.jsoneditor-highlight,\n.shell-2U8ER tr.jsoneditor-selected {\n background-color: #d3d3d3;\n background-color: var(--je-row-bg, #d3d3d3);\n}\n\n.shell-2U8ER div.jsoneditor-tree button.jsoneditor-button:focus {\n background-color: #f5f5f5;\n background-color: var(--je-btn-focus, #f5f5f5);\n outline: 1px solid #e5e5e5;\n outline: 1px solid var(--je-btn-outline, #e5e5e5);\n}\n\n.shell-2U8ER div.jsoneditor-tree div.jsoneditor-show-more {\n background-color: #e5e5e5;\n background-color: var(--je-show-more-bg, #e5e5e5);\n color: grey;\n color: var(--je-dim, grey);\n}\n\n.shell-2U8ER div.jsoneditor-tree div.jsoneditor-show-more a {\n color: grey;\n color: var(--je-dim, grey);\n}\n\n/* Dark: syntax + tree chrome (vars set inline from Ant token where possible) */\n.shellDark-Xzi3I {\n --je-string: #89d185;\n --je-number: #b5cea8;\n --je-boolean: #dcdcaa;\n --je-null: #569cd6;\n --je-url: #4ec9b0;\n --je-row-bg: rgba(255, 255, 255, 0.08);\n --je-btn-focus: rgba(255, 255, 255, 0.12);\n --je-btn-outline: rgba(255, 255, 255, 0.2);\n --je-show-more-bg: rgba(255, 255, 255, 0.12);\n}\n\n.shellDark-Xzi3I div.jsoneditor-tree button.jsoneditor-button {\n filter: invert(1);\n}\n\n.shellDark-Xzi3I div.jsoneditor-tree button.jsoneditor-button:focus {\n filter: invert(1);\n}\n\n.editorHost-9538u {\n height: 100%;\n width: 100%;\n min-height: 200px;\n}\n";
41413
+ styleInject(css_248z$13);
40700
41414
 
40701
41415
  function ownKeys$1M(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
40702
41416
  function _objectSpread$1M(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1M(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1M(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -41035,8 +41749,8 @@ var statRejected = "statRejected-xIvPi";
41035
41749
  var statRemaining = "statRemaining-lhHD1";
41036
41750
  var statChanged = "statChanged-Yi-hD";
41037
41751
  var skipCheckbox = "skipCheckbox-6f6xL";
41038
- var css_248z$11 = ".root-7Tfio {\n display: flex;\n flex-direction: column;\n gap: 10px;\n padding: 10px 16px 12px;\n background: #fff;\n border-bottom: 1px solid #f0f0f0;\n flex-shrink: 0;\n}\n\n.topRow-PBU6G {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n min-width: 0;\n}\n\n.backButton-FAXI7 {\n flex-shrink: 0;\n}\n\n.jobInfo-M65Y0 {\n display: flex;\n flex-wrap: wrap;\n gap: 12px 20px;\n flex: 1;\n min-width: 0;\n}\n\n.jobInfoItem-OYxkA {\n display: inline-flex;\n gap: 4px;\n align-items: baseline;\n min-width: 0;\n}\n\n.jobInfoLabel-MH1sL {\n font-size: 12px;\n white-space: nowrap;\n}\n\n.jobInfoValue-En0nn {\n font-size: 13px;\n max-width: 220px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.progressSection-jDlWb {\n display: flex;\n flex-direction: column;\n gap: 6px;\n min-width: 260px;\n max-width: 400px;\n flex-shrink: 0;\n margin-left: auto;\n}\n\n.progressHeader-dJp1s {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 12px;\n}\n\n.progressPosition-3DTnf {\n font-size: 15px;\n line-height: 1.2;\n white-space: nowrap;\n}\n\n.progressPercent-0D8b- {\n font-size: 12px;\n white-space: nowrap;\n}\n\n.progressTrack-45tuc {\n display: flex;\n width: 100%;\n height: 8px;\n border-radius: 4px;\n overflow: hidden;\n background: #f0f0f0;\n}\n\n.progressSegment-eXone {\n height: 100%;\n min-width: 0;\n transition: width 0.2s ease;\n}\n\n.progressApproved-JbJR1 {\n background: #52c41a;\n}\n\n.progressRejected-qGOTN {\n background: #ff4d4f;\n}\n\n.progressOpen-oWm4h {\n background: #bfbfbf;\n}\n\n.bottomRow-j2rQ- {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: 12px 16px;\n}\n\n.summaryStats-jvqoJ {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n}\n\n.statBadge-xOJvU {\n display: inline-flex;\n align-items: center;\n padding: 2px 10px;\n border-radius: 4px;\n font-size: 12px;\n line-height: 20px;\n border: 1px solid transparent;\n}\n\n.statApproved-XaXrf {\n color: #389e0d;\n background: #f6ffed;\n border-color: #b7eb8f;\n}\n\n.statRejected-xIvPi {\n color: #cf1322;\n background: #fff1f0;\n border-color: #ffa39e;\n}\n\n.statRemaining-lhHD1 {\n color: #595959;\n background: #fff;\n border-color: #d9d9d9;\n}\n\n.statChanged-Yi-hD {\n color: #d48806;\n background: #fff1b8;\n border-color: #ffc53d;\n}\n\n.skipCheckbox-6f6xL {\n margin: 0;\n margin-left: auto;\n white-space: normal;\n}\n\n/* Dark mode */\n.darkmode .root-7Tfio {\n background: #141414;\n border-bottom-color: #303030;\n}\n\n.darkmode .progressTrack-45tuc {\n background: #262626;\n}\n\n.darkmode .progressOpen-oWm4h {\n background: #595959;\n}\n\n.darkmode .statApproved-XaXrf {\n color: #95de64;\n background: rgba(56, 158, 13, 0.18);\n border-color: rgba(82, 196, 26, 0.45);\n}\n\n.darkmode .statRejected-xIvPi {\n color: #ff7875;\n background: rgba(207, 19, 34, 0.2);\n border-color: rgba(255, 77, 79, 0.45);\n}\n\n.darkmode .statRemaining-lhHD1 {\n color: rgba(255, 255, 255, 0.75);\n background: #262626;\n border-color: #595959;\n}\n\n.darkmode .statChanged-Yi-hD {\n color: #ffd666;\n background: rgba(212, 136, 6, 0.28);\n border-color: rgba(255, 197, 61, 0.55);\n}\n";
41039
- styleInject(css_248z$11);
41752
+ var css_248z$12 = ".root-7Tfio {\n display: flex;\n flex-direction: column;\n gap: 10px;\n padding: 10px 16px 12px;\n background: #fff;\n border-bottom: 1px solid #f0f0f0;\n flex-shrink: 0;\n}\n\n.topRow-PBU6G {\n display: flex;\n align-items: flex-start;\n gap: 16px;\n min-width: 0;\n}\n\n.backButton-FAXI7 {\n flex-shrink: 0;\n}\n\n.jobInfo-M65Y0 {\n display: flex;\n flex-wrap: wrap;\n gap: 12px 20px;\n flex: 1;\n min-width: 0;\n}\n\n.jobInfoItem-OYxkA {\n display: inline-flex;\n gap: 4px;\n align-items: baseline;\n min-width: 0;\n}\n\n.jobInfoLabel-MH1sL {\n font-size: 12px;\n white-space: nowrap;\n}\n\n.jobInfoValue-En0nn {\n font-size: 13px;\n max-width: 220px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.progressSection-jDlWb {\n display: flex;\n flex-direction: column;\n gap: 6px;\n min-width: 260px;\n max-width: 400px;\n flex-shrink: 0;\n margin-left: auto;\n}\n\n.progressHeader-dJp1s {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n gap: 12px;\n}\n\n.progressPosition-3DTnf {\n font-size: 15px;\n line-height: 1.2;\n white-space: nowrap;\n}\n\n.progressPercent-0D8b- {\n font-size: 12px;\n white-space: nowrap;\n}\n\n.progressTrack-45tuc {\n display: flex;\n width: 100%;\n height: 8px;\n border-radius: 4px;\n overflow: hidden;\n background: #f0f0f0;\n}\n\n.progressSegment-eXone {\n height: 100%;\n min-width: 0;\n transition: width 0.2s ease;\n}\n\n.progressApproved-JbJR1 {\n background: #52c41a;\n}\n\n.progressRejected-qGOTN {\n background: #ff4d4f;\n}\n\n.progressOpen-oWm4h {\n background: #bfbfbf;\n}\n\n.bottomRow-j2rQ- {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n gap: 12px 16px;\n}\n\n.summaryStats-jvqoJ {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n}\n\n.statBadge-xOJvU {\n display: inline-flex;\n align-items: center;\n padding: 2px 10px;\n border-radius: 4px;\n font-size: 12px;\n line-height: 20px;\n border: 1px solid transparent;\n}\n\n.statApproved-XaXrf {\n color: #389e0d;\n background: #f6ffed;\n border-color: #b7eb8f;\n}\n\n.statRejected-xIvPi {\n color: #cf1322;\n background: #fff1f0;\n border-color: #ffa39e;\n}\n\n.statRemaining-lhHD1 {\n color: #595959;\n background: #fff;\n border-color: #d9d9d9;\n}\n\n.statChanged-Yi-hD {\n color: #d48806;\n background: #fff1b8;\n border-color: #ffc53d;\n}\n\n.skipCheckbox-6f6xL {\n margin: 0;\n margin-left: auto;\n white-space: normal;\n}\n\n/* Dark mode */\n.darkmode .root-7Tfio {\n background: #141414;\n border-bottom-color: #303030;\n}\n\n.darkmode .progressTrack-45tuc {\n background: #262626;\n}\n\n.darkmode .progressOpen-oWm4h {\n background: #595959;\n}\n\n.darkmode .statApproved-XaXrf {\n color: #95de64;\n background: rgba(56, 158, 13, 0.18);\n border-color: rgba(82, 196, 26, 0.45);\n}\n\n.darkmode .statRejected-xIvPi {\n color: #ff7875;\n background: rgba(207, 19, 34, 0.2);\n border-color: rgba(255, 77, 79, 0.45);\n}\n\n.darkmode .statRemaining-lhHD1 {\n color: rgba(255, 255, 255, 0.75);\n background: #262626;\n border-color: #595959;\n}\n\n.darkmode .statChanged-Yi-hD {\n color: #ffd666;\n background: rgba(212, 136, 6, 0.28);\n border-color: rgba(255, 197, 61, 0.55);\n}\n";
41753
+ styleInject(css_248z$12);
41040
41754
 
41041
41755
  function buildInfoItems(job) {
41042
41756
  var _job$productName, _job$organizationName;
@@ -41378,15 +42092,15 @@ function latestErrorEntry(history) {
41378
42092
  }
41379
42093
 
41380
42094
  var root$c = "root-bbDdW";
41381
- var header$3 = "header--owh8";
42095
+ var header$4 = "header--owh8";
41382
42096
  var content$1 = "content-q2m1c";
41383
42097
  var contentImage = "contentImage-vn5YC";
41384
42098
  var contentAr = "contentAr-iUuog";
41385
42099
  var image$1 = "image-UQwwt";
41386
42100
  var imageLoaded = "imageLoaded--oFrG";
41387
42101
  var imageClickable = "imageClickable-9AVC0";
41388
- var css_248z$10 = ".root-bbDdW {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n background: #fafafa;\n border: 1px solid #f0f0f0;\n border-radius: 4px;\n overflow: hidden;\n}\n\n.header--owh8 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n padding: 6px 12px;\n border-bottom: 1px solid #f0f0f0;\n background: #fff;\n}\n\n.content-q2m1c {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 320px;\n position: relative;\n}\n\n.contentImage-vn5YC {\n padding: 12px;\n}\n\n.contentAr-iUuog {\n padding: 0;\n background: #fff;\n}\n\n.image-UQwwt {\n max-width: 100%;\n max-height: 100%;\n -o-object-fit: contain;\n object-fit: contain;\n display: none;\n cursor: default;\n}\n\n.imageLoaded--oFrG {\n display: block;\n}\n\n.imageClickable-9AVC0 {\n cursor: zoom-in;\n}\n\n/* Dark mode */\n.darkmode .root-bbDdW {\n background: #1f1f1f;\n border-color: #303030;\n}\n\n.darkmode .header--owh8 {\n background: #141414;\n border-bottom-color: #303030;\n}\n\n.darkmode .contentAr-iUuog {\n background: #141414;\n}\n";
41389
- styleInject(css_248z$10);
42102
+ var css_248z$11 = ".root-bbDdW {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n background: #fafafa;\n border: 1px solid #f0f0f0;\n border-radius: 4px;\n overflow: hidden;\n}\n\n.header--owh8 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n padding: 6px 12px;\n border-bottom: 1px solid #f0f0f0;\n background: #fff;\n}\n\n.content-q2m1c {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 320px;\n position: relative;\n}\n\n.contentImage-vn5YC {\n padding: 12px;\n}\n\n.contentAr-iUuog {\n padding: 0;\n background: #fff;\n}\n\n.image-UQwwt {\n max-width: 100%;\n max-height: 100%;\n -o-object-fit: contain;\n object-fit: contain;\n display: none;\n cursor: default;\n}\n\n.imageLoaded--oFrG {\n display: block;\n}\n\n.imageClickable-9AVC0 {\n cursor: zoom-in;\n}\n\n/* Dark mode */\n.darkmode .root-bbDdW {\n background: #1f1f1f;\n border-color: #303030;\n}\n\n.darkmode .header--owh8 {\n background: #141414;\n border-bottom-color: #303030;\n}\n\n.darkmode .contentAr-iUuog {\n background: #141414;\n}\n";
42103
+ styleInject(css_248z$11);
41390
42104
 
41391
42105
  function isAr$1(media) {
41392
42106
  return (media === null || media === void 0 ? void 0 : media.mediaType) === 'AR';
@@ -41439,7 +42153,7 @@ function ImagePanel(_ref) {
41439
42153
  return /*#__PURE__*/jsxs("div", {
41440
42154
  className: root$c,
41441
42155
  children: [/*#__PURE__*/jsx("div", {
41442
- className: header$3,
42156
+ className: header$4,
41443
42157
  children: /*#__PURE__*/jsxs(Typography.Text, {
41444
42158
  strong: true,
41445
42159
  children: [title, badge, showAr && /*#__PURE__*/jsxs(Typography.Text, {
@@ -41508,8 +42222,8 @@ function ReferenceImageTag() {
41508
42222
 
41509
42223
  var root$b = "root-iS23R";
41510
42224
  var swiper$1 = "swiper-3uKmT";
41511
- var css_248z$$ = ".root-iS23R {\n display: flex;\n flex: 1;\n min-width: 0;\n min-height: 0;\n position: relative;\n}\n\n.swiper-3uKmT {\n width: 100%;\n height: 100%;\n min-height: 0;\n}\n\n.swiper-3uKmT .swiper-wrapper {\n height: 100%;\n}\n\n.swiper-3uKmT .swiper-slide {\n display: flex;\n height: auto;\n min-height: 0;\n}\n\n.swiper-3uKmT .swiper-button-prev,\n.swiper-3uKmT .swiper-button-next {\n width: 32px;\n height: 32px;\n margin-top: 0;\n top: 50%;\n transform: translateY(-50%);\n color: rgba(0, 0, 0, 0.55);\n background: transparent;\n z-index: 3;\n transition: color 0.15s ease-in-out;\n}\n\n.swiper-3uKmT .swiper-button-prev:hover,\n.swiper-3uKmT .swiper-button-next:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.swiper-3uKmT .swiper-button-prev::after,\n.swiper-3uKmT .swiper-button-next::after {\n font-size: 18px;\n font-weight: 500;\n text-shadow: 0 1px 2px rgba(255, 255, 255, 0.7);\n}\n\n.swiper-3uKmT .swiper-button-prev {\n left: 8px;\n}\n\n.swiper-3uKmT .swiper-button-next {\n right: 8px;\n}\n\n.swiper-3uKmT .swiper-button-disabled {\n opacity: 0.3;\n pointer-events: none;\n}\n\n.swiper-3uKmT .swiper-pagination {\n bottom: 8px;\n}\n\n.swiper-3uKmT .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.7);\n opacity: 0.7;\n}\n\n.swiper-3uKmT .swiper-pagination-bullet-active {\n background: #fff;\n opacity: 1;\n}\n\n/* Dark mode */\n.darkmode .swiper-3uKmT .swiper-button-prev,\n.darkmode .swiper-3uKmT .swiper-button-next {\n color: rgba(255, 255, 255, 0.58);\n}\n\n.darkmode .swiper-3uKmT .swiper-button-prev:hover,\n.darkmode .swiper-3uKmT .swiper-button-next:hover {\n color: rgba(255, 255, 255, 0.9);\n}\n\n.darkmode .swiper-3uKmT .swiper-button-prev::after,\n.darkmode .swiper-3uKmT .swiper-button-next::after {\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.75);\n}\n\n.darkmode .swiper-3uKmT .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.42);\n}\n\n.darkmode .swiper-3uKmT .swiper-pagination-bullet-active {\n background: rgba(255, 255, 255, 0.85);\n}\n";
41512
- styleInject(css_248z$$);
42225
+ var css_248z$10 = ".root-iS23R {\n display: flex;\n flex: 1;\n min-width: 0;\n min-height: 0;\n position: relative;\n}\n\n.swiper-3uKmT {\n width: 100%;\n height: 100%;\n min-height: 0;\n}\n\n.swiper-3uKmT .swiper-wrapper {\n height: 100%;\n}\n\n.swiper-3uKmT .swiper-slide {\n display: flex;\n height: auto;\n min-height: 0;\n}\n\n.swiper-3uKmT .swiper-button-prev,\n.swiper-3uKmT .swiper-button-next {\n width: 32px;\n height: 32px;\n margin-top: 0;\n top: 50%;\n transform: translateY(-50%);\n color: rgba(0, 0, 0, 0.55);\n background: transparent;\n z-index: 3;\n transition: color 0.15s ease-in-out;\n}\n\n.swiper-3uKmT .swiper-button-prev:hover,\n.swiper-3uKmT .swiper-button-next:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.swiper-3uKmT .swiper-button-prev::after,\n.swiper-3uKmT .swiper-button-next::after {\n font-size: 18px;\n font-weight: 500;\n text-shadow: 0 1px 2px rgba(255, 255, 255, 0.7);\n}\n\n.swiper-3uKmT .swiper-button-prev {\n left: 8px;\n}\n\n.swiper-3uKmT .swiper-button-next {\n right: 8px;\n}\n\n.swiper-3uKmT .swiper-button-disabled {\n opacity: 0.3;\n pointer-events: none;\n}\n\n.swiper-3uKmT .swiper-pagination {\n bottom: 8px;\n}\n\n.swiper-3uKmT .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.7);\n opacity: 0.7;\n}\n\n.swiper-3uKmT .swiper-pagination-bullet-active {\n background: #fff;\n opacity: 1;\n}\n\n/* Dark mode */\n.darkmode .swiper-3uKmT .swiper-button-prev,\n.darkmode .swiper-3uKmT .swiper-button-next {\n color: rgba(255, 255, 255, 0.58);\n}\n\n.darkmode .swiper-3uKmT .swiper-button-prev:hover,\n.darkmode .swiper-3uKmT .swiper-button-next:hover {\n color: rgba(255, 255, 255, 0.9);\n}\n\n.darkmode .swiper-3uKmT .swiper-button-prev::after,\n.darkmode .swiper-3uKmT .swiper-button-next::after {\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.75);\n}\n\n.darkmode .swiper-3uKmT .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.42);\n}\n\n.darkmode .swiper-3uKmT .swiper-pagination-bullet-active {\n background: rgba(255, 255, 255, 0.85);\n}\n";
42226
+ styleInject(css_248z$10);
41513
42227
 
41514
42228
  /**
41515
42229
  * Horizontal Swiper for the left RenderApprove panel. Slides are the realtime
@@ -41572,8 +42286,8 @@ function LeftSlider(_ref) {
41572
42286
 
41573
42287
  var root$a = "root-Apxh1";
41574
42288
  var footer$2 = "footer-veR-2";
41575
- var css_248z$_ = ".root-Apxh1 {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.footer-veR-2 {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 32px;\n padding-top: 8px;\n}\n";
41576
- styleInject(css_248z$_);
42289
+ var css_248z$$ = ".root-Apxh1 {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.footer-veR-2 {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 32px;\n padding-top: 8px;\n}\n";
42290
+ styleInject(css_248z$$);
41577
42291
 
41578
42292
  /**
41579
42293
  * One image variant with its take-over action. Shared by the variant slider and
@@ -41630,8 +42344,8 @@ function VariantPanel(_ref) {
41630
42344
 
41631
42345
  var root$9 = "root-tVqtH";
41632
42346
  var grid = "grid-yZwW9";
41633
- var css_248z$Z = ".root-tVqtH {\n display: flex;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.grid-yZwW9 {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(0, 1fr));\n grid-gap: 16px;\n gap: 16px;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n";
41634
- styleInject(css_248z$Z);
42347
+ var css_248z$_ = ".root-tVqtH {\n display: flex;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.grid-yZwW9 {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(0, 1fr));\n grid-gap: 16px;\n gap: 16px;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n";
42348
+ styleInject(css_248z$_);
41635
42349
 
41636
42350
  /**
41637
42351
  * Side-by-side comparison of all generated variants, each with its take-over
@@ -41664,8 +42378,8 @@ function VariantCompareView(_ref) {
41664
42378
 
41665
42379
  var root$8 = "root-vll5G";
41666
42380
  var swiper = "swiper-arh-j";
41667
- var css_248z$Y = ".root-vll5G {\n display: flex;\n flex: 1;\n min-width: 0;\n min-height: 0;\n position: relative;\n}\n\n.swiper-arh-j {\n width: 100%;\n height: 100%;\n min-height: 0;\n}\n\n.swiper-arh-j .swiper-wrapper {\n height: 100%;\n}\n\n.swiper-arh-j .swiper-slide {\n display: flex;\n height: auto;\n min-height: 0;\n}\n\n.swiper-arh-j .swiper-button-prev,\n.swiper-arh-j .swiper-button-next {\n width: 32px;\n height: 32px;\n margin-top: 0;\n top: 50%;\n transform: translateY(-50%);\n color: rgba(0, 0, 0, 0.55);\n background: transparent;\n z-index: 3;\n transition: color 0.15s ease-in-out;\n}\n\n.swiper-arh-j .swiper-button-prev:hover,\n.swiper-arh-j .swiper-button-next:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.swiper-arh-j .swiper-button-prev::after,\n.swiper-arh-j .swiper-button-next::after {\n font-size: 18px;\n font-weight: 500;\n text-shadow: 0 1px 2px rgba(255, 255, 255, 0.7);\n}\n\n.swiper-arh-j .swiper-button-prev {\n left: 8px;\n}\n\n.swiper-arh-j .swiper-button-next {\n right: 8px;\n}\n\n.swiper-arh-j .swiper-button-disabled {\n opacity: 0.3;\n pointer-events: none;\n}\n\n/* Sits above the take-over footer instead of on top of the image. */\n.swiper-arh-j .swiper-pagination {\n bottom: 40px;\n}\n\n.swiper-arh-j .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.7);\n opacity: 0.7;\n}\n\n.swiper-arh-j .swiper-pagination-bullet-active {\n background: #fff;\n opacity: 1;\n}\n\n/* Dark mode */\n.darkmode .swiper-arh-j .swiper-button-prev,\n.darkmode .swiper-arh-j .swiper-button-next {\n color: rgba(255, 255, 255, 0.58);\n}\n\n.darkmode .swiper-arh-j .swiper-button-prev:hover,\n.darkmode .swiper-arh-j .swiper-button-next:hover {\n color: rgba(255, 255, 255, 0.9);\n}\n\n.darkmode .swiper-arh-j .swiper-button-prev::after,\n.darkmode .swiper-arh-j .swiper-button-next::after {\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.75);\n}\n\n.darkmode .swiper-arh-j .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.42);\n}\n\n.darkmode .swiper-arh-j .swiper-pagination-bullet-active {\n background: rgba(255, 255, 255, 0.85);\n}\n";
41668
- styleInject(css_248z$Y);
42381
+ var css_248z$Z = ".root-vll5G {\n display: flex;\n flex: 1;\n min-width: 0;\n min-height: 0;\n position: relative;\n}\n\n.swiper-arh-j {\n width: 100%;\n height: 100%;\n min-height: 0;\n}\n\n.swiper-arh-j .swiper-wrapper {\n height: 100%;\n}\n\n.swiper-arh-j .swiper-slide {\n display: flex;\n height: auto;\n min-height: 0;\n}\n\n.swiper-arh-j .swiper-button-prev,\n.swiper-arh-j .swiper-button-next {\n width: 32px;\n height: 32px;\n margin-top: 0;\n top: 50%;\n transform: translateY(-50%);\n color: rgba(0, 0, 0, 0.55);\n background: transparent;\n z-index: 3;\n transition: color 0.15s ease-in-out;\n}\n\n.swiper-arh-j .swiper-button-prev:hover,\n.swiper-arh-j .swiper-button-next:hover {\n color: rgba(0, 0, 0, 0.85);\n}\n\n.swiper-arh-j .swiper-button-prev::after,\n.swiper-arh-j .swiper-button-next::after {\n font-size: 18px;\n font-weight: 500;\n text-shadow: 0 1px 2px rgba(255, 255, 255, 0.7);\n}\n\n.swiper-arh-j .swiper-button-prev {\n left: 8px;\n}\n\n.swiper-arh-j .swiper-button-next {\n right: 8px;\n}\n\n.swiper-arh-j .swiper-button-disabled {\n opacity: 0.3;\n pointer-events: none;\n}\n\n/* Sits above the take-over footer instead of on top of the image. */\n.swiper-arh-j .swiper-pagination {\n bottom: 40px;\n}\n\n.swiper-arh-j .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.7);\n opacity: 0.7;\n}\n\n.swiper-arh-j .swiper-pagination-bullet-active {\n background: #fff;\n opacity: 1;\n}\n\n/* Dark mode */\n.darkmode .swiper-arh-j .swiper-button-prev,\n.darkmode .swiper-arh-j .swiper-button-next {\n color: rgba(255, 255, 255, 0.58);\n}\n\n.darkmode .swiper-arh-j .swiper-button-prev:hover,\n.darkmode .swiper-arh-j .swiper-button-next:hover {\n color: rgba(255, 255, 255, 0.9);\n}\n\n.darkmode .swiper-arh-j .swiper-button-prev::after,\n.darkmode .swiper-arh-j .swiper-button-next::after {\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.75);\n}\n\n.darkmode .swiper-arh-j .swiper-pagination-bullet {\n background: rgba(255, 255, 255, 0.42);\n}\n\n.darkmode .swiper-arh-j .swiper-pagination-bullet-active {\n background: rgba(255, 255, 255, 0.85);\n}\n";
42382
+ styleInject(css_248z$Z);
41669
42383
 
41670
42384
  /**
41671
42385
  * Horizontal swiper over the generated image variants on the result side of the
@@ -41734,8 +42448,8 @@ var overlayLabel = "overlayLabel-MfzIQ";
41734
42448
  var overlayLabelApproved = "overlayLabelApproved-Dn09n";
41735
42449
  var overlayLabelRejected = "overlayLabelRejected-IdRHs";
41736
42450
  var overlayLabelChangedReadyForRenderer = "overlayLabelChangedReadyForRenderer-e7Fdw";
41737
- var css_248z$X = ".root-16ADu {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 16px;\n flex: 1;\n min-height: 0;\n position: relative;\n}\n\n/* Own row so the result actions stay visible for every result-side variant\n (single image panel, variant slider, comparison grid). */\n.resultActions-izqBu {\n display: flex;\n justify-content: flex-end;\n flex: none;\n}\n\n.viewerPanels-Lntpx {\n display: flex;\n gap: 16px;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.decisionOverlay-8mr9P {\n position: absolute;\n top: 16px;\n right: 16px;\n bottom: 16px;\n left: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n z-index: 2;\n border-radius: 4px;\n}\n\n.overlayApproved-hAkZi {\n background: rgba(82, 196, 26, 0.22);\n border: 2px solid rgba(82, 196, 26, 0.55);\n}\n\n.overlayRejected-UqBPC {\n background: rgba(255, 77, 79, 0.22);\n border: 2px solid rgba(255, 77, 79, 0.55);\n}\n\n.overlayChangedReadyForRenderer-ignKB {\n background: rgba(250, 173, 20, 0.22);\n border: 2px solid rgba(250, 173, 20, 0.55);\n}\n\n.overlayLabel-MfzIQ {\n padding: 10px 20px;\n border-radius: 6px;\n font-size: 18px;\n font-weight: 600;\n letter-spacing: 0.02em;\n text-transform: uppercase;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);\n}\n\n.overlayLabelApproved-Dn09n {\n color: #237804;\n background: rgba(255, 255, 255, 0.92);\n}\n\n.overlayLabelRejected-IdRHs {\n color: #a8071a;\n background: rgba(255, 255, 255, 0.92);\n}\n\n.overlayLabelChangedReadyForRenderer-e7Fdw {\n color: #ad6800;\n background: rgba(255, 255, 255, 0.92);\n}\n\n/* Dark mode */\n.darkmode .overlayLabelApproved-Dn09n {\n color: #95de64;\n background: rgba(0, 0, 0, 0.55);\n}\n\n.darkmode .overlayLabelRejected-IdRHs {\n color: #ff7875;\n background: rgba(0, 0, 0, 0.55);\n}\n\n.darkmode .overlayLabelChangedReadyForRenderer-e7Fdw {\n color: #ffd666;\n background: rgba(0, 0, 0, 0.55);\n}\n";
41738
- styleInject(css_248z$X);
42451
+ var css_248z$Y = ".root-16ADu {\n display: flex;\n flex-direction: column;\n gap: 16px;\n padding: 16px;\n flex: 1;\n min-height: 0;\n position: relative;\n}\n\n/* Own row so the result actions stay visible for every result-side variant\n (single image panel, variant slider, comparison grid). */\n.resultActions-izqBu {\n display: flex;\n justify-content: flex-end;\n flex: none;\n}\n\n.viewerPanels-Lntpx {\n display: flex;\n gap: 16px;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.decisionOverlay-8mr9P {\n position: absolute;\n top: 16px;\n right: 16px;\n bottom: 16px;\n left: 16px;\n display: flex;\n align-items: center;\n justify-content: center;\n pointer-events: none;\n z-index: 2;\n border-radius: 4px;\n}\n\n.overlayApproved-hAkZi {\n background: rgba(82, 196, 26, 0.22);\n border: 2px solid rgba(82, 196, 26, 0.55);\n}\n\n.overlayRejected-UqBPC {\n background: rgba(255, 77, 79, 0.22);\n border: 2px solid rgba(255, 77, 79, 0.55);\n}\n\n.overlayChangedReadyForRenderer-ignKB {\n background: rgba(250, 173, 20, 0.22);\n border: 2px solid rgba(250, 173, 20, 0.55);\n}\n\n.overlayLabel-MfzIQ {\n padding: 10px 20px;\n border-radius: 6px;\n font-size: 18px;\n font-weight: 600;\n letter-spacing: 0.02em;\n text-transform: uppercase;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);\n}\n\n.overlayLabelApproved-Dn09n {\n color: #237804;\n background: rgba(255, 255, 255, 0.92);\n}\n\n.overlayLabelRejected-IdRHs {\n color: #a8071a;\n background: rgba(255, 255, 255, 0.92);\n}\n\n.overlayLabelChangedReadyForRenderer-e7Fdw {\n color: #ad6800;\n background: rgba(255, 255, 255, 0.92);\n}\n\n/* Dark mode */\n.darkmode .overlayLabelApproved-Dn09n {\n color: #95de64;\n background: rgba(0, 0, 0, 0.55);\n}\n\n.darkmode .overlayLabelRejected-IdRHs {\n color: #ff7875;\n background: rgba(0, 0, 0, 0.55);\n}\n\n.darkmode .overlayLabelChangedReadyForRenderer-e7Fdw {\n color: #ffd666;\n background: rgba(0, 0, 0, 0.55);\n}\n";
42452
+ styleInject(css_248z$Y);
41739
42453
 
41740
42454
  function SideBySideViewer(_ref) {
41741
42455
  var _images$leftSlides, _images$rightSlides, _slides$;
@@ -41896,8 +42610,8 @@ var item$1 = "item-jn9Ok";
41896
42610
  var keys = "keys-ev62a";
41897
42611
  var keyChip = "keyChip-gS8Cz";
41898
42612
  var label$2 = "label-bmm2i";
41899
- var css_248z$W = ".root-9FUw- {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n -moz-column-gap: 14px;\n column-gap: 14px;\n row-gap: 4px;\n opacity: 0.75;\n}\n\n.item-jn9Ok {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n min-width: -moz-max-content;\n min-width: max-content;\n}\n\n.keys-ev62a {\n display: inline-flex;\n gap: 2px;\n}\n\n.keyChip-gS8Cz {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 22px;\n height: 22px;\n padding: 0 6px;\n border-radius: 4px;\n border: 1px solid #d9d9d9;\n background: #fafafa;\n color: rgba(0, 0, 0, 0.65);\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 11px;\n line-height: 20px;\n}\n\n.label-bmm2i {\n font-size: 12px;\n white-space: nowrap;\n word-break: keep-all;\n}\n\n@media (max-width: 1280px) {\n .root-9FUw- {\n justify-content: flex-start;\n }\n}\n\n/* Dark mode */\n.darkmode .keyChip-gS8Cz {\n border-color: #595959;\n background: #262626;\n color: rgba(255, 255, 255, 0.75);\n}\n";
41900
- styleInject(css_248z$W);
42613
+ var css_248z$X = ".root-9FUw- {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n -moz-column-gap: 14px;\n column-gap: 14px;\n row-gap: 4px;\n opacity: 0.75;\n}\n\n.item-jn9Ok {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n min-width: -moz-max-content;\n min-width: max-content;\n}\n\n.keys-ev62a {\n display: inline-flex;\n gap: 2px;\n}\n\n.keyChip-gS8Cz {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 22px;\n height: 22px;\n padding: 0 6px;\n border-radius: 4px;\n border: 1px solid #d9d9d9;\n background: #fafafa;\n color: rgba(0, 0, 0, 0.65);\n font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n font-size: 11px;\n line-height: 20px;\n}\n\n.label-bmm2i {\n font-size: 12px;\n white-space: nowrap;\n word-break: keep-all;\n}\n\n@media (max-width: 1280px) {\n .root-9FUw- {\n justify-content: flex-start;\n }\n}\n\n/* Dark mode */\n.darkmode .keyChip-gS8Cz {\n border-color: #595959;\n background: #262626;\n color: rgba(255, 255, 255, 0.75);\n}\n";
42614
+ styleInject(css_248z$X);
41901
42615
 
41902
42616
  /** Catalog of all available shortcuts, keyed for explicit composition per mode. */
41903
42617
  var SHORTCUTS = {
@@ -42000,8 +42714,8 @@ function ShortcutLegend(_ref) {
42000
42714
  var root$5 = "root-AeU29";
42001
42715
  var actions$2 = "actions-Wopjy";
42002
42716
  var legendContainer = "legendContainer--qZEQ";
42003
- var css_248z$V = ".root-AeU29 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 16px;\n background: #fff;\n border-top: 1px solid #f0f0f0;\n gap: 16px;\n flex-wrap: wrap;\n flex-shrink: 0;\n}\n\n.actions-Wopjy {\n display: inline-flex;\n min-width: 0;\n}\n\n.legendContainer--qZEQ {\n flex: 1 1 420px;\n display: flex;\n justify-content: flex-end;\n min-width: 0;\n}\n\n@media (max-width: 1280px) {\n .legendContainer--qZEQ {\n flex-basis: 100%;\n justify-content: flex-start;\n }\n}\n\n/* Dark mode */\n.darkmode .root-AeU29 {\n background: #141414;\n border-top-color: #303030;\n}\n";
42004
- styleInject(css_248z$V);
42717
+ var css_248z$W = ".root-AeU29 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 16px;\n background: #fff;\n border-top: 1px solid #f0f0f0;\n gap: 16px;\n flex-wrap: wrap;\n flex-shrink: 0;\n}\n\n.actions-Wopjy {\n display: inline-flex;\n min-width: 0;\n}\n\n.legendContainer--qZEQ {\n flex: 1 1 420px;\n display: flex;\n justify-content: flex-end;\n min-width: 0;\n}\n\n@media (max-width: 1280px) {\n .legendContainer--qZEQ {\n flex-basis: 100%;\n justify-content: flex-start;\n }\n}\n\n/* Dark mode */\n.darkmode .root-AeU29 {\n background: #141414;\n border-top-color: #303030;\n}\n";
42718
+ styleInject(css_248z$W);
42005
42719
 
42006
42720
  function ActionBar(_ref) {
42007
42721
  var disabled = _ref.disabled,
@@ -42128,8 +42842,8 @@ var thumbPlaceholder$1 = "thumbPlaceholder-zX1-S";
42128
42842
  var info$1 = "info-8ZlUD";
42129
42843
  var label$1 = "label-y-wTq";
42130
42844
  var meta = "meta-Ihuqr";
42131
- var css_248z$U = ".root-7OUrP {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 12px;\n border: 1px solid #d9d9d9;\n border: 1px solid var(--ant-color-border, #d9d9d9);\n border-radius: 8px;\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n.root-7OUrP:active {\n cursor: grabbing;\n}\n\n.rootSelected-Z8LGb {\n border-color: #1677ff;\n border-color: var(--ant-color-primary, #1677ff);\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n}\n\n.dragHandle-xo0vD {\n display: inline-flex;\n align-items: center;\n cursor: grab;\n color: #999;\n color: var(--ant-color-text-tertiary, #999);\n touch-action: none;\n}\n\n.dragHandle-xo0vD:active {\n cursor: grabbing;\n}\n\n.badge-7hZ6T {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 20px;\n height: 20px;\n padding: 0 6px;\n border-radius: 10px;\n font-size: 12px;\n font-weight: 600;\n color: #fff;\n background: #1677ff;\n background: var(--ant-color-primary, #1677ff);\n}\n\n.thumb-ePFWB {\n width: 88px;\n height: 88px;\n -o-object-fit: cover;\n object-fit: cover;\n border-radius: 6px;\n flex: 0 0 auto;\n background: #f0f0f0;\n background: var(--ant-color-fill-secondary, #f0f0f0);\n cursor: pointer;\n}\n\n.thumbPlaceholder-zX1-S {\n width: 88px;\n height: 88px;\n border-radius: 6px;\n background: #f0f0f0;\n background: var(--ant-color-fill-secondary, #f0f0f0);\n flex: 0 0 auto;\n}\n\n.info-8ZlUD {\n display: flex;\n flex-direction: column;\n min-width: 0;\n flex: 1 1 auto;\n}\n\n.label-y-wTq {\n font-size: 14px;\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.meta-Ihuqr {\n font-size: 12px;\n color: #888;\n color: var(--ant-color-text-secondary, #888);\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n\n.referenceTag-gyKQR {\n align-self: flex-start;\n margin-top: 4px;\n padding: 1px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n color: #1677ff;\n color: var(--ant-color-primary, #1677ff);\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n border: 1px solid #91caff;\n border: 1px solid var(--ant-color-primary-border, #91caff);\n white-space: nowrap;\n}\n";
42132
- styleInject(css_248z$U);
42845
+ var css_248z$V = ".root-7OUrP {\n display: flex;\n align-items: center;\n gap: 12px;\n padding: 10px 12px;\n border: 1px solid #d9d9d9;\n border: 1px solid var(--ant-color-border, #d9d9d9);\n border-radius: 8px;\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n}\n\n.root-7OUrP:active {\n cursor: grabbing;\n}\n\n.rootSelected-Z8LGb {\n border-color: #1677ff;\n border-color: var(--ant-color-primary, #1677ff);\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n}\n\n.dragHandle-xo0vD {\n display: inline-flex;\n align-items: center;\n cursor: grab;\n color: #999;\n color: var(--ant-color-text-tertiary, #999);\n touch-action: none;\n}\n\n.dragHandle-xo0vD:active {\n cursor: grabbing;\n}\n\n.badge-7hZ6T {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 20px;\n height: 20px;\n padding: 0 6px;\n border-radius: 10px;\n font-size: 12px;\n font-weight: 600;\n color: #fff;\n background: #1677ff;\n background: var(--ant-color-primary, #1677ff);\n}\n\n.thumb-ePFWB {\n width: 88px;\n height: 88px;\n -o-object-fit: cover;\n object-fit: cover;\n border-radius: 6px;\n flex: 0 0 auto;\n background: #f0f0f0;\n background: var(--ant-color-fill-secondary, #f0f0f0);\n cursor: pointer;\n}\n\n.thumbPlaceholder-zX1-S {\n width: 88px;\n height: 88px;\n border-radius: 6px;\n background: #f0f0f0;\n background: var(--ant-color-fill-secondary, #f0f0f0);\n flex: 0 0 auto;\n}\n\n.info-8ZlUD {\n display: flex;\n flex-direction: column;\n min-width: 0;\n flex: 1 1 auto;\n}\n\n.label-y-wTq {\n font-size: 14px;\n font-weight: 500;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.meta-Ihuqr {\n font-size: 12px;\n color: #888;\n color: var(--ant-color-text-secondary, #888);\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n\n.referenceTag-gyKQR {\n align-self: flex-start;\n margin-top: 4px;\n padding: 1px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 500;\n color: #1677ff;\n color: var(--ant-color-primary, #1677ff);\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n border: 1px solid #91caff;\n border: 1px solid var(--ant-color-primary-border, #91caff);\n white-space: nowrap;\n}\n";
42846
+ styleInject(css_248z$V);
42133
42847
 
42134
42848
  function ownKeys$1K(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
42135
42849
  function _objectSpread$1K(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1K(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1K(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -42237,9 +42951,9 @@ function SortableImageRow(_ref) {
42237
42951
  var root$3 = "root-II5c9";
42238
42952
  var title$3 = "title-2FZl4";
42239
42953
  var hint = "hint-AnZcz";
42240
- var list$3 = "list-qqATK";
42241
- var css_248z$T = ".root-II5c9 {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 12px;\n border: 1px solid #d9d9d9;\n border: 1px solid var(--ant-color-border, #d9d9d9);\n border-radius: 8px;\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n flex: 1 1 auto;\n min-height: 0;\n overflow: hidden;\n}\n\n.title-2FZl4 {\n font-size: 14px;\n font-weight: 600;\n}\n\n.hint-AnZcz {\n font-size: 12px;\n color: #888;\n color: var(--ant-color-text-secondary, #888);\n}\n\n.list-qqATK {\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1 1 auto;\n min-height: 0;\n overflow-y: auto;\n padding-right: 4px;\n}\n";
42242
- styleInject(css_248z$T);
42954
+ var list$4 = "list-qqATK";
42955
+ var css_248z$U = ".root-II5c9 {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 12px;\n border: 1px solid #d9d9d9;\n border: 1px solid var(--ant-color-border, #d9d9d9);\n border-radius: 8px;\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n flex: 1 1 auto;\n min-height: 0;\n overflow: hidden;\n}\n\n.title-2FZl4 {\n font-size: 14px;\n font-weight: 600;\n}\n\n.hint-AnZcz {\n font-size: 12px;\n color: #888;\n color: var(--ant-color-text-secondary, #888);\n}\n\n.list-qqATK {\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1 1 auto;\n min-height: 0;\n overflow-y: auto;\n padding-right: 4px;\n}\n";
42956
+ styleInject(css_248z$U);
42243
42957
 
42244
42958
  function ownKeys$1J(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
42245
42959
  function _objectSpread$1J(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1J(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1J(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -42421,7 +43135,7 @@ function AIImageSelector(_ref2) {
42421
43135
  }),
42422
43136
  strategy: verticalListSortingStrategy,
42423
43137
  children: /*#__PURE__*/jsx("div", {
42424
- className: list$3,
43138
+ className: list$4,
42425
43139
  children: items.map(function (it) {
42426
43140
  return /*#__PURE__*/jsx(SortableImageRow, {
42427
43141
  id: it.key,
@@ -42519,8 +43233,8 @@ function normalizeInputImages(images, slides) {
42519
43233
 
42520
43234
  var body$2 = "body-DmzP3";
42521
43235
  var selectorWrap = "selector-wrap--NoNf";
42522
- var css_248z$S = "/* Bounded height so the image list scrolls inside the popup instead of growing it. */\n.body-DmzP3 {\n display: flex;\n flex-direction: column;\n gap: 12px;\n height: 60vh;\n min-height: 0;\n}\n\n.selector-wrap--NoNf {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n";
42523
- styleInject(css_248z$S);
43236
+ var css_248z$T = "/* Bounded height so the image list scrolls inside the popup instead of growing it. */\n.body-DmzP3 {\n display: flex;\n flex-direction: column;\n gap: 12px;\n height: 60vh;\n min-height: 0;\n}\n\n.selector-wrap--NoNf {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n";
43237
+ styleInject(css_248z$T);
42524
43238
 
42525
43239
  /**
42526
43240
  * Popup counterpart of the image-selection phase for jobs that are already in checking: the
@@ -42738,8 +43452,8 @@ var conflict = "conflict-U1lxo";
42738
43452
  var slot = "slot-pMffO";
42739
43453
  var options = "options-s6vHt";
42740
43454
  var thumb$1 = "thumb-6gdgJ";
42741
- var css_248z$R = ".conflict-U1lxo {\n margin-top: 16px;\n}\n\n.slot-pMffO {\n margin-left: 4px;\n}\n\n.options-s6vHt {\n display: block;\n margin-top: 8px;\n}\n\n.thumb-6gdgJ {\n width: 40px;\n height: 40px;\n -o-object-fit: cover;\n object-fit: cover;\n border-radius: 4px;\n}\n";
42742
- styleInject(css_248z$R);
43455
+ var css_248z$S = ".conflict-U1lxo {\n margin-top: 16px;\n}\n\n.slot-pMffO {\n margin-left: 4px;\n}\n\n.options-s6vHt {\n display: block;\n margin-top: 8px;\n}\n\n.thumb-6gdgJ {\n width: 40px;\n height: 40px;\n -o-object-fit: cover;\n object-fit: cover;\n border-radius: 4px;\n}\n";
43456
+ styleInject(css_248z$S);
42743
43457
 
42744
43458
  function ownKeys$1H(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
42745
43459
  function _objectSpread$1H(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1H(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1H(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -42987,8 +43701,8 @@ function _runPerProduct() {
42987
43701
  return _runPerProduct.apply(this, arguments);
42988
43702
  }
42989
43703
 
42990
- var container$5 = "container-PmByk";
42991
- var header$2 = "header-ESR-S";
43704
+ var container$6 = "container-PmByk";
43705
+ var header$3 = "header-ESR-S";
42992
43706
  var title$2 = "title-g5pl0";
42993
43707
  var subtitle = "subtitle-wYnId";
42994
43708
  var tiles = "tiles-4NW82";
@@ -43004,7 +43718,7 @@ var dotPayment = "dotPayment-Fzk7U";
43004
43718
  var dotReadyForProduction = "dotReadyForProduction-yIYkt";
43005
43719
  var tileNum = "tileNum-9DGoc";
43006
43720
  var tileLabel = "tileLabel-nG0xD";
43007
- var toolbar$2 = "toolbar-jJDio";
43721
+ var toolbar$3 = "toolbar-jJDio";
43008
43722
  var selInfo = "selInfo-r4QBF";
43009
43723
  var spacer = "spacer-g69QI";
43010
43724
  var thumb = "thumb-Wd6Zw";
@@ -43025,8 +43739,8 @@ var statusTriggerLocked = "statusTriggerLocked-5u8lc";
43025
43739
  var statusIcon = "statusIcon-rpMzy";
43026
43740
  var menuDot = "menuDot-ybea1";
43027
43741
  var footer$1 = "footer-HdZwL";
43028
- var css_248z$Q = ".container-PmByk {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n gap: 14px;\n overflow: auto;\n padding: 16px 20px;\n}\n\n.header-ESR-S {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.title-g5pl0 {\n font-size: 16px;\n font-weight: 600;\n}\n\n.subtitle-wYnId {\n color: #8c8c8c;\n font-size: 13px;\n}\n\n.tiles-4NW82 {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n}\n\n.tile-vHlQ9 {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n padding: 6px 12px;\n border: 1px solid #f0f0f0;\n border-radius: 8px;\n background: #fff;\n cursor: pointer;\n font: inherit;\n color: inherit;\n transition: border-color 0.15s, background 0.15s;\n}\n\n.tile-vHlQ9:hover {\n border-color: #1677ff;\n}\n\n.tile-vHlQ9.focus-visible-am0Va {\n outline: 2px solid #1677ff;\n outline-offset: 2px;\n}\n\n.tile-vHlQ9:focus-visible {\n outline: 2px solid #1677ff;\n outline-offset: 2px;\n}\n\n.tileActive-Kl6AW {\n border-color: #1677ff;\n background: #e6f4ff;\n}\n\n.clearFilter-KsvRj {\n align-self: center;\n border: none;\n background: none;\n color: #1677ff;\n cursor: pointer;\n font: inherit;\n font-size: 12px;\n padding: 0 4px;\n}\n\n.clearFilter-KsvRj:hover {\n text-decoration: underline;\n}\n\n.dot-x41U9 {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex: none;\n}\n\n.dotApproved-jidKD {\n background: #52c41a;\n}\n\n.dotRejected-9TFUi {\n background: #ff4d4f;\n}\n\n.dotOpen-eHbi0 {\n background: #faad14;\n}\n\n.dotFinished-Id6hR {\n background: #722ed1;\n}\n\n.dotPayment-Fzk7U {\n background: #13c2c2;\n}\n\n.dotReadyForProduction-yIYkt {\n background: #1677ff;\n}\n\n.tileNum-9DGoc {\n font-size: 16px;\n font-weight: 600;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n}\n\n.tileLabel-nG0xD {\n color: #8c8c8c;\n font-size: 12px;\n}\n\n.toolbar-jJDio {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.selInfo-r4QBF {\n color: #8c8c8c;\n font-size: 13px;\n}\n\n.spacer-g69QI {\n flex: 1;\n}\n\n.thumb-Wd6Zw {\n width: 74px;\n height: 54px;\n border-radius: 6px;\n overflow: hidden;\n border: 1px solid #f0f0f0;\n background: #fafafa;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n cursor: pointer;\n}\n\n.thumbStatic-kc-Qn {\n cursor: default;\n}\n\n.thumbImg-ViR1y {\n width: 100%;\n height: 100%;\n -o-object-fit: cover;\n object-fit: cover;\n display: block;\n}\n\n.thumbPlaceholder-gp0b2 {\n color: #bfbfbf;\n font-size: 18px;\n}\n\n.badge-bYA4m {\n position: absolute;\n left: 4px;\n bottom: 4px;\n background: rgba(0, 0, 0, 0.6);\n color: #fff;\n font-size: 10px;\n font-weight: 600;\n line-height: 1;\n padding: 2px 5px;\n border-radius: 3px;\n}\n\n.videoBadge--DvZy {\n position: absolute;\n color: #fff;\n font-size: 22px;\n filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));\n}\n\n.prodName-t5Dom {\n font-weight: 600;\n}\n\n.info--EMmi {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.infoLines-HenMK {\n display: flex;\n flex-direction: column;\n gap: 2px;\n margin-top: 2px;\n}\n\n.infoLine-EyUqw {\n font-size: 12px;\n color: #8c8c8c;\n}\n\n.infoLabel-JfxNQ {\n color: #bfbfbf;\n}\n\n.reason-wzttm {\n margin-top: 4px;\n max-width: 220px;\n font-size: 12px;\n color: #8c8c8c;\n white-space: normal;\n /* A failure reason can be a whole render log - without the clamp one row would blow up the table.\n The full text stays reachable through the element's tooltip. */\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.prodSub-cZZSl {\n color: #8c8c8c;\n font-size: 12px;\n display: flex;\n gap: 8px;\n flex-wrap: wrap;\n margin-top: 2px;\n}\n\n.sku-7EODQ {\n font-family: monospace;\n}\n\n.statusTrigger-oGuEq {\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.statusTriggerLocked-5u8lc {\n cursor: default;\n}\n\n.statusIcon-rpMzy {\n font-size: 10px;\n color: #8c8c8c;\n}\n\n.menuDot-ybea1 {\n display: inline-block;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n margin-right: 8px;\n vertical-align: middle;\n}\n\n.footer-HdZwL {\n display: flex;\n justify-content: space-between;\n gap: 8px;\n flex-wrap: wrap;\n padding-top: 4px;\n}\n\n/* Dark mode */\n.darkmode .tile-vHlQ9 {\n background: #1f1f1f;\n border-color: #434343;\n}\n\n.darkmode .tileActive-Kl6AW {\n border-color: #3c89e8;\n background: rgba(60, 137, 232, 0.16);\n}\n\n.darkmode .thumb-Wd6Zw {\n background: #262626;\n border-color: #434343;\n}\n\n.darkmode .subtitle-wYnId,\n.darkmode .tileLabel-nG0xD,\n.darkmode .selInfo-r4QBF,\n.darkmode .prodSub-cZZSl,\n.darkmode .infoLine-EyUqw,\n.darkmode .reason-wzttm {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.darkmode .infoLabel-JfxNQ {\n color: rgba(255, 255, 255, 0.35);\n}\n";
43029
- styleInject(css_248z$Q);
43742
+ var css_248z$R = ".container-PmByk {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n gap: 14px;\n overflow: auto;\n padding: 16px 20px;\n}\n\n.header-ESR-S {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.title-g5pl0 {\n font-size: 16px;\n font-weight: 600;\n}\n\n.subtitle-wYnId {\n color: #8c8c8c;\n font-size: 13px;\n}\n\n.tiles-4NW82 {\n display: flex;\n flex-wrap: wrap;\n gap: 8px;\n}\n\n.tile-vHlQ9 {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n padding: 6px 12px;\n border: 1px solid #f0f0f0;\n border-radius: 8px;\n background: #fff;\n cursor: pointer;\n font: inherit;\n color: inherit;\n transition: border-color 0.15s, background 0.15s;\n}\n\n.tile-vHlQ9:hover {\n border-color: #1677ff;\n}\n\n.tile-vHlQ9.focus-visible-am0Va {\n outline: 2px solid #1677ff;\n outline-offset: 2px;\n}\n\n.tile-vHlQ9:focus-visible {\n outline: 2px solid #1677ff;\n outline-offset: 2px;\n}\n\n.tileActive-Kl6AW {\n border-color: #1677ff;\n background: #e6f4ff;\n}\n\n.clearFilter-KsvRj {\n align-self: center;\n border: none;\n background: none;\n color: #1677ff;\n cursor: pointer;\n font: inherit;\n font-size: 12px;\n padding: 0 4px;\n}\n\n.clearFilter-KsvRj:hover {\n text-decoration: underline;\n}\n\n.dot-x41U9 {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n flex: none;\n}\n\n.dotApproved-jidKD {\n background: #52c41a;\n}\n\n.dotRejected-9TFUi {\n background: #ff4d4f;\n}\n\n.dotOpen-eHbi0 {\n background: #faad14;\n}\n\n.dotFinished-Id6hR {\n background: #722ed1;\n}\n\n.dotPayment-Fzk7U {\n background: #13c2c2;\n}\n\n.dotReadyForProduction-yIYkt {\n background: #1677ff;\n}\n\n.tileNum-9DGoc {\n font-size: 16px;\n font-weight: 600;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n}\n\n.tileLabel-nG0xD {\n color: #8c8c8c;\n font-size: 12px;\n}\n\n.toolbar-jJDio {\n display: flex;\n align-items: center;\n gap: 12px;\n flex-wrap: wrap;\n}\n\n.selInfo-r4QBF {\n color: #8c8c8c;\n font-size: 13px;\n}\n\n.spacer-g69QI {\n flex: 1;\n}\n\n.thumb-Wd6Zw {\n width: 74px;\n height: 54px;\n border-radius: 6px;\n overflow: hidden;\n border: 1px solid #f0f0f0;\n background: #fafafa;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n cursor: pointer;\n}\n\n.thumbStatic-kc-Qn {\n cursor: default;\n}\n\n.thumbImg-ViR1y {\n width: 100%;\n height: 100%;\n -o-object-fit: cover;\n object-fit: cover;\n display: block;\n}\n\n.thumbPlaceholder-gp0b2 {\n color: #bfbfbf;\n font-size: 18px;\n}\n\n.badge-bYA4m {\n position: absolute;\n left: 4px;\n bottom: 4px;\n background: rgba(0, 0, 0, 0.6);\n color: #fff;\n font-size: 10px;\n font-weight: 600;\n line-height: 1;\n padding: 2px 5px;\n border-radius: 3px;\n}\n\n.videoBadge--DvZy {\n position: absolute;\n color: #fff;\n font-size: 22px;\n filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));\n}\n\n.prodName-t5Dom {\n font-weight: 600;\n}\n\n.info--EMmi {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.infoLines-HenMK {\n display: flex;\n flex-direction: column;\n gap: 2px;\n margin-top: 2px;\n}\n\n.infoLine-EyUqw {\n font-size: 12px;\n color: #8c8c8c;\n}\n\n.infoLabel-JfxNQ {\n color: #bfbfbf;\n}\n\n.reason-wzttm {\n margin-top: 4px;\n max-width: 220px;\n font-size: 12px;\n color: #8c8c8c;\n white-space: normal;\n /* A failure reason can be a whole render log - without the clamp one row would blow up the table.\n The full text stays reachable through the element's tooltip. */\n display: -webkit-box;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n overflow: hidden;\n}\n\n.prodSub-cZZSl {\n color: #8c8c8c;\n font-size: 12px;\n display: flex;\n gap: 8px;\n flex-wrap: wrap;\n margin-top: 2px;\n}\n\n.sku-7EODQ {\n font-family: monospace;\n}\n\n.statusTrigger-oGuEq {\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.statusTriggerLocked-5u8lc {\n cursor: default;\n}\n\n.statusIcon-rpMzy {\n font-size: 10px;\n color: #8c8c8c;\n}\n\n.menuDot-ybea1 {\n display: inline-block;\n width: 8px;\n height: 8px;\n border-radius: 50%;\n margin-right: 8px;\n vertical-align: middle;\n}\n\n.footer-HdZwL {\n display: flex;\n justify-content: space-between;\n gap: 8px;\n flex-wrap: wrap;\n padding-top: 4px;\n}\n\n/* Dark mode */\n.darkmode .tile-vHlQ9 {\n background: #1f1f1f;\n border-color: #434343;\n}\n\n.darkmode .tileActive-Kl6AW {\n border-color: #3c89e8;\n background: rgba(60, 137, 232, 0.16);\n}\n\n.darkmode .thumb-Wd6Zw {\n background: #262626;\n border-color: #434343;\n}\n\n.darkmode .subtitle-wYnId,\n.darkmode .tileLabel-nG0xD,\n.darkmode .selInfo-r4QBF,\n.darkmode .prodSub-cZZSl,\n.darkmode .infoLine-EyUqw,\n.darkmode .reason-wzttm {\n color: rgba(255, 255, 255, 0.5);\n}\n\n.darkmode .infoLabel-JfxNQ {\n color: rgba(255, 255, 255, 0.35);\n}\n";
43743
+ styleInject(css_248z$R);
43030
43744
 
43031
43745
  var isSlotConflict = function isSlotConflict(error) {
43032
43746
  return error instanceof RenderJobSlotConflictError;
@@ -43840,9 +44554,9 @@ function SessionOverview(_ref3) {
43840
44554
  }
43841
44555
  });
43842
44556
  return /*#__PURE__*/jsxs("div", {
43843
- className: container$5,
44557
+ className: container$6,
43844
44558
  children: [/*#__PURE__*/jsxs("div", {
43845
- className: header$2,
44559
+ className: header$3,
43846
44560
  children: [/*#__PURE__*/jsx("span", {
43847
44561
  className: title$2,
43848
44562
  children: t('backoffice.renderapprove.overview.title', {
@@ -43907,7 +44621,7 @@ function SessionOverview(_ref3) {
43907
44621
  message: t('backoffice.renderapprove.errors.loadJobTitle'),
43908
44622
  description: error
43909
44623
  }), /*#__PURE__*/jsxs("div", {
43910
- className: toolbar$2,
44624
+ className: toolbar$3,
43911
44625
  children: [/*#__PURE__*/jsx("span", {
43912
44626
  className: selInfo,
43913
44627
  children: selectedKeys.length > 0 ? t('backoffice.renderapprove.overview.selectedInfo', {
@@ -43986,8 +44700,8 @@ function SessionOverview(_ref3) {
43986
44700
  var content = "content-Zf-od";
43987
44701
  var reasonGroup = "reasonGroup-XDHiq";
43988
44702
  var commentInput = "commentInput-9VKDH";
43989
- var css_248z$P = ".content-Zf-od {\n width: 100%;\n}\n\n.reasonGroup-XDHiq {\n display: flex;\n flex-direction: column;\n gap: 4px;\n margin-top: 8px;\n}\n\n.commentInput-9VKDH {\n margin-top: 8px;\n}\n";
43990
- styleInject(css_248z$P);
44703
+ var css_248z$Q = ".content-Zf-od {\n width: 100%;\n}\n\n.reasonGroup-XDHiq {\n display: flex;\n flex-direction: column;\n gap: 4px;\n margin-top: 8px;\n}\n\n.commentInput-9VKDH {\n margin-top: 8px;\n}\n";
44704
+ styleInject(css_248z$Q);
43991
44705
 
43992
44706
  var _REJECTION_REASONS$;
43993
44707
  var DEFAULT_REASON = (_REJECTION_REASONS$ = REJECTION_REASONS[0]) === null || _REJECTION_REASONS$ === void 0 ? void 0 : _REJECTION_REASONS$.value;
@@ -44133,7 +44847,7 @@ function RejectModal(_ref) {
44133
44847
  }
44134
44848
 
44135
44849
  var panelRoot = "panelRoot-gfLcR";
44136
- var toolbar$1 = "toolbar-Y7oCe";
44850
+ var toolbar$2 = "toolbar-Y7oCe";
44137
44851
  var toolbarActions = "toolbarActions-L-u0R";
44138
44852
  var workspace = "workspace-4rfzU";
44139
44853
  var workspaceSplitter = "workspaceSplitter-CVUsN";
@@ -44168,8 +44882,8 @@ var promptEditLayout = "promptEditLayout-SCkMM";
44168
44882
  var promptWarning = "promptWarning-OGH7p";
44169
44883
  var promptEditActions = "promptEditActions-bYvcD";
44170
44884
  var promptStickyActions = "promptStickyActions-arA6B";
44171
- var css_248z$O = ".panelRoot-gfLcR {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n.toolbar-Y7oCe {\n display: flex;\n align-items: center;\n gap: 24px;\n padding: 6px 16px;\n background: #fff;\n border-bottom: 1px solid #f0f0f0;\n min-height: 36px;\n flex-wrap: wrap;\n flex-shrink: 0;\n}\n\n.toolbarActions-L-u0R {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n}\n\n.workspace-4rfzU {\n display: flex;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n.workspaceSplitter-CVUsN {\n width: 100%;\n height: 100%;\n}\n\n.workspaceSplitterMain-TGqq- {\n height: 100%;\n}\n\n.workspaceSplitterSide-y-OCr {\n width: 100%;\n height: 100%;\n}\n\n.main-OZ7rC {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.primaryFields-6QkPL {\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n align-items: center;\n flex: 1;\n min-width: 0;\n}\n\n.primaryFieldItem-6-wLB {\n display: inline-flex;\n gap: 4px;\n align-items: baseline;\n min-width: 0;\n}\n\n.primaryFieldLabel-xmQ2Q {\n font-size: 12px;\n white-space: nowrap;\n}\n\n.primaryFieldValue-CY9eJ {\n font-size: 12px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 260px;\n}\n\n.sidebar-3A7Z2 {\n width: 100%;\n height: 100%;\n background: #fff;\n border-left: 1px solid #f0f0f0;\n overflow: hidden;\n}\n\n.sidebarInner-MpQjT {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 16px;\n box-sizing: border-box;\n}\n\n.panelColumns-aYOq4 {\n display: block;\n height: 100%;\n}\n\n.sidebarSplitter-LlocD {\n width: 100%;\n height: 100%;\n}\n\n.sidebarSplitterPanel-y71Yq {\n height: 100%;\n overflow-y: auto;\n padding-right: 8px;\n}\n\n.sidebarTitle-dIltG {\n margin: 0 0 16px;\n}\n\n.promptHeader-QHTrj {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n margin-bottom: 16px;\n}\n\n.promptHeaderSticky-HadEs {\n position: sticky;\n top: 0;\n z-index: 2;\n background: inherit;\n padding-bottom: 8px;\n}\n\n.promptTitle-qlInu {\n margin: 0;\n}\n\n.section-895Lv {\n margin-bottom: 16px;\n}\n\n/* A bordered Descriptions sizes its columns from the content - antd overrides its\n own base `table-layout: fixed` with `auto`. An unbreakable value (a scene path)\n then inflates the cell, and the edit controls in it, `width: 100%` of that cell,\n render past the panel. Out-specifying antd's rule needs its three classes. */\n.section-895Lv.ant-descriptions.ant-descriptions-bordered > .ant-descriptions-view > table {\n table-layout: fixed;\n}\n\n/* A fixed layout takes the column widths from the first row, so they have to be\n stated: enough for the longest label (\"Renderszene / Stilwelt\"). */\n.section-895Lv .ant-descriptions-item-label {\n width: 40%;\n}\n\n.detailsEditControl-q2lEh {\n width: 100%;\n}\n\n.panelSection-cniRE {\n margin-bottom: 20px;\n}\n\n.promptPanel-NHVXj {\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n overflow: hidden;\n}\n\n.panelSection-cniRE:last-child {\n margin-bottom: 0;\n}\n\n.promptText-2-Sjb {\n white-space: pre-wrap;\n word-break: break-word;\n margin-bottom: 0;\n}\n\n.promptReadOnlyLayout-CtTQN {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n.promptReadOnlyScroll-N1kdM {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.promptVariantField-wfK6m {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n flex-shrink: 0;\n}\n\n.promptVariantSelect-0bD6o {\n width: 80px;\n}\n\n.promptEditor-0tZzL {\n margin-bottom: 0;\n}\n\n.promptEditorWrap-CJT9J {\n display: flex;\n flex: 1;\n min-height: 0;\n margin-bottom: 12px;\n}\n\n.promptEditorWrap-CJT9J textarea.ant-input {\n height: 100%;\n min-height: 160px;\n}\n\n.promptEditLayout-SCkMM {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding-bottom: 56px;\n}\n\n.promptWarning-OGH7p {\n margin-bottom: 12px;\n}\n\n.promptEditActions-bYvcD {\n display: flex;\n justify-content: flex-end;\n width: 100%;\n}\n\n.promptStickyActions-arA6B {\n position: sticky;\n bottom: 0;\n padding-top: 12px;\n margin-top: auto;\n background: inherit;\n z-index: 1;\n}\n\n/* Dark mode */\n.darkmode .toolbar-Y7oCe {\n background: #141414;\n border-bottom-color: #303030;\n}\n\n.darkmode .sidebar-3A7Z2 {\n background: #141414;\n border-left-color: #303030;\n}\n";
44172
- styleInject(css_248z$O);
44885
+ var css_248z$P = ".panelRoot-gfLcR {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n.toolbar-Y7oCe {\n display: flex;\n align-items: center;\n gap: 24px;\n padding: 6px 16px;\n background: #fff;\n border-bottom: 1px solid #f0f0f0;\n min-height: 36px;\n flex-wrap: wrap;\n flex-shrink: 0;\n}\n\n.toolbarActions-L-u0R {\n display: inline-flex;\n align-items: center;\n gap: 8px;\n}\n\n.workspace-4rfzU {\n display: flex;\n flex: 1;\n min-height: 0;\n overflow: hidden;\n}\n\n.workspaceSplitter-CVUsN {\n width: 100%;\n height: 100%;\n}\n\n.workspaceSplitterMain-TGqq- {\n height: 100%;\n}\n\n.workspaceSplitterSide-y-OCr {\n width: 100%;\n height: 100%;\n}\n\n.main-OZ7rC {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n min-height: 0;\n}\n\n.primaryFields-6QkPL {\n display: flex;\n flex-wrap: wrap;\n gap: 16px;\n align-items: center;\n flex: 1;\n min-width: 0;\n}\n\n.primaryFieldItem-6-wLB {\n display: inline-flex;\n gap: 4px;\n align-items: baseline;\n min-width: 0;\n}\n\n.primaryFieldLabel-xmQ2Q {\n font-size: 12px;\n white-space: nowrap;\n}\n\n.primaryFieldValue-CY9eJ {\n font-size: 12px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n max-width: 260px;\n}\n\n.sidebar-3A7Z2 {\n width: 100%;\n height: 100%;\n background: #fff;\n border-left: 1px solid #f0f0f0;\n overflow: hidden;\n}\n\n.sidebarInner-MpQjT {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n padding: 16px;\n box-sizing: border-box;\n}\n\n.panelColumns-aYOq4 {\n display: block;\n height: 100%;\n}\n\n.sidebarSplitter-LlocD {\n width: 100%;\n height: 100%;\n}\n\n.sidebarSplitterPanel-y71Yq {\n height: 100%;\n overflow-y: auto;\n padding-right: 8px;\n}\n\n.sidebarTitle-dIltG {\n margin: 0 0 16px;\n}\n\n.promptHeader-QHTrj {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n margin-bottom: 16px;\n}\n\n.promptHeaderSticky-HadEs {\n position: sticky;\n top: 0;\n z-index: 2;\n background: inherit;\n padding-bottom: 8px;\n}\n\n.promptTitle-qlInu {\n margin: 0;\n}\n\n.section-895Lv {\n margin-bottom: 16px;\n}\n\n/* A bordered Descriptions sizes its columns from the content - antd overrides its\n own base `table-layout: fixed` with `auto`. An unbreakable value (a scene path)\n then inflates the cell, and the edit controls in it, `width: 100%` of that cell,\n render past the panel. Out-specifying antd's rule needs its three classes. */\n.section-895Lv.ant-descriptions.ant-descriptions-bordered > .ant-descriptions-view > table {\n table-layout: fixed;\n}\n\n/* A fixed layout takes the column widths from the first row, so they have to be\n stated: enough for the longest label (\"Renderszene / Stilwelt\"). */\n.section-895Lv .ant-descriptions-item-label {\n width: 40%;\n}\n\n.detailsEditControl-q2lEh {\n width: 100%;\n}\n\n.panelSection-cniRE {\n margin-bottom: 20px;\n}\n\n.promptPanel-NHVXj {\n display: flex;\n flex-direction: column;\n min-height: 0;\n height: 100%;\n overflow: hidden;\n}\n\n.panelSection-cniRE:last-child {\n margin-bottom: 0;\n}\n\n.promptText-2-Sjb {\n white-space: pre-wrap;\n word-break: break-word;\n margin-bottom: 0;\n}\n\n.promptReadOnlyLayout-CtTQN {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n.promptReadOnlyScroll-N1kdM {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n}\n\n.promptVariantField-wfK6m {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n flex-shrink: 0;\n}\n\n.promptVariantSelect-0bD6o {\n width: 80px;\n}\n\n.promptEditor-0tZzL {\n margin-bottom: 0;\n}\n\n.promptEditorWrap-CJT9J {\n display: flex;\n flex: 1;\n min-height: 0;\n margin-bottom: 12px;\n}\n\n.promptEditorWrap-CJT9J textarea.ant-input {\n height: 100%;\n min-height: 160px;\n}\n\n.promptEditLayout-SCkMM {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n padding-bottom: 56px;\n}\n\n.promptWarning-OGH7p {\n margin-bottom: 12px;\n}\n\n.promptEditActions-bYvcD {\n display: flex;\n justify-content: flex-end;\n width: 100%;\n}\n\n.promptStickyActions-arA6B {\n position: sticky;\n bottom: 0;\n padding-top: 12px;\n margin-top: auto;\n background: inherit;\n z-index: 1;\n}\n\n/* Dark mode */\n.darkmode .toolbar-Y7oCe {\n background: #141414;\n border-bottom-color: #303030;\n}\n\n.darkmode .sidebar-3A7Z2 {\n background: #141414;\n border-left-color: #303030;\n}\n";
44886
+ styleInject(css_248z$P);
44173
44887
 
44174
44888
  function ownKeys$1G(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
44175
44889
  function _objectSpread$1G(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1G(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1G(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -44870,7 +45584,7 @@ function MetadataPanel(_ref) {
44870
45584
  return /*#__PURE__*/jsxs("div", {
44871
45585
  className: panelRoot,
44872
45586
  children: [/*#__PURE__*/jsxs("div", {
44873
- className: toolbar$1,
45587
+ className: toolbar$2,
44874
45588
  children: [/*#__PURE__*/jsx("div", {
44875
45589
  className: primaryFields,
44876
45590
  children: primary.map(function (_ref6) {
@@ -44980,8 +45694,8 @@ function MetadataPanel(_ref) {
44980
45694
 
44981
45695
  var fullscreenModal = "fullscreenModal-QnN1o";
44982
45696
  var image = "image-kk9AH";
44983
- var css_248z$N = ".fullscreenModal-QnN1o .ant-modal {\n top: 0;\n padding-bottom: 0;\n max-width: 100vw;\n}\n\n.fullscreenModal-QnN1o .ant-modal-content {\n border-radius: 0;\n}\n\n.fullscreenModal-QnN1o .ant-modal-body {\n padding: 0;\n height: calc(100vh - 56px);\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n}\n\n.image-kk9AH {\n max-width: 100%;\n max-height: 100%;\n -o-object-fit: contain;\n object-fit: contain;\n display: block;\n}\n";
44984
- styleInject(css_248z$N);
45697
+ var css_248z$O = ".fullscreenModal-QnN1o .ant-modal {\n top: 0;\n padding-bottom: 0;\n max-width: 100vw;\n}\n\n.fullscreenModal-QnN1o .ant-modal-content {\n border-radius: 0;\n}\n\n.fullscreenModal-QnN1o .ant-modal-body {\n padding: 0;\n height: calc(100vh - 56px);\n display: flex;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n}\n\n.image-kk9AH {\n max-width: 100%;\n max-height: 100%;\n -o-object-fit: contain;\n object-fit: contain;\n display: block;\n}\n";
45698
+ styleInject(css_248z$O);
44985
45699
 
44986
45700
  function isAr(media) {
44987
45701
  return (media === null || media === void 0 ? void 0 : media.mediaType) === 'AR';
@@ -45057,8 +45771,8 @@ function FullscreenViewer(_ref) {
45057
45771
 
45058
45772
  var notice$2 = "notice-IHLLb";
45059
45773
  var undoButton = "undoButton-HMSsR";
45060
- var css_248z$M = ".notice-IHLLb {\n border: 1px solid #d6d8ff;\n border-radius: 10px;\n}\n\n.undoButton-HMSsR {\n background: #1677ff;\n border: none;\n box-shadow: none;\n}\n\n.undoButton-HMSsR:hover,\n.undoButton-HMSsR:focus {\n background: #1677ff;\n border: none;\n}\n";
45061
- styleInject(css_248z$M);
45774
+ var css_248z$N = ".notice-IHLLb {\n border: 1px solid #d6d8ff;\n border-radius: 10px;\n}\n\n.undoButton-HMSsR {\n background: #1677ff;\n border: none;\n box-shadow: none;\n}\n\n.undoButton-HMSsR:hover,\n.undoButton-HMSsR:focus {\n background: #1677ff;\n border: none;\n}\n";
45775
+ styleInject(css_248z$N);
45062
45776
 
45063
45777
  var NOTIFICATION_KEY = 'renderapprove-undo';
45064
45778
  var COLOR_BG = 'linear-gradient(135deg,#6253e1,#04befe)';
@@ -47789,8 +48503,8 @@ var finishedContainer = "finishedContainer-ius-c";
47789
48503
  var finishedActions = "finishedActions-dT6SX";
47790
48504
  var errorAlert = "errorAlert-d4AdZ";
47791
48505
  var notFoundContainer = "notFoundContainer-xbFHj";
47792
- var css_248z$L = ".root-XQQT2 {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n background: #f5f5f5;\n}\n\n.emptyStateContainer-155hD {\n padding: 24px;\n}\n\n.finishedContainer-ius-c {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n}\n\n.finishedActions-dT6SX {\n display: inline-flex;\n gap: 8px;\n flex-wrap: wrap;\n justify-content: center;\n}\n\n.errorAlert-d4AdZ {\n margin: 16px;\n}\n\n.notFoundContainer-xbFHj {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Dark mode */\n.darkmode .root-XQQT2 {\n background: #141414;\n}\n";
47793
- styleInject(css_248z$L);
48506
+ var css_248z$M = ".root-XQQT2 {\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n background: #f5f5f5;\n}\n\n.emptyStateContainer-155hD {\n padding: 24px;\n}\n\n.finishedContainer-ius-c {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 24px;\n}\n\n.finishedActions-dT6SX {\n display: inline-flex;\n gap: 8px;\n flex-wrap: wrap;\n justify-content: center;\n}\n\n.errorAlert-d4AdZ {\n margin: 16px;\n}\n\n.notFoundContainer-xbFHj {\n flex: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n/* Dark mode */\n.darkmode .root-XQQT2 {\n background: #141414;\n}\n";
48507
+ styleInject(css_248z$M);
47794
48508
 
47795
48509
  var RENDERJOBS_PATH = '/admin/renderjobs';
47796
48510
  function setSideMenusOpen(store, open) {
@@ -49674,8 +50388,8 @@ var Content$c = observer(ContentWrapper);
49674
50388
  var layout$1 = "layout-gqKsp";
49675
50389
  var contentWrapper$1 = "content-wrapper-mQSc0";
49676
50390
  var detail = "detail-WeK8Q";
49677
- var css_248z$K = ".layout-gqKsp {\n height: 100%;\n position: relative;\n overflow: hidden;\n}\n\n.content-wrapper-mQSc0 {\n overflow: auto;\n height: 100%;\n}\n\n.detail-WeK8Q .ant-drawer-content-wrapper {\n max-width: 100%;\n}\n\n.darkmode .ant-layout {\n background-color: rgb(20, 20, 20);\n}\n\n.lightmode .ant-layout {\n background-color: rgb(255, 255, 255);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode {\n background-color: #001529 !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode .arrows, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode .arrows, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode .arrows {\n background-image: url(\"data:image/svg+xml,%3Csvg width%3D%2225%22 height%3D%2224%22 viewBox%3D%220 0 25 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M10.5 7L15.5 12L10.5 17%22 stroke%3D%22%23fff%22 stroke-width%3D%221.5%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"), linear-gradient(270deg, rgba(0, 21, 41, 1) 0%, rgba(0, 21, 41, 1) 72%, rgba(0, 21, 41, 0) 100%) !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode #Profile > div, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode #Profile > div, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode #Profile > div {\n border-left: 1px solid black;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode #welcomeText, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode #welcomeText, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode #welcomeText {\n border-right: 1px solid black;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode #Profile, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode #Profile, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode #Profile {\n background-color: #001529 !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.lightmode, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.lightmode, .diva-component-DIVA_DATA_ENGINE #diva-header.lightmode {\n background-color: #fff !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode *, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode *, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode * {\n color: rgb(255, 255, 255);\n}\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.lightmode *, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.lightmode *, .diva-component-DIVA_DATA_ENGINE #diva-header.lightmode * {\n color: rgb(0, 0, 0);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW ::-webkit-scrollbar, .diva-component-DIVA_PRODUCT_ONBOARDING ::-webkit-scrollbar, .diva-component-DIVA_DATA_ENGINE ::-webkit-scrollbar {\n width: 10px;\n height: 10px;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .darkmode ::-webkit-scrollbar-track, .diva-component-DIVA_PRODUCT_ONBOARDING .darkmode ::-webkit-scrollbar-track, .diva-component-DIVA_DATA_ENGINE .darkmode ::-webkit-scrollbar-track {\n /* the planner's layouts give every scrollbar a background, which would fill the transparent border */\n background: none;\n box-shadow: inset 0 0 10px 10px #021129;\n border: solid 3px transparent;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .darkmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_PRODUCT_ONBOARDING .darkmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_DATA_ENGINE .darkmode ::-webkit-scrollbar-thumb {\n background: none;\n box-shadow: inset 0 0 10px 10px rgb(130, 130, 130);\n border: solid 3px transparent;\n border-radius: 10px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .lightmode ::-webkit-scrollbar-track, .diva-component-DIVA_PRODUCT_ONBOARDING .lightmode ::-webkit-scrollbar-track, .diva-component-DIVA_DATA_ENGINE .lightmode ::-webkit-scrollbar-track {\n background: none;\n box-shadow: inset 0 0 10px 10px #ffffff;\n border: solid 3px transparent;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .lightmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_PRODUCT_ONBOARDING .lightmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_DATA_ENGINE .lightmode ::-webkit-scrollbar-thumb {\n background: none;\n box-shadow: inset 0 0 10px 10px #bdbdbd;\n border: solid 3px transparent;\n border-radius: 10px;\n}\n";
49678
- styleInject(css_248z$K);
50391
+ var css_248z$L = ".layout-gqKsp {\n height: 100%;\n position: relative;\n overflow: hidden;\n}\n\n.content-wrapper-mQSc0 {\n overflow: auto;\n height: 100%;\n}\n\n.detail-WeK8Q .ant-drawer-content-wrapper {\n max-width: 100%;\n}\n\n.darkmode .ant-layout {\n background-color: rgb(20, 20, 20);\n}\n\n.lightmode .ant-layout {\n background-color: rgb(255, 255, 255);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode {\n background-color: #001529 !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode .arrows, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode .arrows, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode .arrows {\n background-image: url(\"data:image/svg+xml,%3Csvg width%3D%2225%22 height%3D%2224%22 viewBox%3D%220 0 25 24%22 fill%3D%22none%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath d%3D%22M10.5 7L15.5 12L10.5 17%22 stroke%3D%22%23fff%22 stroke-width%3D%221.5%22 stroke-linecap%3D%22round%22 stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E\"), linear-gradient(270deg, rgba(0, 21, 41, 1) 0%, rgba(0, 21, 41, 1) 72%, rgba(0, 21, 41, 0) 100%) !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode #Profile > div, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode #Profile > div, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode #Profile > div {\n border-left: 1px solid black;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode #welcomeText, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode #welcomeText, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode #welcomeText {\n border-right: 1px solid black;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode #Profile, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode #Profile, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode #Profile {\n background-color: #001529 !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.lightmode, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.lightmode, .diva-component-DIVA_DATA_ENGINE #diva-header.lightmode {\n background-color: #fff !important;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.darkmode *, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.darkmode *, .diva-component-DIVA_DATA_ENGINE #diva-header.darkmode * {\n color: rgb(255, 255, 255);\n}\n.diva-component-DIVA_BACKOFFICE_NEW #diva-header.lightmode *, .diva-component-DIVA_PRODUCT_ONBOARDING #diva-header.lightmode *, .diva-component-DIVA_DATA_ENGINE #diva-header.lightmode * {\n color: rgb(0, 0, 0);\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW ::-webkit-scrollbar, .diva-component-DIVA_PRODUCT_ONBOARDING ::-webkit-scrollbar, .diva-component-DIVA_DATA_ENGINE ::-webkit-scrollbar {\n width: 10px;\n height: 10px;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .darkmode ::-webkit-scrollbar-track, .diva-component-DIVA_PRODUCT_ONBOARDING .darkmode ::-webkit-scrollbar-track, .diva-component-DIVA_DATA_ENGINE .darkmode ::-webkit-scrollbar-track {\n /* the planner's layouts give every scrollbar a background, which would fill the transparent border */\n background: none;\n box-shadow: inset 0 0 10px 10px #021129;\n border: solid 3px transparent;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .darkmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_PRODUCT_ONBOARDING .darkmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_DATA_ENGINE .darkmode ::-webkit-scrollbar-thumb {\n background: none;\n box-shadow: inset 0 0 10px 10px rgb(130, 130, 130);\n border: solid 3px transparent;\n border-radius: 10px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .lightmode ::-webkit-scrollbar-track, .diva-component-DIVA_PRODUCT_ONBOARDING .lightmode ::-webkit-scrollbar-track, .diva-component-DIVA_DATA_ENGINE .lightmode ::-webkit-scrollbar-track {\n background: none;\n box-shadow: inset 0 0 10px 10px #ffffff;\n border: solid 3px transparent;\n}\n.diva-component-DIVA_BACKOFFICE_NEW .lightmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_PRODUCT_ONBOARDING .lightmode ::-webkit-scrollbar-thumb, .diva-component-DIVA_DATA_ENGINE .lightmode ::-webkit-scrollbar-thumb {\n background: none;\n box-shadow: inset 0 0 10px 10px #bdbdbd;\n border: solid 3px transparent;\n border-radius: 10px;\n}\n";
50392
+ styleInject(css_248z$L);
49679
50393
 
49680
50394
  function ownKeys$1y(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
49681
50395
  function _objectSpread$1y(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1y(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1y(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -50824,8 +51538,8 @@ var Modal$1 = observer(Modal);
50824
51538
 
50825
51539
  var snow = "snow-14T01";
50826
51540
  var sun = "sun-ijIPS";
50827
- var css_248z$J = ".snow-14T01 {\n display: none;\n position: fixed;\n font-size: 1.5rem;\n top: -1vh;\n transform: translateY(0);\n animation: fall-XG-Wo 3s linear forwards;\n background: center / contain no-repeat url(\"data:image/svg+xml,%3Csvg version%3D%221.1%22 id%3D%22Layer_1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 x%3D%220px%22 y%3D%220px%22%09 viewBox%3D%220 0 512 512%22 style%3D%22enable-background%3Anew 0 0 512 512%3B%22 xml%3Aspace%3D%22preserve%22%3E%3Cpath style%3D%22fill%3A%2399DDFF%3B%22 d%3D%22M512%2C256c0-9.217-7.479-16.696-16.696-16.696h-26.478l32.718-32.718%09c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-56.327%2C56.327h-83.813c-2.168-10.642-6.39-20.536-12.197-29.295%09l59.303-59.303h79.663c9.217%2C0%2C16.696-7.479%2C16.696-16.696s-7.479-16.696-16.696-16.696h-46.271l18.728-18.728%09c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-18.727%2C18.728V47.435c0-9.217-7.479-16.696-16.696-16.696%09c-9.217%2C0-16.696%2C7.479-16.696%2C16.696v79.663L301.991%2C186.4c-8.759-5.807-18.652-10.027-29.295-12.197V90.391l56.326-56.326%09c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-32.717%2C32.717V16.696C272.696%2C7.479%2C265.217%2C0%2C256%2C0%09s-16.696%2C7.479-16.696%2C16.696v26.478l-32.718-32.717c-6.521-6.521-17.087-6.521-23.609%2C0s-6.521%2C17.087%2C0%2C23.609l56.327%2C56.326%09v83.813c-10.642%2C2.168-20.536%2C6.39-29.295%2C12.197l-59.303-59.303V47.435c0-9.217-7.479-16.696-16.696-16.696%09s-16.696%2C7.479-16.696%2C16.696v46.271L98.587%2C74.978c-6.521-6.521-17.087-6.521-23.609%2C0s-6.521%2C17.087%2C0%2C23.609l18.728%2C18.728%09H47.435c-9.217%2C0-16.696%2C7.479-16.696%2C16.696c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696h79.663l59.303%2C59.303%09c-5.807%2C8.759-10.027%2C18.652-12.197%2C29.295H90.391l-56.326-56.326c-6.521-6.521-17.087-6.521-23.609%2C0s-6.521%2C17.087%2C0%2C23.609%09l32.717%2C32.717H16.696C7.479%2C239.304%2C0%2C246.783%2C0%2C256s7.479%2C16.696%2C16.696%2C16.696h26.478l-32.717%2C32.718%09c-6.521%2C6.521-6.521%2C17.087%2C0%2C23.609c3.26%2C3.26%2C7.532%2C4.891%2C11.804%2C4.891s8.544-1.631%2C11.804-4.892l56.327-56.326h83.813%09c2.168%2C10.642%2C6.39%2C20.536%2C12.197%2C29.295l-59.303%2C59.303H47.435c-9.217%2C0-16.696%2C7.479-16.696%2C16.696%09c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696h46.271l-18.728%2C18.728c-6.521%2C6.521-6.521%2C17.087%2C0%2C23.609%09c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892l18.728-18.728v46.271c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696%09s16.696-7.479%2C16.696-16.696v-79.663l59.303-59.303c8.759%2C5.807%2C18.652%2C10.027%2C29.295%2C12.197v83.813l-56.326%2C56.326%09c-6.521%2C6.521-6.521%2C17.087%2C0%2C23.609s17.087%2C6.521%2C23.609%2C0l32.718-32.718v26.478c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696%09s16.696-7.479%2C16.696-16.696v-26.478l32.718%2C32.718c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892%09c6.521-6.521%2C6.521-17.087%2C0-23.609l-56.326-56.327v-83.813c10.642-2.168%2C20.536-6.39%2C29.295-12.197l59.303%2C59.303v79.663%09c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696c9.217%2C0%2C16.696-7.479%2C16.696-16.696v-46.271l18.728%2C18.728%09c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892c6.521-6.521%2C6.521-17.087%2C0-23.609l-18.727-18.727h46.271%09c9.217%2C0%2C16.696-7.479%2C16.696-16.696c0-9.217-7.479-16.696-16.696-16.696h-79.663L325.6%2C301.991%09c5.807-8.759%2C10.027-18.652%2C12.197-29.295h83.813l56.326%2C56.326c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892%09c6.521-6.521%2C6.521-17.087%2C0-23.609l-32.717-32.717h26.478C504.521%2C272.696%2C512%2C265.217%2C512%2C256z M256%2C306.087%09c-27.619%2C0-50.087-22.468-50.087-50.087s22.468-50.087%2C50.087-50.087s50.087%2C22.468%2C50.087%2C50.087S283.619%2C306.087%2C256%2C306.087z%22%2F%3E%3Cpath style%3D%22fill%3A%2373C0E6%3B%22 d%3D%22M306.087%2C256c0%2C27.619-22.468%2C50.087-50.087%2C50.087V512c9.217%2C0%2C16.696-7.479%2C16.696-16.696v-26.478%09l32.718%2C32.718c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892c6.521-6.521%2C6.521-17.087%2C0-23.609l-56.326-56.327%09v-83.813c10.642-2.168%2C20.536-6.39%2C29.295-12.197l59.303%2C59.303v79.663c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696%09c9.217%2C0%2C16.696-7.479%2C16.696-16.696v-46.271l18.728%2C18.728c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892%09c6.521-6.521%2C6.521-17.087%2C0-23.609l-18.727-18.727h46.271c9.217%2C0%2C16.696-7.479%2C16.696-16.696c0-9.217-7.479-16.696-16.696-16.696%09h-79.663L325.6%2C301.991c5.807-8.759%2C10.027-18.652%2C12.197-29.295h83.813l56.326%2C56.326c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892%09s8.544-1.631%2C11.804-4.892c6.521-6.521%2C6.521-17.087%2C0-23.609l-32.717-32.717h26.478c9.217%2C0%2C16.696-7.479%2C16.696-16.696%09s-7.479-16.696-16.696-16.696h-26.478l32.718-32.718c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-56.327%2C56.327%09h-83.813c-2.168-10.642-6.39-20.536-12.197-29.295l59.303-59.303h79.663c9.217%2C0%2C16.696-7.479%2C16.696-16.696%09s-7.479-16.696-16.696-16.696h-46.271l18.728-18.728c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-18.727%2C18.728%09V47.435c0-9.217-7.479-16.696-16.696-16.696c-9.217%2C0-16.696%2C7.479-16.696%2C16.696v79.663L301.991%2C186.4%09c-8.759-5.807-18.652-10.027-29.295-12.197V90.391l56.326-56.326c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0%09l-32.717%2C32.717V16.696C272.696%2C7.479%2C265.217%2C0%2C256%2C0v205.913C283.619%2C205.913%2C306.087%2C228.381%2C306.087%2C256z%22%2F%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E\");\n width: 20px;\n height: 20px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .snow-14T01 {\n display: block;\n}\n\n@keyframes fall-XG-Wo {\n from {\n transform: translateY(0vh) translateX(-10vw);\n }\n to {\n transform: translateY(105vh) translateX(10vw);\n }\n}\n\n.sun-ijIPS {\n color: rgba(255, 255, 255, 0.65);\n line-height: 40px;\n margin-left: 10px;\n cursor: pointer;\n}\n";
50828
- styleInject(css_248z$J);
51541
+ var css_248z$K = ".snow-14T01 {\n display: none;\n position: fixed;\n font-size: 1.5rem;\n top: -1vh;\n transform: translateY(0);\n animation: fall-XG-Wo 3s linear forwards;\n background: center / contain no-repeat url(\"data:image/svg+xml,%3Csvg version%3D%221.1%22 id%3D%22Layer_1%22 xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22 x%3D%220px%22 y%3D%220px%22%09 viewBox%3D%220 0 512 512%22 style%3D%22enable-background%3Anew 0 0 512 512%3B%22 xml%3Aspace%3D%22preserve%22%3E%3Cpath style%3D%22fill%3A%2399DDFF%3B%22 d%3D%22M512%2C256c0-9.217-7.479-16.696-16.696-16.696h-26.478l32.718-32.718%09c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-56.327%2C56.327h-83.813c-2.168-10.642-6.39-20.536-12.197-29.295%09l59.303-59.303h79.663c9.217%2C0%2C16.696-7.479%2C16.696-16.696s-7.479-16.696-16.696-16.696h-46.271l18.728-18.728%09c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-18.727%2C18.728V47.435c0-9.217-7.479-16.696-16.696-16.696%09c-9.217%2C0-16.696%2C7.479-16.696%2C16.696v79.663L301.991%2C186.4c-8.759-5.807-18.652-10.027-29.295-12.197V90.391l56.326-56.326%09c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-32.717%2C32.717V16.696C272.696%2C7.479%2C265.217%2C0%2C256%2C0%09s-16.696%2C7.479-16.696%2C16.696v26.478l-32.718-32.717c-6.521-6.521-17.087-6.521-23.609%2C0s-6.521%2C17.087%2C0%2C23.609l56.327%2C56.326%09v83.813c-10.642%2C2.168-20.536%2C6.39-29.295%2C12.197l-59.303-59.303V47.435c0-9.217-7.479-16.696-16.696-16.696%09s-16.696%2C7.479-16.696%2C16.696v46.271L98.587%2C74.978c-6.521-6.521-17.087-6.521-23.609%2C0s-6.521%2C17.087%2C0%2C23.609l18.728%2C18.728%09H47.435c-9.217%2C0-16.696%2C7.479-16.696%2C16.696c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696h79.663l59.303%2C59.303%09c-5.807%2C8.759-10.027%2C18.652-12.197%2C29.295H90.391l-56.326-56.326c-6.521-6.521-17.087-6.521-23.609%2C0s-6.521%2C17.087%2C0%2C23.609%09l32.717%2C32.717H16.696C7.479%2C239.304%2C0%2C246.783%2C0%2C256s7.479%2C16.696%2C16.696%2C16.696h26.478l-32.717%2C32.718%09c-6.521%2C6.521-6.521%2C17.087%2C0%2C23.609c3.26%2C3.26%2C7.532%2C4.891%2C11.804%2C4.891s8.544-1.631%2C11.804-4.892l56.327-56.326h83.813%09c2.168%2C10.642%2C6.39%2C20.536%2C12.197%2C29.295l-59.303%2C59.303H47.435c-9.217%2C0-16.696%2C7.479-16.696%2C16.696%09c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696h46.271l-18.728%2C18.728c-6.521%2C6.521-6.521%2C17.087%2C0%2C23.609%09c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892l18.728-18.728v46.271c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696%09s16.696-7.479%2C16.696-16.696v-79.663l59.303-59.303c8.759%2C5.807%2C18.652%2C10.027%2C29.295%2C12.197v83.813l-56.326%2C56.326%09c-6.521%2C6.521-6.521%2C17.087%2C0%2C23.609s17.087%2C6.521%2C23.609%2C0l32.718-32.718v26.478c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696%09s16.696-7.479%2C16.696-16.696v-26.478l32.718%2C32.718c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892%09c6.521-6.521%2C6.521-17.087%2C0-23.609l-56.326-56.327v-83.813c10.642-2.168%2C20.536-6.39%2C29.295-12.197l59.303%2C59.303v79.663%09c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696c9.217%2C0%2C16.696-7.479%2C16.696-16.696v-46.271l18.728%2C18.728%09c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892c6.521-6.521%2C6.521-17.087%2C0-23.609l-18.727-18.727h46.271%09c9.217%2C0%2C16.696-7.479%2C16.696-16.696c0-9.217-7.479-16.696-16.696-16.696h-79.663L325.6%2C301.991%09c5.807-8.759%2C10.027-18.652%2C12.197-29.295h83.813l56.326%2C56.326c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892%09c6.521-6.521%2C6.521-17.087%2C0-23.609l-32.717-32.717h26.478C504.521%2C272.696%2C512%2C265.217%2C512%2C256z M256%2C306.087%09c-27.619%2C0-50.087-22.468-50.087-50.087s22.468-50.087%2C50.087-50.087s50.087%2C22.468%2C50.087%2C50.087S283.619%2C306.087%2C256%2C306.087z%22%2F%3E%3Cpath style%3D%22fill%3A%2373C0E6%3B%22 d%3D%22M306.087%2C256c0%2C27.619-22.468%2C50.087-50.087%2C50.087V512c9.217%2C0%2C16.696-7.479%2C16.696-16.696v-26.478%09l32.718%2C32.718c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892c6.521-6.521%2C6.521-17.087%2C0-23.609l-56.326-56.327%09v-83.813c10.642-2.168%2C20.536-6.39%2C29.295-12.197l59.303%2C59.303v79.663c0%2C9.217%2C7.479%2C16.696%2C16.696%2C16.696%09c9.217%2C0%2C16.696-7.479%2C16.696-16.696v-46.271l18.728%2C18.728c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892s8.544-1.631%2C11.804-4.892%09c6.521-6.521%2C6.521-17.087%2C0-23.609l-18.727-18.727h46.271c9.217%2C0%2C16.696-7.479%2C16.696-16.696c0-9.217-7.479-16.696-16.696-16.696%09h-79.663L325.6%2C301.991c5.807-8.759%2C10.027-18.652%2C12.197-29.295h83.813l56.326%2C56.326c3.261%2C3.261%2C7.533%2C4.892%2C11.804%2C4.892%09s8.544-1.631%2C11.804-4.892c6.521-6.521%2C6.521-17.087%2C0-23.609l-32.717-32.717h26.478c9.217%2C0%2C16.696-7.479%2C16.696-16.696%09s-7.479-16.696-16.696-16.696h-26.478l32.718-32.718c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-56.327%2C56.327%09h-83.813c-2.168-10.642-6.39-20.536-12.197-29.295l59.303-59.303h79.663c9.217%2C0%2C16.696-7.479%2C16.696-16.696%09s-7.479-16.696-16.696-16.696h-46.271l18.728-18.728c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0l-18.727%2C18.728%09V47.435c0-9.217-7.479-16.696-16.696-16.696c-9.217%2C0-16.696%2C7.479-16.696%2C16.696v79.663L301.991%2C186.4%09c-8.759-5.807-18.652-10.027-29.295-12.197V90.391l56.326-56.326c6.521-6.521%2C6.521-17.087%2C0-23.609s-17.087-6.521-23.609%2C0%09l-32.717%2C32.717V16.696C272.696%2C7.479%2C265.217%2C0%2C256%2C0v205.913C283.619%2C205.913%2C306.087%2C228.381%2C306.087%2C256z%22%2F%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3Cg%3E%3C%2Fg%3E%3C%2Fsvg%3E\");\n width: 20px;\n height: 20px;\n}\n\n.diva-component-DIVA_BACKOFFICE_NEW .snow-14T01 {\n display: block;\n}\n\n@keyframes fall-XG-Wo {\n from {\n transform: translateY(0vh) translateX(-10vw);\n }\n to {\n transform: translateY(105vh) translateX(10vw);\n }\n}\n\n.sun-ijIPS {\n color: rgba(255, 255, 255, 0.65);\n line-height: 40px;\n margin-left: 10px;\n cursor: pointer;\n}\n";
51542
+ styleInject(css_248z$K);
50829
51543
 
50830
51544
  var SnowAnimation = function SnowAnimation(props) {
50831
51545
  var _useState = useState(),
@@ -50983,7 +51697,7 @@ var MenuWrapper = function MenuWrapper() {
50983
51697
  };
50984
51698
  var Navigation$4 = observer(MenuWrapper);
50985
51699
 
50986
- var container$4 = "container-BucHG";
51700
+ var container$5 = "container-BucHG";
50987
51701
  var right = "right--XETU";
50988
51702
  var unpinnedRight = "unpinned-right-tbnNb";
50989
51703
  var draghandle = "draghandle-f5b0N";
@@ -51004,8 +51718,8 @@ var statusDotError = "status-dot-error-ts1xq";
51004
51718
  var statusDotWarn = "status-dot-warn-MoINF";
51005
51719
  var statusDotConnecting = "status-dot-connecting-EttkN";
51006
51720
  var statusWorkspace = "status-workspace-gR0bt";
51007
- var css_248z$I = ".container-BucHG {\n height: 100%;\n width: 100%;\n position: relative;\n z-index: 1001;\n overflow: auto;\n}\n\n.right--XETU .container-BucHG {\n z-index: 1003;\n}\n\n.unpinned-right-tbnNb.container-BucHG {\n right: 37px;\n position: absolute;\n}\n\n.draghandle-f5b0N {\n position: absolute;\n top: 0px;\n background-color: rgba(128, 128, 128, 0.3);\n z-index: 1002;\n}\n\n.right--XETU .draghandle-f5b0N {\n height: 100%;\n width: 2px;\n left: -1px;\n cursor: ew-resize;\n z-index: 1004;\n}\n\n.bottom-cqyfS .draghandle-f5b0N {\n height: 2px;\n width: 100%;\n cursor: ns-resize;\n}\n\n.mid-handle--qh50 {\n position: absolute;\n background-color: rgba(128, 128, 128, 0.3);\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.right--XETU .mid-handle--qh50 {\n width: 5px;\n height: 32px;\n border-left: 2px solid grey;\n border-right: 2px solid grey;\n}\n\n.bottom-cqyfS .mid-handle--qh50 {\n height: 5px;\n width: 32px;\n border-top: 2px solid gray;\n border-bottom: 2px solid gray;\n}\n\n.tools-selector-BHV3Z {\n z-index: 1000;\n display: flex;\n position: relative;\n align-items: center;\n background-color: #f5f5f5;\n}\n\n.darkmode .tools-selector-BHV3Z {\n background-color: #001529;\n color: rgba(255, 255, 255, 0.85);\n}\n\n.right--XETU .tools-selector-BHV3Z {\n width: 36px;\n height: 100%;\n padding-top: 16px;\n flex-direction: column;\n}\n\n.bottom-cqyfS .tools-selector-BHV3Z {\n width: 100%;\n height: 36px;\n padding-top: 0;\n flex-direction: row;\n}\n\n.tool-item-KyKgQ {\n padding: 10px;\n cursor: pointer;\n position: relative;\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n.tool-item-KyKgQ.disabled-6aIG9 {\n opacity: 0.5;\n cursor: default;\n}\n\n.right--XETU .tool-item-KyKgQ {\n writing-mode: vertical-lr;\n text-orientation: mixed;\n}\n\n.tool-item-KyKgQ::after {\n content: '';\n position: absolute;\n background-color: #0088ff;\n transition: all ease-in-out 0.2s;\n}\n\n.right--XETU .tool-item-KyKgQ::after {\n width: 3px;\n height: 0px;\n left: 1px;\n bottom: 50%;\n}\n\n.right--XETU .tool-item-KyKgQ:not(.disabled-6aIG9):hover::after,\n.right--XETU .sel-iUm8X::after {\n height: 100%;\n bottom: 0;\n}\n\n.bottom-cqyfS .tool-item-KyKgQ::after {\n width: 0px;\n height: 3px;\n bottom: 1px;\n left: 50%;\n}\n\n.bottom-cqyfS .tool-item-KyKgQ:not(.disabled-6aIG9):hover::after,\n.bottom-cqyfS .sel-iUm8X::after {\n width: 100%;\n left: 0;\n}\n\n.button-K-0KR {\n width: 40px;\n justify-content: center;\n}\n\n.toolbar-layout-DUuBn {\n height: 100%;\n width: 100%;\n}\n\n.toolbar-content-GxyU6 {\n height: 100%;\n width: 100%;\n padding: 32px;\n display: flex;\n flex-direction: column;\n}\n\n.spinner-root-4UgwL {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n\n.spinner-container-4jAGD {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n/*\n * Connection indicator on a tool's rail item — currently the DIVA agent's MCP bridge.\n * Colours mirror the dot inside the agent's own bridge panel (diva-agent/ui/bridge.module.css)\n * so the rail and the panel never disagree; 'connecting' reuses the neutral colour and pulses\n * instead of introducing a fourth one.\n */\n.status-dot-e5gDK {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background-color: #a0aec0;\n flex-shrink: 0;\n}\n\n.status-dot-connected-jGXu4 {\n background-color: #38a169;\n}\n\n.status-dot-error-ts1xq {\n background-color: #e53e3e;\n}\n\n.status-dot-warn-MoINF {\n background-color: #dd6b20;\n}\n\n.status-dot-connecting-EttkN {\n animation: status-dot-pulse-rhnZb 1.2s ease-in-out infinite;\n}\n\n/* Workspace label of this tab, shown only while the user has several tabs docked (see BridgeStatus). */\n.status-workspace-gR0bt {\n /* The right rail is vertical-lr, which would rotate the letter and swap the padding axes. */\n writing-mode: horizontal-tb;\n font-size: 10px;\n font-weight: 700;\n line-height: 1;\n padding: 2px 4px;\n min-width: 1.25em;\n text-align: center;\n border-radius: 3px;\n background-color: #edf2f7;\n color: #2d3748;\n flex-shrink: 0;\n}\n\n@keyframes status-dot-pulse-rhnZb {\n 0%,\n 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.3;\n }\n}\n\n.darkmode .status-dot-e5gDK {\n background-color: #4a5568;\n}\n\n.darkmode .status-dot-connected-jGXu4 {\n background-color: #48bb78;\n}\n\n.darkmode .status-dot-error-ts1xq {\n background-color: #fc8181;\n}\n\n.darkmode .status-workspace-gR0bt {\n background-color: #4a5568;\n color: #e2e8f0;\n}\n";
51008
- styleInject(css_248z$I);
51721
+ var css_248z$J = ".container-BucHG {\n height: 100%;\n width: 100%;\n position: relative;\n z-index: 1001;\n overflow: auto;\n}\n\n.right--XETU .container-BucHG {\n z-index: 1003;\n}\n\n.unpinned-right-tbnNb.container-BucHG {\n right: 37px;\n position: absolute;\n}\n\n.draghandle-f5b0N {\n position: absolute;\n top: 0px;\n background-color: rgba(128, 128, 128, 0.3);\n z-index: 1002;\n}\n\n.right--XETU .draghandle-f5b0N {\n height: 100%;\n width: 2px;\n left: -1px;\n cursor: ew-resize;\n z-index: 1004;\n}\n\n.bottom-cqyfS .draghandle-f5b0N {\n height: 2px;\n width: 100%;\n cursor: ns-resize;\n}\n\n.mid-handle--qh50 {\n position: absolute;\n background-color: rgba(128, 128, 128, 0.3);\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n\n.right--XETU .mid-handle--qh50 {\n width: 5px;\n height: 32px;\n border-left: 2px solid grey;\n border-right: 2px solid grey;\n}\n\n.bottom-cqyfS .mid-handle--qh50 {\n height: 5px;\n width: 32px;\n border-top: 2px solid gray;\n border-bottom: 2px solid gray;\n}\n\n.tools-selector-BHV3Z {\n z-index: 1000;\n display: flex;\n position: relative;\n align-items: center;\n background-color: #f5f5f5;\n}\n\n.darkmode .tools-selector-BHV3Z {\n background-color: #001529;\n color: rgba(255, 255, 255, 0.85);\n}\n\n.right--XETU .tools-selector-BHV3Z {\n width: 36px;\n height: 100%;\n padding-top: 16px;\n flex-direction: column;\n}\n\n.bottom-cqyfS .tools-selector-BHV3Z {\n width: 100%;\n height: 36px;\n padding-top: 0;\n flex-direction: row;\n}\n\n.tool-item-KyKgQ {\n padding: 10px;\n cursor: pointer;\n position: relative;\n display: flex;\n align-items: center;\n gap: 10px;\n}\n\n.tool-item-KyKgQ.disabled-6aIG9 {\n opacity: 0.5;\n cursor: default;\n}\n\n.right--XETU .tool-item-KyKgQ {\n writing-mode: vertical-lr;\n text-orientation: mixed;\n}\n\n.tool-item-KyKgQ::after {\n content: '';\n position: absolute;\n background-color: #0088ff;\n transition: all ease-in-out 0.2s;\n}\n\n.right--XETU .tool-item-KyKgQ::after {\n width: 3px;\n height: 0px;\n left: 1px;\n bottom: 50%;\n}\n\n.right--XETU .tool-item-KyKgQ:not(.disabled-6aIG9):hover::after,\n.right--XETU .sel-iUm8X::after {\n height: 100%;\n bottom: 0;\n}\n\n.bottom-cqyfS .tool-item-KyKgQ::after {\n width: 0px;\n height: 3px;\n bottom: 1px;\n left: 50%;\n}\n\n.bottom-cqyfS .tool-item-KyKgQ:not(.disabled-6aIG9):hover::after,\n.bottom-cqyfS .sel-iUm8X::after {\n width: 100%;\n left: 0;\n}\n\n.button-K-0KR {\n width: 40px;\n justify-content: center;\n}\n\n.toolbar-layout-DUuBn {\n height: 100%;\n width: 100%;\n}\n\n.toolbar-content-GxyU6 {\n height: 100%;\n width: 100%;\n padding: 32px;\n display: flex;\n flex-direction: column;\n}\n\n.spinner-root-4UgwL {\n flex: 1;\n min-height: 0;\n display: flex;\n flex-direction: column;\n}\n\n.spinner-container-4jAGD {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n}\n\n/*\n * Connection indicator on a tool's rail item — currently the DIVA agent's MCP bridge.\n * Colours mirror the dot inside the agent's own bridge panel (diva-agent/ui/bridge.module.css)\n * so the rail and the panel never disagree; 'connecting' reuses the neutral colour and pulses\n * instead of introducing a fourth one.\n */\n.status-dot-e5gDK {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background-color: #a0aec0;\n flex-shrink: 0;\n}\n\n.status-dot-connected-jGXu4 {\n background-color: #38a169;\n}\n\n.status-dot-error-ts1xq {\n background-color: #e53e3e;\n}\n\n.status-dot-warn-MoINF {\n background-color: #dd6b20;\n}\n\n.status-dot-connecting-EttkN {\n animation: status-dot-pulse-rhnZb 1.2s ease-in-out infinite;\n}\n\n/* Workspace label of this tab, shown only while the user has several tabs docked (see BridgeStatus). */\n.status-workspace-gR0bt {\n /* The right rail is vertical-lr, which would rotate the letter and swap the padding axes. */\n writing-mode: horizontal-tb;\n font-size: 10px;\n font-weight: 700;\n line-height: 1;\n padding: 2px 4px;\n min-width: 1.25em;\n text-align: center;\n border-radius: 3px;\n background-color: #edf2f7;\n color: #2d3748;\n flex-shrink: 0;\n}\n\n@keyframes status-dot-pulse-rhnZb {\n 0%,\n 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.3;\n }\n}\n\n.darkmode .status-dot-e5gDK {\n background-color: #4a5568;\n}\n\n.darkmode .status-dot-connected-jGXu4 {\n background-color: #48bb78;\n}\n\n.darkmode .status-dot-error-ts1xq {\n background-color: #fc8181;\n}\n\n.darkmode .status-workspace-gR0bt {\n background-color: #4a5568;\n color: #e2e8f0;\n}\n";
51722
+ styleInject(css_248z$J);
51009
51723
 
51010
51724
  function _createForOfIteratorHelper$F(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray$F(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
51011
51725
  function _unsupportedIterableToArray$F(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray$F(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray$F(r, a) : void 0; } }
@@ -51336,9 +52050,9 @@ var FallbackComponent = function FallbackComponent(_ref2) {
51336
52050
  });
51337
52051
  };
51338
52052
 
51339
- var container$3 = "container-babS2";
51340
- var css_248z$H = ".container-babS2 {\n background: white;\n color: black;\n border-radius: 5px;\n border: 1px solid #d9d9d9;\n position: relative;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: auto;\n}\n\n.darkmode .container-babS2 {\n border-color: #424242;\n}\n";
51341
- styleInject(css_248z$H);
52053
+ var container$4 = "container-babS2";
52054
+ var css_248z$I = ".container-babS2 {\n background: white;\n color: black;\n border-radius: 5px;\n border: 1px solid #d9d9d9;\n position: relative;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: auto;\n}\n\n.darkmode .container-babS2 {\n border-color: #424242;\n}\n";
52055
+ styleInject(css_248z$I);
51342
52056
 
51343
52057
  var InformationWindow = function InformationWindow(_ref) {
51344
52058
  var _tool$parameters;
@@ -51353,7 +52067,7 @@ var InformationWindow = function InformationWindow(_ref) {
51353
52067
  errorCode: "BACKO_0004",
51354
52068
  addToErrorLog: codex,
51355
52069
  children: /*#__PURE__*/jsx("div", {
51356
- className: container$3,
52070
+ className: container$4,
51357
52071
  children: /*#__PURE__*/jsx(ContentItemComponent, {
51358
52072
  contentItemCodex: codex
51359
52073
  })
@@ -51417,14 +52131,14 @@ var getTranslation = function getTranslation(text, lang) {
51417
52131
  };
51418
52132
 
51419
52133
  var wrapper$6 = "wrapper-FKQw4";
51420
- var container$2 = "container-Xbv0B";
52134
+ var container$3 = "container-Xbv0B";
51421
52135
  var lightPreview = "light-preview-XqPR6";
51422
52136
  var darkPreview = "dark-preview-sW25g";
51423
52137
  var bottomBar = "bottom-bar-cm7Bp";
51424
52138
  var controls = "controls-xA5C-";
51425
52139
  var footer = "footer-tcxes";
51426
- var css_248z$G = ".wrapper-FKQw4 {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.container-Xbv0B {\n border-radius: 5px;\n border: 1px solid #d9d9d9;\n position: relative;\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: auto;\n}\n\n.light-preview-XqPR6 {\n background: white;\n color: black;\n}\n\n.dark-preview-sW25g {\n background: #141414;\n color: rgba(255, 255, 255, 0.85);\n}\n\n.darkmode .container-Xbv0B {\n border-color: #424242;\n}\n\n/* The preview controls on the left, a host's footer on the right - one bar, the height of a button */\n.bottom-bar-cm7Bp {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n min-height: 32px;\n padding-top: 12px;\n}\n\n.controls-xA5C-,\n.footer-tcxes {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n";
51427
- styleInject(css_248z$G);
52140
+ var css_248z$H = ".wrapper-FKQw4 {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.container-Xbv0B {\n border-radius: 5px;\n border: 1px solid #d9d9d9;\n position: relative;\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n overflow: auto;\n}\n\n.light-preview-XqPR6 {\n background: white;\n color: black;\n}\n\n.dark-preview-sW25g {\n background: #141414;\n color: rgba(255, 255, 255, 0.85);\n}\n\n.darkmode .container-Xbv0B {\n border-color: #424242;\n}\n\n/* The preview controls on the left, a host's footer on the right - one bar, the height of a button */\n.bottom-bar-cm7Bp {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n min-height: 32px;\n padding-top: 12px;\n}\n\n.controls-xA5C-,\n.footer-tcxes {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n";
52141
+ styleInject(css_248z$H);
51428
52142
 
51429
52143
  var WsyiwygContentItem = observer(function (_ref) {
51430
52144
  var _toolbar$previewTheme;
@@ -51449,7 +52163,7 @@ var WsyiwygContentItem = observer(function (_ref) {
51449
52163
  children: /*#__PURE__*/jsxs("div", {
51450
52164
  className: wrapper$6,
51451
52165
  children: [/*#__PURE__*/jsx("div", {
51452
- className: classNames(container$2, dark ? darkPreview : lightPreview),
52166
+ className: classNames(container$3, dark ? darkPreview : lightPreview),
51453
52167
  children: /*#__PURE__*/jsx(ConfigProvider, {
51454
52168
  theme: {
51455
52169
  algorithm: dark ? theme.darkAlgorithm : theme.defaultAlgorithm
@@ -51494,13 +52208,13 @@ var WsyiwygContentItem = observer(function (_ref) {
51494
52208
 
51495
52209
  var wrapper$5 = "wrapper-Q13-g";
51496
52210
  var confContainer = "conf-container-Sm5LL";
51497
- var css_248z$F = ".wrapper-Q13-g {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.conf-container-Sm5LL {\n padding-top: 10px;\n background: white;\n color: black;\n height: calc(100% - 40px);\n border-radius: 5px;\n border: 1px solid #d9d9d9;\n position: relative;\n overflow: hidden;\n}\n\n.darkmode .conf-container-Sm5LL {\n border-color: #424242;\n background: transparent;\n}\n";
51498
- styleInject(css_248z$F);
52211
+ var css_248z$G = ".wrapper-Q13-g {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.conf-container-Sm5LL {\n padding-top: 10px;\n background: white;\n color: black;\n height: calc(100% - 40px);\n border-radius: 5px;\n border: 1px solid #d9d9d9;\n position: relative;\n overflow: hidden;\n}\n\n.darkmode .conf-container-Sm5LL {\n border-color: #424242;\n background: transparent;\n}\n";
52212
+ styleInject(css_248z$G);
51499
52213
 
51500
52214
  var wrapper$4 = "wrapper-IcNC5";
51501
52215
  var select$2 = "select-jVMz-";
51502
- var css_248z$E = ".wrapper-IcNC5 {\n display: flex;\n gap: 16px;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n\n.select-jVMz- {\n z-index: 1000;\n flex: 1;\n max-width: calc(100% - 48px);\n}\n";
51503
- styleInject(css_248z$E);
52216
+ var css_248z$F = ".wrapper-IcNC5 {\n display: flex;\n gap: 16px;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n\n.select-jVMz- {\n z-index: 1000;\n flex: 1;\n max-width: calc(100% - 48px);\n}\n";
52217
+ styleInject(css_248z$F);
51504
52218
 
51505
52219
  function ownKeys$1v(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
51506
52220
  function _objectSpread$1v(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1v(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1v(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -52576,8 +53290,8 @@ function useWysiwyg(_ref) {
52576
53290
 
52577
53291
  var wrapper$3 = "wrapper-NYRLn";
52578
53292
  var select$1 = "select-K2SWc";
52579
- var css_248z$D = ".wrapper-NYRLn {\n display: flex;\n gap: 16px;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n\n.select-K2SWc {\n z-index: 1000;\n flex: 1;\n}\n";
52580
- styleInject(css_248z$D);
53293
+ var css_248z$E = ".wrapper-NYRLn {\n display: flex;\n gap: 16px;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n\n.select-K2SWc {\n z-index: 1000;\n flex: 1;\n}\n";
53294
+ styleInject(css_248z$E);
52581
53295
 
52582
53296
  var resolveSeriesName = function resolveSeriesName(names, language) {
52583
53297
  var _ref, _ref2, _names$language$toUpp;
@@ -52653,8 +53367,8 @@ var CatalogSelection$1 = observer(CatalogSelection);
52653
53367
 
52654
53368
  var wrapper$2 = "wrapper-QpeRc";
52655
53369
  var select = "select-irxxn";
52656
- var css_248z$C = ".wrapper-QpeRc {\n display: flex;\n gap: 16px;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n\n.select-irxxn {\n z-index: 1000;\n flex: 1;\n max-width: calc(100% - 48px);\n}\n";
52657
- styleInject(css_248z$C);
53370
+ var css_248z$D = ".wrapper-QpeRc {\n display: flex;\n gap: 16px;\n justify-content: space-between;\n margin-bottom: 8px;\n}\n\n.select-irxxn {\n z-index: 1000;\n flex: 1;\n max-width: calc(100% - 48px);\n}\n";
53371
+ styleInject(css_248z$D);
52658
53372
 
52659
53373
  var LanguageSelection = function LanguageSelection(_ref) {
52660
53374
  var _ref$state = _ref.state,
@@ -52696,8 +53410,8 @@ var LanguageSelection = function LanguageSelection(_ref) {
52696
53410
  var LanguageSelection$1 = observer(LanguageSelection);
52697
53411
 
52698
53412
  var notice$1 = "notice-9Niqp";
52699
- var css_248z$B = ".notice-9Niqp {\n position: absolute;\n top: 4px;\n right: 8px;\n z-index: 10;\n padding: 2px 8px;\n border-radius: 10px;\n font-size: 12px;\n background: rgba(0, 0, 0, 0.06);\n color: rgba(0, 0, 0, 0.65);\n cursor: pointer;\n}\n\n.darkmode .notice-9Niqp {\n background: rgba(255, 255, 255, 0.12);\n color: rgba(255, 255, 255, 0.75);\n}\n";
52700
- styleInject(css_248z$B);
53413
+ var css_248z$C = ".notice-9Niqp {\n position: absolute;\n top: 4px;\n right: 8px;\n z-index: 10;\n padding: 2px 8px;\n border-radius: 10px;\n font-size: 12px;\n background: rgba(0, 0, 0, 0.06);\n color: rgba(0, 0, 0, 0.65);\n cursor: pointer;\n}\n\n.darkmode .notice-9Niqp {\n background: rgba(255, 255, 255, 0.12);\n color: rgba(255, 255, 255, 0.75);\n}\n";
53414
+ styleInject(css_248z$C);
52701
53415
 
52702
53416
  /**
52703
53417
  * The configurator's side of refresh-on-use: coming into view with an instance a committed write left stale reloads it;
@@ -54377,8 +55091,8 @@ var refThumbSelected = "refThumbSelected-UnCbx";
54377
55091
  var refThumbRemove = "refThumbRemove-HlsBp";
54378
55092
  var refOrderBadge = "refOrderBadge-r-h2t";
54379
55093
  var fullscreenGallerySwiper = "fullscreenGallerySwiper-y-BWH";
54380
- var css_248z$A = ".root-faX1F {\n display: flex;\n flex-direction: column;\n gap: 0;\n padding: 0;\n flex: 1 1 0;\n height: 100%;\n min-height: 200px;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n/* ---- Three-pane chat layout ---- */\n.layout-M1UuF {\n display: flex;\n flex-direction: row;\n flex: 1;\n min-height: 0;\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n.center-viyyO {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n min-height: 0;\n position: relative;\n}\n\n.centerDropActive-Oe7lQ {\n outline: 2px dashed #1677ff;\n outline: 2px dashed var(--ant-color-primary, #1677ff);\n outline-offset: -4px;\n}\n\n.centerDropHint-ynn96 {\n position: absolute;\n top: 12px;\n right: 12px;\n bottom: 12px;\n left: 12px;\n border: 2px dashed #1677ff;\n border: 2px dashed var(--ant-color-primary, #1677ff);\n background: color-mix(in srgb, #e6f4ff 72%, transparent);\n background: color-mix(in srgb, var(--ant-color-primary-bg, #e6f4ff) 72%, transparent);\n color: #1677ff;\n color: var(--ant-color-primary, #1677ff);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n font-size: 14px;\n font-weight: 600;\n pointer-events: none;\n z-index: 2;\n}\n\n/* ---- Sidebar ---- */\n.sidebar-J4Fpm {\n display: flex;\n flex-direction: column;\n flex: 0 0 220px;\n width: 220px;\n min-width: 200px;\n height: 100%;\n min-height: 0;\n border-right: 1px solid #e8e8e8;\n border-right: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n background: #fafafa;\n background: var(--ant-color-fill-quaternary, #fafafa);\n box-sizing: border-box;\n overflow: hidden;\n transition: flex-basis 0.18s ease, width 0.18s ease, min-width 0.18s ease;\n}\n\n.sidebarCollapsed-7UyPq {\n flex: 0 0 36px;\n width: 36px;\n min-width: 36px;\n}\n\n.sidebarHeader-1mf-N {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 10px;\n border-bottom: 1px solid #e8e8e8;\n border-bottom: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n font-weight: 600;\n font-size: 12px;\n flex-shrink: 0;\n}\n\n.sidebarCollapsed-7UyPq .sidebarHeader-1mf-N {\n padding: 6px 4px;\n justify-content: center;\n}\n\n.sidebarTitle-9f1-a {\n flex: 1;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.sidebarActions-2aSHR {\n display: flex;\n gap: 4px;\n flex-shrink: 0;\n}\n\n.sidebarCollapsedActions-XIntB {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 6px;\n padding: 8px 0;\n}\n\n.sidebarList-hAXzv {\n list-style: none;\n margin: 0;\n padding: 4px 0;\n overflow-y: auto;\n overscroll-behavior: contain;\n flex: 1;\n min-height: 0;\n}\n\n.sidebarItem-A29X0 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n padding: 6px 10px;\n cursor: pointer;\n font-size: 12px;\n border-left: 2px solid transparent;\n}\n\n.sidebarItem-A29X0:hover {\n background: #f0f0f0;\n background: var(--ant-color-fill-tertiary, #f0f0f0);\n}\n\n.sidebarItemActive-Xro0V {\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n border-left-color: #1677ff;\n border-left-color: var(--ant-color-primary, #1677ff);\n}\n\n.sidebarItemTitle-8wWaj {\n flex: 1;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.sidebarItemActions-Nk8K4 {\n display: none;\n align-items: center;\n gap: 2px;\n flex-shrink: 0;\n}\n\n.sidebarItemRename-ogfZC {\n display: flex;\n align-items: center;\n gap: 2px;\n flex: 1;\n min-width: 0;\n}\n\n.sidebarItemRename-ogfZC .ant-input {\n flex: 1;\n min-width: 0;\n}\n\n.sidebarItem-A29X0:hover .sidebarItemActions-Nk8K4,\n.sidebarItemActive-Xro0V .sidebarItemActions-Nk8K4 {\n display: inline-flex;\n}\n\n.sidebarEmpty-FYvqJ {\n padding: 16px 12px;\n font-size: 12px;\n opacity: 0.65;\n text-align: center;\n}\n\n.sidebarFooter-iQ7Nf {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 8px 10px;\n border-top: 1px solid #e8e8e8;\n border-top: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n font-size: 11px;\n flex-shrink: 0;\n}\n\n.sidebarFooterLabel-vy635 {\n flex: 1;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n opacity: 0.7;\n}\n\n.sidebarFooterTotal-wl9LE {\n font-weight: 600;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n}\n\n.sidebarFooterCollapsed-m16Gv {\n justify-content: center;\n padding: 6px 2px;\n font-weight: 600;\n font-size: 10px;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n}\n\n/* ---- Chat thread ---- */\n.thread-8qRwV {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 12px;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n /* Prevent wheel-scroll chaining into the outer toolbar `.container` (overflow: auto), */\n /* which would otherwise drag the sidebar along when the chat is scrolled. */\n overscroll-behavior: contain;\n box-sizing: border-box;\n}\n\n.bubbleRow-UALRR {\n display: flex;\n width: 100%;\n}\n\n.bubbleRowUser-Aa3PM {\n justify-content: flex-end;\n}\n\n.bubbleRowAssistant-WCc4Y {\n justify-content: flex-start;\n}\n\n.bubble-bavdV {\n display: flex;\n flex-direction: column;\n gap: 6px;\n max-width: 88%;\n border-radius: 10px;\n overflow: hidden;\n box-sizing: border-box;\n}\n\n.bubbleUser-nxEcz {\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n border: 1px solid #91caff;\n border: 1px solid var(--ant-color-primary-border, #91caff);\n padding: 8px 10px;\n}\n\n.bubbleAssistant-ob-wr {\n background: #fafafa;\n background: var(--ant-color-fill-quaternary, #fafafa);\n border: 1px solid #e8e8e8;\n border: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n padding: 8px 10px;\n}\n\n.bubbleError-5wL8m {\n border-color: #ffccc7;\n border-color: var(--ant-color-error-border, #ffccc7);\n background: #fff2f0;\n background: var(--ant-color-error-bg, #fff2f0);\n}\n\n.bubblePrompt-qn6rA {\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 13px;\n line-height: 1.4;\n}\n\n.bubbleCaption-W79k0 {\n font-size: 11px;\n opacity: 0.78;\n display: flex;\n flex-wrap: wrap;\n gap: 0 2px;\n}\n\n.bubbleImageGrid-UVzXc {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n grid-gap: 6px;\n gap: 6px;\n}\n\n.bubbleImageItem-CGiZz {\n display: flex;\n flex-direction: column;\n gap: 2px;\n min-width: 0;\n}\n\n.bubbleImageCost-B2PYt {\n font-size: 10.5px;\n line-height: 1.2;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n opacity: 0.7;\n text-align: right;\n padding: 0 2px;\n}\n\n/* Pending/error rows use plain flex so spinner + label + cancel stay on one line. */\n.bubblePending-4Q3z9 {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 4px 4px;\n min-width: 0;\n}\n\n.bubblePendingLabel-fll-a {\n flex: 1 1 auto;\n min-width: 0;\n font-size: 13px;\n line-height: 1.3;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.bubbleErrorBody-LZG-A {\n padding: 8px 4px;\n font-size: 13px;\n line-height: 1.4;\n word-break: break-word;\n}\n\n.threadActions-fpeBf {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 0 8px;\n margin-top: 2px;\n}\n\n.emptyState-YK-o7 {\n margin: auto;\n padding: 24px;\n text-align: center;\n font-size: 13px;\n opacity: 0.6;\n}\n\n/* ---- Message images ---- */\n.messageImg-i3Rcg {\n display: block;\n width: 100%;\n padding: 0;\n margin: 0;\n border: 0;\n background: transparent;\n cursor: pointer;\n border-radius: 6px;\n overflow: hidden;\n}\n\n.messageImg-i3Rcg img {\n display: block;\n width: 100%;\n height: auto;\n -o-object-fit: cover;\n object-fit: cover;\n}\n\n/* ---- Composer ---- */\n.composer-dJW7x {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 8px 12px 12px;\n border-top: 1px solid #e8e8e8;\n border-top: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n position: relative;\n}\n\n.composerRefRow-XCqFN {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n/* Hint shown in the composer once the chat has produced its first image: every\n * follow-up automatically refines that image, so reference uploads are hidden. */\n.composerFollowUpHint-6VH61 {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 4px 6px;\n font-size: 11.5px;\n line-height: 1.4;\n color: rgba(0, 0, 0, 0.65);\n color: var(--ant-color-text-secondary, rgba(0, 0, 0, 0.65));\n background: #fafafa;\n background: var(--ant-color-fill-quaternary, #fafafa);\n border: 1px dashed #e8e8e8;\n border: 1px dashed var(--ant-color-border-secondary, #e8e8e8);\n border-radius: 6px;\n}\n\n.composerTextareaRow-1pKrk {\n display: block;\n width: 100%;\n}\n\n.composerTextareaRow-1pKrk .ant-input,\n.composerTextareaRow-1pKrk textarea {\n width: 100%;\n resize: vertical;\n}\n\n.composerToolbarRow-c05wd {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 6px;\n}\n\n.composerSpacer-kQKVK {\n flex: 1;\n}\n\n.hiddenFileInput-XdLJ3 {\n display: none;\n}\n\n.composerSettings-As0sF {\n display: flex;\n flex-direction: column;\n gap: 8px;\n min-width: 280px;\n}\n\n.composerSettingsRow-8v1xx {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n justify-content: space-between;\n}\n\n/* ---- Reference image thumbnails (composer) ---- */\n.refThumbRow-KlFhj {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n align-items: center;\n flex: 1;\n min-width: 0;\n}\n\n.refThumb-d--qS {\n position: relative;\n width: 44px;\n height: 44px;\n padding: 0;\n border: 2px solid transparent;\n border-radius: 6px;\n overflow: hidden;\n cursor: pointer;\n background: #f5f5f5;\n background: var(--ant-color-fill-secondary, #f5f5f5);\n flex-shrink: 0;\n}\n\n.refThumb-d--qS img {\n width: 100%;\n height: 100%;\n -o-object-fit: cover;\n object-fit: cover;\n display: block;\n}\n\n.refThumb-d--qS:hover {\n border-color: #91caff;\n border-color: var(--ant-color-primary-border-hover, #91caff);\n}\n\n.refThumbSelected-UnCbx {\n border-color: #1677ff;\n border-color: var(--ant-color-primary, #1677ff);\n box-shadow: 0 0 0 1px #1677ff;\n box-shadow: 0 0 0 1px var(--ant-color-primary, #1677ff);\n}\n\n.refThumbRemove-HlsBp {\n position: absolute;\n top: -6px;\n right: -6px;\n width: 16px;\n height: 16px;\n padding: 0;\n border-radius: 50%;\n border: 1px solid #d9d9d9;\n border: 1px solid var(--ant-color-border, #d9d9d9);\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n color: rgba(0, 0, 0, 0.65);\n color: var(--ant-color-text, rgba(0, 0, 0, 0.65));\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1;\n}\n\n.refThumbRemove-HlsBp:hover {\n border-color: #ff4d4f;\n border-color: var(--ant-color-error, #ff4d4f);\n color: #ff4d4f;\n color: var(--ant-color-error, #ff4d4f);\n}\n\n.refOrderBadge-r-h2t {\n position: absolute;\n top: 2px;\n left: 2px;\n min-width: 16px;\n height: 16px;\n padding: 0 4px;\n border-radius: 8px;\n background: #1677ff;\n background: var(--ant-color-primary, #1677ff);\n color: #fff;\n font-size: 10px;\n font-weight: 600;\n line-height: 16px;\n text-align: center;\n pointer-events: none;\n box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85);\n}\n\n/* ---- Fullscreen gallery (image lightbox) ---- */\n.fullscreenGallerySwiper-y-BWH {\n position: relative;\n width: 100%;\n height: 100%;\n min-height: 220px;\n box-sizing: border-box;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-slide {\n width: 100%;\n box-sizing: border-box;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-prev,\n.fullscreenGallerySwiper-y-BWH .swiper-button-next {\n width: 40px;\n height: 40px;\n margin-top: 0;\n top: 42%;\n color: rgba(255, 255, 255, 0.95);\n background: transparent;\n border-radius: 0;\n box-shadow: none;\n text-shadow: 0 0 8px rgba(0, 0, 0, 0.85), 0 1px 3px rgba(0, 0, 0, 0.9);\n z-index: 2;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-prev::after,\n.fullscreenGallerySwiper-y-BWH .swiper-button-next::after {\n font-size: 13px;\n font-weight: 700;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-prev {\n left: 10px;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-next {\n right: 10px;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-disabled {\n opacity: 0.28;\n pointer-events: none;\n}\n";
54381
- styleInject(css_248z$A);
55094
+ var css_248z$B = ".root-faX1F {\n display: flex;\n flex-direction: column;\n gap: 0;\n padding: 0;\n flex: 1 1 0;\n height: 100%;\n min-height: 200px;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n/* ---- Three-pane chat layout ---- */\n.layout-M1UuF {\n display: flex;\n flex-direction: row;\n flex: 1;\n min-height: 0;\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n overflow: hidden;\n}\n\n.center-viyyO {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-width: 0;\n min-height: 0;\n position: relative;\n}\n\n.centerDropActive-Oe7lQ {\n outline: 2px dashed #1677ff;\n outline: 2px dashed var(--ant-color-primary, #1677ff);\n outline-offset: -4px;\n}\n\n.centerDropHint-ynn96 {\n position: absolute;\n top: 12px;\n right: 12px;\n bottom: 12px;\n left: 12px;\n border: 2px dashed #1677ff;\n border: 2px dashed var(--ant-color-primary, #1677ff);\n background: color-mix(in srgb, #e6f4ff 72%, transparent);\n background: color-mix(in srgb, var(--ant-color-primary-bg, #e6f4ff) 72%, transparent);\n color: #1677ff;\n color: var(--ant-color-primary, #1677ff);\n border-radius: 10px;\n display: flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n font-size: 14px;\n font-weight: 600;\n pointer-events: none;\n z-index: 2;\n}\n\n/* ---- Sidebar ---- */\n.sidebar-J4Fpm {\n display: flex;\n flex-direction: column;\n flex: 0 0 220px;\n width: 220px;\n min-width: 200px;\n height: 100%;\n min-height: 0;\n border-right: 1px solid #e8e8e8;\n border-right: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n background: #fafafa;\n background: var(--ant-color-fill-quaternary, #fafafa);\n box-sizing: border-box;\n overflow: hidden;\n transition: flex-basis 0.18s ease, width 0.18s ease, min-width 0.18s ease;\n}\n\n.sidebarCollapsed-7UyPq {\n flex: 0 0 36px;\n width: 36px;\n min-width: 36px;\n}\n\n.sidebarHeader-1mf-N {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 10px;\n border-bottom: 1px solid #e8e8e8;\n border-bottom: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n font-weight: 600;\n font-size: 12px;\n flex-shrink: 0;\n}\n\n.sidebarCollapsed-7UyPq .sidebarHeader-1mf-N {\n padding: 6px 4px;\n justify-content: center;\n}\n\n.sidebarTitle-9f1-a {\n flex: 1;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.sidebarActions-2aSHR {\n display: flex;\n gap: 4px;\n flex-shrink: 0;\n}\n\n.sidebarCollapsedActions-XIntB {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 6px;\n padding: 8px 0;\n}\n\n.sidebarList-hAXzv {\n list-style: none;\n margin: 0;\n padding: 4px 0;\n overflow-y: auto;\n overscroll-behavior: contain;\n flex: 1;\n min-height: 0;\n}\n\n.sidebarItem-A29X0 {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 6px;\n padding: 6px 10px;\n cursor: pointer;\n font-size: 12px;\n border-left: 2px solid transparent;\n}\n\n.sidebarItem-A29X0:hover {\n background: #f0f0f0;\n background: var(--ant-color-fill-tertiary, #f0f0f0);\n}\n\n.sidebarItemActive-Xro0V {\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n border-left-color: #1677ff;\n border-left-color: var(--ant-color-primary, #1677ff);\n}\n\n.sidebarItemTitle-8wWaj {\n flex: 1;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.sidebarItemActions-Nk8K4 {\n display: none;\n align-items: center;\n gap: 2px;\n flex-shrink: 0;\n}\n\n.sidebarItemRename-ogfZC {\n display: flex;\n align-items: center;\n gap: 2px;\n flex: 1;\n min-width: 0;\n}\n\n.sidebarItemRename-ogfZC .ant-input {\n flex: 1;\n min-width: 0;\n}\n\n.sidebarItem-A29X0:hover .sidebarItemActions-Nk8K4,\n.sidebarItemActive-Xro0V .sidebarItemActions-Nk8K4 {\n display: inline-flex;\n}\n\n.sidebarEmpty-FYvqJ {\n padding: 16px 12px;\n font-size: 12px;\n opacity: 0.65;\n text-align: center;\n}\n\n.sidebarFooter-iQ7Nf {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 8px 10px;\n border-top: 1px solid #e8e8e8;\n border-top: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n font-size: 11px;\n flex-shrink: 0;\n}\n\n.sidebarFooterLabel-vy635 {\n flex: 1;\n min-width: 0;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n opacity: 0.7;\n}\n\n.sidebarFooterTotal-wl9LE {\n font-weight: 600;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n}\n\n.sidebarFooterCollapsed-m16Gv {\n justify-content: center;\n padding: 6px 2px;\n font-weight: 600;\n font-size: 10px;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n}\n\n/* ---- Chat thread ---- */\n.thread-8qRwV {\n display: flex;\n flex-direction: column;\n gap: 12px;\n padding: 12px;\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n /* Prevent wheel-scroll chaining into the outer toolbar `.container` (overflow: auto), */\n /* which would otherwise drag the sidebar along when the chat is scrolled. */\n overscroll-behavior: contain;\n box-sizing: border-box;\n}\n\n.bubbleRow-UALRR {\n display: flex;\n width: 100%;\n}\n\n.bubbleRowUser-Aa3PM {\n justify-content: flex-end;\n}\n\n.bubbleRowAssistant-WCc4Y {\n justify-content: flex-start;\n}\n\n.bubble-bavdV {\n display: flex;\n flex-direction: column;\n gap: 6px;\n max-width: 88%;\n border-radius: 10px;\n overflow: hidden;\n box-sizing: border-box;\n}\n\n.bubbleUser-nxEcz {\n background: #e6f4ff;\n background: var(--ant-color-primary-bg, #e6f4ff);\n border: 1px solid #91caff;\n border: 1px solid var(--ant-color-primary-border, #91caff);\n padding: 8px 10px;\n}\n\n.bubbleAssistant-ob-wr {\n background: #fafafa;\n background: var(--ant-color-fill-quaternary, #fafafa);\n border: 1px solid #e8e8e8;\n border: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n padding: 8px 10px;\n}\n\n.bubbleError-5wL8m {\n border-color: #ffccc7;\n border-color: var(--ant-color-error-border, #ffccc7);\n background: #fff2f0;\n background: var(--ant-color-error-bg, #fff2f0);\n}\n\n.bubblePrompt-qn6rA {\n white-space: pre-wrap;\n word-break: break-word;\n font-size: 13px;\n line-height: 1.4;\n}\n\n.bubbleCaption-W79k0 {\n font-size: 11px;\n opacity: 0.78;\n display: flex;\n flex-wrap: wrap;\n gap: 0 2px;\n}\n\n.bubbleImageGrid-UVzXc {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));\n grid-gap: 6px;\n gap: 6px;\n}\n\n.bubbleImageItem-CGiZz {\n display: flex;\n flex-direction: column;\n gap: 2px;\n min-width: 0;\n}\n\n.bubbleImageCost-B2PYt {\n font-size: 10.5px;\n line-height: 1.2;\n font-feature-settings: \"tnum\";\n font-variant-numeric: tabular-nums;\n opacity: 0.7;\n text-align: right;\n padding: 0 2px;\n}\n\n/* Pending/error rows use plain flex so spinner + label + cancel stay on one line. */\n.bubblePending-4Q3z9 {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 4px 4px;\n min-width: 0;\n}\n\n.bubblePendingLabel-fll-a {\n flex: 1 1 auto;\n min-width: 0;\n font-size: 13px;\n line-height: 1.3;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.bubbleErrorBody-LZG-A {\n padding: 8px 4px;\n font-size: 13px;\n line-height: 1.4;\n word-break: break-word;\n}\n\n.threadActions-fpeBf {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 0 8px;\n margin-top: 2px;\n}\n\n.emptyState-YK-o7 {\n margin: auto;\n padding: 24px;\n text-align: center;\n font-size: 13px;\n opacity: 0.6;\n}\n\n/* ---- Message images ---- */\n.messageImg-i3Rcg {\n display: block;\n width: 100%;\n padding: 0;\n margin: 0;\n border: 0;\n background: transparent;\n cursor: pointer;\n border-radius: 6px;\n overflow: hidden;\n}\n\n.messageImg-i3Rcg img {\n display: block;\n width: 100%;\n height: auto;\n -o-object-fit: cover;\n object-fit: cover;\n}\n\n/* ---- Composer ---- */\n.composer-dJW7x {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 8px 12px 12px;\n border-top: 1px solid #e8e8e8;\n border-top: 1px solid var(--ant-color-border-secondary, #e8e8e8);\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n position: relative;\n}\n\n.composerRefRow-XCqFN {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n/* Hint shown in the composer once the chat has produced its first image: every\n * follow-up automatically refines that image, so reference uploads are hidden. */\n.composerFollowUpHint-6VH61 {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 4px 6px;\n font-size: 11.5px;\n line-height: 1.4;\n color: rgba(0, 0, 0, 0.65);\n color: var(--ant-color-text-secondary, rgba(0, 0, 0, 0.65));\n background: #fafafa;\n background: var(--ant-color-fill-quaternary, #fafafa);\n border: 1px dashed #e8e8e8;\n border: 1px dashed var(--ant-color-border-secondary, #e8e8e8);\n border-radius: 6px;\n}\n\n.composerTextareaRow-1pKrk {\n display: block;\n width: 100%;\n}\n\n.composerTextareaRow-1pKrk .ant-input,\n.composerTextareaRow-1pKrk textarea {\n width: 100%;\n resize: vertical;\n}\n\n.composerToolbarRow-c05wd {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 6px;\n}\n\n.composerSpacer-kQKVK {\n flex: 1;\n}\n\n.hiddenFileInput-XdLJ3 {\n display: none;\n}\n\n.composerSettings-As0sF {\n display: flex;\n flex-direction: column;\n gap: 8px;\n min-width: 280px;\n}\n\n.composerSettingsRow-8v1xx {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n justify-content: space-between;\n}\n\n/* ---- Reference image thumbnails (composer) ---- */\n.refThumbRow-KlFhj {\n display: flex;\n flex-wrap: wrap;\n gap: 6px;\n align-items: center;\n flex: 1;\n min-width: 0;\n}\n\n.refThumb-d--qS {\n position: relative;\n width: 44px;\n height: 44px;\n padding: 0;\n border: 2px solid transparent;\n border-radius: 6px;\n overflow: hidden;\n cursor: pointer;\n background: #f5f5f5;\n background: var(--ant-color-fill-secondary, #f5f5f5);\n flex-shrink: 0;\n}\n\n.refThumb-d--qS img {\n width: 100%;\n height: 100%;\n -o-object-fit: cover;\n object-fit: cover;\n display: block;\n}\n\n.refThumb-d--qS:hover {\n border-color: #91caff;\n border-color: var(--ant-color-primary-border-hover, #91caff);\n}\n\n.refThumbSelected-UnCbx {\n border-color: #1677ff;\n border-color: var(--ant-color-primary, #1677ff);\n box-shadow: 0 0 0 1px #1677ff;\n box-shadow: 0 0 0 1px var(--ant-color-primary, #1677ff);\n}\n\n.refThumbRemove-HlsBp {\n position: absolute;\n top: -6px;\n right: -6px;\n width: 16px;\n height: 16px;\n padding: 0;\n border-radius: 50%;\n border: 1px solid #d9d9d9;\n border: 1px solid var(--ant-color-border, #d9d9d9);\n background: #fff;\n background: var(--ant-color-bg-container, #fff);\n color: rgba(0, 0, 0, 0.65);\n color: var(--ant-color-text, rgba(0, 0, 0, 0.65));\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1;\n}\n\n.refThumbRemove-HlsBp:hover {\n border-color: #ff4d4f;\n border-color: var(--ant-color-error, #ff4d4f);\n color: #ff4d4f;\n color: var(--ant-color-error, #ff4d4f);\n}\n\n.refOrderBadge-r-h2t {\n position: absolute;\n top: 2px;\n left: 2px;\n min-width: 16px;\n height: 16px;\n padding: 0 4px;\n border-radius: 8px;\n background: #1677ff;\n background: var(--ant-color-primary, #1677ff);\n color: #fff;\n font-size: 10px;\n font-weight: 600;\n line-height: 16px;\n text-align: center;\n pointer-events: none;\n box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85);\n}\n\n/* ---- Fullscreen gallery (image lightbox) ---- */\n.fullscreenGallerySwiper-y-BWH {\n position: relative;\n width: 100%;\n height: 100%;\n min-height: 220px;\n box-sizing: border-box;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-slide {\n width: 100%;\n box-sizing: border-box;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-prev,\n.fullscreenGallerySwiper-y-BWH .swiper-button-next {\n width: 40px;\n height: 40px;\n margin-top: 0;\n top: 42%;\n color: rgba(255, 255, 255, 0.95);\n background: transparent;\n border-radius: 0;\n box-shadow: none;\n text-shadow: 0 0 8px rgba(0, 0, 0, 0.85), 0 1px 3px rgba(0, 0, 0, 0.9);\n z-index: 2;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-prev::after,\n.fullscreenGallerySwiper-y-BWH .swiper-button-next::after {\n font-size: 13px;\n font-weight: 700;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-prev {\n left: 10px;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-next {\n right: 10px;\n}\n\n.fullscreenGallerySwiper-y-BWH .swiper-button-disabled {\n opacity: 0.28;\n pointer-events: none;\n}\n";
55095
+ styleInject(css_248z$B);
54382
55096
 
54383
55097
  function ChatComposer(_ref) {
54384
55098
  var settings = _ref.settings,
@@ -57197,6 +57911,293 @@ var AiPromptImageTester = observer(function (_ref) {
57197
57911
  });
57198
57912
  });
57199
57913
 
57914
+ var container$2 = "container---jaU";
57915
+ var toolbar$1 = "toolbar--V49P";
57916
+ var list$3 = "list-aEthS";
57917
+ var row = "row-7lWfC";
57918
+ var rowSet = "row-set-PSXTv";
57919
+ var rowMissing = "row-missing-n2q6H";
57920
+ var header$2 = "header-V879b";
57921
+ var expander = "expander-bnBV0";
57922
+ var name = "name-w0XXx";
57923
+ var required = "required-kIdDU";
57924
+ var kind = "kind-x6v0Y";
57925
+ var insertButton = "insert-button-XjeDu";
57926
+ var description = "description-sJ7Ff";
57927
+ var value = "value-Fjv04";
57928
+ var details = "details-E0CmI";
57929
+ var chip = "chip-sg51F";
57930
+ var chipDashed = "chip-dashed-vMu92";
57931
+ var overridden = "overridden-y5EdA";
57932
+ var setHere = "set-here-2qOC2";
57933
+ var detailLabel = "detail-label-fJ3-Y";
57934
+ var css_248z$A = ".container---jaU {\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: hidden;\n}\n\n.toolbar--V49P {\n display: flex;\n flex-direction: column;\n gap: 8px;\n padding: 8px;\n}\n\n.list-aEthS {\n flex: 1;\n overflow: auto;\n}\n\n.row-7lWfC {\n display: flex;\n flex-direction: column;\n gap: 2px;\n padding: 8px 8px 8px 6px;\n border-bottom: 1px solid #f0f0f0;\n border-left: 3px solid transparent;\n}\n\n.darkmode .row-7lWfC {\n border-bottom-color: #303030;\n}\n\n/* Only what differs from the default is coloured: blue for this layer, orange for a problem */\n.row-7lWfC.row-set-PSXTv {\n border-left-color: #1677ff;\n}\n\n.row-7lWfC.row-missing-n2q6H {\n border-left-color: #faad14;\n}\n\n.header-V879b {\n display: flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n}\n\n.expander-bnBV0 {\n font-size: 10px;\n width: 12px;\n}\n\n.name-w0XXx {\n font-family: monospace;\n font-weight: 600;\n}\n\n.required-kIdDU {\n color: #faad14;\n cursor: help;\n}\n\n.kind-x6v0Y {\n margin-left: auto;\n font-size: 12px;\n}\n\n.insert-button-XjeDu {\n flex-shrink: 0;\n}\n\n.description-sJ7Ff,\n.value-Fjv04,\n.details-E0CmI {\n margin-left: 18px;\n}\n\n.description-sJ7Ff {\n font-size: 12px;\n}\n\n.value-Fjv04 {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 2px 8px;\n font-size: 12px;\n white-space: nowrap;\n}\n\n[dir=\"ltr\"] .chip-sg51F {\n margin-right: 0;\n}\n\n[dir=\"rtl\"] .chip-sg51F {\n margin-left: 0;\n}\n\n.chip-sg51F {\n font-family: monospace;\n}\n\n.chip-sg51F.chip-dashed-vMu92 {\n border-style: dashed;\n}\n\n/* The configuration's value that an environment variable replaces */\n.chip-sg51F.overridden-y5EdA {\n text-decoration: line-through;\n opacity: 0.6;\n}\n\n.row-7lWfC .set-here-2qOC2 {\n color: #1677ff;\n}\n\n.details-E0CmI {\n display: grid;\n grid-template-columns: auto minmax(0, 1fr);\n grid-gap: 4px 10px;\n gap: 4px 10px;\n margin-top: 6px;\n padding: 8px;\n font-size: 12px;\n border-radius: 4px;\n background: rgba(0, 0, 0, 0.03);\n}\n\n.darkmode .details-E0CmI {\n background: rgba(255, 255, 255, 0.04);\n}\n\n.detail-label-fJ3-Y {\n opacity: 0.65;\n}\n";
57935
+ styleInject(css_248z$A);
57936
+
57937
+ /** Long values are cut in the chip; the details show them whole */
57938
+ var maxValueLength = 28;
57939
+
57940
+ /**
57941
+ * Lists every setting the schema of the edited configuration's type describes: its description, the value that applies and where
57942
+ * it comes from, with details on demand, and inserts a setting into the edited layer.
57943
+ */
57944
+ var ConfigSettings = function ConfigSettings(_ref) {
57945
+ var _tool$parameters;
57946
+ var tool = _ref.tool;
57947
+ var _useTranslation = useTranslation(),
57948
+ t = _useTranslation.t;
57949
+ var _useState = useState(''),
57950
+ _useState2 = _slicedToArray(_useState, 2),
57951
+ search = _useState2[0],
57952
+ setSearch = _useState2[1];
57953
+ var _useState3 = useState(false),
57954
+ _useState4 = _slicedToArray(_useState3, 2),
57955
+ onlyMissing = _useState4[0],
57956
+ setOnlyMissing = _useState4[1];
57957
+ var _useState5 = useState(new Set()),
57958
+ _useState6 = _slicedToArray(_useState5, 2),
57959
+ expanded = _useState6[0],
57960
+ setExpanded = _useState6[1];
57961
+ var _ref2 = (_tool$parameters = tool.parameters) !== null && _tool$parameters !== void 0 ? _tool$parameters : {},
57962
+ data = _ref2.data,
57963
+ schema = _ref2.schema,
57964
+ merged = _ref2.merged,
57965
+ insert = _ref2.insert;
57966
+ var states = useMemo(function () {
57967
+ var _data$configParams;
57968
+ return schema ? settingStates(schema, (_data$configParams = data === null || data === void 0 ? void 0 : data.configParams) !== null && _data$configParams !== void 0 ? _data$configParams : {}, merged) : [];
57969
+ }, [schema, data, merged]);
57970
+ if (!schema) {
57971
+ return /*#__PURE__*/jsx("div", {
57972
+ className: container$2,
57973
+ children: /*#__PURE__*/jsx(Empty, {
57974
+ description: t('backoffice.configSettings.noSchema')
57975
+ })
57976
+ });
57977
+ }
57978
+ var missingCount = states.filter(function (_ref3) {
57979
+ var status = _ref3.status;
57980
+ return status == 'missing';
57981
+ }).length;
57982
+ var term = search.toLowerCase();
57983
+ var filtered = onlyMissing && missingCount > 0 || !!term;
57984
+ var shown = states.filter(function (_ref4) {
57985
+ var setting = _ref4.setting,
57986
+ status = _ref4.status,
57987
+ variable = _ref4.variable;
57988
+ return (!onlyMissing || !missingCount || status == 'missing') && (!term || [setting.path, setting.description, variable].some(function (text) {
57989
+ return text === null || text === void 0 ? void 0 : text.toLowerCase().includes(term);
57990
+ }));
57991
+ });
57992
+ var toggle = function toggle(path) {
57993
+ return setExpanded(function (current) {
57994
+ var next = new Set(current);
57995
+ if (!next["delete"](path)) next.add(path);
57996
+ return next;
57997
+ });
57998
+ };
57999
+ return /*#__PURE__*/jsxs("div", {
58000
+ className: container$2,
58001
+ children: [/*#__PURE__*/jsxs("div", {
58002
+ className: toolbar$1,
58003
+ children: [missingCount > 0 && /*#__PURE__*/jsx(Alert, {
58004
+ type: "warning",
58005
+ showIcon: true,
58006
+ message: t('backoffice.configSettings.missingCount', {
58007
+ count: missingCount
58008
+ }),
58009
+ action: /*#__PURE__*/jsx(Button, {
58010
+ size: "small",
58011
+ onClick: function onClick() {
58012
+ return setOnlyMissing(!onlyMissing);
58013
+ },
58014
+ children: t(onlyMissing ? 'backoffice.configSettings.showAll' : 'backoffice.configSettings.showOnlyMissing')
58015
+ })
58016
+ }), /*#__PURE__*/jsx(Input$1.Search, {
58017
+ allowClear: true,
58018
+ placeholder: t('backoffice.configSettings.search'),
58019
+ onChange: function onChange(e) {
58020
+ return setSearch(e.target.value);
58021
+ }
58022
+ })]
58023
+ }), /*#__PURE__*/jsxs("div", {
58024
+ className: list$3,
58025
+ children: [shown.length == 0 && /*#__PURE__*/jsx(Empty, {
58026
+ description: t('backoffice.configSettings.noMatch')
58027
+ }), shown.map(function (state) {
58028
+ return /*#__PURE__*/jsx(SettingRow, {
58029
+ state: state,
58030
+ fullPath: filtered,
58031
+ open: expanded.has(state.setting.path),
58032
+ onToggle: function onToggle() {
58033
+ return toggle(state.setting.path);
58034
+ },
58035
+ insert: insert
58036
+ }, state.setting.path);
58037
+ })]
58038
+ })]
58039
+ });
58040
+ };
58041
+
58042
+ /**
58043
+ * @param fullPath whether to show the whole path - while filtering, the rows of the parents are not shown
58044
+ */
58045
+ function SettingRow(_ref5) {
58046
+ var state = _ref5.state,
58047
+ fullPath = _ref5.fullPath,
58048
+ open = _ref5.open,
58049
+ onToggle = _ref5.onToggle,
58050
+ insert = _ref5.insert;
58051
+ var _useTranslation2 = useTranslation(),
58052
+ t = _useTranslation2.t;
58053
+ var setting = state.setting,
58054
+ status = state.status,
58055
+ value$1 = state.value,
58056
+ variable = state.variable;
58057
+ var toInsert = valueToInsert(state);
58058
+ var insertHint = setting.kind == 'object' ? t('backoffice.configSettings.insert') : status == 'inherited' || status == 'default' ? t('backoffice.configSettings.insertCurrent', {
58059
+ value: shortValue(toInsert)
58060
+ }) : setting["default"] !== undefined ? t('backoffice.configSettings.insertDefault', {
58061
+ value: shortValue(toInsert)
58062
+ }) : t('backoffice.configSettings.insert');
58063
+ return /*#__PURE__*/jsxs("div", {
58064
+ className: classNames(row, _defineProperty(_defineProperty({}, rowSet, status == 'set'), rowMissing, status == 'missing')),
58065
+ style: {
58066
+ marginLeft: fullPath ? 0 : setting.depth * 16
58067
+ },
58068
+ children: [/*#__PURE__*/jsxs("div", {
58069
+ className: header$2,
58070
+ onClick: onToggle,
58071
+ children: [/*#__PURE__*/jsx("span", {
58072
+ className: expander,
58073
+ children: open ? /*#__PURE__*/jsx(DownOutlined, {}) : /*#__PURE__*/jsx(RightOutlined$2, {})
58074
+ }), /*#__PURE__*/jsx(Typography.Text, {
58075
+ className: name,
58076
+ children: fullPath ? setting.path : setting.path.split('.').pop()
58077
+ }), setting.required && /*#__PURE__*/jsx(Tooltip$1, {
58078
+ title: t('backoffice.configSettings.requiredHint'),
58079
+ children: /*#__PURE__*/jsx("span", {
58080
+ className: required,
58081
+ children: "*"
58082
+ })
58083
+ }), /*#__PURE__*/jsx(Typography.Text, {
58084
+ type: "secondary",
58085
+ className: kind,
58086
+ children: t("backoffice.configSettings.types.".concat(setting.kind))
58087
+ }), setting.plain && status != 'set' && status != 'environment' && insert && /*#__PURE__*/jsx(Tooltip$1, {
58088
+ title: insertHint,
58089
+ children: /*#__PURE__*/jsx(Button, {
58090
+ className: insertButton,
58091
+ size: "small",
58092
+ type: "text",
58093
+ icon: /*#__PURE__*/jsx(PlusOutlined$2, {}),
58094
+ "aria-label": insertHint,
58095
+ onClick: function onClick(e) {
58096
+ e.stopPropagation();
58097
+ insert(setting.path, toInsert);
58098
+ }
58099
+ })
58100
+ })]
58101
+ }), setting.description && /*#__PURE__*/jsx(Typography.Text, {
58102
+ className: description,
58103
+ children: setting.description
58104
+ }), setting.plain && (setting.kind != 'object' || status == 'missing') && /*#__PURE__*/jsxs("div", {
58105
+ className: value,
58106
+ children: [(status == 'set' || status == 'inherited' || status == 'default') && /*#__PURE__*/jsxs(Fragment, {
58107
+ children: [/*#__PURE__*/jsx(Tag, {
58108
+ color: status == 'set' ? 'blue' : undefined,
58109
+ className: classNames(chip, _defineProperty({}, chipDashed, status != 'set')),
58110
+ children: shortValue(value$1)
58111
+ }), /*#__PURE__*/jsx(Tooltip$1, {
58112
+ title: t("backoffice.configSettings.placeHint.".concat(status)),
58113
+ children: /*#__PURE__*/jsx(Typography.Text, {
58114
+ type: "secondary",
58115
+ className: classNames(_defineProperty({}, setHere, status == 'set')),
58116
+ children: t("backoffice.configSettings.place.".concat(status))
58117
+ })
58118
+ })]
58119
+ }), status == 'environment' && /*#__PURE__*/jsxs(Fragment, {
58120
+ children: [value$1 !== undefined && /*#__PURE__*/jsx(Tag, {
58121
+ className: classNames(chip, chipDashed, overridden),
58122
+ children: shortValue(value$1)
58123
+ }), /*#__PURE__*/jsx(Tooltip$1, {
58124
+ title: t('backoffice.configSettings.placeHint.environment'),
58125
+ children: /*#__PURE__*/jsx(Typography.Text, {
58126
+ type: "secondary",
58127
+ children: t('backoffice.configSettings.place.environment')
58128
+ })
58129
+ })]
58130
+ }), status == 'missing' && /*#__PURE__*/jsxs(Fragment, {
58131
+ children: [/*#__PURE__*/jsx(Tag, {
58132
+ color: "warning",
58133
+ className: classNames(chip, chipDashed),
58134
+ children: t('backoffice.configSettings.missingChip')
58135
+ }), /*#__PURE__*/jsx(Typography.Text, {
58136
+ type: "warning",
58137
+ children: t('backoffice.configSettings.missingText')
58138
+ })]
58139
+ }), status == 'unset' && /*#__PURE__*/jsx(Typography.Text, {
58140
+ type: "secondary",
58141
+ children: t('backoffice.configSettings.notSet')
58142
+ })]
58143
+ }), open && /*#__PURE__*/jsxs("div", {
58144
+ className: details,
58145
+ children: [/*#__PURE__*/jsx("span", {
58146
+ className: detailLabel,
58147
+ children: t('backoffice.configSettings.details.path')
58148
+ }), /*#__PURE__*/jsx(Typography.Text, {
58149
+ code: true,
58150
+ copyable: true,
58151
+ children: setting.path
58152
+ }), setting["default"] !== undefined && status != 'default' && /*#__PURE__*/jsxs(Fragment, {
58153
+ children: [/*#__PURE__*/jsx("span", {
58154
+ className: detailLabel,
58155
+ children: t('backoffice.configSettings.details.defaultValue')
58156
+ }), /*#__PURE__*/jsx(Typography.Text, {
58157
+ code: true,
58158
+ children: valueText(setting["default"])
58159
+ })]
58160
+ }), setting.kind != 'object' && (status == 'set' || status == 'inherited' || status == 'default' || status == 'environment') && valueText(value$1).length > maxValueLength && /*#__PURE__*/jsxs(Fragment, {
58161
+ children: [/*#__PURE__*/jsx("span", {
58162
+ className: detailLabel,
58163
+ children: t('backoffice.configSettings.details.value')
58164
+ }), /*#__PURE__*/jsx(Typography.Text, {
58165
+ code: true,
58166
+ children: valueText(value$1)
58167
+ })]
58168
+ }), setting["enum"] && /*#__PURE__*/jsxs(Fragment, {
58169
+ children: [/*#__PURE__*/jsx("span", {
58170
+ className: detailLabel,
58171
+ children: t('backoffice.configSettings.details.allowed')
58172
+ }), /*#__PURE__*/jsx(Typography.Text, {
58173
+ children: setting["enum"].map(function (option) {
58174
+ return JSON.stringify(option);
58175
+ }).join(' · ')
58176
+ })]
58177
+ }), variable && /*#__PURE__*/jsxs(Fragment, {
58178
+ children: [/*#__PURE__*/jsx("span", {
58179
+ className: detailLabel,
58180
+ children: t('backoffice.configSettings.details.environmentVariable')
58181
+ }), /*#__PURE__*/jsx(Typography.Text, {
58182
+ code: true,
58183
+ copyable: true,
58184
+ children: variable
58185
+ })]
58186
+ })]
58187
+ })]
58188
+ });
58189
+ }
58190
+
58191
+ /** A string as it is, any other value as JSON */
58192
+ function valueText(value) {
58193
+ var _JSON$stringify;
58194
+ return typeof value == 'string' ? value : (_JSON$stringify = JSON.stringify(value)) !== null && _JSON$stringify !== void 0 ? _JSON$stringify : '';
58195
+ }
58196
+ function shortValue(value) {
58197
+ var text = valueText(value);
58198
+ return text.length > maxValueLength ? "".concat(text.slice(0, maxValueLength), "\u2026") : text;
58199
+ }
58200
+
57200
58201
  var wrapper$1 = "wrapper-mF80Z";
57201
58202
  var empty$3 = "empty-ehsiR";
57202
58203
  var css_248z$z = ".wrapper-mF80Z {\n height: 100%;\n min-height: 0;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.empty-ehsiR {\n padding: 16px;\n}\n";
@@ -95274,7 +96275,7 @@ var Toolbar = function Toolbar(_ref) {
95274
96275
  var isActive = !toolBar.hidden && t.id === ((_toolBar$currentOpenT2 = toolBar.currentOpenTool) === null || _toolBar$currentOpenT2 === void 0 ? void 0 : _toolBar$currentOpenT2.id);
95275
96276
  if (!isActive && t.unmountWhenClosed) return null;
95276
96277
  return /*#__PURE__*/jsx("div", {
95277
- className: classNames(container$4, _defineProperty({}, unpinnedRight, !toolBar.pinned && position === 'right')),
96278
+ className: classNames(container$5, _defineProperty({}, unpinnedRight, !toolBar.pinned && position === 'right')),
95278
96279
  style: {
95279
96280
  display: isActive ? undefined : 'none',
95280
96281
  width: position === 'right' ? 'var(--toolbar-width)' : undefined,
@@ -95423,6 +96424,12 @@ function ToolElement(_ref3) {
95423
96424
  toolbar: toolbar
95424
96425
  });
95425
96426
  break;
96427
+ case 'ConfigSettings':
96428
+ Tool = /*#__PURE__*/jsx(ConfigSettings, {
96429
+ tool: tool,
96430
+ toolbar: toolbar
96431
+ });
96432
+ break;
95426
96433
  }
95427
96434
  var C = useMemo(function () {
95428
96435
  return tool.elementComponent;