@trustme24/flext 1.10.5 → 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 (52) hide show
  1. package/README.md +4 -4
  2. package/bin/flext.mjs +24 -0
  3. package/dist/dialects/index.d.ts +3 -0
  4. package/dist/dialects/latest.d.ts +6 -0
  5. package/dist/dialects/legacy-1-0-beta3.d.ts +5 -0
  6. package/dist/dialects/legacy-1-0-beta4.d.ts +5 -0
  7. package/dist/index.cjs +257 -253
  8. package/dist/index.cjs.map +4 -4
  9. package/dist/index.d.ts +8 -7
  10. package/dist/index.js +29 -29
  11. package/dist/index.js.map +4 -4
  12. package/dist/types.d.ts +3 -74
  13. package/package.json +13 -11
  14. package/src/dialects/index.ts +3 -0
  15. package/src/dialects/latest.ts +8 -0
  16. package/src/dialects/legacy-1-0-beta3.ts +7 -0
  17. package/src/dialects/legacy-1-0-beta4.ts +7 -0
  18. package/src/index.ts +75 -16
  19. package/src/tsconfig.json +3 -3
  20. package/src/types.ts +2 -102
  21. package/dist/engine.d.ts +0 -66
  22. package/dist/errors.d.ts +0 -25
  23. package/dist/index.css +0 -2
  24. package/dist/lib/index.d.ts +0 -70
  25. package/dist/modules/array/index.d.ts +0 -5
  26. package/dist/modules/cond/index.d.ts +0 -10
  27. package/dist/modules/date/index.d.ts +0 -16
  28. package/dist/modules/index.d.ts +0 -9
  29. package/dist/modules/match/index.d.ts +0 -5
  30. package/dist/modules/math/index.d.ts +0 -17
  31. package/dist/modules/media/index.d.ts +0 -3
  32. package/dist/modules/number/index.d.ts +0 -8
  33. package/dist/modules/put/index.d.ts +0 -6
  34. package/dist/modules/string/index.d.ts +0 -5
  35. package/src/engine.ts +0 -414
  36. package/src/env.d.ts +0 -4
  37. package/src/errors.ts +0 -51
  38. package/src/index.css +0 -1
  39. package/src/lib/index.ts +0 -931
  40. package/src/lib/unocssShadowDomHack.css +0 -133
  41. package/src/modules/array/index.ts +0 -68
  42. package/src/modules/cond/index.ts +0 -123
  43. package/src/modules/date/index.ts +0 -254
  44. package/src/modules/index.ts +0 -9
  45. package/src/modules/match/index.ts +0 -54
  46. package/src/modules/math/index.ts +0 -198
  47. package/src/modules/media/index.ts +0 -27
  48. package/src/modules/number/index.ts +0 -73
  49. package/src/modules/number/localeNames.json +0 -16
  50. package/src/modules/number/locales/kkKz.json +0 -98
  51. package/src/modules/put/index.ts +0 -41
  52. package/src/modules/string/index.ts +0 -45
package/README.md CHANGED
@@ -74,7 +74,7 @@ This approach helps systems understand what a template requires before rendering
74
74
  import Flext from '@trustme24/flext';
75
75
 
76
76
  const template = `
77
- {{!-- @v "1.0.beta4" --}}
77
+ {{!-- @syntax "1.0" --}}
78
78
  {{!-- @use "put" --}}
79
79
  <p>{{ put name 'Unknown user...' }}</p>
80
80
  `;
@@ -88,7 +88,7 @@ document.body.innerHTML = flext.html;
88
88
 
89
89
  ## Core Ideas
90
90
 
91
- A **Flext** template contains three conceptual layers. The first layer is markup: HTML and standard Handlebars expressions. The second layer is Metadata written as directives such as `@v`, `@field`, or `@use`. The third layer is runtime behavior provided through Modules and helpers.
91
+ A **Flext** template contains three conceptual layers. The first layer is markup: HTML and standard Handlebars expressions. The second layer is Metadata written as directives such as `@syntax`, `@field`, or `@use`. The third layer is runtime behavior provided through Modules and helpers.
92
92
 
93
93
  Keeping these elements close together makes templates easier to move between systems and reduces hidden assumptions.
94
94
 
@@ -100,7 +100,7 @@ Metadata directives can describe template Version, language, title, rendering pa
100
100
  import Flext from '@trustme24/flext';
101
101
 
102
102
  const template = `
103
- {{!-- @v "1.0.beta4" --}}
103
+ {{!-- @syntax "1.0" --}}
104
104
  {{!-- @use "put" --}}
105
105
  {{!-- @group "data" --}}
106
106
  {{!-- @field "data.someField" type="string" label="Message" required --}}
@@ -141,7 +141,7 @@ Templates should stay declarative and focused on layout. Business logic is usual
141
141
  ### Example:
142
142
 
143
143
  ```handlebars
144
- {{!-- @v "1.0.beta4" --}}
144
+ {{!-- @syntax "1.0" --}}
145
145
  {{!-- @use "put" "date" --}}
146
146
  {{!-- @group "data" --}
147
147
  {{!-- @field "data.city" type="string" label="City" required --}}
package/bin/flext.mjs ADDED
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/env node
2
+
3
+ async function flext() {
4
+ const [ command = '' ] = process.argv.slice(2);
5
+
6
+
7
+ // Doing some checks
8
+
9
+ if (command !== 'sync') {
10
+ console.log(`Flext: Unknown command: '${command}'\n\nUsage: flext sync`);
11
+ return;
12
+ }
13
+
14
+
15
+ await import('./sync-dialects.mjs');
16
+ }
17
+
18
+ flext().catch((e) => {
19
+ const message = e instanceof Error ? e.message : String(e);
20
+
21
+ console.error('Flext: Unable to execute: ' + message);
22
+
23
+ process.exit(1);
24
+ });
@@ -0,0 +1,3 @@
1
+ export { default as Latest } from './latest';
2
+ export { default as Legacy_1_0_beta3 } from './legacy-1-0-beta3';
3
+ export { default as Legacy_1_0_beta4 } from './legacy-1-0-beta4';
@@ -0,0 +1,6 @@
1
+ import { Dialect } from '@flext/core';
2
+ export declare class LatestDialect extends Dialect {
3
+ name: string;
4
+ aliases: string[];
5
+ }
6
+ export default LatestDialect;
@@ -0,0 +1,5 @@
1
+ import { Dialect } from '@flext/core';
2
+ export declare class LegacyDialect extends Dialect {
3
+ name: string;
4
+ }
5
+ export default LegacyDialect;
@@ -0,0 +1,5 @@
1
+ import { Dialect } from '@flext/core';
2
+ export declare class LegacyDialect extends Dialect {
3
+ name: string;
4
+ }
5
+ export default LegacyDialect;