@parallelworks/ui 0.44.0 → 0.45.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 (622) hide show
  1. package/README.md +348 -25
  2. package/dist/ai/agent/diff.d.ts +2 -1
  3. package/dist/ai/agent/diff.js +4 -12
  4. package/dist/ai/agent/diffHighlight.d.ts +1 -1
  5. package/dist/ai/agent/diffHighlight.js +4 -3
  6. package/dist/ai/agent/index.d.ts +2 -1
  7. package/dist/ai/agent/toolStrings.d.ts +37 -0
  8. package/dist/ai/agent/toolStrings.js +35 -0
  9. package/dist/ai/agent/toolfmt.d.ts +8 -3
  10. package/dist/ai/agent/toolfmt.js +50 -65
  11. package/dist/ai/ai.css +18 -31
  12. package/dist/ai/components/AllocationSelector.js +2 -2
  13. package/dist/ai/components/AttachmentManager.js +28 -29
  14. package/dist/ai/components/AttachmentUpload.js +25 -30
  15. package/dist/ai/components/BlockedGroupBanner.js +2 -2
  16. package/dist/ai/components/BranchNavigator.js +3 -4
  17. package/dist/ai/components/ChatEmptyState.js +8 -7
  18. package/dist/ai/components/ChatInput.js +10 -12
  19. package/dist/ai/components/ChatLayout.js +3 -3
  20. package/dist/ai/components/ChatMessage.js +49 -61
  21. package/dist/ai/components/ChatMessageList.js +46 -42
  22. package/dist/ai/components/ChatSidebar.js +26 -34
  23. package/dist/ai/components/ChatStage.js +1 -1
  24. package/dist/ai/components/ComposerChrome.js +3 -4
  25. package/dist/ai/components/DragOverlay.js +6 -4
  26. package/dist/ai/components/ModelSelector.js +14 -15
  27. package/dist/ai/components/PastedText.js +18 -14
  28. package/dist/ai/components/ProviderIssueBanner.js +3 -4
  29. package/dist/ai/components/Reasoning.d.ts +12 -6
  30. package/dist/ai/components/Reasoning.js +31 -18
  31. package/dist/ai/components/ShareDialog.js +25 -28
  32. package/dist/ai/components/SlashMenu.js +3 -3
  33. package/dist/ai/components/agent/ActivityLine.d.ts +0 -5
  34. package/dist/ai/components/agent/ActivityLine.js +17 -54
  35. package/dist/ai/components/agent/AgentMessageParts.js +139 -149
  36. package/dist/ai/components/conversationActions.js +16 -16
  37. package/dist/ai/core/ChatProvider.d.ts +2 -4
  38. package/dist/ai/core/ChatProvider.js +25 -38
  39. package/dist/ai/core/exportConversation.js +4 -4
  40. package/dist/ai/core/sidebarState.d.ts +8 -6
  41. package/dist/ai/core/sidebarState.js +21 -28
  42. package/dist/ai/core/useKeyboardShortcuts.js +14 -5
  43. package/dist/ai/index.d.ts +4 -5
  44. package/dist/ai/index.js +7 -7
  45. package/dist/ai/strings.d.ts +14 -31
  46. package/dist/ai/strings.js +19 -39
  47. package/dist/ai/types.d.ts +0 -5
  48. package/dist/ai/ui/ConversationSidebar.d.ts +12 -9
  49. package/dist/ai/ui/ConversationSidebar.js +43 -87
  50. package/dist/ai/ui/Markdown.d.ts +3 -6
  51. package/dist/ai/ui/Markdown.js +6 -73
  52. package/dist/ai/ui/Notice.js +10 -12
  53. package/dist/ai/ui/chip.d.ts +2 -2
  54. package/dist/ai/ui/chip.js +1 -1
  55. package/dist/ai/ui/sidebar.d.ts +4 -20
  56. package/dist/ai/ui/sidebar.js +30 -67
  57. package/dist/ai/utils.d.ts +0 -1
  58. package/dist/ai/utils.js +1 -14
  59. package/dist/brandIcons.d.ts +51 -0
  60. package/dist/brandIcons.js +75 -0
  61. package/dist/components/Avatar.d.ts +3 -1
  62. package/dist/components/Avatar.js +34 -28
  63. package/dist/components/Button.d.ts +12 -7
  64. package/dist/components/Button.js +39 -44
  65. package/dist/components/Callout.js +18 -12
  66. package/dist/components/Card.d.ts +18 -8
  67. package/dist/components/Card.js +17 -6
  68. package/dist/components/Checkbox.d.ts +9 -0
  69. package/dist/components/Checkbox.js +30 -0
  70. package/dist/components/Combobox.d.ts +9 -1
  71. package/dist/components/Combobox.js +71 -44
  72. package/dist/components/ConfirmModal.js +11 -11
  73. package/dist/components/ContextMenu.d.ts +2 -8
  74. package/dist/components/ContextMenu.js +2 -29
  75. package/dist/components/CopyToClipboard.js +17 -36
  76. package/dist/components/CreateModal.d.ts +3 -24
  77. package/dist/components/CreateModal.js +46 -113
  78. package/dist/components/DatePicker.d.ts +31 -0
  79. package/dist/components/DatePicker.js +191 -0
  80. package/dist/components/DescriptionList.js +4 -4
  81. package/dist/components/Disclosure.d.ts +34 -0
  82. package/dist/components/Disclosure.js +46 -0
  83. package/dist/components/Drawer.d.ts +47 -0
  84. package/dist/components/Drawer.js +120 -0
  85. package/dist/components/EmptyState.d.ts +15 -10
  86. package/dist/components/EmptyState.js +13 -8
  87. package/dist/components/ExternalLink.d.ts +8 -0
  88. package/dist/components/ExternalLink.js +29 -0
  89. package/dist/components/Field.d.ts +70 -0
  90. package/dist/components/Field.js +159 -0
  91. package/dist/components/HoverCard.js +11 -14
  92. package/dist/components/IconButton.d.ts +16 -13
  93. package/dist/components/IconButton.js +27 -18
  94. package/dist/components/InfoTip.js +16 -23
  95. package/dist/components/Input.d.ts +10 -9
  96. package/dist/components/Input.js +54 -96
  97. package/dist/components/LetterBadge.js +2 -2
  98. package/dist/components/Loader.d.ts +15 -8
  99. package/dist/components/Loader.js +29 -19
  100. package/dist/components/Markdown.d.ts +7 -1
  101. package/dist/components/Markdown.js +2 -0
  102. package/dist/components/MarkdownImpl.d.ts +1 -1
  103. package/dist/components/MarkdownImpl.js +55 -14
  104. package/dist/components/Menu.js +13 -15
  105. package/dist/components/MenuEntries.js +11 -16
  106. package/dist/components/Meter.d.ts +48 -0
  107. package/dist/components/Meter.js +94 -0
  108. package/dist/components/Modal.js +11 -14
  109. package/dist/components/NumberInput.d.ts +25 -0
  110. package/dist/components/NumberInput.js +55 -0
  111. package/dist/components/Overview.js +12 -10
  112. package/dist/components/PageHeader.d.ts +2 -3
  113. package/dist/components/PageHeader.js +30 -21
  114. package/dist/components/Pagination.d.ts +27 -14
  115. package/dist/components/Pagination.js +86 -25
  116. package/dist/components/Popover.d.ts +47 -0
  117. package/dist/components/Popover.js +63 -0
  118. package/dist/components/Provider.d.ts +197 -80
  119. package/dist/components/Provider.js +200 -118
  120. package/dist/components/Radio.d.ts +1 -1
  121. package/dist/components/Radio.js +4 -4
  122. package/dist/components/RefreshButton.d.ts +15 -0
  123. package/dist/components/RefreshButton.js +53 -0
  124. package/dist/components/RunStatusIcon.d.ts +12 -0
  125. package/dist/components/RunStatusIcon.js +84 -0
  126. package/dist/components/SearchInput.d.ts +16 -0
  127. package/dist/components/SearchInput.js +52 -0
  128. package/dist/components/Section.d.ts +28 -0
  129. package/dist/components/Section.js +76 -0
  130. package/dist/components/SegmentedControl.d.ts +7 -11
  131. package/dist/components/SegmentedControl.js +25 -56
  132. package/dist/components/Select.d.ts +5 -1
  133. package/dist/components/Select.js +43 -44
  134. package/dist/components/SettingModeOption.d.ts +3 -5
  135. package/dist/components/SettingModeOption.js +5 -6
  136. package/dist/components/SettingsCard.d.ts +32 -19
  137. package/dist/components/SettingsCard.js +40 -13
  138. package/dist/components/Skeleton.d.ts +22 -0
  139. package/dist/components/Skeleton.js +34 -0
  140. package/dist/components/Slider.d.ts +16 -0
  141. package/dist/components/Slider.js +30 -0
  142. package/dist/components/Sort.js +4 -6
  143. package/dist/components/StatusBadge.d.ts +3 -1
  144. package/dist/components/StatusBadge.js +9 -32
  145. package/dist/components/StatusIcons.d.ts +0 -4
  146. package/dist/components/StatusIcons.js +5 -13
  147. package/dist/components/Switch.d.ts +5 -1
  148. package/dist/components/Switch.js +23 -6
  149. package/dist/components/Table.js +13 -20
  150. package/dist/components/Tabs.d.ts +52 -0
  151. package/dist/components/Tabs.js +75 -0
  152. package/dist/components/ThemeEditor.d.ts +29 -0
  153. package/dist/components/ThemeEditor.js +397 -0
  154. package/dist/components/Toast.d.ts +57 -0
  155. package/dist/components/Toast.js +203 -0
  156. package/dist/components/Tooltip.js +12 -15
  157. package/dist/components/buttonClasses.d.ts +18 -0
  158. package/dist/components/buttonClasses.js +31 -0
  159. package/dist/components/codeTheme.d.ts +5 -0
  160. package/dist/components/codeTheme.js +93 -0
  161. package/dist/components/fieldBox.d.ts +14 -0
  162. package/dist/components/fieldBox.js +29 -0
  163. package/dist/components/floating.d.ts +26 -5
  164. package/dist/components/floating.js +31 -9
  165. package/dist/{ai/ui/codeBreaks.js → components/markdownCodeBreaks.js} +1 -1
  166. package/dist/components/persistedState.d.ts +2 -0
  167. package/dist/components/persistedState.js +63 -0
  168. package/dist/components/relativeTime.d.ts +36 -8
  169. package/dist/components/relativeTime.js +106 -23
  170. package/dist/components/segmented.d.ts +17 -0
  171. package/dist/components/segmented.js +27 -0
  172. package/dist/components/shortcutKey.d.ts +4 -0
  173. package/dist/components/shortcutKey.js +27 -0
  174. package/dist/components/splitter.d.ts +26 -0
  175. package/dist/components/splitter.js +69 -0
  176. package/dist/components/tone.d.ts +9 -0
  177. package/dist/components/tone.js +30 -0
  178. package/dist/components/useCopy.d.ts +14 -0
  179. package/dist/components/useCopy.js +31 -0
  180. package/dist/components/useCssIsDark.d.ts +2 -0
  181. package/dist/components/useCssIsDark.js +2 -1
  182. package/dist/components/useTheme.d.ts +10 -0
  183. package/dist/components/useTheme.js +40 -0
  184. package/dist/cx.d.ts +5 -0
  185. package/dist/cx.js +11 -0
  186. package/dist/editor/Editor.js +2 -2
  187. package/dist/editor/EditorField.js +7 -10
  188. package/dist/editor/FormCodePanel.js +10 -23
  189. package/dist/editor/Monaco.js +7 -4
  190. package/dist/editor/index.d.ts +1 -1
  191. package/dist/editor/index.js +2 -2
  192. package/dist/editor/themes.d.ts +4 -0
  193. package/dist/editor/themes.js +75 -76
  194. package/dist/file-explorer/FileExplorer.js +180 -187
  195. package/dist/file-explorer/FileExplorerContext.js +36 -58
  196. package/dist/file-explorer/FilePreview/CodePreviewEditor.js +2 -1
  197. package/dist/file-explorer/FilePreview/Inline.js +9 -7
  198. package/dist/file-explorer/FilePreview/StreamedBadge.js +2 -2
  199. package/dist/file-explorer/FilePreview/Viewer.js +32 -34
  200. package/dist/file-explorer/FilePreview/index.js +60 -92
  201. package/dist/file-explorer/FileRow.js +10 -15
  202. package/dist/file-explorer/FileRowsWindow.js +2 -6
  203. package/dist/file-explorer/FileTable.js +2 -2
  204. package/dist/file-explorer/FileTableHeaders.js +8 -11
  205. package/dist/file-explorer/LoadMoreRow.js +8 -9
  206. package/dist/file-explorer/TreeView.js +16 -16
  207. package/dist/file-explorer/helpers.d.ts +1 -4
  208. package/dist/file-explorer/helpers.js +101 -114
  209. package/dist/file-explorer/lib/utils.d.ts +0 -2
  210. package/dist/file-explorer/lib/utils.js +1 -25
  211. package/dist/file-explorer/toasts.js +104 -185
  212. package/dist/form/Fields/BooleanField.js +12 -14
  213. package/dist/form/Fields/CheckboxGroupField.d.ts +1 -1
  214. package/dist/form/Fields/CheckboxGroupField.js +16 -18
  215. package/dist/form/Fields/ColorField.js +11 -11
  216. package/dist/form/Fields/DropdownField.d.ts +1 -1
  217. package/dist/form/Fields/DropdownField.js +20 -36
  218. package/dist/form/Fields/DurationField.d.ts +1 -1
  219. package/dist/form/Fields/DurationField.js +36 -50
  220. package/dist/form/Fields/LabelField.js +2 -2
  221. package/dist/form/Fields/MultiDropdownField.d.ts +1 -1
  222. package/dist/form/Fields/MultiDropdownField.js +9 -14
  223. package/dist/form/Fields/NumberField.d.ts +1 -1
  224. package/dist/form/Fields/NumberField.js +13 -48
  225. package/dist/form/Fields/ObjectField.js +3 -3
  226. package/dist/form/Fields/RadioField.d.ts +1 -1
  227. package/dist/form/Fields/RadioField.js +15 -18
  228. package/dist/form/Fields/RangeField.js +34 -35
  229. package/dist/form/Fields/StringField.d.ts +1 -1
  230. package/dist/form/Fields/StringField.js +15 -25
  231. package/dist/form/Fields/TextAreaField.js +10 -15
  232. package/dist/form/Form.d.ts +7 -2
  233. package/dist/form/Form.js +144 -49
  234. package/dist/form/FormLayout.js +18 -12
  235. package/dist/form/Wizard/WizardContainer.js +44 -18
  236. package/dist/form/Wizard/WizardNavigation.d.ts +1 -1
  237. package/dist/form/Wizard/WizardNavigation.js +31 -56
  238. package/dist/form/Wizard/WizardStepIndicator.d.ts +3 -0
  239. package/dist/form/Wizard/WizardStepIndicator.js +98 -114
  240. package/dist/form/Wizard/types.d.ts +2 -2
  241. package/dist/form/fieldFrame.d.ts +7 -0
  242. package/dist/form/fieldFrame.js +19 -0
  243. package/dist/form/index.d.ts +5 -5
  244. package/dist/form/index.js +4 -6
  245. package/dist/form/layoutCSS.js +5 -4
  246. package/dist/form/types/fieldComponentTypes.d.ts +5 -3
  247. package/dist/form/useChoiceField.js +2 -3
  248. package/dist/form/useFieldValue.d.ts +3 -0
  249. package/dist/form/useFieldValue.js +24 -7
  250. package/dist/form/utils/duration.d.ts +2 -2
  251. package/dist/form/utils/duration.js +3 -3
  252. package/dist/form/utils/fieldPath.d.ts +5 -3
  253. package/dist/form/utils/fieldPath.js +18 -3
  254. package/dist/form/utils/secondaryField.d.ts +0 -7
  255. package/dist/form/utils/secondaryField.js +1 -12
  256. package/dist/form/validation.d.ts +29 -0
  257. package/dist/form/validation.js +14 -0
  258. package/dist/format.d.ts +28 -0
  259. package/dist/format.js +64 -0
  260. package/dist/graph/AnnotationBanner.js +20 -31
  261. package/dist/graph/Connectors.js +1 -1
  262. package/dist/graph/DependencyGraph.js +51 -65
  263. package/dist/graph/GraphEditor.js +24 -28
  264. package/dist/graph/GraphEditorDialogs.js +239 -245
  265. package/dist/graph/InputDialog.js +93 -112
  266. package/dist/graph/InputsEditor.js +83 -84
  267. package/dist/graph/JobSummary.js +10 -11
  268. package/dist/graph/MatrixGroup.js +3 -3
  269. package/dist/graph/ProblemsButton.js +9 -10
  270. package/dist/graph/ShortcutsButton.js +12 -17
  271. package/dist/graph/SuggestionInput.d.ts +1 -2
  272. package/dist/graph/SuggestionInput.js +1 -3
  273. package/dist/graph/TreeView.js +47 -45
  274. package/dist/graph/WorkflowSettingsDialog.js +97 -102
  275. package/dist/graph/editorChrome.js +10 -12
  276. package/dist/graph/editorFields.d.ts +19 -16
  277. package/dist/graph/editorFields.js +97 -135
  278. package/dist/graph/editorPrimitives.js +2 -2
  279. package/dist/graph/editorRows.js +22 -25
  280. package/dist/graph/editorStrings.d.ts +16 -19
  281. package/dist/graph/editorStrings.js +11 -23
  282. package/dist/graph/fieldProblems.js +2 -2
  283. package/dist/graph/graphEditorState.d.ts +4 -4
  284. package/dist/graph/inputRefs.d.ts +0 -13
  285. package/dist/graph/inputRefs.js +121 -159
  286. package/dist/graph/settingsViews.js +5 -3
  287. package/dist/graph/stepWith.js +100 -100
  288. package/dist/graph/toolbarPanel.d.ts +8 -0
  289. package/dist/graph/toolbarPanel.js +11 -0
  290. package/dist/icons.d.ts +234 -23
  291. package/dist/icons.js +249 -264
  292. package/dist/index.d.ts +38 -21
  293. package/dist/index.js +42 -21
  294. package/dist/list/ActionToolbar.d.ts +1 -5
  295. package/dist/list/ActionToolbar.js +21 -20
  296. package/dist/list/ListPage.js +7 -7
  297. package/dist/list/ListTable.d.ts +3 -2
  298. package/dist/list/ListTable.js +33 -29
  299. package/dist/list/ListViewControls.d.ts +0 -17
  300. package/dist/list/ListViewControls.js +50 -118
  301. package/dist/list/UserHoverCard.js +24 -32
  302. package/dist/list/index.d.ts +2 -4
  303. package/dist/list/index.js +3 -5
  304. package/dist/list/listSearch.d.ts +1 -1
  305. package/dist/list/listSearch.js +19 -14
  306. package/dist/list/rowMenu.js +20 -26
  307. package/dist/logviewer/LogViewer.js +268 -382
  308. package/dist/logviewer/logviewer.css +53 -41
  309. package/dist/styles/base.css +16 -40
  310. package/dist/styles/theme.css +75 -106
  311. package/dist/styles.css +1 -1
  312. package/dist/theme/color.d.ts +40 -0
  313. package/dist/theme/color.js +228 -0
  314. package/dist/theme/contrast.d.ts +42 -0
  315. package/dist/theme/contrast.js +145 -0
  316. package/dist/theme/derive.d.ts +25 -0
  317. package/dist/theme/derive.js +475 -0
  318. package/dist/theme/fit.d.ts +35 -0
  319. package/dist/theme/fit.js +185 -0
  320. package/dist/theme/index.d.ts +14 -29
  321. package/dist/theme/index.js +20 -279
  322. package/dist/theme/model.d.ts +64 -0
  323. package/dist/theme/model.js +219 -0
  324. package/package.json +9 -5
  325. package/dist/ai/ui/Avatar.d.ts +0 -7
  326. package/dist/ai/ui/Avatar.js +0 -24
  327. package/dist/components/Filter.d.ts +0 -15
  328. package/dist/components/Filter.js +0 -32
  329. package/dist/components/FilterPill.d.ts +0 -7
  330. package/dist/components/FilterPill.js +0 -14
  331. package/dist/components/Indicator.d.ts +0 -4
  332. package/dist/components/Indicator.js +0 -44
  333. package/dist/components/SectionHeader.d.ts +0 -8
  334. package/dist/components/SectionHeader.js +0 -11
  335. package/dist/components/SettingRow.d.ts +0 -18
  336. package/dist/components/SettingRow.js +0 -35
  337. package/dist/components/SettingsGroup.d.ts +0 -8
  338. package/dist/components/SettingsGroup.js +0 -17
  339. package/dist/components/ghostButton.d.ts +0 -4
  340. package/dist/components/ghostButton.js +0 -7
  341. package/dist/components/inputClasses.d.ts +0 -1
  342. package/dist/components/inputClasses.js +0 -4
  343. package/dist/duration.d.ts +0 -3
  344. package/dist/duration.js +0 -17
  345. package/dist/form/FieldGroup.d.ts +0 -11
  346. package/dist/form/FieldGroup.js +0 -36
  347. package/dist/form/FieldWrapper.d.ts +0 -16
  348. package/dist/form/FieldWrapper.js +0 -55
  349. package/dist/form/fieldContext.d.ts +0 -19
  350. package/dist/form/fieldContext.js +0 -26
  351. package/dist/graph/Collapse.d.ts +0 -7
  352. package/dist/graph/Collapse.js +0 -15
  353. package/dist/graph/ToolbarPopover.d.ts +0 -13
  354. package/dist/graph/ToolbarPopover.js +0 -39
  355. package/dist/icons/ai/AiOutlineRollback.js +0 -16
  356. package/dist/icons/bi/BiBell.js +0 -16
  357. package/dist/icons/bi/BiBellOff.js +0 -16
  358. package/dist/icons/bi/BiBuildings.js +0 -20
  359. package/dist/icons/bi/BiError.js +0 -20
  360. package/dist/icons/bi/BiExpandVertical.js +0 -16
  361. package/dist/icons/bi/BiPause.js +0 -16
  362. package/dist/icons/bi/BiPlay.js +0 -16
  363. package/dist/icons/bi/BiRedo.js +0 -16
  364. package/dist/icons/bi/BiSolidCheckShield.js +0 -16
  365. package/dist/icons/bi/BiSolidTrashAlt.js +0 -16
  366. package/dist/icons/bi/BiStop.js +0 -16
  367. package/dist/icons/bi/BiUndo.js +0 -16
  368. package/dist/icons/bs/BsArrowsCollapse.js +0 -22
  369. package/dist/icons/bs/BsBank2.js +0 -19
  370. package/dist/icons/bs/BsBriefcase.js +0 -19
  371. package/dist/icons/bs/BsBucket.js +0 -19
  372. package/dist/icons/bs/BsCalendarX.js +0 -23
  373. package/dist/icons/bs/BsChatLeft.js +0 -19
  374. package/dist/icons/bs/BsChevronDoubleDown.js +0 -29
  375. package/dist/icons/bs/BsChevronDoubleUp.js +0 -29
  376. package/dist/icons/bs/BsClipboardCheck.js +0 -34
  377. package/dist/icons/bs/BsCurrencyDollar.js +0 -19
  378. package/dist/icons/bs/BsDash.js +0 -19
  379. package/dist/icons/bs/BsFileEarmarkZip.js +0 -23
  380. package/dist/icons/bs/BsFiles.js +0 -19
  381. package/dist/icons/bs/BsGeoAlt.js +0 -23
  382. package/dist/icons/bs/BsGrid.js +0 -19
  383. package/dist/icons/bs/BsLayers.js +0 -19
  384. package/dist/icons/bs/BsLayoutThreeColumns.js +0 -19
  385. package/dist/icons/bs/BsListUl.js +0 -22
  386. package/dist/icons/bs/BsMortarboard.js +0 -23
  387. package/dist/icons/bs/BsMusicNoteBeamed.js +0 -34
  388. package/dist/icons/bs/BsOpenai.js +0 -19
  389. package/dist/icons/bs/BsPersonPlus.js +0 -26
  390. package/dist/icons/bs/BsSearch.js +0 -19
  391. package/dist/icons/bs/BsSend.js +0 -19
  392. package/dist/icons/bs/BsShieldSlash.js +0 -22
  393. package/dist/icons/bs/BsStar.js +0 -19
  394. package/dist/icons/bs/BsStarFill.js +0 -19
  395. package/dist/icons/bs/BsStopCircle.js +0 -23
  396. package/dist/icons/bs/BsTag.js +0 -23
  397. package/dist/icons/bs/BsTelephone.js +0 -19
  398. package/dist/icons/bs/BsTerminal.js +0 -23
  399. package/dist/icons/bs/BsTerminalFill.js +0 -19
  400. package/dist/icons/bs/BsThreeDots.js +0 -19
  401. package/dist/icons/bs/BsThreeDotsVertical.js +0 -19
  402. package/dist/icons/bs/BsZoomIn.js +0 -37
  403. package/dist/icons/fa/FaAmazon.js +0 -16
  404. package/dist/icons/fa/FaAngleDown.js +0 -16
  405. package/dist/icons/fa/FaAngleLeft.js +0 -16
  406. package/dist/icons/fa/FaAngleRight.js +0 -16
  407. package/dist/icons/fa/FaAngleUp.js +0 -16
  408. package/dist/icons/fa/FaArrowDown.js +0 -16
  409. package/dist/icons/fa/FaArrowLeft.js +0 -16
  410. package/dist/icons/fa/FaArrowRight.js +0 -16
  411. package/dist/icons/fa/FaArrowUp.js +0 -16
  412. package/dist/icons/fa/FaBalanceScale.js +0 -16
  413. package/dist/icons/fa/FaCaretDown.js +0 -16
  414. package/dist/icons/fa/FaCentos.js +0 -16
  415. package/dist/icons/fa/FaChartLine.js +0 -16
  416. package/dist/icons/fa/FaChartPie.js +0 -16
  417. package/dist/icons/fa/FaCheck.js +0 -16
  418. package/dist/icons/fa/FaChevronDown.js +0 -16
  419. package/dist/icons/fa/FaChevronUp.js +0 -16
  420. package/dist/icons/fa/FaChrome.js +0 -16
  421. package/dist/icons/fa/FaCircleNotch.js +0 -16
  422. package/dist/icons/fa/FaCloud.js +0 -16
  423. package/dist/icons/fa/FaCloudDownloadAlt.js +0 -16
  424. package/dist/icons/fa/FaCog.js +0 -16
  425. package/dist/icons/fa/FaCogs.js +0 -16
  426. package/dist/icons/fa/FaComments.js +0 -16
  427. package/dist/icons/fa/FaCompress.js +0 -16
  428. package/dist/icons/fa/FaDesktop.js +0 -16
  429. package/dist/icons/fa/FaDocker.js +0 -16
  430. package/dist/icons/fa/FaDollarSign.js +0 -16
  431. package/dist/icons/fa/FaEdge.js +0 -16
  432. package/dist/icons/fa/FaEdit.js +0 -16
  433. package/dist/icons/fa/FaExclamationTriangle.js +0 -16
  434. package/dist/icons/fa/FaExpand.js +0 -16
  435. package/dist/icons/fa/FaEye.js +0 -16
  436. package/dist/icons/fa/FaEyeSlash.js +0 -16
  437. package/dist/icons/fa/FaFile.js +0 -16
  438. package/dist/icons/fa/FaFilePdf.js +0 -16
  439. package/dist/icons/fa/FaFilter.js +0 -16
  440. package/dist/icons/fa/FaFirefoxBrowser.js +0 -16
  441. package/dist/icons/fa/FaFlask.js +0 -16
  442. package/dist/icons/fa/FaFolder.js +0 -16
  443. package/dist/icons/fa/FaGithub.js +0 -16
  444. package/dist/icons/fa/FaGitlab.js +0 -16
  445. package/dist/icons/fa/FaGlobe.js +0 -16
  446. package/dist/icons/fa/FaGlobeAmericas.js +0 -16
  447. package/dist/icons/fa/FaImage.js +0 -16
  448. package/dist/icons/fa/FaInfoCircle.js +0 -16
  449. package/dist/icons/fa/FaKey.js +0 -16
  450. package/dist/icons/fa/FaLayerGroup.js +0 -16
  451. package/dist/icons/fa/FaLink.js +0 -16
  452. package/dist/icons/fa/FaLinkedin.js +0 -16
  453. package/dist/icons/fa/FaLinux.js +0 -16
  454. package/dist/icons/fa/FaList.js +0 -16
  455. package/dist/icons/fa/FaLock.js +0 -16
  456. package/dist/icons/fa/FaOpenid.js +0 -16
  457. package/dist/icons/fa/FaOpera.js +0 -16
  458. package/dist/icons/fa/FaPaperclip.js +0 -16
  459. package/dist/icons/fa/FaPlus.js +0 -16
  460. package/dist/icons/fa/FaPowerOff.js +0 -16
  461. package/dist/icons/fa/FaPrint.js +0 -16
  462. package/dist/icons/fa/FaQrcode.js +0 -16
  463. package/dist/icons/fa/FaQuestionCircle.js +0 -16
  464. package/dist/icons/fa/FaRedhat.js +0 -16
  465. package/dist/icons/fa/FaRegCircle.js +0 -16
  466. package/dist/icons/fa/FaRegFileImage.js +0 -16
  467. package/dist/icons/fa/FaRegFolder.js +0 -16
  468. package/dist/icons/fa/FaRobot.js +0 -16
  469. package/dist/icons/fa/FaRocket.js +0 -16
  470. package/dist/icons/fa/FaRunning.js +0 -16
  471. package/dist/icons/fa/FaSafari.js +0 -16
  472. package/dist/icons/fa/FaSave.js +0 -16
  473. package/dist/icons/fa/FaSearch.js +0 -16
  474. package/dist/icons/fa/FaShieldAlt.js +0 -16
  475. package/dist/icons/fa/FaSlack.js +0 -16
  476. package/dist/icons/fa/FaStar.js +0 -16
  477. package/dist/icons/fa/FaStop.js +0 -16
  478. package/dist/icons/fa/FaSuse.js +0 -16
  479. package/dist/icons/fa/FaTerminal.js +0 -16
  480. package/dist/icons/fa/FaTimes.js +0 -16
  481. package/dist/icons/fa/FaUbuntu.js +0 -16
  482. package/dist/icons/fa/FaUndoAlt.js +0 -16
  483. package/dist/icons/fa/FaUnlink.js +0 -16
  484. package/dist/icons/fa/FaUser.js +0 -16
  485. package/dist/icons/fa/FaUsers.js +0 -16
  486. package/dist/icons/fa/FaWindows.js +0 -16
  487. package/dist/icons/fa6/FaApple.js +0 -16
  488. package/dist/icons/fa6/FaArrowsRotate.js +0 -16
  489. package/dist/icons/fa6/FaDebian.js +0 -16
  490. package/dist/icons/fa6/FaFilterCircleXmark.js +0 -16
  491. package/dist/icons/fa6/FaInbox.js +0 -16
  492. package/dist/icons/fa6/FaLocationDot.js +0 -16
  493. package/dist/icons/fa6/FaRegFilePdf.js +0 -16
  494. package/dist/icons/fa6/FaRegFolderOpen.js +0 -16
  495. package/dist/icons/fa6/FaUpRightFromSquare.js +0 -16
  496. package/dist/icons/fa6/FaWandMagicSparkles.js +0 -16
  497. package/dist/icons/fa6/FaXTwitter.js +0 -16
  498. package/dist/icons/fi/FiActivity.js +0 -23
  499. package/dist/icons/fi/FiAlertCircle.js +0 -49
  500. package/dist/icons/fi/FiChevronDown.js +0 -23
  501. package/dist/icons/fi/FiClock.js +0 -31
  502. package/dist/icons/fi/FiCopy.js +0 -34
  503. package/dist/icons/fi/FiDownload.js +0 -40
  504. package/dist/icons/fi/FiFile.js +0 -27
  505. package/dist/icons/fi/FiFileText.js +0 -55
  506. package/dist/icons/fi/FiHardDrive.js +0 -55
  507. package/dist/icons/fi/FiRotateCcw.js +0 -27
  508. package/dist/icons/fi/FiUpload.js +0 -40
  509. package/dist/icons/fi/FiX.js +0 -37
  510. package/dist/icons/fi/FiZap.js +0 -23
  511. package/dist/icons/gi/GiSpy.js +0 -16
  512. package/dist/icons/go/GoGitCommit.js +0 -16
  513. package/dist/icons/go/GoGitPullRequest.js +0 -20
  514. package/dist/icons/go/GoIssueOpened.js +0 -16
  515. package/dist/icons/go/GoPlus.js +0 -16
  516. package/dist/icons/go/GoRepoForked.js +0 -28
  517. package/dist/icons/go/GoSignOut.js +0 -16
  518. package/dist/icons/go/GoSkip.js +0 -20
  519. package/dist/icons/go/GoVideo.js +0 -20
  520. package/dist/icons/gr/GrCloudComputer.js +0 -20
  521. package/dist/icons/gr/GrInbox.js +0 -20
  522. package/dist/icons/gr/GrServerCluster.js +0 -20
  523. package/dist/icons/gr/GrStorage.js +0 -20
  524. package/dist/icons/gr/GrTasks.js +0 -20
  525. package/dist/icons/hi/HiCog.js +0 -24
  526. package/dist/icons/hi/HiDuplicate.js +0 -24
  527. package/dist/icons/hi/HiOutlineArchive.js +0 -26
  528. package/dist/icons/hi/HiOutlineClipboardCopy.js +0 -26
  529. package/dist/icons/hi/HiOutlineHome.js +0 -26
  530. package/dist/icons/hi/HiQuestionMarkCircle.js +0 -24
  531. package/dist/icons/hi/HiServer.js +0 -24
  532. package/dist/icons/hi2/HiMiniCheckCircle.js +0 -24
  533. package/dist/icons/hi2/HiMiniLanguage.js +0 -28
  534. package/dist/icons/hi2/HiMiniMinusCircle.js +0 -24
  535. package/dist/icons/hi2/HiMiniXCircle.js +0 -24
  536. package/dist/icons/hi2/HiSparkles.js +0 -24
  537. package/dist/icons/im/ImSpinner5.js +0 -19
  538. package/dist/icons/io/IoIosNotifications.js +0 -16
  539. package/dist/icons/io/IoMdBuild.js +0 -16
  540. package/dist/icons/io/IoMdClose.js +0 -16
  541. package/dist/icons/io5/IoCloudUploadOutline.js +0 -32
  542. package/dist/icons/io5/IoDocumentTextOutline.js +0 -31
  543. package/dist/icons/io5/IoFileTrayFullOutline.js +0 -31
  544. package/dist/icons/io5/IoHeart.js +0 -16
  545. package/dist/icons/io5/IoHeartDislike.js +0 -16
  546. package/dist/icons/io5/IoHeartOutline.js +0 -22
  547. package/dist/icons/io5/IoInformationCircleOutline.js +0 -50
  548. package/dist/icons/io5/IoSettingsOutline.js +0 -22
  549. package/dist/icons/io5/IoWarningOutline.js +0 -40
  550. package/dist/icons/lu/LuArrowRight.js +0 -27
  551. package/dist/icons/lu/LuBadgeCheck.js +0 -27
  552. package/dist/icons/lu/LuBraces.js +0 -27
  553. package/dist/icons/lu/LuBrainCircuit.js +0 -101
  554. package/dist/icons/lu/LuCalendar.js +0 -46
  555. package/dist/icons/lu/LuCheck.js +0 -23
  556. package/dist/icons/lu/LuChevronLeft.js +0 -23
  557. package/dist/icons/lu/LuChevronRight.js +0 -23
  558. package/dist/icons/lu/LuCode.js +0 -27
  559. package/dist/icons/lu/LuExternalLink.js +0 -35
  560. package/dist/icons/lu/LuEye.js +0 -31
  561. package/dist/icons/lu/LuEyeOff.js +0 -40
  562. package/dist/icons/lu/LuFolderTree.js +0 -40
  563. package/dist/icons/lu/LuIdCard.js +0 -55
  564. package/dist/icons/lu/LuKeyboard.js +0 -71
  565. package/dist/icons/lu/LuLogs.js +0 -65
  566. package/dist/icons/lu/LuMail.js +0 -33
  567. package/dist/icons/lu/LuMegaphone.js +0 -27
  568. package/dist/icons/lu/LuMoon.js +0 -23
  569. package/dist/icons/lu/LuNetwork.js +0 -63
  570. package/dist/icons/lu/LuPartyPopper.js +0 -65
  571. package/dist/icons/lu/LuSettings2.js +0 -48
  572. package/dist/icons/lu/LuSheet.js +0 -72
  573. package/dist/icons/lu/LuShield.js +0 -23
  574. package/dist/icons/lu/LuSun.js +0 -69
  575. package/dist/icons/lu/LuTextCursorInput.js +0 -45
  576. package/dist/icons/lu/LuX.js +0 -27
  577. package/dist/icons/lu/LuZoomIn.js +0 -59
  578. package/dist/icons/lu/LuZoomOut.js +0 -49
  579. package/dist/icons/md/MdClear.js +0 -23
  580. package/dist/icons/md/MdDragHandle.js +0 -23
  581. package/dist/icons/md/MdInstallDesktop.js +0 -31
  582. package/dist/icons/md/MdOutlineAttachMoney.js +0 -23
  583. package/dist/icons/md/MdOutlineMoneyOff.js +0 -23
  584. package/dist/icons/md/MdPieChart.js +0 -23
  585. package/dist/icons/md/MdRefresh.js +0 -23
  586. package/dist/icons/md/MdReplay.js +0 -23
  587. package/dist/icons/md/MdSmartphone.js +0 -23
  588. package/dist/icons/pi/PiArrowBendUpRightBold.js +0 -19
  589. package/dist/icons/pi/PiPlugsConnectedFill.js +0 -19
  590. package/dist/icons/pi/PiRectangleDashed.js +0 -19
  591. package/dist/icons/pi/PiShareBold.js +0 -19
  592. package/dist/icons/si/SiAnthropic.js +0 -19
  593. package/dist/icons/si/SiHelm.js +0 -19
  594. package/dist/icons/si/SiKubernetes.js +0 -19
  595. package/dist/icons/tb/TbAlertTriangle.js +0 -35
  596. package/dist/icons/tb/TbAlertTriangleFilled.js +0 -19
  597. package/dist/icons/tb/TbApi.js +0 -40
  598. package/dist/icons/tb/TbBrain.js +0 -50
  599. package/dist/icons/tb/TbBuildingTunnel.js +0 -65
  600. package/dist/icons/tb/TbEdit.js +0 -35
  601. package/dist/icons/tb/TbLayoutSidebar.js +0 -27
  602. package/dist/icons/tb/TbLayoutSidebarLeftCollapse.js +0 -35
  603. package/dist/icons/tb/TbLayoutSidebarRightCollapse.js +0 -35
  604. package/dist/icons/tb/TbUser.js +0 -27
  605. package/dist/icons/tb/TbUserOff.js +0 -35
  606. package/dist/icons/tb/TbWorldShare.js +0 -55
  607. package/dist/icons/tb/TbWorldWww.js +0 -65
  608. package/dist/icons/ti/TiArrowSortedDown.js +0 -20
  609. package/dist/icons/ti/TiArrowSortedUp.js +0 -20
  610. package/dist/icons/ti/TiArrowUnsorted.js +0 -20
  611. package/dist/icons/ti/TiCancel.js +0 -20
  612. package/dist/icons/vsc/VscChromeMinimize.js +0 -19
  613. package/dist/icons/vsc/VscJson.js +0 -19
  614. package/dist/icons/vsc/VscLayoutSidebarLeft.js +0 -19
  615. package/dist/icons/vsc/VscPass.js +0 -27
  616. package/dist/icons/vsc/VscSplitHorizontal.js +0 -19
  617. package/dist/icons/vsc/VscTerminalPowershell.js +0 -19
  618. package/dist/list/ListPager.d.ts +0 -14
  619. package/dist/list/ListPager.js +0 -62
  620. package/dist/list/textEntry.d.ts +0 -2
  621. package/dist/list/textEntry.js +0 -10
  622. /package/dist/{ai/ui/codeBreaks.d.ts → components/markdownCodeBreaks.d.ts} +0 -0
@@ -1,8 +1,9 @@
1
1
  import { safeUrl } from "../safeUrl.js";
2
+ import { useLocalPersistedState } from "./persistedState.js";
3
+ import { Toaster } from "./Toast.js";
2
4
  import { TooltipProvider } from "./Tooltip.js";
3
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
5
+ import { jsx, jsxs } from "react/jsx-runtime";
4
6
  import { createContext, use, useCallback, useContext, useEffect, useMemo, useState } from "react";
5
- import { useLocalStorage } from "usehooks-ts";
6
7
  //#region src/components/Provider.tsx
7
8
  var DefaultLink = ({ href, ...rest }) => /* @__PURE__ */ jsx("a", {
8
9
  href: safeUrl(href),
@@ -17,39 +18,62 @@ var defaultUseRunFile = () => ({
17
18
  isLoading: false,
18
19
  error: void 0
19
20
  });
20
- function useLocalStoragePersistedState(key, defaultValue) {
21
- const [value, setValue] = useLocalStorage(key, defaultValue);
22
- return [value, setValue];
23
- }
24
21
  var DEFAULTS = {
25
- notify: {
26
- info: () => {},
27
- success: () => {},
28
- warning: () => {},
29
- error: () => {},
30
- loading: () => "toast",
31
- update: () => {},
32
- dismiss: () => {}
33
- },
34
22
  strings: {
35
- loading: "Loading…",
36
23
  modal: {
37
- cancel: "Cancel",
38
- close: "Close",
39
- create: "Create",
40
24
  creating: "Creating…",
41
25
  addDescription: "Add description…",
42
26
  advanced: "Advanced",
43
27
  favorite: "Favorite",
44
28
  favorited: "Favorited",
45
29
  favoriteHintOn: "Your item will be favorited when it's created",
46
- favoriteHintOff: "Favorite your item when it's created",
47
- filter: "Filter"
30
+ favoriteHintOff: "Favorite your item when it's created"
48
31
  },
49
32
  common: {
33
+ cancel: "Cancel",
34
+ close: "Close",
35
+ save: "Save",
36
+ clear: "Clear",
37
+ delete: "Delete",
38
+ download: "Download",
39
+ retry: "Retry",
40
+ reset: "Reset",
41
+ apply: "Apply",
42
+ dismiss: "Dismiss",
43
+ notifications: "Notifications",
44
+ rename: "Rename",
45
+ share: "Share",
46
+ send: "Send",
47
+ filter: "Filter",
48
+ loading: "Loading…",
49
+ loadMore: "Load more",
50
+ showMore: "Show more",
51
+ showLess: "Show less",
52
+ previous: "Previous",
53
+ next: "Next",
54
+ zoomIn: "Zoom in",
55
+ zoomOut: "Zoom out",
56
+ expandAll: "Expand all",
57
+ collapseAll: "Collapse all",
58
+ moveUp: "Move up",
59
+ moveDown: "Move down",
60
+ undo: "Undo",
61
+ redo: "Redo",
62
+ duplicate: "Duplicate",
63
+ copied: "Copied",
64
+ copyToClipboard: "Copy to clipboard",
65
+ copiedToClipboard: "Copied to clipboard",
66
+ copyFailed: "Couldn't copy to the clipboard",
67
+ copyThing: (label) => `Copy ${label}`,
68
+ copiedThing: (label) => `Copied ${label}`,
69
+ copyThingFailed: (label) => `Couldn't copy ${label}`,
70
+ invalidName: "Use letters, numbers, dashes, and underscores.",
71
+ invalidNumber: "Use a number.",
50
72
  copy: "Copy",
51
- copied: "Copied!",
52
- copyFailed: "Failed to copy text to clipboard",
73
+ showValue: "Show value",
74
+ hideValue: "Hide value",
75
+ expand: "Expand",
76
+ collapse: "Collapse",
53
77
  showHiddenFields: "Show hidden fields",
54
78
  add: "Add",
55
79
  create: "Create",
@@ -58,12 +82,87 @@ var DEFAULTS = {
58
82
  remove: "Remove",
59
83
  sort: "Sort",
60
84
  userAvatar: "User avatar",
61
- moreInfo: "More information"
85
+ moreInfo: "More information",
86
+ actions: "Actions",
87
+ edit: "Edit",
88
+ submit: "Submit",
89
+ search: "Search",
90
+ clearSearch: "Clear search",
91
+ filterPlaceholder: "Filter…",
92
+ breadcrumb: "Breadcrumb",
93
+ yes: "Yes",
94
+ no: "No",
95
+ opensInNewTab: "(opens in a new tab)",
96
+ resizePanel: "Resize panel",
97
+ panelWidth: (px) => `${px} pixels wide`,
98
+ refresh: "Refresh",
99
+ refreshing: "Refreshing",
100
+ updated: (ago) => `Updated ${ago}`
62
101
  },
63
102
  dropdown: {
64
103
  select: (type) => `Select ${type}`,
65
104
  noOptionsFound: "No options found",
66
- showOptions: "Show options"
105
+ showOptions: "Show options",
106
+ add: (text) => `Add “${text}”`,
107
+ limitReached: (max) => `Up to ${max}`
108
+ },
109
+ datePicker: {
110
+ pickDate: "Pick a date",
111
+ time: "Time",
112
+ previousMonth: "Previous month",
113
+ nextMonth: "Next month"
114
+ },
115
+ theme: {
116
+ appearance: "Appearance",
117
+ light: "Light",
118
+ dark: "Dark",
119
+ system: "System",
120
+ editing: "Colors for",
121
+ presets: "Presets",
122
+ base: "Background",
123
+ accent: "Accent",
124
+ contrast: "Contrast",
125
+ contrastHelp: "Separates surfaces and strengthens text. Text always meets WCAG AA.",
126
+ customSidebar: "Custom sidebar",
127
+ sidebarBase: "Sidebar background",
128
+ sidebarAccent: "Sidebar accent",
129
+ code: "Code",
130
+ codeStyle: (style) => ({
131
+ balanced: "Balanced",
132
+ vivid: "Vivid",
133
+ muted: "Muted",
134
+ mono: "Monochrome"
135
+ })[style],
136
+ pick: (name) => `Pick ${name.toLowerCase()}`,
137
+ invalidColor: "Enter a hex color, such as #1f6feb.",
138
+ copy: "Copy theme",
139
+ copied: "theme",
140
+ import: "Import theme",
141
+ importLabel: "Theme to import",
142
+ importPlaceholder: "Paste a copied theme",
143
+ apply: "Apply",
144
+ reset: "Reset",
145
+ importError: (code, path) => ({
146
+ json: "This isn’t a copied theme: it isn’t valid JSON.",
147
+ version: "This theme is from a version this app can’t read.",
148
+ shape: `This theme is incomplete${path ? ` at ${path}` : ""}.`,
149
+ color: `${path} isn’t a color.`,
150
+ range: `${path} is out of range.`
151
+ })[code],
152
+ preview: "Preview",
153
+ previewNav: [
154
+ "Home",
155
+ "Runs",
156
+ "Settings"
157
+ ],
158
+ previewHeading: "Weekly report",
159
+ previewBody: "Twelve runs finished and two need attention.",
160
+ previewMuted: "Updated a minute ago",
161
+ previewLink: "View runs",
162
+ previewButton: "Run again",
163
+ previewSearch: "Search runs",
164
+ previewPassed: "Passed",
165
+ previewFailed: "Failed"
67
166
  },
68
167
  logviewer: {
69
168
  error: "Error:",
@@ -76,7 +175,6 @@ var DEFAULTS = {
76
175
  hideDebug: "Hide Debug",
77
176
  showDebug: "Show Debug",
78
177
  filterLogs: "Filter logs",
79
- download: "Download",
80
178
  beginningOfLog: "Beginning of log",
81
179
  loadingOlderEntries: "Loading older entries…",
82
180
  loadOlderEntries: "Load older entries",
@@ -87,12 +185,12 @@ var DEFAULTS = {
87
185
  timeRangeHelp: "Times are interpreted in your local timezone. Applying a range re-queries the log source and replaces what is loaded. Setting an end time stops live tailing until you clear it.",
88
186
  timeRangeFrom: "From",
89
187
  timeRangeTo: "To",
90
- apply: "Apply",
91
- clear: "Clear",
92
188
  invalidStartTime: "Start time is not a valid date.",
93
189
  invalidEndTime: "End time is not a valid date.",
94
190
  endBeforeStart: "End time must be after the start time.",
95
- endInFuture: "End time cannot be in the future."
191
+ endInFuture: "End time cannot be in the future.",
192
+ follow: "Follow",
193
+ following: "Following"
96
194
  },
97
195
  dag: {
98
196
  workflow: "Workflow",
@@ -100,10 +198,6 @@ var DEFAULTS = {
100
198
  status: "Status",
101
199
  runtime: "Runtime",
102
200
  submitted: "Submitted",
103
- expandAll: "Expand All",
104
- collapseAll: "Collapse All",
105
- zoomIn: "Zoom in",
106
- zoomOut: "Zoom out",
107
201
  resetView: "Reset View",
108
202
  previousGraph: "Back to the previous graph",
109
203
  nextGraph: "Forward to the next graph",
@@ -113,7 +207,23 @@ var DEFAULTS = {
113
207
  noLogFound: "No log found",
114
208
  logLoadFailed: "Log could not be loaded",
115
209
  statusLabel: (status) => status,
116
- statusReason: () => void 0
210
+ statusReason: () => void 0,
211
+ generalLog: "General log",
212
+ previousStep: "Previous step",
213
+ nextStep: "Next step",
214
+ graphView: "DAG",
215
+ treeView: "Tree",
216
+ summary: "Summary",
217
+ dependsOn: "depends on:",
218
+ subworkflow: "(subworkflow)",
219
+ annotations: "Annotations",
220
+ annotationType: {
221
+ error: "Error",
222
+ warning: "Warning",
223
+ notice: "Notice"
224
+ },
225
+ annotationSource: (job, step) => `in ${job} → ${step}`,
226
+ stepNumber: (index) => `step ${index}`
117
227
  },
118
228
  jobActions: {
119
229
  openSubworkflowLogs: "Open subworkflow logs",
@@ -130,11 +240,11 @@ var DEFAULTS = {
130
240
  select: (name) => `Select ${name}`,
131
241
  viewDetails: "View details",
132
242
  openFolder: "Open folder",
133
- delete: "Delete",
134
243
  detailsTab: "Details",
135
244
  previewTab: "Preview",
136
245
  preview: "Preview",
137
246
  openFullPreview: "Open full preview",
247
+ previewLayout: "Preview layout",
138
248
  quickLook: "Quick Look",
139
249
  fullWindow: "Full window",
140
250
  streamed: "Streamed",
@@ -152,10 +262,6 @@ var DEFAULTS = {
152
262
  unsupportedMessage: "This file type can't be previewed in the browser. Download the file to view it.",
153
263
  notebookParseError: "This notebook couldn't be parsed.",
154
264
  copyUri: "Copy URI",
155
- download: "Download",
156
- close: "Close",
157
- zoomIn: "Zoom in",
158
- zoomOut: "Zoom out",
159
265
  previousFile: "Previous file",
160
266
  nextFile: "Next file",
161
267
  csvRows: (count, columns) => `${count} rows · ${columns} columns`,
@@ -175,7 +281,6 @@ var DEFAULTS = {
175
281
  success: (name) => `Created ${name}.`,
176
282
  error: (message) => `Couldn't create folder: ${message}`,
177
283
  invalidTarget: "Select a folder before creating a new folder.",
178
- noWriteAccess: "You do not have write access to this storage.",
179
284
  unsupported: "Folder creation is not supported for this storage.",
180
285
  validation: {
181
286
  reserved: "The folder name cannot be . or ..",
@@ -184,6 +289,8 @@ var DEFAULTS = {
184
289
  }
185
290
  },
186
291
  readOnly: "Read-only",
292
+ fileLink: "file link",
293
+ uri: "URI",
187
294
  cors: {
188
295
  explanation: {
189
296
  title: "CORS Configuration Required",
@@ -191,10 +298,7 @@ var DEFAULTS = {
191
298
  action: "You can automatically configure these rules to allow access from this domain.",
192
299
  note: "Note: Changes may take up to 30 seconds to propagate."
193
300
  },
194
- actions: {
195
- retry: "Retry Connection",
196
- addRules: "Add CORS Rules"
197
- },
301
+ actions: { addRules: "Add CORS Rules" },
198
302
  propagating: {
199
303
  title: "Propagating CORS rules",
200
304
  description: "The storage provider is rolling out the new rules to its endpoints. This usually completes within a minute.",
@@ -208,13 +312,10 @@ var DEFAULTS = {
208
312
  },
209
313
  selectedCount: (count) => `${count} selected`,
210
314
  loadingMore: "Loading more items…",
211
- loadMore: "Load more",
212
- retry: "Retry",
213
315
  partialCount: (count) => `${count.toLocaleString()}+ items`,
214
316
  notFound: {
215
317
  title: (name) => `Couldn't find ${name}`,
216
- description: "It may have been moved or deleted, or it may sit further into a folder than we have listed.",
217
- retry: "Try again"
318
+ description: "It may have been moved or deleted, or it may sit further into a folder than we have listed."
218
319
  },
219
320
  treeMoreCount: (count) => `${count.toLocaleString()} more`,
220
321
  treeMoreCountPartial: (count) => `${count.toLocaleString()}+ more`,
@@ -224,10 +325,7 @@ var DEFAULTS = {
224
325
  noFilesForDownload: "No files selected for download.",
225
326
  downloadLinkFailed: "Failed to generate download link",
226
327
  fileLinkFailed: "Failed to generate file link",
227
- fileLinkCopied: "File link copied to clipboard",
228
328
  noUri: "No URI available for this file.",
229
- uriCopied: "URI copied to clipboard",
230
- uriCopyFailed: "Failed to copy URI",
231
329
  storageUnavailable: "This storage is not available at the moment. Please try again later.",
232
330
  waitForCurrentUpload: "Please wait for the current upload to finish before starting a new one.",
233
331
  waitForUpload: "Please wait for the upload to finish.",
@@ -247,25 +345,30 @@ var DEFAULTS = {
247
345
  connectFailed: "Failed to connect to storage provider. Please check your storage settings and try again.",
248
346
  corsNoStorage: "No storage selected",
249
347
  corsAdded: "CORS rules added successfully",
250
- corsPropagating: "CORS rules were added, but are still propagating. Try again in a moment."
348
+ corsPropagating: "CORS rules were added, but are still propagating. Try again in a moment.",
349
+ previewUnsupported: "Preview is not supported for this storage."
251
350
  },
252
351
  chrome: {
253
352
  explorer: "Explorer",
254
- refresh: "Refresh",
255
- collapse: "Collapse",
256
353
  upload: "Upload",
257
- download: "Download",
258
354
  downloadFromBrowser: "From browser",
259
355
  access: "Access",
260
356
  manageAccess: "Manage Access",
261
- delete: "Delete",
262
- copyToClipboard: "Copy to clipboard",
263
357
  selectAll: "Select all",
264
358
  name: "Name",
265
359
  size: "Size",
266
360
  created: "Created",
267
361
  hash: "Hash",
268
- storageIconAlt: "An icon for the storage"
362
+ storageIconAlt: "An icon for the storage",
363
+ type: "Type",
364
+ storages: "Storages",
365
+ modified: "Modified",
366
+ lastModified: "Last modified",
367
+ contentType: "Content type",
368
+ storageClass: "Storage class",
369
+ details: "Details",
370
+ selectFiles: "Select files",
371
+ selectFolder: "Select folder"
269
372
  },
270
373
  confirmUpload: {
271
374
  title: "Confirm Upload",
@@ -274,15 +377,13 @@ var DEFAULTS = {
274
377
  noPath: "No path selected",
275
378
  confirm: "Confirm",
276
379
  target: "Target:",
277
- totalSize: "Total Size:",
278
380
  sizeLimitTitle: "Upload Size Limit Exceeded",
279
381
  sizeLimitBody: (total, max) => `The total upload size (${total}) exceeds the maximum allowed limit of ${max}.`,
280
382
  sizeLimitHint: "Please reduce the number of files or upload them in smaller batches."
281
383
  },
282
384
  confirmDelete: {
283
385
  title: "Confirm Delete",
284
- text: "Are you sure you want to delete the following item(s)? Folders are deleted with everything inside them. This action cannot be undone.",
285
- action: "Delete"
386
+ text: "Are you sure you want to delete the following item(s)? Folders are deleted with everything inside them. This action cannot be undone."
286
387
  },
287
388
  empty: {
288
389
  nothingSelected: "Nothing selected",
@@ -291,7 +392,6 @@ var DEFAULTS = {
291
392
  dropHint: "Drag files or a folder here to upload.",
292
393
  readOnlyHint: "You have read-only access to this storage.",
293
394
  connectionIssue: "Connection issue",
294
- tryAgain: "Try again",
295
395
  shareThisFile: "Share this file"
296
396
  },
297
397
  upload: {
@@ -301,9 +401,7 @@ var DEFAULTS = {
301
401
  eta: "ETA:",
302
402
  uploading: "Uploading...",
303
403
  completeTitle: "Upload Complete!",
304
- completeShort: "Completed",
305
404
  failedTitle: "Upload Failed",
306
- failedShort: "Failed",
307
405
  unknownTitle: "Unknown Status",
308
406
  unknownShort: "Unknown",
309
407
  cancelled: "Cancelled",
@@ -311,7 +409,8 @@ var DEFAULTS = {
311
409
  failed: "Failed",
312
410
  totalSize: "Total size:",
313
411
  size: "Size:",
314
- calculating: "Calculating...",
412
+ calculating: "Calculating…",
413
+ almostDone: "Almost done",
315
414
  expandDetails: "Expand details",
316
415
  minimizeDetails: "Minimize details",
317
416
  sessionNotQueued: (id, status) => `Upload session with ID ${id} is not queued, current status is ${status}`,
@@ -323,17 +422,36 @@ var DEFAULTS = {
323
422
  failReasonGeneric: "The file(s) may be too large or the connection may have been interrupted.",
324
423
  refreshFailed: (name, message) => `Failed to refresh storage data for ${name}. ${message}. Please try again.`,
325
424
  unknownError: "Unknown error",
326
- overallProgress: "Overall Progress"
425
+ overallProgress: "Overall Progress",
426
+ cancelFile: (name) => `Cancel ${name}`,
427
+ confirmCancelFile: "Cancel?",
428
+ confirmCancelAll: "Cancel all uploading files?",
429
+ filesDone: (done, total) => `${done} / ${total} files done`,
430
+ progress: (uploading, done, total) => uploading > 0 ? `${uploading} uploading (${done} / ${total} done)` : `${done} / ${total} done`,
431
+ fileCount: (count) => count === 1 ? "1 file" : `${count.toLocaleString()} files`,
432
+ keepPageOpen: "Please don't refresh this page during upload to prevent any data loss."
327
433
  }
328
434
  },
329
435
  form: {
436
+ required: "Enter a value.",
437
+ checkValue: "Check this value.",
330
438
  invalidDuration: "Enter a duration as DD-HH:MM:SS or HH:MM:SS.",
331
439
  durationOutOfRange: (min, max) => `Must be between ${min} and ${max}.`,
332
440
  durationBelowMin: (min) => `Must be at least ${min}.`,
333
441
  copyTitle: (title, number) => `${title} ${number}`,
334
442
  addCopy: (title) => `+ Add ${title}`,
335
443
  removeCopy: (title) => `Remove ${title}`,
336
- steps: "Steps"
444
+ steps: "Steps",
445
+ stepOf: (number, total) => `Step ${number} of ${total}`,
446
+ allSteps: "All steps",
447
+ stepDone: "Done",
448
+ stepNeedsAttention: "Needs a fix",
449
+ previousStep: "Go to previous step",
450
+ nextStep: "Go to next step",
451
+ runWizard: "Execute",
452
+ fixErrorsToContinue: "Please fix errors before proceeding",
453
+ stepFailed: "An error occurred",
454
+ stepLabel: (number, title) => `Step ${number}: ${title}`
337
455
  },
338
456
  time: {
339
457
  now: "now",
@@ -343,10 +461,6 @@ var DEFAULTS = {
343
461
  years: (n) => `${n}y`
344
462
  },
345
463
  list: {
346
- copyMenu: "Copy",
347
- copy: (label) => `Copy ${label}`,
348
- copied: (label) => `Copied ${label}`,
349
- couldntCopy: (label) => `Couldn't copy ${label}`,
350
464
  moreActions: "More actions",
351
465
  labelName: "name",
352
466
  labelEmail: "email",
@@ -371,45 +485,14 @@ var DEFAULTS = {
371
485
  displayProperties: "Display properties",
372
486
  pinnedActions: "Pinned actions",
373
487
  pinnedActionsHelp: "Pinned actions show as quick buttons on the right of each row (on hover), alongside the ⋯ menu. Each only appears on rows where that action is available, so a row's buttons vary by its type and status.",
374
- reset: "Reset",
375
488
  none: "None",
376
- filter: "Filter",
377
- clear: "Clear",
378
489
  searchOptions: "Search options…",
379
490
  pager: (start, end, total, atLeast) => `${start}–${end} of ${total}${atLeast ? "+" : ""}`,
380
491
  perPage: "Per page",
381
492
  paginationPrevious: "Previous",
382
493
  paginationNext: "Next",
383
- paginationShowing: (name, start, end) => /* @__PURE__ */ jsxs(Fragment, { children: [
384
- "Showing ",
385
- name,
386
- " ",
387
- /* @__PURE__ */ jsx("span", {
388
- className: "font-medium",
389
- children: start
390
- }),
391
- " to",
392
- " ",
393
- /* @__PURE__ */ jsx("span", {
394
- className: "font-medium",
395
- children: end
396
- })
397
- ] }),
398
- paginationShowingTimeRange: (name, startTime, endTime) => /* @__PURE__ */ jsxs(Fragment, { children: [
399
- "Showing ",
400
- name,
401
- " from ",
402
- /* @__PURE__ */ jsx("span", {
403
- className: "font-medium",
404
- children: startTime
405
- }),
406
- " to",
407
- " ",
408
- /* @__PURE__ */ jsx("span", {
409
- className: "font-medium",
410
- children: endTime
411
- })
412
- ] })
494
+ pagination: "Pagination",
495
+ removeSearchTerm: (term) => `Remove filter ${term}`
413
496
  }
414
497
  },
415
498
  navigation: {
@@ -428,14 +511,11 @@ var DEFAULTS = {
428
511
  },
429
512
  data: {
430
513
  useRunFile: defaultUseRunFile,
431
- usePersistedState: useLocalStoragePersistedState
514
+ usePersistedState: useLocalPersistedState
432
515
  },
433
516
  slots: {}
434
517
  };
435
518
  var UIContext = createContext(DEFAULTS);
436
- function useNotify() {
437
- return useContext(UIContext).notify;
438
- }
439
519
  function useStrings() {
440
520
  return useContext(UIContext).strings;
441
521
  }
@@ -530,17 +610,12 @@ function usePersistedState(key, defaultValue) {
530
610
  const { usePersistedState: boundUsePersistedState } = useContext(UIContext).data;
531
611
  return boundUsePersistedState(key, defaultValue);
532
612
  }
533
- function UIProvider({ notify, strings, navigation, data, slots, engine, children }) {
613
+ function UIProvider({ strings, navigation, data, slots, engine, children }) {
534
614
  useEffect(() => {
535
615
  if (typeof engine === "function") loadEngine(engine);
536
616
  }, [engine]);
537
617
  const value = useMemo(() => ({
538
- notify: {
539
- ...DEFAULTS.notify,
540
- ...notify
541
- },
542
618
  strings: {
543
- loading: strings?.loading ?? DEFAULTS.strings.loading,
544
619
  modal: {
545
620
  ...DEFAULTS.strings.modal,
546
621
  ...strings?.modal
@@ -553,6 +628,14 @@ function UIProvider({ notify, strings, navigation, data, slots, engine, children
553
628
  ...DEFAULTS.strings.dropdown,
554
629
  ...strings?.dropdown
555
630
  },
631
+ datePicker: {
632
+ ...DEFAULTS.strings.datePicker,
633
+ ...strings?.datePicker
634
+ },
635
+ theme: {
636
+ ...DEFAULTS.strings.theme,
637
+ ...strings?.theme
638
+ },
556
639
  logviewer: {
557
640
  ...DEFAULTS.strings.logviewer,
558
641
  ...strings?.logviewer
@@ -601,17 +684,16 @@ function UIProvider({ notify, strings, navigation, data, slots, engine, children
601
684
  slots: slots ?? DEFAULTS.slots,
602
685
  engine
603
686
  }), [
604
- notify,
605
687
  strings,
606
688
  navigation,
607
689
  data,
608
690
  slots,
609
691
  engine
610
692
  ]);
611
- return /* @__PURE__ */ jsx(UIContext.Provider, {
693
+ return /* @__PURE__ */ jsxs(UIContext.Provider, {
612
694
  value,
613
- children: /* @__PURE__ */ jsx(TooltipProvider, { children })
695
+ children: [/* @__PURE__ */ jsx(TooltipProvider, { children }), /* @__PURE__ */ jsx(Toaster, {})]
614
696
  });
615
697
  }
616
698
  //#endregion
617
- export { UIProvider, useLink, useLoadedWorkflowEngine, useNavigation, useNotify, useOptionalWorkflowEngine, usePersistedState, useProvisionCorsRules, useRepoSuggestions, useRunFile, useSecretVariablesResolver, useSlots, useStrings, useWorkflowActions, useWorkflowEditing, useWorkflowEngine, useWorkflowEngineLoader, useWorkflowJsonResolver };
699
+ export { UIProvider, useLink, useLoadedWorkflowEngine, useNavigation, useOptionalWorkflowEngine, usePersistedState, useProvisionCorsRules, useRepoSuggestions, useRunFile, useSecretVariablesResolver, useSlots, useStrings, useWorkflowActions, useWorkflowEditing, useWorkflowEngine, useWorkflowEngineLoader, useWorkflowJsonResolver };
@@ -4,5 +4,5 @@ export interface RadioProps<Value> extends Omit<BaseRadio.Root.Props<Value>, 'cl
4
4
  className?: string | undefined;
5
5
  }
6
6
  /** One choice in a `RadioGroup`, which holds the value. Name it with an
7
- * enclosing `<label>`. */
7
+ * enclosing `<label>`, or a `FieldOption` inside a `Field`. */
8
8
  export declare function Radio<Value>({ className, ...props }: RadioProps<Value>): import("react").JSX.Element;
@@ -1,15 +1,15 @@
1
- import { clsx } from "clsx";
1
+ import { cx } from "../cx.js";
2
2
  import { jsx } from "react/jsx-runtime";
3
3
  import { Radio } from "@base-ui/react/radio";
4
4
  import { RadioGroup } from "@base-ui/react/radio-group";
5
5
  //#region src/components/Radio.tsx
6
6
  /** One choice in a `RadioGroup`, which holds the value. Name it with an
7
- * enclosing `<label>`. */
7
+ * enclosing `<label>`, or a `FieldOption` inside a `Field`. */
8
8
  function Radio$1({ className, ...props }) {
9
9
  return /* @__PURE__ */ jsx(Radio.Root, {
10
10
  ...props,
11
- className: clsx("flex size-4 shrink-0 items-center justify-center rounded-full border border-(--theme-border) bg-(--theme-input-bg) cursor-pointer outline-none transition-colors", "data-checked:border-(--theme-element) data-checked:bg-(--theme-element)", "focus-visible:ring-2 focus-visible:ring-(--theme-focus-ring) aria-invalid:border-(--theme-error)", "data-disabled:cursor-not-allowed data-disabled:opacity-50", className),
12
- children: /* @__PURE__ */ jsx(Radio.Indicator, { className: "size-1.5 rounded-full bg-(--theme-element-text)" })
11
+ className: cx("flex size-4 shrink-0 items-center justify-center rounded-full border border-(--theme-border) bg-(--theme-input-bg) cursor-pointer outline-none transition-colors", "data-checked:border-(--theme-accent) data-checked:bg-(--theme-accent)", "focus-visible:ring-2 focus-visible:ring-(--theme-focus-ring) aria-invalid:border-(--theme-error)", "data-disabled:cursor-not-allowed data-disabled:opacity-50", className),
12
+ children: /* @__PURE__ */ jsx(Radio.Indicator, { className: "size-1.5 rounded-full bg-(--theme-accent-text)" })
13
13
  });
14
14
  }
15
15
  //#endregion
@@ -0,0 +1,15 @@
1
+ import { type ButtonSize } from './buttonClasses.js';
2
+ export interface RefreshButtonProps {
3
+ /** May return a promise; the button spins until it settles. */
4
+ onRefresh: () => unknown;
5
+ /** Spins for a refresh the host tracks itself, such as a revalidation. */
6
+ refreshing?: boolean | undefined;
7
+ /** When the data was last fetched. The button then reads "Updated 5
8
+ * seconds ago" instead of "Refresh", and keeps that current. */
9
+ updatedAt?: Date | number | null | undefined;
10
+ size?: ButtonSize | undefined;
11
+ /** Only the icon shows, with "Refresh" as its name and tooltip. */
12
+ iconOnly?: boolean | undefined;
13
+ }
14
+ /** Fetches again on demand, and says so while it does, out loud too. */
15
+ export declare function RefreshButton({ onRefresh, refreshing, updatedAt, size, iconOnly, }: RefreshButtonProps): import("react").JSX.Element;
@@ -0,0 +1,53 @@
1
+ import { cx } from "../cx.js";
2
+ import { RefreshIcon } from "../icons.js";
3
+ import { buttonClasses } from "./buttonClasses.js";
4
+ import { Tooltip } from "./Tooltip.js";
5
+ import { useStrings } from "./Provider.js";
6
+ import { useRelativeTime } from "./relativeTime.js";
7
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
+ import { useEffect, useRef, useState } from "react";
9
+ //#region src/components/RefreshButton.tsx
10
+ /** Fetches again on demand, and says so while it does, out loud too. */
11
+ function RefreshButton({ onRefresh, refreshing = false, updatedAt, size = "md", iconOnly = false }) {
12
+ const { common: t } = useStrings();
13
+ const [pending, setPending] = useState(false);
14
+ const mounted = useRef(true);
15
+ useEffect(() => () => {
16
+ mounted.current = false;
17
+ }, []);
18
+ const busy = refreshing || pending;
19
+ const ago = useRelativeTime(updatedAt);
20
+ const refresh = () => {
21
+ if (busy) return;
22
+ const result = onRefresh();
23
+ if (result instanceof Promise) {
24
+ setPending(true);
25
+ result.finally(() => mounted.current && setPending(false));
26
+ }
27
+ };
28
+ const button = /* @__PURE__ */ jsxs("button", {
29
+ type: "button",
30
+ onClick: refresh,
31
+ "aria-busy": busy,
32
+ "aria-label": iconOnly ? t.refresh : void 0,
33
+ className: cx(buttonClasses({
34
+ variant: "ghost",
35
+ size,
36
+ iconOnly
37
+ }), "group aria-busy:cursor-progress"),
38
+ children: [/* @__PURE__ */ jsx(RefreshIcon, {
39
+ "aria-hidden": "true",
40
+ className: cx("shrink-0 motion-reduce:animate-none motion-reduce:transition-none", busy ? "animate-spin" : "transition-transform duration-300 group-hover:rotate-180")
41
+ }), !iconOnly && (ago ? t.updated(ago) : t.refresh)]
42
+ });
43
+ return /* @__PURE__ */ jsxs(Fragment, { children: [iconOnly ? /* @__PURE__ */ jsx(Tooltip, {
44
+ content: t.refresh,
45
+ children: button
46
+ }) : button, /* @__PURE__ */ jsx("span", {
47
+ role: "status",
48
+ className: "sr-only",
49
+ children: busy ? t.refreshing : ""
50
+ })] });
51
+ }
52
+ //#endregion
53
+ export { RefreshButton };
@@ -0,0 +1,12 @@
1
+ import type { RunStatus } from '../engine.js';
2
+ import { type Tone } from './tone.js';
3
+ /** The tone a run status reads in, so a badge that says the status in words matches the
4
+ * icon: `<StatusBadge variant={runStatusTone(status)}>`. */
5
+ export declare function runStatusTone(status: RunStatus): Tone;
6
+ /** A run's, job's or step's status as an icon in its tone, beside the name of what ran. It
7
+ * is named by `strings.dag.statusLabel`. To say the status in words, use `StatusBadge` with
8
+ * `runStatusTone`. */
9
+ export declare function RunStatusIcon({ status, className, }: {
10
+ status: RunStatus;
11
+ className?: string | undefined;
12
+ }): import("react").JSX.Element;