@vitus-labs/elements 0.22.0 → 0.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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-elements.umd.min.js","children":[{"name":"src","children":[{"uid":"ea31-217","name":"constants.ts"},{"name":"helpers","children":[{"name":"Wrapper","children":[{"uid":"ea31-219","name":"constants.ts"},{"uid":"ea31-221","name":"utils.ts"},{"uid":"ea31-223","name":"styled.ts"},{"uid":"ea31-225","name":"component.tsx"}]},{"name":"Content","children":[{"uid":"ea31-227","name":"styled.ts"},{"uid":"ea31-229","name":"component.tsx"}]},{"name":"Iterator/component.tsx","uid":"ea31-239"}]},{"name":"Element","children":[{"uid":"ea31-231","name":"constants.ts"},{"uid":"ea31-233","name":"utils.ts"},{"uid":"ea31-235","name":"component.tsx"},{"uid":"ea31-237","name":"withEqualSizeBeforeAfter.tsx"}]},{"name":"List","children":[{"uid":"ea31-241","name":"component.tsx"},{"uid":"ea31-243","name":"withActiveState.tsx"}]},{"name":"Portal/component.ts","uid":"ea31-245"},{"name":"Overlay","children":[{"uid":"ea31-247","name":"context.tsx"},{"uid":"ea31-249","name":"useOverlay.tsx"},{"uid":"ea31-251","name":"component.tsx"}]},{"name":"Text","children":[{"uid":"ea31-253","name":"styled.ts"},{"uid":"ea31-255","name":"component.tsx"}]},{"uid":"ea31-257","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"ea31-217":{"renderedLength":102,"gzipLength":117,"brotliLength":0,"mainUid":"ea31-216"},"ea31-219":{"renderedLength":262,"gzipLength":212,"brotliLength":0,"mainUid":"ea31-218"},"ea31-221":{"renderedLength":117,"gzipLength":132,"brotliLength":0,"mainUid":"ea31-220"},"ea31-223":{"renderedLength":1078,"gzipLength":467,"brotliLength":0,"mainUid":"ea31-222"},"ea31-225":{"renderedLength":1230,"gzipLength":439,"brotliLength":0,"mainUid":"ea31-224"},"ea31-227":{"renderedLength":1756,"gzipLength":649,"brotliLength":0,"mainUid":"ea31-226"},"ea31-229":{"renderedLength":563,"gzipLength":281,"brotliLength":0,"mainUid":"ea31-228"},"ea31-231":{"renderedLength":945,"gzipLength":269,"brotliLength":0,"mainUid":"ea31-230"},"ea31-233":{"renderedLength":142,"gzipLength":118,"brotliLength":0,"mainUid":"ea31-232"},"ea31-235":{"renderedLength":5056,"gzipLength":1163,"brotliLength":0,"mainUid":"ea31-234"},"ea31-237":{"renderedLength":1970,"gzipLength":607,"brotliLength":0,"mainUid":"ea31-236"},"ea31-239":{"renderedLength":7384,"gzipLength":1319,"brotliLength":0,"mainUid":"ea31-238"},"ea31-241":{"renderedLength":587,"gzipLength":309,"brotliLength":0,"mainUid":"ea31-240"},"ea31-243":{"renderedLength":4819,"gzipLength":1096,"brotliLength":0,"mainUid":"ea31-242"},"ea31-245":{"renderedLength":503,"gzipLength":293,"brotliLength":0,"mainUid":"ea31-244"},"ea31-247":{"renderedLength":104,"gzipLength":88,"brotliLength":0,"mainUid":"ea31-246"},"ea31-249":{"renderedLength":13576,"gzipLength":2261,"brotliLength":0,"mainUid":"ea31-248"},"ea31-251":{"renderedLength":919,"gzipLength":437,"brotliLength":0,"mainUid":"ea31-250"},"ea31-253":{"renderedLength":352,"gzipLength":237,"brotliLength":0,"mainUid":"ea31-252"},"ea31-255":{"renderedLength":615,"gzipLength":369,"brotliLength":0,"mainUid":"ea31-254"},"ea31-257":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"mainUid":"ea31-256"}},"nodeMetas":{"ea31-216":{"id":"/src/constants.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-217"},"imported":[],"importedBy":[{"uid":"ea31-234"},{"uid":"ea31-240"},{"uid":"ea31-250"},{"uid":"ea31-244"},{"uid":"ea31-254"}]},"ea31-218":{"id":"/src/helpers/Wrapper/constants.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-219"},"imported":[],"importedBy":[{"uid":"ea31-220"}]},"ea31-220":{"id":"/src/helpers/Wrapper/utils.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-221"},"imported":[{"uid":"ea31-218"}],"importedBy":[{"uid":"ea31-224"}]},"ea31-222":{"id":"/src/helpers/Wrapper/styled.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-223"},"imported":[{"uid":"ea31-265"},{"uid":"ea31-258"}],"importedBy":[{"uid":"ea31-224"}]},"ea31-224":{"id":"/src/helpers/Wrapper/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-225"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-220"},{"uid":"ea31-222"}],"importedBy":[{"uid":"ea31-269"}]},"ea31-226":{"id":"/src/helpers/Content/styled.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-227"},"imported":[{"uid":"ea31-265"},{"uid":"ea31-258"}],"importedBy":[{"uid":"ea31-228"}]},"ea31-228":{"id":"/src/helpers/Content/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-229"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-226"}],"importedBy":[{"uid":"ea31-270"}]},"ea31-230":{"id":"/src/Element/constants.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-231"},"imported":[],"importedBy":[{"uid":"ea31-232"}]},"ea31-232":{"id":"/src/Element/utils.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-233"},"imported":[{"uid":"ea31-230"}],"importedBy":[{"uid":"ea31-234"}]},"ea31-234":{"id":"/src/Element/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-235"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-265"},{"uid":"ea31-216"},{"uid":"ea31-266"},{"uid":"ea31-232"}],"importedBy":[{"uid":"ea31-259"}]},"ea31-236":{"id":"/src/Element/withEqualSizeBeforeAfter.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-237"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-265"}],"importedBy":[{"uid":"ea31-259"}]},"ea31-238":{"id":"/src/helpers/Iterator/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-239"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-265"}],"importedBy":[{"uid":"ea31-267"}]},"ea31-240":{"id":"/src/List/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-241"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-265"},{"uid":"ea31-216"},{"uid":"ea31-259"},{"uid":"ea31-267"}],"importedBy":[{"uid":"ea31-260"}]},"ea31-242":{"id":"/src/List/withActiveState.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-243"},"imported":[{"uid":"ea31-264"}],"importedBy":[{"uid":"ea31-260"}]},"ea31-244":{"id":"/src/Portal/component.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-245"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-268"},{"uid":"ea31-216"}],"importedBy":[{"uid":"ea31-262"}]},"ea31-246":{"id":"/src/Overlay/context.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-247"},"imported":[{"uid":"ea31-264"}],"importedBy":[{"uid":"ea31-250"},{"uid":"ea31-248"}]},"ea31-248":{"id":"/src/Overlay/useOverlay.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-249"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-265"},{"uid":"ea31-258"},{"uid":"ea31-246"}],"importedBy":[{"uid":"ea31-261"},{"uid":"ea31-250"}]},"ea31-250":{"id":"/src/Overlay/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-251"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-265"},{"uid":"ea31-216"},{"uid":"ea31-262"},{"uid":"ea31-248"},{"uid":"ea31-246"}],"importedBy":[{"uid":"ea31-261"}]},"ea31-252":{"id":"/src/Text/styled.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-253"},"imported":[{"uid":"ea31-265"},{"uid":"ea31-258"}],"importedBy":[{"uid":"ea31-254"}]},"ea31-254":{"id":"/src/Text/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-255"},"imported":[{"uid":"ea31-264"},{"uid":"ea31-216"},{"uid":"ea31-252"}],"importedBy":[{"uid":"ea31-263"}]},"ea31-256":{"id":"/src/index.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"ea31-257"},"imported":[{"uid":"ea31-258"},{"uid":"ea31-259"},{"uid":"ea31-260"},{"uid":"ea31-261"},{"uid":"ea31-262"},{"uid":"ea31-263"}],"importedBy":[],"isEntry":true},"ea31-258":{"id":"@vitus-labs/unistyle","moduleParts":{},"imported":[],"importedBy":[{"uid":"ea31-256"},{"uid":"ea31-248"},{"uid":"ea31-252"},{"uid":"ea31-222"},{"uid":"ea31-226"}],"isExternal":true},"ea31-259":{"id":"/src/Element/index.ts","moduleParts":{},"imported":[{"uid":"ea31-234"},{"uid":"ea31-236"}],"importedBy":[{"uid":"ea31-256"},{"uid":"ea31-240"}]},"ea31-260":{"id":"/src/List/index.ts","moduleParts":{},"imported":[{"uid":"ea31-240"},{"uid":"ea31-242"}],"importedBy":[{"uid":"ea31-256"}]},"ea31-261":{"id":"/src/Overlay/index.ts","moduleParts":{},"imported":[{"uid":"ea31-250"},{"uid":"ea31-248"}],"importedBy":[{"uid":"ea31-256"}]},"ea31-262":{"id":"/src/Portal/index.ts","moduleParts":{},"imported":[{"uid":"ea31-244"}],"importedBy":[{"uid":"ea31-256"},{"uid":"ea31-250"}]},"ea31-263":{"id":"/src/Text/index.ts","moduleParts":{},"imported":[{"uid":"ea31-254"}],"importedBy":[{"uid":"ea31-256"}]},"ea31-264":{"id":"react","moduleParts":{},"imported":[],"importedBy":[{"uid":"ea31-234"},{"uid":"ea31-236"},{"uid":"ea31-240"},{"uid":"ea31-242"},{"uid":"ea31-250"},{"uid":"ea31-248"},{"uid":"ea31-244"},{"uid":"ea31-254"},{"uid":"ea31-246"},{"uid":"ea31-238"},{"uid":"ea31-224"},{"uid":"ea31-228"}],"isExternal":true},"ea31-265":{"id":"@vitus-labs/core","moduleParts":{},"imported":[],"importedBy":[{"uid":"ea31-234"},{"uid":"ea31-236"},{"uid":"ea31-240"},{"uid":"ea31-250"},{"uid":"ea31-248"},{"uid":"ea31-252"},{"uid":"ea31-238"},{"uid":"ea31-222"},{"uid":"ea31-226"}],"isExternal":true},"ea31-266":{"id":"/src/helpers/index.ts","moduleParts":{},"imported":[{"uid":"ea31-269"},{"uid":"ea31-270"}],"importedBy":[{"uid":"ea31-234"}]},"ea31-267":{"id":"/src/helpers/Iterator/index.ts","moduleParts":{},"imported":[{"uid":"ea31-238"}],"importedBy":[{"uid":"ea31-240"}]},"ea31-268":{"id":"react-dom","moduleParts":{},"imported":[],"importedBy":[{"uid":"ea31-244"}],"isExternal":true},"ea31-269":{"id":"/src/helpers/Wrapper/index.ts","moduleParts":{},"imported":[{"uid":"ea31-224"}],"importedBy":[{"uid":"ea31-266"}]},"ea31-270":{"id":"/src/helpers/Content/index.ts","moduleParts":{},"imported":[{"uid":"ea31-228"}],"importedBy":[{"uid":"ea31-266"}]}},"env":{"rollup":"2.66.0"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
6427
+ const data = {"version":2,"tree":{"name":"root","children":[{"name":"vitus-labs-elements.umd.min.js","children":[{"name":"src","children":[{"uid":"5ec3-217","name":"constants.ts"},{"name":"helpers","children":[{"name":"Wrapper","children":[{"uid":"5ec3-219","name":"constants.ts"},{"uid":"5ec3-221","name":"utils.ts"},{"uid":"5ec3-223","name":"styled.ts"},{"uid":"5ec3-225","name":"component.tsx"}]},{"name":"Content","children":[{"uid":"5ec3-227","name":"styled.ts"},{"uid":"5ec3-229","name":"component.tsx"}]},{"name":"Iterator/component.tsx","uid":"5ec3-239"}]},{"name":"Element","children":[{"uid":"5ec3-231","name":"constants.ts"},{"uid":"5ec3-233","name":"utils.ts"},{"uid":"5ec3-235","name":"component.tsx"},{"uid":"5ec3-237","name":"withEqualSizeBeforeAfter.tsx"}]},{"name":"List","children":[{"uid":"5ec3-241","name":"component.tsx"},{"uid":"5ec3-243","name":"withActiveState.tsx"}]},{"name":"Portal/component.ts","uid":"5ec3-245"},{"name":"Overlay","children":[{"uid":"5ec3-247","name":"context.tsx"},{"uid":"5ec3-249","name":"useOverlay.tsx"},{"uid":"5ec3-251","name":"component.tsx"}]},{"name":"Text","children":[{"uid":"5ec3-253","name":"styled.ts"},{"uid":"5ec3-255","name":"component.tsx"}]},{"uid":"5ec3-257","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"5ec3-217":{"renderedLength":102,"gzipLength":117,"brotliLength":0,"mainUid":"5ec3-216"},"5ec3-219":{"renderedLength":262,"gzipLength":212,"brotliLength":0,"mainUid":"5ec3-218"},"5ec3-221":{"renderedLength":117,"gzipLength":132,"brotliLength":0,"mainUid":"5ec3-220"},"5ec3-223":{"renderedLength":1078,"gzipLength":467,"brotliLength":0,"mainUid":"5ec3-222"},"5ec3-225":{"renderedLength":1230,"gzipLength":439,"brotliLength":0,"mainUid":"5ec3-224"},"5ec3-227":{"renderedLength":1756,"gzipLength":649,"brotliLength":0,"mainUid":"5ec3-226"},"5ec3-229":{"renderedLength":563,"gzipLength":281,"brotliLength":0,"mainUid":"5ec3-228"},"5ec3-231":{"renderedLength":945,"gzipLength":269,"brotliLength":0,"mainUid":"5ec3-230"},"5ec3-233":{"renderedLength":142,"gzipLength":118,"brotliLength":0,"mainUid":"5ec3-232"},"5ec3-235":{"renderedLength":5056,"gzipLength":1163,"brotliLength":0,"mainUid":"5ec3-234"},"5ec3-237":{"renderedLength":1970,"gzipLength":607,"brotliLength":0,"mainUid":"5ec3-236"},"5ec3-239":{"renderedLength":7384,"gzipLength":1319,"brotliLength":0,"mainUid":"5ec3-238"},"5ec3-241":{"renderedLength":587,"gzipLength":309,"brotliLength":0,"mainUid":"5ec3-240"},"5ec3-243":{"renderedLength":4819,"gzipLength":1096,"brotliLength":0,"mainUid":"5ec3-242"},"5ec3-245":{"renderedLength":503,"gzipLength":293,"brotliLength":0,"mainUid":"5ec3-244"},"5ec3-247":{"renderedLength":104,"gzipLength":88,"brotliLength":0,"mainUid":"5ec3-246"},"5ec3-249":{"renderedLength":13576,"gzipLength":2262,"brotliLength":0,"mainUid":"5ec3-248"},"5ec3-251":{"renderedLength":919,"gzipLength":437,"brotliLength":0,"mainUid":"5ec3-250"},"5ec3-253":{"renderedLength":352,"gzipLength":237,"brotliLength":0,"mainUid":"5ec3-252"},"5ec3-255":{"renderedLength":615,"gzipLength":369,"brotliLength":0,"mainUid":"5ec3-254"},"5ec3-257":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"mainUid":"5ec3-256"}},"nodeMetas":{"5ec3-216":{"id":"/src/constants.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-217"},"imported":[],"importedBy":[{"uid":"5ec3-234"},{"uid":"5ec3-240"},{"uid":"5ec3-250"},{"uid":"5ec3-244"},{"uid":"5ec3-254"}]},"5ec3-218":{"id":"/src/helpers/Wrapper/constants.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-219"},"imported":[],"importedBy":[{"uid":"5ec3-220"}]},"5ec3-220":{"id":"/src/helpers/Wrapper/utils.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-221"},"imported":[{"uid":"5ec3-218"}],"importedBy":[{"uid":"5ec3-224"}]},"5ec3-222":{"id":"/src/helpers/Wrapper/styled.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-223"},"imported":[{"uid":"5ec3-265"},{"uid":"5ec3-258"}],"importedBy":[{"uid":"5ec3-224"}]},"5ec3-224":{"id":"/src/helpers/Wrapper/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-225"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-220"},{"uid":"5ec3-222"}],"importedBy":[{"uid":"5ec3-269"}]},"5ec3-226":{"id":"/src/helpers/Content/styled.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-227"},"imported":[{"uid":"5ec3-265"},{"uid":"5ec3-258"}],"importedBy":[{"uid":"5ec3-228"}]},"5ec3-228":{"id":"/src/helpers/Content/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-229"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-226"}],"importedBy":[{"uid":"5ec3-270"}]},"5ec3-230":{"id":"/src/Element/constants.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-231"},"imported":[],"importedBy":[{"uid":"5ec3-232"}]},"5ec3-232":{"id":"/src/Element/utils.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-233"},"imported":[{"uid":"5ec3-230"}],"importedBy":[{"uid":"5ec3-234"}]},"5ec3-234":{"id":"/src/Element/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-235"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-265"},{"uid":"5ec3-216"},{"uid":"5ec3-266"},{"uid":"5ec3-232"}],"importedBy":[{"uid":"5ec3-259"}]},"5ec3-236":{"id":"/src/Element/withEqualSizeBeforeAfter.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-237"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-265"}],"importedBy":[{"uid":"5ec3-259"}]},"5ec3-238":{"id":"/src/helpers/Iterator/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-239"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-265"}],"importedBy":[{"uid":"5ec3-267"}]},"5ec3-240":{"id":"/src/List/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-241"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-265"},{"uid":"5ec3-216"},{"uid":"5ec3-259"},{"uid":"5ec3-267"}],"importedBy":[{"uid":"5ec3-260"}]},"5ec3-242":{"id":"/src/List/withActiveState.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-243"},"imported":[{"uid":"5ec3-264"}],"importedBy":[{"uid":"5ec3-260"}]},"5ec3-244":{"id":"/src/Portal/component.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-245"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-268"},{"uid":"5ec3-216"}],"importedBy":[{"uid":"5ec3-262"}]},"5ec3-246":{"id":"/src/Overlay/context.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-247"},"imported":[{"uid":"5ec3-264"}],"importedBy":[{"uid":"5ec3-250"},{"uid":"5ec3-248"}]},"5ec3-248":{"id":"/src/Overlay/useOverlay.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-249"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-265"},{"uid":"5ec3-258"},{"uid":"5ec3-246"}],"importedBy":[{"uid":"5ec3-261"},{"uid":"5ec3-250"}]},"5ec3-250":{"id":"/src/Overlay/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-251"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-265"},{"uid":"5ec3-216"},{"uid":"5ec3-262"},{"uid":"5ec3-248"},{"uid":"5ec3-246"}],"importedBy":[{"uid":"5ec3-261"}]},"5ec3-252":{"id":"/src/Text/styled.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-253"},"imported":[{"uid":"5ec3-265"},{"uid":"5ec3-258"}],"importedBy":[{"uid":"5ec3-254"}]},"5ec3-254":{"id":"/src/Text/component.tsx","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-255"},"imported":[{"uid":"5ec3-264"},{"uid":"5ec3-216"},{"uid":"5ec3-252"}],"importedBy":[{"uid":"5ec3-263"}]},"5ec3-256":{"id":"/src/index.ts","moduleParts":{"vitus-labs-elements.umd.min.js":"5ec3-257"},"imported":[{"uid":"5ec3-258"},{"uid":"5ec3-259"},{"uid":"5ec3-260"},{"uid":"5ec3-261"},{"uid":"5ec3-262"},{"uid":"5ec3-263"}],"importedBy":[],"isEntry":true},"5ec3-258":{"id":"@vitus-labs/unistyle","moduleParts":{},"imported":[],"importedBy":[{"uid":"5ec3-256"},{"uid":"5ec3-248"},{"uid":"5ec3-252"},{"uid":"5ec3-222"},{"uid":"5ec3-226"}],"isExternal":true},"5ec3-259":{"id":"/src/Element/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-234"},{"uid":"5ec3-236"}],"importedBy":[{"uid":"5ec3-256"},{"uid":"5ec3-240"}]},"5ec3-260":{"id":"/src/List/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-240"},{"uid":"5ec3-242"}],"importedBy":[{"uid":"5ec3-256"}]},"5ec3-261":{"id":"/src/Overlay/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-250"},{"uid":"5ec3-248"}],"importedBy":[{"uid":"5ec3-256"}]},"5ec3-262":{"id":"/src/Portal/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-244"}],"importedBy":[{"uid":"5ec3-256"},{"uid":"5ec3-250"}]},"5ec3-263":{"id":"/src/Text/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-254"}],"importedBy":[{"uid":"5ec3-256"}]},"5ec3-264":{"id":"react","moduleParts":{},"imported":[],"importedBy":[{"uid":"5ec3-234"},{"uid":"5ec3-236"},{"uid":"5ec3-240"},{"uid":"5ec3-242"},{"uid":"5ec3-250"},{"uid":"5ec3-248"},{"uid":"5ec3-244"},{"uid":"5ec3-254"},{"uid":"5ec3-246"},{"uid":"5ec3-238"},{"uid":"5ec3-224"},{"uid":"5ec3-228"}],"isExternal":true},"5ec3-265":{"id":"@vitus-labs/core","moduleParts":{},"imported":[],"importedBy":[{"uid":"5ec3-234"},{"uid":"5ec3-236"},{"uid":"5ec3-240"},{"uid":"5ec3-250"},{"uid":"5ec3-248"},{"uid":"5ec3-252"},{"uid":"5ec3-238"},{"uid":"5ec3-222"},{"uid":"5ec3-226"}],"isExternal":true},"5ec3-266":{"id":"/src/helpers/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-269"},{"uid":"5ec3-270"}],"importedBy":[{"uid":"5ec3-234"}]},"5ec3-267":{"id":"/src/helpers/Iterator/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-238"}],"importedBy":[{"uid":"5ec3-240"}]},"5ec3-268":{"id":"react-dom","moduleParts":{},"imported":[],"importedBy":[{"uid":"5ec3-244"}],"isExternal":true},"5ec3-269":{"id":"/src/helpers/Wrapper/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-224"}],"importedBy":[{"uid":"5ec3-266"}]},"5ec3-270":{"id":"/src/helpers/Content/index.ts","moduleParts":{},"imported":[{"uid":"5ec3-228"}],"importedBy":[{"uid":"5ec3-266"}]}},"env":{"rollup":"2.66.0"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
6428
6428
 
6429
6429
  const run = () => {
6430
6430
  const width = window.innerWidth;
@@ -777,7 +777,7 @@ offsetX = 0, offsetY = 0, throttleDelay = 200, customScrollListener, closeOnEsc
777
777
  useEffect(() => {
778
778
  // enable overlay manipulation only when the state is NOT blocked=true
779
779
  // nor in disabled state
780
- if (!blocked || !disabled) {
780
+ if (!blocked && !disabled) {
781
781
  if (openOn === 'click' ||
782
782
  closeOn === 'click' ||
783
783
  closeOn === 'clickOnTrigger' ||
@@ -1 +1 @@
1
- {"version":3,"file":"vitus-labs-elements.browser.js","sources":["../src/constants.ts","../src/helpers/Wrapper/constants.ts","../src/helpers/Wrapper/utils.ts","../src/helpers/Wrapper/styled.ts","../src/helpers/Wrapper/component.tsx","../src/helpers/Content/styled.ts","../src/helpers/Content/component.tsx","../src/Element/constants.ts","../src/Element/utils.ts","../src/Element/component.tsx","../src/Element/withEqualSizeBeforeAfter.tsx","../src/helpers/Iterator/component.tsx","../src/List/component.tsx","../src/List/withActiveState.tsx","../src/Portal/component.ts","../src/Overlay/context.tsx","../src/Overlay/useOverlay.tsx","../src/Overlay/component.tsx","../src/Text/styled.ts","../src/Text/component.tsx"],"sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nexport const PKG_NAME = '@vitus-labs/elements' as const\n","/* eslint-disable import/prefer-default-export */\n// https://stackoverflow.com/questions/35464067/flexbox-not-working-on-button-or-fieldset-elements\nexport const INLINE_ELEMENTS_FLEX_FIX = {\n button: true,\n fieldset: true,\n legend: true,\n}\n","/* eslint-disable import/prefer-default-export */\nimport { INLINE_ELEMENTS_FLEX_FIX } from './constants'\n\ntype IsWebFixNeeded = (tag: string) => boolean\nexport const isWebFixNeeded: IsWebFixNeeded = (tag) =>\n INLINE_ELEMENTS_FLEX_FIX[tag]\n","import { config } from '@vitus-labs/core'\nimport { alignContent, extendCss, makeItResponsive } from '@vitus-labs/unistyle'\n\nconst styles = ({ theme: t, css }) => css`\n ${__WEB__ &&\n css`\n ${({ $childFix }) =>\n !$childFix &&\n css`\n display: ${t.block ? 'flex' : 'inline-flex'};\n `};\n\n ${({ $parentFix }) =>\n $parentFix &&\n t.block &&\n css`\n flex-direction: column;\n width: 100%;\n `};\n `};\n\n ${__WEB__ &&\n t.contentAlignY === 'block' &&\n css`\n height: 100%;\n `};\n\n ${alignContent({\n direction: t.direction,\n alignX: t.alignX,\n alignY: t.alignY,\n })};\n\n ${t.block &&\n css`\n align-self: stretch;\n `}\n\n ${t.extraStyles && extendCss(t.extraStyles)};\n`\n\nconst platformStyles = __WEB__\n ? config.css`\n box-sizing: border-box;\n `\n : config.css`\n display: flex;\n `\n\nexport default config.styled(config.component)`\n position: relative;\n ${platformStyles};\n\n ${({ $childFix }) =>\n $childFix &&\n config.css`\n display: flex;\n flex: 1;\n width: 100%;\n height: 100%;\n `};\n\n ${makeItResponsive({\n key: '$element',\n styles,\n css: config.css,\n normalize: true,\n })};\n`\n","import React, { forwardRef, ReactNode } from 'react'\nimport type { StyledComponentPropsWithRef } from 'styled-components'\nimport type {\n Direction,\n AlignX,\n AlignY,\n ResponsiveBooltype,\n ExtendCss,\n} from '~/types'\nimport { isWebFixNeeded } from './utils'\nimport Styled from './styled'\n\ntype Reference = unknown\n\ntype Props = {\n children: ReactNode\n tag: StyledComponentPropsWithRef<any>\n block: ResponsiveBooltype\n isInline: boolean\n direction: Direction\n alignX: AlignX\n alignY: AlignY\n equalCols: ResponsiveBooltype\n extendCss: ExtendCss\n dangerouslySetInnerHTML: any\n}\n\nconst component = forwardRef<Reference, Partial<Props>>(\n (\n {\n children,\n tag,\n block,\n extendCss,\n direction,\n alignX,\n alignY,\n equalCols,\n isInline,\n ...props\n },\n ref\n ) => {\n const debugProps =\n process.env.NODE_ENV !== 'production'\n ? {\n 'data-vl-element': 'Element',\n }\n : {}\n\n const COMMON_PROPS = {\n ...props,\n ...debugProps,\n ref,\n as: tag,\n }\n\n const needsFix = __WEB__\n ? !props.dangerouslySetInnerHTML && tag && isWebFixNeeded(tag)\n : false\n\n if (!needsFix || __NATIVE__) {\n return (\n <Styled\n {...COMMON_PROPS}\n $element={{\n block,\n direction,\n alignX,\n alignY,\n equalCols,\n extraStyles: extendCss,\n }}\n >\n {children}\n </Styled>\n )\n }\n\n return (\n <Styled\n {...COMMON_PROPS}\n $parentFix\n $element={{\n block,\n extraStyles: extendCss,\n }}\n >\n <Styled\n as={isInline ? 'span' : 'div'}\n $childFix\n $element={{\n direction,\n alignX,\n alignY,\n equalCols,\n }}\n >\n {children}\n </Styled>\n </Styled>\n )\n }\n)\n\nexport default component\n","import { config } from '@vitus-labs/core'\nimport {\n makeItResponsive,\n alignContent,\n extendCss,\n value,\n} from '@vitus-labs/unistyle'\n\n// --------------------------------------------------------\n// calculate spacing between before / content / after\n// --------------------------------------------------------\nconst calculateGap = ({ direction, type, value, css }) => {\n if (!direction || !type) return undefined\n\n const data = {\n inline: {\n before: 'margin-right',\n after: 'margin-left',\n },\n rows: {\n before: 'margin-bottom',\n after: 'margin-top',\n },\n }\n\n const finalStyles = `${data[direction][type]}: ${value};`\n\n return css`\n ${finalStyles};\n `\n}\n\n// --------------------------------------------------------\n// calculations of styles to be rendered\n// --------------------------------------------------------\nconst styles = ({ css, theme: t, rootSize }) => css`\n ${alignContent({\n direction: t.direction,\n alignX: t.alignX,\n alignY: t.alignY,\n })};\n\n ${t.equalCols &&\n css`\n flex: 1;\n `};\n\n ${t.gap &&\n css`\n ${({ $contentType }) =>\n calculateGap({\n direction: t.parentDirection,\n type: $contentType,\n value: value([t.gap], rootSize),\n css,\n })}\n `};\n\n ${t.extraStyles && extendCss(t.extraStyles)};\n`\n\nexport default config.styled(config.component)`\n ${\n __WEB__ &&\n config.css`\n box-sizing: border-box;\n `\n };\n\n display: flex;\n align-self: stretch;\n flex-wrap: wrap;\n\n ${({ $contentType }) =>\n $contentType === 'content' &&\n config.css`\n flex: 1;\n `};\n\n ${makeItResponsive({\n key: '$element',\n styles,\n css: config.css,\n normalize: true,\n })};\n`\n","import React, { memo, VFC, ReactNode } from 'react'\nimport type { StyledComponentPropsWithRef } from 'styled-components'\nimport type {\n Direction,\n AlignX,\n AlignY,\n ResponsiveBooltype,\n Responsive,\n ExtendCss,\n} from '~/types'\nimport Styled from './styled'\n\ntype Props = {\n parentDirection: Direction\n gap: Responsive\n contentType: 'before' | 'content' | 'after'\n children: ReactNode\n tag: StyledComponentPropsWithRef<any>\n direction: Direction\n alignX: AlignX\n alignY: AlignY\n equalCols: ResponsiveBooltype\n extendCss: ExtendCss\n}\n\nconst component: VFC<Partial<Props>> = ({\n contentType,\n tag,\n parentDirection,\n direction,\n alignX,\n alignY,\n equalCols,\n gap,\n extendCss,\n ...props\n}) => {\n const debugProps =\n process.env.NODE_ENV !== 'production'\n ? {\n 'data-vl-element': contentType,\n }\n : {}\n\n return (\n <Styled\n as={tag}\n $contentType={contentType}\n $element={{\n parentDirection,\n direction,\n alignX,\n alignY,\n equalCols,\n gap,\n extraStyles: extendCss,\n }}\n {...debugProps}\n {...props}\n />\n )\n}\n\nexport default memo(component)\n","export const RESERVED_PROPS = [\n 'innerRef',\n 'tag',\n 'block',\n 'label',\n 'children',\n 'beforeContent',\n 'afterContent',\n\n 'equalCols',\n 'vertical',\n 'direction',\n 'alignX',\n 'alignY',\n\n 'css',\n 'contentCss',\n 'beforeContentCss',\n 'afterContentCss',\n\n 'contentDirection',\n 'contentAlignX',\n 'contentAlignY',\n\n 'beforeContentDirection',\n 'beforeContentAlignX',\n 'beforeContentAlignY',\n\n 'afterContentDirection',\n 'afterContentAlignX',\n 'afterContentAlignY',\n] as const\n\nexport const INLINE_ELEMENTS = {\n span: true,\n a: true,\n button: true,\n input: true,\n label: true,\n select: true,\n textarea: true,\n br: true,\n img: true,\n strong: true,\n small: true,\n code: true,\n b: true,\n big: true,\n i: true,\n tt: true,\n abbr: true,\n acronym: true,\n cite: true,\n dfn: true,\n em: true,\n kbd: true,\n samp: true,\n var: true,\n bdo: true,\n map: true,\n object: true,\n q: true,\n script: true,\n sub: true,\n sup: true,\n}\n\nexport const EMPTY_ELEMENTS = {\n area: true,\n base: true,\n br: true,\n col: true,\n embed: true,\n hr: true,\n img: true,\n input: true,\n keygen: true,\n link: true,\n // 'meta': true,\n // 'param': true,\n source: true,\n track: true,\n wbr: true,\n}\n","import { INLINE_ELEMENTS, EMPTY_ELEMENTS } from './constants'\n\n// type Value<T = unknown> = T extends true ? 'rows' : 'inline'\n\n// type TransformVerticalProp = <\n// T extends boolean | Record<string, boolean> | Array<boolean>\n// >(\n// vertical: T\n// ) => T extends boolean\n// ? Value<T>\n// : T extends Record<string, boolean>\n// ? Record<keyof T, Value<T[keyof T]>>\n// : T extends Array<boolean>\n// ? Array<Value<T[number]>>\n// : T\n\n// export const transformVerticalProp: TransformVerticalProp = (vertical) => {\n// // eslint-disable-next-line @typescript-eslint/no-explicit-any\n// if (vertical == null) return undefined as any\n\n// const verticalType = typeof vertical\n\n// // vertical is a boolean value\n// if (verticalType === 'boolean') {\n// return vertical ? 'rows' : 'inline'\n// }\n\n// if (Array.isArray(vertical)) {\n// return (vertical as Array<boolean>).map((item) =>\n// item ? 'rows' : 'inline'\n// )\n// }\n\n// if (verticalType === 'object') {\n// return Object.keys(vertical).reduce((accumulator, item) => {\n// // eslint-disable-next-line no-param-reassign\n// accumulator[item] = vertical[item] ? 'rows' : 'inline'\n// return accumulator\n// }, {} as Record<string, 'rows' | 'inline'>)\n// }\n\n// return undefined\n// }\n\ntype GetValue = (tag?: string) => boolean\n\nexport const isInlineElement: GetValue = (tag) =>\n tag ? INLINE_ELEMENTS[tag] : false\n\nexport const getShouldBeEmpty: GetValue = (tag) =>\n tag ? EMPTY_ELEMENTS[tag] : false\n","import React, { forwardRef, useMemo } from 'react'\nimport { renderContent } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport { Wrapper, Content } from '~/helpers'\nimport type { VLForwardedComponent } from '~/types'\nimport { isInlineElement, getShouldBeEmpty } from './utils'\n\nimport type { Props } from './types'\n\nconst defaultDirection = 'inline'\nconst defaultContentDirection = 'rows'\nconst defaultAlignX = 'left'\nconst defaultAlignY = 'center'\n\nconst component: VLForwardedComponent<Props> = forwardRef(\n (\n {\n innerRef,\n tag,\n label,\n content,\n children,\n beforeContent,\n afterContent,\n\n block,\n equalCols,\n gap,\n\n direction,\n alignX = defaultAlignX,\n alignY = defaultAlignY,\n\n css,\n contentCss,\n beforeContentCss,\n afterContentCss,\n\n contentDirection = defaultContentDirection,\n contentAlignX = defaultAlignX,\n contentAlignY = defaultAlignY,\n\n beforeContentDirection = defaultDirection,\n beforeContentAlignX = defaultAlignX,\n beforeContentAlignY = defaultAlignY,\n\n afterContentDirection = defaultDirection,\n afterContentAlignX = defaultAlignX,\n afterContentAlignY = defaultAlignY,\n\n ...props\n },\n ref\n ) => {\n // --------------------------------------------------------\n // check if should render only single element\n // --------------------------------------------------------\n const shouldBeEmpty =\n !!props.dangerouslySetInnerHTML ||\n (__WEB__ && tag && getShouldBeEmpty(tag))\n\n // --------------------------------------------------------\n // common wrapper props\n // --------------------------------------------------------\n const WRAPPER_PROPS = {\n ref: ref || innerRef,\n extendCss: css,\n tag,\n block,\n contentDirection,\n alignX: contentAlignX,\n alignY: contentAlignY,\n as: undefined, // reset styled-components `as` prop\n }\n\n // --------------------------------------------------------\n // return simple/empty element like input\n // --------------------------------------------------------\n if (shouldBeEmpty) return <Wrapper {...WRAPPER_PROPS} {...props} />\n\n // --------------------------------------------------------\n // if not single element, calculate values\n // --------------------------------------------------------\n const isSimpleElement = !beforeContent && !afterContent\n const CHILDREN = children || content || label\n\n const isInline = __WEB__ ? isInlineElement(tag) : false\n const SUB_TAG = __WEB__ && isInline ? 'span' : undefined\n\n // --------------------------------------------------------\n // direction & alignX & alignY calculations\n // --------------------------------------------------------\n const calculateDirection = useMemo(() => {\n let wrapperDirection: typeof direction\n let wrapperAlignX: typeof alignX = alignX\n let wrapperAlignY: typeof alignY = alignY\n\n if (isSimpleElement) {\n if (contentDirection) wrapperDirection = contentDirection\n if (contentAlignX) wrapperAlignX = contentAlignX\n if (contentAlignY) wrapperAlignY = contentAlignY\n } else if (direction) {\n wrapperDirection = direction\n } else {\n wrapperDirection = defaultDirection\n }\n\n return { wrapperDirection, wrapperAlignX, wrapperAlignY }\n }, [\n isSimpleElement,\n contentDirection,\n contentAlignX,\n contentAlignY,\n direction,\n ])\n\n const { wrapperDirection, wrapperAlignX, wrapperAlignY } =\n calculateDirection\n\n const beforeContentRenderOutput = useMemo(\n () => renderContent(beforeContent),\n [beforeContent]\n )\n\n const afterContentRenderOutput = useMemo(\n () => renderContent(afterContent),\n [afterContent]\n )\n\n const contentRenderOutput = useMemo(\n () => renderContent(CHILDREN),\n [CHILDREN]\n )\n\n return (\n <Wrapper\n {...props}\n {...WRAPPER_PROPS}\n isInline={isInline}\n direction={wrapperDirection}\n alignX={wrapperAlignX}\n alignY={wrapperAlignY}\n >\n {beforeContent && (\n <Content\n tag={SUB_TAG}\n contentType=\"before\"\n parentDirection={wrapperDirection}\n extendCss={beforeContentCss}\n direction={beforeContentDirection}\n alignX={beforeContentAlignX}\n alignY={beforeContentAlignY}\n equalCols={equalCols}\n gap={gap}\n >\n {beforeContentRenderOutput}\n </Content>\n )}\n\n {isSimpleElement ? (\n contentRenderOutput\n ) : (\n <Content\n tag={SUB_TAG}\n contentType=\"content\"\n parentDirection={wrapperDirection}\n extendCss={contentCss}\n direction={contentDirection}\n alignX={contentAlignX}\n alignY={contentAlignY}\n equalCols={equalCols}\n >\n {contentRenderOutput}\n </Content>\n )}\n\n {afterContent && (\n <Content\n tag={SUB_TAG}\n contentType=\"after\"\n parentDirection={wrapperDirection}\n extendCss={afterContentCss}\n direction={afterContentDirection}\n alignX={afterContentAlignX}\n alignY={afterContentAlignY}\n equalCols={equalCols}\n gap={gap}\n >\n {afterContentRenderOutput}\n </Content>\n )}\n </Wrapper>\n )\n }\n)\n\nconst name = `${PKG_NAME}/Element` as const\n\ncomponent.displayName = name\ncomponent.pkgName = PKG_NAME\ncomponent.VITUS_LABS__COMPONENT = name\n\nexport default component\n","/* eslint-disable no-param-reassign */\nimport React, { createRef } from 'react'\nimport { get } from '@vitus-labs/core'\nimport type { SimpleHoc } from '~/types'\n\nconst isNumber = (a: unknown, b: unknown) =>\n Number.isInteger(a) && Number.isInteger(b)\n\nconst types = {\n height: 'offsetHeight',\n width: 'offsetWidth',\n}\n\ntype Calculate = ({\n beforeContent,\n afterContent,\n}: {\n beforeContent: HTMLElement\n afterContent: HTMLElement\n}) => (type: 'height' | 'width') => void\n\nconst calculate: Calculate =\n ({ beforeContent, afterContent }) =>\n (type: keyof typeof types) => {\n const beforeContentSize = get(beforeContent, types[type])\n const afterContentSize = get(afterContent, types[type])\n\n if (isNumber(beforeContentSize, afterContentSize)) {\n if (beforeContentSize > afterContentSize) {\n beforeContent.style[type] = `${beforeContentSize}px`\n afterContent.style[type] = `${beforeContentSize}px`\n } else {\n beforeContent.style[type] = `${afterContentSize}px`\n afterContent.style[type] = `${afterContentSize}px`\n }\n }\n }\n\ntype Props = Partial<{\n equalBeforeAfter: boolean\n vertical?: boolean\n afterContent?: React.ReactNode\n beforeContent?: React.ReactNode\n}>\n\nconst withEqualBeforeAfter: SimpleHoc<Props> = (WrappedComponent) => {\n const displayName =\n WrappedComponent.displayName || WrappedComponent.name || 'Component'\n\n const Enhanced = (props) => {\n const { equalBeforeAfter, vertical, afterContent, beforeContent, ...rest } =\n props\n const elementRef = createRef<HTMLElement>()\n\n const calculateSize = () => {\n const beforeContent = get(elementRef, 'current.children[0]')\n const afterContent = get(elementRef, 'current.children[2]')\n const updateElement = calculate({ beforeContent, afterContent })\n\n if (vertical) updateElement('height')\n else updateElement('width')\n }\n\n if (equalBeforeAfter) calculateSize()\n\n return (\n <WrappedComponent\n {...rest}\n afterContent={afterContent}\n beforeContent={beforeContent}\n ref={elementRef}\n />\n )\n }\n\n Enhanced.displayName = `withEqualSizeBeforeAfter(${displayName})`\n\n return Enhanced\n}\n\nexport default withEqualBeforeAfter\n","import React, { Children, FC } from 'react'\nimport { renderContent, isEmpty } from '@vitus-labs/core'\nimport type { Props, DataArrayObject, ExtendedProps } from './types'\n\nconst RESERVED_PROPS = [\n 'children',\n 'component',\n 'wrapComponent',\n 'data',\n 'itemKey',\n 'valueName',\n 'itemProps',\n 'wrapProps',\n] as const\n\ntype AttachItemProps = ({\n i,\n length,\n}: {\n i: number\n length: number\n}) => ExtendedProps\n\nconst attachItemProps: AttachItemProps = ({\n i,\n length,\n}: {\n i: number\n length: number\n}) => {\n const position = i + 1\n\n return {\n index: i,\n first: position === 1,\n last: position === length,\n odd: position % 2 === 1,\n even: position % 2 === 0,\n position,\n }\n}\n\ntype Static = {\n isIterator: true\n RESERVED_PROPS: typeof RESERVED_PROPS\n}\n\nconst component: FC<Props> & Static = (props: Props) => {\n const {\n itemKey,\n valueName,\n children,\n component,\n data,\n wrapComponent: Wrapper,\n wrapProps,\n itemProps,\n } = props\n\n const renderedElement = (component, props) => renderContent(component, props)\n\n const injectItemProps =\n typeof itemProps === 'function'\n ? (props, extendedProps) => itemProps(props, extendedProps)\n : () => itemProps\n\n const injectWrapItemProps =\n typeof wrapProps === 'function'\n ? (props, extendedProps) => wrapProps(props, extendedProps)\n : () => wrapProps\n\n // --------------------------------------------------------\n // render children\n // --------------------------------------------------------\n const renderChildren = () => {\n if (!children) return null\n\n const { length } = children\n\n // if no props extension is required, just return children\n if (!itemProps && !Wrapper) return children\n\n return Children.map(children, (item, i) => {\n const key = i\n const extendedProps = attachItemProps({\n i,\n length,\n })\n\n const finalItemProps = itemProps ? injectItemProps({}, extendedProps) : {}\n const finalWrapProps = wrapProps\n ? injectWrapItemProps({}, extendedProps)\n : {}\n\n if (Wrapper) {\n return (\n <Wrapper key={key} {...finalWrapProps}>\n {renderedElement(item, finalItemProps)}\n </Wrapper>\n )\n }\n\n return renderContent(item as any, {\n key: i,\n ...finalItemProps,\n })\n })\n }\n\n // --------------------------------------------------------\n // render array of strings or numbers\n // --------------------------------------------------------\n const renderSimpleArray = (data) => {\n const renderData = data.filter(\n (item) => item !== null || item !== undefined // remove empty values\n )\n const { length } = renderData\n\n // if it's empty\n if (renderData.length === 0) return null\n\n const getKey = (item: string | number, index) => {\n if (typeof itemKey === 'function') return itemKey(item, index)\n\n return index\n }\n\n return renderData.map((item, i) => {\n const key = getKey(item, i)\n const keyName = valueName || 'children'\n const extendedProps = attachItemProps({\n i,\n length,\n })\n\n const finalItemProps = {\n ...(itemProps\n ? injectItemProps({ [keyName]: item }, extendedProps)\n : {}),\n [keyName]: item,\n }\n\n const finalWrapProps = wrapProps\n ? injectWrapItemProps({ [keyName]: item }, extendedProps)\n : {}\n\n if (Wrapper) {\n return (\n <Wrapper key={key} {...finalWrapProps}>\n {renderedElement(component, finalItemProps)}\n </Wrapper>\n )\n }\n\n return renderedElement(component, { key, ...finalItemProps })\n })\n }\n\n // --------------------------------------------------------\n // render array of objects\n // --------------------------------------------------------\n const renderComplexArray = (data) => {\n const renderData = data.filter((item) => !isEmpty(item)) // remove empty objects\n const { length } = renderData\n\n // if it's empty\n if (renderData.length === 0) return null\n\n const getKey = (item: DataArrayObject, index) => {\n if (!itemKey) return item.key || item.id || item.itemId || index\n if (typeof itemKey === 'function') return itemKey(item, index)\n if (typeof itemKey === 'string') return item[itemKey]\n\n return index\n }\n\n return renderData.map((item, i) => {\n const { component: itemComponent, ...restItem } = item as DataArrayObject\n const renderItem = itemComponent || component\n const key = getKey(restItem, i)\n const extendedProps = attachItemProps({\n i,\n length,\n })\n\n const finalItemProps = {\n ...(itemProps ? injectItemProps(item, extendedProps) : {}),\n ...restItem,\n }\n\n const finalWrapProps = wrapProps\n ? injectWrapItemProps(item, extendedProps)\n : {}\n\n if (Wrapper && !itemComponent) {\n return (\n <Wrapper key={key} {...finalWrapProps}>\n {renderedElement(renderItem, finalItemProps)}\n </Wrapper>\n )\n }\n\n return renderedElement(renderItem, { key, ...finalItemProps })\n })\n }\n\n // --------------------------------------------------------\n // render list items\n // --------------------------------------------------------\n const renderItems = () => {\n // --------------------------------------------------------\n // children have priority over props component + data\n // --------------------------------------------------------\n if (children) return renderChildren()\n\n // --------------------------------------------------------\n // render props component + data\n // --------------------------------------------------------\n if (component && Array.isArray(data)) {\n const clearData = data.filter(\n (item) => item !== null && item !== undefined\n )\n\n const isSimpleArray = clearData.every(\n (item) => typeof item === 'string' || typeof item === 'number'\n )\n\n if (isSimpleArray) return renderSimpleArray(clearData)\n\n const isComplexArray = clearData.every((item) => typeof item === 'object')\n\n if (isComplexArray) return renderComplexArray(clearData)\n\n return null\n }\n\n // --------------------------------------------------------\n // if there are no children or valid react component and data as an array,\n // return null to prevent error\n // --------------------------------------------------------\n return null\n }\n\n return renderItems()\n}\n\ncomponent.isIterator = true\ncomponent.RESERVED_PROPS = RESERVED_PROPS\n\nexport default component\n","import React, { forwardRef } from 'react'\nimport { pick, omit } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport Element, { Props as ElementProps } from '~/Element'\nimport Iterator, { Props as IteratorProps } from '~/helpers/Iterator'\nimport type { MergeTypes, VLForwardedComponent } from '~/types'\n\nexport type Props = MergeTypes<\n [\n ElementProps,\n IteratorProps,\n {\n rootElement?: boolean\n label: never\n content: never\n }\n ]\n>\n\nconst Component: VLForwardedComponent<Props> = forwardRef(\n ({ rootElement = false, ...props }, ref) => {\n const renderedList = <Iterator {...pick(props, Iterator.RESERVED_PROPS)} />\n\n if (!rootElement) return renderedList\n\n return (\n <Element ref={ref} {...omit(props, Iterator.RESERVED_PROPS)}>\n {renderedList}\n </Element>\n )\n }\n)\n\nconst name = `${PKG_NAME}/List` as const\n\nComponent.displayName = name\nComponent.pkgName = PKG_NAME\nComponent.VITUS_LABS__COMPONENT = name\n\nexport default Component\n","import React, { useState, useEffect } from 'react'\nimport type { SimpleHoc } from '~/types'\n\nconst RESERVED_KEYS = [\n 'type',\n 'activeItems',\n 'itemProps',\n 'activeItemRequired',\n] as const\n\ntype Key = string | number\ntype MultipleMap = Map<Key, boolean>\n\ntype ItemPropsData = {\n key: Key\n first: boolean\n last: boolean\n odd: boolean\n even: boolean\n position: number\n}\n\ntype Props = {\n type?: 'single' | 'multi'\n activeItemRequired?: boolean\n activeItems?: Key | Array<string | number>\n itemProps?:\n | Record<string, unknown>\n | ((props: Record<string, unknown>) => Record<string, unknown>)\n}\n\nconst Component: SimpleHoc<Props> = (WrappedComponent) => {\n const displayName =\n WrappedComponent.displayName || WrappedComponent.name || 'Component'\n\n const Enhanced = (props) => {\n const {\n type = 'single',\n activeItemRequired,\n activeItems,\n itemProps = {},\n ...rest\n } = props\n\n type InitActiveItems = () => Key | MultipleMap | undefined\n const initActiveItems: InitActiveItems = () => {\n if (type === 'single') {\n if (Array.isArray(activeItems)) {\n // eslint-disable-next-line no-console\n console.warn(\n 'Iterator is type of single. activeItems cannot be an array.'\n )\n } else {\n return activeItems\n }\n } else if (type === 'multi') {\n const activeItemsHelper = Array.isArray(activeItems)\n ? activeItems\n : [activeItems]\n\n return new Map(activeItemsHelper.map((id) => [id, true]))\n }\n\n return undefined\n }\n\n const [innerActiveItems, setActiveItems] = useState(initActiveItems())\n\n const countActiveItems = (data) => {\n let result = 0\n\n data.forEach((value) => {\n if (value) result += 1\n })\n\n return result\n }\n\n const updateItemState = (key: Key) => {\n if (type === 'single') {\n setActiveItems((prevState) => {\n if (activeItemRequired) return key\n if (prevState === key) return undefined\n\n return key\n })\n } else if (type === 'multi') {\n setActiveItems((prevState: MultipleMap) => {\n // TODO: add conditional type to fix this\n const activeItems = new Map(prevState)\n\n if (\n activeItemRequired &&\n activeItems.get(key) &&\n countActiveItems(activeItems) === 1\n ) {\n return activeItems\n }\n\n activeItems.set(key, !activeItems.get(key))\n return activeItems\n })\n } else {\n setActiveItems(undefined)\n }\n }\n\n const handleItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n const updateAllItemsState = (status) => {\n if (!status) {\n setActiveItems(new Map())\n }\n }\n\n const setItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n const unsetItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n const toggleItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n // const setAllItemsActive = () => {\n // updateAllItemsState(true)\n // }\n\n const unsetAllItemsActive = () => {\n updateAllItemsState(false)\n }\n\n const isItemActive = (key: Key): boolean => {\n if (!innerActiveItems) return false\n if (type === 'single') return innerActiveItems === key\n if (type === 'multi' && innerActiveItems instanceof Map) {\n return !!innerActiveItems.get(key)\n }\n return false\n }\n\n const attachMultipleProps = {\n unsetAllItemsActive,\n }\n\n const attachItemProps = (props: ItemPropsData) => {\n const { key } = props\n\n const defaultItemProps =\n typeof itemProps === 'object' ? itemProps : itemProps(props)\n\n const result = {\n ...defaultItemProps,\n active: isItemActive(key),\n handleItemActive: () => handleItemActive(key),\n setItemActive,\n unsetItemActive,\n toggleItemActive,\n ...(type === 'multi' ? attachMultipleProps : {}),\n }\n\n return result\n }\n\n useEffect(() => {\n if (type === 'single' && Array.isArray(activeItems)) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.error(\n 'When type=`single` activeItems must be a single value, not an array'\n )\n }\n }\n }, [type, activeItems])\n\n return <WrappedComponent {...rest} itemProps={attachItemProps} />\n }\n Enhanced.RESERVED_KEYS = RESERVED_KEYS\n Enhanced.displayName = `vitus-labs/elements/List/withActiveState(${displayName})`\n\n return Enhanced\n}\n\nexport default Component\n","import { useState, useEffect, ReactNode } from 'react'\nimport ReactDOM from 'react-dom'\nimport { PKG_NAME } from '~/constants'\nimport type { VLComponent } from '~/types'\n\nexport type Props = {\n position?: HTMLElement\n children: ReactNode\n tag?: string\n}\n\nconst component: VLComponent<Props> = ({\n position = __BROWSER__ ? document.body : undefined,\n tag = 'div',\n children,\n}: Props) => {\n const [element] = useState(\n __BROWSER__ ? document.createElement(tag) : undefined\n )\n\n if (!position || !element) return null\n\n useEffect(() => {\n if (__SERVER__) return undefined\n position.appendChild(element)\n\n return () => {\n position.removeChild(element)\n }\n }, [])\n\n return ReactDOM.createPortal(children, element)\n}\n\nconst name = `${PKG_NAME}/Portal` as const\n\ncomponent.displayName = name\ncomponent.pkgName = PKG_NAME\ncomponent.VITUS_LABS__COMPONENT = name\n\nexport default component\n","import React, { FC, createContext, useContext } from 'react'\n\ntype Context = {\n blocked: boolean\n setBlocked: () => void\n setUnblocked: () => void\n}\n\nconst context = createContext<Context>({} as Context)\n\nconst { Provider } = context\n\nexport const useOverlayContext = () => useContext(context)\n\nconst component: FC<Context> = ({\n children,\n blocked,\n setBlocked,\n setUnblocked,\n}) => (\n <Provider value={{ blocked, setBlocked, setUnblocked }}>{children}</Provider>\n)\n\nexport default component\n","import { useRef, useState, useEffect, useContext, useCallback } from 'react'\nimport { throttle, context } from '@vitus-labs/core'\nimport { value } from '@vitus-labs/unistyle'\nimport { useOverlayContext } from './context'\n\ntype OverlayPosition = {\n position: 'absolute' | 'fixed' | 'static' | 'relative'\n top?: number | string\n bottom?: number | string\n left?: number | string\n right?: number | string\n}\n\ntype Align = 'bottom' | 'top' | 'left' | 'bottom' | 'right'\ntype AlignX = 'left' | 'center' | 'right'\ntype AlignY = 'bottom' | 'top' | 'center'\n\nexport type UseOverlayProps = {\n isOpen?: boolean\n openOn?: 'click' | 'hover' | 'manual'\n closeOn?:\n | 'click'\n | 'clickOnTrigger'\n | 'clickOutsideContent'\n | 'hover'\n | 'manual'\n type?: 'dropdown' | 'tooltip' | 'popover' | 'modal'\n position?: 'absolute' | 'fixed' | 'relative' | 'static'\n align?: Align\n alignX?: AlignX\n alignY?: AlignY\n offsetX?: number\n offsetY?: number\n throttleDelay?: number\n customScrollListener?: HTMLElement\n closeOnEsc?: boolean\n disabled?: boolean\n}\n\nexport default ({\n isOpen = false,\n openOn = 'click', // click | hover\n closeOn = 'click', // click | 'clickOnTrigger' | 'clickOutsideContent' | hover | manual\n type = 'dropdown', // dropdown | tooltip | popover | modal\n align = 'bottom', // * main align prop * top | left | bottom | right\n position = 'fixed', // absolute | fixed | relative | static\n alignX = 'left', // left | center | right\n alignY = 'bottom', // top | center | bottom\n offsetX = 0,\n offsetY = 0,\n throttleDelay = 200,\n customScrollListener,\n closeOnEsc = true,\n disabled,\n}: UseOverlayProps) => {\n const { rootSize } = useContext(context) as { rootSize: number }\n const ctx = useOverlayContext()\n const [blocked, handleBlocked] = useState(false)\n const [visible, setVisible] = useState(isOpen)\n const [innerAlign, setInnerAlign] = useState(align)\n const [innerAlignX, setInnerAlignX] = useState(alignX)\n const [innerAlignY, setInnerAlignY] = useState(alignY)\n const triggerRef = useRef<HTMLElement>()\n const contentRef = useRef<HTMLElement>()\n\n const setBlocked = useCallback(() => handleBlocked(true), [])\n const setUnblocked = useCallback(() => handleBlocked(false), [])\n\n // if an Overlay has an Overlay child, this will prevent closing parent child\n useEffect(() => {\n if (visible && ctx?.setBlocked) ctx.setBlocked()\n else if (!visible && ctx?.setUnblocked) ctx.setUnblocked()\n }, [visible])\n\n // calculate correct position when an Overlay is opened\n useEffect(() => {\n if (visible) calculateContentPosition()\n }, [visible])\n\n // handles calculationg correct position of content\n // on document events (or custom scroll if set)\n useEffect(() => {\n if (visible) {\n window.addEventListener('resize', handleContentPosition, false)\n window.addEventListener('scroll', handleContentPosition, false)\n\n if (customScrollListener) {\n customScrollListener.addEventListener(\n 'scroll',\n handleContentPosition,\n false\n )\n }\n }\n\n return () => {\n window.removeEventListener('resize', handleContentPosition, false)\n window.removeEventListener('scroll', handleContentPosition, false)\n\n if (customScrollListener) {\n customScrollListener.removeEventListener(\n 'scroll',\n handleContentPosition,\n false\n )\n }\n }\n }, [visible, customScrollListener])\n\n // make sure scrolling is blocked in case of modal windows or when\n // customScroll is set\n useEffect(() => {\n if (visible) {\n if (__BROWSER__ && customScrollListener) {\n // eslint-disable-next-line no-param-reassign\n customScrollListener.style.overflow = 'hidden'\n } else if (__BROWSER__ && type === 'modal' && document.body) {\n document.body.style.overflow = 'hidden'\n }\n }\n\n return () => {\n if (__BROWSER__ && customScrollListener) {\n // eslint-disable-next-line no-param-reassign\n customScrollListener.style.overflow = ''\n } else if (__BROWSER__ && type === 'modal' && document.body) {\n document.body.style.overflow = ''\n }\n }\n }, [visible, type, customScrollListener])\n\n useEffect(() => {\n // enable overlay manipulation only when the state is NOT blocked=true\n // nor in disabled state\n if (!blocked || !disabled) {\n if (\n openOn === 'click' ||\n closeOn === 'click' ||\n closeOn === 'clickOnTrigger' ||\n closeOn === 'clickOutsideContent'\n ) {\n window.addEventListener('click', handleVisibilityByEventType, false)\n }\n\n if (openOn === 'hover' || closeOn === 'hover') {\n window.addEventListener('mousemove', handleMouseMove, false)\n }\n\n // only when content is visible\n if (visible) {\n if (customScrollListener) {\n customScrollListener.addEventListener(\n 'scroll',\n handleMouseMove,\n false\n )\n }\n\n window.addEventListener('scroll', handleMouseMove, false)\n\n if (closeOnEsc) {\n window.addEventListener('keydown', handleEscKey)\n }\n }\n }\n\n return () => {\n window.removeEventListener('scroll', handleMouseMove, false)\n window.removeEventListener('click', handleVisibilityByEventType, false)\n window.removeEventListener('mousemove', handleMouseMove, false)\n\n if (closeOnEsc) {\n window.removeEventListener('keydown', handleEscKey)\n }\n\n if (customScrollListener) {\n customScrollListener.removeEventListener(\n 'scroll',\n handleMouseMove,\n false\n )\n }\n }\n }, [openOn, closeOn, visible, blocked, disabled])\n\n const observeTrigger = (e) => {\n if (e && e.target && triggerRef.current) {\n return (\n triggerRef.current.contains(e.target) || e.target === triggerRef.current\n )\n }\n\n return false\n }\n\n const observeContent = (e) => {\n if (e && e.target && contentRef.current) {\n return (\n contentRef.current.contains(e.target) || e.target === contentRef.current\n )\n }\n\n return false\n }\n\n const showContent = useCallback(() => {\n setVisible(true)\n }, [])\n\n const hideContent = useCallback(() => {\n setVisible(false)\n }, [])\n\n const calculateContentPosition = () => {\n if (!visible) return\n\n if (!triggerRef.current || !contentRef.current) {\n return\n }\n\n const triggerDimensions = triggerRef.current.getBoundingClientRect()\n const contentDimensions = contentRef.current.getBoundingClientRect()\n\n const overlayPosition: OverlayPosition = {\n position,\n }\n\n if (['dropdown', 'tooltip', 'popover'].includes(type)) {\n if (['top', 'bottom'].includes(align)) {\n const positionTop =\n triggerDimensions.top - offsetY - contentDimensions.height\n const positionBottom = triggerDimensions.bottom + offsetY\n\n const positionLeft = triggerDimensions.left - offsetX\n const positionRight =\n triggerDimensions.right + offsetX - contentDimensions.width\n\n if (align === 'top') {\n const isTop = positionTop >= 0\n\n setInnerAlign(isTop ? 'top' : 'bottom')\n overlayPosition.top = isTop ? positionTop : positionBottom\n } else {\n const isBottom =\n positionBottom + contentDimensions.height <= window.innerHeight\n\n setInnerAlign(isBottom ? 'bottom' : 'top')\n overlayPosition.top = isBottom ? positionBottom : positionTop\n }\n\n switch (alignX) {\n case 'right': {\n const isRight = positionRight >= 0\n\n setInnerAlignX(isRight ? 'right' : 'left')\n overlayPosition.left = isRight ? positionRight : positionLeft\n\n break\n }\n case 'center': {\n overlayPosition.left =\n triggerDimensions.left +\n (triggerDimensions.right - triggerDimensions.left) / 2 -\n contentDimensions.width / 2\n break\n }\n case 'left':\n default: {\n const isLeft =\n positionLeft + contentDimensions.width <= window.innerWidth\n\n setInnerAlignX(isLeft ? 'left' : 'right')\n overlayPosition.left = isLeft ? positionLeft : positionRight\n break\n }\n }\n } else if (['left', 'right'].includes(align)) {\n const positionLeft =\n triggerDimensions.left - offsetX - contentDimensions.width\n const positionRight = triggerDimensions.right + offsetX\n\n const positionTop = triggerDimensions.top + offsetY\n const positionBottom =\n triggerDimensions.bottom - offsetY - contentDimensions.height\n\n if (align === 'left') {\n const isLeft = positionLeft >= 0\n\n setInnerAlign(isLeft ? 'left' : 'right')\n overlayPosition.left = isLeft ? positionLeft : positionRight\n } else {\n const isRight =\n positionRight + contentDimensions.width <= window.innerWidth\n\n setInnerAlign(isRight ? 'right' : 'left')\n overlayPosition.left = isRight ? positionRight : positionLeft\n }\n\n switch (alignY) {\n case 'top': {\n const isTop =\n positionTop + contentDimensions.height <= window.innerHeight\n\n setInnerAlignY(isTop ? 'top' : 'bottom')\n overlayPosition.top = isTop ? positionTop : positionBottom\n break\n }\n case 'center':\n overlayPosition.top =\n triggerDimensions.top -\n offsetY +\n (triggerDimensions.bottom - triggerDimensions.top) / 2 -\n contentDimensions.height / 2\n break\n case 'bottom':\n default: {\n const isBottom = positionBottom >= 0\n\n setInnerAlignY(isBottom ? 'bottom' : 'top')\n overlayPosition.top = isBottom ? positionBottom : positionTop\n }\n }\n }\n } else if (type === 'modal') {\n switch (alignX) {\n case 'right':\n overlayPosition.right = offsetX\n break\n case 'left':\n overlayPosition.left = offsetX\n break\n case 'center':\n default:\n overlayPosition.left =\n window.innerWidth / 2 - contentDimensions.width / 2\n break\n }\n\n switch (alignY) {\n case 'top':\n overlayPosition.top = offsetY\n break\n case 'center':\n overlayPosition.top =\n window.innerHeight / 2 - contentDimensions.height / 2\n break\n case 'bottom':\n default:\n overlayPosition.bottom = offsetY\n break\n }\n }\n\n // ADD POSITION STYLES TO CONTENT\n contentRef.current.style.position = overlayPosition.position\n contentRef.current.style.top = value(\n [overlayPosition.top],\n rootSize\n ) as string\n contentRef.current.style.bottom = value(\n [overlayPosition.bottom],\n rootSize\n ) as string\n contentRef.current.style.left = value(\n [overlayPosition.left],\n rootSize\n ) as string\n contentRef.current.style.right = value(\n [overlayPosition.right],\n rootSize\n ) as string\n }\n\n const handleVisibilityByEventType = (e) => {\n if (!visible && !disabled) {\n if (openOn === 'hover' && e.type === 'mousemove') {\n if (observeTrigger(e)) {\n showContent()\n }\n }\n\n if (openOn === 'click' && e.type === 'click') {\n if (observeTrigger(e)) {\n showContent()\n }\n }\n }\n\n if (visible) {\n if (closeOn === 'hover' && e.type === 'mousemove') {\n if (!observeTrigger(e) && !observeContent(e)) {\n hideContent()\n }\n }\n\n if (closeOn === 'hover' && e.type === 'scroll') {\n hideContent()\n }\n\n if (closeOn === 'click' && e.type === 'click') {\n hideContent()\n }\n\n if (closeOn === 'clickOnTrigger' && e.type === 'click') {\n if (observeTrigger(e)) {\n hideContent()\n }\n }\n\n if (closeOn === 'clickOutsideContent' && e.type === 'click') {\n if (!observeContent(e)) {\n hideContent()\n }\n }\n }\n }\n\n const handleContentPosition = throttle(\n calculateContentPosition,\n throttleDelay\n )\n const handleMouseMove = throttle(handleVisibilityByEventType, throttleDelay)\n const handleEscKey = (e: any) => {\n if (e.key === 'Escape') {\n hideContent()\n }\n }\n\n return {\n triggerRef,\n contentRef,\n active: visible,\n align: innerAlign,\n alignX: innerAlignX,\n alignY: innerAlignY,\n showContent,\n hideContent,\n blocked,\n setBlocked,\n setUnblocked,\n }\n}\n","import React, { useMemo } from 'react'\nimport { renderContent } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport Portal from '~/Portal'\nimport type { VLComponent, Content } from '~/types'\nimport useOverlay, { UseOverlayProps } from './useOverlay'\nimport Provider from './context'\n\ntype Align = 'bottom' | 'top' | 'left' | 'bottom' | 'right'\ntype AlignX = 'left' | 'center' | 'right'\ntype AlignY = 'bottom' | 'top' | 'center'\n\ntype TriggerRenderer = (\n props: Partial<{\n active: boolean\n showContent: () => void\n hideContent: () => void\n }>\n) => Content\n\ntype ContentRenderer = (\n props: Partial<{\n active: boolean\n showContent: () => void\n hideContent: () => void\n align: Align\n alignX: AlignX\n alignY: AlignY\n }>\n) => Content\n\nexport type Props = {\n children: Content | TriggerRenderer\n trigger: Content | ContentRenderer\n DOMLocation?: HTMLElement\n triggerRefName?: string\n contentRefName?: string\n} & UseOverlayProps\n\nconst Component: VLComponent<Props> = ({\n children,\n trigger,\n DOMLocation,\n triggerRefName = 'ref',\n contentRefName = 'ref',\n ...props\n}) => {\n const {\n active,\n triggerRef,\n contentRef,\n showContent,\n hideContent,\n align,\n alignX,\n alignY,\n ...ctx\n } = useOverlay(props)\n\n const passHandlers = useMemo(\n () =>\n props.openOn === 'manual' ||\n props.closeOn === 'manual' ||\n props.closeOn === 'clickOutsideContent',\n [props.openOn, props.closeOn]\n )\n\n return (\n <>\n {renderContent(trigger, {\n [triggerRefName]: triggerRef,\n active,\n ...(passHandlers ? { showContent, hideContent } : {}),\n })}\n\n {__BROWSER__ && active && (\n <Portal position={DOMLocation}>\n <Provider {...ctx}>\n {renderContent(children, {\n [contentRefName]: contentRef,\n active,\n align,\n alignX,\n alignY,\n ...(passHandlers ? { showContent, hideContent } : {}),\n })}\n </Provider>\n </Portal>\n )}\n </>\n )\n}\n\nconst name = `${PKG_NAME}/Ovelay` as const\n\nComponent.displayName = name\nComponent.pkgName = PKG_NAME\nComponent.VITUS_LABS__COMPONENT = name\n\nexport default Component\n","import { config } from '@vitus-labs/core'\nimport { makeItResponsive, extendCss } from '@vitus-labs/unistyle'\n\nconst styles = ({ css, theme: t }) => css`\n ${t.extraStyles && extendCss(t.extraStyles)};\n`\n\nexport default config.styled(config.textComponent)`\n color: inherit;\n font-weight: normal;\n line-height: 1;\n\n ${makeItResponsive({\n key: '$text',\n styles,\n css: config.css,\n normalize: false,\n })};\n`\n","import React, { forwardRef, ReactNode } from 'react'\nimport type { HTMLTagsText } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport type { VLForwardedComponent, ExtendCss } from '~/types'\nimport Styled from './styled'\n\nexport type Props = Partial<{\n paragraph: boolean\n label: ReactNode\n children: ReactNode\n tag: HTMLTagsText\n extendCss: ExtendCss\n}>\n\nconst component: VLForwardedComponent<Props> & {\n isText?: true\n} = forwardRef(\n ({ paragraph, label, children, tag, extendCss, ...props }, ref) => {\n type RenderContent = (as?: any) => any\n const renderContent: RenderContent = (as = undefined) => (\n <Styled ref={ref} as={as} $text={{ extraStyles: extendCss }} {...props}>\n {children || label}\n </Styled>\n )\n\n // eslint-disable-next-line no-nested-ternary\n const finalTag = __WEB__ ? (paragraph ? 'p' : tag) : undefined\n\n return renderContent(finalTag)\n }\n)\n\nconst name = `${PKG_NAME}/Text` as const\n\ncomponent.displayName = name\ncomponent.pkgName = PKG_NAME\ncomponent.VITUS_LABS__COMPONENT = name\ncomponent.isText = true\n\nexport default component\n"],"names":["styles","component","Styled","Wrapper","Content","name","Component","Iterator","Element","context","Portal","Provider"],"mappings":"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"}
1
+ {"version":3,"file":"vitus-labs-elements.browser.js","sources":["../src/constants.ts","../src/helpers/Wrapper/constants.ts","../src/helpers/Wrapper/utils.ts","../src/helpers/Wrapper/styled.ts","../src/helpers/Wrapper/component.tsx","../src/helpers/Content/styled.ts","../src/helpers/Content/component.tsx","../src/Element/constants.ts","../src/Element/utils.ts","../src/Element/component.tsx","../src/Element/withEqualSizeBeforeAfter.tsx","../src/helpers/Iterator/component.tsx","../src/List/component.tsx","../src/List/withActiveState.tsx","../src/Portal/component.ts","../src/Overlay/context.tsx","../src/Overlay/useOverlay.tsx","../src/Overlay/component.tsx","../src/Text/styled.ts","../src/Text/component.tsx"],"sourcesContent":["// eslint-disable-next-line import/prefer-default-export\nexport const PKG_NAME = '@vitus-labs/elements' as const\n","/* eslint-disable import/prefer-default-export */\n// https://stackoverflow.com/questions/35464067/flexbox-not-working-on-button-or-fieldset-elements\nexport const INLINE_ELEMENTS_FLEX_FIX = {\n button: true,\n fieldset: true,\n legend: true,\n}\n","/* eslint-disable import/prefer-default-export */\nimport { INLINE_ELEMENTS_FLEX_FIX } from './constants'\n\ntype IsWebFixNeeded = (tag: string) => boolean\nexport const isWebFixNeeded: IsWebFixNeeded = (tag) =>\n INLINE_ELEMENTS_FLEX_FIX[tag]\n","import { config } from '@vitus-labs/core'\nimport { alignContent, extendCss, makeItResponsive } from '@vitus-labs/unistyle'\n\nconst styles = ({ theme: t, css }) => css`\n ${__WEB__ &&\n css`\n ${({ $childFix }) =>\n !$childFix &&\n css`\n display: ${t.block ? 'flex' : 'inline-flex'};\n `};\n\n ${({ $parentFix }) =>\n $parentFix &&\n t.block &&\n css`\n flex-direction: column;\n width: 100%;\n `};\n `};\n\n ${__WEB__ &&\n t.contentAlignY === 'block' &&\n css`\n height: 100%;\n `};\n\n ${alignContent({\n direction: t.direction,\n alignX: t.alignX,\n alignY: t.alignY,\n })};\n\n ${t.block &&\n css`\n align-self: stretch;\n `}\n\n ${t.extraStyles && extendCss(t.extraStyles)};\n`\n\nconst platformStyles = __WEB__\n ? config.css`\n box-sizing: border-box;\n `\n : config.css`\n display: flex;\n `\n\nexport default config.styled(config.component)`\n position: relative;\n ${platformStyles};\n\n ${({ $childFix }) =>\n $childFix &&\n config.css`\n display: flex;\n flex: 1;\n width: 100%;\n height: 100%;\n `};\n\n ${makeItResponsive({\n key: '$element',\n styles,\n css: config.css,\n normalize: true,\n })};\n`\n","import React, { forwardRef, ReactNode } from 'react'\nimport type { StyledComponentPropsWithRef } from 'styled-components'\nimport type {\n Direction,\n AlignX,\n AlignY,\n ResponsiveBooltype,\n ExtendCss,\n} from '~/types'\nimport { isWebFixNeeded } from './utils'\nimport Styled from './styled'\n\ntype Reference = unknown\n\ntype Props = {\n children: ReactNode\n tag: StyledComponentPropsWithRef<any>\n block: ResponsiveBooltype\n isInline: boolean\n direction: Direction\n alignX: AlignX\n alignY: AlignY\n equalCols: ResponsiveBooltype\n extendCss: ExtendCss\n dangerouslySetInnerHTML: any\n}\n\nconst component = forwardRef<Reference, Partial<Props>>(\n (\n {\n children,\n tag,\n block,\n extendCss,\n direction,\n alignX,\n alignY,\n equalCols,\n isInline,\n ...props\n },\n ref\n ) => {\n const debugProps =\n process.env.NODE_ENV !== 'production'\n ? {\n 'data-vl-element': 'Element',\n }\n : {}\n\n const COMMON_PROPS = {\n ...props,\n ...debugProps,\n ref,\n as: tag,\n }\n\n const needsFix = __WEB__\n ? !props.dangerouslySetInnerHTML && tag && isWebFixNeeded(tag)\n : false\n\n if (!needsFix || __NATIVE__) {\n return (\n <Styled\n {...COMMON_PROPS}\n $element={{\n block,\n direction,\n alignX,\n alignY,\n equalCols,\n extraStyles: extendCss,\n }}\n >\n {children}\n </Styled>\n )\n }\n\n return (\n <Styled\n {...COMMON_PROPS}\n $parentFix\n $element={{\n block,\n extraStyles: extendCss,\n }}\n >\n <Styled\n as={isInline ? 'span' : 'div'}\n $childFix\n $element={{\n direction,\n alignX,\n alignY,\n equalCols,\n }}\n >\n {children}\n </Styled>\n </Styled>\n )\n }\n)\n\nexport default component\n","import { config } from '@vitus-labs/core'\nimport {\n makeItResponsive,\n alignContent,\n extendCss,\n value,\n} from '@vitus-labs/unistyle'\n\n// --------------------------------------------------------\n// calculate spacing between before / content / after\n// --------------------------------------------------------\nconst calculateGap = ({ direction, type, value, css }) => {\n if (!direction || !type) return undefined\n\n const data = {\n inline: {\n before: 'margin-right',\n after: 'margin-left',\n },\n rows: {\n before: 'margin-bottom',\n after: 'margin-top',\n },\n }\n\n const finalStyles = `${data[direction][type]}: ${value};`\n\n return css`\n ${finalStyles};\n `\n}\n\n// --------------------------------------------------------\n// calculations of styles to be rendered\n// --------------------------------------------------------\nconst styles = ({ css, theme: t, rootSize }) => css`\n ${alignContent({\n direction: t.direction,\n alignX: t.alignX,\n alignY: t.alignY,\n })};\n\n ${t.equalCols &&\n css`\n flex: 1;\n `};\n\n ${t.gap &&\n css`\n ${({ $contentType }) =>\n calculateGap({\n direction: t.parentDirection,\n type: $contentType,\n value: value([t.gap], rootSize),\n css,\n })}\n `};\n\n ${t.extraStyles && extendCss(t.extraStyles)};\n`\n\nexport default config.styled(config.component)`\n ${\n __WEB__ &&\n config.css`\n box-sizing: border-box;\n `\n };\n\n display: flex;\n align-self: stretch;\n flex-wrap: wrap;\n\n ${({ $contentType }) =>\n $contentType === 'content' &&\n config.css`\n flex: 1;\n `};\n\n ${makeItResponsive({\n key: '$element',\n styles,\n css: config.css,\n normalize: true,\n })};\n`\n","import React, { memo, VFC, ReactNode } from 'react'\nimport type { StyledComponentPropsWithRef } from 'styled-components'\nimport type {\n Direction,\n AlignX,\n AlignY,\n ResponsiveBooltype,\n Responsive,\n ExtendCss,\n} from '~/types'\nimport Styled from './styled'\n\ntype Props = {\n parentDirection: Direction\n gap: Responsive\n contentType: 'before' | 'content' | 'after'\n children: ReactNode\n tag: StyledComponentPropsWithRef<any>\n direction: Direction\n alignX: AlignX\n alignY: AlignY\n equalCols: ResponsiveBooltype\n extendCss: ExtendCss\n}\n\nconst component: VFC<Partial<Props>> = ({\n contentType,\n tag,\n parentDirection,\n direction,\n alignX,\n alignY,\n equalCols,\n gap,\n extendCss,\n ...props\n}) => {\n const debugProps =\n process.env.NODE_ENV !== 'production'\n ? {\n 'data-vl-element': contentType,\n }\n : {}\n\n return (\n <Styled\n as={tag}\n $contentType={contentType}\n $element={{\n parentDirection,\n direction,\n alignX,\n alignY,\n equalCols,\n gap,\n extraStyles: extendCss,\n }}\n {...debugProps}\n {...props}\n />\n )\n}\n\nexport default memo(component)\n","export const RESERVED_PROPS = [\n 'innerRef',\n 'tag',\n 'block',\n 'label',\n 'children',\n 'beforeContent',\n 'afterContent',\n\n 'equalCols',\n 'vertical',\n 'direction',\n 'alignX',\n 'alignY',\n\n 'css',\n 'contentCss',\n 'beforeContentCss',\n 'afterContentCss',\n\n 'contentDirection',\n 'contentAlignX',\n 'contentAlignY',\n\n 'beforeContentDirection',\n 'beforeContentAlignX',\n 'beforeContentAlignY',\n\n 'afterContentDirection',\n 'afterContentAlignX',\n 'afterContentAlignY',\n] as const\n\nexport const INLINE_ELEMENTS = {\n span: true,\n a: true,\n button: true,\n input: true,\n label: true,\n select: true,\n textarea: true,\n br: true,\n img: true,\n strong: true,\n small: true,\n code: true,\n b: true,\n big: true,\n i: true,\n tt: true,\n abbr: true,\n acronym: true,\n cite: true,\n dfn: true,\n em: true,\n kbd: true,\n samp: true,\n var: true,\n bdo: true,\n map: true,\n object: true,\n q: true,\n script: true,\n sub: true,\n sup: true,\n}\n\nexport const EMPTY_ELEMENTS = {\n area: true,\n base: true,\n br: true,\n col: true,\n embed: true,\n hr: true,\n img: true,\n input: true,\n keygen: true,\n link: true,\n // 'meta': true,\n // 'param': true,\n source: true,\n track: true,\n wbr: true,\n}\n","import { INLINE_ELEMENTS, EMPTY_ELEMENTS } from './constants'\n\n// type Value<T = unknown> = T extends true ? 'rows' : 'inline'\n\n// type TransformVerticalProp = <\n// T extends boolean | Record<string, boolean> | Array<boolean>\n// >(\n// vertical: T\n// ) => T extends boolean\n// ? Value<T>\n// : T extends Record<string, boolean>\n// ? Record<keyof T, Value<T[keyof T]>>\n// : T extends Array<boolean>\n// ? Array<Value<T[number]>>\n// : T\n\n// export const transformVerticalProp: TransformVerticalProp = (vertical) => {\n// // eslint-disable-next-line @typescript-eslint/no-explicit-any\n// if (vertical == null) return undefined as any\n\n// const verticalType = typeof vertical\n\n// // vertical is a boolean value\n// if (verticalType === 'boolean') {\n// return vertical ? 'rows' : 'inline'\n// }\n\n// if (Array.isArray(vertical)) {\n// return (vertical as Array<boolean>).map((item) =>\n// item ? 'rows' : 'inline'\n// )\n// }\n\n// if (verticalType === 'object') {\n// return Object.keys(vertical).reduce((accumulator, item) => {\n// // eslint-disable-next-line no-param-reassign\n// accumulator[item] = vertical[item] ? 'rows' : 'inline'\n// return accumulator\n// }, {} as Record<string, 'rows' | 'inline'>)\n// }\n\n// return undefined\n// }\n\ntype GetValue = (tag?: string) => boolean\n\nexport const isInlineElement: GetValue = (tag) =>\n tag ? INLINE_ELEMENTS[tag] : false\n\nexport const getShouldBeEmpty: GetValue = (tag) =>\n tag ? EMPTY_ELEMENTS[tag] : false\n","import React, { forwardRef, useMemo } from 'react'\nimport { renderContent } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport { Wrapper, Content } from '~/helpers'\nimport type { VLForwardedComponent } from '~/types'\nimport { isInlineElement, getShouldBeEmpty } from './utils'\n\nimport type { Props } from './types'\n\nconst defaultDirection = 'inline'\nconst defaultContentDirection = 'rows'\nconst defaultAlignX = 'left'\nconst defaultAlignY = 'center'\n\nconst component: VLForwardedComponent<Props> = forwardRef(\n (\n {\n innerRef,\n tag,\n label,\n content,\n children,\n beforeContent,\n afterContent,\n\n block,\n equalCols,\n gap,\n\n direction,\n alignX = defaultAlignX,\n alignY = defaultAlignY,\n\n css,\n contentCss,\n beforeContentCss,\n afterContentCss,\n\n contentDirection = defaultContentDirection,\n contentAlignX = defaultAlignX,\n contentAlignY = defaultAlignY,\n\n beforeContentDirection = defaultDirection,\n beforeContentAlignX = defaultAlignX,\n beforeContentAlignY = defaultAlignY,\n\n afterContentDirection = defaultDirection,\n afterContentAlignX = defaultAlignX,\n afterContentAlignY = defaultAlignY,\n\n ...props\n },\n ref\n ) => {\n // --------------------------------------------------------\n // check if should render only single element\n // --------------------------------------------------------\n const shouldBeEmpty =\n !!props.dangerouslySetInnerHTML ||\n (__WEB__ && tag && getShouldBeEmpty(tag))\n\n // --------------------------------------------------------\n // common wrapper props\n // --------------------------------------------------------\n const WRAPPER_PROPS = {\n ref: ref || innerRef,\n extendCss: css,\n tag,\n block,\n contentDirection,\n alignX: contentAlignX,\n alignY: contentAlignY,\n as: undefined, // reset styled-components `as` prop\n }\n\n // --------------------------------------------------------\n // return simple/empty element like input\n // --------------------------------------------------------\n if (shouldBeEmpty) return <Wrapper {...WRAPPER_PROPS} {...props} />\n\n // --------------------------------------------------------\n // if not single element, calculate values\n // --------------------------------------------------------\n const isSimpleElement = !beforeContent && !afterContent\n const CHILDREN = children || content || label\n\n const isInline = __WEB__ ? isInlineElement(tag) : false\n const SUB_TAG = __WEB__ && isInline ? 'span' : undefined\n\n // --------------------------------------------------------\n // direction & alignX & alignY calculations\n // --------------------------------------------------------\n const calculateDirection = useMemo(() => {\n let wrapperDirection: typeof direction\n let wrapperAlignX: typeof alignX = alignX\n let wrapperAlignY: typeof alignY = alignY\n\n if (isSimpleElement) {\n if (contentDirection) wrapperDirection = contentDirection\n if (contentAlignX) wrapperAlignX = contentAlignX\n if (contentAlignY) wrapperAlignY = contentAlignY\n } else if (direction) {\n wrapperDirection = direction\n } else {\n wrapperDirection = defaultDirection\n }\n\n return { wrapperDirection, wrapperAlignX, wrapperAlignY }\n }, [\n isSimpleElement,\n contentDirection,\n contentAlignX,\n contentAlignY,\n direction,\n ])\n\n const { wrapperDirection, wrapperAlignX, wrapperAlignY } =\n calculateDirection\n\n const beforeContentRenderOutput = useMemo(\n () => renderContent(beforeContent),\n [beforeContent]\n )\n\n const afterContentRenderOutput = useMemo(\n () => renderContent(afterContent),\n [afterContent]\n )\n\n const contentRenderOutput = useMemo(\n () => renderContent(CHILDREN),\n [CHILDREN]\n )\n\n return (\n <Wrapper\n {...props}\n {...WRAPPER_PROPS}\n isInline={isInline}\n direction={wrapperDirection}\n alignX={wrapperAlignX}\n alignY={wrapperAlignY}\n >\n {beforeContent && (\n <Content\n tag={SUB_TAG}\n contentType=\"before\"\n parentDirection={wrapperDirection}\n extendCss={beforeContentCss}\n direction={beforeContentDirection}\n alignX={beforeContentAlignX}\n alignY={beforeContentAlignY}\n equalCols={equalCols}\n gap={gap}\n >\n {beforeContentRenderOutput}\n </Content>\n )}\n\n {isSimpleElement ? (\n contentRenderOutput\n ) : (\n <Content\n tag={SUB_TAG}\n contentType=\"content\"\n parentDirection={wrapperDirection}\n extendCss={contentCss}\n direction={contentDirection}\n alignX={contentAlignX}\n alignY={contentAlignY}\n equalCols={equalCols}\n >\n {contentRenderOutput}\n </Content>\n )}\n\n {afterContent && (\n <Content\n tag={SUB_TAG}\n contentType=\"after\"\n parentDirection={wrapperDirection}\n extendCss={afterContentCss}\n direction={afterContentDirection}\n alignX={afterContentAlignX}\n alignY={afterContentAlignY}\n equalCols={equalCols}\n gap={gap}\n >\n {afterContentRenderOutput}\n </Content>\n )}\n </Wrapper>\n )\n }\n)\n\nconst name = `${PKG_NAME}/Element` as const\n\ncomponent.displayName = name\ncomponent.pkgName = PKG_NAME\ncomponent.VITUS_LABS__COMPONENT = name\n\nexport default component\n","/* eslint-disable no-param-reassign */\nimport React, { createRef } from 'react'\nimport { get } from '@vitus-labs/core'\nimport type { SimpleHoc } from '~/types'\n\nconst isNumber = (a: unknown, b: unknown) =>\n Number.isInteger(a) && Number.isInteger(b)\n\nconst types = {\n height: 'offsetHeight',\n width: 'offsetWidth',\n}\n\ntype Calculate = ({\n beforeContent,\n afterContent,\n}: {\n beforeContent: HTMLElement\n afterContent: HTMLElement\n}) => (type: 'height' | 'width') => void\n\nconst calculate: Calculate =\n ({ beforeContent, afterContent }) =>\n (type: keyof typeof types) => {\n const beforeContentSize = get(beforeContent, types[type])\n const afterContentSize = get(afterContent, types[type])\n\n if (isNumber(beforeContentSize, afterContentSize)) {\n if (beforeContentSize > afterContentSize) {\n beforeContent.style[type] = `${beforeContentSize}px`\n afterContent.style[type] = `${beforeContentSize}px`\n } else {\n beforeContent.style[type] = `${afterContentSize}px`\n afterContent.style[type] = `${afterContentSize}px`\n }\n }\n }\n\ntype Props = Partial<{\n equalBeforeAfter: boolean\n vertical?: boolean\n afterContent?: React.ReactNode\n beforeContent?: React.ReactNode\n}>\n\nconst withEqualBeforeAfter: SimpleHoc<Props> = (WrappedComponent) => {\n const displayName =\n WrappedComponent.displayName || WrappedComponent.name || 'Component'\n\n const Enhanced = (props) => {\n const { equalBeforeAfter, vertical, afterContent, beforeContent, ...rest } =\n props\n const elementRef = createRef<HTMLElement>()\n\n const calculateSize = () => {\n const beforeContent = get(elementRef, 'current.children[0]')\n const afterContent = get(elementRef, 'current.children[2]')\n const updateElement = calculate({ beforeContent, afterContent })\n\n if (vertical) updateElement('height')\n else updateElement('width')\n }\n\n if (equalBeforeAfter) calculateSize()\n\n return (\n <WrappedComponent\n {...rest}\n afterContent={afterContent}\n beforeContent={beforeContent}\n ref={elementRef}\n />\n )\n }\n\n Enhanced.displayName = `withEqualSizeBeforeAfter(${displayName})`\n\n return Enhanced\n}\n\nexport default withEqualBeforeAfter\n","import React, { Children, FC } from 'react'\nimport { renderContent, isEmpty } from '@vitus-labs/core'\nimport type { Props, DataArrayObject, ExtendedProps } from './types'\n\nconst RESERVED_PROPS = [\n 'children',\n 'component',\n 'wrapComponent',\n 'data',\n 'itemKey',\n 'valueName',\n 'itemProps',\n 'wrapProps',\n] as const\n\ntype AttachItemProps = ({\n i,\n length,\n}: {\n i: number\n length: number\n}) => ExtendedProps\n\nconst attachItemProps: AttachItemProps = ({\n i,\n length,\n}: {\n i: number\n length: number\n}) => {\n const position = i + 1\n\n return {\n index: i,\n first: position === 1,\n last: position === length,\n odd: position % 2 === 1,\n even: position % 2 === 0,\n position,\n }\n}\n\ntype Static = {\n isIterator: true\n RESERVED_PROPS: typeof RESERVED_PROPS\n}\n\nconst component: FC<Props> & Static = (props: Props) => {\n const {\n itemKey,\n valueName,\n children,\n component,\n data,\n wrapComponent: Wrapper,\n wrapProps,\n itemProps,\n } = props\n\n const renderedElement = (component, props) => renderContent(component, props)\n\n const injectItemProps =\n typeof itemProps === 'function'\n ? (props, extendedProps) => itemProps(props, extendedProps)\n : () => itemProps\n\n const injectWrapItemProps =\n typeof wrapProps === 'function'\n ? (props, extendedProps) => wrapProps(props, extendedProps)\n : () => wrapProps\n\n // --------------------------------------------------------\n // render children\n // --------------------------------------------------------\n const renderChildren = () => {\n if (!children) return null\n\n const { length } = children\n\n // if no props extension is required, just return children\n if (!itemProps && !Wrapper) return children\n\n return Children.map(children, (item, i) => {\n const key = i\n const extendedProps = attachItemProps({\n i,\n length,\n })\n\n const finalItemProps = itemProps ? injectItemProps({}, extendedProps) : {}\n const finalWrapProps = wrapProps\n ? injectWrapItemProps({}, extendedProps)\n : {}\n\n if (Wrapper) {\n return (\n <Wrapper key={key} {...finalWrapProps}>\n {renderedElement(item, finalItemProps)}\n </Wrapper>\n )\n }\n\n return renderContent(item as any, {\n key: i,\n ...finalItemProps,\n })\n })\n }\n\n // --------------------------------------------------------\n // render array of strings or numbers\n // --------------------------------------------------------\n const renderSimpleArray = (data) => {\n const renderData = data.filter(\n (item) => item !== null || item !== undefined // remove empty values\n )\n const { length } = renderData\n\n // if it's empty\n if (renderData.length === 0) return null\n\n const getKey = (item: string | number, index) => {\n if (typeof itemKey === 'function') return itemKey(item, index)\n\n return index\n }\n\n return renderData.map((item, i) => {\n const key = getKey(item, i)\n const keyName = valueName || 'children'\n const extendedProps = attachItemProps({\n i,\n length,\n })\n\n const finalItemProps = {\n ...(itemProps\n ? injectItemProps({ [keyName]: item }, extendedProps)\n : {}),\n [keyName]: item,\n }\n\n const finalWrapProps = wrapProps\n ? injectWrapItemProps({ [keyName]: item }, extendedProps)\n : {}\n\n if (Wrapper) {\n return (\n <Wrapper key={key} {...finalWrapProps}>\n {renderedElement(component, finalItemProps)}\n </Wrapper>\n )\n }\n\n return renderedElement(component, { key, ...finalItemProps })\n })\n }\n\n // --------------------------------------------------------\n // render array of objects\n // --------------------------------------------------------\n const renderComplexArray = (data) => {\n const renderData = data.filter((item) => !isEmpty(item)) // remove empty objects\n const { length } = renderData\n\n // if it's empty\n if (renderData.length === 0) return null\n\n const getKey = (item: DataArrayObject, index) => {\n if (!itemKey) return item.key || item.id || item.itemId || index\n if (typeof itemKey === 'function') return itemKey(item, index)\n if (typeof itemKey === 'string') return item[itemKey]\n\n return index\n }\n\n return renderData.map((item, i) => {\n const { component: itemComponent, ...restItem } = item as DataArrayObject\n const renderItem = itemComponent || component\n const key = getKey(restItem, i)\n const extendedProps = attachItemProps({\n i,\n length,\n })\n\n const finalItemProps = {\n ...(itemProps ? injectItemProps(item, extendedProps) : {}),\n ...restItem,\n }\n\n const finalWrapProps = wrapProps\n ? injectWrapItemProps(item, extendedProps)\n : {}\n\n if (Wrapper && !itemComponent) {\n return (\n <Wrapper key={key} {...finalWrapProps}>\n {renderedElement(renderItem, finalItemProps)}\n </Wrapper>\n )\n }\n\n return renderedElement(renderItem, { key, ...finalItemProps })\n })\n }\n\n // --------------------------------------------------------\n // render list items\n // --------------------------------------------------------\n const renderItems = () => {\n // --------------------------------------------------------\n // children have priority over props component + data\n // --------------------------------------------------------\n if (children) return renderChildren()\n\n // --------------------------------------------------------\n // render props component + data\n // --------------------------------------------------------\n if (component && Array.isArray(data)) {\n const clearData = data.filter(\n (item) => item !== null && item !== undefined\n )\n\n const isSimpleArray = clearData.every(\n (item) => typeof item === 'string' || typeof item === 'number'\n )\n\n if (isSimpleArray) return renderSimpleArray(clearData)\n\n const isComplexArray = clearData.every((item) => typeof item === 'object')\n\n if (isComplexArray) return renderComplexArray(clearData)\n\n return null\n }\n\n // --------------------------------------------------------\n // if there are no children or valid react component and data as an array,\n // return null to prevent error\n // --------------------------------------------------------\n return null\n }\n\n return renderItems()\n}\n\ncomponent.isIterator = true\ncomponent.RESERVED_PROPS = RESERVED_PROPS\n\nexport default component\n","import React, { forwardRef } from 'react'\nimport { pick, omit } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport Element, { Props as ElementProps } from '~/Element'\nimport Iterator, { Props as IteratorProps } from '~/helpers/Iterator'\nimport type { MergeTypes, VLForwardedComponent } from '~/types'\n\nexport type Props = MergeTypes<\n [\n ElementProps,\n IteratorProps,\n {\n rootElement?: boolean\n label: never\n content: never\n }\n ]\n>\n\nconst Component: VLForwardedComponent<Props> = forwardRef(\n ({ rootElement = false, ...props }, ref) => {\n const renderedList = <Iterator {...pick(props, Iterator.RESERVED_PROPS)} />\n\n if (!rootElement) return renderedList\n\n return (\n <Element ref={ref} {...omit(props, Iterator.RESERVED_PROPS)}>\n {renderedList}\n </Element>\n )\n }\n)\n\nconst name = `${PKG_NAME}/List` as const\n\nComponent.displayName = name\nComponent.pkgName = PKG_NAME\nComponent.VITUS_LABS__COMPONENT = name\n\nexport default Component\n","import React, { useState, useEffect } from 'react'\nimport type { SimpleHoc } from '~/types'\n\nconst RESERVED_KEYS = [\n 'type',\n 'activeItems',\n 'itemProps',\n 'activeItemRequired',\n] as const\n\ntype Key = string | number\ntype MultipleMap = Map<Key, boolean>\n\ntype ItemPropsData = {\n key: Key\n first: boolean\n last: boolean\n odd: boolean\n even: boolean\n position: number\n}\n\ntype Props = {\n type?: 'single' | 'multi'\n activeItemRequired?: boolean\n activeItems?: Key | Array<string | number>\n itemProps?:\n | Record<string, unknown>\n | ((props: Record<string, unknown>) => Record<string, unknown>)\n}\n\nconst Component: SimpleHoc<Props> = (WrappedComponent) => {\n const displayName =\n WrappedComponent.displayName || WrappedComponent.name || 'Component'\n\n const Enhanced = (props) => {\n const {\n type = 'single',\n activeItemRequired,\n activeItems,\n itemProps = {},\n ...rest\n } = props\n\n type InitActiveItems = () => Key | MultipleMap | undefined\n const initActiveItems: InitActiveItems = () => {\n if (type === 'single') {\n if (Array.isArray(activeItems)) {\n // eslint-disable-next-line no-console\n console.warn(\n 'Iterator is type of single. activeItems cannot be an array.'\n )\n } else {\n return activeItems\n }\n } else if (type === 'multi') {\n const activeItemsHelper = Array.isArray(activeItems)\n ? activeItems\n : [activeItems]\n\n return new Map(activeItemsHelper.map((id) => [id, true]))\n }\n\n return undefined\n }\n\n const [innerActiveItems, setActiveItems] = useState(initActiveItems())\n\n const countActiveItems = (data) => {\n let result = 0\n\n data.forEach((value) => {\n if (value) result += 1\n })\n\n return result\n }\n\n const updateItemState = (key: Key) => {\n if (type === 'single') {\n setActiveItems((prevState) => {\n if (activeItemRequired) return key\n if (prevState === key) return undefined\n\n return key\n })\n } else if (type === 'multi') {\n setActiveItems((prevState: MultipleMap) => {\n // TODO: add conditional type to fix this\n const activeItems = new Map(prevState)\n\n if (\n activeItemRequired &&\n activeItems.get(key) &&\n countActiveItems(activeItems) === 1\n ) {\n return activeItems\n }\n\n activeItems.set(key, !activeItems.get(key))\n return activeItems\n })\n } else {\n setActiveItems(undefined)\n }\n }\n\n const handleItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n const updateAllItemsState = (status) => {\n if (!status) {\n setActiveItems(new Map())\n }\n }\n\n const setItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n const unsetItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n const toggleItemActive = (key: Key) => {\n updateItemState(key)\n }\n\n // const setAllItemsActive = () => {\n // updateAllItemsState(true)\n // }\n\n const unsetAllItemsActive = () => {\n updateAllItemsState(false)\n }\n\n const isItemActive = (key: Key): boolean => {\n if (!innerActiveItems) return false\n if (type === 'single') return innerActiveItems === key\n if (type === 'multi' && innerActiveItems instanceof Map) {\n return !!innerActiveItems.get(key)\n }\n return false\n }\n\n const attachMultipleProps = {\n unsetAllItemsActive,\n }\n\n const attachItemProps = (props: ItemPropsData) => {\n const { key } = props\n\n const defaultItemProps =\n typeof itemProps === 'object' ? itemProps : itemProps(props)\n\n const result = {\n ...defaultItemProps,\n active: isItemActive(key),\n handleItemActive: () => handleItemActive(key),\n setItemActive,\n unsetItemActive,\n toggleItemActive,\n ...(type === 'multi' ? attachMultipleProps : {}),\n }\n\n return result\n }\n\n useEffect(() => {\n if (type === 'single' && Array.isArray(activeItems)) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.error(\n 'When type=`single` activeItems must be a single value, not an array'\n )\n }\n }\n }, [type, activeItems])\n\n return <WrappedComponent {...rest} itemProps={attachItemProps} />\n }\n Enhanced.RESERVED_KEYS = RESERVED_KEYS\n Enhanced.displayName = `vitus-labs/elements/List/withActiveState(${displayName})`\n\n return Enhanced\n}\n\nexport default Component\n","import { useState, useEffect, ReactNode } from 'react'\nimport ReactDOM from 'react-dom'\nimport { PKG_NAME } from '~/constants'\nimport type { VLComponent } from '~/types'\n\nexport type Props = {\n position?: HTMLElement\n children: ReactNode\n tag?: string\n}\n\nconst component: VLComponent<Props> = ({\n position = __BROWSER__ ? document.body : undefined,\n tag = 'div',\n children,\n}: Props) => {\n const [element] = useState(\n __BROWSER__ ? document.createElement(tag) : undefined\n )\n\n if (!position || !element) return null\n\n useEffect(() => {\n if (__SERVER__) return undefined\n position.appendChild(element)\n\n return () => {\n position.removeChild(element)\n }\n }, [])\n\n return ReactDOM.createPortal(children, element)\n}\n\nconst name = `${PKG_NAME}/Portal` as const\n\ncomponent.displayName = name\ncomponent.pkgName = PKG_NAME\ncomponent.VITUS_LABS__COMPONENT = name\n\nexport default component\n","import React, { FC, createContext, useContext } from 'react'\n\ntype Context = {\n blocked: boolean\n setBlocked: () => void\n setUnblocked: () => void\n}\n\nconst context = createContext<Context>({} as Context)\n\nconst { Provider } = context\n\nexport const useOverlayContext = () => useContext(context)\n\nconst component: FC<Context> = ({\n children,\n blocked,\n setBlocked,\n setUnblocked,\n}) => (\n <Provider value={{ blocked, setBlocked, setUnblocked }}>{children}</Provider>\n)\n\nexport default component\n","import { useRef, useState, useEffect, useContext, useCallback } from 'react'\nimport { throttle, context } from '@vitus-labs/core'\nimport { value } from '@vitus-labs/unistyle'\nimport { useOverlayContext } from './context'\n\ntype OverlayPosition = {\n position: 'absolute' | 'fixed' | 'static' | 'relative'\n top?: number | string\n bottom?: number | string\n left?: number | string\n right?: number | string\n}\n\ntype Align = 'bottom' | 'top' | 'left' | 'bottom' | 'right'\ntype AlignX = 'left' | 'center' | 'right'\ntype AlignY = 'bottom' | 'top' | 'center'\n\nexport type UseOverlayProps = {\n isOpen?: boolean\n openOn?: 'click' | 'hover' | 'manual'\n closeOn?:\n | 'click'\n | 'clickOnTrigger'\n | 'clickOutsideContent'\n | 'hover'\n | 'manual'\n type?: 'dropdown' | 'tooltip' | 'popover' | 'modal'\n position?: 'absolute' | 'fixed' | 'relative' | 'static'\n align?: Align\n alignX?: AlignX\n alignY?: AlignY\n offsetX?: number\n offsetY?: number\n throttleDelay?: number\n customScrollListener?: HTMLElement\n closeOnEsc?: boolean\n disabled?: boolean\n}\n\nexport default ({\n isOpen = false,\n openOn = 'click', // click | hover\n closeOn = 'click', // click | 'clickOnTrigger' | 'clickOutsideContent' | hover | manual\n type = 'dropdown', // dropdown | tooltip | popover | modal\n align = 'bottom', // * main align prop * top | left | bottom | right\n position = 'fixed', // absolute | fixed | relative | static\n alignX = 'left', // left | center | right\n alignY = 'bottom', // top | center | bottom\n offsetX = 0,\n offsetY = 0,\n throttleDelay = 200,\n customScrollListener,\n closeOnEsc = true,\n disabled,\n}: UseOverlayProps) => {\n const { rootSize } = useContext(context) as { rootSize: number }\n const ctx = useOverlayContext()\n const [blocked, handleBlocked] = useState(false)\n const [visible, setVisible] = useState(isOpen)\n const [innerAlign, setInnerAlign] = useState(align)\n const [innerAlignX, setInnerAlignX] = useState(alignX)\n const [innerAlignY, setInnerAlignY] = useState(alignY)\n const triggerRef = useRef<HTMLElement>()\n const contentRef = useRef<HTMLElement>()\n\n const setBlocked = useCallback(() => handleBlocked(true), [])\n const setUnblocked = useCallback(() => handleBlocked(false), [])\n\n // if an Overlay has an Overlay child, this will prevent closing parent child\n useEffect(() => {\n if (visible && ctx?.setBlocked) ctx.setBlocked()\n else if (!visible && ctx?.setUnblocked) ctx.setUnblocked()\n }, [visible])\n\n // calculate correct position when an Overlay is opened\n useEffect(() => {\n if (visible) calculateContentPosition()\n }, [visible])\n\n // handles calculationg correct position of content\n // on document events (or custom scroll if set)\n useEffect(() => {\n if (visible) {\n window.addEventListener('resize', handleContentPosition, false)\n window.addEventListener('scroll', handleContentPosition, false)\n\n if (customScrollListener) {\n customScrollListener.addEventListener(\n 'scroll',\n handleContentPosition,\n false\n )\n }\n }\n\n return () => {\n window.removeEventListener('resize', handleContentPosition, false)\n window.removeEventListener('scroll', handleContentPosition, false)\n\n if (customScrollListener) {\n customScrollListener.removeEventListener(\n 'scroll',\n handleContentPosition,\n false\n )\n }\n }\n }, [visible, customScrollListener])\n\n // make sure scrolling is blocked in case of modal windows or when\n // customScroll is set\n useEffect(() => {\n if (visible) {\n if (__BROWSER__ && customScrollListener) {\n // eslint-disable-next-line no-param-reassign\n customScrollListener.style.overflow = 'hidden'\n } else if (__BROWSER__ && type === 'modal' && document.body) {\n document.body.style.overflow = 'hidden'\n }\n }\n\n return () => {\n if (__BROWSER__ && customScrollListener) {\n // eslint-disable-next-line no-param-reassign\n customScrollListener.style.overflow = ''\n } else if (__BROWSER__ && type === 'modal' && document.body) {\n document.body.style.overflow = ''\n }\n }\n }, [visible, type, customScrollListener])\n\n useEffect(() => {\n // enable overlay manipulation only when the state is NOT blocked=true\n // nor in disabled state\n if (!blocked && !disabled) {\n if (\n openOn === 'click' ||\n closeOn === 'click' ||\n closeOn === 'clickOnTrigger' ||\n closeOn === 'clickOutsideContent'\n ) {\n window.addEventListener('click', handleVisibilityByEventType, false)\n }\n\n if (openOn === 'hover' || closeOn === 'hover') {\n window.addEventListener('mousemove', handleMouseMove, false)\n }\n\n // only when content is visible\n if (visible) {\n if (customScrollListener) {\n customScrollListener.addEventListener(\n 'scroll',\n handleMouseMove,\n false\n )\n }\n\n window.addEventListener('scroll', handleMouseMove, false)\n\n if (closeOnEsc) {\n window.addEventListener('keydown', handleEscKey)\n }\n }\n }\n\n return () => {\n window.removeEventListener('scroll', handleMouseMove, false)\n window.removeEventListener('click', handleVisibilityByEventType, false)\n window.removeEventListener('mousemove', handleMouseMove, false)\n\n if (closeOnEsc) {\n window.removeEventListener('keydown', handleEscKey)\n }\n\n if (customScrollListener) {\n customScrollListener.removeEventListener(\n 'scroll',\n handleMouseMove,\n false\n )\n }\n }\n }, [openOn, closeOn, visible, blocked, disabled])\n\n const observeTrigger = (e) => {\n if (e && e.target && triggerRef.current) {\n return (\n triggerRef.current.contains(e.target) || e.target === triggerRef.current\n )\n }\n\n return false\n }\n\n const observeContent = (e) => {\n if (e && e.target && contentRef.current) {\n return (\n contentRef.current.contains(e.target) || e.target === contentRef.current\n )\n }\n\n return false\n }\n\n const showContent = useCallback(() => {\n setVisible(true)\n }, [])\n\n const hideContent = useCallback(() => {\n setVisible(false)\n }, [])\n\n const calculateContentPosition = () => {\n if (!visible) return\n\n if (!triggerRef.current || !contentRef.current) {\n return\n }\n\n const triggerDimensions = triggerRef.current.getBoundingClientRect()\n const contentDimensions = contentRef.current.getBoundingClientRect()\n\n const overlayPosition: OverlayPosition = {\n position,\n }\n\n if (['dropdown', 'tooltip', 'popover'].includes(type)) {\n if (['top', 'bottom'].includes(align)) {\n const positionTop =\n triggerDimensions.top - offsetY - contentDimensions.height\n const positionBottom = triggerDimensions.bottom + offsetY\n\n const positionLeft = triggerDimensions.left - offsetX\n const positionRight =\n triggerDimensions.right + offsetX - contentDimensions.width\n\n if (align === 'top') {\n const isTop = positionTop >= 0\n\n setInnerAlign(isTop ? 'top' : 'bottom')\n overlayPosition.top = isTop ? positionTop : positionBottom\n } else {\n const isBottom =\n positionBottom + contentDimensions.height <= window.innerHeight\n\n setInnerAlign(isBottom ? 'bottom' : 'top')\n overlayPosition.top = isBottom ? positionBottom : positionTop\n }\n\n switch (alignX) {\n case 'right': {\n const isRight = positionRight >= 0\n\n setInnerAlignX(isRight ? 'right' : 'left')\n overlayPosition.left = isRight ? positionRight : positionLeft\n\n break\n }\n case 'center': {\n overlayPosition.left =\n triggerDimensions.left +\n (triggerDimensions.right - triggerDimensions.left) / 2 -\n contentDimensions.width / 2\n break\n }\n case 'left':\n default: {\n const isLeft =\n positionLeft + contentDimensions.width <= window.innerWidth\n\n setInnerAlignX(isLeft ? 'left' : 'right')\n overlayPosition.left = isLeft ? positionLeft : positionRight\n break\n }\n }\n } else if (['left', 'right'].includes(align)) {\n const positionLeft =\n triggerDimensions.left - offsetX - contentDimensions.width\n const positionRight = triggerDimensions.right + offsetX\n\n const positionTop = triggerDimensions.top + offsetY\n const positionBottom =\n triggerDimensions.bottom - offsetY - contentDimensions.height\n\n if (align === 'left') {\n const isLeft = positionLeft >= 0\n\n setInnerAlign(isLeft ? 'left' : 'right')\n overlayPosition.left = isLeft ? positionLeft : positionRight\n } else {\n const isRight =\n positionRight + contentDimensions.width <= window.innerWidth\n\n setInnerAlign(isRight ? 'right' : 'left')\n overlayPosition.left = isRight ? positionRight : positionLeft\n }\n\n switch (alignY) {\n case 'top': {\n const isTop =\n positionTop + contentDimensions.height <= window.innerHeight\n\n setInnerAlignY(isTop ? 'top' : 'bottom')\n overlayPosition.top = isTop ? positionTop : positionBottom\n break\n }\n case 'center':\n overlayPosition.top =\n triggerDimensions.top -\n offsetY +\n (triggerDimensions.bottom - triggerDimensions.top) / 2 -\n contentDimensions.height / 2\n break\n case 'bottom':\n default: {\n const isBottom = positionBottom >= 0\n\n setInnerAlignY(isBottom ? 'bottom' : 'top')\n overlayPosition.top = isBottom ? positionBottom : positionTop\n }\n }\n }\n } else if (type === 'modal') {\n switch (alignX) {\n case 'right':\n overlayPosition.right = offsetX\n break\n case 'left':\n overlayPosition.left = offsetX\n break\n case 'center':\n default:\n overlayPosition.left =\n window.innerWidth / 2 - contentDimensions.width / 2\n break\n }\n\n switch (alignY) {\n case 'top':\n overlayPosition.top = offsetY\n break\n case 'center':\n overlayPosition.top =\n window.innerHeight / 2 - contentDimensions.height / 2\n break\n case 'bottom':\n default:\n overlayPosition.bottom = offsetY\n break\n }\n }\n\n // ADD POSITION STYLES TO CONTENT\n contentRef.current.style.position = overlayPosition.position\n contentRef.current.style.top = value(\n [overlayPosition.top],\n rootSize\n ) as string\n contentRef.current.style.bottom = value(\n [overlayPosition.bottom],\n rootSize\n ) as string\n contentRef.current.style.left = value(\n [overlayPosition.left],\n rootSize\n ) as string\n contentRef.current.style.right = value(\n [overlayPosition.right],\n rootSize\n ) as string\n }\n\n const handleVisibilityByEventType = (e) => {\n if (!visible && !disabled) {\n if (openOn === 'hover' && e.type === 'mousemove') {\n if (observeTrigger(e)) {\n showContent()\n }\n }\n\n if (openOn === 'click' && e.type === 'click') {\n if (observeTrigger(e)) {\n showContent()\n }\n }\n }\n\n if (visible) {\n if (closeOn === 'hover' && e.type === 'mousemove') {\n if (!observeTrigger(e) && !observeContent(e)) {\n hideContent()\n }\n }\n\n if (closeOn === 'hover' && e.type === 'scroll') {\n hideContent()\n }\n\n if (closeOn === 'click' && e.type === 'click') {\n hideContent()\n }\n\n if (closeOn === 'clickOnTrigger' && e.type === 'click') {\n if (observeTrigger(e)) {\n hideContent()\n }\n }\n\n if (closeOn === 'clickOutsideContent' && e.type === 'click') {\n if (!observeContent(e)) {\n hideContent()\n }\n }\n }\n }\n\n const handleContentPosition = throttle(\n calculateContentPosition,\n throttleDelay\n )\n const handleMouseMove = throttle(handleVisibilityByEventType, throttleDelay)\n const handleEscKey = (e: any) => {\n if (e.key === 'Escape') {\n hideContent()\n }\n }\n\n return {\n triggerRef,\n contentRef,\n active: visible,\n align: innerAlign,\n alignX: innerAlignX,\n alignY: innerAlignY,\n showContent,\n hideContent,\n blocked,\n setBlocked,\n setUnblocked,\n }\n}\n","import React, { useMemo } from 'react'\nimport { renderContent } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport Portal from '~/Portal'\nimport type { VLComponent, Content } from '~/types'\nimport useOverlay, { UseOverlayProps } from './useOverlay'\nimport Provider from './context'\n\ntype Align = 'bottom' | 'top' | 'left' | 'bottom' | 'right'\ntype AlignX = 'left' | 'center' | 'right'\ntype AlignY = 'bottom' | 'top' | 'center'\n\ntype TriggerRenderer = (\n props: Partial<{\n active: boolean\n showContent: () => void\n hideContent: () => void\n }>\n) => Content\n\ntype ContentRenderer = (\n props: Partial<{\n active: boolean\n showContent: () => void\n hideContent: () => void\n align: Align\n alignX: AlignX\n alignY: AlignY\n }>\n) => Content\n\nexport type Props = {\n children: Content | TriggerRenderer\n trigger: Content | ContentRenderer\n DOMLocation?: HTMLElement\n triggerRefName?: string\n contentRefName?: string\n} & UseOverlayProps\n\nconst Component: VLComponent<Props> = ({\n children,\n trigger,\n DOMLocation,\n triggerRefName = 'ref',\n contentRefName = 'ref',\n ...props\n}) => {\n const {\n active,\n triggerRef,\n contentRef,\n showContent,\n hideContent,\n align,\n alignX,\n alignY,\n ...ctx\n } = useOverlay(props)\n\n const passHandlers = useMemo(\n () =>\n props.openOn === 'manual' ||\n props.closeOn === 'manual' ||\n props.closeOn === 'clickOutsideContent',\n [props.openOn, props.closeOn]\n )\n\n return (\n <>\n {renderContent(trigger, {\n [triggerRefName]: triggerRef,\n active,\n ...(passHandlers ? { showContent, hideContent } : {}),\n })}\n\n {__BROWSER__ && active && (\n <Portal position={DOMLocation}>\n <Provider {...ctx}>\n {renderContent(children, {\n [contentRefName]: contentRef,\n active,\n align,\n alignX,\n alignY,\n ...(passHandlers ? { showContent, hideContent } : {}),\n })}\n </Provider>\n </Portal>\n )}\n </>\n )\n}\n\nconst name = `${PKG_NAME}/Ovelay` as const\n\nComponent.displayName = name\nComponent.pkgName = PKG_NAME\nComponent.VITUS_LABS__COMPONENT = name\n\nexport default Component\n","import { config } from '@vitus-labs/core'\nimport { makeItResponsive, extendCss } from '@vitus-labs/unistyle'\n\nconst styles = ({ css, theme: t }) => css`\n ${t.extraStyles && extendCss(t.extraStyles)};\n`\n\nexport default config.styled(config.textComponent)`\n color: inherit;\n font-weight: normal;\n line-height: 1;\n\n ${makeItResponsive({\n key: '$text',\n styles,\n css: config.css,\n normalize: false,\n })};\n`\n","import React, { forwardRef, ReactNode } from 'react'\nimport type { HTMLTagsText } from '@vitus-labs/core'\nimport { PKG_NAME } from '~/constants'\nimport type { VLForwardedComponent, ExtendCss } from '~/types'\nimport Styled from './styled'\n\nexport type Props = Partial<{\n paragraph: boolean\n label: ReactNode\n children: ReactNode\n tag: HTMLTagsText\n extendCss: ExtendCss\n}>\n\nconst component: VLForwardedComponent<Props> & {\n isText?: true\n} = forwardRef(\n ({ paragraph, label, children, tag, extendCss, ...props }, ref) => {\n type RenderContent = (as?: any) => any\n const renderContent: RenderContent = (as = undefined) => (\n <Styled ref={ref} as={as} $text={{ extraStyles: extendCss }} {...props}>\n {children || label}\n </Styled>\n )\n\n // eslint-disable-next-line no-nested-ternary\n const finalTag = __WEB__ ? (paragraph ? 'p' : tag) : undefined\n\n return renderContent(finalTag)\n }\n)\n\nconst name = `${PKG_NAME}/Text` as const\n\ncomponent.displayName = name\ncomponent.pkgName = PKG_NAME\ncomponent.VITUS_LABS__COMPONENT = name\ncomponent.isText = true\n\nexport default component\n"],"names":["styles","component","Styled","Wrapper","Content","name","Component","Iterator","Element","context","Portal","Provider"],"mappings":"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"}
@@ -764,7 +764,7 @@ offsetX = 0, offsetY = 0, throttleDelay = 200, customScrollListener, closeOnEsc
764
764
  React.useEffect(() => {
765
765
  // enable overlay manipulation only when the state is NOT blocked=true
766
766
  // nor in disabled state
767
- if (!blocked || !disabled) {
767
+ if (!blocked && !disabled) {
768
768
  if (openOn === 'click' ||
769
769
  closeOn === 'click' ||
770
770
  closeOn === 'clickOnTrigger' ||