@razorpay/blade 12.38.0 → 12.40.0
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/build/lib/native/components/Accordion/AccordionItem.js +1 -1
- package/build/lib/native/components/Accordion/AccordionItem.js.map +1 -1
- package/build/lib/native/components/Alert/Alert.js +2 -1
- package/build/lib/native/components/Alert/Alert.js.map +1 -1
- package/build/lib/native/components/Card/CardFooter.js +2 -1
- package/build/lib/native/components/Card/CardFooter.js.map +1 -1
- package/build/lib/native/components/Chip/Chip.js +1 -1
- package/build/lib/native/components/Chip/Chip.js.map +1 -1
- package/build/lib/native/components/Form/FormLabel.js +1 -1
- package/build/lib/native/components/Form/FormLabel.js.map +1 -1
- package/build/lib/native/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js +1 -1
- package/build/lib/native/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js.map +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js +1 -1
- package/build/lib/native/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/native/components/Input/OTPInput/OTPInput.js +1 -1
- package/build/lib/native/components/Input/OTPInput/OTPInput.js.map +1 -1
- package/build/lib/native/components/Input/PasswordInput/PasswordInput.js +1 -1
- package/build/lib/native/components/Input/PasswordInput/PasswordInput.js.map +1 -1
- package/build/lib/native/components/Input/SearchInput/SearchInput.js +1 -1
- package/build/lib/native/components/Input/SearchInput/SearchInput.js.map +1 -1
- package/build/lib/native/components/Input/TextArea/TextArea.js +1 -1
- package/build/lib/native/components/Input/TextArea/TextArea.js.map +1 -1
- package/build/lib/native/components/Input/TextInput/TextInput.js +1 -1
- package/build/lib/native/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/native/components/QuickFilters/QuickFilter.js +1 -1
- package/build/lib/native/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js +4 -0
- package/build/lib/native/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js.map +1 -0
- package/build/lib/web/development/components/Accordion/AccordionButton.web.js +5 -7
- package/build/lib/web/development/components/Accordion/AccordionButton.web.js.map +1 -1
- package/build/lib/web/development/components/Accordion/AccordionItem.js +7 -5
- package/build/lib/web/development/components/Accordion/AccordionItem.js.map +1 -1
- package/build/lib/web/development/components/Alert/Alert.js +2 -0
- package/build/lib/web/development/components/Alert/Alert.js.map +1 -1
- package/build/lib/web/development/components/Avatar/AvatarButton.js +3 -0
- package/build/lib/web/development/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/development/components/Card/CardFooter.js +3 -0
- package/build/lib/web/development/components/Card/CardFooter.js.map +1 -1
- package/build/lib/web/development/components/Chip/Chip.js +5 -5
- package/build/lib/web/development/components/Chip/Chip.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js +6 -2
- package/build/lib/web/development/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/Calendar.web.js +4 -2
- package/build/lib/web/development/components/DatePicker/Calendar.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/CalendarFooter.web.js +4 -0
- package/build/lib/web/development/components/DatePicker/CalendarFooter.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/DateInput.web.js +10 -4
- package/build/lib/web/development/components/DatePicker/DateInput.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetSideBar.web.js +1 -0
- package/build/lib/web/development/components/DatePicker/QuickSelection/PresetSideBar.web.js.map +1 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/QuickSelectionItem.web.js +2 -1
- package/build/lib/web/development/components/DatePicker/QuickSelection/QuickSelectionItem.web.js.map +1 -1
- package/build/lib/web/development/components/FileUpload/FileUploadItem.js +3 -0
- package/build/lib/web/development/components/FileUpload/FileUploadItem.js.map +1 -1
- package/build/lib/web/development/components/Form/FormLabel.js +24 -4
- package/build/lib/web/development/components/Form/FormLabel.js.map +1 -1
- package/build/lib/web/development/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js +1 -3
- package/build/lib/web/development/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js.map +1 -1
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js +6 -2
- package/build/lib/web/development/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/development/components/Input/OTPInput/OTPInput.js +5 -1
- package/build/lib/web/development/components/Input/OTPInput/OTPInput.js.map +1 -1
- package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js +5 -1
- package/build/lib/web/development/components/Input/PasswordInput/PasswordInput.js.map +1 -1
- package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +5 -1
- package/build/lib/web/development/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
- package/build/lib/web/development/components/Input/SearchInput/SearchInput.js +5 -1
- package/build/lib/web/development/components/Input/SearchInput/SearchInput.js.map +1 -1
- package/build/lib/web/development/components/Input/TextArea/TextArea.js +5 -1
- package/build/lib/web/development/components/Input/TextArea/TextArea.js.map +1 -1
- package/build/lib/web/development/components/Input/TextInput/TextInput.js +5 -1
- package/build/lib/web/development/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/web/development/components/Modal/Modal.web.js +6 -7
- package/build/lib/web/development/components/Modal/Modal.web.js.map +1 -1
- package/build/lib/web/development/components/Preview/Preview.web.js +8 -7
- package/build/lib/web/development/components/Preview/Preview.web.js.map +1 -1
- package/build/lib/web/development/components/QuickFilters/QuickFilter.js +9 -7
- package/build/lib/web/development/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/web/development/components/SpotlightPopoverTour/TourFooter.web.js +12 -2
- package/build/lib/web/development/components/SpotlightPopoverTour/TourFooter.web.js.map +1 -1
- package/build/lib/web/development/components/Table/Table.web.js +6 -3
- package/build/lib/web/development/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableBody.web.js +5 -3
- package/build/lib/web/development/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableHeader.web.js +4 -2
- package/build/lib/web/development/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TablePagination.web.js +12 -6
- package/build/lib/web/development/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/development/components/Table/TableToolbar.web.js +5 -8
- package/build/lib/web/development/components/Table/TableToolbar.web.js.map +1 -1
- package/build/lib/web/development/components/Toast/Toast.web.js +2 -0
- package/build/lib/web/development/components/Toast/Toast.web.js.map +1 -1
- package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js +1 -0
- package/build/lib/web/development/utils/makeAnalyticsAttribute/index.js.map +1 -1
- package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js +32 -0
- package/build/lib/web/development/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js.map +1 -0
- package/build/lib/web/production/components/Accordion/AccordionButton.web.js +5 -7
- package/build/lib/web/production/components/Accordion/AccordionButton.web.js.map +1 -1
- package/build/lib/web/production/components/Accordion/AccordionItem.js +7 -5
- package/build/lib/web/production/components/Accordion/AccordionItem.js.map +1 -1
- package/build/lib/web/production/components/Alert/Alert.js +2 -0
- package/build/lib/web/production/components/Alert/Alert.js.map +1 -1
- package/build/lib/web/production/components/Avatar/AvatarButton.js +3 -0
- package/build/lib/web/production/components/Avatar/AvatarButton.js.map +1 -1
- package/build/lib/web/production/components/Card/CardFooter.js +3 -0
- package/build/lib/web/production/components/Card/CardFooter.js.map +1 -1
- package/build/lib/web/production/components/Chip/Chip.js +5 -5
- package/build/lib/web/production/components/Chip/Chip.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js +6 -2
- package/build/lib/web/production/components/DatePicker/BaseDatePicker.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/Calendar.web.js +4 -2
- package/build/lib/web/production/components/DatePicker/Calendar.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/CalendarFooter.web.js +4 -0
- package/build/lib/web/production/components/DatePicker/CalendarFooter.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/DateInput.web.js +10 -4
- package/build/lib/web/production/components/DatePicker/DateInput.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetSideBar.web.js +1 -0
- package/build/lib/web/production/components/DatePicker/QuickSelection/PresetSideBar.web.js.map +1 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/QuickSelectionItem.web.js +2 -1
- package/build/lib/web/production/components/DatePicker/QuickSelection/QuickSelectionItem.web.js.map +1 -1
- package/build/lib/web/production/components/FileUpload/FileUploadItem.js +3 -0
- package/build/lib/web/production/components/FileUpload/FileUploadItem.js.map +1 -1
- package/build/lib/web/production/components/Form/FormLabel.js +24 -4
- package/build/lib/web/production/components/Form/FormLabel.js.map +1 -1
- package/build/lib/web/production/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js +1 -3
- package/build/lib/web/production/components/Icons/CompanyRegistrationIcon/CompanyRegistrationIcon.js.map +1 -1
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js +6 -2
- package/build/lib/web/production/components/Input/BaseInput/BaseInput.js.map +1 -1
- package/build/lib/web/production/components/Input/OTPInput/OTPInput.js +5 -1
- package/build/lib/web/production/components/Input/OTPInput/OTPInput.js.map +1 -1
- package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js +5 -1
- package/build/lib/web/production/components/Input/PasswordInput/PasswordInput.js.map +1 -1
- package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js +5 -1
- package/build/lib/web/production/components/Input/PhoneNumberInput/PhoneNumberInput.web.js.map +1 -1
- package/build/lib/web/production/components/Input/SearchInput/SearchInput.js +5 -1
- package/build/lib/web/production/components/Input/SearchInput/SearchInput.js.map +1 -1
- package/build/lib/web/production/components/Input/TextArea/TextArea.js +5 -1
- package/build/lib/web/production/components/Input/TextArea/TextArea.js.map +1 -1
- package/build/lib/web/production/components/Input/TextInput/TextInput.js +5 -1
- package/build/lib/web/production/components/Input/TextInput/TextInput.js.map +1 -1
- package/build/lib/web/production/components/Modal/Modal.web.js +6 -7
- package/build/lib/web/production/components/Modal/Modal.web.js.map +1 -1
- package/build/lib/web/production/components/Preview/Preview.web.js +8 -7
- package/build/lib/web/production/components/Preview/Preview.web.js.map +1 -1
- package/build/lib/web/production/components/QuickFilters/QuickFilter.js +9 -7
- package/build/lib/web/production/components/QuickFilters/QuickFilter.js.map +1 -1
- package/build/lib/web/production/components/SpotlightPopoverTour/TourFooter.web.js +12 -2
- package/build/lib/web/production/components/SpotlightPopoverTour/TourFooter.web.js.map +1 -1
- package/build/lib/web/production/components/Table/Table.web.js +6 -3
- package/build/lib/web/production/components/Table/Table.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableBody.web.js +5 -3
- package/build/lib/web/production/components/Table/TableBody.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableHeader.web.js +4 -2
- package/build/lib/web/production/components/Table/TableHeader.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TablePagination.web.js +12 -6
- package/build/lib/web/production/components/Table/TablePagination.web.js.map +1 -1
- package/build/lib/web/production/components/Table/TableToolbar.web.js +5 -8
- package/build/lib/web/production/components/Table/TableToolbar.web.js.map +1 -1
- package/build/lib/web/production/components/Toast/Toast.web.js +2 -0
- package/build/lib/web/production/components/Toast/Toast.web.js.map +1 -1
- package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js +1 -0
- package/build/lib/web/production/utils/makeAnalyticsAttribute/index.js.map +1 -1
- package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js +32 -0
- package/build/lib/web/production/utils/makeAnalyticsAttribute/makeAnalyticsConstants.js.map +1 -0
- package/build/types/components/index.d.ts +29 -8
- package/build/types/components/index.native.d.ts +26 -7
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInput.js","sources":["../../../../../../../src/components/Input/TextInput/TextInput.tsx"],"sourcesContent":["import React, { useEffect, useState, useRef } from 'react';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { TextInput as TextInputReactNative } from 'react-native';\nimport type { BaseInputProps } from '../BaseInput';\nimport { BaseInput } from '../BaseInput';\nimport { getKeyboardAndAutocompleteProps } from '../BaseInput/utils';\nimport type { TaggedInputProps } from '../BaseInput/useTaggedInput';\nimport { useTaggedInput } from '../BaseInput/useTaggedInput';\nimport { useFormattedInput } from './useFormattedInput';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport type { IconComponent } from '~components/Icons';\nimport { CloseIcon } from '~components/Icons';\nimport { IconButton } from '~components/Button/IconButton';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { CharacterCounter } from '~components/Form/CharacterCounter';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Spinner } from '~components/Spinner';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getPlatformType } from '~utils';\nimport { useMergeRefs } from '~utils/useMergeRefs';\nimport type {\n BladeElementRef,\n BladeElementRefWithValue,\n ContainerElementType,\n DataAnalyticsAttribute,\n} from '~utils/types';\nimport { hintMarginTop } from '~components/Form/formTokens';\nimport { Divider } from '~components/Divider';\nimport { getComponentId } from '~utils/isValidAllowedChildren';\nimport { DropdownOverlay } from '~components/Dropdown';\nimport type { FormInputOnEvent } from '~components/Form/FormTypes';\n\n// Users should use PasswordInput for input type password\ntype Type = Exclude<BaseInputProps['type'], 'password'>;\n\ntype TextInputCommonProps = Pick<\n BaseInputProps,\n | 'label'\n | 'accessibilityLabel'\n | 'labelPosition'\n | 'necessityIndicator'\n | 'validationState'\n | 'helpText'\n | 'errorText'\n | 'successText'\n | 'placeholder'\n | 'defaultValue'\n | 'name'\n | 'onChange'\n | 'onFocus'\n | 'onBlur'\n | 'value'\n | 'isDisabled'\n | 'isRequired'\n | 'prefix'\n | 'suffix'\n | 'maxCharacters'\n | 'autoFocus'\n | 'keyboardReturnKeyType'\n | 'autoCompleteSuggestionType'\n | 'onSubmit'\n | 'autoCapitalize'\n | 'testID'\n | 'onClick'\n | 'size'\n | 'leadingIcon'\n | 'trailingButton'\n | 'trailingIcon'\n | 'textAlign'\n | keyof DataAnalyticsAttribute\n> & {\n /**\n * Decides whether to render a clear icon button\n */\n showClearButton?: boolean;\n\n /**\n * Event handler to handle the onClick event for clear button. Used when `showClearButton` is `true`\n */\n onClearButtonClick?: () => void;\n\n /**\n * Decides whether to show a loading spinner for the input field.\n */\n isLoading?: boolean;\n\n /**\n * Icon that will be rendered at the beginning of the input field\n * @deprecated Use `leading` instead. This prop will be removed in the next major version.\n */\n icon?: IconComponent;\n /**\n * Type of Input Field to be rendered. Use `PasswordInput` for type `password`\n *\n *\n * **Note on number type**\n *\n * `type=\"number\"` internally uses `inputMode=\"numeric\"` instead of HTML's `type=\"number\"` which also allows text characters.\n * If you have a usecase where you only want to support number input, you can handle it on validations end.\n *\n * Check out [Why the GOV.UK Design System team changed the input type for numbers](https://technology.blog.gov.uk/2020/02/24/why-the-gov-uk-design-system-team-changed-the-input-type-for-numbers/) for reasoning\n *\n * @default text\n */\n type?: Type;\n /**\n *\n * Icon or React Element to be rendered at the end of the input field\n */\n trailing?: React.ReactElement | IconComponent;\n /**\n * Icon or React Element to be rendered at the beginning of the input field\n */\n leading?: React.ReactElement | IconComponent;\n /**\n * Format pattern where # represents input characters and other symbols act as delimiters\n * When provided, input will be automatically formatted and onChange will include rawValue\n *\n * **Note:**\n * 1. Format pattern should only contain # symbols and special characters as delimiters.\n * Alphanumeric characters (letters and numbers) are not allowed in the format pattern.\n * 2. When format is provided, user input is restricted to alphanumeric characters only.\n * Special characters and symbols will be filtered out automatically from user input.\n *\n * @example \"#### #### #### ####\" for card numbers\n * @example \"##/##\" for expiry dates\n * @example \"(###) ###-####\" for phone numbers\n */\n format?:\n | '#### #### #### ####'\n | '##/##'\n | '##/##/####'\n | '(###) ###-####'\n | '###-##-####'\n | '##:##'\n | '##:##:##'\n | '#### #### ####'\n | '###.###.###.###'\n | '## ## ####'\n | '##-###-##'\n // eslint-disable-next-line @typescript-eslint/ban-types\n | (string & {});\n} & TaggedInputProps &\n StyledPropsBlade;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype TextInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype TextInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\ntype TextInputProps = (TextInputPropsWithA11yLabel | TextInputPropsWithLabel) &\n TextInputCommonProps;\n\n// need to do this to tell TS to infer type as TextInput of React Native and make it believe that `ref.current.clear()` exists\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst isReactNative = (_textInputRef: any): _textInputRef is TextInputReactNative => {\n return getPlatformType() === 'react-native';\n};\n\nconst _TextInput: React.ForwardRefRenderFunction<BladeElementRef, TextInputProps> = (\n {\n label,\n accessibilityLabel,\n labelPosition = 'top',\n placeholder,\n type = 'text',\n defaultValue,\n name,\n value,\n maxCharacters,\n format,\n onChange,\n onClick,\n onFocus,\n onBlur,\n onSubmit,\n isDisabled,\n necessityIndicator,\n validationState,\n errorText,\n helpText,\n successText,\n isRequired,\n icon,\n prefix,\n showClearButton,\n onClearButtonClick,\n isLoading,\n suffix,\n autoFocus,\n keyboardReturnKeyType,\n autoCompleteSuggestionType,\n autoCapitalize,\n testID,\n size = 'medium',\n leadingIcon,\n trailingIcon,\n isTaggedInput,\n tags,\n onTagChange,\n trailing,\n leading,\n ...rest\n },\n ref,\n): ReactElement => {\n const textInputRef = React.useRef<BladeElementRefWithValue>(null);\n const mergedRef = useMergeRefs(ref, textInputRef);\n const [shouldShowClearButton, setShouldShowClearButton] = useState(false);\n const [isInputFocussed, setIsInputFocussed] = useState(autoFocus ?? false);\n\n if (__DEV__) {\n if (format) {\n const hasAlphanumeric = /[a-zA-Z0-9]/.test(format);\n if (hasAlphanumeric) {\n throw new Error(\n `[Blade: TextInput] Invalid format \"${format}\". Only # and special characters allowed, no letters/numbers.`,\n );\n }\n }\n }\n\n const formattingResult = useFormattedInput({\n format,\n onChange,\n value,\n defaultValue,\n });\n\n const inputValue = format ? formattingResult.formattedValue : value;\n const effectiveMaxCharacters = format ? formattingResult.maxLength : maxCharacters;\n\n const handleOnChange: FormInputOnEvent = React.useCallback(\n ({ name, value: inputValue }) => {\n if (format) {\n formattingResult.handleChange({ name, value: inputValue });\n } else {\n onChange?.({ name, value: inputValue });\n }\n },\n [format, formattingResult.handleChange, onChange],\n );\n\n const {\n activeTagIndex,\n setActiveTagIndex,\n getTags,\n handleTaggedInputKeydown,\n handleTaggedInputChange,\n handleTagsClear,\n } = useTaggedInput({\n isTaggedInput,\n tags,\n onTagChange,\n isDisabled,\n onChange: handleOnChange,\n name,\n value: inputValue,\n inputRef: textInputRef,\n });\n const [isTrailingDropDownOpen, setIsTrailingDropDownOpen] = React.useState(false);\n const [isLeadingDropDownOpen, setIsLeadingDropDownOpen] = React.useState(false);\n const textInputWrapperRef = useRef<ContainerElementType | null>(null);\n\n useEffect(() => {\n if (isTrailingDropDownOpen && isLeadingDropDownOpen) {\n setIsLeadingDropDownOpen(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isTrailingDropDownOpen]);\n\n useEffect(() => {\n if (isLeadingDropDownOpen && isTrailingDropDownOpen) {\n setIsTrailingDropDownOpen(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isLeadingDropDownOpen]);\n\n const leadingDropDown =\n leading && getComponentId(leading as React.ReactElement) === 'Dropdown' ? leading : null;\n\n const trailingDropdown =\n trailing && getComponentId(trailing as React.ReactElement) === 'Dropdown' ? trailing : null;\n // we need to look into name of component and check if it 's and icon or a dropdown\n const _leadingIcon: IconComponent | undefined =\n leading && typeof leading === 'function' && leading.name?.endsWith('Icon')\n ? (leading as IconComponent)\n : undefined;\n\n const _trailingIcon: IconComponent | undefined =\n trailing && typeof trailing === 'function' && trailing.name?.endsWith('Icon')\n ? (trailing as IconComponent)\n : undefined;\n const hasLeadingInteractionElement = !_leadingIcon && !leadingDropDown && leading;\n\n const hasTrailingInteractionElement = !_trailingIcon && !trailingDropdown && trailing;\n\n const renderDropdown = (\n dropdown: React.ReactElement,\n isOpen: boolean,\n setIsOpen: (isOpen: boolean) => void,\n defaultPlacement: 'bottom-start' | 'bottom-end',\n ): React.ReactElement | null => {\n if (!dropdown) {\n return null;\n }\n return React.cloneElement(dropdown, {\n selectionType: 'single',\n isOpen,\n onOpenChange: (isOpen: boolean) => {\n setIsOpen(isOpen);\n },\n children: React.Children.map(dropdown.props.children, (child) => {\n if (child.type === DropdownOverlay) {\n return React.cloneElement(child, {\n referenceRef: textInputWrapperRef,\n _isNestedDropdown: true,\n defaultPlacement,\n });\n }\n return child;\n }),\n });\n };\n\n const renderLeadingDropDown = renderDropdown(\n leadingDropDown as React.ReactElement,\n isLeadingDropDownOpen,\n setIsLeadingDropDownOpen,\n 'bottom-start',\n );\n const renderTrailingDropDown = renderDropdown(\n trailingDropdown as React.ReactElement,\n isTrailingDropDownOpen,\n setIsTrailingDropDownOpen,\n 'bottom-end',\n );\n\n React.useEffect(() => {\n setShouldShowClearButton(Boolean(showClearButton && (defaultValue ?? inputValue)));\n }, [showClearButton, defaultValue, inputValue]);\n\n const renderClearButton = (): React.ReactElement => {\n return (\n <IconButton\n size=\"medium\"\n icon={CloseIcon}\n onClick={() => {\n if (isEmpty(inputValue) && textInputRef.current) {\n // when the input field is uncontrolled take the ref and clear the input and then call the onClearButtonClick function\n if (isReactNative(textInputRef.current)) {\n textInputRef.current.clear();\n textInputRef.current.focus();\n } else if (textInputRef.current instanceof HTMLInputElement) {\n textInputRef.current.value = '';\n textInputRef.current.focus();\n }\n }\n handleTagsClear();\n // if the input field is controlled just call the click handler and the value change shall be left upto the consumer\n onClearButtonClick?.();\n textInputRef?.current?.focus();\n setShouldShowClearButton(false);\n }}\n isDisabled={isDisabled}\n accessibilityLabel=\"Clear Input Content\"\n />\n );\n };\n const hasTrailingDropDown = Boolean(trailingDropdown);\n\n const renderInteractionElement = (): ReactNode => {\n if (isLoading) {\n return <Spinner accessibilityLabel=\"Loading Content\" color=\"primary\" />;\n }\n\n if (shouldShowClearButton && hasTrailingDropDown) {\n return (\n <BaseBox display=\"flex\" gap=\"spacing.3\">\n {renderClearButton()} <Divider orientation=\"vertical\" />\n </BaseBox>\n );\n }\n\n if (showClearButton && hasTrailingInteractionElement) {\n return (\n <BaseBox display=\"flex\" gap=\"spacing.3\">\n {renderClearButton()} <Divider orientation=\"vertical\" /> {trailing as React.ReactElement}\n </BaseBox>\n );\n }\n\n if (shouldShowClearButton) {\n return renderClearButton();\n }\n\n if (hasTrailingInteractionElement) {\n return trailing as React.ReactElement;\n }\n return null;\n };\n return (\n <BaseInput\n id=\"textinput\"\n componentName={MetaConstants.TextInput}\n ref={mergedRef}\n setInputWrapperRef={(wrapperNode) => {\n textInputWrapperRef.current = wrapperNode;\n }}\n label={label as string}\n accessibilityLabel={accessibilityLabel}\n hideLabelText={!Boolean(label)}\n labelPosition={labelPosition}\n placeholder={placeholder}\n // CONTROLLED/UNCONTROLLED INPUT LOGIC:\n // For inputs WITHOUT format:\n // - Use standard React controlled/uncontrolled logic\n // - Controlled: user provides `value` prop → use `value` prop\n // - Uncontrolled: user provides `defaultValue` prop → use `defaultValue` prop\n //\n // For inputs WITH format:\n // - Formatting requires controlled mode to re-render and show formatted values\n // - Case 1: Only `value` provided → defaultValue: undefined, value: formattedValue (normal controlled)\n // - Case 2: Only `defaultValue` provided → defaultValue: undefined, value: formattedValue (convert to controlled)\n // - Case 3: Both `value` and `defaultValue` provided → defaultValue: defaultValue, value: formattedValue (let BaseInput detect conflict and throw error)\n //\n defaultValue={\n format\n ? value !== undefined && defaultValue !== undefined\n ? defaultValue\n : undefined\n : defaultValue\n }\n value={format ? inputValue : value}\n name={name}\n maxCharacters={effectiveMaxCharacters}\n isDropdownTrigger={isTaggedInput}\n tags={isTaggedInput ? getTags({ size }) : undefined}\n showAllTags={isInputFocussed}\n maxTagRows=\"single\"\n activeTagIndex={activeTagIndex}\n setActiveTagIndex={setActiveTagIndex}\n leadingDropDown={renderLeadingDropDown}\n trailingDropDown={renderTrailingDropDown}\n leadingInteractionElement={\n hasLeadingInteractionElement ? (leading as React.ReactElement) : null\n }\n onChange={({ name, value }: { name?: string; value?: string }) => {\n if (showClearButton && value?.length) {\n // show the clear button when the user starts typing in\n setShouldShowClearButton(true);\n }\n\n if (shouldShowClearButton && !value?.length) {\n // hide the clear button when the input field is empty\n setShouldShowClearButton(false);\n }\n\n handleTaggedInputChange({ name, value });\n handleOnChange({ name, value });\n }}\n onClick={onClick}\n onFocus={(e) => {\n setIsInputFocussed(true);\n onFocus?.(e);\n }}\n onBlur={(e) => {\n setIsInputFocussed(false);\n onBlur?.(e);\n }}\n onKeyDown={(e) => {\n handleTaggedInputKeydown(e);\n if (format) {\n formattingResult.handleKeyDown(e.event);\n }\n }}\n onSubmit={onSubmit}\n isDisabled={isDisabled}\n necessityIndicator={necessityIndicator}\n isRequired={isRequired}\n leadingIcon={_leadingIcon ?? leadingIcon ?? icon}\n prefix={prefix}\n trailingInteractionElement={renderInteractionElement()}\n trailingIcon={_trailingIcon ?? trailingIcon}\n suffix={suffix}\n validationState={validationState}\n errorText={errorText}\n helpText={helpText}\n successText={successText}\n trailingFooterSlot={(value) => {\n return format ? null : effectiveMaxCharacters ? (\n <BaseBox marginTop={hintMarginTop[size]} marginRight=\"spacing.1\">\n <CharacterCounter\n currentCount={value?.length ?? 0}\n maxCount={effectiveMaxCharacters}\n size={size}\n />\n </BaseBox>\n ) : null;\n }}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n testID={testID}\n {...getKeyboardAndAutocompleteProps({\n type,\n keyboardReturnKeyType,\n autoCompleteSuggestionType,\n autoCapitalize,\n })}\n size={size}\n {...rest}\n />\n );\n};\n\nconst TextInput = assignWithoutSideEffects(React.forwardRef(_TextInput), {\n displayName: 'TextInput',\n});\n\nexport type { TextInputProps };\nexport { TextInput };\n"],"names":["isReactNative","_textInputRef","getPlatformType","_TextInput","_ref","ref","_leading$name","_trailing$name","_ref4","label","accessibilityLabel","_ref$labelPosition","labelPosition","placeholder","_ref$type","type","defaultValue","name","value","maxCharacters","format","onChange","onClick","onFocus","onBlur","onSubmit","isDisabled","necessityIndicator","validationState","errorText","helpText","successText","isRequired","icon","prefix","showClearButton","onClearButtonClick","isLoading","suffix","autoFocus","keyboardReturnKeyType","autoCompleteSuggestionType","autoCapitalize","testID","_ref$size","size","leadingIcon","trailingIcon","isTaggedInput","tags","onTagChange","trailing","leading","rest","_objectWithoutProperties","_excluded","textInputRef","React","useRef","mergedRef","useMergeRefs","_useState","useState","_useState2","_slicedToArray","shouldShowClearButton","setShouldShowClearButton","_useState3","_useState4","isInputFocussed","setIsInputFocussed","hasAlphanumeric","test","Error","concat","formattingResult","useFormattedInput","inputValue","formattedValue","effectiveMaxCharacters","maxLength","handleOnChange","useCallback","_ref2","handleChange","_useTaggedInput","useTaggedInput","inputRef","activeTagIndex","setActiveTagIndex","getTags","handleTaggedInputKeydown","handleTaggedInputChange","handleTagsClear","_React$useState","_React$useState2","isTrailingDropDownOpen","setIsTrailingDropDownOpen","_React$useState3","_React$useState4","isLeadingDropDownOpen","setIsLeadingDropDownOpen","textInputWrapperRef","useEffect","leadingDropDown","getComponentId","trailingDropdown","_leadingIcon","endsWith","undefined","_trailingIcon","hasLeadingInteractionElement","hasTrailingInteractionElement","renderDropdown","dropdown","isOpen","setIsOpen","defaultPlacement","cloneElement","selectionType","onOpenChange","children","Children","map","props","child","DropdownOverlay","referenceRef","_isNestedDropdown","renderLeadingDropDown","renderTrailingDropDown","Boolean","renderClearButton","_jsx","IconButton","CloseIcon","_textInputRef$current","isEmpty","current","clear","focus","HTMLInputElement","hasTrailingDropDown","renderInteractionElement","Spinner","color","_jsxs","BaseBox","display","gap","Divider","orientation","BaseInput","_objectSpread","id","componentName","MetaConstants","TextInput","setInputWrapperRef","wrapperNode","hideLabelText","isDropdownTrigger","showAllTags","maxTagRows","trailingDropDown","leadingInteractionElement","_ref3","length","e","onKeyDown","handleKeyDown","event","trailingInteractionElement","trailingFooterSlot","_value$length","marginTop","hintMarginTop","marginRight","CharacterCounter","currentCount","maxCount","getKeyboardAndAutocompleteProps","assignWithoutSideEffects","forwardRef","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TextInput.js","sources":["../../../../../../../src/components/Input/TextInput/TextInput.tsx"],"sourcesContent":["import React, { useEffect, useState, useRef } from 'react';\nimport type { ReactElement, ReactNode } from 'react';\nimport type { TextInput as TextInputReactNative } from 'react-native';\nimport type { BaseInputProps } from '../BaseInput';\nimport { BaseInput } from '../BaseInput';\nimport { getKeyboardAndAutocompleteProps } from '../BaseInput/utils';\nimport type { TaggedInputProps } from '../BaseInput/useTaggedInput';\nimport { useTaggedInput } from '../BaseInput/useTaggedInput';\nimport { useFormattedInput } from './useFormattedInput';\nimport isEmpty from '~utils/lodashButBetter/isEmpty';\nimport type { IconComponent } from '~components/Icons';\nimport { CloseIcon } from '~components/Icons';\nimport { IconButton } from '~components/Button/IconButton';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { CharacterCounter } from '~components/Form/CharacterCounter';\nimport BaseBox from '~components/Box/BaseBox';\nimport { Spinner } from '~components/Spinner';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { getPlatformType } from '~utils';\nimport { useMergeRefs } from '~utils/useMergeRefs';\nimport type {\n BladeElementRef,\n BladeElementRefWithValue,\n ContainerElementType,\n DataAnalyticsAttribute,\n} from '~utils/types';\nimport { hintMarginTop } from '~components/Form/formTokens';\nimport { Divider } from '~components/Divider';\nimport { getComponentId } from '~utils/isValidAllowedChildren';\nimport { DropdownOverlay } from '~components/Dropdown';\nimport type { FormInputOnEvent } from '~components/Form/FormTypes';\n\n// Users should use PasswordInput for input type password\ntype Type = Exclude<BaseInputProps['type'], 'password'>;\n\ntype TextInputCommonProps = Pick<\n BaseInputProps,\n | 'label'\n | 'accessibilityLabel'\n | 'labelPosition'\n | 'labelSuffix'\n | 'labelTrailing'\n | 'necessityIndicator'\n | 'validationState'\n | 'helpText'\n | 'errorText'\n | 'successText'\n | 'placeholder'\n | 'defaultValue'\n | 'name'\n | 'onChange'\n | 'onFocus'\n | 'onBlur'\n | 'value'\n | 'isDisabled'\n | 'isRequired'\n | 'prefix'\n | 'suffix'\n | 'maxCharacters'\n | 'autoFocus'\n | 'keyboardReturnKeyType'\n | 'autoCompleteSuggestionType'\n | 'onSubmit'\n | 'autoCapitalize'\n | 'testID'\n | 'onClick'\n | 'size'\n | 'leadingIcon'\n | 'trailingButton'\n | 'trailingIcon'\n | 'textAlign'\n | keyof DataAnalyticsAttribute\n> & {\n /**\n * Decides whether to render a clear icon button\n */\n showClearButton?: boolean;\n\n /**\n * Event handler to handle the onClick event for clear button. Used when `showClearButton` is `true`\n */\n onClearButtonClick?: () => void;\n\n /**\n * Decides whether to show a loading spinner for the input field.\n */\n isLoading?: boolean;\n\n /**\n * Icon that will be rendered at the beginning of the input field\n * @deprecated Use `leading` instead. This prop will be removed in the next major version.\n */\n icon?: IconComponent;\n /**\n * Type of Input Field to be rendered. Use `PasswordInput` for type `password`\n *\n *\n * **Note on number type**\n *\n * `type=\"number\"` internally uses `inputMode=\"numeric\"` instead of HTML's `type=\"number\"` which also allows text characters.\n * If you have a usecase where you only want to support number input, you can handle it on validations end.\n *\n * Check out [Why the GOV.UK Design System team changed the input type for numbers](https://technology.blog.gov.uk/2020/02/24/why-the-gov-uk-design-system-team-changed-the-input-type-for-numbers/) for reasoning\n *\n * @default text\n */\n type?: Type;\n /**\n *\n * Icon or React Element to be rendered at the end of the input field\n */\n trailing?: React.ReactElement | IconComponent;\n /**\n * Icon or React Element to be rendered at the beginning of the input field\n */\n leading?: React.ReactElement | IconComponent;\n /**\n * Format pattern where # represents input characters and other symbols act as delimiters\n * When provided, input will be automatically formatted and onChange will include rawValue\n *\n * **Note:**\n * 1. Format pattern should only contain # symbols and special characters as delimiters.\n * Alphanumeric characters (letters and numbers) are not allowed in the format pattern.\n * 2. When format is provided, user input is restricted to alphanumeric characters only.\n * Special characters and symbols will be filtered out automatically from user input.\n *\n * @example \"#### #### #### ####\" for card numbers\n * @example \"##/##\" for expiry dates\n * @example \"(###) ###-####\" for phone numbers\n */\n format?:\n | '#### #### #### ####'\n | '##/##'\n | '##/##/####'\n | '(###) ###-####'\n | '###-##-####'\n | '##:##'\n | '##:##:##'\n | '#### #### ####'\n | '###.###.###.###'\n | '## ## ####'\n | '##-###-##'\n // eslint-disable-next-line @typescript-eslint/ban-types\n | (string & {});\n} & TaggedInputProps &\n StyledPropsBlade;\n\n/*\n Mandatory accessibilityLabel prop when label is not provided\n*/\ntype TextInputPropsWithA11yLabel = {\n /**\n * Label to be shown for the input field\n */\n label?: undefined;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel: string;\n};\n\n/*\n Optional accessibilityLabel prop when label is provided\n*/\ntype TextInputPropsWithLabel = {\n /**\n * Label to be shown for the input field\n */\n label: string;\n /**\n * Accessibility label for the input\n */\n accessibilityLabel?: string;\n};\n\ntype TextInputProps = (TextInputPropsWithA11yLabel | TextInputPropsWithLabel) &\n TextInputCommonProps;\n\n// need to do this to tell TS to infer type as TextInput of React Native and make it believe that `ref.current.clear()` exists\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst isReactNative = (_textInputRef: any): _textInputRef is TextInputReactNative => {\n return getPlatformType() === 'react-native';\n};\n\nconst _TextInput: React.ForwardRefRenderFunction<BladeElementRef, TextInputProps> = (\n {\n label,\n accessibilityLabel,\n labelPosition = 'top',\n placeholder,\n type = 'text',\n defaultValue,\n name,\n value,\n maxCharacters,\n format,\n onChange,\n onClick,\n onFocus,\n onBlur,\n onSubmit,\n isDisabled,\n necessityIndicator,\n validationState,\n errorText,\n helpText,\n successText,\n isRequired,\n icon,\n prefix,\n showClearButton,\n onClearButtonClick,\n isLoading,\n suffix,\n autoFocus,\n keyboardReturnKeyType,\n autoCompleteSuggestionType,\n autoCapitalize,\n testID,\n size = 'medium',\n leadingIcon,\n trailingIcon,\n isTaggedInput,\n tags,\n onTagChange,\n trailing,\n leading,\n labelSuffix,\n labelTrailing,\n ...rest\n },\n ref,\n): ReactElement => {\n const textInputRef = React.useRef<BladeElementRefWithValue>(null);\n const mergedRef = useMergeRefs(ref, textInputRef);\n const [shouldShowClearButton, setShouldShowClearButton] = useState(false);\n const [isInputFocussed, setIsInputFocussed] = useState(autoFocus ?? false);\n\n if (__DEV__) {\n if (format) {\n const hasAlphanumeric = /[a-zA-Z0-9]/.test(format);\n if (hasAlphanumeric) {\n throw new Error(\n `[Blade: TextInput] Invalid format \"${format}\". Only # and special characters allowed, no letters/numbers.`,\n );\n }\n }\n }\n\n const formattingResult = useFormattedInput({\n format,\n onChange,\n value,\n defaultValue,\n });\n\n const inputValue = format ? formattingResult.formattedValue : value;\n const effectiveMaxCharacters = format ? formattingResult.maxLength : maxCharacters;\n\n const handleOnChange: FormInputOnEvent = React.useCallback(\n ({ name, value: inputValue }) => {\n if (format) {\n formattingResult.handleChange({ name, value: inputValue });\n } else {\n onChange?.({ name, value: inputValue });\n }\n },\n [format, formattingResult.handleChange, onChange],\n );\n\n const {\n activeTagIndex,\n setActiveTagIndex,\n getTags,\n handleTaggedInputKeydown,\n handleTaggedInputChange,\n handleTagsClear,\n } = useTaggedInput({\n isTaggedInput,\n tags,\n onTagChange,\n isDisabled,\n onChange: handleOnChange,\n name,\n value: inputValue,\n inputRef: textInputRef,\n });\n const [isTrailingDropDownOpen, setIsTrailingDropDownOpen] = React.useState(false);\n const [isLeadingDropDownOpen, setIsLeadingDropDownOpen] = React.useState(false);\n const textInputWrapperRef = useRef<ContainerElementType | null>(null);\n\n useEffect(() => {\n if (isTrailingDropDownOpen && isLeadingDropDownOpen) {\n setIsLeadingDropDownOpen(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isTrailingDropDownOpen]);\n\n useEffect(() => {\n if (isLeadingDropDownOpen && isTrailingDropDownOpen) {\n setIsTrailingDropDownOpen(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isLeadingDropDownOpen]);\n\n const leadingDropDown =\n leading && getComponentId(leading as React.ReactElement) === 'Dropdown' ? leading : null;\n\n const trailingDropdown =\n trailing && getComponentId(trailing as React.ReactElement) === 'Dropdown' ? trailing : null;\n // we need to look into name of component and check if it 's and icon or a dropdown\n const _leadingIcon: IconComponent | undefined =\n leading && typeof leading === 'function' && leading.name?.endsWith('Icon')\n ? (leading as IconComponent)\n : undefined;\n\n const _trailingIcon: IconComponent | undefined =\n trailing && typeof trailing === 'function' && trailing.name?.endsWith('Icon')\n ? (trailing as IconComponent)\n : undefined;\n const hasLeadingInteractionElement = !_leadingIcon && !leadingDropDown && leading;\n\n const hasTrailingInteractionElement = !_trailingIcon && !trailingDropdown && trailing;\n\n const renderDropdown = (\n dropdown: React.ReactElement,\n isOpen: boolean,\n setIsOpen: (isOpen: boolean) => void,\n defaultPlacement: 'bottom-start' | 'bottom-end',\n ): React.ReactElement | null => {\n if (!dropdown) {\n return null;\n }\n return React.cloneElement(dropdown, {\n selectionType: 'single',\n isOpen,\n onOpenChange: (isOpen: boolean) => {\n setIsOpen(isOpen);\n },\n children: React.Children.map(dropdown.props.children, (child) => {\n if (child.type === DropdownOverlay) {\n return React.cloneElement(child, {\n referenceRef: textInputWrapperRef,\n _isNestedDropdown: true,\n defaultPlacement,\n });\n }\n return child;\n }),\n });\n };\n\n const renderLeadingDropDown = renderDropdown(\n leadingDropDown as React.ReactElement,\n isLeadingDropDownOpen,\n setIsLeadingDropDownOpen,\n 'bottom-start',\n );\n const renderTrailingDropDown = renderDropdown(\n trailingDropdown as React.ReactElement,\n isTrailingDropDownOpen,\n setIsTrailingDropDownOpen,\n 'bottom-end',\n );\n\n React.useEffect(() => {\n setShouldShowClearButton(Boolean(showClearButton && (defaultValue ?? inputValue)));\n }, [showClearButton, defaultValue, inputValue]);\n\n const renderClearButton = (): React.ReactElement => {\n return (\n <IconButton\n size=\"medium\"\n icon={CloseIcon}\n onClick={() => {\n if (isEmpty(inputValue) && textInputRef.current) {\n // when the input field is uncontrolled take the ref and clear the input and then call the onClearButtonClick function\n if (isReactNative(textInputRef.current)) {\n textInputRef.current.clear();\n textInputRef.current.focus();\n } else if (textInputRef.current instanceof HTMLInputElement) {\n textInputRef.current.value = '';\n textInputRef.current.focus();\n }\n }\n handleTagsClear();\n // if the input field is controlled just call the click handler and the value change shall be left upto the consumer\n onClearButtonClick?.();\n textInputRef?.current?.focus();\n setShouldShowClearButton(false);\n }}\n isDisabled={isDisabled}\n accessibilityLabel=\"Clear Input Content\"\n />\n );\n };\n const hasTrailingDropDown = Boolean(trailingDropdown);\n\n const renderInteractionElement = (): ReactNode => {\n if (isLoading) {\n return <Spinner accessibilityLabel=\"Loading Content\" color=\"primary\" />;\n }\n\n if (shouldShowClearButton && hasTrailingDropDown) {\n return (\n <BaseBox display=\"flex\" gap=\"spacing.3\">\n {renderClearButton()} <Divider orientation=\"vertical\" />\n </BaseBox>\n );\n }\n\n if (showClearButton && hasTrailingInteractionElement) {\n return (\n <BaseBox display=\"flex\" gap=\"spacing.3\">\n {renderClearButton()} <Divider orientation=\"vertical\" /> {trailing as React.ReactElement}\n </BaseBox>\n );\n }\n\n if (shouldShowClearButton) {\n return renderClearButton();\n }\n\n if (hasTrailingInteractionElement) {\n return trailing as React.ReactElement;\n }\n return null;\n };\n return (\n <BaseInput\n id=\"textinput\"\n componentName={MetaConstants.TextInput}\n ref={mergedRef}\n setInputWrapperRef={(wrapperNode) => {\n textInputWrapperRef.current = wrapperNode;\n }}\n label={label as string}\n labelSuffix={labelSuffix}\n labelTrailing={labelTrailing}\n accessibilityLabel={accessibilityLabel}\n hideLabelText={!Boolean(label)}\n labelPosition={labelPosition}\n placeholder={placeholder}\n // CONTROLLED/UNCONTROLLED INPUT LOGIC:\n // For inputs WITHOUT format:\n // - Use standard React controlled/uncontrolled logic\n // - Controlled: user provides `value` prop → use `value` prop\n // - Uncontrolled: user provides `defaultValue` prop → use `defaultValue` prop\n //\n // For inputs WITH format:\n // - Formatting requires controlled mode to re-render and show formatted values\n // - Case 1: Only `value` provided → defaultValue: undefined, value: formattedValue (normal controlled)\n // - Case 2: Only `defaultValue` provided → defaultValue: undefined, value: formattedValue (convert to controlled)\n // - Case 3: Both `value` and `defaultValue` provided → defaultValue: defaultValue, value: formattedValue (let BaseInput detect conflict and throw error)\n //\n defaultValue={\n format\n ? value !== undefined && defaultValue !== undefined\n ? defaultValue\n : undefined\n : defaultValue\n }\n value={format ? inputValue : value}\n name={name}\n maxCharacters={effectiveMaxCharacters}\n isDropdownTrigger={isTaggedInput}\n tags={isTaggedInput ? getTags({ size }) : undefined}\n showAllTags={isInputFocussed}\n maxTagRows=\"single\"\n activeTagIndex={activeTagIndex}\n setActiveTagIndex={setActiveTagIndex}\n leadingDropDown={renderLeadingDropDown}\n trailingDropDown={renderTrailingDropDown}\n leadingInteractionElement={\n hasLeadingInteractionElement ? (leading as React.ReactElement) : null\n }\n onChange={({ name, value }: { name?: string; value?: string }) => {\n if (showClearButton && value?.length) {\n // show the clear button when the user starts typing in\n setShouldShowClearButton(true);\n }\n\n if (shouldShowClearButton && !value?.length) {\n // hide the clear button when the input field is empty\n setShouldShowClearButton(false);\n }\n\n handleTaggedInputChange({ name, value });\n handleOnChange({ name, value });\n }}\n onClick={onClick}\n onFocus={(e) => {\n setIsInputFocussed(true);\n onFocus?.(e);\n }}\n onBlur={(e) => {\n setIsInputFocussed(false);\n onBlur?.(e);\n }}\n onKeyDown={(e) => {\n handleTaggedInputKeydown(e);\n if (format) {\n formattingResult.handleKeyDown(e.event);\n }\n }}\n onSubmit={onSubmit}\n isDisabled={isDisabled}\n necessityIndicator={necessityIndicator}\n isRequired={isRequired}\n leadingIcon={_leadingIcon ?? leadingIcon ?? icon}\n prefix={prefix}\n trailingInteractionElement={renderInteractionElement()}\n trailingIcon={_trailingIcon ?? trailingIcon}\n suffix={suffix}\n validationState={validationState}\n errorText={errorText}\n helpText={helpText}\n successText={successText}\n trailingFooterSlot={(value) => {\n return format ? null : effectiveMaxCharacters ? (\n <BaseBox marginTop={hintMarginTop[size]} marginRight=\"spacing.1\">\n <CharacterCounter\n currentCount={value?.length ?? 0}\n maxCount={effectiveMaxCharacters}\n size={size}\n />\n </BaseBox>\n ) : null;\n }}\n // eslint-disable-next-line jsx-a11y/no-autofocus\n autoFocus={autoFocus}\n testID={testID}\n {...getKeyboardAndAutocompleteProps({\n type,\n keyboardReturnKeyType,\n autoCompleteSuggestionType,\n autoCapitalize,\n })}\n size={size}\n {...rest}\n />\n );\n};\n\nconst TextInput = assignWithoutSideEffects(React.forwardRef(_TextInput), {\n displayName: 'TextInput',\n});\n\nexport type { TextInputProps };\nexport { TextInput };\n"],"names":["isReactNative","_textInputRef","getPlatformType","_TextInput","_ref","ref","_leading$name","_trailing$name","_ref4","label","accessibilityLabel","_ref$labelPosition","labelPosition","placeholder","_ref$type","type","defaultValue","name","value","maxCharacters","format","onChange","onClick","onFocus","onBlur","onSubmit","isDisabled","necessityIndicator","validationState","errorText","helpText","successText","isRequired","icon","prefix","showClearButton","onClearButtonClick","isLoading","suffix","autoFocus","keyboardReturnKeyType","autoCompleteSuggestionType","autoCapitalize","testID","_ref$size","size","leadingIcon","trailingIcon","isTaggedInput","tags","onTagChange","trailing","leading","labelSuffix","labelTrailing","rest","_objectWithoutProperties","_excluded","textInputRef","React","useRef","mergedRef","useMergeRefs","_useState","useState","_useState2","_slicedToArray","shouldShowClearButton","setShouldShowClearButton","_useState3","_useState4","isInputFocussed","setIsInputFocussed","hasAlphanumeric","test","Error","concat","formattingResult","useFormattedInput","inputValue","formattedValue","effectiveMaxCharacters","maxLength","handleOnChange","useCallback","_ref2","handleChange","_useTaggedInput","useTaggedInput","inputRef","activeTagIndex","setActiveTagIndex","getTags","handleTaggedInputKeydown","handleTaggedInputChange","handleTagsClear","_React$useState","_React$useState2","isTrailingDropDownOpen","setIsTrailingDropDownOpen","_React$useState3","_React$useState4","isLeadingDropDownOpen","setIsLeadingDropDownOpen","textInputWrapperRef","useEffect","leadingDropDown","getComponentId","trailingDropdown","_leadingIcon","endsWith","undefined","_trailingIcon","hasLeadingInteractionElement","hasTrailingInteractionElement","renderDropdown","dropdown","isOpen","setIsOpen","defaultPlacement","cloneElement","selectionType","onOpenChange","children","Children","map","props","child","DropdownOverlay","referenceRef","_isNestedDropdown","renderLeadingDropDown","renderTrailingDropDown","Boolean","renderClearButton","_jsx","IconButton","CloseIcon","_textInputRef$current","isEmpty","current","clear","focus","HTMLInputElement","hasTrailingDropDown","renderInteractionElement","Spinner","color","_jsxs","BaseBox","display","gap","Divider","orientation","BaseInput","_objectSpread","id","componentName","MetaConstants","TextInput","setInputWrapperRef","wrapperNode","hideLabelText","isDropdownTrigger","showAllTags","maxTagRows","trailingDropDown","leadingInteractionElement","_ref3","length","e","onKeyDown","handleKeyDown","event","trailingInteractionElement","trailingFooterSlot","_value$length","marginTop","hintMarginTop","marginRight","CharacterCounter","currentCount","maxCount","getKeyboardAndAutocompleteProps","assignWithoutSideEffects","forwardRef","displayName"],"mappings":"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"}
|
|
@@ -27,10 +27,10 @@ import { makeSize } from '../../utils/makeSize/makeSize.js';
|
|
|
27
27
|
import useTheme from '../BladeProvider/useTheme.js';
|
|
28
28
|
import { logger } from '../../utils/logger/logger.js';
|
|
29
29
|
import { Box } from '../Box/Box.js';
|
|
30
|
-
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
31
30
|
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
|
|
32
31
|
import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
|
|
33
32
|
import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
|
|
33
|
+
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
34
34
|
|
|
35
35
|
var _excluded = ["isOpen", "children", "onDismiss", "initialFocusRef", "size", "accessibilityLabel", "zIndex"];
|
|
36
36
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -110,18 +110,17 @@ var Modal = function Modal(_ref2) {
|
|
|
110
110
|
initialFocus: initialFocusRef !== null && initialFocusRef !== void 0 ? initialFocusRef : defaultInitialFocusRef,
|
|
111
111
|
context: context,
|
|
112
112
|
modal: true,
|
|
113
|
-
children: /*#__PURE__*/jsxs(Box,
|
|
113
|
+
children: /*#__PURE__*/jsxs(Box, {
|
|
114
114
|
zIndex: zIndex,
|
|
115
115
|
position: "fixed",
|
|
116
|
-
testID: "modal-wrapper"
|
|
117
|
-
|
|
118
|
-
children: [/*#__PURE__*/jsx(ModalBackdrop, {}), /*#__PURE__*/jsx(ModalContent, _objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
|
|
116
|
+
testID: "modal-wrapper",
|
|
117
|
+
children: [/*#__PURE__*/jsx(ModalBackdrop, {}), /*#__PURE__*/jsx(ModalContent, _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, metaAttribute({
|
|
119
118
|
name: MetaConstants.Modal
|
|
120
119
|
})), makeAccessible({
|
|
121
120
|
role: 'dialog',
|
|
122
121
|
modal: true,
|
|
123
122
|
label: accessibilityLabel
|
|
124
|
-
})), {}, {
|
|
123
|
+
})), makeAnalyticsAttribute(rest)), {}, {
|
|
125
124
|
maxWidth: size === 'full' ? '100%' : makeSize(modalMaxWidth[size]),
|
|
126
125
|
minWidth: makeSize(modalMinWidth),
|
|
127
126
|
maxHeight: modalMaxHeight[size],
|
|
@@ -139,7 +138,7 @@ var Modal = function Modal(_ref2) {
|
|
|
139
138
|
overflow: "hidden",
|
|
140
139
|
children: children
|
|
141
140
|
}))]
|
|
142
|
-
})
|
|
141
|
+
})
|
|
143
142
|
}) : null
|
|
144
143
|
})
|
|
145
144
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.web.js","sources":["../../../../../../src/components/Modal/Modal.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect } from 'react';\nimport styled, { css } from 'styled-components';\nimport { FloatingFocusManager, FloatingPortal, useFloating } from '@floating-ui/react';\nimport usePresence from 'use-presence';\nimport { ModalHeader } from './ModalHeader';\nimport type { ModalHeaderProps } from './ModalHeader';\nimport { ModalFooter } from './ModalFooter';\nimport type { ModalFooterProps } from './ModalFooter';\nimport { ModalBody } from './ModalBody';\nimport type { ModalBodyProps } from './ModalBody';\nimport { ModalContext } from './ModalContext';\nimport { ModalBackdrop } from './ModalBackdrop';\nimport {\n modalBorderRadius,\n modalMaxHeight,\n modalMaxWidth,\n modalMinWidth,\n modalResponsiveScreenGap,\n modalMargin,\n} from './modalTokens';\nimport type { ModalProps } from './types';\nimport { castWebType, makeMotionTime, makeSize } from '~utils';\nimport { BaseBox } from '~components/Box/BaseBox';\nimport { useTheme } from '~components/BladeProvider';\nimport { Box } from '~components/Box';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { logger } from '~utils/logger';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst ModalContent = styled(BaseBox)<{ isVisible: boolean; size: NonNullable<ModalProps['size']> }>(\n ({ isVisible, theme, size }) => {\n const scale = isVisible ? 1 : 0.9;\n const transform = size !== 'full' ? `translate(-50%, -50%) scale(${scale})` : ``;\n\n return css`\n box-shadow: ${theme.elevation.highRaised};\n opacity: ${isVisible ? 1 : 0};\n position: fixed;\n transform: ${transform};\n transition-property: opacity, transform;\n transition-duration: ${castWebType(makeMotionTime(theme.motion.duration.moderate))};\n transition-timing-function: ${isVisible\n ? castWebType(theme.motion.easing.entrance)\n : castWebType(theme.motion.easing.exit)};\n\n ${size === 'full' &&\n css`\n top: ${makeSize(modalMargin[size])};\n left: ${makeSize(modalMargin[size])};\n right: ${makeSize(modalMargin[size])};\n bottom: ${makeSize(modalMargin[size])};\n `}\n `;\n },\n);\n\nconst Modal = ({\n isOpen = false,\n children,\n onDismiss,\n initialFocusRef,\n size = 'small',\n accessibilityLabel,\n zIndex = componentZIndices.modal,\n ...rest\n}: ModalProps): React.ReactElement => {\n const { theme, platform } = useTheme();\n const { isMounted, isVisible } = usePresence(isOpen, {\n transitionDuration: theme.motion.duration.moderate,\n initialEnter: true,\n });\n\n // Warn consumer if modal is opened on mobile\n useEffect(() => {\n if (__DEV__) {\n if (platform === 'onMobile') {\n logger({\n message: 'Modal is not supported on mobile devices. Please use BottomSheet instead.',\n moduleName: 'Modal',\n type: 'warn',\n });\n }\n }\n }, [platform]);\n\n // required by floating ui to handle focus\n const { refs, context } = useFloating({\n open: isMounted,\n });\n\n const defaultInitialFocusRef = React.useRef<any>(null);\n\n const modalContext = React.useMemo(\n () => ({\n isOpen,\n close: onDismiss,\n defaultInitialFocusRef,\n isVisible,\n }),\n [isOpen, onDismiss, defaultInitialFocusRef, isVisible],\n );\n const handleKeyDown = (event: React.KeyboardEvent): void => {\n // close modal on escape key press\n if (event?.key === 'Escape' || event?.code === 'Escape') {\n onDismiss();\n }\n };\n\n return (\n <FloatingPortal>\n <ModalContext.Provider value={modalContext}>\n {isMounted ? (\n <FloatingFocusManager\n returnFocus\n initialFocus={initialFocusRef ?? defaultInitialFocusRef}\n context={context}\n modal={true}\n >\n <Box\n zIndex={zIndex}\n position=\"fixed\"\n testID=\"modal-wrapper\"\n {...makeAnalyticsAttribute(rest)}\n >\n <ModalBackdrop />\n <ModalContent\n {...metaAttribute({\n name: MetaConstants.Modal,\n })}\n {...makeAccessible({\n role: 'dialog',\n modal: true,\n label: accessibilityLabel,\n })}\n maxWidth={size === 'full' ? '100%' : makeSize(modalMaxWidth[size])}\n minWidth={makeSize(modalMinWidth)}\n maxHeight={modalMaxHeight[size]}\n width={\n size === 'full'\n ? `calc(100vw - ${makeSize(modalMargin[size] * 2)})`\n : `calc(100vw - ${makeSize(modalResponsiveScreenGap)})`\n }\n borderRadius={modalBorderRadius}\n backgroundColor=\"popup.background.subtle\"\n display=\"flex\"\n flexDirection=\"column\"\n top=\"50%\"\n left=\"50%\"\n onKeyDown={handleKeyDown}\n isVisible={isVisible}\n size={size}\n ref={refs.setFloating}\n overflow=\"hidden\"\n >\n {children}\n </ModalContent>\n </Box>\n </FloatingFocusManager>\n ) : null}\n </ModalContext.Provider>\n </FloatingPortal>\n );\n};\n\nexport { Modal, ModalHeader, ModalFooter, ModalBody };\nexport type { ModalProps, ModalHeaderProps, ModalFooterProps, ModalBodyProps };\n"],"names":["ModalContent","styled","BaseBox","withConfig","displayName","componentId","_ref","isVisible","theme","size","scale","transform","concat","css","elevation","highRaised","castWebType","makeMotionTime","motion","duration","moderate","easing","entrance","exit","makeSize","modalMargin","Modal","_ref2","_ref2$isOpen","isOpen","children","onDismiss","initialFocusRef","_ref2$size","accessibilityLabel","_ref2$zIndex","zIndex","componentZIndices","modal","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","platform","_usePresence","usePresence","transitionDuration","initialEnter","isMounted","useEffect","logger","message","moduleName","type","_useFloating","useFloating","open","refs","context","defaultInitialFocusRef","React","useRef","modalContext","useMemo","close","handleKeyDown","event","key","code","_jsx","FloatingPortal","ModalContext","Provider","value","FloatingFocusManager","returnFocus","initialFocus","_jsxs","Box","_objectSpread","position","testID","makeAnalyticsAttribute","ModalBackdrop","metaAttribute","name","MetaConstants","makeAccessible","role","label","maxWidth","modalMaxWidth","minWidth","modalMinWidth","maxHeight","modalMaxHeight","width","modalResponsiveScreenGap","borderRadius","modalBorderRadius","backgroundColor","display","flexDirection","top","left","onKeyDown","ref","setFloating","overflow"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.web.js","sources":["../../../../../../src/components/Modal/Modal.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React, { useEffect } from 'react';\nimport styled, { css } from 'styled-components';\nimport { FloatingFocusManager, FloatingPortal, useFloating } from '@floating-ui/react';\nimport usePresence from 'use-presence';\nimport { ModalHeader } from './ModalHeader';\nimport type { ModalHeaderProps } from './ModalHeader';\nimport { ModalFooter } from './ModalFooter';\nimport type { ModalFooterProps } from './ModalFooter';\nimport { ModalBody } from './ModalBody';\nimport type { ModalBodyProps } from './ModalBody';\nimport { ModalContext } from './ModalContext';\nimport { ModalBackdrop } from './ModalBackdrop';\nimport {\n modalBorderRadius,\n modalMaxHeight,\n modalMaxWidth,\n modalMinWidth,\n modalResponsiveScreenGap,\n modalMargin,\n} from './modalTokens';\nimport type { ModalProps } from './types';\nimport { castWebType, makeMotionTime, makeSize } from '~utils';\nimport { BaseBox } from '~components/Box/BaseBox';\nimport { useTheme } from '~components/BladeProvider';\nimport { Box } from '~components/Box';\nimport { MetaConstants, metaAttribute } from '~utils/metaAttribute';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { logger } from '~utils/logger';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst ModalContent = styled(BaseBox)<{ isVisible: boolean; size: NonNullable<ModalProps['size']> }>(\n ({ isVisible, theme, size }) => {\n const scale = isVisible ? 1 : 0.9;\n const transform = size !== 'full' ? `translate(-50%, -50%) scale(${scale})` : ``;\n\n return css`\n box-shadow: ${theme.elevation.highRaised};\n opacity: ${isVisible ? 1 : 0};\n position: fixed;\n transform: ${transform};\n transition-property: opacity, transform;\n transition-duration: ${castWebType(makeMotionTime(theme.motion.duration.moderate))};\n transition-timing-function: ${isVisible\n ? castWebType(theme.motion.easing.entrance)\n : castWebType(theme.motion.easing.exit)};\n\n ${size === 'full' &&\n css`\n top: ${makeSize(modalMargin[size])};\n left: ${makeSize(modalMargin[size])};\n right: ${makeSize(modalMargin[size])};\n bottom: ${makeSize(modalMargin[size])};\n `}\n `;\n },\n);\n\nconst Modal = ({\n isOpen = false,\n children,\n onDismiss,\n initialFocusRef,\n size = 'small',\n accessibilityLabel,\n zIndex = componentZIndices.modal,\n ...rest\n}: ModalProps): React.ReactElement => {\n const { theme, platform } = useTheme();\n const { isMounted, isVisible } = usePresence(isOpen, {\n transitionDuration: theme.motion.duration.moderate,\n initialEnter: true,\n });\n\n // Warn consumer if modal is opened on mobile\n useEffect(() => {\n if (__DEV__) {\n if (platform === 'onMobile') {\n logger({\n message: 'Modal is not supported on mobile devices. Please use BottomSheet instead.',\n moduleName: 'Modal',\n type: 'warn',\n });\n }\n }\n }, [platform]);\n\n // required by floating ui to handle focus\n const { refs, context } = useFloating({\n open: isMounted,\n });\n\n const defaultInitialFocusRef = React.useRef<any>(null);\n\n const modalContext = React.useMemo(\n () => ({\n isOpen,\n close: onDismiss,\n defaultInitialFocusRef,\n isVisible,\n }),\n [isOpen, onDismiss, defaultInitialFocusRef, isVisible],\n );\n const handleKeyDown = (event: React.KeyboardEvent): void => {\n // close modal on escape key press\n if (event?.key === 'Escape' || event?.code === 'Escape') {\n onDismiss();\n }\n };\n\n return (\n <FloatingPortal>\n <ModalContext.Provider value={modalContext}>\n {isMounted ? (\n <FloatingFocusManager\n returnFocus\n initialFocus={initialFocusRef ?? defaultInitialFocusRef}\n context={context}\n modal={true}\n >\n <Box zIndex={zIndex} position=\"fixed\" testID=\"modal-wrapper\">\n <ModalBackdrop />\n <ModalContent\n {...metaAttribute({\n name: MetaConstants.Modal,\n })}\n {...makeAccessible({\n role: 'dialog',\n modal: true,\n label: accessibilityLabel,\n })}\n {...makeAnalyticsAttribute(rest)}\n maxWidth={size === 'full' ? '100%' : makeSize(modalMaxWidth[size])}\n minWidth={makeSize(modalMinWidth)}\n maxHeight={modalMaxHeight[size]}\n width={\n size === 'full'\n ? `calc(100vw - ${makeSize(modalMargin[size] * 2)})`\n : `calc(100vw - ${makeSize(modalResponsiveScreenGap)})`\n }\n borderRadius={modalBorderRadius}\n backgroundColor=\"popup.background.subtle\"\n display=\"flex\"\n flexDirection=\"column\"\n top=\"50%\"\n left=\"50%\"\n onKeyDown={handleKeyDown}\n isVisible={isVisible}\n size={size}\n ref={refs.setFloating}\n overflow=\"hidden\"\n >\n {children}\n </ModalContent>\n </Box>\n </FloatingFocusManager>\n ) : null}\n </ModalContext.Provider>\n </FloatingPortal>\n );\n};\n\nexport { Modal, ModalHeader, ModalFooter, ModalBody };\nexport type { ModalProps, ModalHeaderProps, ModalFooterProps, ModalBodyProps };\n"],"names":["ModalContent","styled","BaseBox","withConfig","displayName","componentId","_ref","isVisible","theme","size","scale","transform","concat","css","elevation","highRaised","castWebType","makeMotionTime","motion","duration","moderate","easing","entrance","exit","makeSize","modalMargin","Modal","_ref2","_ref2$isOpen","isOpen","children","onDismiss","initialFocusRef","_ref2$size","accessibilityLabel","_ref2$zIndex","zIndex","componentZIndices","modal","rest","_objectWithoutProperties","_excluded","_useTheme","useTheme","platform","_usePresence","usePresence","transitionDuration","initialEnter","isMounted","useEffect","logger","message","moduleName","type","_useFloating","useFloating","open","refs","context","defaultInitialFocusRef","React","useRef","modalContext","useMemo","close","handleKeyDown","event","key","code","_jsx","FloatingPortal","ModalContext","Provider","value","FloatingFocusManager","returnFocus","initialFocus","_jsxs","Box","position","testID","ModalBackdrop","_objectSpread","metaAttribute","name","MetaConstants","makeAccessible","role","label","makeAnalyticsAttribute","maxWidth","modalMaxWidth","minWidth","modalMinWidth","maxHeight","modalMaxHeight","width","modalResponsiveScreenGap","borderRadius","modalBorderRadius","backgroundColor","display","flexDirection","top","left","onKeyDown","ref","setFloating","overflow"],"mappings":"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"}
|
|
@@ -55,7 +55,8 @@ var _PreviewHeader = function _PreviewHeader(_ref) {
|
|
|
55
55
|
children: /*#__PURE__*/jsx(Button, {
|
|
56
56
|
icon: isFullScreen ? FullScreenExitIcon : FullScreenEnterIcon,
|
|
57
57
|
variant: "tertiary",
|
|
58
|
-
onClick: _onFullScreen
|
|
58
|
+
onClick: _onFullScreen,
|
|
59
|
+
accessibilityLabel: isFullScreen ? 'Exit Full Screen' : 'Enter Full Screen'
|
|
59
60
|
})
|
|
60
61
|
}), trailing]
|
|
61
62
|
});
|
|
@@ -154,7 +155,7 @@ var _PreviewFooter = function _PreviewFooter(PreviewFooterProps) {
|
|
|
154
155
|
icon: ZoomInIcon,
|
|
155
156
|
onClick: handleZoomIn,
|
|
156
157
|
variant: "tertiary",
|
|
157
|
-
|
|
158
|
+
accessibilityLabel: "Zoom In",
|
|
158
159
|
isDisabled: zoom >= 8
|
|
159
160
|
}), /*#__PURE__*/jsxs(Text, {
|
|
160
161
|
size: "medium",
|
|
@@ -163,7 +164,7 @@ var _PreviewFooter = function _PreviewFooter(PreviewFooterProps) {
|
|
|
163
164
|
icon: ZoomOutIcon,
|
|
164
165
|
onClick: handleZoomOut,
|
|
165
166
|
variant: "tertiary",
|
|
166
|
-
|
|
167
|
+
accessibilityLabel: "Zoom Out",
|
|
167
168
|
isDisabled: zoom <= 0.1
|
|
168
169
|
}), /*#__PURE__*/jsx(Button, {
|
|
169
170
|
icon: RefreshIcon,
|
|
@@ -171,7 +172,7 @@ var _PreviewFooter = function _PreviewFooter(PreviewFooterProps) {
|
|
|
171
172
|
return handleReset();
|
|
172
173
|
},
|
|
173
174
|
variant: "tertiary",
|
|
174
|
-
|
|
175
|
+
accessibilityLabel: "Reset Zoom"
|
|
175
176
|
})]
|
|
176
177
|
}) : /*#__PURE__*/jsxs(BaseBox, {
|
|
177
178
|
display: "flex",
|
|
@@ -182,18 +183,18 @@ var _PreviewFooter = function _PreviewFooter(PreviewFooterProps) {
|
|
|
182
183
|
children: [/*#__PURE__*/jsx(Button, {
|
|
183
184
|
icon: ZoomInIcon,
|
|
184
185
|
onClick: handleZoomIn,
|
|
185
|
-
|
|
186
|
+
accessibilityLabel: "Zoom In"
|
|
186
187
|
}), /*#__PURE__*/jsx(Button, {
|
|
187
188
|
icon: ZoomOutIcon,
|
|
188
189
|
onClick: handleZoomOut,
|
|
189
|
-
|
|
190
|
+
accessibilityLabel: "Zoom Out"
|
|
190
191
|
})]
|
|
191
192
|
}), /*#__PURE__*/jsx(Button, {
|
|
192
193
|
icon: RefreshIcon,
|
|
193
194
|
onClick: function onClick() {
|
|
194
195
|
return handleReset();
|
|
195
196
|
},
|
|
196
|
-
|
|
197
|
+
accessibilityLabel: "Reset Zoom",
|
|
197
198
|
variant: "tertiary"
|
|
198
199
|
})]
|
|
199
200
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Preview.web.js","sources":["../../../../../../src/components/Preview/Preview.web.tsx"],"sourcesContent":["import React, { useState, useCallback, useEffect } from 'react';\nimport { TransformWrapper, TransformComponent, useControls } from 'react-zoom-pan-pinch';\nimport styled from 'styled-components';\nimport type {\n PreviewProps,\n PreviewHeaderProps,\n PreviewFooterProps,\n PreviewBodyProps,\n} from './types';\nimport { usePreviewContext, PreviewProvider } from './PreviewContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport {\n FullScreenEnterIcon,\n ZoomInIcon,\n ZoomOutIcon,\n FullScreenExitIcon,\n RefreshIcon,\n} from '~components/Icons';\nimport { Heading, Text } from '~components/Typography';\nimport { ButtonGroup } from '~components/ButtonGroup';\nimport { Button } from '~components/Button';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { getComponentId } from '~utils/isValidAllowedChildren';\nimport { Divider } from '~components/Divider';\nimport { useControllableState } from '~utils/useControllable';\nimport { componentZIndices } from '~utils/componentZIndices';\n\nconst _PreviewHeader = ({\n title,\n _onFullScreen,\n trailing,\n}: PreviewHeaderProps): React.ReactElement => {\n const { isFullScreen } = usePreviewContext();\n\n if (!title) {\n return (\n <BaseBox\n position=\"absolute\"\n top=\"spacing.0\"\n right=\"spacing.2\"\n zIndex={componentZIndices.previewPanel}\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n padding=\"spacing.4\"\n >\n <BaseBox backgroundColor=\"surface.background.gray.moderate\" borderRadius=\"medium\">\n <Button\n icon={isFullScreen ? FullScreenExitIcon : FullScreenEnterIcon}\n variant=\"tertiary\"\n onClick={_onFullScreen}\n />\n </BaseBox>\n {trailing}\n </BaseBox>\n );\n }\n return (\n <BaseBox\n zIndex={componentZIndices.previewPanel}\n position=\"absolute\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n backgroundColor=\"surface.background.gray.moderate\"\n width=\"100%\"\n >\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n padding=\"spacing.5\"\n height=\"100%\"\n width=\"100%\"\n >\n <Heading size=\"medium\" weight=\"regular\" color=\"surface.text.gray.subtle\">\n {title}\n </Heading>\n <BaseBox display=\"flex\" alignItems=\"center\" gap=\"spacing.3\">\n <Button\n icon={isFullScreen ? FullScreenExitIcon : FullScreenEnterIcon}\n variant=\"tertiary\"\n onClick={_onFullScreen}\n />\n {trailing}\n </BaseBox>\n </BaseBox>\n <Divider orientation=\"horizontal\" />\n </BaseBox>\n );\n};\n\nconst PreviewHeader = assignWithoutSideEffects(_PreviewHeader, {\n componentId: MetaConstants.PreviewHeader,\n});\n\nconst _PreviewBody = (PreviewBodyProps: PreviewBodyProps): React.ReactElement => {\n const { children } = PreviewBodyProps;\n return <BaseBox>{children}</BaseBox>;\n};\n\nconst PreviewBody = assignWithoutSideEffects(_PreviewBody, {\n componentId: MetaConstants.PreviewBody,\n});\n\nconst _PreviewFooter = (PreviewFooterProps: PreviewFooterProps): React.ReactElement => {\n const { showZoomPercentage, trailing } = PreviewFooterProps;\n const { zoomIn, zoomOut, centerView } = useControls();\n const { zoom, zoomScaleStep, defaultZoom } = usePreviewContext();\n const handleZoomIn = useCallback(() => {\n zoomIn(zoomScaleStep);\n }, [zoomScaleStep, zoomIn]);\n\n const handleZoomOut = useCallback(() => {\n zoomOut(zoomScaleStep);\n }, [zoomScaleStep, zoomOut]);\n\n const handleReset = useCallback(() => {\n // thanks to https://github.com/BetterTyped/react-zoom-pan-pinch/issues/286#issuecomment-1442888219\n centerView(defaultZoom, 0);\n }, [defaultZoom, centerView]);\n\n return (\n <BaseBox\n display=\"flex\"\n justifyContent=\"space-between\"\n width=\"100%\"\n backgroundColor=\"surface.background.gray.moderate\"\n position=\"absolute\"\n bottom=\"spacing.0\"\n left=\"spacing.0\"\n right=\"spacing.0\"\n padding=\"spacing.5\"\n zIndex={componentZIndices.previewPanel}\n borderTopWidth=\"thin\"\n borderTopColor=\"surface.border.gray.muted\"\n >\n <BaseBox\n padding=\"spacing.2\"\n backgroundColor=\"surface.background.gray.intense\"\n borderRadius=\"medium\"\n borderWidth=\"thin\"\n borderColor=\"surface.border.gray.muted\"\n >\n {showZoomPercentage ? (\n <BaseBox display=\"flex\" alignItems=\"center\" gap=\"spacing.2\">\n <Button\n icon={ZoomInIcon}\n onClick={handleZoomIn}\n variant=\"tertiary\"\n aria-label=\"Zoom in\"\n isDisabled={zoom >= 8}\n />\n <Text size=\"medium\"> {Math.round(zoom * 100)}%</Text>\n <Button\n icon={ZoomOutIcon}\n onClick={handleZoomOut}\n variant=\"tertiary\"\n aria-label=\"Zoom out\"\n isDisabled={zoom <= 0.1}\n />\n <Button\n icon={RefreshIcon}\n onClick={() => handleReset()}\n variant=\"tertiary\"\n aria-label=\"Reset zoom\"\n />\n </BaseBox>\n ) : (\n <BaseBox display=\"flex\" alignItems=\"center\" gap=\"spacing.2\">\n <ButtonGroup variant=\"tertiary\">\n <Button icon={ZoomInIcon} onClick={handleZoomIn} aria-label=\"Zoom in\" />\n <Button icon={ZoomOutIcon} onClick={handleZoomOut} aria-label=\"Zoom out\" />\n </ButtonGroup>\n <Button\n icon={RefreshIcon}\n onClick={() => handleReset()}\n aria-label=\"Reset zoom\"\n variant=\"tertiary\"\n />\n </BaseBox>\n )}\n </BaseBox>\n {trailing}\n </BaseBox>\n );\n};\n\nconst PreviewFooter = assignWithoutSideEffects(_PreviewFooter, {\n componentId: MetaConstants.PreviewFooter,\n});\n\nconst dotSpacing = 16;\nconst dotOpacity = 0.1;\nconst dotSize = 1;\nconst ZoomContainer = styled.div<{ isDragEnabled: boolean; isDragging: boolean }>`\n width: 100%;\n height: 100%;\n cursor: ${({ isDragEnabled, isDragging }) => {\n if (!isDragEnabled) return 'default';\n return isDragging ? 'grabbing' : 'grab';\n }};\n background-image: ${({ isDragEnabled }) =>\n isDragEnabled\n ? `radial-gradient(\n circle,\n rgba(0, 0, 0, ${dotOpacity}) ${dotSize}px,\n transparent ${dotSize}px\n )`\n : 'none'};\n background-size: ${dotSpacing}px ${dotSpacing}px;\n .zoom-wrapper,\n .zoom-content {\n width: 100%;\n height: 100%;\n overflow: visible;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n transition: cursor 0.1s ease;\n`;\n\nconst TransFormWrapperContainer = styled.div`\n width: 100%;\n height: 100%;\n position: relative;\n overflow: hidden;\n background-color: ${({ theme }) => theme.colors.surface.background.gray.moderate};\n`;\nconst Preview = ({\n children,\n onFullScreen: onFullScreenProp,\n onZoomChange,\n zoomScaleStep = 0.1,\n isDragAndZoomDisabled = false,\n defaultZoom,\n onDragChange,\n}: PreviewProps): React.ReactElement => {\n const [controlledZoom, setControlledZoom] = useControllableState({\n onChange: onZoomChange,\n defaultValue: defaultZoom ?? 1,\n });\n const [isFullScreen, setIsFullScreen] = useState(false);\n const [isDragging, setIsDragging] = useState(false);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n const handleTransformed = ({\n state,\n }: {\n state: { scale: number; positionX: number; positionY: number };\n }): void => {\n const { scale, positionX, positionY } = state;\n setControlledZoom(() => scale);\n onDragChange?.({ x: positionX, y: positionY });\n };\n\n const handleFullScreenError = (err: unknown): void => {\n if (err instanceof DOMException) {\n console.error(`Fullscreen request failed: ${err.name} - ${err.message}`);\n } else {\n console.error('Unexpected error during fullscreen request:', err);\n }\n };\n\n const handleFullScreen = useCallback(async () => {\n if (!document.fullscreenElement) {\n try {\n await containerRef.current?.requestFullscreen();\n setIsFullScreen(true);\n onFullScreenProp?.();\n } catch (err: unknown) {\n handleFullScreenError(err);\n }\n } else {\n try {\n await document.exitFullscreen();\n setIsFullScreen(false);\n onFullScreenProp?.();\n } catch (err: unknown) {\n handleFullScreenError(err);\n }\n }\n }, [onFullScreenProp]);\n\n // this is added to handle the fullscreen change if user exits fullscreen using the escape key, or browser's exit fullscreen button\n useEffect(() => {\n const handleFullScreenChange = (): void => {\n setIsFullScreen(!!document.fullscreenElement);\n };\n\n document.addEventListener('fullscreenchange', handleFullScreenChange);\n return () => {\n document.removeEventListener('fullscreenchange', handleFullScreenChange);\n };\n }, []);\n\n // filter out preview header, preview body, preview footer separately using componentId\n const previewHeader = React.Children.toArray(children)\n .filter((child) => getComponentId(child as React.ReactElement) === MetaConstants.PreviewHeader)\n .map((child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n // @ts-expect-error\n _onFullScreen: handleFullScreen,\n });\n }\n return child;\n });\n\n const previewBody = React.Children.toArray(children).filter(\n (child) => getComponentId(child as React.ReactElement) === MetaConstants.PreviewBody,\n );\n\n const previewFooter = React.Children.toArray(children).filter(\n (child) => getComponentId(child as React.ReactElement) === MetaConstants.PreviewFooter,\n );\n\n return (\n <PreviewProvider\n value={{\n zoom: controlledZoom,\n isFullScreen,\n zoomScaleStep,\n defaultZoom: defaultZoom ?? 1,\n }}\n >\n <TransFormWrapperContainer ref={containerRef}>\n <TransformWrapper\n onTransformed={handleTransformed}\n minScale={0.1}\n maxScale={8}\n disabled={isDragAndZoomDisabled}\n initialScale={defaultZoom ?? controlledZoom}\n doubleClick={{ disabled: false }}\n onPanningStart={() => setIsDragging(true)}\n onPanningStop={() => setIsDragging(false)}\n panning={{ velocityDisabled: true }}\n limitToBounds={false}\n centerOnInit={true}\n >\n {() => (\n <BaseBox width=\"100%\" height=\"100%\" position=\"relative\" overflow=\"visible\">\n {previewFooter}\n {previewHeader}\n <ZoomContainer isDragEnabled={!isDragAndZoomDisabled} isDragging={isDragging}>\n <TransformComponent wrapperClass=\"zoom-wrapper\" contentClass=\"zoom-content\">\n {previewBody}\n </TransformComponent>\n </ZoomContainer>\n </BaseBox>\n )}\n </TransformWrapper>\n </TransFormWrapperContainer>\n </PreviewProvider>\n );\n};\n\nexport { Preview, PreviewHeader, PreviewBody, PreviewFooter };\n"],"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","_PreviewHeader","_ref","title","_onFullScreen","trailing","_usePreviewContext","usePreviewContext","isFullScreen","_jsxs","BaseBox","position","top","right","zIndex","componentZIndices","previewPanel","display","alignItems","justifyContent","padding","children","_jsx","backgroundColor","borderRadius","Button","icon","FullScreenExitIcon","FullScreenEnterIcon","variant","onClick","left","width","height","Heading","size","weight","color","gap","Divider","orientation","PreviewHeader","assignWithoutSideEffects","componentId","MetaConstants","_PreviewBody","PreviewBodyProps","PreviewBody","_PreviewFooter","PreviewFooterProps","showZoomPercentage","_useControls","useControls","zoomIn","zoomOut","centerView","_usePreviewContext2","zoom","zoomScaleStep","defaultZoom","handleZoomIn","useCallback","handleZoomOut","handleReset","bottom","borderTopWidth","borderTopColor","borderWidth","borderColor","ZoomInIcon","isDisabled","Text","Math","round","ZoomOutIcon","RefreshIcon","ButtonGroup","PreviewFooter","dotSpacing","dotOpacity","dotSize","ZoomContainer","styled","div","withConfig","_ref2","isDragEnabled","isDragging","_ref3","concat","TransFormWrapperContainer","_ref4","theme","colors","surface","background","gray","moderate","Preview","_ref5","onFullScreenProp","onFullScreen","onZoomChange","_ref5$zoomScaleStep","_ref5$isDragAndZoomDi","isDragAndZoomDisabled","onDragChange","_useControllableState","useControllableState","onChange","defaultValue","_useControllableState2","_slicedToArray","controlledZoom","setControlledZoom","_useState","useState","_useState2","setIsFullScreen","_useState3","_useState4","setIsDragging","containerRef","React","useRef","handleTransformed","_ref6","state","scale","positionX","positionY","x","handleFullScreenError","err","DOMException","console","error","message","handleFullScreen","_asyncToGenerator","_callee","_containerRef$current","_callee$","_context","document","fullscreenElement","current","requestFullscreen","t0","exitFullscreen","t1","useEffect","handleFullScreenChange","addEventListener","removeEventListener","previewHeader","Children","toArray","filter","child","getComponentId","map","isValidElement","cloneElement","previewBody","previewFooter","PreviewProvider","ref","TransformWrapper","onTransformed","minScale","maxScale","disabled","initialScale","doubleClick","onPanningStart","onPanningStop","panning","velocityDisabled","limitToBounds","centerOnInit","overflow","TransformComponent","wrapperClass","contentClass"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Preview.web.js","sources":["../../../../../../src/components/Preview/Preview.web.tsx"],"sourcesContent":["import React, { useState, useCallback, useEffect } from 'react';\nimport { TransformWrapper, TransformComponent, useControls } from 'react-zoom-pan-pinch';\nimport styled from 'styled-components';\nimport type {\n PreviewProps,\n PreviewHeaderProps,\n PreviewFooterProps,\n PreviewBodyProps,\n} from './types';\nimport { usePreviewContext, PreviewProvider } from './PreviewContext';\nimport BaseBox from '~components/Box/BaseBox';\nimport {\n FullScreenEnterIcon,\n ZoomInIcon,\n ZoomOutIcon,\n FullScreenExitIcon,\n RefreshIcon,\n} from '~components/Icons';\nimport { Heading, Text } from '~components/Typography';\nimport { ButtonGroup } from '~components/ButtonGroup';\nimport { Button } from '~components/Button';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { MetaConstants } from '~utils/metaAttribute';\nimport { getComponentId } from '~utils/isValidAllowedChildren';\nimport { Divider } from '~components/Divider';\nimport { useControllableState } from '~utils/useControllable';\nimport { componentZIndices } from '~utils/componentZIndices';\n\nconst _PreviewHeader = ({\n title,\n _onFullScreen,\n trailing,\n}: PreviewHeaderProps): React.ReactElement => {\n const { isFullScreen } = usePreviewContext();\n\n if (!title) {\n return (\n <BaseBox\n position=\"absolute\"\n top=\"spacing.0\"\n right=\"spacing.2\"\n zIndex={componentZIndices.previewPanel}\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n padding=\"spacing.4\"\n >\n <BaseBox backgroundColor=\"surface.background.gray.moderate\" borderRadius=\"medium\">\n <Button\n icon={isFullScreen ? FullScreenExitIcon : FullScreenEnterIcon}\n variant=\"tertiary\"\n onClick={_onFullScreen}\n accessibilityLabel={isFullScreen ? 'Exit Full Screen' : 'Enter Full Screen'}\n />\n </BaseBox>\n {trailing}\n </BaseBox>\n );\n }\n return (\n <BaseBox\n zIndex={componentZIndices.previewPanel}\n position=\"absolute\"\n top=\"spacing.0\"\n left=\"spacing.0\"\n backgroundColor=\"surface.background.gray.moderate\"\n width=\"100%\"\n >\n <BaseBox\n display=\"flex\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n padding=\"spacing.5\"\n height=\"100%\"\n width=\"100%\"\n >\n <Heading size=\"medium\" weight=\"regular\" color=\"surface.text.gray.subtle\">\n {title}\n </Heading>\n <BaseBox display=\"flex\" alignItems=\"center\" gap=\"spacing.3\">\n <Button\n icon={isFullScreen ? FullScreenExitIcon : FullScreenEnterIcon}\n variant=\"tertiary\"\n onClick={_onFullScreen}\n />\n {trailing}\n </BaseBox>\n </BaseBox>\n <Divider orientation=\"horizontal\" />\n </BaseBox>\n );\n};\n\nconst PreviewHeader = assignWithoutSideEffects(_PreviewHeader, {\n componentId: MetaConstants.PreviewHeader,\n});\n\nconst _PreviewBody = (PreviewBodyProps: PreviewBodyProps): React.ReactElement => {\n const { children } = PreviewBodyProps;\n return <BaseBox>{children}</BaseBox>;\n};\n\nconst PreviewBody = assignWithoutSideEffects(_PreviewBody, {\n componentId: MetaConstants.PreviewBody,\n});\n\nconst _PreviewFooter = (PreviewFooterProps: PreviewFooterProps): React.ReactElement => {\n const { showZoomPercentage, trailing } = PreviewFooterProps;\n const { zoomIn, zoomOut, centerView } = useControls();\n const { zoom, zoomScaleStep, defaultZoom } = usePreviewContext();\n const handleZoomIn = useCallback(() => {\n zoomIn(zoomScaleStep);\n }, [zoomScaleStep, zoomIn]);\n\n const handleZoomOut = useCallback(() => {\n zoomOut(zoomScaleStep);\n }, [zoomScaleStep, zoomOut]);\n\n const handleReset = useCallback(() => {\n // thanks to https://github.com/BetterTyped/react-zoom-pan-pinch/issues/286#issuecomment-1442888219\n centerView(defaultZoom, 0);\n }, [defaultZoom, centerView]);\n\n return (\n <BaseBox\n display=\"flex\"\n justifyContent=\"space-between\"\n width=\"100%\"\n backgroundColor=\"surface.background.gray.moderate\"\n position=\"absolute\"\n bottom=\"spacing.0\"\n left=\"spacing.0\"\n right=\"spacing.0\"\n padding=\"spacing.5\"\n zIndex={componentZIndices.previewPanel}\n borderTopWidth=\"thin\"\n borderTopColor=\"surface.border.gray.muted\"\n >\n <BaseBox\n padding=\"spacing.2\"\n backgroundColor=\"surface.background.gray.intense\"\n borderRadius=\"medium\"\n borderWidth=\"thin\"\n borderColor=\"surface.border.gray.muted\"\n >\n {showZoomPercentage ? (\n <BaseBox display=\"flex\" alignItems=\"center\" gap=\"spacing.2\">\n <Button\n icon={ZoomInIcon}\n onClick={handleZoomIn}\n variant=\"tertiary\"\n accessibilityLabel=\"Zoom In\"\n isDisabled={zoom >= 8}\n />\n <Text size=\"medium\"> {Math.round(zoom * 100)}%</Text>\n <Button\n icon={ZoomOutIcon}\n onClick={handleZoomOut}\n variant=\"tertiary\"\n accessibilityLabel=\"Zoom Out\"\n isDisabled={zoom <= 0.1}\n />\n <Button\n icon={RefreshIcon}\n onClick={() => handleReset()}\n variant=\"tertiary\"\n accessibilityLabel=\"Reset Zoom\"\n />\n </BaseBox>\n ) : (\n <BaseBox display=\"flex\" alignItems=\"center\" gap=\"spacing.2\">\n <ButtonGroup variant=\"tertiary\">\n <Button icon={ZoomInIcon} onClick={handleZoomIn} accessibilityLabel=\"Zoom In\" />\n <Button icon={ZoomOutIcon} onClick={handleZoomOut} accessibilityLabel=\"Zoom Out\" />\n </ButtonGroup>\n <Button\n icon={RefreshIcon}\n onClick={() => handleReset()}\n accessibilityLabel=\"Reset Zoom\"\n variant=\"tertiary\"\n />\n </BaseBox>\n )}\n </BaseBox>\n {trailing}\n </BaseBox>\n );\n};\n\nconst PreviewFooter = assignWithoutSideEffects(_PreviewFooter, {\n componentId: MetaConstants.PreviewFooter,\n});\n\nconst dotSpacing = 16;\nconst dotOpacity = 0.1;\nconst dotSize = 1;\nconst ZoomContainer = styled.div<{ isDragEnabled: boolean; isDragging: boolean }>`\n width: 100%;\n height: 100%;\n cursor: ${({ isDragEnabled, isDragging }) => {\n if (!isDragEnabled) return 'default';\n return isDragging ? 'grabbing' : 'grab';\n }};\n background-image: ${({ isDragEnabled }) =>\n isDragEnabled\n ? `radial-gradient(\n circle,\n rgba(0, 0, 0, ${dotOpacity}) ${dotSize}px,\n transparent ${dotSize}px\n )`\n : 'none'};\n background-size: ${dotSpacing}px ${dotSpacing}px;\n .zoom-wrapper,\n .zoom-content {\n width: 100%;\n height: 100%;\n overflow: visible;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n transition: cursor 0.1s ease;\n`;\n\nconst TransFormWrapperContainer = styled.div`\n width: 100%;\n height: 100%;\n position: relative;\n overflow: hidden;\n background-color: ${({ theme }) => theme.colors.surface.background.gray.moderate};\n`;\nconst Preview = ({\n children,\n onFullScreen: onFullScreenProp,\n onZoomChange,\n zoomScaleStep = 0.1,\n isDragAndZoomDisabled = false,\n defaultZoom,\n onDragChange,\n}: PreviewProps): React.ReactElement => {\n const [controlledZoom, setControlledZoom] = useControllableState({\n onChange: onZoomChange,\n defaultValue: defaultZoom ?? 1,\n });\n const [isFullScreen, setIsFullScreen] = useState(false);\n const [isDragging, setIsDragging] = useState(false);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n const handleTransformed = ({\n state,\n }: {\n state: { scale: number; positionX: number; positionY: number };\n }): void => {\n const { scale, positionX, positionY } = state;\n setControlledZoom(() => scale);\n onDragChange?.({ x: positionX, y: positionY });\n };\n\n const handleFullScreenError = (err: unknown): void => {\n if (err instanceof DOMException) {\n console.error(`Fullscreen request failed: ${err.name} - ${err.message}`);\n } else {\n console.error('Unexpected error during fullscreen request:', err);\n }\n };\n\n const handleFullScreen = useCallback(async () => {\n if (!document.fullscreenElement) {\n try {\n await containerRef.current?.requestFullscreen();\n setIsFullScreen(true);\n onFullScreenProp?.();\n } catch (err: unknown) {\n handleFullScreenError(err);\n }\n } else {\n try {\n await document.exitFullscreen();\n setIsFullScreen(false);\n onFullScreenProp?.();\n } catch (err: unknown) {\n handleFullScreenError(err);\n }\n }\n }, [onFullScreenProp]);\n\n // this is added to handle the fullscreen change if user exits fullscreen using the escape key, or browser's exit fullscreen button\n useEffect(() => {\n const handleFullScreenChange = (): void => {\n setIsFullScreen(!!document.fullscreenElement);\n };\n\n document.addEventListener('fullscreenchange', handleFullScreenChange);\n return () => {\n document.removeEventListener('fullscreenchange', handleFullScreenChange);\n };\n }, []);\n\n // filter out preview header, preview body, preview footer separately using componentId\n const previewHeader = React.Children.toArray(children)\n .filter((child) => getComponentId(child as React.ReactElement) === MetaConstants.PreviewHeader)\n .map((child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n // @ts-expect-error\n _onFullScreen: handleFullScreen,\n });\n }\n return child;\n });\n\n const previewBody = React.Children.toArray(children).filter(\n (child) => getComponentId(child as React.ReactElement) === MetaConstants.PreviewBody,\n );\n\n const previewFooter = React.Children.toArray(children).filter(\n (child) => getComponentId(child as React.ReactElement) === MetaConstants.PreviewFooter,\n );\n\n return (\n <PreviewProvider\n value={{\n zoom: controlledZoom,\n isFullScreen,\n zoomScaleStep,\n defaultZoom: defaultZoom ?? 1,\n }}\n >\n <TransFormWrapperContainer ref={containerRef}>\n <TransformWrapper\n onTransformed={handleTransformed}\n minScale={0.1}\n maxScale={8}\n disabled={isDragAndZoomDisabled}\n initialScale={defaultZoom ?? controlledZoom}\n doubleClick={{ disabled: false }}\n onPanningStart={() => setIsDragging(true)}\n onPanningStop={() => setIsDragging(false)}\n panning={{ velocityDisabled: true }}\n limitToBounds={false}\n centerOnInit={true}\n >\n {() => (\n <BaseBox width=\"100%\" height=\"100%\" position=\"relative\" overflow=\"visible\">\n {previewFooter}\n {previewHeader}\n <ZoomContainer isDragEnabled={!isDragAndZoomDisabled} isDragging={isDragging}>\n <TransformComponent wrapperClass=\"zoom-wrapper\" contentClass=\"zoom-content\">\n {previewBody}\n </TransformComponent>\n </ZoomContainer>\n </BaseBox>\n )}\n </TransformWrapper>\n </TransFormWrapperContainer>\n </PreviewProvider>\n );\n};\n\nexport { Preview, PreviewHeader, PreviewBody, PreviewFooter };\n"],"names":["_regeneratorRuntime","e","t","r","Object","prototype","n","hasOwnProperty","o","defineProperty","value","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","_PreviewHeader","_ref","title","_onFullScreen","trailing","_usePreviewContext","usePreviewContext","isFullScreen","_jsxs","BaseBox","position","top","right","zIndex","componentZIndices","previewPanel","display","alignItems","justifyContent","padding","children","_jsx","backgroundColor","borderRadius","Button","icon","FullScreenExitIcon","FullScreenEnterIcon","variant","onClick","accessibilityLabel","left","width","height","Heading","size","weight","color","gap","Divider","orientation","PreviewHeader","assignWithoutSideEffects","componentId","MetaConstants","_PreviewBody","PreviewBodyProps","PreviewBody","_PreviewFooter","PreviewFooterProps","showZoomPercentage","_useControls","useControls","zoomIn","zoomOut","centerView","_usePreviewContext2","zoom","zoomScaleStep","defaultZoom","handleZoomIn","useCallback","handleZoomOut","handleReset","bottom","borderTopWidth","borderTopColor","borderWidth","borderColor","ZoomInIcon","isDisabled","Text","Math","round","ZoomOutIcon","RefreshIcon","ButtonGroup","PreviewFooter","dotSpacing","dotOpacity","dotSize","ZoomContainer","styled","div","withConfig","_ref2","isDragEnabled","isDragging","_ref3","concat","TransFormWrapperContainer","_ref4","theme","colors","surface","background","gray","moderate","Preview","_ref5","onFullScreenProp","onFullScreen","onZoomChange","_ref5$zoomScaleStep","_ref5$isDragAndZoomDi","isDragAndZoomDisabled","onDragChange","_useControllableState","useControllableState","onChange","defaultValue","_useControllableState2","_slicedToArray","controlledZoom","setControlledZoom","_useState","useState","_useState2","setIsFullScreen","_useState3","_useState4","setIsDragging","containerRef","React","useRef","handleTransformed","_ref6","state","scale","positionX","positionY","x","handleFullScreenError","err","DOMException","console","error","message","handleFullScreen","_asyncToGenerator","_callee","_containerRef$current","_callee$","_context","document","fullscreenElement","current","requestFullscreen","t0","exitFullscreen","t1","useEffect","handleFullScreenChange","addEventListener","removeEventListener","previewHeader","Children","toArray","filter","child","getComponentId","map","isValidElement","cloneElement","previewBody","previewFooter","PreviewProvider","ref","TransformWrapper","onTransformed","minScale","maxScale","disabled","initialScale","doubleClick","onPanningStart","onPanningStop","panning","velocityDisabled","limitToBounds","centerOnInit","overflow","TransformComponent","wrapperClass","contentClass"],"mappings":"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"}
|