@hyperfixi/core 2.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 (381) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +218 -0
  3. package/dist/__test-utils__/context-builders.d.ts +42 -0
  4. package/dist/__test-utils__/error-testing.d.ts +18 -0
  5. package/dist/__test-utils__/index.d.ts +6 -0
  6. package/dist/__test-utils__/mock-types.d.ts +57 -0
  7. package/dist/__test-utils__/parser-context-mock.d.ts +7 -0
  8. package/dist/__test-utils__/parser-helpers.d.ts +38 -0
  9. package/dist/api/dom-processor.d.ts +17 -0
  10. package/dist/api/hyperscript-api.d.ts +68 -0
  11. package/dist/api/lokascript-api.d.ts +9 -0
  12. package/dist/ast-utils/analyzer.d.ts +19 -0
  13. package/dist/ast-utils/documentation.d.ts +8 -0
  14. package/dist/ast-utils/generator.d.ts +9 -0
  15. package/dist/ast-utils/index.d.ts +12 -0
  16. package/dist/ast-utils/index.js +3366 -0
  17. package/dist/ast-utils/index.mjs +3320 -0
  18. package/dist/ast-utils/interchange/from-core.d.ts +8 -0
  19. package/dist/ast-utils/interchange/index.d.ts +6 -0
  20. package/dist/ast-utils/interchange/lsp.d.ts +108 -0
  21. package/dist/ast-utils/interchange/to-core.d.ts +8 -0
  22. package/dist/ast-utils/interchange/types.d.ts +113 -0
  23. package/dist/ast-utils/query.d.ts +25 -0
  24. package/dist/ast-utils/transformer.d.ts +14 -0
  25. package/dist/ast-utils/types.d.ts +162 -0
  26. package/dist/ast-utils/visitor.d.ts +40 -0
  27. package/dist/behaviors/boosted.d.ts +29 -0
  28. package/dist/behaviors/history-swap.d.ts +24 -0
  29. package/dist/behaviors/index.d.ts +4 -0
  30. package/dist/behaviors/index.js +1149 -0
  31. package/dist/behaviors/index.mjs +1139 -0
  32. package/dist/bundle-generator/generator.d.ts +4 -0
  33. package/dist/bundle-generator/index.d.ts +6 -0
  34. package/dist/bundle-generator/index.js +2294 -0
  35. package/dist/bundle-generator/index.mjs +2271 -0
  36. package/dist/bundle-generator/parser-templates.d.ts +6 -0
  37. package/dist/bundle-generator/template-capabilities.d.ts +10 -0
  38. package/dist/bundle-generator/templates.d.ts +11 -0
  39. package/dist/bundle-generator/types.d.ts +34 -0
  40. package/dist/bundles/test-minimal.d.ts +3 -0
  41. package/dist/bundles/test-standard.d.ts +3 -0
  42. package/dist/chunks/bridge-I6ceoWxV.js +2 -0
  43. package/dist/chunks/browser-modular-Dv6PAV3c.js +2 -0
  44. package/dist/chunks/feature-eventsource-DWb514fy.js +2 -0
  45. package/dist/chunks/feature-sockets-3PFuvCVY.js +2 -0
  46. package/dist/chunks/feature-webworker-DTm_eh-E.js +2 -0
  47. package/dist/commands/advanced/async.d.ts +28 -0
  48. package/dist/commands/advanced/js.d.ts +28 -0
  49. package/dist/commands/animation/measure.d.ts +31 -0
  50. package/dist/commands/animation/settle.d.ts +26 -0
  51. package/dist/commands/animation/take.d.ts +28 -0
  52. package/dist/commands/animation/transition.d.ts +31 -0
  53. package/dist/commands/async/fetch.d.ts +44 -0
  54. package/dist/commands/async/wait.d.ts +41 -0
  55. package/dist/commands/behaviors/install.d.ts +41 -0
  56. package/dist/commands/content/append.d.ts +27 -0
  57. package/dist/commands/control-flow/break.d.ts +15 -0
  58. package/dist/commands/control-flow/continue.d.ts +15 -0
  59. package/dist/commands/control-flow/exit.d.ts +15 -0
  60. package/dist/commands/control-flow/halt.d.ts +25 -0
  61. package/dist/commands/control-flow/if.d.ts +45 -0
  62. package/dist/commands/control-flow/repeat.d.ts +35 -0
  63. package/dist/commands/control-flow/return.d.ts +23 -0
  64. package/dist/commands/control-flow/signal-base.d.ts +25 -0
  65. package/dist/commands/control-flow/throw.d.ts +22 -0
  66. package/dist/commands/control-flow/unless.d.ts +3 -0
  67. package/dist/commands/data/decrement.d.ts +3 -0
  68. package/dist/commands/data/default.d.ts +31 -0
  69. package/dist/commands/data/get.d.ts +23 -0
  70. package/dist/commands/data/increment.d.ts +25 -0
  71. package/dist/commands/data/set.d.ts +56 -0
  72. package/dist/commands/decorators/index.d.ts +30 -0
  73. package/dist/commands/dom/__tests__/add-standalone-helpers.d.ts +11 -0
  74. package/dist/commands/dom/add.d.ts +31 -0
  75. package/dist/commands/dom/dom-modification-base.d.ts +48 -0
  76. package/dist/commands/dom/hide.d.ts +12 -0
  77. package/dist/commands/dom/make.d.ts +21 -0
  78. package/dist/commands/dom/process-partials.d.ts +39 -0
  79. package/dist/commands/dom/put.d.ts +31 -0
  80. package/dist/commands/dom/remove.d.ts +33 -0
  81. package/dist/commands/dom/show.d.ts +13 -0
  82. package/dist/commands/dom/swap.d.ts +38 -0
  83. package/dist/commands/dom/toggle.d.ts +55 -0
  84. package/dist/commands/dom/visibility-base.d.ts +20 -0
  85. package/dist/commands/events/send.d.ts +3 -0
  86. package/dist/commands/events/trigger.d.ts +36 -0
  87. package/dist/commands/execution/call.d.ts +24 -0
  88. package/dist/commands/execution/pseudo-command.d.ts +42 -0
  89. package/dist/commands/helpers/attribute-manipulation.d.ts +11 -0
  90. package/dist/commands/helpers/batch-dom-operations.d.ts +12 -0
  91. package/dist/commands/helpers/class-manipulation.d.ts +11 -0
  92. package/dist/commands/helpers/condition-helpers.d.ts +4 -0
  93. package/dist/commands/helpers/dom-mutation.d.ts +15 -0
  94. package/dist/commands/helpers/duration-parsing.d.ts +8 -0
  95. package/dist/commands/helpers/element-property-access.d.ts +7 -0
  96. package/dist/commands/helpers/element-resolution.d.ts +17 -0
  97. package/dist/commands/helpers/error-helpers.d.ts +17 -0
  98. package/dist/commands/helpers/event-helpers.d.ts +13 -0
  99. package/dist/commands/helpers/event-waiting.d.ts +37 -0
  100. package/dist/commands/helpers/index.d.ts +32 -0
  101. package/dist/commands/helpers/input-validator.d.ts +23 -0
  102. package/dist/commands/helpers/loop-executor.d.ts +53 -0
  103. package/dist/commands/helpers/numeric-target-parser.d.ts +14 -0
  104. package/dist/commands/helpers/property-target.d.ts +30 -0
  105. package/dist/commands/helpers/selector-type-detection.d.ts +24 -0
  106. package/dist/commands/helpers/smart-element.d.ts +16 -0
  107. package/dist/commands/helpers/style-manipulation.d.ts +16 -0
  108. package/dist/commands/helpers/temporal-modifiers.d.ts +15 -0
  109. package/dist/commands/helpers/url-argument-parser.d.ts +10 -0
  110. package/dist/commands/helpers/url-validation.d.ts +7 -0
  111. package/dist/commands/helpers/variable-access.d.ts +10 -0
  112. package/dist/commands/helpers/visibility-target-parser.d.ts +11 -0
  113. package/dist/commands/index.d.ts +139 -0
  114. package/dist/commands/index.js +9186 -0
  115. package/dist/commands/index.mjs +9032 -0
  116. package/dist/commands/navigation/go.d.ts +35 -0
  117. package/dist/commands/navigation/push-url.d.ts +35 -0
  118. package/dist/commands/navigation/replace-url.d.ts +3 -0
  119. package/dist/commands/templates/render.d.ts +48 -0
  120. package/dist/commands/utility/beep.d.ts +32 -0
  121. package/dist/commands/utility/copy.d.ts +29 -0
  122. package/dist/commands/utility/log.d.ts +24 -0
  123. package/dist/commands/utility/pick.d.ts +26 -0
  124. package/dist/commands/utility/tell.d.ts +26 -0
  125. package/dist/compatibility/browser-bundle-animation-generated.d.ts +16 -0
  126. package/dist/compatibility/browser-bundle-classic-i18n.d.ts +63 -0
  127. package/dist/compatibility/browser-bundle-classic.d.ts +17 -0
  128. package/dist/compatibility/browser-bundle-forms-generated.d.ts +16 -0
  129. package/dist/compatibility/browser-bundle-hybrid-complete.d.ts +28 -0
  130. package/dist/compatibility/browser-bundle-hybrid-hx.d.ts +43 -0
  131. package/dist/compatibility/browser-bundle-lite-plus.d.ts +25 -0
  132. package/dist/compatibility/browser-bundle-lite.d.ts +23 -0
  133. package/dist/compatibility/browser-bundle-minimal-generated.d.ts +16 -0
  134. package/dist/compatibility/browser-bundle-minimal-v2.d.ts +17 -0
  135. package/dist/compatibility/browser-bundle-minimal.d.ts +8 -0
  136. package/dist/compatibility/browser-bundle-modular.d.ts +18 -0
  137. package/dist/compatibility/browser-bundle-multilingual.d.ts +19 -0
  138. package/dist/compatibility/browser-bundle-semantic-complete.d.ts +24 -0
  139. package/dist/compatibility/browser-bundle-standard-v2.d.ts +17 -0
  140. package/dist/compatibility/browser-bundle-standard.d.ts +8 -0
  141. package/dist/compatibility/browser-bundle-textshelf-minimal.d.ts +16 -0
  142. package/dist/compatibility/browser-bundle-textshelf-profile.d.ts +18 -0
  143. package/dist/compatibility/browser-bundle.d.ts +140 -0
  144. package/dist/compatibility/browser-modular.d.ts +53 -0
  145. package/dist/compatibility/browser-tests/test-utils.d.ts +21 -0
  146. package/dist/compatibility/eval-hyperscript.d.ts +15 -0
  147. package/dist/compatibility/feature-loader.d.ts +8 -0
  148. package/dist/compatibility/hyperscript-adapter.d.ts +38 -0
  149. package/dist/compatibility/hyperscript-tests/test-adapter.d.ts +13 -0
  150. package/dist/core/ast-property-utils.d.ts +2 -0
  151. package/dist/core/base-expression-evaluator.d.ts +70 -0
  152. package/dist/core/binary-expression-evaluator.d.ts +7 -0
  153. package/dist/core/call-expression-evaluator.d.ts +7 -0
  154. package/dist/core/configurable-expression-evaluator.d.ts +5 -0
  155. package/dist/core/context.d.ts +15 -0
  156. package/dist/core/dom.d.ts +15 -0
  157. package/dist/core/evaluator-types.d.ts +5 -0
  158. package/dist/core/events.d.ts +48 -0
  159. package/dist/core/executor.d.ts +34 -0
  160. package/dist/core/expression-evaluator.d.ts +6 -0
  161. package/dist/core/lazy-expression-evaluator.d.ts +22 -0
  162. package/dist/core/parser.d.ts +21 -0
  163. package/dist/core/selector-evaluator.d.ts +15 -0
  164. package/dist/core/template-literal-evaluator.d.ts +5 -0
  165. package/dist/dom/attribute-processor.d.ts +40 -0
  166. package/dist/dom/minimal-attribute-processor.d.ts +20 -0
  167. package/dist/experimental/binary-tree/accessor.d.ts +10 -0
  168. package/dist/experimental/binary-tree/ast-serializer.d.ts +26 -0
  169. package/dist/experimental/binary-tree/benchmark.d.ts +24 -0
  170. package/dist/experimental/binary-tree/buffer-context.d.ts +27 -0
  171. package/dist/experimental/binary-tree/deserializer.d.ts +17 -0
  172. package/dist/experimental/binary-tree/index.d.ts +22 -0
  173. package/dist/experimental/binary-tree/serializer.d.ts +4 -0
  174. package/dist/experimental/binary-tree/types.d.ts +54 -0
  175. package/dist/expressions/base-expression.d.ts +27 -0
  176. package/dist/expressions/bundles/common-expressions.d.ts +9 -0
  177. package/dist/expressions/bundles/core-expressions.d.ts +7 -0
  178. package/dist/expressions/bundles/full-expressions.d.ts +10 -0
  179. package/dist/expressions/bundles/index.d.ts +7 -0
  180. package/dist/expressions/comparison/index.d.ts +80 -0
  181. package/dist/expressions/comparison/utils.d.ts +2 -0
  182. package/dist/expressions/conversion/impl/bridge.d.ts +117 -0
  183. package/dist/expressions/conversion/impl/index.d.ts +59 -0
  184. package/dist/expressions/conversion/index.d.ts +23 -0
  185. package/dist/expressions/expression-tiers.d.ts +13 -0
  186. package/dist/expressions/index.d.ts +11 -0
  187. package/dist/expressions/index.js +6930 -0
  188. package/dist/expressions/index.mjs +6912 -0
  189. package/dist/expressions/logical/impl/index.d.ts +54 -0
  190. package/dist/expressions/logical/impl/pattern-matching.d.ts +58 -0
  191. package/dist/expressions/logical/index.d.ts +59 -0
  192. package/dist/expressions/mathematical/index.d.ts +69 -0
  193. package/dist/expressions/positional/impl/bridge.d.ts +95 -0
  194. package/dist/expressions/positional/impl/index.d.ts +73 -0
  195. package/dist/expressions/positional/index.d.ts +26 -0
  196. package/dist/expressions/properties/impl/index.d.ts +105 -0
  197. package/dist/expressions/properties/index.d.ts +26 -0
  198. package/dist/expressions/property/index.d.ts +55 -0
  199. package/dist/expressions/property-access-utils.d.ts +23 -0
  200. package/dist/expressions/references/impl/bridge.d.ts +54 -0
  201. package/dist/expressions/references/impl/index.d.ts +65 -0
  202. package/dist/expressions/references/index.d.ts +40 -0
  203. package/dist/expressions/shared/comparison-utils.d.ts +10 -0
  204. package/dist/expressions/shared/index.d.ts +9 -0
  205. package/dist/expressions/shared/number-utils.d.ts +7 -0
  206. package/dist/expressions/shared/validation-utils.d.ts +13 -0
  207. package/dist/expressions/special/index.d.ts +104 -0
  208. package/dist/expressions/type-helpers.d.ts +11 -0
  209. package/dist/expressions/type-registry.d.ts +57 -0
  210. package/dist/expressions/validation-helpers.d.ts +15 -0
  211. package/dist/extensions/index.d.ts +3 -0
  212. package/dist/extensions/tailwind.d.ts +22 -0
  213. package/dist/features/behaviors.d.ts +153 -0
  214. package/dist/features/def.d.ts +135 -0
  215. package/dist/features/eventsource.d.ts +140 -0
  216. package/dist/features/init.d.ts +135 -0
  217. package/dist/features/on.d.ts +131 -0
  218. package/dist/features/predefined-behaviors/dropdown-behavior.d.ts +20 -0
  219. package/dist/features/predefined-behaviors/index.d.ts +12 -0
  220. package/dist/features/predefined-behaviors/modal-behavior.d.ts +18 -0
  221. package/dist/features/predefined-behaviors/toggle-group-behavior.d.ts +23 -0
  222. package/dist/features/predefined-behaviors/types.d.ts +14 -0
  223. package/dist/features/sockets.d.ts +162 -0
  224. package/dist/features/webworker.d.ts +135 -0
  225. package/dist/htmx/htmx-attribute-processor.d.ts +84 -0
  226. package/dist/htmx/htmx-translator.d.ts +19 -0
  227. package/dist/htmx/index.d.ts +3 -0
  228. package/dist/hyperfixi-classic-i18n.js +2 -0
  229. package/dist/hyperfixi-hx.js +1 -0
  230. package/dist/hyperfixi-hybrid-complete.js +1 -0
  231. package/dist/hyperfixi-lite-plus.js +1 -0
  232. package/dist/hyperfixi-lite.js +1 -0
  233. package/dist/hyperfixi-minimal.js +1 -0
  234. package/dist/hyperfixi-multilingual.js +2 -0
  235. package/dist/hyperfixi-standard.js +2 -0
  236. package/dist/hyperfixi.js +2 -0
  237. package/dist/hyperfixi.mjs +2 -0
  238. package/dist/index.d.ts +25 -0
  239. package/dist/index.js +65387 -0
  240. package/dist/index.min.js +2 -0
  241. package/dist/index.mjs +65343 -0
  242. package/dist/lib/index.d.ts +4 -0
  243. package/dist/lib/morph-adapter.d.ts +22 -0
  244. package/dist/lib/swap-executor.d.ts +22 -0
  245. package/dist/lib/view-transitions.d.ts +33 -0
  246. package/dist/lokascript-browser-classic-i18n.js +2 -0
  247. package/dist/lokascript-browser-minimal.js +1 -0
  248. package/dist/lokascript-browser-standard.js +2 -0
  249. package/dist/lokascript-browser.js +2 -0
  250. package/dist/lokascript-hybrid-complete.js +1 -0
  251. package/dist/lokascript-hybrid-hx.js +1 -0
  252. package/dist/lokascript-lite-plus.js +1 -0
  253. package/dist/lokascript-lite.js +1 -0
  254. package/dist/lokascript-multilingual.js +2 -0
  255. package/dist/lsp-metadata.d.ts +25 -0
  256. package/dist/lsp-metadata.js +680 -0
  257. package/dist/lsp-metadata.mjs +670 -0
  258. package/dist/metadata.d.ts +213 -0
  259. package/dist/metadata.js +378 -0
  260. package/dist/metadata.mjs +368 -0
  261. package/dist/mod.d.ts +63 -0
  262. package/dist/multilingual/bridge.d.ts +36 -0
  263. package/dist/multilingual/index.d.ts +32 -0
  264. package/dist/multilingual/index.js +285 -0
  265. package/dist/multilingual/index.mjs +278 -0
  266. package/dist/parser/__types__/test-helpers.d.ts +25 -0
  267. package/dist/parser/command-node-builder.d.ts +45 -0
  268. package/dist/parser/command-parsers/animation-commands.d.ts +5 -0
  269. package/dist/parser/command-parsers/async-commands.d.ts +5 -0
  270. package/dist/parser/command-parsers/control-flow-commands.d.ts +7 -0
  271. package/dist/parser/command-parsers/dom-commands.d.ts +8 -0
  272. package/dist/parser/command-parsers/event-commands.d.ts +4 -0
  273. package/dist/parser/command-parsers/utility-commands.d.ts +9 -0
  274. package/dist/parser/command-parsers/variable-commands.d.ts +12 -0
  275. package/dist/parser/error-handler.d.ts +34 -0
  276. package/dist/parser/expression-parser.d.ts +6 -0
  277. package/dist/parser/full-parser.d.ts +4 -0
  278. package/dist/parser/full-parser.js +6532 -0
  279. package/dist/parser/full-parser.mjs +6529 -0
  280. package/dist/parser/helpers/ast-helpers.d.ts +22 -0
  281. package/dist/parser/helpers/parsing-helpers.d.ts +19 -0
  282. package/dist/parser/helpers/token-helpers.d.ts +28 -0
  283. package/dist/parser/hybrid/aliases.d.ts +7 -0
  284. package/dist/parser/hybrid/aliases.js +44 -0
  285. package/dist/parser/hybrid/aliases.mjs +37 -0
  286. package/dist/parser/hybrid/ast-types.d.ts +97 -0
  287. package/dist/parser/hybrid/ast-types.js +3 -0
  288. package/dist/parser/hybrid/ast-types.mjs +2 -0
  289. package/dist/parser/hybrid/index.d.ts +6 -0
  290. package/dist/parser/hybrid/index.js +1015 -0
  291. package/dist/parser/hybrid/index.mjs +1005 -0
  292. package/dist/parser/hybrid/parser-core.d.ts +57 -0
  293. package/dist/parser/hybrid/parser-core.js +1001 -0
  294. package/dist/parser/hybrid/parser-core.mjs +999 -0
  295. package/dist/parser/hybrid/tokenizer.d.ts +9 -0
  296. package/dist/parser/hybrid/tokenizer.js +242 -0
  297. package/dist/parser/hybrid/tokenizer.mjs +239 -0
  298. package/dist/parser/hybrid-parser.d.ts +10 -0
  299. package/dist/parser/hybrid-parser.js +1078 -0
  300. package/dist/parser/hybrid-parser.mjs +1071 -0
  301. package/dist/parser/parser-constants.d.ts +102 -0
  302. package/dist/parser/parser-interface.d.ts +11 -0
  303. package/dist/parser/parser-types.d.ts +175 -0
  304. package/dist/parser/parser.d.ts +146 -0
  305. package/dist/parser/regex-parser.d.ts +4 -0
  306. package/dist/parser/regex-parser.js +412 -0
  307. package/dist/parser/regex-parser.mjs +409 -0
  308. package/dist/parser/runtime.d.ts +3 -0
  309. package/dist/parser/semantic-integration.d.ts +61 -0
  310. package/dist/parser/token-consumer.d.ts +35 -0
  311. package/dist/parser/token-predicates.d.ts +77 -0
  312. package/dist/parser/tokenizer.d.ts +57 -0
  313. package/dist/parser/types.d.ts +118 -0
  314. package/dist/performance/expression-cache.d.ts +78 -0
  315. package/dist/performance/integration.d.ts +40 -0
  316. package/dist/performance/production-monitor.d.ts +67 -0
  317. package/dist/reference/index.d.ts +41 -0
  318. package/dist/reference/index.js +586 -0
  319. package/dist/reference/index.mjs +577 -0
  320. package/dist/registry/browser-types.d.ts +20 -0
  321. package/dist/registry/browser-types.js +81 -0
  322. package/dist/registry/browser-types.mjs +76 -0
  323. package/dist/registry/context-provider-registry.d.ts +38 -0
  324. package/dist/registry/environment.d.ts +19 -0
  325. package/dist/registry/environment.js +36 -0
  326. package/dist/registry/environment.mjs +30 -0
  327. package/dist/registry/event-source-registry.d.ts +54 -0
  328. package/dist/registry/examples/server-commands.d.ts +6 -0
  329. package/dist/registry/examples/server-event-source.d.ts +32 -0
  330. package/dist/registry/index.d.ts +54 -0
  331. package/dist/registry/index.js +7636 -0
  332. package/dist/registry/index.mjs +7612 -0
  333. package/dist/registry/multilingual/examples.d.ts +16 -0
  334. package/dist/registry/multilingual/index.d.ts +68 -0
  335. package/dist/registry/runtime-integration.d.ts +30 -0
  336. package/dist/registry/universal-types.d.ts +34 -0
  337. package/dist/registry/universal-types.js +91 -0
  338. package/dist/registry/universal-types.mjs +86 -0
  339. package/dist/runtime/cleanup-registry.d.ts +47 -0
  340. package/dist/runtime/command-adapter.d.ts +63 -0
  341. package/dist/runtime/environment.d.ts +75 -0
  342. package/dist/runtime/runtime-base.d.ts +78 -0
  343. package/dist/runtime/runtime-experimental.d.ts +18 -0
  344. package/dist/runtime/runtime-factory.d.ts +30 -0
  345. package/dist/runtime/runtime.d.ts +19 -0
  346. package/dist/runtime/temporal-modifiers.d.ts +37 -0
  347. package/dist/scripts/code-generator.d.ts +64 -0
  348. package/dist/scripts/generate-missing-commands.d.ts +4 -0
  349. package/dist/test-setup.d.ts +45 -0
  350. package/dist/test-utilities.d.ts +52 -0
  351. package/dist/tokenizer.d.ts +49 -0
  352. package/dist/types/base-types.d.ts +336 -0
  353. package/dist/types/code-fix.d.ts +39 -0
  354. package/dist/types/command-metadata.d.ts +57 -0
  355. package/dist/types/command-types.d.ts +272 -0
  356. package/dist/types/context-types.d.ts +106 -0
  357. package/dist/types/core-context.d.ts +21 -0
  358. package/dist/types/core.d.ts +203 -0
  359. package/dist/types/error-codes.d.ts +207 -0
  360. package/dist/types/expression-types.d.ts +155 -0
  361. package/dist/types/feature-types.d.ts +81 -0
  362. package/dist/types/hooks.d.ts +45 -0
  363. package/dist/types/index.d.ts +32 -0
  364. package/dist/types/result.d.ts +72 -0
  365. package/dist/types/template-types.d.ts +162 -0
  366. package/dist/types/type-guards.d.ts +24 -0
  367. package/dist/types/unified-types.d.ts +99 -0
  368. package/dist/utils/debug-events.d.ts +41 -0
  369. package/dist/utils/debug.d.ts +35 -0
  370. package/dist/utils/dom-utils.d.ts +16 -0
  371. package/dist/utils/element-check.d.ts +7 -0
  372. package/dist/utils/keyboard-shortcuts.d.ts +18 -0
  373. package/dist/utils/performance.d.ts +40 -0
  374. package/dist/validation/command-pattern-validator.d.ts +53 -0
  375. package/dist/validation/common-validators.d.ts +24 -0
  376. package/dist/validation/lightweight-validators.d.ts +113 -0
  377. package/dist/validation/partial-validation-types.d.ts +50 -0
  378. package/dist/validation/partial-validator.d.ts +6 -0
  379. package/dist/validation/partial-warning-formatter.d.ts +6 -0
  380. package/dist/validation/validate-cli.d.ts +41 -0
  381. package/package.json +292 -0
@@ -0,0 +1,102 @@
1
+ export declare const KEYWORDS: {
2
+ readonly THEN: "then";
3
+ readonly ELSE: "else";
4
+ readonly END: "end";
5
+ readonly AND: "and";
6
+ readonly OR: "or";
7
+ readonly NOT: "not";
8
+ readonly IF: "if";
9
+ readonly UNLESS: "unless";
10
+ readonly FOR: "for";
11
+ readonly WHILE: "while";
12
+ readonly UNTIL: "until";
13
+ readonly FOREVER: "forever";
14
+ readonly TIMES: "times";
15
+ readonly EACH: "each";
16
+ readonly INDEX: "index";
17
+ readonly IN: "in";
18
+ readonly TO: "to";
19
+ readonly FROM: "from";
20
+ readonly INTO: "into";
21
+ readonly WITH: "with";
22
+ readonly WITHOUT: "without";
23
+ readonly OF: "of";
24
+ readonly AT: "at";
25
+ readonly BY: "by";
26
+ readonly BETWEEN: "between";
27
+ readonly AS: "as";
28
+ readonly MATCHES: "matches";
29
+ readonly CONTAINS: "contains";
30
+ readonly ON: "on";
31
+ readonly WHEN: "when";
32
+ readonly WHERE: "where";
33
+ readonly EVERY: "every";
34
+ readonly EVENT: "event";
35
+ readonly INIT: "init";
36
+ readonly DEF: "def";
37
+ readonly BEHAVIOR: "behavior";
38
+ readonly GLOBAL: "global";
39
+ readonly LOCAL: "local";
40
+ readonly THE: "the";
41
+ readonly A: "a";
42
+ readonly AN: "an";
43
+ readonly FIRST: "first";
44
+ readonly LAST: "last";
45
+ readonly START: "start";
46
+ readonly BEFORE: "before";
47
+ readonly AFTER: "after";
48
+ };
49
+ export declare const COMMAND_TERMINATORS: readonly ["then", "and", "else", "end", "on"];
50
+ export declare const COMMANDS: Set<string>;
51
+ export declare const COMPOUND_COMMANDS: Set<string>;
52
+ export declare const CONTROL_FLOW_COMMANDS: Set<string>;
53
+ export declare const PUT_OPERATIONS: {
54
+ readonly INTO: "into";
55
+ readonly BEFORE: "before";
56
+ readonly AFTER: "after";
57
+ readonly AT: "at";
58
+ readonly AT_START_OF: "at start of";
59
+ readonly AT_END_OF: "at end of";
60
+ };
61
+ export declare const PUT_OPERATION_KEYWORDS: readonly ["into", "before", "after", "at", "at start of", "at end of", "at the start of", "at the end of"];
62
+ export declare const REPEAT_TYPES: {
63
+ readonly FOR: "for";
64
+ readonly WHILE: "while";
65
+ readonly UNTIL: "until";
66
+ readonly FOREVER: "forever";
67
+ readonly TIMES: "times";
68
+ readonly IN: "in";
69
+ };
70
+ export declare const WAIT_TYPES: {
71
+ readonly FOR: "for";
72
+ readonly A: "a";
73
+ readonly AN: "an";
74
+ };
75
+ export declare const EVENT_KEYWORDS: {
76
+ readonly EVENT: "event";
77
+ readonly EVENTS: "events";
78
+ readonly FROM: "from";
79
+ readonly QUEUE: "queue";
80
+ readonly CALLED: "called";
81
+ };
82
+ export declare const TOGGLE_MODALITIES: {
83
+ readonly MODAL: "modal";
84
+ readonly POPOVER: "popover";
85
+ };
86
+ export declare const HYPERSCRIPT_KEYWORDS: Set<string>;
87
+ export declare const CommandClassification: {
88
+ isCommand(name: string): boolean;
89
+ isCompoundCommand(name: string): boolean;
90
+ isControlFlowCommand(name: string): boolean;
91
+ isKeyword(name: string): boolean;
92
+ isTerminator(keyword: string): boolean;
93
+ isPutOperation(keyword: string): boolean;
94
+ isCSSFunction(name: string): boolean;
95
+ };
96
+ export declare const CSS_FUNCTIONS: Set<string>;
97
+ export declare const CONTEXT_VARS: Set<string>;
98
+ export declare const LOGICAL_OPERATORS: Set<string>;
99
+ export declare const COMPARISON_OPERATORS: Set<string>;
100
+ export declare const DOM_EVENTS: Set<string>;
101
+ export declare const TOKENIZER_KEYWORDS: Set<string>;
102
+ //# sourceMappingURL=parser-constants.d.ts.map
@@ -0,0 +1,11 @@
1
+ import type { ASTNode, CommandNode } from '../types/base-types';
2
+ export interface ParserInterface {
3
+ parse(code: string): CommandNode | ASTNode;
4
+ parseCommands?(code: string): (CommandNode | ASTNode)[];
5
+ supports?(syntax: string): boolean;
6
+ readonly supportedCommands?: readonly string[];
7
+ readonly name: string;
8
+ }
9
+ export type ParserFactory = () => ParserInterface;
10
+ export declare function isParserInterface(obj: unknown): obj is ParserInterface;
11
+ //# sourceMappingURL=parser-interface.d.ts.map
@@ -0,0 +1,175 @@
1
+ import type { Token, ASTNode, CommandNode } from '../types/core';
2
+ import { TokenType } from './tokenizer';
3
+ export interface Position {
4
+ start: number;
5
+ end: number;
6
+ line: number;
7
+ column: number;
8
+ }
9
+ export interface IdentifierNode extends ASTNode {
10
+ type: 'identifier';
11
+ name: string;
12
+ scope?: 'local' | 'global';
13
+ }
14
+ export interface LiteralNode extends ASTNode {
15
+ type: 'literal';
16
+ value: unknown;
17
+ raw: string;
18
+ }
19
+ export interface BinaryExpressionNode extends ASTNode {
20
+ type: 'binaryExpression';
21
+ operator: string;
22
+ left: ASTNode;
23
+ right: ASTNode;
24
+ }
25
+ export interface UnaryExpressionNode extends ASTNode {
26
+ type: 'unaryExpression';
27
+ operator: string;
28
+ argument: ASTNode;
29
+ prefix: boolean;
30
+ }
31
+ export interface CallExpressionNode extends ASTNode {
32
+ type: 'callExpression';
33
+ callee: ASTNode;
34
+ arguments: ASTNode[];
35
+ }
36
+ export interface MemberExpressionNode extends ASTNode {
37
+ type: 'memberExpression';
38
+ object: ASTNode;
39
+ property: ASTNode;
40
+ computed: boolean;
41
+ }
42
+ export interface SelectorNode extends ASTNode {
43
+ type: 'selector';
44
+ value: string;
45
+ }
46
+ export interface PossessiveExpressionNode extends ASTNode {
47
+ type: 'possessiveExpression';
48
+ object: ASTNode;
49
+ property: ASTNode;
50
+ }
51
+ export interface BlockNode extends ASTNode {
52
+ type: 'block';
53
+ commands: ASTNode[];
54
+ }
55
+ export interface StringLiteralNode extends ASTNode {
56
+ type: 'string';
57
+ value: string;
58
+ }
59
+ export interface ObjectLiteralNode extends ASTNode {
60
+ type: 'objectLiteral';
61
+ properties: Array<{
62
+ key: ASTNode;
63
+ value: ASTNode;
64
+ }>;
65
+ }
66
+ export interface ArrayLiteralNode extends ASTNode {
67
+ type: 'arrayLiteral';
68
+ elements: ASTNode[];
69
+ }
70
+ export interface PropertyOfExpressionNode extends ASTNode {
71
+ type: 'propertyOfExpression';
72
+ property: ASTNode;
73
+ target: ASTNode;
74
+ }
75
+ export interface CommandSequenceNode extends ASTNode {
76
+ type: 'CommandSequence';
77
+ commands: ASTNode[];
78
+ }
79
+ export interface ProgramNode extends ASTNode {
80
+ type: 'Program';
81
+ statements: ASTNode[];
82
+ }
83
+ export interface MultiWordPattern {
84
+ command: string;
85
+ keywords: string[];
86
+ minArgs?: number;
87
+ maxArgs?: number;
88
+ }
89
+ export interface ParserContext {
90
+ readonly tokens: Token[];
91
+ current: number;
92
+ advance(): Token;
93
+ peek(): Token;
94
+ previous(): Token;
95
+ consume(expected: string | TokenType, message: string): Token;
96
+ check(value: string): boolean;
97
+ checkIdentifierLike(): boolean;
98
+ checkSelector(): boolean;
99
+ checkAnySelector(): boolean;
100
+ checkLiteral(): boolean;
101
+ checkReference(): boolean;
102
+ checkTimeExpression(): boolean;
103
+ checkEvent(): boolean;
104
+ checkIsCommand(): boolean;
105
+ checkContextVar(): boolean;
106
+ match(...types: Array<string | TokenType>): boolean;
107
+ matchOperator(operator: string): boolean;
108
+ isAtEnd(): boolean;
109
+ createIdentifier(name: string): IdentifierNode;
110
+ createLiteral(value: unknown, raw: string): ASTNode;
111
+ createSelector(value: string): ASTNode;
112
+ createBinaryExpression(operator: string, left: ASTNode, right: ASTNode): ASTNode;
113
+ createUnaryExpression(operator: string, operand: ASTNode, prefix?: boolean): ASTNode;
114
+ createMemberExpression(object: ASTNode, property: ASTNode, computed: boolean): ASTNode;
115
+ createPossessiveExpression(object: ASTNode, property: ASTNode): ASTNode;
116
+ createCallExpression(callee: ASTNode, args: ASTNode[]): ASTNode;
117
+ createErrorNode(): ASTNode;
118
+ createProgramNode(statements: ASTNode[]): ASTNode;
119
+ createCommandFromIdentifier(identifierNode: IdentifierNode): CommandNode;
120
+ parseExpression(): ASTNode;
121
+ parsePrimary(): ASTNode;
122
+ parseCall(): ASTNode;
123
+ parseAssignment(): ASTNode;
124
+ parseLogicalOr(): ASTNode;
125
+ parseLogicalAnd(): ASTNode;
126
+ parseEquality(): ASTNode;
127
+ parseComparison(): ASTNode;
128
+ parseAddition(): ASTNode;
129
+ parseMultiplication(): ASTNode;
130
+ parseImplicitBinary(): ASTNode;
131
+ parseConditional(): ASTNode;
132
+ parseConditionalBranch(): ASTNode;
133
+ parseEventHandler(): ASTNode;
134
+ parseBehaviorDefinition(): ASTNode;
135
+ parseNavigationFunction(): ASTNode;
136
+ parseMyPropertyAccess(): ASTNode;
137
+ parseDollarExpression(): ASTNode;
138
+ parseHyperscriptSelector(): ASTNode;
139
+ parseAttributeOrArrayLiteral(): ASTNode;
140
+ parseObjectLiteral(): ASTNode;
141
+ parseCSSObjectLiteral(): ASTNode;
142
+ parseCommand(): CommandNode;
143
+ parseCommandSequence(): ASTNode;
144
+ parseCommandListUntilEnd(): ASTNode[];
145
+ savePosition(): number;
146
+ restorePosition(pos: number): void;
147
+ peekAt(offset: number): Token | null;
148
+ getPosition(): Position;
149
+ addError(message: string): void;
150
+ addWarning(warning: string): void;
151
+ isCommand(name: string): boolean;
152
+ isCompoundCommand(name: string): boolean;
153
+ isKeyword(name: string): boolean;
154
+ getMultiWordPattern(commandName: string): MultiWordPattern | null;
155
+ resolveKeyword(value: string): string;
156
+ getInputSlice(start: number, end?: number): string;
157
+ }
158
+ export type CommandParserFunction = (token: Token, context: ParserContext) => CommandNode;
159
+ export type CompoundCommandParserFunction = (identifierNode: IdentifierNode, context: ParserContext) => CommandNode | null;
160
+ export type TokenNavigationFunction = (context: ParserContext) => Token | boolean;
161
+ export type ASTNodeCreatorFunction = (...args: any[]) => ASTNode;
162
+ export type ExpressionParserFunction = (context: ParserContext) => ASTNode;
163
+ export interface ParseResult {
164
+ success: boolean;
165
+ node?: ASTNode;
166
+ error?: {
167
+ name: string;
168
+ message: string;
169
+ line?: number;
170
+ column?: number;
171
+ position?: number;
172
+ };
173
+ warnings?: string[];
174
+ }
175
+ //# sourceMappingURL=parser-types.d.ts.map
@@ -0,0 +1,146 @@
1
+ import type { Token, ParseResult as CoreParseResult } from '../types/core';
2
+ import type { ParserOptions } from './types';
3
+ export type ParseResult = CoreParseResult;
4
+ export type { ParseError } from './types';
5
+ export declare class Parser {
6
+ private tokens;
7
+ private current;
8
+ private error;
9
+ private warnings;
10
+ private keywordResolver?;
11
+ private semanticAdapter?;
12
+ private originalInput?;
13
+ private registryIntegration?;
14
+ private static readonly POSTFIX_UNARY_OPERATORS;
15
+ constructor(tokens: Token[], options?: ParserOptions, originalInput?: string);
16
+ private resolveKeyword;
17
+ private addWarning;
18
+ parse(): ParseResult;
19
+ private parseExpression;
20
+ private parseAssignment;
21
+ private parseLogicalOr;
22
+ private parseLogicalAnd;
23
+ private parseEquality;
24
+ private parseComparison;
25
+ private parseAddition;
26
+ private parseMultiplication;
27
+ private parseUnary;
28
+ private parseImplicitBinary;
29
+ private isCommand;
30
+ private isKeyword;
31
+ private createCommandFromIdentifier;
32
+ private isCompoundCommand;
33
+ private parseCompoundCommand;
34
+ private parsePutCommand;
35
+ private parseSetCommand;
36
+ private parseHaltCommand;
37
+ private parseMeasureCommand;
38
+ private parseTriggerCommand;
39
+ private parseCommandListUntilEnd;
40
+ private parseRepeatCommand;
41
+ private parseForCommand;
42
+ private parseWaitCommand;
43
+ private parseInstallCommand;
44
+ private parseTransitionCommand;
45
+ private parseAddCommand;
46
+ private parseIfCommand;
47
+ private parseRemoveCommand;
48
+ private parseToggleCommand;
49
+ private parseRegularCommand;
50
+ private parseCall;
51
+ private parsePrimary;
52
+ private parseDollarExpression;
53
+ private parseHyperscriptSelector;
54
+ private parseObjectLiteral;
55
+ private parseCSSObjectLiteral;
56
+ private parseConstructorCall;
57
+ private parseTopLevelInitBlock;
58
+ private parseDefFeature;
59
+ private parseEventNameWithNamespace;
60
+ private static readonly PSEUDO_COMMAND_PREPOSITIONS;
61
+ private callExprToCommandNode;
62
+ private createPseudoCommandNode;
63
+ private tryParsePseudoCommand;
64
+ private parseCommandWithErrorRecovery;
65
+ private parseEventHandler;
66
+ private parseBehaviorDefinition;
67
+ private parseCommandSequence;
68
+ private getMultiWordPattern;
69
+ private isTokenKeyword;
70
+ private parseMultiWordCommand;
71
+ private parseCommandBlock;
72
+ private trySemanticParse;
73
+ private getRemainingInput;
74
+ private skipToCommandBoundary;
75
+ private parseCommand;
76
+ private parseConditional;
77
+ private parseConditionalBranch;
78
+ private parseNavigationFunction;
79
+ private parseTheXofY;
80
+ private parseContextPropertyAccess;
81
+ private parseMyPropertyAccess;
82
+ private finishCall;
83
+ private createLiteral;
84
+ private createIdentifier;
85
+ private createBinaryExpression;
86
+ private createUnaryExpression;
87
+ private createCallExpression;
88
+ private createMemberExpression;
89
+ private createSelector;
90
+ private createPossessiveExpression;
91
+ private createErrorNode;
92
+ private processEscapeSequences;
93
+ private createProgramNode;
94
+ private match;
95
+ private matchOperator;
96
+ private check;
97
+ private checkPredicate;
98
+ private matchPredicate;
99
+ private checkSelector;
100
+ private matchSelector;
101
+ private checkAnySelector;
102
+ private checkLiteral;
103
+ private checkIdentifierLike;
104
+ private checkIsCommand;
105
+ private checkCommandTerminator;
106
+ private checkReference;
107
+ private checkTimeExpression;
108
+ private checkEvent;
109
+ private checkContextVar;
110
+ private checkComment;
111
+ private checkIdentifier;
112
+ private checkKeyword;
113
+ private checkString;
114
+ private matchString;
115
+ private checkNumber;
116
+ private matchNumber;
117
+ private checkBoolean;
118
+ private matchBoolean;
119
+ private checkTemplateLiteral;
120
+ private matchTemplateLiteral;
121
+ private checkQueryReference;
122
+ private matchQueryReference;
123
+ private checkIdSelector;
124
+ private checkClassSelector;
125
+ private checkCssSelector;
126
+ private checkBasicOperator;
127
+ private matchBasicOperator;
128
+ private matchTimeExpression;
129
+ private matchIdentifierLike;
130
+ private matchComparisonOperator;
131
+ private consumePredicate;
132
+ private consumeIdentifier;
133
+ private consumeIdentifierLike;
134
+ private consumeEvent;
135
+ private advance;
136
+ private isAtEnd;
137
+ private peek;
138
+ private previous;
139
+ private consume;
140
+ private addError;
141
+ private parseAttributeOrArrayLiteral;
142
+ private getPosition;
143
+ getContext(): import('./parser-types').ParserContext;
144
+ }
145
+ export declare function parse(input: string, options?: ParserOptions): ParseResult;
146
+ //# sourceMappingURL=parser.d.ts.map
@@ -0,0 +1,4 @@
1
+ import type { ParserInterface } from './parser-interface';
2
+ export declare const regexParser: ParserInterface;
3
+ export declare function createRegexParser(): ParserInterface;
4
+ //# sourceMappingURL=regex-parser.d.ts.map