react-ui-basics 0.0.174 → 0.0.175
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 -0
- package/AutocompleteSelect.js +9 -23
- package/AutocompleteSelect.js.map +1 -0
- package/Button.js.map +1 -0
- package/Checkbox.js.map +1 -0
- package/CircleProgress.js.map +1 -0
- package/CommonFields.js.map +1 -0
- package/DNDContainer.js.map +1 -0
- package/DNDDraggable.js.map +1 -0
- package/DNDDroppable.js.map +1 -0
- package/Dialog.js.map +1 -0
- package/DropFileInput.js.map +1 -0
- package/DroppableHorizontalList.js.map +1 -0
- package/DroppableList.js.map +1 -0
- package/Dropzone.js.map +1 -0
- package/FilteredList.js +234 -139
- package/FilteredList.js.map +1 -0
- package/FloatingActionButton.js.map +1 -0
- package/FormUploadProgress.js.map +1 -0
- package/ImageGallery.js.map +1 -0
- package/MaterialIcon.js.map +1 -0
- package/Modal.js.map +1 -0
- package/ModalMenu.js.map +1 -0
- package/ReactConstants.js.map +1 -0
- package/ReactCreateElement.js.map +1 -0
- package/ReadyListener.js.map +1 -0
- package/Scrollable.js.map +1 -0
- package/ScrollableTable.js.map +1 -0
- package/Size.js.map +1 -0
- package/Snackbar.js.map +1 -0
- package/SpinningProgress.js.map +1 -0
- package/Switch.js.map +1 -0
- package/Table.js.map +1 -0
- package/TextField.js.map +1 -0
- package/Tools.js.map +1 -0
- package/bundle.css +477 -477
- package/index.js.map +1 -0
- package/package.json +1 -1
- package/FilteredList.d.ts +0 -61
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ImageGallery.js","sources":["../../../src/react-ui-basics/ImageGallery.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './ImageGallery.css'\nimport Animated from \"./Animated\";\nimport Button from \"./Button\";\nimport SpinningProgress from \"./SpinningProgress\";\nimport {\n UNDEFINED,\n preventDefault,\n stopPropagation,\n classNames,\n DOCUMENT,\n WINDOW,\n addEventListener,\n removeEventListener,\n setTimeout,\n orNoop,\n createRef,\n debounce,\n isDifferent\n} from \"./Tools\";\nimport MaterialIcon from \"./MaterialIcon\";\nimport {componentDidUpdate, componentWillUnmount, componentDidMount, render, propsGetter, stateGSs} from \"./ReactConstants\";\n\nconst min = Math.min;\nconst abs = Math.abs;\n\nconst toPx = (value) => value + 'px';\n\nconst previewRatio = 4 / 3;\nconst previewHeight = 80;\nconst previewWidth = previewRatio * previewHeight;\nconst previewPadding = 8;\nconst previewsHeight = previewHeight + 15;\n\nconst calculatePosition = (it, ratio, width, height, previewsHeight, embedded, container) => {\n const windowWidth = embedded ? container.clientWidth : min(DOCUMENT.body.clientWidth, WINDOW.innerWidth);\n const windowHeight = embedded ? container.clientHeight : min(DOCUMENT.body.clientHeight, WINDOW.innerHeight);\n\n let offset = it.offset;\n if (offset == null)\n offset = (embedded ? 0 : windowHeight * 0.03);\n\n let offsetTop = it.offsetTop\n offsetTop = offsetTop == null ? offset : offsetTop\n let offsetBottom = it.offsetBottom\n offsetBottom = offsetBottom == null ? offset : offsetBottom\n let offsetLeft = it.offsetLeft\n offsetLeft = offsetLeft == null ? offset : offsetLeft\n let offsetRight = it.offsetRight\n offsetRight = offsetRight == null ? offset : offsetRight\n\n if (Number.isNaN(ratio))\n ratio = 0;\n if (embedded) {\n if (ratio > 1) {\n it.toHeight = windowHeight - previewsHeight - -offsetTop - offsetBottom;\n it.toWidth = it.toHeight * ratio;\n } else {\n it.toWidth = windowWidth - offsetLeft - offsetRight;\n it.toHeight = it.toWidth / ratio;\n }\n } else if (ratio > 1) {\n it.toWidth = windowWidth - offsetLeft - offsetRight;\n it.toHeight = it.toWidth / ratio;\n if (it.toHeight > windowHeight - previewsHeight - offsetTop - offsetBottom) {\n it.toHeight = windowHeight - previewsHeight - offsetTop - offsetBottom;\n it.toWidth = it.toHeight * ratio;\n }\n } else {\n it.toHeight = windowHeight - previewsHeight - offsetTop - offsetBottom;\n it.toWidth = it.toHeight * ratio;\n if (it.toWidth > windowWidth - offsetLeft - offsetRight) {\n it.toWidth = windowWidth - offsetLeft - offsetRight;\n it.toHeight = it.toWidth / ratio;\n }\n }\n\n // if (width && it.toWidth > width) {\n // it.toWidth = width;\n // it.toHeight = height;\n // }\n\n it.toTop = offsetTop + (windowHeight - previewsHeight - offsetTop - offsetBottom - it.toHeight) / 2;\n it.toLeft = (windowWidth - it.toWidth) / 2;\n\n it.toWidthPx = toPx(it.toWidth);\n // it.toHeightPx = toPx(it.toHeight);\n it.toTopPx = toPx(it.toTop);\n it.toLeftPx = toPx(it.toLeft);\n};\n\nconst calculatePreviewsScroll = (index, length, width) => {\n if (length <= 5)\n return 0;\n\n if (index < 3)\n return 0;\n\n if (index > length - 3)\n return -(length - 5) * (previewWidth + previewPadding);\n\n return -(index * (previewWidth + previewPadding) + (previewWidth) / 2 - width / 2);\n};\n\nfunction calculatePreview(width, height, url) {\n let top = 0;\n let left = 0;\n\n let ratio = width / height;\n\n if (width !== previewWidth || height !== previewHeight) {\n if (ratio < previewRatio) {\n width = previewWidth;\n height = width / ratio;\n top = -(height - previewHeight) / 2;\n } else {\n height = previewHeight;\n width = height * ratio;\n left = -(width - previewWidth) / 2;\n }\n }\n\n return {\n url,\n position: 'absolute',\n width: toPx(width),\n height: toPx(height),\n top: toPx(top),\n left: toPx(left),\n };\n}\n\nconst loadImage = (src, cb) => {\n const image = new Image();\n image.onload = () => {\n cb(image)\n };\n image.src = src;\n}\n\nconst ACTION_PREFIX = 'IMAGE_GALLERY_';\nconst ACTION_IMAGE_GALLERY_SHOW = ACTION_PREFIX + 'SHOW';\nconst ACTION_IMAGE_GALLERY_CLOSE = ACTION_PREFIX + 'CLOSE';\nconst ACTION_IMAGE_GALLERY_RECALCULATE = ACTION_PREFIX + 'RECALCULATE';\nconst ACTION_IMAGE_GALLERY_FULL_IMAGE_LOADED = ACTION_PREFIX + 'FULL_IMAGE_LOADED';\nconst ACTION_IMAGE_GALLERY_PREVIEW_LOADED = ACTION_PREFIX + 'PREVIEW_LOADED';\n\nexport class Actions {\n static replaceImages = images => (dispatch, getState) => {\n const state = getState();\n const length = images.length;\n const nextState = {...state}\n nextState.images = images.map(item => {\n const image = state.images.find(it => it.url === item.url)\n if (image)\n return image\n\n const it = {...item}\n const el = it.el;\n if (el) {\n const rect = el.getBoundingClientRect();\n const fromWidth = el.clientWidth;\n const fromHeight = el.clientHeight;\n\n it.fromLeftPx = toPx(rect.left);\n it.fromTopPx = toPx(rect.top);\n it.fromWidthPx = toPx(fromWidth);\n\n let ratio = fromWidth / fromHeight;\n calculatePosition(it, ratio, el.naturalWidth || el.width, el.naturalHeight || el.height, withPreviews ? previewsHeight : 0, embedded, container);\n } else {\n it.toLeft = 100;\n it.toTop = 100;\n }\n if (!it.toWidth || !it.toHeight || !el)\n Actions.loadPreview(it)(dispatch);\n return it;\n })\n nextState.previews.width = min(length, 5) * previewWidth + min(length - 1, 4) * previewPadding;\n nextState.previews.totalWidth = toPx(length * previewWidth + (length - 1) * previewPadding);\n nextState.previews.images = nextState.images.map(item => {\n const preview = state.previews.images.find(it => it.url === item.previewUrl)\n if (preview)\n return preview\n\n const el = item.el;\n if (!el)\n return {};\n\n let width = el.clientWidth;\n let height = el.clientHeight;\n return calculatePreview(width, height, el.src);\n });\n\n dispatch({type: ACTION_IMAGE_GALLERY_SHOW, data: nextState});\n };\n\n static show = (gallery) => (dispatch) => {\n const images = gallery.images;\n const length = images.length;\n const withPreviews = length > 1 && (gallery.withPreviews === UNDEFINED || !!gallery.withPreviews);\n const container = gallery.container;\n const embedded = gallery.embedded;\n const index = gallery.index;\n const data = {\n index,\n container,\n embedded,\n withPreviews,\n images: images.map(item => {\n const it = {...item}\n const el = it.el;\n if (el) {\n const rect = el.getBoundingClientRect();\n const fromWidth = el.clientWidth;\n const fromHeight = el.clientHeight;\n\n it.fromLeftPx = toPx(rect.left);\n it.fromTopPx = toPx(rect.top);\n it.fromWidthPx = toPx(fromWidth);\n\n let ratio = fromWidth / fromHeight;\n calculatePosition(it, ratio, el.naturalWidth || el.width, el.naturalHeight || el.height, withPreviews ? previewsHeight : 0, embedded, container);\n } else {\n it.toLeft = 100;\n it.toTop = 100;\n }\n if (!it.toWidth || !it.toHeight || !el)\n Actions.loadPreview(it)(dispatch);\n return it;\n }),\n previews: {\n show: withPreviews,\n width: min(length, 5) * previewWidth + min(length - 1, 4) * previewPadding,\n totalWidth: toPx(length * previewWidth + (length - 1) * previewPadding),\n scroll: UNDEFINED,\n images: images.map(it => {\n const el = it.el;\n if (!el)\n return {};\n\n let width = el.clientWidth;\n let height = el.clientHeight;\n return calculatePreview(width, height, el.src);\n })\n },\n };\n\n data.images.forEach(it => {\n if (!it.fromLeftPx) {\n const imageWithFromData = data.images.find(it => !!it.fromLeftPx);\n if (imageWithFromData) {\n it.fromLeftPx = imageWithFromData.fromLeftPx;\n it.fromTopPx = imageWithFromData.fromTopPx;\n it.fromWidthPx = imageWithFromData.fromWidthPx;\n }\n }\n });\n data.previews.scroll = calculatePreviewsScroll(index, length, data.previews.width);\n\n dispatch({type: ACTION_IMAGE_GALLERY_SHOW, data});\n Actions.load(data.images[index])(dispatch)\n };\n static close = () => (dispatch) => {\n dispatch({type: ACTION_IMAGE_GALLERY_CLOSE});\n };\n static recalculate = () => (dispatch) => {\n dispatch({type: ACTION_IMAGE_GALLERY_RECALCULATE});\n };\n static loaded = (item, image) => (dispatch) => {\n dispatch({type: ACTION_IMAGE_GALLERY_FULL_IMAGE_LOADED, item, image});\n };\n static loadedPreview = (item, image) => (dispatch) => {\n dispatch({type: ACTION_IMAGE_GALLERY_PREVIEW_LOADED, item, image});\n };\n static load = (item) => (dispatch) => {\n loadImage(item.url, (image) => {\n Actions.loaded(item, image)(dispatch);\n })\n };\n\n static loadPreview = (item) => (dispatch) => {\n loadImage(item.previewUrl, (image) => {\n Actions.loadedPreview(item, image)(dispatch);\n })\n };\n}\n\nconst reducers = {\n [ACTION_IMAGE_GALLERY_SHOW]: (state, action) => ({...action.data, open: true}),\n [ACTION_IMAGE_GALLERY_CLOSE]: (state, action) => ({...state, open: false}),\n [ACTION_IMAGE_GALLERY_RECALCULATE]: (state, action) => {\n const images = [...state.images];\n const result = {...state, images};\n for (let i = 0; i < images.length; i++) {\n if (!images[i].width && !images[i].fromWidthPx)\n continue\n\n const it = {...images[i]};\n const width = it.width || Number.parseInt(it.fromWidthPx);\n const height = it.height || Number.parseInt(it.fromHeightPx);\n calculatePosition(it, width / height, width, height, result.previews.show ? previewsHeight : 0, state.embedded, state.container);\n images[i] = it;\n }\n\n return result;\n },\n [ACTION_IMAGE_GALLERY_FULL_IMAGE_LOADED]: (state, action) => {\n const item = action.item;\n const image = action.image;\n const images = [...state.images];\n const result = {...state, images};\n const index = images.findIndex(it => it.id === item.id);\n\n const width = image.width\n const height = image.height\n const it = {...images[index], loaded: true, width, height};\n // debugger\n // if (it.toWidth > image.width)\n calculatePosition(it, width / height, width, height, result.previews.show ? previewsHeight : 0, state.embedded, state.container);\n images[index] = it;\n return result;\n },\n [ACTION_IMAGE_GALLERY_PREVIEW_LOADED]: (state, action) => {\n const item = action.item;\n const image = action.image;\n const images = [...state.images];\n const result = {...state, images};\n const index = images.findIndex(it => it.id === item.id);\n const it = {...images[index]};\n\n if (!it.toWidth || !it.toHeight)\n calculatePosition(it, image.width / image.height, image.width, image.height, result.previews.show ? previewsHeight : 0, state.embedded, state.container);\n images[index] = it;\n\n const previewImages = [...state.previews.images];\n result.previews.images = previewImages;\n const preview = calculatePreview(image.width, image.height, image.src);\n previewImages[index] = preview;\n\n return result;\n },\n};\n\nconst small = (it, index, i, length) => {\n if (index !== i)\n return big(it, index, i, 0, length);\n\n return {\n position: 'absolute',\n top: it.fromTopPx,\n left: it.fromLeftPx,\n width: it.fromWidthPx,\n // height: it.fromHeightPx,\n opacity: 0,\n };\n};\n\nconst big = (it, index, i, shift, length, previous) => {\n const styles = {\n position: 'absolute',\n top: it.toTopPx,\n left: toPx(it.toLeft + shift),\n width: it.toWidthPx,\n // height: it.toHeightPx,\n };\n\n\n // if (previous !== UNDEFINED && abs(index - previous) > 1) {\n // styles.transitionDelay = 100 * abs(previous - i) + 'ms';\n // }\n\n if (index !== i) {\n const width = WINDOW.innerWidth;\n const additionalOffset = it.toLeft < 0 ? -it.toLeft : 0;\n\n if (i < index)\n styles.left = toPx(it.toLeft - width - additionalOffset + (i + 1 === index ? shift : 0));\n else\n styles.left = toPx(it.toLeft + width + additionalOffset + (i - 1 === index ? shift : 0));\n }\n return styles;\n};\n\nclass ImageGallery extends React.Component {\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const [\n shift,\n index,\n previous,\n zoomed,\n previewScroll,\n ] = stateGSs(that, 5);\n\n\n const props = propsGetter(that);\n\n that[componentDidUpdate] = (prevProps, prevState, snapshot) => {\n if (props().open !== prevProps.open && !props().open) {\n setTimeout(() => {\n shift(0)\n index(UNDEFINED)\n previous(UNDEFINED)\n }, 250 + 100); // 250ms transition + 100ms to be sure it ended\n }\n\n const images = props().images;\n if (!images)\n return\n\n const indexValue = index() !== UNDEFINED ? index() : props().index;\n const image = images[indexValue];\n if (!image) {\n const i = images.length - 1\n if (i === -1) {\n if (prevProps.images !== images) {\n onClose()\n }\n } else {\n scrollTo(i, UNDEFINED)\n }\n } else if (!image.loaded) {\n props().load(image)\n }\n }\n\n const resizeListener = debounce(() => {\n props().open && props().recalculate()\n }, 100)\n that[componentDidMount] = () => {\n addEventListener(WINDOW, 'resize', resizeListener)\n }\n that[componentWillUnmount] = () => {\n removeEventListener(WINDOW, 'resize', resizeListener)\n }\n const onClose = () => {\n resetZoom()\n moveListenerAdded = false;\n this.props.close();\n }\n\n const onKeyDown = e => {\n const keyCode = e.keyCode;\n if (keyCode === 37/*left*/) {\n left();\n preventDefault(e);\n }\n if (keyCode === 39/*right*/) {\n right();\n preventDefault(e);\n }\n if (keyCode === 27/*escape*/ && !props().embedded) {\n onClose();\n preventDefault(e);\n }\n };\n\n let touchesStart;\n let zoomValue = 1;\n let zoomValueStarted;\n let zoomedImage;\n let oldLeft;\n let oldTop;\n\n let defaultWidth;\n let defaultLeft;\n let defaultTop;\n let touchpadStarted = null;\n\n const onKeyUp = e => {\n const keyCode = e.keyCode;\n if (touchpadStarted && keyCode === 17/*ctrl*/ && zoomed() && zoomValue < 1) {\n resetZoom()\n }\n };\n\n const resetZoom = () => {\n if (!zoomed()) return\n zoomed(false)\n zoomedImage.style.width = defaultWidth;\n zoomedImage.style.left = defaultLeft;\n zoomedImage.style.top = defaultTop;\n zoomedImage.style.transition = null\n touchpadStarted = null\n }\n const initZoom = () => {\n zoomed(true)\n defaultWidth = zoomedImage.style.width;\n defaultLeft = zoomedImage.style.left;\n defaultTop = zoomedImage.style.top;\n }\n\n const initTouchpadDragging = () => {\n oldLeft = Number.parseFloat(zoomedImage.style.left);\n oldTop = Number.parseFloat(zoomedImage.style.top);\n zoomedImage.style.transition = 'none'\n touchpadStarted = true;\n }\n\n const onWheel = (e) => {\n if (!zoomed()) return;\n\n preventDefault(e)\n if (!touchpadStarted) {\n initTouchpadDragging()\n }\n\n if (e.ctrlKey) {\n let diff = e.deltaY * 0.005;\n\n let newZoom = Math.min(Math.max(zoomValue + diff, 0.5), 10)\n let zoomX = e.pageX;\n oldLeft = zoomX - (zoomX - oldLeft) * newZoom / zoomValue;\n\n let zoomY = e.pageY;\n oldTop = zoomY - (zoomY - oldTop) * newZoom / zoomValue;\n zoomValue = newZoom\n\n zoomedImage.style.width = (zoomValue * 100) + '%';\n } else {\n oldLeft += e.deltaX * 0.5;\n oldTop += e.deltaY * 0.5;\n }\n zoomedImage.style.left = oldLeft + 'px'\n zoomedImage.style.top = oldTop + 'px'\n }\n\n let moveListenerAdded\n\n const onTouchStart = e => {\n e.swipeProcessed = false;\n if (e.button === 2) return;\n const touches = e.touches || [{pageX: e.pageX, pageY: e.pageY}];\n // console.log('onTouchStart', e.touches, e.target);\n\n zoomedImage = e.target;\n zoomedImage = zoomedImage.tagName.toLowerCase() === 'img' ? zoomedImage.parentElement : zoomedImage;\n oldLeft = Number.parseFloat(zoomedImage.style.left);\n oldTop = Number.parseFloat(zoomedImage.style.top);\n if (zoomed()) {\n zoomedImage.style.transition = 'none'\n }\n if (!moveListenerAdded) {\n //need to add it like this to be able to call preventDefault\n addEventListener(this.gallery, 'touchmove', onTouchMove, false)\n moveListenerAdded = true;\n }\n\n if (touches.length === 2) {\n if (zoomed())\n zoomValueStarted = zoomValue;\n else if (!props().embedded) {\n initZoom()\n zoomedImage.style.transition = 'none'\n zoomValueStarted = zoomValue = Number.parseFloat(zoomedImage.style.width) / WINDOW.innerWidth;\n }\n }\n touchesStart = (touches)\n };\n\n const power2 = x => x * x;\n\n const distance = touches => {\n const a = touches[0]\n const b = touches[1]\n return Math.sqrt(power2(a.pageX - b.pageX) + power2(a.pageY - b.pageY))\n }\n const center = touches => {\n const a = touches[0]\n const b = touches[1]\n return {x: (a.pageX + b.pageX) / 2, y: (a.pageY + b.pageY) / 2}\n }\n\n const onTouchMove = e => {\n if (!touchesStart)\n return;\n\n const touches = e.touches || [{pageX: e.pageX, pageY: e.pageY}];\n // console.log('onTouchMove', touches, e)\n\n if (zoomed()) {\n preventDefault(e)\n if (touches.length === 2) {\n const diff = distance(touches) / distance(touchesStart);\n\n zoomValue = Math.min(Math.max(zoomValueStarted * diff, 0.5), 10)\n\n let zoomedAt = center(touchesStart)\n let zoomX = zoomedAt.x;\n let newLeft = zoomX - (zoomX - oldLeft) * zoomValue / zoomValueStarted;\n\n let zoomY = zoomedAt.y;\n let newTop = zoomY - (zoomY - oldTop) * zoomValue / zoomValueStarted;\n\n zoomedImage.style.left = newLeft + 'px'\n zoomedImage.style.top = newTop + 'px'\n zoomedImage.style.width = (zoomValue * 100) + '%';\n\n return;\n } else {\n let touch = touches[0];\n let touchStart = touchesStart[0];\n let newLeft = oldLeft + touch.pageX - touchStart.pageX\n let newTop = oldTop + touch.pageY - touchStart.pageY\n zoomedImage.style.left = newLeft + 'px'\n zoomedImage.style.top = newTop + 'px'\n return;\n }\n }\n\n if (touches.length > 1 || zoomed())\n return;\n\n let touch = touches[0];\n let touchStart = touchesStart[0];\n shift(touch.pageX - touchStart.pageX)\n };\n\n const onTouchEnd = e => {\n if (!touchesStart)\n return;\n\n if (zoomed()) {\n touchesStart = (UNDEFINED)\n if (zoomValue < 1) {\n resetZoom()\n }\n return;\n }\n\n const touches = e.changedTouches || [{pageX: e.pageX, pageY: e.pageY}];\n // console.log('onTouchEnd', touches, e)\n\n let touchEnd = touches[0];\n let touchStart = touchesStart[0];\n let distX = touchEnd.pageX - touchStart.pageX;\n let distY = touchEnd.pageY - touchStart.pageY;\n\n touchesStart = (UNDEFINED)\n shift(0)\n const minDistance = 20;\n\n if (abs(distX / distY) > 2 && abs(distX) > minDistance) {\n distX < 0 ? right() : left();\n e.swipeProcessed = true\n } else if (abs(distY / distX) > 2 && abs(distY) > minDistance) {\n !props().embedded && onClose();\n e.swipeProcessed = true\n }\n };\n\n const scrollTo = (i, prev) => {\n const {previews} = props();\n index(i)\n previous(prev)\n previewScroll(calculatePreviewsScroll(i, previews.images.length, previews.width))\n };\n\n const left = (e) => {\n if (zoomed())\n return;\n preventDefault(e);\n stopPropagation(e);\n const indexValue = index() !== UNDEFINED ? index() : props().index;\n if (indexValue > 0)\n scrollTo(indexValue - 1, indexValue)\n else if (props().loop)\n scrollTo(props().images.length - 1, indexValue)\n };\n\n const right = (e) => {\n if (zoomed())\n return;\n preventDefault(e);\n stopPropagation(e);\n const {images} = props();\n const indexValue = index() !== UNDEFINED ? index() : props().index;\n if (indexValue < images.length - 1)\n scrollTo(indexValue + 1, indexValue)\n else if (props().loop)\n scrollTo(0, indexValue)\n };\n\n that.scrollTo = scrollTo;\n that.left = left;\n that.right = right;\n\n const animatedRoundButton = (show, className, onClick, icon) => (\n <Animated value={show}>\n <Button className={className} onClick={onClick} round={true}>\n <MaterialIcon icon={icon}/>\n </Button>\n </Animated>);\n\n that[render] = () => {\n const {open} = props();\n const {images = [], previews = {}, indicator, embedded, loop, onClick, children} = props();\n\n const indexValue = index() !== UNDEFINED ? index() : props().index;\n const length = images.length;\n const isZoomed = zoomed();\n const shiftValue = shift() || 0;\n const previousValue = previous();\n return (\n <Animated value={open}>\n <div className={classNames('ImageGallery', embedded && 'embedded', isZoomed && 'zoomed')}\n tabIndex={0}\n ref={it => (that.gallery = it) && !embedded && it.focus()}\n onKeyDown={onKeyDown}\n onKeyUp={onKeyUp}\n // onClick={e => e.target === that.gallery && !e.swipeProcessed && !embedded && onClose()}\n onTouchStart={onTouchStart}\n onTouchEnd={onTouchEnd}\n onMouseDown={onTouchStart}\n onMouseUp={onTouchEnd}\n onMouseMove={onTouchMove}\n onMouseLeave={onTouchEnd}\n onWheel={onWheel}\n >\n {images.map((it, i) => {\n const isZoomedCurrent = isZoomed && i === indexValue;\n const loaded = it.loaded;\n return <Animated key={it.id} value={open} styles={{\n default: small(it, indexValue, i, length),\n mounting: big(it, indexValue, i, shiftValue, length, previousValue),\n mountend: big(it, indexValue, i, shiftValue, length, previousValue),\n unmounting: small(it, indexValue, i, length),\n }}>\n <div\n draggable={false}\n onDoubleClick={e => {\n const img = e.target;\n if (img.naturalWidth === img.clientWidth && img.naturalHeight === img.clientHeight)\n return;\n\n if (!isZoomed) {\n zoomedImage = img.tagName.toLowerCase() === 'img' ? img.parentElement : img;\n initZoom()\n zoomValue = 2;\n let newWidth = WINDOW.innerWidth * 2;\n let oldWidth = Number.parseFloat(zoomedImage.style.width);\n let oldLeft = Number.parseFloat(zoomedImage.style.left);\n let zoomX = e.pageX;\n let diff = newWidth / oldWidth;\n let newLeft = zoomX - (zoomX - oldLeft) * diff;\n\n let oldTop = Number.parseFloat(zoomedImage.style.top);\n let zoomY = e.pageY;\n let newTop = zoomY - (zoomY - oldTop) * diff;\n\n zoomedImage.style.width = '200%'\n zoomedImage.style.left = newLeft + 'px'\n zoomedImage.style.top = newTop + 'px'\n } else {\n resetZoom()\n }\n }}\n onClick={(e) => {\n !e.swipeProcessed && orNoop(onClick)(e, it, i)\n }}\n key={i} className={classNames('image', touchesStart && 'dragging', isZoomedCurrent && 'zoomed', i === indexValue && 'current')}\n >\n <img draggable={false} src={loaded ? it.url : it.previewUrl} onDragStart={preventDefault}/>\n\n <Animated value={!loaded && Math.abs(indexValue - i) <= 1}>\n <div className={'spinner'}><SpinningProgress/></div>\n </Animated>\n\n {!embedded && animatedRoundButton(open && !isZoomedCurrent,\n 'close',\n onClose,\n 'close'\n )}\n\n\n <Animated value={loaded && !isZoomedCurrent}>\n <div className=\"counter\">\n {indexValue + 1} / {length}\n </div>\n </Animated>\n\n {!isZoomedCurrent && loaded && it.overlay}\n </div>\n </Animated>;\n })}\n\n {animatedRoundButton(open && length > 1 && (indexValue > 0 || loop) && !isZoomed,\n 'arrow left',\n left,\n 'chevron_left'\n )}\n\n {animatedRoundButton(open && length > 1 && (indexValue !== length - 1 || loop) && !isZoomed,\n 'arrow right',\n right,\n 'chevron_right'\n )}\n\n <Animated value={open && length > 1 && !isZoomed}>\n <div className=\"counter\">\n {indexValue + 1} / {length}\n </div>\n </Animated>\n\n {indicator && <Animated value={open && length > 1 && !isZoomed}>\n {indicator(indexValue, length)}\n </Animated>}\n\n <Animated value={open && previews.show && !isZoomed}>\n <div className=\"previews\" style={{width: previews.width}}>\n <div className=\"viewport\">\n <div className=\"container\" style={{width: previews.totalWidth, left: toPx(previewScroll() || previews.scroll)}}>\n {(previews.images || []).map((it, i) =>\n <div key={i}\n className={classNames('preview', indexValue === i && 'selected')}\n onClick={() => scrollTo(i, indexValue)}\n >\n <img src={it.url} style={it}/>\n\n <div className=\"border\">\n <div className=\"line\"/>\n </div>\n </div>)}\n </div>\n </div>\n\n {animatedRoundButton(indexValue > 0 || loop,\n 'arrow left',\n left,\n 'keyboard_arrow_left'\n )}\n {animatedRoundButton(indexValue !== length - 1 || loop,\n 'arrow right',\n right,\n 'keyboard_arrow_right'\n )}\n </div>\n </Animated>\n\n {children}\n </div>\n </Animated>\n )\n }\n\n }\n}\n\nexport const IMAGE_GALLERY_REDUCER_NAME = 'gallery';\nexport const IMAGE_GALLERY_REDUCER = (state, action) => {\n state = state || {};\n const reducer = reducers[action.type];\n return reducer ? reducer(state, action) : state;\n};\n\nexport const mapStateToProps = (state, ownProps) => state[IMAGE_GALLERY_REDUCER_NAME];\n\nexport default ImageGallery;\n\nexport class ImageGalleryContainer extends React.Component {\n constructor(properties) {\n super(properties);\n const that = this;\n\n that.state = IMAGE_GALLERY_REDUCER(null, {})\n const getState = () => that.state;\n\n const dispatch = (action) => setTimeout(() => {\n that.setState(state => {\n // console.log('before action', action, state)\n state = IMAGE_GALLERY_REDUCER(state, action);\n // console.log('after action', action, state)\n return state;\n })\n }, 0)\n\n const props = propsGetter(that)\n\n const embedded = 'embedded'\n const galleryRef = createRef()\n\n const show = that.show = (gallery) => {\n if (!!props()[embedded]) {\n if (props().containerRef()) {\n Actions.show({\n ...gallery,\n [embedded]: !!props()[embedded],\n container: props().containerRef(),\n })(dispatch)\n } else {\n setTimeout(show, 1, gallery)\n }\n } else {\n Actions.show(gallery)(dispatch)\n }\n };\n const close = that.close = () => {\n Actions.close()(dispatch)\n };\n const load = that.load = (item) => {\n Actions.load(item)(dispatch)\n };\n const recalculate = that.recalculate = () => {\n Actions.recalculate()(dispatch)\n };\n that.replaceImages = (images) => {\n Actions.replaceImages(images)(dispatch, getState)\n };\n\n that[render] = () => <ImageGallery ref={galleryRef} {...that.props} {...that.state} show={show} load={load} close={close} recalculate={recalculate}>\n {that.props.children}\n </ImageGallery>\n\n that[componentDidMount] = () => {\n props()[embedded] && show(props()[embedded])\n that.scrollTo = galleryRef().scrollTo;\n that.left = galleryRef().left;\n that.right = galleryRef().right;\n }\n that[componentDidUpdate] = (prevProps, prevState) => {\n isDifferent(prevProps[embedded], props()[embedded]) && props()[embedded] && show(props()[embedded])\n }\n }\n}\n"],"names":["min","Math","abs","toPx","value","previewRatio","previewHeight","previewWidth","previewPadding","previewsHeight","calculatePosition","it","ratio","width","height","embedded","container","windowWidth","clientWidth","DOCUMENT","body","WINDOW","innerWidth","windowHeight","clientHeight","innerHeight","offset","offsetTop","offsetBottom","offsetLeft","offsetRight","Number","isNaN","toHeight","toWidth","toTop","toLeft","toWidthPx","toTopPx","toLeftPx","calculatePreviewsScroll","index","length","calculatePreview","url","top","left","position","loadImage","src","cb","image","Image","onload","ACTION_PREFIX","ACTION_IMAGE_GALLERY_SHOW","ACTION_IMAGE_GALLERY_CLOSE","ACTION_IMAGE_GALLERY_RECALCULATE","ACTION_IMAGE_GALLERY_FULL_IMAGE_LOADED","ACTION_IMAGE_GALLERY_PREVIEW_LOADED","Actions","replaceImages","images","dispatch","getState","state","nextState","map","item","find","el","rect","getBoundingClientRect","fromWidth","fromHeight","fromLeftPx","fromTopPx","fromWidthPx","naturalWidth","naturalHeight","withPreviews","loadPreview","previews","totalWidth","preview","previewUrl","type","data","show","gallery","UNDEFINED","scroll","forEach","imageWithFromData","load","close","recalculate","loaded","loadedPreview","reducers","action","open","_objectSpread","result","i","parseInt","fromHeightPx","findIndex","id","previewImages","small","big","opacity","shift","previous","styles","additionalOffset","ImageGallery","properties","that","stateGSs","zoomed","previewScroll","props","propsGetter","componentDidUpdate","prevProps","prevState","snapshot","setTimeout","indexValue","onClose","scrollTo","resizeListener","debounce","componentDidMount","addEventListener","componentWillUnmount","removeEventListener","resetZoom","moveListenerAdded","onKeyDown","e","keyCode","preventDefault","right","touchesStart","zoomValue","zoomValueStarted","zoomedImage","oldLeft","oldTop","defaultWidth","defaultLeft","defaultTop","touchpadStarted","onKeyUp","style","transition","initZoom","initTouchpadDragging","parseFloat","onWheel","ctrlKey","diff","deltaY","newZoom","max","zoomX","pageX","zoomY","pageY","deltaX","onTouchStart","swipeProcessed","button","touches","target","tagName","toLowerCase","parentElement","onTouchMove","power2","x","distance","a","b","sqrt","center","y","zoomedAt","newLeft","newTop","touch","touchStart","onTouchEnd","changedTouches","touchEnd","distX","distY","minDistance","prev","stopPropagation","loop","animatedRoundButton","className","onClick","icon","render","indicator","children","isZoomed","shiftValue","classNames","focus","isZoomedCurrent","mounting","mountend","unmounting","img","newWidth","oldWidth","orNoop","overlay","React","Component","IMAGE_GALLERY_REDUCER","reducer","ImageGalleryContainer","setState","galleryRef","createRef","containerRef","_objectSpread2","isDifferent"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MaterialIcon.js","sources":["../../../src/react-ui-basics/MaterialIcon.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport {classNames} from \"./Tools\";\nimport PropTypes from \"prop-types\";\n\n/**\n * Component to render https://google.github.io/material-design-icons/\n */\nconst MaterialIcon = ({icon, className}) => (\n <i className={classNames('MaterialIcon', 'material-icons', className)}>{icon}</i>\n);\nexport default MaterialIcon;\n\nif (window.isNotProductionEnvironment) {\n MaterialIcon.propTypes = {\n className: PropTypes.string,\n // icon: PropTypes.string.isRequired,\n // extracted with [...document.querySelectorAll('span.material-icons')].map(it=>\"'\"+it.innerHTML+\"'\").sort().join(',')\n icon: PropTypes.oneOf([\n '10k',\n '10mp',\n '11mp',\n '12mp',\n '13mp',\n '14mp',\n '15mp',\n '16mp',\n '17mp',\n '18mp',\n '19mp',\n '1k',\n '1k_plus',\n '1x_mobiledata',\n '20mp',\n '21mp',\n '22mp',\n '23mp',\n '24mp',\n '2k',\n '2k_plus',\n '2mp',\n '30fps',\n '30fps_select',\n '360',\n '3d_rotation',\n '3g_mobiledata',\n '3k',\n '3k_plus',\n '3mp',\n '3p',\n '4g_mobiledata',\n '4g_plus_mobiledata',\n '4k',\n '4k_plus',\n '4mp',\n '5g',\n '5k',\n '5k_plus',\n '5mp',\n '60fps',\n '60fps_select',\n '6_ft_apart',\n '6k',\n '6k_plus',\n '6mp',\n '7k',\n '7k_plus',\n '7mp',\n '8k',\n '8k_plus',\n '8mp',\n '9k',\n '9k_plus',\n '9mp',\n 'ac_unit',\n 'access_alarm',\n 'access_alarms',\n 'access_time',\n 'access_time_filled',\n 'accessibility',\n 'accessibility_new',\n 'accessible',\n 'accessible_forward',\n 'account_balance',\n 'account_balance_wallet',\n 'account_box',\n 'account_circle',\n 'account_tree',\n 'ad_units',\n 'adb',\n 'add',\n 'add',\n 'add_a_photo',\n 'add_alarm',\n 'add_alert',\n 'add_box',\n 'add_business',\n 'add_chart',\n 'add_circle',\n 'add_circle_outline',\n 'add_comment',\n 'add_ic_call',\n 'add_link',\n 'add_location',\n 'add_location_alt',\n 'add_moderator',\n 'add_photo_alternate',\n 'add_reaction',\n 'add_road',\n 'add_shopping_cart',\n 'add_task',\n 'add_to_drive',\n 'add_to_home_screen',\n 'add_to_photos',\n 'add_to_queue',\n 'addchart',\n 'adjust',\n 'admin_panel_settings',\n 'ads_click',\n 'agriculture',\n 'air',\n 'airline_seat_flat',\n 'airline_seat_flat_angled',\n 'airline_seat_individual_suite',\n 'airline_seat_legroom_extra',\n 'airline_seat_legroom_normal',\n 'airline_seat_legroom_reduced',\n 'airline_seat_recline_extra',\n 'airline_seat_recline_normal',\n 'airplane_ticket',\n 'airplanemode_active',\n 'airplanemode_inactive',\n 'airplay',\n 'airport_shuttle',\n 'alarm',\n 'alarm_add',\n 'alarm_off',\n 'alarm_on',\n 'album',\n 'align_horizontal_center',\n 'align_horizontal_left',\n 'align_horizontal_right',\n 'align_vertical_bottom',\n 'align_vertical_center',\n 'align_vertical_top',\n 'all_inbox',\n 'all_inclusive',\n 'all_out',\n 'alt_route',\n 'alternate_email',\n 'analytics',\n 'anchor',\n 'android',\n 'animation',\n 'announcement',\n 'aod',\n 'apartment',\n 'api',\n 'app_blocking',\n 'app_registration',\n 'app_settings_alt',\n 'approval',\n 'apps',\n 'architecture',\n 'archive',\n 'area_chart',\n 'arrow_back',\n 'arrow_back_ios',\n 'arrow_back_ios_new',\n 'arrow_circle_down',\n 'arrow_circle_up',\n 'arrow_downward',\n 'arrow_drop_down',\n 'arrow_drop_down_circle',\n 'arrow_drop_up',\n 'arrow_forward',\n 'arrow_forward_ios',\n 'arrow_left',\n 'arrow_right',\n 'arrow_right_alt',\n 'arrow_upward',\n 'art_track',\n 'article',\n 'aspect_ratio',\n 'assessment',\n 'assignment',\n 'assignment_ind',\n 'assignment_late',\n 'assignment_return',\n 'assignment_returned',\n 'assignment_turned_in',\n 'assistant',\n 'assistant_direction',\n 'assistant_photo',\n 'atm',\n 'attach_email',\n 'attach_file',\n 'attach_money',\n 'attach_money',\n 'attachment',\n 'attractions',\n 'attribution',\n 'audiotrack',\n 'auto_awesome',\n 'auto_awesome_mosaic',\n 'auto_awesome_motion',\n 'auto_delete',\n 'auto_fix_high',\n 'auto_fix_normal',\n 'auto_fix_off',\n 'auto_graph',\n 'auto_stories',\n 'autofps_select',\n 'autorenew',\n 'av_timer',\n 'baby_changing_station',\n 'back_hand',\n 'backpack',\n 'backspace',\n 'backup',\n 'backup_table',\n 'badge',\n 'bakery_dining',\n 'balcony',\n 'ballot',\n 'bar_chart',\n 'batch_prediction',\n 'bathroom',\n 'bathtub',\n 'battery_alert',\n 'battery_charging_full',\n 'battery_full',\n 'battery_saver',\n 'battery_std',\n 'battery_unknown',\n 'beach_access',\n 'bed',\n 'bedroom_baby',\n 'bedroom_child',\n 'bedroom_parent',\n 'bedtime',\n 'beenhere',\n 'bento',\n 'bike_scooter',\n 'biotech',\n 'blender',\n 'block',\n 'bloodtype',\n 'bluetooth',\n 'bluetooth_audio',\n 'bluetooth_connected',\n 'bluetooth_disabled',\n 'bluetooth_drive',\n 'bluetooth_searching',\n 'blur_circular',\n 'blur_linear',\n 'blur_off',\n 'blur_on',\n 'bolt',\n 'book',\n 'book_online',\n 'bookmark',\n 'bookmark_add',\n 'bookmark_added',\n 'bookmark_border',\n 'bookmark_remove',\n 'bookmarks',\n 'border_all',\n 'border_bottom',\n 'border_clear',\n 'border_color',\n 'border_horizontal',\n 'border_inner',\n 'border_left',\n 'border_outer',\n 'border_right',\n 'border_style',\n 'border_top',\n 'border_vertical',\n 'branding_watermark',\n 'breakfast_dining',\n 'brightness_1',\n 'brightness_2',\n 'brightness_3',\n 'brightness_4',\n 'brightness_5',\n 'brightness_6',\n 'brightness_7',\n 'brightness_auto',\n 'brightness_high',\n 'brightness_low',\n 'brightness_medium',\n 'broken_image',\n 'browser_not_supported',\n 'brunch_dining',\n 'brush',\n 'bubble_chart',\n 'bug_report',\n 'build',\n 'build_circle',\n 'bungalow',\n 'burst_mode',\n 'bus_alert',\n 'business',\n 'business_center',\n 'cabin',\n 'cable',\n 'cached',\n 'cake',\n 'calculate',\n 'calendar_today',\n 'calendar_view_day',\n 'calendar_view_month',\n 'calendar_view_week',\n 'call',\n 'call_end',\n 'call_made',\n 'call_merge',\n 'call_missed',\n 'call_missed_outgoing',\n 'call_received',\n 'call_split',\n 'call_to_action',\n 'camera',\n 'camera_alt',\n 'camera_enhance',\n 'camera_front',\n 'camera_indoor',\n 'camera_outdoor',\n 'camera_rear',\n 'camera_roll',\n 'cameraswitch',\n 'campaign',\n 'cancel',\n 'cancel_presentation',\n 'cancel_schedule_send',\n 'car_rental',\n 'car_repair',\n 'card_giftcard',\n 'card_membership',\n 'card_travel',\n 'carpenter',\n 'cases',\n 'casino',\n 'cast',\n 'cast_connected',\n 'cast_for_education',\n 'catching_pokemon',\n 'category',\n 'celebration',\n 'cell_wifi',\n 'center_focus_strong',\n 'center_focus_weak',\n 'chair',\n 'chair_alt',\n 'chalet',\n 'change_circle',\n 'change_history',\n 'charging_station',\n 'chat',\n 'chat_bubble',\n 'chat_bubble_outline',\n 'check',\n 'check_box',\n 'check_box_outline_blank',\n 'check_circle',\n 'check_circle_outline',\n 'checklist',\n 'checklist_rtl',\n 'checkroom',\n 'chevron_left',\n 'chevron_right',\n 'child_care',\n 'child_friendly',\n 'chrome_reader_mode',\n 'circle',\n 'circle_notifications',\n 'class',\n 'clean_hands',\n 'cleaning_services',\n 'clear',\n 'clear_all',\n 'close',\n 'close',\n 'close_fullscreen',\n 'closed_caption',\n 'closed_caption_disabled',\n 'closed_caption_off',\n 'cloud',\n 'cloud_circle',\n 'cloud_done',\n 'cloud_download',\n 'cloud_off',\n 'cloud_queue',\n 'cloud_upload',\n 'code',\n 'code_off',\n 'coffee',\n 'coffee_maker',\n 'collections',\n 'collections_bookmark',\n 'color_lens',\n 'colorize',\n 'comment',\n 'comment_bank',\n 'commute',\n 'compare',\n 'compare_arrows',\n 'compass_calibration',\n 'compost',\n 'compress',\n 'computer',\n 'confirmation_number',\n 'connect_without_contact',\n 'connected_tv',\n 'construction',\n 'contact_mail',\n 'contact_page',\n 'contact_phone',\n 'contact_support',\n 'contactless',\n 'contacts',\n 'content_copy',\n 'content_cut',\n 'content_paste',\n 'content_paste_off',\n 'control_camera',\n 'control_point',\n 'control_point_duplicate',\n 'copy_all',\n 'copyright',\n 'coronavirus',\n 'corporate_fare',\n 'cottage',\n 'countertops',\n 'create',\n 'create_new_folder',\n 'credit_card',\n 'credit_card_off',\n 'credit_score',\n 'crib',\n 'crop',\n 'crop_16_9',\n 'crop_3_2',\n 'crop_5_4',\n 'crop_7_5',\n 'crop_din',\n 'crop_free',\n 'crop_landscape',\n 'crop_original',\n 'crop_portrait',\n 'crop_rotate',\n 'crop_square',\n 'cruelty_free',\n 'dangerous',\n 'dark_mode',\n 'dashboard',\n 'dashboard_customize',\n 'data_exploration',\n 'data_saver_off',\n 'data_saver_on',\n 'data_usage',\n 'date_range',\n 'deck',\n 'dehaze',\n 'delete',\n 'delete_forever',\n 'delete_outline',\n 'delete_sweep',\n 'delivery_dining',\n 'departure_board',\n 'description',\n 'design_services',\n 'desktop_access_disabled',\n 'desktop_mac',\n 'desktop_windows',\n 'details',\n 'developer_board',\n 'developer_board_off',\n 'developer_mode',\n 'device_hub',\n 'device_thermostat',\n 'device_unknown',\n 'devices',\n 'devices_other',\n 'dialer_sip',\n 'dialpad',\n 'dining',\n 'dinner_dining',\n 'directions',\n 'directions_bike',\n 'directions_boat',\n 'directions_boat_filled',\n 'directions_bus',\n 'directions_bus_filled',\n 'directions_car',\n 'directions_car_filled',\n 'directions_off',\n 'directions_railway',\n 'directions_railway_filled',\n 'directions_run',\n 'directions_subway',\n 'directions_subway_filled',\n 'directions_transit',\n 'directions_transit_filled',\n 'directions_walk',\n 'dirty_lens',\n 'disabled_by_default',\n 'disabled_visible',\n 'disc_full',\n 'dns',\n 'do_disturb',\n 'do_disturb_alt',\n 'do_disturb_off',\n 'do_disturb_on',\n 'do_not_disturb',\n 'do_not_disturb_alt',\n 'do_not_disturb_off',\n 'do_not_disturb_on',\n 'do_not_disturb_on_total_silence',\n 'do_not_step',\n 'do_not_touch',\n 'dock',\n 'document_scanner',\n 'domain',\n 'domain_disabled',\n 'domain_verification',\n 'done',\n 'done_all',\n 'done_outline',\n 'donut_large',\n 'donut_small',\n 'door_back',\n 'door_front',\n 'door_sliding',\n 'doorbell',\n 'double_arrow',\n 'downhill_skiing',\n 'download',\n 'download_done',\n 'download_for_offline',\n 'downloading',\n 'drafts',\n 'drag_handle',\n 'drag_indicator',\n 'draw',\n 'drive_eta',\n 'drive_file_move',\n 'drive_file_move_rtl',\n 'drive_file_rename_outline',\n 'drive_folder_upload',\n 'dry',\n 'dry_cleaning',\n 'duo',\n 'dvr',\n 'dynamic_feed',\n 'dynamic_form',\n 'e_mobiledata',\n 'earbuds',\n 'earbuds_battery',\n 'east',\n 'edgesensor_high',\n 'edgesensor_low',\n 'edit',\n 'edit',\n 'edit_attributes',\n 'edit_calendar',\n 'edit_location',\n 'edit_location_alt',\n 'edit_note',\n 'edit_notifications',\n 'edit_off',\n 'edit_road',\n 'eject',\n 'elderly',\n 'electric_bike',\n 'electric_car',\n 'electric_moped',\n 'electric_rickshaw',\n 'electric_scooter',\n 'electrical_services',\n 'elevator',\n 'email',\n 'email',\n 'emergency',\n 'emoji_emotions',\n 'emoji_events',\n 'emoji_flags',\n 'emoji_food_beverage',\n 'emoji_nature',\n 'emoji_objects',\n 'emoji_people',\n 'emoji_symbols',\n 'emoji_transportation',\n 'engineering',\n 'enhanced_encryption',\n 'equalizer',\n 'error',\n 'error_outline',\n 'escalator',\n 'escalator_warning',\n 'euro',\n 'euro_symbol',\n 'ev_station',\n 'event',\n 'event_available',\n 'event_busy',\n 'event_note',\n 'event_seat',\n 'exit_to_app',\n 'expand',\n 'expand_less',\n 'expand_more',\n 'explicit',\n 'explore',\n 'explore_off',\n 'exposure',\n 'exposure_neg_1',\n 'exposure_neg_2',\n 'exposure_plus_1',\n 'exposure_plus_2',\n 'exposure_zero',\n 'extension',\n 'extension_off',\n 'face',\n 'face_retouching_natural',\n 'face_retouching_off',\n 'facebook',\n 'fact_check',\n 'family_restroom',\n 'fast_forward',\n 'fast_rewind',\n 'fastfood',\n 'favorite',\n 'favorite_border',\n 'featured_play_list',\n 'featured_video',\n 'feed',\n 'feed',\n 'feedback',\n 'female',\n 'fence',\n 'festival',\n 'fiber_dvr',\n 'fiber_manual_record',\n 'fiber_new',\n 'fiber_pin',\n 'fiber_smart_record',\n 'file_copy',\n 'file_download',\n 'file_download',\n 'file_download_done',\n 'file_download_off',\n 'file_present',\n 'file_upload',\n 'filter',\n 'filter_1',\n 'filter_2',\n 'filter_3',\n 'filter_4',\n 'filter_5',\n 'filter_6',\n 'filter_7',\n 'filter_8',\n 'filter_9',\n 'filter_9_plus',\n 'filter_alt',\n 'filter_b_and_w',\n 'filter_center_focus',\n 'filter_drama',\n 'filter_frames',\n 'filter_hdr',\n 'filter_list',\n 'filter_none',\n 'filter_tilt_shift',\n 'filter_vintage',\n 'find_in_page',\n 'find_replace',\n 'fingerprint',\n 'fire_extinguisher',\n 'fireplace',\n 'first_page',\n 'fit_screen',\n 'fitness_center',\n 'flag',\n 'flaky',\n 'flare',\n 'flash_auto',\n 'flash_off',\n 'flash_on',\n 'flashlight_off',\n 'flashlight_on',\n 'flatware',\n 'flight',\n 'flight_land',\n 'flight_takeoff',\n 'flip',\n 'flip_camera_android',\n 'flip_camera_ios',\n 'flip_to_back',\n 'flip_to_front',\n 'flourescent',\n 'flutter_dash',\n 'fmd_bad',\n 'fmd_good',\n 'folder',\n 'folder_open',\n 'folder_shared',\n 'folder_special',\n 'follow_the_signs',\n 'font_download',\n 'font_download_off',\n 'food_bank',\n 'format_align_center',\n 'format_align_justify',\n 'format_align_left',\n 'format_align_right',\n 'format_bold',\n 'format_clear',\n 'format_color_fill',\n 'format_color_reset',\n 'format_color_text',\n 'format_indent_decrease',\n 'format_indent_increase',\n 'format_italic',\n 'format_line_spacing',\n 'format_list_bulleted',\n 'format_list_numbered',\n 'format_list_numbered_rtl',\n 'format_paint',\n 'format_quote',\n 'format_shapes',\n 'format_size',\n 'format_strikethrough',\n 'format_textdirection_l_to_r',\n 'format_textdirection_r_to_l',\n 'format_underlined',\n 'forum',\n 'forward',\n 'forward_10',\n 'forward_30',\n 'forward_5',\n 'forward_to_inbox',\n 'foundation',\n 'free_breakfast',\n 'free_cancellation',\n 'front_hand',\n 'fullscreen',\n 'fullscreen_exit',\n 'functions',\n 'g_mobiledata',\n 'g_translate',\n 'gamepad',\n 'games',\n 'garage',\n 'gavel',\n 'generating_tokens',\n 'gesture',\n 'get_app',\n 'gif',\n 'gite',\n 'golf_course',\n 'gpp_bad',\n 'gpp_good',\n 'gpp_maybe',\n 'gps_fixed',\n 'gps_not_fixed',\n 'gps_off',\n 'grade',\n 'gradient',\n 'grading',\n 'grain',\n 'graphic_eq',\n 'grass',\n 'grid_3x3',\n 'grid_4x4',\n 'grid_goldenratio',\n 'grid_off',\n 'grid_on',\n 'grid_view',\n 'group',\n 'group_add',\n 'group_off',\n 'group_work',\n 'groups',\n 'h_mobiledata',\n 'h_plus_mobiledata',\n 'hail',\n 'handyman',\n 'hardware',\n 'hd',\n 'hdr_auto',\n 'hdr_auto_select',\n 'hdr_enhanced_select',\n 'hdr_off',\n 'hdr_off_select',\n 'hdr_on',\n 'hdr_on_select',\n 'hdr_plus',\n 'hdr_strong',\n 'hdr_weak',\n 'headphones',\n 'headphones_battery',\n 'headset',\n 'headset_mic',\n 'headset_off',\n 'healing',\n 'health_and_safety',\n 'hearing',\n 'hearing_disabled',\n 'height',\n 'help',\n 'help_center',\n 'help_outline',\n 'hevc',\n 'hide_image',\n 'hide_source',\n 'high_quality',\n 'highlight',\n 'highlight_alt',\n 'highlight_off',\n 'hiking',\n 'history',\n 'history_edu',\n 'history_toggle_off',\n 'holiday_village',\n 'home',\n 'home_max',\n 'home_mini',\n 'home_repair_service',\n 'home_work',\n 'horizontal_distribute',\n 'horizontal_rule',\n 'horizontal_split',\n 'hot_tub',\n 'hotel',\n 'hotel_class',\n 'hourglass_bottom',\n 'hourglass_disabled',\n 'hourglass_empty',\n 'hourglass_full',\n 'hourglass_top',\n 'house',\n 'house_siding',\n 'houseboat',\n 'how_to_reg',\n 'how_to_vote',\n 'http',\n 'https',\n 'hvac',\n 'ice_skating',\n 'icecream',\n 'image',\n 'image_aspect_ratio',\n 'image_not_supported',\n 'image_search',\n 'imagesearch_roller',\n 'import_contacts',\n 'import_export',\n 'important_devices',\n 'inbox',\n 'incomplete_circle',\n 'indeterminate_check_box',\n 'info',\n 'input',\n 'insert_chart',\n 'insert_chart_outlined',\n 'insert_comment',\n 'insert_drive_file',\n 'insert_emoticon',\n 'insert_invitation',\n 'insert_link',\n 'insert_photo',\n 'insights',\n 'integration_instructions',\n 'inventory',\n 'inventory_2',\n 'invert_colors',\n 'invert_colors_off',\n 'ios_share',\n 'iron',\n 'iso',\n 'kayaking',\n 'keyboard',\n 'keyboard_alt',\n 'keyboard_arrow_down',\n 'keyboard_arrow_down',\n 'keyboard_arrow_left',\n 'keyboard_arrow_right',\n 'keyboard_arrow_up',\n 'keyboard_backspace',\n 'keyboard_capslock',\n 'keyboard_hide',\n 'keyboard_return',\n 'keyboard_tab',\n 'keyboard_voice',\n 'king_bed',\n 'kitchen',\n 'kitesurfing',\n 'label',\n 'label_important',\n 'label_off',\n 'landscape',\n 'language',\n 'laptop',\n 'laptop_chromebook',\n 'laptop_mac',\n 'laptop_windows',\n 'last_page',\n 'launch',\n 'layers',\n 'layers_clear',\n 'leaderboard',\n 'leak_add',\n 'leak_remove',\n 'legend_toggle',\n 'lens',\n 'lens_blur',\n 'library_add',\n 'library_add_check',\n 'library_books',\n 'library_music',\n 'light',\n 'light_mode',\n 'light_mode',\n 'lightbulb',\n 'line_style',\n 'line_weight',\n 'linear_scale',\n 'link',\n 'link_off',\n 'linked_camera',\n 'liquor',\n 'list',\n 'list_alt',\n 'live_help',\n 'live_tv',\n 'living',\n 'local_activity',\n 'local_airport',\n 'local_atm',\n 'local_bar',\n 'local_cafe',\n 'local_car_wash',\n 'local_convenience_store',\n 'local_dining',\n 'local_drink',\n 'local_fire_department',\n 'local_florist',\n 'local_gas_station',\n 'local_grocery_store',\n 'local_hospital',\n 'local_hotel',\n 'local_laundry_service',\n 'local_library',\n 'local_mall',\n 'local_movies',\n 'local_offer',\n 'local_parking',\n 'local_pharmacy',\n 'local_phone',\n 'local_pizza',\n 'local_play',\n 'local_police',\n 'local_post_office',\n 'local_printshop',\n 'local_see',\n 'local_shipping',\n 'local_shipping',\n 'local_taxi',\n 'location_city',\n 'location_disabled',\n 'location_off',\n 'location_on',\n 'location_searching',\n 'lock',\n 'lock_clock',\n 'lock_open',\n 'login',\n 'logout',\n 'looks',\n 'looks_3',\n 'looks_4',\n 'looks_5',\n 'looks_6',\n 'looks_one',\n 'looks_two',\n 'loop',\n 'loupe',\n 'low_priority',\n 'loyalty',\n 'lte_mobiledata',\n 'lte_plus_mobiledata',\n 'luggage',\n 'lunch_dining',\n 'mail',\n 'mail_outline',\n 'male',\n 'manage_accounts',\n 'manage_search',\n 'map',\n 'maps_home_work',\n 'maps_ugc',\n 'margin',\n 'mark_as_unread',\n 'mark_chat_read',\n 'mark_chat_unread',\n 'mark_email_read',\n 'mark_email_unread',\n 'markunread',\n 'markunread_mailbox',\n 'masks',\n 'maximize',\n 'media_bluetooth_off',\n 'media_bluetooth_on',\n 'mediation',\n 'medical_services',\n 'medication',\n 'meeting_room',\n 'memory',\n 'menu',\n 'menu_book',\n 'menu_open',\n 'merge_type',\n 'message',\n 'mic',\n 'mic_external_off',\n 'mic_external_on',\n 'mic_none',\n 'mic_off',\n 'microwave',\n 'military_tech',\n 'minimize',\n 'miscellaneous_services',\n 'missed_video_call',\n 'mms',\n 'mobile_friendly',\n 'mobile_off',\n 'mobile_screen_share',\n 'mobiledata_off',\n 'mode',\n 'mode_comment',\n 'mode_edit',\n 'mode_edit_outline',\n 'mode_night',\n 'mode_standby',\n 'model_training',\n 'monetization_on',\n 'money',\n 'money_off',\n 'money_off_csred',\n 'monitor',\n 'monitor_weight',\n 'monochrome_photos',\n 'mood',\n 'mood_bad',\n 'moped',\n 'more',\n 'more_horiz',\n 'more_time',\n 'more_vert',\n 'motion_photos_auto',\n 'motion_photos_off',\n 'motion_photos_on',\n 'motion_photos_pause',\n 'motion_photos_paused',\n 'mouse',\n 'move_to_inbox',\n 'movie',\n 'movie_creation',\n 'movie_filter',\n 'moving',\n 'mp',\n 'multiline_chart',\n 'multiple_stop',\n 'museum',\n 'music_note',\n 'music_off',\n 'music_video',\n 'my_location',\n 'nat',\n 'nature',\n 'nature_people',\n 'navigate_before',\n 'navigate_next',\n 'navigation',\n 'near_me',\n 'near_me_disabled',\n 'nearby_error',\n 'nearby_off',\n 'network_cell',\n 'network_check',\n 'network_locked',\n 'network_wifi',\n 'new_label',\n 'new_releases',\n 'next_plan',\n 'next_week',\n 'nfc',\n 'night_shelter',\n 'nightlife',\n 'nightlight',\n 'nightlight_round',\n 'nights_stay',\n 'no_accounts',\n 'no_backpack',\n 'no_cell',\n 'no_drinks',\n 'no_encryption',\n 'no_encryption_gmailerrorred',\n 'no_flash',\n 'no_food',\n 'no_luggage',\n 'no_meals',\n 'no_meeting_room',\n 'no_photography',\n 'no_sim',\n 'no_stroller',\n 'no_transfer',\n 'nordic_walking',\n 'north',\n 'north_east',\n 'north_west',\n 'not_accessible',\n 'not_interested',\n 'not_listed_location',\n 'not_started',\n 'note',\n 'note_add',\n 'note_alt',\n 'notes',\n 'notification_add',\n 'notification_important',\n 'notifications',\n 'notifications_active',\n 'notifications_none',\n 'notifications_off',\n 'notifications_paused',\n 'offline_bolt',\n 'offline_pin',\n 'offline_share',\n 'ondemand_video',\n 'online_prediction',\n 'opacity',\n 'open_in_browser',\n 'open_in_full',\n 'open_in_new',\n 'open_in_new_off',\n 'open_with',\n 'other_houses',\n 'outbound',\n 'outbox',\n 'outdoor_grill',\n 'outlet',\n 'outlined_flag',\n 'padding',\n 'pages',\n 'pageview',\n 'paid',\n 'palette',\n 'pan_tool',\n 'panorama',\n 'panorama_fish_eye',\n 'panorama_horizontal',\n 'panorama_horizontal_select',\n 'panorama_photosphere',\n 'panorama_photosphere_select',\n 'panorama_vertical',\n 'panorama_vertical_select',\n 'panorama_wide_angle',\n 'panorama_wide_angle_select',\n 'paragliding',\n 'park',\n 'party_mode',\n 'password',\n 'pattern',\n 'pause',\n 'pause_circle',\n 'pause_circle_filled',\n 'pause_circle_outline',\n 'pause_presentation',\n 'payment',\n 'payments',\n 'pedal_bike',\n 'pending',\n 'pending_actions',\n 'people',\n 'people_alt',\n 'people_outline',\n 'perm_camera_mic',\n 'perm_contact_calendar',\n 'perm_data_setting',\n 'perm_device_information',\n 'perm_identity',\n 'perm_media',\n 'perm_phone_msg',\n 'perm_scan_wifi',\n 'person',\n 'person',\n 'person_add',\n 'person_add_alt',\n 'person_add_alt_1',\n 'person_add_disabled',\n 'person_off',\n 'person_outline',\n 'person_pin',\n 'person_pin_circle',\n 'person_remove',\n 'person_remove_alt_1',\n 'person_search',\n 'personal_injury',\n 'personal_video',\n 'pest_control',\n 'pest_control_rodent',\n 'pets',\n 'phone',\n 'phone_android',\n 'phone_bluetooth_speaker',\n 'phone_callback',\n 'phone_disabled',\n 'phone_enabled',\n 'phone_forwarded',\n 'phone_in_talk',\n 'phone_iphone',\n 'phone_locked',\n 'phone_missed',\n 'phone_paused',\n 'phonelink',\n 'phonelink_erase',\n 'phonelink_lock',\n 'phonelink_off',\n 'phonelink_ring',\n 'phonelink_setup',\n 'photo',\n 'photo_album',\n 'photo_camera',\n 'photo_camera_back',\n 'photo_camera_front',\n 'photo_filter',\n 'photo_library',\n 'photo_size_select_actual',\n 'photo_size_select_large',\n 'photo_size_select_small',\n 'piano',\n 'piano_off',\n 'picture_as_pdf',\n 'picture_in_picture',\n 'picture_in_picture_alt',\n 'pie_chart',\n 'pie_chart_outline',\n 'pin',\n 'pin_drop',\n 'pin_end',\n 'pin_invoke',\n 'pivot_table_chart',\n 'place',\n 'plagiarism',\n 'play_arrow',\n 'play_arrow',\n 'play_circle',\n 'play_circle_filled',\n 'play_circle_outline',\n 'play_disabled',\n 'play_for_work',\n 'play_lesson',\n 'playlist_add',\n 'playlist_add_check',\n 'playlist_play',\n 'plumbing',\n 'plus_one',\n 'podcasts',\n 'point_of_sale',\n 'policy',\n 'poll',\n 'polymer',\n 'pool',\n 'portable_wifi_off',\n 'portrait',\n 'post_add',\n 'power',\n 'power_input',\n 'power_off',\n 'power_settings_new',\n 'precision_manufacturing',\n 'pregnant_woman',\n 'present_to_all',\n 'preview',\n 'price_change',\n 'price_check',\n 'print',\n 'print_disabled',\n 'priority_high',\n 'privacy_tip',\n 'private_connectivity',\n 'production_quantity_limits',\n 'psychology',\n 'public',\n 'public_off',\n 'publish',\n 'published_with_changes',\n 'push_pin',\n 'qr_code',\n 'qr_code_2',\n 'qr_code_scanner',\n 'query_builder',\n 'query_stats',\n 'question_answer',\n 'queue',\n 'queue_music',\n 'queue_play_next',\n 'quickreply',\n 'quiz',\n 'r_mobiledata',\n 'radar',\n 'radio',\n 'radio_button_checked',\n 'radio_button_unchecked',\n 'railway_alert',\n 'ramen_dining',\n 'rate_review',\n 'raw_off',\n 'raw_on',\n 'read_more',\n 'real_estate_agent',\n 'receipt',\n 'receipt_long',\n 'recent_actors',\n 'recommend',\n 'record_voice_over',\n 'recycling',\n 'redeem',\n 'redo',\n 'reduce_capacity',\n 'refresh',\n 'remember_me',\n 'remove',\n 'remove_circle',\n 'remove_circle_outline',\n 'remove_done',\n 'remove_from_queue',\n 'remove_moderator',\n 'remove_red_eye',\n 'remove_shopping_cart',\n 'reorder',\n 'repeat',\n 'repeat_on',\n 'repeat_one',\n 'repeat_one_on',\n 'replay',\n 'replay_10',\n 'replay_30',\n 'replay_5',\n 'replay_circle_filled',\n 'reply',\n 'reply_all',\n 'report',\n 'report_gmailerrorred',\n 'report_off',\n 'report_problem',\n 'request_page',\n 'request_quote',\n 'reset_tv',\n 'restart_alt',\n 'restaurant',\n 'restaurant_menu',\n 'restore',\n 'restore_from_trash',\n 'restore_page',\n 'reviews',\n 'rice_bowl',\n 'ring_volume',\n 'roofing',\n 'room',\n 'room_preferences',\n 'room_service',\n 'rotate_90_degrees_ccw',\n 'rotate_left',\n 'rotate_right',\n 'rounded_corner',\n 'router',\n 'rowing',\n 'rss_feed',\n 'rsvp',\n 'rtt',\n 'rule',\n 'rule_folder',\n 'run_circle',\n 'running_with_errors',\n 'rv_hookup',\n 'safety_divider',\n 'sailing',\n 'sanitizer',\n 'satellite',\n 'save',\n 'save_alt',\n 'saved_search',\n 'savings',\n 'scanner',\n 'scatter_plot',\n 'schedule',\n 'schedule_send',\n 'schema',\n 'school',\n 'science',\n 'score',\n 'screen_lock_landscape',\n 'screen_lock_portrait',\n 'screen_lock_rotation',\n 'screen_rotation',\n 'screen_search_desktop',\n 'screen_share',\n 'screenshot',\n 'sd',\n 'sd_card',\n 'sd_card_alert',\n 'sd_storage',\n 'search',\n 'search',\n 'search_off',\n 'security',\n 'security_update',\n 'security_update_good',\n 'security_update_warning',\n 'segment',\n 'select_all',\n 'self_improvement',\n 'sell',\n 'send',\n 'send_and_archive',\n 'send_to_mobile',\n 'sensor_door',\n 'sensor_door',\n 'sensor_window',\n 'sensors',\n 'sensors_off',\n 'sentiment_dissatisfied',\n 'sentiment_neutral',\n 'sentiment_satisfied',\n 'sentiment_satisfied_alt',\n 'sentiment_very_dissatisfied',\n 'sentiment_very_satisfied',\n 'set_meal',\n 'settings',\n 'settings_accessibility',\n 'settings_applications',\n 'settings_backup_restore',\n 'settings_bluetooth',\n 'settings_brightness',\n 'settings_cell',\n 'settings_ethernet',\n 'settings_input_antenna',\n 'settings_input_component',\n 'settings_input_composite',\n 'settings_input_hdmi',\n 'settings_input_svideo',\n 'settings_overscan',\n 'settings_phone',\n 'settings_power',\n 'settings_remote',\n 'settings_suggest',\n 'settings_system_daydream',\n 'settings_voice',\n 'share',\n 'share_location',\n 'shield',\n 'shop',\n 'shop_2',\n 'shop_two',\n 'shopping_bag',\n 'shopping_basket',\n 'shopping_cart',\n 'short_text',\n 'shortcut',\n 'show_chart',\n 'shower',\n 'shuffle',\n 'shuffle_on',\n 'shutter_speed',\n 'sick',\n 'signal_cellular_0_bar',\n 'signal_cellular_4_bar',\n 'signal_cellular_alt',\n 'signal_cellular_connected_no_internet_0_bar',\n 'signal_cellular_connected_no_internet_4_bar',\n 'signal_cellular_no_sim',\n 'signal_cellular_nodata',\n 'signal_cellular_null',\n 'signal_cellular_off',\n 'signal_wifi_0_bar',\n 'signal_wifi_4_bar',\n 'signal_wifi_4_bar_lock',\n 'signal_wifi_bad',\n 'signal_wifi_connected_no_internet_4',\n 'signal_wifi_off',\n 'signal_wifi_statusbar_4_bar',\n 'signal_wifi_statusbar_connected_no_internet_4',\n 'signal_wifi_statusbar_null',\n 'sim_card',\n 'sim_card_alert',\n 'sim_card_download',\n 'single_bed',\n 'sip',\n 'skateboarding',\n 'skip_next',\n 'skip_previous',\n 'sledding',\n 'slideshow',\n 'slow_motion_video',\n 'smart_button',\n 'smart_display',\n 'smart_screen',\n 'smart_toy',\n 'smartphone',\n 'smoke_free',\n 'smoking_rooms',\n 'sms',\n 'sms_failed',\n 'snippet_folder',\n 'snooze',\n 'snowboarding',\n 'snowmobile',\n 'snowshoeing',\n 'soap',\n 'social_distance',\n 'sort',\n 'sort_by_alpha',\n 'source',\n 'south',\n 'south_east',\n 'south_west',\n 'spa',\n 'space_bar',\n 'space_dashboard',\n 'speaker',\n 'speaker_group',\n 'speaker_notes',\n 'speaker_notes_off',\n 'speaker_phone',\n 'speed',\n 'spellcheck',\n 'splitscreen',\n 'sports',\n 'sports_bar',\n 'sports_baseball',\n 'sports_basketball',\n 'sports_cricket',\n 'sports_esports',\n 'sports_football',\n 'sports_golf',\n 'sports_handball',\n 'sports_hockey',\n 'sports_kabaddi',\n 'sports_mma',\n 'sports_motorsports',\n 'sports_rugby',\n 'sports_score',\n 'sports_soccer',\n 'sports_tennis',\n 'sports_volleyball',\n 'square_foot',\n 'stacked_bar_chart',\n 'stacked_line_chart',\n 'stairs',\n 'star',\n 'star',\n 'star_border',\n 'star_border_purple500',\n 'star_half',\n 'star_outline',\n 'star_purple500',\n 'star_rate',\n 'stars',\n 'stay_current_landscape',\n 'stay_current_portrait',\n 'stay_primary_landscape',\n 'stay_primary_portrait',\n 'sticky_note_2',\n 'stop',\n 'stop_circle',\n 'stop_screen_share',\n 'storage',\n 'store',\n 'store_mall_directory',\n 'storefront',\n 'storefront',\n 'storm',\n 'straighten',\n 'stream',\n 'streetview',\n 'strikethrough_s',\n 'stroller',\n 'style',\n 'subdirectory_arrow_left',\n 'subdirectory_arrow_right',\n 'subject',\n 'subscript',\n 'subscriptions',\n 'subtitles',\n 'subtitles_off',\n 'subway',\n 'summarize',\n 'superscript',\n 'supervised_user_circle',\n 'supervisor_account',\n 'support',\n 'support_agent',\n 'support_agent',\n 'surfing',\n 'surround_sound',\n 'swap_calls',\n 'swap_horiz',\n 'swap_horizontal_circle',\n 'swap_vert',\n 'swap_vertical_circle',\n 'swipe',\n 'switch_account',\n 'switch_camera',\n 'switch_left',\n 'switch_right',\n 'switch_video',\n 'sync',\n 'sync_alt',\n 'sync_disabled',\n 'sync_problem',\n 'system_security_update',\n 'system_security_update_good',\n 'system_security_update_warning',\n 'system_update',\n 'system_update_alt',\n 'tab',\n 'tab_unselected',\n 'table_chart',\n 'table_rows',\n 'table_view',\n 'tablet',\n 'tablet_android',\n 'tablet_mac',\n 'tag',\n 'tag_faces',\n 'takeout_dining',\n 'tap_and_play',\n 'tapas',\n 'task',\n 'task_alt',\n 'taxi_alert',\n 'terrain',\n 'text_fields',\n 'text_format',\n 'text_rotate_up',\n 'text_rotate_vertical',\n 'text_rotation_angledown',\n 'text_rotation_angleup',\n 'text_rotation_down',\n 'text_rotation_none',\n 'text_snippet',\n 'textsms',\n 'texture',\n 'theater_comedy',\n 'theaters',\n 'thermostat',\n 'thermostat_auto',\n 'thumb_down',\n 'thumb_down_alt',\n 'thumb_down_off_alt',\n 'thumb_up',\n 'thumb_up_alt',\n 'thumb_up_off_alt',\n 'thumbs_up_down',\n 'time_to_leave',\n 'timelapse',\n 'timeline',\n 'timer',\n 'timer_10',\n 'timer_10_select',\n 'timer_3',\n 'timer_3_select',\n 'timer_off',\n 'tips_and_updates',\n 'title',\n 'toc',\n 'today',\n 'toggle_off',\n 'toggle_on',\n 'toll',\n 'tonality',\n 'topic',\n 'touch_app',\n 'tour',\n 'toys',\n 'track_changes',\n 'traffic',\n 'train',\n 'tram',\n 'transfer_within_a_station',\n 'transform',\n 'transgender',\n 'transit_enterexit',\n 'translate',\n 'travel_explore',\n 'trending_down',\n 'trending_flat',\n 'trending_up',\n 'trip_origin',\n 'try',\n 'tty',\n 'tune',\n 'tungsten',\n 'turned_in',\n 'turned_in_not',\n 'tv',\n 'tv_off',\n 'two_wheeler',\n 'umbrella',\n 'unarchive',\n 'undo',\n 'unfold_less',\n 'unfold_more',\n 'unpublished',\n 'unsubscribe',\n 'upcoming',\n 'update',\n 'update_disabled',\n 'upgrade',\n 'upload',\n 'upload_file',\n 'usb',\n 'usb_off',\n 'verified',\n 'verified_user',\n 'vertical_align_bottom',\n 'vertical_align_center',\n 'vertical_align_top',\n 'vertical_distribute',\n 'vertical_split',\n 'vibration',\n 'video_call',\n 'video_camera_back',\n 'video_camera_front',\n 'video_label',\n 'video_library',\n 'video_settings',\n 'video_stable',\n 'videocam',\n 'videocam_off',\n 'videogame_asset',\n 'videogame_asset_off',\n 'view_agenda',\n 'view_array',\n 'view_carousel',\n 'view_column',\n 'view_comfy',\n 'view_compact',\n 'view_day',\n 'view_headline',\n 'view_in_ar',\n 'view_list',\n 'view_module',\n 'view_quilt',\n 'view_sidebar',\n 'view_stream',\n 'view_week',\n 'vignette',\n 'villa',\n 'visibility',\n 'visibility_off',\n 'voice_chat',\n 'voice_over_off',\n 'voicemail',\n 'volume_down',\n 'volume_mute',\n 'volume_off',\n 'volume_up',\n 'volunteer_activism',\n 'vpn_key',\n 'vpn_lock',\n 'vrpano',\n 'wallpaper',\n 'warning',\n 'warning',\n 'warning_amber',\n 'wash',\n 'watch',\n 'watch_later',\n 'water',\n 'water_damage',\n 'water_drop',\n 'waterfall_chart',\n 'waves',\n 'waving_hand',\n 'wb_auto',\n 'wb_cloudy',\n 'wb_incandescent',\n 'wb_iridescent',\n 'wb_shade',\n 'wb_sunny',\n 'wb_twilight',\n 'wc',\n 'web',\n 'web_asset',\n 'web_asset_off',\n 'weekend',\n 'west',\n 'whatshot',\n 'wheelchair_pickup',\n 'where_to_vote',\n 'widgets',\n 'wifi',\n 'wifi_calling',\n 'wifi_calling_3',\n 'wifi_lock',\n 'wifi_off',\n 'wifi_protected_setup',\n 'wifi_tethering',\n 'wifi_tethering_error_rounded',\n 'wifi_tethering_off',\n 'window',\n 'wine_bar',\n 'work',\n 'work_off',\n 'work_outline',\n 'workspaces',\n 'wrap_text',\n 'wrong_location',\n 'wysiwyg',\n 'yard',\n 'youtube_searched_for',\n 'zoom_in',\n 'zoom_out',\n 'zoom_out_map'\n ]),\n }\n}"],"names":["MaterialIcon","icon","className","classNames","window","isNotProductionEnvironment","propTypes","PropTypes","string","oneOf"],"mappings":"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"}
|
package/Modal.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../../../src/react-ui-basics/Modal.js"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport ReactCreateElement from './ReactCreateElement';\nimport './Modal.css'\nimport Button from \"./Button\";\nimport {classNames, orNoop, setTimeout, DOCUMENT, addEventListener, removeEventListener, createRef, UNDEFINED, stopPropagation} from \"./Tools\";\nimport {PureComponent, componentDidMount, render, propsGetter, stateGSs, componentDidUpdate} from \"./ReactConstants\";\nimport MaterialIcon from \"./MaterialIcon\";\nimport PropTypes from \"prop-types\";\n\nlet listenerRef;\nlet zIndex = 100;\n\nconst EVENT_TYPE = 'keydown';\nconst pollListener = (modal) => {\n removeEventListener(DOCUMENT, EVENT_TYPE, listenerRef);\n const listener = modal._pl;\n listener && addEventListener(DOCUMENT, EVENT_TYPE, listener);\n listenerRef = listener;\n};\n\nconst addListener = (modal, listener) => {\n const prev = listenerRef;\n prev && removeEventListener(DOCUMENT, EVENT_TYPE, prev);\n modal._pl = prev;\n addEventListener(DOCUMENT, EVENT_TYPE, listenerRef = listener);\n};\n\nclass Modal extends PureComponent {\n\n static defaultProps = {\n closeIcon: <MaterialIcon icon=\"close\"/>,\n };\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const [\n isShow,\n getMenu,\n getBeforeClose,\n ] = stateGSs(that, 3);\n const overlay = createRef();\n const el = createRef();\n const content = createRef();\n const props = propsGetter(that);\n\n const beforeClose = (e) => {\n stopPropagation(e);\n const bc = getBeforeClose() || props().beforeClose;\n if (!bc || bc(that.close))\n that.close(e);\n };\n\n const shouldClose = (e) => {\n const isSameModal = el().style.zIndex == zIndex - 1;\n !(e && content().contains(e.target)) && isSameModal && beforeClose(e);\n };\n\n const addTransitionListener = () => {\n const transitionend = \"transitionend\";\n let listener = () => {\n removeEventListener(overlay(), transitionend, listener);\n orNoop(isShow() ? props().onOpen : orNoop(props().onClose))();\n el() && (el().style.paddingBottom = isShow() ? '1px' : '0px'); // force invalidate scroll\n };\n addEventListener(overlay(), transitionend, listener);\n };\n that[render] = () => {\n const {className, top, container = Modal.defaultContainer, children, closeIcon} = props();\n const menu = getMenu();\n const show = isShow();\n const modal = <div className={classNames(`Modal`, className, show && 'show')} ref={el} onClick={shouldClose}>\n <div ref={overlay} className={classNames(`overlay`, show && 'show')}>\n </div>\n <div className={classNames(`content`, show && 'show', top && 'top')}\n style={top && {top: top + 'px'}}\n ref={content}\n >\n {React.Children.map(children, child => React.cloneElement(child, {\n modalMenuConsumer: getMenu,\n modalBeforeCloseConsumer: getBeforeClose\n }))}\n {menu}\n <Button className=\"close\" flat={true} round={true} onClick={beforeClose}>\n {closeIcon}\n </Button>\n </div>\n </div>;\n\n return container ? ReactDOM.createPortal(modal, container) : modal;\n };\n\n const close = that.close = () => {\n if (!isShow())\n return;\n\n zIndex--;\n addTransitionListener();\n isShow(false);\n\n pollListener(that);\n };\n const open = that.open = () => {\n if (isShow())\n return;\n\n el() && (el().style.zIndex = zIndex++);\n addTransitionListener();\n isShow(true);\n\n let listener = event => {\n if (!event.defaultPrevented && event.keyCode === 27/*escape*/)\n beforeClose();\n return true;\n };\n\n addListener(that, listener)\n };\n\n that[componentDidMount] = () => {\n const _props = props();\n orNoop(_props.open)(() => {\n setTimeout(open, 0);\n });\n orNoop(_props.close)(() => {\n setTimeout(close, 0);\n });\n _props.show && setTimeout(open, 0)\n };\n that[componentDidUpdate] = (prevProps) => {\n const show = props().show;\n if (show !== prevProps.show) {\n show ? open() : close();\n }\n };\n }\n}\n\nModal.defaultContainer = UNDEFINED;\nModal.pollListener = pollListener;\nModal.addListener = addListener;\n\nexport default Modal;\n\nif (window.isNotProductionEnvironment) {\n Modal.propTypes = {\n className: PropTypes.string,\n top: PropTypes.number,\n container: PropTypes.node,\n };\n}"],"names":["listenerRef","zIndex","EVENT_TYPE","pollListener","modal","removeEventListener","DOCUMENT","listener","_pl","addEventListener","addListener","prev","Modal","properties","that","state","stateGSs","isShow","getMenu","getBeforeClose","overlay","createRef","el","content","props","propsGetter","beforeClose","e","stopPropagation","bc","close","shouldClose","isSameModal","style","contains","target","addTransitionListener","transitionend","orNoop","onOpen","onClose","paddingBottom","render","className","top","container","defaultContainer","children","closeIcon","menu","show","classNames","React","Children","map","child","cloneElement","modalMenuConsumer","modalBeforeCloseConsumer","ReactDOM","createPortal","open","event","defaultPrevented","keyCode","componentDidMount","_props","setTimeout","componentDidUpdate","prevProps","PureComponent","defaultProps","UNDEFINED","window","isNotProductionEnvironment","propTypes","PropTypes","string","number","node"],"mappings":"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"}
|
package/ModalMenu.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModalMenu.js","sources":["../../../src/react-ui-basics/ModalMenu.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './ModalMenu.css'\nimport {PureComponent, stateGS, render} from \"./ReactConstants\";\nimport {classNames} from \"./Tools\";\nimport Animated from \"./Animated\";\nimport Button from \"./Button\";\nimport MaterialIcon from \"./MaterialIcon\";\n\nclass ModalMenu extends PureComponent {\n\n constructor(props) {\n super(props);\n this.state = {};\n const isOpen = stateGS(this);\n\n const toggle = () => {\n isOpen(!isOpen());\n };\n this[render] = () => {\n const {items} = this.props;\n const filtered = (items || []).filter(it => !!it);\n if (filtered.length === 0) return null;\n\n const open = isOpen();\n\n return <div className={classNames(\"ModalMenu\", 'row', open && 'open')}>\n {filtered.map((it, i) => <Animated value={open}\n key={i}\n mounting={200}\n unmounting={200}\n mountingDelay={i * 50}\n unmountingDelay={(filtered.length - i - 1) * 50}\n styles={{\n mounting: {right: ((filtered.length - i) * 36 + 5 + (filtered.length - i) * 5) + `px`},\n }}\n >\n <Button flat={true} round={true} onClick={it.action}>\n <MaterialIcon icon={it.icon}/>\n </Button>\n </Animated>)}\n\n <Button className={classNames(\"more\", open && 'active')} flat={true} round={true} onClick={toggle}>\n <MaterialIcon icon=\"more_vert\"/>\n </Button>\n\n <div className=\"separator\"/>\n </div>\n }\n }\n}\n\nexport default ModalMenu;"],"names":["ModalMenu","props","state","isOpen","stateGS","toggle","render","items","filtered","filter","it","length","open","classNames","map","i","mounting","right","action","icon","PureComponent"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReactConstants.js","sources":["../../../src/src/react-ui-basics/ReactConstants.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA,IAAM,KAAK,GAAG,EAAE,CAAC;AACV,IAAM,KAAK,GAAuC,UAAA,IAAI,EAAI,EAAA,OAAA,IAAI,CAAC,KAAK,CAAA,GAAC;AAC/D,IAAA,WAAW,GAA+C,UAAA,IAAI,IAAI,OAAA,YAAA,EAAM,OAAA,KAAK,CAAC,IAAI,CAAC,GAAA,CAAA,GAAC;AACjG;AACO,IAAM,KAAK,GAA6C,UAAA,IAAI,EAAA,EAAI,OAAA,IAAI,CAAC,KAAK,IAAI,KAAK,CAAA,GAAC;IAC9E,QAAQ,GAAG,UAAC,IAAI,EAAE,IAAI,EAAE,EAAG,EAAA;AACpC,IAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAC5B,EAAE;AACK,IAAM,gBAAgB,GAAG,UAAC,IAAI,EAAE,GAAG,EAAE,EAAG,EAAK,EAAA,OAAA,UAAC,KAAK,EAAE,GAAI,EAAA;;AAC5D,IAAA,QAAQ,CAAC,IAAI,GAAG,EAAA,GAAA,EAAA,EAAA,EAAA,CAAC,GAAG,CAAA,GAAG,KAAK,EAAA,EAAA,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC;AAC9C,CAAC,CAAA,GAAC;AACK,IAAM,OAAO,GAAkD,UAAC,IAAI,EAAA;AACvE,IAAA,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAClC,IAAM,GAAG,GAAG,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClC,IAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC3C,IAAA,IAAM,MAAM,GAAG,YAAA;QACX,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAChF,KAAC,CAAC;IACF,MAAM,CAAC,QAAQ,GAAG,YAAA,EAAM,OAAA,GAAG,CAAA,EAAA,CAAC;AAC5B,IAAA,OAAO,MAAM,CAAC;AAClB,EAAE;AACW,IAAA,QAAQ,GAAG,UAAC,IAAI,EAAE,GAAG,EAAA;IAC9B,IAAM,MAAM,GAAG,EAAE,CAAC;IAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;QAC1B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9B,KAAA;AACD,IAAA,OAAO,MAAM,CAAC;AAClB,EAAE;AAEK,IAAM,iBAAiB,GAAG,oBAAoB;AAC9C,IAAM,oBAAoB,GAAG,uBAAuB;AACpD,IAAM,kBAAkB,GAAG,qBAAqB;AAChD,IAAM,MAAM,GAAG,SAAS;AACxB,IAAM,QAAQ,GAAG,WAAW;AAC5B,IAAM,SAAS,GAAG,YAAY;AAC9B,IAAM,OAAO,GAAG,UAAU;AAC1B,IAAM,QAAQ,GAAG,WAAW;AACtB,IAAA,aAAa,GAAG,KAAK,CAAC,cAAc;AAEjD,qBAAe,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReactCreateElement.js","sources":["../../../src/react-ui-basics/ReactCreateElement.js"],"sourcesContent":["import React from 'react';\n\nexport default React.createElement;"],"names":["React","createElement"],"mappings":";;AAEA,yBAAeA,KAAK,CAACC,aAArB;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
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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"}
|
|
@@ -0,0 +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":"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"}
|