smarthr-ui 97.0.0 → 98.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/AppHeader/components/common/AppLauncherFeatures.cjs +1 -1
- package/lib/components/AppHeader/components/common/AppLauncherFeatures.js +1 -1
- package/lib/components/AppHeader/components/common/AppLauncherSortDropdown.cjs +1 -1
- package/lib/components/AppHeader/components/common/AppLauncherSortDropdown.js +1 -1
- package/lib/components/AppHeader/components/desktop/AppLauncher.cjs +5 -5
- package/lib/components/AppHeader/components/desktop/AppLauncher.cjs.map +1 -1
- package/lib/components/AppHeader/components/desktop/AppLauncher.js +5 -5
- package/lib/components/AppHeader/components/desktop/AppLauncher.js.map +1 -1
- package/lib/components/AppHeader/components/desktop/DesktopHeader.cjs +1 -1
- package/lib/components/AppHeader/components/desktop/DesktopHeader.js +1 -1
- package/lib/components/AppHeader/components/desktop/ReleaseNotesDropdown.cjs +1 -1
- package/lib/components/AppHeader/components/desktop/ReleaseNotesDropdown.js +1 -1
- package/lib/components/AppHeader/components/desktop/UserInfo.cjs +1 -1
- package/lib/components/AppHeader/components/desktop/UserInfo.js +1 -1
- package/lib/components/AppHeader/components/mobile/AppLauncher.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/AppLauncher.js +1 -1
- package/lib/components/AppHeader/components/mobile/AppLauncherFilterDropdown.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/AppLauncherFilterDropdown.js +1 -1
- package/lib/components/AppHeader/components/mobile/Help.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/Help.js +1 -1
- package/lib/components/AppHeader/components/mobile/LanguageSelector.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/LanguageSelector.js +1 -1
- package/lib/components/AppHeader/components/mobile/Menu.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/Menu.js +1 -1
- package/lib/components/AppHeader/components/mobile/MenuAccordion.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/MenuAccordion.js +1 -1
- package/lib/components/AppHeader/components/mobile/MenuDialog.cjs +2 -2
- package/lib/components/AppHeader/components/mobile/MenuDialog.js +2 -2
- package/lib/components/AppHeader/components/mobile/MenuSubHeading.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/MenuSubHeading.js +1 -1
- package/lib/components/AppHeader/components/mobile/ReleaseNote.cjs +1 -1
- package/lib/components/AppHeader/components/mobile/ReleaseNote.js +1 -1
- package/lib/components/AppHeader/components/mobile/UserInfo.cjs +2 -2
- package/lib/components/AppHeader/components/mobile/UserInfo.js +2 -2
- package/lib/components/Browser/Browser.cjs +11 -7
- package/lib/components/Browser/Browser.cjs.map +1 -1
- package/lib/components/Browser/Browser.js +12 -8
- package/lib/components/Browser/Browser.js.map +1 -1
- package/lib/components/Calendar/Calendar.cjs +1 -1
- package/lib/components/Calendar/Calendar.js +1 -1
- package/lib/components/Calendar/CalendarTable.cjs +1 -1
- package/lib/components/Calendar/CalendarTable.js +1 -1
- package/lib/components/Calendar/YearPicker.cjs +1 -1
- package/lib/components/Calendar/YearPicker.js +1 -1
- package/lib/components/Combobox/ItemButton.cjs +27 -26
- package/lib/components/Combobox/ItemButton.cjs.map +1 -1
- package/lib/components/Combobox/ItemButton.js +28 -27
- package/lib/components/Combobox/ItemButton.js.map +1 -1
- package/lib/components/Combobox/MultiCombobox/MultiCombobox.cjs +122 -134
- package/lib/components/Combobox/MultiCombobox/MultiCombobox.cjs.map +1 -1
- package/lib/components/Combobox/MultiCombobox/MultiCombobox.js +123 -135
- package/lib/components/Combobox/MultiCombobox/MultiCombobox.js.map +1 -1
- package/lib/components/Combobox/MultiCombobox/MultiSelectedItem.cjs +1 -1
- package/lib/components/Combobox/MultiCombobox/MultiSelectedItem.js +1 -1
- package/lib/components/Combobox/SingleCombobox/SingleCombobox.cjs +79 -46
- package/lib/components/Combobox/SingleCombobox/SingleCombobox.cjs.map +1 -1
- package/lib/components/Combobox/SingleCombobox/SingleCombobox.js +81 -48
- package/lib/components/Combobox/SingleCombobox/SingleCombobox.js.map +1 -1
- package/lib/components/Combobox/useListbox.cjs +1 -1
- package/lib/components/Combobox/useListbox.js +1 -1
- package/lib/components/Combobox/useOptions.cjs +3 -1
- package/lib/components/Combobox/useOptions.cjs.map +1 -1
- package/lib/components/Combobox/useOptions.js +4 -2
- package/lib/components/Combobox/useOptions.js.map +1 -1
- package/lib/components/Dialog/ControlledActionDialog/ActionDialogContentInner.cjs +3 -3
- package/lib/components/Dialog/ControlledActionDialog/ActionDialogContentInner.cjs.map +1 -1
- package/lib/components/Dialog/ControlledActionDialog/ActionDialogContentInner.js +3 -3
- package/lib/components/Dialog/ControlledActionDialog/ActionDialogContentInner.js.map +1 -1
- package/lib/components/Dialog/ControlledFormDialog/FormDialogContentInner.cjs +3 -3
- package/lib/components/Dialog/ControlledFormDialog/FormDialogContentInner.cjs.map +1 -1
- package/lib/components/Dialog/ControlledFormDialog/FormDialogContentInner.js +3 -3
- package/lib/components/Dialog/ControlledFormDialog/FormDialogContentInner.js.map +1 -1
- package/lib/components/Dialog/ControlledMessageDialog/MessageDialogContentInner.cjs +1 -1
- package/lib/components/Dialog/ControlledMessageDialog/MessageDialogContentInner.js +1 -1
- package/lib/components/Dialog/ControlledStepFormDialog/ControlledStepFormDialog.cjs +1 -1
- package/lib/components/Dialog/ControlledStepFormDialog/ControlledStepFormDialog.js +1 -1
- package/lib/components/Dialog/ControlledStepFormDialog/StepFormDialogContentInner.cjs +2 -2
- package/lib/components/Dialog/ControlledStepFormDialog/StepFormDialogContentInner.cjs.map +1 -1
- package/lib/components/Dialog/ControlledStepFormDialog/StepFormDialogContentInner.js +2 -2
- package/lib/components/Dialog/ControlledStepFormDialog/StepFormDialogContentInner.js.map +1 -1
- package/lib/components/Dialog/DialogContentResponseStatusMessage.cjs +3 -8
- package/lib/components/Dialog/DialogContentResponseStatusMessage.cjs.map +1 -1
- package/lib/components/Dialog/DialogContentResponseStatusMessage.d.ts +1 -1
- package/lib/components/Dialog/DialogContentResponseStatusMessage.js +3 -8
- package/lib/components/Dialog/DialogContentResponseStatusMessage.js.map +1 -1
- package/lib/components/Dialog/FocusTrap.cjs +4 -1
- package/lib/components/Dialog/FocusTrap.cjs.map +1 -1
- package/lib/components/Dialog/FocusTrap.js +4 -1
- package/lib/components/Dialog/FocusTrap.js.map +1 -1
- package/lib/components/Dialog/ModelessDialog/ModelessDialog.cjs +1 -1
- package/lib/components/Dialog/ModelessDialog/ModelessDialog.js +1 -1
- package/lib/components/Dialog/RemoteDialogTrigger/RemoteDialogTrigger.cjs +9 -3
- package/lib/components/Dialog/RemoteDialogTrigger/RemoteDialogTrigger.cjs.map +1 -1
- package/lib/components/Dialog/RemoteDialogTrigger/RemoteDialogTrigger.js +9 -3
- package/lib/components/Dialog/RemoteDialogTrigger/RemoteDialogTrigger.js.map +1 -1
- package/lib/components/Disclosure/DisclosureTrigger.cjs +8 -4
- package/lib/components/Disclosure/DisclosureTrigger.cjs.map +1 -1
- package/lib/components/Disclosure/DisclosureTrigger.js +8 -4
- package/lib/components/Disclosure/DisclosureTrigger.js.map +1 -1
- package/lib/components/DropZone/DropZone.cjs +1 -1
- package/lib/components/DropZone/DropZone.js +1 -1
- package/lib/components/Dropdown/Dropdown.cjs +36 -34
- package/lib/components/Dropdown/Dropdown.cjs.map +1 -1
- package/lib/components/Dropdown/Dropdown.js +37 -35
- package/lib/components/Dropdown/Dropdown.js.map +1 -1
- package/lib/components/Dropdown/DropdownMenuButton/DropdownMenuButton.cjs +1 -1
- package/lib/components/Dropdown/DropdownMenuButton/DropdownMenuButton.js +1 -1
- package/lib/components/Dropdown/FilterDropdown/FilterDropdown.cjs +3 -5
- package/lib/components/Dropdown/FilterDropdown/FilterDropdown.cjs.map +1 -1
- package/lib/components/Dropdown/FilterDropdown/FilterDropdown.d.ts +1 -1
- package/lib/components/Dropdown/FilterDropdown/FilterDropdown.js +3 -5
- package/lib/components/Dropdown/FilterDropdown/FilterDropdown.js.map +1 -1
- package/lib/components/Dropdown/SortDropdown/useSortDropdown.cjs +1 -1
- package/lib/components/Dropdown/SortDropdown/useSortDropdown.js +1 -1
- package/lib/components/ErrorScreen/AuthErrorScreen.cjs +1 -1
- package/lib/components/ErrorScreen/AuthErrorScreen.js +1 -1
- package/lib/components/ErrorScreen/ForbiddenErrorScreen.cjs +1 -1
- package/lib/components/ErrorScreen/ForbiddenErrorScreen.js +1 -1
- package/lib/components/ErrorScreen/NotFoundErrorScreen.cjs +1 -1
- package/lib/components/ErrorScreen/NotFoundErrorScreen.js +1 -1
- package/lib/components/ErrorScreen/UnauthorizedErrorScreen.cjs +1 -1
- package/lib/components/ErrorScreen/UnauthorizedErrorScreen.js +1 -1
- package/lib/components/FileViewer/FileViewer.cjs +35 -2
- package/lib/components/FileViewer/FileViewer.cjs.map +1 -1
- package/lib/components/FileViewer/FileViewer.js +37 -4
- package/lib/components/FileViewer/FileViewer.js.map +1 -1
- package/lib/components/FileViewer/PDFViewer.cjs +59 -2
- package/lib/components/FileViewer/PDFViewer.cjs.map +1 -1
- package/lib/components/FileViewer/PDFViewer.d.ts +6 -1
- package/lib/components/FileViewer/PDFViewer.js +60 -3
- package/lib/components/FileViewer/PDFViewer.js.map +1 -1
- package/lib/components/FileViewer/SearchController.cjs +105 -0
- package/lib/components/FileViewer/SearchController.cjs.map +1 -0
- package/lib/components/FileViewer/SearchController.d.ts +7 -0
- package/lib/components/FileViewer/SearchController.js +103 -0
- package/lib/components/FileViewer/SearchController.js.map +1 -0
- package/lib/components/FileViewer/buildCustomTextRenderer.cjs +55 -0
- package/lib/components/FileViewer/buildCustomTextRenderer.cjs.map +1 -0
- package/lib/components/FileViewer/buildCustomTextRenderer.d.ts +9 -0
- package/lib/components/FileViewer/buildCustomTextRenderer.js +50 -0
- package/lib/components/FileViewer/buildCustomTextRenderer.js.map +1 -0
- package/lib/components/FileViewer/types.d.ts +7 -0
- package/lib/components/FileViewer/usePDFSearch.cjs +148 -0
- package/lib/components/FileViewer/usePDFSearch.cjs.map +1 -0
- package/lib/components/FileViewer/usePDFSearch.d.ts +19 -0
- package/lib/components/FileViewer/usePDFSearch.js +143 -0
- package/lib/components/FileViewer/usePDFSearch.js.map +1 -0
- package/lib/components/FormControl/FormControl.cjs +2 -22
- package/lib/components/FormControl/FormControl.cjs.map +1 -1
- package/lib/components/FormControl/FormControl.js +2 -22
- package/lib/components/FormControl/FormControl.js.map +1 -1
- package/lib/components/Header/AppLauncher/AppLauncher.cjs +1 -1
- package/lib/components/Header/AppLauncher/AppLauncher.js +1 -1
- package/lib/components/Header/LanguageSwitcher/LanguageSwitcher.cjs +1 -1
- package/lib/components/Header/LanguageSwitcher/LanguageSwitcher.js +1 -1
- package/lib/components/Icon/FaIcon.js +1 -1
- package/lib/components/Icon/OpenInNewTabIcon.cjs +1 -1
- package/lib/components/Icon/OpenInNewTabIcon.js +1 -1
- package/lib/components/InformationPanel/InformationPanel.cjs +1 -1
- package/lib/components/InformationPanel/InformationPanel.js +1 -1
- package/lib/components/Input/SearchInput/SearchInputIcon.cjs +1 -1
- package/lib/components/Input/SearchInput/SearchInputIcon.js +1 -1
- package/lib/components/InputFile/InputFileMultiplyAppendable.cjs +1 -1
- package/lib/components/InputFile/InputFileMultiplyAppendable.js +1 -1
- package/lib/components/InputFile/InputFileNative.cjs +1 -1
- package/lib/components/InputFile/InputFileNative.js +1 -1
- package/lib/components/Layout/Cluster/Cluster.cjs +0 -1
- package/lib/components/Layout/Cluster/Cluster.cjs.map +1 -1
- package/lib/components/Layout/Cluster/Cluster.js +0 -1
- package/lib/components/Layout/Cluster/Cluster.js.map +1 -1
- package/lib/components/Layout/Container/Container.cjs +1 -5
- package/lib/components/Layout/Container/Container.cjs.map +1 -1
- package/lib/components/Layout/Container/Container.js +1 -5
- package/lib/components/Layout/Container/Container.js.map +1 -1
- package/lib/components/Layout/Stack/Stack.cjs +22 -22
- package/lib/components/Layout/Stack/Stack.cjs.map +1 -1
- package/lib/components/Layout/Stack/Stack.js +22 -22
- package/lib/components/Layout/Stack/Stack.js.map +1 -1
- package/lib/components/Loader/LoaderSpinner.cjs +1 -1
- package/lib/components/Loader/LoaderSpinner.js +1 -1
- package/lib/components/Pagination/Pagination.cjs +1 -1
- package/lib/components/Pagination/Pagination.js +1 -1
- package/lib/components/Pagination/PaginationItemButton.cjs +1 -1
- package/lib/components/Pagination/PaginationItemButton.js +1 -1
- package/lib/components/SideNav/SideNav.cjs +3 -22
- package/lib/components/SideNav/SideNav.cjs.map +1 -1
- package/lib/components/SideNav/SideNav.d.ts +2 -9
- package/lib/components/SideNav/SideNav.js +4 -23
- package/lib/components/SideNav/SideNav.js.map +1 -1
- package/lib/components/SideNav/SideNavContext.cjs +11 -0
- package/lib/components/SideNav/SideNavContext.cjs.map +1 -0
- package/lib/components/SideNav/SideNavContext.d.ts +7 -0
- package/lib/components/SideNav/SideNavContext.js +8 -0
- package/lib/components/SideNav/SideNavContext.js.map +1 -0
- package/lib/components/SideNav/SideNavItemButton.cjs +12 -7
- package/lib/components/SideNav/SideNavItemButton.cjs.map +1 -1
- package/lib/components/SideNav/SideNavItemButton.d.ts +5 -11
- package/lib/components/SideNav/SideNavItemButton.js +12 -7
- package/lib/components/SideNav/SideNavItemButton.js.map +1 -1
- package/lib/components/Table/Th.cjs +2 -2
- package/lib/components/Table/Th.cjs.map +1 -1
- package/lib/components/Table/Th.d.ts +0 -2
- package/lib/components/Table/Th.js +2 -2
- package/lib/components/Table/Th.js.map +1 -1
- package/lib/components/Table/ThCheckbox.cjs +1 -1
- package/lib/components/Table/ThCheckbox.js +1 -1
- package/lib/components/Table/ThSortButton.cjs +5 -6
- package/lib/components/Table/ThSortButton.cjs.map +1 -1
- package/lib/components/Table/ThSortButton.d.ts +1 -6
- package/lib/components/Table/ThSortButton.js +5 -6
- package/lib/components/Table/ThSortButton.js.map +1 -1
- package/lib/components/WarekiPicker/WarekiPicker.cjs +1 -1
- package/lib/components/WarekiPicker/WarekiPicker.js +1 -1
- package/lib/hooks/useLatest.cjs +33 -0
- package/lib/hooks/useLatest.cjs.map +1 -0
- package/lib/hooks/useLatest.d.ts +19 -0
- package/lib/hooks/useLatest.js +31 -0
- package/lib/hooks/useLatest.js.map +1 -0
- package/lib/index.cjs +1 -6
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.ts +0 -1
- package/lib/index.js +1 -4
- package/lib/index.js.map +1 -1
- package/lib/intl/Localizer.cjs +5 -1
- package/lib/intl/Localizer.cjs.map +1 -1
- package/lib/intl/Localizer.d.ts +1 -1
- package/lib/intl/Localizer.js +5 -1
- package/lib/intl/Localizer.js.map +1 -1
- package/lib/intl/locales/en_us.json.cjs +3 -0
- package/lib/intl/locales/en_us.json.cjs.map +1 -1
- package/lib/intl/locales/en_us.json.js +3 -0
- package/lib/intl/locales/en_us.json.js.map +1 -1
- package/lib/intl/locales/id_id.json.cjs +3 -0
- package/lib/intl/locales/id_id.json.cjs.map +1 -1
- package/lib/intl/locales/id_id.json.js +3 -0
- package/lib/intl/locales/id_id.json.js.map +1 -1
- package/lib/intl/locales/index.d.ts +27 -0
- package/lib/intl/locales/ja.cjs +3 -0
- package/lib/intl/locales/ja.cjs.map +1 -1
- package/lib/intl/locales/ja.d.ts +3 -0
- package/lib/intl/locales/ja.js +3 -0
- package/lib/intl/locales/ja.js.map +1 -1
- package/lib/intl/locales/ja.json.cjs +3 -0
- package/lib/intl/locales/ja.json.cjs.map +1 -1
- package/lib/intl/locales/ja.json.js +3 -0
- package/lib/intl/locales/ja.json.js.map +1 -1
- package/lib/intl/locales/ja_easy.json.cjs +3 -0
- package/lib/intl/locales/ja_easy.json.cjs.map +1 -1
- package/lib/intl/locales/ja_easy.json.js +3 -0
- package/lib/intl/locales/ja_easy.json.js.map +1 -1
- package/lib/intl/locales/ko_kr.json.cjs +3 -0
- package/lib/intl/locales/ko_kr.json.cjs.map +1 -1
- package/lib/intl/locales/ko_kr.json.js +3 -0
- package/lib/intl/locales/ko_kr.json.js.map +1 -1
- package/lib/intl/locales/pt_br.json.cjs +3 -0
- package/lib/intl/locales/pt_br.json.cjs.map +1 -1
- package/lib/intl/locales/pt_br.json.js +3 -0
- package/lib/intl/locales/pt_br.json.js.map +1 -1
- package/lib/intl/locales/vi_vn.json.cjs +3 -0
- package/lib/intl/locales/vi_vn.json.cjs.map +1 -1
- package/lib/intl/locales/vi_vn.json.js +3 -0
- package/lib/intl/locales/vi_vn.json.js.map +1 -1
- package/lib/intl/locales/zh_hans_cn.json.cjs +3 -0
- package/lib/intl/locales/zh_hans_cn.json.cjs.map +1 -1
- package/lib/intl/locales/zh_hans_cn.json.js +3 -0
- package/lib/intl/locales/zh_hans_cn.json.js.map +1 -1
- package/lib/intl/locales/zh_hant_tw.json.cjs +3 -0
- package/lib/intl/locales/zh_hant_tw.json.cjs.map +1 -1
- package/lib/intl/locales/zh_hant_tw.json.js +3 -0
- package/lib/intl/locales/zh_hant_tw.json.js.map +1 -1
- package/metadata.json +1 -1
- package/package.json +1 -1
- package/smarthr-ui.css +35 -98
- package/lib/hooks/useDecorators.cjs +0 -18
- package/lib/hooks/useDecorators.cjs.map +0 -1
- package/lib/hooks/useDecorators.d.ts +0 -6
- package/lib/hooks/useDecorators.js +0 -16
- package/lib/hooks/useDecorators.js.map +0 -1
- package/lib/hooks/useDevice/DeviceProvider.cjs +0 -37
- package/lib/hooks/useDevice/DeviceProvider.cjs.map +0 -1
- package/lib/hooks/useDevice/DeviceProvider.d.ts +0 -4
- package/lib/hooks/useDevice/DeviceProvider.js +0 -35
- package/lib/hooks/useDevice/DeviceProvider.js.map +0 -1
- package/lib/hooks/useDevice/index.cjs +0 -10
- package/lib/hooks/useDevice/index.cjs.map +0 -1
- package/lib/hooks/useDevice/index.d.ts +0 -2
- package/lib/hooks/useDevice/index.js +0 -3
- package/lib/hooks/useDevice/index.js.map +0 -1
- package/lib/hooks/useDevice/useDevice.cjs +0 -11
- package/lib/hooks/useDevice/useDevice.cjs.map +0 -1
- package/lib/hooks/useDevice/useDevice.d.ts +0 -4
- package/lib/hooks/useDevice/useDevice.js +0 -8
- package/lib/hooks/useDevice/useDevice.js.map +0 -1
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
require('../../../Button/Button.cjs');
|
|
@@ -3,7 +3,7 @@ import { memo, useMemo } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import '../../../Button/Button.js';
|
|
@@ -7,7 +7,7 @@ var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwind
|
|
|
7
7
|
var hooks_useTheme = require('../../../../hooks/useTheme.cjs');
|
|
8
8
|
require('../../../../intl/IntlProvider.cjs');
|
|
9
9
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
10
|
-
require('
|
|
10
|
+
require('../../../../intl/Localizer.cjs');
|
|
11
11
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
12
12
|
require('../../../../intl/TimeFormatter.cjs');
|
|
13
13
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -5,7 +5,7 @@ import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tai
|
|
|
5
5
|
import { useTheme } from '../../../../hooks/useTheme.js';
|
|
6
6
|
import '../../../../intl/IntlProvider.js';
|
|
7
7
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
8
|
-
import '
|
|
8
|
+
import '../../../../intl/Localizer.js';
|
|
9
9
|
import '../../../../_virtual/dayjs.min.js';
|
|
10
10
|
import '../../../../intl/TimeFormatter.js';
|
|
11
11
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -7,7 +7,7 @@ var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwind
|
|
|
7
7
|
var hooks_useTheme = require('../../../../hooks/useTheme.cjs');
|
|
8
8
|
require('../../../../intl/IntlProvider.cjs');
|
|
9
9
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
10
|
-
require('
|
|
10
|
+
require('../../../../intl/Localizer.cjs');
|
|
11
11
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
12
12
|
require('../../../../intl/TimeFormatter.cjs');
|
|
13
13
|
require('../../../Button/Button.cjs');
|
|
@@ -32,7 +32,7 @@ var components_SectioningContent_SectioningContent = require('../../../Sectionin
|
|
|
32
32
|
require('../../../SectioningContent/levelContext.cjs');
|
|
33
33
|
require('styled-components');
|
|
34
34
|
var components_SideNav_SideNav = require('../../../SideNav/SideNav.cjs');
|
|
35
|
-
require('../../../SideNav/SideNavItemButton.cjs');
|
|
35
|
+
var components_SideNav_SideNavItemButton = require('../../../SideNav/SideNavItemButton.cjs');
|
|
36
36
|
require('../../../TextLink/TextLink.cjs');
|
|
37
37
|
var components_TextLink_HelpLink_HelpLink = require('../../../TextLink/HelpLink/HelpLink.cjs');
|
|
38
38
|
require('../../../TextLink/UpwardLink/UpwardLink.cjs');
|
|
@@ -152,10 +152,10 @@ const SideNavs = React.memo(({ mode, page, changePage, translated, classNames })
|
|
|
152
152
|
current: isAll,
|
|
153
153
|
},
|
|
154
154
|
], [isAll, translated]);
|
|
155
|
-
const onClick = React.useCallback((
|
|
156
|
-
changePage(
|
|
155
|
+
const onClick = React.useCallback((e) => {
|
|
156
|
+
changePage(e.currentTarget.value);
|
|
157
157
|
}, [changePage]);
|
|
158
|
-
return (jsxRuntime.jsxs("div", { className: classNames.side, children: [jsxRuntime.jsx(components_SideNav_SideNav.SideNav, { className: classNames.unselectedSideNav, size: "S",
|
|
158
|
+
return (jsxRuntime.jsxs("div", { className: classNames.side, children: [jsxRuntime.jsx(components_SideNav_SideNav.SideNav, { className: classNames.unselectedSideNav, size: "S", "aria-label": typeof translated.favorite === 'string' ? translated.favorite : undefined, children: unselectedItems.map((item) => (jsxRuntime.jsx(components_SideNav_SideNavItemButton.SideNavItemButton, { id: item.id, prefix: item.prefix, current: item.current, onClick: onClick, children: item.title }, item.id))) }), jsxRuntime.jsx("hr", {}), jsxRuntime.jsxs(components_SectioningContent_SectioningContent.Section, { children: [jsxRuntime.jsx(MemoizedSubSubBlockHeading, { className: classNames.sideNavHeading, children: translated.listText }), jsxRuntime.jsx(components_SideNav_SideNav.SideNav, { className: classNames.selectedSideNav, size: "S", "aria-label": typeof translated.listText === 'string' ? translated.listText : undefined, children: selectedItems.map((item) => (jsxRuntime.jsx(components_SideNav_SideNavItemButton.SideNavItemButton, { id: item.id, current: item.current, onClick: onClick, children: item.title }, item.id))) })] }), jsxRuntime.jsx(HelpLinkArea, { className: classNames.help, children: translated.helpText })] }));
|
|
159
159
|
});
|
|
160
160
|
const HelpLinkArea = React.memo(({ children, className }) => (jsxRuntime.jsx("div", { className: className, children: jsxRuntime.jsx(components_TextLink_HelpLink_HelpLink.HelpLink, { href: "https://support.smarthr.jp/ja/help/articles/2bfd350d-8e8b-4bbd-a209-426d2eb302cc/", target: "_blank", children: children }) })));
|
|
161
161
|
const MemoizedSubSubBlockHeading = React.memo(({ children, className }) => (jsxRuntime.jsx(components_Heading_Heading.Heading, { type: "subSubBlockTitle", className: className, children: children })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppLauncher.cjs","sources":["../../../../../src/components/AppHeader/components/desktop/AppLauncher.tsx"],"sourcesContent":["'use client'\n\nimport { type FC, type PropsWithChildren, type ReactNode, memo, useCallback, useMemo } from 'react'\nimport { tv } from 'tailwind-variants'\n\nimport { useTheme } from '../../../../hooks/useTheme'\nimport { useIntl } from '../../../../intl'\nimport { UnstyledButton } from '../../../Button'\nimport { Heading } from '../../../Heading'\nimport { FaCircleXmarkIcon, FaStarIcon } from '../../../Icon'\nimport { SearchInput } from '../../../Input'\nimport { Cluster } from '../../../Layout'\nimport { Scroller } from '../../../Scroller'\nimport { Section } from '../../../SectioningContent'\nimport { SideNav } from '../../../SideNav'\nimport { HelpLink } from '../../../TextLink'\nimport { useAppLauncher } from '../../hooks/useAppLauncher'\nimport { AppLauncherFeatures } from '../common/AppLauncherFeatures'\nimport { AppLauncherSortDropdown } from '../common/AppLauncherSortDropdown'\nimport { Translate } from '../common/Translate'\n\nimport type { Launcher } from '../../types'\n\ntype Props = {\n features: Array<Launcher['feature']>\n}\n\nconst appLauncher = tv({\n slots: {\n wrapper: [\n 'smarthr-ui-AppLauncher',\n 'shr-grid shr-h-[40rem] shr-w-[38rem] shr-grid-rows-[auto_1fr]',\n ],\n searchArea: [\n 'smarthr-ui-AppLauncher-searchArea',\n 'shr-border-b-shorthand shr-p-1',\n '[&_.smarthr-ui-Input]:shr-h-[42px]',\n ],\n inner: ['smarthr-ui-AppLauncher-inner', 'shr-grid shr-min-h-0 shr-grid-cols-[11rem_1fr]'],\n side: [\n 'smarthr-ui-AppLauncher-side',\n 'shr-border-r-shorthand shr-flex shr-flex-col shr-bg-column shr-pb-1 shr-pt-0.5',\n '[&_hr]:shr-m-0.5 [&_hr]:shr-h-[1px] [&_hr]:shr-border-none [&_hr]:shr-bg-border',\n ],\n sideNav: [\n '[&_.smarthr-ui-SideNav-item>button]:shr-px-1 [&_.smarthr-ui-SideNav-item>button]:shr-py-0.75',\n '[&_.smarthr-ui-SideNav-item>button>span]:shr-flex-nowrap',\n '[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-shrink-0 [&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-align-bottom',\n ],\n sideNavHeading: ['shr-px-1 shr-py-0.75 shr-text-xs shr-text-black'],\n help: ['smarthr-ui-AppLauncher-help', 'shr-mt-auto shr-px-1 shr-text-xs'],\n main: ['smarthr-ui-AppLauncher-main', 'shr-grid shr-min-h-0'],\n mainInner: ['shr-grid shr-min-h-0 shr-grid-rows-[auto_1fr]'],\n contentHead: [\n 'shr-min-h-[2rem] shr-px-1 shr-py-0.75',\n '[&_.smarthr-ui-Heading]:shr-text-black',\n ],\n scrollArea: ['shr-h-[509px]'],\n },\n variants: {\n noIcon: {\n true: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button]:shr-pl-1.5'],\n },\n },\n selected: {\n false: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-text-grey'],\n },\n },\n },\n})\n\nexport const AppLauncher: FC<Props> = ({ features: baseFeatures }) => {\n const {\n features,\n page,\n mode,\n sortType,\n searchQuery,\n changePage,\n setSortType,\n onChangeSearchQuery,\n onClickClearSearchQuery,\n } = useAppLauncher(baseFeatures)\n\n const classNames = useMemo(() => {\n const {\n wrapper,\n searchArea,\n inner,\n side,\n sideNav,\n sideNavHeading,\n help,\n main,\n mainInner,\n contentHead,\n scrollArea,\n } = appLauncher()\n\n return {\n wrapper: wrapper(),\n searchArea: searchArea(),\n inner: inner(),\n side: side(),\n unselectedSideNav: sideNav({ selected: false }),\n selectedSideNav: sideNav({ noIcon: true, selected: true }),\n sideNavHeading: sideNavHeading(),\n help: help(),\n main: main(),\n mainInner: mainInner(),\n contentHead: contentHead(),\n scrollArea: scrollArea(),\n }\n }, [])\n\n const { localize } = useIntl()\n const translated = useMemo<\n Record<\n Launcher['page'] | 'listText' | 'searchInputTitle' | 'helpText' | 'searchResultText',\n ReactNode\n >\n >(\n () => ({\n favorite: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/favoriteModeText',\n defaultText: 'よく使うアプリ',\n })}\n </Translate>\n ),\n all: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/allModeText',\n defaultText: 'すべてのアプリ',\n })}\n </Translate>\n ),\n listText: (\n <Translate>\n {localize({ id: 'smarthr-ui/AppHeader/Launcher/listText', defaultText: 'アプリ一覧' })}\n </Translate>\n ),\n searchInputTitle: localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchInputTitle',\n defaultText: 'アプリ名を入力してください。',\n }),\n helpText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/helpText',\n defaultText: 'よく使うアプリとは',\n })}\n </Translate>\n ),\n searchResultText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchResultText',\n defaultText: '検索結果',\n })}\n </Translate>\n ),\n }),\n [localize],\n )\n\n return (\n <div className={classNames.wrapper}>\n <div className={classNames.searchArea}>\n <SearchInput\n name=\"search\"\n title={translated.searchInputTitle as string}\n tooltipMessage={<Translate>{translated.searchInputTitle}</Translate>}\n width=\"100%\"\n value={searchQuery}\n suffix={mode === 'search' && <ClearSearchButton onClick={onClickClearSearchQuery} />}\n onChange={onChangeSearchQuery}\n />\n </div>\n\n <div className={classNames.inner}>\n <SideNavs\n mode={mode}\n page={page}\n changePage={changePage}\n translated={translated}\n classNames={classNames}\n />\n <div className={classNames.main}>\n <Section className={classNames.mainInner}>\n <Cluster className={classNames.contentHead} align=\"center\" justify=\"space-between\">\n <MemoizedSubSubBlockHeading>\n {mode === 'search' ? translated.searchResultText : translated[page]}\n </MemoizedSubSubBlockHeading>\n\n {(mode === 'search' || page === 'all') && (\n <AppLauncherSortDropdown sortType={sortType} onSelectSortType={setSortType} />\n )}\n </Cluster>\n\n <Scroller className={classNames.scrollArea}>\n <AppLauncherFeatures features={features} page={page} />\n </Scroller>\n </Section>\n </div>\n </div>\n </div>\n )\n}\n\nconst ClearSearchButton = memo<{ onClick: () => void }>(({ onClick }) => (\n <UnstyledButton onClick={onClick}>\n <FaCircleXmarkIcon />\n </UnstyledButton>\n))\n\nconst SideNavs = memo<\n Pick<ReturnType<typeof useAppLauncher>, 'mode' | 'page' | 'changePage'> & {\n translated: { favorite: ReactNode; listText: ReactNode; all: ReactNode; helpText: ReactNode }\n classNames: {\n side: string\n unselectedSideNav: string\n sideNavHeading: string\n selectedSideNav: string\n help: string\n }\n }\n>(({ mode, page, changePage, translated, classNames }) => {\n const theme = useTheme()\n const isNotSearch = mode !== 'search'\n const isFavorite = isNotSearch && page === 'favorite'\n const isAll = isNotSearch && page === 'all'\n\n const unselectedItems = useMemo(\n () => [\n {\n id: 'favorite',\n title: translated.favorite,\n prefix: <FaStarIcon color={isFavorite ? theme.textColor.white : undefined} />,\n current: isFavorite,\n },\n ],\n [isFavorite, translated, theme.textColor.white],\n )\n const selectedItems = useMemo(\n () => [\n {\n id: 'all',\n title: translated.all,\n current: isAll,\n },\n ],\n [isAll, translated],\n )\n\n const onClick = useCallback(\n (_: any, id: string) => {\n changePage(id as Launcher['page'])\n },\n [changePage],\n )\n\n return (\n <div className={classNames.side}>\n <SideNav\n className={classNames.unselectedSideNav}\n size=\"S\"\n items={unselectedItems}\n onClick={onClick}\n />\n\n <hr />\n\n <Section>\n <MemoizedSubSubBlockHeading className={classNames.sideNavHeading}>\n {translated.listText}\n </MemoizedSubSubBlockHeading>\n <SideNav\n className={classNames.selectedSideNav}\n size=\"S\"\n items={selectedItems}\n onClick={onClick}\n />\n </Section>\n\n <HelpLinkArea className={classNames.help}>{translated.helpText}</HelpLinkArea>\n </div>\n )\n})\n\nconst HelpLinkArea = memo<PropsWithChildren<{ className: string }>>(({ children, className }) => (\n <div className={className}>\n <HelpLink\n href=\"https://support.smarthr.jp/ja/help/articles/2bfd350d-8e8b-4bbd-a209-426d2eb302cc/\"\n target=\"_blank\"\n >\n {children}\n </HelpLink>\n </div>\n))\n\nconst MemoizedSubSubBlockHeading = memo<PropsWithChildren<{ className?: string }>>(\n ({ children, className }) => (\n <Heading type=\"subSubBlockTitle\" className={className}>\n {children}\n </Heading>\n ),\n)\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA;AACE;AACE;;;AAGC;AACD;;;;AAIC;AACD;AACA;;;;AAIC;AACD;;;;AAIC;;AAED;AACA;;AAEA;;;AAGC;;AAEF;AACD;AACE;AACE;;AAEC;AACF;AACD;AACE;;AAEC;AACF;AACF;AACF;AAEM;;AAaL;;;;;;;;AAqBI;;;;;;;;;AAUJ;AACA;AAOI;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGL;;AAME;AACA;;AAEF;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGN;;AA8CL;AAEA;AAMA;AAYE;AACA;AACA;AACA;AAEA;AAEI;AACE;;AAEA;AACA;AACD;AACF;AAGH;AAEI;AACE;;AAEA;AACD;AACF;;;AAOD;AAIF;AA0BF;AAEA;AAWA;;"}
|
|
1
|
+
{"version":3,"file":"AppLauncher.cjs","sources":["../../../../../src/components/AppHeader/components/desktop/AppLauncher.tsx"],"sourcesContent":["'use client'\n\nimport { type FC, type PropsWithChildren, type ReactNode, memo, useCallback, useMemo } from 'react'\nimport { tv } from 'tailwind-variants'\n\nimport { useTheme } from '../../../../hooks/useTheme'\nimport { useIntl } from '../../../../intl'\nimport { UnstyledButton } from '../../../Button'\nimport { Heading } from '../../../Heading'\nimport { FaCircleXmarkIcon, FaStarIcon } from '../../../Icon'\nimport { SearchInput } from '../../../Input'\nimport { Cluster } from '../../../Layout'\nimport { Scroller } from '../../../Scroller'\nimport { Section } from '../../../SectioningContent'\nimport { SideNav, SideNavItemButton } from '../../../SideNav'\nimport { HelpLink } from '../../../TextLink'\nimport { useAppLauncher } from '../../hooks/useAppLauncher'\nimport { AppLauncherFeatures } from '../common/AppLauncherFeatures'\nimport { AppLauncherSortDropdown } from '../common/AppLauncherSortDropdown'\nimport { Translate } from '../common/Translate'\n\nimport type { Launcher } from '../../types'\n\ntype Props = {\n features: Array<Launcher['feature']>\n}\n\nconst appLauncher = tv({\n slots: {\n wrapper: [\n 'smarthr-ui-AppLauncher',\n 'shr-grid shr-h-[40rem] shr-w-[38rem] shr-grid-rows-[auto_1fr]',\n ],\n searchArea: [\n 'smarthr-ui-AppLauncher-searchArea',\n 'shr-border-b-shorthand shr-p-1',\n '[&_.smarthr-ui-Input]:shr-h-[42px]',\n ],\n inner: ['smarthr-ui-AppLauncher-inner', 'shr-grid shr-min-h-0 shr-grid-cols-[11rem_1fr]'],\n side: [\n 'smarthr-ui-AppLauncher-side',\n 'shr-border-r-shorthand shr-flex shr-flex-col shr-bg-column shr-pb-1 shr-pt-0.5',\n '[&_hr]:shr-m-0.5 [&_hr]:shr-h-[1px] [&_hr]:shr-border-none [&_hr]:shr-bg-border',\n ],\n sideNav: [\n '[&_.smarthr-ui-SideNav-item>button]:shr-px-1 [&_.smarthr-ui-SideNav-item>button]:shr-py-0.75',\n '[&_.smarthr-ui-SideNav-item>button>span]:shr-flex-nowrap',\n '[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-shrink-0 [&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-align-bottom',\n ],\n sideNavHeading: ['shr-px-1 shr-py-0.75 shr-text-xs shr-text-black'],\n help: ['smarthr-ui-AppLauncher-help', 'shr-mt-auto shr-px-1 shr-text-xs'],\n main: ['smarthr-ui-AppLauncher-main', 'shr-grid shr-min-h-0'],\n mainInner: ['shr-grid shr-min-h-0 shr-grid-rows-[auto_1fr]'],\n contentHead: [\n 'shr-min-h-[2rem] shr-px-1 shr-py-0.75',\n '[&_.smarthr-ui-Heading]:shr-text-black',\n ],\n scrollArea: ['shr-h-[509px]'],\n },\n variants: {\n noIcon: {\n true: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button]:shr-pl-1.5'],\n },\n },\n selected: {\n false: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-text-grey'],\n },\n },\n },\n})\n\nexport const AppLauncher: FC<Props> = ({ features: baseFeatures }) => {\n const {\n features,\n page,\n mode,\n sortType,\n searchQuery,\n changePage,\n setSortType,\n onChangeSearchQuery,\n onClickClearSearchQuery,\n } = useAppLauncher(baseFeatures)\n\n const classNames = useMemo(() => {\n const {\n wrapper,\n searchArea,\n inner,\n side,\n sideNav,\n sideNavHeading,\n help,\n main,\n mainInner,\n contentHead,\n scrollArea,\n } = appLauncher()\n\n return {\n wrapper: wrapper(),\n searchArea: searchArea(),\n inner: inner(),\n side: side(),\n unselectedSideNav: sideNav({ selected: false }),\n selectedSideNav: sideNav({ noIcon: true, selected: true }),\n sideNavHeading: sideNavHeading(),\n help: help(),\n main: main(),\n mainInner: mainInner(),\n contentHead: contentHead(),\n scrollArea: scrollArea(),\n }\n }, [])\n\n const { localize } = useIntl()\n const translated = useMemo<\n Record<\n Launcher['page'] | 'listText' | 'searchInputTitle' | 'helpText' | 'searchResultText',\n ReactNode\n >\n >(\n () => ({\n favorite: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/favoriteModeText',\n defaultText: 'よく使うアプリ',\n })}\n </Translate>\n ),\n all: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/allModeText',\n defaultText: 'すべてのアプリ',\n })}\n </Translate>\n ),\n listText: (\n <Translate>\n {localize({ id: 'smarthr-ui/AppHeader/Launcher/listText', defaultText: 'アプリ一覧' })}\n </Translate>\n ),\n searchInputTitle: localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchInputTitle',\n defaultText: 'アプリ名を入力してください。',\n }),\n helpText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/helpText',\n defaultText: 'よく使うアプリとは',\n })}\n </Translate>\n ),\n searchResultText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchResultText',\n defaultText: '検索結果',\n })}\n </Translate>\n ),\n }),\n [localize],\n )\n\n return (\n <div className={classNames.wrapper}>\n <div className={classNames.searchArea}>\n <SearchInput\n name=\"search\"\n title={translated.searchInputTitle as string}\n tooltipMessage={<Translate>{translated.searchInputTitle}</Translate>}\n width=\"100%\"\n value={searchQuery}\n suffix={mode === 'search' && <ClearSearchButton onClick={onClickClearSearchQuery} />}\n onChange={onChangeSearchQuery}\n />\n </div>\n\n <div className={classNames.inner}>\n <SideNavs\n mode={mode}\n page={page}\n changePage={changePage}\n translated={translated}\n classNames={classNames}\n />\n <div className={classNames.main}>\n <Section className={classNames.mainInner}>\n <Cluster className={classNames.contentHead} align=\"center\" justify=\"space-between\">\n <MemoizedSubSubBlockHeading>\n {mode === 'search' ? translated.searchResultText : translated[page]}\n </MemoizedSubSubBlockHeading>\n\n {(mode === 'search' || page === 'all') && (\n <AppLauncherSortDropdown sortType={sortType} onSelectSortType={setSortType} />\n )}\n </Cluster>\n\n <Scroller className={classNames.scrollArea}>\n <AppLauncherFeatures features={features} page={page} />\n </Scroller>\n </Section>\n </div>\n </div>\n </div>\n )\n}\n\nconst ClearSearchButton = memo<{ onClick: () => void }>(({ onClick }) => (\n <UnstyledButton onClick={onClick}>\n <FaCircleXmarkIcon />\n </UnstyledButton>\n))\n\nconst SideNavs = memo<\n Pick<ReturnType<typeof useAppLauncher>, 'mode' | 'page' | 'changePage'> & {\n translated: { favorite: ReactNode; listText: ReactNode; all: ReactNode; helpText: ReactNode }\n classNames: {\n side: string\n unselectedSideNav: string\n sideNavHeading: string\n selectedSideNav: string\n help: string\n }\n }\n>(({ mode, page, changePage, translated, classNames }) => {\n const theme = useTheme()\n const isNotSearch = mode !== 'search'\n const isFavorite = isNotSearch && page === 'favorite'\n const isAll = isNotSearch && page === 'all'\n\n const unselectedItems = useMemo(\n () => [\n {\n id: 'favorite',\n title: translated.favorite,\n prefix: <FaStarIcon color={isFavorite ? theme.textColor.white : undefined} />,\n current: isFavorite,\n },\n ],\n [isFavorite, translated, theme.textColor.white],\n )\n const selectedItems = useMemo(\n () => [\n {\n id: 'all',\n title: translated.all,\n current: isAll,\n },\n ],\n [isAll, translated],\n )\n\n const onClick = useCallback(\n (e: React.MouseEvent<HTMLButtonElement>) => {\n changePage(e.currentTarget.value as Launcher['page'])\n },\n [changePage],\n )\n\n return (\n <div className={classNames.side}>\n <SideNav\n className={classNames.unselectedSideNav}\n size=\"S\"\n aria-label={typeof translated.favorite === 'string' ? translated.favorite : undefined}\n >\n {unselectedItems.map((item) => (\n <SideNavItemButton\n key={item.id}\n id={item.id}\n prefix={item.prefix}\n current={item.current}\n onClick={onClick}\n >\n {item.title}\n </SideNavItemButton>\n ))}\n </SideNav>\n\n <hr />\n\n <Section>\n <MemoizedSubSubBlockHeading className={classNames.sideNavHeading}>\n {translated.listText}\n </MemoizedSubSubBlockHeading>\n <SideNav\n className={classNames.selectedSideNav}\n size=\"S\"\n aria-label={typeof translated.listText === 'string' ? translated.listText : undefined}\n >\n {selectedItems.map((item) => (\n <SideNavItemButton key={item.id} id={item.id} current={item.current} onClick={onClick}>\n {item.title}\n </SideNavItemButton>\n ))}\n </SideNav>\n </Section>\n\n <HelpLinkArea className={classNames.help}>{translated.helpText}</HelpLinkArea>\n </div>\n )\n})\n\nconst HelpLinkArea = memo<PropsWithChildren<{ className: string }>>(({ children, className }) => (\n <div className={className}>\n <HelpLink\n href=\"https://support.smarthr.jp/ja/help/articles/2bfd350d-8e8b-4bbd-a209-426d2eb302cc/\"\n target=\"_blank\"\n >\n {children}\n </HelpLink>\n </div>\n))\n\nconst MemoizedSubSubBlockHeading = memo<PropsWithChildren<{ className?: string }>>(\n ({ children, className }) => (\n <Heading type=\"subSubBlockTitle\" className={className}>\n {children}\n </Heading>\n ),\n)\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA;AACE;AACE;;;AAGC;AACD;;;;AAIC;AACD;AACA;;;;AAIC;AACD;;;;AAIC;;AAED;AACA;;AAEA;;;AAGC;;AAEF;AACD;AACE;AACE;;AAEC;AACF;AACD;AACE;;AAEC;AACF;AACF;AACF;AAEM;;AAaL;;;;;;;;AAqBI;;;;;;;;;AAUJ;AACA;AAOI;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGL;;AAME;AACA;;AAEF;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGN;;AA8CL;AAEA;AAMA;AAYE;AACA;AACA;AACA;AAEA;AAEI;AACE;;AAEA;AACA;AACD;AACF;AAGH;AAEI;AACE;;AAEA;AACD;AACF;AAIH;AAEI;AACF;;AA8CJ;AAEA;AAWA;;"}
|
|
@@ -5,7 +5,7 @@ import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tai
|
|
|
5
5
|
import { useTheme } from '../../../../hooks/useTheme.js';
|
|
6
6
|
import '../../../../intl/IntlProvider.js';
|
|
7
7
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
8
|
-
import '
|
|
8
|
+
import '../../../../intl/Localizer.js';
|
|
9
9
|
import '../../../../_virtual/dayjs.min.js';
|
|
10
10
|
import '../../../../intl/TimeFormatter.js';
|
|
11
11
|
import '../../../Button/Button.js';
|
|
@@ -30,7 +30,7 @@ import { Section } from '../../../SectioningContent/SectioningContent.js';
|
|
|
30
30
|
import '../../../SectioningContent/levelContext.js';
|
|
31
31
|
import 'styled-components';
|
|
32
32
|
import { SideNav } from '../../../SideNav/SideNav.js';
|
|
33
|
-
import '../../../SideNav/SideNavItemButton.js';
|
|
33
|
+
import { SideNavItemButton } from '../../../SideNav/SideNavItemButton.js';
|
|
34
34
|
import '../../../TextLink/TextLink.js';
|
|
35
35
|
import { HelpLink } from '../../../TextLink/HelpLink/HelpLink.js';
|
|
36
36
|
import '../../../TextLink/UpwardLink/UpwardLink.js';
|
|
@@ -150,10 +150,10 @@ const SideNavs = memo(({ mode, page, changePage, translated, classNames }) => {
|
|
|
150
150
|
current: isAll,
|
|
151
151
|
},
|
|
152
152
|
], [isAll, translated]);
|
|
153
|
-
const onClick = useCallback((
|
|
154
|
-
changePage(
|
|
153
|
+
const onClick = useCallback((e) => {
|
|
154
|
+
changePage(e.currentTarget.value);
|
|
155
155
|
}, [changePage]);
|
|
156
|
-
return (jsxs("div", { className: classNames.side, children: [jsx(SideNav, { className: classNames.unselectedSideNav, size: "S",
|
|
156
|
+
return (jsxs("div", { className: classNames.side, children: [jsx(SideNav, { className: classNames.unselectedSideNav, size: "S", "aria-label": typeof translated.favorite === 'string' ? translated.favorite : undefined, children: unselectedItems.map((item) => (jsx(SideNavItemButton, { id: item.id, prefix: item.prefix, current: item.current, onClick: onClick, children: item.title }, item.id))) }), jsx("hr", {}), jsxs(Section, { children: [jsx(MemoizedSubSubBlockHeading, { className: classNames.sideNavHeading, children: translated.listText }), jsx(SideNav, { className: classNames.selectedSideNav, size: "S", "aria-label": typeof translated.listText === 'string' ? translated.listText : undefined, children: selectedItems.map((item) => (jsx(SideNavItemButton, { id: item.id, current: item.current, onClick: onClick, children: item.title }, item.id))) })] }), jsx(HelpLinkArea, { className: classNames.help, children: translated.helpText })] }));
|
|
157
157
|
});
|
|
158
158
|
const HelpLinkArea = memo(({ children, className }) => (jsx("div", { className: className, children: jsx(HelpLink, { href: "https://support.smarthr.jp/ja/help/articles/2bfd350d-8e8b-4bbd-a209-426d2eb302cc/", target: "_blank", children: children }) })));
|
|
159
159
|
const MemoizedSubSubBlockHeading = memo(({ children, className }) => (jsx(Heading, { type: "subSubBlockTitle", className: className, children: children })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppLauncher.js","sources":["../../../../../src/components/AppHeader/components/desktop/AppLauncher.tsx"],"sourcesContent":["'use client'\n\nimport { type FC, type PropsWithChildren, type ReactNode, memo, useCallback, useMemo } from 'react'\nimport { tv } from 'tailwind-variants'\n\nimport { useTheme } from '../../../../hooks/useTheme'\nimport { useIntl } from '../../../../intl'\nimport { UnstyledButton } from '../../../Button'\nimport { Heading } from '../../../Heading'\nimport { FaCircleXmarkIcon, FaStarIcon } from '../../../Icon'\nimport { SearchInput } from '../../../Input'\nimport { Cluster } from '../../../Layout'\nimport { Scroller } from '../../../Scroller'\nimport { Section } from '../../../SectioningContent'\nimport { SideNav } from '../../../SideNav'\nimport { HelpLink } from '../../../TextLink'\nimport { useAppLauncher } from '../../hooks/useAppLauncher'\nimport { AppLauncherFeatures } from '../common/AppLauncherFeatures'\nimport { AppLauncherSortDropdown } from '../common/AppLauncherSortDropdown'\nimport { Translate } from '../common/Translate'\n\nimport type { Launcher } from '../../types'\n\ntype Props = {\n features: Array<Launcher['feature']>\n}\n\nconst appLauncher = tv({\n slots: {\n wrapper: [\n 'smarthr-ui-AppLauncher',\n 'shr-grid shr-h-[40rem] shr-w-[38rem] shr-grid-rows-[auto_1fr]',\n ],\n searchArea: [\n 'smarthr-ui-AppLauncher-searchArea',\n 'shr-border-b-shorthand shr-p-1',\n '[&_.smarthr-ui-Input]:shr-h-[42px]',\n ],\n inner: ['smarthr-ui-AppLauncher-inner', 'shr-grid shr-min-h-0 shr-grid-cols-[11rem_1fr]'],\n side: [\n 'smarthr-ui-AppLauncher-side',\n 'shr-border-r-shorthand shr-flex shr-flex-col shr-bg-column shr-pb-1 shr-pt-0.5',\n '[&_hr]:shr-m-0.5 [&_hr]:shr-h-[1px] [&_hr]:shr-border-none [&_hr]:shr-bg-border',\n ],\n sideNav: [\n '[&_.smarthr-ui-SideNav-item>button]:shr-px-1 [&_.smarthr-ui-SideNav-item>button]:shr-py-0.75',\n '[&_.smarthr-ui-SideNav-item>button>span]:shr-flex-nowrap',\n '[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-shrink-0 [&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-align-bottom',\n ],\n sideNavHeading: ['shr-px-1 shr-py-0.75 shr-text-xs shr-text-black'],\n help: ['smarthr-ui-AppLauncher-help', 'shr-mt-auto shr-px-1 shr-text-xs'],\n main: ['smarthr-ui-AppLauncher-main', 'shr-grid shr-min-h-0'],\n mainInner: ['shr-grid shr-min-h-0 shr-grid-rows-[auto_1fr]'],\n contentHead: [\n 'shr-min-h-[2rem] shr-px-1 shr-py-0.75',\n '[&_.smarthr-ui-Heading]:shr-text-black',\n ],\n scrollArea: ['shr-h-[509px]'],\n },\n variants: {\n noIcon: {\n true: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button]:shr-pl-1.5'],\n },\n },\n selected: {\n false: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-text-grey'],\n },\n },\n },\n})\n\nexport const AppLauncher: FC<Props> = ({ features: baseFeatures }) => {\n const {\n features,\n page,\n mode,\n sortType,\n searchQuery,\n changePage,\n setSortType,\n onChangeSearchQuery,\n onClickClearSearchQuery,\n } = useAppLauncher(baseFeatures)\n\n const classNames = useMemo(() => {\n const {\n wrapper,\n searchArea,\n inner,\n side,\n sideNav,\n sideNavHeading,\n help,\n main,\n mainInner,\n contentHead,\n scrollArea,\n } = appLauncher()\n\n return {\n wrapper: wrapper(),\n searchArea: searchArea(),\n inner: inner(),\n side: side(),\n unselectedSideNav: sideNav({ selected: false }),\n selectedSideNav: sideNav({ noIcon: true, selected: true }),\n sideNavHeading: sideNavHeading(),\n help: help(),\n main: main(),\n mainInner: mainInner(),\n contentHead: contentHead(),\n scrollArea: scrollArea(),\n }\n }, [])\n\n const { localize } = useIntl()\n const translated = useMemo<\n Record<\n Launcher['page'] | 'listText' | 'searchInputTitle' | 'helpText' | 'searchResultText',\n ReactNode\n >\n >(\n () => ({\n favorite: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/favoriteModeText',\n defaultText: 'よく使うアプリ',\n })}\n </Translate>\n ),\n all: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/allModeText',\n defaultText: 'すべてのアプリ',\n })}\n </Translate>\n ),\n listText: (\n <Translate>\n {localize({ id: 'smarthr-ui/AppHeader/Launcher/listText', defaultText: 'アプリ一覧' })}\n </Translate>\n ),\n searchInputTitle: localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchInputTitle',\n defaultText: 'アプリ名を入力してください。',\n }),\n helpText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/helpText',\n defaultText: 'よく使うアプリとは',\n })}\n </Translate>\n ),\n searchResultText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchResultText',\n defaultText: '検索結果',\n })}\n </Translate>\n ),\n }),\n [localize],\n )\n\n return (\n <div className={classNames.wrapper}>\n <div className={classNames.searchArea}>\n <SearchInput\n name=\"search\"\n title={translated.searchInputTitle as string}\n tooltipMessage={<Translate>{translated.searchInputTitle}</Translate>}\n width=\"100%\"\n value={searchQuery}\n suffix={mode === 'search' && <ClearSearchButton onClick={onClickClearSearchQuery} />}\n onChange={onChangeSearchQuery}\n />\n </div>\n\n <div className={classNames.inner}>\n <SideNavs\n mode={mode}\n page={page}\n changePage={changePage}\n translated={translated}\n classNames={classNames}\n />\n <div className={classNames.main}>\n <Section className={classNames.mainInner}>\n <Cluster className={classNames.contentHead} align=\"center\" justify=\"space-between\">\n <MemoizedSubSubBlockHeading>\n {mode === 'search' ? translated.searchResultText : translated[page]}\n </MemoizedSubSubBlockHeading>\n\n {(mode === 'search' || page === 'all') && (\n <AppLauncherSortDropdown sortType={sortType} onSelectSortType={setSortType} />\n )}\n </Cluster>\n\n <Scroller className={classNames.scrollArea}>\n <AppLauncherFeatures features={features} page={page} />\n </Scroller>\n </Section>\n </div>\n </div>\n </div>\n )\n}\n\nconst ClearSearchButton = memo<{ onClick: () => void }>(({ onClick }) => (\n <UnstyledButton onClick={onClick}>\n <FaCircleXmarkIcon />\n </UnstyledButton>\n))\n\nconst SideNavs = memo<\n Pick<ReturnType<typeof useAppLauncher>, 'mode' | 'page' | 'changePage'> & {\n translated: { favorite: ReactNode; listText: ReactNode; all: ReactNode; helpText: ReactNode }\n classNames: {\n side: string\n unselectedSideNav: string\n sideNavHeading: string\n selectedSideNav: string\n help: string\n }\n }\n>(({ mode, page, changePage, translated, classNames }) => {\n const theme = useTheme()\n const isNotSearch = mode !== 'search'\n const isFavorite = isNotSearch && page === 'favorite'\n const isAll = isNotSearch && page === 'all'\n\n const unselectedItems = useMemo(\n () => [\n {\n id: 'favorite',\n title: translated.favorite,\n prefix: <FaStarIcon color={isFavorite ? theme.textColor.white : undefined} />,\n current: isFavorite,\n },\n ],\n [isFavorite, translated, theme.textColor.white],\n )\n const selectedItems = useMemo(\n () => [\n {\n id: 'all',\n title: translated.all,\n current: isAll,\n },\n ],\n [isAll, translated],\n )\n\n const onClick = useCallback(\n (_: any, id: string) => {\n changePage(id as Launcher['page'])\n },\n [changePage],\n )\n\n return (\n <div className={classNames.side}>\n <SideNav\n className={classNames.unselectedSideNav}\n size=\"S\"\n items={unselectedItems}\n onClick={onClick}\n />\n\n <hr />\n\n <Section>\n <MemoizedSubSubBlockHeading className={classNames.sideNavHeading}>\n {translated.listText}\n </MemoizedSubSubBlockHeading>\n <SideNav\n className={classNames.selectedSideNav}\n size=\"S\"\n items={selectedItems}\n onClick={onClick}\n />\n </Section>\n\n <HelpLinkArea className={classNames.help}>{translated.helpText}</HelpLinkArea>\n </div>\n )\n})\n\nconst HelpLinkArea = memo<PropsWithChildren<{ className: string }>>(({ children, className }) => (\n <div className={className}>\n <HelpLink\n href=\"https://support.smarthr.jp/ja/help/articles/2bfd350d-8e8b-4bbd-a209-426d2eb302cc/\"\n target=\"_blank\"\n >\n {children}\n </HelpLink>\n </div>\n))\n\nconst MemoizedSubSubBlockHeading = memo<PropsWithChildren<{ className?: string }>>(\n ({ children, className }) => (\n <Heading type=\"subSubBlockTitle\" className={className}>\n {children}\n </Heading>\n ),\n)\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA;AACE;AACE;;;AAGC;AACD;;;;AAIC;AACD;AACA;;;;AAIC;AACD;;;;AAIC;;AAED;AACA;;AAEA;;;AAGC;;AAEF;AACD;AACE;AACE;;AAEC;AACF;AACD;AACE;;AAEC;AACF;AACF;AACF;AAEM;;AAaL;;;;;;;;AAqBI;;;;;;;;;AAUJ;AACA;AAOI;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGL;;AAME;AACA;;AAEF;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGN;;AA8CL;AAEA;AAMA;AAYE;AACA;AACA;AACA;AAEA;AAEI;AACE;;AAEA;AACA;AACD;AACF;AAGH;AAEI;AACE;;AAEA;AACD;AACF;;;AAOD;AAIF;AA0BF;AAEA;AAWA;;"}
|
|
1
|
+
{"version":3,"file":"AppLauncher.js","sources":["../../../../../src/components/AppHeader/components/desktop/AppLauncher.tsx"],"sourcesContent":["'use client'\n\nimport { type FC, type PropsWithChildren, type ReactNode, memo, useCallback, useMemo } from 'react'\nimport { tv } from 'tailwind-variants'\n\nimport { useTheme } from '../../../../hooks/useTheme'\nimport { useIntl } from '../../../../intl'\nimport { UnstyledButton } from '../../../Button'\nimport { Heading } from '../../../Heading'\nimport { FaCircleXmarkIcon, FaStarIcon } from '../../../Icon'\nimport { SearchInput } from '../../../Input'\nimport { Cluster } from '../../../Layout'\nimport { Scroller } from '../../../Scroller'\nimport { Section } from '../../../SectioningContent'\nimport { SideNav, SideNavItemButton } from '../../../SideNav'\nimport { HelpLink } from '../../../TextLink'\nimport { useAppLauncher } from '../../hooks/useAppLauncher'\nimport { AppLauncherFeatures } from '../common/AppLauncherFeatures'\nimport { AppLauncherSortDropdown } from '../common/AppLauncherSortDropdown'\nimport { Translate } from '../common/Translate'\n\nimport type { Launcher } from '../../types'\n\ntype Props = {\n features: Array<Launcher['feature']>\n}\n\nconst appLauncher = tv({\n slots: {\n wrapper: [\n 'smarthr-ui-AppLauncher',\n 'shr-grid shr-h-[40rem] shr-w-[38rem] shr-grid-rows-[auto_1fr]',\n ],\n searchArea: [\n 'smarthr-ui-AppLauncher-searchArea',\n 'shr-border-b-shorthand shr-p-1',\n '[&_.smarthr-ui-Input]:shr-h-[42px]',\n ],\n inner: ['smarthr-ui-AppLauncher-inner', 'shr-grid shr-min-h-0 shr-grid-cols-[11rem_1fr]'],\n side: [\n 'smarthr-ui-AppLauncher-side',\n 'shr-border-r-shorthand shr-flex shr-flex-col shr-bg-column shr-pb-1 shr-pt-0.5',\n '[&_hr]:shr-m-0.5 [&_hr]:shr-h-[1px] [&_hr]:shr-border-none [&_hr]:shr-bg-border',\n ],\n sideNav: [\n '[&_.smarthr-ui-SideNav-item>button]:shr-px-1 [&_.smarthr-ui-SideNav-item>button]:shr-py-0.75',\n '[&_.smarthr-ui-SideNav-item>button>span]:shr-flex-nowrap',\n '[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-shrink-0 [&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-align-bottom',\n ],\n sideNavHeading: ['shr-px-1 shr-py-0.75 shr-text-xs shr-text-black'],\n help: ['smarthr-ui-AppLauncher-help', 'shr-mt-auto shr-px-1 shr-text-xs'],\n main: ['smarthr-ui-AppLauncher-main', 'shr-grid shr-min-h-0'],\n mainInner: ['shr-grid shr-min-h-0 shr-grid-rows-[auto_1fr]'],\n contentHead: [\n 'shr-min-h-[2rem] shr-px-1 shr-py-0.75',\n '[&_.smarthr-ui-Heading]:shr-text-black',\n ],\n scrollArea: ['shr-h-[509px]'],\n },\n variants: {\n noIcon: {\n true: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button]:shr-pl-1.5'],\n },\n },\n selected: {\n false: {\n sideNav: ['[&_.smarthr-ui-SideNav-item>button_.smarthr-ui-Icon]:shr-text-grey'],\n },\n },\n },\n})\n\nexport const AppLauncher: FC<Props> = ({ features: baseFeatures }) => {\n const {\n features,\n page,\n mode,\n sortType,\n searchQuery,\n changePage,\n setSortType,\n onChangeSearchQuery,\n onClickClearSearchQuery,\n } = useAppLauncher(baseFeatures)\n\n const classNames = useMemo(() => {\n const {\n wrapper,\n searchArea,\n inner,\n side,\n sideNav,\n sideNavHeading,\n help,\n main,\n mainInner,\n contentHead,\n scrollArea,\n } = appLauncher()\n\n return {\n wrapper: wrapper(),\n searchArea: searchArea(),\n inner: inner(),\n side: side(),\n unselectedSideNav: sideNav({ selected: false }),\n selectedSideNav: sideNav({ noIcon: true, selected: true }),\n sideNavHeading: sideNavHeading(),\n help: help(),\n main: main(),\n mainInner: mainInner(),\n contentHead: contentHead(),\n scrollArea: scrollArea(),\n }\n }, [])\n\n const { localize } = useIntl()\n const translated = useMemo<\n Record<\n Launcher['page'] | 'listText' | 'searchInputTitle' | 'helpText' | 'searchResultText',\n ReactNode\n >\n >(\n () => ({\n favorite: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/favoriteModeText',\n defaultText: 'よく使うアプリ',\n })}\n </Translate>\n ),\n all: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/allModeText',\n defaultText: 'すべてのアプリ',\n })}\n </Translate>\n ),\n listText: (\n <Translate>\n {localize({ id: 'smarthr-ui/AppHeader/Launcher/listText', defaultText: 'アプリ一覧' })}\n </Translate>\n ),\n searchInputTitle: localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchInputTitle',\n defaultText: 'アプリ名を入力してください。',\n }),\n helpText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/helpText',\n defaultText: 'よく使うアプリとは',\n })}\n </Translate>\n ),\n searchResultText: (\n <Translate>\n {localize({\n id: 'smarthr-ui/AppHeader/Launcher/searchResultText',\n defaultText: '検索結果',\n })}\n </Translate>\n ),\n }),\n [localize],\n )\n\n return (\n <div className={classNames.wrapper}>\n <div className={classNames.searchArea}>\n <SearchInput\n name=\"search\"\n title={translated.searchInputTitle as string}\n tooltipMessage={<Translate>{translated.searchInputTitle}</Translate>}\n width=\"100%\"\n value={searchQuery}\n suffix={mode === 'search' && <ClearSearchButton onClick={onClickClearSearchQuery} />}\n onChange={onChangeSearchQuery}\n />\n </div>\n\n <div className={classNames.inner}>\n <SideNavs\n mode={mode}\n page={page}\n changePage={changePage}\n translated={translated}\n classNames={classNames}\n />\n <div className={classNames.main}>\n <Section className={classNames.mainInner}>\n <Cluster className={classNames.contentHead} align=\"center\" justify=\"space-between\">\n <MemoizedSubSubBlockHeading>\n {mode === 'search' ? translated.searchResultText : translated[page]}\n </MemoizedSubSubBlockHeading>\n\n {(mode === 'search' || page === 'all') && (\n <AppLauncherSortDropdown sortType={sortType} onSelectSortType={setSortType} />\n )}\n </Cluster>\n\n <Scroller className={classNames.scrollArea}>\n <AppLauncherFeatures features={features} page={page} />\n </Scroller>\n </Section>\n </div>\n </div>\n </div>\n )\n}\n\nconst ClearSearchButton = memo<{ onClick: () => void }>(({ onClick }) => (\n <UnstyledButton onClick={onClick}>\n <FaCircleXmarkIcon />\n </UnstyledButton>\n))\n\nconst SideNavs = memo<\n Pick<ReturnType<typeof useAppLauncher>, 'mode' | 'page' | 'changePage'> & {\n translated: { favorite: ReactNode; listText: ReactNode; all: ReactNode; helpText: ReactNode }\n classNames: {\n side: string\n unselectedSideNav: string\n sideNavHeading: string\n selectedSideNav: string\n help: string\n }\n }\n>(({ mode, page, changePage, translated, classNames }) => {\n const theme = useTheme()\n const isNotSearch = mode !== 'search'\n const isFavorite = isNotSearch && page === 'favorite'\n const isAll = isNotSearch && page === 'all'\n\n const unselectedItems = useMemo(\n () => [\n {\n id: 'favorite',\n title: translated.favorite,\n prefix: <FaStarIcon color={isFavorite ? theme.textColor.white : undefined} />,\n current: isFavorite,\n },\n ],\n [isFavorite, translated, theme.textColor.white],\n )\n const selectedItems = useMemo(\n () => [\n {\n id: 'all',\n title: translated.all,\n current: isAll,\n },\n ],\n [isAll, translated],\n )\n\n const onClick = useCallback(\n (e: React.MouseEvent<HTMLButtonElement>) => {\n changePage(e.currentTarget.value as Launcher['page'])\n },\n [changePage],\n )\n\n return (\n <div className={classNames.side}>\n <SideNav\n className={classNames.unselectedSideNav}\n size=\"S\"\n aria-label={typeof translated.favorite === 'string' ? translated.favorite : undefined}\n >\n {unselectedItems.map((item) => (\n <SideNavItemButton\n key={item.id}\n id={item.id}\n prefix={item.prefix}\n current={item.current}\n onClick={onClick}\n >\n {item.title}\n </SideNavItemButton>\n ))}\n </SideNav>\n\n <hr />\n\n <Section>\n <MemoizedSubSubBlockHeading className={classNames.sideNavHeading}>\n {translated.listText}\n </MemoizedSubSubBlockHeading>\n <SideNav\n className={classNames.selectedSideNav}\n size=\"S\"\n aria-label={typeof translated.listText === 'string' ? translated.listText : undefined}\n >\n {selectedItems.map((item) => (\n <SideNavItemButton key={item.id} id={item.id} current={item.current} onClick={onClick}>\n {item.title}\n </SideNavItemButton>\n ))}\n </SideNav>\n </Section>\n\n <HelpLinkArea className={classNames.help}>{translated.helpText}</HelpLinkArea>\n </div>\n )\n})\n\nconst HelpLinkArea = memo<PropsWithChildren<{ className: string }>>(({ children, className }) => (\n <div className={className}>\n <HelpLink\n href=\"https://support.smarthr.jp/ja/help/articles/2bfd350d-8e8b-4bbd-a209-426d2eb302cc/\"\n target=\"_blank\"\n >\n {children}\n </HelpLink>\n </div>\n))\n\nconst MemoizedSubSubBlockHeading = memo<PropsWithChildren<{ className?: string }>>(\n ({ children, className }) => (\n <Heading type=\"subSubBlockTitle\" className={className}>\n {children}\n </Heading>\n ),\n)\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA;AACE;AACE;;;AAGC;AACD;;;;AAIC;AACD;AACA;;;;AAIC;AACD;;;;AAIC;;AAED;AACA;;AAEA;;;AAGC;;AAEF;AACD;AACE;AACE;;AAEC;AACF;AACD;AACE;;AAEC;AACF;AACF;AACF;AAEM;;AAaL;;;;;;;;AAqBI;;;;;;;;;AAUJ;AACA;AAOI;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGL;;AAME;AACA;;AAEF;AAGM;AACA;AACD;AAGL;AAGM;AACA;AACD;AAGN;;AA8CL;AAEA;AAMA;AAYE;AACA;AACA;AACA;AAEA;AAEI;AACE;;AAEA;AACA;AACD;AACF;AAGH;AAEI;AACE;;AAEA;AACD;AACF;AAIH;AAEI;AACF;;AA8CJ;AAEA;AAWA;;"}
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
var intl_localeMap = require('../../../../intl/localeMap.cjs');
|
|
@@ -3,7 +3,7 @@ import { memo, useMemo } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import { localeMap } from '../../../../intl/localeMap.js';
|
|
@@ -6,7 +6,7 @@ var React = require('react');
|
|
|
6
6
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
7
7
|
require('../../../../intl/IntlProvider.cjs');
|
|
8
8
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
9
|
-
require('
|
|
9
|
+
require('../../../../intl/Localizer.cjs');
|
|
10
10
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
11
11
|
require('../../../../intl/TimeFormatter.cjs');
|
|
12
12
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -4,7 +4,7 @@ import { memo, useMemo } from 'react';
|
|
|
4
4
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
5
5
|
import '../../../../intl/IntlProvider.js';
|
|
6
6
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
7
|
-
import '
|
|
7
|
+
import '../../../../intl/Localizer.js';
|
|
8
8
|
import '../../../../_virtual/dayjs.min.js';
|
|
9
9
|
import '../../../../intl/TimeFormatter.js';
|
|
10
10
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -3,7 +3,7 @@ import { memo, useMemo } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
require('../../../Button/Button.cjs');
|
|
@@ -3,7 +3,7 @@ import { memo, useMemo } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import '../../../Button/Button.js';
|
|
@@ -7,7 +7,7 @@ var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwind
|
|
|
7
7
|
var hooks_useTheme = require('../../../../hooks/useTheme.cjs');
|
|
8
8
|
require('../../../../intl/IntlProvider.cjs');
|
|
9
9
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
10
|
-
require('
|
|
10
|
+
require('../../../../intl/Localizer.cjs');
|
|
11
11
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
12
12
|
require('../../../../intl/TimeFormatter.cjs');
|
|
13
13
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -5,7 +5,7 @@ import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tai
|
|
|
5
5
|
import { useTheme } from '../../../../hooks/useTheme.js';
|
|
6
6
|
import '../../../../intl/IntlProvider.js';
|
|
7
7
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
8
|
-
import '
|
|
8
|
+
import '../../../../intl/Localizer.js';
|
|
9
9
|
import '../../../../_virtual/dayjs.min.js';
|
|
10
10
|
import '../../../../intl/TimeFormatter.js';
|
|
11
11
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -4,7 +4,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
var React = require('react');
|
|
5
5
|
require('../../../../intl/IntlProvider.cjs');
|
|
6
6
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
7
|
-
require('
|
|
7
|
+
require('../../../../intl/Localizer.cjs');
|
|
8
8
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
9
9
|
require('../../../../intl/TimeFormatter.cjs');
|
|
10
10
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -2,7 +2,7 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
2
2
|
import { memo, useMemo } from 'react';
|
|
3
3
|
import '../../../../intl/IntlProvider.js';
|
|
4
4
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
5
|
-
import '
|
|
5
|
+
import '../../../../intl/Localizer.js';
|
|
6
6
|
import '../../../../_virtual/dayjs.min.js';
|
|
7
7
|
import '../../../../intl/TimeFormatter.js';
|
|
8
8
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
var intl_localeMap = require('../../../../intl/localeMap.cjs');
|
|
@@ -3,7 +3,7 @@ import { memo, useMemo, useCallback } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import { localeMap } from '../../../../intl/localeMap.js';
|
|
@@ -7,7 +7,7 @@ var hooks_useHandleEscape = require('../../../../hooks/useHandleEscape.cjs');
|
|
|
7
7
|
var hooks_usePortal = require('../../../../hooks/usePortal.cjs');
|
|
8
8
|
require('../../../../intl/IntlProvider.cjs');
|
|
9
9
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
10
|
-
require('
|
|
10
|
+
require('../../../../intl/Localizer.cjs');
|
|
11
11
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
12
12
|
require('../../../../intl/TimeFormatter.cjs');
|
|
13
13
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -5,7 +5,7 @@ import { useHandleEscape } from '../../../../hooks/useHandleEscape.js';
|
|
|
5
5
|
import { usePortal } from '../../../../hooks/usePortal.js';
|
|
6
6
|
import '../../../../intl/IntlProvider.js';
|
|
7
7
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
8
|
-
import '
|
|
8
|
+
import '../../../../intl/Localizer.js';
|
|
9
9
|
import '../../../../_virtual/dayjs.min.js';
|
|
10
10
|
import '../../../../intl/TimeFormatter.js';
|
|
11
11
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -4,7 +4,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
var React = require('react');
|
|
5
5
|
require('../../../../intl/IntlProvider.cjs');
|
|
6
6
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
7
|
-
require('
|
|
7
|
+
require('../../../../intl/Localizer.cjs');
|
|
8
8
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
9
9
|
require('../../../../intl/TimeFormatter.cjs');
|
|
10
10
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -2,7 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { memo, useCallback, useMemo, useId } from 'react';
|
|
3
3
|
import '../../../../intl/IntlProvider.js';
|
|
4
4
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
5
|
-
import '
|
|
5
|
+
import '../../../../intl/Localizer.js';
|
|
6
6
|
import '../../../../_virtual/dayjs.min.js';
|
|
7
7
|
import '../../../../intl/TimeFormatter.js';
|
|
8
8
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -24,7 +24,7 @@ var components_SectioningContent_SectioningContent = require('../../../Sectionin
|
|
|
24
24
|
require('../../../SectioningContent/levelContext.cjs');
|
|
25
25
|
require('styled-components');
|
|
26
26
|
require('../../../Dialog/DialogBody.cjs');
|
|
27
|
-
require('../../../
|
|
27
|
+
require('../../../ResponseMessage/ResponseMessage.cjs');
|
|
28
28
|
require('../../../Dialog/DialogHeading.cjs');
|
|
29
29
|
require('../../../Dialog/dialogInnerStyle.cjs');
|
|
30
30
|
require('../../../Dialog/ControlledStepFormDialog/StepFormDialogProvider.cjs');
|
|
@@ -3,7 +3,7 @@ import { useContext, useMemo, useCallback, useEffect, useRef } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -22,7 +22,7 @@ import { Section } from '../../../SectioningContent/SectioningContent.js';
|
|
|
22
22
|
import '../../../SectioningContent/levelContext.js';
|
|
23
23
|
import 'styled-components';
|
|
24
24
|
import '../../../Dialog/DialogBody.js';
|
|
25
|
-
import '../../../
|
|
25
|
+
import '../../../ResponseMessage/ResponseMessage.js';
|
|
26
26
|
import '../../../Dialog/DialogHeading.js';
|
|
27
27
|
import '../../../Dialog/dialogInnerStyle.js';
|
|
28
28
|
import '../../../Dialog/ControlledStepFormDialog/StepFormDialogProvider.js';
|
|
@@ -4,7 +4,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
var React = require('react');
|
|
5
5
|
require('../../../../intl/IntlProvider.cjs');
|
|
6
6
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
7
|
-
require('
|
|
7
|
+
require('../../../../intl/Localizer.cjs');
|
|
8
8
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
9
9
|
require('../../../../intl/TimeFormatter.cjs');
|
|
10
10
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -2,7 +2,7 @@ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { memo, useMemo } from 'react';
|
|
3
3
|
import '../../../../intl/IntlProvider.js';
|
|
4
4
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
5
|
-
import '
|
|
5
|
+
import '../../../../intl/Localizer.js';
|
|
6
6
|
import '../../../../_virtual/dayjs.min.js';
|
|
7
7
|
import '../../../../intl/TimeFormatter.js';
|
|
8
8
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
require('../../../Icon/generateIcon.cjs');
|
|
@@ -3,7 +3,7 @@ import { memo, useContext, useMemo } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import '../../../Icon/generateIcon.js';
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var index = require('./../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.cjs');
|
|
6
6
|
require('../../../../intl/IntlProvider.cjs');
|
|
7
7
|
var intl_useIntl = require('../../../../intl/useIntl.cjs');
|
|
8
|
-
require('
|
|
8
|
+
require('../../../../intl/Localizer.cjs');
|
|
9
9
|
require('../../../../_virtual/dayjs.min.cjs');
|
|
10
10
|
require('../../../../intl/TimeFormatter.cjs');
|
|
11
11
|
var components_Button_Button = require('../../../Button/Button.cjs');
|
|
@@ -25,7 +25,7 @@ require('../../../SectioningContent/SectioningContent.cjs');
|
|
|
25
25
|
require('../../../SectioningContent/levelContext.cjs');
|
|
26
26
|
require('styled-components');
|
|
27
27
|
require('../../../Dialog/DialogBody.cjs');
|
|
28
|
-
require('../../../
|
|
28
|
+
require('../../../ResponseMessage/ResponseMessage.cjs');
|
|
29
29
|
require('../../../Dialog/DialogHeading.cjs');
|
|
30
30
|
require('../../../Dialog/dialogInnerStyle.cjs');
|
|
31
31
|
require('../../../Dialog/ControlledStepFormDialog/StepFormDialogProvider.cjs');
|
|
@@ -3,7 +3,7 @@ import { memo, useMemo, useState, useCallback } from 'react';
|
|
|
3
3
|
import { tv as ce } from './../../../../vendor/.pnpm/tailwind-variants@0.3.1_tailwindcss@3.4.19_ts-node@10.9.2_@swc_core@1.15.17_@types_node@20.19.35_typescript@5.9.3__/vendor/tailwind-variants/dist/index.js';
|
|
4
4
|
import '../../../../intl/IntlProvider.js';
|
|
5
5
|
import { useIntl } from '../../../../intl/useIntl.js';
|
|
6
|
-
import '
|
|
6
|
+
import '../../../../intl/Localizer.js';
|
|
7
7
|
import '../../../../_virtual/dayjs.min.js';
|
|
8
8
|
import '../../../../intl/TimeFormatter.js';
|
|
9
9
|
import { Button } from '../../../Button/Button.js';
|
|
@@ -23,7 +23,7 @@ import '../../../SectioningContent/SectioningContent.js';
|
|
|
23
23
|
import '../../../SectioningContent/levelContext.js';
|
|
24
24
|
import 'styled-components';
|
|
25
25
|
import '../../../Dialog/DialogBody.js';
|
|
26
|
-
import '../../../
|
|
26
|
+
import '../../../ResponseMessage/ResponseMessage.js';
|
|
27
27
|
import '../../../Dialog/DialogHeading.js';
|
|
28
28
|
import '../../../Dialog/dialogInnerStyle.js';
|
|
29
29
|
import '../../../Dialog/ControlledStepFormDialog/StepFormDialogProvider.js';
|
|
@@ -51,10 +51,14 @@ const Browser = ({ value, items, onSelectItem, className, ...rest }) => {
|
|
|
51
51
|
return [];
|
|
52
52
|
return [...node.getAncestors().map((n) => n.value), node.value];
|
|
53
53
|
}, [rootNode, value]);
|
|
54
|
-
const
|
|
54
|
+
const unstableRef = React.useRef({ onSelectItem, value, rootNode });
|
|
55
|
+
unstableRef.current = { onSelectItem, value, rootNode };
|
|
55
56
|
// FIXME: focusメソッドのfocusVisibleが主要ブラウザでサポートされたら使うようにしたい(現状ではマウスクリックでもfocusのoutlineが出てしまう)
|
|
56
57
|
// https://developer.mozilla.org/ja/docs/Web/API/HTMLElement/focus
|
|
57
58
|
const onDelegateKeyDown = React.useCallback((e) => {
|
|
59
|
+
const selectedNode = unstableRef.current.value
|
|
60
|
+
? unstableRef.current.rootNode.findByValue(unstableRef.current.value)
|
|
61
|
+
: undefined;
|
|
58
62
|
if (!selectedNode) {
|
|
59
63
|
return;
|
|
60
64
|
}
|
|
@@ -84,16 +88,16 @@ const Browser = ({ value, items, onSelectItem, className, ...rest }) => {
|
|
|
84
88
|
}
|
|
85
89
|
if (target) {
|
|
86
90
|
e.preventDefault();
|
|
87
|
-
onSelectItem?.(target.value);
|
|
91
|
+
unstableRef.current.onSelectItem?.(target.value);
|
|
88
92
|
document.getElementById(components_Browser_utils.getElementIdFromNode(target.value))?.focus();
|
|
89
93
|
}
|
|
90
|
-
}, [
|
|
91
|
-
const onChangeInput = React.
|
|
92
|
-
|
|
93
|
-
|
|
94
|
+
}, []);
|
|
95
|
+
const onChangeInput = React.useCallback((e) => {
|
|
96
|
+
unstableRef.current.onSelectItem?.(e.currentTarget.value);
|
|
97
|
+
}, []);
|
|
94
98
|
return (
|
|
95
99
|
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
|
|
96
|
-
jsxRuntime.jsx("div", { ...rest, role: "application", onKeyDown: onDelegateKeyDown, className: classNames.wrapper, children: columns.map((colItems, index) => (jsxRuntime.jsx(components_Browser_BrowserColumn.BrowserColumn, { items: colItems, index: index, value: selectedPath[index], onChangeInput: onChangeInput, className: classNames.column }, index))) }));
|
|
100
|
+
jsxRuntime.jsx("div", { ...rest, role: "application", onKeyDown: onDelegateKeyDown, className: classNames.wrapper, children: columns.map((colItems, index) => (jsxRuntime.jsx(components_Browser_BrowserColumn.BrowserColumn, { items: colItems, index: index, value: selectedPath[index], onChangeInput: onSelectItem ? onChangeInput : undefined, className: classNames.column }, index))) }));
|
|
97
101
|
};
|
|
98
102
|
|
|
99
103
|
exports.Browser = Browser;
|