@a-type/ui 2.6.0 → 2.6.2

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 (37) hide show
  1. package/dist/cjs/colors.stories.js +4 -4
  2. package/dist/cjs/colors.stories.js.map +1 -1
  3. package/dist/cjs/components/contextMenu/contextMenu.js +2 -2
  4. package/dist/cjs/components/contextMenu/contextMenu.js.map +1 -1
  5. package/dist/cjs/components/datePicker/DatePicker.js +1 -1
  6. package/dist/cjs/components/datePicker/DatePicker.js.map +1 -1
  7. package/dist/cjs/components/dropdownMenu/DropdownMenu.js +5 -5
  8. package/dist/cjs/components/dropdownMenu/DropdownMenu.js.map +1 -1
  9. package/dist/cjs/components/select/Select.js +8 -4
  10. package/dist/cjs/components/select/Select.js.map +1 -1
  11. package/dist/cjs/themes.stories.js +2 -2
  12. package/dist/cjs/themes.stories.js.map +1 -1
  13. package/dist/cjs/uno/colors.js +26 -12
  14. package/dist/cjs/uno/colors.js.map +1 -1
  15. package/dist/css/main.css +307 -307
  16. package/dist/esm/colors.stories.js +4 -4
  17. package/dist/esm/colors.stories.js.map +1 -1
  18. package/dist/esm/components/contextMenu/contextMenu.js +2 -2
  19. package/dist/esm/components/contextMenu/contextMenu.js.map +1 -1
  20. package/dist/esm/components/datePicker/DatePicker.js +1 -1
  21. package/dist/esm/components/datePicker/DatePicker.js.map +1 -1
  22. package/dist/esm/components/dropdownMenu/DropdownMenu.js +5 -5
  23. package/dist/esm/components/dropdownMenu/DropdownMenu.js.map +1 -1
  24. package/dist/esm/components/select/Select.js +8 -4
  25. package/dist/esm/components/select/Select.js.map +1 -1
  26. package/dist/esm/themes.stories.js +2 -2
  27. package/dist/esm/themes.stories.js.map +1 -1
  28. package/dist/esm/uno/colors.js +26 -12
  29. package/dist/esm/uno/colors.js.map +1 -1
  30. package/package.json +1 -1
  31. package/src/colors.stories.tsx +48 -15
  32. package/src/components/contextMenu/contextMenu.tsx +3 -5
  33. package/src/components/datePicker/DatePicker.tsx +5 -5
  34. package/src/components/dropdownMenu/DropdownMenu.tsx +7 -6
  35. package/src/components/select/Select.tsx +11 -9
  36. package/src/themes.stories.tsx +36 -10
  37. package/src/uno/colors.ts +27 -12
@@ -15,7 +15,7 @@ const StyledContent = withClassName(
15
15
  </BoxContext.Provider>
16
16
  );
17
17
  },
18
- 'layer-components:(min-w-220px bg-white z-menu shadow-lg rounded-sm border border-gray-dark)',
18
+ 'layer-components:(min-w-220px bg-white z-menu shadow-lg rounded-md border border-gray-dark)',
19
19
  'layer-components:transform-origin-[var(--radix-dropdown-menu-transform-origin)]',
20
20
  'layer-components:[&[data-state=open]]:animate-popover-in',
21
21
  'layer-components:[&[data-state=closed]]:animate-popover-out',
@@ -25,8 +25,9 @@ const StyledContent = withClassName(
25
25
  );
26
26
  const itemClassName = classNames(
27
27
  'layer-components:(text-md leading-4 color-black flex items-center pr-4 pl-8 py-2 relative text-left select-none cursor-pointer)',
28
- 'layer-components:[&[data-disabled]]:(color-black pointer-events-none)',
29
- 'layer-components:focus-visible:(bg-gray-light bg-darken-0.5 color-black)',
28
+ 'layer-components:[&[data-disabled]]:(color-gray-dark pointer-events-none)',
29
+ 'layer-components:focus-visible:(bg-gray bg-lighten-3 color-black)',
30
+ 'layer-components:hover:(bg-gray bg-lighten-3 color-black)',
30
31
  'layer-components:focus:outline-none',
31
32
  );
32
33
  const StyledItemBase = withClassName(DropdownMenuPrimitive.Item, itemClassName);
@@ -46,7 +47,7 @@ const StyledItem = ({
46
47
  {...props}
47
48
  className={clsx(
48
49
  color === 'destructive' &&
49
- 'layer-variants:(color-attention-dark hover:bg-attention-wash focus-visible:bg-attention-wash)',
50
+ 'layer-variants:(color-attention-dark hover:bg-attention-light focus-visible:bg-attention-light)',
50
51
  className,
51
52
  )}
52
53
  ref={forwardedRef}
@@ -111,14 +112,14 @@ export const DropdownMenuContent = ({
111
112
  return (
112
113
  <StyledPortal forceMount={forceMount}>
113
114
  <StyledContent {...props}>
114
- <div className="overflow-hidden rounded-lg">{children}</div>
115
+ <div className="overflow-hidden rounded-md">{children}</div>
115
116
  <StyledArrow />
116
117
  </StyledContent>
117
118
  </StyledPortal>
118
119
  );
119
120
  };
120
121
 
121
- export const DropdownMenuItemRightSlot = withClassName('div', 'ml-auto');
122
+ export const DropdownMenuItemRightSlot = withClassName('div', 'ml-auto pl-md');
122
123
 
123
124
  export const DropdownMenu = Object.assign(DropdownMenuRoot, {
124
125
  Content: DropdownMenuContent,
@@ -45,10 +45,8 @@ export const SelectItem = ({
45
45
 
46
46
  export const SelectItemRoot = withClassName(
47
47
  SelectPrimitive.Item,
48
- 'layer-components:(text-md leading-4 color-black rounded-sm flex items-center flex-row h-36px pr-4 pl-35px relative select-none)',
49
- 'layer-components:[&[data-disabled]]:(color-gray pointer-events-none) [&[data-highlighted]]:(outline-none bg-primary-wash color-black)',
50
- 'layer-components:[&:first-child]:(rounded-t-lg)',
51
- 'layer-components:[&:last-child]:(rounded-b-lg)',
48
+ 'layer-components:(text-md leading-4 color-black flex items-center flex-row h-36px pr-4 pl-35px relative select-none)',
49
+ 'layer-components:[&[data-disabled]]:(color-gray pointer-events-none) [&[data-highlighted]]:(outline-none bg-gray bg-lighten-3 color-black)',
52
50
  );
53
51
  export const SelectItemIndicatorRoot = withClassName(
54
52
  SelectPrimitive.ItemIndicator,
@@ -133,7 +131,7 @@ export const SelectIcon = withNoNativeRender(
133
131
  }) => {
134
132
  return (
135
133
  <SelectPrimitive.Icon
136
- className={classNames('color-inherit', className)}
134
+ className={classNames('color-inherit ml-auto', className)}
137
135
  {...props}
138
136
  ref={forwardedRef}
139
137
  >
@@ -143,7 +141,11 @@ export const SelectIcon = withNoNativeRender(
143
141
  },
144
142
  );
145
143
 
146
- const zIndex = { zIndex: 1001 };
144
+ const contentStyle = {
145
+ zIndex: 1001,
146
+ '--local-corner-scale': '1',
147
+ } as React.CSSProperties;
148
+ const viewportStyle = { '--local-corner-scale': '0.9' } as React.CSSProperties;
147
149
  export const SelectContent = withPassthroughNativeRender(
148
150
  ({ ref: forwardedRef, children, inDialog, className, ...props }) => {
149
151
  return (
@@ -151,7 +153,7 @@ export const SelectContent = withPassthroughNativeRender(
151
153
  <BoxContext.Provider value={{ spacingScale: 1 }}>
152
154
  <SelectPrimitive.Content
153
155
  className={classNames(
154
- 'layer-components:(overflow-hidden bg-white rounded-lg border border-solid border border-black z-menu shadow-lg)',
156
+ 'layer-components:(overflow-hidden bg-white rounded-md border border-solid border border-black z-menu shadow-lg)',
155
157
  'layer-components:transform-origin-[var(--radix-select-content-transform-origin)]',
156
158
  'layer-components:[&[data-state=open]]:animate-popover-in',
157
159
  'layer-components:[&[data-state=closed]]:animate-popover-out',
@@ -159,14 +161,14 @@ export const SelectContent = withPassthroughNativeRender(
159
161
  inDialog && 'z-[calc(var(--z-dialog)+1)]',
160
162
  className,
161
163
  )}
162
- style={zIndex}
164
+ style={contentStyle}
163
165
  {...props}
164
166
  ref={forwardedRef}
165
167
  >
166
168
  <SelectPrimitive.ScrollUpButton className="flex items-center justify-center h-25px bg-white color-primary-dark cursor-default">
167
169
  <ChevronUpIcon />
168
170
  </SelectPrimitive.ScrollUpButton>
169
- <SelectPrimitive.Viewport className="p-1">
171
+ <SelectPrimitive.Viewport style={viewportStyle}>
170
172
  {children}
171
173
  </SelectPrimitive.Viewport>
172
174
  <SelectPrimitive.ScrollDownButton className="flex items-center justify-center h-25px bg-white color-primary-dark cursor-default">
@@ -180,6 +180,42 @@ function DemoUI({ className }: { className?: string }) {
180
180
  <ContextMenu.Item>Item 3</ContextMenu.Item>
181
181
  </ContextMenu.Content>
182
182
  </ContextMenu>
183
+ <DropdownMenu>
184
+ <DropdownMenu.Trigger asChild className="m-auto">
185
+ <Button>Dropdown</Button>
186
+ </DropdownMenu.Trigger>
187
+ <DropdownMenu.Content>
188
+ <DropdownMenu.Item>Item 1</DropdownMenu.Item>
189
+ <DropdownMenu.Item>Item 2</DropdownMenu.Item>
190
+ <DropdownMenu.Item>Item 3</DropdownMenu.Item>
191
+ <DropdownMenu.Item disabled>Disabled Item</DropdownMenu.Item>
192
+ <DropdownMenu.Separator />
193
+ <DropdownMenu.Item>Item 4</DropdownMenu.Item>
194
+ <DropdownMenu.Item>Item 5</DropdownMenu.Item>
195
+ <DropdownMenu.Item>Item 6</DropdownMenu.Item>
196
+ <DropdownMenu.Item>
197
+ With icon
198
+ <DropdownMenu.ItemRightSlot>
199
+ <Icon name="flag" />
200
+ </DropdownMenu.ItemRightSlot>
201
+ </DropdownMenu.Item>
202
+ </DropdownMenu.Content>
203
+ </DropdownMenu>
204
+ <Select value="1">
205
+ <Select.Trigger />
206
+ <Select.Content>
207
+ <Select.Item value="1">Item 1</Select.Item>
208
+ <Select.Item value="2">Item 2</Select.Item>
209
+ <Select.Item value="3">Item 3</Select.Item>
210
+ <Select.Item value="4">Item 4</Select.Item>
211
+ <Select.Item value="5">Item 5</Select.Item>
212
+ <Select.Item value="6">Item 6</Select.Item>
213
+ <Select.Item value="7">Item 7</Select.Item>
214
+ <Select.Item value="8">Item 8</Select.Item>
215
+ <Select.Item value="9">Item 9</Select.Item>
216
+ <Select.Item value="10">Item 10</Select.Item>
217
+ </Select.Content>
218
+ </Select>
183
219
  <Dialog>
184
220
  <Dialog.Trigger asChild>
185
221
  <Button>Click</Button>
@@ -256,16 +292,6 @@ function DemoUI({ className }: { className?: string }) {
256
292
  </HorizontalList>
257
293
  </Box>
258
294
  <ImageUploader className="h-200px" value={null} onChange={() => {}} />
259
- <DropdownMenu>
260
- <DropdownMenu.Trigger asChild className="m-auto">
261
- <Button>Dropdown</Button>
262
- </DropdownMenu.Trigger>
263
- <DropdownMenu.Content>
264
- <DropdownMenu.Item>Item 1</DropdownMenu.Item>
265
- <DropdownMenu.Item>Item 2</DropdownMenu.Item>
266
- <DropdownMenu.Item>Item 3</DropdownMenu.Item>
267
- </DropdownMenu.Content>
268
- </DropdownMenu>
269
295
  </div>
270
296
  </PageContent>
271
297
  <PageNav>
package/src/uno/colors.ts CHANGED
@@ -5,19 +5,34 @@ export const colorConstants = `
5
5
  --dyn-saturation-x-ink: calc(pow(var(--global-saturation, 1), 0.2));
6
6
  `;
7
7
 
8
- export const dynamicThemeComputedColors = (name: string) => `
8
+ const lightness = {
9
+ wash: `calc(1 + 0.45 * var(--dyn-mode-mult, 1))`,
10
+ light: `calc(1 + 0.25 * var(--dyn-mode-mult, 1))`,
11
+ dark: `calc(1 - 0.25 * var(--dyn-mode-mult, 1))`,
12
+ ink: `calc(1 - 0.45 * var(--dyn-mode-mult, 1))`,
13
+ };
14
+
15
+ export const dynamicThemeComputedColors = (name: string) => {
16
+ const hue = {
17
+ wash: `calc(h - 1 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1))`,
18
+ light: `calc(h - 0.5 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1))`,
19
+ dark: `calc(h + 0.2 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1))`,
20
+ ink: `calc(h + 1 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1))`,
21
+ };
22
+ return `
9
23
  --color-${name}: oklch(calc(90% - 35% * var(--dyn-source-mode-adjust, 0) - (var(--dyn-mode-sign, 1) * var(--dyn-${name}-base-dim, 0%))) calc(var(--dyn-${name}-sat-mult,1) * (35% - 2% * var(--dyn-source-mode-adjust, 0))) var(--dyn-${name}-source, 0));
10
- --color-${name}-wash: oklch(from var(--color-${name}) calc(min(0.999,max(0.15, l + 0.15 * var(--dyn-mode-mult, 1)))) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-wash, 1) - 0.06)) calc(h - 5 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1)));
11
- --color-${name}-light: oklch(from var(--color-${name}) calc(l + 0.25 * var(--dyn-mode-mult, 1)) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-light, 1) - 0.03)) calc(h - 0.5 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1)));
12
- --color-${name}-dark: oklch(from var(--color-${name}) calc(l - 0.25 * var(--dyn-mode-mult, 1)) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-dark, 1) + 0.01)) calc(h + 0.2 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1)));
13
- --color-${name}-ink: oklch(from var(--color-${name}) calc(l - 0.45 * var(--dyn-mode-mult, 1)) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-ink, 1) + 0.01)) calc(h + 1 * var(--dyn-${name}-hue-rotate, 0) * var(--dyn-${name}-hue-rotate-mult, 1)));
24
+ --color-${name}-wash: oklch(from var(--color-${name}) calc(l * ${lightness.wash}) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-wash, 1) - 0.06)) ${hue.wash});
25
+ --color-${name}-light: oklch(from var(--color-${name}) calc(l * ${lightness.light}) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-light, 1) - 0.03)) ${hue.light});
26
+ --color-${name}-dark: oklch(from var(--color-${name}) calc(l * ${lightness.dark}) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-dark, 1) + 0.01)) ${hue.dark});
27
+ --color-${name}-ink: oklch(from var(--color-${name}) calc(l * ${lightness.ink}) calc(var(--dyn-${name}-sat-mult) * (c * var(--dyn-saturation-x-ink, 1) + 0.01)) ${hue.ink});
14
28
 
15
- --color-${name}-gray: oklch(from var(--color-${name}) calc(l - 0.1 * var(--dyn-source-mode-adjust,0)) calc(c * 0.25 * var(--global-saturation, 1)) h);
16
- --color-${name}-gray-wash: oklch(from var(--color-${name}-wash) calc(l - 0.1 * var(--dyn-source-mode-adjust,0)) calc(c * 0.25 * var(--global-saturation, 1)) h);
17
- --color-${name}-gray-light: oklch(from var(--color-${name}-light) calc(l - 0.1 * var(--dyn-source-mode-adjust,0)) calc(c * 0.25 * var(--global-saturation, 1)) h);
18
- --color-${name}-gray-dark: oklch(from var(--color-${name}-dark) calc(l - 0.1 * var(--dyn-source-mode-adjust,0)) calc(c * 0.25 * var(--global-saturation, 1)) h);
19
- --color-${name}-gray-ink: oklch(from var(--color-${name}-ink) calc(l - 0.1 * var(--dyn-source-mode-adjust,0)) calc(c * 0.25 * var(--global-saturation, 1)) h);
29
+ --color-${name}-gray: oklch(from var(--color-${name}) l calc(c * 0.1 * var(--global-saturation, 1)) h);
30
+ --color-${name}-gray-wash: oklch(from var(--color-${name}-gray) calc(l * ${lightness.wash}) calc(c * 0.9) ${hue.wash});
31
+ --color-${name}-gray-light: oklch(from var(--color-${name}-gray) calc(l * ${lightness.light}) c ${hue.light});
32
+ --color-${name}-gray-dark: oklch(from var(--color-${name}-gray) calc(l * ${lightness.dark}) c ${hue.dark});
33
+ --color-${name}-gray-ink: oklch(from var(--color-${name}-gray) calc(l * ${lightness.ink}) c ${hue.ink});
20
34
  `;
35
+ };
21
36
 
22
37
  export const dynamicComputedVars = `
23
38
  ${dynamicThemeComputedColors('primary')}
@@ -31,7 +46,7 @@ ${dynamicThemeComputedColors('accent')}
31
46
 
32
47
  --color-wash: var(--color-gray-wash);
33
48
  --palette-black: var(--color-gray-ink);
34
- --palette-white: oklch(from var(--color-wash) calc(l + 1 / var(--dyn-mode-mult,1)) calc(c * var(--global-saturation, 1)/var(--dyn-mode-mult,1)) h);
49
+ --palette-white: oklch(from var(--color-wash) calc(0.999 * var(--dyn-mode-mult,1)) calc(c * var(--global-saturation, 1)) h);
35
50
  /* A dark-mode only contrast color */
36
51
  --color-dark-mode-contrast: oklch(from var(--color-gray-ink) l c h / calc(100% * var(--dyn-source-mode-adjust, 0)));
37
52
  `;
@@ -131,7 +146,7 @@ function mod(base: string, level: string, sign: number) {
131
146
  return (
132
147
  `oklch(from ` +
133
148
  base +
134
- ` calc(l * (1 + pow(${level}, 1) / 30 * ${sign} * var(--dyn-mode-mult, 1)))` +
149
+ ` calc(l * (1 + ${level} / 60 * ${sign} * var(--dyn-mode-mult, 1)))` +
135
150
  ` calc(c * (1 - (${level} * 0.1 * ${sign} * (1 + (1 - var(--global-saturation, 0))))))` +
136
151
  ` h)`
137
152
  );