@hyperfixi/core 3.3.0 → 4.0.1

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 (378) hide show
  1. package/README.md +57 -179
  2. package/dist/ast-utils/index.cjs +74 -806
  3. package/dist/ast-utils/index.d.ts +1 -1
  4. package/dist/ast-utils/index.mjs +74 -805
  5. package/dist/ast-utils/interchange/engine-positions.d.ts +3 -0
  6. package/dist/ast-utils/interchange/index.d.ts +1 -2
  7. package/dist/hyperfixi.js +19 -2
  8. package/dist/index.d.ts +2 -22
  9. package/dist/index.mjs +3 -29128
  10. package/dist/lsp-metadata.cjs +77 -73
  11. package/dist/lsp-metadata.d.ts +4 -4
  12. package/dist/lsp-metadata.mjs +77 -73
  13. package/dist/metadata.cjs +34 -266
  14. package/dist/metadata.d.ts +31 -26
  15. package/dist/metadata.mjs +34 -266
  16. package/dist/multilingual/index.cjs +16 -382
  17. package/dist/multilingual/index.d.ts +4 -32
  18. package/dist/multilingual/index.mjs +15 -377
  19. package/dist/reference/index.cjs +67 -216
  20. package/dist/reference/index.d.ts +0 -3
  21. package/dist/reference/index.mjs +68 -216
  22. package/dist/version.d.ts +1 -1
  23. package/package.json +13 -179
  24. package/dist/__test-utils__/context-builders.d.ts +0 -42
  25. package/dist/__test-utils__/error-testing.d.ts +0 -18
  26. package/dist/__test-utils__/index.d.ts +0 -6
  27. package/dist/__test-utils__/mock-types.d.ts +0 -57
  28. package/dist/__test-utils__/parser-context-mock.d.ts +0 -7
  29. package/dist/__test-utils__/parser-helpers.d.ts +0 -38
  30. package/dist/api/hyperscript-api.d.ts +0 -90
  31. package/dist/api/lokascript-api.d.ts +0 -9
  32. package/dist/ast/command-slots.d.ts +0 -140
  33. package/dist/ast/guards.d.ts +0 -15
  34. package/dist/ast/legacy.d.ts +0 -15
  35. package/dist/ast/nodes.d.ts +0 -243
  36. package/dist/ast-utils/interchange/from-core.d.ts +0 -12
  37. package/dist/ast-utils/interchange/to-core.d.ts +0 -8
  38. package/dist/behaviors/boosted.d.ts +0 -29
  39. package/dist/behaviors/history-swap.d.ts +0 -24
  40. package/dist/behaviors/index.cjs +0 -1155
  41. package/dist/behaviors/index.d.ts +0 -4
  42. package/dist/behaviors/index.mjs +0 -1145
  43. package/dist/bundle-generator/executor-core.d.ts +0 -4
  44. package/dist/bundle-generator/generator.d.ts +0 -4
  45. package/dist/bundle-generator/index.cjs +0 -2804
  46. package/dist/bundle-generator/index.d.ts +0 -6
  47. package/dist/bundle-generator/index.mjs +0 -2779
  48. package/dist/bundle-generator/parser-templates.d.ts +0 -6
  49. package/dist/bundle-generator/template-capabilities.d.ts +0 -12
  50. package/dist/bundle-generator/templates.d.ts +0 -12
  51. package/dist/bundle-generator/types.d.ts +0 -34
  52. package/dist/chunks/bridge-CI9SOl8u.js +0 -2
  53. package/dist/chunks/browser-modular-7CpI5VF2.js +0 -2
  54. package/dist/chunks/index-BwXDEK0m.js +0 -2
  55. package/dist/chunks/index-DQi2o8Lk.js +0 -2
  56. package/dist/chunks/index-uCOQ8Qn0.js +0 -2
  57. package/dist/commands/advanced/js.d.ts +0 -40
  58. package/dist/commands/animation/measure.d.ts +0 -43
  59. package/dist/commands/animation/settle.d.ts +0 -38
  60. package/dist/commands/animation/start-view-transition.d.ts +0 -38
  61. package/dist/commands/animation/take.d.ts +0 -41
  62. package/dist/commands/animation/transition.d.ts +0 -49
  63. package/dist/commands/async/fetch.d.ts +0 -61
  64. package/dist/commands/async/wait.d.ts +0 -51
  65. package/dist/commands/behaviors/install.d.ts +0 -40
  66. package/dist/commands/content/append.d.ts +0 -26
  67. package/dist/commands/content/insertion-base.d.ts +0 -60
  68. package/dist/commands/content/prepend.d.ts +0 -26
  69. package/dist/commands/control-flow/break.d.ts +0 -29
  70. package/dist/commands/control-flow/continue.d.ts +0 -29
  71. package/dist/commands/control-flow/exit.d.ts +0 -29
  72. package/dist/commands/control-flow/halt.d.ts +0 -39
  73. package/dist/commands/control-flow/if.d.ts +0 -58
  74. package/dist/commands/control-flow/repeat.d.ts +0 -50
  75. package/dist/commands/control-flow/return.d.ts +0 -33
  76. package/dist/commands/control-flow/signal-base.d.ts +0 -18
  77. package/dist/commands/control-flow/throw.d.ts +0 -34
  78. package/dist/commands/control-flow/unless.d.ts +0 -3
  79. package/dist/commands/data/clear.d.ts +0 -37
  80. package/dist/commands/data/decrement.d.ts +0 -3
  81. package/dist/commands/data/default.d.ts +0 -60
  82. package/dist/commands/data/get.d.ts +0 -35
  83. package/dist/commands/data/increment.d.ts +0 -42
  84. package/dist/commands/data/set.d.ts +0 -76
  85. package/dist/commands/decorators/index.d.ts +0 -14
  86. package/dist/commands/dom/add.d.ts +0 -44
  87. package/dist/commands/dom/close.d.ts +0 -32
  88. package/dist/commands/dom/dom-modification-base.d.ts +0 -48
  89. package/dist/commands/dom/empty.d.ts +0 -32
  90. package/dist/commands/dom/hide.d.ts +0 -28
  91. package/dist/commands/dom/make.d.ts +0 -34
  92. package/dist/commands/dom/open.d.ts +0 -34
  93. package/dist/commands/dom/process-partials.d.ts +0 -51
  94. package/dist/commands/dom/put.d.ts +0 -42
  95. package/dist/commands/dom/remove.d.ts +0 -46
  96. package/dist/commands/dom/reset.d.ts +0 -32
  97. package/dist/commands/dom/select.d.ts +0 -32
  98. package/dist/commands/dom/show.d.ts +0 -29
  99. package/dist/commands/dom/swap.d.ts +0 -65
  100. package/dist/commands/dom/toggle.d.ts +0 -69
  101. package/dist/commands/dom/visibility-base.d.ts +0 -22
  102. package/dist/commands/events/send.d.ts +0 -3
  103. package/dist/commands/events/trigger.d.ts +0 -49
  104. package/dist/commands/execution/blur.d.ts +0 -32
  105. package/dist/commands/execution/call.d.ts +0 -35
  106. package/dist/commands/execution/focus.d.ts +0 -32
  107. package/dist/commands/execution/pseudo-command.d.ts +0 -41
  108. package/dist/commands/helpers/attribute-manipulation.d.ts +0 -11
  109. package/dist/commands/helpers/attribute-target.d.ts +0 -9
  110. package/dist/commands/helpers/batch-dom-operations.d.ts +0 -12
  111. package/dist/commands/helpers/body-ops.d.ts +0 -10
  112. package/dist/commands/helpers/class-manipulation.d.ts +0 -11
  113. package/dist/commands/helpers/condition-helpers.d.ts +0 -4
  114. package/dist/commands/helpers/dom-mutation.d.ts +0 -16
  115. package/dist/commands/helpers/duration-parsing.d.ts +0 -8
  116. package/dist/commands/helpers/element-property-access.d.ts +0 -7
  117. package/dist/commands/helpers/element-resolution.d.ts +0 -16
  118. package/dist/commands/helpers/error-helpers.d.ts +0 -17
  119. package/dist/commands/helpers/event-helpers.d.ts +0 -13
  120. package/dist/commands/helpers/event-waiting.d.ts +0 -37
  121. package/dist/commands/helpers/index.d.ts +0 -32
  122. package/dist/commands/helpers/input-validator.d.ts +0 -23
  123. package/dist/commands/helpers/loop-executor.d.ts +0 -56
  124. package/dist/commands/helpers/numeric-target-parser.d.ts +0 -21
  125. package/dist/commands/helpers/property-target.d.ts +0 -20
  126. package/dist/commands/helpers/selector-type-detection.d.ts +0 -24
  127. package/dist/commands/helpers/slots.d.ts +0 -5
  128. package/dist/commands/helpers/smart-element.d.ts +0 -16
  129. package/dist/commands/helpers/style-manipulation.d.ts +0 -16
  130. package/dist/commands/helpers/target-elements.d.ts +0 -5
  131. package/dist/commands/helpers/temporal-modifiers.d.ts +0 -15
  132. package/dist/commands/helpers/url-argument-parser.d.ts +0 -13
  133. package/dist/commands/helpers/url-validation.d.ts +0 -7
  134. package/dist/commands/helpers/variable-access.d.ts +0 -13
  135. package/dist/commands/helpers/visibility-target-parser.d.ts +0 -15
  136. package/dist/commands/helpers/write-target.d.ts +0 -42
  137. package/dist/commands/index.cjs +0 -24168
  138. package/dist/commands/index.d.ts +0 -171
  139. package/dist/commands/index.mjs +0 -23981
  140. package/dist/commands/manifest.d.ts +0 -17
  141. package/dist/commands/navigation/go.d.ts +0 -58
  142. package/dist/commands/navigation/push-url.d.ts +0 -48
  143. package/dist/commands/navigation/replace-url.d.ts +0 -3
  144. package/dist/commands/navigation/scroll-to.d.ts +0 -43
  145. package/dist/commands/templates/render.d.ts +0 -47
  146. package/dist/commands/utility/beep.d.ts +0 -41
  147. package/dist/commands/utility/breakpoint.d.ts +0 -32
  148. package/dist/commands/utility/copy.d.ts +0 -41
  149. package/dist/commands/utility/log.d.ts +0 -36
  150. package/dist/commands/utility/pick.d.ts +0 -47
  151. package/dist/commands/utility/tell.d.ts +0 -39
  152. package/dist/compatibility/browser-bundle-classic.d.ts +0 -17
  153. package/dist/compatibility/browser-bundle-hybrid-complete.d.ts +0 -22
  154. package/dist/compatibility/browser-bundle-hybrid-hx.d.ts +0 -43
  155. package/dist/compatibility/browser-bundle-lite.d.ts +0 -15
  156. package/dist/compatibility/browser-bundle-modular.d.ts +0 -18
  157. package/dist/compatibility/browser-bundle-multilingual.d.ts +0 -19
  158. package/dist/compatibility/browser-bundle-semantic-complete.d.ts +0 -24
  159. package/dist/compatibility/browser-bundle-textshelf-minimal.d.ts +0 -16
  160. package/dist/compatibility/browser-bundle-textshelf-profile.d.ts +0 -18
  161. package/dist/compatibility/browser-modular.d.ts +0 -42
  162. package/dist/compatibility/browser-tests/helpers/semantic-page.d.ts +0 -3
  163. package/dist/compatibility/browser-tests/test-utils.d.ts +0 -21
  164. package/dist/compatibility/bundle-shell.d.ts +0 -13
  165. package/dist/compatibility/bundle-sources.d.ts +0 -4
  166. package/dist/compatibility/eval-hyperscript.d.ts +0 -16
  167. package/dist/compatibility/hyperscript-adapter.d.ts +0 -38
  168. package/dist/core/ast-property-utils.d.ts +0 -2
  169. package/dist/core/context.d.ts +0 -19
  170. package/dist/core/dom.d.ts +0 -15
  171. package/dist/core/evaluator-types.d.ts +0 -5
  172. package/dist/core/events.d.ts +0 -48
  173. package/dist/core/executor.d.ts +0 -34
  174. package/dist/core/expression-evaluator.d.ts +0 -6
  175. package/dist/core/expression-registry.d.ts +0 -8
  176. package/dist/core/scope-hooks.d.ts +0 -24
  177. package/dist/debug/debug-controller.d.ts +0 -62
  178. package/dist/debug/index.d.ts +0 -5
  179. package/dist/dom/attribute-processor.d.ts +0 -75
  180. package/dist/dom/detect-language.d.ts +0 -3
  181. package/dist/dom/minimal-attribute-processor.d.ts +0 -20
  182. package/dist/expressions/base-expression.d.ts +0 -27
  183. package/dist/expressions/bundles/common-expressions.d.ts +0 -10
  184. package/dist/expressions/bundles/core-expressions.d.ts +0 -8
  185. package/dist/expressions/bundles/full-expressions.d.ts +0 -11
  186. package/dist/expressions/bundles/index.d.ts +0 -7
  187. package/dist/expressions/collection/index.d.ts +0 -10
  188. package/dist/expressions/conversion/index.d.ts +0 -31
  189. package/dist/expressions/expression-tiers.d.ts +0 -13
  190. package/dist/expressions/index.cjs +0 -4331
  191. package/dist/expressions/index.d.ts +0 -13
  192. package/dist/expressions/index.mjs +0 -4312
  193. package/dist/expressions/logical/index.d.ts +0 -61
  194. package/dist/expressions/mathematical/index.d.ts +0 -80
  195. package/dist/expressions/positional/index.d.ts +0 -31
  196. package/dist/expressions/properties/index.d.ts +0 -27
  197. package/dist/expressions/property-access-utils.d.ts +0 -23
  198. package/dist/expressions/references/index.d.ts +0 -39
  199. package/dist/expressions/shared/comparison-utils.d.ts +0 -10
  200. package/dist/expressions/shared/index.d.ts +0 -10
  201. package/dist/expressions/shared/number-utils.d.ts +0 -8
  202. package/dist/expressions/shared/tracking.d.ts +0 -20
  203. package/dist/expressions/shared/validation-utils.d.ts +0 -13
  204. package/dist/expressions/special/index.d.ts +0 -78
  205. package/dist/expressions/type-helpers.d.ts +0 -11
  206. package/dist/expressions/type-registry.d.ts +0 -57
  207. package/dist/expressions/validation-helpers.d.ts +0 -15
  208. package/dist/htmx/hcon.d.ts +0 -9
  209. package/dist/htmx/htmx-attribute-processor.d.ts +0 -120
  210. package/dist/htmx/htmx-translator.d.ts +0 -22
  211. package/dist/htmx/i18n-hooks.d.ts +0 -18
  212. package/dist/htmx/i18n-orchestrator.d.ts +0 -16
  213. package/dist/htmx/index.d.ts +0 -3
  214. package/dist/htmx/lang-resolver.d.ts +0 -3
  215. package/dist/htmx/sse.d.ts +0 -60
  216. package/dist/htmx/ws.d.ts +0 -59
  217. package/dist/hyperfixi-browser-classic-i18n.js +0 -2
  218. package/dist/hyperfixi-browser.js +0 -2
  219. package/dist/hyperfixi-classic-i18n.js +0 -2
  220. package/dist/hyperfixi-hx-v4.js +0 -1
  221. package/dist/hyperfixi-hx.js +0 -1
  222. package/dist/hyperfixi-hybrid-complete.js +0 -1
  223. package/dist/hyperfixi-hybrid-hx.js +0 -1
  224. package/dist/hyperfixi-multilingual.js +0 -2
  225. package/dist/hyperfixi.mjs +0 -2
  226. package/dist/i18n/error-catalog.d.ts +0 -12
  227. package/dist/index.cjs +0 -29159
  228. package/dist/index.min.js +0 -2
  229. package/dist/lib/dom-globals-shim.d.ts +0 -2
  230. package/dist/lib/index.d.ts +0 -4
  231. package/dist/lib/morph-adapter.d.ts +0 -9
  232. package/dist/lib/swap-executor.d.ts +0 -12
  233. package/dist/lib/view-transitions.d.ts +0 -7
  234. package/dist/lokascript-browser-classic-i18n.js +0 -2
  235. package/dist/lokascript-browser.js +0 -2
  236. package/dist/lokascript-hybrid-complete.js +0 -1
  237. package/dist/lokascript-hybrid-hx.js +0 -1
  238. package/dist/lokascript-multilingual.js +0 -2
  239. package/dist/lse/index.cjs +0 -84
  240. package/dist/lse/index.d.ts +0 -15
  241. package/dist/lse/index.mjs +0 -71
  242. package/dist/multilingual/bridge.d.ts +0 -38
  243. package/dist/multilingual/schema-roles.d.ts +0 -3
  244. package/dist/parser/__types__/test-helpers.d.ts +0 -25
  245. package/dist/parser/command-grammar.d.ts +0 -14
  246. package/dist/parser/command-node-builder.d.ts +0 -46
  247. package/dist/parser/command-parsers/animation-commands.d.ts +0 -6
  248. package/dist/parser/command-parsers/async-commands.d.ts +0 -5
  249. package/dist/parser/command-parsers/control-flow-commands.d.ts +0 -7
  250. package/dist/parser/command-parsers/declared-commands.d.ts +0 -6
  251. package/dist/parser/command-parsers/dom-commands.d.ts +0 -11
  252. package/dist/parser/command-parsers/event-commands.d.ts +0 -4
  253. package/dist/parser/command-parsers/navigation-commands.d.ts +0 -6
  254. package/dist/parser/command-parsers/utility-commands.d.ts +0 -14
  255. package/dist/parser/command-parsers/variable-commands.d.ts +0 -12
  256. package/dist/parser/error-handler.d.ts +0 -34
  257. package/dist/parser/extensions.d.ts +0 -43
  258. package/dist/parser/full-parser.cjs +0 -7943
  259. package/dist/parser/full-parser.d.ts +0 -4
  260. package/dist/parser/full-parser.mjs +0 -7940
  261. package/dist/parser/helpers/ast-helpers.d.ts +0 -24
  262. package/dist/parser/helpers/parsing-helpers.d.ts +0 -19
  263. package/dist/parser/helpers/token-helpers.d.ts +0 -28
  264. package/dist/parser/hybrid/aliases.cjs +0 -44
  265. package/dist/parser/hybrid/aliases.d.ts +0 -7
  266. package/dist/parser/hybrid/aliases.mjs +0 -37
  267. package/dist/parser/hybrid/ast-types.cjs +0 -3
  268. package/dist/parser/hybrid/ast-types.d.ts +0 -97
  269. package/dist/parser/hybrid/ast-types.mjs +0 -2
  270. package/dist/parser/hybrid/index.cjs +0 -1185
  271. package/dist/parser/hybrid/index.d.ts +0 -6
  272. package/dist/parser/hybrid/index.mjs +0 -1175
  273. package/dist/parser/hybrid/parser-core.cjs +0 -1171
  274. package/dist/parser/hybrid/parser-core.d.ts +0 -69
  275. package/dist/parser/hybrid/parser-core.mjs +0 -1169
  276. package/dist/parser/hybrid/tokenizer.cjs +0 -255
  277. package/dist/parser/hybrid/tokenizer.d.ts +0 -9
  278. package/dist/parser/hybrid/tokenizer.mjs +0 -252
  279. package/dist/parser/hybrid-parser.cjs +0 -1249
  280. package/dist/parser/hybrid-parser.d.ts +0 -10
  281. package/dist/parser/hybrid-parser.mjs +0 -1242
  282. package/dist/parser/parser-constants.d.ts +0 -100
  283. package/dist/parser/parser-interface.d.ts +0 -12
  284. package/dist/parser/parser-types.d.ts +0 -164
  285. package/dist/parser/parser.d.ts +0 -165
  286. package/dist/parser/pratt-parser.d.ts +0 -41
  287. package/dist/parser/regex-parser.cjs +0 -422
  288. package/dist/parser/regex-parser.d.ts +0 -4
  289. package/dist/parser/regex-parser.mjs +0 -419
  290. package/dist/parser/runtime.d.ts +0 -14
  291. package/dist/parser/semantic-integration.d.ts +0 -17
  292. package/dist/parser/token-consumer.d.ts +0 -34
  293. package/dist/parser/token-predicates.d.ts +0 -77
  294. package/dist/parser/tokenizer.d.ts +0 -28
  295. package/dist/parser/types.d.ts +0 -105
  296. package/dist/performance/expression-cache.d.ts +0 -78
  297. package/dist/performance/integration.d.ts +0 -40
  298. package/dist/performance/production-monitor.d.ts +0 -67
  299. package/dist/registry/browser-types.cjs +0 -81
  300. package/dist/registry/browser-types.d.ts +0 -20
  301. package/dist/registry/browser-types.mjs +0 -76
  302. package/dist/registry/environment.cjs +0 -36
  303. package/dist/registry/environment.d.ts +0 -19
  304. package/dist/registry/environment.mjs +0 -30
  305. package/dist/registry/event-source-registry.d.ts +0 -54
  306. package/dist/registry/examples/server-commands.d.ts +0 -6
  307. package/dist/registry/examples/server-event-source.d.ts +0 -32
  308. package/dist/registry/index.cjs +0 -14055
  309. package/dist/registry/index.d.ts +0 -39
  310. package/dist/registry/index.mjs +0 -14039
  311. package/dist/registry/runtime-integration.d.ts +0 -23
  312. package/dist/registry/universal-types.cjs +0 -91
  313. package/dist/registry/universal-types.d.ts +0 -35
  314. package/dist/registry/universal-types.mjs +0 -86
  315. package/dist/runtime/cleanup-registry.d.ts +0 -47
  316. package/dist/runtime/command-adapter.d.ts +0 -69
  317. package/dist/runtime/environment.d.ts +0 -75
  318. package/dist/runtime/plugin.d.ts +0 -14
  319. package/dist/runtime/runtime-base.d.ts +0 -100
  320. package/dist/runtime/runtime-factory.d.ts +0 -29
  321. package/dist/runtime/runtime.d.ts +0 -20
  322. package/dist/runtime/temporal-modifiers.d.ts +0 -37
  323. package/dist/test-setup.d.ts +0 -28
  324. package/dist/test-utilities.d.ts +0 -39
  325. package/dist/types/base-types.d.ts +0 -231
  326. package/dist/types/code-fix.d.ts +0 -39
  327. package/dist/types/command-metadata.d.ts +0 -57
  328. package/dist/types/command-types.d.ts +0 -262
  329. package/dist/types/context-types.d.ts +0 -106
  330. package/dist/types/core-context.d.ts +0 -22
  331. package/dist/types/core.d.ts +0 -143
  332. package/dist/types/error-codes.d.ts +0 -207
  333. package/dist/types/expression-types.d.ts +0 -155
  334. package/dist/types/hooks.d.ts +0 -45
  335. package/dist/types/index.d.ts +0 -32
  336. package/dist/types/program.d.ts +0 -8
  337. package/dist/types/result.d.ts +0 -73
  338. package/dist/types/template-types.d.ts +0 -162
  339. package/dist/types/type-guards.d.ts +0 -24
  340. package/dist/types/unified-types.d.ts +0 -91
  341. package/dist/utils/beep.d.ts +0 -8
  342. package/dist/utils/debug-events.d.ts +0 -41
  343. package/dist/utils/debug.d.ts +0 -35
  344. package/dist/utils/dom-utils.d.ts +0 -16
  345. package/dist/utils/element-check.d.ts +0 -8
  346. package/dist/utils/keyboard-shortcuts.d.ts +0 -18
  347. package/dist/utils/performance.d.ts +0 -40
  348. package/dist/validation/command-pattern-validator.d.ts +0 -53
  349. package/dist/validation/common-validators.d.ts +0 -24
  350. package/dist/validation/lightweight-validators.d.ts +0 -113
  351. package/dist/validation/partial-validation-types.d.ts +0 -50
  352. package/dist/validation/partial-validator.d.ts +0 -6
  353. package/dist/validation/partial-warning-formatter.d.ts +0 -6
  354. package/dist/validation/validate-cli.d.ts +0 -41
  355. package/vocab/htmx/ar.js +0 -62
  356. package/vocab/htmx/bn.js +0 -65
  357. package/vocab/htmx/de.js +0 -83
  358. package/vocab/htmx/en.js +0 -24
  359. package/vocab/htmx/es.js +0 -79
  360. package/vocab/htmx/fr.js +0 -79
  361. package/vocab/htmx/he.js +0 -61
  362. package/vocab/htmx/hi.js +0 -81
  363. package/vocab/htmx/id.js +0 -76
  364. package/vocab/htmx/it.js +0 -79
  365. package/vocab/htmx/ja.js +0 -85
  366. package/vocab/htmx/ko.js +0 -81
  367. package/vocab/htmx/ms.js +0 -58
  368. package/vocab/htmx/pl.js +0 -80
  369. package/vocab/htmx/pt.js +0 -81
  370. package/vocab/htmx/qu.js +0 -83
  371. package/vocab/htmx/ru.js +0 -82
  372. package/vocab/htmx/sw.js +0 -79
  373. package/vocab/htmx/th.js +0 -67
  374. package/vocab/htmx/tl.js +0 -56
  375. package/vocab/htmx/tr.js +0 -86
  376. package/vocab/htmx/uk.js +0 -82
  377. package/vocab/htmx/vi.js +0 -59
  378. package/vocab/htmx/zh.js +0 -79
@@ -1,422 +0,0 @@
1
- 'use strict';
2
-
3
- function createProcessElements(parse, run, errorLabel) {
4
- return (root = document) => {
5
- root.querySelectorAll('[_]').forEach(el => {
6
- const code = el.getAttribute('_');
7
- if (!code)
8
- return;
9
- try {
10
- run(parse(code), el);
11
- }
12
- catch (err) {
13
- console.error(`HyperFixi ${errorLabel} error:`, err, 'Code:', code);
14
- }
15
- });
16
- };
17
- }
18
- function installBundleGlobal(api, processElements, globalName = 'hyperfixi') {
19
- if (typeof window === 'undefined')
20
- return;
21
- window[globalName] = api;
22
- if (document.readyState === 'loading') {
23
- document.addEventListener('DOMContentLoaded', () => processElements());
24
- }
25
- else {
26
- processElements();
27
- }
28
- }
29
-
30
- function parseLite(code) {
31
- const trimmed = code.trim();
32
- const onMatch = trimmed.match(/^on\s+(\w+)(?:\s+from\s+([^\s]+))?\s+(.+)$/i);
33
- if (onMatch) {
34
- return {
35
- event: onMatch[1],
36
- filter: onMatch[2],
37
- commands: parseCommands(onMatch[3]),
38
- };
39
- }
40
- const everyMatch = trimmed.match(/^every\s+(\d+)(ms|s)?\s+(.+)$/i);
41
- if (everyMatch) {
42
- const ms = everyMatch[2] === 's' ? parseInt(everyMatch[1]) * 1000 : parseInt(everyMatch[1]);
43
- return {
44
- event: `interval:${ms}`,
45
- commands: parseCommands(everyMatch[3]),
46
- };
47
- }
48
- const initMatch = trimmed.match(/^init\s+(.+)$/i);
49
- if (initMatch) {
50
- return {
51
- event: 'init',
52
- commands: parseCommands(initMatch[1]),
53
- };
54
- }
55
- return parseCommands(trimmed);
56
- }
57
- function parseCommands(code) {
58
- const parts = code.split(/\s+(?:then|and)\s+/i);
59
- return parts.map(parseCommand).filter(Boolean);
60
- }
61
- function parseCommand(code) {
62
- const trimmed = code.trim();
63
- if (!trimmed)
64
- return null;
65
- let match = trimmed.match(/^toggle\s+(\.\w+|\w+)(?:\s+on\s+(.+))?$/i);
66
- if (match) {
67
- return { name: 'toggle', args: [match[1]], target: match[2] };
68
- }
69
- match = trimmed.match(/^add\s+(\.\w+|\w+)(?:\s+to\s+(.+))?$/i);
70
- if (match) {
71
- return { name: 'add', args: [match[1]], target: match[2] };
72
- }
73
- match = trimmed.match(/^remove\s+(\.\w+)(?:\s+from\s+(.+))?$/i);
74
- if (match) {
75
- return { name: 'remove', args: [match[1]], target: match[2] };
76
- }
77
- match = trimmed.match(/^remove\s+(.+)$/i);
78
- if (match) {
79
- return { name: 'remove', args: [], target: match[1] };
80
- }
81
- match = trimmed.match(/^put\s+(?:"([^"]+)"|'([^']+)'|(\S+))\s+(into|before|after)\s+(.+)$/i);
82
- if (match) {
83
- const content = match[1] || match[2] || match[3];
84
- return { name: 'put', args: [content], modifier: match[4], target: match[5] };
85
- }
86
- match = trimmed.match(/^set\s+(.+?)\s+to\s+(.+)$/i);
87
- if (match) {
88
- return { name: 'set', args: [match[1], match[2]] };
89
- }
90
- match = trimmed.match(/^log\s+(.+)$/i);
91
- if (match) {
92
- return { name: 'log', args: [match[1]] };
93
- }
94
- match = trimmed.match(/^send\s+(\w+)(?:\s+to\s+(.+))?$/i);
95
- if (match) {
96
- return { name: 'send', args: [match[1]], target: match[2] };
97
- }
98
- match = trimmed.match(/^wait\s+(\d+)(ms|s)?$/i);
99
- if (match) {
100
- const ms = match[2] === 's' ? parseInt(match[1]) * 1000 : parseInt(match[1]);
101
- return { name: 'wait', args: [ms.toString()] };
102
- }
103
- match = trimmed.match(/^(if|unless)\s+(.+?)\s+(toggle|add|remove|put|set|log|send|wait)\s+(.+)$/i);
104
- if (match) {
105
- const innerCmd = parseCommand(`${match[3]} ${match[4]}`);
106
- if (innerCmd) {
107
- innerCmd.modifier = match[1].toLowerCase();
108
- innerCmd.args.unshift(match[2]);
109
- return innerCmd;
110
- }
111
- }
112
- match = trimmed.match(/^(show|hide)(?:\s+(.+))?$/i);
113
- if (match) {
114
- const target = match[2];
115
- return match[1].toLowerCase() === 'show'
116
- ? { name: 'remove', args: ['.hidden'], target }
117
- : { name: 'add', args: ['.hidden'], target };
118
- }
119
- const parts = trimmed.split(/\s+/);
120
- if (parts.length > 0) {
121
- return { name: parts[0], args: parts.slice(1) };
122
- }
123
- return null;
124
- }
125
- const elementVars = new WeakMap();
126
- function elemScope(el) {
127
- let m = elementVars.get(el);
128
- if (!m) {
129
- m = new Map();
130
- elementVars.set(el, m);
131
- }
132
- return m;
133
- }
134
- function resolveTarget(target, me) {
135
- if (!target)
136
- return me;
137
- const t = target.trim();
138
- if (t === 'me')
139
- return me;
140
- if (t === 'body')
141
- return document.body;
142
- if (t.startsWith('#') || t.startsWith('.') || t.startsWith('[')) {
143
- const elements = document.querySelectorAll(t);
144
- return elements.length === 1 ? elements[0] : Array.from(elements);
145
- }
146
- if (/^\w+$/.test(t) && document.getElementById(t)) {
147
- return document.getElementById(t);
148
- }
149
- return me;
150
- }
151
- function getClassName(arg) {
152
- return arg.startsWith('.') ? arg.slice(1) : arg;
153
- }
154
- async function executeCommand(cmd, me, locals) {
155
- const target = resolveTarget(cmd.target, me);
156
- const elements = Array.isArray(target) ? target : target ? [target] : [me];
157
- switch (cmd.name) {
158
- case 'toggle': {
159
- const className = getClassName(cmd.args[0]);
160
- for (const el of elements) {
161
- el.classList.toggle(className);
162
- }
163
- return elements.length === 1 ? elements[0] : elements;
164
- }
165
- case 'add': {
166
- const className = getClassName(cmd.args[0]);
167
- for (const el of elements) {
168
- el.classList.add(className);
169
- }
170
- return elements.length === 1 ? elements[0] : elements;
171
- }
172
- case 'remove': {
173
- if (cmd.args[0]) {
174
- const className = getClassName(cmd.args[0]);
175
- for (const el of elements) {
176
- el.classList.remove(className);
177
- }
178
- }
179
- else {
180
- for (const el of elements) {
181
- el.remove();
182
- }
183
- }
184
- return null;
185
- }
186
- case 'put': {
187
- const content = evaluateValue(cmd.args[0], me);
188
- for (const el of elements) {
189
- switch (cmd.modifier?.toLowerCase()) {
190
- case 'into':
191
- el.innerHTML = String(content);
192
- break;
193
- case 'before':
194
- el.insertAdjacentHTML('beforebegin', String(content));
195
- break;
196
- case 'after':
197
- el.insertAdjacentHTML('afterend', String(content));
198
- break;
199
- default:
200
- el.innerHTML = String(content);
201
- }
202
- }
203
- return elements.length === 1 ? elements[0] : elements;
204
- }
205
- case 'set': {
206
- const [targetExpr, valueExpr] = cmd.args;
207
- const value = evaluateValue(valueExpr, me);
208
- if (targetExpr.startsWith(':')) {
209
- elemScope(me).set(targetExpr.slice(1), value);
210
- return value;
211
- }
212
- const propMatch = targetExpr.match(/^(.+?)(?:'s|\.)\s*(\w+)$/);
213
- if (propMatch) {
214
- const obj = resolveTarget(propMatch[1], me);
215
- if (obj) {
216
- obj[propMatch[2]] = value;
217
- return obj;
218
- }
219
- }
220
- return value;
221
- }
222
- case 'log': {
223
- const value = evaluateValue(cmd.args.join(' '), me);
224
- console.log(value);
225
- return value;
226
- }
227
- case 'send': {
228
- const eventName = cmd.args[0];
229
- const event = new CustomEvent(eventName, { bubbles: true });
230
- for (const el of elements) {
231
- el.dispatchEvent(event);
232
- }
233
- return event;
234
- }
235
- case 'wait': {
236
- const ms = parseInt(cmd.args[0]) || 0;
237
- await new Promise(resolve => setTimeout(resolve, ms));
238
- return ms;
239
- }
240
- default:
241
- console.error(`[hyperfixi] Unknown command "${cmd.name}" \u2014 not in this bundle. Use hyperfixi.js (full bundle).`);
242
- return null;
243
- }
244
- }
245
- function evaluateValue(expr, me, locals) {
246
- if (!expr)
247
- return undefined;
248
- const e = expr.trim();
249
- if ((e.startsWith('"') && e.endsWith('"')) || (e.startsWith("'") && e.endsWith("'"))) {
250
- return e.slice(1, -1);
251
- }
252
- if (/^-?\d+(\.\d+)?$/.test(e)) {
253
- return parseFloat(e);
254
- }
255
- if (e === 'true')
256
- return true;
257
- if (e === 'false')
258
- return false;
259
- if (e === 'null')
260
- return null;
261
- if (e.startsWith(':')) {
262
- return elemScope(me).get(e.slice(1));
263
- }
264
- if (e === 'me')
265
- return me;
266
- if (e === 'my')
267
- return me;
268
- if (e === 'body')
269
- return document.body;
270
- const propMatch = e.match(/^(me|my)\.(\w+)$/);
271
- if (propMatch) {
272
- return me[propMatch[2]];
273
- }
274
- return e;
275
- }
276
- async function executeParsed(parsed, me, locals = new Map()) {
277
- if (Array.isArray(parsed)) {
278
- let result;
279
- for (const cmd of parsed) {
280
- if (cmd.modifier === 'if' || cmd.modifier === 'unless') {
281
- const condition = evaluateCondition(cmd.args[0], me);
282
- const shouldRun = cmd.modifier === 'if' ? condition : !condition;
283
- if (!shouldRun)
284
- continue;
285
- cmd.args.shift();
286
- }
287
- result = await executeCommand(cmd, me);
288
- }
289
- return result;
290
- }
291
- const handler = parsed;
292
- const targetEl = handler.filter ? document.querySelector(handler.filter) : me;
293
- const eventName = handler.event;
294
- if (eventName.startsWith('interval:')) {
295
- const ms = parseInt(eventName.split(':')[1]);
296
- setInterval(async () => {
297
- new Map(locals);
298
- for (const cmd of handler.commands) {
299
- await executeCommand(cmd, me);
300
- }
301
- }, ms);
302
- return me;
303
- }
304
- if (eventName === 'init') {
305
- new Map(locals);
306
- for (const cmd of handler.commands) {
307
- await executeCommand(cmd, me);
308
- }
309
- return me;
310
- }
311
- if (targetEl) {
312
- targetEl.addEventListener(eventName, async (event) => {
313
- const handlerLocals = new Map(locals);
314
- handlerLocals.set('event', event);
315
- for (const cmd of handler.commands) {
316
- await executeCommand(cmd, me);
317
- }
318
- });
319
- }
320
- return me;
321
- }
322
- function evaluateCondition(expr, me, locals) {
323
- const e = expr.trim();
324
- const hasMatch = e.match(/^(me|my)\s+has\s+\.(\w+)$/i);
325
- if (hasMatch) {
326
- return me.classList.contains(hasMatch[2]);
327
- }
328
- const propMatch = e.match(/^(me|my)\.(\w+)$/i);
329
- if (propMatch) {
330
- return Boolean(me[propMatch[2]]);
331
- }
332
- if (e.startsWith(':')) {
333
- return Boolean(elemScope(me).get(e.slice(1)));
334
- }
335
- const value = evaluateValue(e, me);
336
- return Boolean(value);
337
- }
338
- const processElements = createProcessElements(parseLite, executeParsed, 'Lite');
339
- const api = {
340
- version: '1.0.0-lite',
341
- parse: parseLite,
342
- execute: async (code, element) => executeParsed(parseLite(code), element || document.body),
343
- init: processElements,
344
- process: processElements,
345
- commands: ['add', 'remove', 'toggle', 'put', 'set', 'log', 'send', 'wait'],
346
- };
347
- installBundleGlobal(api, processElements);
348
-
349
- class RegexParserImpl {
350
- constructor() {
351
- this.name = 'regex';
352
- this.supportedCommands = [
353
- 'add',
354
- 'remove',
355
- 'toggle',
356
- 'put',
357
- 'set',
358
- 'log',
359
- 'send',
360
- 'wait',
361
- ];
362
- }
363
- parse(code) {
364
- const result = api.parse(code);
365
- if ('event' in result) {
366
- return {
367
- type: 'eventHandler',
368
- event: result.event,
369
- filter: result.filter,
370
- commands: result.commands.map(cmd => this.convertCommand(cmd)),
371
- };
372
- }
373
- if (Array.isArray(result)) {
374
- if (result.length === 1) {
375
- return this.convertCommand(result[0]);
376
- }
377
- return {
378
- type: 'sequence',
379
- commands: result.map(cmd => this.convertCommand(cmd)),
380
- };
381
- }
382
- return this.convertCommand(result);
383
- }
384
- convertCommand(cmd) {
385
- return {
386
- type: 'command',
387
- name: cmd.name,
388
- args: cmd.args.map(arg => ({
389
- type: 'literal',
390
- value: arg,
391
- })),
392
- ...(cmd.target && {
393
- target: {
394
- type: 'selector',
395
- value: cmd.target,
396
- },
397
- }),
398
- };
399
- }
400
- parseCommands(code) {
401
- const result = this.parse(code);
402
- if (result.type === 'sequence' && 'commands' in result) {
403
- return result.commands;
404
- }
405
- return [result];
406
- }
407
- supports(syntax) {
408
- const firstWord = syntax.trim().split(/\s+/)[0]?.toLowerCase();
409
- if (firstWord === 'on' || firstWord === 'every' || firstWord === 'init') {
410
- return true;
411
- }
412
- return this.supportedCommands.includes(firstWord);
413
- }
414
- }
415
- const regexParser = new RegexParserImpl();
416
- function createRegexParser() {
417
- return new RegexParserImpl();
418
- }
419
-
420
- exports.createRegexParser = createRegexParser;
421
- exports.regexParser = regexParser;
422
- //# sourceMappingURL=regex-parser.cjs.map
@@ -1,4 +0,0 @@
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