motionwind-core 2.1.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 (51) hide show
  1. package/README.md +44 -0
  2. package/dist/adapter.cjs +31 -0
  3. package/dist/adapter.cjs.map +1 -0
  4. package/dist/adapter.d.cts +14 -0
  5. package/dist/adapter.d.ts +14 -0
  6. package/dist/adapter.js +3 -0
  7. package/dist/adapter.js.map +1 -0
  8. package/dist/chunk-A7EAMXLY.js +1098 -0
  9. package/dist/chunk-A7EAMXLY.js.map +1 -0
  10. package/dist/chunk-IJZCYKTO.js +352 -0
  11. package/dist/chunk-IJZCYKTO.js.map +1 -0
  12. package/dist/chunk-P6FC2RDE.js +25 -0
  13. package/dist/chunk-P6FC2RDE.js.map +1 -0
  14. package/dist/chunk-ULRTFOGX.js +28 -0
  15. package/dist/chunk-ULRTFOGX.js.map +1 -0
  16. package/dist/chunk-Z5I36REG.js +411 -0
  17. package/dist/chunk-Z5I36REG.js.map +1 -0
  18. package/dist/config.cjs +30 -0
  19. package/dist/config.cjs.map +1 -0
  20. package/dist/config.d.cts +1 -0
  21. package/dist/config.d.ts +1 -0
  22. package/dist/config.js +3 -0
  23. package/dist/config.js.map +1 -0
  24. package/dist/index.cjs +1970 -0
  25. package/dist/index.cjs.map +1 -0
  26. package/dist/index.d.cts +18 -0
  27. package/dist/index.d.ts +18 -0
  28. package/dist/index.js +60 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/parser.cjs +1690 -0
  31. package/dist/parser.cjs.map +1 -0
  32. package/dist/parser.d.cts +21 -0
  33. package/dist/parser.d.ts +21 -0
  34. package/dist/parser.js +6 -0
  35. package/dist/parser.js.map +1 -0
  36. package/dist/recipes.cjs +359 -0
  37. package/dist/recipes.cjs.map +1 -0
  38. package/dist/recipes.d.cts +19 -0
  39. package/dist/recipes.d.ts +19 -0
  40. package/dist/recipes.js +4 -0
  41. package/dist/recipes.js.map +1 -0
  42. package/dist/registry.cjs +421 -0
  43. package/dist/registry.cjs.map +1 -0
  44. package/dist/registry.d.cts +1 -0
  45. package/dist/registry.d.ts +1 -0
  46. package/dist/registry.js +3 -0
  47. package/dist/registry.js.map +1 -0
  48. package/dist/types-BYtWWSgh.d.cts +185 -0
  49. package/dist/types-BYtWWSgh.d.ts +185 -0
  50. package/llms.txt +77 -0
  51. package/package.json +96 -0
@@ -0,0 +1,421 @@
1
+ 'use strict';
2
+
3
+ // src/registry.ts
4
+ var ALL = ["react", "vue", "vanilla", "react-native"];
5
+ var WEB = ["react", "vue", "vanilla"];
6
+ var gesture = (id, motionKey, description) => ({
7
+ id: `gesture.${id}`,
8
+ category: "gesture",
9
+ label: `animate-${id}:`,
10
+ snippet: `animate-${id}:`,
11
+ description,
12
+ motionKey,
13
+ platforms: ALL
14
+ });
15
+ var GESTURE_DEFINITIONS = [
16
+ gesture("hover", "whileHover", "Animate while an element is hovered."),
17
+ gesture("tap", "whileTap", "Animate while an element is pressed."),
18
+ gesture("focus", "whileFocus", "Animate while an element has focus."),
19
+ gesture("inview", "whileInView", "Animate while an element is in view."),
20
+ gesture("drag", "whileDrag", "Animate while an element is dragged."),
21
+ gesture("initial", "initial", "Set the state before an animation begins."),
22
+ gesture("enter", "animate", "Animate to a state when an element enters."),
23
+ gesture("exit", "exit", "Animate to a state when an element exits.")
24
+ ];
25
+ var MODIFIER_DEFINITIONS = [
26
+ {
27
+ id: "modifier.motion-reduce",
28
+ category: "modifier",
29
+ label: "motion-reduce:",
30
+ snippet: "motion-reduce:",
31
+ description: "Apply the wrapped class only when `prefers-reduced-motion: reduce` is active.",
32
+ platforms: WEB
33
+ },
34
+ {
35
+ id: "modifier.motion-safe",
36
+ category: "modifier",
37
+ label: "motion-safe:",
38
+ snippet: "motion-safe:",
39
+ description: "Apply the wrapped class only when `prefers-reduced-motion: no-preference` is active.",
40
+ platforms: WEB
41
+ }
42
+ ];
43
+ var property = (label, snippet, motionKey, description, platforms = ALL) => ({
44
+ id: `property.${label.replace(/[^a-z0-9]+/gi, "-").replace(/^-|-$/g, "")}`,
45
+ category: "property",
46
+ label,
47
+ snippet,
48
+ motionKey,
49
+ description,
50
+ platforms
51
+ });
52
+ var PROPERTY_DEFINITIONS = [
53
+ property(
54
+ "scale-",
55
+ "scale-${1:110}",
56
+ "scale",
57
+ "Scale (100 is the resting value)."
58
+ ),
59
+ property("scale-x-", "scale-x-${1:110}", "scaleX", "Scale on the x axis."),
60
+ property("scale-y-", "scale-y-${1:110}", "scaleY", "Scale on the y axis."),
61
+ property(
62
+ "scale-z-",
63
+ "scale-z-${1:110}",
64
+ "scaleZ",
65
+ "Scale on the z axis.",
66
+ WEB
67
+ ),
68
+ property("rotate-", "rotate-${1:45}", "rotate", "Rotate in degrees."),
69
+ property(
70
+ "rotate-x-",
71
+ "rotate-x-${1:45}",
72
+ "rotateX",
73
+ "Rotate around the x axis."
74
+ ),
75
+ property(
76
+ "rotate-y-",
77
+ "rotate-y-${1:45}",
78
+ "rotateY",
79
+ "Rotate around the y axis."
80
+ ),
81
+ property("x-", "x-${1:20}", "x", "Translate on the x axis."),
82
+ property("y-", "y-${1:20}", "y", "Translate on the y axis."),
83
+ property("z-", "z-${1:20}", "z", "Translate on the z axis.", WEB),
84
+ // z-{0,10,20,30,40,50,auto} maps to zIndex (Tailwind-standard values)
85
+ {
86
+ id: "property.z-zIndex",
87
+ category: "property",
88
+ label: "z-",
89
+ snippet: "z-${1|0,10,20,30,40,50,auto|}",
90
+ motionKey: "zIndex",
91
+ description: "Animate z-index (Tailwind values: 0, 10, 20, 30, 40, 50, auto). Non-standard values translate on the z axis instead.",
92
+ platforms: WEB
93
+ },
94
+ property("skew-x-", "skew-x-${1:12}", "skewX", "Skew on the x axis."),
95
+ property("skew-y-", "skew-y-${1:12}", "skewY", "Skew on the y axis."),
96
+ property(
97
+ "origin-x-",
98
+ "origin-x-${1:50}",
99
+ "originX",
100
+ "Set the x transform origin.",
101
+ WEB
102
+ ),
103
+ property(
104
+ "origin-y-",
105
+ "origin-y-${1:50}",
106
+ "originY",
107
+ "Set the y transform origin.",
108
+ WEB
109
+ ),
110
+ property(
111
+ "perspective-",
112
+ "perspective-${1:800}",
113
+ "perspective",
114
+ "Set 3D perspective.",
115
+ WEB
116
+ ),
117
+ property("opacity-", "opacity-${1:0}", "opacity", "Animate opacity (0\u2013100)."),
118
+ property("blur-", "blur-${1:10}", "filter", "Animate CSS blur.", WEB),
119
+ property(
120
+ "brightness-",
121
+ "brightness-${1:120}",
122
+ "filter",
123
+ "Animate CSS brightness.",
124
+ WEB
125
+ ),
126
+ property(
127
+ "contrast-",
128
+ "contrast-${1:120}",
129
+ "filter",
130
+ "Animate CSS contrast.",
131
+ WEB
132
+ ),
133
+ property(
134
+ "saturate-",
135
+ "saturate-${1:120}",
136
+ "filter",
137
+ "Animate CSS saturation.",
138
+ WEB
139
+ ),
140
+ property(
141
+ "grayscale-",
142
+ "grayscale-${1:100}",
143
+ "filter",
144
+ "Animate CSS grayscale.",
145
+ WEB
146
+ ),
147
+ property(
148
+ "backdrop-blur-",
149
+ "backdrop-blur-${1:10}",
150
+ "backdropFilter",
151
+ "Animate backdrop blur.",
152
+ WEB
153
+ ),
154
+ property("w-", "w-${1:100}", "width", "Animate width."),
155
+ property("h-", "h-${1:100}", "height", "Animate height."),
156
+ property(
157
+ "rounded-",
158
+ "rounded-${1:12}",
159
+ "borderRadius",
160
+ "Animate border radius."
161
+ ),
162
+ property(
163
+ "rounded-tl-",
164
+ "rounded-tl-${1:12}",
165
+ "borderTopLeftRadius",
166
+ "Animate top-left border radius."
167
+ ),
168
+ property(
169
+ "rounded-tr-",
170
+ "rounded-tr-${1:12}",
171
+ "borderTopRightRadius",
172
+ "Animate top-right border radius."
173
+ ),
174
+ property(
175
+ "rounded-bl-",
176
+ "rounded-bl-${1:12}",
177
+ "borderBottomLeftRadius",
178
+ "Animate bottom-left border radius."
179
+ ),
180
+ property(
181
+ "rounded-br-",
182
+ "rounded-br-${1:12}",
183
+ "borderBottomRightRadius",
184
+ "Animate bottom-right border radius."
185
+ ),
186
+ property("top-", "top-${1:0}", "top", "Animate top position."),
187
+ property("left-", "left-${1:0}", "left", "Animate left position."),
188
+ property("right-", "right-${1:0}", "right", "Animate right position."),
189
+ property("bottom-", "bottom-${1:0}", "bottom", "Animate bottom position."),
190
+ property("p-", "p-${1:16}", "padding", "Animate padding."),
191
+ property("m-", "m-${1:16}", "margin", "Animate margin."),
192
+ property("gap-", "gap-${1:8}", "gap", "Animate gap."),
193
+ property("text-size-", "text-size-${1:16}", "fontSize", "Animate font size."),
194
+ property(
195
+ "tracking-",
196
+ "tracking-${1:1}",
197
+ "letterSpacing",
198
+ "Animate letter spacing."
199
+ ),
200
+ property("leading-", "leading-${1:24}", "lineHeight", "Animate line height."),
201
+ property(
202
+ "border-w-",
203
+ "border-w-${1:2}",
204
+ "borderWidth",
205
+ "Animate border width."
206
+ ),
207
+ property(
208
+ "bg-#",
209
+ "bg-#${1:c8ff2e}",
210
+ "backgroundColor",
211
+ "Animate background color."
212
+ ),
213
+ property("text-#", "text-#${1:ffffff}", "color", "Animate text color."),
214
+ property(
215
+ "border-#",
216
+ "border-#${1:c8ff2e}",
217
+ "borderColor",
218
+ "Animate border color."
219
+ ),
220
+ property(
221
+ "path-length-",
222
+ "path-length-${1:1}",
223
+ "pathLength",
224
+ "Animate SVG path length.",
225
+ WEB
226
+ ),
227
+ property(
228
+ "text-shadow-[",
229
+ "text-shadow-[${1:value}]",
230
+ "textShadow",
231
+ "Animate text shadow (arbitrary value; underscores become spaces).",
232
+ WEB
233
+ ),
234
+ property(
235
+ "[=]",
236
+ "[${1:property}=${2:value}]",
237
+ "arbitrary",
238
+ "Animate an allow-listed arbitrary value.",
239
+ WEB
240
+ )
241
+ ];
242
+ var config = (category, label, snippet, description, platforms = ALL) => ({
243
+ id: `${category}.${label}`,
244
+ category,
245
+ label: `animate-${label}`,
246
+ snippet: `animate-${snippet}`,
247
+ description,
248
+ platforms
249
+ });
250
+ var CONFIG_DEFINITIONS = [
251
+ config(
252
+ "transition",
253
+ "duration-",
254
+ "duration-${1:300}",
255
+ "Duration in milliseconds."
256
+ ),
257
+ config("transition", "delay-", "delay-${1:100}", "Delay in milliseconds."),
258
+ config("transition", "ease-in", "ease-in", "Ease into the animation."),
259
+ config("transition", "ease-out", "ease-out", "Ease out of the animation."),
260
+ config("transition", "ease-in-out", "ease-in-out", "Ease in and out."),
261
+ config("transition", "ease-linear", "ease-linear", "Use linear easing."),
262
+ config("transition", "spring", "spring", "Use spring physics."),
263
+ config("transition", "stiffness-", "stiffness-${1:300}", "Spring stiffness."),
264
+ config("transition", "damping-", "damping-${1:24}", "Spring damping."),
265
+ config("transition", "bounce-", "bounce-${1:20}", "Spring bounce (0\u2013100)."),
266
+ config("transition", "mass-", "mass-${1:10}", "Spring mass in tenths."),
267
+ config("transition", "repeat-", "repeat-${1:2}", "Repeat count."),
268
+ config("transition", "repeat-infinite", "repeat-infinite", "Repeat forever."),
269
+ config(
270
+ "transition",
271
+ "repeat-reverse",
272
+ "repeat-reverse",
273
+ "Reverse each repetition."
274
+ ),
275
+ config(
276
+ "transition",
277
+ "stagger-",
278
+ "stagger-${1:60}",
279
+ "Stagger children in milliseconds."
280
+ ),
281
+ config(
282
+ "transition",
283
+ "delay-children-",
284
+ "delay-children-${1:100}",
285
+ "Delay child animations."
286
+ ),
287
+ config("viewport", "once", "once", "Run an in-view animation once."),
288
+ config("viewport", "amount-", "amount-${1:50}", "Required visible amount."),
289
+ config(
290
+ "viewport",
291
+ "margin-",
292
+ "margin-${1:100}",
293
+ "Viewport margin in pixels."
294
+ ),
295
+ config(
296
+ "scroll",
297
+ "scroll-axis-x",
298
+ "scroll-axis-x",
299
+ "Use horizontal scroll progress.",
300
+ WEB
301
+ ),
302
+ config(
303
+ "scroll",
304
+ "scroll-container",
305
+ "scroll-container",
306
+ "Track the page scroll container.",
307
+ WEB
308
+ ),
309
+ config("drag", "drag-x", "drag-x", "Enable horizontal drag.", [
310
+ "react",
311
+ "vue",
312
+ "react-native"
313
+ ]),
314
+ config("drag", "drag-y", "drag-y", "Enable vertical drag.", [
315
+ "react",
316
+ "vue",
317
+ "react-native"
318
+ ]),
319
+ config("drag", "drag-both", "drag-both", "Enable drag on both axes.", [
320
+ "react",
321
+ "vue",
322
+ "react-native"
323
+ ]),
324
+ config(
325
+ "drag",
326
+ "drag-elastic-",
327
+ "drag-elastic-${1:50}",
328
+ "Set drag elasticity.",
329
+ ["react", "vue", "react-native"]
330
+ ),
331
+ config("drag", "drag-snap", "drag-snap", "Snap drag to its origin.", [
332
+ "react",
333
+ "vue",
334
+ "react-native"
335
+ ]),
336
+ config("layout", "layout", "layout", "Animate layout changes.", [
337
+ "react",
338
+ "vue"
339
+ ]),
340
+ config(
341
+ "layout",
342
+ "layout-position",
343
+ "layout-position",
344
+ "Animate layout position.",
345
+ ["react", "vue"]
346
+ ),
347
+ config("layout", "layout-size", "layout-size", "Animate layout size.", [
348
+ "react",
349
+ "vue"
350
+ ]),
351
+ config(
352
+ "layout",
353
+ "layout-id-",
354
+ "layout-id-${1:shared}",
355
+ "Set a shared layout id.",
356
+ ["react", "vue"]
357
+ ),
358
+ config(
359
+ "variant",
360
+ "from-",
361
+ "from-${1:hidden}",
362
+ "Select the initial named variant.",
363
+ ["react", "vue", "react-native"]
364
+ ),
365
+ config(
366
+ "variant",
367
+ "to-",
368
+ "to-${1:visible}",
369
+ "Select the active named variant.",
370
+ ["react", "vue", "react-native"]
371
+ ),
372
+ config(
373
+ "preset",
374
+ "preset-",
375
+ "preset-${1:button-press}",
376
+ "Apply a configured animation preset."
377
+ )
378
+ ];
379
+ var MOTIONWIND_SYNTAX_REGISTRY = [
380
+ ...GESTURE_DEFINITIONS,
381
+ ...MODIFIER_DEFINITIONS,
382
+ ...PROPERTY_DEFINITIONS,
383
+ ...CONFIG_DEFINITIONS
384
+ ];
385
+ var GESTURE_MAP = Object.fromEntries(
386
+ GESTURE_DEFINITIONS.map((definition) => [
387
+ definition.label.slice("animate-".length, -1),
388
+ definition.motionKey
389
+ ])
390
+ );
391
+ var GESTURE_KEYS = new Set(Object.keys(GESTURE_MAP));
392
+ var EASING_MAP = {
393
+ "ease-in": "easeIn",
394
+ "ease-out": "easeOut",
395
+ "ease-in-out": "easeInOut",
396
+ "ease-linear": "linear",
397
+ "ease-circ-in": "circIn",
398
+ "ease-circ-out": "circOut",
399
+ "ease-circ-in-out": "circInOut",
400
+ "ease-back-in": "backIn",
401
+ "ease-back-out": "backOut",
402
+ "ease-back-in-out": "backInOut",
403
+ "ease-anticipate": "anticipate"
404
+ };
405
+ function getSyntaxDefinitions(category) {
406
+ return category ? MOTIONWIND_SYNTAX_REGISTRY.filter(
407
+ (definition) => definition.category === category
408
+ ) : MOTIONWIND_SYNTAX_REGISTRY;
409
+ }
410
+
411
+ exports.CONFIG_DEFINITIONS = CONFIG_DEFINITIONS;
412
+ exports.EASING_MAP = EASING_MAP;
413
+ exports.GESTURE_DEFINITIONS = GESTURE_DEFINITIONS;
414
+ exports.GESTURE_KEYS = GESTURE_KEYS;
415
+ exports.GESTURE_MAP = GESTURE_MAP;
416
+ exports.MODIFIER_DEFINITIONS = MODIFIER_DEFINITIONS;
417
+ exports.MOTIONWIND_SYNTAX_REGISTRY = MOTIONWIND_SYNTAX_REGISTRY;
418
+ exports.PROPERTY_DEFINITIONS = PROPERTY_DEFINITIONS;
419
+ exports.getSyntaxDefinitions = getSyntaxDefinitions;
420
+ //# sourceMappingURL=registry.cjs.map
421
+ //# sourceMappingURL=registry.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/registry.ts"],"names":[],"mappings":"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","file":"registry.cjs","sourcesContent":["import type { GestureKey } from \"./types.js\";\n\nexport type SyntaxCategory =\n | \"gesture\"\n | \"property\"\n | \"transition\"\n | \"viewport\"\n | \"scroll\"\n | \"drag\"\n | \"layout\"\n | \"variant\"\n | \"preset\"\n | \"modifier\";\n\nexport type Platform = \"react\" | \"vue\" | \"vanilla\" | \"react-native\";\n\n/** Machine-readable syntax metadata shared by docs, editors and diagnostics. */\nexport interface SyntaxDefinition {\n id: string;\n category: SyntaxCategory;\n label: string;\n snippet: string;\n description: string;\n motionKey?: string;\n platforms?: Platform[];\n}\n\nconst ALL: Platform[] = [\"react\", \"vue\", \"vanilla\", \"react-native\"];\nconst WEB: Platform[] = [\"react\", \"vue\", \"vanilla\"];\n\nconst gesture = (\n id: string,\n motionKey: GestureKey,\n description: string,\n): SyntaxDefinition => ({\n id: `gesture.${id}`,\n category: \"gesture\",\n label: `animate-${id}:`,\n snippet: `animate-${id}:`,\n description,\n motionKey,\n platforms: ALL,\n});\n\nexport const GESTURE_DEFINITIONS = [\n gesture(\"hover\", \"whileHover\", \"Animate while an element is hovered.\"),\n gesture(\"tap\", \"whileTap\", \"Animate while an element is pressed.\"),\n gesture(\"focus\", \"whileFocus\", \"Animate while an element has focus.\"),\n gesture(\"inview\", \"whileInView\", \"Animate while an element is in view.\"),\n gesture(\"drag\", \"whileDrag\", \"Animate while an element is dragged.\"),\n gesture(\"initial\", \"initial\", \"Set the state before an animation begins.\"),\n gesture(\"enter\", \"animate\", \"Animate to a state when an element enters.\"),\n gesture(\"exit\", \"exit\", \"Animate to a state when an element exits.\"),\n] as const satisfies readonly SyntaxDefinition[];\n\n/**\n * Modifier prefixes that wrap an inner class token and control conditional\n * application based on the user's motion preference media query.\n */\nexport const MODIFIER_DEFINITIONS: readonly SyntaxDefinition[] = [\n {\n id: \"modifier.motion-reduce\",\n category: \"modifier\",\n label: \"motion-reduce:\",\n snippet: \"motion-reduce:\",\n description:\n \"Apply the wrapped class only when `prefers-reduced-motion: reduce` is active.\",\n platforms: WEB,\n },\n {\n id: \"modifier.motion-safe\",\n category: \"modifier\",\n label: \"motion-safe:\",\n snippet: \"motion-safe:\",\n description:\n \"Apply the wrapped class only when `prefers-reduced-motion: no-preference` is active.\",\n platforms: WEB,\n },\n];\n\nconst property = (\n label: string,\n snippet: string,\n motionKey: string,\n description: string,\n platforms: Platform[] = ALL,\n): SyntaxDefinition => ({\n id: `property.${label.replace(/[^a-z0-9]+/gi, \"-\").replace(/^-|-$/g, \"\")}`,\n category: \"property\",\n label,\n snippet,\n motionKey,\n description,\n platforms,\n});\n\nexport const PROPERTY_DEFINITIONS = [\n property(\n \"scale-\",\n \"scale-${1:110}\",\n \"scale\",\n \"Scale (100 is the resting value).\",\n ),\n property(\"scale-x-\", \"scale-x-${1:110}\", \"scaleX\", \"Scale on the x axis.\"),\n property(\"scale-y-\", \"scale-y-${1:110}\", \"scaleY\", \"Scale on the y axis.\"),\n property(\n \"scale-z-\",\n \"scale-z-${1:110}\",\n \"scaleZ\",\n \"Scale on the z axis.\",\n WEB,\n ),\n property(\"rotate-\", \"rotate-${1:45}\", \"rotate\", \"Rotate in degrees.\"),\n property(\n \"rotate-x-\",\n \"rotate-x-${1:45}\",\n \"rotateX\",\n \"Rotate around the x axis.\",\n ),\n property(\n \"rotate-y-\",\n \"rotate-y-${1:45}\",\n \"rotateY\",\n \"Rotate around the y axis.\",\n ),\n property(\"x-\", \"x-${1:20}\", \"x\", \"Translate on the x axis.\"),\n property(\"y-\", \"y-${1:20}\", \"y\", \"Translate on the y axis.\"),\n property(\"z-\", \"z-${1:20}\", \"z\", \"Translate on the z axis.\", WEB),\n // z-{0,10,20,30,40,50,auto} maps to zIndex (Tailwind-standard values)\n {\n id: \"property.z-zIndex\",\n category: \"property\",\n label: \"z-\",\n snippet: \"z-${1|0,10,20,30,40,50,auto|}\",\n motionKey: \"zIndex\",\n description:\n \"Animate z-index (Tailwind values: 0, 10, 20, 30, 40, 50, auto). Non-standard values translate on the z axis instead.\",\n platforms: WEB,\n },\n property(\"skew-x-\", \"skew-x-${1:12}\", \"skewX\", \"Skew on the x axis.\"),\n property(\"skew-y-\", \"skew-y-${1:12}\", \"skewY\", \"Skew on the y axis.\"),\n property(\n \"origin-x-\",\n \"origin-x-${1:50}\",\n \"originX\",\n \"Set the x transform origin.\",\n WEB,\n ),\n property(\n \"origin-y-\",\n \"origin-y-${1:50}\",\n \"originY\",\n \"Set the y transform origin.\",\n WEB,\n ),\n property(\n \"perspective-\",\n \"perspective-${1:800}\",\n \"perspective\",\n \"Set 3D perspective.\",\n WEB,\n ),\n property(\"opacity-\", \"opacity-${1:0}\", \"opacity\", \"Animate opacity (0–100).\"),\n property(\"blur-\", \"blur-${1:10}\", \"filter\", \"Animate CSS blur.\", WEB),\n property(\n \"brightness-\",\n \"brightness-${1:120}\",\n \"filter\",\n \"Animate CSS brightness.\",\n WEB,\n ),\n property(\n \"contrast-\",\n \"contrast-${1:120}\",\n \"filter\",\n \"Animate CSS contrast.\",\n WEB,\n ),\n property(\n \"saturate-\",\n \"saturate-${1:120}\",\n \"filter\",\n \"Animate CSS saturation.\",\n WEB,\n ),\n property(\n \"grayscale-\",\n \"grayscale-${1:100}\",\n \"filter\",\n \"Animate CSS grayscale.\",\n WEB,\n ),\n property(\n \"backdrop-blur-\",\n \"backdrop-blur-${1:10}\",\n \"backdropFilter\",\n \"Animate backdrop blur.\",\n WEB,\n ),\n property(\"w-\", \"w-${1:100}\", \"width\", \"Animate width.\"),\n property(\"h-\", \"h-${1:100}\", \"height\", \"Animate height.\"),\n property(\n \"rounded-\",\n \"rounded-${1:12}\",\n \"borderRadius\",\n \"Animate border radius.\",\n ),\n property(\n \"rounded-tl-\",\n \"rounded-tl-${1:12}\",\n \"borderTopLeftRadius\",\n \"Animate top-left border radius.\",\n ),\n property(\n \"rounded-tr-\",\n \"rounded-tr-${1:12}\",\n \"borderTopRightRadius\",\n \"Animate top-right border radius.\",\n ),\n property(\n \"rounded-bl-\",\n \"rounded-bl-${1:12}\",\n \"borderBottomLeftRadius\",\n \"Animate bottom-left border radius.\",\n ),\n property(\n \"rounded-br-\",\n \"rounded-br-${1:12}\",\n \"borderBottomRightRadius\",\n \"Animate bottom-right border radius.\",\n ),\n property(\"top-\", \"top-${1:0}\", \"top\", \"Animate top position.\"),\n property(\"left-\", \"left-${1:0}\", \"left\", \"Animate left position.\"),\n property(\"right-\", \"right-${1:0}\", \"right\", \"Animate right position.\"),\n property(\"bottom-\", \"bottom-${1:0}\", \"bottom\", \"Animate bottom position.\"),\n property(\"p-\", \"p-${1:16}\", \"padding\", \"Animate padding.\"),\n property(\"m-\", \"m-${1:16}\", \"margin\", \"Animate margin.\"),\n property(\"gap-\", \"gap-${1:8}\", \"gap\", \"Animate gap.\"),\n property(\"text-size-\", \"text-size-${1:16}\", \"fontSize\", \"Animate font size.\"),\n property(\n \"tracking-\",\n \"tracking-${1:1}\",\n \"letterSpacing\",\n \"Animate letter spacing.\",\n ),\n property(\"leading-\", \"leading-${1:24}\", \"lineHeight\", \"Animate line height.\"),\n property(\n \"border-w-\",\n \"border-w-${1:2}\",\n \"borderWidth\",\n \"Animate border width.\",\n ),\n property(\n \"bg-#\",\n \"bg-#${1:c8ff2e}\",\n \"backgroundColor\",\n \"Animate background color.\",\n ),\n property(\"text-#\", \"text-#${1:ffffff}\", \"color\", \"Animate text color.\"),\n property(\n \"border-#\",\n \"border-#${1:c8ff2e}\",\n \"borderColor\",\n \"Animate border color.\",\n ),\n property(\n \"path-length-\",\n \"path-length-${1:1}\",\n \"pathLength\",\n \"Animate SVG path length.\",\n WEB,\n ),\n property(\n \"text-shadow-[\",\n \"text-shadow-[${1:value}]\",\n \"textShadow\",\n \"Animate text shadow (arbitrary value; underscores become spaces).\",\n WEB,\n ),\n property(\n \"[=]\",\n \"[${1:property}=${2:value}]\",\n \"arbitrary\",\n \"Animate an allow-listed arbitrary value.\",\n WEB,\n ),\n] as const satisfies readonly SyntaxDefinition[];\n\nconst config = (\n category: Exclude<SyntaxCategory, \"gesture\" | \"property\">,\n label: string,\n snippet: string,\n description: string,\n platforms: Platform[] = ALL,\n): SyntaxDefinition => ({\n id: `${category}.${label}`,\n category,\n label: `animate-${label}`,\n snippet: `animate-${snippet}`,\n description,\n platforms,\n});\n\nexport const CONFIG_DEFINITIONS = [\n config(\n \"transition\",\n \"duration-\",\n \"duration-${1:300}\",\n \"Duration in milliseconds.\",\n ),\n config(\"transition\", \"delay-\", \"delay-${1:100}\", \"Delay in milliseconds.\"),\n config(\"transition\", \"ease-in\", \"ease-in\", \"Ease into the animation.\"),\n config(\"transition\", \"ease-out\", \"ease-out\", \"Ease out of the animation.\"),\n config(\"transition\", \"ease-in-out\", \"ease-in-out\", \"Ease in and out.\"),\n config(\"transition\", \"ease-linear\", \"ease-linear\", \"Use linear easing.\"),\n config(\"transition\", \"spring\", \"spring\", \"Use spring physics.\"),\n config(\"transition\", \"stiffness-\", \"stiffness-${1:300}\", \"Spring stiffness.\"),\n config(\"transition\", \"damping-\", \"damping-${1:24}\", \"Spring damping.\"),\n config(\"transition\", \"bounce-\", \"bounce-${1:20}\", \"Spring bounce (0–100).\"),\n config(\"transition\", \"mass-\", \"mass-${1:10}\", \"Spring mass in tenths.\"),\n config(\"transition\", \"repeat-\", \"repeat-${1:2}\", \"Repeat count.\"),\n config(\"transition\", \"repeat-infinite\", \"repeat-infinite\", \"Repeat forever.\"),\n config(\n \"transition\",\n \"repeat-reverse\",\n \"repeat-reverse\",\n \"Reverse each repetition.\",\n ),\n config(\n \"transition\",\n \"stagger-\",\n \"stagger-${1:60}\",\n \"Stagger children in milliseconds.\",\n ),\n config(\n \"transition\",\n \"delay-children-\",\n \"delay-children-${1:100}\",\n \"Delay child animations.\",\n ),\n config(\"viewport\", \"once\", \"once\", \"Run an in-view animation once.\"),\n config(\"viewport\", \"amount-\", \"amount-${1:50}\", \"Required visible amount.\"),\n config(\n \"viewport\",\n \"margin-\",\n \"margin-${1:100}\",\n \"Viewport margin in pixels.\",\n ),\n config(\n \"scroll\",\n \"scroll-axis-x\",\n \"scroll-axis-x\",\n \"Use horizontal scroll progress.\",\n WEB,\n ),\n config(\n \"scroll\",\n \"scroll-container\",\n \"scroll-container\",\n \"Track the page scroll container.\",\n WEB,\n ),\n config(\"drag\", \"drag-x\", \"drag-x\", \"Enable horizontal drag.\", [\n \"react\",\n \"vue\",\n \"react-native\",\n ]),\n config(\"drag\", \"drag-y\", \"drag-y\", \"Enable vertical drag.\", [\n \"react\",\n \"vue\",\n \"react-native\",\n ]),\n config(\"drag\", \"drag-both\", \"drag-both\", \"Enable drag on both axes.\", [\n \"react\",\n \"vue\",\n \"react-native\",\n ]),\n config(\n \"drag\",\n \"drag-elastic-\",\n \"drag-elastic-${1:50}\",\n \"Set drag elasticity.\",\n [\"react\", \"vue\", \"react-native\"],\n ),\n config(\"drag\", \"drag-snap\", \"drag-snap\", \"Snap drag to its origin.\", [\n \"react\",\n \"vue\",\n \"react-native\",\n ]),\n config(\"layout\", \"layout\", \"layout\", \"Animate layout changes.\", [\n \"react\",\n \"vue\",\n ]),\n config(\n \"layout\",\n \"layout-position\",\n \"layout-position\",\n \"Animate layout position.\",\n [\"react\", \"vue\"],\n ),\n config(\"layout\", \"layout-size\", \"layout-size\", \"Animate layout size.\", [\n \"react\",\n \"vue\",\n ]),\n config(\n \"layout\",\n \"layout-id-\",\n \"layout-id-${1:shared}\",\n \"Set a shared layout id.\",\n [\"react\", \"vue\"],\n ),\n config(\n \"variant\",\n \"from-\",\n \"from-${1:hidden}\",\n \"Select the initial named variant.\",\n [\"react\", \"vue\", \"react-native\"],\n ),\n config(\n \"variant\",\n \"to-\",\n \"to-${1:visible}\",\n \"Select the active named variant.\",\n [\"react\", \"vue\", \"react-native\"],\n ),\n config(\n \"preset\",\n \"preset-\",\n \"preset-${1:button-press}\",\n \"Apply a configured animation preset.\",\n ),\n] as const satisfies readonly SyntaxDefinition[];\n\nexport const MOTIONWIND_SYNTAX_REGISTRY: readonly SyntaxDefinition[] = [\n ...GESTURE_DEFINITIONS,\n ...MODIFIER_DEFINITIONS,\n ...PROPERTY_DEFINITIONS,\n ...CONFIG_DEFINITIONS,\n];\n\nexport const GESTURE_MAP = Object.fromEntries(\n GESTURE_DEFINITIONS.map((definition) => [\n definition.label.slice(\"animate-\".length, -1),\n definition.motionKey,\n ]),\n) as Record<string, GestureKey>;\n\nexport const GESTURE_KEYS = new Set(Object.keys(GESTURE_MAP));\n\nexport const EASING_MAP: Record<string, string> = {\n \"ease-in\": \"easeIn\",\n \"ease-out\": \"easeOut\",\n \"ease-in-out\": \"easeInOut\",\n \"ease-linear\": \"linear\",\n \"ease-circ-in\": \"circIn\",\n \"ease-circ-out\": \"circOut\",\n \"ease-circ-in-out\": \"circInOut\",\n \"ease-back-in\": \"backIn\",\n \"ease-back-out\": \"backOut\",\n \"ease-back-in-out\": \"backInOut\",\n \"ease-anticipate\": \"anticipate\",\n};\n\nexport function getSyntaxDefinitions(\n category?: SyntaxCategory,\n): readonly SyntaxDefinition[] {\n return category\n ? MOTIONWIND_SYNTAX_REGISTRY.filter(\n (definition) => definition.category === category,\n )\n : MOTIONWIND_SYNTAX_REGISTRY;\n}\n"]}
@@ -0,0 +1 @@
1
+ export { C as CONFIG_DEFINITIONS, E as EASING_MAP, G as GESTURE_DEFINITIONS, b as GESTURE_KEYS, c as GESTURE_MAP, u as MODIFIER_DEFINITIONS, e as MOTIONWIND_SYNTAX_REGISTRY, P as PROPERTY_DEFINITIONS, k as Platform, m as SyntaxCategory, n as SyntaxDefinition, t as getSyntaxDefinitions } from './types-BYtWWSgh.cjs';
@@ -0,0 +1 @@
1
+ export { C as CONFIG_DEFINITIONS, E as EASING_MAP, G as GESTURE_DEFINITIONS, b as GESTURE_KEYS, c as GESTURE_MAP, u as MODIFIER_DEFINITIONS, e as MOTIONWIND_SYNTAX_REGISTRY, P as PROPERTY_DEFINITIONS, k as Platform, m as SyntaxCategory, n as SyntaxDefinition, t as getSyntaxDefinitions } from './types-BYtWWSgh.js';
@@ -0,0 +1,3 @@
1
+ export { CONFIG_DEFINITIONS, EASING_MAP, GESTURE_DEFINITIONS, GESTURE_KEYS, GESTURE_MAP, MODIFIER_DEFINITIONS, MOTIONWIND_SYNTAX_REGISTRY, PROPERTY_DEFINITIONS, getSyntaxDefinitions } from './chunk-Z5I36REG.js';
2
+ //# sourceMappingURL=registry.js.map
3
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"registry.js"}