@hyperfixi/core 3.1.1 → 3.3.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 (97) hide show
  1. package/README.md +28 -36
  2. package/dist/ast/command-slots.d.ts +1 -1
  3. package/dist/ast/nodes.d.ts +2 -0
  4. package/dist/ast-utils/index.cjs +193 -48
  5. package/dist/ast-utils/index.mjs +193 -48
  6. package/dist/ast-utils/interchange/types.d.ts +19 -1
  7. package/dist/behaviors/index.cjs +19 -0
  8. package/dist/behaviors/index.mjs +19 -0
  9. package/dist/bundle-generator/index.cjs +36 -17
  10. package/dist/bundle-generator/index.mjs +36 -17
  11. package/dist/bundle-generator/parser-templates.d.ts +1 -1
  12. package/dist/chunks/bridge-CI9SOl8u.js +2 -0
  13. package/dist/chunks/browser-modular-7CpI5VF2.js +2 -0
  14. package/dist/chunks/index-BwXDEK0m.js +2 -0
  15. package/dist/chunks/index-DQi2o8Lk.js +2 -0
  16. package/dist/chunks/index-uCOQ8Qn0.js +2 -0
  17. package/dist/commands/animation/transition.d.ts +12 -6
  18. package/dist/commands/helpers/loop-executor.d.ts +2 -2
  19. package/dist/commands/helpers/numeric-target-parser.d.ts +1 -1
  20. package/dist/commands/helpers/variable-access.d.ts +5 -2
  21. package/dist/commands/helpers/write-target.d.ts +5 -0
  22. package/dist/commands/index.cjs +938 -425
  23. package/dist/commands/index.mjs +938 -425
  24. package/dist/commands/templates/render.d.ts +4 -4
  25. package/dist/commands/utility/beep.d.ts +0 -3
  26. package/dist/expressions/index.cjs +7 -13
  27. package/dist/expressions/index.mjs +7 -13
  28. package/dist/htmx/i18n-hooks.d.ts +4 -1
  29. package/dist/hyperfixi-browser-classic-i18n.js +1 -1
  30. package/dist/hyperfixi-browser.js +1 -1
  31. package/dist/hyperfixi-classic-i18n.js +1 -1
  32. package/dist/hyperfixi-hx-v4.js +1 -1
  33. package/dist/hyperfixi-hx.js +1 -1
  34. package/dist/hyperfixi-hybrid-complete.js +1 -1
  35. package/dist/hyperfixi-hybrid-hx.js +1 -1
  36. package/dist/hyperfixi-multilingual.js +1 -1
  37. package/dist/hyperfixi.js +1 -1
  38. package/dist/hyperfixi.mjs +1 -1
  39. package/dist/index.cjs +1149 -485
  40. package/dist/index.min.js +1 -1
  41. package/dist/index.mjs +1149 -485
  42. package/dist/lib/swap-executor.d.ts +1 -1
  43. package/dist/lokascript-browser-classic-i18n.js +1 -1
  44. package/dist/lokascript-browser.js +1 -1
  45. package/dist/lokascript-hybrid-complete.js +1 -1
  46. package/dist/lokascript-hybrid-hx.js +1 -1
  47. package/dist/lokascript-multilingual.js +1 -1
  48. package/dist/metadata.cjs +9 -9
  49. package/dist/metadata.d.ts +1 -1
  50. package/dist/metadata.mjs +9 -9
  51. package/dist/parser/command-grammar.d.ts +1 -0
  52. package/dist/parser/full-parser.cjs +396 -153
  53. package/dist/parser/full-parser.mjs +396 -153
  54. package/dist/parser/helpers/parsing-helpers.d.ts +3 -0
  55. package/dist/parser/hybrid/index.cjs +3 -0
  56. package/dist/parser/hybrid/index.mjs +3 -0
  57. package/dist/parser/hybrid/parser-core.cjs +3 -0
  58. package/dist/parser/hybrid/parser-core.mjs +3 -0
  59. package/dist/parser/hybrid-parser.cjs +3 -0
  60. package/dist/parser/hybrid-parser.mjs +3 -0
  61. package/dist/parser/parser-types.d.ts +2 -0
  62. package/dist/parser/parser.d.ts +9 -0
  63. package/dist/parser/pratt-parser.d.ts +2 -0
  64. package/dist/registry/index.cjs +535 -210
  65. package/dist/registry/index.mjs +535 -210
  66. package/dist/utils/beep.d.ts +8 -0
  67. package/dist/version.d.ts +1 -1
  68. package/package.json +21 -18
  69. package/vocab/htmx/ar.js +22 -20
  70. package/vocab/htmx/bn.js +21 -5
  71. package/vocab/htmx/de.js +33 -10
  72. package/vocab/htmx/en.js +4 -1
  73. package/vocab/htmx/es.js +28 -9
  74. package/vocab/htmx/fr.js +28 -8
  75. package/vocab/htmx/he.js +22 -1
  76. package/vocab/htmx/hi.js +28 -7
  77. package/vocab/htmx/id.js +29 -10
  78. package/vocab/htmx/it.js +26 -5
  79. package/vocab/htmx/ja.js +36 -11
  80. package/vocab/htmx/ko.js +27 -6
  81. package/vocab/htmx/ms.js +24 -1
  82. package/vocab/htmx/pl.js +27 -7
  83. package/vocab/htmx/pt.js +30 -9
  84. package/vocab/htmx/qu.js +32 -9
  85. package/vocab/htmx/ru.js +28 -6
  86. package/vocab/htmx/sw.js +28 -8
  87. package/vocab/htmx/th.js +19 -1
  88. package/vocab/htmx/tl.js +24 -1
  89. package/vocab/htmx/tr.js +34 -8
  90. package/vocab/htmx/uk.js +28 -6
  91. package/vocab/htmx/vi.js +27 -19
  92. package/vocab/htmx/zh.js +28 -9
  93. package/dist/chunks/bridge-D7qrHhV0.js +0 -2
  94. package/dist/chunks/browser-modular-C4LFxfoS.js +0 -2
  95. package/dist/chunks/index-C7lqD4mo.js +0 -2
  96. package/dist/chunks/index-CAPhqA6k.js +0 -2
  97. package/dist/chunks/index-CLdRyZaP.js +0 -2
package/vocab/htmx/sw.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // Auto-generated by packages/core/scripts/gen-htmx-vocab.mjs — do not edit by hand.
2
2
  // Localized htmx-compat attribute vocab for language: sw
3
- // Re-generate after editing packages/semantic/src/generators/profiles/swahili.ts
3
+ // Re-generate after editing packages/core/scripts/htmx-attr-vocab.mjs,
4
+ // packages/semantic/src/generators/profiles/swahili.ts
4
5
  // or packages/i18n/src/dictionaries/sw.ts.
6
+ // Several names may map to one canonical: the first is the primary (the form
7
+ // to teach), later ones are aliases kept so already-authored pages still work.
5
8
  (function () {
6
9
  if (typeof window === 'undefined' || !window.__hyperfixi_i18n) {
7
10
  if (typeof console !== 'undefined') {
@@ -16,39 +19,56 @@
16
19
  hyperfixi: {
17
20
  attrs: {
18
21
  "hx-pata": "hx-get",
22
+ "hx-chapisha": "hx-post",
19
23
  "hx-weka": "hx-put",
24
+ "hx-futa": "hx-delete",
20
25
  "hx-lengo": "hx-target",
26
+ "hx-badilisha": "hx-swap",
21
27
  "hx-badilishana": "hx-swap",
28
+ "hx-kichocheo": "hx-trigger",
22
29
  "hx-chochea": "hx-trigger",
30
+ "hx-thibitisha": "hx-confirm",
31
+ "hx-harakisha": "hx-boost",
32
+ "hx-thamani": "hx-vals",
33
+ "hx-sukuma-url": "hx-push-url",
23
34
  "hx-unapo": "hx-on",
24
35
  "hx-moja-kwa-moja": "hx-live",
36
+ "hx-kiashiria": "hx-indicator",
37
+ "hx-jumuisha": "hx-include",
38
+ "hx-uteuzi": "hx-select",
39
+ "hx-badilisha-oob": "hx-swap-oob",
40
+ "hx-sawazisha": "hx-sync",
25
41
  "sse-unganisha": "sse-connect",
42
+ "sse-badilisha": "sse-swap",
26
43
  "sse-badilishana": "sse-swap",
27
44
  "ws-unganisha": "ws-connect",
28
45
  "ws-tuma": "ws-send"
29
46
  },
30
47
  events: {
48
+ "tafuta": "search",
31
49
  "bonyeza": "click",
32
- "bonyeza_mara_mbili": "dblclick",
33
50
  "panya_shuka": "mousedown",
34
- "panya_juu": "mouseover",
51
+ "panya_juu": "mouseup",
35
52
  "panya_ingia": "mouseenter",
36
53
  "panya_toka": "mouseleave",
37
54
  "panya_nje": "mouseout",
38
55
  "panya_sogea": "mousemove",
39
56
  "kitufe_shuka": "keydown",
40
57
  "kitufe_juu": "keyup",
41
- "kitufe_bonyeza": "keypress",
42
- "zingatia": "focus",
43
- "poteza_macho": "blur",
44
- "badilisha": "change",
58
+ "lenga": "focus",
59
+ "kubadilisha": "change",
45
60
  "ingizo": "input",
46
61
  "wasilisha": "submit",
47
- "weka_upya": "reset",
48
62
  "pakia": "load",
49
63
  "shuka": "unload",
50
64
  "badilisha_ukubwa": "resize",
51
65
  "sogeza": "scroll",
66
+ "bonyeza_mara_mbili": "dblclick",
67
+ "kitufe_bonyeza": "keypress",
68
+ "zingatia": "focus",
69
+ "poteza_macho": "blur",
70
+ "badilisha": "change",
71
+ "weka_upya": "reset",
52
72
  "gusa_anza": "touchstart",
53
73
  "gusa_mwisho": "touchend",
54
74
  "gusa_sogea": "touchmove",
package/vocab/htmx/th.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // Auto-generated by packages/core/scripts/gen-htmx-vocab.mjs — do not edit by hand.
2
2
  // Localized htmx-compat attribute vocab for language: th
3
- // Re-generate after editing packages/semantic/src/generators/profiles/thai.ts
3
+ // Re-generate after editing packages/core/scripts/htmx-attr-vocab.mjs,
4
+ // packages/semantic/src/generators/profiles/thai.ts
4
5
  // or packages/i18n/src/dictionaries/th.ts.
6
+ // Several names may map to one canonical: the first is the primary (the form
7
+ // to teach), later ones are aliases kept so already-authored pages still work.
5
8
  (function () {
6
9
  if (typeof window === 'undefined' || !window.__hyperfixi_i18n) {
7
10
  if (typeof console !== 'undefined') {
@@ -16,18 +19,33 @@
16
19
  hyperfixi: {
17
20
  attrs: {
18
21
  "hx-รับค่า": "hx-get",
22
+ "hx-โพสต์": "hx-post",
19
23
  "hx-ใส่": "hx-put",
24
+ "hx-ลบ": "hx-delete",
20
25
  "hx-เป้าหมาย": "hx-target",
21
26
  "hx-สลับที่": "hx-swap",
27
+ "hx-สลับ": "hx-swap",
22
28
  "hx-ทริกเกอร์": "hx-trigger",
29
+ "hx-ยืนยัน": "hx-confirm",
30
+ "hx-เร่ง": "hx-boost",
31
+ "hx-ค่า": "hx-vals",
32
+ "hx-ดัน-url": "hx-push-url",
23
33
  "hx-เมื่อ": "hx-on",
24
34
  "hx-ไลฟ์": "hx-live",
35
+ "hx-ตัวบ่งชี้": "hx-indicator",
36
+ "hx-รวม": "hx-include",
37
+ "hx-เลือก": "hx-select",
38
+ "hx-สลับที่-oob": "hx-swap-oob",
39
+ "hx-ซิงค์": "hx-sync",
25
40
  "sse-เชื่อมต่อ": "sse-connect",
26
41
  "sse-สลับที่": "sse-swap",
42
+ "sse-สลับ": "sse-swap",
27
43
  "ws-เชื่อมต่อ": "ws-connect",
28
44
  "ws-ส่ง": "ws-send"
29
45
  },
30
46
  events: {
47
+ "ค้นหา": "search",
48
+ "เมาส์เข้ามา": "mouseenter",
31
49
  "คลิก": "click",
32
50
  "เปลี่ยนแปลง": "change",
33
51
  "อินพุต": "input",
package/vocab/htmx/tl.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // Auto-generated by packages/core/scripts/gen-htmx-vocab.mjs — do not edit by hand.
2
2
  // Localized htmx-compat attribute vocab for language: tl
3
- // Re-generate after editing packages/semantic/src/generators/profiles/tagalog.ts
3
+ // Re-generate after editing packages/core/scripts/htmx-attr-vocab.mjs,
4
+ // packages/semantic/src/generators/profiles/tagalog.ts
4
5
  // or packages/i18n/src/dictionaries/tl.ts.
6
+ // Several names may map to one canonical: the first is the primary (the form
7
+ // to teach), later ones are aliases kept so already-authored pages still work.
5
8
  (function () {
6
9
  if (typeof window === 'undefined' || !window.__hyperfixi_i18n) {
7
10
  if (typeof console !== 'undefined') {
@@ -16,16 +19,36 @@
16
19
  hyperfixi: {
17
20
  attrs: {
18
21
  "hx-kunin": "hx-get",
22
+ "hx-ilathala": "hx-post",
19
23
  "hx-ilagay": "hx-put",
24
+ "hx-burahin": "hx-delete",
25
+ "hx-palit": "hx-swap",
20
26
  "hx-palitan_pwesto": "hx-swap",
27
+ "hx-pampukaw": "hx-trigger",
21
28
  "hx-palitawin": "hx-trigger",
29
+ "hx-kumpirmahin": "hx-confirm",
30
+ "hx-pabilisin": "hx-boost",
31
+ "hx-halaga": "hx-vals",
32
+ "hx-itulak-url": "hx-push-url",
22
33
  "hx-kapag": "hx-on",
34
+ "hx-indikador": "hx-indicator",
35
+ "hx-isama": "hx-include",
36
+ "hx-pilian": "hx-select",
37
+ "hx-palit-oob": "hx-swap-oob",
38
+ "hx-pagsabay": "hx-sync",
23
39
  "sse-ikonekta": "sse-connect",
40
+ "sse-palit": "sse-swap",
24
41
  "sse-palitan_pwesto": "sse-swap",
25
42
  "ws-ikonekta": "ws-connect",
26
43
  "ws-ipadala": "ws-send"
27
44
  },
28
45
  events: {
46
+ "pindot": "click",
47
+ "bitaw-tiklado": "keyup",
48
+ "pagbabago": "change",
49
+ "karga": "load",
50
+ "pasok-mouse": "mouseenter",
51
+ "hanap": "search",
29
52
  "bawat": "every"
30
53
  },
31
54
  },
package/vocab/htmx/tr.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // Auto-generated by packages/core/scripts/gen-htmx-vocab.mjs — do not edit by hand.
2
2
  // Localized htmx-compat attribute vocab for language: tr
3
- // Re-generate after editing packages/semantic/src/generators/profiles/turkish.ts
3
+ // Re-generate after editing packages/core/scripts/htmx-attr-vocab.mjs,
4
+ // packages/semantic/src/generators/profiles/turkish.ts
4
5
  // or packages/i18n/src/dictionaries/tr.ts.
6
+ // Several names may map to one canonical: the first is the primary (the form
7
+ // to teach), later ones are aliases kept so already-authored pages still work.
5
8
  (function () {
6
9
  if (typeof window === 'undefined' || !window.__hyperfixi_i18n) {
7
10
  if (typeof console !== 'undefined') {
@@ -16,19 +19,49 @@
16
19
  hyperfixi: {
17
20
  attrs: {
18
21
  "hx-al": "hx-get",
22
+ "hx-gönder": "hx-post",
19
23
  "hx-koy": "hx-put",
24
+ "hx-sil": "hx-delete",
20
25
  "hx-hedef": "hx-target",
26
+ "hx-değiştirme": "hx-swap",
21
27
  "hx-takas": "hx-swap",
28
+ "hx-tetikleyici": "hx-trigger",
22
29
  "hx-tetikle": "hx-trigger",
30
+ "hx-onayla": "hx-confirm",
31
+ "hx-hızlandır": "hx-boost",
32
+ "hx-değerler": "hx-vals",
33
+ "hx-itele-url": "hx-push-url",
23
34
  "hx-üzerinde": "hx-on",
24
35
  "hx-canlı": "hx-live",
36
+ "hx-gösterge": "hx-indicator",
37
+ "hx-içer": "hx-include",
38
+ "hx-seçim": "hx-select",
39
+ "hx-değiştirme-oob": "hx-swap-oob",
40
+ "hx-eşitle": "hx-sync",
25
41
  "sse-bağlan": "sse-connect",
42
+ "sse-değiştirme": "sse-swap",
26
43
  "sse-takas": "sse-swap",
27
44
  "ws-bağlan": "ws-connect",
28
45
  "ws-gönder": "ws-send"
29
46
  },
30
47
  events: {
48
+ "arama": "search",
31
49
  "tıklama": "click",
50
+ "farebas": "mousedown",
51
+ "farebırak": "mouseup",
52
+ "fareiçinde": "mouseover",
53
+ "faredışında": "mouseout",
54
+ "tuşbasma": "keydown",
55
+ "tuşbırakma": "keyup",
56
+ "odak": "focus",
57
+ "bulanık": "blur",
58
+ "değişim": "change",
59
+ "giriş": "input",
60
+ "gönderme": "submit",
61
+ "sıfırla": "reset",
62
+ "yükle": "load",
63
+ "boyutlandırma": "resize",
64
+ "kaydır": "scroll",
32
65
  "çift_tıklama": "dblclick",
33
66
  "fare_bas": "mousedown",
34
67
  "fare_bırak": "mouseup",
@@ -40,16 +73,9 @@
40
73
  "tuş_bas": "keydown",
41
74
  "tuş_bırak": "keyup",
42
75
  "tuş_basım": "keypress",
43
- "odak": "focus",
44
- "bulanık": "blur",
45
- "değişim": "change",
46
- "giriş": "input",
47
76
  "gönder": "submit",
48
- "sıfırla": "reset",
49
- "yükle": "load",
50
77
  "yükle_kaldır": "unload",
51
78
  "boyut_değiştir": "resize",
52
- "kaydır": "scroll",
53
79
  "dokunma_başla": "touchstart",
54
80
  "dokunma_bitir": "touchend",
55
81
  "dokunma_hareket": "touchmove",
package/vocab/htmx/uk.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // Auto-generated by packages/core/scripts/gen-htmx-vocab.mjs — do not edit by hand.
2
2
  // Localized htmx-compat attribute vocab for language: uk
3
- // Re-generate after editing packages/semantic/src/generators/profiles/ukrainian.ts
3
+ // Re-generate after editing packages/core/scripts/htmx-attr-vocab.mjs,
4
+ // packages/semantic/src/generators/profiles/ukrainian.ts
4
5
  // or packages/i18n/src/dictionaries/uk.ts.
6
+ // Several names may map to one canonical: the first is the primary (the form
7
+ // to teach), later ones are aliases kept so already-authored pages still work.
5
8
  (function () {
6
9
  if (typeof window === 'undefined' || !window.__hyperfixi_i18n) {
7
10
  if (typeof console !== 'undefined') {
@@ -16,22 +19,37 @@
16
19
  hyperfixi: {
17
20
  attrs: {
18
21
  "hx-отримати": "hx-get",
22
+ "hx-опублікувати": "hx-post",
19
23
  "hx-покласти": "hx-put",
24
+ "hx-видалити": "hx-delete",
20
25
  "hx-ціль": "hx-target",
26
+ "hx-обмін": "hx-swap",
21
27
  "hx-поміняти": "hx-swap",
28
+ "hx-тригер": "hx-trigger",
22
29
  "hx-ініціювати": "hx-trigger",
30
+ "hx-підтвердити": "hx-confirm",
31
+ "hx-прискорити": "hx-boost",
32
+ "hx-значення": "hx-vals",
33
+ "hx-історія-url": "hx-push-url",
23
34
  "hx-при": "hx-on",
24
35
  "hx-наживо": "hx-live",
36
+ "hx-індикатор": "hx-indicator",
37
+ "hx-включити": "hx-include",
38
+ "hx-вибір": "hx-select",
39
+ "hx-обмін-oob": "hx-swap-oob",
40
+ "hx-синхронізація": "hx-sync",
25
41
  "sse-підключити": "sse-connect",
42
+ "sse-обмін": "sse-swap",
26
43
  "sse-поміняти": "sse-swap",
27
44
  "ws-підключити": "ws-connect",
28
45
  "ws-надіслати": "ws-send"
29
46
  },
30
47
  events: {
48
+ "пошук": "search",
31
49
  "клік": "click",
32
50
  "подвійний_клік": "dblclick",
33
- "миша_вниз": "mousedown",
34
- "миша_вгору": "mouseup",
51
+ "мишавниз": "mousedown",
52
+ "мишавгору": "mouseup",
35
53
  "миша_вхід": "mouseenter",
36
54
  "миша_вихід": "mouseleave",
37
55
  "наведення": "mouseover",
@@ -45,15 +63,19 @@
45
63
  "зміна": "change",
46
64
  "введення": "input",
47
65
  "надсилання": "submit",
48
- "скидання": "reset",
66
+ "скинути": "reset",
49
67
  "завантаження": "load",
50
68
  "вивантаження": "unload",
51
- "зміна_розміру": "resize",
69
+ "змінарозміру": "resize",
52
70
  "прокрутка": "scroll",
53
71
  "дотик_початок": "touchstart",
54
72
  "дотик_кінець": "touchend",
55
73
  "дотик_рух": "touchmove",
56
- "дотик_скасування": "touchcancel"
74
+ "дотик_скасування": "touchcancel",
75
+ "миша_вниз": "mousedown",
76
+ "миша_вгору": "mouseup",
77
+ "скидання": "reset",
78
+ "зміна_розміру": "resize"
57
79
  },
58
80
  },
59
81
  });
package/vocab/htmx/vi.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // Auto-generated by packages/core/scripts/gen-htmx-vocab.mjs — do not edit by hand.
2
2
  // Localized htmx-compat attribute vocab for language: vi
3
- // Re-generate after editing packages/semantic/src/generators/profiles/vietnamese.ts
3
+ // Re-generate after editing packages/core/scripts/htmx-attr-vocab.mjs,
4
+ // packages/semantic/src/generators/profiles/vietnamese.ts
4
5
  // or packages/i18n/src/dictionaries/vi.ts.
6
+ // Several names may map to one canonical: the first is the primary (the form
7
+ // to teach), later ones are aliases kept so already-authored pages still work.
5
8
  (function () {
6
9
  if (typeof window === 'undefined' || !window.__hyperfixi_i18n) {
7
10
  if (typeof console !== 'undefined') {
@@ -15,36 +18,41 @@
15
18
  window.__hyperfixi_i18n.register('vi', {
16
19
  hyperfixi: {
17
20
  attrs: {
18
- "hx-lấy giá trị": "hx-get",
21
+ "hx-lấy-giá-trị": "hx-get",
22
+ "hx-đăng": "hx-post",
19
23
  "hx-đặt": "hx-put",
20
- "hx-mục tiêu": "hx-target",
21
- "hx-hoán đổi": "hx-swap",
22
- "hx-kích hoạt": "hx-trigger",
24
+ "hx-xóa": "hx-delete",
25
+ "hx-mục-tiêu": "hx-target",
26
+ "hx-hoán-đổi": "hx-swap",
27
+ "hx-kích-hoạt": "hx-trigger",
28
+ "hx-xác-nhận": "hx-confirm",
29
+ "hx-tăng-tốc": "hx-boost",
30
+ "hx-giá-trị": "hx-vals",
31
+ "hx-đẩy-url": "hx-push-url",
23
32
  "hx-khi": "hx-on",
24
33
  "hx-trực-tiếp": "hx-live",
34
+ "hx-chỉ-báo": "hx-indicator",
35
+ "hx-bao-gồm": "hx-include",
36
+ "hx-chọn": "hx-select",
37
+ "hx-hoán-đổi-oob": "hx-swap-oob",
38
+ "hx-đồng-bộ": "hx-sync",
25
39
  "sse-kết-nối": "sse-connect",
26
- "sse-hoán đổi": "sse-swap",
40
+ "sse-hoán-đổi": "sse-swap",
27
41
  "ws-kết-nối": "ws-connect",
28
42
  "ws-gửi": "ws-send"
29
43
  },
30
44
  events: {
45
+ "tìm-kiếm": "search",
46
+ "nhả-phím": "keyup",
47
+ "thay-đổi": "change",
48
+ "chuột-vào": "mouseenter",
31
49
  "nhấp": "click",
32
- "nhấp đúp": "dblclick",
33
50
  "nhập": "input",
34
- "thay đổi": "change",
51
+ "nộp": "submit",
52
+ "cuộn": "scroll",
35
53
  "gửi": "submit",
36
- "phím xuống": "keydown",
37
- "phím lên": "keyup",
38
- "nhấn phím": "keypress",
39
- "chuột vào": "mouseenter",
40
- "chuột ra": "mouseout",
41
- "chuột rời": "mouseleave",
42
- "tập trung": "focus",
43
- "mất tập trung": "blur",
44
54
  "đặt-lại": "reset",
45
- "tải": "load",
46
- "cuộn": "scroll",
47
- "đổi kích thước": "resize"
55
+ "tải": "load"
48
56
  },
49
57
  },
50
58
  });
package/vocab/htmx/zh.js CHANGED
@@ -1,7 +1,10 @@
1
1
  // Auto-generated by packages/core/scripts/gen-htmx-vocab.mjs — do not edit by hand.
2
2
  // Localized htmx-compat attribute vocab for language: zh
3
- // Re-generate after editing packages/semantic/src/generators/profiles/chinese.ts
3
+ // Re-generate after editing packages/core/scripts/htmx-attr-vocab.mjs,
4
+ // packages/semantic/src/generators/profiles/chinese.ts
4
5
  // or packages/i18n/src/dictionaries/zh.ts.
6
+ // Several names may map to one canonical: the first is the primary (the form
7
+ // to teach), later ones are aliases kept so already-authored pages still work.
5
8
  (function () {
6
9
  if (typeof window === 'undefined' || !window.__hyperfixi_i18n) {
7
10
  if (typeof console !== 'undefined') {
@@ -16,30 +19,39 @@
16
19
  hyperfixi: {
17
20
  attrs: {
18
21
  "hx-获取": "hx-get",
22
+ "hx-发布": "hx-post",
19
23
  "hx-放置": "hx-put",
24
+ "hx-删除": "hx-delete",
20
25
  "hx-目标": "hx-target",
26
+ "hx-替换": "hx-swap",
21
27
  "hx-交换": "hx-swap",
22
28
  "hx-触发": "hx-trigger",
29
+ "hx-确认": "hx-confirm",
30
+ "hx-增强": "hx-boost",
31
+ "hx-值": "hx-vals",
32
+ "hx-推送-url": "hx-push-url",
23
33
  "hx-当": "hx-on",
24
34
  "hx-实时": "hx-live",
35
+ "hx-指示器": "hx-indicator",
36
+ "hx-包含": "hx-include",
37
+ "hx-选择": "hx-select",
38
+ "hx-替换-oob": "hx-swap-oob",
39
+ "hx-同步": "hx-sync",
25
40
  "sse-连接": "sse-connect",
41
+ "sse-替换": "sse-swap",
26
42
  "sse-交换": "sse-swap",
27
43
  "ws-连接": "ws-connect",
28
44
  "ws-发送": "ws-send"
29
45
  },
30
46
  events: {
47
+ "搜索": "search",
31
48
  "点击": "click",
32
49
  "双击": "dblclick",
33
- "鼠标按下": "mousedown",
34
- "鼠标抬起": "mouseup",
35
- "鼠标进入": "mouseenter",
36
- "鼠标离开": "mouseleave",
37
- "鼠标悬停": "mouseover",
50
+ "鼠标移入": "mouseover",
38
51
  "鼠标移出": "mouseout",
39
52
  "鼠标移动": "mousemove",
40
53
  "按键按下": "keydown",
41
- "按键抬起": "keyup",
42
- "按键": "keypress",
54
+ "松键": "keyup",
43
55
  "聚焦": "focus",
44
56
  "失焦": "blur",
45
57
  "改变": "change",
@@ -51,8 +63,15 @@
51
63
  "调整大小": "resize",
52
64
  "滚动": "scroll",
53
65
  "触摸开始": "touchstart",
54
- "触摸结束": "touchend",
55
66
  "触摸移动": "touchmove",
67
+ "鼠标按下": "mousedown",
68
+ "鼠标抬起": "mouseup",
69
+ "鼠标进入": "mouseenter",
70
+ "鼠标离开": "mouseleave",
71
+ "鼠标悬停": "mouseover",
72
+ "按键抬起": "keyup",
73
+ "按键": "keypress",
74
+ "触摸结束": "touchend",
56
75
  "触摸取消": "touchcancel"
57
76
  },
58
77
  },
@@ -1,2 +0,0 @@
1
- import{D as n,d as e}from"./browser-modular-C4LFxfoS.js";function i(n){const e=n.diagnostics;return e?.length?e.filter(n=>"unconsumed-input"===n.code).map(n=>n.message):[]}let t=null;async function a(){return t||(t=await import("./index-C7lqD4mo.js")),t}class s{constructor(e={}){this._initialized=!1,this.config={confidenceThreshold:e.confidenceThreshold??n,fallbackOnLowConfidence:e.fallbackOnLowConfidence??!0}}async initialize(){await a(),this._initialized=!0}isInitialized(){return this._initialized}async transform(n,e,i){if(this.isInitialized()||await this.initialize(),e===i)return{output:n,usedSemantic:!1,confidence:1,sourceLang:e,targetLang:i};const t=await a();try{const a=t.translate(n,e,i);if(a!==n)return{output:a,usedSemantic:!0,confidence:.9,sourceLang:e,targetLang:i}}catch{}return{output:n,usedSemantic:!1,confidence:0,sourceLang:e,targetLang:i}}async parse(n,e){this.isInitialized()||await this.initialize();return(await a()).parseSemantic(n,e).node??null}async render(n,e){return(await a()).render(n,e)}async parseToAST(n,e){this.isInitialized()||await this.initialize();const i=await a(),t=i.parseSemantic(n,e);if(t.confidence>=this.config.confidenceThreshold&&t.node)try{return i.buildAST(t.node).ast}catch(n){}return null}async parseToASTWithDetails(n,e){this.isInitialized()||await this.initialize();const t=await a(),s=t.parseSemantic(n,e);if(s.confidence>=this.config.confidenceThreshold&&s.node)try{const n=t.buildAST(s.node);return{ast:n.ast,usedDirectPath:!0,confidence:s.confidence,lang:e,fallbackText:null,warnings:[...n.warnings??[],...i(s.node)]}}catch{}if(s.node&&this.config.fallbackOnLowConfidence){const n=t.render(s.node,"en");return{ast:null,usedDirectPath:!1,confidence:s.confidence,lang:e,fallbackText:n}}return{ast:null,usedDirectPath:!1,confidence:s.confidence,lang:e,fallbackText:null}}async getAllTranslations(n,e){const i=(await a()).getSupportedLanguages(),t={};for(const a of i)t[a]=await this.transform(n,e,a);return t}}function c(n){return{name:"semantic-bridge",parseToAST:(e,i)=>n.parseToASTWithDetails(e,i),parse:(e,i)=>n.parse(e,i),render:(e,i)=>n.render(e,i)}}export{s as SemanticGrammarBridge,c as createBridgeFrontEnd};
2
- //# sourceMappingURL=bridge-D7qrHhV0.js.map