@app-studio/web 0.1.7 → 0.1.9
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/components/Form/TextArea/TextArea/TextArea.state.d.ts +2 -2
- package/dist/web.cjs.development.js +4054 -151
- package/dist/web.cjs.development.js.map +1 -1
- package/dist/web.cjs.production.min.js +1 -1
- package/dist/web.cjs.production.min.js.map +1 -1
- package/dist/web.esm.js +4036 -17
- package/dist/web.esm.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.cjs.production.min.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"web.cjs.production.min.js","sources":["../src/components/Button/Button/Button.style.ts","../src/components/Button/Button/Button.view.tsx","../src/components/Form/Checkbox/Checkbox/Checkbox.style.ts","../src/components/Form/Checkbox/Checkbox/Checkbox.view.tsx","../src/components/Form/CountryPicker/CountryPicker/CountryPicker.style.ts","../src/components/Form/CountryPicker/CountryPicker/CountryPicker.view.tsx","../src/components/Form/DatePicker/DatePicker/DatePicker.view.tsx","../src/components/Form/Password/Password/Password.view.tsx","../src/components/Form/Select/Select/Select.style.ts","../src/components/Form/Select/Select/Select.view.tsx","../src/components/Form/Select/Select/Select.state.ts","../src/components/Form/Switch/Switch/Switch.style.ts","../src/components/Form/Switch/Switch/Switch.view.tsx","../src/components/Form/TextArea/TextArea/TextArea.view.tsx","../src/components/Form/TextField/TextField/TextField.view.tsx","../src/components/Layout/Center/Center/Center.view.tsx","../src/components/Layout/Horizontal/Horizontal/Horizontal.view.tsx","../src/components/Layout/Vertical/Vertical/Vertical.view.tsx","../src/components/Link/Link/Link.style.ts","../src/components/Link/Link/Link.view.tsx","../src/components/Loader/Loader/Loader.style.ts","../src/components/Loader/Loader/Loader.view.tsx","../src/components/Modal/Modal/Modal.style.ts","../src/components/Modal/Modal.tsx","../src/components/Modal/Modal/Modal.view.tsx","../src/components/Text/Text/Text.style.ts","../src/components/Text/Text/Text.view.tsx","../src/components/Button/Button.tsx","../src/components/Button/Button/Button.state.ts","../src/components/Layout/Center/Center.tsx","../src/components/Form/Checkbox/Checkbox.tsx","../src/components/Form/Checkbox/Checkbox/Checkbox.state.ts","../src/components/Form/CountryPicker/CountryPicker.tsx","../src/components/Form/CountryPicker/CountryPicker/CountryPicker.state.ts","../src/components/Form/DatePicker/DatePicker.tsx","../src/components/Form/DatePicker/DatePicker/DatePicker.state.ts","../src/components/Layout/Horizontal/Horizontal.tsx","../src/components/Link/Link.tsx","../src/components/Link/Link/Link.state.ts","../src/components/Loader/Loader.tsx","../src/components/Form/Password/Password.tsx","../src/components/Form/Password/Password/Password.state.ts","../src/components/Form/Select/Select.tsx","../src/components/Form/Switch/Switch.tsx","../src/components/Form/Switch/Switch/Switch.state.ts","../src/components/Text/Text.tsx","../src/components/Form/TextArea/TextArea.tsx","../src/components/Form/TextArea/TextArea/TextArea.state.ts","../src/components/Form/TextField/TextField.tsx","../src/components/Form/TextField/TextField/TextField.state.ts","../src/components/Layout/Vertical/Vertical.tsx"],"sourcesContent":["import { CSSProperties } from 'react';\n\nimport { Shape, Size } from './Button.type';\n\nexport const ButtonSizes: Record<Size, CSSProperties> = {\n xs: {\n width: 79,\n paddingTop: 8,\n paddingBottom: 8,\n paddingLeft: 12,\n paddingRight: 12,\n fontWeight: 600,\n fontSize: 'xs',\n lineHeight: 16,\n letterSpacing: 1.25,\n },\n sm: {\n width: 128,\n paddingTop: 10,\n paddingBottom: 10,\n paddingLeft: 16,\n paddingRight: 16,\n fontWeight: 600,\n fontSize: 'sm',\n lineHeight: 20,\n letterSpacing: 1.25,\n },\n md: {\n width: 144,\n paddingTop: 12,\n paddingBottom: 12,\n paddingLeft: 18,\n paddingRight: 18,\n fontWeight: 600,\n fontSize: 'md',\n lineHeight: 24,\n letterSpacing: 1.25,\n },\n lg: {\n width: 178,\n paddingTop: 14,\n paddingBottom: 14,\n paddingLeft: 22,\n paddingRight: 22,\n fontWeight: 600,\n fontSize: 'lg',\n lineHeight: 24,\n letterSpacing: 1.25,\n },\n xl: {\n width: 220,\n paddingTop: 16,\n paddingBottom: 16,\n paddingLeft: 26,\n paddingRight: 26,\n fontWeight: 600,\n fontSize: 'xl',\n lineHeight: 24,\n letterSpacing: 1.25,\n },\n};\n\nexport const ButtonShapes: Record<Shape, number | string> = {\n sharp: 0,\n rounded: 4,\n pillShaped: 24,\n};\n\nexport const IconSizes: Record<Size, CSSProperties> = {\n xs: {\n width: 24,\n height: 24,\n padding: 12,\n },\n sm: {\n width: 24,\n height: 24,\n padding: 15,\n },\n md: {\n width: 36,\n height: 36,\n padding: 15,\n },\n lg: {\n width: 36,\n height: 36,\n padding: 18,\n },\n xl: {\n width: 36,\n height: 36,\n padding: 24,\n },\n};\n","import React, { CSSProperties } from 'react';\nimport { Element } from 'app-studio';\nimport { Link } from 'src/components';\n\nimport { ButtonProps } from './Button.props';\nimport { ButtonShapes, ButtonSizes, IconSizes } from './Button.style';\nimport { Variant } from './Button.type';\n\nconst ButtonView: React.FC<ButtonProps> = ({\n icon,\n shadow,\n children,\n ariaLabel,\n externalHref,\n isAuto = false,\n isFilled = false,\n isIconRounded = false,\n isLoading = false,\n isDisabled = false,\n size = 'md',\n variant = 'filled',\n iconPosition = 'left',\n colorScheme = 'theme.primary',\n shape = 'rounded',\n onClick = () => {},\n ...props\n}) => {\n const isActive = !(isDisabled || isLoading);\n\n const defaultNativeProps = { disabled: !isActive };\n\n const buttonColor = isActive ? colorScheme : 'theme.disabled';\n\n const ButtonVariants: Record<Variant, CSSProperties> = {\n filled: {\n backgroundColor: buttonColor,\n color: 'color.white',\n },\n outline: {\n backgroundColor: 'transparent',\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: colorScheme,\n color: buttonColor,\n },\n link: {\n backgroundColor: 'transparent',\n border: 'none',\n color: buttonColor,\n textDecorationLine: 'underline',\n },\n ghost: {\n backgroundColor: 'transparent',\n border: 'none',\n color: buttonColor,\n },\n };\n\n const buttonSizeStyles = ButtonSizes[size];\n\n const buttonVariant = ButtonVariants[variant];\n\n const scaleWidth = {\n width: isAuto ? 'fit-content' : isFilled ? '100%' : buttonSizeStyles.width,\n };\n\n const changePadding = {\n padding: isIconRounded ? IconSizes[size].padding : ButtonSizes[size].padding,\n };\n\n const content = (\n <>\n {icon && iconPosition === 'left' && !isLoading && icon}\n {children}\n {icon && iconPosition === 'right' && !isLoading && icon}\n </>\n );\n\n return (\n <Element\n gap={8}\n as=\"button\"\n role=\"button\"\n border=\"none\"\n color=\"color.white\"\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"center\"\n ariaLabel={ariaLabel}\n backgroundColor={buttonColor}\n borderRadius={ButtonShapes[shape]}\n onClick={props.onClick ?? onClick}\n cursor={isActive ? 'pointer' : 'default'}\n {...defaultNativeProps} // set default native html button properties\n {...buttonSizeStyles} // set default width, paddings and fonts\n {...buttonVariant} // changes default background color, color and border\n {...scaleWidth} //changes the actual fixed width when isAuto or isFilled are true\n {...changePadding} // changes the actual padding when variant equals to circled\n {...shadow}\n {...props}\n >\n {variant === 'link' && externalHref ? (\n <Link href={externalHref} textDecorationColor={colorScheme} colorScheme={colorScheme} isExternal>\n {content}\n </Link>\n ) : (\n content\n )}\n </Element>\n );\n};\n\nexport default ButtonView;\n","import { CSSProperties } from 'react';\n\nimport { Size } from './Checkbox.type';\n\nexport const Sizes: Record<Size, CSSProperties> = {\n xs: { height: 8, width: 8 },\n sm: { height: 12, width: 12 },\n md: { height: 18, width: 18 },\n lg: { height: 24, width: 24 },\n xl: { height: 30, width: 30 },\n '2xl': { height: 36, width: 36 },\n '3xl': { height: 42, width: 42 },\n '4xl': { height: 48, width: 48 },\n '5xl': { height: 54, width: 54 },\n '6xl': { height: 60, width: 60 },\n};\n\nexport const IconSizes: Record<Size, number> = {\n xs: 6,\n sm: 12,\n md: 18,\n lg: 24,\n xl: 30,\n '2xl': 36,\n '3xl': 42,\n '4xl': 48,\n '5xl': 54,\n '6xl': 60,\n};\n","import React from 'react';\nimport { Typography } from 'app-studio';\nimport { Center } from 'src/components';\nimport { Label } from 'src/components/Form/Label/Label';\nimport { CheckSvg, IndeterminateSvg } from 'src/components/Svg';\n\nimport { CheckboxViewProps } from './Checkbox.props';\nimport { IconSizes, Sizes } from './Checkbox.style';\n\nconst CheckboxView: React.FC<CheckboxViewProps> = ({\n id,\n icon,\n name,\n label,\n isChecked,\n onChange,\n onValueChange,\n shadow = {},\n size = 'md',\n colorScheme = 'theme.primary',\n error = false,\n isSelected = false,\n isHovered = false,\n isDisabled = false,\n isReadOnly = false,\n isIndeterminate = false,\n defaultIsSelected = false,\n setIsSelected = () => {},\n setIsHovered = () => {},\n styles = { checkbox: {}, label: {} },\n ...props\n}) => {\n const handleHover = () => setIsHovered(!isHovered);\n\n const handleChange = () => {\n if (!isReadOnly && !isDisabled) {\n if (isChecked === undefined) {\n setIsSelected(!isSelected);\n } else {\n if (onChange) onChange(!isChecked);\n if (onValueChange) onValueChange(!isChecked);\n }\n }\n };\n\n const checkboxStyle = {\n container: {\n gap: 10,\n display: 'flex',\n alignItems: 'center',\n height: 'fit-content',\n width: 'fit-content',\n color: error ? 'theme.error' : isDisabled ? 'theme.disabled' : 'color.blueGray.700',\n cursor: isDisabled ? 'not-allowed' : isReadOnly ? 'default' : 'pointer',\n ...styles['label'],\n },\n checkbox: {\n ...(isDisabled\n ? { backgroundColor: 'theme.disabled' }\n : ((isChecked || isSelected) && !isIndeterminate) || isIndeterminate\n ? { backgroundColor: colorScheme }\n : {\n borderWidth: 2,\n borderColor: error ? 'theme.error' : isHovered ? 'color.gray.500' : 'color.gray.300',\n borderStyle: 'solid',\n }),\n borderRadius: 3,\n filter: isHovered ? 'brightness(0.9)' : undefined,\n ...Sizes[size],\n ...shadow,\n ...styles['checkbox'],\n },\n };\n\n return (\n <Label\n htmlFor={id}\n as=\"div\"\n onClick={handleChange}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n size={Typography.fontSizes[size]}\n {...checkboxStyle.container}\n {...props}\n >\n <Center {...checkboxStyle.checkbox}>\n {isIndeterminate ? (\n <IndeterminateSvg />\n ) : (\n (isChecked || isSelected) && (icon ?? <CheckSvg size={IconSizes[size]} />)\n )}\n </Center>\n {label}\n </Label>\n );\n};\n\nexport default CheckboxView;\n","import { Size } from './CountryPicker.type';\n\nexport const IconSizes: Record<Size, number> = {\n xs: 8,\n sm: 10,\n md: 12,\n lg: 14,\n xl: 16,\n};\n\nexport const LabelSizes: Record<Size, number> = {\n xs: 8,\n sm: 10,\n md: 12,\n lg: 14,\n xl: 16,\n};\n","import React, { useEffect, useState } from 'react';\nimport { Element, Input, Typography, useTheme } from 'app-studio';\nimport { FieldContainer, FieldContent, FieldIcons, FieldLabel, FieldWrapper } from 'src/components/Layout/Input';\nimport { ArrowDownSvg } from 'src/components/Svg/ArrowDown';\nimport { ArrowUpSvg } from 'src/components/Svg/ArrowUp';\n\nimport countryList from '../countries.json';\n\nimport { CountryPickerViewProps, DropDownItemProps, DropDownProps } from './CountryPicker.props';\nimport { IconSizes } from './CountryPicker.style';\nimport { Country } from './CountryPicker.type';\n\nconst CountryList: React.FC<DropDownProps> = (props) => <Element as=\"ul\" {...props} />;\n\nconst CountrySelector: React.FC<any> = (props) => <Input type=\"country\" {...props} />;\n\nconst CountryItem: React.FC<DropDownItemProps> = (props) => <Element as=\"li\" {...props} />;\n\nexport const DropDownItem: React.FC<DropDownItemProps> = ({\n option,\n size = 'md',\n callback = () => {},\n styles = { text: {} },\n}) => {\n const [isHovered, setIsHovered] = useState(false);\n\n const handleOptionClick = (event: any) => {\n event.stopPropagation();\n callback(option);\n };\n const handleHover = () => setIsHovered(!isHovered);\n return (\n <CountryItem\n margin={0}\n role=\"DropDownItem\"\n listStyleType=\"none\"\n paddingVertical={6}\n paddingHorizontal={12}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n onClick={handleOptionClick}\n fontSize={Typography.fontSizes[size]}\n backgroundColor={isHovered ? 'trueGray.100' : 'transparent'}\n {...styles['text']}\n >\n {option}\n </CountryItem>\n );\n};\n\nexport const DropDown: React.FC<DropDownProps> = ({\n size,\n styles = { dropDown: {} },\n options,\n callback = () => {},\n}) => {\n const handleCallback = (option: string) => callback(option);\n return (\n <CountryList\n role=\"dropDown\"\n margin={0}\n padding={0}\n top=\"100%\"\n width=\"100%\"\n display=\"flex\"\n zIndex={1000}\n overflow=\"auto\"\n maxHeight=\"300px\"\n borderRadius={4}\n position=\"absolute\"\n flexDirection=\"column\"\n backgroundColor=\"white\"\n boxShadow=\"rgba(0, 0, 0, 0.07) 0px 1px 1px, rgba(0, 0, 0, 0.07) 0px 2px 2px, rgba(0, 0, 0, 0.07) 0px 4px 4px, rgba(0, 0, 0, 0.07) 0px 8px 8px, rgba(0, 0, 0, 0.07) 0px 16px 16px\"\n {...styles['dropDown']}\n >\n {options.map((option: Country) => (\n <DropDownItem\n key={option.code}\n size={size}\n option={option.name}\n callback={handleCallback}\n {...styles['text']}\n />\n ))}\n </CountryList>\n );\n};\n\nconst CountryPickerView: React.FC<CountryPickerViewProps> = ({\n id,\n name,\n label,\n selected,\n placeholder,\n helperText,\n hide = false,\n error = false,\n isHovered = false,\n isFocused = false,\n isAutoFocus = false,\n isDisabled = false,\n isReadOnly = false,\n shadow = {},\n newOptions = [],\n size = 'md',\n variant = 'default',\n shape = 'default',\n colorScheme = 'theme.primary',\n onChange,\n onBlur = () => {},\n setHide = () => {},\n setNewOptions = () => {},\n setIsHovered = () => {},\n setIsFocused = () => {},\n setSelected = () => {},\n styles = {\n text: {},\n icon: {},\n label: {},\n dropDown: {},\n helperText: {},\n box: {},\n },\n ...props\n}) => {\n const { getColor } = useTheme();\n const IconColor = getColor('color.blueGray.700');\n\n const handleHover = () => setIsHovered(!isHovered);\n const handleFocus = () => setIsFocused(true);\n\n const handleCallback = (option: string) => {\n setHide(!hide);\n setSelected(option);\n };\n\n const handleClick = () => {\n if (!isDisabled && !isReadOnly) {\n setHide(!hide);\n }\n };\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const selectedCountry = event.target.value;\n const filteredCountries = countryList.filter((country) =>\n country.name.toLowerCase().startsWith(selectedCountry.toLowerCase())\n );\n if (hide) setHide(false);\n setSelected(event.target.value);\n setNewOptions(filteredCountries);\n if (onChange) onChange(event);\n };\n\n const handleBlur = (event: any) => {\n onBlur(event);\n setIsFocused(false);\n };\n\n useEffect(() => {\n if (onChange) onChange(selected); // Call onChange when selectedCountry changes\n }, [onChange, selected]);\n\n const isWithLabel = !!(isFocused && label);\n\n const fieldStyles = {\n margin: 0,\n paddingVerical: 8,\n paddingHorizonatl: 0,\n width: '100%',\n heigth: '100%',\n border: 'none',\n on: { focus: { outline: 'none' } },\n fontSize: Typography.fontSizes[size],\n backgroundColor: 'transparent',\n color: isDisabled ? 'color.trueGray.600' : 'color.blueGray.700',\n cursor: isDisabled ? 'not-allowed' : 'auto',\n ...styles['field'],\n };\n\n return (\n <FieldContainer helperText={helperText} error={error} styles={styles} onClick={handleClick}>\n <FieldContent\n label={label}\n size={size}\n error={error}\n shape={shape}\n styles={styles}\n shadow={shadow}\n variant={variant}\n value={selected}\n color={colorScheme}\n isHovered={isHovered}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isFocused={isFocused}\n isWithLabel={isWithLabel}\n colorScheme={colorScheme}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n >\n <FieldWrapper>\n {isWithLabel && (\n <FieldLabel htmlFor={id} color={colorScheme} error={error} {...styles}>\n {label}\n </FieldLabel>\n )}\n <CountrySelector\n id={id}\n name={name}\n placeholder={placeholder}\n readOnly={isReadOnly}\n disabled={isDisabled}\n autoFocus={isAutoFocus}\n onBlur={handleBlur}\n onFocus={handleFocus}\n {...fieldStyles}\n {...props}\n value={selected}\n onChange={handleChange}\n />\n </FieldWrapper>\n <FieldIcons>\n {hide ? (\n <ArrowDownSvg size={IconSizes[size]} color={IconColor} style={styles['icon']} />\n ) : (\n <ArrowUpSvg size={IconSizes[size]} color={IconColor} style={styles['icon']} />\n )}\n </FieldIcons>\n </FieldContent>\n {!hide && <DropDown size={size} styles={styles} options={newOptions} callback={handleCallback} />}\n </FieldContainer>\n );\n};\n\nexport default CountryPickerView;\n","import React from 'react';\nimport { Input, Typography } from 'app-studio';\nimport { FieldContainer } from 'src/components/Layout/Input/FieldContainer/FieldContainer';\nimport { FieldContent } from 'src/components/Layout/Input/FieldContent/FieldContent';\nimport { FieldLabel } from 'src/components/Layout/Input/FieldLabel/FieldLabel';\nimport { FieldWrapper } from 'src/components/Layout/Input/FieldWrapper/FieldWrapper';\n\nimport { DatePickerViewProps } from './DatePicker.props';\n\nconst DatePickerContent = (props: any) => <Input type=\"date\" {...props} />;\n\nconst DatePickerView: React.FC<DatePickerViewProps> = ({\n id,\n icon,\n name,\n label,\n date,\n children,\n helperText,\n shadow = {},\n size = 'md',\n variant = 'default',\n shape = 'default',\n colorScheme = 'theme.primary',\n styles = { box: {}, label: {}, helperText: {}, text: {}, field: {} },\n error = false,\n isHovered = false,\n isFocused = false,\n isDisabled = false,\n isReadOnly = false,\n setDate = () => {},\n setIsFocused = () => {},\n setIsHovered = () => {},\n onChange,\n onChangeText,\n ...props\n}) => {\n const isWithLabel = !!(isFocused && label);\n\n const handleHover = () => setIsHovered(!isHovered);\n const handleFocus = () => setIsFocused(true);\n\n const handleDateChange = (event: any) => {\n if (typeof event === 'string') {\n setDate(event);\n if (onChangeText) onChangeText(event);\n } else {\n setDate(event.target.value);\n if (onChange) onChange(event);\n }\n };\n\n const fieldStyles = {\n margin: 0,\n paddingVertical: 8,\n paddingHorizontal: 0,\n width: '100%',\n heigth: '100%',\n border: 'none',\n on: {\n focus: {\n outline: 'none',\n backgroundColor: 'transparent',\n },\n },\n fontSize: Typography.fontSizes[size],\n backgroundColor: 'transparent',\n color: isDisabled ? 'trueGray.600' : 'blueGray.700',\n cursor: isDisabled ? 'not-allowed' : isReadOnly ? 'auto' : 'pointer',\n ...styles['field'],\n };\n\n return (\n <FieldContainer helperText={helperText} error={error} styles={styles}>\n <FieldContent\n label={label}\n size={size}\n error={error}\n shape={shape}\n styles={styles}\n shadow={shadow}\n variant={variant}\n value={date}\n color={colorScheme}\n isHovered={isHovered}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isFocused={isFocused}\n isWithLabel={isWithLabel}\n colorScheme={colorScheme}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n >\n <FieldWrapper>\n {isWithLabel && (\n <FieldLabel htmlFor={id} color={colorScheme} error={error} {...styles}>\n {label}\n </FieldLabel>\n )}\n <DatePickerContent\n id={id}\n name={name}\n value={date}\n onFocus={handleFocus}\n onChange={handleDateChange}\n disabled={isDisabled}\n readOnly={isReadOnly}\n {...fieldStyles}\n {...(onChangeText && { onChangeText: handleDateChange })}\n {...props}\n />\n </FieldWrapper>\n </FieldContent>\n </FieldContainer>\n );\n};\n\nexport default DatePickerView;\n","import React from 'react';\nimport { TextField, View } from 'src/components';\n\nimport { PasswordViewProps } from './Password.props';\n\nconst PasswordView: React.FC<PasswordViewProps> = ({\n name,\n visibleIcon,\n hiddenIcon,\n isDisabled = false,\n isVisible = false,\n setIsVisible = () => {},\n ...props\n}) => (\n <TextField\n name={name}\n type={isVisible ? 'text' : 'password'}\n rightChild={\n <View\n onClick={() => {\n if (!isDisabled) setIsVisible(!isVisible);\n }}\n >\n {isVisible ? visibleIcon : hiddenIcon}\n </View>\n }\n isClearable={false}\n {...props}\n />\n);\n\nexport default PasswordView;\n","import { CSSProperties } from 'react';\n\nimport { Size } from './Select.type';\n\nexport const Sizes: Record<Size, CSSProperties> = {\n xs: { height: 6, width: 6 },\n sm: { height: 12, width: 12 },\n md: { height: 18, width: 18 },\n lg: { height: 24, width: 24 },\n xl: { height: 30, width: 30 },\n};\n\nexport const IconSizes: Record<Size, number> = {\n xs: 8,\n sm: 10,\n md: 12,\n lg: 14,\n xl: 16,\n};\n","import React, { useCallback } from 'react';\nimport { Element } from 'app-studio';\nimport { Typography } from 'app-studio';\nimport { Horizontal, Text } from 'src/components';\nimport { FieldContainer } from 'src/components/Layout/Input/FieldContainer/FieldContainer';\nimport { FieldContent } from 'src/components/Layout/Input/FieldContent/FieldContent';\nimport { FieldIcons } from 'src/components/Layout/Input/FieldIcons/FieldIcons';\nimport { FieldLabel } from 'src/components/Layout/Input/FieldLabel/FieldLabel';\nimport { FieldWrapper } from 'src/components/Layout/Input/FieldWrapper/FieldWrapper';\nimport { ArrowDownSvg, ArrowUpSvg, CloseSvg } from 'src/components/Svg';\n\nimport {\n DropDownProps,\n HiddenSelectProps,\n ItemProps,\n MultiSelectProps,\n SelectBoxProps,\n SelectViewProps,\n} from './Select.props';\nimport { useItemState } from './Select.state';\nimport { IconSizes } from './Select.style';\n\nconst Item: React.FC<ItemProps> = ({ isHovered, setIsHovered, option, size = 'md', callback = () => {}, ...props }) => {\n const handleOptionClick = (option: string) => callback(option);\n const handleHover = () => setIsHovered(!isHovered);\n\n return (\n <Element\n as=\"li\"\n margin={0}\n paddingVertical={8}\n paddingHorizontal={12}\n listStyleType=\"none\"\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n fontSize={Typography.fontSizes[size]}\n onClick={() => handleOptionClick(option)}\n backgroundColor={isHovered ? 'trueGray.100' : 'transparent'}\n {...props}\n >\n {option}\n </Element>\n );\n};\n\nconst SelectBox: React.FC<SelectBoxProps> = ({\n size = 'md',\n styles = { field: {}, text: {} },\n selected,\n isDisabled,\n placeholder,\n removeOption = () => {},\n}) => {\n const fieldStyles = {\n margin: 0,\n width: '95%',\n heigth: '100%',\n border: 'none',\n paddingVertical: 8,\n paddingHorizontal: 0,\n fontSize: Typography.fontSizes[size],\n backgroundColor: 'transparent',\n color: isDisabled ? 'trueGray.600' : 'blueGray.700',\n cursor: isDisabled ? 'not-allowed' : 'auto',\n ...styles['field'],\n ...styles['text'],\n };\n\n return (\n <Text {...fieldStyles}>\n {(selected === '' || (selected && selected.length === 0)) && !!placeholder ? (\n placeholder\n ) : (\n <>\n {typeof selected === 'string'\n ? selected\n : selected &&\n selected.length > 0 && (\n <Horizontal gap={6}>\n {selected.map((option) => (\n <MultiSelect key={option} option={option} removeOption={removeOption} />\n ))}\n </Horizontal>\n )}\n </>\n )}\n </Text>\n );\n};\n\nconst HiddenSelect: React.FC<HiddenSelectProps> = ({\n id,\n name,\n selected,\n onChange,\n isMulti = false,\n isDisabled = false,\n isReadOnly = false,\n options = [],\n ...props\n}) => {\n const handleChange = (event: any) => {\n if (onChange) onChange(event);\n };\n return (\n <Element\n id={id}\n name={name}\n as=\"select\"\n opacity={0}\n width={0}\n height={0}\n position=\"absolute\"\n value={selected}\n disabled={isDisabled}\n readOnly={isReadOnly}\n onChange={handleChange}\n multiple={isMulti}\n {...props}\n >\n {options.map((option) => {\n return (\n <option key={option} value={option}>\n {option}\n </option>\n );\n })}\n </Element>\n );\n};\n\nconst DropDown: React.FC<DropDownProps> = ({ size, styles = { dropDown: {} }, options, callback = () => {} }) => {\n const itemStates = useItemState();\n const handleCallback = (option: string) => callback(option);\n const shadow =\n typeof document !== undefined\n ? {\n boxShadow:\n 'rgba(0, 0, 0, 0.07) 0px 1px 1px, rgba(0, 0, 0, 0.07) 0px 2px 2px, rgba(0, 0, 0, 0.07) 0px 4px 4px, rgba(0, 0, 0, 0.07) 0px 8px 8px, rgba(0, 0, 0, 0.07) 0px 16px 16px',\n }\n : {\n elevation: 2,\n shadowColor: 'rgba(0, 0, 0, 0.07)',\n shadowOffset: {\n width: 0,\n height: 1,\n },\n shadowOpacity: 1,\n shadowRadius: 1,\n };\n return (\n <Element\n as=\"ul\"\n role=\"dropdown\"\n top=\"100%\"\n width=\"100%\"\n display=\"flex\"\n zIndex={1000}\n overflowY=\"auto\"\n marginTop={5}\n marginLeft={0}\n marginRight={0}\n marginBottom={0}\n padding={0}\n borderRadius={4}\n position=\"absolute\"\n flexDirection=\"column\"\n backgroundColor=\"white\"\n justifyContent=\"space-evenly\"\n {...shadow}\n {...styles['dropDown']}\n >\n {options.map((option) => (\n <Item key={option} size={size} option={option} callback={handleCallback} {...itemStates} {...styles['text']} />\n ))}\n </Element>\n );\n};\n\nexport const MultiSelect: React.FC<MultiSelectProps> = ({ option, size = 'md', removeOption = () => {}, ...props }) => {\n const handleClick = () => removeOption(option);\n\n return (\n <Horizontal\n gap={10}\n padding={6}\n borderRadius={4}\n alignItems=\"center\"\n fontSize={Typography.fontSizes[size]}\n backgroundColor=\"trueGray.300\"\n onClick={(event: any) => event.stopPropagation()}\n {...props}\n >\n <Text size={size}>{option}</Text>\n <CloseSvg role=\"close-button\" color=\"inherit\" size={IconSizes[size]} onClick={handleClick} />\n </Horizontal>\n );\n};\n\nconst SelectView: React.FC<SelectViewProps> = ({\n id,\n name,\n label,\n selected,\n placeholder,\n helperText,\n hide = false,\n error = false,\n isMulti = false,\n isFocused = false,\n isHovered = false,\n isDisabled = false,\n isReadOnly = false,\n options = [],\n shadow = {},\n size = 'md',\n colorScheme = 'theme.primary',\n shape = 'default',\n variant = 'default',\n styles = {\n text: {},\n icon: {},\n dropDown: {},\n selectBox: {},\n label: {},\n helperText: {},\n },\n onChange = () => {},\n setHide = () => {},\n setSelected = () => {},\n setIsHovered = () => {},\n setIsFocused = () => {},\n ...props\n}) => {\n const isWithLabel = !!(isFocused && label);\n\n const handleHover = () => setIsHovered(!isHovered);\n const handleFocus = () => setIsFocused(true);\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n event.stopPropagation();\n setHide(!hide);\n setIsFocused(!isFocused);\n };\n\n const handleCallback = useCallback(\n (option: string) => {\n setHide(!hide);\n if (isMulti && Array.isArray(selected)) {\n !selected.includes(option) && setSelected([...selected, option]);\n } else {\n setSelected(option);\n }\n },\n\n [hide, isMulti, selected]\n );\n\n const handleRemoveOption = (selectedOption: string) => {\n if (Array.isArray(selected) && selected.includes(selectedOption)) {\n const newSelected = selected.filter((option) => option !== selectedOption);\n setSelected(newSelected.length === 0 ? [] : newSelected);\n }\n };\n\n return (\n <FieldContainer\n role=\"SelectBox\"\n helperText={helperText}\n error={error}\n styles={styles}\n onClick={isDisabled || isReadOnly ? () => {} : handleClick}\n >\n <FieldContent\n label={label}\n size={size}\n error={error}\n shape={shape}\n styles={styles}\n shadow={shadow}\n variant={variant}\n value={selected}\n color={colorScheme}\n isHovered={isHovered}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isFocused={isFocused}\n isWithLabel={isWithLabel}\n colorScheme={colorScheme}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n >\n <FieldWrapper>\n {isWithLabel && (\n <FieldLabel htmlFor={id} color={colorScheme} error={error} {...styles}>\n {label}\n </FieldLabel>\n )}\n <HiddenSelect\n id={id}\n name={name}\n options={options}\n onChange={onChange}\n selected={selected}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isMulti={isMulti}\n onFocus={handleFocus}\n {...props}\n />\n <SelectBox\n size={size}\n styles={styles}\n selected={selected}\n isDisabled={isDisabled}\n placeholder={placeholder}\n removeOption={handleRemoveOption}\n />\n </FieldWrapper>\n <FieldIcons>\n {!isReadOnly && !isDisabled && (\n <>\n {hide ? (\n <ArrowDownSvg color=\"inherit\" size={IconSizes[size]} style={styles.icon} />\n ) : (\n <ArrowUpSvg color=\"inherit\" size={IconSizes[size]} style={styles.icon} />\n )}\n </>\n )}\n </FieldIcons>\n </FieldContent>\n {!hide && <DropDown size={size} styles={styles} options={options} callback={handleCallback} />}\n </FieldContainer>\n );\n};\n\nexport default SelectView;\n","import React from 'react';\n\nimport { SelectProps } from './Select.props';\n\nexport const useSelectState = ({ placeholder, isMulti, options }: SelectProps) => {\n const defaultSelected = placeholder ? (isMulti ? [] : '') : options[0];\n\n const [hide, setHide] = React.useState(true);\n const [isHovered, setIsHovered] = React.useState(false);\n const [isFocused, setIsFocused] = React.useState(false);\n const [selected, setSelected] = React.useState<string | Array<string>>(defaultSelected);\n return { selected, setSelected, hide, setHide, isHovered, setIsHovered, isFocused, setIsFocused };\n};\n\nexport const useItemState = () => {\n const [isHovered, setIsHovered] = React.useState(false);\n\n return { isHovered, setIsHovered };\n};\n","import { CSSProperties } from 'react';\n\nimport { Size } from './Switch.type';\n\nexport const KnobSizes: Record<Size, CSSProperties> = {\n xs: { height: 6, width: 6 },\n sm: { height: 9, width: 9 },\n md: { height: 12, width: 12 },\n lg: { height: 15, width: 15 },\n xl: { height: 18, width: 18 },\n '2xl': { height: 21, width: 21 },\n '3xl': { height: 24, width: 24 },\n '4xl': { height: 27, width: 27 },\n '5xl': { height: 30, width: 30 },\n '6xl': { height: 33, width: 33 },\n};\n\nexport const SliderSizes: Record<Size, CSSProperties> = {\n xs: {\n height: 16,\n width: 28,\n },\n sm: {\n height: 20,\n width: 36,\n },\n md: {\n height: 24,\n width: 44,\n },\n lg: {\n height: 28,\n width: 52,\n },\n xl: {\n height: 32,\n width: 60,\n },\n '2xl': {\n height: 36,\n width: 68,\n },\n '3xl': {\n height: 40,\n width: 76,\n },\n '4xl': {\n height: 44,\n width: 84,\n },\n '5xl': {\n height: 48,\n width: 92,\n },\n '6xl': {\n height: 52,\n width: 100,\n },\n};\n\nexport const SliderPadding: Record<Size, Record<string, number>> = {\n xs: { paddingVertical: 0, paddingHorizontal: 2 },\n sm: { paddingVertical: 0, paddingHorizontal: 3 },\n md: { paddingVertical: 0, paddingHorizontal: 5 },\n lg: { paddingVertical: 0, paddingHorizontal: 6 },\n xl: { paddingVertical: 0, paddingHorizontal: 8 },\n '2xl': { paddingVertical: 0, paddingHorizontal: 9 },\n '3xl': { paddingVertical: 0, paddingHorizontal: 10 },\n '4xl': { paddingVertical: 0, paddingHorizontal: 13 },\n '5xl': { paddingVertical: 0, paddingHorizontal: 15 },\n '6xl': { paddingVertical: 0, paddingHorizontal: 16 },\n};\n","import React from 'react';\nimport { Input } from 'app-studio';\nimport { Label } from 'src/components/Form/Label/Label';\nimport { View } from 'src/components/Layout/View/View';\n\nimport { SwitchViewProps } from './Switch.props';\nimport { KnobSizes, SliderPadding, SliderSizes } from './Switch.style';\n\nconst SwitchContent = (props: any) => <Input type=\"checkbox\" {...props} />;\n\nconst SwitchView: React.FC<SwitchViewProps> = ({\n id,\n name,\n inActiveChild,\n activeChild,\n shadow = {},\n size = 'sm',\n colorScheme = 'theme.primary',\n on = false,\n isHovered = false,\n isChecked = false,\n isDisabled = false,\n isReadOnly = false,\n onChange,\n onValueChange,\n setOn = () => {},\n setIsHovered = () => {},\n styles = { slider: {}, circle: {} },\n ...props\n}) => {\n const handleToggle = (event: any) => {\n if (!isReadOnly) {\n setOn(!on);\n if (onChange) onChange(event);\n }\n };\n\n const handleHover = () => setIsHovered(!isHovered);\n\n return (\n <Label htmlFor={id} onMouseEnter={handleHover} onMouseLeave={handleHover}>\n <SwitchContent\n id={id}\n name={name}\n opacity={0}\n width={0}\n height={0}\n checked={on}\n onChange={handleToggle}\n disabled={isDisabled}\n readOnly={isReadOnly}\n {...(onValueChange && { onValueChange: handleToggle })}\n {...props}\n />\n {/* Slide */}\n <View\n display=\"flex\"\n cursor=\"pointer\"\n alignItems=\"center\"\n borderRadius={24}\n filter={isHovered && on ? 'brightness(0.9)' : 'brightness(1)'}\n transition=\"justify-content 0.3s cubic-bezier(0.4, 0, 0.2, 1)\"\n backgroundColor={isDisabled ? 'disabled' : on ? colorScheme : 'lightgray'}\n justifyContent={activeChild ? 'space-between' : on ? 'flex-end' : 'flex-start'}\n {...shadow}\n {...SliderPadding[size]}\n {...SliderSizes[size]}\n {...styles['slider']}\n >\n {activeChild && on && <View>{activeChild}</View>}\n <View borderRadius=\"50%\" backgroundColor=\"white\" {...KnobSizes[size]} {...styles['circle']} />\n {inActiveChild && !on && <View>{inActiveChild}</View>}\n </View>\n </Label>\n );\n};\n\nexport default SwitchView;\n","import React, { useMemo } from 'react';\nimport { Element, Typography } from 'app-studio';\nimport { FieldContainer, FieldContent, FieldLabel, FieldWrapper } from 'src/components/Layout/Input';\n\nimport { TextAreaViewProps } from './TextArea.props';\n\nconst TextAreaView: React.FC<TextAreaViewProps> = ({\n id,\n name,\n hint,\n error,\n value,\n label,\n shadow,\n inputValue,\n helperText,\n placeholder,\n defaultValue,\n size = 'sm',\n shape = 'default',\n variant = 'default',\n colorScheme = 'theme.primary',\n isHovered = false,\n isFocused = false,\n isEditable = false,\n isReadOnly = false,\n isDisabled = false,\n isAutoFocus = false,\n isMultiline = false,\n maxRows = 3,\n maxCols = 30,\n onBlur = () => {},\n onChange,\n onFocus,\n onChangeText,\n setHint = () => {},\n setInputValue = () => {},\n setIsFocused = () => {},\n setIsHovered = () => {},\n styles = { box: {}, text: {}, label: {}, helperText: {}, field: {} },\n ...props\n}) => {\n const isWithLabel = !!(isFocused && label);\n\n useMemo(() => {\n setHint(isFocused && !inputValue ? placeholder ?? '' : label ?? placeholder);\n }, [inputValue, isFocused, label, placeholder]);\n\n const fieldStyles = {\n margin: 0,\n paddingVertical: 8,\n paddingHorizontal: 0,\n width: '100%',\n heigth: '100%',\n border: 'none',\n on: {\n focus: {\n outline: 'none',\n },\n },\n fontSize: Typography.fontSizes[size],\n backgroundColor: 'transparent',\n color: isDisabled ? 'trueGray.600' : 'blueGray.700',\n cursor: isDisabled ? 'not-allowed' : 'auto',\n ...styles['field'],\n };\n\n const handleHover = () => setIsHovered(!isHovered);\n const handleFocus = () => {\n setIsFocused(true);\n if (onFocus) onFocus();\n };\n\n const handleBlur = (event: any) => {\n onBlur(event);\n setIsFocused(false);\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement> | string) => {\n if (typeof event === 'string') {\n //for ios and android\n setInputValue(event);\n if (onChangeText) onChangeText(event);\n } else {\n setInputValue(event.target.value);\n if (onChange) onChange(event);\n }\n };\n\n return (\n <FieldContainer helperText={helperText} error={error} styles={styles}>\n <FieldContent\n label={label}\n size={size}\n error={error}\n shape={shape}\n styles={styles}\n shadow={shadow}\n variant={variant}\n value={inputValue}\n color={colorScheme}\n isHovered={isHovered}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isFocused={isFocused}\n isWithLabel={isWithLabel}\n colorScheme={colorScheme}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n >\n <FieldWrapper>\n {isWithLabel && (\n <FieldLabel htmlFor={id} color={colorScheme} error={error} {...styles}>\n {label}\n </FieldLabel>\n )}\n <Element\n as=\"textarea\"\n id={id}\n name={name}\n rows={maxRows}\n cols={maxCols}\n value={inputValue}\n readOnly={isReadOnly}\n disabled={isDisabled}\n autoFocus={isAutoFocus}\n editable={isEditable}\n placeholder={hint}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onChange={handleChange}\n multiline={isMultiline}\n {...fieldStyles}\n {...props}\n {...(onChangeText && { onChangeText: handleChange })}\n />\n </FieldWrapper>\n </FieldContent>\n </FieldContainer>\n );\n};\n\nexport default TextAreaView;\n","import React, { useMemo } from 'react';\nimport { Input, Typography, useTheme } from 'app-studio';\nimport { FieldContainer } from 'src/components/Layout/Input/FieldContainer/FieldContainer';\nimport { FieldContent } from 'src/components/Layout/Input/FieldContent/FieldContent';\nimport { FieldIcons } from 'src/components/Layout/Input/FieldIcons/FieldIcons';\nimport { FieldLabel } from 'src/components/Layout/Input/FieldLabel/FieldLabel';\nimport { FieldWrapper } from 'src/components/Layout/Input/FieldWrapper/FieldWrapper';\nimport { CloseSvg } from 'src/components/Svg';\n\nimport { TextFieldViewProps } from './TextField.props';\n\nconst TextFieldInput = (props: any) => <Input type=\"text\" {...props} />;\n\nconst TextFieldView: React.FC<TextFieldViewProps> = ({\n id,\n name,\n label,\n value,\n hint,\n inputValue,\n onChange,\n leftChild,\n rightChild,\n helperText,\n placeholder,\n onChangeText,\n shadow = {},\n styles = { box: {}, field: {}, label: {}, helperText: {}, text: {} },\n size = 'md',\n shape = 'default',\n variant = 'default',\n colorScheme = 'theme.primary',\n error = false,\n isFocused = false,\n isHovered = false,\n isDisabled = false,\n isReadOnly = false,\n isClearable = true,\n isAutoFocus = false,\n setHint = () => {},\n setIsFocused = () => {},\n setIsHovered = () => {},\n setInputValue = () => {},\n onClick = () => {},\n onFocus,\n onBlur = () => {},\n ...props\n}) => {\n const { getColor } = useTheme();\n const IconColor = getColor('color.blueGray.700');\n\n const isWithLabel = !!(isFocused && label);\n\n useMemo(() => {\n setHint(isFocused && !inputValue ? placeholder ?? '' : label ?? placeholder);\n }, [inputValue, isFocused, label, placeholder]);\n\n const fieldStyles = {\n margin: 0,\n paddingVertical: 8,\n padddingHorizontal: 0,\n width: '100%',\n heigth: '100%',\n border: 'none',\n on: {\n focus: {\n outline: 'none',\n },\n },\n fontSize: Typography.fontSizes[size],\n backgroundColor: 'transparent',\n color: isDisabled ? 'color.trueGray.600' : 'color.blueGray.700',\n cursor: isDisabled ? 'not-allowed' : 'auto',\n ...styles['field'],\n };\n\n const handleFocus = () => {\n setIsFocused(true);\n if (onFocus) onFocus();\n };\n\n const handleHover = () => setIsHovered(!isHovered);\n\n const handleBlur = (event: any) => {\n onBlur(event);\n setIsFocused(false);\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement> | string) => {\n if (typeof event === 'string') {\n //for ios and android\n setInputValue(event);\n if (onChangeText) onChangeText(event);\n } else {\n //Web\n setInputValue(event.target.value);\n if (onChange) onChange(event);\n }\n };\n\n const handleClear = () => {\n setInputValue('');\n //Web\n if (onChange) {\n onBlur({ target: { name } });\n onChange({ target: { name, value: '' } });\n }\n //for ios and android\n if (typeof document === 'undefined' && onChangeText) onChangeText('');\n };\n\n return (\n <FieldContainer helperText={helperText} error={error} styles={styles}>\n <FieldContent\n label={label}\n size={size}\n error={error}\n shape={shape}\n styles={styles}\n shadow={shadow}\n variant={variant}\n value={inputValue}\n color={colorScheme}\n isHovered={isHovered}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isFocused={isFocused}\n isWithLabel={isWithLabel}\n colorScheme={colorScheme}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n >\n {leftChild}\n <FieldWrapper>\n {isWithLabel && (\n <FieldLabel htmlFor={id} color={colorScheme} error={error} {...styles}>\n {label}\n </FieldLabel>\n )}\n <TextFieldInput\n id={id}\n name={name}\n value={inputValue}\n readOnly={isReadOnly}\n disabled={isDisabled}\n autoFocus={isAutoFocus}\n placeholder={hint}\n onFocus={handleFocus}\n onBlur={handleBlur}\n autoComplete=\"off\"\n {...fieldStyles}\n {...props}\n onChange={handleChange}\n {...(onChangeText && { onChangeText: handleChange })}\n />\n </FieldWrapper>\n {(rightChild || (isClearable && inputValue)) && (\n <FieldIcons>\n {rightChild && <>{rightChild}</>}\n {isClearable && inputValue && !isReadOnly && !isDisabled && (\n <CloseSvg size={Typography.fontSizes[size]} color={IconColor} onClick={handleClear} />\n )}\n </FieldIcons>\n )}\n </FieldContent>\n </FieldContainer>\n );\n};\n\nexport default TextFieldView;\n","import React from 'react';\nimport { View } from 'src/components/Layout/View/View';\n\nimport { CenterProps } from './Center.props';\n\nconst CenterView: React.FC<CenterProps> = ({ children, wrap, ...props }) => (\n <View display=\"flex\" justifyContent=\"center\" alignItems=\"center\" flexWrap={wrap} {...props}>\n {children}\n </View>\n);\n\nexport default CenterView;\n","import React from 'react';\nimport { View } from 'src/components';\n\nimport { HorizontalProps } from './Horizontal.props';\n\nconst HorizontalView: React.FC<HorizontalProps> = ({\n children,\n wrap = 'wrap',\n justify = 'flex-start',\n isReversed = false,\n ...props\n}) => (\n <View\n display=\"flex\"\n flexWrap={wrap}\n flexDirection={isReversed ? 'row-reverse' : 'row'}\n justifyContent={justify}\n {...props}\n >\n {children}\n </View>\n);\n\nexport default HorizontalView;\n","import React from 'react';\nimport { View } from 'app-studio';\n\nimport { VerticalProps } from './Vertical.props';\n\nconst VerticalView: React.FC<VerticalProps> = ({\n children,\n wrap = 'nowrap',\n justify = 'flex-start',\n isReversed = false,\n ...props\n}) => (\n <View\n display=\"flex\"\n flexWrap={wrap}\n flexDirection={isReversed ? 'column-reverse' : 'column'}\n justifyContent={justify}\n {...props}\n >\n {children}\n </View>\n);\nexport default VerticalView;\n","import { Size } from './Link.type';\n\nexport const IconSizes: Record<Size, number> = {\n xs: 12,\n sm: 14,\n md: 16,\n lg: 18,\n xl: 20,\n '2xl': 24,\n '3xl': 30,\n '4xl': 36,\n '5xl': 48,\n '6xl': 64,\n};\n","import React from 'react';\nimport { Element } from 'app-studio';\nimport { Link as ReactRouterLink } from 'react-router-dom';\nimport { Horizontal } from 'src/components';\nimport { ExternalLinkSvg } from 'src/components/Svg';\n\nimport { LinkViewProps } from './Link.props';\nimport { IconSizes } from './Link.style';\n\nconst LinkView: React.FC<LinkViewProps> = ({\n children,\n href = '/',\n iconSize = 'sm',\n underline = 'default',\n isHovered = false,\n isExternal = false,\n colorScheme = '#0072F5',\n styles = { icon: {}, text: {} },\n setIsHovered = () => {},\n ...props\n}) => {\n const handleHover = () => {\n if (underline === 'hover') setIsHovered(true);\n };\n return (\n <ReactRouterLink to={href} target={isExternal ? '_blank' : '_self'}>\n <Element\n color={colorScheme}\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n textDecoration={isHovered || underline === 'underline' ? 'underline !important' : 'none'}\n {...styles.text}\n {...props}\n >\n <Horizontal gap={3} alignItems=\"center\" wrap=\"nowrap\">\n {children}\n {isExternal && <ExternalLinkSvg color={colorScheme} size={IconSizes[iconSize]} style={styles.icon} />}\n </Horizontal>\n </Element>\n </ReactRouterLink>\n );\n};\n\nexport default LinkView;\n","import { Size, Speed } from './Loader.type';\n\nexport const DefaultEllipsisSpeeds: Record<Speed, number> = {\n fast: 0.4,\n normal: 0.6,\n slow: 0.8,\n};\n\nexport const DefaultSizes: Record<Size, number> = {\n xs: 14,\n sm: 18,\n md: 22,\n lg: 26,\n xl: 30,\n '2xl': 40,\n '3xl': 50,\n '4xl': 60,\n '5xl': 70,\n '6xl': 80,\n};\nexport const DefaultSpeeds: Record<Speed, number> = {\n fast: 50,\n normal: 100,\n slow: 300,\n};\n","import React, { useEffect, useState } from 'react';\nimport { useTheme } from 'app-studio';\nimport { Center, View } from 'src/components';\n\nimport { DefaultSpinnerProps, DottedProps, LoaderProps, QuarterProps } from '../Loader/Loader.props';\n\nimport { DefaultSizes, DefaultSpeeds } from './Loader.style';\n\nconst DefaultSpinner: React.FC<DefaultSpinnerProps> = ({\n size = 'md',\n speed = 'normal',\n color = 'theme.loading',\n ...props\n}) => {\n const theme = useTheme();\n const colorStyle = theme.getColor(color);\n const sizeStyle = typeof size === 'number' ? size : DefaultSizes[size];\n\n const [angle, setAngle] = useState(0);\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n setAngle((prevAngle) => prevAngle + 45);\n }, DefaultSpeeds[speed]);\n\n return () => clearInterval(intervalId);\n }, [speed]);\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width={`${sizeStyle}px`}\n height={`${sizeStyle}px`}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke={colorStyle}\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n style={{ transform: `rotate(${angle}deg)` }}\n {...props}\n >\n <g id=\"SVGRepo_bgCarrier\" strokeWidth=\"0\"></g>\n <g id=\"SVGRepo_tracerCarrier\" strokeLinecap=\"round\" strokeLinejoin=\"round\"></g>\n <g id=\"SVGRepo_iconCarrier\">\n <path d=\"M21 12a9 9 0 11-6.219-8.56\"></path>\n </g>\n </svg>\n );\n};\n\nconst Dotted: React.FC<DottedProps> = ({ size = 'md', speed = 'normal', color = 'theme.loading', ...props }) => {\n const theme = useTheme();\n const colorStyle = theme.getColor(color);\n const sizeStyle = typeof size === 'number' ? size : DefaultSizes[size];\n\n const [angle, setAngle] = useState(0);\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n setAngle((prevAngle) => prevAngle + 45);\n }, DefaultSpeeds[speed]);\n\n return () => clearInterval(intervalId);\n }, [speed]);\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 50 50\"\n width={`${sizeStyle}px`}\n height={`${sizeStyle}px`}\n style={{ transform: `rotate(${angle}deg)` }}\n {...props}\n >\n <circle cx=\"10\" cy=\"25\" r=\"4\" fill={colorStyle} />\n <circle cx=\"25\" cy=\"25\" r=\"4\" fill={colorStyle} />\n <circle cx=\"40\" cy=\"25\" r=\"4\" fill={colorStyle} />\n </svg>\n );\n};\n\nconst Quarter: React.FC<QuarterProps> = ({ size = 'md', speed = 'normal', color = 'theme.loading', ...props }) => {\n const theme = useTheme();\n const colorStyle = theme.getColor(color);\n const sizeStyle = typeof size === 'number' ? size : DefaultSizes[size];\n\n const [angle, setAngle] = useState(0);\n\n useEffect(() => {\n const intervalId = setInterval(() => {\n setAngle((prevAngle) => prevAngle + 45);\n }, DefaultSpeeds[speed]);\n\n return () => clearInterval(intervalId);\n }, [speed]);\n\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 50 50\"\n width={`${sizeStyle}px`}\n height={`${sizeStyle}px`}\n style={{ transform: `rotate(${angle}deg)` }}\n {...props}\n >\n <circle cx=\"25\" cy=\"25\" r=\"20\" fill=\"none\" stroke={colorStyle} strokeWidth=\"5\" strokeDasharray=\"1,10\" />\n </svg>\n );\n};\nconst LoaderView: React.FC<LoaderProps> = ({\n size,\n children,\n textColor,\n loaderColor,\n type = 'default',\n speed = 'normal',\n textPosition = 'right',\n ...props\n}) => {\n const style = { size, speed, color: loaderColor };\n\n const variants = {\n default: <DefaultSpinner {...style} />,\n dotted: <Dotted {...style} />,\n quarter: <Quarter {...style} />,\n };\n\n return (\n <Center gap={10} flexDirection={textPosition === 'top' || textPosition === 'bottom' ? 'column' : 'row'} {...props}>\n {(textPosition === 'left' || textPosition === 'top') && children && <View color={textColor}>{children}</View>}\n {variants[type]}\n {(textPosition === 'right' || textPosition === 'bottom') && children && <View color={textColor}>{children}</View>}\n </Center>\n );\n};\n\nexport default LoaderView;\n","import { CSSProperties } from 'react';\n\nimport { Position, Shape, Size } from './Modal.type';\n\nexport const ContainerShapes: Record<Shape, CSSProperties> = {\n sharp: { borderRadius: 0 },\n rounded: { borderRadius: 4 },\n};\nexport const OverlayAlignments: Record<Position, CSSProperties> = {\n center: { justifyContent: 'center', alignItems: 'center' },\n top: { justifyContent: 'center' },\n right: { justifyContent: 'flex-end', alignItems: 'center' },\n bottom: { justifyContent: 'center', alignItems: 'flex-end' },\n left: { alignItems: 'center' },\n};\n\nexport const HeaderIconSizes: Record<Size, number> = {\n xs: 12,\n sm: 16,\n md: 20,\n lg: 24,\n xl: 28,\n};\n","import React from 'react';\n\nimport { ModalType } from './Modal/Modal.props';\nimport { ModalBody, ModalContainer, ModalFooter, ModalHeader, ModalOverlay } from './Modal/Modal.view';\n\n/**\n * It is a custom content overlay that appears on top of the main screen.\n */\n// eslint-disable-next-line react/prop-types\nexport const Modal: ModalType = ({ children }) => <>{children}</>;\n\nModal.Overlay = ModalOverlay;\nModal.Container = ModalContainer;\nModal.Header = ModalHeader;\nModal.Body = ModalBody;\nModal.Footer = ModalFooter;\n\nexport default Modal;\n","import React, { useEffect } from 'react';\nimport { Center, Vertical } from 'src/components';\nimport { Horizontal } from 'src/components';\nimport { Button } from 'src/components';\nimport { View } from 'src/components/Layout/View/View';\nimport { CloseSvg } from 'src/components/Svg';\nimport { useModalStore } from 'src/store/useModalStore';\n\nimport { BodyProps, ContainerProps, FooterProps, HeaderProps, OverlayProps } from '../Modal/Modal.props';\nimport { ContainerShapes, OverlayAlignments } from '../Modal/Modal.style';\nimport { HeaderIconSizes } from '../Modal/Modal.style';\n\nexport const ModalOverlay: React.FC<OverlayProps> = ({\n children,\n blur,\n isOpen = false,\n isClosePrevented = false,\n onClose = () => {},\n position = 'center',\n ...props\n}) => {\n const setOpen = useModalStore((state: any) => state.setOpen);\n const setOnClose = useModalStore((state: any) => state.setOnClose);\n\n useEffect(() => {\n setOnClose(onClose);\n if (isOpen) setOpen();\n });\n\n if (!isOpen) return null;\n\n const handleClick = () => {\n if (!isClosePrevented) onClose();\n };\n\n return (\n <Center\n position=\"fixed\"\n top={0}\n left={0}\n width=\"100%\"\n height=\"100%\"\n zIndex={1000}\n onClick={handleClick}\n visibility={isOpen ? 'visible' : 'hidden'}\n >\n <View\n cursor=\"pointer\"\n position=\"absolute\"\n top={0}\n left={0}\n zIndex={1000}\n width=\"100vw\"\n height=\"100vh\"\n display=\"flex\"\n backgroundColor=\"blackAlpha.500\"\n backdropFilter={blur ? `blur(${blur}px)` : undefined}\n onClick={handleClick}\n {...OverlayAlignments[position]}\n {...props}\n >\n {children}\n </View>\n </Center>\n );\n};\n\nexport const ModalContainer: React.FC<ContainerProps> = ({\n children,\n shadow,\n isFullScreen = false,\n shape = 'rounded',\n ...props\n}) => {\n const defaultShadow =\n typeof document !== undefined\n ? {\n boxShadow: '0px 2px 8px rgba(0, 0, 0, 0.3)',\n }\n : {\n elevation: 5,\n shadowColor: 'rgba(0, 0, 0, 0.3)',\n shadowOffset: { width: 0, height: 2 },\n shadowOpacity: 1,\n shadowRadius: 8,\n };\n\n const handleClick = (event: any) => event.stopPropagation();\n return (\n <Vertical\n cursor=\"default\"\n overflow=\"hidden\"\n backgroundColor=\"white\"\n width={isFullScreen ? '100%' : 600}\n height={isFullScreen ? '100%' : 'fit-content'}\n onClick={handleClick}\n {...(shadow ? shadow : defaultShadow)}\n {...ContainerShapes[shape]}\n {...props}\n >\n {children}\n </Vertical>\n );\n};\n\nexport const ModalHeader: React.FC<HeaderProps> = ({\n children,\n buttonColor = 'theme.primary',\n iconSize = 'md',\n buttonPosition = 'right',\n ...props\n}) => {\n const onClose = useModalStore((state: any) => state.onClose);\n\n const buttonIcon = (\n <Button\n onClick={onClose}\n colorScheme=\"transparent\"\n icon={<CloseSvg size={HeaderIconSizes[iconSize]} color={buttonColor} />}\n padding={0}\n margin={0}\n filter=\"none\"\n isAuto\n />\n );\n\n return (\n <Horizontal\n justifyContent={buttonPosition === 'none' ? 'center' : 'space-between'}\n alignItems=\"center\"\n paddingVertical={15}\n paddingHorizontal={20}\n {...props}\n >\n {buttonPosition === 'left' && buttonIcon}\n {children}\n {buttonPosition === 'right' && buttonIcon}\n </Horizontal>\n );\n};\n\nexport const ModalBody: React.FC<BodyProps> = ({ children, ...props }) => {\n const defaultBorder = {\n borderBottomWidth: 2,\n borderTopWidth: 2,\n borderColor: 'rgba(250, 250, 250, 1)',\n borderStyle: 'solid',\n };\n return (\n <View overflowY=\"auto\" paddingVertical={15} paddingHorizontal={20} {...defaultBorder} {...props}>\n {children}\n </View>\n );\n};\n\nexport const ModalFooter: React.FC<FooterProps> = ({ children, ...props }) => {\n return (\n <Horizontal\n marginTop=\"auto\"\n alignItems=\"center\"\n justifyContent=\"flex-end\"\n paddingVertical={15}\n paddingHorizontal={20}\n {...props}\n >\n {children}\n </Horizontal>\n );\n};\n","import { Headings } from './Text.type';\n\nexport const HeadingSizes: Record<Headings, Record<string, number | string>> = {\n h1: {\n fontSize: 96,\n lineHeight: 112,\n letterSpacing: -1.5,\n },\n h2: {\n fontSize: 60,\n lineHeight: 71,\n letterSpacing: -0.5,\n },\n h3: {\n fontSize: 48,\n lineHeight: 57,\n letterSpacing: 0,\n },\n h4: {\n fontSize: 34,\n lineHeight: 40,\n letterSpacing: 0.25,\n },\n h5: {\n fontSize: 24,\n lineHeight: 28,\n letterSpacing: 0,\n },\n h6: {\n fontSize: 20,\n lineHeight: 24,\n letterSpacing: 0.15,\n },\n};\n","import React, { useEffect, useRef, useState } from 'react';\nimport { Element, Typography } from 'app-studio';\n\nimport { ContentProps, TextProps, TruncateTextProps } from './Text.props';\nimport { HeadingSizes } from './Text.style';\n\nconst TextContent: React.FC<ContentProps> = ({ children, isSub, isSup }) => (\n <>\n {typeof children === 'string' ? (\n <>\n {isSub && <sup>{children}</sup>}\n {isSup && <sup>{children}</sup>}\n {!isSub && !isSup && <>{children}</>}\n </>\n ) : (\n children\n )}\n </>\n);\n\nconst TruncateText: React.FC<TruncateTextProps> = ({ text, maxLines = 1 }) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [content, setContent] = useState(text);\n\n useEffect(() => {\n let textContent = content;\n const textNode = containerRef.current;\n\n if (textNode) {\n const contentHeight = textNode.offsetHeight;\n\n const comLineHeight = getComputedStyle(textNode).lineHeight;\n\n const lineHeight: number = comLineHeight !== 'normal' ? parseFloat(comLineHeight) : 20;\n\n const maxHeight = Math.ceil(lineHeight * maxLines);\n\n if (contentHeight > maxHeight) {\n textContent = textContent.slice(0, -1);\n } else if (contentHeight === maxHeight) {\n if (content.length !== text.length) {\n textContent = textContent.slice(0, -3) + '...';\n }\n }\n\n setContent(textContent);\n }\n }, [maxLines, text, containerRef, content]);\n\n return <div ref={containerRef}>{content}</div>;\n};\n\nconst TextView: React.FC<TextProps> = ({\n children,\n heading,\n maxLines,\n isItalic = false,\n isUnderlined = false,\n isSub = false,\n isSup = false,\n isStriked = false,\n isTruncated = false,\n weight = 'normal',\n size = 'md',\n ...props\n}) => {\n const headingStyles = heading ? HeadingSizes[heading] : {};\n\n const noLineBreak = isSub || isSup ? { display: 'inline' } : {};\n\n const fontSize = Typography.fontSizes[size];\n\n return (\n <Element\n role=\"text\"\n fontSize={fontSize}\n lineHeight={Typography.lineHeights[size]}\n fontStyle={isItalic ? 'italic' : 'normal'}\n fontWeight={Typography.fontWeights[weight]}\n textDecoration={isStriked ? 'line-through' : isUnderlined ? 'underline' : 'none'}\n {...noLineBreak}\n {...headingStyles}\n {...props}\n >\n {isTruncated && maxLines && typeof children === 'string' ? (\n <TruncateText text={children} maxLines={maxLines} />\n ) : (\n <TextContent isSub={isSub} isSup={isSup} {...props}>\n {children}\n </TextContent>\n )}\n </Element>\n );\n};\n\nexport default TextView;\n","import React from 'react';\n\nimport { ButtonProps } from './Button/Button.props';\nimport { useButtonState } from './Button/Button.state';\nimport ButtonView from './Button/Button.view';\n\nconst ButtonComponent: React.FC<ButtonProps> = (props) => {\n const { isHovered, setIsHovered } = useButtonState();\n const handleHover = () => setIsHovered(!isHovered);\n\n return (\n <ButtonView\n onMouseEnter={handleHover}\n onMouseLeave={handleHover}\n filter={isHovered ? 'brightness(0.85)' : 'brightness(1)'}\n {...props}\n />\n );\n};\n\n/**\n * Buttons allow us to trigger an event or an action with a single click.\n */\nexport const Button = ButtonComponent;\n","import React from 'react';\n\nexport const useButtonState = () => {\n const [isHovered, setIsHovered] = React.useState(false);\n\n return { isHovered, setIsHovered };\n};\n","import React from 'react';\n\nimport { CenterProps } from './Center/Center.props';\nimport CenterView from './Center/Center.view';\n\n/**\n * The Center component is a React functional component that provides a centered layout for its children using flexbox.\n */\nconst CenterComponent: React.FC<CenterProps> = (props) => <CenterView {...props} />;\n\nexport const Center = CenterComponent;\n","import React from 'react';\n\nimport { CheckboxProps } from './Checkbox/Checkbox.props';\nimport { useCheckboxState } from './Checkbox/Checkbox.state';\nimport CheckboxView from './Checkbox/Checkbox.view';\n\nconst CheckboxComponent: React.FC<CheckboxProps> = (props) => {\n const checkboxStates = useCheckboxState(props);\n return <CheckboxView {...checkboxStates} {...props} />;\n};\n\n/**\n * Checkbox allows users to select one or more options from a list of choices.\n */\nexport const Checkbox = CheckboxComponent;\n","import React from 'react';\n\nimport { CheckboxProps } from './Checkbox.props';\n\nexport const useCheckboxState = ({ defaultIsSelected = false }: CheckboxProps) => {\n const [isHovered, setIsHovered] = React.useState(false);\n const [isSelected, setIsSelected] = React.useState<boolean>(defaultIsSelected);\n\n return {\n isHovered,\n setIsHovered,\n isSelected,\n setIsSelected,\n };\n};\n","import React from 'react';\n\nimport { CountryPickerProps } from './CountryPicker/CountryPicker.props';\nimport { useCountryPickerState } from './CountryPicker/CountryPicker.state';\nimport CountryPickerView from './CountryPicker/CountryPicker.view';\n\nconst CountryPickerComponent: React.FC<CountryPickerProps> = (props) => {\n const countryPickerStates = useCountryPickerState(props);\n\n return <CountryPickerView {...countryPickerStates} {...props} />;\n};\n\n/**\n * Country picker allows users to select a country from a dropdown list or search field.\n */\nexport const CountryPicker = CountryPickerComponent;\n","import React from 'react';\n\nimport countryList from '../countries.json';\n\nimport { CountryPickerProps } from './CountryPicker.props';\nimport { Country } from './CountryPicker.type';\n\nexport const useCountryPickerState = ({ placeholder }: CountryPickerProps) => {\n const [newOptions, setNewOptions] = React.useState<Array<Country>>(countryList);\n const [selected, setSelected] = React.useState<string>(placeholder ?? countryList[0].name);\n\n const [hide, setHide] = React.useState(true);\n const [isFocused, setIsFocused] = React.useState(false);\n const [isHovered, setIsHovered] = React.useState(false);\n\n return {\n hide,\n setHide,\n newOptions,\n setNewOptions,\n isHovered,\n setIsHovered,\n isFocused,\n setIsFocused,\n selected,\n setSelected,\n };\n};\n","import React from 'react';\n\nimport { DatePickerProps } from './DatePicker/DatePicker.props';\nimport { useDatePickerState } from './DatePicker/DatePicker.state';\nimport DatePickerView from './DatePicker/DatePicker.view';\n\nconst DatePickerComponent: React.FC<DatePickerProps> = (props) => {\n const datePickerStates = useDatePickerState();\n return <DatePickerView {...datePickerStates} {...props} />;\n};\n\n/**\n * Date picker allows users to select a date from a calendar view.\n */\nexport const DatePicker = DatePickerComponent;\n","import React from 'react';\nimport format from 'date-fns/format';\n\nexport const useDatePickerState = () => {\n const [isHovered, setIsHovered] = React.useState(false);\n const [isFocused, setIsFocused] = React.useState(false);\n const [date, setDate] = React.useState(format(new Date(), 'yyyy-MM-dd'));\n\n return {\n date,\n setDate,\n isHovered,\n setIsHovered,\n isFocused,\n setIsFocused,\n };\n};\n","import React from 'react';\n\nimport { HorizontalProps } from './Horizontal/Horizontal.props';\nimport HorizontalView from './Horizontal/Horizontal.view';\n\n/**\n * Horizontal layout aligns all the elements in a container on the horizontal axis.\n */\nconst HorizontalComponent: React.FC<HorizontalProps> = (props) => <HorizontalView {...props} />;\n\nexport const Horizontal = HorizontalComponent;\n","import React from 'react';\n\nimport { LinkProps } from './Link/Link.props';\nimport { useLinkState } from './Link/Link.state';\nimport LinkView from './Link/Link.view';\n\nconst LinkComponent: React.FC<LinkProps> = (props) => {\n const linkStates = useLinkState();\n return <LinkView {...linkStates} {...props} />;\n};\n\n/**\n * Link allows users to navigate from page to page. It have a similar appearance as the hyperlink.\n */\nexport const Link = LinkComponent;\n","import { useState } from 'react';\n\nexport const useLinkState = () => {\n const [isHovered, setIsHovered] = useState(false);\n return { isHovered, setIsHovered };\n};\n","import React from 'react';\n\nimport { LoaderProps } from './Loader/Loader.props';\nimport LoaderView from './Loader/Loader.view';\n\nconst LoadingComponent: React.FC<LoaderProps> = (props) => <LoaderView {...props} />;\n\n/**\n * It gives the user an insight about an action being processed. It may have an undefined waiting time or display the process length.\n */\nexport const Loading = LoadingComponent;\n","import React from 'react';\n\nimport { PasswordProps } from './Password/Password.props';\nimport { usePasswordState } from './Password/Password.state';\nimport PasswordView from './Password/Password.view';\n\nconst PasswordComponent: React.FC<PasswordProps> = (props) => {\n const passwordState = usePasswordState();\n return <PasswordView {...passwordState} {...props} />;\n};\n\n/**\n * To allow users to securely enter sensitive information\n */\nexport const Password = PasswordComponent;\n","import { useState } from 'react';\n\nexport const usePasswordState = () => {\n const [isVisible, setIsVisible] = useState(false);\n return { isVisible, setIsVisible };\n};\n","import React from 'react';\n\nimport { SelectProps } from './Select/Select.props';\nimport { useSelectState } from './Select/Select.state';\nimport SelectView from './Select/Select.view';\n\nconst SelectComponent: React.FC<SelectProps> = (props) => {\n const selectStates = useSelectState(props);\n return <SelectView {...selectStates} {...props} />;\n};\n\n/**\n * Select provides a dropdown list of options for the user to choose from.\n */\n\nexport const Select = SelectComponent;\n","import React from 'react';\n\nimport { SwitchProps } from './Switch/Switch.props';\nimport { useSwitchState } from './Switch/Switch.state';\nimport SwitchView from './Switch/Switch.view';\n\nconst SwitchComponent: React.FC<SwitchProps> = (props) => {\n const switchStates = useSwitchState(props);\n return <SwitchView {...switchStates} {...props} />;\n};\n\nexport const Switch = SwitchComponent;\n","import React from 'react';\n\nimport { SwitchProps } from './Switch.props';\n\nexport const useSwitchState = ({ isDisabled, isChecked }: SwitchProps) => {\n const [isHovered, setIsHovered] = React.useState(false);\n\n const [on, setOn] = React.useState(isDisabled ? !isDisabled : isChecked);\n\n return { isHovered, setIsHovered, on, setOn };\n};\n","import React from 'react';\n\nimport { TextProps } from './Text/Text.props';\nimport TextView from './Text/Text.view';\n\nconst TextComponent: React.FC<TextProps> = (props) => {\n return <TextView {...props} />;\n};\n\n/**\n * The Text component is a simple component that renders a text string or paragraphs as a DOM element in the UI. It is a <p> tag by default.\n */\nexport const Text = TextComponent;\n","import React from 'react';\n\nimport { TextAreaProps } from './TextArea/TextArea.props';\nimport { useTextAreaState } from './TextArea/TextArea.state';\nimport TextAreaView from './TextArea/TextArea.view';\n\nconst TextAreaComponent: React.FC<TextAreaProps> = (props) => {\n const textAreaState = useTextAreaState(props);\n return <TextAreaView {...textAreaState} {...props} />;\n};\n\n/**\n * Text Area is an component used to create a multi-line input field.\n */\nexport const TextArea = TextAreaComponent;\n","import { useState } from 'react';\n\nimport { TextAreaProps } from './TextArea.props';\n\nexport const useTextAreaState = ({ label, placeholder, defaultValue, value }: TextAreaProps) => {\n const [hint, setHint] = useState(label ?? placeholder);\n const [isHovered, setIsHovered] = useState(false);\n const [inputValue, setInputValue] = useState(value || defaultValue || '');\n const [isFocused, setIsFocused] = useState(false);\n\n return {\n hint,\n setHint,\n isHovered,\n setIsHovered,\n inputValue,\n setInputValue,\n isFocused,\n setIsFocused,\n };\n};\n","import React from 'react';\n\nimport { TextFieldProps } from './TextField/TextField.props';\nimport { useTextFieldState } from './TextField/TextField.state';\nimport TextFieldView from './TextField/TextField.view';\n\nconst TextFieldComponent: React.FC<TextFieldProps> = (props: TextFieldProps) => {\n const textFieldStates = useTextFieldState(props);\n return <TextFieldView {...textFieldStates} {...props} />;\n};\n/**\n * TextField is used to capture text data from users.\n */\nexport const TextField = TextFieldComponent;\n","import { useState } from 'react';\n\nimport { TextFieldProps } from './TextField.props';\n\nexport const useTextFieldState = ({ label, placeholder, value }: TextFieldProps) => {\n const [hint, setHint] = useState(label ?? placeholder);\n const [isFocused, setIsFocused] = useState(false);\n const [isHovered, setIsHovered] = useState(false);\n const [inputValue, setInputValue] = useState(value || '');\n\n return {\n hint,\n setHint,\n isFocused,\n setIsFocused,\n isHovered,\n setIsHovered,\n inputValue,\n setInputValue,\n };\n};\n","import React from 'react';\n\nimport { VerticalProps } from './Vertical/Vertical.props';\nimport VerticalView from './Vertical/Vertical.view';\n\n/**\n * Vertical layout aligns all the elements in a container on the vertical axis.\n */\n\nconst VerticalComponent: React.FC<VerticalProps> = (props) => <VerticalView {...props} />;\n\nexport const Vertical = VerticalComponent;\n"],"names":["ButtonSizes","xs","width","paddingTop","paddingBottom","paddingLeft","paddingRight","fontWeight","fontSize","lineHeight","letterSpacing","sm","md","lg","xl","ButtonShapes","sharp","rounded","pillShaped","IconSizes","height","padding","ButtonView","_ref","icon","shadow","children","ariaLabel","externalHref","_ref$isAuto","isAuto","_ref$isFilled","isFilled","_ref$isIconRounded","isIconRounded","_ref$isLoading","isLoading","_ref$isDisabled","isDisabled","_ref$size","size","_ref$variant","variant","_ref$iconPosition","iconPosition","_ref$colorScheme","colorScheme","_ref$shape","shape","_ref$onClick","onClick","props","_objectWithoutPropertiesLoose","_excluded","isActive","defaultNativeProps","disabled","buttonColor","buttonSizeStyles","buttonVariant","filled","backgroundColor","color","outline","borderWidth","borderStyle","borderColor","link","border","textDecorationLine","ghost","scaleWidth","changePadding","content","React","Element","gap","as","role","display","alignItems","justifyContent","borderRadius","_props$onClick","cursor","Link","href","textDecorationColor","isExternal","Sizes","2xl","3xl","4xl","5xl","6xl","CheckboxView","id","name","label","isChecked","onChange","onValueChange","_ref$shadow","_ref$error","error","_ref$isSelected","isSelected","_ref$isHovered","isHovered","_ref$isReadOnly","isReadOnly","_ref$isIndeterminate","isIndeterminate","_ref$defaultIsSelecte","setIsSelected","_ref$setIsSelected","_ref$setIsHovered","setIsHovered","_ref$styles","styles","checkbox","handleHover","checkboxStyle","container","Object","assign","filter","undefined","Label","htmlFor","onMouseEnter","onMouseLeave","Typography","fontSizes","Center","IndeterminateSvg","CheckSvg","CountryList","CountrySelector","Input","type","CountryItem","DropDownItem","option","_ref$callback","callback","text","_useState","useState","margin","listStyleType","paddingVertical","paddingHorizontal","event","stopPropagation","DropDown","_ref2","_ref2$styles","dropDown","options","_ref2$callback","handleCallback","top","zIndex","overflow","maxHeight","position","flexDirection","boxShadow","map","key","code","CountryPickerView","_ref3","selected","placeholder","helperText","_ref3$hide","hide","_ref3$error","_ref3$isHovered","_ref3$isFocused","isFocused","_ref3$isAutoFocus","isAutoFocus","_ref3$isDisabled","_ref3$isReadOnly","_ref3$shadow","_ref3$newOptions","newOptions","_ref3$size","_ref3$variant","_ref3$shape","_ref3$colorScheme","_ref3$onBlur","onBlur","_ref3$setHide","setHide","_ref3$setNewOptions","setNewOptions","_ref3$setIsHovered","_ref3$setIsFocused","setIsFocused","_ref3$setSelected","setSelected","_ref3$styles","box","IconColor","getColor","useTheme","useEffect","isWithLabel","fieldStyles","paddingVerical","paddingHorizonatl","heigth","on","focus","FieldContainer","FieldContent","value","FieldWrapper","FieldLabel","readOnly","autoFocus","onFocus","selectedCountry","target","filteredCountries","countryList","country","toLowerCase","startsWith","FieldIcons","ArrowDownSvg","ArrowUpSvg","style","DatePickerContent","DatePickerView","date","field","_ref$isFocused","_ref$setDate","setDate","_ref$setIsFocused","onChangeText","handleDateChange","PasswordView","visibleIcon","hiddenIcon","_ref$isVisible","isVisible","_ref$setIsVisible","setIsVisible","TextField","rightChild","View","isClearable","Item","handleOptionClick","SelectBox","_ref2$removeOption","removeOption","_ref2$size","Text","length","Horizontal","MultiSelect","HiddenSelect","_ref3$isMulti","isMulti","_ref3$options","_excluded2","opacity","multiple","_ref4","_React$useState5","_ref4$styles","_ref4$callback","itemStates","document","elevation","shadowColor","shadowOffset","shadowOpacity","shadowRadius","overflowY","marginTop","marginLeft","marginRight","marginBottom","_ref5","_ref5$size","_ref5$removeOption","_excluded3","CloseSvg","SelectView","_ref6","_ref6$hide","_ref6$error","_ref6$isMulti","_ref6$isFocused","_ref6$isHovered","_ref6$isDisabled","_ref6$isReadOnly","_ref6$options","_ref6$shadow","_ref6$size","_ref6$colorScheme","_ref6$shape","_ref6$variant","_ref6$styles","selectBox","_ref6$onChange","_ref6$setHide","_ref6$setSelected","_ref6$setIsHovered","_ref6$setIsFocused","_excluded4","useCallback","Array","isArray","includes","concat","selectedOption","newSelected","KnobSizes","SliderSizes","SliderPadding","SwitchContent","SwitchView","inActiveChild","activeChild","_ref$on","_ref$isChecked","_ref$setOn","setOn","slider","circle","handleToggle","checked","transition","TextAreaView","hint","inputValue","defaultValue","_ref$isEditable","isEditable","_ref$isAutoFocus","_ref$isMultiline","isMultiline","_ref$maxRows","maxRows","_ref$maxCols","maxCols","_ref$onBlur","_ref$setHint","setHint","_ref$setInputValue","setInputValue","useMemo","handleChange","rows","cols","editable","multiline","TextFieldInput","TextFieldView","leftChild","_ref$isClearable","padddingHorizontal","autoComplete","CenterView","wrap","flexWrap","HorizontalView","_ref$wrap","_ref$justify","justify","_ref$isReversed","isReversed","VerticalView","LinkView","_ref$href","_ref$iconSize","iconSize","_ref$underline","underline","_ref$isExternal","ReactRouterLink","to","textDecoration","ExternalLinkSvg","DefaultSizes","DefaultSpeeds","fast","normal","slow","DefaultSpinner","_ref$speed","speed","_ref$color","colorStyle","sizeStyle","angle","setAngle","intervalId","setInterval","prevAngle","clearInterval","xmlns","viewBox","fill","stroke","strokeWidth","strokeLinecap","strokeLinejoin","transform","d","Dotted","_ref2$speed","_ref2$color","_useState2","cx","cy","r","Quarter","_ref3$speed","_ref3$color","_useState3","strokeDasharray","LoaderView","textColor","loaderColor","_ref4$type","_ref4$speed","_ref4$textPosition","textPosition","variants","default","dotted","quarter","ContainerShapes","OverlayAlignments","center","right","bottom","left","HeaderIconSizes","Modal","Overlay","blur","_ref$isOpen","isOpen","_ref$isClosePrevented","isClosePrevented","_ref$onClose","onClose","_ref$position","setOpen","useModalStore","state","setOnClose","handleClick","visibility","backdropFilter","Container","_ref2$isFullScreen","isFullScreen","_ref2$shape","defaultShadow","Vertical","Header","_ref3$buttonColor","_ref3$iconSize","_ref3$buttonPosition","buttonPosition","buttonIcon","Button","Body","borderBottomWidth","borderTopWidth","Footer","_excluded5","HeadingSizes","h1","h2","h3","h4","h5","h6","TextContent","isSub","isSup","TruncateText","_ref2$maxLines","maxLines","containerRef","useRef","setContent","textContent","textNode","current","contentHeight","offsetHeight","comLineHeight","getComputedStyle","parseFloat","Math","ceil","slice","ref","TextView","heading","_ref3$isItalic","isItalic","_ref3$isUnderlined","isUnderlined","_ref3$isSub","_ref3$isSup","_ref3$isStriked","isStriked","_ref3$isTruncated","isTruncated","_ref3$weight","weight","lineHeights","fontStyle","fontWeights","_React$useState","_useButtonState","defaultIsSelected","_React$useState2","checkboxStates","_React$useState3","_React$useState4","countryPickerStates","datePickerStates","format","Date","linkStates","passwordState","defaultSelected","selectStates","switchStates","_useState4","textAreaState","textFieldStates"],"mappings":"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"}
|