@memberjunction/ng-dashboards 6.2.0-edge.3 → 6.2.0-edge.5

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 (247) hide show
  1. package/dist/AI/components/analytics/realtime/realtime-transcripts-data.d.ts +4 -3
  2. package/dist/AI/components/analytics/realtime/realtime-transcripts-data.d.ts.map +1 -1
  3. package/dist/AI/components/analytics/realtime/realtime-transcripts-data.js +8 -5
  4. package/dist/AI/components/analytics/realtime/realtime-transcripts-data.js.map +1 -1
  5. package/dist/AI/components/duplicates/compare-value.component.d.ts +67 -0
  6. package/dist/AI/components/duplicates/compare-value.component.d.ts.map +1 -0
  7. package/dist/AI/components/duplicates/compare-value.component.js +168 -0
  8. package/dist/AI/components/duplicates/compare-value.component.js.map +1 -0
  9. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts +49 -3
  10. package/dist/AI/components/duplicates/duplicate-detection-resource.component.d.ts.map +1 -1
  11. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js +287 -169
  12. package/dist/AI/components/duplicates/duplicate-detection-resource.component.js.map +1 -1
  13. package/dist/AI/components/duplicates/duplicate-detection-run-scope.d.ts +77 -0
  14. package/dist/AI/components/duplicates/duplicate-detection-run-scope.d.ts.map +1 -0
  15. package/dist/AI/components/duplicates/duplicate-detection-run-scope.js +116 -0
  16. package/dist/AI/components/duplicates/duplicate-detection-run-scope.js.map +1 -0
  17. package/dist/AI/components/prompts/model-prompt-priority-matrix.component.d.ts +1 -0
  18. package/dist/AI/components/prompts/model-prompt-priority-matrix.component.d.ts.map +1 -1
  19. package/dist/AI/components/prompts/model-prompt-priority-matrix.component.js +16 -4
  20. package/dist/AI/components/prompts/model-prompt-priority-matrix.component.js.map +1 -1
  21. package/dist/AI/components/tags/tags-resource.component.d.ts +2 -0
  22. package/dist/AI/components/tags/tags-resource.component.d.ts.map +1 -1
  23. package/dist/AI/components/tags/tags-resource.component.js +12 -6
  24. package/dist/AI/components/tags/tags-resource.component.js.map +1 -1
  25. package/dist/AI/components/vectors/sensitive-fields.d.ts +53 -0
  26. package/dist/AI/components/vectors/sensitive-fields.d.ts.map +1 -0
  27. package/dist/AI/components/vectors/sensitive-fields.js +226 -0
  28. package/dist/AI/components/vectors/sensitive-fields.js.map +1 -0
  29. package/dist/AI/components/vectors/vector-document-rules.d.ts +126 -0
  30. package/dist/AI/components/vectors/vector-document-rules.d.ts.map +1 -0
  31. package/dist/AI/components/vectors/vector-document-rules.js +168 -0
  32. package/dist/AI/components/vectors/vector-document-rules.js.map +1 -0
  33. package/dist/AI/components/vectors/vector-index-auto.d.ts +29 -0
  34. package/dist/AI/components/vectors/vector-index-auto.d.ts.map +1 -0
  35. package/dist/AI/components/vectors/vector-index-auto.js +59 -0
  36. package/dist/AI/components/vectors/vector-index-auto.js.map +1 -0
  37. package/dist/AI/components/vectors/vector-management-resource.component.d.ts +58 -0
  38. package/dist/AI/components/vectors/vector-management-resource.component.d.ts.map +1 -1
  39. package/dist/AI/components/vectors/vector-management-resource.component.js +493 -250
  40. package/dist/AI/components/vectors/vector-management-resource.component.js.map +1 -1
  41. package/dist/Actions/components/actions-overview.component.d.ts.map +1 -1
  42. package/dist/Actions/components/actions-overview.component.js +7 -3
  43. package/dist/Actions/components/actions-overview.component.js.map +1 -1
  44. package/dist/Actions/components/categories-list-view.component.d.ts.map +1 -1
  45. package/dist/Actions/components/categories-list-view.component.js +3 -2
  46. package/dist/Actions/components/categories-list-view.component.js.map +1 -1
  47. package/dist/Communication/communication-agent-context.d.ts +11 -1
  48. package/dist/Communication/communication-agent-context.d.ts.map +1 -1
  49. package/dist/Communication/communication-agent-context.js +15 -0
  50. package/dist/Communication/communication-agent-context.js.map +1 -1
  51. package/dist/Communication/communication-dashboard.component.d.ts.map +1 -1
  52. package/dist/Communication/communication-dashboard.component.js +5 -0
  53. package/dist/Communication/communication-dashboard.component.js.map +1 -1
  54. package/dist/Communication/communication-providers-resource.component.d.ts +27 -1
  55. package/dist/Communication/communication-providers-resource.component.d.ts.map +1 -1
  56. package/dist/Communication/communication-providers-resource.component.js +722 -78
  57. package/dist/Communication/communication-providers-resource.component.js.map +1 -1
  58. package/dist/ComponentStudio/component-studio-dashboard.component.d.ts.map +1 -1
  59. package/dist/ComponentStudio/component-studio-dashboard.component.js +1 -0
  60. package/dist/ComponentStudio/component-studio-dashboard.component.js.map +1 -1
  61. package/dist/ComponentStudio/components/ai-assistant/ai-assistant-panel.component.d.ts +0 -3
  62. package/dist/ComponentStudio/components/ai-assistant/ai-assistant-panel.component.d.ts.map +1 -1
  63. package/dist/ComponentStudio/components/ai-assistant/ai-assistant-panel.component.js +5 -14
  64. package/dist/ComponentStudio/components/ai-assistant/ai-assistant-panel.component.js.map +1 -1
  65. package/dist/ComponentStudio/components/artifact-load-dialog.component.d.ts.map +1 -1
  66. package/dist/ComponentStudio/components/artifact-load-dialog.component.js +1 -0
  67. package/dist/ComponentStudio/components/artifact-load-dialog.component.js.map +1 -1
  68. package/dist/ComponentStudio/components/artifact-selection-dialog.component.d.ts.map +1 -1
  69. package/dist/ComponentStudio/components/artifact-selection-dialog.component.js +1 -0
  70. package/dist/ComponentStudio/components/artifact-selection-dialog.component.js.map +1 -1
  71. package/dist/Credentials/components/credentials-list-resource.component.d.ts +2 -0
  72. package/dist/Credentials/components/credentials-list-resource.component.d.ts.map +1 -1
  73. package/dist/Credentials/components/credentials-list-resource.component.js +12 -10
  74. package/dist/Credentials/components/credentials-list-resource.component.js.map +1 -1
  75. package/dist/DashboardBrowser/dashboard-browser-agent-context.d.ts +14 -43
  76. package/dist/DashboardBrowser/dashboard-browser-agent-context.d.ts.map +1 -1
  77. package/dist/DashboardBrowser/dashboard-browser-agent-context.js +6 -29
  78. package/dist/DashboardBrowser/dashboard-browser-agent-context.js.map +1 -1
  79. package/dist/DashboardBrowser/dashboard-browser-resource.component.d.ts +174 -321
  80. package/dist/DashboardBrowser/dashboard-browser-resource.component.d.ts.map +1 -1
  81. package/dist/DashboardBrowser/dashboard-browser-resource.component.js +522 -1195
  82. package/dist/DashboardBrowser/dashboard-browser-resource.component.js.map +1 -1
  83. package/dist/DashboardBrowser/dashboard-library-filter.d.ts +116 -0
  84. package/dist/DashboardBrowser/dashboard-library-filter.d.ts.map +1 -0
  85. package/dist/DashboardBrowser/dashboard-library-filter.js +277 -0
  86. package/dist/DashboardBrowser/dashboard-library-filter.js.map +1 -0
  87. package/dist/DashboardBrowser/dashboard-share-dialog.component.d.ts +1 -1
  88. package/dist/DashboardBrowser/dashboard-share-dialog.component.js.map +1 -1
  89. package/dist/DashboardBrowser/dashboards-agent-tools.d.ts +26 -0
  90. package/dist/DashboardBrowser/dashboards-agent-tools.d.ts.map +1 -0
  91. package/dist/DashboardBrowser/dashboards-agent-tools.js +32 -0
  92. package/dist/DashboardBrowser/dashboards-agent-tools.js.map +1 -0
  93. package/dist/DashboardBrowser/dashboards-categories-resource.component.d.ts +58 -0
  94. package/dist/DashboardBrowser/dashboards-categories-resource.component.d.ts.map +1 -0
  95. package/dist/DashboardBrowser/dashboards-categories-resource.component.js +391 -0
  96. package/dist/DashboardBrowser/dashboards-categories-resource.component.js.map +1 -0
  97. package/dist/DashboardBrowser/dashboards-categories.helpers.d.ts +37 -0
  98. package/dist/DashboardBrowser/dashboards-categories.helpers.d.ts.map +1 -0
  99. package/dist/DashboardBrowser/dashboards-categories.helpers.js +68 -0
  100. package/dist/DashboardBrowser/dashboards-categories.helpers.js.map +1 -0
  101. package/dist/DashboardEditor/dashboard-editor.component.d.ts +295 -0
  102. package/dist/DashboardEditor/dashboard-editor.component.d.ts.map +1 -0
  103. package/dist/DashboardEditor/dashboard-editor.component.js +1022 -0
  104. package/dist/DashboardEditor/dashboard-editor.component.js.map +1 -0
  105. package/dist/DashboardEditor/dashboard-editor.types.d.ts +23 -0
  106. package/dist/DashboardEditor/dashboard-editor.types.d.ts.map +1 -0
  107. package/dist/DashboardEditor/dashboard-editor.types.js +3 -0
  108. package/dist/DashboardEditor/dashboard-editor.types.js.map +1 -0
  109. package/dist/DashboardEditor/dashboard-viewer-factory.d.ts +11 -0
  110. package/dist/DashboardEditor/dashboard-viewer-factory.d.ts.map +1 -0
  111. package/dist/DashboardEditor/dashboard-viewer-factory.js +17 -0
  112. package/dist/DashboardEditor/dashboard-viewer-factory.js.map +1 -0
  113. package/dist/DataExplorer/data-explorer-dashboard.component.d.ts +51 -0
  114. package/dist/DataExplorer/data-explorer-dashboard.component.d.ts.map +1 -1
  115. package/dist/DataExplorer/data-explorer-dashboard.component.js +375 -223
  116. package/dist/DataExplorer/data-explorer-dashboard.component.js.map +1 -1
  117. package/dist/DataExplorer/services/explorer-state.service.d.ts +1 -1
  118. package/dist/DataExplorer/services/explorer-state.service.js +2 -5
  119. package/dist/DataExplorer/services/explorer-state.service.js.map +1 -1
  120. package/dist/DevTools/app-state-inspector.component.d.ts.map +1 -1
  121. package/dist/DevTools/app-state-inspector.component.js +1 -0
  122. package/dist/DevTools/app-state-inspector.component.js.map +1 -1
  123. package/dist/DevTools/class-registry.component.d.ts.map +1 -1
  124. package/dist/DevTools/class-registry.component.js +1 -0
  125. package/dist/DevTools/class-registry.component.js.map +1 -1
  126. package/dist/DevTools/event-monitor.component.d.ts.map +1 -1
  127. package/dist/DevTools/event-monitor.component.js +2 -0
  128. package/dist/DevTools/event-monitor.component.js.map +1 -1
  129. package/dist/DevTools/graphql-console.component.d.ts.map +1 -1
  130. package/dist/DevTools/graphql-console.component.js.map +1 -1
  131. package/dist/DevTools/grid-width-lab.component.d.ts.map +1 -1
  132. package/dist/DevTools/grid-width-lab.component.js +1 -0
  133. package/dist/DevTools/grid-width-lab.component.js.map +1 -1
  134. package/dist/DevTools/layout-inspector.component.d.ts.map +1 -1
  135. package/dist/DevTools/layout-inspector.component.js +1 -0
  136. package/dist/DevTools/layout-inspector.component.js.map +1 -1
  137. package/dist/DevTools/lazy-module-status.component.d.ts.map +1 -1
  138. package/dist/DevTools/lazy-module-status.component.js +1 -0
  139. package/dist/DevTools/lazy-module-status.component.js.map +1 -1
  140. package/dist/DevTools/settings-explorer.component.d.ts.map +1 -1
  141. package/dist/DevTools/settings-explorer.component.js +1 -0
  142. package/dist/DevTools/settings-explorer.component.js.map +1 -1
  143. package/dist/DevTools/tab-strip-lab.component.d.ts.map +1 -1
  144. package/dist/DevTools/tab-strip-lab.component.js +1 -0
  145. package/dist/DevTools/tab-strip-lab.component.js.map +1 -1
  146. package/dist/EntityAdmin/entity-admin-dashboard.component.d.ts +5 -0
  147. package/dist/EntityAdmin/entity-admin-dashboard.component.d.ts.map +1 -1
  148. package/dist/EntityAdmin/entity-admin-dashboard.component.js +8 -5
  149. package/dist/EntityAdmin/entity-admin-dashboard.component.js.map +1 -1
  150. package/dist/FormBuilder/form-builder-resource.component.d.ts +0 -14
  151. package/dist/FormBuilder/form-builder-resource.component.d.ts.map +1 -1
  152. package/dist/FormBuilder/form-builder-resource.component.js +7 -29
  153. package/dist/FormBuilder/form-builder-resource.component.js.map +1 -1
  154. package/dist/Home/home-agent-context.d.ts +29 -10
  155. package/dist/Home/home-agent-context.d.ts.map +1 -1
  156. package/dist/Home/home-agent-context.js +50 -24
  157. package/dist/Home/home-agent-context.js.map +1 -1
  158. package/dist/Home/home-dashboard-switcher.component.d.ts +95 -0
  159. package/dist/Home/home-dashboard-switcher.component.d.ts.map +1 -0
  160. package/dist/Home/home-dashboard-switcher.component.js +442 -0
  161. package/dist/Home/home-dashboard-switcher.component.js.map +1 -0
  162. package/dist/Home/home-dashboard.component.d.ts +330 -17
  163. package/dist/Home/home-dashboard.component.d.ts.map +1 -1
  164. package/dist/Home/home-dashboard.component.js +1702 -1014
  165. package/dist/Home/home-dashboard.component.js.map +1 -1
  166. package/dist/Home/home-menus.d.ts +38 -0
  167. package/dist/Home/home-menus.d.ts.map +1 -0
  168. package/dist/Home/home-menus.js +53 -0
  169. package/dist/Home/home-menus.js.map +1 -0
  170. package/dist/Home/home-pinned-dashboards.d.ts +33 -0
  171. package/dist/Home/home-pinned-dashboards.d.ts.map +1 -0
  172. package/dist/Home/home-pinned-dashboards.js +76 -0
  173. package/dist/Home/home-pinned-dashboards.js.map +1 -0
  174. package/dist/Integration/components/overview/overview.component.js +2 -2
  175. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js +2 -2
  176. package/dist/KnowledgeHub/components/config/knowledge-config-resource.component.js.map +1 -1
  177. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipeline.engine.d.ts +11 -1
  178. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipeline.engine.d.ts.map +1 -1
  179. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipeline.engine.js +24 -2
  180. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipeline.engine.js.map +1 -1
  181. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipelines-resource.component.d.ts +16 -2
  182. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipelines-resource.component.d.ts.map +1 -1
  183. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipelines-resource.component.js +87 -33
  184. package/dist/KnowledgeHub/components/feature-pipelines/feature-pipelines-resource.component.js.map +1 -1
  185. package/dist/LoginStudio/login-studio-inspector.component.d.ts +130 -0
  186. package/dist/LoginStudio/login-studio-inspector.component.d.ts.map +1 -0
  187. package/dist/LoginStudio/login-studio-inspector.component.js +781 -0
  188. package/dist/LoginStudio/login-studio-inspector.component.js.map +1 -0
  189. package/dist/LoginStudio/login-studio-resource.component.d.ts +153 -0
  190. package/dist/LoginStudio/login-studio-resource.component.d.ts.map +1 -0
  191. package/dist/LoginStudio/login-studio-resource.component.js +857 -0
  192. package/dist/LoginStudio/login-studio-resource.component.js.map +1 -0
  193. package/dist/PredictiveStudio/components/ps-production.component.d.ts +5 -1
  194. package/dist/PredictiveStudio/components/ps-production.component.d.ts.map +1 -1
  195. package/dist/PredictiveStudio/components/ps-production.component.js +64 -41
  196. package/dist/PredictiveStudio/components/ps-production.component.js.map +1 -1
  197. package/dist/QueryBrowser/query-browser-resource.component.d.ts.map +1 -1
  198. package/dist/QueryBrowser/query-browser-resource.component.js +3 -2
  199. package/dist/QueryBrowser/query-browser-resource.component.js.map +1 -1
  200. package/dist/RealtimeRecordings/realtime-recordings-dashboard.component.js +2 -2
  201. package/dist/RealtimeRecordings/realtime-recordings-dashboard.component.js.map +1 -1
  202. package/dist/TelephonyOperations/telephony-operations-dashboard.component.d.ts +1 -0
  203. package/dist/TelephonyOperations/telephony-operations-dashboard.component.d.ts.map +1 -1
  204. package/dist/TelephonyOperations/telephony-operations-dashboard.component.js +7 -0
  205. package/dist/TelephonyOperations/telephony-operations-dashboard.component.js.map +1 -1
  206. package/dist/Testing/components/testing-explorer.component.d.ts.map +1 -1
  207. package/dist/Testing/components/testing-explorer.component.js +7 -7
  208. package/dist/Testing/components/testing-explorer.component.js.map +1 -1
  209. package/dist/Workflows/components/workflow-runs-resource.component.js +4 -4
  210. package/dist/Workflows/components/workflow-runs-resource.component.js.map +1 -1
  211. package/dist/ai-dashboards.module.d.ts +21 -20
  212. package/dist/ai-dashboards.module.d.ts.map +1 -1
  213. package/dist/ai-dashboards.module.js +4 -1
  214. package/dist/ai-dashboards.module.js.map +1 -1
  215. package/dist/core-dashboards.module.d.ts +70 -62
  216. package/dist/core-dashboards.module.d.ts.map +1 -1
  217. package/dist/core-dashboards.module.js +33 -5
  218. package/dist/core-dashboards.module.js.map +1 -1
  219. package/dist/data-explorer-dashboards.module.d.ts +1 -1
  220. package/dist/data-explorer-dashboards.module.d.ts.map +1 -1
  221. package/dist/data-explorer-dashboards.module.js +3 -1
  222. package/dist/data-explorer-dashboards.module.js.map +1 -1
  223. package/dist/public-api.d.ts +3 -0
  224. package/dist/public-api.d.ts.map +1 -1
  225. package/dist/public-api.js +4 -0
  226. package/dist/public-api.js.map +1 -1
  227. package/dist/shared/dashboard-library-changes.d.ts +23 -0
  228. package/dist/shared/dashboard-library-changes.d.ts.map +1 -0
  229. package/dist/shared/dashboard-library-changes.js +26 -0
  230. package/dist/shared/dashboard-library-changes.js.map +1 -0
  231. package/dist/shared/dashboard-owner-names.d.ts +17 -0
  232. package/dist/shared/dashboard-owner-names.d.ts.map +1 -0
  233. package/dist/shared/dashboard-owner-names.js +65 -0
  234. package/dist/shared/dashboard-owner-names.js.map +1 -0
  235. package/dist/shared/dashboard-recents.d.ts +34 -0
  236. package/dist/shared/dashboard-recents.d.ts.map +1 -0
  237. package/dist/shared/dashboard-recents.js +87 -0
  238. package/dist/shared/dashboard-recents.js.map +1 -0
  239. package/dist/shared/dashboards-app-install.d.ts +59 -0
  240. package/dist/shared/dashboards-app-install.d.ts.map +1 -0
  241. package/dist/shared/dashboards-app-install.js +97 -0
  242. package/dist/shared/dashboards-app-install.js.map +1 -0
  243. package/dist/shared/dashboards-app.helpers.d.ts +42 -0
  244. package/dist/shared/dashboards-app.helpers.d.ts.map +1 -0
  245. package/dist/shared/dashboards-app.helpers.js +143 -0
  246. package/dist/shared/dashboards-app.helpers.js.map +1 -0
  247. package/package.json +73 -69
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login-studio-resource.component.js","sourceRoot":"","sources":["../../src/LoginStudio/login-studio-resource.component.ts","../../src/LoginStudio/login-studio-resource.component.html"],"names":[],"mappings":";;;;;;AAAA;;;GAGG;AAEH,OAAO,EAAiB,uBAAuB,EAAE,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AACnI,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACpH,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EACL,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,qBAAqB,EACxH,qBAAqB,EAAE,oBAAoB,EAAE,qBAAqB,GACnE,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,sBAAsB,EAAqD,MAAM,kCAAkC,CAAC;AAC7H,OAAO,EACL,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,YAAY,EAC5H,kBAAkB,EAAE,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,EAC5H,gBAAgB,EAAE,0BAA0B,GAE7C,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,6BAA6B,EAAgE,MAAM,oCAAoC,CAAC;;;;;ICpB3I,mCAAoF;;;IAA1C,AAAtB,0CAAqB,iCAA0B;;;;IAIjE,AADF,8BAAiC,gBAC2G;IAAlF,gMAAS,aAAM,KAAC;IAAkE,uBAAuC;IAAA,iBAAS;IAC1L,kCAAgJ;IAAxF,gMAAS,aAAM,KAAC;IAAwE,wBAAwC;IAAA,iBAAS;IACjM,kCAA+G;IAApD,gMAAS,gBAAS,KAAC;IAAiC,+BAAe;IAAA,iBAAS;IACvI,kCAAiH;IAAtD,gMAAS,kBAAW,KAAC;IAC9E,wBAAyC;IAAC,4BAC5C;IAAA,iBAAS;IACT,mCAC2H;IADhE,iMAAS,gBAAS,KAAC;IAE5E,yBAAkC;IAAC,0BACrC;IACF,AADE,iBAAS,EACL;;;IAVqE,cAAqB;IAArB,0CAAqB;IACrB,eAAqB;IAArB,0CAAqB;IACf,eAA+B;IAA/B,2DAA+B;IAC7B,eAA+B;IAA/B,2DAA+B;IAIxG,eAA2D;IAA3D,mGAA2D;;;;IASrE,oCAA8G;IAA7B,0MAAa,qBAAc,KAAC;IAAC,iBAAW;;;IAA7E,6CAAwB;;;;IAGpE,oCAAkH;IAA9B,0MAAa,sBAAe,KAAC;IAAC,iBAAW;;;IAA/E,8CAAyB;;;IAIvE,gCAA0E;;;IAE1E,oCAC4I;;;;IAUpI,kCAAuJ;IAA5C,8NAAS,0BAAgB,KAAC;IACnI,wBAA2C;IAC3C,4BAAM;IAAA,YAAa;IACrB,AADqB,iBAAO,EACnB;;;IAH6H,AAAlD,uCAAsB,oBAA4C;IACjJ,cAAgB;IAAhB,wBAAgB;IACb,eAAa;IAAb,gCAAa;;;IA4Bf,6BAA4B;IAAA,6EAA2D;IAAA,iBAAI;;;IAYzF,gCAA0B;IAAA,YAAoB;IAAA,iBAAO;;;IAA3B,cAAoB;IAApB,2CAAoB;;;;IAoBtD,kCAAuI;IAA/E,gNAAS,cAAO,IAAI,CAAC,KAAC;IAC5E,wBAAyC;IAC3C,iBAAS;;;;IArEb,AADF,AAFF,8BAAiC,gBAEgB,aACrB;IAAA,sBAAM;IAAA,iBAAK;IACnC,6BAAoB;IAAA,4FAA4E;IAAA,iBAAI;IACpG,+BAC2C;IACzC,iHAKC;IAEL,AADE,iBAAM,EACA;IAGR,mCAAyE;IAA9C,iMAAS,qBAAc,KAAC;IACjD,gCAA8D;IAAnC,2HAAS,wBAAwB,IAAC;IAC3D,2CAAsI;IAAhC,uNAAa,wBAAiB,KAAC;IAAC,iBAAiB;IACvJ,iCAAuB;IAAA,4FAA2E;IACpG,AADoG,iBAAO,EACrG;IAKJ,AAHF,gCAA+E,eAK9B;IAA1C,oMAAS,qBAAc,QAAQ,SAAS,KAAC;IAIxC,AADF,AAFF,gCACmF,eAC1D,gBACU;IAAA,aAAwB;IAAA,iBAAO;IAC9D,4CAGsH;IAAvC,AAAnC,AAA3B,oNAAW,qBAAc,KAAC,uNAAoB,qBAAc,KAAC,yNAAqB,wBAAiB,KAAC;IAAC,iBAAkB;IACxI,6GAAqC;IAIzC,AADE,iBAAM,EACF;IACN,gCAA6G;IAAzC,oMAAS,qBAAc,OAAO,SAAS,KAAC;IAExG,AADF,gCAAuB,gBACU;IAAA,aAA0B;IAAA,iBAAO;IAChE,4CAEsH;IAAvC,AAAnC,AAA3B,oNAAW,qBAAc,KAAC,uNAAoB,qBAAc,KAAC,yNAAqB,wBAAiB,KAAC;IAAC,iBAAkB;IACxI,gCAA2C;IACzC,gHAAsB;IAGtB,iCAAyB;IAAA,uBAAM;IACjC,AADiC,iBAAO,EAClC;IACN,iCAA+B;IAAA,aAA6B;IAAA,iBAAO;IACnE,4CAEsH;IAAvC,AAAnC,AAA3B,oNAAW,qBAAc,KAAC,uNAAoB,qBAAc,KAAC,yNAAqB,wBAAiB,KAAC;IAK/H,AADE,AADE,AADE,AADE,AADwH,iBAAkB,EACpI,EACF,EACF,EACF,EACE;IAIR,AADF,kCAA8C,eACjB;IACzB,yBAA6C;IAC7C,+BAA2B;IAAA,aAAe;IAAA,iBAAK;IAC/C,kHAA2B;IAK7B,iBAAM;IACN,sDAGkH;IAAjD,AAAtC,AADoC,AAApC,0OAAiB,wBAAiB,KAAC,mOAAqB,wBAAiB,KAAC,iOACpD,qBAAc,KAAC,+OAA2B,4BAAqB,KAAC;IAErH,AADE,AADoH,iBAA4B,EACxI,EACJ;;;IA3EwC,eAAiC;IACtE,AADqC,sDAAiC,6CACjC;IACxC,cAKC;IALD,6BAKC;IAOsD,eAAyB;IAAC,AAA1B,8CAAyB,4BAAqB;IAI7C,eAAoB;IAApB,gCAAoB;IAAvD,kDAAkC;IAGvC,cAAuD;IACpC,AAA9B,AADmE,AAAxD,uEAAuD,qDAAoD,+BACzF,sFAA8E;IAEtF,cAAqE;IACxF,AADmB,4FAAqE,sFACX;IAE/C,eAAwB;IAAxB,+CAAwB;IACtB,cAAgC;IAEhD,AADwE,AAApD,AAApB,AADiE,AAAhB,AAAjC,qDAAgC,uBAAgB,gCAAyB,2BACtE,kEAAoD,kBAAkB,iCAChE;IAE1C,cAEC;IAFD,gEAEC;IAGkB,cAA4C;IAA5C,4DAA4C;IAEhC,eAA0B;IAA1B,iDAA0B;IACtB,cAAkC;IACd,AAAlB,AAApB,AADqE,AAAhB,AAAnC,uDAAkC,uBAAgB,gCAAyB,2BAC1E,kBAAkB,iCAA0B;IAG9E,eAEC;IAFD,iDAEC;IAG4B,eAA6B;IAA7B,oDAA6B;IACtB,cAAqC;IACpB,AAAlB,AAApB,AAD2E,AAAhB,AAAtC,0DAAqC,uBAAgB,gCAAyB,2BAChF,kBAAkB,iCAA0B;IAWnF,eAAkB;IAAlB,8BAAkB;IACM,eAAe;IAAf,sCAAe;IAC1C,cAIC;IAJD,6DAIC;IAEwB,cAAiB;IACkB,AAAnC,AAD0E,AAAlC,AAAtB,AAAlB,sCAAiB,6BAAsB,yCAAkC,2BAAoB,iDAC3D,yBAAkB;;ADtFzF,oGAAoG;AACpG,MAAM,OAAO,GAAG,SAAS,CAAC;AAC1B,8FAA8F;AAC9F,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,WAAW,GAAG,EAAE,CAAC;AACvB,uFAAuF;AACvF,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,aAAa,GAAiC,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;AACvG,MAAM,YAAY,GAAiC,EAAE,MAAM,EAAE,mBAAmB,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;AAE1H;;;;;;;;;GASG;AAcI,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,qBAAqB;IACpD,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAChC,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACnC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IACpC,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IAExB,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvF,aAAa,GAAG,OAAO,CAAC;IACxB,WAAW,GAAG,kBAAkB,CAAC;IACjC,aAAa,GAAuB;QAClD,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,qBAAqB,EAAE;QACjE,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,2BAA2B,EAAE;KACrE,CAAC;IAEK,OAAO,GAAG,IAAI,CAAC;IACf,MAAM,GAAG,KAAK,CAAC;IACtB,kCAAkC;IAC3B,YAAY,GAAkB,IAAI,CAAC;IAC1C,uCAAuC;IAChC,aAAa,GAAkB,IAAI,CAAC;IAE3C,0FAA0F;IACnF,KAAK,GAAyB,IAAI,CAAC;IACnC,MAAM,GAAgB,kBAAkB,EAAE,CAAC;IAC3C,UAAU,GAAkB,IAAI,CAAC;IACxC,sFAAsF;IAC/E,eAAe,GAAwB,IAAI,CAAC;IAC5C,MAAM,GAAyB,SAAS,CAAC;IACzC,KAAK,GAAe,EAAE,CAAC;IAC9B,2EAA2E;IACpE,UAAU,GAA2B,EAAE,CAAC;IAE/C,8GAA8G;IACtG,QAAQ,GAAa,EAAE,CAAC;IAChC,iGAAiG;IACzF,UAAU,GAAkB,IAAI,CAAC;IACjC,SAAS,GAAkB,IAAI,CAAC;IACxC,qFAAqF;IAC7E,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvC,KAAK,GAAsB,IAAI,CAAC;IAChC,IAAI,GAAa,EAAE,CAAC;IACpB,IAAI,GAAa,EAAE,CAAC;IACpB,QAAQ,GAAuC,IAAI,CAAC;IACpD,SAAS,GAAG,CAAC,CAAC;IACd,eAAe,GAAG,KAAK,CAAC;IAEhB,QAAQ;QACtB,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,6FAA6F;QAC7F,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/F,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;IACrB,CAAC;IAEM,eAAe;QACpB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAC,KAAmB;QACrD,OAAO,cAAc,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAAC,KAAmB;QACnD,OAAO,8BAA8B,CAAC;IACxC,CAAC;IAED,sEAAsE;IACtD,SAAS;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,+FAA+F;IAE/F,sDAAsD;IAC/C,KAAK,CAAC,MAAM;QACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,gGAAgG;YAChG,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAgB;gBACvF,UAAU,EAAE,YAAY;gBACxB,WAAW,EAAE,qCAAqC;gBAClD,OAAO,EAAE,qBAAqB;gBAC9B,OAAO,EAAE,CAAC;gBACV,UAAU,EAAE,eAAe;aAC5B,CAAC,CAAC;YACH,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACf,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,YAAY,IAAI,mCAAmC,CAAC;YAC7E,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,IAAI,CAAC,YAAY,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjE,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,uGAAuG;IAC/F,UAAU,CAAC,KAA2B;QAC5C,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,kBAAkB,EAAE,CAAC;QAC1F,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;IACrB,CAAC;IAED,yFAAyF;IACjF,UAAU,CAAC,KAA2B;QAC5C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,mGAAmG;QACnG,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7D,IAAI,CAAC,KAAK,GAAG,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,GAAG,EAAE,KAAK,IAAI,IAAI,CAAC;QAChC,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QACxD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9D,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;IAED,+FAA+F;IAE/F,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,wCAAwC;IACxC,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,QAAQ,CAAC;IAC5C,CAAC;IACD,sDAAsD;IACtD,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,CAAC;IACxE,CAAC;IACD,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;IACjC,CAAC;IACD,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9B,CAAC;IACD,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC;IAClC,CAAC;IAED,IAAW,WAAW;QACpB,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,iBAAiB,CAAC;QAC3C,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,qBAAqB,CAAC;QACnD,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,WAAW,CAAC;QACpC,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,iGAAiG;IACjG,IAAW,aAAa;QACtB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QACvD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAED,IAAW,QAAQ;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpF,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjE,CAAC;IACD,mGAAmG;IACnG,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACjG,CAAC;IACD,0DAA0D;IAC1D,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;IACvD,CAAC;IACD,IAAW,SAAS;QAClB,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;QACrE,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC7D,CAAC;IACD,IAAW,QAAQ;QACjB,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO,qBAAqB,CAAC;QAChD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC;IACjF,CAAC;IAED,sEAAsE;IAE/D,cAAc,CAAC,CAAoB;QACxC,IAAI,IAAI,CAAC,OAAO;YAAE,CAAC,CAAC,cAAc,EAAE,CAAC;IACvC,CAAC;IAED,+FAA+F;IAExF,KAAK,CAAC,SAAS;QACpB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAAE,OAAO;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;QAC9B,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAAE,OAAO;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;QAC9B,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,qEAAqE;YACrE,IAAI,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,uGAAuG;IAChG,OAAO;QACZ,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAgB,CAAC;QACvD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,yEAAyE;IAClE,KAAK,CAAC,YAAY;QACvB,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;YAC1C,KAAK,EAAE,6BAA6B;YACpC,OAAO,EAAE,sFAAsF;YAC/F,WAAW,EAAE,wBAAwB;YACrC,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;YACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC;YACjC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEM,YAAY;QACjB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa;QAClB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1B,CAAC;IAEO,IAAI,CAAC,MAAc;QACzB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,0GAA0G;IAClG,gBAAgB;QACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACzE,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;IACpC,CAAC;IAEO,eAAe;QACrB,OAAO,4BAA4B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,KAAK,CAAC,KAAiC;QACnD,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAgB,YAAY,CAAC,CAAC;YACpF,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC,YAAY,GAAG,+DAA+D,CAAC;gBACpF,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAClD,IAAI,CAAC,YAAY,GAAG,GAAG,KAAK,CAAC,IAAI,iHAAiH,CAAC;gBACnJ,OAAO,KAAK,CAAC;YACf,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,CAAC;YACb,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,EAAE,eAAe,IAAI,uBAAuB,CAAC;gBACnF,OAAO,KAAK,CAAC;YACf,CAAC;YACD,mFAAmF;YACnF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,IAAI,CAAC,YAAY,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO,KAAK,CAAC;QACf,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,+FAA+F;IAE/F,2HAA2H;IACnH,MAAM,CAAC,EAA4B,EAAE,WAAoB;QAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,WAAW,IAAI,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,WAAW,CAAC;QAC7G,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAgB,CAAC;QACzD,EAAE,CAAC,IAAI,CAAC,CAAC;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,iEAAiE;IAC1D,SAAS,CAAC,CAAY;QAC3B,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAC1F,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;oBAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACrJ,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC,KAAK;oBAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrJ,KAAK,YAAY;gBACf,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;oBAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3F,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,KAAK,SAAS;gBACZ,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YACxH,KAAK,YAAY;gBACf,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAC/C,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;oBACvB,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,IAAI,CAAC;wBAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;;wBACtB,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC9B,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,EAA2B,EAAE,aAAsB;QACtE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QAC3B,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,GAAG;gBAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAChD,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAEO,cAAc,CAAC,KAA2B,EAAE,KAA6B;QAC/E,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,MAAM,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC;YACxB,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACrB,EAAE,CAAC,IAAI,GAAG,KAA4B,CAAC;gBACvC,gFAAgF;gBAChF,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,KAAK,CAAC;oBAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC;gBAC5D,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,MAAM,CAAC;oBAAE,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC;gBAC/D,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,IAAI,EAAE,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,QAAQ,CAAC;oBAAE,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;gBAChG,sFAAsF;gBACtF,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;gBACjF,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;gBACjF,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK;oBAAE,EAAE,CAAC,KAAK,GAAG,OAAO,CAAC;gBACrF,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,EAAE,CAAC,MAAM;oBAAE,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC;YAC/D,CAAC;iBAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/B,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9F,CAAC;iBAAM,CAAC;gBACN,EAAE,CAAC,KAAK,CAAC,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,CAAC;QACH,CAAC,EAAE,MAAM,KAAK,EAAE,CAAC,CAAC;IACpB,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,WAAW;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;IACjB,CAAC;IAEM,IAAI;QACT,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO;QAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAEM,IAAI;QACT,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO;QAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,0GAA0G;IAClG,OAAO,CAAC,IAAY;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAgB,CAAC;QAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAC/F,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,sGAAsG;IAE/F,SAAS,CAAC,CAAgB;QAC/B,MAAM,MAAM,GAAG,CAAC,CAAC,MAA4B,CAAC;QAC9C,IAAI,MAAM,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,iBAAiB,CAAC;YAAE,OAAO;QACrG,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,GAAG;YAAE,OAAO;QACrE,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,IAAI,CAAC,CAAC,QAAQ;YAAE,IAAI,CAAC,IAAI,EAAE,CAAC;;YACvB,IAAI,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC;IAED,+FAA+F;IAE/F,iFAAiF;IAC1E,YAAY;QACjB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,aAAa;YAAE,OAAO;QACxD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,CAAoB;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAChB,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,CAAC,aAAa,KAAK,CAAC,CAAC,YAAY,CAAC;YAAE,OAAO;QACzE,IAAI,IAAI,KAAK,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAAE,OAAO;QAC/C,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAChB,IAAI,IAAI,KAAK,EAAE;gBAAE,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;;gBAC5E,iBAAiB,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;QAC1F,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9D,OAAO,GAAG,GAAY,EAAE,CAAC,KAAK,CAAC;IAE/C;;;OAGG;IACI,QAAQ,CAAC,IAAoB,EAAE,MAAoB,EAAE,KAAc;QACxE,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/F,MAAM,KAAK,GAAgB,MAAM,IAAI,GAAG,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACvG,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO;QACnC,MAAM,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;QAC9E,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAC5D,CAAC;IAEM,SAAS,CAAC,CAAuB;QACtC,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;QAC7C,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,IAAI,CAAC;YACV,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM;oBAAE,OAAO;gBAC/D,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;gBAClE,MAAM;YACR,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;oBAAE,OAAO;gBACpC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;gBACjE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBACjE,MAAM;YACR,CAAC;YACD,KAAK,QAAQ;gBACX,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM;QACV,CAAC;IACH,CAAC;IAED,wEAAwE;IAChE,UAAU,CAAC,MAAmB;QACpC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,YAAY,CAAC,eAAe;YAAE,OAAO,KAAK,CAAC;QACpF,IAAI,CAAC,aAAa,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC,gBAAgB,YAAY,CAAC,eAAe,UAAU,CAAC;QACzG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,EAAiB;QAC7B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1B,CAAC;IAED,+GAA+G;IACxG,aAAa,CAAC,OAAqB,EAAE,CAAS;QACnD,IAAI,CAAC,EAAE,CAAC;YACN,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,aAAa;gBAAE,OAAO;QAC1D,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;QAC/B,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1B,CAAC;IAEM,SAAS,CAAC,MAAc;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACzD,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1B,CAAC;IAED,+FAA+F;IAE/F,iHAAiH;IACzG,OAAO;QACb,uGAAuG;QACvG,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACzB,IAAI,CAAC,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,CAAC;QACD,kHAAkH;QAClH,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,MAAM,CAAC;QAC5E,IAAI,CAAC,UAAU,GAAG,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/F,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC;YACpC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;IAC1B,CAAC;IAEO,mBAAmB;QACzB,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,EAAE;YAC3C,OAAO,EAAE,cAAc;YACvB,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI;YACnC,MAAM,EAAE,IAAI,CAAC,WAAW;YACxB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;YAC1B,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC7F,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;YACnF,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC;SAC3C,CAAC,CAAC;IACL,CAAC;IAEO,kBAAkB;QACxB,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,EAAE;YAC/C;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,WAAW,EAAE,8GAA8G;gBAC3H,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;gBACnD,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;oBACpB,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;iBACpG,CAAC;aACH;SACF,CAAC,CAAC;IACL,CAAC;6RAjjBU,4BAA4B,yBAA5B,4BAA4B;6DAA5B,4BAA4B;YAA5B,qHAAA,0BAAsB,wBAAM,8FAA5B,qBAAiB,IAAW;;YC3DvC,AADF,sCAAgB,wBAE8J;YAE1K,wGAA0C;YAG1C,+FAAyB;YAc3B,iBAAiB;YAEjB,oCAAc;YACZ,mGAAoB;YAGpB,mGAAqB;YASnB,AAHA,AAFF,qGAAe,mFAEM,0EAGZ;YAoFb,AADE,iBAAe,EACA;;YAtHC,cAA2J;YAA3J,iLAA2J;YAEzK,cAEC;YAFD,yEAEC;YACD,cAaC;YAbD,oDAaC;YAID,eAEC;YAFD,2CAEC;YACD,cAEC;YAFD,4CAEC;YAED,cAuFC;YAvFD,sDAuFC;4BDlED,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,mBAAmB,uBAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB;YACvH,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,qBAAqB;YAC9G,sBAAsB,EAAE,6BAA6B;;AAM5C,4BAA4B;IAbxC,aAAa,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;GAa/C,4BAA4B,CAkjBxC;;iFAljBY,4BAA4B;cAZxC,SAAS;6BACI,IAAI,YACN,0BAA0B,WAC3B;oBACP,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB;oBACvH,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,qBAAqB;oBAC9G,sBAAsB,EAAE,6BAA6B;iBACtD,mBAGgB,uBAAuB,CAAC,MAAM;;kBA4L9C,YAAY;mBAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC;;kBA6N9C,YAAY;mBAAC,SAAS,EAAE,CAAC,QAAQ,CAAC;;kFAvZxB,4BAA4B","sourcesContent":["/**\n * @fileoverview Login Studio: design the Explorer sign-in page as data, on the default theme.\n * @module LoginStudio\n */\n\nimport { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, OnInit, inject } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { CdkDrag, CdkDropList, CdkDropListGroup, moveItemInArray, transferArrayItem } from '@angular/cdk/drag-drop';\nimport { takeUntil } from 'rxjs';\nimport { LogError, RunView } from '@memberjunction/core';\nimport { RegisterClass } from '@memberjunction/global';\nimport { MJThemeEntity, ResourceData } from '@memberjunction/core-entities';\nimport { BaseResourceComponent, ThemeService } from '@memberjunction/ng-shared';\nimport { SharedGenericModule } from '@memberjunction/ng-shared-generic';\nimport {\n MJAlertComponent, MJButtonDirective, MJConfirmService, MJEmptyStateComponent, MJPageBodyComponent, MJPageHeaderComponent,\n MJPageLayoutComponent, MJStatBadgeComponent, MJViewToggleComponent, type MJStatBadgeVariant, type ViewToggleOption,\n} from '@memberjunction/ng-ui-components';\nimport { MJLoginRegionComponent, type MJLoginRegionCommand, type MJLoginRegionDrop } from '@memberjunction/ng-auth-services';\nimport {\n CloneLoginBlock, DefaultLoginDesign, IsLoginHexColor, IsSafeLoginImageURL, LOGIN_BLOCK_META, LOGIN_BLOCK_TYPES, LOGIN_LIMITS,\n LOGIN_REGION_LABEL, LOGIN_REGIONS, LocateLoginBlock, LoginDesignProblems, LoginDesignTokens, LoginThemeTokens, NewLoginBlock,\n ParseLoginDesign, PublicLoginScreenFromTheme,\n type LoginBackgroundKind, type LoginBlock, type LoginBlockType, type LoginDesign, type LoginRegion, type ThemeLogos, type ThemeSeeds,\n} from '@memberjunction/theme-engine';\nimport { LoginStudioInspectorComponent, type LoginBackgroundField, type LoginEdit, type LoginSurface } from './login-studio-inspector.component';\n\n/** The drop list the palette's tiles come from. Not a region, so a drop from it CREATES a block. */\nconst PALETTE = 'palette';\n/** A run of edits to one field within this window is one undo step, not one per keystroke. */\nconst COALESCE_MS = 800;\nconst HISTORY_CAP = 60;\n/** The click a browser fires as a drag ends; ignored so a drop keeps its selection. */\nconst DROP_CLICK_MS = 400;\nconst SURFACE_LABEL: Record<LoginSurface, string> = { Banner: 'Story panel', Panel: 'Sign-in column' };\nconst SURFACE_ICON: Record<LoginSurface, string> = { Banner: 'fa-solid fa-image', Panel: 'fa-solid fa-right-to-bracket' };\n\n/**\n * LOGIN STUDIO: an administrator designs the page visitors see before they sign in. The design lives on\n * the default Active theme (`LoginScreenDraft` while edited, `LoginScreen` once published), because a\n * sign-in page belongs to a brand. The preview is drawn by `<mj-login-region>`, the renderer the live\n * login screen uses; every drag also has a click or key (Add, Alt+Arrow, Delete).\n *\n * SAFETY BOUNDARY (agent): the agent reads the design and its problems (GetSignInPageDesign). Save draft,\n * Publish and \"Use the stock sign-in page\" are human-only: the published page is what every visitor meets\n * before signing in.\n */\n@RegisterClass(BaseResourceComponent, 'LoginStudioResource')\n@Component({\n standalone: true,\n selector: 'mj-login-studio-resource',\n imports: [\n CdkDropListGroup, CdkDropList, CdkDrag, SharedGenericModule, MJAlertComponent, MJButtonDirective, MJEmptyStateComponent,\n MJPageLayoutComponent, MJPageHeaderComponent, MJPageBodyComponent, MJStatBadgeComponent, MJViewToggleComponent,\n MJLoginRegionComponent, LoginStudioInspectorComponent,\n ],\n templateUrl: './login-studio-resource.component.html',\n styleUrls: ['./login-studio-resource.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LoginStudioResourceComponent extends BaseResourceComponent implements OnInit, AfterViewInit {\n private readonly cdr = inject(ChangeDetectorRef);\n private readonly confirm = inject(MJConfirmService);\n private readonly themeService = inject(ThemeService);\n private readonly doc = inject(DOCUMENT);\n\n public readonly Palette = LOGIN_BLOCK_TYPES.map((type) => ({ Type: type, ...LOGIN_BLOCK_META[type] }));\n public readonly PaletteListID = PALETTE;\n public readonly RegionLabel = LOGIN_REGION_LABEL;\n public readonly DeviceOptions: ViewToggleOption[] = [\n { key: 'desktop', label: 'Desktop', icon: 'fa-solid fa-desktop' },\n { key: 'mobile', label: 'Phone', icon: 'fa-solid fa-mobile-screen' },\n ];\n\n public Loading = true;\n public Saving = false;\n /** A failure to show, or null. */\n public ErrorMessage: string | null = null;\n /** A confirmation to show, or null. */\n public NoticeMessage: string | null = null;\n\n /** The theme being designed for: the default Active theme, or null when there is none. */\n public Theme: MJThemeEntity | null = null;\n public Design: LoginDesign = DefaultLoginDesign();\n public SelectedID: string | null = null;\n /** The story panel or the sign-in column, when one is selected instead of a block. */\n public SelectedSurface: LoginSurface | null = null;\n public Device: 'desktop' | 'mobile' = 'desktop';\n public Logos: ThemeLogos = {};\n /** The default theme's look, as custom properties on the preview frame. */\n public FrameStyle: Record<string, string> = {};\n\n /** The problems that stopped the last save; re-checked as you edit, so the alert goes once they are fixed. */\n private problems: string[] = [];\n /** What is stored, as JSON, so \"unsaved\" and \"unpublished\" are comparisons rather than flags. */\n private savedDraft: string | null = null;\n private published: string | null = null;\n /** The design as it stands in storage (or the starter, before anything is saved). */\n private baseline = JSON.stringify(this.Design);\n private seeds: ThemeSeeds | null = null;\n private undo: string[] = [];\n private redo: string[] = [];\n private lastEdit: { key: string; at: number } | null = null;\n private droppedAt = 0;\n private reportedEditing = false;\n\n public override ngOnInit(): void {\n super.ngOnInit();\n // The preview restates the stock gradient per color mode, so it follows a light/dark switch.\n this.themeService.AppliedTheme$.pipe(takeUntil(this.destroy$)).subscribe(() => this.changed());\n void this.Reload();\n }\n\n public ngAfterViewInit(): void {\n this.registerAgentTools();\n }\n\n public async GetResourceDisplayName(_data: ResourceData): Promise<string> {\n return 'Sign-in Page';\n }\n\n public async GetResourceIconClass(_data: ResourceData): Promise<string> {\n return 'fa-solid fa-right-to-bracket';\n }\n\n /** Unsaved edits: the shell keeps this tab rather than replace it. */\n public override IsEditing(): boolean {\n return this.Unsaved;\n }\n\n // ── Loading ─────────────────────────────────────────────────────────────────────────────────\n\n /** Re-read the default theme and its sign-in page. */\n public async Reload(): Promise<void> {\n this.Loading = true;\n this.ErrorMessage = null;\n this.cdr.markForCheck();\n try {\n // The theme GET /auth/login-screen serves: the default Active one, most recently changed first.\n const rv = await RunView.FromMetadataProvider(this.ProviderToUse).RunView<MJThemeEntity>({\n EntityName: 'MJ: Themes',\n ExtraFilter: `IsDefault = 1 AND Status = 'Active'`,\n OrderBy: '__mj_UpdatedAt DESC',\n MaxRows: 1,\n ResultType: 'entity_object',\n });\n if (rv.Success) {\n this.adoptTheme(rv.Results[0] ?? null);\n } else {\n this.ErrorMessage = rv.ErrorMessage || 'Could not read the default theme.';\n }\n } catch (e) {\n LogError(e);\n this.ErrorMessage = e instanceof Error ? e.message : String(e);\n } finally {\n this.Loading = false;\n this.changed();\n this.NotifyLoadComplete();\n }\n }\n\n /** Take the stored state from the theme, and edit its draft (else its live page, else the starter). */\n private adoptTheme(theme: MJThemeEntity | null): void {\n this.readStored(theme);\n this.Design = ParseLoginDesign(this.savedDraft ?? this.published) ?? DefaultLoginDesign();\n this.baseline = this.CurrentJson;\n this.undo = [];\n this.redo = [];\n this.SelectedID = null;\n this.SelectedSurface = null;\n this.problems = [];\n }\n\n /** What is stored on the theme: what is saved, what is live, and its seeds and logos. */\n private readStored(theme: MJThemeEntity | null): void {\n this.Theme = theme;\n // Seeds and logos as the live page gets them, so the preview wears exactly what visitors will see.\n const pub = theme ? PublicLoginScreenFromTheme(theme) : null;\n this.Logos = pub?.Logos ?? {};\n this.seeds = pub?.Seeds ?? null;\n const published = ParseLoginDesign(theme?.LoginScreen);\n const draft = ParseLoginDesign(theme?.LoginScreenDraft);\n this.published = published ? JSON.stringify(published) : null;\n this.savedDraft = draft ? JSON.stringify(draft) : null;\n }\n\n // ── State ───────────────────────────────────────────────────────────────────────────────────\n\n public get CurrentJson(): string {\n return JSON.stringify(this.Design);\n }\n /** Edits not yet saved as the draft. */\n public get Unsaved(): boolean {\n return this.CurrentJson !== this.baseline;\n }\n /** The saved draft differs from what visitors see. */\n public get Unpublished(): boolean {\n return this.savedDraft !== null && this.savedDraft !== this.published;\n }\n public get IsLive(): boolean {\n return this.published !== null;\n }\n public get CanUndo(): boolean {\n return this.undo.length > 0;\n }\n public get CanRedo(): boolean {\n return this.redo.length > 0;\n }\n public get Stacked(): boolean {\n return this.Device === 'mobile';\n }\n\n public get StatusLabel(): string {\n if (this.Unsaved) return 'Unsaved changes';\n if (this.Unpublished) return 'Draft not published';\n if (this.IsLive) return 'Published';\n return 'Stock sign-in page';\n }\n /** The header pill: shown only when there is something to say (live, or work waiting on you). */\n public get StatusVariant(): MJStatBadgeVariant | null {\n if (this.Unsaved || this.Unpublished) return 'warning';\n return this.IsLive ? 'success' : null;\n }\n\n public get Selected(): LoginBlock | null {\n const hit = this.SelectedID ? LocateLoginBlock(this.Design, this.SelectedID) : null;\n return hit ? this.Design.Regions[hit.Region][hit.Index] : null;\n }\n /** The region of the selected block: a card's colors depend on which side of the page it is on. */\n public get SelectedRegion(): LoginRegion | null {\n return this.SelectedID ? LocateLoginBlock(this.Design, this.SelectedID)?.Region ?? null : null;\n }\n /** The selected surface; a selected block always wins. */\n public get Surface(): LoginSurface | null {\n return this.SelectedID ? null : this.SelectedSurface;\n }\n public get SideTitle(): string {\n if (this.Selected) return LOGIN_BLOCK_META[this.Selected.Type].Label;\n return this.Surface ? SURFACE_LABEL[this.Surface] : 'Page';\n }\n public get SideIcon(): string {\n if (this.Selected) return 'fa-solid fa-sliders';\n return this.Surface ? SURFACE_ICON[this.Surface] : 'fa-solid fa-table-columns';\n }\n\n /** Closing or reloading the browser with unsaved edits asks first. */\n @HostListener('window:beforeunload', ['$event'])\n public OnBeforeUnload(e: BeforeUnloadEvent): void {\n if (this.Unsaved) e.preventDefault();\n }\n\n // ── Saving ──────────────────────────────────────────────────────────────────────────────────\n\n public async SaveDraft(): Promise<void> {\n if (!this.checkBeforeWrite()) return;\n const json = this.CurrentJson;\n if (await this.write((t) => { t.LoginScreenDraft = json; })) {\n this.baseline = json;\n this.done('Draft saved. Visitors still see the published page until you publish.');\n }\n }\n\n public async Publish(): Promise<void> {\n if (!this.checkBeforeWrite()) return;\n const json = this.CurrentJson;\n if (await this.write((t) => { t.LoginScreenDraft = json; t.LoginScreen = json; })) {\n this.baseline = json;\n // GET /auth/login-screen lets browsers keep its answer for a minute.\n this.done('Published. Visitors see the new sign-in page within a minute.');\n }\n }\n\n /** Back to what is stored (the saved draft, the live page, or the starter), dropping unsaved edits. */\n public Discard(): void {\n this.pushHistory();\n this.lastEdit = null;\n this.Design = JSON.parse(this.baseline) as LoginDesign;\n this.SelectedID = null;\n this.problems = [];\n this.ErrorMessage = null;\n this.NoticeMessage = null;\n this.changed();\n }\n\n /** Remove the custom page: visitors get the stock sign-in page again. */\n public async UseStockPage(): Promise<void> {\n const ok = await this.confirm.ConfirmDelete({\n title: 'Use the stock sign-in page?',\n message: 'Visitors will see the stock sign-in page, and this design and its draft are removed.',\n confirmText: 'Remove the custom page',\n cancelText: 'Keep it',\n });\n if (!ok) return;\n if (await this.write((t) => { t.LoginScreenDraft = null; t.LoginScreen = null; })) {\n this.pushHistory();\n this.lastEdit = null;\n this.Design = DefaultLoginDesign();\n this.baseline = this.CurrentJson;\n this.SelectedID = null;\n this.done('Visitors now see the stock sign-in page.');\n }\n }\n\n public DismissError(): void {\n this.ErrorMessage = null;\n this.cdr.markForCheck();\n }\n\n public DismissNotice(): void {\n this.NoticeMessage = null;\n this.cdr.markForCheck();\n }\n\n private done(notice: string): void {\n this.NoticeMessage = notice;\n this.changed();\n }\n\n /** The editor's own list of problems, in its words. The entity's Validate runs the full check on save. */\n private checkBeforeWrite(): boolean {\n this.NoticeMessage = null;\n this.problems = LoginDesignProblems(this.Design);\n this.ErrorMessage = this.problems.length ? this.problemsMessage() : null;\n this.cdr.markForCheck();\n return this.problems.length === 0;\n }\n\n private problemsMessage(): string {\n return `Fix these before saving: ${this.problems.join(' ')}`;\n }\n\n /**\n * Writes the sign-in page columns to a FRESH copy of the theme, so a save never carries back a stale\n * copy of the theme's other columns (another admin may have changed its colors or the default meanwhile).\n */\n private async write(apply: (t: MJThemeEntity) => void): Promise<boolean> {\n if (!this.Theme) return false;\n this.Saving = true;\n this.cdr.markForCheck();\n try {\n const theme = await this.ProviderToUse.GetEntityObject<MJThemeEntity>('MJ: Themes');\n if (!(await theme.Load(this.Theme.ID))) {\n this.ErrorMessage = 'The theme could not be read, so nothing was saved. Try again.';\n return false;\n }\n if (!theme.IsDefault || theme.Status !== 'Active') {\n this.ErrorMessage = `${theme.Name} is no longer the default theme, so nothing was saved. Close and reopen Login Studio to design the current one.`;\n return false;\n }\n apply(theme);\n if (!(await theme.Save())) {\n this.ErrorMessage = theme.LatestResult?.CompleteMessage || 'The save was refused.';\n return false;\n }\n // What is stored now, which another admin may have changed since this page loaded.\n this.readStored(theme);\n return true;\n } catch (e) {\n LogError(e);\n this.ErrorMessage = e instanceof Error ? e.message : String(e);\n return false;\n } finally {\n this.Saving = false;\n this.cdr.markForCheck();\n }\n }\n\n // ── Editing ─────────────────────────────────────────────────────────────────────────────────\n\n /** Every change goes through here: one undo step (or one per run of typing into a field) and a fresh object for OnPush. */\n private mutate(fn: (d: LoginDesign) => void, coalesceKey?: string): void {\n const now = Date.now();\n const coalesce = !!coalesceKey && this.lastEdit?.key === coalesceKey && now - this.lastEdit.at < COALESCE_MS;\n if (!coalesce) this.pushHistory();\n this.lastEdit = coalesceKey ? { key: coalesceKey, at: now } : null;\n const next = JSON.parse(this.CurrentJson) as LoginDesign;\n fn(next);\n this.Design = next;\n this.changed();\n }\n\n /** What the inspector asks for, applied as one undoable step. */\n public ApplyEdit(e: LoginEdit): void {\n switch (e.Kind) {\n case 'Block':\n return this.editSelected((b) => { Object.assign(b, { [e.Field]: e.Value }); }, e.Field);\n case 'Link':\n return this.editSelected((b) => { if (b.Type === 'links' && b.Links[e.Index]) b.Links[e.Index][e.Field] = e.Value; }, `link${e.Index}:${e.Field}`);\n case 'AddLink':\n return this.editSelected((b) => { if (b.Type === 'links' && b.Links.length < LOGIN_LIMITS.Links) b.Links.push({ Label: '', Href: 'https://' }); });\n case 'RemoveLink':\n return this.editSelected((b) => { if (b.Type === 'links') b.Links.splice(e.Index, 1); });\n case 'Page':\n return this.mutate((d) => { Object.assign(d, { [e.Field]: e.Value }); });\n case 'Heading':\n return this.mutate((d) => { d.Heading = e.Value.trim() ? e.Value.slice(0, LOGIN_LIMITS.Heading) : null; }, 'heading');\n case 'Background':\n return this.editBackground(e.Field, e.Value);\n case 'Color':\n return this.mutate((d) => {\n const v = typeof e.Value === 'string' ? e.Value.trim() : '';\n if (v) d.Colors[e.Key] = v;\n else delete d.Colors[e.Key];\n }, `color:${e.Key}`);\n }\n }\n\n private editSelected(fn: (b: LoginBlock) => void, coalesceField?: string): void {\n const id = this.SelectedID;\n if (!id) return;\n this.mutate((d) => {\n const hit = LocateLoginBlock(d, id);\n if (hit) fn(d.Regions[hit.Region][hit.Index]);\n }, coalesceField ? `${id}:${coalesceField}` : undefined);\n }\n\n private editBackground(field: LoginBackgroundField, value: string | number | null): void {\n this.mutate((d) => {\n const bg = d.Background;\n if (field === 'Kind') {\n bg.Kind = value as LoginBackgroundKind;\n // A half-typed value would block saving from a field this kind no longer shows.\n if (bg.Color && !IsLoginHexColor(bg.Color)) bg.Color = null;\n if (bg.Color2 && !IsLoginHexColor(bg.Color2)) bg.Color2 = null;\n if (bg.Kind !== 'image' && bg.ImageURL && !IsSafeLoginImageURL(bg.ImageURL)) bg.ImageURL = null;\n // Start a color choice from the theme's own brand colors rather than an empty picker.\n const primary = IsLoginHexColor(this.seeds?.primary) ? this.seeds.primary : null;\n const accent = IsLoginHexColor(this.seeds?.accent) ? this.seeds.accent : primary;\n if ((bg.Kind === 'color' || bg.Kind === 'gradient') && !bg.Color) bg.Color = primary;\n if (bg.Kind === 'gradient' && !bg.Color2) bg.Color2 = accent;\n } else if (field === 'Overlay') {\n bg.Overlay = Math.max(0, Math.min(LOGIN_LIMITS.OverlayMax, Math.round(Number(value) || 0)));\n } else {\n bg[field] = typeof value === 'string' && value.trim() ? value.trim() : null;\n }\n }, `bg:${field}`);\n }\n\n private pushHistory(): void {\n this.undo.push(this.CurrentJson);\n if (this.undo.length > HISTORY_CAP) this.undo.shift();\n this.redo = [];\n }\n\n public Undo(): void {\n const prev = this.undo.pop();\n if (prev === undefined) return;\n this.redo.push(this.CurrentJson);\n this.restore(prev);\n }\n\n public Redo(): void {\n const next = this.redo.pop();\n if (next === undefined) return;\n this.undo.push(this.CurrentJson);\n this.restore(next);\n }\n\n /** A snapshot this editor took itself, so it comes back exactly as it was, half-typed values included. */\n private restore(json: string): void {\n this.Design = JSON.parse(json) as LoginDesign;\n this.lastEdit = null;\n if (this.SelectedID && !LocateLoginBlock(this.Design, this.SelectedID)) this.SelectedID = null;\n this.changed();\n }\n\n /** Ctrl/Cmd+Z and Shift+Ctrl/Cmd+Z while focus is in the studio, except in a field being typed in. */\n @HostListener('keydown', ['$event'])\n public OnKeydown(e: KeyboardEvent): void {\n const target = e.target as HTMLElement | null;\n if (target && (/^(INPUT|TEXTAREA|SELECT)$/.test(target.tagName) || target.isContentEditable)) return;\n if (!(e.metaKey || e.ctrlKey) || e.key.toLowerCase() !== 'z') return;\n e.preventDefault();\n if (e.shiftKey) this.Redo();\n else this.Undo();\n }\n\n // ── Blocks ──────────────────────────────────────────────────────────────────────────────────\n\n /** A click on the empty preview deselects, except the click that ends a drag. */\n public OnStageClick(): void {\n if (Date.now() - this.droppedAt < DROP_CLICK_MS) return;\n this.Select(null);\n }\n\n public OnDrop(e: MJLoginRegionDrop): void {\n this.droppedAt = Date.now();\n const to = e.To;\n if (typeof e.Item === 'string') {\n this.AddBlock(e.Item, to, e.CurrentIndex);\n return;\n }\n const from = LOGIN_REGIONS.find((r) => r === e.From);\n if (!from || (from === to && e.PreviousIndex === e.CurrentIndex)) return;\n if (from !== to && this.regionFull(to)) return;\n this.mutate((d) => {\n if (from === to) moveItemInArray(d.Regions[to], e.PreviousIndex, e.CurrentIndex);\n else transferArrayItem(d.Regions[from], d.Regions[to], e.PreviousIndex, e.CurrentIndex);\n });\n }\n\n /** The palette never accepts a drop: dragging a tile back onto it cancels. */\n public readonly NoEnter = (): boolean => false;\n\n /**\n * Add a block: dropped at a spot, or (clicked in the palette) just after the selected block, else at\n * the end of the selected surface's first region, else of the story panel.\n */\n public AddBlock(type: LoginBlockType, region?: LoginRegion, index?: number): void {\n const sel = !region && this.SelectedID ? LocateLoginBlock(this.Design, this.SelectedID) : null;\n const where: LoginRegion = region ?? sel?.Region ?? (this.Surface === 'Panel' ? 'PanelTop' : 'Banner');\n if (this.regionFull(where)) return;\n const at = index ?? (sel ? sel.Index + 1 : this.Design.Regions[where].length);\n const block = NewLoginBlock(type);\n this.SelectedID = block.ID;\n this.SelectedSurface = null;\n this.mutate((d) => d.Regions[where].splice(at, 0, block));\n }\n\n public OnCommand(c: MJLoginRegionCommand): void {\n const hit = LocateLoginBlock(this.Design, c.ID);\n if (!hit) return;\n const { Region: region, Index: index } = hit;\n switch (c.Kind) {\n case 'up':\n case 'down': {\n const to = index + (c.Kind === 'up' ? -1 : 1);\n if (to < 0 || to >= this.Design.Regions[region].length) return;\n this.mutate((d) => moveItemInArray(d.Regions[region], index, to));\n break;\n }\n case 'duplicate': {\n if (this.regionFull(region)) return;\n const copy = CloneLoginBlock(this.Design.Regions[region][index]);\n this.SelectedID = copy.ID;\n this.mutate((d) => d.Regions[region].splice(index + 1, 0, copy));\n break;\n }\n case 'delete':\n this.SelectedID = null;\n this.mutate((d) => d.Regions[region].splice(index, 1));\n break;\n }\n }\n\n /** True, with a notice, when a region has no room for another block. */\n private regionFull(region: LoginRegion): boolean {\n if (this.Design.Regions[region].length < LOGIN_LIMITS.BlocksPerRegion) return false;\n this.NoticeMessage = `${LOGIN_REGION_LABEL[region]} already has ${LOGIN_LIMITS.BlocksPerRegion} blocks.`;\n this.cdr.markForCheck();\n return true;\n }\n\n public Select(id: string | null): void {\n this.SelectedID = id;\n this.SelectedSurface = null;\n this.publishAgentContext();\n this.cdr.markForCheck();\n }\n\n /** Select the story panel or the sign-in column (a click on it in the preview, or the inspector's buttons). */\n public SelectSurface(surface: LoginSurface, e?: Event): void {\n if (e) {\n e.stopPropagation();\n if (Date.now() - this.droppedAt < DROP_CLICK_MS) return;\n }\n this.SelectedID = null;\n this.SelectedSurface = surface;\n this.publishAgentContext();\n this.cdr.markForCheck();\n }\n\n public SetDevice(device: string): void {\n this.Device = device === 'mobile' ? 'mobile' : 'desktop';\n this.cdr.markForCheck();\n }\n\n // ── Preview, agent, shell ───────────────────────────────────────────────────────────────────\n\n /** After any change: the problems alert, the preview, the agent's view, the shell's edit state, and the view. */\n private changed(): void {\n // A save refused for problems re-checks as you edit (or undo), and its alert goes once they are fixed.\n if (this.problems.length) {\n this.problems = LoginDesignProblems(this.Design);\n this.ErrorMessage = this.problems.length ? this.problemsMessage() : null;\n }\n // The frame wears the DEFAULT theme's look, which is not necessarily the viewer's, as the live login screen does.\n const dark = this.doc.documentElement.getAttribute('data-theme') === 'dark';\n this.FrameStyle = { ...LoginThemeTokens(this.seeds, dark), ...LoginDesignTokens(this.Design) };\n this.publishAgentContext();\n if (this.Unsaved !== this.reportedEditing) {\n this.reportedEditing = this.Unsaved;\n this.NotifyEditModeChanged(this.reportedEditing);\n }\n this.cdr.markForCheck();\n }\n\n private publishAgentContext(): void {\n this.navigationService.SetAgentContext(this, {\n Surface: 'Login Studio',\n ThemeName: this.Theme?.Name ?? null,\n Status: this.StatusLabel,\n Layout: this.Design.Layout,\n BlockCounts: Object.fromEntries(LOGIN_REGIONS.map((r) => [r, this.Design.Regions[r].length])),\n Selected: this.Selected ? LOGIN_BLOCK_META[this.Selected.Type].Label : this.Surface,\n Problems: LoginDesignProblems(this.Design),\n });\n }\n\n private registerAgentTools(): void {\n this.navigationService.SetAgentClientTools(this, [\n {\n Name: 'GetSignInPageDesign',\n Description: 'Return the sign-in page design being edited (JSON), its status, and anything that would stop it being saved.',\n ParameterSchema: { type: 'object', properties: {} },\n Handler: async () => ({\n Success: true,\n Data: { Status: this.StatusLabel, Design: this.Design, Problems: LoginDesignProblems(this.Design) },\n }),\n },\n ]);\n }\n}\n","<mj-page-layout>\n <mj-page-header Title=\"Sign-in Page\" Icon=\"fa-solid fa-right-to-bracket\"\n [Subtitle]=\"Theme ? 'What visitors see before they sign in. Designed on the default theme, ' + Theme.Name + '.' : 'What visitors see before they sign in.'\">\n <!-- One root element per block: a control-flow block is projected by its single root's selector. -->\n @if (Theme && !Loading && StatusVariant) {\n <mj-stat-badge meta [Label]=\"StatusLabel\" [Variant]=\"StatusVariant\"></mj-stat-badge>\n }\n @if (Theme && !Loading) {\n <div actions class=\"ls__actions\">\n <button type=\"button\" mjButton Variant=\"icon\" Size=\"sm\" (click)=\"Undo()\" [disabled]=\"!CanUndo\" title=\"Undo (Ctrl/Cmd Z)\" AriaLabel=\"Undo\"><i class=\"fa-solid fa-rotate-left\"></i></button>\n <button type=\"button\" mjButton Variant=\"icon\" Size=\"sm\" (click)=\"Redo()\" [disabled]=\"!CanRedo\" title=\"Redo (Shift Ctrl/Cmd Z)\" AriaLabel=\"Redo\"><i class=\"fa-solid fa-rotate-right\"></i></button>\n <button type=\"button\" mjButton Variant=\"outline\" Size=\"sm\" (click)=\"Discard()\" [disabled]=\"!Unsaved || Saving\">Discard changes</button>\n <button type=\"button\" mjButton Variant=\"outline\" Size=\"sm\" (click)=\"SaveDraft()\" [disabled]=\"Saving || !Unsaved\">\n <i class=\"fa-regular fa-floppy-disk\"></i> Save draft\n </button>\n <button type=\"button\" mjButton Variant=\"primary\" Size=\"sm\" (click)=\"Publish()\"\n [disabled]=\"Saving || (!Unsaved && !Unpublished && IsLive)\" title=\"Save and show this page to everyone signing in\">\n <i class=\"fa-solid fa-upload\"></i> Publish\n </button>\n </div>\n }\n </mj-page-header>\n\n <mj-page-body>\n @if (ErrorMessage) {\n <mj-alert class=\"ls__alert\" Variant=\"error\" [Message]=\"ErrorMessage\" Dismissible (Dismissed)=\"DismissError()\"></mj-alert>\n }\n @if (NoticeMessage) {\n <mj-alert class=\"ls__alert\" Variant=\"success\" [Message]=\"NoticeMessage\" Dismissible (Dismissed)=\"DismissNotice()\"></mj-alert>\n }\n\n @if (Loading) {\n <mj-loading Text=\"Reading the sign-in page...\" Size=\"medium\"></mj-loading>\n } @else if (!Theme) {\n <mj-empty-state Icon=\"fa-solid fa-palette\" Title=\"No default theme\"\n Message=\"The sign-in page is designed on the default theme. Set one in Theme Studio, under Manage Themes.\"></mj-empty-state>\n } @else {\n <div class=\"ls\" cdkDropListGroup>\n <!-- PALETTE -->\n <aside class=\"ls__palette\" aria-label=\"Blocks\">\n <h2 class=\"ls__heading\">Blocks</h2>\n <p class=\"ls__hint\">Drag a block onto the page, or click one to add it after the selected block.</p>\n <div class=\"ls__palette-list\" cdkDropList [cdkDropListData]=\"PaletteListID\" cdkDropListSortingDisabled\n [cdkDropListEnterPredicate]=\"NoEnter\">\n @for (t of Palette; track t.Type) {\n <button type=\"button\" mjButton Variant=\"outline\" Size=\"sm\" class=\"ls__tile\" cdkDrag [cdkDragData]=\"t.Type\" (click)=\"AddBlock(t.Type)\" [title]=\"t.Hint\">\n <i [class]=\"t.Icon\" aria-hidden=\"true\"></i>\n <span>{{ t.Label }}</span>\n </button>\n }\n </div>\n </aside>\n\n <!-- PREVIEW -->\n <section class=\"ls__stage\" (click)=\"OnStageClick()\" aria-label=\"Preview\">\n <div class=\"ls__stage-bar\" (click)=\"$event.stopPropagation()\">\n <mj-view-toggle role=\"group\" aria-label=\"Preview size\" [Options]=\"DeviceOptions\" [ActiveKey]=\"Device\" (KeyChange)=\"SetDevice($event)\"></mj-view-toggle>\n <span class=\"ls__hint\">The sign-in button is a stand-in. The real one opens your sign-in provider.</span>\n </div>\n\n <div class=\"ls__frame\" [class.ls__frame--phone]=\"Stacked\" [style]=\"FrameStyle\">\n <!-- Clicking the page selects what was clicked: a block (it stops the click), the sign-in column,\n or else the story panel, which in the centered layout is the whole background. -->\n <div class=\"lp\" [class.lp--reverse]=\"Design.Layout === 'split-reverse'\" [class.lp--centered]=\"Design.Layout === 'centered'\"\n [class.lp--stacked]=\"Stacked\" [class.lp--surface-on]=\"Surface === 'Banner' && Design.Layout === 'centered'\"\n (click)=\"SelectSurface('Banner', $event)\">\n <div class=\"lp__banner\" [class.lp__banner--center]=\"Design.Alignment === 'center' || Stacked\"\n [class.lp__surface-on]=\"Surface === 'Banner' && Design.Layout !== 'centered'\">\n <div class=\"lp__brand\">\n <span class=\"lp__region-label\">{{ RegionLabel.Banner }}</span>\n <mj-login-region Region=\"Banner\" [Blocks]=\"Design.Regions.Banner\" [Logos]=\"Logos\" [BrandName]=\"Theme.Name\"\n [Stacked]=\"Stacked\" [Center]=\"Design.Alignment === 'center' || Stacked\" [Editable]=\"true\"\n [SelectedID]=\"SelectedID\"\n (Dropped)=\"OnDrop($event)\" (SelectRequested)=\"Select($event)\" (CommandRequested)=\"OnCommand($event)\"></mj-login-region>\n @if (!Design.Regions.Banner.length) {\n <p class=\"lp__default-note\">Empty: visitors see the stock logo and \"Welcome back\" here.</p>\n }\n </div>\n </div>\n <div class=\"lp__panel\" [class.lp__surface-on]=\"Surface === 'Panel'\" (click)=\"SelectSurface('Panel', $event)\">\n <div class=\"lp__stack\">\n <span class=\"lp__region-label\">{{ RegionLabel.PanelTop }}</span>\n <mj-login-region Region=\"PanelTop\" [Blocks]=\"Design.Regions.PanelTop\" [Logos]=\"Logos\" [BrandName]=\"Theme.Name\"\n [Stacked]=\"Stacked\" [Editable]=\"true\" [SelectedID]=\"SelectedID\"\n (Dropped)=\"OnDrop($event)\" (SelectRequested)=\"Select($event)\" (CommandRequested)=\"OnCommand($event)\"></mj-login-region>\n <div class=\"lp__picker\" aria-hidden=\"true\">\n @if (Design.Heading) {\n <span class=\"lp__heading\">{{ Design.Heading }}</span>\n }\n <span class=\"lp__signin\">Log in</span>\n </div>\n <span class=\"lp__region-label\">{{ RegionLabel.PanelBottom }}</span>\n <mj-login-region Region=\"PanelBottom\" [Blocks]=\"Design.Regions.PanelBottom\" [Logos]=\"Logos\" [BrandName]=\"Theme.Name\"\n [Stacked]=\"Stacked\" [Editable]=\"true\" [SelectedID]=\"SelectedID\"\n (Dropped)=\"OnDrop($event)\" (SelectRequested)=\"Select($event)\" (CommandRequested)=\"OnCommand($event)\"></mj-login-region>\n </div>\n </div>\n </div>\n </div>\n </section>\n\n <!-- INSPECTOR -->\n <aside class=\"ls__side\" aria-label=\"Settings\">\n <div class=\"ls__side-head\">\n <i [class]=\"SideIcon\" aria-hidden=\"true\"></i>\n <h2 class=\"ls__side-title\">{{ SideTitle }}</h2>\n @if (Selected || Surface) {\n <button type=\"button\" mjButton Variant=\"icon\" Size=\"sm\" (click)=\"Select(null)\" title=\"Page settings\" AriaLabel=\"Back to page settings\">\n <i class=\"fa-solid fa-table-columns\"></i>\n </button>\n }\n </div>\n <mj-login-studio-inspector [Design]=\"Design\" [Selected]=\"Selected\" [SelectedRegion]=\"SelectedRegion\" [Surface]=\"Surface\"\n [CanReset]=\"IsLive || Unpublished\" [Saving]=\"Saving\"\n (EditRequested)=\"ApplyEdit($event)\" (CommandRequested)=\"OnCommand($event)\"\n (StockPageRequested)=\"UseStockPage()\" (SurfaceSelectRequested)=\"SelectSurface($event)\"></mj-login-studio-inspector>\n </aside>\n </div>\n }\n </mj-page-body>\n</mj-page-layout>\n"]}
@@ -5,7 +5,11 @@ import { PSProcessRunRow } from '../predictive-studio.view-models';
5
5
  import { StatusVariant } from '../production-distribution';
6
6
  import * as i0 from "@angular/core";
7
7
  /** A model's deployment state, derived purely from cached bindings + Record Processes. */
8
- type DeployState = 'bound' | 'scheduled' | 'idle';
8
+ /**
9
+ * `needs-training` overrides the others: a model with no trained artifact can't score, so it is
10
+ * never shown as Bound/Scheduled (which would promise results a run can't deliver).
11
+ */
12
+ type DeployState = 'needs-training' | 'bound' | 'scheduled' | 'idle';
9
13
  /** One scoring binding shown in a model's deployment detail. */
10
14
  interface BindingVM {
11
15
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ps-production.component.d.ts","sourceRoot":"","sources":["../../../src/PredictiveStudio/components/ps-production.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ps-production.component.d.ts","sourceRoot":"","sources":["../../../src/PredictiveStudio/components/ps-production.component.ts"],"names":[],"mappings":"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"}