@powerhousedao/builder-tools 4.1.0-dev.12 → 4.1.0-dev.121

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 (250) hide show
  1. package/README.md +1 -0
  2. package/dist/browser.d.ts +2 -0
  3. package/dist/browser.d.ts.map +1 -0
  4. package/dist/browser.js +2 -0
  5. package/dist/browser.js.map +1 -0
  6. package/dist/connect-build/build.d.ts +1 -1
  7. package/dist/connect-build/build.d.ts.map +1 -1
  8. package/dist/connect-build/build.js +4 -3
  9. package/dist/connect-build/build.js.map +1 -1
  10. package/dist/connect-build/helpers.d.ts +6 -2
  11. package/dist/connect-build/helpers.d.ts.map +1 -1
  12. package/dist/connect-build/helpers.js +19 -3
  13. package/dist/connect-build/helpers.js.map +1 -1
  14. package/dist/connect-build/preview.d.ts +1 -1
  15. package/dist/connect-build/preview.d.ts.map +1 -1
  16. package/dist/connect-build/preview.js +1 -1
  17. package/dist/connect-build/preview.js.map +1 -1
  18. package/dist/connect-studio/index.d.ts +0 -1
  19. package/dist/connect-studio/index.d.ts.map +1 -1
  20. package/dist/connect-studio/index.js +0 -1
  21. package/dist/connect-studio/index.js.map +1 -1
  22. package/dist/connect-studio/server.d.ts +1 -1
  23. package/dist/connect-studio/server.d.ts.map +1 -1
  24. package/dist/connect-studio/server.js +53 -15
  25. package/dist/connect-studio/server.js.map +1 -1
  26. package/dist/connect-studio/studio.d.ts +1 -1
  27. package/dist/connect-studio/studio.d.ts.map +1 -1
  28. package/dist/connect-studio/studio.js +7 -1
  29. package/dist/connect-studio/studio.js.map +1 -1
  30. package/dist/connect-studio/types.d.ts +5 -1
  31. package/dist/connect-studio/types.d.ts.map +1 -1
  32. package/dist/connect-utils/build.d.ts +3 -0
  33. package/dist/connect-utils/build.d.ts.map +1 -0
  34. package/dist/connect-utils/build.js +21 -0
  35. package/dist/connect-utils/build.js.map +1 -0
  36. package/dist/connect-utils/env-config.d.ts +830 -0
  37. package/dist/connect-utils/env-config.d.ts.map +1 -0
  38. package/dist/connect-utils/env-config.js +513 -0
  39. package/dist/connect-utils/env-config.js.map +1 -0
  40. package/dist/connect-utils/helpers.d.ts +11 -3
  41. package/dist/connect-utils/helpers.d.ts.map +1 -1
  42. package/dist/connect-utils/helpers.js +77 -5
  43. package/dist/connect-utils/helpers.js.map +1 -1
  44. package/dist/connect-utils/index.d.ts +9 -0
  45. package/dist/connect-utils/index.d.ts.map +1 -1
  46. package/dist/connect-utils/index.js +9 -0
  47. package/dist/connect-utils/index.js.map +1 -1
  48. package/dist/connect-utils/preview.d.ts +3 -0
  49. package/dist/connect-utils/preview.d.ts.map +1 -0
  50. package/dist/connect-utils/preview.js +33 -0
  51. package/dist/connect-utils/preview.js.map +1 -0
  52. package/dist/connect-utils/studio.d.ts +7 -0
  53. package/dist/connect-utils/studio.d.ts.map +1 -0
  54. package/dist/connect-utils/studio.js +30 -0
  55. package/dist/connect-utils/studio.js.map +1 -0
  56. package/dist/connect-utils/types.d.ts +38 -0
  57. package/dist/connect-utils/types.d.ts.map +1 -0
  58. package/dist/connect-utils/types.js +2 -0
  59. package/dist/connect-utils/types.js.map +1 -0
  60. package/dist/connect-utils/vite-config.d.ts +61 -0
  61. package/dist/connect-utils/vite-config.d.ts.map +1 -0
  62. package/dist/connect-utils/vite-config.js +267 -0
  63. package/dist/connect-utils/vite-config.js.map +1 -0
  64. package/dist/connect-utils/vite-plugins/base.d.ts +1 -1
  65. package/dist/connect-utils/vite-plugins/base.d.ts.map +1 -1
  66. package/dist/connect-utils/vite-plugins/base.js.map +1 -1
  67. package/dist/connect-utils/vite-plugins/document-models-hmr.d.ts +3 -0
  68. package/dist/connect-utils/vite-plugins/document-models-hmr.d.ts.map +1 -0
  69. package/dist/connect-utils/vite-plugins/document-models-hmr.js +62 -0
  70. package/dist/connect-utils/vite-plugins/document-models-hmr.js.map +1 -0
  71. package/dist/connect-utils/vite-plugins/editors-hmr.d.ts +3 -0
  72. package/dist/connect-utils/vite-plugins/editors-hmr.d.ts.map +1 -0
  73. package/dist/connect-utils/vite-plugins/editors-hmr.js +61 -0
  74. package/dist/connect-utils/vite-plugins/editors-hmr.js.map +1 -0
  75. package/dist/connect-utils/vite-plugins/external-packages.d.ts +1 -1
  76. package/dist/connect-utils/vite-plugins/external-packages.d.ts.map +1 -1
  77. package/dist/connect-utils/vite-plugins/external-packages.js +15 -7
  78. package/dist/connect-utils/vite-plugins/external-packages.js.map +1 -1
  79. package/dist/connect-utils/vite-plugins/importmap.d.ts +1 -1
  80. package/dist/connect-utils/vite-plugins/importmap.d.ts.map +1 -1
  81. package/dist/connect-utils/vite-plugins/importmap.js +3 -1
  82. package/dist/connect-utils/vite-plugins/importmap.js.map +1 -1
  83. package/dist/connect-utils/vite-plugins/ph-external-packages.d.ts +2 -0
  84. package/dist/connect-utils/vite-plugins/ph-external-packages.d.ts.map +1 -0
  85. package/dist/connect-utils/vite-plugins/ph-external-packages.js +103 -0
  86. package/dist/connect-utils/vite-plugins/ph-external-packages.js.map +1 -0
  87. package/dist/connect-utils/vite-plugins/studio.d.ts +1 -1
  88. package/dist/connect-utils/vite-plugins/studio.d.ts.map +1 -1
  89. package/dist/document-model-editor/components/button.d.ts +1 -3
  90. package/dist/document-model-editor/components/button.d.ts.map +1 -1
  91. package/dist/document-model-editor/components/button.js.map +1 -1
  92. package/dist/document-model-editor/components/code-editors/constants.d.ts +3 -0
  93. package/dist/document-model-editor/components/code-editors/constants.d.ts.map +1 -0
  94. package/dist/document-model-editor/components/code-editors/constants.js +38 -0
  95. package/dist/document-model-editor/components/code-editors/constants.js.map +1 -0
  96. package/dist/document-model-editor/components/code-editors/factories.d.ts +4 -0
  97. package/dist/document-model-editor/components/code-editors/factories.d.ts.map +1 -0
  98. package/dist/document-model-editor/components/code-editors/factories.js +47 -0
  99. package/dist/document-model-editor/components/code-editors/factories.js.map +1 -0
  100. package/dist/document-model-editor/components/code-editors/graphql-editor.d.ts +3 -3
  101. package/dist/document-model-editor/components/code-editors/graphql-editor.d.ts.map +1 -1
  102. package/dist/document-model-editor/components/code-editors/graphql-editor.js +6 -2
  103. package/dist/document-model-editor/components/code-editors/graphql-editor.js.map +1 -1
  104. package/dist/document-model-editor/components/code-editors/hooks.d.ts +23 -0
  105. package/dist/document-model-editor/components/code-editors/hooks.d.ts.map +1 -0
  106. package/dist/document-model-editor/components/code-editors/hooks.js +59 -0
  107. package/dist/document-model-editor/components/code-editors/hooks.js.map +1 -0
  108. package/dist/document-model-editor/components/code-editors/json-editor.d.ts +2 -2
  109. package/dist/document-model-editor/components/code-editors/json-editor.d.ts.map +1 -1
  110. package/dist/document-model-editor/components/code-editors/json-editor.js +7 -4
  111. package/dist/document-model-editor/components/code-editors/json-editor.js.map +1 -1
  112. package/dist/document-model-editor/components/code-editors/linting.d.ts +6 -0
  113. package/dist/document-model-editor/components/code-editors/linting.d.ts.map +1 -0
  114. package/dist/document-model-editor/components/code-editors/linting.js +59 -0
  115. package/dist/document-model-editor/components/code-editors/linting.js.map +1 -0
  116. package/dist/document-model-editor/components/divider.js +1 -1
  117. package/dist/document-model-editor/components/divider.js.map +1 -1
  118. package/dist/document-model-editor/components/form.d.ts +1 -1
  119. package/dist/document-model-editor/components/form.d.ts.map +1 -1
  120. package/dist/document-model-editor/components/form.js +1 -1
  121. package/dist/document-model-editor/components/form.js.map +1 -1
  122. package/dist/document-model-editor/components/label.d.ts +1 -1
  123. package/dist/document-model-editor/components/label.d.ts.map +1 -1
  124. package/dist/document-model-editor/components/label.js.map +1 -1
  125. package/dist/document-model-editor/components/model-metadata-form.d.ts +4 -4
  126. package/dist/document-model-editor/components/model-metadata-form.d.ts.map +1 -1
  127. package/dist/document-model-editor/components/model-metadata-form.js +5 -5
  128. package/dist/document-model-editor/components/model-metadata-form.js.map +1 -1
  129. package/dist/document-model-editor/components/module-form.d.ts +3 -3
  130. package/dist/document-model-editor/components/module-form.d.ts.map +1 -1
  131. package/dist/document-model-editor/components/module-form.js +1 -1
  132. package/dist/document-model-editor/components/module-form.js.map +1 -1
  133. package/dist/document-model-editor/components/module.d.ts +1 -1
  134. package/dist/document-model-editor/components/module.d.ts.map +1 -1
  135. package/dist/document-model-editor/components/modules.d.ts +2 -2
  136. package/dist/document-model-editor/components/modules.d.ts.map +1 -1
  137. package/dist/document-model-editor/components/modules.js +1 -1
  138. package/dist/document-model-editor/components/modules.js.map +1 -1
  139. package/dist/document-model-editor/components/operation-description-form.d.ts +2 -2
  140. package/dist/document-model-editor/components/operation-description-form.d.ts.map +1 -1
  141. package/dist/document-model-editor/components/operation-error-form.d.ts +3 -3
  142. package/dist/document-model-editor/components/operation-error-form.d.ts.map +1 -1
  143. package/dist/document-model-editor/components/operation-error-form.js.map +1 -1
  144. package/dist/document-model-editor/components/operation-errors.d.ts +2 -2
  145. package/dist/document-model-editor/components/operation-errors.d.ts.map +1 -1
  146. package/dist/document-model-editor/components/operation-form.d.ts +3 -3
  147. package/dist/document-model-editor/components/operation-form.d.ts.map +1 -1
  148. package/dist/document-model-editor/components/operation-form.js +1 -1
  149. package/dist/document-model-editor/components/operation-form.js.map +1 -1
  150. package/dist/document-model-editor/components/operation.d.ts +4 -4
  151. package/dist/document-model-editor/components/operation.d.ts.map +1 -1
  152. package/dist/document-model-editor/components/operation.js +3 -3
  153. package/dist/document-model-editor/components/operation.js.map +1 -1
  154. package/dist/document-model-editor/components/operations.d.ts +3 -3
  155. package/dist/document-model-editor/components/operations.d.ts.map +1 -1
  156. package/dist/document-model-editor/components/state-schemas.d.ts +4 -2
  157. package/dist/document-model-editor/components/state-schemas.d.ts.map +1 -1
  158. package/dist/document-model-editor/components/state-schemas.js +7 -7
  159. package/dist/document-model-editor/components/state-schemas.js.map +1 -1
  160. package/dist/document-model-editor/components/text-field.d.ts.map +1 -1
  161. package/dist/document-model-editor/components/text-field.js.map +1 -1
  162. package/dist/document-model-editor/config.d.ts +3 -0
  163. package/dist/document-model-editor/config.d.ts.map +1 -0
  164. package/dist/document-model-editor/config.js +4 -0
  165. package/dist/document-model-editor/config.js.map +1 -0
  166. package/dist/document-model-editor/context/form-context.d.ts +1 -1
  167. package/dist/document-model-editor/context/form-context.d.ts.map +1 -1
  168. package/dist/document-model-editor/context/schema-context.d.ts +1 -1
  169. package/dist/document-model-editor/context/schema-context.d.ts.map +1 -1
  170. package/dist/document-model-editor/context/schema-context.js.map +1 -1
  171. package/dist/document-model-editor/document-model-editor.stories.d.ts +6 -6
  172. package/dist/document-model-editor/document-model-editor.stories.d.ts.map +1 -1
  173. package/dist/document-model-editor/document-model-editor.stories.js +195 -183
  174. package/dist/document-model-editor/document-model-editor.stories.js.map +1 -1
  175. package/dist/document-model-editor/editor.d.ts +1 -2
  176. package/dist/document-model-editor/editor.d.ts.map +1 -1
  177. package/dist/document-model-editor/editor.js +80 -61
  178. package/dist/document-model-editor/editor.js.map +1 -1
  179. package/dist/document-model-editor/hooks/index.d.ts +3 -0
  180. package/dist/document-model-editor/hooks/index.d.ts.map +1 -0
  181. package/dist/document-model-editor/hooks/index.js +3 -0
  182. package/dist/document-model-editor/hooks/index.js.map +1 -0
  183. package/dist/document-model-editor/hooks/useDocumentModelDocument.d.ts +5 -0
  184. package/dist/document-model-editor/hooks/useDocumentModelDocument.d.ts.map +1 -0
  185. package/dist/document-model-editor/hooks/useDocumentModelDocument.js +8 -0
  186. package/dist/document-model-editor/hooks/useDocumentModelDocument.js.map +1 -0
  187. package/dist/document-model-editor/index.d.ts +1 -2
  188. package/dist/document-model-editor/index.d.ts.map +1 -1
  189. package/dist/document-model-editor/index.js +1 -2
  190. package/dist/document-model-editor/index.js.map +1 -1
  191. package/dist/document-model-editor/module.d.ts +2 -3
  192. package/dist/document-model-editor/module.d.ts.map +1 -1
  193. package/dist/document-model-editor/module.js +4 -6
  194. package/dist/document-model-editor/module.js.map +1 -1
  195. package/dist/document-model-editor/schemas/inputs.d.ts +2 -2
  196. package/dist/document-model-editor/types/documents.d.ts +1 -1
  197. package/dist/document-model-editor/types/documents.d.ts.map +1 -1
  198. package/dist/document-model-editor/utils/helpers.d.ts +4 -7
  199. package/dist/document-model-editor/utils/helpers.d.ts.map +1 -1
  200. package/dist/document-model-editor/utils/helpers.js +11 -10
  201. package/dist/document-model-editor/utils/helpers.js.map +1 -1
  202. package/dist/document-model-editor/utils/linting.d.ts +1 -1
  203. package/dist/document-model-editor/utils/linting.d.ts.map +1 -1
  204. package/dist/document-model-editor/utils/linting.js +3 -5
  205. package/dist/document-model-editor/utils/linting.js.map +1 -1
  206. package/dist/document-model-editor/utils/style.d.ts +1 -1
  207. package/dist/document-model-editor/utils/style.d.ts.map +1 -1
  208. package/dist/document-model-editor/utils/style.js.map +1 -1
  209. package/dist/editor-utils/components/documentEditor.d.ts +1 -1
  210. package/dist/editor-utils/components/documentEditor.d.ts.map +1 -1
  211. package/dist/editor-utils/components/editorToolbar.d.ts +1 -1
  212. package/dist/editor-utils/components/editorToolbar.d.ts.map +1 -1
  213. package/dist/editor-utils/components/editorWorksheet.d.ts +1 -1
  214. package/dist/editor-utils/components/editorWorksheet.d.ts.map +1 -1
  215. package/dist/editor-utils/components/styles.d.ts +1 -1
  216. package/dist/editor-utils/components/styles.d.ts.map +1 -1
  217. package/dist/editor-utils/components/stylesVariant.d.ts +1 -1
  218. package/dist/editor-utils/components/stylesVariant.d.ts.map +1 -1
  219. package/dist/editor-utils/components/textInput.d.ts +1 -1
  220. package/dist/editor-utils/components/textInput.d.ts.map +1 -1
  221. package/dist/editor-utils/components/textInput.js.map +1 -1
  222. package/dist/editor-utils/components/textInputVariant.d.ts +1 -1
  223. package/dist/editor-utils/components/textInputVariant.d.ts.map +1 -1
  224. package/dist/editor-utils/components/textInputVariant.js +1 -1
  225. package/dist/editor-utils/components/textInputVariant.js.map +1 -1
  226. package/dist/editor-utils/components/toolbarButton.d.ts +1 -1
  227. package/dist/editor-utils/components/toolbarButton.d.ts.map +1 -1
  228. package/dist/editor-utils/hooks/useEnsInfo.d.ts +1 -1
  229. package/dist/editor-utils/hooks/useEnsInfo.d.ts.map +1 -1
  230. package/dist/editor-utils/hooks/useEnsInfo.js +1 -1
  231. package/dist/editor-utils/hooks/useEnsInfo.js.map +1 -1
  232. package/dist/editor-utils/reducer.d.ts +2 -2
  233. package/dist/editor-utils/reducer.d.ts.map +1 -1
  234. package/dist/editor-utils/reducer.js +2 -2
  235. package/dist/editor-utils/reducer.js.map +1 -1
  236. package/dist/editor-utils/storybook.d.ts +17 -14
  237. package/dist/editor-utils/storybook.d.ts.map +1 -1
  238. package/dist/editor-utils/storybook.js +34 -49
  239. package/dist/editor-utils/storybook.js.map +1 -1
  240. package/dist/index.d.ts +4 -0
  241. package/dist/index.d.ts.map +1 -0
  242. package/dist/index.js +4 -0
  243. package/dist/index.js.map +1 -0
  244. package/dist/style.css +4 -891
  245. package/dist/tsconfig.tsbuildinfo +1 -1
  246. package/package.json +73 -44
  247. package/dist/document-model-editor/components/code-editors/utils.d.ts +0 -32
  248. package/dist/document-model-editor/components/code-editors/utils.d.ts.map +0 -1
  249. package/dist/document-model-editor/components/code-editors/utils.js +0 -193
  250. package/dist/document-model-editor/components/code-editors/utils.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerhousedao/builder-tools",
3
- "version": "4.1.0-dev.12",
3
+ "version": "4.1.0-dev.121",
4
4
  "type": "module",
5
5
  "license": "AGPL-3.0-only",
6
6
  "publishConfig": {
@@ -14,39 +14,72 @@
14
14
  "dist"
15
15
  ],
16
16
  "exports": {
17
- "./connect-studio": "./dist/connect-studio/index.js",
18
- "./connect-build": "./dist/connect-build/index.js",
19
- "./document-model-editor": "./dist/document-model-editor/index.js",
20
- "./editor-utils": "./dist/editor-utils/index.js",
17
+ ".": {
18
+ "import": "./dist/index.js",
19
+ "types": "./dist/index.d.ts"
20
+ },
21
+ "./editor": {
22
+ "import": "./dist/document-model-editor/module.js",
23
+ "types": "./dist/document-model-editor/module.d.ts"
24
+ },
25
+ "./editor-component": {
26
+ "import": "./dist/document-model-editor/editor.js",
27
+ "types": "./dist/document-model-editor/editor.d.ts"
28
+ },
29
+ "./document-model-editor/hooks": {
30
+ "import": "./dist/document-model-editor/hooks/index.js",
31
+ "types": "./dist/document-model-editor/hooks/index.d.ts"
32
+ },
33
+ "./browser": {
34
+ "import": "./dist/browser.js",
35
+ "types": "./dist/browser.d.ts"
36
+ },
21
37
  "./style.css": "./dist/style.css"
22
38
  },
23
- "imports": {
24
- "#editor-utils/*": "./dist/editor-utils/*.js",
25
- "#document-model-editor/*": "./dist/document-model-editor/*.js",
26
- "#connect-utils": "./dist/connect-utils/index.js"
27
- },
39
+ "sideEffects": false,
28
40
  "devDependencies": {
41
+ "@sentry/vite-plugin": "^4.3.0",
42
+ "@storybook/addon-actions": "^8.6.7",
43
+ "@storybook/addon-docs": "^8.6.3",
44
+ "@storybook/addon-essentials": "^8.6.7",
45
+ "@storybook/addon-interactions": "^8.6.7",
46
+ "@storybook/addon-links": "^8.6.7",
47
+ "@storybook/addon-themes": "^8.6.7",
48
+ "@storybook/blocks": "^8.6.7",
49
+ "@storybook/components": "^8.6.7",
50
+ "@storybook/manager-api": "^8.6.7",
51
+ "@storybook/preview-api": "^8.6.7",
52
+ "@storybook/react": "^8.6.7",
53
+ "@storybook/react-vite": "^8.6.7",
54
+ "@storybook/test": "^8.6.7",
29
55
  "@storybook/types": "^8.5.2",
30
- "@types/react": "^18.3.18",
56
+ "@tailwindcss/vite": "^4.1.13",
57
+ "@types/react": "^19.2.0",
31
58
  "@types/validator": "^13.12.2",
32
- "react": "^18.3.1",
33
- "react-dom": "^18.3.1"
59
+ "@vitejs/plugin-react": "^5.0.3",
60
+ "react": "^19.2.0",
61
+ "react-dom": "^19.2.0",
62
+ "storybook": "^8.6.14",
63
+ "vite": "^7.1.9",
64
+ "vite-plugin-html": "^3.2.2",
65
+ "vite-plugin-node-polyfills": "^0.24.0",
66
+ "vite-plugin-svgr": "^4.5.0"
34
67
  },
35
68
  "dependencies": {
36
- "@codemirror/autocomplete": "^6.18.6",
37
- "@codemirror/commands": "^6.8.1",
38
- "@codemirror/lang-javascript": "^6.2.3",
39
- "@codemirror/lang-json": "^6.0.1",
40
- "@codemirror/language": "^6.11.0",
41
- "@codemirror/lint": "^6.8.5",
42
- "@codemirror/search": "^6.5.10",
43
- "@codemirror/state": "^6.5.2",
44
- "@codemirror/theme-one-dark": "^6.1.2",
45
- "@codemirror/view": "^6.36.7",
69
+ "@codemirror/autocomplete": "6.18.6",
70
+ "@codemirror/commands": "6.8.1",
71
+ "@codemirror/lang-javascript": "6.2.3",
72
+ "@codemirror/lang-json": "6.0.1",
73
+ "@codemirror/language": "6.11.0",
74
+ "@codemirror/lint": "6.8.5",
75
+ "@codemirror/search": "6.5.10",
76
+ "@codemirror/state": "6.5.2",
77
+ "@codemirror/theme-one-dark": "6.1.2",
78
+ "@codemirror/view": "6.36.7",
46
79
  "@graphql-tools/schema": "^10.0.23",
47
80
  "@graphql-tools/utils": "^10.8.6",
48
81
  "@hookform/resolvers": "^5.0.1",
49
- "@powerhousedao/document-engineering": "^1.26.1",
82
+ "@powerhousedao/document-engineering": "^1.27.0",
50
83
  "@prettier/sync": "^0.5.5",
51
84
  "@radix-ui/react-checkbox": "^1.2.3",
52
85
  "@radix-ui/react-icons": "^1.3.2",
@@ -55,12 +88,13 @@
55
88
  "@radix-ui/react-select": "^2.2.2",
56
89
  "@radix-ui/react-slot": "^1.2.0",
57
90
  "@radix-ui/react-tabs": "^1.1.9",
58
- "@tailwindcss/cli": "^4.1.4",
91
+ "@storybook/preview-api": "^8.6.14",
92
+ "@tailwindcss/cli": "^4.1.14",
59
93
  "@tailwindcss/postcss": "^4.1.7",
60
- "@tailwindcss/vite": "^4.1.4",
94
+ "@tailwindcss/vite": "^4.1.14",
61
95
  "@theguild/editor": "^1.3.10",
62
96
  "@vitejs/plugin-basic-ssl": "^2.0.0",
63
- "@vitejs/plugin-react": "^4.4.1",
97
+ "@vitejs/plugin-react": "^5.0.4",
64
98
  "change-case": "^5.4.4",
65
99
  "class-variance-authority": "^0.7.1",
66
100
  "clsx": "^2.1.1",
@@ -78,36 +112,31 @@
78
112
  "magic-string": "^0.30.17",
79
113
  "postcss": "^8.5.3",
80
114
  "react-hook-form": "^7.56.1",
115
+ "read-pkg": "^9.0.1",
81
116
  "resolve.exports": "^2.0.3",
82
117
  "tailwind-merge": "^3.2.0",
83
- "tailwindcss": "^4.1.6",
118
+ "tailwindcss": "^4.1.14",
84
119
  "thememirror": "^2.0.1",
85
120
  "usehooks-ts": "^3.1.1",
86
121
  "uuid": "^11.1.0",
87
122
  "validator": "^13.15.0",
88
123
  "viem": "^2.28.0",
89
- "vite": "^6.3.3",
90
124
  "vite-envs": "^4.6.0",
91
- "vite-plugin-node-polyfills": "^0.23.0",
125
+ "vite-plugin-node-polyfills": "^0.24.0",
92
126
  "zod": "^3.24.3",
93
- "@powerhousedao/config": "4.1.0-dev.12",
94
- "@powerhousedao/design-system": "4.1.0-dev.12",
95
- "@powerhousedao/reactor-browser": "4.1.0-dev.12",
96
- "document-model": "4.1.0-dev.12"
127
+ "@powerhousedao/config": "4.1.0-dev.121",
128
+ "@powerhousedao/design-system": "4.1.0-dev.121",
129
+ "@powerhousedao/reactor-browser": "4.1.0-dev.121",
130
+ "document-model": "4.1.0-dev.121"
97
131
  },
98
132
  "peerDependencies": {
99
- "react": "^18.0.0",
100
- "react-dom": "^18.0.0"
133
+ "react": "^19.2.0",
134
+ "react-dom": "^19.2.0"
101
135
  },
102
136
  "scripts": {
137
+ "tsc": "tsc",
138
+ "lint": "eslint",
103
139
  "build:css": "npx @tailwindcss/cli -i ./style.css -o ./dist/style.css",
104
- "build": "npm run build:css && tsc --build",
105
- "prebuild": "npm run clean",
106
- "storybook": "storybook dev -p 6006",
107
- "build:tsc": "tsc --build",
108
- "lint": "eslint .",
109
- "lint:nx": "eslint . --fix --quiet",
110
- "clean": "rimraf dist",
111
- "clean:node_modules": "rimraf node_modules"
140
+ "storybook": "storybook dev -p 6006"
112
141
  }
113
142
  }
@@ -1,32 +0,0 @@
1
- import { type Diagnostic } from "@codemirror/lint";
2
- import { Compartment } from "@codemirror/state";
3
- import { EditorView } from "@codemirror/view";
4
- import { GraphQLError, type GraphQLSchema } from "graphql";
5
- export declare function convertGraphQLErrorToDiagnostic(error: GraphQLError): Diagnostic;
6
- export declare function makeLinter(schema: GraphQLSchema, customLinter?: (doc: string) => Diagnostic[]): import("@codemirror/state").Extension;
7
- export declare function makeUpdateHandler(readonly: boolean | undefined, timeoutRef: React.MutableRefObject<NodeJS.Timeout | null>, updateDocumentInModel?: (newDoc: string) => void): import("@codemirror/state").Extension;
8
- export declare function makeFocusHandler(readonly: boolean | undefined, timeoutRef: React.MutableRefObject<NodeJS.Timeout | null>, updateDocumentInModel?: (newDoc: string) => void): import("@codemirror/state").Extension;
9
- export declare function makePasteHandler(readonly: boolean | undefined, timeoutRef: React.MutableRefObject<NodeJS.Timeout | null>, updateDocumentInModel?: (newDoc: string) => void): import("@codemirror/state").Extension;
10
- export type EditorConfig = {
11
- doc: string;
12
- readonly?: boolean;
13
- updateDocumentInModel?: (newDoc: string) => void;
14
- };
15
- export declare function useEditorRefs(): {
16
- editorRef: import("react").RefObject<HTMLDivElement>;
17
- viewRef: import("react").MutableRefObject<EditorView | null>;
18
- updateListenerCompartment: import("react").MutableRefObject<Compartment>;
19
- focusHandlerCompartment: import("react").MutableRefObject<Compartment>;
20
- pasteHandlerCompartment: import("react").MutableRefObject<Compartment>;
21
- timeoutRef: import("react").MutableRefObject<NodeJS.Timeout | null>;
22
- };
23
- export declare function useEditorCleanup(viewRef: React.MutableRefObject<EditorView | null>): void;
24
- export declare function useHandlerReconfiguration(view: EditorView | null, readonly: boolean | undefined, timeoutRef: React.MutableRefObject<NodeJS.Timeout | null>, updateDocumentInModel: ((newDoc: string) => void) | undefined, compartments: {
25
- updateListener: Compartment;
26
- focusHandler: Compartment;
27
- pasteHandler: Compartment;
28
- }): void;
29
- export declare function useDocumentSync(view: EditorView | null, doc: string): void;
30
- export declare const baseEditorExtensions: import("@codemirror/state").Extension[];
31
- export declare const baseKeymap: import("@codemirror/view").KeyBinding[];
32
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../document-model-editor/components/code-editors/utils.ts"],"names":[],"mappings":"AAsBA,OAAO,EACL,KAAK,UAAU,EAIhB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,WAAW,EAA4B,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAIL,UAAU,EAOX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,YAAY,EAAE,KAAK,aAAa,EAAgB,MAAM,SAAS,CAAC;AAOzE,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,YAAY,GAClB,UAAU,CAOZ;AASD,wBAAgB,UAAU,CACxB,MAAM,EAAE,aAAa,EACrB,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,UAAU,EAAE,yCAmD7C;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,OAAO,GAAG,SAAS,EAC7B,UAAU,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EACzD,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,yCAoBjD;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,OAAO,GAAG,SAAS,EAC7B,UAAU,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EACzD,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,yCAWjD;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,OAAO,GAAG,SAAS,EAC7B,UAAU,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EACzD,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,yCAcjD;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD,CAAC;AAEF,wBAAgB,aAAa;;;;;;;EAgB5B;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,KAAK,CAAC,gBAAgB,CAAC,UAAU,GAAG,IAAI,CAAC,QAUnD;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,UAAU,GAAG,IAAI,EACvB,QAAQ,EAAE,OAAO,GAAG,SAAS,EAC7B,UAAU,EAAE,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,EACzD,qBAAqB,EAAE,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,EAC7D,YAAY,EAAE;IACZ,cAAc,EAAE,WAAW,CAAC;IAC5B,YAAY,EAAE,WAAW,CAAC;IAC1B,YAAY,EAAE,WAAW,CAAC;CAC3B,QAmBF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,QAYnE;AAED,eAAO,MAAM,oBAAoB,yCAmBhC,CAAC;AAEF,eAAO,MAAM,UAAU,yCAStB,CAAC"}
@@ -1,193 +0,0 @@
1
- import { updateTimeout } from "#document-model-editor/constants/documents";
2
- import { safeParseSdl } from "#document-model-editor/context/schema-context";
3
- import { autocompletion, closeBrackets, closeBracketsKeymap, completionKeymap, } from "@codemirror/autocomplete";
4
- import { defaultKeymap, history, historyKeymap, indentWithTab, } from "@codemirror/commands";
5
- import { bracketMatching, defaultHighlightStyle, foldGutter, foldKeymap, indentOnInput, syntaxHighlighting, } from "@codemirror/language";
6
- import { forceLinting, linter, lintKeymap, } from "@codemirror/lint";
7
- import { highlightSelectionMatches, searchKeymap } from "@codemirror/search";
8
- import { Compartment, EditorState, Transaction } from "@codemirror/state";
9
- import { crosshairCursor, drawSelection, dropCursor, EditorView, highlightActiveLine, highlightActiveLineGutter, highlightSpecialChars, lineNumbers, rectangularSelection, } from "@codemirror/view";
10
- import { filterSchema } from "@graphql-tools/utils";
11
- import { GraphQLError, locatedError } from "graphql";
12
- import { validateSDL } from "graphql/validation/validate.js";
13
- import { useEffect, useRef } from "react";
14
- /* Converts a GraphQLError to a Diagnostic
15
- GraphQLError uses a zero-indexed line and column, but the editor uses a one-indexed line and column
16
- */
17
- export function convertGraphQLErrorToDiagnostic(error) {
18
- return {
19
- from: error.locations?.[0] ? (error.positions?.[0] ?? 0) : 0,
20
- to: error.locations?.[0] ? (error.positions?.[0] ?? 0) + 1 : 1,
21
- severity: "error",
22
- message: error.message,
23
- };
24
- }
25
- /* Creates a linter that checks the document for errors
26
- This works in combination with the built-in linting provided by the graphql extension
27
- We need to recreate this linter when the schema changes or if a custom linter is provided
28
- It first checks the document for linting errors
29
- Then it checks if the document is a valid document string
30
- Then it checks if the document is valid against the schema
31
- */
32
- export function makeLinter(schema, customLinter) {
33
- return linter((view) => {
34
- const doc = view.state.doc.toString();
35
- let diagnostics = [];
36
- if (customLinter) {
37
- diagnostics = diagnostics.concat(customLinter(doc));
38
- }
39
- const newDocNode = safeParseSdl(doc);
40
- if (newDocNode) {
41
- try {
42
- const currentTypeNames = new Set(newDocNode.definitions
43
- .filter((def) => "name" in def && def.name)
44
- .map((def) => def.name.value));
45
- // we need to filter out the existing types in the document from the schema to prevent duplicate type errors in the validation
46
- const filteredSchema = filterSchema({
47
- schema,
48
- typeFilter: (typeName) => !currentTypeNames.has(typeName),
49
- });
50
- const errors = validateSDL(newDocNode, filteredSchema)
51
- .map((error) => locatedError(error, newDocNode))
52
- .filter((error, index, self) => index ===
53
- self.findIndex((e) => e.message === error.message &&
54
- e.locations?.[0]?.line === error.locations?.[0]?.line &&
55
- e.locations?.[0]?.column === error.locations?.[0]?.column));
56
- diagnostics = diagnostics.concat(errors.map(convertGraphQLErrorToDiagnostic));
57
- }
58
- catch (error) {
59
- if (error instanceof GraphQLError) {
60
- diagnostics.push(convertGraphQLErrorToDiagnostic(error));
61
- }
62
- }
63
- }
64
- return diagnostics;
65
- });
66
- }
67
- export function makeUpdateHandler(readonly, timeoutRef, updateDocumentInModel) {
68
- return EditorView.updateListener.of((update) => {
69
- if (!!readonly || !update.docChanged)
70
- return;
71
- if (update.transactions.some((tr) => tr.annotation(Transaction.userEvent) === "external"))
72
- return;
73
- const newDoc = update.state.doc.toString();
74
- if (timeoutRef.current) {
75
- clearTimeout(timeoutRef.current);
76
- }
77
- timeoutRef.current = setTimeout(() => {
78
- updateDocumentInModel?.(newDoc);
79
- }, updateTimeout);
80
- });
81
- }
82
- export function makeFocusHandler(readonly, timeoutRef, updateDocumentInModel) {
83
- return EditorView.focusChangeEffect.of((state, focusing) => {
84
- if (!!readonly || focusing)
85
- return null;
86
- if (timeoutRef.current) {
87
- clearTimeout(timeoutRef.current);
88
- }
89
- const newDoc = state.doc.toString();
90
- updateDocumentInModel?.(newDoc);
91
- return null;
92
- });
93
- }
94
- export function makePasteHandler(readonly, timeoutRef, updateDocumentInModel) {
95
- return EditorView.domEventHandlers({
96
- paste: (event, view) => {
97
- if (readonly)
98
- return false;
99
- const newDoc = view.state.doc.toString();
100
- if (timeoutRef.current) {
101
- clearTimeout(timeoutRef.current);
102
- }
103
- updateDocumentInModel?.(newDoc);
104
- forceLinting(view);
105
- return false;
106
- },
107
- });
108
- }
109
- export function useEditorRefs() {
110
- const editorRef = useRef(null);
111
- const viewRef = useRef(null);
112
- const updateListenerCompartment = useRef(new Compartment());
113
- const focusHandlerCompartment = useRef(new Compartment());
114
- const pasteHandlerCompartment = useRef(new Compartment());
115
- const timeoutRef = useRef(null);
116
- return {
117
- editorRef,
118
- viewRef,
119
- updateListenerCompartment,
120
- focusHandlerCompartment,
121
- pasteHandlerCompartment,
122
- timeoutRef,
123
- };
124
- }
125
- export function useEditorCleanup(viewRef) {
126
- useEffect(() => {
127
- return () => {
128
- if (viewRef.current) {
129
- viewRef.current.destroy();
130
- viewRef.current = null;
131
- }
132
- };
133
- }, []);
134
- }
135
- export function useHandlerReconfiguration(view, readonly, timeoutRef, updateDocumentInModel, compartments) {
136
- useEffect(() => {
137
- if (!view)
138
- return;
139
- view.dispatch({
140
- effects: [
141
- compartments.updateListener.reconfigure(makeUpdateHandler(readonly, timeoutRef, updateDocumentInModel)),
142
- compartments.focusHandler.reconfigure(makeFocusHandler(readonly, timeoutRef, updateDocumentInModel)),
143
- compartments.pasteHandler.reconfigure(makePasteHandler(readonly, timeoutRef, updateDocumentInModel)),
144
- ],
145
- });
146
- forceLinting(view);
147
- }, [readonly, updateDocumentInModel]);
148
- }
149
- export function useDocumentSync(view, doc) {
150
- useEffect(() => {
151
- if (!view)
152
- return;
153
- const currentDoc = view.state.doc.toString();
154
- if (currentDoc !== doc) {
155
- view.dispatch({
156
- changes: { from: 0, to: currentDoc.length, insert: doc },
157
- annotations: [Transaction.userEvent.of("external")],
158
- });
159
- forceLinting(view);
160
- }
161
- }, [doc]);
162
- }
163
- export const baseEditorExtensions = [
164
- lineNumbers(),
165
- highlightActiveLineGutter(),
166
- highlightSpecialChars(),
167
- history(),
168
- foldGutter(),
169
- drawSelection(),
170
- dropCursor(),
171
- EditorState.allowMultipleSelections.of(true),
172
- indentOnInput(),
173
- syntaxHighlighting(defaultHighlightStyle, { fallback: true }),
174
- bracketMatching(),
175
- closeBrackets(),
176
- autocompletion(),
177
- rectangularSelection(),
178
- crosshairCursor(),
179
- highlightActiveLine(),
180
- highlightSelectionMatches(),
181
- EditorView.lineWrapping,
182
- ];
183
- export const baseKeymap = [
184
- ...closeBracketsKeymap,
185
- ...defaultKeymap,
186
- ...searchKeymap,
187
- ...historyKeymap,
188
- ...foldKeymap,
189
- ...completionKeymap,
190
- ...lintKeymap,
191
- indentWithTab,
192
- ];
193
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../document-model-editor/components/code-editors/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAC7E,OAAO,EACL,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,aAAa,EACb,OAAO,EACP,aAAa,EACb,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,UAAU,EACV,UAAU,EACV,aAAa,EACb,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,YAAY,EACZ,MAAM,EACN,UAAU,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EACL,eAAe,EACf,aAAa,EACb,UAAU,EACV,UAAU,EACV,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,WAAW,EACX,oBAAoB,GAErB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAsB,YAAY,EAAE,MAAM,SAAS,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE1C;;EAEE;AACF,MAAM,UAAU,+BAA+B,CAC7C,KAAmB;IAEnB,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC;AAED;;;;;;IAMI;AACJ,MAAM,UAAU,UAAU,CACxB,MAAqB,EACrB,YAA4C;IAE5C,OAAO,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACtC,IAAI,WAAW,GAAiB,EAAE,CAAC;QAEnC,IAAI,YAAY,EAAE,CAAC;YACjB,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAErC,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,UAAU,CAAC,WAAW;qBACnB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC;qBAC1C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAE,GAAmC,CAAC,IAAI,CAAC,KAAK,CAAC,CACjE,CAAC;gBAEF,8HAA8H;gBAC9H,MAAM,cAAc,GAAG,YAAY,CAAC;oBAClC,MAAM;oBACN,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC;iBAC1D,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,EAAE,cAAc,CAAC;qBACnD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;qBAC/C,MAAM,CACL,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CACrB,KAAK;oBACL,IAAI,CAAC,SAAS,CACZ,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO;wBAC3B,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI;wBACrD,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAC5D,CACJ,CAAC;gBAEJ,WAAW,GAAG,WAAW,CAAC,MAAM,CAC9B,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAC5C,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;oBAClC,WAAW,CAAC,IAAI,CAAC,+BAA+B,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,QAA6B,EAC7B,UAAyD,EACzD,qBAAgD;IAEhD,OAAO,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAkB,EAAE,EAAE;QACzD,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,OAAO;QAC7C,IACE,MAAM,CAAC,YAAY,CAAC,IAAI,CACtB,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,UAAU,CAC5D;YAED,OAAO;QAET,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAE3C,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QACD,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,qBAAqB,EAAE,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC,EAAE,aAAa,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,QAA6B,EAC7B,UAAyD,EACzD,qBAAgD;IAEhD,OAAO,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QACzD,IAAI,CAAC,CAAC,QAAQ,IAAI,QAAQ;YAAE,OAAO,IAAI,CAAC;QACxC,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QACpC,qBAAqB,EAAE,CAAC,MAAM,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,QAA6B,EAC7B,UAAyD,EACzD,qBAAgD;IAEhD,OAAO,UAAU,CAAC,gBAAgB,CAAC;QACjC,KAAK,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACrB,IAAI,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACzC,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;YACD,qBAAqB,EAAE,CAAC,MAAM,CAAC,CAAC;YAChC,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAQD,MAAM,UAAU,aAAa;IAC3B,MAAM,SAAS,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAChD,MAAM,yBAAyB,GAAG,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;IAC5D,MAAM,uBAAuB,GAAG,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;IAC1D,MAAM,uBAAuB,GAAG,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAEvD,OAAO;QACL,SAAS;QACT,OAAO;QACP,yBAAyB;QACzB,uBAAuB;QACvB,uBAAuB;QACvB,UAAU;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,OAAkD;IAElD,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC1B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,IAAuB,EACvB,QAA6B,EAC7B,UAAyD,EACzD,qBAA6D,EAC7D,YAIC;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,CAAC,QAAQ,CAAC;YACZ,OAAO,EAAE;gBACP,YAAY,CAAC,cAAc,CAAC,WAAW,CACrC,iBAAiB,CAAC,QAAQ,EAAE,UAAU,EAAE,qBAAqB,CAAC,CAC/D;gBACD,YAAY,CAAC,YAAY,CAAC,WAAW,CACnC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,qBAAqB,CAAC,CAC9D;gBACD,YAAY,CAAC,YAAY,CAAC,WAAW,CACnC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,qBAAqB,CAAC,CAC9D;aACF;SACF,CAAC,CAAC;QACH,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAuB,EAAE,GAAW;IAClE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC7C,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC;gBACZ,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE;gBACxD,WAAW,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;aACpD,CAAC,CAAC;YACH,YAAY,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AACZ,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,WAAW,EAAE;IACb,yBAAyB,EAAE;IAC3B,qBAAqB,EAAE;IACvB,OAAO,EAAE;IACT,UAAU,EAAE;IACZ,aAAa,EAAE;IACf,UAAU,EAAE;IACZ,WAAW,CAAC,uBAAuB,CAAC,EAAE,CAAC,IAAI,CAAC;IAC5C,aAAa,EAAE;IACf,kBAAkB,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC7D,eAAe,EAAE;IACjB,aAAa,EAAE;IACf,cAAc,EAAE;IAChB,oBAAoB,EAAE;IACtB,eAAe,EAAE;IACjB,mBAAmB,EAAE;IACrB,yBAAyB,EAAE;IAC3B,UAAU,CAAC,YAAY;CACxB,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,GAAG,mBAAmB;IACtB,GAAG,aAAa;IAChB,GAAG,YAAY;IACf,GAAG,aAAa;IAChB,GAAG,UAAU;IACb,GAAG,gBAAgB;IACnB,GAAG,UAAU;IACb,aAAa;CACd,CAAC"}