@dreamcommerce/aurora 2.9.0-9 → 2.10.0-0

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 (90) hide show
  1. package/build/cjs/packages/aurora/src/components/controls/hoc/control_xhr_image_picker/index.js +3 -2
  2. package/build/cjs/packages/aurora/src/components/controls/hoc/control_xhr_image_picker/index.js.map +1 -1
  3. package/build/cjs/packages/aurora/src/components/file_picker/use_file_picker.js +20 -4
  4. package/build/cjs/packages/aurora/src/components/file_picker/use_file_picker.js.map +1 -1
  5. package/build/cjs/packages/aurora/src/components/scroll_sync/components/scroll_sync_container.js +20 -0
  6. package/build/cjs/packages/aurora/src/components/scroll_sync/components/scroll_sync_container.js.map +1 -0
  7. package/build/cjs/packages/aurora/src/components/scroll_sync/context/scroll_sync_context.js +16 -0
  8. package/build/cjs/packages/aurora/src/components/scroll_sync/context/scroll_sync_context.js.map +1 -0
  9. package/build/cjs/packages/aurora/src/components/scroll_sync/context/scroll_sync_provider.js +31 -0
  10. package/build/cjs/packages/aurora/src/components/scroll_sync/context/scroll_sync_provider.js.map +1 -0
  11. package/build/cjs/packages/aurora/src/components/scroll_sync/context/scroll_syncer_service.js +77 -0
  12. package/build/cjs/packages/aurora/src/components/scroll_sync/context/scroll_syncer_service.js.map +1 -0
  13. package/build/cjs/packages/aurora/src/components/scroll_sync/context/setup_scroll_syncer.js +12 -0
  14. package/build/cjs/packages/aurora/src/components/scroll_sync/context/setup_scroll_syncer.js.map +1 -0
  15. package/build/cjs/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_container_hook.js +20 -0
  16. package/build/cjs/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_container_hook.js.map +1 -0
  17. package/build/cjs/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_hook.js +21 -0
  18. package/build/cjs/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_hook.js.map +1 -0
  19. package/build/cjs/packages/aurora/src/components/scroll_sync/index.js +18 -0
  20. package/build/cjs/packages/aurora/src/components/scroll_sync/index.js.map +1 -0
  21. package/build/cjs/packages/aurora/src/components/slide/index.js +8 -2
  22. package/build/cjs/packages/aurora/src/components/slide/index.js.map +1 -1
  23. package/build/cjs/packages/aurora/src/components/tree/components/tree_node.js +8 -7
  24. package/build/cjs/packages/aurora/src/components/tree/components/tree_node.js.map +1 -1
  25. package/build/cjs/packages/aurora/src/components/tree/css_classes.js +5 -4
  26. package/build/cjs/packages/aurora/src/components/tree/css_classes.js.map +1 -1
  27. package/build/cjs/packages/aurora/src/components/tree/index.js +4 -3
  28. package/build/cjs/packages/aurora/src/components/tree/index.js.map +1 -1
  29. package/build/cjs/packages/aurora/src/components/typography/index.js +1 -1
  30. package/build/cjs/packages/aurora/src/components/xhr_image_picker/index.js +3 -2
  31. package/build/cjs/packages/aurora/src/components/xhr_image_picker/index.js.map +1 -1
  32. package/build/cjs/packages/aurora/src/css/tree/main.module.less.js +2 -2
  33. package/build/cjs/packages/aurora/src/hooks/use_click_outside.js +1 -0
  34. package/build/cjs/packages/aurora/src/hooks/use_click_outside.js.map +1 -1
  35. package/build/cjs/packages/aurora/src/index.js +6 -0
  36. package/build/cjs/packages/aurora/src/index.js.map +1 -1
  37. package/build/esm/packages/aurora/src/components/controls/hoc/control_xhr_image_picker/index.js +3 -2
  38. package/build/esm/packages/aurora/src/components/controls/hoc/control_xhr_image_picker/index.js.map +1 -1
  39. package/build/esm/packages/aurora/src/components/controls/types.d.ts +4 -4
  40. package/build/esm/packages/aurora/src/components/controls/types.js +3 -3
  41. package/build/esm/packages/aurora/src/components/controls/types.js.map +1 -1
  42. package/build/esm/packages/aurora/src/components/file_picker/types.d.ts +6 -2
  43. package/build/esm/packages/aurora/src/components/file_picker/use_file_picker.js +21 -5
  44. package/build/esm/packages/aurora/src/components/file_picker/use_file_picker.js.map +1 -1
  45. package/build/esm/packages/aurora/src/components/scroll_sync/components/scroll_sync_container.d.ts +7 -0
  46. package/build/esm/packages/aurora/src/components/scroll_sync/components/scroll_sync_container.js +12 -0
  47. package/build/esm/packages/aurora/src/components/scroll_sync/components/scroll_sync_container.js.map +1 -0
  48. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_sync_context.d.ts +12 -0
  49. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_sync_context.js +11 -0
  50. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_sync_context.js.map +1 -0
  51. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_sync_provider.d.ts +2 -0
  52. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_sync_provider.js +23 -0
  53. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_sync_provider.js.map +1 -0
  54. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_syncer_service.d.ts +18 -0
  55. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_syncer_service.js +73 -0
  56. package/build/esm/packages/aurora/src/components/scroll_sync/context/scroll_syncer_service.js.map +1 -0
  57. package/build/esm/packages/aurora/src/components/scroll_sync/context/setup_scroll_syncer.d.ts +4 -0
  58. package/build/esm/packages/aurora/src/components/scroll_sync/context/setup_scroll_syncer.js +8 -0
  59. package/build/esm/packages/aurora/src/components/scroll_sync/context/setup_scroll_syncer.js.map +1 -0
  60. package/build/esm/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_container_hook.d.ts +2 -0
  61. package/build/esm/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_container_hook.js +16 -0
  62. package/build/esm/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_container_hook.js.map +1 -0
  63. package/build/esm/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_hook.d.ts +1 -0
  64. package/build/esm/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_hook.js +13 -0
  65. package/build/esm/packages/aurora/src/components/scroll_sync/hooks/scroll_sync_hook.js.map +1 -0
  66. package/build/esm/packages/aurora/src/components/scroll_sync/index.d.ts +3 -0
  67. package/build/esm/packages/aurora/src/components/scroll_sync/index.js +10 -0
  68. package/build/esm/packages/aurora/src/components/scroll_sync/index.js.map +1 -0
  69. package/build/esm/packages/aurora/src/components/slide/index.js +8 -2
  70. package/build/esm/packages/aurora/src/components/slide/index.js.map +1 -1
  71. package/build/esm/packages/aurora/src/components/slide/types.d.ts +1 -0
  72. package/build/esm/packages/aurora/src/components/tree/components/tree_node.js +8 -7
  73. package/build/esm/packages/aurora/src/components/tree/components/tree_node.js.map +1 -1
  74. package/build/esm/packages/aurora/src/components/tree/css_classes.d.ts +5 -4
  75. package/build/esm/packages/aurora/src/components/tree/css_classes.js +5 -4
  76. package/build/esm/packages/aurora/src/components/tree/css_classes.js.map +1 -1
  77. package/build/esm/packages/aurora/src/components/tree/index.d.ts +7 -2
  78. package/build/esm/packages/aurora/src/components/tree/index.js +4 -3
  79. package/build/esm/packages/aurora/src/components/tree/index.js.map +1 -1
  80. package/build/esm/packages/aurora/src/components/typography/index.js +1 -1
  81. package/build/esm/packages/aurora/src/components/xhr_image_picker/index.js +3 -2
  82. package/build/esm/packages/aurora/src/components/xhr_image_picker/index.js.map +1 -1
  83. package/build/esm/packages/aurora/src/css/tree/main.module.less.js +2 -2
  84. package/build/esm/packages/aurora/src/hooks/use_click_outside.d.ts +1 -0
  85. package/build/esm/packages/aurora/src/hooks/use_click_outside.js +1 -0
  86. package/build/esm/packages/aurora/src/hooks/use_click_outside.js.map +1 -1
  87. package/build/esm/packages/aurora/src/index.d.ts +4 -1
  88. package/build/esm/packages/aurora/src/index.js +3 -0
  89. package/build/esm/packages/aurora/src/index.js.map +1 -1
  90. package/package.json +2 -2
@@ -16,9 +16,10 @@ const ControlXhrImagePicker = ({ url, label, isRequired, id, name, onChange, all
16
16
  const handleControlError = (errors) => {
17
17
  setErrors(errors);
18
18
  };
19
- const handleControlChange = (fileList) => {
19
+ const handleControlChange = (file) => {
20
+ const { fileList, fileAsDataUrl } = file;
20
21
  setErrors(null);
21
- onChange === null || onChange === void 0 ? void 0 : onChange(fileList);
22
+ onChange === null || onChange === void 0 ? void 0 : onChange({ fileList, fileAsDataUrl });
22
23
  };
23
24
  return (React__default['default'].createElement(index['default'], { errors: controlErrors, name: name, id: id },
24
25
  (label || hint) && (React__default['default'].createElement(index['default'].Label, { id: id, isRequired: isRequired, additionalInfo: labelAdditionalInfo },
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -7,16 +7,25 @@ var i18n = require('../../i18n.js');
7
7
  var constants = require('./constants.js');
8
8
 
9
9
  const useFilePicker = ({ onChange, initialFile, allowedExtensions, inputRef, initialErrors, onError }) => {
10
+ const [fileList, setFileList] = React.useState(null);
10
11
  const [file, setFile] = React.useState(initialFile);
12
+ const [fileAsDataUrl, setFileAsDataUrl] = React.useState(null);
11
13
  const [errors, setErrors] = React.useState([]);
12
14
  const [isDragOver, setDragOver] = React.useState(false);
13
15
  const [isPreview, setPreview] = React.useState(true);
16
+ const reader = React.useRef(new FileReader());
14
17
  React.useEffect(() => {
15
- initialFile && setFile(initialFile);
18
+ setFile(initialFile);
19
+ reader.current && getDataUrlFromFile(reader.current.result);
20
+ reader.current.addEventListener('load', () => getDataUrlFromFile(reader.current.result), false);
21
+ return () => reader.current.removeEventListener('load', () => getDataUrlFromFile(reader.current.result));
16
22
  }, []);
17
23
  React.useEffect(() => {
18
24
  initialErrors && setErrors(initialErrors);
19
25
  }, [initialErrors]);
26
+ React.useEffect(() => {
27
+ fileAsDataUrl && (onChange === null || onChange === void 0 ? void 0 : onChange({ fileList, fileAsDataUrl }));
28
+ }, [fileAsDataUrl]);
20
29
  const onDropFile = (event) => {
21
30
  setErrors([]);
22
31
  event.stopPropagation();
@@ -48,20 +57,25 @@ const useFilePicker = ({ onChange, initialFile, allowedExtensions, inputRef, ini
48
57
  };
49
58
  const updateFile = (files) => {
50
59
  if (files === null || files === void 0 ? void 0 : files.length) {
60
+ setFileList(files);
61
+ reader.current.readAsDataURL(files[0]);
51
62
  setFile({
52
63
  fileName: files === null || files === void 0 ? void 0 : files[0].name,
53
64
  fileUrl: URL.createObjectURL(files === null || files === void 0 ? void 0 : files[0])
54
65
  });
55
66
  const isValid = validateFileExtension(allowedExtensions, files[0].type);
56
67
  if (isValid)
57
- onChange === null || onChange === void 0 ? void 0 : onChange(files);
68
+ onChange === null || onChange === void 0 ? void 0 : onChange({ fileList: files });
58
69
  }
59
70
  else {
60
71
  setFile(undefined);
61
- onChange === null || onChange === void 0 ? void 0 : onChange(files);
72
+ onChange === null || onChange === void 0 ? void 0 : onChange({ fileList: files });
62
73
  }
63
74
  setPreview(true);
64
75
  };
76
+ const getDataUrlFromFile = (fileReaderResult) => {
77
+ setFileAsDataUrl(fileReaderResult);
78
+ };
65
79
  const onDragOver = (event) => {
66
80
  event.stopPropagation();
67
81
  event.preventDefault();
@@ -75,10 +89,12 @@ const useFilePicker = ({ onChange, initialFile, allowedExtensions, inputRef, ini
75
89
  };
76
90
  const onFileDelete = () => {
77
91
  inputRef.current.value = '';
92
+ setFileList(null);
78
93
  setFile(undefined);
94
+ setFileAsDataUrl(null);
79
95
  setPreview(true);
80
96
  setErrors([]);
81
- onChange === null || onChange === void 0 ? void 0 : onChange(null);
97
+ onChange === null || onChange === void 0 ? void 0 : onChange({ fileList: null, fileAsDataUrl: null });
82
98
  };
83
99
  const onPreviewError = () => {
84
100
  setPreview(false);
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var scroll_sync_container_hook = require('../hooks/scroll_sync_container_hook.js');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
11
+
12
+ const ScrollSyncContainer = ({ children, id }) => {
13
+ const elementRef = React__default['default'].useRef(null);
14
+ scroll_sync_container_hook.useScrollSyncContainer(id, elementRef);
15
+ return React__default['default'].createElement(React__default['default'].Fragment, null, children(elementRef));
16
+ };
17
+
18
+ exports.ScrollSyncContainer = ScrollSyncContainer;
19
+ exports.default = ScrollSyncContainer;
20
+ //# sourceMappingURL=scroll_sync_container.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+
7
+ const ScrollSyncContext = React.createContext({
8
+ registerContainer: () => { },
9
+ unregisterContainer: () => { },
10
+ hasContainer: () => false
11
+ });
12
+ const ScrollSyncContextProvider = ScrollSyncContext.Provider;
13
+
14
+ exports.ScrollSyncContext = ScrollSyncContext;
15
+ exports.ScrollSyncContextProvider = ScrollSyncContextProvider;
16
+ //# sourceMappingURL=scroll_sync_context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,31 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var use_lazy_ref = require('../../../hooks/use_lazy_ref.js');
7
+ var scroll_sync_context = require('./scroll_sync_context.js');
8
+ var setup_scroll_syncer = require('./setup_scroll_syncer.js');
9
+
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
+
14
+ const ScrollSyncProvider = ({ children }) => {
15
+ const scrollSyncerSetup = use_lazy_ref.useLazyRef(() => setup_scroll_syncer.setupScrollSyncer());
16
+ const value = {
17
+ registerContainer(container) {
18
+ scrollSyncerSetup.current.scrollSyncerApi.registerContainer(container);
19
+ },
20
+ unregisterContainer(id) {
21
+ scrollSyncerSetup.current.scrollSyncerApi.unregisterContainer(id);
22
+ },
23
+ hasContainer(id) {
24
+ return scrollSyncerSetup.current.scrollSyncerApi.hasContainer(id);
25
+ }
26
+ };
27
+ return React__default['default'].createElement(scroll_sync_context.ScrollSyncContextProvider, { value: value }, children);
28
+ };
29
+
30
+ exports.ScrollSyncProvider = ScrollSyncProvider;
31
+ //# sourceMappingURL=scroll_sync_provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,77 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ const SCROLL_CONTAINER_ID_ATTRIBUTE = 'data-scroll-sync-id';
6
+ class ScrollSyncerService {
7
+ constructor() {
8
+ this.scrollContainers = [];
9
+ this.proportional = true;
10
+ this.vertical = true;
11
+ this.horizontal = true;
12
+ this.enabled = true;
13
+ this._addScrollEvent = (container) => {
14
+ container.$el.addEventListener('scroll', this._handleScrollEvent);
15
+ };
16
+ this._handleScrollEvent = (ev) => {
17
+ const $container = ev.target;
18
+ const containerId = $container.getAttribute(SCROLL_CONTAINER_ID_ATTRIBUTE);
19
+ if (!containerId)
20
+ return;
21
+ const container = this._getContentContainer(containerId);
22
+ if (!container)
23
+ return;
24
+ window.requestAnimationFrame(() => this._syncScrollPositions(container));
25
+ };
26
+ this._removeScrollEvent = (container) => {
27
+ container.$el.removeEventListener('scroll', this._handleScrollEvent);
28
+ };
29
+ this._syncScrollPosition = (containerToSync, scrolledContainer) => {
30
+ const $scrolledContainerEl = scrolledContainer.$el;
31
+ const { scrollTop, scrollHeight, clientHeight, scrollLeft, scrollWidth, clientWidth } = $scrolledContainerEl;
32
+ const scrollTopOffset = scrollHeight - clientHeight;
33
+ const scrollLeftOffset = scrollWidth - clientWidth;
34
+ const paneHeight = containerToSync.$el.scrollHeight - clientHeight;
35
+ const paneWidth = containerToSync.$el.scrollWidth - clientWidth;
36
+ if (this.vertical && scrollTopOffset > 0) {
37
+ containerToSync.$el.scrollTop = this.proportional ? (paneHeight * scrollTop) / scrollTopOffset : scrollTop;
38
+ }
39
+ if (this.horizontal && scrollLeftOffset > 0) {
40
+ containerToSync.$el.scrollLeft = this.proportional ? (paneWidth * scrollLeft) / scrollLeftOffset : scrollLeft;
41
+ }
42
+ };
43
+ this._syncScrollPositions = (scrolledContainer) => {
44
+ this.scrollContainers.forEach((containerToSync) => {
45
+ if (containerToSync.id !== scrolledContainer.id) {
46
+ this._syncScrollPosition(containerToSync, scrolledContainer);
47
+ }
48
+ });
49
+ };
50
+ this._getContentContainer = (id) => {
51
+ return this.scrollContainers.find((currContainer) => currContainer.id === id);
52
+ };
53
+ }
54
+ registerContainer(container) {
55
+ container.$el.setAttribute(SCROLL_CONTAINER_ID_ATTRIBUTE, container.id);
56
+ this.scrollContainers.push(container);
57
+ this._addScrollEvent(container);
58
+ }
59
+ unregisterContainer(id) {
60
+ const container = this._getContentContainer(id);
61
+ if (!container)
62
+ return;
63
+ //TODO dokonczyc scroll na iframe
64
+ // if (container.$el instanceof HTMLIFrameElement) {
65
+ // container.$el = container.$el.contentWindow;
66
+ // }
67
+ this.scrollContainers = this.scrollContainers.filter((currContainer) => container.id !== currContainer.id);
68
+ container.$el.removeAttribute(SCROLL_CONTAINER_ID_ATTRIBUTE);
69
+ this._removeScrollEvent(container);
70
+ }
71
+ hasContainer(id) {
72
+ return !!this.scrollContainers.find((container) => container.id === id);
73
+ }
74
+ }
75
+
76
+ exports.ScrollSyncerService = ScrollSyncerService;
77
+ //# sourceMappingURL=scroll_syncer_service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var scroll_syncer_service = require('./scroll_syncer_service.js');
6
+
7
+ const setupScrollSyncer = () => {
8
+ return { scrollSyncerApi: new scroll_syncer_service.ScrollSyncerService() };
9
+ };
10
+
11
+ exports.setupScrollSyncer = setupScrollSyncer;
12
+ //# sourceMappingURL=setup_scroll_syncer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,20 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var scroll_sync_hook = require('./scroll_sync_hook.js');
7
+
8
+ const useScrollSyncContainer = (id, ref) => {
9
+ const scrollSyncApi = scroll_sync_hook.useScrollSync();
10
+ React.useEffect(() => {
11
+ if (!ref.current)
12
+ return;
13
+ if (!scrollSyncApi.hasContainer(id))
14
+ scrollSyncApi.registerContainer({ id, $el: ref.current });
15
+ return () => scrollSyncApi.unregisterContainer(id);
16
+ }, []);
17
+ };
18
+
19
+ exports.useScrollSyncContainer = useScrollSyncContainer;
20
+ //# sourceMappingURL=scroll_sync_container_hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var scroll_sync_context = require('../context/scroll_sync_context.js');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
11
+
12
+ const useScrollSync = () => {
13
+ const context = React__default['default'].useContext(scroll_sync_context.ScrollSyncContext);
14
+ if (!context) {
15
+ throw new Error('useScrollSync must be used within a ScrollSyncContextProvider');
16
+ }
17
+ return context;
18
+ };
19
+
20
+ exports.useScrollSync = useScrollSync;
21
+ //# sourceMappingURL=scroll_sync_hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -0,0 +1,18 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var scroll_sync_provider = require('./context/scroll_sync_provider.js');
7
+
8
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
+
10
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
11
+
12
+ const ScrollSync = ({ children }) => {
13
+ return React__default['default'].createElement(scroll_sync_provider.ScrollSyncProvider, null, children);
14
+ };
15
+
16
+ exports.ScrollSync = ScrollSync;
17
+ exports.default = ScrollSync;
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -5,6 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var classnames = require('classnames');
7
7
  var directions = require('../../constants/directions.js');
8
+ var use_click_outside = require('../../hooks/use_click_outside.js');
8
9
  var css_classes = require('./css_classes.js');
9
10
  var main_module = require('../../css/slide/main.module.less.js');
10
11
 
@@ -13,7 +14,12 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
13
14
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
15
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
15
16
 
16
- const Slide = ({ isOpen, autoOpen, direction = 'left', position, animationDurationMs = 300, classNames = '', children }) => {
17
+ const Slide = ({ isOpen, autoOpen, direction = 'left', position, animationDurationMs = 300, classNames = '', children, onClickOutside }) => {
18
+ const ref = React__default['default'].useRef(null);
19
+ use_click_outside.useClickOutside([ref], () => {
20
+ if (isOpen)
21
+ onClickOutside === null || onClickOutside === void 0 ? void 0 : onClickOutside();
22
+ });
17
23
  if (autoOpen)
18
24
  isOpen = true;
19
25
  let directionClass;
@@ -35,7 +41,7 @@ const Slide = ({ isOpen, autoOpen, direction = 'left', position, animationDurati
35
41
  [main_module['default'][css_classes['default'].slideIsOpen]]: isOpen,
36
42
  [classNames]: classNames
37
43
  });
38
- return (React__default['default'].createElement("div", { className: slideClassNames, style: {
44
+ return (React__default['default'].createElement("div", { ref: ref, className: slideClassNames, style: {
39
45
  animationDuration: `${animationDurationMs}ms`,
40
46
  top: (position === null || position === void 0 ? void 0 : position.top) ? `${position.top}px` : '',
41
47
  right: (position === null || position === void 0 ? void 0 : position.right) ? `${position.right}px` : '',
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -25,13 +25,14 @@ const TreeNode = ({ children, id, cssClassNames, ContentComponent, LabelComponen
25
25
  const toggleNode = () => {
26
26
  treeApi.toggleNode(node.id);
27
27
  };
28
- const Label = LabelComponent ? (LabelComponent === null || LabelComponent === void 0 ? void 0 : LabelComponent({ node, isLeaf: !children })) : (React__default['default'].createElement("span", { tabIndex: !children ? 0 : -1, className: classnames__default['default'](main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerLabel], css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerLabel) }, node.label ? node.label : node.id));
29
- const Content = ContentComponent ? (ContentComponent === null || ContentComponent === void 0 ? void 0 : ContentComponent({ node, toggleNode, isLeaf: !children })) : (React__default['default'].createElement("button", { onClick: toggleNode, className: classnames__default['default'](css_classes.TREE_NODE_CSS_CLASSES.treeNodeToggler, main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeToggler]) },
30
- React__default['default'].createElement("span", { className: classnames__default['default'](main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerIcon], css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerIcon, {
31
- [css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerIconExpanded]: node.expanded,
32
- [main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerIconExpanded]]: node.expanded
33
- }) },
34
- React__default['default'].createElement(icon_list_arrow_down.IconListArrowDown, null)),
28
+ const Label = LabelComponent ? (LabelComponent === null || LabelComponent === void 0 ? void 0 : LabelComponent({ node, isLeaf: !children })) : (React__default['default'].createElement("span", { tabIndex: !children ? 0 : -1, className: classnames__default['default'](main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeLabelContent], css_classes.TREE_NODE_CSS_CLASSES.treeNodeLabelContent) }, node.label ? node.label : node.id));
29
+ const Content = ContentComponent ? (ContentComponent === null || ContentComponent === void 0 ? void 0 : ContentComponent({ node, toggleNode, isLeaf: !children })) : (React__default['default'].createElement("div", { className: classnames__default['default'](css_classes.TREE_NODE_CSS_CLASSES.treeNodeLabel, main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeLabel]) },
30
+ React__default['default'].createElement("button", { className: classnames__default['default'](css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerBtn, main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerBtn], {
31
+ [css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerBtnExpanded]: node.expanded,
32
+ [main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerBtnExpanded]]: node.expanded
33
+ }), onClick: toggleNode },
34
+ React__default['default'].createElement("span", { className: classnames__default['default'](main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerBtnIcon], css_classes.TREE_NODE_CSS_CLASSES.treeNodeTogglerBtnIcon) },
35
+ React__default['default'].createElement(icon_list_arrow_down.IconListArrowDown, null))),
35
36
  Label));
36
37
  return (React__default['default'].createElement("li", { role: "treeitem", "aria-expanded": node.expanded, className: classnames__default['default'](main_module['default'][css_classes.TREE_NODE_CSS_CLASSES.treeNode], css_classes.TREE_NODE_CSS_CLASSES.treeNode, cssClassNames, {
37
38
  [css_classes.TREE_NODE_CSS_CLASSES.treeNodeExpanded]: node.expanded
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -10,10 +10,11 @@ const TREE_CSS_CLASSES = {
10
10
  const treeNodeBaseCssClass = `tree-node`;
11
11
  const TREE_NODE_CSS_CLASSES = {
12
12
  treeNode: treeNodeBaseCssClass,
13
- treeNodeToggler: `${treeNodeBaseCssClass}__toggler`,
14
- treeNodeTogglerIcon: `${treeNodeBaseCssClass}__toggler-icon`,
15
- treeNodeTogglerIconExpanded: `${treeNodeBaseCssClass}__toggler-icon_expanded`,
16
- treeNodeTogglerLabel: `${treeNodeBaseCssClass}__toggler-label`,
13
+ treeNodeTogglerBtn: `${treeNodeBaseCssClass}__toggler-btn`,
14
+ treeNodeTogglerBtnExpanded: `${treeNodeBaseCssClass}__toggler-btn_expanded`,
15
+ treeNodeTogglerBtnIcon: `${treeNodeBaseCssClass}__toggler-btn-icon`,
16
+ treeNodeLabelContent: `${treeNodeBaseCssClass}__label-content`,
17
+ treeNodeLabel: `${treeNodeBaseCssClass}__label`,
17
18
  treeNodeChildren: `${treeNodeBaseCssClass}__children`,
18
19
  treeNodeChildrenEnter: `${treeNodeBaseCssClass}__children-enter`,
19
20
  treeNodeChildrenEnterActive: `${treeNodeBaseCssClass}__children-enter-active`,
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -13,10 +13,11 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
13
13
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
14
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
15
15
 
16
- const Tree = ({ children, cssClassNames }) => {
16
+ // eslint-disable-next-line react/display-name
17
+ const Tree = React__default['default'].forwardRef(({ children, cssClassNames, cssStyles, onMouseEnter, onMouseLeave }, ref) => {
17
18
  return (React__default['default'].createElement(tree_provider.TreeProvider, null,
18
- React__default['default'].createElement("ul", { className: classnames__default['default'](main_module['default'][css_classes.TREE_CSS_CLASSES.tree], css_classes.TREE_CSS_CLASSES.tree, cssClassNames) }, children)));
19
- };
19
+ React__default['default'].createElement("ul", { onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ref: ref, style: cssStyles, className: classnames__default['default'](main_module['default'][css_classes.TREE_CSS_CLASSES.tree], css_classes.TREE_CSS_CLASSES.tree, cssClassNames) }, children)));
20
+ });
20
21
 
21
22
  exports.Tree = Tree;
22
23
  exports.default = Tree;
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -12,7 +12,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
12
12
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
13
  var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
14
14
 
15
- const Typography = ({ as = 'p', children, variant = 'h1', weight, transform, cssClasses, color, style }) => {
15
+ const Typography = ({ as = 'p', children, variant, weight, transform, cssClasses, color, style }) => {
16
16
  const typographyClasses = classnames__default['default'](main_module['default'][typography_constants.TYPOGRAPHY_CSS_CLASSES.typography], as ? main_module['default'][typography_constants.TYPOGRAPHY_COMPONENTS_TYPES_TO_CSS_CLASSES_MAP[as]] : '', variant ? main_module['default'][typography_constants.TYPOGRAPHY_COMPONENTS_TYPES_TO_CSS_CLASSES_MAP[variant]] : '', transform ? main_module['default'][typography_constants.TYPOGRAPHY_TRANSFORM_TO_CSS_CLASSES_MAP[transform]] : '', weight ? main_module['default'][typography_constants.TYPOGRAPHY_WEIGHT_TO_CSS_CLASSES_MAP[weight]] : '', color ? main_module['default'][typography_constants.TYPOGRAPHY_COLORS_TO_CSS_CLASSES_MAP[color]] : '', cssClasses);
17
17
  return React__default['default'].createElement(as, {
18
18
  className: typographyClasses,
@@ -22,8 +22,9 @@ const XhrImagePicker = ({ id, url, name, onUploaded, initialFile, errors, onErro
22
22
  ] }) => {
23
23
  const httpApi = use_http_api.useHttpApi();
24
24
  const pendingRequestRef = React__default['default'].useRef();
25
- const handleControlChange = async (fileList) => {
26
- onChange === null || onChange === void 0 ? void 0 : onChange(fileList);
25
+ const handleControlChange = async (file) => {
26
+ const { fileList, fileAsDataUrl } = file;
27
+ onChange === null || onChange === void 0 ? void 0 : onChange({ fileList, fileAsDataUrl });
27
28
  if (!fileList || !fileList.length)
28
29
  return;
29
30
  if (pendingRequestRef.current) {
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -4,8 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var styleInject_es = require('../../../../../external/style-inject/dist/style-inject.es.js');
6
6
 
7
- var css_248z = "/* font colors */\n/* actions */\n/* background */\n/* errors */\n/* borders */\n/* grid */\n/* scrollBar */\n/* sizes */\n.main-module_tree__3D4e3 {\n list-style: none;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.main-module_tree-node__1pkPL > .main-module_tree-node__toggler-label__3tpIn:focus-within {\n box-shadow: 0 0 3px 0 #3c83ec;\n outline: 1px solid #3c83ec;\n}\n.main-module_tree-node__toggler__Bhwx9 {\n display: flex;\n align-items: center;\n background: none;\n gap: 8px;\n width: 100%;\n}\n.main-module_tree-node__toggler__Bhwx9:focus-within {\n box-shadow: 0 0 3px 0 #3c83ec;\n outline: 1px solid #3c83ec;\n}\n.main-module_tree-node__toggler-icon__3QR9X {\n display: flex;\n align-items: center;\n}\n.main-module_tree-node__toggler-icon__3QR9X svg {\n transition: rotate 250ms ease-out;\n rotate: -95deg;\n}\n.main-module_tree-node__toggler-icon_expanded__31THq svg {\n rotate: 0deg;\n}\n.main-module_tree-node__children__QyEOR {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-top: 8px;\n transform-origin: top center;\n transition: opacity 250ms ease-out, scale 250ms ease-out;\n padding-left: 16px;\n list-style: none;\n will-change: true;\n}\n.main-module_tree-node__children-enter__vxFO- {\n opacity: 0;\n scale: 1 0;\n}\n.main-module_tree-node__children-enter-active__T6XIS {\n opacity: 1;\n scale: 1 1;\n}\n.main-module_tree-node__children-exit__1NXHe {\n opacity: 1;\n scale: 1 1;\n}\n.main-module_tree-node__children-exit-active__vdqAI {\n opacity: 0;\n scale: 1 0;\n}\n";
8
- var cssClasses = {"tree":"main-module_tree__3D4e3","tree-node":"main-module_tree-node__1pkPL","tree-node__toggler-label":"main-module_tree-node__toggler-label__3tpIn","tree-node__toggler":"main-module_tree-node__toggler__Bhwx9","tree-node__toggler-icon":"main-module_tree-node__toggler-icon__3QR9X","tree-node__toggler-icon_expanded":"main-module_tree-node__toggler-icon_expanded__31THq","tree-node__children":"main-module_tree-node__children__QyEOR","tree-node__children-enter":"main-module_tree-node__children-enter__vxFO-","tree-node__children-enter-active":"main-module_tree-node__children-enter-active__T6XIS","tree-node__children-exit":"main-module_tree-node__children-exit__1NXHe","tree-node__children-exit-active":"main-module_tree-node__children-exit-active__vdqAI"};
7
+ var css_248z = ".main-module_tree__3D4e3 {\n list-style: none;\n display: flex;\n flex-direction: column;\n gap: 8px;\n}\n.main-module_tree-node__toggler-btn__s9KoL {\n display: flex;\n align-items: center;\n padding: 8px 12px 8px 0;\n cursor: pointer;\n}\n.main-module_tree-node__toggler-btn__s9KoL svg {\n transition: rotate 250ms ease-out;\n rotate: -95deg;\n}\n.main-module_tree-node__toggler-btn_expanded__17Joe svg {\n rotate: 0deg;\n}\n.main-module_tree-node__toggler-btn-icon__OA4tk {\n display: flex;\n}\n.main-module_tree-node__label__DT728 {\n display: flex;\n align-items: center;\n background: none;\n}\n.main-module_tree-node__children__QyEOR {\n display: flex;\n flex-direction: column;\n gap: 8px;\n margin-top: 8px;\n transform-origin: top center;\n transition: opacity 250ms ease-out, scale 250ms ease-out;\n padding-left: 16px;\n list-style: none;\n will-change: true;\n}\n.main-module_tree-node__children-enter__vxFO- {\n opacity: 0;\n scale: 1 0;\n}\n.main-module_tree-node__children-enter-active__T6XIS {\n opacity: 1;\n scale: 1 1;\n}\n.main-module_tree-node__children-exit__1NXHe {\n opacity: 1;\n scale: 1 1;\n}\n.main-module_tree-node__children-exit-active__vdqAI {\n opacity: 0;\n scale: 1 0;\n}\n";
8
+ var cssClasses = {"tree":"main-module_tree__3D4e3","tree-node__toggler-btn":"main-module_tree-node__toggler-btn__s9KoL","tree-node__toggler-btn_expanded":"main-module_tree-node__toggler-btn_expanded__17Joe","tree-node__toggler-btn-icon":"main-module_tree-node__toggler-btn-icon__OA4tk","tree-node__label":"main-module_tree-node__label__DT728","tree-node__children":"main-module_tree-node__children__QyEOR","tree-node__children-enter":"main-module_tree-node__children-enter__vxFO-","tree-node__children-enter-active":"main-module_tree-node__children-enter-active__T6XIS","tree-node__children-exit":"main-module_tree-node__children-exit__1NXHe","tree-node__children-exit-active":"main-module_tree-node__children-exit-active__vdqAI"};
9
9
  styleInject_es['default'](css_248z);
10
10
 
11
11
  exports.default = cssClasses;
@@ -26,5 +26,6 @@ function useClickOutside(refs, callback) {
26
26
  });
27
27
  }
28
28
 
29
+ exports.default = useClickOutside;
29
30
  exports.useClickOutside = useClickOutside;
30
31
  //# sourceMappingURL=use_click_outside.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -12,6 +12,7 @@ var icon_tick = require('./assets/icon_tick.js');
12
12
  var index$8 = require('./components/stack/index.js');
13
13
  var index$7 = require('./components/label/index.js');
14
14
  var index$9 = require('./components/controls/index.js');
15
+ var use_click_outside = require('./hooks/use_click_outside.js');
15
16
  var icon_arrow = require('./assets/icon_arrow.js');
16
17
  var index$b = require('./components/controls/hoc/control_checkbox/index.js');
17
18
  var use_toggle = require('./components/dropdown/hooks/use_toggle.js');
@@ -83,6 +84,8 @@ var index$J = require('./components/with_loader/index.js');
83
84
  var values_syncer = require('./components/controls/components/values_syncer.js');
84
85
  var index$N = require('./components/tree/index.js');
85
86
  var tree_node = require('./components/tree/components/tree_node.js');
87
+ var scroll_sync_container = require('./components/scroll_sync/components/scroll_sync_container.js');
88
+ var index$O = require('./components/scroll_sync/index.js');
86
89
 
87
90
 
88
91
 
@@ -97,6 +100,7 @@ exports.IconTick = icon_tick['default'];
97
100
  exports.Stack = index$8['default'];
98
101
  exports.Label = index$7['default'];
99
102
  exports.Control = index$9['default'];
103
+ exports.useClickOutside = use_click_outside.useClickOutside;
100
104
  exports.IconArrow = icon_arrow['default'];
101
105
  exports.ControlCheckbox = index$b['default'];
102
106
  exports.useToggle = use_toggle.useToggle;
@@ -169,4 +173,6 @@ exports.WithLoader = index$J['default'];
169
173
  exports.ValuesSyncer = values_syncer['default'];
170
174
  exports.Tree = index$N.Tree;
171
175
  exports.TreeNode = tree_node.TreeNode;
176
+ exports.ScrollSyncContainer = scroll_sync_container.ScrollSyncContainer;
177
+ exports.ScrollSync = index$O.ScrollSync;
172
178
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -8,9 +8,10 @@ const ControlXhrImagePicker = ({ url, label, isRequired, id, name, onChange, all
8
8
  const handleControlError = (errors) => {
9
9
  setErrors(errors);
10
10
  };
11
- const handleControlChange = (fileList) => {
11
+ const handleControlChange = (file) => {
12
+ const { fileList, fileAsDataUrl } = file;
12
13
  setErrors(null);
13
- onChange === null || onChange === void 0 ? void 0 : onChange(fileList);
14
+ onChange === null || onChange === void 0 ? void 0 : onChange({ fileList, fileAsDataUrl });
14
15
  };
15
16
  return (React.createElement(Control, { errors: controlErrors, name: name, id: id },
16
17
  (label || hint) && (React.createElement(Control.Label, { id: id, isRequired: isRequired, additionalInfo: labelAdditionalInfo },
@@ -1 +1 @@
1
- {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
1
+ {"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
@@ -1,12 +1,12 @@
1
1
  import { HTMLAttributes, InputHTMLAttributes, ReactElement, ReactNode, Ref, TextareaHTMLAttributes } from 'react';
2
+ import { IFilePicker, IUseFilePickerOnChange } from "../file_picker/types";
3
+ import { IImagePicker, TImageSize } from "../image_picker/types";
2
4
  import { IMultiSelectProps, ISelectProps } from "../dropdown/types";
3
5
  import { IColorPickerProps } from "../color_picker/types";
4
- import { IFilePicker } from "../file_picker/types";
5
6
  import { IRange } from "../range/types";
7
+ import { IRequestResponse } from '@dreamcommerce/star_core';
6
8
  import React from 'react';
7
9
  import { TVerticalPosition } from "../../typings/general";
8
- import { IImagePicker, TImageSize } from "../image_picker/types";
9
- import { IRequestResponse } from '@dreamcommerce/star_core';
10
10
  export declare type TControlErrors = string[] | null | undefined;
11
11
  export interface IControlContext {
12
12
  errors?: TControlErrors;
@@ -175,7 +175,7 @@ export interface IControlXhrImagePicker extends IImagePicker, IControlCommonProp
175
175
  url: string;
176
176
  label?: string;
177
177
  isRequired?: boolean;
178
- onChange?: (fileList: FileList | null, size?: TImageSize) => void;
178
+ onChange?: (file: IUseFilePickerOnChange, size?: TImageSize) => void;
179
179
  labelAdditionalInfo?: string | ReactNode;
180
180
  onUploaded?: (resp: IRequestResponse<any>, file: File) => void;
181
181
  }