@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.
Files changed (347) hide show
  1. package/dist/chat-ui/PHOSPHOR-LICENSE +21 -0
  2. package/dist/chat-ui/animations/index.d.ts +4 -0
  3. package/dist/chat-ui/animations/variants.d.ts +322 -0
  4. package/dist/chat-ui/api/csrf.d.ts +20 -0
  5. package/dist/chat-ui/components/ActivityTrace.d.ts +12 -0
  6. package/dist/chat-ui/components/Alert.d.ts +13 -0
  7. package/dist/chat-ui/components/AllChatsList.d.ts +9 -0
  8. package/dist/chat-ui/components/ArchiveBanner.d.ts +9 -0
  9. package/dist/chat-ui/components/ArchivedChatList.d.ts +12 -0
  10. package/dist/chat-ui/components/AssistantMessage.d.ts +149 -0
  11. package/dist/chat-ui/components/AssistantTurnView.d.ts +25 -0
  12. package/dist/chat-ui/components/AttachmentGrid.d.ts +19 -0
  13. package/dist/chat-ui/components/AttachmentPreview.d.ts +14 -0
  14. package/dist/chat-ui/components/AttachmentUpload.d.ts +14 -0
  15. package/dist/chat-ui/components/AvatarStack.d.ts +21 -0
  16. package/dist/chat-ui/components/BiChatLayout.d.ts +19 -0
  17. package/dist/chat-ui/components/ChartCard.d.ts +17 -0
  18. package/dist/chat-ui/components/ChatHeader.d.ts +31 -0
  19. package/dist/chat-ui/components/ChatSession.d.ts +51 -0
  20. package/dist/chat-ui/components/CodeBlock.d.ts +26 -0
  21. package/dist/chat-ui/components/CodeOutputsPanel.d.ts +8 -0
  22. package/dist/chat-ui/components/CompactionDoodle.d.ts +7 -0
  23. package/dist/chat-ui/components/ConfirmModal.d.ts +23 -0
  24. package/dist/chat-ui/components/ConfirmationStep.d.ts +13 -0
  25. package/dist/chat-ui/components/DataTableCell.d.ts +11 -0
  26. package/dist/chat-ui/components/DataTableFooter.d.ts +9 -0
  27. package/dist/chat-ui/components/DataTableHeader.d.ts +15 -0
  28. package/dist/chat-ui/components/DataTableToolbar.d.ts +17 -0
  29. package/dist/chat-ui/components/DateGroupHeader.d.ts +11 -0
  30. package/dist/chat-ui/components/DateSeparator.d.ts +6 -0
  31. package/dist/chat-ui/components/DebugPanel.d.ts +7 -0
  32. package/dist/chat-ui/components/DownloadCard.d.ts +7 -0
  33. package/dist/chat-ui/components/EditableText.d.ts +30 -0
  34. package/dist/chat-ui/components/EmptyState.d.ts +19 -0
  35. package/dist/chat-ui/components/ErrorBoundary.d.ts +23 -0
  36. package/dist/chat-ui/components/FullscreenOverlay.d.ts +9 -0
  37. package/dist/chat-ui/components/ImageModal.d.ts +13 -0
  38. package/dist/chat-ui/components/InlineDialog.d.ts +16 -0
  39. package/dist/chat-ui/components/InlineQuestionForm.d.ts +7 -0
  40. package/dist/chat-ui/components/InteractiveTableCard.d.ts +18 -0
  41. package/dist/chat-ui/components/LoadingSpinner.d.ts +11 -0
  42. package/dist/chat-ui/components/MarkdownRenderer.d.ts +13 -0
  43. package/dist/chat-ui/components/Menu.d.ts +29 -0
  44. package/dist/chat-ui/components/MessageActions.d.ts +17 -0
  45. package/dist/chat-ui/components/MessageInput.d.ts +39 -0
  46. package/dist/chat-ui/components/MessageList.d.ts +12 -0
  47. package/dist/chat-ui/components/MessageQueueList.d.ts +9 -0
  48. package/dist/chat-ui/components/ModelSelector.d.ts +2 -0
  49. package/dist/chat-ui/components/PermissionGuard.d.ts +47 -0
  50. package/dist/chat-ui/components/QuestionForm.d.ts +10 -0
  51. package/dist/chat-ui/components/QuestionStep.d.ts +15 -0
  52. package/dist/chat-ui/components/RetryActionArea.d.ts +7 -0
  53. package/dist/chat-ui/components/ScreenReaderAnnouncer.d.ts +22 -0
  54. package/dist/chat-ui/components/ScrollToBottomButton.d.ts +12 -0
  55. package/dist/chat-ui/components/SearchInput.d.ts +27 -0
  56. package/dist/chat-ui/components/SessionArtifactList.d.ts +9 -0
  57. package/dist/chat-ui/components/SessionArtifactPreview.d.ts +7 -0
  58. package/dist/chat-ui/components/SessionArtifactPreviewModal.d.ts +13 -0
  59. package/dist/chat-ui/components/SessionArtifactsPanel.d.ts +13 -0
  60. package/dist/chat-ui/components/SessionItem.d.ts +18 -0
  61. package/dist/chat-ui/components/SessionMembersModal.d.ts +10 -0
  62. package/dist/chat-ui/components/SessionSkeleton.d.ts +6 -0
  63. package/dist/chat-ui/components/Sidebar.d.ts +22 -0
  64. package/dist/chat-ui/components/Skeleton.d.ts +63 -0
  65. package/dist/chat-ui/components/SkipLink.d.ts +2 -0
  66. package/dist/chat-ui/components/SourcesPanel.d.ts +7 -0
  67. package/dist/chat-ui/components/StreamError.d.ts +15 -0
  68. package/dist/chat-ui/components/StreamingCursor.d.ts +4 -0
  69. package/dist/chat-ui/components/SystemMessage.d.ts +10 -0
  70. package/dist/chat-ui/components/TabBar.d.ts +15 -0
  71. package/dist/chat-ui/components/TabbedChartGroup.d.ts +6 -0
  72. package/dist/chat-ui/components/TabbedTableGroup.d.ts +8 -0
  73. package/dist/chat-ui/components/TableExportButton.d.ts +13 -0
  74. package/dist/chat-ui/components/TableWithExport.d.ts +15 -0
  75. package/dist/chat-ui/components/Toast.d.ts +15 -0
  76. package/dist/chat-ui/components/ToastContainer.d.ts +10 -0
  77. package/dist/chat-ui/components/TouchContextMenu.d.ts +18 -0
  78. package/dist/chat-ui/components/Transition.d.ts +11 -0
  79. package/dist/chat-ui/components/TurnBubble.d.ts +51 -0
  80. package/dist/chat-ui/components/TypingIndicator.d.ts +13 -0
  81. package/dist/chat-ui/components/UserAvatar.d.ts +21 -0
  82. package/dist/chat-ui/components/UserFilter.d.ts +12 -0
  83. package/dist/chat-ui/components/UserMessage.d.ts +86 -0
  84. package/dist/chat-ui/components/UserTurnView.d.ts +25 -0
  85. package/dist/chat-ui/components/WelcomeContent.d.ts +17 -0
  86. package/dist/chat-ui/config/ConfigContext.d.ts +61 -0
  87. package/dist/chat-ui/context/ChatContext.d.ts +42 -0
  88. package/dist/chat-ui/context/IotaContext.d.ts +21 -0
  89. package/dist/chat-ui/context/chatHelpers.d.ts +18 -0
  90. package/dist/chat-ui/context/externalSnapshot.d.ts +4 -0
  91. package/dist/chat-ui/data/ArtifactManager.d.ts +23 -0
  92. package/dist/chat-ui/data/AttachmentUploader.d.ts +25 -0
  93. package/dist/chat-ui/data/HttpDataSource.d.ts +109 -0
  94. package/dist/chat-ui/data/ManagedHttpDataSource.d.ts +26 -0
  95. package/dist/chat-ui/data/MessageTransport.d.ts +88 -0
  96. package/dist/chat-ui/data/SessionManager.d.ts +52 -0
  97. package/dist/chat-ui/data/applet-rpc.d.ts +29 -0
  98. package/dist/chat-ui/data/mappers.d.ts +33 -0
  99. package/dist/chat-ui/data/openManagedEventSource.d.ts +54 -0
  100. package/dist/chat-ui/data/rpc.generated.d.ts +421 -0
  101. package/dist/chat-ui/hooks/createHorizontalSwipe.d.ts +27 -0
  102. package/dist/chat-ui/hooks/createReducedMotion.d.ts +1 -0
  103. package/dist/chat-ui/hooks/useActiveRuns.d.ts +47 -0
  104. package/dist/chat-ui/hooks/useAttachments.d.ts +80 -0
  105. package/dist/chat-ui/hooks/useAutoScroll.d.ts +51 -0
  106. package/dist/chat-ui/hooks/useBichatRouter.d.ts +40 -0
  107. package/dist/chat-ui/hooks/useBranding.d.ts +16 -0
  108. package/dist/chat-ui/hooks/useDataTable.d.ts +54 -0
  109. package/dist/chat-ui/hooks/useFocusTrap.d.ts +17 -0
  110. package/dist/chat-ui/hooks/useHttpDataSourceConfigFromApplet.d.ts +19 -0
  111. package/dist/chat-ui/hooks/useImageGallery.d.ts +67 -0
  112. package/dist/chat-ui/hooks/useKeyboardShortcuts.d.ts +23 -0
  113. package/dist/chat-ui/hooks/useLongPress.d.ts +22 -0
  114. package/dist/chat-ui/hooks/useMarkdownCopy.d.ts +46 -0
  115. package/dist/chat-ui/hooks/useMessageActions.d.ts +53 -0
  116. package/dist/chat-ui/hooks/useMessageListScroll.d.ts +22 -0
  117. package/dist/chat-ui/hooks/useModalLock.d.ts +1 -0
  118. package/dist/chat-ui/hooks/useScrollToBottom.d.ts +22 -0
  119. package/dist/chat-ui/hooks/useSidebarState.d.ts +8 -0
  120. package/dist/chat-ui/hooks/useToast.d.ts +43 -0
  121. package/dist/chat-ui/hooks/useTranslation.d.ts +4 -0
  122. package/dist/chat-ui/icons/index.d.ts +93 -0
  123. package/dist/chat-ui/icons.js +975 -0
  124. package/dist/chat-ui/index.d.ts +122 -0
  125. package/dist/chat-ui/index.js +51821 -0
  126. package/dist/chat-ui/machine/ChatMachine.d.ts +191 -0
  127. package/dist/chat-ui/machine/hitlLifecycle.d.ts +7 -0
  128. package/dist/chat-ui/machine/index.d.ts +2 -0
  129. package/dist/chat-ui/machine/selectors.d.ts +5 -0
  130. package/dist/chat-ui/machine/types.d.ts +127 -0
  131. package/dist/chat-ui/styles.css +1 -0
  132. package/dist/chat-ui/theme/themes.d.ts +6 -0
  133. package/dist/chat-ui/theme/types.d.ts +38 -0
  134. package/dist/chat-ui/types/applet/index.d.ts +82 -0
  135. package/dist/chat-ui/types/data-source.d.ts +81 -0
  136. package/dist/chat-ui/types/index.d.ts +719 -0
  137. package/dist/chat-ui/types/iota.d.ts +76 -0
  138. package/dist/chat-ui/utils/RateLimiter.d.ts +28 -0
  139. package/dist/chat-ui/utils/activitySteps.d.ts +15 -0
  140. package/dist/chat-ui/utils/artifactHelpers.d.ts +7 -0
  141. package/dist/chat-ui/utils/assistantTurnState.d.ts +4 -0
  142. package/dist/chat-ui/utils/chartSpec.d.ts +15 -0
  143. package/dist/chat-ui/utils/citationProcessor.d.ts +38 -0
  144. package/dist/chat-ui/utils/columnTypes.d.ts +9 -0
  145. package/dist/chat-ui/utils/cssLength.d.ts +1 -0
  146. package/dist/chat-ui/utils/dateFormatting.d.ts +13 -0
  147. package/dist/chat-ui/utils/debugMetrics.d.ts +5 -0
  148. package/dist/chat-ui/utils/debugModeStorage.d.ts +2 -0
  149. package/dist/chat-ui/utils/debugTrace.d.ts +4 -0
  150. package/dist/chat-ui/utils/errorDisplay.d.ts +23 -0
  151. package/dist/chat-ui/utils/eventNames.d.ts +27 -0
  152. package/dist/chat-ui/utils/fileUtils.d.ts +48 -0
  153. package/dist/chat-ui/utils/markdownMath.d.ts +9 -0
  154. package/dist/chat-ui/utils/markdownStream.d.ts +8 -0
  155. package/dist/chat-ui/utils/questionFormUtils.d.ts +18 -0
  156. package/dist/chat-ui/utils/queueStorage.d.ts +4 -0
  157. package/dist/chat-ui/utils/reasoningEffortStorage.d.ts +3 -0
  158. package/dist/chat-ui/utils/sessionGrouping.d.ts +7 -0
  159. package/dist/chat-ui/utils/sseParser.d.ts +34 -0
  160. package/dist/chat-ui/utils/tableSpec.d.ts +6 -0
  161. package/dist/chat-ui/utils/textBlocks.d.ts +43 -0
  162. package/dist/chat-ui/utils/toolLabels.d.ts +17 -0
  163. package/dist/client-host/{applet.d.ts → bichat-config.d.ts} +2 -16
  164. package/dist/client-host/bichat-config.d.ts.map +1 -0
  165. package/dist/client-host/{applet.js → bichat-config.js} +0 -8
  166. package/dist/client-host/identity.d.ts +4 -4
  167. package/dist/client-host/identity.js +2 -2
  168. package/dist/client-host/index.d.ts +7 -4
  169. package/dist/client-host/index.d.ts.map +1 -1
  170. package/dist/client-host/index.js +7 -4
  171. package/dist/client-host/solid-index.d.ts +1 -0
  172. package/dist/client-host/solid-index.d.ts.map +1 -1
  173. package/dist/client-host/solid-index.js +1 -0
  174. package/dist/client-host/solid-streaming.d.ts.map +1 -1
  175. package/dist/lens/CascadePanel-BXaSLD9I.js +700 -0
  176. package/dist/lens/ChartDataEquivalent-Uo4RCCqz.js +92 -0
  177. package/dist/lens/ChartPanel-BYIblvtO.js +981 -0
  178. package/dist/lens/CoveragePanel-CBxW7l_N.js +195 -0
  179. package/dist/lens/DashboardPanels.d.ts +4 -1
  180. package/dist/lens/DashboardPanels.d.ts.map +1 -1
  181. package/dist/lens/GaugePanel-Gm3y4QBi.js +39 -0
  182. package/dist/lens/LensDashboard.d.ts +7 -2
  183. package/dist/lens/LensDashboard.d.ts.map +1 -1
  184. package/dist/lens/MapPanel-Fr67rBRo.js +256 -0
  185. package/dist/lens/MetricFlowPanel-DFGBh3hI.js +135 -0
  186. package/dist/lens/MetricHierarchyPanel-DKiQ8e3m.js +121 -0
  187. package/dist/lens/MetricRelationshipPanel-YC3Cg9Id.js +120 -0
  188. package/dist/lens/PrintReport-BPI_jNyw.js +1876 -0
  189. package/dist/lens/TablePanel-Bh8dWK4d.js +946 -0
  190. package/dist/lens/{adapter-BwEwcw2W.js → adapter-DIzUDxuh.js} +384 -384
  191. package/dist/lens/contract/schemas.d.ts.map +1 -1
  192. package/dist/lens/contract/types.d.ts +1 -1
  193. package/dist/lens/contract/types.d.ts.map +1 -1
  194. package/dist/lens/controls/Calendar.d.ts +1 -1
  195. package/dist/lens/controls/Calendar.d.ts.map +1 -1
  196. package/dist/lens/controls/CompareFilterControl.d.ts +2 -2
  197. package/dist/lens/controls/CompareFilterControl.d.ts.map +1 -1
  198. package/dist/lens/controls/FacetFilterMenu.d.ts +2 -2
  199. package/dist/lens/controls/FacetFilterMenu.d.ts.map +1 -1
  200. package/dist/lens/controls/FilterBar.d.ts +3 -3
  201. package/dist/lens/controls/FilterBar.d.ts.map +1 -1
  202. package/dist/lens/controls/PeriodFilterControl.d.ts +2 -1
  203. package/dist/lens/controls/PeriodFilterControl.d.ts.map +1 -1
  204. package/dist/lens/controls/SegmentedFilterControl.d.ts +2 -2
  205. package/dist/lens/controls/SegmentedFilterControl.d.ts.map +1 -1
  206. package/dist/lens/controls/facetOptions.d.ts +5 -5
  207. package/dist/lens/controls/facetOptions.d.ts.map +1 -1
  208. package/dist/lens/element.d.ts +1 -1
  209. package/dist/lens/element.d.ts.map +1 -1
  210. package/dist/lens/explore/ContextMiniChart.d.ts +2 -1
  211. package/dist/lens/explore/ContextMiniChart.d.ts.map +1 -1
  212. package/dist/lens/explore/DrillOverlay.d.ts +2 -1
  213. package/dist/lens/explore/DrillOverlay.d.ts.map +1 -1
  214. package/dist/lens/explore/ExplorePanel.d.ts +2 -1
  215. package/dist/lens/explore/ExplorePanel.d.ts.map +1 -1
  216. package/dist/lens/explore/FocusContextHeader.d.ts +2 -1
  217. package/dist/lens/explore/FocusContextHeader.d.ts.map +1 -1
  218. package/dist/lens/explore/LensSelector.d.ts +2 -1
  219. package/dist/lens/explore/LensSelector.d.ts.map +1 -1
  220. package/dist/lens/explore/SourceDataDisclosure.d.ts +3 -3
  221. package/dist/lens/explore/SourceDataDisclosure.d.ts.map +1 -1
  222. package/dist/lens/icons.d.ts +36 -35
  223. package/dist/lens/icons.d.ts.map +1 -1
  224. package/dist/lens/{index-B6anZ5Pr.js → index-2qUA4koZ.js} +1 -1
  225. package/dist/lens/index-DW4iQi93.js +13171 -0
  226. package/dist/lens/index.d.ts +3 -1
  227. package/dist/lens/index.d.ts.map +1 -1
  228. package/dist/lens/index.js +14 -9
  229. package/dist/lens/{install-D5OiGDnd.js → install-C-b2Bm4Y.js} +1 -1
  230. package/dist/lens/{install-CsNOaFxV.js → install-C7rGzRvO.js} +1 -1
  231. package/dist/lens/{install-CumkiUJn.js → install-Ce8R_Bl2.js} +1 -1
  232. package/dist/lens/{install-VEXJv-Wi.js → install-Czhlaw4u.js} +1 -1
  233. package/dist/lens/keys-BC7G1vyT.js +91 -0
  234. package/dist/lens/metricViews-DSoDe0GU.js +210 -0
  235. package/dist/lens/panels/CascadePanel.d.ts +1 -1
  236. package/dist/lens/panels/CascadePanel.d.ts.map +1 -1
  237. package/dist/lens/panels/ChartDataEquivalent.d.ts +1 -1
  238. package/dist/lens/panels/ChartDataEquivalent.d.ts.map +1 -1
  239. package/dist/lens/panels/ChartHost.d.ts +1 -1
  240. package/dist/lens/panels/ChartHost.d.ts.map +1 -1
  241. package/dist/lens/panels/ChartPanel.d.ts +2 -1
  242. package/dist/lens/panels/ChartPanel.d.ts.map +1 -1
  243. package/dist/lens/panels/CopyValueButton.d.ts +1 -1
  244. package/dist/lens/panels/CopyValueButton.d.ts.map +1 -1
  245. package/dist/lens/panels/CoveragePanel.d.ts +1 -1
  246. package/dist/lens/panels/CoveragePanel.d.ts.map +1 -1
  247. package/dist/lens/panels/ExportMenu.d.ts +1 -1
  248. package/dist/lens/panels/ExportMenu.d.ts.map +1 -1
  249. package/dist/lens/panels/GaugePanel.d.ts +1 -1
  250. package/dist/lens/panels/GaugePanel.d.ts.map +1 -1
  251. package/dist/lens/panels/InfoTip.d.ts +2 -1
  252. package/dist/lens/panels/InfoTip.d.ts.map +1 -1
  253. package/dist/lens/panels/MapPanel.d.ts +1 -1
  254. package/dist/lens/panels/MapPanel.d.ts.map +1 -1
  255. package/dist/lens/panels/MetricFlowPanel.d.ts +1 -1
  256. package/dist/lens/panels/MetricFlowPanel.d.ts.map +1 -1
  257. package/dist/lens/panels/MetricHierarchyPanel.d.ts +2 -1
  258. package/dist/lens/panels/MetricHierarchyPanel.d.ts.map +1 -1
  259. package/dist/lens/panels/MetricRelationshipPanel.d.ts +1 -1
  260. package/dist/lens/panels/MetricRelationshipPanel.d.ts.map +1 -1
  261. package/dist/lens/panels/PanelExportMenu.d.ts +2 -2
  262. package/dist/lens/panels/PanelExportMenu.d.ts.map +1 -1
  263. package/dist/lens/panels/PanelFrame.d.ts +6 -6
  264. package/dist/lens/panels/PanelFrame.d.ts.map +1 -1
  265. package/dist/lens/panels/PanelOverlay.d.ts +4 -4
  266. package/dist/lens/panels/PanelOverlay.d.ts.map +1 -1
  267. package/dist/lens/panels/QualityChip.d.ts +8 -4
  268. package/dist/lens/panels/QualityChip.d.ts.map +1 -1
  269. package/dist/lens/panels/ShareSliceButton.d.ts +1 -1
  270. package/dist/lens/panels/ShareSliceButton.d.ts.map +1 -1
  271. package/dist/lens/panels/Skeleton.d.ts +13 -13
  272. package/dist/lens/panels/Skeleton.d.ts.map +1 -1
  273. package/dist/lens/panels/StatPanel.d.ts +11 -11
  274. package/dist/lens/panels/StatPanel.d.ts.map +1 -1
  275. package/dist/lens/panels/StatValueTicker.d.ts +2 -2
  276. package/dist/lens/panels/StatValueTicker.d.ts.map +1 -1
  277. package/dist/lens/panels/TablePanel.d.ts +2 -1
  278. package/dist/lens/panels/TablePanel.d.ts.map +1 -1
  279. package/dist/lens/panels/WaterfallPlot.d.ts +3 -3
  280. package/dist/lens/panels/WaterfallPlot.d.ts.map +1 -1
  281. package/dist/lens/panels/actions.d.ts +16 -13
  282. package/dist/lens/panels/actions.d.ts.map +1 -1
  283. package/dist/lens/panels/context.d.ts +5 -5
  284. package/dist/lens/panels/context.d.ts.map +1 -1
  285. package/dist/lens/panels/focusTrap.d.ts +4 -0
  286. package/dist/lens/panels/focusTrap.d.ts.map +1 -0
  287. package/dist/lens/panels/overlayContainer.d.ts +18 -0
  288. package/dist/lens/panels/overlayContainer.d.ts.map +1 -0
  289. package/dist/lens/panels/registry.d.ts +23 -23
  290. package/dist/lens/panels/registry.d.ts.map +1 -1
  291. package/dist/lens/panels/useIsClamped.d.ts +2 -2
  292. package/dist/lens/panels/useIsClamped.d.ts.map +1 -1
  293. package/dist/lens/panels/useMenuButton.d.ts +21 -14
  294. package/dist/lens/panels/useMenuButton.d.ts.map +1 -1
  295. package/dist/lens/{prefetch-C_qYKOTU.js → prefetch-Caqfl7sC.js} +2 -2
  296. package/dist/lens/{prefetchPanels-CD4C-A5q.js → prefetchPanels-B-09akeK.js} +1 -1
  297. package/dist/lens/print/PrintReport.d.ts +4 -3
  298. package/dist/lens/print/PrintReport.d.ts.map +1 -1
  299. package/dist/lens/print/formula.d.ts +3 -2
  300. package/dist/lens/print/formula.d.ts.map +1 -1
  301. package/dist/lens/print/quality.d.ts +3 -2
  302. package/dist/lens/print/quality.d.ts.map +1 -1
  303. package/dist/lens/{print-Iu804kRb.js → print-CcDZyjFC.js} +1 -1
  304. package/dist/lens/reports/contract/schemas.d.ts +17 -0
  305. package/dist/lens/reports/contract/schemas.d.ts.map +1 -0
  306. package/dist/lens/reports/contract/types.d.ts +42 -0
  307. package/dist/lens/reports/contract/types.d.ts.map +1 -0
  308. package/dist/lens/reports/draft.d.ts +28 -0
  309. package/dist/lens/reports/draft.d.ts.map +1 -0
  310. package/dist/lens/runtime/drawer.d.ts +3 -3
  311. package/dist/lens/runtime/drawer.d.ts.map +1 -1
  312. package/dist/lens/runtime/overlayContainer.d.ts +2 -2
  313. package/dist/lens/runtime/overlayContainer.d.ts.map +1 -1
  314. package/dist/lens/runtime/provider.d.ts +23 -23
  315. package/dist/lens/runtime/provider.d.ts.map +1 -1
  316. package/dist/lens/{scales-CWTA0tSQ.js → scales-DOCY7Afr.js} +1 -1
  317. package/dist/lens/style.css +1 -1
  318. package/dist/sdk-identity.cjs +3 -3
  319. package/dist/sdk-identity.js +3 -3
  320. package/dist/sdk-identity.json +2 -2
  321. package/package.json +11 -10
  322. package/dist/client-host/applet.d.ts.map +0 -1
  323. package/dist/client-host/portals.d.ts +0 -30
  324. package/dist/client-host/portals.d.ts.map +0 -1
  325. package/dist/client-host/portals.js +0 -84
  326. package/dist/client-host/route.d.ts +0 -17
  327. package/dist/client-host/route.d.ts.map +0 -1
  328. package/dist/client-host/route.js +0 -19
  329. package/dist/client-host/rpc.d.ts +0 -15
  330. package/dist/client-host/rpc.d.ts.map +0 -1
  331. package/dist/client-host/rpc.js +0 -28
  332. package/dist/lens/CascadePanel-Sd2OKQx-.js +0 -574
  333. package/dist/lens/ChartDataEquivalent-DgCAb4Ov.js +0 -53
  334. package/dist/lens/ChartPanel-CiAahY9O.js +0 -709
  335. package/dist/lens/CoveragePanel-DeeKg8gF.js +0 -131
  336. package/dist/lens/GaugePanel-8rsf_XHS.js +0 -43
  337. package/dist/lens/MapPanel-Bq0mfVCB.js +0 -179
  338. package/dist/lens/MetricFlowPanel-ZBJqPFpc.js +0 -70
  339. package/dist/lens/MetricHierarchyPanel-DStGwvVU.js +0 -72
  340. package/dist/lens/MetricRelationshipPanel-D6ItmGCS.js +0 -54
  341. package/dist/lens/PrintReport-Dr-6xXVr.js +0 -1367
  342. package/dist/lens/TablePanel-CzLP8gG0.js +0 -619
  343. package/dist/lens/index-R9mnOHaj.js +0 -11000
  344. package/dist/lens/keys-6_gqLhcv.js +0 -78
  345. package/dist/lens/metricViews-De-9pff-.js +0 -170
  346. package/dist/lens/runtime/focusTrap.d.ts +0 -4
  347. 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({ registry, filterToday }: DashboardPanelsProps): import("react/jsx-runtime").JSX.Element;
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":"AAaA,OAAO,KAAK,EAAU,WAAW,EAAE,UAAU,EAAE,SAAS,EAAS,MAAM,YAAY,CAAA;AAGnF,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAMvE,OAAO,EAA6B,KAAK,YAAY,EAAE,MAAM,YAAY,CAAA;AAOzE,MAAM,WAAW,oBAAoB;IACnC,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;AA+eD,wBAAgB,eAAe,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,oBAAoB,2CAgH9E"}
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). React clears the container on mount, so the runtime re-inserts
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 declare function LensDashboard({ src, locale, theme, csrf, fetcher, fallbackHTML, initialDocument, filterToday, }: LensDashboardProps): import("react/jsx-runtime").JSX.Element;
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":"AAEA,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,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;AAID,wBAAgB,aAAa,CAAC,EAC5B,GAAG,EAAE,MAAa,EAAE,KAAe,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,GAC/F,EAAE,kBAAkB,2CAkBpB"}
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
+ };