@semcore/core 1.14.6 → 1.14.8

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 (65) hide show
  1. package/CHANGELOG.md +2 -2
  2. package/lib/cjs/Component.js +0 -16
  3. package/lib/cjs/Component.js.map +1 -1
  4. package/lib/cjs/enhancement/Children.js +17 -42
  5. package/lib/cjs/enhancement/Children.js.map +1 -1
  6. package/lib/cjs/enhancement/Root.js +15 -33
  7. package/lib/cjs/enhancement/Root.js.map +1 -1
  8. package/lib/cjs/enhancement/bindHandler.js +0 -11
  9. package/lib/cjs/enhancement/bindHandler.js.map +1 -1
  10. package/lib/cjs/enhancement/dataName.js +0 -4
  11. package/lib/cjs/enhancement/dataName.js.map +1 -1
  12. package/lib/cjs/enhancement/enhance.js +0 -2
  13. package/lib/cjs/enhancement/enhance.js.map +1 -1
  14. package/lib/cjs/enhancement/functionDefaultProps.js +0 -5
  15. package/lib/cjs/enhancement/functionDefaultProps.js.map +1 -1
  16. package/lib/cjs/enhancement/hoistProps.js +10 -27
  17. package/lib/cjs/enhancement/hoistProps.js.map +1 -1
  18. package/lib/cjs/enhancement/inheritedName.js +0 -6
  19. package/lib/cjs/enhancement/inheritedName.js.map +1 -1
  20. package/lib/cjs/enhancement/staticChildren.js +14 -45
  21. package/lib/cjs/enhancement/staticChildren.js.map +1 -1
  22. package/lib/cjs/enhancement/style.js +4 -16
  23. package/lib/cjs/enhancement/style.js.map +1 -1
  24. package/lib/cjs/enhancement/uncontrolledProps.js +16 -49
  25. package/lib/cjs/enhancement/uncontrolledProps.js.map +1 -1
  26. package/lib/cjs/index.js +49 -134
  27. package/lib/cjs/index.js.map +1 -1
  28. package/lib/cjs/register.js +0 -9
  29. package/lib/cjs/register.js.map +1 -1
  30. package/lib/cjs/styled/index.js +0 -5
  31. package/lib/cjs/styled/index.js.map +1 -1
  32. package/lib/cjs/styled/sstyled.js +16 -55
  33. package/lib/cjs/styled/sstyled.js.map +1 -1
  34. package/lib/es6/Component.js +0 -11
  35. package/lib/es6/Component.js.map +1 -1
  36. package/lib/es6/enhancement/Children.js +17 -36
  37. package/lib/es6/enhancement/Children.js.map +1 -1
  38. package/lib/es6/enhancement/Root.js +19 -30
  39. package/lib/es6/enhancement/Root.js.map +1 -1
  40. package/lib/es6/enhancement/bindHandler.js +0 -10
  41. package/lib/es6/enhancement/bindHandler.js.map +1 -1
  42. package/lib/es6/enhancement/dataName.js +0 -2
  43. package/lib/es6/enhancement/dataName.js.map +1 -1
  44. package/lib/es6/enhancement/enhance.js +0 -1
  45. package/lib/es6/enhancement/enhance.js.map +1 -1
  46. package/lib/es6/enhancement/functionDefaultProps.js +0 -4
  47. package/lib/es6/enhancement/functionDefaultProps.js.map +1 -1
  48. package/lib/es6/enhancement/hoistProps.js +13 -23
  49. package/lib/es6/enhancement/hoistProps.js.map +1 -1
  50. package/lib/es6/enhancement/inheritedName.js +0 -2
  51. package/lib/es6/enhancement/inheritedName.js.map +1 -1
  52. package/lib/es6/enhancement/staticChildren.js +17 -41
  53. package/lib/es6/enhancement/staticChildren.js.map +1 -1
  54. package/lib/es6/enhancement/style.js +6 -12
  55. package/lib/es6/enhancement/style.js.map +1 -1
  56. package/lib/es6/enhancement/uncontrolledProps.js +16 -42
  57. package/lib/es6/enhancement/uncontrolledProps.js.map +1 -1
  58. package/lib/es6/index.js +55 -110
  59. package/lib/es6/index.js.map +1 -1
  60. package/lib/es6/register.js +0 -5
  61. package/lib/es6/register.js.map +1 -1
  62. package/lib/es6/styled/index.js.map +1 -1
  63. package/lib/es6/styled/sstyled.js +14 -49
  64. package/lib/es6/styled/sstyled.js.map +1 -1
  65. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
- ## [1.14.6] - 2023-03-28
5
+ ## [1.14.8] - 2023-04-24
6
6
 
7
7
  ### Changed
8
8
 
9
- - Version patch update due to children dependencies update (`@semcore/utils` [3.49.1 ~> 3.50.0]).
9
+ - Version patch update due to children dependencies update (`@semcore/utils` [3.50.3 ~> 3.50.4]).
10
10
 
11
11
  ## [1.14.0] - 2023-03-16
12
12
 
@@ -1,45 +1,30 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.Component = void 0;
9
-
10
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
10
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
11
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
12
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
19
-
20
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
-
22
14
  var _react = require("react");
23
-
24
15
  var RootComponent = /*#__PURE__*/function (_PureComponent) {
25
16
  (0, _inherits2["default"])(RootComponent, _PureComponent);
26
-
27
17
  var _super = (0, _createSuper2["default"])(RootComponent);
28
-
29
18
  function RootComponent() {
30
19
  var _this;
31
-
32
20
  (0, _classCallCheck2["default"])(this, RootComponent);
33
-
34
21
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
35
22
  args[_key] = arguments[_key];
36
23
  }
37
-
38
24
  _this = _super.call.apply(_super, [this].concat(args));
39
25
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "Root", void 0);
40
26
  return _this;
41
27
  }
42
-
43
28
  (0, _createClass2["default"])(RootComponent, [{
44
29
  key: "handlers",
45
30
  get: function get() {
@@ -53,7 +38,6 @@ var RootComponent = /*#__PURE__*/function (_PureComponent) {
53
38
  }]);
54
39
  return RootComponent;
55
40
  }(_react.PureComponent);
56
-
57
41
  var Component = RootComponent;
58
42
  exports.Component = Component;
59
43
  //# sourceMappingURL=Component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Component.js","names":["RootComponent","PureComponent","Component"],"sources":["../../src/Component.tsx"],"sourcesContent":["import React, {\n AllHTMLAttributes,\n ForwardRefExoticComponent,\n PureComponent,\n ReactNode,\n RefObject,\n} from 'react';\nimport { IStyledProps } from './styled';\n\ntype KnownKeys<T> = {\n [K in keyof T]: string extends K ? never : number extends K ? never : K;\n} extends { [_ in keyof T]: infer U }\n ? U\n : never;\n\nexport type HandlersType<UCProps> = { [K in keyof UCProps]?: <T = unknown>(arg: T) => void };\nexport type ChildrenType<Props = {}, Ctx = {}, UCProps = {}> =\n | ((props: Props & Ctx, handlers: HandlersType<UCProps>) => ReactNode)\n | ReactNode;\n\nexport type RootComponentHandler = (...args: any[]) => void | false;\n\nexport interface IRootComponentHandlers {\n [key: string]: RootComponentHandler;\n}\n\nexport interface IRootComponentProps<Props = {}, Ctx = {}> {\n forwardRef?: RefObject<any>;\n Children?: any;\n children?: ChildrenType<Props, Ctx>;\n styles?: IStyledProps['styles'];\n}\n\nexport type IComponentProps<Props = {}, Ctx = {}> = Props & IRootComponentProps<Props, Ctx>;\n\nexport type IFunctionProps<Props = {}, Ctx = {}> = IComponentProps<Props, Ctx> &\n Omit<AllHTMLAttributes<any>, keyof IComponentProps<Props, Ctx>> & { Root?: Root };\n\nexport type PropsWithRenderFnChildren<Props = {}, Ctx = {}, UCProps = {}> = Omit<\n Pick<Props, KnownKeys<Props>>,\n 'children'\n> & {\n children?: ChildrenType<Props, Ctx, UCProps>;\n [key: string]: unknown;\n};\n\nexport type CProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?: ((props: Props & Ctx, handlers: UCProps) => React.ReactNode) | React.ReactNode;\n};\nexport type ReturnEl = React.ReactElement | null;\n\nexport interface IRootNodeProps {\n render: React.ElementType | string;\n tag?: React.ElementType | string;\n\n [key: string]: any;\n}\n\ntype Root = ForwardRefExoticComponent<IRootNodeProps>;\n\n/**\n * @deprecated since version ^1.8.0\n */\nexport type PropGetter<T extends (...args: any) => any> = <P>(props?: P) => ReturnType<T> & P;\n/**\n * @deprecated since version ^1.8.0\n */\nexport type PropGetterReturn<T extends (...args: any) => any> = Partial<ReturnType<T>>;\nexport type PropGetterFn = <T extends {}>(props?: T) => T & { [key: string]: unknown };\nexport type Merge<Props, HTMLProps> = Props & Omit<HTMLProps, keyof Props>;\nexport type MergeGetters<G1 extends (...args: any) => any, G2 extends (...args: any) => any> = <P>(\n props?: P,\n) => Merge<ReturnType<G1>, ReturnType<G2>> & P;\n\ndeclare const Root: Root;\n\nexport { Root };\n\nabstract class RootComponent<Props = {}, Context = {}, State = {}> extends PureComponent<\n Props & IRootComponentProps<Props, Context>,\n State\n> {\n get handlers(): Readonly<IRootComponentHandlers> {\n return {};\n }\n\n get asProps() {\n return {} as Readonly<\n Merge<Props & IRootComponentProps<Props, Context>, AllHTMLAttributes<any>>\n >;\n }\n\n Root: Root;\n}\n\nexport const Component = RootComponent;\nexport type Component<\n Props = {},\n Context = {},\n State = {},\n Handlers extends IRootComponentHandlers = IRootComponentHandlers,\n> = React.ComponentClass<Props, State> & {\n handlers: Readonly<Handlers>;\n\n asProps: Readonly<Merge<Props & IRootComponentProps<Props, Context>, AllHTMLAttributes<any>>>;\n\n Root: Root;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;IA8EeA,a;;;;;;;;;;;;;;;;;;;;;SAIb,eAAiD;MAC/C,OAAO,EAAP;IACD;;;SAED,eAAc;MACZ,OAAO,EAAP;IAGD;;;EAZwEC,oB;;AAiBpE,IAAMC,SAAS,GAAGF,aAAlB"}
1
+ {"version":3,"file":"Component.js","names":["_react","require","RootComponent","_PureComponent","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","_createClass2","key","get","PureComponent","Component","exports"],"sources":["../../src/Component.tsx"],"sourcesContent":["import React, {\n AllHTMLAttributes,\n ForwardRefExoticComponent,\n PureComponent,\n ReactNode,\n RefObject,\n} from 'react';\nimport { IStyledProps } from './styled';\n\ntype KnownKeys<T> = {\n [K in keyof T]: string extends K ? never : number extends K ? never : K;\n} extends { [_ in keyof T]: infer U }\n ? U\n : never;\n\nexport type HandlersType<UCProps> = { [K in keyof UCProps]?: <T = unknown>(arg: T) => void };\nexport type ChildrenType<Props = {}, Ctx = {}, UCProps = {}> =\n | ((props: Props & Ctx, handlers: HandlersType<UCProps>) => ReactNode)\n | ReactNode;\n\nexport type RootComponentHandler = (...args: any[]) => void | false;\n\nexport interface IRootComponentHandlers {\n [key: string]: RootComponentHandler;\n}\n\nexport interface IRootComponentProps<Props = {}, Ctx = {}> {\n forwardRef?: RefObject<any>;\n Children?: any;\n children?: ChildrenType<Props, Ctx>;\n styles?: IStyledProps['styles'];\n}\n\nexport type IComponentProps<Props = {}, Ctx = {}> = Props & IRootComponentProps<Props, Ctx>;\n\nexport type IFunctionProps<Props = {}, Ctx = {}> = IComponentProps<Props, Ctx> &\n Omit<AllHTMLAttributes<any>, keyof IComponentProps<Props, Ctx>> & { Root?: Root };\n\nexport type PropsWithRenderFnChildren<Props = {}, Ctx = {}, UCProps = {}> = Omit<\n Pick<Props, KnownKeys<Props>>,\n 'children'\n> & {\n children?: ChildrenType<Props, Ctx, UCProps>;\n [key: string]: unknown;\n};\n\nexport type CProps<Props, Ctx = {}, UCProps = {}> = Props & {\n children?: ((props: Props & Ctx, handlers: UCProps) => React.ReactNode) | React.ReactNode;\n};\nexport type ReturnEl = React.ReactElement | null;\n\nexport interface IRootNodeProps {\n render: React.ElementType | string;\n tag?: React.ElementType | string;\n\n [key: string]: any;\n}\n\ntype Root = ForwardRefExoticComponent<IRootNodeProps>;\n\n/**\n * @deprecated since version ^1.8.0\n */\nexport type PropGetter<T extends (...args: any) => any> = <P>(props?: P) => ReturnType<T> & P;\n/**\n * @deprecated since version ^1.8.0\n */\nexport type PropGetterReturn<T extends (...args: any) => any> = Partial<ReturnType<T>>;\nexport type PropGetterFn = <T extends {}>(props?: T) => T & { [key: string]: unknown };\nexport type Merge<Props, HTMLProps> = Props & Omit<HTMLProps, keyof Props>;\nexport type MergeGetters<G1 extends (...args: any) => any, G2 extends (...args: any) => any> = <P>(\n props?: P,\n) => Merge<ReturnType<G1>, ReturnType<G2>> & P;\n\ndeclare const Root: Root;\n\nexport { Root };\n\nabstract class RootComponent<Props = {}, Context = {}, State = {}> extends PureComponent<\n Props & IRootComponentProps<Props, Context>,\n State\n> {\n get handlers(): Readonly<IRootComponentHandlers> {\n return {};\n }\n\n get asProps() {\n return {} as Readonly<\n Merge<Props & IRootComponentProps<Props, Context>, AllHTMLAttributes<any>>\n >;\n }\n\n Root: Root;\n}\n\nexport const Component = RootComponent;\nexport type Component<\n Props = {},\n Context = {},\n State = {},\n Handlers extends IRootComponentHandlers = IRootComponentHandlers,\n> = React.ComponentClass<Props, State> & {\n handlers: Readonly<Handlers>;\n\n asProps: Readonly<Merge<Props & IRootComponentProps<Props, Context>, AllHTMLAttributes<any>>>;\n\n Root: Root;\n};\n"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAMe,IAwEAC,aAAa,0BAAAC,cAAA;EAAA,IAAAC,UAAA,aAAAF,aAAA,EAAAC,cAAA;EAAA,IAAAE,MAAA,OAAAC,aAAA,aAAAJ,aAAA;EAAA,SAAAA,cAAA;IAAA,IAAAK,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,aAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAA,IAAAM,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA;IAAA,OAAAA,KAAA;EAAA;EAAA,IAAAa,aAAA,aAAAlB,aAAA;IAAAmB,GAAA;IAAAC,GAAA,EAI1B,SAAAA,IAAA,EAAiD;MAC/C,OAAO,CAAC,CAAC;IACX;EAAC;IAAAD,GAAA;IAAAC,GAAA,EAED,SAAAA,IAAA,EAAc;MACZ,OAAO,CAAC,CAAC;IAGX;EAAC;EAAA,OAAApB,aAAA;AAAA,EAZwEqB,oBAAa;AAiBjF,IAAMC,SAAS,GAAGtB,aAAa;AAACuB,OAAA,CAAAD,SAAA,GAAAA,SAAA"}
@@ -1,58 +1,44 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = exports.CHILDREN_COMPONENT = void 0;
9
-
10
8
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
-
12
9
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
10
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
-
16
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
-
18
12
  var _react = require("react");
19
-
20
13
  var _index = require("../index");
21
-
22
14
  var _excluded = ["handlers", "getters"],
23
- _excluded2 = ["handlers"];
15
+ _excluded2 = ["handlers"];
24
16
  var CHILDREN_COMPONENT = Symbol('CHILDREN_COMPONENT');
25
17
  exports.CHILDREN_COMPONENT = CHILDREN_COMPONENT;
26
18
  var CHILDREN_SELF = Symbol('CHILDREN_SELF');
27
19
  var GETTER_REG = /^get[\w]+Props$/;
28
-
29
20
  function splitPropsAndGetters(props) {
30
21
  return Object.entries(props).reduce(function (acc, _ref) {
31
22
  var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
32
- key = _ref2[0],
33
- value = _ref2[1];
34
-
23
+ key = _ref2[0],
24
+ value = _ref2[1];
35
25
  if (GETTER_REG.exec(key) === null) {
36
26
  acc.props[key] = value;
37
27
  } else {
38
28
  acc.getters[key] = value;
39
29
  }
40
-
41
30
  return acc;
42
31
  }, {
43
32
  props: {},
44
33
  getters: {}
45
34
  });
46
35
  }
47
-
48
36
  function getterToArray(getter) {
49
37
  if (!Array.isArray(getter)) {
50
38
  return typeof getter === 'function' ? [getter] : [];
51
39
  }
52
-
53
40
  return getter;
54
41
  }
55
-
56
42
  function mergeObjects() {
57
43
  var a = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
58
44
  var b = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
@@ -64,7 +50,6 @@ function mergeObjects() {
64
50
  return acc;
65
51
  }, {});
66
52
  }
67
-
68
53
  function assignGettersChain(getters) {
69
54
  return function () {
70
55
  var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -73,37 +58,31 @@ function assignGettersChain(getters) {
73
58
  }, props);
74
59
  };
75
60
  }
76
-
77
61
  function createChildren(Context, contexts) {
78
62
  var Children = function Children() {
79
63
  var children = Children.origin;
80
-
81
64
  if (typeof children === 'function') {
82
65
  var _reduce = [].concat((0, _toConsumableArray2["default"])(contexts), [Context]).reduce(function (acc, ctx) {
83
- var _useContext = (0, _react.useContext)(ctx),
66
+ var _useContext = (0, _react.useContext)(ctx),
84
67
  handlers = _useContext.handlers,
85
68
  propsAndGetters = (0, _objectWithoutProperties2["default"])(_useContext, _excluded2);
86
-
87
- var _splitPropsAndGetters = splitPropsAndGetters(propsAndGetters),
69
+ var _splitPropsAndGetters = splitPropsAndGetters(propsAndGetters),
88
70
  props = _splitPropsAndGetters.props,
89
71
  getters = _splitPropsAndGetters.getters;
90
-
91
- return Object.assign({}, acc, (0, _objectSpread2["default"])({
92
- handlers: Object.assign({}, acc.handlers, handlers),
93
- getters: mergeObjects(acc.getters, getters)
94
- }, props));
95
- }, Children.props),
96
- _reduce$handlers = _reduce.handlers,
97
- handlers = _reduce$handlers === void 0 ? {} : _reduce$handlers,
98
- _reduce$getters = _reduce.getters,
99
- getters = _reduce$getters === void 0 ? {} : _reduce$getters,
100
- props = (0, _objectWithoutProperties2["default"])(_reduce, _excluded);
101
-
72
+ return Object.assign({}, acc, (0, _objectSpread2["default"])({
73
+ handlers: Object.assign({}, acc.handlers, handlers),
74
+ getters: mergeObjects(acc.getters, getters)
75
+ }, props));
76
+ }, Children.props),
77
+ _reduce$handlers = _reduce.handlers,
78
+ handlers = _reduce$handlers === void 0 ? {} : _reduce$handlers,
79
+ _reduce$getters = _reduce.getters,
80
+ getters = _reduce$getters === void 0 ? {} : _reduce$getters,
81
+ props = (0, _objectWithoutProperties2["default"])(_reduce, _excluded);
102
82
  var mergedGetters = Object.entries(getters).reduce(function (acc, _ref3) {
103
83
  var _ref4 = (0, _slicedToArray2["default"])(_ref3, 2),
104
- key = _ref4[0],
105
- value = _ref4[1];
106
-
84
+ key = _ref4[0],
85
+ value = _ref4[1];
107
86
  acc[key] = assignGettersChain(value);
108
87
  return acc;
109
88
  }, {});
@@ -111,16 +90,13 @@ function createChildren(Context, contexts) {
111
90
  } else if (children === undefined) {
112
91
  return null;
113
92
  }
114
-
115
93
  return children;
116
94
  };
117
-
118
95
  Children.origin = null;
119
96
  Children.props = {};
120
97
  Children[CHILDREN_COMPONENT] = true;
121
98
  return Children;
122
99
  }
123
-
124
100
  function Enhancement(Context, parent) {
125
101
  return {
126
102
  init: function init() {
@@ -140,7 +116,6 @@ function Enhancement(Context, parent) {
140
116
  }
141
117
  };
142
118
  }
143
-
144
119
  var _default = Enhancement;
145
120
  exports["default"] = _default;
146
121
  //# sourceMappingURL=Children.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Children.js","names":["CHILDREN_COMPONENT","Symbol","CHILDREN_SELF","GETTER_REG","splitPropsAndGetters","props","Object","entries","reduce","acc","key","value","exec","getters","getterToArray","getter","Array","isArray","mergeObjects","a","b","core","keys","assignGettersChain","createChildren","Context","contexts","Children","children","origin","ctx","useContext","handlers","propsAndGetters","assign","mergedGetters","undefined","Enhancement","parent","init","map","component","CONTEXT_COMPONENT","filter","Boolean","asProps"],"sources":["../../../src/enhancement/Children.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { CONTEXT_COMPONENT } from '../index';\n\nexport const CHILDREN_COMPONENT = Symbol('CHILDREN_COMPONENT');\nconst CHILDREN_SELF = Symbol('CHILDREN_SELF');\n\nconst GETTER_REG = /^get[\\w]+Props$/;\n\nfunction splitPropsAndGetters(props) {\n return Object.entries(props).reduce(\n (acc, [key, value]) => {\n if (GETTER_REG.exec(key) === null) {\n acc.props[key] = value;\n } else {\n acc.getters[key] = value;\n }\n return acc;\n },\n { props: {}, getters: {} },\n );\n}\n\nfunction getterToArray(getter) {\n if (!Array.isArray(getter)) {\n return typeof getter === 'function' ? [getter] : [];\n }\n return getter;\n}\n\nfunction mergeObjects(a = {}, b = {}) {\n const core = { ...a, ...b };\n return Object.keys(core).reduce((acc, key) => {\n a[key] = getterToArray(a[key]);\n b[key] = getterToArray(b[key]);\n acc[key] = [...a[key], ...b[key]];\n return acc;\n }, {});\n}\n\nfunction assignGettersChain(getters: Array<Function>) {\n return function (props = {}) {\n return getters.reduce((acc, getter) => {\n return getter(acc);\n }, props);\n };\n}\n\nfunction createChildren(Context, contexts) {\n const Children = function () {\n const children = Children.origin;\n if (typeof children === 'function') {\n const {\n handlers = {},\n getters = {},\n ...props\n } = [...contexts, Context].reduce((acc, ctx) => {\n const { handlers, ...propsAndGetters } = useContext(ctx);\n const { props, getters } = splitPropsAndGetters(propsAndGetters);\n return Object.assign({}, acc, {\n handlers: Object.assign({}, acc.handlers, handlers),\n getters: mergeObjects(acc.getters, getters),\n ...props,\n });\n }, Children.props);\n\n const mergedGetters = Object.entries(getters).reduce((acc, [key, value]) => {\n acc[key] = assignGettersChain(value as []);\n return acc;\n }, {});\n\n return children({ ...props, ...mergedGetters }, handlers);\n } else if (children === undefined) {\n return null;\n }\n return children;\n };\n Children.origin = null;\n Children.props = {};\n Children[CHILDREN_COMPONENT] = true;\n return Children;\n}\n\nfunction Enhancement(Context, parent) {\n return {\n init: function () {\n const contexts = (Array.isArray(parent) ? parent : [parent])\n .map((component) => component[CONTEXT_COMPONENT])\n .filter(Boolean);\n this[CHILDREN_SELF] = createChildren(Context, contexts);\n },\n asProps: function (props) {\n // TODO: learn the reason what it was used for (by lsroman)\n // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;\n this[CHILDREN_SELF].origin = props.children;\n this[CHILDREN_SELF].props = props;\n return {\n ...props,\n Children: this[CHILDREN_SELF],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Children.js","names":["_react","require","_index","_excluded","_excluded2","CHILDREN_COMPONENT","Symbol","exports","CHILDREN_SELF","GETTER_REG","splitPropsAndGetters","props","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray2","key","value","exec","getters","getterToArray","getter","Array","isArray","mergeObjects","a","arguments","length","undefined","b","core","_objectSpread2","keys","concat","_toConsumableArray2","assignGettersChain","createChildren","Context","contexts","Children","children","origin","_reduce","ctx","_useContext","useContext","handlers","propsAndGetters","_objectWithoutProperties2","_splitPropsAndGetters","assign","_reduce$handlers","_reduce$getters","mergedGetters","_ref3","_ref4","Enhancement","parent","init","map","component","CONTEXT_COMPONENT","filter","Boolean","asProps","_default"],"sources":["../../../src/enhancement/Children.tsx"],"sourcesContent":["import { useContext } from 'react';\nimport { CONTEXT_COMPONENT } from '../index';\n\nexport const CHILDREN_COMPONENT = Symbol('CHILDREN_COMPONENT');\nconst CHILDREN_SELF = Symbol('CHILDREN_SELF');\n\nconst GETTER_REG = /^get[\\w]+Props$/;\n\nfunction splitPropsAndGetters(props) {\n return Object.entries(props).reduce(\n (acc, [key, value]) => {\n if (GETTER_REG.exec(key) === null) {\n acc.props[key] = value;\n } else {\n acc.getters[key] = value;\n }\n return acc;\n },\n { props: {}, getters: {} },\n );\n}\n\nfunction getterToArray(getter) {\n if (!Array.isArray(getter)) {\n return typeof getter === 'function' ? [getter] : [];\n }\n return getter;\n}\n\nfunction mergeObjects(a = {}, b = {}) {\n const core = { ...a, ...b };\n return Object.keys(core).reduce((acc, key) => {\n a[key] = getterToArray(a[key]);\n b[key] = getterToArray(b[key]);\n acc[key] = [...a[key], ...b[key]];\n return acc;\n }, {});\n}\n\nfunction assignGettersChain(getters: Array<Function>) {\n return function (props = {}) {\n return getters.reduce((acc, getter) => {\n return getter(acc);\n }, props);\n };\n}\n\nfunction createChildren(Context, contexts) {\n const Children = function () {\n const children = Children.origin;\n if (typeof children === 'function') {\n const {\n handlers = {},\n getters = {},\n ...props\n } = [...contexts, Context].reduce((acc, ctx) => {\n const { handlers, ...propsAndGetters } = useContext(ctx);\n const { props, getters } = splitPropsAndGetters(propsAndGetters);\n return Object.assign({}, acc, {\n handlers: Object.assign({}, acc.handlers, handlers),\n getters: mergeObjects(acc.getters, getters),\n ...props,\n });\n }, Children.props);\n\n const mergedGetters = Object.entries(getters).reduce((acc, [key, value]) => {\n acc[key] = assignGettersChain(value as []);\n return acc;\n }, {});\n\n return children({ ...props, ...mergedGetters }, handlers);\n } else if (children === undefined) {\n return null;\n }\n return children;\n };\n Children.origin = null;\n Children.props = {};\n Children[CHILDREN_COMPONENT] = true;\n return Children;\n}\n\nfunction Enhancement(Context, parent) {\n return {\n init: function () {\n const contexts = (Array.isArray(parent) ? parent : [parent])\n .map((component) => component[CONTEXT_COMPONENT])\n .filter(Boolean);\n this[CHILDREN_SELF] = createChildren(Context, contexts);\n },\n asProps: function (props) {\n // TODO: learn the reason what it was used for (by lsroman)\n // this[CHILDREN_SELF].origin = _Children ? _Children.origin : children;\n this[CHILDREN_SELF].origin = props.children;\n this[CHILDREN_SELF].props = props;\n return {\n ...props,\n Children: this[CHILDREN_SELF],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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"}
@@ -1,74 +1,58 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
-
14
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
-
16
11
  var _react = _interopRequireDefault(require("react"));
17
-
18
12
  var _assignProps = _interopRequireDefault(require("@semcore/utils/lib/assignProps"));
19
-
20
13
  var _ref4 = require("@semcore/utils/lib/ref");
21
-
22
14
  var _excluded = ["render"],
23
- _excluded2 = ["Root", "styles", "children", "Children", "forwardRef"];
24
-
15
+ _excluded2 = ["Root", "styles", "children", "Children", "forwardRef"];
25
16
  function createRootRender() {
26
17
  // @ts-ignore
27
18
  var Root = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
28
19
  var Tag = _ref.render,
29
- source = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
20
+ source = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
30
21
  var _Root$props = Root.props,
31
- _Root = _Root$props.Root,
32
- styles = _Root$props.styles,
33
- children = _Root$props.children,
34
- Children = _Root$props.Children,
35
- _Root$props$forwardRe = _Root$props.forwardRef,
36
- forwardRef = _Root$props$forwardRe === void 0 ? null : _Root$props$forwardRe,
37
- props = (0, _objectWithoutProperties2["default"])(_Root$props, _excluded2);
22
+ _Root = _Root$props.Root,
23
+ styles = _Root$props.styles,
24
+ children = _Root$props.children,
25
+ Children = _Root$props.Children,
26
+ _Root$props$forwardRe = _Root$props.forwardRef,
27
+ forwardRef = _Root$props$forwardRe === void 0 ? null : _Root$props$forwardRe,
28
+ props = (0, _objectWithoutProperties2["default"])(_Root$props, _excluded2);
38
29
  var clearProps = Object.entries(props).reduce(function (props, _ref2) {
39
30
  var _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
40
- name = _ref3[0],
41
- value = _ref3[1];
42
-
31
+ name = _ref3[0],
32
+ value = _ref3[1];
43
33
  if (value !== undefined) {
44
34
  props[name] = value;
45
35
  }
46
-
47
36
  return props;
48
37
  }, {});
49
- var child = {}; // TODO: need to find better check solution (by lsroman)
50
-
38
+ var child = {};
39
+ // TODO: need to find better check solution (by lsroman)
51
40
  if (typeof Children.origin !== 'undefined') {
52
41
  // @ts-ignore
53
42
  child.children = /*#__PURE__*/_react["default"].createElement(Children, null);
54
43
  }
55
-
56
44
  var other = (0, _assignProps["default"])((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, clearProps), {}, {
57
45
  ref: (0, _ref4.useForkRef)(forwardRef, ref)
58
46
  }), (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, child), source));
59
-
60
47
  if (!Tag) {
61
48
  throw new Error('`render` prop of Root is not provided');
62
49
  }
63
-
64
50
  return /*#__PURE__*/_react["default"].createElement(Tag, other);
65
- }); // @ts-ignore
66
-
67
-
51
+ });
52
+ // @ts-ignore
68
53
  Root.props = {};
69
54
  return Root;
70
55
  }
71
-
72
56
  function Enhancement() {
73
57
  return {
74
58
  init: function init() {
@@ -80,7 +64,6 @@ function Enhancement() {
80
64
  Root: this.Root
81
65
  });
82
66
  }
83
-
84
67
  return props;
85
68
  },
86
69
  render: function render(_render, props) {
@@ -89,7 +72,6 @@ function Enhancement() {
89
72
  }
90
73
  };
91
74
  }
92
-
93
75
  var _default = Enhancement;
94
76
  exports["default"] = _default;
95
77
  //# sourceMappingURL=Root.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Root.js","names":["createRootRender","Root","React","forwardRef","ref","Tag","render","source","props","_Root","styles","children","Children","clearProps","Object","entries","reduce","name","value","undefined","child","origin","other","assignProps","useForkRef","Error","Enhancement","init","asProps","WrapperComponent","isFunction"],"sources":["../../../src/enhancement/Root.tsx"],"sourcesContent":["import React from 'react';\n// @ts-ignore\nimport assignProps from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport { useForkRef } from '@semcore/utils/lib/ref';\n\nfunction createRootRender() {\n // @ts-ignore\n const Root = React.forwardRef(function ({ render: Tag, ...source }, ref) {\n const {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Root: _Root,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n styles,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n children,\n Children,\n forwardRef = null,\n ...props\n // @ts-ignore\n } = Root.props;\n\n const clearProps = Object.entries(props).reduce((props, [name, value]) => {\n if (value !== undefined) {\n props[name] = value;\n }\n return props;\n }, {});\n\n const child = {};\n // TODO: need to find better check solution (by lsroman)\n if (typeof Children.origin !== 'undefined') {\n // @ts-ignore\n child.children = <Children />;\n }\n\n const other = assignProps(\n {\n ...clearProps,\n ref: useForkRef(forwardRef, ref),\n },\n {\n ...child,\n ...source,\n },\n );\n if (!Tag) {\n throw new Error('`render` prop of Root is not provided');\n }\n return <Tag {...other} />;\n });\n // @ts-ignore\n Root.props = {};\n return Root;\n}\n\nfunction Enhancement() {\n return {\n init: function () {\n this.Root = createRootRender();\n },\n asProps: function (props, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...props,\n Root: this.Root,\n };\n }\n return props;\n },\n render: function (render, props) {\n this.Root.props = props;\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;;;;;;AAAA;;AAEA;;AAEA;;;;;AAEA,SAASA,gBAAT,GAA4B;EAC1B;EACA,IAAMC,IAAI,gBAAGC,iBAAA,CAAMC,UAAN,CAAiB,gBAAsCC,GAAtC,EAA2C;IAAA,IAAvBC,GAAuB,QAA/BC,MAA+B;IAAA,IAAfC,MAAe;IACvE,kBAWIN,IAAI,CAACO,KAXT;IAAA,IAEQC,KAFR,eAEER,IAFF;IAAA,IAIES,MAJF,eAIEA,MAJF;IAAA,IAMEC,QANF,eAMEA,QANF;IAAA,IAOEC,QAPF,eAOEA,QAPF;IAAA,wCAQET,UARF;IAAA,IAQEA,UARF,sCAQe,IARf;IAAA,IASKK,KATL;IAaA,IAAMK,UAAU,GAAGC,MAAM,CAACC,OAAP,CAAeP,KAAf,EAAsBQ,MAAtB,CAA6B,UAACR,KAAD,SAA0B;MAAA;MAAA,IAAjBS,IAAiB;MAAA,IAAXC,KAAW;;MACxE,IAAIA,KAAK,KAAKC,SAAd,EAAyB;QACvBX,KAAK,CAACS,IAAD,CAAL,GAAcC,KAAd;MACD;;MACD,OAAOV,KAAP;IACD,CALkB,EAKhB,EALgB,CAAnB;IAOA,IAAMY,KAAK,GAAG,EAAd,CArBuE,CAsBvE;;IACA,IAAI,OAAOR,QAAQ,CAACS,MAAhB,KAA2B,WAA/B,EAA4C;MAC1C;MACAD,KAAK,CAACT,QAAN,gBAAiB,gCAAC,QAAD,OAAjB;IACD;;IAED,IAAMW,KAAK,GAAG,IAAAC,uBAAA,oEAEPV,UAFO;MAGVT,GAAG,EAAE,IAAAoB,gBAAA,EAAWrB,UAAX,EAAuBC,GAAvB;IAHK,sEAMPgB,KANO,GAOPb,MAPO,EAAd;;IAUA,IAAI,CAACF,GAAL,EAAU;MACR,MAAM,IAAIoB,KAAJ,CAAU,uCAAV,CAAN;IACD;;IACD,oBAAO,gCAAC,GAAD,EAASH,KAAT,CAAP;EACD,CA1CY,CAAb,CAF0B,CA6C1B;;;EACArB,IAAI,CAACO,KAAL,GAAa,EAAb;EACA,OAAOP,IAAP;AACD;;AAED,SAASyB,WAAT,GAAuB;EACrB,OAAO;IACLC,IAAI,EAAE,gBAAY;MAChB,KAAK1B,IAAL,GAAYD,gBAAgB,EAA5B;IACD,CAHI;IAIL4B,OAAO,EAAE,iBAAUpB,KAAV,EAAiBqB,gBAAjB,EAAmCC,UAAnC,EAA+C;MACtD,IAAIA,UAAJ,EAAgB;QACd,yEACKtB,KADL;UAEEP,IAAI,EAAE,KAAKA;QAFb;MAID;;MACD,OAAOO,KAAP;IACD,CAZI;IAaLF,MAAM,EAAE,gBAAUA,OAAV,EAAkBE,KAAlB,EAAyB;MAC/B,KAAKP,IAAL,CAAUO,KAAV,GAAkBA,KAAlB;MACA,OAAOF,OAAP;IACD;EAhBI,CAAP;AAkBD;;eAEcoB,W"}
1
+ {"version":3,"file":"Root.js","names":["_react","_interopRequireDefault","require","_assignProps","_ref4","_excluded","_excluded2","createRootRender","Root","React","forwardRef","_ref","ref","Tag","render","source","_objectWithoutProperties2","_Root$props","props","_Root","styles","children","Children","_Root$props$forwardRe","clearProps","Object","entries","reduce","_ref2","_ref3","_slicedToArray2","name","value","undefined","child","origin","createElement","other","assignProps","_objectSpread2","useForkRef","Error","Enhancement","init","asProps","WrapperComponent","isFunction","_default","exports"],"sources":["../../../src/enhancement/Root.tsx"],"sourcesContent":["import React from 'react';\n// @ts-ignore\nimport assignProps from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport { useForkRef } from '@semcore/utils/lib/ref';\n\nfunction createRootRender() {\n // @ts-ignore\n const Root = React.forwardRef(function ({ render: Tag, ...source }, ref) {\n const {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n Root: _Root,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n styles,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n children,\n Children,\n forwardRef = null,\n ...props\n // @ts-ignore\n } = Root.props;\n\n const clearProps = Object.entries(props).reduce((props, [name, value]) => {\n if (value !== undefined) {\n props[name] = value;\n }\n return props;\n }, {});\n\n const child = {};\n // TODO: need to find better check solution (by lsroman)\n if (typeof Children.origin !== 'undefined') {\n // @ts-ignore\n child.children = <Children />;\n }\n\n const other = assignProps(\n {\n ...clearProps,\n ref: useForkRef(forwardRef, ref),\n },\n {\n ...child,\n ...source,\n },\n );\n if (!Tag) {\n throw new Error('`render` prop of Root is not provided');\n }\n return <Tag {...other} />;\n });\n // @ts-ignore\n Root.props = {};\n return Root;\n}\n\nfunction Enhancement() {\n return {\n init: function () {\n this.Root = createRootRender();\n },\n asProps: function (props, WrapperComponent, isFunction) {\n if (isFunction) {\n return {\n ...props,\n Root: this.Root,\n };\n }\n return props;\n },\n render: function (render, props) {\n this.Root.props = props;\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,KAAA,GAAAF,OAAA;AAAoD,IAAAG,SAAA;EAAAC,UAAA;AAEpD,SAASC,gBAAgBA,CAAA,EAAG;EAC1B;EACA,IAAMC,IAAI,gBAAGC,iBAAK,CAACC,UAAU,CAAC,UAAAC,IAAA,EAAsCC,GAAG,EAAE;IAAA,IAAvBC,GAAG,GAAAF,IAAA,CAAXG,MAAM;MAAUC,MAAM,OAAAC,yBAAA,aAAAL,IAAA,EAAAN,SAAA;IAC9D,IAAAY,WAAA,GAWIT,IAAI,CAACU,KAAK;MATNC,KAAK,GAAAF,WAAA,CAAXT,IAAI;MAEJY,MAAM,GAAAH,WAAA,CAANG,MAAM;MAENC,QAAQ,GAAAJ,WAAA,CAARI,QAAQ;MACRC,QAAQ,GAAAL,WAAA,CAARK,QAAQ;MAAAC,qBAAA,GAAAN,WAAA,CACRP,UAAU;MAAVA,UAAU,GAAAa,qBAAA,cAAG,IAAI,GAAAA,qBAAA;MACdL,KAAK,OAAAF,yBAAA,aAAAC,WAAA,EAAAX,UAAA;IAIV,IAAMkB,UAAU,GAAGC,MAAM,CAACC,OAAO,CAACR,KAAK,CAAC,CAACS,MAAM,CAAC,UAACT,KAAK,EAAAU,KAAA,EAAoB;MAAA,IAAAC,KAAA,OAAAC,eAAA,aAAAF,KAAA;QAAjBG,IAAI,GAAAF,KAAA;QAAEG,KAAK,GAAAH,KAAA;MAClE,IAAIG,KAAK,KAAKC,SAAS,EAAE;QACvBf,KAAK,CAACa,IAAI,CAAC,GAAGC,KAAK;MACrB;MACA,OAAOd,KAAK;IACd,CAAC,EAAE,CAAC,CAAC,CAAC;IAEN,IAAMgB,KAAK,GAAG,CAAC,CAAC;IAChB;IACA,IAAI,OAAOZ,QAAQ,CAACa,MAAM,KAAK,WAAW,EAAE;MAC1C;MACAD,KAAK,CAACb,QAAQ,gBAAGrB,MAAA,YAAAoC,aAAA,CAACd,QAAQ,OAAG;IAC/B;IAEA,IAAMe,KAAK,GAAG,IAAAC,uBAAW,MAAAC,cAAA,iBAAAA,cAAA,iBAElBf,UAAU;MACbZ,GAAG,EAAE,IAAA4B,gBAAU,EAAC9B,UAAU,EAAEE,GAAG;IAAC,QAAA2B,cAAA,iBAAAA,cAAA,iBAG7BL,KAAK,GACLnB,MAAM,EAEZ;IACD,IAAI,CAACF,GAAG,EAAE;MACR,MAAM,IAAI4B,KAAK,CAAC,uCAAuC,CAAC;IAC1D;IACA,oBAAOzC,MAAA,YAAAoC,aAAA,CAACvB,GAAG,EAAKwB,KAAK,CAAI;EAC3B,CAAC,CAAC;EACF;EACA7B,IAAI,CAACU,KAAK,GAAG,CAAC,CAAC;EACf,OAAOV,IAAI;AACb;AAEA,SAASkC,WAAWA,CAAA,EAAG;EACrB,OAAO;IACLC,IAAI,EAAE,SAAAA,KAAA,EAAY;MAChB,IAAI,CAACnC,IAAI,GAAGD,gBAAgB,EAAE;IAChC,CAAC;IACDqC,OAAO,EAAE,SAAAA,QAAU1B,KAAK,EAAE2B,gBAAgB,EAAEC,UAAU,EAAE;MACtD,IAAIA,UAAU,EAAE;QACd,WAAAP,cAAA,iBAAAA,cAAA,iBACKrB,KAAK;UACRV,IAAI,EAAE,IAAI,CAACA;QAAI;MAEnB;MACA,OAAOU,KAAK;IACd,CAAC;IACDJ,MAAM,EAAE,SAAAA,OAAUA,OAAM,EAAEI,KAAK,EAAE;MAC/B,IAAI,CAACV,IAAI,CAACU,KAAK,GAAGA,KAAK;MACvB,OAAOJ,OAAM;IACf;EACF,CAAC;AACH;AAAC,IAAAiC,QAAA,GAEcL,WAAW;AAAAM,OAAA,cAAAD,QAAA"}
@@ -4,25 +4,19 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  function arraysEqual(a, b) {
9
8
  if (a.length !== b.length) return false;
10
-
11
9
  for (var i = 0; i < a.length; i++) {
12
10
  if (a[i] !== b[i]) return false;
13
11
  }
14
-
15
12
  return true;
16
13
  }
17
-
18
14
  function handlerBinder(fn) {
19
15
  return function () {
20
16
  for (var _len = arguments.length, depsArgs = new Array(_len), _key = 0; _key < _len; _key++) {
21
17
  depsArgs[_key] = arguments[_key];
22
18
  }
23
-
24
19
  var memoizeds = [];
25
-
26
20
  if (handlerBinder.hasher.has(fn)) {
27
21
  memoizeds = handlerBinder.hasher.get(fn);
28
22
  var memoized = memoizeds.find(function (memoized) {
@@ -30,7 +24,6 @@ function handlerBinder(fn) {
30
24
  });
31
25
  if (memoized) return memoized.fn;
32
26
  }
33
-
34
27
  var bindFn = fn.apply(void 0, depsArgs).bind(fn);
35
28
  memoizeds.push({
36
29
  deps: depsArgs,
@@ -40,9 +33,7 @@ function handlerBinder(fn) {
40
33
  return bindFn;
41
34
  };
42
35
  }
43
-
44
36
  handlerBinder.hasher = new WeakMap();
45
-
46
37
  function Enhancement() {
47
38
  return {
48
39
  condition: function condition(Component, isFunction) {
@@ -50,7 +41,6 @@ function Enhancement() {
50
41
  },
51
42
  init: function init() {
52
43
  var _this = this;
53
-
54
44
  Object.keys(this).filter(function (field) {
55
45
  return field.startsWith('bindHandler');
56
46
  }).forEach(function (name) {
@@ -59,7 +49,6 @@ function Enhancement() {
59
49
  }
60
50
  };
61
51
  }
62
-
63
52
  var _default = Enhancement;
64
53
  exports["default"] = _default;
65
54
  //# sourceMappingURL=bindHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bindHandler.js","names":["arraysEqual","a","b","length","i","handlerBinder","fn","depsArgs","memoizeds","hasher","has","get","memoized","find","deps","bindFn","bind","push","set","WeakMap","Enhancement","condition","Component","isFunction","init","Object","keys","filter","field","startsWith","forEach","name"],"sources":["../../../src/enhancement/bindHandler.tsx"],"sourcesContent":["function arraysEqual(a, b) {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n}\n\nfunction handlerBinder(fn) {\n return function (...depsArgs) {\n let memoizeds = [];\n if (handlerBinder.hasher.has(fn)) {\n memoizeds = handlerBinder.hasher.get(fn);\n const memoized = memoizeds.find((memoized) => arraysEqual(memoized.deps, depsArgs));\n if (memoized) return memoized.fn;\n }\n\n const bindFn = fn(...depsArgs).bind(fn);\n memoizeds.push({\n deps: depsArgs,\n fn: bindFn,\n });\n handlerBinder.hasher.set(fn, memoizeds);\n return bindFn;\n };\n}\n\nhandlerBinder.hasher = new WeakMap();\n\nfunction Enhancement() {\n return {\n condition: function (Component, isFunction) {\n return !isFunction;\n },\n init: function () {\n Object.keys(this)\n .filter((field) => field.startsWith('bindHandler'))\n .forEach((name) => {\n this[name] = handlerBinder(this[name].bind(this));\n });\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;AAAA,SAASA,WAAT,CAAqBC,CAArB,EAAwBC,CAAxB,EAA2B;EACzB,IAAID,CAAC,CAACE,MAAF,KAAaD,CAAC,CAACC,MAAnB,EAA2B,OAAO,KAAP;;EAC3B,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,CAAC,CAACE,MAAtB,EAA8BC,CAAC,EAA/B,EAAmC;IACjC,IAAIH,CAAC,CAACG,CAAD,CAAD,KAASF,CAAC,CAACE,CAAD,CAAd,EAAmB,OAAO,KAAP;EACpB;;EACD,OAAO,IAAP;AACD;;AAED,SAASC,aAAT,CAAuBC,EAAvB,EAA2B;EACzB,OAAO,YAAuB;IAAA,kCAAVC,QAAU;MAAVA,QAAU;IAAA;;IAC5B,IAAIC,SAAS,GAAG,EAAhB;;IACA,IAAIH,aAAa,CAACI,MAAd,CAAqBC,GAArB,CAAyBJ,EAAzB,CAAJ,EAAkC;MAChCE,SAAS,GAAGH,aAAa,CAACI,MAAd,CAAqBE,GAArB,CAAyBL,EAAzB,CAAZ;MACA,IAAMM,QAAQ,GAAGJ,SAAS,CAACK,IAAV,CAAe,UAACD,QAAD;QAAA,OAAcZ,WAAW,CAACY,QAAQ,CAACE,IAAV,EAAgBP,QAAhB,CAAzB;MAAA,CAAf,CAAjB;MACA,IAAIK,QAAJ,EAAc,OAAOA,QAAQ,CAACN,EAAhB;IACf;;IAED,IAAMS,MAAM,GAAGT,EAAE,MAAF,SAAMC,QAAN,EAAgBS,IAAhB,CAAqBV,EAArB,CAAf;IACAE,SAAS,CAACS,IAAV,CAAe;MACbH,IAAI,EAAEP,QADO;MAEbD,EAAE,EAAES;IAFS,CAAf;IAIAV,aAAa,CAACI,MAAd,CAAqBS,GAArB,CAAyBZ,EAAzB,EAA6BE,SAA7B;IACA,OAAOO,MAAP;EACD,CAfD;AAgBD;;AAEDV,aAAa,CAACI,MAAd,GAAuB,IAAIU,OAAJ,EAAvB;;AAEA,SAASC,WAAT,GAAuB;EACrB,OAAO;IACLC,SAAS,EAAE,mBAAUC,SAAV,EAAqBC,UAArB,EAAiC;MAC1C,OAAO,CAACA,UAAR;IACD,CAHI;IAILC,IAAI,EAAE,gBAAY;MAAA;;MAChBC,MAAM,CAACC,IAAP,CAAY,IAAZ,EACGC,MADH,CACU,UAACC,KAAD;QAAA,OAAWA,KAAK,CAACC,UAAN,CAAiB,aAAjB,CAAX;MAAA,CADV,EAEGC,OAFH,CAEW,UAACC,IAAD,EAAU;QACjB,KAAI,CAACA,IAAD,CAAJ,GAAa1B,aAAa,CAAC,KAAI,CAAC0B,IAAD,CAAJ,CAAWf,IAAX,CAAgB,KAAhB,CAAD,CAA1B;MACD,CAJH;IAKD;EAVI,CAAP;AAYD;;eAEcI,W"}
1
+ {"version":3,"file":"bindHandler.js","names":["arraysEqual","a","b","length","i","handlerBinder","fn","_len","arguments","depsArgs","Array","_key","memoizeds","hasher","has","get","memoized","find","deps","bindFn","apply","bind","push","set","WeakMap","Enhancement","condition","Component","isFunction","init","_this","Object","keys","filter","field","startsWith","forEach","name","_default","exports"],"sources":["../../../src/enhancement/bindHandler.tsx"],"sourcesContent":["function arraysEqual(a, b) {\n if (a.length !== b.length) return false;\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) return false;\n }\n return true;\n}\n\nfunction handlerBinder(fn) {\n return function (...depsArgs) {\n let memoizeds = [];\n if (handlerBinder.hasher.has(fn)) {\n memoizeds = handlerBinder.hasher.get(fn);\n const memoized = memoizeds.find((memoized) => arraysEqual(memoized.deps, depsArgs));\n if (memoized) return memoized.fn;\n }\n\n const bindFn = fn(...depsArgs).bind(fn);\n memoizeds.push({\n deps: depsArgs,\n fn: bindFn,\n });\n handlerBinder.hasher.set(fn, memoizeds);\n return bindFn;\n };\n}\n\nhandlerBinder.hasher = new WeakMap();\n\nfunction Enhancement() {\n return {\n condition: function (Component, isFunction) {\n return !isFunction;\n },\n init: function () {\n Object.keys(this)\n .filter((field) => field.startsWith('bindHandler'))\n .forEach((name) => {\n this[name] = handlerBinder(this[name].bind(this));\n });\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;AAAA,SAASA,WAAWA,CAACC,CAAC,EAAEC,CAAC,EAAE;EACzB,IAAID,CAAC,CAACE,MAAM,KAAKD,CAAC,CAACC,MAAM,EAAE,OAAO,KAAK;EACvC,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,CAAC,CAACE,MAAM,EAAEC,CAAC,EAAE,EAAE;IACjC,IAAIH,CAAC,CAACG,CAAC,CAAC,KAAKF,CAAC,CAACE,CAAC,CAAC,EAAE,OAAO,KAAK;EACjC;EACA,OAAO,IAAI;AACb;AAEA,SAASC,aAAaA,CAACC,EAAE,EAAE;EACzB,OAAO,YAAuB;IAAA,SAAAC,IAAA,GAAAC,SAAA,CAAAL,MAAA,EAAVM,QAAQ,OAAAC,KAAA,CAAAH,IAAA,GAAAI,IAAA,MAAAA,IAAA,GAAAJ,IAAA,EAAAI,IAAA;MAARF,QAAQ,CAAAE,IAAA,IAAAH,SAAA,CAAAG,IAAA;IAAA;IAC1B,IAAIC,SAAS,GAAG,EAAE;IAClB,IAAIP,aAAa,CAACQ,MAAM,CAACC,GAAG,CAACR,EAAE,CAAC,EAAE;MAChCM,SAAS,GAAGP,aAAa,CAACQ,MAAM,CAACE,GAAG,CAACT,EAAE,CAAC;MACxC,IAAMU,QAAQ,GAAGJ,SAAS,CAACK,IAAI,CAAC,UAACD,QAAQ;QAAA,OAAKhB,WAAW,CAACgB,QAAQ,CAACE,IAAI,EAAET,QAAQ,CAAC;MAAA,EAAC;MACnF,IAAIO,QAAQ,EAAE,OAAOA,QAAQ,CAACV,EAAE;IAClC;IAEA,IAAMa,MAAM,GAAGb,EAAE,CAAAc,KAAA,SAAIX,QAAQ,CAAC,CAACY,IAAI,CAACf,EAAE,CAAC;IACvCM,SAAS,CAACU,IAAI,CAAC;MACbJ,IAAI,EAAET,QAAQ;MACdH,EAAE,EAAEa;IACN,CAAC,CAAC;IACFd,aAAa,CAACQ,MAAM,CAACU,GAAG,CAACjB,EAAE,EAAEM,SAAS,CAAC;IACvC,OAAOO,MAAM;EACf,CAAC;AACH;AAEAd,aAAa,CAACQ,MAAM,GAAG,IAAIW,OAAO,EAAE;AAEpC,SAASC,WAAWA,CAAA,EAAG;EACrB,OAAO;IACLC,SAAS,EAAE,SAAAA,UAAUC,SAAS,EAAEC,UAAU,EAAE;MAC1C,OAAO,CAACA,UAAU;IACpB,CAAC;IACDC,IAAI,EAAE,SAAAA,KAAA,EAAY;MAAA,IAAAC,KAAA;MAChBC,MAAM,CAACC,IAAI,CAAC,IAAI,CAAC,CACdC,MAAM,CAAC,UAACC,KAAK;QAAA,OAAKA,KAAK,CAACC,UAAU,CAAC,aAAa,CAAC;MAAA,EAAC,CAClDC,OAAO,CAAC,UAACC,IAAI,EAAK;QACjBP,KAAI,CAACO,IAAI,CAAC,GAAGhC,aAAa,CAACyB,KAAI,CAACO,IAAI,CAAC,CAAChB,IAAI,CAACS,KAAI,CAAC,CAAC;MACnD,CAAC,CAAC;IACN;EACF,CAAC;AACH;AAAC,IAAAQ,QAAA,GAEcb,WAAW;AAAAc,OAAA,cAAAD,QAAA"}
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
9
  function Enhancement() {
13
10
  return {
14
11
  wrapperProps: function wrapperProps(props, WrapperComponent) {
@@ -18,7 +15,6 @@ function Enhancement() {
18
15
  }
19
16
  };
20
17
  }
21
-
22
18
  var _default = Enhancement;
23
19
  exports["default"] = _default;
24
20
  //# sourceMappingURL=dataName.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataName.js","names":["Enhancement","wrapperProps","props","WrapperComponent","displayName"],"sources":["../../../src/enhancement/dataName.tsx"],"sourcesContent":["function Enhancement() {\n return {\n wrapperProps: function (props, WrapperComponent) {\n return {\n 'data-ui-name': WrapperComponent.displayName,\n ...props,\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;;AAAA,SAASA,WAAT,GAAuB;EACrB,OAAO;IACLC,YAAY,EAAE,sBAAUC,KAAV,EAAiBC,gBAAjB,EAAmC;MAC/C;QACE,gBAAgBA,gBAAgB,CAACC;MADnC,GAEKF,KAFL;IAID;EANI,CAAP;AAQD;;eAEcF,W"}
1
+ {"version":3,"file":"dataName.js","names":["Enhancement","wrapperProps","props","WrapperComponent","_objectSpread2","displayName","_default","exports"],"sources":["../../../src/enhancement/dataName.tsx"],"sourcesContent":["function Enhancement() {\n return {\n wrapperProps: function (props, WrapperComponent) {\n return {\n 'data-ui-name': WrapperComponent.displayName,\n ...props,\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;AAAA,SAASA,WAAWA,CAAA,EAAG;EACrB,OAAO;IACLC,YAAY,EAAE,SAAAA,aAAUC,KAAK,EAAEC,gBAAgB,EAAE;MAC/C,WAAAC,cAAA;QACE,cAAc,EAAED,gBAAgB,CAACE;MAAW,GACzCH,KAAK;IAEZ;EACF,CAAC;AACH;AAAC,IAAAI,QAAA,GAEcN,WAAW;AAAAO,OAAA,cAAAD,QAAA"}
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  function Enhancement() {
9
8
  return {
10
9
  condition: function condition(Component) {
@@ -17,7 +16,6 @@ function Enhancement() {
17
16
  }
18
17
  };
19
18
  }
20
-
21
19
  var _default = Enhancement;
22
20
  exports["default"] = _default;
23
21
  //# sourceMappingURL=enhance.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"enhance.js","names":["Enhancement","condition","Component","Boolean","enhance","length","wrapperProps","props","WrapperComponent","reduce","acc"],"sources":["../../../src/enhancement/enhance.tsx"],"sourcesContent":["function Enhancement() {\n return {\n condition: function (Component) {\n return Boolean(Component.enhance && Component.enhance.length);\n },\n wrapperProps: function (props, WrapperComponent) {\n return WrapperComponent.enhance.reduce((acc, enhance) => enhance(acc), props);\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;AAAA,SAASA,WAAT,GAAuB;EACrB,OAAO;IACLC,SAAS,EAAE,mBAAUC,SAAV,EAAqB;MAC9B,OAAOC,OAAO,CAACD,SAAS,CAACE,OAAV,IAAqBF,SAAS,CAACE,OAAV,CAAkBC,MAAxC,CAAd;IACD,CAHI;IAILC,YAAY,EAAE,sBAAUC,KAAV,EAAiBC,gBAAjB,EAAmC;MAC/C,OAAOA,gBAAgB,CAACJ,OAAjB,CAAyBK,MAAzB,CAAgC,UAACC,GAAD,EAAMN,OAAN;QAAA,OAAkBA,OAAO,CAACM,GAAD,CAAzB;MAAA,CAAhC,EAAgEH,KAAhE,CAAP;IACD;EANI,CAAP;AAQD;;eAEcP,W"}
1
+ {"version":3,"file":"enhance.js","names":["Enhancement","condition","Component","Boolean","enhance","length","wrapperProps","props","WrapperComponent","reduce","acc","_default","exports"],"sources":["../../../src/enhancement/enhance.tsx"],"sourcesContent":["function Enhancement() {\n return {\n condition: function (Component) {\n return Boolean(Component.enhance && Component.enhance.length);\n },\n wrapperProps: function (props, WrapperComponent) {\n return WrapperComponent.enhance.reduce((acc, enhance) => enhance(acc), props);\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;AAAA,SAASA,WAAWA,CAAA,EAAG;EACrB,OAAO;IACLC,SAAS,EAAE,SAAAA,UAAUC,SAAS,EAAE;MAC9B,OAAOC,OAAO,CAACD,SAAS,CAACE,OAAO,IAAIF,SAAS,CAACE,OAAO,CAACC,MAAM,CAAC;IAC/D,CAAC;IACDC,YAAY,EAAE,SAAAA,aAAUC,KAAK,EAAEC,gBAAgB,EAAE;MAC/C,OAAOA,gBAAgB,CAACJ,OAAO,CAACK,MAAM,CAAC,UAACC,GAAG,EAAEN,OAAO;QAAA,OAAKA,OAAO,CAACM,GAAG,CAAC;MAAA,GAAEH,KAAK,CAAC;IAC/E;EACF,CAAC;AACH;AAAC,IAAAI,QAAA,GAEcX,WAAW;AAAAY,OAAA,cAAAD,QAAA"}
@@ -4,7 +4,6 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports["default"] = void 0;
7
-
8
7
  function Enhancement() {
9
8
  var defaultProps = {};
10
9
  return {
@@ -12,11 +11,9 @@ function Enhancement() {
12
11
  if (!Component.defaultProps) {
13
12
  return false;
14
13
  }
15
-
16
14
  if (typeof Component.defaultProps === 'function') {
17
15
  return true;
18
16
  }
19
-
20
17
  return Boolean(Object.keys(Component.defaultProps).length);
21
18
  },
22
19
  "static": function _static(WrapperComponent) {
@@ -30,12 +27,10 @@ function Enhancement() {
30
27
  // TODO: optimization
31
28
  return Object.assign({}, defaultProps(props), props);
32
29
  }
33
-
34
30
  return Object.assign({}, defaultProps, props);
35
31
  }
36
32
  };
37
33
  }
38
-
39
34
  var _default = Enhancement;
40
35
  exports["default"] = _default;
41
36
  //# sourceMappingURL=functionDefaultProps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"functionDefaultProps.js","names":["Enhancement","defaultProps","condition","Component","Boolean","Object","keys","length","WrapperComponent","wrapperProps","props","assign"],"sources":["../../../src/enhancement/functionDefaultProps.tsx"],"sourcesContent":["function Enhancement() {\n let defaultProps = {};\n return {\n condition: function (Component) {\n if (!Component.defaultProps) {\n return false;\n }\n if (typeof Component.defaultProps === 'function') {\n return true;\n }\n return Boolean(Object.keys(Component.defaultProps).length);\n },\n static: function (WrapperComponent) {\n defaultProps = WrapperComponent.defaultProps;\n return {\n defaultProps: {},\n };\n },\n wrapperProps: function (props) {\n if (typeof defaultProps === 'function') {\n // TODO: optimization\n return Object.assign({}, defaultProps(props), props);\n }\n return Object.assign({}, defaultProps, props);\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;AAAA,SAASA,WAAT,GAAuB;EACrB,IAAIC,YAAY,GAAG,EAAnB;EACA,OAAO;IACLC,SAAS,EAAE,mBAAUC,SAAV,EAAqB;MAC9B,IAAI,CAACA,SAAS,CAACF,YAAf,EAA6B;QAC3B,OAAO,KAAP;MACD;;MACD,IAAI,OAAOE,SAAS,CAACF,YAAjB,KAAkC,UAAtC,EAAkD;QAChD,OAAO,IAAP;MACD;;MACD,OAAOG,OAAO,CAACC,MAAM,CAACC,IAAP,CAAYH,SAAS,CAACF,YAAtB,EAAoCM,MAArC,CAAd;IACD,CATI;IAUL,UAAQ,iBAAUC,gBAAV,EAA4B;MAClCP,YAAY,GAAGO,gBAAgB,CAACP,YAAhC;MACA,OAAO;QACLA,YAAY,EAAE;MADT,CAAP;IAGD,CAfI;IAgBLQ,YAAY,EAAE,sBAAUC,KAAV,EAAiB;MAC7B,IAAI,OAAOT,YAAP,KAAwB,UAA5B,EAAwC;QACtC;QACA,OAAOI,MAAM,CAACM,MAAP,CAAc,EAAd,EAAkBV,YAAY,CAACS,KAAD,CAA9B,EAAuCA,KAAvC,CAAP;MACD;;MACD,OAAOL,MAAM,CAACM,MAAP,CAAc,EAAd,EAAkBV,YAAlB,EAAgCS,KAAhC,CAAP;IACD;EAtBI,CAAP;AAwBD;;eAEcV,W"}
1
+ {"version":3,"file":"functionDefaultProps.js","names":["Enhancement","defaultProps","condition","Component","Boolean","Object","keys","length","_static","WrapperComponent","wrapperProps","props","assign","_default","exports"],"sources":["../../../src/enhancement/functionDefaultProps.tsx"],"sourcesContent":["function Enhancement() {\n let defaultProps = {};\n return {\n condition: function (Component) {\n if (!Component.defaultProps) {\n return false;\n }\n if (typeof Component.defaultProps === 'function') {\n return true;\n }\n return Boolean(Object.keys(Component.defaultProps).length);\n },\n static: function (WrapperComponent) {\n defaultProps = WrapperComponent.defaultProps;\n return {\n defaultProps: {},\n };\n },\n wrapperProps: function (props) {\n if (typeof defaultProps === 'function') {\n // TODO: optimization\n return Object.assign({}, defaultProps(props), props);\n }\n return Object.assign({}, defaultProps, props);\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;AAAA,SAASA,WAAWA,CAAA,EAAG;EACrB,IAAIC,YAAY,GAAG,CAAC,CAAC;EACrB,OAAO;IACLC,SAAS,EAAE,SAAAA,UAAUC,SAAS,EAAE;MAC9B,IAAI,CAACA,SAAS,CAACF,YAAY,EAAE;QAC3B,OAAO,KAAK;MACd;MACA,IAAI,OAAOE,SAAS,CAACF,YAAY,KAAK,UAAU,EAAE;QAChD,OAAO,IAAI;MACb;MACA,OAAOG,OAAO,CAACC,MAAM,CAACC,IAAI,CAACH,SAAS,CAACF,YAAY,CAAC,CAACM,MAAM,CAAC;IAC5D,CAAC;IACD,UAAQ,SAAAC,QAAUC,gBAAgB,EAAE;MAClCR,YAAY,GAAGQ,gBAAgB,CAACR,YAAY;MAC5C,OAAO;QACLA,YAAY,EAAE,CAAC;MACjB,CAAC;IACH,CAAC;IACDS,YAAY,EAAE,SAAAA,aAAUC,KAAK,EAAE;MAC7B,IAAI,OAAOV,YAAY,KAAK,UAAU,EAAE;QACtC;QACA,OAAOI,MAAM,CAACO,MAAM,CAAC,CAAC,CAAC,EAAEX,YAAY,CAACU,KAAK,CAAC,EAAEA,KAAK,CAAC;MACtD;MACA,OAAON,MAAM,CAACO,MAAM,CAAC,CAAC,CAAC,EAAEX,YAAY,EAAEU,KAAK,CAAC;IAC/C;EACF,CAAC;AACH;AAAC,IAAAE,QAAA,GAEcb,WAAW;AAAAc,OAAA,cAAAD,QAAA"}