{"version":3,"file":"js/4194-c5b23a63541ff3b7eff8.js","mappings":"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","sources":["webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/advanced/date-range-picker.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/advanced/date-time-picker.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/advanced/tutorial-video.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/basic/click-target.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/styles/basic/dropdown-menu.module.scss?d164","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/basic/dropdown-menu.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/basic/pagination.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/basic/rolldown.jsx","webpack://AYTM/./app/_stock/webpack/lib/rfd-ui/components/basic/video-popup.jsx"],"sourcesContent":["import React from 'react'\nimport PropTypes from 'prop-types'\nimport autobind from 'autobind-decorator'\nimport { List, Map, fromJS } from 'immutable'\nimport { DateRange } from 'react-date-range'\nimport moment from 'moment'\nimport { stopEvent } from '@aytm/lib/common/func'\nimport { PureDataComponent } from '@aytm/lib/common/components/pure-component'\nimport Label from '@aytm/lib/rfd-ui/components/basic/label'\n\nimport '@aytm/lib/rfd-ui/styles/advanced/date-range-picker.scss'\n\nconst THEME = {\n DateRange: {\n background: '#ffffff',\n fontSize: '16px',\n width: '563px'\n },\n Calendar: {\n background: '#ffffff',\n color: '#555555',\n fontSize: '16px',\n padding: '9px',\n width: '281px'\n },\n Day: {\n fontSize: '16px',\n transition: 'transform .1s ease, box-shadow .1s ease, background .1s ease'\n },\n DayInRange: {\n background: '#E6E7E8',\n color: '#555555',\n fontSize: '16px'\n },\n DaySelected: {\n background: '#29ABE2',\n fontSize: '16px'\n },\n DayHover: {\n background: '#555555',\n color: '#ffffff',\n fontSize: '16px'\n },\n Weekday: {\n background: '#ffffff',\n fontSize: '16px',\n color: '#4D4D4D'\n },\n MonthAndYear: {\n background: '#ffffff',\n fontSize: '16px',\n color: '#4D4D4D'\n },\n MonthArrowPrev: {\n borderRightColor: '#4D4D4D'\n },\n MonthArrowNext: {\n borderLeftColor: '#4D4D4D'\n },\n MonthButton: {\n background: '#FFFFFF'\n }\n}\n\nexport function refreshDates(index) {\n const dates = fromJS([\n {\n text: 'TODAY',\n from: moment(),\n to: moment(),\n index: 0\n },\n {\n text: 'THIS MONTH',\n from: moment().startOf('month'),\n to: moment(),\n index: 1\n },\n {\n text: 'PREVIOUS MONTH',\n from: moment().subtract(1, 'months').startOf('month'),\n to: moment().subtract(1, 'months').endOf('month'),\n index: 2\n },\n {\n text: 'LAST 3 MONTHS',\n from: moment().subtract(3, 'months').endOf('month'),\n to: moment(),\n index: 3\n },\n {\n text: 'THIS YEAR',\n from: moment().startOf('year'),\n to: moment(),\n index: 4\n },\n {\n text: 'LAST YEAR',\n from: moment().subtract(1, 'years').startOf('year'),\n to: moment().subtract(1, 'years').endOf('year'),\n index: 5\n }\n ])\n\n if (index && index >= 0) return dates.get(index)\n return dates\n}\n\nexport default class DateRangePicker extends PureDataComponent {\n static propTypes = {\n detached: PropTypes.bool.isRequired,\n placeholder: PropTypes.string,\n buttons: PropTypes.oneOfType([PropTypes.instanceOf(List), PropTypes.array]),\n from: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n to: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n detachedWidth: PropTypes.number,\n empty: PropTypes.bool,\n left: PropTypes.bool,\n hideOnChange: PropTypes.bool,\n applyOnHide: PropTypes.bool,\n onChange: PropTypes.func,\n onApply: PropTypes.func,\n className: PropTypes.string\n }\n\n constructor(props) {\n super(props)\n\n this.buttons = props.buttons ? (List.isList(props.buttons) ? props.buttons : fromJS(props.buttons)) : refreshDates()\n\n this.picker = null\n this.rangeSet = false\n this.style = null\n this.link = null\n\n this.listener = event => {\n if ((!this.link || !this.link.contains(event.target)) && (!this.picker || !this.picker.contains(event.target))) {\n this.hidePicker()\n }\n }\n\n this.state = {\n shown: false,\n from: props.from ? ('object' == typeof props.from ? props.from : moment(props.from)) : moment(),\n to: props.to ? ('object' == typeof props.to ? props.to : moment(props.to)) : moment(),\n detachedValue: props.placeholder\n }\n }\n\n componentDidMount() {\n super.componentDidMount()\n // if (this.link) {\n // const el = this.link.querySelectorAll(':first-child')[0]\n // this.style = {\n // left:\n // this.link.offsetLeft - this.link.scrollLeft + (this.props.left ? el.getBoundingClientRect().width - 742 : 0),\n // top: this.link.offsetTop - this.link.scrollTop,\n // marginTop: el.getBoundingClientRect().height\n // }\n // }\n }\n\n @autobind\n showPicker() {\n if (this.link) {\n const el = this.link.querySelectorAll(':first-child')[0]\n this.style = {\n left:\n this.link.offsetLeft - this.link.scrollLeft + (this.props.left ? el.getBoundingClientRect().width - 742 : 0),\n top: this.link.offsetTop - this.link.scrollTop,\n marginTop: el.getBoundingClientRect().height\n }\n }\n document.addEventListener('click', this.listener)\n this.setState({ shown: true })\n }\n\n @autobind\n clearState() {\n this.setState({\n shown: false,\n from: this.props.from\n ? 'object' == typeof this.props.from\n ? this.props.from\n : moment(this.props.from)\n : moment(),\n to: this.props.to ? ('object' == typeof this.props.to ? this.props.to : moment(this.props.to)) : moment(),\n detachedValue: this.props.placeholder\n })\n }\n\n @autobind\n hidePicker() {\n this.setState({ shown: false })\n\n this.props.applyOnHide &&\n this.props.onChange &&\n 'function' == typeof this.props.onChange &&\n this.props.onChange(\n Map({\n from: this.state.from,\n to: this.state.to,\n text: this.state.detachedValue\n })\n )\n\n document.removeEventListener('click', this.listener)\n }\n\n @autobind\n onChange(range) {\n range.startDate != range.endDate && this.props.hideOnChange && this.hidePicker()\n\n !this.props.applyOnHide &&\n this.props.onChange &&\n 'function' == typeof this.props.onChange &&\n this.props.onChange(\n Map({\n from: this.state.from,\n to: this.state.to,\n text: this.state.detachedValue\n })\n )\n\n this.setState({\n from: range.startDate,\n to: range.endDate\n })\n\n this.props.detached &&\n !this.rangeSet &&\n this.setState({\n detachedValue: `${range.startDate.format('MMM DD, YYYY')} - ${range.endDate.format('MMM DD, YYYY')}`\n })\n this.rangeSet = false\n }\n\n @autobind\n onApply(button) {\n const applyMap = Map.isMap(button)\n ? button\n : Map({\n from: this.state.from,\n to: this.state.to,\n text: this.state.detachedValue\n })\n\n !this.props.applyOnHide &&\n this.props.onApply &&\n 'function' == typeof this.props.onApply &&\n this.props.onApply(applyMap)\n\n this.hidePicker()\n this.setState({ detachedValue: this.props.placeholder })\n }\n\n @autobind\n setRange(event) {\n stopEvent(event)\n\n const optionIndex = event.target ? event.target.dataset.index : null\n this.buttons = refreshDates()\n const button = this.buttons.get(optionIndex) ? this.buttons.get(optionIndex) : null\n\n this.setState({\n from: button.get('from'),\n to: button.get('to')\n })\n\n this.rangeSet = true\n this.props.detached && this.setState({ detachedValue: button.get('text').toUpperCase() })\n\n !this.props.applyOnHide &&\n this.props.onApply &&\n 'function' == typeof this.props.onApply &&\n this.props.onApply(button)\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.mounted && nextProps.empty && this.clearState()\n }\n\n renderPicker() {\n const { shown, from, to } = this.state\n const { onApply, className = '' } = this.props\n\n return (\n
\n {shown && (\n {\n this.picker = el\n }}\n style={this.style}\n >\n \n
\n {(() =>\n this.buttons.map((o, oi) => (\n \n )))()}\n
\n \n {onApply && (\n \n APPLY\n \n )}\n
\n )}\n \n )\n }\n\n renderAttached() {\n return (\n
\n {\n this.link = div\n }}\n onClick={this.showPicker}\n >\n {this.props.children}\n
\n {this.renderPicker()}\n \n )\n }\n\n renderDetached() {\n return (\n
\n {\n this.link = div\n }}\n onClick={this.showPicker}\n >\n \n
\n {this.renderPicker()}\n \n )\n }\n\n render() {\n return (\n
\n {this.props.detached ? this.renderDetached() : this.renderAttached()}\n
\n )\n }\n}\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport { Map } from 'immutable'\nimport { Calendar } from 'react-date-range'\nimport moment from 'moment'\nimport classNames from 'classnames'\nimport { PureDataComponent } from '@aytm/lib/common/components/pure-component'\nimport Label from '@aytm/lib/rfd-ui/components/basic/label'\nimport TextField from '@aytm/lib/rfd-ui/components/basic/text-field'\nimport autobind from 'autobind-decorator'\n\nimport '@aytm/lib/rfd-ui/styles/advanced/date-time-picker.scss'\n\nconst formatCharacters = {\n 0: {\n validate: c => /\\d/.test(c),\n transform: c => (parseInt(c, 10) > 1 ? `0` : c)\n }\n}\n\nexport default class DateTimePicker extends PureDataComponent {\n static propTypes = {\n placeholder: PropTypes.string,\n timeZone: PropTypes.instanceOf(Map),\n minDate: PropTypes.number,\n maxDate: PropTypes.number,\n detached: PropTypes.bool.isRequired,\n empty: PropTypes.bool,\n disabled: PropTypes.bool,\n onChange: PropTypes.func\n }\n\n constructor(props) {\n super(props)\n\n this.picker = null\n this.style = null\n this.link = null\n this.mounted = false\n this.listener = function (event) {\n if ((!this.link || !this.link.contains(event.target)) && (!this.picker || !this.picker.contains(event.target))) {\n this.hidePicker()\n }\n }.bind(this)\n\n const date = props.date ? moment(props.date) : moment()\n this.state = {\n shown: false,\n date: (date.isValid() ? date : moment()).utcOffset(props.timeZone.get('offset') || moment().utcOffset()),\n detachedValue: props.placeholder\n }\n }\n\n @autobind\n showPicker() {\n if (this.state.disabled) return\n\n this.setState({ shown: true })\n\n document.addEventListener('click', this.listener)\n }\n\n @autobind\n hidePicker() {\n document.removeEventListener('click', this.listener)\n\n this.setState({ shown: false })\n }\n\n @autobind\n onTimeBlur(event) {\n const value =\n this.refHoursInput && this.refHoursInput.refInput ? this.refHoursInput.refInput.value : event.target.value\n if (value) {\n this.onTimeChange(value.replace(/_/gi, '0'))\n }\n }\n\n @autobind\n onTimeChange(t) {\n if (!t.length || t.replace(/_/gi, '').length < 5) return\n\n const { date: currentDate } = this.state\n\n const meridiem = currentDate.format('A')\n\n const hours = Math.min(parseInt(t.split(':')[0], 10) || 0, 12) + ('AM' == meridiem ? 0 : 12)\n const minutes = Math.min(parseInt(t.split(':')[1], 10) || 0, 59)\n\n const newDate = moment(currentDate).set({\n hour: hours % 24,\n minute: minutes % 60\n })\n\n this.change(newDate)\n }\n\n @autobind\n onMeridiemClick() {\n const { date: currentDate } = this.state\n\n const hours = currentDate.get('hour') + (currentDate.get('hour') > 12 ? -1 : 1) * 12\n\n const newDate = moment(currentDate).set({ hour: hours % 24 })\n\n this.change(newDate)\n }\n\n @autobind\n onCalendarChange(date) {\n const { date: currentDate } = this.state\n\n const newDate = moment(currentDate).set({\n year: date.get('year'),\n month: date.get('month'),\n date: date.get('date')\n })\n\n this.change(newDate)\n }\n\n @autobind\n change(date) {\n const newDate = moment\n .max(moment(this.props.minDate), date)\n .utcOffset(this.props.timeZone.get('offset') || moment().utcOffset())\n\n if (newDate.isValid()) {\n const text = `${newDate.format('dddd, MMMM D, YYYY HH:mm A')} ${this.props.timeZone.get('name')}`\n this.props.onChange &&\n 'function' == typeof this.props.onChange &&\n this.props.onChange(\n Map({\n date: moment(newDate),\n text: text\n })\n )\n this.setState({ date: newDate })\n this.props.detached && this.setState({ detachedValue: newDate.text })\n }\n }\n\n @autobind\n clearState() {\n const date = this.props.date ? moment(this.props.date) : moment()\n this.setState({\n shown: false,\n date: (date.isValid() ? date : moment()).utcOffset(this.props.timeZone.get('offset') || moment().utcOffset()),\n detachedValue: this.props.placeholder\n })\n }\n\n componentDidMount() {\n const el = this.link.querySelectorAll(':first-child')[0]\n this.style = {\n left:\n this.link.offsetLeft - this.link.scrollLeft + (this.props.left ? el.getBoundingClientRect().width - 742 : 0),\n top: this.link.offsetTop - this.link.scrollTop,\n marginTop: el.getBoundingClientRect().height\n }\n if (!this.props.date.isSame(this.state.date)) {\n this.props.onChange &&\n 'function' == typeof this.props.onChange &&\n this.props.onChange(\n Map({\n date: moment(this.state.date),\n text: `${this.state.date.format('dddd, MMMM D, YYYY HH:mm A')} ${this.props.timeZone.get('name')}`\n })\n )\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n this.mounted && nextProps.empty && this.clearState()\n this.mounted && nextProps.disabled && this.state.shown && this.hidePicker()\n }\n\n @autobind\n renderPicker() {\n const { timeZone, minDate, maxDate } = this.props\n const { shown, date } = this.state\n const utcOffset = timeZone.get('offset') || moment().utcOffset()\n\n return (\n
\n {shown && (\n {\n this.picker = el\n }}\n style={this.style}\n >\n
\n
time:
\n
\n \n
\n
\n {date.format('A')}\n
\n
\n \n
\n )}\n \n )\n }\n\n @autobind\n renderAttached() {\n return (\n
\n {\n this.link = div\n }}\n onClick={this.showPicker}\n >\n {this.props.children}\n
\n {this.renderPicker()}\n \n )\n }\n\n @autobind\n renderDetached() {\n return (\n
\n {\n this.link = div\n }}\n onClick={this.showPicker}\n >\n \n
\n {this.renderPicker()}\n \n )\n }\n\n render() {\n return (\n \n {this.props.detached ? this.renderDetached() : this.renderAttached()}\n \n )\n }\n}\n","// lib\nimport React from 'react'\nimport { List } from 'immutable'\nimport PropTypes from 'prop-types'\nimport autobind from 'autobind-decorator'\n\n// components\nimport VideoPopup from '@aytm/lib/rfd-ui/components/basic/video-popup'\nimport { PureDataComponent } from '@aytm/lib/common/components/pure-component'\n\n// styles\nimport '@aytm/lib/rfd-ui/styles/advanced/tutorial-video.scss'\nimport classNames from 'classnames'\n\n// \nexport default class TutorialVideo extends PureDataComponent {\n static propTypes = {\n videos: PropTypes.instanceOf(List).isRequired,\n videoId: PropTypes.string,\n className: PropTypes.string,\n videoStartTime: PropTypes.number\n }\n\n constructor(props) {\n super(props)\n this.state = {\n popup: false\n }\n }\n\n @autobind\n openPopup() {\n this.setState({\n popup: true\n })\n }\n\n @autobind\n closePopup() {\n this.setState({\n popup: false\n })\n }\n\n render() {\n const { popup } = this.state\n const { videos, videoStartTime, videoId, className } = this.props\n return (\n
\n \n \n
\n )\n }\n}\n","import React, { useEffect, useState, useRef, useCallback } from 'react'\nimport PropTypes from 'prop-types'\nimport useMountedRef from '@aytm/lib/hooks/useMountedRef'\n\n// styles\nimport '@aytm/lib/rfd-ui/styles/basic/click-target.scss'\n\nClickTarget.propTypes = {\n clicked: PropTypes.bool,\n resetOnClickOutside: PropTypes.bool,\n className: PropTypes.string,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n children: PropTypes.any,\n onOpenChange: PropTypes.func\n}\nexport default function ClickTarget(props) {\n const {\n className,\n children,\n clicked: propsClicked = false,\n resetOnClickOutside = true,\n onFocus,\n onBlur,\n onOpenChange,\n ...restProps\n } = props\n\n const rootElement = useRef(null)\n const oldClickedState = useRef(null)\n const [clicked, setClicked] = useState(propsClicked)\n const mountedRef = useMountedRef()\n\n // sync props to state\n useEffect(() => {\n setClicked(propsClicked)\n }, [propsClicked])\n\n useEffect(() => {\n if (onOpenChange && oldClickedState.current !== clicked) {\n onOpenChange(clicked)\n oldClickedState.current = clicked\n }\n }, [clicked, onOpenChange])\n\n // focus\n const onFocusRef = useRef()\n onFocusRef.current = onFocus\n const onBlurRef = useRef()\n onBlurRef.current = onBlur\n const updateClicked = useCallback(\n newState => {\n if (mountedRef.current && newState !== clicked) {\n setClicked(newState)\n if (newState && onFocusRef.current) {\n onFocusRef.current()\n } else if (!newState && onBlurRef.current) {\n onBlurRef.current()\n }\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [clicked]\n )\n const updateClickedRef = useRef()\n updateClickedRef.current = updateClicked\n\n // click outside\n useEffect(() => {\n if (resetOnClickOutside && clicked) {\n const clickOutside = event => {\n if (null == rootElement.current || null == event.target || !rootElement.current.contains(event.target)) {\n updateClickedRef.current(false)\n }\n }\n document.addEventListener('touchend', clickOutside, true)\n document.addEventListener('mousedown', clickOutside, true)\n return () => {\n document.removeEventListener('touchend', clickOutside, true)\n document.removeEventListener('mousedown', clickOutside, true)\n }\n } else {\n return void 0\n }\n }, [clicked, resetOnClickOutside])\n\n return (\n void (!clicked && updateClicked(true))}\n ref={rootElement}\n >\n {children(clicked, updateClicked)}\n \n )\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"component\":\"dropdown-menu-module__component___3HdFQ\",\"menu\":\"dropdown-menu-module__menu___lAVAh\",\"menuHeader\":\"dropdown-menu-module__menuHeader___2l2cJ\",\"menuFooter\":\"dropdown-menu-module__menuFooter___rC8S-\",\"hr\":\"dropdown-menu-module__hr___1E7Xe\",\"list\":\"dropdown-menu-module__list___1BgXo\",\"item\":\"dropdown-menu-module__item___38qbe\",\"itemIcon\":\"dropdown-menu-module__itemIcon___Rtaku\",\"itemText\":\"dropdown-menu-module__itemText___1NiLO\",\"itemOpened\":\"dropdown-menu-module__itemOpened___3804O\",\"panel\":\"dropdown-menu-module__panel___1zyZC\"};","import React, { useState, useMemo, useEffect } from 'react'\nimport { List } from 'immutable'\nimport PropTypes from 'prop-types'\nimport useMultiRef from '@aytm/lib/hooks/useMultiRef'\nimport useMountedRef from '@aytm/lib/hooks/useMountedRef'\n\nimport ClickTarget from '@aytm/lib/rfd-ui/components/basic/click-target.jsx'\nimport RollDown from '@aytm/lib/rfd-ui/components/basic/rolldown'\n\nimport style from '@aytm/lib/rfd-ui/styles/basic/dropdown-menu.module.scss'\n\n/* DropdownMenu */\n\nDropdownMenu.propTypes = {\n header: PropTypes.func,\n footer: PropTypes.func,\n items: PropTypes.oneOfType([PropTypes.instanceOf(List), PropTypes.func]).isRequired,\n className: PropTypes.string,\n openedPanelID: PropTypes.string,\n defaultPanel: PropTypes.func,\n containerExpander: PropTypes.object\n}\nfunction DropdownMenuPropsEqual(prevProps, nextProps) {\n return (\n prevProps.items === nextProps.items &&\n prevProps.header === nextProps.header &&\n prevProps.className === nextProps.className &&\n prevProps.openedPanelID === nextProps.openedPanelID\n )\n}\nfunction DropdownMenu({\n header,\n footer,\n items: itemsSource,\n className = '',\n openedPanelID,\n defaultPanel,\n containerExpander\n} = {}) {\n const [openedPanelIndex, setOpenedPanelIndex] = useState()\n const items = 'function' === typeof itemsSource ? itemsSource() : itemsSource\n\n const [refRootNode, refLastItems, refCurrentItems, refContainerExpander, refLastOpenedPanelIndex] = useMultiRef(\n null,\n items,\n items,\n containerExpander,\n openedPanelIndex\n )\n refCurrentItems.current = items\n refContainerExpander.current = containerExpander\n\n // if items changed and panel is opened - open the panel with the same id\n useEffect(() => {\n if (refLastItems.current !== items) {\n if (null != refLastItems.current && null != items && null != openedPanelIndex) {\n // find new opened panel by ID\n const lastOpenedItem = refLastItems.current.get(openedPanelIndex)\n if (lastOpenedItem && lastOpenedItem.has('id')) {\n const lastOpenedItemID = lastOpenedItem.get('id')\n const currentOpenedItemIndex = items.findIndex(item => item.get('id') === lastOpenedItemID)\n const currentOpenedItem = items.get(currentOpenedItemIndex)\n if (currentOpenedItem && currentOpenedItem.has('panel')) {\n setOpenedPanelIndex(currentOpenedItemIndex)\n }\n }\n }\n refLastItems.current = items\n }\n }, [items, openedPanelIndex, refLastItems])\n\n const openedPanelItem = null == openedPanelIndex ? null : items.get(openedPanelIndex)\n const openedPanel = useMemo(() => {\n if (null == openedPanelItem) {\n return defaultPanel ? defaultPanel() : null\n } else {\n const panel = openedPanelItem.get('panel')\n return 'function' === typeof panel ? panel() : null\n }\n }, [openedPanelItem, defaultPanel])\n\n useEffect(() => {\n const openedItemIndex =\n null != openedPanelID\n ? refCurrentItems.current.findIndex(item => item.get('id') === openedPanelID && item.has('panel'))\n : -1\n if (openedItemIndex >= 0) setOpenedPanelIndex(openedItemIndex)\n }, [openedPanelID, refCurrentItems])\n\n useEffect(() => {\n if (\n null != refContainerExpander.current &&\n refLastOpenedPanelIndex.current !== openedPanelIndex &&\n null != refRootNode.current\n ) {\n refContainerExpander.current.expand(refRootNode.current)\n }\n refLastOpenedPanelIndex.current = openedPanelIndex\n }, [openedPanelIndex, refContainerExpander, refRootNode, refLastOpenedPanelIndex])\n\n const headerContent = 'function' === typeof header ? header(items) : null\n const footerContent = 'function' === typeof footer ? footer(items) : null\n\n return (\n
\n {openedPanel &&
{openedPanel}
}\n
\n {null != headerContent && (\n <>\n
\n {headerContent}\n
\n
\n \n )}\n {items && (\n
\n {items.toArray().map((item, index) => {\n const icon = item.get('icon')\n const iconSize = item.get('iconSize')\n const textSource = item.get('text')\n const text = 'function' === typeof textSource ? textSource() : textSource\n const iconStyle =\n icon && iconSize\n ? {\n fontSize: iconSize,\n width: iconSize,\n height: iconSize,\n lineHeight: `${iconSize}px`,\n top: (16 - iconSize) / 2,\n left: (22 - iconSize) / 2\n }\n : null\n const onSelectItem = () => {\n if (item.has('panel')) {\n setOpenedPanelIndex(index === openedPanelIndex ? null : index)\n } else {\n setOpenedPanelIndex(null)\n const onSelect = item.get('onSelect')\n if ('function' === typeof onSelect) {\n onSelect(item, index)\n }\n }\n }\n return (\n {\n if (' ' === event.key) {\n onSelectItem()\n void (event.preventDefault && event.preventDefault())\n } else if ('Enter' === event.key) {\n onSelectItem()\n }\n }}\n key={index}\n >\n {icon && (\n \n \n \n )}\n {text}\n \n )\n })}\n
\n )}\n {null != footerContent && (\n
{footerContent}
\n )}\n
\n
\n )\n}\n\n/* DropdownMenuButton */\n\nDropdownMenuButton.propTypes = {\n children: PropTypes.arrayOf(PropTypes.func.isRequired).isRequired,\n className: PropTypes.string,\n rollDown: PropTypes.number,\n onOpen: PropTypes.func,\n onClose: PropTypes.func,\n openMenuRef: PropTypes.shape({ current: PropTypes.any }),\n defaultOpenedPanelID: PropTypes.string,\n containerExpander: PropTypes.object,\n onOpenChange: PropTypes.func\n}\nfunction DropdownMenuButton({\n children,\n className,\n rollDown = 0,\n onOpen,\n onClose,\n openMenuRef,\n defaultOpenedPanelID,\n containerExpander,\n onOpenChange\n} = {}) {\n const [openedPanelID, setOpenedPanelID] = useState(defaultOpenedPanelID)\n const mountedRef = useMountedRef()\n return (\n void (null != openedPanelID && mountedRef.current && setOpenedPanelID(), onClose && onClose())}\n onOpenChange={onOpenChange}\n >\n {(opened, setOpened) => {\n const close = () => void (mountedRef.current && setOpened(false))\n if (openMenuRef) {\n openMenuRef.current = openPanelID => {\n if (openedPanelID !== openPanelID) {\n void (mountedRef.current && setOpenedPanelID(openPanelID))\n }\n if (openPanelID && !opened) {\n void (mountedRef.current && setOpened(true))\n }\n }\n }\n return [\n children[0] ? children[0](opened, setOpened) : null,\n children[1] ? (\n \n {transitionState => children[1](close, openedPanelID, transitionState)}\n \n ) : null\n ]\n }}\n \n )\n}\n\n/* exports */\n\nexport { DropdownMenu, DropdownMenuButton }\n\nexport default React.memo(DropdownMenu, DropdownMenuPropsEqual)\n","import React, { useCallback, useState, useRef } from 'react'\nimport PropTypes from 'prop-types'\n\nimport '@aytm/lib/rfd-ui/styles/basic/pagination.scss'\n\nPagination.propTypes = {\n page: PropTypes.number.isRequired,\n total: PropTypes.number.isRequired,\n prefix: PropTypes.string,\n separator: PropTypes.string,\n disabled: PropTypes.bool,\n onPageChange: PropTypes.func.isRequired\n}\nexport default function Pagination({ page, total, prefix = '', separator = ' of ', disabled, onPageChange } = {}) {\n const onPrev = useCallback(() => {\n if (onPageChange) {\n onPageChange(page - 1)\n }\n }, [page, onPageChange])\n\n const onNext = useCallback(() => {\n if (onPageChange) {\n onPageChange(page + 1)\n }\n }, [page, onPageChange])\n\n const counterElementRef = useRef(null)\n const manualInputElementRef = useRef(null)\n const [manualInput, setManualInput] = useState(false)\n const [manualInputWidth, setManualInputWidth] = useState(null)\n const enableManualInput = useCallback(() => {\n if (counterElementRef.current) {\n const counterElementWidth = counterElementRef.current.getBoundingClientRect().width\n if (counterElementWidth !== manualInputWidth) {\n setManualInputWidth(counterElementWidth)\n }\n }\n setManualInput(true)\n }, [manualInputWidth])\n const onManualInputBlur = useCallback(() => {\n if (manualInputElementRef.current) {\n const manualInputValue = Math.min(total, Math.max(1, parseInt(manualInputElementRef.current.value, 10) || 0))\n if (page !== manualInputValue && onPageChange) {\n onPageChange(manualInputValue)\n }\n setManualInput(false)\n }\n }, [page, total, onPageChange])\n const onManualInputKeyPress = useCallback(\n event => {\n if ('Enter' === event.key) {\n onManualInputBlur()\n }\n },\n [onManualInputBlur]\n )\n\n const prevDisabled = disabled || 1 >= page\n const nextDisabled = disabled || total <= page\n\n return (\n
\n \n {manualInput ? (\n \n ) : (\n {` ${prefix}${page}${separator}${total} `}\n )}\n \n
\n )\n}\n","import React, { useEffect, useRef } from 'react'\nimport PropTypes from 'prop-types'\nimport { Transition } from 'react-transition-group'\nimport useMultiRef from '@aytm/lib/hooks/useMultiRef'\n\nconst ENTER_TRANSITION = {}\nconst EXIT_TRANSITION = {}\n\nRollDown.propTypes = {\n duration: PropTypes.number.isRequired,\n opened: PropTypes.bool.isRequired,\n children: PropTypes.func.isRequired,\n containerExpander: PropTypes.object\n}\nexport default function RollDown({ children, opened, duration = 0, containerExpander } = {}) {\n const [savedStyles, fullHeight, transitionStarted, transitionTimeout] = useMultiRef({}, null, null, null)\n\n const nodeRef = useRef()\n useEffect(\n () => () => {\n if (containerExpander && containerExpander.expanded && nodeRef.current) {\n containerExpander.unexpand(nodeRef.current)\n }\n },\n [containerExpander]\n )\n\n const stopTransition = (node, transitionType) => {\n node.style.height = null != savedStyles.current.height ? savedStyles.current.height : ''\n delete savedStyles.current.height\n node.style.overflowY = null != savedStyles.current.overflowY ? savedStyles.current.overflowY : ''\n delete savedStyles.current.overflowY\n node.style.transition = null != savedStyles.current.transition ? savedStyles.current.transition : ''\n delete savedStyles.current.transition\n fullHeight.current = null\n transitionStarted.current = null\n if (containerExpander) {\n switch (transitionType) {\n case ENTER_TRANSITION: {\n nodeRef.current = node\n containerExpander.expand(node)\n break\n }\n case EXIT_TRANSITION: {\n nodeRef.current = null\n containerExpander.unexpand(node)\n break\n }\n default: {\n //\n }\n }\n }\n }\n\n const startTransition = (node, transitionType) => {\n if (transitionStarted.current !== transitionType) {\n if (transitionTimeout.current) {\n clearTimeout(transitionTimeout.current)\n transitionTimeout.current = null\n }\n stopTransition(node)\n }\n fullHeight.current = node.clientHeight\n savedStyles.current.height = node.style.height\n savedStyles.current.overflowY = node.style.overflowY\n savedStyles.current.transition = node.style.transition\n node.style.height = ENTER_TRANSITION === transitionType ? 0 : `${fullHeight.current}px`\n node.style.overflowY = 'hidden'\n node.style.transition = `height ${duration}ms`\n transitionStarted.current = transitionType\n }\n\n const transition = (node, transitionType) => {\n if (transitionTimeout.current) {\n clearTimeout(transitionTimeout.current)\n }\n transitionTimeout.current = setTimeout(() => {\n transitionTimeout.current = null\n if (document.contains(node)) {\n node.style.height = ENTER_TRANSITION === transitionType ? `${fullHeight.current}px` : 0\n }\n }, 0)\n }\n\n return (\n void startTransition(node, ENTER_TRANSITION)}\n onEntering={node => void transition(node, ENTER_TRANSITION)}\n onEntered={node => void stopTransition(node, ENTER_TRANSITION)}\n onExit={node => void startTransition(node, EXIT_TRANSITION)}\n onExiting={node => void transition(node, EXIT_TRANSITION)}\n onExited={node => void stopTransition(node, EXIT_TRANSITION)}\n >\n {state => children(state)}\n \n )\n}\n","// lib\nimport moment from 'moment'\nimport { List } from 'immutable'\nimport PropTypes from 'prop-types'\nimport classNames from 'classnames'\nimport React, { useEffect, useState } from 'react'\nimport { preprocessText, escapeText } from '@aytm/lib/common/func'\n\n// components\nimport LightBox from '@aytm/lib/rfd-ui/components/basic/light-box'\n\n// styles\nimport '@aytm/lib/rfd-ui/styles/basic/video-popup.scss'\n\n// constants\nconst FRAME_PADDING = 7\nconst LABEL_HEIGHT = 40\n\nconst VIDEO_WIDTH = 530\nconst VIDEO_RATIO = 520 / 270\n\n// \nVideoPopup.propTypes = {\n videos: PropTypes.instanceOf(List).isRequired,\n videoId: PropTypes.string,\n videoStartTime: PropTypes.number, // seconds\n show: PropTypes.bool,\n onClose: PropTypes.func\n}\n\nexport default function VideoPopup(props) {\n const { show, videos, videoId, videoStartTime, onClose } = props\n\n const [currentVideoId, setCurrentVideoId] = useState('')\n const [startTime, setStartTime] = useState(0)\n\n const setVideo = () => {\n const { videos, videoId, videoStartTime } = props\n const currentVideoId = videoId || videos.getIn([0, 'id'])\n setCurrentVideoId(List.isList(currentVideoId) ? currentVideoId.get(0) : currentVideoId)\n setStartTime(videoStartTime || 0)\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n useEffect(() => void setVideo(), [])\n\n useEffect(() => {\n if (videoId) setCurrentVideoId(videoId)\n setStartTime(videoStartTime || 0)\n }, [videoId, videoStartTime])\n\n const onCloseClick = () => void ('function' === typeof onClose && onClose())\n\n const onPrevClick = event => {\n event.nativeEvent.stopImmediatePropagation()\n const currentVideoIndex = videos.findIndex(v =>\n List.isList(v.get('id')) ? v.get('id').some(id => id == currentVideoId) : v.get('id') == currentVideoId\n )\n const prevVideoIndex = Math.max(currentVideoIndex - 1, 0)\n const prevVideoId = videos.getIn([prevVideoIndex, 'id'])\n setCurrentVideoId(List.isList(prevVideoId) ? prevVideoId.get(0) : prevVideoId)\n setStartTime(0)\n }\n\n const onNextClick = event => {\n event.nativeEvent.stopImmediatePropagation()\n const currentVideoIndex = videos.findIndex(v =>\n List.isList(v.get('id')) ? v.get('id').some(id => id == currentVideoId) : v.get('id') == currentVideoId\n )\n const nextVideoIndex = Math.min(currentVideoIndex + 1, videos.size - 1)\n const nextVideoId = videos.getIn([nextVideoIndex, 'id'])\n setCurrentVideoId(List.isList(nextVideoId) ? nextVideoId.get(0) : nextVideoId)\n setStartTime(0)\n }\n\n const currentVideoIndex = videos.findIndex(v =>\n List.isList(v.get('id')) ? v.get('id').some(id => id == currentVideoId) : v.get('id') == currentVideoId\n )\n const currentVideo = videos.get(currentVideoIndex)\n const rel = currentVideo.get('rel')\n const autoplay = currentVideo.get('autoplay')\n\n // vimeo start time url param\n const duration = moment.duration(startTime, 'seconds')\n const vimeoStartTime = 't={mm}m{ss}s'.replace('{mm}', duration.minutes()).replace('{ss}', duration.seconds())\n\n const label = currentVideo.get('title')\n const params = []\n if (autoplay) params.push('autoplay=1')\n if (startTime) params.push(`start=${startTime}#${vimeoStartTime}`) // should be pushed as last param\n const src = `${currentVideo.get('url')}${currentVideo.get('code')}${\n (rel ? rel + '&' : '?') + params.join('&')\n }`\n const iframe = `