react-ui-basics 0.0.158 → 0.0.161
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 +11 -10
- package/AutocompleteSelect.js +62 -63
- package/Button.js +21 -22
- package/Checkbox.js +7 -8
- package/CircleProgress.js +5 -6
- package/CommonFields.js +23 -15
- package/DNDContainer.js +47 -48
- package/DNDDraggable.js +8 -9
- package/DNDDroppable.js +8 -9
- package/Dialog.js +16 -17
- package/DropFileInput.js +4 -5
- package/DroppableHorizontalList.js +26 -27
- package/DroppableList.js +26 -27
- package/Dropzone.js +17 -18
- package/FilteredList.js +40 -41
- package/FloatingActionButton.js +4 -5
- package/FormUploadProgress.js +8 -9
- package/ImageGallery.js +121 -122
- package/MaterialIcon.js +5 -6
- package/Modal.js +17 -18
- package/ModalMenu.js +10 -11
- package/ReactConstants.d.ts +2 -0
- package/ReactConstants.js +2 -1
- package/ReactCreateElement.js +2 -0
- package/ReadyListener.js +9 -10
- package/Scrollable.js +50 -51
- package/ScrollableTable.js +4 -5
- package/Size.js +5 -6
- package/Snackbar.js +7 -8
- package/SpinningProgress.js +5 -6
- package/Switch.js +14 -15
- package/Table.js +26 -27
- package/TextField.js +17 -18
- package/Tools.d.ts +1 -0
- package/Tools.js +14 -12
- package/_virtual/_commonjsHelpers.js +2 -0
- package/_virtual/_react.js +2 -0
- package/_virtual/react-jsx-runtime.development.js +2 -0
- package/bundle.css +446 -446
- package/index.js +3 -3
- package/package.json +1 -1
- package/router/HistoryTools.js +2 -0
- package/router/Link.js +5 -6
- package/router/NavLink.js +5 -6
- package/router/Route.js +15 -16
- package/router/index.js +2 -3
- package/store/ProxyTools.js +2 -3
- package/store/Store.js +2 -3
- package/Animated.js.map +0 -1
- package/AutocompleteSelect.js.map +0 -1
- package/Button.js.map +0 -1
- package/Checkbox.js.map +0 -1
- package/CircleProgress.js.map +0 -1
- package/CommonFields.js.map +0 -1
- package/DNDContainer.js.map +0 -1
- package/DNDDraggable.js.map +0 -1
- package/DNDDroppable.js.map +0 -1
- package/Dialog.js.map +0 -1
- package/DropFileInput.js.map +0 -1
- package/DroppableHorizontalList.js.map +0 -1
- package/DroppableList.js.map +0 -1
- package/Dropzone.js.map +0 -1
- package/FilteredList.js.map +0 -1
- package/FloatingActionButton.js.map +0 -1
- package/FormUploadProgress.js.map +0 -1
- package/ImageGallery.js.map +0 -1
- package/MaterialIcon.js.map +0 -1
- package/Modal.js.map +0 -1
- package/ModalMenu.js.map +0 -1
- package/ReactConstants.js.map +0 -1
- package/ReactCreateElement.js.map +0 -1
- package/ReadyListener.js.map +0 -1
- package/Scrollable.js.map +0 -1
- package/ScrollableTable.js.map +0 -1
- package/Size.js.map +0 -1
- package/Snackbar.js.map +0 -1
- package/SpinningProgress.js.map +0 -1
- package/Switch.js.map +0 -1
- package/Table.js.map +0 -1
- package/TextField.js.map +0 -1
- package/Tools.js.map +0 -1
- package/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DroppableHorizontalList.js","sources":["../../../src/react-ui-basics/DroppableHorizontalList.js"],"sourcesContent":["import React, {Component} from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './DroppableList.css'\nimport DNDDroppable from \"./DNDDroppable\";\nimport {classNames, orNoop, setTimeout, NOOP} from \"./Tools\";\nimport DNDDraggable from \"./DNDDraggable\";\nimport {addListener} from \"./DNDContainer\";\nimport {stateGS, setState, propsGetter, props as getProps, render, componentDidUpdate, componentDidMount, children} from \"./ReactConstants\";\n\nclass DroppableHorizontalList extends Component {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const props = propsGetter(that);\n const resetting = stateGS(that);\n const draggables = {};\n let list;\n\n const init = () => {\n list = [];\n React.Children.forEach(props()[children], child => {\n child && child.type === DNDDraggable && list.push(getProps(child).id);\n })\n };\n\n init();\n\n that[componentDidUpdate] = (prevProps) => {\n if (prevProps[children] !== props()[children]) {\n init();\n }\n };\n\n let dropped;\n let dragging;\n let oldIndex;\n let newIndex;\n\n that[componentDidMount] = () => {\n let inTransition = false;\n orNoop(props().provideDraggableEnhancer)(initializer => it => {\n orNoop(initializer)(it);\n it.createPositionListener = (e, style) => {\n const offset = e.pageX;\n return e => {\n e.pageX && (style.transform = 'translateX(' + (e.pageX - offset) + 'px)');\n };\n };\n it.initDraggedStyles = NOOP;\n it.onDragEnd = () => {\n const style = it.element.style;\n inTransition = true;\n setTimeout(() => {\n const droppingDuration = props().droppingDuration || 100;\n style.transition = 'transform ' + droppingDuration + 'ms linear';\n style.transform = '';\n style.zIndex = '10';\n setTimeout(() => {\n style.transition = '';\n style.zIndex = '';\n setTimeout(() => {\n inTransition = false;\n }, 50) // ignore mouseenter on the old position\n }, droppingDuration)\n }, 1);\n };\n addListener(it.element, it, 'mouseenter', (e) => {\n !(dragging || inTransition) && setState(it, {hover: true});\n });\n addListener(it.element, it, 'mouseleave', (e) => {\n !dragging && setState(it, {hover: false});\n });\n it.onUnmount = () => {\n delete draggables[getProps(it).id];\n };\n draggables[getProps(it).id] = it;\n })\n };\n\n const onHover = (e, draggable) => {\n const offset = e.pageX - that.scrollOffsetX;\n const transformLeft = 'translateX(' + draggable.width + 'px)';\n const transformRight = 'translateX(-' + draggable.width + 'px)';\n list.forEach((id, i) => {\n if (i !== oldIndex) {\n const d = draggables[id];\n const bounds = d.bounds;\n const style = d.element.style;\n if (i > oldIndex) {\n if (offset >= bounds.left)\n style.transform = transformRight;\n else\n style.transform = '';\n } else {\n if (offset <= bounds.right)\n style.transform = transformLeft;\n else\n style.transform = '';\n }\n }\n });\n\n let i = list.findIndex(id => {\n let bounds = draggables[id].bounds;\n return offset >= bounds.left && offset <= bounds.right\n });\n\n newIndex = i !== -1 ? i : list.length;\n };\n\n const onDragStart = (e, draggable) => {\n dragging = true;\n dropped = false;\n oldIndex = list.indexOf(getProps(draggable).id);\n that.scrollOffsetX = e.pageX - e.clientX;\n\n list.forEach((id) => {\n draggables[id].bounds = draggables[id].element.getBoundingClientRect();\n });\n };\n\n const reset = (ignoredIndex, transition) => {\n list.forEach((id, i) => {\n if (i !== ignoredIndex) {\n const s = draggables[id].element.style;\n s.transform = '';\n s.transition = transition;\n }\n });\n };\n\n const onDragEnd = (draggable) => {\n const index = list.indexOf(getProps(draggable).id);\n\n if (dropped) {\n reset(index, '');\n } else {\n resetting(true, () => {\n reset(index, '');\n });\n setTimeout(() => {\n resetting(false);\n }, props().droppingDuration || 100);\n }\n dragging = false;\n };\n const onDrop = (data) => {\n dropped = true;\n const draggable = draggables[list[oldIndex]];\n const style = draggable.element.style;\n\n const diff = (newIndex - oldIndex) * draggable.bounds.width;\n const transform = style.transform;\n const position = transform.substring(11, transform.length - 3);\n style.transform = 'translateX(' + (position - diff) + 'px)'; // set translateX against new position on the list to prevent long slide\n orNoop(props().onDrop)(data, oldIndex, newIndex);\n\n reset(newIndex, 'unset');\n };\n\n that[render] = () => {\n const _props = props();\n const {className, initializer} = _props;\n return <DNDDroppable className={classNames(\n 'DroppableList',\n className,\n resetting() && 'resetting',\n )}\n initializer={initializer}\n onHover={onHover}\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n onDrop={onDrop}\n >\n {_props[children]}\n </DNDDroppable>;\n };\n }\n}\n\n\nexport default DroppableHorizontalList;"],"names":["DroppableHorizontalList","properties","that","state","props","propsGetter","resetting","stateGS","draggables","list","init","React","Children","forEach","children","child","type","DNDDraggable","push","getProps","id","componentDidUpdate","prevProps","dropped","dragging","oldIndex","newIndex","componentDidMount","inTransition","orNoop","provideDraggableEnhancer","initializer","it","createPositionListener","e","style","offset","pageX","transform","initDraggedStyles","NOOP","onDragEnd","element","setTimeout","droppingDuration","transition","zIndex","addListener","setState","hover","onUnmount","onHover","draggable","scrollOffsetX","transformLeft","width","transformRight","i","d","bounds","left","right","findIndex","length","onDragStart","indexOf","clientX","getBoundingClientRect","reset","ignoredIndex","s","index","onDrop","data","diff","position","substring","render","_props","className","classNames","Component"],"mappings":"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"}
|
package/DroppableList.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DroppableList.js","sources":["../../../src/react-ui-basics/DroppableList.js"],"sourcesContent":["import React, {Component} from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './DroppableList.css'\nimport DNDDroppable from \"./DNDDroppable\";\nimport {classNames, orNoop, setTimeout, NOOP} from \"./Tools\";\nimport DNDDraggable from \"./DNDDraggable\";\nimport {addListener} from \"./DNDContainer\";\nimport {stateGS, setState, propsGetter, props as getProps, render, componentDidUpdate, componentDidMount, children} from \"./ReactConstants\";\n\nclass DroppableList extends Component {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n const props = propsGetter(that);\n const resetting = stateGS(that);\n const draggables = {};\n let list;\n\n const init = () => {\n list = [];\n React.Children.forEach(props()[children], child => {\n child && child.type === DNDDraggable && list.push(getProps(child).id);\n })\n };\n\n init();\n\n that[componentDidUpdate] = (prevProps) => {\n if (prevProps[children] !== props()[children]) {\n init();\n }\n };\n\n let dropped;\n let dragging;\n let oldIndex;\n let newIndex;\n\n that[componentDidMount] = () => {\n let inTransition = false;\n orNoop(props().provideDraggableEnhancer)(initializer => it => {\n orNoop(initializer)(it);\n it.createPositionListener = (e, style) => {\n const offsetTop = e.pageY;\n return e => {\n e.pageY && (style.transform = 'translateY(' + (e.pageY - offsetTop - that.scrollDiff) + 'px)');\n };\n };\n it.initDraggedStyles = NOOP;\n it.onDragEnd = () => {\n const style = it.element.style;\n inTransition = true;\n setTimeout(() => {\n const droppingDuration = props().droppingDuration || 100;\n style.transition = 'transform ' + droppingDuration + 'ms linear';\n style.transform = '';\n style.zIndex = '10';\n setTimeout(() => {\n style.transition = '';\n style.zIndex = '';\n setTimeout(() => {\n inTransition = false;\n }, 50) // ignore mouseenter on the old position\n }, droppingDuration)\n }, 1);\n };\n addListener(it.element, it, 'mouseenter', (e) => {\n !(dragging || inTransition) && setState(it, {hover: true});\n });\n addListener(it.element, it, 'mouseleave', (e) => {\n !dragging && setState(it, {hover: false});\n });\n it.onUnmount = () => {\n delete draggables[getProps(it).id];\n };\n draggables[getProps(it).id] = it;\n })\n\n orNoop(props().provideScrollListener)(e => {\n if (!dragging)\n return\n\n that.scrollDiff = that.scroll - orNoop(props().getScrollPosition)() || 0;\n })\n };\n\n const onHover = (e, draggable) => {\n const y = e.pageY - that.scrollOffsetY - that.scrollDiff;\n const transformUp = 'translateY(' + draggable.height + 'px)';\n const transformDown = 'translateY(-' + draggable.height + 'px)';\n list.forEach((id, i) => {\n if (i !== oldIndex) {\n const d = draggables[id];\n const bounds = d.bounds;\n const style = d.element.style;\n if (i > oldIndex) {\n if (y >= bounds.top)\n style.transform = transformDown;\n else\n style.transform = '';\n } else {\n if (y <= bounds.bottom)\n style.transform = transformUp;\n else\n style.transform = '';\n }\n }\n });\n\n let i = list.findIndex(id => {\n let bounds = draggables[id].bounds;\n return y >= bounds.top && y <= bounds.bottom\n });\n\n newIndex = i !== -1 ? i : list.length;\n };\n\n const onDragStart = (e, draggable) => {\n dragging = true;\n dropped = false;\n oldIndex = list.indexOf(getProps(draggable).id);\n that.scrollOffsetY = e.pageY - e.clientY;\n that.scroll = orNoop(props().getScrollPosition)() || 0;\n that.scrollDiff = 0;\n\n list.forEach((id) => {\n draggables[id].bounds = draggables[id].element.getBoundingClientRect();\n });\n };\n\n const reset = (ignoredIndex, transition) => {\n list.forEach((id, i) => {\n if (i !== ignoredIndex) {\n const s = draggables[id].element.style;\n s.transform = '';\n s.transition = transition;\n }\n });\n };\n\n const onDragEnd = (draggable) => {\n const index = list.indexOf(getProps(draggable).id);\n\n if (dropped) {\n reset(index, '');\n } else {\n resetting(true, () => {\n reset(index, '');\n });\n setTimeout(() => {\n resetting(false);\n }, props().droppingDuration || 100);\n }\n dragging = false;\n };\n const onDrop = (data) => {\n dropped = true;\n const draggable = draggables[list[oldIndex]];\n const style = draggable.element.style;\n\n const diff = (newIndex - oldIndex) * draggable.bounds.height;\n const transform = style.transform;\n const position = transform.substring(11, transform.length - 3);\n style.transform = 'translateY(' + (position - diff) + 'px)'; // set translateY against new position on the list to prevent long slide\n\n orNoop(props().onDrop)(data, oldIndex, newIndex);\n\n reset(newIndex, 'unset');\n };\n\n that[render] = () => {\n const _props = props();\n const {className, initializer} = _props;\n return <DNDDroppable className={classNames(\n 'DroppableList',\n className,\n resetting() && 'resetting',\n )}\n initializer={initializer}\n onHover={onHover}\n onDragStart={onDragStart}\n onDragEnd={onDragEnd}\n onDrop={onDrop}\n >\n {_props[children]}\n </DNDDroppable>;\n };\n }\n}\n\n\nexport default DroppableList;"],"names":["DroppableList","properties","that","state","props","propsGetter","resetting","stateGS","draggables","list","init","React","Children","forEach","children","child","type","DNDDraggable","push","getProps","id","componentDidUpdate","prevProps","dropped","dragging","oldIndex","newIndex","componentDidMount","inTransition","orNoop","provideDraggableEnhancer","initializer","it","createPositionListener","e","style","offsetTop","pageY","transform","scrollDiff","initDraggedStyles","NOOP","onDragEnd","element","setTimeout","droppingDuration","transition","zIndex","addListener","setState","hover","onUnmount","provideScrollListener","scroll","getScrollPosition","onHover","draggable","y","scrollOffsetY","transformUp","height","transformDown","i","d","bounds","top","bottom","findIndex","length","onDragStart","indexOf","clientY","getBoundingClientRect","reset","ignoredIndex","s","index","onDrop","data","diff","position","substring","render","_props","className","classNames","Component"],"mappings":"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"}
|
package/Dropzone.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Dropzone.js","sources":["../../../src/react-ui-basics/Dropzone.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from \"prop-types\";\nimport ReactCreateElement from './ReactCreateElement';\nimport './Dropzone.css'\nimport {classNames, setOf, preventDefault, stopPropagation, UNDEFINED, createRef} from \"./Tools\";\nimport {propsGetter, PureComponent, render, stateGS} from \"./ReactConstants\";\n\nconst toArray = (o) => {\n if (o instanceof Array)\n return o;\n\n const l = [];\n for (let i = 0; i < o.length; i++) {\n l.push(o[i])\n }\n return l;\n};\n\nconst prevent = (e) => {\n preventDefault(e);\n stopPropagation(e);\n return false;\n};\n\nconst ignoredTypes = setOf([\n 'text',\n 'Text',\n 'text/plain',\n]);\n\nconst ignore = dt => dt && (!dt.types[0] || ignoredTypes[dt.types[0]]);\n\nclass Dropzone extends PureComponent {\n\n constructor(properties) {\n super(properties);\n const that = this;\n that.state = {};\n\n let entries = [];\n\n const props = propsGetter(that);\n const isDragging = stateGS(that);\n\n const onDrop = (e) => {\n const dt = e.dataTransfer;\n const files = toArray(dt && dt.files || e.target.files);\n props().onDrop(files);\n isDragging(false);\n entries = [];\n prevent(e);\n };\n const onDragOver = (e) => {\n const dt = e.dataTransfer;\n if (ignore(dt)) return;\n\n dt && (dt.dropEffect = 'copy');\n !isDragging() && isDragging(true);\n prevent(e);\n };\n const onDragEnter = (e) => {\n const dt = e.dataTransfer;\n if (ignore(dt)) return;\n if (entries.indexOf(e.target) === -1) {\n entries.push(e.target)\n }\n\n dt && (dt.dropEffect = 'copy');\n !isDragging() && isDragging(true);\n prevent(e);\n };\n const onDragLeave = (e) => {\n entries = entries.filter(el => el !== e.target);\n\n if (entries.length === 0)\n isDragging(false);\n\n prevent(e)\n };\n\n const inputRef = createRef()\n\n that[render] = () => {\n const {children, className, disabled, clickable, multiple, droppable, overlayLabel, accept} = props();\n\n return <div className={classNames('Dropzone', className, isDragging() && 'dragging')}\n onDragLeave={!disabled && droppable && onDragLeave || UNDEFINED}\n onDragOver={!disabled && droppable && onDragOver || UNDEFINED}\n onDragEnter={!disabled && droppable && onDragEnter || UNDEFINED}\n onDrop={!disabled && droppable && onDrop || UNDEFINED}\n >\n {overlayLabel && <div className=\"overlay\">\n <div className={'drop'}>\n {overlayLabel}\n </div>\n </div>}\n {!disabled && clickable && <input className={'file'}\n ref={inputRef}\n type=\"file\"\n accept={accept}\n multiple={!!multiple}\n onClick={() => {\n inputRef().value = '';\n }}\n onChange={onDrop}/>}\n {children}\n </div>\n }\n }\n}\n\nDropzone.defaultProps = {\n clickable: true,\n multiple: true,\n droppable: true,\n};\n\nif (window.isNotProductionEnvironment) {\n Dropzone.propTypes = {\n className: PropTypes.string,\n overlayLabel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n clickable: PropTypes.bool,\n droppable: PropTypes.bool,\n multiple: PropTypes.bool,\n disabled: PropTypes.bool,\n onDrop: PropTypes.func.isRequired,\n accept: PropTypes.string,\n };\n}\n\nexport default Dropzone;"],"names":["toArray","o","Array","l","i","length","push","prevent","e","preventDefault","stopPropagation","ignoredTypes","setOf","ignore","dt","types","Dropzone","properties","that","state","entries","props","propsGetter","isDragging","stateGS","onDrop","dataTransfer","files","target","onDragOver","dropEffect","onDragEnter","indexOf","onDragLeave","filter","el","inputRef","createRef","render","children","className","disabled","clickable","multiple","droppable","overlayLabel","accept","classNames","UNDEFINED","value","PureComponent","defaultProps","window","isNotProductionEnvironment","propTypes","PropTypes","string","oneOfType","element","bool","func","isRequired"],"mappings":"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"}
|
package/FilteredList.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FilteredList.js","sources":["../../../src/react-ui-basics/FilteredList.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './FilteredList.css'\nimport Scrollable from \"./Scrollable\";\nimport {classNames, orNoop, ref, stopPropagation, isFunction, isObject} from \"./Tools\";\nimport {PureComponent} from \"./ReactConstants\";\n\nexport const getLabel = (labels, id) => isFunction(labels) ? labels(id) : labels[id]\n\nclass FilteredList extends PureComponent {\n\n static defaultProps = {\n data: [],\n labels: {},\n selected: {},\n inline: false,\n selectSingle: true,\n filter: () => true,\n };\n\n constructor(props) {\n super(props);\n this.state = {selected: -1};\n this.hidden = {};\n this.elements = {};\n }\n\n componentDidMount() {\n orNoop(this.props.nextProvider)(this.next);\n orNoop(this.props.prevProvider)(this.prev);\n orNoop(this.props.selectedProvider)(this.selected);\n orNoop(this.props.resetProvider)(this.reset);\n\n this.updateList(this.props)\n }\n\n componentDidUpdate(prevProps, prevState, snapshot) {\n if (this.props.data === prevProps.data)\n return;\n\n this.updateList(this.props)\n }\n\n updateList = (props) => {\n const {data} = props;\n const {selected} = this.state;\n this.list = data || [];\n\n if (!this.list.includes(selected))\n this.setState({selected: -1})\n };\n\n render() {\n const {data, labels, filter, className, selected, inline, childComponent, childProps, style, scroll} = this.props;\n return (\n <Scrollable className={classNames('FilteredList', className, inline ? 'inline' : 'popup')}\n ref={ref('el', this)} style={style} scrollBarMode={scroll}>\n {(data || []).filter(id => id !== false && id != null).map(id => <ItemWrapper\n id={id}\n key={id}\n label={getLabel(labels, id)}\n childComponent={childComponent}\n childProps={childProps}\n element={el => this.elements[id] = el}\n onClick={e => {\n stopPropagation(e);\n this.onSelect(id);\n }}\n onMouseEnter={e => this.setState({selected: id})}\n onMouseLeave={e => id === this.state.selected && this.setState({selected: -1})}\n className={classNames('child', this.state.selected === id && 'active', selected === id || (isObject(selected) && selected[id]) && 'selected')}\n classProvider={it => (this.hidden[id] = !filter(it)) && 'hidden'}\n />)}\n </Scrollable>\n )\n }\n\n onSelect = (id) => {\n this.setState({selected: id});\n this.props.onSelect(id);\n };\n\n selected = () => {\n const {selected: value} = this.state;\n const {selectSingle} = this.props;\n\n\n if (value === -1 || this.hidden[value]) {\n let filtered = this.list.filter(id => !this.hidden[id]);\n if (selectSingle && filtered.length === 1)\n return filtered[0];\n\n return null;\n } else {\n return value;\n }\n };\n\n next = () => {\n const list = this.list;\n const selected = this.state.selected;\n let position = list.findIndex(id => selected === id);\n if (this.hidden[list[position]])\n position = -1;\n\n while (++position < list.length) {\n if (!this.hidden[list[position]])\n break\n }\n if (position < list.length) {\n let id = list[position];\n this.setState({selected: id});\n this.updateScroll(id)\n }\n };\n\n prev = () => {\n const list = this.list;\n const selected = this.state.selected;\n let position = list.findIndex(id => selected === id);\n if (this.hidden[list[position]])\n position = list.length;\n\n while (--position >= 0) {\n if (!this.hidden[list[position]])\n break\n }\n if (position >= 0) {\n let id = list[position];\n this.setState({selected: id});\n this.updateScroll(id)\n }\n };\n\n updateScroll = (id) => {\n let child = this.elements[id];\n let container = this.el;\n const scrollTop = container.getScroll();\n const height = container.getHeight();\n let isVisible = scrollTop <= child.offsetTop && scrollTop + height >= child.offsetTop + child.clientHeight;\n if (!isVisible) {\n let scrollToBottom = child.offsetTop + child.clientHeight - height;\n let scrollToTop = child.offsetTop;\n if (Math.abs(scrollTop - scrollToTop) < Math.abs(scrollTop - scrollToBottom)) {\n container.setScroll(scrollToTop)\n } else {\n container.setScroll(scrollToBottom)\n }\n }\n };\n\n reset = () => {\n this.setState({selected: -1});\n this.el.scrollTop = 0;\n };\n\n scrollTo = (id) => this.el.setScroll(this.elements[id] && this.elements[id].offsetTop);\n}\n\nexport default FilteredList;\n\nclass ItemWrapper extends React.Component {\n render() {\n const {id, label, onClick, onMouseDown, onMouseEnter, onMouseLeave, classProvider, className, childComponent, childProps} = this.props;\n const child = React.createElement(childComponent, {\n ...childProps,\n id,\n label,\n dataConsumer: (data) => this.data = data,\n });\n\n const cssClass = orNoop(classProvider)(this.data);\n return (\n <div className={classNames('ItemWrapper', cssClass, className)}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onMouseDown={onMouseDown}\n onClick={onClick}\n ref={ref('el', this)}\n >\n {child}\n </div>\n )\n }\n\n componentDidMount() {\n orNoop(this.props.element)(this.el);\n this.forceUpdate();\n }\n}\n"],"names":["getLabel","labels","id","isFunction","FilteredList","props","updateList","data","selected","state","list","includes","setState","onSelect","value","selectSingle","hidden","filtered","filter","length","next","position","findIndex","updateScroll","prev","child","elements","container","el","scrollTop","getScroll","height","getHeight","isVisible","offsetTop","clientHeight","scrollToBottom","scrollToTop","Math","abs","setScroll","reset","scrollTo","orNoop","nextProvider","prevProvider","selectedProvider","resetProvider","prevProps","prevState","snapshot","className","inline","childComponent","childProps","style","scroll","classNames","ref","map","e","stopPropagation","isObject","it","PureComponent","defaultProps","ItemWrapper","label","onClick","onMouseDown","onMouseEnter","onMouseLeave","classProvider","React","createElement","dataConsumer","cssClass","element","forceUpdate","Component"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingActionButton.js","sources":["../../../src/react-ui-basics/FloatingActionButton.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport PropTypes from 'prop-types';\nimport './FloatingActionButton.css'\nimport Button from \"./Button\";\nimport {classNames} from \"./Tools\";\nimport MaterialIcon from \"./MaterialIcon\";\n\nconst FloatingActionButton = ({icon, onClick, mini, className, hidden}) => {\n return <Button onClick={onClick} round={true} className={classNames(\"FloatingActionButton\", className, mini && 'mini', hidden && 'hidden')}>\n <MaterialIcon icon={icon}/>\n </Button>;\n};\n\nif (window.isNotProductionEnvironment) {\n FloatingActionButton.propTypes = {\n icon: MaterialIcon.propTypes.icon,\n mini: PropTypes.bool,\n hidden: PropTypes.bool,\n };\n}\n\nFloatingActionButton.defaultProps = {\n icon: 'add',\n mini: false,\n hidden: false,\n};\n\nexport default FloatingActionButton;"],"names":["FloatingActionButton","icon","onClick","mini","className","hidden","classNames","window","isNotProductionEnvironment","propTypes","MaterialIcon","PropTypes","bool","defaultProps"],"mappings":";;;;;;;AAQA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAA8C,IAAA,EAAA;AAAA,EAA5CC,IAAAA,IAA4C,QAA5CA,IAA4C;AAAA,MAAtCC,OAAsC,QAAtCA,OAAsC;AAAA,MAA7BC,IAA6B,QAA7BA,IAA6B;AAAA,MAAvBC,SAAuB,QAAvBA,SAAuB;AAAA,MAAZC,MAAY,QAAZA,MAAY,CAAA;AACvE,EAAA,OAAO,mBAAC,MAAD,EAAA;AAAQ,IAAA,OAAO,EAAEH,OAAjB;AAA0B,IAAA,KAAK,EAAE,IAAjC;AAAuC,IAAA,SAAS,EAAEI,UAAU,CAAC,sBAAD,EAAyBF,SAAzB,EAAoCD,IAAI,IAAI,MAA5C,EAAoDE,MAAM,IAAI,QAA9D,CAAA;AAA5D,GAAA,EACH,mBAAC,YAAD,EAAA;AAAc,IAAA,IAAI,EAAEJ,IAAAA;AAApB,GAAA,CADG,CAAP,CAAA;AAGH,CAJD,CAAA;AAMA,IAAIM,MAAM,CAACC,0BAAX,EAAuC;AACnCR,EAAAA,oBAAoB,CAACS,SAArB,GAAiC;AAC7BR,IAAAA,IAAI,EAAES,YAAY,CAACD,SAAb,CAAuBR,IADA;AAE7BE,IAAAA,IAAI,EAAEQ,SAAS,CAACC,IAFa;AAG7BP,IAAAA,MAAM,EAAEM,SAAS,CAACC,IAAAA;AAHW,GAAjC,CAAA;AAKH,CAAA;AAEDZ,oBAAoB,CAACa,YAArB,GAAoC;AAChCZ,EAAAA,IAAI,EAAE,KAD0B;AAEhCE,EAAAA,IAAI,EAAE,KAF0B;AAGhCE,EAAAA,MAAM,EAAE,KAAA;AAHwB,CAApC,CAAA;AAMA,6BAAeL,oBAAf;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FormUploadProgress.js","sources":["../../../src/react-ui-basics/FormUploadProgress.js"],"sourcesContent":["import React from 'react';\nimport ReactCreateElement from './ReactCreateElement';\nimport './FormUploadProgress.css'\nimport Button from \"./Button\";\nimport Animated from \"./Animated\";\nimport CircleProgress from \"./CircleProgress\";\nimport SpinningProgress from \"./SpinningProgress\";\nimport {formatAbbreviation, formatNumberWithMaxLength} from \"./Size\";\nimport PropTypes from \"prop-types\";\nimport {preventDefault} from \"./Tools\";\n\n\nconst defaultValueFormat = (value, loaded, total) => {\n if (total == null)\n return Math.floor(Number.isFinite(value) ? value : 0) + '%';\n\n const abbreviation = formatAbbreviation(total);\n return <>\n {formatNumberWithMaxLength(loaded, 1, abbreviation, 4)}\n /\n {formatNumberWithMaxLength(total, 1, abbreviation, 4)}\n <br/>\n {abbreviation}\n </>\n};\n\nconst FormUploadProgress = ({\n value,\n cancel,\n loaded,\n total,\n formatValue,\n processingLabel,\n cancelLabel,\n }) => {\n return (\n <Animated value={total > 0}>\n <div className=\"FormUploadProgress\">\n <div className=\"wrapper\">\n <div className=\"progress\">\n {loaded === total && <SpinningProgress/>}\n {loaded !== total && <CircleProgress value={value}/>}\n <div className={'value'}>{formatValue(value, loaded, total)}</div>\n </div>\n {cancel && <Button className={\"cancel\"} disabled={loaded === total} onClick={e => {\n preventDefault(e);\n cancel();\n }}>\n {loaded === total && processingLabel}\n {loaded !== total && cancelLabel}\n </Button>}\n </div>\n </div>\n </Animated>\n );\n};\n\nFormUploadProgress.defaultProps = {\n value: 0,\n formatValue: defaultValueFormat,\n};\n\nif (window.isNotProductionEnvironment) {\n FormUploadProgress.propTypes = {\n value: PropTypes.number,\n loaded: PropTypes.number,\n total: PropTypes.number,\n formatValue: PropTypes.func,\n processingLabel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n cancelLabel: PropTypes.oneOfType([\n PropTypes.string,\n PropTypes.element\n ]),\n cancel: PropTypes.func,\n };\n}\n\nexport default FormUploadProgress;\n"],"names":["defaultValueFormat","value","loaded","total","Math","floor","Number","isFinite","abbreviation","formatAbbreviation","formatNumberWithMaxLength","FormUploadProgress","cancel","formatValue","processingLabel","cancelLabel","e","preventDefault","defaultProps","window","isNotProductionEnvironment","propTypes","PropTypes","number","func","oneOfType","string","element"],"mappings":"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"}
|
package/ImageGallery.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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 // console.log('before action', action, that.state)\n const state = IMAGE_GALLERY_REDUCER(that.state, action);\n // console.log('after action', action, state)\n if (state !== that.state)\n that.setState(state)\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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"}
|