@burdenoff/microfe-bigconsole 2026.1006.1 → 2026.1007.10

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 (1442) hide show
  1. package/README.md +0 -22
  2. package/dist/bigconsole/AdminRoot.d.ts +1 -0
  3. package/dist/bigconsole/AdminRoot.d.ts.map +1 -0
  4. package/dist/bigconsole/AdminRoot.js +2 -0
  5. package/dist/bigconsole/AdminRoot.js.map +1 -0
  6. package/dist/bigconsole/AdminRoutes.d.ts +1 -0
  7. package/dist/bigconsole/AdminRoutes.d.ts.map +1 -0
  8. package/dist/bigconsole/AdminRoutes.js +2 -0
  9. package/dist/bigconsole/AdminRoutes.js.map +1 -0
  10. package/dist/bigconsole/BigConsoleRoot.d.ts +1 -0
  11. package/dist/bigconsole/BigConsoleRoot.d.ts.map +1 -0
  12. package/dist/bigconsole/BigConsoleRoot.js +84 -88
  13. package/dist/bigconsole/BigConsoleRoot.js.map +1 -0
  14. package/dist/bigconsole/BigConsoleRoutes.d.ts +1 -0
  15. package/dist/bigconsole/BigConsoleRoutes.d.ts.map +1 -0
  16. package/dist/bigconsole/BigConsoleRoutes.js +5 -39
  17. package/dist/bigconsole/BigConsoleRoutes.js.map +1 -0
  18. package/dist/bigconsole/assistant/assistantApi.d.ts +1 -0
  19. package/dist/bigconsole/assistant/assistantApi.d.ts.map +1 -0
  20. package/dist/bigconsole/assistant/assistantApi.js +2 -0
  21. package/dist/bigconsole/assistant/assistantApi.js.map +1 -0
  22. package/dist/bigconsole/assistant/assistantProduct.d.ts +1 -0
  23. package/dist/bigconsole/assistant/assistantProduct.d.ts.map +1 -0
  24. package/dist/bigconsole/assistant/assistantProduct.js +4 -1
  25. package/dist/bigconsole/assistant/assistantProduct.js.map +1 -0
  26. package/dist/bigconsole/assistant/assistantPrompt.d.ts +1 -0
  27. package/dist/bigconsole/assistant/assistantPrompt.d.ts.map +1 -0
  28. package/dist/bigconsole/assistant/assistantPrompt.js +2 -0
  29. package/dist/bigconsole/assistant/assistantPrompt.js.map +1 -0
  30. package/dist/bigconsole/assistant/assistantRunPersistence.d.ts +1 -0
  31. package/dist/bigconsole/assistant/assistantRunPersistence.d.ts.map +1 -0
  32. package/dist/bigconsole/assistant/assistantRunPersistence.js +2 -0
  33. package/dist/bigconsole/assistant/assistantRunPersistence.js.map +1 -0
  34. package/dist/bigconsole/assistant/assistantRunStore.d.ts +1 -0
  35. package/dist/bigconsole/assistant/assistantRunStore.d.ts.map +1 -0
  36. package/dist/bigconsole/assistant/assistantRunStore.js +2 -0
  37. package/dist/bigconsole/assistant/assistantRunStore.js.map +1 -0
  38. package/dist/bigconsole/assistant/assistantRuntime.d.ts +1 -0
  39. package/dist/bigconsole/assistant/assistantRuntime.d.ts.map +1 -0
  40. package/dist/bigconsole/assistant/assistantRuntime.js +2 -0
  41. package/dist/bigconsole/assistant/assistantRuntime.js.map +1 -0
  42. package/dist/bigconsole/assistant/attachmentExtract.d.ts +1 -0
  43. package/dist/bigconsole/assistant/attachmentExtract.d.ts.map +1 -0
  44. package/dist/bigconsole/assistant/attachmentExtract.js +2 -0
  45. package/dist/bigconsole/assistant/attachmentExtract.js.map +1 -0
  46. package/dist/bigconsole/assistant/conversationHistoryApi.d.ts +1 -0
  47. package/dist/bigconsole/assistant/conversationHistoryApi.d.ts.map +1 -0
  48. package/dist/bigconsole/assistant/conversationHistoryApi.js +2 -0
  49. package/dist/bigconsole/assistant/conversationHistoryApi.js.map +1 -0
  50. package/dist/bigconsole/assistant/createSandboxAssistantTransport.d.ts +1 -0
  51. package/dist/bigconsole/assistant/createSandboxAssistantTransport.d.ts.map +1 -0
  52. package/dist/bigconsole/assistant/createSandboxAssistantTransport.js +2 -0
  53. package/dist/bigconsole/assistant/createSandboxAssistantTransport.js.map +1 -0
  54. package/dist/bigconsole/assistant/index.d.ts +1 -0
  55. package/dist/bigconsole/assistant/index.d.ts.map +1 -0
  56. package/dist/bigconsole/assistant/modes.d.ts +1 -0
  57. package/dist/bigconsole/assistant/modes.d.ts.map +1 -0
  58. package/dist/bigconsole/assistant/modes.js +2 -0
  59. package/dist/bigconsole/assistant/modes.js.map +1 -0
  60. package/dist/bigconsole/assistant/pageContext.d.ts +1 -0
  61. package/dist/bigconsole/assistant/pageContext.d.ts.map +1 -0
  62. package/dist/bigconsole/assistant/pageContext.js +2 -0
  63. package/dist/bigconsole/assistant/pageContext.js.map +1 -0
  64. package/dist/bigconsole/assistant/previewController.d.ts +1 -0
  65. package/dist/bigconsole/assistant/previewController.d.ts.map +1 -0
  66. package/dist/bigconsole/assistant/previewController.js +2 -0
  67. package/dist/bigconsole/assistant/previewController.js.map +1 -0
  68. package/dist/bigconsole/assistant/previewMutationResult.d.ts +1 -0
  69. package/dist/bigconsole/assistant/previewMutationResult.d.ts.map +1 -0
  70. package/dist/bigconsole/assistant/previewMutationResult.js +2 -0
  71. package/dist/bigconsole/assistant/previewMutationResult.js.map +1 -0
  72. package/dist/bigconsole/assistant/previewRunAction.d.ts +1 -0
  73. package/dist/bigconsole/assistant/previewRunAction.d.ts.map +1 -0
  74. package/dist/bigconsole/assistant/previewRunAction.js +2 -0
  75. package/dist/bigconsole/assistant/previewRunAction.js.map +1 -0
  76. package/dist/bigconsole/assistant/product.d.ts +1 -0
  77. package/dist/bigconsole/assistant/product.d.ts.map +1 -0
  78. package/dist/bigconsole/assistant/product.js +2 -0
  79. package/dist/bigconsole/assistant/product.js.map +1 -0
  80. package/dist/bigconsole/assistant/recordAdapters.d.ts +1 -0
  81. package/dist/bigconsole/assistant/recordAdapters.d.ts.map +1 -0
  82. package/dist/bigconsole/assistant/recordAdapters.js +29 -26
  83. package/dist/bigconsole/assistant/recordAdapters.js.map +1 -0
  84. package/dist/bigconsole/assistant/types.d.ts +1 -0
  85. package/dist/bigconsole/assistant/types.d.ts.map +1 -0
  86. package/dist/bigconsole/assistant/useAssistantRunWorkspace.d.ts +1 -0
  87. package/dist/bigconsole/assistant/useAssistantRunWorkspace.d.ts.map +1 -0
  88. package/dist/bigconsole/assistant/useAssistantRunWorkspace.js +2 -0
  89. package/dist/bigconsole/assistant/useAssistantRunWorkspace.js.map +1 -0
  90. package/dist/bigconsole/assistant/useWorkspaceWriteAccess.d.ts +1 -0
  91. package/dist/bigconsole/assistant/useWorkspaceWriteAccess.d.ts.map +1 -0
  92. package/dist/bigconsole/assistant/useWorkspaceWriteAccess.js +2 -0
  93. package/dist/bigconsole/assistant/useWorkspaceWriteAccess.js.map +1 -0
  94. package/dist/bigconsole/components/DrilldownDashboardRenderer.d.ts +1 -0
  95. package/dist/bigconsole/components/DrilldownDashboardRenderer.d.ts.map +1 -0
  96. package/dist/bigconsole/components/DrilldownDashboardRenderer.js +2 -0
  97. package/dist/bigconsole/components/DrilldownDashboardRenderer.js.map +1 -0
  98. package/dist/bigconsole/components/DrilldownModal.d.ts +1 -0
  99. package/dist/bigconsole/components/DrilldownModal.d.ts.map +1 -0
  100. package/dist/bigconsole/components/DrilldownModal.js +2 -0
  101. package/dist/bigconsole/components/DrilldownModal.js.map +1 -0
  102. package/dist/bigconsole/components/builder/BuilderCanvas.d.ts +1 -0
  103. package/dist/bigconsole/components/builder/BuilderCanvas.d.ts.map +1 -0
  104. package/dist/bigconsole/components/builder/BuilderCanvas.js +2 -0
  105. package/dist/bigconsole/components/builder/BuilderCanvas.js.map +1 -0
  106. package/dist/bigconsole/components/builder/BuilderTopbar.d.ts +1 -0
  107. package/dist/bigconsole/components/builder/BuilderTopbar.d.ts.map +1 -0
  108. package/dist/bigconsole/components/builder/BuilderTopbar.js +2 -0
  109. package/dist/bigconsole/components/builder/BuilderTopbar.js.map +1 -0
  110. package/dist/bigconsole/components/builder/DashboardEditorShell.d.ts +1 -0
  111. package/dist/bigconsole/components/builder/DashboardEditorShell.d.ts.map +1 -0
  112. package/dist/bigconsole/components/builder/DashboardEditorShell.js +2 -0
  113. package/dist/bigconsole/components/builder/DashboardEditorShell.js.map +1 -0
  114. package/dist/bigconsole/components/builder/WidgetInspector.d.ts +1 -0
  115. package/dist/bigconsole/components/builder/WidgetInspector.d.ts.map +1 -0
  116. package/dist/bigconsole/components/builder/WidgetInspector.js +2 -0
  117. package/dist/bigconsole/components/builder/WidgetInspector.js.map +1 -0
  118. package/dist/bigconsole/components/builder/index.d.ts +1 -0
  119. package/dist/bigconsole/components/builder/index.d.ts.map +1 -0
  120. package/dist/bigconsole/components/builder/inspector/AdvancedSection.d.ts +1 -0
  121. package/dist/bigconsole/components/builder/inspector/AdvancedSection.d.ts.map +1 -0
  122. package/dist/bigconsole/components/builder/inspector/AdvancedSection.js +2 -0
  123. package/dist/bigconsole/components/builder/inspector/AdvancedSection.js.map +1 -0
  124. package/dist/bigconsole/components/builder/inspector/AppearanceSection.d.ts +1 -0
  125. package/dist/bigconsole/components/builder/inspector/AppearanceSection.d.ts.map +1 -0
  126. package/dist/bigconsole/components/builder/inspector/AppearanceSection.js +2 -0
  127. package/dist/bigconsole/components/builder/inspector/AppearanceSection.js.map +1 -0
  128. package/dist/bigconsole/components/builder/inspector/DataBindingSection.d.ts +1 -0
  129. package/dist/bigconsole/components/builder/inspector/DataBindingSection.d.ts.map +1 -0
  130. package/dist/bigconsole/components/builder/inspector/DataBindingSection.js +2 -0
  131. package/dist/bigconsole/components/builder/inspector/DataBindingSection.js.map +1 -0
  132. package/dist/bigconsole/components/builder/inspector/GeneralSection.d.ts +1 -0
  133. package/dist/bigconsole/components/builder/inspector/GeneralSection.d.ts.map +1 -0
  134. package/dist/bigconsole/components/builder/inspector/GeneralSection.js +2 -0
  135. package/dist/bigconsole/components/builder/inspector/GeneralSection.js.map +1 -0
  136. package/dist/bigconsole/components/builder/inspector/LayoutSection.d.ts +1 -0
  137. package/dist/bigconsole/components/builder/inspector/LayoutSection.d.ts.map +1 -0
  138. package/dist/bigconsole/components/builder/inspector/LayoutSection.js +2 -0
  139. package/dist/bigconsole/components/builder/inspector/LayoutSection.js.map +1 -0
  140. package/dist/bigconsole/components/builder/inspector/index.d.ts +1 -0
  141. package/dist/bigconsole/components/builder/inspector/index.d.ts.map +1 -0
  142. package/dist/bigconsole/components/common/Section.d.ts +1 -0
  143. package/dist/bigconsole/components/common/Section.d.ts.map +1 -0
  144. package/dist/bigconsole/components/common/Section.js +2 -0
  145. package/dist/bigconsole/components/common/Section.js.map +1 -0
  146. package/dist/bigconsole/components/common/index.d.ts +1 -0
  147. package/dist/bigconsole/components/common/index.d.ts.map +1 -0
  148. package/dist/bigconsole/components/common/sectionStyles.d.ts +1 -0
  149. package/dist/bigconsole/components/common/sectionStyles.d.ts.map +1 -0
  150. package/dist/bigconsole/components/common/sectionStyles.js +2 -0
  151. package/dist/bigconsole/components/common/sectionStyles.js.map +1 -0
  152. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.d.ts +1 -0
  153. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.d.ts.map +1 -0
  154. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js +2 -0
  155. package/dist/bigconsole/components/dashboard/CreateDashboardDialog.js.map +1 -0
  156. package/dist/bigconsole/components/dashboard/DashboardCanvas.d.ts +1 -0
  157. package/dist/bigconsole/components/dashboard/DashboardCanvas.d.ts.map +1 -0
  158. package/dist/bigconsole/components/dashboard/DashboardCanvas.js +2 -0
  159. package/dist/bigconsole/components/dashboard/DashboardCanvas.js.map +1 -0
  160. package/dist/bigconsole/components/dashboard/DashboardGrid.d.ts +1 -0
  161. package/dist/bigconsole/components/dashboard/DashboardGrid.d.ts.map +1 -0
  162. package/dist/bigconsole/components/dashboard/DashboardGrid.js +2 -0
  163. package/dist/bigconsole/components/dashboard/DashboardGrid.js.map +1 -0
  164. package/dist/bigconsole/components/dashboard/DashboardStatusPill.d.ts +1 -0
  165. package/dist/bigconsole/components/dashboard/DashboardStatusPill.d.ts.map +1 -0
  166. package/dist/bigconsole/components/dashboard/DashboardStatusPill.js +2 -0
  167. package/dist/bigconsole/components/dashboard/DashboardStatusPill.js.map +1 -0
  168. package/dist/bigconsole/components/dashboard/DashboardToolbar.d.ts +1 -0
  169. package/dist/bigconsole/components/dashboard/DashboardToolbar.d.ts.map +1 -0
  170. package/dist/bigconsole/components/dashboard/DashboardToolbar.js +2 -0
  171. package/dist/bigconsole/components/dashboard/DashboardToolbar.js.map +1 -0
  172. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.d.ts +1 -0
  173. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.d.ts.map +1 -0
  174. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js +64 -63
  175. package/dist/bigconsole/components/dashboard/DrilldownBreadcrumb.js.map +1 -0
  176. package/dist/bigconsole/components/dashboard/ExportDashboardDialog.d.ts +1 -0
  177. package/dist/bigconsole/components/dashboard/ExportDashboardDialog.d.ts.map +1 -0
  178. package/dist/bigconsole/components/dashboard/ExportDashboardDialog.js +2 -0
  179. package/dist/bigconsole/components/dashboard/ExportDashboardDialog.js.map +1 -0
  180. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.d.ts +1 -0
  181. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.d.ts.map +1 -0
  182. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js +2 -0
  183. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterChip.js.map +1 -0
  184. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.d.ts +1 -0
  185. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.d.ts.map +1 -0
  186. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js +2 -0
  187. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterEditor.js.map +1 -0
  188. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.d.ts +1 -0
  189. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.d.ts.map +1 -0
  190. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js +2 -0
  191. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/FilterPresetSelector.js.map +1 -0
  192. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.d.ts +1 -0
  193. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.d.ts.map +1 -0
  194. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js +2 -0
  195. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/GlobalFiltersBar.js.map +1 -0
  196. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/index.d.ts +1 -0
  197. package/dist/bigconsole/components/dashboard/GlobalFiltersBar/index.d.ts.map +1 -0
  198. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.d.ts +1 -0
  199. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.d.ts.map +1 -0
  200. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js +2 -0
  201. package/dist/bigconsole/components/dashboard/ImportDashboardDialog.js.map +1 -0
  202. package/dist/bigconsole/components/dashboard/LiveBoardBanner.d.ts +1 -0
  203. package/dist/bigconsole/components/dashboard/LiveBoardBanner.d.ts.map +1 -0
  204. package/dist/bigconsole/components/dashboard/LiveBoardBanner.js +2 -0
  205. package/dist/bigconsole/components/dashboard/LiveBoardBanner.js.map +1 -0
  206. package/dist/bigconsole/components/dashboard/LiveCanvasToggle.d.ts +1 -0
  207. package/dist/bigconsole/components/dashboard/LiveCanvasToggle.d.ts.map +1 -0
  208. package/dist/bigconsole/components/dashboard/LiveCanvasToggle.js +2 -0
  209. package/dist/bigconsole/components/dashboard/LiveCanvasToggle.js.map +1 -0
  210. package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.d.ts +1 -0
  211. package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.d.ts.map +1 -0
  212. package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.js +2 -0
  213. package/dist/bigconsole/components/dashboard/PageTabsManager/PageTabsManager.js.map +1 -0
  214. package/dist/bigconsole/components/dashboard/PageTabsManager/index.d.ts +1 -0
  215. package/dist/bigconsole/components/dashboard/PageTabsManager/index.d.ts.map +1 -0
  216. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.d.ts +1 -0
  217. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.d.ts.map +1 -0
  218. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js +2 -0
  219. package/dist/bigconsole/components/dashboard/PublishToStoreDialog.js.map +1 -0
  220. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.d.ts +1 -0
  221. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.d.ts.map +1 -0
  222. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js +2 -0
  223. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/SavedViewsDropdown.js.map +1 -0
  224. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/index.d.ts +1 -0
  225. package/dist/bigconsole/components/dashboard/SavedViewsDropdown/index.d.ts.map +1 -0
  226. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.d.ts +1 -0
  227. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.d.ts.map +1 -0
  228. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js +108 -97
  229. package/dist/bigconsole/components/dashboard/ShareDialog/EmbedTab.js.map +1 -0
  230. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.d.ts +1 -0
  231. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.d.ts.map +1 -0
  232. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js +2 -0
  233. package/dist/bigconsole/components/dashboard/ShareDialog/ShareDialog.js.map +1 -0
  234. package/dist/bigconsole/components/dashboard/ShareDialog/index.d.ts +1 -0
  235. package/dist/bigconsole/components/dashboard/ShareDialog/index.d.ts.map +1 -0
  236. package/dist/bigconsole/components/dashboard/StoreTemplatePicker.d.ts +1 -0
  237. package/dist/bigconsole/components/dashboard/StoreTemplatePicker.d.ts.map +1 -0
  238. package/dist/bigconsole/components/dashboard/StoreTemplatePicker.js +2 -0
  239. package/dist/bigconsole/components/dashboard/StoreTemplatePicker.js.map +1 -0
  240. package/dist/bigconsole/components/dashboard/TemplateInstallOptions.d.ts +1 -0
  241. package/dist/bigconsole/components/dashboard/TemplateInstallOptions.d.ts.map +1 -0
  242. package/dist/bigconsole/components/dashboard/TemplateInstallOptions.js +2 -0
  243. package/dist/bigconsole/components/dashboard/TemplateInstallOptions.js.map +1 -0
  244. package/dist/bigconsole/components/dashboard/TemplateLayoutPreview.d.ts +1 -0
  245. package/dist/bigconsole/components/dashboard/TemplateLayoutPreview.d.ts.map +1 -0
  246. package/dist/bigconsole/components/dashboard/TemplateLayoutPreview.js +2 -0
  247. package/dist/bigconsole/components/dashboard/TemplateLayoutPreview.js.map +1 -0
  248. package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.d.ts +1 -0
  249. package/dist/bigconsole/components/dashboard/TemplatePicker/TemplatePicker.d.ts.map +1 -0
  250. package/dist/bigconsole/components/dashboard/TemplatePicker/index.d.ts +1 -0
  251. package/dist/bigconsole/components/dashboard/TemplatePicker/index.d.ts.map +1 -0
  252. package/dist/bigconsole/components/dashboard/TemplateSetupBanner.d.ts +1 -0
  253. package/dist/bigconsole/components/dashboard/TemplateSetupBanner.d.ts.map +1 -0
  254. package/dist/bigconsole/components/dashboard/TemplateSetupBanner.js +2 -0
  255. package/dist/bigconsole/components/dashboard/TemplateSetupBanner.js.map +1 -0
  256. package/dist/bigconsole/components/dashboard/WidgetPalette.d.ts +1 -0
  257. package/dist/bigconsole/components/dashboard/WidgetPalette.d.ts.map +1 -0
  258. package/dist/bigconsole/components/dashboard/WidgetPalette.js +165 -165
  259. package/dist/bigconsole/components/dashboard/WidgetPalette.js.map +1 -0
  260. package/dist/bigconsole/components/dashboard/index.d.ts +1 -0
  261. package/dist/bigconsole/components/dashboard/index.d.ts.map +1 -0
  262. package/dist/bigconsole/components/datasink/AlertExecutionHistory.d.ts +1 -0
  263. package/dist/bigconsole/components/datasink/AlertExecutionHistory.d.ts.map +1 -0
  264. package/dist/bigconsole/components/datasink/AlertExecutionHistory.js +2 -0
  265. package/dist/bigconsole/components/datasink/AlertExecutionHistory.js.map +1 -0
  266. package/dist/bigconsole/components/datasink/AlertRuleEditor.d.ts +1 -0
  267. package/dist/bigconsole/components/datasink/AlertRuleEditor.d.ts.map +1 -0
  268. package/dist/bigconsole/components/datasink/AlertRuleEditor.js +2 -0
  269. package/dist/bigconsole/components/datasink/AlertRuleEditor.js.map +1 -0
  270. package/dist/bigconsole/components/datasink/CacheTTLSelector.d.ts +1 -0
  271. package/dist/bigconsole/components/datasink/CacheTTLSelector.d.ts.map +1 -0
  272. package/dist/bigconsole/components/datasink/CacheTTLSelector.js +2 -0
  273. package/dist/bigconsole/components/datasink/CacheTTLSelector.js.map +1 -0
  274. package/dist/bigconsole/components/datasink/ConfigurationForm.d.ts +1 -0
  275. package/dist/bigconsole/components/datasink/ConfigurationForm.d.ts.map +1 -0
  276. package/dist/bigconsole/components/datasink/DataPreviewPanel.d.ts +1 -0
  277. package/dist/bigconsole/components/datasink/DataPreviewPanel.d.ts.map +1 -0
  278. package/dist/bigconsole/components/datasink/DataSinkCard.d.ts +1 -0
  279. package/dist/bigconsole/components/datasink/DataSinkCard.d.ts.map +1 -0
  280. package/dist/bigconsole/components/datasink/DataSinkCard.js +2 -0
  281. package/dist/bigconsole/components/datasink/DataSinkCard.js.map +1 -0
  282. package/dist/bigconsole/components/datasink/DataSinkDataViewer.d.ts +1 -0
  283. package/dist/bigconsole/components/datasink/DataSinkDataViewer.d.ts.map +1 -0
  284. package/dist/bigconsole/components/datasink/DataSinkDataViewer.js +2 -0
  285. package/dist/bigconsole/components/datasink/DataSinkDataViewer.js.map +1 -0
  286. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.d.ts +1 -0
  287. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.d.ts.map +1 -0
  288. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js +2 -0
  289. package/dist/bigconsole/components/datasink/DataSinkDeleteDialog.js.map +1 -0
  290. package/dist/bigconsole/components/datasink/DataSinkRefreshConfig.d.ts +1 -0
  291. package/dist/bigconsole/components/datasink/DataSinkRefreshConfig.d.ts.map +1 -0
  292. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.d.ts +1 -0
  293. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.d.ts.map +1 -0
  294. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js +2 -0
  295. package/dist/bigconsole/components/datasink/DataSinkRefreshDialog.js.map +1 -0
  296. package/dist/bigconsole/components/datasink/DataSinkStatusBadge.d.ts +1 -0
  297. package/dist/bigconsole/components/datasink/DataSinkStatusBadge.d.ts.map +1 -0
  298. package/dist/bigconsole/components/datasink/DataSinkStatusBadge.js +2 -0
  299. package/dist/bigconsole/components/datasink/DataSinkStatusBadge.js.map +1 -0
  300. package/dist/bigconsole/components/datasink/DataSinkTableViewer.d.ts +1 -0
  301. package/dist/bigconsole/components/datasink/DataSinkTableViewer.d.ts.map +1 -0
  302. package/dist/bigconsole/components/datasink/DataSinkTableViewer.js +2 -0
  303. package/dist/bigconsole/components/datasink/DataSinkTableViewer.js.map +1 -0
  304. package/dist/bigconsole/components/datasink/ExportDataSinkDialog.d.ts +1 -0
  305. package/dist/bigconsole/components/datasink/ExportDataSinkDialog.d.ts.map +1 -0
  306. package/dist/bigconsole/components/datasink/ExportDataSinkDialog.js +2 -0
  307. package/dist/bigconsole/components/datasink/ExportDataSinkDialog.js.map +1 -0
  308. package/dist/bigconsole/components/datasink/FluidGridsPanel.d.ts +1 -0
  309. package/dist/bigconsole/components/datasink/FluidGridsPanel.d.ts.map +1 -0
  310. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.d.ts +1 -0
  311. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.d.ts.map +1 -0
  312. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js +2 -0
  313. package/dist/bigconsole/components/datasink/ImportDataGuideDialog.js.map +1 -0
  314. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.d.ts +1 -0
  315. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.d.ts.map +1 -0
  316. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js +2 -0
  317. package/dist/bigconsole/components/datasink/ImportDataSinkDialog.js.map +1 -0
  318. package/dist/bigconsole/components/datasink/LinkedParsersPanel.d.ts +1 -0
  319. package/dist/bigconsole/components/datasink/LinkedParsersPanel.d.ts.map +1 -0
  320. package/dist/bigconsole/components/datasink/LinkedParsersPanel.js +2 -0
  321. package/dist/bigconsole/components/datasink/LinkedParsersPanel.js.map +1 -0
  322. package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.d.ts +1 -0
  323. package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.d.ts.map +1 -0
  324. package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.js +2 -0
  325. package/dist/bigconsole/components/datasink/LinkedWorkflowsPanel.js.map +1 -0
  326. package/dist/bigconsole/components/datasink/RefreshTypeSelector.d.ts +1 -0
  327. package/dist/bigconsole/components/datasink/RefreshTypeSelector.d.ts.map +1 -0
  328. package/dist/bigconsole/components/datasink/RefreshTypeSelector.js +2 -0
  329. package/dist/bigconsole/components/datasink/RefreshTypeSelector.js.map +1 -0
  330. package/dist/bigconsole/components/datasink/SetupStateBadge.d.ts +1 -0
  331. package/dist/bigconsole/components/datasink/SetupStateBadge.d.ts.map +1 -0
  332. package/dist/bigconsole/components/datasink/SetupStateBadge.js +2 -0
  333. package/dist/bigconsole/components/datasink/SetupStateBadge.js.map +1 -0
  334. package/dist/bigconsole/components/datasink/WorkflowStatusPanel.d.ts +1 -0
  335. package/dist/bigconsole/components/datasink/WorkflowStatusPanel.d.ts.map +1 -0
  336. package/dist/bigconsole/components/datasink/WorkflowStatusPanel.js +2 -0
  337. package/dist/bigconsole/components/datasink/WorkflowStatusPanel.js.map +1 -0
  338. package/dist/bigconsole/components/datasink/index.d.ts +1 -0
  339. package/dist/bigconsole/components/datasink/index.d.ts.map +1 -0
  340. package/dist/bigconsole/components/embed/EmbedErrorBoundary.d.ts +1 -0
  341. package/dist/bigconsole/components/embed/EmbedErrorBoundary.d.ts.map +1 -0
  342. package/dist/bigconsole/components/embed/EmbedErrorBoundary.js +2 -0
  343. package/dist/bigconsole/components/embed/EmbedErrorBoundary.js.map +1 -0
  344. package/dist/bigconsole/components/embed/EmbedWidgetRenderer.d.ts +1 -0
  345. package/dist/bigconsole/components/embed/EmbedWidgetRenderer.d.ts.map +1 -0
  346. package/dist/bigconsole/components/embed/EmbedWidgetRenderer.js +2 -0
  347. package/dist/bigconsole/components/embed/EmbedWidgetRenderer.js.map +1 -0
  348. package/dist/bigconsole/components/embed/ReadOnlyDashboardRenderer.d.ts +1 -0
  349. package/dist/bigconsole/components/embed/ReadOnlyDashboardRenderer.d.ts.map +1 -0
  350. package/dist/bigconsole/components/embed/ReadOnlyDashboardRenderer.js +2 -0
  351. package/dist/bigconsole/components/embed/ReadOnlyDashboardRenderer.js.map +1 -0
  352. package/dist/bigconsole/components/embed/drilldown.d.ts +1 -0
  353. package/dist/bigconsole/components/embed/drilldown.d.ts.map +1 -0
  354. package/dist/bigconsole/components/embed/drilldown.js +2 -0
  355. package/dist/bigconsole/components/embed/drilldown.js.map +1 -0
  356. package/dist/bigconsole/components/embed/index.d.ts +1 -0
  357. package/dist/bigconsole/components/embed/index.d.ts.map +1 -0
  358. package/dist/bigconsole/components/embed/renderer-manifest.d.ts +1 -0
  359. package/dist/bigconsole/components/embed/renderer-manifest.d.ts.map +1 -0
  360. package/dist/bigconsole/components/embed/renderer-manifest.js +2 -0
  361. package/dist/bigconsole/components/embed/renderer-manifest.js.map +1 -0
  362. package/dist/bigconsole/components/embed/types.d.ts +1 -0
  363. package/dist/bigconsole/components/embed/types.d.ts.map +1 -0
  364. package/dist/bigconsole/components/embed/types.js +2 -0
  365. package/dist/bigconsole/components/embed/types.js.map +1 -0
  366. package/dist/bigconsole/components/embed/validate.d.ts +1 -0
  367. package/dist/bigconsole/components/embed/validate.d.ts.map +1 -0
  368. package/dist/bigconsole/components/embed/validate.js +2 -0
  369. package/dist/bigconsole/components/embed/validate.js.map +1 -0
  370. package/dist/bigconsole/components/embed/widgetShim.d.ts +1 -0
  371. package/dist/bigconsole/components/embed/widgetShim.d.ts.map +1 -0
  372. package/dist/bigconsole/components/embed/widgetShim.js +2 -0
  373. package/dist/bigconsole/components/embed/widgetShim.js.map +1 -0
  374. package/dist/bigconsole/components/embed/widgets/CalendarEmbed.d.ts +1 -0
  375. package/dist/bigconsole/components/embed/widgets/CalendarEmbed.d.ts.map +1 -0
  376. package/dist/bigconsole/components/embed/widgets/CalendarEmbed.js +2 -0
  377. package/dist/bigconsole/components/embed/widgets/CalendarEmbed.js.map +1 -0
  378. package/dist/bigconsole/components/embed/widgets/ChartEmbed.d.ts +1 -0
  379. package/dist/bigconsole/components/embed/widgets/ChartEmbed.d.ts.map +1 -0
  380. package/dist/bigconsole/components/embed/widgets/ChartEmbed.js +2 -0
  381. package/dist/bigconsole/components/embed/widgets/ChartEmbed.js.map +1 -0
  382. package/dist/bigconsole/components/embed/widgets/EmbedFrame.d.ts +1 -0
  383. package/dist/bigconsole/components/embed/widgets/EmbedFrame.d.ts.map +1 -0
  384. package/dist/bigconsole/components/embed/widgets/EmbedFrame.js +2 -0
  385. package/dist/bigconsole/components/embed/widgets/EmbedFrame.js.map +1 -0
  386. package/dist/bigconsole/components/embed/widgets/FormEmbed.d.ts +1 -0
  387. package/dist/bigconsole/components/embed/widgets/FormEmbed.d.ts.map +1 -0
  388. package/dist/bigconsole/components/embed/widgets/FormEmbed.js +2 -0
  389. package/dist/bigconsole/components/embed/widgets/FormEmbed.js.map +1 -0
  390. package/dist/bigconsole/components/embed/widgets/GaugeEmbed.d.ts +1 -0
  391. package/dist/bigconsole/components/embed/widgets/GaugeEmbed.d.ts.map +1 -0
  392. package/dist/bigconsole/components/embed/widgets/GaugeEmbed.js +2 -0
  393. package/dist/bigconsole/components/embed/widgets/GaugeEmbed.js.map +1 -0
  394. package/dist/bigconsole/components/embed/widgets/HeatmapEmbed.d.ts +1 -0
  395. package/dist/bigconsole/components/embed/widgets/HeatmapEmbed.d.ts.map +1 -0
  396. package/dist/bigconsole/components/embed/widgets/HeatmapEmbed.js +2 -0
  397. package/dist/bigconsole/components/embed/widgets/HeatmapEmbed.js.map +1 -0
  398. package/dist/bigconsole/components/embed/widgets/KanbanEmbed.d.ts +1 -0
  399. package/dist/bigconsole/components/embed/widgets/KanbanEmbed.d.ts.map +1 -0
  400. package/dist/bigconsole/components/embed/widgets/KanbanEmbed.js +2 -0
  401. package/dist/bigconsole/components/embed/widgets/KanbanEmbed.js.map +1 -0
  402. package/dist/bigconsole/components/embed/widgets/KpiComparisonEmbed.d.ts +1 -0
  403. package/dist/bigconsole/components/embed/widgets/KpiComparisonEmbed.d.ts.map +1 -0
  404. package/dist/bigconsole/components/embed/widgets/KpiComparisonEmbed.js +2 -0
  405. package/dist/bigconsole/components/embed/widgets/KpiComparisonEmbed.js.map +1 -0
  406. package/dist/bigconsole/components/embed/widgets/ListEmbed.d.ts +1 -0
  407. package/dist/bigconsole/components/embed/widgets/ListEmbed.d.ts.map +1 -0
  408. package/dist/bigconsole/components/embed/widgets/ListEmbed.js +2 -0
  409. package/dist/bigconsole/components/embed/widgets/ListEmbed.js.map +1 -0
  410. package/dist/bigconsole/components/embed/widgets/MetricCardEmbed.d.ts +1 -0
  411. package/dist/bigconsole/components/embed/widgets/MetricCardEmbed.d.ts.map +1 -0
  412. package/dist/bigconsole/components/embed/widgets/MetricCardEmbed.js +2 -0
  413. package/dist/bigconsole/components/embed/widgets/MetricCardEmbed.js.map +1 -0
  414. package/dist/bigconsole/components/embed/widgets/PivotEmbed.d.ts +1 -0
  415. package/dist/bigconsole/components/embed/widgets/PivotEmbed.d.ts.map +1 -0
  416. package/dist/bigconsole/components/embed/widgets/PivotEmbed.js +2 -0
  417. package/dist/bigconsole/components/embed/widgets/PivotEmbed.js.map +1 -0
  418. package/dist/bigconsole/components/embed/widgets/ProgressEmbed.d.ts +1 -0
  419. package/dist/bigconsole/components/embed/widgets/ProgressEmbed.d.ts.map +1 -0
  420. package/dist/bigconsole/components/embed/widgets/ProgressEmbed.js +2 -0
  421. package/dist/bigconsole/components/embed/widgets/ProgressEmbed.js.map +1 -0
  422. package/dist/bigconsole/components/embed/widgets/RetentionEmbed.d.ts +1 -0
  423. package/dist/bigconsole/components/embed/widgets/RetentionEmbed.d.ts.map +1 -0
  424. package/dist/bigconsole/components/embed/widgets/RetentionEmbed.js +2 -0
  425. package/dist/bigconsole/components/embed/widgets/RetentionEmbed.js.map +1 -0
  426. package/dist/bigconsole/components/embed/widgets/TableEmbed.d.ts +1 -0
  427. package/dist/bigconsole/components/embed/widgets/TableEmbed.d.ts.map +1 -0
  428. package/dist/bigconsole/components/embed/widgets/TableEmbed.js +2 -0
  429. package/dist/bigconsole/components/embed/widgets/TableEmbed.js.map +1 -0
  430. package/dist/bigconsole/components/embed/widgets/TextEmbed.d.ts +1 -0
  431. package/dist/bigconsole/components/embed/widgets/TextEmbed.d.ts.map +1 -0
  432. package/dist/bigconsole/components/embed/widgets/TextEmbed.js +2 -0
  433. package/dist/bigconsole/components/embed/widgets/TextEmbed.js.map +1 -0
  434. package/dist/bigconsole/components/embed/widgets/TimelineEmbed.d.ts +1 -0
  435. package/dist/bigconsole/components/embed/widgets/TimelineEmbed.d.ts.map +1 -0
  436. package/dist/bigconsole/components/embed/widgets/TimelineEmbed.js +2 -0
  437. package/dist/bigconsole/components/embed/widgets/TimelineEmbed.js.map +1 -0
  438. package/dist/bigconsole/components/embed/widgets/shared.d.ts +1 -0
  439. package/dist/bigconsole/components/embed/widgets/shared.d.ts.map +1 -0
  440. package/dist/bigconsole/components/embed/widgets/shared.js +2 -0
  441. package/dist/bigconsole/components/embed/widgets/shared.js.map +1 -0
  442. package/dist/bigconsole/components/overview/DashboardGuide.d.ts +1 -0
  443. package/dist/bigconsole/components/overview/DashboardGuide.d.ts.map +1 -0
  444. package/dist/bigconsole/components/overview/DashboardGuide.js +2 -0
  445. package/dist/bigconsole/components/overview/DashboardGuide.js.map +1 -0
  446. package/dist/bigconsole/components/overview/DataHealthCard.d.ts +1 -0
  447. package/dist/bigconsole/components/overview/DataHealthCard.d.ts.map +1 -0
  448. package/dist/bigconsole/components/overview/DataHealthCard.js +2 -0
  449. package/dist/bigconsole/components/overview/DataHealthCard.js.map +1 -0
  450. package/dist/bigconsole/components/overview/OverviewQuickActions.d.ts +1 -0
  451. package/dist/bigconsole/components/overview/OverviewQuickActions.d.ts.map +1 -0
  452. package/dist/bigconsole/components/overview/OverviewQuickActions.js +2 -0
  453. package/dist/bigconsole/components/overview/OverviewQuickActions.js.map +1 -0
  454. package/dist/bigconsole/components/overview/OverviewStatCard.d.ts +1 -0
  455. package/dist/bigconsole/components/overview/OverviewStatCard.d.ts.map +1 -0
  456. package/dist/bigconsole/components/overview/OverviewStatCard.js +2 -0
  457. package/dist/bigconsole/components/overview/OverviewStatCard.js.map +1 -0
  458. package/dist/bigconsole/components/overview/RecentDashboardsPanel.d.ts +1 -0
  459. package/dist/bigconsole/components/overview/RecentDashboardsPanel.d.ts.map +1 -0
  460. package/dist/bigconsole/components/overview/RecentDashboardsPanel.js +2 -0
  461. package/dist/bigconsole/components/overview/RecentDashboardsPanel.js.map +1 -0
  462. package/dist/bigconsole/components/overview/dashboardGuideSteps.d.ts +1 -0
  463. package/dist/bigconsole/components/overview/dashboardGuideSteps.d.ts.map +1 -0
  464. package/dist/bigconsole/components/overview/dashboardGuideSteps.js +2 -0
  465. package/dist/bigconsole/components/overview/dashboardGuideSteps.js.map +1 -0
  466. package/dist/bigconsole/components/overview/index.d.ts +1 -0
  467. package/dist/bigconsole/components/overview/index.d.ts.map +1 -0
  468. package/dist/bigconsole/components/overview/overviewModel.d.ts +1 -0
  469. package/dist/bigconsole/components/overview/overviewModel.d.ts.map +1 -0
  470. package/dist/bigconsole/components/overview/overviewModel.js +2 -0
  471. package/dist/bigconsole/components/overview/overviewModel.js.map +1 -0
  472. package/dist/bigconsole/components/overview/useOverviewData.d.ts +1 -0
  473. package/dist/bigconsole/components/overview/useOverviewData.d.ts.map +1 -0
  474. package/dist/bigconsole/components/overview/useOverviewData.js +2 -0
  475. package/dist/bigconsole/components/overview/useOverviewData.js.map +1 -0
  476. package/dist/bigconsole/components/parser/DataSinkSelector.d.ts +1 -0
  477. package/dist/bigconsole/components/parser/DataSinkSelector.d.ts.map +1 -0
  478. package/dist/bigconsole/components/parser/DataSinkSelector.js +2 -0
  479. package/dist/bigconsole/components/parser/DataSinkSelector.js.map +1 -0
  480. package/dist/bigconsole/components/parser/ExportParserDialog.d.ts +1 -0
  481. package/dist/bigconsole/components/parser/ExportParserDialog.d.ts.map +1 -0
  482. package/dist/bigconsole/components/parser/ExportParserDialog.js +2 -0
  483. package/dist/bigconsole/components/parser/ExportParserDialog.js.map +1 -0
  484. package/dist/bigconsole/components/parser/ExpressionEditor.d.ts +1 -0
  485. package/dist/bigconsole/components/parser/ExpressionEditor.d.ts.map +1 -0
  486. package/dist/bigconsole/components/parser/ExpressionEditor.js +2 -0
  487. package/dist/bigconsole/components/parser/ExpressionEditor.js.map +1 -0
  488. package/dist/bigconsole/components/parser/ImportParserDialog.d.ts +1 -0
  489. package/dist/bigconsole/components/parser/ImportParserDialog.d.ts.map +1 -0
  490. package/dist/bigconsole/components/parser/ImportParserDialog.js +2 -0
  491. package/dist/bigconsole/components/parser/ImportParserDialog.js.map +1 -0
  492. package/dist/bigconsole/components/parser/ParserBuilder.d.ts +1 -0
  493. package/dist/bigconsole/components/parser/ParserBuilder.d.ts.map +1 -0
  494. package/dist/bigconsole/components/parser/ParserCard.d.ts +1 -0
  495. package/dist/bigconsole/components/parser/ParserCard.d.ts.map +1 -0
  496. package/dist/bigconsole/components/parser/ParserCard.js +2 -0
  497. package/dist/bigconsole/components/parser/ParserCard.js.map +1 -0
  498. package/dist/bigconsole/components/parser/ParserFormDialog.d.ts +1 -0
  499. package/dist/bigconsole/components/parser/ParserFormDialog.d.ts.map +1 -0
  500. package/dist/bigconsole/components/parser/ParserSelector.d.ts +1 -0
  501. package/dist/bigconsole/components/parser/ParserSelector.d.ts.map +1 -0
  502. package/dist/bigconsole/components/parser/ParserSelector.js +2 -0
  503. package/dist/bigconsole/components/parser/ParserSelector.js.map +1 -0
  504. package/dist/bigconsole/components/parser/ParserStatusBadge.d.ts +1 -0
  505. package/dist/bigconsole/components/parser/ParserStatusBadge.d.ts.map +1 -0
  506. package/dist/bigconsole/components/parser/ParserStatusBadge.js +2 -0
  507. package/dist/bigconsole/components/parser/ParserStatusBadge.js.map +1 -0
  508. package/dist/bigconsole/components/parser/ParserTypeBadge.d.ts +1 -0
  509. package/dist/bigconsole/components/parser/ParserTypeBadge.d.ts.map +1 -0
  510. package/dist/bigconsole/components/parser/ParserTypeBadge.js +2 -0
  511. package/dist/bigconsole/components/parser/ParserTypeBadge.js.map +1 -0
  512. package/dist/bigconsole/components/parser/TestPanel.d.ts +1 -0
  513. package/dist/bigconsole/components/parser/TestPanel.d.ts.map +1 -0
  514. package/dist/bigconsole/components/parser/index.d.ts +1 -0
  515. package/dist/bigconsole/components/parser/index.d.ts.map +1 -0
  516. package/dist/bigconsole/components/parser/parserFieldStyles.d.ts +1 -0
  517. package/dist/bigconsole/components/parser/parserFieldStyles.d.ts.map +1 -0
  518. package/dist/bigconsole/components/pipeline/PipelineCard.d.ts +1 -0
  519. package/dist/bigconsole/components/pipeline/PipelineCard.d.ts.map +1 -0
  520. package/dist/bigconsole/components/pipeline/PipelineCard.js +2 -0
  521. package/dist/bigconsole/components/pipeline/PipelineCard.js.map +1 -0
  522. package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.d.ts +1 -0
  523. package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.d.ts.map +1 -0
  524. package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.js +2 -0
  525. package/dist/bigconsole/components/pipeline/PipelineDeleteDialog.js.map +1 -0
  526. package/dist/bigconsole/components/pipeline/PipelineScopePicker.d.ts +1 -0
  527. package/dist/bigconsole/components/pipeline/PipelineScopePicker.d.ts.map +1 -0
  528. package/dist/bigconsole/components/pipeline/PipelineScopePicker.js +2 -0
  529. package/dist/bigconsole/components/pipeline/PipelineScopePicker.js.map +1 -0
  530. package/dist/bigconsole/components/pipeline/PipelineStatusBadge.d.ts +1 -0
  531. package/dist/bigconsole/components/pipeline/PipelineStatusBadge.d.ts.map +1 -0
  532. package/dist/bigconsole/components/pipeline/PipelineStatusBadge.js +2 -0
  533. package/dist/bigconsole/components/pipeline/PipelineStatusBadge.js.map +1 -0
  534. package/dist/bigconsole/components/pipeline/index.d.ts +1 -0
  535. package/dist/bigconsole/components/pipeline/index.d.ts.map +1 -0
  536. package/dist/bigconsole/components/preview/AiPreviewContent.d.ts +1 -0
  537. package/dist/bigconsole/components/preview/AiPreviewContent.d.ts.map +1 -0
  538. package/dist/bigconsole/components/preview/AiPreviewContent.js +2 -0
  539. package/dist/bigconsole/components/preview/AiPreviewContent.js.map +1 -0
  540. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.d.ts +1 -0
  541. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.d.ts.map +1 -0
  542. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js +2 -0
  543. package/dist/bigconsole/components/preview/AiPreviewMiniPanel.js.map +1 -0
  544. package/dist/bigconsole/components/preview/AiPreviewPanel.d.ts +1 -0
  545. package/dist/bigconsole/components/preview/AiPreviewPanel.d.ts.map +1 -0
  546. package/dist/bigconsole/components/preview/AiPreviewPanel.js +2 -0
  547. package/dist/bigconsole/components/preview/AiPreviewPanel.js.map +1 -0
  548. package/dist/bigconsole/components/preview/parserPreview.d.ts +1 -0
  549. package/dist/bigconsole/components/preview/parserPreview.d.ts.map +1 -0
  550. package/dist/bigconsole/components/preview/parserPreview.js +2 -0
  551. package/dist/bigconsole/components/preview/parserPreview.js.map +1 -0
  552. package/dist/bigconsole/components/preview/previewShared.d.ts +1 -0
  553. package/dist/bigconsole/components/preview/previewShared.d.ts.map +1 -0
  554. package/dist/bigconsole/components/preview/previewShared.js +2 -0
  555. package/dist/bigconsole/components/preview/previewShared.js.map +1 -0
  556. package/dist/bigconsole/components/widgets/ActionConfigDialog.d.ts +1 -0
  557. package/dist/bigconsole/components/widgets/ActionConfigDialog.d.ts.map +1 -0
  558. package/dist/bigconsole/components/widgets/ActionConfigDialog.js +2 -0
  559. package/dist/bigconsole/components/widgets/ActionConfigDialog.js.map +1 -0
  560. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.d.ts +1 -0
  561. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.d.ts.map +1 -0
  562. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js +2 -0
  563. package/dist/bigconsole/components/widgets/DrilldownConfigPanel.js.map +1 -0
  564. package/dist/bigconsole/components/widgets/PropertiesPanel.d.ts +1 -0
  565. package/dist/bigconsole/components/widgets/PropertiesPanel.d.ts.map +1 -0
  566. package/dist/bigconsole/components/widgets/PropertiesPanel.js +2 -0
  567. package/dist/bigconsole/components/widgets/PropertiesPanel.js.map +1 -0
  568. package/dist/bigconsole/components/widgets/WidgetErrorBoundary.d.ts +1 -0
  569. package/dist/bigconsole/components/widgets/WidgetErrorBoundary.d.ts.map +1 -0
  570. package/dist/bigconsole/components/widgets/WidgetErrorBoundary.js +2 -0
  571. package/dist/bigconsole/components/widgets/WidgetErrorBoundary.js.map +1 -0
  572. package/dist/bigconsole/components/widgets/WidgetHeader.d.ts +1 -0
  573. package/dist/bigconsole/components/widgets/WidgetHeader.d.ts.map +1 -0
  574. package/dist/bigconsole/components/widgets/WidgetHeader.js +2 -0
  575. package/dist/bigconsole/components/widgets/WidgetHeader.js.map +1 -0
  576. package/dist/bigconsole/components/widgets/WidgetMenu.d.ts +1 -0
  577. package/dist/bigconsole/components/widgets/WidgetMenu.d.ts.map +1 -0
  578. package/dist/bigconsole/components/widgets/WidgetMenu.js +2 -0
  579. package/dist/bigconsole/components/widgets/WidgetMenu.js.map +1 -0
  580. package/dist/bigconsole/components/widgets/WidgetRegistry.d.ts +1 -0
  581. package/dist/bigconsole/components/widgets/WidgetRegistry.d.ts.map +1 -0
  582. package/dist/bigconsole/components/widgets/WidgetRegistry.js +3 -0
  583. package/dist/bigconsole/components/widgets/WidgetRegistry.js.map +1 -0
  584. package/dist/bigconsole/components/widgets/WidgetTypeSelector.d.ts +1 -0
  585. package/dist/bigconsole/components/widgets/WidgetTypeSelector.d.ts.map +1 -0
  586. package/dist/bigconsole/components/widgets/WidgetWrapper.d.ts +1 -0
  587. package/dist/bigconsole/components/widgets/WidgetWrapper.d.ts.map +1 -0
  588. package/dist/bigconsole/components/widgets/WidgetWrapper.js +2 -0
  589. package/dist/bigconsole/components/widgets/WidgetWrapper.js.map +1 -0
  590. package/dist/bigconsole/components/widgets/actionConfig.d.ts +1 -0
  591. package/dist/bigconsole/components/widgets/actionConfig.d.ts.map +1 -0
  592. package/dist/bigconsole/components/widgets/actionConfig.js +2 -0
  593. package/dist/bigconsole/components/widgets/actionConfig.js.map +1 -0
  594. package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.d.ts +1 -0
  595. package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.d.ts.map +1 -0
  596. package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.js +2 -0
  597. package/dist/bigconsole/components/widgets/adaptive-card/AdaptiveCardWidget.js.map +1 -0
  598. package/dist/bigconsole/components/widgets/adaptive-card/index.d.ts +1 -0
  599. package/dist/bigconsole/components/widgets/adaptive-card/index.d.ts.map +1 -0
  600. package/dist/bigconsole/components/widgets/calendar/CalendarView.d.ts +1 -0
  601. package/dist/bigconsole/components/widgets/calendar/CalendarView.d.ts.map +1 -0
  602. package/dist/bigconsole/components/widgets/calendar/CalendarView.js +2 -0
  603. package/dist/bigconsole/components/widgets/calendar/CalendarView.js.map +1 -0
  604. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.d.ts +1 -0
  605. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.d.ts.map +1 -0
  606. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js +2 -0
  607. package/dist/bigconsole/components/widgets/calendar/CalendarWidget.js.map +1 -0
  608. package/dist/bigconsole/components/widgets/calendar/index.d.ts +1 -0
  609. package/dist/bigconsole/components/widgets/calendar/index.d.ts.map +1 -0
  610. package/dist/bigconsole/components/widgets/chart/ChartConfig.d.ts +1 -0
  611. package/dist/bigconsole/components/widgets/chart/ChartConfig.d.ts.map +1 -0
  612. package/dist/bigconsole/components/widgets/chart/ChartConfig.js +2 -0
  613. package/dist/bigconsole/components/widgets/chart/ChartConfig.js.map +1 -0
  614. package/dist/bigconsole/components/widgets/chart/ChartLegend.d.ts +1 -0
  615. package/dist/bigconsole/components/widgets/chart/ChartLegend.d.ts.map +1 -0
  616. package/dist/bigconsole/components/widgets/chart/ChartLegend.js +2 -0
  617. package/dist/bigconsole/components/widgets/chart/ChartLegend.js.map +1 -0
  618. package/dist/bigconsole/components/widgets/chart/ChartTooltip.d.ts +1 -0
  619. package/dist/bigconsole/components/widgets/chart/ChartTooltip.d.ts.map +1 -0
  620. package/dist/bigconsole/components/widgets/chart/ChartTooltip.js +2 -0
  621. package/dist/bigconsole/components/widgets/chart/ChartTooltip.js.map +1 -0
  622. package/dist/bigconsole/components/widgets/chart/ChartWidget.d.ts +1 -0
  623. package/dist/bigconsole/components/widgets/chart/ChartWidget.d.ts.map +1 -0
  624. package/dist/bigconsole/components/widgets/chart/ChartWidget.js +2 -0
  625. package/dist/bigconsole/components/widgets/chart/ChartWidget.js.map +1 -0
  626. package/dist/bigconsole/components/widgets/chart/charts/AreaChart.d.ts +1 -0
  627. package/dist/bigconsole/components/widgets/chart/charts/AreaChart.d.ts.map +1 -0
  628. package/dist/bigconsole/components/widgets/chart/charts/AreaChart.js +2 -0
  629. package/dist/bigconsole/components/widgets/chart/charts/AreaChart.js.map +1 -0
  630. package/dist/bigconsole/components/widgets/chart/charts/BarChart.d.ts +1 -0
  631. package/dist/bigconsole/components/widgets/chart/charts/BarChart.d.ts.map +1 -0
  632. package/dist/bigconsole/components/widgets/chart/charts/BarChart.js +2 -0
  633. package/dist/bigconsole/components/widgets/chart/charts/BarChart.js.map +1 -0
  634. package/dist/bigconsole/components/widgets/chart/charts/ComboChart.d.ts +1 -0
  635. package/dist/bigconsole/components/widgets/chart/charts/ComboChart.d.ts.map +1 -0
  636. package/dist/bigconsole/components/widgets/chart/charts/ComboChart.js +2 -0
  637. package/dist/bigconsole/components/widgets/chart/charts/ComboChart.js.map +1 -0
  638. package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.d.ts +1 -0
  639. package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.d.ts.map +1 -0
  640. package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.js +2 -0
  641. package/dist/bigconsole/components/widgets/chart/charts/FunnelChart.js.map +1 -0
  642. package/dist/bigconsole/components/widgets/chart/charts/LineChart.d.ts +1 -0
  643. package/dist/bigconsole/components/widgets/chart/charts/LineChart.d.ts.map +1 -0
  644. package/dist/bigconsole/components/widgets/chart/charts/LineChart.js +2 -0
  645. package/dist/bigconsole/components/widgets/chart/charts/LineChart.js.map +1 -0
  646. package/dist/bigconsole/components/widgets/chart/charts/PieChart.d.ts +1 -0
  647. package/dist/bigconsole/components/widgets/chart/charts/PieChart.d.ts.map +1 -0
  648. package/dist/bigconsole/components/widgets/chart/charts/PieChart.js +2 -0
  649. package/dist/bigconsole/components/widgets/chart/charts/PieChart.js.map +1 -0
  650. package/dist/bigconsole/components/widgets/chart/charts/ScatterChart.d.ts +1 -0
  651. package/dist/bigconsole/components/widgets/chart/charts/ScatterChart.d.ts.map +1 -0
  652. package/dist/bigconsole/components/widgets/chart/charts/ScatterChart.js +2 -0
  653. package/dist/bigconsole/components/widgets/chart/charts/ScatterChart.js.map +1 -0
  654. package/dist/bigconsole/components/widgets/chart/charts/WaterfallChart.d.ts +1 -0
  655. package/dist/bigconsole/components/widgets/chart/charts/WaterfallChart.d.ts.map +1 -0
  656. package/dist/bigconsole/components/widgets/chart/charts/WaterfallChart.js +2 -0
  657. package/dist/bigconsole/components/widgets/chart/charts/WaterfallChart.js.map +1 -0
  658. package/dist/bigconsole/components/widgets/chart/charts/index.d.ts +1 -0
  659. package/dist/bigconsole/components/widgets/chart/charts/index.d.ts.map +1 -0
  660. package/dist/bigconsole/components/widgets/chart/charts/referenceElements.d.ts +1 -0
  661. package/dist/bigconsole/components/widgets/chart/charts/referenceElements.d.ts.map +1 -0
  662. package/dist/bigconsole/components/widgets/chart/charts/referenceElements.js +2 -0
  663. package/dist/bigconsole/components/widgets/chart/charts/referenceElements.js.map +1 -0
  664. package/dist/bigconsole/components/widgets/chart/charts/types.d.ts +1 -0
  665. package/dist/bigconsole/components/widgets/chart/charts/types.d.ts.map +1 -0
  666. package/dist/bigconsole/components/widgets/chart/index.d.ts +1 -0
  667. package/dist/bigconsole/components/widgets/chart/index.d.ts.map +1 -0
  668. package/dist/bigconsole/components/widgets/comments/WidgetComments.d.ts +1 -0
  669. package/dist/bigconsole/components/widgets/comments/WidgetComments.d.ts.map +1 -0
  670. package/dist/bigconsole/components/widgets/comments/WidgetComments.js +2 -0
  671. package/dist/bigconsole/components/widgets/comments/WidgetComments.js.map +1 -0
  672. package/dist/bigconsole/components/widgets/custom/CustomWidget.d.ts +1 -0
  673. package/dist/bigconsole/components/widgets/custom/CustomWidget.d.ts.map +1 -0
  674. package/dist/bigconsole/components/widgets/custom/CustomWidget.js +133 -73
  675. package/dist/bigconsole/components/widgets/custom/CustomWidget.js.map +1 -0
  676. package/dist/bigconsole/components/widgets/custom/config.d.ts +1 -0
  677. package/dist/bigconsole/components/widgets/custom/config.d.ts.map +1 -0
  678. package/dist/bigconsole/components/widgets/custom/config.js +2 -0
  679. package/dist/bigconsole/components/widgets/custom/config.js.map +1 -0
  680. package/dist/bigconsole/components/widgets/custom/index.d.ts +1 -0
  681. package/dist/bigconsole/components/widgets/custom/index.d.ts.map +1 -0
  682. package/dist/bigconsole/components/widgets/custom/utils.d.ts +1 -0
  683. package/dist/bigconsole/components/widgets/custom/utils.d.ts.map +1 -0
  684. package/dist/bigconsole/components/widgets/custom/utils.js +2 -0
  685. package/dist/bigconsole/components/widgets/custom/utils.js.map +1 -0
  686. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.d.ts +1 -0
  687. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.d.ts.map +1 -0
  688. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js +2 -0
  689. package/dist/bigconsole/components/widgets/event-logs/EventLogViewer.js.map +1 -0
  690. package/dist/bigconsole/components/widgets/event-logs/index.d.ts +1 -0
  691. package/dist/bigconsole/components/widgets/event-logs/index.d.ts.map +1 -0
  692. package/dist/bigconsole/components/widgets/form/FormWidget.d.ts +1 -0
  693. package/dist/bigconsole/components/widgets/form/FormWidget.d.ts.map +1 -0
  694. package/dist/bigconsole/components/widgets/form/FormWidget.js +2 -0
  695. package/dist/bigconsole/components/widgets/form/FormWidget.js.map +1 -0
  696. package/dist/bigconsole/components/widgets/form/index.d.ts +1 -0
  697. package/dist/bigconsole/components/widgets/form/index.d.ts.map +1 -0
  698. package/dist/bigconsole/components/widgets/funnel/index.d.ts +1 -0
  699. package/dist/bigconsole/components/widgets/funnel/index.d.ts.map +1 -0
  700. package/dist/bigconsole/components/widgets/funnel/index.js +2 -0
  701. package/dist/bigconsole/components/widgets/funnel/index.js.map +1 -0
  702. package/dist/bigconsole/components/widgets/gauge/CircularGauge.d.ts +1 -0
  703. package/dist/bigconsole/components/widgets/gauge/CircularGauge.d.ts.map +1 -0
  704. package/dist/bigconsole/components/widgets/gauge/CircularGauge.js +2 -0
  705. package/dist/bigconsole/components/widgets/gauge/CircularGauge.js.map +1 -0
  706. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.d.ts +1 -0
  707. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.d.ts.map +1 -0
  708. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js +2 -0
  709. package/dist/bigconsole/components/widgets/gauge/GaugeConfig.js.map +1 -0
  710. package/dist/bigconsole/components/widgets/gauge/GaugeWidget.d.ts +1 -0
  711. package/dist/bigconsole/components/widgets/gauge/GaugeWidget.d.ts.map +1 -0
  712. package/dist/bigconsole/components/widgets/gauge/GaugeWidget.js +2 -0
  713. package/dist/bigconsole/components/widgets/gauge/GaugeWidget.js.map +1 -0
  714. package/dist/bigconsole/components/widgets/gauge/LinearGauge.d.ts +1 -0
  715. package/dist/bigconsole/components/widgets/gauge/LinearGauge.d.ts.map +1 -0
  716. package/dist/bigconsole/components/widgets/gauge/LinearGauge.js +2 -0
  717. package/dist/bigconsole/components/widgets/gauge/LinearGauge.js.map +1 -0
  718. package/dist/bigconsole/components/widgets/gauge/index.d.ts +1 -0
  719. package/dist/bigconsole/components/widgets/gauge/index.d.ts.map +1 -0
  720. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.d.ts +1 -0
  721. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.d.ts.map +1 -0
  722. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js +2 -0
  723. package/dist/bigconsole/components/widgets/heatmap/HeatmapConfig.js.map +1 -0
  724. package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.d.ts +1 -0
  725. package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.d.ts.map +1 -0
  726. package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.js +2 -0
  727. package/dist/bigconsole/components/widgets/heatmap/HeatmapWidget.js.map +1 -0
  728. package/dist/bigconsole/components/widgets/heatmap/index.d.ts +1 -0
  729. package/dist/bigconsole/components/widgets/heatmap/index.d.ts.map +1 -0
  730. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.d.ts +10 -28
  731. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.d.ts.map +1 -0
  732. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js +44 -115
  733. package/dist/bigconsole/components/widgets/iframe-widget/IframeWidget.js.map +1 -0
  734. package/dist/bigconsole/components/widgets/iframe-widget/index.d.ts +2 -2
  735. package/dist/bigconsole/components/widgets/iframe-widget/index.d.ts.map +1 -0
  736. package/dist/bigconsole/components/widgets/iframe-widget/index.js +2 -3
  737. package/dist/bigconsole/components/widgets/index.d.ts +1 -0
  738. package/dist/bigconsole/components/widgets/index.d.ts.map +1 -0
  739. package/dist/bigconsole/components/widgets/kanban/KanbanView.d.ts +1 -0
  740. package/dist/bigconsole/components/widgets/kanban/KanbanView.d.ts.map +1 -0
  741. package/dist/bigconsole/components/widgets/kanban/KanbanView.js +2 -0
  742. package/dist/bigconsole/components/widgets/kanban/KanbanView.js.map +1 -0
  743. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.d.ts +1 -0
  744. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.d.ts.map +1 -0
  745. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js +2 -0
  746. package/dist/bigconsole/components/widgets/kanban/KanbanWidget.js.map +1 -0
  747. package/dist/bigconsole/components/widgets/kanban/index.d.ts +1 -0
  748. package/dist/bigconsole/components/widgets/kanban/index.d.ts.map +1 -0
  749. package/dist/bigconsole/components/widgets/kanban/model.d.ts +1 -0
  750. package/dist/bigconsole/components/widgets/kanban/model.d.ts.map +1 -0
  751. package/dist/bigconsole/components/widgets/kanban/model.js +2 -0
  752. package/dist/bigconsole/components/widgets/kanban/model.js.map +1 -0
  753. package/dist/bigconsole/components/widgets/kpi/KPIWidget.d.ts +1 -0
  754. package/dist/bigconsole/components/widgets/kpi/KPIWidget.d.ts.map +1 -0
  755. package/dist/bigconsole/components/widgets/kpi/KPIWidget.js +2 -0
  756. package/dist/bigconsole/components/widgets/kpi/KPIWidget.js.map +1 -0
  757. package/dist/bigconsole/components/widgets/kpi/index.d.ts +1 -0
  758. package/dist/bigconsole/components/widgets/kpi/index.d.ts.map +1 -0
  759. package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.d.ts +1 -0
  760. package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.d.ts.map +1 -0
  761. package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.js +2 -0
  762. package/dist/bigconsole/components/widgets/kpi-comparison/KPIComparisonWidget.js.map +1 -0
  763. package/dist/bigconsole/components/widgets/kpi-comparison/index.d.ts +1 -0
  764. package/dist/bigconsole/components/widgets/kpi-comparison/index.d.ts.map +1 -0
  765. package/dist/bigconsole/components/widgets/list/ListConfig.d.ts +1 -0
  766. package/dist/bigconsole/components/widgets/list/ListConfig.d.ts.map +1 -0
  767. package/dist/bigconsole/components/widgets/list/ListConfig.js +2 -0
  768. package/dist/bigconsole/components/widgets/list/ListConfig.js.map +1 -0
  769. package/dist/bigconsole/components/widgets/list/ListItem.d.ts +1 -0
  770. package/dist/bigconsole/components/widgets/list/ListItem.d.ts.map +1 -0
  771. package/dist/bigconsole/components/widgets/list/ListItem.js +2 -0
  772. package/dist/bigconsole/components/widgets/list/ListItem.js.map +1 -0
  773. package/dist/bigconsole/components/widgets/list/ListWidget.d.ts +1 -0
  774. package/dist/bigconsole/components/widgets/list/ListWidget.d.ts.map +1 -0
  775. package/dist/bigconsole/components/widgets/list/ListWidget.js +2 -0
  776. package/dist/bigconsole/components/widgets/list/ListWidget.js.map +1 -0
  777. package/dist/bigconsole/components/widgets/list/index.d.ts +1 -0
  778. package/dist/bigconsole/components/widgets/list/index.d.ts.map +1 -0
  779. package/dist/bigconsole/components/widgets/map-widget/MapWidget.d.ts +1 -0
  780. package/dist/bigconsole/components/widgets/map-widget/MapWidget.d.ts.map +1 -0
  781. package/dist/bigconsole/components/widgets/map-widget/MapWidget.js +2 -0
  782. package/dist/bigconsole/components/widgets/map-widget/MapWidget.js.map +1 -0
  783. package/dist/bigconsole/components/widgets/map-widget/index.d.ts +1 -0
  784. package/dist/bigconsole/components/widgets/map-widget/index.d.ts.map +1 -0
  785. package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.d.ts +1 -0
  786. package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.d.ts.map +1 -0
  787. package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.js +2 -0
  788. package/dist/bigconsole/components/widgets/metric-card/ComparisonBadge.js.map +1 -0
  789. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.d.ts +1 -0
  790. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.d.ts.map +1 -0
  791. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js +2 -0
  792. package/dist/bigconsole/components/widgets/metric-card/MetricCardConfig.js.map +1 -0
  793. package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.d.ts +1 -0
  794. package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.d.ts.map +1 -0
  795. package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.js +2 -0
  796. package/dist/bigconsole/components/widgets/metric-card/MetricCardWidget.js.map +1 -0
  797. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.d.ts +1 -0
  798. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.d.ts.map +1 -0
  799. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js +2 -0
  800. package/dist/bigconsole/components/widgets/metric-card/SparklineChart.js.map +1 -0
  801. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.d.ts +1 -0
  802. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.d.ts.map +1 -0
  803. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js +2 -0
  804. package/dist/bigconsole/components/widgets/metric-card/TrendIndicator.js.map +1 -0
  805. package/dist/bigconsole/components/widgets/metric-card/index.d.ts +1 -0
  806. package/dist/bigconsole/components/widgets/metric-card/index.d.ts.map +1 -0
  807. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.d.ts +1 -0
  808. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.d.ts.map +1 -0
  809. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js +2 -0
  810. package/dist/bigconsole/components/widgets/pivot-table/PivotTableWidget.js.map +1 -0
  811. package/dist/bigconsole/components/widgets/pivot-table/index.d.ts +1 -0
  812. package/dist/bigconsole/components/widgets/pivot-table/index.d.ts.map +1 -0
  813. package/dist/bigconsole/components/widgets/progress/ProgressBar.d.ts +1 -0
  814. package/dist/bigconsole/components/widgets/progress/ProgressBar.d.ts.map +1 -0
  815. package/dist/bigconsole/components/widgets/progress/ProgressBar.js +2 -0
  816. package/dist/bigconsole/components/widgets/progress/ProgressBar.js.map +1 -0
  817. package/dist/bigconsole/components/widgets/progress/ProgressConfig.d.ts +1 -0
  818. package/dist/bigconsole/components/widgets/progress/ProgressConfig.d.ts.map +1 -0
  819. package/dist/bigconsole/components/widgets/progress/ProgressConfig.js +2 -0
  820. package/dist/bigconsole/components/widgets/progress/ProgressConfig.js.map +1 -0
  821. package/dist/bigconsole/components/widgets/progress/ProgressWidget.d.ts +1 -0
  822. package/dist/bigconsole/components/widgets/progress/ProgressWidget.d.ts.map +1 -0
  823. package/dist/bigconsole/components/widgets/progress/ProgressWidget.js +2 -0
  824. package/dist/bigconsole/components/widgets/progress/ProgressWidget.js.map +1 -0
  825. package/dist/bigconsole/components/widgets/progress/index.d.ts +1 -0
  826. package/dist/bigconsole/components/widgets/progress/index.d.ts.map +1 -0
  827. package/dist/bigconsole/components/widgets/retention/RetentionWidget.d.ts +1 -0
  828. package/dist/bigconsole/components/widgets/retention/RetentionWidget.d.ts.map +1 -0
  829. package/dist/bigconsole/components/widgets/retention/RetentionWidget.js +2 -0
  830. package/dist/bigconsole/components/widgets/retention/RetentionWidget.js.map +1 -0
  831. package/dist/bigconsole/components/widgets/retention/index.d.ts +1 -0
  832. package/dist/bigconsole/components/widgets/retention/index.d.ts.map +1 -0
  833. package/dist/bigconsole/components/widgets/states/EmptyState.d.ts +1 -0
  834. package/dist/bigconsole/components/widgets/states/EmptyState.d.ts.map +1 -0
  835. package/dist/bigconsole/components/widgets/states/EmptyState.js +2 -0
  836. package/dist/bigconsole/components/widgets/states/EmptyState.js.map +1 -0
  837. package/dist/bigconsole/components/widgets/states/ErrorState.d.ts +1 -0
  838. package/dist/bigconsole/components/widgets/states/ErrorState.d.ts.map +1 -0
  839. package/dist/bigconsole/components/widgets/states/ErrorState.js +2 -0
  840. package/dist/bigconsole/components/widgets/states/ErrorState.js.map +1 -0
  841. package/dist/bigconsole/components/widgets/states/LoadingState.d.ts +1 -0
  842. package/dist/bigconsole/components/widgets/states/LoadingState.d.ts.map +1 -0
  843. package/dist/bigconsole/components/widgets/states/LoadingState.js +2 -0
  844. package/dist/bigconsole/components/widgets/states/LoadingState.js.map +1 -0
  845. package/dist/bigconsole/components/widgets/states/index.d.ts +1 -0
  846. package/dist/bigconsole/components/widgets/states/index.d.ts.map +1 -0
  847. package/dist/bigconsole/components/widgets/table/TableCell.d.ts +1 -0
  848. package/dist/bigconsole/components/widgets/table/TableCell.d.ts.map +1 -0
  849. package/dist/bigconsole/components/widgets/table/TableCell.js +2 -0
  850. package/dist/bigconsole/components/widgets/table/TableCell.js.map +1 -0
  851. package/dist/bigconsole/components/widgets/table/TableConfig.d.ts +1 -0
  852. package/dist/bigconsole/components/widgets/table/TableConfig.d.ts.map +1 -0
  853. package/dist/bigconsole/components/widgets/table/TableConfig.js +2 -0
  854. package/dist/bigconsole/components/widgets/table/TableConfig.js.map +1 -0
  855. package/dist/bigconsole/components/widgets/table/TableHeader.d.ts +1 -0
  856. package/dist/bigconsole/components/widgets/table/TableHeader.d.ts.map +1 -0
  857. package/dist/bigconsole/components/widgets/table/TableHeader.js +2 -0
  858. package/dist/bigconsole/components/widgets/table/TableHeader.js.map +1 -0
  859. package/dist/bigconsole/components/widgets/table/TablePagination.d.ts +1 -0
  860. package/dist/bigconsole/components/widgets/table/TablePagination.d.ts.map +1 -0
  861. package/dist/bigconsole/components/widgets/table/TablePagination.js +2 -0
  862. package/dist/bigconsole/components/widgets/table/TablePagination.js.map +1 -0
  863. package/dist/bigconsole/components/widgets/table/TableWidget.d.ts +1 -0
  864. package/dist/bigconsole/components/widgets/table/TableWidget.d.ts.map +1 -0
  865. package/dist/bigconsole/components/widgets/table/TableWidget.js +2 -0
  866. package/dist/bigconsole/components/widgets/table/TableWidget.js.map +1 -0
  867. package/dist/bigconsole/components/widgets/table/cellLink.d.ts +1 -0
  868. package/dist/bigconsole/components/widgets/table/cellLink.d.ts.map +1 -0
  869. package/dist/bigconsole/components/widgets/table/cellLink.js +2 -0
  870. package/dist/bigconsole/components/widgets/table/cellLink.js.map +1 -0
  871. package/dist/bigconsole/components/widgets/table/index.d.ts +1 -0
  872. package/dist/bigconsole/components/widgets/table/index.d.ts.map +1 -0
  873. package/dist/bigconsole/components/widgets/text-widget/TextWidget.d.ts +1 -0
  874. package/dist/bigconsole/components/widgets/text-widget/TextWidget.d.ts.map +1 -0
  875. package/dist/bigconsole/components/widgets/text-widget/TextWidget.js +29 -110
  876. package/dist/bigconsole/components/widgets/text-widget/TextWidget.js.map +1 -0
  877. package/dist/bigconsole/components/widgets/text-widget/index.d.ts +1 -0
  878. package/dist/bigconsole/components/widgets/text-widget/index.d.ts.map +1 -0
  879. package/dist/bigconsole/components/widgets/text-widget/textData.d.ts +1 -6
  880. package/dist/bigconsole/components/widgets/text-widget/textData.d.ts.map +1 -0
  881. package/dist/bigconsole/components/widgets/text-widget/textData.js +16 -17
  882. package/dist/bigconsole/components/widgets/text-widget/textData.js.map +1 -0
  883. package/dist/bigconsole/components/widgets/timeline/TimelineWidget.d.ts +1 -0
  884. package/dist/bigconsole/components/widgets/timeline/TimelineWidget.d.ts.map +1 -0
  885. package/dist/bigconsole/components/widgets/timeline/TimelineWidget.js +2 -0
  886. package/dist/bigconsole/components/widgets/timeline/TimelineWidget.js.map +1 -0
  887. package/dist/bigconsole/components/widgets/timeline/index.d.ts +1 -0
  888. package/dist/bigconsole/components/widgets/timeline/index.d.ts.map +1 -0
  889. package/dist/bigconsole/components/widgets/utils/conditionalFormat.d.ts +1 -0
  890. package/dist/bigconsole/components/widgets/utils/conditionalFormat.d.ts.map +1 -0
  891. package/dist/bigconsole/components/widgets/utils/conditionalFormat.js +2 -0
  892. package/dist/bigconsole/components/widgets/utils/conditionalFormat.js.map +1 -0
  893. package/dist/bigconsole/components/widgets/utils/inferFields.d.ts +1 -0
  894. package/dist/bigconsole/components/widgets/utils/inferFields.d.ts.map +1 -0
  895. package/dist/bigconsole/components/widgets/utils/inferFields.js +2 -0
  896. package/dist/bigconsole/components/widgets/utils/inferFields.js.map +1 -0
  897. package/dist/bigconsole/components/widgets/utils/targetProgress.d.ts +1 -0
  898. package/dist/bigconsole/components/widgets/utils/targetProgress.d.ts.map +1 -0
  899. package/dist/bigconsole/components/widgets/utils/targetProgress.js +2 -0
  900. package/dist/bigconsole/components/widgets/utils/targetProgress.js.map +1 -0
  901. package/dist/bigconsole/components/widgets/utils/translate.d.ts +1 -0
  902. package/dist/bigconsole/components/widgets/utils/translate.d.ts.map +1 -0
  903. package/dist/bigconsole/components/widgets/utils/translate.js +2 -0
  904. package/dist/bigconsole/components/widgets/utils/translate.js.map +1 -0
  905. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.d.ts +1 -0
  906. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.d.ts.map +1 -0
  907. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js +2 -0
  908. package/dist/bigconsole/components/widgets/webhook-config/WebhookConfigPanel.js.map +1 -0
  909. package/dist/bigconsole/components/widgets/webhook-config/index.d.ts +1 -0
  910. package/dist/bigconsole/components/widgets/webhook-config/index.d.ts.map +1 -0
  911. package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.d.ts +1 -0
  912. package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.d.ts.map +1 -0
  913. package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.js +2 -0
  914. package/dist/bigconsole/components/widgets/widget-actions/WidgetActions.js.map +1 -0
  915. package/dist/bigconsole/components/widgets/widget-actions/index.d.ts +1 -0
  916. package/dist/bigconsole/components/widgets/widget-actions/index.d.ts.map +1 -0
  917. package/dist/bigconsole/components/workflow/DataSinkMultiSelector.d.ts +1 -0
  918. package/dist/bigconsole/components/workflow/DataSinkMultiSelector.d.ts.map +1 -0
  919. package/dist/bigconsole/components/workflow/WorkflowCard.d.ts +1 -0
  920. package/dist/bigconsole/components/workflow/WorkflowCard.d.ts.map +1 -0
  921. package/dist/bigconsole/components/workflow/WorkflowCard.js +2 -0
  922. package/dist/bigconsole/components/workflow/WorkflowCard.js.map +1 -0
  923. package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.d.ts +1 -0
  924. package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.d.ts.map +1 -0
  925. package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.js +2 -0
  926. package/dist/bigconsole/components/workflow/WorkflowDeleteDialog.js.map +1 -0
  927. package/dist/bigconsole/components/workflow/WorkflowDesignPreview.d.ts +1 -0
  928. package/dist/bigconsole/components/workflow/WorkflowDesignPreview.d.ts.map +1 -0
  929. package/dist/bigconsole/components/workflow/WorkflowDesignPreview.js +2 -0
  930. package/dist/bigconsole/components/workflow/WorkflowDesignPreview.js.map +1 -0
  931. package/dist/bigconsole/components/workflow/WorkflowOpenGuard.d.ts +1 -0
  932. package/dist/bigconsole/components/workflow/WorkflowOpenGuard.d.ts.map +1 -0
  933. package/dist/bigconsole/components/workflow/WorkflowOpenGuard.js +2 -0
  934. package/dist/bigconsole/components/workflow/WorkflowOpenGuard.js.map +1 -0
  935. package/dist/bigconsole/components/workflow/WorkflowSinkLinkForm.d.ts +1 -0
  936. package/dist/bigconsole/components/workflow/WorkflowSinkLinkForm.d.ts.map +1 -0
  937. package/dist/bigconsole/components/workflow/WorkflowSinkLinkForm.js +2 -0
  938. package/dist/bigconsole/components/workflow/WorkflowSinkLinkForm.js.map +1 -0
  939. package/dist/bigconsole/components/workflow/WorkflowStatusBadge.d.ts +1 -0
  940. package/dist/bigconsole/components/workflow/WorkflowStatusBadge.d.ts.map +1 -0
  941. package/dist/bigconsole/components/workflow/WorkflowStatusBadge.js +2 -0
  942. package/dist/bigconsole/components/workflow/WorkflowStatusBadge.js.map +1 -0
  943. package/dist/bigconsole/components/workflow/index.d.ts +1 -0
  944. package/dist/bigconsole/components/workflow/index.d.ts.map +1 -0
  945. package/dist/bigconsole/constants/backendErrors.d.ts +1 -0
  946. package/dist/bigconsole/constants/backendErrors.d.ts.map +1 -0
  947. package/dist/bigconsole/constants.d.ts +1 -0
  948. package/dist/bigconsole/constants.d.ts.map +1 -0
  949. package/dist/bigconsole/constants.js +2 -0
  950. package/dist/bigconsole/constants.js.map +1 -0
  951. package/dist/bigconsole/context/BigConsoleContext.d.ts +1 -10
  952. package/dist/bigconsole/context/BigConsoleContext.d.ts.map +1 -0
  953. package/dist/bigconsole/context/BigConsoleContext.js +32 -47
  954. package/dist/bigconsole/context/BigConsoleContext.js.map +1 -0
  955. package/dist/bigconsole/context/index.d.ts +2 -1
  956. package/dist/bigconsole/context/index.d.ts.map +1 -0
  957. package/dist/bigconsole/contexts/CrossFilterContext.d.ts +1 -0
  958. package/dist/bigconsole/contexts/CrossFilterContext.d.ts.map +1 -0
  959. package/dist/bigconsole/contexts/CrossFilterContext.js +2 -0
  960. package/dist/bigconsole/contexts/CrossFilterContext.js.map +1 -0
  961. package/dist/bigconsole/contexts/NavigationContext.d.ts +1 -0
  962. package/dist/bigconsole/contexts/NavigationContext.d.ts.map +1 -0
  963. package/dist/bigconsole/contexts/NavigationContext.js +2 -0
  964. package/dist/bigconsole/contexts/NavigationContext.js.map +1 -0
  965. package/dist/bigconsole/contexts/index.d.ts +1 -0
  966. package/dist/bigconsole/contexts/index.d.ts.map +1 -0
  967. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.d.ts +1 -0
  968. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.d.ts.map +1 -0
  969. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js +2 -0
  970. package/dist/bigconsole/customWidget/CustomWidgetBuilderSheet.js.map +1 -0
  971. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.d.ts +1 -0
  972. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.d.ts.map +1 -0
  973. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js +2 -0
  974. package/dist/bigconsole/customWidget/CustomWidgetProposalPanel.js.map +1 -0
  975. package/dist/bigconsole/customWidget/index.d.ts +1 -0
  976. package/dist/bigconsole/customWidget/index.d.ts.map +1 -0
  977. package/dist/bigconsole/customWidget/proposalContract.d.ts +1 -0
  978. package/dist/bigconsole/customWidget/proposalContract.d.ts.map +1 -0
  979. package/dist/bigconsole/customWidget/proposalContract.js +2 -0
  980. package/dist/bigconsole/customWidget/proposalContract.js.map +1 -0
  981. package/dist/bigconsole/customWidget/proposalSource.d.ts +1 -0
  982. package/dist/bigconsole/customWidget/proposalSource.d.ts.map +1 -0
  983. package/dist/bigconsole/customWidget/proposalSource.js +2 -0
  984. package/dist/bigconsole/customWidget/proposalSource.js.map +1 -0
  985. package/dist/bigconsole/graphql/apollo-compat.d.ts +1 -0
  986. package/dist/bigconsole/graphql/apollo-compat.d.ts.map +1 -0
  987. package/dist/bigconsole/graphql/storeTemplates.d.ts +1 -0
  988. package/dist/bigconsole/graphql/storeTemplates.d.ts.map +1 -0
  989. package/dist/bigconsole/graphql/storeTemplates.js +2 -0
  990. package/dist/bigconsole/graphql/storeTemplates.js.map +1 -0
  991. package/dist/bigconsole/hooks/index.d.ts +1 -0
  992. package/dist/bigconsole/hooks/index.d.ts.map +1 -0
  993. package/dist/bigconsole/hooks/useActivePage.d.ts +1 -0
  994. package/dist/bigconsole/hooks/useActivePage.d.ts.map +1 -0
  995. package/dist/bigconsole/hooks/useActivePage.js +2 -0
  996. package/dist/bigconsole/hooks/useActivePage.js.map +1 -0
  997. package/dist/bigconsole/hooks/useAutoRefresh.d.ts +1 -0
  998. package/dist/bigconsole/hooks/useAutoRefresh.d.ts.map +1 -0
  999. package/dist/bigconsole/hooks/useAutoRefresh.js +2 -0
  1000. package/dist/bigconsole/hooks/useAutoRefresh.js.map +1 -0
  1001. package/dist/bigconsole/hooks/useBigConsoleAnalytics.d.ts +1 -0
  1002. package/dist/bigconsole/hooks/useBigConsoleAnalytics.d.ts.map +1 -0
  1003. package/dist/bigconsole/hooks/useBigConsoleAnalytics.js +2 -0
  1004. package/dist/bigconsole/hooks/useBigConsoleAnalytics.js.map +1 -0
  1005. package/dist/bigconsole/hooks/useBigConsoleSettings.d.ts +1 -0
  1006. package/dist/bigconsole/hooks/useBigConsoleSettings.d.ts.map +1 -0
  1007. package/dist/bigconsole/hooks/useBigConsoleSettings.js +2 -0
  1008. package/dist/bigconsole/hooks/useBigConsoleSettings.js.map +1 -0
  1009. package/dist/bigconsole/hooks/useCrossFilter.d.ts +1 -0
  1010. package/dist/bigconsole/hooks/useCrossFilter.d.ts.map +1 -0
  1011. package/dist/bigconsole/hooks/useCrossFilter.js +2 -0
  1012. package/dist/bigconsole/hooks/useCrossFilter.js.map +1 -0
  1013. package/dist/bigconsole/hooks/useDashboardEmbedPolicy.d.ts +1 -0
  1014. package/dist/bigconsole/hooks/useDashboardEmbedPolicy.d.ts.map +1 -0
  1015. package/dist/bigconsole/hooks/useDashboardEmbedPolicy.js +2 -0
  1016. package/dist/bigconsole/hooks/useDashboardEmbedPolicy.js.map +1 -0
  1017. package/dist/bigconsole/hooks/useDashboardImageExport.d.ts +1 -0
  1018. package/dist/bigconsole/hooks/useDashboardImageExport.d.ts.map +1 -0
  1019. package/dist/bigconsole/hooks/useDashboardImageExport.js +2 -0
  1020. package/dist/bigconsole/hooks/useDashboardImageExport.js.map +1 -0
  1021. package/dist/bigconsole/hooks/useDashboardOperations.d.ts +1 -0
  1022. package/dist/bigconsole/hooks/useDashboardOperations.d.ts.map +1 -0
  1023. package/dist/bigconsole/hooks/useDashboardOperations.js +2 -0
  1024. package/dist/bigconsole/hooks/useDashboardOperations.js.map +1 -0
  1025. package/dist/bigconsole/hooks/useDashboardSharing.d.ts +1 -0
  1026. package/dist/bigconsole/hooks/useDashboardSharing.d.ts.map +1 -0
  1027. package/dist/bigconsole/hooks/useDashboardSharing.js +2 -0
  1028. package/dist/bigconsole/hooks/useDashboardSharing.js.map +1 -0
  1029. package/dist/bigconsole/hooks/useDashboardTemplates.d.ts +1 -0
  1030. package/dist/bigconsole/hooks/useDashboardTemplates.d.ts.map +1 -0
  1031. package/dist/bigconsole/hooks/useDashboardViews.d.ts +1 -0
  1032. package/dist/bigconsole/hooks/useDashboardViews.d.ts.map +1 -0
  1033. package/dist/bigconsole/hooks/useDashboardViews.js +2 -0
  1034. package/dist/bigconsole/hooks/useDashboardViews.js.map +1 -0
  1035. package/dist/bigconsole/hooks/useDataSinkAlerts.d.ts +1 -0
  1036. package/dist/bigconsole/hooks/useDataSinkAlerts.d.ts.map +1 -0
  1037. package/dist/bigconsole/hooks/useDataSinkAlerts.js +2 -0
  1038. package/dist/bigconsole/hooks/useDataSinkAlerts.js.map +1 -0
  1039. package/dist/bigconsole/hooks/useDataSinkOperations.d.ts +1 -7
  1040. package/dist/bigconsole/hooks/useDataSinkOperations.d.ts.map +1 -0
  1041. package/dist/bigconsole/hooks/useDataSinkOperations.js +100 -109
  1042. package/dist/bigconsole/hooks/useDataSinkOperations.js.map +1 -0
  1043. package/dist/bigconsole/hooks/useDataSinkSubscription.d.ts +1 -0
  1044. package/dist/bigconsole/hooks/useDataSinkSubscription.d.ts.map +1 -0
  1045. package/dist/bigconsole/hooks/useDataSinkSubscription.js +3 -0
  1046. package/dist/bigconsole/hooks/useDataSinkSubscription.js.map +1 -0
  1047. package/dist/bigconsole/hooks/useDrilldown.d.ts +1 -0
  1048. package/dist/bigconsole/hooks/useDrilldown.d.ts.map +1 -0
  1049. package/dist/bigconsole/hooks/useDrilldown.js +70 -69
  1050. package/dist/bigconsole/hooks/useDrilldown.js.map +1 -0
  1051. package/dist/bigconsole/hooks/useDrilldownOperations.d.ts +1 -0
  1052. package/dist/bigconsole/hooks/useDrilldownOperations.d.ts.map +1 -0
  1053. package/dist/bigconsole/hooks/useDrilldownOperations.js +2 -0
  1054. package/dist/bigconsole/hooks/useDrilldownOperations.js.map +1 -0
  1055. package/dist/bigconsole/hooks/useEventLogs.d.ts +1 -0
  1056. package/dist/bigconsole/hooks/useEventLogs.d.ts.map +1 -0
  1057. package/dist/bigconsole/hooks/useEventLogs.js +2 -0
  1058. package/dist/bigconsole/hooks/useEventLogs.js.map +1 -0
  1059. package/dist/bigconsole/hooks/useEventWebhooks.d.ts +1 -0
  1060. package/dist/bigconsole/hooks/useEventWebhooks.d.ts.map +1 -0
  1061. package/dist/bigconsole/hooks/useEventWebhooks.js +2 -0
  1062. package/dist/bigconsole/hooks/useEventWebhooks.js.map +1 -0
  1063. package/dist/bigconsole/hooks/useExportDashboard.d.ts +1 -0
  1064. package/dist/bigconsole/hooks/useExportDashboard.d.ts.map +1 -0
  1065. package/dist/bigconsole/hooks/useExportDashboard.js +2 -0
  1066. package/dist/bigconsole/hooks/useExportDashboard.js.map +1 -0
  1067. package/dist/bigconsole/hooks/useExportDataSink.d.ts +1 -0
  1068. package/dist/bigconsole/hooks/useExportDataSink.d.ts.map +1 -0
  1069. package/dist/bigconsole/hooks/useExportDataSink.js +3 -1
  1070. package/dist/bigconsole/hooks/useExportDataSink.js.map +1 -0
  1071. package/dist/bigconsole/hooks/useExportParser.d.ts +1 -0
  1072. package/dist/bigconsole/hooks/useExportParser.d.ts.map +1 -0
  1073. package/dist/bigconsole/hooks/useExportParser.js +2 -0
  1074. package/dist/bigconsole/hooks/useExportParser.js.map +1 -0
  1075. package/dist/bigconsole/hooks/useFilterPresets.d.ts +1 -0
  1076. package/dist/bigconsole/hooks/useFilterPresets.d.ts.map +1 -0
  1077. package/dist/bigconsole/hooks/useFilterPresets.js +2 -0
  1078. package/dist/bigconsole/hooks/useFilterPresets.js.map +1 -0
  1079. package/dist/bigconsole/hooks/useFilterUrlSync.d.ts +1 -0
  1080. package/dist/bigconsole/hooks/useFilterUrlSync.d.ts.map +1 -0
  1081. package/dist/bigconsole/hooks/useFilterUrlSync.js +2 -0
  1082. package/dist/bigconsole/hooks/useFilterUrlSync.js.map +1 -0
  1083. package/dist/bigconsole/hooks/useGlobalFilters.d.ts +1 -0
  1084. package/dist/bigconsole/hooks/useGlobalFilters.d.ts.map +1 -0
  1085. package/dist/bigconsole/hooks/useGlobalFilters.js +2 -0
  1086. package/dist/bigconsole/hooks/useGlobalFilters.js.map +1 -0
  1087. package/dist/bigconsole/hooks/useImportDashboard.d.ts +1 -0
  1088. package/dist/bigconsole/hooks/useImportDashboard.d.ts.map +1 -0
  1089. package/dist/bigconsole/hooks/useImportDashboard.js +2 -0
  1090. package/dist/bigconsole/hooks/useImportDashboard.js.map +1 -0
  1091. package/dist/bigconsole/hooks/useImportDataSink.d.ts +1 -0
  1092. package/dist/bigconsole/hooks/useImportDataSink.d.ts.map +1 -0
  1093. package/dist/bigconsole/hooks/useImportDataSink.js +92 -102
  1094. package/dist/bigconsole/hooks/useImportDataSink.js.map +1 -0
  1095. package/dist/bigconsole/hooks/useImportParser.d.ts +1 -0
  1096. package/dist/bigconsole/hooks/useImportParser.d.ts.map +1 -0
  1097. package/dist/bigconsole/hooks/useImportParser.js +2 -0
  1098. package/dist/bigconsole/hooks/useImportParser.js.map +1 -0
  1099. package/dist/bigconsole/hooks/useInstalledWidgets.d.ts +1 -0
  1100. package/dist/bigconsole/hooks/useInstalledWidgets.d.ts.map +1 -0
  1101. package/dist/bigconsole/hooks/useInstalledWidgets.js +2 -0
  1102. package/dist/bigconsole/hooks/useInstalledWidgets.js.map +1 -0
  1103. package/dist/bigconsole/hooks/useModalFocusTrap.d.ts +1 -0
  1104. package/dist/bigconsole/hooks/useModalFocusTrap.d.ts.map +1 -0
  1105. package/dist/bigconsole/hooks/useModalFocusTrap.js +2 -0
  1106. package/dist/bigconsole/hooks/useModalFocusTrap.js.map +1 -0
  1107. package/dist/bigconsole/hooks/usePageOperations.d.ts +1 -0
  1108. package/dist/bigconsole/hooks/usePageOperations.d.ts.map +1 -0
  1109. package/dist/bigconsole/hooks/usePageOperations.js +2 -0
  1110. package/dist/bigconsole/hooks/usePageOperations.js.map +1 -0
  1111. package/dist/bigconsole/hooks/useParserOperations.d.ts +1 -0
  1112. package/dist/bigconsole/hooks/useParserOperations.d.ts.map +1 -0
  1113. package/dist/bigconsole/hooks/useParserOperations.js +2 -0
  1114. package/dist/bigconsole/hooks/useParserOperations.js.map +1 -0
  1115. package/dist/bigconsole/hooks/usePipelineOperations.d.ts +1 -0
  1116. package/dist/bigconsole/hooks/usePipelineOperations.d.ts.map +1 -0
  1117. package/dist/bigconsole/hooks/usePipelineOperations.js +2 -0
  1118. package/dist/bigconsole/hooks/usePipelineOperations.js.map +1 -0
  1119. package/dist/bigconsole/hooks/useShareRecipients.d.ts +1 -0
  1120. package/dist/bigconsole/hooks/useShareRecipients.d.ts.map +1 -0
  1121. package/dist/bigconsole/hooks/useShareRecipients.js +2 -0
  1122. package/dist/bigconsole/hooks/useShareRecipients.js.map +1 -0
  1123. package/dist/bigconsole/hooks/useStoreDashboardTemplates.d.ts +1 -0
  1124. package/dist/bigconsole/hooks/useStoreDashboardTemplates.d.ts.map +1 -0
  1125. package/dist/bigconsole/hooks/useStoreDashboardTemplates.js +2 -0
  1126. package/dist/bigconsole/hooks/useStoreDashboardTemplates.js.map +1 -0
  1127. package/dist/bigconsole/hooks/useWidgetActions.d.ts +1 -0
  1128. package/dist/bigconsole/hooks/useWidgetActions.d.ts.map +1 -0
  1129. package/dist/bigconsole/hooks/useWidgetActions.js +2 -0
  1130. package/dist/bigconsole/hooks/useWidgetActions.js.map +1 -0
  1131. package/dist/bigconsole/hooks/useWidgetCatalog.d.ts +1 -0
  1132. package/dist/bigconsole/hooks/useWidgetCatalog.d.ts.map +1 -0
  1133. package/dist/bigconsole/hooks/useWidgetCatalog.js +2 -0
  1134. package/dist/bigconsole/hooks/useWidgetCatalog.js.map +1 -0
  1135. package/dist/bigconsole/hooks/useWidgetComments.d.ts +1 -0
  1136. package/dist/bigconsole/hooks/useWidgetComments.d.ts.map +1 -0
  1137. package/dist/bigconsole/hooks/useWidgetComments.js +2 -0
  1138. package/dist/bigconsole/hooks/useWidgetComments.js.map +1 -0
  1139. package/dist/bigconsole/hooks/useWidgetConfigPersist.d.ts +1 -0
  1140. package/dist/bigconsole/hooks/useWidgetConfigPersist.d.ts.map +1 -0
  1141. package/dist/bigconsole/hooks/useWidgetConfigPersist.js +2 -0
  1142. package/dist/bigconsole/hooks/useWidgetConfigPersist.js.map +1 -0
  1143. package/dist/bigconsole/hooks/useWidgetData.d.ts +1 -0
  1144. package/dist/bigconsole/hooks/useWidgetData.d.ts.map +1 -0
  1145. package/dist/bigconsole/hooks/useWidgetData.js +2 -0
  1146. package/dist/bigconsole/hooks/useWidgetData.js.map +1 -0
  1147. package/dist/bigconsole/hooks/useWidgetEvents.d.ts +1 -0
  1148. package/dist/bigconsole/hooks/useWidgetEvents.d.ts.map +1 -0
  1149. package/dist/bigconsole/hooks/useWidgetEvents.js +2 -0
  1150. package/dist/bigconsole/hooks/useWidgetEvents.js.map +1 -0
  1151. package/dist/bigconsole/hooks/useWidgetExport.d.ts +1 -0
  1152. package/dist/bigconsole/hooks/useWidgetExport.d.ts.map +1 -0
  1153. package/dist/bigconsole/hooks/useWidgetExport.js +2 -0
  1154. package/dist/bigconsole/hooks/useWidgetExport.js.map +1 -0
  1155. package/dist/bigconsole/hooks/useWidgetOperations.d.ts +1 -0
  1156. package/dist/bigconsole/hooks/useWidgetOperations.d.ts.map +1 -0
  1157. package/dist/bigconsole/hooks/useWidgetOperations.js +2 -0
  1158. package/dist/bigconsole/hooks/useWidgetOperations.js.map +1 -0
  1159. package/dist/bigconsole/hooks/useWorkflowOperations.d.ts +1 -0
  1160. package/dist/bigconsole/hooks/useWorkflowOperations.d.ts.map +1 -0
  1161. package/dist/bigconsole/hooks/useWorkflowOperations.js +2 -0
  1162. package/dist/bigconsole/hooks/useWorkflowOperations.js.map +1 -0
  1163. package/dist/bigconsole/index.d.ts +1 -0
  1164. package/dist/bigconsole/index.d.ts.map +1 -0
  1165. package/dist/bigconsole/modules/dashboard/index.d.ts +1 -0
  1166. package/dist/bigconsole/modules/dashboard/index.d.ts.map +1 -0
  1167. package/dist/bigconsole/modules/index.d.ts +1 -0
  1168. package/dist/bigconsole/modules/index.d.ts.map +1 -0
  1169. package/dist/bigconsole/modules/renderer/index.d.ts +1 -0
  1170. package/dist/bigconsole/modules/renderer/index.d.ts.map +1 -0
  1171. package/dist/bigconsole/modules/widget/index.d.ts +1 -0
  1172. package/dist/bigconsole/modules/widget/index.d.ts.map +1 -0
  1173. package/dist/bigconsole/pages/AdminPage.d.ts +1 -0
  1174. package/dist/bigconsole/pages/AdminPage.d.ts.map +1 -0
  1175. package/dist/bigconsole/pages/AdminPage.js +2 -0
  1176. package/dist/bigconsole/pages/AdminPage.js.map +1 -0
  1177. package/dist/bigconsole/pages/DashboardBuilderPage.d.ts +1 -0
  1178. package/dist/bigconsole/pages/DashboardBuilderPage.d.ts.map +1 -0
  1179. package/dist/bigconsole/pages/DashboardBuilderPage.js +2 -0
  1180. package/dist/bigconsole/pages/DashboardBuilderPage.js.map +1 -0
  1181. package/dist/bigconsole/pages/DashboardViewPage.d.ts +1 -0
  1182. package/dist/bigconsole/pages/DashboardViewPage.d.ts.map +1 -0
  1183. package/dist/bigconsole/pages/DashboardViewPage.js +207 -205
  1184. package/dist/bigconsole/pages/DashboardViewPage.js.map +1 -0
  1185. package/dist/bigconsole/pages/DashboardsPage.d.ts +1 -0
  1186. package/dist/bigconsole/pages/DashboardsPage.d.ts.map +1 -0
  1187. package/dist/bigconsole/pages/DashboardsPage.js +2 -0
  1188. package/dist/bigconsole/pages/DashboardsPage.js.map +1 -0
  1189. package/dist/bigconsole/pages/DataParsersPage.d.ts +1 -0
  1190. package/dist/bigconsole/pages/DataParsersPage.d.ts.map +1 -0
  1191. package/dist/bigconsole/pages/DataParsersPage.js +2 -0
  1192. package/dist/bigconsole/pages/DataParsersPage.js.map +1 -0
  1193. package/dist/bigconsole/pages/DataSinkAlertsPage.d.ts +1 -0
  1194. package/dist/bigconsole/pages/DataSinkAlertsPage.d.ts.map +1 -0
  1195. package/dist/bigconsole/pages/DataSinkAlertsPage.js +2 -0
  1196. package/dist/bigconsole/pages/DataSinkAlertsPage.js.map +1 -0
  1197. package/dist/bigconsole/pages/DataSinkBuilderPage.d.ts +1 -0
  1198. package/dist/bigconsole/pages/DataSinkBuilderPage.d.ts.map +1 -0
  1199. package/dist/bigconsole/pages/DataSinkBuilderPage.js +282 -312
  1200. package/dist/bigconsole/pages/DataSinkBuilderPage.js.map +1 -0
  1201. package/dist/bigconsole/pages/DataSinkViewPage.d.ts +1 -0
  1202. package/dist/bigconsole/pages/DataSinkViewPage.d.ts.map +1 -0
  1203. package/dist/bigconsole/pages/DataSinkViewPage.js +257 -256
  1204. package/dist/bigconsole/pages/DataSinkViewPage.js.map +1 -0
  1205. package/dist/bigconsole/pages/DataSinksPage.d.ts +1 -0
  1206. package/dist/bigconsole/pages/DataSinksPage.d.ts.map +1 -0
  1207. package/dist/bigconsole/pages/DataSinksPage.js +197 -196
  1208. package/dist/bigconsole/pages/DataSinksPage.js.map +1 -0
  1209. package/dist/bigconsole/pages/DataSourcesPage.d.ts +1 -0
  1210. package/dist/bigconsole/pages/DataSourcesPage.d.ts.map +1 -0
  1211. package/dist/bigconsole/pages/DataSourcesPage.js +2 -0
  1212. package/dist/bigconsole/pages/DataSourcesPage.js.map +1 -0
  1213. package/dist/bigconsole/pages/InsightsPage.d.ts +1 -0
  1214. package/dist/bigconsole/pages/InsightsPage.d.ts.map +1 -0
  1215. package/dist/bigconsole/pages/InsightsPage.js +2 -0
  1216. package/dist/bigconsole/pages/InsightsPage.js.map +1 -0
  1217. package/dist/bigconsole/pages/OverviewPage.d.ts +1 -0
  1218. package/dist/bigconsole/pages/OverviewPage.d.ts.map +1 -0
  1219. package/dist/bigconsole/pages/OverviewPage.js +2 -0
  1220. package/dist/bigconsole/pages/OverviewPage.js.map +1 -0
  1221. package/dist/bigconsole/pages/ParserBuilderPage.d.ts +1 -0
  1222. package/dist/bigconsole/pages/ParserBuilderPage.d.ts.map +1 -0
  1223. package/dist/bigconsole/pages/ParserBuilderPage.js +2 -0
  1224. package/dist/bigconsole/pages/ParserBuilderPage.js.map +1 -0
  1225. package/dist/bigconsole/pages/ParserViewPage.d.ts +1 -0
  1226. package/dist/bigconsole/pages/ParserViewPage.d.ts.map +1 -0
  1227. package/dist/bigconsole/pages/ParserViewPage.js +2 -0
  1228. package/dist/bigconsole/pages/ParserViewPage.js.map +1 -0
  1229. package/dist/bigconsole/pages/PipelineBuilderPage.d.ts +1 -0
  1230. package/dist/bigconsole/pages/PipelineBuilderPage.d.ts.map +1 -0
  1231. package/dist/bigconsole/pages/PipelineBuilderPage.js +2 -0
  1232. package/dist/bigconsole/pages/PipelineBuilderPage.js.map +1 -0
  1233. package/dist/bigconsole/pages/PipelineViewPage.d.ts +1 -0
  1234. package/dist/bigconsole/pages/PipelineViewPage.d.ts.map +1 -0
  1235. package/dist/bigconsole/pages/PipelineViewPage.js +2 -0
  1236. package/dist/bigconsole/pages/PipelineViewPage.js.map +1 -0
  1237. package/dist/bigconsole/pages/PipelinesPage.d.ts +1 -0
  1238. package/dist/bigconsole/pages/PipelinesPage.d.ts.map +1 -0
  1239. package/dist/bigconsole/pages/PipelinesPage.js +2 -0
  1240. package/dist/bigconsole/pages/PipelinesPage.js.map +1 -0
  1241. package/dist/bigconsole/pages/SettingsPage.d.ts +1 -0
  1242. package/dist/bigconsole/pages/SettingsPage.d.ts.map +1 -0
  1243. package/dist/bigconsole/pages/SettingsPage.js +2 -0
  1244. package/dist/bigconsole/pages/SettingsPage.js.map +1 -0
  1245. package/dist/bigconsole/pages/WidgetDemoPage.d.ts +1 -0
  1246. package/dist/bigconsole/pages/WidgetDemoPage.d.ts.map +1 -0
  1247. package/dist/bigconsole/pages/WidgetDemoPage.js +2 -0
  1248. package/dist/bigconsole/pages/WidgetDemoPage.js.map +1 -0
  1249. package/dist/bigconsole/pages/WorkflowViewPage.d.ts +1 -0
  1250. package/dist/bigconsole/pages/WorkflowViewPage.d.ts.map +1 -0
  1251. package/dist/bigconsole/pages/WorkflowViewPage.js +2 -0
  1252. package/dist/bigconsole/pages/WorkflowViewPage.js.map +1 -0
  1253. package/dist/bigconsole/pages/WorkflowsPage.d.ts +1 -0
  1254. package/dist/bigconsole/pages/WorkflowsPage.d.ts.map +1 -0
  1255. package/dist/bigconsole/pages/WorkflowsPage.js +2 -0
  1256. package/dist/bigconsole/pages/WorkflowsPage.js.map +1 -0
  1257. package/dist/bigconsole/pages/index.d.ts +1 -0
  1258. package/dist/bigconsole/pages/index.d.ts.map +1 -0
  1259. package/dist/bigconsole/providers/BigConsoleQuotaProvider.d.ts +1 -0
  1260. package/dist/bigconsole/providers/BigConsoleQuotaProvider.d.ts.map +1 -0
  1261. package/dist/bigconsole/providers/BigConsoleQuotaProvider.js +2 -0
  1262. package/dist/bigconsole/providers/BigConsoleQuotaProvider.js.map +1 -0
  1263. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.d.ts +1 -0
  1264. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.d.ts.map +1 -0
  1265. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js +124 -235
  1266. package/dist/bigconsole/renderers/adapters/AdaptiveCardRenderer.js.map +1 -0
  1267. package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.d.ts +1 -0
  1268. package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.d.ts.map +1 -0
  1269. package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.js +2 -0
  1270. package/dist/bigconsole/renderers/adapters/BigConsoleRenderer.js.map +1 -0
  1271. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.d.ts +2 -6
  1272. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.d.ts.map +1 -0
  1273. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js +157 -155
  1274. package/dist/bigconsole/renderers/adapters/BlockKitRenderer.js.map +1 -0
  1275. package/dist/bigconsole/renderers/adapters/CustomRenderer.d.ts +1 -0
  1276. package/dist/bigconsole/renderers/adapters/CustomRenderer.d.ts.map +1 -0
  1277. package/dist/bigconsole/renderers/adapters/CustomRenderer.js +2 -0
  1278. package/dist/bigconsole/renderers/adapters/CustomRenderer.js.map +1 -0
  1279. package/dist/bigconsole/renderers/adapters/index.d.ts +1 -0
  1280. package/dist/bigconsole/renderers/adapters/index.d.ts.map +1 -0
  1281. package/dist/bigconsole/renderers/factory/WidgetRendererFactory.d.ts +1 -0
  1282. package/dist/bigconsole/renderers/factory/WidgetRendererFactory.d.ts.map +1 -0
  1283. package/dist/bigconsole/renderers/factory/WidgetRendererFactory.js +2 -0
  1284. package/dist/bigconsole/renderers/factory/WidgetRendererFactory.js.map +1 -0
  1285. package/dist/bigconsole/renderers/index.d.ts +1 -0
  1286. package/dist/bigconsole/renderers/index.d.ts.map +1 -0
  1287. package/dist/bigconsole/renderers/registry/RendererRegistry.d.ts +1 -0
  1288. package/dist/bigconsole/renderers/registry/RendererRegistry.d.ts.map +1 -0
  1289. package/dist/bigconsole/renderers/registry/RendererRegistry.js +2 -0
  1290. package/dist/bigconsole/renderers/registry/RendererRegistry.js.map +1 -0
  1291. package/dist/bigconsole/renderers/types/index.d.ts +1 -0
  1292. package/dist/bigconsole/renderers/types/index.d.ts.map +1 -0
  1293. package/dist/bigconsole/renderers/types/renderer.d.ts +1 -0
  1294. package/dist/bigconsole/renderers/types/renderer.d.ts.map +1 -0
  1295. package/dist/bigconsole/store/dashboardStore.d.ts +1 -0
  1296. package/dist/bigconsole/store/dashboardStore.d.ts.map +1 -0
  1297. package/dist/bigconsole/store/dashboardStore.js +2 -0
  1298. package/dist/bigconsole/store/dashboardStore.js.map +1 -0
  1299. package/dist/bigconsole/store/dataSinkStore.d.ts +1 -0
  1300. package/dist/bigconsole/store/dataSinkStore.d.ts.map +1 -0
  1301. package/dist/bigconsole/store/dataSinkStore.js +2 -0
  1302. package/dist/bigconsole/store/dataSinkStore.js.map +1 -0
  1303. package/dist/bigconsole/store/drilldownStore.d.ts +1 -0
  1304. package/dist/bigconsole/store/drilldownStore.d.ts.map +1 -0
  1305. package/dist/bigconsole/store/drilldownStore.js +2 -0
  1306. package/dist/bigconsole/store/drilldownStore.js.map +1 -0
  1307. package/dist/bigconsole/store/index.d.ts +1 -0
  1308. package/dist/bigconsole/store/index.d.ts.map +1 -0
  1309. package/dist/bigconsole/store/parserStore.d.ts +1 -0
  1310. package/dist/bigconsole/store/parserStore.d.ts.map +1 -0
  1311. package/dist/bigconsole/store/parserStore.js +2 -0
  1312. package/dist/bigconsole/store/parserStore.js.map +1 -0
  1313. package/dist/bigconsole/store/pipelineStore.d.ts +1 -0
  1314. package/dist/bigconsole/store/pipelineStore.d.ts.map +1 -0
  1315. package/dist/bigconsole/store/pipelineStore.js +2 -0
  1316. package/dist/bigconsole/store/pipelineStore.js.map +1 -0
  1317. package/dist/bigconsole/store/widgetStore.d.ts +1 -0
  1318. package/dist/bigconsole/store/widgetStore.d.ts.map +1 -0
  1319. package/dist/bigconsole/store/widgetStore.js +2 -0
  1320. package/dist/bigconsole/store/widgetStore.js.map +1 -0
  1321. package/dist/bigconsole/store/workflowStore.d.ts +1 -0
  1322. package/dist/bigconsole/store/workflowStore.d.ts.map +1 -0
  1323. package/dist/bigconsole/store/workflowStore.js +2 -0
  1324. package/dist/bigconsole/store/workflowStore.js.map +1 -0
  1325. package/dist/bigconsole/types/index.d.ts +3 -17
  1326. package/dist/bigconsole/types/index.d.ts.map +1 -0
  1327. package/dist/bigconsole/utils/alertRules.d.ts +1 -0
  1328. package/dist/bigconsole/utils/alertRules.d.ts.map +1 -0
  1329. package/dist/bigconsole/utils/alertRules.js +2 -0
  1330. package/dist/bigconsole/utils/alertRules.js.map +1 -0
  1331. package/dist/bigconsole/utils/backendError.d.ts +1 -0
  1332. package/dist/bigconsole/utils/backendError.d.ts.map +1 -0
  1333. package/dist/bigconsole/utils/createDialogParam.d.ts +1 -0
  1334. package/dist/bigconsole/utils/createDialogParam.d.ts.map +1 -0
  1335. package/dist/bigconsole/utils/createDialogParam.js +2 -0
  1336. package/dist/bigconsole/utils/createDialogParam.js.map +1 -0
  1337. package/dist/bigconsole/utils/csv.d.ts +1 -0
  1338. package/dist/bigconsole/utils/csv.d.ts.map +1 -0
  1339. package/dist/bigconsole/utils/csv.js +2 -0
  1340. package/dist/bigconsole/utils/csv.js.map +1 -0
  1341. package/dist/bigconsole/utils/dashboardTemplateContent.d.ts +1 -0
  1342. package/dist/bigconsole/utils/dashboardTemplateContent.d.ts.map +1 -0
  1343. package/dist/bigconsole/utils/dashboardTemplateContent.js +2 -0
  1344. package/dist/bigconsole/utils/dashboardTemplateContent.js.map +1 -0
  1345. package/dist/bigconsole/utils/drilldownParams.d.ts +1 -0
  1346. package/dist/bigconsole/utils/drilldownParams.d.ts.map +1 -0
  1347. package/dist/bigconsole/utils/drilldownParams.js +2 -0
  1348. package/dist/bigconsole/utils/drilldownParams.js.map +1 -0
  1349. package/dist/bigconsole/utils/format.d.ts +1 -0
  1350. package/dist/bigconsole/utils/format.d.ts.map +1 -0
  1351. package/dist/bigconsole/utils/format.js +2 -0
  1352. package/dist/bigconsole/utils/format.js.map +1 -0
  1353. package/dist/bigconsole/utils/index.d.ts +1 -2
  1354. package/dist/bigconsole/utils/index.d.ts.map +1 -0
  1355. package/dist/bigconsole/utils/quota.d.ts +1 -0
  1356. package/dist/bigconsole/utils/quota.d.ts.map +1 -0
  1357. package/dist/bigconsole/utils/quota.js +2 -0
  1358. package/dist/bigconsole/utils/quota.js.map +1 -0
  1359. package/dist/bigconsole/utils/semanticTokens.d.ts +1 -0
  1360. package/dist/bigconsole/utils/semanticTokens.d.ts.map +1 -0
  1361. package/dist/bigconsole/utils/semanticTokens.js +2 -0
  1362. package/dist/bigconsole/utils/semanticTokens.js.map +1 -0
  1363. package/dist/bigconsole/utils/templateInstallInputs.d.ts +1 -0
  1364. package/dist/bigconsole/utils/templateInstallInputs.d.ts.map +1 -0
  1365. package/dist/bigconsole/utils/templateInstallInputs.js +2 -0
  1366. package/dist/bigconsole/utils/templateInstallInputs.js.map +1 -0
  1367. package/dist/bigconsole/utils/widgetBinding.d.ts +1 -0
  1368. package/dist/bigconsole/utils/widgetBinding.d.ts.map +1 -0
  1369. package/dist/bigconsole/utils/widgetBinding.js +2 -0
  1370. package/dist/bigconsole/utils/widgetBinding.js.map +1 -0
  1371. package/dist/bigconsole/utils/widgetPositioning.d.ts +1 -0
  1372. package/dist/bigconsole/utils/widgetPositioning.d.ts.map +1 -0
  1373. package/dist/bigconsole/utils/widgetPositioning.js +2 -0
  1374. package/dist/bigconsole/utils/widgetPositioning.js.map +1 -0
  1375. package/dist/bigconsole/utils/widgetTypeMapping.d.ts +1 -0
  1376. package/dist/bigconsole/utils/widgetTypeMapping.d.ts.map +1 -0
  1377. package/dist/bigconsole/utils/widgetTypeMapping.js +2 -0
  1378. package/dist/bigconsole/utils/widgetTypeMapping.js.map +1 -0
  1379. package/dist/bigconsole/workflowOpen.d.ts +1 -0
  1380. package/dist/bigconsole/workflowOpen.d.ts.map +1 -0
  1381. package/dist/bigconsole/workflowOpen.js +2 -0
  1382. package/dist/bigconsole/workflowOpen.js.map +1 -0
  1383. package/dist/constants/permissions.d.ts +1 -0
  1384. package/dist/constants/permissions.d.ts.map +1 -0
  1385. package/dist/constants/permissions.js +2 -0
  1386. package/dist/constants/permissions.js.map +1 -0
  1387. package/dist/generated/global-operations.d.ts +1 -0
  1388. package/dist/generated/global-operations.d.ts.map +1 -0
  1389. package/dist/generated/global-operations.js +2 -0
  1390. package/dist/generated/global-operations.js.map +1 -0
  1391. package/dist/generated/global-types.d.ts +1 -0
  1392. package/dist/generated/global-types.d.ts.map +1 -0
  1393. package/dist/generated/wspace-operations.d.ts +9 -138
  1394. package/dist/generated/wspace-operations.d.ts.map +1 -0
  1395. package/dist/generated/wspace-operations.js +242 -281
  1396. package/dist/generated/wspace-operations.js.map +1 -0
  1397. package/dist/generated/wspace-types.d.ts +1 -0
  1398. package/dist/generated/wspace-types.d.ts.map +1 -0
  1399. package/dist/generated/wspace-types.js +2 -0
  1400. package/dist/generated/wspace-types.js.map +1 -0
  1401. package/dist/index.d.ts +1 -0
  1402. package/dist/index.d.ts.map +1 -0
  1403. package/dist/node_modules/@e965/xlsx/xlsx.js +2 -0
  1404. package/dist/node_modules/@e965/xlsx/xlsx.js.map +1 -0
  1405. package/dist/node_modules/pdfjs-dist/build/pdf.js +2 -0
  1406. package/dist/node_modules/pdfjs-dist/build/pdf.js.map +1 -0
  1407. package/dist/shared/hooks/useTr.d.ts +1 -0
  1408. package/dist/shared/hooks/useTr.d.ts.map +1 -0
  1409. package/dist/shared/hooks/useTr.js +2 -0
  1410. package/dist/shared/hooks/useTr.js.map +1 -0
  1411. package/dist/stories/DashboardGuide.stories.d.ts +15 -0
  1412. package/dist/stories/DashboardGuide.stories.d.ts.map +1 -0
  1413. package/dist/stories/DataSinkStatusBadge.stories.d.ts +12 -0
  1414. package/dist/stories/DataSinkStatusBadge.stories.d.ts.map +1 -0
  1415. package/dist/stories/GaugeWidget.stories.d.ts +58 -0
  1416. package/dist/stories/GaugeWidget.stories.d.ts.map +1 -0
  1417. package/dist/stories/KPIComparisonWidget.stories.d.ts +76 -0
  1418. package/dist/stories/KPIComparisonWidget.stories.d.ts.map +1 -0
  1419. package/dist/stories/LiveCanvasToggle.stories.d.ts +9 -0
  1420. package/dist/stories/LiveCanvasToggle.stories.d.ts.map +1 -0
  1421. package/dist/stories/MetricCardWidget.stories.d.ts +88 -0
  1422. package/dist/stories/MetricCardWidget.stories.d.ts.map +1 -0
  1423. package/dist/stories/ProgressWidget.stories.d.ts +48 -0
  1424. package/dist/stories/ProgressWidget.stories.d.ts.map +1 -0
  1425. package/dist/stories/SetupStateBadge.stories.d.ts +12 -0
  1426. package/dist/stories/SetupStateBadge.stories.d.ts.map +1 -0
  1427. package/dist/translations/en.d.ts +1 -0
  1428. package/dist/translations/en.d.ts.map +1 -0
  1429. package/dist/utils/nativeBridge.d.ts +1 -0
  1430. package/dist/utils/nativeBridge.d.ts.map +1 -0
  1431. package/package.json +6 -11
  1432. package/dist/bigconsole/components/widgets/iframe-widget/framePolicy.d.ts +0 -20
  1433. package/dist/bigconsole/components/widgets/iframe-widget/framePolicy.js +0 -10
  1434. package/dist/bigconsole/renderers/adapters/adaptiveCardContent.d.ts +0 -29
  1435. package/dist/bigconsole/renderers/adapters/adaptiveCardContent.js +0 -51
  1436. package/dist/bigconsole/utils/dataSinkPayload.d.ts +0 -48
  1437. package/dist/bigconsole/utils/dataSinkPayload.js +0 -38
  1438. package/dist/bigconsole/utils/safeUrl.d.ts +0 -79
  1439. package/dist/bigconsole/utils/safeUrl.js +0 -93
  1440. package/dist/bigconsole/utils/sanitizeHtml.d.ts +0 -16
  1441. package/dist/bigconsole/utils/sanitizeHtml.js +0 -67
  1442. package/dist/node_modules/dompurify/dist/purify.es.js +0 -800
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParserBuilderPage.js","names":[],"sources":["../../../src/bigconsole/pages/ParserBuilderPage.tsx"],"sourcesContent":["/**\n * Parser Builder Page\n *\n * Step wizard for creating and editing Parsers with JQ or JSONata expressions.\n * Required fields: consoleId, name, type, expression, inputSinkKey, outputKey\n *\n * Steps: 1) Details 2) Source & Type 3) Expression & Test 4) Cache & Review.\n * One step is shown at a time; a top Stepper allows quick-nav. See the reference\n * mock at bigconsole-app/public/parser-mockup-v2.html.\n */\n\nimport { memo, useState, useMemo, useEffect, useCallback, useRef } from 'react';\nimport { useParams } from 'react-router';\nimport { useAppNavigate } from '../contexts';\nimport { useParserOperations } from '../hooks/useParserOperations';\nimport { useDataSinkOperations } from '../hooks/useDataSinkOperations';\nimport { useDashboardOperations } from '../hooks/useDashboardOperations';\nimport { CacheTTLSelector } from '../components/datasink/CacheTTLSelector';\nimport { Section, SectionStack } from '../components/common';\nimport type { ParserType } from '../types';\n\n// i18n\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\n\n// RBAC\nimport { usePermissions } from '@burdenoff/fe-libs/shared/providers/shell';\nimport { AccessDenied, PermissionButton } from '@burdenoff/fe-libs/shared/components';\nimport { BIGCONSOLE_PERMISSIONS } from '../../constants/permissions';\n\n// fe-libs UI components\nimport { Button } from '@burdenoff/fe-libs/ui';\nimport { PagePurpose, Stepper } from '@burdenoff/fe-libs/ui';\nimport type { StepperStep } from '@burdenoff/fe-libs/ui';\n\n// Lucide icons\nimport {\n ArrowLeft,\n Save,\n Play,\n Loader2,\n AlertCircle,\n CheckCircle2,\n FileCode2,\n Code,\n Settings,\n ChevronDown,\n ChevronRight,\n Eye,\n LayoutDashboard,\n Download,\n X,\n} from 'lucide-react';\n\n// ============================================================================\n// TYPES\n// ============================================================================\n\ninterface FormState {\n name: string;\n outputKey: string;\n description: string;\n type: ParserType;\n expression: string;\n inputSinkKey: string;\n // `null` represents \"no caching / not set\" (matches Parser.ttl: number | null\n // on the backend and CacheTTLSelector's value prop). Using number-only here\n // would force a collapse to 0/900 that silently loses user intent on edit.\n ttl: number | null;\n}\n\ninterface FormErrors {\n name?: string;\n outputKey?: string;\n expression?: string;\n inputSinkKey?: string;\n ttl?: string;\n}\n\n/** Metadata about a loaded DataSink sample (BOFF-5518 Part A). */\ninterface SampleMeta {\n total: number | null;\n hasMore: boolean | null;\n sinkName: string;\n}\n\n// ============================================================================\n// STYLE HELPERS\n// ============================================================================\n\n/**\n * Shared chrome for the raw form controls on this page. Centralised so every\n * field keeps the same height (>= 40px, the mobile touch minimum), the same\n * focus ring, and a placeholder colour that actually emits CSS in this shell\n * (`text-text-tertiary` is unregistered and rendered nothing).\n */\nconst FIELD_BASE =\n 'w-full min-w-0 min-h-control-md rounded-md border bg-bg-surface px-3 py-2.5 text-sm text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-2 focus:ring-action-primary-bg motion-safe:transition-colors disabled:bg-bg-sunken disabled:cursor-not-allowed disabled:opacity-60';\n\nfunction fieldClasses(hasError = false, extra = ''): string {\n return `${FIELD_BASE} ${hasError ? 'border-status-error-border' : 'border-[var(--color-border-default)]'} ${extra}`.trim();\n}\n\n/** Field-level label. Sits below a Section heading, never instead of one. */\nconst FIELD_LABEL = 'block text-sm font-medium text-text-primary mb-2';\n\n/** Helper/hint copy under a field. */\nconst FIELD_HINT = 'text-xs text-text-muted mt-1.5';\n\n// ============================================================================\n// HELPERS / CONSTANTS\n// ============================================================================\n\n/** Translate function shape from useI18n — accepts a key, a default/fallback, and optional interpolation params. */\ntype TFunc = (\n key: string,\n fallbackOrParams?: string | Record<string, string | number>,\n params?: Record<string, string | number>\n) => string;\n\n// Rows fetched for a DataSink preview / \"Load Sample\" (BOFF-5518). We never pull\n// the full payload into the browser — a small slice is enough to author + test a\n// parser, and keeps both the download and the subsequent test request small.\nconst PREVIEW_LIMIT = 25;\n\n// Default console ID for standalone parser creation (must match DataParsersPage)\nconst DEFAULT_CONSOLE_ID = 'default';\n\nconst STEP_KEYS = ['details', 'source', 'expression', 'review'] as const;\ntype StepKey = (typeof STEP_KEYS)[number];\n\nfunction buildSteps(t: TFunc): StepperStep[] {\n return [\n {\n key: 'details',\n label: t('bigconsole.parsers.builder.steps.details.label', 'Details'),\n description: t('bigconsole.parsers.builder.steps.details.description', 'Name & scope'),\n },\n {\n key: 'source',\n label: t('bigconsole.parsers.builder.steps.source.label', 'Source & Type'),\n description: t('bigconsole.parsers.builder.steps.source.description', 'Engine & data'),\n },\n {\n key: 'expression',\n label: t('bigconsole.parsers.builder.steps.expression.label', 'Expression & Test'),\n description: t('bigconsole.parsers.builder.steps.expression.description', 'Transform & verify'),\n },\n {\n key: 'review',\n label: t('bigconsole.parsers.builder.steps.review.label', 'Cache & Review'),\n description: t('bigconsole.parsers.builder.steps.review.description', 'Finish up'),\n },\n ];\n}\n\n/**\n * Generate a key from name (slug format)\n */\nfunction generateKey(name: string): string {\n return name\n .toLowerCase()\n .replace(/[^a-z0-9]+/g, '_')\n .replace(/^_+|_+$/g, '')\n .substring(0, 64);\n}\n\n/**\n * Validate form data\n */\nfunction validateForm(form: FormState, t: TFunc): FormErrors {\n const errors: FormErrors = {};\n\n if (!form.name.trim()) {\n errors.name = t('bigconsole.parsers.builder.validation.nameRequired', 'Name is required');\n } else if (form.name.length < 2) {\n errors.name = t('bigconsole.parsers.builder.validation.nameMinLength', 'Name must be at least 2 characters');\n }\n\n if (!form.outputKey.trim()) {\n errors.outputKey = t('bigconsole.parsers.builder.validation.outputKeyRequired', 'Output key is required');\n } else if (!/^[a-z0-9_]+$/.test(form.outputKey)) {\n errors.outputKey = t(\n 'bigconsole.parsers.builder.validation.outputKeyInvalid',\n 'Output key can only contain lowercase letters, numbers, and underscores'\n );\n }\n\n if (!form.expression.trim()) {\n errors.expression = t('bigconsole.parsers.builder.validation.expressionRequired', 'Expression is required');\n }\n\n if (!form.inputSinkKey.trim()) {\n errors.inputSinkKey = t('bigconsole.parsers.builder.validation.inputSinkRequired', 'Source DataSink is required');\n }\n\n if (form.ttl != null && form.ttl > 0 && (form.ttl < 30 || form.ttl > 86400)) {\n errors.ttl = t(\n 'bigconsole.parsers.builder.validation.cacheDurationRange',\n 'Cache duration must be between 30 and 86400 seconds'\n );\n }\n\n return errors;\n}\n\n// Parser type descriptions (JQ and JSONata only)\nfunction buildParserTypeInfo(\n t: TFunc\n): Record<ParserType, { name: string; description: string; placeholder: string; example: string }> {\n return {\n jq: {\n name: t('bigconsole.parsers.builder.parserType.jq.name', 'JQ'),\n description: t(\n 'bigconsole.parsers.builder.parserType.jq.description',\n 'Lightweight JSON processor - fast and efficient for simple transformations'\n ),\n placeholder: '.data | map({name: .name, value: .count})',\n example: t(\n 'bigconsole.parsers.builder.parserType.jq.example',\n '.data | map(.name) - Extract names from data array'\n ),\n },\n jsonata: {\n name: t('bigconsole.parsers.builder.parserType.jsonata.name', 'JSONata'),\n description: t(\n 'bigconsole.parsers.builder.parserType.jsonata.description',\n 'Query and transformation language - supports complex queries and calculations'\n ),\n placeholder: '$sum(data[*].value)',\n example: t(\n 'bigconsole.parsers.builder.parserType.jsonata.example',\n '$sum(data.values) - Calculate sum of values'\n ),\n },\n };\n}\n\n// ============================================================================\n// COMPONENT\n// ============================================================================\n\nexport const ParserBuilderPage = memo(function ParserBuilderPage() {\n const { parserId, consoleId: urlConsoleId } = useParams<{\n parserId?: string;\n consoleId?: string;\n }>();\n const navigate = useAppNavigate();\n const { t } = useI18n();\n\n // Translated wizard steps + parser-type metadata (rebuilt when locale/t changes)\n const steps = useMemo(() => buildSteps(t), [t]);\n const parserTypeInfo = useMemo(() => buildParserTypeInfo(t), [t]);\n const stepCount = steps.length;\n\n // Wizard step\n const [activeStep, setActiveStep] = useState(0);\n\n // State for selected dashboard (when creating from global route)\n const [selectedDashboardId, setSelectedDashboardId] = useState<string>(DEFAULT_CONSOLE_ID);\n\n // Use URL consoleId, or selected dashboard, or fall back to default\n const consoleId = urlConsoleId || selectedDashboardId || DEFAULT_CONSOLE_ID;\n\n const isEdit = parserId !== 'new' && !!parserId;\n\n // Permissions\n const { hasPermission, isLoading: permissionsLoading } = usePermissions();\n const canRead = hasPermission(BIGCONSOLE_PERMISSIONS.PARSER_READ);\n // The Save action needs update (edit mode) or create (new mode).\n const canSave = isEdit\n ? hasPermission(BIGCONSOLE_PERMISSIONS.PARSER_UPDATE)\n : hasPermission(BIGCONSOLE_PERMISSIONS.PARSER_CREATE);\n const savePermission = isEdit ? BIGCONSOLE_PERMISSIONS.PARSER_UPDATE : BIGCONSOLE_PERMISSIONS.PARSER_CREATE;\n\n // Show dashboard selector when NOT on dashboard-scoped route (both create and edit)\n const showDashboardSelector = !urlConsoleId;\n\n // Form state\n const [form, setForm] = useState<FormState>({\n name: '',\n outputKey: '',\n description: '',\n type: 'jq',\n expression: '',\n inputSinkKey: '',\n // 15 minutes (Recommended preset). A 0 default made CacheTTLSelector\n // auto-select \"Custom\" with an invalid value, blocking form submission.\n ttl: 900,\n });\n const [errors, setErrors] = useState<FormErrors>({});\n const [keyManuallyEdited, setKeyManuallyEdited] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const [submitError, setSubmitError] = useState<string | null>(null);\n\n // Test panel state\n const [testInput, setTestInput] = useState(\n '{\\n \"data\": [\\n {\"name\": \"Item 1\", \"count\": 10},\\n {\"name\": \"Item 2\", \"count\": 20}\\n ]\\n}'\n );\n const [testOutput, setTestOutput] = useState('');\n const [testError, setTestError] = useState<string | null>(null);\n const [isTesting, setIsTesting] = useState(false);\n // Set when a reference-mode test ran against a truncated sample (BOFF-5518) —\n // surfaces \"tested first N of M rows\" so a partial-sample result is visible.\n const [testMeta, setTestMeta] = useState<{ sampledRows: number | null; totalRows: number | null } | null>(null);\n\n // Inferred test mode (BOFF-5518): once a sample is LOADED from a DataSink the\n // Input JSON is locked (read-only) — that's \"reference mode\". Typing into an\n // empty box is \"sample mode\". Locking prevents load-then-edit of a large\n // payload; the user must Clear to edit.\n const [inputLocked, setInputLocked] = useState(false);\n const [sampleMeta, setSampleMeta] = useState<SampleMeta | null>(null);\n const [loadingSample, setLoadingSample] = useState(false);\n // Mirrors the selected sink so an in-flight preview/sample load can detect a\n // mid-flight source change and drop its (now stale) result.\n const inputSinkKeyRef = useRef(form.inputSinkKey);\n useEffect(() => {\n inputSinkKeyRef.current = form.inputSinkKey;\n }, [form.inputSinkKey]);\n\n // Data preview state\n const [showDataPreview, setShowDataPreview] = useState(false);\n const [dataPreview, setDataPreview] = useState<Record<string, unknown> | null>(null);\n const [dataPreviewLoading, setDataPreviewLoading] = useState(false);\n const [dataPreviewError, setDataPreviewError] = useState<string | null>(null);\n const [dataPreviewMeta, setDataPreviewMeta] = useState<SampleMeta | null>(null);\n\n // Operations\n const { loading, error, parsers, fetchParser, createParser, updateParser, testParserExpression } =\n useParserOperations({\n consoleId: consoleId || '',\n skipFetch: true,\n });\n\n const { dataSinks, fetchDataSinks, getDataSinkData } = useDataSinkOperations({\n skipFetch: true,\n });\n\n // Fetch dashboards for the dashboard selector (only when showing selector)\n const { dashboards, fetchDashboards, loading: dashboardsLoading } = useDashboardOperations();\n\n // Get existing parser if editing\n const existingParser = isEdit ? parsers.find((p) => p.id === parserId) : null;\n\n // Load data on mount\n useEffect(() => {\n fetchDataSinks();\n if (isEdit && parserId) {\n fetchParser(parserId);\n }\n // Fetch dashboards for the selector (only when showing selector)\n if (showDashboardSelector) {\n fetchDashboards();\n }\n }, [isEdit, parserId, fetchParser, fetchDataSinks, showDashboardSelector, fetchDashboards]);\n\n // Populate form with existing data when editing\n useEffect(() => {\n if (existingParser) {\n setForm({\n name: existingParser.name || '',\n outputKey: existingParser.outputKey || '',\n description: existingParser.description || '',\n type: existingParser.type,\n expression: existingParser.expression || '',\n inputSinkKey: existingParser.inputSinkKey || '',\n // Preserve the stored ttl exactly as saved — `null` and `0` both mean\n // \"no caching\" and are legitimate user choices. The BOFF-2241 default\n // (900) applies only to the *initial* Create-form state, never to\n // hydrating an existing parser.\n ttl: existingParser.ttl ?? null,\n });\n setKeyManuallyEdited(true);\n // Set the dashboard scope from existing parser's consoleId\n if (existingParser.consoleId) {\n setSelectedDashboardId(existingParser.consoleId);\n }\n }\n }, [existingParser]);\n\n const selectedSinkName = useMemo(() => {\n const sink = dataSinks.find((ds) => ds.key === form.inputSinkKey);\n return sink?.name || form.inputSinkKey;\n }, [dataSinks, form.inputSinkKey]);\n\n // Auto-generate key from name\n const handleNameChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n const name = e.target.value;\n setForm((prev) => ({\n ...prev,\n name,\n outputKey: keyManuallyEdited ? prev.outputKey : generateKey(name),\n }));\n setErrors((prev) => ({ ...prev, name: undefined }));\n },\n [keyManuallyEdited]\n );\n\n // Handle output key change\n const handleOutputKeyChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n const outputKey = e.target.value.toLowerCase().replace(/[^a-z0-9_]/g, '');\n setForm((prev) => ({ ...prev, outputKey }));\n setKeyManuallyEdited(true);\n setErrors((prev) => ({ ...prev, outputKey: undefined }));\n }, []);\n\n // Handle description change\n const handleDescriptionChange = useCallback((e: React.ChangeEvent<HTMLTextAreaElement>) => {\n setForm((prev) => ({ ...prev, description: e.target.value }));\n }, []);\n\n // Handle type change\n const handleTypeChange = useCallback((type: ParserType) => {\n setForm((prev) => ({ ...prev, type }));\n // Clear test output when type changes\n setTestOutput('');\n setTestError(null);\n }, []);\n\n // Handle expression change\n const handleExpressionChange = useCallback((e: React.ChangeEvent<HTMLTextAreaElement>) => {\n setForm((prev) => ({ ...prev, expression: e.target.value }));\n setErrors((prev) => ({ ...prev, expression: undefined }));\n }, []);\n\n // Handle input sink change — reset any loaded sample (it belonged to the old sink)\n const handleInputSinkChange = useCallback(\n (e: React.ChangeEvent<HTMLSelectElement>) => {\n setForm((prev) => ({ ...prev, inputSinkKey: e.target.value }));\n setErrors((prev) => ({ ...prev, inputSinkKey: undefined }));\n setShowDataPreview(false);\n setDataPreview(null);\n setDataPreviewMeta(null);\n setDataPreviewError(null);\n // Reset any loaded reference sample — it belonged to the previous sink.\n // Without this, a locked (reference-mode) Input JSON would keep showing the\n // old sink's rows while Run Test sends the NEW dataSinkKey — a silent\n // data/display mismatch. A locked sample is cleared; hand-typed sample JSON\n // (unlocked) is left alone since it isn't tied to a specific sink.\n if (inputLocked) {\n setTestInput('');\n setInputLocked(false);\n }\n setSampleMeta(null);\n setTestOutput('');\n setTestError(null);\n setTestMeta(null);\n },\n [inputLocked]\n );\n\n // Handle TTL change\n const handleTTLChange = useCallback((ttl: number | null) => {\n setForm((prev) => ({ ...prev, ttl }));\n setErrors((prev) => ({ ...prev, ttl: undefined }));\n }, []);\n\n // Handle dashboard selection change\n const handleDashboardChange = useCallback((e: React.ChangeEvent<HTMLSelectElement>) => {\n setSelectedDashboardId(e.target.value);\n }, []);\n\n // Handle test input typing (only possible when NOT locked → sample mode)\n const handleTestInputChange = useCallback((e: React.ChangeEvent<HTMLTextAreaElement>) => {\n setTestInput(e.target.value);\n }, []);\n\n // Load a SMALL sample from the selected datasink into the Input JSON and lock\n // it (reference mode). BOFF-5518 Part A: only PREVIEW_LIMIT rows are fetched,\n // never the full payload.\n const handleLoadSampleData = useCallback(async () => {\n const requestedKey = form.inputSinkKey;\n if (!requestedKey) return;\n setLoadingSample(true);\n try {\n const result = await getDataSinkData({ key: requestedKey }, { limit: PREVIEW_LIMIT });\n // Ignore a result that arrived after the user switched sources mid-flight —\n // otherwise we'd lock the input to a stale sample while the form points at a\n // different sink (a reference-mode Run Test would then mismatch).\n if (inputSinkKeyRef.current !== requestedKey) return;\n if (result?.raw !== undefined && result?.raw !== null) {\n setTestInput(JSON.stringify(result.raw, null, 2));\n setInputLocked(true);\n setSampleMeta({\n total: result.totalCount ?? null,\n hasMore: result.hasMore ?? null,\n sinkName: selectedSinkName,\n });\n setTestOutput('');\n setTestError(null);\n setTestMeta(null);\n } else {\n // getDataSinkData returns null (not throws) on failure; surface it so the\n // click isn't a silent no-op after the spinner stops.\n setTestError(\n t('bigconsole.parsers.builder.errors.loadSampleFailed', 'Could not load a sample from the selected DataSink.')\n );\n }\n } catch (err) {\n if (inputSinkKeyRef.current !== requestedKey) return;\n setTestError(\n err instanceof Error\n ? err.message\n : t('bigconsole.parsers.builder.errors.loadSampleDataFailed', 'Failed to load sample data')\n );\n } finally {\n setLoadingSample(false);\n }\n }, [form.inputSinkKey, getDataSinkData, selectedSinkName, t]);\n\n // Clear the loaded sample → unlock for manual editing (back to sample mode).\n const handleClearInput = useCallback(() => {\n setTestInput('');\n setInputLocked(false);\n setSampleMeta(null);\n setTestMeta(null);\n setTestOutput('');\n setTestError(null);\n }, []);\n\n // Handle data preview toggle (step 2) — also a small slice only.\n const handleToggleDataPreview = useCallback(async () => {\n if (showDataPreview) {\n setShowDataPreview(false);\n return;\n }\n\n if (!form.inputSinkKey) {\n setDataPreviewError(\n t('bigconsole.parsers.builder.errors.selectSourceFirst', 'Please select a source DataSink first')\n );\n return;\n }\n\n setShowDataPreview(true);\n setDataPreviewLoading(true);\n setDataPreviewError(null);\n\n const requestedKey = form.inputSinkKey;\n try {\n const result = await getDataSinkData({ key: requestedKey }, { limit: PREVIEW_LIMIT });\n // Drop a stale result if the source changed while this was in flight.\n if (inputSinkKeyRef.current !== requestedKey) return;\n if (result?.raw !== undefined && result?.raw !== null) {\n setDataPreview(result.raw as Record<string, unknown>);\n setDataPreviewMeta({\n total: result.totalCount ?? null,\n hasMore: result.hasMore ?? null,\n sinkName: selectedSinkName,\n });\n } else {\n setDataPreviewError(\n t('bigconsole.parsers.builder.errors.noDataInSink', 'No data available in selected DataSink')\n );\n }\n } catch (err) {\n if (inputSinkKeyRef.current !== requestedKey) return;\n setDataPreviewError(\n err instanceof Error\n ? err.message\n : t('bigconsole.parsers.builder.errors.loadDataFailed', 'Failed to load data')\n );\n } finally {\n setDataPreviewLoading(false);\n }\n }, [showDataPreview, form.inputSinkKey, getDataSinkData, selectedSinkName, t]);\n\n // Handle test expression\n const handleTestExpression = useCallback(async () => {\n if (!form.expression.trim()) {\n setTestError(t('bigconsole.parsers.builder.validation.expressionRequired', 'Expression is required'));\n return;\n }\n\n // BOFF-5518: reference mode (a sample was loaded → box locked) sends only the\n // expression + DataSink key; the backend evaluates server-side, no data blob.\n // Sample mode sends the (hand-typed) JSON as before.\n let input: {\n type: ParserType;\n expression: string;\n sampleData?: unknown;\n dataSinkKey?: string;\n sampleLimit?: number;\n };\n if (inputLocked) {\n input = {\n type: form.type,\n expression: form.expression,\n dataSinkKey: form.inputSinkKey,\n sampleLimit: PREVIEW_LIMIT,\n };\n } else {\n let parsedInput: unknown;\n try {\n parsedInput = JSON.parse(testInput);\n } catch {\n setTestError(t('bigconsole.parsers.builder.errors.invalidInputJson', 'Input JSON is not valid JSON'));\n return;\n }\n input = { type: form.type, expression: form.expression, sampleData: parsedInput };\n }\n\n setIsTesting(true);\n setTestError(null);\n setTestOutput('');\n setTestMeta(null);\n\n try {\n const result = await testParserExpression(input);\n\n if (result) {\n if (result.success) {\n setTestOutput(JSON.stringify(result.output, null, 2));\n if (result.sampled) {\n setTestMeta({ sampledRows: result.sampledRows ?? null, totalRows: result.totalRows ?? null });\n }\n } else {\n setTestError(result.error || t('bigconsole.parsers.builder.errors.testFailed', 'Test failed'));\n }\n } else {\n // The hook returns null (not throws) when the GraphQL call fails —\n // surface it instead of stopping the spinner with no output/error.\n setTestError(\n t('bigconsole.parsers.builder.errors.testRequestFailed', 'Test request failed — please try again.')\n );\n }\n } catch (err) {\n setTestError(\n err instanceof Error ? err.message : t('bigconsole.parsers.builder.errors.testFailed', 'Test failed')\n );\n } finally {\n setIsTesting(false);\n }\n }, [form.type, form.expression, form.inputSinkKey, testInput, inputLocked, testParserExpression, t]);\n\n // Handle back navigation (leave the builder)\n const handleLeave = useCallback(() => {\n if (urlConsoleId) {\n navigate(`/dashboards/${urlConsoleId}/parsers`);\n } else {\n navigate('/parsers');\n }\n }, [navigate, urlConsoleId]);\n\n // Handle form submission\n const handleSubmit = useCallback(async () => {\n setSubmitError(null);\n\n // Validate form\n const validationErrors = validateForm(form, t);\n if (Object.keys(validationErrors).length > 0) {\n setErrors(validationErrors);\n // Jump to the first step whose field is invalid so the error is visible\n // (the offending field lives on an earlier step, not the Review step).\n if (validationErrors.name || validationErrors.outputKey) {\n setActiveStep(0);\n } else if (validationErrors.inputSinkKey) {\n setActiveStep(1);\n } else if (validationErrors.expression) {\n setActiveStep(2);\n }\n return;\n }\n\n setIsSaving(true);\n try {\n if (isEdit && existingParser) {\n // Update existing (type is immutable, not included in update)\n const result = await updateParser(\n existingParser.id,\n {\n name: form.name,\n description: form.description || undefined,\n expression: form.expression,\n inputSinkKey: form.inputSinkKey,\n outputKey: form.outputKey,\n // Pass `null` through so the backend distinguishes an explicit\n // \"clear caching\" from an unset field (InputMaybe<Int> = Int | null).\n ttl: form.ttl,\n },\n existingParser.version\n );\n if (!result) {\n throw new Error(t('bigconsole.parsers.builder.errors.updateFailed', 'Failed to update parser'));\n }\n } else {\n // Create new - include all required fields\n const result = await createParser({\n consoleId: consoleId || '',\n name: form.name,\n type: form.type,\n expression: form.expression,\n inputSinkKey: form.inputSinkKey,\n outputKey: form.outputKey,\n description: form.description || undefined,\n ttl: form.ttl ?? undefined,\n });\n if (!result) {\n throw new Error(t('bigconsole.parsers.builder.errors.createFailed', 'Failed to create parser'));\n }\n }\n handleLeave();\n } catch (err) {\n setSubmitError(\n err instanceof Error ? err.message : t('bigconsole.parsers.builder.errors.saveFailed', 'Failed to save parser')\n );\n } finally {\n setIsSaving(false);\n }\n }, [form, isEdit, existingParser, createParser, updateParser, consoleId, handleLeave, t]);\n\n // Full-form validity (gates the final Create action)\n const isFormValid = useMemo(() => {\n return (\n form.name.trim().length >= 2 &&\n form.expression.trim().length > 0 &&\n form.inputSinkKey.trim().length > 0 &&\n form.outputKey.trim().length > 0 &&\n /^[a-z0-9_]+$/.test(form.outputKey)\n );\n }, [form.name, form.expression, form.inputSinkKey, form.outputKey]);\n\n // Per-step validity — gates the \"Next\" button so problems surface in context.\n const canAdvance = useCallback(\n (step: number): boolean => {\n const key: StepKey = STEP_KEYS[step];\n switch (key) {\n case 'details':\n return (\n form.name.trim().length >= 2 && form.outputKey.trim().length > 0 && /^[a-z0-9_]+$/.test(form.outputKey)\n );\n case 'source':\n return form.inputSinkKey.trim().length > 0;\n case 'expression':\n return form.expression.trim().length > 0;\n default:\n return true;\n }\n },\n [form.name, form.outputKey, form.inputSinkKey, form.expression]\n );\n\n const goToStep = useCallback(\n (step: number) => {\n const target = Math.max(0, Math.min(step, stepCount - 1));\n // Backward navigation is always allowed; a forward jump requires every\n // intermediate step to be valid (defense-in-depth even though the Stepper\n // no longer offers skip-ahead) so you can't land on an empty Review step.\n if (target > activeStep) {\n for (let s = activeStep; s < target; s++) {\n if (!canAdvance(s)) return;\n }\n }\n setActiveStep(target);\n },\n [activeStep, canAdvance, stepCount]\n );\n const goNext = useCallback(() => {\n setActiveStep((s) => Math.min(s + 1, stepCount - 1));\n }, [stepCount]);\n const goPrev = useCallback(() => {\n setActiveStep((s) => Math.max(s - 1, 0));\n }, []);\n\n // Loading state (wait for the parser fetch in edit mode and the permission load)\n if ((loading && isEdit) || permissionsLoading) {\n return (\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <Loader2 className=\"w-8 h-8 text-text-secondary animate-spin\" />\n </div>\n );\n }\n\n // Read gate — editing an existing parser requires read access\n if (isEdit && !canRead) {\n return (\n <AccessDenied\n title={t('bigconsole.parsers.builder.accessDenied.title', 'Access Denied')}\n description={t(\n 'bigconsole.parsers.builder.accessDenied.description',\n \"You don't have permission to view this parser.\"\n )}\n />\n );\n }\n\n // Error state\n if (error) {\n return (\n <div className=\"p-card-padding\">\n <Section\n tone=\"danger\"\n headingLevel={2}\n title={t('bigconsole.parsers.builder.errors.loadParserFailed', 'Failed to load Parser')}\n description=\"The parser could not be fetched, so the form cannot be filled in.\"\n icon={<AlertCircle className=\"h-icon-md w-icon-md text-[var(--color-status-error-text)]\" />}\n actions={\n <Button onClick={handleLeave} variant=\"secondary\" size=\"sm\">\n <ArrowLeft className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.builder.header.backToParsers', 'Back to Parsers')}\n </Button>\n }\n data-testid=\"parser-builder-load-error\"\n >\n <p className=\"font-mono text-xs break-words text-text-secondary\">{error.message}</p>\n </Section>\n </div>\n );\n }\n\n const typeInfo = parserTypeInfo[form.type];\n const isLastStep = activeStep === stepCount - 1;\n\n // \"Step 2 of 4\" — rendered as the step section's `meta` chip, next to its title.\n const stepCounterChip = (\n <span className=\"text-xs font-medium text-text-muted\">\n {t('bigconsole.parsers.builder.header.stepCounter', 'Step {{current}} of {{total}}', {\n current: activeStep + 1,\n total: stepCount,\n })}\n </span>\n );\n\n return (\n <div data-tour=\"bigconsole-parser-builder\" className=\"min-h-screen bg-bg-canvas\">\n <div className=\"max-w-4xl mx-auto p-card-padding pb-10\">\n <SectionStack>\n {/* Page header strip — structural, no surface of its own */}\n <div className=\"border-b border-[var(--color-border-subtle)] pb-form-gap\">\n <Button onClick={handleLeave} variant=\"ghost\" size=\"sm\" className=\"mb-4\">\n <ArrowLeft className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.builder.header.backToParsers', 'Back to Parsers')}\n </Button>\n <h1 className=\"text-2xl font-bold text-text-primary sm:text-3xl\">\n {isEdit\n ? t('bigconsole.parsers.builder.header.editTitle', 'Edit Parser')\n : t('bigconsole.parsers.builder.header.createTitle', 'Create Parser')}\n </h1>\n <p className=\"text-sm text-text-secondary mt-1\">\n {t('bigconsole.parsers.builder.header.subtitle', 'Transform data using JQ or JSONata expressions.')}\n </p>\n </div>\n\n <PagePurpose className=\"max-w-[80ch]\">\n {t(\n 'bigconsole.parsers.builder.header.purpose',\n 'A parser maps raw input into structured fields using a JQ or JSONata expression. Write the expression, run it against a sample to confirm the output, and save it once it produces the shape you need — then reuse it across pipelines to normalise any source.'\n )}\n </PagePurpose>\n\n {/* Stepper — click a step to jump.\n No allowSkipAhead: the Stepper only lets you revisit steps you've\n already reached (idx <= active). Forward progress goes through Next,\n which is gated by per-step validation — so you can't land on an\n empty Review before filling earlier steps. */}\n <div className=\"min-w-0 overflow-x-auto\">\n <Stepper steps={steps} active={activeStep} onStepClick={goToStep} />\n </div>\n\n {/* Error Alert */}\n {submitError && (\n <Section\n tone=\"danger\"\n headingLevel={2}\n title={t('bigconsole.parsers.builder.errors.saveParserFailed', 'Failed to save Parser')}\n icon={<AlertCircle className=\"h-icon-sm w-icon-sm text-[var(--color-status-error-text)]\" />}\n data-testid=\"parser-submit-error\"\n >\n <p className=\"font-mono text-xs break-words text-text-secondary\">{submitError}</p>\n </Section>\n )}\n\n {/* The wizard commits from the Save control on the last step, but the\n fields still live in a real <form> so labels, native validation and\n the Enter key behave normally. Enter must never post the page. */}\n <form\n className=\"flex flex-col gap-section-gap\"\n onSubmit={(e) => {\n e.preventDefault();\n if (isLastStep) {\n void handleSubmit();\n }\n }}\n >\n {/* ============ STEP 1: DETAILS ============ */}\n {activeStep === 0 && (\n <Section\n emphasis=\"primary\"\n headingLevel={2}\n title=\"Basic information\"\n description=\"Essential details for your parser.\"\n icon={<FileCode2 className=\"h-icon-sm w-icon-sm\" />}\n meta={stepCounterChip}\n bodyClassName=\"space-y-5\"\n data-testid=\"parser-basic-information\"\n >\n <div className=\"grid gap-5 sm:grid-cols-2\">\n {/* Name field */}\n <div>\n <label htmlFor=\"name\" className={FIELD_LABEL}>\n {t('bigconsole.parsers.builder.fields.name.label', 'Name')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <input\n id=\"name\"\n type=\"text\"\n value={form.name}\n onChange={handleNameChange}\n placeholder={t(\n 'bigconsole.parsers.builder.fields.name.placeholder',\n 'e.g., User Analytics Parser'\n )}\n className={fieldClasses(Boolean(errors.name))}\n />\n {errors.name && <p className=\"text-xs text-status-error-text mt-1.5\">{errors.name}</p>}\n </div>\n\n {/* Output Key field */}\n <div>\n <label htmlFor=\"outputKey\" className={FIELD_LABEL}>\n {t('bigconsole.parsers.builder.fields.outputKey.label', 'Output Key')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <input\n id=\"outputKey\"\n type=\"text\"\n value={form.outputKey}\n onChange={handleOutputKeyChange}\n placeholder=\"user_analytics_parser\"\n disabled={isEdit}\n className={fieldClasses(Boolean(errors.outputKey), 'font-mono')}\n />\n {errors.outputKey && <p className=\"text-xs text-status-error-text mt-1.5\">{errors.outputKey}</p>}\n {!isEdit && (\n <p className={FIELD_HINT}>\n {t(\n 'bigconsole.parsers.builder.fields.outputKey.helper',\n 'Auto-generated from name. Customize if needed.'\n )}\n </p>\n )}\n </div>\n </div>\n\n {/* Description field */}\n <div>\n <label htmlFor=\"description\" className={FIELD_LABEL}>\n {t('bigconsole.parsers.builder.fields.description.label', 'Description')}\n </label>\n <textarea\n id=\"description\"\n value={form.description}\n onChange={handleDescriptionChange}\n placeholder={t(\n 'bigconsole.parsers.builder.fields.description.placeholder',\n 'Describe what this parser does...'\n )}\n rows={3}\n className={fieldClasses(false, 'resize-y')}\n />\n </div>\n\n {/* Dashboard Selector - shown when NOT on dashboard-scoped route */}\n {showDashboardSelector && (\n <div>\n <label htmlFor=\"dashboard\" className={`${FIELD_LABEL} flex items-center gap-2`}>\n <LayoutDashboard aria-hidden=\"true\" className=\"w-4 h-4\" />\n {t('bigconsole.parsers.builder.fields.dashboard.label', 'Dashboard Scope')}\n </label>\n <select\n id=\"dashboard\"\n value={selectedDashboardId}\n onChange={handleDashboardChange}\n disabled={dashboardsLoading || isEdit}\n className={fieldClasses()}\n >\n <option value=\"default\">\n {t('bigconsole.parsers.builder.fields.dashboard.globalOption', 'Global (available everywhere)')}\n </option>\n {dashboards.map((dashboard) => (\n <option key={dashboard.id} value={dashboard.id}>\n {dashboard.name}\n </option>\n ))}\n </select>\n <p className={FIELD_HINT}>\n {isEdit\n ? t(\n 'bigconsole.parsers.builder.fields.dashboard.helperLocked',\n 'Dashboard scope cannot be changed after creation.'\n )\n : selectedDashboardId === 'default'\n ? t(\n 'bigconsole.parsers.builder.fields.dashboard.helperGlobal',\n 'Global parsers are available across all dashboards.'\n )\n : t(\n 'bigconsole.parsers.builder.fields.dashboard.helperScoped',\n 'This parser will only be available in the selected dashboard.'\n )}\n </p>\n </div>\n )}\n </Section>\n )}\n\n {/* ============ STEP 2: SOURCE & TYPE ============ */}\n {activeStep === 1 && (\n /* Parser configuration — the block this route exists for */\n <Section\n emphasis=\"primary\"\n headingLevel={2}\n title=\"Parser configuration\"\n description=\"Pick the language and point it at a source.\"\n icon={<Code className=\"h-icon-sm w-icon-sm\" />}\n meta={stepCounterChip}\n bodyClassName=\"space-y-5\"\n data-testid=\"parser-configuration\"\n >\n {/* Parser Type */}\n <fieldset className=\"min-w-0 border-0 p-0 m-0\">\n <legend className=\"mb-3 text-sm font-medium text-text-primary\">\n {t('bigconsole.parsers.builder.fields.parserType.label', 'Parser Type')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </legend>\n <div className=\"space-y-2\">\n {(Object.keys(parserTypeInfo) as ParserType[]).map((type) => {\n const info = parserTypeInfo[type];\n return (\n <label\n key={type}\n className={`\n flex items-start gap-3 p-3\n rounded-md border\n cursor-pointer\n motion-safe:transition-colors\n ${\n form.type === type\n ? 'border-action-primary-bg bg-action-primary-bg/5'\n : 'border-transparent bg-bg-sunken hover:border-[var(--color-border-subtle)]'\n }\n `}\n >\n <input\n type=\"radio\"\n name=\"parserType\"\n value={type}\n checked={form.type === type}\n onChange={() => handleTypeChange(type)}\n className=\"mt-1 w-4 h-4 text-action-primary-bg\"\n />\n <span className=\"min-w-0\">\n <span className=\"block text-sm font-medium text-text-primary\">{info.name}</span>\n <span className=\"mt-0.5 block text-xs text-text-secondary\">{info.description}</span>\n </span>\n </label>\n );\n })}\n </div>\n </fieldset>\n\n {/* Source DataSink */}\n <div>\n <label htmlFor=\"inputSinkKey\" className={FIELD_LABEL}>\n {t('bigconsole.parsers.builder.fields.sourceDataSink.label', 'Source DataSink')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <select\n id=\"inputSinkKey\"\n value={form.inputSinkKey}\n onChange={handleInputSinkChange}\n className={fieldClasses(Boolean(errors.inputSinkKey))}\n >\n <option value=\"\">\n {t('bigconsole.parsers.builder.fields.sourceDataSink.placeholder', 'Select a DataSink...')}\n </option>\n {dataSinks.map((ds) => (\n <option key={ds.id} value={ds.key}>\n {ds.name || ds.key}\n </option>\n ))}\n </select>\n {errors.inputSinkKey && (\n <p className=\"text-xs text-status-error-text mt-1.5\">{errors.inputSinkKey}</p>\n )}\n {dataSinks.length === 0 ? (\n <p className={FIELD_HINT}>\n {t(\n 'bigconsole.parsers.builder.fields.sourceDataSink.emptyState',\n 'No DataSinks yet — create one first, then return here to build a parser for it.'\n )}\n </p>\n ) : (\n <p className={FIELD_HINT}>Select the data source for this parser to transform.</p>\n )}\n\n {/* Show Data Preview Button */}\n {form.inputSinkKey && (\n <div className=\"mt-3\">\n <button\n type=\"button\"\n onClick={handleToggleDataPreview}\n aria-expanded={showDataPreview}\n aria-controls=\"parser-data-preview\"\n className=\"inline-flex min-h-control-md items-center gap-2 rounded-md text-sm text-action-primary-bg hover:text-action-primary-bgHover motion-safe:transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface\"\n >\n {showDataPreview ? <ChevronDown className=\"w-4 h-4\" /> : <ChevronRight className=\"w-4 h-4\" />}\n <Eye className=\"w-4 h-4\" />\n {t('bigconsole.parsers.builder.dataPreview.toggle', 'Show Data Preview')}\n </button>\n\n {/* Data Preview Panel — supporting context for the field above */}\n {showDataPreview && (\n <Section\n id=\"parser-data-preview\"\n emphasis=\"muted\"\n padding=\"compact\"\n headingLevel={3}\n title=\"Sample data\"\n description=\"A slice of the payload stored on the selected DataSink.\"\n className=\"mt-3\"\n data-testid=\"parser-data-preview\"\n >\n {dataPreviewLoading ? (\n <div className=\"flex items-center justify-center p-4\">\n <Loader2 className=\"w-5 h-5 text-text-secondary animate-spin\" />\n <span className=\"ml-2 text-sm text-text-secondary\">\n {t('bigconsole.parsers.builder.dataPreview.loading', 'Loading sample…')}\n </span>\n </div>\n ) : dataPreviewError ? (\n <p className=\"text-sm text-status-error-text\">{dataPreviewError}</p>\n ) : dataPreview ? (\n <>\n <pre className=\"max-h-48 min-w-0 overflow-auto rounded-md bg-bg-canvas p-3 font-mono text-xs text-text-primary\">\n {JSON.stringify(dataPreview, null, 2)}\n </pre>\n {dataPreviewMeta && (\n <p className={FIELD_HINT}>\n {t('bigconsole.parsers.builder.dataPreview.previewingSample', 'Previewing a sample')}\n {dataPreviewMeta.total != null\n ? t(\n 'bigconsole.parsers.builder.dataPreview.rowRange',\n ' (first {{shown}} of {{total}} rows)',\n {\n shown: Math.min(PREVIEW_LIMIT, dataPreviewMeta.total),\n total: dataPreviewMeta.total,\n }\n )\n : ''}\n {' · '}\n {dataPreviewMeta.sinkName}\n </p>\n )}\n </>\n ) : (\n <p className=\"text-center text-sm text-text-secondary\">\n {t('bigconsole.parsers.builder.dataPreview.noData', 'No data available')}\n </p>\n )}\n </Section>\n )}\n </div>\n )}\n </div>\n </Section>\n )}\n\n {/* ============ STEP 3: EXPRESSION & TEST ============ */}\n {activeStep === 2 && (\n <Section\n emphasis=\"primary\"\n headingLevel={2}\n title=\"Test expression\"\n description=\"Write the expression, then run it against sample data before you save.\"\n icon={<Play className=\"h-icon-sm w-icon-sm\" />}\n meta={stepCounterChip}\n bodyClassName=\"space-y-5\"\n data-testid=\"parser-test-expression\"\n >\n {/* Expression */}\n <div>\n <label htmlFor=\"expression\" className={FIELD_LABEL}>\n {t('bigconsole.parsers.builder.fields.expression.label', 'Expression')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <textarea\n id=\"expression\"\n value={form.expression}\n onChange={handleExpressionChange}\n placeholder={typeInfo.placeholder}\n rows={8}\n className={fieldClasses(Boolean(errors.expression), 'font-mono resize-y min-h-[12rem]')}\n />\n {errors.expression && <p className=\"text-xs text-status-error-text mt-1.5\">{errors.expression}</p>}\n <p className={FIELD_HINT}>\n {t('bigconsole.parsers.builder.fields.expression.example', 'Example: {{example}}', {\n example: typeInfo.example,\n })}\n </p>\n </div>\n\n {/* Test Input. Loading a sample locks the box (reference mode) —\n the mode badge and the Load/Clear pair live on the label row. */}\n <div>\n <div className=\"mb-2 flex flex-wrap items-center justify-between gap-control-gap\">\n <label htmlFor=\"test-input\" className={`${FIELD_LABEL} mb-0 flex flex-wrap items-center gap-2`}>\n {t('bigconsole.parsers.builder.test.inputJsonLabel', 'Input JSON')}\n <span\n className={`rounded border px-2 py-0.5 text-[10px] font-semibold uppercase tracking-wide ${\n inputLocked\n ? 'text-action-primary-bg bg-action-primary-bg/10 border-action-primary-bg/30'\n : 'text-text-secondary bg-bg-sunken border-[var(--color-border-subtle)]'\n }`}\n >\n {inputLocked\n ? t('bigconsole.parsers.builder.test.referenceMode', 'Reference mode')\n : t('bigconsole.parsers.builder.test.sampleMode', 'Sample mode')}\n </span>\n </label>\n <div className=\"flex flex-wrap items-center gap-2\">\n {form.inputSinkKey && !inputLocked && (\n <button\n type=\"button\"\n onClick={handleLoadSampleData}\n disabled={loadingSample}\n className=\"inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border border-action-primary-bg px-2.5 py-1.5 text-xs font-semibold text-action-primary-bg hover:bg-action-primary-bg/10 motion-safe:transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface disabled:opacity-50 disabled:cursor-not-allowed\"\n >\n {loadingSample ? (\n <Loader2 className=\"w-3.5 h-3.5 animate-spin\" />\n ) : (\n <Download className=\"w-3.5 h-3.5\" />\n )}\n {t('bigconsole.parsers.builder.actions.loadSample', 'Load Sample')}\n </button>\n )}\n {inputLocked && (\n <button\n type=\"button\"\n onClick={handleClearInput}\n className=\"inline-flex items-center gap-1.5 whitespace-nowrap rounded-md border border-[var(--color-border-default)] px-2.5 py-1.5 text-xs font-semibold text-text-primary hover:bg-bg-sunken motion-safe:transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-bg-surface\"\n >\n <X className=\"w-3.5 h-3.5\" />\n {t('bigconsole.parsers.builder.actions.clear', 'Clear')}\n </button>\n )}\n </div>\n </div>\n <textarea\n id=\"test-input\"\n value={testInput}\n onChange={handleTestInputChange}\n readOnly={inputLocked}\n placeholder={t(\n 'bigconsole.parsers.builder.test.inputPlaceholder',\n 'Type sample JSON to test against it — or Load a sample from the source…'\n )}\n rows={8}\n className={fieldClasses(\n false,\n `font-mono leading-relaxed resize-y ${inputLocked ? 'bg-bg-sunken opacity-80 cursor-not-allowed' : ''}`\n )}\n />\n {inputLocked && sampleMeta ? (\n <p className={FIELD_HINT}>\n {t('bigconsole.parsers.builder.test.loadedSample', 'Loaded a small sample')}\n {sampleMeta.total != null\n ? t('bigconsole.parsers.builder.dataPreview.rowRange', ' (first {{shown}} of {{total}} rows)', {\n shown: Math.min(PREVIEW_LIMIT, sampleMeta.total),\n total: sampleMeta.total,\n })\n : ''}{' '}\n {t(\n 'bigconsole.parsers.builder.test.loadedSampleFrom',\n 'from {{sinkName}} · locked — press Clear to edit.',\n { sinkName: sampleMeta.sinkName }\n )}\n </p>\n ) : (\n <p className={FIELD_HINT}>\n {t(\n 'bigconsole.parsers.builder.test.inputHelper',\n 'Type sample JSON to test against it, or Load a sample from the source.'\n )}\n </p>\n )}\n </div>\n\n {/* Test Button */}\n <PermissionButton permission={BIGCONSOLE_PERMISSIONS.PARSER_TEST} deniedBehavior=\"disable\">\n <Button\n type=\"button\"\n onClick={handleTestExpression}\n disabled={isTesting || !form.expression.trim()}\n variant=\"default\"\n className=\"w-full\"\n >\n {isTesting ? (\n <>\n <Loader2 className=\"w-4 h-4 mr-2 animate-spin\" />\n {t('bigconsole.parsers.builder.actions.testing', 'Testing...')}\n </>\n ) : (\n <>\n <Play className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.builder.actions.runTest', 'Run Test')}\n </>\n )}\n </Button>\n </PermissionButton>\n\n {/* Test Output — a toned sub-section so the outcome reads at a glance */}\n {(testOutput || testError) && (\n <Section\n emphasis=\"muted\"\n padding=\"compact\"\n headingLevel={3}\n tone={testError ? 'danger' : 'success'}\n title={\n testError\n ? t('bigconsole.parsers.builder.test.errorOutputLabel', 'Error Output')\n : t('bigconsole.parsers.builder.test.outputLabel', 'Output')\n }\n meta={\n testError ? (\n <span className=\"inline-flex items-center gap-1 text-xs text-[var(--color-status-error-text)]\">\n <AlertCircle className=\"w-3 h-3\" /> {t('bigconsole.parsers.builder.test.failed', 'Failed')}\n </span>\n ) : (\n <span className=\"inline-flex items-center gap-1 text-xs text-status-success-text\">\n <CheckCircle2 className=\"w-3 h-3\" /> {t('bigconsole.parsers.builder.test.passed', 'Passed')}\n </span>\n )\n }\n data-testid=\"parser-test-output\"\n >\n <pre className=\"max-h-[150px] min-w-0 overflow-auto rounded-md bg-bg-canvas px-3 py-2.5 font-mono text-xs leading-relaxed text-text-primary\">\n {testError || testOutput}\n </pre>\n {testMeta && !testError && (\n <p className={FIELD_HINT}>\n {t('bigconsole.parsers.builder.test.testedSample', 'Tested a sample')}\n {testMeta.sampledRows != null && testMeta.totalRows != null\n ? t(\n 'bigconsole.parsers.builder.dataPreview.rowRange',\n ' (first {{shown}} of {{total}} rows)',\n {\n shown: testMeta.sampledRows,\n total: testMeta.totalRows,\n }\n )\n : ''}\n {t(\n 'bigconsole.parsers.builder.test.testedSampleNote',\n ' — a saved parser runs over the full source, so results may differ.'\n )}\n </p>\n )}\n </Section>\n )}\n\n {/* Help Text */}\n {!testOutput && !testError && (\n <Section\n emphasis=\"muted\"\n padding=\"compact\"\n headingLevel={3}\n title=\"No run yet\"\n data-testid=\"parser-test-empty\"\n >\n <p className=\"text-xs leading-relaxed text-text-secondary\">\n <strong>{t('bigconsole.parsers.builder.test.tipLabel', 'Tip:')}</strong>{' '}\n {t(\n 'bigconsole.parsers.builder.test.tipBody',\n 'write your expression and click “Run Test” to see the transformation.'\n )}\n </p>\n </Section>\n )}\n </Section>\n )}\n\n {/* ============ STEP 4: CACHE & REVIEW ============ */}\n {activeStep === 3 && (\n <>\n {/* Advanced settings. `primary`, not `muted`: it hosts the only\n editable control on this step. */}\n <Section\n emphasis=\"primary\"\n headingLevel={2}\n title={t('bigconsole.parsers.builder.review.cacheDurationLabel', 'Cache Duration')}\n description={t(\n 'bigconsole.parsers.builder.review.cacheDurationHelper',\n 'How long should data be cached before refreshing?'\n )}\n icon={<Settings className=\"h-icon-sm w-icon-sm\" />}\n meta={stepCounterChip}\n data-testid=\"parser-advanced-settings\"\n >\n {/* CacheTTLSelector renders its own \"Cache Duration\" field label,\n so the section heading carries it and the control hides its. */}\n <CacheTTLSelector value={form.ttl} onChange={handleTTLChange} error={errors.ttl} hideLabel />\n </Section>\n\n {/* Review — a read-only summary of the earlier steps, so `muted`. */}\n <Section\n emphasis=\"muted\"\n headingLevel={2}\n title={t('bigconsole.parsers.builder.review.label', 'Review')}\n description=\"Check these details before you save.\"\n data-testid=\"parser-review\"\n >\n <div className=\"overflow-hidden rounded-lg border border-[var(--color-border-subtle)]\">\n {(\n [\n [t('bigconsole.parsers.builder.review.name', 'Name'), form.name || '—'],\n [t('bigconsole.parsers.builder.review.outputKey', 'Output Key'), form.outputKey || '—'],\n [\n t('bigconsole.parsers.builder.review.scope', 'Scope'),\n showDashboardSelector\n ? selectedDashboardId === 'default'\n ? t('bigconsole.parsers.builder.review.scopeGlobal', 'Global')\n : dashboards.find((d) => d.id === selectedDashboardId)?.name || selectedDashboardId\n : t('bigconsole.parsers.builder.review.scopeDashboard', 'Dashboard'),\n ],\n [t('bigconsole.parsers.builder.review.type', 'Type'), parserTypeInfo[form.type].name],\n [t('bigconsole.parsers.builder.review.source', 'Source'), selectedSinkName || '—'],\n ] as const\n ).map(([k, v]) => (\n <div\n key={k}\n className=\"flex flex-wrap items-center justify-between gap-3 border-b border-[var(--color-border-subtle)] px-4 py-2.5 text-sm last:border-b-0\"\n >\n <span className=\"text-text-secondary\">{k}</span>\n <span className=\"min-w-0 break-words text-right font-medium text-text-primary\">{v}</span>\n </div>\n ))}\n </div>\n </Section>\n </>\n )}\n\n {/* Commit bar — sticks to the bottom so the wizard controls stay\n reachable from anywhere in the step */}\n <div className=\"sticky bottom-0 z-10 flex flex-col-reverse gap-control-gap border-t border-[var(--color-border-subtle)] bg-bg-canvas py-form-gap sm:flex-row sm:items-center sm:justify-between\">\n {activeStep === 0 ? (\n <Button type=\"button\" onClick={handleLeave} variant=\"secondary\" className=\"w-full sm:w-auto\">\n {t('bigconsole.parsers.builder.actions.cancel', 'Cancel')}\n </Button>\n ) : (\n <Button type=\"button\" onClick={goPrev} variant=\"secondary\" className=\"w-full sm:w-auto\">\n <ArrowLeft className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.builder.actions.back', 'Back')}\n </Button>\n )}\n\n {isLastStep ? (\n <PermissionButton permission={savePermission} deniedBehavior=\"disable\">\n <Button\n type=\"submit\"\n disabled={!isFormValid || isSaving || !canSave}\n variant=\"default\"\n className=\"w-full sm:w-auto\"\n >\n {isSaving ? (\n <>\n <Loader2 className=\"w-4 h-4 mr-2 animate-spin\" />\n {t('bigconsole.parsers.builder.actions.saving', 'Saving...')}\n </>\n ) : (\n <>\n <Save className=\"w-4 h-4 mr-2\" />\n {isEdit\n ? t('bigconsole.parsers.builder.actions.saveChanges', 'Save Changes')\n : t('bigconsole.parsers.builder.actions.createParser', 'Create Parser')}\n </>\n )}\n </Button>\n </PermissionButton>\n ) : (\n <Button\n type=\"button\"\n onClick={goNext}\n disabled={!canAdvance(activeStep)}\n variant=\"default\"\n className=\"w-full sm:w-auto\"\n >\n {t('bigconsole.parsers.builder.actions.next', 'Next')}\n <ChevronRight className=\"w-4 h-4 ml-2\" />\n </Button>\n )}\n </div>\n </form>\n </SectionStack>\n </div>\n </div>\n );\n});\n\nexport default ParserBuilderPage;\n"],"mappings":"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"}
@@ -5,3 +5,4 @@
5
5
  */
6
6
  export declare const ParserViewPage: import('react').NamedExoticComponent<object>;
7
7
  export default ParserViewPage;
8
+ //# sourceMappingURL=ParserViewPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParserViewPage.d.ts","sourceRoot":"","sources":["../../../src/bigconsole/pages/ParserViewPage.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AA6DH,eAAO,MAAM,cAAc,8CAujBzB,CAAC;AAEH,eAAe,cAAc,CAAC"}
@@ -455,3 +455,5 @@ var j = "default", M = f(function() {
455
455
  });
456
456
  //#endregion
457
457
  export { M as ParserViewPage, M as default };
458
+
459
+ //# sourceMappingURL=ParserViewPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParserViewPage.js","names":[],"sources":["../../../src/bigconsole/pages/ParserViewPage.tsx"],"sourcesContent":["/**\n * Parser View Page\n *\n * Page for viewing Parser details, expression, and test execution.\n */\n\nimport { memo, useState, useEffect, useCallback } from 'react';\nimport { useParams } from 'react-router';\nimport { useAppNavigate } from '../contexts';\nimport { isNative, nativeCopyText, nativeImpact, nativeNotify, nativeToast } from '../../utils/nativeBridge';\nimport { formatDistanceToNow } from 'date-fns';\nimport { useParserOperations } from '../hooks/useParserOperations';\nimport { useParserStore } from '../store/parserStore';\nimport { useDataSinkOperations } from '../hooks/useDataSinkOperations';\nimport { ParserStatusBadge } from '../components/parser/ParserStatusBadge';\nimport { ParserTypeBadge } from '../components/parser/ParserTypeBadge';\nimport { ExpressionEditor } from '../components/parser/ExpressionEditor';\nimport { ExportParserDialog } from '../components/parser/ExportParserDialog';\nimport { Section, SectionStack } from '../components/common';\n\n// RBAC\nimport { usePermissions } from '@burdenoff/fe-libs/shared/providers/shell';\nimport { AccessDenied, PermissionButton } from '@burdenoff/fe-libs/shared/components';\nimport { BIGCONSOLE_PERMISSIONS } from '../../constants/permissions';\n\n// i18n\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\n\n// fe-libs UI components\nimport { Button } from '@burdenoff/fe-libs/ui';\nimport { Badge } from '@burdenoff/fe-libs/ui';\nimport { IllustratedEmptyState, PagePurpose, NextSteps } from '@burdenoff/fe-libs/ui';\nimport {\n ResponsiveDialog,\n ResponsiveDialogContent,\n ResponsiveDialogDescription,\n ResponsiveDialogFooter,\n ResponsiveDialogHeader,\n ResponsiveDialogTitle,\n} from '@burdenoff/fe-libs/ui';\n\n// Lucide icons\nimport {\n ArrowLeft,\n Edit,\n Play,\n Trash2,\n Copy,\n Check,\n FileCode2,\n Database,\n ArrowDown,\n Loader2,\n AlertCircle,\n AlertTriangle,\n Download,\n} from 'lucide-react';\n\n// ============================================================================\n// COMPONENT\n// ============================================================================\n\n// Default console ID for standalone parser viewing\nconst DEFAULT_CONSOLE_ID = 'default';\n\nexport const ParserViewPage = memo(function ParserViewPage() {\n const { parserId, consoleId: urlConsoleId } = useParams<{ parserId: string; consoleId?: string }>();\n const navigate = useAppNavigate();\n const { t } = useI18n();\n\n // Use URL consoleId or fall back to default\n const consoleId = urlConsoleId || DEFAULT_CONSOLE_ID;\n\n // Permissions\n const { hasPermission, isLoading: permissionsLoading } = usePermissions();\n const canRead = hasPermission(BIGCONSOLE_PERMISSIONS.PARSER_READ);\n\n // Local state\n const [isDeleting, setIsDeleting] = useState(false);\n const [showDeleteConfirm, setShowDeleteConfirm] = useState(false);\n const [expressionCopied, setExpressionCopied] = useState(false);\n const [isTesting, setIsTesting] = useState(false);\n const [isExportDialogOpen, setIsExportDialogOpen] = useState(false);\n const [testResult, setTestResult] = useState<{\n success: boolean;\n output: unknown;\n error: string | null;\n executionTimeMs: number;\n } | null>(null);\n\n // Store\n const parser = useParserStore((state) => (parserId ? state.parsers.get(parserId) : undefined));\n\n // Operations - use consoleId from URL or default\n const { loading, error, fetchParser, deleteParser, executeParser } = useParserOperations({\n consoleId,\n skipFetch: true,\n });\n\n // DataSink operations for source datasink info\n const { dataSinks, fetchDataSinks } = useDataSinkOperations({ skipFetch: true });\n\n // Load parser on mount - always fetch full data to get expression\n useEffect(() => {\n if (parserId) {\n fetchParser(parserId);\n }\n }, [parserId, fetchParser]);\n\n // Fetch datasinks to show source name\n useEffect(() => {\n fetchDataSinks();\n }, [fetchDataSinks]);\n\n // Get source datasink name\n const sourceDataSink = parser?.inputSinkKey ? dataSinks.find((ds) => ds.key === parser.inputSinkKey) : null;\n\n // Handle back navigation\n const handleBack = useCallback(() => {\n // Navigate to dashboard-scoped parsers list if consoleId is provided\n if (urlConsoleId) {\n navigate(`/dashboards/${urlConsoleId}/parsers`);\n } else {\n navigate(`/parsers`);\n }\n }, [navigate, urlConsoleId]);\n\n // Handle edit\n const handleEdit = useCallback(() => {\n // Navigate to dashboard-scoped parser edit if consoleId is provided\n if (urlConsoleId) {\n navigate(`/dashboards/${urlConsoleId}/parsers/${parserId}/edit`);\n } else {\n navigate(`/parsers/${parserId}/edit`);\n }\n }, [navigate, parserId, urlConsoleId]);\n\n // Handle delete\n const handleDelete = useCallback(async () => {\n if (!parserId) return;\n setIsDeleting(true);\n try {\n const success = await deleteParser(parserId);\n if (success) {\n if (isNative()) void nativeNotify('success');\n // Navigate to dashboard-scoped parsers list if consoleId is provided\n if (urlConsoleId) {\n navigate(`/dashboards/${urlConsoleId}/parsers`);\n } else {\n navigate(`/parsers`);\n }\n } else if (isNative()) {\n void nativeNotify('error');\n }\n } catch {\n if (isNative()) void nativeNotify('error');\n } finally {\n setIsDeleting(false);\n setShowDeleteConfirm(false);\n }\n }, [parserId, deleteParser, navigate, urlConsoleId]);\n\n // Handle copy expression\n const handleCopyExpression = useCallback(async () => {\n if (!parser?.expression) return;\n try {\n await nativeCopyText(parser.expression);\n setExpressionCopied(true);\n if (isNative()) void nativeToast(t('bigconsole.parsers.view.expressionCopied', 'Expression copied'));\n setTimeout(() => setExpressionCopied(false), 2000);\n } catch {\n // Clipboard access is best-effort; the expression stays visible either way.\n }\n }, [parser?.expression, t]);\n\n // Handle test execution\n const handleTestExecute = useCallback(async () => {\n if (!parserId) return;\n setIsTesting(true);\n setTestResult(null);\n try {\n const result = await executeParser(parserId);\n if (result) {\n setTestResult({\n success: result.success,\n output: result.output,\n error: result.error,\n executionTimeMs: result.executionTimeMs,\n });\n }\n } catch (err) {\n setTestResult({\n success: false,\n output: null,\n error: err instanceof Error ? err.message : t('bigconsole.parsers.view.executionFailed', 'Execution failed'),\n executionTimeMs: 0,\n });\n } finally {\n setIsTesting(false);\n }\n }, [parserId, executeParser, t]);\n\n // Navigate to source datasink\n const handleViewSourceDataSink = useCallback(() => {\n if (sourceDataSink) {\n navigate(`/datasinks/${sourceDataSink.id}`);\n }\n }, [navigate, sourceDataSink]);\n\n // Handle export\n const handleExport = useCallback(() => {\n setIsExportDialogOpen(true);\n }, []);\n\n const handleExportClose = useCallback(() => {\n setIsExportDialogOpen(false);\n }, []);\n\n // Loading state (wait for both the parser fetch and the permission load)\n if ((loading && !parser) || permissionsLoading) {\n return (\n <div className=\"flex items-center justify-center min-h-[400px]\">\n <Loader2 className=\"w-8 h-8 text-text-secondary animate-spin\" />\n </div>\n );\n }\n\n // Read gate — no permission to view this parser\n if (!canRead) {\n return (\n <AccessDenied\n title={t('bigconsole.parsers.accessDenied.title', 'Access Denied')}\n description={t('bigconsole.parsers.accessDenied.view', \"You don't have permission to view this parser.\")}\n />\n );\n }\n\n // Error state\n if (error) {\n return (\n <div className=\"p-card-padding\">\n <Section\n tone=\"danger\"\n headingLevel={2}\n title={t('bigconsole.parsers.errors.viewLoadFailed', 'Failed to load Parser')}\n description=\"The parser could not be fetched. Go back to the list and try again.\"\n icon={<AlertCircle className=\"h-icon-md w-icon-md text-[var(--color-status-error-text)]\" />}\n actions={\n <Button onClick={handleBack} variant=\"secondary\" size=\"sm\">\n <ArrowLeft className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.actions.goBack', 'Go back')}\n </Button>\n }\n data-testid=\"parser-load-error\"\n >\n <p className=\"font-mono text-xs break-words text-text-secondary\">{error.message}</p>\n </Section>\n </div>\n );\n }\n\n // Not found state\n if (!parser) {\n return (\n <div className=\"flex items-center justify-center min-h-[400px] p-card-padding\">\n <IllustratedEmptyState\n illustration=\"empty-data\"\n title={t('bigconsole.parsers.view.notFoundTitle', 'Parser not found')}\n description={t(\n 'bigconsole.parsers.view.notFoundDescription',\n \"The Parser you're looking for doesn't exist or has been deleted.\"\n )}\n action={\n <Button onClick={handleBack} variant=\"default\" size=\"default\">\n <ArrowLeft className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.actions.goBackToParsers', 'Go back to Parsers')}\n </Button>\n }\n />\n </div>\n );\n }\n\n // The route exists to show the expression — until a run produces output. Once\n // it does, the freshly produced result becomes the page's primary block and\n // the (static) expression steps down to `standard`, so only one block is ever\n // promoted at a time.\n const hasResult = testResult !== null;\n\n return (\n <div className=\"p-card-padding\">\n <SectionStack>\n {/* Page header strip — structural, no surface of its own */}\n <div className=\"flex flex-col gap-form-gap border-b border-[var(--color-border-subtle)] pb-form-gap sm:flex-row sm:items-start sm:justify-between\">\n <div className=\"min-w-0 flex-1\">\n <Button onClick={handleBack} variant=\"ghost\" size=\"sm\" className=\"mb-4\">\n <ArrowLeft className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.view.backToParsers', 'Back to Parsers')}\n </Button>\n <div className=\"flex items-center gap-2 flex-wrap\">\n <h1 className=\"text-2xl font-bold text-text-primary sm:text-3xl\">\n {parser.name || t('bigconsole.parsers.view.untitled', 'Untitled')}\n </h1>\n <ParserTypeBadge type={parser.type} />\n <ParserStatusBadge status={parser.status} />\n </div>\n {parser.description && <p className=\"text-sm text-text-secondary mt-2\">{parser.description}</p>}\n </div>\n\n {/* Actions — Execute is the page's primary verb, so it is the only filled button */}\n <div className=\"flex shrink-0 flex-wrap items-center gap-control-gap\">\n <PermissionButton permission={BIGCONSOLE_PERMISSIONS.PARSER_EXECUTE} deniedBehavior=\"disable\">\n <Button onClick={handleTestExecute} disabled={isTesting} variant=\"default\" size=\"default\">\n <Play className=\"w-4 h-4 mr-2\" />\n {isTesting\n ? t('bigconsole.parsers.view.running', 'Running...')\n : t('bigconsole.parsers.actions.execute', 'Execute')}\n </Button>\n </PermissionButton>\n <Button onClick={handleExport} variant=\"secondary\" size=\"default\">\n <Download className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.actions.export', 'Export')}\n </Button>\n <PermissionButton permission={BIGCONSOLE_PERMISSIONS.PARSER_UPDATE} deniedBehavior=\"disable\">\n <Button onClick={handleEdit} variant=\"secondary\" size=\"default\">\n <Edit className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.actions.edit', 'Edit')}\n </Button>\n </PermissionButton>\n <PermissionButton permission={BIGCONSOLE_PERMISSIONS.PARSER_DELETE} deniedBehavior=\"hide\">\n <Button\n onClick={() => setShowDeleteConfirm(true)}\n disabled={isDeleting}\n variant=\"destructive\"\n size=\"default\"\n >\n <Trash2 className=\"w-4 h-4 mr-2\" />\n {t('bigconsole.parsers.actions.delete', 'Delete')}\n </Button>\n </PermissionButton>\n </div>\n </div>\n\n <PagePurpose className=\"max-w-[80ch]\">\n {t(\n 'bigconsole.parsers.view.purpose',\n 'A parser turns raw input into structured fields using its expression. Review or copy the expression, run it against a sample to see the output, then edit it or use it inside a pipeline to shape incoming data.'\n )}\n </PagePurpose>\n\n {/* Main Content Grid */}\n <div className=\"grid gap-section-gap md:grid-cols-2 lg:grid-cols-3\">\n {/* Expression + result column */}\n <div className=\"flex min-w-0 flex-col gap-section-gap md:col-span-2\">\n {/* Execution result — rendered first once it exists so the outcome of\n the primary action is visible without scrolling past the editor. */}\n {testResult && (\n <Section\n id=\"parser-execution-result\"\n emphasis=\"primary\"\n tone={testResult.success ? 'success' : 'danger'}\n headingLevel={2}\n title={t('bigconsole.parsers.view.executionResult', 'Execution Result')}\n description={\n testResult.success\n ? 'Output produced by the latest run of this parser.'\n : 'The latest run did not complete. Fix the expression or the input and run again.'\n }\n meta={\n <Badge variant={testResult.success ? 'default' : 'destructive'}>\n {testResult.success\n ? t('bigconsole.parsers.view.success', 'Success')\n : t('bigconsole.parsers.view.failed', 'Failed')}\n </Badge>\n }\n actions={\n <Badge variant=\"secondary\" className=\"text-xs\">\n {testResult.executionTimeMs}ms\n </Badge>\n }\n data-testid=\"parser-execution-result\"\n >\n <pre className=\"max-h-[300px] min-w-0 overflow-auto rounded-md bg-bg-sunken p-4 font-mono text-sm text-text-primary\">\n {testResult.error ?? JSON.stringify(testResult.output, null, 2)}\n </pre>\n </Section>\n )}\n\n {/* Expression */}\n <Section\n emphasis={hasResult ? 'standard' : 'primary'}\n headingLevel={2}\n title={t('bigconsole.parsers.view.expression', 'Expression')}\n description=\"The JQ or JSONata program this parser runs against every input record.\"\n icon={<FileCode2 className=\"h-icon-sm w-icon-sm\" />}\n meta={\n <Badge variant=\"secondary\" className=\"text-xs uppercase\">\n {parser.type}\n </Badge>\n }\n actions={\n <Button onClick={handleCopyExpression} variant=\"ghost\" size=\"sm\">\n {expressionCopied ? (\n <>\n <Check className=\"w-3.5 h-3.5 text-status-success-text mr-2\" />\n {t('bigconsole.parsers.view.copied', 'Copied!')}\n </>\n ) : (\n <>\n <Copy className=\"w-3.5 h-3.5 mr-2\" />\n {t('bigconsole.parsers.actions.copy', 'Copy')}\n </>\n )}\n </Button>\n }\n data-testid=\"parser-expression\"\n >\n <ExpressionEditor\n value={parser.expression}\n type={parser.type}\n readOnly\n height=\"clamp(180px, 40vh, 300px)\"\n />\n </Section>\n </div>\n\n {/* Supporting column — steps down from the expression/result column */}\n <div className=\"grid min-w-0 gap-section-gap md:col-span-2 md:grid-cols-2 lg:col-span-1 lg:grid-cols-1\">\n {/* Data Flow */}\n <Section\n headingLevel={2}\n title={t('bigconsole.parsers.view.dataFlow', 'Data Flow')}\n description=\"Where this parser reads from and what it writes.\"\n data-testid=\"parser-data-flow\"\n >\n <dl className=\"space-y-3\">\n {/* Source DataSink */}\n <div>\n <dt className=\"text-xs font-medium uppercase tracking-wide text-text-muted\">\n {t('bigconsole.parsers.view.sourceDataSink', 'Source DataSink')}\n </dt>\n {parser.inputSinkKey ? (\n <dd className=\"mt-1\">\n <p className=\"break-words font-mono text-sm font-medium text-text-primary\">\n {parser.inputSinkKey}\n </p>\n {sourceDataSink && (\n <Button onClick={handleViewSourceDataSink} variant=\"link\" size=\"sm\" className=\"mt-1 p-0 h-auto\">\n <Database className=\"w-3 h-3 mr-1\" />\n {t('bigconsole.parsers.view.viewDataSink', 'View {{name}}', {\n name: sourceDataSink.name || t('bigconsole.parsers.view.dataSinkFallback', 'DataSink'),\n })}\n </Button>\n )}\n </dd>\n ) : (\n <dd className=\"mt-1 text-sm text-text-muted\">\n {t('bigconsole.parsers.view.noneConfigured', 'None configured')}\n </dd>\n )}\n </div>\n\n {/* Arrow */}\n <div aria-hidden=\"true\" className=\"flex items-center justify-center py-1\">\n <ArrowDown className=\"w-4 h-4 text-text-muted\" />\n </div>\n\n {/* Output Key */}\n <div>\n <dt className=\"text-xs font-medium uppercase tracking-wide text-text-muted\">\n {t('bigconsole.parsers.view.outputKey', 'Output Key')}\n </dt>\n <dd className=\"mt-1 break-words font-mono text-sm font-medium text-text-primary\">\n {parser.outputKey || t('bigconsole.parsers.view.notConfigured', 'Not configured')}\n </dd>\n </div>\n </dl>\n </Section>\n\n {/* Configuration */}\n <Section\n headingLevel={2}\n title={t('bigconsole.parsers.view.configuration', 'Configuration')}\n data-testid=\"parser-configuration\"\n >\n <dl className=\"space-y-4 text-sm\">\n <div className=\"flex flex-wrap items-center justify-between gap-2\">\n <dt className=\"text-text-secondary\">{t('bigconsole.parsers.view.status', 'Status')}</dt>\n <dd>\n <ParserStatusBadge status={parser.status} />\n </dd>\n </div>\n <div className=\"flex flex-wrap items-center justify-between gap-2\">\n <dt className=\"text-text-secondary\">{t('bigconsole.parsers.view.type', 'Type')}</dt>\n <dd>\n <ParserTypeBadge type={parser.type} />\n </dd>\n </div>\n <div className=\"flex flex-wrap items-center justify-between gap-2\">\n <dt className=\"text-text-secondary\">{t('bigconsole.parsers.view.cacheTtl', 'Cache TTL')}</dt>\n <dd className=\"text-text-primary font-medium\">\n {parser.ttl\n ? t('bigconsole.parsers.view.ttlSeconds', '{{ttl}}s', { ttl: parser.ttl })\n : t('bigconsole.parsers.view.noCaching', 'No caching')}\n </dd>\n </div>\n <div className=\"flex flex-wrap items-center justify-between gap-2\">\n <dt className=\"text-text-secondary\">{t('bigconsole.parsers.view.version', 'Version')}</dt>\n <dd className=\"text-text-primary font-medium\">{parser.version || 1}</dd>\n </div>\n </dl>\n </Section>\n\n {/* Timestamps — least important block on the page, so it is recessed */}\n <Section\n emphasis=\"muted\"\n padding=\"compact\"\n headingLevel={2}\n title={t('bigconsole.parsers.view.timestamps', 'Timestamps')}\n data-testid=\"parser-history\"\n >\n <dl className=\"space-y-4 text-sm\">\n <div className=\"flex flex-wrap items-center justify-between gap-2\">\n <dt className=\"text-text-secondary\">{t('bigconsole.parsers.view.created', 'Created')}</dt>\n <dd className=\"text-text-primary font-medium\">\n {parser.createdAt\n ? formatDistanceToNow(new Date(parser.createdAt), { addSuffix: true })\n : t('bigconsole.parsers.view.unknown', 'Unknown')}\n </dd>\n </div>\n <div className=\"flex flex-wrap items-center justify-between gap-2\">\n <dt className=\"text-text-secondary\">{t('bigconsole.parsers.view.updated', 'Updated')}</dt>\n <dd className=\"text-text-primary font-medium\">\n {parser.updatedAt\n ? formatDistanceToNow(new Date(parser.updatedAt), { addSuffix: true })\n : t('bigconsole.parsers.view.unknown', 'Unknown')}\n </dd>\n </div>\n </dl>\n </Section>\n </div>\n </div>\n\n {/* Guidance sits after the data it talks about */}\n <NextSteps\n storageKey=\"bigconsole-parser-view\"\n steps={[\n {\n id: 'execute',\n label: t('bigconsole.parsers.view.nextSteps.executeLabel', 'Run a test execution'),\n description: t(\n 'bigconsole.parsers.view.nextSteps.executeDescription',\n 'Check the expression produces the fields you expect.'\n ),\n onClick: handleTestExecute,\n },\n {\n id: 'edit',\n label: t('bigconsole.parsers.view.nextSteps.editLabel', 'Edit the expression'),\n description: t(\n 'bigconsole.parsers.view.nextSteps.editDescription',\n 'Refine how this parser maps your input.'\n ),\n onClick: handleEdit,\n },\n {\n id: 'pipeline',\n label: t('bigconsole.parsers.view.nextSteps.pipelineLabel', 'Use it in a pipeline'),\n description: t(\n 'bigconsole.parsers.view.nextSteps.pipelineDescription',\n 'Chain this parser with a data sink to process data end to end.'\n ),\n onClick: () => navigate('/pipelines'),\n },\n ]}\n />\n </SectionStack>\n\n {/* Delete Confirmation ResponsiveDialog */}\n <ResponsiveDialog open={showDeleteConfirm} onOpenChange={setShowDeleteConfirm}>\n <ResponsiveDialogContent>\n <ResponsiveDialogHeader>\n <ResponsiveDialogTitle>\n {t('bigconsole.parsers.view.deleteDialogTitle', 'Delete Parser')}\n </ResponsiveDialogTitle>\n <ResponsiveDialogDescription>\n {t('bigconsole.parsers.view.deleteConfirmPrefix', 'Are you sure you want to delete')}{' '}\n <strong>{parser.name}</strong>\n {t('bigconsole.parsers.view.deleteConfirmSuffix', '? This action cannot be undone.')}\n </ResponsiveDialogDescription>\n </ResponsiveDialogHeader>\n <Section\n tone=\"warning\"\n padding=\"compact\"\n headingLevel={3}\n title=\"Check dependents first\"\n description={t(\n 'bigconsole.parsers.view.deleteWarning',\n 'Widgets and pipelines using this parser may stop working correctly after deletion.'\n )}\n icon={<AlertTriangle className=\"h-icon-sm w-icon-sm text-[var(--color-status-warning-text)]\" />}\n data-testid=\"parser-delete-warning\"\n />\n <ResponsiveDialogFooter>\n <Button onClick={() => setShowDeleteConfirm(false)} variant=\"secondary\">\n {t('bigconsole.parsers.actions.cancel', 'Cancel')}\n </Button>\n <Button\n onClick={() => {\n nativeImpact('medium');\n void handleDelete();\n }}\n disabled={isDeleting}\n variant=\"destructive\"\n >\n {isDeleting\n ? t('bigconsole.parsers.view.deleting', 'Deleting...')\n : t('bigconsole.parsers.view.deleteDialogTitle', 'Delete Parser')}\n </Button>\n </ResponsiveDialogFooter>\n </ResponsiveDialogContent>\n </ResponsiveDialog>\n\n {/* Export Parser ResponsiveDialog */}\n <ExportParserDialog\n isOpen={isExportDialogOpen}\n parserId={parserId || null}\n parserName={parser.name}\n onClose={handleExportClose}\n />\n </div>\n );\n});\n\nexport default ParserViewPage;\n"],"mappings":"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"}
@@ -18,3 +18,4 @@
18
18
  */
19
19
  export declare const PipelineBuilderPage: import('react').NamedExoticComponent<object>;
20
20
  export default PipelineBuilderPage;
21
+ //# sourceMappingURL=PipelineBuilderPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PipelineBuilderPage.d.ts","sourceRoot":"","sources":["../../../src/bigconsole/pages/PipelineBuilderPage.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAmJH,eAAO,MAAM,mBAAmB,8CAuuB9B,CAAC;AAEH,eAAe,mBAAmB,CAAC"}
@@ -727,3 +727,5 @@ var p = "min-h-[var(--size-controlHeight-md)]", m = "mb-1 block text-sm font-med
727
727
  });
728
728
  //#endregion
729
729
  export { C as PipelineBuilderPage, C as default };
730
+
731
+ //# sourceMappingURL=PipelineBuilderPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PipelineBuilderPage.js","names":[],"sources":["../../../src/bigconsole/pages/PipelineBuilderPage.tsx"],"sourcesContent":["/**\n * Pipeline Builder Page\n *\n * Create and edit Pipelines with stage management.\n * Supports adding, removing, and reordering stages.\n *\n * Section ladder (BOFF-5635):\n * bare — header strip with the commit actions\n * primary — \"Stages\": the transform configuration this route exists for\n * standard — \"Basic information\" (identity + runtime status)\n * muted — per-stage editors nested inside the hero, plus the sidebar\n * preview and tips (supporting context, never the point)\n * tone — save failure\n *\n * The stage field grid is also where the module's worst responsive defect lived:\n * a bare `grid-cols-2` that never collapsed, crushing three controls into ~150px\n * columns at 390px. It now starts single-column and splits at `sm`.\n */\n\nimport { memo, useState, useCallback, useEffect, useMemo, useId } from 'react';\nimport { useParams, useSearchParams } from 'react-router';\nimport { PipelineScopePicker } from '../components/pipeline/PipelineScopePicker';\nimport { Button, IllustratedEmptyState, PagePurpose, Spinner } from '@burdenoff/fe-libs/ui';\nimport { usePermissions } from '@burdenoff/fe-libs/shared/providers/shell';\nimport { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport { AccessDenied } from '@burdenoff/fe-libs/shared/components';\nimport { BIGCONSOLE_PERMISSIONS } from '../../constants/permissions';\nimport { useAppNavigate } from '../contexts';\nimport { usePipelineOperations } from '../hooks/usePipelineOperations';\nimport { useParserOperations } from '../hooks/useParserOperations';\nimport { PipelineStatusBadge } from '../components/pipeline/PipelineStatusBadge';\nimport { Section, SectionStack, SECTION_FOCUS_RING } from '../components/common';\nimport type { PipelineStatus, StageErrorHandling, ParserType } from '../types';\n\n// ============================================================================\n// TYPES\n// ============================================================================\n\ninterface StageForm {\n id?: string;\n parserId: string;\n parserName: string;\n parserType: ParserType | null;\n inputKey: string;\n outputKey: string;\n enabled: boolean;\n onError: StageErrorHandling;\n fallbackValue: string;\n description: string;\n}\n\n// ============================================================================\n// SHARED CLASS RECIPES\n// ============================================================================\n\n/** Keeps header/panel actions at the 40px touch minimum on mobile. */\nconst TOUCH_TARGET = 'min-h-[var(--size-controlHeight-md)]';\n\n/**\n * One field vocabulary for the whole builder. Before this there were three\n * competing label scales (form `text-sm/primary`, stage grid\n * `text-xs/secondary`, preview `text-xs/secondary` non-bold) inside one screen.\n */\nconst FIELD_LABEL = 'mb-1 block text-sm font-medium text-text-primary';\nconst FIELD_HINT = 'mt-1 text-xs text-text-secondary';\nconst FIELD_GROUP_LEGEND = 'mb-1 text-xs font-semibold uppercase tracking-wide text-text-muted';\n\n/** Inputs sit on `bg-canvas` so a field never matches the card it lives on. */\nconst FIELD_CONTROL = `w-full min-w-0 rounded-input border border-[var(--color-border-subtle)] bg-bg-canvas px-3 py-2 text-sm text-text-primary ${SECTION_FOCUS_RING}`;\nconst FIELD_CONTROL_MONO = `${FIELD_CONTROL} font-mono`;\n\n/**\n * Icon action button: 40px touch target (was a ~24px `p-1` hit area). The hover\n * fill is deliberately NOT part of the base recipe — appending a second\n * `hover:bg-*` to a string that already carries one leaves the winner up to\n * stylesheet order, not to the caller, so the destructive variant could lose its\n * red hover. Each caller composes exactly one hover fill.\n */\nconst ICON_ACTION_BASE = `inline-flex h-10 w-10 shrink-0 items-center justify-center rounded-button text-text-secondary motion-safe:transition-colors disabled:opacity-30 ${SECTION_FOCUS_RING}`;\nconst ICON_ACTION = `${ICON_ACTION_BASE} hover:bg-bg-surface hover:text-text-primary`;\nconst ICON_ACTION_DANGER = `${ICON_ACTION_BASE} hover:bg-[var(--color-status-error-bgSubtle)] hover:text-status-error-text`;\n\n// ============================================================================\n// ICONS\n// ============================================================================\n\nconst BackIcon = ({ className }: { className?: string }) => (\n <svg className={className} fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M10 19l-7-7m0 0l7-7m-7 7h18\" />\n </svg>\n);\n\nconst PlusIcon = ({ className }: { className?: string }) => (\n <svg className={className} fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M12 4v16m8-8H4\" />\n </svg>\n);\n\nconst TrashIcon = ({ className }: { className?: string }) => (\n <svg className={className} fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16\"\n />\n </svg>\n);\n\nconst ArrowUpIcon = ({ className }: { className?: string }) => (\n <svg className={className} fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M5 15l7-7 7 7\" />\n </svg>\n);\n\nconst ArrowDownIcon = ({ className }: { className?: string }) => (\n <svg className={className} fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth={2} d=\"M19 9l-7 7-7-7\" />\n </svg>\n);\n\nconst ErrorIcon = ({ className }: { className?: string }) => (\n <svg className={className} fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\">\n <path\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n d=\"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z\"\n />\n </svg>\n);\n\n// ============================================================================\n// CONSTANTS\n// ============================================================================\n\nconst STATUS_OPTIONS: { value: PipelineStatus; label: string }[] = [\n { value: 'draft', label: 'Draft' },\n { value: 'active', label: 'Active' },\n { value: 'inactive', label: 'Inactive' },\n];\n\nconst ERROR_HANDLING_OPTIONS: { value: StageErrorHandling; label: string; description: string }[] = [\n { value: 'fail', label: 'Fail', description: 'Stop pipeline execution on error' },\n { value: 'skip', label: 'Skip', description: 'Skip this stage and continue' },\n { value: 'fallback', label: 'Fallback', description: 'Use fallback value on error' },\n];\n\nconst DEFAULT_STAGE: StageForm = {\n parserId: '',\n parserName: '',\n parserType: null,\n inputKey: 'data',\n outputKey: 'result',\n enabled: true,\n onError: 'fail',\n fallbackValue: '',\n description: '',\n};\n\n// ============================================================================\n// COMPONENT\n// ============================================================================\n\nexport const PipelineBuilderPage = memo(function PipelineBuilderPage() {\n const { t } = useI18n();\n const { pipelineId } = useParams<{ pipelineId: string }>();\n const navigate = useAppNavigate();\n const isEditMode = !!pipelineId && pipelineId !== 'new';\n const [searchParams, setSearchParams] = useSearchParams();\n const [loadedConsoleId, setLoadedConsoleId] = useState<string | null>(null);\n const consoleId = isEditMode ? (loadedConsoleId ?? 'default') : searchParams.get('consoleId') || 'default';\n const fieldId = useId();\n\n // Permissions\n const { hasPermission, isLoading: permissionsLoading } = usePermissions();\n const canRead = hasPermission(BIGCONSOLE_PERMISSIONS.PIPELINE_READ);\n const canCreate = hasPermission(BIGCONSOLE_PERMISSIONS.PIPELINE_CREATE);\n const canUpdate = hasPermission(BIGCONSOLE_PERMISSIONS.PIPELINE_UPDATE);\n // Save gate depends on mode: creating a new pipeline vs. editing an existing one.\n const canSave = isEditMode ? canUpdate : canCreate;\n\n // Form state\n const [name, setName] = useState('');\n const [description, setDescription] = useState('');\n const [status, setStatus] = useState<PipelineStatus>('draft');\n const [stages, setStages] = useState<StageForm[]>([]);\n const [version, setVersion] = useState(1);\n const [isSaving, setIsSaving] = useState(false);\n const [saveError, setSaveError] = useState<string | null>(null);\n\n // Operations\n const {\n loading: pipelineLoading,\n error: pipelineError,\n fetchPipeline,\n createPipeline,\n updatePipeline,\n } = usePipelineOperations({\n consoleId,\n skipFetch: true,\n });\n\n const { parsers } = useParserOperations({\n consoleId,\n skipFetch: isEditMode && !loadedConsoleId,\n });\n\n // Load existing pipeline in edit mode\n useEffect(() => {\n if (isEditMode && pipelineId) {\n fetchPipeline(pipelineId).then((pipeline) => {\n if (pipeline) {\n setLoadedConsoleId(pipeline.consoleId);\n setName(pipeline.name);\n setDescription(pipeline.description || '');\n setStatus(pipeline.status);\n setVersion(pipeline.version);\n setStages(\n (pipeline.stages || []).map((s) => ({\n id: s.id,\n parserId: s.parserId,\n parserName: s.parserName || '',\n parserType: s.parserType,\n inputKey: s.inputKey,\n outputKey: s.outputKey,\n enabled: s.enabled,\n onError: s.onError,\n fallbackValue: s.fallbackValue ? JSON.stringify(s.fallbackValue) : '',\n description: s.description || '',\n }))\n );\n }\n });\n }\n }, [isEditMode, pipelineId, fetchPipeline]);\n\n // Translated option labels (values remain the untranslated logic keys).\n const statusOptionLabels: Record<PipelineStatus, string> = {\n draft: t('bigconsole.pipelines.builder.status.draft', 'Draft'),\n active: t('bigconsole.pipelines.builder.status.active', 'Active'),\n inactive: t('bigconsole.pipelines.builder.status.inactive', 'Inactive'),\n error: t('bigconsole.pipelines.builder.status.error', 'Error'),\n };\n\n const errorHandlingOptionLabels: Record<StageErrorHandling, string> = {\n fail: t('bigconsole.pipelines.builder.onError.fail', 'Fail'),\n skip: t('bigconsole.pipelines.builder.onError.skip', 'Skip'),\n fallback: t('bigconsole.pipelines.builder.onError.fallback', 'Fallback'),\n };\n\n // Validation\n const isValid = useMemo(() => {\n if (!name.trim()) return false;\n if (stages.length === 0) return false;\n return stages.every((s) => s.parserId && s.inputKey && s.outputKey);\n }, [name, stages]);\n\n /** Why the save button is disabled — the button used to just fade out. */\n const blockingReason = useMemo(() => {\n if (!name.trim()) return 'Give the pipeline a name to save it.';\n if (stages.length === 0) return 'Add at least one stage to save this pipeline.';\n if (!stages.every((s) => s.parserId && s.inputKey && s.outputKey)) {\n return 'Every stage needs a parser, an input key and an output key.';\n }\n return null;\n }, [name, stages]);\n\n // Handlers\n const handleBack = useCallback(() => {\n navigate(`/pipelines?consoleId=${encodeURIComponent(consoleId)}`);\n }, [navigate, consoleId]);\n\n const handleAddStage = useCallback(() => {\n setStages((prev) => [...prev, { ...DEFAULT_STAGE }]);\n }, []);\n\n const handleRemoveStage = useCallback((index: number) => {\n setStages((prev) => prev.filter((_, i) => i !== index));\n }, []);\n\n const handleMoveStage = useCallback((index: number, direction: 'up' | 'down') => {\n setStages((prev) => {\n const newStages = [...prev];\n const targetIndex = direction === 'up' ? index - 1 : index + 1;\n if (targetIndex < 0 || targetIndex >= newStages.length) return prev;\n [newStages[index], newStages[targetIndex]] = [newStages[targetIndex], newStages[index]];\n return newStages;\n });\n }, []);\n\n const handleUpdateStage = useCallback((index: number, updates: Partial<StageForm>) => {\n setStages((prev) => prev.map((stage, i) => (i === index ? { ...stage, ...updates } : stage)));\n }, []);\n\n const handleParserSelect = useCallback(\n (index: number, parserId: string) => {\n const parser = parsers.find((p) => p.id === parserId);\n if (parser) {\n handleUpdateStage(index, {\n parserId: parser.id,\n parserName: parser.name,\n parserType: parser.type,\n });\n }\n },\n [parsers, handleUpdateStage]\n );\n\n const handleSave = useCallback(async () => {\n if (!isValid || !consoleId || !canSave) return;\n\n setIsSaving(true);\n setSaveError(null);\n\n try {\n const stageInputs = stages.map((s) => ({\n parserId: s.parserId,\n parserName: s.parserName,\n parserType: s.parserType || undefined,\n inputKey: s.inputKey,\n outputKey: s.outputKey,\n enabled: s.enabled,\n onError: s.onError,\n fallbackValue: s.fallbackValue ? JSON.parse(s.fallbackValue) : undefined,\n description: s.description || undefined,\n }));\n\n if (isEditMode && pipelineId) {\n const result = await updatePipeline(\n pipelineId,\n {\n name,\n description: description || undefined,\n status,\n },\n version\n );\n if (result) {\n navigate(`/pipelines/${pipelineId}`);\n }\n } else {\n const result = await createPipeline({\n consoleId,\n name,\n description: description || undefined,\n status,\n stages: stageInputs,\n });\n if (result) {\n navigate(`/pipelines/${result.id}`);\n }\n }\n } catch (err) {\n setSaveError(\n err instanceof Error\n ? err.message\n : t('bigconsole.pipelines.builder.errors.saveFailed', 'Failed to save pipeline')\n );\n } finally {\n setIsSaving(false);\n }\n }, [\n isValid,\n consoleId,\n canSave,\n isEditMode,\n pipelineId,\n name,\n description,\n status,\n stages,\n version,\n createPipeline,\n updatePipeline,\n navigate,\n t,\n ]);\n\n // Loading state\n if (pipelineLoading && isEditMode) {\n return (\n <div className=\"p-card-padding\">\n <div className=\"flex flex-col items-center justify-center py-16\" role=\"status\">\n <Spinner style={{ height: 'var(--size-icon-xl)', width: 'var(--size-icon-xl)' }} />\n <p className=\"mt-form-gap text-sm text-text-secondary\">\n {t('bigconsole.pipelines.builder.loading', 'Loading Pipeline...')}\n </p>\n </div>\n </div>\n );\n }\n\n // Read gate — editing an existing pipeline requires read access to load it.\n // Create mode ('new') is gated on the Save action (canCreate) instead.\n if (isEditMode && !permissionsLoading && !canRead) {\n return (\n <AccessDenied\n title={t('bigconsole.pipelines.builder.accessDenied.title', 'Access Denied')}\n description={t(\n 'bigconsole.pipelines.builder.accessDenied.description',\n \"You don't have permission to view this pipeline.\"\n )}\n />\n );\n }\n\n // Error state\n if (pipelineError) {\n return (\n <div className=\"p-card-padding\">\n <Section\n tone=\"danger\"\n headingLevel={2}\n title={t('bigconsole.pipelines.builder.errors.loadFailed', 'Failed to load Pipeline')}\n description={pipelineError.message}\n icon={<ErrorIcon className=\"h-icon-sm w-icon-sm\" />}\n actions={\n <Button onClick={handleBack} className={TOUCH_TARGET}>\n {t('bigconsole.pipelines.builder.actions.backToPipelines', 'Back to Pipelines')}\n </Button>\n }\n data-testid=\"pipeline-builder-error\"\n >\n <p className=\"text-sm text-text-secondary\">\n The pipeline could not be read from the console service. Nothing was changed.\n </p>\n </Section>\n </div>\n );\n }\n\n return (\n <div className=\"p-card-padding\">\n <SectionStack>\n {/* Header strip — structure only, no surface. */}\n <header className=\"flex flex-col gap-form-gap sm:flex-row sm:items-start sm:justify-between\">\n <div className=\"flex min-w-0 flex-col gap-control-gap\">\n <Button variant=\"ghost\" size=\"sm\" onClick={handleBack} className=\"w-fit\">\n <BackIcon className=\"h-icon-sm w-icon-sm\" />\n {t('bigconsole.pipelines.builder.actions.backToPipelines', 'Back to Pipelines')}\n </Button>\n <div className=\"min-w-0\">\n <h1 className=\"text-2xl font-bold leading-tight text-text-primary\">\n {isEditMode\n ? t('bigconsole.pipelines.builder.header.editTitle', 'Edit Pipeline')\n : t('bigconsole.pipelines.builder.header.createTitle', 'Create Pipeline')}\n </h1>\n <p className=\"mt-1 text-sm text-text-secondary\">\n {isEditMode\n ? t('bigconsole.pipelines.builder.header.editSubtitle', 'Update pipeline settings and stages')\n : t(\n 'bigconsole.pipelines.builder.header.createSubtitle',\n 'Create a new data transformation pipeline'\n )}\n </p>\n </div>\n </div>\n\n <div className=\"flex flex-col gap-1 sm:items-end\">\n <div className=\"flex flex-wrap items-center gap-control-gap\">\n <Button variant=\"secondary\" onClick={handleBack} className={TOUCH_TARGET}>\n {t('bigconsole.pipelines.builder.actions.cancel', 'Cancel')}\n </Button>\n <Button\n onClick={handleSave}\n disabled={!isValid || isSaving || !canSave}\n title={\n !canSave\n ? isEditMode\n ? t(\n 'bigconsole.pipelines.builder.actions.noUpdatePermission',\n \"You don't have permission to update pipelines.\"\n )\n : t(\n 'bigconsole.pipelines.builder.actions.noCreatePermission',\n \"You don't have permission to create pipelines.\"\n )\n : undefined\n }\n className={TOUCH_TARGET}\n >\n {isSaving\n ? t('bigconsole.pipelines.builder.actions.saving', 'Saving...')\n : isEditMode\n ? t('bigconsole.pipelines.builder.actions.saveChanges', 'Save Changes')\n : t('bigconsole.pipelines.builder.actions.createPipeline', 'Create Pipeline')}\n </Button>\n </div>\n {blockingReason && (\n <p className=\"text-xs text-text-secondary sm:text-right\" data-testid=\"pipeline-save-blocked-reason\">\n {blockingReason}\n </p>\n )}\n </div>\n </header>\n\n <PagePurpose className=\"max-w-[75ch]\">\n {t(\n 'bigconsole.pipelines.builder.header.purpose',\n 'Build a pipeline by chaining parser stages — each stage reads an input key, runs a parser, and writes a structured output key that the next stage (or a data sink) can use. Name it, add your stages in order, then test it before saving so your data flows end to end.'\n )}\n </PagePurpose>\n\n {/* Save failure */}\n {saveError && (\n <Section\n tone=\"danger\"\n headingLevel={2}\n title={t('bigconsole.pipelines.builder.errors.saveFailed', 'Failed to save pipeline')}\n description={saveError}\n icon={<ErrorIcon className=\"h-icon-sm w-icon-sm\" />}\n data-testid=\"pipeline-save-error\"\n />\n )}\n\n <div className=\"grid grid-cols-1 gap-section-gap lg:grid-cols-3\">\n {/* Main form */}\n <div className=\"min-w-0 lg:col-span-2\">\n <SectionStack>\n <Section\n headingLevel={2}\n title={t('bigconsole.pipelines.builder.basicInfo.heading', 'Basic Information')}\n description=\"How this pipeline is identified, and whether it runs.\"\n data-testid=\"pipeline-basic-info\"\n >\n <div className=\"flex flex-col gap-form-gap\">\n <PipelineScopePicker\n value={consoleId}\n disabled={isEditMode}\n onChange={(next) => {\n const params = new URLSearchParams(searchParams);\n params.set('consoleId', next);\n setSearchParams(params);\n setStages([]);\n }}\n />\n <div className=\"min-w-0\">\n <label htmlFor={`${fieldId}-name`} className={FIELD_LABEL}>\n {t('bigconsole.pipelines.builder.basicInfo.nameLabel', 'Name')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <input\n id={`${fieldId}-name`}\n type=\"text\"\n value={name}\n onChange={(e) => setName(e.target.value)}\n placeholder={t('bigconsole.pipelines.builder.basicInfo.namePlaceholder', 'My Pipeline')}\n className={FIELD_CONTROL}\n />\n </div>\n\n <div className=\"min-w-0\">\n <label htmlFor={`${fieldId}-description`} className={FIELD_LABEL}>\n {t('bigconsole.pipelines.builder.basicInfo.descriptionLabel', 'Description')}\n </label>\n <textarea\n id={`${fieldId}-description`}\n value={description}\n onChange={(e) => setDescription(e.target.value)}\n placeholder={t(\n 'bigconsole.pipelines.builder.basicInfo.descriptionPlaceholder',\n 'What does this pipeline do?'\n )}\n rows={3}\n className={`${FIELD_CONTROL} resize-y`}\n />\n </div>\n\n <div className=\"min-w-0 border-t border-[var(--color-border-subtle)] pt-form-gap\">\n <label htmlFor={`${fieldId}-status`} className={FIELD_LABEL}>\n {t('bigconsole.pipelines.builder.basicInfo.statusLabel', 'Status')}\n </label>\n <select\n id={`${fieldId}-status`}\n value={status}\n onChange={(e) => setStatus(e.target.value as PipelineStatus)}\n className={FIELD_CONTROL}\n >\n {STATUS_OPTIONS.map((opt) => (\n <option key={opt.value} value={opt.value}>\n {statusOptionLabels[opt.value]}\n </option>\n ))}\n </select>\n <p className={FIELD_HINT}>Only active pipelines process incoming data.</p>\n </div>\n </div>\n </Section>\n\n {/* Stages — the one primary block on this route. */}\n <Section\n emphasis=\"primary\"\n headingLevel={2}\n title={t('bigconsole.pipelines.builder.stages.heading', 'Stages ({{count}})', {\n count: stages.length,\n })}\n description=\"Each stage reads an input key, runs a parser, and writes an output key for the next stage.\"\n actions={\n <Button size=\"sm\" onClick={handleAddStage} className={TOUCH_TARGET}>\n <PlusIcon className=\"h-icon-sm w-icon-sm\" />\n {t('bigconsole.pipelines.builder.stages.addStage', 'Add Stage')}\n </Button>\n }\n data-testid=\"pipeline-stages-editor\"\n >\n {stages.length === 0 ? (\n <IllustratedEmptyState\n illustration=\"empty-generic\"\n title={t('bigconsole.pipelines.builder.stages.emptyTitle', 'No stages yet')}\n description={t(\n 'bigconsole.pipelines.builder.stages.emptyDescription',\n 'Add a stage to start building your pipeline.'\n )}\n action={\n <Button onClick={handleAddStage} className={TOUCH_TARGET}>\n <PlusIcon className=\"h-icon-sm w-icon-sm\" />\n {t('bigconsole.pipelines.builder.stages.addFirstStage', 'Add First Stage')}\n </Button>\n }\n />\n ) : (\n <ol className=\"flex flex-col gap-form-gap\">\n {stages.map((stage, index) => (\n // Stages are positional and a new stage has no id until it is saved.\n <li key={index} className=\"min-w-0\">\n <Section\n emphasis=\"muted\"\n padding=\"compact\"\n headingLevel={3}\n title={\n <span className=\"flex min-w-0 items-center gap-icon-gap\">\n <span\n aria-hidden=\"true\"\n className=\"flex h-6 w-6 shrink-0 items-center justify-center rounded-pill bg-bg-surface text-xs font-semibold text-text-secondary\"\n >\n {index + 1}\n </span>\n <span className=\"min-w-0 truncate\">\n {stage.parserName ||\n t('bigconsole.pipelines.builder.stages.defaultStageName', 'Stage {{number}}', {\n number: index + 1,\n })}\n </span>\n </span>\n }\n actions={\n <>\n <button\n type=\"button\"\n onClick={() => handleMoveStage(index, 'up')}\n disabled={index === 0}\n className={ICON_ACTION}\n aria-label={`Move stage ${index + 1} up`}\n >\n <ArrowUpIcon className=\"h-icon-sm w-icon-sm\" />\n </button>\n <button\n type=\"button\"\n onClick={() => handleMoveStage(index, 'down')}\n disabled={index === stages.length - 1}\n className={ICON_ACTION}\n aria-label={`Move stage ${index + 1} down`}\n >\n <ArrowDownIcon className=\"h-icon-sm w-icon-sm\" />\n </button>\n <button\n type=\"button\"\n onClick={() => handleRemoveStage(index)}\n className={ICON_ACTION_DANGER}\n aria-label={`Remove stage ${index + 1}`}\n >\n <TrashIcon className=\"h-icon-sm w-icon-sm\" />\n </button>\n </>\n }\n data-testid=\"pipeline-stage-editor\"\n >\n <div className=\"flex flex-col gap-form-gap\">\n <div className=\"min-w-0\">\n <label htmlFor={`${fieldId}-parser-${index}`} className={FIELD_LABEL}>\n {t('bigconsole.pipelines.builder.stages.parserLabel', 'Parser')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <select\n id={`${fieldId}-parser-${index}`}\n value={stage.parserId}\n onChange={(e) => handleParserSelect(index, e.target.value)}\n className={FIELD_CONTROL}\n >\n <option value=\"\">\n {t('bigconsole.pipelines.builder.stages.parserPlaceholder', 'Select a parser...')}\n </option>\n {parsers.map((p) => (\n <option key={p.id} value={p.id}>\n {p.name} ({p.type.toUpperCase()})\n </option>\n ))}\n </select>\n </div>\n\n {/* Data contract */}\n <fieldset className=\"min-w-0\">\n <legend className={FIELD_GROUP_LEGEND}>Data contract</legend>\n <div className=\"grid grid-cols-1 gap-form-gap sm:grid-cols-2\">\n <div className=\"min-w-0\">\n <label htmlFor={`${fieldId}-input-${index}`} className={FIELD_LABEL}>\n {t('bigconsole.pipelines.builder.stages.inputKeyLabel', 'Input Key')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <input\n id={`${fieldId}-input-${index}`}\n type=\"text\"\n value={stage.inputKey}\n onChange={(e) => handleUpdateStage(index, { inputKey: e.target.value })}\n placeholder={t('bigconsole.pipelines.builder.stages.inputKeyPlaceholder', 'data')}\n className={FIELD_CONTROL_MONO}\n />\n </div>\n\n <div className=\"min-w-0\">\n <label htmlFor={`${fieldId}-output-${index}`} className={FIELD_LABEL}>\n {t('bigconsole.pipelines.builder.stages.outputKeyLabel', 'Output Key')}{' '}\n <span className=\"text-status-error-text\">*</span>\n </label>\n <input\n id={`${fieldId}-output-${index}`}\n type=\"text\"\n value={stage.outputKey}\n onChange={(e) => handleUpdateStage(index, { outputKey: e.target.value })}\n placeholder={t(\n 'bigconsole.pipelines.builder.stages.outputKeyPlaceholder',\n 'result'\n )}\n className={FIELD_CONTROL_MONO}\n />\n </div>\n </div>\n </fieldset>\n\n {/* Failure policy */}\n <fieldset className=\"min-w-0\">\n <legend className={FIELD_GROUP_LEGEND}>Failure policy</legend>\n <div className=\"grid grid-cols-1 gap-form-gap sm:grid-cols-2\">\n <div className=\"min-w-0\">\n <label htmlFor={`${fieldId}-onerror-${index}`} className={FIELD_LABEL}>\n {t('bigconsole.pipelines.builder.stages.onErrorLabel', 'On Error')}\n </label>\n <select\n id={`${fieldId}-onerror-${index}`}\n value={stage.onError}\n onChange={(e) =>\n handleUpdateStage(index, {\n onError: e.target.value as StageErrorHandling,\n })\n }\n className={FIELD_CONTROL}\n >\n {ERROR_HANDLING_OPTIONS.map((opt) => (\n <option key={opt.value} value={opt.value}>\n {errorHandlingOptionLabels[opt.value]}\n </option>\n ))}\n </select>\n <p className={FIELD_HINT}>\n {ERROR_HANDLING_OPTIONS.find((opt) => opt.value === stage.onError)?.description}\n </p>\n </div>\n\n <div className=\"flex min-w-0 items-start\">\n <label\n htmlFor={`${fieldId}-enabled-${index}`}\n className={`flex cursor-pointer items-center gap-2 ${TOUCH_TARGET}`}\n >\n <input\n id={`${fieldId}-enabled-${index}`}\n type=\"checkbox\"\n checked={stage.enabled}\n onChange={(e) => handleUpdateStage(index, { enabled: e.target.checked })}\n className={`h-4 w-4 rounded border-[var(--color-border-subtle)] text-action-primary-bg ${SECTION_FOCUS_RING}`}\n />\n <span className=\"text-sm text-text-primary\">\n {t('bigconsole.pipelines.builder.stages.enabledLabel', 'Enabled')}\n </span>\n </label>\n </div>\n\n {stage.onError === 'fallback' && (\n <div className=\"min-w-0 sm:col-span-2\">\n <label htmlFor={`${fieldId}-fallback-${index}`} className={FIELD_LABEL}>\n {t(\n 'bigconsole.pipelines.builder.stages.fallbackValueLabel',\n 'Fallback Value (JSON)'\n )}\n </label>\n <input\n id={`${fieldId}-fallback-${index}`}\n type=\"text\"\n value={stage.fallbackValue}\n onChange={(e) => handleUpdateStage(index, { fallbackValue: e.target.value })}\n placeholder='{\"default\": true}'\n className={FIELD_CONTROL_MONO}\n />\n </div>\n )}\n </div>\n </fieldset>\n </div>\n </Section>\n </li>\n ))}\n </ol>\n )}\n </Section>\n </SectionStack>\n </div>\n\n {/* Sidebar — supporting context only. */}\n <div className=\"min-w-0\">\n <SectionStack>\n <Section\n emphasis=\"muted\"\n headingLevel={2}\n title={t('bigconsole.pipelines.builder.preview.heading', 'Preview')}\n description=\"What will be saved.\"\n data-testid=\"pipeline-preview\"\n >\n <dl className=\"flex flex-col gap-3 text-sm\">\n <div className=\"min-w-0\">\n <dt className=\"text-xs text-text-muted\">\n {t('bigconsole.pipelines.builder.preview.nameLabel', 'Name')}\n </dt>\n <dd className=\"break-words text-text-primary\">\n {name || t('bigconsole.pipelines.builder.preview.untitled', 'Untitled')}\n </dd>\n </div>\n\n <div className=\"min-w-0\">\n <dt className=\"text-xs text-text-muted\">\n {t('bigconsole.pipelines.builder.preview.statusLabel', 'Status')}\n </dt>\n <dd className=\"mt-1\">\n <PipelineStatusBadge status={status} size=\"sm\" />\n </dd>\n </div>\n\n <div className=\"min-w-0\">\n <dt className=\"text-xs text-text-muted\">\n {t('bigconsole.pipelines.builder.preview.stagesLabel', 'Stages')}\n </dt>\n <dd className=\"text-text-primary\">{stages.length}</dd>\n </div>\n\n {stages.length > 0 && (\n <div className=\"min-w-0 border-t border-[var(--color-border-subtle)] pt-3\">\n <dt className=\"text-xs text-text-muted\">\n {t('bigconsole.pipelines.builder.preview.dataFlowLabel', 'Data Flow')}\n </dt>\n <dd className=\"mt-1 flex flex-wrap items-center gap-1 text-xs\">\n {stages.map((s, i) => (\n <span key={i} className=\"flex items-center gap-1\">\n <code className=\"rounded-button bg-bg-surface px-1.5 py-0.5 font-mono break-all text-text-primary\">\n {s.inputKey}\n </code>\n <span aria-hidden=\"true\" className=\"text-text-muted\">\n →\n </span>\n </span>\n ))}\n <code className=\"rounded-button bg-bg-surface px-1.5 py-0.5 font-mono break-all text-text-primary\">\n {stages[stages.length - 1].outputKey}\n </code>\n </dd>\n </div>\n )}\n </dl>\n </Section>\n\n <Section\n emphasis=\"muted\"\n padding=\"compact\"\n headingLevel={2}\n title={t('bigconsole.pipelines.builder.tips.heading', 'Tips')}\n data-testid=\"pipeline-builder-tips\"\n >\n <ul className=\"list-disc space-y-1 pl-4 text-sm text-text-secondary\">\n <li>\n {t(\n 'bigconsole.pipelines.builder.tips.item1',\n 'Each stage processes the output of the previous stage'\n )}\n </li>\n <li>\n {t('bigconsole.pipelines.builder.tips.item2', 'Use consistent input/output keys to chain data')}\n </li>\n <li>{t('bigconsole.pipelines.builder.tips.item3', 'Set error handling per stage for robustness')}</li>\n <li>\n {t('bigconsole.pipelines.builder.tips.item4', 'Disable stages to skip them during execution')}\n </li>\n </ul>\n </Section>\n </SectionStack>\n </div>\n </div>\n </SectionStack>\n </div>\n );\n});\n\nexport default PipelineBuilderPage;\n"],"mappings":"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"}
@@ -17,3 +17,4 @@
17
17
  */
18
18
  export declare const PipelineViewPage: import('react').NamedExoticComponent<object>;
19
19
  export default PipelineViewPage;
20
+ //# sourceMappingURL=PipelineViewPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PipelineViewPage.d.ts","sourceRoot":"","sources":["../../../src/bigconsole/pages/PipelineViewPage.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AA8IH,eAAO,MAAM,gBAAgB,8CAsrB3B,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
@@ -682,3 +682,5 @@ var v = "min-h-[var(--size-controlHeight-md)]", ue = "rounded-pill bg-bg-sunken
682
682
  });
683
683
  //#endregion
684
684
  export { w as PipelineViewPage, w as default };
685
+
686
+ //# sourceMappingURL=PipelineViewPage.js.map