react-ui-basics 0.0.147 → 0.0.150
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Animated.js.map +1 -1
- package/AutocompleteSelect.js +1 -1
- package/AutocompleteSelect.js.map +1 -1
- package/Button.js.map +1 -1
- package/Checkbox.js.map +1 -1
- package/CircleProgress.js.map +1 -1
- package/DNDContainer.js.map +1 -1
- package/DNDDraggable.js.map +1 -1
- package/DNDDroppable.js.map +1 -1
- package/Dialog.js.map +1 -1
- package/DropFileInput.js.map +1 -1
- package/DroppableHorizontalList.js.map +1 -1
- package/DroppableList.js.map +1 -1
- package/Dropzone.js +6 -1
- package/Dropzone.js.map +1 -1
- package/FilteredList.js.map +1 -1
- package/FloatingActionButton.js.map +1 -1
- package/FormUploadProgress.js.map +1 -1
- package/ImageGallery.js.map +1 -1
- package/MaterialIcon.js.map +1 -1
- package/Modal.js.map +1 -1
- package/ModalMenu.js.map +1 -1
- package/ReactConstants.js.map +1 -1
- package/ReactCreateElement.js.map +1 -1
- package/ReadyListener.js.map +1 -1
- package/Scrollable.js.map +1 -1
- package/ScrollableTable.js.map +1 -1
- package/Size.js.map +1 -1
- package/Snackbar.js.map +1 -1
- package/SpinningProgress.js.map +1 -1
- package/Switch.js.map +1 -1
- package/Table.d.ts +76 -0
- package/Table.js +135 -321
- package/Table.js.map +1 -1
- package/TextField.js.map +1 -1
- package/Tools.d.ts +3 -3
- package/Tools.js +5 -5
- package/Tools.js.map +1 -1
- package/_virtual/_commonjsHelpers.js +6 -0
- package/_virtual/_commonjsHelpers.js.map +1 -0
- package/_virtual/_react.js +3 -0
- package/_virtual/_react.js.map +1 -0
- package/_virtual/react-jsx-runtime.development.js +3 -0
- package/_virtual/react-jsx-runtime.development.js.map +1 -0
- package/bundle.css +350 -350
- package/package.json +3 -2
- package/router/HistoryTools.js.map +1 -1
- package/router/Link.js.map +1 -1
- package/router/NavLink.js.map +1 -1
- package/router/Route.js.map +1 -1
- package/router/index.js.map +1 -1
- package/store/ProxyTools.js.map +1 -1
- package/store/Store.d.ts +1 -1
- package/store/Store.js +5 -2
- package/store/Store.js.map +1 -1
package/ReadyListener.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReadyListener.js","sources":["
|
|
1
|
+
{"version":3,"file":"ReadyListener.js","sources":["../../../src/react-ui-basics/ReadyListener.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport {componentDidMount, render, componentWillUnmount, setState, props, state, componentDidUpdate, children, PureComponent} from \"./ReactConstants\";\nimport {orNoop} from \"./Tools\";\n\nexport const createReadyListener = () => {\n let indicator,\n count = 0;\n\n class NotReadyIndicator extends PureComponent {\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {r: true};\n indicator = that;\n that[render] = () => {\n const _props = props(that),\n renderer = _props[render],\n ready = state(that).r;\n\n if (renderer)\n return renderer(ready);\n else\n return (!ready && _props[children]) || null;\n };\n that[componentDidMount] = that[componentDidUpdate] = () => {\n orNoop(props(that).onChange)(state(that).r);\n }\n }\n }\n\n class NotReady extends PureComponent {\n constructor(props) {\n super(props);\n const that = this;\n that[componentDidMount] = () => {\n count++;\n setState(indicator, {r: false});\n };\n that[componentWillUnmount] = () => {\n setState(indicator, {r: --count === 0});\n };\n that[render] = () => null;\n }\n }\n\n return [NotReadyIndicator, NotReady]\n};\n"],"names":["createReadyListener","indicator","count","NotReadyIndicator","properties","that","state","r","render","_props","props","renderer","ready","children","componentDidMount","componentDidUpdate","orNoop","onChange","PureComponent","NotReady","setState","componentWillUnmount"],"mappings":"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"}
|
package/Scrollable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Scrollable.js","sources":["../src/react-ui-basics/Scrollable.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport PropTypes from 'prop-types';\nimport './Scrollable.css'\nimport {classNames, preventDefault, WINDOW, addEventListener, removeEventListener, setTimeout, clearTimeout, setInterval, clearInterval, createRef, orNoop, NOOP} from \"./Tools\";\nimport {propsGetter, stateGS, PureComponent, render, componentDidMount, componentDidUpdate, componentWillUnmount} from \"./ReactConstants\";\n\nexport const SCROLLBAR_MODE_HIDDEN = 'hidden';\nexport const SCROLLBAR_MODE_VISIBLE = 'visible';\nexport const SCROLLBAR_MODE_AUTO = 'auto';\n\nlet NATIVE_SCROLL_WIDTH = -1;\nlet NATIVE_SCROLL_HEIGHT = -1;\n\nconst WITHOUT_SCROLL = 'without-scroll';\nconst WITH_SCROLL = 'with-scroll';\n\nconst createFieldGetter = field => el => el[field];\nconst scrollHeightOf = createFieldGetter('scrollHeight');\nconst scrollWidthOf = createFieldGetter('scrollWidth');\nconst offsetHeightOf = createFieldGetter('offsetHeight');\nconst offsetWidthOf = createFieldGetter('offsetWidth');\nconst styleOf = createFieldGetter('style');\nconst scrollBarModeOf = createFieldGetter('scrollBarMode');\nconst onScroll = createFieldGetter('onScroll');\nconst horizontalScrollBarModeOf = createFieldGetter('horizontalScrollBarMode');\n\nclass Scrollable extends PureComponent {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const props = propsGetter(that);\n const status = stateGS(that);\n const statusH = stateGS(that);\n\n const containerRef = createRef();\n const viewportRef = createRef();\n const scrollbarRef = createRef();\n const horizontalScrollbarRef = createRef();\n const thumbRef = createRef();\n const horizontalThumbRef = createRef();\n\n let resizeInterval;\n let initTimeout;\n\n const clear = () => {\n clearInterval(resizeInterval);\n clearTimeout(initTimeout);\n };\n\n const init = () => {\n clear();\n\n if (scrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN && horizontalScrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN) {\n status(WITHOUT_SCROLL);\n statusH(WITHOUT_SCROLL);\n return;\n }\n\n const viewport = viewportRef();\n const scrollbar = scrollbarRef();\n const scrollbarH = horizontalScrollbarRef();\n const container = containerRef();\n const thumb = thumbRef();\n const thumbH = horizontalThumbRef();\n\n let scrolling = false;\n let scrolledToBottom = false;\n let scrolledToTop = false;\n let adjustedScrollWidth = false;\n let lastY = 0;\n let lastX = 0;\n let ratio = 0;\n let ratioH = 0;\n const onScrollListener = onScroll(props())\n\n viewport.onscroll = (e) => {\n const scrollHeight = scrollHeightOf(viewport);\n const offsetHeight = offsetHeightOf(viewport);\n const scrollWidth = scrollWidthOf(viewport);\n const offsetWidth = offsetWidthOf(viewport);\n const scrollbarHeight = offsetHeightOf(scrollbar);\n const scrollbarWidth = offsetWidthOf(scrollbarH);\n let position = viewport.scrollTop / (scrollHeight - offsetHeight);\n const positionH = viewport.scrollLeft / (scrollWidth - offsetWidth);\n\n if (position > 1) {\n viewport.scrollTop = scrollHeight - offsetHeight;\n position = 1\n }\n\n styleOf(thumb).top = (position * (scrollbarHeight - offsetHeightOf(thumb))) + 'px';\n styleOf(thumbH).left = (positionH * (scrollbarWidth - offsetWidthOf(thumbH))) + 'px';\n\n if (position >= 0.98) {\n !scrolledToBottom && orNoop(props().onScrolledToBottom)();\n scrolledToBottom = true;\n } else {\n scrolledToBottom = false;\n }\n\n if (position <= 0.02) {\n !scrolledToTop && orNoop(props().onScrolledToTop)();\n scrolledToTop = true;\n } else {\n scrolledToTop = false;\n }\n\n onScrollListener && onScrollListener(e)\n };\n const reset = () => {\n removeEventListener(WINDOW, 'mouseup', reset);\n removeEventListener(WINDOW, 'mousemove', moveListener);\n viewport.style.scrollBehavior = ''\n scrolling = false;\n };\n const moveListener = (e) => {\n if (!scrolling)\n return;\n\n if (scrolling === 'v') {\n viewport.scrollTop += (e.clientY - lastY) * ratio;\n lastY = e.clientY;\n } else if (scrolling === 'h') {\n viewport.scrollLeft += (e.clientX - lastX) * ratioH;\n lastX = e.clientX;\n }\n };\n thumb.onmousedown = (e) => {\n lastY = e.clientY;\n scrolling = 'v';\n ratio = scrollHeightOf(viewport) / offsetHeightOf(viewport);\n viewport.style.scrollBehavior = 'unset'\n\n addEventListener(WINDOW, 'mouseup', reset);\n addEventListener(WINDOW, 'mousemove', moveListener);\n };\n thumb.ondragstart = preventDefault;\n thumb.onmouseup = reset;\n\n thumbH.onmousedown = (e) => {\n lastX = e.clientX;\n scrolling = 'h';\n ratioH = scrollWidthOf(viewport) / offsetWidthOf(viewport);\n viewport.style.scrollBehavior = 'unset'\n\n addEventListener(WINDOW, 'mouseup', reset);\n addEventListener(WINDOW, 'mousemove', moveListener);\n };\n thumbH.ondragstart = preventDefault;\n thumbH.onmouseup = reset;\n\n scrollbar.onclick = (e) => {\n if (e.target === scrollbar) {\n let thumbPosition = parseInt(styleOf(thumb).top);\n viewport.scrollTop += offsetHeightOf(viewport) * 0.9 * (e.offsetY < thumbPosition ? -1 : 1);\n }\n };\n scrollbarH.onclick = (e) => {\n if (e.target === scrollbarH) {\n let thumbPosition = parseInt(styleOf(thumbH).left);\n viewport.scrollLeft += offsetWidthOf(viewport) * 0.9 * (e.offsetX < thumbPosition ? -1 : 1);\n }\n };\n\n const adjustScrollWidth = () => {\n if (NATIVE_SCROLL_WIDTH < 0) {\n NATIVE_SCROLL_WIDTH = viewport.offsetWidth - viewport.clientWidth;\n if (NATIVE_SCROLL_WIDTH === 0 && scrollHeightOf(viewport) !== offsetHeightOf(viewport)) {\n NATIVE_SCROLL_WIDTH = -1;\n }\n }\n if (NATIVE_SCROLL_HEIGHT < 0) {\n NATIVE_SCROLL_HEIGHT = viewport.offsetHeight - viewport.clientHeight;\n if (NATIVE_SCROLL_HEIGHT === 0 && scrollWidthOf(viewport) !== offsetWidthOf(viewport)) {\n NATIVE_SCROLL_HEIGHT = -1;\n }\n }\n\n if (!adjustedScrollWidth) {\n if (NATIVE_SCROLL_WIDTH >= 0 && status() !== WITHOUT_SCROLL) {\n styleOf(viewport).paddingRight = (NATIVE_SCROLL_WIDTH) + scrollbar.clientWidth + 'px';\n styleOf(viewport).marginRight = -(NATIVE_SCROLL_WIDTH) - scrollbar.clientWidth + 'px';\n }\n if (NATIVE_SCROLL_HEIGHT >= 0 && statusH() !== WITHOUT_SCROLL) {\n styleOf(viewport).paddingBottom = (NATIVE_SCROLL_HEIGHT) + scrollbarH.clientHeight + 'px';\n styleOf(viewport).marginBottom = -(NATIVE_SCROLL_HEIGHT) - scrollbarH.clientHeight + 'px';\n }\n adjustedScrollWidth = true;\n }\n };\n\n adjustScrollWidth();\n\n const showScrollbar = (scrollbar, viewport, adjustScrollWidth) => {\n styleOf(scrollbar).visibility = 'inherit';\n styleOf(scrollbar).bottom = '0'; //enable scrollbar\n styleOf(viewport).overflowY = '';\n adjustScrollWidth();\n status() !== WITH_SCROLL && status(WITH_SCROLL);\n };\n\n const hideScrollbar = (scrollbar, viewport) => {\n styleOf(scrollbar).visibility = 'hidden'; //disable scrollbar\n styleOf(viewport).overflowY = 'inherit';\n styleOf(viewport).paddingRight = '0';\n styleOf(viewport).marginRight = '0';\n status() !== WITHOUT_SCROLL && status(WITHOUT_SCROLL);\n };\n\n const showHorizontalScrollbar = (scrollbar, viewport, adjustScrollWidth) => {\n styleOf(scrollbar).visibility = 'inherit';\n styleOf(scrollbar).right = '0'; //enable scrollbar\n styleOf(viewport).overflowX = '';\n adjustScrollWidth();\n statusH() !== WITH_SCROLL && statusH(WITH_SCROLL);\n };\n\n const hideHorizontalScrollbar = (scrollbar, viewport) => {\n styleOf(scrollbar).visibility = 'hidden'; //disable scrollbar\n styleOf(viewport).overflowX = 'inherit';\n styleOf(viewport).paddingBottom = '0';\n styleOf(viewport).marginBottom = '0';\n statusH() !== WITHOUT_SCROLL && statusH(WITHOUT_SCROLL);\n };\n\n const updateVerticalScrollbar = () => {\n const scrollHeight = scrollHeightOf(viewport);\n const scrollbarHeight = offsetHeightOf(scrollbar);\n\n !adjustedScrollWidth && adjustScrollWidth();\n\n const newRatio = scrollHeight / scrollbarHeight;\n if ((ratio === newRatio && Number.isFinite(newRatio)) || Number.isNaN(newRatio)) return;\n\n const offsetHeight = offsetHeightOf(viewport);\n const horizontalScrollBarOffset = statusH() !== WITHOUT_SCROLL ? scrollbarH.clientHeight + Math.max(NATIVE_SCROLL_HEIGHT, 0) : 0;\n\n let containerOffsetHeight = offsetHeightOf(container) + horizontalScrollBarOffset;\n if (containerOffsetHeight === scrollHeight && status() === WITHOUT_SCROLL)\n return;\n\n if (props().autoScrollTop && scrollHeight - offsetHeight - viewport.scrollTop <= 20 && newRatio < ratio && Number.isFinite(newRatio) && Number.isFinite(ratio)) {\n viewport.scrollTop = 0; // scroll to top if scrollbar gets smaller\n }\n\n ratio = newRatio;\n styleOf(thumb).height = (scrollbarHeight / newRatio) + 'px';\n\n styleOf(container).height = scrollHeight - horizontalScrollBarOffset + 'px';\n containerOffsetHeight = offsetHeightOf(container) + horizontalScrollBarOffset;\n\n if (scrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN) {\n if (status() !== WITHOUT_SCROLL)\n hideScrollbar(scrollbar, viewport);\n\n return\n }\n\n if (containerOffsetHeight < scrollHeight) {\n adjustedScrollWidth = false;\n showScrollbar(scrollbar, viewport, adjustScrollWidth);\n } else {\n hideScrollbar(scrollbar, viewport);\n }\n\n scrolledToBottom = false;\n scrolledToTop = false;\n\n const position = viewport.scrollTop / (scrollHeight - offsetHeight);\n styleOf(thumb).top = (position * (scrollbarHeight - offsetHeightOf(thumb))) + 'px';\n };\n\n const updateHorizontalScrollbar = () => {\n\n const scrollWidth = scrollWidthOf(viewport);\n const scrollbarWidth = offsetWidthOf(scrollbarH);\n\n !adjustedScrollWidth && adjustScrollWidth();\n\n const newRatio = scrollWidth / scrollbarWidth;\n if ((ratioH === newRatio && Number.isFinite(newRatio)) || Number.isNaN(newRatio)) return;\n\n const offsetWidth = offsetWidthOf(viewport);\n\n const verticalScrollBarOffset = status() !== WITHOUT_SCROLL ? scrollbar.clientWidth + Math.max(NATIVE_SCROLL_WIDTH, 0) : 0;\n let containerOffsetWidth = offsetWidthOf(container) + verticalScrollBarOffset;\n\n if (containerOffsetWidth === scrollWidth && statusH() === WITHOUT_SCROLL)\n return;\n\n ratioH = newRatio;\n styleOf(thumbH).width = (scrollbarWidth / newRatio) + 'px';\n\n\n if (horizontalScrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN) {\n if (statusH() !== WITHOUT_SCROLL)\n hideHorizontalScrollbar(scrollbarH, viewport);\n\n return\n }\n\n styleOf(container).width = (scrollWidth - verticalScrollBarOffset) + 'px';\n containerOffsetWidth = offsetWidthOf(container) + verticalScrollBarOffset;\n\n if (containerOffsetWidth < scrollWidth) {\n adjustedScrollWidth = false;\n showHorizontalScrollbar(scrollbarH, viewport, adjustScrollWidth);\n } else {\n hideHorizontalScrollbar(scrollbarH, viewport);\n }\n\n const position = viewport.scrollLeft / (scrollWidth - offsetWidth);\n styleOf(thumbH).left = (position * (scrollbarWidth - offsetWidthOf(thumbH))) + 'px';\n };\n\n initTimeout = setTimeout(() => {\n resizeInterval = setInterval(() => {\n updateVerticalScrollbar();\n updateHorizontalScrollbar();\n }, 50);\n }, 200)\n };\n\n that[componentDidMount] = init;\n that[componentWillUnmount] = clear;\n\n that[componentDidUpdate] = (prevProps) => {\n if (scrollBarModeOf(props()) !== scrollBarModeOf(prevProps))\n init();\n else if (onScroll(props()) !== onScroll(prevProps))\n init();\n };\n\n that.setScroll = (y) => {\n viewportRef().scrollTop = y\n };\n that.getScroll = () => viewportRef().scrollTop;\n that.getScrollHeight = () => scrollHeightOf(viewportRef());\n that.getHeight = () => containerRef().clientHeight;\n\n that[render] = () => {\n const _props = props();\n const {className, children} = _props;\n return (\n <div className={classNames('Scrollable', className, status() || WITH_SCROLL, statusH() + '-horizontal')} style={styleOf(_props)} ref={containerRef}>\n <div className=\"viewport\" ref={viewportRef}>\n {children}\n </div>\n <div className={classNames('scrollbar', scrollBarModeOf(_props) || SCROLLBAR_MODE_AUTO)} ref={scrollbarRef}>\n <div className=\"thumb\" ref={thumbRef}/>\n </div>\n <div className={classNames('scrollbar horizontal', horizontalScrollBarModeOf(_props))} ref={horizontalScrollbarRef}>\n <div className=\"thumb\" ref={horizontalThumbRef}/>\n </div>\n </div>\n )\n };\n }\n}\n\nexport default Scrollable\n\nScrollable.defaultProps = {\n autoScrollTop: true,\n horizontalScrollBarMode: SCROLLBAR_MODE_HIDDEN\n};\n\nif (window.isNotProductionEnvironment) {\n Scrollable.propTypes = {\n scrollBarMode: PropTypes.oneOf([SCROLLBAR_MODE_AUTO, SCROLLBAR_MODE_HIDDEN, SCROLLBAR_MODE_VISIBLE]),\n horizontalScrollBarMode: PropTypes.oneOf([SCROLLBAR_MODE_AUTO, SCROLLBAR_MODE_HIDDEN, SCROLLBAR_MODE_VISIBLE]),\n className: PropTypes.string,\n style: PropTypes.object,\n onScrolledToBottom: PropTypes.func,\n onScrolledToTop: PropTypes.func,\n autoScrollTop: PropTypes.bool,\n }\n}"],"names":["SCROLLBAR_MODE_HIDDEN","SCROLLBAR_MODE_VISIBLE","SCROLLBAR_MODE_AUTO","NATIVE_SCROLL_WIDTH","NATIVE_SCROLL_HEIGHT","WITHOUT_SCROLL","WITH_SCROLL","createFieldGetter","field","el","scrollHeightOf","scrollWidthOf","offsetHeightOf","offsetWidthOf","styleOf","scrollBarModeOf","onScroll","horizontalScrollBarModeOf","Scrollable","properties","that","state","props","propsGetter","status","stateGS","statusH","containerRef","createRef","viewportRef","scrollbarRef","horizontalScrollbarRef","thumbRef","horizontalThumbRef","resizeInterval","initTimeout","clear","clearInterval","clearTimeout","init","viewport","scrollbar","scrollbarH","container","thumb","thumbH","scrolling","scrolledToBottom","scrolledToTop","adjustedScrollWidth","lastY","lastX","ratio","ratioH","onScrollListener","onscroll","e","scrollHeight","offsetHeight","scrollWidth","offsetWidth","scrollbarHeight","scrollbarWidth","position","scrollTop","positionH","scrollLeft","top","left","orNoop","onScrolledToBottom","onScrolledToTop","reset","removeEventListener","WINDOW","moveListener","style","scrollBehavior","clientY","clientX","onmousedown","addEventListener","ondragstart","preventDefault","onmouseup","onclick","target","thumbPosition","parseInt","offsetY","offsetX","adjustScrollWidth","clientWidth","clientHeight","paddingRight","marginRight","paddingBottom","marginBottom","showScrollbar","visibility","bottom","overflowY","hideScrollbar","showHorizontalScrollbar","right","overflowX","hideHorizontalScrollbar","updateVerticalScrollbar","newRatio","Number","isFinite","isNaN","horizontalScrollBarOffset","Math","max","containerOffsetHeight","autoScrollTop","height","updateHorizontalScrollbar","verticalScrollBarOffset","containerOffsetWidth","width","setTimeout","setInterval","componentDidMount","componentWillUnmount","componentDidUpdate","prevProps","setScroll","y","getScroll","getScrollHeight","getHeight","render","_props","className","children","classNames","PureComponent","defaultProps","horizontalScrollBarMode","window","isNotProductionEnvironment","propTypes","scrollBarMode","PropTypes","oneOf","string","object","func","bool"],"mappings":";;;;;;;AAOO,IAAMA,qBAAqB,GAAG,SAA9B;AACA,IAAMC,sBAAsB,GAAG,UAA/B;AACA,IAAMC,mBAAmB,GAAG,OAA5B;AAEP,IAAIC,mBAAmB,GAAG,CAAC,CAA3B,CAAA;AACA,IAAIC,oBAAoB,GAAG,CAAC,CAA5B,CAAA;AAEA,IAAMC,cAAc,GAAG,gBAAvB,CAAA;AACA,IAAMC,WAAW,GAAG,aAApB,CAAA;AAEA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAAC,KAAK,EAAA;AAAA,EAAA,OAAI,UAAAC,EAAE,EAAA;AAAA,IAAIA,OAAAA,EAAE,CAACD,KAAD,CAAN,CAAA;AAAA,GAAN,CAAA;AAAA,CAA/B,CAAA;AACA,IAAME,cAAc,GAAGH,iBAAiB,CAAC,cAAD,CAAxC,CAAA;AACA,IAAMI,aAAa,GAAGJ,iBAAiB,CAAC,aAAD,CAAvC,CAAA;AACA,IAAMK,cAAc,GAAGL,iBAAiB,CAAC,cAAD,CAAxC,CAAA;AACA,IAAMM,aAAa,GAAGN,iBAAiB,CAAC,aAAD,CAAvC,CAAA;AACA,IAAMO,OAAO,GAAGP,iBAAiB,CAAC,OAAD,CAAjC,CAAA;AACA,IAAMQ,eAAe,GAAGR,iBAAiB,CAAC,eAAD,CAAzC,CAAA;AACA,IAAMS,QAAQ,GAAGT,iBAAiB,CAAC,UAAD,CAAlC,CAAA;AACA,IAAMU,yBAAyB,GAAGV,iBAAiB,CAAC,yBAAD,CAAnD,CAAA;IAEMW;;;AAEF,EAAA,SAAA,UAAA,CAAYC,UAAZ,EAAwB;AAAA,IAAA,IAAA,KAAA,CAAA;AAAA,IAAA,eAAA,CAAA,IAAA,EAAA,UAAA,CAAA,CAAA;AACpB,IAAA,KAAA,GAAA,MAAA,CAAA,IAAA,CAAA,IAAA,EAAMA,UAAN,CAAA,CAAA;AACA,IAAA,IAAMC,IAAI,GAAV,sBAAA,CAAA,KAAA,CAAA,CAAA;AACAA,IAAAA,IAAI,CAACC,KAAL,GAAa,EAAb,CAAA;AAEA,IAAA,IAAMC,KAAK,GAAGC,WAAW,CAACH,IAAD,CAAzB,CAAA;AACA,IAAA,IAAMI,MAAM,GAAGC,OAAO,CAACL,IAAD,CAAtB,CAAA;AACA,IAAA,IAAMM,OAAO,GAAGD,OAAO,CAACL,IAAD,CAAvB,CAAA;AAEA,IAAMO,IAAAA,YAAY,GAAGC,SAAS,EAA9B,CAAA;AACA,IAAMC,IAAAA,WAAW,GAAGD,SAAS,EAA7B,CAAA;AACA,IAAME,IAAAA,YAAY,GAAGF,SAAS,EAA9B,CAAA;AACA,IAAMG,IAAAA,sBAAsB,GAAGH,SAAS,EAAxC,CAAA;AACA,IAAMI,IAAAA,QAAQ,GAAGJ,SAAS,EAA1B,CAAA;AACA,IAAMK,IAAAA,kBAAkB,GAAGL,SAAS,EAApC,CAAA;AAEA,IAAA,IAAIM,cAAJ,CAAA;AACA,IAAA,IAAIC,WAAJ,CAAA;AAEA,IAAA,IAAMC,KAAK,GAAG,SAARA,KAAQ,GAAM;AAChBC,MAAAA,aAAa,CAACH,cAAD,CAAb,CAAA;AACAI,MAAAA,YAAY,CAACH,WAAD,CAAZ,CAAA;AACH,KAHD,CAAA;AAKA,IAAA,IAAMI,IAAI,GAAG,SAAPA,IAAO,GAAM;AACfH,MAAAA,KAAK,EAAA,CAAA;AAEL,MAAA,IAAIrB,eAAe,CAACO,KAAK,EAAN,CAAf,KAA6BtB,qBAA7B,IAAsDiB,yBAAyB,CAACK,KAAK,EAAN,CAAzB,KAAuCtB,qBAAjG,EAAwH;AACpHwB,QAAAA,MAAM,CAACnB,cAAD,CAAN,CAAA;AACAqB,QAAAA,OAAO,CAACrB,cAAD,CAAP,CAAA;AACA,QAAA,OAAA;AACH,OAAA;AAED,MAAMmC,IAAAA,QAAQ,GAAGX,WAAW,EAA5B,CAAA;AACA,MAAMY,IAAAA,SAAS,GAAGX,YAAY,EAA9B,CAAA;AACA,MAAMY,IAAAA,UAAU,GAAGX,sBAAsB,EAAzC,CAAA;AACA,MAAMY,IAAAA,SAAS,GAAGhB,YAAY,EAA9B,CAAA;AACA,MAAMiB,IAAAA,KAAK,GAAGZ,QAAQ,EAAtB,CAAA;AACA,MAAMa,IAAAA,MAAM,GAAGZ,kBAAkB,EAAjC,CAAA;AAEA,MAAIa,IAAAA,SAAS,GAAG,KAAhB,CAAA;AACA,MAAIC,IAAAA,gBAAgB,GAAG,KAAvB,CAAA;AACA,MAAIC,IAAAA,aAAa,GAAG,KAApB,CAAA;AACA,MAAIC,IAAAA,mBAAmB,GAAG,KAA1B,CAAA;AACA,MAAIC,IAAAA,KAAK,GAAG,CAAZ,CAAA;AACA,MAAIC,IAAAA,KAAK,GAAG,CAAZ,CAAA;AACA,MAAIC,IAAAA,KAAK,GAAG,CAAZ,CAAA;AACA,MAAIC,IAAAA,MAAM,GAAG,CAAb,CAAA;AACA,MAAA,IAAMC,gBAAgB,GAAGtC,QAAQ,CAACM,KAAK,EAAN,CAAjC,CAAA;AAEAkB,MAAAA,QAAQ,CAACe,QAAT,GAAoB,UAACC,CAAD,EAAO;AACvB,QAAA,IAAMC,YAAY,GAAG/C,cAAc,CAAC8B,QAAD,CAAnC,CAAA;AACA,QAAA,IAAMkB,YAAY,GAAG9C,cAAc,CAAC4B,QAAD,CAAnC,CAAA;AACA,QAAA,IAAMmB,WAAW,GAAGhD,aAAa,CAAC6B,QAAD,CAAjC,CAAA;AACA,QAAA,IAAMoB,WAAW,GAAG/C,aAAa,CAAC2B,QAAD,CAAjC,CAAA;AACA,QAAA,IAAMqB,eAAe,GAAGjD,cAAc,CAAC6B,SAAD,CAAtC,CAAA;AACA,QAAA,IAAMqB,cAAc,GAAGjD,aAAa,CAAC6B,UAAD,CAApC,CAAA;AACA,QAAIqB,IAAAA,QAAQ,GAAGvB,QAAQ,CAACwB,SAAT,IAAsBP,YAAY,GAAGC,YAArC,CAAf,CAAA;AACA,QAAMO,IAAAA,SAAS,GAAGzB,QAAQ,CAAC0B,UAAT,IAAuBP,WAAW,GAAGC,WAArC,CAAlB,CAAA;AAEA,QAAIG,IAAAA,QAAQ,GAAG,CAAf,EAAkB;AACdvB,UAAAA,QAAQ,CAACwB,SAAT,GAAqBP,YAAY,GAAGC,YAApC,CAAA;AACAK,UAAAA,QAAQ,GAAG,CAAX,CAAA;AACH,SAAA;AAEDjD,QAAAA,OAAO,CAAC8B,KAAD,CAAP,CAAeuB,GAAf,GAAsBJ,QAAQ,IAAIF,eAAe,GAAGjD,cAAc,CAACgC,KAAD,CAApC,CAAT,GAAyD,IAA9E,CAAA;AACA9B,QAAAA,OAAO,CAAC+B,MAAD,CAAP,CAAgBuB,IAAhB,GAAwBH,SAAS,IAAIH,cAAc,GAAGjD,aAAa,CAACgC,MAAD,CAAlC,CAAV,GAAyD,IAAhF,CAAA;AAEA,QAAIkB,IAAAA,QAAQ,IAAI,IAAhB,EAAsB;AAClB,UAAChB,CAAAA,gBAAD,IAAqBsB,MAAM,CAAC/C,KAAK,EAAGgD,CAAAA,kBAAT,CAAN,EAArB,CAAA;AACAvB,UAAAA,gBAAgB,GAAG,IAAnB,CAAA;AACH,SAHD,MAGO;AACHA,UAAAA,gBAAgB,GAAG,KAAnB,CAAA;AACH,SAAA;AAED,QAAIgB,IAAAA,QAAQ,IAAI,IAAhB,EAAsB;AAClB,UAACf,CAAAA,aAAD,IAAkBqB,MAAM,CAAC/C,KAAK,EAAGiD,CAAAA,eAAT,CAAN,EAAlB,CAAA;AACAvB,UAAAA,aAAa,GAAG,IAAhB,CAAA;AACH,SAHD,MAGO;AACHA,UAAAA,aAAa,GAAG,KAAhB,CAAA;AACH,SAAA;AAEDM,QAAAA,gBAAgB,IAAIA,gBAAgB,CAACE,CAAD,CAApC,CAAA;AACH,OAjCD,CAAA;AAkCA,MAAA,IAAMgB,KAAK,GAAG,SAARA,KAAQ,GAAM;AAChBC,QAAAA,mBAAmB,CAACC,MAAD,EAAS,SAAT,EAAoBF,KAApB,CAAnB,CAAA;AACAC,QAAAA,mBAAmB,CAACC,MAAD,EAAS,WAAT,EAAsBC,YAAtB,CAAnB,CAAA;AACAnC,QAAAA,QAAQ,CAACoC,KAAT,CAAeC,cAAf,GAAgC,EAAhC,CAAA;AACA/B,QAAAA,SAAS,GAAG,KAAZ,CAAA;AACH,OALD,CAAA;AAMA,MAAA,IAAM6B,YAAY,GAAG,SAAfA,YAAe,CAACnB,CAAD,EAAO;AACxB,QAAI,IAAA,CAACV,SAAL,EACI,OAAA;AAEJ,QAAIA,IAAAA,SAAS,KAAK,GAAlB,EAAuB;AACnBN,UAAAA,QAAQ,CAACwB,SAAT,IAAsB,CAACR,CAAC,CAACsB,OAAF,GAAY5B,KAAb,IAAsBE,KAA5C,CAAA;AACAF,UAAAA,KAAK,GAAGM,CAAC,CAACsB,OAAV,CAAA;AACH,SAHD,MAGO,IAAIhC,SAAS,KAAK,GAAlB,EAAuB;AAC1BN,UAAAA,QAAQ,CAAC0B,UAAT,IAAuB,CAACV,CAAC,CAACuB,OAAF,GAAY5B,KAAb,IAAsBE,MAA7C,CAAA;AACAF,UAAAA,KAAK,GAAGK,CAAC,CAACuB,OAAV,CAAA;AACH,SAAA;AACJ,OAXD,CAAA;AAYAnC,MAAAA,KAAK,CAACoC,WAAN,GAAoB,UAACxB,CAAD,EAAO;AACvBN,QAAAA,KAAK,GAAGM,CAAC,CAACsB,OAAV,CAAA;AACAhC,QAAAA,SAAS,GAAG,GAAZ,CAAA;AACAM,QAAAA,KAAK,GAAG1C,cAAc,CAAC8B,QAAD,CAAd,GAA2B5B,cAAc,CAAC4B,QAAD,CAAjD,CAAA;AACAA,QAAAA,QAAQ,CAACoC,KAAT,CAAeC,cAAf,GAAgC,OAAhC,CAAA;AAEAI,QAAAA,gBAAgB,CAACP,MAAD,EAAS,SAAT,EAAoBF,KAApB,CAAhB,CAAA;AACAS,QAAAA,gBAAgB,CAACP,MAAD,EAAS,WAAT,EAAsBC,YAAtB,CAAhB,CAAA;AACH,OARD,CAAA;AASA/B,MAAAA,KAAK,CAACsC,WAAN,GAAoBC,cAApB,CAAA;AACAvC,MAAAA,KAAK,CAACwC,SAAN,GAAkBZ,KAAlB,CAAA;AAEA3B,MAAAA,MAAM,CAACmC,WAAP,GAAqB,UAACxB,CAAD,EAAO;AACxBL,QAAAA,KAAK,GAAGK,CAAC,CAACuB,OAAV,CAAA;AACAjC,QAAAA,SAAS,GAAG,GAAZ,CAAA;AACAO,QAAAA,MAAM,GAAG1C,aAAa,CAAC6B,QAAD,CAAb,GAA0B3B,aAAa,CAAC2B,QAAD,CAAhD,CAAA;AACAA,QAAAA,QAAQ,CAACoC,KAAT,CAAeC,cAAf,GAAgC,OAAhC,CAAA;AAEAI,QAAAA,gBAAgB,CAACP,MAAD,EAAS,SAAT,EAAoBF,KAApB,CAAhB,CAAA;AACAS,QAAAA,gBAAgB,CAACP,MAAD,EAAS,WAAT,EAAsBC,YAAtB,CAAhB,CAAA;AACH,OARD,CAAA;AASA9B,MAAAA,MAAM,CAACqC,WAAP,GAAqBC,cAArB,CAAA;AACAtC,MAAAA,MAAM,CAACuC,SAAP,GAAmBZ,KAAnB,CAAA;AAEA/B,MAAAA,SAAS,CAAC4C,OAAV,GAAoB,UAAC7B,CAAD,EAAO;AACvB,QAAA,IAAIA,CAAC,CAAC8B,MAAF,KAAa7C,SAAjB,EAA4B;AACxB,UAAI8C,IAAAA,aAAa,GAAGC,QAAQ,CAAC1E,OAAO,CAAC8B,KAAD,CAAP,CAAeuB,GAAhB,CAA5B,CAAA;AACA3B,UAAAA,QAAQ,CAACwB,SAAT,IAAsBpD,cAAc,CAAC4B,QAAD,CAAd,GAA2B,GAA3B,IAAkCgB,CAAC,CAACiC,OAAF,GAAYF,aAAZ,GAA4B,CAAC,CAA7B,GAAiC,CAAnE,CAAtB,CAAA;AACH,SAAA;AACJ,OALD,CAAA;AAMA7C,MAAAA,UAAU,CAAC2C,OAAX,GAAqB,UAAC7B,CAAD,EAAO;AACxB,QAAA,IAAIA,CAAC,CAAC8B,MAAF,KAAa5C,UAAjB,EAA6B;AACzB,UAAI6C,IAAAA,aAAa,GAAGC,QAAQ,CAAC1E,OAAO,CAAC+B,MAAD,CAAP,CAAgBuB,IAAjB,CAA5B,CAAA;AACA5B,UAAAA,QAAQ,CAAC0B,UAAT,IAAuBrD,aAAa,CAAC2B,QAAD,CAAb,GAA0B,GAA1B,IAAiCgB,CAAC,CAACkC,OAAF,GAAYH,aAAZ,GAA4B,CAAC,CAA7B,GAAiC,CAAlE,CAAvB,CAAA;AACH,SAAA;AACJ,OALD,CAAA;AAOA,MAAA,IAAMI,iBAAiB,GAAG,SAApBA,iBAAoB,GAAM;AAC5B,QAAIxF,IAAAA,mBAAmB,GAAG,CAA1B,EAA6B;AACzBA,UAAAA,mBAAmB,GAAGqC,QAAQ,CAACoB,WAAT,GAAuBpB,QAAQ,CAACoD,WAAtD,CAAA;AACA,UAAA,IAAIzF,mBAAmB,KAAK,CAAxB,IAA6BO,cAAc,CAAC8B,QAAD,CAAd,KAA6B5B,cAAc,CAAC4B,QAAD,CAA5E,EAAwF;AACpFrC,YAAAA,mBAAmB,GAAG,CAAC,CAAvB,CAAA;AACH,WAAA;AACJ,SAAA;AACD,QAAIC,IAAAA,oBAAoB,GAAG,CAA3B,EAA8B;AAC1BA,UAAAA,oBAAoB,GAAGoC,QAAQ,CAACkB,YAAT,GAAwBlB,QAAQ,CAACqD,YAAxD,CAAA;AACA,UAAA,IAAIzF,oBAAoB,KAAK,CAAzB,IAA8BO,aAAa,CAAC6B,QAAD,CAAb,KAA4B3B,aAAa,CAAC2B,QAAD,CAA3E,EAAuF;AACnFpC,YAAAA,oBAAoB,GAAG,CAAC,CAAxB,CAAA;AACH,WAAA;AACJ,SAAA;AAED,QAAI,IAAA,CAAC6C,mBAAL,EAA0B;AACtB,UAAA,IAAI9C,mBAAmB,IAAI,CAAvB,IAA4BqB,MAAM,EAAA,KAAOnB,cAA7C,EAA6D;AACzDS,YAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBsD,YAAlB,GAAkC3F,mBAAD,GAAwBsC,SAAS,CAACmD,WAAlC,GAAgD,IAAjF,CAAA;AACA9E,YAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBuD,WAAlB,GAAgC,CAAE5F,mBAAF,GAAyBsC,SAAS,CAACmD,WAAnC,GAAiD,IAAjF,CAAA;AACH,WAAA;AACD,UAAA,IAAIxF,oBAAoB,IAAI,CAAxB,IAA6BsB,OAAO,EAAA,KAAOrB,cAA/C,EAA+D;AAC3DS,YAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBwD,aAAlB,GAAmC5F,oBAAD,GAAyBsC,UAAU,CAACmD,YAApC,GAAmD,IAArF,CAAA;AACA/E,YAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkByD,YAAlB,GAAiC,CAAE7F,oBAAF,GAA0BsC,UAAU,CAACmD,YAArC,GAAoD,IAArF,CAAA;AACH,WAAA;AACD5C,UAAAA,mBAAmB,GAAG,IAAtB,CAAA;AACH,SAAA;AACJ,OAzBD,CAAA;AA2BA0C,MAAAA,iBAAiB,EAAA,CAAA;AAEjB,MAAMO,IAAAA,aAAa,GAAG,SAAhBA,aAAgB,CAACzD,SAAD,EAAYD,QAAZ,EAAsBmD,iBAAtB,EAA4C;AAC9D7E,QAAAA,OAAO,CAAC2B,SAAD,CAAP,CAAmB0D,UAAnB,GAAgC,SAAhC,CAAA;AACArF,QAAAA,OAAO,CAAC2B,SAAD,CAAP,CAAmB2D,MAAnB,GAA4B,GAA5B,CAF8D;AAG9DtF,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkB6D,SAAlB,GAA8B,EAA9B,CAAA;AACAV,QAAAA,iBAAiB,EAAA,CAAA;AACjBnE,QAAAA,MAAM,EAAOlB,KAAAA,WAAb,IAA4BkB,MAAM,CAAClB,WAAD,CAAlC,CAAA;AACH,OAND,CAAA;AAQA,MAAMgG,IAAAA,aAAa,GAAG,SAAhBA,aAAgB,CAAC7D,SAAD,EAAYD,QAAZ,EAAyB;AAC3C1B,QAAAA,OAAO,CAAC2B,SAAD,CAAP,CAAmB0D,UAAnB,GAAgC,QAAhC,CAD2C;AAE3CrF,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkB6D,SAAlB,GAA8B,SAA9B,CAAA;AACAvF,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBsD,YAAlB,GAAiC,GAAjC,CAAA;AACAhF,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBuD,WAAlB,GAAgC,GAAhC,CAAA;AACAvE,QAAAA,MAAM,EAAOnB,KAAAA,cAAb,IAA+BmB,MAAM,CAACnB,cAAD,CAArC,CAAA;AACH,OAND,CAAA;AAQA,MAAMkG,IAAAA,uBAAuB,GAAG,SAA1BA,uBAA0B,CAAC9D,SAAD,EAAYD,QAAZ,EAAsBmD,iBAAtB,EAA4C;AACxE7E,QAAAA,OAAO,CAAC2B,SAAD,CAAP,CAAmB0D,UAAnB,GAAgC,SAAhC,CAAA;AACArF,QAAAA,OAAO,CAAC2B,SAAD,CAAP,CAAmB+D,KAAnB,GAA2B,GAA3B,CAFwE;AAGxE1F,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBiE,SAAlB,GAA8B,EAA9B,CAAA;AACAd,QAAAA,iBAAiB,EAAA,CAAA;AACjBjE,QAAAA,OAAO,EAAOpB,KAAAA,WAAd,IAA6BoB,OAAO,CAACpB,WAAD,CAApC,CAAA;AACH,OAND,CAAA;AAQA,MAAMoG,IAAAA,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACjE,SAAD,EAAYD,QAAZ,EAAyB;AACrD1B,QAAAA,OAAO,CAAC2B,SAAD,CAAP,CAAmB0D,UAAnB,GAAgC,QAAhC,CADqD;AAErDrF,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBiE,SAAlB,GAA8B,SAA9B,CAAA;AACA3F,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkBwD,aAAlB,GAAkC,GAAlC,CAAA;AACAlF,QAAAA,OAAO,CAAC0B,QAAD,CAAP,CAAkByD,YAAlB,GAAiC,GAAjC,CAAA;AACAvE,QAAAA,OAAO,EAAOrB,KAAAA,cAAd,IAAgCqB,OAAO,CAACrB,cAAD,CAAvC,CAAA;AACH,OAND,CAAA;AAQA,MAAA,IAAMsG,uBAAuB,GAAG,SAA1BA,uBAA0B,GAAM;AAClC,QAAA,IAAMlD,YAAY,GAAG/C,cAAc,CAAC8B,QAAD,CAAnC,CAAA;AACA,QAAA,IAAMqB,eAAe,GAAGjD,cAAc,CAAC6B,SAAD,CAAtC,CAAA;AAEA,QAACQ,CAAAA,mBAAD,IAAwB0C,iBAAiB,EAAzC,CAAA;AAEA,QAAA,IAAMiB,QAAQ,GAAGnD,YAAY,GAAGI,eAAhC,CAAA;AACA,QAAA,IAAKT,KAAK,KAAKwD,QAAV,IAAsBC,MAAM,CAACC,QAAP,CAAgBF,QAAhB,CAAvB,IAAqDC,MAAM,CAACE,KAAP,CAAaH,QAAb,CAAzD,EAAiF,OAAA;AAEjF,QAAA,IAAMlD,YAAY,GAAG9C,cAAc,CAAC4B,QAAD,CAAnC,CAAA;AACA,QAAA,IAAMwE,yBAAyB,GAAGtF,OAAO,OAAOrB,cAAd,GAA+BqC,UAAU,CAACmD,YAAX,GAA0BoB,IAAI,CAACC,GAAL,CAAS9G,oBAAT,EAA+B,CAA/B,CAAzD,GAA6F,CAA/H,CAAA;AAEA,QAAA,IAAI+G,qBAAqB,GAAGvG,cAAc,CAAC+B,SAAD,CAAd,GAA4BqE,yBAAxD,CAAA;AACA,QAAA,IAAIG,qBAAqB,KAAK1D,YAA1B,IAA0CjC,MAAM,EAAA,KAAOnB,cAA3D,EACI,OAAA;AAEJ,QAAA,IAAIiB,KAAK,EAAA,CAAG8F,aAAR,IAAyB3D,YAAY,GAAGC,YAAf,GAA8BlB,QAAQ,CAACwB,SAAvC,IAAoD,EAA7E,IAAmF4C,QAAQ,GAAGxD,KAA9F,IAAuGyD,MAAM,CAACC,QAAP,CAAgBF,QAAhB,CAAvG,IAAoIC,MAAM,CAACC,QAAP,CAAgB1D,KAAhB,CAAxI,EAAgK;AAC5JZ,UAAAA,QAAQ,CAACwB,SAAT,GAAqB,CAArB,CAD4J;AAE/J,SAAA;AAEDZ,QAAAA,KAAK,GAAGwD,QAAR,CAAA;AACA9F,QAAAA,OAAO,CAAC8B,KAAD,CAAP,CAAeyE,MAAf,GAAyBxD,eAAe,GAAG+C,QAAnB,GAA+B,IAAvD,CAAA;AAEA9F,QAAAA,OAAO,CAAC6B,SAAD,CAAP,CAAmB0E,MAAnB,GAA4B5D,YAAY,GAAGuD,yBAAf,GAA2C,IAAvE,CAAA;AACAG,QAAAA,qBAAqB,GAAGvG,cAAc,CAAC+B,SAAD,CAAd,GAA4BqE,yBAApD,CAAA;AAEA,QAAA,IAAIjG,eAAe,CAACO,KAAK,EAAN,CAAf,KAA6BtB,qBAAjC,EAAwD;AACpD,UAAIwB,IAAAA,MAAM,OAAOnB,cAAjB,EACIiG,aAAa,CAAC7D,SAAD,EAAYD,QAAZ,CAAb,CAAA;AAEJ,UAAA,OAAA;AACH,SAAA;AAED,QAAI2E,IAAAA,qBAAqB,GAAG1D,YAA5B,EAA0C;AACtCR,UAAAA,mBAAmB,GAAG,KAAtB,CAAA;AACAiD,UAAAA,aAAa,CAACzD,SAAD,EAAYD,QAAZ,EAAsBmD,iBAAtB,CAAb,CAAA;AACH,SAHD,MAGO;AACHW,UAAAA,aAAa,CAAC7D,SAAD,EAAYD,QAAZ,CAAb,CAAA;AACH,SAAA;AAEDO,QAAAA,gBAAgB,GAAG,KAAnB,CAAA;AACAC,QAAAA,aAAa,GAAG,KAAhB,CAAA;AAEA,QAAMe,IAAAA,QAAQ,GAAGvB,QAAQ,CAACwB,SAAT,IAAsBP,YAAY,GAAGC,YAArC,CAAjB,CAAA;AACA5C,QAAAA,OAAO,CAAC8B,KAAD,CAAP,CAAeuB,GAAf,GAAsBJ,QAAQ,IAAIF,eAAe,GAAGjD,cAAc,CAACgC,KAAD,CAApC,CAAT,GAAyD,IAA9E,CAAA;AACH,OA7CD,CAAA;AA+CA,MAAA,IAAM0E,yBAAyB,GAAG,SAA5BA,yBAA4B,GAAM;AAEpC,QAAA,IAAM3D,WAAW,GAAGhD,aAAa,CAAC6B,QAAD,CAAjC,CAAA;AACA,QAAA,IAAMsB,cAAc,GAAGjD,aAAa,CAAC6B,UAAD,CAApC,CAAA;AAEA,QAACO,CAAAA,mBAAD,IAAwB0C,iBAAiB,EAAzC,CAAA;AAEA,QAAA,IAAMiB,QAAQ,GAAGjD,WAAW,GAAGG,cAA/B,CAAA;AACA,QAAA,IAAKT,MAAM,KAAKuD,QAAX,IAAuBC,MAAM,CAACC,QAAP,CAAgBF,QAAhB,CAAxB,IAAsDC,MAAM,CAACE,KAAP,CAAaH,QAAb,CAA1D,EAAkF,OAAA;AAElF,QAAA,IAAMhD,WAAW,GAAG/C,aAAa,CAAC2B,QAAD,CAAjC,CAAA;AAEA,QAAA,IAAM+E,uBAAuB,GAAG/F,MAAM,OAAOnB,cAAb,GAA8BoC,SAAS,CAACmD,WAAV,GAAwBqB,IAAI,CAACC,GAAL,CAAS/G,mBAAT,EAA8B,CAA9B,CAAtD,GAAyF,CAAzH,CAAA;AACA,QAAA,IAAIqH,oBAAoB,GAAG3G,aAAa,CAAC8B,SAAD,CAAb,GAA2B4E,uBAAtD,CAAA;AAEA,QAAA,IAAIC,oBAAoB,KAAK7D,WAAzB,IAAwCjC,OAAO,EAAA,KAAOrB,cAA1D,EACI,OAAA;AAEJgD,QAAAA,MAAM,GAAGuD,QAAT,CAAA;AACA9F,QAAAA,OAAO,CAAC+B,MAAD,CAAP,CAAgB4E,KAAhB,GAAyB3D,cAAc,GAAG8C,QAAlB,GAA8B,IAAtD,CAAA;AAGA,QAAA,IAAI3F,yBAAyB,CAACK,KAAK,EAAN,CAAzB,KAAuCtB,qBAA3C,EAAkE;AAC9D,UAAI0B,IAAAA,OAAO,OAAOrB,cAAlB,EACIqG,uBAAuB,CAAChE,UAAD,EAAaF,QAAb,CAAvB,CAAA;AAEJ,UAAA,OAAA;AACH,SAAA;AAED1B,QAAAA,OAAO,CAAC6B,SAAD,CAAP,CAAmB8E,KAAnB,GAA4B9D,WAAW,GAAG4D,uBAAf,GAA0C,IAArE,CAAA;AACAC,QAAAA,oBAAoB,GAAG3G,aAAa,CAAC8B,SAAD,CAAb,GAA2B4E,uBAAlD,CAAA;AAEA,QAAIC,IAAAA,oBAAoB,GAAG7D,WAA3B,EAAwC;AACpCV,UAAAA,mBAAmB,GAAG,KAAtB,CAAA;AACAsD,UAAAA,uBAAuB,CAAC7D,UAAD,EAAaF,QAAb,EAAuBmD,iBAAvB,CAAvB,CAAA;AACH,SAHD,MAGO;AACHe,UAAAA,uBAAuB,CAAChE,UAAD,EAAaF,QAAb,CAAvB,CAAA;AACH,SAAA;AAED,QAAMuB,IAAAA,QAAQ,GAAGvB,QAAQ,CAAC0B,UAAT,IAAuBP,WAAW,GAAGC,WAArC,CAAjB,CAAA;AACA9C,QAAAA,OAAO,CAAC+B,MAAD,CAAP,CAAgBuB,IAAhB,GAAwBL,QAAQ,IAAID,cAAc,GAAGjD,aAAa,CAACgC,MAAD,CAAlC,CAAT,GAAwD,IAA/E,CAAA;AACH,OAzCD,CAAA;AA2CAV,MAAAA,WAAW,GAAGuF,UAAU,CAAC,YAAM;AAC3BxF,QAAAA,cAAc,GAAGyF,WAAW,CAAC,YAAM;AAC/BhB,UAAAA,uBAAuB,EAAA,CAAA;AACvBW,UAAAA,yBAAyB,EAAA,CAAA;AAC5B,SAH2B,EAGzB,EAHyB,CAA5B,CAAA;AAIH,OALuB,EAKrB,GALqB,CAAxB,CAAA;AAMH,KAhRD,CAAA;AAkRAlG,IAAAA,IAAI,CAACwG,iBAAD,CAAJ,GAA0BrF,IAA1B,CAAA;AACAnB,IAAAA,IAAI,CAACyG,oBAAD,CAAJ,GAA6BzF,KAA7B,CAAA;AAEAhB,IAAAA,IAAI,CAAC0G,kBAAD,CAAJ,GAA2B,UAACC,SAAD,EAAe;AACtC,MAAIhH,IAAAA,eAAe,CAACO,KAAK,EAAN,CAAf,KAA6BP,eAAe,CAACgH,SAAD,CAAhD,EACIxF,IAAI,EAAA,CADR,KAEK,IAAIvB,QAAQ,CAACM,KAAK,EAAN,CAAR,KAAsBN,QAAQ,CAAC+G,SAAD,CAAlC,EACDxF,IAAI,EAAA,CAAA;AACX,KALD,CAAA;AAOAnB,IAAAA,IAAI,CAAC4G,SAAL,GAAiB,UAACC,CAAD,EAAO;AACpBpG,MAAAA,WAAW,EAAA,CAAGmC,SAAd,GAA0BiE,CAA1B,CAAA;AACH,KAFD,CAAA;AAGA7G,IAAAA,IAAI,CAAC8G,SAAL,GAAiB,YAAA;AAAA,MAAMrG,OAAAA,WAAW,GAAGmC,SAApB,CAAA;AAAA,KAAjB,CAAA;AACA5C,IAAAA,IAAI,CAAC+G,eAAL,GAAuB,YAAA;AAAA,MAAA,OAAMzH,cAAc,CAACmB,WAAW,EAAZ,CAApB,CAAA;AAAA,KAAvB,CAAA;AACAT,IAAAA,IAAI,CAACgH,SAAL,GAAiB,YAAA;AAAA,MAAMzG,OAAAA,YAAY,GAAGkE,YAArB,CAAA;AAAA,KAAjB,CAAA;AAEAzE,IAAAA,IAAI,CAACiH,MAAD,CAAJ,GAAe,YAAM;AACjB,MAAMC,IAAAA,MAAM,GAAGhH,KAAK,EAApB,CAAA;AACA,MAAA,IAAOiH,SAAP,GAA8BD,MAA9B,CAAOC,SAAP;AAAA,UAAkBC,QAAlB,GAA8BF,MAA9B,CAAkBE,QAAlB,CAAA;AACA,MACI,OAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAEC,UAAU,CAAC,YAAD,EAAeF,SAAf,EAA0B/G,MAAM,MAAMlB,WAAtC,EAAmDoB,OAAO,EAAA,GAAK,aAA/D,CAA1B;AAAyG,QAAA,KAAK,EAAEZ,OAAO,CAACwH,MAAD,CAAvH;AAAiI,QAAA,GAAG,EAAE3G,YAAAA;AAAtI,OACI,EAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAC,UAAf;AAA0B,QAAA,GAAG,EAAEE,WAAAA;AAA/B,OACK2G,EAAAA,QADL,CADJ,EAII,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAEC,UAAU,CAAC,WAAD,EAAc1H,eAAe,CAACuH,MAAD,CAAf,IAA2BpI,mBAAzC,CAA1B;AAAyF,QAAA,GAAG,EAAE4B,YAAAA;AAA9F,OACI,EAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAC,OAAf;AAAuB,QAAA,GAAG,EAAEE,QAAAA;AAA5B,OAAA,CADJ,CAJJ,EAOI,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAEyG,UAAU,CAAC,sBAAD,EAAyBxH,yBAAyB,CAACqH,MAAD,CAAlD,CAA1B;AAAuF,QAAA,GAAG,EAAEvG,sBAAAA;AAA5F,OACI,EAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAC,OAAf;AAAuB,QAAA,GAAG,EAAEE,kBAAAA;AAA5B,OAAA,CADJ,CAPJ,CADJ,CAAA;AAaH,KAhBD,CAAA;AA3ToB,IAAA,OAAA,KAAA,CAAA;AA4UvB,GAAA;;EA9UoByG;AAiVzB,mBAAexH,UAAf,CAAA;AAEAA,UAAU,CAACyH,YAAX,GAA0B;AACtBvB,EAAAA,aAAa,EAAE,IADO;AAEtBwB,EAAAA,uBAAuB,EAAE5I,qBAAAA;AAFH,CAA1B,CAAA;AAKA,IAAI6I,MAAM,CAACC,0BAAX,EAAuC;AACnC5H,EAAAA,UAAU,CAAC6H,SAAX,GAAuB;AACnBC,IAAAA,aAAa,EAAEC,SAAS,CAACC,KAAV,CAAgB,CAAChJ,mBAAD,EAAsBF,qBAAtB,EAA6CC,sBAA7C,CAAhB,CADI;AAEnB2I,IAAAA,uBAAuB,EAAEK,SAAS,CAACC,KAAV,CAAgB,CAAChJ,mBAAD,EAAsBF,qBAAtB,EAA6CC,sBAA7C,CAAhB,CAFN;AAGnBsI,IAAAA,SAAS,EAAEU,SAAS,CAACE,MAHF;AAInBvE,IAAAA,KAAK,EAAEqE,SAAS,CAACG,MAJE;AAKnB9E,IAAAA,kBAAkB,EAAE2E,SAAS,CAACI,IALX;AAMnB9E,IAAAA,eAAe,EAAE0E,SAAS,CAACI,IANR;AAOnBjC,IAAAA,aAAa,EAAE6B,SAAS,CAACK,IAAAA;AAPN,GAAvB,CAAA;AASH;;;;"}
|
|
1
|
+
{"version":3,"file":"Scrollable.js","sources":["../../../src/react-ui-basics/Scrollable.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport PropTypes from 'prop-types';\nimport './Scrollable.css'\nimport {classNames, preventDefault, WINDOW, addEventListener, removeEventListener, setTimeout, clearTimeout, setInterval, clearInterval, createRef, orNoop, NOOP} from \"./Tools\";\nimport {propsGetter, stateGS, PureComponent, render, componentDidMount, componentDidUpdate, componentWillUnmount} from \"./ReactConstants\";\n\nexport const SCROLLBAR_MODE_HIDDEN = 'hidden';\nexport const SCROLLBAR_MODE_VISIBLE = 'visible';\nexport const SCROLLBAR_MODE_AUTO = 'auto';\n\nlet NATIVE_SCROLL_WIDTH = -1;\nlet NATIVE_SCROLL_HEIGHT = -1;\n\nconst WITHOUT_SCROLL = 'without-scroll';\nconst WITH_SCROLL = 'with-scroll';\n\nconst createFieldGetter = field => el => el[field];\nconst scrollHeightOf = createFieldGetter('scrollHeight');\nconst scrollWidthOf = createFieldGetter('scrollWidth');\nconst offsetHeightOf = createFieldGetter('offsetHeight');\nconst offsetWidthOf = createFieldGetter('offsetWidth');\nconst styleOf = createFieldGetter('style');\nconst scrollBarModeOf = createFieldGetter('scrollBarMode');\nconst onScroll = createFieldGetter('onScroll');\nconst horizontalScrollBarModeOf = createFieldGetter('horizontalScrollBarMode');\n\nclass Scrollable extends PureComponent {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const props = propsGetter(that);\n const status = stateGS(that);\n const statusH = stateGS(that);\n\n const containerRef = createRef();\n const viewportRef = createRef();\n const scrollbarRef = createRef();\n const horizontalScrollbarRef = createRef();\n const thumbRef = createRef();\n const horizontalThumbRef = createRef();\n\n let resizeInterval;\n let initTimeout;\n\n const clear = () => {\n clearInterval(resizeInterval);\n clearTimeout(initTimeout);\n };\n\n const init = () => {\n clear();\n\n if (scrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN && horizontalScrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN) {\n status(WITHOUT_SCROLL);\n statusH(WITHOUT_SCROLL);\n return;\n }\n\n const viewport = viewportRef();\n const scrollbar = scrollbarRef();\n const scrollbarH = horizontalScrollbarRef();\n const container = containerRef();\n const thumb = thumbRef();\n const thumbH = horizontalThumbRef();\n\n let scrolling = false;\n let scrolledToBottom = false;\n let scrolledToTop = false;\n let adjustedScrollWidth = false;\n let lastY = 0;\n let lastX = 0;\n let ratio = 0;\n let ratioH = 0;\n const onScrollListener = onScroll(props())\n\n viewport.onscroll = (e) => {\n const scrollHeight = scrollHeightOf(viewport);\n const offsetHeight = offsetHeightOf(viewport);\n const scrollWidth = scrollWidthOf(viewport);\n const offsetWidth = offsetWidthOf(viewport);\n const scrollbarHeight = offsetHeightOf(scrollbar);\n const scrollbarWidth = offsetWidthOf(scrollbarH);\n let position = viewport.scrollTop / (scrollHeight - offsetHeight);\n const positionH = viewport.scrollLeft / (scrollWidth - offsetWidth);\n\n if (position > 1) {\n viewport.scrollTop = scrollHeight - offsetHeight;\n position = 1\n }\n\n styleOf(thumb).top = (position * (scrollbarHeight - offsetHeightOf(thumb))) + 'px';\n styleOf(thumbH).left = (positionH * (scrollbarWidth - offsetWidthOf(thumbH))) + 'px';\n\n if (position >= 0.98) {\n !scrolledToBottom && orNoop(props().onScrolledToBottom)();\n scrolledToBottom = true;\n } else {\n scrolledToBottom = false;\n }\n\n if (position <= 0.02) {\n !scrolledToTop && orNoop(props().onScrolledToTop)();\n scrolledToTop = true;\n } else {\n scrolledToTop = false;\n }\n\n onScrollListener && onScrollListener(e)\n };\n const reset = () => {\n removeEventListener(WINDOW, 'mouseup', reset);\n removeEventListener(WINDOW, 'mousemove', moveListener);\n viewport.style.scrollBehavior = ''\n scrolling = false;\n };\n const moveListener = (e) => {\n if (!scrolling)\n return;\n\n if (scrolling === 'v') {\n viewport.scrollTop += (e.clientY - lastY) * ratio;\n lastY = e.clientY;\n } else if (scrolling === 'h') {\n viewport.scrollLeft += (e.clientX - lastX) * ratioH;\n lastX = e.clientX;\n }\n };\n thumb.onmousedown = (e) => {\n lastY = e.clientY;\n scrolling = 'v';\n ratio = scrollHeightOf(viewport) / offsetHeightOf(viewport);\n viewport.style.scrollBehavior = 'unset'\n\n addEventListener(WINDOW, 'mouseup', reset);\n addEventListener(WINDOW, 'mousemove', moveListener);\n };\n thumb.ondragstart = preventDefault;\n thumb.onmouseup = reset;\n\n thumbH.onmousedown = (e) => {\n lastX = e.clientX;\n scrolling = 'h';\n ratioH = scrollWidthOf(viewport) / offsetWidthOf(viewport);\n viewport.style.scrollBehavior = 'unset'\n\n addEventListener(WINDOW, 'mouseup', reset);\n addEventListener(WINDOW, 'mousemove', moveListener);\n };\n thumbH.ondragstart = preventDefault;\n thumbH.onmouseup = reset;\n\n scrollbar.onclick = (e) => {\n if (e.target === scrollbar) {\n let thumbPosition = parseInt(styleOf(thumb).top);\n viewport.scrollTop += offsetHeightOf(viewport) * 0.9 * (e.offsetY < thumbPosition ? -1 : 1);\n }\n };\n scrollbarH.onclick = (e) => {\n if (e.target === scrollbarH) {\n let thumbPosition = parseInt(styleOf(thumbH).left);\n viewport.scrollLeft += offsetWidthOf(viewport) * 0.9 * (e.offsetX < thumbPosition ? -1 : 1);\n }\n };\n\n const adjustScrollWidth = () => {\n if (NATIVE_SCROLL_WIDTH < 0) {\n NATIVE_SCROLL_WIDTH = viewport.offsetWidth - viewport.clientWidth;\n if (NATIVE_SCROLL_WIDTH === 0 && scrollHeightOf(viewport) !== offsetHeightOf(viewport)) {\n NATIVE_SCROLL_WIDTH = -1;\n }\n }\n if (NATIVE_SCROLL_HEIGHT < 0) {\n NATIVE_SCROLL_HEIGHT = viewport.offsetHeight - viewport.clientHeight;\n if (NATIVE_SCROLL_HEIGHT === 0 && scrollWidthOf(viewport) !== offsetWidthOf(viewport)) {\n NATIVE_SCROLL_HEIGHT = -1;\n }\n }\n\n if (!adjustedScrollWidth) {\n if (NATIVE_SCROLL_WIDTH >= 0 && status() !== WITHOUT_SCROLL) {\n styleOf(viewport).paddingRight = (NATIVE_SCROLL_WIDTH) + scrollbar.clientWidth + 'px';\n styleOf(viewport).marginRight = -(NATIVE_SCROLL_WIDTH) - scrollbar.clientWidth + 'px';\n }\n if (NATIVE_SCROLL_HEIGHT >= 0 && statusH() !== WITHOUT_SCROLL) {\n styleOf(viewport).paddingBottom = (NATIVE_SCROLL_HEIGHT) + scrollbarH.clientHeight + 'px';\n styleOf(viewport).marginBottom = -(NATIVE_SCROLL_HEIGHT) - scrollbarH.clientHeight + 'px';\n }\n adjustedScrollWidth = true;\n }\n };\n\n adjustScrollWidth();\n\n const showScrollbar = (scrollbar, viewport, adjustScrollWidth) => {\n styleOf(scrollbar).visibility = 'inherit';\n styleOf(scrollbar).bottom = '0'; //enable scrollbar\n styleOf(viewport).overflowY = '';\n adjustScrollWidth();\n status() !== WITH_SCROLL && status(WITH_SCROLL);\n };\n\n const hideScrollbar = (scrollbar, viewport) => {\n styleOf(scrollbar).visibility = 'hidden'; //disable scrollbar\n styleOf(viewport).overflowY = 'inherit';\n styleOf(viewport).paddingRight = '0';\n styleOf(viewport).marginRight = '0';\n status() !== WITHOUT_SCROLL && status(WITHOUT_SCROLL);\n };\n\n const showHorizontalScrollbar = (scrollbar, viewport, adjustScrollWidth) => {\n styleOf(scrollbar).visibility = 'inherit';\n styleOf(scrollbar).right = '0'; //enable scrollbar\n styleOf(viewport).overflowX = '';\n adjustScrollWidth();\n statusH() !== WITH_SCROLL && statusH(WITH_SCROLL);\n };\n\n const hideHorizontalScrollbar = (scrollbar, viewport) => {\n styleOf(scrollbar).visibility = 'hidden'; //disable scrollbar\n styleOf(viewport).overflowX = 'inherit';\n styleOf(viewport).paddingBottom = '0';\n styleOf(viewport).marginBottom = '0';\n statusH() !== WITHOUT_SCROLL && statusH(WITHOUT_SCROLL);\n };\n\n const updateVerticalScrollbar = () => {\n const scrollHeight = scrollHeightOf(viewport);\n const scrollbarHeight = offsetHeightOf(scrollbar);\n\n !adjustedScrollWidth && adjustScrollWidth();\n\n const newRatio = scrollHeight / scrollbarHeight;\n if ((ratio === newRatio && Number.isFinite(newRatio)) || Number.isNaN(newRatio)) return;\n\n const offsetHeight = offsetHeightOf(viewport);\n const horizontalScrollBarOffset = statusH() !== WITHOUT_SCROLL ? scrollbarH.clientHeight + Math.max(NATIVE_SCROLL_HEIGHT, 0) : 0;\n\n let containerOffsetHeight = offsetHeightOf(container) + horizontalScrollBarOffset;\n if (containerOffsetHeight === scrollHeight && status() === WITHOUT_SCROLL)\n return;\n\n if (props().autoScrollTop && scrollHeight - offsetHeight - viewport.scrollTop <= 20 && newRatio < ratio && Number.isFinite(newRatio) && Number.isFinite(ratio)) {\n viewport.scrollTop = 0; // scroll to top if scrollbar gets smaller\n }\n\n ratio = newRatio;\n styleOf(thumb).height = (scrollbarHeight / newRatio) + 'px';\n\n styleOf(container).height = scrollHeight - horizontalScrollBarOffset + 'px';\n containerOffsetHeight = offsetHeightOf(container) + horizontalScrollBarOffset;\n\n if (scrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN) {\n if (status() !== WITHOUT_SCROLL)\n hideScrollbar(scrollbar, viewport);\n\n return\n }\n\n if (containerOffsetHeight < scrollHeight) {\n adjustedScrollWidth = false;\n showScrollbar(scrollbar, viewport, adjustScrollWidth);\n } else {\n hideScrollbar(scrollbar, viewport);\n }\n\n scrolledToBottom = false;\n scrolledToTop = false;\n\n const position = viewport.scrollTop / (scrollHeight - offsetHeight);\n styleOf(thumb).top = (position * (scrollbarHeight - offsetHeightOf(thumb))) + 'px';\n };\n\n const updateHorizontalScrollbar = () => {\n\n const scrollWidth = scrollWidthOf(viewport);\n const scrollbarWidth = offsetWidthOf(scrollbarH);\n\n !adjustedScrollWidth && adjustScrollWidth();\n\n const newRatio = scrollWidth / scrollbarWidth;\n if ((ratioH === newRatio && Number.isFinite(newRatio)) || Number.isNaN(newRatio)) return;\n\n const offsetWidth = offsetWidthOf(viewport);\n\n const verticalScrollBarOffset = status() !== WITHOUT_SCROLL ? scrollbar.clientWidth + Math.max(NATIVE_SCROLL_WIDTH, 0) : 0;\n let containerOffsetWidth = offsetWidthOf(container) + verticalScrollBarOffset;\n\n if (containerOffsetWidth === scrollWidth && statusH() === WITHOUT_SCROLL)\n return;\n\n ratioH = newRatio;\n styleOf(thumbH).width = (scrollbarWidth / newRatio) + 'px';\n\n\n if (horizontalScrollBarModeOf(props()) === SCROLLBAR_MODE_HIDDEN) {\n if (statusH() !== WITHOUT_SCROLL)\n hideHorizontalScrollbar(scrollbarH, viewport);\n\n return\n }\n\n styleOf(container).width = (scrollWidth - verticalScrollBarOffset) + 'px';\n containerOffsetWidth = offsetWidthOf(container) + verticalScrollBarOffset;\n\n if (containerOffsetWidth < scrollWidth) {\n adjustedScrollWidth = false;\n showHorizontalScrollbar(scrollbarH, viewport, adjustScrollWidth);\n } else {\n hideHorizontalScrollbar(scrollbarH, viewport);\n }\n\n const position = viewport.scrollLeft / (scrollWidth - offsetWidth);\n styleOf(thumbH).left = (position * (scrollbarWidth - offsetWidthOf(thumbH))) + 'px';\n };\n\n initTimeout = setTimeout(() => {\n resizeInterval = setInterval(() => {\n updateVerticalScrollbar();\n updateHorizontalScrollbar();\n }, 50);\n }, 200)\n };\n\n that[componentDidMount] = init;\n that[componentWillUnmount] = clear;\n\n that[componentDidUpdate] = (prevProps) => {\n if (scrollBarModeOf(props()) !== scrollBarModeOf(prevProps))\n init();\n else if (onScroll(props()) !== onScroll(prevProps))\n init();\n };\n\n that.setScroll = (y) => {\n viewportRef().scrollTop = y\n };\n that.getScroll = () => viewportRef().scrollTop;\n that.getScrollHeight = () => scrollHeightOf(viewportRef());\n that.getHeight = () => containerRef().clientHeight;\n\n that[render] = () => {\n const _props = props();\n const {className, children} = _props;\n return (\n <div className={classNames('Scrollable', className, status() || WITH_SCROLL, statusH() + '-horizontal')} style={styleOf(_props)} ref={containerRef}>\n <div className=\"viewport\" ref={viewportRef}>\n {children}\n </div>\n <div className={classNames('scrollbar', scrollBarModeOf(_props) || SCROLLBAR_MODE_AUTO)} ref={scrollbarRef}>\n <div className=\"thumb\" ref={thumbRef}/>\n </div>\n <div className={classNames('scrollbar horizontal', horizontalScrollBarModeOf(_props))} ref={horizontalScrollbarRef}>\n <div className=\"thumb\" ref={horizontalThumbRef}/>\n </div>\n </div>\n )\n };\n }\n}\n\nexport default Scrollable\n\nScrollable.defaultProps = {\n autoScrollTop: true,\n horizontalScrollBarMode: SCROLLBAR_MODE_HIDDEN\n};\n\nif (window.isNotProductionEnvironment) {\n Scrollable.propTypes = {\n scrollBarMode: PropTypes.oneOf([SCROLLBAR_MODE_AUTO, SCROLLBAR_MODE_HIDDEN, SCROLLBAR_MODE_VISIBLE]),\n horizontalScrollBarMode: PropTypes.oneOf([SCROLLBAR_MODE_AUTO, SCROLLBAR_MODE_HIDDEN, SCROLLBAR_MODE_VISIBLE]),\n className: PropTypes.string,\n style: PropTypes.object,\n onScrolledToBottom: PropTypes.func,\n onScrolledToTop: PropTypes.func,\n autoScrollTop: PropTypes.bool,\n }\n}"],"names":["SCROLLBAR_MODE_HIDDEN","SCROLLBAR_MODE_VISIBLE","SCROLLBAR_MODE_AUTO","NATIVE_SCROLL_WIDTH","NATIVE_SCROLL_HEIGHT","WITHOUT_SCROLL","WITH_SCROLL","createFieldGetter","field","el","scrollHeightOf","scrollWidthOf","offsetHeightOf","offsetWidthOf","styleOf","scrollBarModeOf","onScroll","horizontalScrollBarModeOf","Scrollable","properties","that","state","props","propsGetter","status","stateGS","statusH","containerRef","createRef","viewportRef","scrollbarRef","horizontalScrollbarRef","thumbRef","horizontalThumbRef","resizeInterval","initTimeout","clear","clearInterval","clearTimeout","init","viewport","scrollbar","scrollbarH","container","thumb","thumbH","scrolling","scrolledToBottom","scrolledToTop","adjustedScrollWidth","lastY","lastX","ratio","ratioH","onScrollListener","onscroll","e","scrollHeight","offsetHeight","scrollWidth","offsetWidth","scrollbarHeight","scrollbarWidth","position","scrollTop","positionH","scrollLeft","top","left","orNoop","onScrolledToBottom","onScrolledToTop","reset","removeEventListener","WINDOW","moveListener","style","scrollBehavior","clientY","clientX","onmousedown","addEventListener","ondragstart","preventDefault","onmouseup","onclick","target","thumbPosition","parseInt","offsetY","offsetX","adjustScrollWidth","clientWidth","clientHeight","paddingRight","marginRight","paddingBottom","marginBottom","showScrollbar","visibility","bottom","overflowY","hideScrollbar","showHorizontalScrollbar","right","overflowX","hideHorizontalScrollbar","updateVerticalScrollbar","newRatio","Number","isFinite","isNaN","horizontalScrollBarOffset","Math","max","containerOffsetHeight","autoScrollTop","height","updateHorizontalScrollbar","verticalScrollBarOffset","containerOffsetWidth","width","setTimeout","setInterval","componentDidMount","componentWillUnmount","componentDidUpdate","prevProps","setScroll","y","getScroll","getScrollHeight","getHeight","render","_props","className","children","classNames","PureComponent","defaultProps","horizontalScrollBarMode","window","isNotProductionEnvironment","propTypes","scrollBarMode","PropTypes","oneOf","string","object","func","bool"],"mappings":"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"}
|
package/ScrollableTable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollableTable.js","sources":["
|
|
1
|
+
{"version":3,"file":"ScrollableTable.js","sources":["../../../src/react-ui-basics/ScrollableTable.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport Table from \"./Table\";\nimport Scrollable from \"./Scrollable\";\nimport \"./ScrollableTable.css\";\nimport {props, render, PureComponent} from \"./ReactConstants\";\nimport {createRef} from \"./Tools\";\nimport PropTypes from \"prop-types\";\n\nclass ScrollableTable extends PureComponent {\n\n constructor(properties) {\n super(properties);\n const that = this;\n\n const scrollableRef = createRef();\n\n that[render] = () => {\n return <div className={`ScrollableTable`}>\n <Scrollable ref={scrollableRef} {...props(that).scrollableProps}>\n <Table {...props(that)}/>\n </Scrollable>\n </div>;\n }\n that.getScrollable = () => scrollableRef()\n }\n}\n\nexport default ScrollableTable\n\nif (window.isNotProductionEnvironment) {\n ScrollableTable.propTypes = Table.propTypes;\n}"],"names":["ScrollableTable","properties","that","scrollableRef","createRef","render","props","scrollableProps","getScrollable","PureComponent","window","isNotProductionEnvironment","propTypes","Table"],"mappings":";;;;;;;;;IASMA;;;AAEF,EAAA,SAAA,eAAA,CAAYC,UAAZ,EAAwB;AAAA,IAAA,IAAA,KAAA,CAAA;AAAA,IAAA,eAAA,CAAA,IAAA,EAAA,eAAA,CAAA,CAAA;AACpB,IAAA,KAAA,GAAA,MAAA,CAAA,IAAA,CAAA,IAAA,EAAMA,UAAN,CAAA,CAAA;AACA,IAAA,IAAMC,IAAI,GAAV,sBAAA,CAAA,KAAA,CAAA,CAAA;AAEA,IAAMC,IAAAA,aAAa,GAAGC,SAAS,EAA/B,CAAA;AAEAF,IAAAA,IAAI,CAACG,MAAD,CAAJ,GAAe,YAAM;AACjB,MAAO,OAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAA,iBAAA;AAAd,OAAA,EACH,mBAAC,UAAD,EAAA,QAAA,CAAA;AAAY,QAAA,GAAG,EAAEF,aAAAA;AAAjB,OAAA,EAAoCG,KAAK,CAACJ,IAAD,CAAL,CAAYK,eAAhD,CACI,EAAA,kBAAA,CAAC,KAAD,EAAWD,KAAK,CAACJ,IAAD,CAAhB,CADJ,CADG,CAAP,CAAA;AAKH,KAND,CAAA;AAOAA,IAAAA,IAAI,CAACM,aAAL,GAAqB,YAAA;AAAA,MAAA,OAAML,aAAa,EAAnB,CAAA;AAAA,KAArB,CAAA;AAboB,IAAA,OAAA,KAAA,CAAA;AAcvB,GAAA;;EAhByBM;AAmB9B,wBAAeT,eAAf,CAAA;AAEA,IAAIU,MAAM,CAACC,0BAAX,EAAuC;AACnCX,EAAAA,eAAe,CAACY,SAAhB,GAA4BC,KAAK,CAACD,SAAlC,CAAA;AACH;;;;"}
|
package/Size.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Size.js","sources":["
|
|
1
|
+
{"version":3,"file":"Size.js","sources":["../../../src/react-ui-basics/Size.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport {isUndefined} from \"./Tools\";\n\nconst Size = ({value}) => (\n <span className=\"Size\">\n {formatNumber(value, 1)} {formatAbbreviation(value)}\n </span>\n);\n\nexport const formatNumberWithMaxLength = (size, fractionalLength, toAbbreviation, maxLength) => {\n let result;\n if (isUndefined(fractionalLength))\n fractionalLength = 1;\n if (isUndefined(maxLength))\n maxLength = -1;\n\n do {\n result = formatNumber(size, fractionalLength, toAbbreviation);\n fractionalLength--;\n } while (maxLength !== -1 && fractionalLength >= 0 && result.length > maxLength);\n return result;\n};\n\nfunction formatNumber(size, fractionalLength, toAbbreviation) {\n if (size < 1000 && !toAbbreviation || toAbbreviation === 'B')\n return size + '';\n size /= 1024;\n if (size < 1000 && !toAbbreviation || toAbbreviation === 'KB')\n return size.toFixed(fractionalLength);\n size /= 1024;\n if (size < 1000 && !toAbbreviation || toAbbreviation === 'MB')\n return size.toFixed(fractionalLength);\n size /= 1024;\n return size.toFixed(fractionalLength);\n};\n\nexport const formatAbbreviation = (size) => {\n if (size < 1000)\n return 'B';\n size /= 1024;\n if (size < 1000)\n return 'KB';\n size /= 1024;\n if (size < 1000)\n return 'MB';\n size /= 1024;\n return 'GB';\n};\n\nexport default Size"],"names":["Size","value","formatNumber","formatAbbreviation","formatNumberWithMaxLength","size","fractionalLength","toAbbreviation","maxLength","result","isUndefined","length","toFixed"],"mappings":";;;;AAIA,IAAMA,IAAI,GAAG,SAAPA,IAAO,CAAA,IAAA,EAAA;AAAA,EAAEC,IAAAA,KAAF,QAAEA,KAAF,CAAA;AAAA,EACT,OAAA,kBAAA,CAAA,MAAA,EAAA;AAAM,IAAA,SAAS,EAAC,MAAA;AAAhB,GACKC,EAAAA,YAAY,CAACD,KAAD,EAAQ,CAAR,CADjB,EAAA,MAAA,EACmCE,kBAAkB,CAACF,KAAD,CADrD,CADS,CAAA;AAAA,CAAb,CAAA;AAMaG,IAAAA,yBAAyB,GAAG,SAA5BA,yBAA4B,CAACC,IAAD,EAAOC,gBAAP,EAAyBC,cAAzB,EAAyCC,SAAzC,EAAuD;AAC5F,EAAA,IAAIC,MAAJ,CAAA;AACA,EAAA,IAAIC,WAAW,CAACJ,gBAAD,CAAf,EACIA,gBAAgB,GAAG,CAAnB,CAAA;AACJ,EAAII,IAAAA,WAAW,CAACF,SAAD,CAAf,EACIA,SAAS,GAAG,CAAC,CAAb,CAAA;AAEJ,EAAG,GAAA;AACCC,IAAAA,MAAM,GAAGP,YAAY,CAACG,IAAD,EAAOC,gBAAP,EAAyBC,cAAzB,CAArB,CAAA;AACAD,IAAAA,gBAAgB,EAAA,CAAA;AACnB,GAHD,QAGSE,SAAS,KAAK,CAAC,CAAf,IAAoBF,gBAAgB,IAAI,CAAxC,IAA6CG,MAAM,CAACE,MAAP,GAAgBH,SAHtE,EAAA;AAIA,EAAA,OAAOC,MAAP,CAAA;AACH,EAZM;AAcP,SAASP,YAAT,CAAsBG,IAAtB,EAA4BC,gBAA5B,EAA8CC,cAA9C,EAA8D;AAC1D,EAAA,IAAIF,IAAI,GAAG,IAAP,IAAe,CAACE,cAAhB,IAAkCA,cAAc,KAAK,GAAzD,EACI,OAAOF,IAAI,GAAG,EAAd,CAAA;AACJA,EAAAA,IAAI,IAAI,IAAR,CAAA;AACA,EAAA,IAAIA,IAAI,GAAG,IAAP,IAAe,CAACE,cAAhB,IAAkCA,cAAc,KAAK,IAAzD,EACI,OAAOF,IAAI,CAACO,OAAL,CAAaN,gBAAb,CAAP,CAAA;AACJD,EAAAA,IAAI,IAAI,IAAR,CAAA;AACA,EAAA,IAAIA,IAAI,GAAG,IAAP,IAAe,CAACE,cAAhB,IAAkCA,cAAc,KAAK,IAAzD,EACI,OAAOF,IAAI,CAACO,OAAL,CAAaN,gBAAb,CAAP,CAAA;AACJD,EAAAA,IAAI,IAAI,IAAR,CAAA;AACA,EAAA,OAAOA,IAAI,CAACO,OAAL,CAAaN,gBAAb,CAAP,CAAA;AACH,CAAA;IAEYH,kBAAkB,GAAG,SAArBA,kBAAqB,CAACE,IAAD,EAAU;AACxC,EAAA,IAAIA,IAAI,GAAG,IAAX,EACI,OAAO,GAAP,CAAA;AACJA,EAAAA,IAAI,IAAI,IAAR,CAAA;AACA,EAAA,IAAIA,IAAI,GAAG,IAAX,EACI,OAAO,IAAP,CAAA;AACJA,EAAAA,IAAI,IAAI,IAAR,CAAA;AACA,EAAA,IAAIA,IAAI,GAAG,IAAX,EACI,OAAO,IAAP,CAAA;AACJA,EAAAA,IAAI,IAAI,IAAR,CAAA;AACA,EAAA,OAAO,IAAP,CAAA;AACH,EAXM;AAaP,aAAeL,IAAf;;;;"}
|
package/Snackbar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Snackbar.js","sources":["
|
|
1
|
+
{"version":3,"file":"Snackbar.js","sources":["../../../src/react-ui-basics/Snackbar.js"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport ReactCreateElement from './ReactCreateElement';\nimport PropTypes from \"prop-types\";\nimport './Snackbar.css'\nimport {classNames, setTimeout, clearTimeout} from \"./Tools\";\nimport {componentWillUnmount, render, props, className, PureComponent, stateGSs} from \"./ReactConstants\";\n\nconst shown = 'shown';\n\nclass Snackbar extends PureComponent {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n const [\n isShow,\n getText,\n clazzName\n ] = stateGSs(this, 3);\n\n let timeout;\n that[componentWillUnmount] = () => {\n clearTimeout(timeout);\n };\n that[render] = () => {\n const _props = props(that);\n const {container} = _props;\n\n const el = <div className={classNames(`Snackbar`, _props[className], isShow() && shown, clazzName())}>\n <div className=\"message\">{getText() || _props.text}</div>\n </div>;\n return container ? ReactDOM.createPortal(el, container) : el;\n };\n\n const hide = ()=>{\n isShow(false)\n clazzName(null)\n }\n\n that.show = (text, className) => {\n if (isShow()) {\n clearTimeout(timeout);\n isShow(false);\n timeout = setTimeout(that.show, 260, text, className)\n } else {\n isShow(true);\n getText(text);\n clazzName(className)\n timeout = setTimeout(hide, 3000);\n }\n }\n }\n}\n\nif (window.isNotProductionEnvironment) {\n Snackbar.propTypes = {\n className: PropTypes.string,\n text: PropTypes.string,\n container: PropTypes.node,\n };\n}\n\nexport default Snackbar;"],"names":["shown","Snackbar","properties","that","state","stateGSs","isShow","getText","clazzName","timeout","componentWillUnmount","clearTimeout","render","_props","props","container","el","classNames","className","text","ReactDOM","createPortal","hide","show","setTimeout","PureComponent","window","isNotProductionEnvironment","propTypes","PropTypes","string","node"],"mappings":"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"}
|
package/SpinningProgress.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SpinningProgress.js","sources":["
|
|
1
|
+
{"version":3,"file":"SpinningProgress.js","sources":["../../../src/react-ui-basics/SpinningProgress.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './SpinningProgress.css'\n\nconst SpinningProgress = () => (\n <div className=\"SpinningProgress\">\n <svg className=\"circular\" viewBox=\"0 0 24 24\">\n <circle className=\"line\" cx=\"12\" cy=\"12\" r=\"8.75\" fill=\"none\"/>\n </svg>\n </div>\n);\n\nexport default SpinningProgress;"],"names":["SpinningProgress"],"mappings":";;;AAIA,IAAMA,gBAAgB,GAAG,SAAnBA,gBAAmB,GAAA;AAAA,EACrB,OAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,kBAAA;AAAf,GACI,EAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,IAAA,SAAS,EAAC,UAAf;AAA0B,IAAA,OAAO,EAAC,WAAA;AAAlC,GACI,EAAA,kBAAA,CAAA,QAAA,EAAA;AAAQ,IAAA,SAAS,EAAC,MAAlB;AAAyB,IAAA,EAAE,EAAC,IAA5B;AAAiC,IAAA,EAAE,EAAC,IAApC;AAAyC,IAAA,CAAC,EAAC,MAA3C;AAAkD,IAAA,IAAI,EAAC,MAAA;AAAvD,GAAA,CADJ,CADJ,CADqB,CAAA;AAAA,CAAzB,CAAA;AAQA,yBAAeA,gBAAf;;;;"}
|
package/Switch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Switch.js","sources":["
|
|
1
|
+
{"version":3,"file":"Switch.js","sources":["../../../src/react-ui-basics/Switch.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './Switch.css'\nimport {getRandomId, classNames} from \"./Tools\";\nimport {PureComponent, render} from \"./ReactConstants\";\nimport PropTypes from \"prop-types\";\n\nclass Switch extends PureComponent {\n\n constructor(props) {\n super(props);\n const randomId = getRandomId('sw-');\n\n this[render] = () => {\n const {label, className, labelOn, labelOff, onChange, value, onClick} = this.props;\n const id = this.props.id || randomId;\n return (\n <div className={classNames(\"Switch\", className)} onClick={onClick}>\n <input type=\"checkbox\" id={id} className=\"switch-input\" onChange={onChange} checked={value}/>\n\n <label htmlFor={id} className=\"switch-label\">\n {label && <span className=\"label\">{label}</span>}\n {labelOn && <span className=\"toggle--on\">{labelOn}</span>}\n {labelOff && <span className=\"toggle--off\">{labelOff}</span>}\n </label>\n </div>\n )\n }\n }\n}\n\nexport default Switch\n\nif (window.isNotProductionEnvironment) {\n Switch.propTypes = {\n className: PropTypes.string,\n label: PropTypes.string,\n labelOn: PropTypes.string,\n labelOff: PropTypes.string,\n value: PropTypes.bool,\n onChange: PropTypes.func,\n onClick: PropTypes.func,\n id: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.number\n ]),\n };\n}"],"names":["Switch","props","randomId","getRandomId","render","label","className","labelOn","labelOff","onChange","value","onClick","id","classNames","PureComponent","window","isNotProductionEnvironment","propTypes","PropTypes","string","bool","func","oneOfType","number"],"mappings":";;;;;;;IAOMA;;;AAEF,EAAA,SAAA,MAAA,CAAYC,KAAZ,EAAmB;AAAA,IAAA,IAAA,KAAA,CAAA;AAAA,IAAA,eAAA,CAAA,IAAA,EAAA,MAAA,CAAA,CAAA;AACf,IAAA,KAAA,GAAA,MAAA,CAAA,IAAA,CAAA,IAAA,EAAMA,KAAN,CAAA,CAAA;AACA,IAAA,IAAMC,QAAQ,GAAGC,WAAW,CAAC,KAAD,CAA5B,CAAA;AAEA,IAAKC,KAAAA,CAAAA,MAAL,IAAe,YAAM;AACjB,MAAA,IAAA,WAAA,GAAwE,MAAKH,KAA7E;AAAA,UAAOI,KAAP,eAAOA,KAAP;AAAA,UAAcC,SAAd,eAAcA,SAAd;AAAA,UAAyBC,OAAzB,eAAyBA,OAAzB;AAAA,UAAkCC,QAAlC,eAAkCA,QAAlC;AAAA,UAA4CC,QAA5C,eAA4CA,QAA5C;AAAA,UAAsDC,KAAtD,eAAsDA,KAAtD;AAAA,UAA6DC,OAA7D,eAA6DA,OAA7D,CAAA;AACA,MAAA,IAAMC,EAAE,GAAG,KAAA,CAAKX,KAAL,CAAWW,EAAX,IAAiBV,QAA5B,CAAA;AACA,MACI,OAAA,kBAAA,CAAA,KAAA,EAAA;AAAK,QAAA,SAAS,EAAEW,UAAU,CAAC,QAAD,EAAWP,SAAX,CAA1B;AAAiD,QAAA,OAAO,EAAEK,OAAAA;AAA1D,OACI,EAAA,kBAAA,CAAA,OAAA,EAAA;AAAO,QAAA,IAAI,EAAC,UAAZ;AAAuB,QAAA,EAAE,EAAEC,EAA3B;AAA+B,QAAA,SAAS,EAAC,cAAzC;AAAwD,QAAA,QAAQ,EAAEH,QAAlE;AAA4E,QAAA,OAAO,EAAEC,KAAAA;AAArF,OAAA,CADJ,EAGI,kBAAA,CAAA,OAAA,EAAA;AAAO,QAAA,OAAO,EAAEE,EAAhB;AAAoB,QAAA,SAAS,EAAC,cAAA;AAA9B,OAAA,EACKP,KAAK,IAAI,kBAAA,CAAA,MAAA,EAAA;AAAM,QAAA,SAAS,EAAC,OAAA;AAAhB,OAAA,EAAyBA,KAAzB,CADd,EAEKE,OAAO,IAAI,kBAAA,CAAA,MAAA,EAAA;AAAM,QAAA,SAAS,EAAC,YAAA;AAAhB,OAAA,EAA8BA,OAA9B,CAFhB,EAGKC,QAAQ,IAAI,kBAAA,CAAA,MAAA,EAAA;AAAM,QAAA,SAAS,EAAC,aAAA;AAAhB,OAA+BA,EAAAA,QAA/B,CAHjB,CAHJ,CADJ,CAAA;AAWH,KAdD,CAAA;AAJe,IAAA,OAAA,KAAA,CAAA;AAmBlB,GAAA;;EArBgBM;AAwBrB,eAAed,MAAf,CAAA;AAEA,IAAIe,MAAM,CAACC,0BAAX,EAAuC;AACnChB,EAAAA,MAAM,CAACiB,SAAP,GAAmB;AACfX,IAAAA,SAAS,EAAEY,SAAS,CAACC,MADN;AAEfd,IAAAA,KAAK,EAAEa,SAAS,CAACC,MAFF;AAGfZ,IAAAA,OAAO,EAAEW,SAAS,CAACC,MAHJ;AAIfX,IAAAA,QAAQ,EAAEU,SAAS,CAACC,MAJL;AAKfT,IAAAA,KAAK,EAAEQ,SAAS,CAACE,IALF;AAMfX,IAAAA,QAAQ,EAAES,SAAS,CAACG,IANL;AAOfV,IAAAA,OAAO,EAAEO,SAAS,CAACG,IAPJ;AAQfT,IAAAA,EAAE,EAAEM,SAAS,CAACI,SAAV,CAAoB,CACpBJ,SAAS,CAACC,MADU,EAEpBD,SAAS,CAACK,MAFU,CAApB,CAAA;AARW,GAAnB,CAAA;AAaH;;;;"}
|
package/Table.d.ts
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Component, ReactElement } from 'react';
|
|
2
|
+
import './Table.css';
|
|
3
|
+
export declare const SORT_ASC: string;
|
|
4
|
+
export declare const SORT_DESC: string;
|
|
5
|
+
declare type SortOrder = typeof SORT_ASC | typeof SORT_DESC;
|
|
6
|
+
declare type Comparator = <T>(a: T, b: T) => number;
|
|
7
|
+
declare const editorSelect = "Select";
|
|
8
|
+
declare const editorSwitch = "Switch";
|
|
9
|
+
export interface RowProps {
|
|
10
|
+
item: any;
|
|
11
|
+
disabled?: <T>(e: T) => boolean;
|
|
12
|
+
editing: any;
|
|
13
|
+
onClick?: (e: MouseEvent) => void;
|
|
14
|
+
className?: string | (<T>(e: T) => string);
|
|
15
|
+
columns: TableColumn[];
|
|
16
|
+
editingContext: any;
|
|
17
|
+
}
|
|
18
|
+
export declare type Formatter<T, V> = ((value?: V, item?: T, format?: string) => ReactElement) | ((value: V, item: T) => ReactElement) | ((value: V) => ReactElement);
|
|
19
|
+
export interface TableColumn {
|
|
20
|
+
field?: string;
|
|
21
|
+
className?: string;
|
|
22
|
+
comparator?: Comparator;
|
|
23
|
+
header?: string | ReactElement;
|
|
24
|
+
sortable?: boolean;
|
|
25
|
+
displayEditor?: boolean;
|
|
26
|
+
formatter?: Formatter<any, any>;
|
|
27
|
+
editable?: boolean | any;
|
|
28
|
+
editor?: typeof editorSelect | typeof editorSwitch | any;
|
|
29
|
+
preEditor?: any;
|
|
30
|
+
}
|
|
31
|
+
export interface TableProps {
|
|
32
|
+
columns: TableColumn[];
|
|
33
|
+
data: any[];
|
|
34
|
+
className?: string;
|
|
35
|
+
sortOrder?: SortOrder;
|
|
36
|
+
sortBy?: string;
|
|
37
|
+
onSortChange?: (sortBy: string, sortOrder: SortOrder) => void;
|
|
38
|
+
onRowClick?: (e: MouseEvent) => void;
|
|
39
|
+
disabled?: <T>(e: T) => boolean;
|
|
40
|
+
toKey?: <T>(e: T) => number | string;
|
|
41
|
+
onChange?: <T>(e: T, cancel: () => void) => void;
|
|
42
|
+
rowClassName?: string | (<T>(e: T) => string);
|
|
43
|
+
}
|
|
44
|
+
export interface TableState {
|
|
45
|
+
sortOrder?: SortOrder;
|
|
46
|
+
sortBy?: string;
|
|
47
|
+
comparator?: Comparator;
|
|
48
|
+
data?: any[];
|
|
49
|
+
editing?: any;
|
|
50
|
+
}
|
|
51
|
+
declare class Table extends Component<TableProps, TableState> {
|
|
52
|
+
headers: () => any;
|
|
53
|
+
updateHeadersInterval: number;
|
|
54
|
+
constructor(props: any);
|
|
55
|
+
componentDidMount(): void;
|
|
56
|
+
setData: (data: any) => void;
|
|
57
|
+
componentDidUpdate(prevProps: any, prevState: any, snapshot: any): void;
|
|
58
|
+
render(): JSX.Element;
|
|
59
|
+
componentWillUnmount(): void;
|
|
60
|
+
updateHeaders: () => void;
|
|
61
|
+
cancelEditing: () => void;
|
|
62
|
+
setEditing: (item: any, columnIndex: any, field: any) => void;
|
|
63
|
+
prepareEditing: (item: any, field: any, columnIndex: any) => {
|
|
64
|
+
id: any;
|
|
65
|
+
value: any;
|
|
66
|
+
columnIndex: any;
|
|
67
|
+
item: any;
|
|
68
|
+
field: any;
|
|
69
|
+
};
|
|
70
|
+
handleInputChange: (event: any) => void;
|
|
71
|
+
extractValue: (event: any) => any;
|
|
72
|
+
selectNewValue: (value: any) => void;
|
|
73
|
+
onFinishEditing: () => void;
|
|
74
|
+
sort: (e: any, sortBy: any, comparator: any) => void;
|
|
75
|
+
}
|
|
76
|
+
export default Table;
|