@cavebatsofware/riposte-pickers 0.1.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 (57) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +214 -0
  3. package/dist/chunk-6FAEMGAR.js +93 -0
  4. package/dist/chunk-6FAEMGAR.js.map +1 -0
  5. package/dist/chunk-6OZDKKEP.cjs +95 -0
  6. package/dist/chunk-6OZDKKEP.cjs.map +1 -0
  7. package/dist/chunk-7JL223UJ.cjs +84 -0
  8. package/dist/chunk-7JL223UJ.cjs.map +1 -0
  9. package/dist/chunk-A4OVAXLP.js +261 -0
  10. package/dist/chunk-A4OVAXLP.js.map +1 -0
  11. package/dist/chunk-ATS6MI5Q.js +3 -0
  12. package/dist/chunk-ATS6MI5Q.js.map +1 -0
  13. package/dist/chunk-GDYHLOSQ.cjs +268 -0
  14. package/dist/chunk-GDYHLOSQ.cjs.map +1 -0
  15. package/dist/chunk-IWUGV7HL.js +113 -0
  16. package/dist/chunk-IWUGV7HL.js.map +1 -0
  17. package/dist/chunk-LIGL56YJ.cjs +116 -0
  18. package/dist/chunk-LIGL56YJ.cjs.map +1 -0
  19. package/dist/chunk-U73YJG4C.cjs +4 -0
  20. package/dist/chunk-U73YJG4C.cjs.map +1 -0
  21. package/dist/chunk-XWM3AYYR.js +82 -0
  22. package/dist/chunk-XWM3AYYR.js.map +1 -0
  23. package/dist/i18n/index.cjs +192 -0
  24. package/dist/i18n/index.cjs.map +1 -0
  25. package/dist/i18n/index.d.cts +156 -0
  26. package/dist/i18n/index.d.ts +156 -0
  27. package/dist/i18n/index.js +189 -0
  28. package/dist/i18n/index.js.map +1 -0
  29. package/dist/index.cjs +52 -0
  30. package/dist/index.cjs.map +1 -0
  31. package/dist/index.d.cts +4 -0
  32. package/dist/index.d.ts +4 -0
  33. package/dist/index.js +7 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/language.cjs +18 -0
  36. package/dist/language.cjs.map +1 -0
  37. package/dist/language.d.cts +39 -0
  38. package/dist/language.d.ts +39 -0
  39. package/dist/language.js +5 -0
  40. package/dist/language.js.map +1 -0
  41. package/dist/shared.cjs +18 -0
  42. package/dist/shared.cjs.map +1 -0
  43. package/dist/shared.d.cts +29 -0
  44. package/dist/shared.d.ts +29 -0
  45. package/dist/shared.js +5 -0
  46. package/dist/shared.js.map +1 -0
  47. package/dist/theme.cjs +33 -0
  48. package/dist/theme.cjs.map +1 -0
  49. package/dist/theme.d.cts +54 -0
  50. package/dist/theme.d.ts +54 -0
  51. package/dist/theme.js +4 -0
  52. package/dist/theme.js.map +1 -0
  53. package/package.json +97 -0
  54. package/styles/index.css +3 -0
  55. package/styles/language.css +89 -0
  56. package/styles/palette.css +614 -0
  57. package/styles/picker.css +139 -0
@@ -0,0 +1,139 @@
1
+ /* Theme picker layout: .theme-picker / .theme-swatch* / .theme-mode*.
2
+ * Consumes CSS variables defined in palette.css.
3
+ */
4
+
5
+ .theme-picker {
6
+ position: relative;
7
+ }
8
+
9
+ .theme-picker-toggle {
10
+ width: 44px;
11
+ height: 44px;
12
+ border-radius: 999px;
13
+ background-color: var(--color-surface);
14
+ border: 1px solid var(--color-border);
15
+ color: var(--color-text);
16
+ display: flex;
17
+ align-items: center;
18
+ justify-content: center;
19
+ cursor: pointer;
20
+ box-shadow: var(--shadow-popover);
21
+ transition: background-color 0.15s, color 0.15s;
22
+ }
23
+
24
+ .theme-picker-toggle:hover {
25
+ color: var(--color-primary);
26
+ }
27
+
28
+ .theme-picker-popover {
29
+ position: absolute;
30
+ top: calc(100% + var(--spacing-2));
31
+ right: 0;
32
+ background-color: var(--color-surface);
33
+ border: 1px solid var(--color-border);
34
+ border-radius: var(--radius-md);
35
+ padding: var(--spacing-3);
36
+ min-width: 220px;
37
+ box-shadow: var(--shadow-popover);
38
+ z-index: 35;
39
+ }
40
+
41
+ .theme-picker-title {
42
+ font-size: var(--font-size-xs);
43
+ text-transform: uppercase;
44
+ letter-spacing: 0.08em;
45
+ color: var(--color-muted);
46
+ margin-bottom: var(--spacing-2);
47
+ padding: 0 var(--spacing-2);
48
+ }
49
+
50
+ .theme-swatch {
51
+ width: 100%;
52
+ display: flex;
53
+ align-items: center;
54
+ gap: var(--spacing-3);
55
+ padding: var(--spacing-2);
56
+ border-radius: var(--radius-sm);
57
+ border: none;
58
+ background: none;
59
+ cursor: pointer;
60
+ font: inherit;
61
+ font-size: var(--font-size-sm);
62
+ color: var(--color-text);
63
+ text-align: left;
64
+ transition: background-color 0.1s;
65
+ }
66
+
67
+ .theme-swatch:hover {
68
+ background-color: var(--color-surface-2);
69
+ }
70
+
71
+ .theme-swatch.active {
72
+ background-color: var(--color-surface-2);
73
+ font-weight: 600;
74
+ }
75
+
76
+ .theme-swatch-color {
77
+ width: 20px;
78
+ height: 20px;
79
+ border-radius: 50%;
80
+ border: 1px solid var(--color-border);
81
+ flex-shrink: 0;
82
+ }
83
+
84
+ .theme-swatch-label {
85
+ flex: 1;
86
+ }
87
+
88
+ .theme-swatch-check {
89
+ color: var(--color-primary);
90
+ font-weight: 700;
91
+ }
92
+
93
+ .theme-picker-grid {
94
+ display: flex;
95
+ flex-direction: column;
96
+ gap: var(--spacing-2);
97
+ }
98
+
99
+ .theme-swatches {
100
+ display: flex;
101
+ flex-direction: column;
102
+ gap: var(--spacing-1);
103
+ }
104
+
105
+ .theme-mode-row {
106
+ display: grid;
107
+ grid-template-columns: 1fr 1fr;
108
+ gap: var(--spacing-1);
109
+ margin-top: var(--spacing-2);
110
+ padding-top: var(--spacing-2);
111
+ border-top: 1px solid var(--color-divider);
112
+ }
113
+
114
+ .theme-mode-btn {
115
+ padding: var(--spacing-2);
116
+ border-radius: var(--radius-sm);
117
+ border: 1px solid var(--color-border);
118
+ background: var(--color-surface);
119
+ color: var(--color-text);
120
+ font: inherit;
121
+ font-size: var(--font-size-sm);
122
+ cursor: pointer;
123
+ }
124
+
125
+ .theme-mode-btn:hover {
126
+ background: var(--color-surface-2);
127
+ }
128
+
129
+ .theme-mode-btn.active {
130
+ background: var(--color-primary);
131
+ color: var(--color-on-primary);
132
+ border-color: var(--color-primary);
133
+ font-weight: 600;
134
+ }
135
+
136
+ .theme-picker-inline .theme-picker-grid {
137
+ /* Inline variant inside the mobile drawer: no popover chrome,
138
+ borrows the body padding from `.mobile-drawer-section`. */
139
+ }