@vitus-labs/rocketstyle 0.46.0 → 0.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6424,7 +6424,7 @@ var drawChart = (function (exports) {
6424
6424
  </script>
6425
6425
  <script>
6426
6426
  /*<!--*/
6427
- const data = {"version":2,"tree":{"name":"root","children":[{"name":"vitus-labs-rocketstyle.js","children":[{"name":"src","children":[{"name":"hooks","children":[{"uid":"7052-1","name":"usePseudoState.tsx"},{"uid":"7052-9","name":"useTheme.tsx"},{"uid":"7052-15","name":"useThemeOptions.tsx"}]},{"name":"utils","children":[{"uid":"7052-3","name":"collection.ts"},{"uid":"7052-5","name":"dimensions.ts"},{"uid":"7052-7","name":"theme.ts"},{"uid":"7052-17","name":"attrs.ts"},{"uid":"7052-25","name":"styles.ts"}]},{"uid":"7052-11","name":"context.tsx"},{"name":"constants","children":[{"uid":"7052-13","name":"reservedKeys.ts"},{"uid":"7052-29","name":"defaultDimensions.ts"}]},{"name":"internal","children":[{"uid":"7052-19","name":"rocketstyleAttrsHoc.tsx"},{"uid":"7052-21","name":"localContext.tsx"},{"uid":"7052-23","name":"createProvider.tsx"}]},{"uid":"7052-27","name":"rocketstyle.tsx"},{"uid":"7052-31","name":"init.ts"},{"uid":"7052-33","name":"isRocketComponent.ts"},{"uid":"7052-35","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"7052-1":{"renderedLength":1775,"gzipLength":407,"brotliLength":0,"mainUid":"7052-0"},"7052-3":{"renderedLength":468,"gzipLength":280,"brotliLength":0,"mainUid":"7052-2"},"7052-5":{"renderedLength":1474,"gzipLength":545,"brotliLength":0,"mainUid":"7052-4"},"7052-7":{"renderedLength":2625,"gzipLength":845,"brotliLength":0,"mainUid":"7052-6"},"7052-9":{"renderedLength":542,"gzipLength":295,"brotliLength":0,"mainUid":"7052-8"},"7052-11":{"renderedLength":464,"gzipLength":261,"brotliLength":0,"mainUid":"7052-10"},"7052-13":{"renderedLength":566,"gzipLength":296,"brotliLength":0,"mainUid":"7052-12"},"7052-15":{"renderedLength":331,"gzipLength":206,"brotliLength":0,"mainUid":"7052-14"},"7052-17":{"renderedLength":2568,"gzipLength":873,"brotliLength":0,"mainUid":"7052-16"},"7052-19":{"renderedLength":1029,"gzipLength":445,"brotliLength":0,"mainUid":"7052-18"},"7052-21":{"renderedLength":43,"gzipLength":58,"brotliLength":0,"mainUid":"7052-20"},"7052-23":{"renderedLength":832,"gzipLength":384,"brotliLength":0,"mainUid":"7052-22"},"7052-25":{"renderedLength":129,"gzipLength":112,"brotliLength":0,"mainUid":"7052-24"},"7052-27":{"renderedLength":11491,"gzipLength":2801,"brotliLength":0,"mainUid":"7052-26"},"7052-29":{"renderedLength":178,"gzipLength":128,"brotliLength":0,"mainUid":"7052-28"},"7052-31":{"renderedLength":1570,"gzipLength":577,"brotliLength":0,"mainUid":"7052-30"},"7052-33":{"renderedLength":204,"gzipLength":148,"brotliLength":0,"mainUid":"7052-32"},"7052-35":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"mainUid":"7052-34"}},"nodeMetas":{"7052-0":{"id":"/src/hooks/usePseudoState.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-1"},"imported":[{"uid":"7052-37"}],"importedBy":[{"uid":"7052-39"}]},"7052-2":{"id":"/src/utils/collection.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-3"},"imported":[],"importedBy":[{"uid":"7052-26"},{"uid":"7052-6"}]},"7052-4":{"id":"/src/utils/dimensions.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-5"},"imported":[{"uid":"7052-36"}],"importedBy":[{"uid":"7052-30"},{"uid":"7052-6"},{"uid":"7052-8"}]},"7052-6":{"id":"/src/utils/theme.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-7"},"imported":[{"uid":"7052-36"},{"uid":"7052-2"},{"uid":"7052-4"}],"importedBy":[{"uid":"7052-26"},{"uid":"7052-8"}]},"7052-8":{"id":"/src/hooks/useTheme.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-9"},"imported":[{"uid":"7052-36"},{"uid":"7052-6"},{"uid":"7052-4"}],"importedBy":[{"uid":"7052-39"}]},"7052-10":{"id":"/src/context.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-11"},"imported":[{"uid":"7052-37"},{"uid":"7052-36"}],"importedBy":[{"uid":"7052-34"},{"uid":"7052-14"}]},"7052-12":{"id":"/src/constants/reservedKeys.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-13"},"imported":[],"importedBy":[{"uid":"7052-30"},{"uid":"7052-26"},{"uid":"7052-14"}]},"7052-14":{"id":"/src/hooks/useThemeOptions.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-15"},"imported":[{"uid":"7052-37"},{"uid":"7052-10"},{"uid":"7052-12"}],"importedBy":[{"uid":"7052-39"}]},"7052-16":{"id":"/src/utils/attrs.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-17"},"imported":[{"uid":"7052-36"}],"importedBy":[{"uid":"7052-26"},{"uid":"7052-18"}]},"7052-18":{"id":"/src/internal/rocketstyleAttrsHoc.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-19"},"imported":[{"uid":"7052-37"},{"uid":"7052-36"},{"uid":"7052-16"},{"uid":"7052-39"}],"importedBy":[{"uid":"7052-40"}]},"7052-20":{"id":"/src/internal/localContext.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-21"},"imported":[{"uid":"7052-37"}],"importedBy":[{"uid":"7052-40"},{"uid":"7052-22"}]},"7052-22":{"id":"/src/internal/createProvider.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-23"},"imported":[{"uid":"7052-37"},{"uid":"7052-39"},{"uid":"7052-20"}],"importedBy":[{"uid":"7052-40"}]},"7052-24":{"id":"/src/utils/styles.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-25"},"imported":[],"importedBy":[{"uid":"7052-26"}]},"7052-26":{"id":"/src/rocketstyle.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"7052-27"},"imported":[{"uid":"7052-37"},{"uid":"7052-38"},{"uid":"7052-36"},{"uid":"7052-39"},{"uid":"7052-40"},{"uid":"7052-6"},{"uid":"7052-24"},{"uid":"7052-2"},{"uid":"7052-16"},{"uid":"7052-12"}],"importedBy":[{"uid":"7052-30"}]},"7052-28":{"id":"/src/constants/defaultDimensions.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-29"},"imported":[],"importedBy":[{"uid":"7052-30"}]},"7052-30":{"id":"/src/init.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-31"},"imported":[{"uid":"7052-36"},{"uid":"7052-26"},{"uid":"7052-4"},{"uid":"7052-12"},{"uid":"7052-28"}],"importedBy":[{"uid":"7052-34"}]},"7052-32":{"id":"/src/isRocketComponent.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-33"},"imported":[],"importedBy":[{"uid":"7052-34"}]},"7052-34":{"id":"/src/index.ts","moduleParts":{"vitus-labs-rocketstyle.js":"7052-35"},"imported":[{"uid":"7052-30"},{"uid":"7052-10"},{"uid":"7052-32"}],"importedBy":[],"isEntry":true},"7052-36":{"id":"@vitus-labs/core","moduleParts":{},"imported":[],"importedBy":[{"uid":"7052-30"},{"uid":"7052-10"},{"uid":"7052-26"},{"uid":"7052-4"},{"uid":"7052-6"},{"uid":"7052-16"},{"uid":"7052-8"},{"uid":"7052-18"}],"isExternal":true},"7052-37":{"id":"react","moduleParts":{},"imported":[],"importedBy":[{"uid":"7052-10"},{"uid":"7052-26"},{"uid":"7052-0"},{"uid":"7052-14"},{"uid":"7052-18"},{"uid":"7052-22"},{"uid":"7052-20"}],"isExternal":true},"7052-38":{"id":"hoist-non-react-statics","moduleParts":{},"imported":[],"importedBy":[{"uid":"7052-26"}],"isExternal":true},"7052-39":{"id":"/src/hooks/index.ts","moduleParts":{},"imported":[{"uid":"7052-0"},{"uid":"7052-8"},{"uid":"7052-14"}],"importedBy":[{"uid":"7052-26"},{"uid":"7052-18"},{"uid":"7052-22"}]},"7052-40":{"id":"/src/internal/index.ts","moduleParts":{},"imported":[{"uid":"7052-18"},{"uid":"7052-22"},{"uid":"7052-20"}],"importedBy":[{"uid":"7052-26"}]}},"env":{"rollup":"2.70.1"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
6427
+ const data = {"version":2,"tree":{"name":"root","children":[{"name":"vitus-labs-rocketstyle.js","children":[{"name":"src","children":[{"name":"hooks","children":[{"uid":"1eec-1","name":"usePseudoState.tsx"},{"uid":"1eec-9","name":"useTheme.tsx"},{"uid":"1eec-15","name":"useThemeOptions.tsx"}]},{"name":"utils","children":[{"uid":"1eec-3","name":"collection.ts"},{"uid":"1eec-5","name":"dimensions.ts"},{"uid":"1eec-7","name":"theme.ts"},{"uid":"1eec-17","name":"attrs.ts"},{"uid":"1eec-25","name":"styles.ts"}]},{"uid":"1eec-11","name":"context.tsx"},{"name":"constants","children":[{"uid":"1eec-13","name":"reservedKeys.ts"},{"uid":"1eec-29","name":"defaultDimensions.ts"}]},{"name":"internal","children":[{"uid":"1eec-19","name":"rocketstyleAttrsHoc.tsx"},{"uid":"1eec-21","name":"localContext.tsx"},{"uid":"1eec-23","name":"createProvider.tsx"}]},{"uid":"1eec-27","name":"rocketstyle.tsx"},{"uid":"1eec-31","name":"init.ts"},{"uid":"1eec-33","name":"isRocketComponent.ts"},{"uid":"1eec-35","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"1eec-1":{"renderedLength":1775,"gzipLength":407,"brotliLength":0,"mainUid":"1eec-0"},"1eec-3":{"renderedLength":468,"gzipLength":280,"brotliLength":0,"mainUid":"1eec-2"},"1eec-5":{"renderedLength":1474,"gzipLength":545,"brotliLength":0,"mainUid":"1eec-4"},"1eec-7":{"renderedLength":2625,"gzipLength":845,"brotliLength":0,"mainUid":"1eec-6"},"1eec-9":{"renderedLength":542,"gzipLength":295,"brotliLength":0,"mainUid":"1eec-8"},"1eec-11":{"renderedLength":464,"gzipLength":261,"brotliLength":0,"mainUid":"1eec-10"},"1eec-13":{"renderedLength":566,"gzipLength":296,"brotliLength":0,"mainUid":"1eec-12"},"1eec-15":{"renderedLength":331,"gzipLength":206,"brotliLength":0,"mainUid":"1eec-14"},"1eec-17":{"renderedLength":2568,"gzipLength":873,"brotliLength":0,"mainUid":"1eec-16"},"1eec-19":{"renderedLength":1029,"gzipLength":445,"brotliLength":0,"mainUid":"1eec-18"},"1eec-21":{"renderedLength":43,"gzipLength":58,"brotliLength":0,"mainUid":"1eec-20"},"1eec-23":{"renderedLength":832,"gzipLength":384,"brotliLength":0,"mainUid":"1eec-22"},"1eec-25":{"renderedLength":129,"gzipLength":112,"brotliLength":0,"mainUid":"1eec-24"},"1eec-27":{"renderedLength":11491,"gzipLength":2801,"brotliLength":0,"mainUid":"1eec-26"},"1eec-29":{"renderedLength":178,"gzipLength":128,"brotliLength":0,"mainUid":"1eec-28"},"1eec-31":{"renderedLength":1570,"gzipLength":577,"brotliLength":0,"mainUid":"1eec-30"},"1eec-33":{"renderedLength":288,"gzipLength":192,"brotliLength":0,"mainUid":"1eec-32"},"1eec-35":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"mainUid":"1eec-34"}},"nodeMetas":{"1eec-0":{"id":"/src/hooks/usePseudoState.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-1"},"imported":[{"uid":"1eec-37"}],"importedBy":[{"uid":"1eec-39"}]},"1eec-2":{"id":"/src/utils/collection.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-3"},"imported":[],"importedBy":[{"uid":"1eec-26"},{"uid":"1eec-6"}]},"1eec-4":{"id":"/src/utils/dimensions.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-5"},"imported":[{"uid":"1eec-36"}],"importedBy":[{"uid":"1eec-30"},{"uid":"1eec-6"},{"uid":"1eec-8"}]},"1eec-6":{"id":"/src/utils/theme.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-7"},"imported":[{"uid":"1eec-36"},{"uid":"1eec-2"},{"uid":"1eec-4"}],"importedBy":[{"uid":"1eec-26"},{"uid":"1eec-8"}]},"1eec-8":{"id":"/src/hooks/useTheme.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-9"},"imported":[{"uid":"1eec-36"},{"uid":"1eec-6"},{"uid":"1eec-4"}],"importedBy":[{"uid":"1eec-39"}]},"1eec-10":{"id":"/src/context.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-11"},"imported":[{"uid":"1eec-37"},{"uid":"1eec-36"}],"importedBy":[{"uid":"1eec-34"},{"uid":"1eec-14"}]},"1eec-12":{"id":"/src/constants/reservedKeys.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-13"},"imported":[],"importedBy":[{"uid":"1eec-30"},{"uid":"1eec-26"},{"uid":"1eec-14"}]},"1eec-14":{"id":"/src/hooks/useThemeOptions.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-15"},"imported":[{"uid":"1eec-37"},{"uid":"1eec-10"},{"uid":"1eec-12"}],"importedBy":[{"uid":"1eec-39"}]},"1eec-16":{"id":"/src/utils/attrs.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-17"},"imported":[{"uid":"1eec-36"}],"importedBy":[{"uid":"1eec-26"},{"uid":"1eec-18"}]},"1eec-18":{"id":"/src/internal/rocketstyleAttrsHoc.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-19"},"imported":[{"uid":"1eec-37"},{"uid":"1eec-36"},{"uid":"1eec-16"},{"uid":"1eec-39"}],"importedBy":[{"uid":"1eec-40"}]},"1eec-20":{"id":"/src/internal/localContext.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-21"},"imported":[{"uid":"1eec-37"}],"importedBy":[{"uid":"1eec-40"},{"uid":"1eec-22"}]},"1eec-22":{"id":"/src/internal/createProvider.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-23"},"imported":[{"uid":"1eec-37"},{"uid":"1eec-39"},{"uid":"1eec-20"}],"importedBy":[{"uid":"1eec-40"}]},"1eec-24":{"id":"/src/utils/styles.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-25"},"imported":[],"importedBy":[{"uid":"1eec-26"}]},"1eec-26":{"id":"/src/rocketstyle.tsx","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-27"},"imported":[{"uid":"1eec-37"},{"uid":"1eec-38"},{"uid":"1eec-36"},{"uid":"1eec-39"},{"uid":"1eec-40"},{"uid":"1eec-6"},{"uid":"1eec-24"},{"uid":"1eec-2"},{"uid":"1eec-16"},{"uid":"1eec-12"}],"importedBy":[{"uid":"1eec-30"}]},"1eec-28":{"id":"/src/constants/defaultDimensions.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-29"},"imported":[],"importedBy":[{"uid":"1eec-30"}]},"1eec-30":{"id":"/src/init.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-31"},"imported":[{"uid":"1eec-36"},{"uid":"1eec-26"},{"uid":"1eec-4"},{"uid":"1eec-12"},{"uid":"1eec-28"}],"importedBy":[{"uid":"1eec-34"}]},"1eec-32":{"id":"/src/isRocketComponent.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-33"},"imported":[],"importedBy":[{"uid":"1eec-34"}]},"1eec-34":{"id":"/src/index.ts","moduleParts":{"vitus-labs-rocketstyle.js":"1eec-35"},"imported":[{"uid":"1eec-30"},{"uid":"1eec-10"},{"uid":"1eec-32"}],"importedBy":[],"isEntry":true},"1eec-36":{"id":"@vitus-labs/core","moduleParts":{},"imported":[],"importedBy":[{"uid":"1eec-30"},{"uid":"1eec-10"},{"uid":"1eec-26"},{"uid":"1eec-4"},{"uid":"1eec-6"},{"uid":"1eec-16"},{"uid":"1eec-8"},{"uid":"1eec-18"}],"isExternal":true},"1eec-37":{"id":"react","moduleParts":{},"imported":[],"importedBy":[{"uid":"1eec-10"},{"uid":"1eec-26"},{"uid":"1eec-0"},{"uid":"1eec-14"},{"uid":"1eec-18"},{"uid":"1eec-22"},{"uid":"1eec-20"}],"isExternal":true},"1eec-38":{"id":"hoist-non-react-statics","moduleParts":{},"imported":[],"importedBy":[{"uid":"1eec-26"}],"isExternal":true},"1eec-39":{"id":"/src/hooks/index.ts","moduleParts":{},"imported":[{"uid":"1eec-0"},{"uid":"1eec-8"},{"uid":"1eec-14"}],"importedBy":[{"uid":"1eec-26"},{"uid":"1eec-18"},{"uid":"1eec-22"}]},"1eec-40":{"id":"/src/internal/index.ts","moduleParts":{},"imported":[{"uid":"1eec-18"},{"uid":"1eec-22"},{"uid":"1eec-20"}],"importedBy":[{"uid":"1eec-26"}]}},"env":{"rollup":"2.70.1"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
6428
6428
 
6429
6429
  const run = () => {
6430
6430
  const width = window.innerWidth;
@@ -6424,7 +6424,7 @@ var drawChart = (function (exports) {
6424
6424
  </script>
6425
6425
  <script>
6426
6426
  /*<!--*/
6427
- const data = {"version":2,"tree":{"name":"root","children":[{"name":"vitus-labs-rocketstyle.module.js","children":[{"name":"src","children":[{"name":"hooks","children":[{"uid":"7052-42","name":"usePseudoState.tsx"},{"uid":"7052-50","name":"useTheme.tsx"},{"uid":"7052-56","name":"useThemeOptions.tsx"}]},{"name":"utils","children":[{"uid":"7052-44","name":"collection.ts"},{"uid":"7052-46","name":"dimensions.ts"},{"uid":"7052-48","name":"theme.ts"},{"uid":"7052-58","name":"attrs.ts"},{"uid":"7052-66","name":"styles.ts"}]},{"uid":"7052-52","name":"context.tsx"},{"name":"constants","children":[{"uid":"7052-54","name":"reservedKeys.ts"},{"uid":"7052-70","name":"defaultDimensions.ts"}]},{"name":"internal","children":[{"uid":"7052-60","name":"rocketstyleAttrsHoc.tsx"},{"uid":"7052-62","name":"localContext.tsx"},{"uid":"7052-64","name":"createProvider.tsx"}]},{"uid":"7052-68","name":"rocketstyle.tsx"},{"uid":"7052-72","name":"init.ts"},{"uid":"7052-74","name":"isRocketComponent.ts"},{"uid":"7052-76","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"7052-42":{"renderedLength":1721,"gzipLength":401,"brotliLength":0,"mainUid":"7052-41"},"7052-44":{"renderedLength":468,"gzipLength":280,"brotliLength":0,"mainUid":"7052-43"},"7052-46":{"renderedLength":1459,"gzipLength":537,"brotliLength":0,"mainUid":"7052-45"},"7052-48":{"renderedLength":2595,"gzipLength":838,"brotliLength":0,"mainUid":"7052-47"},"7052-50":{"renderedLength":537,"gzipLength":292,"brotliLength":0,"mainUid":"7052-49"},"7052-52":{"renderedLength":430,"gzipLength":245,"brotliLength":0,"mainUid":"7052-51"},"7052-54":{"renderedLength":566,"gzipLength":296,"brotliLength":0,"mainUid":"7052-53"},"7052-56":{"renderedLength":320,"gzipLength":199,"brotliLength":0,"mainUid":"7052-55"},"7052-58":{"renderedLength":2563,"gzipLength":870,"brotliLength":0,"mainUid":"7052-57"},"7052-60":{"renderedLength":983,"gzipLength":424,"brotliLength":0,"mainUid":"7052-59"},"7052-62":{"renderedLength":37,"gzipLength":51,"brotliLength":0,"mainUid":"7052-61"},"7052-64":{"renderedLength":780,"gzipLength":365,"brotliLength":0,"mainUid":"7052-63"},"7052-66":{"renderedLength":129,"gzipLength":112,"brotliLength":0,"mainUid":"7052-65"},"7052-68":{"renderedLength":11343,"gzipLength":2762,"brotliLength":0,"mainUid":"7052-67"},"7052-70":{"renderedLength":178,"gzipLength":128,"brotliLength":0,"mainUid":"7052-69"},"7052-72":{"renderedLength":1560,"gzipLength":573,"brotliLength":0,"mainUid":"7052-71"},"7052-74":{"renderedLength":204,"gzipLength":148,"brotliLength":0,"mainUid":"7052-73"},"7052-76":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"mainUid":"7052-75"}},"nodeMetas":{"7052-41":{"id":"/src/hooks/usePseudoState.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-42"},"imported":[{"uid":"7052-78"}],"importedBy":[{"uid":"7052-80"}]},"7052-43":{"id":"/src/utils/collection.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-44"},"imported":[],"importedBy":[{"uid":"7052-67"},{"uid":"7052-47"}]},"7052-45":{"id":"/src/utils/dimensions.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-46"},"imported":[{"uid":"7052-77"}],"importedBy":[{"uid":"7052-71"},{"uid":"7052-47"},{"uid":"7052-49"}]},"7052-47":{"id":"/src/utils/theme.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-48"},"imported":[{"uid":"7052-77"},{"uid":"7052-43"},{"uid":"7052-45"}],"importedBy":[{"uid":"7052-67"},{"uid":"7052-49"}]},"7052-49":{"id":"/src/hooks/useTheme.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-50"},"imported":[{"uid":"7052-77"},{"uid":"7052-47"},{"uid":"7052-45"}],"importedBy":[{"uid":"7052-80"}]},"7052-51":{"id":"/src/context.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-52"},"imported":[{"uid":"7052-78"},{"uid":"7052-77"}],"importedBy":[{"uid":"7052-75"},{"uid":"7052-55"}]},"7052-53":{"id":"/src/constants/reservedKeys.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-54"},"imported":[],"importedBy":[{"uid":"7052-71"},{"uid":"7052-67"},{"uid":"7052-55"}]},"7052-55":{"id":"/src/hooks/useThemeOptions.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-56"},"imported":[{"uid":"7052-78"},{"uid":"7052-51"},{"uid":"7052-53"}],"importedBy":[{"uid":"7052-80"}]},"7052-57":{"id":"/src/utils/attrs.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-58"},"imported":[{"uid":"7052-77"}],"importedBy":[{"uid":"7052-67"},{"uid":"7052-59"}]},"7052-59":{"id":"/src/internal/rocketstyleAttrsHoc.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-60"},"imported":[{"uid":"7052-78"},{"uid":"7052-77"},{"uid":"7052-57"},{"uid":"7052-80"}],"importedBy":[{"uid":"7052-81"}]},"7052-61":{"id":"/src/internal/localContext.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-62"},"imported":[{"uid":"7052-78"}],"importedBy":[{"uid":"7052-81"},{"uid":"7052-63"}]},"7052-63":{"id":"/src/internal/createProvider.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-64"},"imported":[{"uid":"7052-78"},{"uid":"7052-80"},{"uid":"7052-61"}],"importedBy":[{"uid":"7052-81"}]},"7052-65":{"id":"/src/utils/styles.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-66"},"imported":[],"importedBy":[{"uid":"7052-67"}]},"7052-67":{"id":"/src/rocketstyle.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-68"},"imported":[{"uid":"7052-78"},{"uid":"7052-79"},{"uid":"7052-77"},{"uid":"7052-80"},{"uid":"7052-81"},{"uid":"7052-47"},{"uid":"7052-65"},{"uid":"7052-43"},{"uid":"7052-57"},{"uid":"7052-53"}],"importedBy":[{"uid":"7052-71"}]},"7052-69":{"id":"/src/constants/defaultDimensions.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-70"},"imported":[],"importedBy":[{"uid":"7052-71"}]},"7052-71":{"id":"/src/init.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-72"},"imported":[{"uid":"7052-77"},{"uid":"7052-67"},{"uid":"7052-45"},{"uid":"7052-53"},{"uid":"7052-69"}],"importedBy":[{"uid":"7052-75"}]},"7052-73":{"id":"/src/isRocketComponent.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-74"},"imported":[],"importedBy":[{"uid":"7052-75"}]},"7052-75":{"id":"/src/index.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"7052-76"},"imported":[{"uid":"7052-71"},{"uid":"7052-51"},{"uid":"7052-73"}],"importedBy":[],"isEntry":true},"7052-77":{"id":"@vitus-labs/core","moduleParts":{},"imported":[],"importedBy":[{"uid":"7052-71"},{"uid":"7052-51"},{"uid":"7052-67"},{"uid":"7052-45"},{"uid":"7052-47"},{"uid":"7052-57"},{"uid":"7052-49"},{"uid":"7052-59"}],"isExternal":true},"7052-78":{"id":"react","moduleParts":{},"imported":[],"importedBy":[{"uid":"7052-51"},{"uid":"7052-67"},{"uid":"7052-41"},{"uid":"7052-55"},{"uid":"7052-59"},{"uid":"7052-63"},{"uid":"7052-61"}],"isExternal":true},"7052-79":{"id":"hoist-non-react-statics","moduleParts":{},"imported":[],"importedBy":[{"uid":"7052-67"}],"isExternal":true},"7052-80":{"id":"/src/hooks/index.ts","moduleParts":{},"imported":[{"uid":"7052-41"},{"uid":"7052-49"},{"uid":"7052-55"}],"importedBy":[{"uid":"7052-67"},{"uid":"7052-59"},{"uid":"7052-63"}]},"7052-81":{"id":"/src/internal/index.ts","moduleParts":{},"imported":[{"uid":"7052-59"},{"uid":"7052-63"},{"uid":"7052-61"}],"importedBy":[{"uid":"7052-67"}]}},"env":{"rollup":"2.70.1"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
6427
+ const data = {"version":2,"tree":{"name":"root","children":[{"name":"vitus-labs-rocketstyle.module.js","children":[{"name":"src","children":[{"name":"hooks","children":[{"uid":"1eec-42","name":"usePseudoState.tsx"},{"uid":"1eec-50","name":"useTheme.tsx"},{"uid":"1eec-56","name":"useThemeOptions.tsx"}]},{"name":"utils","children":[{"uid":"1eec-44","name":"collection.ts"},{"uid":"1eec-46","name":"dimensions.ts"},{"uid":"1eec-48","name":"theme.ts"},{"uid":"1eec-58","name":"attrs.ts"},{"uid":"1eec-66","name":"styles.ts"}]},{"uid":"1eec-52","name":"context.tsx"},{"name":"constants","children":[{"uid":"1eec-54","name":"reservedKeys.ts"},{"uid":"1eec-70","name":"defaultDimensions.ts"}]},{"name":"internal","children":[{"uid":"1eec-60","name":"rocketstyleAttrsHoc.tsx"},{"uid":"1eec-62","name":"localContext.tsx"},{"uid":"1eec-64","name":"createProvider.tsx"}]},{"uid":"1eec-68","name":"rocketstyle.tsx"},{"uid":"1eec-72","name":"init.ts"},{"uid":"1eec-74","name":"isRocketComponent.ts"},{"uid":"1eec-76","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"1eec-42":{"renderedLength":1721,"gzipLength":401,"brotliLength":0,"mainUid":"1eec-41"},"1eec-44":{"renderedLength":468,"gzipLength":280,"brotliLength":0,"mainUid":"1eec-43"},"1eec-46":{"renderedLength":1459,"gzipLength":537,"brotliLength":0,"mainUid":"1eec-45"},"1eec-48":{"renderedLength":2595,"gzipLength":838,"brotliLength":0,"mainUid":"1eec-47"},"1eec-50":{"renderedLength":537,"gzipLength":292,"brotliLength":0,"mainUid":"1eec-49"},"1eec-52":{"renderedLength":430,"gzipLength":245,"brotliLength":0,"mainUid":"1eec-51"},"1eec-54":{"renderedLength":566,"gzipLength":296,"brotliLength":0,"mainUid":"1eec-53"},"1eec-56":{"renderedLength":320,"gzipLength":199,"brotliLength":0,"mainUid":"1eec-55"},"1eec-58":{"renderedLength":2563,"gzipLength":870,"brotliLength":0,"mainUid":"1eec-57"},"1eec-60":{"renderedLength":983,"gzipLength":424,"brotliLength":0,"mainUid":"1eec-59"},"1eec-62":{"renderedLength":37,"gzipLength":51,"brotliLength":0,"mainUid":"1eec-61"},"1eec-64":{"renderedLength":780,"gzipLength":365,"brotliLength":0,"mainUid":"1eec-63"},"1eec-66":{"renderedLength":129,"gzipLength":112,"brotliLength":0,"mainUid":"1eec-65"},"1eec-68":{"renderedLength":11343,"gzipLength":2762,"brotliLength":0,"mainUid":"1eec-67"},"1eec-70":{"renderedLength":178,"gzipLength":128,"brotliLength":0,"mainUid":"1eec-69"},"1eec-72":{"renderedLength":1560,"gzipLength":573,"brotliLength":0,"mainUid":"1eec-71"},"1eec-74":{"renderedLength":288,"gzipLength":192,"brotliLength":0,"mainUid":"1eec-73"},"1eec-76":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"mainUid":"1eec-75"}},"nodeMetas":{"1eec-41":{"id":"/src/hooks/usePseudoState.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-42"},"imported":[{"uid":"1eec-78"}],"importedBy":[{"uid":"1eec-80"}]},"1eec-43":{"id":"/src/utils/collection.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-44"},"imported":[],"importedBy":[{"uid":"1eec-67"},{"uid":"1eec-47"}]},"1eec-45":{"id":"/src/utils/dimensions.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-46"},"imported":[{"uid":"1eec-77"}],"importedBy":[{"uid":"1eec-71"},{"uid":"1eec-47"},{"uid":"1eec-49"}]},"1eec-47":{"id":"/src/utils/theme.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-48"},"imported":[{"uid":"1eec-77"},{"uid":"1eec-43"},{"uid":"1eec-45"}],"importedBy":[{"uid":"1eec-67"},{"uid":"1eec-49"}]},"1eec-49":{"id":"/src/hooks/useTheme.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-50"},"imported":[{"uid":"1eec-77"},{"uid":"1eec-47"},{"uid":"1eec-45"}],"importedBy":[{"uid":"1eec-80"}]},"1eec-51":{"id":"/src/context.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-52"},"imported":[{"uid":"1eec-78"},{"uid":"1eec-77"}],"importedBy":[{"uid":"1eec-75"},{"uid":"1eec-55"}]},"1eec-53":{"id":"/src/constants/reservedKeys.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-54"},"imported":[],"importedBy":[{"uid":"1eec-71"},{"uid":"1eec-67"},{"uid":"1eec-55"}]},"1eec-55":{"id":"/src/hooks/useThemeOptions.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-56"},"imported":[{"uid":"1eec-78"},{"uid":"1eec-51"},{"uid":"1eec-53"}],"importedBy":[{"uid":"1eec-80"}]},"1eec-57":{"id":"/src/utils/attrs.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-58"},"imported":[{"uid":"1eec-77"}],"importedBy":[{"uid":"1eec-67"},{"uid":"1eec-59"}]},"1eec-59":{"id":"/src/internal/rocketstyleAttrsHoc.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-60"},"imported":[{"uid":"1eec-78"},{"uid":"1eec-77"},{"uid":"1eec-57"},{"uid":"1eec-80"}],"importedBy":[{"uid":"1eec-81"}]},"1eec-61":{"id":"/src/internal/localContext.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-62"},"imported":[{"uid":"1eec-78"}],"importedBy":[{"uid":"1eec-81"},{"uid":"1eec-63"}]},"1eec-63":{"id":"/src/internal/createProvider.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-64"},"imported":[{"uid":"1eec-78"},{"uid":"1eec-80"},{"uid":"1eec-61"}],"importedBy":[{"uid":"1eec-81"}]},"1eec-65":{"id":"/src/utils/styles.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-66"},"imported":[],"importedBy":[{"uid":"1eec-67"}]},"1eec-67":{"id":"/src/rocketstyle.tsx","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-68"},"imported":[{"uid":"1eec-78"},{"uid":"1eec-79"},{"uid":"1eec-77"},{"uid":"1eec-80"},{"uid":"1eec-81"},{"uid":"1eec-47"},{"uid":"1eec-65"},{"uid":"1eec-43"},{"uid":"1eec-57"},{"uid":"1eec-53"}],"importedBy":[{"uid":"1eec-71"}]},"1eec-69":{"id":"/src/constants/defaultDimensions.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-70"},"imported":[],"importedBy":[{"uid":"1eec-71"}]},"1eec-71":{"id":"/src/init.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-72"},"imported":[{"uid":"1eec-77"},{"uid":"1eec-67"},{"uid":"1eec-45"},{"uid":"1eec-53"},{"uid":"1eec-69"}],"importedBy":[{"uid":"1eec-75"}]},"1eec-73":{"id":"/src/isRocketComponent.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-74"},"imported":[],"importedBy":[{"uid":"1eec-75"}]},"1eec-75":{"id":"/src/index.ts","moduleParts":{"vitus-labs-rocketstyle.module.js":"1eec-76"},"imported":[{"uid":"1eec-71"},{"uid":"1eec-51"},{"uid":"1eec-73"}],"importedBy":[],"isEntry":true},"1eec-77":{"id":"@vitus-labs/core","moduleParts":{},"imported":[],"importedBy":[{"uid":"1eec-71"},{"uid":"1eec-51"},{"uid":"1eec-67"},{"uid":"1eec-45"},{"uid":"1eec-47"},{"uid":"1eec-57"},{"uid":"1eec-49"},{"uid":"1eec-59"}],"isExternal":true},"1eec-78":{"id":"react","moduleParts":{},"imported":[],"importedBy":[{"uid":"1eec-51"},{"uid":"1eec-67"},{"uid":"1eec-41"},{"uid":"1eec-55"},{"uid":"1eec-59"},{"uid":"1eec-63"},{"uid":"1eec-61"}],"isExternal":true},"1eec-79":{"id":"hoist-non-react-statics","moduleParts":{},"imported":[],"importedBy":[{"uid":"1eec-67"}],"isExternal":true},"1eec-80":{"id":"/src/hooks/index.ts","moduleParts":{},"imported":[{"uid":"1eec-41"},{"uid":"1eec-49"},{"uid":"1eec-55"}],"importedBy":[{"uid":"1eec-67"},{"uid":"1eec-59"},{"uid":"1eec-63"}]},"1eec-81":{"id":"/src/internal/index.ts","moduleParts":{},"imported":[{"uid":"1eec-59"},{"uid":"1eec-63"},{"uid":"1eec-61"}],"importedBy":[{"uid":"1eec-67"}]}},"env":{"rollup":"2.70.1"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
6428
6428
 
6429
6429
  const run = () => {
6430
6430
  const width = window.innerWidth;
package/lib/index.d.ts CHANGED
@@ -272,7 +272,7 @@ declare type TProvider = {
272
272
  };
273
273
  declare const Provider: FC<TProvider>;
274
274
 
275
- declare type IsRocketComponent = (component: any) => boolean;
275
+ declare type IsRocketComponent = <T>(component: T) => T extends RocketComponentType ? true : false;
276
276
  declare const isRocketComponent: IsRocketComponent;
277
277
 
278
- export { AttrsCb, ComposeParam, ConfigAttrs, ConsumerCb, ConsumerCtxCBValue, ConsumerCtxCb, DefaultProps, DimensionCallbackParam, DimensionProps, DimensionValue, Dimensions, ElementType, ExtractDimensionProps, ExtractDimensions, ExtractProps, GenericHoc, IRocketComponent, MergeTypes, Provider, RocketComponent, RocketComponentType, RocketProviderState, Rocketstyle, StylesCb, StylesDefault, TDKP, TObj, TProvider, ThemeCb, ThemeDefault, ThemeModeKeys, rocketstyle as default, isRocketComponent };
278
+ export { AttrsCb, ComposeParam, ConfigAttrs, ConsumerCb, ConsumerCtxCBValue, ConsumerCtxCb, DefaultProps, DimensionCallbackParam, DimensionProps, DimensionValue, Dimensions, ElementType, ExtractDimensionProps, ExtractDimensions, ExtractProps, GenericHoc, IRocketComponent, IsRocketComponent, MergeTypes, Provider, RocketComponent, RocketComponentType, RocketProviderState, Rocketstyle, StylesCb, StylesDefault, TDKP, TObj, TProvider, ThemeCb, ThemeDefault, ThemeModeKeys, rocketstyle as default, isRocketComponent };
@@ -1,6 +1,6 @@
1
1
  import rocketstyle, { Rocketstyle } from "./init";
2
2
  import Provider, { context, TProvider } from "./context";
3
- import isRocketComponent from "./isRocketComponent";
3
+ import isRocketComponent, { IsRocketComponent } from "./isRocketComponent";
4
4
  import type { ConfigAttrs, RocketComponentType, RocketProviderState, ConsumerCtxCBValue, ConsumerCtxCb, ConsumerCb } from "./types/config";
5
5
  import type { TObj, ElementType, MergeTypes, ExtractProps } from "./types/utils";
6
6
  import type { Dimensions, DimensionValue, DimensionCallbackParam, ExtractDimensionProps, TDKP, DimensionProps, ExtractDimensions } from "./types/dimensions";
@@ -10,6 +10,6 @@ import type { ThemeCb, ThemeModeKeys, ThemeDefault } from "./types/theme";
10
10
  import type { GenericHoc, ComposeParam } from "./types/hoc";
11
11
  import type { DefaultProps } from "./types/configuration";
12
12
  import type { RocketComponent, IRocketComponent } from "./types/rocketstyle";
13
- export type { StylesDefault, ThemeDefault, RocketComponent, IRocketComponent, Rocketstyle, TProvider, RocketComponentType, RocketProviderState, ConsumerCtxCBValue, ConsumerCtxCb, ConsumerCb, TObj, ElementType, MergeTypes, ExtractProps, Dimensions, DimensionValue, DimensionCallbackParam, ExtractDimensionProps, TDKP, DimensionProps, ExtractDimensions, StylesCb, ConfigAttrs, AttrsCb, ThemeCb, ThemeModeKeys, GenericHoc, ComposeParam, DefaultProps, };
13
+ export type { StylesDefault, ThemeDefault, RocketComponent, IRocketComponent, Rocketstyle, TProvider, RocketComponentType, RocketProviderState, ConsumerCtxCBValue, ConsumerCtxCb, ConsumerCb, TObj, ElementType, MergeTypes, ExtractProps, Dimensions, DimensionValue, DimensionCallbackParam, ExtractDimensionProps, TDKP, DimensionProps, ExtractDimensions, StylesCb, ConfigAttrs, AttrsCb, ThemeCb, ThemeModeKeys, GenericHoc, ComposeParam, DefaultProps, IsRocketComponent, };
14
14
  export { context, Provider, isRocketComponent };
15
15
  export default rocketstyle;
@@ -1,3 +1,4 @@
1
- declare type IsRocketComponent = (component: any) => boolean;
1
+ import type { RocketComponentType } from "./types/config";
2
+ export declare type IsRocketComponent = <T>(component: T) => T extends RocketComponentType ? true : false;
2
3
  declare const isRocketComponent: IsRocketComponent;
3
4
  export default isRocketComponent;
@@ -659,9 +659,11 @@ const rocketstyle = () => ({ dimensions = DEFAULT_DIMENSIONS, useBooleans = true
659
659
  };
660
660
 
661
661
  const isRocketComponent = (component) => {
662
- if (typeof component === 'object' &&
662
+ if (component &&
663
+ typeof component === 'object' &&
663
664
  component !== null &&
664
- component.IS_ROCKETSTYLE) {
665
+ // eslint-disable-next-line dot-notation
666
+ component['IS_ROCKETSTYLE'] === true) {
665
667
  return true;
666
668
  }
667
669
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"vitus-labs-rocketstyle.js","sources":["../src/hooks/usePseudoState.tsx","../src/utils/collection.ts","../src/utils/dimensions.ts","../src/utils/theme.ts","../src/hooks/useTheme.tsx","../src/context.tsx","../src/constants/reservedKeys.ts","../src/hooks/useThemeOptions.tsx","../src/utils/attrs.ts","../src/internal/rocketstyleAttrsHoc.tsx","../src/internal/localContext.tsx","../src/internal/createProvider.tsx","../src/utils/styles.ts","../src/rocketstyle.tsx","../src/constants/defaultDimensions.ts","../src/init.ts","../src/isRocketComponent.ts"],"sourcesContent":["import {\n useState,\n useCallback,\n MouseEvent,\n FocusEvent,\n SyntheticEvent,\n} from 'react'\nimport type { PseudoActions, PseudoState } from '~/types/pseudo'\n\ntype State = Omit<PseudoState, 'active'>\n\ntype UsePseudoState = ({\n onMouseEnter,\n onMouseLeave,\n onMouseDown,\n onMouseUp,\n onFocus,\n onBlur,\n}: Partial<PseudoActions>) => { state: State; events: PseudoActions }\n\nconst handleEvent = (e: SyntheticEvent) => {\n e.preventDefault()\n e.stopPropagation()\n}\n\nconst usePseudoState: UsePseudoState = (props) => {\n const [hover, setHover] = useState(false)\n const [focus, setFocus] = useState(false)\n const [pressed, setPressed] = useState(false)\n\n const onMouseEnter = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setHover(true)\n if (props.onMouseEnter) props.onMouseEnter(e)\n },\n [props.onMouseEnter]\n )\n\n const onMouseLeave = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setHover(false)\n setPressed(false)\n if (props.onMouseLeave) props.onMouseLeave(e)\n },\n [props.onMouseLeave]\n )\n\n const onMouseDown = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setPressed(true)\n if (props.onMouseDown) props.onMouseDown(e)\n },\n [props.onMouseDown]\n )\n\n const onMouseUp = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setPressed(false)\n if (props.onMouseUp) props.onMouseUp(e)\n },\n [props.onMouseUp]\n )\n\n const onFocus = useCallback(\n (e: FocusEvent) => {\n handleEvent(e)\n setFocus(true)\n if (props.onFocus) props.onFocus(e)\n },\n [props.onFocus]\n )\n\n const onBlur = useCallback(\n (e: FocusEvent) => {\n handleEvent(e)\n setFocus(false)\n if (props.onBlur) props.onBlur(e)\n },\n [props.onBlur]\n )\n\n return {\n state: {\n hover,\n focus,\n pressed,\n },\n events: {\n onMouseEnter,\n onMouseLeave,\n onMouseDown,\n onMouseUp,\n onFocus,\n onBlur,\n },\n }\n}\n\nexport default usePseudoState\n","/* eslint-disable import/prefer-default-export */\n\n// --------------------------------------------------------\n// chain options\n// --------------------------------------------------------\ntype ChanOptions = (\n opts: Record<string, unknown> | ((...args: any) => Record<string, unknown>),\n defaultOpts: any[]\n) => any[]\n\nexport const chainOptions: ChanOptions = (opts, defaultOpts = []) => {\n const result = [...defaultOpts]\n\n if (typeof opts === 'function') result.push(opts)\n else if (typeof opts === 'object') result.push(() => opts)\n\n return result\n}\n\n// --------------------------------------------------------\n// remove empty values\n// --------------------------------------------------------\ntype RemoveNullableValues = (obj: Record<string, any>) => Record<string, any>\nexport const removeNullableValues: RemoveNullableValues = (obj) =>\n Object.entries(obj)\n .filter(([, v]) => v != null && v !== false)\n .reduce((acc, [k, v]) => ({ ...acc, [k]: v }), {})\n\n// --------------------------------------------------------\n// remove empty values recursively\n// --------------------------------------------------------\ntype RemoveAllEmptyValues = (obj: Record<string, any>) => Record<string, any>\nexport const removeAllEmptyValues: RemoveAllEmptyValues = (obj) =>\n Object.entries(obj)\n .filter(([, v]) => v != null)\n .reduce(\n (acc, [k, v]) => ({\n ...acc,\n [k]: typeof v === 'object' ? removeAllEmptyValues(v) : v,\n }),\n {}\n )\n","import { get, isEmpty, set } from '@vitus-labs/core'\nimport { Dimensions, DimensionValue, MultiKeys } from '~/types/dimensions'\n\n// --------------------------------------------------------\n// is value milti key\n// --------------------------------------------------------\ntype IsValidKey = (value: any) => boolean\nexport const isValidKey: IsValidKey = (value) =>\n value !== undefined && value !== null && value !== false\n\n// --------------------------------------------------------\n// is value milti key\n// --------------------------------------------------------\ntype IsMultiKey = (value: any) => [boolean, string]\nexport const isMultiKey: IsMultiKey = (value) => {\n if (typeof value === 'object') return [true, get(value, 'propName')]\n return [false, value]\n}\n\n// --------------------------------------------------------\n// calculate dimensions map\n// --------------------------------------------------------\ntype CalculateDimensionsMap = ({\n themes,\n useBooleans,\n}: {\n themes: Record<string, any>\n useBooleans: boolean\n}) => { keysMap: Record<string, any>; keywords: Record<string, any> }\n\nexport const calculateDimensionsMap: CalculateDimensionsMap = ({\n themes,\n useBooleans,\n}) => {\n const result = { keysMap: {}, keywords: {} }\n if (isEmpty(themes)) return result\n\n return Object.entries(themes).reduce((accumulator, [key, value]) => {\n const { keysMap, keywords } = accumulator\n keywords[key] = true\n\n Object.entries(value as any).forEach(([itemKey, itemValue]) => {\n if (!isValidKey(itemValue)) return\n\n if (useBooleans) {\n keywords[itemKey] = true\n }\n\n set(keysMap, [key, itemKey], true)\n })\n\n return accumulator\n }, result)\n}\n\n// --------------------------------------------------------\n// simple object getters\n// --------------------------------------------------------\ntype GetKeys = <T extends Record<string, unknown>>(obj: T) => Array<keyof T>\nexport const getKeys: GetKeys = (obj) => Object.keys(obj)\n\ntype GetValues = <T extends Record<string, unknown>, K extends keyof T>(\n obj: T\n) => T[K][]\nexport const getValues: GetValues = (obj) => Object.values(obj) as any\n\n// --------------------------------------------------------\n// get dimensions values array\n// --------------------------------------------------------\ntype ValueType<T> = T extends string ? T : Array<T>[0]\ntype GetDimensionsValues = <T extends Dimensions, K extends keyof T>(\n obj: T\n) => ValueType<T[K]>[]\n\nexport const getDimensionsValues: GetDimensionsValues = (obj) =>\n getValues(obj).map((item: DimensionValue) => {\n if (typeof item === 'object') {\n return item.propName as any\n }\n\n return item\n })\n\n// --------------------------------------------------------\n// get multiple dimensions map\n// --------------------------------------------------------\ntype GetMultipleDimensions = <T extends Dimensions>(obj: T) => MultiKeys<T>\n\nexport const getMultipleDimensions: GetMultipleDimensions = (obj) =>\n getValues(obj).reduce((accumulator, value: DimensionValue) => {\n if (typeof value === 'object') {\n // eslint-disable-next-line no-param-reassign\n if (value.multi === true) accumulator[value.propName] = true\n }\n\n return accumulator\n }, {})\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { config, isEmpty, merge } from '@vitus-labs/core'\nimport { ThemeMode } from '~/types/theme'\nimport { removeNullableValues } from './collection'\nimport { isMultiKey } from './dimensions'\n\n// --------------------------------------------------------\n// theme mode callback\n// --------------------------------------------------------\nexport const themeModeCb: ThemeMode =\n (...params) =>\n (mode) => {\n if (!mode || mode === 'light') return params[0]\n return params[1]\n }\n\n// --------------------------------------------------------\n// calculate dimension themes\n// --------------------------------------------------------\ntype CalculateDimensionThemes = (\n theme: Record<string, any>,\n options: Record<string, any>,\n cb: any\n) => Record<string, any>\n\nexport const calculateDimensionThemes: CalculateDimensionThemes = (\n theme,\n options,\n cb\n) => {\n const result = {}\n\n if (isEmpty(options.dimensions)) return result\n\n return Object.entries(options.dimensions).reduce(\n (accumulator, [key, value]) => {\n const [, dimension] = isMultiKey(value)\n\n const helper = options[key]\n\n if (Array.isArray(helper) && helper.length > 0) {\n const finalDimensionThemes = calculateChainOptions(helper, [\n theme,\n cb,\n config.css,\n ])\n\n // eslint-disable-next-line no-param-reassign\n accumulator[dimension] = removeNullableValues(finalDimensionThemes)\n }\n\n return accumulator\n },\n result\n )\n}\n\n// --------------------------------------------------------\n// combine values\n// --------------------------------------------------------\ntype OptionFunc<A> = (...arg: Array<A>) => Record<string, unknown>\ntype CalculateChainOptions = <A>(\n options: Array<OptionFunc<A>> | undefined | null,\n args: Array<A>\n) => ReturnType<OptionFunc<A>>\n\nexport const calculateChainOptions: CalculateChainOptions = (options, args) => {\n const result = {}\n if (isEmpty(options)) return result\n\n return options.reduce((acc, item) => merge(acc, item(...args)), result)\n\n // using this does not allow overriding themes properly\n // return removeAllEmptyValues(helper)\n}\n\n// --------------------------------------------------------\n// generate theme\n// --------------------------------------------------------\nexport type CalculateTheme = <\n P extends Record<string, unknown>,\n T extends Record<string, unknown>,\n B extends Record<string, unknown>\n>({\n rocketstate,\n themes,\n baseTheme,\n}: {\n rocketstate: P\n themes: T\n baseTheme: B\n}) => B & Record<string, unknown>\n\nexport const calculateTheme: CalculateTheme = ({\n rocketstate,\n themes,\n baseTheme,\n}) => {\n // generate final theme which will be passed to styled component\n let finalTheme = { ...baseTheme }\n\n Object.entries(rocketstate).forEach(\n ([key, value]: [string, string | Array<string>]) => {\n const keyTheme = themes[key]\n\n if (Array.isArray(value)) {\n value.forEach((item) => {\n finalTheme = merge({}, finalTheme, keyTheme[item])\n })\n } else {\n finalTheme = merge({}, finalTheme, keyTheme[value])\n }\n }\n )\n\n return finalTheme\n}\n\n// --------------------------------------------------------\n// generate theme\n// --------------------------------------------------------\nexport type CalculateThemeMode = (\n themes: Record<string, any>,\n variant: 'light' | 'dark'\n) => Partial<{\n baseTheme: Record<string, unknown>\n themes: Record<string, unknown>\n}>\n\nexport const calculateThemeMode: CalculateThemeMode = (themes, variant) => {\n const callback = themeModeCb().toString()\n const isModeCallback = (value) => value.toString() === callback\n\n const result = {}\n Object.entries(themes).forEach(([key, value]) => {\n if (typeof value === 'object' && value !== null) {\n result[key] = calculateThemeMode(value, variant)\n } else if (typeof value === 'function' && isModeCallback(value)) {\n result[key] = value(variant)\n } else {\n result[key] = value\n }\n })\n\n return result\n}\n","import { config } from '@vitus-labs/core'\nimport { calculateChainOptions, calculateDimensionThemes } from '~/utils/theme'\nimport { calculateDimensionsMap } from '~/utils/dimensions'\nimport type { Configuration, __ROCKETSTYLE__ } from '~/types/configuration'\nimport type { ThemeMode } from '~/types/theme'\n\ntype UseTheme = <T extends Record<string, unknown>>({\n theme,\n options,\n cb,\n}: {\n theme: T\n options: Configuration\n cb: ThemeMode\n}) => __ROCKETSTYLE__\n\nconst useTheme: UseTheme = ({ theme, options, cb }) => {\n const themes = calculateDimensionThemes(theme, options, cb)\n const { keysMap, keywords } = calculateDimensionsMap({\n themes,\n useBooleans: options.useBooleans,\n })\n\n // eslint-disable-next-line no-underscore-dangle\n const __ROCKETSTYLE__ = {\n dimensions: keysMap,\n reservedPropNames: keywords,\n baseTheme: calculateChainOptions(options.theme, [theme, cb, config.css]),\n themes,\n }\n\n return __ROCKETSTYLE__\n}\n\nexport default useTheme\n","import React, { useContext, ReactNode, FC, ComponentType } from 'react'\nimport { Provider as CoreProvider, context } from '@vitus-labs/core'\n\ntype Theme = {\n rootSize: number\n breakpoints?: Record<string, number>\n __VITUS_LABS__?: never\n} & Record<string, unknown>\n\nexport type TProvider = {\n children: ReactNode\n theme?: Theme\n mode?: 'light' | 'dark'\n inversed?: boolean\n provider?: ComponentType<any>\n}\n\nconst Provider: FC<TProvider> = ({ provider = CoreProvider, ...props }) => {\n const ctx = useContext<TProvider>(context as any)\n\n const {\n theme,\n mode,\n inversed,\n provider: RocketstyleProvider,\n children,\n } = { ...props, ...ctx, provider }\n\n const isDark = inversed ? mode !== 'dark' : mode === 'dark'\n\n return (\n <RocketstyleProvider\n mode={mode}\n isDark={isDark}\n isLight={!isDark}\n theme={theme}\n provider={provider}\n >\n {children}\n </RocketstyleProvider>\n )\n}\n\nexport { context }\n\nexport default Provider\n","export const PSEUDO_KEYS = ['hover', 'active', 'focus', 'pressed'] as const\n\nexport const THEME_MODES = {\n light: true,\n dark: true,\n} as const\n\nexport const THEME_MODES_INVERSED = {\n dark: 'light',\n light: 'dark',\n} as const\n\nexport const CONFIG_KEYS = [\n 'provider',\n 'consumer',\n 'DEBUG',\n 'name',\n 'component',\n 'inversed',\n 'passProps',\n 'styled',\n] as const\n\nexport const STYLING_KEYS = ['theme', 'attrs', 'styles'] as const\nexport const STATIC_KEYS = [...STYLING_KEYS, 'compose'] as const\n\nexport const ALL_RESERVED_KEYS = [\n ...Object.keys(THEME_MODES),\n ...CONFIG_KEYS,\n ...STATIC_KEYS,\n] as const\n","import { useContext } from 'react'\nimport { context } from '~/context'\nimport { THEME_MODES_INVERSED } from '~/constants/reservedKeys'\nimport { ThemeModeKeys } from '~/types/theme'\n\ntype UseThemeOptions = ({ inversed }: { inversed?: boolean }) => {\n theme: Record<string, unknown>\n mode: ThemeModeKeys\n isDark: boolean\n isLight: boolean\n}\n\nconst useThemeOptions: UseThemeOptions = ({ inversed }) => {\n const { theme, mode: ctxMode, isDark: ctxDark } = useContext(context) as any\n const mode = inversed ? THEME_MODES_INVERSED[ctxMode] : ctxMode\n const isDark = inversed ? !ctxDark : ctxDark\n const isLight = !isDark\n\n return { theme, mode, isDark, isLight }\n}\n\nexport default useThemeOptions\n","import { isEmpty } from '@vitus-labs/core'\nimport { MultiKeys } from '~/types/dimensions'\n\n// --------------------------------------------------------\n// pick styled props\n// --------------------------------------------------------\ntype PickStyledProps = (\n props: Record<string, unknown>,\n keywords: Record<string, true>\n) => Partial<typeof props>\nexport const pickStyledProps: PickStyledProps = (props, keywords) => {\n const result = {} as any\n\n Object.entries(props).forEach(([key, value]) => {\n if (keywords[key]) result[key] = value\n })\n\n return result\n}\n\n// --------------------------------------------------------\n// combine values\n// --------------------------------------------------------\ntype OptionFunc<A> = (...arg: Array<A>) => Record<string, unknown>\ntype CalculateChainOptions = <A>(\n options?: Array<OptionFunc<A>>\n) => (args: Array<A>) => ReturnType<OptionFunc<A>>\n\nexport const calculateChainOptions: CalculateChainOptions =\n (options) => (args) => {\n const result = {}\n if (isEmpty(options)) return result\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return options.reduce(\n (acc, item) => Object.assign(acc, item(...args)),\n result\n )\n }\n\n// --------------------------------------------------------\n// get style attributes\n// --------------------------------------------------------\ntype CalculateStylingAttrs = ({\n useBooleans,\n multiKeys,\n}: {\n useBooleans?: boolean\n multiKeys?: MultiKeys\n}) => ({\n props,\n dimensions,\n}: {\n props: Record<string, unknown>\n dimensions: Record<string, unknown>\n}) => any\nexport const calculateStylingAttrs: CalculateStylingAttrs =\n ({ useBooleans, multiKeys }) =>\n ({ props, dimensions }) => {\n const result = {}\n\n // (1) find dimension keys values & initialize\n // object with possible options\n Object.keys(dimensions).forEach((item) => {\n const pickedProp = props[item]\n const valueTypes = ['number', 'string']\n\n // if the property is mutli key, allow assign array as well\n if (multiKeys && multiKeys[item] && Array.isArray(pickedProp)) {\n result[item] = pickedProp\n }\n // assign when it's only a string or number otherwise it's considered\n // as invalid param\n else if (valueTypes.includes(typeof pickedProp)) {\n result[item] = pickedProp\n } else {\n result[item] = undefined\n }\n })\n\n // (2) if booleans are being used let's find the rest\n if (useBooleans) {\n const propsKeys = Object.keys(props).reverse()\n\n Object.entries(result).forEach(([key, value]) => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const isMultiKey = multiKeys[key]\n\n // when value in result is not assigned yet\n if (!value) {\n let newDimensionValue\n const keywords = Object.keys(dimensions[key] as any)\n\n if (isMultiKey) {\n newDimensionValue = propsKeys.filter((key) =>\n keywords.includes(key)\n )\n } else {\n // reverse props to guarantee the last one will have\n // a priority over previous ones\n newDimensionValue = propsKeys.find((key) => {\n if (keywords.includes(key) && props[key]) return key\n return false\n })\n }\n\n result[key] = newDimensionValue\n }\n })\n }\n\n return result\n }\n","/* eslint-disable no-underscore-dangle */\nimport React, {\n forwardRef,\n ForwardRefExoticComponent,\n ComponentType,\n} from 'react'\nimport { renderContent } from '@vitus-labs/core'\nimport { calculateChainOptions } from '~/utils/attrs'\nimport { useThemeOptions } from '~/hooks'\n\nimport type { OptionFunc } from '~/types/configuration'\n\nexport type RocketStyleHOC = ({\n inversed,\n attrs,\n}: {\n inversed?: boolean\n attrs?: Array<OptionFunc>\n}) => (WrappedComponent: ComponentType) => ForwardRefExoticComponent<any>\n\nconst rocketStyleHOC: RocketStyleHOC = ({ inversed, attrs }) => {\n // --------------------------------------------------\n // .attrs(...)\n // first we need to calculate final props which are\n // being returned by using `attr` chaining method\n // --------------------------------------------------\n const _calculateChainOptions = calculateChainOptions(attrs)\n\n const Enhanced = (WrappedComponent) =>\n forwardRef<any, any>((props, ref) => {\n const { theme, mode, isDark, isLight } = useThemeOptions({\n inversed,\n })\n\n const calculatedAttrs = _calculateChainOptions([\n props,\n theme,\n {\n renderContent,\n mode,\n isDark,\n isLight,\n },\n ])\n\n return (\n <WrappedComponent\n $rocketstyleRef={ref}\n {...calculatedAttrs}\n {...props}\n />\n )\n })\n\n return Enhanced\n}\n\nexport default rocketStyleHOC\n","import { createContext } from 'react'\nimport type { PseudoState } from '~/types/pseudo'\n\ntype TContext = Partial<\n {\n pseudo: PseudoState\n } & Record<string, unknown>\n>\n\nexport default createContext<TContext>({})\n","import React, { forwardRef, useMemo } from 'react'\nimport { usePseudoState } from '~/hooks'\nimport LocalContext from './localContext'\n\nconst RocketStyleProviderComponent = (WrappedComponent) =>\n forwardRef<any, any>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n onMouseUp,\n onMouseDown,\n onFocus,\n onBlur,\n $rocketstate,\n ...props\n },\n ref\n ) => {\n // pseudo hook to detect states hover / pressed / focus\n const pseudo = usePseudoState({\n onMouseEnter,\n onMouseLeave,\n onMouseUp,\n onMouseDown,\n onFocus,\n onBlur,\n })\n\n const updatedState = useMemo(\n () => ({\n ...$rocketstate,\n pseudo: { ...$rocketstate.pseudo, ...pseudo.state },\n }),\n [$rocketstate, pseudo]\n )\n\n return (\n <LocalContext.Provider value={updatedState}>\n <WrappedComponent\n {...props}\n {...pseudo.events}\n ref={ref}\n $rocketstate={updatedState}\n />\n </LocalContext.Provider>\n )\n }\n )\n\nexport default RocketStyleProviderComponent\n","/* eslint-disable import/prefer-default-export */\nimport type { StylesCbArray, Css } from '~/types/styles'\n\n// --------------------------------------------------------\n// calculate styles\n// --------------------------------------------------------\ntype CalculateStyles = <S extends StylesCbArray | undefined, C extends Css>(\n styles: S,\n css: C\n) => Array<ReturnType<StylesCbArray[number]>>\n\nexport const calculateStyles: CalculateStyles = (styles, css) => {\n if (!styles) return []\n\n return styles.map((item) => item(css))\n}\n","/* eslint-disable no-underscore-dangle */\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport React, {\n useMemo,\n forwardRef,\n useContext,\n useImperativeHandle,\n useRef,\n} from 'react'\nimport hoistNonReactStatics from 'hoist-non-react-statics'\nimport {\n config,\n omit,\n pick,\n compose,\n renderContent,\n isEmpty,\n} from '@vitus-labs/core'\nimport { useTheme, useThemeOptions } from '~/hooks'\nimport { localContext, createProvider, rocketstyleAttrsHoc } from '~/internal'\nimport { calculateTheme, calculateThemeMode, themeModeCb } from '~/utils/theme'\nimport { calculateStyles } from '~/utils/styles'\nimport { chainOptions } from '~/utils/collection'\nimport {\n pickStyledProps,\n calculateStylingAttrs,\n calculateChainOptions,\n} from '~/utils/attrs'\nimport {\n PSEUDO_KEYS,\n CONFIG_KEYS,\n STYLING_KEYS,\n STATIC_KEYS,\n} from '~/constants/reservedKeys'\n\nimport type { RocketComponent } from '~/types/rocketstyle'\nimport type { Configuration } from '~/types/configuration'\nimport type { StyleComponent } from '~/types/styleComponent'\n\n// --------------------------------------------------------\n// styledComponent helpers for chaining attributes\n// --------------------------------------------------------\ntype OrOptions = (\n keys: Readonly<Array<string>>,\n opts: Record<string, unknown>,\n defaultOpts: Record<string, unknown>\n) => Record<string, unknown>\n\nconst orOptions: OrOptions = (keys, opts, defaultOpts) =>\n keys.reduce(\n (acc, item) => ({ ...acc, [item]: opts[item] || defaultOpts[item] }),\n {}\n )\n\nconst chainReservedOptions = (keys, opts, defaultOpts) =>\n keys.reduce(\n (acc, item) => ({\n ...acc,\n [item]: chainOptions(opts[item], defaultOpts[item]),\n }),\n {}\n )\n\n// --------------------------------------------------------\n// helpers for create statics chainin methods on component\n// --------------------------------------------------------\nconst createStaticsChainingEnhancers = ({\n context,\n dimensionKeys,\n func,\n opts,\n}) => {\n dimensionKeys.forEach((item) => {\n // eslint-disable-next-line no-param-reassign\n context[item] = (props) => func({ [item]: props }, opts)\n })\n}\n\n// --------------------------------------------------------\n// helpers for create statics on component\n// --------------------------------------------------------\nconst createStaticsEnhancers = ({ context, opts }) => {\n if (!isEmpty(opts)) {\n Object.assign(context, opts)\n }\n}\n\n// --------------------------------------------------------\n// cloneAndEnhance\n// helper function which allows function chaining\n// always returns styleComponent with static functions\n// assigned\n// --------------------------------------------------------\ntype CloneAndEnhance = <A extends Configuration, B extends Configuration>(\n opts: A,\n defaultOpts: B\n) => ReturnType<typeof styleComponent>\n\nconst cloneAndEnhance: CloneAndEnhance = (opts, defaultOpts) =>\n styleComponent({\n ...defaultOpts,\n statics: { ...defaultOpts.statics, ...opts.statics },\n compose: { ...defaultOpts.compose, ...opts.compose },\n ...orOptions(CONFIG_KEYS, opts, defaultOpts),\n ...chainReservedOptions(\n [...defaultOpts.dimensionKeys, ...STYLING_KEYS],\n opts,\n defaultOpts\n ),\n })\n\n// --------------------------------------------------------\n// styleComponent\n// helper function which allows function chaining\n// always returns a valid React component with static functions\n// assigned, so it can be even rendered as a valid component\n// or styles can be extended via its statics\n// --------------------------------------------------------\nconst styleComponent: StyleComponent<any> = (options) => {\n const { component, styles } = options\n const { styled } = config\n\n // const _calculateChainOptions = calculateChainOptions(options.attrs)\n const _calculateStylingAttrs = calculateStylingAttrs({\n multiKeys: options.multiKeys,\n useBooleans: options.useBooleans,\n })\n\n const componentName =\n options.name || options.component.displayName || options.component.name\n\n // create styled component with all options.styles if available\n const STYLED_COMPONENT =\n component.IS_ROCKETSTYLE || options.styled === false\n ? component\n : styled(component)`\n ${calculateStyles(styles, config.css)};\n `\n\n // --------------------------------------------------------\n // final component to be rendered\n // --------------------------------------------------------\n const RenderComponent = options.provider\n ? createProvider(STYLED_COMPONENT)\n : STYLED_COMPONENT\n\n // --------------------------------------------------------\n // hocs\n // --------------------------------------------------------\n const calculateHocsFuncs = Object.values(options.compose || {})\n .filter((item) => typeof item === 'function')\n .reverse()\n\n const hocsFuncs = [rocketstyleAttrsHoc(options), ...calculateHocsFuncs]\n\n // --------------------------------------------------------\n // ENHANCED COMPONENT (returned component)\n // --------------------------------------------------------\n // .attrs() chaining option is calculated in HOC and passed as props already\n const EnhancedComponent: RocketComponent = forwardRef(\n (\n {\n $rocketstyleRef, // it's forwarded from HOC which is always on top of hocs\n ...props\n },\n ref\n ) => {\n // --------------------------------------------------\n // handle refs\n // (1) one is passed from inner HOC - $rocketstyleRef\n // (2) second one is used to be used directly (e.g. inside hocs)\n // --------------------------------------------------\n const internalRef = useRef(null)\n\n if ($rocketstyleRef)\n useImperativeHandle($rocketstyleRef, () => internalRef.current, [\n $rocketstyleRef,\n ])\n\n if (ref) useImperativeHandle(ref, () => internalRef.current, [ref])\n\n // --------------------------------------------------\n // hover - focus - pressed state passed via context from parent component\n // --------------------------------------------------\n const rocketstyleCtx = options.consumer ? useContext(localContext) : {}\n\n // --------------------------------------------------\n // general theme and theme mode dark / light passed in context\n // --------------------------------------------------\n const { theme, mode } = useThemeOptions(options)\n\n // --------------------------------------------------\n // calculate themes for all possible styling dimensions\n // .theme(...) + defined dimensions like .states(...), .sizes(...)\n // --------------------------------------------------\n const __ROCKETSTYLE__ = useMemo(\n () =>\n useTheme<typeof theme>({\n theme,\n options,\n cb: themeModeCb,\n }),\n // recalculate this only when theme changes\n [theme]\n )\n\n const {\n reservedPropNames,\n themes: rocketThemes,\n dimensions,\n baseTheme: rocketBaseTheme,\n } = __ROCKETSTYLE__\n\n const { baseTheme, themes } = useMemo(\n () =>\n calculateThemeMode(\n { themes: rocketThemes, baseTheme: rocketBaseTheme },\n mode\n ),\n // recalculate this only when theme mode changes dark / light\n [mode]\n )\n\n // --------------------------------------------------\n // calculate reserved Keys defined in dimensions as styling keys\n // there is no need to calculate this each time - keys are based on\n // dimensions definitions\n // --------------------------------------------------\n const RESERVED_STYLING_PROPS_KEYS = useMemo(\n () => Object.keys(reservedPropNames),\n []\n )\n\n // --------------------------------------------------\n // get final props which are (latest has the highest priority):\n // (1) merged styling from context,\n // (2) `attrs` chaining method, and from\n // (3) passing them directly to component\n // --------------------------------------------------\n const { pseudo = {}, ...mergeProps }: Record<string, unknown> = {\n ...(options.consumer\n ? options.consumer((callback) => callback(rocketstyleCtx))\n : {}),\n ...props,\n }\n\n // --------------------------------------------------\n // rocketstate\n // calculate final component state including pseudo state\n // passed as $rocketstate prop\n // --------------------------------------------------\n const rocketstate: Record<string, unknown> = _calculateStylingAttrs({\n props: pickStyledProps(mergeProps, reservedPropNames),\n dimensions,\n })\n\n // --------------------------------------------------\n // pseudo state\n // calculate final component pseudo state including pseudo state\n // from props and override by pseudo props from context\n // --------------------------------------------------\n const finalPseudo = {\n ...pick(props, PSEUDO_KEYS),\n ...pseudo,\n }\n\n const finalRocketstate = { ...rocketstate, pseudo: finalPseudo }\n\n // --------------------------------------------------\n // rocketstyle\n // calculated (based on styling props) final theme which will be passed\n // to our styled component\n // passed as $rocketstyle prop\n // --------------------------------------------------\n const rocketstyle = calculateTheme({\n rocketstate,\n themes,\n baseTheme,\n })\n\n // --------------------------------------------------\n // final props\n // final props passed to WrappedComponent\n // excluding: styling props\n // including: $rocketstyle, $rocketstate\n // --------------------------------------------------\n const finalProps = {\n // this removes styling state from props and passes its state\n // under rocketstate key only\n ...omit(mergeProps, [...RESERVED_STYLING_PROPS_KEYS, ...PSEUDO_KEYS]),\n // if enforced to pass styling props, we pass them directly\n ...(options.passProps ? pick(mergeProps, options.passProps) : {}),\n ref: ref || $rocketstyleRef ? internalRef : undefined,\n // state props passed to styled component only, therefore the `$` symbol\n $rocketstyle: rocketstyle,\n $rocketstate: finalRocketstate,\n }\n\n // all the development stuff injected\n if (process.env.NODE_ENV !== 'production') {\n finalProps['data-rocketstyle'] = componentName\n }\n\n return <RenderComponent {...finalProps} />\n }\n )\n\n // ------------------------------------------------------\n // This will hoist and generate dynamically next static methods\n // for all dimensions available in configuration\n // ------------------------------------------------------\n const RocketComponent = compose(...hocsFuncs)(EnhancedComponent)\n RocketComponent.IS_ROCKETSTYLE = true\n RocketComponent.displayName = componentName\n\n hoistNonReactStatics(RocketComponent, options.component)\n\n // ------------------------------------------------------\n // enhance for chaining methods\n // ------------------------------------------------------\n createStaticsChainingEnhancers({\n context: RocketComponent,\n dimensionKeys: [...options.dimensionKeys, ...STATIC_KEYS],\n func: cloneAndEnhance,\n opts: options,\n })\n\n // ------------------------------------------------------\n RocketComponent.IS_ROCKETSTYLE = true\n RocketComponent.displayName = componentName\n RocketComponent.is = {}\n // ------------------------------------------------------\n\n // ------------------------------------------------------\n // enhance for statics\n // ------------------------------------------------------\n createStaticsEnhancers({\n context: RocketComponent.is,\n opts: options.statics,\n })\n\n RocketComponent.config = (opts = {}) => {\n const result = pick(opts, CONFIG_KEYS)\n\n return cloneAndEnhance(result as any, options) as any\n }\n\n RocketComponent.statics = (opts = {}) =>\n cloneAndEnhance({ statics: opts }, options) as any\n\n RocketComponent.getStaticDimensions = (theme) => {\n const themes = useTheme({ theme, options, cb: themeModeCb })\n\n return {\n dimensions: themes.dimensions,\n useBooleans: options.useBooleans,\n multiKeys: options.multiKeys,\n }\n }\n\n RocketComponent.getDefaultAttrs = (props, theme, mode) => {\n const result = calculateChainOptions(options.attrs)([\n props,\n theme,\n {\n renderContent,\n mode,\n isDark: mode === 'light',\n isLight: mode === 'dark',\n },\n ])\n\n return result\n }\n\n return RocketComponent as RocketComponent\n}\n\nexport default styleComponent\n","const DEFAULT_DIMENSIONS = {\n states: 'state',\n sizes: 'size',\n variants: 'variant',\n multiple: {\n propName: 'multiple',\n multi: true,\n },\n} as const\n\nexport type DefaultDimensions = typeof DEFAULT_DIMENSIONS\n\nexport default DEFAULT_DIMENSIONS\n","/* eslint-disable @typescript-eslint/ban-types */\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { isEmpty } from '@vitus-labs/core'\nimport styleComponent from '~/rocketstyle'\nimport {\n getKeys,\n getMultipleDimensions,\n getDimensionsValues,\n} from '~/utils/dimensions'\nimport { ALL_RESERVED_KEYS } from '~/constants/reservedKeys'\nimport defaultDimensions from '~/constants/defaultDimensions'\n\nimport type { ElementType, TObj } from '~/types/utils'\nimport type { Dimensions, DefaultDimensions } from '~/types/dimensions'\nimport type { StyleComponent } from '~/types/styleComponent'\n\nexport type Rocketstyle = <T extends TObj = {}, CSS extends TObj = {}>() => <\n D extends Dimensions = DefaultDimensions,\n UB extends boolean = true\n>({\n dimensions,\n useBooleans,\n}?: {\n dimensions?: D\n useBooleans?: UB\n}) => <C extends ElementType>({\n name,\n component,\n}: {\n name: string\n component: C\n}) => ReturnType<StyleComponent<C, T, CSS, D, UB>>\n\nconst rocketstyle: Rocketstyle =\n () =>\n ({ dimensions = defaultDimensions, useBooleans = true } = {}) =>\n ({ name, component }) => {\n // --------------------------------------------------------\n // handle ERRORS in development mode\n // --------------------------------------------------------\n if (process.env.NODE_ENV !== 'production') {\n type Errors = Partial<{\n component: string\n name: string\n dimensions: string\n invalidDimensions: string\n }>\n\n const errors: Errors = {}\n if (!component) {\n errors.component = 'Parameter `component` is missing in params!'\n }\n\n if (!name) {\n errors.name = 'Parameter `name` is missing in params!'\n }\n\n if (isEmpty(dimensions)) {\n errors.dimensions = 'Parameter `dimensions` is missing in params!'\n } else {\n const definedDimensions = getKeys(dimensions)\n const invalidDimension = ALL_RESERVED_KEYS.some((item) =>\n definedDimensions.includes(item as any)\n )\n\n if (invalidDimension) {\n errors.invalidDimensions = `Some of your \\`dimensions\\` is invalid and uses reserved static keys which are\n ${defaultDimensions.toString()}`\n }\n }\n\n if (!isEmpty(errors)) {\n throw Error(JSON.stringify(errors))\n }\n }\n\n return styleComponent({\n name,\n component,\n useBooleans,\n dimensions,\n dimensionKeys: getKeys(dimensions),\n dimensionValues: getDimensionsValues(dimensions),\n multiKeys: getMultipleDimensions(dimensions),\n })\n }\n\nexport default rocketstyle\n","type IsRocketComponent = (component: any) => boolean\n\nconst isRocketComponent: IsRocketComponent = (component) => {\n if (\n typeof component === 'object' &&\n component !== null &&\n component.IS_ROCKETSTYLE\n ) {\n return true\n }\n\n return false\n}\n\nexport default isRocketComponent\n"],"names":["useState","useCallback","get","isEmpty","set","calculateChainOptions","config","merge","CoreProvider","useContext","context","React","forwardRef","renderContent","createContext","useMemo","LocalContext","createProvider","rocketstyleAttrsHoc","useRef","useImperativeHandle","pick","omit","compose","hoistNonReactStatics","defaultDimensions"],"mappings":"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"}
1
+ {"version":3,"file":"vitus-labs-rocketstyle.js","sources":["../src/hooks/usePseudoState.tsx","../src/utils/collection.ts","../src/utils/dimensions.ts","../src/utils/theme.ts","../src/hooks/useTheme.tsx","../src/context.tsx","../src/constants/reservedKeys.ts","../src/hooks/useThemeOptions.tsx","../src/utils/attrs.ts","../src/internal/rocketstyleAttrsHoc.tsx","../src/internal/localContext.tsx","../src/internal/createProvider.tsx","../src/utils/styles.ts","../src/rocketstyle.tsx","../src/constants/defaultDimensions.ts","../src/init.ts","../src/isRocketComponent.ts"],"sourcesContent":["import {\n useState,\n useCallback,\n MouseEvent,\n FocusEvent,\n SyntheticEvent,\n} from 'react'\nimport type { PseudoActions, PseudoState } from '~/types/pseudo'\n\ntype State = Omit<PseudoState, 'active'>\n\ntype UsePseudoState = ({\n onMouseEnter,\n onMouseLeave,\n onMouseDown,\n onMouseUp,\n onFocus,\n onBlur,\n}: Partial<PseudoActions>) => { state: State; events: PseudoActions }\n\nconst handleEvent = (e: SyntheticEvent) => {\n e.preventDefault()\n e.stopPropagation()\n}\n\nconst usePseudoState: UsePseudoState = (props) => {\n const [hover, setHover] = useState(false)\n const [focus, setFocus] = useState(false)\n const [pressed, setPressed] = useState(false)\n\n const onMouseEnter = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setHover(true)\n if (props.onMouseEnter) props.onMouseEnter(e)\n },\n [props.onMouseEnter]\n )\n\n const onMouseLeave = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setHover(false)\n setPressed(false)\n if (props.onMouseLeave) props.onMouseLeave(e)\n },\n [props.onMouseLeave]\n )\n\n const onMouseDown = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setPressed(true)\n if (props.onMouseDown) props.onMouseDown(e)\n },\n [props.onMouseDown]\n )\n\n const onMouseUp = useCallback(\n (e: MouseEvent) => {\n handleEvent(e)\n setPressed(false)\n if (props.onMouseUp) props.onMouseUp(e)\n },\n [props.onMouseUp]\n )\n\n const onFocus = useCallback(\n (e: FocusEvent) => {\n handleEvent(e)\n setFocus(true)\n if (props.onFocus) props.onFocus(e)\n },\n [props.onFocus]\n )\n\n const onBlur = useCallback(\n (e: FocusEvent) => {\n handleEvent(e)\n setFocus(false)\n if (props.onBlur) props.onBlur(e)\n },\n [props.onBlur]\n )\n\n return {\n state: {\n hover,\n focus,\n pressed,\n },\n events: {\n onMouseEnter,\n onMouseLeave,\n onMouseDown,\n onMouseUp,\n onFocus,\n onBlur,\n },\n }\n}\n\nexport default usePseudoState\n","/* eslint-disable import/prefer-default-export */\n\n// --------------------------------------------------------\n// chain options\n// --------------------------------------------------------\ntype ChanOptions = (\n opts: Record<string, unknown> | ((...args: any) => Record<string, unknown>),\n defaultOpts: any[]\n) => any[]\n\nexport const chainOptions: ChanOptions = (opts, defaultOpts = []) => {\n const result = [...defaultOpts]\n\n if (typeof opts === 'function') result.push(opts)\n else if (typeof opts === 'object') result.push(() => opts)\n\n return result\n}\n\n// --------------------------------------------------------\n// remove empty values\n// --------------------------------------------------------\ntype RemoveNullableValues = (obj: Record<string, any>) => Record<string, any>\nexport const removeNullableValues: RemoveNullableValues = (obj) =>\n Object.entries(obj)\n .filter(([, v]) => v != null && v !== false)\n .reduce((acc, [k, v]) => ({ ...acc, [k]: v }), {})\n\n// --------------------------------------------------------\n// remove empty values recursively\n// --------------------------------------------------------\ntype RemoveAllEmptyValues = (obj: Record<string, any>) => Record<string, any>\nexport const removeAllEmptyValues: RemoveAllEmptyValues = (obj) =>\n Object.entries(obj)\n .filter(([, v]) => v != null)\n .reduce(\n (acc, [k, v]) => ({\n ...acc,\n [k]: typeof v === 'object' ? removeAllEmptyValues(v) : v,\n }),\n {}\n )\n","import { get, isEmpty, set } from '@vitus-labs/core'\nimport { Dimensions, DimensionValue, MultiKeys } from '~/types/dimensions'\n\n// --------------------------------------------------------\n// is value milti key\n// --------------------------------------------------------\ntype IsValidKey = (value: any) => boolean\nexport const isValidKey: IsValidKey = (value) =>\n value !== undefined && value !== null && value !== false\n\n// --------------------------------------------------------\n// is value milti key\n// --------------------------------------------------------\ntype IsMultiKey = (value: any) => [boolean, string]\nexport const isMultiKey: IsMultiKey = (value) => {\n if (typeof value === 'object') return [true, get(value, 'propName')]\n return [false, value]\n}\n\n// --------------------------------------------------------\n// calculate dimensions map\n// --------------------------------------------------------\ntype CalculateDimensionsMap = ({\n themes,\n useBooleans,\n}: {\n themes: Record<string, any>\n useBooleans: boolean\n}) => { keysMap: Record<string, any>; keywords: Record<string, any> }\n\nexport const calculateDimensionsMap: CalculateDimensionsMap = ({\n themes,\n useBooleans,\n}) => {\n const result = { keysMap: {}, keywords: {} }\n if (isEmpty(themes)) return result\n\n return Object.entries(themes).reduce((accumulator, [key, value]) => {\n const { keysMap, keywords } = accumulator\n keywords[key] = true\n\n Object.entries(value as any).forEach(([itemKey, itemValue]) => {\n if (!isValidKey(itemValue)) return\n\n if (useBooleans) {\n keywords[itemKey] = true\n }\n\n set(keysMap, [key, itemKey], true)\n })\n\n return accumulator\n }, result)\n}\n\n// --------------------------------------------------------\n// simple object getters\n// --------------------------------------------------------\ntype GetKeys = <T extends Record<string, unknown>>(obj: T) => Array<keyof T>\nexport const getKeys: GetKeys = (obj) => Object.keys(obj)\n\ntype GetValues = <T extends Record<string, unknown>, K extends keyof T>(\n obj: T\n) => T[K][]\nexport const getValues: GetValues = (obj) => Object.values(obj) as any\n\n// --------------------------------------------------------\n// get dimensions values array\n// --------------------------------------------------------\ntype ValueType<T> = T extends string ? T : Array<T>[0]\ntype GetDimensionsValues = <T extends Dimensions, K extends keyof T>(\n obj: T\n) => ValueType<T[K]>[]\n\nexport const getDimensionsValues: GetDimensionsValues = (obj) =>\n getValues(obj).map((item: DimensionValue) => {\n if (typeof item === 'object') {\n return item.propName as any\n }\n\n return item\n })\n\n// --------------------------------------------------------\n// get multiple dimensions map\n// --------------------------------------------------------\ntype GetMultipleDimensions = <T extends Dimensions>(obj: T) => MultiKeys<T>\n\nexport const getMultipleDimensions: GetMultipleDimensions = (obj) =>\n getValues(obj).reduce((accumulator, value: DimensionValue) => {\n if (typeof value === 'object') {\n // eslint-disable-next-line no-param-reassign\n if (value.multi === true) accumulator[value.propName] = true\n }\n\n return accumulator\n }, {})\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { config, isEmpty, merge } from '@vitus-labs/core'\nimport { ThemeMode } from '~/types/theme'\nimport { removeNullableValues } from './collection'\nimport { isMultiKey } from './dimensions'\n\n// --------------------------------------------------------\n// theme mode callback\n// --------------------------------------------------------\nexport const themeModeCb: ThemeMode =\n (...params) =>\n (mode) => {\n if (!mode || mode === 'light') return params[0]\n return params[1]\n }\n\n// --------------------------------------------------------\n// calculate dimension themes\n// --------------------------------------------------------\ntype CalculateDimensionThemes = (\n theme: Record<string, any>,\n options: Record<string, any>,\n cb: any\n) => Record<string, any>\n\nexport const calculateDimensionThemes: CalculateDimensionThemes = (\n theme,\n options,\n cb\n) => {\n const result = {}\n\n if (isEmpty(options.dimensions)) return result\n\n return Object.entries(options.dimensions).reduce(\n (accumulator, [key, value]) => {\n const [, dimension] = isMultiKey(value)\n\n const helper = options[key]\n\n if (Array.isArray(helper) && helper.length > 0) {\n const finalDimensionThemes = calculateChainOptions(helper, [\n theme,\n cb,\n config.css,\n ])\n\n // eslint-disable-next-line no-param-reassign\n accumulator[dimension] = removeNullableValues(finalDimensionThemes)\n }\n\n return accumulator\n },\n result\n )\n}\n\n// --------------------------------------------------------\n// combine values\n// --------------------------------------------------------\ntype OptionFunc<A> = (...arg: Array<A>) => Record<string, unknown>\ntype CalculateChainOptions = <A>(\n options: Array<OptionFunc<A>> | undefined | null,\n args: Array<A>\n) => ReturnType<OptionFunc<A>>\n\nexport const calculateChainOptions: CalculateChainOptions = (options, args) => {\n const result = {}\n if (isEmpty(options)) return result\n\n return options.reduce((acc, item) => merge(acc, item(...args)), result)\n\n // using this does not allow overriding themes properly\n // return removeAllEmptyValues(helper)\n}\n\n// --------------------------------------------------------\n// generate theme\n// --------------------------------------------------------\nexport type CalculateTheme = <\n P extends Record<string, unknown>,\n T extends Record<string, unknown>,\n B extends Record<string, unknown>\n>({\n rocketstate,\n themes,\n baseTheme,\n}: {\n rocketstate: P\n themes: T\n baseTheme: B\n}) => B & Record<string, unknown>\n\nexport const calculateTheme: CalculateTheme = ({\n rocketstate,\n themes,\n baseTheme,\n}) => {\n // generate final theme which will be passed to styled component\n let finalTheme = { ...baseTheme }\n\n Object.entries(rocketstate).forEach(\n ([key, value]: [string, string | Array<string>]) => {\n const keyTheme = themes[key]\n\n if (Array.isArray(value)) {\n value.forEach((item) => {\n finalTheme = merge({}, finalTheme, keyTheme[item])\n })\n } else {\n finalTheme = merge({}, finalTheme, keyTheme[value])\n }\n }\n )\n\n return finalTheme\n}\n\n// --------------------------------------------------------\n// generate theme\n// --------------------------------------------------------\nexport type CalculateThemeMode = (\n themes: Record<string, any>,\n variant: 'light' | 'dark'\n) => Partial<{\n baseTheme: Record<string, unknown>\n themes: Record<string, unknown>\n}>\n\nexport const calculateThemeMode: CalculateThemeMode = (themes, variant) => {\n const callback = themeModeCb().toString()\n const isModeCallback = (value) => value.toString() === callback\n\n const result = {}\n Object.entries(themes).forEach(([key, value]) => {\n if (typeof value === 'object' && value !== null) {\n result[key] = calculateThemeMode(value, variant)\n } else if (typeof value === 'function' && isModeCallback(value)) {\n result[key] = value(variant)\n } else {\n result[key] = value\n }\n })\n\n return result\n}\n","import { config } from '@vitus-labs/core'\nimport { calculateChainOptions, calculateDimensionThemes } from '~/utils/theme'\nimport { calculateDimensionsMap } from '~/utils/dimensions'\nimport type { Configuration, __ROCKETSTYLE__ } from '~/types/configuration'\nimport type { ThemeMode } from '~/types/theme'\n\ntype UseTheme = <T extends Record<string, unknown>>({\n theme,\n options,\n cb,\n}: {\n theme: T\n options: Configuration\n cb: ThemeMode\n}) => __ROCKETSTYLE__\n\nconst useTheme: UseTheme = ({ theme, options, cb }) => {\n const themes = calculateDimensionThemes(theme, options, cb)\n const { keysMap, keywords } = calculateDimensionsMap({\n themes,\n useBooleans: options.useBooleans,\n })\n\n // eslint-disable-next-line no-underscore-dangle\n const __ROCKETSTYLE__ = {\n dimensions: keysMap,\n reservedPropNames: keywords,\n baseTheme: calculateChainOptions(options.theme, [theme, cb, config.css]),\n themes,\n }\n\n return __ROCKETSTYLE__\n}\n\nexport default useTheme\n","import React, { useContext, ReactNode, FC, ComponentType } from 'react'\nimport { Provider as CoreProvider, context } from '@vitus-labs/core'\n\ntype Theme = {\n rootSize: number\n breakpoints?: Record<string, number>\n __VITUS_LABS__?: never\n} & Record<string, unknown>\n\nexport type TProvider = {\n children: ReactNode\n theme?: Theme\n mode?: 'light' | 'dark'\n inversed?: boolean\n provider?: ComponentType<any>\n}\n\nconst Provider: FC<TProvider> = ({ provider = CoreProvider, ...props }) => {\n const ctx = useContext<TProvider>(context as any)\n\n const {\n theme,\n mode,\n inversed,\n provider: RocketstyleProvider,\n children,\n } = { ...props, ...ctx, provider }\n\n const isDark = inversed ? mode !== 'dark' : mode === 'dark'\n\n return (\n <RocketstyleProvider\n mode={mode}\n isDark={isDark}\n isLight={!isDark}\n theme={theme}\n provider={provider}\n >\n {children}\n </RocketstyleProvider>\n )\n}\n\nexport { context }\n\nexport default Provider\n","export const PSEUDO_KEYS = ['hover', 'active', 'focus', 'pressed'] as const\n\nexport const THEME_MODES = {\n light: true,\n dark: true,\n} as const\n\nexport const THEME_MODES_INVERSED = {\n dark: 'light',\n light: 'dark',\n} as const\n\nexport const CONFIG_KEYS = [\n 'provider',\n 'consumer',\n 'DEBUG',\n 'name',\n 'component',\n 'inversed',\n 'passProps',\n 'styled',\n] as const\n\nexport const STYLING_KEYS = ['theme', 'attrs', 'styles'] as const\nexport const STATIC_KEYS = [...STYLING_KEYS, 'compose'] as const\n\nexport const ALL_RESERVED_KEYS = [\n ...Object.keys(THEME_MODES),\n ...CONFIG_KEYS,\n ...STATIC_KEYS,\n] as const\n","import { useContext } from 'react'\nimport { context } from '~/context'\nimport { THEME_MODES_INVERSED } from '~/constants/reservedKeys'\nimport { ThemeModeKeys } from '~/types/theme'\n\ntype UseThemeOptions = ({ inversed }: { inversed?: boolean }) => {\n theme: Record<string, unknown>\n mode: ThemeModeKeys\n isDark: boolean\n isLight: boolean\n}\n\nconst useThemeOptions: UseThemeOptions = ({ inversed }) => {\n const { theme, mode: ctxMode, isDark: ctxDark } = useContext(context) as any\n const mode = inversed ? THEME_MODES_INVERSED[ctxMode] : ctxMode\n const isDark = inversed ? !ctxDark : ctxDark\n const isLight = !isDark\n\n return { theme, mode, isDark, isLight }\n}\n\nexport default useThemeOptions\n","import { isEmpty } from '@vitus-labs/core'\nimport { MultiKeys } from '~/types/dimensions'\n\n// --------------------------------------------------------\n// pick styled props\n// --------------------------------------------------------\ntype PickStyledProps = (\n props: Record<string, unknown>,\n keywords: Record<string, true>\n) => Partial<typeof props>\nexport const pickStyledProps: PickStyledProps = (props, keywords) => {\n const result = {} as any\n\n Object.entries(props).forEach(([key, value]) => {\n if (keywords[key]) result[key] = value\n })\n\n return result\n}\n\n// --------------------------------------------------------\n// combine values\n// --------------------------------------------------------\ntype OptionFunc<A> = (...arg: Array<A>) => Record<string, unknown>\ntype CalculateChainOptions = <A>(\n options?: Array<OptionFunc<A>>\n) => (args: Array<A>) => ReturnType<OptionFunc<A>>\n\nexport const calculateChainOptions: CalculateChainOptions =\n (options) => (args) => {\n const result = {}\n if (isEmpty(options)) return result\n\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n return options.reduce(\n (acc, item) => Object.assign(acc, item(...args)),\n result\n )\n }\n\n// --------------------------------------------------------\n// get style attributes\n// --------------------------------------------------------\ntype CalculateStylingAttrs = ({\n useBooleans,\n multiKeys,\n}: {\n useBooleans?: boolean\n multiKeys?: MultiKeys\n}) => ({\n props,\n dimensions,\n}: {\n props: Record<string, unknown>\n dimensions: Record<string, unknown>\n}) => any\nexport const calculateStylingAttrs: CalculateStylingAttrs =\n ({ useBooleans, multiKeys }) =>\n ({ props, dimensions }) => {\n const result = {}\n\n // (1) find dimension keys values & initialize\n // object with possible options\n Object.keys(dimensions).forEach((item) => {\n const pickedProp = props[item]\n const valueTypes = ['number', 'string']\n\n // if the property is mutli key, allow assign array as well\n if (multiKeys && multiKeys[item] && Array.isArray(pickedProp)) {\n result[item] = pickedProp\n }\n // assign when it's only a string or number otherwise it's considered\n // as invalid param\n else if (valueTypes.includes(typeof pickedProp)) {\n result[item] = pickedProp\n } else {\n result[item] = undefined\n }\n })\n\n // (2) if booleans are being used let's find the rest\n if (useBooleans) {\n const propsKeys = Object.keys(props).reverse()\n\n Object.entries(result).forEach(([key, value]) => {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const isMultiKey = multiKeys[key]\n\n // when value in result is not assigned yet\n if (!value) {\n let newDimensionValue\n const keywords = Object.keys(dimensions[key] as any)\n\n if (isMultiKey) {\n newDimensionValue = propsKeys.filter((key) =>\n keywords.includes(key)\n )\n } else {\n // reverse props to guarantee the last one will have\n // a priority over previous ones\n newDimensionValue = propsKeys.find((key) => {\n if (keywords.includes(key) && props[key]) return key\n return false\n })\n }\n\n result[key] = newDimensionValue\n }\n })\n }\n\n return result\n }\n","/* eslint-disable no-underscore-dangle */\nimport React, {\n forwardRef,\n ForwardRefExoticComponent,\n ComponentType,\n} from 'react'\nimport { renderContent } from '@vitus-labs/core'\nimport { calculateChainOptions } from '~/utils/attrs'\nimport { useThemeOptions } from '~/hooks'\n\nimport type { OptionFunc } from '~/types/configuration'\n\nexport type RocketStyleHOC = ({\n inversed,\n attrs,\n}: {\n inversed?: boolean\n attrs?: Array<OptionFunc>\n}) => (WrappedComponent: ComponentType) => ForwardRefExoticComponent<any>\n\nconst rocketStyleHOC: RocketStyleHOC = ({ inversed, attrs }) => {\n // --------------------------------------------------\n // .attrs(...)\n // first we need to calculate final props which are\n // being returned by using `attr` chaining method\n // --------------------------------------------------\n const _calculateChainOptions = calculateChainOptions(attrs)\n\n const Enhanced = (WrappedComponent) =>\n forwardRef<any, any>((props, ref) => {\n const { theme, mode, isDark, isLight } = useThemeOptions({\n inversed,\n })\n\n const calculatedAttrs = _calculateChainOptions([\n props,\n theme,\n {\n renderContent,\n mode,\n isDark,\n isLight,\n },\n ])\n\n return (\n <WrappedComponent\n $rocketstyleRef={ref}\n {...calculatedAttrs}\n {...props}\n />\n )\n })\n\n return Enhanced\n}\n\nexport default rocketStyleHOC\n","import { createContext } from 'react'\nimport type { PseudoState } from '~/types/pseudo'\n\ntype TContext = Partial<\n {\n pseudo: PseudoState\n } & Record<string, unknown>\n>\n\nexport default createContext<TContext>({})\n","import React, { forwardRef, useMemo } from 'react'\nimport { usePseudoState } from '~/hooks'\nimport LocalContext from './localContext'\n\nconst RocketStyleProviderComponent = (WrappedComponent) =>\n forwardRef<any, any>(\n (\n {\n onMouseEnter,\n onMouseLeave,\n onMouseUp,\n onMouseDown,\n onFocus,\n onBlur,\n $rocketstate,\n ...props\n },\n ref\n ) => {\n // pseudo hook to detect states hover / pressed / focus\n const pseudo = usePseudoState({\n onMouseEnter,\n onMouseLeave,\n onMouseUp,\n onMouseDown,\n onFocus,\n onBlur,\n })\n\n const updatedState = useMemo(\n () => ({\n ...$rocketstate,\n pseudo: { ...$rocketstate.pseudo, ...pseudo.state },\n }),\n [$rocketstate, pseudo]\n )\n\n return (\n <LocalContext.Provider value={updatedState}>\n <WrappedComponent\n {...props}\n {...pseudo.events}\n ref={ref}\n $rocketstate={updatedState}\n />\n </LocalContext.Provider>\n )\n }\n )\n\nexport default RocketStyleProviderComponent\n","/* eslint-disable import/prefer-default-export */\nimport type { StylesCbArray, Css } from '~/types/styles'\n\n// --------------------------------------------------------\n// calculate styles\n// --------------------------------------------------------\ntype CalculateStyles = <S extends StylesCbArray | undefined, C extends Css>(\n styles: S,\n css: C\n) => Array<ReturnType<StylesCbArray[number]>>\n\nexport const calculateStyles: CalculateStyles = (styles, css) => {\n if (!styles) return []\n\n return styles.map((item) => item(css))\n}\n","/* eslint-disable no-underscore-dangle */\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport React, {\n useMemo,\n forwardRef,\n useContext,\n useImperativeHandle,\n useRef,\n} from 'react'\nimport hoistNonReactStatics from 'hoist-non-react-statics'\nimport {\n config,\n omit,\n pick,\n compose,\n renderContent,\n isEmpty,\n} from '@vitus-labs/core'\nimport { useTheme, useThemeOptions } from '~/hooks'\nimport { localContext, createProvider, rocketstyleAttrsHoc } from '~/internal'\nimport { calculateTheme, calculateThemeMode, themeModeCb } from '~/utils/theme'\nimport { calculateStyles } from '~/utils/styles'\nimport { chainOptions } from '~/utils/collection'\nimport {\n pickStyledProps,\n calculateStylingAttrs,\n calculateChainOptions,\n} from '~/utils/attrs'\nimport {\n PSEUDO_KEYS,\n CONFIG_KEYS,\n STYLING_KEYS,\n STATIC_KEYS,\n} from '~/constants/reservedKeys'\n\nimport type { RocketComponent } from '~/types/rocketstyle'\nimport type { Configuration } from '~/types/configuration'\nimport type { StyleComponent } from '~/types/styleComponent'\n\n// --------------------------------------------------------\n// styledComponent helpers for chaining attributes\n// --------------------------------------------------------\ntype OrOptions = (\n keys: Readonly<Array<string>>,\n opts: Record<string, unknown>,\n defaultOpts: Record<string, unknown>\n) => Record<string, unknown>\n\nconst orOptions: OrOptions = (keys, opts, defaultOpts) =>\n keys.reduce(\n (acc, item) => ({ ...acc, [item]: opts[item] || defaultOpts[item] }),\n {}\n )\n\nconst chainReservedOptions = (keys, opts, defaultOpts) =>\n keys.reduce(\n (acc, item) => ({\n ...acc,\n [item]: chainOptions(opts[item], defaultOpts[item]),\n }),\n {}\n )\n\n// --------------------------------------------------------\n// helpers for create statics chainin methods on component\n// --------------------------------------------------------\nconst createStaticsChainingEnhancers = ({\n context,\n dimensionKeys,\n func,\n opts,\n}) => {\n dimensionKeys.forEach((item) => {\n // eslint-disable-next-line no-param-reassign\n context[item] = (props) => func({ [item]: props }, opts)\n })\n}\n\n// --------------------------------------------------------\n// helpers for create statics on component\n// --------------------------------------------------------\nconst createStaticsEnhancers = ({ context, opts }) => {\n if (!isEmpty(opts)) {\n Object.assign(context, opts)\n }\n}\n\n// --------------------------------------------------------\n// cloneAndEnhance\n// helper function which allows function chaining\n// always returns styleComponent with static functions\n// assigned\n// --------------------------------------------------------\ntype CloneAndEnhance = <A extends Configuration, B extends Configuration>(\n opts: A,\n defaultOpts: B\n) => ReturnType<typeof styleComponent>\n\nconst cloneAndEnhance: CloneAndEnhance = (opts, defaultOpts) =>\n styleComponent({\n ...defaultOpts,\n statics: { ...defaultOpts.statics, ...opts.statics },\n compose: { ...defaultOpts.compose, ...opts.compose },\n ...orOptions(CONFIG_KEYS, opts, defaultOpts),\n ...chainReservedOptions(\n [...defaultOpts.dimensionKeys, ...STYLING_KEYS],\n opts,\n defaultOpts\n ),\n })\n\n// --------------------------------------------------------\n// styleComponent\n// helper function which allows function chaining\n// always returns a valid React component with static functions\n// assigned, so it can be even rendered as a valid component\n// or styles can be extended via its statics\n// --------------------------------------------------------\nconst styleComponent: StyleComponent<any> = (options) => {\n const { component, styles } = options\n const { styled } = config\n\n // const _calculateChainOptions = calculateChainOptions(options.attrs)\n const _calculateStylingAttrs = calculateStylingAttrs({\n multiKeys: options.multiKeys,\n useBooleans: options.useBooleans,\n })\n\n const componentName =\n options.name || options.component.displayName || options.component.name\n\n // create styled component with all options.styles if available\n const STYLED_COMPONENT =\n component.IS_ROCKETSTYLE || options.styled === false\n ? component\n : styled(component)`\n ${calculateStyles(styles, config.css)};\n `\n\n // --------------------------------------------------------\n // final component to be rendered\n // --------------------------------------------------------\n const RenderComponent = options.provider\n ? createProvider(STYLED_COMPONENT)\n : STYLED_COMPONENT\n\n // --------------------------------------------------------\n // hocs\n // --------------------------------------------------------\n const calculateHocsFuncs = Object.values(options.compose || {})\n .filter((item) => typeof item === 'function')\n .reverse()\n\n const hocsFuncs = [rocketstyleAttrsHoc(options), ...calculateHocsFuncs]\n\n // --------------------------------------------------------\n // ENHANCED COMPONENT (returned component)\n // --------------------------------------------------------\n // .attrs() chaining option is calculated in HOC and passed as props already\n const EnhancedComponent: RocketComponent = forwardRef(\n (\n {\n $rocketstyleRef, // it's forwarded from HOC which is always on top of hocs\n ...props\n },\n ref\n ) => {\n // --------------------------------------------------\n // handle refs\n // (1) one is passed from inner HOC - $rocketstyleRef\n // (2) second one is used to be used directly (e.g. inside hocs)\n // --------------------------------------------------\n const internalRef = useRef(null)\n\n if ($rocketstyleRef)\n useImperativeHandle($rocketstyleRef, () => internalRef.current, [\n $rocketstyleRef,\n ])\n\n if (ref) useImperativeHandle(ref, () => internalRef.current, [ref])\n\n // --------------------------------------------------\n // hover - focus - pressed state passed via context from parent component\n // --------------------------------------------------\n const rocketstyleCtx = options.consumer ? useContext(localContext) : {}\n\n // --------------------------------------------------\n // general theme and theme mode dark / light passed in context\n // --------------------------------------------------\n const { theme, mode } = useThemeOptions(options)\n\n // --------------------------------------------------\n // calculate themes for all possible styling dimensions\n // .theme(...) + defined dimensions like .states(...), .sizes(...)\n // --------------------------------------------------\n const __ROCKETSTYLE__ = useMemo(\n () =>\n useTheme<typeof theme>({\n theme,\n options,\n cb: themeModeCb,\n }),\n // recalculate this only when theme changes\n [theme]\n )\n\n const {\n reservedPropNames,\n themes: rocketThemes,\n dimensions,\n baseTheme: rocketBaseTheme,\n } = __ROCKETSTYLE__\n\n const { baseTheme, themes } = useMemo(\n () =>\n calculateThemeMode(\n { themes: rocketThemes, baseTheme: rocketBaseTheme },\n mode\n ),\n // recalculate this only when theme mode changes dark / light\n [mode]\n )\n\n // --------------------------------------------------\n // calculate reserved Keys defined in dimensions as styling keys\n // there is no need to calculate this each time - keys are based on\n // dimensions definitions\n // --------------------------------------------------\n const RESERVED_STYLING_PROPS_KEYS = useMemo(\n () => Object.keys(reservedPropNames),\n []\n )\n\n // --------------------------------------------------\n // get final props which are (latest has the highest priority):\n // (1) merged styling from context,\n // (2) `attrs` chaining method, and from\n // (3) passing them directly to component\n // --------------------------------------------------\n const { pseudo = {}, ...mergeProps }: Record<string, unknown> = {\n ...(options.consumer\n ? options.consumer((callback) => callback(rocketstyleCtx))\n : {}),\n ...props,\n }\n\n // --------------------------------------------------\n // rocketstate\n // calculate final component state including pseudo state\n // passed as $rocketstate prop\n // --------------------------------------------------\n const rocketstate: Record<string, unknown> = _calculateStylingAttrs({\n props: pickStyledProps(mergeProps, reservedPropNames),\n dimensions,\n })\n\n // --------------------------------------------------\n // pseudo state\n // calculate final component pseudo state including pseudo state\n // from props and override by pseudo props from context\n // --------------------------------------------------\n const finalPseudo = {\n ...pick(props, PSEUDO_KEYS),\n ...pseudo,\n }\n\n const finalRocketstate = { ...rocketstate, pseudo: finalPseudo }\n\n // --------------------------------------------------\n // rocketstyle\n // calculated (based on styling props) final theme which will be passed\n // to our styled component\n // passed as $rocketstyle prop\n // --------------------------------------------------\n const rocketstyle = calculateTheme({\n rocketstate,\n themes,\n baseTheme,\n })\n\n // --------------------------------------------------\n // final props\n // final props passed to WrappedComponent\n // excluding: styling props\n // including: $rocketstyle, $rocketstate\n // --------------------------------------------------\n const finalProps = {\n // this removes styling state from props and passes its state\n // under rocketstate key only\n ...omit(mergeProps, [...RESERVED_STYLING_PROPS_KEYS, ...PSEUDO_KEYS]),\n // if enforced to pass styling props, we pass them directly\n ...(options.passProps ? pick(mergeProps, options.passProps) : {}),\n ref: ref || $rocketstyleRef ? internalRef : undefined,\n // state props passed to styled component only, therefore the `$` symbol\n $rocketstyle: rocketstyle,\n $rocketstate: finalRocketstate,\n }\n\n // all the development stuff injected\n if (process.env.NODE_ENV !== 'production') {\n finalProps['data-rocketstyle'] = componentName\n }\n\n return <RenderComponent {...finalProps} />\n }\n )\n\n // ------------------------------------------------------\n // This will hoist and generate dynamically next static methods\n // for all dimensions available in configuration\n // ------------------------------------------------------\n const RocketComponent = compose(...hocsFuncs)(EnhancedComponent)\n RocketComponent.IS_ROCKETSTYLE = true\n RocketComponent.displayName = componentName\n\n hoistNonReactStatics(RocketComponent, options.component)\n\n // ------------------------------------------------------\n // enhance for chaining methods\n // ------------------------------------------------------\n createStaticsChainingEnhancers({\n context: RocketComponent,\n dimensionKeys: [...options.dimensionKeys, ...STATIC_KEYS],\n func: cloneAndEnhance,\n opts: options,\n })\n\n // ------------------------------------------------------\n RocketComponent.IS_ROCKETSTYLE = true\n RocketComponent.displayName = componentName\n RocketComponent.is = {}\n // ------------------------------------------------------\n\n // ------------------------------------------------------\n // enhance for statics\n // ------------------------------------------------------\n createStaticsEnhancers({\n context: RocketComponent.is,\n opts: options.statics,\n })\n\n RocketComponent.config = (opts = {}) => {\n const result = pick(opts, CONFIG_KEYS)\n\n return cloneAndEnhance(result as any, options) as any\n }\n\n RocketComponent.statics = (opts = {}) =>\n cloneAndEnhance({ statics: opts }, options) as any\n\n RocketComponent.getStaticDimensions = (theme) => {\n const themes = useTheme({ theme, options, cb: themeModeCb })\n\n return {\n dimensions: themes.dimensions,\n useBooleans: options.useBooleans,\n multiKeys: options.multiKeys,\n }\n }\n\n RocketComponent.getDefaultAttrs = (props, theme, mode) => {\n const result = calculateChainOptions(options.attrs)([\n props,\n theme,\n {\n renderContent,\n mode,\n isDark: mode === 'light',\n isLight: mode === 'dark',\n },\n ])\n\n return result\n }\n\n return RocketComponent as RocketComponent\n}\n\nexport default styleComponent\n","const DEFAULT_DIMENSIONS = {\n states: 'state',\n sizes: 'size',\n variants: 'variant',\n multiple: {\n propName: 'multiple',\n multi: true,\n },\n} as const\n\nexport type DefaultDimensions = typeof DEFAULT_DIMENSIONS\n\nexport default DEFAULT_DIMENSIONS\n","/* eslint-disable @typescript-eslint/ban-types */\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-nocheck\nimport { isEmpty } from '@vitus-labs/core'\nimport styleComponent from '~/rocketstyle'\nimport {\n getKeys,\n getMultipleDimensions,\n getDimensionsValues,\n} from '~/utils/dimensions'\nimport { ALL_RESERVED_KEYS } from '~/constants/reservedKeys'\nimport defaultDimensions from '~/constants/defaultDimensions'\n\nimport type { ElementType, TObj } from '~/types/utils'\nimport type { Dimensions, DefaultDimensions } from '~/types/dimensions'\nimport type { StyleComponent } from '~/types/styleComponent'\n\nexport type Rocketstyle = <T extends TObj = {}, CSS extends TObj = {}>() => <\n D extends Dimensions = DefaultDimensions,\n UB extends boolean = true\n>({\n dimensions,\n useBooleans,\n}?: {\n dimensions?: D\n useBooleans?: UB\n}) => <C extends ElementType>({\n name,\n component,\n}: {\n name: string\n component: C\n}) => ReturnType<StyleComponent<C, T, CSS, D, UB>>\n\nconst rocketstyle: Rocketstyle =\n () =>\n ({ dimensions = defaultDimensions, useBooleans = true } = {}) =>\n ({ name, component }) => {\n // --------------------------------------------------------\n // handle ERRORS in development mode\n // --------------------------------------------------------\n if (process.env.NODE_ENV !== 'production') {\n type Errors = Partial<{\n component: string\n name: string\n dimensions: string\n invalidDimensions: string\n }>\n\n const errors: Errors = {}\n if (!component) {\n errors.component = 'Parameter `component` is missing in params!'\n }\n\n if (!name) {\n errors.name = 'Parameter `name` is missing in params!'\n }\n\n if (isEmpty(dimensions)) {\n errors.dimensions = 'Parameter `dimensions` is missing in params!'\n } else {\n const definedDimensions = getKeys(dimensions)\n const invalidDimension = ALL_RESERVED_KEYS.some((item) =>\n definedDimensions.includes(item as any)\n )\n\n if (invalidDimension) {\n errors.invalidDimensions = `Some of your \\`dimensions\\` is invalid and uses reserved static keys which are\n ${defaultDimensions.toString()}`\n }\n }\n\n if (!isEmpty(errors)) {\n throw Error(JSON.stringify(errors))\n }\n }\n\n return styleComponent({\n name,\n component,\n useBooleans,\n dimensions,\n dimensionKeys: getKeys(dimensions),\n dimensionValues: getDimensionsValues(dimensions),\n multiKeys: getMultipleDimensions(dimensions),\n })\n }\n\nexport default rocketstyle\n","import type { RocketComponentType } from '~/types/config'\n\nexport type IsRocketComponent = <T>(\n component: T\n) => T extends RocketComponentType ? true : false\n\nconst isRocketComponent: IsRocketComponent = (component) => {\n if (\n component &&\n typeof component === 'object' &&\n component !== null &&\n // eslint-disable-next-line dot-notation\n component['IS_ROCKETSTYLE'] === true\n ) {\n return true as any\n }\n\n return false\n}\n\nexport default isRocketComponent\n"],"names":["useState","useCallback","get","isEmpty","set","calculateChainOptions","config","merge","CoreProvider","useContext","context","React","forwardRef","renderContent","createContext","useMemo","LocalContext","createProvider","rocketstyleAttrsHoc","useRef","useImperativeHandle","pick","omit","compose","hoistNonReactStatics","defaultDimensions"],"mappings":";;;;;;;;;;;;;AAoBA,MAAM,WAAW,GAAG,CAAC,CAAiB,KAAI;IACxC,CAAC,CAAC,cAAc,EAAE,CAAA;IAClB,CAAC,CAAC,eAAe,EAAE,CAAA;AACrB,CAAC,CAAA;AAED,MAAM,cAAc,GAAmB,CAAC,KAAK,KAAI;IAC/C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAGA,cAAQ,CAAC,KAAK,CAAC,CAAA;IACzC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAGA,cAAQ,CAAC,KAAK,CAAC,CAAA;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAGA,cAAQ,CAAC,KAAK,CAAC,CAAA;AAE7C,IAAA,MAAM,YAAY,GAAGC,iBAAW,CAC9B,CAAC,CAAa,KAAI;QAChB,WAAW,CAAC,CAAC,CAAC,CAAA;QACd,QAAQ,CAAC,IAAI,CAAC,CAAA;QACd,IAAI,KAAK,CAAC,YAAY;AAAE,YAAA,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;AAC/C,KAAC,EACD,CAAC,KAAK,CAAC,YAAY,CAAC,CACrB,CAAA;AAED,IAAA,MAAM,YAAY,GAAGA,iBAAW,CAC9B,CAAC,CAAa,KAAI;QAChB,WAAW,CAAC,CAAC,CAAC,CAAA;QACd,QAAQ,CAAC,KAAK,CAAC,CAAA;QACf,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,IAAI,KAAK,CAAC,YAAY;AAAE,YAAA,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;AAC/C,KAAC,EACD,CAAC,KAAK,CAAC,YAAY,CAAC,CACrB,CAAA;AAED,IAAA,MAAM,WAAW,GAAGA,iBAAW,CAC7B,CAAC,CAAa,KAAI;QAChB,WAAW,CAAC,CAAC,CAAC,CAAA;QACd,UAAU,CAAC,IAAI,CAAC,CAAA;QAChB,IAAI,KAAK,CAAC,WAAW;AAAE,YAAA,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;AAC7C,KAAC,EACD,CAAC,KAAK,CAAC,WAAW,CAAC,CACpB,CAAA;AAED,IAAA,MAAM,SAAS,GAAGA,iBAAW,CAC3B,CAAC,CAAa,KAAI;QAChB,WAAW,CAAC,CAAC,CAAC,CAAA;QACd,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,IAAI,KAAK,CAAC,SAAS;AAAE,YAAA,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;AACzC,KAAC,EACD,CAAC,KAAK,CAAC,SAAS,CAAC,CAClB,CAAA;AAED,IAAA,MAAM,OAAO,GAAGA,iBAAW,CACzB,CAAC,CAAa,KAAI;QAChB,WAAW,CAAC,CAAC,CAAC,CAAA;QACd,QAAQ,CAAC,IAAI,CAAC,CAAA;QACd,IAAI,KAAK,CAAC,OAAO;AAAE,YAAA,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AACrC,KAAC,EACD,CAAC,KAAK,CAAC,OAAO,CAAC,CAChB,CAAA;AAED,IAAA,MAAM,MAAM,GAAGA,iBAAW,CACxB,CAAC,CAAa,KAAI;QAChB,WAAW,CAAC,CAAC,CAAC,CAAA;QACd,QAAQ,CAAC,KAAK,CAAC,CAAA;QACf,IAAI,KAAK,CAAC,MAAM;AAAE,YAAA,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AACnC,KAAC,EACD,CAAC,KAAK,CAAC,MAAM,CAAC,CACf,CAAA;IAED,OAAO;AACL,QAAA,KAAK,EAAE;YACL,KAAK;YACL,KAAK;YACL,OAAO;AACR,SAAA;AACD,QAAA,MAAM,EAAE;YACN,YAAY;YACZ,YAAY;YACZ,WAAW;YACX,SAAS;YACT,OAAO;YACP,MAAM;AACP,SAAA;KACF,CAAA;AACH,CAAC;;ACpGD;AAUO,MAAM,YAAY,GAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,EAAE,KAAI;AAClE,IAAA,MAAM,MAAM,GAAG,CAAC,GAAG,WAAW,CAAC,CAAA;IAE/B,IAAI,OAAO,IAAI,KAAK,UAAU;AAAE,QAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SAC5C,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAA;AAE1D,IAAA,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAMM,MAAM,oBAAoB,GAAyB,CAAC,GAAG,KAC5D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;AAChB,KAAA,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;KAC3C,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;;ACnB/C,MAAM,UAAU,GAAe,CAAC,KAAK,KAC1C,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,CAAA;AAMnD,MAAM,UAAU,GAAe,CAAC,KAAK,KAAI;IAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,CAAC,IAAI,EAAEC,QAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;AACpE,IAAA,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AACvB,CAAC,CAAA;AAaM,MAAM,sBAAsB,GAA2B,CAAC,EAC7D,MAAM,EACN,WAAW,GACZ,KAAI;IACH,MAAM,MAAM,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;IAC5C,IAAIC,YAAO,CAAC,MAAM,CAAC;AAAE,QAAA,OAAO,MAAM,CAAA;AAElC,IAAA,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;AACjE,QAAA,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAA;AACzC,QAAA,QAAQ,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;AAEpB,QAAA,MAAM,CAAC,OAAO,CAAC,KAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,KAAI;AAC5D,YAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;gBAAE,OAAM;AAElC,YAAA,IAAI,WAAW,EAAE;AACf,gBAAA,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;AACzB,aAAA;YAEDC,QAAG,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAA;AACpC,SAAC,CAAC,CAAA;AAEF,QAAA,OAAO,WAAW,CAAA;KACnB,EAAE,MAAM,CAAC,CAAA;AACZ,CAAC,CAAA;AAMM,MAAM,OAAO,GAAY,CAAC,GAAG,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAKlD,MAAM,SAAS,GAAc,CAAC,GAAG,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,CAAQ,CAAA;AAU/D,MAAM,mBAAmB,GAAwB,CAAC,GAAG,KAC1D,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAoB,KAAI;AAC1C,IAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,OAAO,IAAI,CAAC,QAAe,CAAA;AAC5B,KAAA;AAED,IAAA,OAAO,IAAI,CAAA;AACb,CAAC,CAAC,CAAA;AAOG,MAAM,qBAAqB,GAA0B,CAAC,GAAG,KAC9D,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAqB,KAAI;AAC3D,IAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;;AAE7B,QAAA,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;AAAE,YAAA,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAA;AAC7D,KAAA;AAED,IAAA,OAAO,WAAW,CAAA;AACpB,CAAC,EAAE,EAAE,CAAC;;AChGR;AAOA;AACA;AACA;AACO,MAAM,WAAW,GACtB,CAAC,GAAG,MAAM,KACV,CAAC,IAAI,KAAI;AACP,IAAA,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,OAAO;AAAE,QAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;AAC/C,IAAA,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;AAClB,CAAC,CAAA;AAWI,MAAM,wBAAwB,GAA6B,CAChE,KAAK,EACL,OAAO,EACP,EAAE,KACA;IACF,MAAM,MAAM,GAAG,EAAE,CAAA;AAEjB,IAAA,IAAID,YAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AAAE,QAAA,OAAO,MAAM,CAAA;IAE9C,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,CAC9C,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;QAC5B,MAAM,GAAG,SAAS,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;AAEvC,QAAA,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;AAE3B,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AAC9C,YAAA,MAAM,oBAAoB,GAAGE,uBAAqB,CAAC,MAAM,EAAE;gBACzD,KAAK;gBACL,EAAE;AACF,gBAAAC,WAAM,CAAC,GAAG;AACX,aAAA,CAAC,CAAA;;YAGF,WAAW,CAAC,SAAS,CAAC,GAAG,oBAAoB,CAAC,oBAAoB,CAAC,CAAA;AACpE,SAAA;AAED,QAAA,OAAO,WAAW,CAAA;KACnB,EACD,MAAM,CACP,CAAA;AACH,CAAC,CAAA;AAWM,MAAMD,uBAAqB,GAA0B,CAAC,OAAO,EAAE,IAAI,KAAI;IAC5E,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,IAAIF,YAAO,CAAC,OAAO,CAAC;AAAE,QAAA,OAAO,MAAM,CAAA;IAEnC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAKI,UAAK,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;;;AAIzE,CAAC,CAAA;AAmBM,MAAM,cAAc,GAAmB,CAAC,EAC7C,WAAW,EACX,MAAM,EACN,SAAS,GACV,KAAI;;AAEH,IAAA,IAAI,UAAU,GAAG,EAAE,GAAG,SAAS,EAAE,CAAA;AAEjC,IAAA,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CACjC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAmC,KAAI;AACjD,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;AAE5B,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,YAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACrB,gBAAA,UAAU,GAAGA,UAAK,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;AACpD,aAAC,CAAC,CAAA;AACH,SAAA;AAAM,aAAA;AACL,YAAA,UAAU,GAAGA,UAAK,CAAC,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;AACpD,SAAA;AACH,KAAC,CACF,CAAA;AAED,IAAA,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAaM,MAAM,kBAAkB,GAAuB,CAAC,MAAM,EAAE,OAAO,KAAI;AACxE,IAAA,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;AACzC,IAAA,MAAM,cAAc,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAA;IAE/D,MAAM,MAAM,GAAG,EAAE,CAAA;AACjB,IAAA,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;QAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;YAC/C,MAAM,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AACjD,SAAA;aAAM,IAAI,OAAO,KAAK,KAAK,UAAU,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE;YAC/D,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;AAC7B,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AACpB,SAAA;AACH,KAAC,CAAC,CAAA;AAEF,IAAA,OAAO,MAAM,CAAA;AACf,CAAC;;AClID,MAAM,QAAQ,GAAa,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,KAAI;IACpD,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;AAC3D,IAAA,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,sBAAsB,CAAC;QACnD,MAAM;QACN,WAAW,EAAE,OAAO,CAAC,WAAW;AACjC,KAAA,CAAC,CAAA;;AAGF,IAAA,MAAM,eAAe,GAAG;AACtB,QAAA,UAAU,EAAE,OAAO;AACnB,QAAA,iBAAiB,EAAE,QAAQ;AAC3B,QAAA,SAAS,EAAEF,uBAAqB,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,EAAEC,WAAM,CAAC,GAAG,CAAC,CAAC;QACxE,MAAM;KACP,CAAA;AAED,IAAA,OAAO,eAAe,CAAA;AACxB,CAAC;;ACfD,MAAM,QAAQ,GAAkB,CAAC,EAAE,QAAQ,GAAGE,aAAY,EAAE,GAAG,KAAK,EAAE,KAAI;AACxE,IAAA,MAAM,GAAG,GAAGC,gBAAU,CAAYC,YAAc,CAAC,CAAA;IAEjD,MAAM,EACJ,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,GACT,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAA;AAElC,IAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,IAAI,KAAK,MAAM,GAAG,IAAI,KAAK,MAAM,CAAA;AAE3D,IAAA,QACEC,yBAAA,CAAA,aAAA,CAAC,mBAAmB,EAAA,EAClB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,CAAC,MAAM,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAEjB,EAAA,QAAQ,CACW,EACvB;AACH;;ACzCO,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,CAAU,CAAA;AAEpE,MAAM,WAAW,GAAG;AACzB,IAAA,KAAK,EAAE,IAAI;AACX,IAAA,IAAI,EAAE,IAAI;CACF,CAAA;AAEH,MAAM,oBAAoB,GAAG;AAClC,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,KAAK,EAAE,MAAM;CACL,CAAA;AAEH,MAAM,WAAW,GAAG;IACzB,UAAU;IACV,UAAU;IACV,OAAO;IACP,MAAM;IACN,WAAW;IACX,UAAU;IACV,WAAW;IACX,QAAQ;CACA,CAAA;AAEH,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAA;AAC1D,MAAM,WAAW,GAAG,CAAC,GAAG,YAAY,EAAE,SAAS,CAAU,CAAA;AAEzD,MAAM,iBAAiB,GAAG;AAC/B,IAAA,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;AAC3B,IAAA,GAAG,WAAW;AACd,IAAA,GAAG,WAAW;CACN;;AClBV,MAAM,eAAe,GAAoB,CAAC,EAAE,QAAQ,EAAE,KAAI;AACxD,IAAA,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAGF,gBAAU,CAACC,YAAO,CAAQ,CAAA;AAC5E,IAAA,MAAM,IAAI,GAAG,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;AAC/D,IAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC,OAAO,GAAG,OAAO,CAAA;AAC5C,IAAA,MAAM,OAAO,GAAG,CAAC,MAAM,CAAA;IAEvB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AACzC,CAAC;;ACTM,MAAM,eAAe,GAAoB,CAAC,KAAK,EAAE,QAAQ,KAAI;IAClE,MAAM,MAAM,GAAG,EAAS,CAAA;AAExB,IAAA,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;QAC7C,IAAI,QAAQ,CAAC,GAAG,CAAC;AAAE,YAAA,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AACxC,KAAC,CAAC,CAAA;AAEF,IAAA,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAUM,MAAM,qBAAqB,GAChC,CAAC,OAAO,KAAK,CAAC,IAAI,KAAI;IACpB,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,IAAIP,YAAO,CAAC,OAAO,CAAC;AAAE,QAAA,OAAO,MAAM,CAAA;;;IAInC,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAChD,MAAM,CACP,CAAA;AACH,CAAC,CAAA;AAkBI,MAAM,qBAAqB,GAChC,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,KAC3B,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAI;IACxB,MAAM,MAAM,GAAG,EAAE,CAAA;;;IAIjB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACvC,QAAA,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;AAC9B,QAAA,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;;AAGvC,QAAA,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;AAC7D,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAA;AAC1B,SAAA;;;AAGI,aAAA,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,UAAU,CAAC,EAAE;AAC/C,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAA;AAC1B,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,CAAA;AACzB,SAAA;AACH,KAAC,CAAC,CAAA;;AAGF,IAAA,IAAI,WAAW,EAAE;QACf,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAA;AAE9C,QAAA,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;;;AAG9C,YAAA,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;;YAGjC,IAAI,CAAC,KAAK,EAAE;AACV,gBAAA,IAAI,iBAAiB,CAAA;gBACrB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAQ,CAAC,CAAA;AAEpD,gBAAA,IAAI,UAAU,EAAE;AACd,oBAAA,iBAAiB,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,KACvC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CACvB,CAAA;AACF,iBAAA;AAAM,qBAAA;;;oBAGL,iBAAiB,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,KAAI;wBACzC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC;AAAE,4BAAA,OAAO,GAAG,CAAA;AACpD,wBAAA,OAAO,KAAK,CAAA;AACd,qBAAC,CAAC,CAAA;AACH,iBAAA;AAED,gBAAA,MAAM,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAA;AAChC,aAAA;AACH,SAAC,CAAC,CAAA;AACH,KAAA;AAED,IAAA,OAAO,MAAM,CAAA;AACf,CAAC;;AClHH;AAoBA,MAAM,cAAc,GAAmB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAI;;;;;;AAM7D,IAAA,MAAM,sBAAsB,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAE3D,IAAA,MAAM,QAAQ,GAAG,CAAC,gBAAgB,KAChCS,gBAAU,CAAW,CAAC,KAAK,EAAE,GAAG,KAAI;QAClC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,CAAC;YACvD,QAAQ;AACT,SAAA,CAAC,CAAA;QAEF,MAAM,eAAe,GAAG,sBAAsB,CAAC;YAC7C,KAAK;YACL,KAAK;AACL,YAAA;+BACEC,kBAAa;gBACb,IAAI;gBACJ,MAAM;gBACN,OAAO;AACR,aAAA;AACF,SAAA,CAAC,CAAA;QAEF,QACEF,yBAAC,CAAA,aAAA,CAAA,gBAAgB,EACE,EAAA,iBAAA,EAAA,GAAG,EAChB,GAAA,eAAe,EACf,GAAA,KAAK,EACT,CAAA,EACH;AACH,KAAC,CAAC,CAAA;AAEJ,IAAA,OAAO,QAAQ,CAAA;AACjB,CAAC;;AC9CD,mBAAeG,mBAAa,CAAW,EAAE,CAAC;;ACL1C,MAAM,4BAA4B,GAAG,CAAC,gBAAgB,KACpDF,gBAAU,CACR,CACE,EACE,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,WAAW,EACX,OAAO,EACP,MAAM,EACN,YAAY,EACZ,GAAG,KAAK,EACT,EACD,GAAG,KACD;;IAEF,MAAM,MAAM,GAAG,cAAc,CAAC;QAC5B,YAAY;QACZ,YAAY;QACZ,SAAS;QACT,WAAW;QACX,OAAO;QACP,MAAM;AACP,KAAA,CAAC,CAAA;AAEF,IAAA,MAAM,YAAY,GAAGG,aAAO,CAC1B,OAAO;AACL,QAAA,GAAG,YAAY;QACf,MAAM,EAAE,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE;AACpD,KAAA,CAAC,EACF,CAAC,YAAY,EAAE,MAAM,CAAC,CACvB,CAAA;IAED,QACEJ,wCAACK,YAAY,CAAC,QAAQ,EAAC,EAAA,KAAK,EAAE,YAAY,EAAA;AACxC,QAAAL,yBAAA,CAAA,aAAA,CAAC,gBAAgB,EACX,EAAA,GAAA,KAAK,EACL,GAAA,MAAM,CAAC,MAAM,EACjB,GAAG,EAAE,GAAG,EACM,cAAA,EAAA,YAAY,EAC1B,CAAA,CACoB,EACzB;AACH,CAAC,CACF;;ACrCI,MAAM,eAAe,GAAoB,CAAC,MAAM,EAAE,GAAG,KAAI;AAC9D,IAAA,IAAI,CAAC,MAAM;AAAE,QAAA,OAAO,EAAE,CAAA;AAEtB,IAAA,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACxC,CAAC;;ACfD;AAiDA,MAAM,SAAS,GAAc,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,KACnD,IAAI,CAAC,MAAM,CACT,CAAC,GAAG,EAAE,IAAI,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EACpE,EAAE,CACH,CAAA;AAEH,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,KACnD,IAAI,CAAC,MAAM,CACT,CAAC,GAAG,EAAE,IAAI,MAAM;AACd,IAAA,GAAG,GAAG;AACN,IAAA,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;CACpD,CAAC,EACF,EAAE,CACH,CAAA;AAEH;AACA;AACA;AACA,MAAM,8BAA8B,GAAG,CAAC,EACtC,OAAO,EACP,aAAa,EACb,IAAI,EACJ,IAAI,GACL,KAAI;AACH,IAAA,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;;QAE7B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,KAAK,EAAE,EAAE,IAAI,CAAC,CAAA;AAC1D,KAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;AACA;AACA;AACA,MAAM,sBAAsB,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAI;AACnD,IAAA,IAAI,CAACR,YAAO,CAAC,IAAI,CAAC,EAAE;AAClB,QAAA,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;AAC7B,KAAA;AACH,CAAC,CAAA;AAaD,MAAM,eAAe,GAAoB,CAAC,IAAI,EAAE,WAAW,KACzD,cAAc,CAAC;AACb,IAAA,GAAG,WAAW;IACd,OAAO,EAAE,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;IACpD,OAAO,EAAE,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;AACpD,IAAA,GAAG,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC;AAC5C,IAAA,GAAG,oBAAoB,CACrB,CAAC,GAAG,WAAW,CAAC,aAAa,EAAE,GAAG,YAAY,CAAC,EAC/C,IAAI,EACJ,WAAW,CACZ;AACF,CAAA,CAAC,CAAA;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,cAAc,GAAwB,CAAC,OAAO,KAAI;AACtD,IAAA,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;AACrC,IAAA,MAAM,EAAE,MAAM,EAAE,GAAGG,WAAM,CAAA;;IAGzB,MAAM,sBAAsB,GAAG,qBAAqB,CAAC;QACnD,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;AACjC,KAAA,CAAC,CAAA;AAEF,IAAA,MAAM,aAAa,GACjB,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAA;;IAGzE,MAAM,gBAAgB,GACpB,SAAS,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK;AAClD,UAAE,SAAS;AACX,UAAE,MAAM,CAAC,SAAS,CAAC,CAAA,CAAA;AACb,UAAA,EAAA,eAAe,CAAC,MAAM,EAAEA,WAAM,CAAC,GAAG,CAAC,CAAA;SACtC,CAAA;;;;AAKP,IAAA,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ;AACtC,UAAEW,4BAAc,CAAC,gBAAgB,CAAC;UAChC,gBAAgB,CAAA;;;;IAKpB,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;SAC5D,MAAM,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,UAAU,CAAC;AAC5C,SAAA,OAAO,EAAE,CAAA;IAEZ,MAAM,SAAS,GAAG,CAACC,cAAmB,CAAC,OAAO,CAAC,EAAE,GAAG,kBAAkB,CAAC,CAAA;;;;;IAMvE,MAAM,iBAAiB,GAAoBN,gBAAU,CACnD,CACE,EACE,eAAe;AACf,IAAA,GAAG,KAAK,EACT,EACD,GAAG,KACD;;;;;;AAMF,QAAA,MAAM,WAAW,GAAGO,YAAM,CAAC,IAAI,CAAC,CAAA;AAEhC,QAAA,IAAI,eAAe;YACjBC,yBAAmB,CAAC,eAAe,EAAE,MAAM,WAAW,CAAC,OAAO,EAAE;gBAC9D,eAAe;AAChB,aAAA,CAAC,CAAA;AAEJ,QAAA,IAAI,GAAG;AAAE,YAAAA,yBAAmB,CAAC,GAAG,EAAE,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;;;;AAKnE,QAAA,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,GAAGX,gBAAU,CAAC,YAAY,CAAC,GAAG,EAAE,CAAA;;;;QAKvE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,CAAA;;;;;QAMhD,MAAM,eAAe,GAAGM,aAAO,CAC7B,MACE,QAAQ,CAAe;YACrB,KAAK;YACL,OAAO;AACP,YAAA,EAAE,EAAE,WAAW;SAChB,CAAC;;QAEJ,CAAC,KAAK,CAAC,CACR,CAAA;AAED,QAAA,MAAM,EACJ,iBAAiB,EACjB,MAAM,EAAE,YAAY,EACpB,UAAU,EACV,SAAS,EAAE,eAAe,GAC3B,GAAG,eAAe,CAAA;QAEnB,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAGA,aAAO,CACnC,MACE,kBAAkB,CAChB,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,EACpD,IAAI,CACL;;QAEH,CAAC,IAAI,CAAC,CACP,CAAA;;;;;;AAOD,QAAA,MAAM,2BAA2B,GAAGA,aAAO,CACzC,MAAM,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,EACpC,EAAE,CACH,CAAA;;;;;;;QAQD,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,UAAU,EAAE,GAA4B;YAC9D,IAAI,OAAO,CAAC,QAAQ;AAClB,kBAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,cAAc,CAAC,CAAC;kBACxD,EAAE,CAAC;AACP,YAAA,GAAG,KAAK;SACT,CAAA;;;;;;QAOD,MAAM,WAAW,GAA4B,sBAAsB,CAAC;AAClE,YAAA,KAAK,EAAE,eAAe,CAAC,UAAU,EAAE,iBAAiB,CAAC;YACrD,UAAU;AACX,SAAA,CAAC,CAAA;;;;;;AAOF,QAAA,MAAM,WAAW,GAAG;AAClB,YAAA,GAAGM,SAAI,CAAC,KAAK,EAAE,WAAW,CAAC;AAC3B,YAAA,GAAG,MAAM;SACV,CAAA;QAED,MAAM,gBAAgB,GAAG,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA;;;;;;;QAQhE,MAAM,WAAW,GAAG,cAAc,CAAC;YACjC,WAAW;YACX,MAAM;YACN,SAAS;AACV,SAAA,CAAC,CAAA;;;;;;;AAQF,QAAA,MAAM,UAAU,GAAG;;;YAGjB,GAAGC,SAAI,CAAC,UAAU,EAAE,CAAC,GAAG,2BAA2B,EAAE,GAAG,WAAW,CAAC,CAAC;;AAErE,YAAA,IAAI,OAAO,CAAC,SAAS,GAAGD,SAAI,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YACjE,GAAG,EAAE,GAAG,IAAI,eAAe,GAAG,WAAW,GAAG,SAAS;;AAErD,YAAA,YAAY,EAAE,WAAW;AACzB,YAAA,YAAY,EAAE,gBAAgB;SAC/B,CAAA;;AAGD,QAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;AACzC,YAAA,UAAU,CAAC,kBAAkB,CAAC,GAAG,aAAa,CAAA;AAC/C,SAAA;AAED,QAAA,OAAOV,yBAAC,CAAA,aAAA,CAAA,eAAe,EAAK,EAAA,GAAA,UAAU,GAAI,CAAA;AAC5C,KAAC,CACF,CAAA;;;;;IAMD,MAAM,eAAe,GAAGY,YAAO,CAAC,GAAG,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAA;AAChE,IAAA,eAAe,CAAC,cAAc,GAAG,IAAI,CAAA;AACrC,IAAA,eAAe,CAAC,WAAW,GAAG,aAAa,CAAA;AAE3C,IAAAC,wCAAoB,CAAC,eAAe,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;;;;AAKxD,IAAA,8BAA8B,CAAC;AAC7B,QAAA,OAAO,EAAE,eAAe;QACxB,aAAa,EAAE,CAAC,GAAG,OAAO,CAAC,aAAa,EAAE,GAAG,WAAW,CAAC;AACzD,QAAA,IAAI,EAAE,eAAe;AACrB,QAAA,IAAI,EAAE,OAAO;AACd,KAAA,CAAC,CAAA;;AAGF,IAAA,eAAe,CAAC,cAAc,GAAG,IAAI,CAAA;AACrC,IAAA,eAAe,CAAC,WAAW,GAAG,aAAa,CAAA;AAC3C,IAAA,eAAe,CAAC,EAAE,GAAG,EAAE,CAAA;;;;;AAMvB,IAAA,sBAAsB,CAAC;QACrB,OAAO,EAAE,eAAe,CAAC,EAAE;QAC3B,IAAI,EAAE,OAAO,CAAC,OAAO;AACtB,KAAA,CAAC,CAAA;IAEF,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,EAAE,KAAI;QACrC,MAAM,MAAM,GAAGH,SAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;AAEtC,QAAA,OAAO,eAAe,CAAC,MAAa,EAAE,OAAO,CAAQ,CAAA;AACvD,KAAC,CAAA;IAED,eAAe,CAAC,OAAO,GAAG,CAAC,IAAI,GAAG,EAAE,KAClC,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,CAAQ,CAAA;AAEpD,IAAA,eAAe,CAAC,mBAAmB,GAAG,CAAC,KAAK,KAAI;AAC9C,QAAA,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAA;QAE5D,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAA;AACH,KAAC,CAAA;IAED,eAAe,CAAC,eAAe,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,KAAI;QACvD,MAAM,MAAM,GAAG,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAClD,KAAK;YACL,KAAK;AACL,YAAA;+BACER,kBAAa;gBACb,IAAI;gBACJ,MAAM,EAAE,IAAI,KAAK,OAAO;gBACxB,OAAO,EAAE,IAAI,KAAK,MAAM;AACzB,aAAA;AACF,SAAA,CAAC,CAAA;AAEF,QAAA,OAAO,MAAM,CAAA;AACf,KAAC,CAAA;AAED,IAAA,OAAO,eAAkC,CAAA;AAC3C,CAAC;;ACzXD,MAAM,kBAAkB,GAAG;AACzB,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,QAAQ,EAAE,SAAS;AACnB,IAAA,QAAQ,EAAE;AACR,QAAA,QAAQ,EAAE,UAAU;AACpB,QAAA,KAAK,EAAE,IAAI;AACZ,KAAA;CACO;;ACRV;AAkCM,MAAA,WAAW,GACf,MACA,CAAC,EAAE,UAAU,GAAGY,kBAAiB,EAAE,WAAW,GAAG,IAAI,EAAE,GAAG,EAAE,KAC5D,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAI;;;;AAItB,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;QAQzC,MAAM,MAAM,GAAW,EAAE,CAAA;QACzB,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,MAAM,CAAC,SAAS,GAAG,6CAA6C,CAAA;AACjE,SAAA;QAED,IAAI,CAAC,IAAI,EAAE;AACT,YAAA,MAAM,CAAC,IAAI,GAAG,wCAAwC,CAAA;AACvD,SAAA;AAED,QAAA,IAAItB,YAAO,CAAC,UAAU,CAAC,EAAE;AACvB,YAAA,MAAM,CAAC,UAAU,GAAG,8CAA8C,CAAA;AACnE,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;AAC7C,YAAA,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,KACnD,iBAAiB,CAAC,QAAQ,CAAC,IAAW,CAAC,CACxC,CAAA;AAED,YAAA,IAAI,gBAAgB,EAAE;gBACpB,MAAM,CAAC,iBAAiB,GAAG,CAAA;AACzB,UAAA,EAAAsB,kBAAiB,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAA;AACjC,aAAA;AACF,SAAA;AAED,QAAA,IAAI,CAACtB,YAAO,CAAC,MAAM,CAAC,EAAE;YACpB,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;AACpC,SAAA;AACF,KAAA;AAED,IAAA,OAAO,cAAc,CAAC;QACpB,IAAI;QACJ,SAAS;QACT,WAAW;QACX,UAAU;AACV,QAAA,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC;AAClC,QAAA,eAAe,EAAE,mBAAmB,CAAC,UAAU,CAAC;AAChD,QAAA,SAAS,EAAE,qBAAqB,CAAC,UAAU,CAAC;AAC7C,KAAA,CAAC,CAAA;AACJ;;AChFF,MAAM,iBAAiB,GAAsB,CAAC,SAAS,KAAI;AACzD,IAAA,IACE,SAAS;QACT,OAAO,SAAS,KAAK,QAAQ;AAC7B,QAAA,SAAS,KAAK,IAAI;;AAElB,QAAA,SAAS,CAAC,gBAAgB,CAAC,KAAK,IAAI,EACpC;AACA,QAAA,OAAO,IAAW,CAAA;AACnB,KAAA;AAED,IAAA,OAAO,KAAK,CAAA;AACd;;;;;;;;;;"}
@@ -651,9 +651,11 @@ const rocketstyle = () => ({ dimensions = DEFAULT_DIMENSIONS, useBooleans = true
651
651
  };
652
652
 
653
653
  const isRocketComponent = (component) => {
654
- if (typeof component === 'object' &&
654
+ if (component &&
655
+ typeof component === 'object' &&
655
656
  component !== null &&
656
- component.IS_ROCKETSTYLE) {
657
+ // eslint-disable-next-line dot-notation
658
+ component['IS_ROCKETSTYLE'] === true) {
657
659
  return true;
658
660
  }
659
661
  return false;