@semcore/core 16.6.0-prerelease.1 → 16.6.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.
- package/lib/core-types/Component.d.ts +33 -79
- package/lib/core-types/Component.js +14 -46
- package/lib/core-types/Component.js.map +1 -1
- package/lib/core-types/Component.mjs +11 -7
- package/lib/core-types/Component.mjs.map +1 -1
- package/lib/core-types/symbols.mjs +9 -9
- package/lib/coreFactory.d.ts +6 -23
- package/lib/coreFactory.js +53 -22
- package/lib/coreFactory.js.map +1 -1
- package/lib/coreFactory.mjs +54 -35
- package/lib/coreFactory.mjs.map +1 -1
- package/lib/decorators/propsObserver.d.ts +11 -0
- package/lib/decorators/propsObserver.js +77 -0
- package/lib/decorators/propsObserver.js.map +1 -0
- package/lib/decorators/propsObserver.mjs +70 -0
- package/lib/decorators/propsObserver.mjs.map +1 -0
- package/lib/decorators/reactive.d.ts +11 -0
- package/lib/decorators/reactive.js +51 -0
- package/lib/decorators/reactive.js.map +1 -0
- package/lib/decorators/reactive.mjs +45 -0
- package/lib/decorators/reactive.mjs.map +1 -0
- package/lib/enhancement/Children.mjs +1 -1
- package/lib/enhancement/staticChildren.mjs +3 -3
- package/lib/enhancement/style.mjs +2 -2
- package/lib/enhancement/uncontrolledProps.js +2 -1
- package/lib/enhancement/uncontrolledProps.js.map +1 -1
- package/lib/enhancement/uncontrolledProps.mjs +2 -1
- package/lib/enhancement/uncontrolledProps.mjs.map +1 -1
- package/lib/esm/core-types/Component.mjs +11 -7
- package/lib/esm/core-types/symbols.mjs +9 -9
- package/lib/esm/coreFactory.mjs +54 -35
- package/lib/esm/enhancement/Children.mjs +1 -1
- package/lib/esm/enhancement/staticChildren.mjs +3 -3
- package/lib/esm/enhancement/style.mjs +2 -2
- package/lib/esm/enhancement/uncontrolledProps.mjs +2 -1
- package/lib/esm/styled/sstyled.mjs +1 -1
- package/lib/esm/utils/enhances/WithI18n.mjs +1 -46
- package/lib/esm/utils/ref.mjs +0 -14
- package/lib/index.d.ts +3 -3
- package/lib/index.js.map +1 -1
- package/lib/index.mjs.map +1 -1
- package/lib/styled/index.d.ts +1 -5
- package/lib/styled/index.js.map +1 -1
- package/lib/styled/index.mjs.map +1 -1
- package/lib/styled/sstyled.mjs +1 -1
- package/lib/utils/enhances/WithCSS.d.ts +2 -30
- package/lib/utils/enhances/WithCSS.js +4 -57
- package/lib/utils/enhances/WithCSS.js.map +1 -1
- package/lib/utils/enhances/WithCSS.mjs +2 -53
- package/lib/utils/enhances/WithCSS.mjs.map +1 -1
- package/lib/utils/enhances/WithI18n.d.ts +1 -30
- package/lib/utils/enhances/WithI18n.js +1 -57
- package/lib/utils/enhances/WithI18n.js.map +1 -1
- package/lib/utils/enhances/WithI18n.mjs +1 -46
- package/lib/utils/enhances/WithI18n.mjs.map +1 -1
- package/lib/utils/enhances/animatedSizeEnhance.d.ts +0 -4
- package/lib/utils/enhances/animatedSizeEnhance.js +0 -2
- package/lib/utils/enhances/animatedSizeEnhance.js.map +1 -1
- package/lib/utils/enhances/animatedSizeEnhance.mjs +0 -3
- package/lib/utils/enhances/animatedSizeEnhance.mjs.map +1 -1
- package/lib/utils/enhances/i18nEnhance.d.ts +0 -4
- package/lib/utils/enhances/i18nEnhance.js +0 -2
- package/lib/utils/enhances/i18nEnhance.js.map +1 -1
- package/lib/utils/enhances/i18nEnhance.mjs.map +1 -1
- package/lib/utils/eventEmitter.d.ts +10 -6
- package/lib/utils/eventEmitter.js +55 -27
- package/lib/utils/eventEmitter.js.map +1 -1
- package/lib/utils/eventEmitter.mjs +55 -27
- package/lib/utils/eventEmitter.mjs.map +1 -1
- package/lib/utils/getDisplayName.mjs +3 -5
- package/lib/utils/indentStyles.d.ts +3 -0
- package/lib/utils/indentStyles.js +45 -0
- package/lib/utils/indentStyles.js.map +1 -0
- package/lib/utils/indentStyles.mjs +36 -0
- package/lib/utils/indentStyles.mjs.map +1 -0
- package/lib/utils/injectStyle.js +1 -1
- package/lib/utils/injectStyle.js.map +1 -1
- package/lib/utils/injectStyle.mjs +1 -1
- package/lib/utils/injectStyle.mjs.map +1 -1
- package/lib/utils/ref.d.ts +1 -3
- package/lib/utils/ref.js +0 -14
- package/lib/utils/ref.js.map +1 -1
- package/lib/utils/ref.mjs +0 -14
- package/lib/utils/ref.mjs.map +1 -1
- package/lib/utils/uniqueID.d.ts +0 -4
- package/lib/utils/uniqueID.js +1 -3
- package/lib/utils/uniqueID.js.map +1 -1
- package/lib/utils/uniqueID.mjs +1 -4
- package/lib/utils/uniqueID.mjs.map +1 -1
- package/lib/utils/use/useColorResolver.js +1 -1
- package/lib/utils/use/useColorResolver.js.map +1 -1
- package/lib/utils/use/useColorResolver.mjs +1 -1
- package/lib/utils/use/useColorResolver.mjs.map +1 -1
- package/lib/utils/use/useEnhancedEffect.d.ts +1 -1
- package/lib/utils/zIndexStacking.d.ts +3 -1
- package/lib/utils/zIndexStacking.js.map +1 -1
- package/lib/utils/zIndexStacking.mjs.map +1 -1
- package/package.json +2 -2
- package/lib/enhancement/bindHandler.d.ts +0 -5
- package/lib/enhancement/bindHandler.js +0 -53
- package/lib/enhancement/bindHandler.js.map +0 -1
- package/lib/enhancement/bindHandler.mjs +0 -48
- package/lib/enhancement/bindHandler.mjs.map +0 -1
- package/lib/enhancement/hoistProps.d.ts +0 -10
- package/lib/enhancement/hoistProps.js +0 -95
- package/lib/enhancement/hoistProps.js.map +0 -1
- package/lib/enhancement/hoistProps.mjs +0 -78
- package/lib/enhancement/hoistProps.mjs.map +0 -1
- package/lib/esm/enhancement/bindHandler.mjs +0 -48
- package/lib/esm/enhancement/hoistProps.mjs +0 -78
- package/lib/esm/utils/createHoc.mjs +0 -42
- package/lib/esm/utils/getDisplayName.mjs +0 -6
- package/lib/utils/ScreenReaderOnly.d.ts +0 -8
- package/lib/utils/ScreenReaderOnly.js +0 -30
- package/lib/utils/ScreenReaderOnly.js.map +0 -1
- package/lib/utils/ScreenReaderOnly.mjs +0 -24
- package/lib/utils/ScreenReaderOnly.mjs.map +0 -1
- package/lib/utils/createHoc.d.ts +0 -3
- package/lib/utils/createHoc.js +0 -52
- package/lib/utils/createHoc.js.map +0 -1
- package/lib/utils/createHoc.mjs +0 -42
- package/lib/utils/createHoc.mjs.map +0 -1
- package/lib/utils/enhances/WithAutoFocus.d.ts +0 -14
- package/lib/utils/enhances/WithAutoFocus.js +0 -72
- package/lib/utils/enhances/WithAutoFocus.js.map +0 -1
- package/lib/utils/enhances/WithAutoFocus.mjs +0 -66
- package/lib/utils/enhances/WithAutoFocus.mjs.map +0 -1
- package/lib/utils/enhances/WithKeyboardFocus.d.ts +0 -46
- package/lib/utils/enhances/WithKeyboardFocus.js +0 -94
- package/lib/utils/enhances/WithKeyboardFocus.js.map +0 -1
- package/lib/utils/enhances/WithKeyboardFocus.mjs +0 -88
- package/lib/utils/enhances/WithKeyboardFocus.mjs.map +0 -1
- package/lib/utils/enhances/WithRef.d.ts +0 -3
- package/lib/utils/enhances/WithRef.js +0 -25
- package/lib/utils/enhances/WithRef.js.map +0 -1
- package/lib/utils/enhances/WithRef.mjs +0 -18
- package/lib/utils/enhances/WithRef.mjs.map +0 -1
- package/lib/utils/enhances/autoFocusEnhance.d.ts +0 -10
- package/lib/utils/enhances/autoFocusEnhance.js +0 -45
- package/lib/utils/enhances/autoFocusEnhance.js.map +0 -1
- package/lib/utils/enhances/autoFocusEnhance.mjs +0 -38
- package/lib/utils/enhances/autoFocusEnhance.mjs.map +0 -1
- package/lib/utils/enhances/keyboardFocusEnhance.d.ts +0 -27
- package/lib/utils/enhances/keyboardFocusEnhance.js +0 -63
- package/lib/utils/enhances/keyboardFocusEnhance.js.map +0 -1
- package/lib/utils/enhances/keyboardFocusEnhance.mjs +0 -57
- package/lib/utils/enhances/keyboardFocusEnhance.mjs.map +0 -1
- package/lib/utils/if.d.ts +0 -11
- package/lib/utils/if.js +0 -15
- package/lib/utils/if.js.map +0 -1
- package/lib/utils/if.mjs +0 -9
- package/lib/utils/if.mjs.map +0 -1
- package/lib/utils/use/useCss.d.ts +0 -4
- package/lib/utils/use/useCss.js +0 -19
- package/lib/utils/use/useCss.js.map +0 -1
- package/lib/utils/use/useCss.mjs +0 -12
- package/lib/utils/use/useCss.mjs.map +0 -1
package/lib/coreFactory.js
CHANGED
|
@@ -11,6 +11,8 @@ exports.createComponent = createComponent;
|
|
|
11
11
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
12
12
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
13
13
|
var _readOnlyError2 = _interopRequireDefault(require("@babel/runtime/helpers/readOnlyError"));
|
|
14
|
+
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/createForOfIteratorHelper"));
|
|
15
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
14
16
|
var _superPropGet2 = _interopRequireDefault(require("@babel/runtime/helpers/superPropGet"));
|
|
15
17
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
16
18
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -23,12 +25,10 @@ var _hoistNonReactStatics = _interopRequireDefault(require("hoist-non-react-stat
|
|
|
23
25
|
var _react = _interopRequireDefault(require("react"));
|
|
24
26
|
var _Component2 = require("./core-types/Component");
|
|
25
27
|
var _symbols = require("./core-types/symbols");
|
|
26
|
-
var _bindHandler = _interopRequireDefault(require("./enhancement/bindHandler"));
|
|
27
28
|
var _Children = _interopRequireDefault(require("./enhancement/Children"));
|
|
28
29
|
var _dataName = _interopRequireDefault(require("./enhancement/dataName"));
|
|
29
30
|
var _enhance = _interopRequireDefault(require("./enhancement/enhance"));
|
|
30
31
|
var _functionDefaultProps = _interopRequireDefault(require("./enhancement/functionDefaultProps"));
|
|
31
|
-
var _hoistProps = _interopRequireDefault(require("./enhancement/hoistProps"));
|
|
32
32
|
var _i18n = _interopRequireDefault(require("./enhancement/i18n"));
|
|
33
33
|
var _inheritedName = _interopRequireDefault(require("./enhancement/inheritedName"));
|
|
34
34
|
var _Root = _interopRequireDefault(require("./enhancement/Root"));
|
|
@@ -36,7 +36,7 @@ var _staticChildren = _interopRequireWildcard(require("./enhancement/staticChild
|
|
|
36
36
|
var _style = _interopRequireDefault(require("./enhancement/style"));
|
|
37
37
|
var _uncontrolledProps = _interopRequireDefault(require("./enhancement/uncontrolledProps"));
|
|
38
38
|
var _assignProps2 = _interopRequireDefault(require("./utils/assignProps"));
|
|
39
|
-
var
|
|
39
|
+
var _ref6 = require("./utils/ref");
|
|
40
40
|
var _useEnhancedEffect = _interopRequireDefault(require("./utils/use/useEnhancedEffect"));
|
|
41
41
|
var _excluded = ["forwardRef"],
|
|
42
42
|
_excluded2 = ["forwardRef", "__WRAPPER_PROPS_BIND__"],
|
|
@@ -71,7 +71,7 @@ function createForwardWrapper(Component, wrapperProps, statics, isFunction) {
|
|
|
71
71
|
forwardRef = _ref$forwardRef === void 0 ? null : _ref$forwardRef,
|
|
72
72
|
other = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
73
73
|
return /*#__PURE__*/_react["default"].createElement(BindingWrapper, (0, _extends2["default"])({}, other, {
|
|
74
|
-
forwardRef: (0,
|
|
74
|
+
forwardRef: (0, _ref6.useForkRef)(ref, forwardRef)
|
|
75
75
|
}));
|
|
76
76
|
}
|
|
77
77
|
function WrapperForwardRef(_ref2, ref) {
|
|
@@ -86,7 +86,7 @@ function createForwardWrapper(Component, wrapperProps, statics, isFunction) {
|
|
|
86
86
|
enhancementRef = _reduce$ref === void 0 ? null : _reduce$ref,
|
|
87
87
|
props = (0, _objectWithoutProperties2["default"])(_reduce, _excluded3);
|
|
88
88
|
return /*#__PURE__*/_react["default"].createElement(Component, (0, _extends2["default"])({}, props, {
|
|
89
|
-
forwardRef: (0,
|
|
89
|
+
forwardRef: (0, _ref6.useForkRef)(enhancementRef, ref, forwardRef)
|
|
90
90
|
}));
|
|
91
91
|
}
|
|
92
92
|
var BindingWrapper = /*#__PURE__*/function (_React$Component) {
|
|
@@ -161,6 +161,40 @@ function wrapClass(OriginComponent, enhancements, Context) {
|
|
|
161
161
|
this[_symbols.CORE_AS_PROPS] = props.reduce(function (acc, enhancement) {
|
|
162
162
|
return enhancement.call(_this4, acc, WrapperComponent, false);
|
|
163
163
|
}, this.props);
|
|
164
|
+
if (this[_symbols.CORE_AS_PROPS] !== null) {
|
|
165
|
+
var prefixesMap = new Map();
|
|
166
|
+
Object.entries(this[_symbols.CORE_AS_PROPS]).forEach(function (_ref3) {
|
|
167
|
+
var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2),
|
|
168
|
+
key = _ref4[0],
|
|
169
|
+
value = _ref4[1];
|
|
170
|
+
var _key$split = key.split(':'),
|
|
171
|
+
_key$split2 = (0, _slicedToArray2["default"])(_key$split, 2),
|
|
172
|
+
prefix = _key$split2[0],
|
|
173
|
+
propertyKey = _key$split2[1];
|
|
174
|
+
if (prefix !== 'use' && propertyKey) {
|
|
175
|
+
var _prefixesMap$get;
|
|
176
|
+
var obj = (_prefixesMap$get = prefixesMap.get(prefix)) !== null && _prefixesMap$get !== void 0 ? _prefixesMap$get : {};
|
|
177
|
+
obj[propertyKey] = value;
|
|
178
|
+
prefixesMap.set(prefix, obj);
|
|
179
|
+
}
|
|
180
|
+
});
|
|
181
|
+
var _iterator = (0, _createForOfIteratorHelper2["default"])(prefixesMap.entries()),
|
|
182
|
+
_step;
|
|
183
|
+
try {
|
|
184
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
185
|
+
var _step$value = (0, _slicedToArray2["default"])(_step.value, 2),
|
|
186
|
+
key = _step$value[0],
|
|
187
|
+
value = _step$value[1];
|
|
188
|
+
Object.defineProperty(this[_symbols.CORE_AS_PROPS], "".concat(key, "Props"), {
|
|
189
|
+
value: value
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
} catch (err) {
|
|
193
|
+
_iterator.e(err);
|
|
194
|
+
} finally {
|
|
195
|
+
_iterator.f();
|
|
196
|
+
}
|
|
197
|
+
}
|
|
164
198
|
}
|
|
165
199
|
return this[_symbols.CORE_AS_PROPS];
|
|
166
200
|
}
|
|
@@ -248,8 +282,8 @@ function wrapFunction(OriginComponent, enhancements, Context) {
|
|
|
248
282
|
return WrapperComponent;
|
|
249
283
|
}
|
|
250
284
|
function wrapCore(OriginComponent, enhancements, Context) {
|
|
251
|
-
var Component = function Component(
|
|
252
|
-
var Root =
|
|
285
|
+
var Component = function Component(_ref5) {
|
|
286
|
+
var Root = _ref5.Root;
|
|
253
287
|
var defaultProps = OriginComponent.defaultProps || {};
|
|
254
288
|
return /*#__PURE__*/_react["default"].createElement(Root, (0, _extends2["default"])({}, defaultProps, {
|
|
255
289
|
render: OriginComponent
|
|
@@ -294,15 +328,17 @@ function createComponent(OriginComponent) {
|
|
|
294
328
|
}
|
|
295
329
|
return acc;
|
|
296
330
|
}, parents);
|
|
331
|
+
// @ts-ignore
|
|
297
332
|
OriginComponent[_symbols.PARENT_COMPONENTS] = wholeFamily;
|
|
298
333
|
parents = wholeFamily;
|
|
299
334
|
}
|
|
335
|
+
// @ts-ignore
|
|
300
336
|
if (OriginComponent[_symbols.CORE_COMPONENT]) {
|
|
301
337
|
parents.push(OriginComponent);
|
|
302
338
|
}
|
|
303
339
|
var Component = createComposeComponent(OriginComponent, context, [].concat((0, _toConsumableArray2["default"])(enhancements.map(function (f) {
|
|
304
340
|
return f(context, parents, createComponent, childComponents);
|
|
305
|
-
})), [(0, _i18n["default"])(), (0,
|
|
341
|
+
})), [(0, _i18n["default"])(), (0, _Children["default"])(context, parents),
|
|
306
342
|
// root must be under the children
|
|
307
343
|
(0, _Root["default"])(), (0, _uncontrolledProps["default"])(), (0, _staticChildren["default"])(childComponents, createComponent, {
|
|
308
344
|
context: context,
|
|
@@ -316,9 +352,7 @@ function createComponent(OriginComponent) {
|
|
|
316
352
|
// dataName must be under the staticChild
|
|
317
353
|
(0, _dataName["default"])(),
|
|
318
354
|
// enhanceEnhancement must be under the functionDefaultPropsEnhancement
|
|
319
|
-
(0, _enhance["default"])(), (0, _style["default"])(childComponents, context)
|
|
320
|
-
// must be the last one so any properties can be raised
|
|
321
|
-
(0, _hoistProps["default"])(childComponents, context)]));
|
|
355
|
+
(0, _enhance["default"])(), (0, _style["default"])(childComponents, context)]));
|
|
322
356
|
Component[_symbols.CONTEXT_COMPONENT] = context;
|
|
323
357
|
Component._______childrenComponents = childComponents;
|
|
324
358
|
Component[_symbols.CREATE_COMPONENT] = function () {
|
|
@@ -337,17 +371,14 @@ function createComponent(OriginComponent) {
|
|
|
337
371
|
return Component;
|
|
338
372
|
}
|
|
339
373
|
function createBaseComponent(OriginComponent) {
|
|
340
|
-
var
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
} else {
|
|
349
|
-
throw new Error('createBaseComponent accepts only functional component');
|
|
350
|
-
}
|
|
374
|
+
var _OriginComponent$disp;
|
|
375
|
+
var Component = /*#__PURE__*/_react["default"].forwardRef(OriginComponent);
|
|
376
|
+
Component.displayName = (_OriginComponent$disp = OriginComponent.displayName) !== null && _OriginComponent$disp !== void 0 ? _OriginComponent$disp : '';
|
|
377
|
+
// @ts-ignore
|
|
378
|
+
Component.defaultProps = {
|
|
379
|
+
'data-ui-name': OriginComponent.displayName
|
|
380
|
+
};
|
|
381
|
+
Component[_symbols.CORE_COMPONENT] = true;
|
|
351
382
|
return Component;
|
|
352
383
|
}
|
|
353
384
|
//# sourceMappingURL=coreFactory.js.map
|
package/lib/coreFactory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coreFactory.js","names":["_hoistNonReactStatics","_interopRequireDefault","require","_react","_Component2","_symbols","_bindHandler","_Children","_dataName","_enhance","_functionDefaultProps","_hoistProps","_i18n","_inheritedName","_Root","_staticChildren","_interopRequireWildcard","_style","_uncontrolledProps","_assignProps2","_ref4","_useEnhancedEffect","_excluded","_excluded2","_excluded3","isEmptyObject","obj","Object","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","prototype","createGetField","enhancements","Component","isFunction","getField","key","filter","enhancement","condition","reduce","acc","item","push","createForwardWrapper","wrapperProps","statics","RootComponent","ROOT_COMPONENT","getterMethodName","getterMethodNameByDisplayName","displayName","getterMethod","undefined","useGetterIndex","WrapperForwardRefWithBind","_ref","ref","_ref$forwardRef","forwardRef","other","_objectWithoutProperties2","createElement","BindingWrapper","_extends2","useForkRef","WrapperForwardRef","_ref2","_ref2$forwardRef","__WRAPPER_PROPS_BIND__","_reduce","WrapperComponent","_reduce$ref","enhancementRef","props","_React$Component","_this","_classCallCheck2","_len","arguments","args","Array","_key","_callSuper2","concat","_defineProperty2","_inherits2","_createClass2","value","render","_this2","map","fn","bind","React","hoistNonReactStatics","defaultProps","forEach","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","_OriginComponent2","context","_this3","CORE_AS_PROPS","CORE_INSTANCE","CORE_INIT","call","get","_this4","Error","setContext","_this5","contextProps","_superPropGet2","_this6","asProps","ctx","STATIC_COMPONENT","Provider","_objectSpread2","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","useEnhancedEffect","current","wrapCore","_ref3","Root","createComposeComponent","PureComponent","isPrototypeOf","CORE_COMPONENT","assignProps","p1","p2","_assignProps","createComponent","childComponents","options","_options$context","createContext","_options$parent","parent","_options$enhancements","parents","isArray","wholeFamily","PARENT_COMPONENTS","_toConsumableArray2","f","i18nAppLocaleEnhance","bindHandlerEnhancement","childrenEnhancement","rootEnhancement","uncontrolledPropsEnhancement","staticChildrenEnhancement","functionDefaultPropsEnhancement","inheritedNameEnhancement","dataNameEnhancement","enhanceEnhancement","styleEnhancement","hoistPropsEnhancement","CONTEXT_COMPONENT","_______childrenComponents","CREATE_COMPONENT","_OriginComponent","_childComponents","_options","newInstance","createBaseComponent"],"sources":["../src/coreFactory.tsx"],"sourcesContent":["import hoistNonReactStatics from 'hoist-non-react-statics';\nimport React, { type ForwardRefExoticComponent, type RefAttributes } from 'react';\n\nimport { Component, type PropsWithRenderFnChildren } from './core-types/Component';\nimport {\n CONTEXT_COMPONENT,\n CORE_AS_PROPS,\n CORE_COMPONENT,\n CORE_INIT,\n CORE_INSTANCE,\n CREATE_COMPONENT,\n PARENT_COMPONENTS,\n} from './core-types/symbols';\nimport bindHandlerEnhancement from './enhancement/bindHandler';\nimport childrenEnhancement from './enhancement/Children';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport hoistPropsEnhancement from './enhancement/hoistProps';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\nimport inheritedNameEnhancement from './enhancement/inheritedName';\nimport rootEnhancement from './enhancement/Root';\nimport staticChildrenEnhancement, {\n getterMethodNameByDisplayName,\n ROOT_COMPONENT,\n STATIC_COMPONENT,\n} from './enhancement/staticChildren';\nimport styleEnhancement from './enhancement/style';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport _assignProps from './utils/assignProps';\nimport { useForkRef } from './utils/ref';\nimport useEnhancedEffect from './utils/use/useEnhancedEffect';\n\nfunction isEmptyObject(obj: any) {\n return (\n Object.getOwnPropertyNames(obj).length === 0 &&\n Object.getOwnPropertySymbols && // For IE 11\n Object.getOwnPropertySymbols(obj).length === 0 &&\n Object.getPrototypeOf(obj) === Object.prototype\n );\n}\n\nfunction createGetField(enhancements: any, Component: any, isFunction: boolean) {\n return function getField(key: string) {\n return enhancements\n .filter((enhancement: any) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc: any, item: any) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component: any, wrapperProps: any, statics: any, isFunction: any) {\n const RootComponent = Component[ROOT_COMPONENT];\n const getterMethodName = getterMethodNameByDisplayName(Component?.displayName);\n const getterMethod = RootComponent?.prototype\n ? RootComponent.prototype[getterMethodName]\n : undefined;\n const useGetterIndex = getterMethod?.length >= 2;\n\n function WrapperForwardRefWithBind({ forwardRef = null, ...other }, ref: any) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef(\n { forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }: any,\n ref: any,\n ) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc: any, enhancement: any) => enhancement(acc, WrapperComponent, isFunction), other);\n return <Component {...props} forwardRef={useForkRef(enhancementRef, ref, forwardRef)} />;\n }\n\n class BindingWrapper extends React.Component<any> {\n index = -1;\n render() {\n return (\n <WrapperForwardRef\n {...this.props}\n __WRAPPER_PROPS_BIND__={wrapperProps.map((fn: any) => fn.bind(this))}\n />\n );\n }\n }\n\n const WrapperComponent = React.forwardRef(\n useGetterIndex ? WrapperForwardRefWithBind : WrapperForwardRef,\n );\n\n hoistNonReactStatics(WrapperComponent, Component);\n\n WrapperComponent.displayName = Component.displayName;\n // TODO: defaultProps is only empty\n WrapperComponent.defaultProps = Component.defaultProps;\n // STATIC\n statics.forEach((enhancement: any) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, false);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n class Component extends OriginComponent {\n [CORE_AS_PROPS] = null;\n [CORE_INSTANCE] = WrapperComponent;\n [CORE_INIT] = false;\n\n constructor(props: any, context: any) {\n super(props, context);\n // INITS\n inits.forEach((enhancement: any) => enhancement.call(this, props, WrapperComponent, false));\n this[CORE_INIT] = true;\n }\n\n get asProps() {\n // TODO if not production\n if (!this[CORE_INIT]) {\n throw new Error('Can not call asProps in constructor');\n }\n if (!this[CORE_AS_PROPS]) {\n // PROPS\n this[CORE_AS_PROPS] = props.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n this.props,\n );\n }\n return this[CORE_AS_PROPS];\n }\n\n setContext() {\n const contextProps = super.setContext ? super.setContext() : {};\n // CONTEXT\n return contexts.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n contextProps,\n );\n }\n\n render() {\n this[CORE_AS_PROPS] = null;\n // TODO if not production\n if (!super.render) {\n throw new Error('Component `render` method is not defined');\n }\n const asProps: any = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(this, acc, asProps, WrapperComponent, false),\n super.render(),\n );\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n }\n }\n\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, true);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n const Component = React.memo(function FunctionMemoComponent(other) {\n const selfRef = React.useRef({});\n const firstRender = React.useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement: any) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, asProps, WrapperComponent, true),\n <OriginComponent {...asProps} />,\n );\n\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n });\n Object.assign(Component, OriginComponent);\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent: any, enhancements: any, Context: any) {\n const Component = function ({ Root }: any) {\n const defaultProps = OriginComponent.defaultProps || {};\n return <Root {...defaultProps} render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent: any, Context: any, enhancements: any): any {\n if (\n React.PureComponent.isPrototypeOf(OriginComponent) ||\n React.Component.isPrototypeOf(OriginComponent)\n ) {\n if (OriginComponent.prototype instanceof Component) {\n return wrapClass(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must inherit from our component');\n }\n } else if (typeof OriginComponent === 'function') {\n return wrapFunction(OriginComponent, enhancements, Context);\n } else if (OriginComponent[CORE_COMPONENT]) {\n return wrapCore(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must be a React component');\n }\n}\n\nexport type PropsAndRef<T, Ctx, UCProps> = PropsWithRenderFnChildren<T, Ctx, UCProps> &\n RefAttributes<unknown>;\nexport type ForwardRefComponent<T, Ctx, UCProps> = ForwardRefExoticComponent<\n PropsAndRef<T, Ctx, UCProps>\n>;\ntype ComponentOrProps<T, Context, UCProps> = T extends [infer ParentProps, infer ChildProps]\n ? ComponentType<ParentProps, ChildProps, Context, UCProps>\n : ForwardRefComponent<T, Context, UCProps>;\n\nexport type ComponentType<\n ComponentProps,\n ChildComponentProps = {},\n ContextType = {},\n UCProps = {},\n FNType = null,\n> = (FNType extends null\n ? ForwardRefComponent<ComponentProps, ContextType, UCProps>\n : FNType & { displayName: string }) & {\n [K in keyof ChildComponentProps]: ComponentOrProps<ChildComponentProps[K], ContextType, UCProps>;\n } & {\n [CORE_COMPONENT]: boolean;\n [CREATE_COMPONENT]: () => ComponentType<\n ComponentProps,\n ChildComponentProps,\n ContextType,\n UCProps\n >;\n };\n\ninterface ClassWithUncontrolledProps {\n uncontrolledProps(): unknown;\n}\n\nexport function assignProps(p1: any, p2: any) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<ComponentProps, ChildComponentProps = {}, ContextType = {}, FNType = null>(\n OriginComponent: any,\n childComponents: any = {},\n options: {\n context?: React.Context<ContextType>;\n parent?: ComponentType<unknown> | ComponentType<unknown>[];\n enhancements?: [any];\n } = {},\n): ComponentType<\n ComponentProps extends Component<infer Props> ? Props : ComponentProps,\n ChildComponentProps,\n ContextType,\n ComponentProps extends ClassWithUncontrolledProps\n ? ReturnType<ComponentProps['uncontrolledProps']>\n : { [key: string]: (arg: unknown) => void },\n FNType\n > {\n const {\n context = React.createContext<ContextType>({} as ContextType),\n parent = [],\n enhancements = [],\n } = options;\n let parents = Array.isArray(parent) ? parent : [parent];\n if (parents.length) {\n const wholeFamily = parents.reduce((acc: any, parent: any) => {\n if (parent[PARENT_COMPONENTS]) {\n acc = [...parent[PARENT_COMPONENTS], ...acc];\n }\n return acc;\n }, parents);\n OriginComponent[PARENT_COMPONENTS] = wholeFamily;\n parents = wholeFamily;\n }\n if (OriginComponent[CORE_COMPONENT]) {\n parents.push(OriginComponent);\n }\n const Component = createComposeComponent(OriginComponent, context, [\n // @ts-ignore\n ...enhancements.map((f) => f(context, parents, createComponent, childComponents)),\n i18nAppLocaleEnhance(),\n bindHandlerEnhancement(),\n childrenEnhancement(context, parents),\n // root must be under the children\n rootEnhancement(),\n uncontrolledPropsEnhancement(),\n staticChildrenEnhancement(childComponents, createComponent, {\n context,\n parent,\n enhancements,\n }),\n // functionDefaultProps must be under the staticChild\n functionDefaultPropsEnhancement(),\n // inheritedName must be under the staticChild\n inheritedNameEnhancement(),\n // dataName must be under the staticChild\n dataNameEnhancement(),\n // enhanceEnhancement must be under the functionDefaultPropsEnhancement\n enhanceEnhancement(),\n styleEnhancement(childComponents, context),\n // must be the last one so any properties can be raised\n hoistPropsEnhancement(childComponents, context),\n ]);\n Component[CONTEXT_COMPONENT] = context;\n Component._______childrenComponents = childComponents;\n Component[CREATE_COMPONENT] = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component.newInstance = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component[CORE_COMPONENT] = true;\n return Component;\n}\n\nfunction createBaseComponent<ComponentProps>(OriginComponent: any): ComponentType<ComponentProps> {\n let Component = null;\n if (\n !React.PureComponent.isPrototypeOf(OriginComponent) &&\n !React.Component.isPrototypeOf(OriginComponent) &&\n typeof OriginComponent === 'function'\n ) {\n Component = React.forwardRef(OriginComponent);\n Component.displayName = OriginComponent.displayName;\n Component.defaultProps = {\n 'data-ui-name': OriginComponent.displayName,\n ...OriginComponent.defaultProps,\n };\n (Component as any)[CORE_COMPONENT] = true;\n } else {\n throw new Error('createBaseComponent accepts only functional component');\n }\n return Component as any;\n}\n\nexport { createComponent, createBaseComponent };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"coreFactory.js","names":["_hoistNonReactStatics","_interopRequireDefault","require","_react","_Component2","_symbols","_Children","_dataName","_enhance","_functionDefaultProps","_i18n","_inheritedName","_Root","_staticChildren","_interopRequireWildcard","_style","_uncontrolledProps","_assignProps2","_ref6","_useEnhancedEffect","_excluded","_excluded2","_excluded3","isEmptyObject","obj","Object","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","prototype","createGetField","enhancements","Component","isFunction","getField","key","filter","enhancement","condition","reduce","acc","item","push","createForwardWrapper","wrapperProps","statics","RootComponent","ROOT_COMPONENT","getterMethodName","getterMethodNameByDisplayName","displayName","getterMethod","undefined","useGetterIndex","WrapperForwardRefWithBind","_ref","ref","_ref$forwardRef","forwardRef","other","_objectWithoutProperties2","createElement","BindingWrapper","_extends2","useForkRef","WrapperForwardRef","_ref2","_ref2$forwardRef","__WRAPPER_PROPS_BIND__","_reduce","WrapperComponent","_reduce$ref","enhancementRef","props","_React$Component","_this","_classCallCheck2","_len","arguments","args","Array","_key","_callSuper2","concat","_defineProperty2","_inherits2","_createClass2","value","render","_this2","map","fn","bind","React","hoistNonReactStatics","defaultProps","forEach","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","_OriginComponent2","context","_this3","CORE_AS_PROPS","CORE_INSTANCE","CORE_INIT","call","get","_this4","Error","prefixesMap","Map","entries","_ref3","_ref4","_slicedToArray2","_key$split","split","_key$split2","prefix","propertyKey","_prefixesMap$get","set","_iterator","_createForOfIteratorHelper2","_step","s","n","done","_step$value","defineProperty","err","e","f","setContext","_this5","contextProps","_superPropGet2","_this6","asProps","ctx","STATIC_COMPONENT","Provider","_objectSpread2","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","useEnhancedEffect","current","wrapCore","_ref5","Root","createComposeComponent","PureComponent","isPrototypeOf","CORE_COMPONENT","assignProps","p1","p2","_assignProps","createComponent","childComponents","options","_options$context","createContext","_options$parent","parent","_options$enhancements","parents","isArray","wholeFamily","PARENT_COMPONENTS","_toConsumableArray2","i18nAppLocaleEnhance","childrenEnhancement","rootEnhancement","uncontrolledPropsEnhancement","staticChildrenEnhancement","functionDefaultPropsEnhancement","inheritedNameEnhancement","dataNameEnhancement","enhanceEnhancement","styleEnhancement","CONTEXT_COMPONENT","_______childrenComponents","CREATE_COMPONENT","_OriginComponent","_childComponents","_options","newInstance","createBaseComponent","_OriginComponent$disp"],"sources":["../src/coreFactory.tsx"],"sourcesContent":["import hoistNonReactStatics from 'hoist-non-react-statics';\nimport React from 'react';\n\nimport { type Intergalactic, Component } from './core-types/Component';\nimport {\n CONTEXT_COMPONENT,\n CORE_AS_PROPS,\n CORE_COMPONENT,\n CORE_INIT,\n CORE_INSTANCE,\n CREATE_COMPONENT,\n PARENT_COMPONENTS,\n} from './core-types/symbols';\nimport childrenEnhancement from './enhancement/Children';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\nimport inheritedNameEnhancement from './enhancement/inheritedName';\nimport rootEnhancement from './enhancement/Root';\nimport staticChildrenEnhancement, {\n getterMethodNameByDisplayName,\n ROOT_COMPONENT,\n STATIC_COMPONENT,\n} from './enhancement/staticChildren';\nimport styleEnhancement from './enhancement/style';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport _assignProps from './utils/assignProps';\nimport { useForkRef } from './utils/ref';\nimport useEnhancedEffect from './utils/use/useEnhancedEffect';\n\nfunction isEmptyObject(obj: any) {\n return (\n Object.getOwnPropertyNames(obj).length === 0 &&\n Object.getOwnPropertySymbols && // For IE 11\n Object.getOwnPropertySymbols(obj).length === 0 &&\n Object.getPrototypeOf(obj) === Object.prototype\n );\n}\n\nfunction createGetField(enhancements: any, Component: any, isFunction: boolean) {\n return function getField(key: string) {\n return enhancements\n .filter((enhancement: any) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc: any, item: any) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component: any, wrapperProps: any, statics: any, isFunction: any) {\n const RootComponent = Component[ROOT_COMPONENT];\n const getterMethodName = getterMethodNameByDisplayName(Component?.displayName);\n const getterMethod = RootComponent?.prototype\n ? RootComponent.prototype[getterMethodName]\n : undefined;\n const useGetterIndex = getterMethod?.length >= 2;\n\n function WrapperForwardRefWithBind({ forwardRef = null, ...other }, ref: any) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef(\n { forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }: any,\n ref: any,\n ) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc: any, enhancement: any) => enhancement(acc, WrapperComponent, isFunction), other);\n return <Component {...props} forwardRef={useForkRef(enhancementRef, ref, forwardRef)} />;\n }\n\n class BindingWrapper extends React.Component<any> {\n index = -1;\n render() {\n return (\n <WrapperForwardRef\n {...this.props}\n __WRAPPER_PROPS_BIND__={wrapperProps.map((fn: any) => fn.bind(this))}\n />\n );\n }\n }\n\n const WrapperComponent = React.forwardRef(\n useGetterIndex ? WrapperForwardRefWithBind : WrapperForwardRef,\n );\n\n hoistNonReactStatics(WrapperComponent, Component);\n\n WrapperComponent.displayName = Component.displayName;\n // TODO: defaultProps is only empty\n WrapperComponent.defaultProps = Component.defaultProps;\n // STATIC\n statics.forEach((enhancement: any) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, false);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n class Component extends OriginComponent {\n [CORE_AS_PROPS] = null;\n [CORE_INSTANCE] = WrapperComponent;\n [CORE_INIT] = false;\n\n constructor(props: any, context: any) {\n super(props, context);\n // INITS\n inits.forEach((enhancement: any) => enhancement.call(this, props, WrapperComponent, false));\n this[CORE_INIT] = true;\n }\n\n get asProps() {\n // TODO if not production\n if (!this[CORE_INIT]) {\n throw new Error('Can not call asProps in constructor');\n }\n if (!this[CORE_AS_PROPS]) {\n // PROPS\n this[CORE_AS_PROPS] = props.reduce((acc: any, enhancement: any) => {\n return enhancement.call(this, acc, WrapperComponent, false);\n }, this.props);\n\n if (this[CORE_AS_PROPS] !== null) {\n const prefixesMap = new Map<string, Record<string, unknown>>();\n Object.entries(this[CORE_AS_PROPS]).forEach(([key, value]) => {\n const [prefix, propertyKey] = key.split(':');\n if (prefix !== 'use' && propertyKey) {\n const obj = prefixesMap.get(prefix) ?? {};\n obj[propertyKey] = value;\n\n prefixesMap.set(prefix, obj);\n }\n });\n\n for (const [key, value] of prefixesMap.entries()) {\n Object.defineProperty(this[CORE_AS_PROPS], `${key}Props`, { value });\n }\n }\n }\n return this[CORE_AS_PROPS];\n }\n\n setContext() {\n const contextProps = super.setContext ? super.setContext() : {};\n // CONTEXT\n return contexts.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n contextProps,\n );\n }\n\n render() {\n this[CORE_AS_PROPS] = null;\n // TODO if not production\n if (!super.render) {\n throw new Error('Component `render` method is not defined');\n }\n const asProps: any = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(this, acc, asProps, WrapperComponent, false),\n super.render(),\n );\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n }\n }\n\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, true);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n const Component = React.memo(function FunctionMemoComponent(other) {\n const selfRef = React.useRef({});\n const firstRender = React.useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement: any) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, asProps, WrapperComponent, true),\n <OriginComponent {...asProps} />,\n );\n\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n });\n Object.assign(Component, OriginComponent);\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent: any, enhancements: any, Context: any) {\n const Component = function ({ Root }: any) {\n const defaultProps = OriginComponent.defaultProps || {};\n return <Root {...defaultProps} render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent: any, Context: any, enhancements: any): any {\n if (\n React.PureComponent.isPrototypeOf(OriginComponent) ||\n React.Component.isPrototypeOf(OriginComponent)\n ) {\n if (OriginComponent.prototype instanceof Component) {\n return wrapClass(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must inherit from our component');\n }\n } else if (typeof OriginComponent === 'function') {\n return wrapFunction(OriginComponent, enhancements, Context);\n } else if (OriginComponent[CORE_COMPONENT]) {\n return wrapCore(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must be a React component');\n }\n}\n\nexport function assignProps(p1: any, p2: any) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<T extends Intergalactic.InternalTypings.ComponentTag = 'div', ComponentProps = {}, ContextType = {}, E extends Readonly<any[]> = never[]>(\n OriginComponent: any,\n childComponents: any = {},\n options: {\n context?: React.Context<ContextType>;\n parent?: Intergalactic.Component<any, any, any, any> | Intergalactic.Component<any, any, any, any>[];\n enhancements?: [any];\n } = {},\n): Intergalactic.Component<T, ComponentProps, ContextType, E> {\n const {\n context = React.createContext<ContextType>({} as ContextType),\n parent = [],\n enhancements = [],\n } = options;\n let parents: any[] = Array.isArray(parent) ? parent : [parent];\n if (parents.length) {\n const wholeFamily = parents.reduce((acc: any, parent: any) => {\n if (parent[PARENT_COMPONENTS]) {\n acc = [...parent[PARENT_COMPONENTS], ...acc];\n }\n return acc;\n }, parents);\n // @ts-ignore\n OriginComponent[PARENT_COMPONENTS] = wholeFamily;\n parents = wholeFamily;\n }\n // @ts-ignore\n if (OriginComponent[CORE_COMPONENT]) {\n parents.push(OriginComponent);\n }\n const Component = createComposeComponent(OriginComponent, context, [\n // @ts-ignore\n ...enhancements.map((f) => f(context, parents, createComponent, childComponents)),\n i18nAppLocaleEnhance(),\n childrenEnhancement(context, parents),\n // root must be under the children\n rootEnhancement(),\n uncontrolledPropsEnhancement(),\n staticChildrenEnhancement(childComponents, createComponent, {\n context,\n parent,\n enhancements,\n }),\n // functionDefaultProps must be under the staticChild\n functionDefaultPropsEnhancement(),\n // inheritedName must be under the staticChild\n inheritedNameEnhancement(),\n // dataName must be under the staticChild\n dataNameEnhancement(),\n // enhanceEnhancement must be under the functionDefaultPropsEnhancement\n enhanceEnhancement(),\n styleEnhancement(childComponents, context),\n ]);\n Component[CONTEXT_COMPONENT] = context;\n Component._______childrenComponents = childComponents;\n Component[CREATE_COMPONENT] = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component.newInstance = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component[CORE_COMPONENT] = true;\n return Component;\n}\n\nfunction createBaseComponent<T extends keyof React.JSX.IntrinsicElements, P>(OriginComponent: React.ForwardRefRenderFunction<React.ElementRef<T>, P>) {\n const Component = React.forwardRef<React.ElementRef<T>, P>(OriginComponent) as unknown as Intergalactic.Component<T, P>;\n Component.displayName = OriginComponent.displayName ?? '';\n // @ts-ignore\n Component.defaultProps = {\n 'data-ui-name': OriginComponent.displayName,\n };\n Component[CORE_COMPONENT] = true;\n\n return Component;\n}\n\nexport { createComponent, createBaseComponent };\n"],"mappings":"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","ignoreList":[]}
|
package/lib/coreFactory.mjs
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
2
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
|
+
import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
|
|
4
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
5
|
import _superPropGet from "@babel/runtime/helpers/esm/superPropGet";
|
|
4
6
|
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
5
7
|
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
@@ -12,18 +14,16 @@ import hoistNonReactStatics from "hoist-non-react-statics";
|
|
|
12
14
|
import React from "react";
|
|
13
15
|
import { Component } from "./core-types/Component.mjs";
|
|
14
16
|
import { CORE_AS_PROPS, CORE_INSTANCE, CORE_INIT, CORE_COMPONENT, PARENT_COMPONENTS, CONTEXT_COMPONENT, CREATE_COMPONENT } from "./core-types/symbols.mjs";
|
|
15
|
-
import Enhancement from "./enhancement/
|
|
16
|
-
import Enhancement$
|
|
17
|
-
import Enhancement$7 from "./enhancement/
|
|
18
|
-
import Enhancement$
|
|
19
|
-
import Enhancement$5 from "./enhancement/functionDefaultProps.mjs";
|
|
20
|
-
import Enhancement$a from "./enhancement/hoistProps.mjs";
|
|
17
|
+
import Enhancement from "./enhancement/Children.mjs";
|
|
18
|
+
import Enhancement$6 from "./enhancement/dataName.mjs";
|
|
19
|
+
import Enhancement$7 from "./enhancement/enhance.mjs";
|
|
20
|
+
import Enhancement$4 from "./enhancement/functionDefaultProps.mjs";
|
|
21
21
|
import i18nAppLocaleEnhance from "./enhancement/i18n.mjs";
|
|
22
|
-
import Enhancement$
|
|
23
|
-
import Enhancement$
|
|
24
|
-
import Enhancement$
|
|
25
|
-
import Enhancement$
|
|
26
|
-
import Enhancement$
|
|
22
|
+
import Enhancement$5 from "./enhancement/inheritedName.mjs";
|
|
23
|
+
import Enhancement$1 from "./enhancement/Root.mjs";
|
|
24
|
+
import Enhancement$3, { ROOT_COMPONENT, getterMethodNameByDisplayName, STATIC_COMPONENT } from "./enhancement/staticChildren.mjs";
|
|
25
|
+
import Enhancement$8 from "./enhancement/style.mjs";
|
|
26
|
+
import Enhancement$2 from "./enhancement/uncontrolledProps.mjs";
|
|
27
27
|
import assignProps$1 from "./utils/assignProps.mjs";
|
|
28
28
|
import { useForkRef } from "./utils/ref.mjs";
|
|
29
29
|
import useEnhancedEffect from "./utils/use/useEnhancedEffect.mjs";
|
|
@@ -134,6 +134,32 @@ function wrapClass(OriginComponent, enhancements, Context) {
|
|
|
134
134
|
this[CORE_AS_PROPS] = props.reduce(function(acc, enhancement) {
|
|
135
135
|
return enhancement.call(_this4, acc, WrapperComponent, false);
|
|
136
136
|
}, this.props);
|
|
137
|
+
if (this[CORE_AS_PROPS] !== null) {
|
|
138
|
+
var prefixesMap = /* @__PURE__ */ new Map();
|
|
139
|
+
Object.entries(this[CORE_AS_PROPS]).forEach(function(_ref3) {
|
|
140
|
+
var _ref4 = _slicedToArray(_ref3, 2), key2 = _ref4[0], value2 = _ref4[1];
|
|
141
|
+
var _key$split = key2.split(":"), _key$split2 = _slicedToArray(_key$split, 2), prefix = _key$split2[0], propertyKey = _key$split2[1];
|
|
142
|
+
if (prefix !== "use" && propertyKey) {
|
|
143
|
+
var _prefixesMap$get;
|
|
144
|
+
var obj = (_prefixesMap$get = prefixesMap.get(prefix)) !== null && _prefixesMap$get !== void 0 ? _prefixesMap$get : {};
|
|
145
|
+
obj[propertyKey] = value2;
|
|
146
|
+
prefixesMap.set(prefix, obj);
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
var _iterator = _createForOfIteratorHelper(prefixesMap.entries()), _step;
|
|
150
|
+
try {
|
|
151
|
+
for (_iterator.s(); !(_step = _iterator.n()).done; ) {
|
|
152
|
+
var _step$value = _slicedToArray(_step.value, 2), key = _step$value[0], value = _step$value[1];
|
|
153
|
+
Object.defineProperty(this[CORE_AS_PROPS], "".concat(key, "Props"), {
|
|
154
|
+
value
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
} catch (err) {
|
|
158
|
+
_iterator.e(err);
|
|
159
|
+
} finally {
|
|
160
|
+
_iterator.f();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
137
163
|
}
|
|
138
164
|
return this[CORE_AS_PROPS];
|
|
139
165
|
}
|
|
@@ -213,8 +239,8 @@ function wrapFunction(OriginComponent, enhancements, Context) {
|
|
|
213
239
|
return WrapperComponent;
|
|
214
240
|
}
|
|
215
241
|
function wrapCore(OriginComponent, enhancements, Context) {
|
|
216
|
-
var Component2 = function Component3(
|
|
217
|
-
var Root =
|
|
242
|
+
var Component2 = function Component3(_ref5) {
|
|
243
|
+
var Root = _ref5.Root;
|
|
218
244
|
var defaultProps = OriginComponent.defaultProps || {};
|
|
219
245
|
return /* @__PURE__ */ React.createElement(Root, _extends({}, defaultProps, {
|
|
220
246
|
render: OriginComponent
|
|
@@ -264,27 +290,24 @@ function createComponent(OriginComponent) {
|
|
|
264
290
|
return f(context, parents, createComponent, childComponents);
|
|
265
291
|
})), [
|
|
266
292
|
i18nAppLocaleEnhance(),
|
|
267
|
-
Enhancement(),
|
|
268
|
-
Enhancement$1(context, parents),
|
|
293
|
+
Enhancement(context, parents),
|
|
269
294
|
// root must be under the children
|
|
295
|
+
Enhancement$1(),
|
|
270
296
|
Enhancement$2(),
|
|
271
|
-
Enhancement$3(
|
|
272
|
-
Enhancement$4(childComponents, createComponent, {
|
|
297
|
+
Enhancement$3(childComponents, createComponent, {
|
|
273
298
|
context,
|
|
274
299
|
parent,
|
|
275
300
|
enhancements
|
|
276
301
|
}),
|
|
277
302
|
// functionDefaultProps must be under the staticChild
|
|
278
|
-
Enhancement$
|
|
303
|
+
Enhancement$4(),
|
|
279
304
|
// inheritedName must be under the staticChild
|
|
280
|
-
Enhancement$
|
|
305
|
+
Enhancement$5(),
|
|
281
306
|
// dataName must be under the staticChild
|
|
282
|
-
Enhancement$
|
|
307
|
+
Enhancement$6(),
|
|
283
308
|
// enhanceEnhancement must be under the functionDefaultPropsEnhancement
|
|
284
|
-
Enhancement$
|
|
285
|
-
Enhancement$
|
|
286
|
-
// must be the last one so any properties can be raised
|
|
287
|
-
Enhancement$a(childComponents, context)
|
|
309
|
+
Enhancement$7(),
|
|
310
|
+
Enhancement$8(childComponents, context)
|
|
288
311
|
]));
|
|
289
312
|
Component2[CONTEXT_COMPONENT] = context;
|
|
290
313
|
Component2._______childrenComponents = childComponents;
|
|
@@ -304,17 +327,13 @@ function createComponent(OriginComponent) {
|
|
|
304
327
|
return Component2;
|
|
305
328
|
}
|
|
306
329
|
function createBaseComponent(OriginComponent) {
|
|
307
|
-
var
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
Component2[CORE_COMPONENT] = true;
|
|
315
|
-
} else {
|
|
316
|
-
throw new Error("createBaseComponent accepts only functional component");
|
|
317
|
-
}
|
|
330
|
+
var _OriginComponent$disp;
|
|
331
|
+
var Component2 = /* @__PURE__ */ React.forwardRef(OriginComponent);
|
|
332
|
+
Component2.displayName = (_OriginComponent$disp = OriginComponent.displayName) !== null && _OriginComponent$disp !== void 0 ? _OriginComponent$disp : "";
|
|
333
|
+
Component2.defaultProps = {
|
|
334
|
+
"data-ui-name": OriginComponent.displayName
|
|
335
|
+
};
|
|
336
|
+
Component2[CORE_COMPONENT] = true;
|
|
318
337
|
return Component2;
|
|
319
338
|
}
|
|
320
339
|
export {
|
package/lib/coreFactory.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coreFactory.mjs","names":["hoistNonReactStatics","React","Component","CONTEXT_COMPONENT","CORE_AS_PROPS","CORE_COMPONENT","CORE_INIT","CORE_INSTANCE","CREATE_COMPONENT","PARENT_COMPONENTS","bindHandlerEnhancement","childrenEnhancement","dataNameEnhancement","enhanceEnhancement","functionDefaultPropsEnhancement","hoistPropsEnhancement","i18nAppLocaleEnhance","inheritedNameEnhancement","rootEnhancement","staticChildrenEnhancement","getterMethodNameByDisplayName","ROOT_COMPONENT","STATIC_COMPONENT","styleEnhancement","uncontrolledPropsEnhancement","_assignProps","useForkRef","useEnhancedEffect","isEmptyObject","obj","Object","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","prototype","createGetField","enhancements","isFunction","getField","key","filter","enhancement","condition","reduce","acc","item","push","createForwardWrapper","wrapperProps","statics","RootComponent","getterMethodName","displayName","getterMethod","undefined","useGetterIndex","WrapperForwardRefWithBind","_ref","ref","_ref$forwardRef","forwardRef","other","_objectWithoutProperties","_excluded","createElement","BindingWrapper","_extends","WrapperForwardRef","_ref2","_ref2$forwardRef","__WRAPPER_PROPS_BIND__","_excluded2","_reduce","WrapperComponent","_reduce$ref","enhancementRef","props","_excluded3","_React$Component","_this","_classCallCheck","_len","arguments","args","Array","_key","_callSuper","concat","_defineProperty","_inherits","_createClass","value","render","_this2","map","fn","bind","defaultProps","forEach","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","_OriginComponent2","context","_this3","call","get","_this4","Error","setContext","_this5","contextProps","_superPropGet","_this6","asProps","ctx","Provider","_objectSpread","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","current","wrapCore","_ref3","Root","createComposeComponent","PureComponent","isPrototypeOf","assignProps","p1","p2","createComponent","childComponents","options","_options$context","createContext","_options$parent","parent","_options$enhancements","parents","isArray","wholeFamily","_toConsumableArray","f","_______childrenComponents","_OriginComponent","_childComponents","_options","newInstance","createBaseComponent"],"sources":["../src/coreFactory.tsx"],"sourcesContent":["import hoistNonReactStatics from 'hoist-non-react-statics';\nimport React, { type ForwardRefExoticComponent, type RefAttributes } from 'react';\n\nimport { Component, type PropsWithRenderFnChildren } from './core-types/Component';\nimport {\n CONTEXT_COMPONENT,\n CORE_AS_PROPS,\n CORE_COMPONENT,\n CORE_INIT,\n CORE_INSTANCE,\n CREATE_COMPONENT,\n PARENT_COMPONENTS,\n} from './core-types/symbols';\nimport bindHandlerEnhancement from './enhancement/bindHandler';\nimport childrenEnhancement from './enhancement/Children';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport hoistPropsEnhancement from './enhancement/hoistProps';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\nimport inheritedNameEnhancement from './enhancement/inheritedName';\nimport rootEnhancement from './enhancement/Root';\nimport staticChildrenEnhancement, {\n getterMethodNameByDisplayName,\n ROOT_COMPONENT,\n STATIC_COMPONENT,\n} from './enhancement/staticChildren';\nimport styleEnhancement from './enhancement/style';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport _assignProps from './utils/assignProps';\nimport { useForkRef } from './utils/ref';\nimport useEnhancedEffect from './utils/use/useEnhancedEffect';\n\nfunction isEmptyObject(obj: any) {\n return (\n Object.getOwnPropertyNames(obj).length === 0 &&\n Object.getOwnPropertySymbols && // For IE 11\n Object.getOwnPropertySymbols(obj).length === 0 &&\n Object.getPrototypeOf(obj) === Object.prototype\n );\n}\n\nfunction createGetField(enhancements: any, Component: any, isFunction: boolean) {\n return function getField(key: string) {\n return enhancements\n .filter((enhancement: any) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc: any, item: any) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component: any, wrapperProps: any, statics: any, isFunction: any) {\n const RootComponent = Component[ROOT_COMPONENT];\n const getterMethodName = getterMethodNameByDisplayName(Component?.displayName);\n const getterMethod = RootComponent?.prototype\n ? RootComponent.prototype[getterMethodName]\n : undefined;\n const useGetterIndex = getterMethod?.length >= 2;\n\n function WrapperForwardRefWithBind({ forwardRef = null, ...other }, ref: any) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef(\n { forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }: any,\n ref: any,\n ) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc: any, enhancement: any) => enhancement(acc, WrapperComponent, isFunction), other);\n return <Component {...props} forwardRef={useForkRef(enhancementRef, ref, forwardRef)} />;\n }\n\n class BindingWrapper extends React.Component<any> {\n index = -1;\n render() {\n return (\n <WrapperForwardRef\n {...this.props}\n __WRAPPER_PROPS_BIND__={wrapperProps.map((fn: any) => fn.bind(this))}\n />\n );\n }\n }\n\n const WrapperComponent = React.forwardRef(\n useGetterIndex ? WrapperForwardRefWithBind : WrapperForwardRef,\n );\n\n hoistNonReactStatics(WrapperComponent, Component);\n\n WrapperComponent.displayName = Component.displayName;\n // TODO: defaultProps is only empty\n WrapperComponent.defaultProps = Component.defaultProps;\n // STATIC\n statics.forEach((enhancement: any) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, false);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n class Component extends OriginComponent {\n [CORE_AS_PROPS] = null;\n [CORE_INSTANCE] = WrapperComponent;\n [CORE_INIT] = false;\n\n constructor(props: any, context: any) {\n super(props, context);\n // INITS\n inits.forEach((enhancement: any) => enhancement.call(this, props, WrapperComponent, false));\n this[CORE_INIT] = true;\n }\n\n get asProps() {\n // TODO if not production\n if (!this[CORE_INIT]) {\n throw new Error('Can not call asProps in constructor');\n }\n if (!this[CORE_AS_PROPS]) {\n // PROPS\n this[CORE_AS_PROPS] = props.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n this.props,\n );\n }\n return this[CORE_AS_PROPS];\n }\n\n setContext() {\n const contextProps = super.setContext ? super.setContext() : {};\n // CONTEXT\n return contexts.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n contextProps,\n );\n }\n\n render() {\n this[CORE_AS_PROPS] = null;\n // TODO if not production\n if (!super.render) {\n throw new Error('Component `render` method is not defined');\n }\n const asProps: any = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(this, acc, asProps, WrapperComponent, false),\n super.render(),\n );\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n }\n }\n\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, true);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n const Component = React.memo(function FunctionMemoComponent(other) {\n const selfRef = React.useRef({});\n const firstRender = React.useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement: any) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, asProps, WrapperComponent, true),\n <OriginComponent {...asProps} />,\n );\n\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n });\n Object.assign(Component, OriginComponent);\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent: any, enhancements: any, Context: any) {\n const Component = function ({ Root }: any) {\n const defaultProps = OriginComponent.defaultProps || {};\n return <Root {...defaultProps} render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent: any, Context: any, enhancements: any): any {\n if (\n React.PureComponent.isPrototypeOf(OriginComponent) ||\n React.Component.isPrototypeOf(OriginComponent)\n ) {\n if (OriginComponent.prototype instanceof Component) {\n return wrapClass(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must inherit from our component');\n }\n } else if (typeof OriginComponent === 'function') {\n return wrapFunction(OriginComponent, enhancements, Context);\n } else if (OriginComponent[CORE_COMPONENT]) {\n return wrapCore(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must be a React component');\n }\n}\n\nexport type PropsAndRef<T, Ctx, UCProps> = PropsWithRenderFnChildren<T, Ctx, UCProps> &\n RefAttributes<unknown>;\nexport type ForwardRefComponent<T, Ctx, UCProps> = ForwardRefExoticComponent<\n PropsAndRef<T, Ctx, UCProps>\n>;\ntype ComponentOrProps<T, Context, UCProps> = T extends [infer ParentProps, infer ChildProps]\n ? ComponentType<ParentProps, ChildProps, Context, UCProps>\n : ForwardRefComponent<T, Context, UCProps>;\n\nexport type ComponentType<\n ComponentProps,\n ChildComponentProps = {},\n ContextType = {},\n UCProps = {},\n FNType = null,\n> = (FNType extends null\n ? ForwardRefComponent<ComponentProps, ContextType, UCProps>\n : FNType & { displayName: string }) & {\n [K in keyof ChildComponentProps]: ComponentOrProps<ChildComponentProps[K], ContextType, UCProps>;\n } & {\n [CORE_COMPONENT]: boolean;\n [CREATE_COMPONENT]: () => ComponentType<\n ComponentProps,\n ChildComponentProps,\n ContextType,\n UCProps\n >;\n };\n\ninterface ClassWithUncontrolledProps {\n uncontrolledProps(): unknown;\n}\n\nexport function assignProps(p1: any, p2: any) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<ComponentProps, ChildComponentProps = {}, ContextType = {}, FNType = null>(\n OriginComponent: any,\n childComponents: any = {},\n options: {\n context?: React.Context<ContextType>;\n parent?: ComponentType<unknown> | ComponentType<unknown>[];\n enhancements?: [any];\n } = {},\n): ComponentType<\n ComponentProps extends Component<infer Props> ? Props : ComponentProps,\n ChildComponentProps,\n ContextType,\n ComponentProps extends ClassWithUncontrolledProps\n ? ReturnType<ComponentProps['uncontrolledProps']>\n : { [key: string]: (arg: unknown) => void },\n FNType\n > {\n const {\n context = React.createContext<ContextType>({} as ContextType),\n parent = [],\n enhancements = [],\n } = options;\n let parents = Array.isArray(parent) ? parent : [parent];\n if (parents.length) {\n const wholeFamily = parents.reduce((acc: any, parent: any) => {\n if (parent[PARENT_COMPONENTS]) {\n acc = [...parent[PARENT_COMPONENTS], ...acc];\n }\n return acc;\n }, parents);\n OriginComponent[PARENT_COMPONENTS] = wholeFamily;\n parents = wholeFamily;\n }\n if (OriginComponent[CORE_COMPONENT]) {\n parents.push(OriginComponent);\n }\n const Component = createComposeComponent(OriginComponent, context, [\n // @ts-ignore\n ...enhancements.map((f) => f(context, parents, createComponent, childComponents)),\n i18nAppLocaleEnhance(),\n bindHandlerEnhancement(),\n childrenEnhancement(context, parents),\n // root must be under the children\n rootEnhancement(),\n uncontrolledPropsEnhancement(),\n staticChildrenEnhancement(childComponents, createComponent, {\n context,\n parent,\n enhancements,\n }),\n // functionDefaultProps must be under the staticChild\n functionDefaultPropsEnhancement(),\n // inheritedName must be under the staticChild\n inheritedNameEnhancement(),\n // dataName must be under the staticChild\n dataNameEnhancement(),\n // enhanceEnhancement must be under the functionDefaultPropsEnhancement\n enhanceEnhancement(),\n styleEnhancement(childComponents, context),\n // must be the last one so any properties can be raised\n hoistPropsEnhancement(childComponents, context),\n ]);\n Component[CONTEXT_COMPONENT] = context;\n Component._______childrenComponents = childComponents;\n Component[CREATE_COMPONENT] = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component.newInstance = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component[CORE_COMPONENT] = true;\n return Component;\n}\n\nfunction createBaseComponent<ComponentProps>(OriginComponent: any): ComponentType<ComponentProps> {\n let Component = null;\n if (\n !React.PureComponent.isPrototypeOf(OriginComponent) &&\n !React.Component.isPrototypeOf(OriginComponent) &&\n typeof OriginComponent === 'function'\n ) {\n Component = React.forwardRef(OriginComponent);\n Component.displayName = OriginComponent.displayName;\n Component.defaultProps = {\n 'data-ui-name': OriginComponent.displayName,\n ...OriginComponent.defaultProps,\n };\n (Component as any)[CORE_COMPONENT] = true;\n } else {\n throw new Error('createBaseComponent accepts only functional component');\n }\n return Component as any;\n}\n\nexport { createComponent, createBaseComponent };\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"coreFactory.mjs","names":["hoistNonReactStatics","React","Component","CONTEXT_COMPONENT","CORE_AS_PROPS","CORE_COMPONENT","CORE_INIT","CORE_INSTANCE","CREATE_COMPONENT","PARENT_COMPONENTS","childrenEnhancement","dataNameEnhancement","enhanceEnhancement","functionDefaultPropsEnhancement","i18nAppLocaleEnhance","inheritedNameEnhancement","rootEnhancement","staticChildrenEnhancement","getterMethodNameByDisplayName","ROOT_COMPONENT","STATIC_COMPONENT","styleEnhancement","uncontrolledPropsEnhancement","_assignProps","useForkRef","useEnhancedEffect","isEmptyObject","obj","Object","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","prototype","createGetField","enhancements","isFunction","getField","key","filter","enhancement","condition","reduce","acc","item","push","createForwardWrapper","wrapperProps","statics","RootComponent","getterMethodName","displayName","getterMethod","undefined","useGetterIndex","WrapperForwardRefWithBind","_ref","ref","_ref$forwardRef","forwardRef","other","_objectWithoutProperties","_excluded","createElement","BindingWrapper","_extends","WrapperForwardRef","_ref2","_ref2$forwardRef","__WRAPPER_PROPS_BIND__","_excluded2","_reduce","WrapperComponent","_reduce$ref","enhancementRef","props","_excluded3","_React$Component","_this","_classCallCheck","_len","arguments","args","Array","_key","_callSuper","concat","_defineProperty","_inherits","_createClass","value","render","_this2","map","fn","bind","defaultProps","forEach","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","_OriginComponent2","context","_this3","call","get","_this4","Error","prefixesMap","Map","entries","_ref3","_ref4","_slicedToArray","_key$split","split","_key$split2","prefix","propertyKey","_prefixesMap$get","set","_iterator","_createForOfIteratorHelper","_step","s","n","done","_step$value","defineProperty","err","e","f","setContext","_this5","contextProps","_superPropGet","_this6","asProps","ctx","Provider","_objectSpread","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","current","wrapCore","_ref5","Root","createComposeComponent","PureComponent","isPrototypeOf","assignProps","p1","p2","createComponent","childComponents","options","_options$context","createContext","_options$parent","parent","_options$enhancements","parents","isArray","wholeFamily","_toConsumableArray","_______childrenComponents","_OriginComponent","_childComponents","_options","newInstance","createBaseComponent","_OriginComponent$disp"],"sources":["../src/coreFactory.tsx"],"sourcesContent":["import hoistNonReactStatics from 'hoist-non-react-statics';\nimport React from 'react';\n\nimport { type Intergalactic, Component } from './core-types/Component';\nimport {\n CONTEXT_COMPONENT,\n CORE_AS_PROPS,\n CORE_COMPONENT,\n CORE_INIT,\n CORE_INSTANCE,\n CREATE_COMPONENT,\n PARENT_COMPONENTS,\n} from './core-types/symbols';\nimport childrenEnhancement from './enhancement/Children';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\nimport inheritedNameEnhancement from './enhancement/inheritedName';\nimport rootEnhancement from './enhancement/Root';\nimport staticChildrenEnhancement, {\n getterMethodNameByDisplayName,\n ROOT_COMPONENT,\n STATIC_COMPONENT,\n} from './enhancement/staticChildren';\nimport styleEnhancement from './enhancement/style';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport _assignProps from './utils/assignProps';\nimport { useForkRef } from './utils/ref';\nimport useEnhancedEffect from './utils/use/useEnhancedEffect';\n\nfunction isEmptyObject(obj: any) {\n return (\n Object.getOwnPropertyNames(obj).length === 0 &&\n Object.getOwnPropertySymbols && // For IE 11\n Object.getOwnPropertySymbols(obj).length === 0 &&\n Object.getPrototypeOf(obj) === Object.prototype\n );\n}\n\nfunction createGetField(enhancements: any, Component: any, isFunction: boolean) {\n return function getField(key: string) {\n return enhancements\n .filter((enhancement: any) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc: any, item: any) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component: any, wrapperProps: any, statics: any, isFunction: any) {\n const RootComponent = Component[ROOT_COMPONENT];\n const getterMethodName = getterMethodNameByDisplayName(Component?.displayName);\n const getterMethod = RootComponent?.prototype\n ? RootComponent.prototype[getterMethodName]\n : undefined;\n const useGetterIndex = getterMethod?.length >= 2;\n\n function WrapperForwardRefWithBind({ forwardRef = null, ...other }, ref: any) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef(\n { forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }: any,\n ref: any,\n ) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc: any, enhancement: any) => enhancement(acc, WrapperComponent, isFunction), other);\n return <Component {...props} forwardRef={useForkRef(enhancementRef, ref, forwardRef)} />;\n }\n\n class BindingWrapper extends React.Component<any> {\n index = -1;\n render() {\n return (\n <WrapperForwardRef\n {...this.props}\n __WRAPPER_PROPS_BIND__={wrapperProps.map((fn: any) => fn.bind(this))}\n />\n );\n }\n }\n\n const WrapperComponent = React.forwardRef(\n useGetterIndex ? WrapperForwardRefWithBind : WrapperForwardRef,\n );\n\n hoistNonReactStatics(WrapperComponent, Component);\n\n WrapperComponent.displayName = Component.displayName;\n // TODO: defaultProps is only empty\n WrapperComponent.defaultProps = Component.defaultProps;\n // STATIC\n statics.forEach((enhancement: any) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, false);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n class Component extends OriginComponent {\n [CORE_AS_PROPS] = null;\n [CORE_INSTANCE] = WrapperComponent;\n [CORE_INIT] = false;\n\n constructor(props: any, context: any) {\n super(props, context);\n // INITS\n inits.forEach((enhancement: any) => enhancement.call(this, props, WrapperComponent, false));\n this[CORE_INIT] = true;\n }\n\n get asProps() {\n // TODO if not production\n if (!this[CORE_INIT]) {\n throw new Error('Can not call asProps in constructor');\n }\n if (!this[CORE_AS_PROPS]) {\n // PROPS\n this[CORE_AS_PROPS] = props.reduce((acc: any, enhancement: any) => {\n return enhancement.call(this, acc, WrapperComponent, false);\n }, this.props);\n\n if (this[CORE_AS_PROPS] !== null) {\n const prefixesMap = new Map<string, Record<string, unknown>>();\n Object.entries(this[CORE_AS_PROPS]).forEach(([key, value]) => {\n const [prefix, propertyKey] = key.split(':');\n if (prefix !== 'use' && propertyKey) {\n const obj = prefixesMap.get(prefix) ?? {};\n obj[propertyKey] = value;\n\n prefixesMap.set(prefix, obj);\n }\n });\n\n for (const [key, value] of prefixesMap.entries()) {\n Object.defineProperty(this[CORE_AS_PROPS], `${key}Props`, { value });\n }\n }\n }\n return this[CORE_AS_PROPS];\n }\n\n setContext() {\n const contextProps = super.setContext ? super.setContext() : {};\n // CONTEXT\n return contexts.reduce(\n (acc: any, enhancement: any) => enhancement.call(this, acc, WrapperComponent, false),\n contextProps,\n );\n }\n\n render() {\n this[CORE_AS_PROPS] = null;\n // TODO if not production\n if (!super.render) {\n throw new Error('Component `render` method is not defined');\n }\n const asProps: any = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(this, acc, asProps, WrapperComponent, false),\n super.render(),\n );\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n }\n }\n\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent: any, enhancements: any, Context: any) {\n const getField = createGetField(enhancements, OriginComponent, true);\n\n const inits = getField('init');\n const props = getField('asProps');\n const renders = getField('render');\n const statics = getField('static');\n const wrapperProps = getField('wrapperProps');\n const contexts = getField('context');\n\n const Component = React.memo(function FunctionMemoComponent(other) {\n const selfRef = React.useRef({});\n const firstRender = React.useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement: any) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc: any, enhancement: any) =>\n enhancement.call(selfRef.current, acc, asProps, WrapperComponent, true),\n <OriginComponent {...asProps} />,\n );\n\n if (!WrapperComponent[STATIC_COMPONENT] && !isEmptyObject(ctx)) {\n return <Context.Provider value={{ ...asProps, ...ctx }}>{render}</Context.Provider>;\n } else {\n return render;\n }\n });\n Object.assign(Component, OriginComponent);\n const WrapperComponent: any = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent: any, enhancements: any, Context: any) {\n const Component = function ({ Root }: any) {\n const defaultProps = OriginComponent.defaultProps || {};\n return <Root {...defaultProps} render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent: any, Context: any, enhancements: any): any {\n if (\n React.PureComponent.isPrototypeOf(OriginComponent) ||\n React.Component.isPrototypeOf(OriginComponent)\n ) {\n if (OriginComponent.prototype instanceof Component) {\n return wrapClass(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must inherit from our component');\n }\n } else if (typeof OriginComponent === 'function') {\n return wrapFunction(OriginComponent, enhancements, Context);\n } else if (OriginComponent[CORE_COMPONENT]) {\n return wrapCore(OriginComponent, enhancements, Context);\n } else {\n throw new Error('Must be a React component');\n }\n}\n\nexport function assignProps(p1: any, p2: any) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<T extends Intergalactic.InternalTypings.ComponentTag = 'div', ComponentProps = {}, ContextType = {}, E extends Readonly<any[]> = never[]>(\n OriginComponent: any,\n childComponents: any = {},\n options: {\n context?: React.Context<ContextType>;\n parent?: Intergalactic.Component<any, any, any, any> | Intergalactic.Component<any, any, any, any>[];\n enhancements?: [any];\n } = {},\n): Intergalactic.Component<T, ComponentProps, ContextType, E> {\n const {\n context = React.createContext<ContextType>({} as ContextType),\n parent = [],\n enhancements = [],\n } = options;\n let parents: any[] = Array.isArray(parent) ? parent : [parent];\n if (parents.length) {\n const wholeFamily = parents.reduce((acc: any, parent: any) => {\n if (parent[PARENT_COMPONENTS]) {\n acc = [...parent[PARENT_COMPONENTS], ...acc];\n }\n return acc;\n }, parents);\n // @ts-ignore\n OriginComponent[PARENT_COMPONENTS] = wholeFamily;\n parents = wholeFamily;\n }\n // @ts-ignore\n if (OriginComponent[CORE_COMPONENT]) {\n parents.push(OriginComponent);\n }\n const Component = createComposeComponent(OriginComponent, context, [\n // @ts-ignore\n ...enhancements.map((f) => f(context, parents, createComponent, childComponents)),\n i18nAppLocaleEnhance(),\n childrenEnhancement(context, parents),\n // root must be under the children\n rootEnhancement(),\n uncontrolledPropsEnhancement(),\n staticChildrenEnhancement(childComponents, createComponent, {\n context,\n parent,\n enhancements,\n }),\n // functionDefaultProps must be under the staticChild\n functionDefaultPropsEnhancement(),\n // inheritedName must be under the staticChild\n inheritedNameEnhancement(),\n // dataName must be under the staticChild\n dataNameEnhancement(),\n // enhanceEnhancement must be under the functionDefaultPropsEnhancement\n enhanceEnhancement(),\n styleEnhancement(childComponents, context),\n ]);\n Component[CONTEXT_COMPONENT] = context;\n Component._______childrenComponents = childComponents;\n Component[CREATE_COMPONENT] = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component.newInstance = function (\n _OriginComponent = OriginComponent,\n _childComponents = childComponents,\n _options = options,\n ) {\n return createComponent(_OriginComponent, _childComponents, _options);\n };\n Component[CORE_COMPONENT] = true;\n return Component;\n}\n\nfunction createBaseComponent<T extends keyof React.JSX.IntrinsicElements, P>(OriginComponent: React.ForwardRefRenderFunction<React.ElementRef<T>, P>) {\n const Component = React.forwardRef<React.ElementRef<T>, P>(OriginComponent) as unknown as Intergalactic.Component<T, P>;\n Component.displayName = OriginComponent.displayName ?? '';\n // @ts-ignore\n Component.defaultProps = {\n 'data-ui-name': OriginComponent.displayName,\n };\n Component[CORE_COMPONENT] = true;\n\n return Component;\n}\n\nexport { createComponent, createBaseComponent };\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
type WatchedProps<Props> = {
|
|
2
|
+
[key in keyof Props]?: unknown;
|
|
3
|
+
};
|
|
4
|
+
type Constructor<Props> = new (...args: any[]) => {
|
|
5
|
+
props: Props;
|
|
6
|
+
onPropsChange(changedProps: WatchedProps<Props>): void;
|
|
7
|
+
render(): React.ReactNode;
|
|
8
|
+
componentWillUnmount?(): void;
|
|
9
|
+
};
|
|
10
|
+
declare function propsObserver<P extends Record<string, any>, C extends Constructor<P>>(propsToWatch: Array<keyof P>): (Class: C) => C & Constructor<P>;
|
|
11
|
+
export default propsObserver;
|