@okta/odyssey-react-mui 1.13.11 → 1.14.2
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/CHANGELOG.md +25 -0
- package/dist/@types/properties.d.js +2 -0
- package/dist/@types/properties.d.js.map +1 -0
- package/dist/Accordion.js.map +1 -1
- package/dist/Autocomplete.js.map +1 -1
- package/dist/Badge.js.map +1 -1
- package/dist/Banner.js.map +1 -1
- package/dist/Box.js.map +1 -1
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Button.js +3 -3
- package/dist/Button.js.map +1 -1
- package/dist/Callout.js.map +1 -1
- package/dist/Checkbox.js.map +1 -1
- package/dist/CheckboxGroup.js.map +1 -1
- package/dist/CircularProgress.js.map +1 -1
- package/dist/Dialog.js +8 -8
- package/dist/Dialog.js.map +1 -1
- package/dist/ErrorMessageList.js.map +1 -1
- package/dist/Field.js +1 -0
- package/dist/Field.js.map +1 -1
- package/dist/FieldComponentProps.js.map +1 -1
- package/dist/FieldError.js.map +1 -1
- package/dist/FieldHint.js.map +1 -1
- package/dist/FieldLabel.js.map +1 -1
- package/dist/Fieldset.js.map +1 -1
- package/dist/Form.js.map +1 -1
- package/dist/FormCheckedProps.js.map +1 -1
- package/dist/HintLink.js.map +1 -1
- package/dist/HtmlProps.js.map +1 -1
- package/dist/Link.js.map +1 -1
- package/dist/MenuButton.js.map +1 -1
- package/dist/MenuItem.js.map +1 -1
- package/dist/MuiPropsChild.js.map +1 -1
- package/dist/NativeSelect.js.map +1 -1
- package/dist/OdysseyProvider.js +0 -2
- package/dist/OdysseyProvider.js.map +1 -1
- package/dist/OdysseyThemeProvider.js +1 -28
- package/dist/OdysseyThemeProvider.js.map +1 -1
- package/dist/OdysseyTranslationProvider.js.map +1 -1
- package/dist/PasswordField.js.map +1 -1
- package/dist/Radio.js.map +1 -1
- package/dist/RadioGroup.js.map +1 -1
- package/dist/ScreenReaderText.js.map +1 -1
- package/dist/SearchField.js +6 -2
- package/dist/SearchField.js.map +1 -1
- package/dist/Select.js +144 -44
- package/dist/Select.js.map +1 -1
- package/dist/Status.js +6 -1
- package/dist/Status.js.map +1 -1
- package/dist/Tabs.js +1 -1
- package/dist/Tabs.js.map +1 -1
- package/dist/Tag.js.map +1 -1
- package/dist/TagList.js.map +1 -1
- package/dist/TextField.js.map +1 -1
- package/dist/Tile.js +53 -39
- package/dist/Tile.js.map +1 -1
- package/dist/Toast.js.map +1 -1
- package/dist/Tooltip.js.map +1 -1
- package/dist/Typography.js +11 -10
- package/dist/Typography.js.map +1 -1
- package/dist/createShadowRootElement.js.map +1 -1
- package/dist/getTypedObjectKeys.js.map +1 -1
- package/dist/icons.generated/AddCircle.js.map +1 -1
- package/dist/icons.generated/Apps.js.map +1 -1
- package/dist/icons.generated/ArrowBottom.js.map +1 -1
- package/dist/icons.generated/ArrowDown.js.map +1 -1
- package/dist/icons.generated/ArrowLeft.js.map +1 -1
- package/dist/icons.generated/ArrowRight.js.map +1 -1
- package/dist/icons.generated/ArrowTop.js.map +1 -1
- package/dist/icons.generated/ArrowUp.js.map +1 -1
- package/dist/icons.generated/Calendar.js.map +1 -1
- package/dist/icons.generated/Call.js.map +1 -1
- package/dist/icons.generated/Chat.js.map +1 -1
- package/dist/icons.generated/Check.js.map +1 -1
- package/dist/icons.generated/ChevronDown.js.map +1 -1
- package/dist/icons.generated/ChevronLeft.js.map +1 -1
- package/dist/icons.generated/ChevronUp.js.map +1 -1
- package/dist/icons.generated/Clock.js.map +1 -1
- package/dist/icons.generated/Close.js.map +1 -1
- package/dist/icons.generated/Copy.js.map +1 -1
- package/dist/icons.generated/Delete.js.map +1 -1
- package/dist/icons.generated/Deny.js.map +1 -1
- package/dist/icons.generated/Devices.js.map +1 -1
- package/dist/icons.generated/Directory.js.map +1 -1
- package/dist/icons.generated/Download.js.map +1 -1
- package/dist/icons.generated/Edit.js.map +1 -1
- package/dist/icons.generated/ExpandLeft.js.map +1 -1
- package/dist/icons.generated/ExpandRight.js.map +1 -1
- package/dist/icons.generated/Filter.js.map +1 -1
- package/dist/icons.generated/Folder.js.map +1 -1
- package/dist/icons.generated/Globe.js.map +1 -1
- package/dist/icons.generated/Grid.js.map +1 -1
- package/dist/icons.generated/Group.js.map +1 -1
- package/dist/icons.generated/Hide.js.map +1 -1
- package/dist/icons.generated/Home.js.map +1 -1
- package/dist/icons.generated/Link.js.map +1 -1
- package/dist/icons.generated/List.js.map +1 -1
- package/dist/icons.generated/Lock.js.map +1 -1
- package/dist/icons.generated/More.js.map +1 -1
- package/dist/icons.generated/Pause.js.map +1 -1
- package/dist/icons.generated/Refresh.js.map +1 -1
- package/dist/icons.generated/Reset.js.map +1 -1
- package/dist/icons.generated/Resume.js.map +1 -1
- package/dist/icons.generated/Search.js.map +1 -1
- package/dist/icons.generated/Server.js.map +1 -1
- package/dist/icons.generated/Settings.js.map +1 -1
- package/dist/icons.generated/Show.js.map +1 -1
- package/dist/icons.generated/Subtract.js.map +1 -1
- package/dist/icons.generated/Sync.js.map +1 -1
- package/dist/icons.generated/Unlock.js.map +1 -1
- package/dist/icons.generated/Upload.js.map +1 -1
- package/dist/icons.generated/User.js.map +1 -1
- package/dist/icons.generated/Video.js.map +1 -1
- package/dist/icons.generated/Warning.js.map +1 -1
- package/dist/icons.generated/index.js +1 -1
- package/dist/icons.generated/index.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/labs/DataFilters.js.map +1 -1
- package/dist/labs/DataTable.js.map +1 -1
- package/dist/labs/DatePicker.js.map +1 -1
- package/dist/labs/Drawer.js +172 -0
- package/dist/labs/Drawer.js.map +1 -0
- package/dist/labs/GroupPicker.js.map +1 -1
- package/dist/labs/PaginatedTable.js.map +1 -1
- package/dist/labs/StaticTable.js.map +1 -1
- package/dist/labs/Switch.js.map +1 -1
- package/dist/labs/VirtualizedAutocomplete.js.map +1 -1
- package/dist/labs/datePickerTheme.js.map +1 -1
- package/dist/labs/index.js +1 -0
- package/dist/labs/index.js.map +1 -1
- package/dist/labs/materialReactTableTypes.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_cs.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_cs.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_da.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_da.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_de.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_de.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_el.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_el.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_es.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_es.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_fi.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_fi.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_fr.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_fr.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_hu.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_hu.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_id.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_id.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_it.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_it.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ja.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_ja.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ko.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_ko.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ms.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_ms.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_nb.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_nb.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_nl_NL.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_nl_NL.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_pl.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_pl.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_pt_BR.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_pt_BR.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ro.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_ro.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_ru.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_ru.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_sv.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_sv.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_th.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_th.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_tr.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_tr.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_uk.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_uk.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_vi.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_vi.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_zh_CN.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_zh_CN.js.map +1 -1
- package/dist/properties/ts/odyssey-react-mui_zh_TW.js +4 -2
- package/dist/properties/ts/odyssey-react-mui_zh_TW.js.map +1 -1
- package/dist/scripts/properties-to-ts.d.ts +14 -0
- package/dist/scripts/properties-to-ts.d.ts.map +1 -0
- package/dist/src/Accordion.d.ts +2 -2
- package/dist/src/Accordion.d.ts.map +1 -1
- package/dist/src/Autocomplete.d.ts +2 -2
- package/dist/src/Autocomplete.d.ts.map +1 -1
- package/dist/src/Badge.d.ts +2 -2
- package/dist/src/Badge.d.ts.map +1 -1
- package/dist/src/Banner.d.ts +2 -2
- package/dist/src/Banner.d.ts.map +1 -1
- package/dist/src/Box.d.ts +2 -2
- package/dist/src/Box.d.ts.map +1 -1
- package/dist/src/Breadcrumbs.d.ts +3 -3
- package/dist/src/Breadcrumbs.d.ts.map +1 -1
- package/dist/src/Button.d.ts +3 -30
- package/dist/src/Button.d.ts.map +1 -1
- package/dist/src/Callout.d.ts +2 -2
- package/dist/src/Callout.d.ts.map +1 -1
- package/dist/src/Checkbox.d.ts +3 -23
- package/dist/src/Checkbox.d.ts.map +1 -1
- package/dist/src/CheckboxGroup.d.ts +2 -2
- package/dist/src/CheckboxGroup.d.ts.map +1 -1
- package/dist/src/CircularProgress.d.ts +2 -6
- package/dist/src/CircularProgress.d.ts.map +1 -1
- package/dist/src/CssBaseline.d.ts +1 -1
- package/dist/src/CssBaseline.d.ts.map +1 -1
- package/dist/src/Dialog.d.ts +5 -5
- package/dist/src/Dialog.d.ts.map +1 -1
- package/dist/src/ErrorMessageList.d.ts +1 -1
- package/dist/src/ErrorMessageList.d.ts.map +1 -1
- package/dist/src/Field.d.ts +2 -5
- package/dist/src/Field.d.ts.map +1 -1
- package/dist/src/FieldComponentProps.d.ts +7 -4
- package/dist/src/FieldComponentProps.d.ts.map +1 -1
- package/dist/src/FieldError.d.ts +2 -2
- package/dist/src/FieldError.d.ts.map +1 -1
- package/dist/src/FieldHint.d.ts +2 -2
- package/dist/src/FieldHint.d.ts.map +1 -1
- package/dist/src/FieldLabel.d.ts +2 -2
- package/dist/src/FieldLabel.d.ts.map +1 -1
- package/dist/src/Fieldset.d.ts +2 -2
- package/dist/src/Fieldset.d.ts.map +1 -1
- package/dist/src/Form.d.ts +2 -2
- package/dist/src/Form.d.ts.map +1 -1
- package/dist/src/HintLink.d.ts +1 -1
- package/dist/src/HintLink.d.ts.map +1 -1
- package/dist/src/HtmlProps.d.ts +59 -0
- package/dist/src/HtmlProps.d.ts.map +1 -1
- package/dist/src/Link.d.ts +2 -6
- package/dist/src/Link.d.ts.map +1 -1
- package/dist/src/MenuButton.d.ts +5 -23
- package/dist/src/MenuButton.d.ts.map +1 -1
- package/dist/src/MenuItem.d.ts +2 -2
- package/dist/src/MenuItem.d.ts.map +1 -1
- package/dist/src/NativeSelect.d.ts +2 -2
- package/dist/src/NativeSelect.d.ts.map +1 -1
- package/dist/src/OdysseyCacheProvider.d.ts +1 -1
- package/dist/src/OdysseyCacheProvider.d.ts.map +1 -1
- package/dist/src/OdysseyProvider.d.ts +1 -1
- package/dist/src/OdysseyProvider.d.ts.map +1 -1
- package/dist/src/OdysseyThemeProvider.d.ts +1 -3
- package/dist/src/OdysseyThemeProvider.d.ts.map +1 -1
- package/dist/src/OdysseyTranslationProvider.d.ts +2 -2
- package/dist/src/OdysseyTranslationProvider.d.ts.map +1 -1
- package/dist/src/PasswordField.d.ts +2 -2
- package/dist/src/PasswordField.d.ts.map +1 -1
- package/dist/src/Radio.d.ts +2 -2
- package/dist/src/Radio.d.ts.map +1 -1
- package/dist/src/RadioGroup.d.ts +2 -2
- package/dist/src/RadioGroup.d.ts.map +1 -1
- package/dist/src/ScreenReaderText.d.ts +2 -2
- package/dist/src/ScreenReaderText.d.ts.map +1 -1
- package/dist/src/SearchField.d.ts +11 -2
- package/dist/src/SearchField.d.ts.map +1 -1
- package/dist/src/Select.d.ts +2 -2
- package/dist/src/Select.d.ts.map +1 -1
- package/dist/src/Status.d.ts +4 -2
- package/dist/src/Status.d.ts.map +1 -1
- package/dist/src/Tabs.d.ts +2 -6
- package/dist/src/Tabs.d.ts.map +1 -1
- package/dist/src/Tag.d.ts +2 -2
- package/dist/src/Tag.d.ts.map +1 -1
- package/dist/src/TagList.d.ts +2 -2
- package/dist/src/TagList.d.ts.map +1 -1
- package/dist/src/TextField.d.ts +3 -3
- package/dist/src/TextField.d.ts.map +1 -1
- package/dist/src/Tile.d.ts +32 -11
- package/dist/src/Tile.d.ts.map +1 -1
- package/dist/src/Toast.d.ts +2 -2
- package/dist/src/Toast.d.ts.map +1 -1
- package/dist/src/ToastStack.d.ts +1 -1
- package/dist/src/ToastStack.d.ts.map +1 -1
- package/dist/src/Tooltip.d.ts +2 -2
- package/dist/src/Tooltip.d.ts.map +1 -1
- package/dist/src/Typography.d.ts +13 -25
- package/dist/src/Typography.d.ts.map +1 -1
- package/dist/src/icons.generated/Add.d.ts +1 -1
- package/dist/src/icons.generated/Add.d.ts.map +1 -1
- package/dist/src/icons.generated/AddCircle.d.ts +1 -1
- package/dist/src/icons.generated/AddCircle.d.ts.map +1 -1
- package/dist/src/icons.generated/Apps.d.ts +1 -1
- package/dist/src/icons.generated/Apps.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowBottom.d.ts +1 -1
- package/dist/src/icons.generated/ArrowBottom.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowDown.d.ts +1 -1
- package/dist/src/icons.generated/ArrowDown.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowLeft.d.ts +1 -1
- package/dist/src/icons.generated/ArrowLeft.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowLowerLeft.d.ts +1 -1
- package/dist/src/icons.generated/ArrowLowerLeft.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowLowerRight.d.ts +1 -1
- package/dist/src/icons.generated/ArrowLowerRight.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowRight.d.ts +1 -1
- package/dist/src/icons.generated/ArrowRight.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowTop.d.ts +1 -1
- package/dist/src/icons.generated/ArrowTop.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowUnsorted.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUnsorted.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowUp.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUp.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowUpperLeft.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUpperLeft.d.ts.map +1 -1
- package/dist/src/icons.generated/ArrowUpperRight.d.ts +1 -1
- package/dist/src/icons.generated/ArrowUpperRight.d.ts.map +1 -1
- package/dist/src/icons.generated/Bug.d.ts +1 -1
- package/dist/src/icons.generated/Bug.d.ts.map +1 -1
- package/dist/src/icons.generated/Calendar.d.ts +1 -1
- package/dist/src/icons.generated/Calendar.d.ts.map +1 -1
- package/dist/src/icons.generated/Call.d.ts +1 -1
- package/dist/src/icons.generated/Call.d.ts.map +1 -1
- package/dist/src/icons.generated/Chat.d.ts +1 -1
- package/dist/src/icons.generated/Chat.d.ts.map +1 -1
- package/dist/src/icons.generated/Check.d.ts +1 -1
- package/dist/src/icons.generated/Check.d.ts.map +1 -1
- package/dist/src/icons.generated/CheckCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/CheckCircleFilled.d.ts.map +1 -1
- package/dist/src/icons.generated/ChevronDown.d.ts +1 -1
- package/dist/src/icons.generated/ChevronDown.d.ts.map +1 -1
- package/dist/src/icons.generated/ChevronLeft.d.ts +1 -1
- package/dist/src/icons.generated/ChevronLeft.d.ts.map +1 -1
- package/dist/src/icons.generated/ChevronRight.d.ts +1 -1
- package/dist/src/icons.generated/ChevronRight.d.ts.map +1 -1
- package/dist/src/icons.generated/ChevronUp.d.ts +1 -1
- package/dist/src/icons.generated/ChevronUp.d.ts.map +1 -1
- package/dist/src/icons.generated/Clock.d.ts +1 -1
- package/dist/src/icons.generated/Clock.d.ts.map +1 -1
- package/dist/src/icons.generated/Close.d.ts +1 -1
- package/dist/src/icons.generated/Close.d.ts.map +1 -1
- package/dist/src/icons.generated/CloseCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/CloseCircleFilled.d.ts.map +1 -1
- package/dist/src/icons.generated/CollapseLeft.d.ts +1 -1
- package/dist/src/icons.generated/CollapseLeft.d.ts.map +1 -1
- package/dist/src/icons.generated/CollapseRight.d.ts +1 -1
- package/dist/src/icons.generated/CollapseRight.d.ts.map +1 -1
- package/dist/src/icons.generated/Copy.d.ts +1 -1
- package/dist/src/icons.generated/Copy.d.ts.map +1 -1
- package/dist/src/icons.generated/DangerDiamond.d.ts +1 -1
- package/dist/src/icons.generated/DangerDiamond.d.ts.map +1 -1
- package/dist/src/icons.generated/DangerDiamondFilled.d.ts +1 -1
- package/dist/src/icons.generated/DangerDiamondFilled.d.ts.map +1 -1
- package/dist/src/icons.generated/Delete.d.ts +1 -1
- package/dist/src/icons.generated/Delete.d.ts.map +1 -1
- package/dist/src/icons.generated/Deny.d.ts +1 -1
- package/dist/src/icons.generated/Deny.d.ts.map +1 -1
- package/dist/src/icons.generated/Devices.d.ts +1 -1
- package/dist/src/icons.generated/Devices.d.ts.map +1 -1
- package/dist/src/icons.generated/Directory.d.ts +1 -1
- package/dist/src/icons.generated/Directory.d.ts.map +1 -1
- package/dist/src/icons.generated/Documentation.d.ts +1 -1
- package/dist/src/icons.generated/Documentation.d.ts.map +1 -1
- package/dist/src/icons.generated/Download.d.ts +1 -1
- package/dist/src/icons.generated/Download.d.ts.map +1 -1
- package/dist/src/icons.generated/DragIndicator.d.ts +1 -1
- package/dist/src/icons.generated/DragIndicator.d.ts.map +1 -1
- package/dist/src/icons.generated/Edit.d.ts +1 -1
- package/dist/src/icons.generated/Edit.d.ts.map +1 -1
- package/dist/src/icons.generated/ExpandLeft.d.ts +1 -1
- package/dist/src/icons.generated/ExpandLeft.d.ts.map +1 -1
- package/dist/src/icons.generated/ExpandRight.d.ts +1 -1
- package/dist/src/icons.generated/ExpandRight.d.ts.map +1 -1
- package/dist/src/icons.generated/ExternalLink.d.ts +1 -1
- package/dist/src/icons.generated/ExternalLink.d.ts.map +1 -1
- package/dist/src/icons.generated/Filter.d.ts +1 -1
- package/dist/src/icons.generated/Filter.d.ts.map +1 -1
- package/dist/src/icons.generated/Folder.d.ts +1 -1
- package/dist/src/icons.generated/Folder.d.ts.map +1 -1
- package/dist/src/icons.generated/Globe.d.ts +1 -1
- package/dist/src/icons.generated/Globe.d.ts.map +1 -1
- package/dist/src/icons.generated/Grid.d.ts +1 -1
- package/dist/src/icons.generated/Grid.d.ts.map +1 -1
- package/dist/src/icons.generated/Group.d.ts +1 -1
- package/dist/src/icons.generated/Group.d.ts.map +1 -1
- package/dist/src/icons.generated/Hide.d.ts +1 -1
- package/dist/src/icons.generated/Hide.d.ts.map +1 -1
- package/dist/src/icons.generated/Home.d.ts +1 -1
- package/dist/src/icons.generated/Home.d.ts.map +1 -1
- package/dist/src/icons.generated/InformationCircle.d.ts +1 -1
- package/dist/src/icons.generated/InformationCircle.d.ts.map +1 -1
- package/dist/src/icons.generated/InformationCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/InformationCircleFilled.d.ts.map +1 -1
- package/dist/src/icons.generated/Link.d.ts +1 -1
- package/dist/src/icons.generated/Link.d.ts.map +1 -1
- package/dist/src/icons.generated/List.d.ts +1 -1
- package/dist/src/icons.generated/List.d.ts.map +1 -1
- package/dist/src/icons.generated/Lock.d.ts +1 -1
- package/dist/src/icons.generated/Lock.d.ts.map +1 -1
- package/dist/src/icons.generated/More.d.ts +1 -1
- package/dist/src/icons.generated/More.d.ts.map +1 -1
- package/dist/src/icons.generated/Notification.d.ts +1 -1
- package/dist/src/icons.generated/Notification.d.ts.map +1 -1
- package/dist/src/icons.generated/Pause.d.ts +1 -1
- package/dist/src/icons.generated/Pause.d.ts.map +1 -1
- package/dist/src/icons.generated/QuestionCircle.d.ts +1 -1
- package/dist/src/icons.generated/QuestionCircle.d.ts.map +1 -1
- package/dist/src/icons.generated/QuestionCircleFilled.d.ts +1 -1
- package/dist/src/icons.generated/QuestionCircleFilled.d.ts.map +1 -1
- package/dist/src/icons.generated/Refresh.d.ts +1 -1
- package/dist/src/icons.generated/Refresh.d.ts.map +1 -1
- package/dist/src/icons.generated/Reset.d.ts +1 -1
- package/dist/src/icons.generated/Reset.d.ts.map +1 -1
- package/dist/src/icons.generated/Resume.d.ts +1 -1
- package/dist/src/icons.generated/Resume.d.ts.map +1 -1
- package/dist/src/icons.generated/Search.d.ts +1 -1
- package/dist/src/icons.generated/Search.d.ts.map +1 -1
- package/dist/src/icons.generated/Server.d.ts +1 -1
- package/dist/src/icons.generated/Server.d.ts.map +1 -1
- package/dist/src/icons.generated/Settings.d.ts +1 -1
- package/dist/src/icons.generated/Settings.d.ts.map +1 -1
- package/dist/src/icons.generated/Show.d.ts +1 -1
- package/dist/src/icons.generated/Show.d.ts.map +1 -1
- package/dist/src/icons.generated/Subtract.d.ts +1 -1
- package/dist/src/icons.generated/Subtract.d.ts.map +1 -1
- package/dist/src/icons.generated/Sync.d.ts +1 -1
- package/dist/src/icons.generated/Sync.d.ts.map +1 -1
- package/dist/src/icons.generated/Unlock.d.ts +1 -1
- package/dist/src/icons.generated/Unlock.d.ts.map +1 -1
- package/dist/src/icons.generated/Upload.d.ts +1 -1
- package/dist/src/icons.generated/Upload.d.ts.map +1 -1
- package/dist/src/icons.generated/User.d.ts +1 -1
- package/dist/src/icons.generated/User.d.ts.map +1 -1
- package/dist/src/icons.generated/Video.d.ts +1 -1
- package/dist/src/icons.generated/Video.d.ts.map +1 -1
- package/dist/src/icons.generated/Warning.d.ts +1 -1
- package/dist/src/icons.generated/Warning.d.ts.map +1 -1
- package/dist/src/icons.generated/WarningFilled.d.ts +1 -1
- package/dist/src/icons.generated/WarningFilled.d.ts.map +1 -1
- package/dist/src/icons.generated/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/labs/DataFilters.d.ts +1 -1
- package/dist/src/labs/DataFilters.d.ts.map +1 -1
- package/dist/src/labs/DataTable.d.ts +1 -1
- package/dist/src/labs/DataTable.d.ts.map +1 -1
- package/dist/src/labs/DataTablePagination.d.ts +1 -1
- package/dist/src/labs/DataTablePagination.d.ts.map +1 -1
- package/dist/src/labs/DatePicker.d.ts +1 -1
- package/dist/src/labs/DatePicker.d.ts.map +1 -1
- package/dist/src/labs/Drawer.d.ts +56 -0
- package/dist/src/labs/Drawer.d.ts.map +1 -0
- package/dist/src/labs/GroupPicker.d.ts +1 -1
- package/dist/src/labs/GroupPicker.d.ts.map +1 -1
- package/dist/src/labs/PaginatedTable.d.ts +1 -1
- package/dist/src/labs/PaginatedTable.d.ts.map +1 -1
- package/dist/src/labs/StaticTable.d.ts +1 -1
- package/dist/src/labs/StaticTable.d.ts.map +1 -1
- package/dist/src/labs/Switch.d.ts +2 -2
- package/dist/src/labs/Switch.d.ts.map +1 -1
- package/dist/src/labs/VirtualizedAutocomplete.d.ts +2 -2
- package/dist/src/labs/VirtualizedAutocomplete.d.ts.map +1 -1
- package/dist/src/labs/datePickerTheme.d.ts.map +1 -1
- package/dist/src/labs/index.d.ts +1 -0
- package/dist/src/labs/index.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_cs.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_da.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_da.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_de.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_de.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_el.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_el.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_es.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_es.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_fi.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_fr.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_hu.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_id.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_id.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_it.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_it.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_ja.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_ko.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_ms.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_nb.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_nl_NL.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_pl.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_pt_BR.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_ro.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_ru.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_sv.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_th.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_th.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_tr.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_uk.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_vi.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_zh_CN.d.ts.map +1 -1
- package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts +3 -1
- package/dist/src/properties/ts/odyssey-react-mui_zh_TW.d.ts.map +1 -1
- package/dist/src/theme/components.d.ts.map +1 -1
- package/dist/theme/components.js +60 -8
- package/dist/theme/components.js.map +1 -1
- package/dist/tsconfig.production.tsbuildinfo +1 -1
- package/package.json +15 -15
- package/scripts/generateIconsIndex.ts +2 -2
- package/scripts/{properties-to-ts.js → properties-to-ts.ts} +55 -41
- package/src/@types/properties.d.ts +292 -0
- package/src/Accordion.tsx +1 -1
- package/src/Autocomplete.tsx +17 -9
- package/src/Badge.tsx +1 -1
- package/src/Banner.tsx +1 -1
- package/src/Box.tsx +2 -2
- package/src/Breadcrumbs.tsx +2 -2
- package/src/Button.tsx +26 -38
- package/src/Callout.tsx +1 -1
- package/src/Checkbox.tsx +9 -29
- package/src/CheckboxGroup.tsx +20 -5
- package/src/CircularProgress.tsx +1 -5
- package/src/Dialog.tsx +18 -17
- package/src/ErrorMessageList.tsx +1 -1
- package/src/Field.tsx +6 -9
- package/src/FieldComponentProps.ts +8 -4
- package/src/FieldError.tsx +2 -2
- package/src/FieldHint.tsx +1 -1
- package/src/FieldLabel.tsx +2 -2
- package/src/Fieldset.tsx +2 -2
- package/src/Form.tsx +1 -1
- package/src/FormCheckedProps.ts +3 -3
- package/src/HintLink.tsx +1 -1
- package/src/HtmlProps.ts +60 -0
- package/src/Link.tsx +2 -6
- package/src/MenuButton.tsx +21 -36
- package/src/MenuItem.tsx +2 -2
- package/src/MuiPropsChild.tsx +2 -2
- package/src/NativeSelect.tsx +24 -13
- package/src/OdysseyCacheProvider.test.tsx +3 -3
- package/src/OdysseyProvider.tsx +1 -3
- package/src/OdysseyThemeProvider.tsx +8 -35
- package/src/OdysseyTranslationProvider.test.tsx +6 -6
- package/src/OdysseyTranslationProvider.tsx +7 -7
- package/src/PasswordField.tsx +23 -10
- package/src/Radio.tsx +4 -4
- package/src/RadioGroup.tsx +22 -7
- package/src/ScreenReaderText.tsx +1 -1
- package/src/SearchField.tsx +25 -12
- package/src/Select.tsx +219 -77
- package/src/Status.tsx +8 -2
- package/src/Tabs.tsx +7 -11
- package/src/Tag.tsx +4 -4
- package/src/TagList.tsx +2 -2
- package/src/TextField.tsx +22 -9
- package/src/Tile.tsx +74 -43
- package/src/Toast.tsx +1 -1
- package/src/Tooltip.tsx +1 -1
- package/src/Typography.tsx +20 -28
- package/src/createShadowRootElement.ts +1 -1
- package/src/getTypedObjectKeys.ts +1 -1
- package/src/icons.generated/AddCircle.tsx +1 -1
- package/src/icons.generated/Apps.tsx +1 -1
- package/src/icons.generated/ArrowBottom.tsx +1 -1
- package/src/icons.generated/ArrowDown.tsx +1 -1
- package/src/icons.generated/ArrowLeft.tsx +1 -1
- package/src/icons.generated/ArrowRight.tsx +1 -1
- package/src/icons.generated/ArrowTop.tsx +1 -1
- package/src/icons.generated/ArrowUp.tsx +1 -1
- package/src/icons.generated/Calendar.tsx +1 -1
- package/src/icons.generated/Call.tsx +1 -1
- package/src/icons.generated/Chat.tsx +1 -1
- package/src/icons.generated/Check.tsx +1 -1
- package/src/icons.generated/ChevronDown.tsx +1 -1
- package/src/icons.generated/ChevronLeft.tsx +1 -1
- package/src/icons.generated/ChevronUp.tsx +1 -1
- package/src/icons.generated/Clock.tsx +1 -1
- package/src/icons.generated/Close.tsx +1 -1
- package/src/icons.generated/Copy.tsx +1 -1
- package/src/icons.generated/Delete.tsx +1 -1
- package/src/icons.generated/Deny.tsx +1 -1
- package/src/icons.generated/Devices.tsx +1 -1
- package/src/icons.generated/Directory.tsx +1 -1
- package/src/icons.generated/Download.tsx +1 -1
- package/src/icons.generated/Edit.tsx +1 -1
- package/src/icons.generated/ExpandLeft.tsx +1 -1
- package/src/icons.generated/ExpandRight.tsx +1 -1
- package/src/icons.generated/Filter.tsx +1 -1
- package/src/icons.generated/Folder.tsx +1 -1
- package/src/icons.generated/Globe.tsx +1 -1
- package/src/icons.generated/Grid.tsx +1 -1
- package/src/icons.generated/Group.tsx +1 -1
- package/src/icons.generated/Hide.tsx +1 -1
- package/src/icons.generated/Home.tsx +1 -1
- package/src/icons.generated/Link.tsx +1 -1
- package/src/icons.generated/List.tsx +1 -1
- package/src/icons.generated/Lock.tsx +1 -1
- package/src/icons.generated/More.tsx +1 -1
- package/src/icons.generated/Pause.tsx +1 -1
- package/src/icons.generated/Refresh.tsx +1 -1
- package/src/icons.generated/Reset.tsx +1 -1
- package/src/icons.generated/Resume.tsx +1 -1
- package/src/icons.generated/Search.tsx +1 -1
- package/src/icons.generated/Server.tsx +1 -1
- package/src/icons.generated/Settings.tsx +1 -1
- package/src/icons.generated/Show.tsx +1 -1
- package/src/icons.generated/Subtract.tsx +1 -1
- package/src/icons.generated/Sync.tsx +1 -1
- package/src/icons.generated/Unlock.tsx +1 -1
- package/src/icons.generated/Upload.tsx +1 -1
- package/src/icons.generated/User.tsx +1 -1
- package/src/icons.generated/Video.tsx +1 -1
- package/src/icons.generated/Warning.tsx +1 -1
- package/src/icons.generated/index.ts +1 -1
- package/src/index.ts +0 -1
- package/src/labs/DataFilters.tsx +36 -30
- package/src/labs/DataTable.tsx +20 -20
- package/src/labs/DatePicker.tsx +3 -1
- package/src/labs/Drawer.tsx +254 -0
- package/src/labs/GroupPicker.tsx +34 -15
- package/src/labs/PaginatedTable.tsx +12 -10
- package/src/labs/StaticTable.tsx +3 -3
- package/src/labs/Switch.tsx +5 -5
- package/src/labs/VirtualizedAutocomplete.tsx +19 -16
- package/src/labs/datePickerTheme.tsx +4 -2
- package/src/labs/index.ts +2 -0
- package/src/labs/materialReactTableTypes.tsx +1 -1
- package/src/properties/translations/odyssey-react-mui_cs.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_da.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_de.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_el.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_es.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_fi.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_fr.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_hu.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_id.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_it.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_ja.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_ko.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_ms.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_nb.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_nl_NL.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_pl.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_pt_BR.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_ro.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_ru.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_sv.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_th.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_tr.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_uk.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_vi.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_zh_CN.properties +3 -1
- package/src/properties/translations/odyssey-react-mui_zh_TW.properties +3 -1
- package/src/properties/ts/odyssey-react-mui_cs.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_da.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_de.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_el.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_es.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_fi.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_fr.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_hu.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_id.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_it.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ja.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ko.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ms.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_nb.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_nl_NL.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_pl.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_pt_BR.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ro.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_ru.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_sv.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_th.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_tr.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_uk.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_vi.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_zh_CN.ts +1 -1
- package/src/properties/ts/odyssey-react-mui_zh_TW.ts +1 -1
- package/src/theme/components.tsx +83 -16
- package/tsconfig.json +0 -3
package/src/HtmlProps.ts
CHANGED
|
@@ -10,7 +10,67 @@
|
|
|
10
10
|
* See the License for the specific language governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
+
import { HTMLAttributes } from "react";
|
|
14
|
+
|
|
13
15
|
export type HtmlProps = {
|
|
16
|
+
/**
|
|
17
|
+
* Used in [ARIA live regions](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Live_Regions), the global aria-busy state indicates an element is being modified and that assistive technologies may want to wait until the changes are complete before informing the user about the update.
|
|
18
|
+
*/
|
|
19
|
+
ariaBusy?: HTMLAttributes<HTMLElement>["aria-busy"];
|
|
20
|
+
/**
|
|
21
|
+
* The `aria-checked` attribute indicates the current "checked" state of checkboxes, radio buttons, and other widgets.
|
|
22
|
+
*
|
|
23
|
+
* NOTE: Where possible use an HTML `<input>` element with `type="checkbox"` and `type="radio"` as these have built in semantics and do not require ARIA attributes.
|
|
24
|
+
*/
|
|
25
|
+
ariaChecked?: HTMLAttributes<HTMLElement>["aria-checked"];
|
|
26
|
+
/**
|
|
27
|
+
* The global `aria-controls` property identifies the element (or elements) whose contents or presence are controlled by the element on which this attribute is set.
|
|
28
|
+
*
|
|
29
|
+
* Value: A space-separated list of one or more ID values referencing the elements being controlled by the current element
|
|
30
|
+
*/
|
|
31
|
+
ariaControls?: HTMLAttributes<HTMLElement>["aria-controls"];
|
|
32
|
+
/**
|
|
33
|
+
* The global `aria-describedby` attribute identifies the element (or elements) that describes the element on which the attribute is set.
|
|
34
|
+
*
|
|
35
|
+
* Value: The id or space-separated list of element ids that describe the current element.
|
|
36
|
+
*
|
|
37
|
+
* Note: The `aria-describedby` attribute is not designed to reference descriptions from external resources. It must reference elements in the same DOM document.
|
|
38
|
+
*/
|
|
39
|
+
ariaDescribedBy?: HTMLAttributes<HTMLElement>["aria-describedby"];
|
|
40
|
+
/**
|
|
41
|
+
* The `aria-errormessage` attribute on an object identifies the element that provides an error message for that object.
|
|
42
|
+
*
|
|
43
|
+
* Value: The value of the id of the element containing the error message for the current element
|
|
44
|
+
*/
|
|
45
|
+
ariaErrorMessage?: HTMLAttributes<HTMLElement>["aria-errormessage"];
|
|
46
|
+
/**
|
|
47
|
+
* The `aria-expanded` attribute is set on an element to indicate if a control is expanded or collapsed, and whether or not the controlled elements are displayed or hidden.
|
|
48
|
+
*/
|
|
49
|
+
ariaExpanded?: HTMLAttributes<HTMLElement>["aria-expanded"];
|
|
50
|
+
/**
|
|
51
|
+
* The `aria-haspopup` attribute indicates the availability and type of interactive popup element that can be triggered by the element on which the attribute is set.
|
|
52
|
+
*/
|
|
53
|
+
ariaHasPopup?: HTMLAttributes<HTMLElement>["aria-haspopup"];
|
|
54
|
+
/**
|
|
55
|
+
* The `aria-label` attribute defines a string value that labels an interactive element.
|
|
56
|
+
*/
|
|
57
|
+
ariaLabel?: HTMLAttributes<HTMLElement>["aria-label"];
|
|
58
|
+
/**
|
|
59
|
+
* The `aria-labelledby` attribute identifies the element (or elements) that labels the element it is applied to.
|
|
60
|
+
*
|
|
61
|
+
* Value: Space separated list of one or more ID values referencing the elements that label the current element.
|
|
62
|
+
*/
|
|
63
|
+
ariaLabelledBy?: HTMLAttributes<HTMLElement>["aria-labelledby"];
|
|
64
|
+
/**
|
|
65
|
+
* The `aria-pressed` attribute indicates the current "pressed" state of a toggle button.
|
|
66
|
+
*/
|
|
67
|
+
ariaPressed?: HTMLAttributes<HTMLElement>["aria-pressed"];
|
|
68
|
+
/**
|
|
69
|
+
* The `tabindex` global attribute allows developers to make HTML elements focusable, allow or prevent them from being sequentially focusable
|
|
70
|
+
*
|
|
71
|
+
* Note: Manipulating the natural tab order is generally advised against
|
|
72
|
+
*/
|
|
73
|
+
tabIndex?: HTMLAttributes<HTMLElement>["tabIndex"];
|
|
14
74
|
/**
|
|
15
75
|
* This prop puts a `data` attribute on an HTML element in this component with the value provided.
|
|
16
76
|
*
|
package/src/Link.tsx
CHANGED
|
@@ -20,10 +20,6 @@ import { Link as MuiLink, LinkProps as MuiLinkProps } from "@mui/material";
|
|
|
20
20
|
export const linkVariantValues = ["default", "monochrome"] as const;
|
|
21
21
|
|
|
22
22
|
export type LinkProps = {
|
|
23
|
-
/**
|
|
24
|
-
* The ARIA label for the Link
|
|
25
|
-
*/
|
|
26
|
-
ariaLabel?: string;
|
|
27
23
|
/**
|
|
28
24
|
* The content within the Link
|
|
29
25
|
*/
|
|
@@ -61,7 +57,7 @@ export type LinkProps = {
|
|
|
61
57
|
* The visual presentation of the Link (default or monochrome)
|
|
62
58
|
*/
|
|
63
59
|
variant?: (typeof linkVariantValues)[number];
|
|
64
|
-
} & HtmlProps
|
|
60
|
+
} & Pick<HtmlProps, "ariaLabel" | "testId" | "translate">;
|
|
65
61
|
|
|
66
62
|
const Link = ({
|
|
67
63
|
ariaLabel,
|
|
@@ -86,7 +82,7 @@ const Link = ({
|
|
|
86
82
|
},
|
|
87
83
|
};
|
|
88
84
|
},
|
|
89
|
-
[]
|
|
85
|
+
[],
|
|
90
86
|
);
|
|
91
87
|
|
|
92
88
|
return (
|
package/src/MenuButton.tsx
CHANGED
|
@@ -34,18 +34,6 @@ import type { HtmlProps } from "./HtmlProps";
|
|
|
34
34
|
export const menuAlignmentValues = ["left", "right"] as const;
|
|
35
35
|
|
|
36
36
|
export type MenuButtonProps = {
|
|
37
|
-
/**
|
|
38
|
-
* The ARIA label for the Button
|
|
39
|
-
*/
|
|
40
|
-
ariaLabel?: string;
|
|
41
|
-
/**
|
|
42
|
-
* The ID of the element that labels the Button
|
|
43
|
-
*/
|
|
44
|
-
ariaLabelledBy?: string;
|
|
45
|
-
/**
|
|
46
|
-
* The ID of the element that describes the Button
|
|
47
|
-
*/
|
|
48
|
-
ariaDescribedBy?: string;
|
|
49
37
|
/**
|
|
50
38
|
* The label on the triggering Button
|
|
51
39
|
*/
|
|
@@ -93,25 +81,22 @@ export type MenuButtonProps = {
|
|
|
93
81
|
* The tooltip text for the Button if it's icon-only
|
|
94
82
|
*/
|
|
95
83
|
tooltipText?: string;
|
|
96
|
-
} &
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
buttonLabel: string;
|
|
101
|
-
}
|
|
102
|
-
| {
|
|
103
|
-
ariaLabel: string;
|
|
104
|
-
ariaLabelledBy?: string;
|
|
105
|
-
buttonLabel?: undefined | "";
|
|
106
|
-
}
|
|
107
|
-
| {
|
|
108
|
-
ariaLabel?: string;
|
|
109
|
-
ariaLabelledBy: string;
|
|
110
|
-
buttonLabel?: undefined | "";
|
|
111
|
-
}
|
|
112
|
-
) &
|
|
84
|
+
} & Pick<
|
|
85
|
+
HtmlProps,
|
|
86
|
+
"ariaDescribedBy" | "ariaLabel" | "ariaLabelledBy" | "testId" | "translate"
|
|
87
|
+
> &
|
|
113
88
|
Pick<FieldComponentProps, "isDisabled"> &
|
|
114
|
-
|
|
89
|
+
(
|
|
90
|
+
| { buttonLabel: string }
|
|
91
|
+
| (Required<Pick<HtmlProps, "ariaLabelledBy">> &
|
|
92
|
+
Partial<Pick<HtmlProps, "ariaLabel">> & {
|
|
93
|
+
buttonLabel?: undefined | "";
|
|
94
|
+
})
|
|
95
|
+
| (Required<Pick<HtmlProps, "ariaLabel">> &
|
|
96
|
+
Partial<Pick<HtmlProps, "ariaLabelledBy">> & {
|
|
97
|
+
buttonLabel?: undefined | "";
|
|
98
|
+
})
|
|
99
|
+
);
|
|
115
100
|
|
|
116
101
|
const MenuButton = ({
|
|
117
102
|
ariaLabel,
|
|
@@ -147,7 +132,7 @@ const MenuButton = ({
|
|
|
147
132
|
|
|
148
133
|
const menuListProps = useMemo(
|
|
149
134
|
() => ({ "aria-labelledby": `${uniqueId}-button` }),
|
|
150
|
-
[uniqueId]
|
|
135
|
+
[uniqueId],
|
|
151
136
|
);
|
|
152
137
|
|
|
153
138
|
const providerValue = useMemo<MenuContextType>(
|
|
@@ -156,7 +141,7 @@ const MenuButton = ({
|
|
|
156
141
|
openMenu,
|
|
157
142
|
shouldCloseOnSelect,
|
|
158
143
|
}),
|
|
159
|
-
[closeMenu, openMenu, shouldCloseOnSelect]
|
|
144
|
+
[closeMenu, openMenu, shouldCloseOnSelect],
|
|
160
145
|
);
|
|
161
146
|
|
|
162
147
|
const endIcon = endIconProp ? (
|
|
@@ -172,8 +157,8 @@ const MenuButton = ({
|
|
|
172
157
|
({
|
|
173
158
|
horizontal: menuAlignment,
|
|
174
159
|
vertical: "bottom",
|
|
175
|
-
} as PopoverOrigin
|
|
176
|
-
[menuAlignment]
|
|
160
|
+
}) as PopoverOrigin,
|
|
161
|
+
[menuAlignment],
|
|
177
162
|
);
|
|
178
163
|
|
|
179
164
|
const transformOrigin = useMemo(
|
|
@@ -181,8 +166,8 @@ const MenuButton = ({
|
|
|
181
166
|
({
|
|
182
167
|
horizontal: menuAlignment,
|
|
183
168
|
vertical: "top",
|
|
184
|
-
} as PopoverOrigin
|
|
185
|
-
[menuAlignment]
|
|
169
|
+
}) as PopoverOrigin,
|
|
170
|
+
[menuAlignment],
|
|
186
171
|
);
|
|
187
172
|
|
|
188
173
|
return (
|
package/src/MenuItem.tsx
CHANGED
|
@@ -51,7 +51,7 @@ export type MenuItemProps = {
|
|
|
51
51
|
* - "destructive": A variant indicating a destructive action.
|
|
52
52
|
*/
|
|
53
53
|
variant?: "default" | "destructive";
|
|
54
|
-
} & HtmlProps
|
|
54
|
+
} & Pick<HtmlProps, "testId">;
|
|
55
55
|
|
|
56
56
|
const MenuItem = ({
|
|
57
57
|
children,
|
|
@@ -72,7 +72,7 @@ const MenuItem = ({
|
|
|
72
72
|
closeMenu();
|
|
73
73
|
}
|
|
74
74
|
},
|
|
75
|
-
[onClickProp, closeMenu, shouldCloseOnSelect]
|
|
75
|
+
[onClickProp, closeMenu, shouldCloseOnSelect],
|
|
76
76
|
);
|
|
77
77
|
|
|
78
78
|
return (
|
package/src/MuiPropsChild.tsx
CHANGED
|
@@ -25,7 +25,7 @@ const MuiPropsChild = forwardRef<HTMLElement, MuiPropsChildProps>(
|
|
|
25
25
|
...muiProps,
|
|
26
26
|
ref,
|
|
27
27
|
}),
|
|
28
|
-
[muiProps, ref]
|
|
28
|
+
[muiProps, ref],
|
|
29
29
|
);
|
|
30
30
|
|
|
31
31
|
return (
|
|
@@ -33,7 +33,7 @@ const MuiPropsChild = forwardRef<HTMLElement, MuiPropsChildProps>(
|
|
|
33
33
|
{children}
|
|
34
34
|
</MuiPropsContext.Provider>
|
|
35
35
|
);
|
|
36
|
-
}
|
|
36
|
+
},
|
|
37
37
|
);
|
|
38
38
|
|
|
39
39
|
const MemoizedMuiPropsChild = memo(MuiPropsChild);
|
package/src/NativeSelect.tsx
CHANGED
|
@@ -25,7 +25,10 @@ import {
|
|
|
25
25
|
SelectProps as MuiSelectProps,
|
|
26
26
|
} from "@mui/material";
|
|
27
27
|
import { Field } from "./Field";
|
|
28
|
-
import {
|
|
28
|
+
import {
|
|
29
|
+
FieldComponentProps,
|
|
30
|
+
FieldComponentRenderProps,
|
|
31
|
+
} from "./FieldComponentProps";
|
|
29
32
|
import type { HtmlProps } from "./HtmlProps";
|
|
30
33
|
import { FocusHandle, getControlState, useInputValues } from "./inputUtils";
|
|
31
34
|
|
|
@@ -40,7 +43,7 @@ export type NativeSelectValueType<HasMultipleChoices> =
|
|
|
40
43
|
|
|
41
44
|
export type NativeSelectProps<
|
|
42
45
|
Value extends NativeSelectValueType<HasMultipleChoices>,
|
|
43
|
-
HasMultipleChoices extends boolean
|
|
46
|
+
HasMultipleChoices extends boolean,
|
|
44
47
|
> = {
|
|
45
48
|
/**
|
|
46
49
|
* This prop helps users to fill forms faster, especially on mobile devices.
|
|
@@ -92,7 +95,6 @@ export type NativeSelectProps<
|
|
|
92
95
|
value?: Value;
|
|
93
96
|
} & Pick<
|
|
94
97
|
FieldComponentProps,
|
|
95
|
-
| "ariaDescribedBy"
|
|
96
98
|
| "errorMessage"
|
|
97
99
|
| "errorMessageList"
|
|
98
100
|
| "hint"
|
|
@@ -102,12 +104,17 @@ export type NativeSelectProps<
|
|
|
102
104
|
| "isFullWidth"
|
|
103
105
|
| "isOptional"
|
|
104
106
|
> &
|
|
105
|
-
HtmlProps
|
|
107
|
+
Pick<HtmlProps, "ariaDescribedBy" | "testId" | "translate">;
|
|
108
|
+
|
|
109
|
+
type NativeSelectRenderProps = Partial<
|
|
110
|
+
Pick<FieldComponentRenderProps, "ariaDescribedBy" | "errorMessageElementId">
|
|
111
|
+
> &
|
|
112
|
+
Pick<FieldComponentRenderProps, "labelElementId">;
|
|
106
113
|
|
|
107
114
|
const NativeSelect = forwardRef(
|
|
108
115
|
<
|
|
109
116
|
Value extends NativeSelectValueType<HasMultipleChoices>,
|
|
110
|
-
HasMultipleChoices extends boolean
|
|
117
|
+
HasMultipleChoices extends boolean,
|
|
111
118
|
>(
|
|
112
119
|
{
|
|
113
120
|
ariaDescribedBy,
|
|
@@ -133,13 +140,13 @@ const NativeSelect = forwardRef(
|
|
|
133
140
|
value,
|
|
134
141
|
children,
|
|
135
142
|
}: NativeSelectProps<Value, HasMultipleChoices>,
|
|
136
|
-
ref?: React.Ref<ReactElement
|
|
143
|
+
ref?: React.Ref<ReactElement>,
|
|
137
144
|
) => {
|
|
138
145
|
const controlledStateRef = useRef(
|
|
139
146
|
getControlState({
|
|
140
147
|
controlledValue: value,
|
|
141
148
|
uncontrolledValue: defaultValue,
|
|
142
|
-
})
|
|
149
|
+
}),
|
|
143
150
|
);
|
|
144
151
|
const localInputRef = useRef<HTMLSelectElement>(null);
|
|
145
152
|
|
|
@@ -152,7 +159,7 @@ const NativeSelect = forwardRef(
|
|
|
152
159
|
},
|
|
153
160
|
};
|
|
154
161
|
},
|
|
155
|
-
[]
|
|
162
|
+
[],
|
|
156
163
|
);
|
|
157
164
|
|
|
158
165
|
const inputValues = useInputValues({
|
|
@@ -167,7 +174,7 @@ const NativeSelect = forwardRef(
|
|
|
167
174
|
(event, child) => {
|
|
168
175
|
onChangeProp?.(event, child);
|
|
169
176
|
},
|
|
170
|
-
[onChangeProp]
|
|
177
|
+
[onChangeProp],
|
|
171
178
|
);
|
|
172
179
|
|
|
173
180
|
const hasMultipleChoices = useMemo(
|
|
@@ -175,10 +182,14 @@ const NativeSelect = forwardRef(
|
|
|
175
182
|
hasMultipleChoicesProp === undefined
|
|
176
183
|
? isMultiSelect
|
|
177
184
|
: hasMultipleChoicesProp,
|
|
178
|
-
[hasMultipleChoicesProp, isMultiSelect]
|
|
185
|
+
[hasMultipleChoicesProp, isMultiSelect],
|
|
179
186
|
);
|
|
180
187
|
const renderFieldComponent = useCallback(
|
|
181
|
-
({
|
|
188
|
+
({
|
|
189
|
+
ariaDescribedBy,
|
|
190
|
+
errorMessageElementId,
|
|
191
|
+
labelElementId,
|
|
192
|
+
}: NativeSelectRenderProps) => (
|
|
182
193
|
<MuiSelect
|
|
183
194
|
{...inputValues}
|
|
184
195
|
aria-describedby={ariaDescribedBy}
|
|
@@ -213,7 +224,7 @@ const NativeSelect = forwardRef(
|
|
|
213
224
|
ref,
|
|
214
225
|
testId,
|
|
215
226
|
translate,
|
|
216
|
-
]
|
|
227
|
+
],
|
|
217
228
|
);
|
|
218
229
|
|
|
219
230
|
return (
|
|
@@ -233,7 +244,7 @@ const NativeSelect = forwardRef(
|
|
|
233
244
|
renderFieldComponent={renderFieldComponent}
|
|
234
245
|
/>
|
|
235
246
|
);
|
|
236
|
-
}
|
|
247
|
+
},
|
|
237
248
|
);
|
|
238
249
|
|
|
239
250
|
const MemoizedNativeSelect = memo(NativeSelect);
|
|
@@ -21,8 +21,8 @@ describe("OdysseyCacheProvider", () => {
|
|
|
21
21
|
render(
|
|
22
22
|
<OdysseyCacheProvider>
|
|
23
23
|
<div />
|
|
24
|
-
</OdysseyCacheProvider
|
|
25
|
-
)
|
|
24
|
+
</OdysseyCacheProvider>,
|
|
25
|
+
),
|
|
26
26
|
).not.toThrow();
|
|
27
27
|
});
|
|
28
28
|
|
|
@@ -30,7 +30,7 @@ describe("OdysseyCacheProvider", () => {
|
|
|
30
30
|
render(
|
|
31
31
|
<OdysseyCacheProvider>
|
|
32
32
|
<Button label="text" variant="primary" />
|
|
33
|
-
</OdysseyCacheProvider
|
|
33
|
+
</OdysseyCacheProvider>,
|
|
34
34
|
);
|
|
35
35
|
|
|
36
36
|
expect(screen.queryByRole("button")).toHaveTextContent("text");
|
package/src/OdysseyProvider.tsx
CHANGED
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
import { DefaultSupportedLanguages } from "./OdysseyTranslationProvider.types";
|
|
29
29
|
|
|
30
30
|
export type OdysseyProviderProps<
|
|
31
|
-
SupportedLanguages extends string = DefaultSupportedLanguages
|
|
31
|
+
SupportedLanguages extends string = DefaultSupportedLanguages,
|
|
32
32
|
> = OdysseyCacheProviderProps &
|
|
33
33
|
OdysseyThemeProviderProps &
|
|
34
34
|
OdysseyTranslationProviderProps<SupportedLanguages> & {
|
|
@@ -54,10 +54,8 @@ const OdysseyProvider = <SupportedLanguages extends string>({
|
|
|
54
54
|
>
|
|
55
55
|
<OdysseyThemeProvider
|
|
56
56
|
designTokensOverride={designTokensOverride}
|
|
57
|
-
emotionRoot={emotionRoot}
|
|
58
57
|
shadowDomElement={shadowDomElement}
|
|
59
58
|
themeOverride={themeOverride}
|
|
60
|
-
withCache={false}
|
|
61
59
|
>
|
|
62
60
|
<ScopedCssBaseline>
|
|
63
61
|
<OdysseyTranslationProvider<SupportedLanguages>
|
|
@@ -21,30 +21,28 @@ import { deepmerge } from "@mui/utils";
|
|
|
21
21
|
import { createOdysseyMuiTheme, DesignTokensOverride } from "./theme";
|
|
22
22
|
import * as Tokens from "@okta/odyssey-design-tokens";
|
|
23
23
|
import { OdysseyDesignTokensContext } from "./OdysseyDesignTokensContext";
|
|
24
|
-
import { CacheProvider } from "@emotion/react";
|
|
25
|
-
import createCache from "@emotion/cache";
|
|
26
|
-
import { useUniqueAlphabeticalId } from "./useUniqueAlphabeticalId";
|
|
27
24
|
|
|
28
25
|
export type OdysseyThemeProviderProps = {
|
|
29
26
|
children: ReactNode;
|
|
30
27
|
designTokensOverride?: DesignTokensOverride;
|
|
31
|
-
emotionRoot?: HTMLStyleElement;
|
|
32
28
|
shadowDomElement?: HTMLDivElement | HTMLElement | undefined;
|
|
33
29
|
themeOverride?: ThemeOptions;
|
|
34
|
-
withCache?: boolean;
|
|
35
30
|
};
|
|
36
31
|
|
|
32
|
+
/**
|
|
33
|
+
* This function doesn't include the Emotion Cache or Translations. You should probably be using `OdysseyProvider`.
|
|
34
|
+
*
|
|
35
|
+
* Some teams have a need to wrap separately (SIW), but most teams will never need to use this explicitly.
|
|
36
|
+
*/
|
|
37
37
|
const OdysseyThemeProvider = ({
|
|
38
38
|
children,
|
|
39
39
|
designTokensOverride,
|
|
40
|
-
emotionRoot,
|
|
41
40
|
shadowDomElement,
|
|
42
41
|
themeOverride,
|
|
43
|
-
withCache = true,
|
|
44
42
|
}: OdysseyThemeProviderProps) => {
|
|
45
43
|
const odysseyTokens = useMemo(
|
|
46
44
|
() => ({ ...Tokens, ...designTokensOverride }),
|
|
47
|
-
[designTokensOverride]
|
|
45
|
+
[designTokensOverride],
|
|
48
46
|
);
|
|
49
47
|
const odysseyTheme = useMemo(
|
|
50
48
|
() =>
|
|
@@ -52,39 +50,14 @@ const OdysseyThemeProvider = ({
|
|
|
52
50
|
odysseyTokens,
|
|
53
51
|
shadowDomElement,
|
|
54
52
|
}),
|
|
55
|
-
[odysseyTokens, shadowDomElement]
|
|
53
|
+
[odysseyTokens, shadowDomElement],
|
|
56
54
|
);
|
|
57
55
|
|
|
58
56
|
const customOdysseyTheme = useMemo(
|
|
59
57
|
() => themeOverride && createTheme(deepmerge(odysseyTheme, themeOverride)),
|
|
60
|
-
[odysseyTheme, themeOverride]
|
|
61
|
-
);
|
|
62
|
-
|
|
63
|
-
const uniqueAlphabeticalId = useUniqueAlphabeticalId();
|
|
64
|
-
|
|
65
|
-
const cache = useMemo(
|
|
66
|
-
() =>
|
|
67
|
-
createCache({
|
|
68
|
-
...(emotionRoot && { container: emotionRoot }),
|
|
69
|
-
key: uniqueAlphabeticalId,
|
|
70
|
-
prepend: true,
|
|
71
|
-
nonce: window.cspNonce,
|
|
72
|
-
speedy: false, // <-- Needs to be set to false when shadow-dom is used!! https://github.com/emotion-js/emotion/issues/2053#issuecomment-713429122
|
|
73
|
-
}),
|
|
74
|
-
[emotionRoot, uniqueAlphabeticalId]
|
|
58
|
+
[odysseyTheme, themeOverride],
|
|
75
59
|
);
|
|
76
60
|
|
|
77
|
-
if (withCache) {
|
|
78
|
-
return (
|
|
79
|
-
<CacheProvider value={cache}>
|
|
80
|
-
<MuiThemeProvider theme={customOdysseyTheme ?? odysseyTheme}>
|
|
81
|
-
<OdysseyDesignTokensContext.Provider value={odysseyTokens}>
|
|
82
|
-
{children}
|
|
83
|
-
</OdysseyDesignTokensContext.Provider>
|
|
84
|
-
</MuiThemeProvider>
|
|
85
|
-
</CacheProvider>
|
|
86
|
-
);
|
|
87
|
-
}
|
|
88
61
|
return (
|
|
89
62
|
<MuiThemeProvider theme={customOdysseyTheme ?? odysseyTheme}>
|
|
90
63
|
<OdysseyDesignTokensContext.Provider value={odysseyTokens}>
|
|
@@ -20,7 +20,7 @@ describe("OdysseyTranslationProvider", () => {
|
|
|
20
20
|
render(
|
|
21
21
|
<OdysseyTranslationProvider>
|
|
22
22
|
<span>{odysseyTranslate("fieldlabel.optional.text")}</span>
|
|
23
|
-
</OdysseyTranslationProvider
|
|
23
|
+
</OdysseyTranslationProvider>,
|
|
24
24
|
);
|
|
25
25
|
|
|
26
26
|
expect(screen.getByText("Optional"));
|
|
@@ -30,7 +30,7 @@ describe("OdysseyTranslationProvider", () => {
|
|
|
30
30
|
render(
|
|
31
31
|
<OdysseyTranslationProvider languageCode="test">
|
|
32
32
|
<span>{odysseyTranslate("fieldlabel.optional.text")}</span>
|
|
33
|
-
</OdysseyTranslationProvider
|
|
33
|
+
</OdysseyTranslationProvider>,
|
|
34
34
|
);
|
|
35
35
|
|
|
36
36
|
expect(screen.getByText("Optional"));
|
|
@@ -50,11 +50,11 @@ describe("OdysseyTranslationProvider", () => {
|
|
|
50
50
|
translationOverrides={translationOverrides}
|
|
51
51
|
>
|
|
52
52
|
<TextField label="" isOptional />
|
|
53
|
-
</OdysseyTranslationProvider
|
|
53
|
+
</OdysseyTranslationProvider>,
|
|
54
54
|
);
|
|
55
55
|
|
|
56
56
|
expect(
|
|
57
|
-
screen.getByText("\u063A\u064A\u0631 \u0645\u0637\u0644\u0648\u0628")
|
|
57
|
+
screen.getByText("\u063A\u064A\u0631 \u0645\u0637\u0644\u0648\u0628"),
|
|
58
58
|
);
|
|
59
59
|
});
|
|
60
60
|
|
|
@@ -68,7 +68,7 @@ describe("OdysseyTranslationProvider", () => {
|
|
|
68
68
|
render(
|
|
69
69
|
<OdysseyTranslationProvider translationOverrides={translationOverrides}>
|
|
70
70
|
<TextField label="" isOptional />
|
|
71
|
-
</OdysseyTranslationProvider
|
|
71
|
+
</OdysseyTranslationProvider>,
|
|
72
72
|
);
|
|
73
73
|
|
|
74
74
|
expect(screen.getByText("Non Required"));
|
|
@@ -87,7 +87,7 @@ describe("OdysseyTranslationProvider", () => {
|
|
|
87
87
|
translationOverrides={translationOverrides}
|
|
88
88
|
>
|
|
89
89
|
<TextField label="" isOptional />
|
|
90
|
-
</OdysseyTranslationProvider
|
|
90
|
+
</OdysseyTranslationProvider>,
|
|
91
91
|
);
|
|
92
92
|
|
|
93
93
|
expect(screen.getByText("Optionnel"));
|
|
@@ -22,12 +22,12 @@ export type OdysseyI18nResourceKeys = (typeof resources)["en"];
|
|
|
22
22
|
export const odysseyI18nResourceKeysList = getTypedObjectKeys(resources["en"]);
|
|
23
23
|
|
|
24
24
|
export type TranslationOverrides<
|
|
25
|
-
SupportedLanguages extends string = DefaultSupportedLanguages
|
|
25
|
+
SupportedLanguages extends string = DefaultSupportedLanguages,
|
|
26
26
|
> = Record<SupportedLanguages, Partial<OdysseyI18nResourceKeys>>;
|
|
27
27
|
|
|
28
28
|
const mergeBundleOverrides = <SupportedLanguages extends string>(
|
|
29
29
|
languageCode: SupportedLanguages,
|
|
30
|
-
translationOverrides: TranslationOverrides<SupportedLanguages
|
|
30
|
+
translationOverrides: TranslationOverrides<SupportedLanguages>,
|
|
31
31
|
) => {
|
|
32
32
|
const translationStrings = resources[languageCode] || {};
|
|
33
33
|
const translationStringOverrides = translationOverrides[languageCode];
|
|
@@ -38,7 +38,7 @@ const mergeBundleOverrides = <SupportedLanguages extends string>(
|
|
|
38
38
|
};
|
|
39
39
|
|
|
40
40
|
export type OdysseyTranslationProviderProps<
|
|
41
|
-
SupportedLanguages extends string = DefaultSupportedLanguages
|
|
41
|
+
SupportedLanguages extends string = DefaultSupportedLanguages,
|
|
42
42
|
> = {
|
|
43
43
|
children: ReactNode;
|
|
44
44
|
languageCode?: SupportedLanguages | DefaultSupportedLanguages;
|
|
@@ -46,7 +46,7 @@ export type OdysseyTranslationProviderProps<
|
|
|
46
46
|
};
|
|
47
47
|
|
|
48
48
|
const formatLanguageCodeToHyphenated = <SupportedLanguages extends string>(
|
|
49
|
-
languageCode: OdysseyTranslationProviderProps<SupportedLanguages>["languageCode"]
|
|
49
|
+
languageCode: OdysseyTranslationProviderProps<SupportedLanguages>["languageCode"],
|
|
50
50
|
) => languageCode?.replaceAll("_", "-");
|
|
51
51
|
|
|
52
52
|
export const OdysseyTranslationProvider = <SupportedLanguages extends string>({
|
|
@@ -61,13 +61,13 @@ export const OdysseyTranslationProvider = <SupportedLanguages extends string>({
|
|
|
61
61
|
const changeHtmlElementLanguageAttribute = () => {
|
|
62
62
|
window.document.documentElement.setAttribute(
|
|
63
63
|
"lang",
|
|
64
|
-
normalizedLanguageCode || "en"
|
|
64
|
+
normalizedLanguageCode || "en",
|
|
65
65
|
);
|
|
66
66
|
};
|
|
67
67
|
// Defaults to the browser's language if available otherwise `en` will be used
|
|
68
68
|
i18n.changeLanguage(
|
|
69
69
|
languageCode || window.navigator.language,
|
|
70
|
-
changeHtmlElementLanguageAttribute
|
|
70
|
+
changeHtmlElementLanguageAttribute,
|
|
71
71
|
);
|
|
72
72
|
}, [languageCode]);
|
|
73
73
|
|
|
@@ -76,7 +76,7 @@ export const OdysseyTranslationProvider = <SupportedLanguages extends string>({
|
|
|
76
76
|
getTypedObjectKeys(translationOverrides).forEach((language) => {
|
|
77
77
|
const bundle = mergeBundleOverrides<SupportedLanguages>(
|
|
78
78
|
language,
|
|
79
|
-
translationOverrides
|
|
79
|
+
translationOverrides,
|
|
80
80
|
);
|
|
81
81
|
i18n.addResourceBundle(language, defaultNS, bundle);
|
|
82
82
|
});
|
package/src/PasswordField.tsx
CHANGED
|
@@ -24,7 +24,10 @@ import {
|
|
|
24
24
|
|
|
25
25
|
import { ShowIcon, HideIcon } from "./icons.generated";
|
|
26
26
|
import { Field } from "./Field";
|
|
27
|
-
import {
|
|
27
|
+
import {
|
|
28
|
+
FieldComponentProps,
|
|
29
|
+
FieldComponentRenderProps,
|
|
30
|
+
} from "./FieldComponentProps";
|
|
28
31
|
import type { HtmlProps } from "./HtmlProps";
|
|
29
32
|
import { useTranslation } from "react-i18next";
|
|
30
33
|
import { FocusHandle, getControlState, useInputValues } from "./inputUtils";
|
|
@@ -77,7 +80,12 @@ export type PasswordFieldProps = {
|
|
|
77
80
|
*/
|
|
78
81
|
value?: string;
|
|
79
82
|
} & FieldComponentProps &
|
|
80
|
-
HtmlProps
|
|
83
|
+
Pick<HtmlProps, "ariaDescribedBy" | "testId" | "translate">;
|
|
84
|
+
|
|
85
|
+
type FieldRenderProps = Partial<
|
|
86
|
+
Pick<FieldComponentRenderProps, "ariaDescribedBy" | "errorMessageElementId">
|
|
87
|
+
> &
|
|
88
|
+
Pick<FieldComponentRenderProps, "id" | "labelElementId">;
|
|
81
89
|
|
|
82
90
|
const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
|
|
83
91
|
(
|
|
@@ -106,14 +114,14 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
|
|
|
106
114
|
translate,
|
|
107
115
|
value,
|
|
108
116
|
},
|
|
109
|
-
ref
|
|
117
|
+
ref,
|
|
110
118
|
) => {
|
|
111
119
|
const { t } = useTranslation();
|
|
112
120
|
const [inputType, setInputType] = useState("password");
|
|
113
121
|
|
|
114
122
|
const togglePasswordVisibility = useCallback(() => {
|
|
115
123
|
setInputType((inputType) =>
|
|
116
|
-
inputType === "password" ? "text" : "password"
|
|
124
|
+
inputType === "password" ? "text" : "password",
|
|
117
125
|
);
|
|
118
126
|
}, []);
|
|
119
127
|
|
|
@@ -121,7 +129,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
|
|
|
121
129
|
getControlState({
|
|
122
130
|
controlledValue: value,
|
|
123
131
|
uncontrolledValue: defaultValue,
|
|
124
|
-
})
|
|
132
|
+
}),
|
|
125
133
|
);
|
|
126
134
|
const inputValues = useInputValues({
|
|
127
135
|
defaultValue,
|
|
@@ -139,7 +147,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
|
|
|
139
147
|
},
|
|
140
148
|
};
|
|
141
149
|
},
|
|
142
|
-
[]
|
|
150
|
+
[],
|
|
143
151
|
);
|
|
144
152
|
|
|
145
153
|
const onChange = useCallback<
|
|
@@ -148,11 +156,16 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
|
|
|
148
156
|
(event) => {
|
|
149
157
|
onChangeProp?.(event);
|
|
150
158
|
},
|
|
151
|
-
[onChangeProp]
|
|
159
|
+
[onChangeProp],
|
|
152
160
|
);
|
|
153
161
|
|
|
154
162
|
const renderFieldComponent = useCallback(
|
|
155
|
-
({
|
|
163
|
+
({
|
|
164
|
+
ariaDescribedBy,
|
|
165
|
+
errorMessageElementId,
|
|
166
|
+
id,
|
|
167
|
+
labelElementId,
|
|
168
|
+
}: FieldRenderProps) => (
|
|
156
169
|
<InputBase
|
|
157
170
|
{...inputValues}
|
|
158
171
|
aria-describedby={ariaDescribedBy}
|
|
@@ -216,7 +229,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
|
|
|
216
229
|
ref,
|
|
217
230
|
testId,
|
|
218
231
|
translate,
|
|
219
|
-
]
|
|
232
|
+
],
|
|
220
233
|
);
|
|
221
234
|
|
|
222
235
|
return (
|
|
@@ -235,7 +248,7 @@ const PasswordField = forwardRef<HTMLInputElement, PasswordFieldProps>(
|
|
|
235
248
|
renderFieldComponent={renderFieldComponent}
|
|
236
249
|
/>
|
|
237
250
|
);
|
|
238
|
-
}
|
|
251
|
+
},
|
|
239
252
|
);
|
|
240
253
|
|
|
241
254
|
const MemoizedPasswordField = memo(PasswordField);
|