@supersoniks/concorde 4.9.98-visual-stack.1 → 5.0.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 (1055) hide show
  1. package/README.md +17 -34
  2. package/build-infos.json +1 -1
  3. package/concorde-core.bundle.js +311 -293
  4. package/concorde-core.es.js +5195 -5129
  5. package/dist/concorde-core.bundle.js +311 -293
  6. package/dist/concorde-core.es.js +5195 -5129
  7. package/dist/docs-mock-api-sw.js +5 -1
  8. package/dist/docs-mock-api-sw.js.map +2 -2
  9. package/package.json +384 -1826
  10. package/public/docs-mock-api-sw.js +5 -1
  11. package/public/docs-mock-api-sw.js.map +2 -2
  12. package/scripts/post-build.mjs +10 -116
  13. package/scripts/pre-build.mjs +36 -119
  14. package/scripts/pre-publish.mjs +54 -76
  15. package/src/core/components/functional/jsonata/jsonata.md +2 -4
  16. package/src/core/components/functional/sdui/sdui.md +2 -2
  17. package/src/core/components/functional/sdui/sdui.ts +29 -40
  18. package/src/core/components/ui/button/button.ts +1 -2
  19. package/src/core/components/ui/form/checkbox/checkbox.md +1 -1
  20. package/src/core/components/ui/form/checkbox/checkbox.ts +4 -20
  21. package/src/core/components/ui/form/input/input.ts +7 -13
  22. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +14 -118
  23. package/src/core/components/ui/form/input-autocomplete/input-autocomplete.ts +419 -187
  24. package/src/core/components/ui/form/radio/radio.ts +1 -1
  25. package/src/core/components/ui/form/select/select.ts +3 -6
  26. package/src/core/components/ui/form/textarea/textarea.ts +1 -2
  27. package/src/core/components/ui/pop/pop.ts +9 -0
  28. package/src/core/components/ui/toast/render-content.ts +13 -0
  29. package/src/core/components/ui/toast/toast-item.ts +40 -12
  30. package/src/core/components/ui/toast/toast.ts +54 -14
  31. package/src/core/components/ui/toast/types.ts +14 -2
  32. package/src/core/decorators/subscriber/derive.ts +3 -3
  33. package/src/core/mixins/Fetcher.ts +1 -1
  34. package/src/core/mixins/FormCheckable.ts +1 -8
  35. package/src/core/mixins/FormElement.ts +74 -76
  36. package/src/core/utils/HTML.ts +74 -107
  37. package/src/core/utils/PublisherProxy.ts +6 -29
  38. package/src/core/utils/jsonataHelpers.ts +0 -36
  39. package/src/docs/_core-concept/dataFlow.md +1 -3
  40. package/src/docs/_getting-started/create-a-component.md +1 -1
  41. package/src/docs/_misc/formelement-subscriber-removal.md +115 -0
  42. package/src/docs/_misc/html-integration.md +2 -0
  43. package/src/docs/components/docs-demo-sources.ts +75 -377
  44. package/src/docs/docs.ts +1 -9
  45. package/src/docs/example/docs-input-autocomplete-demos.ts +110 -0
  46. package/src/docs/mock-api/router.ts +17 -1
  47. package/src/docs/navigation/navigation.ts +4 -25
  48. package/src/docs/search/docs-search.json +864 -2584
  49. package/src/tsconfig.json +313 -517
  50. package/src/tsconfig.tsbuildinfo +1 -1
  51. package/vite/config.js +30 -42
  52. package/vite.config.mts +12 -51
  53. package/dist/concorde-3d.bundle.js +0 -3960
  54. package/dist/concorde-3d.es.js +0 -33433
  55. package/dist/concorde-hugging-face-infer.bundle.js +0 -32
  56. package/dist/concorde-hugging-face-infer.es.js +0 -2952
  57. package/dist/concorde-shader.bundle.js +0 -116
  58. package/dist/concorde-shader.es.js +0 -8353
  59. package/dist/concorde-webgpu.bundle.js +0 -307
  60. package/dist/concorde-webgpu.es.js +0 -8627
  61. package/dist/docs/hf-samples/beach.jpg +0 -0
  62. package/dist/docs/hf-samples/cats.jpg +0 -0
  63. package/dist/docs/hf-samples/corgi.jpg +0 -0
  64. package/dist/docs/hf-samples/portrait.jpg +0 -0
  65. package/dist/docs/hf-samples/scene.jpg +0 -0
  66. package/dist/docs/hf-samples/singer.jpg +0 -0
  67. package/dist/docs/shader-samples/color.jpg +0 -0
  68. package/dist/docs/shader-samples/depth.png +0 -0
  69. package/dist/docs/shader-samples/impact.jpg +0 -0
  70. package/dist/docs/shader-samples/video.webm +0 -0
  71. package/dist/js/addons/3d.js +0 -6
  72. package/dist/js/addons/3d.js.map +0 -1
  73. package/dist/js/addons/hugging-face-infer.js +0 -8
  74. package/dist/js/addons/hugging-face-infer.js.map +0 -1
  75. package/dist/js/addons/shader.js +0 -6
  76. package/dist/js/addons/shader.js.map +0 -1
  77. package/dist/js/addons/webgpu.js +0 -7
  78. package/dist/js/addons/webgpu.js.map +0 -1
  79. package/dist/js/components.js +0 -12
  80. package/dist/js/components.js.map +0 -1
  81. package/dist/js/concorde-loaded.js +0 -5
  82. package/dist/js/concorde-loaded.js.map +0 -1
  83. package/dist/js/core/_types/endpoint.js +0 -5
  84. package/dist/js/core/_types/endpoint.js.map +0 -1
  85. package/dist/js/core/_types/key.js +0 -2
  86. package/dist/js/core/_types/key.js.map +0 -1
  87. package/dist/js/core/_types/types.js +0 -3
  88. package/dist/js/core/_types/types.js.map +0 -1
  89. package/dist/js/core/components/functional/3d/3d.js +0 -249
  90. package/dist/js/core/components/functional/3d/3d.js.map +0 -1
  91. package/dist/js/core/components/functional/3d/asset.js +0 -20
  92. package/dist/js/core/components/functional/3d/asset.js.map +0 -1
  93. package/dist/js/core/components/functional/3d/boot.js +0 -47
  94. package/dist/js/core/components/functional/3d/boot.js.map +0 -1
  95. package/dist/js/core/components/functional/3d/constants.js +0 -91
  96. package/dist/js/core/components/functional/3d/constants.js.map +0 -1
  97. package/dist/js/core/components/functional/3d/demo-content.js +0 -38
  98. package/dist/js/core/components/functional/3d/demo-content.js.map +0 -1
  99. package/dist/js/core/components/functional/3d/ensure.js +0 -76
  100. package/dist/js/core/components/functional/3d/ensure.js.map +0 -1
  101. package/dist/js/core/components/functional/3d/form-bind.js +0 -25
  102. package/dist/js/core/components/functional/3d/form-bind.js.map +0 -1
  103. package/dist/js/core/components/functional/3d/form-fields.js +0 -76
  104. package/dist/js/core/components/functional/3d/form-fields.js.map +0 -1
  105. package/dist/js/core/components/functional/3d/form-params.js +0 -69
  106. package/dist/js/core/components/functional/3d/form-params.js.map +0 -1
  107. package/dist/js/core/components/functional/3d/frame-capture.js +0 -108
  108. package/dist/js/core/components/functional/3d/frame-capture.js.map +0 -1
  109. package/dist/js/core/components/functional/3d/frame-source.js +0 -22
  110. package/dist/js/core/components/functional/3d/frame-source.js.map +0 -1
  111. package/dist/js/core/components/functional/3d/gl.js +0 -34
  112. package/dist/js/core/components/functional/3d/gl.js.map +0 -1
  113. package/dist/js/core/components/functional/3d/life.js +0 -56
  114. package/dist/js/core/components/functional/3d/life.js.map +0 -1
  115. package/dist/js/core/components/functional/3d/load.js +0 -109
  116. package/dist/js/core/components/functional/3d/load.js.map +0 -1
  117. package/dist/js/core/components/functional/3d/ops.js +0 -78
  118. package/dist/js/core/components/functional/3d/ops.js.map +0 -1
  119. package/dist/js/core/components/functional/3d/opts.js +0 -2
  120. package/dist/js/core/components/functional/3d/opts.js.map +0 -1
  121. package/dist/js/core/components/functional/3d/orbit.js +0 -136
  122. package/dist/js/core/components/functional/3d/orbit.js.map +0 -1
  123. package/dist/js/core/components/functional/3d/out-publish.js +0 -104
  124. package/dist/js/core/components/functional/3d/out-publish.js.map +0 -1
  125. package/dist/js/core/components/functional/3d/parse.js +0 -95
  126. package/dist/js/core/components/functional/3d/parse.js.map +0 -1
  127. package/dist/js/core/components/functional/3d/pick.js +0 -62
  128. package/dist/js/core/components/functional/3d/pick.js.map +0 -1
  129. package/dist/js/core/components/functional/3d/playback.js +0 -61
  130. package/dist/js/core/components/functional/3d/playback.js.map +0 -1
  131. package/dist/js/core/components/functional/3d/pointer.js +0 -58
  132. package/dist/js/core/components/functional/3d/pointer.js.map +0 -1
  133. package/dist/js/core/components/functional/3d/post-bind.js +0 -207
  134. package/dist/js/core/components/functional/3d/post-bind.js.map +0 -1
  135. package/dist/js/core/components/functional/3d/post-channels.js +0 -39
  136. package/dist/js/core/components/functional/3d/post-channels.js.map +0 -1
  137. package/dist/js/core/components/functional/3d/post-fx.js +0 -495
  138. package/dist/js/core/components/functional/3d/post-fx.js.map +0 -1
  139. package/dist/js/core/components/functional/3d/props.js +0 -247
  140. package/dist/js/core/components/functional/3d/props.js.map +0 -1
  141. package/dist/js/core/components/functional/3d/publisher-listen.js +0 -6
  142. package/dist/js/core/components/functional/3d/publisher-listen.js.map +0 -1
  143. package/dist/js/core/components/functional/3d/reload.js +0 -65
  144. package/dist/js/core/components/functional/3d/reload.js.map +0 -1
  145. package/dist/js/core/components/functional/3d/runtime.js +0 -193
  146. package/dist/js/core/components/functional/3d/runtime.js.map +0 -1
  147. package/dist/js/core/components/functional/3d/scene-runtime.js +0 -6
  148. package/dist/js/core/components/functional/3d/scene-runtime.js.map +0 -1
  149. package/dist/js/core/components/functional/3d/snapshot.js +0 -47
  150. package/dist/js/core/components/functional/3d/snapshot.js.map +0 -1
  151. package/dist/js/core/components/functional/3d/styles.js +0 -38
  152. package/dist/js/core/components/functional/3d/styles.js.map +0 -1
  153. package/dist/js/core/components/functional/3d/tune.js +0 -63
  154. package/dist/js/core/components/functional/3d/tune.js.map +0 -1
  155. package/dist/js/core/components/functional/3d/types.js +0 -8
  156. package/dist/js/core/components/functional/3d/types.js.map +0 -1
  157. package/dist/js/core/components/functional/3d/updated.js +0 -70
  158. package/dist/js/core/components/functional/3d/updated.js.map +0 -1
  159. package/dist/js/core/components/functional/3d/view.js +0 -40
  160. package/dist/js/core/components/functional/3d/view.js.map +0 -1
  161. package/dist/js/core/components/functional/3d/wire.js +0 -34
  162. package/dist/js/core/components/functional/3d/wire.js.map +0 -1
  163. package/dist/js/core/components/functional/date/date.js +0 -272
  164. package/dist/js/core/components/functional/date/date.js.map +0 -1
  165. package/dist/js/core/components/functional/example/example.js +0 -44
  166. package/dist/js/core/components/functional/example/example.js.map +0 -1
  167. package/dist/js/core/components/functional/fetch/fetch.js +0 -79
  168. package/dist/js/core/components/functional/fetch/fetch.js.map +0 -1
  169. package/dist/js/core/components/functional/functional.js +0 -18
  170. package/dist/js/core/components/functional/functional.js.map +0 -1
  171. package/dist/js/core/components/functional/if/if.js +0 -39
  172. package/dist/js/core/components/functional/if/if.js.map +0 -1
  173. package/dist/js/core/components/functional/infer/hugging-face/hf-cache.js +0 -183
  174. package/dist/js/core/components/functional/infer/hugging-face/hf-cache.js.map +0 -1
  175. package/dist/js/core/components/functional/infer/hugging-face/hf-config.js +0 -50
  176. package/dist/js/core/components/functional/infer/hugging-face/hf-config.js.map +0 -1
  177. package/dist/js/core/components/functional/infer/hugging-face/hf-controller.js +0 -460
  178. package/dist/js/core/components/functional/infer/hugging-face/hf-controller.js.map +0 -1
  179. package/dist/js/core/components/functional/infer/hugging-face/hf-engine.js +0 -116
  180. package/dist/js/core/components/functional/infer/hugging-face/hf-engine.js.map +0 -1
  181. package/dist/js/core/components/functional/infer/hugging-face/hf-input.js +0 -170
  182. package/dist/js/core/components/functional/infer/hugging-face/hf-input.js.map +0 -1
  183. package/dist/js/core/components/functional/infer/hugging-face/hf-protocol.js +0 -2
  184. package/dist/js/core/components/functional/infer/hugging-face/hf-protocol.js.map +0 -1
  185. package/dist/js/core/components/functional/infer/hugging-face/hf-registry.js +0 -367
  186. package/dist/js/core/components/functional/infer/hugging-face/hf-registry.js.map +0 -1
  187. package/dist/js/core/components/functional/infer/hugging-face/hf-schema.js +0 -288
  188. package/dist/js/core/components/functional/infer/hugging-face/hf-schema.js.map +0 -1
  189. package/dist/js/core/components/functional/infer/hugging-face/hf-worker-runtime.js +0 -309
  190. package/dist/js/core/components/functional/infer/hugging-face/hf-worker-runtime.js.map +0 -1
  191. package/dist/js/core/components/functional/infer/hugging-face/hugging-face-infer.js +0 -213
  192. package/dist/js/core/components/functional/infer/hugging-face/hugging-face-infer.js.map +0 -1
  193. package/dist/js/core/components/functional/infer/hugging-face/hugging-face.js +0 -76
  194. package/dist/js/core/components/functional/infer/hugging-face/hugging-face.js.map +0 -1
  195. package/dist/js/core/components/functional/infer/hugging-face/types.js +0 -62
  196. package/dist/js/core/components/functional/infer/hugging-face/types.js.map +0 -1
  197. package/dist/js/core/components/functional/jsonata/jsonata.js +0 -119
  198. package/dist/js/core/components/functional/jsonata/jsonata.js.map +0 -1
  199. package/dist/js/core/components/functional/list/list.js +0 -341
  200. package/dist/js/core/components/functional/list/list.js.map +0 -1
  201. package/dist/js/core/components/functional/mix/mix.js +0 -103
  202. package/dist/js/core/components/functional/mix/mix.js.map +0 -1
  203. package/dist/js/core/components/functional/queue/queue.js +0 -450
  204. package/dist/js/core/components/functional/queue/queue.js.map +0 -1
  205. package/dist/js/core/components/functional/router/redirect.js +0 -54
  206. package/dist/js/core/components/functional/router/redirect.js.map +0 -1
  207. package/dist/js/core/components/functional/router/router.js +0 -179
  208. package/dist/js/core/components/functional/router/router.js.map +0 -1
  209. package/dist/js/core/components/functional/sdui/SDUIDescriptorTransformer.js +0 -216
  210. package/dist/js/core/components/functional/sdui/SDUIDescriptorTransformer.js.map +0 -1
  211. package/dist/js/core/components/functional/sdui/default-library.json +0 -108
  212. package/dist/js/core/components/functional/sdui/sdui-utils.js +0 -64
  213. package/dist/js/core/components/functional/sdui/sdui-utils.js.map +0 -1
  214. package/dist/js/core/components/functional/sdui/sdui.js +0 -271
  215. package/dist/js/core/components/functional/sdui/sdui.js.map +0 -1
  216. package/dist/js/core/components/functional/sdui/types.js +0 -2
  217. package/dist/js/core/components/functional/sdui/types.js.map +0 -1
  218. package/dist/js/core/components/functional/shader/gl-runtime.js +0 -852
  219. package/dist/js/core/components/functional/shader/gl-runtime.js.map +0 -1
  220. package/dist/js/core/components/functional/shader/shader.js +0 -1739
  221. package/dist/js/core/components/functional/shader/shader.js.map +0 -1
  222. package/dist/js/core/components/functional/shader/shadertoy-prelude.js +0 -82
  223. package/dist/js/core/components/functional/shader/shadertoy-prelude.js.map +0 -1
  224. package/dist/js/core/components/functional/shader/types.js +0 -230
  225. package/dist/js/core/components/functional/shader/types.js.map +0 -1
  226. package/dist/js/core/components/functional/sonic-scope/sonic-scope.js +0 -22
  227. package/dist/js/core/components/functional/sonic-scope/sonic-scope.js.map +0 -1
  228. package/dist/js/core/components/functional/states/states.js +0 -172
  229. package/dist/js/core/components/functional/states/states.js.map +0 -1
  230. package/dist/js/core/components/functional/submit/submit.js +0 -284
  231. package/dist/js/core/components/functional/submit/submit.js.map +0 -1
  232. package/dist/js/core/components/functional/subscriber/subscriber.js +0 -39
  233. package/dist/js/core/components/functional/subscriber/subscriber.js.map +0 -1
  234. package/dist/js/core/components/functional/translation/translation.js +0 -28
  235. package/dist/js/core/components/functional/translation/translation.js.map +0 -1
  236. package/dist/js/core/components/functional/value/value.js +0 -28
  237. package/dist/js/core/components/functional/value/value.js.map +0 -1
  238. package/dist/js/core/components/functional/webgpu/canvas2d-fallback.js +0 -117
  239. package/dist/js/core/components/functional/webgpu/canvas2d-fallback.js.map +0 -1
  240. package/dist/js/core/components/functional/webgpu/form-bind.js +0 -92
  241. package/dist/js/core/components/functional/webgpu/form-bind.js.map +0 -1
  242. package/dist/js/core/components/functional/webgpu/gl-fallback.js +0 -156
  243. package/dist/js/core/components/functional/webgpu/gl-fallback.js.map +0 -1
  244. package/dist/js/core/components/functional/webgpu/gpu-runtime.js +0 -407
  245. package/dist/js/core/components/functional/webgpu/gpu-runtime.js.map +0 -1
  246. package/dist/js/core/components/functional/webgpu/helpers.js +0 -50
  247. package/dist/js/core/components/functional/webgpu/helpers.js.map +0 -1
  248. package/dist/js/core/components/functional/webgpu/out-frame.js +0 -117
  249. package/dist/js/core/components/functional/webgpu/out-frame.js.map +0 -1
  250. package/dist/js/core/components/functional/webgpu/particles-runtime.js +0 -407
  251. package/dist/js/core/components/functional/webgpu/particles-runtime.js.map +0 -1
  252. package/dist/js/core/components/functional/webgpu/pointer.js +0 -56
  253. package/dist/js/core/components/functional/webgpu/pointer.js.map +0 -1
  254. package/dist/js/core/components/functional/webgpu/types.js +0 -24
  255. package/dist/js/core/components/functional/webgpu/types.js.map +0 -1
  256. package/dist/js/core/components/functional/webgpu/webgpu.js +0 -709
  257. package/dist/js/core/components/functional/webgpu/webgpu.js.map +0 -1
  258. package/dist/js/core/components/functional/webgpu/wgsl-prelude.js +0 -77
  259. package/dist/js/core/components/functional/webgpu/wgsl-prelude.js.map +0 -1
  260. package/dist/js/core/components/ui/_css/scroll.js +0 -27
  261. package/dist/js/core/components/ui/_css/scroll.js.map +0 -1
  262. package/dist/js/core/components/ui/_css/shadow.js +0 -22
  263. package/dist/js/core/components/ui/_css/shadow.js.map +0 -1
  264. package/dist/js/core/components/ui/_css/size.js +0 -36
  265. package/dist/js/core/components/ui/_css/size.js.map +0 -1
  266. package/dist/js/core/components/ui/_css/type.js +0 -92
  267. package/dist/js/core/components/ui/_css/type.js.map +0 -1
  268. package/dist/js/core/components/ui/alert/alert.js +0 -213
  269. package/dist/js/core/components/ui/alert/alert.js.map +0 -1
  270. package/dist/js/core/components/ui/alert-messages/alert-messages.js +0 -68
  271. package/dist/js/core/components/ui/alert-messages/alert-messages.js.map +0 -1
  272. package/dist/js/core/components/ui/badge/badge.js +0 -199
  273. package/dist/js/core/components/ui/badge/badge.js.map +0 -1
  274. package/dist/js/core/components/ui/button/button.js +0 -697
  275. package/dist/js/core/components/ui/button/button.js.map +0 -1
  276. package/dist/js/core/components/ui/captcha/altchaStyles.js +0 -226
  277. package/dist/js/core/components/ui/captcha/altchaStyles.js.map +0 -1
  278. package/dist/js/core/components/ui/captcha/captcha.js +0 -167
  279. package/dist/js/core/components/ui/captcha/captcha.js.map +0 -1
  280. package/dist/js/core/components/ui/card/card-footer.js +0 -26
  281. package/dist/js/core/components/ui/card/card-footer.js.map +0 -1
  282. package/dist/js/core/components/ui/card/card-header-descripton.js +0 -30
  283. package/dist/js/core/components/ui/card/card-header-descripton.js.map +0 -1
  284. package/dist/js/core/components/ui/card/card-header.js +0 -79
  285. package/dist/js/core/components/ui/card/card-header.js.map +0 -1
  286. package/dist/js/core/components/ui/card/card-main.js +0 -26
  287. package/dist/js/core/components/ui/card/card-main.js.map +0 -1
  288. package/dist/js/core/components/ui/card/card.js +0 -67
  289. package/dist/js/core/components/ui/card/card.js.map +0 -1
  290. package/dist/js/core/components/ui/divider/divider.js +0 -200
  291. package/dist/js/core/components/ui/divider/divider.js.map +0 -1
  292. package/dist/js/core/components/ui/form/checkbox/checkbox.js +0 -257
  293. package/dist/js/core/components/ui/form/checkbox/checkbox.js.map +0 -1
  294. package/dist/js/core/components/ui/form/css/form-control.js +0 -393
  295. package/dist/js/core/components/ui/form/css/form-control.js.map +0 -1
  296. package/dist/js/core/components/ui/form/fieldset/fieldset.js +0 -124
  297. package/dist/js/core/components/ui/form/fieldset/fieldset.js.map +0 -1
  298. package/dist/js/core/components/ui/form/fieldset/legend-description.js +0 -38
  299. package/dist/js/core/components/ui/form/fieldset/legend-description.js.map +0 -1
  300. package/dist/js/core/components/ui/form/fieldset/legend.js +0 -130
  301. package/dist/js/core/components/ui/form/fieldset/legend.js.map +0 -1
  302. package/dist/js/core/components/ui/form/form-actions/form-actions.js +0 -47
  303. package/dist/js/core/components/ui/form/form-actions/form-actions.js.map +0 -1
  304. package/dist/js/core/components/ui/form/form-layout/form-layout.js +0 -84
  305. package/dist/js/core/components/ui/form/form-layout/form-layout.js.map +0 -1
  306. package/dist/js/core/components/ui/form/input/input.js +0 -316
  307. package/dist/js/core/components/ui/form/input/input.js.map +0 -1
  308. package/dist/js/core/components/ui/form/input/password-helper.js +0 -134
  309. package/dist/js/core/components/ui/form/input/password-helper.js.map +0 -1
  310. package/dist/js/core/components/ui/form/input/same-value-helper.js +0 -85
  311. package/dist/js/core/components/ui/form/input/same-value-helper.js.map +0 -1
  312. package/dist/js/core/components/ui/form/input-autocomplete/input-autocomplete.js +0 -405
  313. package/dist/js/core/components/ui/form/input-autocomplete/input-autocomplete.js.map +0 -1
  314. package/dist/js/core/components/ui/form/radio/radio.js +0 -63
  315. package/dist/js/core/components/ui/form/radio/radio.js.map +0 -1
  316. package/dist/js/core/components/ui/form/select/select.js +0 -323
  317. package/dist/js/core/components/ui/form/select/select.js.map +0 -1
  318. package/dist/js/core/components/ui/form/switch/switch.js +0 -90
  319. package/dist/js/core/components/ui/form/switch/switch.js.map +0 -1
  320. package/dist/js/core/components/ui/form/textarea/textarea.js +0 -162
  321. package/dist/js/core/components/ui/form/textarea/textarea.js.map +0 -1
  322. package/dist/js/core/components/ui/group/group.js +0 -128
  323. package/dist/js/core/components/ui/group/group.js.map +0 -1
  324. package/dist/js/core/components/ui/icon/icon.js +0 -145
  325. package/dist/js/core/components/ui/icon/icon.js.map +0 -1
  326. package/dist/js/core/components/ui/icon/icons.js +0 -184
  327. package/dist/js/core/components/ui/icon/icons.js.map +0 -1
  328. package/dist/js/core/components/ui/icon/icons.json +0 -1
  329. package/dist/js/core/components/ui/image/image.js +0 -160
  330. package/dist/js/core/components/ui/image/image.js.map +0 -1
  331. package/dist/js/core/components/ui/link/link.js +0 -125
  332. package/dist/js/core/components/ui/link/link.js.map +0 -1
  333. package/dist/js/core/components/ui/loader/loader.js +0 -106
  334. package/dist/js/core/components/ui/loader/loader.js.map +0 -1
  335. package/dist/js/core/components/ui/loader/styles/fixed.js +0 -56
  336. package/dist/js/core/components/ui/loader/styles/fixed.js.map +0 -1
  337. package/dist/js/core/components/ui/loader/styles/inline.js +0 -70
  338. package/dist/js/core/components/ui/loader/styles/inline.js.map +0 -1
  339. package/dist/js/core/components/ui/menu/menu-item.js +0 -35
  340. package/dist/js/core/components/ui/menu/menu-item.js.map +0 -1
  341. package/dist/js/core/components/ui/menu/menu.js +0 -436
  342. package/dist/js/core/components/ui/menu/menu.js.map +0 -1
  343. package/dist/js/core/components/ui/modal/modal-actions.js +0 -44
  344. package/dist/js/core/components/ui/modal/modal-actions.js.map +0 -1
  345. package/dist/js/core/components/ui/modal/modal-close.js +0 -56
  346. package/dist/js/core/components/ui/modal/modal-close.js.map +0 -1
  347. package/dist/js/core/components/ui/modal/modal-content.js +0 -27
  348. package/dist/js/core/components/ui/modal/modal-content.js.map +0 -1
  349. package/dist/js/core/components/ui/modal/modal-subtitle.js +0 -34
  350. package/dist/js/core/components/ui/modal/modal-subtitle.js.map +0 -1
  351. package/dist/js/core/components/ui/modal/modal-title.js +0 -35
  352. package/dist/js/core/components/ui/modal/modal-title.js.map +0 -1
  353. package/dist/js/core/components/ui/modal/modal-utils.js +0 -32
  354. package/dist/js/core/components/ui/modal/modal-utils.js.map +0 -1
  355. package/dist/js/core/components/ui/modal/modal.js +0 -568
  356. package/dist/js/core/components/ui/modal/modal.js.map +0 -1
  357. package/dist/js/core/components/ui/pop/pop.js +0 -337
  358. package/dist/js/core/components/ui/pop/pop.js.map +0 -1
  359. package/dist/js/core/components/ui/progress/progress.js +0 -164
  360. package/dist/js/core/components/ui/progress/progress.js.map +0 -1
  361. package/dist/js/core/components/ui/table/table-caption.js +0 -29
  362. package/dist/js/core/components/ui/table/table-caption.js.map +0 -1
  363. package/dist/js/core/components/ui/table/table-tbody.js +0 -41
  364. package/dist/js/core/components/ui/table/table-tbody.js.map +0 -1
  365. package/dist/js/core/components/ui/table/table-td.js +0 -69
  366. package/dist/js/core/components/ui/table/table-td.js.map +0 -1
  367. package/dist/js/core/components/ui/table/table-tfoot.js +0 -28
  368. package/dist/js/core/components/ui/table/table-tfoot.js.map +0 -1
  369. package/dist/js/core/components/ui/table/table-th.js +0 -80
  370. package/dist/js/core/components/ui/table/table-th.js.map +0 -1
  371. package/dist/js/core/components/ui/table/table-thead.js +0 -26
  372. package/dist/js/core/components/ui/table/table-thead.js.map +0 -1
  373. package/dist/js/core/components/ui/table/table-tr.js +0 -67
  374. package/dist/js/core/components/ui/table/table-tr.js.map +0 -1
  375. package/dist/js/core/components/ui/table/table.js +0 -106
  376. package/dist/js/core/components/ui/table/table.js.map +0 -1
  377. package/dist/js/core/components/ui/theme/theme-collection/core-variables.js +0 -74
  378. package/dist/js/core/components/ui/theme/theme-collection/core-variables.js.map +0 -1
  379. package/dist/js/core/components/ui/theme/theme-collection/dark.js +0 -39
  380. package/dist/js/core/components/ui/theme/theme-collection/dark.js.map +0 -1
  381. package/dist/js/core/components/ui/theme/theme-collection/light.js +0 -32
  382. package/dist/js/core/components/ui/theme/theme-collection/light.js.map +0 -1
  383. package/dist/js/core/components/ui/theme/theme.js +0 -150
  384. package/dist/js/core/components/ui/theme/theme.js.map +0 -1
  385. package/dist/js/core/components/ui/toast/message-subscriber.js +0 -41
  386. package/dist/js/core/components/ui/toast/message-subscriber.js.map +0 -1
  387. package/dist/js/core/components/ui/toast/toast-item.js +0 -379
  388. package/dist/js/core/components/ui/toast/toast-item.js.map +0 -1
  389. package/dist/js/core/components/ui/toast/toast.js +0 -269
  390. package/dist/js/core/components/ui/toast/toast.js.map +0 -1
  391. package/dist/js/core/components/ui/toast/types.js +0 -2
  392. package/dist/js/core/components/ui/toast/types.js.map +0 -1
  393. package/dist/js/core/components/ui/tooltip/tooltip.js +0 -219
  394. package/dist/js/core/components/ui/tooltip/tooltip.js.map +0 -1
  395. package/dist/js/core/components/ui/ui.js +0 -41
  396. package/dist/js/core/components/ui/ui.js.map +0 -1
  397. package/dist/js/core/core.js +0 -14
  398. package/dist/js/core/core.js.map +0 -1
  399. package/dist/js/core/decorators/Subscriber.js +0 -10
  400. package/dist/js/core/decorators/Subscriber.js.map +0 -1
  401. package/dist/js/core/decorators/api.js +0 -806
  402. package/dist/js/core/decorators/api.js.map +0 -1
  403. package/dist/js/core/decorators/lifecycle.js +0 -67
  404. package/dist/js/core/decorators/lifecycle.js.map +0 -1
  405. package/dist/js/core/decorators/subscriber/ancestorAttribute.js +0 -27
  406. package/dist/js/core/decorators/subscriber/ancestorAttribute.js.map +0 -1
  407. package/dist/js/core/decorators/subscriber/autoFill.js +0 -26
  408. package/dist/js/core/decorators/subscriber/autoFill.js.map +0 -1
  409. package/dist/js/core/decorators/subscriber/autoSubscribe.js +0 -46
  410. package/dist/js/core/decorators/subscriber/autoSubscribe.js.map +0 -1
  411. package/dist/js/core/decorators/subscriber/bind.js +0 -150
  412. package/dist/js/core/decorators/subscriber/bind.js.map +0 -1
  413. package/dist/js/core/decorators/subscriber/common.js +0 -44
  414. package/dist/js/core/decorators/subscriber/common.js.map +0 -1
  415. package/dist/js/core/decorators/subscriber/derive.js +0 -60
  416. package/dist/js/core/decorators/subscriber/derive.js.map +0 -1
  417. package/dist/js/core/decorators/subscriber/dynamicPath.js +0 -75
  418. package/dist/js/core/decorators/subscriber/dynamicPath.js.map +0 -1
  419. package/dist/js/core/decorators/subscriber/dynamicPropertyWatch.js +0 -138
  420. package/dist/js/core/decorators/subscriber/dynamicPropertyWatch.js.map +0 -1
  421. package/dist/js/core/decorators/subscriber/handle.js +0 -22
  422. package/dist/js/core/decorators/subscriber/handle.js.map +0 -1
  423. package/dist/js/core/decorators/subscriber/onAssign.js +0 -199
  424. package/dist/js/core/decorators/subscriber/onAssign.js.map +0 -1
  425. package/dist/js/core/decorators/subscriber/publish.js +0 -108
  426. package/dist/js/core/decorators/subscriber/publish.js.map +0 -1
  427. package/dist/js/core/decorators/subscriber/publisherPath.js +0 -16
  428. package/dist/js/core/decorators/subscriber/publisherPath.js.map +0 -1
  429. package/dist/js/core/decorators/subscriber/subscribe.js +0 -20
  430. package/dist/js/core/decorators/subscriber/subscribe.js.map +0 -1
  431. package/dist/js/core/directives/DataProvider.js +0 -127
  432. package/dist/js/core/directives/DataProvider.js.map +0 -1
  433. package/dist/js/core/directives/Wording.js +0 -221
  434. package/dist/js/core/directives/Wording.js.map +0 -1
  435. package/dist/js/core/mixins/Fetcher.js +0 -325
  436. package/dist/js/core/mixins/Fetcher.js.map +0 -1
  437. package/dist/js/core/mixins/FormCheckable.js +0 -313
  438. package/dist/js/core/mixins/FormCheckable.js.map +0 -1
  439. package/dist/js/core/mixins/FormElement.js +0 -304
  440. package/dist/js/core/mixins/FormElement.js.map +0 -1
  441. package/dist/js/core/mixins/FormInput.js +0 -82
  442. package/dist/js/core/mixins/FormInput.js.map +0 -1
  443. package/dist/js/core/mixins/Subscriber.js +0 -354
  444. package/dist/js/core/mixins/Subscriber.js.map +0 -1
  445. package/dist/js/core/mixins/TemplatesContainer.js +0 -70
  446. package/dist/js/core/mixins/TemplatesContainer.js.map +0 -1
  447. package/dist/js/core/mixins/mixins.js +0 -7
  448. package/dist/js/core/mixins/mixins.js.map +0 -1
  449. package/dist/js/core/utils/AncestorAttributeObserver.js +0 -140
  450. package/dist/js/core/utils/AncestorAttributeObserver.js.map +0 -1
  451. package/dist/js/core/utils/Arrays.js +0 -141
  452. package/dist/js/core/utils/Arrays.js.map +0 -1
  453. package/dist/js/core/utils/DataBindObserver.js +0 -265
  454. package/dist/js/core/utils/DataBindObserver.js.map +0 -1
  455. package/dist/js/core/utils/Electron.js +0 -14
  456. package/dist/js/core/utils/Electron.js.map +0 -1
  457. package/dist/js/core/utils/Format.js +0 -43
  458. package/dist/js/core/utils/Format.js.map +0 -1
  459. package/dist/js/core/utils/HTML.js +0 -307
  460. package/dist/js/core/utils/HTML.js.map +0 -1
  461. package/dist/js/core/utils/LocationHandler.js +0 -143
  462. package/dist/js/core/utils/LocationHandler.js.map +0 -1
  463. package/dist/js/core/utils/Objects.js +0 -111
  464. package/dist/js/core/utils/Objects.js.map +0 -1
  465. package/dist/js/core/utils/PublisherProxy.js +0 -970
  466. package/dist/js/core/utils/PublisherProxy.js.map +0 -1
  467. package/dist/js/core/utils/SafariScrollGuard.js +0 -384
  468. package/dist/js/core/utils/SafariScrollGuard.js.map +0 -1
  469. package/dist/js/core/utils/Utils.js +0 -19
  470. package/dist/js/core/utils/Utils.js.map +0 -1
  471. package/dist/js/core/utils/aesCrypto.js +0 -98
  472. package/dist/js/core/utils/aesCrypto.js.map +0 -1
  473. package/dist/js/core/utils/api.js +0 -595
  474. package/dist/js/core/utils/api.js.map +0 -1
  475. package/dist/js/core/utils/dataProviderKey.js +0 -64
  476. package/dist/js/core/utils/dataProviderKey.js.map +0 -1
  477. package/dist/js/core/utils/derive.js +0 -246
  478. package/dist/js/core/utils/derive.js.map +0 -1
  479. package/dist/js/core/utils/endpoint.js +0 -74
  480. package/dist/js/core/utils/endpoint.js.map +0 -1
  481. package/dist/js/core/utils/jsonataHelpers.js +0 -84
  482. package/dist/js/core/utils/jsonataHelpers.js.map +0 -1
  483. package/dist/js/core/utils/jsonataRuntime.js +0 -75
  484. package/dist/js/core/utils/jsonataRuntime.js.map +0 -1
  485. package/dist/js/core/utils/mediaRef.js +0 -206
  486. package/dist/js/core/utils/mediaRef.js.map +0 -1
  487. package/dist/js/core/utils/route.js +0 -149
  488. package/dist/js/core/utils/route.js.map +0 -1
  489. package/dist/js/core/utils/similarity.js +0 -44
  490. package/dist/js/core/utils/similarity.js.map +0 -1
  491. package/dist/js/core/utils/url-pattern.js +0 -3
  492. package/dist/js/core/utils/url-pattern.js.map +0 -1
  493. package/dist/js/dataprovider.js +0 -2
  494. package/dist/js/dataprovider.js.map +0 -1
  495. package/dist/js/decorators.js +0 -43
  496. package/dist/js/decorators.js.map +0 -1
  497. package/dist/js/directives.js +0 -30
  498. package/dist/js/directives.js.map +0 -1
  499. package/dist/js/index.js +0 -8
  500. package/dist/js/index.js.map +0 -1
  501. package/dist/js/mixins.js +0 -23
  502. package/dist/js/mixins.js.map +0 -1
  503. package/dist/js/test-utils/TestUtils.js +0 -10
  504. package/dist/js/test-utils/TestUtils.js.map +0 -1
  505. package/dist/js/utils.js +0 -46
  506. package/dist/js/utils.js.map +0 -1
  507. package/dist/types/addons/3d.d.ts +0 -6
  508. package/dist/types/addons/3d.d.ts.map +0 -1
  509. package/dist/types/addons/hugging-face-infer.d.ts +0 -8
  510. package/dist/types/addons/hugging-face-infer.d.ts.map +0 -1
  511. package/dist/types/addons/shader.d.ts +0 -6
  512. package/dist/types/addons/shader.d.ts.map +0 -1
  513. package/dist/types/addons/webgpu.d.ts +0 -7
  514. package/dist/types/addons/webgpu.d.ts.map +0 -1
  515. package/dist/types/components.d.ts +0 -5
  516. package/dist/types/components.d.ts.map +0 -1
  517. package/dist/types/concorde-loaded.d.ts +0 -2
  518. package/dist/types/concorde-loaded.d.ts.map +0 -1
  519. package/dist/types/core/_types/endpoint.d.ts +0 -5
  520. package/dist/types/core/_types/endpoint.d.ts.map +0 -1
  521. package/dist/types/core/_types/key.d.ts +0 -2
  522. package/dist/types/core/_types/key.d.ts.map +0 -1
  523. package/dist/types/core/_types/types.d.ts +0 -28
  524. package/dist/types/core/_types/types.d.ts.map +0 -1
  525. package/dist/types/core/components/functional/3d/3d.d.ts +0 -94
  526. package/dist/types/core/components/functional/3d/3d.d.ts.map +0 -1
  527. package/dist/types/core/components/functional/3d/asset.d.ts +0 -12
  528. package/dist/types/core/components/functional/3d/asset.d.ts.map +0 -1
  529. package/dist/types/core/components/functional/3d/boot.d.ts +0 -23
  530. package/dist/types/core/components/functional/3d/boot.d.ts.map +0 -1
  531. package/dist/types/core/components/functional/3d/constants.d.ts +0 -43
  532. package/dist/types/core/components/functional/3d/constants.d.ts.map +0 -1
  533. package/dist/types/core/components/functional/3d/demo-content.d.ts +0 -10
  534. package/dist/types/core/components/functional/3d/demo-content.d.ts.map +0 -1
  535. package/dist/types/core/components/functional/3d/ensure.d.ts +0 -39
  536. package/dist/types/core/components/functional/3d/ensure.d.ts.map +0 -1
  537. package/dist/types/core/components/functional/3d/form-bind.d.ts +0 -20
  538. package/dist/types/core/components/functional/3d/form-bind.d.ts.map +0 -1
  539. package/dist/types/core/components/functional/3d/form-fields.d.ts +0 -14
  540. package/dist/types/core/components/functional/3d/form-fields.d.ts.map +0 -1
  541. package/dist/types/core/components/functional/3d/form-params.d.ts +0 -37
  542. package/dist/types/core/components/functional/3d/form-params.d.ts.map +0 -1
  543. package/dist/types/core/components/functional/3d/frame-capture.d.ts +0 -33
  544. package/dist/types/core/components/functional/3d/frame-capture.d.ts.map +0 -1
  545. package/dist/types/core/components/functional/3d/frame-source.d.ts +0 -23
  546. package/dist/types/core/components/functional/3d/frame-source.d.ts.map +0 -1
  547. package/dist/types/core/components/functional/3d/gl.d.ts +0 -4
  548. package/dist/types/core/components/functional/3d/gl.d.ts.map +0 -1
  549. package/dist/types/core/components/functional/3d/life.d.ts +0 -43
  550. package/dist/types/core/components/functional/3d/life.d.ts.map +0 -1
  551. package/dist/types/core/components/functional/3d/load.d.ts +0 -36
  552. package/dist/types/core/components/functional/3d/load.d.ts.map +0 -1
  553. package/dist/types/core/components/functional/3d/ops.d.ts +0 -48
  554. package/dist/types/core/components/functional/3d/ops.d.ts.map +0 -1
  555. package/dist/types/core/components/functional/3d/opts.d.ts +0 -16
  556. package/dist/types/core/components/functional/3d/opts.d.ts.map +0 -1
  557. package/dist/types/core/components/functional/3d/orbit.d.ts +0 -55
  558. package/dist/types/core/components/functional/3d/orbit.d.ts.map +0 -1
  559. package/dist/types/core/components/functional/3d/out-publish.d.ts +0 -48
  560. package/dist/types/core/components/functional/3d/out-publish.d.ts.map +0 -1
  561. package/dist/types/core/components/functional/3d/parse.d.ts +0 -23
  562. package/dist/types/core/components/functional/3d/parse.d.ts.map +0 -1
  563. package/dist/types/core/components/functional/3d/pick.d.ts +0 -32
  564. package/dist/types/core/components/functional/3d/pick.d.ts.map +0 -1
  565. package/dist/types/core/components/functional/3d/playback.d.ts +0 -35
  566. package/dist/types/core/components/functional/3d/playback.d.ts.map +0 -1
  567. package/dist/types/core/components/functional/3d/pointer.d.ts +0 -27
  568. package/dist/types/core/components/functional/3d/pointer.d.ts.map +0 -1
  569. package/dist/types/core/components/functional/3d/post-bind.d.ts +0 -52
  570. package/dist/types/core/components/functional/3d/post-bind.d.ts.map +0 -1
  571. package/dist/types/core/components/functional/3d/post-channels.d.ts +0 -40
  572. package/dist/types/core/components/functional/3d/post-channels.d.ts.map +0 -1
  573. package/dist/types/core/components/functional/3d/post-fx.d.ts +0 -73
  574. package/dist/types/core/components/functional/3d/post-fx.d.ts.map +0 -1
  575. package/dist/types/core/components/functional/3d/props.d.ts +0 -72
  576. package/dist/types/core/components/functional/3d/props.d.ts.map +0 -1
  577. package/dist/types/core/components/functional/3d/publisher-listen.d.ts +0 -8
  578. package/dist/types/core/components/functional/3d/publisher-listen.d.ts.map +0 -1
  579. package/dist/types/core/components/functional/3d/reload.d.ts +0 -38
  580. package/dist/types/core/components/functional/3d/reload.d.ts.map +0 -1
  581. package/dist/types/core/components/functional/3d/runtime.d.ts +0 -90
  582. package/dist/types/core/components/functional/3d/runtime.d.ts.map +0 -1
  583. package/dist/types/core/components/functional/3d/scene-runtime.d.ts +0 -6
  584. package/dist/types/core/components/functional/3d/scene-runtime.d.ts.map +0 -1
  585. package/dist/types/core/components/functional/3d/snapshot.d.ts +0 -29
  586. package/dist/types/core/components/functional/3d/snapshot.d.ts.map +0 -1
  587. package/dist/types/core/components/functional/3d/styles.d.ts +0 -2
  588. package/dist/types/core/components/functional/3d/styles.d.ts.map +0 -1
  589. package/dist/types/core/components/functional/3d/tune.d.ts +0 -37
  590. package/dist/types/core/components/functional/3d/tune.d.ts.map +0 -1
  591. package/dist/types/core/components/functional/3d/types.d.ts +0 -149
  592. package/dist/types/core/components/functional/3d/types.d.ts.map +0 -1
  593. package/dist/types/core/components/functional/3d/updated.d.ts +0 -7
  594. package/dist/types/core/components/functional/3d/updated.d.ts.map +0 -1
  595. package/dist/types/core/components/functional/3d/view.d.ts +0 -25
  596. package/dist/types/core/components/functional/3d/view.d.ts.map +0 -1
  597. package/dist/types/core/components/functional/3d/wire.d.ts +0 -32
  598. package/dist/types/core/components/functional/3d/wire.d.ts.map +0 -1
  599. package/dist/types/core/components/functional/date/date.d.ts +0 -52
  600. package/dist/types/core/components/functional/date/date.d.ts.map +0 -1
  601. package/dist/types/core/components/functional/example/example.d.ts +0 -15
  602. package/dist/types/core/components/functional/example/example.d.ts.map +0 -1
  603. package/dist/types/core/components/functional/fetch/fetch.d.ts +0 -102
  604. package/dist/types/core/components/functional/fetch/fetch.d.ts.map +0 -1
  605. package/dist/types/core/components/functional/functional.d.ts +0 -18
  606. package/dist/types/core/components/functional/functional.d.ts.map +0 -1
  607. package/dist/types/core/components/functional/if/if.d.ts +0 -13
  608. package/dist/types/core/components/functional/if/if.d.ts.map +0 -1
  609. package/dist/types/core/components/functional/infer/hugging-face/hf-cache.d.ts +0 -21
  610. package/dist/types/core/components/functional/infer/hugging-face/hf-cache.d.ts.map +0 -1
  611. package/dist/types/core/components/functional/infer/hugging-face/hf-config.d.ts +0 -133
  612. package/dist/types/core/components/functional/infer/hugging-face/hf-config.d.ts.map +0 -1
  613. package/dist/types/core/components/functional/infer/hugging-face/hf-controller.d.ts +0 -79
  614. package/dist/types/core/components/functional/infer/hugging-face/hf-controller.d.ts.map +0 -1
  615. package/dist/types/core/components/functional/infer/hugging-face/hf-engine.d.ts +0 -43
  616. package/dist/types/core/components/functional/infer/hugging-face/hf-engine.d.ts.map +0 -1
  617. package/dist/types/core/components/functional/infer/hugging-face/hf-input.d.ts +0 -47
  618. package/dist/types/core/components/functional/infer/hugging-face/hf-input.d.ts.map +0 -1
  619. package/dist/types/core/components/functional/infer/hugging-face/hf-protocol.d.ts +0 -95
  620. package/dist/types/core/components/functional/infer/hugging-face/hf-protocol.d.ts.map +0 -1
  621. package/dist/types/core/components/functional/infer/hugging-face/hf-registry.d.ts +0 -77
  622. package/dist/types/core/components/functional/infer/hugging-face/hf-registry.d.ts.map +0 -1
  623. package/dist/types/core/components/functional/infer/hugging-face/hf-schema.d.ts +0 -1251
  624. package/dist/types/core/components/functional/infer/hugging-face/hf-schema.d.ts.map +0 -1
  625. package/dist/types/core/components/functional/infer/hugging-face/hf-worker-runtime.d.ts +0 -56
  626. package/dist/types/core/components/functional/infer/hugging-face/hf-worker-runtime.d.ts.map +0 -1
  627. package/dist/types/core/components/functional/infer/hugging-face/hugging-face-infer.d.ts +0 -67
  628. package/dist/types/core/components/functional/infer/hugging-face/hugging-face-infer.d.ts.map +0 -1
  629. package/dist/types/core/components/functional/infer/hugging-face/hugging-face.d.ts +0 -116
  630. package/dist/types/core/components/functional/infer/hugging-face/hugging-face.d.ts.map +0 -1
  631. package/dist/types/core/components/functional/infer/hugging-face/types.d.ts +0 -167
  632. package/dist/types/core/components/functional/infer/hugging-face/types.d.ts.map +0 -1
  633. package/dist/types/core/components/functional/jsonata/jsonata.d.ts +0 -29
  634. package/dist/types/core/components/functional/jsonata/jsonata.d.ts.map +0 -1
  635. package/dist/types/core/components/functional/list/list.d.ts +0 -149
  636. package/dist/types/core/components/functional/list/list.d.ts.map +0 -1
  637. package/dist/types/core/components/functional/mix/mix.d.ts +0 -23
  638. package/dist/types/core/components/functional/mix/mix.d.ts.map +0 -1
  639. package/dist/types/core/components/functional/queue/queue.d.ts +0 -93
  640. package/dist/types/core/components/functional/queue/queue.d.ts.map +0 -1
  641. package/dist/types/core/components/functional/router/redirect.d.ts +0 -19
  642. package/dist/types/core/components/functional/router/redirect.d.ts.map +0 -1
  643. package/dist/types/core/components/functional/router/router.d.ts +0 -46
  644. package/dist/types/core/components/functional/router/router.d.ts.map +0 -1
  645. package/dist/types/core/components/functional/sdui/SDUIDescriptorTransformer.d.ts +0 -59
  646. package/dist/types/core/components/functional/sdui/SDUIDescriptorTransformer.d.ts.map +0 -1
  647. package/dist/types/core/components/functional/sdui/sdui-utils.d.ts +0 -6
  648. package/dist/types/core/components/functional/sdui/sdui-utils.d.ts.map +0 -1
  649. package/dist/types/core/components/functional/sdui/sdui.d.ts +0 -148
  650. package/dist/types/core/components/functional/sdui/sdui.d.ts.map +0 -1
  651. package/dist/types/core/components/functional/sdui/types.d.ts +0 -38
  652. package/dist/types/core/components/functional/sdui/types.d.ts.map +0 -1
  653. package/dist/types/core/components/functional/shader/gl-runtime.d.ts +0 -122
  654. package/dist/types/core/components/functional/shader/gl-runtime.d.ts.map +0 -1
  655. package/dist/types/core/components/functional/shader/shader.d.ts +0 -306
  656. package/dist/types/core/components/functional/shader/shader.d.ts.map +0 -1
  657. package/dist/types/core/components/functional/shader/shadertoy-prelude.d.ts +0 -20
  658. package/dist/types/core/components/functional/shader/shadertoy-prelude.d.ts.map +0 -1
  659. package/dist/types/core/components/functional/shader/types.d.ts +0 -286
  660. package/dist/types/core/components/functional/shader/types.d.ts.map +0 -1
  661. package/dist/types/core/components/functional/sonic-scope/sonic-scope.d.ts +0 -6
  662. package/dist/types/core/components/functional/sonic-scope/sonic-scope.d.ts.map +0 -1
  663. package/dist/types/core/components/functional/states/states.d.ts +0 -42
  664. package/dist/types/core/components/functional/states/states.d.ts.map +0 -1
  665. package/dist/types/core/components/functional/submit/submit.d.ts +0 -37
  666. package/dist/types/core/components/functional/submit/submit.d.ts.map +0 -1
  667. package/dist/types/core/components/functional/subscriber/subscriber.d.ts +0 -13
  668. package/dist/types/core/components/functional/subscriber/subscriber.d.ts.map +0 -1
  669. package/dist/types/core/components/functional/translation/translation.d.ts +0 -7
  670. package/dist/types/core/components/functional/translation/translation.d.ts.map +0 -1
  671. package/dist/types/core/components/functional/value/value.d.ts +0 -8
  672. package/dist/types/core/components/functional/value/value.d.ts.map +0 -1
  673. package/dist/types/core/components/functional/webgpu/canvas2d-fallback.d.ts +0 -29
  674. package/dist/types/core/components/functional/webgpu/canvas2d-fallback.d.ts.map +0 -1
  675. package/dist/types/core/components/functional/webgpu/form-bind.d.ts +0 -43
  676. package/dist/types/core/components/functional/webgpu/form-bind.d.ts.map +0 -1
  677. package/dist/types/core/components/functional/webgpu/gl-fallback.d.ts +0 -35
  678. package/dist/types/core/components/functional/webgpu/gl-fallback.d.ts.map +0 -1
  679. package/dist/types/core/components/functional/webgpu/gpu-runtime.d.ts +0 -67
  680. package/dist/types/core/components/functional/webgpu/gpu-runtime.d.ts.map +0 -1
  681. package/dist/types/core/components/functional/webgpu/helpers.d.ts +0 -10
  682. package/dist/types/core/components/functional/webgpu/helpers.d.ts.map +0 -1
  683. package/dist/types/core/components/functional/webgpu/out-frame.d.ts +0 -29
  684. package/dist/types/core/components/functional/webgpu/out-frame.d.ts.map +0 -1
  685. package/dist/types/core/components/functional/webgpu/particles-runtime.d.ts +0 -37
  686. package/dist/types/core/components/functional/webgpu/particles-runtime.d.ts.map +0 -1
  687. package/dist/types/core/components/functional/webgpu/pointer.d.ts +0 -41
  688. package/dist/types/core/components/functional/webgpu/pointer.d.ts.map +0 -1
  689. package/dist/types/core/components/functional/webgpu/types.d.ts +0 -75
  690. package/dist/types/core/components/functional/webgpu/types.d.ts.map +0 -1
  691. package/dist/types/core/components/functional/webgpu/webgpu.d.ts +0 -133
  692. package/dist/types/core/components/functional/webgpu/webgpu.d.ts.map +0 -1
  693. package/dist/types/core/components/functional/webgpu/wgsl-prelude.d.ts +0 -8
  694. package/dist/types/core/components/functional/webgpu/wgsl-prelude.d.ts.map +0 -1
  695. package/dist/types/core/components/ui/_css/scroll.d.ts +0 -2
  696. package/dist/types/core/components/ui/_css/scroll.d.ts.map +0 -1
  697. package/dist/types/core/components/ui/_css/shadow.d.ts +0 -3
  698. package/dist/types/core/components/ui/_css/shadow.d.ts.map +0 -1
  699. package/dist/types/core/components/ui/_css/size.d.ts +0 -3
  700. package/dist/types/core/components/ui/_css/size.d.ts.map +0 -1
  701. package/dist/types/core/components/ui/_css/type.d.ts +0 -3
  702. package/dist/types/core/components/ui/_css/type.d.ts.map +0 -1
  703. package/dist/types/core/components/ui/alert/alert.d.ts +0 -37
  704. package/dist/types/core/components/ui/alert/alert.d.ts.map +0 -1
  705. package/dist/types/core/components/ui/alert-messages/alert-messages.d.ts +0 -15
  706. package/dist/types/core/components/ui/alert-messages/alert-messages.d.ts.map +0 -1
  707. package/dist/types/core/components/ui/badge/badge.d.ts +0 -27
  708. package/dist/types/core/components/ui/badge/badge.d.ts.map +0 -1
  709. package/dist/types/core/components/ui/button/button.d.ts +0 -180
  710. package/dist/types/core/components/ui/button/button.d.ts.map +0 -1
  711. package/dist/types/core/components/ui/captcha/altchaStyles.d.ts +0 -2
  712. package/dist/types/core/components/ui/captcha/altchaStyles.d.ts.map +0 -1
  713. package/dist/types/core/components/ui/captcha/captcha.d.ts +0 -30
  714. package/dist/types/core/components/ui/captcha/captcha.d.ts.map +0 -1
  715. package/dist/types/core/components/ui/card/card-footer.d.ts +0 -6
  716. package/dist/types/core/components/ui/card/card-footer.d.ts.map +0 -1
  717. package/dist/types/core/components/ui/card/card-header-descripton.d.ts +0 -6
  718. package/dist/types/core/components/ui/card/card-header-descripton.d.ts.map +0 -1
  719. package/dist/types/core/components/ui/card/card-header.d.ts +0 -9
  720. package/dist/types/core/components/ui/card/card-header.d.ts.map +0 -1
  721. package/dist/types/core/components/ui/card/card-main.d.ts +0 -6
  722. package/dist/types/core/components/ui/card/card-main.d.ts.map +0 -1
  723. package/dist/types/core/components/ui/card/card.d.ts +0 -13
  724. package/dist/types/core/components/ui/card/card.d.ts.map +0 -1
  725. package/dist/types/core/components/ui/divider/divider.d.ts +0 -16
  726. package/dist/types/core/components/ui/divider/divider.d.ts.map +0 -1
  727. package/dist/types/core/components/ui/form/checkbox/checkbox.d.ts +0 -176
  728. package/dist/types/core/components/ui/form/checkbox/checkbox.d.ts.map +0 -1
  729. package/dist/types/core/components/ui/form/css/form-control.d.ts +0 -5
  730. package/dist/types/core/components/ui/form/css/form-control.d.ts.map +0 -1
  731. package/dist/types/core/components/ui/form/fieldset/fieldset.d.ts +0 -24
  732. package/dist/types/core/components/ui/form/fieldset/fieldset.d.ts.map +0 -1
  733. package/dist/types/core/components/ui/form/fieldset/legend-description.d.ts +0 -6
  734. package/dist/types/core/components/ui/form/fieldset/legend-description.d.ts.map +0 -1
  735. package/dist/types/core/components/ui/form/fieldset/legend.d.ts +0 -17
  736. package/dist/types/core/components/ui/form/fieldset/legend.d.ts.map +0 -1
  737. package/dist/types/core/components/ui/form/form-actions/form-actions.d.ts +0 -8
  738. package/dist/types/core/components/ui/form/form-actions/form-actions.d.ts.map +0 -1
  739. package/dist/types/core/components/ui/form/form-layout/form-layout.d.ts +0 -13
  740. package/dist/types/core/components/ui/form/form-layout/form-layout.d.ts.map +0 -1
  741. package/dist/types/core/components/ui/form/input/input.d.ts +0 -123
  742. package/dist/types/core/components/ui/form/input/input.d.ts.map +0 -1
  743. package/dist/types/core/components/ui/form/input/password-helper.d.ts +0 -26
  744. package/dist/types/core/components/ui/form/input/password-helper.d.ts.map +0 -1
  745. package/dist/types/core/components/ui/form/input/same-value-helper.d.ts +0 -17
  746. package/dist/types/core/components/ui/form/input/same-value-helper.d.ts.map +0 -1
  747. package/dist/types/core/components/ui/form/input-autocomplete/input-autocomplete.d.ts +0 -155
  748. package/dist/types/core/components/ui/form/input-autocomplete/input-autocomplete.d.ts.map +0 -1
  749. package/dist/types/core/components/ui/form/radio/radio.d.ts +0 -15
  750. package/dist/types/core/components/ui/form/radio/radio.d.ts.map +0 -1
  751. package/dist/types/core/components/ui/form/select/select.d.ts +0 -59
  752. package/dist/types/core/components/ui/form/select/select.d.ts.map +0 -1
  753. package/dist/types/core/components/ui/form/switch/switch.d.ts +0 -6
  754. package/dist/types/core/components/ui/form/switch/switch.d.ts.map +0 -1
  755. package/dist/types/core/components/ui/form/textarea/textarea.d.ts +0 -94
  756. package/dist/types/core/components/ui/form/textarea/textarea.d.ts.map +0 -1
  757. package/dist/types/core/components/ui/group/group.d.ts +0 -17
  758. package/dist/types/core/components/ui/group/group.d.ts.map +0 -1
  759. package/dist/types/core/components/ui/icon/icon.d.ts +0 -30
  760. package/dist/types/core/components/ui/icon/icon.d.ts.map +0 -1
  761. package/dist/types/core/components/ui/icon/icons.d.ts +0 -13
  762. package/dist/types/core/components/ui/icon/icons.d.ts.map +0 -1
  763. package/dist/types/core/components/ui/image/image.d.ts +0 -16
  764. package/dist/types/core/components/ui/image/image.d.ts.map +0 -1
  765. package/dist/types/core/components/ui/link/link.d.ts +0 -30
  766. package/dist/types/core/components/ui/link/link.d.ts.map +0 -1
  767. package/dist/types/core/components/ui/loader/loader.d.ts +0 -24
  768. package/dist/types/core/components/ui/loader/loader.d.ts.map +0 -1
  769. package/dist/types/core/components/ui/loader/styles/fixed.d.ts +0 -2
  770. package/dist/types/core/components/ui/loader/styles/fixed.d.ts.map +0 -1
  771. package/dist/types/core/components/ui/loader/styles/inline.d.ts +0 -2
  772. package/dist/types/core/components/ui/loader/styles/inline.d.ts.map +0 -1
  773. package/dist/types/core/components/ui/menu/menu-item.d.ts +0 -6
  774. package/dist/types/core/components/ui/menu/menu-item.d.ts.map +0 -1
  775. package/dist/types/core/components/ui/menu/menu.d.ts +0 -52
  776. package/dist/types/core/components/ui/menu/menu.d.ts.map +0 -1
  777. package/dist/types/core/components/ui/modal/modal-actions.d.ts +0 -9
  778. package/dist/types/core/components/ui/modal/modal-actions.d.ts.map +0 -1
  779. package/dist/types/core/components/ui/modal/modal-close.d.ts +0 -11
  780. package/dist/types/core/components/ui/modal/modal-close.d.ts.map +0 -1
  781. package/dist/types/core/components/ui/modal/modal-content.d.ts +0 -6
  782. package/dist/types/core/components/ui/modal/modal-content.d.ts.map +0 -1
  783. package/dist/types/core/components/ui/modal/modal-subtitle.d.ts +0 -6
  784. package/dist/types/core/components/ui/modal/modal-subtitle.d.ts.map +0 -1
  785. package/dist/types/core/components/ui/modal/modal-title.d.ts +0 -6
  786. package/dist/types/core/components/ui/modal/modal-title.d.ts.map +0 -1
  787. package/dist/types/core/components/ui/modal/modal-utils.d.ts +0 -4
  788. package/dist/types/core/components/ui/modal/modal-utils.d.ts.map +0 -1
  789. package/dist/types/core/components/ui/modal/modal.d.ts +0 -79
  790. package/dist/types/core/components/ui/modal/modal.d.ts.map +0 -1
  791. package/dist/types/core/components/ui/pop/pop.d.ts +0 -42
  792. package/dist/types/core/components/ui/pop/pop.d.ts.map +0 -1
  793. package/dist/types/core/components/ui/progress/progress.d.ts +0 -12
  794. package/dist/types/core/components/ui/progress/progress.d.ts.map +0 -1
  795. package/dist/types/core/components/ui/table/table-caption.d.ts +0 -6
  796. package/dist/types/core/components/ui/table/table-caption.d.ts.map +0 -1
  797. package/dist/types/core/components/ui/table/table-tbody.d.ts +0 -6
  798. package/dist/types/core/components/ui/table/table-tbody.d.ts.map +0 -1
  799. package/dist/types/core/components/ui/table/table-td.d.ts +0 -13
  800. package/dist/types/core/components/ui/table/table-td.d.ts.map +0 -1
  801. package/dist/types/core/components/ui/table/table-tfoot.d.ts +0 -6
  802. package/dist/types/core/components/ui/table/table-tfoot.d.ts.map +0 -1
  803. package/dist/types/core/components/ui/table/table-th.d.ts +0 -12
  804. package/dist/types/core/components/ui/table/table-th.d.ts.map +0 -1
  805. package/dist/types/core/components/ui/table/table-thead.d.ts +0 -6
  806. package/dist/types/core/components/ui/table/table-thead.d.ts.map +0 -1
  807. package/dist/types/core/components/ui/table/table-tr.d.ts +0 -14
  808. package/dist/types/core/components/ui/table/table-tr.d.ts.map +0 -1
  809. package/dist/types/core/components/ui/table/table.d.ts +0 -18
  810. package/dist/types/core/components/ui/table/table.d.ts.map +0 -1
  811. package/dist/types/core/components/ui/theme/theme-collection/core-variables.d.ts +0 -2
  812. package/dist/types/core/components/ui/theme/theme-collection/core-variables.d.ts.map +0 -1
  813. package/dist/types/core/components/ui/theme/theme-collection/dark.d.ts +0 -2
  814. package/dist/types/core/components/ui/theme/theme-collection/dark.d.ts.map +0 -1
  815. package/dist/types/core/components/ui/theme/theme-collection/light.d.ts +0 -2
  816. package/dist/types/core/components/ui/theme/theme-collection/light.d.ts.map +0 -1
  817. package/dist/types/core/components/ui/theme/theme.d.ts +0 -20
  818. package/dist/types/core/components/ui/theme/theme.d.ts.map +0 -1
  819. package/dist/types/core/components/ui/toast/message-subscriber.d.ts +0 -19
  820. package/dist/types/core/components/ui/toast/message-subscriber.d.ts.map +0 -1
  821. package/dist/types/core/components/ui/toast/toast-item.d.ts +0 -41
  822. package/dist/types/core/components/ui/toast/toast-item.d.ts.map +0 -1
  823. package/dist/types/core/components/ui/toast/toast.d.ts +0 -28
  824. package/dist/types/core/components/ui/toast/toast.d.ts.map +0 -1
  825. package/dist/types/core/components/ui/toast/types.d.ts +0 -12
  826. package/dist/types/core/components/ui/toast/types.d.ts.map +0 -1
  827. package/dist/types/core/components/ui/tooltip/tooltip.d.ts +0 -21
  828. package/dist/types/core/components/ui/tooltip/tooltip.d.ts.map +0 -1
  829. package/dist/types/core/components/ui/ui.d.ts +0 -35
  830. package/dist/types/core/components/ui/ui.d.ts.map +0 -1
  831. package/dist/types/core/core.d.ts +0 -5
  832. package/dist/types/core/core.d.ts.map +0 -1
  833. package/dist/types/core/decorators/Subscriber.d.ts +0 -13
  834. package/dist/types/core/decorators/Subscriber.d.ts.map +0 -1
  835. package/dist/types/core/decorators/api.d.ts +0 -155
  836. package/dist/types/core/decorators/api.d.ts.map +0 -1
  837. package/dist/types/core/decorators/lifecycle.d.ts +0 -19
  838. package/dist/types/core/decorators/lifecycle.d.ts.map +0 -1
  839. package/dist/types/core/decorators/subscriber/ancestorAttribute.d.ts +0 -11
  840. package/dist/types/core/decorators/subscriber/ancestorAttribute.d.ts.map +0 -1
  841. package/dist/types/core/decorators/subscriber/autoFill.d.ts +0 -2
  842. package/dist/types/core/decorators/subscriber/autoFill.d.ts.map +0 -1
  843. package/dist/types/core/decorators/subscriber/autoSubscribe.d.ts +0 -2
  844. package/dist/types/core/decorators/subscriber/autoSubscribe.d.ts.map +0 -1
  845. package/dist/types/core/decorators/subscriber/bind.d.ts +0 -28
  846. package/dist/types/core/decorators/subscriber/bind.d.ts.map +0 -1
  847. package/dist/types/core/decorators/subscriber/common.d.ts +0 -14
  848. package/dist/types/core/decorators/subscriber/common.d.ts.map +0 -1
  849. package/dist/types/core/decorators/subscriber/derive.d.ts +0 -30
  850. package/dist/types/core/decorators/subscriber/derive.d.ts.map +0 -1
  851. package/dist/types/core/decorators/subscriber/dynamicPath.d.ts +0 -23
  852. package/dist/types/core/decorators/subscriber/dynamicPath.d.ts.map +0 -1
  853. package/dist/types/core/decorators/subscriber/dynamicPropertyWatch.d.ts +0 -42
  854. package/dist/types/core/decorators/subscriber/dynamicPropertyWatch.d.ts.map +0 -1
  855. package/dist/types/core/decorators/subscriber/handle.d.ts +0 -74
  856. package/dist/types/core/decorators/subscriber/handle.d.ts.map +0 -1
  857. package/dist/types/core/decorators/subscriber/onAssign.d.ts +0 -53
  858. package/dist/types/core/decorators/subscriber/onAssign.d.ts.map +0 -1
  859. package/dist/types/core/decorators/subscriber/publish.d.ts +0 -23
  860. package/dist/types/core/decorators/subscriber/publish.d.ts.map +0 -1
  861. package/dist/types/core/decorators/subscriber/publisherPath.d.ts +0 -3
  862. package/dist/types/core/decorators/subscriber/publisherPath.d.ts.map +0 -1
  863. package/dist/types/core/decorators/subscriber/subscribe.d.ts +0 -20
  864. package/dist/types/core/decorators/subscriber/subscribe.d.ts.map +0 -1
  865. package/dist/types/core/directives/DataProvider.d.ts +0 -45
  866. package/dist/types/core/directives/DataProvider.d.ts.map +0 -1
  867. package/dist/types/core/directives/Wording.d.ts +0 -44
  868. package/dist/types/core/directives/Wording.d.ts.map +0 -1
  869. package/dist/types/core/mixins/Fetcher.d.ts +0 -108
  870. package/dist/types/core/mixins/Fetcher.d.ts.map +0 -1
  871. package/dist/types/core/mixins/FormCheckable.d.ts +0 -95
  872. package/dist/types/core/mixins/FormCheckable.d.ts.map +0 -1
  873. package/dist/types/core/mixins/FormElement.d.ts +0 -37
  874. package/dist/types/core/mixins/FormElement.d.ts.map +0 -1
  875. package/dist/types/core/mixins/FormInput.d.ts +0 -79
  876. package/dist/types/core/mixins/FormInput.d.ts.map +0 -1
  877. package/dist/types/core/mixins/Subscriber.d.ts +0 -38
  878. package/dist/types/core/mixins/Subscriber.d.ts.map +0 -1
  879. package/dist/types/core/mixins/TemplatesContainer.d.ts +0 -14
  880. package/dist/types/core/mixins/TemplatesContainer.d.ts.map +0 -1
  881. package/dist/types/core/mixins/mixins.d.ts +0 -7
  882. package/dist/types/core/mixins/mixins.d.ts.map +0 -1
  883. package/dist/types/core/utils/AncestorAttributeObserver.d.ts +0 -38
  884. package/dist/types/core/utils/AncestorAttributeObserver.d.ts.map +0 -1
  885. package/dist/types/core/utils/Arrays.d.ts +0 -98
  886. package/dist/types/core/utils/Arrays.d.ts.map +0 -1
  887. package/dist/types/core/utils/DataBindObserver.d.ts +0 -84
  888. package/dist/types/core/utils/DataBindObserver.d.ts.map +0 -1
  889. package/dist/types/core/utils/Electron.d.ts +0 -8
  890. package/dist/types/core/utils/Electron.d.ts.map +0 -1
  891. package/dist/types/core/utils/Format.d.ts +0 -13
  892. package/dist/types/core/utils/Format.d.ts.map +0 -1
  893. package/dist/types/core/utils/HTML.d.ts +0 -59
  894. package/dist/types/core/utils/HTML.d.ts.map +0 -1
  895. package/dist/types/core/utils/LocationHandler.d.ts +0 -48
  896. package/dist/types/core/utils/LocationHandler.d.ts.map +0 -1
  897. package/dist/types/core/utils/Objects.d.ts +0 -31
  898. package/dist/types/core/utils/Objects.d.ts.map +0 -1
  899. package/dist/types/core/utils/PublisherProxy.d.ts +0 -230
  900. package/dist/types/core/utils/PublisherProxy.d.ts.map +0 -1
  901. package/dist/types/core/utils/SafariScrollGuard.d.ts +0 -36
  902. package/dist/types/core/utils/SafariScrollGuard.d.ts.map +0 -1
  903. package/dist/types/core/utils/Utils.d.ts +0 -6
  904. package/dist/types/core/utils/Utils.d.ts.map +0 -1
  905. package/dist/types/core/utils/aesCrypto.d.ts +0 -53
  906. package/dist/types/core/utils/aesCrypto.d.ts.map +0 -1
  907. package/dist/types/core/utils/api.d.ts +0 -173
  908. package/dist/types/core/utils/api.d.ts.map +0 -1
  909. package/dist/types/core/utils/dataProviderKey.d.ts +0 -56
  910. package/dist/types/core/utils/dataProviderKey.d.ts.map +0 -1
  911. package/dist/types/core/utils/derive.d.ts +0 -40
  912. package/dist/types/core/utils/derive.d.ts.map +0 -1
  913. package/dist/types/core/utils/endpoint.d.ts +0 -37
  914. package/dist/types/core/utils/endpoint.d.ts.map +0 -1
  915. package/dist/types/core/utils/jsonataHelpers.d.ts +0 -15
  916. package/dist/types/core/utils/jsonataHelpers.d.ts.map +0 -1
  917. package/dist/types/core/utils/jsonataRuntime.d.ts +0 -13
  918. package/dist/types/core/utils/jsonataRuntime.d.ts.map +0 -1
  919. package/dist/types/core/utils/mediaRef.d.ts +0 -68
  920. package/dist/types/core/utils/mediaRef.d.ts.map +0 -1
  921. package/dist/types/core/utils/route.d.ts +0 -41
  922. package/dist/types/core/utils/route.d.ts.map +0 -1
  923. package/dist/types/core/utils/similarity.d.ts +0 -15
  924. package/dist/types/core/utils/similarity.d.ts.map +0 -1
  925. package/dist/types/core/utils/url-pattern.d.ts +0 -3
  926. package/dist/types/core/utils/url-pattern.d.ts.map +0 -1
  927. package/dist/types/dataprovider.d.ts +0 -2
  928. package/dist/types/dataprovider.d.ts.map +0 -1
  929. package/dist/types/decorators.d.ts +0 -30
  930. package/dist/types/decorators.d.ts.map +0 -1
  931. package/dist/types/directives.d.ts +0 -21
  932. package/dist/types/directives.d.ts.map +0 -1
  933. package/dist/types/index.d.ts +0 -8
  934. package/dist/types/index.d.ts.map +0 -1
  935. package/dist/types/mixins.d.ts +0 -204
  936. package/dist/types/mixins.d.ts.map +0 -1
  937. package/dist/types/test-utils/TestUtils.d.ts +0 -4
  938. package/dist/types/test-utils/TestUtils.d.ts.map +0 -1
  939. package/dist/types/utils.d.ts +0 -20
  940. package/dist/types/utils.d.ts.map +0 -1
  941. package/public/docs/hf-samples/beach.jpg +0 -0
  942. package/public/docs/hf-samples/cats.jpg +0 -0
  943. package/public/docs/hf-samples/corgi.jpg +0 -0
  944. package/public/docs/hf-samples/portrait.jpg +0 -0
  945. package/public/docs/hf-samples/scene.jpg +0 -0
  946. package/public/docs/hf-samples/singer.jpg +0 -0
  947. package/public/docs/shader-samples/color.jpg +0 -0
  948. package/public/docs/shader-samples/depth.png +0 -0
  949. package/public/docs/shader-samples/impact.jpg +0 -0
  950. package/public/docs/shader-samples/video.webm +0 -0
  951. package/scripts/build-addons.mjs +0 -26
  952. package/scripts/gen-shader-depth.mjs +0 -85
  953. package/scripts/gen-shader-harris-video.mjs +0 -17
  954. package/scripts/gen-shader-harris-video.py +0 -84
  955. package/scripts/hf-vendor.mjs +0 -154
  956. package/src/addons/3d.ts +0 -5
  957. package/src/addons/hugging-face-infer.ts +0 -11
  958. package/src/addons/shader.ts +0 -5
  959. package/src/addons/webgpu.ts +0 -15
  960. package/src/core/components/functional/3d/3d.md +0 -161
  961. package/src/core/components/functional/3d/3d.spec.ts +0 -213
  962. package/src/core/components/functional/3d/3d.ts +0 -284
  963. package/src/core/components/functional/3d/asset.ts +0 -22
  964. package/src/core/components/functional/3d/boot.ts +0 -77
  965. package/src/core/components/functional/3d/constants.ts +0 -101
  966. package/src/core/components/functional/3d/demo-content.ts +0 -45
  967. package/src/core/components/functional/3d/ensure.ts +0 -107
  968. package/src/core/components/functional/3d/form-bind.ts +0 -40
  969. package/src/core/components/functional/3d/form-fields.ts +0 -80
  970. package/src/core/components/functional/3d/form-params.ts +0 -99
  971. package/src/core/components/functional/3d/frame-capture.spec.ts +0 -72
  972. package/src/core/components/functional/3d/frame-capture.ts +0 -135
  973. package/src/core/components/functional/3d/frame-source.ts +0 -30
  974. package/src/core/components/functional/3d/gl.ts +0 -35
  975. package/src/core/components/functional/3d/life.ts +0 -104
  976. package/src/core/components/functional/3d/load.ts +0 -129
  977. package/src/core/components/functional/3d/ops.ts +0 -126
  978. package/src/core/components/functional/3d/opts.ts +0 -16
  979. package/src/core/components/functional/3d/orbit.ts +0 -185
  980. package/src/core/components/functional/3d/out-publish.ts +0 -141
  981. package/src/core/components/functional/3d/parse.ts +0 -95
  982. package/src/core/components/functional/3d/pick.ts +0 -92
  983. package/src/core/components/functional/3d/playback.ts +0 -82
  984. package/src/core/components/functional/3d/pointer.ts +0 -79
  985. package/src/core/components/functional/3d/post-bind.ts +0 -262
  986. package/src/core/components/functional/3d/post-channels.spec.ts +0 -36
  987. package/src/core/components/functional/3d/post-channels.ts +0 -69
  988. package/src/core/components/functional/3d/post-fx.ts +0 -594
  989. package/src/core/components/functional/3d/props.ts +0 -95
  990. package/src/core/components/functional/3d/publisher-listen.ts +0 -13
  991. package/src/core/components/functional/3d/reload.ts +0 -96
  992. package/src/core/components/functional/3d/runtime.ts +0 -237
  993. package/src/core/components/functional/3d/scene-runtime.ts +0 -12
  994. package/src/core/components/functional/3d/snapshot.ts +0 -73
  995. package/src/core/components/functional/3d/styles.ts +0 -38
  996. package/src/core/components/functional/3d/tune.ts +0 -93
  997. package/src/core/components/functional/3d/types.ts +0 -159
  998. package/src/core/components/functional/3d/updated.ts +0 -86
  999. package/src/core/components/functional/3d/view.ts +0 -63
  1000. package/src/core/components/functional/3d/wire.ts +0 -65
  1001. package/src/core/components/functional/infer/hugging-face/hf-cache.ts +0 -198
  1002. package/src/core/components/functional/infer/hugging-face/hf-config.ts +0 -188
  1003. package/src/core/components/functional/infer/hugging-face/hf-controller.spec.ts +0 -350
  1004. package/src/core/components/functional/infer/hugging-face/hf-controller.ts +0 -622
  1005. package/src/core/components/functional/infer/hugging-face/hf-engine.ts +0 -178
  1006. package/src/core/components/functional/infer/hugging-face/hf-input.spec.ts +0 -99
  1007. package/src/core/components/functional/infer/hugging-face/hf-input.ts +0 -218
  1008. package/src/core/components/functional/infer/hugging-face/hf-protocol.ts +0 -76
  1009. package/src/core/components/functional/infer/hugging-face/hf-registry.ts +0 -457
  1010. package/src/core/components/functional/infer/hugging-face/hf-schema.spec.ts +0 -124
  1011. package/src/core/components/functional/infer/hugging-face/hf-schema.ts +0 -390
  1012. package/src/core/components/functional/infer/hugging-face/hf-worker-runtime.spec.ts +0 -147
  1013. package/src/core/components/functional/infer/hugging-face/hf-worker-runtime.ts +0 -381
  1014. package/src/core/components/functional/infer/hugging-face/hugging-face-infer.md +0 -304
  1015. package/src/core/components/functional/infer/hugging-face/hugging-face-infer.ts +0 -202
  1016. package/src/core/components/functional/infer/hugging-face/hugging-face.ts +0 -282
  1017. package/src/core/components/functional/infer/hugging-face/types.ts +0 -325
  1018. package/src/core/components/functional/shader/gl-runtime.ts +0 -1120
  1019. package/src/core/components/functional/shader/shader.md +0 -232
  1020. package/src/core/components/functional/shader/shader.spec.ts +0 -635
  1021. package/src/core/components/functional/shader/shader.ts +0 -1746
  1022. package/src/core/components/functional/shader/shadertoy-prelude.ts +0 -96
  1023. package/src/core/components/functional/shader/types.ts +0 -525
  1024. package/src/core/components/functional/webgpu/canvas2d-fallback.ts +0 -125
  1025. package/src/core/components/functional/webgpu/form-bind.ts +0 -116
  1026. package/src/core/components/functional/webgpu/gl-fallback.ts +0 -182
  1027. package/src/core/components/functional/webgpu/gpu-runtime.ts +0 -485
  1028. package/src/core/components/functional/webgpu/helpers.ts +0 -53
  1029. package/src/core/components/functional/webgpu/out-frame.ts +0 -137
  1030. package/src/core/components/functional/webgpu/particles-runtime.ts +0 -426
  1031. package/src/core/components/functional/webgpu/pointer.ts +0 -85
  1032. package/src/core/components/functional/webgpu/types.ts +0 -96
  1033. package/src/core/components/functional/webgpu/webgpu.md +0 -86
  1034. package/src/core/components/functional/webgpu/webgpu.spec.ts +0 -178
  1035. package/src/core/components/functional/webgpu/webgpu.ts +0 -706
  1036. package/src/core/components/functional/webgpu/wgsl-prelude.ts +0 -81
  1037. package/src/core/utils/mediaRef.spec.ts +0 -146
  1038. package/src/core/utils/mediaRef.ts +0 -238
  1039. package/src/core/utils/similarity.spec.ts +0 -34
  1040. package/src/core/utils/similarity.ts +0 -54
  1041. package/src/docs/_getting-started/cdn-addons.md +0 -73
  1042. package/src/docs/_misc/visual-stack.md +0 -83
  1043. package/src/docs/example/docs-3d-demos.ts +0 -8
  1044. package/src/docs/example/docs-3d-form.ts +0 -95
  1045. package/src/docs/example/docs-3d-orbit.ts +0 -44
  1046. package/src/docs/example/docs-3d-out.ts +0 -56
  1047. package/src/docs/example/docs-3d-post-depth-demo.ts +0 -68
  1048. package/src/docs/example/docs-3d-shader-live-demo.ts +0 -98
  1049. package/src/docs/example/docs-3d-shared.ts +0 -15
  1050. package/src/docs/example/docs-3d-webgpu-live-demo.ts +0 -83
  1051. package/src/docs/example/docs-harris-webgpu-demo.ts +0 -480
  1052. package/src/docs/example/docs-hugging-face-demos.ts +0 -516
  1053. package/src/docs/example/docs-shader-demos.ts +0 -357
  1054. package/src/docs/example/docs-visual-stack-demo.ts +0 -394
  1055. package/src/docs/example/docs-webgpu-demo.ts +0 -77
@@ -1,1120 +0,0 @@
1
- import {
2
- isFrameSource,
3
- type SonicFrameSource,
4
- } from "@supersoniks/concorde/core/utils/mediaRef";
5
- import { buildFragmentSource, FULLSCREEN_VERTEX } from "./shadertoy-prelude";
6
- import {
7
- ChannelSource,
8
- PassChannels,
9
- ReadRectResult,
10
- ShaderBufferFormat,
11
- ShaderCompileError,
12
- ShaderPassId,
13
- ShaderSources,
14
- parseBufferFormat,
15
- } from "./types";
16
-
17
- const PASS_ORDER: ShaderPassId[] = [
18
- "bufferA",
19
- "bufferB",
20
- "bufferC",
21
- "bufferD",
22
- "image",
23
- ];
24
-
25
- const BUFFER_PASSES: Exclude<ShaderPassId, "image">[] = [
26
- "bufferA",
27
- "bufferB",
28
- "bufferC",
29
- "bufferD",
30
- ];
31
-
32
- type GLProgram = {
33
- program: WebGLProgram;
34
- uniforms: UniformLocs;
35
- };
36
-
37
- type UniformLocs = {
38
- iResolution: WebGLUniformLocation | null;
39
- iTime: WebGLUniformLocation | null;
40
- iTimeDelta: WebGLUniformLocation | null;
41
- iFrameRate: WebGLUniformLocation | null;
42
- iFrame: WebGLUniformLocation | null;
43
- iMouse: WebGLUniformLocation | null;
44
- iDate: WebGLUniformLocation | null;
45
- iSampleRate: WebGLUniformLocation | null;
46
- iChannelTime: WebGLUniformLocation | null;
47
- iChannelResolution: WebGLUniformLocation | null;
48
- iChannel: (WebGLUniformLocation | null)[];
49
- uParam: (WebGLUniformLocation | null)[];
50
- };
51
-
52
- type PingPong = {
53
- textures: [WebGLTexture, WebGLTexture];
54
- framebuffers: [WebGLFramebuffer, WebGLFramebuffer];
55
- index: number;
56
- };
57
-
58
- type ExternalTexture = {
59
- texture: WebGLTexture;
60
- width: number;
61
- height: number;
62
- url: string;
63
- video?: HTMLVideoElement;
64
- /** Source live (`#élément`) — image / vidéo / canvas / SonicFrameSource. */
65
- source?: TexImageSource | SonicFrameSource | null;
66
- lastSeq: number;
67
- lastSrc?: string;
68
- };
69
-
70
- export type FrameUniforms = {
71
- time: number;
72
- timeDelta: number;
73
- frame: number;
74
- mouse: [number, number, number, number];
75
- params: [number, number, number, number];
76
- };
77
-
78
- /**
79
- * Décide si un slot élément doit être re-uploadé cette frame.
80
- * Exporté pour les tests unitaires (stratégie par type).
81
- */
82
- export function shouldUploadElementFrame(
83
- source: unknown,
84
- lastSeq: number,
85
- lastSrc?: string,
86
- ): { upload: boolean; texSource: TexImageSource | null; nextSrc?: string } {
87
- if (!source) return { upload: false, texSource: null };
88
- if (
89
- typeof HTMLImageElement !== "undefined" &&
90
- source instanceof HTMLImageElement
91
- ) {
92
- const src = source.currentSrc || source.src || "";
93
- if (!src || !source.complete || source.naturalWidth < 1) {
94
- return { upload: false, texSource: null };
95
- }
96
- if (lastSrc === src && lastSeq > 0) {
97
- return { upload: false, texSource: null, nextSrc: src };
98
- }
99
- return { upload: true, texSource: source, nextSrc: src };
100
- }
101
- if (
102
- typeof HTMLVideoElement !== "undefined" &&
103
- source instanceof HTMLVideoElement
104
- ) {
105
- if (source.readyState < 2 || source.videoWidth < 1) {
106
- return { upload: false, texSource: null };
107
- }
108
- return { upload: true, texSource: source };
109
- }
110
- if (
111
- typeof HTMLCanvasElement !== "undefined" &&
112
- source instanceof HTMLCanvasElement
113
- ) {
114
- if (source.width < 1 || source.height < 1) {
115
- return { upload: false, texSource: null };
116
- }
117
- return { upload: true, texSource: source };
118
- }
119
- if (isFrameSource(source)) {
120
- if (source.frameSeq === lastSeq) {
121
- return { upload: false, texSource: null };
122
- }
123
- const canvas = source.getFrameCanvas();
124
- if (!canvas || canvas.width < 1 || canvas.height < 1) {
125
- return { upload: false, texSource: null };
126
- }
127
- return { upload: true, texSource: canvas };
128
- }
129
- return { upload: false, texSource: null };
130
- }
131
-
132
- function isVideoUrl(url: string): boolean {
133
- return /\.(webm|mp4|ogg|mov)(\?|#|$)/i.test(url);
134
- }
135
-
136
- function texImageSourceSize(
137
- src: TexImageSource,
138
- ): { width: number; height: number } {
139
- if (
140
- typeof HTMLVideoElement !== "undefined" &&
141
- src instanceof HTMLVideoElement
142
- ) {
143
- return { width: src.videoWidth || 1, height: src.videoHeight || 1 };
144
- }
145
- if (
146
- typeof HTMLImageElement !== "undefined" &&
147
- src instanceof HTMLImageElement
148
- ) {
149
- return {
150
- width: src.naturalWidth || src.width || 1,
151
- height: src.naturalHeight || src.height || 1,
152
- };
153
- }
154
- if ("width" in src && "height" in src) {
155
- return {
156
- width: Math.max(1, Number(src.width) || 1),
157
- height: Math.max(1, Number(src.height) || 1),
158
- };
159
- }
160
- return { width: 1, height: 1 };
161
- }
162
-
163
- function compileShader(
164
- gl: WebGL2RenderingContext,
165
- type: number,
166
- source: string,
167
- pass: ShaderPassId | "vertex",
168
- ): WebGLShader {
169
- const shader = gl.createShader(type);
170
- if (!shader) {
171
- throw new ShaderCompileError("Unable to create shader", pass, "");
172
- }
173
- gl.shaderSource(shader, source);
174
- gl.compileShader(shader);
175
- if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {
176
- const infoLog = gl.getShaderInfoLog(shader) || "";
177
- gl.deleteShader(shader);
178
- throw new ShaderCompileError(
179
- `Compile error (${pass}): ${infoLog}`,
180
- pass,
181
- infoLog,
182
- );
183
- }
184
- return shader;
185
- }
186
-
187
- function linkProgram(
188
- gl: WebGL2RenderingContext,
189
- vs: WebGLShader,
190
- fs: WebGLShader,
191
- pass: ShaderPassId,
192
- ): WebGLProgram {
193
- const program = gl.createProgram();
194
- if (!program) {
195
- throw new ShaderCompileError("Unable to create program", "link", "");
196
- }
197
- gl.attachShader(program, vs);
198
- gl.attachShader(program, fs);
199
- gl.linkProgram(program);
200
- if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {
201
- const infoLog = gl.getProgramInfoLog(program) || "";
202
- gl.deleteProgram(program);
203
- throw new ShaderCompileError(
204
- `Link error (${pass}): ${infoLog}`,
205
- "link",
206
- infoLog,
207
- );
208
- }
209
- return program;
210
- }
211
-
212
- function getUniforms(
213
- gl: WebGL2RenderingContext,
214
- program: WebGLProgram,
215
- ): UniformLocs {
216
- return {
217
- iResolution: gl.getUniformLocation(program, "iResolution"),
218
- iTime: gl.getUniformLocation(program, "iTime"),
219
- iTimeDelta: gl.getUniformLocation(program, "iTimeDelta"),
220
- iFrameRate: gl.getUniformLocation(program, "iFrameRate"),
221
- iFrame: gl.getUniformLocation(program, "iFrame"),
222
- iMouse: gl.getUniformLocation(program, "iMouse"),
223
- iDate: gl.getUniformLocation(program, "iDate"),
224
- iSampleRate: gl.getUniformLocation(program, "iSampleRate"),
225
- iChannelTime:
226
- gl.getUniformLocation(program, "iChannelTime[0]") ||
227
- gl.getUniformLocation(program, "iChannelTime"),
228
- iChannelResolution:
229
- gl.getUniformLocation(program, "iChannelResolution[0]") ||
230
- gl.getUniformLocation(program, "iChannelResolution"),
231
- iChannel: [0, 1, 2, 3].map((i) =>
232
- gl.getUniformLocation(program, `iChannel${i}`),
233
- ),
234
- uParam: [0, 1, 2, 3].map((i) =>
235
- gl.getUniformLocation(program, `uParam${i}`),
236
- ),
237
- };
238
- }
239
-
240
- type BufferGlFormat = {
241
- requested: ShaderBufferFormat;
242
- active: ShaderBufferFormat;
243
- internal: number;
244
- format: number;
245
- type: number;
246
- filter: number;
247
- float: boolean;
248
- };
249
-
250
- let warnedFloatFallback = false;
251
-
252
- /**
253
- * Résout le format GPU des buffers A–D.
254
- * Exporté pour tests (mock `getExtension`).
255
- */
256
- export function resolveBufferGlFormat(
257
- gl: WebGL2RenderingContext,
258
- requested: ShaderBufferFormat,
259
- ): BufferGlFormat {
260
- const want = parseBufferFormat(requested);
261
- if (want === "rgba8") {
262
- return {
263
- requested: want,
264
- active: "rgba8",
265
- internal: gl.RGBA8,
266
- format: gl.RGBA,
267
- type: gl.UNSIGNED_BYTE,
268
- filter: gl.LINEAR,
269
- float: false,
270
- };
271
- }
272
- const ext = gl.getExtension("EXT_color_buffer_float");
273
- if (!ext) {
274
- if (!warnedFloatFallback) {
275
- warnedFloatFallback = true;
276
- console.warn(
277
- `[sonic-shader] buffer-format="${want}" indisponible (pas d'EXT_color_buffer_float) → rgba8`,
278
- );
279
- }
280
- return resolveBufferGlFormat(gl, "rgba8");
281
- }
282
- if (want === "rgba16f") {
283
- return {
284
- requested: want,
285
- active: "rgba16f",
286
- internal: gl.RGBA16F,
287
- format: gl.RGBA,
288
- type: gl.HALF_FLOAT,
289
- filter: gl.LINEAR,
290
- float: true,
291
- };
292
- }
293
- // rgba32f
294
- const linearOk = !!gl.getExtension("OES_texture_float_linear");
295
- return {
296
- requested: want,
297
- active: "rgba32f",
298
- internal: gl.RGBA32F,
299
- format: gl.RGBA,
300
- type: gl.FLOAT,
301
- filter: linearOk ? gl.LINEAR : gl.NEAREST,
302
- float: true,
303
- };
304
- }
305
-
306
- /** Reset du warn unique (tests). */
307
- export function resetBufferFormatWarnFlag() {
308
- warnedFloatFallback = false;
309
- }
310
-
311
- function createEmptyTexture(
312
- gl: WebGL2RenderingContext,
313
- width: number,
314
- height: number,
315
- fmt?: BufferGlFormat,
316
- ): WebGLTexture {
317
- const f =
318
- fmt ??
319
- ({
320
- requested: "rgba8",
321
- active: "rgba8",
322
- internal: gl.RGBA8,
323
- format: gl.RGBA,
324
- type: gl.UNSIGNED_BYTE,
325
- filter: gl.LINEAR,
326
- float: false,
327
- } satisfies BufferGlFormat);
328
- const tex = gl.createTexture();
329
- if (!tex) throw new Error("Unable to create texture");
330
- gl.bindTexture(gl.TEXTURE_2D, tex);
331
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, f.filter);
332
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, f.filter);
333
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
334
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
335
- gl.texImage2D(
336
- gl.TEXTURE_2D,
337
- 0,
338
- f.internal,
339
- width,
340
- height,
341
- 0,
342
- f.format,
343
- f.type,
344
- null,
345
- );
346
- return tex;
347
- }
348
-
349
- function createFramebuffer(
350
- gl: WebGL2RenderingContext,
351
- texture: WebGLTexture,
352
- ): WebGLFramebuffer {
353
- const fb = gl.createFramebuffer();
354
- if (!fb) throw new Error("Unable to create framebuffer");
355
- gl.bindFramebuffer(gl.FRAMEBUFFER, fb);
356
- gl.framebufferTexture2D(
357
- gl.FRAMEBUFFER,
358
- gl.COLOR_ATTACHMENT0,
359
- gl.TEXTURE_2D,
360
- texture,
361
- 0,
362
- );
363
- const status = gl.checkFramebufferStatus(gl.FRAMEBUFFER);
364
- if (status !== gl.FRAMEBUFFER_COMPLETE) {
365
- throw new Error(`Incomplete framebuffer: ${status}`);
366
- }
367
- gl.bindFramebuffer(gl.FRAMEBUFFER, null);
368
- return fb;
369
- }
370
-
371
- function createPingPong(
372
- gl: WebGL2RenderingContext,
373
- width: number,
374
- height: number,
375
- fmt: BufferGlFormat,
376
- ): PingPong {
377
- const textures: [WebGLTexture, WebGLTexture] = [
378
- createEmptyTexture(gl, width, height, fmt),
379
- createEmptyTexture(gl, width, height, fmt),
380
- ];
381
- const framebuffers: [WebGLFramebuffer, WebGLFramebuffer] = [
382
- createFramebuffer(gl, textures[0]),
383
- createFramebuffer(gl, textures[1]),
384
- ];
385
- return { textures, framebuffers, index: 0 };
386
- }
387
-
388
- function destroyPingPong(gl: WebGL2RenderingContext, pp: PingPong) {
389
- for (const t of pp.textures) gl.deleteTexture(t);
390
- for (const f of pp.framebuffers) gl.deleteFramebuffer(f);
391
- }
392
-
393
- export function parseChannelSource(
394
- value: string | undefined | null,
395
- fallbackUrl: string,
396
- ): ChannelSource {
397
- const v = (value ?? "").trim();
398
- if (!v) {
399
- const fb = (fallbackUrl ?? "").trim();
400
- if (fb.startsWith("#")) return { kind: "element", key: fb };
401
- return fb ? { kind: "url", url: fb } : { kind: "none" };
402
- }
403
- if (v.startsWith("#")) {
404
- return { kind: "element", key: v };
405
- }
406
- const lower = v.toLowerCase();
407
- if (lower === "self") return { kind: "self" };
408
- if (lower === "buffer-a" || lower === "buffera" || lower === "a") {
409
- return { kind: "buffer", buffer: "bufferA" };
410
- }
411
- if (lower === "buffer-b" || lower === "bufferb" || lower === "b") {
412
- return { kind: "buffer", buffer: "bufferB" };
413
- }
414
- if (lower === "buffer-c" || lower === "bufferc" || lower === "c") {
415
- return { kind: "buffer", buffer: "bufferC" };
416
- }
417
- if (lower === "buffer-d" || lower === "bufferd" || lower === "d") {
418
- return { kind: "buffer", buffer: "bufferD" };
419
- }
420
- if (lower === "none" || lower === "null") return { kind: "none" };
421
- return { kind: "url", url: v };
422
- }
423
-
424
- export class ShaderToyRuntime {
425
- private gl: WebGL2RenderingContext;
426
- private canvas: HTMLCanvasElement;
427
- private vao: WebGLVertexArrayObject | null = null;
428
- private vertexShader: WebGLShader | null = null;
429
- private programs = new Map<ShaderPassId, GLProgram>();
430
- private buffers = new Map<Exclude<ShaderPassId, "image">, PingPong>();
431
- private external = new Map<string, ExternalTexture>();
432
- private width = 0;
433
- private height = 0;
434
- private passChannels = new Map<ShaderPassId, PassChannels>();
435
- private activePasses: ShaderPassId[] = [];
436
- private blackTexture: WebGLTexture | null = null;
437
- private elementResolver: ((key: string) => Element | null) | null = null;
438
- private bufferFmt: BufferGlFormat;
439
-
440
- constructor(canvas: HTMLCanvasElement) {
441
- const gl = canvas.getContext("webgl2", {
442
- antialias: false,
443
- alpha: true,
444
- premultipliedAlpha: false,
445
- // true : readPixels (sample / extract) fiable après draw
446
- preserveDrawingBuffer: true,
447
- powerPreference: "default",
448
- });
449
- if (!gl || gl.isContextLost()) {
450
- throw new Error("WebGL2 not available");
451
- }
452
- this.canvas = canvas;
453
- this.gl = gl;
454
- this.bufferFmt = resolveBufferGlFormat(gl, "rgba8");
455
- this.initGeometry();
456
- this.blackTexture = createEmptyTexture(gl, 1, 1);
457
- gl.bindTexture(gl.TEXTURE_2D, this.blackTexture);
458
- gl.texImage2D(
459
- gl.TEXTURE_2D,
460
- 0,
461
- gl.RGBA8,
462
- 1,
463
- 1,
464
- 0,
465
- gl.RGBA,
466
- gl.UNSIGNED_BYTE,
467
- new Uint8Array([0, 0, 0, 255]),
468
- );
469
- }
470
-
471
- /** Format réellement utilisé pour les buffers A–D (après repli éventuel). */
472
- get activeBufferFormat(): ShaderBufferFormat {
473
- return this.bufferFmt.active;
474
- }
475
-
476
- /**
477
- * Change le format des buffers A–D. Recrée les FBO si la taille est déjà connue.
478
- * Retourne le format actif (peut différer si extension manquante).
479
- */
480
- setBufferFormat(requested: ShaderBufferFormat): ShaderBufferFormat {
481
- const next = resolveBufferGlFormat(this.gl, requested);
482
- if (
483
- next.active === this.bufferFmt.active &&
484
- next.filter === this.bufferFmt.filter
485
- ) {
486
- this.bufferFmt = next;
487
- return next.active;
488
- }
489
- this.bufferFmt = next;
490
- if (this.width >= 1 && this.height >= 1) {
491
- for (const id of BUFFER_PASSES) {
492
- const existing = this.buffers.get(id);
493
- if (existing) destroyPingPong(this.gl, existing);
494
- if (this.programs.has(id)) {
495
- this.buffers.set(
496
- id,
497
- createPingPong(this.gl, this.width, this.height, this.bufferFmt),
498
- );
499
- } else {
500
- this.buffers.delete(id);
501
- }
502
- }
503
- }
504
- return next.active;
505
- }
506
-
507
- /** True si le contexte a été perdu / déjà disposé. */
508
- get isLost(): boolean {
509
- return this.gl.isContextLost();
510
- }
511
-
512
- private initGeometry() {
513
- const gl = this.gl;
514
- const vao = gl.createVertexArray();
515
- if (!vao) throw new Error("Unable to create VAO");
516
- this.vao = vao;
517
- gl.bindVertexArray(vao);
518
- const buf = gl.createBuffer();
519
- gl.bindBuffer(gl.ARRAY_BUFFER, buf);
520
- // Fullscreen triangle
521
- gl.bufferData(
522
- gl.ARRAY_BUFFER,
523
- new Float32Array([-1, -1, 3, -1, -1, 3]),
524
- gl.STATIC_DRAW,
525
- );
526
- gl.enableVertexAttribArray(0);
527
- gl.vertexAttribPointer(0, 2, gl.FLOAT, false, 0, 0);
528
- gl.bindVertexArray(null);
529
- }
530
-
531
- resize(width: number, height: number) {
532
- const w = Math.max(1, Math.floor(width));
533
- const h = Math.max(1, Math.floor(height));
534
- if (w === this.width && h === this.height) return;
535
- this.width = w;
536
- this.height = h;
537
- this.canvas.width = w;
538
- this.canvas.height = h;
539
- for (const id of BUFFER_PASSES) {
540
- const existing = this.buffers.get(id);
541
- if (existing) destroyPingPong(this.gl, existing);
542
- if (this.programs.has(id)) {
543
- this.buffers.set(
544
- id,
545
- createPingPong(this.gl, w, h, this.bufferFmt),
546
- );
547
- }
548
- }
549
- }
550
-
551
- setSources(sources: ShaderSources, channels: Map<ShaderPassId, PassChannels>) {
552
- if (this.gl.isContextLost()) {
553
- throw new Error("WebGL context lost");
554
- }
555
- this.disposePrograms();
556
- this.passChannels = channels;
557
- this.activePasses = [];
558
- this.vertexShader = compileShader(
559
- this.gl,
560
- this.gl.VERTEX_SHADER,
561
- FULLSCREEN_VERTEX,
562
- "vertex",
563
- );
564
-
565
- for (const pass of PASS_ORDER) {
566
- const code =
567
- pass === "image"
568
- ? sources.image
569
- : sources[pass as keyof ShaderSources];
570
- if (!code?.trim()) continue;
571
- const fsSource = buildFragmentSource(sources.common || "", code);
572
- const fs = compileShader(
573
- this.gl,
574
- this.gl.FRAGMENT_SHADER,
575
- fsSource,
576
- pass,
577
- );
578
- const program = linkProgram(this.gl, this.vertexShader, fs, pass);
579
- this.gl.deleteShader(fs);
580
- this.programs.set(pass, {
581
- program,
582
- uniforms: getUniforms(this.gl, program),
583
- });
584
- this.activePasses.push(pass);
585
- if (pass !== "image" && this.width > 0) {
586
- const prev = this.buffers.get(pass);
587
- if (prev) destroyPingPong(this.gl, prev);
588
- this.buffers.set(
589
- pass,
590
- createPingPong(this.gl, this.width, this.height, this.bufferFmt),
591
- );
592
- }
593
- }
594
-
595
- if (!this.programs.has("image")) {
596
- throw new ShaderCompileError(
597
- "image pass is required",
598
- "image",
599
- "Missing image shader source",
600
- );
601
- }
602
- }
603
-
604
- /**
605
- * Met à jour les bindings de canaux sans recompiler les programmes.
606
- * Les URLs / clés `#élément` absentes des textures sont allouées à la demande
607
- * (via `ensureTextures` / `ensureElementTexture` côté composant).
608
- */
609
- setPassChannels(channels: Map<ShaderPassId, PassChannels>) {
610
- if (this.gl.isContextLost()) {
611
- throw new Error("WebGL context lost");
612
- }
613
- this.passChannels = channels;
614
- }
615
-
616
- async ensureTextures(urls: string[]) {
617
- const unique = [...new Set(urls.filter(Boolean))];
618
- await Promise.all(unique.map((url) => this.loadTexture(url)));
619
- }
620
-
621
- /** Alloue un slot texture vide pour un canal `#élément` (upload live ensuite). */
622
- ensureElementTexture(key: string) {
623
- if (this.external.has(key)) return;
624
- const gl = this.gl;
625
- const tex = gl.createTexture();
626
- if (!tex) return;
627
- gl.bindTexture(gl.TEXTURE_2D, tex);
628
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
629
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
630
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
631
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
632
- gl.texImage2D(
633
- gl.TEXTURE_2D,
634
- 0,
635
- gl.RGBA8,
636
- 1,
637
- 1,
638
- 0,
639
- gl.RGBA,
640
- gl.UNSIGNED_BYTE,
641
- new Uint8Array([0, 0, 0, 255]),
642
- );
643
- this.external.set(key, {
644
- texture: tex,
645
- width: 1,
646
- height: 1,
647
- url: key,
648
- lastSeq: 0,
649
- });
650
- }
651
-
652
- /**
653
- * Upload live des canaux élément / vidéo.
654
- * `resolveEl(key)` fournit l’Element (résolution `#id` côté host).
655
- */
656
- updateElementTextures(resolveEl?: (key: string) => Element | null) {
657
- const gl = this.gl;
658
- for (const [key, ext] of this.external) {
659
- let source: unknown = ext.video ?? ext.source ?? null;
660
- // Canaux #id : re-résoudre chaque frame (élément peut apparaître / partir).
661
- if (key.startsWith("#") && resolveEl) {
662
- source = resolveEl(key);
663
- ext.source = source as TexImageSource | SonicFrameSource | null;
664
- }
665
- if (
666
- typeof HTMLVideoElement !== "undefined" &&
667
- source instanceof HTMLVideoElement
668
- ) {
669
- ext.video = source;
670
- }
671
- const decision = shouldUploadElementFrame(
672
- source,
673
- ext.lastSeq,
674
- ext.lastSrc,
675
- );
676
- if (!decision.upload || !decision.texSource) continue;
677
- const size = texImageSourceSize(decision.texSource);
678
- gl.bindTexture(gl.TEXTURE_2D, ext.texture);
679
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1);
680
- if (ext.width === size.width && ext.height === size.height && ext.lastSeq > 0) {
681
- gl.texSubImage2D(
682
- gl.TEXTURE_2D,
683
- 0,
684
- 0,
685
- 0,
686
- gl.RGBA,
687
- gl.UNSIGNED_BYTE,
688
- decision.texSource,
689
- );
690
- } else {
691
- gl.texImage2D(
692
- gl.TEXTURE_2D,
693
- 0,
694
- gl.RGBA8,
695
- gl.RGBA,
696
- gl.UNSIGNED_BYTE,
697
- decision.texSource,
698
- );
699
- ext.width = size.width;
700
- ext.height = size.height;
701
- }
702
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 0);
703
- if (isFrameSource(source)) {
704
- ext.lastSeq = source.frameSeq;
705
- } else {
706
- ext.lastSeq = (ext.lastSeq || 0) + 1;
707
- }
708
- if (decision.nextSrc !== undefined) ext.lastSrc = decision.nextSrc;
709
- }
710
- }
711
-
712
- /** @deprecated alias — préférer `updateElementTextures`. */
713
- updateVideoTextures() {
714
- this.updateElementTextures();
715
- }
716
-
717
- setVideosPlaying(playing: boolean) {
718
- for (const ext of this.external.values()) {
719
- const video =
720
- ext.video ||
721
- (typeof HTMLVideoElement !== "undefined" &&
722
- ext.source instanceof HTMLVideoElement
723
- ? ext.source
724
- : null);
725
- if (!video) continue;
726
- if (playing) {
727
- void video.play().catch(() => {});
728
- } else {
729
- video.pause();
730
- }
731
- }
732
- }
733
-
734
- /** Size of a loaded external texture/video, if any. */
735
- getTextureSize(url: string): { width: number; height: number } | null {
736
- const ext = this.external.get(url);
737
- if (!ext || ext.width < 1 || ext.height < 1) return null;
738
- return { width: ext.width, height: ext.height };
739
- }
740
-
741
- private loadTexture(url: string): Promise<void> {
742
- const existing = this.external.get(url);
743
- if (existing) return Promise.resolve();
744
- if (isVideoUrl(url)) return this.loadVideoTexture(url);
745
- return new Promise((resolve, reject) => {
746
- const img = new Image();
747
- img.crossOrigin = "anonymous";
748
- img.onload = () => {
749
- const gl = this.gl;
750
- const tex = gl.createTexture();
751
- if (!tex) {
752
- reject(new Error("Unable to create texture"));
753
- return;
754
- }
755
- gl.bindTexture(gl.TEXTURE_2D, tex);
756
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1);
757
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
758
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
759
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
760
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
761
- gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA8, gl.RGBA, gl.UNSIGNED_BYTE, img);
762
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 0);
763
- this.external.set(url, {
764
- texture: tex,
765
- width: img.naturalWidth || img.width,
766
- height: img.naturalHeight || img.height,
767
- url,
768
- lastSeq: 0,
769
- });
770
- resolve();
771
- };
772
- img.onerror = () => reject(new Error(`Failed to load texture: ${url}`));
773
- img.src = url;
774
- });
775
- }
776
-
777
- private loadVideoTexture(url: string): Promise<void> {
778
- return new Promise((resolve, reject) => {
779
- const video = document.createElement("video");
780
- video.crossOrigin = "anonymous";
781
- video.muted = true;
782
- video.loop = true;
783
- video.playsInline = true;
784
- video.preload = "auto";
785
- let settled = false;
786
- const fail = () => {
787
- if (settled) return;
788
- settled = true;
789
- reject(new Error(`Failed to load video: ${url}`));
790
- };
791
- const ready = () => {
792
- if (settled) return;
793
- if (!video.videoWidth) return;
794
- settled = true;
795
- const gl = this.gl;
796
- const tex = gl.createTexture();
797
- if (!tex) {
798
- reject(new Error("Unable to create texture"));
799
- return;
800
- }
801
- gl.bindTexture(gl.TEXTURE_2D, tex);
802
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1);
803
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
804
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);
805
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
806
- gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
807
- gl.texImage2D(
808
- gl.TEXTURE_2D,
809
- 0,
810
- gl.RGBA8,
811
- gl.RGBA,
812
- gl.UNSIGNED_BYTE,
813
- video,
814
- );
815
- gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 0);
816
- this.external.set(url, {
817
- texture: tex,
818
- width: video.videoWidth,
819
- height: video.videoHeight,
820
- url,
821
- video,
822
- lastSeq: 0,
823
- });
824
- void video.play().catch(() => {});
825
- resolve();
826
- };
827
- video.addEventListener("loadeddata", ready);
828
- video.addEventListener("error", fail);
829
- video.src = url;
830
- video.load();
831
- });
832
- }
833
-
834
- private resolveChannel(
835
- pass: ShaderPassId,
836
- source: ChannelSource,
837
- ): { texture: WebGLTexture; width: number; height: number } {
838
- const black = {
839
- texture: this.blackTexture!,
840
- width: 1,
841
- height: 1,
842
- };
843
- if (source.kind === "none") return black;
844
- if (source.kind === "url" || source.kind === "element") {
845
- const key = source.kind === "url" ? source.url : source.key;
846
- const ext = this.external.get(key);
847
- return ext
848
- ? { texture: ext.texture, width: ext.width, height: ext.height }
849
- : black;
850
- }
851
- const bufferId =
852
- source.kind === "self"
853
- ? pass === "image"
854
- ? null
855
- : pass
856
- : source.buffer;
857
- if (!bufferId) return black;
858
- const pp = this.buffers.get(bufferId);
859
- if (!pp) return black;
860
- // pp.index is the last completed write. During a self-feedback pass it
861
- // still points at the previous frame until after drawArrays.
862
- return {
863
- texture: pp.textures[pp.index],
864
- width: this.width,
865
- height: this.height,
866
- };
867
- }
868
-
869
- private bindChannels(pass: ShaderPassId, uniforms: UniformLocs) {
870
- const gl = this.gl;
871
- const channels =
872
- this.passChannels.get(pass) ||
873
- ([
874
- { kind: "none" },
875
- { kind: "none" },
876
- { kind: "none" },
877
- { kind: "none" },
878
- ] as PassChannels);
879
- const resolutions: number[] = [];
880
- for (let i = 0; i < 4; i++) {
881
- const resolved = this.resolveChannel(pass, channels[i]);
882
- gl.activeTexture(gl.TEXTURE0 + i);
883
- gl.bindTexture(gl.TEXTURE_2D, resolved.texture);
884
- if (uniforms.iChannel[i]) {
885
- gl.uniform1i(uniforms.iChannel[i], i);
886
- }
887
- resolutions.push(resolved.width, resolved.height, 1);
888
- }
889
- if (uniforms.iChannelResolution) {
890
- gl.uniform3fv(uniforms.iChannelResolution, resolutions);
891
- }
892
- if (uniforms.iChannelTime) {
893
- gl.uniform1fv(uniforms.iChannelTime, [0, 0, 0, 0]);
894
- }
895
- }
896
-
897
- private setCommonUniforms(uniforms: UniformLocs, frame: FrameUniforms) {
898
- const gl = this.gl;
899
- const w = this.width;
900
- const h = this.height;
901
- if (uniforms.iResolution) gl.uniform3f(uniforms.iResolution, w, h, 1);
902
- if (uniforms.iTime) gl.uniform1f(uniforms.iTime, frame.time);
903
- if (uniforms.iTimeDelta) gl.uniform1f(uniforms.iTimeDelta, frame.timeDelta);
904
- if (uniforms.iFrameRate) {
905
- gl.uniform1f(
906
- uniforms.iFrameRate,
907
- frame.timeDelta > 0 ? 1 / frame.timeDelta : 60,
908
- );
909
- }
910
- if (uniforms.iFrame) gl.uniform1i(uniforms.iFrame, frame.frame);
911
- if (uniforms.iMouse) {
912
- gl.uniform4f(
913
- uniforms.iMouse,
914
- frame.mouse[0],
915
- frame.mouse[1],
916
- frame.mouse[2],
917
- frame.mouse[3],
918
- );
919
- }
920
- if (uniforms.iDate) {
921
- const d = new Date();
922
- gl.uniform4f(
923
- uniforms.iDate,
924
- d.getFullYear(),
925
- d.getMonth(),
926
- d.getDate(),
927
- d.getHours() * 3600 +
928
- d.getMinutes() * 60 +
929
- d.getSeconds() +
930
- d.getMilliseconds() * 0.001,
931
- );
932
- }
933
- if (uniforms.iSampleRate) gl.uniform1f(uniforms.iSampleRate, 44100);
934
- for (let i = 0; i < 4; i++) {
935
- if (uniforms.uParam[i]) {
936
- gl.uniform1f(uniforms.uParam[i], frame.params[i]);
937
- }
938
- }
939
- }
940
-
941
- /** Host fournit la résolution `#id` / live Element. */
942
- setElementResolver(fn: ((key: string) => Element | null) | null) {
943
- this.elementResolver = fn;
944
- }
945
-
946
- render(frame: FrameUniforms) {
947
- const gl = this.gl;
948
- if (!this.vao || this.width < 1 || this.height < 1) return;
949
- this.updateElementTextures(this.elementResolver ?? undefined);
950
- gl.bindVertexArray(this.vao);
951
- gl.viewport(0, 0, this.width, this.height);
952
- gl.disable(gl.DEPTH_TEST);
953
- gl.disable(gl.BLEND);
954
-
955
- for (const pass of this.activePasses) {
956
- if (pass === "image") continue;
957
- const gp = this.programs.get(pass);
958
- const pp = this.buffers.get(pass);
959
- if (!gp || !pp) continue;
960
- const writeIndex = 1 - pp.index;
961
- gl.bindFramebuffer(gl.FRAMEBUFFER, pp.framebuffers[writeIndex]);
962
- gl.viewport(0, 0, this.width, this.height);
963
- gl.useProgram(gp.program);
964
- this.setCommonUniforms(gp.uniforms, frame);
965
- this.bindChannels(pass, gp.uniforms);
966
- gl.drawArrays(gl.TRIANGLES, 0, 3);
967
- pp.index = writeIndex;
968
- }
969
-
970
- const image = this.programs.get("image");
971
- if (!image) return;
972
- gl.bindFramebuffer(gl.FRAMEBUFFER, null);
973
- gl.viewport(0, 0, this.width, this.height);
974
- gl.useProgram(image.program);
975
- this.setCommonUniforms(image.uniforms, frame);
976
- this.bindChannels("image", image.uniforms);
977
- gl.drawArrays(gl.TRIANGLES, 0, 3);
978
- gl.bindVertexArray(null);
979
- }
980
-
981
- /**
982
- * Lit un rectangle du framebuffer Image (origine bas-gauche, coords drawing buffer).
983
- * À appeler juste après `render`.
984
- */
985
- readRect(x: number, y: number, w: number, h: number): ReadRectResult | null {
986
- return this.readFramebufferRect(null, x, y, w, h);
987
- }
988
-
989
- /**
990
- * Lit un rectangle d’un buffer ping-pong (dernier write) ou de l’Image (`pass === "image"`).
991
- * Les buffers flottants renvoient un `Float32Array` ; Image / rgba8 → `Uint8Array`.
992
- */
993
- readBufferRect(
994
- pass: ShaderPassId,
995
- x: number,
996
- y: number,
997
- w: number,
998
- h: number,
999
- ): ReadRectResult | null {
1000
- if (pass === "image") return this.readRect(x, y, w, h);
1001
- const pp = this.buffers.get(pass);
1002
- if (!pp) return null;
1003
- return this.readFramebufferRect(
1004
- pp.framebuffers[pp.index],
1005
- x,
1006
- y,
1007
- w,
1008
- h,
1009
- this.bufferFmt.float,
1010
- );
1011
- }
1012
-
1013
- /**
1014
- * Lit 1 px du framebuffer Image (origine bas-gauche, coords drawing buffer).
1015
- * À appeler juste après `render`.
1016
- */
1017
- readPixel(x: number, y: number): [number, number, number, number] {
1018
- const rect = this.readRect(Math.floor(x), Math.floor(y), 1, 1);
1019
- if (!rect || rect.data.length < 4) return [0, 0, 0, 0];
1020
- return [rect.data[0], rect.data[1], rect.data[2], rect.data[3]];
1021
- }
1022
-
1023
- private readFramebufferRect(
1024
- framebuffer: WebGLFramebuffer | null,
1025
- x: number,
1026
- y: number,
1027
- w: number,
1028
- h: number,
1029
- asFloat = false,
1030
- ): ReadRectResult | null {
1031
- const gl = this.gl;
1032
- if (gl.isContextLost() || this.width < 1 || this.height < 1) return null;
1033
- let px = Math.floor(x);
1034
- let py = Math.floor(y);
1035
- let pw = Math.floor(w);
1036
- let ph = Math.floor(h);
1037
- if (pw < 1 || ph < 1) return null;
1038
- if (px < 0) {
1039
- pw += px;
1040
- px = 0;
1041
- }
1042
- if (py < 0) {
1043
- ph += py;
1044
- py = 0;
1045
- }
1046
- if (px + pw > this.width) pw = this.width - px;
1047
- if (py + ph > this.height) ph = this.height - py;
1048
- if (pw < 1 || ph < 1) return null;
1049
- gl.bindFramebuffer(gl.FRAMEBUFFER, framebuffer);
1050
- let data: Uint8Array | Float32Array;
1051
- if (asFloat) {
1052
- data = new Float32Array(pw * ph * 4);
1053
- gl.readPixels(px, py, pw, ph, gl.RGBA, gl.FLOAT, data);
1054
- } else {
1055
- data = new Uint8Array(pw * ph * 4);
1056
- gl.readPixels(px, py, pw, ph, gl.RGBA, gl.UNSIGNED_BYTE, data);
1057
- }
1058
- gl.bindFramebuffer(gl.FRAMEBUFFER, null);
1059
- return { x: px, y: py, width: pw, height: ph, data };
1060
- }
1061
-
1062
- get size(): { width: number; height: number } {
1063
- return { width: this.width, height: this.height };
1064
- }
1065
-
1066
- disposePrograms() {
1067
- for (const gp of this.programs.values()) {
1068
- this.gl.deleteProgram(gp.program);
1069
- }
1070
- this.programs.clear();
1071
- this.activePasses = [];
1072
- if (this.vertexShader) {
1073
- this.gl.deleteShader(this.vertexShader);
1074
- this.vertexShader = null;
1075
- }
1076
- }
1077
-
1078
- /**
1079
- * Libère les ressources GPU.
1080
- * @param loseContext - si true, libère aussi le slot navigateur (~8–16 max).
1081
- * Après lose, il faut un **nouveau** canvas (ou restoreContext) pour réutiliser.
1082
- */
1083
- dispose(loseContext = true) {
1084
- if (!this.gl.isContextLost()) {
1085
- this.disposePrograms();
1086
- for (const pp of this.buffers.values()) {
1087
- destroyPingPong(this.gl, pp);
1088
- }
1089
- this.buffers.clear();
1090
- for (const ext of this.external.values()) {
1091
- if (ext.video) {
1092
- ext.video.pause();
1093
- ext.video.removeAttribute("src");
1094
- ext.video.load();
1095
- }
1096
- this.gl.deleteTexture(ext.texture);
1097
- }
1098
- this.external.clear();
1099
- if (this.blackTexture) {
1100
- this.gl.deleteTexture(this.blackTexture);
1101
- this.blackTexture = null;
1102
- }
1103
- if (this.vao) {
1104
- this.gl.deleteVertexArray(this.vao);
1105
- this.vao = null;
1106
- }
1107
- if (loseContext) {
1108
- const lose = this.gl.getExtension("WEBGL_lose_context");
1109
- lose?.loseContext();
1110
- }
1111
- } else {
1112
- this.programs.clear();
1113
- this.buffers.clear();
1114
- this.external.clear();
1115
- this.blackTexture = null;
1116
- this.vao = null;
1117
- this.vertexShader = null;
1118
- }
1119
- }
1120
- }