@greenbone/ui-lib 1.5.0 → 1.5.1-alpha1
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/lib/cjs/api/error/libs.js.map +1 -1
- package/lib/cjs/components/Accordion/Accordion.js +1 -1
- package/lib/cjs/components/Accordion/Accordion.js.map +1 -1
- package/lib/cjs/components/Alert/Alert.js +1 -1
- package/lib/cjs/components/Alert/Alert.js.map +1 -1
- package/lib/cjs/components/Badge/Badge.js.map +1 -1
- package/lib/cjs/components/BadgeIconHoverCard/BadgeIconHoverCard.js.map +1 -1
- package/lib/cjs/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/lib/cjs/components/ConfirmationDialog/ConfirmationDialog.js +1 -1
- package/lib/cjs/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
- package/lib/cjs/components/DateInline/DateInline.js.map +1 -1
- package/lib/cjs/components/Drawer/Drawer.js +1 -1
- package/lib/cjs/components/Drawer/Drawer.js.map +1 -1
- package/lib/cjs/components/Filter/TermContainer/Term/TermBadge.js +1 -1
- package/lib/cjs/components/Filter/TermContainer/Term/TermBadge.js.map +1 -1
- package/lib/cjs/components/Filter/TermContainer/index.js +1 -1
- package/lib/cjs/components/Filter/TermContainer/index.js.map +1 -1
- package/lib/cjs/components/Filter/persistence/FilterPersistent.js +1 -1
- package/lib/cjs/components/Filter/persistence/FilterPersistent.js.map +1 -1
- package/lib/cjs/components/Filter/utils/FilterSelect.js +1 -1
- package/lib/cjs/components/Filter/utils/FilterSelect.js.map +1 -1
- package/lib/cjs/components/Filter/utils/Select.js +1 -1
- package/lib/cjs/components/Filter/utils/Select.js.map +1 -1
- package/lib/cjs/components/Form/Button/Button.js +1 -1
- package/lib/cjs/components/Form/Button/Button.js.map +1 -1
- package/lib/cjs/components/Form/Checkbox/Checkbox.js +1 -1
- package/lib/cjs/components/Form/Checkbox/Checkbox.js.map +1 -1
- package/lib/cjs/components/Form/DateTimePicker/DateTimePicker.js +1 -1
- package/lib/cjs/components/Form/DateTimePicker/DateTimePicker.js.map +1 -1
- package/lib/cjs/components/Form/DateTimePicker/TimePicker.js +1 -1
- package/lib/cjs/components/Form/DateTimePicker/TimePicker.js.map +1 -1
- package/lib/cjs/components/Form/FileInput/FileInput.js +1 -1
- package/lib/cjs/components/Form/FileInput/FileInput.js.map +1 -1
- package/lib/cjs/components/Form/Form/Form.js +1 -1
- package/lib/cjs/components/Form/Form/Form.js.map +1 -1
- package/lib/cjs/components/Form/FormItemGroup.js.map +1 -1
- package/lib/cjs/components/Form/Input/Input.js +1 -1
- package/lib/cjs/components/Form/Input/Input.js.map +1 -1
- package/lib/cjs/components/Form/Labels/InfoLabel.js.map +1 -1
- package/lib/cjs/components/Form/Labels/LabelWithIcon.js.map +1 -1
- package/lib/cjs/components/Form/MenuButton/index.js +1 -1
- package/lib/cjs/components/Form/MenuButton/index.js.map +1 -1
- package/lib/cjs/components/Form/PasswordInput/PasswordInput.js +1 -1
- package/lib/cjs/components/Form/PasswordInput/PasswordInput.js.map +1 -1
- package/lib/cjs/components/Form/RadioButton/RadioButton.js +1 -1
- package/lib/cjs/components/Form/RadioButton/RadioButton.js.map +1 -1
- package/lib/cjs/components/Form/Select/Cascade/CascadeMenu.js +1 -1
- package/lib/cjs/components/Form/Select/Cascade/CascadeMenu.js.map +1 -1
- package/lib/cjs/components/Form/Select/Cascade/CascadeOption.js +1 -1
- package/lib/cjs/components/Form/Select/Cascade/CascadeOption.js.map +1 -1
- package/lib/cjs/components/Form/Select/Cascade/index.js +1 -1
- package/lib/cjs/components/Form/Select/Cascade/index.js.map +1 -1
- package/lib/cjs/components/Form/Select/CreatableSelect.js +1 -1
- package/lib/cjs/components/Form/Select/CreatableSelect.js.map +1 -1
- package/lib/cjs/components/Form/Select/Select.js +1 -1
- package/lib/cjs/components/Form/Select/Select.js.map +1 -1
- package/lib/cjs/components/Form/Switch/Switch.js +1 -1
- package/lib/cjs/components/Form/Switch/Switch.js.map +1 -1
- package/lib/cjs/components/Form/Textarea/Textarea.js +1 -1
- package/lib/cjs/components/Form/Textarea/Textarea.js.map +1 -1
- package/lib/cjs/components/HighlightBox/HighlightBox.js +2 -0
- package/lib/cjs/components/HighlightBox/HighlightBox.js.map +1 -0
- package/lib/cjs/components/HighlightBox/HighlightBox.module.css +1 -0
- package/lib/cjs/components/HighlightBox/index.js +2 -0
- package/lib/cjs/components/HighlightBox/index.js.map +1 -0
- package/lib/cjs/components/HoverCard/HoverCard.js.map +1 -1
- package/lib/cjs/components/Icon/Icon.js +1 -1
- package/lib/cjs/components/Icon/Icon.js.map +1 -1
- package/lib/cjs/components/InfoTip/InfoTip.js +1 -1
- package/lib/cjs/components/InfoTip/InfoTip.js.map +1 -1
- package/lib/cjs/components/InformationList/InformationList.js +1 -1
- package/lib/cjs/components/InformationList/InformationList.js.map +1 -1
- package/lib/cjs/components/Layout/AppHeader/AppHeader.js +1 -1
- package/lib/cjs/components/Layout/AppHeader/AppHeader.js.map +1 -1
- package/lib/cjs/components/Layout/AppHeader/TimeZone.js.map +1 -1
- package/lib/cjs/components/Layout/AppHeader/languageSwitch/LanguageSwitch.js.map +1 -1
- package/lib/cjs/components/Layout/AppHeader/manual/Manual.js.map +1 -1
- package/lib/cjs/components/Layout/AppHeader/themeSwitch/ThemeSwitch.js.map +1 -1
- package/lib/cjs/components/Layout/AppHeader/userNav/NavItem.js +1 -1
- package/lib/cjs/components/Layout/AppHeader/userNav/NavItem.js.map +1 -1
- package/lib/cjs/components/Layout/AppHeader/userNav/UserNav.js.map +1 -1
- package/lib/cjs/components/Layout/AppNavigation/AppNavigationLink.js +1 -1
- package/lib/cjs/components/Layout/AppNavigation/AppNavigationLink.js.map +1 -1
- package/lib/cjs/components/Layout/AppNavigation/Menu/menuItems.js +1 -1
- package/lib/cjs/components/Layout/AppNavigation/Menu/menuItems.js.map +1 -1
- package/lib/cjs/components/Layout/SimplePageLayout/SimpleGrid.js +1 -1
- package/lib/cjs/components/Layout/SimplePageLayout/SimpleGrid.js.map +1 -1
- package/lib/cjs/components/Layout/SimplePageLayout/index.js +1 -1
- package/lib/cjs/components/Layout/SimplePageLayout/index.js.map +1 -1
- package/lib/cjs/components/Modal/Modal.js +1 -1
- package/lib/cjs/components/Modal/Modal.js.map +1 -1
- package/lib/cjs/components/Notification/notifications.js +1 -1
- package/lib/cjs/components/Notification/notifications.js.map +1 -1
- package/lib/cjs/components/Table/TableClientSide/TableClientSidePersistent/index.js +1 -1
- package/lib/cjs/components/Table/TableClientSide/TableClientSidePersistent/index.js.map +1 -1
- package/lib/cjs/components/Table/TableServerSide/TableServerSidePersistent/index.js +1 -1
- package/lib/cjs/components/Table/TableServerSide/TableServerSidePersistent/index.js.map +1 -1
- package/lib/cjs/components/Table/components/ActionMenu/ActionMenu.js +1 -1
- package/lib/cjs/components/Table/components/ActionMenu/ActionMenu.js.map +1 -1
- package/lib/cjs/components/Tag/Tag.js +1 -1
- package/lib/cjs/components/Tag/Tag.js.map +1 -1
- package/lib/cjs/components/TextWithTooltip/TextWithTooltip.js.map +1 -1
- package/lib/cjs/components/TimeZoneInfo/index.js +1 -1
- package/lib/cjs/components/TimeZoneInfo/index.js.map +1 -1
- package/lib/cjs/components/Tooltip/Tooltip.js +1 -1
- package/lib/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/lib/cjs/components/Typo/Typo.js +1 -1
- package/lib/cjs/components/Typo/Typo.js.map +1 -1
- package/lib/cjs/icons/StatusIcon/StatusIcon.js +1 -1
- package/lib/cjs/icons/StatusIcon/StatusIcon.js.map +1 -1
- package/lib/cjs/index.js +1 -1
- package/lib/cjs/index.js.map +1 -1
- package/lib/esm/api/error/libs.js.map +1 -1
- package/lib/esm/components/Accordion/Accordion.js +1 -1
- package/lib/esm/components/Accordion/Accordion.js.map +1 -1
- package/lib/esm/components/Alert/Alert.js +1 -1
- package/lib/esm/components/Alert/Alert.js.map +1 -1
- package/lib/esm/components/Badge/Badge.js.map +1 -1
- package/lib/esm/components/BadgeIconHoverCard/BadgeIconHoverCard.js.map +1 -1
- package/lib/esm/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/lib/esm/components/ConfirmationDialog/ConfirmationDialog.js +1 -1
- package/lib/esm/components/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
- package/lib/esm/components/DateInline/DateInline.js.map +1 -1
- package/lib/esm/components/Drawer/Drawer.js +1 -1
- package/lib/esm/components/Drawer/Drawer.js.map +1 -1
- package/lib/esm/components/Filter/TermContainer/Term/TermBadge.js +1 -1
- package/lib/esm/components/Filter/TermContainer/Term/TermBadge.js.map +1 -1
- package/lib/esm/components/Filter/TermContainer/index.js +1 -1
- package/lib/esm/components/Filter/TermContainer/index.js.map +1 -1
- package/lib/esm/components/Filter/persistence/FilterPersistent.js +1 -1
- package/lib/esm/components/Filter/persistence/FilterPersistent.js.map +1 -1
- package/lib/esm/components/Filter/utils/FilterSelect.js +1 -1
- package/lib/esm/components/Filter/utils/FilterSelect.js.map +1 -1
- package/lib/esm/components/Filter/utils/Select.js +1 -1
- package/lib/esm/components/Filter/utils/Select.js.map +1 -1
- package/lib/esm/components/Form/Button/Button.js +1 -1
- package/lib/esm/components/Form/Button/Button.js.map +1 -1
- package/lib/esm/components/Form/Checkbox/Checkbox.js +1 -1
- package/lib/esm/components/Form/Checkbox/Checkbox.js.map +1 -1
- package/lib/esm/components/Form/DateTimePicker/DateTimePicker.js +1 -1
- package/lib/esm/components/Form/DateTimePicker/DateTimePicker.js.map +1 -1
- package/lib/esm/components/Form/DateTimePicker/TimePicker.js +1 -1
- package/lib/esm/components/Form/DateTimePicker/TimePicker.js.map +1 -1
- package/lib/esm/components/Form/FileInput/FileInput.js +1 -1
- package/lib/esm/components/Form/FileInput/FileInput.js.map +1 -1
- package/lib/esm/components/Form/Form/Form.js +1 -1
- package/lib/esm/components/Form/Form/Form.js.map +1 -1
- package/lib/esm/components/Form/FormItemGroup.js.map +1 -1
- package/lib/esm/components/Form/Input/Input.js +1 -1
- package/lib/esm/components/Form/Input/Input.js.map +1 -1
- package/lib/esm/components/Form/Labels/InfoLabel.js.map +1 -1
- package/lib/esm/components/Form/Labels/LabelWithIcon.js.map +1 -1
- package/lib/esm/components/Form/MenuButton/index.js +1 -1
- package/lib/esm/components/Form/MenuButton/index.js.map +1 -1
- package/lib/esm/components/Form/PasswordInput/PasswordInput.js +1 -1
- package/lib/esm/components/Form/PasswordInput/PasswordInput.js.map +1 -1
- package/lib/esm/components/Form/RadioButton/RadioButton.js +1 -1
- package/lib/esm/components/Form/RadioButton/RadioButton.js.map +1 -1
- package/lib/esm/components/Form/Select/Cascade/CascadeMenu.js +1 -1
- package/lib/esm/components/Form/Select/Cascade/CascadeMenu.js.map +1 -1
- package/lib/esm/components/Form/Select/Cascade/CascadeOption.js +1 -1
- package/lib/esm/components/Form/Select/Cascade/CascadeOption.js.map +1 -1
- package/lib/esm/components/Form/Select/Cascade/index.js +1 -1
- package/lib/esm/components/Form/Select/Cascade/index.js.map +1 -1
- package/lib/esm/components/Form/Select/CreatableSelect.js +1 -1
- package/lib/esm/components/Form/Select/CreatableSelect.js.map +1 -1
- package/lib/esm/components/Form/Select/Select.js +1 -1
- package/lib/esm/components/Form/Select/Select.js.map +1 -1
- package/lib/esm/components/Form/Switch/Switch.js +1 -1
- package/lib/esm/components/Form/Switch/Switch.js.map +1 -1
- package/lib/esm/components/Form/Textarea/Textarea.js +1 -1
- package/lib/esm/components/Form/Textarea/Textarea.js.map +1 -1
- package/lib/esm/components/HighlightBox/HighlightBox.js +2 -0
- package/lib/esm/components/HighlightBox/HighlightBox.js.map +1 -0
- package/lib/esm/components/HighlightBox/HighlightBox.module.css +1 -0
- package/lib/esm/components/HighlightBox/index.js +2 -0
- package/lib/esm/components/HighlightBox/index.js.map +1 -0
- package/lib/esm/components/HoverCard/HoverCard.js.map +1 -1
- package/lib/esm/components/Icon/Icon.js +1 -1
- package/lib/esm/components/Icon/Icon.js.map +1 -1
- package/lib/esm/components/InfoTip/InfoTip.js +1 -1
- package/lib/esm/components/InfoTip/InfoTip.js.map +1 -1
- package/lib/esm/components/InformationList/InformationList.js +1 -1
- package/lib/esm/components/InformationList/InformationList.js.map +1 -1
- package/lib/esm/components/Layout/AppHeader/AppHeader.js +1 -1
- package/lib/esm/components/Layout/AppHeader/AppHeader.js.map +1 -1
- package/lib/esm/components/Layout/AppHeader/TimeZone.js.map +1 -1
- package/lib/esm/components/Layout/AppHeader/languageSwitch/LanguageSwitch.js.map +1 -1
- package/lib/esm/components/Layout/AppHeader/manual/Manual.js.map +1 -1
- package/lib/esm/components/Layout/AppHeader/themeSwitch/ThemeSwitch.js.map +1 -1
- package/lib/esm/components/Layout/AppHeader/userNav/NavItem.js +1 -1
- package/lib/esm/components/Layout/AppHeader/userNav/NavItem.js.map +1 -1
- package/lib/esm/components/Layout/AppHeader/userNav/UserNav.js.map +1 -1
- package/lib/esm/components/Layout/AppNavigation/AppNavigationLink.js +1 -1
- package/lib/esm/components/Layout/AppNavigation/AppNavigationLink.js.map +1 -1
- package/lib/esm/components/Layout/AppNavigation/Menu/menuItems.js +1 -1
- package/lib/esm/components/Layout/AppNavigation/Menu/menuItems.js.map +1 -1
- package/lib/esm/components/Layout/SimplePageLayout/SimpleGrid.js +1 -1
- package/lib/esm/components/Layout/SimplePageLayout/SimpleGrid.js.map +1 -1
- package/lib/esm/components/Layout/SimplePageLayout/index.js +1 -1
- package/lib/esm/components/Layout/SimplePageLayout/index.js.map +1 -1
- package/lib/esm/components/Modal/Modal.js +1 -1
- package/lib/esm/components/Modal/Modal.js.map +1 -1
- package/lib/esm/components/Notification/notifications.js +1 -1
- package/lib/esm/components/Notification/notifications.js.map +1 -1
- package/lib/esm/components/Table/TableClientSide/TableClientSidePersistent/index.js +1 -1
- package/lib/esm/components/Table/TableClientSide/TableClientSidePersistent/index.js.map +1 -1
- package/lib/esm/components/Table/TableServerSide/TableServerSidePersistent/index.js +1 -1
- package/lib/esm/components/Table/TableServerSide/TableServerSidePersistent/index.js.map +1 -1
- package/lib/esm/components/Table/components/ActionMenu/ActionMenu.js +1 -1
- package/lib/esm/components/Table/components/ActionMenu/ActionMenu.js.map +1 -1
- package/lib/esm/components/Tag/Tag.js +1 -1
- package/lib/esm/components/Tag/Tag.js.map +1 -1
- package/lib/esm/components/TextWithTooltip/TextWithTooltip.js.map +1 -1
- package/lib/esm/components/TimeZoneInfo/index.js +1 -1
- package/lib/esm/components/TimeZoneInfo/index.js.map +1 -1
- package/lib/esm/components/Tooltip/Tooltip.js +1 -1
- package/lib/esm/components/Tooltip/Tooltip.js.map +1 -1
- package/lib/esm/components/Typo/Typo.js +1 -1
- package/lib/esm/components/Typo/Typo.js.map +1 -1
- package/lib/esm/icons/StatusIcon/StatusIcon.js +1 -1
- package/lib/esm/icons/StatusIcon/StatusIcon.js.map +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/index.js.map +1 -1
- package/package.json +1 -1
- package/types/src/api/error/libs.d.ts.map +1 -1
- package/types/src/components/Alert/Alert.d.ts.map +1 -1
- package/types/src/components/Badge/Badge.d.ts +0 -1
- package/types/src/components/Badge/Badge.d.ts.map +1 -1
- package/types/src/components/BadgeIconHoverCard/BadgeIconHoverCard.d.ts.map +1 -1
- package/types/src/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
- package/types/src/components/DateInline/DateInline.d.ts.map +1 -1
- package/types/src/components/Drawer/Drawer.d.ts.map +1 -1
- package/types/src/components/Form/Button/Button.d.ts.map +1 -1
- package/types/src/components/Form/Checkbox/Checkbox.d.ts.map +1 -1
- package/types/src/components/Form/DateTimePicker/DateTimePicker.d.ts.map +1 -1
- package/types/src/components/Form/DateTimePicker/TimePicker.d.ts.map +1 -1
- package/types/src/components/Form/FileInput/FileInput.d.ts.map +1 -1
- package/types/src/components/Form/FormItemGroup.d.ts.map +1 -1
- package/types/src/components/Form/Labels/InfoLabel.d.ts.map +1 -1
- package/types/src/components/Form/Labels/LabelWithIcon.d.ts.map +1 -1
- package/types/src/components/Form/MenuButton/index.d.ts.map +1 -1
- package/types/src/components/Form/RadioButton/RadioButton.d.ts.map +1 -1
- package/types/src/components/HighlightBox/HighlightBox.d.ts +3 -0
- package/types/src/components/HighlightBox/HighlightBox.d.ts.map +1 -0
- package/types/src/components/HighlightBox/index.d.ts +2 -0
- package/types/src/components/HighlightBox/index.d.ts.map +1 -0
- package/types/src/components/HoverCard/HoverCard.d.ts.map +1 -1
- package/types/src/components/Icon/Icon.d.ts.map +1 -1
- package/types/src/components/InformationList/InformationList.d.ts.map +1 -1
- package/types/src/components/Layout/AppHeader/AppHeader.d.ts.map +1 -1
- package/types/src/components/Layout/AppHeader/TimeZone.d.ts.map +1 -1
- package/types/src/components/Layout/AppHeader/languageSwitch/LanguageSwitch.d.ts.map +1 -1
- package/types/src/components/Layout/AppHeader/manual/Manual.d.ts.map +1 -1
- package/types/src/components/Layout/AppHeader/themeSwitch/ThemeSwitch.d.ts.map +1 -1
- package/types/src/components/Layout/AppHeader/userNav/NavItem.d.ts.map +1 -1
- package/types/src/components/Layout/AppHeader/userNav/UserNav.d.ts.map +1 -1
- package/types/src/components/Layout/AppNavigation/Menu/menuItems.d.ts.map +1 -1
- package/types/src/index.d.ts +1 -0
- package/types/src/index.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Filter/utils/FilterSelect.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { useMantineColorScheme, useMantineTheme } from \"@mantine/core\"\nimport {\n ActionMeta,\n components,\n CSSObjectWithLabel,\n GroupBase,\n MultiValueGenericProps,\n} from \"react-select\"\nimport React, { FC, FocusEventHandler, KeyboardEventHandler, PropsWithChildren } from \"react\"\nimport { Select } from \"./Select\"\nimport { StateManagerProps } from \"react-select/dist/declarations/src/useStateManager\"\nimport { TFilter, TSelectOnChangeReturn, TSelectOnChangeReturnArray } from \"./types\"\nimport { useFilter } from \"./hooks/useFilter\"\nimport { useTranslation } from \"react-i18next\"\nimport { TextWithTooltip } from \"../../TextWithTooltip\"\nimport classes from \"./FilterSelect.module.css\"\nimport { Z_INDEX_LAYER } from \"../../../theme\"\n\ntype TFilterSelectProps = StateManagerProps & {\n creatable?: boolean\n onChange?: (\n newValue: TSelectOnChangeReturn | TSelectOnChangeReturnArray,\n actionMeta: ActionMeta<unknown>\n ) => void\n onBlur?: FocusEventHandler\n onKeyDown?: KeyboardEventHandler\n multiple?: boolean\n completed?: boolean\n options?: StateManagerProps[\"options\"]\n type?: TFilter.ConfigItem[\"control\"][\"type\"]\n value?: TFilter.Internal.Term.TermValue\n withTranslation?: boolean\n}\n\nexport const FilterInputWrapper: FC<PropsWithChildren> = ({ children }) => {\n return (\n <div\n className={classes.container}\n data-testid={\"filter-select-container\"}\n onClick={(e) => {\n e.stopPropagation()\n }}\n >\n {children}\n </div>\n )\n}\n\nconst MultiValueLabelWithTranslation = (\n props: MultiValueGenericProps<unknown, boolean, GroupBase<unknown>>\n) => {\n const { t } = useTranslation()\n const toRender =\n typeof props.children === \"string\" ? (\n <TextWithTooltip typoType={\"body\"} text={t(props.children)} />\n ) : (\n props.children\n )\n\n return <components.MultiValueLabel {...props}>{toRender}</components.MultiValueLabel>\n}\n\n/**\n * A @ReactSelect Select component wrapper for the filter.\n * @param creatable Whether you can add new values or not (*Autocomplete*)\n * @param onBlur Callback that is called when the select is blurred\n * @param onChange Callback that is called when the Select value changes\n * @param onKeyDown Callback that is called when a keyDown event occurs\n * @param multiple Whether you can add multiple values or not (*multiselect*)\n * @param withTranslation (DEPRECATED) Please wrap your filter options with **useTranslateFilterOptions(options) hook**\n * @param value An initial TermValue\n * @param options DropDown options\n * @param props Props for the ReactSelect element\n */\nconst FilterSelect: React.FC<React.PropsWithChildren<TFilterSelectProps>> = ({\n creatable,\n onBlur,\n onChange,\n onKeyDown,\n multiple,\n withTranslation,\n value,\n options,\n ...props\n}) => {\n const theme = useMantineTheme()\n const { colorScheme } = useMantineColorScheme()\n const isDarkScheme = colorScheme === \"dark\"\n const { portalTargetRef } = useFilter()\n return (\n <FilterInputWrapper>\n <Select\n multiple={multiple}\n menuPortalTarget={portalTargetRef?.current}\n onChange={(newValue, actionMeta) => {\n if (Array.isArray(newValue)) {\n onChange?.(newValue as TSelectOnChangeReturnArray, actionMeta)\n }\n const value = newValue as TSelectOnChangeReturn\n onChange?.(value, actionMeta)\n }}\n {...props}\n onKeyDown={onKeyDown}\n onBlur={onBlur}\n menuIsOpen={true}\n value={Array.isArray(value) ? value.map((x) => ({ value: x, label: x })) : value}\n closeMenuOnSelect={!multiple}\n autoFocus={true}\n styles={{\n control: (base) =>\n ({\n ...base,\n minHeight: 30,\n backgroundColor: isDarkScheme ? theme.colors.gray[8] : base.backgroundColor,\n color: isDarkScheme ? theme.white : base.backgroundColor,\n }) as CSSObjectWithLabel,\n option: (base, { isFocused }) => {\n return {\n ...base,\n backgroundColor: isFocused\n ? isDarkScheme\n ? theme.colors.green[7]\n : theme.colors.green[0]\n : isDarkScheme\n ? theme.colors.gray[9]\n : base.backgroundColor,\n \"&:active\": {\n backgroundColor: isDarkScheme ? theme.colors.green[7] : theme.colors.green[0],\n },\n color: isDarkScheme ? theme.white : base.color,\n } as CSSObjectWithLabel\n },\n multiValue: (base) =>\n ({\n ...base,\n borderRadius: \"2px\",\n backgroundColor: isDarkScheme ? theme.colors.gray[7] : theme.colors.gray[1],\n color: isDarkScheme ? theme.white : theme.colors.gray[9],\n }) as CSSObjectWithLabel,\n multiValueLabel: (base) =>\n ({\n ...base,\n color: isDarkScheme ? theme.white : theme.colors.gray[9],\n }) as CSSObjectWithLabel,\n multiValueRemove: (base) =>\n ({\n ...base,\n color: isDarkScheme ? theme.white : theme.colors.gray[9],\n \"&:hover\": {\n backgroundColor: \"inherit\",\n borderRadius: \"2px\",\n cursor: \"pointer\",\n color: isDarkScheme ? theme.black : theme.white,\n },\n }) as CSSObjectWithLabel,\n input: (base) =>\n (isDarkScheme ? { ...base, color: theme.white } : base) as CSSObjectWithLabel,\n dropdownIndicator: (base) =>\n ({\n ...base,\n paddingTop: 0,\n paddingBottom: 0,\n }) as CSSObjectWithLabel,\n clearIndicator: (base) =>\n ({\n ...base,\n paddingTop: 0,\n paddingBottom: 0,\n }) as CSSObjectWithLabel,\n menu: (base) =>\n ({\n ...base,\n overflow: \"visible\",\n border: `1px solid ${isDarkScheme ? theme.colors.gray[8] : theme.colors.gray[2]}`,\n borderRadius: \"2px\",\n backgroundColor: isDarkScheme ? theme.colors.gray[9] : base.backgroundColor,\n }) as CSSObjectWithLabel,\n menuPortal: (base) => ({\n ...base,\n zIndex: Z_INDEX_LAYER.GROUND.HIGHEST,\n }),\n }}\n options={options}\n creatable={creatable}\n hideSelectedOptions={true}\n noOptionsMessage={() => null}\n isClearable={true}\n components={{\n DropdownIndicator: () => null,\n IndicatorSeparator: () => null,\n MultiValueLabel: withTranslation\n ? MultiValueLabelWithTranslation\n : components.MultiValueLabel,\n }}\n />\n </FilterInputWrapper>\n )\n}\n\nexport { FilterSelect }\n"],"names":["FilterInputWrapper","FilterSelect","children","div","className","classes","container","data-testid","onClick","e","stopPropagation","MultiValueLabelWithTranslation","props","t","useTranslation","toRender","TextWithTooltip","typoType","text","components","MultiValueLabel","creatable","onBlur","onChange","onKeyDown","multiple","withTranslation","value","options","theme","useMantineTheme","colorScheme","useMantineColorScheme","isDarkScheme","portalTargetRef","useFilter","Select","menuPortalTarget","current","newValue","actionMeta","Array","isArray","menuIsOpen","map","x","label","closeMenuOnSelect","autoFocus","styles","control","base","minHeight","backgroundColor","colors","gray","color","white","option","isFocused","green","multiValue","borderRadius","multiValueLabel","multiValueRemove","cursor","black","input","dropdownIndicator","paddingTop","paddingBottom","clearIndicator","menu","overflow","border","menuPortal","zIndex","Z_INDEX_LAYER","GROUND","HIGHEST","hideSelectedOptions","noOptionsMessage","isClearable","DropdownIndicator","IndicatorSeparator"],"mappings":"mPAsCaA,4BAAAA,wBAqKJC,sBAAAA,mFAvM8C,4CAOhD,2EAC+E,gCAC/D,qCAGG,iDACK,gDACC,oGACZ,mDACU,yhEAkBvB,MAAMD,mBAA4C,CAAC,CAAEE,QAAQ,CAAE,IACpE,MACE,oBAACC,OACCC,UAAWC,8BAAO,CAACC,SAAS,CAC5BC,cAAa,0BACbC,QAAS,AAACC,IACRA,EAAEC,eAAe,EACnB,WAECR,UAGP,EAEA,MAAMS,+BAAiC,AACrCC,QAEA,KAAM,CAAEC,CAAC,CAAE,CAAGC,GAAAA,4BAAc,IAC5B,MAAMC,SACJ,OAAOH,MAAMV,QAAQ,GAAK,SACxB,oBAACc,gCAAe,EAACC,SAAU,OAAQC,KAAML,EAAED,MAAMV,QAAQ,IAEzDU,MAAMV,QAAQ,CAGlB,MAAO,oBAACiB,uBAAU,CAACC,eAAe,wCAAKR,iBAAQG,WACjD,EAcA,MAAMd,aAAsE,YAAC,CAC3EoB,SAAS,CACTC,MAAM,CACNC,QAAQ,CACRC,SAAS,CACTC,QAAQ,CACRC,eAAe,CACfC,KAAK,CACLC,OAAO,CAER,QADIhB,yCARHS,YACAC,SACAC,WACAC,YACAC,WACAC,kBACAC,QACAC,YAGA,MAAMC,MAAQC,GAAAA,qBAAe,IAC7B,KAAM,CAAEC,WAAW,CAAE,CAAGC,GAAAA,2BAAqB,IAC7C,MAAMC,aAAeF,cAAgB,OACrC,KAAM,CAAEG,eAAe,CAAE,CAAGC,GAAAA,oBAAS,IACrC,MACE,oBAACnC,6BACC,oBAACoC,cAAM,sCACLX,SAAUA,SACVY,gBAAgB,CAAEH,wBAAAA,gCAAAA,gBAAiBI,OAAO,CAC1Cf,SAAU,CAACgB,SAAUC,cACnB,GAAIC,MAAMC,OAAO,CAACH,UAAW,CAC3BhB,iBAAAA,yBAAAA,SAAWgB,SAAwCC,WACrD,CACA,MAAMb,MAAQY,SACdhB,iBAAAA,yBAAAA,SAAWI,MAAOa,WACpB,GACI5B,QACJY,UAAWA,UACXF,OAAQA,OACRqB,WAAY,KACZhB,MAAOc,MAAMC,OAAO,CAACf,OAASA,MAAMiB,GAAG,CAAC,AAACC,GAAO,CAAA,CAAElB,MAAOkB,EAAGC,MAAOD,CAAE,CAAA,GAAMlB,MAC3EoB,kBAAmB,CAACtB,SACpBuB,UAAW,KACXC,OAAQ,CACNC,QAAS,AAACC,MACP,uCACIA,OACHC,UAAW,GACXC,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAGJ,KAAKE,eAAe,CAC3EG,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAGN,KAAKE,eAAe,GAE5DK,OAAQ,CAACP,KAAM,CAAEQ,SAAS,CAAE,IAC1B,OAAO,uCACFR,OACHE,gBAAiBM,UACb1B,aACEJ,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,CACrB/B,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,CACvB3B,aACEJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CACpBJ,KAAKE,eAAe,CAC1B,WAAY,CACVA,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,CAAG/B,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,AAC/E,EACAJ,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAGN,KAAKK,KAAK,EAElD,EACAK,WAAY,AAACV,MACV,uCACIA,OACHW,aAAc,MACdT,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAG1B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAC3EC,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAG5B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,GAE5DQ,gBAAiB,AAACZ,MACf,uCACIA,OACHK,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAG5B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,GAE5DS,iBAAkB,AAACb,MAChB,uCACIA,OACHK,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAG5B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CACxD,UAAW,CACTF,gBAAiB,UACjBS,aAAc,MACdG,OAAQ,UACRT,MAAOvB,aAAeJ,MAAMqC,KAAK,CAAGrC,MAAM4B,KAAK,AACjD,IAEJU,MAAO,AAAChB,MACLlB,aAAe,uCAAKkB,OAAMK,MAAO3B,MAAM4B,KAAK,GAAKN,KACpDiB,kBAAmB,AAACjB,MACjB,uCACIA,OACHkB,WAAY,EACZC,cAAe,IAEnBC,eAAgB,AAACpB,MACd,uCACIA,OACHkB,WAAY,EACZC,cAAe,IAEnBE,KAAM,AAACrB,MACJ,uCACIA,OACHsB,SAAU,UACVC,OAAQ,CAAC,UAAU,EAAEzC,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAG1B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAC,CAAC,CACjFO,aAAc,MACdT,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAGJ,KAAKE,eAAe,GAE/EsB,WAAY,AAACxB,MAAU,uCAClBA,OACHyB,OAAQC,oBAAa,CAACC,MAAM,CAACC,OAAO,EAExC,EACAnD,QAASA,QACTP,UAAWA,UACX2D,oBAAqB,KACrBC,iBAAkB,IAAM,KACxBC,YAAa,KACb/D,WAAY,CACVgE,kBAAmB,IAAM,KACzBC,mBAAoB,IAAM,KAC1BhE,gBAAiBM,gBACbf,+BACAQ,uBAAU,CAACC,eAAe,AAChC,MAIR"}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Filter/utils/FilterSelect.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { useMantineColorScheme, useMantineTheme } from \"@mantine/core\"\nimport {\n ActionMeta,\n components,\n CSSObjectWithLabel,\n GroupBase,\n MultiValueGenericProps,\n} from \"react-select\"\nimport React, { FC, FocusEventHandler, KeyboardEventHandler, PropsWithChildren } from \"react\"\nimport { Select } from \"./Select\"\nimport { StateManagerProps } from \"react-select/dist/declarations/src/useStateManager\"\nimport { TFilter, TSelectOnChangeReturn, TSelectOnChangeReturnArray } from \"./types\"\nimport { useFilter } from \"./hooks/useFilter\"\nimport { useTranslation } from \"react-i18next\"\nimport { TextWithTooltip } from \"../../TextWithTooltip\"\nimport classes from \"./FilterSelect.module.css\"\nimport { Z_INDEX_LAYER } from \"../../../theme\"\n\ntype TFilterSelectProps = StateManagerProps & {\n creatable?: boolean\n onChange?: (\n newValue: TSelectOnChangeReturn | TSelectOnChangeReturnArray,\n actionMeta: ActionMeta<unknown>\n ) => void\n onBlur?: FocusEventHandler\n onKeyDown?: KeyboardEventHandler\n multiple?: boolean\n completed?: boolean\n options?: StateManagerProps[\"options\"]\n type?: TFilter.ConfigItem[\"control\"][\"type\"]\n value?: TFilter.Internal.Term.TermValue\n withTranslation?: boolean\n}\n\nexport const FilterInputWrapper: FC<PropsWithChildren> = ({ children }) => {\n return (\n <div\n className={classes.container}\n data-testid={\"filter-select-container\"}\n onClick={(e) => {\n e.stopPropagation()\n }}\n >\n {children}\n </div>\n )\n}\n\nconst MultiValueLabelWithTranslation = (\n props: MultiValueGenericProps<unknown, boolean, GroupBase<unknown>>\n) => {\n const { t } = useTranslation()\n const toRender =\n typeof props.children === \"string\" ? (\n <TextWithTooltip typoType={\"body\"} text={t(props.children)} />\n ) : (\n props.children\n )\n\n return <components.MultiValueLabel {...props}>{toRender}</components.MultiValueLabel>\n}\n\n/**\n * A @ReactSelect Select component wrapper for the filter.\n * @param creatable Whether you can add new values or not (*Autocomplete*)\n * @param onBlur Callback that is called when the select is blurred\n * @param onChange Callback that is called when the Select value changes\n * @param onKeyDown Callback that is called when a keyDown event occurs\n * @param multiple Whether you can add multiple values or not (*multiselect*)\n * @param withTranslation (DEPRECATED) Please wrap your filter options with **useTranslateFilterOptions(options) hook**\n * @param value An initial TermValue\n * @param options DropDown options\n * @param props Props for the ReactSelect element\n */\nconst FilterSelect: React.FC<React.PropsWithChildren<TFilterSelectProps>> = ({\n creatable,\n onBlur,\n onChange,\n onKeyDown,\n multiple,\n withTranslation,\n value,\n options,\n ...props\n}) => {\n const theme = useMantineTheme()\n const { colorScheme } = useMantineColorScheme()\n const isDarkScheme = colorScheme === \"dark\"\n const { portalTargetRef } = useFilter()\n return (\n <FilterInputWrapper>\n <Select\n multiple={multiple}\n menuPortalTarget={portalTargetRef?.current}\n onChange={(newValue, actionMeta) => {\n if (Array.isArray(newValue)) {\n onChange?.(newValue as TSelectOnChangeReturnArray, actionMeta)\n }\n const value = newValue as TSelectOnChangeReturn\n onChange?.(value, actionMeta)\n }}\n {...props}\n onKeyDown={onKeyDown}\n onBlur={onBlur}\n menuIsOpen={true}\n value={Array.isArray(value) ? value.map((x) => ({ value: x, label: x })) : value}\n closeMenuOnSelect={!multiple}\n autoFocus={true}\n styles={{\n control: (base) =>\n ({\n ...base,\n minHeight: 30,\n backgroundColor: isDarkScheme ? theme.colors.gray[8] : base.backgroundColor,\n color: isDarkScheme ? theme.white : base.backgroundColor,\n }) as CSSObjectWithLabel,\n option: (base, { isFocused }) => {\n return {\n ...base,\n backgroundColor: isFocused\n ? isDarkScheme\n ? theme.colors.green[7]\n : theme.colors.green[0]\n : isDarkScheme\n ? theme.colors.gray[9]\n : base.backgroundColor,\n \"&:active\": {\n backgroundColor: isDarkScheme ? theme.colors.green[7] : theme.colors.green[0],\n },\n color: isDarkScheme ? theme.white : base.color,\n } as CSSObjectWithLabel\n },\n multiValue: (base) =>\n ({\n ...base,\n borderRadius: \"2px\",\n backgroundColor: isDarkScheme ? theme.colors.gray[7] : theme.colors.gray[1],\n color: isDarkScheme ? theme.white : theme.colors.gray[9],\n }) as CSSObjectWithLabel,\n multiValueLabel: (base) =>\n ({\n ...base,\n color: isDarkScheme ? theme.white : theme.colors.gray[9],\n }) as CSSObjectWithLabel,\n multiValueRemove: (base) =>\n ({\n ...base,\n color: isDarkScheme ? theme.white : theme.colors.gray[9],\n \"&:hover\": {\n backgroundColor: \"inherit\",\n borderRadius: \"2px\",\n cursor: \"pointer\",\n color: isDarkScheme ? theme.black : theme.white,\n },\n }) as CSSObjectWithLabel,\n input: (base) =>\n (isDarkScheme ? { ...base, color: theme.white } : base) as CSSObjectWithLabel,\n dropdownIndicator: (base) =>\n ({\n ...base,\n paddingTop: 0,\n paddingBottom: 0,\n }) as CSSObjectWithLabel,\n clearIndicator: (base) =>\n ({\n ...base,\n paddingTop: 0,\n paddingBottom: 0,\n }) as CSSObjectWithLabel,\n menu: (base) =>\n ({\n ...base,\n overflow: \"visible\",\n border: `1px solid ${isDarkScheme ? theme.colors.gray[8] : theme.colors.gray[2]}`,\n borderRadius: \"2px\",\n backgroundColor: isDarkScheme ? theme.colors.gray[9] : base.backgroundColor,\n }) as CSSObjectWithLabel,\n menuPortal: (base) => ({\n ...base,\n zIndex: Z_INDEX_LAYER.GROUND.HIGHEST,\n }),\n }}\n options={options}\n creatable={creatable}\n hideSelectedOptions={true}\n noOptionsMessage={() => null}\n isClearable={true}\n components={{\n DropdownIndicator: () => null,\n IndicatorSeparator: () => null,\n MultiValueLabel: withTranslation\n ? MultiValueLabelWithTranslation\n : components.MultiValueLabel,\n }}\n />\n </FilterInputWrapper>\n )\n}\n\nexport { FilterSelect }\n"],"names":["FilterInputWrapper","FilterSelect","children","div","className","classes","container","data-testid","onClick","e","stopPropagation","MultiValueLabelWithTranslation","props","t","useTranslation","toRender","TextWithTooltip","typoType","text","components","MultiValueLabel","creatable","onBlur","onChange","onKeyDown","multiple","withTranslation","value","options","theme","useMantineTheme","colorScheme","useMantineColorScheme","isDarkScheme","portalTargetRef","useFilter","Select","menuPortalTarget","current","newValue","actionMeta","Array","isArray","menuIsOpen","map","x","label","closeMenuOnSelect","autoFocus","styles","control","base","minHeight","backgroundColor","colors","gray","color","white","option","isFocused","green","multiValue","borderRadius","multiValueLabel","multiValueRemove","cursor","black","input","dropdownIndicator","paddingTop","paddingBottom","clearIndicator","menu","overflow","border","menuPortal","zIndex","Z_INDEX_LAYER","GROUND","HIGHEST","hideSelectedOptions","noOptionsMessage","isClearable","DropdownIndicator","IndicatorSeparator"],"mappings":"mPAsCaA,4BAAAA,wBAqKJC,sBAAAA,mFAvM8C,4CAOhD,2EAC+E,gCAC/D,qCAGG,iDACK,gDACC,oGACZ,mDACU,s3EAkBvB,MAAMD,mBAA4C,CAAC,CAAEE,QAAQ,CAAE,IACpE,MACE,oBAACC,OACCC,UAAWC,8BAAO,CAACC,SAAS,CAC5BC,cAAa,0BACbC,QAAS,AAACC,IACRA,EAAEC,eAAe,EACnB,WAECR,UAGP,EAEA,MAAMS,+BAAiC,AACrCC,QAEA,KAAM,CAAEC,CAAC,CAAE,CAAGC,GAAAA,4BAAc,IAC5B,MAAMC,SACJ,OAAOH,MAAMV,QAAQ,GAAK,SACxB,oBAACc,gCAAe,EAACC,SAAU,OAAQC,KAAML,EAAED,MAAMV,QAAQ,IAEzDU,MAAMV,QAAQ,CAGlB,MAAO,oBAACiB,uBAAU,CAACC,eAAe,wCAAKR,iBAAQG,WACjD,EAcA,MAAMd,aAAsE,QAAC,CAC3EoB,SAAS,CACTC,MAAM,CACNC,QAAQ,CACRC,SAAS,CACTC,QAAQ,CACRC,eAAe,CACfC,KAAK,CACLC,OAAO,CAER,IADIhB,kIAEH,MAAMiB,MAAQC,GAAAA,qBAAe,IAC7B,KAAM,CAAEC,WAAW,CAAE,CAAGC,GAAAA,2BAAqB,IAC7C,MAAMC,aAAeF,cAAgB,OACrC,KAAM,CAAEG,eAAe,CAAE,CAAGC,GAAAA,oBAAS,IACrC,MACE,oBAACnC,6BACC,oBAACoC,cAAM,sCACLX,SAAUA,SACVY,gBAAgB,CAAEH,wBAAAA,gCAAAA,gBAAiBI,OAAO,CAC1Cf,SAAU,CAACgB,SAAUC,cACnB,GAAIC,MAAMC,OAAO,CAACH,UAAW,CAC3BhB,iBAAAA,yBAAAA,SAAWgB,SAAwCC,WACrD,CACA,MAAMb,MAAQY,SACdhB,iBAAAA,yBAAAA,SAAWI,MAAOa,WACpB,GACI5B,QACJY,UAAWA,UACXF,OAAQA,OACRqB,WAAY,KACZhB,MAAOc,MAAMC,OAAO,CAACf,OAASA,MAAMiB,GAAG,CAAC,AAACC,GAAO,CAAA,CAAElB,MAAOkB,EAAGC,MAAOD,CAAE,CAAA,GAAMlB,MAC3EoB,kBAAmB,CAACtB,SACpBuB,UAAW,KACXC,OAAQ,CACNC,QAAS,AAACC,MACP,uCACIA,OACHC,UAAW,GACXC,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAGJ,KAAKE,eAAe,CAC3EG,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAGN,KAAKE,eAAe,GAE5DK,OAAQ,CAACP,KAAM,CAAEQ,SAAS,CAAE,IAC1B,OAAO,uCACFR,OACHE,gBAAiBM,UACb1B,aACEJ,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,CACrB/B,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,CACvB3B,aACEJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CACpBJ,KAAKE,eAAe,CAC1B,WAAY,CACVA,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,CAAG/B,MAAMyB,MAAM,CAACM,KAAK,CAAC,EAAE,AAC/E,EACAJ,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAGN,KAAKK,KAAK,EAElD,EACAK,WAAY,AAACV,MACV,uCACIA,OACHW,aAAc,MACdT,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAG1B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAC3EC,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAG5B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,GAE5DQ,gBAAiB,AAACZ,MACf,uCACIA,OACHK,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAG5B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,GAE5DS,iBAAkB,AAACb,MAChB,uCACIA,OACHK,MAAOvB,aAAeJ,MAAM4B,KAAK,CAAG5B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CACxD,UAAW,CACTF,gBAAiB,UACjBS,aAAc,MACdG,OAAQ,UACRT,MAAOvB,aAAeJ,MAAMqC,KAAK,CAAGrC,MAAM4B,KAAK,AACjD,IAEJU,MAAO,AAAChB,MACLlB,aAAe,uCAAKkB,OAAMK,MAAO3B,MAAM4B,KAAK,GAAKN,KACpDiB,kBAAmB,AAACjB,MACjB,uCACIA,OACHkB,WAAY,EACZC,cAAe,IAEnBC,eAAgB,AAACpB,MACd,uCACIA,OACHkB,WAAY,EACZC,cAAe,IAEnBE,KAAM,AAACrB,MACJ,uCACIA,OACHsB,SAAU,UACVC,OAAQ,CAAC,UAAU,EAAEzC,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAG1B,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAC,CAAC,CACjFO,aAAc,MACdT,gBAAiBpB,aAAeJ,MAAMyB,MAAM,CAACC,IAAI,CAAC,EAAE,CAAGJ,KAAKE,eAAe,GAE/EsB,WAAY,AAACxB,MAAU,uCAClBA,OACHyB,OAAQC,oBAAa,CAACC,MAAM,CAACC,OAAO,EAExC,EACAnD,QAASA,QACTP,UAAWA,UACX2D,oBAAqB,KACrBC,iBAAkB,IAAM,KACxBC,YAAa,KACb/D,WAAY,CACVgE,kBAAmB,IAAM,KACzBC,mBAAoB,IAAM,KAC1BhE,gBAAiBM,gBACbf,+BACAQ,uBAAU,CAACC,eAAe,AAChC,MAIR"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Select",{enumerable:true,get:function(){return Select}});const _jsxruntime=require("react/jsx-runtime");const _reactselect=/*#__PURE__*/_interop_require_default(require("react-select"));const _creatable=/*#__PURE__*/_interop_require_default(require("react-select/creatable"));const _react=/*#__PURE__*/_interop_require_default(require("react"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Select",{enumerable:true,get:function(){return Select}});const _jsxruntime=require("react/jsx-runtime");const _reactselect=/*#__PURE__*/_interop_require_default(require("react-select"));const _creatable=/*#__PURE__*/_interop_require_default(require("react-select/creatable"));const _react=/*#__PURE__*/_interop_require_default(require("react"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const Select=_0=>{let{creatable,onBlur,onChange,onKeyDown,multiple}=_0,props=_object_without_properties(_0,["creatable","onBlur","onChange","onKeyDown","multiple"]);if(creatable){return(0,_jsxruntime.jsx)(_creatable.default,_object_spread({isMulti:multiple,onChange:onChange,onKeyDown:onKeyDown,onBlur:onBlur,menuPlacement:"auto",menuPosition:"fixed",formatCreateLabel:v=>v,noOptionsMessage:()=>null,placeholder:""},props))}return(0,_jsxruntime.jsx)(_reactselect.default,_object_spread({menuPlacement:"auto",menuPosition:"fixed",noOptionsMessage:()=>null,placeholder:"",isMulti:multiple,onChange:onChange,onKeyDown:onKeyDown,onBlur:onBlur},props))};
|
|
2
2
|
//# sourceMappingURL=Select.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Filter/utils/Select.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { ActionMeta, default as ReactSelect } from \"react-select\"\nimport CreatableSelect from \"react-select/creatable\"\nimport React, { FocusEventHandler, KeyboardEventHandler } from \"react\"\nimport { StateManagerProps } from \"react-select/dist/declarations/src/useStateManager\"\n\ntype TSelectProps = StateManagerProps & {\n creatable?: boolean\n onChange?: (newValue: { value: unknown; label: string }, actionMeta: ActionMeta<unknown>) => void\n onBlur?: FocusEventHandler\n onKeyDown?: KeyboardEventHandler\n multiple?: boolean\n}\n\nconst Select: React.FC<React.PropsWithChildren<TSelectProps>> = ({\n creatable,\n onBlur,\n onChange,\n onKeyDown,\n multiple,\n ...props\n}) => {\n if (creatable) {\n return (\n <CreatableSelect\n isMulti={multiple}\n onChange={onChange}\n onKeyDown={onKeyDown}\n onBlur={onBlur}\n menuPlacement=\"auto\"\n menuPosition=\"fixed\"\n formatCreateLabel={(v) => v}\n noOptionsMessage={() => null}\n placeholder={\"\"}\n {...props}\n />\n )\n }\n\n return (\n <ReactSelect\n menuPlacement=\"auto\"\n menuPosition=\"fixed\"\n noOptionsMessage={() => null}\n placeholder={\"\"}\n isMulti={multiple}\n onChange={onChange}\n onKeyDown={onKeyDown}\n onBlur={onBlur}\n {...props}\n />\n )\n}\n\nexport { Select }\n"],"names":["Select","creatable","onBlur","onChange","onKeyDown","multiple","props","CreatableSelect","isMulti","menuPlacement","menuPosition","formatCreateLabel","v","noOptionsMessage","placeholder","ReactSelect"],"mappings":"oGAyDSA,gDAAAA,0HArD0C,gFACvB,sFACmC,
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Filter/utils/Select.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { ActionMeta, default as ReactSelect } from \"react-select\"\nimport CreatableSelect from \"react-select/creatable\"\nimport React, { FocusEventHandler, KeyboardEventHandler } from \"react\"\nimport { StateManagerProps } from \"react-select/dist/declarations/src/useStateManager\"\n\ntype TSelectProps = StateManagerProps & {\n creatable?: boolean\n onChange?: (newValue: { value: unknown; label: string }, actionMeta: ActionMeta<unknown>) => void\n onBlur?: FocusEventHandler\n onKeyDown?: KeyboardEventHandler\n multiple?: boolean\n}\n\nconst Select: React.FC<React.PropsWithChildren<TSelectProps>> = ({\n creatable,\n onBlur,\n onChange,\n onKeyDown,\n multiple,\n ...props\n}) => {\n if (creatable) {\n return (\n <CreatableSelect\n isMulti={multiple}\n onChange={onChange}\n onKeyDown={onKeyDown}\n onBlur={onBlur}\n menuPlacement=\"auto\"\n menuPosition=\"fixed\"\n formatCreateLabel={(v) => v}\n noOptionsMessage={() => null}\n placeholder={\"\"}\n {...props}\n />\n )\n }\n\n return (\n <ReactSelect\n menuPlacement=\"auto\"\n menuPosition=\"fixed\"\n noOptionsMessage={() => null}\n placeholder={\"\"}\n isMulti={multiple}\n onChange={onChange}\n onKeyDown={onKeyDown}\n onBlur={onBlur}\n {...props}\n />\n )\n}\n\nexport { Select }\n"],"names":["Select","creatable","onBlur","onChange","onKeyDown","multiple","props","CreatableSelect","isMulti","menuPlacement","menuPosition","formatCreateLabel","v","noOptionsMessage","placeholder","ReactSelect"],"mappings":"oGAyDSA,gDAAAA,0HArD0C,gFACvB,sFACmC,2uDAW/D,MAAMA,OAA0D,QAAC,CAC/DC,SAAS,CACTC,MAAM,CACNC,QAAQ,CACRC,SAAS,CACTC,QAAQ,CAET,IADIC,8FAEH,GAAIL,UAAW,CACb,MACE,oBAACM,kBAAe,iBACdC,QAASH,SACTF,SAAUA,SACVC,UAAWA,UACXF,OAAQA,OACRO,cAAc,OACdC,aAAa,QACbC,kBAAmB,AAACC,GAAMA,EAC1BC,iBAAkB,IAAM,KACxBC,YAAa,IACTR,OAGV,CAEA,MACE,oBAACS,oBAAW,iBACVN,cAAc,OACdC,aAAa,QACbG,iBAAkB,IAAM,KACxBC,YAAa,GACbN,QAASH,SACTF,SAAUA,SACVC,UAAWA,UACXF,OAAQA,QACJI,OAGV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Button",{enumerable:true,get:function(){return Button}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _Buttonmodulecss=/*#__PURE__*/_interop_require_default(require("./Button.module.css"));const _react=require("react");const _theme=require("../../../theme");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});Object.defineProperty(exports,"Button",{enumerable:true,get:function(){return Button}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _Buttonmodulecss=/*#__PURE__*/_interop_require_default(require("./Button.module.css"));const _react=require("react");const _theme=require("../../../theme");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const Button=(0,_react.forwardRef)((_0,_1)=>{let _ref=[_0,_1],[_ref1,..._rest]=_ref,{variant="filled",size="md",children,icon}=_ref1,rest=_object_without_properties(_ref1,["variant","size","children","icon"]),[ref]=_rest;const Icon=icon;return(0,_jsxruntime.jsx)(_core.Button,_object_spread_props(_object_spread({variant:variant,size:size,classNames:_object_spread({},_Buttonmodulecss.default)},rest),{color:"red",leftSection:Icon&&(0,_jsxruntime.jsx)(Icon,{size:_theme.ICON_SIZES.MEDIUM}),ref:ref,children:children}))});Button.displayName="Button";
|
|
2
2
|
//# sourceMappingURL=Button.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/Button/Button.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Button as MantineButton, ButtonProps } from \"@mantine/core\"\nimport classes from \"./Button.module.css\"\nimport { forwardRef } from \"react\"\nimport { LucideIcon } from \"lucide-react\"\nimport { ICON_SIZES } from \"../../../theme\"\n\nexport type TButtonProps = {\n variant?: \"filled\" | \"outline\" | \"default\" | \"subtle\" | \"danger\"\n size?: \"sm\" | \"md\" | \"lg\"\n icon?: LucideIcon\n} & ButtonProps &\n React.ComponentPropsWithoutRef<\"button\">\n\nexport const Button = forwardRef<HTMLButtonElement, TButtonProps>(\n ({ variant = \"filled\", size = \"md\", children, icon, ...rest }, ref) => {\n const Icon = icon\n return (\n <MantineButton\n variant={variant}\n size={size}\n classNames={{ ...classes }}\n {...rest}\n color={\"red\"}\n leftSection={Icon && <Icon size={ICON_SIZES.MEDIUM} />}\n ref={ref}\n >\n {children}\n </MantineButton>\n )\n }\n)\n\nButton.displayName = \"Button\"\n"],"names":["Button","forwardRef","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/Button/Button.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Button as MantineButton, ButtonProps } from \"@mantine/core\"\nimport classes from \"./Button.module.css\"\nimport { forwardRef } from \"react\"\nimport { LucideIcon } from \"lucide-react\"\nimport { ICON_SIZES } from \"../../../theme\"\n\nexport type TButtonProps = {\n variant?: \"filled\" | \"outline\" | \"default\" | \"subtle\" | \"danger\"\n size?: \"sm\" | \"md\" | \"lg\"\n icon?: LucideIcon\n} & ButtonProps &\n React.ComponentPropsWithoutRef<\"button\">\n\n/**\n * Provides a Button component of various variants\n * @param variant Variant string of the button using filled, outline, default, subtle or danger\n * @param size Size of the Button using sm, md or lg\n * @param icon If an icon is given, it will be included in the Button\n */\nexport const Button = forwardRef<HTMLButtonElement, TButtonProps>(\n ({ variant = \"filled\", size = \"md\", children, icon, ...rest }, ref) => {\n const Icon = icon\n return (\n <MantineButton\n variant={variant}\n size={size}\n classNames={{ ...classes }}\n {...rest}\n color={\"red\"}\n leftSection={Icon && <Icon size={ICON_SIZES.MEDIUM} />}\n ref={ref}\n >\n {children}\n </MantineButton>\n )\n }\n)\n\nButton.displayName = \"Button\"\n"],"names":["Button","forwardRef","variant","size","children","icon","rest","ref","Icon","MantineButton","classNames","classes","color","leftSection","ICON_SIZES","MEDIUM","displayName"],"mappings":"oGAuBaA,gDAAAA,6EAnBwC,sFACjC,6CACO,8BAEA,s3EAepB,MAAMA,OAASC,GAAAA,iBAAU,EAC9B,iDAAC,CAAEC,QAAU,QAAQ,CAAEC,KAAO,IAAI,CAAEC,QAAQ,CAAEC,IAAI,CAAW,OAANC,6EAAQC,WAC7D,MAAMC,KAAOH,KACb,MACE,oBAACI,YAAa,sCACZP,QAASA,QACTC,KAAMA,KACNO,WAAY,kBAAKC,wBAAO,GACpBL,OACJM,MAAO,MACPC,YAAaL,MAAQ,oBAACA,MAAKL,KAAMW,iBAAU,CAACC,MAAM,GAClDR,IAAKA,aAEJH,WAGP,EAGFJ,CAAAA,OAAOgB,WAAW,CAAG"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get Checkbox(){return Checkbox},get FormCheckbox(){return FormCheckbox}});const _jsxruntime=require("react/jsx-runtime");const _react=/*#__PURE__*/_interop_require_wildcard(require("react"));const _core=require("@mantine/core");const _sharedStyles=require("../sharedStyles");const _Form=require("../Form/Form");const _Form1=require("../Form");const _FormErrors=require("../Form/FormErrors");const _Checkboxmodulecss=/*#__PURE__*/_interop_require_default(require("./Checkbox.module.css"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap;var cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interop_require_wildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj}}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj)}var newObj={__proto__:null};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc)}else{newObj[key]=obj[key]}}}newObj.default=obj;if(cache){cache.set(obj,newObj)}return newObj}function
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get Checkbox(){return Checkbox},get FormCheckbox(){return FormCheckbox}});const _jsxruntime=require("react/jsx-runtime");const _react=/*#__PURE__*/_interop_require_wildcard(require("react"));const _core=require("@mantine/core");const _sharedStyles=require("../sharedStyles");const _Form=require("../Form/Form");const _Form1=require("../Form");const _FormErrors=require("../Form/FormErrors");const _Checkboxmodulecss=/*#__PURE__*/_interop_require_default(require("./Checkbox.module.css"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap;var cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interop_require_wildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj}}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj)}var newObj={__proto__:null};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc)}else{newObj[key]=obj[key]}}}newObj.default=obj;if(cache){cache.set(obj,newObj)}return newObj}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const useStyles=()=>{const defaultFormStyles=(0,_sharedStyles.getDefaultFormStyles)();return _object_spread_props(_object_spread({},defaultFormStyles),{label:`${defaultFormStyles.label} ${_Checkboxmodulecss.default.label}`})};const Checkbox=(0,_react.forwardRef)((_0,_1)=>{let _ref=[_0,_1],[_ref1,..._rest]=_ref,{}=_ref1,props=_extends({},_ref1),[ref]=_rest;const classes=useStyles();return(0,_jsxruntime.jsx)(_core.Checkbox,_object_spread({ref:ref,classNames:{root:classes.root,label:classes.label,input:classes.input}},props))});const FormCheckbox=_0=>{let{name,validation={}}=_0,checkboxProps=_object_without_properties(_0,["name","validation"]);const{register,formState}=(0,_Form.useFormContext)();const errorContext=(0,_Form1.useErrorContext)();const formErrors=formState.errors[name];const fetchErrors=errorContext.errors[name];const errors=[formErrors===null||formErrors===void 0?void 0:formErrors.message,fetchErrors].flat().filter(ent=>ent);return(0,_jsxruntime.jsx)(Checkbox,_object_spread_props(_object_spread({},checkboxProps,register(name,{validate:validation,disabled:checkboxProps.disabled})),{error:errors.length>0&&(0,_jsxruntime.jsx)(_FormErrors.FormErrors,{errors:errors})}))};
|
|
2
2
|
//# sourceMappingURL=Checkbox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/Checkbox/Checkbox.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport React, { forwardRef } from \"react\"\nimport { Checkbox as CheckboxMantine, CheckboxProps } from \"@mantine/core\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport { useFormContext } from \"../Form/Form\"\nimport { TFormControl, useErrorContext } from \"../Form\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport classes from \"./Checkbox.module.css\"\n\nconst useStyles = () => {\n const defaultFormStyles = getDefaultFormStyles()\n return {\n ...defaultFormStyles,\n label: `${defaultFormStyles.label} ${classes.label}`,\n }\n}\n\n// eslint-disable-next-line react/display-name\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(({ ...props }, ref) => {\n const classes = useStyles()\n return (\n <CheckboxMantine\n ref={ref}\n classNames={{\n root: classes.root,\n label: classes.label,\n input: classes.input,\n }}\n {...props}\n />\n )\n})\n\n/**\n * **Form** wrapper for a checkbox component that automatically registers the input to the current form context (from **Form**).\n * It also connects to the error-context from **ConnectedForm** to show client-side and server-side validation errors.\n * @param name Name of the checkbox\n * @param validation Validation rules for the client-side validation\n * @param checkboxProps Props passed to checkbox component\n */\nexport const FormCheckbox: React.FC<CheckboxProps & TFormControl<HTMLInputElement>> = ({\n name,\n validation = {},\n ...checkboxProps\n}) => {\n const { register, formState } = useFormContext()\n const errorContext = useErrorContext()\n\n const formErrors = formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n const errors = [formErrors?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Checkbox\n {...checkboxProps}\n {...register(name, {\n validate: validation,\n disabled: checkboxProps.disabled,\n })}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n />\n )\n}\n"],"names":["Checkbox","FormCheckbox","useStyles","defaultFormStyles","getDefaultFormStyles","label","classes","forwardRef","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/Checkbox/Checkbox.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport React, { forwardRef } from \"react\"\nimport { Checkbox as CheckboxMantine, CheckboxProps } from \"@mantine/core\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport { useFormContext } from \"../Form/Form\"\nimport { TFormControl, useErrorContext } from \"../Form\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport classes from \"./Checkbox.module.css\"\n\nconst useStyles = () => {\n const defaultFormStyles = getDefaultFormStyles()\n return {\n ...defaultFormStyles,\n label: `${defaultFormStyles.label} ${classes.label}`,\n }\n}\n\n/**\n * Provides a Checkbox component\n * @param color Color string\n * @param CheckboxProps Additional props as defined by Mantine\n */\n// eslint-disable-next-line react/display-name\nexport const Checkbox = forwardRef<HTMLInputElement, CheckboxProps>(({ ...props }, ref) => {\n const classes = useStyles()\n return (\n <CheckboxMantine\n ref={ref}\n classNames={{\n root: classes.root,\n label: classes.label,\n input: classes.input,\n }}\n {...props}\n />\n )\n})\n\n/**\n * **Form** wrapper for a checkbox component that automatically registers the input to the current form context (from **Form**).\n * It also connects to the error-context from **ConnectedForm** to show client-side and server-side validation errors.\n * @param name Name of the checkbox\n * @param validation Validation rules for the client-side validation\n * @param checkboxProps Props passed to checkbox component\n */\nexport const FormCheckbox: React.FC<CheckboxProps & TFormControl<HTMLInputElement>> = ({\n name,\n validation = {},\n ...checkboxProps\n}) => {\n const { register, formState } = useFormContext()\n const errorContext = useErrorContext()\n\n const formErrors = formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n const errors = [formErrors?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Checkbox\n {...checkboxProps}\n {...register(name, {\n validate: validation,\n disabled: checkboxProps.disabled,\n })}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n />\n )\n}\n"],"names":["Checkbox","FormCheckbox","useStyles","defaultFormStyles","getDefaultFormStyles","label","classes","forwardRef","props","ref","CheckboxMantine","classNames","root","input","name","validation","checkboxProps","register","formState","useFormContext","errorContext","useErrorContext","formErrors","errors","fetchErrors","message","flat","filter","ent","validate","disabled","error","length","FormErrors"],"mappings":"mPA0BaA,kBAAAA,cAsBAC,sBAAAA,2HA5CqB,8BACyB,6CACtB,uCACN,qCACe,qCACnB,6FACP,snHAEpB,MAAMC,UAAY,KAChB,MAAMC,kBAAoBC,GAAAA,kCAAoB,IAC9C,OAAO,uCACFD,oBACHE,MAAO,CAAC,EAAEF,kBAAkBE,KAAK,CAAC,CAAC,EAAEC,0BAAO,CAACD,KAAK,CAAC,CAAC,EAExD,EAQO,MAAML,SAAWO,GAAAA,iBAAU,EAAkC,iDAAC,EAAY,OAAPC,0BAASC,WACjF,MAAMH,QAAUJ,YAChB,MACE,oBAACQ,cAAe,iBACdD,IAAKA,IACLE,WAAY,CACVC,KAAMN,QAAQM,IAAI,CAClBP,MAAOC,QAAQD,KAAK,CACpBQ,MAAOP,QAAQO,KAAK,AACtB,GACIL,OAGV,GASO,MAAMP,aAAyE,QAAC,CACrFa,IAAI,CACJC,WAAa,CAAC,CAAC,CAEhB,IADIC,mEAEH,KAAM,CAAEC,QAAQ,CAAEC,SAAS,CAAE,CAAGC,GAAAA,oBAAc,IAC9C,MAAMC,aAAeC,GAAAA,sBAAe,IAEpC,MAAMC,WAAaJ,UAAUK,MAAM,CAACT,KAAK,CACzC,MAAMU,YAAcJ,aAAaG,MAAM,CAACT,KAAK,CAC7C,MAAMS,OAAS,CAACD,mBAAAA,2BAAAA,WAAYG,OAAO,CAAYD,YAAY,CAACE,IAAI,GAAGC,MAAM,CAAC,AAACC,KAAQA,KAEnF,MACE,oBAAC5B,gDACKgB,cACAC,SAASH,KAAM,CACjBe,SAAUd,WACVe,SAAUd,cAAcc,QAAQ,AAClC,KACAC,MAAOR,OAAOS,MAAM,CAAG,GAAK,oBAACC,sBAAU,EAACV,OAAQA,WAGtD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get DateTimePicker(){return DateTimePicker},get FormDatetimePicker(){return FormDatetimePicker},get useStyles(){return useStyles}});const _jsxruntime=require("react/jsx-runtime");const _dates=require("@mantine/dates");const _reacthookform=require("react-hook-form");const _lucidereact=require("lucide-react");const _=require("..");const _FormErrors=require("../Form/FormErrors");const _sharedStyles=require("../sharedStyles");const _DateTimePickerOnly=require("./DateTimePickerOnly");const _reacti18next=require("react-i18next");const _helper=require("../../../helper");const _DateTimePickermodulecss=/*#__PURE__*/_interop_require_default(require("./DateTimePicker.module.css"));const _theme=require("../../../theme");require("@mantine/dates/styles.layer.css");require("@mantine/dates/styles.css");const _react=require("react");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get DateTimePicker(){return DateTimePicker},get FormDatetimePicker(){return FormDatetimePicker},get useStyles(){return useStyles}});const _jsxruntime=require("react/jsx-runtime");const _dates=require("@mantine/dates");const _reacthookform=require("react-hook-form");const _lucidereact=require("lucide-react");const _=require("..");const _FormErrors=require("../Form/FormErrors");const _sharedStyles=require("../sharedStyles");const _DateTimePickerOnly=require("./DateTimePickerOnly");const _reacti18next=require("react-i18next");const _helper=require("../../../helper");const _DateTimePickermodulecss=/*#__PURE__*/_interop_require_default(require("./DateTimePicker.module.css"));const _theme=require("../../../theme");require("@mantine/dates/styles.layer.css");require("@mantine/dates/styles.css");const _react=require("react");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const useStyles=()=>{const defaultFormStyles=(0,_sharedStyles.getDefaultFormStyles)();return _object_spread_props(_object_spread({},defaultFormStyles),{icon:_DateTimePickermodulecss.default.displayNone,displayNone:_DateTimePickermodulecss.default.displayNone})};const DateTimePickerRaw=_0=>{let{onChange,size="md"}=_0,props=_object_without_properties(_0,["onChange","size"]);const classes=useStyles();const{i18n}=(0,_reacti18next.useTranslation)();const language=i18n.language||"en";const Component=props.dateOnly?_DateTimePickerOnly.DateTimePickerOnly:_dates.DateTimePicker;const pickerInputRef=(0,_react.useRef)(null);return(0,_jsxruntime.jsx)(Component,_object_spread_props(_object_spread({placeholder:"",locale:language,rightSection:(0,_jsxruntime.jsx)(_lucidereact.CalendarDays,{color:"var(--mantine-color-gray-5)",onClick:()=>{var _pickerInputRef_current;return(_pickerInputRef_current=pickerInputRef.current)===null||_pickerInputRef_current===void 0?void 0:_pickerInputRef_current.click()},size:_theme.ICON_SIZES.MEDIUM,style:{cursor:"pointer"}})},props),{ref:pickerInputRef,size:size,classNames:_object_spread({input:classes.input,label:classes.label,root:classes.root},props.classNames),onChange:e=>onChange===null||onChange===void 0?void 0:onChange((e===null||e===void 0?void 0:e.getTime())||0),valueFormat:(0,_helper.getDayJsFormatString)(language)}))};const DateTimePicker=DateTimePickerRaw;const FormDatetimePicker=_0=>{let{name,size="md"}=_0,props=_object_without_properties(_0,["name","size"]);const form=(0,_.useFormContext)();const _form_register=form.register(name,{validate:props.validation,disabled:props.disabled}),{onChange}=_form_register,register=_object_without_properties(_form_register,["onChange"]);const errorContext=(0,_.useErrorContext)();const formError=form.formState.errors[name];const fetchErrors=errorContext.errors[name];const errors=[formError===null||formError===void 0?void 0:formError.message,fetchErrors].flat().filter(ent=>ent);return(0,_jsxruntime.jsx)(_reacthookform.Controller,{render:({field})=>(0,_jsxruntime.jsx)(DateTimePicker,_object_spread_props(_object_spread({value:field.value?new Date(parseInt(field.value)):undefined,size:size},props,register),{error:errors.length>0&&(0,_jsxruntime.jsx)(_FormErrors.FormErrors,{errors:errors}),onChange:timestamp=>{onChange({target:{value:timestamp,name}})}})),defaultValue:props.defaultValue,control:form.control,name:name})};
|
|
2
2
|
//# sourceMappingURL=DateTimePicker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/DateTimePicker/DateTimePicker.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { DateTimePicker as MantineDateTimePicker, DateTimePickerProps } from \"@mantine/dates\"\nimport { Controller } from \"react-hook-form\"\nimport { CalendarDays } from \"lucide-react\"\nimport { TFormControl } from \"../Form\"\nimport { useErrorContext, useFormContext } from \"..\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport { DateTimePickerOnly } from \"./DateTimePickerOnly\"\nimport { useTranslation } from \"react-i18next\"\nimport { getDayJsFormatString } from \"../../../helper\"\nimport { ELanguage } from \"../../../helper/Language\"\nimport classes from \"./DateTimePicker.module.css\"\nimport { ICON_SIZES } from \"../../../theme\"\nimport \"@mantine/dates/styles.layer.css\"\nimport \"@mantine/dates/styles.css\"\nimport { useRef } from \"react\"\n\nexport const useStyles = () => {\n const defaultFormStyles = getDefaultFormStyles()\n\n return {\n ...defaultFormStyles,\n icon: classes.displayNone,\n displayNone: classes.displayNone,\n }\n}\n\nexport type TDatetimePickerProps = Omit<DateTimePickerProps, \"onChange\"> & {\n onChange?: (timestamp: number) => void\n dateOnly?: boolean\n placeholder?: string\n}\n\nconst DateTimePickerRaw = ({ onChange, size = \"md\", ...props }: TDatetimePickerProps) => {\n const classes = useStyles()\n const { i18n } = useTranslation()\n const language = (i18n.language || \"en\") as ELanguage\n const Component = props.dateOnly ? DateTimePickerOnly : MantineDateTimePicker\n // Create a local ref\n const pickerInputRef = useRef<HTMLButtonElement>(null)\n return (\n <Component\n placeholder={\"\"}\n locale={language}\n rightSection={\n <CalendarDays\n color=\"var(--mantine-color-gray-5)\"\n onClick={() => pickerInputRef.current?.click()} // Use the local ref\n size={ICON_SIZES.MEDIUM}\n style={{ cursor: \"pointer\" }}\n />\n }\n {...props}\n ref={pickerInputRef} // Use the local ref here\n size={size}\n classNames={{\n input: classes.input,\n label: classes.label,\n root: classes.root,\n ...props.classNames,\n }}\n onChange={(e) => onChange?.(e?.getTime() || 0)}\n valueFormat={getDayJsFormatString(language)}\n />\n )\n}\nconst DateTimePicker = DateTimePickerRaw\n\nconst FormDatetimePicker = ({\n name,\n size = \"md\",\n ...props\n}: TDatetimePickerProps & TFormControl<HTMLInputElement>) => {\n const form = useFormContext()\n const { onChange, ...register } = form.register(name, {\n validate: props.validation,\n disabled: props.disabled,\n })\n const errorContext = useErrorContext()\n\n const formError = form.formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n const errors = [formError?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Controller\n render={({ field }) => (\n <DateTimePicker\n value={field.value ? new Date(parseInt(field.value)) : undefined}\n size={size}\n {...props}\n {...register}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n onChange={(timestamp) => {\n onChange({\n target: {\n value: timestamp,\n name,\n },\n })\n }}\n />\n )}\n defaultValue={props.defaultValue}\n control={form.control}\n name={name}\n />\n )\n}\n\nexport { DateTimePicker, FormDatetimePicker }\n"],"names":["DateTimePicker","FormDatetimePicker","useStyles","defaultFormStyles","getDefaultFormStyles","icon","classes","displayNone","DateTimePickerRaw","onChange","size","props","i18n","useTranslation","language","Component","dateOnly","DateTimePickerOnly","MantineDateTimePicker","pickerInputRef","useRef","placeholder","locale","rightSection","CalendarDays","color","onClick","current","click","ICON_SIZES","MEDIUM","style","cursor","ref","classNames","input","label","root","e","getTime","valueFormat","getDayJsFormatString","name","form","useFormContext","register","validate","validation","disabled","errorContext","useErrorContext","formError","formState","errors","fetchErrors","message","flat","filter","ent","Controller","render","field","value","Date","parseInt","undefined","error","length","FormErrors","timestamp","target","defaultValue","control"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/DateTimePicker/DateTimePicker.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { DateTimePicker as MantineDateTimePicker, DateTimePickerProps } from \"@mantine/dates\"\nimport { Controller } from \"react-hook-form\"\nimport { CalendarDays } from \"lucide-react\"\nimport { TFormControl } from \"../Form\"\nimport { useErrorContext, useFormContext } from \"..\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport { DateTimePickerOnly } from \"./DateTimePickerOnly\"\nimport { useTranslation } from \"react-i18next\"\nimport { getDayJsFormatString } from \"../../../helper\"\nimport { ELanguage } from \"../../../helper/Language\"\nimport classes from \"./DateTimePicker.module.css\"\nimport { ICON_SIZES } from \"../../../theme\"\nimport \"@mantine/dates/styles.layer.css\"\nimport \"@mantine/dates/styles.css\"\nimport { useRef } from \"react\"\n\nexport const useStyles = () => {\n const defaultFormStyles = getDefaultFormStyles()\n\n return {\n ...defaultFormStyles,\n icon: classes.displayNone,\n displayNone: classes.displayNone,\n }\n}\n\nexport type TDatetimePickerProps = Omit<DateTimePickerProps, \"onChange\"> & {\n onChange?: (timestamp: number) => void\n dateOnly?: boolean\n placeholder?: string\n}\n/**\n * Provides a raw DateTimePicker component\n * @param size Size of the DateTimePicker using sm, md or lg\n * @param dateOnly Control if only the date should be shown, omitting time\n * @param placeholder A placeholder string used in the component\n * @param onChange callback when date or time are changed\n */\nconst DateTimePickerRaw = ({ onChange, size = \"md\", ...props }: TDatetimePickerProps) => {\n const classes = useStyles()\n const { i18n } = useTranslation()\n const language = (i18n.language || \"en\") as ELanguage\n const Component = props.dateOnly ? DateTimePickerOnly : MantineDateTimePicker\n // Create a local ref\n const pickerInputRef = useRef<HTMLButtonElement>(null)\n return (\n <Component\n placeholder={\"\"}\n locale={language}\n rightSection={\n <CalendarDays\n color=\"var(--mantine-color-gray-5)\"\n onClick={() => pickerInputRef.current?.click()} // Use the local ref\n size={ICON_SIZES.MEDIUM}\n style={{ cursor: \"pointer\" }}\n />\n }\n {...props}\n ref={pickerInputRef} // Use the local ref here\n size={size}\n classNames={{\n input: classes.input,\n label: classes.label,\n root: classes.root,\n ...props.classNames,\n }}\n onChange={(e) => onChange?.(e?.getTime() || 0)}\n valueFormat={getDayJsFormatString(language)}\n />\n )\n}\nconst DateTimePicker = DateTimePickerRaw\n\n/**\n * **Form** wrapper for a DatetimePicker component that automagically registers the input to the current form context (from **Form**).\n * It also connects to the error-context from **ConnectedForm** to show server-side validation errors.\n * @param name name of the DateTimePicker used as identifier in the form\n * @param size Size of the DateTimePicker using sm, md or lg\n * @param DateTimePickerProps Additional props as defined by library DateTimePicker\n * @param onChange callback when date or time are changed\n */\nconst FormDatetimePicker = ({\n name,\n size = \"md\",\n ...props\n}: TDatetimePickerProps & TFormControl<HTMLInputElement>) => {\n const form = useFormContext()\n const { onChange, ...register } = form.register(name, {\n validate: props.validation,\n disabled: props.disabled,\n })\n const errorContext = useErrorContext()\n\n const formError = form.formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n const errors = [formError?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Controller\n render={({ field }) => (\n <DateTimePicker\n value={field.value ? new Date(parseInt(field.value)) : undefined}\n size={size}\n {...props}\n {...register}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n onChange={(timestamp) => {\n onChange({\n target: {\n value: timestamp,\n name,\n },\n })\n }}\n />\n )}\n defaultValue={props.defaultValue}\n control={form.control}\n name={name}\n />\n )\n}\n\nexport { DateTimePicker, FormDatetimePicker }\n"],"names":["DateTimePicker","FormDatetimePicker","useStyles","defaultFormStyles","getDefaultFormStyles","icon","classes","displayNone","DateTimePickerRaw","onChange","size","props","i18n","useTranslation","language","Component","dateOnly","DateTimePickerOnly","MantineDateTimePicker","pickerInputRef","useRef","placeholder","locale","rightSection","CalendarDays","color","onClick","current","click","ICON_SIZES","MEDIUM","style","cursor","ref","classNames","input","label","root","e","getTime","valueFormat","getDayJsFormatString","name","form","useFormContext","register","validate","validation","disabled","errorContext","useErrorContext","formError","formState","errors","fetchErrors","message","flat","filter","ent","Controller","render","field","value","Date","parseInt","undefined","error","length","FormErrors","timestamp","target","defaultValue","control"],"mappings":"mPAgISA,wBAAAA,oBAAgBC,4BAAAA,wBA3GZC,mBAAAA,iFAjBgE,+CAClD,8CACE,gCAEmB,gCACrB,kDACU,qDACF,oDACJ,uCACM,gGAEjB,qDACO,0BACpB,2CACA,kDACgB,62EAEhB,MAAMA,UAAY,KACvB,MAAMC,kBAAoBC,GAAAA,kCAAoB,IAE9C,OAAO,uCACFD,oBACHE,KAAMC,gCAAO,CAACC,WAAW,CACzBA,YAAaD,gCAAO,CAACC,WAAW,EAEpC,EAcA,MAAMC,kBAAoB,QAAC,CAAEC,QAAQ,CAAEC,KAAO,IAAI,CAAkC,IAA7BC,yDACrD,MAAML,QAAUJ,YAChB,KAAM,CAAEU,IAAI,CAAE,CAAGC,GAAAA,4BAAc,IAC/B,MAAMC,SAAYF,KAAKE,QAAQ,EAAI,KACnC,MAAMC,UAAYJ,MAAMK,QAAQ,CAAGC,sCAAkB,CAAGC,qBAAqB,CAE7E,MAAMC,eAAiBC,GAAAA,aAAM,EAAoB,MACjD,MACE,oBAACL,+CACCM,YAAa,GACbC,OAAQR,SACRS,aACE,oBAACC,yBAAY,EACXC,MAAM,8BACNC,QAAS,SAAMP,+BAAAA,wBAAAA,eAAeQ,OAAO,UAAtBR,wCAAAA,wBAAwBS,KAAK,IAC5ClB,KAAMmB,iBAAU,CAACC,MAAM,CACvBC,MAAO,CAAEC,OAAQ,SAAU,KAG3BrB,QACJsB,IAAKd,eACLT,KAAMA,KACNwB,WAAY,gBACVC,MAAO7B,QAAQ6B,KAAK,CACpBC,MAAO9B,QAAQ8B,KAAK,CACpBC,KAAM/B,QAAQ+B,IAAI,EACf1B,MAAMuB,UAAU,EAErBzB,SAAU,AAAC6B,GAAM7B,iBAAAA,yBAAAA,SAAW6B,CAAAA,UAAAA,kBAAAA,EAAGC,OAAO,KAAM,GAC5CC,YAAaC,GAAAA,4BAAoB,EAAC3B,YAGxC,EACA,MAAMd,eAAiBQ,kBAUvB,MAAMP,mBAAqB,QAAC,CAC1ByC,IAAI,CACJhC,KAAO,IAAI,CAE2C,IADnDC,qDAEH,MAAMgC,KAAOC,GAAAA,gBAAc,IAC3B,MAAkCD,eAAAA,KAAKE,QAAQ,CAACH,KAAM,CACpDI,SAAUnC,MAAMoC,UAAU,CAC1BC,SAAUrC,MAAMqC,QAAQ,AAC1B,GAHM,CAAEvC,QAAQ,CAAe,CAAGkC,eAAbE,oCAAaF,6BAIlC,MAAMM,aAAeC,GAAAA,iBAAe,IAEpC,MAAMC,UAAYR,KAAKS,SAAS,CAACC,MAAM,CAACX,KAAK,CAC7C,MAAMY,YAAcL,aAAaI,MAAM,CAACX,KAAK,CAC7C,MAAMW,OAAS,CAACF,kBAAAA,0BAAAA,UAAWI,OAAO,CAAYD,YAAY,CAACE,IAAI,GAAGC,MAAM,CAAC,AAACC,KAAQA,KAElF,MACE,oBAACC,yBAAU,EACTC,OAAQ,CAAC,CAAEC,KAAK,CAAE,GAChB,oBAAC7D,oDACC8D,MAAOD,MAAMC,KAAK,CAAG,IAAIC,KAAKC,SAASH,MAAMC,KAAK,GAAKG,UACvDvD,KAAMA,MACFC,MACAkC,WACJqB,MAAOb,OAAOc,MAAM,CAAG,GAAK,oBAACC,sBAAU,EAACf,OAAQA,SAChD5C,SAAU,AAAC4D,YACT5D,SAAS,CACP6D,OAAQ,CACNR,MAAOO,UACP3B,IACF,CACF,EACF,KAGJ6B,aAAc5D,MAAM4D,YAAY,CAChCC,QAAS7B,KAAK6B,OAAO,CACrB9B,KAAMA,MAGZ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get FormTimePicker(){return FormTimePicker},get TimePicker(){return TimePicker}});const _jsxruntime=require("react/jsx-runtime");const _dates=require("@mantine/dates");const _react=require("react");const _core=require("@mantine/core");const _lucidereact=require("lucide-react");const _index=require("../index");const _reacthookform=require("react-hook-form");const _FormErrors=require("../Form/FormErrors");const _DateTimePicker=require("./DateTimePicker");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get FormTimePicker(){return FormTimePicker},get TimePicker(){return TimePicker}});const _jsxruntime=require("react/jsx-runtime");const _dates=require("@mantine/dates");const _react=require("react");const _core=require("@mantine/core");const _lucidereact=require("lucide-react");const _index=require("../index");const _reacthookform=require("react-hook-form");const _FormErrors=require("../Form/FormErrors");const _DateTimePicker=require("./DateTimePicker");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const TimePickerRaw=(_0,_1)=>{let _ref=[_0,_1],[_ref1,..._rest]=_ref,{onChange}=_ref1,props=_object_without_properties(_ref1,["onChange"]),[ref]=_rest;const classes=(0,_DateTimePicker.useStyles)();const theme=(0,_core.useMantineTheme)();return(0,_jsxruntime.jsx)(_dates.TimeInput,_object_spread_props(_object_spread({rightSection:(0,_jsxruntime.jsx)(_lucidereact.Clock4,{color:theme.colors.gray[5],size:theme.other.iconSizes.MEDIUM})},props),{ref:ref,classNames:{input:classes.input,label:classes.label},onChange:e=>{onChange===null||onChange===void 0?void 0:onChange(e.target.value)}}))};const TimePicker=(0,_react.forwardRef)(TimePickerRaw);const FormTimePicker=_0=>{let{name,size="md"}=_0,props=_object_without_properties(_0,["name","size"]);const form=(0,_index.useFormContext)();const _form_register=form.register(name,{validate:props.validation,disabled:props.disabled}),{onChange}=_form_register,register=_object_without_properties(_form_register,["onChange"]);const errorContext=(0,_index.useErrorContext)();const formError=form.formState.errors[name];const fetchErrors=errorContext.errors[name];const errors=[formError===null||formError===void 0?void 0:formError.message,fetchErrors].flat().filter(ent=>ent);return(0,_jsxruntime.jsx)(_reacthookform.Controller,{render:({field})=>(0,_jsxruntime.jsx)(TimePicker,_object_spread_props(_object_spread({value:field.value,size:size},props,register),{error:errors.length>0&&(0,_jsxruntime.jsx)(_FormErrors.FormErrors,{errors:errors}),onChange:timestamp=>{onChange({target:{value:timestamp,name}})}})),disabled:props.disabled,defaultValue:props.defaultValue,control:form.control,name:name})};
|
|
2
2
|
//# sourceMappingURL=TimePicker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/DateTimePicker/TimePicker.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { TimeInput, TimeInputProps } from \"@mantine/dates\"\nimport { ForwardedRef, forwardRef } from \"react\"\nimport { useMantineTheme } from \"@mantine/core\"\nimport { Clock4 } from \"lucide-react\"\nimport { TFormControl } from \"../Form/types\"\nimport { useErrorContext, useFormContext } from \"../index\"\nimport { Controller } from \"react-hook-form\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport { useStyles } from \"./DateTimePicker\"\n\ntype TTimePickerRawProps = Omit<TimeInputProps, \"onChange\"> & {\n onChange?: (value: string) => void\n}\nconst TimePickerRaw = (\n { onChange, ...props }: TTimePickerRawProps,\n ref: ForwardedRef<HTMLInputElement>\n) => {\n const classes = useStyles()\n const theme = useMantineTheme()\n\n return (\n <TimeInput\n rightSection={<Clock4 color={theme.colors.gray[5]} size={theme.other.iconSizes.MEDIUM} />}\n {...props}\n ref={ref}\n classNames={{\n input: classes.input,\n label: classes.label,\n }}\n onChange={(e) => {\n onChange?.(e.target.value)\n }}\n />\n )\n}\n\nexport const TimePicker = forwardRef(TimePickerRaw)\n\nexport const FormTimePicker = ({\n name,\n size = \"md\",\n ...props\n}: TTimePickerRawProps & TFormControl<HTMLInputElement>) => {\n const form = useFormContext()\n const { onChange, ...register } = form.register(name, {\n validate: props.validation,\n disabled: props.disabled,\n })\n const errorContext = useErrorContext()\n\n const formError = form.formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n\n const errors = [formError?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Controller\n render={({ field }) => (\n <TimePicker\n value={field.value}\n size={size}\n {...props}\n {...register}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n onChange={(timestamp) => {\n onChange({\n target: {\n value: timestamp,\n name,\n },\n })\n }}\n />\n )}\n disabled={props.disabled}\n defaultValue={props.defaultValue}\n control={form.control}\n name={name}\n />\n )\n}\n"],"names":["FormTimePicker","TimePicker","TimePickerRaw","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/DateTimePicker/TimePicker.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { TimeInput, TimeInputProps } from \"@mantine/dates\"\nimport { ForwardedRef, forwardRef } from \"react\"\nimport { useMantineTheme } from \"@mantine/core\"\nimport { Clock4 } from \"lucide-react\"\nimport { TFormControl } from \"../Form/types\"\nimport { useErrorContext, useFormContext } from \"../index\"\nimport { Controller } from \"react-hook-form\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport { useStyles } from \"./DateTimePicker\"\n\ntype TTimePickerRawProps = Omit<TimeInputProps, \"onChange\"> & {\n onChange?: (value: string) => void\n}\n\n/**\n * Provides a TimePicker component\n * @param onChange Callback when time is changed\n * @param props Additional props as defined by library\n */\nconst TimePickerRaw = (\n { onChange, ...props }: TTimePickerRawProps,\n ref: ForwardedRef<HTMLInputElement>\n) => {\n const classes = useStyles()\n const theme = useMantineTheme()\n\n return (\n <TimeInput\n rightSection={<Clock4 color={theme.colors.gray[5]} size={theme.other.iconSizes.MEDIUM} />}\n {...props}\n ref={ref}\n classNames={{\n input: classes.input,\n label: classes.label,\n }}\n onChange={(e) => {\n onChange?.(e.target.value)\n }}\n />\n )\n}\n\nexport const TimePicker = forwardRef(TimePickerRaw)\n\nexport const FormTimePicker = ({\n name,\n size = \"md\",\n ...props\n}: TTimePickerRawProps & TFormControl<HTMLInputElement>) => {\n const form = useFormContext()\n const { onChange, ...register } = form.register(name, {\n validate: props.validation,\n disabled: props.disabled,\n })\n const errorContext = useErrorContext()\n\n const formError = form.formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n\n const errors = [formError?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Controller\n render={({ field }) => (\n <TimePicker\n value={field.value}\n size={size}\n {...props}\n {...register}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n onChange={(timestamp) => {\n onChange({\n target: {\n value: timestamp,\n name,\n },\n })\n }}\n />\n )}\n disabled={props.disabled}\n defaultValue={props.defaultValue}\n control={form.control}\n name={name}\n />\n )\n}\n"],"names":["FormTimePicker","TimePicker","TimePickerRaw","onChange","props","ref","classes","useStyles","theme","useMantineTheme","TimeInput","rightSection","Clock4","color","colors","gray","size","other","iconSizes","MEDIUM","classNames","input","label","e","target","value","forwardRef","name","form","useFormContext","register","validate","validation","disabled","errorContext","useErrorContext","formError","formState","errors","fetchErrors","message","flat","filter","ent","Controller","render","field","error","length","FormErrors","timestamp","defaultValue","control"],"mappings":"mPAgDaA,wBAAAA,oBAFAC,oBAAAA,kFA1C6B,uCACD,6BACT,4CACT,qCAEyB,yCACrB,6CACA,oDACD,oyEAW1B,MAAMC,cAAgB,iDACpB,CAAEC,QAAQ,CAAiC,OAA5BC,sDACfC,WAEA,MAAMC,QAAUC,GAAAA,yBAAS,IACzB,MAAMC,MAAQC,GAAAA,qBAAe,IAE7B,MACE,oBAACC,gBAAS,sCACRC,aAAc,oBAACC,mBAAM,EAACC,MAAOL,MAAMM,MAAM,CAACC,IAAI,CAAC,EAAE,CAAEC,KAAMR,MAAMS,KAAK,CAACC,SAAS,CAACC,MAAM,IACjFf,QACJC,IAAKA,IACLe,WAAY,CACVC,MAAOf,QAAQe,KAAK,CACpBC,MAAOhB,QAAQgB,KAAK,AACtB,EACAnB,SAAU,AAACoB,IACTpB,iBAAAA,yBAAAA,SAAWoB,EAAEC,MAAM,CAACC,KAAK,CAC3B,IAGN,EAEO,MAAMxB,WAAayB,GAAAA,iBAAU,EAACxB,eAE9B,MAAMF,eAAiB,QAAC,CAC7B2B,IAAI,CACJX,KAAO,IAAI,CAE0C,IADlDZ,qDAEH,MAAMwB,KAAOC,GAAAA,qBAAc,IAC3B,MAAkCD,eAAAA,KAAKE,QAAQ,CAACH,KAAM,CACpDI,SAAU3B,MAAM4B,UAAU,CAC1BC,SAAU7B,MAAM6B,QAAQ,AAC1B,GAHM,CAAE9B,QAAQ,CAAe,CAAGyB,eAAbE,oCAAaF,6BAIlC,MAAMM,aAAeC,GAAAA,sBAAe,IAEpC,MAAMC,UAAYR,KAAKS,SAAS,CAACC,MAAM,CAACX,KAAK,CAC7C,MAAMY,YAAcL,aAAaI,MAAM,CAACX,KAAK,CAE7C,MAAMW,OAAS,CAACF,kBAAAA,0BAAAA,UAAWI,OAAO,CAAYD,YAAY,CAACE,IAAI,GAAGC,MAAM,CAAC,AAACC,KAAQA,KAElF,MACE,oBAACC,yBAAU,EACTC,OAAQ,CAAC,CAAEC,KAAK,CAAE,GAChB,oBAAC7C,gDACCwB,MAAOqB,MAAMrB,KAAK,CAClBT,KAAMA,MACFZ,MACA0B,WACJiB,MAAOT,OAAOU,MAAM,CAAG,GAAK,oBAACC,sBAAU,EAACX,OAAQA,SAChDnC,SAAU,AAAC+C,YACT/C,SAAS,CACPqB,OAAQ,CACNC,MAAOyB,UACPvB,IACF,CACF,EACF,KAGJM,SAAU7B,MAAM6B,QAAQ,CACxBkB,aAAc/C,MAAM+C,YAAY,CAChCC,QAASxB,KAAKwB,OAAO,CACrBzB,KAAMA,MAGZ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get FileInput(){return FileInput},get FormFileInput(){return FormFileInput}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _sharedStyles=require("../sharedStyles");const _react=/*#__PURE__*/_interop_require_default(require("react"));const _Form=require("../Form");const _reacthookform=require("react-hook-form");const _FormErrors=require("../Form/FormErrors");const _lucidereact=require("lucide-react");const _FileInputmodulecss=/*#__PURE__*/_interop_require_default(require("./FileInput.module.css"));function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get FileInput(){return FileInput},get FormFileInput(){return FormFileInput}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _sharedStyles=require("../sharedStyles");const _react=/*#__PURE__*/_interop_require_default(require("react"));const _Form=require("../Form");const _reacthookform=require("react-hook-form");const _FormErrors=require("../Form/FormErrors");const _lucidereact=require("lucide-react");const _FileInputmodulecss=/*#__PURE__*/_interop_require_default(require("./FileInput.module.css"));function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const FileInputRaw=(_0,_1)=>{let _ref=[_0,_1],[_ref1,..._rest]=_ref,{size="md"}=_ref1,props=_object_without_properties(_ref1,["size"]),[ref]=_rest;var _props_value;const defaultStyles=(0,_sharedStyles.getDefaultFormStyles)();return(0,_jsxruntime.jsx)(_core.FileInput,_object_spread({ref:ref,classNames:{root:defaultStyles.root,label:defaultStyles.label,input:`${defaultStyles.input} ${_FileInputmodulecss.default.input}`,error:defaultStyles.error,section:_FileInputmodulecss.default.section},size:size,clearable:(props===null||props===void 0?void 0:(_props_value=props.value)===null||_props_value===void 0?void 0:_props_value.value)!=="",leftSection:(0,_jsxruntime.jsx)(_lucidereact.UploadIcon,{size:14})},props))};const FileInput=_react.default.forwardRef(FileInputRaw);const convertBase64=file=>{return new Promise((resolve,reject)=>{const fileReader=new FileReader;fileReader.readAsDataURL(file);fileReader.onload=()=>{if(typeof fileReader.result==="string"){const[,base64String]=fileReader.result.split(",");resolve(base64String)}};fileReader.onerror=error=>{reject(error)}})};const FormFileInput=_0=>{let{name}=_0,props=_object_without_properties(_0,["name"]);const form=(0,_Form.useFormContext)();const errorContext=(0,_Form.useErrorContext)();const formError=form.formState.errors[name];const fetchErrors=errorContext.errors[name];const errors=[formError===null||formError===void 0?void 0:formError.message,fetchErrors].flat().filter(ent=>ent);return(0,_jsxruntime.jsx)(_reacthookform.Controller,{control:form.control,name:name,rules:{validate:props.validation},disabled:props.disabled,render:_0=>{let{field:_ref}=_0,{onChange}=_ref,field=_object_without_properties(_ref,["onChange"]);return(0,_jsxruntime.jsx)(FileInput,_object_spread_props(_object_spread({},field,props),{error:errors.length>0&&(0,_jsxruntime.jsx)(_FormErrors.FormErrors,{errors:errors}),onChange:file=>_async_to_generator(function*(){const fileValue=file?{name:file.name,value:yield convertBase64(file)}:"";onChange(fileValue)})()}))}})};
|
|
2
2
|
//# sourceMappingURL=FileInput.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/FileInput/FileInput.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FileInput as FileInputMantine, FileInputProps } from \"@mantine/core\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport React, { ForwardedRef } from \"react\"\nimport { useErrorContext, useFormContext } from \"../Form\"\nimport { Controller } from \"react-hook-form\"\nimport { TFormControl } from \"../Form/types\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport { UploadIcon } from \"lucide-react\"\nimport classes from \"./FileInput.module.css\"\n\nconst FileInputRaw = ({ size = \"md\", ...props }, ref: ForwardedRef<HTMLButtonElement>) => {\n const defaultStyles = getDefaultFormStyles()\n\n return (\n <FileInputMantine\n ref={ref}\n classNames={{\n root: defaultStyles.root,\n label: defaultStyles.label,\n input: `${defaultStyles.input} ${classes.input}`,\n error: defaultStyles.error,\n section: classes.section,\n }}\n size={size}\n clearable={props?.value?.value !== \"\"}\n leftSection={<UploadIcon size={14} />}\n {...props}\n />\n )\n}\n\nexport const FileInput = React.forwardRef(FileInputRaw)\n\nconst convertBase64 = (file: File): Promise<string> => {\n return new Promise((resolve, reject) => {\n const fileReader = new FileReader()\n fileReader.readAsDataURL(file)\n\n fileReader.onload = () => {\n if (typeof fileReader.result === \"string\") {\n const [, base64String] = fileReader.result.split(\",\")\n resolve(base64String)\n }\n }\n fileReader.onerror = (error) => {\n reject(error)\n }\n })\n}\n\nexport const FormFileInput: React.FC<FileInputProps & TFormControl<HTMLInputElement>> = ({\n name,\n ...props\n}) => {\n const form = useFormContext()\n const errorContext = useErrorContext()\n\n const formError = form.formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n\n const errors = [formError?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Controller\n control={form.control}\n name={name}\n rules={{\n validate: props.validation,\n }}\n disabled={props.disabled}\n render={({ field: { onChange, ...field } }) => (\n <FileInput\n {...field}\n {...props}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n onChange={async (file: File) => {\n const fileValue = file\n ? {\n name: file.name,\n value: await convertBase64(file),\n }\n : \"\"\n onChange(fileValue)\n }}\n />\n )}\n />\n )\n}\n"],"names":["FileInput","FormFileInput","FileInputRaw","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/FileInput/FileInput.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FileInput as FileInputMantine, FileInputProps } from \"@mantine/core\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport React, { ForwardedRef } from \"react\"\nimport { useErrorContext, useFormContext } from \"../Form\"\nimport { Controller } from \"react-hook-form\"\nimport { TFormControl } from \"../Form/types\"\nimport { FormErrors } from \"../Form/FormErrors\"\nimport { UploadIcon } from \"lucide-react\"\nimport classes from \"./FileInput.module.css\"\n\n/**\n * Provides a raw FileInput component\n * @param size Size of the FileInput based on sm, md, and lg\n * @param FileInputProps Additional props as defined by library\n */\nconst FileInputRaw = ({ size = \"md\", ...props }, ref: ForwardedRef<HTMLButtonElement>) => {\n const defaultStyles = getDefaultFormStyles()\n\n return (\n <FileInputMantine\n ref={ref}\n classNames={{\n root: defaultStyles.root,\n label: defaultStyles.label,\n input: `${defaultStyles.input} ${classes.input}`,\n error: defaultStyles.error,\n section: classes.section,\n }}\n size={size}\n clearable={props?.value?.value !== \"\"}\n leftSection={<UploadIcon size={14} />}\n {...props}\n />\n )\n}\n\nexport const FileInput = React.forwardRef(FileInputRaw)\n\nconst convertBase64 = (file: File): Promise<string> => {\n return new Promise((resolve, reject) => {\n const fileReader = new FileReader()\n fileReader.readAsDataURL(file)\n\n fileReader.onload = () => {\n if (typeof fileReader.result === \"string\") {\n const [, base64String] = fileReader.result.split(\",\")\n resolve(base64String)\n }\n }\n fileReader.onerror = (error) => {\n reject(error)\n }\n })\n}\n\n/**\n * **Form** wrapper for a FileInput component that automagically registers the input to the current form context (from **Form**).\n * It also connects to the error-context from **ConnectedForm** to show server-side validation errors.\n * @param name name of the input used as identifier in the form\n * @param size Size of the input using sm, md or lg\n * @param FileInputProps Additional props as defined by Mantine FileInput\n */\nexport const FormFileInput: React.FC<FileInputProps & TFormControl<HTMLInputElement>> = ({\n name,\n ...props\n}) => {\n const form = useFormContext()\n const errorContext = useErrorContext()\n\n const formError = form.formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n\n const errors = [formError?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Controller\n control={form.control}\n name={name}\n rules={{\n validate: props.validation,\n }}\n disabled={props.disabled}\n render={({ field: { onChange, ...field } }) => (\n <FileInput\n {...field}\n {...props}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n onChange={async (file: File) => {\n const fileValue = file\n ? {\n name: file.name,\n value: await convertBase64(file),\n }\n : \"\"\n onChange(fileValue)\n }}\n />\n )}\n />\n )\n}\n"],"names":["FileInput","FormFileInput","FileInputRaw","size","props","ref","defaultStyles","getDefaultFormStyles","FileInputMantine","classNames","root","label","input","classes","error","section","clearable","value","leftSection","UploadIcon","React","forwardRef","convertBase64","file","Promise","resolve","reject","fileReader","FileReader","readAsDataURL","onload","result","base64String","split","onerror","name","form","useFormContext","errorContext","useErrorContext","formError","formState","errors","fetchErrors","message","flat","filter","ent","Controller","control","rules","validate","validation","disabled","render","field","onChange","length","FormErrors","fileValue"],"mappings":"mPAwCaA,mBAAAA,eA0BAC,uBAAAA,oFA9DiD,6CACzB,8EACD,8BACY,wCACrB,6CAEA,iDACA,wFACP,27FAOpB,MAAMC,aAAe,iDAAC,CAAEC,KAAO,IAAI,CAAY,OAAPC,kDAASC,eAchCD,aAbf,MAAME,cAAgBC,GAAAA,kCAAoB,IAE1C,MACE,oBAACC,eAAgB,iBACfH,IAAKA,IACLI,WAAY,CACVC,KAAMJ,cAAcI,IAAI,CACxBC,MAAOL,cAAcK,KAAK,CAC1BC,MAAO,CAAC,EAAEN,cAAcM,KAAK,CAAC,CAAC,EAAEC,2BAAO,CAACD,KAAK,CAAC,CAAC,CAChDE,MAAOR,cAAcQ,KAAK,CAC1BC,QAASF,2BAAO,CAACE,OAAO,AAC1B,EACAZ,KAAMA,KACNa,UAAWZ,CAAAA,cAAAA,uBAAAA,aAAAA,MAAOa,KAAK,UAAZb,6BAAAA,aAAca,KAAK,IAAK,GACnCC,YAAa,oBAACC,uBAAU,EAAChB,KAAM,MAC3BC,OAGV,EAEO,MAAMJ,UAAYoB,cAAK,CAACC,UAAU,CAACnB,cAE1C,MAAMoB,cAAgB,AAACC,OACrB,OAAO,IAAIC,QAAQ,CAACC,QAASC,UAC3B,MAAMC,WAAa,IAAIC,WACvBD,WAAWE,aAAa,CAACN,KAEzBI,CAAAA,WAAWG,MAAM,CAAG,KAClB,GAAI,OAAOH,WAAWI,MAAM,GAAK,SAAU,CACzC,KAAM,EAAGC,aAAa,CAAGL,WAAWI,MAAM,CAACE,KAAK,CAAC,KACjDR,QAAQO,aACV,CACF,CACAL,CAAAA,WAAWO,OAAO,CAAG,AAACpB,QACpBY,OAAOZ,MACT,CACF,EACF,EASO,MAAMb,cAA2E,QAAC,CACvFkC,IAAI,CAEL,IADI/B,8CAEH,MAAMgC,KAAOC,GAAAA,oBAAc,IAC3B,MAAMC,aAAeC,GAAAA,qBAAe,IAEpC,MAAMC,UAAYJ,KAAKK,SAAS,CAACC,MAAM,CAACP,KAAK,CAC7C,MAAMQ,YAAcL,aAAaI,MAAM,CAACP,KAAK,CAE7C,MAAMO,OAAS,CAACF,kBAAAA,0BAAAA,UAAWI,OAAO,CAAYD,YAAY,CAACE,IAAI,GAAGC,MAAM,CAAC,AAACC,KAAQA,KAElF,MACE,oBAACC,yBAAU,EACTC,QAASb,KAAKa,OAAO,CACrBd,KAAMA,KACNe,MAAO,CACLC,SAAU/C,MAAMgD,UAAU,AAC5B,EACAC,SAAUjD,MAAMiD,QAAQ,CACxBC,OAAQ,QAAC,CAAEC,UAAAA,CAA+B,IAAxB,CAAEC,QAAQ,CAAY,MAAPD,0DAC/B,oBAACvD,iDACKuD,MACAnD,QACJU,MAAO4B,OAAOe,MAAM,CAAG,GAAK,oBAACC,sBAAU,EAAChB,OAAQA,SAChDc,SAAU,AAAOjC,sCACf,MAAMoC,UAAYpC,KACd,CACEY,KAAMZ,KAAKY,IAAI,CACflB,MAAO,MAAMK,cAAcC,KAC7B,EACA,GACJiC,SAASG,UACX,UAKV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get Form(){return Form},get FormProvider(){return FormProvider},get useFormContext(){return _reacthookform.useFormContext},get useWatch(){return _reacthookform.useWatch}});const _jsxruntime=require("react/jsx-runtime");const _react=require("react");const _reacthookform=require("react-hook-form");const _Formmodulecss=/*#__PURE__*/_interop_require_default(require("./Form.module.css"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get Form(){return Form},get FormProvider(){return FormProvider},get useFormContext(){return _reacthookform.useFormContext},get useWatch(){return _reacthookform.useWatch}});const _jsxruntime=require("react/jsx-runtime");const _react=require("react");const _reacthookform=require("react-hook-form");const _Formmodulecss=/*#__PURE__*/_interop_require_default(require("./Form.module.css"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}function FormProvider({form,children}){return(0,_jsxruntime.jsx)(_reacthookform.FormProvider,_object_spread_props(_object_spread({},form),{children:children}))}function FormRaw(_0,_1){let _ref=[_0,_1],[_ref1,..._rest]=_ref,{onSubmit,children,options}=_ref1,formProps=_object_without_properties(_ref1,["onSubmit","children","options"]),[ref]=_rest;const form=(0,_reacthookform.useForm)(options);(0,_react.useImperativeHandle)(ref,()=>({getForm:()=>form}));return(0,_jsxruntime.jsx)(FormProvider,{form:form,children:(0,_jsxruntime.jsx)("form",_object_spread_props(_object_spread({onSubmit:form.handleSubmit(args=>onSubmit(args,form)),className:_Formmodulecss.default.form},formProps),{children:children}))})}const Form=(0,_react.forwardRef)(FormRaw);
|
|
2
2
|
//# sourceMappingURL=Form.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/Form/Form.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport {\n DetailedHTMLProps,\n FormHTMLAttributes,\n ForwardedRef,\n forwardRef,\n ReactNode,\n useImperativeHandle,\n} from \"react\"\nimport {\n useForm as useRHForm,\n FormProvider as RHFormProvider,\n useFormContext,\n FieldValues,\n UseFormProps,\n UseFormReturn,\n useWatch,\n} from \"react-hook-form\"\nimport { ThandleSubmit } from \"./types\"\nimport classes from \"./Form.module.css\"\n\nexport type TuseFormProps<TFormData extends FieldValues> = Omit<\n DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>,\n \"onSubmit\" | \"ref\"\n> & {\n children?: ReactNode\n onSubmit: ThandleSubmit<TFormData>\n options?: UseFormProps<TFormData>\n}\n\nexport function FormProvider<TFormData extends FieldValues>({\n form,\n children,\n}: {\n form: UseFormReturn<TFormData, any, TFormData>\n children: ReactNode\n}) {\n return <RHFormProvider {...form}>{children}</RHFormProvider>\n}\n\nexport type TFormForwardRef<TFormData extends FieldValues> = {\n getForm: () => UseFormReturn<TFormData, any, TFormData> | undefined\n}\n\n/**\n * The **Form** is a simple wrapper for @react-hook-form made for easier and developer-friendlier Form creation.\n * With RHF you have to manually register all inputs and pass the field-validation on the useForm({validation}) hook.\n * Using this **Form** You can simply wrap this **Form** around your form body that contains the FormXXXX UI form-elements.\n * The FormXXX elements automatically connect to the form context and register their local validations without hustle.\n * It looks like this:<br/>\n * ```typescript\n * <Form onSubmit={(data, form) => handleSubmit(data)}>\n * <FormInput name=\"name\" />\n * <FormInput type=\"number\" name=\"age\" />\n * <button type=\"submit\">submit</button>\n * </Form>\n * ```\n * @param onSubmit Callback when form is submitted\n * @param children\n * @param options Options that are passed to @react-hook-forms useForm\n * @param formProps Props for the native form element\n * @param ref ForwardRef to get the form as a parent component {getForm()}\n */\nfunction FormRaw<TFormData extends FieldValues>(\n { onSubmit, children, options, ...formProps }: Omit<TuseFormProps<TFormData>, \"ref\">,\n ref: ForwardedRef<TFormForwardRef<TFormData>>\n) {\n const form = useRHForm<TFormData>(options)\n useImperativeHandle(ref, () => ({\n getForm: () => form,\n }))\n return (\n <FormProvider form={form}>\n <form\n onSubmit={form.handleSubmit((args) => onSubmit(args, form))}\n className={classes.form}\n {...formProps}\n >\n {children}\n </form>\n </FormProvider>\n )\n}\n\nconst Form = forwardRef(FormRaw) as <TFormFields extends FieldValues>(\n props: TuseFormProps<TFormFields> & {\n ref?: React.ForwardedRef<TFormForwardRef<TFormFields>>\n }\n) => ReturnType<typeof FormRaw>\n\nexport { useWatch, useFormContext, Form }\n"],"names":["Form","FormProvider","useFormContext","useWatch","form","children","RHFormProvider","FormRaw","ref","onSubmit","options","formProps","useRHForm","useImperativeHandle","getForm","handleSubmit","args","className","classes","forwardRef"],"mappings":"mPA6FmCA,cAAAA,UA5DnBC,sBAAAA,kBA4DGC,wBAAAA,6BAAc,MAAxBC,kBAAAA,uBAAQ,wEAlFV,sCASA,sFAEa,
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/Form/Form.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport {\n DetailedHTMLProps,\n FormHTMLAttributes,\n ForwardedRef,\n forwardRef,\n ReactNode,\n useImperativeHandle,\n} from \"react\"\nimport {\n useForm as useRHForm,\n FormProvider as RHFormProvider,\n useFormContext,\n FieldValues,\n UseFormProps,\n UseFormReturn,\n useWatch,\n} from \"react-hook-form\"\nimport { ThandleSubmit } from \"./types\"\nimport classes from \"./Form.module.css\"\n\nexport type TuseFormProps<TFormData extends FieldValues> = Omit<\n DetailedHTMLProps<FormHTMLAttributes<HTMLFormElement>, HTMLFormElement>,\n \"onSubmit\" | \"ref\"\n> & {\n children?: ReactNode\n onSubmit: ThandleSubmit<TFormData>\n options?: UseFormProps<TFormData>\n}\n\nexport function FormProvider<TFormData extends FieldValues>({\n form,\n children,\n}: {\n form: UseFormReturn<TFormData, any, TFormData>\n children: ReactNode\n}) {\n return <RHFormProvider {...form}>{children}</RHFormProvider>\n}\n\nexport type TFormForwardRef<TFormData extends FieldValues> = {\n getForm: () => UseFormReturn<TFormData, any, TFormData> | undefined\n}\n\n/**\n * The **Form** is a simple wrapper for @react-hook-form made for easier and developer-friendlier Form creation.\n * With RHF you have to manually register all inputs and pass the field-validation on the useForm({validation}) hook.\n * Using this **Form** You can simply wrap this **Form** around your form body that contains the FormXXXX UI form-elements.\n * The FormXXX elements automatically connect to the form context and register their local validations without hustle.\n * It looks like this:<br/>\n * ```typescript\n * <Form onSubmit={(data, form) => handleSubmit(data)}>\n * <FormInput name=\"name\" />\n * <FormInput type=\"number\" name=\"age\" />\n * <button type=\"submit\">submit</button>\n * </Form>\n * ```\n * @param onSubmit Callback when form is submitted\n * @param children\n * @param options Options that are passed to @react-hook-forms useForm\n * @param formProps Props for the native form element\n * @param ref ForwardRef to get the form as a parent component {getForm()}\n */\nfunction FormRaw<TFormData extends FieldValues>(\n { onSubmit, children, options, ...formProps }: Omit<TuseFormProps<TFormData>, \"ref\">,\n ref: ForwardedRef<TFormForwardRef<TFormData>>\n) {\n const form = useRHForm<TFormData>(options)\n useImperativeHandle(ref, () => ({\n getForm: () => form,\n }))\n return (\n <FormProvider form={form}>\n <form\n onSubmit={form.handleSubmit((args) => onSubmit(args, form))}\n className={classes.form}\n {...formProps}\n >\n {children}\n </form>\n </FormProvider>\n )\n}\n\nconst Form = forwardRef(FormRaw) as <TFormFields extends FieldValues>(\n props: TuseFormProps<TFormFields> & {\n ref?: React.ForwardedRef<TFormForwardRef<TFormFields>>\n }\n) => ReturnType<typeof FormRaw>\n\nexport { useWatch, useFormContext, Form }\n"],"names":["Form","FormProvider","useFormContext","useWatch","form","children","RHFormProvider","FormRaw","ref","onSubmit","options","formProps","useRHForm","useImperativeHandle","getForm","handleSubmit","args","className","classes","forwardRef"],"mappings":"mPA6FmCA,cAAAA,UA5DnBC,sBAAAA,kBA4DGC,wBAAAA,6BAAc,MAAxBC,kBAAAA,uBAAQ,wEAlFV,sCASA,sFAEa,03EAWb,SAASF,aAA4C,CAC1DG,IAAI,CACJC,QAAQ,CAIT,EACC,MAAO,oBAACC,2BAAc,wCAAKF,gBAAOC,WACpC,CAyBA,SAASE,QACP,EAAoF,CACpFC,EAA6C,yCAD7C,CAAEC,QAAQ,CAAEJ,QAAQ,CAAEK,OAAO,CAAuD,OAAlDC,+EAClCH,WAEA,MAAMJ,KAAOQ,GAAAA,sBAAS,EAAYF,SAClCG,GAAAA,0BAAmB,EAACL,IAAK,IAAO,CAAA,CAC9BM,QAAS,IAAMV,IACjB,CAAA,GACA,MACE,oBAACH,cAAaG,KAAMA,cAClB,oBAACA,4CACCK,SAAUL,KAAKW,YAAY,CAAC,AAACC,MAASP,SAASO,KAAMZ,OACrDa,UAAWC,sBAAO,CAACd,IAAI,EACnBO,qBAEHN,aAIT,CAEA,MAAML,KAAOmB,GAAAA,iBAAU,EAACZ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/Form/FormItemGroup.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FC, PropsWithChildren } from \"react\"\nimport classes from \"./FormItemGroup.module.css\"\nimport { cx } from \"../../helper/cx\"\n\ntype TFormItemGroupProps = {\n noChildrenFlex?: boolean\n classNames?: string[]\n}\n\nexport const FormItemGroup: FC<PropsWithChildren<TFormItemGroupProps>> = ({\n children,\n noChildrenFlex = false,\n classNames = [],\n}) => {\n return (\n <div\n className={cx(\n classes.container,\n noChildrenFlex ? undefined : classes[\"with-flex\"],\n ...classNames\n )}\n >\n {children}\n </div>\n )\n}\n"],"names":["FormItemGroup","children","noChildrenFlex","classNames","div","className","cx","classes","container","undefined"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/Form/FormItemGroup.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FC, PropsWithChildren } from \"react\"\nimport classes from \"./FormItemGroup.module.css\"\nimport { cx } from \"../../helper/cx\"\n\ntype TFormItemGroupProps = {\n noChildrenFlex?: boolean\n classNames?: string[]\n}\n\n/**\n * Provides a group of form elements for a common layout\n * @param children The form elements to be grouped\n * @param noChildrenFlex Controls if the item group should have flex. If set to true, no flex is applied.\n * @param classNames Class names for additional styles\n */\nexport const FormItemGroup: FC<PropsWithChildren<TFormItemGroupProps>> = ({\n children,\n noChildrenFlex = false,\n classNames = [],\n}) => {\n return (\n <div\n className={cx(\n classes.container,\n noChildrenFlex ? undefined : classes[\"with-flex\"],\n ...classNames\n )}\n >\n {children}\n </div>\n )\n}\n"],"names":["FormItemGroup","children","noChildrenFlex","classNames","div","className","cx","classes","container","undefined"],"mappings":"oGAmBaA,uDAAAA,4IAdO,iDACD,uGAaZ,MAAMA,cAA4D,CAAC,CACxEC,QAAQ,CACRC,eAAiB,KAAK,CACtBC,WAAa,EAAE,CAChB,IACC,MACE,oBAACC,OACCC,UAAWC,GAAAA,MAAE,EACXC,+BAAO,CAACC,SAAS,CACjBN,eAAiBO,UAAYF,+BAAO,CAAC,YAAY,IAC9CJ,qBAGJF,UAGP"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get FormInput(){return FormInput},get Input(){return Input}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _sharedStyles=require("../sharedStyles");const _Form=require("../Form/Form");const _react=/*#__PURE__*/_interop_require_wildcard(require("react"));const _Form1=require("../Form");const _FormErrors=require("../Form/FormErrors");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap;var cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interop_require_wildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj}}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj)}var newObj={__proto__:null};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc)}else{newObj[key]=obj[key]}}}newObj.default=obj;if(cache){cache.set(obj,newObj)}return newObj}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get FormInput(){return FormInput},get Input(){return Input}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _sharedStyles=require("../sharedStyles");const _Form=require("../Form/Form");const _react=/*#__PURE__*/_interop_require_wildcard(require("react"));const _Form1=require("../Form");const _FormErrors=require("../Form/FormErrors");function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _getRequireWildcardCache(nodeInterop){if(typeof WeakMap!=="function")return null;var cacheBabelInterop=new WeakMap;var cacheNodeInterop=new WeakMap;return(_getRequireWildcardCache=function(nodeInterop){return nodeInterop?cacheNodeInterop:cacheBabelInterop})(nodeInterop)}function _interop_require_wildcard(obj,nodeInterop){if(!nodeInterop&&obj&&obj.__esModule){return obj}if(obj===null||typeof obj!=="object"&&typeof obj!=="function"){return{default:obj}}var cache=_getRequireWildcardCache(nodeInterop);if(cache&&cache.has(obj)){return cache.get(obj)}var newObj={__proto__:null};var hasPropertyDescriptor=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var key in obj){if(key!=="default"&&Object.prototype.hasOwnProperty.call(obj,key)){var desc=hasPropertyDescriptor?Object.getOwnPropertyDescriptor(obj,key):null;if(desc&&(desc.get||desc.set)){Object.defineProperty(newObj,key,desc)}else{newObj[key]=obj[key]}}}newObj.default=obj;if(cache){cache.set(obj,newObj)}return newObj}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const Input=(0,_react.forwardRef)((_0,_1)=>{let _ref=[_0,_1],[_ref1,..._rest]=_ref,{size="md"}=_ref1,props=_object_without_properties(_ref1,["size"]),[ref]=_rest;const classes=(0,_sharedStyles.getDefaultFormStyles)();return(0,_jsxruntime.jsx)(_core.TextInput,_object_spread_props(_object_spread({ref:ref},props),{size:size,classNames:_object_spread({root:classes.root,label:classes.label,input:classes.input,error:classes.error},props.classNames)}))});const FormInput=_0=>{let{name,validation={},min,max,minLength,maxLength}=_0,inputProps=_object_without_properties(_0,["name","validation","min","max","minLength","maxLength"]);const{register,formState}=(0,_Form.useFormContext)();const errorContext=(0,_Form1.useErrorContext)();const formErrors=formState.errors[name];const fetchErrors=errorContext.errors[name];const errors=[formErrors===null||formErrors===void 0?void 0:formErrors.message,fetchErrors].flat().filter(ent=>ent);return(0,_jsxruntime.jsx)(Input,_object_spread_props(_object_spread({},inputProps,register(name,{validate:validation,disabled:inputProps.disabled,min,max,minLength,maxLength})),{error:errors.length>0&&(0,_jsxruntime.jsx)(_FormErrors.FormErrors,{errors:errors})}))};
|
|
2
2
|
//# sourceMappingURL=Input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/Input/Input.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { TextInput, TextInputProps } from \"@mantine/core\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport { useFormContext } from \"../Form/Form\"\nimport { TFormControl } from \"../Form\"\nimport React, { forwardRef } from \"react\"\nimport { useErrorContext } from \"../Form\"\nimport { FormErrors } from \"../Form/FormErrors\"\n\n// eslint-disable-next-line react/display-name\nexport const Input = forwardRef<HTMLInputElement, TextInputProps>(\n ({ size = \"md\", ...props }, ref) => {\n const classes = getDefaultFormStyles()\n return (\n <TextInput\n ref={ref}\n {...props}\n size={size}\n classNames={{\n root: classes.root,\n label: classes.label,\n input: classes.input,\n error: classes.error,\n ...props.classNames,\n }}\n />\n )\n }\n)\n\n/**\n * **Form** wrapper for an input component that automagically registers the input to the current form context (from **Form**).\n * It also connects to the error-context from **ConnectedForm** to show server-side validation errors.\n * @param name Name of the input\n * @param validation Validation rules for this field's client-side validation\n * @param min Quick validation for numbers\n * @param max Quick validation for numbers\n * @param minLength Quick validation for strings\n * @param maxLength Quick validation for strings\n * @param inputProps Props passed to input component\n */\nexport const FormInput: React.FC<TextInputProps & TFormControl<HTMLInputElement>> = ({\n name,\n validation = {},\n min,\n max,\n minLength,\n maxLength,\n ...inputProps\n}) => {\n const { register, formState } = useFormContext()\n const errorContext = useErrorContext()\n\n const formErrors = formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n const errors = [formErrors?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Input\n {...inputProps}\n {...register(name, {\n validate: validation,\n disabled: inputProps.disabled,\n min,\n max,\n minLength,\n maxLength,\n })}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n />\n )\n}\n"],"names":["FormInput","Input","forwardRef","
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/Input/Input.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { TextInput, TextInputProps } from \"@mantine/core\"\nimport { getDefaultFormStyles } from \"../sharedStyles\"\nimport { useFormContext } from \"../Form/Form\"\nimport { TFormControl } from \"../Form\"\nimport React, { forwardRef } from \"react\"\nimport { useErrorContext } from \"../Form\"\nimport { FormErrors } from \"../Form/FormErrors\"\n\n// eslint-disable-next-line react/display-name\nexport const Input = forwardRef<HTMLInputElement, TextInputProps>(\n ({ size = \"md\", ...props }, ref) => {\n const classes = getDefaultFormStyles()\n return (\n <TextInput\n ref={ref}\n {...props}\n size={size}\n classNames={{\n root: classes.root,\n label: classes.label,\n input: classes.input,\n error: classes.error,\n ...props.classNames,\n }}\n />\n )\n }\n)\n\n/**\n * **Form** wrapper for an input component that automagically registers the input to the current form context (from **Form**).\n * It also connects to the error-context from **ConnectedForm** to show server-side validation errors.\n * @param name Name of the input\n * @param validation Validation rules for this field's client-side validation\n * @param min Quick validation for numbers\n * @param max Quick validation for numbers\n * @param minLength Quick validation for strings\n * @param maxLength Quick validation for strings\n * @param inputProps Props passed to input component\n */\nexport const FormInput: React.FC<TextInputProps & TFormControl<HTMLInputElement>> = ({\n name,\n validation = {},\n min,\n max,\n minLength,\n maxLength,\n ...inputProps\n}) => {\n const { register, formState } = useFormContext()\n const errorContext = useErrorContext()\n\n const formErrors = formState.errors[name]\n const fetchErrors = errorContext.errors[name]\n const errors = [formErrors?.message as string, fetchErrors].flat().filter((ent) => ent)\n\n return (\n <Input\n {...inputProps}\n {...register(name, {\n validate: validation,\n disabled: inputProps.disabled,\n min,\n max,\n minLength,\n maxLength,\n })}\n error={errors.length > 0 && <FormErrors errors={errors} />}\n />\n )\n}\n"],"names":["FormInput","Input","forwardRef","size","props","ref","classes","getDefaultFormStyles","TextInput","classNames","root","label","input","error","name","validation","min","max","minLength","maxLength","inputProps","register","formState","useFormContext","errorContext","useErrorContext","formErrors","errors","fetchErrors","message","flat","filter","ent","validate","disabled","length","FormErrors"],"mappings":"mPA4CaA,mBAAAA,eA/BAC,eAAAA,4EAT6B,6CACL,uCACN,4EAEG,+BACF,qCACL,0wGAGpB,MAAMA,MAAQC,GAAAA,iBAAU,EAC7B,iDAAC,CAAEC,KAAO,IAAI,CAAY,OAAPC,kDAASC,WAC1B,MAAMC,QAAUC,GAAAA,kCAAoB,IACpC,MACE,oBAACC,eAAS,sCACRH,IAAKA,KACDD,QACJD,KAAMA,KACNM,WAAY,gBACVC,KAAMJ,QAAQI,IAAI,CAClBC,MAAOL,QAAQK,KAAK,CACpBC,MAAON,QAAQM,KAAK,CACpBC,MAAOP,QAAQO,KAAK,EACjBT,MAAMK,UAAU,IAI3B,GAcK,MAAMT,UAAuE,QAAC,CACnFc,IAAI,CACJC,WAAa,CAAC,CAAC,CACfC,GAAG,CACHC,GAAG,CACHC,SAAS,CACTC,SAAS,CAEV,IADIC,oGAEH,KAAM,CAAEC,QAAQ,CAAEC,SAAS,CAAE,CAAGC,GAAAA,oBAAc,IAC9C,MAAMC,aAAeC,GAAAA,sBAAe,IAEpC,MAAMC,WAAaJ,UAAUK,MAAM,CAACb,KAAK,CACzC,MAAMc,YAAcJ,aAAaG,MAAM,CAACb,KAAK,CAC7C,MAAMa,OAAS,CAACD,mBAAAA,2BAAAA,WAAYG,OAAO,CAAYD,YAAY,CAACE,IAAI,GAAGC,MAAM,CAAC,AAACC,KAAQA,KAEnF,MACE,oBAAC/B,6CACKmB,WACAC,SAASP,KAAM,CACjBmB,SAAUlB,WACVmB,SAAUd,WAAWc,QAAQ,CAC7BlB,IACAC,IACAC,UACAC,SACF,KACAN,MAAOc,OAAOQ,MAAM,CAAG,GAAK,oBAACC,sBAAU,EAACT,OAAQA,WAGtD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/Labels/InfoLabel.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FC, ReactNode } from \"react\"\nimport { InfoI, TInfoIProps } from \"../../InfoTip\"\nimport { LabelWithIcon, TLabelWithIconProps } from \"./LabelWithIcon\"\nimport { Typo } from \"../../Typo\"\nimport classes from \"./InfoLabel.module.css\"\nimport { Info, LucideIcon } from \"lucide-react\"\n\ntype TInfoLabelProps = {\n label: ReactNode\n infoContent: ReactNode\n withAsterisk?: boolean\n icon?: LucideIcon\n labelProps?: Partial<TLabelWithIconProps>\n infoProps?: Partial<TInfoIProps>\n}\nexport const InfoLabel: FC<TInfoLabelProps> = ({\n label,\n infoContent,\n withAsterisk = true,\n icon = Info,\n labelProps,\n infoProps,\n}) => {\n return (\n <LabelWithIcon\n withAsterisk={withAsterisk}\n Icon={\n <InfoI\n icon={icon}\n className={classes.label}\n dropDownContent={<Typo type={\"body\"}>{infoContent}</Typo>}\n {...infoProps}\n />\n }\n {...labelProps}\n >\n {label}\n </LabelWithIcon>\n )\n}\n"],"names":["InfoLabel","label","infoContent","withAsterisk","icon","Info","labelProps","infoProps","LabelWithIcon","Icon","InfoI","className","classes","dropDownContent","Typo","type"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/Labels/InfoLabel.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FC, ReactNode } from \"react\"\nimport { InfoI, TInfoIProps } from \"../../InfoTip\"\nimport { LabelWithIcon, TLabelWithIconProps } from \"./LabelWithIcon\"\nimport { Typo } from \"../../Typo\"\nimport classes from \"./InfoLabel.module.css\"\nimport { Info, LucideIcon } from \"lucide-react\"\n\ntype TInfoLabelProps = {\n label: ReactNode\n infoContent: ReactNode\n withAsterisk?: boolean\n icon?: LucideIcon\n labelProps?: Partial<TLabelWithIconProps>\n infoProps?: Partial<TInfoIProps>\n}\n/**\n * Provides a Label using an InfoI as base\n * @param label ReactNode uses as label\n * @param infoContent ReactNode used as content in the drop down of the icon\n * @param withAsterisk Controls whether an asterisk should be shown\n * @param icon If defined, this replaces the standard icon in the InfoI\n * @param labelProps Additional props used for the LabelWithIcon component\n * @param infoProps Additional props used for the InfoI component\n */\nexport const InfoLabel: FC<TInfoLabelProps> = ({\n label,\n infoContent,\n withAsterisk = true,\n icon = Info,\n labelProps,\n infoProps,\n}) => {\n return (\n <LabelWithIcon\n withAsterisk={withAsterisk}\n Icon={\n <InfoI\n icon={icon}\n className={classes.label}\n dropDownContent={<Typo type={\"body\"}>{infoContent}</Typo>}\n {...infoProps}\n />\n }\n {...labelProps}\n >\n {label}\n </LabelWithIcon>\n )\n}\n"],"names":["InfoLabel","label","infoContent","withAsterisk","icon","Info","labelProps","infoProps","LabelWithIcon","Icon","InfoI","className","classes","dropDownContent","Typo","type"],"mappings":"oGA4BaA,mDAAAA,mFAvBsB,8CACgB,uCAC9B,sFACD,sDACa,20CAmB1B,MAAMA,UAAiC,CAAC,CAC7CC,KAAK,CACLC,WAAW,CACXC,aAAe,IAAI,CACnBC,KAAOC,iBAAI,CACXC,UAAU,CACVC,SAAS,CACV,IACC,MACE,oBAACC,4BAAa,sCACZL,aAAcA,aACdM,KACE,oBAACC,cAAK,iBACJN,KAAMA,KACNO,UAAWC,2BAAO,CAACX,KAAK,CACxBY,gBAAiB,oBAACC,UAAI,EAACC,KAAM,gBAASb,eAClCK,aAGJD,sBAEHL,QAGP"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/Labels/LabelWithIcon.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FC, PropsWithChildren, ReactNode } from \"react\"\nimport { Typo } from \"../../Typo\"\nimport classes from \"./LabelWithIcon.module.css\"\n\nexport type TLabelWithIconProps = {\n Icon?: ReactNode\n withAsterisk?: boolean\n}\n\nexport const LabelWithIcon: FC<PropsWithChildren<TLabelWithIconProps>> = ({\n Icon,\n withAsterisk = false,\n children,\n}) => {\n return (\n <div className={classes.label}>\n <Typo type={\"body\"} fw={500}>\n {children}\n </Typo>\n {withAsterisk && <span className={classes.asterisk}>*</span>}\n {Icon}\n </div>\n )\n}\n"],"names":["LabelWithIcon","Icon","withAsterisk","children","div","className","classes","label","Typo","type","fw","span","asterisk"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/Labels/LabelWithIcon.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { FC, PropsWithChildren, ReactNode } from \"react\"\nimport { Typo } from \"../../Typo\"\nimport classes from \"./LabelWithIcon.module.css\"\n\nexport type TLabelWithIconProps = {\n Icon?: ReactNode\n withAsterisk?: boolean\n}\n/**\n * Provides a Label using an icon as base\n * @param Icon ReactNode describing the icon to be used\n * @param withAsterisk Controls whether an asterisk should be shown\n * @param children\n */\nexport const LabelWithIcon: FC<PropsWithChildren<TLabelWithIconProps>> = ({\n Icon,\n withAsterisk = false,\n children,\n}) => {\n return (\n <div className={classes.label}>\n <Typo type={\"body\"} fw={500}>\n {children}\n </Typo>\n {withAsterisk && <span className={classes.asterisk}>*</span>}\n {Icon}\n </div>\n )\n}\n"],"names":["LabelWithIcon","Icon","withAsterisk","children","div","className","classes","label","Typo","type","fw","span","asterisk"],"mappings":"oGAkBaA,uDAAAA,oFAbQ,0FACD,mHAYb,MAAMA,cAA4D,CAAC,CACxEC,IAAI,CACJC,aAAe,KAAK,CACpBC,QAAQ,CACT,IACC,MACE,qBAACC,OAAIC,UAAWC,+BAAO,CAACC,KAAK,WAC3B,oBAACC,UAAI,EAACC,KAAM,OAAQC,GAAI,aACrBP,WAEFD,cAAgB,oBAACS,QAAKN,UAAWC,+BAAO,CAACM,QAAQ,UAAE,MACnDX,OAGP"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get MenuButton(){return MenuButton},get MenuItem(){return MenuItem}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _Button=require("../Button");const _react=require("react");const _lucidereact=require("lucide-react");const _Icon=require("../../Icon");const _indexmodulecss=/*#__PURE__*/_interop_require_default(require("./index.module.css"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:true});function _export(target,all){for(var name in all)Object.defineProperty(target,name,{enumerable:true,get:Object.getOwnPropertyDescriptor(all,name).get})}_export(exports,{get MenuButton(){return MenuButton},get MenuItem(){return MenuItem}});const _jsxruntime=require("react/jsx-runtime");const _core=require("@mantine/core");const _Button=require("../Button");const _react=require("react");const _lucidereact=require("lucide-react");const _Icon=require("../../Icon");const _indexmodulecss=/*#__PURE__*/_interop_require_default(require("./index.module.css"));function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _interop_require_default(obj){return obj&&obj.__esModule?obj:{default:obj}}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target={},sourceKeys,key,i;if(typeof Reflect!=="undefined"&&Reflect.ownKeys){sourceKeys=Reflect.ownKeys(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}target=_object_without_properties_loose(source,excluded);if(Object.getOwnPropertySymbols){sourceKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={},sourceKeys=Object.getOwnPropertyNames(source),key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}return target}const MenuButton=(0,_react.forwardRef)((props,ref)=>{return(0,_jsxruntime.jsxs)(_core.Menu,{children:[(0,_jsxruntime.jsx)(_core.Menu.Target,{children:(0,_jsxruntime.jsx)(_Button.Button,{ref:ref,rightSection:(0,_jsxruntime.jsx)(_Icon.Icon,{size:"md",icon:_lucidereact.ChevronDown}),children:props.buttonText})}),(0,_jsxruntime.jsx)(_core.Menu.Dropdown,{className:_indexmodulecss.default.dropdown,children:props.children})]})});MenuButton.displayName="MenuButton";const MenuItem=(0,_react.forwardRef)((_0,_1)=>{let _ref=[_0,_1],[_ref1,..._rest]=_ref,{icon}=_ref1,props=_object_without_properties(_ref1,["icon"]),[ref]=_rest;const ItemIcon=icon?(0,_jsxruntime.jsx)(_Icon.Icon,{size:"sm",icon:icon}):null;return(0,_jsxruntime.jsx)(_core.Menu.Item,_object_spread_props(_object_spread({},props),{leftSection:ItemIcon,ref:ref}))});MenuItem.displayName="MenuItem";
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Form/MenuButton/index.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Menu, MenuProps } from \"@mantine/core\"\nimport { Button } from \"../Button\"\nimport { forwardRef, ReactNode } from \"react\"\nimport { ChevronDown, LucideIcon } from \"lucide-react\"\nimport { Icon } from \"../../Icon\"\nimport classes from \"./index.module.css\"\n\ntype TMenuButtonProps = MenuProps & {\n buttonText: string\n children: ReactNode\n}\n\nexport const MenuButton = forwardRef<HTMLButtonElement, TMenuButtonProps>((props, ref) => {\n return (\n <Menu>\n <Menu.Target>\n <Button ref={ref} rightSection={<Icon size={\"md\"} icon={ChevronDown} />}>\n {props.buttonText}\n </Button>\n </Menu.Target>\n <Menu.Dropdown className={classes.dropdown}>{props.children}</Menu.Dropdown>\n </Menu>\n )\n})\n\nMenuButton.displayName = \"MenuButton\"\n\ntype TMenuItemProps = ReturnType<typeof Menu.Item>[\"props\"] & {\n icon?: LucideIcon\n}\n\nexport const MenuItem = forwardRef<HTMLButtonElement, TMenuItemProps>(({ icon, ...props }, ref) => {\n const ItemIcon = icon ? <Icon size={\"sm\"} icon={icon} /> : null\n return <Menu.Item {...props} leftSection={ItemIcon} ref={ref} />\n})\n\nMenuItem.displayName = \"MenuItem\"\n"],"names":["MenuButton","MenuItem","forwardRef","props","ref","Menu","Target","Button","rightSection","Icon","size","icon","ChevronDown","buttonText","Dropdown","className","classes","dropdown","children","displayName","ItemIcon","Item","leftSection"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Form/MenuButton/index.tsx"],"sourcesContent":["/* Copyright (C) Greenbone AG\n *\n * SPDX-License-Identifier: AGPL-3.0-or-later\n */\nimport { Menu, MenuProps } from \"@mantine/core\"\nimport { Button } from \"../Button\"\nimport { forwardRef, ReactNode } from \"react\"\nimport { ChevronDown, LucideIcon } from \"lucide-react\"\nimport { Icon } from \"../../Icon\"\nimport classes from \"./index.module.css\"\n\ntype TMenuButtonProps = MenuProps & {\n buttonText: string\n children: ReactNode\n}\n/**\n * Provides a menu entry giving a button and its target\n * @param buttonText String used as button label\n * @param children\n */\nexport const MenuButton = forwardRef<HTMLButtonElement, TMenuButtonProps>((props, ref) => {\n return (\n <Menu>\n <Menu.Target>\n <Button ref={ref} rightSection={<Icon size={\"md\"} icon={ChevronDown} />}>\n {props.buttonText}\n </Button>\n </Menu.Target>\n <Menu.Dropdown className={classes.dropdown}>{props.children}</Menu.Dropdown>\n </Menu>\n )\n})\n\nMenuButton.displayName = \"MenuButton\"\n\ntype TMenuItemProps = ReturnType<typeof Menu.Item>[\"props\"] & {\n icon?: LucideIcon\n}\n\n/**\n * Provides a menu entry giving an icon and its target\n * @param icon Icon to be used in the menu item\n * @param props as defined by Mantine for menu items\n */\nexport const MenuItem = forwardRef<HTMLButtonElement, TMenuItemProps>(({ icon, ...props }, ref) => {\n const ItemIcon = icon ? <Icon size={\"sm\"} icon={icon} /> : null\n return <Menu.Item {...props} leftSection={ItemIcon} ref={ref} />\n})\n\nMenuItem.displayName = \"MenuItem\"\n"],"names":["MenuButton","MenuItem","forwardRef","props","ref","Menu","Target","Button","rightSection","Icon","size","icon","ChevronDown","buttonText","Dropdown","className","classes","dropdown","children","displayName","ItemIcon","Item","leftSection"],"mappings":"mPAoBaA,oBAAAA,gBAwBAC,kBAAAA,+EAxCmB,uCACT,kCACe,oCACE,oCACnB,kFACD,23EAWb,MAAMD,WAAaE,GAAAA,iBAAU,EAAsC,CAACC,MAAOC,OAChF,MACE,qBAACC,UAAI,YACH,oBAACA,UAAI,CAACC,MAAM,WACV,oBAACC,cAAM,EAACH,IAAKA,IAAKI,aAAc,oBAACC,UAAI,EAACC,KAAM,KAAMC,KAAMC,wBAAW,YAChET,MAAMU,UAAU,KAGrB,oBAACR,UAAI,CAACS,QAAQ,EAACC,UAAWC,uBAAO,CAACC,QAAQ,UAAGd,MAAMe,QAAQ,KAGjE,EAEAlB,CAAAA,WAAWmB,WAAW,CAAG,aAWlB,MAAMlB,SAAWC,GAAAA,iBAAU,EAAoC,iDAAC,CAAES,IAAI,CAAY,OAAPR,kDAASC,WACzF,MAAMgB,SAAWT,KAAO,oBAACF,UAAI,EAACC,KAAM,KAAMC,KAAMA,OAAW,KAC3D,MAAO,oBAACN,UAAI,CAACgB,IAAI,wCAAKlB,QAAOmB,YAAaF,SAAUhB,IAAKA,MAC3D,EAEAH,CAAAA,SAASkB,WAAW,CAAG"}
|