@televet/kibble-ui 5.0.20-alpha.hunter.12 → 5.0.20-alpha.hunter.13
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/dist/chunks/{dateTimePicker.component-CjvDYyIT.js → dateTimePicker.component-D6REMP8B.js} +2 -2
- package/dist/chunks/{dateTimePicker.component-CjvDYyIT.js.map → dateTimePicker.component-D6REMP8B.js.map} +1 -1
- package/dist/chunks/{dateTimePicker.component-0MJuK1Oc.js → dateTimePicker.component-jBeVvk_j.js} +2 -2
- package/dist/chunks/{dateTimePicker.component-0MJuK1Oc.js.map → dateTimePicker.component-jBeVvk_j.js.map} +1 -1
- package/dist/chunks/timePicker.component-BB9Pn9Aj.js +2 -0
- package/dist/chunks/{timePicker.component-o2OOKAlO.js.map → timePicker.component-BB9Pn9Aj.js.map} +1 -1
- package/dist/chunks/{timePicker.component-ArRbn9S4.js → timePicker.component-DmeGL-fM.js} +39 -39
- package/dist/chunks/timePicker.component-DmeGL-fM.js.map +1 -0
- package/dist/chunks/{timeRange.component-DB4PkXb4.js → timeRange.component-7AbLiHJY.js} +2 -2
- package/dist/chunks/{timeRange.component-DB4PkXb4.js.map → timeRange.component-7AbLiHJY.js.map} +1 -1
- package/dist/chunks/{timeRange.component-BuWc07Rf.js → timeRange.component-Dy8zeWyN.js} +2 -2
- package/dist/chunks/{timeRange.component-BuWc07Rf.js.map → timeRange.component-Dy8zeWyN.js.map} +1 -1
- package/dist/cjs/components/DateTimePicker/index.cjs +1 -1
- package/dist/cjs/components/TimePicker/index.cjs +1 -1
- package/dist/cjs/components/TimeRange/index.cjs +1 -1
- package/dist/cjs/components/index.cjs +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/esm/components/DateTimePicker/index.js +1 -1
- package/dist/esm/components/TimePicker/index.js +1 -1
- package/dist/esm/components/TimeRange/index.js +1 -1
- package/dist/esm/components/index.js +3 -3
- package/dist/esm/index.js +3 -3
- package/package.json +1 -1
- package/dist/chunks/timePicker.component-ArRbn9S4.js.map +0 -1
- package/dist/chunks/timePicker.component-o2OOKAlO.js +0 -2
package/dist/chunks/{timePicker.component-o2OOKAlO.js.map → timePicker.component-BB9Pn9Aj.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timePicker.component-o2OOKAlO.js","sources":["../../src/components/TimePicker/components/TimeOption/timeOption.recipe.ts","../../src/components/TimePicker/components/TimeOption/timeOption.component.tsx","../../src/components/TimePicker/timePicker.recipe.ts","../../src/components/TimePicker/components/TimeList/timeList.component.tsx","../../src/components/TimePicker/timePicker.types.ts","../../src/components/TimePicker/timePicker.component.tsx"],"sourcesContent":["import { defineRecipe } from '@chakra-ui/react/styled-system';\n\nexport const timeOptionRecipe = defineRecipe({\n base: {\n borderRadius: '4px',\n cursor: 'pointer',\n fontSize: 'sm',\n px: 3,\n py: 1,\n textAlign: 'center',\n },\n variants: {\n selected: {\n true: {\n background: 'background.secondary',\n color: 'text.contrast',\n _hover: {\n background: 'background.secondary.hover',\n },\n },\n false: {\n background: 'background',\n color: 'text.subtle',\n _hover: {\n background: 'background.secondaryAlpha.hover',\n },\n },\n },\n },\n defaultVariants: {\n selected: false,\n },\n});\n","import React, { useCallback } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { useRecipe } from '@chakra-ui/react/styled-system';\nimport { timeOptionRecipe } from './timeOption.recipe';\n\ninterface TimeOptionProps {\n /** Ref to the option component. */\n innerRef?: React.Ref<HTMLDivElement | null> | null;\n /** Callback function to be called when the option is clicked. */\n onClick: (selectedValue: string) => void;\n /** If true, the option will be selected. */\n selected: boolean;\n /** Value of the option. */\n value: string;\n /** Data test id for the option.\n * @default kibble-timepicker-option\n */\n 'data-testid'?: string;\n}\n\nexport const TimeOption = ({\n value,\n innerRef,\n onClick,\n selected,\n ['data-testid']: dataTestId = 'kibble-timepicker-option',\n}: TimeOptionProps): React.JSX.Element => {\n const recipe = useRecipe({ recipe: timeOptionRecipe });\n const styles = recipe({ selected });\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedValue = event.currentTarget.textContent || '';\n onClick(selectedValue);\n },\n [onClick],\n );\n\n return (\n <Box className=\"TimePicker__Option\" data-testid={dataTestId} ref={innerRef} onClick={handleClick} css={styles}>\n {value}\n </Box>\n );\n};\n","import { defineSlotRecipe } from '@chakra-ui/react/styled-system';\n\nexport const timePickerRecipe = defineSlotRecipe({\n slots: ['trigger', 'container', 'list'],\n base: {\n trigger: {\n width: '100%',\n },\n container: {\n display: 'flex',\n gap: 1.5,\n height: '186px',\n overflow: 'hidden',\n },\n list: {\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n overflowY: 'auto',\n '&::webkit-scrollbar': {\n display: 'none',\n },\n },\n },\n});\n","import React, { useEffect, useRef } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { TimeOption } from '../TimeOption/timeOption.component';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { timePickerRecipe } from '../../timePicker.recipe';\n\ninterface ScrollContainerProps {\n /** Options to display in the list. */\n options: string[];\n /** Type of the option. */\n optionType: 'hour' | 'minute' | 'meridiem';\n /** Selected value of the list. */\n selectedValue?: string;\n /** Callback function to be called when the option is clicked. */\n onClick: (value: string) => void;\n /** Determines if the list is open. */\n open: boolean;\n /** Data test id for the list.\n * @default kibble-timepicker-list\n */\n 'data-testid'?: string;\n}\n\nexport const TimeList = ({\n options,\n optionType,\n selectedValue,\n onClick,\n open = false,\n ['data-testid']: dataTestId = 'kibble-timepicker-list',\n}: ScrollContainerProps): React.JSX.Element => {\n const recipe = useSlotRecipe({ recipe: timePickerRecipe });\n const styles = recipe();\n const itemRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (open && itemRef.current) {\n requestAnimationFrame(() => {\n if (itemRef.current) {\n itemRef.current.scrollIntoView({ block: 'center' });\n }\n });\n }\n }, [open, selectedValue]);\n\n return (\n <Box className=\"TimePicker__List\" data-testid={`${dataTestId}-${optionType}-list`} css={styles.list}>\n {options.map((option) => {\n const isSelected = option === selectedValue;\n return (\n <TimeOption\n key={`${optionType}-option-${option}`}\n innerRef={isSelected ? itemRef : null}\n value={option}\n selected={option === selectedValue}\n onClick={onClick}\n data-testid={`${dataTestId}-${optionType}-option-${option}`}\n />\n );\n })}\n </Box>\n );\n};\n","export enum Meridiem {\n AM = 'AM',\n PM = 'PM',\n}\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { TextInput, TextInputProps } from 'components/TextInput/textInput.component';\nimport { Popover } from 'components/Popover/popover.component';\nimport { Icon } from 'components/Icon/icon.component';\nimport { useIconTextSizeMap } from 'hooks/useIconTextSizeMap';\nimport format from 'date-fns/format';\nimport { Box } from '@chakra-ui/react/box';\nimport { TimeList } from './components/TimeList/timeList.component';\nimport { Meridiem } from './timePicker.types';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { timePickerRecipe } from './timePicker.recipe';\nimport { Placement } from 'shared/types/placement';\nimport { getTimezoneOffset } from 'date-fns-tz';\nimport { add } from 'date-fns';\n\nexport interface TimePickerProps {\n /** Initial time to be displayed in the input field. */\n initialTime?: Date;\n /** Props to customize the input field. See `TextInput` for more information. */\n inputProps?: Omit<TextInputProps, 'onChange' | 'value' | 'isClearable' | 'onClear'>;\n /**\n * Interval of minutes to be displayed in the dropdown.\n * @default 5\n */\n minuteInterval?: number;\n /** Callback function triggered when the time is changed. */\n onTimeChange?: (time: Date) => void;\n /** Callback function triggered when the time picker is closed. */\n onClose?: (time?: Date) => void;\n /**\n * Placement of the dropdown relative to the input field.\n * @default bottom\n */\n placement?: Placement;\n timezone?: string;\n /**\n * Data test id for the time picker.\n * @default kibble-timepicker\n */\n 'data-testid'?: string;\n}\n\nexport const TimePicker = ({\n initialTime,\n inputProps,\n minuteInterval = 5,\n onTimeChange,\n onClose,\n placement = 'bottom',\n timezone,\n ['data-testid']: dataTestId = 'kibble-timepicker',\n}: TimePickerProps): React.JSX.Element => {\n const recipe = useSlotRecipe({ recipe: timePickerRecipe });\n const styles = recipe();\n const [isOpen, setIsOpen] = useState(false);\n const [selectedTime, setSelectedTime] = useState(initialTime);\n const [selectedHour, setSelectedHour] = useState<string | undefined>();\n const [selectedMinute, setSelectedMinute] = useState<string | undefined>();\n const [selectedMeridiem, setSelectedMeridiem] = useState<string | undefined>();\n\n const formattedTime = useMemo(() => {\n if (!selectedTime) return '';\n return format(selectedTime, 'h:mm aa');\n }, [selectedTime]);\n\n const formatNumber = (number: number | string): string => {\n const formattedValue = number.toString();\n if (formattedValue.length === 1) {\n return `0${formattedValue}`;\n }\n\n return formattedValue;\n };\n\n const hourOptions = useMemo(() => {\n return [12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].map((hour) => hour.toString());\n }, []);\n\n const minuteOptions = useMemo(() => {\n const minutes = [];\n for (let i = 0; i < 60; i += minuteInterval) {\n minutes.push(i);\n }\n\n return minutes.map(formatNumber);\n }, [minuteInterval]);\n\n const meridiemOptions = [Meridiem.AM, Meridiem.PM];\n\n const localToClinicTimezone = useCallback(\n ({ date, timezone, reverse }: { date: Date; timezone: string; reverse?: boolean }): Date => {\n const localTzOffset = getTimezoneOffset(Intl.DateTimeFormat().resolvedOptions().timeZone);\n const clinicTzOffset = getTimezoneOffset(timezone);\n const offsetDiff = reverse ? clinicTzOffset - localTzOffset : localTzOffset - clinicTzOffset;\n return add(date, { minutes: offsetDiff / 1000 / 60 });\n },\n [],\n );\n\n const handleTimeChange = useCallback(\n (hour?: string, minute?: string, meridiem?: string) => {\n const _hour = hour || '12';\n const _minute = minute || '00';\n const _meridiem = meridiem || 'AM';\n let meridiemAdjustment = 0;\n\n if (!hour) {\n setSelectedHour('12');\n }\n if (!minute) {\n setSelectedMinute('00');\n }\n if (!meridiem) {\n setSelectedMeridiem('AM');\n }\n\n // set 1-11pm to 13-23. Don't set 12pm to 24\n if (_meridiem === Meridiem.PM && Number(_hour) < 12) {\n meridiemAdjustment = 12;\n }\n\n // set 12am to 00\n if (_meridiem === Meridiem.AM && Number(_hour) === 12) {\n meridiemAdjustment = -12;\n }\n\n const hours = Number(_hour) + meridiemAdjustment;\n const time = new Date().setHours(hours, Number(_minute), 0, 0);\n let date = new Date(time);\n\n setSelectedTime(date);\n console.log('REACHED TIME CHANGE', { date, timezone });\n if (onTimeChange) {\n if (timezone) {\n console.log('CONVERTING TIMEZONE TO CLINIC LOCAL TIME', { date, timezone });\n date = localToClinicTimezone({ date, timezone });\n }\n onTimeChange(date);\n }\n },\n [onTimeChange, timezone, localToClinicTimezone],\n );\n\n const handleHourClick = useCallback(\n (value: string) => {\n setSelectedHour(value);\n handleTimeChange(value, selectedMinute, selectedMeridiem);\n },\n [handleTimeChange, selectedMeridiem, selectedMinute],\n );\n\n const handleMinuteClick = useCallback(\n (value: string) => {\n setSelectedMinute(value);\n handleTimeChange(selectedHour, value, selectedMeridiem);\n },\n [handleTimeChange, selectedHour, selectedMeridiem],\n );\n\n const handleMeridiemClick = useCallback(\n (value: string) => {\n setSelectedMeridiem(value);\n handleTimeChange(selectedHour, selectedMinute, value);\n },\n [handleTimeChange, selectedHour, selectedMinute],\n );\n\n useEffect(() => {\n // Set default selections based on value passed in\n if (initialTime) {\n const localTime = new Date(initialTime);\n\n // calculate hours\n const hours = localTime.getHours();\n const adjustedHours = hours % 12 || 12;\n\n setSelectedTime(initialTime);\n setSelectedHour(adjustedHours.toString());\n setSelectedMinute(localTime.getMinutes().toString());\n setSelectedMeridiem(localTime.getHours() > 11 ? Meridiem.PM : Meridiem.AM);\n }\n }, [initialTime]);\n\n return (\n <Popover\n open={isOpen}\n onOpenChange={({ open }) => {\n setIsOpen(open);\n if (!open && onClose) {\n onClose(selectedTime);\n }\n }}\n anchor={\n <Box className=\"TimePicker__Trigger\" data-testid={`${dataTestId}-trigger`} css={styles.trigger}>\n <TextInput\n placeholder=\"12:00 AM\"\n rightElement={<Icon size={useIconTextSizeMap(inputProps?.size || 'md')} name=\"clock\" />}\n value={formattedTime}\n readOnly\n cursor=\"pointer\"\n {...inputProps}\n {...(isOpen && { 'data-focus': 'true' })}\n />\n </Box>\n }\n contentProps={{ w: 'max-content' }}\n placement={placement}\n variant={inputProps?.onContrast ? 'contrast' : 'default'}\n showArrow={false}\n >\n <Box className=\"TimePicker__Container\" data-testid={`${dataTestId}-container`} css={styles.container}>\n <TimeList\n options={hourOptions}\n optionType=\"hour\"\n selectedValue={selectedHour}\n onClick={handleHourClick}\n open={isOpen}\n data-testid={`${dataTestId}-hour-list`}\n />\n <TimeList\n options={minuteOptions}\n optionType=\"minute\"\n selectedValue={selectedMinute ? formatNumber(selectedMinute) : undefined}\n onClick={handleMinuteClick}\n open={isOpen}\n data-testid={`${dataTestId}-minute-list`}\n />\n <TimeList\n options={meridiemOptions}\n optionType=\"meridiem\"\n selectedValue={selectedMeridiem}\n onClick={handleMeridiemClick}\n open={isOpen}\n data-testid={`${dataTestId}-meridiem-list`}\n />\n </Box>\n </Popover>\n );\n};\n"],"names":["timeOptionRecipe","defineRecipe","TimeOption","value","innerRef","onClick","selected","dataTestId","styles","useRecipe","handleClick","useCallback","event","selectedValue","jsx","Box","timePickerRecipe","defineSlotRecipe","TimeList","options","optionType","open","useSlotRecipe","itemRef","useRef","useEffect","option","isSelected","Meridiem","TimePicker","initialTime","inputProps","minuteInterval","onTimeChange","onClose","placement","timezone","isOpen","setIsOpen","useState","selectedTime","setSelectedTime","selectedHour","setSelectedHour","selectedMinute","setSelectedMinute","selectedMeridiem","setSelectedMeridiem","formattedTime","useMemo","format","formatNumber","number","formattedValue","hourOptions","hour","minuteOptions","minutes","i","meridiemOptions","localToClinicTimezone","date","reverse","localTzOffset","getTimezoneOffset","clinicTzOffset","offsetDiff","add","handleTimeChange","minute","meridiem","_hour","_minute","_meridiem","meridiemAdjustment","hours","time","handleHourClick","handleMinuteClick","handleMeridiemClick","localTime","adjustedHours","Popover","TextInput","Icon","useIconTextSizeMap","jsxs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"timePicker.component-BB9Pn9Aj.js","sources":["../../src/components/TimePicker/components/TimeOption/timeOption.recipe.ts","../../src/components/TimePicker/components/TimeOption/timeOption.component.tsx","../../src/components/TimePicker/timePicker.recipe.ts","../../src/components/TimePicker/components/TimeList/timeList.component.tsx","../../src/components/TimePicker/timePicker.types.ts","../../src/components/TimePicker/timePicker.component.tsx"],"sourcesContent":["import { defineRecipe } from '@chakra-ui/react/styled-system';\n\nexport const timeOptionRecipe = defineRecipe({\n base: {\n borderRadius: '4px',\n cursor: 'pointer',\n fontSize: 'sm',\n px: 3,\n py: 1,\n textAlign: 'center',\n },\n variants: {\n selected: {\n true: {\n background: 'background.secondary',\n color: 'text.contrast',\n _hover: {\n background: 'background.secondary.hover',\n },\n },\n false: {\n background: 'background',\n color: 'text.subtle',\n _hover: {\n background: 'background.secondaryAlpha.hover',\n },\n },\n },\n },\n defaultVariants: {\n selected: false,\n },\n});\n","import React, { useCallback } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { useRecipe } from '@chakra-ui/react/styled-system';\nimport { timeOptionRecipe } from './timeOption.recipe';\n\ninterface TimeOptionProps {\n /** Ref to the option component. */\n innerRef?: React.Ref<HTMLDivElement | null> | null;\n /** Callback function to be called when the option is clicked. */\n onClick: (selectedValue: string) => void;\n /** If true, the option will be selected. */\n selected: boolean;\n /** Value of the option. */\n value: string;\n /** Data test id for the option.\n * @default kibble-timepicker-option\n */\n 'data-testid'?: string;\n}\n\nexport const TimeOption = ({\n value,\n innerRef,\n onClick,\n selected,\n ['data-testid']: dataTestId = 'kibble-timepicker-option',\n}: TimeOptionProps): React.JSX.Element => {\n const recipe = useRecipe({ recipe: timeOptionRecipe });\n const styles = recipe({ selected });\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedValue = event.currentTarget.textContent || '';\n onClick(selectedValue);\n },\n [onClick],\n );\n\n return (\n <Box className=\"TimePicker__Option\" data-testid={dataTestId} ref={innerRef} onClick={handleClick} css={styles}>\n {value}\n </Box>\n );\n};\n","import { defineSlotRecipe } from '@chakra-ui/react/styled-system';\n\nexport const timePickerRecipe = defineSlotRecipe({\n slots: ['trigger', 'container', 'list'],\n base: {\n trigger: {\n width: '100%',\n },\n container: {\n display: 'flex',\n gap: 1.5,\n height: '186px',\n overflow: 'hidden',\n },\n list: {\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n overflowY: 'auto',\n '&::webkit-scrollbar': {\n display: 'none',\n },\n },\n },\n});\n","import React, { useEffect, useRef } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { TimeOption } from '../TimeOption/timeOption.component';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { timePickerRecipe } from '../../timePicker.recipe';\n\ninterface ScrollContainerProps {\n /** Options to display in the list. */\n options: string[];\n /** Type of the option. */\n optionType: 'hour' | 'minute' | 'meridiem';\n /** Selected value of the list. */\n selectedValue?: string;\n /** Callback function to be called when the option is clicked. */\n onClick: (value: string) => void;\n /** Determines if the list is open. */\n open: boolean;\n /** Data test id for the list.\n * @default kibble-timepicker-list\n */\n 'data-testid'?: string;\n}\n\nexport const TimeList = ({\n options,\n optionType,\n selectedValue,\n onClick,\n open = false,\n ['data-testid']: dataTestId = 'kibble-timepicker-list',\n}: ScrollContainerProps): React.JSX.Element => {\n const recipe = useSlotRecipe({ recipe: timePickerRecipe });\n const styles = recipe();\n const itemRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (open && itemRef.current) {\n requestAnimationFrame(() => {\n if (itemRef.current) {\n itemRef.current.scrollIntoView({ block: 'center' });\n }\n });\n }\n }, [open, selectedValue]);\n\n return (\n <Box className=\"TimePicker__List\" data-testid={`${dataTestId}-${optionType}-list`} css={styles.list}>\n {options.map((option) => {\n const isSelected = option === selectedValue;\n return (\n <TimeOption\n key={`${optionType}-option-${option}`}\n innerRef={isSelected ? itemRef : null}\n value={option}\n selected={option === selectedValue}\n onClick={onClick}\n data-testid={`${dataTestId}-${optionType}-option-${option}`}\n />\n );\n })}\n </Box>\n );\n};\n","export enum Meridiem {\n AM = 'AM',\n PM = 'PM',\n}\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { TextInput, TextInputProps } from 'components/TextInput/textInput.component';\nimport { Popover } from 'components/Popover/popover.component';\nimport { Icon } from 'components/Icon/icon.component';\nimport { useIconTextSizeMap } from 'hooks/useIconTextSizeMap';\nimport format from 'date-fns/format';\nimport { Box } from '@chakra-ui/react/box';\nimport { TimeList } from './components/TimeList/timeList.component';\nimport { Meridiem } from './timePicker.types';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { timePickerRecipe } from './timePicker.recipe';\nimport { Placement } from 'shared/types/placement';\nimport { getTimezoneOffset } from 'date-fns-tz';\nimport { add } from 'date-fns';\n\nexport interface TimePickerProps {\n /** Initial time to be displayed in the input field. */\n initialTime?: Date;\n /** Props to customize the input field. See `TextInput` for more information. */\n inputProps?: Omit<TextInputProps, 'onChange' | 'value' | 'isClearable' | 'onClear'>;\n /**\n * Interval of minutes to be displayed in the dropdown.\n * @default 5\n */\n minuteInterval?: number;\n /** Callback function triggered when the time is changed. */\n onTimeChange?: (time: Date) => void;\n /** Callback function triggered when the time picker is closed. */\n onClose?: (time?: Date) => void;\n /**\n * Placement of the dropdown relative to the input field.\n * @default bottom\n */\n placement?: Placement;\n timezone?: string;\n /**\n * Data test id for the time picker.\n * @default kibble-timepicker\n */\n 'data-testid'?: string;\n}\n\nexport const TimePicker = ({\n initialTime,\n inputProps,\n minuteInterval = 5,\n onTimeChange,\n onClose,\n placement = 'bottom',\n timezone,\n ['data-testid']: dataTestId = 'kibble-timepicker',\n}: TimePickerProps): React.JSX.Element => {\n const recipe = useSlotRecipe({ recipe: timePickerRecipe });\n const styles = recipe();\n const [isOpen, setIsOpen] = useState(false);\n const [selectedTime, setSelectedTime] = useState(initialTime);\n const [selectedHour, setSelectedHour] = useState<string | undefined>();\n const [selectedMinute, setSelectedMinute] = useState<string | undefined>();\n const [selectedMeridiem, setSelectedMeridiem] = useState<string | undefined>();\n\n const formattedTime = useMemo(() => {\n if (!selectedTime) return '';\n return format(selectedTime, 'h:mm aa');\n }, [selectedTime]);\n\n const formatNumber = (number: number | string): string => {\n const formattedValue = number.toString();\n if (formattedValue.length === 1) {\n return `0${formattedValue}`;\n }\n\n return formattedValue;\n };\n\n const hourOptions = useMemo(() => {\n return [12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].map((hour) => hour.toString());\n }, []);\n\n const minuteOptions = useMemo(() => {\n const minutes = [];\n for (let i = 0; i < 60; i += minuteInterval) {\n minutes.push(i);\n }\n\n return minutes.map(formatNumber);\n }, [minuteInterval]);\n\n const meridiemOptions = [Meridiem.AM, Meridiem.PM];\n\n const localToClinicTimezone = useCallback(\n ({ date, timezone, reverse }: { date: Date; timezone: string; reverse?: boolean }): Date => {\n const localTzOffset = getTimezoneOffset(Intl.DateTimeFormat().resolvedOptions().timeZone);\n const clinicTzOffset = getTimezoneOffset(timezone);\n const offsetDiff = reverse ? clinicTzOffset - localTzOffset : localTzOffset - clinicTzOffset;\n return add(date, { minutes: offsetDiff / 1000 / 60 });\n },\n [],\n );\n\n const handleTimeChange = useCallback(\n (hour?: string, minute?: string, meridiem?: string) => {\n const _hour = hour || '12';\n const _minute = minute || '00';\n const _meridiem = meridiem || 'AM';\n let meridiemAdjustment = 0;\n\n if (!hour) {\n setSelectedHour('12');\n }\n if (!minute) {\n setSelectedMinute('00');\n }\n if (!meridiem) {\n setSelectedMeridiem('AM');\n }\n\n // set 1-11pm to 13-23. Don't set 12pm to 24\n if (_meridiem === Meridiem.PM && Number(_hour) < 12) {\n meridiemAdjustment = 12;\n }\n\n // set 12am to 00\n if (_meridiem === Meridiem.AM && Number(_hour) === 12) {\n meridiemAdjustment = -12;\n }\n\n const hours = Number(_hour) + meridiemAdjustment;\n const time = new Date().setHours(hours, Number(_minute), 0, 0);\n let date = new Date(time);\n\n setSelectedTime(date);\n console.log('REACHED TIME CHANGE', { date, timezone });\n if (onTimeChange) {\n if (timezone) {\n console.log('CONVERTING TIMEZONE TO CLINIC LOCAL TIME', { date, timezone });\n date = localToClinicTimezone({ date, timezone });\n }\n onTimeChange(date);\n }\n },\n [onTimeChange, timezone, localToClinicTimezone],\n );\n\n const handleHourClick = useCallback(\n (value: string) => {\n setSelectedHour(value);\n console.log(\"I'M HERE AND I'VE BEEN CLICKED\");\n handleTimeChange(value, selectedMinute, selectedMeridiem);\n },\n [handleTimeChange, selectedMeridiem, selectedMinute],\n );\n\n const handleMinuteClick = useCallback(\n (value: string) => {\n setSelectedMinute(value);\n handleTimeChange(selectedHour, value, selectedMeridiem);\n },\n [handleTimeChange, selectedHour, selectedMeridiem],\n );\n\n const handleMeridiemClick = useCallback(\n (value: string) => {\n setSelectedMeridiem(value);\n handleTimeChange(selectedHour, selectedMinute, value);\n },\n [handleTimeChange, selectedHour, selectedMinute],\n );\n\n useEffect(() => {\n // Set default selections based on value passed in\n if (initialTime) {\n const localTime = new Date(initialTime);\n\n // calculate hours\n const hours = localTime.getHours();\n const adjustedHours = hours % 12 || 12;\n\n setSelectedTime(initialTime);\n setSelectedHour(adjustedHours.toString());\n setSelectedMinute(localTime.getMinutes().toString());\n setSelectedMeridiem(localTime.getHours() > 11 ? Meridiem.PM : Meridiem.AM);\n }\n }, [initialTime]);\n\n return (\n <Popover\n open={isOpen}\n onOpenChange={({ open }) => {\n setIsOpen(open);\n if (!open && onClose) {\n onClose(selectedTime);\n }\n }}\n anchor={\n <Box className=\"TimePicker__Trigger\" data-testid={`${dataTestId}-trigger`} css={styles.trigger}>\n <TextInput\n placeholder=\"12:00 AM\"\n rightElement={<Icon size={useIconTextSizeMap(inputProps?.size || 'md')} name=\"clock\" />}\n value={formattedTime}\n readOnly\n cursor=\"pointer\"\n {...inputProps}\n {...(isOpen && { 'data-focus': 'true' })}\n />\n </Box>\n }\n contentProps={{ w: 'max-content' }}\n placement={placement}\n variant={inputProps?.onContrast ? 'contrast' : 'default'}\n showArrow={false}\n >\n <Box className=\"TimePicker__Container\" data-testid={`${dataTestId}-container`} css={styles.container}>\n <TimeList\n options={hourOptions}\n optionType=\"hour\"\n selectedValue={selectedHour}\n onClick={handleHourClick}\n open={isOpen}\n data-testid={`${dataTestId}-hour-list`}\n />\n <TimeList\n options={minuteOptions}\n optionType=\"minute\"\n selectedValue={selectedMinute ? formatNumber(selectedMinute) : undefined}\n onClick={handleMinuteClick}\n open={isOpen}\n data-testid={`${dataTestId}-minute-list`}\n />\n <TimeList\n options={meridiemOptions}\n optionType=\"meridiem\"\n selectedValue={selectedMeridiem}\n onClick={handleMeridiemClick}\n open={isOpen}\n data-testid={`${dataTestId}-meridiem-list`}\n />\n </Box>\n </Popover>\n );\n};\n"],"names":["timeOptionRecipe","defineRecipe","TimeOption","value","innerRef","onClick","selected","dataTestId","styles","useRecipe","handleClick","useCallback","event","selectedValue","jsx","Box","timePickerRecipe","defineSlotRecipe","TimeList","options","optionType","open","useSlotRecipe","itemRef","useRef","useEffect","option","isSelected","Meridiem","TimePicker","initialTime","inputProps","minuteInterval","onTimeChange","onClose","placement","timezone","isOpen","setIsOpen","useState","selectedTime","setSelectedTime","selectedHour","setSelectedHour","selectedMinute","setSelectedMinute","selectedMeridiem","setSelectedMeridiem","formattedTime","useMemo","format","formatNumber","number","formattedValue","hourOptions","hour","minuteOptions","minutes","i","meridiemOptions","localToClinicTimezone","date","reverse","localTzOffset","getTimezoneOffset","clinicTzOffset","offsetDiff","add","handleTimeChange","minute","meridiem","_hour","_minute","_meridiem","meridiemAdjustment","hours","time","handleHourClick","handleMinuteClick","handleMeridiemClick","localTime","adjustedHours","Popover","TextInput","Icon","useIconTextSizeMap","jsxs"],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { j as o } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
|
-
import { useCallback as x, useRef as Q, useEffect as
|
|
2
|
+
import { useCallback as x, useRef as Q, useEffect as D, useState as T, useMemo as y } from "react";
|
|
3
3
|
import { W as U } from "./textInput.component-C7kdQ8hF.js";
|
|
4
4
|
import { P as X } from "./popover.component-DIYT1Lc0.js";
|
|
5
5
|
import { I as ee } from "./icon.component-PV_nHBId.js";
|
|
6
6
|
import { u as te } from "./useIconTextSizeMap-BK-pUrQv.js";
|
|
7
7
|
import { f as se } from "./format-CqTHHSak.js";
|
|
8
|
-
import { B as
|
|
8
|
+
import { B as j } from "./index-9BerxEcw.js";
|
|
9
9
|
import { a as oe, d as re } from "./config-Djkl1N81.js";
|
|
10
10
|
import { u as ie } from "./use-recipe-d63ABaZ3.js";
|
|
11
11
|
import { u as V } from "./create-slot-recipe-context-D_FXDJGp.js";
|
|
12
|
-
import { getTimezoneOffset as
|
|
12
|
+
import { getTimezoneOffset as I } from "date-fns-tz";
|
|
13
13
|
import { add as ne } from "date-fns";
|
|
14
14
|
const ce = oe({
|
|
15
15
|
base: {
|
|
@@ -55,8 +55,8 @@ const ce = oe({
|
|
|
55
55
|
},
|
|
56
56
|
[n]
|
|
57
57
|
);
|
|
58
|
-
return /* @__PURE__ */ o.jsx(
|
|
59
|
-
},
|
|
58
|
+
return /* @__PURE__ */ o.jsx(j, { className: "TimePicker__Option", "data-testid": m, ref: i, onClick: c, css: a, children: t });
|
|
59
|
+
}, L = re({
|
|
60
60
|
slots: ["trigger", "container", "list"],
|
|
61
61
|
base: {
|
|
62
62
|
trigger: {
|
|
@@ -78,7 +78,7 @@ const ce = oe({
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
}),
|
|
81
|
+
}), P = ({
|
|
82
82
|
options: t,
|
|
83
83
|
optionType: i,
|
|
84
84
|
selectedValue: n,
|
|
@@ -86,12 +86,12 @@ const ce = oe({
|
|
|
86
86
|
open: m = !1,
|
|
87
87
|
["data-testid"]: M = "kibble-timepicker-list"
|
|
88
88
|
}) => {
|
|
89
|
-
const c = V({ recipe:
|
|
90
|
-
return
|
|
89
|
+
const c = V({ recipe: L })(), d = Q(null);
|
|
90
|
+
return D(() => {
|
|
91
91
|
m && d.current && requestAnimationFrame(() => {
|
|
92
92
|
d.current && d.current.scrollIntoView({ block: "center" });
|
|
93
93
|
});
|
|
94
|
-
}, [m, n]), /* @__PURE__ */ o.jsx(
|
|
94
|
+
}, [m, n]), /* @__PURE__ */ o.jsx(j, { className: "TimePicker__List", "data-testid": `${M}-${i}-list`, css: c.list, children: t.map((r) => {
|
|
95
95
|
const u = r === n;
|
|
96
96
|
return /* @__PURE__ */ o.jsx(
|
|
97
97
|
ae,
|
|
@@ -107,7 +107,7 @@ const ce = oe({
|
|
|
107
107
|
}) });
|
|
108
108
|
};
|
|
109
109
|
var p = /* @__PURE__ */ ((t) => (t.AM = "AM", t.PM = "PM", t))(p || {});
|
|
110
|
-
const
|
|
110
|
+
const Oe = ({
|
|
111
111
|
initialTime: t,
|
|
112
112
|
inputProps: i,
|
|
113
113
|
minuteInterval: n = 5,
|
|
@@ -117,59 +117,59 @@ const Te = ({
|
|
|
117
117
|
timezone: a,
|
|
118
118
|
["data-testid"]: c = "kibble-timepicker"
|
|
119
119
|
}) => {
|
|
120
|
-
const r = V({ recipe:
|
|
120
|
+
const r = V({ recipe: L })(), [u, z] = T(!1), [A, w] = T(t), [C, R] = T(), [f, S] = T(), [O, _] = T(), B = y(() => A ? se(A, "h:mm aa") : "", [A]), v = (e) => {
|
|
121
121
|
const s = e.toString();
|
|
122
122
|
return s.length === 1 ? `0${s}` : s;
|
|
123
|
-
}, F =
|
|
123
|
+
}, F = y(() => [12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].map((e) => e.toString()), []), G = y(() => {
|
|
124
124
|
const e = [];
|
|
125
125
|
for (let s = 0; s < 60; s += n)
|
|
126
126
|
e.push(s);
|
|
127
127
|
return e.map(v);
|
|
128
128
|
}, [n]), W = [p.AM, p.PM], H = x(
|
|
129
129
|
({ date: e, timezone: s, reverse: h }) => {
|
|
130
|
-
const k =
|
|
130
|
+
const k = I(Intl.DateTimeFormat().resolvedOptions().timeZone), E = I(s), N = h ? E - k : k - E;
|
|
131
131
|
return ne(e, { minutes: N / 1e3 / 60 });
|
|
132
132
|
},
|
|
133
133
|
[]
|
|
134
134
|
), g = x(
|
|
135
135
|
(e, s, h) => {
|
|
136
|
-
const k = e || "12",
|
|
137
|
-
let
|
|
138
|
-
e || R("12"), s ||
|
|
139
|
-
const
|
|
140
|
-
let b = new Date(
|
|
141
|
-
|
|
136
|
+
const k = e || "12", E = s || "00", N = h || "AM";
|
|
137
|
+
let $ = 0;
|
|
138
|
+
e || R("12"), s || S("00"), h || _("AM"), N === p.PM && Number(k) < 12 && ($ = 12), N === p.AM && Number(k) === 12 && ($ = -12);
|
|
139
|
+
const Y = Number(k) + $, J = (/* @__PURE__ */ new Date()).setHours(Y, Number(E), 0, 0);
|
|
140
|
+
let b = new Date(J);
|
|
141
|
+
w(b), console.log("REACHED TIME CHANGE", { date: b, timezone: a }), l && (a && (console.log("CONVERTING TIMEZONE TO CLINIC LOCAL TIME", { date: b, timezone: a }), b = H({ date: b, timezone: a })), l(b));
|
|
142
142
|
},
|
|
143
143
|
[l, a, H]
|
|
144
144
|
), Z = x(
|
|
145
145
|
(e) => {
|
|
146
|
-
R(e), g(e, f,
|
|
146
|
+
R(e), console.log("I'M HERE AND I'VE BEEN CLICKED"), g(e, f, O);
|
|
147
147
|
},
|
|
148
|
-
[g,
|
|
148
|
+
[g, O, f]
|
|
149
149
|
), q = x(
|
|
150
150
|
(e) => {
|
|
151
|
-
|
|
151
|
+
S(e), g(C, e, O);
|
|
152
152
|
},
|
|
153
|
-
[g,
|
|
154
|
-
),
|
|
153
|
+
[g, C, O]
|
|
154
|
+
), K = x(
|
|
155
155
|
(e) => {
|
|
156
|
-
|
|
156
|
+
_(e), g(C, f, e);
|
|
157
157
|
},
|
|
158
|
-
[g,
|
|
158
|
+
[g, C, f]
|
|
159
159
|
);
|
|
160
|
-
return
|
|
160
|
+
return D(() => {
|
|
161
161
|
if (t) {
|
|
162
162
|
const e = new Date(t), h = e.getHours() % 12 || 12;
|
|
163
|
-
|
|
163
|
+
w(t), R(h.toString()), S(e.getMinutes().toString()), _(e.getHours() > 11 ? p.PM : p.AM);
|
|
164
164
|
}
|
|
165
165
|
}, [t]), /* @__PURE__ */ o.jsx(
|
|
166
166
|
X,
|
|
167
167
|
{
|
|
168
168
|
open: u,
|
|
169
169
|
onOpenChange: ({ open: e }) => {
|
|
170
|
-
|
|
170
|
+
z(e), !e && m && m(A);
|
|
171
171
|
},
|
|
172
|
-
anchor: /* @__PURE__ */ o.jsx(
|
|
172
|
+
anchor: /* @__PURE__ */ o.jsx(j, { className: "TimePicker__Trigger", "data-testid": `${c}-trigger`, css: r.trigger, children: /* @__PURE__ */ o.jsx(
|
|
173
173
|
U,
|
|
174
174
|
{
|
|
175
175
|
placeholder: "12:00 AM",
|
|
@@ -185,20 +185,20 @@ const Te = ({
|
|
|
185
185
|
placement: M,
|
|
186
186
|
variant: i?.onContrast ? "contrast" : "default",
|
|
187
187
|
showArrow: !1,
|
|
188
|
-
children: /* @__PURE__ */ o.jsxs(
|
|
188
|
+
children: /* @__PURE__ */ o.jsxs(j, { className: "TimePicker__Container", "data-testid": `${c}-container`, css: r.container, children: [
|
|
189
189
|
/* @__PURE__ */ o.jsx(
|
|
190
|
-
|
|
190
|
+
P,
|
|
191
191
|
{
|
|
192
192
|
options: F,
|
|
193
193
|
optionType: "hour",
|
|
194
|
-
selectedValue:
|
|
194
|
+
selectedValue: C,
|
|
195
195
|
onClick: Z,
|
|
196
196
|
open: u,
|
|
197
197
|
"data-testid": `${c}-hour-list`
|
|
198
198
|
}
|
|
199
199
|
),
|
|
200
200
|
/* @__PURE__ */ o.jsx(
|
|
201
|
-
|
|
201
|
+
P,
|
|
202
202
|
{
|
|
203
203
|
options: G,
|
|
204
204
|
optionType: "minute",
|
|
@@ -209,12 +209,12 @@ const Te = ({
|
|
|
209
209
|
}
|
|
210
210
|
),
|
|
211
211
|
/* @__PURE__ */ o.jsx(
|
|
212
|
-
|
|
212
|
+
P,
|
|
213
213
|
{
|
|
214
214
|
options: W,
|
|
215
215
|
optionType: "meridiem",
|
|
216
|
-
selectedValue:
|
|
217
|
-
onClick:
|
|
216
|
+
selectedValue: O,
|
|
217
|
+
onClick: K,
|
|
218
218
|
open: u,
|
|
219
219
|
"data-testid": `${c}-meridiem-list`
|
|
220
220
|
}
|
|
@@ -225,6 +225,6 @@ const Te = ({
|
|
|
225
225
|
};
|
|
226
226
|
export {
|
|
227
227
|
p as M,
|
|
228
|
-
|
|
228
|
+
Oe as T
|
|
229
229
|
};
|
|
230
|
-
//# sourceMappingURL=timePicker.component-
|
|
230
|
+
//# sourceMappingURL=timePicker.component-DmeGL-fM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"timePicker.component-DmeGL-fM.js","sources":["../../src/components/TimePicker/components/TimeOption/timeOption.recipe.ts","../../src/components/TimePicker/components/TimeOption/timeOption.component.tsx","../../src/components/TimePicker/timePicker.recipe.ts","../../src/components/TimePicker/components/TimeList/timeList.component.tsx","../../src/components/TimePicker/timePicker.types.ts","../../src/components/TimePicker/timePicker.component.tsx"],"sourcesContent":["import { defineRecipe } from '@chakra-ui/react/styled-system';\n\nexport const timeOptionRecipe = defineRecipe({\n base: {\n borderRadius: '4px',\n cursor: 'pointer',\n fontSize: 'sm',\n px: 3,\n py: 1,\n textAlign: 'center',\n },\n variants: {\n selected: {\n true: {\n background: 'background.secondary',\n color: 'text.contrast',\n _hover: {\n background: 'background.secondary.hover',\n },\n },\n false: {\n background: 'background',\n color: 'text.subtle',\n _hover: {\n background: 'background.secondaryAlpha.hover',\n },\n },\n },\n },\n defaultVariants: {\n selected: false,\n },\n});\n","import React, { useCallback } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { useRecipe } from '@chakra-ui/react/styled-system';\nimport { timeOptionRecipe } from './timeOption.recipe';\n\ninterface TimeOptionProps {\n /** Ref to the option component. */\n innerRef?: React.Ref<HTMLDivElement | null> | null;\n /** Callback function to be called when the option is clicked. */\n onClick: (selectedValue: string) => void;\n /** If true, the option will be selected. */\n selected: boolean;\n /** Value of the option. */\n value: string;\n /** Data test id for the option.\n * @default kibble-timepicker-option\n */\n 'data-testid'?: string;\n}\n\nexport const TimeOption = ({\n value,\n innerRef,\n onClick,\n selected,\n ['data-testid']: dataTestId = 'kibble-timepicker-option',\n}: TimeOptionProps): React.JSX.Element => {\n const recipe = useRecipe({ recipe: timeOptionRecipe });\n const styles = recipe({ selected });\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n const selectedValue = event.currentTarget.textContent || '';\n onClick(selectedValue);\n },\n [onClick],\n );\n\n return (\n <Box className=\"TimePicker__Option\" data-testid={dataTestId} ref={innerRef} onClick={handleClick} css={styles}>\n {value}\n </Box>\n );\n};\n","import { defineSlotRecipe } from '@chakra-ui/react/styled-system';\n\nexport const timePickerRecipe = defineSlotRecipe({\n slots: ['trigger', 'container', 'list'],\n base: {\n trigger: {\n width: '100%',\n },\n container: {\n display: 'flex',\n gap: 1.5,\n height: '186px',\n overflow: 'hidden',\n },\n list: {\n display: 'flex',\n flexDirection: 'column',\n gap: 1,\n overflowY: 'auto',\n '&::webkit-scrollbar': {\n display: 'none',\n },\n },\n },\n});\n","import React, { useEffect, useRef } from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { TimeOption } from '../TimeOption/timeOption.component';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { timePickerRecipe } from '../../timePicker.recipe';\n\ninterface ScrollContainerProps {\n /** Options to display in the list. */\n options: string[];\n /** Type of the option. */\n optionType: 'hour' | 'minute' | 'meridiem';\n /** Selected value of the list. */\n selectedValue?: string;\n /** Callback function to be called when the option is clicked. */\n onClick: (value: string) => void;\n /** Determines if the list is open. */\n open: boolean;\n /** Data test id for the list.\n * @default kibble-timepicker-list\n */\n 'data-testid'?: string;\n}\n\nexport const TimeList = ({\n options,\n optionType,\n selectedValue,\n onClick,\n open = false,\n ['data-testid']: dataTestId = 'kibble-timepicker-list',\n}: ScrollContainerProps): React.JSX.Element => {\n const recipe = useSlotRecipe({ recipe: timePickerRecipe });\n const styles = recipe();\n const itemRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (open && itemRef.current) {\n requestAnimationFrame(() => {\n if (itemRef.current) {\n itemRef.current.scrollIntoView({ block: 'center' });\n }\n });\n }\n }, [open, selectedValue]);\n\n return (\n <Box className=\"TimePicker__List\" data-testid={`${dataTestId}-${optionType}-list`} css={styles.list}>\n {options.map((option) => {\n const isSelected = option === selectedValue;\n return (\n <TimeOption\n key={`${optionType}-option-${option}`}\n innerRef={isSelected ? itemRef : null}\n value={option}\n selected={option === selectedValue}\n onClick={onClick}\n data-testid={`${dataTestId}-${optionType}-option-${option}`}\n />\n );\n })}\n </Box>\n );\n};\n","export enum Meridiem {\n AM = 'AM',\n PM = 'PM',\n}\n","import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { TextInput, TextInputProps } from 'components/TextInput/textInput.component';\nimport { Popover } from 'components/Popover/popover.component';\nimport { Icon } from 'components/Icon/icon.component';\nimport { useIconTextSizeMap } from 'hooks/useIconTextSizeMap';\nimport format from 'date-fns/format';\nimport { Box } from '@chakra-ui/react/box';\nimport { TimeList } from './components/TimeList/timeList.component';\nimport { Meridiem } from './timePicker.types';\nimport { useSlotRecipe } from '@chakra-ui/react/styled-system';\nimport { timePickerRecipe } from './timePicker.recipe';\nimport { Placement } from 'shared/types/placement';\nimport { getTimezoneOffset } from 'date-fns-tz';\nimport { add } from 'date-fns';\n\nexport interface TimePickerProps {\n /** Initial time to be displayed in the input field. */\n initialTime?: Date;\n /** Props to customize the input field. See `TextInput` for more information. */\n inputProps?: Omit<TextInputProps, 'onChange' | 'value' | 'isClearable' | 'onClear'>;\n /**\n * Interval of minutes to be displayed in the dropdown.\n * @default 5\n */\n minuteInterval?: number;\n /** Callback function triggered when the time is changed. */\n onTimeChange?: (time: Date) => void;\n /** Callback function triggered when the time picker is closed. */\n onClose?: (time?: Date) => void;\n /**\n * Placement of the dropdown relative to the input field.\n * @default bottom\n */\n placement?: Placement;\n timezone?: string;\n /**\n * Data test id for the time picker.\n * @default kibble-timepicker\n */\n 'data-testid'?: string;\n}\n\nexport const TimePicker = ({\n initialTime,\n inputProps,\n minuteInterval = 5,\n onTimeChange,\n onClose,\n placement = 'bottom',\n timezone,\n ['data-testid']: dataTestId = 'kibble-timepicker',\n}: TimePickerProps): React.JSX.Element => {\n const recipe = useSlotRecipe({ recipe: timePickerRecipe });\n const styles = recipe();\n const [isOpen, setIsOpen] = useState(false);\n const [selectedTime, setSelectedTime] = useState(initialTime);\n const [selectedHour, setSelectedHour] = useState<string | undefined>();\n const [selectedMinute, setSelectedMinute] = useState<string | undefined>();\n const [selectedMeridiem, setSelectedMeridiem] = useState<string | undefined>();\n\n const formattedTime = useMemo(() => {\n if (!selectedTime) return '';\n return format(selectedTime, 'h:mm aa');\n }, [selectedTime]);\n\n const formatNumber = (number: number | string): string => {\n const formattedValue = number.toString();\n if (formattedValue.length === 1) {\n return `0${formattedValue}`;\n }\n\n return formattedValue;\n };\n\n const hourOptions = useMemo(() => {\n return [12, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11].map((hour) => hour.toString());\n }, []);\n\n const minuteOptions = useMemo(() => {\n const minutes = [];\n for (let i = 0; i < 60; i += minuteInterval) {\n minutes.push(i);\n }\n\n return minutes.map(formatNumber);\n }, [minuteInterval]);\n\n const meridiemOptions = [Meridiem.AM, Meridiem.PM];\n\n const localToClinicTimezone = useCallback(\n ({ date, timezone, reverse }: { date: Date; timezone: string; reverse?: boolean }): Date => {\n const localTzOffset = getTimezoneOffset(Intl.DateTimeFormat().resolvedOptions().timeZone);\n const clinicTzOffset = getTimezoneOffset(timezone);\n const offsetDiff = reverse ? clinicTzOffset - localTzOffset : localTzOffset - clinicTzOffset;\n return add(date, { minutes: offsetDiff / 1000 / 60 });\n },\n [],\n );\n\n const handleTimeChange = useCallback(\n (hour?: string, minute?: string, meridiem?: string) => {\n const _hour = hour || '12';\n const _minute = minute || '00';\n const _meridiem = meridiem || 'AM';\n let meridiemAdjustment = 0;\n\n if (!hour) {\n setSelectedHour('12');\n }\n if (!minute) {\n setSelectedMinute('00');\n }\n if (!meridiem) {\n setSelectedMeridiem('AM');\n }\n\n // set 1-11pm to 13-23. Don't set 12pm to 24\n if (_meridiem === Meridiem.PM && Number(_hour) < 12) {\n meridiemAdjustment = 12;\n }\n\n // set 12am to 00\n if (_meridiem === Meridiem.AM && Number(_hour) === 12) {\n meridiemAdjustment = -12;\n }\n\n const hours = Number(_hour) + meridiemAdjustment;\n const time = new Date().setHours(hours, Number(_minute), 0, 0);\n let date = new Date(time);\n\n setSelectedTime(date);\n console.log('REACHED TIME CHANGE', { date, timezone });\n if (onTimeChange) {\n if (timezone) {\n console.log('CONVERTING TIMEZONE TO CLINIC LOCAL TIME', { date, timezone });\n date = localToClinicTimezone({ date, timezone });\n }\n onTimeChange(date);\n }\n },\n [onTimeChange, timezone, localToClinicTimezone],\n );\n\n const handleHourClick = useCallback(\n (value: string) => {\n setSelectedHour(value);\n console.log(\"I'M HERE AND I'VE BEEN CLICKED\");\n handleTimeChange(value, selectedMinute, selectedMeridiem);\n },\n [handleTimeChange, selectedMeridiem, selectedMinute],\n );\n\n const handleMinuteClick = useCallback(\n (value: string) => {\n setSelectedMinute(value);\n handleTimeChange(selectedHour, value, selectedMeridiem);\n },\n [handleTimeChange, selectedHour, selectedMeridiem],\n );\n\n const handleMeridiemClick = useCallback(\n (value: string) => {\n setSelectedMeridiem(value);\n handleTimeChange(selectedHour, selectedMinute, value);\n },\n [handleTimeChange, selectedHour, selectedMinute],\n );\n\n useEffect(() => {\n // Set default selections based on value passed in\n if (initialTime) {\n const localTime = new Date(initialTime);\n\n // calculate hours\n const hours = localTime.getHours();\n const adjustedHours = hours % 12 || 12;\n\n setSelectedTime(initialTime);\n setSelectedHour(adjustedHours.toString());\n setSelectedMinute(localTime.getMinutes().toString());\n setSelectedMeridiem(localTime.getHours() > 11 ? Meridiem.PM : Meridiem.AM);\n }\n }, [initialTime]);\n\n return (\n <Popover\n open={isOpen}\n onOpenChange={({ open }) => {\n setIsOpen(open);\n if (!open && onClose) {\n onClose(selectedTime);\n }\n }}\n anchor={\n <Box className=\"TimePicker__Trigger\" data-testid={`${dataTestId}-trigger`} css={styles.trigger}>\n <TextInput\n placeholder=\"12:00 AM\"\n rightElement={<Icon size={useIconTextSizeMap(inputProps?.size || 'md')} name=\"clock\" />}\n value={formattedTime}\n readOnly\n cursor=\"pointer\"\n {...inputProps}\n {...(isOpen && { 'data-focus': 'true' })}\n />\n </Box>\n }\n contentProps={{ w: 'max-content' }}\n placement={placement}\n variant={inputProps?.onContrast ? 'contrast' : 'default'}\n showArrow={false}\n >\n <Box className=\"TimePicker__Container\" data-testid={`${dataTestId}-container`} css={styles.container}>\n <TimeList\n options={hourOptions}\n optionType=\"hour\"\n selectedValue={selectedHour}\n onClick={handleHourClick}\n open={isOpen}\n data-testid={`${dataTestId}-hour-list`}\n />\n <TimeList\n options={minuteOptions}\n optionType=\"minute\"\n selectedValue={selectedMinute ? formatNumber(selectedMinute) : undefined}\n onClick={handleMinuteClick}\n open={isOpen}\n data-testid={`${dataTestId}-minute-list`}\n />\n <TimeList\n options={meridiemOptions}\n optionType=\"meridiem\"\n selectedValue={selectedMeridiem}\n onClick={handleMeridiemClick}\n open={isOpen}\n data-testid={`${dataTestId}-meridiem-list`}\n />\n </Box>\n </Popover>\n );\n};\n"],"names":["timeOptionRecipe","defineRecipe","TimeOption","value","innerRef","onClick","selected","dataTestId","styles","useRecipe","handleClick","useCallback","event","selectedValue","jsx","Box","timePickerRecipe","defineSlotRecipe","TimeList","options","optionType","open","useSlotRecipe","itemRef","useRef","useEffect","option","isSelected","Meridiem","TimePicker","initialTime","inputProps","minuteInterval","onTimeChange","onClose","placement","timezone","isOpen","setIsOpen","useState","selectedTime","setSelectedTime","selectedHour","setSelectedHour","selectedMinute","setSelectedMinute","selectedMeridiem","setSelectedMeridiem","formattedTime","useMemo","format","formatNumber","number","formattedValue","hourOptions","hour","minuteOptions","minutes","i","meridiemOptions","localToClinicTimezone","date","reverse","localTzOffset","getTimezoneOffset","clinicTzOffset","offsetDiff","add","handleTimeChange","minute","meridiem","_hour","_minute","_meridiem","meridiemAdjustment","hours","time","handleHourClick","handleMinuteClick","handleMeridiemClick","localTime","adjustedHours","Popover","TextInput","Icon","useIconTextSizeMap","jsxs"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./jsx-runtime-BjDatQAs.js"),m=require("./index-BQRnVsAg.js"),t=require("./timePicker.component-
|
|
2
|
-
//# sourceMappingURL=timeRange.component-
|
|
1
|
+
"use strict";const e=require("./jsx-runtime-BjDatQAs.js"),m=require("./index-BQRnVsAg.js"),t=require("./timePicker.component-BB9Pn9Aj.js"),c=require("./flex-BOU6tYUd.js"),a=({endTimePickerProps:s,separator:r="-",startTimePickerProps:n,["data-testid"]:i="kibble-time-range",...x})=>e.jsxRuntimeExports.jsxs(c.Flex,{className:"TimeRange","data-testid":i,...x,children:[e.jsxRuntimeExports.jsx(t.TimePicker,{...n,"data-testid":`${i}-start-time-picker`}),e.jsxRuntimeExports.jsx(m.Box,{alignSelf:"center",mx:1,children:r}),e.jsxRuntimeExports.jsx(t.TimePicker,{...s,"data-testid":`${i}-end-time-picker`})]});exports.TimeRange=a;
|
|
2
|
+
//# sourceMappingURL=timeRange.component-7AbLiHJY.js.map
|
package/dist/chunks/{timeRange.component-DB4PkXb4.js.map → timeRange.component-7AbLiHJY.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeRange.component-
|
|
1
|
+
{"version":3,"file":"timeRange.component-7AbLiHJY.js","sources":["../../src/components/TimeRange/timeRange.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { Flex, FlexProps } from '@chakra-ui/react/flex';\nimport { TimePicker, TimePickerProps } from 'components/TimePicker/timePicker.component';\n\nexport interface TimeRangeProps extends FlexProps {\n /**\n * Element that separates the start and end time pickers. By default, a dash is used.\n * @default -\n */\n separator?: React.ReactNode;\n /** Props for the end time picker. See `TimePicker` for more information. */\n endTimePickerProps: TimePickerProps;\n /** Props for the start time picker. See `TimePicker` for more information. */\n startTimePickerProps: TimePickerProps;\n /**\n * Data test id for the time range.\n * @default kibble-time-range\n */\n 'data-testid'?: string;\n}\n\nexport const TimeRange = ({\n endTimePickerProps,\n separator = '-',\n startTimePickerProps,\n ['data-testid']: dataTestId = 'kibble-time-range',\n ...rest\n}: TimeRangeProps): React.JSX.Element => {\n return (\n <Flex className=\"TimeRange\" data-testid={dataTestId} {...rest}>\n <TimePicker {...startTimePickerProps} data-testid={`${dataTestId}-start-time-picker`} />\n <Box alignSelf=\"center\" mx={1}>\n {separator}\n </Box>\n <TimePicker {...endTimePickerProps} data-testid={`${dataTestId}-end-time-picker`} />\n </Flex>\n );\n};\n"],"names":["TimeRange","endTimePickerProps","separator","startTimePickerProps","dataTestId","rest","Flex","jsx","TimePicker","Box"],"mappings":"2KAsBaA,EAAY,CAAC,CACxB,mBAAAC,EACA,UAAAC,EAAY,IACZ,qBAAAC,EACA,CAAC,eAAgBC,EAAa,oBAC9B,GAAGC,CACL,6BAEKC,OAAK,CAAA,UAAU,YAAY,cAAaF,EAAa,GAAGC,EACvD,SAAA,CAAAE,wBAACC,EAAAA,YAAY,GAAGL,EAAsB,cAAa,GAAGC,CAAU,qBAAsB,0BACrFK,EAAAA,IAAI,CAAA,UAAU,SAAS,GAAI,EACzB,SACHP,EAAA,0BACCM,EAAAA,WAAY,CAAA,GAAGP,EAAoB,cAAa,GAAGG,CAAU,kBAAoB,CAAA,CAAA,EACpF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { j as e } from "./jsx-runtime-C5mzlN2N.js";
|
|
2
2
|
import { B as o } from "./index-9BerxEcw.js";
|
|
3
|
-
import { T as i } from "./timePicker.component-
|
|
3
|
+
import { T as i } from "./timePicker.component-DmeGL-fM.js";
|
|
4
4
|
import { F as n } from "./flex-CX-8gE9T.js";
|
|
5
5
|
const l = ({
|
|
6
6
|
endTimePickerProps: r,
|
|
@@ -16,4 +16,4 @@ const l = ({
|
|
|
16
16
|
export {
|
|
17
17
|
l as T
|
|
18
18
|
};
|
|
19
|
-
//# sourceMappingURL=timeRange.component-
|
|
19
|
+
//# sourceMappingURL=timeRange.component-Dy8zeWyN.js.map
|
package/dist/chunks/{timeRange.component-BuWc07Rf.js.map → timeRange.component-Dy8zeWyN.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeRange.component-
|
|
1
|
+
{"version":3,"file":"timeRange.component-Dy8zeWyN.js","sources":["../../src/components/TimeRange/timeRange.component.tsx"],"sourcesContent":["import React from 'react';\nimport { Box } from '@chakra-ui/react/box';\nimport { Flex, FlexProps } from '@chakra-ui/react/flex';\nimport { TimePicker, TimePickerProps } from 'components/TimePicker/timePicker.component';\n\nexport interface TimeRangeProps extends FlexProps {\n /**\n * Element that separates the start and end time pickers. By default, a dash is used.\n * @default -\n */\n separator?: React.ReactNode;\n /** Props for the end time picker. See `TimePicker` for more information. */\n endTimePickerProps: TimePickerProps;\n /** Props for the start time picker. See `TimePicker` for more information. */\n startTimePickerProps: TimePickerProps;\n /**\n * Data test id for the time range.\n * @default kibble-time-range\n */\n 'data-testid'?: string;\n}\n\nexport const TimeRange = ({\n endTimePickerProps,\n separator = '-',\n startTimePickerProps,\n ['data-testid']: dataTestId = 'kibble-time-range',\n ...rest\n}: TimeRangeProps): React.JSX.Element => {\n return (\n <Flex className=\"TimeRange\" data-testid={dataTestId} {...rest}>\n <TimePicker {...startTimePickerProps} data-testid={`${dataTestId}-start-time-picker`} />\n <Box alignSelf=\"center\" mx={1}>\n {separator}\n </Box>\n <TimePicker {...endTimePickerProps} data-testid={`${dataTestId}-end-time-picker`} />\n </Flex>\n );\n};\n"],"names":["TimeRange","endTimePickerProps","separator","startTimePickerProps","dataTestId","rest","Flex","jsx","TimePicker","Box"],"mappings":";;;;AAsBO,MAAMA,IAAY,CAAC;AAAA,EACxB,oBAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,sBAAAC;AAAA,EACA,CAAC,gBAAgBC,IAAa;AAAA,EAC9B,GAAGC;AACL,6BAEKC,GAAK,EAAA,WAAU,aAAY,eAAaF,GAAa,GAAGC,GACvD,UAAA;AAAA,EAAAE,gBAAAA,MAACC,KAAY,GAAGL,GAAsB,eAAa,GAAGC,CAAU,sBAAsB;AAAA,wBACrFK,GAAI,EAAA,WAAU,UAAS,IAAI,GACzB,UACHP,GAAA;AAAA,wBACCM,GAAY,EAAA,GAAGP,GAAoB,eAAa,GAAGG,CAAU,mBAAoB,CAAA;AAAA,GACpF;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../chunks/dateTimePicker.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../chunks/dateTimePicker.component-jBeVvk_j.js");exports.DateTimePicker=e.DateTimePicker;exports.DateTimePickerDefaultOptionValue=e.DateTimePickerDefaultOptionValue;exports.calendarViews=e.calendarViews;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../chunks/timePicker.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../chunks/timePicker.component-BB9Pn9Aj.js");exports.Meridiem=e.Meridiem;exports.TimePicker=e.TimePicker;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../chunks/timeRange.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../../chunks/timeRange.component-7AbLiHJY.js");exports.TimeRange=e.TimeRange;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../chunks/alert.types-BlvzpzTn.js"),v=require("../../chunks/avatar.component-BGgZoVJS.js"),c=require("../../chunks/avatar.types-Bmt5Uhfb.js"),T=require("../../chunks/avatarGroup.component-BHchH_tF.js"),g=require("../../chunks/button.component-DjdgBXDC.js"),e=require("../../chunks/button.types-DXP4uRV8.js"),b=require("../../chunks/buttonGroup.component-BXiKIlPf.js"),y=require("../../chunks/calendar.component-IbKgfA9K.js"),P=require("../../chunks/card.component-BmBiYbMV.js"),C=require("../../chunks/card.types-MvkQTTZF.js"),k=require("../../chunks/characterCounter.component-BRHLt929.js"),z=require("../../chunks/checkbox.component-DdOVYSSc.js"),h=require("../../chunks/checkboxGroup.component-CvHKP7gd.js"),D=require("../../chunks/conversationCard.component-0D3jmvOf.js"),I=require("../../chunks/datePicker.component-BuHqzdy_.js"),x=require("../../chunks/datePicker.provider-B7-cWUkv.js"),o=require("../../chunks/dateTimePicker.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../chunks/alert.types-BlvzpzTn.js"),v=require("../../chunks/avatar.component-BGgZoVJS.js"),c=require("../../chunks/avatar.types-Bmt5Uhfb.js"),T=require("../../chunks/avatarGroup.component-BHchH_tF.js"),g=require("../../chunks/button.component-DjdgBXDC.js"),e=require("../../chunks/button.types-DXP4uRV8.js"),b=require("../../chunks/buttonGroup.component-BXiKIlPf.js"),y=require("../../chunks/calendar.component-IbKgfA9K.js"),P=require("../../chunks/card.component-BmBiYbMV.js"),C=require("../../chunks/card.types-MvkQTTZF.js"),k=require("../../chunks/characterCounter.component-BRHLt929.js"),z=require("../../chunks/checkbox.component-DdOVYSSc.js"),h=require("../../chunks/checkboxGroup.component-CvHKP7gd.js"),D=require("../../chunks/conversationCard.component-0D3jmvOf.js"),I=require("../../chunks/datePicker.component-BuHqzdy_.js"),x=require("../../chunks/datePicker.provider-B7-cWUkv.js"),o=require("../../chunks/dateTimePicker.component-jBeVvk_j.js"),V=require("../../chunks/divider.component-BX3zyB7O.js"),n=require("../../chunks/divider.types-DBNcs0IR.js"),f=require("../../chunks/heading.component-DnoZOXdz.js"),A=require("../../chunks/icon.component-B1hr5lLa.js"),B=require("../../chunks/icon.types-2obj_NKG.js"),W=require("../../chunks/link.component-_YXG8MDq.js"),p=require("../../chunks/logo.types-88a31xCx.js"),G=require("../../chunks/menu.component-DypBuCwv.js"),t=require("../../chunks/modal.types-D_t0UdS6.js"),R=require("../../chunks/notificationCounter.component-CBwi5vXa.js"),u=require("../../chunks/notificationCounter.types-B_-siNfi.js"),w=require("../../chunks/picture.component-BA2hgdZy.js"),d=require("../../chunks/pinInput.types-ftBwVMLj.js"),M=require("../../chunks/popover.component-DTjA1GSd.js"),r=require("../../chunks/popover.types-ChA9ccQ2.js"),i=require("../../chunks/radioGroup.types-DxRSugsr.js"),L=require("../../chunks/radiomark.component-YJNr68s7.js"),O=require("../../chunks/rating.component-FYKS_NCl.js"),N=require("../../chunks/ratingDots.component-DesbSj0q.js"),F=require("../../chunks/select.component-DoFwe4lJ.js"),H=require("../../chunks/sortableList.component-2yX2pXs7.js"),j=require("../../chunks/spinner.component-Dq6u4vVL.js"),E=require("../../chunks/spinner.types-BCLN5-H2.js"),m=require("../../chunks/styledAvatar.types-BG2G_U-W.js"),l=require("../../chunks/swatch.types-AZLB8OWG.js"),J=require("../../chunks/switch.component-Bs-8D1pU.js"),a=require("../../chunks/tab.types-B8hOk0uV.js"),K=require("../../chunks/tag.component-C98Wf07v.js"),_=require("../../chunks/tag.types-BnDFgTvb.js"),q=require("../../chunks/tagBlock.component-BWXHnUPn.js"),Q=require("../../chunks/text.component-BDDz5KQP.js"),U=require("../../chunks/textInput.component-DzUKTy1w.js"),X=require("../../chunks/textarea.component-DteG1L4y.js"),S=require("../../chunks/timePicker.component-BB9Pn9Aj.js"),Y=require("../../chunks/timeRange.component-7AbLiHJY.js"),Z=require("../../chunks/timestamp.component-BfmZPfy5.js"),$=require("./Toast/index.cjs"),ee=require("../../chunks/tooltip.component-DBw-hAPU.js"),te=require("../../chunks/numberInput.component-DG6IWAHs.js");exports.Alert=s.Alert;exports.alertButtonPositions=s.alertButtonPositions;exports.Avatar=v.Avatar;exports.avatarSizes=c.avatarSizes;exports.avatarVariants=c.avatarVariants;exports.AvatarGroup=T.AvatarGroup;exports.Button=g.Button;exports.buttonConfigVariants=e.buttonConfigVariants;exports.buttonIconPositions=e.buttonIconPositions;exports.buttonSizes=e.buttonSizes;exports.buttonSpinnerPlacements=e.buttonSpinnerPlacements;exports.buttonVariants=e.buttonVariants;exports.ButtonGroup=b.ButtonGroup;exports.Calendar=y.Calendar;exports.Card=P.Card;exports.cardSizes=C.cardSizes;exports.CharacterCounter=k.CharacterCounter;exports.Checkbox=z.WrappedCheckbox;exports.CheckboxGroup=h.WrappedCheckboxGroup;exports.ConversationCard=D.ConversationCard;exports.DatePicker=I.DatePicker;exports.DateFormats=x.DateFormats;exports.DateTimePicker=o.DateTimePicker;exports.DateTimePickerDefaultOptionValue=o.DateTimePickerDefaultOptionValue;exports.calendarViews=o.calendarViews;exports.Divider=V.Divider;exports.dividerOrientations=n.dividerOrientations;exports.dividerSizes=n.dividerSizes;exports.dividerVariants=n.dividerVariants;exports.Heading=f.WrappedHeading;exports.Icon=A.Icon;exports.iconSizes=B.iconSizes;exports.Link=W.Link;exports.Logo=p.Logo;exports.logoTypes=p.logoTypes;exports.Menu=G.Menu;exports.Modal=t.Modal;exports.modalMotionPresets=t.modalMotionPresets;exports.modalPlacements=t.modalPlacements;exports.modalScrollBehaviors=t.modalScrollBehaviors;exports.modalSizes=t.modalSizes;exports.NotificationCounter=R.NotificationCounter;exports.notificationCounterSizes=u.notificationCounterSizes;exports.notificationCounterVariants=u.notificationCounterVariants;exports.Picture=w.Picture;exports.PinInput=d.WrappedPinInput;exports.pinInputTypes=d.pinInputTypes;exports.Popover=M.Popover;exports.popoverSizes=r.popoverSizes;exports.popoverTriggerTypes=r.popoverTriggerTypes;exports.popoverVariants=r.popoverVariants;exports.RadioGroup=i.WrappedRadioGroup;exports.radioAlignments=i.radioAlignments;exports.radioTypes=i.radioTypes;exports.Radiomark=L.Radiomark;exports.Rating=O.WrappedRating;exports.RatingDots=N.WrappedRatingDots;exports.Select=F.WrappedSelect;exports.SortableList=H.SortableList;exports.Spinner=j.Spinner;exports.spinnerSizes=E.spinnerSizes;exports.StyledAvatar=m.StyledAvatar;exports.styledAvatarTypes=m.styledAvatarTypes;exports.Swatch=l.Swatch;exports.swatchSizes=l.swatchSizes;exports.Switch=J.WrappedSwitch;exports.Tabs=a.Tabs;exports.tabIconPositions=a.tabIconPositions;exports.tabSizes=a.tabSizes;exports.Tag=K.Tag;exports.closeButtonDisplays=_.closeButtonDisplays;exports.tagSizes=_.tagSizes;exports.TagBlock=q.TagBlock;exports.TagDisabledState=q.TagDisabledState;exports.Text=Q.WrappedText;exports.TextInput=U.WrappedTextInput;exports.Textarea=X.WrappedTextarea;exports.Meridiem=S.Meridiem;exports.TimePicker=S.TimePicker;exports.TimeRange=Y.TimeRange;exports.Timestamp=Z.Timestamp;exports.useToast=$.useToast;exports.Tooltip=ee.Tooltip;exports.NumberInput=te.WrappedNumberInput;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("../chunks/alert.types-BlvzpzTn.js"),g=require("../chunks/avatar.component-BGgZoVJS.js"),u=require("../chunks/avatar.types-Bmt5Uhfb.js"),b=require("../chunks/avatarGroup.component-BHchH_tF.js"),h=require("../chunks/button.component-DjdgBXDC.js"),e=require("../chunks/button.types-DXP4uRV8.js"),S=require("../chunks/buttonGroup.component-BXiKIlPf.js"),k=require("../chunks/calendar.component-IbKgfA9K.js"),C=require("../chunks/card.component-BmBiYbMV.js"),P=require("../chunks/card.types-MvkQTTZF.js"),D=require("../chunks/characterCounter.component-BRHLt929.js"),z=require("../chunks/checkbox.component-DdOVYSSc.js"),x=require("../chunks/checkboxGroup.component-CvHKP7gd.js"),M=require("../chunks/conversationCard.component-0D3jmvOf.js"),V=require("../chunks/datePicker.component-BuHqzdy_.js"),f=require("../chunks/datePicker.provider-B7-cWUkv.js"),r=require("../chunks/dateTimePicker.component-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("../chunks/alert.types-BlvzpzTn.js"),g=require("../chunks/avatar.component-BGgZoVJS.js"),u=require("../chunks/avatar.types-Bmt5Uhfb.js"),b=require("../chunks/avatarGroup.component-BHchH_tF.js"),h=require("../chunks/button.component-DjdgBXDC.js"),e=require("../chunks/button.types-DXP4uRV8.js"),S=require("../chunks/buttonGroup.component-BXiKIlPf.js"),k=require("../chunks/calendar.component-IbKgfA9K.js"),C=require("../chunks/card.component-BmBiYbMV.js"),P=require("../chunks/card.types-MvkQTTZF.js"),D=require("../chunks/characterCounter.component-BRHLt929.js"),z=require("../chunks/checkbox.component-DdOVYSSc.js"),x=require("../chunks/checkboxGroup.component-CvHKP7gd.js"),M=require("../chunks/conversationCard.component-0D3jmvOf.js"),V=require("../chunks/datePicker.component-BuHqzdy_.js"),f=require("../chunks/datePicker.provider-B7-cWUkv.js"),r=require("../chunks/dateTimePicker.component-jBeVvk_j.js"),I=require("../chunks/divider.component-BX3zyB7O.js"),n=require("../chunks/divider.types-DBNcs0IR.js"),w=require("../chunks/heading.component-DnoZOXdz.js"),B=require("../chunks/icon.component-B1hr5lLa.js"),A=require("../chunks/icon.types-2obj_NKG.js"),W=require("../chunks/link.component-_YXG8MDq.js"),d=require("../chunks/logo.types-88a31xCx.js"),G=require("../chunks/menu.component-DypBuCwv.js"),t=require("../chunks/modal.types-D_t0UdS6.js"),R=require("../chunks/notificationCounter.component-CBwi5vXa.js"),m=require("../chunks/notificationCounter.types-B_-siNfi.js"),L=require("../chunks/picture.component-BA2hgdZy.js"),l=require("../chunks/pinInput.types-ftBwVMLj.js"),O=require("../chunks/popover.component-DTjA1GSd.js"),i=require("../chunks/popover.types-ChA9ccQ2.js"),a=require("../chunks/radioGroup.types-DxRSugsr.js"),K=require("../chunks/radiomark.component-YJNr68s7.js"),N=require("../chunks/rating.component-FYKS_NCl.js"),F=require("../chunks/ratingDots.component-DesbSj0q.js"),H=require("../chunks/select.component-DoFwe4lJ.js"),j=require("../chunks/sortableList.component-2yX2pXs7.js"),E=require("../chunks/spinner.component-Dq6u4vVL.js"),J=require("../chunks/spinner.types-BCLN5-H2.js"),_=require("../chunks/styledAvatar.types-BG2G_U-W.js"),q=require("../chunks/swatch.types-AZLB8OWG.js"),Q=require("../chunks/switch.component-Bs-8D1pU.js"),s=require("../chunks/tab.types-B8hOk0uV.js"),U=require("../chunks/tag.component-C98Wf07v.js"),T=require("../chunks/tag.types-BnDFgTvb.js"),v=require("../chunks/tagBlock.component-BWXHnUPn.js"),X=require("../chunks/text.component-BDDz5KQP.js"),Y=require("../chunks/textInput.component-DzUKTy1w.js"),Z=require("../chunks/textarea.component-DteG1L4y.js"),y=require("../chunks/timePicker.component-BB9Pn9Aj.js"),$=require("../chunks/timeRange.component-7AbLiHJY.js"),ee=require("../chunks/timestamp.component-BfmZPfy5.js"),te=require("./components/Toast/index.cjs"),oe=require("../chunks/tooltip.component-DBw-hAPU.js"),re=require("../chunks/numberInput.component-DG6IWAHs.js"),ne=require("../chunks/withDarkMode-R08khTA6.js"),ie=require("../chunks/withLightMode-Crw8xtkD.js"),ae=require("./hooks/useBreakpoint/index.cjs"),se=require("./hooks/useColorMode/index.cjs"),ce=require("./hooks/useColorModeValue/index.cjs"),pe=require("./hooks/useDeviceType/index.cjs"),o=require("./shared/types/index.cjs"),ue=require("../chunks/theme-BFbOz0Jj.js"),c=require("../chunks/theme.provider-BWhqnOFC.js");exports.Alert=p.Alert;exports.alertButtonPositions=p.alertButtonPositions;exports.Avatar=g.Avatar;exports.avatarSizes=u.avatarSizes;exports.avatarVariants=u.avatarVariants;exports.AvatarGroup=b.AvatarGroup;exports.Button=h.Button;exports.buttonConfigVariants=e.buttonConfigVariants;exports.buttonIconPositions=e.buttonIconPositions;exports.buttonSizes=e.buttonSizes;exports.buttonSpinnerPlacements=e.buttonSpinnerPlacements;exports.buttonVariants=e.buttonVariants;exports.ButtonGroup=S.ButtonGroup;exports.Calendar=k.Calendar;exports.Card=C.Card;exports.cardSizes=P.cardSizes;exports.CharacterCounter=D.CharacterCounter;exports.Checkbox=z.WrappedCheckbox;exports.CheckboxGroup=x.WrappedCheckboxGroup;exports.ConversationCard=M.ConversationCard;exports.DatePicker=V.DatePicker;exports.DateFormats=f.DateFormats;exports.DateTimePicker=r.DateTimePicker;exports.DateTimePickerDefaultOptionValue=r.DateTimePickerDefaultOptionValue;exports.calendarViews=r.calendarViews;exports.Divider=I.Divider;exports.dividerOrientations=n.dividerOrientations;exports.dividerSizes=n.dividerSizes;exports.dividerVariants=n.dividerVariants;exports.Heading=w.WrappedHeading;exports.Icon=B.Icon;exports.iconSizes=A.iconSizes;exports.Link=W.Link;exports.Logo=d.Logo;exports.logoTypes=d.logoTypes;exports.Menu=G.Menu;exports.Modal=t.Modal;exports.modalMotionPresets=t.modalMotionPresets;exports.modalPlacements=t.modalPlacements;exports.modalScrollBehaviors=t.modalScrollBehaviors;exports.modalSizes=t.modalSizes;exports.NotificationCounter=R.NotificationCounter;exports.notificationCounterSizes=m.notificationCounterSizes;exports.notificationCounterVariants=m.notificationCounterVariants;exports.Picture=L.Picture;exports.PinInput=l.WrappedPinInput;exports.pinInputTypes=l.pinInputTypes;exports.Popover=O.Popover;exports.popoverSizes=i.popoverSizes;exports.popoverTriggerTypes=i.popoverTriggerTypes;exports.popoverVariants=i.popoverVariants;exports.RadioGroup=a.WrappedRadioGroup;exports.radioAlignments=a.radioAlignments;exports.radioTypes=a.radioTypes;exports.Radiomark=K.Radiomark;exports.Rating=N.WrappedRating;exports.RatingDots=F.WrappedRatingDots;exports.Select=H.WrappedSelect;exports.SortableList=j.SortableList;exports.Spinner=E.Spinner;exports.spinnerSizes=J.spinnerSizes;exports.StyledAvatar=_.StyledAvatar;exports.styledAvatarTypes=_.styledAvatarTypes;exports.Swatch=q.Swatch;exports.swatchSizes=q.swatchSizes;exports.Switch=Q.WrappedSwitch;exports.Tabs=s.Tabs;exports.tabIconPositions=s.tabIconPositions;exports.tabSizes=s.tabSizes;exports.Tag=U.Tag;exports.closeButtonDisplays=T.closeButtonDisplays;exports.tagSizes=T.tagSizes;exports.TagBlock=v.TagBlock;exports.TagDisabledState=v.TagDisabledState;exports.Text=X.WrappedText;exports.TextInput=Y.WrappedTextInput;exports.Textarea=Z.WrappedTextarea;exports.Meridiem=y.Meridiem;exports.TimePicker=y.TimePicker;exports.TimeRange=$.TimeRange;exports.Timestamp=ee.Timestamp;exports.useToast=te.useToast;exports.Tooltip=oe.Tooltip;exports.NumberInput=re.WrappedNumberInput;exports.withDarkMode=ne.withDarkMode;exports.withLightMode=ie.withLightMode;exports.useBreakpoint=ae.useBreakpoint;exports.useColorMode=se.useColorMode;exports.useColorModeValue=ce.useColorModeValue;exports.useDeviceType=pe.useDeviceType;exports.alignments=o.alignments;exports.flexDirections=o.flexDirections;exports.placements=o.placements;exports.statuses=o.statuses;exports.typographyVariants=o.typographyVariants;exports.colorModeThemeKey=ue.colorModeThemeKey;exports.KibbleThemeProvider=c.KibbleThemeProvider;exports.kibbleThemeConfig=c.kibbleThemeConfig;exports.system=c.system;
|
|
2
2
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -14,7 +14,7 @@ import { W as h } from "../../chunks/checkboxGroup.component-Cx2Gvii5.js";
|
|
|
14
14
|
import { C as R } from "../../chunks/conversationCard.component-D7hpX-QG.js";
|
|
15
15
|
import { D as w } from "../../chunks/datePicker.component-BmmxcyyX.js";
|
|
16
16
|
import { D as N } from "../../chunks/datePicker.provider-ElRAMKbN.js";
|
|
17
|
-
import { D as F, a as H, c as j } from "../../chunks/dateTimePicker.component-
|
|
17
|
+
import { D as F, a as H, c as j } from "../../chunks/dateTimePicker.component-D6REMP8B.js";
|
|
18
18
|
import { D as E } from "../../chunks/divider.component-CFOh4Nw3.js";
|
|
19
19
|
import { d as K, a as Q, b as U } from "../../chunks/divider.types-6MEkMNbx.js";
|
|
20
20
|
import { W as Y } from "../../chunks/heading.component-CpSAN3cv.js";
|
|
@@ -48,8 +48,8 @@ import { T as da, a as la } from "../../chunks/tagBlock.component-DjbevH0J.js";
|
|
|
48
48
|
import { W as Ta } from "../../chunks/text.component-DhuUgP3j.js";
|
|
49
49
|
import { W as ba } from "../../chunks/textInput.component-C7kdQ8hF.js";
|
|
50
50
|
import { W as Ca } from "../../chunks/textarea.component-W9VBnd4-.js";
|
|
51
|
-
import { M as ga, T as Da } from "../../chunks/timePicker.component-
|
|
52
|
-
import { T as za } from "../../chunks/timeRange.component-
|
|
51
|
+
import { M as ga, T as Da } from "../../chunks/timePicker.component-DmeGL-fM.js";
|
|
52
|
+
import { T as za } from "../../chunks/timeRange.component-Dy8zeWyN.js";
|
|
53
53
|
import { T as Aa } from "../../chunks/timestamp.component-DkLjxUsy.js";
|
|
54
54
|
import { useToast as Ba } from "./Toast/index.js";
|
|
55
55
|
import { T as Va } from "../../chunks/tooltip.component-CHohp2qn.js";
|
package/dist/esm/index.js
CHANGED
|
@@ -14,7 +14,7 @@ import { W as B } from "../chunks/checkboxGroup.component-Cx2Gvii5.js";
|
|
|
14
14
|
import { C as I } from "../chunks/conversationCard.component-D7hpX-QG.js";
|
|
15
15
|
import { D as R } from "../chunks/datePicker.component-BmmxcyyX.js";
|
|
16
16
|
import { D as K } from "../chunks/datePicker.provider-ElRAMKbN.js";
|
|
17
|
-
import { D as O, a as F, c as H } from "../chunks/dateTimePicker.component-
|
|
17
|
+
import { D as O, a as F, c as H } from "../chunks/dateTimePicker.component-D6REMP8B.js";
|
|
18
18
|
import { D as q } from "../chunks/divider.component-CFOh4Nw3.js";
|
|
19
19
|
import { d as J, a as Q, b as U } from "../chunks/divider.types-6MEkMNbx.js";
|
|
20
20
|
import { W as Y } from "../chunks/heading.component-CpSAN3cv.js";
|
|
@@ -48,8 +48,8 @@ import { T as lr, a as dr } from "../chunks/tagBlock.component-DjbevH0J.js";
|
|
|
48
48
|
import { W as Tr } from "../chunks/text.component-DhuUgP3j.js";
|
|
49
49
|
import { W as br } from "../chunks/textInput.component-C7kdQ8hF.js";
|
|
50
50
|
import { W as gr } from "../chunks/textarea.component-W9VBnd4-.js";
|
|
51
|
-
import { M as Dr, T as Pr } from "../chunks/timePicker.component-
|
|
52
|
-
import { T as kr } from "../chunks/timeRange.component-
|
|
51
|
+
import { M as Dr, T as Pr } from "../chunks/timePicker.component-DmeGL-fM.js";
|
|
52
|
+
import { T as kr } from "../chunks/timeRange.component-Dy8zeWyN.js";
|
|
53
53
|
import { T as Wr } from "../chunks/timestamp.component-DkLjxUsy.js";
|
|
54
54
|
import { useToast as Mr } from "./components/Toast/index.js";
|
|
55
55
|
import { T as Ar } from "../chunks/tooltip.component-CHohp2qn.js";
|
package/package.json
CHANGED