@semcore/core 1.15.6 → 1.15.7

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 (36) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/lib/cjs/enhancement/Root.js.map +1 -1
  3. package/lib/cjs/enhancement/enhance.js +2 -1
  4. package/lib/cjs/enhancement/enhance.js.map +1 -1
  5. package/lib/cjs/enhancement/hoistProps.js +4 -2
  6. package/lib/cjs/enhancement/hoistProps.js.map +1 -1
  7. package/lib/cjs/enhancement/i18n.js.map +1 -1
  8. package/lib/cjs/enhancement/staticChildren.js +1 -1
  9. package/lib/cjs/enhancement/staticChildren.js.map +1 -1
  10. package/lib/cjs/enhancement/style.js +0 -1
  11. package/lib/cjs/enhancement/style.js.map +1 -1
  12. package/lib/cjs/enhancement/uncontrolledProps.js +2 -3
  13. package/lib/cjs/enhancement/uncontrolledProps.js.map +1 -1
  14. package/lib/cjs/index.js.map +1 -1
  15. package/lib/cjs/register.js +2 -1
  16. package/lib/cjs/register.js.map +1 -1
  17. package/lib/cjs/styled/sstyled.js +1 -4
  18. package/lib/cjs/styled/sstyled.js.map +1 -1
  19. package/lib/es6/enhancement/Root.js.map +1 -1
  20. package/lib/es6/enhancement/enhance.js +2 -1
  21. package/lib/es6/enhancement/enhance.js.map +1 -1
  22. package/lib/es6/enhancement/hoistProps.js +4 -2
  23. package/lib/es6/enhancement/hoistProps.js.map +1 -1
  24. package/lib/es6/enhancement/i18n.js.map +1 -1
  25. package/lib/es6/enhancement/staticChildren.js +1 -1
  26. package/lib/es6/enhancement/staticChildren.js.map +1 -1
  27. package/lib/es6/enhancement/style.js +0 -1
  28. package/lib/es6/enhancement/style.js.map +1 -1
  29. package/lib/es6/enhancement/uncontrolledProps.js +2 -3
  30. package/lib/es6/enhancement/uncontrolledProps.js.map +1 -1
  31. package/lib/es6/index.js.map +1 -1
  32. package/lib/es6/register.js +2 -1
  33. package/lib/es6/register.js.map +1 -1
  34. package/lib/es6/styled/sstyled.js +1 -2
  35. package/lib/es6/styled/sstyled.js.map +1 -1
  36. package/package.json +3 -8
package/CHANGELOG.md CHANGED
@@ -2,6 +2,12 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
+ ## [1.15.7] - 2023-06-27
6
+
7
+ ### Changed
8
+
9
+ - Version patch update due to children dependencies update (`@semcore/utils` [3.53.4 ~> 3.54.0]).
10
+
5
11
  ## [1.15.6] - 2023-06-14
6
12
 
7
13
  ### Changed
@@ -1 +1 @@
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"}
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 Root: _Root,\n\n styles,\n\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,GAUIT,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"}
@@ -7,7 +7,8 @@ exports["default"] = void 0;
7
7
  function Enhancement() {
8
8
  return {
9
9
  condition: function condition(Component) {
10
- return Boolean(Component.enhance && Component.enhance.length);
10
+ var _Component$enhance;
11
+ return Boolean((_Component$enhance = Component.enhance) === null || _Component$enhance === void 0 ? void 0 : _Component$enhance.length);
11
12
  },
12
13
  wrapperProps: function wrapperProps(props, WrapperComponent) {
13
14
  return WrapperComponent.enhance.reduce(function (acc, enhance) {
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"enhance.js","names":["Enhancement","condition","Component","_Component$enhance","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?.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;MAAA,IAAAC,kBAAA;MAC9B,OAAOC,OAAO,EAAAD,kBAAA,GAACD,SAAS,CAACG,OAAO,cAAAF,kBAAA,uBAAjBA,kBAAA,CAAmBG,MAAM,CAAC;IAC3C,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,GAEcZ,WAAW;AAAAa,OAAA,cAAAD,QAAA"}
@@ -37,7 +37,8 @@ function Enhancement(childComponents, Context) {
37
37
  return {
38
38
  condition: function condition(Component) {
39
39
  return [Component].concat((0, _toConsumableArray2["default"])(flatChildComponent(childComponents))).some(function (Component) {
40
- return Boolean(Component.hoistProps && Component.hoistProps.length);
40
+ var _Component$hoistProps;
41
+ return Boolean((_Component$hoistProps = Component.hoistProps) === null || _Component$hoistProps === void 0 ? void 0 : _Component$hoistProps.length);
41
42
  });
42
43
  },
43
44
  init: function init(props, WrapperComponent, isFunction) {
@@ -66,7 +67,8 @@ function Enhancement(childComponents, Context) {
66
67
  return (0, _assignProps["default"])(this[HOIST_SELF][0], props);
67
68
  },
68
69
  wrapperProps: function wrapperProps(props, WrapperComponent) {
69
- if (WrapperComponent.hoistProps && WrapperComponent.hoistProps.length) {
70
+ var _WrapperComponent$hoi;
71
+ if ((_WrapperComponent$hoi = WrapperComponent.hoistProps) !== null && _WrapperComponent$hoi !== void 0 && _WrapperComponent$hoi.length) {
70
72
  var context = (0, _react.useContext)(Context);
71
73
  var renameProps = WrapperComponent.hoistProps.reduce(function (acc, propName) {
72
74
  var _propName$split = propName.split(':'),
@@ -1 +1 @@
1
- {"version":3,"file":"hoistProps.js","names":["_react","require","_assignProps","_interopRequireDefault","_useEnhancedEffect","_pick","HOIST_CONTEXT","Symbol","exports","HOIST_SELF","HOIST_SET","flatChildComponent","childComponents","Object","values","reduce","acc","Component","Array","isArray","concat","_toConsumableArray2","push","Enhancement","Context","condition","some","Boolean","hoistProps","length","init","props","WrapperComponent","isFunction","_this","useState","obj","forceUpdate","context","_objectSpread3","_defineProperty2","asProps","assignProps","wrapperProps","useContext","renameProps","propName","_propName$split","split","_propName$split2","_slicedToArray2","name","rename","entries","pick","keys","_ref","_ref2","value","useEnhancedEffect","_default"],"sources":["../../../src/enhancement/hoistProps.tsx"],"sourcesContent":["import { useContext, useState } from 'react';\n// @ts-ignore\nimport assignProps from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n// @ts-ignore\nimport pick from '@semcore/utils/lib/pick';\n\nexport const HOIST_CONTEXT = Symbol('HOIST_CONTEXT');\nconst HOIST_SELF = Symbol('HOIST_SELF');\nconst HOIST_SET = Symbol('HOIST_SET');\n\nfunction flatChildComponent(childComponents) {\n return Object.values(childComponents).reduce<unknown[]>((acc, Component) => {\n if (Array.isArray(Component)) {\n acc = [...acc, Component[0], ...flatChildComponent(Component[1])];\n } else {\n acc.push(Component);\n }\n return acc;\n }, []);\n}\n\nfunction Enhancement(childComponents, Context) {\n return {\n condition: function (Component) {\n return [Component, ...flatChildComponent(childComponents)].some((Component) =>\n Boolean(Component.hoistProps && Component.hoistProps.length),\n );\n },\n init: function (props, WrapperComponent, isFunction) {\n if (isFunction) {\n // TODO: might breake rules of hooks (by lsroman)\n this[HOIST_SELF] = useState({});\n } else {\n this[HOIST_SELF] = [\n {},\n (obj) => {\n this[HOIST_SELF][0] = obj;\n this.forceUpdate();\n },\n ];\n }\n // For optimization render\n this[HOIST_SET] = (obj) => {\n this[HOIST_SELF][1](obj);\n };\n },\n context: function (context) {\n // TODO: need to optimizte container initialization (by lsroman)\n // WrapperComponent.hoistProps\n return {\n ...context,\n [HOIST_CONTEXT]: this[HOIST_SET],\n };\n },\n asProps: function (props) {\n // TODO: need to check for no props overwriting (by lsroman)\n return assignProps(this[HOIST_SELF][0], props);\n },\n wrapperProps: function (props, WrapperComponent) {\n if (WrapperComponent.hoistProps && WrapperComponent.hoistProps.length) {\n const context = useContext(Context);\n const renameProps = WrapperComponent.hoistProps.reduce((acc, propName) => {\n const [name, rename] = propName.split(':');\n acc[name] = rename || name;\n return acc;\n }, {});\n const hoistProps = Object.entries(pick(props, Object.keys(renameProps))).reduce(\n (acc, [name, value]) => {\n acc[renameProps[name]] = value;\n return acc;\n },\n {},\n );\n\n useEnhancedEffect(() => {\n if (context[HOIST_CONTEXT]) {\n context[HOIST_CONTEXT](hoistProps);\n }\n }, Object.values(hoistProps));\n }\n return props;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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"}
1
+ {"version":3,"file":"hoistProps.js","names":["_react","require","_assignProps","_interopRequireDefault","_useEnhancedEffect","_pick","HOIST_CONTEXT","Symbol","exports","HOIST_SELF","HOIST_SET","flatChildComponent","childComponents","Object","values","reduce","acc","Component","Array","isArray","concat","_toConsumableArray2","push","Enhancement","Context","condition","some","_Component$hoistProps","Boolean","hoistProps","length","init","props","WrapperComponent","isFunction","_this","useState","obj","forceUpdate","context","_objectSpread3","_defineProperty2","asProps","assignProps","wrapperProps","_WrapperComponent$hoi","useContext","renameProps","propName","_propName$split","split","_propName$split2","_slicedToArray2","name","rename","entries","pick","keys","_ref","_ref2","value","useEnhancedEffect","_default"],"sources":["../../../src/enhancement/hoistProps.tsx"],"sourcesContent":["import { useContext, useState } from 'react';\n// @ts-ignore\nimport assignProps from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n// @ts-ignore\nimport pick from '@semcore/utils/lib/pick';\n\nexport const HOIST_CONTEXT = Symbol('HOIST_CONTEXT');\nconst HOIST_SELF = Symbol('HOIST_SELF');\nconst HOIST_SET = Symbol('HOIST_SET');\n\nfunction flatChildComponent(childComponents) {\n return Object.values(childComponents).reduce<unknown[]>((acc, Component) => {\n if (Array.isArray(Component)) {\n acc = [...acc, Component[0], ...flatChildComponent(Component[1])];\n } else {\n acc.push(Component);\n }\n return acc;\n }, []);\n}\n\nfunction Enhancement(childComponents, Context) {\n return {\n condition: function (Component) {\n return [Component, ...flatChildComponent(childComponents)].some((Component) =>\n Boolean(Component.hoistProps?.length),\n );\n },\n init: function (props, WrapperComponent, isFunction) {\n if (isFunction) {\n // TODO: might breake rules of hooks (by lsroman)\n this[HOIST_SELF] = useState({});\n } else {\n this[HOIST_SELF] = [\n {},\n (obj) => {\n this[HOIST_SELF][0] = obj;\n this.forceUpdate();\n },\n ];\n }\n // For optimization render\n this[HOIST_SET] = (obj) => {\n this[HOIST_SELF][1](obj);\n };\n },\n context: function (context) {\n // TODO: need to optimizte container initialization (by lsroman)\n // WrapperComponent.hoistProps\n return {\n ...context,\n [HOIST_CONTEXT]: this[HOIST_SET],\n };\n },\n asProps: function (props) {\n // TODO: need to check for no props overwriting (by lsroman)\n return assignProps(this[HOIST_SELF][0], props);\n },\n wrapperProps: function (props, WrapperComponent) {\n if (WrapperComponent.hoistProps?.length) {\n const context = useContext(Context);\n const renameProps = WrapperComponent.hoistProps.reduce((acc, propName) => {\n const [name, rename] = propName.split(':');\n acc[name] = rename || name;\n return acc;\n }, {});\n const hoistProps = Object.entries(pick(props, Object.keys(renameProps))).reduce(\n (acc, [name, value]) => {\n acc[renameProps[name]] = value;\n return acc;\n },\n {},\n );\n\n useEnhancedEffect(() => {\n if (context[HOIST_CONTEXT]) {\n context[HOIST_CONTEXT](hoistProps);\n }\n }, Object.values(hoistProps));\n }\n return props;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","names":["_react","_interopRequireDefault","require","_WithI18n","_excluded","i18nAppLocaleEnhance","wrapperProps","props","locale","other","_objectWithoutProperties2","contextLocale","React","useContext","Context","_objectSpread2","_default","exports"],"sources":["../../../src/enhancement/i18n.tsx"],"sourcesContent":["import React from 'react';\n// @ts-ignore\nimport { Context } from '@semcore/utils/lib/enhances/WithI18n';\n\n\nfunction i18nAppLocaleEnhance() {\n return {\n wrapperProps: (props) => {\n const { locale, ...other } = props;\n const contextLocale = React.useContext(Context);\n return {\n ...other,\n locale: locale ?? contextLocale,\n };\n },\n };\n}\n\nexport default i18nAppLocaleEnhance;"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAA+D,IAAAE,SAAA;AAG/D,SAASC,oBAAoBA,CAAA,EAAG;EAC9B,OAAO;IACLC,YAAY,EAAE,SAAAA,aAACC,KAAK,EAAK;MACvB,IAAQC,MAAM,GAAeD,KAAK,CAA1BC,MAAM;QAAKC,KAAK,OAAAC,yBAAA,aAAKH,KAAK,EAAAH,SAAA;MAClC,IAAMO,aAAa,GAAGC,iBAAK,CAACC,UAAU,CAACC,iBAAO,CAAC;MAC/C,WAAAC,cAAA,iBAAAA,cAAA,iBACKN,KAAK;QACRD,MAAM,EAAEA,MAAM,aAANA,MAAM,cAANA,MAAM,GAAIG;MAAa;IAEnC;EACF,CAAC;AACH;AAAC,IAAAK,QAAA,GAEcX,oBAAoB;AAAAY,OAAA,cAAAD,QAAA"}
1
+ {"version":3,"file":"i18n.js","names":["_react","_interopRequireDefault","require","_WithI18n","_excluded","i18nAppLocaleEnhance","wrapperProps","props","locale","other","_objectWithoutProperties2","contextLocale","React","useContext","Context","_objectSpread2","_default","exports"],"sources":["../../../src/enhancement/i18n.tsx"],"sourcesContent":["import React from 'react';\n// @ts-ignore\nimport { Context } from '@semcore/utils/lib/enhances/WithI18n';\n\nfunction i18nAppLocaleEnhance() {\n return {\n wrapperProps: (props) => {\n const { locale, ...other } = props;\n const contextLocale = React.useContext(Context);\n return {\n ...other,\n locale: locale ?? contextLocale,\n };\n },\n };\n}\n\nexport default i18nAppLocaleEnhance;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAA+D,IAAAE,SAAA;AAE/D,SAASC,oBAAoBA,CAAA,EAAG;EAC9B,OAAO;IACLC,YAAY,EAAE,SAAAA,aAACC,KAAK,EAAK;MACvB,IAAQC,MAAM,GAAeD,KAAK,CAA1BC,MAAM;QAAKC,KAAK,OAAAC,yBAAA,aAAKH,KAAK,EAAAH,SAAA;MAClC,IAAMO,aAAa,GAAGC,iBAAK,CAACC,UAAU,CAACC,iBAAO,CAAC;MAC/C,WAAAC,cAAA,iBAAAA,cAAA,iBACKN,KAAK;QACRD,MAAM,EAAEA,MAAM,aAANA,MAAM,cAANA,MAAM,GAAIG;MAAa;IAEnC;EACF,CAAC;AACH;AAAC,IAAAK,QAAA,GAEcX,oBAAoB;AAAAY,OAAA,cAAAD,QAAA"}
@@ -96,7 +96,7 @@ function Enhancement(childComponents, createComponent, options) {
96
96
  // @ts-ignore
97
97
  var prevDisplayName = value.displayName;
98
98
  // @ts-ignore
99
- value.displayName = WrapperComponent.displayName + '.' + name;
99
+ value.displayName = "".concat(WrapperComponent.displayName, ".").concat(name);
100
100
  value[STATIC_COMPONENT] = true;
101
101
  value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;
102
102
  acc[name] = createComponent(value, childComponents, options);
@@ -1 +1 @@
1
- {"version":3,"file":"staticChildren.js","names":["_react","require","_assignProps","_interopRequireDefault","_pick","_logger","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","getterMethodName","name","concat","getterMethodNameByDisplayName","displayName","arguments","length","undefined","displayNames","split","slice","join","flatGetterMethodNames","childComponents","parentName","entries","acc","_ref","_ref2","_slicedToArray2","value","Array","isArray","_toConsumableArray2","push","STATIC_COMPONENT","Symbol","exports","ROOT_COMPONENT","SELF_GETTER_METHOD","Enhancement","createComponent","options","getterMethodNames","condition","Component","Boolean","init","props","WrapperComponent","_this","getterMethods","pick","selfGetterMethod","logger","warn","getterMethod","childrenProps","getterProps","call","index","assignProps","cache","Set","_static","Error","_ref3","_ref4","prevStaticComponent","prevDisplayName","context","_objectSpread2","wrapperProps","useContext","has","add","render","_this2","forEach","clear","_default"],"sources":["../../../src/enhancement/staticChildren.tsx"],"sourcesContent":["import { useContext } from 'react';\n// @ts-ignore\nimport assignProps from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport pick from '@semcore/utils/lib/pick';\n// @ts-ignore\nimport logger from '@semcore/utils/lib/logger';\n\nfunction assign(target, source) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nexport function getterMethodName(name) {\n return `get${name}Props`;\n}\n\nexport function getterMethodNameByDisplayName(displayName = '') {\n const displayNames = displayName.split('.');\n const name = displayNames.slice(-(displayNames.length - 1)).join('');\n return getterMethodName(name);\n}\n\nfunction flatGetterMethodNames(childComponents, parentName?: string) {\n return Object.entries(childComponents).reduce<string[]>((acc, [name, value]) => {\n if (Array.isArray(value)) {\n acc = [...acc, ...flatGetterMethodNames(value[1], name)];\n }\n name = parentName ? `${parentName}${name}` : name;\n acc.push(getterMethodName(name));\n return acc;\n }, []);\n}\n\nexport const STATIC_COMPONENT = Symbol('STATIC_COMPONENT');\nexport const ROOT_COMPONENT = Symbol('ROOT_COMPONENT');\nconst SELF_GETTER_METHOD = Symbol('SELF_GETTER_METHOD');\n\nfunction Enhancement(childComponents, createComponent, options) {\n const getterMethodNames = flatGetterMethodNames(childComponents);\n return {\n condition: function (Component) {\n return Boolean(Component[STATIC_COMPONENT] || Object.keys(childComponents).length);\n },\n init: function (props, WrapperComponent) {\n const getterMethods = pick(this, getterMethodNames);\n this[SELF_GETTER_METHOD] = () => {\n const selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n logger.warn(\n true,\n `Getter \\`${selfGetterMethod}\\` can't be fired as it is a getter of static component`,\n props['data-ui-name'] || WrapperComponent.displayName,\n );\n };\n assign(\n this,\n getterMethodNames.reduce((acc, name) => {\n const getterMethod = getterMethods[name];\n if (!getterMethod) return acc;\n acc[name] = (childrenProps = {}) => {\n const getterProps = getterMethod.call(this, childrenProps, acc[name].index);\n return assignProps(childrenProps, getterProps);\n };\n acc[name].index = -1;\n acc[name].cache = new Set();\n return acc;\n }, {}),\n );\n },\n static: function (WrapperComponent, Component) {\n if (Object.keys(childComponents).length && !WrapperComponent.displayName) {\n throw new Error('\"displayName\" is not defined');\n }\n return Object.entries(childComponents).reduce((acc, [name, value]) => {\n let childComponents = {};\n\n if (Array.isArray(value)) {\n childComponents = value[1];\n value = value[0];\n }\n\n const prevStaticComponent = value[STATIC_COMPONENT];\n // @ts-ignore\n const prevDisplayName = value.displayName;\n // @ts-ignore\n value.displayName = WrapperComponent.displayName + '.' + name;\n value[STATIC_COMPONENT] = true;\n value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;\n acc[name] = createComponent(value, childComponents, options);\n // @ts-ignore\n value.displayName = prevDisplayName;\n value[STATIC_COMPONENT] = prevStaticComponent;\n return acc;\n }, {});\n },\n context: function (context /*, WrapperComponent*/) {\n // const getterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n return {\n ...context,\n // [getterMethod]: this[SELF_GETTER_METHOD],\n ...pick(this, getterMethodNames),\n };\n },\n wrapperProps: function (props, WrapperComponent) {\n if (!WrapperComponent[STATIC_COMPONENT]) return props;\n const context = useContext(options.context);\n const getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];\n if (getterMethod) {\n if (!getterMethod.cache.has(this)) {\n getterMethod.cache.add(this);\n getterMethod.index++;\n if (this) this.index = getterMethod.index;\n }\n if (this) getterMethod.index = this.index;\n return getterMethod(props);\n }\n return props;\n },\n render: function (render) {\n getterMethodNames.forEach((name) => {\n if (this[name] === undefined) return;\n this[name].index = -1;\n this[name].cache.clear();\n });\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,KAAA,GAAAD,sBAAA,CAAAF,OAAA;AAEA,IAAAI,OAAA,GAAAF,sBAAA,CAAAF,OAAA;AALA;;AAEA;;AAEA;;AAGA,SAASK,MAAMA,CAACC,MAAM,EAAEC,MAAM,EAAE;EAC9B,OAAOC,MAAM,CAACC,gBAAgB,CAC5BH,MAAM,EACNE,MAAM,CAACE,IAAI,CAACH,MAAM,CAAC,CAACI,MAAM,CAAC,UAACC,WAAW,EAAEC,GAAG,EAAK;IAC/CD,WAAW,CAACC,GAAG,CAAC,GAAGL,MAAM,CAACM,wBAAwB,CAACP,MAAM,EAAEM,GAAG,CAAC;IAC/D,OAAOD,WAAW;EACpB,CAAC,EAAE,CAAC,CAAC,CAAC,CACP;AACH;AAEO,SAASG,gBAAgBA,CAACC,IAAI,EAAE;EACrC,aAAAC,MAAA,CAAaD,IAAI;AACnB;AAEO,SAASE,6BAA6BA,CAAA,EAAmB;EAAA,IAAlBC,WAAW,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;EAC5D,IAAMG,YAAY,GAAGJ,WAAW,CAACK,KAAK,CAAC,GAAG,CAAC;EAC3C,IAAMR,IAAI,GAAGO,YAAY,CAACE,KAAK,CAAC,EAAEF,YAAY,CAACF,MAAM,GAAG,CAAC,CAAC,CAAC,CAACK,IAAI,CAAC,EAAE,CAAC;EACpE,OAAOX,gBAAgB,CAACC,IAAI,CAAC;AAC/B;AAEA,SAASW,qBAAqBA,CAACC,eAAe,EAAEC,UAAmB,EAAE;EACnE,OAAOrB,MAAM,CAACsB,OAAO,CAACF,eAAe,CAAC,CAACjB,MAAM,CAAW,UAACoB,GAAG,EAAAC,IAAA,EAAoB;IAAA,IAAAC,KAAA,OAAAC,eAAA,aAAAF,IAAA;MAAjBhB,IAAI,GAAAiB,KAAA;MAAEE,KAAK,GAAAF,KAAA;IACxE,IAAIG,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;MACxBJ,GAAG,MAAAd,MAAA,KAAAqB,mBAAA,aAAOP,GAAG,OAAAO,mBAAA,aAAKX,qBAAqB,CAACQ,KAAK,CAAC,CAAC,CAAC,EAAEnB,IAAI,CAAC,EAAC;IAC1D;IACAA,IAAI,GAAGa,UAAU,MAAAZ,MAAA,CAAMY,UAAU,EAAAZ,MAAA,CAAGD,IAAI,IAAKA,IAAI;IACjDe,GAAG,CAACQ,IAAI,CAACxB,gBAAgB,CAACC,IAAI,CAAC,CAAC;IAChC,OAAOe,GAAG;EACZ,CAAC,EAAE,EAAE,CAAC;AACR;AAEO,IAAMS,gBAAgB,GAAGC,MAAM,CAAC,kBAAkB,CAAC;AAACC,OAAA,CAAAF,gBAAA,GAAAA,gBAAA;AACpD,IAAMG,cAAc,GAAGF,MAAM,CAAC,gBAAgB,CAAC;AAACC,OAAA,CAAAC,cAAA,GAAAA,cAAA;AACvD,IAAMC,kBAAkB,GAAGH,MAAM,CAAC,oBAAoB,CAAC;AAEvD,SAASI,WAAWA,CAACjB,eAAe,EAAEkB,eAAe,EAAEC,OAAO,EAAE;EAC9D,IAAMC,iBAAiB,GAAGrB,qBAAqB,CAACC,eAAe,CAAC;EAChE,OAAO;IACLqB,SAAS,EAAE,SAAAA,UAAUC,SAAS,EAAE;MAC9B,OAAOC,OAAO,CAACD,SAAS,CAACV,gBAAgB,CAAC,IAAIhC,MAAM,CAACE,IAAI,CAACkB,eAAe,CAAC,CAACP,MAAM,CAAC;IACpF,CAAC;IACD+B,IAAI,EAAE,SAAAA,KAAUC,KAAK,EAAEC,gBAAgB,EAAE;MAAA,IAAAC,KAAA;MACvC,IAAMC,aAAa,GAAG,IAAAC,gBAAI,EAAC,IAAI,EAAET,iBAAiB,CAAC;MACnD,IAAI,CAACJ,kBAAkB,CAAC,GAAG,YAAM;QAC/B,IAAMc,gBAAgB,GAAGxC,6BAA6B,CAACoC,gBAAgB,CAACnC,WAAW,CAAC;QACpFwC,kBAAM,CAACC,IAAI,CACT,IAAI,aAAA3C,MAAA,CACQyC,gBAAgB,6DAC5BL,KAAK,CAAC,cAAc,CAAC,IAAIC,gBAAgB,CAACnC,WAAW,CACtD;MACH,CAAC;MACDd,MAAM,CACJ,IAAI,EACJ2C,iBAAiB,CAACrC,MAAM,CAAC,UAACoB,GAAG,EAAEf,IAAI,EAAK;QACtC,IAAM6C,YAAY,GAAGL,aAAa,CAACxC,IAAI,CAAC;QACxC,IAAI,CAAC6C,YAAY,EAAE,OAAO9B,GAAG;QAC7BA,GAAG,CAACf,IAAI,CAAC,GAAG,YAAwB;UAAA,IAAvB8C,aAAa,GAAA1C,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;UAC7B,IAAM2C,WAAW,GAAGF,YAAY,CAACG,IAAI,CAACT,KAAI,EAAEO,aAAa,EAAE/B,GAAG,CAACf,IAAI,CAAC,CAACiD,KAAK,CAAC;UAC3E,OAAO,IAAAC,uBAAW,EAACJ,aAAa,EAAEC,WAAW,CAAC;QAChD,CAAC;QACDhC,GAAG,CAACf,IAAI,CAAC,CAACiD,KAAK,GAAG,CAAC,CAAC;QACpBlC,GAAG,CAACf,IAAI,CAAC,CAACmD,KAAK,GAAG,IAAIC,GAAG,EAAE;QAC3B,OAAOrC,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC,CAAC,CACP;IACH,CAAC;IACD,UAAQ,SAAAsC,QAAUf,gBAAgB,EAAEJ,SAAS,EAAE;MAC7C,IAAI1C,MAAM,CAACE,IAAI,CAACkB,eAAe,CAAC,CAACP,MAAM,IAAI,CAACiC,gBAAgB,CAACnC,WAAW,EAAE;QACxE,MAAM,IAAImD,KAAK,CAAC,8BAA8B,CAAC;MACjD;MACA,OAAO9D,MAAM,CAACsB,OAAO,CAACF,eAAe,CAAC,CAACjB,MAAM,CAAC,UAACoB,GAAG,EAAAwC,KAAA,EAAoB;QAAA,IAAAC,KAAA,OAAAtC,eAAA,aAAAqC,KAAA;UAAjBvD,IAAI,GAAAwD,KAAA;UAAErC,KAAK,GAAAqC,KAAA;QAC9D,IAAI5C,eAAe,GAAG,CAAC,CAAC;QAExB,IAAIQ,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;UACxBP,eAAe,GAAGO,KAAK,CAAC,CAAC,CAAC;UAC1BA,KAAK,GAAGA,KAAK,CAAC,CAAC,CAAC;QAClB;QAEA,IAAMsC,mBAAmB,GAAGtC,KAAK,CAACK,gBAAgB,CAAC;QACnD;QACA,IAAMkC,eAAe,GAAGvC,KAAK,CAAChB,WAAW;QACzC;QACAgB,KAAK,CAAChB,WAAW,GAAGmC,gBAAgB,CAACnC,WAAW,GAAG,GAAG,GAAGH,IAAI;QAC7DmB,KAAK,CAACK,gBAAgB,CAAC,GAAG,IAAI;QAC9BL,KAAK,CAACQ,cAAc,CAAC,GAAGO,SAAS,CAACP,cAAc,CAAC,IAAIO,SAAS;QAC9DnB,GAAG,CAACf,IAAI,CAAC,GAAG8B,eAAe,CAACX,KAAK,EAAEP,eAAe,EAAEmB,OAAO,CAAC;QAC5D;QACAZ,KAAK,CAAChB,WAAW,GAAGuD,eAAe;QACnCvC,KAAK,CAACK,gBAAgB,CAAC,GAAGiC,mBAAmB;QAC7C,OAAO1C,GAAG;MACZ,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,CAAC;IACD4C,OAAO,EAAE,SAAAA,QAAUA,QAAO,CAAC,wBAAwB;MACjD;MACA,WAAAC,cAAA,iBAAAA,cAAA,iBACKD,QAAO,GAEP,IAAAlB,gBAAI,EAAC,IAAI,EAAET,iBAAiB,CAAC;IAEpC,CAAC;IACD6B,YAAY,EAAE,SAAAA,aAAUxB,KAAK,EAAEC,gBAAgB,EAAE;MAC/C,IAAI,CAACA,gBAAgB,CAACd,gBAAgB,CAAC,EAAE,OAAOa,KAAK;MACrD,IAAMsB,OAAO,GAAG,IAAAG,iBAAU,EAAC/B,OAAO,CAAC4B,OAAO,CAAC;MAC3C,IAAMd,YAAY,GAAGc,OAAO,CAACzD,6BAA6B,CAACoC,gBAAgB,CAACnC,WAAW,CAAC,CAAC;MACzF,IAAI0C,YAAY,EAAE;QAChB,IAAI,CAACA,YAAY,CAACM,KAAK,CAACY,GAAG,CAAC,IAAI,CAAC,EAAE;UACjClB,YAAY,CAACM,KAAK,CAACa,GAAG,CAAC,IAAI,CAAC;UAC5BnB,YAAY,CAACI,KAAK,EAAE;UACpB,IAAI,IAAI,EAAE,IAAI,CAACA,KAAK,GAAGJ,YAAY,CAACI,KAAK;QAC3C;QACA,IAAI,IAAI,EAAEJ,YAAY,CAACI,KAAK,GAAG,IAAI,CAACA,KAAK;QACzC,OAAOJ,YAAY,CAACR,KAAK,CAAC;MAC5B;MACA,OAAOA,KAAK;IACd,CAAC;IACD4B,MAAM,EAAE,SAAAA,OAAUA,OAAM,EAAE;MAAA,IAAAC,MAAA;MACxBlC,iBAAiB,CAACmC,OAAO,CAAC,UAACnE,IAAI,EAAK;QAClC,IAAIkE,MAAI,CAAClE,IAAI,CAAC,KAAKM,SAAS,EAAE;QAC9B4D,MAAI,CAAClE,IAAI,CAAC,CAACiD,KAAK,GAAG,CAAC,CAAC;QACrBiB,MAAI,CAAClE,IAAI,CAAC,CAACmD,KAAK,CAACiB,KAAK,EAAE;MAC1B,CAAC,CAAC;MACF,OAAOH,OAAM;IACf;EACF,CAAC;AACH;AAAC,IAAAI,QAAA,GAEcxC,WAAW;AAAAH,OAAA,cAAA2C,QAAA"}
1
+ {"version":3,"file":"staticChildren.js","names":["_react","require","_assignProps","_interopRequireDefault","_pick","_logger","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","getterMethodName","name","concat","getterMethodNameByDisplayName","displayName","arguments","length","undefined","displayNames","split","slice","join","flatGetterMethodNames","childComponents","parentName","entries","acc","_ref","_ref2","_slicedToArray2","value","Array","isArray","_toConsumableArray2","push","STATIC_COMPONENT","Symbol","exports","ROOT_COMPONENT","SELF_GETTER_METHOD","Enhancement","createComponent","options","getterMethodNames","condition","Component","Boolean","init","props","WrapperComponent","_this","getterMethods","pick","selfGetterMethod","logger","warn","getterMethod","childrenProps","getterProps","call","index","assignProps","cache","Set","_static","Error","_ref3","_ref4","prevStaticComponent","prevDisplayName","context","_objectSpread2","wrapperProps","useContext","has","add","render","_this2","forEach","clear","_default"],"sources":["../../../src/enhancement/staticChildren.tsx"],"sourcesContent":["import { useContext } from 'react';\n// @ts-ignore\nimport assignProps from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport pick from '@semcore/utils/lib/pick';\n// @ts-ignore\nimport logger from '@semcore/utils/lib/logger';\n\nfunction assign(target, source) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nexport function getterMethodName(name) {\n return `get${name}Props`;\n}\n\nexport function getterMethodNameByDisplayName(displayName = '') {\n const displayNames = displayName.split('.');\n const name = displayNames.slice(-(displayNames.length - 1)).join('');\n return getterMethodName(name);\n}\n\nfunction flatGetterMethodNames(childComponents, parentName?: string) {\n return Object.entries(childComponents).reduce<string[]>((acc, [name, value]) => {\n if (Array.isArray(value)) {\n acc = [...acc, ...flatGetterMethodNames(value[1], name)];\n }\n name = parentName ? `${parentName}${name}` : name;\n acc.push(getterMethodName(name));\n return acc;\n }, []);\n}\n\nexport const STATIC_COMPONENT = Symbol('STATIC_COMPONENT');\nexport const ROOT_COMPONENT = Symbol('ROOT_COMPONENT');\nconst SELF_GETTER_METHOD = Symbol('SELF_GETTER_METHOD');\n\nfunction Enhancement(childComponents, createComponent, options) {\n const getterMethodNames = flatGetterMethodNames(childComponents);\n return {\n condition: function (Component) {\n return Boolean(Component[STATIC_COMPONENT] || Object.keys(childComponents).length);\n },\n init: function (props, WrapperComponent) {\n const getterMethods = pick(this, getterMethodNames);\n this[SELF_GETTER_METHOD] = () => {\n const selfGetterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n logger.warn(\n true,\n `Getter \\`${selfGetterMethod}\\` can't be fired as it is a getter of static component`,\n props['data-ui-name'] || WrapperComponent.displayName,\n );\n };\n assign(\n this,\n getterMethodNames.reduce((acc, name) => {\n const getterMethod = getterMethods[name];\n if (!getterMethod) return acc;\n acc[name] = (childrenProps = {}) => {\n const getterProps = getterMethod.call(this, childrenProps, acc[name].index);\n return assignProps(childrenProps, getterProps);\n };\n acc[name].index = -1;\n acc[name].cache = new Set();\n return acc;\n }, {}),\n );\n },\n static: function (WrapperComponent, Component) {\n if (Object.keys(childComponents).length && !WrapperComponent.displayName) {\n throw new Error('\"displayName\" is not defined');\n }\n return Object.entries(childComponents).reduce((acc, [name, value]) => {\n let childComponents = {};\n\n if (Array.isArray(value)) {\n childComponents = value[1];\n value = value[0];\n }\n\n const prevStaticComponent = value[STATIC_COMPONENT];\n // @ts-ignore\n const prevDisplayName = value.displayName;\n // @ts-ignore\n value.displayName = `${WrapperComponent.displayName}.${name}`;\n value[STATIC_COMPONENT] = true;\n value[ROOT_COMPONENT] = Component[ROOT_COMPONENT] || Component;\n acc[name] = createComponent(value, childComponents, options);\n // @ts-ignore\n value.displayName = prevDisplayName;\n value[STATIC_COMPONENT] = prevStaticComponent;\n return acc;\n }, {});\n },\n context: function (context /*, WrapperComponent*/) {\n // const getterMethod = getterMethodNameByDisplayName(WrapperComponent.displayName);\n return {\n ...context,\n // [getterMethod]: this[SELF_GETTER_METHOD],\n ...pick(this, getterMethodNames),\n };\n },\n wrapperProps: function (props, WrapperComponent) {\n if (!WrapperComponent[STATIC_COMPONENT]) return props;\n const context = useContext(options.context);\n const getterMethod = context[getterMethodNameByDisplayName(WrapperComponent.displayName)];\n if (getterMethod) {\n if (!getterMethod.cache.has(this)) {\n getterMethod.cache.add(this);\n getterMethod.index++;\n if (this) this.index = getterMethod.index;\n }\n if (this) getterMethod.index = this.index;\n return getterMethod(props);\n }\n return props;\n },\n render: function (render) {\n getterMethodNames.forEach((name) => {\n if (this[name] === undefined) return;\n this[name].index = -1;\n this[name].cache.clear();\n });\n return render;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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"}
@@ -36,7 +36,6 @@ function Enhancement(childComponents, Context) {
36
36
  }
37
37
  return (0, _objectSpread3["default"])((0, _objectSpread3["default"])({}, _context), {}, (0, _defineProperty2["default"])({}, STYLES_CONTEXT, this[STYLES_SELF]));
38
38
  },
39
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
40
39
  asProps: function asProps(_ref) {
41
40
  var _styles = _ref._styles,
42
41
  styles = _ref.styles,
@@ -1 +1 @@
1
- {"version":3,"file":"style.js","names":["_react","require","_styled","_staticChildren","_excluded","_excluded2","STYLES_CONTEXT","Symbol","exports","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","STATIC_COMPONENT","init","props","WrapperComponent","styles","sstyled","merge","_styles","context","Object","keys","length","_objectSpread3","_defineProperty2","asProps","_ref","_objectWithoutProperties2","wrapperProps","_ref2","useContext","_default"],"sources":["../../../src/enhancement/style.tsx"],"sourcesContent":["import { useContext } from 'react';\n// @ts-ignore\nimport { sstyled } from '../styled';\nimport { STATIC_COMPONENT } from './staticChildren';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents, Context) {\n return {\n condition: function (Component) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (props, WrapperComponent) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (context) {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n asProps: function ({ _styles, styles, ...props }) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function ({ styles, ...props }) {\n const context = useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAAoD,IAAAG,SAAA;EAAAC,UAAA;AAE7C,IAAMC,cAAc,GAAGC,MAAM,CAAC,gBAAgB,CAAC;AAACC,OAAA,CAAAF,cAAA,GAAAA,cAAA;AACvD,IAAMG,WAAW,GAAGF,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASG,WAAWA,CAACC,eAAe,EAAEC,OAAO,EAAE;EAC7C,OAAO;IACLC,SAAS,EAAE,SAAAA,UAAUC,SAAS,EAAE;MAC9B,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACG,gCAAgB,CAAC,CAAC;IAChE,CAAC;IACDC,IAAI,EAAE,SAAAA,KAAUC,KAAK,EAAEC,gBAAgB,EAAE;MACvC,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACZ,WAAW,CAAC,GAAGU,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACJ,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGa,eAAO,CAACC,KAAK,CAACH,gBAAgB,CAACJ,KAAK,EAAEG,KAAK,CAACK,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAAAA,QAAUA,QAAO,EAAE;MAC1B;MACA,IAAI,CAAC,IAAI,CAAChB,WAAW,CAAC,IAAI,CAACiB,MAAM,CAACC,IAAI,CAAChB,eAAe,CAAC,CAACiB,MAAM,EAAE;QAC9D,OAAOH,QAAO;MAChB;MACA,WAAAI,cAAA,iBAAAA,cAAA,iBACKJ,QAAO,WAAAK,gBAAA,iBACTxB,cAAc,EAAG,IAAI,CAACG,WAAW,CAAC;IAEvC,CAAC;IACD;IACAsB,OAAO,EAAE,SAAAA,QAAAC,IAAA,EAAyC;MAAA,IAA7BR,OAAO,GAAAQ,IAAA,CAAPR,OAAO;QAAEH,MAAM,GAAAW,IAAA,CAANX,MAAM;QAAKF,KAAK,OAAAc,yBAAA,aAAAD,IAAA,EAAA5B,SAAA;MAC5C,WAAAyB,cAAA,iBAAAA,cAAA,iBACKV,KAAK;QACRE,MAAM,EAAE,IAAI,CAACZ,WAAW;MAAC;IAE7B,CAAC;IACDyB,YAAY,EAAE,SAAAA,aAAAC,KAAA,EAAgC;MAAA,IAApBd,MAAM,GAAAc,KAAA,CAANd,MAAM;QAAKF,KAAK,OAAAc,yBAAA,aAAAE,KAAA,EAAA9B,UAAA;MACxC,IAAMoB,OAAO,GAAG,IAAAW,iBAAU,EAACxB,OAAO,CAAC;MACnC,WAAAiB,cAAA,iBAAAA,cAAA,iBACKV,KAAK;QACRK,OAAO,EAAEH,MAAM;QACfA,MAAM,EAAEI,OAAO,CAACnB,cAAc;MAAC;IAEnC;EACF,CAAC;AACH;AAAC,IAAA+B,QAAA,GAEc3B,WAAW;AAAAF,OAAA,cAAA6B,QAAA"}
1
+ {"version":3,"file":"style.js","names":["_react","require","_styled","_staticChildren","_excluded","_excluded2","STYLES_CONTEXT","Symbol","exports","STYLES_SELF","Enhancement","childComponents","Context","condition","Component","Boolean","style","STATIC_COMPONENT","init","props","WrapperComponent","styles","sstyled","merge","_styles","context","Object","keys","length","_objectSpread3","_defineProperty2","asProps","_ref","_objectWithoutProperties2","wrapperProps","_ref2","useContext","_default"],"sources":["../../../src/enhancement/style.tsx"],"sourcesContent":["import { useContext } from 'react';\n// @ts-ignore\nimport { sstyled } from '../styled';\nimport { STATIC_COMPONENT } from './staticChildren';\n\nexport const STYLES_CONTEXT = Symbol('STYLES_CONTEXT');\nconst STYLES_SELF = Symbol('STYLES_SELF');\n\nfunction Enhancement(childComponents, Context) {\n return {\n condition: function (Component) {\n return Boolean(Component.style || Component[STATIC_COMPONENT]);\n },\n init: function (props, WrapperComponent) {\n if (props.styles) {\n this[STYLES_SELF] = props.styles;\n }\n if (WrapperComponent.style) {\n this[STYLES_SELF] = sstyled.merge(WrapperComponent.style, props._styles);\n }\n },\n context: function (context) {\n // Optimization: if has no children there is no need to create new context (by lsroman)\n if (!this[STYLES_SELF] || !Object.keys(childComponents).length) {\n return context;\n }\n return {\n ...context,\n [STYLES_CONTEXT]: this[STYLES_SELF],\n };\n },\n\n asProps: function ({ _styles, styles, ...props }) {\n return {\n ...props,\n styles: this[STYLES_SELF],\n };\n },\n wrapperProps: function ({ styles, ...props }) {\n const context = useContext(Context);\n return {\n ...props,\n _styles: styles,\n styles: context[STYLES_CONTEXT],\n };\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAAoD,IAAAG,SAAA;EAAAC,UAAA;AAE7C,IAAMC,cAAc,GAAGC,MAAM,CAAC,gBAAgB,CAAC;AAACC,OAAA,CAAAF,cAAA,GAAAA,cAAA;AACvD,IAAMG,WAAW,GAAGF,MAAM,CAAC,aAAa,CAAC;AAEzC,SAASG,WAAWA,CAACC,eAAe,EAAEC,OAAO,EAAE;EAC7C,OAAO;IACLC,SAAS,EAAE,SAAAA,UAAUC,SAAS,EAAE;MAC9B,OAAOC,OAAO,CAACD,SAAS,CAACE,KAAK,IAAIF,SAAS,CAACG,gCAAgB,CAAC,CAAC;IAChE,CAAC;IACDC,IAAI,EAAE,SAAAA,KAAUC,KAAK,EAAEC,gBAAgB,EAAE;MACvC,IAAID,KAAK,CAACE,MAAM,EAAE;QAChB,IAAI,CAACZ,WAAW,CAAC,GAAGU,KAAK,CAACE,MAAM;MAClC;MACA,IAAID,gBAAgB,CAACJ,KAAK,EAAE;QAC1B,IAAI,CAACP,WAAW,CAAC,GAAGa,eAAO,CAACC,KAAK,CAACH,gBAAgB,CAACJ,KAAK,EAAEG,KAAK,CAACK,OAAO,CAAC;MAC1E;IACF,CAAC;IACDC,OAAO,EAAE,SAAAA,QAAUA,QAAO,EAAE;MAC1B;MACA,IAAI,CAAC,IAAI,CAAChB,WAAW,CAAC,IAAI,CAACiB,MAAM,CAACC,IAAI,CAAChB,eAAe,CAAC,CAACiB,MAAM,EAAE;QAC9D,OAAOH,QAAO;MAChB;MACA,WAAAI,cAAA,iBAAAA,cAAA,iBACKJ,QAAO,WAAAK,gBAAA,iBACTxB,cAAc,EAAG,IAAI,CAACG,WAAW,CAAC;IAEvC,CAAC;IAEDsB,OAAO,EAAE,SAAAA,QAAAC,IAAA,EAAyC;MAAA,IAA7BR,OAAO,GAAAQ,IAAA,CAAPR,OAAO;QAAEH,MAAM,GAAAW,IAAA,CAANX,MAAM;QAAKF,KAAK,OAAAc,yBAAA,aAAAD,IAAA,EAAA5B,SAAA;MAC5C,WAAAyB,cAAA,iBAAAA,cAAA,iBACKV,KAAK;QACRE,MAAM,EAAE,IAAI,CAACZ,WAAW;MAAC;IAE7B,CAAC;IACDyB,YAAY,EAAE,SAAAA,aAAAC,KAAA,EAAgC;MAAA,IAApBd,MAAM,GAAAc,KAAA,CAANd,MAAM;QAAKF,KAAK,OAAAc,yBAAA,aAAAE,KAAA,EAAA9B,UAAA;MACxC,IAAMoB,OAAO,GAAG,IAAAW,iBAAU,EAACxB,OAAO,CAAC;MACnC,WAAAiB,cAAA,iBAAAA,cAAA,iBACKV,KAAK;QACRK,OAAO,EAAEH,MAAM;QACfA,MAAM,EAAEI,OAAO,CAACnB,cAAc;MAAC;IAEnC;EACF,CAAC;AACH;AAAC,IAAA+B,QAAA,GAEc3B,WAAW;AAAAF,OAAA,cAAA6B,QAAA"}
@@ -25,7 +25,7 @@ function assign(target, source) {
25
25
  }, {}));
26
26
  }
27
27
  function defaultProp(prop) {
28
- return 'default' + (0, _capitalizeFirstLetter["default"])(prop);
28
+ return "default".concat((0, _capitalizeFirstLetter["default"])(prop));
29
29
  }
30
30
  function handlerProp(prop) {
31
31
  if (prop === 'value') prop = '';
@@ -60,7 +60,6 @@ function uncontrolledUniversal(props, config, uncontrolledProp) {
60
60
  propHandler = result[handlerName],
61
61
  other = (0, _objectWithoutProperties2["default"])(result, [defaultPropName, propName, handlerName].map(_toPropertyKey2["default"]));
62
62
  if (propDefaultValue === undefined) {
63
- // eslint-disable-next-line no-console
64
63
  console.warn(defaultPropName, 'must be installed in "defaultProps"');
65
64
  }
66
65
 
@@ -90,7 +89,7 @@ function uncontrolledUniversal(props, config, uncontrolledProp) {
90
89
  args[_key2 - 1] = arguments[_key2];
91
90
  }
92
91
  var result = [setter.apply(void 0, [eventOrValue].concat(args))].concat(args);
93
- if (eventOrValue && eventOrValue.target) {
92
+ if (eventOrValue !== null && eventOrValue !== void 0 && eventOrValue.target) {
94
93
  result.push(eventOrValue);
95
94
  }
96
95
  return handler.apply(void 0, (0, _toConsumableArray2["default"])(result));
@@ -1 +1 @@
1
- {"version":3,"file":"uncontrolledProps.js","names":["_assignProps","require","_capitalizeFirstLetter","_interopRequireDefault","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","defaultProp","prop","capitalizeFirstLetter","handlerProp","concat","isControlled","propValue","undefined","uncontrolledProp","self","propName","propDefaultValue","propHandler","chainHandler","getValue","state","value","oldValue","setState","_defineProperty2","_len","arguments","length","args","Array","_key","callAllEventHandlers","apply","_toConsumableArray2","uncontrolledUniversal","props","config","handlerProps","uncontrolledProps","result","_objectSpread2","handlerName","defaultPropName","other","_objectWithoutProperties2","map","_toPropertyKey2","console","warn","setter","isArray","_setter","_setter2","_toArray2","slice","v","_uncontrolledProp","_uncontrolledProp2","_slicedToArray2","handler","_objectSpread3","eventOrValue","_len2","_key2","push","uncontrolled","bind","Enhancement","condition","Component","Boolean","prototype","init","handlers","_uncontrolled","_uncontrolled2","uncontrolledHandlers","context","asProps","_uncontrolled3","_uncontrolled4","_default","exports"],"sources":["../../../src/enhancement/uncontrolledProps.tsx"],"sourcesContent":["// @ts-ignore\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport capitalizeFirstLetter from '@semcore/utils/lib/capitalizeFirstLetter';\n\nfunction assign(target, source) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nfunction defaultProp(prop) {\n return 'default' + capitalizeFirstLetter(prop);\n}\n\nfunction handlerProp(prop) {\n if (prop === 'value') prop = '';\n if (prop === 'checked') prop = '';\n return `on${capitalizeFirstLetter(prop)}Change`;\n}\n\nfunction isControlled(propValue) {\n return propValue !== undefined;\n}\n\nfunction uncontrolledProp(self, propName, propValue, propDefaultValue, propHandler, chainHandler) {\n function getValue() {\n return isControlled(propValue)\n ? propValue\n : propName in self.state\n ? self.state[propName]\n : propDefaultValue;\n }\n\n return [\n getValue(),\n (value, ...args) => {\n const oldValue = getValue();\n if (oldValue === value) return false;\n if (!isControlled(propValue)) self.setState({ [propName]: value });\n return callAllEventHandlers(propHandler, ...chainHandler)(value, ...args);\n },\n ];\n}\n\nfunction uncontrolledUniversal(props, config, uncontrolledProp) {\n const handlerProps = {};\n const uncontrolledProps = Object.keys(config).reduce((result, propName) => {\n const handlerName = handlerProp(propName);\n const defaultPropName = defaultProp(propName);\n const {\n [defaultPropName]: propDefaultValue,\n [propName]: propValue,\n [handlerName]: propHandler,\n ...other\n } = result;\n\n if (propDefaultValue === undefined) {\n // eslint-disable-next-line no-console\n console.warn(defaultPropName, 'must be installed in \"defaultProps\"');\n }\n\n // if (typeof propDefaultValue === 'function' && propDefaultValue.defaultInit) {\n // propDefaultValue = propDefaultValue(result);\n // }\n\n let setter = config[propName];\n let chainHandler = [];\n\n if (Array.isArray(setter)) [setter, ...chainHandler] = setter;\n setter = setter || ((v) => v);\n\n const [value, handler] = uncontrolledProp(\n propName,\n propValue,\n propDefaultValue,\n propHandler,\n chainHandler,\n );\n // TODO: need to warn about recursion (by lsroman)\n handlerProps[propName] = handler;\n\n return {\n ...other,\n [propName]: value,\n [handlerName]: (eventOrValue, ...args) => {\n const result = [setter(eventOrValue, ...args), ...args];\n if (eventOrValue && eventOrValue.target) {\n result.push(eventOrValue);\n }\n return handler(...result);\n },\n };\n }, props);\n return [uncontrolledProps, handlerProps];\n}\n\nfunction uncontrolled(self, props, config) {\n return uncontrolledUniversal(props, config, uncontrolledProp.bind(undefined, self));\n}\n\nfunction Enhancement() {\n return {\n condition: function (Component) {\n return Boolean(Component.prototype.uncontrolledProps);\n },\n init: function () {\n this.state = this.state || {};\n assign(this, {\n get handlers() {\n const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());\n return uncontrolledHandlers;\n },\n });\n },\n context: function (context) {\n return {\n ...context,\n handlers: this.handlers,\n };\n },\n asProps: function (props) {\n // TODO: need to omit unneccessary props (by lsroman)\n const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());\n return uncontrolledProps;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":"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"}
1
+ {"version":3,"file":"uncontrolledProps.js","names":["_assignProps","require","_capitalizeFirstLetter","_interopRequireDefault","assign","target","source","Object","defineProperties","keys","reduce","descriptors","key","getOwnPropertyDescriptor","defaultProp","prop","concat","capitalizeFirstLetter","handlerProp","isControlled","propValue","undefined","uncontrolledProp","self","propName","propDefaultValue","propHandler","chainHandler","getValue","state","value","oldValue","setState","_defineProperty2","_len","arguments","length","args","Array","_key","callAllEventHandlers","apply","_toConsumableArray2","uncontrolledUniversal","props","config","handlerProps","uncontrolledProps","result","_objectSpread2","handlerName","defaultPropName","other","_objectWithoutProperties2","map","_toPropertyKey2","console","warn","setter","isArray","_setter","_setter2","_toArray2","slice","v","_uncontrolledProp","_uncontrolledProp2","_slicedToArray2","handler","_objectSpread3","eventOrValue","_len2","_key2","push","uncontrolled","bind","Enhancement","condition","Component","Boolean","prototype","init","handlers","_uncontrolled","_uncontrolled2","uncontrolledHandlers","context","asProps","_uncontrolled3","_uncontrolled4","_default","exports"],"sources":["../../../src/enhancement/uncontrolledProps.tsx"],"sourcesContent":["// @ts-ignore\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\n// @ts-ignore\nimport capitalizeFirstLetter from '@semcore/utils/lib/capitalizeFirstLetter';\n\nfunction assign(target, source) {\n return Object.defineProperties(\n target,\n Object.keys(source).reduce((descriptors, key) => {\n descriptors[key] = Object.getOwnPropertyDescriptor(source, key);\n return descriptors;\n }, {}),\n );\n}\n\nfunction defaultProp(prop) {\n return `default${capitalizeFirstLetter(prop)}`;\n}\n\nfunction handlerProp(prop) {\n if (prop === 'value') prop = '';\n if (prop === 'checked') prop = '';\n return `on${capitalizeFirstLetter(prop)}Change`;\n}\n\nfunction isControlled(propValue) {\n return propValue !== undefined;\n}\n\nfunction uncontrolledProp(self, propName, propValue, propDefaultValue, propHandler, chainHandler) {\n function getValue() {\n return isControlled(propValue)\n ? propValue\n : propName in self.state\n ? self.state[propName]\n : propDefaultValue;\n }\n\n return [\n getValue(),\n (value, ...args) => {\n const oldValue = getValue();\n if (oldValue === value) return false;\n if (!isControlled(propValue)) self.setState({ [propName]: value });\n return callAllEventHandlers(propHandler, ...chainHandler)(value, ...args);\n },\n ];\n}\n\nfunction uncontrolledUniversal(props, config, uncontrolledProp) {\n const handlerProps = {};\n const uncontrolledProps = Object.keys(config).reduce((result, propName) => {\n const handlerName = handlerProp(propName);\n const defaultPropName = defaultProp(propName);\n const {\n [defaultPropName]: propDefaultValue,\n [propName]: propValue,\n [handlerName]: propHandler,\n ...other\n } = result;\n\n if (propDefaultValue === undefined) {\n console.warn(defaultPropName, 'must be installed in \"defaultProps\"');\n }\n\n // if (typeof propDefaultValue === 'function' && propDefaultValue.defaultInit) {\n // propDefaultValue = propDefaultValue(result);\n // }\n\n let setter = config[propName];\n let chainHandler = [];\n\n if (Array.isArray(setter)) [setter, ...chainHandler] = setter;\n setter = setter || ((v) => v);\n\n const [value, handler] = uncontrolledProp(\n propName,\n propValue,\n propDefaultValue,\n propHandler,\n chainHandler,\n );\n // TODO: need to warn about recursion (by lsroman)\n handlerProps[propName] = handler;\n\n return {\n ...other,\n [propName]: value,\n [handlerName]: (eventOrValue, ...args) => {\n const result = [setter(eventOrValue, ...args), ...args];\n if (eventOrValue?.target) {\n result.push(eventOrValue);\n }\n return handler(...result);\n },\n };\n }, props);\n return [uncontrolledProps, handlerProps];\n}\n\nfunction uncontrolled(self, props, config) {\n return uncontrolledUniversal(props, config, uncontrolledProp.bind(undefined, self));\n}\n\nfunction Enhancement() {\n return {\n condition: function (Component) {\n return Boolean(Component.prototype.uncontrolledProps);\n },\n init: function () {\n this.state = this.state || {};\n assign(this, {\n get handlers() {\n const [, uncontrolledHandlers] = uncontrolled(this, this.props, this.uncontrolledProps());\n return uncontrolledHandlers;\n },\n });\n },\n context: function (context) {\n return {\n ...context,\n handlers: this.handlers,\n };\n },\n asProps: function (props) {\n // TODO: need to omit unneccessary props (by lsroman)\n const [uncontrolledProps] = uncontrolled(this, props, this.uncontrolledProps());\n return uncontrolledProps;\n },\n };\n}\n\nexport default Enhancement;\n"],"mappings":";;;;;;;;;;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,sBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAHA;;AAEA;;AAGA,SAASG,MAAMA,CAACC,MAAM,EAAEC,MAAM,EAAE;EAC9B,OAAOC,MAAM,CAACC,gBAAgB,CAC5BH,MAAM,EACNE,MAAM,CAACE,IAAI,CAACH,MAAM,CAAC,CAACI,MAAM,CAAC,UAACC,WAAW,EAAEC,GAAG,EAAK;IAC/CD,WAAW,CAACC,GAAG,CAAC,GAAGL,MAAM,CAACM,wBAAwB,CAACP,MAAM,EAAEM,GAAG,CAAC;IAC/D,OAAOD,WAAW;EACpB,CAAC,EAAE,CAAC,CAAC,CAAC,CACP;AACH;AAEA,SAASG,WAAWA,CAACC,IAAI,EAAE;EACzB,iBAAAC,MAAA,CAAiB,IAAAC,iCAAqB,EAACF,IAAI,CAAC;AAC9C;AAEA,SAASG,WAAWA,CAACH,IAAI,EAAE;EACzB,IAAIA,IAAI,KAAK,OAAO,EAAEA,IAAI,GAAG,EAAE;EAC/B,IAAIA,IAAI,KAAK,SAAS,EAAEA,IAAI,GAAG,EAAE;EACjC,YAAAC,MAAA,CAAY,IAAAC,iCAAqB,EAACF,IAAI,CAAC;AACzC;AAEA,SAASI,YAAYA,CAACC,SAAS,EAAE;EAC/B,OAAOA,SAAS,KAAKC,SAAS;AAChC;AAEA,SAASC,gBAAgBA,CAACC,IAAI,EAAEC,QAAQ,EAAEJ,SAAS,EAAEK,gBAAgB,EAAEC,WAAW,EAAEC,YAAY,EAAE;EAChG,SAASC,QAAQA,CAAA,EAAG;IAClB,OAAOT,YAAY,CAACC,SAAS,CAAC,GAC1BA,SAAS,GACTI,QAAQ,IAAID,IAAI,CAACM,KAAK,GACtBN,IAAI,CAACM,KAAK,CAACL,QAAQ,CAAC,GACpBC,gBAAgB;EACtB;EAEA,OAAO,CACLG,QAAQ,EAAE,EACV,UAACE,KAAK,EAAc;IAClB,IAAMC,QAAQ,GAAGH,QAAQ,EAAE;IAC3B,IAAIG,QAAQ,KAAKD,KAAK,EAAE,OAAO,KAAK;IACpC,IAAI,CAACX,YAAY,CAACC,SAAS,CAAC,EAAEG,IAAI,CAACS,QAAQ,KAAAC,gBAAA,iBAAIT,QAAQ,EAAGM,KAAK,EAAG;IAAC,SAAAI,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAH1DC,IAAI,OAAAC,KAAA,CAAAJ,IAAA,OAAAA,IAAA,WAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAJF,IAAI,CAAAE,IAAA,QAAAJ,SAAA,CAAAI,IAAA;IAAA;IAIb,OAAOC,iCAAoB,CAAAC,KAAA,UAACf,WAAW,EAAAV,MAAA,KAAA0B,mBAAA,aAAKf,YAAY,GAAC,CAAAc,KAAA,UAACX,KAAK,EAAAd,MAAA,CAAKqB,IAAI,EAAC;EAC3E,CAAC,CACF;AACH;AAEA,SAASM,qBAAqBA,CAACC,KAAK,EAAEC,MAAM,EAAEvB,gBAAgB,EAAE;EAC9D,IAAMwB,YAAY,GAAG,CAAC,CAAC;EACvB,IAAMC,iBAAiB,GAAGxC,MAAM,CAACE,IAAI,CAACoC,MAAM,CAAC,CAACnC,MAAM,CAAC,UAACsC,MAAM,EAAExB,QAAQ,EAAK;IAAA,IAAAyB,cAAA;IACzE,IAAMC,WAAW,GAAGhC,WAAW,CAACM,QAAQ,CAAC;IACzC,IAAM2B,eAAe,GAAGrC,WAAW,CAACU,QAAQ,CAAC;IAC7C,IACqBC,gBAAgB,GAIjCuB,MAAM,CAJPG,eAAe;MACJ/B,SAAS,GAGnB4B,MAAM,CAHPxB,QAAQ;MACME,WAAW,GAExBsB,MAAM,CAFPE,WAAW;MACTE,KAAK,OAAAC,yBAAA,aACNL,MAAM,GAJPG,eAAe,EACf3B,QAAQ,EACR0B,WAAW,EAAAI,GAAA,CAAAC,eAAA;IAId,IAAI9B,gBAAgB,KAAKJ,SAAS,EAAE;MAClCmC,OAAO,CAACC,IAAI,CAACN,eAAe,EAAE,qCAAqC,CAAC;IACtE;;IAEA;IACA;IACA;;IAEA,IAAIO,MAAM,GAAGb,MAAM,CAACrB,QAAQ,CAAC;IAC7B,IAAIG,YAAY,GAAG,EAAE;IAErB,IAAIW,KAAK,CAACqB,OAAO,CAACD,MAAM,CAAC;MAAA,IAAAE,OAAA,GAA8BF,MAAM;MAAA,IAAAG,QAAA,OAAAC,SAAA,aAAAF,OAAA;MAAjCF,MAAM,GAAAG,QAAA;MAAKlC,YAAY,GAAAkC,QAAA,CAAAE,KAAA;IAAA;IACnDL,MAAM,GAAGA,MAAM,IAAK,UAACM,CAAC;MAAA,OAAKA,CAAC;IAAA,CAAC;IAE7B,IAAAC,iBAAA,GAAyB3C,gBAAgB,CACvCE,QAAQ,EACRJ,SAAS,EACTK,gBAAgB,EAChBC,WAAW,EACXC,YAAY,CACb;MAAAuC,kBAAA,OAAAC,eAAA,aAAAF,iBAAA;MANMnC,KAAK,GAAAoC,kBAAA;MAAEE,OAAO,GAAAF,kBAAA;IAOrB;IACApB,YAAY,CAACtB,QAAQ,CAAC,GAAG4C,OAAO;IAEhC,WAAAC,cAAA,iBAAAA,cAAA,iBACKjB,KAAK,QAAAH,cAAA,WAAAhB,gBAAA,aAAAgB,cAAA,EACPzB,QAAQ,EAAGM,KAAK,OAAAG,gBAAA,aAAAgB,cAAA,EAChBC,WAAW,EAAG,UAACoB,YAAY,EAAc;MAAA,SAAAC,KAAA,GAAApC,SAAA,CAAAC,MAAA,EAATC,IAAI,OAAAC,KAAA,CAAAiC,KAAA,OAAAA,KAAA,WAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;QAAJnC,IAAI,CAAAmC,KAAA,QAAArC,SAAA,CAAAqC,KAAA;MAAA;MACnC,IAAMxB,MAAM,IAAIU,MAAM,CAAAjB,KAAA,UAAC6B,YAAY,EAAAtD,MAAA,CAAKqB,IAAI,EAAC,EAAArB,MAAA,CAAKqB,IAAI,CAAC;MACvD,IAAIiC,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAEjE,MAAM,EAAE;QACxB2C,MAAM,CAACyB,IAAI,CAACH,YAAY,CAAC;MAC3B;MACA,OAAOF,OAAO,CAAA3B,KAAA,aAAAC,mBAAA,aAAIM,MAAM,EAAC;IAC3B,CAAC,GAAAC,cAAA;EAEL,CAAC,EAAEL,KAAK,CAAC;EACT,OAAO,CAACG,iBAAiB,EAAED,YAAY,CAAC;AAC1C;AAEA,SAAS4B,YAAYA,CAACnD,IAAI,EAAEqB,KAAK,EAAEC,MAAM,EAAE;EACzC,OAAOF,qBAAqB,CAACC,KAAK,EAAEC,MAAM,EAAEvB,gBAAgB,CAACqD,IAAI,CAACtD,SAAS,EAAEE,IAAI,CAAC,CAAC;AACrF;AAEA,SAASqD,WAAWA,CAAA,EAAG;EACrB,OAAO;IACLC,SAAS,EAAE,SAAAA,UAAUC,SAAS,EAAE;MAC9B,OAAOC,OAAO,CAACD,SAAS,CAACE,SAAS,CAACjC,iBAAiB,CAAC;IACvD,CAAC;IACDkC,IAAI,EAAE,SAAAA,KAAA,EAAY;MAChB,IAAI,CAACpD,KAAK,GAAG,IAAI,CAACA,KAAK,IAAI,CAAC,CAAC;MAC7BzB,MAAM,CAAC,IAAI,EAAE;QACX,IAAI8E,QAAQA,CAAA,EAAG;UACb,IAAAC,aAAA,GAAiCT,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC9B,KAAK,EAAE,IAAI,CAACG,iBAAiB,EAAE,CAAC;YAAAqC,cAAA,OAAAjB,eAAA,aAAAgB,aAAA;YAAhFE,oBAAoB,GAAAD,cAAA;UAC7B,OAAOC,oBAAoB;QAC7B;MACF,CAAC,CAAC;IACJ,CAAC;IACDC,OAAO,EAAE,SAAAA,QAAUA,QAAO,EAAE;MAC1B,WAAAjB,cAAA,iBAAAA,cAAA,iBACKiB,QAAO;QACVJ,QAAQ,EAAE,IAAI,CAACA;MAAQ;IAE3B,CAAC;IACDK,OAAO,EAAE,SAAAA,QAAU3C,KAAK,EAAE;MACxB;MACA,IAAA4C,cAAA,GAA4Bd,YAAY,CAAC,IAAI,EAAE9B,KAAK,EAAE,IAAI,CAACG,iBAAiB,EAAE,CAAC;QAAA0C,cAAA,OAAAtB,eAAA,aAAAqB,cAAA;QAAxEzC,iBAAiB,GAAA0C,cAAA;MACxB,OAAO1C,iBAAiB;IAC1B;EACF,CAAC;AACH;AAAC,IAAA2C,QAAA,GAEcd,WAAW;AAAAe,OAAA,cAAAD,QAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_hoistNonReactStatics","_interopRequireDefault","_ref4","_useEnhancedEffect","_assignProps2","_Component","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_register","_Children","_Root","_uncontrolledProps","_functionDefaultProps","_staticChildren","_inheritedName","_hoistProps","_dataName","_enhance","_style","_bindHandler","_i18n","_styled","_excluded","_excluded2","_excluded3","CORE_COMPONENT","Symbol","CORE_INSTANCE","CORE_AS_PROPS","CORE_INIT","CONTEXT_COMPONENT","CREATE_COMPONENT","PARENT_COMPONENTS","isEmptyObject","obj","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","createGetField","enhancements","Component","isFunction","getField","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","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","args","Array","_key","apply","concat","_defineProperty2","_assertThisInitialized2","_createClass2","value","render","_this2","map","fn","bind","React","hoistNonReactStatics","defaultProps","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","_OriginComponent2","_super2","context","_this3","_this4","Error","setContext","_this5","contextProps","_get2","_getPrototypeOf2","_this6","asProps","ctx","STATIC_COMPONENT","Provider","_objectSpread2","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","useEnhancedEffect","current","wrapCore","_ref3","Root","createComposeComponent","PureComponent","isPrototypeOf","assignProps","p1","p2","_assignProps","createComponent","childComponents","options","_options$context","createContext","_options$parent","parent","_options$enhancements","parents","isArray","wholeFamily","_toConsumableArray2","f","i18nAppLocaleEnhance","bindHandlerEnhancement","childrenEnhancement","rootEnhancement","uncontrolledPropsEnhancement","staticChildrenEnhancement","functionDefaultPropsEnhancement","inheritedNameEnhancement","dataNameEnhancement","enhanceEnhancement","styleEnhancement","hoistPropsEnhancement","_OriginComponent","_childComponents","_options","createBaseComponent","_default"],"sources":["../../src/index.tsx"],"sourcesContent":["import React, { ForwardRefExoticComponent, RefAttributes, useRef } from 'react';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n// @ts-ignore\nimport { useForkRef } from '@semcore/utils/lib/ref';\n// @ts-ignore\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n// @ts-ignore\nimport _assignProps from '@semcore/utils/lib/assignProps';\n\nimport { Component, PropsWithRenderFnChildren } from './Component';\nimport register from './register';\n\nimport childrenEnhancement, { CHILDREN_COMPONENT } from './enhancement/Children';\nimport rootEnhancement from './enhancement/Root';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport staticChildrenEnhancement, {\n STATIC_COMPONENT,\n ROOT_COMPONENT,\n getterMethodNameByDisplayName,\n} from './enhancement/staticChildren';\nimport inheritedNameEnhancement, { INHERITED_NAME } from './enhancement/inheritedName';\nimport hoistPropsEnhancement from './enhancement/hoistProps';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport styleEnhancement from './enhancement/style';\nimport bindHandlerEnhancement from './enhancement/bindHandler';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\n\nconst CORE_COMPONENT = Symbol('CORE_COMPONENT');\nconst CORE_INSTANCE = Symbol('CORE_INSTANCE');\nconst CORE_AS_PROPS = Symbol('CORE_AS_PROPS');\nconst CORE_INIT = Symbol('CORE_INIT');\nconst CONTEXT_COMPONENT = Symbol('CONTEXT_COMPONENT');\nconst CREATE_COMPONENT = Symbol('CREATE_COMPONENT');\nconst PARENT_COMPONENTS = Symbol('PARENT_COMPONENTS');\n\nfunction isEmptyObject(obj) {\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, Component, isFunction) {\n return function getField(key) {\n return enhancements\n .filter((enhancement) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc, item) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component, wrapperProps, statics, isFunction) {\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) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef({ forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }, ref) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc, enhancement) => 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) => 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) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent, enhancements, Context) {\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, context) {\n super(props, context);\n // INITS\n inits.forEach((enhancement) => 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, enhancement) => 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, enhancement) => 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 = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc, enhancement) => 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 = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent, enhancements, Context) {\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 = useRef({});\n const firstRender = useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc, enhancement) => enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc, enhancement) => enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc, enhancement) => 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 = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent, enhancements, Context) {\n const Component = function ({ Root }) {\n return <Root render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n Component.defaultProps = OriginComponent.defaultProps;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent, Context, enhancements): 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\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\ninterface ClassWithUncontrolledProps<Props> {\n uncontrolledProps(): unknown;\n}\n\nfunction assignProps(p1, p2) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<ComponentProps, ChildComponentProps = {}, ContextType = {}, FNType = null>(\n OriginComponent,\n childComponents = {},\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<any>\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, parent) => {\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[CREATE_COMPONENT] = 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): 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[CORE_COMPONENT] = true;\n } else {\n throw new Error('createBaseComponent accepts only functional component');\n }\n return Component;\n}\n\nexport * from './Component';\nexport * from './styled';\nexport * from './register';\nexport {\n createBaseComponent,\n register,\n CREATE_COMPONENT,\n CORE_INSTANCE,\n CONTEXT_COMPONENT,\n CHILDREN_COMPONENT,\n INHERITED_NAME,\n CORE_COMPONENT,\n STATIC_COMPONENT,\n ROOT_COMPONENT,\n assignProps,\n};\nexport default createComponent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_hoistNonReactStatics","_interopRequireDefault","_ref4","_useEnhancedEffect","_assignProps2","_Component","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_register","_Children","_Root","_uncontrolledProps","_functionDefaultProps","_staticChildren","_inheritedName","_hoistProps","_dataName","_enhance","_style","_bindHandler","_i18n","_styled","_excluded","_excluded2","_excluded3","CORE_COMPONENT","Symbol","CORE_INSTANCE","CORE_AS_PROPS","CORE_INIT","CONTEXT_COMPONENT","CREATE_COMPONENT","PARENT_COMPONENTS","isEmptyObject","obj","getOwnPropertyNames","length","getOwnPropertySymbols","getPrototypeOf","createGetField","enhancements","Component","isFunction","getField","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","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","args","Array","_key","apply","concat","_defineProperty2","_assertThisInitialized2","_createClass2","value","render","_this2","map","fn","bind","React","hoistNonReactStatics","defaultProps","assign","wrapClass","OriginComponent","Context","inits","renders","contexts","_OriginComponent2","_super2","context","_this3","_this4","Error","setContext","_this5","contextProps","_get2","_getPrototypeOf2","_this6","asProps","ctx","STATIC_COMPONENT","Provider","_objectSpread2","wrapFunction","memo","FunctionMemoComponent","selfRef","useRef","firstRender","useEnhancedEffect","current","wrapCore","_ref3","Root","createComposeComponent","PureComponent","isPrototypeOf","assignProps","p1","p2","_assignProps","createComponent","childComponents","options","_options$context","createContext","_options$parent","parent","_options$enhancements","parents","isArray","wholeFamily","_toConsumableArray2","f","i18nAppLocaleEnhance","bindHandlerEnhancement","childrenEnhancement","rootEnhancement","uncontrolledPropsEnhancement","staticChildrenEnhancement","functionDefaultPropsEnhancement","inheritedNameEnhancement","dataNameEnhancement","enhanceEnhancement","styleEnhancement","hoistPropsEnhancement","_OriginComponent","_childComponents","_options","createBaseComponent","_default"],"sources":["../../src/index.tsx"],"sourcesContent":["import React, { ForwardRefExoticComponent, RefAttributes, useRef } from 'react';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\n// @ts-ignore\nimport { useForkRef } from '@semcore/utils/lib/ref';\n// @ts-ignore\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n// @ts-ignore\nimport _assignProps from '@semcore/utils/lib/assignProps';\n\nimport { Component, PropsWithRenderFnChildren } from './Component';\nimport register from './register';\n\nimport childrenEnhancement, { CHILDREN_COMPONENT } from './enhancement/Children';\nimport rootEnhancement from './enhancement/Root';\nimport uncontrolledPropsEnhancement from './enhancement/uncontrolledProps';\nimport functionDefaultPropsEnhancement from './enhancement/functionDefaultProps';\nimport staticChildrenEnhancement, {\n STATIC_COMPONENT,\n ROOT_COMPONENT,\n getterMethodNameByDisplayName,\n} from './enhancement/staticChildren';\nimport inheritedNameEnhancement, { INHERITED_NAME } from './enhancement/inheritedName';\nimport hoistPropsEnhancement from './enhancement/hoistProps';\nimport dataNameEnhancement from './enhancement/dataName';\nimport enhanceEnhancement from './enhancement/enhance';\nimport styleEnhancement from './enhancement/style';\nimport bindHandlerEnhancement from './enhancement/bindHandler';\nimport i18nAppLocaleEnhance from './enhancement/i18n';\n\nconst CORE_COMPONENT = Symbol('CORE_COMPONENT');\nconst CORE_INSTANCE = Symbol('CORE_INSTANCE');\nconst CORE_AS_PROPS = Symbol('CORE_AS_PROPS');\nconst CORE_INIT = Symbol('CORE_INIT');\nconst CONTEXT_COMPONENT = Symbol('CONTEXT_COMPONENT');\nconst CREATE_COMPONENT = Symbol('CREATE_COMPONENT');\nconst PARENT_COMPONENTS = Symbol('PARENT_COMPONENTS');\n\nfunction isEmptyObject(obj) {\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, Component, isFunction) {\n return function getField(key) {\n return enhancements\n .filter((enhancement) => {\n if (!enhancement.condition) {\n return true;\n }\n return enhancement.condition(Component, isFunction);\n })\n .reduce((acc, item) => {\n if (item[key]) {\n acc.push(item[key]);\n }\n return acc;\n }, []);\n };\n}\n\nfunction createForwardWrapper(Component, wrapperProps, statics, isFunction) {\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) {\n return <BindingWrapper {...other} forwardRef={useForkRef(ref, forwardRef)} />;\n }\n\n function WrapperForwardRef({ forwardRef = null, __WRAPPER_PROPS_BIND__, ...other }, ref) {\n const { ref: enhancementRef = null, ...props } = (\n __WRAPPER_PROPS_BIND__ || wrapperProps\n ).reduce((acc, enhancement) => 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) => 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) =>\n Object.assign(WrapperComponent, enhancement(WrapperComponent, Component, isFunction)),\n );\n\n return WrapperComponent;\n}\n\nfunction wrapClass(OriginComponent, enhancements, Context) {\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, context) {\n super(props, context);\n // INITS\n inits.forEach((enhancement) => 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, enhancement) => 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, enhancement) => 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 = this.asProps;\n const ctx = this.setContext();\n // RENDER\n const render = renders.reduce(\n (acc, enhancement) => 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 = createForwardWrapper(Component, wrapperProps, statics, false);\n return WrapperComponent;\n}\n\nfunction wrapFunction(OriginComponent, enhancements, Context) {\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 = useRef({});\n const firstRender = useRef(true);\n useEnhancedEffect(() => {\n firstRender.current = false;\n }, []);\n if (firstRender.current) {\n // INITS\n inits.forEach((enhancement) =>\n enhancement.call(selfRef.current, other, WrapperComponent, true),\n );\n }\n // PROPS\n const asProps = props.reduce(\n (acc, enhancement) => enhancement.call(selfRef.current, acc, WrapperComponent, true),\n other,\n );\n // CONTEXT\n const ctx = contexts.reduce(\n (acc, enhancement) => enhancement.call(selfRef.current, acc, WrapperComponent, true),\n {},\n );\n\n // RENDER\n const render = renders.reduce(\n (acc, enhancement) => 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 = createForwardWrapper(Component, wrapperProps, statics, true);\n return WrapperComponent;\n}\n\nfunction wrapCore(OriginComponent, enhancements, Context) {\n const Component = function ({ Root }) {\n return <Root render={OriginComponent} />;\n };\n hoistNonReactStatics(Component, OriginComponent);\n Component.displayName = OriginComponent.displayName;\n Component.defaultProps = OriginComponent.defaultProps;\n return wrapFunction(Component, enhancements, Context);\n}\n\nfunction createComposeComponent(OriginComponent, Context, enhancements): 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<Props> {\n uncontrolledProps(): unknown;\n}\n\nfunction assignProps(p1, p2) {\n return _assignProps(p2, p1);\n}\n\nfunction createComponent<ComponentProps, ChildComponentProps = {}, ContextType = {}, FNType = null>(\n OriginComponent,\n childComponents = {},\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<any>\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, parent) => {\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[CREATE_COMPONENT] = 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): 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[CORE_COMPONENT] = true;\n } else {\n throw new Error('createBaseComponent accepts only functional component');\n }\n return Component;\n}\n\nexport * from './Component';\nexport * from './styled';\nexport * from './register';\nexport {\n createBaseComponent,\n register,\n CREATE_COMPONENT,\n CORE_INSTANCE,\n CONTEXT_COMPONENT,\n CHILDREN_COMPONENT,\n INHERITED_NAME,\n CORE_COMPONENT,\n STATIC_COMPONENT,\n ROOT_COMPONENT,\n assignProps,\n};\nexport default createComponent;\n"],"mappings":"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"}
@@ -25,7 +25,8 @@ var Register = /*#__PURE__*/function () {
25
25
  }, {
26
26
  key: "set",
27
27
  value: function set(name, value) {
28
- return this.data[name] = value;
28
+ this.data[name] = value;
29
+ return this.data[name];
29
30
  }
30
31
  }]);
31
32
  return Register;
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","names":["Register","_classCallCheck2","_defineProperty2","_createClass2","key","value","get","name","defaultValue","data","set","exports","_default"],"sources":["../../src/register.tsx"],"sourcesContent":["class Register {\n data = {};\n\n get<D>(name, defaultValue?: D): D {\n if (name in this.data) {\n return this.data[name];\n } else {\n return this.set(name, defaultValue);\n }\n }\n\n set<D>(name, value: D): D {\n return (this.data[name] = value);\n }\n}\n\nexport { Register };\nexport default new Register();\n"],"mappings":";;;;;;;;;;IAAMA,QAAQ;EAAA,SAAAA,SAAA;IAAA,IAAAC,gBAAA,mBAAAD,QAAA;IAAA,IAAAE,gBAAA,2BACL,CAAC,CAAC;EAAA;EAAA,IAAAC,aAAA,aAAAH,QAAA;IAAAI,GAAA;IAAAC,KAAA,EAET,SAAAC,IAAOC,IAAI,EAAEC,YAAgB,EAAK;MAChC,IAAID,IAAI,IAAI,IAAI,CAACE,IAAI,EAAE;QACrB,OAAO,IAAI,CAACA,IAAI,CAACF,IAAI,CAAC;MACxB,CAAC,MAAM;QACL,OAAO,IAAI,CAACG,GAAG,CAACH,IAAI,EAAEC,YAAY,CAAC;MACrC;IACF;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAAK,IAAOH,IAAI,EAAEF,KAAQ,EAAK;MACxB,OAAQ,IAAI,CAACI,IAAI,CAACF,IAAI,CAAC,GAAGF,KAAK;IACjC;EAAC;EAAA,OAAAL,QAAA;AAAA;AAAAW,OAAA,CAAAX,QAAA,GAAAA,QAAA;AAAA,IAAAY,QAAA,GAIY,IAAIZ,QAAQ,EAAE;AAAAW,OAAA,cAAAC,QAAA"}
1
+ {"version":3,"file":"register.js","names":["Register","_classCallCheck2","_defineProperty2","_createClass2","key","value","get","name","defaultValue","data","set","exports","_default"],"sources":["../../src/register.tsx"],"sourcesContent":["class Register {\n data = {};\n\n get<D>(name, defaultValue?: D): D {\n if (name in this.data) {\n return this.data[name];\n } else {\n return this.set(name, defaultValue);\n }\n }\n\n set<D>(name, value: D): D {\n this.data[name] = value;\n return this.data[name];\n }\n}\n\nexport { Register };\nexport default new Register();\n"],"mappings":";;;;;;;;;;IAAMA,QAAQ;EAAA,SAAAA,SAAA;IAAA,IAAAC,gBAAA,mBAAAD,QAAA;IAAA,IAAAE,gBAAA,2BACL,CAAC,CAAC;EAAA;EAAA,IAAAC,aAAA,aAAAH,QAAA;IAAAI,GAAA;IAAAC,KAAA,EAET,SAAAC,IAAOC,IAAI,EAAEC,YAAgB,EAAK;MAChC,IAAID,IAAI,IAAI,IAAI,CAACE,IAAI,EAAE;QACrB,OAAO,IAAI,CAACA,IAAI,CAACF,IAAI,CAAC;MACxB,CAAC,MAAM;QACL,OAAO,IAAI,CAACG,GAAG,CAACH,IAAI,EAAEC,YAAY,CAAC;MACrC;IACF;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAAK,IAAOH,IAAI,EAAEF,KAAQ,EAAK;MACxB,IAAI,CAACI,IAAI,CAACF,IAAI,CAAC,GAAGF,KAAK;MACvB,OAAO,IAAI,CAACI,IAAI,CAACF,IAAI,CAAC;IACxB;EAAC;EAAA,OAAAP,QAAA;AAAA;AAAAW,OAAA,CAAAX,QAAA,GAAAA,QAAA;AAAA,IAAAY,QAAA,GAIY,IAAIZ,QAAQ,EAAE;AAAAW,OAAA,cAAAC,QAAA"}
@@ -10,8 +10,6 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
11
  var _react = require("react");
12
12
  var _core = require("@reshadow/core");
13
- /* eslint-disable */
14
-
15
13
  var RESHADOW_ID = '__reshadow__';
16
14
  var isSSR = !(typeof window !== 'undefined' && window.document && window.document.createElement);
17
15
  var serverMap = (0, _core.getStyles)().map;
@@ -96,6 +94,7 @@ function getClassAndVars(styles, name, props) {
96
94
  acc[0][value] = Boolean(propValue !== null && propValue !== void 0 ? propValue : false);
97
95
  } else {
98
96
  // @ts-ignore
97
+ // rome-ignore lint/suspicious/noDoubleEquals: <explanation>
99
98
  acc[0][value] = propValue == modValue;
100
99
  }
101
100
  }
@@ -146,6 +145,4 @@ sstyled.insert = insert;
146
145
  sstyled.merge = merge;
147
146
  sstyled.getStyles = getStyles;
148
147
  sstyled.SHADOW_STYLES = Symbol('SHADOW_STYLES');
149
-
150
- /* eslint-enable */
151
148
  //# sourceMappingURL=sstyled.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sstyled.js","names":["_classnames","_interopRequireDefault","require","_react","_core","RESHADOW_ID","isSSR","window","document","createElement","serverMap","reshadowGetStyles","map","getStyles","css","serverStyles","id","concat","insert","code","hash","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","arguments","length","undefined","s2","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray2","key","value","startsWith","cn","assign","getClassAndVars","styles","name","props","getPropValue","_props","_ref3","_ref4","substring","_key$split","split","_key$split2","mod","modValue","propValue","Boolean","reshadowToShadow","obj","style","_ref5","_ref6","n","replace","sstyled","_getClassAndVars","_getClassAndVars2","classes","extraProps","keys","className","_objectSpread2","Error","SHADOW_STYLES","Symbol"],"sources":["../../../src/styled/sstyled.tsx"],"sourcesContent":["/* eslint-disable */\nimport cn from 'classnames';\nimport { ReactNode } from 'react';\nimport { getStyles as reshadowGetStyles } from '@reshadow/core';\n\nconst RESHADOW_ID = '__reshadow__';\n\nconst isSSR = !(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nconst serverMap = reshadowGetStyles().map;\n\nconst getStyles = () => ({\n map: serverMap,\n get css() {\n let serverStyles = '';\n for (const id in serverMap) {\n serverStyles += `<style type='text/css' id='${id}'>${serverMap[id]}</style>`;\n }\n return serverStyles;\n },\n});\n\nfunction insert(code, hash) {\n const id = 'reshadow-'.concat(hash);\n\n if (isSSR) {\n serverMap[id] = code;\n return;\n }\n\n let container = document.getElementById(RESHADOW_ID);\n\n if (!container) {\n container = document.createElement('object');\n container.id = RESHADOW_ID;\n\n if (document.head) {\n document.head.appendChild(container);\n } else {\n document.addEventListener('DOMContentLoaded', function () {\n document.head.appendChild(container);\n });\n }\n }\n\n let css = document.getElementById(id);\n\n if (!css) {\n css = document.createElement('style');\n css.id = id;\n // @ts-ignore\n css.type = 'text/css';\n container.appendChild(css);\n }\n\n css.innerHTML = code;\n}\n\nfunction merge(s1 = {}, s2 = {}) {\n return Object.entries(s2).reduce((acc, [key, value]) => {\n if (key.startsWith('@') || key.startsWith('--')) {\n acc[key] = value;\n } else {\n acc[key] = cn(acc[key], value);\n }\n return acc;\n }, Object.assign({}, s1));\n}\n\nfunction getClassAndVars(styles, name, props) {\n function getPropValue(key, props) {\n return props[`use:${key}`] ?? props[key];\n }\n\n return Object.entries(styles).reduce(\n (acc, [key, value]) => {\n if (key.startsWith('--')) {\n // @ts-ignore\n acc[1][value] = getPropValue(key.substring(2), props);\n } else if (name === key) {\n // @ts-ignore\n acc[0][value] = true;\n } else {\n const [mod, modValue] = key.split('=');\n const propValue = getPropValue(mod, props);\n if (modValue === undefined) {\n // @ts-ignore\n acc[0][value] = Boolean(propValue ?? false);\n } else {\n // @ts-ignore\n acc[0][value] = propValue == modValue;\n }\n }\n return acc;\n },\n [{}, {}],\n );\n}\n\nfunction reshadowToShadow(obj) {\n return Object.entries(obj).reduce((style, [name, value]) => {\n let n = name;\n if (name.startsWith('__')) {\n n = name.replace(/^__/, '');\n } else if (name.startsWith('_')) {\n n = name.replace(/^_/, '').replace('_', '=');\n }\n style[n] = value;\n return style;\n }, {});\n}\n\nfunction sstyled(\n styles = {},\n): ((ReactNode) => ReactNode) & {\n cn(name: string, props: any): any;\n} {\n // @ts-ignore\n return {\n cn(name, props) {\n const [classes, style] = getClassAndVars(reshadowToShadow(styles), name, props);\n const extraProps = {};\n\n if (Object.keys(classes).length) {\n // @ts-ignore\n extraProps.className = cn(props.className, classes);\n }\n\n if (Object.keys(style).length) {\n // @ts-ignore\n extraProps.style = Object.assign(style, props.style);\n }\n return {\n ...props,\n ...extraProps,\n };\n },\n };\n}\n\nsstyled.css = function (css): { [key: string]: string } {\n throw new Error('Enable babel plugin');\n};\nsstyled.insert = insert;\nsstyled.merge = merge;\nsstyled.getStyles = getStyles;\nsstyled.SHADOW_STYLES = Symbol('SHADOW_STYLES');\n\nexport { sstyled };\n/* eslint-enable */\n"],"mappings":"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"}
1
+ {"version":3,"file":"sstyled.js","names":["_classnames","_interopRequireDefault","require","_react","_core","RESHADOW_ID","isSSR","window","document","createElement","serverMap","reshadowGetStyles","map","getStyles","css","serverStyles","id","concat","insert","code","hash","container","getElementById","head","appendChild","addEventListener","type","innerHTML","merge","s1","arguments","length","undefined","s2","Object","entries","reduce","acc","_ref","_ref2","_slicedToArray2","key","value","startsWith","cn","assign","getClassAndVars","styles","name","props","getPropValue","_props","_ref3","_ref4","substring","_key$split","split","_key$split2","mod","modValue","propValue","Boolean","reshadowToShadow","obj","style","_ref5","_ref6","n","replace","sstyled","_getClassAndVars","_getClassAndVars2","classes","extraProps","keys","className","_objectSpread2","Error","SHADOW_STYLES","Symbol"],"sources":["../../../src/styled/sstyled.tsx"],"sourcesContent":["import cn from 'classnames';\nimport { ReactNode } from 'react';\nimport { getStyles as reshadowGetStyles } from '@reshadow/core';\n\nconst RESHADOW_ID = '__reshadow__';\n\nconst isSSR = !(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nconst serverMap = reshadowGetStyles().map;\n\nconst getStyles = () => ({\n map: serverMap,\n get css() {\n let serverStyles = '';\n for (const id in serverMap) {\n serverStyles += `<style type='text/css' id='${id}'>${serverMap[id]}</style>`;\n }\n return serverStyles;\n },\n});\n\nfunction insert(code, hash) {\n const id = 'reshadow-'.concat(hash);\n\n if (isSSR) {\n serverMap[id] = code;\n return;\n }\n\n let container = document.getElementById(RESHADOW_ID);\n\n if (!container) {\n container = document.createElement('object');\n container.id = RESHADOW_ID;\n\n if (document.head) {\n document.head.appendChild(container);\n } else {\n document.addEventListener('DOMContentLoaded', function () {\n document.head.appendChild(container);\n });\n }\n }\n\n let css = document.getElementById(id);\n\n if (!css) {\n css = document.createElement('style');\n css.id = id;\n // @ts-ignore\n css.type = 'text/css';\n container.appendChild(css);\n }\n\n css.innerHTML = code;\n}\n\nfunction merge(s1 = {}, s2 = {}) {\n return Object.entries(s2).reduce((acc, [key, value]) => {\n if (key.startsWith('@') || key.startsWith('--')) {\n acc[key] = value;\n } else {\n acc[key] = cn(acc[key], value);\n }\n return acc;\n }, Object.assign({}, s1));\n}\n\nfunction getClassAndVars(styles, name, props) {\n function getPropValue(key, props) {\n return props[`use:${key}`] ?? props[key];\n }\n\n return Object.entries(styles).reduce(\n (acc, [key, value]) => {\n if (key.startsWith('--')) {\n // @ts-ignore\n acc[1][value] = getPropValue(key.substring(2), props);\n } else if (name === key) {\n // @ts-ignore\n acc[0][value] = true;\n } else {\n const [mod, modValue] = key.split('=');\n const propValue = getPropValue(mod, props);\n if (modValue === undefined) {\n // @ts-ignore\n acc[0][value] = Boolean(propValue ?? false);\n } else {\n // @ts-ignore\n // rome-ignore lint/suspicious/noDoubleEquals: <explanation>\n acc[0][value] = propValue == modValue;\n }\n }\n return acc;\n },\n [{}, {}],\n );\n}\n\nfunction reshadowToShadow(obj) {\n return Object.entries(obj).reduce((style, [name, value]) => {\n let n = name;\n if (name.startsWith('__')) {\n n = name.replace(/^__/, '');\n } else if (name.startsWith('_')) {\n n = name.replace(/^_/, '').replace('_', '=');\n }\n style[n] = value;\n return style;\n }, {});\n}\n\nfunction sstyled(styles = {}): ((ReactNode) => ReactNode) & {\n cn(name: string, props: any): any;\n} {\n // @ts-ignore\n return {\n cn(name, props) {\n const [classes, style] = getClassAndVars(reshadowToShadow(styles), name, props);\n const extraProps = {};\n\n if (Object.keys(classes).length) {\n // @ts-ignore\n extraProps.className = cn(props.className, classes);\n }\n\n if (Object.keys(style).length) {\n // @ts-ignore\n extraProps.style = Object.assign(style, props.style);\n }\n return {\n ...props,\n ...extraProps,\n };\n },\n };\n}\n\nsstyled.css = function (css): { [key: string]: string } {\n throw new Error('Enable babel plugin');\n};\nsstyled.insert = insert;\nsstyled.merge = merge;\nsstyled.getStyles = getStyles;\nsstyled.SHADOW_STYLES = Symbol('SHADOW_STYLES');\n\nexport { sstyled };\n"],"mappings":"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"}