@marinoscar/platform-web 0.1.0-next.19 → 0.1.0-next.21

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 (174) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +5 -3
  3. package/dist/alerts/headless/client.d.ts +134 -0
  4. package/dist/alerts/headless/client.d.ts.map +1 -0
  5. package/dist/alerts/headless/client.js +105 -0
  6. package/dist/alerts/headless/client.js.map +1 -0
  7. package/dist/alerts/headless/format.d.ts +95 -0
  8. package/dist/alerts/headless/format.d.ts.map +1 -0
  9. package/dist/alerts/headless/format.js +164 -0
  10. package/dist/alerts/headless/format.js.map +1 -0
  11. package/dist/alerts/headless/hooks.d.ts +245 -0
  12. package/dist/alerts/headless/hooks.d.ts.map +1 -0
  13. package/dist/alerts/headless/hooks.js +315 -0
  14. package/dist/alerts/headless/hooks.js.map +1 -0
  15. package/dist/alerts/headless/index.d.ts +9 -0
  16. package/dist/alerts/headless/index.d.ts.map +1 -0
  17. package/dist/alerts/headless/index.js +9 -0
  18. package/dist/alerts/headless/index.js.map +1 -0
  19. package/dist/alerts/headless/rule-draft.d.ts +175 -0
  20. package/dist/alerts/headless/rule-draft.d.ts.map +1 -0
  21. package/dist/alerts/headless/rule-draft.js +261 -0
  22. package/dist/alerts/headless/rule-draft.js.map +1 -0
  23. package/dist/alerts/ui/AlertIncidentDrawer.d.ts +30 -0
  24. package/dist/alerts/ui/AlertIncidentDrawer.d.ts.map +1 -0
  25. package/dist/alerts/ui/AlertIncidentDrawer.js +33 -0
  26. package/dist/alerts/ui/AlertIncidentDrawer.js.map +1 -0
  27. package/dist/alerts/ui/AlertRuleDialog.d.ts +47 -0
  28. package/dist/alerts/ui/AlertRuleDialog.d.ts.map +1 -0
  29. package/dist/alerts/ui/AlertRuleDialog.js +124 -0
  30. package/dist/alerts/ui/AlertRuleDialog.js.map +1 -0
  31. package/dist/alerts/ui/AlertRuleTestResult.d.ts +23 -0
  32. package/dist/alerts/ui/AlertRuleTestResult.d.ts.map +1 -0
  33. package/dist/alerts/ui/AlertRuleTestResult.js +30 -0
  34. package/dist/alerts/ui/AlertRuleTestResult.js.map +1 -0
  35. package/dist/alerts/ui/AlertsPage.d.ts +41 -0
  36. package/dist/alerts/ui/AlertsPage.d.ts.map +1 -0
  37. package/dist/alerts/ui/AlertsPage.js +238 -0
  38. package/dist/alerts/ui/AlertsPage.js.map +1 -0
  39. package/dist/alerts/ui/FiringAlertsBanner.d.ts +28 -0
  40. package/dist/alerts/ui/FiringAlertsBanner.d.ts.map +1 -0
  41. package/dist/alerts/ui/FiringAlertsBanner.js +45 -0
  42. package/dist/alerts/ui/FiringAlertsBanner.js.map +1 -0
  43. package/dist/alerts/ui/copy.d.ts +15 -0
  44. package/dist/alerts/ui/copy.d.ts.map +1 -0
  45. package/dist/alerts/ui/copy.js +14 -0
  46. package/dist/alerts/ui/copy.js.map +1 -0
  47. package/dist/alerts/ui/index.d.ts +14 -0
  48. package/dist/alerts/ui/index.d.ts.map +1 -0
  49. package/dist/alerts/ui/index.js +12 -0
  50. package/dist/alerts/ui/index.js.map +1 -0
  51. package/dist/alerts/ui/parts.d.ts +26 -0
  52. package/dist/alerts/ui/parts.d.ts.map +1 -0
  53. package/dist/alerts/ui/parts.js +27 -0
  54. package/dist/alerts/ui/parts.js.map +1 -0
  55. package/dist/alerts/ui/settings.d.ts +27 -0
  56. package/dist/alerts/ui/settings.d.ts.map +1 -0
  57. package/dist/alerts/ui/settings.js +37 -0
  58. package/dist/alerts/ui/settings.js.map +1 -0
  59. package/dist/nodes/headless/api.d.ts +3 -1
  60. package/dist/nodes/headless/api.d.ts.map +1 -1
  61. package/dist/nodes/headless/api.js +22 -0
  62. package/dist/nodes/headless/api.js.map +1 -1
  63. package/dist/nodes/headless/index.d.ts +7 -2
  64. package/dist/nodes/headless/index.d.ts.map +1 -1
  65. package/dist/nodes/headless/index.js +4 -1
  66. package/dist/nodes/headless/index.js.map +1 -1
  67. package/dist/nodes/headless/node-events.d.ts +43 -0
  68. package/dist/nodes/headless/node-events.d.ts.map +1 -0
  69. package/dist/nodes/headless/node-events.js +150 -0
  70. package/dist/nodes/headless/node-events.js.map +1 -0
  71. package/dist/nodes/headless/power.d.ts +43 -0
  72. package/dist/nodes/headless/power.d.ts.map +1 -0
  73. package/dist/nodes/headless/power.js +74 -0
  74. package/dist/nodes/headless/power.js.map +1 -0
  75. package/dist/nodes/headless/types.d.ts +40 -3
  76. package/dist/nodes/headless/types.d.ts.map +1 -1
  77. package/dist/nodes/headless/types.js +1 -1
  78. package/dist/nodes/headless/types.js.map +1 -1
  79. package/dist/nodes/headless/use-node-events.d.ts +59 -0
  80. package/dist/nodes/headless/use-node-events.d.ts.map +1 -0
  81. package/dist/nodes/headless/use-node-events.js +159 -0
  82. package/dist/nodes/headless/use-node-events.js.map +1 -0
  83. package/dist/nodes/ui/NodeEventsTimeline.d.ts +39 -0
  84. package/dist/nodes/ui/NodeEventsTimeline.d.ts.map +1 -0
  85. package/dist/nodes/ui/NodeEventsTimeline.js +63 -0
  86. package/dist/nodes/ui/NodeEventsTimeline.js.map +1 -0
  87. package/dist/nodes/ui/NodePowerBadge.d.ts +27 -0
  88. package/dist/nodes/ui/NodePowerBadge.d.ts.map +1 -0
  89. package/dist/nodes/ui/NodePowerBadge.js +48 -0
  90. package/dist/nodes/ui/NodePowerBadge.js.map +1 -0
  91. package/dist/nodes/ui/NodeVitalsDialog.d.ts +11 -1
  92. package/dist/nodes/ui/NodeVitalsDialog.d.ts.map +1 -1
  93. package/dist/nodes/ui/NodeVitalsDialog.js +14 -5
  94. package/dist/nodes/ui/NodeVitalsDialog.js.map +1 -1
  95. package/dist/nodes/ui/WorkersPage.d.ts.map +1 -1
  96. package/dist/nodes/ui/WorkersPage.js +2 -1
  97. package/dist/nodes/ui/WorkersPage.js.map +1 -1
  98. package/dist/nodes/ui/workerVitals.d.ts +17 -1
  99. package/dist/nodes/ui/workerVitals.d.ts.map +1 -1
  100. package/dist/nodes/ui/workerVitals.js +43 -0
  101. package/dist/nodes/ui/workerVitals.js.map +1 -1
  102. package/dist/nodes/ui/workersTable.d.ts.map +1 -1
  103. package/dist/nodes/ui/workersTable.js +2 -1
  104. package/dist/nodes/ui/workersTable.js.map +1 -1
  105. package/dist/telemetry/headless/hooks/useTelemetryDashboard.d.ts +1 -1
  106. package/dist/telemetry/ui/components/dashboard/metrics/MetricSections.d.ts +11 -0
  107. package/dist/telemetry/ui/components/dashboard/metrics/MetricSections.d.ts.map +1 -1
  108. package/dist/telemetry/ui/components/dashboard/metrics/MetricSections.js +17 -2
  109. package/dist/telemetry/ui/components/dashboard/metrics/MetricSections.js.map +1 -1
  110. package/dist/webhooks/headless/client.d.ts +101 -0
  111. package/dist/webhooks/headless/client.d.ts.map +1 -0
  112. package/dist/webhooks/headless/client.js +105 -0
  113. package/dist/webhooks/headless/client.js.map +1 -0
  114. package/dist/webhooks/headless/event-selection.d.ts +119 -0
  115. package/dist/webhooks/headless/event-selection.d.ts.map +1 -0
  116. package/dist/webhooks/headless/event-selection.js +225 -0
  117. package/dist/webhooks/headless/event-selection.js.map +1 -0
  118. package/dist/webhooks/headless/format.d.ts +84 -0
  119. package/dist/webhooks/headless/format.d.ts.map +1 -0
  120. package/dist/webhooks/headless/format.js +142 -0
  121. package/dist/webhooks/headless/format.js.map +1 -0
  122. package/dist/webhooks/headless/hooks.d.ts +199 -0
  123. package/dist/webhooks/headless/hooks.d.ts.map +1 -0
  124. package/dist/webhooks/headless/hooks.js +249 -0
  125. package/dist/webhooks/headless/hooks.js.map +1 -0
  126. package/dist/webhooks/headless/index.d.ts +9 -0
  127. package/dist/webhooks/headless/index.d.ts.map +1 -0
  128. package/dist/webhooks/headless/index.js +9 -0
  129. package/dist/webhooks/headless/index.js.map +1 -0
  130. package/dist/webhooks/ui/WebhookDeliveryDrawer.d.ts +32 -0
  131. package/dist/webhooks/ui/WebhookDeliveryDrawer.d.ts.map +1 -0
  132. package/dist/webhooks/ui/WebhookDeliveryDrawer.js +64 -0
  133. package/dist/webhooks/ui/WebhookDeliveryDrawer.js.map +1 -0
  134. package/dist/webhooks/ui/WebhookEndpointDetail.d.ts +21 -0
  135. package/dist/webhooks/ui/WebhookEndpointDetail.d.ts.map +1 -0
  136. package/dist/webhooks/ui/WebhookEndpointDetail.js +96 -0
  137. package/dist/webhooks/ui/WebhookEndpointDetail.js.map +1 -0
  138. package/dist/webhooks/ui/WebhookEndpointDialog.d.ts +39 -0
  139. package/dist/webhooks/ui/WebhookEndpointDialog.d.ts.map +1 -0
  140. package/dist/webhooks/ui/WebhookEndpointDialog.js +79 -0
  141. package/dist/webhooks/ui/WebhookEndpointDialog.js.map +1 -0
  142. package/dist/webhooks/ui/WebhookEventPicker.d.ts +30 -0
  143. package/dist/webhooks/ui/WebhookEventPicker.d.ts.map +1 -0
  144. package/dist/webhooks/ui/WebhookEventPicker.js +33 -0
  145. package/dist/webhooks/ui/WebhookEventPicker.js.map +1 -0
  146. package/dist/webhooks/ui/WebhookSecretDialog.d.ts +27 -0
  147. package/dist/webhooks/ui/WebhookSecretDialog.d.ts.map +1 -0
  148. package/dist/webhooks/ui/WebhookSecretDialog.js +52 -0
  149. package/dist/webhooks/ui/WebhookSecretDialog.js.map +1 -0
  150. package/dist/webhooks/ui/WebhookSignatureHelp.d.ts +18 -0
  151. package/dist/webhooks/ui/WebhookSignatureHelp.d.ts.map +1 -0
  152. package/dist/webhooks/ui/WebhookSignatureHelp.js +40 -0
  153. package/dist/webhooks/ui/WebhookSignatureHelp.js.map +1 -0
  154. package/dist/webhooks/ui/WebhooksPage.d.ts +47 -0
  155. package/dist/webhooks/ui/WebhooksPage.d.ts.map +1 -0
  156. package/dist/webhooks/ui/WebhooksPage.js +172 -0
  157. package/dist/webhooks/ui/WebhooksPage.js.map +1 -0
  158. package/dist/webhooks/ui/copy.d.ts +24 -0
  159. package/dist/webhooks/ui/copy.d.ts.map +1 -0
  160. package/dist/webhooks/ui/copy.js +34 -0
  161. package/dist/webhooks/ui/copy.js.map +1 -0
  162. package/dist/webhooks/ui/index.d.ts +15 -0
  163. package/dist/webhooks/ui/index.d.ts.map +1 -0
  164. package/dist/webhooks/ui/index.js +12 -0
  165. package/dist/webhooks/ui/index.js.map +1 -0
  166. package/dist/webhooks/ui/parts.d.ts +25 -0
  167. package/dist/webhooks/ui/parts.d.ts.map +1 -0
  168. package/dist/webhooks/ui/parts.js +28 -0
  169. package/dist/webhooks/ui/parts.js.map +1 -0
  170. package/dist/webhooks/ui/settings.d.ts +58 -0
  171. package/dist/webhooks/ui/settings.d.ts.map +1 -0
  172. package/dist/webhooks/ui/settings.js +79 -0
  173. package/dist/webhooks/ui/settings.js.map +1 -0
  174. package/package.json +18 -2
@@ -1 +1 @@
1
- {"version":3,"file":"MetricSections.js","sourceRoot":"","sources":["../../../../../../src/telemetry/ui/components/dashboard/metrics/MetricSections.tsx"],"names":[],"mappings":";AA2BA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAWlE,OAAO,EAAE,cAAc,EAAoB,MAAM,sBAAsB,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EACL,WAAW,EACX,UAAU,EACV,cAAc,GAGf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAA0B,MAAM,oDAAoD,CAAC;AAChI,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,WAAW,EACX,kBAAkB,GAInB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAIvE,wFAAwF;AACxF,MAAM,aAAa,GAAG,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CACvC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,cAAc,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC;AAE5G;;;;GAIG;AACH,SAAS,UAAU,CAAC,MAA0B;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACzG,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,iBAAiB;YACpB,OAAO;gBACL,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,GAAG,KAAK;gBACR,QAAQ,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;gBACtB,MAAM,EAAE,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAC/B,KAAC,cAAc,IACb,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAC9B,KAAK,EAAE,GAAG,cAAc,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KACjF,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAChE,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAChF,CACH;aACF,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO;gBACL,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,GAAG,KAAK;gBACR,QAAQ,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;gBACtB,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;oBACd,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC9B,OAAO,CACL,KAAC,UAAU,IACT,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,EACnF,MAAM,EAAE,OAAO,CAAC,MAAM,EACtB,OAAO,EAAE,OAAO,CAAC,OAAO,GACxB,CACH,CAAC;gBACJ,CAAC;aACF,CAAC;QACJ,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,IAAI,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO;gBACL,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,GAAG,KAAK;gBACR,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;gBACvB,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CACd,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI;oBACvC,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;aAClH,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,uDAAuD;AACvD,SAAS,UAAU,CAAC,IAAe,EAAE,KAA2B;IAC9D,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC;QACtC,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QAC3H,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC;AACJ,CAAC;AAED,sGAAsG;AACtG,SAAS,UAAU,CACjB,IAAsB,EACtB,IAAiB,EACjB,MAAc;IAEd,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CACvC,IAAI,CAAC,MAAM;SACR,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,CAAC;SAC9C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC3E,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW;YAC/F,SAAS;SACV,CAAC;IACJ,CAAC,CAAC,CACL,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAC1B,KAA2B,EAC3B,IAAsB,EACtB,YAA6C;IAE7C,OAAO,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,aAAa,CAC3B,KAA2B,EAC3B,IAAsB,EACtB,YAA6C;IAE7C,OAAO,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAChH,CAAC;AAED,SAAS,WAAW,CAAC,KAAgB,EAAE,IAAsB;IAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,uBAAuB,CACrC,KAA2B,EAC3B,IAAsB,EACtB,KAAa,EACb,YAA6C;IAE7C,OAAO;QACL,IAAI,EAAE,SAAS;QACf,KAAK;QACL,KAAK;QACL,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC;QAC9C,MAAM,EAAE,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC;QAChD,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,KAAK,EACL,IAAI,EACJ,MAAM,EACN,MAAM,EACN,GAAG,EACH,YAAY,GAQb;IACC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IACrE,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACtC,iGAAiG;IACjG,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAC7G,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;SACvB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;SAC7D,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,KAAK,OAAO,CAAC;IAEnC,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CACR,eAAoB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAC/C,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBACxB,CAAC,CAAC,0DAA0D;gBAC5D,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,2DAA2D,IAH7E,SAAS,CAIZ,CACR,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,yDAAU,WAAW,CAAkC,CAAC,CAAC;IAExF,OAAO,CACL,MAAC,KAAK,IAAC,OAAO,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,aACpD,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CACnB,KAAC,QAAQ,IACP,KAAK,EAAE,KAAK,EACZ,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,gBAAgB,KAAK,EAAE,KAC3B,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACtE,CACH,EACA,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAC3C,MAAC,IAAI,IAAC,SAAS,QAAC,OAAO,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,aACxC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CACjC,KAAC,IAAI,IAAmB,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,YAC9E,KAAC,iBAAiB,IAChB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAC3B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,gBAAgB,KAAK,EAAE,EAC/B,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAE,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GACtH,IATO,KAAK,CAAC,KAAK,CAUf,CACR,CAAC,EACD,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CACpC,KAAC,IAAI,IAAiB,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,YAC5E,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,KAAM,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,GAAI,IADhE,KAAK,CAAC,GAAG,CAEb,CACR,CAAC,IACG,CACR,EACA,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CACnB,KAAC,UAAU,IAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,gBAAgB,EAAC,SAAS,EAAC,GAAG,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,YACvH,KAAK,GACK,CACd,IACK,CACT,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAU;IAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;IAC9C,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAClC,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,GAAG,OAAO,IAAI,CAAC;IACzC,OAAO,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,QAAQ,OAAO,IAAI,CAAC;AAC1E,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CACtB,KAA2B,EAC3B,IAAyC,EACzC,YAA6C;IAE7C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACnH,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CACL,MAAC,UAAU,IACT,OAAO,EAAC,SAAS,EACjB,KAAK,EAAC,gBAAgB,iBACT,uBAAuB,KAAK,EAAE,EAC3C,KAAK,EAAE,6BAA6B,MAAM,iEAAiE,EAC3G,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,gCAEZ,MAAM,IACX,CACd,CAAC;AACJ,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,iBAAiB,CAC/B,KAA2B,EAC3B,IAAsB,EACtB,YAA6C;IAE7C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IACrE,OAAO,CACL,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QAChE,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CACrC,CAAC;AACJ,CAAC;AAgBD;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAsB;IACtH,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;IAC1B,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,CACL,KAAC,cAAc,IACb,EAAE,EAAE,aAAa,CAAC,KAAK,CAAC,EACxB,QAAQ,EAAE,mBAAmB,CAAC,KAAK,CAAC,EACpC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,EACvD,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,IAAI,EAAE,GAAG,EACd,SAAS,EAAE,QAAQ,CAAC,SAAS,EAC7B,YAAY,EAAE,QAAQ,CAAC,YAAY,EACnC,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,OAAO,EAAE,QAAQ,CAAC,MAAM,EACxB,OAAO,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,EAChE,YAAY,EAAC,oDAAoD,EACjE,cAAc,EAAE,GAAG,YAElB,IAAI,IAAI,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,GAAI,GACzG,CAClB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAE,MAAM,EAA2D;IACrG,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO,CACL,MAAC,UAAU,IAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,gBAAgB,EAAC,SAAS,EAAC,GAAG,iBAAa,uBAAuB,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,wDACzE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAC1E,CACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"MetricSections.js","sourceRoot":"","sources":["../../../../../../src/telemetry/ui/components/dashboard/metrics/MetricSections.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ import type { CreateWebhookEndpointInput, RotateWebhookSecretResponse, UpdateWebhookEndpoint, WebhookDeliveryDetail, WebhookDeliveryList, WebhookDeliveryStatus, WebhookEndpoint, WebhookEndpointCreated, WebhookEndpointList, WebhookEventCatalog, WebhookScope, WebhookTestResponse } from '@marinoscar/platform-contract/webhooks';
2
+ import type { PlatformApiClient } from '../../core/index.js';
3
+ /**
4
+ * The route base of each scope, relative to the API root (`/api`).
5
+ *
6
+ * @stability experimental
7
+ */
8
+ export declare const WEBHOOK_SCOPE_BASE_PATHS: Readonly<Record<WebhookScope, string>>;
9
+ /**
10
+ * The read and write permission each scope's routes enforce: the exact
11
+ * strings of `WEBHOOK_PERMISSIONS` (`@marinoscar/platform-contract/webhooks`).
12
+ * The UI only hides controls with them; the API enforces them.
13
+ *
14
+ * @stability experimental
15
+ */
16
+ export declare const WEBHOOK_SCOPE_PERMISSIONS: Readonly<Record<WebhookScope, {
17
+ /** The permission the scope's reads enforce. */
18
+ readonly read: string;
19
+ /** The permission the scope's writes enforce. */
20
+ readonly write: string;
21
+ }>>;
22
+ /**
23
+ * The filters and page of a delivery list request. `page` is one-based, as
24
+ * on the wire.
25
+ *
26
+ * @stability experimental
27
+ */
28
+ export interface WebhookDeliveriesQuery {
29
+ /** One-based page; default 1. */
30
+ page?: number;
31
+ /** Rows per page; default the API's (20). */
32
+ pageSize?: number;
33
+ /** Only deliveries in this status. */
34
+ status?: WebhookDeliveryStatus;
35
+ /** Only deliveries of this event key. */
36
+ eventKey?: string;
37
+ }
38
+ /**
39
+ * The webhook API calls of one scope.
40
+ *
41
+ * @stability experimental
42
+ */
43
+ export interface WebhooksApi {
44
+ /** The scope these calls address. */
45
+ readonly scope: WebhookScope;
46
+ /** The route base, e.g. `/org/webhooks`. */
47
+ readonly basePath: string;
48
+ /** `GET <base>`: the endpoints the caller may see at this scope. */
49
+ list(): Promise<WebhookEndpointList>;
50
+ /** `GET <base>/:id`. */
51
+ get(id: string): Promise<WebhookEndpoint>;
52
+ /** `POST <base>`: resolves with the endpoint and its signing secret, shown once. */
53
+ create(input: CreateWebhookEndpointInput): Promise<WebhookEndpointCreated>;
54
+ /** `PATCH <base>/:id`. */
55
+ update(id: string, patch: UpdateWebhookEndpoint): Promise<WebhookEndpoint>;
56
+ /** `DELETE <base>/:id`. */
57
+ remove(id: string): Promise<void>;
58
+ /** `POST <base>/:id/rotate-secret`: the new secret, shown once, and the old one's overlap. */
59
+ rotateSecret(id: string): Promise<RotateWebhookSecretResponse>;
60
+ /** `POST <base>/:id/test`: queues a `webhooks.ping` delivery. */
61
+ sendTest(id: string): Promise<WebhookTestResponse>;
62
+ /** `GET <base>/:id/deliveries?page&pageSize&status&eventKey`. */
63
+ listDeliveries(endpointId: string, query?: WebhookDeliveriesQuery): Promise<WebhookDeliveryList>;
64
+ /** `GET <base>/deliveries/:deliveryId`: with the payload and the request headers (never the signature). */
65
+ getDelivery(deliveryId: string): Promise<WebhookDeliveryDetail>;
66
+ /** `POST <base>/deliveries/:deliveryId/redeliver`: queues the delivery again. */
67
+ redeliver(deliveryId: string): Promise<void>;
68
+ /** `GET <base>/events`: the events the caller may subscribe to at this scope. */
69
+ eventCatalog(): Promise<WebhookEventCatalog>;
70
+ }
71
+ /**
72
+ * The route base of a scope.
73
+ *
74
+ * @param scope - `user`, `org` or `system`.
75
+ * @returns the path relative to `/api`.
76
+ *
77
+ * @stability experimental
78
+ */
79
+ export declare function webhooksBasePath(scope: WebhookScope): string;
80
+ /**
81
+ * The webhooks client of one scope over the app's transport.
82
+ *
83
+ * @param api - the app's transport (`usePlatformApi()`).
84
+ * @param scope - which route family to address.
85
+ * @returns the client.
86
+ *
87
+ * @example
88
+ * ```ts
89
+ * const webhooks = createWebhooksApi(usePlatformApi(), 'org');
90
+ * const { endpoint, secret } = await webhooks.create({
91
+ * name: 'Receiver',
92
+ * url: 'https://receiver.example.test/hook',
93
+ * eventKeys: ['nodes.*'],
94
+ * });
95
+ * ```
96
+ *
97
+ * @extensionPoint hook
98
+ * @stability experimental
99
+ */
100
+ export declare function createWebhooksApi(api: PlatformApiClient, scope: WebhookScope): WebhooksApi;
101
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/webhooks/headless/client.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,0BAA0B,EAC1B,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACpB,MAAM,wCAAwC,CAAC;AAEhD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAI1E,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAC9C,MAAM,CACJ,YAAY,EACZ;IACE,gDAAgD;IAChD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iDAAiD;IACjD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CACF,CAMC,CAAC;AAEL;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,yCAAyC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,qCAAqC;IACrC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,oEAAoE;IACpE,IAAI,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrC,wBAAwB;IACxB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC1C,oFAAoF;IACpF,MAAM,CAAC,KAAK,EAAE,0BAA0B,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC3E,0BAA0B;IAC1B,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC3E,2BAA2B;IAC3B,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,8FAA8F;IAC9F,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC/D,iEAAiE;IACjE,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnD,iEAAiE;IACjE,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjG,2GAA2G;IAC3G,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAChE,iFAAiF;IACjF,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,iFAAiF;IACjF,YAAY,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAC9C;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAE5D;AAaD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,GAAG,WAAW,CAwB1F"}
@@ -0,0 +1,105 @@
1
+ // =============================================================================
2
+ // The webhooks client (issue #1046): one route family per scope
3
+ // =============================================================================
4
+ //
5
+ // The three scopes share one route shape under three bases:
6
+ // user -> /api/webhooks (`webhooks:read` / `webhooks:write`)
7
+ // org -> /api/org/webhooks (`org_webhooks:read` / `org_webhooks:write`)
8
+ // system -> /api/admin/webhooks (`system_webhooks:read` / `system_webhooks:write`)
9
+ // The transport (`PlatformApiClient`) prefixes `/api`. The API decides who may
10
+ // see what (another owner's endpoint is a 404); the client only builds paths.
11
+ // =============================================================================
12
+ import { WEBHOOK_PERMISSIONS } from '@marinoscar/platform-contract/webhooks';
13
+ /**
14
+ * The route base of each scope, relative to the API root (`/api`).
15
+ *
16
+ * @stability experimental
17
+ */
18
+ export const WEBHOOK_SCOPE_BASE_PATHS = Object.freeze({
19
+ user: '/webhooks',
20
+ org: '/org/webhooks',
21
+ system: '/admin/webhooks',
22
+ });
23
+ /**
24
+ * The read and write permission each scope's routes enforce: the exact
25
+ * strings of `WEBHOOK_PERMISSIONS` (`@marinoscar/platform-contract/webhooks`).
26
+ * The UI only hides controls with them; the API enforces them.
27
+ *
28
+ * @stability experimental
29
+ */
30
+ export const WEBHOOK_SCOPE_PERMISSIONS = Object.freeze({
31
+ user: Object.freeze({ read: WEBHOOK_PERMISSIONS.READ, write: WEBHOOK_PERMISSIONS.WRITE }),
32
+ org: Object.freeze({ read: WEBHOOK_PERMISSIONS.ORG_READ, write: WEBHOOK_PERMISSIONS.ORG_WRITE }),
33
+ system: Object.freeze({ read: WEBHOOK_PERMISSIONS.SYSTEM_READ, write: WEBHOOK_PERMISSIONS.SYSTEM_WRITE }),
34
+ });
35
+ /**
36
+ * The route base of a scope.
37
+ *
38
+ * @param scope - `user`, `org` or `system`.
39
+ * @returns the path relative to `/api`.
40
+ *
41
+ * @stability experimental
42
+ */
43
+ export function webhooksBasePath(scope) {
44
+ return WEBHOOK_SCOPE_BASE_PATHS[scope];
45
+ }
46
+ function deliveriesQueryString(query) {
47
+ if (!query)
48
+ return '';
49
+ const params = new URLSearchParams();
50
+ if (query.page !== undefined)
51
+ params.set('page', String(query.page));
52
+ if (query.pageSize !== undefined)
53
+ params.set('pageSize', String(query.pageSize));
54
+ if (query.status)
55
+ params.set('status', query.status);
56
+ if (query.eventKey)
57
+ params.set('eventKey', query.eventKey);
58
+ const text = params.toString();
59
+ return text === '' ? '' : `?${text}`;
60
+ }
61
+ /**
62
+ * The webhooks client of one scope over the app's transport.
63
+ *
64
+ * @param api - the app's transport (`usePlatformApi()`).
65
+ * @param scope - which route family to address.
66
+ * @returns the client.
67
+ *
68
+ * @example
69
+ * ```ts
70
+ * const webhooks = createWebhooksApi(usePlatformApi(), 'org');
71
+ * const { endpoint, secret } = await webhooks.create({
72
+ * name: 'Receiver',
73
+ * url: 'https://receiver.example.test/hook',
74
+ * eventKeys: ['nodes.*'],
75
+ * });
76
+ * ```
77
+ *
78
+ * @extensionPoint hook
79
+ * @stability experimental
80
+ */
81
+ export function createWebhooksApi(api, scope) {
82
+ const base = webhooksBasePath(scope);
83
+ const one = (id) => `${base}/${encodeURIComponent(id)}`;
84
+ const delivery = (id) => `${base}/deliveries/${encodeURIComponent(id)}`;
85
+ return {
86
+ scope,
87
+ basePath: base,
88
+ list: () => api.get(base),
89
+ get: (id) => api.get(one(id)),
90
+ create: (input) => api.post(base, input),
91
+ update: (id, patch) => api.patch(one(id), patch),
92
+ remove: async (id) => {
93
+ await api.delete(one(id));
94
+ },
95
+ rotateSecret: (id) => api.post(`${one(id)}/rotate-secret`),
96
+ sendTest: (id) => api.post(`${one(id)}/test`),
97
+ listDeliveries: (endpointId, query) => api.get(`${one(endpointId)}/deliveries${deliveriesQueryString(query)}`),
98
+ getDelivery: (deliveryId) => api.get(delivery(deliveryId)),
99
+ redeliver: async (deliveryId) => {
100
+ await api.post(`${delivery(deliveryId)}/redeliver`);
101
+ },
102
+ eventCatalog: () => api.get(`${base}/events`),
103
+ };
104
+ }
105
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/webhooks/headless/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ import type { WebhookEventCatalogEntry } from '@marinoscar/platform-contract/webhooks';
2
+ /**
3
+ * The subscription entry that means "every event".
4
+ *
5
+ * @stability experimental
6
+ */
7
+ export declare const WEBHOOK_ALL_EVENTS = "*";
8
+ /**
9
+ * One catalog group as the picker draws it.
10
+ *
11
+ * @stability experimental
12
+ */
13
+ export interface WebhookEventGroup {
14
+ /** The catalog's `group` label (`Nodes`). */
15
+ group: string;
16
+ /** Its events, in catalog order. */
17
+ entries: WebhookEventCatalogEntry[];
18
+ /** `<segment>.*` when the whole group is one prefix and no other group shares it, else `null`. */
19
+ wildcard: string | null;
20
+ }
21
+ /**
22
+ * Whether one subscription entry covers an event key.
23
+ *
24
+ * @param entry - `*`, `prefix.*` or an exact key.
25
+ * @param key - the event key.
26
+ * @returns `true` when a delivery of `key` would match.
27
+ *
28
+ * @stability experimental
29
+ */
30
+ export declare function webhookEntryCovers(entry: string, key: string): boolean;
31
+ /**
32
+ * Groups the catalog by its `group` label, in first-seen order, and works
33
+ * out each group's wildcard.
34
+ *
35
+ * @param entries - the catalog.
36
+ * @returns the groups.
37
+ *
38
+ * @stability experimental
39
+ */
40
+ export declare function groupWebhookEventCatalog(entries: readonly WebhookEventCatalogEntry[]): WebhookEventGroup[];
41
+ /**
42
+ * Whether the subscription delivers an event key.
43
+ *
44
+ * @param selection - the endpoint's `eventKeys`.
45
+ * @param key - the event key.
46
+ * @returns `true` when some entry covers it.
47
+ *
48
+ * @stability experimental
49
+ */
50
+ export declare function isWebhookEventSelected(selection: readonly string[], key: string): boolean;
51
+ /**
52
+ * How much of a group the subscription covers.
53
+ *
54
+ * @param selection - the endpoint's `eventKeys`.
55
+ * @param group - the group.
56
+ * @returns `all`, `some` or `none`.
57
+ *
58
+ * @stability experimental
59
+ */
60
+ export declare function webhookGroupSelectionState(selection: readonly string[], group: WebhookEventGroup): 'all' | 'some' | 'none';
61
+ /**
62
+ * Selects or deselects one event. Deselecting an event a wildcard covers
63
+ * replaces the wildcard by the rest of what it covered.
64
+ *
65
+ * @param selection - the endpoint's `eventKeys`.
66
+ * @param key - the event key.
67
+ * @param groups - the grouped catalog.
68
+ * @returns the new `eventKeys`.
69
+ *
70
+ * @stability experimental
71
+ */
72
+ export declare function toggleWebhookEvent(selection: readonly string[], key: string, groups: readonly WebhookEventGroup[]): string[];
73
+ /**
74
+ * Selects or deselects a whole group: with a wildcard the group is written as
75
+ * `segment.*` (its exact keys are folded into it), else key by key.
76
+ *
77
+ * @param selection - the endpoint's `eventKeys`.
78
+ * @param group - the group.
79
+ * @param groups - the grouped catalog.
80
+ * @returns the new `eventKeys`.
81
+ *
82
+ * @stability experimental
83
+ */
84
+ export declare function toggleWebhookGroup(selection: readonly string[], group: WebhookEventGroup, groups: readonly WebhookEventGroup[]): string[];
85
+ /**
86
+ * Switches "every event" (`*`) on (replacing every other entry) or off
87
+ * (leaving an empty subscription to pick from).
88
+ *
89
+ * @param selection - the endpoint's `eventKeys`.
90
+ * @returns the new `eventKeys`.
91
+ *
92
+ * @stability experimental
93
+ */
94
+ export declare function toggleAllWebhookEvents(selection: readonly string[]): string[];
95
+ /**
96
+ * The entries of a subscription the catalog does not account for: an exact
97
+ * key it does not list, or a wildcard that covers none of its events. The
98
+ * picker keeps them and lists them so the user can remove them.
99
+ *
100
+ * @param selection - the endpoint's `eventKeys`.
101
+ * @param groups - the grouped catalog.
102
+ * @returns those entries.
103
+ *
104
+ * @stability experimental
105
+ */
106
+ export declare function unknownWebhookSubscriptions(selection: readonly string[], groups: readonly WebhookEventGroup[]): string[];
107
+ /**
108
+ * Filters the grouped catalog by a search term (key, label or description,
109
+ * case-insensitive); groups left with no match are dropped. A group whose
110
+ * label matches keeps all its events.
111
+ *
112
+ * @param groups - the grouped catalog.
113
+ * @param query - the search text.
114
+ * @returns the matching groups (the same objects' entries filtered).
115
+ *
116
+ * @stability experimental
117
+ */
118
+ export declare function searchWebhookEventGroups(groups: readonly WebhookEventGroup[], query: string): WebhookEventGroup[];
119
+ //# sourceMappingURL=event-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-selection.d.ts","sourceRoot":"","sources":["../../../src/webhooks/headless/event-selection.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAEvF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,OAAO,EAAE,wBAAwB,EAAE,CAAC;IACpC,kGAAkG;IAClG,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAItE;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,SAAS,wBAAwB,EAAE,GAAG,iBAAiB,EAAE,CAsB1G;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEzF;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,iBAAiB,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,CAI1H;AAkCD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,iBAAiB,EAAE,GAAG,MAAM,EAAE,CAG5H;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,MAAM,EAAE,EAC5B,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,SAAS,iBAAiB,EAAE,GACnC,MAAM,EAAE,CAaV;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAE7E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,iBAAiB,EAAE,GAAG,MAAM,EAAE,CAGxH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,iBAAiB,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAejH"}
@@ -0,0 +1,225 @@
1
+ // =============================================================================
2
+ // The event picker's model (issue #1046): pure functions over a subscription
3
+ // =============================================================================
4
+ //
5
+ // A subscription is the endpoint's `eventKeys`: exact keys
6
+ // (`jobs.job.failed`), group wildcards (`nodes.*`) and `*` (every event the
7
+ // owner may receive). The picker shows the catalog grouped by its `group`
8
+ // label; selecting a whole group writes the group's wildcard when one exists,
9
+ // so events added to the group later are delivered too.
10
+ //
11
+ // A group has a wildcard only when every key in it shares its first segment
12
+ // AND no key of another group starts with that segment: otherwise `x.*` would
13
+ // select events outside the group, and the group is selected key by key.
14
+ // Entries the catalog does not know (an event registered later, or one the
15
+ // caller can no longer subscribe to) are kept untouched.
16
+ // =============================================================================
17
+ /**
18
+ * The subscription entry that means "every event".
19
+ *
20
+ * @stability experimental
21
+ */
22
+ export const WEBHOOK_ALL_EVENTS = '*';
23
+ /**
24
+ * Whether one subscription entry covers an event key.
25
+ *
26
+ * @param entry - `*`, `prefix.*` or an exact key.
27
+ * @param key - the event key.
28
+ * @returns `true` when a delivery of `key` would match.
29
+ *
30
+ * @stability experimental
31
+ */
32
+ export function webhookEntryCovers(entry, key) {
33
+ if (entry === WEBHOOK_ALL_EVENTS)
34
+ return true;
35
+ if (entry.endsWith('.*'))
36
+ return key.startsWith(entry.slice(0, -1));
37
+ return entry === key;
38
+ }
39
+ /**
40
+ * Groups the catalog by its `group` label, in first-seen order, and works
41
+ * out each group's wildcard.
42
+ *
43
+ * @param entries - the catalog.
44
+ * @returns the groups.
45
+ *
46
+ * @stability experimental
47
+ */
48
+ export function groupWebhookEventCatalog(entries) {
49
+ const order = [];
50
+ const byGroup = new Map();
51
+ for (const entry of entries) {
52
+ const list = byGroup.get(entry.group);
53
+ if (list)
54
+ list.push(entry);
55
+ else {
56
+ byGroup.set(entry.group, [entry]);
57
+ order.push(entry.group);
58
+ }
59
+ }
60
+ return order.map((group) => {
61
+ const groupEntries = byGroup.get(group);
62
+ const firsts = new Set(groupEntries.map((entry) => entry.key.split('.')[0]));
63
+ let wildcard = null;
64
+ if (firsts.size === 1) {
65
+ const segment = [...firsts][0];
66
+ const shared = entries.some((entry) => entry.group !== group && entry.key.split('.')[0] === segment);
67
+ if (!shared)
68
+ wildcard = `${segment}.*`;
69
+ }
70
+ return { group, entries: groupEntries, wildcard };
71
+ });
72
+ }
73
+ /**
74
+ * Whether the subscription delivers an event key.
75
+ *
76
+ * @param selection - the endpoint's `eventKeys`.
77
+ * @param key - the event key.
78
+ * @returns `true` when some entry covers it.
79
+ *
80
+ * @stability experimental
81
+ */
82
+ export function isWebhookEventSelected(selection, key) {
83
+ return selection.some((entry) => webhookEntryCovers(entry, key));
84
+ }
85
+ /**
86
+ * How much of a group the subscription covers.
87
+ *
88
+ * @param selection - the endpoint's `eventKeys`.
89
+ * @param group - the group.
90
+ * @returns `all`, `some` or `none`.
91
+ *
92
+ * @stability experimental
93
+ */
94
+ export function webhookGroupSelectionState(selection, group) {
95
+ const covered = group.entries.filter((entry) => isWebhookEventSelected(selection, entry.key)).length;
96
+ if (covered === 0)
97
+ return 'none';
98
+ return covered === group.entries.length ? 'all' : 'some';
99
+ }
100
+ function dedupe(values) {
101
+ return [...new Set(values)];
102
+ }
103
+ /**
104
+ * Drops `keys` from the subscription: an exact entry is removed, and a
105
+ * wildcard that covers one of them is replaced by what it covered of the
106
+ * catalog minus `keys` (a whole other group by its own wildcard).
107
+ */
108
+ function withoutKeys(selection, keys, groups) {
109
+ const next = [];
110
+ for (const entry of selection) {
111
+ const isPattern = entry === WEBHOOK_ALL_EVENTS || entry.endsWith('.*');
112
+ if (!isPattern) {
113
+ if (!keys.has(entry))
114
+ next.push(entry);
115
+ continue;
116
+ }
117
+ if (![...keys].some((key) => webhookEntryCovers(entry, key))) {
118
+ next.push(entry);
119
+ continue;
120
+ }
121
+ for (const group of groups) {
122
+ const coveredKeys = group.entries.map((e) => e.key).filter((key) => webhookEntryCovers(entry, key));
123
+ if (coveredKeys.length === 0)
124
+ continue;
125
+ const untouched = coveredKeys.every((key) => !keys.has(key));
126
+ if (untouched && coveredKeys.length === group.entries.length && group.wildcard)
127
+ next.push(group.wildcard);
128
+ else
129
+ next.push(...coveredKeys.filter((key) => !keys.has(key)));
130
+ }
131
+ }
132
+ return dedupe(next);
133
+ }
134
+ /**
135
+ * Selects or deselects one event. Deselecting an event a wildcard covers
136
+ * replaces the wildcard by the rest of what it covered.
137
+ *
138
+ * @param selection - the endpoint's `eventKeys`.
139
+ * @param key - the event key.
140
+ * @param groups - the grouped catalog.
141
+ * @returns the new `eventKeys`.
142
+ *
143
+ * @stability experimental
144
+ */
145
+ export function toggleWebhookEvent(selection, key, groups) {
146
+ if (isWebhookEventSelected(selection, key))
147
+ return withoutKeys(selection, new Set([key]), groups);
148
+ return dedupe([...selection, key]);
149
+ }
150
+ /**
151
+ * Selects or deselects a whole group: with a wildcard the group is written as
152
+ * `segment.*` (its exact keys are folded into it), else key by key.
153
+ *
154
+ * @param selection - the endpoint's `eventKeys`.
155
+ * @param group - the group.
156
+ * @param groups - the grouped catalog.
157
+ * @returns the new `eventKeys`.
158
+ *
159
+ * @stability experimental
160
+ */
161
+ export function toggleWebhookGroup(selection, group, groups) {
162
+ const keys = new Set(group.entries.map((entry) => entry.key));
163
+ if (webhookGroupSelectionState(selection, group) === 'all') {
164
+ return withoutKeys(selection.filter((entry) => entry !== group.wildcard), keys, groups);
165
+ }
166
+ if (group.wildcard) {
167
+ return dedupe([...selection.filter((entry) => !keys.has(entry)), group.wildcard]);
168
+ }
169
+ return dedupe([...selection, ...keys]);
170
+ }
171
+ /**
172
+ * Switches "every event" (`*`) on (replacing every other entry) or off
173
+ * (leaving an empty subscription to pick from).
174
+ *
175
+ * @param selection - the endpoint's `eventKeys`.
176
+ * @returns the new `eventKeys`.
177
+ *
178
+ * @stability experimental
179
+ */
180
+ export function toggleAllWebhookEvents(selection) {
181
+ return selection.includes(WEBHOOK_ALL_EVENTS) ? [] : [WEBHOOK_ALL_EVENTS];
182
+ }
183
+ /**
184
+ * The entries of a subscription the catalog does not account for: an exact
185
+ * key it does not list, or a wildcard that covers none of its events. The
186
+ * picker keeps them and lists them so the user can remove them.
187
+ *
188
+ * @param selection - the endpoint's `eventKeys`.
189
+ * @param groups - the grouped catalog.
190
+ * @returns those entries.
191
+ *
192
+ * @stability experimental
193
+ */
194
+ export function unknownWebhookSubscriptions(selection, groups) {
195
+ const keys = groups.flatMap((group) => group.entries.map((entry) => entry.key));
196
+ return selection.filter((entry) => entry !== WEBHOOK_ALL_EVENTS && !keys.some((key) => webhookEntryCovers(entry, key)));
197
+ }
198
+ /**
199
+ * Filters the grouped catalog by a search term (key, label or description,
200
+ * case-insensitive); groups left with no match are dropped. A group whose
201
+ * label matches keeps all its events.
202
+ *
203
+ * @param groups - the grouped catalog.
204
+ * @param query - the search text.
205
+ * @returns the matching groups (the same objects' entries filtered).
206
+ *
207
+ * @stability experimental
208
+ */
209
+ export function searchWebhookEventGroups(groups, query) {
210
+ const term = query.trim().toLowerCase();
211
+ if (term === '')
212
+ return [...groups];
213
+ const result = [];
214
+ for (const group of groups) {
215
+ if (group.group.toLowerCase().includes(term)) {
216
+ result.push(group);
217
+ continue;
218
+ }
219
+ const entries = group.entries.filter((entry) => [entry.key, entry.label, entry.description].some((text) => text.toLowerCase().includes(term)));
220
+ if (entries.length > 0)
221
+ result.push({ ...group, entries });
222
+ }
223
+ return result;
224
+ }
225
+ //# sourceMappingURL=event-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-selection.js","sourceRoot":"","sources":["../../../src/webhooks/headless/event-selection.ts"],"names":[],"mappings":"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"}