@samva/markup 0.1.1 → 0.2.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/AGENTS.md +25 -5
  2. package/README.md +92 -26
  3. package/dist/{ast-DAhnAvQN.d.ts → ast-63I-VLQx.d.ts} +15 -2
  4. package/dist/ast.d.ts +2 -2
  5. package/dist/ast.js +15 -2
  6. package/dist/{checks-CW0nFj5n.js → checks-DXuERO4B.js} +37 -3
  7. package/dist/checks.d.ts +8 -1
  8. package/dist/checks.js +2 -2
  9. package/dist/compile-sms.d.ts +2 -2
  10. package/dist/compile-whatsapp.d.ts +2 -2
  11. package/dist/compile.d.ts +9 -84
  12. package/dist/compile.js +11 -920
  13. package/dist/compiler.d.ts +301 -0
  14. package/dist/compiler.js +1389 -0
  15. package/dist/components.d.ts +4 -4
  16. package/dist/conditionals.js +1 -1
  17. package/dist/corpus-Dz5irJ9x.d.ts +161 -0
  18. package/dist/diagnostics-Djd9ckLg.d.ts +90 -0
  19. package/dist/diagnostics.js +6 -3
  20. package/dist/elements-DtwKlFVH.d.ts +820 -0
  21. package/dist/email/components.d.ts +119 -0
  22. package/dist/email/components.js +207 -0
  23. package/dist/email/diagnostics.d.ts +2 -0
  24. package/dist/email/diagnostics.js +56 -0
  25. package/dist/email/elements.d.ts +2 -0
  26. package/dist/email/elements.js +299 -0
  27. package/dist/email/html.d.ts +42 -0
  28. package/dist/email/html.js +266 -0
  29. package/dist/email/jsx-dev-runtime.d.ts +26 -0
  30. package/dist/email/jsx-dev-runtime.js +12 -0
  31. package/dist/email/jsx-runtime.d.ts +2 -0
  32. package/dist/email/jsx-runtime.js +60 -0
  33. package/dist/email/render.d.ts +36 -0
  34. package/dist/email/render.js +6 -0
  35. package/dist/email/selection.d.ts +102 -0
  36. package/dist/email/selection.js +143 -0
  37. package/dist/email/source-edit.d.ts +67 -0
  38. package/dist/email/source-edit.js +185 -0
  39. package/dist/email/stylesheets.d.ts +2 -0
  40. package/dist/email/stylesheets.js +43 -0
  41. package/dist/email/text.d.ts +7 -0
  42. package/dist/email/text.js +92 -0
  43. package/dist/emit.d.ts +13 -12
  44. package/dist/emit.js +63 -63
  45. package/dist/input-schema-BIfzI63B.d.ts +23 -0
  46. package/dist/input-schema.d.ts +2 -0
  47. package/dist/input-schema.js +170 -0
  48. package/dist/jsx-dev-runtime.d.ts +4 -3
  49. package/dist/jsx-dev-runtime.js +9 -1
  50. package/dist/{jsx-runtime-fSxcvlx4.d.ts → jsx-runtime-C5k_Zq0A.d.ts} +4 -4
  51. package/dist/jsx-runtime.d.ts +1 -1
  52. package/dist/jsx-runtime.js +20 -1
  53. package/dist/model.d.ts +1 -1
  54. package/dist/ops.d.ts +1 -1
  55. package/dist/ops.js +2 -2
  56. package/dist/{parser-yzjUOGhc.d.ts → parser-CGBS73Gz.d.ts} +12 -3
  57. package/dist/parser.d.ts +2 -2
  58. package/dist/parser.js +48 -9
  59. package/dist/predicate-CvkzT-a2.js +539 -0
  60. package/dist/{predicate-DTtVtLK7.d.ts → predicate-G2SeSvoN.d.ts} +9 -2
  61. package/dist/predicate.d.ts +2 -2
  62. package/dist/predicate.js +2 -417
  63. package/dist/presets/corpus.d.ts +2 -0
  64. package/dist/presets/corpus.js +186 -0
  65. package/dist/presets/public-gallery.d.ts +241 -459
  66. package/dist/presets/public-gallery.js +305 -5
  67. package/dist/presets/public-handoff.d.ts +75 -3
  68. package/dist/presets/public-handoff.js +220 -37
  69. package/dist/presets/public-preview-artifacts.js +20 -26
  70. package/dist/presets/public-preview.d.ts +40 -1152
  71. package/dist/presets/public-preview.js +388 -1152
  72. package/dist/presets/sources.d.ts +17 -4
  73. package/dist/presets/sources.js +1212 -43
  74. package/dist/presets.d.ts +2 -2
  75. package/dist/printer.d.ts +1 -1
  76. package/dist/render-Cddsy_XF.js +585 -0
  77. package/dist/render-template.d.ts +6 -3
  78. package/dist/render-template.js +4 -2
  79. package/dist/source-locations-BCJQnIfU.d.ts +89 -0
  80. package/dist/source-locations.d.ts +2 -0
  81. package/dist/source-locations.js +125 -0
  82. package/dist/stylesheets-oDRAnYA3.d.ts +94 -0
  83. package/dist/template-Dy5yOPyp.d.ts +60 -0
  84. package/dist/template.d.ts +2 -0
  85. package/dist/template.js +37 -0
  86. package/dist/tsx-source-instrumentation.d.ts +23 -0
  87. package/dist/tsx-source-instrumentation.js +97 -0
  88. package/dist/tsx-tracer.d.ts +116 -0
  89. package/dist/tsx-tracer.js +985 -0
  90. package/dist/{variables-3NGLpNTB.d.ts → variables-if1VrV34.d.ts} +2 -2
  91. package/dist/variables.d.ts +1 -1
  92. package/dist/variables.js +1 -1
  93. package/generated/sml-agent-contract.json +574 -782
  94. package/generated/sml-email-agent-contract.json +502 -677
  95. package/generated/sml-email-language-reference.md +94 -160
  96. package/generated/sml-language-reference.md +195 -220
  97. package/package.json +111 -8
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@samva/markup",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "Type-safe authoring and compilation primitives for Samva templates",
5
5
  "keywords": [
6
6
  "email",
@@ -52,6 +52,10 @@
52
52
  "types": "./dist/components.d.ts",
53
53
  "import": "./dist/components.js"
54
54
  },
55
+ "./compiler": {
56
+ "types": "./dist/compiler.d.ts",
57
+ "import": "./dist/compiler.js"
58
+ },
55
59
  "./compile": {
56
60
  "types": "./dist/compile.d.ts",
57
61
  "import": "./dist/compile.js"
@@ -128,6 +132,10 @@
128
132
  "types": "./dist/presets/category-mapping.d.ts",
129
133
  "import": "./dist/presets/category-mapping.js"
130
134
  },
135
+ "./presets/corpus": {
136
+ "types": "./dist/presets/corpus.d.ts",
137
+ "import": "./dist/presets/corpus.js"
138
+ },
131
139
  "./presets/public-gallery": {
132
140
  "types": "./dist/presets/public-gallery.d.ts",
133
141
  "import": "./dist/presets/public-gallery.js"
@@ -160,6 +168,10 @@
160
168
  "types": "./dist/render-template.d.ts",
161
169
  "import": "./dist/render-template.js"
162
170
  },
171
+ "./source-locations": {
172
+ "types": "./dist/source-locations.d.ts",
173
+ "import": "./dist/source-locations.js"
174
+ },
163
175
  "./theme": {
164
176
  "types": "./dist/theme.d.ts",
165
177
  "import": "./dist/theme.js"
@@ -168,6 +180,14 @@
168
180
  "types": "./dist/theme-css.d.ts",
169
181
  "import": "./dist/theme-css.js"
170
182
  },
183
+ "./tsx-tracer": {
184
+ "types": "./dist/tsx-tracer.d.ts",
185
+ "import": "./dist/tsx-tracer.js"
186
+ },
187
+ "./tsx-source-instrumentation": {
188
+ "types": "./dist/tsx-source-instrumentation.d.ts",
189
+ "import": "./dist/tsx-source-instrumentation.js"
190
+ },
171
191
  "./tokens": {
172
192
  "types": "./dist/tokens.d.ts",
173
193
  "import": "./dist/tokens.js"
@@ -176,7 +196,59 @@
176
196
  "types": "./dist/variables.d.ts",
177
197
  "import": "./dist/variables.js"
178
198
  },
179
- "./generated/*": "./generated/*"
199
+ "./generated/*": "./generated/*",
200
+ "./input-schema": {
201
+ "types": "./dist/input-schema.d.ts",
202
+ "import": "./dist/input-schema.js"
203
+ },
204
+ "./template": {
205
+ "types": "./dist/template.d.ts",
206
+ "import": "./dist/template.js"
207
+ },
208
+ "./email/jsx-runtime": {
209
+ "types": "./dist/email/jsx-runtime.d.ts",
210
+ "import": "./dist/email/jsx-runtime.js"
211
+ },
212
+ "./email/jsx-dev-runtime": {
213
+ "types": "./dist/email/jsx-dev-runtime.d.ts",
214
+ "import": "./dist/email/jsx-dev-runtime.js"
215
+ },
216
+ "./email/render": {
217
+ "types": "./dist/email/render.d.ts",
218
+ "import": "./dist/email/render.js"
219
+ },
220
+ "./email/elements": {
221
+ "types": "./dist/email/elements.d.ts",
222
+ "import": "./dist/email/elements.js"
223
+ },
224
+ "./email/components": {
225
+ "types": "./dist/email/components.d.ts",
226
+ "import": "./dist/email/components.js"
227
+ },
228
+ "./email/diagnostics": {
229
+ "types": "./dist/email/diagnostics.d.ts",
230
+ "import": "./dist/email/diagnostics.js"
231
+ },
232
+ "./email/source-edit": {
233
+ "types": "./dist/email/source-edit.d.ts",
234
+ "import": "./dist/email/source-edit.js"
235
+ },
236
+ "./email/selection": {
237
+ "types": "./dist/email/selection.d.ts",
238
+ "import": "./dist/email/selection.js"
239
+ },
240
+ "./email/html": {
241
+ "types": "./dist/email/html.d.ts",
242
+ "import": "./dist/email/html.js"
243
+ },
244
+ "./email/text": {
245
+ "types": "./dist/email/text.d.ts",
246
+ "import": "./dist/email/text.js"
247
+ },
248
+ "./email/stylesheets": {
249
+ "types": "./dist/email/stylesheets.d.ts",
250
+ "import": "./dist/email/stylesheets.js"
251
+ }
180
252
  },
181
253
  "publishConfig": {
182
254
  "access": "public"
@@ -184,22 +256,53 @@
184
256
  "scripts": {
185
257
  "build": "tsdown",
186
258
  "prepack": "bun run build",
187
- "codegen:presets": "bun run scripts/codegen-presets.ts && oxfmt presets/sources.gen.ts",
259
+ "codegen:presets": "bun run ../vite/scripts/codegen-presets.ts && oxfmt presets/sources.gen.ts",
260
+ "import:public-handoff": "bun run ../vite/scripts/import-public-template-handoff.ts",
261
+ "corpus:render": "bun run scripts/render-compatibility-corpus.ts",
262
+ "codegen:tailwind": "bun run scripts/codegen-tailwind.ts && oxfmt src/email/tailwind-stylesheets.gen.ts",
188
263
  "codegen:tokens": "bun run scripts/codegen-tokens.ts && oxfmt src/tokens.ts",
189
264
  "codegen:sml-reference": "bun run scripts/generate-sml-reference.ts",
190
265
  "codegen:docs": "bun run scripts/codegen-docs.ts",
191
266
  "refresh-caniemail": "bun run scripts/refresh-caniemail.ts",
192
267
  "test": "vitest run --root ../.. --project packages packages/markup/tests",
193
- "typecheck": "tsgo --noEmit"
268
+ "typecheck": "tsc --noEmit && tsc --noEmit -p tests/consumer/tsconfig.json"
194
269
  },
195
270
  "dependencies": {
196
- "effect": "4.0.0-beta.102"
271
+ "@cfworker/json-schema": "4.1.1",
272
+ "ajv": "8.20.0",
273
+ "effect": "4.0.0-rc.112"
197
274
  },
198
275
  "devDependencies": {
199
- "@effect/vitest": "4.0.0-beta.102",
276
+ "@babel/parser": "^8.0.4",
277
+ "@css-inline/css-inline-wasm": "0.15.0",
278
+ "@effect/vitest": "4.0.0-rc.112",
279
+ "@types/css-tree": "3.2.0",
280
+ "caniemail": "2.0.2",
281
+ "css-tree": "3.2.1",
200
282
  "tailwindcss": "^4.3.3",
201
283
  "tsdown": "^0.22.13",
202
- "typescript": "^6.0.3",
203
- "vitest": "^4.1.10"
284
+ "typescript": "^7.0.2",
285
+ "vitest": "^4.1.11",
286
+ "zod": "4.5.2"
287
+ },
288
+ "peerDependencies": {
289
+ "@babel/parser": "^8.0.4",
290
+ "caniemail": "2.0.2",
291
+ "css-tree": "3.2.1",
292
+ "tailwindcss": "^4.3.3"
293
+ },
294
+ "peerDependenciesMeta": {
295
+ "@babel/parser": {
296
+ "optional": true
297
+ },
298
+ "caniemail": {
299
+ "optional": true
300
+ },
301
+ "css-tree": {
302
+ "optional": true
303
+ },
304
+ "tailwindcss": {
305
+ "optional": true
306
+ }
204
307
  }
205
308
  }