panelui-native 0.40.0 → 0.43.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/README.md +4 -2
  2. package/lib/module/components/card/index.js +172 -3
  3. package/lib/module/components/card/index.js.map +1 -1
  4. package/lib/module/components/color-picker/index.js +1395 -0
  5. package/lib/module/components/color-picker/index.js.map +1 -0
  6. package/lib/module/components/combobox/index.js +87 -19
  7. package/lib/module/components/combobox/index.js.map +1 -1
  8. package/lib/module/components/drawer/index.js +13 -4
  9. package/lib/module/components/drawer/index.js.map +1 -1
  10. package/lib/module/components/kpi-chart/index.js +648 -0
  11. package/lib/module/components/kpi-chart/index.js.map +1 -0
  12. package/lib/module/components/map/index.js +72 -12
  13. package/lib/module/components/map/index.js.map +1 -1
  14. package/lib/module/components/menu/index.js +40 -10
  15. package/lib/module/components/menu/index.js.map +1 -1
  16. package/lib/module/components/pagination/index.js +19 -9
  17. package/lib/module/components/pagination/index.js.map +1 -1
  18. package/lib/module/components/panelside/index.js +68 -18
  19. package/lib/module/components/panelside/index.js.map +1 -1
  20. package/lib/module/components/radar-chart/index.js +704 -0
  21. package/lib/module/components/radar-chart/index.js.map +1 -0
  22. package/lib/module/components/section-rail/index.js +32 -7
  23. package/lib/module/components/section-rail/index.js.map +1 -1
  24. package/lib/module/components/slider/index.js +240 -39
  25. package/lib/module/components/slider/index.js.map +1 -1
  26. package/lib/module/components/tabs/index.js +194 -10
  27. package/lib/module/components/tabs/index.js.map +1 -1
  28. package/lib/module/components/text-animation/index.js +857 -0
  29. package/lib/module/components/text-animation/index.js.map +1 -0
  30. package/lib/module/icons/index.js +25 -7
  31. package/lib/module/icons/index.js.map +1 -1
  32. package/lib/module/index.js +5 -0
  33. package/lib/module/index.js.map +1 -1
  34. package/lib/module/theme/use-theme.js +1 -1
  35. package/lib/module/utils/chart.js +44 -0
  36. package/lib/module/utils/chart.js.map +1 -1
  37. package/lib/module/utils/color.js +268 -0
  38. package/lib/module/utils/color.js.map +1 -0
  39. package/lib/typescript/src/components/card/index.d.ts +20 -0
  40. package/lib/typescript/src/components/card/index.d.ts.map +1 -1
  41. package/lib/typescript/src/components/color-picker/index.d.ts +258 -0
  42. package/lib/typescript/src/components/color-picker/index.d.ts.map +1 -0
  43. package/lib/typescript/src/components/combobox/index.d.ts.map +1 -1
  44. package/lib/typescript/src/components/drawer/index.d.ts +13 -1
  45. package/lib/typescript/src/components/drawer/index.d.ts.map +1 -1
  46. package/lib/typescript/src/components/kpi-chart/index.d.ts +490 -0
  47. package/lib/typescript/src/components/kpi-chart/index.d.ts.map +1 -0
  48. package/lib/typescript/src/components/map/index.d.ts +37 -2
  49. package/lib/typescript/src/components/map/index.d.ts.map +1 -1
  50. package/lib/typescript/src/components/menu/index.d.ts.map +1 -1
  51. package/lib/typescript/src/components/pagination/index.d.ts.map +1 -1
  52. package/lib/typescript/src/components/panelside/index.d.ts +50 -4
  53. package/lib/typescript/src/components/panelside/index.d.ts.map +1 -1
  54. package/lib/typescript/src/components/radar-chart/index.d.ts +214 -0
  55. package/lib/typescript/src/components/radar-chart/index.d.ts.map +1 -0
  56. package/lib/typescript/src/components/section-rail/index.d.ts +8 -1
  57. package/lib/typescript/src/components/section-rail/index.d.ts.map +1 -1
  58. package/lib/typescript/src/components/slider/index.d.ts +19 -0
  59. package/lib/typescript/src/components/slider/index.d.ts.map +1 -1
  60. package/lib/typescript/src/components/tabs/index.d.ts +11 -1
  61. package/lib/typescript/src/components/tabs/index.d.ts.map +1 -1
  62. package/lib/typescript/src/components/text-animation/index.d.ts +268 -0
  63. package/lib/typescript/src/components/text-animation/index.d.ts.map +1 -0
  64. package/lib/typescript/src/icons/index.d.ts +6 -0
  65. package/lib/typescript/src/icons/index.d.ts.map +1 -1
  66. package/lib/typescript/src/index.d.ts +8 -3
  67. package/lib/typescript/src/index.d.ts.map +1 -1
  68. package/lib/typescript/src/utils/chart.d.ts +21 -0
  69. package/lib/typescript/src/utils/chart.d.ts.map +1 -1
  70. package/lib/typescript/src/utils/color.d.ts +74 -0
  71. package/lib/typescript/src/utils/color.d.ts.map +1 -0
  72. package/package.json +2 -1
  73. package/src/components/card/index.tsx +227 -2
  74. package/src/components/color-picker/index.tsx +1618 -0
  75. package/src/components/combobox/index.tsx +89 -19
  76. package/src/components/drawer/index.tsx +31 -9
  77. package/src/components/kpi-chart/index.tsx +719 -0
  78. package/src/components/map/index.tsx +158 -14
  79. package/src/components/menu/index.tsx +51 -6
  80. package/src/components/pagination/index.tsx +18 -6
  81. package/src/components/panelside/index.tsx +134 -19
  82. package/src/components/radar-chart/index.tsx +910 -0
  83. package/src/components/section-rail/index.tsx +42 -8
  84. package/src/components/slider/index.tsx +283 -41
  85. package/src/components/tabs/index.tsx +263 -8
  86. package/src/components/text-animation/index.tsx +1093 -0
  87. package/src/icons/index.tsx +23 -4
  88. package/src/index.ts +73 -1
  89. package/src/theme/use-theme.ts +1 -1
  90. package/src/utils/chart.ts +52 -0
  91. package/src/utils/color.ts +246 -0
  92. package/theme.css +125 -112
package/theme.css CHANGED
@@ -389,172 +389,185 @@
389
389
  * "All themes must have the same variables" otherwise.
390
390
  */
391
391
 
392
- /* Moon — monochrome and high-contrast: pure black/white, electric blue accent,
393
- hairline borders, tight corners. */
392
+ /*
393
+ * Moon — a near-black canvas under a lavender-blue accent, with elevation
394
+ * carried by a ladder of barely-separated surfaces and 1px hairlines
395
+ * rather than by shadow. Corners are tight and the type contrast is high.
396
+ *
397
+ * The character of this family lives in the *distance between* the
398
+ * surfaces, not in any one of them: #0f1011, #141516, #18191a and #191a1b
399
+ * are within a few points of each other, so a card on a panel on the
400
+ * canvas reads as three planes without any of them looking lighter than
401
+ * the room. Flattening that ladder to two values is what makes a dark
402
+ * theme look like a screenshot with the brightness turned down.
403
+ */
394
404
  @variant moon {
395
405
  --color-background: #ffffff;
396
- --color-foreground: #171717;
406
+ --color-foreground: #08090a;
397
407
 
398
408
  --color-card: #ffffff;
399
- --color-card-foreground: #171717;
409
+ --color-card-foreground: #08090a;
400
410
 
401
411
  --color-popover: #ffffff;
402
- --color-popover-foreground: #171717;
412
+ --color-popover-foreground: #08090a;
403
413
 
404
414
  --color-overlay: #ffffff;
405
- --color-overlay-foreground: #171717;
415
+ --color-overlay-foreground: #08090a;
406
416
 
407
- --color-primary: #171717;
417
+ --color-primary: #5e6ad2;
408
418
  --color-primary-foreground: #ffffff;
409
419
 
410
420
  --color-secondary: rgba(0, 0, 0, 0.05);
411
- --color-secondary-foreground: #171717;
421
+ --color-secondary-foreground: #08090a;
412
422
 
413
423
  --color-muted: rgba(0, 0, 0, 0.05);
414
- --color-muted-foreground: #666666;
424
+ --color-muted-foreground: #6b6f76;
415
425
 
416
- --color-accent: rgba(0, 0, 0, 0.05);
417
- --color-accent-foreground: #171717;
426
+ --color-accent: rgba(0, 0, 0, 0.06);
427
+ --color-accent-foreground: #08090a;
418
428
 
419
- --color-destructive: #e5484d;
429
+ --color-destructive: #eb5757;
420
430
  --color-destructive-foreground: #c62b30;
421
431
 
422
- --color-info: #0070f3;
423
- --color-info-foreground: #0060d1;
432
+ --color-info: #4ea7fc;
433
+ --color-info-foreground: #0b6ec4;
424
434
 
425
- --color-success: #45a557;
426
- --color-success-foreground: #297c3b;
435
+ --color-success: #27a644;
436
+ --color-success-foreground: #1c7a32;
427
437
 
428
- --color-warning: #f5a623;
429
- --color-warning-foreground: #a35200;
438
+ --color-warning: #f2c94c;
439
+ --color-warning-foreground: #8a6d0b;
430
440
 
431
- --color-border: rgba(0, 0, 0, 0.09);
441
+ --color-border: rgba(0, 0, 0, 0.08);
432
442
  --color-input: rgba(0, 0, 0, 0.12);
433
- --color-ring: #171717;
434
-
435
- --color-surface: #fafafa;
436
- --color-surface-secondary: #f4f4f4;
437
- --color-surface-tertiary: #ededed;
438
- --color-skeleton: rgba(0, 0, 0, 0.08);
439
-
440
- --color-info-soft: rgba(0, 112, 243, 0.08);
441
- --color-info-subtle: rgba(0, 112, 243, 0.06);
442
- --color-success-soft: rgba(69, 165, 87, 0.1);
443
- --color-success-subtle: rgba(69, 165, 87, 0.08);
444
- --color-warning-soft: rgba(245, 166, 35, 0.1);
445
- --color-warning-subtle: rgba(245, 166, 35, 0.08);
446
- --color-destructive-soft: rgba(229, 72, 77, 0.1);
447
- --color-destructive-subtle: rgba(229, 72, 77, 0.08);
443
+ --color-ring: #5e6ad2;
444
+
445
+ --color-surface: #f5f6f6;
446
+ --color-surface-secondary: #f6f7f7;
447
+ --color-surface-tertiary: #eeeff1;
448
+ --color-skeleton: rgba(0, 0, 0, 0.07);
449
+
450
+ --color-info-soft: rgba(78, 167, 252, 0.1);
451
+ --color-info-subtle: rgba(78, 167, 252, 0.08);
452
+ --color-success-soft: rgba(39, 166, 68, 0.1);
453
+ --color-success-subtle: rgba(39, 166, 68, 0.08);
454
+ --color-warning-soft: rgba(242, 201, 76, 0.14);
455
+ --color-warning-subtle: rgba(242, 201, 76, 0.1);
456
+ --color-destructive-soft: rgba(235, 87, 87, 0.1);
457
+ --color-destructive-subtle: rgba(235, 87, 87, 0.08);
448
458
 
449
459
  /* syntax colours */
450
- --color-code-keyword: #8250df;
451
- --color-code-string: #0a7d55;
452
- --color-code-number: #0550ae;
453
- --color-code-comment: #8b949e;
460
+ --color-code-keyword: #5e6ad2;
461
+ --color-code-string: #1c7a32;
462
+ --color-code-number: #0b6ec4;
463
+ --color-code-comment: #8a8f98;
454
464
  --color-code-function: #6639ba;
455
465
  --color-code-property: #953800;
456
- --color-code-punctuation: #57606a;
457
- --color-code-inserted: #0a7d55;
466
+ --color-code-punctuation: #62666d;
467
+ --color-code-inserted: #1c7a32;
458
468
  --color-code-deleted: #cf222e;
459
469
 
460
470
  /* chart series, in order of prominence */
461
- --color-chart-1: #0070f3;
462
- --color-chart-2: #171717;
463
- --color-chart-3: #7928ca;
464
- --color-chart-4: #f5a623;
465
- --color-chart-5: #0a9396;
466
-
471
+ --color-chart-1: #5e6ad2;
472
+ --color-chart-2: #4ea7fc;
473
+ --color-chart-3: #27a644;
474
+ --color-chart-4: #f2c94c;
475
+ --color-chart-5: #7a7fad;
476
+
467
477
  /* Moon shape scale */
468
- --radius-xs: 2px;
469
- --radius-sm: 4px;
470
- --radius-md: 5px;
471
- --radius-lg: 6px;
472
- --radius-xl: 8px;
473
- --radius-2xl: 10px;
474
- --radius-3xl: 14px;
478
+ --radius-xs: 4px;
479
+ --radius-sm: 6px;
480
+ --radius-md: 8px;
481
+ --radius-lg: 12px;
482
+ --radius-xl: 16px;
483
+ --radius-2xl: 24px;
484
+ --radius-3xl: 32px;
475
485
  }
476
486
 
477
487
  @variant moon-dark {
478
- --color-background: #000000;
479
- --color-foreground: #ededed;
488
+ --color-background: #010102;
489
+ --color-foreground: #f7f8f8;
480
490
 
481
- --color-card: #0a0a0a;
482
- --color-card-foreground: #ededed;
491
+ --color-card: #0f1011;
492
+ --color-card-foreground: #f7f8f8;
483
493
 
484
- --color-popover: #101010;
485
- --color-popover-foreground: #ededed;
494
+ --color-popover: #141516;
495
+ --color-popover-foreground: #f7f8f8;
486
496
 
487
- --color-overlay: #191919;
488
- --color-overlay-foreground: #ededed;
497
+ --color-overlay: #18191a;
498
+ --color-overlay-foreground: #f7f8f8;
489
499
 
490
- --color-primary: #ededed;
491
- --color-primary-foreground: #0a0a0a;
500
+ --color-primary: #5e6ad2;
501
+ --color-primary-foreground: #ffffff;
492
502
 
493
- --color-secondary: rgba(255, 255, 255, 0.09);
494
- --color-secondary-foreground: #ededed;
503
+ --color-secondary: rgba(255, 255, 255, 0.06);
504
+ --color-secondary-foreground: #f7f8f8;
495
505
 
496
- --color-muted: rgba(255, 255, 255, 0.09);
497
- --color-muted-foreground: #a1a1a1;
506
+ --color-muted: rgba(255, 255, 255, 0.06);
507
+ --color-muted-foreground: #8a8f98;
498
508
 
499
- --color-accent: rgba(255, 255, 255, 0.09);
500
- --color-accent-foreground: #ededed;
509
+ --color-accent: rgba(255, 255, 255, 0.08);
510
+ --color-accent-foreground: #f7f8f8;
501
511
 
502
- --color-destructive: #e5484d;
503
- --color-destructive-foreground: #ff6369;
512
+ --color-destructive: #eb5757;
513
+ --color-destructive-foreground: #ff8a8a;
504
514
 
505
- --color-info: #0070f3;
506
- --color-info-foreground: #52a8ff;
515
+ --color-info: #4ea7fc;
516
+ --color-info-foreground: #8ec5ff;
507
517
 
508
- --color-success: #45a557;
509
- --color-success-foreground: #62c073;
518
+ --color-success: #27a644;
519
+ --color-success-foreground: #4cc061;
510
520
 
511
- --color-warning: #f5a623;
512
- --color-warning-foreground: #f1a10d;
521
+ --color-warning: #f2c94c;
522
+ --color-warning-foreground: #f5d97a;
513
523
 
514
- --color-border: rgba(255, 255, 255, 0.09);
515
- --color-input: rgba(255, 255, 255, 0.14);
516
- --color-ring: #ededed;
524
+ /* The hairlines are opaque, not translucent: the surface ladder is only
525
+ a few points wide, so a border mixed with whatever is under it would
526
+ read as a different line on each of them. */
527
+ --color-border: #23252a;
528
+ --color-input: #34343a;
529
+ --color-ring: #5e6ad2;
517
530
 
518
- --color-surface: #0f0f0f;
519
- --color-surface-secondary: #161616;
520
- --color-surface-tertiary: #1d1d1d;
521
- --color-skeleton: rgba(255, 255, 255, 0.11);
531
+ --color-surface: #0f1011;
532
+ --color-surface-secondary: #141516;
533
+ --color-surface-tertiary: #18191a;
534
+ --color-skeleton: rgba(255, 255, 255, 0.08);
522
535
 
523
- --color-info-soft: rgba(0, 112, 243, 0.12);
524
- --color-info-subtle: rgba(0, 112, 243, 0.18);
525
- --color-success-soft: rgba(69, 165, 87, 0.1);
526
- --color-success-subtle: rgba(69, 165, 87, 0.16);
527
- --color-warning-soft: rgba(245, 166, 35, 0.1);
528
- --color-warning-subtle: rgba(245, 166, 35, 0.16);
529
- --color-destructive-soft: rgba(229, 72, 77, 0.1);
530
- --color-destructive-subtle: rgba(229, 72, 77, 0.16);
536
+ --color-info-soft: rgba(78, 167, 252, 0.16);
537
+ --color-info-subtle: rgba(78, 167, 252, 0.1);
538
+ --color-success-soft: rgba(39, 166, 68, 0.18);
539
+ --color-success-subtle: rgba(39, 166, 68, 0.12);
540
+ --color-warning-soft: rgba(242, 201, 76, 0.16);
541
+ --color-warning-subtle: rgba(242, 201, 76, 0.1);
542
+ --color-destructive-soft: rgba(235, 87, 87, 0.16);
543
+ --color-destructive-subtle: rgba(235, 87, 87, 0.1);
531
544
 
532
545
  /* syntax colours */
533
- --color-code-keyword: #d2a8ff;
534
- --color-code-string: #7ee787;
535
- --color-code-number: #79c0ff;
536
- --color-code-comment: #8b949e;
546
+ --color-code-keyword: #828fff;
547
+ --color-code-string: #4cc061;
548
+ --color-code-number: #8ec5ff;
549
+ --color-code-comment: #62666d;
537
550
  --color-code-function: #d2a8ff;
538
551
  --color-code-property: #ffa657;
539
- --color-code-punctuation: #8b949e;
540
- --color-code-inserted: #7ee787;
541
- --color-code-deleted: #ff7b72;
552
+ --color-code-punctuation: #8a8f98;
553
+ --color-code-inserted: #4cc061;
554
+ --color-code-deleted: #ff8a8a;
542
555
 
543
556
  /* chart series, in order of prominence */
544
- --color-chart-1: #3291ff;
545
- --color-chart-2: #ededed;
546
- --color-chart-3: #a855f7;
547
- --color-chart-4: #fbbf24;
548
- --color-chart-5: #2dd4bf;
549
-
557
+ --color-chart-1: #5e6ad2;
558
+ --color-chart-2: #4ea7fc;
559
+ --color-chart-3: #27a644;
560
+ --color-chart-4: #f2c94c;
561
+ --color-chart-5: #7a7fad;
562
+
550
563
  /* Moon shape scale */
551
- --radius-xs: 2px;
552
- --radius-sm: 4px;
553
- --radius-md: 5px;
554
- --radius-lg: 6px;
555
- --radius-xl: 8px;
556
- --radius-2xl: 10px;
557
- --radius-3xl: 14px;
564
+ --radius-xs: 4px;
565
+ --radius-sm: 6px;
566
+ --radius-md: 8px;
567
+ --radius-lg: 12px;
568
+ --radius-xl: 16px;
569
+ --radius-2xl: 24px;
570
+ --radius-3xl: 32px;
558
571
  }
559
572
 
560
573
  /* Grass — green accent on warm-neutral greys, with soft generous corners. */