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