duck-dev-lib 0.0.90 → 0.0.92

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "duck-dev-lib",
3
- "version": "0.0.90",
3
+ "version": "0.0.92",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.0.0",
6
6
  "@angular/core": "^21.0.0"
package/tokens.css CHANGED
@@ -151,3 +151,209 @@
151
151
  [ddTheme='violet'] {
152
152
  --dd-base-50: var(--dd-magenta-500);
153
153
  }
154
+
155
+ /* ═══════════════════════════════════════════════════════════
156
+ NEO PALETTE TOKENS
157
+ ───────────────────────────────────────────────────────────
158
+ Set via [ddPalette="<name>"] attribute on the root element.
159
+ Controls --dd-neo-* variables used by Neobrutalism components.
160
+ Independent of ddTheme (which controls --dd-base-* for Classic).
161
+
162
+ Defaults:
163
+ light (no ddTheme) → tropical-punch
164
+ dark (ddTheme="dark") → berry-candy
165
+ ═══════════════════════════════════════════════════════════ */
166
+
167
+ /* ═══════════════ LIGHT PALETTES ═══════════════ */
168
+
169
+ /* 01 — Candy Store: bright playful pastels */
170
+ [ddPalette='candy-store'] {
171
+ --dd-neo-ink: #1a1a1a;
172
+ --dd-neo-paper: #FFF8F0;
173
+ --dd-neo-shadow: rgba(26, 26, 26, 0.18);
174
+ --dd-neo-ana-1: #FF8FAB;
175
+ --dd-neo-ana-1-contrast: #000;
176
+ --dd-neo-ana-2: #FFE156;
177
+ --dd-neo-ana-2-contrast: #000;
178
+ --dd-neo-ana-3: #8BE4A8;
179
+ --dd-neo-ana-3-contrast: #000;
180
+ --dd-neo-ana-4: #FFF5E6;
181
+ --dd-neo-ana-4-contrast: #000;
182
+ --dd-neo-ana-5: #B8A9FF;
183
+ --dd-neo-ana-5-contrast: #000;
184
+ --dd-neo-ana-6: #FFB088;
185
+ --dd-neo-ana-6-contrast: #000;
186
+ }
187
+
188
+ /* 02 — Tropical Punch: vivid coral, teal, mango, lime (default light) */
189
+ [ddPalette='tropical-punch'] {
190
+ --dd-neo-ink: #1a1a1a;
191
+ --dd-neo-paper: #FAFAF5;
192
+ --dd-neo-shadow: rgba(26, 26, 26, 0.18);
193
+ --dd-neo-ana-1: #FF6B6B;
194
+ --dd-neo-ana-1-contrast: #000;
195
+ --dd-neo-ana-2: #4ECDC4;
196
+ --dd-neo-ana-2-contrast: #000;
197
+ --dd-neo-ana-3: #FFD93D;
198
+ --dd-neo-ana-3-contrast: #000;
199
+ --dd-neo-ana-4: #F5F5F0;
200
+ --dd-neo-ana-4-contrast: #000;
201
+ --dd-neo-ana-5: #95E06C;
202
+ --dd-neo-ana-5-contrast: #000;
203
+ --dd-neo-ana-6: #74B9FF;
204
+ --dd-neo-ana-6-contrast: #000;
205
+ }
206
+
207
+ /* 03 — Sunset Boulevard: warm tangerine, rose, sage, caramel */
208
+ [ddPalette='sunset-boulevard'] {
209
+ --dd-neo-ink: #2a1810;
210
+ --dd-neo-paper: #FEF9F0;
211
+ --dd-neo-shadow: rgba(42, 24, 16, 0.16);
212
+ --dd-neo-ana-1: #FF8C42;
213
+ --dd-neo-ana-1-contrast: #000;
214
+ --dd-neo-ana-2: #E8A0BF;
215
+ --dd-neo-ana-2-contrast: #000;
216
+ --dd-neo-ana-3: #F9F871;
217
+ --dd-neo-ana-3-contrast: #000;
218
+ --dd-neo-ana-4: #FEFCF3;
219
+ --dd-neo-ana-4-contrast: #000;
220
+ --dd-neo-ana-5: #B5D99C;
221
+ --dd-neo-ana-5-contrast: #000;
222
+ --dd-neo-ana-6: #D4A574;
223
+ --dd-neo-ana-6-contrast: #000;
224
+ }
225
+
226
+ /* 04 — Memphis Pop: bold geometric hot pink, emerald, gold */
227
+ [ddPalette='memphis-pop'] {
228
+ --dd-neo-ink: #111111;
229
+ --dd-neo-paper: #F8F8F8;
230
+ --dd-neo-shadow: rgba(17, 17, 17, 0.22);
231
+ --dd-neo-ana-1: #FF5E78;
232
+ --dd-neo-ana-1-contrast: #000;
233
+ --dd-neo-ana-2: #44D7B6;
234
+ --dd-neo-ana-2-contrast: #000;
235
+ --dd-neo-ana-3: #FFE169;
236
+ --dd-neo-ana-3-contrast: #000;
237
+ --dd-neo-ana-4: #F0F0F0;
238
+ --dd-neo-ana-4-contrast: #000;
239
+ --dd-neo-ana-5: #6C9BD2;
240
+ --dd-neo-ana-5-contrast: #000;
241
+ --dd-neo-ana-6: #C9B1FF;
242
+ --dd-neo-ana-6-contrast: #000;
243
+ }
244
+
245
+ /* 05 — Bauhaus Bright: primary-inspired raspberry, azure, sunflower */
246
+ [ddPalette='bauhaus-bright'] {
247
+ --dd-neo-ink: #111111;
248
+ --dd-neo-paper: #FFFFF5;
249
+ --dd-neo-shadow: rgba(17, 17, 17, 0.20);
250
+ --dd-neo-ana-1: #E85D75;
251
+ --dd-neo-ana-1-contrast: #000;
252
+ --dd-neo-ana-2: #47B5FF;
253
+ --dd-neo-ana-2-contrast: #000;
254
+ --dd-neo-ana-3: #FFD32D;
255
+ --dd-neo-ana-3-contrast: #000;
256
+ --dd-neo-ana-4: #F5F5EA;
257
+ --dd-neo-ana-4-contrast: #000;
258
+ --dd-neo-ana-5: #FF9F45;
259
+ --dd-neo-ana-5-contrast: #000;
260
+ --dd-neo-ana-6: #7BD3B0;
261
+ --dd-neo-ana-6-contrast: #000;
262
+ }
263
+
264
+ /* ═══════════════ DARK PALETTES ═══════════════ */
265
+
266
+ /* 01 — Deep Neon: electric teal ink on near-black */
267
+ [ddPalette='deep-neon'] {
268
+ --dd-neo-ink: #30e8c8;
269
+ --dd-neo-paper: #111114;
270
+ --dd-neo-shadow: rgba(48, 232, 200, 0.2);
271
+ --dd-neo-ana-1: #0b5e55;
272
+ --dd-neo-ana-1-contrast: #fff;
273
+ --dd-neo-ana-2: #8a1b5a;
274
+ --dd-neo-ana-2-contrast: #fff;
275
+ --dd-neo-ana-3: #1a2e5e;
276
+ --dd-neo-ana-3-contrast: #fff;
277
+ --dd-neo-ana-4: #14140e;
278
+ --dd-neo-ana-4-contrast: #fff;
279
+ --dd-neo-ana-5: #5e2080;
280
+ --dd-neo-ana-5-contrast: #fff;
281
+ --dd-neo-ana-6: #6e3a10;
282
+ --dd-neo-ana-6-contrast: #fff;
283
+ }
284
+
285
+ /* 02 — Ember Glow: warm amber ink on charcoal */
286
+ [ddPalette='ember-glow'] {
287
+ --dd-neo-ink: #e8a050;
288
+ --dd-neo-paper: #151010;
289
+ --dd-neo-shadow: rgba(232, 160, 80, 0.18);
290
+ --dd-neo-ana-1: #8b3a14;
291
+ --dd-neo-ana-1-contrast: #fff;
292
+ --dd-neo-ana-2: #7a1a2e;
293
+ --dd-neo-ana-2-contrast: #fff;
294
+ --dd-neo-ana-3: #3a2215;
295
+ --dd-neo-ana-3-contrast: #fff;
296
+ --dd-neo-ana-4: #151010;
297
+ --dd-neo-ana-4-contrast: #fff;
298
+ --dd-neo-ana-5: #6a3510;
299
+ --dd-neo-ana-5-contrast: #fff;
300
+ --dd-neo-ana-6: #5a1a1a;
301
+ --dd-neo-ana-6-contrast: #fff;
302
+ }
303
+
304
+ /* 03 — Toxic Garden: acid lime ink on dark soil */
305
+ [ddPalette='toxic-garden'] {
306
+ --dd-neo-ink: #a0e830;
307
+ --dd-neo-paper: #0c0e0a;
308
+ --dd-neo-shadow: rgba(160, 232, 48, 0.15);
309
+ --dd-neo-ana-1: #2a5e10;
310
+ --dd-neo-ana-1-contrast: #fff;
311
+ --dd-neo-ana-2: #7a1a50;
312
+ --dd-neo-ana-2-contrast: #fff;
313
+ --dd-neo-ana-3: #1e2a14;
314
+ --dd-neo-ana-3-contrast: #fff;
315
+ --dd-neo-ana-4: #0e100c;
316
+ --dd-neo-ana-4-contrast: #fff;
317
+ --dd-neo-ana-5: #4a1a6a;
318
+ --dd-neo-ana-5-contrast: #fff;
319
+ --dd-neo-ana-6: #0a4a42;
320
+ --dd-neo-ana-6-contrast: #fff;
321
+ }
322
+
323
+ /* 04 — Midnight Royal: gold ink on deep navy */
324
+ [ddPalette='midnight-royal'] {
325
+ --dd-neo-ink: #d0a848;
326
+ --dd-neo-paper: #0c0e1a;
327
+ --dd-neo-shadow: rgba(208, 168, 72, 0.16);
328
+ --dd-neo-ana-1: #1a3a7a;
329
+ --dd-neo-ana-1-contrast: #fff;
330
+ --dd-neo-ana-2: #5a2080;
331
+ --dd-neo-ana-2-contrast: #fff;
332
+ --dd-neo-ana-3: #141830;
333
+ --dd-neo-ana-3-contrast: #fff;
334
+ --dd-neo-ana-4: #0c0e1a;
335
+ --dd-neo-ana-4-contrast: #fff;
336
+ --dd-neo-ana-5: #3a2a6a;
337
+ --dd-neo-ana-5-contrast: #fff;
338
+ --dd-neo-ana-6: #6a4a10;
339
+ --dd-neo-ana-6-contrast: #fff;
340
+ }
341
+
342
+ /* 05 — Berry Candy: soft white ink on dark grape (default dark) */
343
+ [ddPalette='berry-candy'] {
344
+ --dd-neo-ink: #e0e0e0;
345
+ --dd-neo-paper: #141020;
346
+ --dd-neo-shadow: rgba(224, 224, 224, 0.12);
347
+ --dd-neo-ana-1: #7a1a50;
348
+ --dd-neo-ana-1-contrast: #fff;
349
+ --dd-neo-ana-2: #1a4a6a;
350
+ --dd-neo-ana-2-contrast: #fff;
351
+ --dd-neo-ana-3: #1e1830;
352
+ --dd-neo-ana-3-contrast: #fff;
353
+ --dd-neo-ana-4: #141020;
354
+ --dd-neo-ana-4-contrast: #fff;
355
+ --dd-neo-ana-5: #5a1a7a;
356
+ --dd-neo-ana-5-contrast: #fff;
357
+ --dd-neo-ana-6: #0a5a4a;
358
+ --dd-neo-ana-6-contrast: #fff;
359
+ }
@@ -12,6 +12,21 @@ declare enum AccentEnumColor {
12
12
  Violet = "violet"
13
13
  }
14
14
 
15
+ /** Light neobrutalism palettes */
16
+ type DdNeoPaletteLight = 'candy-store' | 'tropical-punch' | 'sunset-boulevard' | 'memphis-pop' | 'bauhaus-bright';
17
+ /** Dark neobrutalism palettes */
18
+ type DdNeoPaletteDark = 'deep-neon' | 'ember-glow' | 'toxic-garden' | 'midnight-royal' | 'berry-candy';
19
+ /** All available neobrutalism palettes */
20
+ type DdNeoPalette = DdNeoPaletteLight | DdNeoPaletteDark;
21
+ /** Palette metadata */
22
+ interface DdNeoPaletteInfo {
23
+ id: DdNeoPalette;
24
+ name: string;
25
+ mode: 'light' | 'dark';
26
+ }
27
+ /** All available palettes with metadata */
28
+ declare const DD_NEO_PALETTES: DdNeoPaletteInfo[];
29
+
15
30
  type FlexDirection = 'row' | 'col';
16
31
  type JustifyContent = 'flex-start' | 'center' | 'flex-end' | 'space-between' | 'space-around' | 'space-evenly';
17
32
  type AlignItems = 'flex-start' | 'center' | 'flex-end' | 'stretch' | 'baseline';
@@ -1171,5 +1186,5 @@ declare function getNeobrutalSelectorStyle(color: AccentEnumColor): {
1171
1186
  [key: string]: string;
1172
1187
  };
1173
1188
 
1174
- export { AccentEnumColor, Badge, BadgeNeobrutalSlab, BadgeNeobrutalStamp, BadgeNeobrutalTicket, ButtonBlurLift, ButtonCasper, ButtonFlip, ButtonGlideOver, ButtonNeobrutalBurst, ButtonNeobrutalSlab, ButtonNeobrutalSticker, ButtonNeobrutalTag, ButtonNeobrutalTape, ButtonNeobrutalZigzag, DdFlexDirectionDirective, DdTabPanel, DuckDevAccordionComponent as DuckDevAccordion, DuckDevAccordionNeobrutalComponent as DuckDevAccordionNeobrutal, DuckDevAccordionNeobrutalTapeComponent as DuckDevAccordionNeobrutalTape, DuckDevBreadcrumbClassic, DuckDevBreadcrumbNeobrutal, DuckDevCardAccent, DuckDevCardMinimal, DuckDevCardNeobrutalPoster, DuckDevCardNeobrutalSlab, DuckDevCardNeobrutalStamp, DuckDevCardNeobrutalTicket, DuckDevCardOutline, DuckDevCardSection, DuckDevCardSignal, DuckDevIcon, DuckDevInput, DuckDevInputNeobrutalPoster, DuckDevInputNeobrutalRadio, DuckDevInputNeobrutalSlab, DuckDevInputNeobrutalStrip, DuckDevInputNeobrutalToggle, DuckDevModalClassic, DuckDevNotification, DuckDevNotificationContainer, DuckDevNotificationService, DuckDevProgressLine, DuckDevProgressMeter, DuckDevProgressNeobrutalSlab, DuckDevProgressNeobrutalStamp, DuckDevProgressNeobrutalTicket, DuckDevProgressStack, DuckDevSegmentButton, DuckDevSegmentClassic, DuckDevSegmentNeobrutal, DuckDevSegmentNeobrutalVertical, DuckDevSelectorDrum, DuckDevSelectorOption, DuckDevSpeakerBubbleClassic, DuckDevSpeakerBubbleNeobrutalSlab, DuckDevSpeakerBubbleNeobrutalTicket, DuckDevSpeakerBubbleOutline, DuckDevSpeakerBubbleSoft, DuckDevTab, DuckDevTabNeobrutal, DuckDevTabVertical, DuckDevTooltip, DuckDevTooltipNeobrutalComponent, LoaderClassic, LoaderLoadingBubble, LoaderNeobrutalBars, LoaderNeobrutalMarquee, LoaderNeobrutalStamp, LoaderThreeDots, SliderClassic, getClassicSpeakerBubbleStyle, getNeobrutalSelectorStyle, getNeobrutalSpeakerBubbleStyle, useSpeakerBubbleTail };
1175
- export type { BreadcrumbItem, DuckDevAccordionItem, DuckDevInputOption, DuckDevSpeakerBubbleTail, DuckDevSpeakerBubbleTailPosition, DuckDevSpeakerBubbleTailSide, DuckDevSpeakerBubbleTarget, DuckDevTabItem, DuckDevTabVerticalItem, NotificationItem, NotificationPosition, NotificationType, TooltipPlacement };
1189
+ export { AccentEnumColor, Badge, BadgeNeobrutalSlab, BadgeNeobrutalStamp, BadgeNeobrutalTicket, ButtonBlurLift, ButtonCasper, ButtonFlip, ButtonGlideOver, ButtonNeobrutalBurst, ButtonNeobrutalSlab, ButtonNeobrutalSticker, ButtonNeobrutalTag, ButtonNeobrutalTape, ButtonNeobrutalZigzag, DD_NEO_PALETTES, DdFlexDirectionDirective, DdTabPanel, DuckDevAccordionComponent as DuckDevAccordion, DuckDevAccordionNeobrutalComponent as DuckDevAccordionNeobrutal, DuckDevAccordionNeobrutalTapeComponent as DuckDevAccordionNeobrutalTape, DuckDevBreadcrumbClassic, DuckDevBreadcrumbNeobrutal, DuckDevCardAccent, DuckDevCardMinimal, DuckDevCardNeobrutalPoster, DuckDevCardNeobrutalSlab, DuckDevCardNeobrutalStamp, DuckDevCardNeobrutalTicket, DuckDevCardOutline, DuckDevCardSection, DuckDevCardSignal, DuckDevIcon, DuckDevInput, DuckDevInputNeobrutalPoster, DuckDevInputNeobrutalRadio, DuckDevInputNeobrutalSlab, DuckDevInputNeobrutalStrip, DuckDevInputNeobrutalToggle, DuckDevModalClassic, DuckDevNotification, DuckDevNotificationContainer, DuckDevNotificationService, DuckDevProgressLine, DuckDevProgressMeter, DuckDevProgressNeobrutalSlab, DuckDevProgressNeobrutalStamp, DuckDevProgressNeobrutalTicket, DuckDevProgressStack, DuckDevSegmentButton, DuckDevSegmentClassic, DuckDevSegmentNeobrutal, DuckDevSegmentNeobrutalVertical, DuckDevSelectorDrum, DuckDevSelectorOption, DuckDevSpeakerBubbleClassic, DuckDevSpeakerBubbleNeobrutalSlab, DuckDevSpeakerBubbleNeobrutalTicket, DuckDevSpeakerBubbleOutline, DuckDevSpeakerBubbleSoft, DuckDevTab, DuckDevTabNeobrutal, DuckDevTabVertical, DuckDevTooltip, DuckDevTooltipNeobrutalComponent, LoaderClassic, LoaderLoadingBubble, LoaderNeobrutalBars, LoaderNeobrutalMarquee, LoaderNeobrutalStamp, LoaderThreeDots, SliderClassic, getClassicSpeakerBubbleStyle, getNeobrutalSelectorStyle, getNeobrutalSpeakerBubbleStyle, useSpeakerBubbleTail };
1190
+ export type { BreadcrumbItem, DdNeoPalette, DdNeoPaletteDark, DdNeoPaletteInfo, DdNeoPaletteLight, DuckDevAccordionItem, DuckDevInputOption, DuckDevSpeakerBubbleTail, DuckDevSpeakerBubbleTailPosition, DuckDevSpeakerBubbleTailSide, DuckDevSpeakerBubbleTarget, DuckDevTabItem, DuckDevTabVerticalItem, NotificationItem, NotificationPosition, NotificationType, TooltipPlacement };