blocks-dusted 0.1.11 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/package.json +5 -2
  2. package/src/cli.js +39 -3
  3. package/src/commands/shop.js +59 -0
  4. package/src/commands/warehouse.js +73 -0
  5. package/src/installers/patchRenderBlocks.js +1 -1
  6. package/src/registry/validateTemplateManifest.js +2 -1
  7. package/templates/blocks/BannerDD790432/Component.tsx +63 -0
  8. package/templates/blocks/BannerDD790432/config.ts +54 -0
  9. package/templates/blocks/BannerDD790432/manifest.json +80 -0
  10. package/templates/blocks/Button47/Component.tsx +124 -0
  11. package/templates/blocks/Button47/config.ts +75 -0
  12. package/templates/blocks/Button47/link.ts +22 -0
  13. package/templates/blocks/Button47/manifest.json +105 -0
  14. package/templates/blocks/Button47/styles.module.scss +75 -0
  15. package/templates/blocks/DD-Accordion/Component.tsx +55 -36
  16. package/templates/blocks/DD-Accordion/config.ts +71 -59
  17. package/templates/blocks/DD-AnimText/Component.tsx +50 -32
  18. package/templates/blocks/DD-AnimText/config.ts +296 -295
  19. package/templates/blocks/DD-AsideNav/Component.tsx +323 -319
  20. package/templates/blocks/DD-Banner/Component.tsx +54 -51
  21. package/templates/blocks/DD-BookCall/Component.tsx +10 -9
  22. package/templates/blocks/DD-ButtonPop/Component.tsx +118 -117
  23. package/templates/blocks/DD-Card/Component.tsx +4 -4
  24. package/templates/blocks/DD-CardTemplate01/Component.tsx +5 -5
  25. package/templates/blocks/DD-CardsWithVariantV3/Component.tsx +472 -0
  26. package/templates/blocks/DD-CardsWithVariantV3/ElectricBorder/index.tsx +203 -0
  27. package/templates/blocks/DD-CardsWithVariantV3/ElectricBorder/styles.ts +87 -0
  28. package/templates/blocks/DD-CardsWithVariantV3/ElectricBorder/useInjectStyle.ts +39 -0
  29. package/templates/blocks/DD-CardsWithVariantV3/config.ts +326 -0
  30. package/templates/blocks/DD-CardsWithVariantV3/manifest.json +110 -0
  31. package/templates/blocks/DD-Carousel-A/Component.tsx +251 -249
  32. package/templates/blocks/DD-Carousel-B/Component.tsx +405 -403
  33. package/templates/blocks/DD-Chip/Component.tsx +14 -14
  34. package/templates/blocks/DD-ComparisonTable/Component.tsx +255 -256
  35. package/templates/blocks/DD-Contact/Component.tsx +433 -434
  36. package/templates/blocks/DD-Counter/Component.tsx +18 -13
  37. package/templates/blocks/DD-DeliCard/Component.tsx +303 -0
  38. package/templates/blocks/DD-DeliCard/config.ts +186 -0
  39. package/templates/blocks/DD-DeliCard/manifest.json +94 -0
  40. package/templates/blocks/DD-FeatCat/Component.tsx +302 -302
  41. package/templates/blocks/DD-FeatProd/CircularGallery.tsx +1179 -0
  42. package/templates/blocks/DD-FeatProd/Component.tsx +484 -0
  43. package/templates/blocks/DD-FeatProd/config.ts +173 -0
  44. package/templates/blocks/DD-FeatProd/manifest.json +93 -0
  45. package/templates/blocks/DD-FeatServ/Component.tsx +607 -0
  46. package/templates/blocks/DD-FeatServ/config.ts +213 -0
  47. package/templates/blocks/DD-FeatServ/manifest.json +113 -0
  48. package/templates/blocks/DD-FeatStrip/Component.tsx +584 -585
  49. package/templates/blocks/DD-FluidBtn/ButtonsEyeCatching.tsx +627 -628
  50. package/templates/blocks/DD-FluidBtn/Component.tsx +46 -43
  51. package/templates/blocks/DD-GooeyInfo/Component.tsx +150 -149
  52. package/templates/blocks/DD-GooeyInfo/config.ts +136 -135
  53. package/templates/blocks/DD-Hero/Component.tsx +16 -40
  54. package/templates/blocks/DD-HeroPlas/Component.tsx +50 -0
  55. package/templates/blocks/DD-HeroPlas/ThreeScene.tsx +109 -0
  56. package/templates/blocks/DD-HeroPlas/config.ts +33 -0
  57. package/templates/blocks/DD-HeroPlas/manifest.json +88 -0
  58. package/templates/blocks/DD-HorizontalScroll/Component.tsx +4 -5
  59. package/templates/blocks/DD-Icon/Component.tsx +46 -81
  60. package/templates/blocks/DD-IconButton/Component.tsx +13 -20
  61. package/templates/blocks/DD-IdTag/Component.tsx +22 -21
  62. package/templates/blocks/DD-IframeMedia/Component.tsx +14 -10
  63. package/templates/blocks/DD-LineAnim/Component.tsx +42 -36
  64. package/templates/blocks/DD-LogoMarq/Component.tsx +38 -48
  65. package/templates/blocks/DD-Lottie/Component.tsx +11 -3
  66. package/templates/blocks/DD-MasonaryMedia/Component.tsx +544 -547
  67. package/templates/blocks/DD-MasonaryMedia/config.ts +389 -389
  68. package/templates/blocks/DD-Masonry/Component.tsx +654 -644
  69. package/templates/blocks/DD-Masonry/config.ts +475 -475
  70. package/templates/blocks/DD-MaterialSwatches/Component.tsx +85 -0
  71. package/templates/blocks/DD-MaterialSwatches/config.ts +232 -0
  72. package/templates/blocks/DD-MaterialSwatches/manifest.json +84 -0
  73. package/templates/blocks/DD-MaterialSwatches/material.ts +107 -0
  74. package/templates/blocks/DD-NineCanvas/Component.tsx +129 -0
  75. package/templates/blocks/DD-NineCanvas/RenderBlocks.tsx +244 -0
  76. package/templates/blocks/DD-NineCanvas/allowedCanvasBlocks.ts +6 -0
  77. package/templates/blocks/DD-NineCanvas/blockComponents.tsx +8 -0
  78. package/templates/blocks/DD-NineCanvas/canvas/CanvasGrid.tsx +316 -0
  79. package/templates/blocks/DD-NineCanvas/canvas/RadialNav.tsx +432 -0
  80. package/templates/blocks/DD-NineCanvas/canvas/canvas-panels.css +889 -0
  81. package/templates/blocks/DD-NineCanvas/canvas/icons/custom-icons.tsx +364 -0
  82. package/templates/blocks/DD-NineCanvas/config.ts +61 -0
  83. package/templates/blocks/DD-NineCanvas/manifest.json +165 -0
  84. package/templates/blocks/DD-NineCanvas/styles.scss +152 -0
  85. package/templates/blocks/DD-NineCanvas/tooltip/get-strict-context.tsx +26 -0
  86. package/templates/blocks/DD-NineCanvas/tooltip/primitives.tsx +178 -0
  87. package/templates/blocks/DD-NineCanvas/tooltip/tooltip.tsx +71 -0
  88. package/templates/blocks/DD-NineCanvas/tooltip/use-controlled-state.tsx +33 -0
  89. package/templates/blocks/DD-NineCanvas/utilities/FadeOnScroll.tsx +68 -0
  90. package/templates/blocks/DD-NineCanvas/utilities/ParallaxWrapper.tsx +157 -0
  91. package/templates/blocks/DD-NineCanvas/utilities/renderCustomCSS.ts +5 -0
  92. package/templates/blocks/DD-NineCanvas/utilities/webglCleanup.ts +27 -0
  93. package/templates/blocks/DD-PayloadAIAssistant/Component.tsx +78 -0
  94. package/templates/blocks/DD-PayloadAIAssistant/DustedBot.tsx +590 -0
  95. package/templates/blocks/DD-PayloadAIAssistant/config.ts +37 -0
  96. package/templates/blocks/DD-PayloadAIAssistant/demo.css +125 -0
  97. package/templates/blocks/DD-PayloadAIAssistant/manifest.json +93 -0
  98. package/templates/blocks/DD-PayloadAIAssistant/source-defaults.ts +17 -0
  99. package/templates/blocks/DD-PayloadAIAssistant/styles.ts +306 -0
  100. package/templates/blocks/DD-Pricing/Component.tsx +368 -372
  101. package/templates/blocks/DD-Pricing/config.ts +215 -215
  102. package/templates/blocks/DD-Process/Component.tsx +147 -149
  103. package/templates/blocks/DD-Progress/Component.tsx +156 -141
  104. package/templates/blocks/DD-ProjHeader/Component.tsx +93 -91
  105. package/templates/blocks/DD-ProjSlider/Component.tsx +1 -1
  106. package/templates/blocks/DD-ProjSlider/config.ts +2 -2
  107. package/templates/blocks/DD-Section/Component.tsx +265 -266
  108. package/templates/blocks/DD-Separator/Component.tsx +66 -66
  109. package/templates/blocks/DD-Services/Component.tsx +176 -176
  110. package/templates/blocks/DD-ShowcaseGrid/Component.tsx +306 -307
  111. package/templates/blocks/DD-Slider-A/Component.tsx +237 -237
  112. package/templates/blocks/DD-StackCards/Component.tsx +474 -473
  113. package/templates/blocks/DD-Team/Component.tsx +247 -247
  114. package/templates/blocks/DD-TeamCards/Component.tsx +251 -251
  115. package/templates/blocks/DD-TechStack/Component.tsx +161 -168
  116. package/templates/blocks/DD-TestMarq/Component.tsx +158 -132
  117. package/templates/blocks/DD-Testim/Component.tsx +247 -247
  118. package/templates/blocks/DD-Testim2/Component.tsx +265 -256
  119. package/templates/blocks/DD-Testimonials/Component.tsx +139 -147
  120. package/templates/blocks/DD-TextMarq/Component.tsx +157 -157
  121. package/templates/blocks/DD-Thanks/Component.tsx +501 -500
  122. package/templates/blocks/DD-Work/Component.tsx +315 -315
  123. package/templates/blocks/DD-Work-B/Component.tsx +294 -294
  124. package/templates/blocks/DDHG-CTASection2/Component.tsx +183 -184
  125. package/templates/blocks/DDHG-HighlightArc/Component.tsx +246 -243
  126. package/templates/blocks/DDHG-LogoMarquee/Component.tsx +180 -93
  127. package/templates/blocks/DDHG-LogoMarquee/config.ts +154 -66
  128. package/templates/blocks/DDHG-NavCodeGrid/Component.tsx +225 -213
  129. package/templates/blocks/DDHG-ProcessSec/Component.tsx +38 -39
  130. package/templates/blocks/DDHG-ServiceDetails/Component.tsx +11 -11
  131. package/templates/blocks/DDHG-ServiceDetails/ServiceDetailCard.tsx +30 -47
  132. package/templates/blocks/DDHG-ServiceHero/Component.tsx +10 -10
  133. package/templates/blocks/DDHG-ServiceOverview/Component.tsx +23 -23
  134. package/templates/blocks/DDHG-StatsFAQ/Component.tsx +40 -40
  135. package/templates/blocks/DDHG-TeamCards/Component.tsx +140 -131
  136. package/templates/blocks/Form/Checkbox/index.tsx +45 -0
  137. package/templates/blocks/Form/Component.tsx +163 -0
  138. package/templates/blocks/Form/Country/index.tsx +65 -0
  139. package/templates/blocks/Form/Country/options.ts +982 -0
  140. package/templates/blocks/Form/Email/index.tsx +38 -0
  141. package/templates/blocks/Form/Error/index.tsx +15 -0
  142. package/templates/blocks/Form/Message/index.tsx +13 -0
  143. package/templates/blocks/Form/Number/index.tsx +36 -0
  144. package/templates/blocks/Form/Select/index.tsx +63 -0
  145. package/templates/blocks/Form/State/index.tsx +64 -0
  146. package/templates/blocks/Form/State/options.ts +52 -0
  147. package/templates/blocks/Form/Text/index.tsx +32 -0
  148. package/templates/blocks/Form/Textarea/index.tsx +40 -0
  149. package/templates/blocks/Form/Width/index.tsx +13 -0
  150. package/templates/blocks/Form/config.ts +51 -0
  151. package/templates/blocks/Form/fields.tsx +21 -0
  152. package/templates/blocks/Form/manifest.json +168 -0
  153. package/templates/blocks/MediaBlock/Component.tsx +67 -0
  154. package/templates/blocks/MediaBlock/config.ts +14 -0
  155. package/templates/blocks/MediaBlock/manifest.json +92 -0
  156. package/templates/blocks/TransitionsDustedShowcase/Component.tsx +9 -0
  157. package/templates/blocks/TransitionsDustedShowcase/config.ts +13 -0
  158. package/templates/blocks/TransitionsDustedShowcase/manifest.json +80 -0
  159. package/templates/blocks/rawHtml/Component.tsx +25 -0
  160. package/templates/blocks/rawHtml/config.ts +56 -0
  161. package/templates/blocks/rawHtml/manifest.json +80 -0
@@ -66,31 +66,48 @@ type Props = {
66
66
  shinyColor?: string
67
67
  }
68
68
 
69
+ const VARIATION_COLOR_CLASSES: Record<NonNullable<Props['variation']>, string> = {
70
+ 'gradual-spacing': 'text-violet-700 dark:text-violet-300',
71
+ typing: 'text-blue-700 dark:text-blue-300',
72
+ 'staggered-fade': 'text-emerald-700 dark:text-emerald-300',
73
+ rotate: 'text-amber-700 dark:text-amber-300',
74
+ 'letters-pull-up': 'text-rose-700 dark:text-rose-300',
75
+ 'words-pull-up': 'text-cyan-700 dark:text-cyan-300',
76
+ 'blur-in': 'text-indigo-700 dark:text-indigo-300',
77
+ 'text-fade-up': 'text-teal-700 dark:text-teal-300',
78
+ 'text-fade-down': 'text-orange-700 dark:text-orange-300',
79
+ 'no-animation': 'text-slate-800 dark:text-slate-200',
80
+ 'split-text': 'text-fuchsia-700 dark:text-fuchsia-300',
81
+ 'text-type': 'text-sky-700 dark:text-sky-300',
82
+ 'shuffle-text': 'text-lime-700 dark:text-lime-300',
83
+ 'shiny-text': 'text-purple-700 dark:text-purple-300',
84
+ }
85
+
69
86
  // Staggered Animation Variants
70
87
  const containerVariants = {
71
88
  hidden: {
72
- opacity: 0
89
+ opacity: 0,
73
90
  },
74
91
  visible: {
75
92
  opacity: 1,
76
93
  transition: {
77
- staggerChildren: 0.2
78
- }
79
- }
94
+ staggerChildren: 0.2,
95
+ },
96
+ },
80
97
  }
81
98
 
82
99
  const childVariants = {
83
100
  hidden: {
84
101
  opacity: 0,
85
- y: 20
102
+ y: 20,
86
103
  },
87
104
  visible: {
88
105
  opacity: 1,
89
106
  y: 0,
90
107
  transition: {
91
- duration: 0.5
92
- }
93
- }
108
+ duration: 0.5,
109
+ },
110
+ },
94
111
  }
95
112
 
96
113
  // Inline SplitText Component with scroll trigger repeat
@@ -113,7 +130,7 @@ export const SplitText: React.FC<SplitTextProps> = ({
113
130
  ease = 'back.out(1.7)',
114
131
  yOffset = 80,
115
132
  opacity = true,
116
- trigger = 'view'
133
+ trigger = 'view',
117
134
  }) => {
118
135
  const ref = useRef<HTMLParagraphElement>(null)
119
136
  const [fontsLoaded, setFontsLoaded] = useState<boolean>(false)
@@ -145,7 +162,7 @@ export const SplitText: React.FC<SplitTextProps> = ({
145
162
 
146
163
  const splitInstance = new GSAPSplitText(el, {
147
164
  type: 'chars',
148
- charsClass: 'split-char'
165
+ charsClass: 'split-char',
149
166
  })
150
167
 
151
168
  const chars = splitInstance.chars || []
@@ -153,7 +170,7 @@ export const SplitText: React.FC<SplitTextProps> = ({
153
170
  // Set initial state
154
171
  gsap.set(chars, {
155
172
  opacity: opacity ? 0 : 1,
156
- y: yOffset
173
+ y: yOffset,
157
174
  })
158
175
 
159
176
  const animateIn = () => {
@@ -163,7 +180,7 @@ export const SplitText: React.FC<SplitTextProps> = ({
163
180
  duration,
164
181
  ease,
165
182
  stagger: delay,
166
- force3D: true
183
+ force3D: true,
167
184
  })
168
185
  }
169
186
 
@@ -173,7 +190,7 @@ export const SplitText: React.FC<SplitTextProps> = ({
173
190
  y: yOffset,
174
191
  duration: duration * 0.5,
175
192
  ease: 'power2.in',
176
- stagger: delay * 0.5
193
+ stagger: delay * 0.5,
177
194
  })
178
195
  }
179
196
 
@@ -185,7 +202,7 @@ export const SplitText: React.FC<SplitTextProps> = ({
185
202
  onEnter: animateIn,
186
203
  onLeave: animateOut,
187
204
  onEnterBack: animateIn,
188
- onLeaveBack: animateOut
205
+ onLeaveBack: animateOut,
189
206
  })
190
207
  } else if (trigger === 'hover') {
191
208
  el.addEventListener('mouseenter', animateIn)
@@ -215,8 +232,8 @@ export const SplitText: React.FC<SplitTextProps> = ({
215
232
  },
216
233
  {
217
234
  dependencies: [text, delay, duration, ease, yOffset, opacity, trigger, fontsLoaded],
218
- scope: ref
219
- }
235
+ scope: ref,
236
+ },
220
237
  )
221
238
 
222
239
  return (
@@ -225,7 +242,7 @@ export const SplitText: React.FC<SplitTextProps> = ({
225
242
  className={`split-parent ${className}`}
226
243
  style={{
227
244
  // Ensure styles are inherited by split characters
228
- display: 'inline-block'
245
+ display: 'inline-block',
229
246
  }}
230
247
  >
231
248
  {text}
@@ -251,7 +268,7 @@ export const TextType: React.FC<TextTypeProps> = ({
251
268
  delay = 0,
252
269
  showCursor = true,
253
270
  cursorChar = '|',
254
- autoStart = true
271
+ autoStart = true,
255
272
  }) => {
256
273
  const [displayedText, setDisplayedText] = useState('')
257
274
  const [isTyping, setIsTyping] = useState(false)
@@ -295,7 +312,7 @@ export const TextType: React.FC<TextTypeProps> = ({
295
312
  duration: 0.5,
296
313
  repeat: -1,
297
314
  yoyo: true,
298
- ease: 'power2.inOut'
315
+ ease: 'power2.inOut',
299
316
  })
300
317
  }
301
318
  }, [showCursor])
@@ -308,7 +325,7 @@ export const TextType: React.FC<TextTypeProps> = ({
308
325
  trigger: containerRef.current,
309
326
  start: 'top 80%',
310
327
  onEnter: startTyping,
311
- once: true // Only trigger once
328
+ once: true, // Only trigger once
312
329
  })
313
330
  }
314
331
 
@@ -347,7 +364,7 @@ export const Shuffle: React.FC<ShuffleProps> = ({
347
364
  duration = 600,
348
365
  speed = 100,
349
366
  chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',
350
- autoStart = false
367
+ autoStart = false,
351
368
  }) => {
352
369
  const [displayText, setDisplayText] = useState(text)
353
370
  const containerRef = useRef<HTMLDivElement>(null)
@@ -371,7 +388,7 @@ export const Shuffle: React.FC<ShuffleProps> = ({
371
388
  }
372
389
  return chars[Math.floor(Math.random() * chars.length)]
373
390
  })
374
- .join('')
391
+ .join(''),
375
392
  )
376
393
 
377
394
  if (iteration >= originalText.length) {
@@ -400,7 +417,7 @@ export const Shuffle: React.FC<ShuffleProps> = ({
400
417
  onEnter: shuffle,
401
418
  onLeave: resetText,
402
419
  onEnterBack: shuffle,
403
- onLeaveBack: resetText
420
+ onLeaveBack: resetText,
404
421
  })
405
422
  }
406
423
  }, [shuffle, resetText, autoStart])
@@ -432,7 +449,7 @@ export const ShinyText: React.FC<ShinyTextProps> = ({
432
449
  duration = 2,
433
450
  delay = 0,
434
451
  repeat = true,
435
- color = 'rgba(255, 255, 255, 0.6)'
452
+ color = 'rgba(255, 255, 255, 0.6)',
436
453
  }) => {
437
454
  const ref = useRef<HTMLDivElement>(null)
438
455
  const containerRef = useRef(null)
@@ -443,8 +460,8 @@ export const ShinyText: React.FC<ShinyTextProps> = ({
443
460
  show: (i: number) => ({
444
461
  y: 0,
445
462
  opacity: 1,
446
- transition: { delay: i * 0.1 }
447
- })
463
+ transition: { delay: i * 0.1 },
464
+ }),
448
465
  }
449
466
 
450
467
  const letters = text.split('')
@@ -494,16 +511,16 @@ export const ShinyText: React.FC<ShinyTextProps> = ({
494
511
  backgroundPosition: '200% 0',
495
512
  WebkitBackgroundClip: 'text',
496
513
  backgroundClip: 'text',
497
- color: 'transparent'
514
+ color: 'transparent',
498
515
  })
499
516
  .to(ref.current, {
500
517
  backgroundPosition: '-200% 0',
501
518
  duration,
502
- ease: 'none'
519
+ ease: 'none',
503
520
  })
504
521
  .set(ref.current, {
505
522
  backgroundImage: 'none',
506
- color: 'inherit'
523
+ color: 'inherit',
507
524
  })
508
525
  }
509
526
 
@@ -512,7 +529,7 @@ export const ShinyText: React.FC<ShinyTextProps> = ({
512
529
  start: 'top 80%',
513
530
  end: 'bottom 20%',
514
531
  onEnter: shine,
515
- onEnterBack: shine
532
+ onEnterBack: shine,
516
533
  })
517
534
  }, [duration, delay, repeat, color])
518
535
 
@@ -562,7 +579,7 @@ export const DDAnimText: React.FC<Props> = ({
562
579
  shuffleDuration = 0.8,
563
580
  // Shiny props
564
581
  shinyDuration = 5,
565
- shinyColor = 'rgba(255, 255, 255, 0.6)'
582
+ shinyColor = 'rgba(255, 255, 255, 0.6)',
566
583
  }) => {
567
584
  // Generate unique ID for this component instance
568
585
  const uniqueId = useId()
@@ -603,7 +620,8 @@ export const DDAnimText: React.FC<Props> = ({
603
620
  aniTextBoxClass,
604
621
  className,
605
622
  aniTextBoxContainerClass,
606
- 'animated-text-container'
623
+ 'animated-text-container text-xl md:text-4xl lg:text-5xl font-medium [&_.payload-richtext]:text-current [&_.payload-richtext_*]:text-current',
624
+ VARIATION_COLOR_CLASSES[variation],
607
625
  )}
608
626
  >
609
627
  {/* Animations that require plain text */}