@oneuptime/common 12.0.6 → 12.0.8

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 (594) hide show
  1. package/Models/DatabaseModels/AIInsight.ts +1 -1
  2. package/Models/DatabaseModels/DatabaseBaseModel/FileModel.ts +2 -3
  3. package/Models/DatabaseModels/DeletedProject.ts +595 -0
  4. package/Models/DatabaseModels/Index.ts +2 -0
  5. package/Models/DatabaseModels/Monitor.ts +111 -0
  6. package/Models/DatabaseModels/Project.ts +3 -3
  7. package/Models/DatabaseModels/TelemetryEntity.ts +45 -0
  8. package/Models/DatabaseModels/TelemetryEntityRelationship.ts +26 -0
  9. package/Models/DatabaseModels/WorkflowLog.ts +38 -0
  10. package/Models/DatabaseModels/WorkspaceProjectAuthToken.ts +19 -1
  11. package/Server/API/FileAPI.ts +15 -2
  12. package/Server/API/MicrosoftTeamsAPI.ts +6 -1
  13. package/Server/API/ProjectAPI.ts +214 -0
  14. package/Server/API/StatusPageAPI.ts +39 -6
  15. package/Server/API/UserAPI.ts +16 -1
  16. package/Server/Infrastructure/Postgres/SchemaMigrations/1786446545142-MigrationName.ts +50 -0
  17. package/Server/Infrastructure/Postgres/SchemaMigrations/1786449497966-AddMonitorDependency.ts +67 -0
  18. package/Server/Infrastructure/Postgres/SchemaMigrations/1786461136170-AddDeletedProjectTable.ts +39 -0
  19. package/Server/Infrastructure/Postgres/SchemaMigrations/1786551733814-MigrationName.ts +41 -0
  20. package/Server/Infrastructure/Postgres/SchemaMigrations/1786559879134-AddWorkflowLogStepTrace.ts +17 -0
  21. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +10 -0
  22. package/Server/Middleware/MasterAdminAuthorization.ts +11 -6
  23. package/Server/Services/AIAgentService.ts +20 -0
  24. package/Server/Services/DashboardDomainService.ts +73 -28
  25. package/Server/Services/DatabaseService.ts +1 -0
  26. package/Server/Services/DeletedProjectService.ts +138 -0
  27. package/Server/Services/FileService.ts +61 -0
  28. package/Server/Services/IncidentEpisodePublicNoteService.ts +18 -0
  29. package/Server/Services/IncidentPublicNoteService.ts +18 -0
  30. package/Server/Services/Index.ts +2 -0
  31. package/Server/Services/MonitorService.ts +311 -0
  32. package/Server/Services/ProbeService.ts +20 -0
  33. package/Server/Services/ProjectService.ts +297 -1
  34. package/Server/Services/PushNotificationService.ts +71 -0
  35. package/Server/Services/ScheduledMaintenancePublicNoteService.ts +18 -0
  36. package/Server/Services/StatusPageAnnouncementService.ts +53 -0
  37. package/Server/Services/StatusPageDomainService.ts +73 -28
  38. package/Server/Services/TeamMemberService.ts +117 -12
  39. package/Server/Services/TelemetryEntityRelationshipService.ts +3 -0
  40. package/Server/Services/TelemetryEntityService.ts +114 -1
  41. package/Server/Services/TelemetryIngestionKeyService.ts +1 -0
  42. package/Server/Services/UserWebhookService.ts +34 -109
  43. package/Server/Services/WorkspaceNotificationRuleService.ts +69 -0
  44. package/Server/Services/WorkspaceProjectAuthTokenService.ts +37 -1
  45. package/Server/Types/Database/DeleteById.ts +2 -0
  46. package/Server/Types/Database/DeleteOneBy.ts +6 -0
  47. package/Server/Types/Domain.ts +41 -0
  48. package/Server/Types/Workflow/Components/API/Delete.ts +2 -1
  49. package/Server/Types/Workflow/Components/API/Get.ts +2 -1
  50. package/Server/Types/Workflow/Components/API/Patch.ts +2 -1
  51. package/Server/Types/Workflow/Components/API/Post.ts +2 -1
  52. package/Server/Types/Workflow/Components/API/Put.ts +2 -1
  53. package/Server/Types/Workflow/Components/API/Utils.ts +85 -3
  54. package/Server/Types/Workflow/Components/BaseModel/CreateManyBaseModel.ts +25 -19
  55. package/Server/Types/Workflow/Components/BaseModel/CreateOneBaseModel.ts +6 -5
  56. package/Server/Types/Workflow/Components/BaseModel/DeleteManyBaseModel.ts +32 -14
  57. package/Server/Types/Workflow/Components/BaseModel/DeleteOneBaseModel.ts +31 -13
  58. package/Server/Types/Workflow/Components/BaseModel/FindManyBaseModel.ts +29 -20
  59. package/Server/Types/Workflow/Components/BaseModel/FindOneBaseModel.ts +28 -21
  60. package/Server/Types/Workflow/Components/BaseModel/LogComponentError.ts +89 -0
  61. package/Server/Types/Workflow/Components/BaseModel/ModelArguments.ts +208 -0
  62. package/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.ts +11 -0
  63. package/Server/Types/Workflow/Components/BaseModel/UpdateManyBaseModel.ts +41 -18
  64. package/Server/Types/Workflow/Components/BaseModel/UpdateOneBaseModel.ts +45 -19
  65. package/Server/Types/Workflow/Components/Discord/SendMessageToChannel.ts +16 -9
  66. package/Server/Types/Workflow/Components/IncomingWebhookUtils.ts +66 -0
  67. package/Server/Types/Workflow/Components/MicrosoftTeams/SendMessageToChannel.ts +15 -9
  68. package/Server/Types/Workflow/Components/Slack/SendMessageToChannel.ts +17 -0
  69. package/Server/Types/Workflow/TriggerCode.ts +12 -0
  70. package/Server/Types/Workflow/Workflow.ts +5 -0
  71. package/Server/Utils/AI/Chat/ObservabilityChatPrompt.ts +1 -1
  72. package/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.ts +171 -0
  73. package/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.ts +3 -3
  74. package/Server/Utils/AI/SRE/Insights/FixRouting.ts +3 -2
  75. package/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.ts +1 -1
  76. package/Server/Utils/AI/Toolbox/CodeWriteTools.ts +6 -6
  77. package/Server/Utils/CodeRepository/GitHub/GitHub.ts +43 -5
  78. package/Server/Utils/DataSource/EgressGuard.ts +176 -16
  79. package/Server/Utils/DataSource/HttpFetch.ts +6 -45
  80. package/Server/Utils/Execute.ts +8 -0
  81. package/Server/Utils/InlineImageAccessTokenSync.ts +23 -0
  82. package/Server/Utils/LLM/LLMService.ts +57 -12
  83. package/Server/Utils/Monitor/MonitorAlert.ts +40 -0
  84. package/Server/Utils/Monitor/MonitorDependencySuppression.ts +192 -0
  85. package/Server/Utils/Monitor/MonitorIncident.ts +40 -0
  86. package/Server/Utils/Monitor/MonitorResource.ts +36 -0
  87. package/Server/Utils/Response.ts +142 -6
  88. package/Server/Utils/SSRFProtection.ts +273 -60
  89. package/Server/Utils/StartServer.ts +8 -0
  90. package/Server/Utils/Telemetry/InventoryEntityRegistry.ts +689 -0
  91. package/Server/Utils/VM/VMAPI.ts +56 -8
  92. package/Server/Utils/VM/VMRunner.ts +88 -1
  93. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +555 -49
  94. package/Server/Utils/Workspace/Slack/Slack.ts +25 -2
  95. package/Server/Utils/Workspace/WorkspaceBase.ts +6 -0
  96. package/Tests/App/Dashboard/DangerZone.test.tsx +334 -0
  97. package/Tests/App/Dashboard/DashboardVariableAllContract.test.tsx +539 -0
  98. package/Tests/App/Dashboard/DashboardVariableSelector.test.tsx +678 -0
  99. package/Tests/App/Dashboard/DashboardVariablesDiscard.test.tsx +706 -0
  100. package/Tests/App/Dashboard/DashboardVariablesModal.test.tsx +508 -0
  101. package/Tests/App/Dashboard/MonitorCriteriaAttributeFilter.test.tsx +574 -0
  102. package/Tests/App/PublicDashboard/DashboardVariableSelector.test.tsx +470 -0
  103. package/Tests/App/StatusPage/StatusPageDetailPagesNotFound.test.tsx +308 -0
  104. package/Tests/Models/DatabaseModels/DeletedProjectModel.test.ts +251 -0
  105. package/Tests/Models/DatabaseModels/SavedViewJSONColumnTuples.test.ts +115 -0
  106. package/Tests/Server/API/FileAPIAccessControl.test.ts +316 -0
  107. package/Tests/Server/API/ProjectAPI.test.ts +299 -1
  108. package/Tests/Server/API/ProjectAPIAdjustBalance.test.ts +459 -0
  109. package/Tests/Server/API/ProjectAPIAdjustBalanceBillingDisabled.test.ts +177 -0
  110. package/Tests/Server/API/UserProjectsAPI.test.ts +478 -4
  111. package/Tests/Server/Services/DatabaseServiceDeletionReason.test.ts +123 -0
  112. package/Tests/Server/Services/DeletedProjectService.test.ts +415 -0
  113. package/Tests/Server/Services/DeletedProjectServiceSelfHosted.test.ts +70 -0
  114. package/Tests/Server/Services/DomainSubdomainHooks.test.ts +94 -0
  115. package/Tests/Server/Services/FileIsPublicBooleanMigration.test.ts +244 -0
  116. package/Tests/Server/Services/FileServiceMimeType.test.ts +89 -0
  117. package/Tests/Server/Services/MonitorServiceDependencyValidation.test.ts +702 -0
  118. package/Tests/Server/Services/ProjectServiceAdjustBalance.test.ts +615 -0
  119. package/Tests/Server/Services/ProjectServiceDeleteAudit.test.ts +406 -0
  120. package/Tests/Server/Services/PublishTimeImageVisibility.test.ts +450 -0
  121. package/Tests/Server/Services/TeamMemberAutoAcceptInvitation.test.ts +669 -0
  122. package/Tests/Server/Services/TelemetryEntityManualCreate.test.ts +248 -0
  123. package/Tests/Server/Services/UserWebhookSSRF.test.ts +174 -0
  124. package/Tests/Server/Services/WebPushEndpointAllowlist.test.ts +133 -0
  125. package/Tests/Server/Services/WorkspaceProjectAuthTokenRepoint.test.ts +618 -0
  126. package/Tests/Server/Types/Workflow/Components/ApiComponentErrorPort.test.ts +26 -1
  127. package/Tests/Server/Types/Workflow/Components/ApiComponentHeaders.test.ts +192 -0
  128. package/Tests/Server/Types/Workflow/Components/ApiComponentSsrf.test.ts +215 -0
  129. package/Tests/Server/Types/Workflow/Components/BaseModelDatabaseComponents.test.ts +742 -0
  130. package/Tests/Server/Types/Workflow/Components/ChatWebhookComponents.test.ts +256 -0
  131. package/Tests/Server/Types/Workflow/Components/ModelArguments.test.ts +371 -0
  132. package/Tests/Server/Utils/AI/CodeAgentCommandGuard.test.ts +204 -0
  133. package/Tests/Server/Utils/AI/CodeAgentWriteLimits.test.ts +213 -0
  134. package/Tests/Server/Utils/AI/CodeWriteTools.test.ts +52 -5
  135. package/Tests/Server/Utils/AI/LLMServiceBaseUrl.test.ts +3 -0
  136. package/Tests/Server/Utils/AI/LLMServiceEgressGuard.test.ts +315 -0
  137. package/Tests/Server/Utils/AI/LLMServiceModelCompatibility.test.ts +3 -0
  138. package/Tests/Server/Utils/AI/LLMServiceRequestPolicy.test.ts +17 -5
  139. package/Tests/Server/Utils/AI/LLMServiceToolCalling.test.ts +14 -1
  140. package/Tests/Server/Utils/AI/ObservabilityChatPrompt.test.ts +35 -0
  141. package/Tests/Server/Utils/AI/StubLLMEgressGuard.ts +25 -0
  142. package/Tests/Server/Utils/AnalyticsDatabase/QuerySettingsHelper.test.ts +152 -0
  143. package/Tests/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.test.ts +62 -7
  144. package/Tests/Server/Utils/DataSource/EgressGuard.test.ts +69 -0
  145. package/Tests/Server/Utils/DataSource/EgressGuardPinning.test.ts +330 -0
  146. package/Tests/Server/Utils/GitHubCreatePullRequestWithToken.test.ts +393 -0
  147. package/Tests/Server/Utils/InlineImageAccessTokenSync.test.ts +202 -0
  148. package/Tests/Server/Utils/Monitor/MonitorDependencySuppression.test.ts +811 -0
  149. package/Tests/Server/Utils/Monitor/MonitorDependencySuppressionCreatorSkip.test.ts +604 -0
  150. package/Tests/Server/Utils/ResponseSendFileResponse.test.ts +192 -0
  151. package/Tests/Server/Utils/SSRFProtectionBypasses.test.ts +406 -0
  152. package/Tests/Server/Utils/Telemetry/InventoryEntityRegistry.test.ts +322 -0
  153. package/Tests/Server/Utils/VM/VMAPISubstitution.test.ts +243 -0
  154. package/Tests/Server/Utils/VM/VMRunnerSsrf.test.ts +194 -0
  155. package/Tests/Server/Utils/Workspace/MicrosoftTeamsChannelSend.test.ts +1169 -0
  156. package/Tests/Server/Utils/Workspace/MicrosoftTeamsChannelsList.test.ts +2 -0
  157. package/Tests/Server/Utils/Workspace/MicrosoftTeamsTeamInstalls.test.ts +1605 -0
  158. package/Tests/Server/Utils/Workspace/MicrosoftTeamsTenantResolution.test.ts +1218 -0
  159. package/Tests/Types/AI/AIChatMessageStatus.test.ts +79 -0
  160. package/Tests/Types/AI/AIInsightStatus.test.ts +40 -0
  161. package/Tests/Types/API/HostnameAuthorityParsing.test.ts +157 -0
  162. package/Tests/Types/Dashboard/DashboardTemplateInvariants.test.ts +27 -0
  163. package/Tests/Types/DataSource/DataSourceLimits.test.ts +71 -0
  164. package/Tests/Types/DataSource/DataSourceType.test.ts +181 -0
  165. package/Tests/Types/DomainSubdomainValidation.test.ts +90 -0
  166. package/Tests/Types/JSONFunctions.test.ts +252 -1
  167. package/Tests/Types/Monitor/SnmpMonitor/SnmpAuthProtocol.test.ts +61 -0
  168. package/Tests/Types/Monitor/SnmpMonitor/SnmpPrivProtocol.test.ts +62 -0
  169. package/Tests/Types/Monitor/SnmpMonitor/SnmpSecurityLevel.test.ts +68 -0
  170. package/Tests/Types/Monitor/SnmpMonitor/SnmpVersion.test.ts +51 -0
  171. package/Tests/Types/SerializableObjectDictionaryImportCycle.test.ts +197 -0
  172. package/Tests/Types/Telemetry/EntityTypeGroups.test.ts +140 -0
  173. package/Tests/Types/Workflow/StepTrace.test.ts +235 -0
  174. package/Tests/Types/Workflow/TemplateSyntax.test.ts +379 -0
  175. package/Tests/Types/Workflow/Templates.test.ts +403 -0
  176. package/Tests/UI/Components/404.test.tsx +1 -1
  177. package/Tests/UI/Components/Alert.test.tsx +1 -1
  178. package/Tests/UI/Components/Badge.test.tsx +1 -1
  179. package/Tests/UI/Components/BasicForm.test.tsx +39 -10
  180. package/Tests/UI/Components/Button.test.tsx +1 -1
  181. package/Tests/UI/Components/Card.test.tsx +1 -1
  182. package/Tests/UI/Components/Charts/AxisTickColor.test.tsx +1 -1
  183. package/Tests/UI/Components/ColorViewer.test.tsx +1 -1
  184. package/Tests/UI/Components/ComponentsModal.test.tsx +7 -1
  185. package/Tests/UI/Components/CustomTimeRangeModal.test.tsx +459 -0
  186. package/Tests/UI/Components/DictionaryAttributeFilterRow.test.tsx +477 -0
  187. package/Tests/UI/Components/DictionaryOfStrings.test.tsx +1 -1
  188. package/Tests/UI/Components/Dropdown.test.tsx +1 -1
  189. package/Tests/UI/Components/FilePicker.test.tsx +1 -1
  190. package/Tests/UI/Components/Forms/AnchoredFieldPopupKeyboard.test.tsx +382 -0
  191. package/Tests/UI/Components/Forms/ColorPickerPicking.test.tsx +569 -0
  192. package/Tests/UI/Components/Forms/ValidationJSON.test.ts +241 -0
  193. package/Tests/UI/Components/HiddenText.test.tsx +1 -1
  194. package/Tests/UI/Components/Input.test.tsx +1 -1
  195. package/Tests/UI/Components/Loader.test.tsx +1 -1
  196. package/Tests/UI/Components/LogTimeRangePicker.test.tsx +43 -1
  197. package/Tests/UI/Components/MasterPage.test.tsx +1 -1
  198. package/Tests/UI/Components/ModalPortalDismissal.test.tsx +579 -0
  199. package/Tests/UI/Components/ModelDelete.test.tsx +214 -0
  200. package/Tests/UI/Components/ModelTable/BaseModelTableBulkSelectAll.test.tsx +1 -1
  201. package/Tests/UI/Components/ModelTable/BaseModelTableColumnCustomization.test.tsx +1 -1
  202. package/Tests/UI/Components/ModelTable/BaseModelTableSearchLabels.test.tsx +1 -1
  203. package/Tests/UI/Components/ModelTable/BaseModelTableUrlState.test.tsx +1 -1
  204. package/Tests/UI/Components/ModelTable/CustomFieldColumns.test.tsx +1 -1
  205. package/Tests/UI/Components/NavBar.test.tsx +1 -1
  206. package/Tests/UI/Components/OperatorSelectorKeyboard.test.tsx +1 -1
  207. package/Tests/UI/Components/Pagination.test.tsx +1 -1
  208. package/Tests/UI/Components/Pill.test.tsx +1 -1
  209. package/Tests/UI/Components/Probe.test.tsx +1 -1
  210. package/Tests/UI/Components/ProgressBar.test.tsx +1 -1
  211. package/Tests/UI/Components/RadioButtons.test.tsx +1 -1
  212. package/Tests/UI/Components/SideMenuItem.test.tsx +1 -1
  213. package/Tests/UI/Components/SideOver.test.tsx +500 -6
  214. package/Tests/UI/Components/Tabs.test.tsx +1 -1
  215. package/Tests/UI/Components/TelemetrySearchBar.test.tsx +1 -1
  216. package/Tests/UI/Components/TelemetryTimeRangePicker.test.tsx +50 -8
  217. package/Tests/UI/Components/TextArea.test.tsx +1 -1
  218. package/Tests/UI/Components/TimeRangePickerDropdown.test.tsx +325 -0
  219. package/Tests/UI/Components/Toast.test.tsx +1 -1
  220. package/Tests/UI/Components/Toggle.test.tsx +1 -1
  221. package/Tests/UI/Components/TopSection.test.tsx +1 -1
  222. package/Tests/UI/Components/UseLiveLogsRefresh.test.tsx +1 -1
  223. package/Tests/UI/Components/Workflow/GraphLint.test.ts +821 -0
  224. package/Tests/UI/Components/Workflow/ModelColumnEditor.test.ts +287 -0
  225. package/Tests/UI/Components/Workflow/ModelColumnEditorServerContract.test.ts +185 -0
  226. package/Tests/UI/Components/Workflow/ModelSchema.test.ts +174 -0
  227. package/Tests/UI/Components/Workflow/RunStatusWatcher.test.ts +152 -0
  228. package/Tests/UI/Components/Workflow/Utils.test.ts +192 -0
  229. package/Tests/UI/Monitor/MonitorStepCriteriaView.test.tsx +432 -0
  230. package/Tests/UI/Rum/ReplayScrubber.test.tsx +1 -1
  231. package/Tests/UI/Rum/ReplayStage.test.tsx +1 -1
  232. package/Tests/UI/Telemetry/TelemetrySnapshotWindowAlert.test.tsx +1 -1
  233. package/Tests/UI/Utils/LocalStorageArrayRoundTrip.test.ts +72 -0
  234. package/Tests/Utils/Dashboard/HtmlWidgetDocument.test.ts +19 -2
  235. package/Tests/Utils/Dashboard/ModelQueryVariableInterpolation.test.ts +44 -0
  236. package/Tests/Utils/Dashboard/VariableInterpolation.test.ts +288 -5
  237. package/Tests/Utils/Dashboard/VariableUrlState.test.ts +42 -0
  238. package/Tests/Utils/DataSource/DataSourceQueryText.test.ts +27 -0
  239. package/Tests/Utils/LegacySerializedArray.test.ts +139 -0
  240. package/Tests/Utils/Monitor/MonitorDependencyRule.test.ts +190 -0
  241. package/Tests/Utils/Monitor/NetworkDeviceRoleUtil.test.ts +514 -0
  242. package/Tests/Utils/Monitor/NetworkTopologyUtil.test.ts +240 -0
  243. package/Tests/Utils/Realtime.test.ts +78 -0
  244. package/Tests/Utils/Schema/AnalyticsModelSchema.test.ts +469 -0
  245. package/Tests/Utils/Schema/ModelSchema.test.ts +268 -0
  246. package/Tests/Utils/Telemetry/EntityKeyNonTelemetry.test.ts +193 -0
  247. package/Tests/Utils/Telemetry/SavedViewFilters.test.ts +246 -0
  248. package/Tests/__mocks__/i18next-browser-languagedetector.js +21 -0
  249. package/Types/AI/FixPullRequestCiStatus.ts +1 -1
  250. package/Types/AI/FixVerificationStatus.ts +2 -2
  251. package/Types/API/Hostname.ts +92 -4
  252. package/Types/API/URL.ts +43 -25
  253. package/Types/Billing/BalanceAdjustmentType.ts +14 -0
  254. package/Types/Billing/ProjectBalanceType.ts +13 -0
  255. package/Types/Domain.ts +26 -0
  256. package/Types/File/MimeType.ts +11 -0
  257. package/Types/JSONFunctions.ts +15 -0
  258. package/Types/Monitor/SnmpMonitor/NetworkTopology.ts +31 -0
  259. package/Types/SerializableObjectDictionary.ts +133 -39
  260. package/Types/Telemetry/EntitySource.ts +40 -0
  261. package/Types/Telemetry/EntityType.ts +27 -0
  262. package/Types/Telemetry/EntityTypeGroups.ts +65 -0
  263. package/Types/Telemetry/TelemetrySavedViewState.ts +9 -1
  264. package/Types/Workflow/Component.ts +29 -0
  265. package/Types/Workflow/Components/API.ts +35 -0
  266. package/Types/Workflow/Components/BaseModel.ts +96 -28
  267. package/Types/Workflow/StepTrace.ts +181 -0
  268. package/Types/Workflow/TemplateSyntax.ts +499 -0
  269. package/Types/Workflow/Templates.ts +316 -0
  270. package/Typings/Index.d.ts +12 -0
  271. package/UI/Components/Date/CustomTimeRangeModal.tsx +278 -0
  272. package/UI/Components/Date/TimeRangePickerDropdown.tsx +250 -0
  273. package/UI/Components/Dictionary/Dictionary.tsx +23 -6
  274. package/UI/Components/Forms/Fields/ColorPicker.tsx +66 -10
  275. package/UI/Components/Forms/Fields/IconPicker.tsx +48 -10
  276. package/UI/Components/Forms/Types/Field.ts +7 -0
  277. package/UI/Components/Forms/Validation.ts +63 -1
  278. package/UI/Components/GanttChart/ChartContainer.tsx +4 -3
  279. package/UI/Components/Input/Input.tsx +31 -3
  280. package/UI/Components/LogsViewer/components/LogTimeRangePicker.tsx +11 -216
  281. package/UI/Components/Modal/ConfirmModal.tsx +10 -5
  282. package/UI/Components/Modal/Modal.tsx +64 -51
  283. package/UI/Components/ModelDelete/ModelDelete.tsx +23 -6
  284. package/UI/Components/SideOver/SideOver.tsx +195 -68
  285. package/UI/Components/TelemetryViewer/components/TelemetryTimeRangePicker.tsx +11 -210
  286. package/UI/Components/Workflow/ArgumentsForm.tsx +194 -7
  287. package/UI/Components/Workflow/Component.tsx +28 -26
  288. package/UI/Components/Workflow/ComponentSettingsModal.tsx +69 -8
  289. package/UI/Components/Workflow/GraphLint.ts +591 -0
  290. package/UI/Components/Workflow/ModelColumnEditor.tsx +396 -0
  291. package/UI/Components/Workflow/ModelSchema.ts +196 -0
  292. package/UI/Components/Workflow/RunForm.tsx +41 -7
  293. package/UI/Components/Workflow/RunStatusWatcher.ts +122 -0
  294. package/UI/Components/Workflow/StepTraceViewer.tsx +186 -0
  295. package/UI/Components/Workflow/Utils.ts +93 -1
  296. package/UI/Components/Workflow/Workflow.tsx +77 -4
  297. package/UI/Types/LayeredDismissal.ts +31 -0
  298. package/UI/Types/UseAnchoredFieldPopup.ts +99 -0
  299. package/UI/Utils/PageScrollLock.ts +66 -0
  300. package/Utils/Dashboard/HtmlWidgetDocument.ts +4 -2
  301. package/Utils/Dashboard/VariableInterpolation.ts +19 -1
  302. package/Utils/LegacySerializedArray.ts +60 -0
  303. package/Utils/Monitor/MonitorDependencyRule.ts +88 -0
  304. package/Utils/Monitor/NetworkDeviceRoleUtil.ts +533 -0
  305. package/Utils/Monitor/NetworkTopologyUtil.ts +45 -7
  306. package/Utils/Telemetry/EntityKey.ts +66 -0
  307. package/Utils/Telemetry/SavedViewFilters.ts +88 -0
  308. package/build/dist/Models/DatabaseModels/AIInsight.js +1 -1
  309. package/build/dist/Models/DatabaseModels/AIInsight.js.map +1 -1
  310. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/FileModel.js +2 -3
  311. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/FileModel.js.map +1 -1
  312. package/build/dist/Models/DatabaseModels/DeletedProject.js +640 -0
  313. package/build/dist/Models/DatabaseModels/DeletedProject.js.map +1 -0
  314. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  315. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  316. package/build/dist/Models/DatabaseModels/Monitor.js +106 -0
  317. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  318. package/build/dist/Models/DatabaseModels/Project.js +3 -3
  319. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  320. package/build/dist/Models/DatabaseModels/TelemetryEntity.js +47 -0
  321. package/build/dist/Models/DatabaseModels/TelemetryEntity.js.map +1 -1
  322. package/build/dist/Models/DatabaseModels/TelemetryEntityRelationship.js +27 -0
  323. package/build/dist/Models/DatabaseModels/TelemetryEntityRelationship.js.map +1 -1
  324. package/build/dist/Models/DatabaseModels/WorkflowLog.js +39 -0
  325. package/build/dist/Models/DatabaseModels/WorkflowLog.js.map +1 -1
  326. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js.map +1 -1
  327. package/build/dist/Server/API/FileAPI.js +14 -2
  328. package/build/dist/Server/API/FileAPI.js.map +1 -1
  329. package/build/dist/Server/API/MicrosoftTeamsAPI.js +6 -1
  330. package/build/dist/Server/API/MicrosoftTeamsAPI.js.map +1 -1
  331. package/build/dist/Server/API/ProjectAPI.js +157 -4
  332. package/build/dist/Server/API/ProjectAPI.js.map +1 -1
  333. package/build/dist/Server/API/StatusPageAPI.js +27 -3
  334. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  335. package/build/dist/Server/API/UserAPI.js +16 -1
  336. package/build/dist/Server/API/UserAPI.js.map +1 -1
  337. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786446545142-MigrationName.js +34 -0
  338. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786446545142-MigrationName.js.map +1 -0
  339. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786449497966-AddMonitorDependency.js +30 -0
  340. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786449497966-AddMonitorDependency.js.map +1 -0
  341. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786461136170-AddDeletedProjectTable.js +20 -0
  342. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786461136170-AddDeletedProjectTable.js.map +1 -0
  343. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786551733814-MigrationName.js +20 -0
  344. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786551733814-MigrationName.js.map +1 -0
  345. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786559879134-AddWorkflowLogStepTrace.js +12 -0
  346. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786559879134-AddWorkflowLogStepTrace.js.map +1 -0
  347. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +10 -0
  348. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  349. package/build/dist/Server/Middleware/MasterAdminAuthorization.js +11 -6
  350. package/build/dist/Server/Middleware/MasterAdminAuthorization.js.map +1 -1
  351. package/build/dist/Server/Services/AIAgentService.js +17 -0
  352. package/build/dist/Server/Services/AIAgentService.js.map +1 -1
  353. package/build/dist/Server/Services/DashboardDomainService.js +55 -18
  354. package/build/dist/Server/Services/DashboardDomainService.js.map +1 -1
  355. package/build/dist/Server/Services/DatabaseService.js +1 -0
  356. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  357. package/build/dist/Server/Services/DeletedProjectService.js +124 -0
  358. package/build/dist/Server/Services/DeletedProjectService.js.map +1 -0
  359. package/build/dist/Server/Services/FileService.js +52 -0
  360. package/build/dist/Server/Services/FileService.js.map +1 -1
  361. package/build/dist/Server/Services/IncidentEpisodePublicNoteService.js +10 -1
  362. package/build/dist/Server/Services/IncidentEpisodePublicNoteService.js.map +1 -1
  363. package/build/dist/Server/Services/IncidentPublicNoteService.js +10 -1
  364. package/build/dist/Server/Services/IncidentPublicNoteService.js.map +1 -1
  365. package/build/dist/Server/Services/Index.js +2 -0
  366. package/build/dist/Server/Services/Index.js.map +1 -1
  367. package/build/dist/Server/Services/MonitorService.js +232 -0
  368. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  369. package/build/dist/Server/Services/ProbeService.js +17 -0
  370. package/build/dist/Server/Services/ProbeService.js.map +1 -1
  371. package/build/dist/Server/Services/ProjectService.js +228 -6
  372. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  373. package/build/dist/Server/Services/PushNotificationService.js +56 -0
  374. package/build/dist/Server/Services/PushNotificationService.js.map +1 -1
  375. package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js +10 -1
  376. package/build/dist/Server/Services/ScheduledMaintenancePublicNoteService.js.map +1 -1
  377. package/build/dist/Server/Services/StatusPageAnnouncementService.js +54 -0
  378. package/build/dist/Server/Services/StatusPageAnnouncementService.js.map +1 -1
  379. package/build/dist/Server/Services/StatusPageDomainService.js +55 -18
  380. package/build/dist/Server/Services/StatusPageDomainService.js.map +1 -1
  381. package/build/dist/Server/Services/TeamMemberService.js +97 -6
  382. package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
  383. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js +3 -0
  384. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js.map +1 -1
  385. package/build/dist/Server/Services/TelemetryEntityService.js +91 -1
  386. package/build/dist/Server/Services/TelemetryEntityService.js.map +1 -1
  387. package/build/dist/Server/Services/TelemetryIngestionKeyService.js +1 -0
  388. package/build/dist/Server/Services/TelemetryIngestionKeyService.js.map +1 -1
  389. package/build/dist/Server/Services/UserWebhookService.js +31 -87
  390. package/build/dist/Server/Services/UserWebhookService.js.map +1 -1
  391. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js +65 -0
  392. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js.map +1 -1
  393. package/build/dist/Server/Services/WorkspaceProjectAuthTokenService.js +23 -0
  394. package/build/dist/Server/Services/WorkspaceProjectAuthTokenService.js.map +1 -1
  395. package/build/dist/Server/Types/Domain.js +37 -0
  396. package/build/dist/Server/Types/Domain.js.map +1 -1
  397. package/build/dist/Server/Types/Workflow/Components/API/Delete.js +2 -1
  398. package/build/dist/Server/Types/Workflow/Components/API/Delete.js.map +1 -1
  399. package/build/dist/Server/Types/Workflow/Components/API/Get.js +2 -1
  400. package/build/dist/Server/Types/Workflow/Components/API/Get.js.map +1 -1
  401. package/build/dist/Server/Types/Workflow/Components/API/Patch.js +2 -1
  402. package/build/dist/Server/Types/Workflow/Components/API/Patch.js.map +1 -1
  403. package/build/dist/Server/Types/Workflow/Components/API/Post.js +2 -1
  404. package/build/dist/Server/Types/Workflow/Components/API/Post.js.map +1 -1
  405. package/build/dist/Server/Types/Workflow/Components/API/Put.js +2 -1
  406. package/build/dist/Server/Types/Workflow/Components/API/Put.js.map +1 -1
  407. package/build/dist/Server/Types/Workflow/Components/API/Utils.js +63 -2
  408. package/build/dist/Server/Types/Workflow/Components/API/Utils.js.map +1 -1
  409. package/build/dist/Server/Types/Workflow/Components/BaseModel/CreateManyBaseModel.js +15 -11
  410. package/build/dist/Server/Types/Workflow/Components/BaseModel/CreateManyBaseModel.js.map +1 -1
  411. package/build/dist/Server/Types/Workflow/Components/BaseModel/CreateOneBaseModel.js +2 -3
  412. package/build/dist/Server/Types/Workflow/Components/BaseModel/CreateOneBaseModel.js.map +1 -1
  413. package/build/dist/Server/Types/Workflow/Components/BaseModel/DeleteManyBaseModel.js +21 -10
  414. package/build/dist/Server/Types/Workflow/Components/BaseModel/DeleteManyBaseModel.js.map +1 -1
  415. package/build/dist/Server/Types/Workflow/Components/BaseModel/DeleteOneBaseModel.js +21 -10
  416. package/build/dist/Server/Types/Workflow/Components/BaseModel/DeleteOneBaseModel.js.map +1 -1
  417. package/build/dist/Server/Types/Workflow/Components/BaseModel/FindManyBaseModel.js +18 -13
  418. package/build/dist/Server/Types/Workflow/Components/BaseModel/FindManyBaseModel.js.map +1 -1
  419. package/build/dist/Server/Types/Workflow/Components/BaseModel/FindOneBaseModel.js +18 -13
  420. package/build/dist/Server/Types/Workflow/Components/BaseModel/FindOneBaseModel.js.map +1 -1
  421. package/build/dist/Server/Types/Workflow/Components/BaseModel/LogComponentError.js +43 -0
  422. package/build/dist/Server/Types/Workflow/Components/BaseModel/LogComponentError.js.map +1 -0
  423. package/build/dist/Server/Types/Workflow/Components/BaseModel/ModelArguments.js +116 -0
  424. package/build/dist/Server/Types/Workflow/Components/BaseModel/ModelArguments.js.map +1 -0
  425. package/build/dist/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.js +7 -0
  426. package/build/dist/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.js.map +1 -1
  427. package/build/dist/Server/Types/Workflow/Components/BaseModel/UpdateManyBaseModel.js +24 -13
  428. package/build/dist/Server/Types/Workflow/Components/BaseModel/UpdateManyBaseModel.js.map +1 -1
  429. package/build/dist/Server/Types/Workflow/Components/BaseModel/UpdateOneBaseModel.js +27 -13
  430. package/build/dist/Server/Types/Workflow/Components/BaseModel/UpdateOneBaseModel.js.map +1 -1
  431. package/build/dist/Server/Types/Workflow/Components/Discord/SendMessageToChannel.js +14 -6
  432. package/build/dist/Server/Types/Workflow/Components/Discord/SendMessageToChannel.js.map +1 -1
  433. package/build/dist/Server/Types/Workflow/Components/IncomingWebhookUtils.js +42 -0
  434. package/build/dist/Server/Types/Workflow/Components/IncomingWebhookUtils.js.map +1 -0
  435. package/build/dist/Server/Types/Workflow/Components/MicrosoftTeams/SendMessageToChannel.js +15 -6
  436. package/build/dist/Server/Types/Workflow/Components/MicrosoftTeams/SendMessageToChannel.js.map +1 -1
  437. package/build/dist/Server/Types/Workflow/Components/Slack/SendMessageToChannel.js +10 -2
  438. package/build/dist/Server/Types/Workflow/Components/Slack/SendMessageToChannel.js.map +1 -1
  439. package/build/dist/Server/Types/Workflow/TriggerCode.js.map +1 -1
  440. package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js +1 -1
  441. package/build/dist/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.js +141 -0
  442. package/build/dist/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.js.map +1 -1
  443. package/build/dist/Server/Utils/AI/SRE/Insights/FixRouting.js.map +1 -1
  444. package/build/dist/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.js +1 -1
  445. package/build/dist/Server/Utils/AI/Toolbox/CodeWriteTools.js +6 -6
  446. package/build/dist/Server/Utils/AI/Toolbox/CodeWriteTools.js.map +1 -1
  447. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js +39 -5
  448. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
  449. package/build/dist/Server/Utils/DataSource/EgressGuard.js +94 -10
  450. package/build/dist/Server/Utils/DataSource/EgressGuard.js.map +1 -1
  451. package/build/dist/Server/Utils/DataSource/HttpFetch.js +1 -19
  452. package/build/dist/Server/Utils/DataSource/HttpFetch.js.map +1 -1
  453. package/build/dist/Server/Utils/Execute.js +2 -2
  454. package/build/dist/Server/Utils/Execute.js.map +1 -1
  455. package/build/dist/Server/Utils/InlineImageAccessTokenSync.js +13 -0
  456. package/build/dist/Server/Utils/InlineImageAccessTokenSync.js.map +1 -1
  457. package/build/dist/Server/Utils/LLM/LLMService.js +43 -12
  458. package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
  459. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +44 -24
  460. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  461. package/build/dist/Server/Utils/Monitor/MonitorDependencySuppression.js +158 -0
  462. package/build/dist/Server/Utils/Monitor/MonitorDependencySuppression.js.map +1 -0
  463. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +50 -30
  464. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  465. package/build/dist/Server/Utils/Monitor/MonitorResource.js +32 -0
  466. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  467. package/build/dist/Server/Utils/Response.js +112 -5
  468. package/build/dist/Server/Utils/Response.js.map +1 -1
  469. package/build/dist/Server/Utils/SSRFProtection.js +219 -53
  470. package/build/dist/Server/Utils/SSRFProtection.js.map +1 -1
  471. package/build/dist/Server/Utils/StartServer.js +7 -0
  472. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  473. package/build/dist/Server/Utils/Telemetry/InventoryEntityRegistry.js +507 -0
  474. package/build/dist/Server/Utils/Telemetry/InventoryEntityRegistry.js.map +1 -0
  475. package/build/dist/Server/Utils/VM/VMAPI.js +51 -4
  476. package/build/dist/Server/Utils/VM/VMAPI.js.map +1 -1
  477. package/build/dist/Server/Utils/VM/VMRunner.js +73 -1
  478. package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
  479. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +445 -43
  480. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  481. package/build/dist/Server/Utils/Workspace/Slack/Slack.js +18 -1
  482. package/build/dist/Server/Utils/Workspace/Slack/Slack.js.map +1 -1
  483. package/build/dist/Server/Utils/Workspace/WorkspaceBase.js.map +1 -1
  484. package/build/dist/Types/AI/FixPullRequestCiStatus.js +1 -1
  485. package/build/dist/Types/AI/FixVerificationStatus.js +2 -2
  486. package/build/dist/Types/API/Hostname.js +73 -4
  487. package/build/dist/Types/API/Hostname.js.map +1 -1
  488. package/build/dist/Types/API/URL.js +42 -24
  489. package/build/dist/Types/API/URL.js.map +1 -1
  490. package/build/dist/Types/Billing/BalanceAdjustmentType.js +15 -0
  491. package/build/dist/Types/Billing/BalanceAdjustmentType.js.map +1 -0
  492. package/build/dist/Types/Billing/ProjectBalanceType.js +14 -0
  493. package/build/dist/Types/Billing/ProjectBalanceType.js.map +1 -0
  494. package/build/dist/Types/Domain.js +22 -0
  495. package/build/dist/Types/Domain.js.map +1 -1
  496. package/build/dist/Types/File/MimeType.js +11 -0
  497. package/build/dist/Types/File/MimeType.js.map +1 -1
  498. package/build/dist/Types/JSONFunctions.js +14 -0
  499. package/build/dist/Types/JSONFunctions.js.map +1 -1
  500. package/build/dist/Types/SerializableObjectDictionary.js +133 -39
  501. package/build/dist/Types/SerializableObjectDictionary.js.map +1 -1
  502. package/build/dist/Types/Telemetry/EntitySource.js +39 -0
  503. package/build/dist/Types/Telemetry/EntitySource.js.map +1 -0
  504. package/build/dist/Types/Telemetry/EntityType.js +27 -0
  505. package/build/dist/Types/Telemetry/EntityType.js.map +1 -1
  506. package/build/dist/Types/Telemetry/EntityTypeGroups.js +57 -0
  507. package/build/dist/Types/Telemetry/EntityTypeGroups.js.map +1 -0
  508. package/build/dist/Types/Workflow/Component.js +21 -0
  509. package/build/dist/Types/Workflow/Component.js.map +1 -1
  510. package/build/dist/Types/Workflow/Components/API.js +35 -0
  511. package/build/dist/Types/Workflow/Components/API.js.map +1 -1
  512. package/build/dist/Types/Workflow/Components/BaseModel.js +87 -28
  513. package/build/dist/Types/Workflow/Components/BaseModel.js.map +1 -1
  514. package/build/dist/Types/Workflow/StepTrace.js +104 -0
  515. package/build/dist/Types/Workflow/StepTrace.js.map +1 -0
  516. package/build/dist/Types/Workflow/TemplateSyntax.js +326 -0
  517. package/build/dist/Types/Workflow/TemplateSyntax.js.map +1 -0
  518. package/build/dist/Types/Workflow/Templates.js +218 -0
  519. package/build/dist/Types/Workflow/Templates.js.map +1 -0
  520. package/build/dist/UI/Components/Date/CustomTimeRangeModal.js +126 -0
  521. package/build/dist/UI/Components/Date/CustomTimeRangeModal.js.map +1 -0
  522. package/build/dist/UI/Components/Date/TimeRangePickerDropdown.js +123 -0
  523. package/build/dist/UI/Components/Date/TimeRangePickerDropdown.js.map +1 -0
  524. package/build/dist/UI/Components/Dictionary/Dictionary.js +22 -6
  525. package/build/dist/UI/Components/Dictionary/Dictionary.js.map +1 -1
  526. package/build/dist/UI/Components/Forms/Fields/ColorPicker.js +52 -13
  527. package/build/dist/UI/Components/Forms/Fields/ColorPicker.js.map +1 -1
  528. package/build/dist/UI/Components/Forms/Fields/IconPicker.js +28 -12
  529. package/build/dist/UI/Components/Forms/Fields/IconPicker.js.map +1 -1
  530. package/build/dist/UI/Components/Forms/Validation.js +44 -0
  531. package/build/dist/UI/Components/Forms/Validation.js.map +1 -1
  532. package/build/dist/UI/Components/GanttChart/ChartContainer.js +4 -3
  533. package/build/dist/UI/Components/GanttChart/ChartContainer.js.map +1 -1
  534. package/build/dist/UI/Components/Input/Input.js +12 -4
  535. package/build/dist/UI/Components/Input/Input.js.map +1 -1
  536. package/build/dist/UI/Components/LogsViewer/components/LogTimeRangePicker.js +5 -108
  537. package/build/dist/UI/Components/LogsViewer/components/LogTimeRangePicker.js.map +1 -1
  538. package/build/dist/UI/Components/Modal/ConfirmModal.js +3 -1
  539. package/build/dist/UI/Components/Modal/ConfirmModal.js.map +1 -1
  540. package/build/dist/UI/Components/Modal/Modal.js +55 -39
  541. package/build/dist/UI/Components/Modal/Modal.js.map +1 -1
  542. package/build/dist/UI/Components/ModelDelete/ModelDelete.js +11 -6
  543. package/build/dist/UI/Components/ModelDelete/ModelDelete.js.map +1 -1
  544. package/build/dist/UI/Components/SideOver/SideOver.js +105 -30
  545. package/build/dist/UI/Components/SideOver/SideOver.js.map +1 -1
  546. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryTimeRangePicker.js +5 -105
  547. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryTimeRangePicker.js.map +1 -1
  548. package/build/dist/UI/Components/Workflow/ArgumentsForm.js +140 -11
  549. package/build/dist/UI/Components/Workflow/ArgumentsForm.js.map +1 -1
  550. package/build/dist/UI/Components/Workflow/Component.js +20 -19
  551. package/build/dist/UI/Components/Workflow/Component.js.map +1 -1
  552. package/build/dist/UI/Components/Workflow/ComponentSettingsModal.js +31 -3
  553. package/build/dist/UI/Components/Workflow/ComponentSettingsModal.js.map +1 -1
  554. package/build/dist/UI/Components/Workflow/GraphLint.js +396 -0
  555. package/build/dist/UI/Components/Workflow/GraphLint.js.map +1 -0
  556. package/build/dist/UI/Components/Workflow/ModelColumnEditor.js +225 -0
  557. package/build/dist/UI/Components/Workflow/ModelColumnEditor.js.map +1 -0
  558. package/build/dist/UI/Components/Workflow/ModelSchema.js +118 -0
  559. package/build/dist/UI/Components/Workflow/ModelSchema.js.map +1 -0
  560. package/build/dist/UI/Components/Workflow/RunForm.js +22 -6
  561. package/build/dist/UI/Components/Workflow/RunForm.js.map +1 -1
  562. package/build/dist/UI/Components/Workflow/RunStatusWatcher.js +76 -0
  563. package/build/dist/UI/Components/Workflow/RunStatusWatcher.js.map +1 -0
  564. package/build/dist/UI/Components/Workflow/StepTraceViewer.js +76 -0
  565. package/build/dist/UI/Components/Workflow/StepTraceViewer.js.map +1 -0
  566. package/build/dist/UI/Components/Workflow/Utils.js +73 -1
  567. package/build/dist/UI/Components/Workflow/Utils.js.map +1 -1
  568. package/build/dist/UI/Components/Workflow/Workflow.js +51 -6
  569. package/build/dist/UI/Components/Workflow/Workflow.js.map +1 -1
  570. package/build/dist/UI/Types/LayeredDismissal.js +21 -0
  571. package/build/dist/UI/Types/LayeredDismissal.js.map +1 -0
  572. package/build/dist/UI/Types/UseAnchoredFieldPopup.js +74 -1
  573. package/build/dist/UI/Types/UseAnchoredFieldPopup.js.map +1 -1
  574. package/build/dist/UI/Utils/PageScrollLock.js +52 -0
  575. package/build/dist/UI/Utils/PageScrollLock.js.map +1 -0
  576. package/build/dist/Utils/Dashboard/HtmlWidgetDocument.js +4 -2
  577. package/build/dist/Utils/Dashboard/HtmlWidgetDocument.js.map +1 -1
  578. package/build/dist/Utils/Dashboard/VariableInterpolation.js +19 -1
  579. package/build/dist/Utils/Dashboard/VariableInterpolation.js.map +1 -1
  580. package/build/dist/Utils/LegacySerializedArray.js +51 -0
  581. package/build/dist/Utils/LegacySerializedArray.js.map +1 -0
  582. package/build/dist/Utils/Monitor/MonitorDependencyRule.js +47 -0
  583. package/build/dist/Utils/Monitor/MonitorDependencyRule.js.map +1 -0
  584. package/build/dist/Utils/Monitor/NetworkDeviceRoleUtil.js +386 -0
  585. package/build/dist/Utils/Monitor/NetworkDeviceRoleUtil.js.map +1 -0
  586. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js +35 -6
  587. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js.map +1 -1
  588. package/build/dist/Utils/Telemetry/EntityKey.js +52 -0
  589. package/build/dist/Utils/Telemetry/EntityKey.js.map +1 -1
  590. package/build/dist/Utils/Telemetry/SavedViewFilters.js +52 -0
  591. package/build/dist/Utils/Telemetry/SavedViewFilters.js.map +1 -0
  592. package/jest.config.json +3 -0
  593. package/package.json +1 -1
  594. package/tsconfig.json +3 -1
@@ -1,5 +1,6 @@
1
1
  import FormFieldSchemaType from "../Forms/Types/FormFieldSchemaType";
2
2
  import IconProp from "../../../Types/Icon/IconProp";
3
+ import JSONFunctions from "../../../Types/JSONFunctions";
3
4
  import { ComponentInputType, } from "../../../Types/Workflow/Component";
4
5
  import Components, { Categories } from "../../../Types/Workflow/Components";
5
6
  import BaseModelComponentFactory from "../../../Types/Workflow/Components/BaseModel";
@@ -19,6 +20,63 @@ export const loadComponentsAndCategories = () => {
19
20
  }
20
21
  return { components: initComponents, categories: initCategories };
21
22
  };
23
+ /**
24
+ * The key/value view of a StringDictionary argument, or null when the value
25
+ * cannot be shown that way and belongs in the JSON editor instead.
26
+ *
27
+ * Editable as rows:
28
+ * - nothing yet (a new component)
29
+ * - an object of primitives, whether stored as an object (written by the row
30
+ * editor) or as a JSON string (written by the old JSON editor, and by
31
+ * every workflow that already exists)
32
+ *
33
+ * Not editable as rows, so left in the JSON editor:
34
+ * - a whole-field template such as {{local.components.x.returnValues.headers}},
35
+ * which substitutes an entire object at run time and is not JSON as written
36
+ * - text that does not parse, which is exactly the case where the builder
37
+ * most needs to see and fix what they typed
38
+ * - nested objects or arrays, which the row editor cannot represent and would
39
+ * therefore quietly discard
40
+ */
41
+ export const parseStringDictionaryValue = (argValue) => {
42
+ if (argValue === null || argValue === undefined || argValue === "") {
43
+ return {};
44
+ }
45
+ let candidate = argValue;
46
+ if (typeof candidate === "string") {
47
+ if (candidate.trim() === "") {
48
+ return {};
49
+ }
50
+ /*
51
+ * JSONFunctions.parse is JSON5, which is what the components themselves use
52
+ * on these values (ApiComponentUtils.sanitizeArgs). Parsing more strictly
53
+ * here than the runtime does would push a value that works today into the
54
+ * JSON editor for no reason.
55
+ */
56
+ try {
57
+ candidate = JSONFunctions.parse(candidate);
58
+ }
59
+ catch (_a) {
60
+ return null;
61
+ }
62
+ }
63
+ if (typeof candidate !== "object" ||
64
+ candidate === null ||
65
+ Array.isArray(candidate)) {
66
+ return null;
67
+ }
68
+ const entries = candidate;
69
+ for (const key of Object.keys(entries)) {
70
+ const value = entries[key];
71
+ const isPrimitive = typeof value === "string" ||
72
+ typeof value === "number" ||
73
+ typeof value === "boolean";
74
+ if (!isPrimitive) {
75
+ return null;
76
+ }
77
+ }
78
+ return entries;
79
+ };
22
80
  export const componentInputTypeToFormFieldType = (componentInputType, argValue) => {
23
81
  // first priority.
24
82
  if (componentInputType === ComponentInputType.BaseModel) {
@@ -61,9 +119,23 @@ export const componentInputTypeToFormFieldType = (componentInputType, argValue)
61
119
  fieldType: FormFieldSchemaType.JSON,
62
120
  };
63
121
  }
122
+ /*
123
+ * A dictionary of strings is a list of key/value pairs — request headers,
124
+ * query params — and asking someone to hand-write the braces and commas
125
+ * for that is where a good share of workflow JSON mistakes come from. Give
126
+ * it the key/value row editor instead.
127
+ *
128
+ * Values written before this change are JSON strings, and a value can also
129
+ * be something the row editor cannot represent (a whole-field
130
+ * {{...}} substitution, or nested objects). parseStringDictionaryValue
131
+ * decides; anything it cannot represent stays in the JSON editor, so no
132
+ * existing value is ever silently dropped on the floor.
133
+ */
64
134
  if (componentInputType === ComponentInputType.StringDictionary) {
65
135
  return {
66
- fieldType: FormFieldSchemaType.JSON,
136
+ fieldType: parseStringDictionaryValue(argValue) === null
137
+ ? FormFieldSchemaType.JSON
138
+ : FormFieldSchemaType.Dictionary,
67
139
  };
68
140
  }
69
141
  if (componentInputType === ComponentInputType.LongText) {
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../UI/Components/Workflow/Utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../UI/Components/Workflow/Utils.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,12 @@ import WorkflowComponent from "./Component";
2
2
  import ComponentSettingsModal from "./ComponentSettingsModal";
3
3
  import ComponentsModal from "./ComponentsModal";
4
4
  import RunModal from "./RunModal";
5
+ import { lintWorkflowGraph, } from "./GraphLint";
5
6
  import { loadComponentsAndCategories } from "./Utils";
6
7
  import IconProp from "../../../Types/Icon/IconProp";
7
8
  import ObjectID from "../../../Types/ObjectID";
8
9
  import { ComponentType, NodeType, } from "../../../Types/Workflow/Component";
9
- import React, { useCallback, useEffect, useRef, useState, } from "react";
10
+ import React, { useCallback, useEffect, useMemo, useRef, useState, } from "react";
10
11
  import ReactFlow, { Background, BackgroundVariant, Controls, MarkerType, MiniMap, addEdge, getConnectedEdges, updateEdge, useEdgesState, useNodesState, } from "reactflow";
11
12
  // 👇 you need to import the reactflow styles
12
13
  import "reactflow/dist/style.css";
@@ -146,6 +147,35 @@ const Workflow = (props) => {
146
147
  props.onWorkflowUpdated(nodes, edges);
147
148
  }
148
149
  }, [nodes, edges]);
150
+ /*
151
+ * Static checks over the graph, recomputed as it is edited.
152
+ *
153
+ * The results are deliberately NOT written back into node state. Node data is
154
+ * what gets persisted (Builder.saveGraph sends node.data verbatim, minus
155
+ * metadata), so storing lint output there would save today's warnings into
156
+ * the workflow itself and show them again on reload even once they were
157
+ * fixed. Deriving a separate array for rendering keeps the saved graph clean.
158
+ */
159
+ const lintResult = useMemo(() => {
160
+ return lintWorkflowGraph({
161
+ nodes: nodes,
162
+ edges: edges,
163
+ });
164
+ }, [nodes, edges]);
165
+ useEffect(() => {
166
+ var _a;
167
+ (_a = props.onLintResultChange) === null || _a === void 0 ? void 0 : _a.call(props, lintResult);
168
+ }, [lintResult]);
169
+ const nodesToRender = useMemo(() => {
170
+ return nodes.map((node) => {
171
+ const error = lintResult.errorsByNodeId[node.id] || "";
172
+ // Same object when there is nothing to say, so react-flow can bail early.
173
+ if (!error && !node.data.error) {
174
+ return node;
175
+ }
176
+ return Object.assign(Object.assign({}, node), { data: Object.assign(Object.assign({}, node.data), { error: error }) });
177
+ });
178
+ }, [nodes, lintResult]);
149
179
  const proOptions = { hideAttribution: true };
150
180
  const onConnect = useCallback((params) => {
151
181
  return setEdges((eds) => {
@@ -309,7 +339,7 @@ const Workflow = (props) => {
309
339
  stroke-dasharray: 5 5 !important;
310
340
  }
311
341
  `),
312
- React.createElement(ReactFlow, { nodes: nodes, edges: edges, fitView: true, onEdgeClick: () => {
342
+ React.createElement(ReactFlow, { nodes: nodesToRender, edges: edges, fitView: true, onEdgeClick: () => {
313
343
  refreshEdges();
314
344
  }, onNodeClick: () => {
315
345
  refreshEdges();
@@ -355,16 +385,31 @@ const Workflow = (props) => {
355
385
  ? selectedNodeData.metadata.title
356
386
  : "Component Properties", onDelete: (component) => {
357
387
  deleteNode(component.id);
358
- }, description: selectedNodeData && selectedNodeData.metadata.description
388
+ },
389
+ /*
390
+ * Triggers have nothing to run on their own — they are the thing
391
+ * that starts a run, so "run just this step" is meaningless for one.
392
+ */
393
+ onRunStep: props.onRunStep &&
394
+ selectedNodeData.componentType !== ComponentType.Trigger
395
+ ? props.onRunStep
396
+ : undefined, description: selectedNodeData && selectedNodeData.metadata.description
359
397
  ? selectedNodeData.metadata.description
360
398
  : "Edit Component Properties and variables here.", onClose: () => {
361
399
  setShowComponentSettingsModal(false);
362
400
  }, onSave: (componentData) => {
363
- // Update the node.
401
+ /*
402
+ * The settings modal was opened from the rendered node, so what
403
+ * comes back carries whatever lint message was on it. Clear that
404
+ * before it reaches node state — state is what gets saved, and a
405
+ * message about today's mistake has no business being written into
406
+ * the workflow.
407
+ */
408
+ const dataToStore = Object.assign(Object.assign({}, componentData), { error: "" });
364
409
  setNodes((nds) => {
365
410
  return nds.map((n) => {
366
- if (n.data.internalId === componentData.internalId) {
367
- n.data = componentData;
411
+ if (n.data.internalId === dataToStore.internalId) {
412
+ n.data = dataToStore;
368
413
  }
369
414
  return n;
370
415
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Workflow.js","sourceRoot":"","sources":["../../../../../UI/Components/Workflow/Workflow.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Workflow.js","sourceRoot":"","sources":["../../../../../UI/Components/Workflow/Workflow.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /*
2
+ * Dismissal belongs to the topmost layer that is open.
3
+ *
4
+ * A colour picker, an icon grid or an autocomplete menu inside a modal is
5
+ * portalled to document.body so the modal body cannot clip it, and it closes
6
+ * itself on a press that lands anywhere else. Very often "anywhere else" is the
7
+ * modal's own backdrop, which reads the same press as a dismissal of the whole
8
+ * dialog - so one click aimed at the popup takes the half-filled form with it.
9
+ *
10
+ * A popup that consumes a press records it here, and the backdrop skips any
11
+ * press it finds. The set is keyed on the native event object and holds it
12
+ * weakly, so nothing outlives the press it describes.
13
+ */
14
+ const pressesConsumedByAnAnchoredPopup = new WeakSet();
15
+ export const consumePressForAnchoredPopup = (event) => {
16
+ pressesConsumedByAnAnchoredPopup.add(event);
17
+ };
18
+ export const wasPressConsumedByAnAnchoredPopup = (event) => {
19
+ return pressesConsumedByAnAnchoredPopup.has(event);
20
+ };
21
+ //# sourceMappingURL=LayeredDismissal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LayeredDismissal.js","sourceRoot":"","sources":["../../../../UI/Types/LayeredDismissal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,gCAAgC,GAAmB,IAAI,OAAO,EAAS,CAAC;AAI9E,MAAM,CAAC,MAAM,4BAA4B,GAAyB,CAChE,KAAY,EACN,EAAE;IACR,gCAAgC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC,CAAC;AAIF,MAAM,CAAC,MAAM,iCAAiC,GAA6B,CACzE,KAAY,EACH,EAAE;IACX,OAAO,gCAAgC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
- import { useCallback, useEffect, useLayoutEffect, useRef, useState, } from "react";
1
+ import { consumePressForAnchoredPopup } from "./LayeredDismissal";
2
+ import { useCallback, useEffect, useId, useLayoutEffect, useRef, useState, } from "react";
2
3
  /*
3
4
  * Form field popups (colour pickers, icon grids, ...) are rendered inside
4
5
  * Modal's scrolling body, which clips absolutely positioned children. This hook
@@ -13,6 +14,18 @@ const POPUP_GAP_PX = 4;
13
14
  const POPUP_VIEWPORT_PADDING_PX = 8;
14
15
  const POPUP_MIN_USEFUL_HEIGHT_PX = 160;
15
16
  const FOCUSABLE_SELECTOR = 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';
17
+ /*
18
+ * The keys that open a popup from its trigger. ArrowDown/ArrowUp match the
19
+ * listbox convention every other menu in this codebase follows; Enter and Space
20
+ * are what a button-shaped control is expected to answer to.
21
+ */
22
+ const POPUP_OPENING_KEYS = [
23
+ "Enter",
24
+ " ",
25
+ "Spacebar",
26
+ "ArrowDown",
27
+ "ArrowUp",
28
+ ];
16
29
  const getFocusableElements = (container) => {
17
30
  return Array.from(container.querySelectorAll(FOCUSABLE_SELECTOR)).filter((element) => {
18
31
  return (!element.hasAttribute("disabled") &&
@@ -25,6 +38,21 @@ const useAnchoredFieldPopup = (options) => {
25
38
  const [popupPosition, setPopupPosition] = useState(null);
26
39
  const anchorRef = useRef(null);
27
40
  const popupRef = useRef(null);
41
+ const popupId = useId();
42
+ /*
43
+ * A pointer user wants the popup to appear under the field and their pointer
44
+ * to stay where it is. A keyboard user has no other way in, so opening from
45
+ * the keyboard hands focus to the popup's first control - the hex box for a
46
+ * colour, the search box for an icon.
47
+ */
48
+ const shouldMoveFocusIntoPopupRef = useRef(false);
49
+ const focusPopup = useCallback(() => {
50
+ const popup = popupRef.current;
51
+ if (!popup) {
52
+ return;
53
+ }
54
+ (getFocusableElements(popup)[0] || popup).focus();
55
+ }, []);
28
56
  const closePopup = useCallback((shouldReturnFocus) => {
29
57
  setIsPopupOpen(false);
30
58
  if (!shouldReturnFocus) {
@@ -46,6 +74,43 @@ const useAnchoredFieldPopup = (options) => {
46
74
  return !isOpen;
47
75
  });
48
76
  }, []);
77
+ const openPopup = useCallback((shouldMoveFocusIntoPopup) => {
78
+ shouldMoveFocusIntoPopupRef.current = Boolean(shouldMoveFocusIntoPopup);
79
+ setIsPopupOpen(true);
80
+ }, []);
81
+ const onTriggerKeyDown = useCallback((event) => {
82
+ if (event.defaultPrevented || !POPUP_OPENING_KEYS.includes(event.key)) {
83
+ return;
84
+ }
85
+ /*
86
+ * The key opened the popup and means nothing else after that: Input's
87
+ * own onEnterPress stands down on a defaultPrevented event, and a
88
+ * trigger placed inside a real <form> - which nothing about Input
89
+ * prevents, even though this codebase's forms are not form elements -
90
+ * would otherwise submit it on the way past.
91
+ */
92
+ event.preventDefault();
93
+ if (isPopupOpen) {
94
+ focusPopup();
95
+ return;
96
+ }
97
+ openPopup(true);
98
+ }, [isPopupOpen, focusPopup, openPopup]);
99
+ /*
100
+ * Waits for a measured position, not just for the open flag: until then the
101
+ * popup is `visibility: hidden` so it cannot flash at the top left corner,
102
+ * and a hidden element refuses focus. jsdom has no such scruples, so this
103
+ * ordering only shows itself in a browser.
104
+ */
105
+ useEffect(() => {
106
+ if (!isPopupOpen ||
107
+ !popupPosition ||
108
+ !shouldMoveFocusIntoPopupRef.current) {
109
+ return;
110
+ }
111
+ shouldMoveFocusIntoPopupRef.current = false;
112
+ focusPopup();
113
+ }, [isPopupOpen, popupPosition, focusPopup]);
49
114
  const updatePopupPosition = useCallback(() => {
50
115
  if (!anchorRef.current || typeof window === "undefined") {
51
116
  return;
@@ -120,6 +185,12 @@ const useAnchoredFieldPopup = (options) => {
120
185
  if ((_b = popupRef.current) === null || _b === void 0 ? void 0 : _b.contains(target)) {
121
186
  return;
122
187
  }
188
+ /*
189
+ * This press is spent on closing the popup. Claiming it stops the modal
190
+ * underneath from reading the same press as a backdrop dismissal and
191
+ * throwing the form away along with the picker.
192
+ */
193
+ consumePressForAnchoredPopup(event);
123
194
  closePopup(false);
124
195
  };
125
196
  document.addEventListener("mousedown", handlePointerDown, true);
@@ -187,6 +258,8 @@ const useAnchoredFieldPopup = (options) => {
187
258
  anchorRef,
188
259
  closePopup,
189
260
  isPopupOpen,
261
+ onTriggerKeyDown,
262
+ popupId,
190
263
  popupPosition,
191
264
  popupRef,
192
265
  portalTarget: typeof document === "undefined" ? null : document.body,
@@ -1 +1 @@
1
- {"version":3,"file":"UseAnchoredFieldPopup.js","sourceRoot":"","sources":["../../../../UI/Types/UseAnchoredFieldPopup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UseAnchoredFieldPopup.js","sourceRoot":"","sources":["../../../../UI/Types/UseAnchoredFieldPopup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /*
2
+ * The page behind an open dialog surface must not scroll, and nested surfaces
3
+ * share a single lock: a counter, rather than a boolean, is what stops an inner
4
+ * dialog from handing scrolling back while the surface that opened it is still
5
+ * up.
6
+ *
7
+ * This lives outside any one component on purpose. Modal and SideOver nest
8
+ * inside each other in shipped code — Workflow's "Run Workflow" panel is a
9
+ * SideOver that opens a ConfirmModal — and two private counters would race over
10
+ * document.body.style. Whichever surface unmounted first would restore the
11
+ * snapshot the other had already overwritten, leaving the page either scrolling
12
+ * under a dialog that is still open or locked forever with no dialog on screen.
13
+ */
14
+ let openDialogCount = 0;
15
+ let bodyOverflowBeforeLock = "";
16
+ let bodyPaddingRightBeforeLock = "";
17
+ export const lockPageScroll = () => {
18
+ openDialogCount++;
19
+ if (openDialogCount > 1 || typeof document === "undefined") {
20
+ return;
21
+ }
22
+ bodyOverflowBeforeLock = document.body.style.overflow;
23
+ bodyPaddingRightBeforeLock = document.body.style.paddingRight;
24
+ /*
25
+ * Hiding the scrollbar reclaims its width, so the page underneath would
26
+ * jump sideways by exactly that much. Pad it back to hold everything still.
27
+ */
28
+ const scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
29
+ if (scrollbarWidth > 0) {
30
+ document.body.style.paddingRight = `${scrollbarWidth}px`;
31
+ }
32
+ document.body.style.overflow = "hidden";
33
+ };
34
+ export const unlockPageScroll = () => {
35
+ openDialogCount = Math.max(0, openDialogCount - 1);
36
+ if (openDialogCount > 0 || typeof document === "undefined") {
37
+ return;
38
+ }
39
+ document.body.style.overflow = bodyOverflowBeforeLock;
40
+ document.body.style.paddingRight = bodyPaddingRightBeforeLock;
41
+ };
42
+ /*
43
+ * Test-only escape hatch. The counter is module state that survives between
44
+ * cases in the same jest file, so a suite that asserts on the FIRST lock needs
45
+ * a way back to a known zero.
46
+ */
47
+ export const resetPageScrollLockForTesting = () => {
48
+ openDialogCount = 0;
49
+ bodyOverflowBeforeLock = "";
50
+ bodyPaddingRightBeforeLock = "";
51
+ };
52
+ //# sourceMappingURL=PageScrollLock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageScrollLock.js","sourceRoot":"","sources":["../../../../UI/Utils/PageScrollLock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,IAAI,eAAe,GAAW,CAAC,CAAC;AAChC,IAAI,sBAAsB,GAAW,EAAE,CAAC;AACxC,IAAI,0BAA0B,GAAW,EAAE,CAAC;AAI5C,MAAM,CAAC,MAAM,cAAc,GAA2B,GAAS,EAAE;IAC/D,eAAe,EAAE,CAAC;IAElB,IAAI,eAAe,GAAG,CAAC,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,sBAAsB,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IACtD,0BAA0B,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;IAE9D;;;OAGG;IACH,MAAM,cAAc,GAClB,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC;IAE3D,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,cAAc,IAAI,CAAC;IAC3D,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAA2B,GAAS,EAAE;IACjE,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,CAAC,CAAC;IAEnD,IAAI,eAAe,GAAG,CAAC,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,sBAAsB,CAAC;IACtD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,0BAA0B,CAAC;AAChE,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GACxC,GAAS,EAAE;IACT,eAAe,GAAG,CAAC,CAAC;IACpB,sBAAsB,GAAG,EAAE,CAAC;IAC5B,0BAA0B,GAAG,EAAE,CAAC;AAClC,CAAC,CAAC"}
@@ -56,8 +56,10 @@ export default class HtmlWidgetDocument {
56
56
  *
57
57
  * Resolution is delegated to DashboardVariableInterpolation so this widget
58
58
  * agrees with every query-driven widget about what a variable currently
59
- * means (selected value, else default, else nothing). Multi-select joins
60
- * with "," because that is the form an author would paste into a filter.
59
+ * means: a single-select is its selected value, else its default, else
60
+ * nothing; a multi-select is its picks, and no picks is "All" which
61
+ * lands here as "" rather than the default. Multi-select joins with ","
62
+ * because that is the form an author would paste into a filter.
61
63
  */
62
64
  static resolveVariables(variables) {
63
65
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"HtmlWidgetDocument.js","sourceRoot":"","sources":["../../../../Utils/Dashboard/HtmlWidgetDocument.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HtmlWidgetDocument.js","sourceRoot":"","sources":["../../../../Utils/Dashboard/HtmlWidgetDocument.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,23 @@ import { DashboardVariableType, } from "../../Types/Dashboard/DashboardVariable"
13
13
  * key so the server's WHERE-builder produces `attributes[key] IN (...)`.
14
14
  */
15
15
  export default class DashboardVariableInterpolation {
16
+ /*
17
+ * The one place that decides what a variable currently *means*. Every
18
+ * widget and every selector defers to it, so the rules have to be
19
+ * stated rather than inferred:
20
+ *
21
+ * - A multi-select variable's `selectedValues` is its sole source of
22
+ * truth. Empty or unset is the "All" state and produces no
23
+ * predicate. `defaultValue` deliberately does NOT apply here: the
24
+ * selector shows "All" whenever the list is empty and cannot show
25
+ * anything else, so honouring a default would filter widgets behind
26
+ * a control that reads "unfiltered". A default that only holds one
27
+ * value also cannot express what a multi-select is for.
28
+ * - A single-select variable falls back to `defaultValue` only when
29
+ * `selectedValue` is absent. An empty string is a real choice — the
30
+ * "All" option — and must not be overwritten by the default, which
31
+ * is why this uses `??` rather than `||`.
32
+ */
16
33
  static resolveValue(variable) {
17
34
  var _a, _b;
18
35
  if (variable.isMultiSelect) {
@@ -22,7 +39,8 @@ export default class DashboardVariableInterpolation {
22
39
  if (values.length > 0) {
23
40
  return { multi: values };
24
41
  }
25
- // No multi-select picks. Fall through to default value handling.
42
+ // No picks: "All". Never falls back to the single-select default.
43
+ return undefined;
26
44
  }
27
45
  const v = (_b = (_a = variable.selectedValue) !== null && _a !== void 0 ? _a : variable.defaultValue) !== null && _b !== void 0 ? _b : undefined;
28
46
  if (v === undefined || v === null || v === "") {
@@ -1 +1 @@
1
- {"version":3,"file":"VariableInterpolation.js","sourceRoot":"","sources":["../../../../Utils/Dashboard/VariableInterpolation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VariableInterpolation.js","sourceRoot":"","sources":["../../../../Utils/Dashboard/VariableInterpolation.ts"],"names":[],"mappings":"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"}