@lokascript/core 1.1.0 → 1.1.2

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 (46) hide show
  1. package/dist/behaviors/index.js +1151 -0
  2. package/dist/behaviors/index.js.map +1 -0
  3. package/dist/behaviors/index.mjs +1141 -0
  4. package/dist/behaviors/index.mjs.map +1 -0
  5. package/dist/commands/index.js +9080 -0
  6. package/dist/commands/index.js.map +1 -0
  7. package/dist/commands/index.mjs +8922 -0
  8. package/dist/commands/index.mjs.map +1 -0
  9. package/dist/expressions/index.js +6484 -0
  10. package/dist/expressions/index.js.map +1 -0
  11. package/dist/expressions/index.mjs +6466 -0
  12. package/dist/expressions/index.mjs.map +1 -0
  13. package/dist/metadata.js +378 -0
  14. package/dist/metadata.js.map +1 -0
  15. package/dist/metadata.mjs +368 -0
  16. package/dist/metadata.mjs.map +1 -0
  17. package/dist/parser/full-parser.js +6408 -0
  18. package/dist/parser/full-parser.js.map +1 -0
  19. package/dist/parser/full-parser.mjs +6405 -0
  20. package/dist/parser/full-parser.mjs.map +1 -0
  21. package/dist/parser/regex-parser.js +412 -0
  22. package/dist/parser/regex-parser.js.map +1 -0
  23. package/dist/parser/regex-parser.mjs +409 -0
  24. package/dist/parser/regex-parser.mjs.map +1 -0
  25. package/dist/reference/index.js +602 -0
  26. package/dist/reference/index.js.map +1 -0
  27. package/dist/reference/index.mjs +593 -0
  28. package/dist/reference/index.mjs.map +1 -0
  29. package/dist/registry/browser-types.js +81 -0
  30. package/dist/registry/browser-types.js.map +1 -0
  31. package/dist/registry/browser-types.mjs +76 -0
  32. package/dist/registry/browser-types.mjs.map +1 -0
  33. package/dist/registry/environment.js +36 -0
  34. package/dist/registry/environment.js.map +1 -0
  35. package/dist/registry/environment.mjs +30 -0
  36. package/dist/registry/environment.mjs.map +1 -0
  37. package/dist/registry/index.js +7111 -0
  38. package/dist/registry/index.js.map +1 -0
  39. package/dist/registry/index.mjs +7087 -0
  40. package/dist/registry/index.mjs.map +1 -0
  41. package/dist/registry/universal-types.js +91 -0
  42. package/dist/registry/universal-types.js.map +1 -0
  43. package/dist/registry/universal-types.mjs +86 -0
  44. package/dist/registry/universal-types.mjs.map +1 -0
  45. package/package.json +2 -2
  46. package/src/expressions/properties/impl/index.test.ts +3 -2
@@ -0,0 +1,368 @@
1
+ const packageInfo = {
2
+ name: '@lokascript/core',
3
+ version: '1.0.0-rc.2',
4
+ description: 'Multilingual, tree-shakeable hyperscript',
5
+ compatibility: '~85% official _hyperscript',
6
+ languages: 24,
7
+ commands: 49,
8
+ repository: 'https://github.com/codetalcott/lokascript',
9
+ documentation: 'https://github.com/codetalcott/lokascript/tree/main/packages/core#readme',
10
+ };
11
+ const bundleInfo = [
12
+ {
13
+ id: 'lite',
14
+ name: 'Lite',
15
+ filename: 'lokascript-lite.js',
16
+ gzipSize: '1.9 KB',
17
+ rawSize: '5 KB',
18
+ commandCount: 8,
19
+ parser: 'regex',
20
+ hasBlocks: false,
21
+ hasEventModifiers: false,
22
+ hasPositional: false,
23
+ hasFetch: false,
24
+ hasHtmxCompat: false,
25
+ importPath: '@lokascript/core/browser/lite',
26
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-lite.js',
27
+ useCase: 'Minimal interactivity: toggle, show, hide, add, remove, set, put',
28
+ },
29
+ {
30
+ id: 'lite-plus',
31
+ name: 'Lite Plus',
32
+ filename: 'lokascript-lite-plus.js',
33
+ gzipSize: '2.6 KB',
34
+ rawSize: '7 KB',
35
+ commandCount: 14,
36
+ parser: 'regex',
37
+ hasBlocks: false,
38
+ hasEventModifiers: false,
39
+ hasPositional: false,
40
+ hasFetch: false,
41
+ hasHtmxCompat: false,
42
+ importPath: '@lokascript/core/browser/lite-plus',
43
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-lite-plus.js',
44
+ useCase: 'Basic interactivity with wait, log, increment, trigger, go',
45
+ },
46
+ {
47
+ id: 'hybrid-complete',
48
+ name: 'Hybrid Complete',
49
+ filename: 'lokascript-hybrid-complete.js',
50
+ gzipSize: '7.2 KB',
51
+ rawSize: '28 KB',
52
+ commandCount: 21,
53
+ parser: 'hybrid',
54
+ hasBlocks: true,
55
+ hasEventModifiers: true,
56
+ hasPositional: true,
57
+ hasFetch: true,
58
+ hasHtmxCompat: false,
59
+ importPath: '@lokascript/core/browser/hybrid-complete',
60
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-hybrid-complete.js',
61
+ useCase: 'Recommended for most apps - 85% hyperscript coverage',
62
+ },
63
+ {
64
+ id: 'hybrid-hx',
65
+ name: 'Hybrid HX',
66
+ filename: 'lokascript-hybrid-hx.js',
67
+ gzipSize: '9.7 KB',
68
+ rawSize: '28 KB',
69
+ commandCount: 21,
70
+ parser: 'hybrid',
71
+ hasBlocks: true,
72
+ hasEventModifiers: true,
73
+ hasPositional: true,
74
+ hasFetch: true,
75
+ hasHtmxCompat: true,
76
+ importPath: '@lokascript/core/browser/hybrid-hx',
77
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-hybrid-hx.js',
78
+ useCase: 'htmx/fixi drop-in replacement with hx-get, hx-post, hx-target',
79
+ },
80
+ {
81
+ id: 'minimal',
82
+ name: 'Minimal',
83
+ filename: 'lokascript-browser-minimal.js',
84
+ gzipSize: '63.4 KB',
85
+ rawSize: '271 KB',
86
+ commandCount: 30,
87
+ parser: 'full',
88
+ hasBlocks: true,
89
+ hasEventModifiers: true,
90
+ hasPositional: true,
91
+ hasFetch: true,
92
+ hasHtmxCompat: false,
93
+ importPath: '@lokascript/core/browser/minimal',
94
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-browser-minimal.js',
95
+ useCase: 'Full parser with essential commands',
96
+ },
97
+ {
98
+ id: 'standard',
99
+ name: 'Standard',
100
+ filename: 'lokascript-browser-standard.js',
101
+ gzipSize: '63 KB',
102
+ rawSize: '195 KB',
103
+ commandCount: 35,
104
+ parser: 'full',
105
+ hasBlocks: true,
106
+ hasEventModifiers: true,
107
+ hasPositional: true,
108
+ hasFetch: true,
109
+ hasHtmxCompat: false,
110
+ importPath: '@lokascript/core/browser/standard',
111
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-browser-standard.js',
112
+ useCase: 'Full parser with common commands',
113
+ },
114
+ {
115
+ id: 'browser',
116
+ name: 'Full Browser',
117
+ filename: 'lokascript-browser.js',
118
+ gzipSize: '199.6 KB',
119
+ rawSize: '943 KB',
120
+ commandCount: 49,
121
+ parser: 'full',
122
+ hasBlocks: true,
123
+ hasEventModifiers: true,
124
+ hasPositional: true,
125
+ hasFetch: true,
126
+ hasHtmxCompat: false,
127
+ importPath: '@lokascript/core/browser',
128
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-browser.js',
129
+ useCase: 'Complete bundle with all commands and features',
130
+ },
131
+ {
132
+ id: 'multilingual',
133
+ name: 'Multilingual',
134
+ filename: 'lokascript-multilingual.js',
135
+ gzipSize: '64 KB',
136
+ rawSize: '200 KB',
137
+ commandCount: 49,
138
+ parser: 'full',
139
+ hasBlocks: true,
140
+ hasEventModifiers: true,
141
+ hasPositional: true,
142
+ hasFetch: true,
143
+ hasHtmxCompat: false,
144
+ importPath: '@lokascript/core/browser/multilingual',
145
+ cdnUrl: 'https://unpkg.com/@lokascript/core/dist/lokascript-multilingual.js',
146
+ useCase: 'Full features with multilingual API (requires @lokascript/semantic)',
147
+ },
148
+ ];
149
+ const featureMatrix = {
150
+ 'toggle class': [
151
+ 'lite',
152
+ 'lite-plus',
153
+ 'hybrid-complete',
154
+ 'hybrid-hx',
155
+ 'minimal',
156
+ 'standard',
157
+ 'browser',
158
+ 'multilingual',
159
+ ],
160
+ 'show/hide': [
161
+ 'lite',
162
+ 'lite-plus',
163
+ 'hybrid-complete',
164
+ 'hybrid-hx',
165
+ 'minimal',
166
+ 'standard',
167
+ 'browser',
168
+ 'multilingual',
169
+ ],
170
+ 'add/remove class': [
171
+ 'lite',
172
+ 'lite-plus',
173
+ 'hybrid-complete',
174
+ 'hybrid-hx',
175
+ 'minimal',
176
+ 'standard',
177
+ 'browser',
178
+ 'multilingual',
179
+ ],
180
+ 'set variable': [
181
+ 'lite',
182
+ 'lite-plus',
183
+ 'hybrid-complete',
184
+ 'hybrid-hx',
185
+ 'minimal',
186
+ 'standard',
187
+ 'browser',
188
+ 'multilingual',
189
+ ],
190
+ 'put content': [
191
+ 'lite',
192
+ 'lite-plus',
193
+ 'hybrid-complete',
194
+ 'hybrid-hx',
195
+ 'minimal',
196
+ 'standard',
197
+ 'browser',
198
+ 'multilingual',
199
+ ],
200
+ 'wait duration': [
201
+ 'lite-plus',
202
+ 'hybrid-complete',
203
+ 'hybrid-hx',
204
+ 'minimal',
205
+ 'standard',
206
+ 'browser',
207
+ 'multilingual',
208
+ ],
209
+ 'increment/decrement': [
210
+ 'lite-plus',
211
+ 'hybrid-complete',
212
+ 'hybrid-hx',
213
+ 'minimal',
214
+ 'standard',
215
+ 'browser',
216
+ 'multilingual',
217
+ ],
218
+ 'trigger event': [
219
+ 'lite-plus',
220
+ 'hybrid-complete',
221
+ 'hybrid-hx',
222
+ 'minimal',
223
+ 'standard',
224
+ 'browser',
225
+ 'multilingual',
226
+ ],
227
+ log: [
228
+ 'lite-plus',
229
+ 'hybrid-complete',
230
+ 'hybrid-hx',
231
+ 'minimal',
232
+ 'standard',
233
+ 'browser',
234
+ 'multilingual',
235
+ ],
236
+ 'if/else blocks': [
237
+ 'hybrid-complete',
238
+ 'hybrid-hx',
239
+ 'minimal',
240
+ 'standard',
241
+ 'browser',
242
+ 'multilingual',
243
+ ],
244
+ 'repeat/for loops': [
245
+ 'hybrid-complete',
246
+ 'hybrid-hx',
247
+ 'minimal',
248
+ 'standard',
249
+ 'browser',
250
+ 'multilingual',
251
+ ],
252
+ fetch: ['hybrid-complete', 'hybrid-hx', 'minimal', 'standard', 'browser', 'multilingual'],
253
+ 'event modifiers': [
254
+ 'hybrid-complete',
255
+ 'hybrid-hx',
256
+ 'minimal',
257
+ 'standard',
258
+ 'browser',
259
+ 'multilingual',
260
+ ],
261
+ 'positional (first/last)': [
262
+ 'hybrid-complete',
263
+ 'hybrid-hx',
264
+ 'minimal',
265
+ 'standard',
266
+ 'browser',
267
+ 'multilingual',
268
+ ],
269
+ 'htmx attributes': ['hybrid-hx'],
270
+ behaviors: ['minimal', 'standard', 'browser', 'multilingual'],
271
+ transitions: ['minimal', 'standard', 'browser', 'multilingual'],
272
+ morph: ['standard', 'browser', 'multilingual'],
273
+ 'multilingual API': ['multilingual'],
274
+ };
275
+ function getBundleById(id) {
276
+ return bundleInfo.find(b => b.id === id);
277
+ }
278
+ function getSmallestBundle(options) {
279
+ const sorted = [...bundleInfo].sort((a, b) => parseFloat(a.gzipSize) - parseFloat(b.gzipSize));
280
+ return sorted.find(bundle => {
281
+ if (options.blocks && !bundle.hasBlocks)
282
+ return false;
283
+ if (options.fetch && !bundle.hasFetch)
284
+ return false;
285
+ if (options.eventModifiers && !bundle.hasEventModifiers)
286
+ return false;
287
+ if (options.positional && !bundle.hasPositional)
288
+ return false;
289
+ if (options.htmxCompat && !bundle.hasHtmxCompat)
290
+ return false;
291
+ return true;
292
+ });
293
+ }
294
+ function getBundlesWithFeature(feature) {
295
+ const bundleIds = featureMatrix[feature];
296
+ return bundleInfo.filter(b => bundleIds.includes(b.id));
297
+ }
298
+ function compareBundles(bundleIds) {
299
+ const result = {};
300
+ for (const id of bundleIds) {
301
+ const bundle = getBundleById(id);
302
+ if (bundle) {
303
+ result[id] = bundle;
304
+ }
305
+ }
306
+ return result;
307
+ }
308
+ const ecosystem = {
309
+ core: {
310
+ name: '@lokascript/core',
311
+ description: 'Main runtime, parser, 43 commands',
312
+ npm: 'https://www.npmjs.com/package/@lokascript/core',
313
+ },
314
+ semantic: {
315
+ name: '@lokascript/semantic',
316
+ description: 'Semantic multilingual parser (24 languages)',
317
+ npm: 'https://www.npmjs.com/package/@lokascript/semantic',
318
+ },
319
+ i18n: {
320
+ name: '@lokascript/i18n',
321
+ description: 'Grammar transformation and keyword translation',
322
+ npm: 'https://www.npmjs.com/package/@lokascript/i18n',
323
+ },
324
+ vitePlugin: {
325
+ name: '@lokascript/vite-plugin',
326
+ description: 'Zero-config Vite plugin for automatic minimal bundles',
327
+ npm: 'https://www.npmjs.com/package/@lokascript/vite-plugin',
328
+ },
329
+ patternsReference: {
330
+ name: '@lokascript/patterns-reference',
331
+ description: 'Pattern database with 212 LLM examples',
332
+ npm: 'https://www.npmjs.com/package/@lokascript/patterns-reference',
333
+ },
334
+ mcpServer: {
335
+ name: '@lokascript/mcp-server',
336
+ description: 'Model Context Protocol server for AI assistants',
337
+ npm: 'https://www.npmjs.com/package/@lokascript/mcp-server',
338
+ },
339
+ };
340
+ const supportedLanguages = [
341
+ { code: 'en', name: 'English', native: 'English', wordOrder: 'SVO' },
342
+ { code: 'es', name: 'Spanish', native: 'Español', wordOrder: 'SVO' },
343
+ { code: 'fr', name: 'French', native: 'Français', wordOrder: 'SVO' },
344
+ { code: 'pt', name: 'Portuguese', native: 'Português', wordOrder: 'SVO' },
345
+ { code: 'de', name: 'German', native: 'Deutsch', wordOrder: 'V2' },
346
+ { code: 'it', name: 'Italian', native: 'Italiano', wordOrder: 'SVO' },
347
+ { code: 'ja', name: 'Japanese', native: '日本語', wordOrder: 'SOV' },
348
+ { code: 'ko', name: 'Korean', native: '한국어', wordOrder: 'SOV' },
349
+ { code: 'zh', name: 'Chinese', native: '中文', wordOrder: 'SVO' },
350
+ { code: 'ar', name: 'Arabic', native: 'العربية', wordOrder: 'VSO' },
351
+ { code: 'tr', name: 'Turkish', native: 'Türkçe', wordOrder: 'SOV' },
352
+ { code: 'ru', name: 'Russian', native: 'Русский', wordOrder: 'SVO' },
353
+ { code: 'uk', name: 'Ukrainian', native: 'Українська', wordOrder: 'SVO' },
354
+ { code: 'pl', name: 'Polish', native: 'Polski', wordOrder: 'SVO' },
355
+ { code: 'id', name: 'Indonesian', native: 'Bahasa Indonesia', wordOrder: 'SVO' },
356
+ { code: 'ms', name: 'Malay', native: 'Bahasa Melayu', wordOrder: 'SVO' },
357
+ { code: 'th', name: 'Thai', native: 'ไทย', wordOrder: 'SVO' },
358
+ { code: 'vi', name: 'Vietnamese', native: 'Tiếng Việt', wordOrder: 'SVO' },
359
+ { code: 'tl', name: 'Tagalog', native: 'Tagalog', wordOrder: 'VSO' },
360
+ { code: 'hi', name: 'Hindi', native: 'हिन्दी', wordOrder: 'SOV' },
361
+ { code: 'bn', name: 'Bengali', native: 'বাংলা', wordOrder: 'SOV' },
362
+ { code: 'sw', name: 'Swahili', native: 'Kiswahili', wordOrder: 'SVO' },
363
+ { code: 'qu', name: 'Quechua', native: 'Runasimi', wordOrder: 'SOV' },
364
+ { code: 'he', name: 'Hebrew', native: 'עברית', wordOrder: 'SVO' },
365
+ ];
366
+
367
+ export { bundleInfo, compareBundles, ecosystem, featureMatrix, getBundleById, getBundlesWithFeature, getSmallestBundle, packageInfo, supportedLanguages };
368
+ //# sourceMappingURL=metadata.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.mjs","sources":["../../src/metadata.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}