@xxmachina/components 19.24.1 → 19.26.0

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 (329) hide show
  1. package/fesm2022/xxmachina-components-extras-flow.mjs +176 -94
  2. package/fesm2022/xxmachina-components-extras-flow.mjs.map +1 -1
  3. package/fesm2022/xxmachina-components-features-command.mjs +16 -16
  4. package/fesm2022/xxmachina-components-features-command.mjs.map +1 -1
  5. package/fesm2022/xxmachina-components-features-query.mjs +15 -15
  6. package/fesm2022/xxmachina-components-features-query.mjs.map +1 -1
  7. package/fesm2022/xxmachina-components-groups-command-form.mjs +6 -6
  8. package/fesm2022/xxmachina-components-groups-command-form.mjs.map +1 -1
  9. package/fesm2022/xxmachina-components-groups-query-form.mjs +11 -11
  10. package/fesm2022/xxmachina-components-groups-query-form.mjs.map +1 -1
  11. package/fesm2022/xxmachina-components-molecules-calendar-paginator.mjs +7 -7
  12. package/fesm2022/xxmachina-components-molecules-calendar-paginator.mjs.map +1 -1
  13. package/fesm2022/xxmachina-components-molecules-daily-cell.mjs +41 -35
  14. package/fesm2022/xxmachina-components-molecules-daily-cell.mjs.map +1 -1
  15. package/fesm2022/xxmachina-components-molecules-inline-edit-field.mjs +12 -12
  16. package/fesm2022/xxmachina-components-molecules-inline-edit-field.mjs.map +1 -1
  17. package/fesm2022/xxmachina-components-molecules-weekly-header.mjs +16 -16
  18. package/fesm2022/xxmachina-components-molecules-weekly-header.mjs.map +1 -1
  19. package/fesm2022/xxmachina-components-organisms-calendar-section.mjs +40 -41
  20. package/fesm2022/xxmachina-components-organisms-calendar-section.mjs.map +1 -1
  21. package/fesm2022/xxmachina-components-organisms-event-input-section.mjs +8 -10
  22. package/fesm2022/xxmachina-components-organisms-event-input-section.mjs.map +1 -1
  23. package/fesm2022/xxmachina-components-organisms-terminal-input-section.mjs +26 -16
  24. package/fesm2022/xxmachina-components-organisms-terminal-input-section.mjs.map +1 -1
  25. package/fesm2022/xxmachina-components-organisms-video-trimmer-section.mjs +12 -12
  26. package/fesm2022/xxmachina-components-organisms-video-trimmer-section.mjs.map +1 -1
  27. package/fesm2022/xxmachina-components-organisms-xterm.mjs +29 -21
  28. package/fesm2022/xxmachina-components-organisms-xterm.mjs.map +1 -1
  29. package/fesm2022/xxmachina-components-pages-command-harness.mjs.map +1 -1
  30. package/fesm2022/xxmachina-components-pages-command.mjs +26 -26
  31. package/fesm2022/xxmachina-components-pages-command.mjs.map +1 -1
  32. package/fesm2022/xxmachina-components-pages-query-v2.mjs +27 -28
  33. package/fesm2022/xxmachina-components-pages-query-v2.mjs.map +1 -1
  34. package/fesm2022/xxmachina-components-pages-query.mjs +46 -46
  35. package/fesm2022/xxmachina-components-pages-query.mjs.map +1 -1
  36. package/fesm2022/xxmachina-components-pages-thread.mjs +14 -14
  37. package/fesm2022/xxmachina-components-pages-thread.mjs.map +1 -1
  38. package/fesm2022/xxmachina-components-routes-commands-command.routes-CSwIdXZg.mjs.map +1 -1
  39. package/fesm2022/xxmachina-components-routes-commands-pages.routes-j2xVop4W.mjs.map +1 -1
  40. package/fesm2022/xxmachina-components-routes-commands.mjs.map +1 -1
  41. package/fesm2022/xxmachina-components-routes-pages.mjs.map +1 -1
  42. package/fesm2022/xxmachina-components-routes-preloading.mjs +3 -3
  43. package/fesm2022/xxmachina-components-routes-preloading.mjs.map +1 -1
  44. package/fesm2022/xxmachina-components-routes-queries-pages.routes-CfrglCIL.mjs.map +1 -1
  45. package/fesm2022/xxmachina-components-routes-queries.mjs +1 -1
  46. package/fesm2022/xxmachina-components-routes-queries.mjs.map +1 -1
  47. package/fesm2022/xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs.map +1 -1
  48. package/fesm2022/xxmachina-components-routes-query.mjs.map +1 -1
  49. package/fesm2022/{xxmachina-components-routes-resources-pages.routes-CzjQOxwT.mjs → xxmachina-components-routes-resources-pages.routes-CRXxavHb.mjs} +2 -2
  50. package/fesm2022/xxmachina-components-routes-resources-pages.routes-CRXxavHb.mjs.map +1 -0
  51. package/fesm2022/{xxmachina-components-routes-resources-resource.routes-C5KpB3KM.mjs → xxmachina-components-routes-resources-resource.routes-CkkmqB2_.mjs} +2 -2
  52. package/fesm2022/xxmachina-components-routes-resources-resource.routes-CkkmqB2_.mjs.map +1 -0
  53. package/fesm2022/xxmachina-components-routes-resources.mjs +1 -1
  54. package/fesm2022/xxmachina-components-routes-resources.mjs.map +1 -1
  55. package/fesm2022/xxmachina-components-routes-side-chat.mjs.map +1 -1
  56. package/fesm2022/xxmachina-components-routes-side.mjs.map +1 -1
  57. package/fesm2022/xxmachina-components-routes-transformer.mjs +6 -6
  58. package/fesm2022/xxmachina-components-routes-transformer.mjs.map +1 -1
  59. package/fesm2022/xxmachina-components-routes-transformers-pages.routes-02pVsNas.mjs.map +1 -1
  60. package/fesm2022/xxmachina-components-routes-transformers.mjs +1 -1
  61. package/fesm2022/xxmachina-components-routes-transformers.mjs.map +1 -1
  62. package/fesm2022/xxmachina-components-routes.mjs.map +1 -1
  63. package/fesm2022/xxmachina-components-services-app.mjs +3 -3
  64. package/fesm2022/xxmachina-components-services-app.mjs.map +1 -1
  65. package/fesm2022/xxmachina-components-services-assistant.mjs +3 -3
  66. package/fesm2022/xxmachina-components-services-assistant.mjs.map +1 -1
  67. package/fesm2022/xxmachina-components-services-command.mjs +4 -4
  68. package/fesm2022/xxmachina-components-services-command.mjs.map +1 -1
  69. package/fesm2022/xxmachina-components-services-context.mjs +4 -4
  70. package/fesm2022/xxmachina-components-services-context.mjs.map +1 -1
  71. package/fesm2022/xxmachina-components-services-contract.mjs +3 -3
  72. package/fesm2022/xxmachina-components-services-contract.mjs.map +1 -1
  73. package/fesm2022/xxmachina-components-services-debug.mjs +4 -4
  74. package/fesm2022/xxmachina-components-services-debug.mjs.map +1 -1
  75. package/fesm2022/xxmachina-components-services-forms-query.mjs +3 -3
  76. package/fesm2022/xxmachina-components-services-forms-query.mjs.map +1 -1
  77. package/fesm2022/xxmachina-components-services-forms-schedule.mjs +3 -3
  78. package/fesm2022/xxmachina-components-services-forms-schedule.mjs.map +1 -1
  79. package/fesm2022/xxmachina-components-services-forms-variables.mjs +3 -3
  80. package/fesm2022/xxmachina-components-services-forms-variables.mjs.map +1 -1
  81. package/fesm2022/xxmachina-components-services-graphql.mjs +3 -3
  82. package/fesm2022/xxmachina-components-services-graphql.mjs.map +1 -1
  83. package/fesm2022/xxmachina-components-services-invoice.mjs +3 -3
  84. package/fesm2022/xxmachina-components-services-invoice.mjs.map +1 -1
  85. package/fesm2022/xxmachina-components-services-json-schema.mjs +3 -3
  86. package/fesm2022/xxmachina-components-services-json-schema.mjs.map +1 -1
  87. package/fesm2022/xxmachina-components-services-link.mjs +3 -3
  88. package/fesm2022/xxmachina-components-services-link.mjs.map +1 -1
  89. package/fesm2022/xxmachina-components-services-message.mjs +5 -5
  90. package/fesm2022/xxmachina-components-services-message.mjs.map +1 -1
  91. package/fesm2022/xxmachina-components-services-openai.mjs +9 -9
  92. package/fesm2022/xxmachina-components-services-openai.mjs.map +1 -1
  93. package/fesm2022/xxmachina-components-services-openapi.mjs +3 -3
  94. package/fesm2022/xxmachina-components-services-openapi.mjs.map +1 -1
  95. package/fesm2022/xxmachina-components-services-order.mjs +3 -3
  96. package/fesm2022/xxmachina-components-services-order.mjs.map +1 -1
  97. package/fesm2022/xxmachina-components-services-partner.mjs +3 -3
  98. package/fesm2022/xxmachina-components-services-partner.mjs.map +1 -1
  99. package/fesm2022/xxmachina-components-services-query.mjs +3 -3
  100. package/fesm2022/xxmachina-components-services-query.mjs.map +1 -1
  101. package/fesm2022/xxmachina-components-services-recording.mjs +7 -7
  102. package/fesm2022/xxmachina-components-services-recording.mjs.map +1 -1
  103. package/fesm2022/xxmachina-components-services-thread.mjs +3 -3
  104. package/fesm2022/xxmachina-components-services-thread.mjs.map +1 -1
  105. package/fesm2022/xxmachina-components-services-transformer.mjs +3 -3
  106. package/fesm2022/xxmachina-components-services-transformer.mjs.map +1 -1
  107. package/fesm2022/xxmachina-components-services-youtube.mjs +3 -3
  108. package/fesm2022/xxmachina-components-services-youtube.mjs.map +1 -1
  109. package/fesm2022/xxmachina-components-templates-agent.mjs +19 -21
  110. package/fesm2022/xxmachina-components-templates-agent.mjs.map +1 -1
  111. package/fesm2022/xxmachina-components-templates-background.mjs +9 -9
  112. package/fesm2022/xxmachina-components-templates-background.mjs.map +1 -1
  113. package/fesm2022/xxmachina-components-templates-flow-nodes-group.mjs +5 -5
  114. package/fesm2022/xxmachina-components-templates-flow-nodes-group.mjs.map +1 -1
  115. package/fesm2022/xxmachina-components-templates-flow-nodes-issue.mjs +6 -6
  116. package/fesm2022/xxmachina-components-templates-flow-nodes-issue.mjs.map +1 -1
  117. package/fesm2022/xxmachina-components-templates-flow-nodes-task.mjs +5 -6
  118. package/fesm2022/xxmachina-components-templates-flow-nodes-task.mjs.map +1 -1
  119. package/fesm2022/xxmachina-components-templates-flow.mjs +30 -27
  120. package/fesm2022/xxmachina-components-templates-flow.mjs.map +1 -1
  121. package/fesm2022/xxmachina-components-templates-invoice-iframe.mjs +5 -7
  122. package/fesm2022/xxmachina-components-templates-invoice-iframe.mjs.map +1 -1
  123. package/fesm2022/xxmachina-components-templates-scheduler.mjs +3 -3
  124. package/fesm2022/xxmachina-components-templates-scheduler.mjs.map +1 -1
  125. package/fesm2022/xxmachina-components-templates-video.mjs +16 -16
  126. package/fesm2022/xxmachina-components-templates-video.mjs.map +1 -1
  127. package/fesm2022/xxmachina-components-validators-query.mjs.map +1 -1
  128. package/fesm2022/xxmachina-components.mjs +43 -25
  129. package/fesm2022/xxmachina-components.mjs.map +1 -1
  130. package/package.json +93 -93
  131. package/{extras/flow/index.d.ts → types/xxmachina-components-extras-flow.d.ts} +10 -2
  132. package/types/xxmachina-components-extras-flow.d.ts.map +1 -0
  133. package/{features/command/index.d.ts → types/xxmachina-components-features-command.d.ts} +1 -1
  134. package/types/xxmachina-components-features-command.d.ts.map +1 -0
  135. package/{features/query/index.d.ts → types/xxmachina-components-features-query.d.ts} +1 -1
  136. package/types/xxmachina-components-features-query.d.ts.map +1 -0
  137. package/{groups/command-form/index.d.ts → types/xxmachina-components-groups-command-form.d.ts} +1 -1
  138. package/types/xxmachina-components-groups-command-form.d.ts.map +1 -0
  139. package/{groups/query-form/index.d.ts → types/xxmachina-components-groups-query-form.d.ts} +1 -1
  140. package/types/xxmachina-components-groups-query-form.d.ts.map +1 -0
  141. package/{molecules/calendar-paginator/index.d.ts → types/xxmachina-components-molecules-calendar-paginator.d.ts} +1 -1
  142. package/types/xxmachina-components-molecules-calendar-paginator.d.ts.map +1 -0
  143. package/{molecules/daily-cell/index.d.ts → types/xxmachina-components-molecules-daily-cell.d.ts} +1 -1
  144. package/types/xxmachina-components-molecules-daily-cell.d.ts.map +1 -0
  145. package/{molecules/inline-edit-field/index.d.ts → types/xxmachina-components-molecules-inline-edit-field.d.ts} +1 -1
  146. package/types/xxmachina-components-molecules-inline-edit-field.d.ts.map +1 -0
  147. package/{molecules/weekly-header/index.d.ts → types/xxmachina-components-molecules-weekly-header.d.ts} +1 -1
  148. package/types/xxmachina-components-molecules-weekly-header.d.ts.map +1 -0
  149. package/{organisms/calendar-section/index.d.ts → types/xxmachina-components-organisms-calendar-section.d.ts} +1 -1
  150. package/types/xxmachina-components-organisms-calendar-section.d.ts.map +1 -0
  151. package/{organisms/event-input-section/index.d.ts → types/xxmachina-components-organisms-event-input-section.d.ts} +1 -1
  152. package/types/xxmachina-components-organisms-event-input-section.d.ts.map +1 -0
  153. package/{organisms/terminal-input-section/index.d.ts → types/xxmachina-components-organisms-terminal-input-section.d.ts} +2 -1
  154. package/types/xxmachina-components-organisms-terminal-input-section.d.ts.map +1 -0
  155. package/{organisms/video-trimmer-section/index.d.ts → types/xxmachina-components-organisms-video-trimmer-section.d.ts} +1 -1
  156. package/types/xxmachina-components-organisms-video-trimmer-section.d.ts.map +1 -0
  157. package/{organisms/xterm/index.d.ts → types/xxmachina-components-organisms-xterm.d.ts} +3 -1
  158. package/types/xxmachina-components-organisms-xterm.d.ts.map +1 -0
  159. package/{pages/command/harness/index.d.ts → types/xxmachina-components-pages-command-harness.d.ts} +1 -1
  160. package/types/xxmachina-components-pages-command-harness.d.ts.map +1 -0
  161. package/{pages/command/index.d.ts → types/xxmachina-components-pages-command.d.ts} +1 -1
  162. package/types/xxmachina-components-pages-command.d.ts.map +1 -0
  163. package/{pages/query-v2/index.d.ts → types/xxmachina-components-pages-query-v2.d.ts} +3 -3
  164. package/types/xxmachina-components-pages-query-v2.d.ts.map +1 -0
  165. package/{pages/query/index.d.ts → types/xxmachina-components-pages-query.d.ts} +3 -3
  166. package/types/xxmachina-components-pages-query.d.ts.map +1 -0
  167. package/{pages/thread/index.d.ts → types/xxmachina-components-pages-thread.d.ts} +1 -1
  168. package/types/xxmachina-components-pages-thread.d.ts.map +1 -0
  169. package/types/xxmachina-components-routes-commands.d.ts +6 -0
  170. package/types/xxmachina-components-routes-commands.d.ts.map +1 -0
  171. package/{routes/commands/index.d.ts → types/xxmachina-components-routes-pages.d.ts} +1 -1
  172. package/types/xxmachina-components-routes-pages.d.ts.map +1 -0
  173. package/{routes/preloading/index.d.ts → types/xxmachina-components-routes-preloading.d.ts} +1 -1
  174. package/types/xxmachina-components-routes-preloading.d.ts.map +1 -0
  175. package/{routes/pages/index.d.ts → types/xxmachina-components-routes-queries.d.ts} +1 -1
  176. package/types/xxmachina-components-routes-queries.d.ts.map +1 -0
  177. package/{routes/query/index.d.ts → types/xxmachina-components-routes-query.d.ts} +1 -1
  178. package/types/xxmachina-components-routes-query.d.ts.map +1 -0
  179. package/types/xxmachina-components-routes-resources.d.ts +6 -0
  180. package/types/xxmachina-components-routes-resources.d.ts.map +1 -0
  181. package/types/xxmachina-components-routes-side-chat.d.ts +6 -0
  182. package/types/xxmachina-components-routes-side-chat.d.ts.map +1 -0
  183. package/{routes/queries/index.d.ts → types/xxmachina-components-routes-side.d.ts} +1 -1
  184. package/types/xxmachina-components-routes-side.d.ts.map +1 -0
  185. package/types/xxmachina-components-routes-transformer.d.ts +6 -0
  186. package/types/xxmachina-components-routes-transformer.d.ts.map +1 -0
  187. package/types/xxmachina-components-routes-transformers.d.ts +6 -0
  188. package/types/xxmachina-components-routes-transformers.d.ts.map +1 -0
  189. package/{routes/index.d.ts → types/xxmachina-components-routes.d.ts} +1 -1
  190. package/types/xxmachina-components-routes.d.ts.map +1 -0
  191. package/{services/app/index.d.ts → types/xxmachina-components-services-app.d.ts} +1 -1
  192. package/types/xxmachina-components-services-app.d.ts.map +1 -0
  193. package/{services/assistant/index.d.ts → types/xxmachina-components-services-assistant.d.ts} +1 -1
  194. package/types/xxmachina-components-services-assistant.d.ts.map +1 -0
  195. package/{services/command/index.d.ts → types/xxmachina-components-services-command.d.ts} +1 -1
  196. package/types/xxmachina-components-services-command.d.ts.map +1 -0
  197. package/{services/context/index.d.ts → types/xxmachina-components-services-context.d.ts} +1 -1
  198. package/types/xxmachina-components-services-context.d.ts.map +1 -0
  199. package/{services/contract/index.d.ts → types/xxmachina-components-services-contract.d.ts} +1 -1
  200. package/types/xxmachina-components-services-contract.d.ts.map +1 -0
  201. package/{services/debug/index.d.ts → types/xxmachina-components-services-debug.d.ts} +1 -1
  202. package/types/xxmachina-components-services-debug.d.ts.map +1 -0
  203. package/{services/forms/query/index.d.ts → types/xxmachina-components-services-forms-query.d.ts} +1 -1
  204. package/types/xxmachina-components-services-forms-query.d.ts.map +1 -0
  205. package/{services/forms/schedule/index.d.ts → types/xxmachina-components-services-forms-schedule.d.ts} +1 -1
  206. package/types/xxmachina-components-services-forms-schedule.d.ts.map +1 -0
  207. package/{services/forms/variables/index.d.ts → types/xxmachina-components-services-forms-variables.d.ts} +1 -1
  208. package/types/xxmachina-components-services-forms-variables.d.ts.map +1 -0
  209. package/{services/graphql/index.d.ts → types/xxmachina-components-services-graphql.d.ts} +1 -1
  210. package/types/xxmachina-components-services-graphql.d.ts.map +1 -0
  211. package/{services/invoice/index.d.ts → types/xxmachina-components-services-invoice.d.ts} +1 -1
  212. package/types/xxmachina-components-services-invoice.d.ts.map +1 -0
  213. package/{services/json-schema/index.d.ts → types/xxmachina-components-services-json-schema.d.ts} +1 -1
  214. package/types/xxmachina-components-services-json-schema.d.ts.map +1 -0
  215. package/{services/link/index.d.ts → types/xxmachina-components-services-link.d.ts} +1 -1
  216. package/types/xxmachina-components-services-link.d.ts.map +1 -0
  217. package/{services/message/index.d.ts → types/xxmachina-components-services-message.d.ts} +1 -1
  218. package/types/xxmachina-components-services-message.d.ts.map +1 -0
  219. package/{services/openai/index.d.ts → types/xxmachina-components-services-openai.d.ts} +1 -1
  220. package/types/xxmachina-components-services-openai.d.ts.map +1 -0
  221. package/{services/openapi/index.d.ts → types/xxmachina-components-services-openapi.d.ts} +1 -1
  222. package/types/xxmachina-components-services-openapi.d.ts.map +1 -0
  223. package/{services/order/index.d.ts → types/xxmachina-components-services-order.d.ts} +1 -1
  224. package/types/xxmachina-components-services-order.d.ts.map +1 -0
  225. package/{services/partner/index.d.ts → types/xxmachina-components-services-partner.d.ts} +1 -1
  226. package/types/xxmachina-components-services-partner.d.ts.map +1 -0
  227. package/{services/query/index.d.ts → types/xxmachina-components-services-query.d.ts} +1 -1
  228. package/types/xxmachina-components-services-query.d.ts.map +1 -0
  229. package/{services/recording/index.d.ts → types/xxmachina-components-services-recording.d.ts} +1 -1
  230. package/types/xxmachina-components-services-recording.d.ts.map +1 -0
  231. package/{services/thread/index.d.ts → types/xxmachina-components-services-thread.d.ts} +1 -1
  232. package/types/xxmachina-components-services-thread.d.ts.map +1 -0
  233. package/{services/transformer/index.d.ts → types/xxmachina-components-services-transformer.d.ts} +1 -1
  234. package/types/xxmachina-components-services-transformer.d.ts.map +1 -0
  235. package/{services/youtube/index.d.ts → types/xxmachina-components-services-youtube.d.ts} +1 -1
  236. package/types/xxmachina-components-services-youtube.d.ts.map +1 -0
  237. package/{templates/agent/index.d.ts → types/xxmachina-components-templates-agent.d.ts} +1 -1
  238. package/types/xxmachina-components-templates-agent.d.ts.map +1 -0
  239. package/{templates/background/index.d.ts → types/xxmachina-components-templates-background.d.ts} +1 -1
  240. package/types/xxmachina-components-templates-background.d.ts.map +1 -0
  241. package/{templates/flow/nodes/group/index.d.ts → types/xxmachina-components-templates-flow-nodes-group.d.ts} +1 -1
  242. package/types/xxmachina-components-templates-flow-nodes-group.d.ts.map +1 -0
  243. package/{templates/flow/nodes/issue/index.d.ts → types/xxmachina-components-templates-flow-nodes-issue.d.ts} +1 -1
  244. package/types/xxmachina-components-templates-flow-nodes-issue.d.ts.map +1 -0
  245. package/{templates/flow/nodes/task/index.d.ts → types/xxmachina-components-templates-flow-nodes-task.d.ts} +1 -1
  246. package/types/xxmachina-components-templates-flow-nodes-task.d.ts.map +1 -0
  247. package/{templates/flow/index.d.ts → types/xxmachina-components-templates-flow.d.ts} +7 -2
  248. package/types/xxmachina-components-templates-flow.d.ts.map +1 -0
  249. package/{templates/invoice-iframe/index.d.ts → types/xxmachina-components-templates-invoice-iframe.d.ts} +1 -1
  250. package/types/xxmachina-components-templates-invoice-iframe.d.ts.map +1 -0
  251. package/{templates/scheduler/index.d.ts → types/xxmachina-components-templates-scheduler.d.ts} +1 -1
  252. package/types/xxmachina-components-templates-scheduler.d.ts.map +1 -0
  253. package/{templates/video/index.d.ts → types/xxmachina-components-templates-video.d.ts} +1 -1
  254. package/types/xxmachina-components-templates-video.d.ts.map +1 -0
  255. package/{validators/query/index.d.ts → types/xxmachina-components-validators-query.d.ts} +1 -1
  256. package/types/xxmachina-components-validators-query.d.ts.map +1 -0
  257. package/{index.d.ts → types/xxmachina-components.d.ts} +1 -1
  258. package/types/xxmachina-components.d.ts.map +1 -0
  259. package/extras/flow/index.d.ts.map +0 -1
  260. package/features/command/index.d.ts.map +0 -1
  261. package/features/query/index.d.ts.map +0 -1
  262. package/fesm2022/xxmachina-components-routes-resources-pages.routes-CzjQOxwT.mjs.map +0 -1
  263. package/fesm2022/xxmachina-components-routes-resources-resource.routes-C5KpB3KM.mjs.map +0 -1
  264. package/groups/command-form/index.d.ts.map +0 -1
  265. package/groups/query-form/index.d.ts.map +0 -1
  266. package/index.d.ts.map +0 -1
  267. package/molecules/calendar-paginator/index.d.ts.map +0 -1
  268. package/molecules/daily-cell/index.d.ts.map +0 -1
  269. package/molecules/inline-edit-field/index.d.ts.map +0 -1
  270. package/molecules/weekly-header/index.d.ts.map +0 -1
  271. package/organisms/calendar-section/index.d.ts.map +0 -1
  272. package/organisms/event-input-section/index.d.ts.map +0 -1
  273. package/organisms/terminal-input-section/index.d.ts.map +0 -1
  274. package/organisms/video-trimmer-section/index.d.ts.map +0 -1
  275. package/organisms/xterm/index.d.ts.map +0 -1
  276. package/pages/command/harness/index.d.ts.map +0 -1
  277. package/pages/command/index.d.ts.map +0 -1
  278. package/pages/query/index.d.ts.map +0 -1
  279. package/pages/query-v2/index.d.ts.map +0 -1
  280. package/pages/thread/index.d.ts.map +0 -1
  281. package/routes/commands/index.d.ts.map +0 -1
  282. package/routes/index.d.ts.map +0 -1
  283. package/routes/pages/index.d.ts.map +0 -1
  284. package/routes/preloading/index.d.ts.map +0 -1
  285. package/routes/queries/index.d.ts.map +0 -1
  286. package/routes/query/index.d.ts.map +0 -1
  287. package/routes/resources/index.d.ts +0 -6
  288. package/routes/resources/index.d.ts.map +0 -1
  289. package/routes/side/chat/index.d.ts +0 -6
  290. package/routes/side/chat/index.d.ts.map +0 -1
  291. package/routes/side/index.d.ts +0 -6
  292. package/routes/side/index.d.ts.map +0 -1
  293. package/routes/transformer/index.d.ts +0 -6
  294. package/routes/transformer/index.d.ts.map +0 -1
  295. package/routes/transformers/index.d.ts +0 -6
  296. package/routes/transformers/index.d.ts.map +0 -1
  297. package/services/app/index.d.ts.map +0 -1
  298. package/services/assistant/index.d.ts.map +0 -1
  299. package/services/command/index.d.ts.map +0 -1
  300. package/services/context/index.d.ts.map +0 -1
  301. package/services/contract/index.d.ts.map +0 -1
  302. package/services/debug/index.d.ts.map +0 -1
  303. package/services/forms/query/index.d.ts.map +0 -1
  304. package/services/forms/schedule/index.d.ts.map +0 -1
  305. package/services/forms/variables/index.d.ts.map +0 -1
  306. package/services/graphql/index.d.ts.map +0 -1
  307. package/services/invoice/index.d.ts.map +0 -1
  308. package/services/json-schema/index.d.ts.map +0 -1
  309. package/services/link/index.d.ts.map +0 -1
  310. package/services/message/index.d.ts.map +0 -1
  311. package/services/openai/index.d.ts.map +0 -1
  312. package/services/openapi/index.d.ts.map +0 -1
  313. package/services/order/index.d.ts.map +0 -1
  314. package/services/partner/index.d.ts.map +0 -1
  315. package/services/query/index.d.ts.map +0 -1
  316. package/services/recording/index.d.ts.map +0 -1
  317. package/services/thread/index.d.ts.map +0 -1
  318. package/services/transformer/index.d.ts.map +0 -1
  319. package/services/youtube/index.d.ts.map +0 -1
  320. package/templates/agent/index.d.ts.map +0 -1
  321. package/templates/background/index.d.ts.map +0 -1
  322. package/templates/flow/index.d.ts.map +0 -1
  323. package/templates/flow/nodes/group/index.d.ts.map +0 -1
  324. package/templates/flow/nodes/issue/index.d.ts.map +0 -1
  325. package/templates/flow/nodes/task/index.d.ts.map +0 -1
  326. package/templates/invoice-iframe/index.d.ts.map +0 -1
  327. package/templates/scheduler/index.d.ts.map +0 -1
  328. package/templates/video/index.d.ts.map +0 -1
  329. package/validators/query/index.d.ts.map +0 -1
@@ -1,7 +1,6 @@
1
1
  import { __decorate, __metadata } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
3
  import { input, inject, signal, computed, effect, Directive, ChangeDetectionStrategy, Component } from '@angular/core';
4
- import { CommonModule, JsonPipe } from '@angular/common';
5
4
  import * as i2 from '@angular/forms';
6
5
  import { FormBuilder, ReactiveFormsModule } from '@angular/forms';
7
6
  import * as i3 from '@angular/material/expansion';
@@ -19,6 +18,7 @@ import { MatInputModule } from '@angular/material/input';
19
18
  import { RouterOutletFrame } from '@ng-atomic/components/frames/router-outlet';
20
19
  import { NavigatorOrganismStore } from '@ng-atomic/components/organisms/navigator';
21
20
  import { InjectableComponent, provideEffect, NgAtomicComponent, Effect } from '@ng-atomic/core';
21
+ import { JsonPipe } from '@angular/common';
22
22
  import { QueryFeature } from '@xxmachina/components/features/query';
23
23
  import { toSignal } from '@angular/core/rxjs-interop';
24
24
  import { injectRouteData } from '@ng-atomic/common/utils';
@@ -41,19 +41,19 @@ class QueryPageV2Store extends InjectableComponent {
41
41
  provideEffect(ListOrganism.ActionId.CLICK_ITEM, () => handler),
42
42
  ];
43
43
  }
44
- query = input(injectRouteData('query')());
45
- navEndActions = input(injectRouteData('navEndActions')());
46
- columnNames = input([]);
47
- presenter = input(injectRouteData('presenter')() ?? 'table');
44
+ query = input(injectRouteData('query')(), ...(ngDevMode ? [{ debugName: "query" }] : []));
45
+ navEndActions = input(injectRouteData('navEndActions')(), ...(ngDevMode ? [{ debugName: "navEndActions" }] : []));
46
+ columnNames = input([], ...(ngDevMode ? [{ debugName: "columnNames" }] : []));
47
+ presenter = input(injectRouteData('presenter')() ?? 'table', ...(ngDevMode ? [{ debugName: "presenter" }] : []));
48
48
  feature = inject(QueryFeature);
49
49
  fb = inject(FormBuilder);
50
50
  // Panel expansion states
51
- queryPanelExpanded = signal(true);
52
- transformerPanelExpanded = signal(false);
53
- presenterPanelExpanded = signal(true);
51
+ queryPanelExpanded = signal(true, ...(ngDevMode ? [{ debugName: "queryPanelExpanded" }] : []));
52
+ transformerPanelExpanded = signal(false, ...(ngDevMode ? [{ debugName: "transformerPanelExpanded" }] : []));
53
+ presenterPanelExpanded = signal(true, ...(ngDevMode ? [{ debugName: "presenterPanelExpanded" }] : []));
54
54
  // Count of open panels
55
55
  openPanelCount = computed(() => [this.queryPanelExpanded(), this.transformerPanelExpanded(), this.presenterPanelExpanded()]
56
- .filter(Boolean).length);
56
+ .filter(Boolean).length, ...(ngDevMode ? [{ debugName: "openPanelCount" }] : []));
57
57
  // Panel toggle methods (ensure at least one panel stays open)
58
58
  toggleQueryPanel(expanded) {
59
59
  if (!expanded && this.openPanelCount() <= 1)
@@ -71,22 +71,22 @@ class QueryPageV2Store extends InjectableComponent {
71
71
  this.presenterPanelExpanded.set(expanded);
72
72
  }
73
73
  // Query metadata
74
- title = computed(() => this.query()?.title || 'データ一覧');
75
- queryType = computed(() => this.query()?.type || 'graphql');
74
+ title = computed(() => this.query()?.title || 'データ一覧', ...(ngDevMode ? [{ debugName: "title" }] : []));
75
+ queryType = computed(() => this.query()?.type || 'graphql', ...(ngDevMode ? [{ debugName: "queryType" }] : []));
76
76
  // Loading state
77
77
  isLoading$ = this.feature.result$.pipe(map(() => false), startWith(true));
78
78
  isLoading = toSignal(this.isLoading$, { initialValue: true });
79
79
  // Result data
80
- result = computed(() => this.feature.result() ?? {});
81
- itemsMap = computed(() => buildItemsMapFromResult(this.result()));
80
+ result = computed(() => this.feature.result() ?? {}, ...(ngDevMode ? [{ debugName: "result" }] : []));
81
+ itemsMap = computed(() => buildItemsMapFromResult(this.result()), ...(ngDevMode ? [{ debugName: "itemsMap" }] : []));
82
82
  items = computed(() => {
83
83
  const map = this.itemsMap();
84
84
  const keys = Object.keys(map);
85
85
  if (keys.length === 0)
86
86
  return [];
87
87
  return map[keys[0]]?.items ?? [];
88
- });
89
- itemCount = computed(() => this.items().length);
88
+ }, ...(ngDevMode ? [{ debugName: "items" }] : []));
89
+ itemCount = computed(() => this.items().length, ...(ngDevMode ? [{ debugName: "itemCount" }] : []));
90
90
  // Table display columns - automatically determine from first item
91
91
  displayedColumns = computed(() => {
92
92
  const items = this.items();
@@ -96,7 +96,7 @@ class QueryPageV2Store extends InjectableComponent {
96
96
  if (!firstItem || typeof firstItem !== 'object')
97
97
  return [];
98
98
  return Object.keys(firstItem);
99
- });
99
+ }, ...(ngDevMode ? [{ debugName: "displayedColumns" }] : []));
100
100
  // Form for table columns
101
101
  tableForm = computed(() => {
102
102
  const columns = this.displayedColumns();
@@ -107,7 +107,7 @@ class QueryPageV2Store extends InjectableComponent {
107
107
  return this.fb.group({
108
108
  columns: this.fb.group({ map: this.fb.group(columnsMap) })
109
109
  });
110
- });
110
+ }, ...(ngDevMode ? [{ debugName: "tableForm" }] : []));
111
111
  // Column form field map for organisms-table
112
112
  columnFormFieldMap = computed(() => {
113
113
  const columns = this.displayedColumns();
@@ -116,7 +116,7 @@ class QueryPageV2Store extends InjectableComponent {
116
116
  fieldMap[col] = { type: 'text', label: col };
117
117
  });
118
118
  return fieldMap;
119
- });
119
+ }, ...(ngDevMode ? [{ debugName: "columnFormFieldMap" }] : []));
120
120
  constructor() {
121
121
  super();
122
122
  // queryをformにpatch
@@ -136,13 +136,13 @@ class QueryPageV2Store extends InjectableComponent {
136
136
  refresh() {
137
137
  this.feature.refresh();
138
138
  }
139
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryPageV2Store, deps: [], target: i0.ɵɵFactoryTarget.Directive });
140
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.5", type: QueryPageV2Store, isStandalone: true, inputs: { query: { classPropertyName: "query", publicName: "query", isSignal: true, isRequired: false, transformFunction: null }, navEndActions: { classPropertyName: "navEndActions", publicName: "navEndActions", isSignal: true, isRequired: false, transformFunction: null }, columnNames: { classPropertyName: "columnNames", publicName: "columnNames", isSignal: true, isRequired: false, transformFunction: null }, presenter: { classPropertyName: "presenter", publicName: "presenter", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
139
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: QueryPageV2Store, deps: [], target: i0.ɵɵFactoryTarget.Directive });
140
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.6", type: QueryPageV2Store, isStandalone: true, inputs: { query: { classPropertyName: "query", publicName: "query", isSignal: true, isRequired: false, transformFunction: null }, navEndActions: { classPropertyName: "navEndActions", publicName: "navEndActions", isSignal: true, isRequired: false, transformFunction: null }, columnNames: { classPropertyName: "columnNames", publicName: "columnNames", isSignal: true, isRequired: false, transformFunction: null }, presenter: { classPropertyName: "presenter", publicName: "presenter", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
141
141
  }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryPageV2Store, decorators: [{
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: QueryPageV2Store, decorators: [{
143
143
  type: Directive,
144
144
  args: [{ standalone: true }]
145
- }], ctorParameters: () => [] });
145
+ }], ctorParameters: () => [], propDecorators: { query: [{ type: i0.Input, args: [{ isSignal: true, alias: "query", required: false }] }], navEndActions: [{ type: i0.Input, args: [{ isSignal: true, alias: "navEndActions", required: false }] }], columnNames: [{ type: i0.Input, args: [{ isSignal: true, alias: "columnNames", required: false }] }], presenter: [{ type: i0.Input, args: [{ isSignal: true, alias: "presenter", required: false }] }] } });
146
146
 
147
147
  class QueryPageV2 extends NgAtomicComponent {
148
148
  static ActionId = ActionId;
@@ -150,10 +150,10 @@ class QueryPageV2 extends NgAtomicComponent {
150
150
  onItemClick(item) {
151
151
  this.dispatch({ id: ActionId.CLICK_ITEM, payload: item });
152
152
  }
153
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryPageV2, deps: null, target: i0.ɵɵFactoryTarget.Component });
154
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.5", type: QueryPageV2, isStandalone: true, selector: "pages-query-v2", providers: [
153
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: QueryPageV2, deps: null, target: i0.ɵɵFactoryTarget.Component });
154
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.6", type: QueryPageV2, isStandalone: true, selector: "pages-query-v2", providers: [
155
155
  QueryFeature.provideDefault(),
156
- ], usesInheritance: true, hostDirectives: [{ directive: QueryPageV2Store, inputs: ["query", "query", "navEndActions", "navEndActions", "columnNames", "columnNames", "presenter", "presenter"] }], ngImport: i0, template: "<frames-router-outlet>\n <organisms-navigator\n injectable\n [endActions]=\"store.navEndActions()\"\n (action)=\"dispatch($event)\"\n >\n <span class=\"title\">{{ store.title() }}</span>\n </organisms-navigator>\n\n <div class=\"qtp-container\">\n <!-- Query Panel -->\n <mat-expansion-panel class=\"config-panel query-panel\"\n [expanded]=\"store.queryPanelExpanded()\"\n (opened)=\"store.toggleQueryPanel(true)\"\n (closed)=\"store.toggleQueryPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>code</mat-icon>\n <span>Query</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n <span class=\"query-type\">{{ store.queryType() }}</span>\n <button mat-flat-button color=\"primary\" class=\"header-run-button\"\n (click)=\"store.refresh(); $event.stopPropagation()\">\n <mat-icon>play_arrow</mat-icon>Run\n </button>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"query-content\">\n <div class=\"query-form\" [formGroup]=\"store.feature.form\">\n <div class=\"form-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"endpoint-field\">\n <mat-label>Endpoint</mat-label>\n <input matInput formControlName=\"endpoint\" placeholder=\"GraphQL Endpoint\">\n </mat-form-field>\n </div>\n <div class=\"form-row query-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"query-field\">\n <mat-label>Query</mat-label>\n <textarea matInput formControlName=\"query\" rows=\"12\"\n placeholder=\"GraphQL Query or Subscription\"></textarea>\n </mat-form-field>\n </div>\n <div class=\"form-row variables-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"variables-field\">\n <mat-label>Variables (JSON)</mat-label>\n <textarea matInput formControlName=\"variablesJson\" rows=\"3\"\n placeholder='{\"limit\": 25, \"offset\": 0}'></textarea>\n </mat-form-field>\n <mat-form-field appearance=\"outline\" class=\"headers-field\">\n <mat-label>Headers (JSON)</mat-label>\n <textarea matInput formControlName=\"headersJson\" rows=\"3\"\n placeholder='{\"content-type\": \"application/json\"}'></textarea>\n </mat-form-field>\n </div>\n </div>\n </div>\n </mat-expansion-panel>\n\n <!-- Transformer Panel -->\n <mat-expansion-panel class=\"config-panel transformer-panel\"\n [expanded]=\"store.transformerPanelExpanded()\"\n (opened)=\"store.toggleTransformerPanel(true)\"\n (closed)=\"store.toggleTransformerPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>transform</mat-icon>\n <span>Transformer</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n <button mat-flat-button color=\"primary\" class=\"header-run-button\"\n (click)=\"store.refresh(); $event.stopPropagation()\">\n <mat-icon>play_arrow</mat-icon>Run\n </button>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"transformer-content\" [formGroup]=\"store.feature.form\">\n <div formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"transformer-field\">\n <mat-label>Transformer (TypeScript)</mat-label>\n <textarea matInput formControlName=\"transformerTs\" rows=\"10\"\n placeholder=\"const transformer = (data) => data;\"></textarea>\n </mat-form-field>\n </div>\n </div>\n </mat-expansion-panel>\n\n <!-- Presenter Panel -->\n <mat-expansion-panel class=\"config-panel presenter-panel\"\n [expanded]=\"store.presenterPanelExpanded()\"\n (opened)=\"store.togglePresenterPanel(true)\"\n (closed)=\"store.togglePresenterPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>table_chart</mat-icon>\n <span>Presenter</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n @if (store.isLoading()) {\n <mat-spinner diameter=\"16\"></mat-spinner>\n }\n <span>{{ store.itemCount() }} \u4EF6</span>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"presenter-content\">\n @switch (store.presenter()) {\n @case ('list') {\n <organisms-list\n [items]=\"store.items()\"\n (action)=\"dispatch($event)\"\n />\n }\n @default {\n <organisms-table\n [items]=\"store.items()\"\n [form]=\"store.tableForm()\"\n [columnFormFieldMap]=\"store.columnFormFieldMap()\"\n />\n }\n }\n </div>\n </mat-expansion-panel>\n </div>\n</frames-router-outlet>\n", styles: [".config-panel{background:#0000004d;flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden;width:100%}.config-panel.mat-expanded{flex:1 1 0;min-height:0}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content-wrapper{flex:1 1 0;min-height:0}.config-panel ::ng-deep .mat-expansion-panel-header{padding:0 12px;height:40px;flex:0 0 40px}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-body{display:flex;flex-direction:column;flex:1 1 0;min-height:0;padding:8px 12px;overflow:hidden}.config-panel ::ng-deep .mat-expansion-panel-header-title{display:flex;align-items:center;gap:8px;font-size:12px;color:#ffffffb3;flex:0 0 auto}.config-panel ::ng-deep .mat-expansion-panel-header-title mat-icon{font-size:16px;width:16px;height:16px}.config-panel ::ng-deep .mat-expansion-panel-header-description{flex:1;justify-content:flex-end;margin-right:0}.header-actions{display:flex;align-items:center;gap:8px;color:#ffffffb3}.query-type{font-size:11px;color:#ffffff80;padding:2px 8px;background:#ffffff1a;border-radius:4px}.header-run-button{height:24px;line-height:24px;font-size:11px;padding:0 8px;min-width:auto;background:#1976d2;color:#fff}.header-run-button ::ng-deep .mat-icon{font-size:14px;width:14px;height:14px;margin-right:2px}::ng-deep .mat-mdc-form-field{width:100%}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}::ng-deep .mat-mdc-text-field-wrapper{background:#ffffff0d}::ng-deep .mdc-notched-outline__leading,::ng-deep .mdc-notched-outline__notch,::ng-deep .mdc-notched-outline__trailing{border-color:#fff3!important}::ng-deep .mat-mdc-form-field-label{color:#fff9}::ng-deep .mat-mdc-input-element{color:#ffffffe6}::ng-deep textarea.mat-mdc-input-element{min-height:60px}.query-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.query-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.query-form{display:flex;flex-direction:column;gap:8px;width:100%;height:100%;min-height:0}.form-row{display:flex;gap:8px;width:100%;flex:0 0 auto}.form-row.query-row{flex:1 1 0;min-height:0}.form-row.variables-row .variables-field,.form-row.variables-row .headers-field{flex:1 1 50%}.endpoint-field{width:100%;flex:0 0 auto}.query-field{width:100%;flex:1 1 0;min-height:0}.query-field ::ng-deep .mat-mdc-form-field-flex{height:100%}.query-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none;height:100%}.transformer-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.transformer-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.transformer-field{width:100%}.transformer-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none}.presenter-panel ::ng-deep .mat-expansion-panel-body{padding:0}.presenter-content{flex:1 1 0;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column}.presenter-content ::ng-deep organisms-table{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}:host{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}:host ::ng-deep frames-line-up .main{display:flex;flex-direction:column;width:100%;max-width:100%}.title{font-size:16px;font-weight:500}.qtp-container{display:flex;flex-direction:column;flex:1 1 0;min-height:0;gap:4px;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "component", type: RouterOutletFrame, selector: "frames-router-outlet", outputs: ["events"] }, { kind: "ngmodule", type: MatExpansionModule }, { kind: "component", type: i3.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i3.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i3.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i3.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i5.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i6.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: NavigatorOrganismStore, selector: "organisms-navigator", inputs: ["startActions", "endActions", "title"] }, { kind: "component", type: TableOrganism, selector: "organisms-table" }, { kind: "component", type: ListOrganism, selector: "organisms-list" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
156
+ ], usesInheritance: true, hostDirectives: [{ directive: QueryPageV2Store, inputs: ["query", "query", "navEndActions", "navEndActions", "columnNames", "columnNames", "presenter", "presenter"] }], ngImport: i0, template: "<frames-router-outlet>\n <organisms-navigator\n injectable\n [endActions]=\"store.navEndActions()\"\n (action)=\"dispatch($event)\"\n >\n <span class=\"title\">{{ store.title() }}</span>\n </organisms-navigator>\n\n <div class=\"qtp-container\">\n <!-- Query Panel -->\n <mat-expansion-panel class=\"config-panel query-panel\"\n [expanded]=\"store.queryPanelExpanded()\"\n (opened)=\"store.toggleQueryPanel(true)\"\n (closed)=\"store.toggleQueryPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>code</mat-icon>\n <span>Query</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n <span class=\"query-type\">{{ store.queryType() }}</span>\n <button mat-flat-button color=\"primary\" class=\"header-run-button\"\n (click)=\"store.refresh(); $event.stopPropagation()\">\n <mat-icon>play_arrow</mat-icon>Run\n </button>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"query-content\">\n <div class=\"query-form\" [formGroup]=\"store.feature.form\">\n <div class=\"form-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"endpoint-field\">\n <mat-label>Endpoint</mat-label>\n <input matInput formControlName=\"endpoint\" placeholder=\"GraphQL Endpoint\">\n </mat-form-field>\n </div>\n <div class=\"form-row query-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"query-field\">\n <mat-label>Query</mat-label>\n <textarea matInput formControlName=\"query\" rows=\"12\"\n placeholder=\"GraphQL Query or Subscription\"></textarea>\n </mat-form-field>\n </div>\n <div class=\"form-row variables-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"variables-field\">\n <mat-label>Variables (JSON)</mat-label>\n <textarea matInput formControlName=\"variablesJson\" rows=\"3\"\n placeholder='{\"limit\": 25, \"offset\": 0}'></textarea>\n </mat-form-field>\n <mat-form-field appearance=\"outline\" class=\"headers-field\">\n <mat-label>Headers (JSON)</mat-label>\n <textarea matInput formControlName=\"headersJson\" rows=\"3\"\n placeholder='{\"content-type\": \"application/json\"}'></textarea>\n </mat-form-field>\n </div>\n </div>\n </div>\n </mat-expansion-panel>\n\n <!-- Transformer Panel -->\n <mat-expansion-panel class=\"config-panel transformer-panel\"\n [expanded]=\"store.transformerPanelExpanded()\"\n (opened)=\"store.toggleTransformerPanel(true)\"\n (closed)=\"store.toggleTransformerPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>transform</mat-icon>\n <span>Transformer</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n <button mat-flat-button color=\"primary\" class=\"header-run-button\"\n (click)=\"store.refresh(); $event.stopPropagation()\">\n <mat-icon>play_arrow</mat-icon>Run\n </button>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"transformer-content\" [formGroup]=\"store.feature.form\">\n <div formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"transformer-field\">\n <mat-label>Transformer (TypeScript)</mat-label>\n <textarea matInput formControlName=\"transformerTs\" rows=\"10\"\n placeholder=\"const transformer = (data) => data;\"></textarea>\n </mat-form-field>\n </div>\n </div>\n </mat-expansion-panel>\n\n <!-- Presenter Panel -->\n <mat-expansion-panel class=\"config-panel presenter-panel\"\n [expanded]=\"store.presenterPanelExpanded()\"\n (opened)=\"store.togglePresenterPanel(true)\"\n (closed)=\"store.togglePresenterPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>table_chart</mat-icon>\n <span>Presenter</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n @if (store.isLoading()) {\n <mat-spinner diameter=\"16\"></mat-spinner>\n }\n <span>{{ store.itemCount() }} \u4EF6</span>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"presenter-content\">\n @switch (store.presenter()) {\n @case ('list') {\n <organisms-list\n [items]=\"store.items()\"\n (action)=\"dispatch($event)\"\n />\n }\n @default {\n <organisms-table\n [items]=\"store.items()\"\n [form]=\"store.tableForm()\"\n [columnFormFieldMap]=\"store.columnFormFieldMap()\"\n />\n }\n }\n </div>\n </mat-expansion-panel>\n </div>\n</frames-router-outlet>\n", styles: [".config-panel{background:#0000004d;flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden;width:100%}.config-panel.mat-expanded{flex:1 1 0;min-height:0}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content-wrapper{flex:1 1 0;min-height:0}.config-panel ::ng-deep .mat-expansion-panel-header{padding:0 12px;height:40px;flex:0 0 40px}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-body{display:flex;flex-direction:column;flex:1 1 0;min-height:0;padding:8px 12px;overflow:hidden}.config-panel ::ng-deep .mat-expansion-panel-header-title{display:flex;align-items:center;gap:8px;font-size:12px;color:#ffffffb3;flex:0 0 auto}.config-panel ::ng-deep .mat-expansion-panel-header-title mat-icon{font-size:16px;width:16px;height:16px}.config-panel ::ng-deep .mat-expansion-panel-header-description{flex:1;justify-content:flex-end;margin-right:0}.header-actions{display:flex;align-items:center;gap:8px;color:#ffffffb3}.query-type{font-size:11px;color:#ffffff80;padding:2px 8px;background:#ffffff1a;border-radius:4px}.header-run-button{height:24px;line-height:24px;font-size:11px;padding:0 8px;min-width:auto;background:#1976d2;color:#fff}.header-run-button ::ng-deep .mat-icon{font-size:14px;width:14px;height:14px;margin-right:2px}::ng-deep .mat-mdc-form-field{width:100%}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}::ng-deep .mat-mdc-text-field-wrapper{background:#ffffff0d}::ng-deep .mdc-notched-outline__leading,::ng-deep .mdc-notched-outline__notch,::ng-deep .mdc-notched-outline__trailing{border-color:#fff3!important}::ng-deep .mat-mdc-form-field-label{color:#fff9}::ng-deep .mat-mdc-input-element{color:#ffffffe6}::ng-deep textarea.mat-mdc-input-element{min-height:60px}.query-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.query-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.query-form{display:flex;flex-direction:column;gap:8px;width:100%;height:100%;min-height:0}.form-row{display:flex;gap:8px;width:100%;flex:0 0 auto}.form-row.query-row{flex:1 1 0;min-height:0}.form-row.variables-row .variables-field,.form-row.variables-row .headers-field{flex:1 1 50%}.endpoint-field{width:100%;flex:0 0 auto}.query-field{width:100%;flex:1 1 0;min-height:0}.query-field ::ng-deep .mat-mdc-form-field-flex{height:100%}.query-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none;height:100%}.transformer-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.transformer-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.transformer-field{width:100%}.transformer-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none}.presenter-panel ::ng-deep .mat-expansion-panel-body{padding:0}.presenter-content{flex:1 1 0;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column}.presenter-content ::ng-deep organisms-table{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}:host{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}:host ::ng-deep frames-line-up .main{display:flex;flex-direction:column;width:100%;max-width:100%}.title{font-size:16px;font-weight:500}.qtp-container{display:flex;flex-direction:column;flex:1 1 0;min-height:0;gap:4px;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],[formArray],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i2.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "component", type: RouterOutletFrame, selector: "frames-router-outlet", outputs: ["events"] }, { kind: "ngmodule", type: MatExpansionModule }, { kind: "component", type: i3.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["hideToggle", "togglePosition"], outputs: ["afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { kind: "component", type: i3.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight", "tabIndex"] }, { kind: "directive", type: i3.MatExpansionPanelTitle, selector: "mat-panel-title" }, { kind: "directive", type: i3.MatExpansionPanelDescription, selector: "mat-panel-description" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i5.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i6.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i8.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "directive", type: NavigatorOrganismStore, selector: "organisms-navigator", inputs: ["startActions", "endActions", "title"] }, { kind: "component", type: TableOrganism, selector: "organisms-table" }, { kind: "component", type: ListOrganism, selector: "organisms-list" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
157
157
  }
158
158
  __decorate([
159
159
  Effect(ListOrganism.ActionId.CLICK_ITEM),
@@ -161,10 +161,9 @@ __decorate([
161
161
  __metadata("design:paramtypes", [Object]),
162
162
  __metadata("design:returntype", void 0)
163
163
  ], QueryPageV2.prototype, "onItemClick", null);
164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryPageV2, decorators: [{
164
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: QueryPageV2, decorators: [{
165
165
  type: Component,
166
166
  args: [{ selector: 'pages-query-v2', standalone: true, imports: [
167
- CommonModule,
168
167
  ReactiveFormsModule,
169
168
  RouterOutletFrame,
170
169
  MatExpansionModule,
@@ -176,7 +175,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImpor
176
175
  NavigatorOrganismStore,
177
176
  TableOrganism,
178
177
  ListOrganism,
179
- JsonPipe,
178
+ JsonPipe
180
179
  ], providers: [
181
180
  QueryFeature.provideDefault(),
182
181
  ], changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-pages-query-v2.mjs","sources":["../tmp-esm2022/pages/query-v2/query-v2.page.store.js","../tmp-esm2022/pages/query-v2/query-v2.page.js","../tmp-esm2022/pages/query-v2/xxmachina-components-pages-query-v2.js"],"sourcesContent":["import { Directive, computed, effect, inject, input, signal } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { InjectableComponent, provideEffect } from '@ng-atomic/core';\nimport { QueryFeature } from '@xxmachina/components/features/query';\nimport { injectRouteData } from '@ng-atomic/common/utils';\nimport { map, startWith } from 'rxjs';\nimport { buildItemsMapFromResult } from '@xxmachina/components/pages/query';\nimport { FormBuilder } from '@angular/forms';\nimport { ListOrganism } from '@ng-atomic/components/organisms/list';\nimport * as i0 from \"@angular/core\";\nexport var ActionId;\n(function (ActionId) {\n ActionId[\"CLICK_ITEM\"] = \"[@xxmachina/components/pages/query-v2] Click Item\";\n})(ActionId || (ActionId = {}));\nexport class QueryPageV2Store extends InjectableComponent {\n static ActionId = ActionId;\n /**\n * Provides an effect handler for CLICK_ITEM action\n */\n static provideClickItemEffect(handler) {\n return [\n provideEffect(ListOrganism.ActionId.CLICK_ITEM, () => handler),\n ];\n }\n query = input(injectRouteData('query')());\n navEndActions = input(injectRouteData('navEndActions')());\n columnNames = input([]);\n presenter = input(injectRouteData('presenter')() ?? 'table');\n feature = inject(QueryFeature);\n fb = inject(FormBuilder);\n // Panel expansion states\n queryPanelExpanded = signal(true);\n transformerPanelExpanded = signal(false);\n presenterPanelExpanded = signal(true);\n // Count of open panels\n openPanelCount = computed(() => [this.queryPanelExpanded(), this.transformerPanelExpanded(), this.presenterPanelExpanded()]\n .filter(Boolean).length);\n // Panel toggle methods (ensure at least one panel stays open)\n toggleQueryPanel(expanded) {\n if (!expanded && this.openPanelCount() <= 1)\n return;\n this.queryPanelExpanded.set(expanded);\n }\n toggleTransformerPanel(expanded) {\n if (!expanded && this.openPanelCount() <= 1)\n return;\n this.transformerPanelExpanded.set(expanded);\n }\n togglePresenterPanel(expanded) {\n if (!expanded && this.openPanelCount() <= 1)\n return;\n this.presenterPanelExpanded.set(expanded);\n }\n // Query metadata\n title = computed(() => this.query()?.title || 'データ一覧');\n queryType = computed(() => this.query()?.type || 'graphql');\n // Loading state\n isLoading$ = this.feature.result$.pipe(map(() => false), startWith(true));\n isLoading = toSignal(this.isLoading$, { initialValue: true });\n // Result data\n result = computed(() => this.feature.result() ?? {});\n itemsMap = computed(() => buildItemsMapFromResult(this.result()));\n items = computed(() => {\n const map = this.itemsMap();\n const keys = Object.keys(map);\n if (keys.length === 0)\n return [];\n return map[keys[0]]?.items ?? [];\n });\n itemCount = computed(() => this.items().length);\n // Table display columns - automatically determine from first item\n displayedColumns = computed(() => {\n const items = this.items();\n if (items.length === 0)\n return [];\n const firstItem = items[0];\n if (!firstItem || typeof firstItem !== 'object')\n return [];\n return Object.keys(firstItem);\n });\n // Form for table columns\n tableForm = computed(() => {\n const columns = this.displayedColumns();\n const columnsMap = {};\n columns.forEach(col => {\n columnsMap[col] = { width: 150, hidden: false };\n });\n return this.fb.group({\n columns: this.fb.group({ map: this.fb.group(columnsMap) })\n });\n });\n // Column form field map for organisms-table\n columnFormFieldMap = computed(() => {\n const columns = this.displayedColumns();\n const fieldMap = {};\n columns.forEach(col => {\n fieldMap[col] = { type: 'text', label: col };\n });\n return fieldMap;\n });\n constructor() {\n super();\n // queryをformにpatch\n effect(() => {\n const query = this.query();\n if (query) {\n this.feature.form.patchValue({\n id: query.id,\n title: query.title,\n type: query.type,\n graphql: query.graphql,\n });\n this.feature.refresh();\n }\n });\n }\n refresh() {\n this.feature.refresh();\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryPageV2Store, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.5\", type: QueryPageV2Store, isStandalone: true, inputs: { query: { classPropertyName: \"query\", publicName: \"query\", isSignal: true, isRequired: false, transformFunction: null }, navEndActions: { classPropertyName: \"navEndActions\", publicName: \"navEndActions\", isSignal: true, isRequired: false, transformFunction: null }, columnNames: { classPropertyName: \"columnNames\", publicName: \"columnNames\", isSignal: true, isRequired: false, transformFunction: null }, presenter: { classPropertyName: \"presenter\", publicName: \"presenter\", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryPageV2Store, decorators: [{\n type: Directive,\n args: [{ standalone: true }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktdjIucGFnZS5zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tcG9uZW50cy9zcmMvbGliL3BhZ2VzL3F1ZXJ5LXYyL3F1ZXJ5LXYyLnBhZ2Uuc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzdGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRXBFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQUlwRSxNQUFNLENBQU4sSUFBWSxRQUVYO0FBRkQsV0FBWSxRQUFRO0lBQ2xCLDRFQUFnRSxDQUFBO0FBQ2xFLENBQUMsRUFGVyxRQUFRLEtBQVIsUUFBUSxRQUVuQjtBQUdELE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxtQkFBbUI7SUFDdkQsTUFBTSxDQUFVLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFFcEM7O09BRUc7SUFDSCxNQUFNLENBQUMsc0JBQXNCLENBQUksT0FBMEI7UUFDekQsT0FBTztZQUNMLGFBQWEsQ0FBQyxZQUFZLENBQUMs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Q0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN6QixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDekIsQ0FBQzt1R0EzSFUsZ0JBQWdCOzJGQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFNBQVM7bUJBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBjb21wdXRlZCwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBzaWduYWwsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEluamVjdGFibGVDb21wb25lbnQsIHByb3ZpZGVFZmZlY3QgfSBmcm9tICdAbmctYXRvbWljL2NvcmUnO1xuaW1wb3J0IHsgUXVlcnkgfSBmcm9tICdAeHhtYWNoaW5hL2NvbW1vbi9kb21haW4vbW9kZWxzJztcbmltcG9ydCB7IFF1ZXJ5RmVhdHVyZSB9IGZyb20gJ0B4eG1hY2hpbmEvY29tcG9uZW50cy9mZWF0dXJlcy9xdWVyeSc7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdAbmctYXRvbWljL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0Um91dGVEYXRhIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vdXRpbHMnO1xuaW1wb3J0IHsgbWFwLCBzdGFydFdpdGggfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGJ1aWxkSXRlbXNNYXBGcm9tUmVzdWx0IH0gZnJvbSAnQHh4bWFjaGluYS9jb21wb25lbnRzL3BhZ2VzL3F1ZXJ5JztcbmltcG9ydCB7IEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTGlzdE9yZ2FuaXNtIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL29yZ2FuaXNtcy9saXN0JztcblxuZXhwb3J0IHR5cGUgUHJlc2VudGVyVHlwZSA9ICd0YWJsZScgfCAnbGlzdCc7XG5cbmV4cG9ydCBlbnVtIEFjdGlvbklkIHtcbiAgQ0xJQ0tfSVRFTSA9ICdbQHh4bWFjaGluYS9jb21wb25lbnRzL3BhZ2VzL3F1ZXJ5LXYyXSBDbGljayBJdGVtJyxcbn1cblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBRdWVyeVBhZ2VWMlN0b3JlIGV4dGVuZHMgSW5qZWN0YWJsZUNvbXBvbmVudCB7XG4gIHN0YXRpYyByZWFkb25seSBBY3Rpb25JZCA9IEFjdGlvbklkO1xuXG4gIC8qKlxuICAgKiBQcm92aWRlcyBhbiBlZmZlY3QgaGFuZGxlciBmb3IgQ0xJQ0tfSVRFTSBhY3Rpb25cbiAgICovXG4gIHN0YXRpYyBwcm92aWRlQ2xpY2tJdGVtRWZmZWN0PFQ+KGhhbmRsZXI6IChpdGVtOiBUKSA9PiB2b2lkKTogUHJvdmlkZXJbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHByb3ZpZGVFZmZlY3QoTGlzdE9yZ2FuaXNtLkFjdGlvbklkLkNMSUNLX0lURU0sICgpID0+IGhhbmRsZXIpLFxuICAgIF07XG4gIH1cblxuICByZWFkb25seSBxdWVyeSA9IGlucHV0PFF1ZXJ5PihpbmplY3RSb3V0ZURhdGE8UXVlcnk+KCdxdWVyeScpKCkpO1xuICByZWFkb25seSBuYXZFbmRBY3Rpb25zID0gaW5wdXQ8QWN0aW9uW10+KGluamVjdFJvdXRlRGF0YTxBY3Rpb25bXT4oJ25hdkVuZEFjdGlvbnMnKSgpKTtcbiAgcmVhZG9ubHkgY29sdW1uTmFtZXMgPSBpbnB1dDxzdHJpbmdbXT4oW10pO1xuICByZWFkb25seSBwcmVzZW50ZXIgPSBpbnB1dDxQcmVzZW50ZXJUeXBlPihpbmplY3RSb3V0ZURhdGE8UHJlc2VudGVyVHlwZT4oJ3ByZXNlbnRlcicpKCkgPz8gJ3RhYmxlJyk7XG5cbiAgcmVhZG9ubHkgZmVhdHVyZSA9IGluamVjdChRdWVyeUZlYXR1cmUpO1xuICBwcml2YXRlIHJlYWRvbmx5IGZiID0gaW5qZWN0KEZvcm1CdWlsZGVyKTtcblxuICAvLyBQYW5lbCBleHBhbnNpb24gc3RhdGVzXG4gIHJlYWRvbmx5IHF1ZXJ5UGFuZWxFeHBhbmRlZCA9IHNpZ25hbCh0cnVlKTtcbiAgcmVhZG9ubHkgdHJhbnNmb3JtZXJQYW5lbEV4cGFuZGVkID0gc2lnbmFsKGZhbHNlKTtcbiAgcmVhZG9ubHkgcHJlc2VudGVyUGFuZWxFeHBhbmRlZCA9IHNpZ25hbCh0cnVlKTtcblxuICAvLyBDb3VudCBvZiBvcGVuIHBhbmVsc1xuICByZWFkb25seSBvcGVuUGFuZWxDb3VudCA9IGNvbXB1dGVkKCgpID0+XG4gICAgW3RoaXMucXVlcnlQYW5lbEV4cGFuZGVkKCksIHRoaXMudHJhbnNmb3JtZXJQYW5lbEV4cGFuZGVkKCksIHRoaXMucHJlc2VudGVyUGFuZWxFeHBhbmRlZCgpXVxuICAgICAgLmZpbHRlcihCb29sZWFuKS5sZW5ndGhcbiAgKTtcblxuICAvLyBQYW5lbCB0b2dnbGUgbWV0aG9kcyAoZW5zdXJlIGF0IGxlYXN0IG9uZSBwYW5lbCBzdGF5cyBvcGVuKVxuICB0b2dnbGVRdWVyeVBhbmVsKGV4cGFuZGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCFleHBhbmRlZCAmJiB0aGlzLm9wZW5QYW5lbENvdW50KCkgPD0gMSkgcmV0dXJuO1xuICAgIHRoaXMucXVlcnlQYW5lbEV4cGFuZGVkLnNldChleHBhbmRlZCk7XG4gIH1cblxuICB0b2dnbGVUcmFuc2Zvcm1lclBhbmVsKGV4cGFuZGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCFleHBhbmRlZCAmJiB0aGlzLm9wZW5QYW5lbENvdW50KCkgPD0gMSkgcmV0dXJuO1xuICAgIHRoaXMudHJhbnNmb3JtZXJQYW5lbEV4cGFuZGVkLnNldChleHBhbmRlZCk7XG4gIH1cblxuICB0b2dnbGVQcmVzZW50ZXJQYW5lbChleHBhbmRlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmICghZXhwYW5kZWQgJiYgdGhpcy5vcGVuUGFuZWxDb3VudCgpIDw9IDEpIHJldHVybjtcbiAgICB0aGlzLnByZXNlbnRlclBhbmVsRXhwYW5kZWQuc2V0KGV4cGFuZGVkKTtcbiAgfVxuXG4gIC8vIFF1ZXJ5IG1ldGFkYXRhXG4gIHJlYWRvbmx5IHRpdGxlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5xdWVyeSgpPy50aXRsZSB8fCAn44OH44O844K/5LiA6KanJyk7XG4gIHJlYWRvbmx5IHF1ZXJ5VHlwZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMucXVlcnkoKT8udHlwZSB8fCAnZ3JhcGhxbCcpO1xuXG4gIC8vIExvYWRpbmcgc3RhdGVcbiAgcHJpdmF0ZSByZWFkb25seSBpc0xvYWRpbmckID0gdGhpcy5mZWF0dXJlLnJlc3VsdCQucGlwZShcbiAgICBtYXAoKCkgPT4gZmFsc2UpLFxuICAgIHN0YXJ0V2l0aCh0cnVlKSxcbiAgKTtcbiAgcmVhZG9ubHkgaXNMb2FkaW5nID0gdG9TaWduYWwodGhpcy5pc0xvYWRpbmckLCB7IGluaXRpYWxWYWx1ZTogdHJ1ZSB9KTtcblxuICAvLyBSZXN1bHQgZGF0YVxuICByZWFkb25seSByZXN1bHQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmZlYXR1cmUucmVzdWx0KCkgPz8ge30pO1xuXG4gIHJlYWRvbmx5IGl0ZW1zTWFwID0gY29tcHV0ZWQoKCkgPT4gYnVpbGRJdGVtc01hcEZyb21SZXN1bHQodGhpcy5yZXN1bHQoKSkpO1xuXG4gIHJlYWRvbmx5IGl0ZW1zID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IG1hcCA9IHRoaXMuaXRlbXNNYXAoKTtcbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMobWFwKTtcbiAgICBpZiAoa2V5cy5sZW5ndGggPT09IDApIHJldHVybiBbXTtcbiAgICByZXR1cm4gbWFwW2tleXNbMF1dPy5pdGVtcyA/PyBbXTtcbiAgfSk7XG5cbiAgcmVhZG9ubHkgaXRlbUNvdW50ID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pdGVtcygpLmxlbmd0aCk7XG5cbiAgLy8gVGFibGUgZGlzcGxheSBjb2x1bW5zIC0gYXV0b21hdGljYWxseSBkZXRlcm1pbmUgZnJvbSBmaXJzdCBpdGVtXG4gIHJlYWRvbmx5IGRpc3BsYXllZENvbHVtbnMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLml0ZW1zKCk7XG4gICAgaWYgKGl0ZW1zLmxlbmd0aCA9PT0gMCkgcmV0dXJuIFtdO1xuICAgIGNvbnN0IGZpcnN0SXRlbSA9IGl0ZW1zWzBdO1xuICAgIGlmICghZmlyc3RJdGVtIHx8IHR5cGVvZiBmaXJzdEl0ZW0gIT09ICdvYmplY3QnKSByZXR1cm4gW107XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGZpcnN0SXRlbSk7XG4gIH0pO1xuXG4gIC8vIEZvcm0gZm9yIHRhYmxlIGNvbHVtbnNcbiAgcmVhZG9ubHkgdGFibGVGb3JtID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbHVtbnMgPSB0aGlzLmRpc3BsYXllZENvbHVtbnMoKTtcbiAgICBjb25zdCBjb2x1bW5zTWFwOiBhbnkgPSB7fTtcbiAgICBjb2x1bW5zLmZvckVhY2goY29sID0+IHtcbiAgICAgIGNvbHVtbnNNYXBbY29sXSA9IHsgd2lkdGg6IDE1MCwgaGlkZGVuOiBmYWxzZSB9O1xuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGNvbHVtbnM6IHRoaXMuZmIuZ3JvdXAoeyBtYXA6IHRoaXMuZmIuZ3JvdXAoY29sdW1uc01hcCkgfSlcbiAgICB9KTtcbiAgfSk7XG5cbiAgLy8gQ29sdW1uIGZvcm0gZmllbGQgbWFwIGZvciBvcmdhbmlzbXMtdGFibGVcbiAgcmVhZG9ubHkgY29sdW1uRm9ybUZpZWxkTWFwID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNvbHVtbnMgPSB0aGlzLmRpc3BsYXllZENvbHVtbnMoKTtcbiAgICBjb25zdCBmaWVsZE1hcDogYW55ID0ge307XG4gICAgY29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICBmaWVsZE1hcFtjb2xdID0geyB0eXBlOiAndGV4dCcsIGxhYmVsOiBjb2wgfTtcbiAgICB9KTtcbiAgICByZXR1cm4gZmllbGRNYXA7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG5cbiAgICAvLyBxdWVyeeOCkmZvcm3jgatwYXRjaFxuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBxdWVyeSA9IHRoaXMucXVlcnkoKTtcbiAgICAgIGlmIChxdWVyeSkge1xuICAgICAgICB0aGlzLmZlYXR1cmUuZm9ybS5wYXRjaFZhbHVlKHtcbiAgICAgICAgICBpZDogcXVlcnkuaWQsXG4gICAgICAgICAgdGl0bGU6IHF1ZXJ5LnRpdGxlLFxuICAgICAgICAgIHR5cGU6IHF1ZXJ5LnR5cGUsXG4gICAgICAgICAgZ3JhcGhxbDogcXVlcnkuZ3JhcGhxbCxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZmVhdHVyZS5yZWZyZXNoKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICByZWZyZXNoKCk6IHZvaWQge1xuICAgIHRoaXMuZmVhdHVyZS5yZWZyZXNoKCk7XG4gIH1cbn1cbiJdfQ==","import { __decorate, __metadata } from \"tslib\";\nimport { Component, ChangeDetectionStrategy, inject } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { RouterOutletFrame } from '@ng-atomic/components/frames/router-outlet';\nimport { NavigatorOrganismStore } from '@ng-atomic/components/organisms/navigator';\nimport { NgAtomicComponent, Effect } from '@ng-atomic/core';\nimport { JsonPipe } from '@angular/common';\nimport { QueryFeature } from '@xxmachina/components/features/query';\nimport { QueryPageV2Store, ActionId } from './query-v2.page.store';\nimport { ListOrganism } from '@ng-atomic/components/organisms/list';\nimport { TableOrganism } from '@ng-atomic/components/organisms/table';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"./query-v2.page.store\";\nimport * as i2 from \"@angular/forms\";\nimport * as i3 from \"@angular/material/expansion\";\nimport * as i4 from \"@angular/material/icon\";\nimport * as i5 from \"@angular/material/progress-spinner\";\nimport * as i6 from \"@angular/material/button\";\nimport * as i7 from \"@angular/material/form-field\";\nimport * as i8 from \"@angular/material/input\";\nexport class QueryPageV2 extends NgAtomicComponent {\n static ActionId = ActionId;\n store = inject(QueryPageV2Store);\n onItemClick(item) {\n this.dispatch({ id: ActionId.CLICK_ITEM, payload: item });\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryPageV2, deps: null, target: i0.ɵɵFactoryTarget.Component });\n static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.5\", type: QueryPageV2, isStandalone: true, selector: \"pages-query-v2\", providers: [\n QueryFeature.provideDefault(),\n ], usesInheritance: true, hostDirectives: [{ directive: i1.QueryPageV2Store, inputs: [\"query\", \"query\", \"navEndActions\", \"navEndActions\", \"columnNames\", \"columnNames\", \"presenter\", \"presenter\"] }], ngImport: i0, template: \"<frames-router-outlet>\\n <organisms-navigator\\n injectable\\n [endActions]=\\\"store.navEndActions()\\\"\\n (action)=\\\"dispatch($event)\\\"\\n >\\n <span class=\\\"title\\\">{{ store.title() }}</span>\\n </organisms-navigator>\\n\\n <div class=\\\"qtp-container\\\">\\n <!-- Query Panel -->\\n <mat-expansion-panel class=\\\"config-panel query-panel\\\"\\n [expanded]=\\\"store.queryPanelExpanded()\\\"\\n (opened)=\\\"store.toggleQueryPanel(true)\\\"\\n (closed)=\\\"store.toggleQueryPanel(false)\\\">\\n <mat-expansion-panel-header>\\n <mat-panel-title>\\n <mat-icon>code</mat-icon>\\n <span>Query</span>\\n </mat-panel-title>\\n <mat-panel-description class=\\\"header-actions\\\">\\n <span class=\\\"query-type\\\">{{ store.queryType() }}</span>\\n <button mat-flat-button color=\\\"primary\\\" class=\\\"header-run-button\\\"\\n (click)=\\\"store.refresh(); $event.stopPropagation()\\\">\\n <mat-icon>play_arrow</mat-icon>Run\\n </button>\\n </mat-panel-description>\\n </mat-expansion-panel-header>\\n <div class=\\\"query-content\\\">\\n <div class=\\\"query-form\\\" [formGroup]=\\\"store.feature.form\\\">\\n <div class=\\\"form-row\\\" formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"endpoint-field\\\">\\n <mat-label>Endpoint</mat-label>\\n <input matInput formControlName=\\\"endpoint\\\" placeholder=\\\"GraphQL Endpoint\\\">\\n </mat-form-field>\\n </div>\\n <div class=\\\"form-row query-row\\\" formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"query-field\\\">\\n <mat-label>Query</mat-label>\\n <textarea matInput formControlName=\\\"query\\\" rows=\\\"12\\\"\\n placeholder=\\\"GraphQL Query or Subscription\\\"></textarea>\\n </mat-form-field>\\n </div>\\n <div class=\\\"form-row variables-row\\\" formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"variables-field\\\">\\n <mat-label>Variables (JSON)</mat-label>\\n <textarea matInput formControlName=\\\"variablesJson\\\" rows=\\\"3\\\"\\n placeholder='{\\\"limit\\\": 25, \\\"offset\\\": 0}'></textarea>\\n </mat-form-field>\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"headers-field\\\">\\n <mat-label>Headers (JSON)</mat-label>\\n <textarea matInput formControlName=\\\"headersJson\\\" rows=\\\"3\\\"\\n placeholder='{\\\"content-type\\\": \\\"application/json\\\"}'></textarea>\\n </mat-form-field>\\n </div>\\n </div>\\n </div>\\n </mat-expansion-panel>\\n\\n <!-- Transformer Panel -->\\n <mat-expansion-panel class=\\\"config-panel transformer-panel\\\"\\n [expanded]=\\\"store.transformerPanelExpanded()\\\"\\n (opened)=\\\"store.toggleTransformerPanel(true)\\\"\\n (closed)=\\\"store.toggleTransformerPanel(false)\\\">\\n <mat-expansion-panel-header>\\n <mat-panel-title>\\n <mat-icon>transform</mat-icon>\\n <span>Transformer</span>\\n </mat-panel-title>\\n <mat-panel-description class=\\\"header-actions\\\">\\n <button mat-flat-button color=\\\"primary\\\" class=\\\"header-run-button\\\"\\n (click)=\\\"store.refresh(); $event.stopPropagation()\\\">\\n <mat-icon>play_arrow</mat-icon>Run\\n </button>\\n </mat-panel-description>\\n </mat-expansion-panel-header>\\n <div class=\\\"transformer-content\\\" [formGroup]=\\\"store.feature.form\\\">\\n <div formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"transformer-field\\\">\\n <mat-label>Transformer (TypeScript)</mat-label>\\n <textarea matInput formControlName=\\\"transformerTs\\\" rows=\\\"10\\\"\\n placeholder=\\\"const transformer = (data) => data;\\\"></textarea>\\n </mat-form-field>\\n </div>\\n </div>\\n </mat-expansion-panel>\\n\\n <!-- Presenter Panel -->\\n <mat-expansion-panel class=\\\"config-panel presenter-panel\\\"\\n [expanded]=\\\"store.presenterPanelExpanded()\\\"\\n (opened)=\\\"store.togglePresenterPanel(true)\\\"\\n (closed)=\\\"store.togglePresenterPanel(false)\\\">\\n <mat-expansion-panel-header>\\n <mat-panel-title>\\n <mat-icon>table_chart</mat-icon>\\n <span>Presenter</span>\\n </mat-panel-title>\\n <mat-panel-description class=\\\"header-actions\\\">\\n @if (store.isLoading()) {\\n <mat-spinner diameter=\\\"16\\\"></mat-spinner>\\n }\\n <span>{{ store.itemCount() }} \\u4EF6</span>\\n </mat-panel-description>\\n </mat-expansion-panel-header>\\n <div class=\\\"presenter-content\\\">\\n @switch (store.presenter()) {\\n @case ('list') {\\n <organisms-list\\n [items]=\\\"store.items()\\\"\\n (action)=\\\"dispatch($event)\\\"\\n />\\n }\\n @default {\\n <organisms-table\\n [items]=\\\"store.items()\\\"\\n [form]=\\\"store.tableForm()\\\"\\n [columnFormFieldMap]=\\\"store.columnFormFieldMap()\\\"\\n />\\n }\\n }\\n </div>\\n </mat-expansion-panel>\\n </div>\\n</frames-router-outlet>\\n\", styles: [\".config-panel{background:#0000004d;flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden;width:100%}.config-panel.mat-expanded{flex:1 1 0;min-height:0}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content-wrapper{flex:1 1 0;min-height:0}.config-panel ::ng-deep .mat-expansion-panel-header{padding:0 12px;height:40px;flex:0 0 40px}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-body{display:flex;flex-direction:column;flex:1 1 0;min-height:0;padding:8px 12px;overflow:hidden}.config-panel ::ng-deep .mat-expansion-panel-header-title{display:flex;align-items:center;gap:8px;font-size:12px;color:#ffffffb3;flex:0 0 auto}.config-panel ::ng-deep .mat-expansion-panel-header-title mat-icon{font-size:16px;width:16px;height:16px}.config-panel ::ng-deep .mat-expansion-panel-header-description{flex:1;justify-content:flex-end;margin-right:0}.header-actions{display:flex;align-items:center;gap:8px;color:#ffffffb3}.query-type{font-size:11px;color:#ffffff80;padding:2px 8px;background:#ffffff1a;border-radius:4px}.header-run-button{height:24px;line-height:24px;font-size:11px;padding:0 8px;min-width:auto;background:#1976d2;color:#fff}.header-run-button ::ng-deep .mat-icon{font-size:14px;width:14px;height:14px;margin-right:2px}::ng-deep .mat-mdc-form-field{width:100%}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}::ng-deep .mat-mdc-text-field-wrapper{background:#ffffff0d}::ng-deep .mdc-notched-outline__leading,::ng-deep .mdc-notched-outline__notch,::ng-deep .mdc-notched-outline__trailing{border-color:#fff3!important}::ng-deep .mat-mdc-form-field-label{color:#fff9}::ng-deep .mat-mdc-input-element{color:#ffffffe6}::ng-deep textarea.mat-mdc-input-element{min-height:60px}.query-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.query-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.query-form{display:flex;flex-direction:column;gap:8px;width:100%;height:100%;min-height:0}.form-row{display:flex;gap:8px;width:100%;flex:0 0 auto}.form-row.query-row{flex:1 1 0;min-height:0}.form-row.variables-row .variables-field,.form-row.variables-row .headers-field{flex:1 1 50%}.endpoint-field{width:100%;flex:0 0 auto}.query-field{width:100%;flex:1 1 0;min-height:0}.query-field ::ng-deep .mat-mdc-form-field-flex{height:100%}.query-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none;height:100%}.transformer-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.transformer-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.transformer-field{width:100%}.transformer-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none}.presenter-panel ::ng-deep .mat-expansion-panel-body{padding:0}.presenter-content{flex:1 1 0;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column}.presenter-content ::ng-deep organisms-table{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}:host{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}:host ::ng-deep frames-line-up .main{display:flex;flex-direction:column;width:100%;max-width:100%}.title{font-size:16px;font-weight:500}.qtp-container{display:flex;flex-direction:column;flex:1 1 0;min-height:0;gap:4px;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}\\n\"], dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: ReactiveFormsModule }, { kind: \"directive\", type: i2.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i2.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i2.NgControlStatusGroup, selector: \"[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]\" }, { kind: \"directive\", type: i2.FormGroupDirective, selector: \"[formGroup]\", inputs: [\"formGroup\"], outputs: [\"ngSubmit\"], exportAs: [\"ngForm\"] }, { kind: \"directive\", type: i2.FormControlName, selector: \"[formControlName]\", inputs: [\"formControlName\", \"disabled\", \"ngModel\"], outputs: [\"ngModelChange\"] }, { kind: \"directive\", type: i2.FormGroupName, selector: \"[formGroupName]\", inputs: [\"formGroupName\"] }, { kind: \"component\", type: RouterOutletFrame, selector: \"frames-router-outlet\", outputs: [\"events\"] }, { kind: \"ngmodule\", type: MatExpansionModule }, { kind: \"component\", type: i3.MatExpansionPanel, selector: \"mat-expansion-panel\", inputs: [\"hideToggle\", \"togglePosition\"], outputs: [\"afterExpand\", \"afterCollapse\"], exportAs: [\"matExpansionPanel\"] }, { kind: \"component\", type: i3.MatExpansionPanelHeader, selector: \"mat-expansion-panel-header\", inputs: [\"expandedHeight\", \"collapsedHeight\", \"tabIndex\"] }, { kind: \"directive\", type: i3.MatExpansionPanelTitle, selector: \"mat-panel-title\" }, { kind: \"directive\", type: i3.MatExpansionPanelDescription, selector: \"mat-panel-description\" }, { kind: \"ngmodule\", type: MatIconModule }, { kind: \"component\", type: i4.MatIcon, selector: \"mat-icon\", inputs: [\"color\", \"inline\", \"svgIcon\", \"fontSet\", \"fontIcon\"], exportAs: [\"matIcon\"] }, { kind: \"ngmodule\", type: MatProgressSpinnerModule }, { kind: \"component\", type: i5.MatProgressSpinner, selector: \"mat-progress-spinner, mat-spinner\", inputs: [\"color\", \"mode\", \"value\", \"diameter\", \"strokeWidth\"], exportAs: [\"matProgressSpinner\"] }, { kind: \"ngmodule\", type: MatButtonModule }, { kind: \"component\", type: i6.MatButton, selector: \" button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] \", inputs: [\"matButton\"], exportAs: [\"matButton\", \"matAnchor\"] }, { kind: \"ngmodule\", type: MatFormFieldModule }, { kind: \"component\", type: i7.MatFormField, selector: \"mat-form-field\", inputs: [\"hideRequiredMarker\", \"color\", \"floatLabel\", \"appearance\", \"subscriptSizing\", \"hintLabel\"], exportAs: [\"matFormField\"] }, { kind: \"directive\", type: i7.MatLabel, selector: \"mat-label\" }, { kind: \"ngmodule\", type: MatInputModule }, { kind: \"directive\", type: i8.MatInput, selector: \"input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]\", inputs: [\"disabled\", \"id\", \"placeholder\", \"name\", \"required\", \"type\", \"errorStateMatcher\", \"aria-describedby\", \"value\", \"readonly\", \"disabledInteractive\"], exportAs: [\"matInput\"] }, { kind: \"directive\", type: NavigatorOrganismStore, selector: \"organisms-navigator\", inputs: [\"startActions\", \"endActions\", \"title\"] }, { kind: \"component\", type: TableOrganism, selector: \"organisms-table\" }, { kind: \"component\", type: ListOrganism, selector: \"organisms-list\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });\n}\n__decorate([\n Effect(ListOrganism.ActionId.CLICK_ITEM),\n __metadata(\"design:type\", Function),\n __metadata(\"design:paramtypes\", [Object]),\n __metadata(\"design:returntype\", void 0)\n], QueryPageV2.prototype, \"onItemClick\", null);\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryPageV2, decorators: [{\n type: Component,\n args: [{ selector: 'pages-query-v2', standalone: true, imports: [\n CommonModule,\n ReactiveFormsModule,\n RouterOutletFrame,\n MatExpansionModule,\n MatIconModule,\n MatProgressSpinnerModule,\n MatButtonModule,\n MatFormFieldModule,\n MatInputModule,\n NavigatorOrganismStore,\n TableOrganism,\n ListOrganism,\n JsonPipe,\n ], providers: [\n QueryFeature.provideDefault(),\n ], changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [\n {\n directive: QueryPageV2Store,\n inputs: ['query', 'navEndActions', 'columnNames', 'presenter']\n }\n ], template: \"<frames-router-outlet>\\n <organisms-navigator\\n injectable\\n [endActions]=\\\"store.navEndActions()\\\"\\n (action)=\\\"dispatch($event)\\\"\\n >\\n <span class=\\\"title\\\">{{ store.title() }}</span>\\n </organisms-navigator>\\n\\n <div class=\\\"qtp-container\\\">\\n <!-- Query Panel -->\\n <mat-expansion-panel class=\\\"config-panel query-panel\\\"\\n [expanded]=\\\"store.queryPanelExpanded()\\\"\\n (opened)=\\\"store.toggleQueryPanel(true)\\\"\\n (closed)=\\\"store.toggleQueryPanel(false)\\\">\\n <mat-expansion-panel-header>\\n <mat-panel-title>\\n <mat-icon>code</mat-icon>\\n <span>Query</span>\\n </mat-panel-title>\\n <mat-panel-description class=\\\"header-actions\\\">\\n <span class=\\\"query-type\\\">{{ store.queryType() }}</span>\\n <button mat-flat-button color=\\\"primary\\\" class=\\\"header-run-button\\\"\\n (click)=\\\"store.refresh(); $event.stopPropagation()\\\">\\n <mat-icon>play_arrow</mat-icon>Run\\n </button>\\n </mat-panel-description>\\n </mat-expansion-panel-header>\\n <div class=\\\"query-content\\\">\\n <div class=\\\"query-form\\\" [formGroup]=\\\"store.feature.form\\\">\\n <div class=\\\"form-row\\\" formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"endpoint-field\\\">\\n <mat-label>Endpoint</mat-label>\\n <input matInput formControlName=\\\"endpoint\\\" placeholder=\\\"GraphQL Endpoint\\\">\\n </mat-form-field>\\n </div>\\n <div class=\\\"form-row query-row\\\" formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"query-field\\\">\\n <mat-label>Query</mat-label>\\n <textarea matInput formControlName=\\\"query\\\" rows=\\\"12\\\"\\n placeholder=\\\"GraphQL Query or Subscription\\\"></textarea>\\n </mat-form-field>\\n </div>\\n <div class=\\\"form-row variables-row\\\" formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"variables-field\\\">\\n <mat-label>Variables (JSON)</mat-label>\\n <textarea matInput formControlName=\\\"variablesJson\\\" rows=\\\"3\\\"\\n placeholder='{\\\"limit\\\": 25, \\\"offset\\\": 0}'></textarea>\\n </mat-form-field>\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"headers-field\\\">\\n <mat-label>Headers (JSON)</mat-label>\\n <textarea matInput formControlName=\\\"headersJson\\\" rows=\\\"3\\\"\\n placeholder='{\\\"content-type\\\": \\\"application/json\\\"}'></textarea>\\n </mat-form-field>\\n </div>\\n </div>\\n </div>\\n </mat-expansion-panel>\\n\\n <!-- Transformer Panel -->\\n <mat-expansion-panel class=\\\"config-panel transformer-panel\\\"\\n [expanded]=\\\"store.transformerPanelExpanded()\\\"\\n (opened)=\\\"store.toggleTransformerPanel(true)\\\"\\n (closed)=\\\"store.toggleTransformerPanel(false)\\\">\\n <mat-expansion-panel-header>\\n <mat-panel-title>\\n <mat-icon>transform</mat-icon>\\n <span>Transformer</span>\\n </mat-panel-title>\\n <mat-panel-description class=\\\"header-actions\\\">\\n <button mat-flat-button color=\\\"primary\\\" class=\\\"header-run-button\\\"\\n (click)=\\\"store.refresh(); $event.stopPropagation()\\\">\\n <mat-icon>play_arrow</mat-icon>Run\\n </button>\\n </mat-panel-description>\\n </mat-expansion-panel-header>\\n <div class=\\\"transformer-content\\\" [formGroup]=\\\"store.feature.form\\\">\\n <div formGroupName=\\\"graphql\\\">\\n <mat-form-field appearance=\\\"outline\\\" class=\\\"transformer-field\\\">\\n <mat-label>Transformer (TypeScript)</mat-label>\\n <textarea matInput formControlName=\\\"transformerTs\\\" rows=\\\"10\\\"\\n placeholder=\\\"const transformer = (data) => data;\\\"></textarea>\\n </mat-form-field>\\n </div>\\n </div>\\n </mat-expansion-panel>\\n\\n <!-- Presenter Panel -->\\n <mat-expansion-panel class=\\\"config-panel presenter-panel\\\"\\n [expanded]=\\\"store.presenterPanelExpanded()\\\"\\n (opened)=\\\"store.togglePresenterPanel(true)\\\"\\n (closed)=\\\"store.togglePresenterPanel(false)\\\">\\n <mat-expansion-panel-header>\\n <mat-panel-title>\\n <mat-icon>table_chart</mat-icon>\\n <span>Presenter</span>\\n </mat-panel-title>\\n <mat-panel-description class=\\\"header-actions\\\">\\n @if (store.isLoading()) {\\n <mat-spinner diameter=\\\"16\\\"></mat-spinner>\\n }\\n <span>{{ store.itemCount() }} \\u4EF6</span>\\n </mat-panel-description>\\n </mat-expansion-panel-header>\\n <div class=\\\"presenter-content\\\">\\n @switch (store.presenter()) {\\n @case ('list') {\\n <organisms-list\\n [items]=\\\"store.items()\\\"\\n (action)=\\\"dispatch($event)\\\"\\n />\\n }\\n @default {\\n <organisms-table\\n [items]=\\\"store.items()\\\"\\n [form]=\\\"store.tableForm()\\\"\\n [columnFormFieldMap]=\\\"store.columnFormFieldMap()\\\"\\n />\\n }\\n }\\n </div>\\n </mat-expansion-panel>\\n </div>\\n</frames-router-outlet>\\n\", styles: [\".config-panel{background:#0000004d;flex:0 0 auto;display:flex;flex-direction:column;overflow:hidden;width:100%}.config-panel.mat-expanded{flex:1 1 0;min-height:0}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content-wrapper{flex:1 1 0;min-height:0}.config-panel ::ng-deep .mat-expansion-panel-header{padding:0 12px;height:40px;flex:0 0 40px}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-content{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}.config-panel.mat-expanded ::ng-deep .mat-expansion-panel-body{display:flex;flex-direction:column;flex:1 1 0;min-height:0;padding:8px 12px;overflow:hidden}.config-panel ::ng-deep .mat-expansion-panel-header-title{display:flex;align-items:center;gap:8px;font-size:12px;color:#ffffffb3;flex:0 0 auto}.config-panel ::ng-deep .mat-expansion-panel-header-title mat-icon{font-size:16px;width:16px;height:16px}.config-panel ::ng-deep .mat-expansion-panel-header-description{flex:1;justify-content:flex-end;margin-right:0}.header-actions{display:flex;align-items:center;gap:8px;color:#ffffffb3}.query-type{font-size:11px;color:#ffffff80;padding:2px 8px;background:#ffffff1a;border-radius:4px}.header-run-button{height:24px;line-height:24px;font-size:11px;padding:0 8px;min-width:auto;background:#1976d2;color:#fff}.header-run-button ::ng-deep .mat-icon{font-size:14px;width:14px;height:14px;margin-right:2px}::ng-deep .mat-mdc-form-field{width:100%}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none}::ng-deep .mat-mdc-text-field-wrapper{background:#ffffff0d}::ng-deep .mdc-notched-outline__leading,::ng-deep .mdc-notched-outline__notch,::ng-deep .mdc-notched-outline__trailing{border-color:#fff3!important}::ng-deep .mat-mdc-form-field-label{color:#fff9}::ng-deep .mat-mdc-input-element{color:#ffffffe6}::ng-deep textarea.mat-mdc-input-element{min-height:60px}.query-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.query-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.query-form{display:flex;flex-direction:column;gap:8px;width:100%;height:100%;min-height:0}.form-row{display:flex;gap:8px;width:100%;flex:0 0 auto}.form-row.query-row{flex:1 1 0;min-height:0}.form-row.variables-row .variables-field,.form-row.variables-row .headers-field{flex:1 1 50%}.endpoint-field{width:100%;flex:0 0 auto}.query-field{width:100%;flex:1 1 0;min-height:0}.query-field ::ng-deep .mat-mdc-form-field-flex{height:100%}.query-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none;height:100%}.transformer-panel ::ng-deep .mat-expansion-panel-body{padding:8px}.transformer-content{flex:1 1 0;min-height:0;overflow:auto;background:#0a0a0a;border-radius:4px;padding:8px}.transformer-field{width:100%}.transformer-field ::ng-deep textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4;resize:none}.presenter-panel ::ng-deep .mat-expansion-panel-body{padding:0}.presenter-content{flex:1 1 0;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column}.presenter-content ::ng-deep organisms-table{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden}:host{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}:host ::ng-deep frames-line-up .main{display:flex;flex-direction:column;width:100%;max-width:100%}.title{font-size:16px;font-weight:500}.qtp-container{display:flex;flex-direction:column;flex:1 1 0;min-height:0;gap:4px;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}\\n\"] }]\n }], propDecorators: { onItemClick: [] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktdjIucGFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tcG9uZW50cy9zcmMvbGliL3BhZ2VzL3F1ZXJ5LXYyL3F1ZXJ5LXYyLnBhZ2UudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AeHhtYWNoaW5hL2NvbXBvbmVudHMvc3JjL2xpYi9wYWdlcy9xdWVyeS12Mi9xdWVyeS12Mi5wYWdlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNuRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7Ozs7OztBQWlDdEUsTUFBTSxPQUFPLFdBQVksU0FBUSxpQkFBaUI7SUFDaEQsTUFBTSxDQUFVLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsS0FBSyxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBR2hDLFdBQVcsQ0FBQyxJQUFTO1FBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsUUFBUSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM1RCxDQUFDO3VHQVBVLFdBQVc7MkZBQVgsV0FBVyw2REFiWDtZQUNULFlBQVksQ0FBQyxjQUFjLEVBQUU7U0FDOUIsNk5DdENILHNwS0E0SEEsaWpIRHRHSSxZQUFZLDhCQUNaLG1CQUFtQiwyOEJBQ25CLGlCQUFpQixxRkFDakIsa0JBQWtCLDBqQkFDbEIsYUFBYSxtTEFDYix3QkFBd0Isa09BQ3hCLGVBQWUsbVhBQ2Ysa0JBQWtCLDBTQUNsQixjQUFjLGtZQUNkLHNCQUFzQixpSEFDdEIsYUFBYSw0REFDYixZQUFZOztBQXFCSjtJQURULE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQzs7Ozs4Q0FHeEM7MkZBUFUsV0FBVztrQkEvQnZCLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYix3QkFBd0I7d0JBQ3hCLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLHNCQUFzQjt3QkFDdEIsYUFBYTt3QkFDYixZQUFZO3dCQUNaLFFBQVE7cUJBQ1QsYUFDVTt3QkFDVCxZQUFZLENBQUMsY0FBYyxFQUFFO3FCQUM5QixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0I7d0JBQ2Q7NEJBQ0UsU0FBUyxFQUFFLGdCQUFnQjs0QkFDM0IsTUFBTSxFQUFFLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDO3lCQUMvRDtxQkFDRjs4QkFPUyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEV4cGFuc2lvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2V4cGFuc2lvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgUm91dGVyT3V0bGV0RnJhbWUgfSBmcm9tICdAbmctYXRvbWljL2NvbXBvbmVudHMvZnJhbWVzL3JvdXRlci1vdXRsZXQnO1xuaW1wb3J0IHsgTmF2aWdhdG9yT3JnYW5pc21TdG9yZSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy9vcmdhbmlzbXMvbmF2aWdhdG9yJztcbmltcG9ydCB7IE5nQXRvbWljQ29tcG9uZW50LCBFZmZlY3QgfSBmcm9tICdAbmctYXRvbWljL2NvcmUnO1xuaW1wb3J0IHsgSnNvblBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUXVlcnlGZWF0dXJlIH0gZnJvbSAnQHh4bWFjaGluYS9jb21wb25lbnRzL2ZlYXR1cmVzL3F1ZXJ5JztcbmltcG9ydCB7IFF1ZXJ5UGFnZVYyU3RvcmUsIEFjdGlvbklkIH0gZnJvbSAnLi9xdWVyeS12Mi5wYWdlLnN0b3JlJztcbmltcG9ydCB7IExpc3RPcmdhbmlzbSB9IGZyb20gJ0BuZy1hdG9taWMvY29tcG9uZW50cy9vcmdhbmlzbXMvbGlzdCc7XG5pbXBvcnQgeyBUYWJsZU9yZ2FuaXNtIH0gZnJvbSAnQG5nLWF0b21pYy9jb21wb25lbnRzL29yZ2FuaXNtcy90YWJsZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BhZ2VzLXF1ZXJ5LXYyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIFJvdXRlck91dGxldEZyYW1lLFxuICAgIE1hdEV4cGFuc2lvbk1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE5hdmlnYXRvck9yZ2FuaXNtU3RvcmUsXG4gICAgVGFibGVPcmdhbmlzbSxcbiAgICBMaXN0T3JnYW5pc20sXG4gICAgSnNvblBpcGUsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIFF1ZXJ5RmVhdHVyZS5wcm92aWRlRGVmYXVsdCgpLFxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vcXVlcnktdjIucGFnZS5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3F1ZXJ5LXYyLnBhZ2Uuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0RGlyZWN0aXZlczogW1xuICAgIHtcbiAgICAgIGRpcmVjdGl2ZTogUXVlcnlQYWdlVjJTdG9yZSxcbiAgICAgIGlucHV0czogWydxdWVyeScsICduYXZFbmRBY3Rpb25zJywgJ2NvbHVtbk5hbWVzJywgJ3ByZXNlbnRlciddXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFF1ZXJ5UGFnZVYyIGV4dGVuZHMgTmdBdG9taWNDb21wb25lbnQge1xuICBzdGF0aWMgcmVhZG9ubHkgQWN0aW9uSWQgPSBBY3Rpb25JZDtcbiAgcmVhZG9ubHkgc3RvcmUgPSBpbmplY3QoUXVlcnlQYWdlVjJTdG9yZSk7XG5cbiAgQEVmZmVjdChMaXN0T3JnYW5pc20uQWN0aW9uSWQuQ0xJQ0tfSVRFTSlcbiAgcHJvdGVjdGVkIG9uSXRlbUNsaWNrKGl0ZW06IGFueSkge1xuICAgIHRoaXMuZGlzcGF0Y2goeyBpZDogQWN0aW9uSWQuQ0xJQ0tfSVRFTSwgcGF5bG9hZDogaXRlbSB9KTtcbiAgfVxufVxuIiwiPGZyYW1lcy1yb3V0ZXItb3V0bGV0PlxuICA8b3JnYW5pc21zLW5hdmlnYXRvclxuICAgIGluamVjdGFibGVcbiAgICBbZW5kQWN0aW9uc109XCJzdG9yZS5uYXZFbmRBY3Rpb25zKClcIlxuICAgIChhY3Rpb24pPVwiZGlzcGF0Y2goJGV2ZW50KVwiXG4gID5cbiAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+e3sgc3RvcmUudGl0bGUoKSB9fTwvc3Bhbj5cbiAgPC9vcmdhbmlzbXMtbmF2aWdhdG9yPlxuXG4gIDxkaXYgY2xhc3M9XCJxdHAtY29udGFpbmVyXCI+XG4gICAgPCEtLSBRdWVyeSBQYW5lbCAtLT5cbiAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbCBjbGFzcz1cImNvbmZpZy1wYW5lbCBxdWVyeS1wYW5lbFwiXG4gICAgICBbZXhwYW5kZWRdPVwic3RvcmUucXVlcnlQYW5lbEV4cGFuZGVkKClcIlxuICAgICAgKG9wZW5lZCk9XCJzdG9yZS50b2dnbGVRdWVyeVBhbmVsKHRydWUpXCJcbiAgICAgIChjbG9zZWQpPVwic3RvcmUudG9nZ2xlUXVlcnlQYW5lbChmYWxzZSlcIj5cbiAgICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlcj5cbiAgICAgICAgPG1hdC1wYW5lbC10aXRsZT5cbiAgICAgICAgICA8bWF0LWljb24+Y29kZTwvbWF0LWljb24+XG4gICAgICAgICAgPHNwYW4+UXVlcnk8L3NwYW4+XG4gICAgICAgIDwvbWF0LXBhbmVsLXRpdGxlPlxuICAgICAgICA8bWF0LXBhbmVsLWRlc2NyaXB0aW9uIGNsYXNzPVwiaGVhZGVyLWFjdGlvbnNcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInF1ZXJ5LXR5cGVcIj57eyBzdG9yZS5xdWVyeVR5cGUoKSB9fTwvc3Bhbj5cbiAgICAgICAgICA8YnV0dG9uIG1hdC1mbGF0LWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiBjbGFzcz1cImhlYWRlci1ydW4tYnV0dG9uXCJcbiAgICAgICAgICAgIChjbGljayk9XCJzdG9yZS5yZWZyZXNoKCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uPnBsYXlfYXJyb3c8L21hdC1pY29uPlJ1blxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L21hdC1wYW5lbC1kZXNjcmlwdGlvbj5cbiAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXI+XG4gICAgICA8ZGl2IGNsYXNzPVwicXVlcnktY29udGVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicXVlcnktZm9ybVwiIFtmb3JtR3JvdXBdPVwic3RvcmUuZmVhdHVyZS5mb3JtXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tcm93XCIgZm9ybUdyb3VwTmFtZT1cImdyYXBocWxcIj5cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiZW5kcG9pbnQtZmllbGRcIj5cbiAgICAgICAgICAgICAgPG1hdC1sYWJlbD5FbmRwb2ludDwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwiZW5kcG9pbnRcIiBwbGFjZWhvbGRlcj1cIkdyYXBoUUwgRW5kcG9pbnRcIj5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tcm93IHF1ZXJ5LXJvd1wiIGZvcm1Hcm91cE5hbWU9XCJncmFwaHFsXCI+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cInF1ZXJ5LWZpZWxkXCI+XG4gICAgICAgICAgICAgIDxtYXQtbGFiZWw+UXVlcnk8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgPHRleHRhcmVhIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cInF1ZXJ5XCIgcm93cz1cIjEyXCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIkdyYXBoUUwgUXVlcnkgb3IgU3Vic2NyaXB0aW9uXCI+PC90ZXh0YXJlYT5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tcm93IHZhcmlhYmxlcy1yb3dcIiBmb3JtR3JvdXBOYW1lPVwiZ3JhcGhxbFwiPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ2YXJpYWJsZXMtZmllbGRcIj5cbiAgICAgICAgICAgICAgPG1hdC1sYWJlbD5WYXJpYWJsZXMgKEpTT04pPC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ2YXJpYWJsZXNKc29uXCIgcm93cz1cIjNcIlxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPSd7XCJsaW1pdFwiOiAyNSwgXCJvZmZzZXRcIjogMH0nPjwvdGV4dGFyZWE+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJoZWFkZXJzLWZpZWxkXCI+XG4gICAgICAgICAgICAgIDxtYXQtbGFiZWw+SGVhZGVycyAoSlNPTik8L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgPHRleHRhcmVhIG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImhlYWRlcnNKc29uXCIgcm93cz1cIjNcIlxuICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPSd7XCJjb250ZW50LXR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCJ9Jz48L3RleHRhcmVhPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC1leHBhbnNpb24tcGFuZWw+XG5cbiAgICA8IS0tIFRyYW5zZm9ybWVyIFBhbmVsIC0tPlxuICAgIDxtYXQtZXhwYW5zaW9uLXBhbmVsIGNsYXNzPVwiY29uZmlnLXBhbmVsIHRyYW5zZm9ybWVyLXBhbmVsXCJcbiAgICAgIFtleHBhbmRlZF09XCJzdG9yZS50cmFuc2Zvcm1lclBhbmVsRXhwYW5kZWQoKVwiXG4gICAgICAob3BlbmVkKT1cInN0b3JlLnRvZ2dsZVRyYW5zZm9ybWVyUGFuZWwodHJ1ZSlcIlxuICAgICAgKGNsb3NlZCk9XCJzdG9yZS50b2dnbGVUcmFuc2Zvcm1lclBhbmVsKGZhbHNlKVwiPlxuICAgICAgPG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxuICAgICAgICA8bWF0LXBhbmVsLXRpdGxlPlxuICAgICAgICAgIDxtYXQtaWNvbj50cmFuc2Zvcm08L21hdC1pY29uPlxuICAgICAgICAgIDxzcGFuPlRyYW5zZm9ybWVyPC9zcGFuPlxuICAgICAgICA8L21hdC1wYW5lbC10aXRsZT5cbiAgICAgICAgPG1hdC1wYW5lbC1kZXNjcmlwdGlvbiBjbGFzcz1cImhlYWRlci1hY3Rpb25zXCI+XG4gICAgICAgICAgPGJ1dHRvbiBtYXQtZmxhdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJoZWFkZXItcnVuLWJ1dHRvblwiXG4gICAgICAgICAgICAoY2xpY2spPVwic3RvcmUucmVmcmVzaCgpOyAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5wbGF5X2Fycm93PC9tYXQtaWNvbj5SdW5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9tYXQtcGFuZWwtZGVzY3JpcHRpb24+XG4gICAgICA8L21hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxuICAgICAgPGRpdiBjbGFzcz1cInRyYW5zZm9ybWVyLWNvbnRlbnRcIiBbZm9ybUdyb3VwXT1cInN0b3JlLmZlYXR1cmUuZm9ybVwiPlxuICAgICAgICA8ZGl2IGZvcm1Hcm91cE5hbWU9XCJncmFwaHFsXCI+XG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJ0cmFuc2Zvcm1lci1maWVsZFwiPlxuICAgICAgICAgICAgPG1hdC1sYWJlbD5UcmFuc2Zvcm1lciAoVHlwZVNjcmlwdCk8L21hdC1sYWJlbD5cbiAgICAgICAgICAgIDx0ZXh0YXJlYSBtYXRJbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJ0cmFuc2Zvcm1lclRzXCIgcm93cz1cIjEwXCJcbiAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJjb25zdCB0cmFuc2Zvcm1lciA9IChkYXRhKSA9PiBkYXRhO1wiPjwvdGV4dGFyZWE+XG4gICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC1leHBhbnNpb24tcGFuZWw+XG5cbiAgICA8IS0tIFByZXNlbnRlciBQYW5lbCAtLT5cbiAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbCBjbGFzcz1cImNvbmZpZy1wYW5lbCBwcmVzZW50ZXItcGFuZWxcIlxuICAgICAgW2V4cGFuZGVkXT1cInN0b3JlLnByZXNlbnRlclBhbmVsRXhwYW5kZWQoKVwiXG4gICAgICAob3BlbmVkKT1cInN0b3JlLnRvZ2dsZVByZXNlbnRlclBhbmVsKHRydWUpXCJcbiAgICAgIChjbG9zZWQpPVwic3RvcmUudG9nZ2xlUHJlc2VudGVyUGFuZWwoZmFsc2UpXCI+XG4gICAgICA8bWF0LWV4cGFuc2lvbi1wYW5lbC1oZWFkZXI+XG4gICAgICAgIDxtYXQtcGFuZWwtdGl0bGU+XG4gICAgICAgICAgPG1hdC1pY29uPnRhYmxlX2NoYXJ0PC9tYXQtaWNvbj5cbiAgICAgICAgICA8c3Bhbj5QcmVzZW50ZXI8L3NwYW4+XG4gICAgICAgIDwvbWF0LXBhbmVsLXRpdGxlPlxuICAgICAgICA8bWF0LXBhbmVsLWRlc2NyaXB0aW9uIGNsYXNzPVwiaGVhZGVyLWFjdGlvbnNcIj5cbiAgICAgICAgICBAaWYgKHN0b3JlLmlzTG9hZGluZygpKSB7XG4gICAgICAgICAgICA8bWF0LXNwaW5uZXIgZGlhbWV0ZXI9XCIxNlwiPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxzcGFuPnt7IHN0b3JlLml0ZW1Db3VudCgpIH19IOS7tjwvc3Bhbj5cbiAgICAgICAgPC9tYXQtcGFuZWwtZGVzY3JpcHRpb24+XG4gICAgICA8L21hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyPlxuICAgICAgPGRpdiBjbGFzcz1cInByZXNlbnRlci1jb250ZW50XCI+XG4gICAgICAgIEBzd2l0Y2ggKHN0b3JlLnByZXNlbnRlcigpKSB7XG4gICAgICAgICAgQGNhc2UgKCdsaXN0Jykge1xuICAgICAgICAgICAgPG9yZ2FuaXNtcy1saXN0XG4gICAgICAgICAgICAgIFtpdGVtc109XCJzdG9yZS5pdGVtcygpXCJcbiAgICAgICAgICAgICAgKGFjdGlvbik9XCJkaXNwYXRjaCgkZXZlbnQpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBkZWZhdWx0IHtcbiAgICAgICAgICAgIDxvcmdhbmlzbXMtdGFibGVcbiAgICAgICAgICAgICAgW2l0ZW1zXT1cInN0b3JlLml0ZW1zKClcIlxuICAgICAgICAgICAgICBbZm9ybV09XCJzdG9yZS50YWJsZUZvcm0oKVwiXG4gICAgICAgICAgICAgIFtjb2x1bW5Gb3JtRmllbGRNYXBdPVwic3RvcmUuY29sdW1uRm9ybUZpZWxkTWFwKClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbD5cbiAgPC9kaXY+XG48L2ZyYW1lcy1yb3V0ZXItb3V0bGV0PlxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbXBvbmVudHMtcGFnZXMtcXVlcnktdjIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AeHhtYWNoaW5hL2NvbXBvbmVudHMvc3JjL2xpYi9wYWdlcy9xdWVyeS12Mi94eG1hY2hpbmEtY29tcG9uZW50cy1wYWdlcy1xdWVyeS12Mi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":["i1.QueryPageV2Store"],"mappings":"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"}
1
+ {"version":3,"file":"xxmachina-components-pages-query-v2.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/pages/query-v2/query-v2.page.store.ts","../../../../../packages/@xxmachina/components/src/lib/pages/query-v2/query-v2.page.ts","../../../../../packages/@xxmachina/components/src/lib/pages/query-v2/query-v2.page.html","../../../../../packages/@xxmachina/components/src/lib/pages/query-v2/xxmachina-components-pages-query-v2.ts"],"sourcesContent":["import { Directive, computed, effect, inject, input, signal, Provider } from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport { InjectableComponent, provideEffect } from '@ng-atomic/core';\nimport { Query } from '@xxmachina/common/domain/models';\nimport { QueryFeature } from '@xxmachina/components/features/query';\nimport { Action } from '@ng-atomic/core';\nimport { injectRouteData } from '@ng-atomic/common/utils';\nimport { map, startWith } from 'rxjs';\nimport { buildItemsMapFromResult } from '@xxmachina/components/pages/query';\nimport { FormBuilder } from '@angular/forms';\nimport { ListOrganism } from '@ng-atomic/components/organisms/list';\n\nexport type PresenterType = 'table' | 'list';\n\nexport enum ActionId {\n CLICK_ITEM = '[@xxmachina/components/pages/query-v2] Click Item',\n}\n\n@Directive({ standalone: true })\nexport class QueryPageV2Store extends InjectableComponent {\n static readonly ActionId = ActionId;\n\n /**\n * Provides an effect handler for CLICK_ITEM action\n */\n static provideClickItemEffect<T>(handler: (item: T) => void): Provider[] {\n return [\n provideEffect(ListOrganism.ActionId.CLICK_ITEM, () => handler),\n ];\n }\n\n readonly query = input<Query>(injectRouteData<Query>('query')());\n readonly navEndActions = input<Action[]>(injectRouteData<Action[]>('navEndActions')());\n readonly columnNames = input<string[]>([]);\n readonly presenter = input<PresenterType>(injectRouteData<PresenterType>('presenter')() ?? 'table');\n\n readonly feature = inject(QueryFeature);\n private readonly fb = inject(FormBuilder);\n\n // Panel expansion states\n readonly queryPanelExpanded = signal(true);\n readonly transformerPanelExpanded = signal(false);\n readonly presenterPanelExpanded = signal(true);\n\n // Count of open panels\n readonly openPanelCount = computed(() =>\n [this.queryPanelExpanded(), this.transformerPanelExpanded(), this.presenterPanelExpanded()]\n .filter(Boolean).length\n );\n\n // Panel toggle methods (ensure at least one panel stays open)\n toggleQueryPanel(expanded: boolean): void {\n if (!expanded && this.openPanelCount() <= 1) return;\n this.queryPanelExpanded.set(expanded);\n }\n\n toggleTransformerPanel(expanded: boolean): void {\n if (!expanded && this.openPanelCount() <= 1) return;\n this.transformerPanelExpanded.set(expanded);\n }\n\n togglePresenterPanel(expanded: boolean): void {\n if (!expanded && this.openPanelCount() <= 1) return;\n this.presenterPanelExpanded.set(expanded);\n }\n\n // Query metadata\n readonly title = computed(() => this.query()?.title || 'データ一覧');\n readonly queryType = computed(() => this.query()?.type || 'graphql');\n\n // Loading state\n private readonly isLoading$ = this.feature.result$.pipe(\n map(() => false),\n startWith(true),\n );\n readonly isLoading = toSignal(this.isLoading$, { initialValue: true });\n\n // Result data\n readonly result = computed(() => this.feature.result() ?? {});\n\n readonly itemsMap = computed(() => buildItemsMapFromResult(this.result()));\n\n readonly items = computed(() => {\n const map = this.itemsMap();\n const keys = Object.keys(map);\n if (keys.length === 0) return [];\n return map[keys[0]]?.items ?? [];\n });\n\n readonly itemCount = computed(() => this.items().length);\n\n // Table display columns - automatically determine from first item\n readonly displayedColumns = computed(() => {\n const items = this.items();\n if (items.length === 0) return [];\n const firstItem = items[0];\n if (!firstItem || typeof firstItem !== 'object') return [];\n return Object.keys(firstItem);\n });\n\n // Form for table columns\n readonly tableForm = computed(() => {\n const columns = this.displayedColumns();\n const columnsMap: any = {};\n columns.forEach(col => {\n columnsMap[col] = { width: 150, hidden: false };\n });\n return this.fb.group({\n columns: this.fb.group({ map: this.fb.group(columnsMap) })\n });\n });\n\n // Column form field map for organisms-table\n readonly columnFormFieldMap = computed(() => {\n const columns = this.displayedColumns();\n const fieldMap: any = {};\n columns.forEach(col => {\n fieldMap[col] = { type: 'text', label: col };\n });\n return fieldMap;\n });\n\n constructor() {\n super();\n\n // queryをformにpatch\n effect(() => {\n const query = this.query();\n if (query) {\n this.feature.form.patchValue({\n id: query.id,\n title: query.title,\n type: query.type,\n graphql: query.graphql,\n });\n this.feature.refresh();\n }\n });\n }\n\n refresh(): void {\n this.feature.refresh();\n }\n}\n","import { Component, ChangeDetectionStrategy, inject } from '@angular/core';\n\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { RouterOutletFrame } from '@ng-atomic/components/frames/router-outlet';\nimport { NavigatorOrganismStore } from '@ng-atomic/components/organisms/navigator';\nimport { NgAtomicComponent, Effect } from '@ng-atomic/core';\nimport { JsonPipe } from '@angular/common';\nimport { QueryFeature } from '@xxmachina/components/features/query';\nimport { QueryPageV2Store, ActionId } from './query-v2.page.store';\nimport { ListOrganism } from '@ng-atomic/components/organisms/list';\nimport { TableOrganism } from '@ng-atomic/components/organisms/table';\n\n@Component({\n selector: 'pages-query-v2',\n standalone: true,\n imports: [\n ReactiveFormsModule,\n RouterOutletFrame,\n MatExpansionModule,\n MatIconModule,\n MatProgressSpinnerModule,\n MatButtonModule,\n MatFormFieldModule,\n MatInputModule,\n NavigatorOrganismStore,\n TableOrganism,\n ListOrganism,\n JsonPipe\n],\n providers: [\n QueryFeature.provideDefault(),\n ],\n templateUrl: './query-v2.page.html',\n styleUrl: './query-v2.page.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: QueryPageV2Store,\n inputs: ['query', 'navEndActions', 'columnNames', 'presenter']\n }\n ]\n})\nexport class QueryPageV2 extends NgAtomicComponent {\n static readonly ActionId = ActionId;\n readonly store = inject(QueryPageV2Store);\n\n @Effect(ListOrganism.ActionId.CLICK_ITEM)\n protected onItemClick(item: any) {\n this.dispatch({ id: ActionId.CLICK_ITEM, payload: item });\n }\n}\n","<frames-router-outlet>\n <organisms-navigator\n injectable\n [endActions]=\"store.navEndActions()\"\n (action)=\"dispatch($event)\"\n >\n <span class=\"title\">{{ store.title() }}</span>\n </organisms-navigator>\n\n <div class=\"qtp-container\">\n <!-- Query Panel -->\n <mat-expansion-panel class=\"config-panel query-panel\"\n [expanded]=\"store.queryPanelExpanded()\"\n (opened)=\"store.toggleQueryPanel(true)\"\n (closed)=\"store.toggleQueryPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>code</mat-icon>\n <span>Query</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n <span class=\"query-type\">{{ store.queryType() }}</span>\n <button mat-flat-button color=\"primary\" class=\"header-run-button\"\n (click)=\"store.refresh(); $event.stopPropagation()\">\n <mat-icon>play_arrow</mat-icon>Run\n </button>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"query-content\">\n <div class=\"query-form\" [formGroup]=\"store.feature.form\">\n <div class=\"form-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"endpoint-field\">\n <mat-label>Endpoint</mat-label>\n <input matInput formControlName=\"endpoint\" placeholder=\"GraphQL Endpoint\">\n </mat-form-field>\n </div>\n <div class=\"form-row query-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"query-field\">\n <mat-label>Query</mat-label>\n <textarea matInput formControlName=\"query\" rows=\"12\"\n placeholder=\"GraphQL Query or Subscription\"></textarea>\n </mat-form-field>\n </div>\n <div class=\"form-row variables-row\" formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"variables-field\">\n <mat-label>Variables (JSON)</mat-label>\n <textarea matInput formControlName=\"variablesJson\" rows=\"3\"\n placeholder='{\"limit\": 25, \"offset\": 0}'></textarea>\n </mat-form-field>\n <mat-form-field appearance=\"outline\" class=\"headers-field\">\n <mat-label>Headers (JSON)</mat-label>\n <textarea matInput formControlName=\"headersJson\" rows=\"3\"\n placeholder='{\"content-type\": \"application/json\"}'></textarea>\n </mat-form-field>\n </div>\n </div>\n </div>\n </mat-expansion-panel>\n\n <!-- Transformer Panel -->\n <mat-expansion-panel class=\"config-panel transformer-panel\"\n [expanded]=\"store.transformerPanelExpanded()\"\n (opened)=\"store.toggleTransformerPanel(true)\"\n (closed)=\"store.toggleTransformerPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>transform</mat-icon>\n <span>Transformer</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n <button mat-flat-button color=\"primary\" class=\"header-run-button\"\n (click)=\"store.refresh(); $event.stopPropagation()\">\n <mat-icon>play_arrow</mat-icon>Run\n </button>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"transformer-content\" [formGroup]=\"store.feature.form\">\n <div formGroupName=\"graphql\">\n <mat-form-field appearance=\"outline\" class=\"transformer-field\">\n <mat-label>Transformer (TypeScript)</mat-label>\n <textarea matInput formControlName=\"transformerTs\" rows=\"10\"\n placeholder=\"const transformer = (data) => data;\"></textarea>\n </mat-form-field>\n </div>\n </div>\n </mat-expansion-panel>\n\n <!-- Presenter Panel -->\n <mat-expansion-panel class=\"config-panel presenter-panel\"\n [expanded]=\"store.presenterPanelExpanded()\"\n (opened)=\"store.togglePresenterPanel(true)\"\n (closed)=\"store.togglePresenterPanel(false)\">\n <mat-expansion-panel-header>\n <mat-panel-title>\n <mat-icon>table_chart</mat-icon>\n <span>Presenter</span>\n </mat-panel-title>\n <mat-panel-description class=\"header-actions\">\n @if (store.isLoading()) {\n <mat-spinner diameter=\"16\"></mat-spinner>\n }\n <span>{{ store.itemCount() }} 件</span>\n </mat-panel-description>\n </mat-expansion-panel-header>\n <div class=\"presenter-content\">\n @switch (store.presenter()) {\n @case ('list') {\n <organisms-list\n [items]=\"store.items()\"\n (action)=\"dispatch($event)\"\n />\n }\n @default {\n <organisms-table\n [items]=\"store.items()\"\n [form]=\"store.tableForm()\"\n [columnFormFieldMap]=\"store.columnFormFieldMap()\"\n />\n }\n }\n </div>\n </mat-expansion-panel>\n </div>\n</frames-router-outlet>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.QueryPageV2Store"],"mappings":"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"}