prismcast 1.10.2 → 1.10.3

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 (166) hide show
  1. package/dist/app.d.ts +5 -3
  2. package/dist/app.js +42 -41
  3. package/dist/app.js.map +1 -1
  4. package/dist/browser/hlsPlaylistObserver.d.ts +38 -0
  5. package/dist/browser/hlsPlaylistObserver.js +113 -0
  6. package/dist/browser/hlsPlaylistObserver.js.map +1 -0
  7. package/dist/browser/index.d.ts +26 -16
  8. package/dist/browser/index.js +95 -70
  9. package/dist/browser/index.js.map +1 -1
  10. package/dist/browser/manifestInterceptor.d.ts +29 -29
  11. package/dist/browser/manifestInterceptor.js +106 -212
  12. package/dist/browser/manifestInterceptor.js.map +1 -1
  13. package/dist/browser/tabNetworkObserver.d.ts +48 -0
  14. package/dist/browser/tabNetworkObserver.js +140 -0
  15. package/dist/browser/tabNetworkObserver.js.map +1 -0
  16. package/dist/config/consistencyProbe.js +13 -11
  17. package/dist/config/consistencyProbe.js.map +1 -1
  18. package/dist/config/paths.d.ts +3 -8
  19. package/dist/config/paths.js +3 -10
  20. package/dist/config/paths.js.map +1 -1
  21. package/dist/config/profiles.d.ts +1 -1
  22. package/dist/config/profiles.js +6 -6
  23. package/dist/config/profiles.js.map +1 -1
  24. package/dist/config/services.d.ts +5 -5
  25. package/dist/config/services.js +8 -8
  26. package/dist/config/services.js.map +1 -1
  27. package/dist/config/sites.d.ts +2 -2
  28. package/dist/config/sites.js +6 -6
  29. package/dist/config/sites.js.map +1 -1
  30. package/dist/config/userChannels.d.ts +108 -14
  31. package/dist/config/userChannels.js +291 -37
  32. package/dist/config/userChannels.js.map +1 -1
  33. package/dist/config/userConfig.js +1 -1
  34. package/dist/config/userConfig.js.map +1 -1
  35. package/dist/config/userProfiles.d.ts +3 -3
  36. package/dist/config/userProfiles.js +19 -19
  37. package/dist/config/userProfiles.js.map +1 -1
  38. package/dist/index.js +7 -9
  39. package/dist/index.js.map +1 -1
  40. package/dist/native/index.d.ts +1 -1
  41. package/dist/native/index.js +9 -18
  42. package/dist/native/index.js.map +1 -1
  43. package/dist/native/proxy.d.ts +1 -4
  44. package/dist/native/proxy.js +0 -9
  45. package/dist/native/proxy.js.map +1 -1
  46. package/dist/routes/clientActions.d.ts +97 -0
  47. package/dist/routes/clientActions.js +113 -0
  48. package/dist/routes/clientActions.js.map +1 -0
  49. package/dist/routes/components.d.ts +4 -3
  50. package/dist/routes/components.js +36 -39
  51. package/dist/routes/components.js.map +1 -1
  52. package/dist/routes/config/channels/endpoints/browse.js.map +1 -1
  53. package/dist/routes/config/channels/endpoints/crud.js +37 -72
  54. package/dist/routes/config/channels/endpoints/crud.js.map +1 -1
  55. package/dist/routes/config/channels/endpoints/importExport.js.map +1 -1
  56. package/dist/routes/config/channels/healthBridge.d.ts +23 -0
  57. package/dist/routes/config/channels/healthBridge.js +71 -0
  58. package/dist/routes/config/channels/healthBridge.js.map +1 -0
  59. package/dist/routes/config/channels/table.js +97 -84
  60. package/dist/routes/config/channels/table.js.map +1 -1
  61. package/dist/routes/config/services.js +25 -22
  62. package/dist/routes/config/services.js.map +1 -1
  63. package/dist/routes/config/settings.js +9 -6
  64. package/dist/routes/config/settings.js.map +1 -1
  65. package/dist/routes/debug.js +277 -139
  66. package/dist/routes/debug.js.map +1 -1
  67. package/dist/routes/logs.js +1 -1
  68. package/dist/routes/logs.js.map +1 -1
  69. package/dist/routes/root/content.js +18 -14
  70. package/dist/routes/root/content.js.map +1 -1
  71. package/dist/routes/root/index.js +17 -14
  72. package/dist/routes/root/index.js.map +1 -1
  73. package/dist/routes/root/scripts/channels.js +50 -21
  74. package/dist/routes/root/scripts/channels.js.map +1 -1
  75. package/dist/routes/root/scripts/config.js +72 -3
  76. package/dist/routes/root/scripts/config.js.map +1 -1
  77. package/dist/routes/root/scripts/shared.js +60 -0
  78. package/dist/routes/root/scripts/shared.js.map +1 -1
  79. package/dist/routes/root/scripts/status.handlers.d.ts +5 -27
  80. package/dist/routes/root/scripts/status.handlers.js +8 -60
  81. package/dist/routes/root/scripts/status.handlers.js.map +1 -1
  82. package/dist/routes/root/scripts/status.js +6 -1
  83. package/dist/routes/root/scripts/status.js.map +1 -1
  84. package/dist/routes/streams.js +5 -3
  85. package/dist/routes/streams.js.map +1 -1
  86. package/dist/service/commands.context.js +1 -1
  87. package/dist/service/commands.context.js.map +1 -1
  88. package/dist/service/generators.context.js +1 -1
  89. package/dist/service/generators.context.js.map +1 -1
  90. package/dist/service/generators.d.ts +1 -1
  91. package/dist/service/generators.js +3 -11
  92. package/dist/service/generators.js.map +1 -1
  93. package/dist/streaming/hls.js +1 -5
  94. package/dist/streaming/hls.js.map +1 -1
  95. package/dist/streaming/hlsSegments.d.ts +1 -1
  96. package/dist/streaming/hlsSegments.js.map +1 -1
  97. package/dist/streaming/preroll.d.ts +1 -1
  98. package/dist/streaming/preroll.js +1 -5
  99. package/dist/streaming/preroll.js.map +1 -1
  100. package/dist/streaming/statusEmitter.d.ts +5 -8
  101. package/dist/streaming/statusEmitter.js +0 -5
  102. package/dist/streaming/statusEmitter.js.map +1 -1
  103. package/dist/types/channels.d.ts +9 -0
  104. package/dist/types/channels.js.map +1 -1
  105. package/dist/types/profiles.d.ts +2 -2
  106. package/dist/upgrade/commands.context.js +14 -10
  107. package/dist/upgrade/commands.context.js.map +1 -1
  108. package/dist/upgrade/commands.d.ts +7 -15
  109. package/dist/upgrade/commands.js +27 -28
  110. package/dist/upgrade/commands.js.map +1 -1
  111. package/dist/upgrade/detection.context.js +2 -1
  112. package/dist/upgrade/detection.context.js.map +1 -1
  113. package/dist/upgrade/detection.d.ts +2 -1
  114. package/dist/upgrade/detection.js +20 -51
  115. package/dist/upgrade/detection.js.map +1 -1
  116. package/dist/upgrade/index.d.ts +1 -0
  117. package/dist/upgrade/index.js +1 -0
  118. package/dist/upgrade/index.js.map +1 -1
  119. package/dist/upgrade/lifecycle.context.d.ts +19 -0
  120. package/dist/upgrade/lifecycle.context.js +47 -0
  121. package/dist/upgrade/lifecycle.context.js.map +1 -0
  122. package/dist/upgrade/lifecycle.d.ts +72 -0
  123. package/dist/upgrade/lifecycle.js +176 -0
  124. package/dist/upgrade/lifecycle.js.map +1 -0
  125. package/dist/upgrade/pathHandle.d.ts +28 -0
  126. package/dist/upgrade/pathHandle.js +101 -0
  127. package/dist/upgrade/pathHandle.js.map +1 -0
  128. package/dist/utils/bootSession.context.d.ts +15 -0
  129. package/dist/utils/bootSession.context.js +59 -0
  130. package/dist/utils/bootSession.context.js.map +1 -0
  131. package/dist/utils/bootSession.d.ts +16 -0
  132. package/dist/utils/bootSession.js +20 -0
  133. package/dist/utils/bootSession.js.map +1 -0
  134. package/dist/utils/clock.js +1 -1
  135. package/dist/utils/ffmpeg.js +1 -1
  136. package/dist/utils/ffmpeg.js.map +1 -1
  137. package/dist/utils/index.d.ts +3 -0
  138. package/dist/utils/index.js +3 -0
  139. package/dist/utils/index.js.map +1 -1
  140. package/dist/utils/markup.d.ts +10 -0
  141. package/dist/utils/markup.js +23 -0
  142. package/dist/utils/markup.js.map +1 -1
  143. package/dist/utils/pid.d.ts +2 -25
  144. package/dist/utils/pid.js +10 -49
  145. package/dist/utils/pid.js.map +1 -1
  146. package/dist/utils/processInspector.context.d.ts +7 -0
  147. package/dist/utils/processInspector.context.js +104 -0
  148. package/dist/utils/processInspector.context.js.map +1 -0
  149. package/dist/utils/processInspector.d.ts +54 -0
  150. package/dist/utils/processInspector.js +125 -0
  151. package/dist/utils/processInspector.js.map +1 -0
  152. package/dist/utils/retry.d.ts +1 -1
  153. package/dist/utils/retry.js +1 -1
  154. package/dist/utils/retry.js.map +1 -1
  155. package/dist/utils/runtimeIdentity.context.d.ts +6 -0
  156. package/dist/utils/runtimeIdentity.context.js +13 -0
  157. package/dist/utils/runtimeIdentity.context.js.map +1 -0
  158. package/dist/utils/runtimeIdentity.d.ts +96 -0
  159. package/dist/utils/runtimeIdentity.js +171 -0
  160. package/dist/utils/runtimeIdentity.js.map +1 -0
  161. package/dist/utils/timing.d.ts +1 -1
  162. package/dist/utils/timing.js +0 -5
  163. package/dist/utils/timing.js.map +1 -1
  164. package/dist/utils/version.js +40 -10
  165. package/dist/utils/version.js.map +1 -1
  166. package/package.json +2 -2
@@ -2,6 +2,7 @@
2
2
  *
3
3
  * config.ts: Client-side JavaScript generator for the PrismCast configuration subtab.
4
4
  */
5
+ import { ACTIONS } from "../../clientActions.js";
5
6
  import { VIDEO_QUALITY_PRESETS } from "../../../config/presets.js";
6
7
  import { isRunningAsService } from "../../../utils/index.js";
7
8
  export function generateConfigSubtabScript() {
@@ -342,7 +343,9 @@ export function generateConfigSubtabScript() {
342
343
  " btn.title = 'Reset to default';",
343
344
  " btn.setAttribute('aria-label', 'Reset to default');",
344
345
  " btn.innerHTML = '↻';",
345
- " btn.onclick = () => { resetSetting(path); };",
346
+ // Mirror the server-rendered reset button (settings.ts): the project-wide action dispatcher routes the click via the registerAction handler installed below.
347
+ " btn.setAttribute('data-click-action', '" + ACTIONS.resetSetting + "');",
348
+ " btn.setAttribute('data-setting-path', path);",
346
349
  " row.appendChild(btn);",
347
350
  " }",
348
351
  " }",
@@ -1230,7 +1233,7 @@ export function generateConfigSubtabScript() {
1230
1233
  " const iconAttr = chipIconUrl ? ' data-icon-url=\"' + chipIconUrl + '\"' : '';",
1231
1234
  " chip.innerHTML = '<span class=\"provider-display\"' + domainAttr + iconAttr + ' data-sm>' + label + '</span>' +",
1232
1235
  " '<button type=\"button\" class=\"chip-close\" aria-label=\"Remove ' + label +",
1233
- " '\" onclick=\"removeServiceChip(\\'' + tag + '\\')\">\\u00d7</button>';",
1236
+ " '\" data-click-action=\"" + ACTIONS.removeServiceChip + "\" data-tag-name=\"' + tag + '\">\\u00d7</button>';",
1234
1237
  " container.appendChild(chip);",
1235
1238
  " }",
1236
1239
  " processServiceDisplays();",
@@ -1503,7 +1506,7 @@ export function generateConfigSubtabScript() {
1503
1506
  " const names = matches.map((m) => '<strong>' + esc(m.name) + '</strong> (' + m.serviceCount + ' service' +",
1504
1507
  " ((m.serviceCount === 1) ? '' : 's') + ')');",
1505
1508
  " predefinedHint.innerHTML = names.join(', ') + ' available as predefined ' + ((matches.length === 1) ? 'channel' : 'channels') +",
1506
- " ' with multi-service support. <a href=\"#\" onclick=\"event.preventDefault(); openBrowseModal();\">Browse predefined channels</a>';",
1509
+ " ' with multi-service support. <a href=\"#\" data-click-action=\"" + ACTIONS.openBrowseModal + "\">Browse predefined channels</a>';",
1507
1510
  " predefinedHint.style.display = '';",
1508
1511
  " } else {",
1509
1512
  " predefinedHint.style.display = 'none';",
@@ -1651,6 +1654,72 @@ export function generateConfigSubtabScript() {
1651
1654
  " storageKey: 'prismcast-config-subtab',",
1652
1655
  " switchFn: switchSubtab",
1653
1656
  " });",
1657
+ /* Action registrations. Each binds an ACTIONS name to a window-exposed handler defined above; the project-wide dispatcher in shared.ts looks up the handler
1658
+ * by name when a click / change / keydown / submit event lands on a matching [data-<event>-action] element. Handlers express only the action's intent -
1659
+ * event mechanics (preventDefault, stopPropagation, dropdown close) live declaratively on the trigger element via the event-type-scoped data-<event>-prevent
1660
+ * -default, data-<event>-stop-propagation, and data-<event>-close-dropdown attributes that the dispatcher processes before the handler runs.
1661
+ */
1662
+ " window.registerAction('" + ACTIONS.autoNumberChannels + "', () => autoNumberChannels());",
1663
+ " window.registerAction('" + ACTIONS.bulkAssignService + "', (target) => {",
1664
+ " if(target.value) { window.dropdowns.close(); bulkAssignService(target.value); target.value = ''; }",
1665
+ " });",
1666
+ " window.registerAction('" + ACTIONS.bulkToggleHdhr + "', () => bulkToggleHdhr());",
1667
+ " window.registerAction('" + ACTIONS.bulkTogglePredefined + "', (target) => {",
1668
+ " bulkTogglePredefined(!target.querySelector('input').checked, target.dataset.scope);",
1669
+ " });",
1670
+ " window.registerAction('" + ACTIONS.bulkToggleTag + "', (target) => {",
1671
+ " bulkToggleTag(target.dataset.tagName, !target.querySelector('input').checked);",
1672
+ " });",
1673
+ " window.registerAction('" + ACTIONS.cancelPendingRestart + "', () => cancelPendingRestart());",
1674
+ " window.registerAction('" + ACTIONS.checkForUpdates + "', () => checkForUpdates());",
1675
+ " window.registerAction('" + ACTIONS.closeChangelogModal + "', () => closeChangelogModal());",
1676
+ " window.registerAction('" + ACTIONS.copyStreamUrl + "', (target) => copyStreamUrl(target.dataset.protocol, target.dataset.channelKey));",
1677
+ " window.registerAction('" + ACTIONS.deleteChannel + "', (target) => deleteChannel(target.dataset.channelKey));",
1678
+ " window.registerAction('" + ACTIONS.endLogin + "', () => endLogin());",
1679
+ " window.registerAction('" + ACTIONS.exportChannels + "', () => exportChannels());",
1680
+ " window.registerAction('" + ACTIONS.exportConfig + "', () => exportConfig());",
1681
+ " window.registerAction('" + ACTIONS.forceRestart + "', () => forceRestart());",
1682
+ " window.registerAction('" + ACTIONS.hideAddChannelForm + "', () => { document.getElementById('add-channel-form').style.display = 'none'; });",
1683
+ " window.registerAction('" + ACTIONS.hideEditForm + "', (target) => hideEditForm(target.dataset.channelKey));",
1684
+ " window.registerAction('" + ACTIONS.importChannels + "', (target) => importChannels(target));",
1685
+ " window.registerAction('" + ACTIONS.importConfig + "', (target) => importConfig(target));",
1686
+ " window.registerAction('" + ACTIONS.importM3u + "', (target) => importM3U(target));",
1687
+ " window.registerAction('" + ACTIONS.openChangelogModal + "', () => openChangelogModal());",
1688
+ " window.registerAction('" + ACTIONS.resetAllToDefaults + "', () => resetAllToDefaults());",
1689
+ " window.registerAction('" + ACTIONS.resetChannelField + "', (target) => resetChannelField(target.dataset.fieldId));",
1690
+ " window.registerAction('" + ACTIONS.resetSetting + "', (target) => resetSetting(target.dataset.settingPath));",
1691
+ " window.registerAction('" + ACTIONS.resetTabToDefaults + "', (target) => resetTabToDefaults(target.dataset.tab));",
1692
+ " window.registerAction('" + ACTIONS.revertChannel + "', (target) => revertChannel(target.dataset.channelKey));",
1693
+ " window.registerAction('" + ACTIONS.selectServicePill + "', (target) => selectServicePill(target));",
1694
+ " window.registerAction('" + ACTIONS.showAddChannelForm + "', () => { document.getElementById('add-channel-form').style.display = 'block'; });",
1695
+ " window.registerAction('" + ACTIONS.showEditForm + "', (target) => showEditForm(target.dataset.channelKey));",
1696
+ " window.registerAction('" + ACTIONS.startChannelLogin + "', (target) => startChannelLogin(target.dataset.channelKey));",
1697
+ " window.registerAction('" + ACTIONS.startInlineEdit + "', (target) => startInlineEdit(target));",
1698
+ " window.registerAction('" + ACTIONS.startUpgrade + "', () => startUpgrade());",
1699
+ " window.registerAction('" + ACTIONS.submitChannelFormAdd + "', (target, event) => submitChannelForm(event, 'add'));",
1700
+ " window.registerAction('" + ACTIONS.submitChannelFormEdit + "', (target, event) => submitChannelForm(event, 'edit'));",
1701
+ " window.registerAction('" + ACTIONS.submitSettingsForm + "', (target, event) => submitSettingsForm(event));",
1702
+ " window.registerAction('" + ACTIONS.toggleAdvancedFields + "', (target) => {",
1703
+ " const panel = document.getElementById(target.dataset.advancedId);",
1704
+ " if(panel) panel.classList.toggle('show');",
1705
+ " target.textContent = (target.textContent === 'Show Advanced Options') ? 'Hide Advanced Options' : 'Show Advanced Options';",
1706
+ " });",
1707
+ " window.registerAction('" + ACTIONS.toggleColumn + "', (target) => toggleColumn(target));",
1708
+ " window.registerAction('" + ACTIONS.toggleDisabledVisibility + "', () => toggleDisabledVisibility());",
1709
+ " window.registerAction('" + ACTIONS.toggleHdhr + "', (target) => toggleHdhr(target));",
1710
+ " window.registerAction('" + ACTIONS.toggleInlineTagDropdown + "', (target) => toggleInlineTagDropdown(target));",
1711
+ " window.registerAction('" + ACTIONS.togglePredefinedChannel + "', (target) => " +
1712
+ "togglePredefinedChannel(target.dataset.channelKey, target.dataset.enabled === 'true'));",
1713
+ " window.registerAction('" + ACTIONS.toggleProfileReference + "', () => toggleProfileReference());",
1714
+ " window.registerAction('" + ACTIONS.toggleSection + "', (target) => toggleSection(target.dataset.sectionId));",
1715
+ " window.registerAction('" + ACTIONS.toggleServiceTag + "', (target) => toggleServiceTag(target));",
1716
+ " window.registerAction('" + ACTIONS.removeServiceChip + "', (target) => removeServiceChip(target.dataset.tagName));",
1717
+ " window.registerAction('" + ACTIONS.triggerChannelsImport + "', () => document.getElementById('import-channels-file').click());",
1718
+ " window.registerAction('" + ACTIONS.triggerM3uImport + "', () => document.getElementById('import-m3u-file').click());",
1719
+ " window.registerAction('" + ACTIONS.triggerSettingsImport + "', () => document.getElementById('import-settings-file').click());",
1720
+ " window.registerAction('" + ACTIONS.updateCheckboxList + "', (target) => updateCheckboxList(target));",
1721
+ " window.registerAction('" + ACTIONS.updateServiceSelection + "', (target) => updateServiceSelection(target));",
1722
+ " window.registerAction('" + ACTIONS.updateTagsHidden + "', (target) => updateTagsHidden(target.closest('.form-row')));",
1654
1723
  "})();",
1655
1724
  "</script>"
1656
1725
  ].join("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/routes/root/scripts/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,UAAU,0BAA0B;IAExC,wIAAwI;IACxI,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,KAAI,MAAM,MAAM,IAAI,qBAAqB,EAAE,CAAC;QAE1C,mGAAmG;QACnG,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC;QACnE,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAE5D,gDAAgD;QAChD,MAAM,KAAK,GAAG;YACZ,OAAO,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM;YAC5B,wCAAwC,GAAG,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC,GAAG,GAAG;YAC/E,+BAA+B,GAAG,MAAM,CAAC,cAAc,CAAC;YACxD,OAAO;SACR,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,+DAA+D;IAC/D,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IAEvC,OAAO;QACL,UAAU;QACV,eAAe;QAEf,iDAAiD;QACjD,0BAA0B,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG;QAEpD,yDAAyD;QACzD,0BAA0B;QAC1B,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QACxB,MAAM;QAEN,oFAAoF;QACpF,uCAAuC;QACvC,4CAA4C;QAC5C,yBAAyB;QACzB,+DAA+D;QAC/D,uDAAuD;QACvD,mBAAmB;QACnB,8BAA8B;QAC9B,qEAAqE;QACrE,SAAS;QACT,OAAO;QACP,KAAK;QAEL,oHAAoH;QACpH,qFAAqF;QAErF,uJAAuJ;QACvJ,oFAAoF;QACpF,6CAA6C;QAC7C,oHAAoH;QACpH,iBAAiB;QACjB,KAAK;QACL,oCAAoC;QACpC,WAAW;QACX,2DAA2D;QAC3D,6BAA6B;QAC7B,kDAAkD;QAClD,+BAA+B;QAC/B,iGAAiG;QACjG,KAAK;QAEL,sDAAsD;QACtD,kDAAkD;QAClD,qCAAqC;QACrC,wBAAwB;QACxB,KAAK;QAEL,uCAAuC;QACvC,mCAAmC;QAEnC,uEAAuE;QACvE,+BAA+B;QAE/B,2DAA2D;QAC3D,oDAAoD;QACpD,4BAA4B;QAC5B,gFAAgF;QAChF,uEAAuE;QACvE,kCAAkC;QAClC,KAAK;QAEL,2JAA2J;QAC3J,0CAA0C;QAC1C,mDAAmD;QACnD,0EAA0E;QAC1E,2CAA2C;QAC3C,+BAA+B;QAC/B,yEAAyE;QACzE,yBAAyB;QACzB,OAAO;QACP,KAAK;QACL,iEAAiE;QAEjE,8BAA8B;QAC9B,yCAAyC;QACzC,6BAA6B;QAC7B,uEAAuE;QACvE,kFAAkF;QAClF,MAAM;QAEN,kDAAkD;QAClD,uCAAuC;QACvC,6BAA6B;QAC7B,uEAAuE;QACvE,WAAW;QACX,2EAA2E;QAC3E,oBAAoB;QACpB,iCAAiC;QACjC,gBAAgB;QAChB,wCAAwC;QACxC,4DAA4D;QAC5D,SAAS;QACT,oBAAoB;QACpB,gEAAgE;QAChE,OAAO;QACP,MAAM;QAEN,iDAAiD;QACjD,qCAAqC;QACrC,WAAW;QACX,2EAA2E;QAC3E,oBAAoB;QACpB,iCAAiC;QACjC,SAAS;QACT,oBAAoB;QACpB,kFAAkF;QAClF,OAAO;QACP,KAAK;QAEL,2DAA2D;QAC3D,qCAAqC;QACrC,uBAAuB;QACvB,6BAA6B;QAC7B,mDAAmD;QACnD,qEAAqE;QACrE,qDAAqD;QACrD,mBAAmB;QACnB,aAAa;QACb,6CAA6C;QAC7C,sBAAsB;QACtB,+CAA+C;QAC/C,uCAAuC;QACvC,iEAAiE;QACjE,WAAW;QACX,sBAAsB;QACtB,uCAAuC;QACvC,+CAA+C;QAC/C,uCAAuC;QACvC,8GAA8G;QAC9G,WAAW;QACX,SAAS;QACT,eAAe;QACf,KAAK;QAEL,iDAAiD;QACjD,mCAAmC;QACnC,gDAAgD;QAChD,6BAA6B;QAC7B,2BAA2B;QAC3B,KAAK;QAEL,iHAAiH;QACjH,6CAA6C;QAC7C,+DAA+D;QAC/D,wBAAwB;QACxB,4DAA4D;QAC5D,gEAAgE;QAChE,gEAAgE;QAChE,4DAA4D;QAC5D,0EAA0E;QAC1E,mCAAmC;QACnC,sCAAsC;QACtC,qCAAqC;QACrC,mCAAmC;QACnC,uDAAuD;QACvD,WAAW;QACX,sDAAsD;QACtD,sCAAsC;QACtC,uCAAuC;QACvC,sEAAsE;QACtE,mDAAmD;QACnD,qDAAqD;QACrD,yCAAyC;QACzC,4DAA4D;QAC5D,WAAW;QACX,0BAA0B;QAC1B,mCAAmC;QACnC,0CAA0C;QAC1C,gBAAgB;QAChB,wCAAwC;QACxC,SAAS;QACT,iFAAiF;QACjF,oBAAoB;QACpB,uCAAuC;QACvC,sCAAsC;QACtC,OAAO;QACP,MAAM;QAEN,6BAA6B;QAC7B,wCAAwC;QACxC,+DAA+D;QAC/D,iDAAiD;QACjD,MAAM;QAEN,2JAA2J;QAC3J,uCAAuC;QACvC,WAAW;QACX,qDAAqD;QACrD,0CAA0C;QAC1C,+BAA+B;QAC/B,gCAAgC;QAChC,8CAA8C;QAC9C,gHAAgH;QAChH,gEAAgE;QAChE,uCAAuC;QACvC,iBAAiB;QACjB,SAAS;QACT,2DAA2D;QAC3D,6BAA6B;QAC7B,0HAA0H;QAC1H,SAAS;QACT,8BAA8B;QAC9B,uDAAuD;QACvD,uEAAuE;QACvE,+CAA+C;QAC/C,kDAAkD;QAClD,iCAAiC;QACjC,mCAAmC;QACnC,6FAA6F;QAC7F,gBAAgB;QAChB,gEAAgE;QAChE,SAAS;QACT,oBAAoB;QACpB,6DAA6D;QAC7D,OAAO;QACP,MAAM;QAEN,6FAA6F;QAC7F,0CAA0C;QAC1C,2DAA2D;QAC3D,4DAA4D;QAC5D,oCAAoC;QACpC,WAAW;QACX,sEAAsE;QACtE,sCAAsC;QACtC,yCAAyC;QACzC,wDAAwD;QACxD,6EAA6E;QAC7E,kEAAkE;QAClE,6FAA6F;QAC7F,iDAAiD;QACjD,WAAW;QACX,gBAAgB;QAChB,0CAA0C;QAC1C,0EAA0E;QAC1E,SAAS;QACT,oBAAoB;QACpB,yCAAyC;QACzC,yCAAyC;QACzC,yEAAyE;QACzE,OAAO;QACP,MAAM;QAEN,oCAAoC;QACpC,iCAAiC;QACjC,6FAA6F;QAC7F,4CAA4C;QAC5C,6CAA6C;QAC7C,OAAO;QACP,yEAAyE;QACzE,wCAAwC;QACxC,0BAA0B;QAC1B,OAAO;QACP,KAAK;QAEL,mDAAmD;QACnD,yCAAyC;QACzC,8DAA8D;QAC9D,kDAAkD;QAClD,uDAAuD;QACvD,mBAAmB;QACnB,uCAAuC;QACvC,yDAAyD;QACzD,oDAAoD;QACpD,yCAAyC;QACzC,6DAA6D;QAC7D,SAAS;QACT,OAAO;QACP,KAAK;QAEL,kFAAkF;QAClF,0CAA0C;QAC1C,qCAAqC;QACrC,yCAAyC;QACzC,cAAc;QACd,4BAA4B;QAC5B,OAAO;QACP,oDAAoD;QACpD,iDAAiD;QACjD,uFAAuF;QACvF,kBAAkB;QAClB,wEAAwE;QACxE,gCAAgC;QAChC,mDAAmD;QACnD,WAAW;QACX,SAAS;QACT,OAAO;QACP,KAAK;QAEL,sGAAsG;QACtG,mCAAmC;QACnC,6EAA6E;QAC7E,KAAK;QAEL,uJAAuJ;QACvJ,2IAA2I;QAC3I,gDAAgD;QAChD,2DAA2D;QAC3D,2BAA2B;QAC3B,+FAA+F;QAC/F,0CAA0C;QAC1C,8BAA8B;QAC9B,yDAAyD;QACzD,gBAAgB;QAChB,sDAAsD;QACtD,SAAS;QACT,6FAA6F;QAC7F,0CAA0C;QAC1C,wDAAwD;QACxD,SAAS;QACT,OAAO;QACP,KAAK;QAEL,iDAAiD;QACjD,6CAA6C;QAC7C,4DAA4D;QAC5D,8CAA8C;QAC9C,qDAAqD;QACrD,4BAA4B;QAC5B,mDAAmD;QACnD,2DAA2D;QAC3D,6DAA6D;QAC7D,sBAAsB;QACtB,4CAA4C;QAC5C,kBAAkB;QAClB,+DAA+D;QAC/D,qBAAqB;QACrB,0DAA0D;QAC1D,8CAA8C;QAC9C,mDAAmD;QACnD,yDAAyD;QACzD,WAAW;QACX,SAAS;QACT,uBAAuB;QACvB,2DAA2D;QAC3D,mBAAmB;QACnB,oDAAoD;QACpD,yDAAyD;QACzD,gCAAgC;QAChC,wCAAwC;QACxC,2CAA2C;QAC3C,+DAA+D;QAC/D,sCAAsC;QACtC,wDAAwD;QACxD,iCAAiC;QACjC,WAAW;QACX,SAAS;QACT,cAAc;QACd,+CAA+C;QAC/C,6BAA6B;QAC7B,uCAAuC;QACvC,OAAO;QACP,KAAK;QAEL,8JAA8J;QAC9J,0HAA0H;QAC1H,qCAAqC;QACrC,gDAAgD;QAChD,qDAAqD;QACrD,wBAAwB;QACxB,4DAA4D;QAC5D,+BAA+B;QAC/B,yCAAyC;QACzC,mEAAmE;QACnE,oEAAoE;QACpE,OAAO;QACP,MAAM;QAEN,yGAAyG;QACzG,4CAA4C;QAC5C,yEAAyE;QACzE,+DAA+D;QAC/D,wBAAwB;QACxB,yFAAyF;QACzF,kCAAkC;QAClC,6BAA6B;QAC7B,mEAAmE;QACnE,yCAAyC;QACzC,SAAS;QACT,OAAO;QACP,wFAAwF;QACxF,sCAAsC;QACtC,+BAA+B;QAC/B,4CAA4C;QAC5C,SAAS;QACT,OAAO;QACP,4IAA4I;QAC5I,MAAM;QAEN,mJAAmJ;QACnJ,kGAAkG;QAClG,yCAAyC;QACzC,mEAAmE;QACnE,4BAA4B;QAC5B,wCAAwC;QACxC,yFAAyF;QACzF,KAAK;QAEL,2CAA2C;QAC3C,sGAAsG;QACtG,0BAA0B;QAC1B,8DAA8D;QAC9D,gEAAgE;QAChE,qCAAqC;QACrC,gEAAgE;QAChE,sBAAsB;QACtB,6CAA6C;QAC7C,4CAA4C;QAC5C,cAAc;QACd,0CAA0C;QAC1C,yCAAyC;QACzC,OAAO;QACP,kDAAkD;QAClD,wCAAwC;QACxC,8EAA8E;QAC9E,MAAM;QAEN,qEAAqE;QACrE,6BAA6B;QAC7B,0FAA0F;QAC1F,iCAAiC;QACjC,wGAAwG;QACxG,8BAA8B;QAC9B,gEAAgE;QAChE,kEAAkE;QAClE,+BAA+B;QAC/B,2CAA2C;QAC3C,4CAA4C;QAC5C,SAAS;QACT,OAAO;QACP,KAAK;QACL,mBAAmB;QAEnB,qDAAqD;QACrD,uCAAuC;QACvC,gJAAgJ;QAChJ,4DAA4D;QAC5D,uBAAuB;QACvB,wFAAwF;QACxF,kCAAkC;QAClC,6BAA6B;QAC7B,mEAAmE;QACnE,yCAAyC;QACzC,SAAS;QACT,OAAO;QACP,uFAAuF;QACvF,sCAAsC;QACtC,+BAA+B;QAC/B,4CAA4C;QAC5C,SAAS;QACT,OAAO;QACP,gJAAgJ;QAChJ,MAAM;QAEN,iCAAiC;QACjC,kDAAkD;QAClD,6BAA6B;QAC7B,yBAAyB;QACzB,4DAA4D;QAC5D,0DAA0D;QAC1D,6BAA6B;QAC7B,0CAA0C;QAC1C,wBAAwB;QACxB,6CAA6C;QAC7C,6BAA6B;QAC7B,8BAA8B;QAC9B,sCAAsC;QACtC,yBAAyB;QACzB,qDAAqD;QACrD,gDAAgD;QAChD,8BAA8B;QAC9B,SAAS;QACT,kCAAkC;QAClC,OAAO;QACP,mDAAmD;QACnD,WAAW;QACX,4CAA4C;QAC5C,uCAAuC;QACvC,wFAAwF;QACxF,wBAAwB;QACxB,WAAW;QACX,sCAAsC;QACtC,wDAAwD;QACxD,oCAAoC;QACpC,gCAAgC;QAChC,+BAA+B;QAC/B,2DAA2D;QAC3D,oBAAoB;QACpB,qCAAqC;QACrC,aAAa;QACb,kBAAkB;QAClB,sEAAsE;QACtE,WAAW;QACX,gCAAgC;QAChC,0CAA0C;QAC1C,iEAAiE;QACjE,gBAAgB;QAChB,yFAAyF;QACzF,SAAS;QACT,oBAAoB;QACpB,wDAAwD;QACxD,2EAA2E;QAC3E,OAAO;QACP,mBAAmB;QACnB,MAAM;QAEN,yCAAyC;QACzC,uCAAuC;QACvC,WAAW;QACX,kDAAkD;QAClD,sCAAsC;QACtC,qDAAqD;QACrD,8CAA8C;QAC9C,qBAAqB;QACrB,6CAA6C;QAC7C,qCAAqC;QACrC,kBAAkB;QAClB,qCAAqC;QACrC,wCAAwC;QACxC,oBAAoB;QACpB,6EAA6E;QAC7E,OAAO;QACP,MAAM;QAEN,kCAAkC;QAClC,0CAA0C;QAC1C,sCAAsC;QACtC,uBAAuB;QACvB,sCAAsC;QACtC,oCAAoC;QACpC,aAAa;QACb,qDAAqD;QACrD,8FAA8F;QAC9F,uDAAuD;QACvD,2CAA2C;QAC3C,8DAA8D;QAC9D,4BAA4B;QAC5B,eAAe;QACf,0CAA0C;QAC1C,wCAAwC;QACxC,8EAA8E;QAC9E,oCAAoC;QACpC,mCAAmC;QACnC,+DAA+D;QAC/D,wBAAwB;QACxB,yCAAyC;QACzC,iBAAiB;QACjB,eAAe;QACf,oBAAoB;QACpB,0EAA0E;QAC1E,aAAa;QACb,WAAW;QACX,sBAAsB;QACtB,+EAA+E;QAC/E,SAAS;QACT,6BAA6B;QAC7B,QAAQ;QACR,8BAA8B;QAC9B,MAAM;QAEN,oCAAoC;QACpC,yCAAyC;QACzC,WAAW;QACX,2DAA2D;QAC3D,sCAAsC;QACtC,qDAAqD;QACrD,8CAA8C;QAC9C,qBAAqB;QACrB,+CAA+C;QAC/C,qCAAqC;QACrC,kBAAkB;QAClB,qCAAqC;QACrC,wCAAwC;QACxC,oBAAoB;QACpB,wEAAwE;QACxE,OAAO;QACP,MAAM;QAEN,6BAA6B;QAC7B,4CAA4C;QAC5C,sCAAsC;QACtC,uBAAuB;QACvB,sCAAsC;QACtC,oCAAoC;QACpC,aAAa;QACb,uDAAuD;QACvD,+FAA+F;QAC/F,gEAAgE;QAChE,6CAA6C;QAC7C,8DAA8D;QAC9D,4BAA4B;QAC5B,eAAe;QACf,0CAA0C;QAC1C,8BAA8B;QAC9B,wGAAwG;QACxG,qEAAqE;QACrE,oBAAoB;QACpB,8GAA8G;QAC9G,aAAa;QACb,WAAW;QACX,sBAAsB;QACtB,0EAA0E;QAC1E,SAAS;QACT,6BAA6B;QAC7B,QAAQ;QACR,8BAA8B;QAC9B,MAAM;QAEN,0CAA0C;QAC1C,uCAAuC;QACvC,sCAAsC;QACtC,uBAAuB;QACvB,gFAAgF;QAChF,6FAA6F;QAC7F,sCAAsC;QACtC,oCAAoC;QACpC,aAAa;QACb,kEAAkE;QAClE,2FAA2F;QAC3F,4DAA4D;QAC5D,0BAA0B;QAC1B,aAAa;QACb,wCAAwC;QACxC,4BAA4B;QAC5B,kDAAkD;QAClD,0EAA0E;QAC1E,gGAAgG;QAChG,+FAA+F;QAC/F,yDAAyD;QACzD,oEAAoE;QACpE,4DAA4D;QAC5D,8CAA8C;QAC9C,uDAAuD;QACvD,eAAe;QACf,qGAAqG;QACrG,aAAa;QACb,mEAAmE;QACnE,4GAA4G;QAC5G,kBAAkB;QAClB,mGAAmG;QACnG,WAAW;QACX,sBAAsB;QACtB,2DAA2D;QAC3D,qEAAqE;QACrE,SAAS;QACT,6BAA6B;QAC7B,QAAQ;QACR,8BAA8B;QAC9B,MAAM;QAEN,6CAA6C;QAC7C,mCAAmC;QACnC,8DAA8D;QAC9D,8DAA8D;QAC9D,wCAAwC;QACxC,yBAAyB;QACzB,mCAAmC;QACnC,6CAA6C;QAC7C,qEAAqE;QACrE,qEAAqE;QACrE,OAAO;QACP,mBAAmB;QACnB,wCAAwC;QACxC,cAAc;QACd,qCAAqC;QACrC,OAAO;QACP,qBAAqB;QACrB,KAAK;QAEL,uJAAuJ;QACvJ,+CAA+C;QAC/C,iCAAiC;QACjC,8BAA8B;QAC9B,oCAAoC;QACpC,6BAA6B;QAC7B,4EAA4E;QAC5E,oGAAoG;QACpG,QAAQ;QACR,6BAA6B;QAC7B,qCAAqC;QACrC,2CAA2C;QAC3C,OAAO;QACP,6CAA6C;QAE7C,yCAAyC;QACzC,oCAAoC;QACpC,uEAAuE;QACvE,iEAAiE;QACjE,uDAAuD;QACvD,mBAAmB;QACnB,mCAAmC;QACnC,sFAAsF;QACtF,oEAAoE;QACpE,yDAAyD;QACzD,uIAAuI;QACvI,kDAAkD;QAClD,SAAS;QACT,OAAO;QACP,MAAM;QACN,oCAAoC;QACpC,uEAAuE;QACvE,iEAAiE;QACjE,mDAAmD;QACnD,iDAAiD;QACjD,MAAM;QAEN,qJAAqJ;QACrJ,wJAAwJ;QACxJ,8DAA8D;QAC9D,6CAA6C;QAC7C,qDAAqD;QACrD,wBAAwB;QACxB,4DAA4D;QAC5D,qCAAqC;QACrC,uCAAuC;QACvC,6CAA6C;QAC7C,eAAe;QACf,yCAAyC;QACzC,uDAAuD;QACvD,6BAA6B;QAC7B,oDAAoD;QACpD,6BAA6B;QAC7B,OAAO;QACP,iEAAiE;QACjE,kEAAkE;QAClE,MAAM;QAEN,0JAA0J;QAC1J,uJAAuJ;QACvJ,0CAA0C;QAC1C,yCAAyC;QACzC,yDAAyD;QACzD,yEAAyE;QACzE,+DAA+D;QAC/D,iDAAiD;QACjD,0DAA0D;QAC1D,oBAAoB;QACpB,+EAA+E;QAC/E,sEAAsE;QACtE,OAAO;QACP,mEAAmE;QACnE,yBAAyB;QACzB,mFAAmF;QACnF,gDAAgD;QAChD,OAAO;QACP,sBAAsB;QACtB,iEAAiE;QACjE,yEAAyE;QACzE,8DAA8D;QAC9D,yCAAyC;QACzC,kEAAkE;QAClE,SAAS;QACT,OAAO;QACP,MAAM;QAEN,qEAAqE;QACrE,gCAAgC;QAChC,kEAAkE;QAClE,iDAAiD;QACjD,mBAAmB;QACnB,8CAA8C;QAC9C,iEAAiE;QACjE,iEAAiE;QACjE,oEAAoE;QACpE,yDAAyD;QACzD,OAAO;QACP,MAAM;QAEN,4CAA4C;QAC5C,yCAAyC;QACzC,mEAAmE;QACnE,iEAAiE;QACjE,4BAA4B;QAC5B,+CAA+C;QAC/C,0CAA0C;QAC1C,+DAA+D;QAC/D,gBAAgB;QAChB,uCAAuC;QACvC,+DAA+D;QAC/D,SAAS;QACT,OAAO;QACP,MAAM;QAEN,4BAA4B;QAC5B,2CAA2C;QAC3C,+DAA+D;QAC/D,eAAe;QACf,4EAA4E;QAC5E,OAAO;QACP,MAAM;QAEN,6JAA6J;QAC7J,0JAA0J;QAC1J,qFAAqF;QACrF,sCAAsC;QACtC,uDAAuD;QACvD,kDAAkD;QAClD,8CAA8C;QAC9C,wDAAwD;QACxD,oCAAoC;QACpC,oDAAoD;QACpD,mEAAmE;QACnE,sCAAsC;QACtC,0BAA0B;QAC1B,wBAAwB;QACxB,4BAA4B;QAC5B,oBAAoB;QACpB,qBAAqB;QACrB,yBAAyB;QACzB,6BAA6B;QAC7B,0BAA0B;QAC1B,sBAAsB;QACtB,4CAA4C;QAC5C,oDAAoD;QACpD,yIAAyI;QACzI,wBAAwB;QACxB,oGAAoG;QACpG,yEAAyE;QACzE,oCAAoC;QACpC,aAAa;QACb,kFAAkF;QAClF,uCAAuC;QACvC,0FAA0F;QAC1F,2BAA2B;QAC3B,aAAa;QACb,qCAAqC;QACrC,mCAAmC;QACnC,6DAA6D;QAC7D,kBAAkB;QAClB,oCAAoC;QACpC,0EAA0E;QAC1E,WAAW;QACX,sBAAsB;QACtB,4DAA4D;QAC5D,kCAAkC;QAClC,+DAA+D;QAC/D,SAAS;QACT,OAAO;QACP,oDAAoD;QACpD,gDAAgD;QAChD,6DAA6D;QAC7D,iDAAiD;QACjD,SAAS;QACT,oEAAoE;QACpE,MAAM;QAEN,wHAAwH;QACxH,6CAA6C;QAC7C,oDAAoD;QACpD,WAAW;QACX,gFAAgF;QAChF,kEAAkE;QAClE,wFAAwF;QACxF,yBAAyB;QACzB,WAAW;QACX,mCAAmC;QACnC,iCAAiC;QACjC,2DAA2D;QAC3D,gBAAgB;QAChB,+CAA+C;QAC/C,uFAAuF;QACvF,SAAS;QACT,oBAAoB;QACpB,6CAA6C;QAC7C,4EAA4E;QAC5E,OAAO;QACP,MAAM;QAEN,8CAA8C;QAC9C,yDAAyD;QACzD,6BAA6B;QAC7B,gCAAgC;QAChC,0CAA0C;QAC1C,sBAAsB;QACtB,wEAAwE;QACxE,kGAAkG;QAClG,iHAAiH;QACjH,yDAAyD;QACzD,WAAW;QACX,sCAAsC;QACtC,qCAAqC;QACrC,wFAAwF;QACxF,wBAAwB;QACxB,WAAW;QACX,mCAAmC;QACnC,iCAAiC;QACjC,0CAA0C;QAC1C,2DAA2D;QAC3D,gCAAgC;QAChC,0BAA0B;QAC1B,gFAAgF;QAChF,kBAAkB;QAClB,gCAAgC;QAChC,WAAW;QACX,gBAAgB;QAChB,gFAAgF;QAChF,SAAS;QACT,oBAAoB;QACpB,2DAA2D;QAC3D,qEAAqE;QACrE,OAAO;QACP,mBAAmB;QACnB,MAAM;QAEN,2BAA2B;QAC3B,2CAA2C;QAC3C,yDAAyD;QACzD,WAAW;QACX,gFAAgF;QAChF,oDAAoD;QACpD,0BAA0B;QAC1B,WAAW;QACX,mCAAmC;QACnC,iCAAiC;QACjC,0CAA0C;QAC1C,2DAA2D;QAC3D,gBAAgB;QAChB,kFAAkF;QAClF,SAAS;QACT,oBAAoB;QACpB,6DAA6D;QAC7D,uEAAuE;QACvE,OAAO;QACP,MAAM;QAEN,+DAA+D;QAC/D,6DAA6D;QAC7D,WAAW;QACX,uEAAuE;QACvE,8DAA8D;QAC9D,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,wCAAwC;QACxC,4BAA4B;QAC5B,iHAAiH;QACjH,qEAAqE;QACrE,gBAAgB;QAChB,uFAAuF;QACvF,SAAS;QACT,oBAAoB;QACpB,6DAA6D;QAC7D,uEAAuE;QACvE,OAAO;QACP,MAAM;QAEN,0JAA0J;QAC1J,8IAA8I;QAC9I,0DAA0D;QAC1D,uEAAuE;QACvE,sBAAsB;QACtB,wDAAwD;QACxD,sBAAsB;QACtB,0BAA0B;QAC1B,6EAA6E;QAC7E,iCAAiC;QACjC,uEAAuE;QACvE,iDAAiD;QACjD,OAAO;QACP,KAAK;QAEL,wDAAwD;QACxD,8DAA8D;QAC9D,oEAAoE;QACpE,6CAA6C;QAC7C,WAAW;QACX,oGAAoG;QACpG,wDAAwD;QACxD,0DAA0D;QAC1D,uBAAuB;QACvB,WAAW;QACX,wCAAwC;QACxC,4BAA4B;QAC5B,8FAA8F;QAC9F,qEAAqE;QACrE,gBAAgB;QAChB,uFAAuF;QACvF,SAAS;QACT,oBAAoB;QACpB,+DAA+D;QAC/D,uEAAuE;QACvE,OAAO;QACP,MAAM;QAEN,iEAAiE;QACjE,4DAA4D;QAC5D,WAAW;QACX,4EAA4E;QAC5E,kEAAkE;QAClE,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,wCAAwC;QACxC,4BAA4B;QAC5B,2GAA2G;QAC3G,yIAAyI;QACzI,qEAAqE;QACrE,gBAAgB;QAChB,wFAAwF;QACxF,SAAS;QACT,oBAAoB;QACpB,0DAA0D;QAC1D,wEAAwE;QACxE,OAAO;QACP,MAAM;QAEN,0JAA0J;QAC1J,kGAAkG;QAClG,6CAA6C;QAC7C,sEAAsE;QACtE,6DAA6D;QAC7D,iCAAiC;QACjC,gDAAgD;QAChD,4DAA4D;QAC5D,6DAA6D;QAC7D,2FAA2F;QAC3F,qFAAqF;QACrF,6EAA6E;YAC7E,kJAAkJ;QAClJ,+BAA+B;QAC/B,WAAW;QACX,iEAAiE;QACjE,+FAA+F;QAC/F,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,wCAAwC;QACxC,4BAA4B;QAC5B,uEAAuE;QACvE,qEAAqE;QACrE,gBAAgB;QAChB,6FAA6F;QAC7F,SAAS;QACT,oBAAoB;QACpB,6DAA6D;QAC7D,6EAA6E;QAC7E,OAAO;QACP,MAAM;QAEN,2JAA2J;QAC3J,6CAA6C;QAC7C,yCAAyC;QACzC,iEAAiE;QACjE,yBAAyB;QACzB,qCAAqC;QACrC,yJAAyJ;QACzJ,+BAA+B;QAC/B,WAAW;QACX,+DAA+D;QAC/D,mDAAmD;QACnD,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,wCAAwC;QACxC,4BAA4B;QAC5B,2EAA2E;QAC3E,qEAAqE;QACrE,gBAAgB;QAChB,6FAA6F;QAC7F,SAAS;QACT,oBAAoB;QACpB,uDAAuD;QACvD,6EAA6E;QAC7E,OAAO;QACP,MAAM;QAEN,4JAA4J;QAC5J,yJAAyJ;QACzJ,mHAAmH;QACnH,gDAAgD;QAChD,WAAW;QACX,+DAA+D;QAC/D,6EAA6E;QAC7E,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,wCAAwC;QACxC,4BAA4B;QAC5B,6GAA6G;QAC7G,gBAAgB;QAChB,oFAAoF;QACpF,SAAS;QACT,oBAAoB;QACpB,sDAAsD;QACtD,oEAAoE;QACpE,OAAO;QACP,MAAM;QAEN,sJAAsJ;QACtJ,iJAAiJ;QACjJ,iCAAiC;QACjC,yBAAyB;QAEzB,6BAA6B;QAC7B,kFAAkF;QAClF,uBAAuB;QACvB,KAAK;QAEL,+CAA+C;QAC/C,oCAAoC;QACpC,oCAAoC;QACpC,yBAAyB;QACzB,kDAAkD;QAClD,wCAAwC;QACxC,yEAAyE;QACzE,sBAAsB;QACtB,yCAAyC;QACzC,0EAA0E;QAC1E,OAAO;QACP,iDAAiD;QACjD,+BAA+B;QAC/B,uCAAuC;QACvC,WAAW;QACX,gFAAgF;QAChF,+CAA+C;QAC/C,0DAA0D;QAC1D,yBAAyB;QACzB,WAAW;QACX,mCAAmC;QACnC,sEAAsE;QACtE,qGAAqG;QACrG,oBAAoB;QACpB,0DAA0D;QAC1D,oEAAoE;QACpE,OAAO;QACP,KAAK;QAEL,6GAA6G;QAC7G,gDAAgD;QAEhD,8CAA8C;QAC9C,oCAAoC;QACpC,yBAAyB;QACzB,wEAAwE;QACxE,wBAAwB;QACxB,wBAAwB;QACxB,4HAA4H;QAC5H,sGAAsG;QACtG,wBAAwB;QACxB,qEAAqE;QACrE,yEAAyE;QACzE,yCAAyC;QACzC,uEAAuE;QACvE,OAAO;QACP,2CAA2C;QAC3C,+GAA+G;QAC/G,MAAM;QAEN,gJAAgJ;QAChJ,4CAA4C;QAC5C,2EAA2E;QAC3E,sBAAsB;QACtB,qFAAqF;QACrF,oFAAoF;QACpF,2DAA2D;QAC3D,MAAM;QAEN,yDAAyD;QACzD,2CAA2C;QAC3C,gFAAgF;QAChF,WAAW;QACX,4FAA4F;QAC5F,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,mCAAmC;QACnC,iCAAiC;QACjC,0CAA0C;QAC1C,2DAA2D;QAC3D,gBAAgB;QAChB,kFAAkF;QAClF,SAAS;QACT,oBAAoB;QACpB,uEAAuE;QACvE,OAAO;QACP,MAAM;QAEN,sEAAsE;QACtE,mDAAmD;QACnD,WAAW;QACX,yDAAyD;QACzD,iEAAiE;QACjE,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,sCAAsC;QACtC,4BAA4B;QAC5B,0CAA0C;QAC1C,2CAA2C;QAC3C,+CAA+C;QAC/C,iDAAiD;QACjD,qEAAqE;QACrE,0EAA0E;QAC1E,SAAS;QACT,oBAAoB;QACpB,4DAA4D;QAC5D,sEAAsE;QACtE,OAAO;QACP,MAAM;QAEN,6IAA6I;QAC7I,gDAAgD;QAChD,yJAAyJ;QACzJ,oHAAoH;QACpH,KAAK;QAEL,2IAA2I;QAC3I,+CAA+C;QAC/C,0FAA0F;QAC1F,6BAA6B;QAC7B,mFAAmF;QACnF,+DAA+D;QAC/D,2CAA2C;QAC3C,KAAK;QAEL,gKAAgK;QAChK,6CAA6C;QAC7C,6DAA6D;QAC7D,MAAM;QAEN,+JAA+J;QAC/J,yCAAyC;QACzC,qEAAqE;QACrE,uBAAuB;QACvB,uEAAuE;QACvE,kEAAkE;QAElE,8JAA8J;QAC9J,0FAA0F;QAC1F,6BAA6B;QAC7B,gCAAgC;QAChC,iDAAiD;QACjD,oDAAoD;QACpD,OAAO;QACP,qCAAqC;QACrC,MAAM;QAEN,4JAA4J;QAC5J,yIAAyI;YACvI,iGAAiG;QACnG,qDAAqD;QACrD,iEAAiE;QACjE,sBAAsB;QACtB,2EAA2E;QAC3E,4DAA4D;QAC5D,MAAM;QAEN,mDAAmD;QACnD,8CAA8C;QAC9C,kEAAkE;QAClE,4BAA4B;QAC5B,+BAA+B;QAC/B,0CAA0C;QAC1C,qEAAqE;QACrE,qCAAqC;QACrC,sCAAsC;QACtC,wBAAwB;QACxB,4BAA4B;QAC5B,6BAA6B;QAC7B,kBAAkB;QAClB,2EAA2E;QAC3E,sCAAsC;QACtC,wDAAwD;QACxD,2EAA2E;QAC3E,oBAAoB;QACpB,gEAAgE;QAChE,mEAAmE;QACnE,aAAa;QACb,WAAW;QACX,SAAS;QACT,oDAAoD;QACpD,yCAAyC;QACzC,2CAA2C;QAC3C,mFAAmF;QACnF,qFAAqF;QACrF,uHAAuH;QACvH,uFAAuF;QACvF,iFAAiF;QACjF,oCAAoC;QACpC,OAAO;QACP,+BAA+B;QAC/B,MAAM;QAEN,6JAA6J;QAC7J,mDAAmD;QACnD,mEAAmE;QACnE,yBAAyB;QACzB,2EAA2E;QAC3E,oCAAoC;QACpC,6DAA6D;QAC7D,mGAAmG;QACnG,kDAAkD;QAClD,+CAA+C;QAC/C,OAAO;QACP,MAAM;QAEN,oGAAoG;QACpG,sDAAsD;QACtD,6BAA6B;QAC7B,WAAW;QACX,8DAA8D;QAC9D,wDAAwD;QACxD,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,sCAAsC;QACtC,4BAA4B;QAC5B,uFAAuF;QACvF,gCAAgC;QAChC,kEAAkE;QAClE,6DAA6D;QAC7D,oGAAoG;QACpG,WAAW;QACX,gFAAgF;QAChF,iCAAiC;QACjC,0EAA0E;QAC1E,uDAAuD;QACvD,aAAa;QACb,WAAW;QACX,gBAAgB;QAChB,+EAA+E;QAC/E,SAAS;QACT,oBAAoB;QACpB,+DAA+D;QAC/D,OAAO;QACP,MAAM;QAEN,0JAA0J;QAC1J,wDAAwD;QACxD,WAAW;QACX,+DAA+D;QAC/D,+DAA+D;QAC/D,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,sCAAsC;QACtC,4BAA4B;QAC5B,wDAAwD;QACxD,iCAAiC;QACjC,0EAA0E;QAC1E,uDAAuD;QACvD,aAAa;QACb,WAAW;QACX,gBAAgB;QAChB,+EAA+E;QAC/E,SAAS;QACT,oBAAoB;QACpB,+DAA+D;QAC/D,OAAO;QACP,KAAK;QAGL,wJAAwJ;QACxJ,8EAA8E;QAC9E,+CAA+C;QAC/C,kGAAkG;QAClG,OAAO;QAEP,yIAAyI;QACzI,2CAA2C;QAC3C,wBAAwB;QACxB,+HAA+H;QAC/H,8DAA8D;QAC9D,MAAM;QAEN,4EAA4E;QAC5E,6CAA6C;QAC7C,6DAA6D;QAC7D,uEAAuE;QACvE,qCAAqC;QACrC,4BAA4B;QAC5B,gDAAgD;QAChD,mEAAmE;QACnE,cAAc;QACd,6CAA6C;QAC7C,8DAA8D;QAC9D,OAAO;QACP,MAAM;QAEN,2EAA2E;QAC3E,yCAAyC;QACzC,6DAA6D;QAC7D,qCAAqC;QACrC,+DAA+D;QAC/D,2CAA2C;QAC3C,iEAAiE;QACjE,8CAA8C;QAC9C,8DAA8D;QAC9D,iEAAiE;QACjE,sBAAsB;QACtB,gBAAgB;QAChB,sFAAsF;QACtF,8BAA8B;QAC9B,sEAAsE;QACtE,SAAS;QACT,OAAO;QACP,iEAAiE;QACjE,+DAA+D;QAC/D,mGAAmG;QACnG,mCAAmC;QACnC,gBAAgB;QAChB,mDAAmD;QACnD,qEAAqE;QACrE,wEAAwE;QACxE,4GAA4G;QAC5G,mFAAmF;QACnF,qEAAqE;QACrE,OAAO;QACP,oDAAoD;QACpD,MAAM;QAEN,sJAAsJ;QACtJ,mIAAmI;QACnI,gEAAgE;QAChE,2DAA2D;QAC3D,2DAA2D;QAC3D,wCAAwC;QACxC,8BAA8B;QAE9B,gHAAgH;QAChH,8CAA8C;QAC9C,mDAAmD;QACnD,mBAAmB;QACnB,+CAA+C;QAC/C,2BAA2B;QAC3B,kCAAkC;QAClC,wCAAwC;QACxC,sDAAsD;QACtD,qFAAqF;QACrF,OAAO;QACP,4BAA4B;QAC5B,oCAAoC;QAEpC,+BAA+B;QAC/B,sGAAsG;QACtG,oCAAoC;QACpC,yBAAyB;QACzB,uCAAuC;QACvC,0FAA0F;QAC1F,4IAA4I;QAC5I,iHAAiH;QACjH,kCAAkC;QAClC,gHAAgH;QAChH,2GAA2G;QAC3G,uDAAuD;QACvD,sCAAsC;QACtC,wDAAwD;QACxD,4CAA4C;QAC5C,iFAAiF;QACjF,SAAS;QACT,OAAO;QACP,+EAA+E;QAC/E,sFAAsF;QACtF,4HAA4H;QAC5H,mBAAmB;QACnB,qCAAqC;QACrC,uDAAuD;QACvD,kCAAkC;QAClC,kCAAkC;QAClC,oCAAoC;QACpC,SAAS;QACT,OAAO;QAEP,+FAA+F;QAC/F,oGAAoG;QACpG,mDAAmD;QACnD,iDAAiD;QACjD,wBAAwB;QACxB,wCAAwC;QACxC,+CAA+C;QAC/C,6BAA6B;QAC7B,wCAAwC;QACxC,gCAAgC;QAChC,wCAAwC;QACxC,4DAA4D;QAC5D,WAAW;QACX,qEAAqE;QACrE,iCAAiC;QACjC,yDAAyD;QACzD,kCAAkC;QAClC,OAAO;QAEP,uBAAuB;QACvB,yCAAyC;QACzC,oBAAoB;QACpB,aAAa;QACb,mEAAmE;QACnE,wDAAwD;QACxD,mEAAmE;QACnE,8BAA8B;QAC9B,2DAA2D;QAC3D,gEAAgE;QAChE,0CAA0C;QAC1C,oDAAoD;QACpD,yDAAyD;QACzD,gDAAgD;QAChD,qCAAqC;QACrC,sCAAsC;QACtC,aAAa;QACb,WAAW;QACX,2FAA2F;QAC3F,WAAW;QACX,MAAM;QAEN,2GAA2G;QAC3G,YAAY;QAEZ,+EAA+E;QAC/E,uCAAuC;QACvC,4CAA4C;QAC5C,yEAAyE;QACzE,+DAA+D;QAC/D,yEAAyE;QACzE,0DAA0D;QAC1D,6CAA6C;QAC7C,OAAO;QAEP,6JAA6J;QAC7J,gJAAgJ;QAChJ,oGAAoG;QACpG,qCAAqC;QACrC,wEAAwE;QACxE,oEAAoE;QACpE,+DAA+D;QAC/D,qHAAqH;QACrH,yCAAyC;QACzC,SAAS;QACT,OAAO;QAEP,oFAAoF;QACpF,qEAAqE;QACrE,mHAAmH;QAEnH,qJAAqJ;QACrJ,oGAAoG;QACpG,wEAAwE;QAExE,kKAAkK;QAClK,+FAA+F;QAC/F,iEAAiE;QACjE,qHAAqH;QACrH,6DAA6D;QAC7D,uBAAuB;QACvB,qDAAqD;QACrD,mEAAmE;QAEnE,uJAAuJ;QACvJ,2JAA2J;QAC3J,6EAA6E;QAC7E,yFAAyF;QACzF,kDAAkD;QAClD,yEAAyE;QACzE,6DAA6D;QAC7D,WAAW;QAEX,2JAA2J;QAC3J,+HAA+H;QAC/H,gFAAgF;QAChF,6EAA6E;QAC7E,2DAA2D;QAC3D,4BAA4B;QAC5B,oDAAoD;QACpD,oBAAoB;QACpB,qDAAqD;QACrD,mDAAmD;QACnD,iGAAiG;QACjG,gEAAgE;QAChE,mDAAmD;QACnD,yHAAyH;QACzH,6DAA6D;QAC7D,+IAA+I;QAC/I,qJAAqJ;QACrJ,kDAAkD;QAClD,sBAAsB;QACtB,sDAAsD;QACtD,eAAe;QACf,aAAa;QACb,WAAW;QACX,WAAW;QACX,iEAAiE;QACjE,OAAO;QAEP,sJAAsJ;QACtJ,wJAAwJ;QACxJ,8EAA8E;QAC9E,uEAAuE;QACvE,+CAA+C;QAC/C,2GAA2G;QAC3G,0DAA0D;QAC1D,yFAAyF;QACzF,8DAA8D;QAC9D,kDAAkD;QAClD,mDAAmD;QACnD,6BAA6B;QAC7B,+HAA+H;QAC/H,8BAA8B;QAC9B,gFAAgF;QAChF,mIAAmI;QACnI,0IAA0I;QAC1I,WAAW;QACX,OAAO;QACP,SAAS;QAET,8BAA8B;QAC9B,mCAAmC;QAEnC,wEAAwE;QACxE,mDAAmD;QACnD,WAAW;QACX,gDAAgD;QAChD,4CAA4C;QAC5C,0DAA0D;QAC1D,wBAAwB;QACxB,WAAW;QACX,wCAAwC;QACxC,4BAA4B;QAC5B,+EAA+E;QAC/E,2BAA2B;QAC3B,oCAAoC;QACpC,gBAAgB;QAChB,oFAAoF;QACpF,SAAS;QACT,oBAAoB;QACpB,oEAAoE;QACpE,OAAO;QACP,MAAM;QAEN,sDAAsD;QACtD,mCAAmC;QACnC,+BAA+B;QAC/B,WAAW;QACX,sDAAsD;QACtD,yBAAyB;QACzB,yDAAyD;QACzD,oBAAoB;QACpB,iEAAiE;QACjE,yBAAyB;QACzB,OAAO;QACP,MAAM;QAEN,wBAAwB;QACxB,+BAA+B;QAC/B,2DAA2D;QAC3D,6CAA6C;QAC7C,KAAK;QAEL,wBAAwB;QACxB,+BAA+B;QAC/B,2DAA2D;QAC3D,6CAA6C;QAC7C,KAAK;QAEL,wJAAwJ;QACxJ,0IAA0I;QAC1I,wCAAwC;QACxC,+BAA+B;QAC/B,8BAA8B;QAC9B,qDAAqD;QACrD,aAAa;QACb,kDAAkD;QAClD,0CAA0C;QAC1C,8BAA8B;QAC9B,8BAA8B;QAC9B,qCAAqC;QACrC,6BAA6B;QAC7B,sDAAsD;QACtD,WAAW;QACX,sBAAsB;QACtB,+IAA+I;QAC/I,SAAS;QACT,eAAe;QACf,KAAK;QAEL,6BAA6B;QAC7B,uCAAuC;QACvC,+BAA+B;QAC/B,2CAA2C;QAC3C,mCAAmC;QACnC,OAAO;QACP,KAAK;QAEL,oEAAoE;QACpE,0DAA0D;QAC1D,cAAc;QACd,4DAA4D;QAC5D,kCAAkC;QAClC,yEAAyE;QACzE,sDAAsD;QACtD,8BAA8B;QAC9B,wCAAwC;QACxC,WAAW;QACX,OAAO;QAEP,iJAAiJ;QACjJ,2EAA2E;QAC3E,mCAAmC;QACnC,+EAA+E;QAC/E,OAAO;QAEP,oEAAoE;QACpE,8EAA8E;QAC9E,wBAAwB;QACxB,4FAA4F;QAC5F,OAAO;QACP,KAAK;QAEL,sJAAsJ;QACtJ,sHAAsH;QACtH,+CAA+C;QAC/C,oDAAoD;QACpD,wBAAwB;QACxB,iEAAiE;QACjE,yBAAyB;QACzB,8DAA8D;QAC9D,uBAAuB;QACvB,oEAAoE;QACpE,wBAAwB;QACxB,4BAA4B;QAC5B,6CAA6C;QAC7C,OAAO;QACP,4CAA4C;QAC5C,sCAAsC;QACtC,MAAM;QAEN,4DAA4D;QAC5D,gBAAgB;QAChB,iCAAiC;QACjC,8BAA8B;QAC9B,wCAAwC;QACxC,4CAA4C;QAC5C,4BAA4B;QAC5B,OAAO;QAEP,OAAO;QACP,WAAW;KACZ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/routes/root/scripts/config.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  * shared.ts: Shared client-side utilities for all tabs. This script runs before any tab-specific script so that cross-tab functions (toast notifications,
4
4
  * dropdown menus, channel display rendering) are available during both initialization and event handling.
5
5
  */
6
+ import { ACTIONS } from "../../clientActions.js";
6
7
  /**
7
8
  * Generates the shared utilities script block containing cross-tab client-side functions. Runs before all tab-specific scripts to eliminate execution order
8
9
  * dependencies. Functions are exposed on window for access from any script context or inline event handler.
@@ -12,6 +13,59 @@ export function generateSharedUtilitiesScript() {
12
13
  return [
13
14
  "<script>",
14
15
  "(function() {",
16
+ /* Action dispatcher. The single project-wide primitive for event handling. Subsystems register named handlers via window.registerAction(name, handler), and
17
+ * one document-level delegated listener routes click / change / keydown / submit events to the registered handler. Triggers declare their intent on the
18
+ * element via data-<event>-action="name" (with optional sibling data-* attributes for per-instance arguments).
19
+ *
20
+ * Event mechanics are also declarative AND event-type-scoped, symmetric with actions: data-<event>-prevent-default calls event.preventDefault(),
21
+ * data-<event>-stop-propagation calls event.stopPropagation(), data-<event>-close-dropdown closes any open dropdown menus. Each modifier fires only for
22
+ * the event type encoded in its attribute name, so a <form data-submit-prevent-default> prevents the form's submit default without affecting keydown
23
+ * events on input fields inside the form. The event-type-in-the-name shape is self-documenting and uniform with data-<event>-action: one mental model
24
+ * for "when does this fire", expressed entirely in the attribute name.
25
+ *
26
+ * The registration API enforces uniqueness - a second registerAction call for an already-registered name throws, so silent overwrites are impossible.
27
+ * When a click/change/etc. lands on an element carrying a data-<event>-action whose value is not registered, the dispatcher logs a console warning
28
+ * naming the missing action - typos surface fast.
29
+ */
30
+ " const actionHandlers = new Map();",
31
+ " window.registerAction = (name, handler) => {",
32
+ " if(actionHandlers.has(name)) {",
33
+ " throw new Error('Action \"' + name + '\" is already registered. Action names must be globally unique.');",
34
+ " }",
35
+ " actionHandlers.set(name, handler);",
36
+ " };",
37
+ /* Modifier handling runs in the capture phase so stopPropagation actually stops further propagation. Capture phase fires from document down to target -
38
+ * before any element-level listener between the document and the trigger - so stopPropagation called here prevents intermediate bubble-phase listeners
39
+ * from firing. preventDefault and close-dropdown are side-effect modifiers that work equally well in either phase but live here for cohesion: every
40
+ * declarative modifier flows through one listener. The selector is built from event.type so each modifier fires only for its own event type.
41
+ */
42
+ " const dispatchModifiers = (event) => {",
43
+ " const prefix = 'data-' + event.type + '-';",
44
+ " const modTarget = event.target.closest('[' + prefix + 'prevent-default], [' + prefix + 'stop-propagation], [' + prefix + 'close-dropdown]');",
45
+ " if(!modTarget) return;",
46
+ " if(modTarget.hasAttribute(prefix + 'prevent-default')) event.preventDefault();",
47
+ " if(modTarget.hasAttribute(prefix + 'stop-propagation')) event.stopPropagation();",
48
+ " if(modTarget.hasAttribute(prefix + 'close-dropdown') && window.dropdowns) window.dropdowns.close();",
49
+ " };",
50
+ /* Action dispatch runs in the bubble phase so element-level listeners get a chance to fire first. Action handlers see the event after the element-level
51
+ * processing has run. Missing handlers log a console warning so typos surface fast.
52
+ */
53
+ " const dispatchAction = (event) => {",
54
+ " const attrName = 'data-' + event.type + '-action';",
55
+ " const target = event.target.closest('[' + attrName + ']');",
56
+ " if(!target) return;",
57
+ " const action = target.getAttribute(attrName);",
58
+ " const handler = actionHandlers.get(action);",
59
+ " if(handler) {",
60
+ " handler(target, event);",
61
+ " } else {",
62
+ " console.warn('No handler registered for ' + attrName + '=\"' + action + '\".');",
63
+ " }",
64
+ " };",
65
+ " for(const type of [ 'click', 'change', 'keydown', 'submit' ]) {",
66
+ " document.addEventListener(type, dispatchModifiers, { capture: true });",
67
+ " document.addEventListener(type, dispatchAction);",
68
+ " }",
15
69
  // Show a toast notification. Auto-dismiss durations: success/info = 5s, warning = 8s, error = no auto-dismiss. Optional action: { label, onclick } appends an
16
70
  // inline button between the message text and the close button.
17
71
  " function showToast(message, type, duration, action) {",
@@ -678,6 +732,12 @@ export function generateSharedUtilitiesScript() {
678
732
  " }",
679
733
  " }",
680
734
  " };",
735
+ /* Action registrations. The cross-cutting actions bound to functions defined in this same script (toggleDropdown, channelTable.sort). Each subsystem
736
+ * registers its own actions in its corresponding script file; this block keeps shared-utility actions colocated with their definitions. Event mechanics
737
+ * (preventDefault, stopPropagation, close-dropdown) live declaratively on the trigger element, not in these handler bodies.
738
+ */
739
+ " window.registerAction('" + ACTIONS.channelTableSort + "', (target) => channelTable.sort(target.dataset.field));",
740
+ " window.registerAction('" + ACTIONS.toggleDropdown + "', (target) => toggleDropdown(target));",
681
741
  "})();",
682
742
  "</script>"
683
743
  ].join("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/routes/root/scripts/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../../src/routes/root/scripts/shared.ts"],"names":[],"mappings":"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"}
@@ -43,10 +43,12 @@ export interface SystemSummary {
43
43
  };
44
44
  }
45
45
  /**
46
- * The shape of the snapshot SSE payload. snapshot is the only event that delivers the full state in one message; subsequent events are deltas.
46
+ * The shape of the snapshot SSE payload. snapshot is the only event that delivers the full state in one message; subsequent events are deltas. The channel
47
+ * table catch-up patch is opaque at this layer - the server composes it via buildSnapshotChannelPatch and the client routes it through channelTable.applyPatch
48
+ * without inspecting its shape.
47
49
  */
48
50
  export interface SnapshotPayload {
49
- readonly health?: HealthSnapshot;
51
+ readonly channelPatch?: unknown;
50
52
  readonly streams: readonly StreamSummary[];
51
53
  readonly system: SystemSummary;
52
54
  }
@@ -56,26 +58,6 @@ export interface SnapshotPayload {
56
58
  export interface StreamRemovedPayload {
57
59
  readonly id: number | string;
58
60
  }
59
- /**
60
- * The shape of the healthChanged SSE payload. Carries the per-channel update plus the domain that owns the auth context.
61
- */
62
- export interface HealthChangedPayload {
63
- readonly channelKey: string;
64
- readonly domain?: string;
65
- readonly status: "failed" | "success";
66
- readonly timestamp: number;
67
- }
68
- /**
69
- * Health snapshot delivered inside the snapshot event. Channels and domains are independent maps keyed by their respective identifiers.
70
- */
71
- export interface HealthSnapshot {
72
- readonly channels: Readonly<Record<string, {
73
- readonly domain?: string;
74
- readonly status: "failed" | "success";
75
- readonly timestamp: number;
76
- }>>;
77
- readonly domains: Readonly<Record<string, number>>;
78
- }
79
61
  /**
80
62
  * Mutable client state. The IIFE shell constructs one of these at startup; every handler reads and writes it via ctx.state. Handlers mutate ctx.state fields
81
63
  * directly; mutation methods would add no value over field assignment.
@@ -150,15 +132,11 @@ declare function renderStreamsTable(ctx: HandlerContext): void;
150
132
  declare function updateStreamRow(s: StreamSummary, ctx: HandlerContext): void;
151
133
  declare function toggleStreamDetails(id: number | string, ctx: HandlerContext): void;
152
134
  declare function updateDurations(ctx: HandlerContext): void;
153
- declare function updateChannelHealth(channelKey: string, status: "failed" | "success", timestamp: number, domain: string | undefined, ctx: HandlerContext): void;
154
- declare function updateDomainAuth(domain: string, timestamp: number, ctx: HandlerContext): void;
155
- declare function applyHealthSnapshot(data: HealthSnapshot, ctx: HandlerContext): void;
156
135
  declare function handleSnapshot(data: SnapshotPayload, ctx: HandlerContext): void;
157
136
  declare function handleStreamAdded(data: StreamSummary, ctx: HandlerContext): void;
158
137
  declare function handleStreamRemoved(data: StreamRemovedPayload, ctx: HandlerContext): void;
159
138
  declare function handleStreamHealthChanged(data: StreamSummary, ctx: HandlerContext): void;
160
139
  declare function handleSystemStatusChanged(data: SystemSummary, ctx: HandlerContext): void;
161
- declare function handleHealthChanged(data: HealthChangedPayload, ctx: HandlerContext): void;
162
140
  declare function handleChannelUpdate(data: unknown, ctx: HandlerContext): void;
163
141
  declare function handleSseError(ctx: HandlerContext): void;
164
142
  declare function toggleStreamPopover(ctx: HandlerContext): void;
@@ -179,4 +157,4 @@ type EmittableFn = (...args: never[]) => unknown;
179
157
  * The exported individual functions remain importable for tests; this registry is just the emission order for the script body.
180
158
  */
181
159
  export declare const HANDLER_FUNCTIONS: readonly EmittableFn[];
182
- export { applyHealthSnapshot, buildStreamPopoverContent, copyOverviewPlaylistUrl, formatAutoRecovery, formatBytes, formatClients, formatDuration, formatLastIssue, formatTime, formatTimeAgo, getDomain, getHealthBadge, getRecoveringLabel, handleChannelUpdate, handleHealthChanged, handleSnapshot, handleSseError, handleStreamAdded, handleStreamHealthChanged, handleStreamRemoved, handleSystemStatusChanged, handleVisibilityChange, initIPadTooltips, renderDetailCodec, renderDetailStarted, renderHealthCellContent, renderStreamsTable, schedulePopoverRender, scheduleTableRender, toggleStreamDetails, toggleStreamPopover, updateChannelHealth, updateDomainAuth, updateDurations, updateStreamPopover, updateStreamRow, updateSystemStatus };
160
+ export { buildStreamPopoverContent, copyOverviewPlaylistUrl, formatAutoRecovery, formatBytes, formatClients, formatDuration, formatLastIssue, formatTime, formatTimeAgo, getDomain, getHealthBadge, getRecoveringLabel, handleChannelUpdate, handleSnapshot, handleSseError, handleStreamAdded, handleStreamHealthChanged, handleStreamRemoved, handleSystemStatusChanged, handleVisibilityChange, initIPadTooltips, renderDetailCodec, renderDetailStarted, renderHealthCellContent, renderStreamsTable, schedulePopoverRender, scheduleTableRender, toggleStreamDetails, toggleStreamPopover, updateDurations, updateStreamPopover, updateStreamRow, updateSystemStatus };
@@ -357,7 +357,8 @@ function renderStreamsTable(ctx) {
357
357
  // The channel/serviceName fallback uses || semantics so empty strings (server may emit them when identification is pending) fall through to the domain.
358
358
  const channelText = (s.channel ?? "") || (s.serviceName ?? "") || getDomain(s.url);
359
359
  const channelDisplay = ctx.externals.channelDisplayHtml(s.logoUrl, channelText, "channel-logo", "channel-text");
360
- html += "<tr class=\"stream-row\" data-id=\"" + id + "\" onclick=\"toggleStreamDetails(" + id + ")\" style=\"background-color: " + rowTint + ";\">";
360
+ html += "<tr class=\"stream-row\" data-id=\"" + id + "\" data-click-action=\"toggle-stream-details\" data-stream-id=\"" + id +
361
+ "\" style=\"background-color: " + rowTint + ";\">";
361
362
  html += "<td class=\"chevron\">" + chevron + "</td>";
362
363
  const hwIcon = s.hardwareAccelerated ? "⚡ " : "";
363
364
  let nativeBadge = "";
@@ -455,52 +456,8 @@ function updateDurations(ctx) {
455
456
  }
456
457
  schedulePopoverRender(ctx);
457
458
  }
458
- // Update the per-channel health icon in the Channels tab. Domain match check guards against stale events from a prior service binding - the login button carries
459
- // a data-auth-domain attribute that must agree with the event's domain (when supplied) for the update to apply.
460
- function updateChannelHealth(channelKey, status, timestamp, domain, ctx) {
461
- const row = ctx.document.getElementById("display-row-" + channelKey);
462
- if (!row) {
463
- return;
464
- }
465
- if (domain) {
466
- const loginBtn = row.querySelector(".btn-icon-login");
467
- if (loginBtn && (loginBtn.getAttribute("data-auth-domain") !== domain)) {
468
- return;
469
- }
470
- }
471
- const icon = row.querySelector(".btn-icon-health");
472
- if (!icon) {
473
- return;
474
- }
475
- icon.classList.remove("health-success", "health-failed");
476
- if (status === "success") {
477
- icon.classList.add("health-success");
478
- }
479
- else {
480
- icon.classList.add("health-failed");
481
- }
482
- icon.title = (status === "success" ? "Succeeded " : "Failed ") + formatTimeAgo(timestamp);
483
- }
484
- // Mark every login button bound to the given domain as verified, with a "Verified {time-ago}" tooltip. Called for successful health events and for snapshot
485
- // domain entries.
486
- function updateDomainAuth(domain, timestamp, ctx) {
487
- const buttons = ctx.document.querySelectorAll(".btn-icon-login[data-auth-domain=\"" + domain + "\"]");
488
- for (const button of Array.from(buttons)) {
489
- button.classList.add("health-success");
490
- button.title = "Verified " + formatTimeAgo(timestamp);
491
- }
492
- }
493
- // Apply a full health snapshot. Walks the channels map then the domains map, applying the per-key updaters for each entry.
494
- function applyHealthSnapshot(data, ctx) {
495
- for (const [channelKey, entry] of Object.entries(data.channels)) {
496
- updateChannelHealth(channelKey, entry.status, entry.timestamp, entry.domain, ctx);
497
- }
498
- for (const [domain, timestamp] of Object.entries(data.domains)) {
499
- updateDomainAuth(domain, timestamp, ctx);
500
- }
501
- }
502
459
  // SSE handlers. Each takes the parsed event payload and the HandlerContext. The IIFE wires JSON.parse and event-listener registration; the handlers themselves
503
- // are pure logic.
460
+ // are pure logic. Channel row state is owned by the server - every reactive update arrives as a channelUpdate patch and is applied via channelTable.applyPatch.
504
461
  // Snapshot handler. Replaces all client state with the snapshot's contents and re-renders everything, then applies the optional health snapshot.
505
462
  function handleSnapshot(data, ctx) {
506
463
  ctx.state.systemData = data.system;
@@ -511,8 +468,10 @@ function handleSnapshot(data, ctx) {
511
468
  updateSystemStatus(ctx);
512
469
  renderStreamsTable(ctx);
513
470
  updateStreamPopover(ctx);
514
- if (data.health) {
515
- applyHealthSnapshot(data.health, ctx);
471
+ // Channel table catch-up. The server includes a patch covering any rows whose state may have changed during the SSE disconnect gap; routing it through the
472
+ // same applyPatch primitive as live channelUpdate events keeps presentation logic in one place.
473
+ if (data.channelPatch !== undefined) {
474
+ ctx.externals.channelTable.applyPatch(data.channelPatch);
516
475
  }
517
476
  }
518
477
  // streamAdded handler. Inserts the new stream into streamData and triggers a full table render plus popover refresh.
@@ -558,13 +517,6 @@ function handleSystemStatusChanged(data, ctx) {
558
517
  ctx.state.systemData = data;
559
518
  updateSystemStatus(ctx);
560
519
  }
561
- // healthChanged handler. Targeted update for a single channel; if the result is success, also refreshes the domain-auth icons for that domain.
562
- function handleHealthChanged(data, ctx) {
563
- updateChannelHealth(data.channelKey, data.status, data.timestamp, data.domain, ctx);
564
- if ((data.status === "success") && data.domain) {
565
- updateDomainAuth(data.domain, data.timestamp, ctx);
566
- }
567
- }
568
520
  // channelUpdate handler. Forwards the patch to the shared channelTable namespace exposed by shared.ts.
569
521
  function handleChannelUpdate(data, ctx) {
570
522
  ctx.externals.channelTable.applyPatch(data);
@@ -691,15 +643,11 @@ export const HANDLER_FUNCTIONS = [
691
643
  updateStreamRow,
692
644
  toggleStreamDetails,
693
645
  updateDurations,
694
- updateChannelHealth,
695
- updateDomainAuth,
696
- applyHealthSnapshot,
697
646
  handleSnapshot,
698
647
  handleStreamAdded,
699
648
  handleStreamRemoved,
700
649
  handleStreamHealthChanged,
701
650
  handleSystemStatusChanged,
702
- handleHealthChanged,
703
651
  handleChannelUpdate,
704
652
  handleSseError,
705
653
  toggleStreamPopover,
@@ -709,5 +657,5 @@ export const HANDLER_FUNCTIONS = [
709
657
  ];
710
658
  // Test surface. Each function is exported so status.handlers.test.ts and the DOM-runtime suite at test/e2e/dom-runtime/status-handlers-runtime.test.ts can
711
659
  // import and call them directly.
712
- export { applyHealthSnapshot, buildStreamPopoverContent, copyOverviewPlaylistUrl, formatAutoRecovery, formatBytes, formatClients, formatDuration, formatLastIssue, formatTime, formatTimeAgo, getDomain, getHealthBadge, getRecoveringLabel, handleChannelUpdate, handleHealthChanged, handleSnapshot, handleSseError, handleStreamAdded, handleStreamHealthChanged, handleStreamRemoved, handleSystemStatusChanged, handleVisibilityChange, initIPadTooltips, renderDetailCodec, renderDetailStarted, renderHealthCellContent, renderStreamsTable, schedulePopoverRender, scheduleTableRender, toggleStreamDetails, toggleStreamPopover, updateChannelHealth, updateDomainAuth, updateDurations, updateStreamPopover, updateStreamRow, updateSystemStatus };
660
+ export { buildStreamPopoverContent, copyOverviewPlaylistUrl, formatAutoRecovery, formatBytes, formatClients, formatDuration, formatLastIssue, formatTime, formatTimeAgo, getDomain, getHealthBadge, getRecoveringLabel, handleChannelUpdate, handleSnapshot, handleSseError, handleStreamAdded, handleStreamHealthChanged, handleStreamRemoved, handleSystemStatusChanged, handleVisibilityChange, initIPadTooltips, renderDetailCodec, renderDetailStarted, renderHealthCellContent, renderStreamsTable, schedulePopoverRender, scheduleTableRender, toggleStreamDetails, toggleStreamPopover, updateDurations, updateStreamPopover, updateStreamRow, updateSystemStatus };
713
661
  //# sourceMappingURL=status.handlers.js.map