@prenta/admin 2.6.1 → 2.8.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/CHANGELOG.md +132 -0
- package/design-system/tokens.css +196 -85
- package/design-system/tokens.json +310 -85
- package/design-system/tokens.scss +163 -44
- package/design-system/tokens.tailwind.cjs +64 -1
- package/dist/AdminRoot.d.ts.map +1 -1
- package/dist/AdminRoot.js +43 -21
- package/dist/AdminRoot.js.map +1 -1
- package/dist/LoginRoot.d.ts.map +1 -1
- package/dist/LoginRoot.js +2 -1
- package/dist/LoginRoot.js.map +1 -1
- package/dist/__tests__/components/author-avatar.test.js +3 -17
- package/dist/__tests__/components/author-avatar.test.js.map +1 -1
- package/dist/__tests__/components/notification-bell.test.js +86 -15
- package/dist/__tests__/components/notification-bell.test.js.map +1 -1
- package/dist/__tests__/components/responsive-tiers.render.test.d.ts +2 -0
- package/dist/__tests__/components/responsive-tiers.render.test.d.ts.map +1 -0
- package/dist/__tests__/components/responsive-tiers.render.test.js +313 -0
- package/dist/__tests__/components/responsive-tiers.render.test.js.map +1 -0
- package/dist/__tests__/components/serp-preview.render.test.js +6 -3
- package/dist/__tests__/components/serp-preview.render.test.js.map +1 -1
- package/dist/__tests__/components/shell-primitives.render.test.d.ts +2 -0
- package/dist/__tests__/components/shell-primitives.render.test.d.ts.map +1 -0
- package/dist/__tests__/components/shell-primitives.render.test.js +716 -0
- package/dist/__tests__/components/shell-primitives.render.test.js.map +1 -0
- package/dist/__tests__/components/theme-provider-accent.test.js +49 -7
- package/dist/__tests__/components/theme-provider-accent.test.js.map +1 -1
- package/dist/__tests__/components/toggle.test.js +10 -3
- package/dist/__tests__/components/toggle.test.js.map +1 -1
- package/dist/__tests__/components/ui-primitives.test.js +3 -7
- package/dist/__tests__/components/ui-primitives.test.js.map +1 -1
- package/dist/__tests__/layout/build-nav-items.test.js +1 -1
- package/dist/__tests__/layout/build-nav-items.test.js.map +1 -1
- package/dist/__tests__/layout/shell-nav.render.test.d.ts +2 -0
- package/dist/__tests__/layout/shell-nav.render.test.d.ts.map +1 -0
- package/dist/__tests__/layout/shell-nav.render.test.js +736 -0
- package/dist/__tests__/layout/shell-nav.render.test.js.map +1 -0
- package/dist/__tests__/layout/sidebar-forms-submenu.render.test.js +8 -4
- package/dist/__tests__/layout/sidebar-forms-submenu.render.test.js.map +1 -1
- package/dist/__tests__/layout/sidebar-groups.render.test.d.ts +2 -0
- package/dist/__tests__/layout/sidebar-groups.render.test.d.ts.map +1 -0
- package/dist/__tests__/layout/sidebar-groups.render.test.js +56 -0
- package/dist/__tests__/layout/sidebar-groups.render.test.js.map +1 -0
- package/dist/__tests__/layout/sidebar-menus.render.test.d.ts +2 -0
- package/dist/__tests__/layout/sidebar-menus.render.test.d.ts.map +1 -0
- package/dist/__tests__/layout/sidebar-menus.render.test.js +82 -0
- package/dist/__tests__/layout/sidebar-menus.render.test.js.map +1 -0
- package/dist/__tests__/layout/sidebar-plugin-nav.test.js +1 -1
- package/dist/__tests__/layout/sidebar-plugin-nav.test.js.map +1 -1
- package/dist/__tests__/layout/sidebar-posts.test.js +48 -38
- package/dist/__tests__/layout/sidebar-posts.test.js.map +1 -1
- package/dist/__tests__/layout/sidebar-submenu.render.test.js +26 -10
- package/dist/__tests__/layout/sidebar-submenu.render.test.js.map +1 -1
- package/dist/__tests__/layout/topbar.render.test.d.ts +2 -0
- package/dist/__tests__/layout/topbar.render.test.d.ts.map +1 -0
- package/dist/__tests__/layout/topbar.render.test.js +406 -0
- package/dist/__tests__/layout/topbar.render.test.js.map +1 -0
- package/dist/__tests__/lib/api.test.js +2 -0
- package/dist/__tests__/lib/api.test.js.map +1 -1
- package/dist/__tests__/lib/batch-wizard.test.d.ts +2 -0
- package/dist/__tests__/lib/batch-wizard.test.d.ts.map +1 -0
- package/dist/__tests__/lib/batch-wizard.test.js +144 -0
- package/dist/__tests__/lib/batch-wizard.test.js.map +1 -0
- package/dist/__tests__/lib/job-drawer.test.d.ts +2 -0
- package/dist/__tests__/lib/job-drawer.test.d.ts.map +1 -0
- package/dist/__tests__/lib/job-drawer.test.js +395 -0
- package/dist/__tests__/lib/job-drawer.test.js.map +1 -0
- package/dist/__tests__/lib/job-view.test.d.ts +2 -0
- package/dist/__tests__/lib/job-view.test.d.ts.map +1 -0
- package/dist/__tests__/lib/job-view.test.js +484 -0
- package/dist/__tests__/lib/job-view.test.js.map +1 -0
- package/dist/__tests__/lib/jobs-service.test.d.ts +2 -0
- package/dist/__tests__/lib/jobs-service.test.d.ts.map +1 -0
- package/dist/__tests__/lib/jobs-service.test.js +142 -0
- package/dist/__tests__/lib/jobs-service.test.js.map +1 -0
- package/dist/__tests__/router/admin-route-order.test.d.ts +2 -0
- package/dist/__tests__/router/admin-route-order.test.d.ts.map +1 -0
- package/dist/__tests__/router/admin-route-order.test.js +36 -0
- package/dist/__tests__/router/admin-route-order.test.js.map +1 -0
- package/dist/__tests__/styles/ai-gradient-contrast.test.d.ts +2 -0
- package/dist/__tests__/styles/ai-gradient-contrast.test.d.ts.map +1 -0
- package/dist/__tests__/styles/ai-gradient-contrast.test.js +110 -0
- package/dist/__tests__/styles/ai-gradient-contrast.test.js.map +1 -0
- package/dist/__tests__/styles/breakpoint-order.test.d.ts +2 -0
- package/dist/__tests__/styles/breakpoint-order.test.d.ts.map +1 -0
- package/dist/__tests__/styles/breakpoint-order.test.js +52 -0
- package/dist/__tests__/styles/breakpoint-order.test.js.map +1 -0
- package/dist/__tests__/styles/responsive-layer.test.js +303 -12
- package/dist/__tests__/styles/responsive-layer.test.js.map +1 -1
- package/dist/__tests__/styles/tailwind-preset.test.d.ts +2 -0
- package/dist/__tests__/styles/tailwind-preset.test.d.ts.map +1 -0
- package/dist/__tests__/styles/tailwind-preset.test.js +147 -0
- package/dist/__tests__/styles/tailwind-preset.test.js.map +1 -0
- package/dist/__tests__/styles/theme-token-scope.test.js +9 -3
- package/dist/__tests__/styles/theme-token-scope.test.js.map +1 -1
- package/dist/__tests__/styles/tiers.test.d.ts +2 -0
- package/dist/__tests__/styles/tiers.test.d.ts.map +1 -0
- package/dist/__tests__/styles/tiers.test.js +121 -0
- package/dist/__tests__/styles/tiers.test.js.map +1 -0
- package/dist/__tests__/styles/tokens-drift.test.js +57 -6
- package/dist/__tests__/styles/tokens-drift.test.js.map +1 -1
- package/dist/__tests__/views/admin-lazy-route.render.test.js +27 -1
- package/dist/__tests__/views/admin-lazy-route.render.test.js.map +1 -1
- package/dist/__tests__/views/ai-settings.render.test.js +4 -4
- package/dist/__tests__/views/appearance-chrome.render.test.d.ts +2 -0
- package/dist/__tests__/views/appearance-chrome.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/appearance-chrome.render.test.js +688 -0
- package/dist/__tests__/views/appearance-chrome.render.test.js.map +1 -0
- package/dist/__tests__/views/appearance-menus-route.render.test.d.ts +2 -0
- package/dist/__tests__/views/appearance-menus-route.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/appearance-menus-route.render.test.js +50 -0
- package/dist/__tests__/views/appearance-menus-route.render.test.js.map +1 -0
- package/dist/__tests__/views/appearance-settings.render.test.js +8 -6
- package/dist/__tests__/views/appearance-settings.render.test.js.map +1 -1
- package/dist/__tests__/views/appearance-theme-provider.render.test.d.ts +2 -0
- package/dist/__tests__/views/appearance-theme-provider.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/appearance-theme-provider.render.test.js +286 -0
- package/dist/__tests__/views/appearance-theme-provider.render.test.js.map +1 -0
- package/dist/__tests__/views/dashboard.test.js +37 -0
- package/dist/__tests__/views/dashboard.test.js.map +1 -1
- package/dist/__tests__/views/document-edit-navigation.render.test.d.ts +2 -0
- package/dist/__tests__/views/document-edit-navigation.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/document-edit-navigation.render.test.js +101 -0
- package/dist/__tests__/views/document-edit-navigation.render.test.js.map +1 -0
- package/dist/__tests__/views/document-edit-routes.render.test.d.ts +2 -0
- package/dist/__tests__/views/document-edit-routes.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/document-edit-routes.render.test.js +113 -0
- package/dist/__tests__/views/document-edit-routes.render.test.js.map +1 -0
- package/dist/__tests__/views/email-settings.render.test.js +2 -2
- package/dist/__tests__/views/form-entries.render.test.js +15 -0
- package/dist/__tests__/views/form-entries.render.test.js.map +1 -1
- package/dist/__tests__/views/form-submissions.render.test.js +18 -0
- package/dist/__tests__/views/form-submissions.render.test.js.map +1 -1
- package/dist/__tests__/views/forms-list.render.test.js +12 -0
- package/dist/__tests__/views/forms-list.render.test.js.map +1 -1
- package/dist/__tests__/views/general-settings.render.test.js +26 -10
- package/dist/__tests__/views/general-settings.render.test.js.map +1 -1
- package/dist/__tests__/views/header-footer-form.test.d.ts +2 -0
- package/dist/__tests__/views/header-footer-form.test.d.ts.map +1 -0
- package/dist/__tests__/views/header-footer-form.test.js +266 -0
- package/dist/__tests__/views/header-footer-form.test.js.map +1 -0
- package/dist/__tests__/views/jobs-drawer.render.test.d.ts +2 -0
- package/dist/__tests__/views/jobs-drawer.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/jobs-drawer.render.test.js +1348 -0
- package/dist/__tests__/views/jobs-drawer.render.test.js.map +1 -0
- package/dist/__tests__/views/jobs-list.render.test.d.ts +2 -0
- package/dist/__tests__/views/jobs-list.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/jobs-list.render.test.js +697 -0
- package/dist/__tests__/views/jobs-list.render.test.js.map +1 -0
- package/dist/__tests__/views/jobs-wizard.render.test.d.ts +2 -0
- package/dist/__tests__/views/jobs-wizard.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/jobs-wizard.render.test.js +588 -0
- package/dist/__tests__/views/jobs-wizard.render.test.js.map +1 -0
- package/dist/__tests__/views/kpi-grid.test.d.ts +2 -0
- package/dist/__tests__/views/kpi-grid.test.d.ts.map +1 -0
- package/dist/__tests__/views/kpi-grid.test.js +26 -0
- package/dist/__tests__/views/kpi-grid.test.js.map +1 -0
- package/dist/__tests__/views/post-section-editor.test.js +3 -1
- package/dist/__tests__/views/post-section-editor.test.js.map +1 -1
- package/dist/__tests__/views/script-tags.render.test.js +25 -0
- package/dist/__tests__/views/script-tags.render.test.js.map +1 -1
- package/dist/__tests__/views/security-settings.render.test.js +9 -8
- package/dist/__tests__/views/security-settings.render.test.js.map +1 -1
- package/dist/__tests__/views/seo-settings.render.test.js +7 -7
- package/dist/__tests__/views/seo-settings.render.test.js.map +1 -1
- package/dist/__tests__/views/settings-save-bar.render.test.d.ts +2 -0
- package/dist/__tests__/views/settings-save-bar.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/settings-save-bar.render.test.js +68 -0
- package/dist/__tests__/views/settings-save-bar.render.test.js.map +1 -0
- package/dist/__tests__/views/settings-save-footer.render.test.js +23 -15
- package/dist/__tests__/views/settings-save-footer.render.test.js.map +1 -1
- package/dist/__tests__/views/settings-tabs.render.test.d.ts +2 -0
- package/dist/__tests__/views/settings-tabs.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/settings-tabs.render.test.js +319 -0
- package/dist/__tests__/views/settings-tabs.render.test.js.map +1 -0
- package/dist/__tests__/views/updates-tab.render.test.js +4 -3
- package/dist/__tests__/views/updates-tab.render.test.js.map +1 -1
- package/dist/components/Breadcrumbs.d.ts +8 -1
- package/dist/components/Breadcrumbs.d.ts.map +1 -1
- package/dist/components/Breadcrumbs.js +6 -0
- package/dist/components/Breadcrumbs.js.map +1 -1
- package/dist/components/CommandPalette.d.ts.map +1 -1
- package/dist/components/CommandPalette.js +40 -4
- package/dist/components/CommandPalette.js.map +1 -1
- package/dist/components/LocaleSwitcher.d.ts.map +1 -1
- package/dist/components/LocaleSwitcher.js +1 -1
- package/dist/components/LocaleSwitcher.js.map +1 -1
- package/dist/components/NotificationBell.d.ts.map +1 -1
- package/dist/components/NotificationBell.js +44 -3
- package/dist/components/NotificationBell.js.map +1 -1
- package/dist/components/OfflineStatus.js +1 -1
- package/dist/components/OfflineStatus.js.map +1 -1
- package/dist/components/PresenceIndicator.d.ts.map +1 -1
- package/dist/components/PresenceIndicator.js +2 -1
- package/dist/components/PresenceIndicator.js.map +1 -1
- package/dist/components/ReflowMeter.js +2 -2
- package/dist/components/ReflowMeter.js.map +1 -1
- package/dist/components/SEOPanel.js +2 -2
- package/dist/components/SEOPanel.js.map +1 -1
- package/dist/components/ThemeProvider.d.ts +24 -4
- package/dist/components/ThemeProvider.d.ts.map +1 -1
- package/dist/components/ThemeProvider.js +80 -22
- package/dist/components/ThemeProvider.js.map +1 -1
- package/dist/components/TipTapEditor.d.ts.map +1 -1
- package/dist/components/TipTapEditor.js +3 -4
- package/dist/components/TipTapEditor.js.map +1 -1
- package/dist/components/forms/EmbedPanel.js +1 -1
- package/dist/components/forms/EmbedPanel.js.map +1 -1
- package/dist/components/forms/FormEntryDetailPane.js +6 -1
- package/dist/components/forms/FormEntryDetailPane.js.map +1 -1
- package/dist/components/forms/ShortcodeGlossary.d.ts.map +1 -1
- package/dist/components/forms/ShortcodeGlossary.js +6 -1
- package/dist/components/forms/ShortcodeGlossary.js.map +1 -1
- package/dist/components/forms/primitives.d.ts +15 -5
- package/dist/components/forms/primitives.d.ts.map +1 -1
- package/dist/components/forms/primitives.js +11 -11
- package/dist/components/forms/primitives.js.map +1 -1
- package/dist/components/pages/tag-badges.d.ts +2 -1
- package/dist/components/pages/tag-badges.d.ts.map +1 -1
- package/dist/components/pages/tag-badges.js +4 -3
- package/dist/components/pages/tag-badges.js.map +1 -1
- package/dist/components/seo/PageAuditPanel.js +2 -2
- package/dist/components/seo/PageAuditPanel.js.map +1 -1
- package/dist/components/seo/SerpPreview.d.ts +4 -4
- package/dist/components/seo/SerpPreview.js +1 -1
- package/dist/components/seo/SerpPreview.js.map +1 -1
- package/dist/components/seo/primitives.js +2 -2
- package/dist/components/seo/primitives.js.map +1 -1
- package/dist/components/ui/AuthorAvatar.d.ts +4 -4
- package/dist/components/ui/AuthorAvatar.d.ts.map +1 -1
- package/dist/components/ui/AuthorAvatar.js +11 -10
- package/dist/components/ui/AuthorAvatar.js.map +1 -1
- package/dist/components/ui/Badge.d.ts +1 -1
- package/dist/components/ui/Badge.js +1 -1
- package/dist/components/ui/Badge.js.map +1 -1
- package/dist/components/ui/Breadcrumb.d.ts +27 -0
- package/dist/components/ui/Breadcrumb.d.ts.map +1 -0
- package/dist/components/ui/Breadcrumb.js +41 -0
- package/dist/components/ui/Breadcrumb.js.map +1 -0
- package/dist/components/ui/Button.d.ts +2 -2
- package/dist/components/ui/Button.d.ts.map +1 -1
- package/dist/components/ui/Button.js +31 -16
- package/dist/components/ui/Button.js.map +1 -1
- package/dist/components/ui/Card.d.ts +8 -4
- package/dist/components/ui/Card.d.ts.map +1 -1
- package/dist/components/ui/Card.js +21 -13
- package/dist/components/ui/Card.js.map +1 -1
- package/dist/components/ui/CardListControls.d.ts +34 -0
- package/dist/components/ui/CardListControls.d.ts.map +1 -0
- package/dist/components/ui/CardListControls.js +25 -0
- package/dist/components/ui/CardListControls.js.map +1 -0
- package/dist/components/ui/CountChip.d.ts +20 -0
- package/dist/components/ui/CountChip.d.ts.map +1 -0
- package/dist/components/ui/CountChip.js +48 -0
- package/dist/components/ui/CountChip.js.map +1 -0
- package/dist/components/ui/FilterPill.d.ts +2 -1
- package/dist/components/ui/FilterPill.d.ts.map +1 -1
- package/dist/components/ui/FilterPill.js +3 -2
- package/dist/components/ui/FilterPill.js.map +1 -1
- package/dist/components/ui/Input.d.ts +1 -1
- package/dist/components/ui/InspectorPane.d.ts +1 -1
- package/dist/components/ui/InspectorPane.d.ts.map +1 -1
- package/dist/components/ui/InspectorPane.js +15 -4
- package/dist/components/ui/InspectorPane.js.map +1 -1
- package/dist/components/ui/Modal.d.ts.map +1 -1
- package/dist/components/ui/Modal.js +10 -2
- package/dist/components/ui/Modal.js.map +1 -1
- package/dist/components/ui/PageHeader.d.ts +28 -0
- package/dist/components/ui/PageHeader.d.ts.map +1 -0
- package/dist/components/ui/PageHeader.js +18 -0
- package/dist/components/ui/PageHeader.js.map +1 -0
- package/dist/components/ui/RowActions.d.ts +5 -0
- package/dist/components/ui/RowActions.d.ts.map +1 -1
- package/dist/components/ui/RowActions.js +7 -2
- package/dist/components/ui/RowActions.js.map +1 -1
- package/dist/components/ui/Segmented.d.ts +21 -0
- package/dist/components/ui/Segmented.d.ts.map +1 -0
- package/dist/components/ui/Segmented.js +41 -0
- package/dist/components/ui/Segmented.js.map +1 -0
- package/dist/components/ui/Toaster.d.ts +12 -0
- package/dist/components/ui/Toaster.d.ts.map +1 -0
- package/dist/components/ui/Toaster.js +103 -0
- package/dist/components/ui/Toaster.js.map +1 -0
- package/dist/components/ui/Toggle.d.ts +4 -3
- package/dist/components/ui/Toggle.d.ts.map +1 -1
- package/dist/components/ui/Toggle.js +16 -12
- package/dist/components/ui/Toggle.js.map +1 -1
- package/dist/components/ui/UnderlineTabs.d.ts +56 -0
- package/dist/components/ui/UnderlineTabs.d.ts.map +1 -0
- package/dist/components/ui/UnderlineTabs.js +205 -0
- package/dist/components/ui/UnderlineTabs.js.map +1 -0
- package/dist/components/ui/UnsavedBar.d.ts +25 -0
- package/dist/components/ui/UnsavedBar.d.ts.map +1 -0
- package/dist/components/ui/UnsavedBar.js +22 -0
- package/dist/components/ui/UnsavedBar.js.map +1 -0
- package/dist/components/ui/admin-links.d.ts +11 -0
- package/dist/components/ui/admin-links.d.ts.map +1 -0
- package/dist/components/ui/admin-links.js +10 -0
- package/dist/components/ui/admin-links.js.map +1 -0
- package/dist/components/ui/card-table.d.ts +43 -0
- package/dist/components/ui/card-table.d.ts.map +1 -0
- package/dist/components/ui/card-table.js +31 -0
- package/dist/components/ui/card-table.js.map +1 -0
- package/dist/components/virtual-window.d.ts +7 -0
- package/dist/components/virtual-window.d.ts.map +1 -1
- package/dist/components/virtual-window.js +5 -2
- package/dist/components/virtual-window.js.map +1 -1
- package/dist/fields/RelationshipField.js +1 -1
- package/dist/fields/RelationshipField.js.map +1 -1
- package/dist/files/dm-mono-latin-400-normal.woff +0 -0
- package/dist/files/dm-mono-latin-400-normal.woff2 +0 -0
- package/dist/files/dm-mono-latin-500-normal.woff +0 -0
- package/dist/files/dm-mono-latin-500-normal.woff2 +0 -0
- package/dist/files/dm-mono-latin-ext-400-normal.woff +0 -0
- package/dist/files/dm-mono-latin-ext-400-normal.woff2 +0 -0
- package/dist/files/dm-mono-latin-ext-500-normal.woff +0 -0
- package/dist/files/dm-mono-latin-ext-500-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-400-normal.woff +0 -0
- package/dist/files/dm-sans-latin-400-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-500-normal.woff +0 -0
- package/dist/files/dm-sans-latin-500-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-600-normal.woff +0 -0
- package/dist/files/dm-sans-latin-600-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-700-normal.woff +0 -0
- package/dist/files/dm-sans-latin-700-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-ext-400-normal.woff +0 -0
- package/dist/files/dm-sans-latin-ext-400-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-ext-500-normal.woff +0 -0
- package/dist/files/dm-sans-latin-ext-500-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-ext-600-normal.woff +0 -0
- package/dist/files/dm-sans-latin-ext-600-normal.woff2 +0 -0
- package/dist/files/dm-sans-latin-ext-700-normal.woff +0 -0
- package/dist/files/dm-sans-latin-ext-700-normal.woff2 +0 -0
- package/dist/hooks/useAppearanceBootstrap.d.ts.map +1 -1
- package/dist/hooks/useAppearanceBootstrap.js +9 -3
- package/dist/hooks/useAppearanceBootstrap.js.map +1 -1
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/layout/Header.d.ts +14 -5
- package/dist/layout/Header.d.ts.map +1 -1
- package/dist/layout/Header.js +78 -13
- package/dist/layout/Header.js.map +1 -1
- package/dist/layout/Layout.d.ts +5 -3
- package/dist/layout/Layout.d.ts.map +1 -1
- package/dist/layout/Layout.js +45 -54
- package/dist/layout/Layout.js.map +1 -1
- package/dist/layout/MobileTabBar.d.ts +20 -0
- package/dist/layout/MobileTabBar.d.ts.map +1 -0
- package/dist/layout/MobileTabBar.js +29 -0
- package/dist/layout/MobileTabBar.js.map +1 -0
- package/dist/layout/Sidebar.d.ts +8 -26
- package/dist/layout/Sidebar.d.ts.map +1 -1
- package/dist/layout/Sidebar.js +309 -345
- package/dist/layout/Sidebar.js.map +1 -1
- package/dist/layout/nav-config.d.ts +101 -0
- package/dist/layout/nav-config.d.ts.map +1 -0
- package/dist/layout/nav-config.js +297 -0
- package/dist/layout/nav-config.js.map +1 -0
- package/dist/layout/primitives/AdminShell.d.ts +10 -2
- package/dist/layout/primitives/AdminShell.d.ts.map +1 -1
- package/dist/layout/primitives/AdminShell.js +114 -6
- package/dist/layout/primitives/AdminShell.js.map +1 -1
- package/dist/layout/topbar-classes.d.ts +8 -0
- package/dist/layout/topbar-classes.d.ts.map +1 -0
- package/dist/layout/topbar-classes.js +8 -0
- package/dist/layout/topbar-classes.js.map +1 -0
- package/dist/layout/use-nav-items.d.ts +10 -0
- package/dist/layout/use-nav-items.d.ts.map +1 -0
- package/dist/layout/use-nav-items.js +39 -0
- package/dist/layout/use-nav-items.js.map +1 -0
- package/dist/lib/api.d.ts +8 -0
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +8 -1
- package/dist/lib/api.js.map +1 -1
- package/dist/lib/appearance-api.d.ts +3 -1
- package/dist/lib/appearance-api.d.ts.map +1 -1
- package/dist/lib/appearance-api.js +1 -0
- package/dist/lib/appearance-api.js.map +1 -1
- package/dist/lib/batch-wizard.d.ts +84 -0
- package/dist/lib/batch-wizard.d.ts.map +1 -0
- package/dist/lib/batch-wizard.js +122 -0
- package/dist/lib/batch-wizard.js.map +1 -0
- package/dist/lib/chrome-service.d.ts +69 -0
- package/dist/lib/chrome-service.d.ts.map +1 -0
- package/dist/lib/chrome-service.js +108 -0
- package/dist/lib/chrome-service.js.map +1 -0
- package/dist/lib/job-drawer.d.ts +128 -0
- package/dist/lib/job-drawer.d.ts.map +1 -0
- package/dist/lib/job-drawer.js +351 -0
- package/dist/lib/job-drawer.js.map +1 -0
- package/dist/lib/job-view.d.ts +230 -0
- package/dist/lib/job-view.d.ts.map +1 -0
- package/dist/lib/job-view.js +419 -0
- package/dist/lib/job-view.js.map +1 -0
- package/dist/lib/jobs-service.d.ts +152 -0
- package/dist/lib/jobs-service.d.ts.map +1 -0
- package/dist/lib/jobs-service.js +220 -0
- package/dist/lib/jobs-service.js.map +1 -0
- package/dist/lib/sheet-focus.d.ts +24 -0
- package/dist/lib/sheet-focus.d.ts.map +1 -0
- package/dist/lib/sheet-focus.js +61 -0
- package/dist/lib/sheet-focus.js.map +1 -0
- package/dist/lib/tiers.d.ts +30 -0
- package/dist/lib/tiers.d.ts.map +1 -0
- package/dist/lib/tiers.js +43 -0
- package/dist/lib/tiers.js.map +1 -0
- package/dist/prenta-admin.css +1 -1
- package/dist/router/admin-routes.d.ts.map +1 -1
- package/dist/router/admin-routes.js +8 -0
- package/dist/router/admin-routes.js.map +1 -1
- package/dist/router/index.d.ts +5 -1
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +7 -0
- package/dist/router/index.js.map +1 -1
- package/dist/views/ApiKeys.js +2 -2
- package/dist/views/ApiKeys.js.map +1 -1
- package/dist/views/AppearanceChrome.d.ts +24 -0
- package/dist/views/AppearanceChrome.d.ts.map +1 -0
- package/dist/views/AppearanceChrome.js +461 -0
- package/dist/views/AppearanceChrome.js.map +1 -0
- package/dist/views/CollectionList.d.ts.map +1 -1
- package/dist/views/CollectionList.js +73 -53
- package/dist/views/CollectionList.js.map +1 -1
- package/dist/views/Dashboard.d.ts.map +1 -1
- package/dist/views/Dashboard.js +14 -8
- package/dist/views/Dashboard.js.map +1 -1
- package/dist/views/DocumentEdit.d.ts +6 -1
- package/dist/views/DocumentEdit.d.ts.map +1 -1
- package/dist/views/DocumentEdit.js +44 -8
- package/dist/views/DocumentEdit.js.map +1 -1
- package/dist/views/FormDeliveries.d.ts.map +1 -1
- package/dist/views/FormDeliveries.js +7 -1
- package/dist/views/FormDeliveries.js.map +1 -1
- package/dist/views/FormEntries.d.ts.map +1 -1
- package/dist/views/FormEntries.js +11 -2
- package/dist/views/FormEntries.js.map +1 -1
- package/dist/views/FormSubmissions.d.ts +1 -1
- package/dist/views/FormSubmissions.d.ts.map +1 -1
- package/dist/views/FormSubmissions.js +15 -4
- package/dist/views/FormSubmissions.js.map +1 -1
- package/dist/views/Forms.d.ts.map +1 -1
- package/dist/views/Forms.js +6 -4
- package/dist/views/Forms.js.map +1 -1
- package/dist/views/FormsSettings.d.ts +2 -0
- package/dist/views/FormsSettings.d.ts.map +1 -0
- package/dist/views/FormsSettings.js +37 -0
- package/dist/views/FormsSettings.js.map +1 -0
- package/dist/views/Jobs/BusyButton.d.ts +15 -0
- package/dist/views/Jobs/BusyButton.d.ts.map +1 -0
- package/dist/views/Jobs/BusyButton.js +26 -0
- package/dist/views/Jobs/BusyButton.js.map +1 -0
- package/dist/views/Jobs/CancelJobDialog.d.ts +27 -0
- package/dist/views/Jobs/CancelJobDialog.d.ts.map +1 -0
- package/dist/views/Jobs/CancelJobDialog.js +76 -0
- package/dist/views/Jobs/CancelJobDialog.js.map +1 -0
- package/dist/views/Jobs/DrawerActivity.d.ts +16 -0
- package/dist/views/Jobs/DrawerActivity.d.ts.map +1 -0
- package/dist/views/Jobs/DrawerActivity.js +59 -0
- package/dist/views/Jobs/DrawerActivity.js.map +1 -0
- package/dist/views/Jobs/DrawerOverview.d.ts +28 -0
- package/dist/views/Jobs/DrawerOverview.d.ts.map +1 -0
- package/dist/views/Jobs/DrawerOverview.js +32 -0
- package/dist/views/Jobs/DrawerOverview.js.map +1 -0
- package/dist/views/Jobs/DrawerResults.d.ts +25 -0
- package/dist/views/Jobs/DrawerResults.d.ts.map +1 -0
- package/dist/views/Jobs/DrawerResults.js +50 -0
- package/dist/views/Jobs/DrawerResults.js.map +1 -0
- package/dist/views/Jobs/DrawerReview.d.ts +51 -0
- package/dist/views/Jobs/DrawerReview.d.ts.map +1 -0
- package/dist/views/Jobs/DrawerReview.js +110 -0
- package/dist/views/Jobs/DrawerReview.js.map +1 -0
- package/dist/views/Jobs/JobDrawer.d.ts +51 -0
- package/dist/views/Jobs/JobDrawer.d.ts.map +1 -0
- package/dist/views/Jobs/JobDrawer.js +378 -0
- package/dist/views/Jobs/JobDrawer.js.map +1 -0
- package/dist/views/Jobs/JobsTable.d.ts +21 -0
- package/dist/views/Jobs/JobsTable.d.ts.map +1 -0
- package/dist/views/Jobs/JobsTable.js +81 -0
- package/dist/views/Jobs/JobsTable.js.map +1 -0
- package/dist/views/Jobs/NewBatchJob.d.ts +34 -0
- package/dist/views/Jobs/NewBatchJob.d.ts.map +1 -0
- package/dist/views/Jobs/NewBatchJob.js +282 -0
- package/dist/views/Jobs/NewBatchJob.js.map +1 -0
- package/dist/views/Jobs/WorkerStrip.d.ts +24 -0
- package/dist/views/Jobs/WorkerStrip.d.ts.map +1 -0
- package/dist/views/Jobs/WorkerStrip.js +63 -0
- package/dist/views/Jobs/WorkerStrip.js.map +1 -0
- package/dist/views/Jobs/atoms.d.ts +19 -0
- package/dist/views/Jobs/atoms.d.ts.map +1 -0
- package/dist/views/Jobs/atoms.js +52 -0
- package/dist/views/Jobs/atoms.js.map +1 -0
- package/dist/views/Jobs/focus.d.ts +29 -0
- package/dist/views/Jobs/focus.d.ts.map +1 -0
- package/dist/views/Jobs/focus.js +64 -0
- package/dist/views/Jobs/focus.js.map +1 -0
- package/dist/views/Jobs/icons.d.ts +22 -0
- package/dist/views/Jobs/icons.d.ts.map +1 -0
- package/dist/views/Jobs/icons.js +23 -0
- package/dist/views/Jobs/icons.js.map +1 -0
- package/dist/views/Jobs/useJobDetail.d.ts +21 -0
- package/dist/views/Jobs/useJobDetail.d.ts.map +1 -0
- package/dist/views/Jobs/useJobDetail.js +39 -0
- package/dist/views/Jobs/useJobDetail.js.map +1 -0
- package/dist/views/Jobs/useJobsFeed.d.ts +35 -0
- package/dist/views/Jobs/useJobsFeed.d.ts.map +1 -0
- package/dist/views/Jobs/useJobsFeed.js +231 -0
- package/dist/views/Jobs/useJobsFeed.js.map +1 -0
- package/dist/views/Jobs/useReviewItems.d.ts +39 -0
- package/dist/views/Jobs/useReviewItems.d.ts.map +1 -0
- package/dist/views/Jobs/useReviewItems.js +140 -0
- package/dist/views/Jobs/useReviewItems.js.map +1 -0
- package/dist/views/Jobs.d.ts +19 -1
- package/dist/views/Jobs.d.ts.map +1 -1
- package/dist/views/Jobs.js +204 -35
- package/dist/views/Jobs.js.map +1 -1
- package/dist/views/MediaBrowser.d.ts.map +1 -1
- package/dist/views/MediaBrowser.js +37 -9
- package/dist/views/MediaBrowser.js.map +1 -1
- package/dist/views/Pages/PagesListView.d.ts +1 -1
- package/dist/views/Pages/PagesListView.d.ts.map +1 -1
- package/dist/views/Pages/PagesListView.js +34 -5
- package/dist/views/Pages/PagesListView.js.map +1 -1
- package/dist/views/Posts/NewPostTypeInstructions.d.ts.map +1 -1
- package/dist/views/Posts/NewPostTypeInstructions.js +12 -2
- package/dist/views/Posts/NewPostTypeInstructions.js.map +1 -1
- package/dist/views/Posts/PostTypesView.d.ts.map +1 -1
- package/dist/views/Posts/PostTypesView.js +10 -1
- package/dist/views/Posts/PostTypesView.js.map +1 -1
- package/dist/views/Posts/PostsListView.d.ts +1 -2
- package/dist/views/Posts/PostsListView.d.ts.map +1 -1
- package/dist/views/Posts/PostsListView.js +31 -3
- package/dist/views/Posts/PostsListView.js.map +1 -1
- package/dist/views/SEO.d.ts.map +1 -1
- package/dist/views/SEO.js +3 -3
- package/dist/views/SEO.js.map +1 -1
- package/dist/views/ScriptTags.d.ts.map +1 -1
- package/dist/views/ScriptTags.js +20 -15
- package/dist/views/ScriptTags.js.map +1 -1
- package/dist/views/Settings.d.ts.map +1 -1
- package/dist/views/Settings.js +115 -51
- package/dist/views/Settings.js.map +1 -1
- package/dist/views/SpamFolder.d.ts +2 -0
- package/dist/views/SpamFolder.d.ts.map +1 -0
- package/dist/views/SpamFolder.js +14 -0
- package/dist/views/SpamFolder.js.map +1 -0
- package/dist/views/Trash.d.ts +6 -1
- package/dist/views/Trash.d.ts.map +1 -1
- package/dist/views/Trash.js +7 -2
- package/dist/views/Trash.js.map +1 -1
- package/dist/views/Users.js +2 -2
- package/dist/views/Users.js.map +1 -1
- package/dist/views/WidgetsPlaceholder.d.ts +2 -0
- package/dist/views/WidgetsPlaceholder.d.ts.map +1 -0
- package/dist/views/WidgetsPlaceholder.js +15 -0
- package/dist/views/WidgetsPlaceholder.js.map +1 -0
- package/dist/views/dashboard/kpi-grid.d.ts +18 -0
- package/dist/views/dashboard/kpi-grid.d.ts.map +1 -0
- package/dist/views/dashboard/kpi-grid.js +36 -0
- package/dist/views/dashboard/kpi-grid.js.map +1 -0
- package/dist/views/header-footer/AnnouncementTab.d.ts +15 -0
- package/dist/views/header-footer/AnnouncementTab.d.ts.map +1 -0
- package/dist/views/header-footer/AnnouncementTab.js +43 -0
- package/dist/views/header-footer/AnnouncementTab.js.map +1 -0
- package/dist/views/header-footer/ChromeField.d.ts +25 -0
- package/dist/views/header-footer/ChromeField.d.ts.map +1 -0
- package/dist/views/header-footer/ChromeField.js +99 -0
- package/dist/views/header-footer/ChromeField.js.map +1 -0
- package/dist/views/header-footer/ChromePreview.d.ts +31 -0
- package/dist/views/header-footer/ChromePreview.d.ts.map +1 -0
- package/dist/views/header-footer/ChromePreview.js +195 -0
- package/dist/views/header-footer/ChromePreview.js.map +1 -0
- package/dist/views/header-footer/DeveloperTab.d.ts +17 -0
- package/dist/views/header-footer/DeveloperTab.d.ts.map +1 -0
- package/dist/views/header-footer/DeveloperTab.js +98 -0
- package/dist/views/header-footer/DeveloperTab.js.map +1 -0
- package/dist/views/header-footer/RegionTab.d.ts +27 -0
- package/dist/views/header-footer/RegionTab.d.ts.map +1 -0
- package/dist/views/header-footer/RegionTab.js +80 -0
- package/dist/views/header-footer/RegionTab.js.map +1 -0
- package/dist/views/header-footer/chrome-form.d.ts +137 -0
- package/dist/views/header-footer/chrome-form.d.ts.map +1 -0
- package/dist/views/header-footer/chrome-form.js +518 -0
- package/dist/views/header-footer/chrome-form.js.map +1 -0
- package/dist/views/header-footer/code-samples.d.ts +30 -0
- package/dist/views/header-footer/code-samples.d.ts.map +1 -0
- package/dist/views/header-footer/code-samples.js +127 -0
- package/dist/views/header-footer/code-samples.js.map +1 -0
- package/dist/views/header-footer/controls.d.ts +57 -0
- package/dist/views/header-footer/controls.d.ts.map +1 -0
- package/dist/views/header-footer/controls.js +43 -0
- package/dist/views/header-footer/controls.js.map +1 -0
- package/dist/views/lazy-views.d.ts +4 -0
- package/dist/views/lazy-views.d.ts.map +1 -1
- package/dist/views/lazy-views.js +4 -0
- package/dist/views/lazy-views.js.map +1 -1
- package/dist/views/page-editor/PageTab.js +1 -1
- package/dist/views/page-editor/PageTab.js.map +1 -1
- package/dist/views/page-editor/ReviewBar.js +1 -1
- package/dist/views/page-editor/ReviewBar.js.map +1 -1
- package/dist/views/page-editor/VersionHistoryPanel.js +1 -1
- package/dist/views/page-editor/VersionHistoryPanel.js.map +1 -1
- package/dist/views/seo/AuditTab.js +1 -1
- package/dist/views/seo/AuditTab.js.map +1 -1
- package/dist/views/seo/OverviewTab.d.ts.map +1 -1
- package/dist/views/seo/OverviewTab.js +2 -2
- package/dist/views/seo/OverviewTab.js.map +1 -1
- package/dist/views/seo/ProposalsTab.js +1 -1
- package/dist/views/seo/ProposalsTab.js.map +1 -1
- package/dist/views/settings/AISettingsTab.d.ts.map +1 -1
- package/dist/views/settings/AISettingsTab.js +4 -2
- package/dist/views/settings/AISettingsTab.js.map +1 -1
- package/dist/views/settings/AccessProtectionCard.js +1 -1
- package/dist/views/settings/AccessProtectionCard.js.map +1 -1
- package/dist/views/settings/AdminThemeCard.d.ts.map +1 -1
- package/dist/views/settings/AdminThemeCard.js +63 -15
- package/dist/views/settings/AdminThemeCard.js.map +1 -1
- package/dist/views/settings/AppearanceTab.d.ts.map +1 -1
- package/dist/views/settings/AppearanceTab.js +4 -2
- package/dist/views/settings/AppearanceTab.js.map +1 -1
- package/dist/views/settings/BrandPreviewCard.js +1 -1
- package/dist/views/settings/BrandPreviewCard.js.map +1 -1
- package/dist/views/settings/BrandVoiceCard.js +1 -1
- package/dist/views/settings/BrandVoiceCard.js.map +1 -1
- package/dist/views/settings/EmailSettingsTab.d.ts.map +1 -1
- package/dist/views/settings/EmailSettingsTab.js +5 -3
- package/dist/views/settings/EmailSettingsTab.js.map +1 -1
- package/dist/views/settings/GeneralSettingsTab.d.ts.map +1 -1
- package/dist/views/settings/GeneralSettingsTab.js +4 -2
- package/dist/views/settings/GeneralSettingsTab.js.map +1 -1
- package/dist/views/settings/ProviderConnectionCard.js +1 -1
- package/dist/views/settings/ProviderConnectionCard.js.map +1 -1
- package/dist/views/settings/SearchDataCard.js +1 -1
- package/dist/views/settings/SearchDataCard.js.map +1 -1
- package/dist/views/settings/SecurityStatusCard.js +2 -2
- package/dist/views/settings/SecurityStatusCard.js.map +1 -1
- package/dist/views/settings/SecurityTab.d.ts.map +1 -1
- package/dist/views/settings/SecurityTab.js +4 -2
- package/dist/views/settings/SecurityTab.js.map +1 -1
- package/dist/views/settings/SeoAutopilotCard.js +2 -2
- package/dist/views/settings/SeoAutopilotCard.js.map +1 -1
- package/dist/views/settings/SeoSettingsTab.d.ts.map +1 -1
- package/dist/views/settings/SeoSettingsTab.js +5 -3
- package/dist/views/settings/SeoSettingsTab.js.map +1 -1
- package/dist/views/settings/SiteIndexStatusCard.js +1 -1
- package/dist/views/settings/SiteIndexStatusCard.js.map +1 -1
- package/dist/views/settings/SiteThemeCard.js +1 -1
- package/dist/views/settings/UpdatesTab.d.ts.map +1 -1
- package/dist/views/settings/UpdatesTab.js +6 -5
- package/dist/views/settings/UpdatesTab.js.map +1 -1
- package/dist/views/settings/components.d.ts +7 -11
- package/dist/views/settings/components.d.ts.map +1 -1
- package/dist/views/settings/components.js +18 -12
- package/dist/views/settings/components.js.map +1 -1
- package/dist/views/settings/useAppearanceSettings.d.ts +7 -1
- package/dist/views/settings/useAppearanceSettings.d.ts.map +1 -1
- package/dist/views/settings/useAppearanceSettings.js +89 -22
- package/dist/views/settings/useAppearanceSettings.js.map +1 -1
- package/dist/views/users/UserDetailDrawer.js +1 -1
- package/dist/views/users/UserDetailDrawer.js.map +1 -1
- package/package.json +10 -8
- package/src/AdminRoot.tsx +103 -31
- package/src/LoginRoot.tsx +2 -1
- package/src/__tests__/components/author-avatar.test.tsx +3 -20
- package/src/__tests__/components/notification-bell.test.tsx +146 -14
- package/src/__tests__/components/responsive-tiers.render.test.tsx +461 -0
- package/src/__tests__/components/serp-preview.render.test.tsx +6 -3
- package/src/__tests__/components/shell-primitives.render.test.tsx +951 -0
- package/src/__tests__/components/theme-provider-accent.test.tsx +83 -8
- package/src/__tests__/components/toggle.test.tsx +11 -3
- package/src/__tests__/components/ui-primitives.test.tsx +5 -8
- package/src/__tests__/layout/build-nav-items.test.ts +1 -1
- package/src/__tests__/layout/shell-nav.render.test.tsx +983 -0
- package/src/__tests__/layout/sidebar-forms-submenu.render.test.tsx +8 -4
- package/src/__tests__/layout/sidebar-groups.render.test.tsx +116 -0
- package/src/__tests__/layout/sidebar-menus.render.test.tsx +116 -0
- package/src/__tests__/layout/sidebar-plugin-nav.test.ts +1 -1
- package/src/__tests__/layout/sidebar-posts.test.ts +48 -40
- package/src/__tests__/layout/sidebar-submenu.render.test.tsx +35 -10
- package/src/__tests__/layout/topbar.render.test.tsx +464 -0
- package/src/__tests__/lib/api.test.ts +2 -0
- package/src/__tests__/lib/batch-wizard.test.ts +199 -0
- package/src/__tests__/lib/job-drawer.test.ts +495 -0
- package/src/__tests__/lib/job-view.test.ts +558 -0
- package/src/__tests__/lib/jobs-service.test.ts +167 -0
- package/src/__tests__/router/admin-route-order.test.ts +39 -0
- package/src/__tests__/styles/ai-gradient-contrast.test.ts +135 -0
- package/src/__tests__/styles/breakpoint-order.test.ts +68 -0
- package/src/__tests__/styles/responsive-layer.test.ts +367 -12
- package/src/__tests__/styles/tailwind-preset.test.ts +154 -0
- package/src/__tests__/styles/theme-token-scope.test.ts +10 -3
- package/src/__tests__/styles/tiers.test.ts +136 -0
- package/src/__tests__/styles/tokens-drift.test.ts +67 -6
- package/src/__tests__/views/admin-lazy-route.render.test.tsx +41 -1
- package/src/__tests__/views/ai-settings.render.test.tsx +4 -4
- package/src/__tests__/views/appearance-chrome.render.test.tsx +818 -0
- package/src/__tests__/views/appearance-menus-route.render.test.tsx +58 -0
- package/src/__tests__/views/appearance-settings.render.test.tsx +10 -8
- package/src/__tests__/views/appearance-theme-provider.render.test.tsx +347 -0
- package/src/__tests__/views/dashboard.test.tsx +48 -0
- package/src/__tests__/views/document-edit-navigation.render.test.tsx +130 -0
- package/src/__tests__/views/document-edit-routes.render.test.tsx +130 -0
- package/src/__tests__/views/email-settings.render.test.tsx +2 -2
- package/src/__tests__/views/form-entries.render.test.tsx +22 -0
- package/src/__tests__/views/form-submissions.render.test.tsx +22 -0
- package/src/__tests__/views/forms-list.render.test.tsx +13 -0
- package/src/__tests__/views/general-settings.render.test.tsx +38 -11
- package/src/__tests__/views/header-footer-form.test.ts +333 -0
- package/src/__tests__/views/jobs-drawer.render.test.tsx +1553 -0
- package/src/__tests__/views/jobs-list.render.test.tsx +853 -0
- package/src/__tests__/views/jobs-wizard.render.test.tsx +707 -0
- package/src/__tests__/views/kpi-grid.test.ts +29 -0
- package/src/__tests__/views/post-section-editor.test.tsx +5 -1
- package/src/__tests__/views/script-tags.render.test.tsx +29 -0
- package/src/__tests__/views/security-settings.render.test.tsx +9 -10
- package/src/__tests__/views/seo-settings.render.test.tsx +7 -9
- package/src/__tests__/views/settings-save-bar.render.test.tsx +91 -0
- package/src/__tests__/views/settings-save-footer.render.test.tsx +25 -15
- package/src/__tests__/views/settings-tabs.render.test.tsx +371 -0
- package/src/__tests__/views/updates-tab.render.test.tsx +4 -3
- package/src/components/Breadcrumbs.tsx +7 -1
- package/src/components/CommandPalette.tsx +51 -3
- package/src/components/LocaleSwitcher.tsx +5 -6
- package/src/components/NotificationBell.tsx +74 -18
- package/src/components/OfflineStatus.tsx +1 -1
- package/src/components/PresenceIndicator.tsx +2 -1
- package/src/components/ReflowMeter.tsx +3 -3
- package/src/components/SEOPanel.tsx +2 -2
- package/src/components/ThemeProvider.tsx +122 -42
- package/src/components/TipTapEditor.tsx +3 -4
- package/src/components/forms/EmbedPanel.tsx +1 -1
- package/src/components/forms/FormEntryDetailPane.tsx +7 -1
- package/src/components/forms/ShortcodeGlossary.tsx +7 -1
- package/src/components/forms/primitives.tsx +37 -21
- package/src/components/pages/tag-badges.tsx +4 -3
- package/src/components/seo/PageAuditPanel.tsx +2 -2
- package/src/components/seo/SerpPreview.tsx +5 -5
- package/src/components/seo/primitives.tsx +2 -2
- package/src/components/ui/AuthorAvatar.tsx +11 -10
- package/src/components/ui/Badge.tsx +1 -1
- package/src/components/ui/Breadcrumb.tsx +109 -0
- package/src/components/ui/Button.tsx +40 -15
- package/src/components/ui/Card.tsx +35 -32
- package/src/components/ui/CardListControls.tsx +90 -0
- package/src/components/ui/CountChip.tsx +90 -0
- package/src/components/ui/FilterPill.tsx +5 -3
- package/src/components/ui/InspectorPane.tsx +21 -7
- package/src/components/ui/Modal.tsx +20 -6
- package/src/components/ui/PageHeader.tsx +63 -0
- package/src/components/ui/RowActions.tsx +7 -2
- package/src/components/ui/Segmented.tsx +97 -0
- package/src/components/ui/Toaster.tsx +139 -0
- package/src/components/ui/Toggle.tsx +18 -14
- package/src/components/ui/UnderlineTabs.tsx +373 -0
- package/src/components/ui/UnsavedBar.tsx +119 -0
- package/src/components/ui/admin-links.tsx +20 -0
- package/src/components/ui/card-table.ts +34 -0
- package/src/components/virtual-window.tsx +13 -2
- package/src/fields/RelationshipField.tsx +1 -1
- package/src/hooks/useAppearanceBootstrap.ts +9 -3
- package/src/index.ts +19 -0
- package/src/layout/Header.tsx +210 -135
- package/src/layout/Layout.tsx +61 -108
- package/src/layout/MobileTabBar.tsx +92 -0
- package/src/layout/Sidebar.tsx +555 -593
- package/src/layout/nav-config.tsx +425 -0
- package/src/layout/primitives/AdminShell.tsx +154 -6
- package/src/layout/topbar-classes.ts +8 -0
- package/src/layout/use-nav-items.ts +40 -0
- package/src/lib/api.ts +18 -1
- package/src/lib/appearance-api.ts +4 -0
- package/src/lib/batch-wizard.ts +188 -0
- package/src/lib/chrome-service.ts +200 -0
- package/src/lib/job-drawer.ts +424 -0
- package/src/lib/job-view.ts +550 -0
- package/src/lib/jobs-service.ts +345 -0
- package/src/lib/sheet-focus.ts +71 -0
- package/src/lib/tiers.ts +43 -0
- package/src/router/admin-routes.ts +8 -0
- package/src/router/index.ts +9 -1
- package/src/styles/prenta-tokens.css +280 -82
- package/src/styles/responsive.css +460 -22
- package/src/styles/theme.css +192 -28
- package/src/views/ApiKeys.tsx +2 -2
- package/src/views/AppearanceChrome.tsx +732 -0
- package/src/views/CollectionList.tsx +264 -205
- package/src/views/Dashboard.tsx +26 -13
- package/src/views/DocumentEdit.tsx +111 -56
- package/src/views/FormDeliveries.tsx +30 -17
- package/src/views/FormEntries.tsx +28 -20
- package/src/views/FormSubmissions.tsx +32 -34
- package/src/views/Forms.tsx +55 -34
- package/src/views/FormsSettings.tsx +94 -0
- package/src/views/Jobs/BusyButton.tsx +56 -0
- package/src/views/Jobs/CancelJobDialog.tsx +145 -0
- package/src/views/Jobs/DrawerActivity.tsx +142 -0
- package/src/views/Jobs/DrawerOverview.tsx +139 -0
- package/src/views/Jobs/DrawerResults.tsx +155 -0
- package/src/views/Jobs/DrawerReview.tsx +464 -0
- package/src/views/Jobs/JobDrawer.tsx +636 -0
- package/src/views/Jobs/JobsTable.tsx +267 -0
- package/src/views/Jobs/NewBatchJob.tsx +857 -0
- package/src/views/Jobs/WorkerStrip.tsx +149 -0
- package/src/views/Jobs/atoms.tsx +93 -0
- package/src/views/Jobs/focus.ts +67 -0
- package/src/views/Jobs/icons.tsx +111 -0
- package/src/views/Jobs/useJobDetail.ts +64 -0
- package/src/views/Jobs/useJobsFeed.ts +249 -0
- package/src/views/Jobs/useReviewItems.ts +187 -0
- package/src/views/Jobs.tsx +396 -105
- package/src/views/MediaBrowser.tsx +71 -21
- package/src/views/Pages/PagesListView.tsx +115 -39
- package/src/views/Posts/NewPostTypeInstructions.tsx +15 -10
- package/src/views/Posts/PostTypesView.tsx +28 -6
- package/src/views/Posts/PostsListView.tsx +130 -40
- package/src/views/SEO.tsx +23 -8
- package/src/views/ScriptTags.tsx +233 -153
- package/src/views/Settings.tsx +215 -256
- package/src/views/SpamFolder.tsx +32 -0
- package/src/views/Trash.tsx +12 -1
- package/src/views/Users.tsx +2 -2
- package/src/views/WidgetsPlaceholder.tsx +33 -0
- package/src/views/dashboard/kpi-grid.ts +38 -0
- package/src/views/header-footer/AnnouncementTab.tsx +231 -0
- package/src/views/header-footer/ChromeField.tsx +358 -0
- package/src/views/header-footer/ChromePreview.tsx +497 -0
- package/src/views/header-footer/DeveloperTab.tsx +331 -0
- package/src/views/header-footer/RegionTab.tsx +398 -0
- package/src/views/header-footer/chrome-form.ts +603 -0
- package/src/views/header-footer/code-samples.ts +146 -0
- package/src/views/header-footer/controls.tsx +166 -0
- package/src/views/lazy-views.tsx +12 -0
- package/src/views/page-editor/PageTab.tsx +2 -2
- package/src/views/page-editor/ReviewBar.tsx +1 -1
- package/src/views/page-editor/VersionHistoryPanel.tsx +1 -1
- package/src/views/seo/AuditTab.tsx +1 -1
- package/src/views/seo/OverviewTab.tsx +6 -5
- package/src/views/seo/ProposalsTab.tsx +1 -1
- package/src/views/settings/AISettingsTab.tsx +10 -6
- package/src/views/settings/AccessProtectionCard.tsx +1 -1
- package/src/views/settings/AdminThemeCard.tsx +228 -35
- package/src/views/settings/AppearanceTab.tsx +10 -6
- package/src/views/settings/BrandPreviewCard.tsx +1 -1
- package/src/views/settings/BrandVoiceCard.tsx +1 -1
- package/src/views/settings/EmailSettingsTab.tsx +11 -7
- package/src/views/settings/GeneralSettingsTab.tsx +10 -6
- package/src/views/settings/ProviderConnectionCard.tsx +1 -1
- package/src/views/settings/SearchDataCard.tsx +1 -1
- package/src/views/settings/SecurityStatusCard.tsx +2 -2
- package/src/views/settings/SecurityTab.tsx +10 -6
- package/src/views/settings/SeoAutopilotCard.tsx +2 -2
- package/src/views/settings/SeoSettingsTab.tsx +13 -9
- package/src/views/settings/SiteIndexStatusCard.tsx +1 -1
- package/src/views/settings/SiteThemeCard.tsx +1 -1
- package/src/views/settings/UpdatesTab.tsx +107 -101
- package/src/views/settings/components.tsx +26 -62
- package/src/views/settings/useAppearanceSettings.ts +116 -25
- package/src/views/users/UserDetailDrawer.tsx +1 -1
- package/dist/components/ui/StatPill.d.ts +0 -18
- package/dist/components/ui/StatPill.d.ts.map +0 -1
- package/dist/components/ui/StatPill.js +0 -5
- package/dist/components/ui/StatPill.js.map +0 -1
- package/src/components/ui/StatPill.tsx +0 -37
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../src/components/CommandPalette.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CommandPalette.d.ts","sourceRoot":"","sources":["../../src/components/CommandPalette.tsx"],"names":[],"mappings":"AA4LA,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,CAAA;IACb,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC;AAED,wBAAgB,cAAc,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,mBAAmB,2CAucrF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
-
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import { useCallback, useEffect, useRef, useState, } from 'react';
|
|
4
4
|
import { Command } from 'cmdk';
|
|
5
5
|
import { Search, FileText, File, Image, Settings, LayoutDashboard, Plus, Users, ArrowRightLeft, ClipboardList, Upload, BarChart3, Clock, Maximize2, Minimize2, Sparkles, SpellCheck, Wand2, } from 'lucide-react';
|
|
6
6
|
import { toast } from 'sonner';
|
|
@@ -66,6 +66,37 @@ const navigationCommands = [
|
|
|
66
66
|
{ id: 'nav-users', label: 'Users', icon: Users, action: '/users' },
|
|
67
67
|
{ id: 'nav-settings', label: 'Settings', icon: Settings, action: '/settings' },
|
|
68
68
|
];
|
|
69
|
+
const TABBABLE = 'a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])';
|
|
70
|
+
/**
|
|
71
|
+
* The palette is modal, so Tab and Shift+Tab cycle through its own controls
|
|
72
|
+
* (today just the search field; the results are arrow-key driven) instead of
|
|
73
|
+
* reaching the page behind the scrim. Rendered controls only: a
|
|
74
|
+
* `display: none` element has no client rects.
|
|
75
|
+
*/
|
|
76
|
+
function keepTabInside(e) {
|
|
77
|
+
if (e.key !== 'Tab')
|
|
78
|
+
return;
|
|
79
|
+
const stops = Array.from(e.currentTarget.querySelectorAll(TABBABLE)).filter((el) => el.getClientRects().length > 0);
|
|
80
|
+
const first = stops[0];
|
|
81
|
+
const last = stops[stops.length - 1];
|
|
82
|
+
const active = document.activeElement;
|
|
83
|
+
if (!first || !last) {
|
|
84
|
+
e.preventDefault();
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
if (!stops.includes(active)) {
|
|
88
|
+
e.preventDefault();
|
|
89
|
+
(e.shiftKey ? last : first).focus();
|
|
90
|
+
}
|
|
91
|
+
else if (e.shiftKey && active === first) {
|
|
92
|
+
e.preventDefault();
|
|
93
|
+
last.focus();
|
|
94
|
+
}
|
|
95
|
+
else if (!e.shiftKey && active === last) {
|
|
96
|
+
e.preventDefault();
|
|
97
|
+
first.focus();
|
|
98
|
+
}
|
|
99
|
+
}
|
|
69
100
|
export function CommandPalette({ open, onOpenChange, onNavigate }) {
|
|
70
101
|
const [search, setSearch] = useState('');
|
|
71
102
|
const [documents, setDocuments] = useState([]);
|
|
@@ -77,7 +108,9 @@ export function CommandPalette({ open, onOpenChange, onNavigate }) {
|
|
|
77
108
|
const debounceRef = useRef(undefined);
|
|
78
109
|
useEffect(() => {
|
|
79
110
|
const down = (e) => {
|
|
80
|
-
|
|
111
|
+
// Lowercased so Caps Lock doesn't break it; Shift/Alt combos (e.g.
|
|
112
|
+
// Firefox's Ctrl+Shift+K console) are left to the browser.
|
|
113
|
+
if (e.key.toLowerCase() === 'k' && (e.metaKey || e.ctrlKey) && !e.shiftKey && !e.altKey) {
|
|
81
114
|
e.preventDefault();
|
|
82
115
|
onOpenChange(!open);
|
|
83
116
|
}
|
|
@@ -217,12 +250,15 @@ export function CommandPalette({ open, onOpenChange, onNavigate }) {
|
|
|
217
250
|
return (_jsxs(_Fragment, { children: [_jsx("div", { className: "fixed inset-0 z-50 flex items-start justify-center bg-black/50 px-4 pt-[20vh]", onClick: () => {
|
|
218
251
|
onOpenChange(false);
|
|
219
252
|
setSearch('');
|
|
220
|
-
}, role: "presentation", children: _jsx("div", { role: "dialog", "aria-modal": "true", className: "w-full max-w-2xl", onClick: (e) => e.stopPropagation(), children: _jsxs(Command, { className: "bg-card w-full overflow-hidden rounded-lg shadow-2xl", onKeyDown: (e) => {
|
|
253
|
+
}, role: "presentation", children: _jsx("div", { role: "dialog", "aria-modal": "true", "aria-label": "Command palette", className: "w-full max-w-2xl", onClick: (e) => e.stopPropagation(), onKeyDown: keepTabInside, children: _jsxs(Command, { className: "bg-card w-full overflow-hidden rounded-lg shadow-2xl", onKeyDown: (e) => {
|
|
221
254
|
if (e.key === 'Escape') {
|
|
222
255
|
onOpenChange(false);
|
|
223
256
|
setSearch('');
|
|
224
257
|
}
|
|
225
|
-
}, shouldFilter: !hasQuery, children: [_jsxs("div", { className: "border-border flex items-center border-b px-4", children: [_jsx(Search, { className: "text-muted-foreground mr-3 h-5 w-5 shrink-0" }), _jsx(Command.Input, { value: search, onValueChange: setSearch, placeholder: "Search, jump to, or type /ai to use the AI co-author\u2026",
|
|
258
|
+
}, shouldFilter: !hasQuery, children: [_jsxs("div", { className: "border-border flex items-center border-b px-4", children: [_jsx(Search, { className: "text-muted-foreground mr-3 h-5 w-5 shrink-0" }), _jsx(Command.Input, { autoFocus: true, value: search, onValueChange: setSearch, placeholder: "Search, jump to, or type /ai to use the AI co-author\u2026",
|
|
259
|
+
// The admin's focus ring sits 2px outside; the dialog clips
|
|
260
|
+
// that at its top edge, so draw it inside the field.
|
|
261
|
+
className: "placeholder:text-muted-foreground w-full bg-transparent py-4 text-base focus:outline-none focus-visible:-outline-offset-2!" }), loading && (_jsx("div", { className: "border-border mr-2 h-4 w-4 shrink-0 animate-spin rounded-full border-2 border-t-gray-600" })), _jsx("kbd", { className: "bg-muted text-muted-foreground hidden shrink-0 rounded px-2 py-1 font-mono text-xs sm:inline-block", children: "ESC" })] }), _jsxs(Command.List, { className: "max-h-[400px] overflow-y-auto p-2", children: [_jsx(Command.Empty, { className: "text-muted-foreground py-6 text-center text-sm", children: loading ? 'Searching...' : 'No results found.' }), isAiMode && (_jsxs(Command.Group, { heading: "AI co-author", className: "px-2 py-2", children: [_jsxs("div", { className: "text-muted-foreground mb-2 flex items-center gap-1 text-xs font-medium", children: [_jsx(Sparkles, { className: "h-3 w-3", "aria-hidden": true }), " AI CO-AUTHOR"] }), aiActions.map((action) => {
|
|
226
262
|
const Icon = AI_ACTION_ICONS[action];
|
|
227
263
|
const isExactMatch = aiCommand?.action === action;
|
|
228
264
|
const previewable = isExactMatch && aiPayload.length > 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandPalette.js","sourceRoot":"","sources":["../../src/components/CommandPalette.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC9B,OAAO,EACL,MAAM,EACN,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,eAAe,EACf,IAAI,EACJ,KAAK,EACL,cAAc,EACd,aAAa,EACb,MAAM,EACN,SAAS,EACT,KAAK,EACL,SAAS,EACT,SAAS,EACT,QAAQ,EACR,UAAU,EACV,KAAK,GACN,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,YAAY,GAGb,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAkClE,MAAM,gBAAgB,GAAG,qBAAqB,CAAA;AAC9C,MAAM,gBAAgB,GAAG,CAAC,CAAA;AAE1B,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;QAClD,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAgB;IACtC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAA;QAC/D,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACnB,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAC1F,CAAC;IAAC,MAAM,CAAC;QACP,8BAA8B;IAChC,CAAC;AACH,CAAC;AAED,MAAM,aAAa,GAAG;IACpB,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE;IACrF,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE;IACrF,EAAE,EAAE,EAAE,qBAAqB,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE;IAChG,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE;IAC7E,EAAE,EAAE,EAAE,sBAAsB,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;CAC5F,CAAA;AAED,MAAM,eAAe,GAA4C;IAC/D,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,UAAU;CACtB,CAAA;AAeD,MAAM,iBAAiB,GAAkB;IACvC,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,EAAE;IACV,KAAK,EAAE,EAAE;IACT,MAAM,EAAE,IAAI;CACb,CAAA;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,GAAG,GAAG,EAAE;IAC7C,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG;QAAE,OAAO,IAAI,CAAA;IACnC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;AACrC,CAAC;AAED,MAAM,kBAAkB,GAAG;IACzB,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE;IAC/E,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;IACrE,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE;IACjE,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE;IAClE,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE;IAC1E,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE;IACvF,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE;IAClE,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;CAC/E,CAAA;AAQD,MAAM,UAAU,cAAc,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAuB;IACpF,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAA;IACxC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAyB,EAAE,CAAC,CAAA;IACtE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsB,EAAE,CAAC,CAAA;IAC3D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAqB,EAAE,CAAC,CAAA;IAC1D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAe,EAAE,CAAC,CAAA;IAChE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAgB,iBAAiB,CAAC,CAAA;IAC1E,MAAM,WAAW,GAAG,MAAM,CAAgC,SAAS,CAAC,CAAA;IAEpE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,CAAC,CAAgB,EAAE,EAAE;YAChC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9C,CAAC,CAAC,cAAc,EAAE,CAAA;gBAClB,YAAY,CAAC,CAAC,IAAI,CAAC,CAAA;YACrB,CAAC;QACH,CAAC,CAAA;QACD,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC1C,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC5D,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAA;IAExB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,EAAE,CAAC;YACT,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;QACnC,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAEV,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;QACvD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAClB,YAAY,CAAC,EAAE,CAAC,CAAA;YAChB,QAAQ,CAAC,EAAE,CAAC,CAAA;YACZ,QAAQ,CAAC,EAAE,CAAC,CAAA;YACZ,OAAM;QACR,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,CAAA;QAChB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAIrB,oBAAoB,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACnD,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBACb,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAA;gBACtC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;gBAC9B,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,YAAY,CAAC,EAAE,CAAC,CAAA;YAChB,QAAQ,CAAC,EAAE,CAAC,CAAA;YACZ,QAAQ,CAAC,EAAE,CAAC,CAAA;QACd,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,KAAK,CAAC,CAAA;QACnB,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,WAAW,CAAC,OAAO;YAAE,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAC1D,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,YAAY,CAAC,EAAE,CAAC,CAAA;YAChB,QAAQ,CAAC,EAAE,CAAC,CAAA;YACZ,QAAQ,CAAC,EAAE,CAAC,CAAA;YACZ,OAAM;QACR,CAAC;QACD,WAAW,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;QACjE,OAAO,GAAG,EAAE;YACV,IAAI,WAAW,CAAC,OAAO;gBAAE,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAC5D,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAA;IAE1B,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,MAAmB,EAAE,EAAE;QAC3D,IAAI,MAAM,EAAE,CAAC;YACX,cAAc,CAAC,MAAM,CAAC,CAAA;QACxB,CAAC;QACD,UAAU,CAAC,MAAM,CAAC,CAAA;QAClB,YAAY,CAAC,KAAK,CAAC,CAAA;QACnB,SAAS,CAAC,EAAE,CAAC,CAAA;IACf,CAAC,CAAA;IAED,MAAM,cAAc,GAAG,WAAW,CAChC,KAAK,EAAE,MAAsB,EAAE,IAAY,EAAE,EAAE;QAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACjB,KAAK,CAAC,OAAO,CAAC,uCAAuC,MAAM,cAAc,CAAC,CAAA;YAC1E,OAAM;QACR,CAAC;QACD,MAAM,MAAM,GAAG,eAAe,EAAE,CAAA;QAChC,YAAY,CAAC,KAAK,CAAC,CAAA;QACnB,SAAS,CAAC,EAAE,CAAC,CAAA;QACb,WAAW,CAAC;YACV,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;YACb,MAAM;YACN,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,EAAE;YACT,MAAM;SACP,CAAC,CAAA;QAEF,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAChD,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;YAC1E,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;YAC1B,OAAM;QACR,CAAC;QACD,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACrB,GAAG,IAAI;YACP,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;YAC1B,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO;YAC/B,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc;YAC7C,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC,CAAA;IACL,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAA;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACrC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAA;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,KAAK,SAAS,CAAC,SAAS;gBACtB,EAAE,SAAS,CAAC,KAAK,CAAC;iBACjB,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;iBACjD,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC,CAAA;YACrE,WAAW,CAAC,iBAAiB,CAAC,CAAA;YAC9B,OAAM;QACR,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAA;QAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAA;QACpC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;QAClD,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;QAClC,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,GAAG,mBAAmB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QACxD,WAAW,CAAC,iBAAiB,CAAC,CAAA;IAChC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YACnD,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,KAAK,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;QACvD,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IAEpB,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,KAAa,EAAE,cAA0C,EAAE,EAAE;QAC5D,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC,CAAA;IAC7D,CAAC,EACD,EAAE,CACH,CAAA;IAED,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,WAAW,CAAC,iBAAiB,CAAC,CAAA;IAChC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAA;IACzC,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;IAC/E,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC9C,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC7C,MAAM,SAAS,GAAG,SAAS,EAAE,IAAI,IAAI,EAAE,CAAA;IACvC,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAE1C,MAAM,OAAO,GAAG,CACd,KAAC,qBAAqB,IACpB,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,OAAO,EAAE,QAAQ,CAAC,OAAO,EACzB,MAAM,EAAE,QAAQ,CAAC,MAAM,EACvB,MAAM,EAAE,QAAQ,CAAC,MAAM,EACvB,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,OAAO,EAAE,QAAQ,CAAC,OAAO,EACzB,cAAc,EAAE,QAAQ,CAAC,cAAc,EACvC,aAAa,EAAE,mBAAmB,EAClC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,EACrE,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,eAAe,GAC1B,CACH,CAAA;IAED,IAAI,CAAC,IAAI;QAAE,OAAO,OAAO,CAAA;IAEzB,OAAO,CACL,8BACE,cACE,SAAS,EAAC,+EAA+E,EACzF,OAAO,EAAE,GAAG,EAAE;oBACZ,YAAY,CAAC,KAAK,CAAC,CAAA;oBACnB,SAAS,CAAC,EAAE,CAAC,CAAA;gBACf,CAAC,EACD,IAAI,EAAC,cAAc,YAEnB,cACE,IAAI,EAAC,QAAQ,gBACF,MAAM,EACjB,SAAS,EAAC,kBAAkB,EAC5B,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,YAEnC,MAAC,OAAO,IACN,SAAS,EAAC,sDAAsD,EAChE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;4BACf,IAAI,CAAC,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gCACvB,YAAY,CAAC,KAAK,CAAC,CAAA;gCACnB,SAAS,CAAC,EAAE,CAAC,CAAA;4BACf,CAAC;wBACH,CAAC,EACD,YAAY,EAAE,CAAC,QAAQ,aAEvB,eAAK,SAAS,EAAC,+CAA+C,aAC5D,KAAC,MAAM,IAAC,SAAS,EAAC,6CAA6C,GAAG,EAClE,KAAC,OAAO,CAAC,KAAK,IACZ,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,SAAS,EACxB,WAAW,EAAC,4DAAuD,EACnE,SAAS,EAAC,2FAA2F,GACrG,EACD,OAAO,IAAI,CACV,cAAK,SAAS,EAAC,0FAA0F,GAAG,CAC7G,EACD,cAAK,SAAS,EAAC,oGAAoG,oBAE7G,IACF,EAEN,MAAC,OAAO,CAAC,IAAI,IAAC,SAAS,EAAC,mCAAmC,aACzD,KAAC,OAAO,CAAC,KAAK,IAAC,SAAS,EAAC,gDAAgD,YACtE,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,mBAAmB,GACjC,EAEf,QAAQ,IAAI,CACX,MAAC,OAAO,CAAC,KAAK,IAAC,OAAO,EAAC,cAAc,EAAC,SAAS,EAAC,WAAW,aACzD,eAAK,SAAS,EAAC,wEAAwE,aACrF,KAAC,QAAQ,IAAC,SAAS,EAAC,SAAS,wBAAe,qBACxC,EACL,SAAS,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;gDACxB,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAA;gDACpC,MAAM,YAAY,GAAG,SAAS,EAAE,MAAM,KAAK,MAAM,CAAA;gDACjD,MAAM,WAAW,GAAG,YAAY,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAA;gDACxD,OAAO,CACL,MAAC,OAAO,CAAC,IAAI,IAEX,KAAK,EAAE,MAAM,MAAM,EAAE,EACrB,QAAQ,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,EACjD,SAAS,EAAC,2GAA2G,aAErH,KAAC,IAAI,IAAC,SAAS,EAAC,sBAAsB,GAAG,EACzC,eAAK,SAAS,EAAC,uBAAuB,aACpC,gBAAM,SAAS,EAAC,aAAa,aAC1B,mBAAmB,CAAC,MAAM,CAAC,EAC3B,WAAW,IAAI,CACd,gBAAM,SAAS,EAAC,wCAAwC,uBACpD,eAAe,CAAC,SAAS,CAAC,cACvB,CACR,IACI,EACP,eAAM,SAAS,EAAC,+BAA+B,YAC5C,yBAAyB,CAAC,MAAM,CAAC,GAC7B,IACH,EACN,eAAK,SAAS,EAAC,oFAAoF,qBAC5F,MAAM,IACP,KArBD,MAAM,MAAM,EAAE,CAsBN,CAChB,CAAA;4CACH,CAAC,CAAC,IACY,CACjB,EAEA,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CACnD,MAAC,OAAO,CAAC,KAAK,IAAC,OAAO,EAAC,QAAQ,EAAC,SAAS,EAAC,WAAW,aACnD,cAAK,SAAS,EAAC,gDAAgD,uBAAa,EAC3E,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACzB,MAAC,OAAO,CAAC,IAAI,IAEX,KAAK,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE,EAC7B,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAC7C,SAAS,EAAC,2GAA2G,aAErH,KAAC,KAAK,IAAC,SAAS,EAAC,+BAA+B,GAAG,EACnD,yBAAO,IAAI,CAAC,KAAK,GAAQ,EACzB,eAAM,SAAS,EAAC,kDAAkD,YAC/D,IAAI,CAAC,IAAI,GACL,KATF,UAAU,IAAI,CAAC,EAAE,EAAE,CAUX,CAChB,CAAC,IACY,CACjB,EAEA,CAAC,QAAQ,IAAI,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAChD,MAAC,OAAO,CAAC,KAAK,IAAC,OAAO,EAAC,WAAW,EAAC,SAAS,EAAC,WAAW,aACtD,cAAK,SAAS,EAAC,gDAAgD,0BAAgB,EAC9E,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACtB,MAAC,OAAO,CAAC,IAAI,IAEX,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,EACtC,QAAQ,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,gBAAgB,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE,EAAE,EAAE;oDACvD,EAAE,EAAE,OAAO,GAAG,CAAC,EAAE,EAAE;oDACnB,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE;oDACtC,IAAI,EAAE,gBAAgB,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,EAAE,EAAE;oDAChD,IAAI,EAAE,UAAU;iDACjB,CAAC,EAEJ,SAAS,EAAC,2GAA2G,aAErH,KAAC,QAAQ,IAAC,SAAS,EAAC,+BAA+B,GAAG,EACtD,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,UAAU,YAAE,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,GAAQ,EACnE,gBAAM,SAAS,EAAC,+BAA+B,aAC5C,GAAG,CAAC,UAAU,cAAY,GAAG,CAAC,MAAM,IAChC,IACH,KAlBD,OAAO,GAAG,CAAC,EAAE,EAAE,CAmBP,CAChB,CAAC,IACY,CACjB,EAEA,CAAC,QAAQ,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5C,MAAC,OAAO,CAAC,KAAK,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,gBAAgB,aACvD,cAAK,SAAS,EAAC,gDAAgD,sBAAY,EAC1E,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAChB,MAAC,OAAO,CAAC,IAAI,IAEX,KAAK,EAAE,CAAC,CAAC,QAAQ,EACjB,QAAQ,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,mBAAmB,CAAC,CAAC,EAAE,EAAE,EAAE;oDACtC,EAAE,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE;oDACnB,KAAK,EAAE,CAAC,CAAC,QAAQ;oDACjB,IAAI,EAAE,mBAAmB,CAAC,CAAC,EAAE,EAAE;oDAC/B,IAAI,EAAE,OAAO;iDACd,CAAC,EAEJ,SAAS,EAAC,2GAA2G,aAErH,KAAC,KAAK,IAAC,SAAS,EAAC,+BAA+B,GAAG,EACnD,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,UAAU,YAAE,CAAC,CAAC,QAAQ,GAAQ,EAC9C,eAAM,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,QAAQ,GAAQ,IAC/D,KAhBD,SAAS,CAAC,CAAC,EAAE,EAAE,CAiBP,CAChB,CAAC,IACY,CACjB,EAEA,CAAC,QAAQ,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5C,MAAC,OAAO,CAAC,KAAK,IAAC,OAAO,EAAC,OAAO,EAAC,SAAS,EAAC,gBAAgB,aACvD,cAAK,SAAS,EAAC,gDAAgD,sBAAY,EAC1E,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAChB,MAAC,OAAO,CAAC,IAAI,IAEX,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE,EAC7B,QAAQ,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,mBAAmB,CAAC,CAAC,EAAE,EAAE,EAAE;oDACtC,EAAE,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE;oDAClB,KAAK,EAAE,CAAC,CAAC,IAAI;oDACb,IAAI,EAAE,mBAAmB,CAAC,CAAC,EAAE,EAAE;oDAC/B,IAAI,EAAE,MAAM;iDACb,CAAC,EAEJ,SAAS,EAAC,2GAA2G,aAErH,KAAC,KAAK,IAAC,SAAS,EAAC,+BAA+B,GAAG,EACnD,eAAK,SAAS,EAAC,uBAAuB,aACpC,eAAM,SAAS,EAAC,UAAU,YAAE,CAAC,CAAC,IAAI,GAAQ,EAC1C,gBAAM,SAAS,EAAC,+BAA+B,aAC5C,CAAC,CAAC,KAAK,cAAY,CAAC,CAAC,IAAI,IACrB,IACH,KAlBD,QAAQ,CAAC,CAAC,EAAE,EAAE,CAmBN,CAChB,CAAC,IACY,CACjB,EAEA,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,CAC1C,MAAC,OAAO,CAAC,KAAK,IAAC,OAAO,EAAC,YAAY,EAAC,SAAS,EAAC,WAAW,aACvD,cAAK,SAAS,EAAC,gDAAgD,2BAAiB,EAC/E,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gDAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;gDACrB,OAAO,CACL,MAAC,OAAO,CAAC,IAAI,IAEX,KAAK,EAAE,GAAG,CAAC,KAAK,EAChB,QAAQ,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EACxC,SAAS,EAAC,2GAA2G,aAErH,KAAC,IAAI,IAAC,SAAS,EAAC,+BAA+B,GAAG,EAClD,yBAAO,GAAG,CAAC,KAAK,GAAQ,KANnB,GAAG,CAAC,EAAE,CAOE,CAChB,CAAA;4CACH,CAAC,CAAC,IACY,CACjB,EAEA,CAAC,QAAQ,IAAI,CACZ,MAAC,OAAO,CAAC,KAAK,IAAC,OAAO,EAAC,SAAS,EAAC,SAAS,EAAC,gBAAgB,aACzD,cAAK,SAAS,EAAC,gDAAgD,wBAAc,EAC5E,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gDACzB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;gDACrB,OAAO,CACL,MAAC,OAAO,CAAC,IAAI,IAEX,KAAK,EAAE,GAAG,CAAC,KAAK,EAChB,QAAQ,EAAE,GAAG,EAAE,CACb,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE;wDACvB,EAAE,EAAE,GAAG,CAAC,EAAE;wDACV,KAAK,EAAE,GAAG,CAAC,KAAK;wDAChB,IAAI,EAAE,GAAG,CAAC,MAAM;wDAChB,IAAI,EAAE,QAAQ;qDACf,CAAC,EAEJ,SAAS,EAAC,2GAA2G,aAErH,KAAC,IAAI,IAAC,SAAS,EAAC,+BAA+B,GAAG,EAClD,yBAAO,GAAG,CAAC,KAAK,GAAQ,KAbnB,GAAG,CAAC,EAAE,CAcE,CAChB,CAAA;4CACH,CAAC,CAAC,IACY,CACjB,IACY,EAEf,cAAK,SAAS,EAAC,2GAA2G,YACxH,eAAK,SAAS,EAAC,yBAAyB,aACtC,gBAAM,SAAS,EAAC,yBAAyB,aACvC,cAAK,SAAS,EAAC,gEAAgE,uBAEzE,EACN,cAAK,SAAS,EAAC,gEAAgE,uBAEzE,mBAED,EACP,gBAAM,SAAS,EAAC,yBAAyB,aACvC,cAAK,SAAS,EAAC,gEAAgE,uBAEzE,iBAED,IACH,GACF,IACE,GACN,GACF,EACL,OAAO,IACP,CACJ,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"CommandPalette.js","sourceRoot":"","sources":["../../src/components/CommandPalette.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocaleSwitcher.d.ts","sourceRoot":"","sources":["../../src/components/LocaleSwitcher.tsx"],"names":[],"mappings":"AAOA,wBAAgB,cAAc,
|
|
1
|
+
{"version":3,"file":"LocaleSwitcher.d.ts","sourceRoot":"","sources":["../../src/components/LocaleSwitcher.tsx"],"names":[],"mappings":"AAOA,wBAAgB,cAAc,mDAyC7B"}
|
|
@@ -9,6 +9,6 @@ export function LocaleSwitcher() {
|
|
|
9
9
|
if (locales.length < 2)
|
|
10
10
|
return null;
|
|
11
11
|
const activeLabel = locales.find((l) => l.code === activeLocale)?.label ?? activeLocale;
|
|
12
|
-
return (_jsxs(DropdownMenu.Root, { children: [_jsx(DropdownMenu.Trigger, { asChild: true, children: _jsxs("button", { className: "flex items-center gap-1.5
|
|
12
|
+
return (_jsxs(DropdownMenu.Root, { children: [_jsx(DropdownMenu.Trigger, { asChild: true, children: _jsxs("button", { type: "button", className: "rounded-8 text-sub hover:bg-acc-l hover:text-acc aria-expanded:bg-acc-l aria-expanded:text-acc prenta-touch-target mobile:h-11 flex h-[34px] shrink-0 cursor-pointer items-center gap-1.5 border-0 bg-transparent px-2 text-[13px]", "aria-label": "Switch locale", children: [_jsx(Globe, { className: "h-4 w-4", strokeWidth: 1.75, "aria-hidden": true }), _jsx("span", { className: "hidden font-medium sm:inline", children: activeLabel }), _jsx(ChevronDown, { className: "h-3 w-3", strokeWidth: 1.75, "aria-hidden": true })] }) }), _jsx(DropdownMenu.Portal, { container: adminPortalContainer(), children: _jsx(DropdownMenu.Content, { className: "z-50 min-w-[160px] rounded-lg border border-[var(--border)] bg-[var(--popover)] p-1 text-[var(--popover-foreground)] shadow-lg", align: "end", sideOffset: 5, children: locales.map((locale) => (_jsxs(DropdownMenu.Item, { onSelect: () => setLocale(locale.code), className: "flex cursor-pointer items-center justify-between gap-2 rounded px-3 py-2 text-sm outline-none hover:bg-[var(--accent)]", children: [_jsx("span", { children: locale.label }), locale.code === activeLocale && _jsx(Check, { className: "h-4 w-4 text-[var(--primary)]" })] }, locale.code))) }) })] }));
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=LocaleSwitcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocaleSwitcher.js","sourceRoot":"","sources":["../../src/components/LocaleSwitcher.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,MAAM,UAAU,cAAc;IAC5B,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAExD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAEnC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,KAAK,IAAI,YAAY,CAAA;IAEvF,OAAO,CACL,MAAC,YAAY,CAAC,IAAI,eAChB,KAAC,YAAY,CAAC,OAAO,IAAC,OAAO,kBAC3B,kBACE,SAAS,EAAC,
|
|
1
|
+
{"version":3,"file":"LocaleSwitcher.js","sourceRoot":"","sources":["../../src/components/LocaleSwitcher.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE/C,MAAM,UAAU,cAAc;IAC5B,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAExD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAEnC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,EAAE,KAAK,IAAI,YAAY,CAAA;IAEvF,OAAO,CACL,MAAC,YAAY,CAAC,IAAI,eAChB,KAAC,YAAY,CAAC,OAAO,IAAC,OAAO,kBAC3B,kBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,oOAAoO,gBACnO,eAAe,aAE1B,KAAC,KAAK,IAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAE,IAAI,wBAAgB,EAC5D,eAAM,SAAS,EAAC,8BAA8B,YAAE,WAAW,GAAQ,EACnE,KAAC,WAAW,IAAC,SAAS,EAAC,SAAS,EAAC,WAAW,EAAE,IAAI,wBAAgB,IAC3D,GACY,EAEvB,KAAC,YAAY,CAAC,MAAM,IAAC,SAAS,EAAE,oBAAoB,EAAE,YACpD,KAAC,YAAY,CAAC,OAAO,IACnB,SAAS,EAAC,gIAAgI,EAC1I,KAAK,EAAC,KAAK,EACX,UAAU,EAAE,CAAC,YAEZ,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,MAAC,YAAY,CAAC,IAAI,IAEhB,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EACtC,SAAS,EAAC,wHAAwH,aAElI,yBAAO,MAAM,CAAC,KAAK,GAAQ,EAC1B,MAAM,CAAC,IAAI,KAAK,YAAY,IAAI,KAAC,KAAK,IAAC,SAAS,EAAC,+BAA+B,GAAG,KAL/E,MAAM,CAAC,IAAI,CAME,CACrB,CAAC,GACmB,GACH,IACJ,CACrB,CAAA;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationBell.d.ts","sourceRoot":"","sources":["../../src/components/NotificationBell.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"NotificationBell.d.ts","sourceRoot":"","sources":["../../src/components/NotificationBell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA0D,MAAM,OAAO,CAAA;AAE9E,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAO/B,MAAM,gCAAgC,CAAA;AAGvC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,CAAC,IAAI,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;IACvF,MAAM,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAA;IAClD,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC,CAAA;IACpE,WAAW,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAA;IACvD;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,yBAAyB,KAAK,wBAAwB,CAAA;CAC1E;AAUD,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,IAAI,CAAA;IAC/C,+DAA+D;IAC/D,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,uCAAuC;IACvC,GAAG,CAAC,EAAE,gBAAgB,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,cAAuB,EACvB,QAAQ,EACR,OAAO,EACP,GAAgB,EAChB,SAAS,GACV,EAAE,qBAAqB,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAoR3C"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
3
|
+
import { useCallback, useEffect, useId, useRef, useState } from 'react';
|
|
4
4
|
import { listNotifications as defaultListNotifications, markAllNotificationsRead as defaultMarkAllRead, markNotificationRead as defaultMarkRead, notificationSummary, subscribeNotificationStream as defaultSubscribeStream, unreadCount as defaultUnreadCount, } from '../lib/notifications-client.js';
|
|
5
|
+
import { TOPBAR_ICON_BUTTON } from '../layout/topbar-classes.js';
|
|
5
6
|
const defaultApi = {
|
|
6
7
|
list: (opts) => defaultListNotifications(opts),
|
|
7
8
|
unread: () => defaultUnreadCount(),
|
|
@@ -15,6 +16,11 @@ export function NotificationBell({ pollIntervalMs = 60_000, onSelect, onError, a
|
|
|
15
16
|
const [items, setItems] = useState([]);
|
|
16
17
|
const [loading, setLoading] = useState(false);
|
|
17
18
|
const mountedRef = useRef(true);
|
|
19
|
+
const rootRef = useRef(null);
|
|
20
|
+
const buttonRef = useRef(null);
|
|
21
|
+
const panelRef = useRef(null);
|
|
22
|
+
const panelId = useId();
|
|
23
|
+
const titleId = useId();
|
|
18
24
|
// Set of notification IDs we've already rendered. The SSE handler
|
|
19
25
|
// consults this synchronously so duplicate deliveries (REST refresh
|
|
20
26
|
// + SSE push, or two SSE retries) don't double-bump the badge.
|
|
@@ -31,6 +37,9 @@ export function NotificationBell({ pollIntervalMs = 60_000, onSelect, onError, a
|
|
|
31
37
|
// SSE and REST`.
|
|
32
38
|
const seenIdsRef = useRef(new Set());
|
|
33
39
|
useEffect(() => {
|
|
40
|
+
// Set on mount too: StrictMode unmounts and remounts once in development,
|
|
41
|
+
// and a ref left false drops every later result (no dot, no rows).
|
|
42
|
+
mountedRef.current = true;
|
|
34
43
|
return () => {
|
|
35
44
|
mountedRef.current = false;
|
|
36
45
|
};
|
|
@@ -117,6 +126,34 @@ export function NotificationBell({ pollIntervalMs = 60_000, onSelect, onError, a
|
|
|
117
126
|
return;
|
|
118
127
|
void refreshList(false);
|
|
119
128
|
}, [open, refreshList]);
|
|
129
|
+
// The panel is a non-modal dialog: it takes focus when it opens, and a
|
|
130
|
+
// pointerdown anywhere else closes it without moving focus.
|
|
131
|
+
useEffect(() => {
|
|
132
|
+
if (!open)
|
|
133
|
+
return;
|
|
134
|
+
panelRef.current?.focus();
|
|
135
|
+
const onPointerDown = (e) => {
|
|
136
|
+
if (!rootRef.current?.contains(e.target))
|
|
137
|
+
setOpen(false);
|
|
138
|
+
};
|
|
139
|
+
document.addEventListener('pointerdown', onPointerDown, true);
|
|
140
|
+
return () => document.removeEventListener('pointerdown', onPointerDown, true);
|
|
141
|
+
}, [open]);
|
|
142
|
+
const onRootKeyDown = (e) => {
|
|
143
|
+
if (!open || e.key !== 'Escape' || e.defaultPrevented)
|
|
144
|
+
return;
|
|
145
|
+
e.preventDefault();
|
|
146
|
+
setOpen(false);
|
|
147
|
+
buttonRef.current?.focus();
|
|
148
|
+
};
|
|
149
|
+
// Tabbing past the panel (or back past the bell) closes it. A blur with no
|
|
150
|
+
// next element (a click on the page, the window losing focus) is left to
|
|
151
|
+
// the pointerdown listener.
|
|
152
|
+
const onRootBlur = (e) => {
|
|
153
|
+
const next = e.relatedTarget;
|
|
154
|
+
if (open && next && !e.currentTarget.contains(next))
|
|
155
|
+
setOpen(false);
|
|
156
|
+
};
|
|
120
157
|
const handleClickRow = useCallback(async (n) => {
|
|
121
158
|
// Optimistic update: drop the unread count + tag the row read.
|
|
122
159
|
if (!n.readAt) {
|
|
@@ -155,9 +192,13 @@ export function NotificationBell({ pollIntervalMs = 60_000, onSelect, onError, a
|
|
|
155
192
|
await refreshUnread();
|
|
156
193
|
}
|
|
157
194
|
}, [api, items, onError, refreshUnread]);
|
|
158
|
-
|
|
195
|
+
const unreadLabel = unread > 99 ? '99+' : String(unread);
|
|
196
|
+
return (_jsxs("div", { ref: rootRef, className: `relative ${className ?? ''}`, "data-testid": "notification-bell", onKeyDown: onRootKeyDown, onBlur: onRootBlur, children: [_jsxs("button", { ref: buttonRef, type: "button", className: `${TOPBAR_ICON_BUTTON} aria-expanded:bg-acc-l aria-expanded:text-acc`, "aria-label": unread > 0 ? `Notifications, ${unreadLabel} unread` : 'Notifications', "aria-haspopup": "dialog", "aria-expanded": open, "aria-controls": open ? panelId : undefined, onClick: () => setOpen((v) => !v), "data-testid": "bell-button", children: [_jsx(BellIcon, {}), unread > 0 && (_jsx("span", { "aria-hidden": true, className: "border-sb bg-notify-dot pointer-events-none absolute top-[5px] right-[5px] h-[7px] w-[7px] rounded-full border-[1.5px] forced-colors:bg-[CanvasText] forced-colors:[forced-color-adjust:none]", "data-testid": "bell-badge" }))] }), open && (
|
|
197
|
+
// Not role="menu": it holds a title, a button and a list of rows, not
|
|
198
|
+
// menu items.
|
|
199
|
+
_jsxs("div", { ref: panelRef, id: panelId, role: "dialog", "aria-labelledby": titleId, tabIndex: -1, className: "rounded-10 border-bdr bg-card shadow-shd2 absolute right-0 z-50 mt-1 w-80 border", "data-testid": "bell-dropdown", children: [_jsxs("div", { className: "border-bdr flex items-center justify-between border-b px-3 py-2", children: [_jsx("span", { id: titleId, className: "text-foreground text-sm font-medium", children: "Notifications" }), _jsx("button", { type: "button", className: "text-muted-foreground hover:text-foreground text-xs disabled:opacity-50", onClick: handleMarkAll, disabled: unread === 0, "data-testid": "bell-mark-all", children: "Mark all read" })] }), _jsx("div", { className: "max-h-80 overflow-y-auto", "aria-busy": loading, "data-testid": "bell-list", children: loading ? (_jsx("p", { className: "text-muted-foreground px-3 py-2 text-xs", children: "Loading\u2026" })) : items.length === 0 ? (_jsx("p", { className: "text-muted-foreground px-3 py-2 text-xs", children: "All caught up." })) : (_jsx("ul", { children: items.map((n) => (_jsx("li", { children: _jsxs("button", { type: "button", className: `hover:bg-accent block w-full px-3 py-2 text-left text-xs ${n.readAt ? 'text-muted-foreground' : 'text-foreground font-medium'}`, onClick: () => handleClickRow(n), "data-testid": `bell-row-${n.id}`, "data-read": n.readAt ? 'true' : 'false', children: [_jsx("div", { children: notificationSummary(n) }), _jsx("div", { className: "text-muted-foreground mt-0.5 text-[10px]", children: n.createdAt })] }) }, n.id))) })) })] }))] }));
|
|
159
200
|
}
|
|
160
201
|
function BellIcon() {
|
|
161
|
-
return (_jsxs("svg", { "aria-hidden": "true", width: "
|
|
202
|
+
return (_jsxs("svg", { "aria-hidden": "true", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.75", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("path", { d: "M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9" }), _jsx("path", { d: "M10.3 21a1.94 1.94 0 0 0 3.4 0" })] }));
|
|
162
203
|
}
|
|
163
204
|
//# sourceMappingURL=NotificationBell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NotificationBell.js","sourceRoot":"","sources":["../../src/components/NotificationBell.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"NotificationBell.js","sourceRoot":"","sources":["../../src/components/NotificationBell.tsx"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export function OfflineStatus({ connection, offline }) {
|
|
|
8
8
|
}
|
|
9
9
|
const TONE_CLASSES = {
|
|
10
10
|
good: 'bg-success/10 text-emerald-700',
|
|
11
|
-
warn: 'bg-
|
|
11
|
+
warn: 'bg-warn-l text-warning',
|
|
12
12
|
info: 'bg-info/10 text-info',
|
|
13
13
|
bad: 'bg-destructive/10 text-destructive',
|
|
14
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OfflineStatus.js","sourceRoot":"","sources":["../../src/components/OfflineStatus.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAmCZ,MAAM,UAAU,aAAa,CAAC,EAAE,UAAU,EAAE,OAAO,EAAsB;IACvE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAClE,MAAM,SAAS,GAAG,8EAA8E,CAAA;IAChG,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACpC,OAAO,CACL,gBAAM,SAAS,EAAE,GAAG,SAAS,IAAI,SAAS,EAAE,iBAAc,gBAAgB,eAAY,IAAI,aACxF,8BACc,MAAM,EAClB,SAAS,EAAE,yCAAyC,WAAW,CAAC,IAAI,CAAC,EAAE,GACvE,EACD,KAAK,IACD,CACR,CAAA;AACH,CAAC;AAID,MAAM,YAAY,GAAgC;IAChD,IAAI,EAAE,gCAAgC;IACtC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"OfflineStatus.js","sourceRoot":"","sources":["../../src/components/OfflineStatus.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAmCZ,MAAM,UAAU,aAAa,CAAC,EAAE,UAAU,EAAE,OAAO,EAAsB;IACvE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,qBAAqB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAClE,MAAM,SAAS,GAAG,8EAA8E,CAAA;IAChG,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACpC,OAAO,CACL,gBAAM,SAAS,EAAE,GAAG,SAAS,IAAI,SAAS,EAAE,iBAAc,gBAAgB,eAAY,IAAI,aACxF,8BACc,MAAM,EAClB,SAAS,EAAE,yCAAyC,WAAW,CAAC,IAAI,CAAC,EAAE,GACvE,EACD,KAAK,IACD,CACR,CAAA;AACH,CAAC;AAID,MAAM,YAAY,GAAgC;IAChD,IAAI,EAAE,gCAAgC;IACtC,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE,sBAAsB;IAC5B,GAAG,EAAE,oCAAoC;CAC1C,CAAA;AAED,MAAM,WAAW,GAAgC;IAC/C,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,SAAS;IACf,GAAG,EAAE,gBAAgB;CACtB,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,UAA+B,EAC/B,OAAiC;IAEjC,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;IAC7E,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;QAC9B,8DAA8D;QAC9D,IAAI,UAAU,KAAK,WAAW;YAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;QACxE,IAAI,UAAU,KAAK,YAAY;YAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;QAC9E,OAAO,EAAE,KAAK,EAAE,gCAAgC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAClE,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACnD,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACzD,CAAC;IACD,oCAAoC;IACpC,IAAI,UAAU,KAAK,WAAW;QAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAChF,IAAI,UAAU,KAAK,YAAY;QAAE,OAAO,EAAE,KAAK,EAAE,+BAA+B,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAChG,OAAO,EAAE,KAAK,EAAE,yBAAyB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;AAC3D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresenceIndicator.d.ts","sourceRoot":"","sources":["../../src/components/PresenceIndicator.tsx"],"names":[],"mappings":"AAUA,UAAU,sBAAsB;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;
|
|
1
|
+
{"version":3,"file":"PresenceIndicator.d.ts","sourceRoot":"","sources":["../../src/components/PresenceIndicator.tsx"],"names":[],"mappings":"AAUA,UAAU,sBAAsB;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAKD,wBAAgB,iBAAiB,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,sBAAsB,kDA0DtF"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useEffect, useState, useRef } from 'react';
|
|
4
|
-
|
|
4
|
+
/** The avatar palette (tokens.json `--avatar-*`): white initials clear 4.5:1 on each. */
|
|
5
|
+
const COLORS = Array.from({ length: 8 }, (_, i) => `var(--avatar-${i + 1})`);
|
|
5
6
|
export function PresenceIndicator({ documentId, currentUserId }) {
|
|
6
7
|
const [users, setUsers] = useState([]);
|
|
7
8
|
const eventSourceRef = useRef(null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresenceIndicator.js","sourceRoot":"","sources":["../../src/components/PresenceIndicator.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAanD,MAAM,MAAM,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"PresenceIndicator.js","sourceRoot":"","sources":["../../src/components/PresenceIndicator.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAanD,yFAAyF;AACzF,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAE5E,MAAM,UAAU,iBAAiB,CAAC,EAAE,UAAU,EAAE,aAAa,EAA0B;IACrF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAA;IACtD,MAAM,cAAc,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAA;IACvD,MAAM,YAAY,GAAG,MAAM,CAAiC,SAAS,CAAC,CAAA;IAEtE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU;YAAE,OAAM;QAEvB,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,qBAAqB,UAAU,EAAE,CAAC,CAAA;QAC7D,cAAc,CAAC,OAAO,GAAG,EAAE,CAAA;QAE3B,EAAE,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;YACxC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAmB,CAAA;gBACrD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAA;YAC1D,CAAC;YAAC,MAAM,CAAC;gBACP,wCAAwC;YAC1C,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,OAAO,GAAG,GAAG,EAAE;YAChB,EAAE,CAAC,KAAK,EAAE,CAAA;QACZ,CAAC,CAAA;QAED,YAAY,CAAC,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE;YACtC,KAAK,CAAC,qBAAqB,UAAU,YAAY,EAAE;gBACjD,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QACpB,CAAC,EAAE,MAAM,CAAC,CAAA;QAEV,OAAO,GAAG,EAAE;YACV,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,IAAI,YAAY,CAAC,OAAO;gBAAE,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QAC/D,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAA;IAE/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IAEnC,OAAO,CACL,eAAK,SAAS,EAAC,yBAAyB,EAAC,KAAK,EAAE,GAAG,KAAK,CAAC,MAAM,yBAAyB,aACrF,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAClC,cAEE,SAAS,EAAC,wGAAwG,EAClH,KAAK,EAAE,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EACrD,KAAK,EAAE,IAAI,CAAC,IAAI,YAEf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,IAL7B,IAAI,CAAC,MAAM,CAMZ,CACP,CAAC,EACD,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CACnB,eAAK,SAAS,EAAC,4HAA4H,kBACvI,KAAK,CAAC,MAAM,GAAG,CAAC,IACd,CACP,IACG,CACP,CAAA;AACH,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { AlertTriangle } from 'lucide-react';
|
|
|
4
4
|
import { BREAKPOINTS, getBreakpoint } from '../lib/breakpoints.js';
|
|
5
5
|
const DOT_TONE = {
|
|
6
6
|
same: 'bg-success/12 text-success',
|
|
7
|
-
grew: 'bg-
|
|
7
|
+
grew: 'bg-warn-l text-warning',
|
|
8
8
|
'grew-badly': 'bg-destructive/12 text-destructive',
|
|
9
9
|
};
|
|
10
10
|
/**
|
|
@@ -37,6 +37,6 @@ export function ReflowMeter({ guard, length, device, onProof }) {
|
|
|
37
37
|
return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "mt-1.5 flex items-center gap-2", children: [_jsxs("span", { className: "text-muted-foreground text-[11px] whitespace-nowrap tabular-nums", children: [_jsx("b", { className: "text-foreground/80 font-semibold", children: length }), " chars", guard.delta !== 0 && (_jsxs("span", { className: guard.delta > 0 ? 'text-warning font-bold' : '', children: [' ', "(", guard.delta > 0 ? '+' : '', guard.delta, ")"] })), here && (_jsxs(_Fragment, { children: [' · ', _jsx("b", { className: "text-foreground/80 font-semibold", children: here.lines }), " line", here.lines === 1 ? '' : 's', " here"] }))] }), guard.rows.length > 0 && (_jsx("div", { className: "ml-auto flex gap-0.75", children: guard.rows.map((row) => {
|
|
38
38
|
const bp = getBreakpoint(row.id);
|
|
39
39
|
return (_jsxs("button", { type: "button", onClick: () => onProof(row.id), className: `flex h-4.25 w-4.25 items-center justify-center rounded-[5px] text-[8px] font-bold transition-transform hover:-translate-y-px ${DOT_TONE[row.state] ?? 'bg-muted text-muted-foreground'} ${device === row.id ? 'outline-primary outline-[1.5px] outline-offset-1' : ''}`, title: `${bp.name} — ${row.lines} line${row.lines === 1 ? '' : 's'}${row.diff > 0 ? ` (published: ${row.was}) — wrapping changed` : ''}. Click to proof.`, children: [_jsx("span", { "aria-hidden": true, children: bp.abbr }), _jsxs("span", { className: "sr-only", children: [bp.name, ": ", row.lines, " line", row.lines === 1 ? '' : 's', row.diff > 0 ? `, was ${row.was} when published` : '', " \u2014 proof here"] })] }, row.id));
|
|
40
|
-
}) }))] }), worst && (_jsxs("div", { className: "bg-
|
|
40
|
+
}) }))] }), worst && (_jsxs("div", { className: "bg-warn-l border-warning/30 mt-1.5 grid grid-cols-[auto_1fr] gap-x-2.5 gap-y-1 rounded-lg border p-2.5", children: [_jsx(AlertTriangle, { size: 14, className: "text-warning mt-px shrink-0", "aria-hidden": true }), _jsxs("p", { className: "text-[11.5px] leading-normal", children: ["Wrapping changed on ", _jsx("b", { className: "text-warning font-bold", children: scope }), " \u2014", ' ', getBreakpoint(worst.id).name, " now runs ", worst.lines, " lines instead of ", worst.was, ". Proof it before publishing."] }), _jsxs("button", { type: "button", onClick: () => onProof(worst.id), className: "border-warning text-warning hover:bg-warn-l col-start-2 mt-0.5 justify-self-start rounded-md border px-2.5 py-1 text-[11px] font-semibold whitespace-nowrap transition-colors", children: ["Proof on ", getBreakpoint(worst.id).name] })] }))] }));
|
|
41
41
|
}
|
|
42
42
|
//# sourceMappingURL=ReflowMeter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReflowMeter.js","sourceRoot":"","sources":["../../src/components/ReflowMeter.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,aAAa,EAAqB,MAAM,uBAAuB,CAAA;AAarF,MAAM,QAAQ,GAA2B;IACvC,IAAI,EAAE,4BAA4B;IAClC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"ReflowMeter.js","sourceRoot":"","sources":["../../src/components/ReflowMeter.tsx"],"names":[],"mappings":"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"}
|
|
@@ -318,7 +318,7 @@ function ScoreRing({ score }) {
|
|
|
318
318
|
const radius = 28;
|
|
319
319
|
const circumference = 2 * Math.PI * radius;
|
|
320
320
|
const offset = circumference - (score / 100) * circumference;
|
|
321
|
-
const color = score >= 70 ? '
|
|
321
|
+
const color = score >= 70 ? 'var(--suc)' : score >= 40 ? 'var(--warn)' : 'var(--err)';
|
|
322
322
|
return (_jsxs("div", { className: "relative inline-flex items-center justify-center", children: [_jsxs("svg", { width: "72", height: "72", className: "-rotate-90", children: [_jsx("circle", { cx: "36", cy: "36", r: radius, fill: "none", stroke: "var(--border)", strokeWidth: "5" }), _jsx("circle", { cx: "36", cy: "36", r: radius, fill: "none", stroke: color, strokeWidth: "5", strokeDasharray: circumference, strokeDashoffset: offset, strokeLinecap: "round", className: "transition-all duration-500" })] }), _jsx("span", { className: "absolute text-sm font-medium", style: { color }, children: score })] }));
|
|
323
323
|
}
|
|
324
324
|
function Section({ id, title, icon, expanded, onToggle, children, badge, }) {
|
|
@@ -370,6 +370,6 @@ export function SEOPanel({ title, slug, content = '', seoData, onChange, siteUrl
|
|
|
370
370
|
const policy = value;
|
|
371
371
|
update({ robotsPolicy: policy, ...robotsPolicyToBooleans(policy) });
|
|
372
372
|
}, children: [_jsxs(Select.Trigger, { "aria-labelledby": "robots-policy-label", className: "border-border bg-background text-foreground focus:ring-primary flex w-full items-center justify-between rounded-lg border px-3 py-1.5 text-sm focus:ring-2 focus:outline-none", children: [_jsx(Select.Value, {}), _jsx(Select.Icon, { children: _jsx(ChevronDown, { className: "text-muted-foreground h-4 w-4" }) })] }), _jsx(Select.Portal, { container: adminPortalContainer(), children: _jsx(Select.Content, { className: "border-border bg-card z-50 overflow-hidden rounded-lg border shadow-md", children: _jsx(Select.Viewport, { className: "p-1", children: ROBOTS_POLICY_OPTIONS.map((option) => (_jsxs(Select.Item, { value: option.value, className: "text-foreground hover:bg-muted focus:bg-muted relative flex cursor-pointer items-center rounded-md py-1.5 pr-3 pl-8 text-sm outline-none select-none", children: [_jsx(Select.ItemIndicator, { className: "absolute left-2 inline-flex items-center", children: _jsx(Check, { className: "h-4 w-4" }) }), _jsx(Select.ItemText, { children: option.label })] }, option.value))) }) }) })] }), _jsx("p", { className: "text-muted-foreground mt-1 text-xs", children: "Use inheritance for most pages. Override only when a page needs different index/follow behavior." })] }) }) }), _jsx(Section, { id: "preview", title: "Search Preview", icon: _jsx(Globe, { className: "h-4 w-4" }), expanded: expandedSections.includes('preview'), onToggle: toggleSection, children: _jsxs("div", { className: "rounded-lg border border-[var(--border)] bg-[var(--background)] p-3", children: [_jsx("div", { className: "text-primary line-clamp-1 cursor-pointer text-sm hover:underline", children: metaTitle || title || 'Page Title' }), _jsxs("div", { className: "text-success mt-1 truncate text-xs", children: [siteUrl, "/", slug] }), _jsx("div", { className: "mt-1 line-clamp-2 text-sm text-[var(--muted-foreground)]", children: metaDesc ||
|
|
373
|
-
'Add a meta description to see how this page will appear in search results.' })] }) }), _jsx(Section, { id: "social", title: "Social Media", icon: _jsx(Share2, { className: "h-4 w-4" }), expanded: expandedSections.includes('social'), onToggle: toggleSection, children: _jsxs("div", { className: "space-y-3", children: [_jsx(InputField, { label: "OG Title", value: seoData.ogTitle ?? '', onChange: (v) => update({ ogTitle: v }), placeholder: metaTitle || title || 'Leave blank to use meta title' }), _jsx(TextareaField, { label: "OG Description", value: seoData.ogDescription ?? '', onChange: (v) => update({ ogDescription: v }), rows: 2, placeholder: metaDesc || 'Leave blank to use meta description' }), _jsx(InputField, { label: "OG Image URL", value: seoData.ogImage ?? '', onChange: (v) => update({ ogImage: v }), placeholder: "https://example.com/og-image.jpg", type: "url" }), _jsxs("div", { className: "mt-3 border-t border-[var(--border)] pt-3", children: [_jsx("p", { className: "mb-2 text-xs font-medium text-[var(--muted-foreground)]", children: "Twitter / X Overrides" }), _jsxs("div", { className: "space-y-3", children: [_jsx(InputField, { label: "Twitter Title", value: seoData.twitterTitle ?? '', onChange: (v) => update({ twitterTitle: v }), placeholder: "Leave blank to use OG title" }), _jsx(TextareaField, { label: "Twitter Description", value: seoData.twitterDescription ?? '', onChange: (v) => update({ twitterDescription: v }), rows: 2, placeholder: "Leave blank to use OG description" }), _jsx(InputField, { label: "Twitter Image URL", value: seoData.twitterImage ?? '', onChange: (v) => update({ twitterImage: v }), placeholder: "Leave blank to use OG image", type: "url" })] })] }), _jsxs("div", { className: "mt-3", children: [_jsx("p", { className: "mb-2 text-xs font-medium text-[var(--muted-foreground)]", children: "Social Preview" }), _jsxs("div", { className: "bg-muted overflow-hidden rounded-lg border border-[var(--border)]", children: [seoData.ogImage ? (_jsx("div", { className: "bg-muted flex aspect-video items-center justify-center overflow-hidden", children: _jsx("img", { src: seoData.ogImage, alt: "OG preview", className: "h-full w-full object-cover" }) })) : (_jsx("div", { className: "bg-muted flex aspect-video items-center justify-center text-sm text-[var(--muted-foreground)]", children: "No OG image set" })), _jsxs("div", { className: "p-3", children: [_jsx("div", { className: "line-clamp-1 text-sm font-medium text-[var(--foreground)]", children: displayTitle }), _jsx("div", { className: "mt-1 line-clamp-2 text-xs text-[var(--muted-foreground)]", children: displayDesc.slice(0, 100) }), _jsx("div", { className: "mt-1 truncate text-xs text-[var(--muted-foreground)]", children: siteUrl })] })] })] })] }) }), _jsx(Section, { id: "advanced", title: "Advanced", icon: _jsx(Settings2, { className: "h-4 w-4" }), expanded: expandedSections.includes('advanced'), onToggle: toggleSection, children: _jsxs("div", { className: "space-y-4", children: [_jsx(ToggleSwitch, { label: "Cornerstone Content", description: "Mark as cornerstone \u2014 your most important, comprehensive articles", checked: seoData.isCornerstone ?? false, onChange: (v) => update({ isCornerstone: v }) }), seoData.isCornerstone && (_jsxs("div", { className: "text-warning bg-
|
|
373
|
+
'Add a meta description to see how this page will appear in search results.' })] }) }), _jsx(Section, { id: "social", title: "Social Media", icon: _jsx(Share2, { className: "h-4 w-4" }), expanded: expandedSections.includes('social'), onToggle: toggleSection, children: _jsxs("div", { className: "space-y-3", children: [_jsx(InputField, { label: "OG Title", value: seoData.ogTitle ?? '', onChange: (v) => update({ ogTitle: v }), placeholder: metaTitle || title || 'Leave blank to use meta title' }), _jsx(TextareaField, { label: "OG Description", value: seoData.ogDescription ?? '', onChange: (v) => update({ ogDescription: v }), rows: 2, placeholder: metaDesc || 'Leave blank to use meta description' }), _jsx(InputField, { label: "OG Image URL", value: seoData.ogImage ?? '', onChange: (v) => update({ ogImage: v }), placeholder: "https://example.com/og-image.jpg", type: "url" }), _jsxs("div", { className: "mt-3 border-t border-[var(--border)] pt-3", children: [_jsx("p", { className: "mb-2 text-xs font-medium text-[var(--muted-foreground)]", children: "Twitter / X Overrides" }), _jsxs("div", { className: "space-y-3", children: [_jsx(InputField, { label: "Twitter Title", value: seoData.twitterTitle ?? '', onChange: (v) => update({ twitterTitle: v }), placeholder: "Leave blank to use OG title" }), _jsx(TextareaField, { label: "Twitter Description", value: seoData.twitterDescription ?? '', onChange: (v) => update({ twitterDescription: v }), rows: 2, placeholder: "Leave blank to use OG description" }), _jsx(InputField, { label: "Twitter Image URL", value: seoData.twitterImage ?? '', onChange: (v) => update({ twitterImage: v }), placeholder: "Leave blank to use OG image", type: "url" })] })] }), _jsxs("div", { className: "mt-3", children: [_jsx("p", { className: "mb-2 text-xs font-medium text-[var(--muted-foreground)]", children: "Social Preview" }), _jsxs("div", { className: "bg-muted overflow-hidden rounded-lg border border-[var(--border)]", children: [seoData.ogImage ? (_jsx("div", { className: "bg-muted flex aspect-video items-center justify-center overflow-hidden", children: _jsx("img", { src: seoData.ogImage, alt: "OG preview", className: "h-full w-full object-cover" }) })) : (_jsx("div", { className: "bg-muted flex aspect-video items-center justify-center text-sm text-[var(--muted-foreground)]", children: "No OG image set" })), _jsxs("div", { className: "p-3", children: [_jsx("div", { className: "line-clamp-1 text-sm font-medium text-[var(--foreground)]", children: displayTitle }), _jsx("div", { className: "mt-1 line-clamp-2 text-xs text-[var(--muted-foreground)]", children: displayDesc.slice(0, 100) }), _jsx("div", { className: "mt-1 truncate text-xs text-[var(--muted-foreground)]", children: siteUrl })] })] })] })] }) }), _jsx(Section, { id: "advanced", title: "Advanced", icon: _jsx(Settings2, { className: "h-4 w-4" }), expanded: expandedSections.includes('advanced'), onToggle: toggleSection, children: _jsxs("div", { className: "space-y-4", children: [_jsx(ToggleSwitch, { label: "Cornerstone Content", description: "Mark as cornerstone \u2014 your most important, comprehensive articles", checked: seoData.isCornerstone ?? false, onChange: (v) => update({ isCornerstone: v }) }), seoData.isCornerstone && (_jsxs("div", { className: "text-warning bg-warn-l flex items-center gap-1.5 rounded-md px-2.5 py-1.5 text-xs", children: [_jsx(Star, { className: "h-3.5 w-3.5" }), "Cornerstone content is held to stricter SEO standards"] })), _jsxs("div", { children: [_jsx("label", { className: "mb-1 block text-xs font-medium text-[var(--muted-foreground)]", children: "Schema Type" }), _jsx("select", { value: seoData.schemaType ?? 'Article', onChange: (e) => update({ schemaType: e.target.value }), className: "w-full rounded-lg border border-[var(--border)] bg-[var(--background)] px-3 py-1.5 text-sm text-[var(--foreground)] focus:ring-2 focus:ring-[var(--primary)] focus:outline-none", children: SCHEMA_TYPES.map((t) => (_jsx("option", { value: t, children: t }, t))) })] })] }) })] })] }));
|
|
374
374
|
}
|
|
375
375
|
//# sourceMappingURL=SEOPanel.js.map
|