@bupple/vss-plugin-typography 1.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.
@@ -0,0 +1,2169 @@
1
+ // src/presets.ts
2
+ var BASE = {
3
+ fontStyle: "normal",
4
+ textDecoration: [],
5
+ textTransform: "none",
6
+ verticalText: false,
7
+ backgroundColor: "transparent",
8
+ background: null,
9
+ shadow: null,
10
+ stroke: null,
11
+ glow: null,
12
+ curve: null
13
+ };
14
+ var TEXT_PRESETS = [
15
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
16
+ // HEADINGS
17
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
18
+ {
19
+ id: "heading-hero",
20
+ label: "Hero Title",
21
+ category: "headings",
22
+ style: {
23
+ ...BASE,
24
+ text: "Hero Title",
25
+ fontFamily: "Inter",
26
+ fontSize: 96,
27
+ fontWeight: 800,
28
+ fontColor: "#ffffff",
29
+ textAlign: "center",
30
+ lineHeight: 0.95,
31
+ letterSpacing: -3
32
+ }
33
+ },
34
+ {
35
+ id: "heading-display",
36
+ label: "Display",
37
+ category: "headings",
38
+ style: {
39
+ ...BASE,
40
+ text: "DISPLAY",
41
+ fontFamily: "Montserrat",
42
+ fontSize: 88,
43
+ fontWeight: 900,
44
+ fontColor: "#ffffff",
45
+ textAlign: "center",
46
+ lineHeight: 1,
47
+ letterSpacing: -2
48
+ }
49
+ },
50
+ {
51
+ id: "heading-elegant",
52
+ label: "Elegant",
53
+ category: "headings",
54
+ style: {
55
+ ...BASE,
56
+ text: "Elegant",
57
+ fontFamily: "Playfair Display",
58
+ fontSize: 80,
59
+ fontWeight: 700,
60
+ fontColor: "#ffffff",
61
+ textAlign: "center",
62
+ lineHeight: 1.1,
63
+ letterSpacing: 2
64
+ }
65
+ },
66
+ {
67
+ id: "heading-subtitle",
68
+ label: "Subtitle",
69
+ category: "headings",
70
+ style: {
71
+ ...BASE,
72
+ text: "Subtitle Text",
73
+ fontFamily: "Inter",
74
+ fontSize: 48,
75
+ fontWeight: 400,
76
+ fontColor: "#cccccc",
77
+ textAlign: "center",
78
+ lineHeight: 1.3,
79
+ letterSpacing: 1
80
+ }
81
+ },
82
+ {
83
+ id: "heading-condensed",
84
+ label: "Condensed",
85
+ category: "headings",
86
+ style: {
87
+ ...BASE,
88
+ text: "CONDENSED",
89
+ fontFamily: "Bebas Neue",
90
+ fontSize: 92,
91
+ fontWeight: 400,
92
+ fontColor: "#ffffff",
93
+ textAlign: "center",
94
+ lineHeight: 0.9,
95
+ letterSpacing: 5
96
+ }
97
+ },
98
+ {
99
+ id: "heading-serif-bold",
100
+ label: "Serif Bold",
101
+ category: "headings",
102
+ style: {
103
+ ...BASE,
104
+ text: "Serif Bold",
105
+ fontFamily: "DM Serif Display",
106
+ fontSize: 76,
107
+ fontWeight: 400,
108
+ fontColor: "#ffffff",
109
+ textAlign: "center",
110
+ lineHeight: 1.05,
111
+ letterSpacing: 0
112
+ }
113
+ },
114
+ {
115
+ id: "heading-wide",
116
+ label: "Wide Track",
117
+ category: "headings",
118
+ style: {
119
+ ...BASE,
120
+ text: "WIDE TRACK",
121
+ fontFamily: "Raleway",
122
+ fontSize: 64,
123
+ fontWeight: 700,
124
+ fontColor: "#ffffff",
125
+ textAlign: "center",
126
+ textTransform: "uppercase",
127
+ lineHeight: 1.1,
128
+ letterSpacing: 12
129
+ }
130
+ },
131
+ {
132
+ id: "heading-impact",
133
+ label: "Impact",
134
+ category: "headings",
135
+ style: {
136
+ ...BASE,
137
+ text: "IMPACT",
138
+ fontFamily: "Anton",
139
+ fontSize: 100,
140
+ fontWeight: 400,
141
+ fontColor: "#ffffff",
142
+ textAlign: "center",
143
+ lineHeight: 0.9,
144
+ letterSpacing: 2
145
+ }
146
+ },
147
+ {
148
+ id: "heading-gradient-shadow",
149
+ label: "Shadow Title",
150
+ category: "headings",
151
+ style: {
152
+ ...BASE,
153
+ text: "SHADOW",
154
+ fontFamily: "Oswald",
155
+ fontSize: 84,
156
+ fontWeight: 700,
157
+ fontColor: "#ffffff",
158
+ textAlign: "center",
159
+ lineHeight: 1,
160
+ letterSpacing: 4,
161
+ shadow: {
162
+ color: "#000000",
163
+ opacity: 70,
164
+ blur: 0,
165
+ distance: 6,
166
+ angle: 135
167
+ }
168
+ }
169
+ },
170
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
171
+ // BODY & COPY
172
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
173
+ {
174
+ id: "body-default",
175
+ label: "Body Text",
176
+ category: "body",
177
+ style: {
178
+ ...BASE,
179
+ text: "Body text goes here",
180
+ fontFamily: "Inter",
181
+ fontSize: 32,
182
+ fontWeight: 400,
183
+ fontColor: "#ffffff",
184
+ textAlign: "left",
185
+ lineHeight: 1.6,
186
+ letterSpacing: 0
187
+ }
188
+ },
189
+ {
190
+ id: "body-serif",
191
+ label: "Serif Body",
192
+ category: "body",
193
+ style: {
194
+ ...BASE,
195
+ text: "Serif body text",
196
+ fontFamily: "Lora",
197
+ fontSize: 30,
198
+ fontWeight: 400,
199
+ fontColor: "#e8e8e8",
200
+ textAlign: "left",
201
+ lineHeight: 1.7,
202
+ letterSpacing: 0.3
203
+ }
204
+ },
205
+ {
206
+ id: "body-caption",
207
+ label: "Caption",
208
+ category: "body",
209
+ style: {
210
+ ...BASE,
211
+ text: "Caption text",
212
+ fontFamily: "Inter",
213
+ fontSize: 22,
214
+ fontWeight: 500,
215
+ fontColor: "#aaaaaa",
216
+ textAlign: "center",
217
+ lineHeight: 1.4,
218
+ letterSpacing: 0.5
219
+ }
220
+ },
221
+ {
222
+ id: "body-quote",
223
+ label: "Block Quote",
224
+ category: "body",
225
+ style: {
226
+ ...BASE,
227
+ text: '"Inspiring quote goes here"',
228
+ fontFamily: "Merriweather",
229
+ fontSize: 36,
230
+ fontWeight: 300,
231
+ fontColor: "#e0e0e0",
232
+ textAlign: "center",
233
+ lineHeight: 1.7,
234
+ letterSpacing: 0.2,
235
+ fontStyle: "italic"
236
+ }
237
+ },
238
+ {
239
+ id: "body-label",
240
+ label: "Label",
241
+ category: "body",
242
+ style: {
243
+ ...BASE,
244
+ text: "LABEL",
245
+ fontFamily: "Inter",
246
+ fontSize: 18,
247
+ fontWeight: 600,
248
+ fontColor: "#ffffff",
249
+ textAlign: "left",
250
+ textTransform: "uppercase",
251
+ lineHeight: 1.2,
252
+ letterSpacing: 3
253
+ }
254
+ },
255
+ {
256
+ id: "body-mono",
257
+ label: "Monospace",
258
+ category: "body",
259
+ style: {
260
+ ...BASE,
261
+ text: 'console.log("hello")',
262
+ fontFamily: "IBM Plex Mono",
263
+ fontSize: 24,
264
+ fontWeight: 400,
265
+ fontColor: "#a3e635",
266
+ textAlign: "left",
267
+ lineHeight: 1.5,
268
+ letterSpacing: 0
269
+ }
270
+ },
271
+ {
272
+ id: "body-footnote",
273
+ label: "Footnote",
274
+ category: "body",
275
+ style: {
276
+ ...BASE,
277
+ text: "Source: footnote",
278
+ fontFamily: "Inter",
279
+ fontSize: 16,
280
+ fontWeight: 400,
281
+ fontColor: "#888888",
282
+ textAlign: "left",
283
+ lineHeight: 1.4,
284
+ letterSpacing: 0.2,
285
+ fontStyle: "italic"
286
+ }
287
+ },
288
+ {
289
+ id: "body-pull-quote",
290
+ label: "Pull Quote",
291
+ category: "body",
292
+ style: {
293
+ ...BASE,
294
+ text: '"Words can change the world"',
295
+ fontFamily: "Cormorant Garamond",
296
+ fontSize: 42,
297
+ fontWeight: 500,
298
+ fontColor: "#ffffff",
299
+ textAlign: "center",
300
+ lineHeight: 1.5,
301
+ letterSpacing: 1,
302
+ fontStyle: "italic"
303
+ }
304
+ },
305
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
306
+ // MINIMAL
307
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
308
+ {
309
+ id: "minimal-thin",
310
+ label: "Thin",
311
+ category: "minimal",
312
+ style: {
313
+ ...BASE,
314
+ text: "Minimal",
315
+ fontFamily: "Raleway",
316
+ fontSize: 64,
317
+ fontWeight: 200,
318
+ fontColor: "#ffffff",
319
+ textAlign: "center",
320
+ lineHeight: 1.2,
321
+ letterSpacing: 8
322
+ }
323
+ },
324
+ {
325
+ id: "minimal-whisper",
326
+ label: "Whisper",
327
+ category: "minimal",
328
+ style: {
329
+ ...BASE,
330
+ text: "whisper",
331
+ fontFamily: "Inter",
332
+ fontSize: 48,
333
+ fontWeight: 300,
334
+ fontColor: "#999999",
335
+ textAlign: "center",
336
+ lineHeight: 1.3,
337
+ letterSpacing: 6,
338
+ textTransform: "lowercase"
339
+ }
340
+ },
341
+ {
342
+ id: "minimal-clean",
343
+ label: "Clean",
344
+ category: "minimal",
345
+ style: {
346
+ ...BASE,
347
+ text: "Clean",
348
+ fontFamily: "DM Sans",
349
+ fontSize: 56,
350
+ fontWeight: 400,
351
+ fontColor: "#ffffff",
352
+ textAlign: "center",
353
+ lineHeight: 1.2,
354
+ letterSpacing: 2
355
+ }
356
+ },
357
+ {
358
+ id: "minimal-spaced",
359
+ label: "Wide Spaced",
360
+ category: "minimal",
361
+ style: {
362
+ ...BASE,
363
+ text: "SPACED",
364
+ fontFamily: "Josefin Sans",
365
+ fontSize: 44,
366
+ fontWeight: 300,
367
+ fontColor: "#ffffff",
368
+ textAlign: "center",
369
+ textTransform: "uppercase",
370
+ lineHeight: 1.3,
371
+ letterSpacing: 16
372
+ }
373
+ },
374
+ {
375
+ id: "minimal-serif",
376
+ label: "Serif Quiet",
377
+ category: "minimal",
378
+ style: {
379
+ ...BASE,
380
+ text: "Quiet",
381
+ fontFamily: "EB Garamond",
382
+ fontSize: 60,
383
+ fontWeight: 400,
384
+ fontColor: "#d4d4d4",
385
+ textAlign: "center",
386
+ lineHeight: 1.2,
387
+ letterSpacing: 4,
388
+ fontStyle: "italic"
389
+ }
390
+ },
391
+ {
392
+ id: "minimal-hairline",
393
+ label: "Hairline",
394
+ category: "minimal",
395
+ style: {
396
+ ...BASE,
397
+ text: "HAIRLINE",
398
+ fontFamily: "Montserrat",
399
+ fontSize: 52,
400
+ fontWeight: 100,
401
+ fontColor: "#ffffff",
402
+ textAlign: "center",
403
+ textTransform: "uppercase",
404
+ lineHeight: 1.2,
405
+ letterSpacing: 10
406
+ }
407
+ },
408
+ {
409
+ id: "minimal-dash",
410
+ label: "Dash Accent",
411
+ category: "minimal",
412
+ style: {
413
+ ...BASE,
414
+ text: "\u2014 Minimal \u2014",
415
+ fontFamily: "Cormorant Garamond",
416
+ fontSize: 40,
417
+ fontWeight: 300,
418
+ fontColor: "#cccccc",
419
+ textAlign: "center",
420
+ lineHeight: 1.4,
421
+ letterSpacing: 4
422
+ }
423
+ },
424
+ {
425
+ id: "minimal-small-caps",
426
+ label: "Small Caps",
427
+ category: "minimal",
428
+ style: {
429
+ ...BASE,
430
+ text: "SMALL CAPS",
431
+ fontFamily: "Libre Baskerville",
432
+ fontSize: 28,
433
+ fontWeight: 400,
434
+ fontColor: "#e0e0e0",
435
+ textAlign: "center",
436
+ textTransform: "uppercase",
437
+ lineHeight: 1.5,
438
+ letterSpacing: 6
439
+ }
440
+ },
441
+ {
442
+ id: "minimal-ghost",
443
+ label: "Ghost",
444
+ category: "minimal",
445
+ style: {
446
+ ...BASE,
447
+ text: "Ghost",
448
+ fontFamily: "Inter",
449
+ fontSize: 72,
450
+ fontWeight: 200,
451
+ fontColor: "#ffffff",
452
+ textAlign: "center",
453
+ lineHeight: 1.1,
454
+ letterSpacing: 3,
455
+ stroke: { color: "#ffffff", width: 1 }
456
+ }
457
+ },
458
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
459
+ // MODERN
460
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
461
+ {
462
+ id: "modern-bold",
463
+ label: "Bold Modern",
464
+ category: "modern",
465
+ style: {
466
+ ...BASE,
467
+ text: "MODERN",
468
+ fontFamily: "DM Sans",
469
+ fontSize: 76,
470
+ fontWeight: 700,
471
+ fontColor: "#ffffff",
472
+ textAlign: "center",
473
+ lineHeight: 1,
474
+ letterSpacing: -1
475
+ }
476
+ },
477
+ {
478
+ id: "modern-contrast",
479
+ label: "High Contrast",
480
+ category: "modern",
481
+ style: {
482
+ ...BASE,
483
+ text: "Contrast",
484
+ fontFamily: "Space Grotesk",
485
+ fontSize: 68,
486
+ fontWeight: 700,
487
+ fontColor: "#ffffff",
488
+ textAlign: "center",
489
+ lineHeight: 1.05,
490
+ letterSpacing: -2,
491
+ shadow: {
492
+ color: "#6366f1",
493
+ opacity: 60,
494
+ blur: 30,
495
+ distance: 0,
496
+ angle: 0
497
+ }
498
+ }
499
+ },
500
+ {
501
+ id: "modern-geo",
502
+ label: "Geometric",
503
+ category: "modern",
504
+ style: {
505
+ ...BASE,
506
+ text: "GEOMETRIC",
507
+ fontFamily: "Poppins",
508
+ fontSize: 64,
509
+ fontWeight: 600,
510
+ fontColor: "#ffffff",
511
+ textAlign: "center",
512
+ textTransform: "uppercase",
513
+ lineHeight: 1.1,
514
+ letterSpacing: 4
515
+ }
516
+ },
517
+ {
518
+ id: "modern-accent",
519
+ label: "Color Accent",
520
+ category: "modern",
521
+ style: {
522
+ ...BASE,
523
+ text: "Accent",
524
+ fontFamily: "Inter",
525
+ fontSize: 72,
526
+ fontWeight: 800,
527
+ fontColor: "#818cf8",
528
+ textAlign: "center",
529
+ lineHeight: 1,
530
+ letterSpacing: -1
531
+ }
532
+ },
533
+ {
534
+ id: "modern-split",
535
+ label: "Split Tone",
536
+ category: "modern",
537
+ style: {
538
+ ...BASE,
539
+ text: "SPLIT",
540
+ fontFamily: "Sora",
541
+ fontSize: 80,
542
+ fontWeight: 800,
543
+ fontColor: "#ffffff",
544
+ textAlign: "center",
545
+ lineHeight: 0.95,
546
+ letterSpacing: 6,
547
+ stroke: { color: "#6366f1", width: 2 }
548
+ }
549
+ },
550
+ {
551
+ id: "modern-tight",
552
+ label: "Tight Stack",
553
+ category: "modern",
554
+ style: {
555
+ ...BASE,
556
+ text: "TIGHT\nSTACK",
557
+ fontFamily: "Inter",
558
+ fontSize: 68,
559
+ fontWeight: 900,
560
+ fontColor: "#ffffff",
561
+ textAlign: "center",
562
+ lineHeight: 0.85,
563
+ letterSpacing: -2
564
+ }
565
+ },
566
+ {
567
+ id: "modern-pill",
568
+ label: "Pill Label",
569
+ category: "modern",
570
+ style: {
571
+ ...BASE,
572
+ text: "NEW",
573
+ fontFamily: "Inter",
574
+ fontSize: 20,
575
+ fontWeight: 600,
576
+ fontColor: "#ffffff",
577
+ textAlign: "center",
578
+ lineHeight: 1.2,
579
+ letterSpacing: 2,
580
+ textTransform: "uppercase",
581
+ background: {
582
+ color: "#6366f1",
583
+ opacity: 100,
584
+ borderRadius: 8,
585
+ height: 6,
586
+ width: 12,
587
+ offsetY: 0,
588
+ offsetX: 0
589
+ }
590
+ }
591
+ },
592
+ {
593
+ id: "modern-underline",
594
+ label: "Underlined",
595
+ category: "modern",
596
+ style: {
597
+ ...BASE,
598
+ text: "Underlined",
599
+ fontFamily: "DM Sans",
600
+ fontSize: 56,
601
+ fontWeight: 500,
602
+ fontColor: "#ffffff",
603
+ textAlign: "center",
604
+ lineHeight: 1.2,
605
+ letterSpacing: 0,
606
+ textDecoration: ["underline"]
607
+ }
608
+ },
609
+ {
610
+ id: "modern-glass",
611
+ label: "Glass Card",
612
+ category: "modern",
613
+ style: {
614
+ ...BASE,
615
+ text: "Glass Card",
616
+ fontFamily: "Inter",
617
+ fontSize: 36,
618
+ fontWeight: 500,
619
+ fontColor: "#ffffff",
620
+ textAlign: "center",
621
+ lineHeight: 1.3,
622
+ letterSpacing: 0.5,
623
+ background: {
624
+ color: "#ffffff",
625
+ opacity: 12,
626
+ borderRadius: 6,
627
+ height: 8,
628
+ width: 10,
629
+ offsetY: 0,
630
+ offsetX: 0
631
+ }
632
+ }
633
+ },
634
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
635
+ // CREATIVE
636
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
637
+ {
638
+ id: "creative-outlined",
639
+ label: "Outlined",
640
+ category: "creative",
641
+ style: {
642
+ ...BASE,
643
+ text: "OUTLINED",
644
+ fontFamily: "Inter",
645
+ fontSize: 72,
646
+ fontWeight: 800,
647
+ fontColor: "transparent",
648
+ textAlign: "center",
649
+ lineHeight: 1.1,
650
+ letterSpacing: 2,
651
+ stroke: { color: "#ffffff", width: 3 }
652
+ }
653
+ },
654
+ {
655
+ id: "creative-duotone",
656
+ label: "Duotone",
657
+ category: "creative",
658
+ style: {
659
+ ...BASE,
660
+ text: "DUOTONE",
661
+ fontFamily: "Montserrat",
662
+ fontSize: 76,
663
+ fontWeight: 900,
664
+ fontColor: "#f472b6",
665
+ textAlign: "center",
666
+ lineHeight: 1,
667
+ letterSpacing: 2,
668
+ shadow: {
669
+ color: "#6366f1",
670
+ opacity: 100,
671
+ blur: 0,
672
+ distance: 5,
673
+ angle: 135
674
+ }
675
+ }
676
+ },
677
+ {
678
+ id: "creative-pop",
679
+ label: "Pop Art",
680
+ category: "creative",
681
+ style: {
682
+ ...BASE,
683
+ text: "POP!",
684
+ fontFamily: "Bungee",
685
+ fontSize: 80,
686
+ fontWeight: 400,
687
+ fontColor: "#FFD93D",
688
+ textAlign: "center",
689
+ lineHeight: 1,
690
+ letterSpacing: 2,
691
+ shadow: {
692
+ color: "#FF6B6B",
693
+ opacity: 100,
694
+ blur: 0,
695
+ distance: 6,
696
+ angle: 135
697
+ },
698
+ stroke: { color: "#000000", width: 3 }
699
+ }
700
+ },
701
+ {
702
+ id: "creative-stacked-shadow",
703
+ label: "Deep Shadow",
704
+ category: "creative",
705
+ style: {
706
+ ...BASE,
707
+ text: "DEEP",
708
+ fontFamily: "Anton",
709
+ fontSize: 88,
710
+ fontWeight: 400,
711
+ fontColor: "#ffffff",
712
+ textAlign: "center",
713
+ lineHeight: 0.95,
714
+ letterSpacing: 4,
715
+ shadow: {
716
+ color: "#000000",
717
+ opacity: 100,
718
+ blur: 0,
719
+ distance: 8,
720
+ angle: 135
721
+ }
722
+ }
723
+ },
724
+ {
725
+ id: "creative-brush",
726
+ label: "Brush Script",
727
+ category: "creative",
728
+ style: {
729
+ ...BASE,
730
+ text: "Creative",
731
+ fontFamily: "Sacramento",
732
+ fontSize: 80,
733
+ fontWeight: 400,
734
+ fontColor: "#ffffff",
735
+ textAlign: "center",
736
+ lineHeight: 1.1,
737
+ letterSpacing: 0
738
+ }
739
+ },
740
+ {
741
+ id: "creative-graffiti",
742
+ label: "Graffiti",
743
+ category: "creative",
744
+ style: {
745
+ ...BASE,
746
+ text: "GRAFFITI",
747
+ fontFamily: "Permanent Marker",
748
+ fontSize: 72,
749
+ fontWeight: 400,
750
+ fontColor: "#f59e0b",
751
+ textAlign: "center",
752
+ lineHeight: 1.1,
753
+ letterSpacing: 2,
754
+ shadow: {
755
+ color: "#000000",
756
+ opacity: 80,
757
+ blur: 4,
758
+ distance: 3,
759
+ angle: 120
760
+ }
761
+ }
762
+ },
763
+ {
764
+ id: "creative-double-stroke",
765
+ label: "Double Stroke",
766
+ category: "creative",
767
+ style: {
768
+ ...BASE,
769
+ text: "DOUBLE",
770
+ fontFamily: "Poppins",
771
+ fontSize: 76,
772
+ fontWeight: 800,
773
+ fontColor: "#000000",
774
+ textAlign: "center",
775
+ lineHeight: 1,
776
+ letterSpacing: 3,
777
+ stroke: { color: "#ffffff", width: 4 }
778
+ }
779
+ },
780
+ {
781
+ id: "creative-wave",
782
+ label: "Wave Text",
783
+ category: "creative",
784
+ style: {
785
+ ...BASE,
786
+ text: "WAVY",
787
+ fontFamily: "Fredoka",
788
+ fontSize: 72,
789
+ fontWeight: 600,
790
+ fontColor: "#38bdf8",
791
+ textAlign: "center",
792
+ lineHeight: 1.1,
793
+ letterSpacing: 4,
794
+ curve: { mode: "wave", strength: 40 }
795
+ }
796
+ },
797
+ {
798
+ id: "creative-arc",
799
+ label: "Arc Text",
800
+ category: "creative",
801
+ style: {
802
+ ...BASE,
803
+ text: "CURVED TEXT",
804
+ fontFamily: "Inter",
805
+ fontSize: 48,
806
+ fontWeight: 700,
807
+ fontColor: "#ffffff",
808
+ textAlign: "center",
809
+ lineHeight: 1.2,
810
+ letterSpacing: 4,
811
+ textTransform: "uppercase",
812
+ curve: { mode: "arc", strength: 50 }
813
+ }
814
+ },
815
+ {
816
+ id: "creative-retro-badge",
817
+ label: "Retro Badge",
818
+ category: "creative",
819
+ style: {
820
+ ...BASE,
821
+ text: "PREMIUM",
822
+ fontFamily: "Oswald",
823
+ fontSize: 32,
824
+ fontWeight: 500,
825
+ fontColor: "#d4af37",
826
+ textAlign: "center",
827
+ textTransform: "uppercase",
828
+ lineHeight: 1.2,
829
+ letterSpacing: 8,
830
+ stroke: { color: "#d4af37", width: 2 },
831
+ background: {
832
+ color: "#000000",
833
+ opacity: 80,
834
+ borderRadius: 4,
835
+ height: 8,
836
+ width: 12,
837
+ offsetY: 0,
838
+ offsetX: 0
839
+ }
840
+ }
841
+ },
842
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
843
+ // CINEMATIC
844
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
845
+ {
846
+ id: "cinema-title",
847
+ label: "Cinema Title",
848
+ category: "cinematic",
849
+ style: {
850
+ ...BASE,
851
+ text: "CINEMATIC",
852
+ fontFamily: "Oswald",
853
+ fontSize: 84,
854
+ fontWeight: 700,
855
+ fontColor: "#ffffff",
856
+ textAlign: "center",
857
+ lineHeight: 1,
858
+ letterSpacing: 10
859
+ }
860
+ },
861
+ {
862
+ id: "cinema-dramatic",
863
+ label: "Dramatic",
864
+ category: "cinematic",
865
+ style: {
866
+ ...BASE,
867
+ text: "DRAMATIC",
868
+ fontFamily: "Anton",
869
+ fontSize: 92,
870
+ fontWeight: 400,
871
+ fontColor: "#ffffff",
872
+ textAlign: "center",
873
+ lineHeight: 0.9,
874
+ letterSpacing: 6,
875
+ shadow: {
876
+ color: "#000000",
877
+ opacity: 60,
878
+ blur: 24,
879
+ distance: 4,
880
+ angle: 90
881
+ }
882
+ }
883
+ },
884
+ {
885
+ id: "cinema-credits",
886
+ label: "Credits",
887
+ category: "cinematic",
888
+ style: {
889
+ ...BASE,
890
+ text: "Director Name",
891
+ fontFamily: "EB Garamond",
892
+ fontSize: 36,
893
+ fontWeight: 400,
894
+ fontColor: "#cccccc",
895
+ textAlign: "center",
896
+ lineHeight: 1.8,
897
+ letterSpacing: 5
898
+ }
899
+ },
900
+ {
901
+ id: "cinema-chapter",
902
+ label: "Chapter",
903
+ category: "cinematic",
904
+ style: {
905
+ ...BASE,
906
+ text: "CHAPTER ONE",
907
+ fontFamily: "Cormorant Garamond",
908
+ fontSize: 48,
909
+ fontWeight: 600,
910
+ fontColor: "#d4af37",
911
+ textAlign: "center",
912
+ textTransform: "uppercase",
913
+ lineHeight: 1.3,
914
+ letterSpacing: 8
915
+ }
916
+ },
917
+ {
918
+ id: "cinema-opening",
919
+ label: "Opening Crawl",
920
+ category: "cinematic",
921
+ style: {
922
+ ...BASE,
923
+ text: "A long time ago...",
924
+ fontFamily: "Libre Baskerville",
925
+ fontSize: 32,
926
+ fontWeight: 400,
927
+ fontColor: "#f5c518",
928
+ textAlign: "center",
929
+ lineHeight: 1.8,
930
+ letterSpacing: 1,
931
+ fontStyle: "italic"
932
+ }
933
+ },
934
+ {
935
+ id: "cinema-location",
936
+ label: "Location",
937
+ category: "cinematic",
938
+ style: {
939
+ ...BASE,
940
+ text: "LOS ANGELES, CA",
941
+ fontFamily: "Roboto Condensed",
942
+ fontSize: 28,
943
+ fontWeight: 400,
944
+ fontColor: "#ffffff",
945
+ textAlign: "left",
946
+ textTransform: "uppercase",
947
+ lineHeight: 1.3,
948
+ letterSpacing: 6
949
+ }
950
+ },
951
+ {
952
+ id: "cinema-subtitle-overlay",
953
+ label: "Subtitle Bar",
954
+ category: "cinematic",
955
+ style: {
956
+ ...BASE,
957
+ text: "Spoken dialogue here",
958
+ fontFamily: "Inter",
959
+ fontSize: 28,
960
+ fontWeight: 400,
961
+ fontColor: "#ffffff",
962
+ textAlign: "center",
963
+ lineHeight: 1.4,
964
+ letterSpacing: 0.5,
965
+ background: {
966
+ color: "#000000",
967
+ opacity: 60,
968
+ borderRadius: 4,
969
+ height: 6,
970
+ width: 8,
971
+ offsetY: 0,
972
+ offsetX: 0
973
+ }
974
+ }
975
+ },
976
+ {
977
+ id: "cinema-epic",
978
+ label: "Epic",
979
+ category: "cinematic",
980
+ style: {
981
+ ...BASE,
982
+ text: "EPIC",
983
+ fontFamily: "Cinzel",
984
+ fontSize: 88,
985
+ fontWeight: 700,
986
+ fontColor: "#d4af37",
987
+ textAlign: "center",
988
+ lineHeight: 0.95,
989
+ letterSpacing: 12,
990
+ shadow: {
991
+ color: "#000000",
992
+ opacity: 80,
993
+ blur: 16,
994
+ distance: 0,
995
+ angle: 0
996
+ }
997
+ }
998
+ },
999
+ {
1000
+ id: "cinema-noir",
1001
+ label: "Film Noir",
1002
+ category: "cinematic",
1003
+ style: {
1004
+ ...BASE,
1005
+ text: "Film Noir",
1006
+ fontFamily: "Playfair Display",
1007
+ fontSize: 64,
1008
+ fontWeight: 700,
1009
+ fontColor: "#ffffff",
1010
+ textAlign: "center",
1011
+ lineHeight: 1.1,
1012
+ letterSpacing: 2,
1013
+ fontStyle: "italic",
1014
+ shadow: {
1015
+ color: "#000000",
1016
+ opacity: 90,
1017
+ blur: 20,
1018
+ distance: 2,
1019
+ angle: 180
1020
+ }
1021
+ }
1022
+ },
1023
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1024
+ // SOCIAL MEDIA
1025
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1026
+ {
1027
+ id: "social-lower-third",
1028
+ label: "Lower Third",
1029
+ category: "social",
1030
+ style: {
1031
+ ...BASE,
1032
+ text: "Name Here",
1033
+ fontFamily: "Inter",
1034
+ fontSize: 36,
1035
+ fontWeight: 600,
1036
+ fontColor: "#ffffff",
1037
+ textAlign: "left",
1038
+ lineHeight: 1.2,
1039
+ letterSpacing: 0.5,
1040
+ background: {
1041
+ color: "#000000",
1042
+ opacity: 80,
1043
+ borderRadius: 0,
1044
+ height: 5,
1045
+ width: 5,
1046
+ offsetY: 0,
1047
+ offsetX: 0
1048
+ }
1049
+ }
1050
+ },
1051
+ {
1052
+ id: "social-hashtag",
1053
+ label: "Hashtag",
1054
+ category: "social",
1055
+ style: {
1056
+ ...BASE,
1057
+ text: "#trending",
1058
+ fontFamily: "Poppins",
1059
+ fontSize: 28,
1060
+ fontWeight: 600,
1061
+ fontColor: "#ffffff",
1062
+ textAlign: "center",
1063
+ lineHeight: 1.3,
1064
+ letterSpacing: 0,
1065
+ background: {
1066
+ color: "#6366f1",
1067
+ opacity: 100,
1068
+ borderRadius: 6,
1069
+ height: 5,
1070
+ width: 10,
1071
+ offsetY: 0,
1072
+ offsetX: 0
1073
+ }
1074
+ }
1075
+ },
1076
+ {
1077
+ id: "social-callout",
1078
+ label: "Callout",
1079
+ category: "social",
1080
+ style: {
1081
+ ...BASE,
1082
+ text: "Important!",
1083
+ fontFamily: "Inter",
1084
+ fontSize: 40,
1085
+ fontWeight: 700,
1086
+ fontColor: "#000000",
1087
+ textAlign: "center",
1088
+ lineHeight: 1.2,
1089
+ letterSpacing: 0,
1090
+ background: {
1091
+ color: "#FFEAA7",
1092
+ opacity: 100,
1093
+ borderRadius: 8,
1094
+ height: 6,
1095
+ width: 8,
1096
+ offsetY: 0,
1097
+ offsetX: 0
1098
+ }
1099
+ }
1100
+ },
1101
+ {
1102
+ id: "social-subscribe",
1103
+ label: "Subscribe",
1104
+ category: "social",
1105
+ style: {
1106
+ ...BASE,
1107
+ text: "Subscribe",
1108
+ fontFamily: "Inter",
1109
+ fontSize: 26,
1110
+ fontWeight: 600,
1111
+ fontColor: "#ffffff",
1112
+ textAlign: "center",
1113
+ lineHeight: 1.3,
1114
+ letterSpacing: 0.5,
1115
+ background: {
1116
+ color: "#FF0000",
1117
+ opacity: 100,
1118
+ borderRadius: 8,
1119
+ height: 6,
1120
+ width: 12,
1121
+ offsetY: 0,
1122
+ offsetX: 0
1123
+ }
1124
+ }
1125
+ },
1126
+ {
1127
+ id: "social-handle",
1128
+ label: "@Handle",
1129
+ category: "social",
1130
+ style: {
1131
+ ...BASE,
1132
+ text: "@username",
1133
+ fontFamily: "DM Sans",
1134
+ fontSize: 30,
1135
+ fontWeight: 500,
1136
+ fontColor: "#ffffff",
1137
+ textAlign: "left",
1138
+ lineHeight: 1.3,
1139
+ letterSpacing: 0,
1140
+ background: {
1141
+ color: "#000000",
1142
+ opacity: 50,
1143
+ borderRadius: 4,
1144
+ height: 4,
1145
+ width: 6,
1146
+ offsetY: 0,
1147
+ offsetX: 0
1148
+ }
1149
+ }
1150
+ },
1151
+ {
1152
+ id: "social-like",
1153
+ label: "Like Button",
1154
+ category: "social",
1155
+ style: {
1156
+ ...BASE,
1157
+ text: "LIKE",
1158
+ fontFamily: "Inter",
1159
+ fontSize: 22,
1160
+ fontWeight: 700,
1161
+ fontColor: "#ffffff",
1162
+ textAlign: "center",
1163
+ textTransform: "uppercase",
1164
+ lineHeight: 1.2,
1165
+ letterSpacing: 3,
1166
+ background: {
1167
+ color: "#ec4899",
1168
+ opacity: 100,
1169
+ borderRadius: 8,
1170
+ height: 6,
1171
+ width: 12,
1172
+ offsetY: 0,
1173
+ offsetX: 0
1174
+ }
1175
+ }
1176
+ },
1177
+ {
1178
+ id: "social-countdown",
1179
+ label: "Countdown",
1180
+ category: "social",
1181
+ style: {
1182
+ ...BASE,
1183
+ text: "03",
1184
+ fontFamily: "Space Grotesk",
1185
+ fontSize: 120,
1186
+ fontWeight: 700,
1187
+ fontColor: "#ffffff",
1188
+ textAlign: "center",
1189
+ lineHeight: 1,
1190
+ letterSpacing: 0,
1191
+ glow: {
1192
+ mode: "outer",
1193
+ color: "#ffffff",
1194
+ intensity: 20,
1195
+ range: 10,
1196
+ offsetY: 0,
1197
+ offsetX: 0
1198
+ }
1199
+ }
1200
+ },
1201
+ {
1202
+ id: "social-swipe-up",
1203
+ label: "Swipe Up",
1204
+ category: "social",
1205
+ style: {
1206
+ ...BASE,
1207
+ text: "SWIPE UP",
1208
+ fontFamily: "Poppins",
1209
+ fontSize: 24,
1210
+ fontWeight: 600,
1211
+ fontColor: "#ffffff",
1212
+ textAlign: "center",
1213
+ textTransform: "uppercase",
1214
+ lineHeight: 1.3,
1215
+ letterSpacing: 4,
1216
+ background: {
1217
+ color: "#000000",
1218
+ opacity: 40,
1219
+ borderRadius: 4,
1220
+ height: 6,
1221
+ width: 10,
1222
+ offsetY: 0,
1223
+ offsetX: 0
1224
+ }
1225
+ }
1226
+ },
1227
+ {
1228
+ id: "social-price",
1229
+ label: "Price Tag",
1230
+ category: "social",
1231
+ style: {
1232
+ ...BASE,
1233
+ text: "$99",
1234
+ fontFamily: "Inter",
1235
+ fontSize: 48,
1236
+ fontWeight: 800,
1237
+ fontColor: "#ffffff",
1238
+ textAlign: "center",
1239
+ lineHeight: 1,
1240
+ letterSpacing: -1,
1241
+ background: {
1242
+ color: "#16a34a",
1243
+ opacity: 100,
1244
+ borderRadius: 6,
1245
+ height: 6,
1246
+ width: 10,
1247
+ offsetY: 0,
1248
+ offsetX: 0
1249
+ }
1250
+ }
1251
+ },
1252
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1253
+ // NEON & GLOW
1254
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1255
+ {
1256
+ id: "neon-cyan",
1257
+ label: "Cyan Neon",
1258
+ category: "neon-glow",
1259
+ style: {
1260
+ ...BASE,
1261
+ text: "NEON",
1262
+ fontFamily: "Poppins",
1263
+ fontSize: 72,
1264
+ fontWeight: 700,
1265
+ fontColor: "#00ffff",
1266
+ textAlign: "center",
1267
+ lineHeight: 1.1,
1268
+ letterSpacing: 4,
1269
+ glow: {
1270
+ mode: "outer",
1271
+ color: "#00ffff",
1272
+ intensity: 50,
1273
+ range: 20,
1274
+ offsetY: 0,
1275
+ offsetX: 0
1276
+ }
1277
+ }
1278
+ },
1279
+ {
1280
+ id: "neon-pink",
1281
+ label: "Hot Pink",
1282
+ category: "neon-glow",
1283
+ style: {
1284
+ ...BASE,
1285
+ text: "GLOW",
1286
+ fontFamily: "Montserrat",
1287
+ fontSize: 76,
1288
+ fontWeight: 800,
1289
+ fontColor: "#ff69b4",
1290
+ textAlign: "center",
1291
+ lineHeight: 1,
1292
+ letterSpacing: 6,
1293
+ glow: {
1294
+ mode: "outer",
1295
+ color: "#ff69b4",
1296
+ intensity: 60,
1297
+ range: 24,
1298
+ offsetY: 0,
1299
+ offsetX: 0
1300
+ }
1301
+ }
1302
+ },
1303
+ {
1304
+ id: "neon-green",
1305
+ label: "Matrix Green",
1306
+ category: "neon-glow",
1307
+ style: {
1308
+ ...BASE,
1309
+ text: "MATRIX",
1310
+ fontFamily: "IBM Plex Mono",
1311
+ fontSize: 64,
1312
+ fontWeight: 700,
1313
+ fontColor: "#00ff41",
1314
+ textAlign: "center",
1315
+ lineHeight: 1.1,
1316
+ letterSpacing: 6,
1317
+ glow: {
1318
+ mode: "outer",
1319
+ color: "#00ff41",
1320
+ intensity: 40,
1321
+ range: 16,
1322
+ offsetY: 0,
1323
+ offsetX: 0
1324
+ }
1325
+ }
1326
+ },
1327
+ {
1328
+ id: "neon-purple",
1329
+ label: "Purple Haze",
1330
+ category: "neon-glow",
1331
+ style: {
1332
+ ...BASE,
1333
+ text: "HAZE",
1334
+ fontFamily: "Orbitron",
1335
+ fontSize: 68,
1336
+ fontWeight: 700,
1337
+ fontColor: "#a855f7",
1338
+ textAlign: "center",
1339
+ lineHeight: 1.05,
1340
+ letterSpacing: 8,
1341
+ glow: {
1342
+ mode: "outer",
1343
+ color: "#a855f7",
1344
+ intensity: 55,
1345
+ range: 22,
1346
+ offsetY: 0,
1347
+ offsetX: 0
1348
+ }
1349
+ }
1350
+ },
1351
+ {
1352
+ id: "neon-warm",
1353
+ label: "Warm Glow",
1354
+ category: "neon-glow",
1355
+ style: {
1356
+ ...BASE,
1357
+ text: "WARM",
1358
+ fontFamily: "Bebas Neue",
1359
+ fontSize: 80,
1360
+ fontWeight: 400,
1361
+ fontColor: "#f97316",
1362
+ textAlign: "center",
1363
+ lineHeight: 0.95,
1364
+ letterSpacing: 6,
1365
+ glow: {
1366
+ mode: "outer",
1367
+ color: "#f97316",
1368
+ intensity: 45,
1369
+ range: 18,
1370
+ offsetY: 0,
1371
+ offsetX: 0
1372
+ }
1373
+ }
1374
+ },
1375
+ {
1376
+ id: "neon-sign",
1377
+ label: "Neon Sign",
1378
+ category: "neon-glow",
1379
+ style: {
1380
+ ...BASE,
1381
+ text: "OPEN",
1382
+ fontFamily: "Pacifico",
1383
+ fontSize: 72,
1384
+ fontWeight: 400,
1385
+ fontColor: "#fb923c",
1386
+ textAlign: "center",
1387
+ lineHeight: 1.2,
1388
+ letterSpacing: 2,
1389
+ glow: {
1390
+ mode: "outer",
1391
+ color: "#fb923c",
1392
+ intensity: 60,
1393
+ range: 25,
1394
+ offsetY: 0,
1395
+ offsetX: 0
1396
+ }
1397
+ }
1398
+ },
1399
+ {
1400
+ id: "neon-inner",
1401
+ label: "Inner Glow",
1402
+ category: "neon-glow",
1403
+ style: {
1404
+ ...BASE,
1405
+ text: "INNER",
1406
+ fontFamily: "Space Grotesk",
1407
+ fontSize: 72,
1408
+ fontWeight: 700,
1409
+ fontColor: "#ffffff",
1410
+ textAlign: "center",
1411
+ lineHeight: 1.05,
1412
+ letterSpacing: 4,
1413
+ glow: {
1414
+ mode: "inner",
1415
+ color: "#6366f1",
1416
+ intensity: 60,
1417
+ range: 15,
1418
+ offsetY: 0,
1419
+ offsetX: 0
1420
+ }
1421
+ }
1422
+ },
1423
+ {
1424
+ id: "neon-electric",
1425
+ label: "Electric Blue",
1426
+ category: "neon-glow",
1427
+ style: {
1428
+ ...BASE,
1429
+ text: "ELECTRIC",
1430
+ fontFamily: "Rajdhani",
1431
+ fontSize: 76,
1432
+ fontWeight: 700,
1433
+ fontColor: "#38bdf8",
1434
+ textAlign: "center",
1435
+ lineHeight: 1,
1436
+ letterSpacing: 6,
1437
+ glow: {
1438
+ mode: "outer",
1439
+ color: "#38bdf8",
1440
+ intensity: 50,
1441
+ range: 20,
1442
+ offsetY: 0,
1443
+ offsetX: 0
1444
+ },
1445
+ stroke: { color: "#0ea5e9", width: 1 }
1446
+ }
1447
+ },
1448
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1449
+ // RETRO & VINTAGE
1450
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1451
+ {
1452
+ id: "retro-classic",
1453
+ label: "Retro Bold",
1454
+ category: "retro-vintage",
1455
+ style: {
1456
+ ...BASE,
1457
+ text: "RETRO",
1458
+ fontFamily: "Anton",
1459
+ fontSize: 80,
1460
+ fontWeight: 400,
1461
+ fontColor: "#FFD93D",
1462
+ textAlign: "center",
1463
+ lineHeight: 1,
1464
+ letterSpacing: 4,
1465
+ shadow: {
1466
+ color: "#FF6B6B",
1467
+ opacity: 100,
1468
+ blur: 0,
1469
+ distance: 5,
1470
+ angle: 135
1471
+ }
1472
+ }
1473
+ },
1474
+ {
1475
+ id: "retro-diner",
1476
+ label: "Diner",
1477
+ category: "retro-vintage",
1478
+ style: {
1479
+ ...BASE,
1480
+ text: "DINER",
1481
+ fontFamily: "Bungee Shade",
1482
+ fontSize: 64,
1483
+ fontWeight: 400,
1484
+ fontColor: "#ff6b6b",
1485
+ textAlign: "center",
1486
+ lineHeight: 1.1,
1487
+ letterSpacing: 4
1488
+ }
1489
+ },
1490
+ {
1491
+ id: "retro-typewriter",
1492
+ label: "Typewriter",
1493
+ category: "retro-vintage",
1494
+ style: {
1495
+ ...BASE,
1496
+ text: "Typewriter",
1497
+ fontFamily: "Special Elite",
1498
+ fontSize: 40,
1499
+ fontWeight: 400,
1500
+ fontColor: "#d4c5a0",
1501
+ textAlign: "left",
1502
+ lineHeight: 1.6,
1503
+ letterSpacing: 2
1504
+ }
1505
+ },
1506
+ {
1507
+ id: "retro-western",
1508
+ label: "Western",
1509
+ category: "retro-vintage",
1510
+ style: {
1511
+ ...BASE,
1512
+ text: "WESTERN",
1513
+ fontFamily: "Rye",
1514
+ fontSize: 60,
1515
+ fontWeight: 400,
1516
+ fontColor: "#d4af37",
1517
+ textAlign: "center",
1518
+ lineHeight: 1.1,
1519
+ letterSpacing: 4,
1520
+ shadow: {
1521
+ color: "#7c2d12",
1522
+ opacity: 100,
1523
+ blur: 0,
1524
+ distance: 4,
1525
+ angle: 135
1526
+ }
1527
+ }
1528
+ },
1529
+ {
1530
+ id: "retro-disco",
1531
+ label: "Disco",
1532
+ category: "retro-vintage",
1533
+ style: {
1534
+ ...BASE,
1535
+ text: "DISCO",
1536
+ fontFamily: "Bungee",
1537
+ fontSize: 72,
1538
+ fontWeight: 400,
1539
+ fontColor: "#f472b6",
1540
+ textAlign: "center",
1541
+ lineHeight: 1,
1542
+ letterSpacing: 4,
1543
+ shadow: {
1544
+ color: "#7c3aed",
1545
+ opacity: 100,
1546
+ blur: 0,
1547
+ distance: 5,
1548
+ angle: 135
1549
+ }
1550
+ }
1551
+ },
1552
+ {
1553
+ id: "retro-gazette",
1554
+ label: "Gazette",
1555
+ category: "retro-vintage",
1556
+ style: {
1557
+ ...BASE,
1558
+ text: "The Daily",
1559
+ fontFamily: "Playfair Display",
1560
+ fontSize: 64,
1561
+ fontWeight: 900,
1562
+ fontColor: "#ffffff",
1563
+ textAlign: "center",
1564
+ lineHeight: 1,
1565
+ letterSpacing: 0,
1566
+ fontStyle: "italic"
1567
+ }
1568
+ },
1569
+ {
1570
+ id: "retro-vhs",
1571
+ label: "VHS",
1572
+ category: "retro-vintage",
1573
+ style: {
1574
+ ...BASE,
1575
+ text: "PLAY \u25B6",
1576
+ fontFamily: "VT323",
1577
+ fontSize: 48,
1578
+ fontWeight: 400,
1579
+ fontColor: "#ffffff",
1580
+ textAlign: "left",
1581
+ lineHeight: 1.3,
1582
+ letterSpacing: 4,
1583
+ glow: {
1584
+ mode: "outer",
1585
+ color: "#ffffff",
1586
+ intensity: 15,
1587
+ range: 6,
1588
+ offsetY: 0,
1589
+ offsetX: 0
1590
+ }
1591
+ }
1592
+ },
1593
+ {
1594
+ id: "retro-comic",
1595
+ label: "Comic",
1596
+ category: "retro-vintage",
1597
+ style: {
1598
+ ...BASE,
1599
+ text: "BOOM!",
1600
+ fontFamily: "Bangers",
1601
+ fontSize: 80,
1602
+ fontWeight: 400,
1603
+ fontColor: "#FFD93D",
1604
+ textAlign: "center",
1605
+ lineHeight: 1,
1606
+ letterSpacing: 3,
1607
+ stroke: { color: "#000000", width: 4 },
1608
+ shadow: {
1609
+ color: "#000000",
1610
+ opacity: 100,
1611
+ blur: 0,
1612
+ distance: 4,
1613
+ angle: 135
1614
+ }
1615
+ }
1616
+ },
1617
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1618
+ // EDITORIAL
1619
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1620
+ {
1621
+ id: "editorial-headline",
1622
+ label: "Headline",
1623
+ category: "editorial",
1624
+ style: {
1625
+ ...BASE,
1626
+ text: "Breaking News",
1627
+ fontFamily: "Playfair Display",
1628
+ fontSize: 64,
1629
+ fontWeight: 900,
1630
+ fontColor: "#ffffff",
1631
+ textAlign: "left",
1632
+ lineHeight: 1.05,
1633
+ letterSpacing: -1
1634
+ }
1635
+ },
1636
+ {
1637
+ id: "editorial-byline",
1638
+ label: "Byline",
1639
+ category: "editorial",
1640
+ style: {
1641
+ ...BASE,
1642
+ text: "By Jane Smith",
1643
+ fontFamily: "Inter",
1644
+ fontSize: 20,
1645
+ fontWeight: 400,
1646
+ fontColor: "#999999",
1647
+ textAlign: "left",
1648
+ lineHeight: 1.4,
1649
+ letterSpacing: 0.5,
1650
+ fontStyle: "italic"
1651
+ }
1652
+ },
1653
+ {
1654
+ id: "editorial-drop-cap",
1655
+ label: "Drop Cap",
1656
+ category: "editorial",
1657
+ style: {
1658
+ ...BASE,
1659
+ text: "A",
1660
+ fontFamily: "Playfair Display",
1661
+ fontSize: 120,
1662
+ fontWeight: 900,
1663
+ fontColor: "#ffffff",
1664
+ textAlign: "center",
1665
+ lineHeight: 0.85,
1666
+ letterSpacing: 0
1667
+ }
1668
+ },
1669
+ {
1670
+ id: "editorial-pullquote",
1671
+ label: "Editorial Quote",
1672
+ category: "editorial",
1673
+ style: {
1674
+ ...BASE,
1675
+ text: '"Words have power"',
1676
+ fontFamily: "Crimson Text",
1677
+ fontSize: 44,
1678
+ fontWeight: 400,
1679
+ fontColor: "#e0e0e0",
1680
+ textAlign: "center",
1681
+ lineHeight: 1.5,
1682
+ letterSpacing: 0.5,
1683
+ fontStyle: "italic"
1684
+ }
1685
+ },
1686
+ {
1687
+ id: "editorial-section",
1688
+ label: "Section Header",
1689
+ category: "editorial",
1690
+ style: {
1691
+ ...BASE,
1692
+ text: "OPINION",
1693
+ fontFamily: "Inter",
1694
+ fontSize: 16,
1695
+ fontWeight: 700,
1696
+ fontColor: "#ef4444",
1697
+ textAlign: "left",
1698
+ textTransform: "uppercase",
1699
+ lineHeight: 1.2,
1700
+ letterSpacing: 4
1701
+ }
1702
+ },
1703
+ {
1704
+ id: "editorial-magazine",
1705
+ label: "Magazine Title",
1706
+ category: "editorial",
1707
+ style: {
1708
+ ...BASE,
1709
+ text: "VOGUE",
1710
+ fontFamily: "Didact Gothic",
1711
+ fontSize: 80,
1712
+ fontWeight: 400,
1713
+ fontColor: "#ffffff",
1714
+ textAlign: "center",
1715
+ textTransform: "uppercase",
1716
+ lineHeight: 1,
1717
+ letterSpacing: 16
1718
+ }
1719
+ },
1720
+ {
1721
+ id: "editorial-column",
1722
+ label: "Column Text",
1723
+ category: "editorial",
1724
+ style: {
1725
+ ...BASE,
1726
+ text: "The story continues with more details about the event.",
1727
+ fontFamily: "Source Serif 4",
1728
+ fontSize: 24,
1729
+ fontWeight: 400,
1730
+ fontColor: "#d4d4d4",
1731
+ textAlign: "left",
1732
+ lineHeight: 1.8,
1733
+ letterSpacing: 0.2
1734
+ }
1735
+ },
1736
+ {
1737
+ id: "editorial-banner",
1738
+ label: "Banner",
1739
+ category: "editorial",
1740
+ style: {
1741
+ ...BASE,
1742
+ text: "EXCLUSIVE",
1743
+ fontFamily: "Inter",
1744
+ fontSize: 22,
1745
+ fontWeight: 800,
1746
+ fontColor: "#ffffff",
1747
+ textAlign: "center",
1748
+ textTransform: "uppercase",
1749
+ lineHeight: 1.2,
1750
+ letterSpacing: 6,
1751
+ background: {
1752
+ color: "#dc2626",
1753
+ opacity: 100,
1754
+ borderRadius: 0,
1755
+ height: 6,
1756
+ width: 10,
1757
+ offsetY: 0,
1758
+ offsetX: 0
1759
+ }
1760
+ }
1761
+ },
1762
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1763
+ // TECH & FUTURISTIC
1764
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1765
+ {
1766
+ id: "tech-hud",
1767
+ label: "HUD Display",
1768
+ category: "tech",
1769
+ style: {
1770
+ ...BASE,
1771
+ text: "TARGET ACQUIRED",
1772
+ fontFamily: "Orbitron",
1773
+ fontSize: 28,
1774
+ fontWeight: 700,
1775
+ fontColor: "#00ff41",
1776
+ textAlign: "left",
1777
+ textTransform: "uppercase",
1778
+ lineHeight: 1.3,
1779
+ letterSpacing: 4,
1780
+ glow: {
1781
+ mode: "outer",
1782
+ color: "#00ff41",
1783
+ intensity: 20,
1784
+ range: 8,
1785
+ offsetY: 0,
1786
+ offsetX: 0
1787
+ }
1788
+ }
1789
+ },
1790
+ {
1791
+ id: "tech-terminal",
1792
+ label: "Terminal",
1793
+ category: "tech",
1794
+ style: {
1795
+ ...BASE,
1796
+ text: "> system online_",
1797
+ fontFamily: "JetBrains Mono",
1798
+ fontSize: 24,
1799
+ fontWeight: 400,
1800
+ fontColor: "#22c55e",
1801
+ textAlign: "left",
1802
+ lineHeight: 1.5,
1803
+ letterSpacing: 1,
1804
+ background: {
1805
+ color: "#000000",
1806
+ opacity: 90,
1807
+ borderRadius: 8,
1808
+ height: 8,
1809
+ width: 10,
1810
+ offsetY: 0,
1811
+ offsetX: 0
1812
+ }
1813
+ }
1814
+ },
1815
+ {
1816
+ id: "tech-cyber",
1817
+ label: "Cyberpunk",
1818
+ category: "tech",
1819
+ style: {
1820
+ ...BASE,
1821
+ text: "CYBER",
1822
+ fontFamily: "Rajdhani",
1823
+ fontSize: 80,
1824
+ fontWeight: 700,
1825
+ fontColor: "#f0abfc",
1826
+ textAlign: "center",
1827
+ lineHeight: 1,
1828
+ letterSpacing: 6,
1829
+ glow: {
1830
+ mode: "outer",
1831
+ color: "#d946ef",
1832
+ intensity: 50,
1833
+ range: 18,
1834
+ offsetY: 0,
1835
+ offsetX: 0
1836
+ },
1837
+ stroke: { color: "#d946ef", width: 1 }
1838
+ }
1839
+ },
1840
+ {
1841
+ id: "tech-data",
1842
+ label: "Data Stream",
1843
+ category: "tech",
1844
+ style: {
1845
+ ...BASE,
1846
+ text: "01101001",
1847
+ fontFamily: "Share Tech Mono",
1848
+ fontSize: 36,
1849
+ fontWeight: 400,
1850
+ fontColor: "#38bdf8",
1851
+ textAlign: "center",
1852
+ lineHeight: 1.4,
1853
+ letterSpacing: 6,
1854
+ glow: {
1855
+ mode: "outer",
1856
+ color: "#38bdf8",
1857
+ intensity: 25,
1858
+ range: 8,
1859
+ offsetY: 0,
1860
+ offsetX: 0
1861
+ }
1862
+ }
1863
+ },
1864
+ {
1865
+ id: "tech-futura",
1866
+ label: "Futuristic",
1867
+ category: "tech",
1868
+ style: {
1869
+ ...BASE,
1870
+ text: "FUTURE",
1871
+ fontFamily: "Exo 2",
1872
+ fontSize: 72,
1873
+ fontWeight: 800,
1874
+ fontColor: "#ffffff",
1875
+ textAlign: "center",
1876
+ textTransform: "uppercase",
1877
+ lineHeight: 1,
1878
+ letterSpacing: 8,
1879
+ stroke: { color: "#0ea5e9", width: 2 }
1880
+ }
1881
+ },
1882
+ {
1883
+ id: "tech-loading",
1884
+ label: "Loading",
1885
+ category: "tech",
1886
+ style: {
1887
+ ...BASE,
1888
+ text: "LOADING...",
1889
+ fontFamily: "IBM Plex Mono",
1890
+ fontSize: 20,
1891
+ fontWeight: 500,
1892
+ fontColor: "#a3a3a3",
1893
+ textAlign: "center",
1894
+ textTransform: "uppercase",
1895
+ lineHeight: 1.3,
1896
+ letterSpacing: 6
1897
+ }
1898
+ },
1899
+ {
1900
+ id: "tech-glitch",
1901
+ label: "Glitch",
1902
+ category: "tech",
1903
+ style: {
1904
+ ...BASE,
1905
+ text: "GLITCH",
1906
+ fontFamily: "Space Grotesk",
1907
+ fontSize: 72,
1908
+ fontWeight: 700,
1909
+ fontColor: "#ffffff",
1910
+ textAlign: "center",
1911
+ lineHeight: 1,
1912
+ letterSpacing: 4,
1913
+ shadow: { color: "#ef4444", opacity: 80, blur: 0, distance: 3, angle: 0 },
1914
+ stroke: { color: "#3b82f6", width: 2 }
1915
+ }
1916
+ },
1917
+ {
1918
+ id: "tech-hologram",
1919
+ label: "Hologram",
1920
+ category: "tech",
1921
+ style: {
1922
+ ...BASE,
1923
+ text: "HOLOGRAM",
1924
+ fontFamily: "Orbitron",
1925
+ fontSize: 56,
1926
+ fontWeight: 400,
1927
+ fontColor: "#67e8f9",
1928
+ textAlign: "center",
1929
+ textTransform: "uppercase",
1930
+ lineHeight: 1.1,
1931
+ letterSpacing: 8,
1932
+ glow: {
1933
+ mode: "outer",
1934
+ color: "#22d3ee",
1935
+ intensity: 35,
1936
+ range: 14,
1937
+ offsetY: 0,
1938
+ offsetX: 0
1939
+ }
1940
+ }
1941
+ },
1942
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1943
+ // HANDWRITTEN & SCRIPT
1944
+ // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1945
+ {
1946
+ id: "hand-cursive",
1947
+ label: "Cursive",
1948
+ category: "handwritten",
1949
+ style: {
1950
+ ...BASE,
1951
+ text: "Beautiful",
1952
+ fontFamily: "Dancing Script",
1953
+ fontSize: 72,
1954
+ fontWeight: 700,
1955
+ fontColor: "#ffffff",
1956
+ textAlign: "center",
1957
+ lineHeight: 1.2,
1958
+ letterSpacing: 0
1959
+ }
1960
+ },
1961
+ {
1962
+ id: "hand-casual",
1963
+ label: "Casual",
1964
+ category: "handwritten",
1965
+ style: {
1966
+ ...BASE,
1967
+ text: "Hey there!",
1968
+ fontFamily: "Caveat",
1969
+ fontSize: 64,
1970
+ fontWeight: 700,
1971
+ fontColor: "#ffffff",
1972
+ textAlign: "center",
1973
+ lineHeight: 1.2,
1974
+ letterSpacing: 1
1975
+ }
1976
+ },
1977
+ {
1978
+ id: "hand-brush",
1979
+ label: "Brush",
1980
+ category: "handwritten",
1981
+ style: {
1982
+ ...BASE,
1983
+ text: "Inspire",
1984
+ fontFamily: "Sacramento",
1985
+ fontSize: 80,
1986
+ fontWeight: 400,
1987
+ fontColor: "#ffffff",
1988
+ textAlign: "center",
1989
+ lineHeight: 1.1,
1990
+ letterSpacing: 0
1991
+ }
1992
+ },
1993
+ {
1994
+ id: "hand-marker",
1995
+ label: "Marker",
1996
+ category: "handwritten",
1997
+ style: {
1998
+ ...BASE,
1999
+ text: "NOTE THIS",
2000
+ fontFamily: "Permanent Marker",
2001
+ fontSize: 52,
2002
+ fontWeight: 400,
2003
+ fontColor: "#fbbf24",
2004
+ textAlign: "center",
2005
+ lineHeight: 1.2,
2006
+ letterSpacing: 2
2007
+ }
2008
+ },
2009
+ {
2010
+ id: "hand-elegant-script",
2011
+ label: "Elegant Script",
2012
+ category: "handwritten",
2013
+ style: {
2014
+ ...BASE,
2015
+ text: "With Love",
2016
+ fontFamily: "Great Vibes",
2017
+ fontSize: 72,
2018
+ fontWeight: 400,
2019
+ fontColor: "#f9a8d4",
2020
+ textAlign: "center",
2021
+ lineHeight: 1.2,
2022
+ letterSpacing: 0
2023
+ }
2024
+ },
2025
+ {
2026
+ id: "hand-chalk",
2027
+ label: "Chalkboard",
2028
+ category: "handwritten",
2029
+ style: {
2030
+ ...BASE,
2031
+ text: "Today's Special",
2032
+ fontFamily: "Amatic SC",
2033
+ fontSize: 64,
2034
+ fontWeight: 700,
2035
+ fontColor: "#ffffff",
2036
+ textAlign: "center",
2037
+ lineHeight: 1.2,
2038
+ letterSpacing: 3
2039
+ }
2040
+ },
2041
+ {
2042
+ id: "hand-signature",
2043
+ label: "Signature",
2044
+ category: "handwritten",
2045
+ style: {
2046
+ ...BASE,
2047
+ text: "John Doe",
2048
+ fontFamily: "Alex Brush",
2049
+ fontSize: 68,
2050
+ fontWeight: 400,
2051
+ fontColor: "#ffffff",
2052
+ textAlign: "center",
2053
+ lineHeight: 1.1,
2054
+ letterSpacing: 0
2055
+ }
2056
+ },
2057
+ {
2058
+ id: "hand-notebook",
2059
+ label: "Notebook",
2060
+ category: "handwritten",
2061
+ style: {
2062
+ ...BASE,
2063
+ text: "Dear diary...",
2064
+ fontFamily: "Kalam",
2065
+ fontSize: 36,
2066
+ fontWeight: 400,
2067
+ fontColor: "#1e3a5f",
2068
+ textAlign: "left",
2069
+ lineHeight: 1.8,
2070
+ letterSpacing: 0.5,
2071
+ background: {
2072
+ color: "#fef9c3",
2073
+ opacity: 90,
2074
+ borderRadius: 4,
2075
+ height: 10,
2076
+ width: 10,
2077
+ offsetY: 0,
2078
+ offsetX: 0
2079
+ }
2080
+ }
2081
+ },
2082
+ {
2083
+ id: "hand-invitation",
2084
+ label: "Invitation",
2085
+ category: "handwritten",
2086
+ style: {
2087
+ ...BASE,
2088
+ text: "You're Invited",
2089
+ fontFamily: "Tangerine",
2090
+ fontSize: 72,
2091
+ fontWeight: 700,
2092
+ fontColor: "#d4af37",
2093
+ textAlign: "center",
2094
+ lineHeight: 1.2,
2095
+ letterSpacing: 2
2096
+ }
2097
+ }
2098
+ ];
2099
+ var TEXT_PRESET_CATEGORIES = [
2100
+ {
2101
+ id: "headings",
2102
+ name: "Headings",
2103
+ presets: TEXT_PRESETS.filter((p) => p.category === "headings")
2104
+ },
2105
+ {
2106
+ id: "body",
2107
+ name: "Body & Copy",
2108
+ presets: TEXT_PRESETS.filter((p) => p.category === "body")
2109
+ },
2110
+ {
2111
+ id: "minimal",
2112
+ name: "Minimal",
2113
+ presets: TEXT_PRESETS.filter((p) => p.category === "minimal")
2114
+ },
2115
+ {
2116
+ id: "modern",
2117
+ name: "Modern",
2118
+ presets: TEXT_PRESETS.filter((p) => p.category === "modern")
2119
+ },
2120
+ {
2121
+ id: "creative",
2122
+ name: "Creative",
2123
+ presets: TEXT_PRESETS.filter((p) => p.category === "creative")
2124
+ },
2125
+ {
2126
+ id: "cinematic",
2127
+ name: "Cinematic",
2128
+ presets: TEXT_PRESETS.filter((p) => p.category === "cinematic")
2129
+ },
2130
+ {
2131
+ id: "social",
2132
+ name: "Social Media",
2133
+ presets: TEXT_PRESETS.filter((p) => p.category === "social")
2134
+ },
2135
+ {
2136
+ id: "neon-glow",
2137
+ name: "Neon & Glow",
2138
+ presets: TEXT_PRESETS.filter((p) => p.category === "neon-glow")
2139
+ },
2140
+ {
2141
+ id: "retro-vintage",
2142
+ name: "Retro & Vintage",
2143
+ presets: TEXT_PRESETS.filter((p) => p.category === "retro-vintage")
2144
+ },
2145
+ {
2146
+ id: "editorial",
2147
+ name: "Editorial",
2148
+ presets: TEXT_PRESETS.filter((p) => p.category === "editorial")
2149
+ },
2150
+ {
2151
+ id: "tech",
2152
+ name: "Tech & Futuristic",
2153
+ presets: TEXT_PRESETS.filter((p) => p.category === "tech")
2154
+ },
2155
+ {
2156
+ id: "handwritten",
2157
+ name: "Handwritten & Script",
2158
+ presets: TEXT_PRESETS.filter((p) => p.category === "handwritten")
2159
+ }
2160
+ ];
2161
+ var _categories = TEXT_PRESET_CATEGORIES;
2162
+ function setPresets(presets, categories) {
2163
+ _categories = categories;
2164
+ }
2165
+ function getCategories() {
2166
+ return _categories;
2167
+ }
2168
+
2169
+ export { TEXT_PRESETS, TEXT_PRESET_CATEGORIES, getCategories, setPresets };