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