@startlibs/core 1.0.7 → 1.2.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/lib/SlotFill.mjs +232 -0
  2. package/lib/SlotFill.mjs.map +1 -0
  3. package/lib/StartlibsProvider.mjs +62 -0
  4. package/lib/StartlibsProvider.mjs.map +1 -0
  5. package/lib/hocs/WithLazyResource.mjs +74 -0
  6. package/lib/hocs/WithLazyResource.mjs.map +1 -0
  7. package/lib/hocs/WithRef.mjs +20 -0
  8. package/lib/hocs/WithRef.mjs.map +1 -0
  9. package/lib/hocs/consumes.mjs +22 -0
  10. package/lib/hocs/consumes.mjs.map +1 -0
  11. package/lib/hocs/withDialogError.mjs +22 -0
  12. package/lib/hocs/withDialogError.mjs.map +1 -0
  13. package/lib/hocs/withGroupEvent.mjs +45 -0
  14. package/lib/hocs/withGroupEvent.mjs.map +1 -0
  15. package/lib/hooks/WithConstant.mjs +13 -0
  16. package/lib/hooks/WithConstant.mjs.map +1 -0
  17. package/lib/hooks/WithEffect.mjs +12 -0
  18. package/lib/hooks/WithEffect.mjs.map +1 -0
  19. package/lib/hooks/useAsyncEffect.mjs +14 -0
  20. package/lib/hooks/useAsyncEffect.mjs.map +1 -0
  21. package/lib/hooks/useCallState.mjs +21 -0
  22. package/lib/hooks/useCallState.mjs.map +1 -0
  23. package/lib/hooks/useCallbackStable.mjs +17 -0
  24. package/lib/hooks/useCallbackStable.mjs.map +1 -0
  25. package/lib/hooks/useConstant.mjs +21 -0
  26. package/lib/hooks/useConstant.mjs.map +1 -0
  27. package/lib/hooks/useConsumerCatalog.mjs +25 -0
  28. package/lib/hooks/useConsumerCatalog.mjs.map +1 -0
  29. package/lib/hooks/useEnsureRef.mjs +9 -0
  30. package/lib/hooks/useEnsureRef.mjs.map +1 -0
  31. package/lib/hooks/useForceUpdate.mjs +28 -0
  32. package/lib/hooks/useForceUpdate.mjs.map +1 -0
  33. package/lib/hooks/useIsUnmounted.mjs +15 -0
  34. package/lib/hooks/useIsUnmounted.mjs.map +1 -0
  35. package/lib/hooks/usePopupToggle.mjs +33 -0
  36. package/lib/hooks/usePopupToggle.mjs.map +1 -0
  37. package/lib/hooks/usePrevious.mjs +28 -0
  38. package/lib/hooks/usePrevious.mjs.map +1 -0
  39. package/lib/hooks/useRecycleFocus.mjs +36 -0
  40. package/lib/hooks/useRecycleFocus.mjs.map +1 -0
  41. package/lib/hooks/useRefMemo.mjs +13 -0
  42. package/lib/hooks/useRefMemo.mjs.map +1 -0
  43. package/lib/hooks/useRefState.mjs +29 -0
  44. package/lib/hooks/useRefState.mjs.map +1 -0
  45. package/lib/hooks/useSignal.mjs +271 -0
  46. package/lib/hooks/useSignal.mjs.map +1 -0
  47. package/lib/hooks/useTitle.mjs +17 -0
  48. package/lib/hooks/useTitle.mjs.map +1 -0
  49. package/lib/hooks/useToggle.mjs +152 -0
  50. package/lib/hooks/useToggle.mjs.map +1 -0
  51. package/lib/hooks/useUpdateEffect.mjs +15 -0
  52. package/lib/hooks/useUpdateEffect.mjs.map +1 -0
  53. package/lib/hooks/useUpdateOnResize.mjs +18 -0
  54. package/lib/hooks/useUpdateOnResize.mjs.map +1 -0
  55. package/lib/hooks/useWithTransition.mjs +18 -0
  56. package/lib/hooks/useWithTransition.mjs.map +1 -0
  57. package/lib/hooks/willUseLayers.mjs +55 -0
  58. package/lib/hooks/willUseLayers.mjs.map +1 -0
  59. package/lib/hooks/willUseSharedCallback.mjs +70 -0
  60. package/lib/hooks/willUseSharedCallback.mjs.map +1 -0
  61. package/lib/hooks/willUseSharedState.mjs +41 -0
  62. package/lib/hooks/willUseSharedState.mjs.map +1 -0
  63. package/lib/hooks/willUseSpreadState.mjs +119 -0
  64. package/lib/hooks/willUseSpreadState.mjs.map +1 -0
  65. package/lib/index.cjs +1474 -0
  66. package/lib/index.cjs.map +1 -0
  67. package/lib/index.mjs +33 -0
  68. package/lib/index.mjs.map +1 -0
  69. package/lib-yak/SlotFill.mjs +230 -0
  70. package/lib-yak/SlotFill.mjs.map +1 -0
  71. package/lib-yak/StartlibsProvider.mjs +62 -0
  72. package/lib-yak/StartlibsProvider.mjs.map +1 -0
  73. package/lib-yak/hocs/WithLazyResource.mjs +74 -0
  74. package/lib-yak/hocs/WithLazyResource.mjs.map +1 -0
  75. package/lib-yak/hocs/WithRef.mjs +20 -0
  76. package/lib-yak/hocs/WithRef.mjs.map +1 -0
  77. package/lib-yak/hocs/consumes.mjs +22 -0
  78. package/lib-yak/hocs/consumes.mjs.map +1 -0
  79. package/lib-yak/hocs/withDialogError.mjs +22 -0
  80. package/lib-yak/hocs/withDialogError.mjs.map +1 -0
  81. package/lib-yak/hocs/withGroupEvent.mjs +45 -0
  82. package/lib-yak/hocs/withGroupEvent.mjs.map +1 -0
  83. package/lib-yak/hooks/WithConstant.mjs +13 -0
  84. package/lib-yak/hooks/WithConstant.mjs.map +1 -0
  85. package/lib-yak/hooks/WithEffect.mjs +12 -0
  86. package/lib-yak/hooks/WithEffect.mjs.map +1 -0
  87. package/lib-yak/hooks/useAsyncEffect.mjs +14 -0
  88. package/lib-yak/hooks/useAsyncEffect.mjs.map +1 -0
  89. package/lib-yak/hooks/useCallState.mjs +21 -0
  90. package/lib-yak/hooks/useCallState.mjs.map +1 -0
  91. package/lib-yak/hooks/useCallbackStable.mjs +17 -0
  92. package/lib-yak/hooks/useCallbackStable.mjs.map +1 -0
  93. package/lib-yak/hooks/useConstant.mjs +21 -0
  94. package/lib-yak/hooks/useConstant.mjs.map +1 -0
  95. package/lib-yak/hooks/useConsumerCatalog.mjs +25 -0
  96. package/lib-yak/hooks/useConsumerCatalog.mjs.map +1 -0
  97. package/lib-yak/hooks/useEnsureRef.mjs +9 -0
  98. package/lib-yak/hooks/useEnsureRef.mjs.map +1 -0
  99. package/lib-yak/hooks/useForceUpdate.mjs +28 -0
  100. package/lib-yak/hooks/useForceUpdate.mjs.map +1 -0
  101. package/lib-yak/hooks/useIsUnmounted.mjs +15 -0
  102. package/lib-yak/hooks/useIsUnmounted.mjs.map +1 -0
  103. package/lib-yak/hooks/usePopupToggle.mjs +33 -0
  104. package/lib-yak/hooks/usePopupToggle.mjs.map +1 -0
  105. package/lib-yak/hooks/usePrevious.mjs +28 -0
  106. package/lib-yak/hooks/usePrevious.mjs.map +1 -0
  107. package/lib-yak/hooks/useRecycleFocus.mjs +34 -0
  108. package/lib-yak/hooks/useRecycleFocus.mjs.map +1 -0
  109. package/lib-yak/hooks/useRefMemo.mjs +13 -0
  110. package/lib-yak/hooks/useRefMemo.mjs.map +1 -0
  111. package/lib-yak/hooks/useRefState.mjs +29 -0
  112. package/lib-yak/hooks/useRefState.mjs.map +1 -0
  113. package/lib-yak/hooks/useSignal.mjs +271 -0
  114. package/lib-yak/hooks/useSignal.mjs.map +1 -0
  115. package/lib-yak/hooks/useTitle.mjs +17 -0
  116. package/lib-yak/hooks/useTitle.mjs.map +1 -0
  117. package/lib-yak/hooks/useToggle.mjs +152 -0
  118. package/lib-yak/hooks/useToggle.mjs.map +1 -0
  119. package/lib-yak/hooks/useUpdateEffect.mjs +15 -0
  120. package/lib-yak/hooks/useUpdateEffect.mjs.map +1 -0
  121. package/lib-yak/hooks/useUpdateOnResize.mjs +18 -0
  122. package/lib-yak/hooks/useUpdateOnResize.mjs.map +1 -0
  123. package/lib-yak/hooks/useWithTransition.mjs +18 -0
  124. package/lib-yak/hooks/useWithTransition.mjs.map +1 -0
  125. package/lib-yak/hooks/willUseLayers.mjs +55 -0
  126. package/lib-yak/hooks/willUseLayers.mjs.map +1 -0
  127. package/lib-yak/hooks/willUseSharedCallback.mjs +70 -0
  128. package/lib-yak/hooks/willUseSharedCallback.mjs.map +1 -0
  129. package/lib-yak/hooks/willUseSharedState.mjs +41 -0
  130. package/lib-yak/hooks/willUseSharedState.mjs.map +1 -0
  131. package/lib-yak/hooks/willUseSpreadState.mjs +119 -0
  132. package/lib-yak/hooks/willUseSpreadState.mjs.map +1 -0
  133. package/lib-yak/index.mjs +33 -0
  134. package/lib-yak/index.mjs.map +1 -0
  135. package/package.json +53 -30
  136. package/src/SlotFill.jsx +166 -0
  137. package/src/StartlibsProvider.jsx +62 -0
  138. package/src/hocs/WithLazyResource.jsx +32 -0
  139. package/src/hocs/WithRef.js +20 -0
  140. package/src/hocs/Wrapper.jsx +40 -0
  141. package/src/hocs/consumes.jsx +16 -0
  142. package/src/hocs/withDialogError.jsx +16 -0
  143. package/src/hocs/withGroupEvent.jsx +43 -0
  144. package/src/hooks/WithConstant.jsx +7 -0
  145. package/src/hooks/WithEffect.jsx +6 -0
  146. package/src/hooks/useAsyncEffect.jsx +11 -0
  147. package/src/hooks/useCallState.js +15 -0
  148. package/src/hooks/useCallbackStable.jsx +12 -0
  149. package/src/hooks/useConstant.js +20 -0
  150. package/src/hooks/useConsumerCatalog.jsx +21 -0
  151. package/src/hooks/useEnsureRef.js +6 -0
  152. package/src/hooks/useForceUpdate.jsx +16 -0
  153. package/src/hooks/useIsUnmounted.jsx +12 -0
  154. package/src/hooks/usePopupToggle.js +30 -0
  155. package/src/hooks/usePrevious.jsx +27 -0
  156. package/src/hooks/useRecycleFocus.jsx +26 -0
  157. package/src/hooks/useRefMemo.jsx +10 -0
  158. package/src/hooks/useRefState.js +26 -0
  159. package/src/hooks/useSignal.jsx +193 -0
  160. package/src/hooks/useTitle.jsx +12 -0
  161. package/src/hooks/useToggle.js +126 -0
  162. package/src/hooks/useUpdateEffect.js +14 -0
  163. package/src/hooks/useUpdateOnResize.jsx +14 -0
  164. package/src/hooks/useWithTransition.jsx +14 -0
  165. package/src/hooks/willUseLayers.jsx +42 -0
  166. package/src/hooks/willUseSharedCallback.jsx +60 -0
  167. package/src/hooks/willUseSharedState.jsx +34 -0
  168. package/src/hooks/willUseSpreadState.jsx +103 -0
  169. package/src/index.js +32 -0
  170. package/.babelrc +0 -27
  171. package/lib/index.js +0 -1921
  172. package/rollup.config.js +0 -53
  173. package/yarn-error.log +0 -3374
package/lib/index.js DELETED
@@ -1,1921 +0,0 @@
1
- import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
2
- import _createClass from '@babel/runtime/helpers/createClass';
3
- import _possibleConstructorReturn from '@babel/runtime/helpers/possibleConstructorReturn';
4
- import _getPrototypeOf from '@babel/runtime/helpers/getPrototypeOf';
5
- import _inherits from '@babel/runtime/helpers/inherits';
6
- import _debounce from 'lodash/fp/debounce';
7
- import React, { useCallback, useState, useRef, useEffect, useMemo, useContext, useLayoutEffect, useReducer, useInsertionEffect, startTransition, use } from 'react';
8
- import { callIfFunction, fixMediaQuery, ifUndefined, formatPath, _s, callIfFunctions, callMany } from '@startlibs/utils';
9
- import { clearPopups as clearPopups$1, SlotProvider as SlotProvider$1, willUseSharedCallback as willUseSharedCallback$1, useConsumerCatalog as useConsumerCatalog$1, useRefState as useRefState$1, useIsUnmounted as useIsUnmounted$1, useCatalogManager as useCatalogManager$1, willUseSharedState as willUseSharedState$1, useConstant as useConstant$1, useCallState as useCallState$1, useToggle as useToggle$1, willUseLayers as willUseLayers$1, useForceUpdate as useForceUpdate$1, useLazyConstant as useLazyConstant$1 } from '@startlibs/core';
10
- import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
11
- import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
12
- import _set from 'lodash/fp/set';
13
- import _update from 'lodash/fp/update';
14
- import _isFunction from 'lodash/fp/isFunction';
15
- import _get from 'lodash/fp/get';
16
- import _isArray from 'lodash/fp/isArray';
17
- import _isString from 'lodash/fp/isString';
18
- import _objectDestructuringEmpty from '@babel/runtime/helpers/objectDestructuringEmpty';
19
- import _objectSpread from '@babel/runtime/helpers/objectSpread';
20
- import _extends from '@babel/runtime/helpers/extends';
21
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
22
- import _unset from 'lodash/fp/unset';
23
- import _uniqueId from 'lodash/fp/uniqueId';
24
- import _differenceBy from 'lodash/fp/differenceBy';
25
- import _findIndex from 'lodash/fp/findIndex';
26
- import _isFinite from 'lodash/fp/isFinite';
27
- import _max from 'lodash/fp/max';
28
- import _flatMap from 'lodash/fp/flatMap';
29
- import _without from 'lodash/fp/without';
30
- import _union from 'lodash/fp/union';
31
- import _flow from 'lodash/fp/flow';
32
- import ReactDOM from 'react-dom';
33
- import styled from 'styled-components';
34
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
35
- import mitt from 'mitt';
36
- import _typeof from '@babel/runtime/helpers/typeof';
37
- import _regeneratorRuntime from '@babel/runtime/regenerator';
38
- import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
39
- import _isPlainObject from 'lodash/fp/isPlainObject';
40
- import _identity from 'lodash/fp/identity';
41
- import 'lodash/array';
42
-
43
- var StartlibsContext = React.createContext({});
44
- var PopupContext = React.createContext({});
45
- var StartlibsMetacontext = React.createContext(function () {});
46
- var StartlibsConsumer = StartlibsContext.Consumer;
47
- var wrappeStyle = {
48
- height: '100%'
49
- };
50
- var StartlibsProvider =
51
- /*#__PURE__*/
52
- function (_React$Component) {
53
- _inherits(StartlibsProvider, _React$Component);
54
-
55
- function StartlibsProvider() {
56
- var _getPrototypeOf2;
57
-
58
- var _this;
59
-
60
- _classCallCheck(this, StartlibsProvider);
61
-
62
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
63
- args[_key] = arguments[_key];
64
- }
65
-
66
- _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(StartlibsProvider)).call.apply(_getPrototypeOf2, [this].concat(args)));
67
- _this.openToggles = new Map();
68
-
69
- _this.popupToggleRender = function (_ref, ref) {
70
- var isOpen = _ref.isOpen,
71
- close = _ref.close;
72
-
73
- if (isOpen && !_this.openToggles.has(ref)) {
74
- _this.closePopup();
75
-
76
- _this.openToggles.set(ref, close);
77
- }
78
- };
79
-
80
- _this.closePopup = function () {
81
- clearPopups$1();
82
- };
83
-
84
- _this.startlibsMeta = new Map();
85
-
86
- _this.getMeta = function (key, initValue) {
87
- var exists = _this.startlibsMeta.get(key);
88
-
89
- if (exists) return exists;
90
-
91
- _this.startlibsMeta.set(key, callIfFunction(initValue));
92
-
93
- return initValue;
94
- };
95
-
96
- return _this;
97
- }
98
-
99
- _createClass(StartlibsProvider, [{
100
- key: "componentDidMount",
101
- value: function componentDidMount() {
102
- fixMediaQuery();
103
-
104
- var addVHFix = function addVHFix() {
105
- var _document$documentEle, _document$documentEle2;
106
-
107
- var vh = window.innerHeight * 0.01;
108
- (_document$documentEle = document.documentElement) === null || _document$documentEle === void 0 ? void 0 : (_document$documentEle2 = _document$documentEle.style) === null || _document$documentEle2 === void 0 ? void 0 : _document$documentEle2.setProperty('--vh', "".concat(vh, "px"));
109
- };
110
-
111
- window.addEventListener('resize', _debounce(200, addVHFix));
112
- addVHFix();
113
- }
114
- }, {
115
- key: "render",
116
- value: function render() {
117
- return React.createElement(StartlibsContext.Provider, {
118
- value: this.props.value
119
- }, React.createElement(StartlibsMetacontext.Provider, {
120
- value: this.getMeta
121
- }, React.createElement(PopupContext.Provider, {
122
- value: this.popupToggleRender
123
- }, React.createElement("div", {
124
- style: wrappeStyle,
125
- onClick: this.closePopup
126
- }, React.createElement(SlotProvider$1, null, this.props.children)))));
127
- }
128
- }]);
129
-
130
- return StartlibsProvider;
131
- }(React.Component);
132
-
133
- var willUseLayers = function willUseLayers() {
134
- var useEffect = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : React.useEffect;
135
-
136
- var _willUseSharedCallbac = willUseSharedCallback$1(useEffect),
137
- _willUseSharedCallbac2 = _slicedToArray(_willUseSharedCallbac, 3),
138
- useRegisterSharedCallback = _willUseSharedCallbac2[0],
139
- callGroup = _willUseSharedCallbac2[1],
140
- _getSize = _willUseSharedCallbac2[2];
141
-
142
- var useLayer = function useLayer() {
143
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
144
- onFirst = _ref.onFirst,
145
- onEmpty = _ref.onEmpty,
146
- onTop = _ref.onTop,
147
- onRemove = _ref.onRemove;
148
-
149
- var listener = arguments.length > 1 ? arguments[1] : undefined;
150
- var resetIndex = useCallback(function () {
151
- setIndex(getIndex());
152
-
153
- if (getIndex() + 1 === _getSize()) {
154
- callIfFunction(onTop, getIndex);
155
- }
156
- }, []);
157
- var getIndex = useRegisterSharedCallback(resetIndex, listener);
158
-
159
- var _useState = useState(getIndex()),
160
- _useState2 = _slicedToArray(_useState, 2),
161
- index = _useState2[0],
162
- setIndex = _useState2[1];
163
-
164
- useEffect(function () {
165
- if (getIndex() === 0) {
166
- callIfFunction(onFirst);
167
- }
168
-
169
- resetIndex();
170
- return function () {
171
- callIfFunction(onRemove, _getSize());
172
-
173
- if (_getSize() === 0) {
174
- callIfFunction(onEmpty);
175
- }
176
-
177
- callGroup();
178
- };
179
- }, []);
180
- return [index, {
181
- isFirst: function isFirst() {
182
- return getIndex() === 1;
183
- },
184
- isTop: function isTop() {
185
- return getIndex() === _getSize() - 1;
186
- },
187
- isEmpty: function isEmpty() {
188
- return _getSize() === 0;
189
- },
190
- getSize: function getSize() {
191
- return _getSize();
192
- }
193
- }];
194
- };
195
-
196
- return [useLayer, _getSize];
197
- };
198
-
199
- var callList = function callList(list, firstArg) {
200
- for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
201
- args[_key - 2] = arguments[_key];
202
- }
203
-
204
- return list.map(function (_ref) {
205
- var current = _ref.current;
206
- return typeof firstArg === 'function' ? firstArg(current) : current.apply(void 0, [firstArg].concat(args));
207
- });
208
- };
209
-
210
- var willUseSharedCallback = function willUseSharedCallback() {
211
- var useEffect = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : React.useEffect;
212
- var mountedCallbacks = [];
213
- var listenerCallbacks = [];
214
-
215
- var remove = function remove(ref) {
216
- return mountedCallbacks = mountedCallbacks.filter(function (_) {
217
- return _ !== ref;
218
- });
219
- };
220
-
221
- var add = function add(ref) {
222
- return mountedCallbacks = mountedCallbacks.concat([ref]);
223
- };
224
-
225
- var get = function get() {
226
- return mountedCallbacks;
227
- };
228
-
229
- var removeListener = function removeListener(ref) {
230
- return listenerCallbacks = listenerCallbacks.filter(function (_) {
231
- return _ !== ref;
232
- });
233
- };
234
-
235
- var addListener = function addListener(ref) {
236
- return listenerCallbacks = listenerCallbacks.concat([ref]);
237
- };
238
-
239
- var getListeners = function getListeners(ref) {
240
- return listenerCallbacks;
241
- };
242
-
243
- var lastCall = {
244
- current: null,
245
- index: 0
246
- };
247
-
248
- var call = function call() {
249
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
250
- args[_key2] = arguments[_key2];
251
- }
252
-
253
- var resp = callList.apply(void 0, [get()].concat(args));
254
- callList.apply(void 0, [getListeners()].concat(args));
255
- lastCall.current = args;
256
- lastCall.index++;
257
- return resp;
258
- };
259
-
260
- var getSize = function getSize() {
261
- return get().length;
262
- };
263
-
264
- var useRegister = function useRegister(callback) {
265
- var listener = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
266
- var ref = useRef(callback);
267
-
268
- if (ref.current !== callback) {
269
- ref.current = callback;
270
- }
271
-
272
- var lastCallIndex = lastCall.index;
273
- useEffect(function () {
274
- if (!ref.current) {
275
- return;
276
- }
277
-
278
- if (listener) {
279
- addListener(ref);
280
- } else {
281
- add(ref);
282
-
283
- if (lastCallIndex !== lastCall.index && lastCall.current) {
284
- callList.apply(void 0, [[ref]].concat(_toConsumableArray(lastCall.current)));
285
- }
286
- }
287
-
288
- return function () {
289
- if (listener) {
290
- removeListener(ref);
291
- } else {
292
- remove(ref);
293
- }
294
- };
295
- }, []);
296
- return function () {
297
- return get().indexOf(ref);
298
- };
299
- };
300
-
301
- return [useRegister, call, getSize];
302
- };
303
-
304
- var notDefined = {};
305
- var willUseSharedState = function willUseSharedState(initialValue) {
306
- var _willUseSharedCallbac = willUseSharedCallback$1(),
307
- _willUseSharedCallbac2 = _slicedToArray(_willUseSharedCallbac, 3),
308
- useRegisterGroupCallback = _willUseSharedCallbac2[0],
309
- callGroup = _willUseSharedCallbac2[1],
310
- getSize = _willUseSharedCallbac2[2];
311
-
312
- var sharedValue = ifUndefined(initialValue, notDefined);
313
-
314
- var setGroupState = function setGroupState(newValue) {
315
- sharedValue = callIfFunction(newValue, sharedValue);
316
- callGroup(sharedValue);
317
- };
318
-
319
- var refState = function refState() {
320
- useRegisterGroupCallback();
321
- return [function () {
322
- return sharedValue;
323
- }, setGroupState];
324
- };
325
-
326
- var valueState = function valueState(defaultValue) {
327
- var prevValue = sharedValue !== notDefined ? sharedValue : defaultValue;
328
-
329
- if (prevValue === defaultValue) {
330
- sharedValue = defaultValue;
331
- }
332
-
333
- var _useState = useState(prevValue),
334
- _useState2 = _slicedToArray(_useState, 2),
335
- value = _useState2[0],
336
- setValue = _useState2[1];
337
-
338
- useRegisterGroupCallback(setValue);
339
- return [value, setGroupState];
340
- };
341
-
342
- var clear = function clear() {
343
- sharedValue = notDefined;
344
- };
345
-
346
- return [valueState, refState, setGroupState, function () {
347
- return sharedValue;
348
- }, clear];
349
- };
350
-
351
- var updateAllInputsState = function updateAllInputsState(inputs, values) {
352
- var deferedUndefined = [];
353
- inputs.forEach(function (input) {
354
- var _input = _slicedToArray(input, 2),
355
- setValue = _input[0],
356
- selector = _input[1];
357
-
358
- var newValue = selector(values);
359
-
360
- if (newValue === undefined) {
361
- deferedUndefined.push([setValue, newValue]);
362
- } else {
363
- setValue(newValue);
364
- }
365
- });
366
- deferedUndefined.forEach(function (_ref) {
367
- var _ref2 = _slicedToArray(_ref, 2),
368
- set = _ref2[0],
369
- value = _ref2[1];
370
-
371
- return set(value);
372
- });
373
- };
374
-
375
- var pathSelector = function pathSelector(path) {
376
- return _s.get(path || []);
377
- };
378
-
379
- var parsePathOrSelector = function parsePathOrSelector(pathOrSelector) {
380
- var isNotSelector = typeof pathOrSelector !== 'function';
381
-
382
- if (isNotSelector) {
383
- return [formatPath(pathOrSelector), pathSelector(pathOrSelector)];
384
- } else {
385
- return ['', pathOrSelector];
386
- }
387
- };
388
-
389
- var willUseSpreadState = function willUseSpreadState(defaultContextValue) {
390
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
391
- var Context = React.createContext(defaultContextValue);
392
- var EMPTY_GLOBAL = {};
393
- var prevInitState = EMPTY_GLOBAL;
394
- var globalState = EMPTY_GLOBAL;
395
-
396
- var getGlobalState = function getGlobalState(key) {
397
- return _isString(key) || _isArray(key) ? _get(key, globalState) : globalState;
398
- };
399
-
400
- var useProvideSpreadState = function useProvideSpreadState(initState, setCallback) {
401
- var _useConsumerCatalog = useConsumerCatalog$1(function (input) {
402
- return updateAllInputsState([input], state.get());
403
- }),
404
- _useConsumerCatalog2 = _slicedToArray(_useConsumerCatalog, 2),
405
- consumerList = _useConsumerCatalog2[0],
406
- manager = _useConsumerCatalog2[1];
407
-
408
- var state = useRefState$1(initState, setCallback);
409
-
410
- if (options.initRefCheck) {
411
- if (prevInitState !== initState) {
412
- globalState = initState;
413
- }
414
-
415
- prevInitState = initState;
416
- }
417
-
418
- if (globalState === EMPTY_GLOBAL) {
419
- globalState = initState;
420
- }
421
-
422
- useEffect(function () {
423
- globalState = state.get();
424
- }, []);
425
-
426
- var setState = function setState(newState, fastPath, config) {
427
- // console.log("Fastpath noop:"+fastPath)
428
- state.set(newState, config);
429
- globalState = state.get();
430
- updateAllInputsState(consumerList(), state.get());
431
- };
432
-
433
- var contextValue = useMemo(function () {
434
- return [state.get, setState, manager];
435
- }, []);
436
- return [Context.Provider, contextValue, [state.get, setState]];
437
- };
438
-
439
- var useSpreadState = function useSpreadState(pathOrSelector, inputs) {
440
- var _useContext = useContext(Context),
441
- _useContext2 = _slicedToArray(_useContext, 3),
442
- getSpreadState = _useContext2[0],
443
- setSpreadState = _useContext2[1],
444
- manager = _useContext2[2];
445
-
446
- var _parsePathOrSelector = parsePathOrSelector(pathOrSelector),
447
- _parsePathOrSelector2 = _slicedToArray(_parsePathOrSelector, 2),
448
- path = _parsePathOrSelector2[0],
449
- selector = _parsePathOrSelector2[1];
450
-
451
- var pathOrInput = [path] || inputs || [];
452
-
453
- var _useState = useState(selector(getSpreadState())),
454
- _useState2 = _slicedToArray(_useState, 2),
455
- value = _useState2[0],
456
- setValue = _useState2[1];
457
-
458
- var isUnmounted = useIsUnmounted$1();
459
- var currentPath = useRefState$1(path);
460
-
461
- if (path !== currentPath.get()) {
462
- /* when path changes, the consumerCatalogCallback will update the new value
463
- * another solution would be to call setValue here directly
464
- * the return value will still be the old, but will be changed before render, just like getDerivedStateFromProps
465
- *
466
- * if there's a need for the return value to be the same, the value or, if enters here new value,
467
- * can be returned in an temp variable
468
- * */
469
- currentPath.set(path);
470
- }
471
-
472
- var input = useMemo(function () {
473
- return [function (v) {
474
- /* noop for elements that may be unregistered while looping through consumerList */
475
- if (path === currentPath.get() && !isUnmounted()) {
476
- setValue(v);
477
- }
478
- }, selector];
479
- }, pathOrInput);
480
- useCatalogManager$1(manager, input);
481
- var setState = useCallback(function (v) {
482
- return setSpreadState((_isFunction(v) ? pathOrSelector === undefined ? function () {
483
- return v;
484
- } : _update : _set)(path, v), path);
485
- }, pathOrInput);
486
-
487
- var getValue = function getValue() {
488
- return selector(getGlobalState());
489
- };
490
-
491
- return [value, setState, getValue];
492
- };
493
-
494
- return [useProvideSpreadState, useSpreadState, Context, getGlobalState];
495
- };
496
-
497
- var SlotContext = React.createContext(new Map());
498
-
499
- var _willUseSharedState = willUseSharedState$1(),
500
- _willUseSharedState2 = _slicedToArray(_willUseSharedState, 2),
501
- useFillHookState = _willUseSharedState2[0],
502
- useFillHookStateRef = _willUseSharedState2[1];
503
-
504
- var _willUseSharedState3 = willUseSharedState$1(),
505
- _willUseSharedState4 = _slicedToArray(_willUseSharedState3, 2),
506
- useHiddenFillHookState = _willUseSharedState4[0],
507
- useHiddenFillHookStateRef = _willUseSharedState4[1];
508
-
509
- var DEFAULT_CONTEXT = new Map();
510
- var SlotProvider = function SlotProvider(_ref) {
511
- var children = _ref.children;
512
- return React.createElement(SlotContext.Provider, {
513
- value: DEFAULT_CONTEXT
514
- }, children, React.createElement(React.Suspense, {
515
- fallback: null
516
- }, React.createElement(FillHooks, null)), React.createElement(HiddenFillHooks, null));
517
- };
518
- var Slot = function Slot(_ref2) {
519
- var name = _ref2.name,
520
- children = _ref2.children,
521
- rest = _objectWithoutProperties(_ref2, ["name", "children"]);
522
-
523
- var ref = useRef();
524
- var slotInfo = useConstant$1({
525
- ref: ref
526
- });
527
- var slots = useContext(SlotContext);
528
- useLayoutEffect(function () {
529
- var previous = slots.get(name);
530
- var updates = (previous === null || previous === void 0 ? void 0 : previous.updates) || [];
531
-
532
- if (previous === null || previous === void 0 ? void 0 : previous.children) ;
533
-
534
- slots.set(name, _flow(_update('infos', _union([slotInfo])))(previous));
535
- updates.forEach(function (v) {
536
- return v({});
537
- });
538
- return function () {
539
- var _previous$infos, _previous$updates;
540
-
541
- var previous = slots.get(name);
542
- previous.infos = _without([slotInfo], previous.infos);
543
-
544
- if (!((_previous$infos = previous.infos) === null || _previous$infos === void 0 ? void 0 : _previous$infos.length) && !((_previous$updates = previous.updates) === null || _previous$updates === void 0 ? void 0 : _previous$updates.length)) {
545
- slots.delete(name);
546
- }
547
- };
548
- }, [name]);
549
- return children ? React.createElement(React.Fragment, null, React.createElement("div", _extends({
550
- "data-id": name
551
- }, rest, {
552
- ref: ref
553
- })), React.Children.map(children, function (c) {
554
- return React.cloneElement(c, _objectSpread({}, c.props, {
555
- name: name,
556
- stack: Number.MIN_SAFE_INTEGER
557
- }));
558
- })) : React.createElement("div", _extends({
559
- "data-id": name
560
- }, rest, {
561
- ref: ref
562
- }));
563
- };
564
- var Invisible = styled.div.withConfig({
565
- displayName: "SlotFill__Invisible",
566
- componentId: "h3oh7r-0"
567
- })(["display:none"]);
568
-
569
- var FillBeforeFlip = function FillBeforeFlip(_ref3) {
570
- var name = _ref3.name,
571
- children = _ref3.children,
572
- slot = _ref3.slot;
573
- var slots = useContext(SlotContext);
574
- var ref = useRef();
575
- useLayoutEffect(function () {
576
- var _slots$get;
577
-
578
- var infos = ((_slots$get = slots.get(name)) === null || _slots$get === void 0 ? void 0 : _slots$get.infos) || [];
579
-
580
- var mounted = _flatMap(function (_ref4) {
581
- var ref = _ref4.ref;
582
- return ref === null || ref === void 0 ? void 0 : ref.current;
583
- }, infos);
584
-
585
- var clones = [];
586
-
587
- var getClone = function getClone() {
588
- var cloned = ref.current.cloneNode(true);
589
- cloned.className = 'JS-fill-flip';
590
- clones.push(cloned);
591
- return cloned;
592
- };
593
-
594
- mounted.map(function (_) {
595
- return _.appendChild(getClone());
596
- });
597
- return function () {
598
- clones.forEach(function (el) {
599
- return el.remove();
600
- });
601
- };
602
- }, []);
603
- return React.createElement(Invisible, {
604
- ref: ref
605
- }, children);
606
- };
607
-
608
- var useFillState = function useFillState(name, stack) {
609
- var forceUpdate = React.useState(false)[1];
610
- var slots = useContext(SlotContext);
611
- var renderSlot = slots.get(name);
612
-
613
- var maxStack = _max(renderSlot === null || renderSlot === void 0 ? void 0 : renderSlot.stacks);
614
-
615
- var onStack = !_isFinite(maxStack) || maxStack === stack;
616
- useLayoutEffect(function () {
617
- var slot = slots.get(name);
618
-
619
- var updatedSlot = _flow(_update('updates', _union([forceUpdate])), _update('stacks', _union([stack])))(slot);
620
-
621
- slots.set(name, updatedSlot);
622
- updatedSlot.updates.forEach(function (v) {
623
- return v({});
624
- });
625
- return function () {
626
- var previous = slots.get(name);
627
- var index = previous.updates.indexOf(forceUpdate);
628
-
629
- var next = _flow(_update('updates', _s.removeAt(index)), _update('stacks', _s.removeAt(index)))(previous);
630
-
631
- slots.set(name, next);
632
- next.updates.forEach(function (v) {
633
- return v({});
634
- });
635
- };
636
- }, []);
637
- return [renderSlot, onStack];
638
- };
639
-
640
- var Fill = function Fill(_ref5) {
641
- var name = _ref5.name,
642
- children = _ref5.children,
643
- _ref5$stack = _ref5.stack,
644
- stack = _ref5$stack === void 0 ? 0 : _ref5$stack,
645
- mountBeforeFlip = _ref5.mountBeforeFlip;
646
-
647
- var _useFillState = useFillState(name, stack),
648
- _useFillState2 = _slicedToArray(_useFillState, 2),
649
- slot = _useFillState2[0],
650
- onStack = _useFillState2[1];
651
-
652
- if ((slot === null || slot === void 0 ? void 0 : slot.infos) && onStack) {
653
- return slot === null || slot === void 0 ? void 0 : slot.infos.map(function (info) {
654
- var _info$ref;
655
-
656
- return ((_info$ref = info.ref) === null || _info$ref === void 0 ? void 0 : _info$ref.current) && ReactDOM.createPortal(callIfFunction(children, info), info.ref.current);
657
- });
658
- } else if (mountBeforeFlip) {
659
- return React.createElement(FillBeforeFlip, {
660
- name: name,
661
- slot: slot
662
- }, children);
663
- } else {
664
- return null;
665
- }
666
- };
667
-
668
- var FillHooks = function FillHooks(_ref6) {
669
- _objectDestructuringEmpty(_ref6);
670
-
671
- var _useFillHookState = useFillHookState({}),
672
- _useFillHookState2 = _slicedToArray(_useFillHookState, 1),
673
- hooked = _useFillHookState2[0];
674
-
675
- return Object.entries(hooked).map(function (_ref7) {
676
- var _ref8 = _slicedToArray(_ref7, 2),
677
- name = _ref8[0],
678
- childs = _ref8[1];
679
-
680
- return childs.map(function (_ref9, i) {
681
- var children = _ref9.children;
682
- return React.createElement(Fill, {
683
- key: name + i,
684
- name: name
685
- }, children);
686
- });
687
- });
688
- };
689
-
690
- var uid = 0;
691
- var useFill = function useFill(name, children, inputs) {
692
- var _useFillHookStateRef = useFillHookStateRef(),
693
- _useFillHookStateRef2 = _slicedToArray(_useFillHookStateRef, 2),
694
- set = _useFillHookStateRef2[1];
695
-
696
- var key = useRef(uid++);
697
- useLayoutEffect(function () {
698
- if (children) {
699
- set(_update([name], function () {
700
- var list = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
701
-
702
- var index = _findIndex(['key', key.current], list);
703
-
704
- var value = {
705
- children: children,
706
- key: key.current
707
- };
708
-
709
- if (index >= 0) {
710
- return _set([index], value, list);
711
- } else {
712
- return list.concat(value);
713
- }
714
- }));
715
- } else {
716
- set(_update([name], _differenceBy('key', _differenceBy.placeholder, [{
717
- children: children,
718
- key: key.current
719
- }])));
720
- }
721
- }, inputs || children);
722
- useLayoutEffect(function () {
723
- return function () {
724
- return set(_update([name], _differenceBy('key', _differenceBy.placeholder, [{
725
- key: key.current
726
- }])));
727
- };
728
- }, []);
729
- };
730
-
731
- var HiddenFillHooks = function HiddenFillHooks(_ref10) {
732
- _objectDestructuringEmpty(_ref10);
733
-
734
- var _useHiddenFillHookSta = useHiddenFillHookState({}),
735
- _useHiddenFillHookSta2 = _slicedToArray(_useHiddenFillHookSta, 1),
736
- hookedChildren = _useHiddenFillHookSta2[0];
737
-
738
- return React.createElement("div", null, Object.values(hookedChildren));
739
- };
740
-
741
- var useHiddenFill = function useHiddenFill(children, inputs) {
742
- var _useHiddenFillHookSta3 = useHiddenFillHookStateRef(),
743
- _useHiddenFillHookSta4 = _slicedToArray(_useHiddenFillHookSta3, 2),
744
- set = _useHiddenFillHookSta4[1];
745
-
746
- var _useMemo = useMemo(function () {
747
- return _uniqueId("");
748
- }, []),
749
- _useMemo2 = _slicedToArray(_useMemo, 1),
750
- uid = _useMemo2[0];
751
-
752
- set(_set([uid], children ? React.cloneElement(children, {
753
- key: uid
754
- }) : null));
755
- useEffect(function () {
756
- return function () {
757
- return set(_unset([uid]));
758
- };
759
- }, []);
760
- };
761
-
762
- var propsOrConsume = function propsOrConsume(prop, Consumer, childrenAsFunction) {
763
- return prop ? childrenAsFunction(prop) : React.createElement(Consumer, null, childrenAsFunction);
764
- };
765
-
766
- var addConsumers = function addConsumers(Component, obj) {
767
- return Object.entries(obj).reduce(function (acc, _ref) {
768
- var _ref2 = _slicedToArray(_ref, 2),
769
- propKey = _ref2[0],
770
- Consumer = _ref2[1];
771
-
772
- return function (props) {
773
- return propsOrConsume(props[propKey], Consumer, function (v) {
774
- return acc(_objectSpread(_defineProperty({}, propKey, v), props));
775
- });
776
- };
777
- }, function (props) {
778
- return React.createElement(Component, props);
779
- });
780
- };
781
-
782
- var consumes = function consumes(obj) {
783
- return function (Component) {
784
- var withConsumers = addConsumers(Component, obj);
785
- return function (props) {
786
- return withConsumers(props);
787
- };
788
- };
789
- };
790
-
791
- var withDialogError = function withDialogError(Dialog) {
792
- var ErrorBoundedComponent = React.forwardRef(function (props, ref) {
793
- return React.createElement(Dialog, _extends({
794
- ref: ref
795
- }, props)); // const ErrorBoundary = __internals('ErrorBoundary')
796
-
797
- /*return (
798
- <ErrorBoundary Error={props.Error || __internals('DialogError')} closeDialog={props.closeDialog}>
799
- <Dialog {...props}/>
800
- </ErrorBoundary>
801
- )*/
802
- }); // ErrorBoundedComponent.contextTypes = {startlibs:()=>null}
803
-
804
- return ErrorBoundedComponent;
805
- };
806
-
807
- var GroupEventFactory = function GroupEventFactory() {
808
- var emitter = mitt();
809
-
810
- var WithGroupEvent =
811
- /*#__PURE__*/
812
- function (_React$Component) {
813
- _inherits(WithGroupEvent, _React$Component);
814
-
815
- function WithGroupEvent() {
816
- var _getPrototypeOf2;
817
-
818
- var _this;
819
-
820
- _classCallCheck(this, WithGroupEvent);
821
-
822
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
823
- args[_key] = arguments[_key];
824
- }
825
-
826
- _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(WithGroupEvent)).call.apply(_getPrototypeOf2, [this].concat(args)));
827
- _this.events = {};
828
-
829
- _this.processEvent = function (type, event) {
830
- (_this.events[type] || []).forEach(function (c) {
831
- return c(event);
832
- });
833
- };
834
-
835
- _this.groupEventProps = {
836
- on: function on(type, callback) {
837
- _this.events[type] = (_this.events[type] || []).concat(callback);
838
- },
839
- off: function off(type, callback) {
840
- _this.events[type] = (_this.events[type] || []).filter(function (e) {
841
- return e !== callback;
842
- });
843
- },
844
- emit: emitter.emit
845
- };
846
- return _this;
847
- }
848
-
849
- _createClass(WithGroupEvent, [{
850
- key: "componentDidMount",
851
- value: function componentDidMount() {
852
- emitter.on('*', this.processEvent);
853
- }
854
- }, {
855
- key: "componentWillUnmount",
856
- value: function componentWillUnmount() {
857
- emitter.off('*', this.processEvent);
858
- }
859
- }, {
860
- key: "render",
861
- value: function render() {
862
- return this.props.children(this.groupEventProps);
863
- }
864
- }]);
865
-
866
- return WithGroupEvent;
867
- }(React.Component);
868
-
869
- return WithGroupEvent;
870
- };
871
- var withGroupEvent = function withGroupEvent(Component) {
872
- var WithGroupEvent = GroupEventFactory();
873
- return React.forwardRef(function (props, ref) {
874
- return React.createElement(WithGroupEvent, null, function (groupEvent) {
875
- return React.createElement(Component, _extends({}, props, {
876
- ref: ref,
877
- groupEvent: groupEvent
878
- }));
879
- });
880
- });
881
- };
882
-
883
- var WithRef =
884
- /*#__PURE__*/
885
- function (_React$Component) {
886
- _inherits(WithRef, _React$Component);
887
-
888
- function WithRef(props) {
889
- var _this;
890
-
891
- _classCallCheck(this, WithRef);
892
-
893
- _this = _possibleConstructorReturn(this, _getPrototypeOf(WithRef).call(this, props));
894
- var total = props.length || props.children.length;
895
- var refs = new Array(total);
896
-
897
- for (var i = 0; i < total; i++) {
898
- refs[i] = React.createRef();
899
- }
900
-
901
- _this.createdRefs = refs;
902
- return _this;
903
- }
904
-
905
- _createClass(WithRef, [{
906
- key: "render",
907
- value: function render() {
908
- var children = this.props.children;
909
- return children.apply(void 0, _toConsumableArray(this.createdRefs));
910
- }
911
- }]);
912
-
913
- return WithRef;
914
- }(React.Component);
915
-
916
- var addExtraProp = function addExtraProp(element, extra) {
917
- var override = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
918
- return React.cloneElement(element, override ? _objectSpread({}, element.props, extra) : _objectSpread({}, extra, element.props), element.props.children);
919
- };
920
-
921
- var WithLazyPlaceholder = function WithLazyPlaceholder(_ref) {
922
- var value = _ref.value,
923
- fallback = _ref.fallback,
924
- children = _ref.children,
925
- _ref$forwardProps = _ref.forwardProps,
926
- forwardProps = _ref$forwardProps === void 0 ? false : _ref$forwardProps,
927
- props = _objectWithoutProperties(_ref, ["value", "fallback", "children", "forwardProps"]);
928
-
929
- return React.createElement(React.Suspense, {
930
- fallback: React.Children.map(children(fallback, {
931
- isLoading: true
932
- }), function (child) {
933
- return React.isValidElement(child) ? addExtraProp(child, {
934
- isLoading: true
935
- }, false) : child;
936
- })
937
- }, React.createElement(Load, {
938
- value: value,
939
- children: children,
940
- forwardProps: forwardProps && props
941
- }));
942
- };
943
- var WithLazyResource = function WithLazyResource(_ref2) {
944
- var value = _ref2.value,
945
- wrap = _ref2.wrap,
946
- fallback = _ref2.fallback,
947
- children = _ref2.children,
948
- _ref2$forwardProps = _ref2.forwardProps,
949
- forwardProps = _ref2$forwardProps === void 0 ? false : _ref2$forwardProps,
950
- props = _objectWithoutProperties(_ref2, ["value", "wrap", "fallback", "children", "forwardProps"]);
951
-
952
- return wrap || fallback !== undefined ? React.createElement(React.Suspense, {
953
- fallback: ifUndefined(fallback, null)
954
- }, React.createElement(Load, {
955
- value: value,
956
- forwardProps: forwardProps && props,
957
- children: children
958
- })) : React.createElement(Load, {
959
- value: value,
960
- children: children,
961
- forwardProps: forwardProps && props
962
- });
963
- };
964
-
965
- var Load = function Load(_ref3) {
966
- var value = _ref3.value,
967
- children = _ref3.children,
968
- forwardProps = _ref3.forwardProps;
969
- var loaded = _isArray(value) ? value.forEach(function (v) {
970
- return v.promise();
971
- }) || value.map(function (v) {
972
- return v.read();
973
- }) : value.read();
974
-
975
- var _useReducer = useReducer(function (s) {
976
- return s + 1;
977
- }, 0),
978
- _useReducer2 = _slicedToArray(_useReducer, 2),
979
- update = _useReducer2[1];
980
-
981
- var refresh = function refresh() {
982
- return Promise.all(_isArray(value) ? value.map(function (v) {
983
- return v.refresh().promise();
984
- }) : [value.refresh().promise()]).then(update);
985
- };
986
-
987
- return forwardProps ? addExtraProp(children(loaded, {
988
- refresh: refresh,
989
- update: update
990
- }), forwardProps) : children(loaded, {
991
- refresh: refresh,
992
- update: update
993
- });
994
- };
995
-
996
- var useCallbackStable = function useCallbackStable(fn) {
997
- var ref = React.useRef([fn, function () {
998
- return ref[0].apply(ref, arguments);
999
- }]).current; // Per Dan Abramov: useInsertionEffect executes marginally closer to the
1000
- // correct timing for ref synchronization than useLayoutEffect on React 18.
1001
- // See: https://github.com/facebook/react/pull/25881#issuecomment-1356244360
1002
-
1003
- useInsertionEffect(function () {
1004
- ref[0] = fn;
1005
- });
1006
- return ref[1];
1007
- };
1008
-
1009
- var WithEffect = function WithEffect(_ref) {
1010
- var _ref$inputs = _ref.inputs,
1011
- inputs = _ref$inputs === void 0 ? [] : _ref$inputs,
1012
- children = _ref.children;
1013
- useEffect(children, inputs);
1014
- return null;
1015
- };
1016
-
1017
- var useToggleInternal = function useToggleInternal() {
1018
- var startWith = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
1019
- var useStore = arguments.length > 1 ? arguments[1] : undefined;
1020
- var callback = arguments.length > 2 ? arguments[2] : undefined;
1021
- var key = arguments.length > 3 ? arguments[3] : undefined;
1022
- var isOpen = useStore(startWith);
1023
- var closing = useStore(false);
1024
- var refIsOpen = useRefState$1(isOpen.get());
1025
- var refIsClosing = useRefState$1(closing.get());
1026
- var timerId = useRef();
1027
- var isUnmounted = useIsUnmounted$1();
1028
-
1029
- var clearClosing = function clearClosing() {
1030
- if (refIsClosing.get() !== false) {
1031
- closing.set(false);
1032
- refIsClosing.set(false);
1033
- window.clearTimeout(timerId.current);
1034
- }
1035
- };
1036
-
1037
- var toggleWith = function toggleWith() {
1038
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
1039
- var calledValue = callIfFunction(value, refIsOpen.get());
1040
- var newValue = refIsOpen.get() === calledValue ? !calledValue : calledValue;
1041
-
1042
- if (!isUnmounted() && refIsOpen.get() !== newValue) {
1043
- var result = callIfFunction(callback, newValue, refIsOpen.get());
1044
-
1045
- if (result === false) {
1046
- return;
1047
- }
1048
-
1049
- isOpen.set(newValue);
1050
- refIsOpen.set(newValue);
1051
- clearClosing();
1052
- }
1053
- };
1054
-
1055
- var openWith = function openWith(value) {
1056
- if (process.env.NODE_ENV !== 'production' && key) {
1057
- console.log(key, refIsOpen.get() !== value ? "toggle" : "clear", refIsOpen.get(), value);
1058
- }
1059
-
1060
- var nextValue = callIfFunction(value, refIsOpen.get());
1061
-
1062
- if (refIsOpen.get() !== nextValue) {
1063
- toggleWith(function () {
1064
- return nextValue;
1065
- });
1066
- } else {
1067
- clearClosing();
1068
- }
1069
- };
1070
-
1071
- var nextClosingTick = function nextClosingTick(ticks, tickIndex) {
1072
- if (ticks.length) {
1073
- if (isNaN(ticks[0])) {
1074
- clearClosing();
1075
- } else if (!isNaN(ticks[0])) {
1076
- closing.set(tickIndex + 1);
1077
- refIsClosing.set(tickIndex + 1);
1078
- timerId.current = setTimeout(function () {
1079
- return nextClosingTick(ticks.slice(1), tickIndex + 1);
1080
- }, Number(ticks[0]));
1081
- }
1082
- } else {
1083
- openWith(false);
1084
- }
1085
- };
1086
-
1087
- var closeAfter = function closeAfter() {
1088
- if (process.env.NODE_ENV !== 'production' && key) {
1089
- console.log(key, !refIsOpen.get() || refIsClosing.get() ? "addCLosing" : "closing");
1090
- }
1091
-
1092
- if (!refIsOpen.get() || refIsClosing.get()) return;
1093
-
1094
- for (var _len = arguments.length, millisecs = new Array(_len), _key = 0; _key < _len; _key++) {
1095
- millisecs[_key] = arguments[_key];
1096
- }
1097
-
1098
- nextClosingTick(millisecs, 0);
1099
- };
1100
-
1101
- var _wait = function _wait(promise) {
1102
- var start = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1103
- var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
1104
- return (
1105
- /*#__PURE__*/
1106
- _asyncToGenerator(
1107
- /*#__PURE__*/
1108
- _regeneratorRuntime.mark(function _callee() {
1109
- var _len2,
1110
- args,
1111
- _key2,
1112
- _args = arguments;
1113
-
1114
- return _regeneratorRuntime.wrap(function _callee$(_context) {
1115
- while (1) {
1116
- switch (_context.prev = _context.next) {
1117
- case 0:
1118
- openWith(start);
1119
- _context.prev = 1;
1120
-
1121
- for (_len2 = _args.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
1122
- args[_key2] = _args[_key2];
1123
- }
1124
-
1125
- _context.next = 5;
1126
- return callIfFunction.apply(void 0, [promise].concat(args));
1127
-
1128
- case 5:
1129
- return _context.abrupt("return", _context.sent);
1130
-
1131
- case 6:
1132
- _context.prev = 6;
1133
- openWith(end);
1134
- return _context.finish(6);
1135
-
1136
- case 9:
1137
- case "end":
1138
- return _context.stop();
1139
- }
1140
- }
1141
- }, _callee, this, [[1,, 6, 9]]);
1142
- }))
1143
- );
1144
- };
1145
-
1146
- var setters = useMemo(function () {
1147
- return {
1148
- wait: function wait(promise) {
1149
- var start = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1150
- var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
1151
- return _wait(promise, start, end)();
1152
- },
1153
- willWait: _wait,
1154
- open: function open(e) {
1155
- if (process.env.NODE_ENV !== 'production') {
1156
- if (['string', 'number', 'boolean'].indexOf(_typeof(e)) >= 0) {
1157
- console.log("You are trying to open toggle with ".concat(e, ". Please, use openWith to open with a value"));
1158
- }
1159
- }
1160
-
1161
- return openWith(true);
1162
- },
1163
- close: function close() {
1164
- return openWith(false);
1165
- },
1166
- toggle: function toggle(e) {
1167
- if (process.env.NODE_ENV !== 'production') {
1168
- if (['string', 'number', 'boolean'].indexOf(_typeof(e)) >= 0) {
1169
- console.log("You are trying to toogle a toggle with ".concat(e, ". Please, use openWith to open with a value"));
1170
- }
1171
- }
1172
-
1173
- toggleWith(true);
1174
- },
1175
- willOpenWith: function willOpenWith(value) {
1176
- return function () {
1177
- return openWith(value);
1178
- };
1179
- },
1180
- willCloseAfter: function willCloseAfter() {
1181
- for (var _len3 = arguments.length, millsecs = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
1182
- millsecs[_key3] = arguments[_key3];
1183
- }
1184
-
1185
- return function () {
1186
- return closeAfter.apply(void 0, millsecs);
1187
- };
1188
- },
1189
- willToggleWith: function willToggleWith(value) {
1190
- return function () {
1191
- return toggleWith(value);
1192
- };
1193
- },
1194
- openWith: openWith,
1195
- closeAfter: closeAfter,
1196
- toggleWith: toggleWith,
1197
- get: refIsOpen.get
1198
- };
1199
- }, []);
1200
-
1201
- var settersWithNewRef = _objectSpread({}, setters);
1202
-
1203
- if (closing.val) {
1204
- return Object.assign(settersWithNewRef, {
1205
- isOpen: isOpen.val,
1206
- closing: closing.val
1207
- });
1208
- } else {
1209
- Object.defineProperties(settersWithNewRef, {
1210
- isOpen: {
1211
- enumerable: true,
1212
- get: isOpen.get
1213
- },
1214
- closing: {
1215
- enumerable: true,
1216
- get: closing.get
1217
- }
1218
- });
1219
- return settersWithNewRef;
1220
- }
1221
- };
1222
-
1223
- var useToggle = function useToggle(startWith, callback, key) {
1224
- return useToggleInternal(startWith, useCallState$1, callback, key);
1225
- };
1226
- var useRefToggle = function useRefToggle(startWith) {
1227
- return useToggleInternal(startWith, useRefState$1);
1228
- };
1229
-
1230
- var prevOpenToggleClose = function prevOpenToggleClose() {};
1231
-
1232
- var sameTick = false;
1233
- var clearPopups = function clearPopups() {
1234
- if (!sameTick) {
1235
- prevOpenToggleClose();
1236
-
1237
- prevOpenToggleClose = function prevOpenToggleClose() {};
1238
- }
1239
- };
1240
- var usePopupToggle = function usePopupToggle(startWith, callback) {
1241
- var toggle = useToggle$1(startWith, function (v, prev) {
1242
- var result = callIfFunction(callback, v, prev);
1243
-
1244
- if (result === false) {
1245
- return false;
1246
- }
1247
-
1248
- if (v !== false && prevOpenToggleClose !== toggle.close) {
1249
- prevOpenToggleClose();
1250
- prevOpenToggleClose = toggle.close;
1251
- sameTick = true;
1252
- window.setTimeout(function () {
1253
- return sameTick = false;
1254
- }, 1);
1255
- }
1256
-
1257
- if (v === false) {
1258
- prevOpenToggleClose = function prevOpenToggleClose() {};
1259
- }
1260
- });
1261
- return toggle;
1262
- };
1263
-
1264
- var useCallState = function useCallState(defaultValue, setCallback) {
1265
- var _useState = useState(defaultValue),
1266
- _useState2 = _slicedToArray(_useState, 2),
1267
- val = _useState2[0],
1268
- setValue = _useState2[1];
1269
-
1270
- return useMemo(function () {
1271
- var get = function get() {
1272
- return val;
1273
- };
1274
-
1275
- return {
1276
- get: get,
1277
- val: val,
1278
- set: setValue
1279
- };
1280
- }, [val]);
1281
- };
1282
-
1283
- var isPath = function isPath(path) {
1284
- return typeof path === 'string' || typeof path === 'number' || Array.isArray(path);
1285
- };
1286
-
1287
- var getter = function getter(value) {
1288
- return function (path) {
1289
- return path !== "" && isPath(path) ? _s.get(path, value) : value;
1290
- };
1291
- };
1292
-
1293
- var uninitialized = {};
1294
- var useRefState = function useRefState(defaultValue, setCallback) {
1295
- var ref = useRef(uninitialized);
1296
-
1297
- if (ref.current === uninitialized) {
1298
- ref.current = callIfFunction(defaultValue);
1299
- }
1300
-
1301
- return useMemo(function () {
1302
- var get = function get(path) {
1303
- return getter(ref.current)(path);
1304
- };
1305
-
1306
- var set = function set(v, config) {
1307
- var prev = ref.current;
1308
- ref.current = callIfFunctions(v, function () {
1309
- return get();
1310
- });
1311
-
1312
- if (prev !== ref.current && (!config || !config.ignoreCallback)) {
1313
- callIfFunction(setCallback, prev, ref.current);
1314
- }
1315
- };
1316
-
1317
- return {
1318
- get: get,
1319
- set: set
1320
- };
1321
- }, []);
1322
- };
1323
-
1324
- var useConsumerCatalog = function useConsumerCatalog(mountCallback, unmountCallback) {
1325
- var elements = useRefState$1([]);
1326
- var register = callMany(function (element) {
1327
- return elements.set(function (elements) {
1328
- return elements.concat([element]);
1329
- });
1330
- }, mountCallback);
1331
- var unregister = callMany(function (element) {
1332
- return elements.set(function (elements) {
1333
- return elements.filter(function (_) {
1334
- return _ !== element;
1335
- });
1336
- });
1337
- }, unmountCallback);
1338
- var manager = useMemo(function () {
1339
- return {
1340
- register: register,
1341
- unregister: unregister
1342
- };
1343
- }, []);
1344
- return [elements.get, manager];
1345
- };
1346
- var useCatalogManager = function useCatalogManager(_ref, ref) {
1347
- var register = _ref.register,
1348
- unregister = _ref.unregister;
1349
- useEffect(function () {
1350
- register(ref);
1351
- return function () {
1352
- return unregister(ref);
1353
- };
1354
- }, [ref]);
1355
- };
1356
-
1357
- var _willUseLayers = willUseLayers$1(),
1358
- _willUseLayers2 = _slicedToArray(_willUseLayers, 1),
1359
- useTitleLayers = _willUseLayers2[0];
1360
-
1361
- var useTitle = function useTitle(title) {
1362
- var layer = useTitleLayers({
1363
- onTop: function onTop() {
1364
- document.title = title;
1365
- }
1366
- });
1367
- };
1368
-
1369
- var TabFocus = styled.div.withConfig({
1370
- displayName: "useRecycleFocus__TabFocus",
1371
- componentId: "kxnccs-0"
1372
- })(["width:0;height:0;position:absolute;"]);
1373
- var useRecycleFocus = function useRecycleFocus(ref) {
1374
- var enabled = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
1375
- var lastIndex = arguments.length > 2 ? arguments[2] : undefined;
1376
-
1377
- var recycle = function recycle(i) {
1378
- return function (e) {
1379
- if (!enabled || !ref.current) {
1380
- return;
1381
- }
1382
-
1383
- var nextTab = ref.current.querySelectorAll('[tabindex]');
1384
-
1385
- if (nextTab) {
1386
- if (i < 0) {
1387
- console.log(nextTab[1]);
1388
- nextTab[1].focus();
1389
- } else {
1390
- console.log(nextTab[nextTab.length - 2]);
1391
- nextTab[nextTab.length - 2].focus();
1392
- }
1393
- }
1394
- };
1395
- };
1396
-
1397
- return [React.createElement(TabFocus, {
1398
- tabIndex: 1,
1399
- onFocus: recycle(0)
1400
- }), React.createElement(TabFocus, {
1401
- tabIndex: lastIndex || 1,
1402
- onFocus: recycle(-1)
1403
- })];
1404
- };
1405
-
1406
- function usePrevious(value, initialValue) {
1407
- var ref = useRef(initialValue);
1408
- useEffect(function () {
1409
- ref.current = value;
1410
- });
1411
- return ref.current;
1412
- }
1413
- function usePreviousUnique(value, initialValue) {
1414
- var ref = useRef(initialValue);
1415
- useEffect(function () {
1416
- if (value !== ref.current) {
1417
- ref.current = value;
1418
- }
1419
- });
1420
- return ref.current;
1421
- }
1422
- function usePreviousForEffect(value, initialValue) {
1423
- var ref = useRef(initialValue);
1424
- useEffect(function () {
1425
- return function () {
1426
- ref.current = value;
1427
- };
1428
- }, [value]);
1429
- return ref.current;
1430
- }
1431
-
1432
- var useIsUnmounted = function useIsUnmounted() {
1433
- var unmounted = useRef(false);
1434
- useEffect(function () {
1435
- unmounted.current = false;
1436
- return function () {
1437
- unmounted.current = true;
1438
- };
1439
- }, []);
1440
- return function () {
1441
- return unmounted.current;
1442
- };
1443
- };
1444
-
1445
- var useEnsureRef = function useEnsureRef(forwardedRef) {
1446
- var ref = useRef();
1447
- return forwardedRef || ref;
1448
- };
1449
-
1450
- var not_defined = {};
1451
- var useConstant = function useConstant(value) {
1452
- var ref = useRef(not_defined);
1453
-
1454
- if (ref.current === not_defined) {
1455
- ref.current = value;
1456
- }
1457
-
1458
- return ref.current;
1459
- };
1460
- var useLazyConstant = function useLazyConstant(value) {
1461
- var ref = useRef(not_defined);
1462
-
1463
- if (ref.current === not_defined) {
1464
- ref.current = callIfFunction(value);
1465
- }
1466
-
1467
- return ref.current;
1468
- };
1469
-
1470
- var useForceUpdate = function useForceUpdate() {
1471
- var _useState = useState(0),
1472
- _useState2 = _slicedToArray(_useState, 2),
1473
- value = _useState2[0],
1474
- setValue = _useState2[1]; // integer state
1475
-
1476
-
1477
- return function () {
1478
- return setValue(function (value) {
1479
- return value + 1;
1480
- });
1481
- }; // update the state to force render
1482
- };
1483
- var willUseForceUpdate = function willUseForceUpdate() {
1484
- var _willUseSharedState = willUseSharedState$1(),
1485
- _willUseSharedState2 = _slicedToArray(_willUseSharedState, 3),
1486
- useValue = _willUseSharedState2[0],
1487
- set = _willUseSharedState2[2];
1488
-
1489
- var useForceUpdate = function useForceUpdate() {
1490
- var _useValue = useValue(0),
1491
- _useValue2 = _slicedToArray(_useValue, 2),
1492
- v = _useValue2[0],
1493
- setV = _useValue2[1];
1494
-
1495
- return function () {
1496
- return setV(function (value) {
1497
- return value + 1;
1498
- });
1499
- };
1500
- };
1501
-
1502
- return [useForceUpdate, function () {
1503
- return set(function (value) {
1504
- return value + 1;
1505
- });
1506
- }];
1507
- };
1508
-
1509
- var useUpdateOnResize = function useUpdateOnResize() {
1510
- var debounceInterval = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 200;
1511
- var update = useForceUpdate$1();
1512
- useEffect(function () {
1513
- var trigger = _debounce(debounceInterval, update);
1514
-
1515
- window.addEventListener('resize', trigger);
1516
- return function () {
1517
- window.removeEventListener('resize', trigger);
1518
- };
1519
- }, []);
1520
- };
1521
-
1522
- var useAsyncEffect = function useAsyncEffect(fn, args) {
1523
- useEffect(function () {
1524
- var result = fn();
1525
- return function () {
1526
- result.then(function (end) {
1527
- return callIfFunction(end);
1528
- });
1529
- };
1530
- }, args);
1531
- };
1532
-
1533
- var useUpdateEffect = function useUpdateEffect(effect, inputs) {
1534
- var pastFirstTime = useRef();
1535
- useEffect(function () {
1536
- if (pastFirstTime.current) {
1537
- return effect();
1538
- } else {
1539
- pastFirstTime.current = true;
1540
- }
1541
- }, inputs);
1542
- };
1543
-
1544
- var useRefMemo = function useRefMemo(value) {
1545
- var ref = useRef(value);
1546
-
1547
- if (ref.current !== value) {
1548
- ref.current = callIfFunction(value);
1549
- }
1550
-
1551
- return ref;
1552
- };
1553
-
1554
- var IS_ARRAY_ITEMS_EQUALS = function IS_ARRAY_ITEMS_EQUALS(a, b) {
1555
- return a.length === b.length && !a.some(function (x, i) {
1556
- return !Object.is(x, b[i]);
1557
- });
1558
- };
1559
-
1560
- var IS_DEPS_EQUALS = function IS_DEPS_EQUALS() {
1561
- var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
1562
- var b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
1563
- return Object.is(a, b) || IS_ARRAY_ITEMS_EQUALS(a, b);
1564
- };
1565
-
1566
- var SHALLOW_IS_EQUAL = function SHALLOW_IS_EQUAL(a, b) {
1567
- return Object.is(a, b) || _isArray(a) && _isArray(b) && IS_ARRAY_ITEMS_EQUALS(a, b);
1568
- };
1569
-
1570
- var EMPTY_DEPS = [];
1571
- var EMPTY_VALUE = {
1572
- "EMPTY": true
1573
- };
1574
- var useUpdateSignal = function useUpdateSignal(initialValue) {
1575
- var value = useRef(initialValue);
1576
- value.current = initialValue;
1577
- return useLazyConstant$1(function () {
1578
- var registered = [];
1579
-
1580
- var register = function register() {
1581
- var selector = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _identity;
1582
- var isEqual = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : SHALLOW_IS_EQUAL;
1583
- var withTransition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
1584
- var selectorRef = useRef();
1585
- selectorRef.current = selector;
1586
- var update = useForceUpdate$1();
1587
- var lastValueRef = useRef(_s.select(selectorRef.current, value.current));
1588
- useEffect(function () {
1589
- var item = [update, selectorRef, isEqual, lastValueRef, withTransition];
1590
- registered = _toConsumableArray(registered).concat([item]);
1591
- return function () {
1592
- registered = registered.filter(function (v) {
1593
- return v !== item;
1594
- });
1595
- };
1596
- }, []);
1597
-
1598
- if (value.current === EMPTY_VALUE) {
1599
- return EMPTY_VALUE;
1600
- }
1601
-
1602
- return lastValueRef.current;
1603
- };
1604
-
1605
- var call = function call() {
1606
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1607
- args[_key] = arguments[_key];
1608
- }
1609
-
1610
- return registered.forEach(function (_ref) {
1611
- var _ref2 = _slicedToArray(_ref, 5),
1612
- fn = _ref2[0],
1613
- selectorRef = _ref2[1],
1614
- isEqual = _ref2[2],
1615
- lastValueRef = _ref2[3],
1616
- withTransition = _ref2[4];
1617
-
1618
- var nextValue = _s.select.apply(_s, [selectorRef.current].concat(args));
1619
-
1620
- if (!callIfFunction(isEqual, nextValue, lastValueRef.current)) {
1621
- lastValueRef.current = nextValue;
1622
-
1623
- if (withTransition) {
1624
- (withTransition === true ? startTransition : withTransition)(function () {
1625
- return fn(nextValue);
1626
- });
1627
- } else {
1628
- fn(nextValue);
1629
- }
1630
- }
1631
- });
1632
- };
1633
-
1634
- return [register, call];
1635
- });
1636
- };
1637
-
1638
- var useSelectorSignal = function useSelectorSignal(value) {
1639
- var prevValue = useRef(value);
1640
-
1641
- var _useUpdateSignal = useUpdateSignal(value),
1642
- _useUpdateSignal2 = _slicedToArray(_useUpdateSignal, 2),
1643
- _register = _useUpdateSignal2[0],
1644
- call = _useUpdateSignal2[1];
1645
-
1646
- var register = useCallback(function (selector, deps, isEqual, withTransition) {
1647
- var prevDeps = useRef(EMPTY_DEPS);
1648
-
1649
- if (prevDeps.current !== EMPTY_DEPS && !IS_DEPS_EQUALS(deps, prevDeps.current)) {
1650
- call(prevValue.current);
1651
- }
1652
-
1653
- prevDeps.current = deps;
1654
- return _register(selector, isEqual, withTransition);
1655
- }, []);
1656
- useEffect(function () {
1657
- if (prevValue.current !== value) {
1658
- prevValue.current = value;
1659
- call(value);
1660
- }
1661
- }, [value]);
1662
- return register;
1663
- };
1664
-
1665
- var updateStateFn = function updateStateFn(path, update) {
1666
- return function (state) {
1667
- return path ? _update(path, function (v) {
1668
- return callIfFunction(update, v);
1669
- }, state) : callIfFunction(update, state);
1670
- };
1671
- };
1672
-
1673
- var createStatefulContext = function createStatefulContext(v, defaultIsEqual) {
1674
- var Ctx = React.createContext(v);
1675
-
1676
- var Provider = function Provider(_ref3) {
1677
- var value = _ref3.value,
1678
- setValue = _ref3.setValue,
1679
- utils = _ref3.utils,
1680
- children = _ref3.children;
1681
- var register = useSelectorSignal(value);
1682
- var v = useLazyConstant$1(function () {
1683
- return [register, setValue, utils];
1684
- });
1685
- return React.createElement(Ctx.Provider, {
1686
- value: v
1687
- }, children);
1688
- };
1689
-
1690
- var useCtx = function useCtx() {
1691
- return useContext(Ctx);
1692
- };
1693
-
1694
- var useSelectValue = function useSelectValue(selector, deps, defaultIsEqual, withTransition) {
1695
- var _useCtx = useCtx(),
1696
- _useCtx2 = _slicedToArray(_useCtx, 1),
1697
- useRegister = _useCtx2[0];
1698
-
1699
- if (deps === true) {
1700
- return useRegister(selector, [], undefined, startTransition);
1701
- } else if (_isPlainObject(deps)) {
1702
- return useRegister(selector, deps.deps, deps.isEqual, deps.withTransition);
1703
- } else {
1704
- return useRegister(selector, _isArray(deps) ? deps : deps === null || deps === void 0 ? void 0 : deps.deps, defaultIsEqual, withTransition);
1705
- }
1706
- };
1707
-
1708
- var useSetValue = function useSetValue(path) {
1709
- var _useCtx3 = useCtx(),
1710
- _useCtx4 = _slicedToArray(_useCtx3, 2),
1711
- reg = _useCtx4[0],
1712
- set = _useCtx4[1];
1713
-
1714
- return useConstant$1(function (update) {
1715
- return set(updateStateFn(path, update));
1716
- });
1717
- };
1718
-
1719
- var useUtils = function useUtils(path, deps) {
1720
- var _useCtx5 = useCtx(),
1721
- _useCtx6 = _slicedToArray(_useCtx5, 3),
1722
- reg = _useCtx6[0],
1723
- set = _useCtx6[1],
1724
- utils = _useCtx6[2];
1725
-
1726
- return utils;
1727
- };
1728
-
1729
- return [Provider, [useSelectValue, useSetValue, useUtils, useCtx]];
1730
- };
1731
- var createSelfStatefulContext = function createSelfStatefulContext(v, defaultIsEqual) {
1732
- var _createStatefulContex = createStatefulContext(v),
1733
- _createStatefulContex2 = _slicedToArray(_createStatefulContex, 2),
1734
- Provider = _createStatefulContex2[0],
1735
- _createStatefulContex3 = _slicedToArray(_createStatefulContex2[1], 4),
1736
- useSelectValue = _createStatefulContex3[0],
1737
- useSetValue = _createStatefulContex3[1],
1738
- useUtils = _createStatefulContex3[2],
1739
- useCtx = _createStatefulContex3[3];
1740
-
1741
- var StateFullProvider = function StateFullProvider(_ref4) {
1742
- var _ref4$init = _ref4.init,
1743
- init = _ref4$init === void 0 ? {} : _ref4$init,
1744
- utils = _ref4.utils,
1745
- children = _ref4.children;
1746
-
1747
- var _useState = useState(init),
1748
- _useState2 = _slicedToArray(_useState, 2),
1749
- state = _useState2[0],
1750
- setState = _useState2[1];
1751
-
1752
- return React.createElement(Provider, {
1753
- value: state,
1754
- setValue: setState,
1755
- utils: utils
1756
- }, children);
1757
- };
1758
-
1759
- return [StateFullProvider, [useSelectValue, useSetValue, useUtils, useCtx]];
1760
- };
1761
- var createLazyStatefulContext = function createLazyStatefulContext(toPromise, defaultIsEqual) {
1762
- var _createStatefulContex4 = createStatefulContext(EMPTY_VALUE),
1763
- _createStatefulContex5 = _slicedToArray(_createStatefulContex4, 2),
1764
- Provider = _createStatefulContex5[0],
1765
- _createStatefulContex6 = _slicedToArray(_createStatefulContex5[1], 4),
1766
- useSelectValue = _createStatefulContex6[0],
1767
- useSetValue = _createStatefulContex6[1],
1768
- useUtils = _createStatefulContex6[2],
1769
- useCtx = _createStatefulContex6[3];
1770
-
1771
- var useSelectLazyValue = function useSelectLazyValue(selector, deps) {
1772
- var isEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultIsEqual;
1773
- var withTransition = arguments.length > 3 ? arguments[3] : undefined;
1774
- var value = useSelectValue(selector, deps, isEqual, withTransition);
1775
- var utils = useUtils();
1776
-
1777
- if (value === EMPTY_VALUE) {
1778
- var loadedValue = use(utils._lazyValue());
1779
- return _s.select(selector, loadedValue);
1780
- }
1781
-
1782
- return value;
1783
- };
1784
-
1785
- var useSetLazyValue = function useSetLazyValue(path) {
1786
- var _useCtx7 = useCtx(),
1787
- _useCtx8 = _slicedToArray(_useCtx7, 3),
1788
- setValue = _useCtx8[1],
1789
- utils = _useCtx8[2];
1790
-
1791
- return useConstant$1(function (update) {
1792
- return setValue(function (value) {
1793
- return value === EMPTY_VALUE ? updateStateFn(path, update)(utils.loadedValue()) : updateStateFn(path, update)(value);
1794
- });
1795
- });
1796
- };
1797
-
1798
- var useValuePromise = function useValuePromise(selector, deps, isEqual, withTransition) {
1799
- var value = useSelectValue(selector, deps, isEqual, withTransition);
1800
- var utils = useUtils();
1801
- return useCallback(function () {
1802
- if (value === EMPTY_VALUE) {
1803
- return utils._lazyValue().then(function (v) {
1804
- return console.log(v, _s.select(selector, v), selector) || _s.select(selector, v);
1805
- });
1806
- }
1807
-
1808
- return new Promise(value);
1809
- }, [value, deps]);
1810
- };
1811
-
1812
- var LazyStateFullProvider = function LazyStateFullProvider(_ref5) {
1813
- var value = _ref5.value,
1814
- utils = _ref5.utils,
1815
- children = _ref5.children,
1816
- _ref5$fallback = _ref5.fallback,
1817
- fallback = _ref5$fallback === void 0 ? null : _ref5$fallback;
1818
-
1819
- var _useState3 = useState(EMPTY_VALUE),
1820
- _useState4 = _slicedToArray(_useState3, 2),
1821
- state = _useState4[0],
1822
- setState = _useState4[1];
1823
-
1824
- var promise = useRef();
1825
-
1826
- var _loadedValue = useRef();
1827
-
1828
- var lazyUtils = useMemo(function () {
1829
- return _objectSpread({}, utils, {
1830
- _lazyValue: function _lazyValue() {
1831
- var _promise$current;
1832
-
1833
- (_promise$current = promise.current) !== null && _promise$current !== void 0 ? _promise$current : promise.current = callIfFunction(toPromise || _identity, value);
1834
- promise.current.then(function (value) {
1835
- _loadedValue.current = value;
1836
- });
1837
- return promise.current;
1838
- },
1839
- loadedValue: function loadedValue() {
1840
- return _loadedValue.current;
1841
- }
1842
- });
1843
- }, [value, utils]);
1844
- return React.createElement(Provider, {
1845
- value: state,
1846
- setValue: setState,
1847
- utils: lazyUtils
1848
- }, fallback === false ? children : React.createElement(React.Suspense, {
1849
- fallback: fallback
1850
- }, children));
1851
- };
1852
-
1853
- return [LazyStateFullProvider, [useSelectLazyValue, useSetLazyValue, useValuePromise]];
1854
- };
1855
- var createSelectableContext = function createSelectableContext(v) {
1856
- var _createStatefulContex7 = createStatefulContext(v),
1857
- _createStatefulContex8 = _slicedToArray(_createStatefulContex7, 2),
1858
- Provider = _createStatefulContex8[0],
1859
- _createStatefulContex9 = _slicedToArray(_createStatefulContex8[1], 1),
1860
- useSelectValue = _createStatefulContex9[0];
1861
-
1862
- return [Provider, useSelectValue];
1863
- };
1864
- var createTriggerUpdateContext = function createTriggerUpdateContext(v) {
1865
- var _createStatefulContex10 = createStatefulContext(v),
1866
- _createStatefulContex11 = _slicedToArray(_createStatefulContex10, 2),
1867
- Provider = _createStatefulContex11[0],
1868
- _createStatefulContex12 = _slicedToArray(_createStatefulContex11[1], 1),
1869
- useSelectValue = _createStatefulContex12[0];
1870
-
1871
- var TriggerProvider = React.forwardRef(function (_ref6, ref) {
1872
- var children = _ref6.children;
1873
-
1874
- var _useState5 = useState(0),
1875
- _useState6 = _slicedToArray(_useState5, 2),
1876
- v = _useState6[0],
1877
- setV = _useState6[1];
1878
-
1879
- var trigger = React.useMemo(function () {
1880
- return function () {
1881
- return setV(function (v) {
1882
- return v + 1;
1883
- });
1884
- };
1885
- }, [v]);
1886
- React.useImperativeHandle(ref, function () {
1887
- return {
1888
- trigger: trigger
1889
- };
1890
- }, []);
1891
- return React.createElement(Provider, {
1892
- value: trigger
1893
- }, children);
1894
- });
1895
- return [TriggerProvider, useSelectValue];
1896
- };
1897
-
1898
- var WithConstant = function WithConstant(_ref) {
1899
- var _ref$inputs = _ref.inputs,
1900
- inputs = _ref$inputs === void 0 ? [] : _ref$inputs,
1901
- value = _ref.value,
1902
- children = _ref.children;
1903
- var constant = useLazyConstant$1(value, inputs);
1904
- return children(constant);
1905
- };
1906
-
1907
- var useWithTransition = function useWithTransition(value) {
1908
- var _useState = useState(value),
1909
- _useState2 = _slicedToArray(_useState, 2),
1910
- state = _useState2[0],
1911
- setState = _useState2[1];
1912
-
1913
- useEffect(function () {
1914
- startTransition(function () {
1915
- setState(value);
1916
- });
1917
- }, [value]);
1918
- return state;
1919
- };
1920
-
1921
- export { Fill, GroupEventFactory, PopupContext, Slot, SlotContext, SlotProvider, StartlibsConsumer, StartlibsContext, StartlibsMetacontext, StartlibsProvider, WithConstant, WithEffect, WithLazyPlaceholder, WithLazyResource, WithRef, clearPopups, consumes, createLazyStatefulContext, createSelectableContext, createSelfStatefulContext, createStatefulContext, createTriggerUpdateContext, useAsyncEffect, useCallState, useCallbackStable, useCatalogManager, useConstant, useConsumerCatalog, useEnsureRef, useFill, useForceUpdate, useHiddenFill, useIsUnmounted, useLazyConstant, usePopupToggle, usePrevious, usePreviousForEffect, usePreviousUnique, useRecycleFocus, useRefMemo, useRefState, useRefToggle, useTitle, useToggle, useUpdateEffect, useUpdateOnResize, useUpdateSignal, useWithTransition, willUseForceUpdate, willUseLayers, willUseSharedCallback, willUseSharedState, willUseSpreadState, withDialogError, withGroupEvent };