@xemahq/ui-kernel 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -20
- package/dist/index.js.map +1 -1
- package/dist/lib/biome-host/agent-validation.js +5 -9
- package/dist/lib/biome-host/agent-validation.js.map +1 -1
- package/dist/lib/biome-host/biome-builders.js +5 -9
- package/dist/lib/biome-host/biome-builders.js.map +1 -1
- package/dist/lib/biome-host/biome-mode.js +1 -2
- package/dist/lib/biome-host/biome-navigation.js +6 -10
- package/dist/lib/biome-host/biome-navigation.js.map +1 -1
- package/dist/lib/biome-host/biome-registry.js +13 -20
- package/dist/lib/biome-host/biome-registry.js.map +1 -1
- package/dist/lib/biome-host/biome-scope.js +9 -14
- package/dist/lib/biome-host/biome-scope.js.map +1 -1
- package/dist/lib/biome-host/biome-scoped-query.js +8 -13
- package/dist/lib/biome-host/biome-scoped-query.js.map +1 -1
- package/dist/lib/biome-host/create-biome-orval-config.js +1 -4
- package/dist/lib/biome-host/create-biome-orval-config.js.map +1 -1
- package/dist/lib/biome-host/define-web-biome.js +3 -6
- package/dist/lib/biome-host/define-web-biome.js.map +1 -1
- package/dist/lib/biome-host/errors.js +1 -4
- package/dist/lib/biome-host/errors.js.map +1 -1
- package/dist/lib/biome-host/frontend-biome.d.ts +6 -3
- package/dist/lib/biome-host/frontend-biome.d.ts.map +1 -1
- package/dist/lib/biome-host/frontend-biome.js +8 -2
- package/dist/lib/biome-host/frontend-biome.js.map +1 -1
- package/dist/lib/biome-host/host-bridge.js +5 -9
- package/dist/lib/biome-host/host-bridge.js.map +1 -1
- package/dist/lib/biome-host/host-sources.js +1 -2
- package/dist/lib/biome-host/i18n-hooks.js +5 -9
- package/dist/lib/biome-host/i18n-hooks.js.map +1 -1
- package/dist/lib/biome-host/i18n-port.js +1 -4
- package/dist/lib/biome-host/i18n-port.js.map +1 -1
- package/dist/lib/biome-host/index.js +22 -38
- package/dist/lib/biome-host/index.js.map +1 -1
- package/dist/lib/biome-host/realtime-hooks.js +7 -12
- package/dist/lib/biome-host/realtime-hooks.js.map +1 -1
- package/dist/lib/biome-host/realtime-port.js +1 -2
- package/dist/lib/biome-host/response-envelope.js +2 -6
- package/dist/lib/biome-host/response-envelope.js.map +1 -1
- package/dist/lib/biome-host/session-contributions.js +1 -2
- package/dist/lib/biome-host/session-profiles.js +7 -11
- package/dist/lib/biome-host/session-profiles.js.map +1 -1
- package/dist/lib/biome-host/use-mutation-with-error-toast.js +7 -10
- package/dist/lib/biome-host/use-mutation-with-error-toast.js.map +1 -1
- package/dist/lib/biome-host/use-page-state.js +16 -21
- package/dist/lib/biome-host/use-page-state.js.map +1 -1
- package/dist/lib/capabilities/capability-provider.js +11 -15
- package/dist/lib/capabilities/capability-provider.js.map +1 -1
- package/dist/lib/capabilities/index.js +3 -19
- package/dist/lib/capabilities/index.js.map +1 -1
- package/dist/lib/capabilities/types.js +1 -2
- package/dist/lib/capabilities/use-capability.js +5 -9
- package/dist/lib/capabilities/use-capability.js.map +1 -1
- package/dist/lib/system-bus/capability-invoke.js +1 -2
- package/dist/lib/system-bus/deeplink.js +12 -17
- package/dist/lib/system-bus/deeplink.js.map +1 -1
- package/dist/lib/system-bus/enums.js +10 -13
- package/dist/lib/system-bus/enums.js.map +1 -1
- package/dist/lib/system-bus/host-ports.js +1 -2
- package/dist/lib/system-bus/index.js +10 -26
- package/dist/lib/system-bus/index.js.map +1 -1
- package/dist/lib/system-bus/intent-registry.js +6 -10
- package/dist/lib/system-bus/intent-registry.js.map +1 -1
- package/dist/lib/system-bus/intents.js +1 -2
- package/dist/lib/system-bus/palette.js +1 -2
- package/dist/lib/system-bus/system-bus-builder.js +10 -13
- package/dist/lib/system-bus/system-bus-builder.js.map +1 -1
- package/dist/lib/system-bus/system-bus.js +1 -2
- package/dist/lib/system-bus/windows.js +1 -2
- package/dist/offline/id.d.ts +2 -0
- package/dist/offline/id.d.ts.map +1 -0
- package/dist/offline/id.js +12 -0
- package/dist/offline/id.js.map +1 -0
- package/dist/offline/index.d.ts +9 -0
- package/dist/offline/index.d.ts.map +1 -0
- package/dist/offline/index.js +9 -0
- package/dist/offline/index.js.map +1 -0
- package/dist/offline/mutation.d.ts +15 -0
- package/dist/offline/mutation.d.ts.map +1 -0
- package/dist/offline/mutation.js +34 -0
- package/dist/offline/mutation.js.map +1 -0
- package/dist/offline/offline-status-badge.d.ts +7 -0
- package/dist/offline/offline-status-badge.d.ts.map +1 -0
- package/dist/offline/offline-status-badge.js +18 -0
- package/dist/offline/offline-status-badge.js.map +1 -0
- package/dist/offline/online-controller.d.ts +18 -0
- package/dist/offline/online-controller.d.ts.map +1 -0
- package/dist/offline/online-controller.js +74 -0
- package/dist/offline/online-controller.js.map +1 -0
- package/dist/offline/outbox.d.ts +57 -0
- package/dist/offline/outbox.d.ts.map +1 -0
- package/dist/offline/outbox.js +253 -0
- package/dist/offline/outbox.js.map +1 -0
- package/dist/offline/react.d.ts +13 -0
- package/dist/offline/react.d.ts.map +1 -0
- package/dist/offline/react.js +36 -0
- package/dist/offline/react.js.map +1 -0
- package/dist/offline/storage.d.ts +22 -0
- package/dist/offline/storage.d.ts.map +1 -0
- package/dist/offline/storage.js +84 -0
- package/dist/offline/storage.js.map +1 -0
- package/dist/offline/types.d.ts +38 -0
- package/dist/offline/types.d.ts.map +1 -0
- package/dist/offline/types.js +8 -0
- package/dist/offline/types.js.map +1 -0
- package/dist/org-db/components/DbResultTable.js +7 -10
- package/dist/org-db/components/DbResultTable.js.map +1 -1
- package/dist/org-db/index.js +1 -5
- package/dist/org-db/index.js.map +1 -1
- package/dist/pdf/index.d.ts +2 -0
- package/dist/pdf/index.d.ts.map +1 -0
- package/dist/pdf/index.js +2 -0
- package/dist/pdf/index.js.map +1 -0
- package/dist/registry/index.js +8 -24
- package/dist/registry/index.js.map +1 -1
- package/dist/registry/lib/agent-validation-host.js +5 -8
- package/dist/registry/lib/agent-validation-host.js.map +1 -1
- package/dist/registry/lib/biome-slot.js +9 -12
- package/dist/registry/lib/biome-slot.js.map +1 -1
- package/dist/registry/lib/biomes-enabled-context.js +5 -9
- package/dist/registry/lib/biomes-enabled-context.js.map +1 -1
- package/dist/registry/lib/extension-points.js +1 -4
- package/dist/registry/lib/extension-points.js.map +1 -1
- package/dist/registry/lib/primitives/SessionEventCard.js +7 -10
- package/dist/registry/lib/primitives/SessionEventCard.js.map +1 -1
- package/dist/registry/lib/primitives/SessionEventTimeline.js +9 -12
- package/dist/registry/lib/primitives/SessionEventTimeline.js.map +1 -1
- package/dist/registry/lib/primitives/SessionMutationBar.js +3 -6
- package/dist/registry/lib/primitives/SessionMutationBar.js.map +1 -1
- package/dist/registry/lib/primitives/SessionTabbedDrawer.js +11 -14
- package/dist/registry/lib/primitives/SessionTabbedDrawer.js.map +1 -1
- package/dist/registry/lib/primitives/index.js +4 -20
- package/dist/registry/lib/primitives/index.js.map +1 -1
- package/dist/registry/lib/session-context-builder.js +6 -10
- package/dist/registry/lib/session-context-builder.js.map +1 -1
- package/dist/registry/lib/session-context-provider.js +9 -14
- package/dist/registry/lib/session-context-provider.js.map +1 -1
- package/dist/registry/lib/session-selectors.js +30 -39
- package/dist/registry/lib/session-selectors.js.map +1 -1
- package/dist/session/comments/CommentRail.js +6 -9
- package/dist/session/comments/CommentRail.js.map +1 -1
- package/dist/session/index.js +3 -9
- package/dist/session/index.js.map +1 -1
- package/dist/session/lib/cn.js +4 -7
- package/dist/session/lib/cn.js.map +1 -1
- package/dist/session/shell/SessionWorkspaceShell.js +5 -8
- package/dist/session/shell/SessionWorkspaceShell.js.map +1 -1
- package/dist/session-kit/approvals/ApprovalButton.js +3 -6
- package/dist/session-kit/approvals/ApprovalButton.js.map +1 -1
- package/dist/session-kit/approvals/ApprovalCard.js +30 -33
- package/dist/session-kit/approvals/ApprovalCard.js.map +1 -1
- package/dist/session-kit/approvals/ApprovalsCenter.js +29 -32
- package/dist/session-kit/approvals/ApprovalsCenter.js.map +1 -1
- package/dist/session-kit/approvals/CapabilityApprovalStickyBar.js +12 -15
- package/dist/session-kit/approvals/CapabilityApprovalStickyBar.js.map +1 -1
- package/dist/session-kit/approvals/Obligation.js +12 -16
- package/dist/session-kit/approvals/Obligation.js.map +1 -1
- package/dist/session-kit/approvals/ScopedBody.js +34 -37
- package/dist/session-kit/approvals/ScopedBody.js.map +1 -1
- package/dist/session-kit/approvals/approval-icons.js +1 -2
- package/dist/session-kit/approvals/approval-model.js +6 -11
- package/dist/session-kit/approvals/approval-model.js.map +1 -1
- package/dist/session-kit/approvals/index.js +11 -27
- package/dist/session-kit/approvals/index.js.map +1 -1
- package/dist/session-kit/approvals/obligation-display.js +13 -16
- package/dist/session-kit/approvals/obligation-display.js.map +1 -1
- package/dist/session-kit/approvals/risk-accent.js +6 -9
- package/dist/session-kit/approvals/risk-accent.js.map +1 -1
- package/dist/session-kit/approvals/scope-icons.js +2 -5
- package/dist/session-kit/approvals/scope-icons.js.map +1 -1
- package/dist/session-kit/combobox/Combobox.js +19 -22
- package/dist/session-kit/combobox/Combobox.js.map +1 -1
- package/dist/session-kit/combobox/use-click-outside.js +4 -7
- package/dist/session-kit/combobox/use-click-outside.js.map +1 -1
- package/dist/session-kit/display/ContextHeader.js +10 -13
- package/dist/session-kit/display/ContextHeader.js.map +1 -1
- package/dist/session-kit/display/FileDiffCard.js +11 -14
- package/dist/session-kit/display/FileDiffCard.js.map +1 -1
- package/dist/session-kit/display/MD.js +14 -17
- package/dist/session-kit/display/MD.js.map +1 -1
- package/dist/session-kit/display/MessageTurn.js +20 -23
- package/dist/session-kit/display/MessageTurn.js.map +1 -1
- package/dist/session-kit/display/ThinkingPanel.js +7 -10
- package/dist/session-kit/display/ThinkingPanel.js.map +1 -1
- package/dist/session-kit/display/TodoChecklist.js +13 -16
- package/dist/session-kit/display/TodoChecklist.js.map +1 -1
- package/dist/session-kit/display/TokenMeter.js +8 -11
- package/dist/session-kit/display/TokenMeter.js.map +1 -1
- package/dist/session-kit/display/ToolStrip.js +26 -30
- package/dist/session-kit/display/ToolStrip.js.map +1 -1
- package/dist/session-kit/display/TypingDots.js +3 -6
- package/dist/session-kit/display/TypingDots.js.map +1 -1
- package/dist/session-kit/index.js +20 -36
- package/dist/session-kit/index.js.map +1 -1
- package/dist/session-kit/lib/enums.js +14 -17
- package/dist/session-kit/lib/enums.js.map +1 -1
- package/dist/session-kit/lib/portal-accent.js +1 -4
- package/dist/session-kit/lib/portal-accent.js.map +1 -1
- package/dist/session-kit/lib/status-dot.js +19 -24
- package/dist/session-kit/lib/status-dot.js.map +1 -1
- package/dist/session-kit/primitives/Avatar.js +3 -6
- package/dist/session-kit/primitives/Avatar.js.map +1 -1
- package/dist/session-kit/primitives/PortalGlyph.js +8 -11
- package/dist/session-kit/primitives/PortalGlyph.js.map +1 -1
- package/dist/session-kit/primitives/RiskPill.js +10 -14
- package/dist/session-kit/primitives/RiskPill.js.map +1 -1
- package/dist/session-kit/primitives/ScopeDot.js +7 -10
- package/dist/session-kit/primitives/ScopeDot.js.map +1 -1
- package/dist/session-kit/primitives/Segmented.js +4 -7
- package/dist/session-kit/primitives/Segmented.js.map +1 -1
- package/dist/ui/branding/app-branding-provider.d.ts +1 -1
- package/dist/ui/branding/app-branding-provider.d.ts.map +1 -1
- package/dist/ui/branding/app-branding-provider.js +13 -51
- package/dist/ui/branding/app-branding-provider.js.map +1 -1
- package/dist/ui/branding/sanitize.js +3 -8
- package/dist/ui/branding/sanitize.js.map +1 -1
- package/dist/ui/breakpoints.js +1 -4
- package/dist/ui/breakpoints.js.map +1 -1
- package/dist/ui/capture/document-preview.js +16 -19
- package/dist/ui/capture/document-preview.js.map +1 -1
- package/dist/ui/capture/field-spec-to-zod.d.ts.map +1 -1
- package/dist/ui/capture/field-spec-to-zod.js +33 -29
- package/dist/ui/capture/field-spec-to-zod.js.map +1 -1
- package/dist/ui/capture/field-spec.d.ts +6 -1
- package/dist/ui/capture/field-spec.d.ts.map +1 -1
- package/dist/ui/capture/field-spec.js +9 -13
- package/dist/ui/capture/field-spec.js.map +1 -1
- package/dist/ui/capture/index.js +10 -30
- package/dist/ui/capture/index.js.map +1 -1
- package/dist/ui/capture/schema-field-input.d.ts.map +1 -1
- package/dist/ui/capture/schema-field-input.js +100 -40
- package/dist/ui/capture/schema-field-input.js.map +1 -1
- package/dist/ui/capture/schema-form.js +11 -14
- package/dist/ui/capture/schema-form.js.map +1 -1
- package/dist/ui/capture/use-prefill.js +13 -16
- package/dist/ui/capture/use-prefill.js.map +1 -1
- package/dist/ui/capture/use-schema-validation.js +13 -16
- package/dist/ui/capture/use-schema-validation.js.map +1 -1
- package/dist/ui/capture/use-wizard.js +15 -18
- package/dist/ui/capture/use-wizard.js.map +1 -1
- package/dist/ui/capture/value-format.js +4 -8
- package/dist/ui/capture/value-format.js.map +1 -1
- package/dist/ui/capture/wizard.js +10 -14
- package/dist/ui/capture/wizard.js.map +1 -1
- package/dist/ui/charts/bar-chart.js +14 -17
- package/dist/ui/charts/bar-chart.js.map +1 -1
- package/dist/ui/charts/chart-frame.js +11 -16
- package/dist/ui/charts/chart-frame.js.map +1 -1
- package/dist/ui/charts/chart-types.js +1 -2
- package/dist/ui/charts/chart-utils.js +7 -15
- package/dist/ui/charts/chart-utils.js.map +1 -1
- package/dist/ui/charts/donut-chart.js +11 -14
- package/dist/ui/charts/donut-chart.js.map +1 -1
- package/dist/ui/charts/index.js +6 -20
- package/dist/ui/charts/index.js.map +1 -1
- package/dist/ui/charts/line-chart.js +15 -18
- package/dist/ui/charts/line-chart.js.map +1 -1
- package/dist/ui/charts/sparkline.js +9 -12
- package/dist/ui/charts/sparkline.js.map +1 -1
- package/dist/ui/chrome/AsyncBoundary.js +9 -15
- package/dist/ui/chrome/AsyncBoundary.js.map +1 -1
- package/dist/ui/chrome/EmptyState.js +9 -12
- package/dist/ui/chrome/EmptyState.js.map +1 -1
- package/dist/ui/chrome/ErrorCard.js +8 -11
- package/dist/ui/chrome/ErrorCard.js.map +1 -1
- package/dist/ui/chrome/LoadingState.js +8 -11
- package/dist/ui/chrome/LoadingState.js.map +1 -1
- package/dist/ui/chrome/PageHeader.js +10 -14
- package/dist/ui/chrome/PageHeader.js.map +1 -1
- package/dist/ui/chrome/StateCard.js +7 -11
- package/dist/ui/chrome/StateCard.js.map +1 -1
- package/dist/ui/chrome/confirm-delete-dialog.js +5 -8
- package/dist/ui/chrome/confirm-delete-dialog.js.map +1 -1
- package/dist/ui/chrome/page-shell.js +9 -15
- package/dist/ui/chrome/page-shell.js.map +1 -1
- package/dist/ui/chrome/scope-badge.js +5 -8
- package/dist/ui/chrome/scope-badge.js.map +1 -1
- package/dist/ui/chrome/status-badge.js +7 -10
- package/dist/ui/chrome/status-badge.js.map +1 -1
- package/dist/ui/cn.js +5 -8
- package/dist/ui/cn.js.map +1 -1
- package/dist/ui/design-tokens.js +21 -28
- package/dist/ui/design-tokens.js.map +1 -1
- package/dist/ui/hooks/use-debounced-value.js +4 -7
- package/dist/ui/hooks/use-debounced-value.js.map +1 -1
- package/dist/ui/hooks/use-is-mobile.js +8 -11
- package/dist/ui/hooks/use-is-mobile.js.map +1 -1
- package/dist/ui/index.d.ts +0 -1
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +46 -87
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/pdf/pdf-preview.js +17 -20
- package/dist/ui/pdf/pdf-preview.js.map +1 -1
- package/dist/ui/primitives/alert-dialog.js +14 -60
- package/dist/ui/primitives/alert-dialog.js.map +1 -1
- package/dist/ui/primitives/async-combobox.js +18 -21
- package/dist/ui/primitives/async-combobox.js.map +1 -1
- package/dist/ui/primitives/badge.js +7 -44
- package/dist/ui/primitives/badge.js.map +1 -1
- package/dist/ui/primitives/button.js +9 -46
- package/dist/ui/primitives/button.js.map +1 -1
- package/dist/ui/primitives/card.js +10 -51
- package/dist/ui/primitives/card.js.map +1 -1
- package/dist/ui/primitives/checkbox.js +7 -43
- package/dist/ui/primitives/checkbox.js.map +1 -1
- package/dist/ui/primitives/collapsible.js +2 -40
- package/dist/ui/primitives/collapsible.js.map +1 -1
- package/dist/ui/primitives/dialog.js +12 -57
- package/dist/ui/primitives/dialog.js.map +1 -1
- package/dist/ui/primitives/dropdown-menu.js +15 -65
- package/dist/ui/primitives/dropdown-menu.js.map +1 -1
- package/dist/ui/primitives/form-stepper.js +8 -12
- package/dist/ui/primitives/form-stepper.js.map +1 -1
- package/dist/ui/primitives/input.js +5 -41
- package/dist/ui/primitives/input.js.map +1 -1
- package/dist/ui/primitives/label.js +8 -44
- package/dist/ui/primitives/label.js.map +1 -1
- package/dist/ui/primitives/overflow-tabs.js +18 -21
- package/dist/ui/primitives/overflow-tabs.js.map +1 -1
- package/dist/ui/primitives/popover.js +6 -44
- package/dist/ui/primitives/popover.js.map +1 -1
- package/dist/ui/primitives/preview-device-frame.js +16 -19
- package/dist/ui/primitives/preview-device-frame.js.map +1 -1
- package/dist/ui/primitives/radio-group.js +8 -45
- package/dist/ui/primitives/radio-group.js.map +1 -1
- package/dist/ui/primitives/resizable.js +11 -16
- package/dist/ui/primitives/resizable.js.map +1 -1
- package/dist/ui/primitives/scroll-area.js +7 -44
- package/dist/ui/primitives/scroll-area.js.map +1 -1
- package/dist/ui/primitives/select.js +15 -60
- package/dist/ui/primitives/select.js.map +1 -1
- package/dist/ui/primitives/separator.js +6 -42
- package/dist/ui/primitives/separator.js.map +1 -1
- package/dist/ui/primitives/sheet.js +14 -59
- package/dist/ui/primitives/sheet.js.map +1 -1
- package/dist/ui/primitives/skeleton.js +5 -7
- package/dist/ui/primitives/skeleton.js.map +1 -1
- package/dist/ui/primitives/switch.js +6 -42
- package/dist/ui/primitives/switch.js.map +1 -1
- package/dist/ui/primitives/table.js +12 -55
- package/dist/ui/primitives/table.js.map +1 -1
- package/dist/ui/primitives/tabs.js +8 -47
- package/dist/ui/primitives/tabs.js.map +1 -1
- package/dist/ui/primitives/tag-multi-select.js +24 -27
- package/dist/ui/primitives/tag-multi-select.js.map +1 -1
- package/dist/ui/primitives/textarea.js +5 -41
- package/dist/ui/primitives/textarea.js.map +1 -1
- package/dist/ui/primitives/tooltip.js +6 -45
- package/dist/ui/primitives/tooltip.js.map +1 -1
- package/package.json +9 -2
- package/src/index.ts +4 -0
- package/src/lib/biome-host/define-web-biome.spec.ts +221 -0
- package/src/lib/biome-host/frontend-biome.ts +32 -5
- package/src/offline/id.ts +16 -0
- package/src/offline/index.ts +52 -0
- package/src/offline/mutation.ts +75 -0
- package/src/offline/offline-status-badge.tsx +51 -0
- package/src/offline/online-controller.ts +105 -0
- package/src/offline/outbox.test.ts +156 -0
- package/src/offline/outbox.ts +344 -0
- package/src/offline/react.tsx +71 -0
- package/src/offline/storage.ts +107 -0
- package/src/offline/types.ts +77 -0
- package/src/pdf/index.ts +11 -0
- package/src/ui/branding/app-branding-provider.tsx +1 -1
- package/src/ui/capture/field-spec-to-zod.test.ts +22 -0
- package/src/ui/capture/field-spec-to-zod.ts +12 -1
- package/src/ui/capture/field-spec.ts +24 -3
- package/src/ui/capture/schema-field-input.tsx +129 -1
- package/src/ui/index.ts +4 -1
- package/src/lib/biome-host/define-web-biome.test.js +0 -93
|
@@ -1,23 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
exports.default = AsyncBoundary;
|
|
7
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
-
const ErrorCard_1 = __importDefault(require("./ErrorCard"));
|
|
9
|
-
const EmptyState_1 = __importDefault(require("./EmptyState"));
|
|
10
|
-
const LoadingState_1 = __importDefault(require("./LoadingState"));
|
|
11
|
-
function AsyncBoundary({ isLoading, error, isEmpty, empty, onRetry, loadingVariant, formatError, children, }) {
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import ErrorCard from './ErrorCard';
|
|
3
|
+
import EmptyState from './EmptyState';
|
|
4
|
+
import LoadingState from './LoadingState';
|
|
5
|
+
export default function AsyncBoundary({ isLoading, error, isEmpty, empty, onRetry, loadingVariant, formatError, children, }) {
|
|
12
6
|
if (isLoading) {
|
|
13
|
-
return (
|
|
7
|
+
return _jsx(LoadingState, { variant: loadingVariant });
|
|
14
8
|
}
|
|
15
9
|
if (error) {
|
|
16
|
-
return (
|
|
10
|
+
return _jsx(ErrorCard, { error: error, onRetry: onRetry, formatError: formatError });
|
|
17
11
|
}
|
|
18
12
|
if (isEmpty && empty) {
|
|
19
|
-
return (
|
|
13
|
+
return _jsx(EmptyState, { icon: empty.icon, title: empty.title, description: empty.description });
|
|
20
14
|
}
|
|
21
|
-
return (
|
|
15
|
+
return _jsx(_Fragment, { children: children });
|
|
22
16
|
}
|
|
23
17
|
//# sourceMappingURL=AsyncBoundary.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AsyncBoundary.js","sourceRoot":"","sources":["../../../src/ui/chrome/AsyncBoundary.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AsyncBoundary.js","sourceRoot":"","sources":["../../../src/ui/chrome/AsyncBoundary.tsx"],"names":[],"mappings":";AAGA,OAAO,SAAyC,MAAM,aAAa,CAAC;AACpE,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,YAA0C,MAAM,gBAAgB,CAAC;AAqCxE,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,SAAS,EACT,KAAK,EACL,OAAO,EACP,KAAK,EACL,OAAO,EACP,cAAc,EACd,WAAW,EACX,QAAQ,GACqB;IAC7B,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,KAAC,YAAY,IAAC,OAAO,EAAE,cAAc,GAAI,CAAC;IACnD,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,KAAC,SAAS,IAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,GAAI,CAAC;IACjF,CAAC;IAED,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QACrB,OAAO,KAAC,UAAU,IAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,GAAI,CAAC;IAC9F,CAAC;IAED,OAAO,4BAAG,QAAQ,GAAI,CAAC;AACzB,CAAC"}
|
|
@@ -1,27 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const button_1 = require("../primitives/button");
|
|
7
|
-
const card_1 = require("../primitives/card");
|
|
8
|
-
const DefaultLink = ({ href, children }) => ((0, jsx_runtime_1.jsx)("a", { href: href, children: children }));
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../cn';
|
|
3
|
+
import { Button } from '../primitives/button';
|
|
4
|
+
import { Card, CardContent } from '../primitives/card';
|
|
5
|
+
const DefaultLink = ({ href, children }) => (_jsx("a", { href: href, children: children }));
|
|
9
6
|
const VARIANT_DEFAULTS = {
|
|
10
7
|
'not-configured': { iconBg: 'bg-info/10', iconColor: 'text-info' },
|
|
11
8
|
'no-results': { iconBg: 'bg-warning/10', iconColor: 'text-warning' },
|
|
12
9
|
'disabled-context': { iconBg: 'bg-muted', iconColor: 'text-ink-3' },
|
|
13
10
|
};
|
|
14
|
-
function EmptyState({ icon: Icon, title, description, illustration, variant = 'not-configured', size = 'comfortable', iconBg, iconColor, action, secondaryAction, linkComponent, className, }) {
|
|
11
|
+
export default function EmptyState({ icon: Icon, title, description, illustration, variant = 'not-configured', size = 'comfortable', iconBg, iconColor, action, secondaryAction, linkComponent, className, }) {
|
|
15
12
|
const Link = linkComponent ?? DefaultLink;
|
|
16
13
|
const defaults = VARIANT_DEFAULTS[variant];
|
|
17
14
|
const resolvedIconBg = iconBg ?? defaults.iconBg;
|
|
18
15
|
const resolvedIconColor = iconColor ?? defaults.iconColor;
|
|
19
16
|
if (size === 'inline') {
|
|
20
|
-
return ((
|
|
17
|
+
return (_jsx("div", { className: cn('flex items-center justify-center px-3 py-6 text-center text-body-2 text-ink-4', className), children: _jsxs("div", { className: "max-w-sm space-y-1", children: [_jsx("p", { className: "text-ink-3", children: title }), description && _jsx("p", { className: "text-ink-4", children: description }), (action || secondaryAction) && (_jsxs("div", { className: "mt-3 flex items-center justify-center gap-2", children: [action && (_jsxs(Button, { size: "sm", variant: "outline", onClick: action.onClick, className: "h-7 gap-1.5 text-body-2", children: [action.icon && _jsx(action.icon, { className: "h-3.5 w-3.5" }), action.label] })), secondaryAction && (_jsx(Button, { asChild: true, size: "sm", variant: "ghost", className: "h-7 px-2 text-body-2", children: _jsx(Link, { href: secondaryAction.href, children: secondaryAction.label }) }))] }))] }) }));
|
|
21
18
|
}
|
|
22
19
|
if (size === 'dense') {
|
|
23
|
-
return ((
|
|
20
|
+
return (_jsxs("div", { className: cn('flex flex-col items-center justify-center px-4 py-8 text-center', className), children: [illustration ?? (_jsx("div", { className: cn('h-9 w-9 rounded-xl flex items-center justify-center mb-3', resolvedIconBg), children: _jsx(Icon, { className: cn('h-4 w-4', resolvedIconColor) }) })), _jsx("p", { className: "text-body-1 font-semibold text-ink", children: title }), description && (_jsx("p", { className: "mt-1 max-w-md text-body-2 leading-snug text-ink-3", children: description })), (action || secondaryAction) && (_jsxs("div", { className: "mt-3 flex items-center gap-2", children: [action && (_jsxs(Button, { size: "sm", variant: "outline", onClick: action.onClick, className: "h-7 gap-1.5 text-body-2", children: [action.icon && _jsx(action.icon, { className: "h-3.5 w-3.5" }), action.label] })), secondaryAction && (_jsx(Button, { asChild: true, size: "sm", variant: "ghost", className: "h-7 px-2 text-body-2", children: _jsx(Link, { href: secondaryAction.href, children: secondaryAction.label }) }))] }))] }));
|
|
24
21
|
}
|
|
25
|
-
return ((
|
|
22
|
+
return (_jsx(Card, { className: cn('border-2 border-dashed border-border/50 rounded-xl', className), children: _jsxs(CardContent, { className: "flex flex-col items-center justify-center py-16 text-center", children: [illustration ?? (_jsx("div", { className: `h-16 w-16 rounded-2xl flex items-center justify-center mb-5 ${resolvedIconBg}`, children: _jsx(Icon, { className: `h-7 w-7 ${resolvedIconColor}` }) })), _jsx("p", { className: "text-subtitle font-semibold text-ink", children: title }), description && (_jsx("p", { className: "text-body-1 mt-2 max-w-sm text-ink-3 leading-relaxed", children: description })), (action || secondaryAction) && (_jsxs("div", { className: "mt-6 flex items-center gap-3", children: [action && (_jsxs(Button, { size: "sm", variant: "outline", onClick: action.onClick, className: "gap-2 h-10 px-5", children: [action.icon && _jsx(action.icon, { className: "h-4 w-4" }), action.label] })), secondaryAction && (_jsx(Button, { asChild: true, size: "sm", variant: "ghost", className: "h-10 px-3", children: _jsx(Link, { href: secondaryAction.href, children: secondaryAction.label }) }))] }))] }) }));
|
|
26
23
|
}
|
|
27
24
|
//# sourceMappingURL=EmptyState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmptyState.js","sourceRoot":"","sources":["../../../src/ui/chrome/EmptyState.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"EmptyState.js","sourceRoot":"","sources":["../../../src/ui/chrome/EmptyState.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
const card_1 = require("../primitives/card");
|
|
9
|
-
const defaultFormatError = (error, fallback) => (0, errors_1.getUserFacingErrorMessage)(error, fallback);
|
|
10
|
-
function ErrorCard({ error, title = 'Something went wrong', onRetry, formatError = defaultFormatError, fallbackMessage = 'Unable to load this content right now.', }) {
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { AlertCircle, RefreshCw } from 'lucide-react';
|
|
3
|
+
import { getUserFacingErrorMessage } from '../../lib/biome-host/errors';
|
|
4
|
+
import { Button } from '../primitives/button';
|
|
5
|
+
import { Card, CardContent } from '../primitives/card';
|
|
6
|
+
const defaultFormatError = (error, fallback) => getUserFacingErrorMessage(error, fallback);
|
|
7
|
+
export default function ErrorCard({ error, title = 'Something went wrong', onRetry, formatError = defaultFormatError, fallbackMessage = 'Unable to load this content right now.', }) {
|
|
11
8
|
const message = formatError(error, fallbackMessage);
|
|
12
|
-
return ((
|
|
9
|
+
return (_jsx(Card, { className: "border-destructive/25 bg-destructive/[0.03] rounded-xl", children: _jsxs(CardContent, { className: "flex flex-col items-center py-14 text-center", children: [_jsx("div", { className: "h-14 w-14 rounded-2xl bg-destructive/10 flex items-center justify-center mb-4", children: _jsx(AlertCircle, { className: "h-6 w-6 text-destructive" }) }), _jsx("p", { className: "text-subtitle font-semibold text-ink", children: title }), _jsx("p", { className: "text-body-1 text-ink-3 mt-2 max-w-md leading-relaxed", children: message }), onRetry && (_jsxs(Button, { size: "sm", variant: "outline", onClick: onRetry, className: "mt-5 gap-2 h-10 border-destructive/20 text-destructive hover:bg-destructive/5", children: [_jsx(RefreshCw, { className: "h-4 w-4" }), "Retry"] }))] }) }));
|
|
13
10
|
}
|
|
14
11
|
//# sourceMappingURL=ErrorCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorCard.js","sourceRoot":"","sources":["../../../src/ui/chrome/ErrorCard.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ErrorCard.js","sourceRoot":"","sources":["../../../src/ui/chrome/ErrorCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAWvD,MAAM,kBAAkB,GAA0B,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,CACpE,yBAAyB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAe7C,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,KAAK,EACL,KAAK,GAAG,sBAAsB,EAC9B,OAAO,EACP,WAAW,GAAG,kBAAkB,EAChC,eAAe,GAAG,wCAAwC,GAC3C;IACf,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IAEpD,OAAO,CACL,KAAC,IAAI,IAAC,SAAS,EAAC,wDAAwD,YACtE,MAAC,WAAW,IAAC,SAAS,EAAC,8CAA8C,aACnE,cAAK,SAAS,EAAC,+EAA+E,YAC5F,KAAC,WAAW,IAAC,SAAS,EAAC,0BAA0B,GAAG,GAChD,EACN,YAAG,SAAS,EAAC,sCAAsC,YAAE,KAAK,GAAK,EAC/D,YAAG,SAAS,EAAC,sDAAsD,YAAE,OAAO,GAAK,EAChF,OAAO,IAAI,CACV,MAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,OAAO,EAAC,SAAS,EACjB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,+EAA+E,aAEzF,KAAC,SAAS,IAAC,SAAS,EAAC,SAAS,GAAG,aAE1B,CACV,IACW,GACT,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -1,17 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const cn_1 = require("../cn");
|
|
7
|
-
const skeleton_1 = require("../primitives/skeleton");
|
|
8
|
-
function LoadingState({ variant = 'spinner', label = 'Loading…', rows = 4, className, }) {
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Loader2 } from 'lucide-react';
|
|
3
|
+
import { cn } from '../cn';
|
|
4
|
+
import { Skeleton } from '../primitives/skeleton';
|
|
5
|
+
export default function LoadingState({ variant = 'spinner', label = 'Loading…', rows = 4, className, }) {
|
|
9
6
|
if (variant === 'skeleton-list') {
|
|
10
|
-
return ((
|
|
7
|
+
return (_jsx("div", { className: cn('space-y-3', className), role: "status", "aria-label": label, children: Array.from({ length: rows }).map((_, i) => (_jsx(Skeleton, { className: "h-12 w-full rounded-xl" }, i))) }));
|
|
11
8
|
}
|
|
12
9
|
if (variant === 'skeleton-card') {
|
|
13
|
-
return ((
|
|
10
|
+
return (_jsxs("div", { className: cn('space-y-3', className), role: "status", "aria-label": label, children: [_jsx(Skeleton, { className: "h-40 w-full rounded-2xl" }), _jsx(Skeleton, { className: "h-4 w-2/3 rounded" }), _jsx(Skeleton, { className: "h-4 w-1/2 rounded" })] }));
|
|
14
11
|
}
|
|
15
|
-
return ((
|
|
12
|
+
return (_jsxs("div", { className: cn('flex flex-col items-center justify-center py-14 text-center', className), role: "status", "aria-label": label, children: [_jsx(Loader2, { className: "h-6 w-6 animate-spin text-ink-3" }), label && _jsx("p", { className: "mt-3 text-body-2 text-ink-3", children: label })] }));
|
|
16
13
|
}
|
|
17
14
|
//# sourceMappingURL=LoadingState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingState.js","sourceRoot":"","sources":["../../../src/ui/chrome/LoadingState.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LoadingState.js","sourceRoot":"","sources":["../../../src/ui/chrome/LoadingState.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAqBlD,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,OAAO,GAAG,SAAS,EACnB,KAAK,GAAG,UAAU,EAClB,IAAI,GAAG,CAAC,EACR,SAAS,GACmB;IAC5B,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;QAChC,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,EAAC,QAAQ,gBAAa,KAAK,YACxE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC1C,KAAC,QAAQ,IAAS,SAAS,EAAC,wBAAwB,IAArC,CAAC,CAAuC,CACxD,CAAC,GACE,CACP,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;QAChC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,EAAC,QAAQ,gBAAa,KAAK,aACzE,KAAC,QAAQ,IAAC,SAAS,EAAC,yBAAyB,GAAG,EAChD,KAAC,QAAQ,IAAC,SAAS,EAAC,mBAAmB,GAAG,EAC1C,KAAC,QAAQ,IAAC,SAAS,EAAC,mBAAmB,GAAG,IACtC,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,6DAA6D,EAAE,SAAS,CAAC,EACvF,IAAI,EAAC,QAAQ,gBACD,KAAK,aAEjB,KAAC,OAAO,IAAC,SAAS,EAAC,iCAAiC,GAAG,EACtD,KAAK,IAAI,YAAG,SAAS,EAAC,6BAA6B,YAAE,KAAK,GAAK,IAC5D,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
function PageHeader({ title, description, topbarDescription, eyebrow, helpActions, actions, backTo, }) {
|
|
10
|
-
const topbarActions = (0, react_1.useMemo)(() => actions, [actions]);
|
|
11
|
-
const topbarMeta = (0, react_1.useMemo)(() => (description ? (0, jsx_runtime_1.jsx)("span", { children: description }) : null), [description]);
|
|
12
|
-
(0, biome_host_1.useHostBridge)().pageMeta.usePageMeta({
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { useHostBridge } from '../../lib/biome-host';
|
|
4
|
+
import { cn } from '../cn';
|
|
5
|
+
export default function PageHeader({ title, description, topbarDescription, eyebrow, helpActions, actions, backTo, }) {
|
|
6
|
+
const topbarActions = useMemo(() => actions, [actions]);
|
|
7
|
+
const topbarMeta = useMemo(() => (description ? _jsx("span", { children: description }) : null), [description]);
|
|
8
|
+
useHostBridge().pageMeta.usePageMeta({
|
|
13
9
|
title,
|
|
14
10
|
eyebrow,
|
|
15
11
|
description: topbarDescription ?? description,
|
|
@@ -20,7 +16,7 @@ function PageHeader({ title, description, topbarDescription, eyebrow, helpAction
|
|
|
20
16
|
});
|
|
21
17
|
return null;
|
|
22
18
|
}
|
|
23
|
-
function PageToolbar({ children, trailing, className, }) {
|
|
24
|
-
return ((
|
|
19
|
+
export function PageToolbar({ children, trailing, className, }) {
|
|
20
|
+
return (_jsxs("div", { className: cn('flex shrink-0 items-center gap-2 border-b border-rule/50 bg-paper px-4 py-1.5 sm:px-6', className), children: [_jsx("div", { className: "flex min-w-0 flex-1 flex-wrap items-center gap-2", children: children }), trailing && _jsx("div", { className: "flex shrink-0 items-center gap-1.5", children: trailing })] }));
|
|
25
21
|
}
|
|
26
22
|
//# sourceMappingURL=PageHeader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PageHeader.js","sourceRoot":"","sources":["../../../src/ui/chrome/PageHeader.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PageHeader.js","sourceRoot":"","sources":["../../../src/ui/chrome/PageHeader.tsx"],"names":[],"mappings":";AAsBA,OAAO,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAuB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AA0C3B,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,KAAK,EACL,WAAW,EACX,iBAAiB,EACjB,OAAO,EACP,WAAW,EACX,OAAO,EACP,MAAM,GACoB;IAI1B,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,yBAAO,WAAW,GAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EACvD,CAAC,WAAW,CAAC,CACd,CAAC;IAKF,aAAa,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;QACnC,KAAK;QACL,OAAO;QACP,WAAW,EAAE,iBAAiB,IAAI,WAAW;QAC7C,OAAO,EAAE,WAAW;QACpB,aAAa;QACb,UAAU;QACV,MAAM;KACP,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAsBD,MAAM,UAAU,WAAW,CAAC,EAC1B,QAAQ,EACR,QAAQ,EACR,SAAS,GACkB;IAC3B,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,uFAAuF,EACvF,SAAS,CACV,aAED,cAAK,SAAS,EAAC,kDAAkD,YAAE,QAAQ,GAAO,EACjF,QAAQ,IAAI,cAAK,SAAS,EAAC,oCAAoC,YAAE,QAAQ,GAAO,IAC7E,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,17 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const cn_1 = require("../cn");
|
|
8
|
-
const StateCard = ({ variant, icon, title, description, action, errorDetails, className = '', }) => {
|
|
9
|
-
const [detailsExpanded, setDetailsExpanded] = (0, react_1.useState)(false);
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronDown, ChevronRight } from 'lucide-react';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { cn } from '../cn';
|
|
5
|
+
export const StateCard = ({ variant, icon, title, description, action, errorDetails, className = '', }) => {
|
|
6
|
+
const [detailsExpanded, setDetailsExpanded] = useState(false);
|
|
10
7
|
const isError = variant.startsWith('error');
|
|
11
8
|
const isDetailed = variant === 'error-detailed';
|
|
12
|
-
return ((
|
|
9
|
+
return (_jsxs("div", { className: cn('flex flex-col items-center justify-center py-14 px-6 rounded-xl border-2', isError ? 'border-destructive/20 bg-destructive/[0.03]' : 'border-dashed border-border/50 bg-paper-elev/60', className), children: [_jsx("div", { className: cn('h-14 w-14 rounded-2xl flex items-center justify-center mb-5', isError ? 'bg-destructive/10' : 'bg-primary/10'), children: _jsx("span", { className: isError ? 'text-destructive' : 'text-primary', children: icon }) }), _jsx("h2", { className: "text-subtitle font-semibold text-ink mb-2 text-center", children: title }), description && (_jsx("p", { className: "text-body-1 text-ink-3 max-w-md text-center mb-4 leading-relaxed", children: description })), isDetailed && errorDetails && (_jsxs("div", { className: "mt-4 w-full max-w-md", children: [_jsxs("button", { type: "button", onClick: () => setDetailsExpanded(!detailsExpanded), className: "text-body-1 font-medium text-destructive hover:text-destructive flex items-center gap-1.5 mb-2", children: [detailsExpanded ? _jsx(ChevronDown, { className: "h-4 w-4" }) : _jsx(ChevronRight, { className: "h-4 w-4" }), "Error Details"] }), detailsExpanded && (_jsxs("div", { className: "p-4 bg-card border border-destructive/20 rounded-xl space-y-3", children: [errorDetails.fields && errorDetails.fields.length > 0 && (_jsx("div", { className: "space-y-1.5", children: errorDetails.fields.map((field, idx) => (_jsxs("div", { className: "text-body-1", children: [_jsx("span", { className: "font-semibold text-destructive", children: field.label }), _jsxs("span", { className: "text-ink/70", children: [": ", field.value] })] }, idx))) })), errorDetails.stackTrace && (_jsxs("details", { className: "text-body-1", children: [_jsx("summary", { className: "font-medium text-destructive cursor-pointer mb-1", children: "Stack Trace" }), _jsx("pre", { className: "bg-destructive/5 p-3 rounded-lg overflow-auto max-h-32 text-destructive whitespace-pre-wrap break-words text-body-1 font-mono", children: errorDetails.stackTrace })] })), errorDetails.requestId && (_jsxs("div", { className: "text-body-1 pt-2 border-t border-destructive/15", children: [_jsx("span", { className: "font-medium text-ink-3", children: "Request ID" }), _jsx("br", {}), _jsx("code", { className: "text-body-1 text-ink/70 font-mono break-all", children: errorDetails.requestId })] }))] }))] })), action && (_jsx("button", { type: "button", onClick: action.onClick, className: cn('mt-6 px-5 py-2.5 rounded-lg font-medium transition-colors h-10', isError
|
|
13
10
|
? 'bg-destructive text-destructive-foreground hover:bg-destructive/90'
|
|
14
11
|
: 'bg-primary text-primary-foreground hover:bg-primary/90'), children: action.label }))] }));
|
|
15
12
|
};
|
|
16
|
-
exports.StateCard = StateCard;
|
|
17
13
|
//# sourceMappingURL=StateCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateCard.js","sourceRoot":"","sources":["../../../src/ui/chrome/StateCard.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StateCard.js","sourceRoot":"","sources":["../../../src/ui/chrome/StateCard.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const alert_dialog_1 = require("../primitives/alert-dialog");
|
|
7
|
-
function ConfirmDeleteDialog({ open, onOpenChange, onConfirm, title = 'Delete item', description = 'This action cannot be undone. Are you sure you want to continue?', isPending, confirmLabel = 'Delete', }) {
|
|
8
|
-
return ((0, jsx_runtime_1.jsx)(alert_dialog_1.AlertDialog, { open: open, onOpenChange: onOpenChange, children: (0, jsx_runtime_1.jsxs)(alert_dialog_1.AlertDialogContent, { children: [(0, jsx_runtime_1.jsxs)(alert_dialog_1.AlertDialogHeader, { children: [(0, jsx_runtime_1.jsx)(alert_dialog_1.AlertDialogTitle, { children: title }), (0, jsx_runtime_1.jsx)(alert_dialog_1.AlertDialogDescription, { children: description })] }), (0, jsx_runtime_1.jsxs)(alert_dialog_1.AlertDialogFooter, { children: [(0, jsx_runtime_1.jsx)(alert_dialog_1.AlertDialogCancel, { disabled: isPending, children: "Cancel" }), (0, jsx_runtime_1.jsxs)(alert_dialog_1.AlertDialogAction, { onClick: onConfirm, disabled: isPending, className: "bg-destructive text-destructive-foreground hover:bg-destructive/90", children: [isPending && (0, jsx_runtime_1.jsx)(lucide_react_1.Loader2, { className: "h-4 w-4 mr-1.5 animate-spin" }), confirmLabel] })] })] }) }));
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Loader2 } from 'lucide-react';
|
|
3
|
+
import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, } from '../primitives/alert-dialog';
|
|
4
|
+
export default function ConfirmDeleteDialog({ open, onOpenChange, onConfirm, title = 'Delete item', description = 'This action cannot be undone. Are you sure you want to continue?', isPending, confirmLabel = 'Delete', }) {
|
|
5
|
+
return (_jsx(AlertDialog, { open: open, onOpenChange: onOpenChange, children: _jsxs(AlertDialogContent, { children: [_jsxs(AlertDialogHeader, { children: [_jsx(AlertDialogTitle, { children: title }), _jsx(AlertDialogDescription, { children: description })] }), _jsxs(AlertDialogFooter, { children: [_jsx(AlertDialogCancel, { disabled: isPending, children: "Cancel" }), _jsxs(AlertDialogAction, { onClick: onConfirm, disabled: isPending, className: "bg-destructive text-destructive-foreground hover:bg-destructive/90", children: [isPending && _jsx(Loader2, { className: "h-4 w-4 mr-1.5 animate-spin" }), confirmLabel] })] })] }) }));
|
|
9
6
|
}
|
|
10
7
|
//# sourceMappingURL=confirm-delete-dialog.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confirm-delete-dialog.js","sourceRoot":"","sources":["../../../src/ui/chrome/confirm-delete-dialog.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"confirm-delete-dialog.js","sourceRoot":"","sources":["../../../src/ui/chrome/confirm-delete-dialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AAiBpC,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,KAAK,GAAG,aAAa,EACrB,WAAW,GAAG,kEAAkE,EAChF,SAAS,EACT,YAAY,GAAG,QAAQ,GACE;IACzB,OAAO,CACL,KAAC,WAAW,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,YACjD,MAAC,kBAAkB,eACjB,MAAC,iBAAiB,eAChB,KAAC,gBAAgB,cAAE,KAAK,GAAoB,EAC5C,KAAC,sBAAsB,cAAE,WAAW,GAA0B,IAC5C,EACpB,MAAC,iBAAiB,eAChB,KAAC,iBAAiB,IAAC,QAAQ,EAAE,SAAS,uBAA4B,EAClE,MAAC,iBAAiB,IAChB,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAC,oEAAoE,aAE7E,SAAS,IAAI,KAAC,OAAO,IAAC,SAAS,EAAC,6BAA6B,GAAG,EAChE,YAAY,IACK,IACF,IACD,GACT,CACf,CAAC;AACJ,CAAC"}
|
|
@@ -1,19 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const lucide_react_1 = require("lucide-react");
|
|
9
|
-
const biome_host_1 = require("../../lib/biome-host");
|
|
10
|
-
const EmptyState_1 = __importDefault(require("./EmptyState"));
|
|
11
|
-
const tabs_1 = require("../primitives/tabs");
|
|
12
|
-
function PageShell({ icon: _Icon, title, description, children, actions, tabs, activeTab, onTabChange, maxWidth, embedded, eyebrow, backTo, topbarActions, }) {
|
|
13
|
-
(0, biome_host_1.useHostBridge)().pageMeta.usePageMeta({ title, description, eyebrow, backTo, topbarActions });
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { FileQuestion } from 'lucide-react';
|
|
3
|
+
import { useHostBridge } from '../../lib/biome-host';
|
|
4
|
+
import EmptyState from './EmptyState';
|
|
5
|
+
import { Tabs, TabsList, TabsTrigger } from '../primitives/tabs';
|
|
6
|
+
export default function PageShell({ icon: _Icon, title, description, children, actions, tabs, activeTab, onTabChange, maxWidth, embedded, eyebrow, backTo, topbarActions, }) {
|
|
7
|
+
useHostBridge().pageMeta.usePageMeta({ title, description, eyebrow, backTo, topbarActions });
|
|
14
8
|
if (embedded) {
|
|
15
|
-
return ((
|
|
9
|
+
return (_jsxs("div", { className: "flex h-full min-h-0 flex-col bg-paper", children: [(tabs && tabs.length > 0) || actions ? (_jsx("div", { className: "shrink-0 border-b border-rule bg-paper-elev/40", children: _jsxs("div", { className: "flex items-center gap-3 px-4 py-2 lg:px-6", children: [tabs && tabs.length > 0 && (_jsx(Tabs, { value: activeTab, onValueChange: onTabChange, className: "flex-1 min-w-0", children: _jsx("div", { className: "overflow-x-auto", children: _jsx(TabsList, { className: "h-7 bg-transparent p-0 gap-0", children: tabs.map((tab) => (_jsxs(TabsTrigger, { value: tab.value, className: "rounded-none border-b-2 border-transparent px-2 py-1 text-body-2 font-medium text-ink-3 transition-colors data-[state=active]:border-primary data-[state=active]:text-ink data-[state=active]:bg-transparent data-[state=active]:shadow-none", children: [tab.label, tab.count !== undefined && (_jsx("span", { className: "ml-1.5 text-caption tabular-nums opacity-70", children: tab.count })), tab.indicator && (_jsx("span", { className: "ml-1.5 inline-block h-1.5 w-1.5 rounded-full bg-warning" }))] }, tab.value))) }) }) })), !tabs && _jsx("div", { className: "flex-1" }), actions && _jsx("div", { className: "flex items-center gap-2 shrink-0", children: actions })] }) })) : null, _jsx("div", { className: "flex-1 overflow-auto min-h-0", children: _jsx("div", { className: "flex h-full min-h-0 flex-col px-4 pb-4 pt-3 lg:px-6", children: children }) })] }));
|
|
16
10
|
}
|
|
17
|
-
return ((
|
|
11
|
+
return (_jsxs("div", { className: `flex h-full min-h-0 flex-col ${maxWidth ?? ''}`, children: [(tabs || actions) && (_jsx("div", { className: "shrink-0 border-b border-border/50 px-4 sm:px-5 lg:px-8", children: _jsxs("div", { className: "flex min-h-[34px] flex-col gap-2 py-1.5 sm:flex-row sm:items-center sm:gap-3 sm:py-0", children: [tabs && tabs.length > 0 && (_jsx(Tabs, { value: activeTab, onValueChange: onTabChange, className: "flex-1 min-w-0", children: _jsx("div", { className: "overflow-x-auto", children: _jsx(TabsList, { className: "h-7 bg-transparent p-0 gap-0", children: tabs.map((tab) => (_jsxs(TabsTrigger, { value: tab.value, className: "whitespace-nowrap rounded-none border-b-2 border-transparent px-2.5 py-1.5 text-caption font-medium text-ink-3/90 transition-colors data-[state=active]:border-primary data-[state=active]:bg-transparent data-[state=active]:text-ink data-[state=active]:shadow-none hover:text-ink", children: [tab.label, tab.count !== undefined && (_jsx("span", { className: "ml-1.5 text-caption tabular-nums opacity-60", children: tab.count })), tab.indicator && (_jsx("span", { className: "ml-1.5 inline-block h-1.5 w-1.5 rounded-full bg-warning" }))] }, tab.value))) }) }) })), !tabs && _jsx("div", { className: "flex-1" }), actions && (_jsx("div", { className: "flex w-full flex-wrap items-center gap-2 sm:w-auto sm:shrink-0 sm:justify-end", children: actions }))] }) })), _jsx("div", { className: "flex min-h-0 flex-1 flex-col overflow-auto px-4 pb-5 pt-4 sm:px-6 sm:pb-6 sm:pt-5", children: children || (_jsx(EmptyState, { icon: FileQuestion, title: "Nothing to show yet", description: "This page has no content to display. Check back once the workspace has data." })) })] }));
|
|
18
12
|
}
|
|
19
13
|
//# sourceMappingURL=page-shell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-shell.js","sourceRoot":"","sources":["../../../src/ui/chrome/page-shell.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"page-shell.js","sourceRoot":"","sources":["../../../src/ui/chrome/page-shell.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const design_tokens_1 = require("../design-tokens");
|
|
7
|
-
function ScopeBadge({ label, tone = 'neutral', hint, className, }) {
|
|
8
|
-
return ((0, jsx_runtime_1.jsx)("span", { className: (0, cn_1.cn)('inline-flex shrink-0 items-center rounded-sm border px-1.5 py-0 text-[10px] font-medium uppercase tracking-wide', design_tokens_1.TONE_STYLES[tone], className), title: hint, children: label }));
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../cn';
|
|
3
|
+
import { TONE_STYLES } from '../design-tokens';
|
|
4
|
+
export default function ScopeBadge({ label, tone = 'neutral', hint, className, }) {
|
|
5
|
+
return (_jsx("span", { className: cn('inline-flex shrink-0 items-center rounded-sm border px-1.5 py-0 text-[10px] font-medium uppercase tracking-wide', TONE_STYLES[tone], className), title: hint, children: label }));
|
|
9
6
|
}
|
|
10
7
|
//# sourceMappingURL=scope-badge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope-badge.js","sourceRoot":"","sources":["../../../src/ui/chrome/scope-badge.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scope-badge.js","sourceRoot":"","sources":["../../../src/ui/chrome/scope-badge.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAa,MAAM,kBAAkB,CAAC;AAoB1D,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,KAAK,EACL,IAAI,GAAG,SAAS,EAChB,IAAI,EACJ,SAAS,GACO;IAChB,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,iHAAiH,EACjH,WAAW,CAAC,IAAI,CAAC,EACjB,SAAS,CACV,EACD,KAAK,EAAE,IAAI,YAEV,KAAK,GACD,CACR,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const cn_1 = require("../cn");
|
|
6
|
-
const design_tokens_1 = require("../design-tokens");
|
|
7
|
-
const badge_1 = require("../primitives/badge");
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from '../cn';
|
|
3
|
+
import { getStatusStyle } from '../design-tokens';
|
|
4
|
+
import { Badge } from '../primitives/badge';
|
|
8
5
|
const SIZE_TOKENS = {
|
|
9
6
|
xs: {
|
|
10
7
|
badge: 'h-[18px] px-1.5 py-0 text-[10px] font-medium',
|
|
@@ -22,9 +19,9 @@ const SIZE_TOKENS = {
|
|
|
22
19
|
gap: 'gap-1.5',
|
|
23
20
|
},
|
|
24
21
|
};
|
|
25
|
-
function StatusBadge({ status, className, dot, size = 'sm', children, }) {
|
|
26
|
-
const style =
|
|
22
|
+
export default function StatusBadge({ status, className, dot, size = 'sm', children, }) {
|
|
23
|
+
const style = getStatusStyle(status);
|
|
27
24
|
const sz = SIZE_TOKENS[size];
|
|
28
|
-
return ((
|
|
25
|
+
return (_jsxs(Badge, { variant: "outline", className: cn('inline-flex items-center rounded-full', sz.badge, sz.gap, style.badge, className), children: [dot && _jsx("span", { className: cn('shrink-0 rounded-full', sz.dot, style.dot) }), children ?? _jsx("span", { className: "capitalize", children: status.replace(/_/g, ' ') })] }));
|
|
29
26
|
}
|
|
30
27
|
//# sourceMappingURL=status-badge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-badge.js","sourceRoot":"","sources":["../../../src/ui/chrome/status-badge.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status-badge.js","sourceRoot":"","sources":["../../../src/ui/chrome/status-badge.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAmB5C,MAAM,WAAW,GAAwC;IACvD,EAAE,EAAE;QACF,KAAK,EAAE,8CAA8C;QACrD,GAAG,EAAE,SAAS;QACd,GAAG,EAAE,OAAO;KACb;IACD,EAAE,EAAE;QACF,KAAK,EAAE,wCAAwC;QAC/C,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,SAAS;KACf;IACD,EAAE,EAAE;QACF,KAAK,EAAE,2BAA2B;QAClC,GAAG,EAAE,aAAa;QAClB,GAAG,EAAE,SAAS;KACf;CACF,CAAC;AAWF,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,MAAM,EACN,SAAS,EACT,GAAG,EACH,IAAI,GAAG,IAAI,EACX,QAAQ,GACS;IACjB,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,CACL,MAAC,KAAK,IACJ,OAAO,EAAC,SAAS,EACjB,SAAS,EAAE,EAAE,CACX,uCAAuC,EACvC,EAAE,CAAC,KAAK,EACR,EAAE,CAAC,GAAG,EACN,KAAK,CAAC,KAAK,EACX,SAAS,CACV,aAEA,GAAG,IAAI,eAAM,SAAS,EAAE,EAAE,CAAC,uBAAuB,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,GAAI,EAC1E,QAAQ,IAAI,eAAM,SAAS,EAAC,YAAY,YAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,GAAQ,IACtE,CACT,CAAC;AACJ,CAAC"}
|
package/dist/ui/cn.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const clsx_1 = require("clsx");
|
|
5
|
-
const tailwind_merge_1 = require("tailwind-merge");
|
|
6
|
-
const twMerge = (0, tailwind_merge_1.extendTailwindMerge)({
|
|
1
|
+
import { clsx } from 'clsx';
|
|
2
|
+
import { extendTailwindMerge } from 'tailwind-merge';
|
|
3
|
+
const twMerge = extendTailwindMerge({
|
|
7
4
|
extend: {
|
|
8
5
|
classGroups: {
|
|
9
6
|
'font-size': [
|
|
@@ -12,7 +9,7 @@ const twMerge = (0, tailwind_merge_1.extendTailwindMerge)({
|
|
|
12
9
|
},
|
|
13
10
|
},
|
|
14
11
|
});
|
|
15
|
-
function cn(...inputs) {
|
|
16
|
-
return twMerge(
|
|
12
|
+
export function cn(...inputs) {
|
|
13
|
+
return twMerge(clsx(inputs));
|
|
17
14
|
}
|
|
18
15
|
//# sourceMappingURL=cn.js.map
|
package/dist/ui/cn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cn.js","sourceRoot":"","sources":["../../src/ui/cn.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cn.js","sourceRoot":"","sources":["../../src/ui/cn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAmB,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAcrD,MAAM,OAAO,GAAG,mBAAmB,CAAC;IAClC,MAAM,EAAE;QACN,WAAW,EAAE;YACX,WAAW,EAAE;gBACX,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;aAC1E;SACF;KACF;CACF,CAAC,CAAC;AAMH,MAAM,UAAU,EAAE,CAAC,GAAG,MAAoB;IACxC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/B,CAAC"}
|