@mirai/core 0.4.348 → 0.4.349
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.
|
@@ -57,6 +57,7 @@ const Occupation = exports.Occupation = /*#__PURE__*/_react.default.forwardRef((
|
|
|
57
57
|
} else if (error && (0, _helpers.checkRoom)(nextValue, dataSource)) {
|
|
58
58
|
handleValid();
|
|
59
59
|
}
|
|
60
|
+
console.log('>>>>>>>', dataSource, currentDataSource);
|
|
60
61
|
if (JSON.stringify(dataSource) !== JSON.stringify(currentDataSource)) setCurrentDataSource(dataSource);
|
|
61
62
|
// ! TODO: Check why doesnt work witn non-hotels
|
|
62
63
|
// eslint-disable-next-line no-console
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Occupation.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Occupation","_Occupation2","_Occupation3","style","_prepareRoom","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Occupation","exports","React","forwardRef","_ref","ref","dataSource","DATASOURCE","error","maxRooms","minRooms","text","type","ACCOMMODATION_TYPE","ROOM","value","Array","map","prepareRoom","warning","onChange","onError","onSubmit","onValid","onWarning","others","translate","useLocale","itemsRef","useRef","scrollEnd","setScrollEnd","useState","withError","setWithError","withWarning","setWithWarning","currentDataSource","setCurrentDataSource","useEffect","JSON","stringify","nextValue","consolidateValue","checkRoom","handleValid","console","log","handleChange","_itemsRef$current","roomIndex","findIndex","room","some","ages","undefined","TYPE","CHILD","age","scrollHeight","getScrollHeight","hasAges","rooms","current","el","handleAddRoom","_itemsRef$current2","parentNode","handleRemoveRoom","event","groupValue","stopPropagation","scroll","filter","_","index","handleIndividual","groupIndex","fulfill","amount","ERROR","NOT_FILLED","handleSubmit","_groupValue$ages","_itemsRef$current3","testId","isValid","createElement","View","role","className","styles","container","Notification","small","notification","L10N","NOTIFICATION_ERROR_UNFILLED_FIELDS","NOTIFICATION_WARNING_OCCUPATION","ScrollView","scrollTo","snap","scrollview","concat","wide","row","header","Text","action","bold","id","LABEL_PLACE_TYPE_COUNT","PLACE","Button","preventDefault","transparent","onPress","ACTION_REMOVE","group","OccupationGroup","footer","disabled","secondary","buttonAdd","ACTION_ADD_PLACE_TYPE","buttonSubmit","ACTION_SEARCH","displayName","propTypes","PropTypes","arrayOf","SHAPE","bool","number","string","oneOf","values","VALUE","func"],"sources":["../../../../src/components/__shared__/Occupation/Occupation.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Notification, ScrollView, Text, View, styles } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { checkRoom, consolidateValue, getScrollHeight } from './helpers';\nimport { TYPE } from './Occupation.constants';\nimport { DATASOURCE, ERROR, PLACE, SHAPE } from './Occupation.constants';\nimport { OccupationGroup } from './Occupation.Group';\nimport { L10N } from './Occupation.l10n';\nimport * as style from './Occupation.module.css';\nimport { prepareRoom } from '../../../helpers/prepareRoom';\nimport { ACCOMMODATION_TYPE } from '../../helpers';\n\nconst Occupation = React.forwardRef(\n (\n {\n dataSource = DATASOURCE,\n error,\n maxRooms,\n minRooms = 1,\n text,\n type = ACCOMMODATION_TYPE.ROOM,\n value = dataSource ? [...Array(minRooms)].map(() => prepareRoom(dataSource || DATASOURCE)) : [],\n warning,\n onChange = () => {},\n onError = () => {},\n onSubmit,\n onValid = () => {},\n onWarning = () => {},\n ...others\n },\n ref,\n ) => {\n const { translate } = useLocale();\n const itemsRef = useRef([]);\n\n const [scrollEnd, setScrollEnd] = useState();\n const [withError, setWithError] = useState(error);\n const [withWarning, setWithWarning] = useState(false);\n const [currentDataSource, setCurrentDataSource] = useState([]);\n\n useEffect(() => {\n if (JSON.stringify(dataSource) !== JSON.stringify(currentDataSource)) setWithWarning(false);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentDataSource, dataSource]);\n\n useEffect(() => {\n let nextValue = consolidateValue(value, dataSource, currentDataSource);\n if (!nextValue) {\n setWithWarning(true);\n onWarning();\n nextValue = [prepareRoom(dataSource)];\n } else if (error && checkRoom(nextValue, dataSource)) {\n handleValid();\n }\n if (JSON.stringify(dataSource) !== JSON.stringify(currentDataSource)) setCurrentDataSource(dataSource);\n // ! TODO: Check why doesnt work witn non-hotels\n // eslint-disable-next-line no-console\n console.log('>>>>>>>', nextValue, value);\n if (JSON.stringify(nextValue) !== JSON.stringify(value)) handleChange(nextValue);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, value]);\n\n useEffect(() => {\n setWithError(error);\n const roomIndex = value.findIndex((room) =>\n room.some(({ ages = [], type } = {}) => type === TYPE.CHILD && ages.some((age) => age === undefined)),\n );\n if (roomIndex < 0) return;\n\n const scrollHeight = getScrollHeight({\n hasAges: true,\n roomIndex,\n rooms: itemsRef.current?.map((el) => el?.scrollHeight),\n });\n if (scrollHeight >= 0) setScrollEnd(scrollEnd !== scrollHeight ? scrollHeight : scrollEnd + 0.1);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [error]);\n\n useEffect(() => {\n if (warning === undefined) return;\n\n setWithWarning(warning);\n }, [warning]);\n\n const handleAddRoom = () => {\n const { parentNode: { scrollHeight } = {} } = (itemsRef.current?.length > 0 && itemsRef.current[0]) || {};\n if (scrollHeight) setScrollEnd(scrollHeight);\n\n handleChange([...value, prepareRoom(dataSource)]);\n setWithWarning(false);\n };\n\n const handleRemoveRoom = (event, roomIndex, groupValue) => {\n event.stopPropagation();\n scroll(roomIndex, groupValue);\n\n handleChange(value.filter((_, index) => roomIndex !== index));\n itemsRef.current = [];\n setWithWarning(false);\n };\n\n const handleIndividual = (roomIndex, groupIndex, groupValue) => {\n dataSource[groupIndex].fulfill && scroll(roomIndex, groupValue);\n\n const nextValue = [...value];\n nextValue[roomIndex] = [...nextValue[roomIndex]] || [];\n nextValue[roomIndex][groupIndex] = groupValue.amount === 0 ? undefined : groupValue;\n\n handleChange(nextValue);\n setWithWarning(false);\n };\n\n const handleChange = (nextValue) => {\n onChange(nextValue);\n checkRoom(nextValue, dataSource) ? handleValid() : onError(ERROR.NOT_FILLED);\n };\n\n const handleSubmit = () => {\n setWithWarning(false);\n onSubmit(value);\n };\n\n const handleValid = () => {\n setWithError(false);\n onValid();\n };\n\n const scroll = (roomIndex, groupValue) => {\n const scrollHeight = getScrollHeight({\n hasAges: groupValue?.ages?.length > 0,\n roomIndex,\n rooms: itemsRef.current?.map((el) => el?.scrollHeight),\n });\n if (scrollHeight >= 0) setScrollEnd(scrollEnd !== scrollHeight ? scrollHeight : scrollEnd + 0.1);\n };\n\n const { testId } = others;\n const isValid = checkRoom(value, dataSource);\n\n return (\n <View {...others} role=\"occupation\" ref={ref} className={styles(style.container, others.className)}>\n {(withError || withWarning) && (\n <Notification error={withError} small warning={withWarning} className={style.notification}>\n {translate(withError ? L10N.NOTIFICATION_ERROR_UNFILLED_FIELDS : L10N.NOTIFICATION_WARNING_OCCUPATION)}\n </Notification>\n )}\n <ScrollView scrollTo={scrollEnd} snap={false} className={style.scrollview}>\n {value.map((room = [], roomIndex) => (\n <View key={`room:${roomIndex}`} ref={(el) => (itemsRef.current[roomIndex] = el)} wide>\n <View key={`room:header:${roomIndex}`} row className={style.header}>\n <Text action bold>\n {translate({ id: `${L10N.LABEL_PLACE_TYPE_COUNT.id}.${PLACE[type]}` }, { roomIndex: roomIndex + 1 })}\n </Text>\n {value.length > minRooms && (\n <Button\n preventDefault\n small\n transparent\n onPress={(event) => handleRemoveRoom(event, roomIndex, room[roomIndex])}\n testId={testId ? `${testId}-remove-room-${roomIndex}` : undefined}\n >\n {translate(L10N.ACTION_REMOVE)}\n </Button>\n )}\n </View>\n {dataSource.map((group, groupIndex) => (\n <OccupationGroup\n {...group}\n error={error}\n key={`room:${roomIndex}:${groupIndex}`}\n value={room[groupIndex]}\n onChange={(value) => handleIndividual(roomIndex, groupIndex, value)}\n testId={`group-${groupIndex}`}\n />\n ))}\n </View>\n ))}\n </ScrollView>\n\n <View row className={styles(style.footer)}>\n <Button\n disabled={maxRooms && value.length >= maxRooms}\n preventDefault\n secondary\n className={style.buttonAdd}\n onPress={handleAddRoom}\n testId={testId ? `${testId}-add-room` : undefined}\n >\n {translate({ id: `${L10N.ACTION_ADD_PLACE_TYPE.id}.${PLACE[type]}` })}\n </Button>\n {onSubmit && (\n <Button\n disabled={!isValid}\n className={style.buttonSubmit}\n preventDefault\n onPress={handleSubmit}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n )}\n </View>\n </View>\n );\n },\n);\n\nOccupation.displayName = 'Mirai:Core:Occupation';\n\nOccupation.propTypes = {\n dataSource: PropTypes.arrayOf(SHAPE.DATASOURCE),\n error: PropTypes.bool,\n maxRooms: PropTypes.number,\n minRooms: PropTypes.number,\n text: PropTypes.string,\n type: PropTypes.oneOf(Object.values(ACCOMMODATION_TYPE)),\n value: PropTypes.arrayOf(PropTypes.arrayOf(SHAPE.VALUE)),\n warning: PropTypes.bool,\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onSubmit: PropTypes.func,\n onValid: PropTypes.func,\n onWarning: PropTypes.func,\n};\n\nexport { Occupation };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Occupation.js","names":["_locale","require","_ui","_propTypes","_interopRequireDefault","_react","_interopRequireWildcard","_helpers","_Occupation","_Occupation2","_Occupation3","style","_prepareRoom","_helpers2","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","_extends","assign","bind","target","arguments","length","source","key","apply","Occupation","exports","React","forwardRef","_ref","ref","dataSource","DATASOURCE","error","maxRooms","minRooms","text","type","ACCOMMODATION_TYPE","ROOM","value","Array","map","prepareRoom","warning","onChange","onError","onSubmit","onValid","onWarning","others","translate","useLocale","itemsRef","useRef","scrollEnd","setScrollEnd","useState","withError","setWithError","withWarning","setWithWarning","currentDataSource","setCurrentDataSource","useEffect","JSON","stringify","nextValue","consolidateValue","checkRoom","handleValid","console","log","handleChange","_itemsRef$current","roomIndex","findIndex","room","some","ages","undefined","TYPE","CHILD","age","scrollHeight","getScrollHeight","hasAges","rooms","current","el","handleAddRoom","_itemsRef$current2","parentNode","handleRemoveRoom","event","groupValue","stopPropagation","scroll","filter","_","index","handleIndividual","groupIndex","fulfill","amount","ERROR","NOT_FILLED","handleSubmit","_groupValue$ages","_itemsRef$current3","testId","isValid","createElement","View","role","className","styles","container","Notification","small","notification","L10N","NOTIFICATION_ERROR_UNFILLED_FIELDS","NOTIFICATION_WARNING_OCCUPATION","ScrollView","scrollTo","snap","scrollview","concat","wide","row","header","Text","action","bold","id","LABEL_PLACE_TYPE_COUNT","PLACE","Button","preventDefault","transparent","onPress","ACTION_REMOVE","group","OccupationGroup","footer","disabled","secondary","buttonAdd","ACTION_ADD_PLACE_TYPE","buttonSubmit","ACTION_SEARCH","displayName","propTypes","PropTypes","arrayOf","SHAPE","bool","number","string","oneOf","values","VALUE","func"],"sources":["../../../../src/components/__shared__/Occupation/Occupation.jsx"],"sourcesContent":["import { useLocale } from '@mirai/locale';\nimport { Button, Notification, ScrollView, Text, View, styles } from '@mirai/ui';\nimport PropTypes from 'prop-types';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport { checkRoom, consolidateValue, getScrollHeight } from './helpers';\nimport { TYPE } from './Occupation.constants';\nimport { DATASOURCE, ERROR, PLACE, SHAPE } from './Occupation.constants';\nimport { OccupationGroup } from './Occupation.Group';\nimport { L10N } from './Occupation.l10n';\nimport * as style from './Occupation.module.css';\nimport { prepareRoom } from '../../../helpers/prepareRoom';\nimport { ACCOMMODATION_TYPE } from '../../helpers';\n\nconst Occupation = React.forwardRef(\n (\n {\n dataSource = DATASOURCE,\n error,\n maxRooms,\n minRooms = 1,\n text,\n type = ACCOMMODATION_TYPE.ROOM,\n value = dataSource ? [...Array(minRooms)].map(() => prepareRoom(dataSource || DATASOURCE)) : [],\n warning,\n onChange = () => {},\n onError = () => {},\n onSubmit,\n onValid = () => {},\n onWarning = () => {},\n ...others\n },\n ref,\n ) => {\n const { translate } = useLocale();\n const itemsRef = useRef([]);\n\n const [scrollEnd, setScrollEnd] = useState();\n const [withError, setWithError] = useState(error);\n const [withWarning, setWithWarning] = useState(false);\n const [currentDataSource, setCurrentDataSource] = useState([]);\n\n useEffect(() => {\n if (JSON.stringify(dataSource) !== JSON.stringify(currentDataSource)) setWithWarning(false);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentDataSource, dataSource]);\n\n useEffect(() => {\n let nextValue = consolidateValue(value, dataSource, currentDataSource);\n if (!nextValue) {\n setWithWarning(true);\n onWarning();\n nextValue = [prepareRoom(dataSource)];\n } else if (error && checkRoom(nextValue, dataSource)) {\n handleValid();\n }\n console.log('>>>>>>>', dataSource, currentDataSource);\n if (JSON.stringify(dataSource) !== JSON.stringify(currentDataSource)) setCurrentDataSource(dataSource);\n // ! TODO: Check why doesnt work witn non-hotels\n // eslint-disable-next-line no-console\n console.log('>>>>>>>', nextValue, value);\n if (JSON.stringify(nextValue) !== JSON.stringify(value)) handleChange(nextValue);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [dataSource, value]);\n\n useEffect(() => {\n setWithError(error);\n const roomIndex = value.findIndex((room) =>\n room.some(({ ages = [], type } = {}) => type === TYPE.CHILD && ages.some((age) => age === undefined)),\n );\n if (roomIndex < 0) return;\n\n const scrollHeight = getScrollHeight({\n hasAges: true,\n roomIndex,\n rooms: itemsRef.current?.map((el) => el?.scrollHeight),\n });\n if (scrollHeight >= 0) setScrollEnd(scrollEnd !== scrollHeight ? scrollHeight : scrollEnd + 0.1);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [error]);\n\n useEffect(() => {\n if (warning === undefined) return;\n\n setWithWarning(warning);\n }, [warning]);\n\n const handleAddRoom = () => {\n const { parentNode: { scrollHeight } = {} } = (itemsRef.current?.length > 0 && itemsRef.current[0]) || {};\n if (scrollHeight) setScrollEnd(scrollHeight);\n\n handleChange([...value, prepareRoom(dataSource)]);\n setWithWarning(false);\n };\n\n const handleRemoveRoom = (event, roomIndex, groupValue) => {\n event.stopPropagation();\n scroll(roomIndex, groupValue);\n\n handleChange(value.filter((_, index) => roomIndex !== index));\n itemsRef.current = [];\n setWithWarning(false);\n };\n\n const handleIndividual = (roomIndex, groupIndex, groupValue) => {\n dataSource[groupIndex].fulfill && scroll(roomIndex, groupValue);\n\n const nextValue = [...value];\n nextValue[roomIndex] = [...nextValue[roomIndex]] || [];\n nextValue[roomIndex][groupIndex] = groupValue.amount === 0 ? undefined : groupValue;\n\n handleChange(nextValue);\n setWithWarning(false);\n };\n\n const handleChange = (nextValue) => {\n onChange(nextValue);\n checkRoom(nextValue, dataSource) ? handleValid() : onError(ERROR.NOT_FILLED);\n };\n\n const handleSubmit = () => {\n setWithWarning(false);\n onSubmit(value);\n };\n\n const handleValid = () => {\n setWithError(false);\n onValid();\n };\n\n const scroll = (roomIndex, groupValue) => {\n const scrollHeight = getScrollHeight({\n hasAges: groupValue?.ages?.length > 0,\n roomIndex,\n rooms: itemsRef.current?.map((el) => el?.scrollHeight),\n });\n if (scrollHeight >= 0) setScrollEnd(scrollEnd !== scrollHeight ? scrollHeight : scrollEnd + 0.1);\n };\n\n const { testId } = others;\n const isValid = checkRoom(value, dataSource);\n\n return (\n <View {...others} role=\"occupation\" ref={ref} className={styles(style.container, others.className)}>\n {(withError || withWarning) && (\n <Notification error={withError} small warning={withWarning} className={style.notification}>\n {translate(withError ? L10N.NOTIFICATION_ERROR_UNFILLED_FIELDS : L10N.NOTIFICATION_WARNING_OCCUPATION)}\n </Notification>\n )}\n <ScrollView scrollTo={scrollEnd} snap={false} className={style.scrollview}>\n {value.map((room = [], roomIndex) => (\n <View key={`room:${roomIndex}`} ref={(el) => (itemsRef.current[roomIndex] = el)} wide>\n <View key={`room:header:${roomIndex}`} row className={style.header}>\n <Text action bold>\n {translate({ id: `${L10N.LABEL_PLACE_TYPE_COUNT.id}.${PLACE[type]}` }, { roomIndex: roomIndex + 1 })}\n </Text>\n {value.length > minRooms && (\n <Button\n preventDefault\n small\n transparent\n onPress={(event) => handleRemoveRoom(event, roomIndex, room[roomIndex])}\n testId={testId ? `${testId}-remove-room-${roomIndex}` : undefined}\n >\n {translate(L10N.ACTION_REMOVE)}\n </Button>\n )}\n </View>\n {dataSource.map((group, groupIndex) => (\n <OccupationGroup\n {...group}\n error={error}\n key={`room:${roomIndex}:${groupIndex}`}\n value={room[groupIndex]}\n onChange={(value) => handleIndividual(roomIndex, groupIndex, value)}\n testId={`group-${groupIndex}`}\n />\n ))}\n </View>\n ))}\n </ScrollView>\n\n <View row className={styles(style.footer)}>\n <Button\n disabled={maxRooms && value.length >= maxRooms}\n preventDefault\n secondary\n className={style.buttonAdd}\n onPress={handleAddRoom}\n testId={testId ? `${testId}-add-room` : undefined}\n >\n {translate({ id: `${L10N.ACTION_ADD_PLACE_TYPE.id}.${PLACE[type]}` })}\n </Button>\n {onSubmit && (\n <Button\n disabled={!isValid}\n className={style.buttonSubmit}\n preventDefault\n onPress={handleSubmit}\n testId={testId ? `${testId}-submit` : undefined}\n >\n {text || translate(L10N.ACTION_SEARCH)}\n </Button>\n )}\n </View>\n </View>\n );\n },\n);\n\nOccupation.displayName = 'Mirai:Core:Occupation';\n\nOccupation.propTypes = {\n dataSource: PropTypes.arrayOf(SHAPE.DATASOURCE),\n error: PropTypes.bool,\n maxRooms: PropTypes.number,\n minRooms: PropTypes.number,\n text: PropTypes.string,\n type: PropTypes.oneOf(Object.values(ACCOMMODATION_TYPE)),\n value: PropTypes.arrayOf(PropTypes.arrayOf(SHAPE.VALUE)),\n warning: PropTypes.bool,\n onChange: PropTypes.func,\n onError: PropTypes.func,\n onSubmit: PropTypes.func,\n onValid: PropTypes.func,\n onWarning: PropTypes.func,\n};\n\nexport { Occupation };\n"],"mappings":"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"}
|