@plesk/ui-library 3.27.2 → 3.27.3
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/README.md +35 -35
- package/cjs/components/Action/Action.js +3 -3
- package/cjs/components/Alert/Alert.js +5 -5
- package/cjs/components/AutoClosable/AutoClosable.js +3 -3
- package/cjs/components/AuxiliaryActions/AuxiliaryActions.js +3 -3
- package/cjs/components/Badge/Badge.js +3 -3
- package/cjs/components/Breadcrumbs/Breadcrumbs.js +4 -4
- package/cjs/components/Button/Button.js +50 -50
- package/cjs/components/ButtonGroup/ButtonGroup.js +3 -3
- package/cjs/components/Card/Card.js +52 -52
- package/cjs/components/Card/CardButton.js +2 -2
- package/cjs/components/Card/PreviewPanel.js +3 -3
- package/cjs/components/Card/images/no-image.svg +6 -6
- package/cjs/components/CardList/CardList.js +55 -55
- package/cjs/components/Carousel/Carousel.js +11 -11
- package/cjs/components/Checkbox/Checkbox.js +3 -3
- package/cjs/components/CodeEditor/CodeEditor.js +40 -40
- package/cjs/components/Columns/Column.js +3 -3
- package/cjs/components/Columns/Columns.js +3 -3
- package/cjs/components/ComboBox/ComboBox.js +4 -4
- package/cjs/components/ComboBox/ComboBoxOption.js +3 -3
- package/cjs/components/ConsoleOutput/ConsoleOutput.js +3 -3
- package/cjs/components/ContentLoader/ContentLoader.js +3 -3
- package/cjs/components/Cuttable/Cuttable.js +3 -3
- package/cjs/components/Dialog/Dialog.js +74 -65
- package/cjs/components/Drawer/Drawer.js +71 -71
- package/cjs/components/Dropdown/Dropdown.js +24 -24
- package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessage.js +4 -4
- package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageActions.js +3 -3
- package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageDescription.js +3 -3
- package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageSeparator.js +3 -3
- package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageTitle.js +3 -3
- package/cjs/components/Figure/Figure.js +14 -14
- package/cjs/components/Form/Form.js +4 -4
- package/cjs/components/Form/utils.js +22 -22
- package/cjs/components/FormField/FormField.js +78 -78
- package/cjs/components/FormFieldCheckbox/FormFieldCheckbox.js +26 -26
- package/cjs/components/FormFieldPassword/FormFieldPassword.js +28 -242
- package/cjs/components/FormFieldPassword/PasswordMeter.js +81 -0
- package/cjs/components/FormFieldPassword/estimatePassword.js +203 -0
- package/cjs/components/FormFieldPassword/generatePassword.js +21 -0
- package/cjs/components/FormFieldPassword/index.js +5 -5
- package/cjs/components/FormFieldRadioButtons/FormFieldRadioButtons.js +32 -32
- package/cjs/components/FormFieldSelect/FormFieldSelect.js +4 -4
- package/cjs/components/FormFieldText/FormFieldText.js +36 -36
- package/cjs/components/Grid/Grid.js +37 -37
- package/cjs/components/GridCol/GridCol.js +25 -25
- package/cjs/components/Heading/Heading.js +3 -3
- package/cjs/components/Hint/Hint.js +3 -3
- package/cjs/components/Icon/Icon.js +6 -6
- package/cjs/components/Icon/images/symbols.svg +1653 -1653
- package/cjs/components/InPlaceEdit/InPlaceEdit.js +15 -15
- package/cjs/components/Input/Input.js +3 -3
- package/cjs/components/InputFile/InputFile.js +3 -3
- package/cjs/components/InputNumber/InputNumber.js +3 -3
- package/cjs/components/Item/Item.js +41 -41
- package/cjs/components/ItemLink/ItemLink.js +4 -4
- package/cjs/components/ItemList/ItemList.js +6 -6
- package/cjs/components/Label/Label.js +3 -3
- package/cjs/components/Layer/Layer.js +2 -2
- package/cjs/components/Layout/Layout.js +55 -55
- package/cjs/components/Link/Link.js +6 -6
- package/cjs/components/List/List.js +133 -133
- package/cjs/components/List/ListAction.js +4 -4
- package/cjs/components/List/ListActions.js +3 -3
- package/cjs/components/List/ListActionsDivider.js +4 -4
- package/cjs/components/List/ListEmptyView.js +4 -4
- package/cjs/components/List/ListOperation.js +4 -4
- package/cjs/components/LocaleProvider/LocaleProvider.js +3 -3
- package/cjs/components/Markdown/Markdown.js +13 -13
- package/cjs/components/Media/Media.js +37 -37
- package/cjs/components/Media/MediaSection.js +10 -10
- package/cjs/components/Menu/Menu.js +28 -28
- package/cjs/components/Menu/MenuBaseItem.js +19 -19
- package/cjs/components/Menu/MenuDivider.js +7 -7
- package/cjs/components/Menu/MenuHeader.js +10 -10
- package/cjs/components/Menu/MenuItem.js +27 -27
- package/cjs/components/Menu/MenuSelectableItem.js +13 -13
- package/cjs/components/Overlay/Backdrop.js +6 -6
- package/cjs/components/Overlay/Overlay.js +34 -34
- package/cjs/components/PageHeader/PageHeader.js +3 -3
- package/cjs/components/Pagination/Pagination.js +3 -3
- package/cjs/components/Panel/Panel.js +3 -3
- package/cjs/components/Paragraph/Paragraph.js +3 -3
- package/cjs/components/Plaintext/Plaintext.js +10 -10
- package/cjs/components/Popover/Popover.js +59 -59
- package/cjs/components/Popper/Popper.js +30 -30
- package/cjs/components/Progress/Progress.js +13 -13
- package/cjs/components/ProgressDialog/ProgressDialog.js +49 -48
- package/cjs/components/ProgressDialogStep/ProgressDialogStep.js +3 -3
- package/cjs/components/ProgressStep/ProgressStep.js +25 -25
- package/cjs/components/Radio/Radio.js +3 -3
- package/cjs/components/Rating/Rating.js +13 -13
- package/cjs/components/Rating/images/rating.svg +6 -6
- package/cjs/components/Section/Section.js +41 -41
- package/cjs/components/Section/SectionItem.js +18 -18
- package/cjs/components/SegmentedControl/SegmentedControl.js +37 -37
- package/cjs/components/Select/MultiValue.js +1 -1
- package/cjs/components/Select/Select.js +3 -3
- package/cjs/components/Select/SelectControl.js +1 -1
- package/cjs/components/Select/SelectOption.js +3 -3
- package/cjs/components/Select/SelectOptionGroup.js +3 -3
- package/cjs/components/Spinner/Spinner.js +2 -2
- package/cjs/components/SplitButton/SplitButton.js +20 -20
- package/cjs/components/Spot/Spot.js +3 -3
- package/cjs/components/Status/Status.js +3 -3
- package/cjs/components/StatusMessage/StatusMessage.js +4 -4
- package/cjs/components/Subnav/Subnav.js +22 -22
- package/cjs/components/Switch/Switch.js +31 -31
- package/cjs/components/SwitchesPanel/SwitchesPanel.js +10 -10
- package/cjs/components/SwitchesPanelItem/SwitchesPanelItem.js +33 -33
- package/cjs/components/Tabs/SearchBar.js +57 -57
- package/cjs/components/Tabs/Tab.js +28 -28
- package/cjs/components/Tabs/Tabs.js +33 -33
- package/cjs/components/Text/Text.js +3 -3
- package/cjs/components/TextArea/TextArea.js +3 -3
- package/cjs/components/Toaster/Toaster.js +32 -32
- package/cjs/components/Toolbar/Toolbar.js +13 -13
- package/cjs/components/Toolbar/ToolbarExpander.js +5 -5
- package/cjs/components/Toolbar/ToolbarGroup.js +17 -17
- package/cjs/components/Tooltip/Tooltip.js +19 -19
- package/cjs/components/Tour/Tour.js +5 -5
- package/cjs/components/Translate/Translate.js +25 -25
- package/cjs/index.js +1 -1
- package/dist/images/no-image.svg +6 -6
- package/dist/images/rating.svg +6 -6
- package/dist/images/symbols.svg +1653 -1653
- package/dist/plesk-ui-library-rtl.css +1 -1
- package/dist/plesk-ui-library-rtl.css.map +1 -1
- package/dist/plesk-ui-library.css +1 -1
- package/dist/plesk-ui-library.css.map +1 -1
- package/dist/plesk-ui-library.js +6625 -6638
- package/dist/plesk-ui-library.js.map +1 -1
- package/dist/plesk-ui-library.min.js +5 -5
- package/dist/plesk-ui-library.min.js.map +1 -1
- package/esm/components/Action/Action.js +3 -3
- package/esm/components/Alert/Alert.js +5 -5
- package/esm/components/AutoClosable/AutoClosable.js +3 -3
- package/esm/components/AuxiliaryActions/AuxiliaryActions.js +3 -3
- package/esm/components/Badge/Badge.js +3 -3
- package/esm/components/Breadcrumbs/Breadcrumbs.js +4 -4
- package/esm/components/Button/Button.js +50 -50
- package/esm/components/ButtonGroup/ButtonGroup.js +3 -3
- package/esm/components/Card/Card.js +52 -52
- package/esm/components/Card/CardButton.js +2 -2
- package/esm/components/Card/PreviewPanel.js +3 -3
- package/esm/components/Card/images/no-image.svg +6 -6
- package/esm/components/CardList/CardList.js +55 -55
- package/esm/components/Carousel/Carousel.js +11 -11
- package/esm/components/Checkbox/Checkbox.js +3 -3
- package/esm/components/CodeEditor/CodeEditor.js +40 -40
- package/esm/components/Columns/Column.js +3 -3
- package/esm/components/Columns/Columns.js +3 -3
- package/esm/components/ComboBox/ComboBox.js +4 -4
- package/esm/components/ComboBox/ComboBoxOption.js +3 -3
- package/esm/components/ConsoleOutput/ConsoleOutput.js +3 -3
- package/esm/components/ContentLoader/ContentLoader.js +3 -3
- package/esm/components/Cuttable/Cuttable.js +3 -3
- package/esm/components/Dialog/Dialog.js +74 -65
- package/esm/components/Drawer/Drawer.js +71 -71
- package/esm/components/Dropdown/Dropdown.js +24 -24
- package/esm/components/ExtendedStatusMessage/ExtendedStatusMessage.js +4 -4
- package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageActions.js +3 -3
- package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageDescription.js +3 -3
- package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageSeparator.js +3 -3
- package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageTitle.js +3 -3
- package/esm/components/Figure/Figure.js +14 -14
- package/esm/components/Form/Form.js +4 -4
- package/esm/components/Form/utils.js +22 -22
- package/esm/components/FormField/FormField.js +78 -78
- package/esm/components/FormFieldCheckbox/FormFieldCheckbox.js +26 -26
- package/esm/components/FormFieldPassword/FormFieldPassword.js +26 -235
- package/esm/components/FormFieldPassword/PasswordMeter.js +61 -0
- package/esm/components/FormFieldPassword/estimatePassword.js +187 -0
- package/esm/components/FormFieldPassword/generatePassword.js +14 -0
- package/esm/components/FormFieldPassword/index.js +3 -2
- package/esm/components/FormFieldRadioButtons/FormFieldRadioButtons.js +32 -32
- package/esm/components/FormFieldSelect/FormFieldSelect.js +4 -4
- package/esm/components/FormFieldText/FormFieldText.js +36 -36
- package/esm/components/Grid/Grid.js +37 -37
- package/esm/components/GridCol/GridCol.js +25 -25
- package/esm/components/Heading/Heading.js +3 -3
- package/esm/components/Hint/Hint.js +3 -3
- package/esm/components/Icon/Icon.js +6 -6
- package/esm/components/Icon/images/symbols.svg +1653 -1653
- package/esm/components/InPlaceEdit/InPlaceEdit.js +15 -15
- package/esm/components/Input/Input.js +3 -3
- package/esm/components/InputFile/InputFile.js +3 -3
- package/esm/components/InputNumber/InputNumber.js +3 -3
- package/esm/components/Item/Item.js +41 -41
- package/esm/components/ItemLink/ItemLink.js +4 -4
- package/esm/components/ItemList/ItemList.js +6 -6
- package/esm/components/Label/Label.js +3 -3
- package/esm/components/Layer/Layer.js +2 -2
- package/esm/components/Layout/Layout.js +55 -55
- package/esm/components/Link/Link.js +6 -6
- package/esm/components/List/List.js +133 -133
- package/esm/components/List/ListAction.js +4 -4
- package/esm/components/List/ListActions.js +3 -3
- package/esm/components/List/ListActionsDivider.js +4 -4
- package/esm/components/List/ListEmptyView.js +4 -4
- package/esm/components/List/ListOperation.js +4 -4
- package/esm/components/LocaleProvider/LocaleProvider.js +3 -3
- package/esm/components/Markdown/Markdown.js +13 -13
- package/esm/components/Media/Media.js +37 -37
- package/esm/components/Media/MediaSection.js +10 -10
- package/esm/components/Menu/Menu.js +28 -28
- package/esm/components/Menu/MenuBaseItem.js +19 -19
- package/esm/components/Menu/MenuDivider.js +7 -7
- package/esm/components/Menu/MenuHeader.js +10 -10
- package/esm/components/Menu/MenuItem.js +27 -27
- package/esm/components/Menu/MenuSelectableItem.js +13 -13
- package/esm/components/Overlay/Backdrop.js +6 -6
- package/esm/components/Overlay/Overlay.js +34 -34
- package/esm/components/PageHeader/PageHeader.js +3 -3
- package/esm/components/Pagination/Pagination.js +3 -3
- package/esm/components/Panel/Panel.js +3 -3
- package/esm/components/Paragraph/Paragraph.js +3 -3
- package/esm/components/Plaintext/Plaintext.js +10 -10
- package/esm/components/Popover/Popover.js +59 -59
- package/esm/components/Popper/Popper.js +30 -30
- package/esm/components/Progress/Progress.js +13 -13
- package/esm/components/ProgressDialog/ProgressDialog.js +49 -48
- package/esm/components/ProgressDialogStep/ProgressDialogStep.js +3 -3
- package/esm/components/ProgressStep/ProgressStep.js +25 -25
- package/esm/components/Radio/Radio.js +3 -3
- package/esm/components/Rating/Rating.js +13 -13
- package/esm/components/Rating/images/rating.svg +6 -6
- package/esm/components/Section/Section.js +41 -41
- package/esm/components/Section/SectionItem.js +18 -18
- package/esm/components/SegmentedControl/SegmentedControl.js +37 -37
- package/esm/components/Select/MultiValue.js +1 -1
- package/esm/components/Select/Select.js +3 -3
- package/esm/components/Select/SelectControl.js +1 -1
- package/esm/components/Select/SelectOption.js +3 -3
- package/esm/components/Select/SelectOptionGroup.js +3 -3
- package/esm/components/Spinner/Spinner.js +2 -2
- package/esm/components/SplitButton/SplitButton.js +20 -20
- package/esm/components/Spot/Spot.js +3 -3
- package/esm/components/Status/Status.js +3 -3
- package/esm/components/StatusMessage/StatusMessage.js +4 -4
- package/esm/components/Subnav/Subnav.js +22 -22
- package/esm/components/Switch/Switch.js +31 -31
- package/esm/components/SwitchesPanel/SwitchesPanel.js +10 -10
- package/esm/components/SwitchesPanelItem/SwitchesPanelItem.js +33 -33
- package/esm/components/Tabs/SearchBar.js +57 -57
- package/esm/components/Tabs/Tab.js +28 -28
- package/esm/components/Tabs/Tabs.js +33 -33
- package/esm/components/Text/Text.js +3 -3
- package/esm/components/TextArea/TextArea.js +3 -3
- package/esm/components/Toaster/Toaster.js +32 -32
- package/esm/components/Toolbar/Toolbar.js +13 -13
- package/esm/components/Toolbar/ToolbarExpander.js +5 -5
- package/esm/components/Toolbar/ToolbarGroup.js +17 -17
- package/esm/components/Tooltip/Tooltip.js +19 -19
- package/esm/components/Tour/Tour.js +5 -5
- package/esm/components/Translate/Translate.js +25 -25
- package/esm/index.js +1 -1
- package/index.js +5 -5
- package/package.json +151 -151
- package/scripts/postinstall.js +9 -9
- package/styleguide/browserconfig.xml +9 -9
- package/styleguide/build/bundle.f38c467d.js +2 -0
- package/styleguide/build/{bundle.1c9c8500.js.LICENSE.txt → bundle.f38c467d.js.LICENSE.txt} +0 -0
- package/styleguide/images/no-image.svg +6 -6
- package/styleguide/images/rating.svg +6 -6
- package/styleguide/images/symbols.svg +1653 -1653
- package/styleguide/index.html +2 -2
- package/styleguide/placeholders/placeholder_400x200.svg +5 -5
- package/styleguide/placeholders/placeholder_400x400.svg +5 -5
- package/styleguide/placeholders/placeholder_600x400.svg +5 -5
- package/styleguide/safari-pinned-tab.svg +28 -28
- package/styleguide/site.webmanifest +19 -19
- package/types/package.d.ts +133 -133
- package/types/src/components/Action/Action.d.ts +61 -61
- package/types/src/components/Action/index.d.ts +1 -1
- package/types/src/components/Alert/Alert.d.ts +36 -36
- package/types/src/components/Alert/Alert.stories.d.ts +14 -14
- package/types/src/components/Alert/index.d.ts +1 -1
- package/types/src/components/AutoClosable/AutoClosable.d.ts +59 -59
- package/types/src/components/AutoClosable/index.d.ts +1 -1
- package/types/src/components/AuxiliaryActions/AuxiliaryActions.d.ts +28 -28
- package/types/src/components/AuxiliaryActions/index.d.ts +1 -1
- package/types/src/components/Badge/Badge.d.ts +39 -39
- package/types/src/components/Badge/index.d.ts +1 -1
- package/types/src/components/Breadcrumbs/Breadcrumbs.d.ts +25 -25
- package/types/src/components/Breadcrumbs/index.d.ts +1 -1
- package/types/src/components/Button/Button.stories.d.ts +16 -16
- package/types/src/components/ButtonGroup/ButtonGroup.d.ts +27 -27
- package/types/src/components/ButtonGroup/index.d.ts +1 -1
- package/types/src/components/Card/PreviewPanel.d.ts +53 -53
- package/types/src/components/Card/helpers.d.ts +5 -5
- package/types/src/components/Checkbox/Checkbox.d.ts +67 -67
- package/types/src/components/Checkbox/index.d.ts +1 -1
- package/types/src/components/ClosingConfirmation/index.d.ts +1 -1
- package/types/src/components/ClosingConfirmation/useClosingConfirmation.d.ts +10 -10
- package/types/src/components/Columns/Column.d.ts +52 -52
- package/types/src/components/Columns/Columns.d.ts +34 -34
- package/types/src/components/Columns/index.d.ts +2 -2
- package/types/src/components/ComboBox/ComboBox.d.ts +58 -58
- package/types/src/components/ComboBox/ComboBoxOption.d.ts +19 -19
- package/types/src/components/ComboBox/index.d.ts +2 -2
- package/types/src/components/ComboBoxDropdown/ComboBoxDropdown.d.ts +40 -40
- package/types/src/components/ComboBoxDropdown/index.d.ts +1 -1
- package/types/src/components/ConsoleOutput/ConsoleOutput.d.ts +52 -52
- package/types/src/components/ConsoleOutput/index.d.ts +1 -1
- package/types/src/components/ContentLoader/ContentLoader.d.ts +60 -60
- package/types/src/components/ContentLoader/IconsLoader.d.ts +10 -10
- package/types/src/components/ContentLoader/index.d.ts +1 -1
- package/types/src/components/Cuttable/Cuttable.d.ts +63 -63
- package/types/src/components/Cuttable/Cuttable.stories.d.ts +34 -34
- package/types/src/components/Cuttable/index.d.ts +1 -1
- package/types/src/components/Dialog/Dialog.stories.d.ts +22 -22
- package/types/src/components/DistractionFreeModeContext/DistractionFreeModeContext.d.ts +7 -7
- package/types/src/components/DistractionFreeModeContext/index.d.ts +1 -1
- package/types/src/components/Drawer/Drawer.stories.d.ts +40 -40
- package/types/src/components/Drawer/DrawerProgress.d.ts +45 -45
- package/types/src/components/ExtendedStatusMessage/ExtendedStatusMessage.d.ts +38 -38
- package/types/src/components/ExtendedStatusMessage/ExtendedStatusMessageActions.d.ts +22 -22
- package/types/src/components/ExtendedStatusMessage/ExtendedStatusMessageDescription.d.ts +22 -22
- package/types/src/components/ExtendedStatusMessage/ExtendedStatusMessageSeparator.d.ts +13 -13
- package/types/src/components/ExtendedStatusMessage/ExtendedStatusMessageTitle.d.ts +22 -22
- package/types/src/components/ExtendedStatusMessage/index.d.ts +5 -5
- package/types/src/components/FocusTrap/FocusTrap.d.ts +7 -7
- package/types/src/components/FocusTrap/index.d.ts +1 -1
- package/types/src/components/Form/DisabledContext.d.ts +3 -3
- package/types/src/components/Form/Form.d.ts +163 -163
- package/types/src/components/Form/Form.stories.d.ts +12 -12
- package/types/src/components/Form/FormContext.d.ts +16 -16
- package/types/src/components/Form/index.d.ts +2 -2
- package/types/src/components/Form/utils.d.ts +32 -32
- package/types/src/components/FormFieldCheckbox/FormFieldCheckbox.stories.d.ts +17 -17
- package/types/src/components/FormFieldPassword/FormFieldPassword.d.ts +91 -0
- package/types/src/components/FormFieldPassword/PasswordMeter.d.ts +9 -0
- package/types/src/components/FormFieldPassword/estimatePassword.d.ts +13 -0
- package/types/src/components/FormFieldPassword/index.d.ts +2 -0
- package/types/src/components/FormFieldSelect/FormFieldSelect.d.ts +13 -13
- package/types/src/components/FormFieldSelect/index.d.ts +1 -1
- package/types/src/components/Heading/Heading.d.ts +39 -39
- package/types/src/components/Heading/index.d.ts +1 -1
- package/types/src/components/Hint/Hint.d.ts +24 -24
- package/types/src/components/Hint/index.d.ts +1 -1
- package/types/src/components/Icon/Icon.d.ts +88 -88
- package/types/src/components/Icon/Icon.stories.d.ts +6 -6
- package/types/src/components/Icon/constants.d.ts +3 -3
- package/types/src/components/Icon/index.d.ts +2 -2
- package/types/src/components/Icon/oldIconNames.d.ts +5 -5
- package/types/src/components/Input/Input.d.ts +57 -57
- package/types/src/components/Input/index.d.ts +1 -1
- package/types/src/components/InputFile/InputFile.d.ts +49 -49
- package/types/src/components/InputFile/index.d.ts +1 -1
- package/types/src/components/InputNumber/InputNumber.d.ts +64 -64
- package/types/src/components/InputNumber/index.d.ts +1 -1
- package/types/src/components/ItemLink/ItemLink.d.ts +28 -28
- package/types/src/components/ItemLink/ItemLink.stories.d.ts +14 -14
- package/types/src/components/ItemLink/index.d.ts +1 -1
- package/types/src/components/ItemList/ItemList.d.ts +113 -113
- package/types/src/components/ItemList/ItemList.stories.d.ts +289 -289
- package/types/src/components/Label/Label.d.ts +28 -28
- package/types/src/components/Label/index.d.ts +1 -1
- package/types/src/components/Layer/Layer.d.ts +29 -29
- package/types/src/components/Layer/index.d.ts +2 -2
- package/types/src/components/Link/Link.d.ts +47 -47
- package/types/src/components/Link/index.d.ts +1 -1
- package/types/src/components/List/List.stories.d.ts +29 -29
- package/types/src/components/List/ListAction.d.ts +39 -39
- package/types/src/components/List/ListActions.d.ts +30 -30
- package/types/src/components/List/ListActionsDivider.d.ts +10 -10
- package/types/src/components/List/ListEmptyView.d.ts +44 -44
- package/types/src/components/List/ListOperation.d.ts +42 -42
- package/types/src/components/List/ListOperationContext.d.ts +7 -7
- package/types/src/components/LocaleProvider/LocaleProvider.d.ts +37 -37
- package/types/src/components/LocaleProvider/index.d.ts +2 -2
- package/types/src/components/Menu/Menu.stories.d.ts +19 -19
- package/types/src/components/OnDarkContext/OnDarkContext.d.ts +3 -3
- package/types/src/components/OnDarkContext/index.d.ts +1 -1
- package/types/src/components/PageHeader/PageHeader.d.ts +53 -53
- package/types/src/components/PageHeader/index.d.ts +1 -1
- package/types/src/components/Pagination/Pagination.d.ts +77 -77
- package/types/src/components/Panel/Panel.d.ts +65 -65
- package/types/src/components/Paragraph/Paragraph.d.ts +29 -29
- package/types/src/components/Paragraph/index.d.ts +1 -1
- package/types/src/components/Popover/Popover.stories.d.ts +22 -22
- package/types/src/components/ProgressBar/ProgressBar.d.ts +23 -23
- package/types/src/components/ProgressBar/ProgressIndicator.d.ts +21 -21
- package/types/src/components/ProgressBar/index.d.ts +1 -1
- package/types/src/components/Radio/Radio.d.ts +52 -52
- package/types/src/components/Radio/index.d.ts +1 -1
- package/types/src/components/ResponsiveContext/ResponsiveContext.d.ts +3 -3
- package/types/src/components/ResponsiveContext/index.d.ts +1 -1
- package/types/src/components/Select/MultiValue.d.ts +9 -9
- package/types/src/components/Select/Select.d.ts +74 -74
- package/types/src/components/Select/Select.stories.d.ts +23 -23
- package/types/src/components/Select/SelectControl.d.ts +26 -26
- package/types/src/components/Select/SelectOption.d.ts +29 -29
- package/types/src/components/Select/SelectOptionGroup.d.ts +20 -20
- package/types/src/components/Select/index.d.ts +3 -3
- package/types/src/components/Select/structures.d.ts +19 -19
- package/types/src/components/Spinner/Spinner.d.ts +18 -18
- package/types/src/components/Spinner/index.d.ts +1 -1
- package/types/src/components/Spot/Spot.d.ts +70 -70
- package/types/src/components/Spot/SpotPopup.d.ts +25 -25
- package/types/src/components/Spot/SpotPulsar.d.ts +10 -10
- package/types/src/components/Spot/index.d.ts +1 -1
- package/types/src/components/Squeezer/Squeezer.d.ts +22 -22
- package/types/src/components/Squeezer/index.d.ts +1 -1
- package/types/src/components/Status/Status.d.ts +69 -69
- package/types/src/components/Status/Status.stories.d.ts +22 -22
- package/types/src/components/Status/index.d.ts +1 -1
- package/types/src/components/StatusMessage/StatusMessage.d.ts +29 -29
- package/types/src/components/StatusMessage/index.d.ts +1 -1
- package/types/src/components/Tabs/Tabs.stories.d.ts +7 -7
- package/types/src/components/Text/Text.d.ts +64 -64
- package/types/src/components/Text/index.d.ts +1 -1
- package/types/src/components/TextArea/TextArea.d.ts +69 -69
- package/types/src/components/TextArea/calculateNodeHeight.d.ts +6 -6
- package/types/src/components/Toast/Toast.d.ts +40 -40
- package/types/src/components/Toast/index.d.ts +2 -2
- package/types/src/components/Toaster/Toaster.d.ts +93 -93
- package/types/src/components/Toaster/index.d.ts +1 -1
- package/types/src/components/Toolbar/RegistryContext.d.ts +16 -16
- package/types/src/components/Toolbar/ToolbarExpander.d.ts +24 -24
- package/types/src/components/Toolbar/ToolbarItem.d.ts +2 -2
- package/types/src/components/Toolbar/ToolbarMenu.d.ts +7 -7
- package/types/src/components/Tour/Tour.d.ts +27 -27
- package/types/src/components/Tour/index.d.ts +1 -1
- package/types/src/components/VerticalContext/VerticalContext.d.ts +4 -4
- package/types/src/components/VerticalContext/index.d.ts +1 -1
- package/types/src/components/index.d.ts +98 -98
- package/types/src/components/intentIconMap.d.ts +4 -4
- package/types/src/components/utils.d.ts +28 -28
- package/types/src/index.d.ts +5 -5
- package/types/src/utils.d.ts +5 -5
- package/cjs/components/FormFieldPassword/passwordScore.js +0 -132
- package/esm/components/FormFieldPassword/passwordScore.js +0 -123
- package/styleguide/build/bundle.1c9c8500.js +0 -2
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.
|
|
8
|
+
exports.default = void 0;
|
|
9
9
|
|
|
10
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
11
|
|
|
@@ -13,8 +13,6 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
13
13
|
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
15
|
|
|
16
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
|
-
|
|
18
16
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
19
17
|
|
|
20
18
|
var _constants = require("../../constants");
|
|
@@ -25,11 +23,11 @@ var _FormField = _interopRequireDefault(require("../FormField"));
|
|
|
25
23
|
|
|
26
24
|
var _Input = _interopRequireDefault(require("../Input"));
|
|
27
25
|
|
|
28
|
-
var _Popover = _interopRequireDefault(require("../Popover"));
|
|
29
|
-
|
|
30
26
|
var _Translate = _interopRequireDefault(require("../Translate"));
|
|
31
27
|
|
|
32
|
-
var
|
|
28
|
+
var _PasswordMeter = _interopRequireDefault(require("./PasswordMeter"));
|
|
29
|
+
|
|
30
|
+
var _generatePassword = _interopRequireDefault(require("./generatePassword"));
|
|
33
31
|
|
|
34
32
|
var _enUS = _interopRequireDefault(require("./locale/en-US"));
|
|
35
33
|
|
|
@@ -37,40 +35,19 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
37
35
|
|
|
38
36
|
function _interopRequireWildcard(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 = {}; 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; }
|
|
39
37
|
|
|
40
|
-
// Copyright 1999-
|
|
41
|
-
const symbolClasses = {
|
|
42
|
-
upper: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
|
|
43
|
-
lower: 'abcdefghijklmnopqrstuvwxyz',
|
|
44
|
-
number: '0123456789',
|
|
45
|
-
special: '!@#$%^&*?_~'
|
|
46
|
-
};
|
|
38
|
+
// Copyright 1999-2022. Plesk International GmbH. All rights reserved.
|
|
47
39
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
};
|
|
52
|
-
/**
|
|
53
|
-
* `FormFieldPassword` component provides secure way to enter a password.
|
|
54
|
-
* @since 0.0.58
|
|
40
|
+
/**
|
|
41
|
+
* `FormFieldPassword` component provides secure way to enter a password.
|
|
42
|
+
* @since 0.0.58
|
|
55
43
|
*/
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
exports.generatePassword = generatePassword;
|
|
59
|
-
|
|
60
44
|
class FormFieldPassword extends _react.Component {
|
|
61
45
|
constructor(...args) {
|
|
62
46
|
super(...args);
|
|
63
47
|
(0, _defineProperty2.default)(this, "state", {
|
|
64
48
|
visible: false,
|
|
65
|
-
passwordMeterVisible: false
|
|
66
|
-
scoreResult: {
|
|
67
|
-
password: null,
|
|
68
|
-
intent: null,
|
|
69
|
-
strength: null,
|
|
70
|
-
unusedRules: []
|
|
71
|
-
}
|
|
49
|
+
passwordMeterVisible: false
|
|
72
50
|
});
|
|
73
|
-
(0, _defineProperty2.default)(this, "passwordOnScoring", null);
|
|
74
51
|
(0, _defineProperty2.default)(this, "targetRef", /*#__PURE__*/(0, _react.createRef)());
|
|
75
52
|
(0, _defineProperty2.default)(this, "handleToggleClick", () => {
|
|
76
53
|
this.setState(({
|
|
@@ -87,135 +64,6 @@ class FormFieldPassword extends _react.Component {
|
|
|
87
64
|
(0, _defineProperty2.default)(this, "handleBlur", this.handleClosePasswordMeter);
|
|
88
65
|
}
|
|
89
66
|
|
|
90
|
-
async passwordScore(value) {
|
|
91
|
-
if (!value) {
|
|
92
|
-
return {
|
|
93
|
-
password: null,
|
|
94
|
-
intent: null,
|
|
95
|
-
strength: null,
|
|
96
|
-
unusedRules: []
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
const {
|
|
101
|
-
passwordScoreRules
|
|
102
|
-
} = this.props;
|
|
103
|
-
const {
|
|
104
|
-
password,
|
|
105
|
-
score,
|
|
106
|
-
unusedRules
|
|
107
|
-
} = await (0, _passwordScore.default)(value, passwordScoreRules);
|
|
108
|
-
let intent = 'success';
|
|
109
|
-
|
|
110
|
-
let strength = /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
111
|
-
content: "FormFieldPassword.strengthVeryStrong",
|
|
112
|
-
fallback: _enUS.default.strengthVeryStrong
|
|
113
|
-
});
|
|
114
|
-
|
|
115
|
-
if (score < 16) {
|
|
116
|
-
intent = 'danger';
|
|
117
|
-
strength = /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
118
|
-
content: "FormFieldPassword.strengthVeryWeak",
|
|
119
|
-
fallback: _enUS.default.strengthVeryWeak
|
|
120
|
-
});
|
|
121
|
-
} else if (score < 25) {
|
|
122
|
-
intent = 'danger';
|
|
123
|
-
strength = /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
124
|
-
content: "FormFieldPassword.strengthWeak",
|
|
125
|
-
fallback: _enUS.default.strengthWeak
|
|
126
|
-
});
|
|
127
|
-
} else if (score < 35) {
|
|
128
|
-
intent = 'warning';
|
|
129
|
-
strength = /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
130
|
-
content: "FormFieldPassword.strengthMedium",
|
|
131
|
-
fallback: _enUS.default.strengthMedium
|
|
132
|
-
});
|
|
133
|
-
} else if (score < 45) {
|
|
134
|
-
intent = 'success';
|
|
135
|
-
strength = /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
136
|
-
content: "FormFieldPassword.strengthStrong",
|
|
137
|
-
fallback: _enUS.default.strengthStrong
|
|
138
|
-
});
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
return {
|
|
142
|
-
password,
|
|
143
|
-
intent,
|
|
144
|
-
strength,
|
|
145
|
-
unusedRules
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
renderPasswordMeter(value, target) {
|
|
150
|
-
const {
|
|
151
|
-
passwordMeterVisible
|
|
152
|
-
} = this.state;
|
|
153
|
-
const {
|
|
154
|
-
passwordMeterProps
|
|
155
|
-
} = this.props;
|
|
156
|
-
const {
|
|
157
|
-
password,
|
|
158
|
-
intent,
|
|
159
|
-
strength,
|
|
160
|
-
unusedRules
|
|
161
|
-
} = this.state.scoreResult;
|
|
162
|
-
|
|
163
|
-
if (!!value && value !== password && value !== this.passwordOnScoring) {
|
|
164
|
-
this.passwordOnScoring = value;
|
|
165
|
-
this.passwordScore(value).then(scoreResult => {
|
|
166
|
-
if (this.passwordOnScoring === scoreResult.password) {
|
|
167
|
-
this.passwordOnScoring = null;
|
|
168
|
-
this.setState({
|
|
169
|
-
scoreResult
|
|
170
|
-
});
|
|
171
|
-
}
|
|
172
|
-
});
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
return /*#__PURE__*/_react.default.createElement(_Popover.default, (0, _extends2.default)({
|
|
176
|
-
visible: passwordMeterVisible && !!value,
|
|
177
|
-
target: target,
|
|
178
|
-
targetRef: this.targetRef,
|
|
179
|
-
placement: "bottom-right",
|
|
180
|
-
intent: intent,
|
|
181
|
-
canCloseOnOutsideClick: false,
|
|
182
|
-
canCloseOnEscapePress: false,
|
|
183
|
-
onClose: this.handleClosePasswordMeter
|
|
184
|
-
}, passwordMeterProps), /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
185
|
-
content: "FormFieldPassword.passwordStrength",
|
|
186
|
-
fallback: _enUS.default.passwordStrength,
|
|
187
|
-
params: {
|
|
188
|
-
strength: /*#__PURE__*/_react.default.createElement("b", null, strength)
|
|
189
|
-
}
|
|
190
|
-
}), /*#__PURE__*/_react.default.createElement("br", null), unusedRules.length ? /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
191
|
-
content: "FormFieldPassword.improvePassword",
|
|
192
|
-
fallback: _enUS.default.improvePassword
|
|
193
|
-
}), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("ul", null, unusedRules.slice(0, 3).map(({
|
|
194
|
-
rule
|
|
195
|
-
}, index) => {
|
|
196
|
-
const {
|
|
197
|
-
name
|
|
198
|
-
} = rule;
|
|
199
|
-
let {
|
|
200
|
-
message
|
|
201
|
-
} = rule;
|
|
202
|
-
|
|
203
|
-
if (name && !message) {
|
|
204
|
-
message = /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
205
|
-
content: `FormFieldPassword.${name}`,
|
|
206
|
-
fallback: _enUS.default[name]
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
|
|
210
|
-
return /*#__PURE__*/_react.default.createElement("li", {
|
|
211
|
-
key: name || index.toString()
|
|
212
|
-
}, message);
|
|
213
|
-
}))) : /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
214
|
-
content: "FormFieldPassword.yourPasswordIsStrong",
|
|
215
|
-
fallback: _enUS.default.yourPasswordIsStrong
|
|
216
|
-
}));
|
|
217
|
-
}
|
|
218
|
-
|
|
219
67
|
renderGenerateButton({
|
|
220
68
|
setValue,
|
|
221
69
|
isDisabled
|
|
@@ -226,7 +74,7 @@ class FormFieldPassword extends _react.Component {
|
|
|
226
74
|
} = this.props;
|
|
227
75
|
const generateButtonProps = {
|
|
228
76
|
className: `${baseClassName}__button--generate`,
|
|
229
|
-
onClick: () => setValue(
|
|
77
|
+
onClick: () => setValue((0, _generatePassword.default)()),
|
|
230
78
|
tooltip: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
231
79
|
content: "FormFieldPassword.generateButtonHint",
|
|
232
80
|
fallback: _enUS.default.generateButtonHint
|
|
@@ -257,12 +105,15 @@ class FormFieldPassword extends _react.Component {
|
|
|
257
105
|
hideGenerateButton,
|
|
258
106
|
hidePasswordMeter,
|
|
259
107
|
passwordMeterProps,
|
|
260
|
-
passwordScoreRules,
|
|
261
108
|
size,
|
|
262
109
|
autoFocus,
|
|
263
110
|
autoComplete,
|
|
264
111
|
...props
|
|
265
112
|
} = this.props;
|
|
113
|
+
const {
|
|
114
|
+
visible,
|
|
115
|
+
passwordMeterVisible
|
|
116
|
+
} = this.state;
|
|
266
117
|
return /*#__PURE__*/_react.default.createElement(_FormField.default, (0, _extends2.default)({
|
|
267
118
|
className: (0, _classnames.default)(baseClassName, className)
|
|
268
119
|
}, props), ({
|
|
@@ -272,18 +123,19 @@ class FormFieldPassword extends _react.Component {
|
|
|
272
123
|
setValue,
|
|
273
124
|
isDisabled
|
|
274
125
|
}) => {
|
|
126
|
+
const value = getValue('');
|
|
127
|
+
|
|
275
128
|
const input = /*#__PURE__*/_react.default.createElement(_Input.default, {
|
|
276
129
|
id: getId(),
|
|
277
130
|
name: getName(),
|
|
278
|
-
type:
|
|
279
|
-
value:
|
|
131
|
+
type: visible ? 'text' : 'password',
|
|
132
|
+
value: value,
|
|
280
133
|
onChange: e => {
|
|
281
134
|
setValue(e.target.value);
|
|
282
135
|
this.setState({
|
|
283
136
|
passwordMeterVisible: true
|
|
284
137
|
});
|
|
285
138
|
},
|
|
286
|
-
onFocus: this.handleFocus,
|
|
287
139
|
onBlur: this.handleBlur,
|
|
288
140
|
autoFocus: autoFocus,
|
|
289
141
|
autoComplete: autoComplete,
|
|
@@ -292,8 +144,8 @@ class FormFieldPassword extends _react.Component {
|
|
|
292
144
|
suffix: hideShowButton ? null : /*#__PURE__*/_react.default.createElement(_Button.default, {
|
|
293
145
|
className: `${baseClassName}__button--show`,
|
|
294
146
|
onClick: this.handleToggleClick,
|
|
295
|
-
icon:
|
|
296
|
-
tooltip:
|
|
147
|
+
icon: visible ? 'visible' : 'invisible',
|
|
148
|
+
tooltip: visible ? /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
297
149
|
content: "FormFieldPassword.hidePassword",
|
|
298
150
|
fallback: _enUS.default.hidePassword
|
|
299
151
|
}) : /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
@@ -313,7 +165,12 @@ class FormFieldPassword extends _react.Component {
|
|
|
313
165
|
className: (0, _classnames.default)(`${baseClassName}__control`, `${baseClassName}__control--${size}`)
|
|
314
166
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
315
167
|
className: (0, _classnames.default)(`${baseClassName}__field`, `${baseClassName}__field--${size}`)
|
|
316
|
-
}, hidePasswordMeter ? input :
|
|
168
|
+
}, hidePasswordMeter ? input : /*#__PURE__*/_react.default.createElement(_PasswordMeter.default, (0, _extends2.default)({
|
|
169
|
+
value: value,
|
|
170
|
+
targetRef: this.targetRef,
|
|
171
|
+
visible: passwordMeterVisible && value !== '',
|
|
172
|
+
onClose: this.handleClosePasswordMeter
|
|
173
|
+
}, passwordMeterProps), input)), hideGenerateButton ? null : this.renderGenerateButton({
|
|
317
174
|
setValue,
|
|
318
175
|
isDisabled
|
|
319
176
|
}));
|
|
@@ -322,88 +179,17 @@ class FormFieldPassword extends _react.Component {
|
|
|
322
179
|
|
|
323
180
|
}
|
|
324
181
|
|
|
325
|
-
FormFieldPassword
|
|
326
|
-
/**
|
|
327
|
-
* Is show button hidden?
|
|
328
|
-
* @since 0.0.59
|
|
329
|
-
*/
|
|
330
|
-
hideShowButton: _propTypes.default.bool,
|
|
331
|
-
|
|
332
|
-
/**
|
|
333
|
-
* Is generate button hidden?
|
|
334
|
-
* @since 0.0.59
|
|
335
|
-
*/
|
|
336
|
-
hideGenerateButton: _propTypes.default.bool,
|
|
337
|
-
|
|
338
|
-
/**
|
|
339
|
-
* Is password meter hidden?
|
|
340
|
-
* @since 0.0.59
|
|
341
|
-
*/
|
|
342
|
-
hidePasswordMeter: _propTypes.default.bool,
|
|
343
|
-
|
|
344
|
-
/**
|
|
345
|
-
* Additional props for password meter. . See [Popover](#!/Popover) for more information.
|
|
346
|
-
* @since 1.5.6
|
|
347
|
-
*/
|
|
348
|
-
passwordMeterProps: _propTypes.default.object,
|
|
349
|
-
|
|
350
|
-
/**
|
|
351
|
-
* A set of custom password score rules.
|
|
352
|
-
* @since 3.21.0
|
|
353
|
-
*/
|
|
354
|
-
passwordScoreRules: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
355
|
-
name: _propTypes.default.string,
|
|
356
|
-
message: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.element]),
|
|
357
|
-
score: _propTypes.default.func.isRequired
|
|
358
|
-
})),
|
|
359
|
-
|
|
360
|
-
/**
|
|
361
|
-
* Size of the control
|
|
362
|
-
* @since 1.5.6
|
|
363
|
-
*/
|
|
364
|
-
size: _propTypes.default.oneOf(['md', 'lg', 'xl', 'fill']),
|
|
365
|
-
|
|
366
|
-
/**
|
|
367
|
-
* The browser will automatically focus on the component upon rendering the screen
|
|
368
|
-
* @since 1.9.0
|
|
369
|
-
*/
|
|
370
|
-
autoFocus: _propTypes.default.bool,
|
|
371
|
-
|
|
372
|
-
/**
|
|
373
|
-
* Prevent password autocompletion.
|
|
374
|
-
* @since 2.5.1
|
|
375
|
-
*/
|
|
376
|
-
autoComplete: _propTypes.default.oneOf(['new-password']),
|
|
377
|
-
|
|
378
|
-
/**
|
|
379
|
-
* A render function for customizing the password generation button.
|
|
380
|
-
* @since 3.13.0
|
|
381
|
-
*/
|
|
382
|
-
generateButton: _propTypes.default.func,
|
|
383
|
-
|
|
384
|
-
/**
|
|
385
|
-
* @ignore
|
|
386
|
-
*/
|
|
387
|
-
className: _propTypes.default.string,
|
|
388
|
-
|
|
389
|
-
/**
|
|
390
|
-
* @ignore
|
|
391
|
-
*/
|
|
392
|
-
baseClassName: _propTypes.default.string
|
|
393
|
-
};
|
|
394
|
-
FormFieldPassword.defaultProps = {
|
|
182
|
+
(0, _defineProperty2.default)(FormFieldPassword, "defaultProps", {
|
|
395
183
|
hideShowButton: false,
|
|
396
184
|
generateButton: undefined,
|
|
397
185
|
hideGenerateButton: false,
|
|
398
186
|
hidePasswordMeter: false,
|
|
399
187
|
passwordMeterProps: {},
|
|
400
|
-
passwordScoreRules: undefined,
|
|
401
188
|
size: 'md',
|
|
402
189
|
autoFocus: undefined,
|
|
403
190
|
autoComplete: undefined,
|
|
404
191
|
className: undefined,
|
|
405
192
|
baseClassName: `${_constants.CLS_PREFIX}form-field-password`
|
|
406
|
-
};
|
|
407
|
-
FormFieldPassword.PASSWORD_SCORE_RULES = _passwordScore.PASSWORD_SCORE_RULES;
|
|
193
|
+
});
|
|
408
194
|
var _default = FormFieldPassword;
|
|
409
195
|
exports.default = _default;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
|
|
14
|
+
var _Popover = _interopRequireDefault(require("../Popover"));
|
|
15
|
+
|
|
16
|
+
var _Translate = _interopRequireDefault(require("../Translate"));
|
|
17
|
+
|
|
18
|
+
var _estimatePassword = _interopRequireWildcard(require("./estimatePassword"));
|
|
19
|
+
|
|
20
|
+
var _enUS = _interopRequireDefault(require("./locale/en-US"));
|
|
21
|
+
|
|
22
|
+
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); }
|
|
23
|
+
|
|
24
|
+
function _interopRequireWildcard(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 = {}; 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; }
|
|
25
|
+
|
|
26
|
+
// Copyright 1999-2022. Plesk International GmbH. All rights reserved.
|
|
27
|
+
const strengthIntents = {
|
|
28
|
+
VeryWeak: 'danger',
|
|
29
|
+
Weak: 'danger',
|
|
30
|
+
Medium: 'warning',
|
|
31
|
+
Strong: 'success',
|
|
32
|
+
VeryStrong: 'success'
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
const PasswordMeter = ({
|
|
36
|
+
value,
|
|
37
|
+
visible,
|
|
38
|
+
onEstimate,
|
|
39
|
+
children,
|
|
40
|
+
...props
|
|
41
|
+
}) => {
|
|
42
|
+
const [result, setResult] = (0, _react.useState)(null);
|
|
43
|
+
(0, _react.useEffect)(() => {
|
|
44
|
+
if (!visible) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
Promise.resolve(onEstimate ? onEstimate(value, _estimatePassword.default, _estimatePassword.DEFAULT_RULES) : (0, _estimatePassword.default)(value)).then(result => {
|
|
49
|
+
setResult(result);
|
|
50
|
+
});
|
|
51
|
+
}, [visible, value, onEstimate]);
|
|
52
|
+
return /*#__PURE__*/_react.default.createElement(_Popover.default, (0, _extends2.default)({
|
|
53
|
+
visible: visible && result !== null,
|
|
54
|
+
target: children,
|
|
55
|
+
placement: "bottom-right",
|
|
56
|
+
intent: result ? strengthIntents[result.strength] : undefined,
|
|
57
|
+
canCloseOnOutsideClick: false,
|
|
58
|
+
canCloseOnEscapePress: false
|
|
59
|
+
}, props), result !== null && result !== void 0 && result.strength ? /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
60
|
+
component: "div",
|
|
61
|
+
content: "FormFieldPassword.passwordStrength",
|
|
62
|
+
fallback: _enUS.default.passwordStrength,
|
|
63
|
+
params: {
|
|
64
|
+
strength: /*#__PURE__*/_react.default.createElement("b", null, /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
65
|
+
content: `FormFieldPassword.strength${result === null || result === void 0 ? void 0 : result.strength}`,
|
|
66
|
+
fallback: _enUS.default[`strength${result === null || result === void 0 ? void 0 : result.strength}`]
|
|
67
|
+
}))
|
|
68
|
+
}
|
|
69
|
+
}) : null, result !== null && result !== void 0 && result.suggestions.length ? /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
70
|
+
content: "FormFieldPassword.improvePassword",
|
|
71
|
+
fallback: _enUS.default.improvePassword
|
|
72
|
+
}), /*#__PURE__*/_react.default.createElement("br", null), /*#__PURE__*/_react.default.createElement("ul", null, result.suggestions.slice(0, 3).map((suggestion, index) => /*#__PURE__*/_react.default.createElement("li", {
|
|
73
|
+
key: index.toString()
|
|
74
|
+
}, suggestion)))) : /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
75
|
+
content: "FormFieldPassword.yourPasswordIsStrong",
|
|
76
|
+
fallback: _enUS.default.yourPasswordIsStrong
|
|
77
|
+
}));
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
var _default = PasswordMeter;
|
|
81
|
+
exports.default = _default;
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = exports.DEFAULT_RULES = void 0;
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _Translate = _interopRequireDefault(require("../Translate"));
|
|
13
|
+
|
|
14
|
+
var _enUS = _interopRequireDefault(require("./locale/en-US"));
|
|
15
|
+
|
|
16
|
+
// Copyright 1999-2022. Plesk International GmbH. All rights reserved.
|
|
17
|
+
const DEFAULT_RULES = [{
|
|
18
|
+
name: 'passwordTooShort',
|
|
19
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
20
|
+
content: `FormFieldPassword.passwordTooShort`,
|
|
21
|
+
fallback: _enUS.default.passwordTooShort
|
|
22
|
+
}),
|
|
23
|
+
|
|
24
|
+
score(passwd) {
|
|
25
|
+
return passwd.length < 5 ? -1 : 0;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
}, {
|
|
29
|
+
name: 'passwordLength',
|
|
30
|
+
|
|
31
|
+
score(passwd) {
|
|
32
|
+
if (passwd.length < 5) {
|
|
33
|
+
return 3;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
if (passwd.length > 4 && passwd.length < 8) {
|
|
37
|
+
return 6;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if (passwd.length > 7 && passwd.length < 16) {
|
|
41
|
+
return 12;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return 18;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
}, {
|
|
48
|
+
name: 'lettersLowerCase',
|
|
49
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
50
|
+
content: `FormFieldPassword.lettersLowerCase`,
|
|
51
|
+
fallback: _enUS.default.lettersLowerCase
|
|
52
|
+
}),
|
|
53
|
+
|
|
54
|
+
score(passwd) {
|
|
55
|
+
// [verified] at least one lower case letter
|
|
56
|
+
return passwd.match(/[a-z]/) ? 1 : -1;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
}, {
|
|
60
|
+
name: 'lettersUpperCase',
|
|
61
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
62
|
+
content: `FormFieldPassword.lettersUpperCase`,
|
|
63
|
+
fallback: _enUS.default.lettersUpperCase
|
|
64
|
+
}),
|
|
65
|
+
|
|
66
|
+
score(passwd) {
|
|
67
|
+
// [verified] at least one upper case letter
|
|
68
|
+
return passwd.match(/[A-Z]/) ? 5 : -1;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
}, {
|
|
72
|
+
name: 'numbers1',
|
|
73
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
74
|
+
content: `FormFieldPassword.numbers1`,
|
|
75
|
+
fallback: _enUS.default.numbers1
|
|
76
|
+
}),
|
|
77
|
+
|
|
78
|
+
score(passwd) {
|
|
79
|
+
// [verified] at least one number
|
|
80
|
+
return passwd.match(/\d+/) ? 5 : -1;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
}, {
|
|
84
|
+
name: 'numbers3',
|
|
85
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
86
|
+
content: `FormFieldPassword.numbers3`,
|
|
87
|
+
fallback: _enUS.default.numbers3
|
|
88
|
+
}),
|
|
89
|
+
|
|
90
|
+
score(passwd) {
|
|
91
|
+
// [verified] at least three numbers
|
|
92
|
+
return passwd.match(/(.*[0-9].*[0-9].*[0-9])/) ? 5 : -1;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
}, {
|
|
96
|
+
name: 'specialChar1',
|
|
97
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
98
|
+
content: `FormFieldPassword.specialChar1`,
|
|
99
|
+
fallback: _enUS.default.specialChar1
|
|
100
|
+
}),
|
|
101
|
+
|
|
102
|
+
score(passwd) {
|
|
103
|
+
// [verified] at least one special character
|
|
104
|
+
return passwd.match(/[!@#$%^&*?_~]/) ? 5 : -1;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
}, {
|
|
108
|
+
name: 'specialChar2',
|
|
109
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
110
|
+
content: `FormFieldPassword.specialChar2`,
|
|
111
|
+
fallback: _enUS.default.specialChar2
|
|
112
|
+
}),
|
|
113
|
+
|
|
114
|
+
score(passwd) {
|
|
115
|
+
// [verified] at least two special characters
|
|
116
|
+
return passwd.match(/(.*[!@#$%^&*?_~].*[!@#$%^&*?_~])/) ? 5 : -1;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
}, {
|
|
120
|
+
name: 'comboUpperAndLower',
|
|
121
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
122
|
+
content: `FormFieldPassword.comboUpperAndLower`,
|
|
123
|
+
fallback: _enUS.default.comboUpperAndLower
|
|
124
|
+
}),
|
|
125
|
+
|
|
126
|
+
score(passwd) {
|
|
127
|
+
// [verified] both upper and lower case
|
|
128
|
+
return passwd.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/) ? 2 : -1;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
}, {
|
|
132
|
+
name: 'comboLettersAndNumbers',
|
|
133
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
134
|
+
content: `FormFieldPassword.comboLettersAndNumbers`,
|
|
135
|
+
fallback: _enUS.default.comboLettersAndNumbers
|
|
136
|
+
}),
|
|
137
|
+
|
|
138
|
+
score(passwd) {
|
|
139
|
+
// [verified] both letters and numbers
|
|
140
|
+
return passwd.match(/([a-zA-Z])/) && passwd.match(/([0-9])/) ? 2 : -1;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
}, {
|
|
144
|
+
name: 'comboLettersNumbersSpecial',
|
|
145
|
+
suggestion: /*#__PURE__*/_react.default.createElement(_Translate.default, {
|
|
146
|
+
content: `FormFieldPassword.comboLettersNumbersSpecial`,
|
|
147
|
+
fallback: _enUS.default.comboLettersNumbersSpecial
|
|
148
|
+
}),
|
|
149
|
+
|
|
150
|
+
score(passwd) {
|
|
151
|
+
// [verified] letters, numbers, and special characters
|
|
152
|
+
return passwd.match(/([a-zA-Z0-9].*[!@#$%^&*?_~])|([!@#$%^&*?_~].*[a-zA-Z0-9])/) ? 2 : -1;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
}];
|
|
156
|
+
exports.DEFAULT_RULES = DEFAULT_RULES;
|
|
157
|
+
|
|
158
|
+
var _default = (password, rules = DEFAULT_RULES) => {
|
|
159
|
+
const suggestions = [];
|
|
160
|
+
let passwordScore = 0;
|
|
161
|
+
rules.forEach(({
|
|
162
|
+
suggestion,
|
|
163
|
+
score
|
|
164
|
+
}) => {
|
|
165
|
+
const ruleScore = score(password);
|
|
166
|
+
|
|
167
|
+
if (ruleScore < 0 && suggestion) {
|
|
168
|
+
suggestions.push(suggestion);
|
|
169
|
+
} else {
|
|
170
|
+
passwordScore += ruleScore;
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
let strength;
|
|
174
|
+
|
|
175
|
+
switch (true) {
|
|
176
|
+
case passwordScore < 16:
|
|
177
|
+
strength = 'VeryWeak';
|
|
178
|
+
break;
|
|
179
|
+
|
|
180
|
+
case passwordScore < 25:
|
|
181
|
+
strength = 'Weak';
|
|
182
|
+
break;
|
|
183
|
+
|
|
184
|
+
case passwordScore < 35:
|
|
185
|
+
strength = 'Medium';
|
|
186
|
+
break;
|
|
187
|
+
|
|
188
|
+
case passwordScore < 45:
|
|
189
|
+
strength = 'Strong';
|
|
190
|
+
break;
|
|
191
|
+
|
|
192
|
+
default:
|
|
193
|
+
strength = 'VeryStrong';
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
return {
|
|
198
|
+
strength,
|
|
199
|
+
suggestions
|
|
200
|
+
};
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
exports.default = _default;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
// Copyright 1999-2022. Plesk International GmbH. All rights reserved.
|
|
8
|
+
const symbolClasses = {
|
|
9
|
+
upper: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',
|
|
10
|
+
lower: 'abcdefghijklmnopqrstuvwxyz',
|
|
11
|
+
number: '0123456789',
|
|
12
|
+
special: '!@#$%^&*?_~'
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
const generatePassword = () => {
|
|
16
|
+
const password = ['upper', 'upper', 'upper', 'lower', 'lower', 'lower', 'lower', 'lower', 'lower', 'lower', 'lower', 'number', 'number', 'number', 'special', 'special'];
|
|
17
|
+
return password.sort((a, b) => Math.floor(b.length * Math.random()) - Math.floor(a.length * Math.random())).map(symbolClass => symbolClasses[symbolClass][Math.floor(symbolClasses[symbolClass].length * Math.random())]).join('');
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
var _default = generatePassword;
|
|
21
|
+
exports.default = _default;
|