@iota-uz/sdk 0.20.0 → 0.22.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/chat-ui/PHOSPHOR-LICENSE +21 -0
- package/dist/chat-ui/animations/index.d.ts +4 -0
- package/dist/chat-ui/animations/variants.d.ts +322 -0
- package/dist/chat-ui/api/csrf.d.ts +20 -0
- package/dist/chat-ui/components/ActivityTrace.d.ts +12 -0
- package/dist/chat-ui/components/Alert.d.ts +13 -0
- package/dist/chat-ui/components/AllChatsList.d.ts +9 -0
- package/dist/chat-ui/components/ArchiveBanner.d.ts +9 -0
- package/dist/chat-ui/components/ArchivedChatList.d.ts +12 -0
- package/dist/chat-ui/components/AssistantMessage.d.ts +149 -0
- package/dist/chat-ui/components/AssistantTurnView.d.ts +25 -0
- package/dist/chat-ui/components/AttachmentGrid.d.ts +19 -0
- package/dist/chat-ui/components/AttachmentPreview.d.ts +14 -0
- package/dist/chat-ui/components/AttachmentUpload.d.ts +14 -0
- package/dist/chat-ui/components/AvatarStack.d.ts +21 -0
- package/dist/chat-ui/components/BiChatLayout.d.ts +19 -0
- package/dist/chat-ui/components/ChartCard.d.ts +17 -0
- package/dist/chat-ui/components/ChatHeader.d.ts +31 -0
- package/dist/chat-ui/components/ChatSession.d.ts +51 -0
- package/dist/chat-ui/components/CodeBlock.d.ts +26 -0
- package/dist/chat-ui/components/CodeOutputsPanel.d.ts +8 -0
- package/dist/chat-ui/components/CompactionDoodle.d.ts +7 -0
- package/dist/chat-ui/components/ConfirmModal.d.ts +23 -0
- package/dist/chat-ui/components/ConfirmationStep.d.ts +13 -0
- package/dist/chat-ui/components/DataTableCell.d.ts +11 -0
- package/dist/chat-ui/components/DataTableFooter.d.ts +9 -0
- package/dist/chat-ui/components/DataTableHeader.d.ts +15 -0
- package/dist/chat-ui/components/DataTableToolbar.d.ts +17 -0
- package/dist/chat-ui/components/DateGroupHeader.d.ts +11 -0
- package/dist/chat-ui/components/DateSeparator.d.ts +6 -0
- package/dist/chat-ui/components/DebugPanel.d.ts +7 -0
- package/dist/chat-ui/components/DownloadCard.d.ts +7 -0
- package/dist/chat-ui/components/EditableText.d.ts +30 -0
- package/dist/chat-ui/components/EmptyState.d.ts +19 -0
- package/dist/chat-ui/components/ErrorBoundary.d.ts +23 -0
- package/dist/chat-ui/components/FullscreenOverlay.d.ts +9 -0
- package/dist/chat-ui/components/ImageModal.d.ts +13 -0
- package/dist/chat-ui/components/InlineDialog.d.ts +16 -0
- package/dist/chat-ui/components/InlineQuestionForm.d.ts +7 -0
- package/dist/chat-ui/components/InteractiveTableCard.d.ts +18 -0
- package/dist/chat-ui/components/LoadingSpinner.d.ts +11 -0
- package/dist/chat-ui/components/MarkdownRenderer.d.ts +13 -0
- package/dist/chat-ui/components/Menu.d.ts +29 -0
- package/dist/chat-ui/components/MessageActions.d.ts +17 -0
- package/dist/chat-ui/components/MessageInput.d.ts +39 -0
- package/dist/chat-ui/components/MessageList.d.ts +12 -0
- package/dist/chat-ui/components/MessageQueueList.d.ts +9 -0
- package/dist/chat-ui/components/ModelSelector.d.ts +2 -0
- package/dist/chat-ui/components/PermissionGuard.d.ts +47 -0
- package/dist/chat-ui/components/QuestionForm.d.ts +10 -0
- package/dist/chat-ui/components/QuestionStep.d.ts +15 -0
- package/dist/chat-ui/components/RetryActionArea.d.ts +7 -0
- package/dist/chat-ui/components/ScreenReaderAnnouncer.d.ts +22 -0
- package/dist/chat-ui/components/ScrollToBottomButton.d.ts +12 -0
- package/dist/chat-ui/components/SearchInput.d.ts +27 -0
- package/dist/chat-ui/components/SessionArtifactList.d.ts +9 -0
- package/dist/chat-ui/components/SessionArtifactPreview.d.ts +7 -0
- package/dist/chat-ui/components/SessionArtifactPreviewModal.d.ts +13 -0
- package/dist/chat-ui/components/SessionArtifactsPanel.d.ts +13 -0
- package/dist/chat-ui/components/SessionItem.d.ts +18 -0
- package/dist/chat-ui/components/SessionMembersModal.d.ts +10 -0
- package/dist/chat-ui/components/SessionSkeleton.d.ts +6 -0
- package/dist/chat-ui/components/Sidebar.d.ts +22 -0
- package/dist/chat-ui/components/Skeleton.d.ts +63 -0
- package/dist/chat-ui/components/SkipLink.d.ts +2 -0
- package/dist/chat-ui/components/SourcesPanel.d.ts +7 -0
- package/dist/chat-ui/components/StreamError.d.ts +15 -0
- package/dist/chat-ui/components/StreamingCursor.d.ts +4 -0
- package/dist/chat-ui/components/SystemMessage.d.ts +10 -0
- package/dist/chat-ui/components/TabBar.d.ts +15 -0
- package/dist/chat-ui/components/TabbedChartGroup.d.ts +6 -0
- package/dist/chat-ui/components/TabbedTableGroup.d.ts +8 -0
- package/dist/chat-ui/components/TableExportButton.d.ts +13 -0
- package/dist/chat-ui/components/TableWithExport.d.ts +15 -0
- package/dist/chat-ui/components/Toast.d.ts +15 -0
- package/dist/chat-ui/components/ToastContainer.d.ts +10 -0
- package/dist/chat-ui/components/TouchContextMenu.d.ts +18 -0
- package/dist/chat-ui/components/Transition.d.ts +11 -0
- package/dist/chat-ui/components/TurnBubble.d.ts +51 -0
- package/dist/chat-ui/components/TypingIndicator.d.ts +13 -0
- package/dist/chat-ui/components/UserAvatar.d.ts +21 -0
- package/dist/chat-ui/components/UserFilter.d.ts +12 -0
- package/dist/chat-ui/components/UserMessage.d.ts +86 -0
- package/dist/chat-ui/components/UserTurnView.d.ts +25 -0
- package/dist/chat-ui/components/WelcomeContent.d.ts +17 -0
- package/dist/chat-ui/config/ConfigContext.d.ts +61 -0
- package/dist/chat-ui/context/ChatContext.d.ts +42 -0
- package/dist/chat-ui/context/IotaContext.d.ts +21 -0
- package/dist/chat-ui/context/chatHelpers.d.ts +18 -0
- package/dist/chat-ui/context/externalSnapshot.d.ts +4 -0
- package/dist/chat-ui/data/ArtifactManager.d.ts +23 -0
- package/dist/chat-ui/data/AttachmentUploader.d.ts +25 -0
- package/dist/chat-ui/data/HttpDataSource.d.ts +109 -0
- package/dist/chat-ui/data/ManagedHttpDataSource.d.ts +26 -0
- package/dist/chat-ui/data/MessageTransport.d.ts +88 -0
- package/dist/chat-ui/data/SessionManager.d.ts +52 -0
- package/dist/chat-ui/data/applet-rpc.d.ts +29 -0
- package/dist/chat-ui/data/mappers.d.ts +33 -0
- package/dist/chat-ui/data/openManagedEventSource.d.ts +54 -0
- package/dist/chat-ui/data/rpc.generated.d.ts +421 -0
- package/dist/chat-ui/hooks/createHorizontalSwipe.d.ts +27 -0
- package/dist/chat-ui/hooks/createReducedMotion.d.ts +1 -0
- package/dist/chat-ui/hooks/useActiveRuns.d.ts +47 -0
- package/dist/chat-ui/hooks/useAttachments.d.ts +80 -0
- package/dist/chat-ui/hooks/useAutoScroll.d.ts +51 -0
- package/dist/chat-ui/hooks/useBichatRouter.d.ts +40 -0
- package/dist/chat-ui/hooks/useBranding.d.ts +16 -0
- package/dist/chat-ui/hooks/useDataTable.d.ts +54 -0
- package/dist/chat-ui/hooks/useFocusTrap.d.ts +17 -0
- package/dist/chat-ui/hooks/useHttpDataSourceConfigFromApplet.d.ts +19 -0
- package/dist/chat-ui/hooks/useImageGallery.d.ts +67 -0
- package/dist/chat-ui/hooks/useKeyboardShortcuts.d.ts +23 -0
- package/dist/chat-ui/hooks/useLongPress.d.ts +22 -0
- package/dist/chat-ui/hooks/useMarkdownCopy.d.ts +46 -0
- package/dist/chat-ui/hooks/useMessageActions.d.ts +53 -0
- package/dist/chat-ui/hooks/useMessageListScroll.d.ts +22 -0
- package/dist/chat-ui/hooks/useModalLock.d.ts +1 -0
- package/dist/chat-ui/hooks/useScrollToBottom.d.ts +22 -0
- package/dist/chat-ui/hooks/useSidebarState.d.ts +8 -0
- package/dist/chat-ui/hooks/useToast.d.ts +43 -0
- package/dist/chat-ui/hooks/useTranslation.d.ts +4 -0
- package/dist/chat-ui/icons/index.d.ts +93 -0
- package/dist/chat-ui/icons.js +975 -0
- package/dist/chat-ui/index.d.ts +122 -0
- package/dist/chat-ui/index.js +51821 -0
- package/dist/chat-ui/machine/ChatMachine.d.ts +191 -0
- package/dist/chat-ui/machine/hitlLifecycle.d.ts +7 -0
- package/dist/chat-ui/machine/index.d.ts +2 -0
- package/dist/chat-ui/machine/selectors.d.ts +5 -0
- package/dist/chat-ui/machine/types.d.ts +127 -0
- package/dist/chat-ui/styles.css +1 -0
- package/dist/chat-ui/theme/themes.d.ts +6 -0
- package/dist/chat-ui/theme/types.d.ts +38 -0
- package/dist/chat-ui/types/applet/index.d.ts +82 -0
- package/dist/chat-ui/types/data-source.d.ts +81 -0
- package/dist/chat-ui/types/index.d.ts +719 -0
- package/dist/chat-ui/types/iota.d.ts +76 -0
- package/dist/chat-ui/utils/RateLimiter.d.ts +28 -0
- package/dist/chat-ui/utils/activitySteps.d.ts +15 -0
- package/dist/chat-ui/utils/artifactHelpers.d.ts +7 -0
- package/dist/chat-ui/utils/assistantTurnState.d.ts +4 -0
- package/dist/chat-ui/utils/chartSpec.d.ts +15 -0
- package/dist/chat-ui/utils/citationProcessor.d.ts +38 -0
- package/dist/chat-ui/utils/columnTypes.d.ts +9 -0
- package/dist/chat-ui/utils/cssLength.d.ts +1 -0
- package/dist/chat-ui/utils/dateFormatting.d.ts +13 -0
- package/dist/chat-ui/utils/debugMetrics.d.ts +5 -0
- package/dist/chat-ui/utils/debugModeStorage.d.ts +2 -0
- package/dist/chat-ui/utils/debugTrace.d.ts +4 -0
- package/dist/chat-ui/utils/errorDisplay.d.ts +23 -0
- package/dist/chat-ui/utils/eventNames.d.ts +27 -0
- package/dist/chat-ui/utils/fileUtils.d.ts +48 -0
- package/dist/chat-ui/utils/markdownMath.d.ts +9 -0
- package/dist/chat-ui/utils/markdownStream.d.ts +8 -0
- package/dist/chat-ui/utils/questionFormUtils.d.ts +18 -0
- package/dist/chat-ui/utils/queueStorage.d.ts +4 -0
- package/dist/chat-ui/utils/reasoningEffortStorage.d.ts +3 -0
- package/dist/chat-ui/utils/sessionGrouping.d.ts +7 -0
- package/dist/chat-ui/utils/sseParser.d.ts +34 -0
- package/dist/chat-ui/utils/tableSpec.d.ts +6 -0
- package/dist/chat-ui/utils/textBlocks.d.ts +43 -0
- package/dist/chat-ui/utils/toolLabels.d.ts +17 -0
- package/dist/client-host/{applet.d.ts → bichat-config.d.ts} +2 -16
- package/dist/client-host/bichat-config.d.ts.map +1 -0
- package/dist/client-host/{applet.js → bichat-config.js} +0 -8
- package/dist/client-host/identity.d.ts +4 -4
- package/dist/client-host/identity.js +2 -2
- package/dist/client-host/index.d.ts +7 -4
- package/dist/client-host/index.d.ts.map +1 -1
- package/dist/client-host/index.js +7 -4
- package/dist/client-host/solid-index.d.ts +1 -0
- package/dist/client-host/solid-index.d.ts.map +1 -1
- package/dist/client-host/solid-index.js +1 -0
- package/dist/client-host/solid-streaming.d.ts.map +1 -1
- package/dist/lens/CascadePanel-BXaSLD9I.js +700 -0
- package/dist/lens/ChartDataEquivalent-Uo4RCCqz.js +92 -0
- package/dist/lens/ChartPanel-BYIblvtO.js +981 -0
- package/dist/lens/CoveragePanel-CBxW7l_N.js +195 -0
- package/dist/lens/DashboardPanels.d.ts +4 -1
- package/dist/lens/DashboardPanels.d.ts.map +1 -1
- package/dist/lens/GaugePanel-Gm3y4QBi.js +39 -0
- package/dist/lens/LensDashboard.d.ts +7 -2
- package/dist/lens/LensDashboard.d.ts.map +1 -1
- package/dist/lens/MapPanel-Fr67rBRo.js +256 -0
- package/dist/lens/MetricFlowPanel-DFGBh3hI.js +135 -0
- package/dist/lens/MetricHierarchyPanel-DKiQ8e3m.js +121 -0
- package/dist/lens/MetricRelationshipPanel-YC3Cg9Id.js +120 -0
- package/dist/lens/PrintReport-BPI_jNyw.js +1876 -0
- package/dist/lens/TablePanel-Bh8dWK4d.js +946 -0
- package/dist/lens/{adapter-BwEwcw2W.js → adapter-DIzUDxuh.js} +384 -384
- package/dist/lens/contract/schemas.d.ts.map +1 -1
- package/dist/lens/contract/types.d.ts +1 -1
- package/dist/lens/contract/types.d.ts.map +1 -1
- package/dist/lens/controls/Calendar.d.ts +1 -1
- package/dist/lens/controls/Calendar.d.ts.map +1 -1
- package/dist/lens/controls/CompareFilterControl.d.ts +2 -2
- package/dist/lens/controls/CompareFilterControl.d.ts.map +1 -1
- package/dist/lens/controls/FacetFilterMenu.d.ts +2 -2
- package/dist/lens/controls/FacetFilterMenu.d.ts.map +1 -1
- package/dist/lens/controls/FilterBar.d.ts +3 -3
- package/dist/lens/controls/FilterBar.d.ts.map +1 -1
- package/dist/lens/controls/PeriodFilterControl.d.ts +2 -1
- package/dist/lens/controls/PeriodFilterControl.d.ts.map +1 -1
- package/dist/lens/controls/SegmentedFilterControl.d.ts +2 -2
- package/dist/lens/controls/SegmentedFilterControl.d.ts.map +1 -1
- package/dist/lens/controls/facetOptions.d.ts +5 -5
- package/dist/lens/controls/facetOptions.d.ts.map +1 -1
- package/dist/lens/element.d.ts +1 -1
- package/dist/lens/element.d.ts.map +1 -1
- package/dist/lens/explore/ContextMiniChart.d.ts +2 -1
- package/dist/lens/explore/ContextMiniChart.d.ts.map +1 -1
- package/dist/lens/explore/DrillOverlay.d.ts +2 -1
- package/dist/lens/explore/DrillOverlay.d.ts.map +1 -1
- package/dist/lens/explore/ExplorePanel.d.ts +2 -1
- package/dist/lens/explore/ExplorePanel.d.ts.map +1 -1
- package/dist/lens/explore/FocusContextHeader.d.ts +2 -1
- package/dist/lens/explore/FocusContextHeader.d.ts.map +1 -1
- package/dist/lens/explore/LensSelector.d.ts +2 -1
- package/dist/lens/explore/LensSelector.d.ts.map +1 -1
- package/dist/lens/explore/SourceDataDisclosure.d.ts +3 -3
- package/dist/lens/explore/SourceDataDisclosure.d.ts.map +1 -1
- package/dist/lens/icons.d.ts +36 -35
- package/dist/lens/icons.d.ts.map +1 -1
- package/dist/lens/{index-B6anZ5Pr.js → index-2qUA4koZ.js} +1 -1
- package/dist/lens/index-DW4iQi93.js +13171 -0
- package/dist/lens/index.d.ts +3 -1
- package/dist/lens/index.d.ts.map +1 -1
- package/dist/lens/index.js +14 -9
- package/dist/lens/{install-D5OiGDnd.js → install-C-b2Bm4Y.js} +1 -1
- package/dist/lens/{install-CsNOaFxV.js → install-C7rGzRvO.js} +1 -1
- package/dist/lens/{install-CumkiUJn.js → install-Ce8R_Bl2.js} +1 -1
- package/dist/lens/{install-VEXJv-Wi.js → install-Czhlaw4u.js} +1 -1
- package/dist/lens/keys-BC7G1vyT.js +91 -0
- package/dist/lens/metricViews-DSoDe0GU.js +210 -0
- package/dist/lens/panels/CascadePanel.d.ts +1 -1
- package/dist/lens/panels/CascadePanel.d.ts.map +1 -1
- package/dist/lens/panels/ChartDataEquivalent.d.ts +1 -1
- package/dist/lens/panels/ChartDataEquivalent.d.ts.map +1 -1
- package/dist/lens/panels/ChartHost.d.ts +1 -1
- package/dist/lens/panels/ChartHost.d.ts.map +1 -1
- package/dist/lens/panels/ChartPanel.d.ts +2 -1
- package/dist/lens/panels/ChartPanel.d.ts.map +1 -1
- package/dist/lens/panels/CopyValueButton.d.ts +1 -1
- package/dist/lens/panels/CopyValueButton.d.ts.map +1 -1
- package/dist/lens/panels/CoveragePanel.d.ts +1 -1
- package/dist/lens/panels/CoveragePanel.d.ts.map +1 -1
- package/dist/lens/panels/ExportMenu.d.ts +1 -1
- package/dist/lens/panels/ExportMenu.d.ts.map +1 -1
- package/dist/lens/panels/GaugePanel.d.ts +1 -1
- package/dist/lens/panels/GaugePanel.d.ts.map +1 -1
- package/dist/lens/panels/InfoTip.d.ts +2 -1
- package/dist/lens/panels/InfoTip.d.ts.map +1 -1
- package/dist/lens/panels/MapPanel.d.ts +1 -1
- package/dist/lens/panels/MapPanel.d.ts.map +1 -1
- package/dist/lens/panels/MetricFlowPanel.d.ts +1 -1
- package/dist/lens/panels/MetricFlowPanel.d.ts.map +1 -1
- package/dist/lens/panels/MetricHierarchyPanel.d.ts +2 -1
- package/dist/lens/panels/MetricHierarchyPanel.d.ts.map +1 -1
- package/dist/lens/panels/MetricRelationshipPanel.d.ts +1 -1
- package/dist/lens/panels/MetricRelationshipPanel.d.ts.map +1 -1
- package/dist/lens/panels/PanelExportMenu.d.ts +2 -2
- package/dist/lens/panels/PanelExportMenu.d.ts.map +1 -1
- package/dist/lens/panels/PanelFrame.d.ts +6 -6
- package/dist/lens/panels/PanelFrame.d.ts.map +1 -1
- package/dist/lens/panels/PanelOverlay.d.ts +4 -4
- package/dist/lens/panels/PanelOverlay.d.ts.map +1 -1
- package/dist/lens/panels/QualityChip.d.ts +8 -4
- package/dist/lens/panels/QualityChip.d.ts.map +1 -1
- package/dist/lens/panels/ShareSliceButton.d.ts +1 -1
- package/dist/lens/panels/ShareSliceButton.d.ts.map +1 -1
- package/dist/lens/panels/Skeleton.d.ts +13 -13
- package/dist/lens/panels/Skeleton.d.ts.map +1 -1
- package/dist/lens/panels/StatPanel.d.ts +11 -11
- package/dist/lens/panels/StatPanel.d.ts.map +1 -1
- package/dist/lens/panels/StatValueTicker.d.ts +2 -2
- package/dist/lens/panels/StatValueTicker.d.ts.map +1 -1
- package/dist/lens/panels/TablePanel.d.ts +2 -1
- package/dist/lens/panels/TablePanel.d.ts.map +1 -1
- package/dist/lens/panels/WaterfallPlot.d.ts +3 -3
- package/dist/lens/panels/WaterfallPlot.d.ts.map +1 -1
- package/dist/lens/panels/actions.d.ts +16 -13
- package/dist/lens/panels/actions.d.ts.map +1 -1
- package/dist/lens/panels/context.d.ts +5 -5
- package/dist/lens/panels/context.d.ts.map +1 -1
- package/dist/lens/panels/focusTrap.d.ts +4 -0
- package/dist/lens/panels/focusTrap.d.ts.map +1 -0
- package/dist/lens/panels/overlayContainer.d.ts +18 -0
- package/dist/lens/panels/overlayContainer.d.ts.map +1 -0
- package/dist/lens/panels/registry.d.ts +23 -23
- package/dist/lens/panels/registry.d.ts.map +1 -1
- package/dist/lens/panels/useIsClamped.d.ts +2 -2
- package/dist/lens/panels/useIsClamped.d.ts.map +1 -1
- package/dist/lens/panels/useMenuButton.d.ts +21 -14
- package/dist/lens/panels/useMenuButton.d.ts.map +1 -1
- package/dist/lens/{prefetch-C_qYKOTU.js → prefetch-Caqfl7sC.js} +2 -2
- package/dist/lens/{prefetchPanels-CD4C-A5q.js → prefetchPanels-B-09akeK.js} +1 -1
- package/dist/lens/print/PrintReport.d.ts +4 -3
- package/dist/lens/print/PrintReport.d.ts.map +1 -1
- package/dist/lens/print/formula.d.ts +3 -2
- package/dist/lens/print/formula.d.ts.map +1 -1
- package/dist/lens/print/quality.d.ts +3 -2
- package/dist/lens/print/quality.d.ts.map +1 -1
- package/dist/lens/{print-Iu804kRb.js → print-CcDZyjFC.js} +1 -1
- package/dist/lens/reports/contract/schemas.d.ts +17 -0
- package/dist/lens/reports/contract/schemas.d.ts.map +1 -0
- package/dist/lens/reports/contract/types.d.ts +42 -0
- package/dist/lens/reports/contract/types.d.ts.map +1 -0
- package/dist/lens/reports/draft.d.ts +28 -0
- package/dist/lens/reports/draft.d.ts.map +1 -0
- package/dist/lens/runtime/drawer.d.ts +3 -3
- package/dist/lens/runtime/drawer.d.ts.map +1 -1
- package/dist/lens/runtime/overlayContainer.d.ts +2 -2
- package/dist/lens/runtime/overlayContainer.d.ts.map +1 -1
- package/dist/lens/runtime/provider.d.ts +23 -23
- package/dist/lens/runtime/provider.d.ts.map +1 -1
- package/dist/lens/{scales-CWTA0tSQ.js → scales-DOCY7Afr.js} +1 -1
- package/dist/lens/style.css +1 -1
- package/dist/sdk-identity.cjs +3 -3
- package/dist/sdk-identity.js +3 -3
- package/dist/sdk-identity.json +2 -2
- package/package.json +11 -10
- package/dist/client-host/applet.d.ts.map +0 -1
- package/dist/client-host/portals.d.ts +0 -30
- package/dist/client-host/portals.d.ts.map +0 -1
- package/dist/client-host/portals.js +0 -84
- package/dist/client-host/route.d.ts +0 -17
- package/dist/client-host/route.d.ts.map +0 -1
- package/dist/client-host/route.js +0 -19
- package/dist/client-host/rpc.d.ts +0 -15
- package/dist/client-host/rpc.d.ts.map +0 -1
- package/dist/client-host/rpc.js +0 -28
- package/dist/lens/CascadePanel-Sd2OKQx-.js +0 -574
- package/dist/lens/ChartDataEquivalent-DgCAb4Ov.js +0 -53
- package/dist/lens/ChartPanel-CiAahY9O.js +0 -709
- package/dist/lens/CoveragePanel-DeeKg8gF.js +0 -131
- package/dist/lens/GaugePanel-8rsf_XHS.js +0 -43
- package/dist/lens/MapPanel-Bq0mfVCB.js +0 -179
- package/dist/lens/MetricFlowPanel-ZBJqPFpc.js +0 -70
- package/dist/lens/MetricHierarchyPanel-DStGwvVU.js +0 -72
- package/dist/lens/MetricRelationshipPanel-D6ItmGCS.js +0 -54
- package/dist/lens/PrintReport-Dr-6xXVr.js +0 -1367
- package/dist/lens/TablePanel-CzLP8gG0.js +0 -619
- package/dist/lens/index-R9mnOHaj.js +0 -11000
- package/dist/lens/keys-6_gqLhcv.js +0 -78
- package/dist/lens/metricViews-De-9pff-.js +0 -170
- package/dist/lens/runtime/focusTrap.d.ts +0 -4
- package/dist/lens/runtime/focusTrap.d.ts.map +0 -1
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import { createComponent as f, insert as c, memo as D, effect as _, setAttribute as k, setStyleProperty as E, addEventListener as J, template as h, className as K, style as O, delegateEvents as Q } from "solid-js/web";
|
|
2
|
+
import { createMemo as W, createSignal as X, For as R, Show as M } from "solid-js";
|
|
3
|
+
import { t as Y, u as Z, a0 as F, L as q, a as ee, a5 as te, g as ae, A as re, P as ne, a6 as le, a1 as A, a2 as B } from "./index-DW4iQi93.js";
|
|
4
|
+
var oe = /* @__PURE__ */ h("<span>"), ie = /* @__PURE__ */ h("<div class=lens-coverage-bullet><div class=lens-coverage-track aria-hidden=true></div><span aria-hidden=true class=lens-coverage-bullet-marker>"), z = /* @__PURE__ */ h("<span class=lens-coverage-track-segment>"), se = /* @__PURE__ */ h("<div class=lens-coverage><p class=lens-coverage-headline><span class=lens-coverage-headline-value></span><span class=lens-coverage-headline-label></span></p><ul class=lens-coverage-legend>"), ce = /* @__PURE__ */ h("<div class=lens-coverage-track>"), de = /* @__PURE__ */ h("<span aria-hidden=true class=lens-coverage-legend-bullet>"), ve = /* @__PURE__ */ h("<span class=lens-coverage-legend-label>"), ue = /* @__PURE__ */ h("<span class=lens-coverage-legend-value>"), ge = /* @__PURE__ */ h("<span class=lens-coverage-legend-share>"), he = /* @__PURE__ */ h("<a class=lens-coverage-legend-link>"), me = /* @__PURE__ */ h("<li class=lens-coverage-legend-row>");
|
|
5
|
+
function be(t) {
|
|
6
|
+
if (typeof t == "number" && Number.isFinite(t)) return t;
|
|
7
|
+
if (typeof t == "string" && t.trim()) {
|
|
8
|
+
const e = Number(t);
|
|
9
|
+
if (Number.isFinite(e)) return e;
|
|
10
|
+
}
|
|
11
|
+
return 0;
|
|
12
|
+
}
|
|
13
|
+
function ke(t, e, o) {
|
|
14
|
+
const w = A(e, F(t, "label") ?? F(t, "category") ?? "label"), L = A(e, F(t, "value") ?? "value"), $ = A(e, F(t, "id")), m = e.rows.map((r) => Math.max(0, be(r[L]))), y = m.reduce((r, n) => r + n, 0);
|
|
15
|
+
return {
|
|
16
|
+
segments: e.rows.map((r, n) => {
|
|
17
|
+
const d = $ >= 0 ? B(r[$], String(n)) : String(n), i = m[n] ?? 0;
|
|
18
|
+
return {
|
|
19
|
+
key: d,
|
|
20
|
+
label: B(r[w], `#${n + 1}`),
|
|
21
|
+
value: i,
|
|
22
|
+
share: y > 0 ? i / y : 0,
|
|
23
|
+
color: o(B(r[w], d), n)
|
|
24
|
+
};
|
|
25
|
+
}),
|
|
26
|
+
total: y
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
function fe(t) {
|
|
30
|
+
var $;
|
|
31
|
+
const e = Math.max(t.total, t.target.value) * 1.04;
|
|
32
|
+
if (e <= 0) return null;
|
|
33
|
+
const o = (m) => `${(m / e * 100).toFixed(3)}%`, w = t.target.value / e, L = [($ = t.target.label) == null ? void 0 : $.trim(), t.formatValue(t.target.value)].filter(Boolean).join(" ");
|
|
34
|
+
return (() => {
|
|
35
|
+
var m = ie(), y = m.firstChild, S = y.nextSibling;
|
|
36
|
+
return c(y, f(R, {
|
|
37
|
+
get each() {
|
|
38
|
+
return t.segments;
|
|
39
|
+
},
|
|
40
|
+
children: (r) => f(M, {
|
|
41
|
+
get when() {
|
|
42
|
+
return r.value > 0;
|
|
43
|
+
},
|
|
44
|
+
get children() {
|
|
45
|
+
var n = z();
|
|
46
|
+
return n.addEventListener("pointerleave", () => t.onSegmentLeave(r.key)), n.addEventListener("pointerenter", () => t.onSegmentEnter(r.key)), _((d) => {
|
|
47
|
+
var i = t.activeSegment === r.key || void 0, x = o(r.value), p = r.color;
|
|
48
|
+
return i !== d.e && k(n, "data-highlighted", d.e = i), x !== d.t && E(n, "width", d.t = x), p !== d.a && E(n, "background", d.a = p), d;
|
|
49
|
+
}, {
|
|
50
|
+
e: void 0,
|
|
51
|
+
t: void 0,
|
|
52
|
+
a: void 0
|
|
53
|
+
}), n;
|
|
54
|
+
}
|
|
55
|
+
})
|
|
56
|
+
})), c(m, f(M, {
|
|
57
|
+
when: L,
|
|
58
|
+
get children() {
|
|
59
|
+
var r = oe();
|
|
60
|
+
return K(r, `lens-coverage-bullet-label${w > 0.5 ? " lens-coverage-bullet-label-end" : ""}`), k(r, "title", L), c(r, L), _((n) => O(r, w > 0.5 ? {
|
|
61
|
+
right: o(e - t.target.value),
|
|
62
|
+
"max-width": o(t.target.value)
|
|
63
|
+
} : {
|
|
64
|
+
left: o(t.target.value),
|
|
65
|
+
"max-width": o(e - t.target.value)
|
|
66
|
+
}, n)), r;
|
|
67
|
+
}
|
|
68
|
+
}), null), _((r) => E(S, "left", o(t.target.value))), m;
|
|
69
|
+
})();
|
|
70
|
+
}
|
|
71
|
+
function ye(t) {
|
|
72
|
+
const e = t.panel, o = Y(e.id), w = Z(), L = F(e, "value") ?? "value", $ = q(e.format[L]), m = q({
|
|
73
|
+
kind: "percent",
|
|
74
|
+
minorUnits: !1,
|
|
75
|
+
precision: 0
|
|
76
|
+
}), {
|
|
77
|
+
document: y
|
|
78
|
+
} = ee(), S = W(() => o.data ? ke(e, o.data, te(y.theme, e, {
|
|
79
|
+
labels: ae(o.data, e)
|
|
80
|
+
})) : {
|
|
81
|
+
segments: [],
|
|
82
|
+
total: 0
|
|
83
|
+
}), r = () => e.headline ?? e.total ?? S().total, n = () => S().segments.reduce((v, b) => v + (b.value > 0 ? 1 : 0), 0), d = () => n() > 1 || !!e.target && n() > 0, i = re(e), x = () => i.cardURL(o.data), p = (v) => {
|
|
84
|
+
var b;
|
|
85
|
+
return i.rowScoped ? i.urlForRow(o.data, (b = o.data) == null ? void 0 : b.rows[v]) : void 0;
|
|
86
|
+
}, [P, H] = X(), N = (v) => H(v), I = (v) => H((b) => b === v ? void 0 : b);
|
|
87
|
+
return f(ne, {
|
|
88
|
+
panel: e,
|
|
89
|
+
frame: o,
|
|
90
|
+
get children() {
|
|
91
|
+
return f(le, {
|
|
92
|
+
get href() {
|
|
93
|
+
return x();
|
|
94
|
+
},
|
|
95
|
+
get label() {
|
|
96
|
+
return e.title;
|
|
97
|
+
},
|
|
98
|
+
get onClick() {
|
|
99
|
+
return i.onClick(x());
|
|
100
|
+
},
|
|
101
|
+
get children() {
|
|
102
|
+
var v = se(), b = v.firstChild, U = b.firstChild, G = U.nextSibling, T = b.nextSibling;
|
|
103
|
+
return c(U, () => $(r())), c(G, () => w("panel.total", "Total")), c(v, (() => {
|
|
104
|
+
var s = D(() => !!(d() && !e.target));
|
|
105
|
+
return () => s() && (() => {
|
|
106
|
+
var C = ce();
|
|
107
|
+
return c(C, f(R, {
|
|
108
|
+
get each() {
|
|
109
|
+
return S().segments;
|
|
110
|
+
},
|
|
111
|
+
children: (l) => f(M, {
|
|
112
|
+
get when() {
|
|
113
|
+
return l.value > 0;
|
|
114
|
+
},
|
|
115
|
+
get children() {
|
|
116
|
+
var g = z();
|
|
117
|
+
return g.addEventListener("pointerleave", () => I(l.key)), g.addEventListener("pointerenter", () => N(l.key)), _((a) => {
|
|
118
|
+
var u = P() === l.key || void 0, V = `${l.share * 100}%`, j = l.color;
|
|
119
|
+
return u !== a.e && k(g, "data-highlighted", a.e = u), V !== a.t && E(g, "width", a.t = V), j !== a.a && E(g, "background", a.a = j), a;
|
|
120
|
+
}, {
|
|
121
|
+
e: void 0,
|
|
122
|
+
t: void 0,
|
|
123
|
+
a: void 0
|
|
124
|
+
}), g;
|
|
125
|
+
}
|
|
126
|
+
})
|
|
127
|
+
})), _((l) => {
|
|
128
|
+
var g = i.rowScoped || void 0, a = i.rowScoped ? void 0 : e.title, u = i.rowScoped ? void 0 : "img";
|
|
129
|
+
return g !== l.e && k(C, "aria-hidden", l.e = g), a !== l.t && k(C, "aria-label", l.t = a), u !== l.a && k(C, "role", l.a = u), l;
|
|
130
|
+
}, {
|
|
131
|
+
e: void 0,
|
|
132
|
+
t: void 0,
|
|
133
|
+
a: void 0
|
|
134
|
+
}), C;
|
|
135
|
+
})();
|
|
136
|
+
})(), T), c(v, (() => {
|
|
137
|
+
var s = D(() => !!(d() && e.target));
|
|
138
|
+
return () => s() && f(fe, {
|
|
139
|
+
get activeSegment() {
|
|
140
|
+
return P();
|
|
141
|
+
},
|
|
142
|
+
formatValue: $,
|
|
143
|
+
onSegmentEnter: N,
|
|
144
|
+
onSegmentLeave: I,
|
|
145
|
+
get segments() {
|
|
146
|
+
return S().segments;
|
|
147
|
+
},
|
|
148
|
+
get target() {
|
|
149
|
+
return e.target;
|
|
150
|
+
},
|
|
151
|
+
get total() {
|
|
152
|
+
return S().total;
|
|
153
|
+
}
|
|
154
|
+
});
|
|
155
|
+
})(), T), c(T, f(R, {
|
|
156
|
+
get each() {
|
|
157
|
+
return S().segments;
|
|
158
|
+
},
|
|
159
|
+
children: (s, C) => {
|
|
160
|
+
const l = p(C()), g = [(() => {
|
|
161
|
+
var a = de();
|
|
162
|
+
return _((u) => E(a, "background", s.color)), a;
|
|
163
|
+
})(), (() => {
|
|
164
|
+
var a = ve();
|
|
165
|
+
return c(a, () => s.label), _(() => k(a, "title", s.label)), a;
|
|
166
|
+
})(), (() => {
|
|
167
|
+
var a = ue();
|
|
168
|
+
return c(a, () => $(s.value)), a;
|
|
169
|
+
})(), (() => {
|
|
170
|
+
var a = ge();
|
|
171
|
+
return c(a, () => m(s.share * 100)), a;
|
|
172
|
+
})()];
|
|
173
|
+
return (() => {
|
|
174
|
+
var a = me();
|
|
175
|
+
return a.addEventListener("pointerleave", () => I(s.key)), a.addEventListener("pointerenter", () => N(s.key)), c(a, f(M, {
|
|
176
|
+
when: l,
|
|
177
|
+
fallback: g,
|
|
178
|
+
get children() {
|
|
179
|
+
var u = he();
|
|
180
|
+
return J(u, "click", i.onClick(l), !0), u.addEventListener("focus", () => N(s.key)), u.addEventListener("blur", () => I(s.key)), k(u, "href", l), c(u, g), u;
|
|
181
|
+
}
|
|
182
|
+
})), _(() => k(a, "data-highlighted", P() === s.key || void 0)), a;
|
|
183
|
+
})();
|
|
184
|
+
}
|
|
185
|
+
})), _(() => k(v, "data-segment-active", P() ? "true" : void 0)), v;
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
Q(["click"]);
|
|
192
|
+
export {
|
|
193
|
+
ye as CoveragePanel,
|
|
194
|
+
ke as buildCoverageSegments
|
|
195
|
+
};
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import { type JSX } from 'solid-js';
|
|
1
2
|
import type { LayoutGroup, LayoutItem, LayoutRow } from './contract';
|
|
3
|
+
import type { LensToolbarContext } from './LensDashboard';
|
|
2
4
|
import { type PanelRegistry } from './panels/registry';
|
|
3
5
|
import { type CalendarDate } from './controls';
|
|
4
6
|
export interface DashboardPanelsProps {
|
|
7
|
+
toolbar?: (context: LensToolbarContext) => JSX.Element;
|
|
5
8
|
registry?: PanelRegistry;
|
|
6
9
|
/** Fixed calendar "today" for deterministic stories and visual regression. */
|
|
7
10
|
filterToday?: CalendarDate;
|
|
@@ -31,6 +34,6 @@ export declare function metricColumnCount(rows: LayoutRow[]): number;
|
|
|
31
34
|
* that failed to load) while every seam still lands on a column line.
|
|
32
35
|
*/
|
|
33
36
|
export declare function metricSpans(count: number, columns: number): number[];
|
|
34
|
-
export declare function DashboardPanels(
|
|
37
|
+
export declare function DashboardPanels(props: DashboardPanelsProps): JSX.Element;
|
|
35
38
|
export {};
|
|
36
39
|
//# sourceMappingURL=DashboardPanels.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardPanels.d.ts","sourceRoot":"","sources":["../src/DashboardPanels.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DashboardPanels.d.ts","sourceRoot":"","sources":["../src/DashboardPanels.tsx"],"names":[],"mappings":"AACA,OAAO,EAWL,KAAK,GAAG,EACT,MAAM,UAAU,CAAA;AAEjB,OAAO,KAAK,EAAU,WAAW,EAAE,UAAU,EAAE,SAAS,EAAS,MAAM,YAAY,CAAA;AACnF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAGzD,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAMvE,OAAO,EAA6B,KAAK,YAAY,EAAE,MAAM,YAAY,CAAA;AAWzE,MAAM,WAAW,oBAAoB;IACnC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,GAAG,CAAC,OAAO,CAAA;IACtD,QAAQ,CAAC,EAAE,aAAa,CAAA;IACxB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,YAAY,CAAA;CAC3B;AAWD,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAgCD,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,CAE/D;AAKD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,CAY3D;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAYpE;AAigBD,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,eA0H1D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { createComponent as N, setAttribute as s, insert as l, effect as k, setStyleProperty as I, template as B } from "solid-js/web";
|
|
2
|
+
import { t as G, u as R, L as T, P as j } from "./index-DW4iQi93.js";
|
|
3
|
+
var q = /* @__PURE__ */ B('<div aria-valuemin=0 class=lens-gauge role=meter><svg aria-hidden=true class=lens-gauge-arc viewBox="0 0 120 70"><path class=lens-gauge-track d="M10 60 A50 50 0 0 1 110 60"pathLength=100></path><path class=lens-gauge-value-arc d="M10 60 A50 50 0 0 1 110 60"pathLength=100></path></svg><div class=lens-gauge-reading><strong></strong><span></span></div><div aria-hidden=true class=lens-gauge-scale><span></span><span>');
|
|
4
|
+
function z(n) {
|
|
5
|
+
if (typeof n == "number" && Number.isFinite(n)) return n;
|
|
6
|
+
if (typeof n != "string" || n.trim() === "") return;
|
|
7
|
+
const a = Number(n);
|
|
8
|
+
return Number.isFinite(a) ? a : void 0;
|
|
9
|
+
}
|
|
10
|
+
function H(n) {
|
|
11
|
+
var p, x;
|
|
12
|
+
const a = n.panel, o = G(a.id), d = R(), m = a.encoding.value, c = ((p = o.data) == null ? void 0 : p.columns.findIndex((e) => e.name === m)) ?? -1, g = () => {
|
|
13
|
+
var e, i;
|
|
14
|
+
return c >= 0 ? z((i = (e = o.data) == null ? void 0 : e.rows[0]) == null ? void 0 : i[c]) : void 0;
|
|
15
|
+
}, u = T(m ? a.format[m] : void 0), r = ((x = a.radial) == null ? void 0 : x.max) ?? 1, v = () => Math.max(0, Math.min(r, g() ?? 0)), M = () => r > 0 ? v() / r * 100 : 0, f = () => u(g()), h = u(r);
|
|
16
|
+
return N(j, {
|
|
17
|
+
panel: a,
|
|
18
|
+
frame: o,
|
|
19
|
+
get children() {
|
|
20
|
+
var e = q(), i = e.firstChild, P = i.firstChild, V = P.nextSibling, b = i.nextSibling, $ = b.firstChild, w = $.nextSibling, A = b.nextSibling, _ = A.firstChild, L = _.nextSibling;
|
|
21
|
+
return s(e, "aria-valuemax", r), l($, f), l(w, () => d("chart.gaugeRange", "of {maximum}", {
|
|
22
|
+
maximum: h
|
|
23
|
+
})), l(_, () => u(0)), l(L, h), k((t) => {
|
|
24
|
+
var F = d("chart.gaugeValue", "{name} value", {
|
|
25
|
+
name: a.title
|
|
26
|
+
}), S = v(), y = f(), C = `${M()} 100`;
|
|
27
|
+
return F !== t.e && s(e, "aria-label", t.e = F), S !== t.t && s(e, "aria-valuenow", t.t = S), y !== t.a && s(e, "aria-valuetext", t.a = y), C !== t.o && I(V, "stroke-dasharray", t.o = C), t;
|
|
28
|
+
}, {
|
|
29
|
+
e: void 0,
|
|
30
|
+
t: void 0,
|
|
31
|
+
a: void 0,
|
|
32
|
+
o: void 0
|
|
33
|
+
}), e;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
H as GaugePanel
|
|
39
|
+
};
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
import type { JSX } from 'solid-js';
|
|
1
2
|
import { type DashboardDocument } from './contract';
|
|
2
3
|
import type { CalendarDate } from './controls';
|
|
3
4
|
import { type LensThemeMode } from './runtime';
|
|
4
5
|
export interface LensDashboardProps {
|
|
6
|
+
toolbar?: (context: LensToolbarContext) => JSX.Element;
|
|
5
7
|
src?: string;
|
|
6
8
|
/**
|
|
7
9
|
* Markup the server already rendered inside the mount point (the templ
|
|
8
|
-
* skeleton).
|
|
10
|
+
* skeleton). The mount clears the container on boot, so the runtime re-inserts
|
|
9
11
|
* it while the first document is in flight.
|
|
10
12
|
*/
|
|
11
13
|
fallbackHTML?: string;
|
|
@@ -17,5 +19,8 @@ export interface LensDashboardProps {
|
|
|
17
19
|
/** Fixed calendar "today" for deterministic stories and visual regression. */
|
|
18
20
|
filterToday?: CalendarDate;
|
|
19
21
|
}
|
|
20
|
-
export
|
|
22
|
+
export interface LensToolbarContext {
|
|
23
|
+
document: DashboardDocument;
|
|
24
|
+
}
|
|
25
|
+
export declare function LensDashboard(props: LensDashboardProps): JSX.Element;
|
|
21
26
|
//# sourceMappingURL=LensDashboard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LensDashboard.d.ts","sourceRoot":"","sources":["../src/LensDashboard.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LensDashboard.d.ts","sourceRoot":"","sources":["../src/LensDashboard.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAElE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,EAA8C,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAE1F,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,GAAG,CAAC,OAAO,CAAA;IACtD,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,aAAa,CAAA;IACrB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,eAAe,CAAC,EAAE,iBAAiB,CAAA;IACnC,8EAA8E;IAC9E,WAAW,CAAC,EAAE,YAAY,CAAA;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,iBAAiB,CAAA;CAC5B;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,eAsBtD"}
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
import { createComponent as h, insert as U, effect as J, setAttribute as O, template as T } from "solid-js/web";
|
|
2
|
+
import { createSignal as x, createEffect as S, onCleanup as _, createMemo as P, Show as C } from "solid-js";
|
|
3
|
+
import { t as j, a as D, x as G, u as q, L as B, A as K, P as W } from "./index-DW4iQi93.js";
|
|
4
|
+
import { C as z } from "./ChartDataEquivalent-Uo4RCCqz.js";
|
|
5
|
+
import { C as H } from "./keys-BC7G1vyT.js";
|
|
6
|
+
var V = /* @__PURE__ */ T("<p class=lens-map-attribution role=note>");
|
|
7
|
+
const A = 5 * 1024 * 1024;
|
|
8
|
+
function X(r, e) {
|
|
9
|
+
var l, u, o, s;
|
|
10
|
+
const i = e.trim(), t = i.split(/[-_]/, 1)[0] ?? "";
|
|
11
|
+
return ((l = r.labelProperties) == null ? void 0 : l[i]) ?? ((u = r.labelProperties) == null ? void 0 : u[i.toLowerCase()]) ?? ((o = r.labelProperties) == null ? void 0 : o[t]) ?? ((s = r.labelProperties) == null ? void 0 : s[t.toLowerCase()]) ?? r.labelProperty;
|
|
12
|
+
}
|
|
13
|
+
function M(r) {
|
|
14
|
+
return r !== null && typeof r == "object" && !Array.isArray(r) ? r : void 0;
|
|
15
|
+
}
|
|
16
|
+
function N(r, e) {
|
|
17
|
+
const i = M(r);
|
|
18
|
+
if ((i == null ? void 0 : i.type) !== "FeatureCollection" || !Array.isArray(i.features) || i.features.length === 0)
|
|
19
|
+
throw new Error("Map geometry must be a non-empty GeoJSON FeatureCollection");
|
|
20
|
+
const t = /* @__PURE__ */ new Set();
|
|
21
|
+
for (const [l, u] of i.features.entries()) {
|
|
22
|
+
const o = M(u), s = M(o == null ? void 0 : o.properties), n = M(o == null ? void 0 : o.geometry);
|
|
23
|
+
if ((o == null ? void 0 : o.type) !== "Feature" || !s || !n) throw new Error(`Map feature ${l} is invalid`);
|
|
24
|
+
const a = s[e];
|
|
25
|
+
if (typeof a != "string" || a.trim() === "") throw new Error(`Map feature ${l} has no string ${e} key`);
|
|
26
|
+
if (t.has(a)) throw new Error(`Map geometry has duplicate region key ${a}`);
|
|
27
|
+
if (t.add(a), n.type !== "Polygon" && n.type !== "MultiPolygon" || n.coordinates === void 0)
|
|
28
|
+
throw new Error(`Map feature ${a} must use Polygon or MultiPolygon geometry`);
|
|
29
|
+
}
|
|
30
|
+
return r;
|
|
31
|
+
}
|
|
32
|
+
async function Y(r, e) {
|
|
33
|
+
const i = Number(r.headers.get("Content-Length"));
|
|
34
|
+
if (Number.isFinite(i) && i > e) throw new Error(`Map geometry exceeds ${e} bytes`);
|
|
35
|
+
if (!r.body) {
|
|
36
|
+
const n = new Uint8Array(await r.arrayBuffer());
|
|
37
|
+
if (n.byteLength > e) throw new Error(`Map geometry exceeds ${e} bytes`);
|
|
38
|
+
return new TextDecoder().decode(n);
|
|
39
|
+
}
|
|
40
|
+
const t = r.body.getReader(), l = [];
|
|
41
|
+
let u = 0;
|
|
42
|
+
for (; ; ) {
|
|
43
|
+
const {
|
|
44
|
+
done: n,
|
|
45
|
+
value: a
|
|
46
|
+
} = await t.read();
|
|
47
|
+
if (n) break;
|
|
48
|
+
if (u += a.byteLength, u > e)
|
|
49
|
+
throw await t.cancel(), new Error(`Map geometry exceeds ${e} bytes`);
|
|
50
|
+
l.push(a);
|
|
51
|
+
}
|
|
52
|
+
const o = new Uint8Array(u);
|
|
53
|
+
let s = 0;
|
|
54
|
+
for (const n of l)
|
|
55
|
+
o.set(n, s), s += n.byteLength;
|
|
56
|
+
return new TextDecoder().decode(o);
|
|
57
|
+
}
|
|
58
|
+
async function Q(r, e, i = fetch, t) {
|
|
59
|
+
var y;
|
|
60
|
+
const l = r.inline !== void 0, u = typeof r.url == "string" && r.url.trim() !== "";
|
|
61
|
+
if (l === u) throw new Error("Map source requires exactly one of inline or URL");
|
|
62
|
+
if (l) return N(r.inline, e);
|
|
63
|
+
const o = r.maxBytes ?? 0;
|
|
64
|
+
if (!Number.isInteger(o) || o <= 0 || o > A)
|
|
65
|
+
throw new Error(`Map source maxBytes must be between 1 and ${A}`);
|
|
66
|
+
const s = r.url;
|
|
67
|
+
if (!s.startsWith("/") || s.startsWith("//") || s.includes("\\")) throw new Error("Map source URL must be same-origin");
|
|
68
|
+
const n = typeof window > "u" ? "http://localhost" : window.location.href, a = new URL(s, n);
|
|
69
|
+
if (a.origin !== new URL(n).origin || a.hash) throw new Error("Map source URL must be same-origin");
|
|
70
|
+
const c = await i(a.pathname + a.search, {
|
|
71
|
+
credentials: "same-origin",
|
|
72
|
+
headers: {
|
|
73
|
+
Accept: "application/geo+json, application/json"
|
|
74
|
+
},
|
|
75
|
+
signal: t
|
|
76
|
+
});
|
|
77
|
+
if (!c.ok) throw new Error(`Map geometry request failed (${c.status})`);
|
|
78
|
+
if (c.url && new URL(c.url, n).origin !== a.origin) throw new Error("Map source redirected cross-origin");
|
|
79
|
+
const m = ((y = c.headers.get("Content-Type")) == null ? void 0 : y.toLowerCase()) ?? "";
|
|
80
|
+
if (m && !m.includes("json")) throw new Error("Map geometry response must be JSON");
|
|
81
|
+
const g = await Y(c, o);
|
|
82
|
+
let d;
|
|
83
|
+
try {
|
|
84
|
+
d = JSON.parse(g);
|
|
85
|
+
} catch {
|
|
86
|
+
throw new Error("Map geometry response is not valid JSON");
|
|
87
|
+
}
|
|
88
|
+
return N(d, e);
|
|
89
|
+
}
|
|
90
|
+
function Z(r, e, i) {
|
|
91
|
+
const t = r.map;
|
|
92
|
+
if (!t) return new Error("Map panel has no map config");
|
|
93
|
+
const l = e.columns.findIndex(({
|
|
94
|
+
name: n
|
|
95
|
+
}) => n === r.encoding.id), u = e.columns.findIndex(({
|
|
96
|
+
name: n
|
|
97
|
+
}) => n === r.encoding.value);
|
|
98
|
+
if (l < 0 || u < 0) return new Error("Map frame is missing its region ID or value column");
|
|
99
|
+
const o = new Set(i.features.map(({
|
|
100
|
+
properties: n
|
|
101
|
+
}) => n[t.featureProperty]).filter((n) => typeof n == "string")), s = /* @__PURE__ */ new Set();
|
|
102
|
+
for (const [n, a] of e.rows.entries()) {
|
|
103
|
+
const c = a[l];
|
|
104
|
+
if (typeof c != "string" || c.trim() === "") return new Error(`Map row ${n} has no string region key`);
|
|
105
|
+
if (s.has(c)) return new Error(`Map frame has duplicate region key ${c}`);
|
|
106
|
+
if (s.add(c), !o.has(c)) return new Error(`Map region ${c} has no GeoJSON feature`);
|
|
107
|
+
const m = a[u];
|
|
108
|
+
if (typeof m != "number" || !Number.isFinite(m)) return new Error(`Map region ${c} has no finite numeric value`);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
function ae(r) {
|
|
112
|
+
var $;
|
|
113
|
+
const e = r.panel, i = j(e.id), t = r.frame ?? i, {
|
|
114
|
+
document: l
|
|
115
|
+
} = D(), {
|
|
116
|
+
drillInto: u
|
|
117
|
+
} = G(), o = q(), s = B(e.encoding.value ? e.format[e.encoding.value] : void 0), n = K(e), [a, c] = x(0), [m, g] = x({
|
|
118
|
+
loading: !0
|
|
119
|
+
}), d = e.map, y = d ? X(d, (($ = l.meta) == null ? void 0 : $.locale) ?? "") : void 0;
|
|
120
|
+
S(() => {
|
|
121
|
+
a();
|
|
122
|
+
const f = new AbortController();
|
|
123
|
+
if (g({
|
|
124
|
+
loading: !0
|
|
125
|
+
}), !d) {
|
|
126
|
+
g({
|
|
127
|
+
loading: !1,
|
|
128
|
+
error: new Error("Map panel has no map config")
|
|
129
|
+
});
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
Q(d.source, d.featureProperty, r.fetcher, f.signal).then((p) => g({
|
|
133
|
+
loading: !1,
|
|
134
|
+
data: p
|
|
135
|
+
})).catch((p) => {
|
|
136
|
+
f.signal.aborted || (console.error(`[lens] map ${e.id} geometry failed`, p), g({
|
|
137
|
+
loading: !1,
|
|
138
|
+
error: p instanceof Error ? p : new Error("Map geometry failed")
|
|
139
|
+
}));
|
|
140
|
+
}), _(() => f.abort());
|
|
141
|
+
});
|
|
142
|
+
const b = P(() => m().data && t.data ? Z(e, t.data, m().data) : void 0);
|
|
143
|
+
S(() => {
|
|
144
|
+
b() && console.error(`[lens] map ${e.id} data join failed`, b());
|
|
145
|
+
});
|
|
146
|
+
const k = P(() => t.isLoading || t.error && !t.data || !t.data || t.data.rows.length === 0 ? t : m().loading ? {
|
|
147
|
+
...t,
|
|
148
|
+
isLoading: !0
|
|
149
|
+
} : m().error ?? b() ? {
|
|
150
|
+
isLoading: !1,
|
|
151
|
+
isStale: !1,
|
|
152
|
+
error: new Error(o("chart.error", "Unable to render chart.")),
|
|
153
|
+
retry: () => c((p) => p + 1)
|
|
154
|
+
} : t), F = P(() => {
|
|
155
|
+
if (!t.data || t.data.rows.length === 0 || !m().data || b() || !d) return;
|
|
156
|
+
const f = (p, w) => s(w);
|
|
157
|
+
return {
|
|
158
|
+
kind: "map",
|
|
159
|
+
frame: t.data,
|
|
160
|
+
encoding: e.encoding,
|
|
161
|
+
format: f,
|
|
162
|
+
formatAxis: f,
|
|
163
|
+
labels: {
|
|
164
|
+
noData: o("panel.empty", "No data")
|
|
165
|
+
},
|
|
166
|
+
theme: l.theme,
|
|
167
|
+
map: {
|
|
168
|
+
name: `lens-map:${e.id}`,
|
|
169
|
+
geoJSON: m().data,
|
|
170
|
+
featureProperty: d.featureProperty,
|
|
171
|
+
labelProperty: y,
|
|
172
|
+
fallbackLabelProperty: d.labelProperty
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
}), E = () => !!(e.drillRoot || n.action), L = (f, p, w) => {
|
|
176
|
+
if (e.drillRoot) {
|
|
177
|
+
u(f, e.id);
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
if (!t.data) return;
|
|
181
|
+
const I = t.data.columns.findIndex(({
|
|
182
|
+
name: v
|
|
183
|
+
}) => v === e.encoding.id), R = t.data.rows.find((v) => v[I] === f);
|
|
184
|
+
n.activate(n.urlForRow(t.data, R), void 0, {
|
|
185
|
+
newTab: w == null ? void 0 : w.newTab
|
|
186
|
+
});
|
|
187
|
+
};
|
|
188
|
+
return h(W, {
|
|
189
|
+
panel: e,
|
|
190
|
+
get frame() {
|
|
191
|
+
return k();
|
|
192
|
+
},
|
|
193
|
+
get children() {
|
|
194
|
+
return h(C, {
|
|
195
|
+
get when() {
|
|
196
|
+
return F();
|
|
197
|
+
},
|
|
198
|
+
children: (f) => [h(z, {
|
|
199
|
+
get actionable() {
|
|
200
|
+
return E();
|
|
201
|
+
},
|
|
202
|
+
get format() {
|
|
203
|
+
return f().format;
|
|
204
|
+
},
|
|
205
|
+
get frame() {
|
|
206
|
+
return f().frame;
|
|
207
|
+
},
|
|
208
|
+
get label() {
|
|
209
|
+
return o("chart.data", "Chart data for {name}", {
|
|
210
|
+
name: e.title
|
|
211
|
+
});
|
|
212
|
+
},
|
|
213
|
+
onSelect: L,
|
|
214
|
+
panel: e,
|
|
215
|
+
translate: o
|
|
216
|
+
}), h(H, {
|
|
217
|
+
get adapter() {
|
|
218
|
+
return r.adapter;
|
|
219
|
+
},
|
|
220
|
+
get drillable() {
|
|
221
|
+
return E();
|
|
222
|
+
},
|
|
223
|
+
get input() {
|
|
224
|
+
return f();
|
|
225
|
+
},
|
|
226
|
+
get label() {
|
|
227
|
+
return o("chart.label", "{name} chart", {
|
|
228
|
+
name: e.title
|
|
229
|
+
});
|
|
230
|
+
},
|
|
231
|
+
get onSelect() {
|
|
232
|
+
return E() ? L : void 0;
|
|
233
|
+
},
|
|
234
|
+
get panelId() {
|
|
235
|
+
return e.id;
|
|
236
|
+
}
|
|
237
|
+
}), h(C, {
|
|
238
|
+
get when() {
|
|
239
|
+
return d == null ? void 0 : d.attribution;
|
|
240
|
+
},
|
|
241
|
+
get children() {
|
|
242
|
+
var p = V();
|
|
243
|
+
return U(p, () => d == null ? void 0 : d.attribution), J(() => O(p, "aria-label", o("map.attribution", "Map attribution"))), p;
|
|
244
|
+
}
|
|
245
|
+
})]
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
export {
|
|
251
|
+
A as MAX_MAP_GEOJSON_BYTES,
|
|
252
|
+
ae as MapPanel,
|
|
253
|
+
Q as loadMapGeometry,
|
|
254
|
+
Z as mapJoinError,
|
|
255
|
+
X as resolveMapLabelProperty
|
|
256
|
+
};
|