@endora-commerce/admin-shell 0.108.0 → 0.109.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/dist/AdminRoot.js +1 -1
- package/dist/AdminRoot.js.map +1 -1
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +2 -6
- package/dist/App.js.map +1 -1
- package/dist/components/AdminFeedback.d.ts.map +1 -1
- package/dist/components/AdminFeedback.js +3 -9
- package/dist/components/AdminFeedback.js.map +1 -1
- package/dist/components/AppShell.d.ts.map +1 -1
- package/dist/components/AppShell.js +177 -143
- package/dist/components/AppShell.js.map +1 -1
- package/dist/components/FederatedSignIn.d.ts.map +1 -1
- package/dist/components/FederatedSignIn.js +1 -2
- package/dist/components/FederatedSignIn.js.map +1 -1
- package/dist/components/IdleLogout.js +1 -1
- package/dist/components/IdleLogout.js.map +1 -1
- package/dist/components/ImpersonationBanner.d.ts.map +1 -1
- package/dist/components/ImpersonationBanner.js +2 -3
- package/dist/components/ImpersonationBanner.js.map +1 -1
- package/dist/components/LanguagePicker.d.ts.map +1 -1
- package/dist/components/LanguagePicker.js +2 -5
- package/dist/components/LanguagePicker.js.map +1 -1
- package/dist/components/LoginPage.d.ts.map +1 -1
- package/dist/components/LoginPage.js +2 -6
- package/dist/components/LoginPage.js.map +1 -1
- package/dist/components/RoleRequiredNotice.js +2 -2
- package/dist/components/RoleRequiredNotice.js.map +1 -1
- package/dist/components/SpeechToTextButton.js +1 -1
- package/dist/components/SpeechToTextButton.js.map +1 -1
- package/dist/components/VersionBadge.js +2 -2
- package/dist/components/VersionBadge.js.map +1 -1
- package/dist/components/notifications/NotificationBell.d.ts.map +1 -1
- package/dist/components/notifications/NotificationBell.js +1 -2
- package/dist/components/notifications/NotificationBell.js.map +1 -1
- package/dist/components/notifications/notification-text.d.ts +1 -1
- package/dist/components/notifications/notification-text.d.ts.map +1 -1
- package/dist/components/notifications/notification-text.js +1 -2
- package/dist/components/notifications/notification-text.js.map +1 -1
- package/dist/components/notifications/useAdminNotifications.js +1 -1
- package/dist/components/notifications/useAdminNotifications.js.map +1 -1
- package/dist/components/prompt-actions/PromptModePanel.js +2 -2
- package/dist/components/prompt-actions/PromptModePanel.js.map +1 -1
- package/dist/components/prompt-actions/PromptPlanPreview.js +2 -2
- package/dist/components/prompt-actions/PromptPlanPreview.js.map +1 -1
- package/dist/components/sidebar/PinToggleButton.d.ts +21 -0
- package/dist/components/sidebar/PinToggleButton.d.ts.map +1 -0
- package/dist/components/sidebar/PinToggleButton.js +19 -0
- package/dist/components/sidebar/PinToggleButton.js.map +1 -0
- package/dist/components/sidebar/PinnedSection.d.ts +37 -0
- package/dist/components/sidebar/PinnedSection.d.ts.map +1 -0
- package/dist/components/sidebar/PinnedSection.js +70 -0
- package/dist/components/sidebar/PinnedSection.js.map +1 -0
- package/dist/components/sidebar/PreferencesSaveNotice.d.ts +10 -0
- package/dist/components/sidebar/PreferencesSaveNotice.d.ts.map +1 -0
- package/dist/components/sidebar/PreferencesSaveNotice.js +17 -0
- package/dist/components/sidebar/PreferencesSaveNotice.js.map +1 -0
- package/dist/components/sidebar/nav-types.d.ts +59 -0
- package/dist/components/sidebar/nav-types.d.ts.map +1 -0
- package/dist/components/sidebar/nav-types.js +2 -0
- package/dist/components/sidebar/nav-types.js.map +1 -0
- package/dist/components/sidebar/use-pin-actions.d.ts +14 -0
- package/dist/components/sidebar/use-pin-actions.d.ts.map +1 -0
- package/dist/components/sidebar/use-pin-actions.js +22 -0
- package/dist/components/sidebar/use-pin-actions.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/admin-actions/api.js +1 -1
- package/dist/lib/admin-actions/api.js.map +1 -1
- package/dist/lib/admin-actions/useAdminActions.d.ts +2 -1
- package/dist/lib/admin-actions/useAdminActions.d.ts.map +1 -1
- package/dist/lib/admin-actions/useAdminActions.js +5 -14
- package/dist/lib/admin-actions/useAdminActions.js.map +1 -1
- package/dist/lib/admin-feedback/api.js +1 -1
- package/dist/lib/admin-feedback/api.js.map +1 -1
- package/dist/lib/federated-sign-in/api.js +1 -1
- package/dist/lib/federated-sign-in/api.js.map +1 -1
- package/dist/lib/global-search/api.js +1 -1
- package/dist/lib/global-search/api.js.map +1 -1
- package/dist/lib/palette-match.d.ts +26 -0
- package/dist/lib/palette-match.d.ts.map +1 -0
- package/dist/lib/palette-match.js +36 -0
- package/dist/lib/palette-match.js.map +1 -0
- package/dist/lib/pinned-entries.d.ts +49 -0
- package/dist/lib/pinned-entries.d.ts.map +1 -0
- package/dist/lib/pinned-entries.js +58 -0
- package/dist/lib/pinned-entries.js.map +1 -0
- package/dist/lib/platform-info/api.js +1 -1
- package/dist/lib/platform-info/api.js.map +1 -1
- package/dist/lib/prompt-actions/api.js +1 -1
- package/dist/lib/prompt-actions/api.js.map +1 -1
- package/dist/lib/prompt-actions/usePromptRequest.js +1 -1
- package/dist/lib/prompt-actions/usePromptRequest.js.map +1 -1
- package/dist/modules/home/HomePage.d.ts.map +1 -1
- package/dist/modules/home/HomePage.js +2 -4
- package/dist/modules/home/HomePage.js.map +1 -1
- package/dist/modules/home/RecentActivityCard.d.ts.map +1 -1
- package/dist/modules/home/RecentActivityCard.js +1 -2
- package/dist/modules/home/RecentActivityCard.js.map +1 -1
- package/dist/modules/home/activity-render.js +1 -1
- package/dist/modules/home/activity-render.js.map +1 -1
- package/dist/modules/home/useRecentActivity.js +1 -1
- package/dist/modules/home/useRecentActivity.js.map +1 -1
- package/dist/modules/platform/ApiDescriptionPage.d.ts.map +1 -1
- package/dist/modules/platform/ApiDescriptionPage.js +3 -6
- package/dist/modules/platform/ApiDescriptionPage.js.map +1 -1
- package/dist/modules/platform/ModuleActivationControl.d.ts.map +1 -1
- package/dist/modules/platform/ModuleActivationControl.js +2 -3
- package/dist/modules/platform/ModuleActivationControl.js.map +1 -1
- package/dist/modules/platform/ModulesPage.d.ts.map +1 -1
- package/dist/modules/platform/ModulesPage.js +3 -9
- package/dist/modules/platform/ModulesPage.js.map +1 -1
- package/dist/modules/platform/RecentActivityVisibilityControl.js +2 -2
- package/dist/modules/platform/RecentActivityVisibilityControl.js.map +1 -1
- package/dist/modules/platform/api-description.d.ts.map +1 -1
- package/dist/modules/platform/api-description.js +1 -2
- package/dist/modules/platform/api-description.js.map +1 -1
- package/dist/modules/platform/api.js +1 -1
- package/dist/modules/platform/api.js.map +1 -1
- package/dist/modules/profile/ProfilePage.d.ts.map +1 -1
- package/dist/modules/profile/ProfilePage.js +2 -5
- package/dist/modules/profile/ProfilePage.js.map +1 -1
- package/package.json +9 -6
- package/dist/components/FileDropzone.d.ts +0 -17
- package/dist/components/FileDropzone.d.ts.map +0 -1
- package/dist/components/FileDropzone.js +0 -17
- package/dist/components/FileDropzone.js.map +0 -1
- package/dist/components/PaginationFooter.d.ts +0 -18
- package/dist/components/PaginationFooter.d.ts.map +0 -1
- package/dist/components/PaginationFooter.js +0 -17
- package/dist/components/PaginationFooter.js.map +0 -1
- package/dist/components/ResponsiveTable.d.ts +0 -18
- package/dist/components/ResponsiveTable.d.ts.map +0 -1
- package/dist/components/ResponsiveTable.js +0 -17
- package/dist/components/ResponsiveTable.js.map +0 -1
- package/dist/components/RowActionMenu.d.ts +0 -18
- package/dist/components/RowActionMenu.d.ts.map +0 -1
- package/dist/components/RowActionMenu.js +0 -17
- package/dist/components/RowActionMenu.js.map +0 -1
- package/dist/components/StickyFormActions.d.ts +0 -18
- package/dist/components/StickyFormActions.d.ts.map +0 -1
- package/dist/components/StickyFormActions.js +0 -17
- package/dist/components/StickyFormActions.js.map +0 -1
- package/dist/components/TouchReorderButtons.d.ts +0 -18
- package/dist/components/TouchReorderButtons.d.ts.map +0 -1
- package/dist/components/TouchReorderButtons.js +0 -17
- package/dist/components/TouchReorderButtons.js.map +0 -1
- package/dist/components/admin-user-picker/AdminUserPicker.d.ts +0 -18
- package/dist/components/admin-user-picker/AdminUserPicker.d.ts.map +0 -1
- package/dist/components/admin-user-picker/AdminUserPicker.js +0 -17
- package/dist/components/admin-user-picker/AdminUserPicker.js.map +0 -1
- package/dist/components/asset-picker/AssetFieldPicker.d.ts +0 -21
- package/dist/components/asset-picker/AssetFieldPicker.d.ts.map +0 -1
- package/dist/components/asset-picker/AssetFieldPicker.js +0 -20
- package/dist/components/asset-picker/AssetFieldPicker.js.map +0 -1
- package/dist/components/category-picker/CategorySelect.d.ts +0 -18
- package/dist/components/category-picker/CategorySelect.d.ts.map +0 -1
- package/dist/components/category-picker/CategorySelect.js +0 -17
- package/dist/components/category-picker/CategorySelect.js.map +0 -1
- package/dist/components/category-tree-picker/CategoryTreePicker.d.ts +0 -18
- package/dist/components/category-tree-picker/CategoryTreePicker.d.ts.map +0 -1
- package/dist/components/category-tree-picker/CategoryTreePicker.js +0 -17
- package/dist/components/category-tree-picker/CategoryTreePicker.js.map +0 -1
- package/dist/components/category-tree-picker/category-tree-utils.d.ts +0 -18
- package/dist/components/category-tree-picker/category-tree-utils.d.ts.map +0 -1
- package/dist/components/category-tree-picker/category-tree-utils.js +0 -17
- package/dist/components/category-tree-picker/category-tree-utils.js.map +0 -1
- package/dist/components/category-tree-picker/index.d.ts +0 -18
- package/dist/components/category-tree-picker/index.d.ts.map +0 -1
- package/dist/components/category-tree-picker/index.js +0 -17
- package/dist/components/category-tree-picker/index.js.map +0 -1
- package/dist/components/charts/echart.d.ts +0 -18
- package/dist/components/charts/echart.d.ts.map +0 -1
- package/dist/components/charts/echart.js +0 -17
- package/dist/components/charts/echart.js.map +0 -1
- package/dist/components/cms-picker/CmsBlockPicker.d.ts +0 -19
- package/dist/components/cms-picker/CmsBlockPicker.d.ts.map +0 -1
- package/dist/components/cms-picker/CmsBlockPicker.js +0 -18
- package/dist/components/cms-picker/CmsBlockPicker.js.map +0 -1
- package/dist/components/cms-picker/CmsPagePicker.d.ts +0 -19
- package/dist/components/cms-picker/CmsPagePicker.d.ts.map +0 -1
- package/dist/components/cms-picker/CmsPagePicker.js +0 -18
- package/dist/components/cms-picker/CmsPagePicker.js.map +0 -1
- package/dist/components/country-select/index.d.ts +0 -18
- package/dist/components/country-select/index.d.ts.map +0 -1
- package/dist/components/country-select/index.js +0 -17
- package/dist/components/country-select/index.js.map +0 -1
- package/dist/components/customer-group-picker/CustomerGroupPicker.d.ts +0 -18
- package/dist/components/customer-group-picker/CustomerGroupPicker.d.ts.map +0 -1
- package/dist/components/customer-group-picker/CustomerGroupPicker.js +0 -17
- package/dist/components/customer-group-picker/CustomerGroupPicker.js.map +0 -1
- package/dist/components/customer-picker/CustomerPicker.d.ts +0 -18
- package/dist/components/customer-picker/CustomerPicker.d.ts.map +0 -1
- package/dist/components/customer-picker/CustomerPicker.js +0 -17
- package/dist/components/customer-picker/CustomerPicker.js.map +0 -1
- package/dist/components/hooks/useFocusTrap.d.ts +0 -17
- package/dist/components/hooks/useFocusTrap.d.ts.map +0 -1
- package/dist/components/hooks/useFocusTrap.js +0 -17
- package/dist/components/hooks/useFocusTrap.js.map +0 -1
- package/dist/components/hooks/useViewportTier.d.ts +0 -18
- package/dist/components/hooks/useViewportTier.d.ts.map +0 -1
- package/dist/components/hooks/useViewportTier.js +0 -17
- package/dist/components/hooks/useViewportTier.js.map +0 -1
- package/dist/components/organization-picker/OrganizationPicker.d.ts +0 -19
- package/dist/components/organization-picker/OrganizationPicker.d.ts.map +0 -1
- package/dist/components/organization-picker/OrganizationPicker.js +0 -18
- package/dist/components/organization-picker/OrganizationPicker.js.map +0 -1
- package/dist/components/organization-picker/OrganizationPickerMulti.d.ts +0 -19
- package/dist/components/organization-picker/OrganizationPickerMulti.d.ts.map +0 -1
- package/dist/components/organization-picker/OrganizationPickerMulti.js +0 -18
- package/dist/components/organization-picker/OrganizationPickerMulti.js.map +0 -1
- package/dist/components/organization-picker/OrganizationStatusBadge.d.ts +0 -19
- package/dist/components/organization-picker/OrganizationStatusBadge.d.ts.map +0 -1
- package/dist/components/organization-picker/OrganizationStatusBadge.js +0 -18
- package/dist/components/organization-picker/OrganizationStatusBadge.js.map +0 -1
- package/dist/components/organization-picker/index.d.ts +0 -19
- package/dist/components/organization-picker/index.d.ts.map +0 -1
- package/dist/components/organization-picker/index.js +0 -18
- package/dist/components/organization-picker/index.js.map +0 -1
- package/dist/components/organization-picker/useOrganizationsQuery.d.ts +0 -19
- package/dist/components/organization-picker/useOrganizationsQuery.d.ts.map +0 -1
- package/dist/components/organization-picker/useOrganizationsQuery.js +0 -18
- package/dist/components/organization-picker/useOrganizationsQuery.js.map +0 -1
- package/dist/components/payment-method-availability/MethodAvailabilityCell.d.ts +0 -17
- package/dist/components/payment-method-availability/MethodAvailabilityCell.d.ts.map +0 -1
- package/dist/components/payment-method-availability/MethodAvailabilityCell.js +0 -17
- package/dist/components/payment-method-availability/MethodAvailabilityCell.js.map +0 -1
- package/dist/components/reorder/ReorderAnnouncer.d.ts +0 -18
- package/dist/components/reorder/ReorderAnnouncer.d.ts.map +0 -1
- package/dist/components/reorder/ReorderAnnouncer.js +0 -17
- package/dist/components/reorder/ReorderAnnouncer.js.map +0 -1
- package/dist/components/reorder/useReorderList.d.ts +0 -18
- package/dist/components/reorder/useReorderList.d.ts.map +0 -1
- package/dist/components/reorder/useReorderList.js +0 -17
- package/dist/components/reorder/useReorderList.js.map +0 -1
- package/dist/components/rule-builder/RuleBuilder.d.ts +0 -18
- package/dist/components/rule-builder/RuleBuilder.d.ts.map +0 -1
- package/dist/components/rule-builder/RuleBuilder.js +0 -17
- package/dist/components/rule-builder/RuleBuilder.js.map +0 -1
- package/dist/components/sales-channel-picker/SalesChannelPicker.d.ts +0 -19
- package/dist/components/sales-channel-picker/SalesChannelPicker.d.ts.map +0 -1
- package/dist/components/sales-channel-picker/SalesChannelPicker.js +0 -18
- package/dist/components/sales-channel-picker/SalesChannelPicker.js.map +0 -1
- package/dist/components/scope-notice/ScopeNotice.d.ts +0 -18
- package/dist/components/scope-notice/ScopeNotice.d.ts.map +0 -1
- package/dist/components/scope-notice/ScopeNotice.js +0 -17
- package/dist/components/scope-notice/ScopeNotice.js.map +0 -1
- package/dist/components/ui/alert.d.ts +0 -18
- package/dist/components/ui/alert.d.ts.map +0 -1
- package/dist/components/ui/alert.js +0 -17
- package/dist/components/ui/alert.js.map +0 -1
- package/dist/components/ui/badge.d.ts +0 -18
- package/dist/components/ui/badge.d.ts.map +0 -1
- package/dist/components/ui/badge.js +0 -17
- package/dist/components/ui/badge.js.map +0 -1
- package/dist/components/ui/button.d.ts +0 -18
- package/dist/components/ui/button.d.ts.map +0 -1
- package/dist/components/ui/button.js +0 -17
- package/dist/components/ui/button.js.map +0 -1
- package/dist/components/ui/card.d.ts +0 -17
- package/dist/components/ui/card.d.ts.map +0 -1
- package/dist/components/ui/card.js +0 -17
- package/dist/components/ui/card.js.map +0 -1
- package/dist/components/ui/checkbox.d.ts +0 -17
- package/dist/components/ui/checkbox.d.ts.map +0 -1
- package/dist/components/ui/checkbox.js +0 -17
- package/dist/components/ui/checkbox.js.map +0 -1
- package/dist/components/ui/color-picker.d.ts +0 -17
- package/dist/components/ui/color-picker.d.ts.map +0 -1
- package/dist/components/ui/color-picker.js +0 -17
- package/dist/components/ui/color-picker.js.map +0 -1
- package/dist/components/ui/combobox.d.ts +0 -18
- package/dist/components/ui/combobox.d.ts.map +0 -1
- package/dist/components/ui/combobox.js +0 -17
- package/dist/components/ui/combobox.js.map +0 -1
- package/dist/components/ui/input.d.ts +0 -17
- package/dist/components/ui/input.d.ts.map +0 -1
- package/dist/components/ui/input.js +0 -17
- package/dist/components/ui/input.js.map +0 -1
- package/dist/components/ui/label.d.ts +0 -17
- package/dist/components/ui/label.d.ts.map +0 -1
- package/dist/components/ui/label.js +0 -17
- package/dist/components/ui/label.js.map +0 -1
- package/dist/components/ui/multi-select.d.ts +0 -18
- package/dist/components/ui/multi-select.d.ts.map +0 -1
- package/dist/components/ui/multi-select.js +0 -17
- package/dist/components/ui/multi-select.js.map +0 -1
- package/dist/components/ui/page-header.d.ts +0 -18
- package/dist/components/ui/page-header.d.ts.map +0 -1
- package/dist/components/ui/page-header.js +0 -17
- package/dist/components/ui/page-header.js.map +0 -1
- package/dist/components/ui/route-tabs.d.ts +0 -18
- package/dist/components/ui/route-tabs.d.ts.map +0 -1
- package/dist/components/ui/route-tabs.js +0 -17
- package/dist/components/ui/route-tabs.js.map +0 -1
- package/dist/components/ui/save-button-group.d.ts +0 -18
- package/dist/components/ui/save-button-group.d.ts.map +0 -1
- package/dist/components/ui/save-button-group.js +0 -17
- package/dist/components/ui/save-button-group.js.map +0 -1
- package/dist/components/ui/select.d.ts +0 -17
- package/dist/components/ui/select.d.ts.map +0 -1
- package/dist/components/ui/select.js +0 -17
- package/dist/components/ui/select.js.map +0 -1
- package/dist/components/ui/separator.d.ts +0 -17
- package/dist/components/ui/separator.d.ts.map +0 -1
- package/dist/components/ui/separator.js +0 -17
- package/dist/components/ui/separator.js.map +0 -1
- package/dist/components/ui/table.d.ts +0 -17
- package/dist/components/ui/table.d.ts.map +0 -1
- package/dist/components/ui/table.js +0 -17
- package/dist/components/ui/table.js.map +0 -1
- package/dist/components/ui/textarea.d.ts +0 -17
- package/dist/components/ui/textarea.d.ts.map +0 -1
- package/dist/components/ui/textarea.js +0 -17
- package/dist/components/ui/textarea.js.map +0 -1
- package/dist/i18n/TranslationProvider.d.ts +0 -18
- package/dist/i18n/TranslationProvider.d.ts.map +0 -1
- package/dist/i18n/TranslationProvider.js +0 -17
- package/dist/i18n/TranslationProvider.js.map +0 -1
- package/dist/i18n/app-language-context.d.ts +0 -18
- package/dist/i18n/app-language-context.d.ts.map +0 -1
- package/dist/i18n/app-language-context.js +0 -17
- package/dist/i18n/app-language-context.js.map +0 -1
- package/dist/i18n/interpolate.d.ts +0 -17
- package/dist/i18n/interpolate.d.ts.map +0 -1
- package/dist/i18n/interpolate.js +0 -17
- package/dist/i18n/interpolate.js.map +0 -1
- package/dist/i18n/language-storage.d.ts +0 -17
- package/dist/i18n/language-storage.d.ts.map +0 -1
- package/dist/i18n/language-storage.js +0 -17
- package/dist/i18n/language-storage.js.map +0 -1
- package/dist/i18n/resolver.d.ts +0 -18
- package/dist/i18n/resolver.d.ts.map +0 -1
- package/dist/i18n/resolver.js +0 -17
- package/dist/i18n/resolver.js.map +0 -1
- package/dist/i18n/types.d.ts +0 -17
- package/dist/i18n/types.d.ts.map +0 -1
- package/dist/i18n/types.js +0 -2
- package/dist/i18n/types.js.map +0 -1
- package/dist/i18n/useTranslation.d.ts +0 -17
- package/dist/i18n/useTranslation.d.ts.map +0 -1
- package/dist/i18n/useTranslation.js +0 -17
- package/dist/i18n/useTranslation.js.map +0 -1
- package/dist/lib/admin-actions/icon-map.d.ts +0 -17
- package/dist/lib/admin-actions/icon-map.d.ts.map +0 -1
- package/dist/lib/admin-actions/icon-map.js +0 -17
- package/dist/lib/admin-actions/icon-map.js.map +0 -1
- package/dist/lib/api-client.d.ts +0 -17
- package/dist/lib/api-client.d.ts.map +0 -1
- package/dist/lib/api-client.js +0 -17
- package/dist/lib/api-client.js.map +0 -1
- package/dist/lib/auth.d.ts +0 -18
- package/dist/lib/auth.d.ts.map +0 -1
- package/dist/lib/auth.js +0 -17
- package/dist/lib/auth.js.map +0 -1
- package/dist/lib/format.d.ts +0 -17
- package/dist/lib/format.d.ts.map +0 -1
- package/dist/lib/format.js +0 -17
- package/dist/lib/format.js.map +0 -1
- package/dist/lib/module-presence/index.d.ts +0 -19
- package/dist/lib/module-presence/index.d.ts.map +0 -1
- package/dist/lib/module-presence/index.js +0 -18
- package/dist/lib/module-presence/index.js.map +0 -1
- package/dist/lib/money.d.ts +0 -17
- package/dist/lib/money.d.ts.map +0 -1
- package/dist/lib/money.js +0 -17
- package/dist/lib/money.js.map +0 -1
- package/dist/lib/surface-visibility.d.ts +0 -15
- package/dist/lib/surface-visibility.d.ts.map +0 -1
- package/dist/lib/surface-visibility.js +0 -14
- package/dist/lib/surface-visibility.js.map +0 -1
- package/dist/lib/text-normalization.d.ts +0 -17
- package/dist/lib/text-normalization.d.ts.map +0 -1
- package/dist/lib/text-normalization.js +0 -17
- package/dist/lib/text-normalization.js.map +0 -1
- package/dist/lib/use-page-size-preference.d.ts +0 -16
- package/dist/lib/use-page-size-preference.d.ts.map +0 -1
- package/dist/lib/use-page-size-preference.js +0 -15
- package/dist/lib/use-page-size-preference.js.map +0 -1
- package/dist/lib/use-unsaved-changes-prompt.d.ts +0 -17
- package/dist/lib/use-unsaved-changes-prompt.d.ts.map +0 -1
- package/dist/lib/use-unsaved-changes-prompt.js +0 -17
- package/dist/lib/use-unsaved-changes-prompt.js.map +0 -1
- package/dist/lib/utils.d.ts +0 -17
- package/dist/lib/utils.d.ts.map +0 -1
- package/dist/lib/utils.js +0 -17
- package/dist/lib/utils.js.map +0 -1
- package/dist/lib/uuid.d.ts +0 -17
- package/dist/lib/uuid.d.ts.map +0 -1
- package/dist/lib/uuid.js +0 -17
- package/dist/lib/uuid.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptModePanel.js","sourceRoot":"","sources":["../../../src/components/prompt-actions/PromptModePanel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"PromptModePanel.js","sourceRoot":"","sources":["../../../src/components/prompt-actions/PromptModePanel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAuB9D,MAAM,UAAU,eAAe,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,aAAa,EAAS;IAC9E,MAAM,CAAC,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC3C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAC1D,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IACvD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAChF,gBAAgB,EAAE,CAAC;IAErB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,cAAc;YAAE,OAAO;QAC5B,IAAI,CAAC,cAAc,CAAC,CAAC;QACrB,+CAA+C;QAC/C,KAAK,qBAAqB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACvE,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC;IAE3B,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,MAAM,IAAI,GAAG,KAAK,KAAK,cAAc,IAAI,KAAK,KAAK,WAAW,CAAC;IAE/D,MAAM,gBAAgB,GAAG,GAAS,EAAE;QAClC,yEAAyE;QACzE,KAAK,MAAM,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;IACX,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAkB,EAAE;QAC7C,IAAI,KAAK,KAAK,eAAe,EAAE,CAAC;YAC9B,IAAI,SAAS,KAAK,0BAA0B;gBAAE,OAAO,gBAAgB,CAAC;YACtE,IAAI,SAAS,KAAK,qBAAqB;gBAAE,OAAO,mBAAmB,CAAC;YACpE,IAAI,SAAS,KAAK,2BAA2B;gBAAE,OAAO,eAAe,CAAC;YACtE,OAAO,qBAAqB,CAAC;QAC/B,CAAC;QACD,IAAI,KAAK,KAAK,UAAU,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAClD,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;YACvB,KAAK,WAAW;gBACd,OAAO,eAAe,CAAC;YACzB,KAAK,uBAAuB;gBAC1B,OAAO,yBAAyB,CAAC;YACnC,KAAK,aAAa;gBAChB,OAAO,mBAAmB,CAAC;YAC7B,KAAK,SAAS;gBACZ,OAAO,eAAe,CAAC;YACzB,KAAK,QAAQ;gBACX,OAAO,cAAc,CAAC;YACxB,KAAK,WAAW;gBACd,OAAO,IAAI,CAAC;YACd,KAAK,SAAS;gBACZ,OAAO,mBAAmB,CAAC;YAC7B;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,GAAc,EAAE;QACpC,MAAM,GAAG,GAAsB,OAAO,EAAE,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;QACjE,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAClC,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,MAAM,QAAQ,GAA4C,EAAE,CAAC;QAC7D,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;YACvB,IAAI,GAAG,EAAE,CAAC;gBACR,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC;gBAC3B,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC;gBACrB,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;oBACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC7F,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBACrC,SAAS,IAAI,CAAC,CAAC;YACjB,CAAC;iBAAM,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,CAAC;gBACZ,IAAI,EAAE,CAAC,OAAO;oBAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QACD,OAAO,CACL,8BAAiB,uBAAuB,EAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,aAC5E,yBAAO,CAAC,CAAC,uBAAuB,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,GAAQ,EAC9D,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACZ,8BACE,sCAAgB,EAChB,yBAAO,CAAC,CAAC,oBAAoB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAQ,EACzD,aAAI,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAC5D,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACnB,uBAAiB,CAAC,CAAC,OAAO,IAAjB,CAAC,CAAC,GAAG,CAAkB,CACjC,CAAC,GACC,IACJ,CACJ,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;IAErC,OAAO,CACL,8BAAiB,mBAAmB,aAClC,eAAK,SAAS,EAAC,oBAAoB,aACjC,KAAC,QAAQ,IAAC,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAI,EAC3D,gBACE,GAAG,EAAE,QAAQ,iBACD,cAAc,EAC1B,WAAW,EAAE,CAAC,CAAC,wBAAwB,CAAC,EACxC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,IAAI,IAAI,KAAK,KAAK,uBAAuB,EACnD,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAChD,SAAS,EAAE,CAAC,CAAC,EAAQ,EAAE;4BACrB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gCAC3D,CAAC,CAAC,cAAc,EAAE,CAAC;gCACnB,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;4BAC7B,CAAC;wBACH,CAAC,GACD,EACD,CAAC,IAAI,IAAI,KAAK,KAAK,uBAAuB,CAAC,CAAC,CAAC,CAC5C,KAAC,kBAAkB,IACjB,UAAU,EAAE,CAAC,CAAC,kBAAkB,CAAC,EACjC,SAAS,EAAE,CAAC,CAAC,sBAAsB,CAAC,EACpC,YAAY,EAAE,CAAC,IAAI,EAAQ,EAAE;4BAC3B,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;4BAC9C,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;wBAC5B,CAAC,GACD,CACH,CAAC,CAAC,CAAC,IAAI,EACR,eAAM,SAAS,EAAC,YAAY,oBAAW,IACnC,EAEL,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAClB,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,aAC3D,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EACxB,OAAO,EAAE,GAAS,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,YAE9C,CAAC,CAAC,cAAc,CAAC,GACX,EACT,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,WAAW,YACjE,CAAC,CAAC,YAAY,CAAC,GACT,IACL,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,IAAI,CAAC,CAAC,CAAC,CACN,8BACc,aAAa,EACzB,KAAK,EAAE;oBACL,OAAO,EAAE,MAAM;oBACf,UAAU,EAAE,QAAQ;oBACpB,GAAG,EAAE,CAAC;oBACN,OAAO,EAAE,WAAW;oBACpB,QAAQ,EAAE,EAAE;oBACZ,KAAK,EAAE,iBAAiB;iBACzB,aAED,KAAC,OAAO,IAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,cAAc,GAAG,EAC7C,KAAK,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IACtE,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,KAAK,KAAK,uBAAuB,IAAI,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CACpD,KAAC,iBAAiB,IAChB,IAAI,EAAE,OAAO,CAAC,IAAI,EAClB,IAAI,EAAE,KAAK,EACX,SAAS,EAAE,GAAS,EAAE,CAAC,KAAK,OAAO,EAAE,EACrC,QAAQ,EAAE,gBAAgB,GAC1B,CACH,CAAC,CAAC,CAAC,IAAI,EAEP,KAAK,KAAK,qBAAqB,IAAI,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAC3D,8BAAiB,sBAAsB,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,aACrE,cAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC,EAAE,YACpE,CAAC,CAAC,4BAA4B,CAAC,GAC5B,EACN,cAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,EAAE,YAC3D,OAAO,CAAC,aAAa,CAAC,QAAQ,GAC3B,EACL,OAAO,CAAC,aAAa,CAAC,IAAI,KAAK,eAAe;wBAC/C,CAAC,OAAO,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACpD,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,YAC7D,OAAO,CAAC,aAAa,CAAC,UAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAC5C,iBAEE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,mBAAmB,EAC7B,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAC3C,OAAO,EAAE,GAAS,EAAE,CAAC,KAAK,OAAO,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAEhE,0BACE,wBAAM,CAAC,CAAC,KAAK,GAAO,EACnB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACR,cAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,YAAG,CAAC,CAAC,IAAI,GAAO,CACvE,CAAC,CAAC,CAAC,IAAI,IACJ,IAXD,CAAC,CAAC,EAAE,CAYF,CACV,CAAC,GACE,CACP,CAAC,CAAC,CAAC,CACF,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,aACrC,+BACc,2BAA2B,EACvC,SAAS,EAAC,WAAW,EACrB,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAChC,WAAW,EAAE,CAAC,CAAC,wCAAwC,CAAC,EACxD,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAQ,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAClD,EACF,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAC1B,OAAO,EAAE,GAAS,EAAE,CAAC,KAAK,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,YAE3D,CAAC,CAAC,2BAA2B,CAAC,GACxB,IACL,CACP,EACD,cAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,YAC3B,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,OAAO,EAAE,gBAAgB,YACtE,CAAC,CAAC,cAAc,CAAC,GACX,GACL,IACF,CACP,CAAC,CAAC,CAAC,IAAI,EAEP,OAAO,CAAC,CAAC,CAAC,CACT,8BAAiB,gBAAgB,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,aAC7E,wBAAM,CAAC,CAAC,OAAO,CAAC,GAAO,EACtB,OAAO,EAAE,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,aAAa,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CACrF,cAAK,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,EAAE,YACjE,OAAO,CAAC,KAAK,GACV,CACP,CAAC,CAAC,CAAC,IAAI,EACP,aAAa,EAAE,EAChB,eAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,aAC3B,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,GAAS,EAAE;oCAClB,KAAK,EAAE,CAAC;oCACR,SAAS,CAAC,EAAE,CAAC,CAAC;gCAChB,CAAC,YAEA,CAAC,CAAC,YAAY,CAAC,GACT,EACT,KAAC,MAAM,IACL,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,OAAO,EACf,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,YAEvB,CAAC,CAAC,aAAa,CAAC,GACV,IACL,IACF,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Button } from '
|
|
3
|
-
import { useTranslation } from '
|
|
2
|
+
import { Button } from '@endora-commerce/admin-kit/ui';
|
|
3
|
+
import { useTranslation } from '@endora-commerce/admin-kit/i18n';
|
|
4
4
|
export function PromptPlanPreview({ plan, busy, onConfirm, onCancel }) {
|
|
5
5
|
const t = useTranslation('prompt_actions');
|
|
6
6
|
return (_jsxs("div", { "data-testid": "prompt-plan-preview", style: { padding: '12px 16px' }, children: [_jsx("div", { style: { fontSize: 12, color: 'var(--fg-muted)', marginBottom: 8 }, children: t('panel.planHeading') }), _jsx("div", { style: { display: 'flex', flexDirection: 'column', gap: 10 }, children: plan.operations.map((op, i) => (_jsxs("div", { style: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptPlanPreview.js","sourceRoot":"","sources":["../../../src/components/prompt-actions/PromptPlanPreview.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"PromptPlanPreview.js","sourceRoot":"","sources":["../../../src/components/prompt-actions/PromptPlanPreview.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export interface PinToggleButtonProps {
|
|
3
|
+
/** The sidebar entry's own label, in the admin's language. */
|
|
4
|
+
label: string;
|
|
5
|
+
pinned: boolean;
|
|
6
|
+
onToggle: () => void;
|
|
7
|
+
/** Always shown and ≥ 44 × 44 px — the mobile drawer, where there is no hover. */
|
|
8
|
+
touch?: boolean;
|
|
9
|
+
className?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Feature 164 — the pin / unpin control of one sidebar row (FR-004).
|
|
13
|
+
*
|
|
14
|
+
* A real button **after** the row's link, never inside it, so activating it
|
|
15
|
+
* cannot navigate; it is the Tab stop directly after its link (owner ruling,
|
|
16
|
+
* research § *Readings* item 1) and activating it leaves focus where it is. It is
|
|
17
|
+
* revealed on the row's hover and focus, and always shown with a 44 px target
|
|
18
|
+
* on touch (`.b2b-nav-pin--touch`, and `(pointer: coarse)` in the theme).
|
|
19
|
+
*/
|
|
20
|
+
export declare function PinToggleButton({ label, pinned, onToggle, touch, className, }: PinToggleButtonProps): ReactNode;
|
|
21
|
+
//# sourceMappingURL=PinToggleButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PinToggleButton.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/PinToggleButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,MAAM,WAAW,oBAAoB;IACnC,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,kFAAkF;IAClF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,MAAM,EACN,QAAQ,EACR,KAAa,EACb,SAAS,GACV,EAAE,oBAAoB,GAAG,SAAS,CAelC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Pin, PinOff } from 'lucide-react';
|
|
3
|
+
import { cn } from '@endora-commerce/admin-kit/lib';
|
|
4
|
+
import { useTranslation } from '@endora-commerce/admin-kit/i18n';
|
|
5
|
+
/**
|
|
6
|
+
* Feature 164 — the pin / unpin control of one sidebar row (FR-004).
|
|
7
|
+
*
|
|
8
|
+
* A real button **after** the row's link, never inside it, so activating it
|
|
9
|
+
* cannot navigate; it is the Tab stop directly after its link (owner ruling,
|
|
10
|
+
* research § *Readings* item 1) and activating it leaves focus where it is. It is
|
|
11
|
+
* revealed on the row's hover and focus, and always shown with a 44 px target
|
|
12
|
+
* on touch (`.b2b-nav-pin--touch`, and `(pointer: coarse)` in the theme).
|
|
13
|
+
*/
|
|
14
|
+
export function PinToggleButton({ label, pinned, onToggle, touch = false, className, }) {
|
|
15
|
+
const t = useTranslation('core');
|
|
16
|
+
const name = t(pinned ? 'appShell.pinned.unpin' : 'appShell.pinned.pin', { label });
|
|
17
|
+
return (_jsx("button", { type: "button", className: cn('b2b-nav-pin', touch && 'b2b-nav-pin--touch', className), "aria-pressed": pinned, "aria-label": name, title: name, onClick: onToggle, children: pinned ? _jsx(PinOff, { size: 14, "aria-hidden": "true" }) : _jsx(Pin, { size: 14, "aria-hidden": "true" }) }));
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=PinToggleButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PinToggleButton.js","sourceRoot":"","sources":["../../../src/components/sidebar/PinToggleButton.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAYjE;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,KAAK,EACL,MAAM,EACN,QAAQ,EACR,KAAK,GAAG,KAAK,EACb,SAAS,GACY;IACrB,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACpF,OAAO,CACL,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,KAAK,IAAI,oBAAoB,EAAE,SAAS,CAAC,kBACxD,MAAM,gBACR,IAAI,EAChB,KAAK,EAAE,IAAI,EACX,OAAO,EAAE,QAAQ,YAEhB,MAAM,CAAC,CAAC,CAAC,KAAC,MAAM,IAAC,IAAI,EAAE,EAAE,iBAAc,MAAM,GAAG,CAAC,CAAC,CAAC,KAAC,GAAG,IAAC,IAAI,EAAE,EAAE,iBAAc,MAAM,GAAG,GACjF,CACV,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { ResolvedPin } from '../../lib/pinned-entries.js';
|
|
3
|
+
import type { NavItem, NavSection } from './nav-types.js';
|
|
4
|
+
export interface PinnedSectionProps {
|
|
5
|
+
/** The visible pins, in the admin's order (`resolvePinsFrom`). */
|
|
6
|
+
pins: readonly ResolvedPin[];
|
|
7
|
+
/** The composed sections, to name each pin's source section. */
|
|
8
|
+
sections: readonly NavSection[];
|
|
9
|
+
collapsed: boolean;
|
|
10
|
+
onToggleCollapsed: (groupKey: string) => void;
|
|
11
|
+
onUnpin: (pin: ResolvedPin) => void;
|
|
12
|
+
/** The visible pins' destinations in their new order (FR-009). */
|
|
13
|
+
onReorder: (visibleOrder: string[]) => void;
|
|
14
|
+
navLabel: (item: NavItem) => string;
|
|
15
|
+
/** The mobile drawer: pin controls always shown, 44 px targets. */
|
|
16
|
+
touch: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Feature 164 — the sidebar's Pinned section, expanded and in the mobile drawer
|
|
20
|
+
* (FR-001 – FR-005, FR-009; research R-7). The rail renders it as a
|
|
21
|
+
* `RailSection` variant instead, without reordering.
|
|
22
|
+
*
|
|
23
|
+
* Every row is the original entry's own object — its icon, its label, its
|
|
24
|
+
* `end` flag — so the active state matches the original's (FR-003), and a pin
|
|
25
|
+
* whose original is hidden never reaches this component (FR-006). It reuses the
|
|
26
|
+
* sidebar's group, label and item classes; it folds under the group key
|
|
27
|
+
* `pinned` like any other group (FR-013). Nothing is rendered without a visible
|
|
28
|
+
* pin — no heading, no placeholder (FR-002).
|
|
29
|
+
*
|
|
30
|
+
* Reordering is the kit's `useReorderList` over the **visible** pins — pointer
|
|
31
|
+
* drag, the keyboard grab mode on each row's handle (one Tab stop for the whole
|
|
32
|
+
* list), and the touch up/down buttons — announced in the section's own live
|
|
33
|
+
* region. The caller merges the new visible order back slot by slot, so hidden
|
|
34
|
+
* pins keep their places.
|
|
35
|
+
*/
|
|
36
|
+
export declare function PinnedSection({ pins, sections, collapsed, onToggleCollapsed, onUnpin, onReorder, navLabel, touch, }: PinnedSectionProps): ReactNode;
|
|
37
|
+
//# sourceMappingURL=PinnedSection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PinnedSection.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/PinnedSection.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAMpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAO/D,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG1D,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,IAAI,EAAE,SAAS,WAAW,EAAE,CAAC;IAC7B,gEAAgE;IAChE,QAAQ,EAAE,SAAS,UAAU,EAAE,CAAC;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,OAAO,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,CAAC;IACpC,kEAAkE;IAClE,SAAS,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5C,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,MAAM,CAAC;IACpC,mEAAmE;IACnE,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,KAAK,GACN,EAAE,kBAAkB,GAAG,SAAS,CA+GhC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useId, useMemo } from 'react';
|
|
3
|
+
import { NavLink } from 'react-router-dom';
|
|
4
|
+
import { ChevronDown, GripVertical } from 'lucide-react';
|
|
5
|
+
import { ADMIN_PINNED_GROUP_KEY } from '@endora-commerce/contracts';
|
|
6
|
+
import { cn } from '@endora-commerce/admin-kit/lib';
|
|
7
|
+
import { useTranslation } from '@endora-commerce/admin-kit/i18n';
|
|
8
|
+
import { useReorderList, ReorderAnnouncer, TouchReorderButtons, } from '@endora-commerce/admin-kit/components';
|
|
9
|
+
import { PinToggleButton } from './PinToggleButton.js';
|
|
10
|
+
/**
|
|
11
|
+
* Feature 164 — the sidebar's Pinned section, expanded and in the mobile drawer
|
|
12
|
+
* (FR-001 – FR-005, FR-009; research R-7). The rail renders it as a
|
|
13
|
+
* `RailSection` variant instead, without reordering.
|
|
14
|
+
*
|
|
15
|
+
* Every row is the original entry's own object — its icon, its label, its
|
|
16
|
+
* `end` flag — so the active state matches the original's (FR-003), and a pin
|
|
17
|
+
* whose original is hidden never reaches this component (FR-006). It reuses the
|
|
18
|
+
* sidebar's group, label and item classes; it folds under the group key
|
|
19
|
+
* `pinned` like any other group (FR-013). Nothing is rendered without a visible
|
|
20
|
+
* pin — no heading, no placeholder (FR-002).
|
|
21
|
+
*
|
|
22
|
+
* Reordering is the kit's `useReorderList` over the **visible** pins — pointer
|
|
23
|
+
* drag, the keyboard grab mode on each row's handle (one Tab stop for the whole
|
|
24
|
+
* list), and the touch up/down buttons — announced in the section's own live
|
|
25
|
+
* region. The caller merges the new visible order back slot by slot, so hidden
|
|
26
|
+
* pins keep their places.
|
|
27
|
+
*/
|
|
28
|
+
export function PinnedSection({ pins, sections, collapsed, onToggleCollapsed, onUnpin, onReorder, navLabel, touch, }) {
|
|
29
|
+
const t = useTranslation('core');
|
|
30
|
+
const baseId = useId();
|
|
31
|
+
const labels = useMemo(() => {
|
|
32
|
+
const say = (key) => ({ name, index, total }) => t(`appShell.pinned.reorder.${key}`, { label: name, index, total });
|
|
33
|
+
return {
|
|
34
|
+
handle: say('handle'),
|
|
35
|
+
grabbed: say('grabbed'),
|
|
36
|
+
moving: say('moving'),
|
|
37
|
+
dropped: say('dropped'),
|
|
38
|
+
cancelled: say('cancelled'),
|
|
39
|
+
moved: say('moved'),
|
|
40
|
+
atStart: say('atStart'),
|
|
41
|
+
atEnd: say('atEnd'),
|
|
42
|
+
};
|
|
43
|
+
}, [t]);
|
|
44
|
+
const items = useMemo(() => [...pins], [pins]);
|
|
45
|
+
const getId = useCallback((pin) => pin.destination, []);
|
|
46
|
+
const getLabel = useCallback((pin) => navLabel(pin.item), [navLabel]);
|
|
47
|
+
const reorder = useReorderList({
|
|
48
|
+
items,
|
|
49
|
+
getId,
|
|
50
|
+
getLabel,
|
|
51
|
+
onReorder: (next) => onReorder(next.map((pin) => pin.destination)),
|
|
52
|
+
labels,
|
|
53
|
+
});
|
|
54
|
+
if (pins.length === 0)
|
|
55
|
+
return null;
|
|
56
|
+
const sourceOf = (sectionKey) => {
|
|
57
|
+
const section = sections.find((candidate) => candidate.key === sectionKey);
|
|
58
|
+
return section?.labelKey
|
|
59
|
+
? t('appShell.pinned.fromSection', { section: t(section.labelKey) })
|
|
60
|
+
: t('appShell.pinned.fromMain');
|
|
61
|
+
};
|
|
62
|
+
return (_jsxs("div", { "data-testid": "sidebar-pinned", className: cn('b2b-sidebar__group', collapsed && 'b2b-sidebar__group--collapsed'), children: [_jsxs("button", { type: "button", className: "b2b-sidebar__group-label", "aria-expanded": !collapsed, onClick: () => onToggleCollapsed(ADMIN_PINNED_GROUP_KEY), children: [_jsx(ChevronDown, { size: 11 }), _jsx("span", { children: t('appShell.pinned.heading') })] }), _jsx("div", { className: "b2b-sidebar__items", role: "list", "aria-label": t('appShell.pinned.heading'), children: items.map((pin, index) => {
|
|
63
|
+
const Icon = pin.item.icon;
|
|
64
|
+
const label = navLabel(pin.item);
|
|
65
|
+
const sourceId = `${baseId}-from-${index}`;
|
|
66
|
+
const { ref: handleRef, ...handleProps } = reorder.getHandleProps(pin, index);
|
|
67
|
+
return (_jsxs("div", { role: "listitem", ...reorder.getItemProps(pin, index), className: cn('b2b-nav-row b2b-nav-row--pinned', reorder.grabbedId === pin.destination && 'is-grabbed', reorder.draggingId === pin.destination && 'is-dragging', reorder.dropTargetId === pin.destination && 'is-drop-target'), children: [_jsx("button", { ref: handleRef, ...handleProps, className: cn('b2b-nav-pin b2b-nav-reorder-handle', touch && 'b2b-nav-pin--touch'), children: _jsx(GripVertical, { size: 14, "aria-hidden": "true" }) }), _jsxs(NavLink, { to: pin.destination, end: pin.end, "aria-describedby": sourceId, draggable: false, className: ({ isActive }) => cn('b2b-nav-item', isActive && 'is-active'), children: [_jsx(Icon, { size: 16 }), _jsx("span", { style: { flex: 1 }, children: label })] }), _jsx("span", { id: sourceId, className: "sr-only", children: sourceOf(pin.sectionKey) }), _jsx(TouchReorderButtons, { onMoveUp: () => reorder.moveBy(pin.destination, -1), onMoveDown: () => reorder.moveBy(pin.destination, 1), disableUp: index === 0, disableDown: index === items.length - 1 }), _jsx(PinToggleButton, { label: label, pinned: true, touch: touch, onToggle: () => onUnpin(pin) })] }, pin.destination));
|
|
68
|
+
}) }), _jsx(ReorderAnnouncer, { message: reorder.announcement })] }));
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=PinnedSection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PinnedSection.js","sourceRoot":"","sources":["../../../src/components/sidebar/PinnedSection.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Feature 164, FR-017 — a layout change could not be saved.
|
|
4
|
+
*
|
|
5
|
+
* Non-blocking and dismissible, never a dialog; once per failure episode (the
|
|
6
|
+
* store decides that). The polite live region is mounted before it has text, so
|
|
7
|
+
* the sentence is announced when it arrives without taking focus.
|
|
8
|
+
*/
|
|
9
|
+
export declare function PreferencesSaveNotice(): ReactNode;
|
|
10
|
+
//# sourceMappingURL=PreferencesSaveNotice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreferencesSaveNotice.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/PreferencesSaveNotice.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC;;;;;;GAMG;AACH,wBAAgB,qBAAqB,IAAI,SAAS,CAejD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useAdminPreferencesStatus } from '@endora-commerce/admin-kit/lib';
|
|
3
|
+
import { Alert, AlertDescription, Button } from '@endora-commerce/admin-kit/ui';
|
|
4
|
+
import { useTranslation } from '@endora-commerce/admin-kit/i18n';
|
|
5
|
+
/**
|
|
6
|
+
* Feature 164, FR-017 — a layout change could not be saved.
|
|
7
|
+
*
|
|
8
|
+
* Non-blocking and dismissible, never a dialog; once per failure episode (the
|
|
9
|
+
* store decides that). The polite live region is mounted before it has text, so
|
|
10
|
+
* the sentence is announced when it arrives without taking focus.
|
|
11
|
+
*/
|
|
12
|
+
export function PreferencesSaveNotice() {
|
|
13
|
+
const t = useTranslation('core');
|
|
14
|
+
const { unsavedNotice, dismissNotice } = useAdminPreferencesStatus();
|
|
15
|
+
return (_jsx("div", { role: "status", "aria-live": "polite", className: "b2b-preferences-notice", children: unsavedNotice ? (_jsxs(Alert, { role: "none", variant: "warning", className: "b2b-preferences-notice__alert", children: [_jsx(AlertDescription, { children: t('adminPreferences.saveFailed') }), _jsx(Button, { type: "button", variant: "ghost", size: "sm", onClick: dismissNotice, children: t('adminPreferences.dismiss') })] })) : null }));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=PreferencesSaveNotice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PreferencesSaveNotice.js","sourceRoot":"","sources":["../../../src/components/sidebar/PreferencesSaveNotice.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,yBAAyB,EAAE,CAAC;IACrE,OAAO,CACL,cAAK,IAAI,EAAC,QAAQ,eAAW,QAAQ,EAAC,SAAS,EAAC,wBAAwB,YACrE,aAAa,CAAC,CAAC,CAAC,CACf,MAAC,KAAK,IAAC,IAAI,EAAC,MAAM,EAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,+BAA+B,aAC5E,KAAC,gBAAgB,cAAE,CAAC,CAAC,6BAA6B,CAAC,GAAoB,EACvE,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,OAAO,EAAC,IAAI,EAAC,IAAI,EAAC,OAAO,EAAE,aAAa,YACnE,CAAC,CAAC,0BAA0B,CAAC,GACvB,IACH,CACT,CAAC,CAAC,CAAC,IAAI,GACJ,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { LucideIcon } from 'lucide-react';
|
|
2
|
+
import type { GatedSurface, PermissionRequirement } from '@endora-commerce/admin-kit/lib';
|
|
3
|
+
/**
|
|
4
|
+
* The sidebar's entry and section shapes, shared by `AppShell` and the Pinned
|
|
5
|
+
* section (feature 164) — the pin helpers in `lib/pinned-entries.ts` name them.
|
|
6
|
+
*/
|
|
7
|
+
export interface NavItem extends GatedSurface {
|
|
8
|
+
to: string;
|
|
9
|
+
/**
|
|
10
|
+
* Translation key under the `core` scope. Resolved at render time so
|
|
11
|
+
* the label flips when the admin changes preferred language.
|
|
12
|
+
*/
|
|
13
|
+
labelKey: string;
|
|
14
|
+
/**
|
|
15
|
+
* The i18n scope `labelKey` resolves in. Absent means `'core'`, the shared
|
|
16
|
+
* bundle every host entry's key lives in.
|
|
17
|
+
*
|
|
18
|
+
* A module-contributed entry (feature 091) carries its own module id here:
|
|
19
|
+
* its `labelKey` is module-relative (`nav.importExport.label`) and its
|
|
20
|
+
* translations ship in the module's own `i18n/` directory, which is what
|
|
21
|
+
* takes a new module's sidebar label out of the shared `_i18n` bundle — one
|
|
22
|
+
* of the four shared files 11 of the last 12 module additions had to edit.
|
|
23
|
+
*/
|
|
24
|
+
labelScope?: string;
|
|
25
|
+
icon: LucideIcon;
|
|
26
|
+
/**
|
|
27
|
+
* The permission code (or any-of set) that gates the entry's visibility, read
|
|
28
|
+
* from the **route that gates the destination** rather than copied from the
|
|
29
|
+
* entry above it. When unset, the entry renders for every authenticated admin
|
|
30
|
+
* because the destination genuinely has no gate. When set, the entry is hidden
|
|
31
|
+
* unless `useAuth().hasPermission(code)` returns true (the wildcard `*`
|
|
32
|
+
* permission held by `platform_admin` satisfies every code).
|
|
33
|
+
*
|
|
34
|
+
* Issue #230 filled the gaps this comment used to record as an open count:
|
|
35
|
+
* `/orders` (`orders:read`) and `/quote-requests` (`rfqs:handle`) were both
|
|
36
|
+
* advertised to roles that would collect a 403 on arrival.
|
|
37
|
+
*/
|
|
38
|
+
requiredPermission?: PermissionRequirement;
|
|
39
|
+
/**
|
|
40
|
+
* The module that owns this destination, or `null` for a surface the admin
|
|
41
|
+
* shell owns itself (the dashboard). Feature 073 / FR-031: the sidebar is
|
|
42
|
+
* resolved from the server's effective enabled-set, and permission is not a
|
|
43
|
+
* proxy for module ownership — the two axes are filtered separately by
|
|
44
|
+
* `isSurfaceVisible`. Explicit attribution is what keeps a new entry from
|
|
45
|
+
* being silently unfiltered.
|
|
46
|
+
*/
|
|
47
|
+
module: string | null;
|
|
48
|
+
}
|
|
49
|
+
export interface NavSection {
|
|
50
|
+
/** Stable key — the group's collapse key in `sidebarCollapsedGroups`. */
|
|
51
|
+
key: string;
|
|
52
|
+
/**
|
|
53
|
+
* Translation key under the `core` scope for the section heading.
|
|
54
|
+
* Empty string = no group label (rendered flat).
|
|
55
|
+
*/
|
|
56
|
+
labelKey: string;
|
|
57
|
+
items: NavItem[];
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=nav-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-types.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/nav-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAE1F;;;GAGG;AAEH,MAAM,WAAW,OAAQ,SAAQ,YAAY;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,CAAC;IACjB;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,EAAE,qBAAqB,CAAC;IAC3C;;;;;;;OAOG;IACH,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,yEAAyE;IACzE,GAAG,EAAE,MAAM,CAAC;IACZ;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-types.js","sourceRoot":"","sources":["../../../src/components/sidebar/nav-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type PinOutcome = 'pinned' | 'unpinned';
|
|
2
|
+
/**
|
|
3
|
+
* Feature 164 — pin and unpin a sidebar destination, for the sidebar's controls
|
|
4
|
+
* and the command palette's alike (research R-15): one store, one optimistic
|
|
5
|
+
* write, one append rule (FR-007).
|
|
6
|
+
*/
|
|
7
|
+
export declare function usePinActions(): {
|
|
8
|
+
pins: readonly string[];
|
|
9
|
+
isPinned(destination: string): boolean;
|
|
10
|
+
/** Pin `destination` at the end, or unpin it; answers which it did. */
|
|
11
|
+
toggle(destination: string): PinOutcome;
|
|
12
|
+
setPins(next: string[]): void;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=use-pin-actions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-pin-actions.d.ts","sourceRoot":"","sources":["../../../src/components/sidebar/use-pin-actions.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE/C;;;;GAIG;AACH,wBAAgB,aAAa,IAAI;IAC/B,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;IACvC,uEAAuE;IACvE,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAAC;IACxC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC/B,CAeA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { useCallback } from 'react';
|
|
2
|
+
import { useAdminPreference } from '@endora-commerce/admin-kit/lib';
|
|
3
|
+
import { pinDestination, unpinDestination } from '../../lib/pinned-entries.js';
|
|
4
|
+
/**
|
|
5
|
+
* Feature 164 — pin and unpin a sidebar destination, for the sidebar's controls
|
|
6
|
+
* and the command palette's alike (research R-15): one store, one optimistic
|
|
7
|
+
* write, one append rule (FR-007).
|
|
8
|
+
*/
|
|
9
|
+
export function usePinActions() {
|
|
10
|
+
const [pins, setPins] = useAdminPreference('sidebarPins');
|
|
11
|
+
const isPinned = useCallback((destination) => pins.includes(destination), [pins]);
|
|
12
|
+
const toggle = useCallback((destination) => {
|
|
13
|
+
if (pins.includes(destination)) {
|
|
14
|
+
setPins(unpinDestination(pins, destination));
|
|
15
|
+
return 'unpinned';
|
|
16
|
+
}
|
|
17
|
+
setPins(pinDestination(pins, destination));
|
|
18
|
+
return 'pinned';
|
|
19
|
+
}, [pins, setPins]);
|
|
20
|
+
return { pins, isPinned, toggle, setPins };
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=use-pin-actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-pin-actions.js","sourceRoot":"","sources":["../../../src/components/sidebar/use-pin-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAI/E;;;;GAIG;AACH,MAAM,UAAU,aAAa;IAO3B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,WAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,WAAW,CACxB,CAAC,WAAmB,EAAc,EAAE;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;YAC7C,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC;IAClB,CAAC,EACD,CAAC,IAAI,EAAE,OAAO,CAAC,CAChB,CAAC;IACF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7C,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -49,7 +49,7 @@ export type { AdminRootProps } from './AdminRoot.js';
|
|
|
49
49
|
export { App } from './App.js';
|
|
50
50
|
export type { AppProps } from './App.js';
|
|
51
51
|
export { registerAdminServiceWorker } from './registerSw.js';
|
|
52
|
-
export { AuthProvider } from '
|
|
53
|
-
export type { AdminMe, AuthProviderProps } from '
|
|
52
|
+
export { AuthProvider } from '@endora-commerce/admin-kit/lib';
|
|
53
|
+
export type { AdminMe, AuthProviderProps } from '@endora-commerce/admin-kit/lib';
|
|
54
54
|
export type { AdminRegistryEntry } from './lib/module-registry/index.js';
|
|
55
55
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3D,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACjF,YAAY,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
export { AdminRoot, routerBasename } from './AdminRoot.js';
|
|
48
48
|
export { App } from './App.js';
|
|
49
49
|
export { registerAdminServiceWorker } from './registerSw.js';
|
|
50
|
-
export { AuthProvider } from '
|
|
50
|
+
export { AuthProvider } from '@endora-commerce/admin-kit/lib';
|
|
51
51
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE/B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/admin-actions/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/admin-actions/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgC;IAEhC,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,wCAAwC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CACvE,CAAC;IACF,OAAO,GAAG,CAAC,IAAI,CAAC;AAClB,CAAC"}
|
|
@@ -6,7 +6,8 @@ import type { AdminActionView } from '@endora-commerce/contracts';
|
|
|
6
6
|
* The list is already permission-filtered, language-resolved, and
|
|
7
7
|
* sorted by (weight, label) by the server. Client-side we only:
|
|
8
8
|
* - apply the user's typed query against label / description /
|
|
9
|
-
* keywords
|
|
9
|
+
* keywords — every query word must occur somewhere in the row
|
|
10
|
+
* (diacritic-insensitive, case-insensitive; `lib/palette-match.ts`).
|
|
10
11
|
* - return the same list verbatim when the query is empty.
|
|
11
12
|
*/
|
|
12
13
|
export declare function useAdminActions(query?: string): {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAdminActions.d.ts","sourceRoot":"","sources":["../../../src/lib/admin-actions/useAdminActions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAIlE
|
|
1
|
+
{"version":3,"file":"useAdminActions.d.ts","sourceRoot":"","sources":["../../../src/lib/admin-actions/useAdminActions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAIlE;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;IAC/C,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB,CAUA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useMemo } from 'react';
|
|
2
2
|
import { useAdminActionsContext } from './AdminActionsProvider.js';
|
|
3
|
-
import {
|
|
3
|
+
import { matchesSearchTerms, searchTerms } from '../palette-match.js';
|
|
4
4
|
/**
|
|
5
5
|
* Read the operator-visible action list from the registry context, with
|
|
6
6
|
* an optional client-side substring filter.
|
|
@@ -8,7 +8,8 @@ import { normalize } from '../text-normalization.js';
|
|
|
8
8
|
* The list is already permission-filtered, language-resolved, and
|
|
9
9
|
* sorted by (weight, label) by the server. Client-side we only:
|
|
10
10
|
* - apply the user's typed query against label / description /
|
|
11
|
-
* keywords
|
|
11
|
+
* keywords — every query word must occur somewhere in the row
|
|
12
|
+
* (diacritic-insensitive, case-insensitive; `lib/palette-match.ts`).
|
|
12
13
|
* - return the same list verbatim when the query is empty.
|
|
13
14
|
*/
|
|
14
15
|
export function useAdminActions(query) {
|
|
@@ -16,18 +17,8 @@ export function useAdminActions(query) {
|
|
|
16
17
|
const filtered = useMemo(() => {
|
|
17
18
|
if (!query || query.trim().length === 0)
|
|
18
19
|
return ctx.actions;
|
|
19
|
-
const
|
|
20
|
-
return ctx.actions.filter((a) =>
|
|
21
|
-
if (normalize(a.label).includes(needle))
|
|
22
|
-
return true;
|
|
23
|
-
if (a.description && normalize(a.description).includes(needle))
|
|
24
|
-
return true;
|
|
25
|
-
for (const kw of a.keywords) {
|
|
26
|
-
if (normalize(kw).includes(needle))
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
return false;
|
|
30
|
-
});
|
|
20
|
+
const terms = searchTerms(query);
|
|
21
|
+
return ctx.actions.filter((a) => matchesSearchTerms(terms, [a.label, a.description, ...a.keywords]));
|
|
31
22
|
}, [ctx.actions, query]);
|
|
32
23
|
return { actions: filtered, isLoading: ctx.isLoading, error: ctx.error };
|
|
33
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAdminActions.js","sourceRoot":"","sources":["../../../src/lib/admin-actions/useAdminActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useAdminActions.js","sourceRoot":"","sources":["../../../src/lib/admin-actions/useAdminActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEtE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAK5C,MAAM,GAAG,GAAG,sBAAsB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,OAAO,CAAoB,GAAG,EAAE;QAC/C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,GAAG,CAAC,OAAO,CAAC;QAC5D,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9B,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CACnE,CAAC;IACJ,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;IACzB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;AAC3E,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/admin-feedback/api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/admin-feedback/api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAA0B;IAChE,MAAM,SAAS,CAAC,IAAI,CAAO,wBAAwB,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/federated-sign-in/api.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/federated-sign-in/api.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D;;;;;;;;;;;;;;;GAeG;AAEH,+EAA+E;AAC/E,MAAM,aAAa,GAAG,KAAK,CAAC;AAE5B,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,oCAAoC,CACrC,CAAC;QACF,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B;IAGhD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,oCAAoC,CACrC,CAAC;QACF,OAAO,GAAG,CAAC,SAAS,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AdminSearchCapabilitySchema, AdminSearchResponseSchema, } from '@endora-commerce/contracts';
|
|
2
|
-
import { apiClient } from '
|
|
2
|
+
import { apiClient } from '@endora-commerce/admin-kit/lib';
|
|
3
3
|
/**
|
|
4
4
|
* The admin global search endpoints (`specs/150-admin-global-search/`), as the
|
|
5
5
|
* shell's palette reads them. Module-agnostic on purpose: the shell names an
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/global-search/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAI1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/lib/global-search/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAI1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D;;;;;;;;GAQG;AACH,MAAM,IAAI,GAAG,6BAA6B,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,QAAgC,EAChC,MAAoB;IAEpB,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAC7B,GAAG,IAAI,wBAAwB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAC7D,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CACzB,CAAC;IACF,OAAO,2BAA2B,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAA8B,EAC9B,MAAoB;IAEpB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7E,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;QAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9G,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAU,GAAG,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACnG,OAAO,yBAAyB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The ⌘K palette's one matching rule, shared by every group the dialog renders
|
|
3
|
+
* — the server-fed Actions group (`lib/admin-actions/useAdminActions.ts`) and
|
|
4
|
+
* the static Navigate and Assistant rows (`components/AppShell.tsx`). Issue #233
|
|
5
|
+
* is why there is exactly one: two rules for two groups the operator cannot
|
|
6
|
+
* tell apart is how half the palette stopped answering.
|
|
7
|
+
*
|
|
8
|
+
* **Every word of the query must occur somewhere in the row** — in its label,
|
|
9
|
+
* its description or any keyword, each folded by `normalize`. The rule used to
|
|
10
|
+
* be "the whole folded query is a substring of one field", and that made a
|
|
11
|
+
* multi-word query depend on one field carrying those words contiguously and in
|
|
12
|
+
* that inflection: the owner's `kanał sprzedaży` did not find
|
|
13
|
+
* `Kanały sprzedaży` (`kanal sprzedazy` is not a substring of `kanaly sprzedazy`), and
|
|
14
|
+
* `sales channels` did not find it in a Polish admin, because the English words
|
|
15
|
+
* live in two separate keywords. A single-word query matches exactly what it
|
|
16
|
+
* matched before.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Fold a query into the words the row is matched against. Folded once per
|
|
20
|
+
* keystroke by the caller, not once per row; an empty or whitespace-only query
|
|
21
|
+
* yields no words, which {@link matchesSearchTerms} answers with "every row".
|
|
22
|
+
*/
|
|
23
|
+
export declare function searchTerms(query: string): string[];
|
|
24
|
+
/** Does every term occur, as a substring, in at least one of the haystacks? */
|
|
25
|
+
export declare function matchesSearchTerms(terms: readonly string[], haystacks: readonly (string | null | undefined)[]): boolean;
|
|
26
|
+
//# sourceMappingURL=palette-match.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"palette-match.d.ts","sourceRoot":"","sources":["../../src/lib/palette-match.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAInD;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAChD,OAAO,CAIT"}
|