lapikit 0.0.0-insiders.e94247e → 0.0.0-insiders.eb9b51b

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 (185) hide show
  1. package/bin/configuration.js +0 -1
  2. package/bin/helper.js +0 -38
  3. package/bin/index.js +1 -9
  4. package/bin/presets.js +1 -1
  5. package/bin/prompts.js +46 -79
  6. package/dist/actions/accordion.svelte.d.ts +9 -0
  7. package/dist/actions/index.d.ts +2 -1
  8. package/dist/actions/index.js +2 -1
  9. package/dist/actions/use-theme.d.ts +1 -0
  10. package/dist/actions/use-theme.js +18 -0
  11. package/dist/components/accordion/accordion.css +0 -77
  12. package/dist/components/accordion/accordion.svelte +5 -121
  13. package/dist/components/accordion/modules/accordion-item.css +68 -0
  14. package/dist/components/accordion/modules/accordion-item.svelte +4 -4
  15. package/dist/components/accordion/types.d.ts +1 -1
  16. package/dist/components/alert/alert.css +11 -18
  17. package/dist/components/alert/alert.svelte +4 -126
  18. package/dist/components/alert/types.d.ts +1 -1
  19. package/dist/components/app/app.css +1 -2
  20. package/dist/components/app/app.svelte +24 -46
  21. package/dist/components/app/app.svelte.d.ts +2 -0
  22. package/dist/components/appbar/appbar.css +8 -18
  23. package/dist/components/appbar/appbar.svelte +4 -49
  24. package/dist/components/appbar/types.d.ts +1 -1
  25. package/dist/components/aspect-ratio/aspect-ratio.svelte +0 -41
  26. package/dist/components/aspect-ratio/types.d.ts +1 -1
  27. package/dist/components/avatar/avatar.css +7 -14
  28. package/dist/components/avatar/avatar.svelte +4 -118
  29. package/dist/components/avatar/types.d.ts +1 -1
  30. package/dist/components/button/button.css +29 -36
  31. package/dist/components/button/button.svelte +5 -235
  32. package/dist/components/button/types.d.ts +1 -1
  33. package/dist/components/card/card.css +10 -20
  34. package/dist/components/card/card.svelte +5 -113
  35. package/dist/components/card/types.d.ts +1 -1
  36. package/dist/components/chip/chip.css +26 -33
  37. package/dist/components/chip/chip.svelte +5 -216
  38. package/dist/components/chip/types.d.ts +1 -1
  39. package/dist/components/dialog/dialog.css +13 -20
  40. package/dist/components/dialog/dialog.svelte +5 -149
  41. package/dist/components/dialog/types.d.ts +1 -1
  42. package/dist/components/dropdown/dropdown.css +3 -12
  43. package/dist/components/dropdown/dropdown.svelte +6 -31
  44. package/dist/components/dropdown/types.d.ts +1 -1
  45. package/dist/components/icon/icon.css +9 -12
  46. package/dist/components/icon/icon.svelte +2 -91
  47. package/dist/components/icon/types.d.ts +1 -1
  48. package/dist/components/list/list.css +19 -91
  49. package/dist/components/list/list.svelte +4 -203
  50. package/dist/components/list/modules/list-item.css +67 -0
  51. package/dist/components/list/modules/list-item.svelte +5 -204
  52. package/dist/components/list/types.d.ts +1 -1
  53. package/dist/components/modal/modal.css +15 -23
  54. package/dist/components/modal/modal.svelte +4 -140
  55. package/dist/components/modal/types.d.ts +1 -1
  56. package/dist/components/popover/popover.css +3 -12
  57. package/dist/components/popover/popover.svelte +6 -30
  58. package/dist/components/popover/types.d.ts +1 -1
  59. package/dist/components/separator/separator.css +4 -8
  60. package/dist/components/separator/separator.svelte +5 -53
  61. package/dist/components/separator/types.d.ts +1 -1
  62. package/dist/components/spacer/spacer.svelte +0 -5
  63. package/dist/components/spacer/types.d.ts +1 -1
  64. package/dist/components/textfield/textfield.css +16 -23
  65. package/dist/components/textfield/textfield.svelte +4 -274
  66. package/dist/components/textfield/types.d.ts +1 -1
  67. package/dist/components/toolbar/toolbar.css +14 -26
  68. package/dist/components/toolbar/toolbar.svelte +4 -139
  69. package/dist/components/toolbar/types.d.ts +1 -1
  70. package/dist/components/tooltip/tooltip.css +5 -13
  71. package/dist/components/tooltip/tooltip.svelte +5 -132
  72. package/dist/components/tooltip/types.d.ts +1 -1
  73. package/dist/index.d.ts +2 -26
  74. package/dist/index.js +2 -6
  75. package/dist/internal/config/presets.d.ts +88 -75
  76. package/dist/internal/config/presets.js +89 -41
  77. package/dist/internal/config/variables.d.ts +1 -18
  78. package/dist/internal/config/variables.js +1 -18
  79. package/dist/internal/{assets.svelte.js → core/actions/assets.svelte.js} +4 -4
  80. package/dist/internal/core/actions/dropdown.svelte.d.ts +7 -0
  81. package/dist/internal/core/actions/popover.svelte.d.ts +7 -0
  82. package/dist/internal/core/actions/tooltip.svelte.d.ts +7 -0
  83. package/dist/internal/{ripple.js → core/animations/ripple.js} +3 -3
  84. package/dist/internal/core/css.d.ts +1 -0
  85. package/dist/internal/core/css.js +16 -0
  86. package/dist/internal/core/formatter/component.js +37 -40
  87. package/dist/internal/core/formatter/device.d.ts +5 -0
  88. package/dist/internal/core/formatter/device.js +66 -0
  89. package/dist/internal/core/formatter/index.d.ts +2 -1
  90. package/dist/internal/core/formatter/index.js +9 -4
  91. package/dist/internal/core/formatter/theme.js +22 -6
  92. package/dist/internal/core/formatter/typography.js +1 -1
  93. package/dist/internal/core/standard-colors.d.ts +75 -0
  94. package/dist/internal/core/standard-colors.js +75 -0
  95. package/dist/internal/helpers/colors.d.ts +1 -0
  96. package/dist/internal/{colors.js → helpers/colors.js} +2 -2
  97. package/dist/internal/helpers/parser.js +2 -1
  98. package/dist/internal/plugins/vite.js +13 -5
  99. package/dist/internal/types/components.d.ts +14 -0
  100. package/dist/internal/types/configuration.d.ts +24 -1
  101. package/dist/internal/types/index.d.ts +1 -0
  102. package/dist/internal/types/index.js +1 -0
  103. package/dist/stores/components.js +1 -1
  104. package/dist/stores/themes.d.ts +0 -6
  105. package/dist/stores/themes.js +1 -31
  106. package/dist/styles/animation.css +33 -0
  107. package/dist/styles/keyframes.css +30 -0
  108. package/dist/{style/normalize.css → styles/reset.css} +15 -7
  109. package/package.json +7 -11
  110. package/bin/lapikit.js +0 -86
  111. package/bin/legacy.js +0 -34
  112. package/bin/modules/adapter.js +0 -52
  113. package/bin/modules/plugin.js +0 -223
  114. package/bin/modules/preset.js +0 -11
  115. package/dist/internal/colors.d.ts +0 -1
  116. package/dist/internal/index.d.ts +0 -4
  117. package/dist/internal/index.js +0 -4
  118. package/dist/internal/types.d.ts +0 -57
  119. package/dist/internal/unit.d.ts +0 -1
  120. package/dist/internal/unit.js +0 -11
  121. package/dist/labs/index.d.ts +0 -4
  122. package/dist/labs/index.js +0 -5
  123. package/dist/labs/my-component-style-global.svelte +0 -6
  124. package/dist/labs/my-component-style-global.svelte.d.ts +0 -18
  125. package/dist/labs/my-component-style-import.svelte +0 -15
  126. package/dist/labs/my-component-style-import.svelte.d.ts +0 -18
  127. package/dist/labs/my-component-style-mixed.svelte +0 -23
  128. package/dist/labs/my-component-style-mixed.svelte.d.ts +0 -18
  129. package/dist/labs/my-component.svelte +0 -16
  130. package/dist/labs/my-component.svelte.d.ts +0 -18
  131. package/dist/labs/style-mixed.css +0 -7
  132. package/dist/labs/style.css +0 -7
  133. package/dist/labs.css +0 -25
  134. package/dist/plugin/css.d.ts +0 -1
  135. package/dist/plugin/css.js +0 -73
  136. package/dist/plugin/modules/config.d.ts +0 -2
  137. package/dist/plugin/modules/config.js +0 -54
  138. package/dist/plugin/modules/importer.d.ts +0 -1
  139. package/dist/plugin/modules/importer.js +0 -15
  140. package/dist/plugin/preset-v2.d.ts +0 -108
  141. package/dist/plugin/preset-v2.js +0 -126
  142. package/dist/plugin/vitejs.d.ts +0 -10
  143. package/dist/plugin/vitejs.js +0 -55
  144. package/dist/preset.d.ts +0 -2
  145. package/dist/preset.js +0 -92
  146. package/dist/style/animation.css +0 -62
  147. package/dist/style/css.d.ts +0 -2
  148. package/dist/style/css.js +0 -34
  149. package/dist/style/parser/color.d.ts +0 -5
  150. package/dist/style/parser/color.js +0 -88
  151. package/dist/style/parser/component.d.ts +0 -2
  152. package/dist/style/parser/component.js +0 -115
  153. package/dist/style/parser/device.d.ts +0 -2
  154. package/dist/style/parser/device.js +0 -40
  155. package/dist/style/parser/index.d.ts +0 -4
  156. package/dist/style/parser/index.js +0 -4
  157. package/dist/style/parser/variable.d.ts +0 -2
  158. package/dist/style/parser/variable.js +0 -25
  159. package/dist/style/variable.css +0 -12
  160. /package/dist/{components/accordion → actions}/accordion.svelte.js +0 -0
  161. /package/dist/internal/{assets.svelte.d.ts → core/actions/assets.svelte.d.ts} +0 -0
  162. /package/dist/{components/dropdown → internal/core/actions}/dropdown.svelte.js +0 -0
  163. /package/dist/{components/popover → internal/core/actions}/popover.svelte.js +0 -0
  164. /package/dist/{components/tooltip → internal/core/actions}/tooltip.svelte.js +0 -0
  165. /package/dist/internal/{ripple.d.ts → core/animations/ripple.d.ts} +0 -0
  166. /package/dist/internal/{ansi.d.ts → core/bin/ansi.d.ts} +0 -0
  167. /package/dist/internal/{ansi.js → core/bin/ansi.js} +0 -0
  168. /package/dist/internal/{terminal.d.ts → core/bin/terminal.d.ts} +0 -0
  169. /package/dist/internal/{terminal.js → core/bin/terminal.js} +0 -0
  170. /package/dist/internal/core/formatter/{styles.d.ts → style.d.ts} +0 -0
  171. /package/dist/internal/core/formatter/{styles.js → style.js} +0 -0
  172. /package/dist/internal/{minify.d.ts → core/minify.d.ts} +0 -0
  173. /package/dist/internal/{minify.js → core/minify.js} +0 -0
  174. /package/dist/{utils/x11.d.ts → internal/core/x11-colors.d.ts} +0 -0
  175. /package/dist/{utils/x11.js → internal/core/x11-colors.js} +0 -0
  176. /package/dist/{utils → internal/helpers}/convert.d.ts +0 -0
  177. /package/dist/{utils → internal/helpers}/convert.js +0 -0
  178. /package/dist/internal/{deepMerge.d.ts → helpers/deep-merge.d.ts} +0 -0
  179. /package/dist/internal/{deepMerge.js → helpers/deep-merge.js} +0 -0
  180. /package/dist/internal/{clickOutside.d.ts → helpers/outside.d.ts} +0 -0
  181. /package/dist/internal/{clickOutside.js → helpers/outside.js} +0 -0
  182. /package/dist/internal/{scroll.d.ts → helpers/scroll.d.ts} +0 -0
  183. /package/dist/internal/{scroll.js → helpers/scroll.js} +0 -0
  184. /package/dist/internal/{types.js → types/components.js} +0 -0
  185. /package/dist/{colors.css → themes.css} +0 -0
@@ -1,7 +1,7 @@
1
1
  <script lang="ts">
2
- import { getAssets } from '../../internal/assets.svelte.js';
3
- import { clickOutside } from '../../internal/clickOutside.js';
4
- import { getPositions } from './dropdown.svelte.js';
2
+ import { getAssets } from '../../internal/core/actions/assets.svelte.js';
3
+ import { clickOutside } from '../../internal/helpers/outside.js';
4
+ import { getPositions } from '../../internal/core/actions/dropdown.svelte.js';
5
5
  import type { DropdownProps, ModelDropdownProps } from './types.js';
6
6
 
7
7
  let {
@@ -55,7 +55,6 @@
55
55
  state: 'open' | 'close',
56
56
  element: HTMLElement | PointerEvent | null
57
57
  ) => {
58
- console.log();
59
58
  if (openOnHover && state === 'open') {
60
59
  if (timeoutId) {
61
60
  clearTimeout(timeoutId);
@@ -106,35 +105,11 @@
106
105
  e.stopPropagation();
107
106
  handleClose();
108
107
  }}
109
- style:--base={assets.color(background)}
110
- style:--on={assets.color(color)}
111
- style:--shape={assets.shape(rounded)}
108
+ style:--dropdown-background={assets.color(background)}
109
+ style:--dropdown-color={assets.color(color)}
110
+ style:--dropdown-shape={assets.shape(rounded)}
112
111
  use:clickOutside={{ exclude: [ref, refActivator], onClose: () => (open = false) }}
113
112
  >
114
113
  {@render children?.()}
115
114
  </div>
116
115
  {/if}
117
-
118
- <style>.kit-dropdown-content {
119
- --dropdown-color: var(--on, var(--kit-on-surface));
120
- --dropdown-background: var(--base, var(--kit-surface));
121
- --dropdown-radius: var(--shape, var(--kit-radius-md));
122
-
123
- inset: 0px auto auto 0px;
124
- margin: 0px;
125
- position: fixed;
126
- z-index: 9999;
127
- display: inline-block;
128
- width: auto;
129
- opacity: 1;
130
- transition-property: opacity, transform;
131
- /* transition:
132
- color 0.5s,
133
- background-color 0.5s; */
134
-
135
- /* theme */
136
- background-color: var(--dropdown-background);
137
- color: var(--dropdown-color);
138
- border-radius: var(--dropdown-radius);
139
- }
140
- </style>
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../internal/types.js';
1
+ import type { Component } from '../../internal/types/index.js';
2
2
  import type { Snippet } from 'svelte';
3
3
  export type PositionElement = {
4
4
  x: number;
@@ -1,31 +1,28 @@
1
1
  .kit-icon {
2
- --icon-color: var(--base, var(--base-parent, var(--kit-on-neutral)));
3
-
4
2
  display: inline-flex;
5
3
  align-items: center;
6
4
  justify-content: center;
7
- /* transition: color 0.5s; */
8
5
  text-indent: 0;
9
6
  font-size: calc(
10
- var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--prism-spacing)
7
+ var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--system-spacing)
11
8
  );
12
9
  }
13
10
 
14
11
  .kit-icon:before {
15
- color: var(--icon-color);
12
+ color: var(--icon-color, currentColor);
16
13
  }
17
14
 
18
15
  .kit-icon svg {
19
- color: var(--icon-color);
16
+ color: var(--icon-color, currentColor);
20
17
  }
21
18
 
22
19
  .kit-icon svg,
23
20
  .kit-icon img {
24
21
  width: calc(
25
- var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--prism-spacing)
22
+ var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--system-spacing)
26
23
  );
27
24
  height: calc(
28
- var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--prism-spacing)
25
+ var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--system-spacing)
29
26
  );
30
27
  }
31
28
 
@@ -52,16 +49,16 @@
52
49
 
53
50
  /* state */
54
51
  .kit-icon.kit-icon--info {
55
- --base: var(--kit-info);
52
+ --base: var(--kit-accent-info);
56
53
  }
57
54
  .kit-icon.kit-icon--success {
58
- --base: var(--kit-success);
55
+ --base: var(--kit-accent-successs);
59
56
  }
60
57
  .kit-icon.kit-icon--warning {
61
- --base: var(--kit-warning);
58
+ --base: var(--kit-accent-warning);
62
59
  }
63
60
  .kit-icon.kit-icon--error {
64
- --base: var(--kit-error);
61
+ --base: var(--kit-accent-destructive);
65
62
  }
66
63
 
67
64
  /* disabled */
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">
2
- import { getAssets } from '../../internal/assets.svelte.js';
2
+ import { getAssets } from '../../internal/core/actions/assets.svelte.js';
3
3
  import type { IconProps } from './types.js';
4
4
  let {
5
5
  children,
@@ -39,7 +39,7 @@
39
39
  size && assets.className('icon', 'size', size),
40
40
  rest.class
41
41
  ]}
42
- style:--base={assets.color(color)}
42
+ style:--icon-color={assets.color(color)}
43
43
  >
44
44
  {#if icon && icon.includes('/')}
45
45
  <img src={icon} {alt} />
@@ -47,92 +47,3 @@
47
47
  {@render children?.()}
48
48
  {/if}
49
49
  </svelte:element>
50
-
51
- <style>.kit-icon {
52
- --icon-color: var(--base, var(--base-parent, var(--kit-on-neutral)));
53
-
54
- display: inline-flex;
55
- align-items: center;
56
- justify-content: center;
57
- /* transition: color 0.5s; */
58
- text-indent: 0;
59
- font-size: calc(
60
- var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--prism-spacing)
61
- );
62
- }
63
-
64
- .kit-icon:before {
65
- color: var(--icon-color);
66
- }
67
-
68
- .kit-icon svg {
69
- color: var(--icon-color);
70
- }
71
-
72
- .kit-icon svg,
73
- .kit-icon img {
74
- width: calc(
75
- var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--prism-spacing)
76
- );
77
- height: calc(
78
- var(--icon-multiplier-parent-size, var(--icon-multiplier-size)) * var(--prism-spacing)
79
- );
80
- }
81
-
82
- /* size */
83
-
84
- .kit-icon[breakpoint]kit-icon--size-xs {
85
- --icon-multiplier-size: 7;
86
- }
87
-
88
- .kit-icon[breakpoint]kit-icon--size-sm {
89
- --icon-multiplier-size: 8;
90
- }
91
-
92
- .kit-icon[breakpoint]kit-icon--size-md {
93
- --icon-multiplier-size: 9;
94
- }
95
-
96
- .kit-icon[breakpoint]kit-icon--size-lg {
97
- --icon-multiplier-size: 10;
98
- }
99
-
100
- .kit-icon[breakpoint]kit-icon--size-xl {
101
- --icon-multiplier-size: 11;
102
- }
103
-
104
- /* state */
105
-
106
- .kit-icon.kit-icon--info {
107
- --base: var(--kit-info);
108
- }
109
-
110
- .kit-icon.kit-icon--success {
111
- --base: var(--kit-success);
112
- }
113
-
114
- .kit-icon.kit-icon--warning {
115
- --base: var(--kit-warning);
116
- }
117
-
118
- .kit-icon.kit-icon--error {
119
- --base: var(--kit-error);
120
- }
121
-
122
- /* disabled */
123
-
124
- .kit-icon.kit-icon--disabled {
125
- -webkit-user-select: none;
126
- user-select: none;
127
- pointer-events: none;
128
- }
129
-
130
- .kit-icon.kit-icon--disabled img {
131
- opacity: 0.38;
132
- }
133
-
134
- .kit-icon.kit-icon--disabled svg,
135
- .kit-icon.kit-icon--disabled:before {
136
- color: color-mix(in oklab, var(--icon-color) 40%, transparent) !important;
137
- }
138
- </style>
@@ -1,4 +1,4 @@
1
- import type { Component } from '../../internal/types.js';
1
+ import type { Component } from '../../internal/types/index.js';
2
2
  export interface IconProps extends Component {
3
3
  ref?: HTMLElement | null;
4
4
  is?: 'i' | 'div';
@@ -1,10 +1,3 @@
1
- /* root */
2
- .kit-list {
3
- --list-color: var(--on, var(--kit-on-container));
4
- --list-background: var(--base, var(--kit-container));
5
- --list-radius: var(--shape, var(--kit-radius-md));
6
- }
7
-
8
1
  .kit-list {
9
2
  position: relative;
10
3
  flex-direction: column;
@@ -14,74 +7,6 @@
14
7
  outline: none;
15
8
  }
16
9
 
17
- .kit-list-item {
18
- --list-item-radius: var(--shape, var(--list-radius, var(--kit-radius-md)));
19
- }
20
-
21
- .kit-list-item {
22
- position: relative;
23
- border: none;
24
- outline: none;
25
- padding-top: var(--list-spacing-x);
26
- padding-bottom: var(--list-spacing-x);
27
- padding-right: var(--list-spacing-y);
28
- padding-left: var(--list-spacing-y);
29
- color: var(--list-item-color);
30
- border-radius: var(--list-item-radius);
31
- font-weight: 500;
32
- text-decoration: none;
33
- }
34
-
35
- .kit-list-item:not(div) {
36
- cursor: pointer;
37
- }
38
-
39
- .kit-list-item,
40
- .kit-list-item .kit-list-item-content--content,
41
- .kit-list-item .kit-list-item-content--append,
42
- .kit-list-item .kit-list-item-content--prepend {
43
- display: inline-flex;
44
- align-items: center;
45
- white-space: nowrap;
46
- gap: calc(var(--prism-spacing) * var(--list-multiplier-gap));
47
- font-size: calc(var(--prism-spacing) * var(--list-multiplier-font-size));
48
- }
49
-
50
- .kit-list-item.kit-list-item--append:not(.kit-list-item--prepend) {
51
- display: grid;
52
- grid-template-columns: auto 1fr;
53
- }
54
-
55
- .kit-list-item.kit-list-item--prepend:not(.kit-list-item--append) {
56
- display: grid;
57
- grid-template-columns: 1fr auto;
58
- }
59
-
60
- .kit-list-item.kit-list-item--prepend.kit-list-item--append {
61
- display: grid;
62
- grid-template-columns: auto 1fr auto;
63
- }
64
-
65
- .kit-list-item::after {
66
- content: '';
67
- position: absolute;
68
- inset: 0;
69
- background-color: currentColor;
70
- opacity: 0;
71
- transition: opacity 150ms ease;
72
- pointer-events: none;
73
- border-radius: inherit;
74
- }
75
- .kit-list-item:not(div):hover::after {
76
- opacity: 0.08;
77
- }
78
- .kit-list-item:not(div):active::after {
79
- opacity: 0.12;
80
- }
81
- .kit-list-item:not(div):focus-visible::after {
82
- opacity: 0.12;
83
- }
84
-
85
10
  .kit-list.kit-list--nav {
86
11
  padding-top: 8px;
87
12
  padding-bottom: 8px;
@@ -140,36 +65,39 @@
140
65
  }
141
66
 
142
67
  /* density */
143
- .kit-list[breakpoint]kit-list--density-default .kit-list-item {
144
- height: calc(var(--prism-spacing) * var(--list-multiplier-x));
68
+ .kit-list[breakpoint]kit-list--density-default {
69
+ --list-height: calc(var(--system-spacing) * var(--list-multiplier-x));
145
70
  --list-spacing-x: 0;
146
- --list-spacing-y: calc(var(--prism-spacing) * var(--list-multiplier-y));
71
+ --list-spacing-y: calc(var(--system-spacing) * var(--list-multiplier-y));
147
72
  }
148
73
 
149
- .kit-list[breakpoint]kit-list--density-compact .kit-list-item {
150
- height: calc(var(--prism-spacing) * var(--list-multiplier-x) - 0.25rem);
74
+ .kit-list[breakpoint]kit-list--density-compact {
75
+ --list-height: calc(var(--system-spacing) * var(--list-multiplier-x) - 0.25rem);
151
76
  --list-spacing-x: 0;
152
- --list-spacing-y: calc(var(--prism-spacing) * var(--list-multiplier-y) - 0.25rem);
77
+ --list-spacing-y: calc(var(--system-spacing) * var(--list-multiplier-y) - 0.25rem);
153
78
  }
154
79
 
155
- .kit-list[breakpoint]kit-list--density-comfortable .kit-list-item {
156
- height: calc(var(--prism-spacing) * var(--list-multiplier-x) + 0.25rem);
80
+ .kit-list[breakpoint]kit-list--density-comfortable {
81
+ --list-height: calc(var(--system-spacing) * var(--list-multiplier-x) + 0.25rem);
157
82
  --list-spacing-x: 0;
158
- --list-spacing-y: calc(var(--prism-spacing) * var(--list-multiplier-y) + 0.25rem);
83
+ --list-spacing-y: calc(var(--system-spacing) * var(--list-multiplier-y) + 0.25rem);
159
84
  }
160
85
 
161
86
  /* variant */
162
87
  .kit-list[breakpoint]kit-list--variant-filled .kit-list-item {
163
- --list-item-color: var(--on, var(--list-color, var(--kit-on-container)));
164
- --list-item-background: var(--base, var(--list-background, var(--kit-container)));
88
+ --list-item-color: var(--on, var(--list-color, var(--kit-label-primary)));
89
+ --list-item-background: var(
90
+ --base,
91
+ var(--list-background, var(--kit-background-grouped-primary))
92
+ );
165
93
  background-color: var(--list-item-background);
166
94
  }
167
95
 
168
96
  .kit-list[breakpoint]kit-list--variant-outline .kit-list-item {
169
- --list-item-color: var(--base, var(--list-color, var(--kit-on-container)));
97
+ --list-item-color: var(--base, var(--list-color, var(--kit-label-primary)));
170
98
  background-color: transparent;
171
99
  }
172
- .kit-list[breakpoint]kit-list--variant-outline .kit-list-item::before {
100
+ .kit-list[breakpoint]kit-list--variant-outline :global(.kit-list-item::before) {
173
101
  content: '';
174
102
  position: absolute;
175
103
  inset: 0;
@@ -179,7 +107,7 @@
179
107
  }
180
108
 
181
109
  .kit-list[breakpoint]kit-list--variant-text .kit-list-item {
182
- --list-item-color: var(--base, var(--list-color, var(--kit-on-container)));
110
+ --list-item-color: var(--base, var(--list-color, var(--kit-label-primary)));
183
111
  background-color: transparent;
184
112
  border-color: transparent;
185
113
  }
@@ -187,8 +115,8 @@
187
115
  /* events */
188
116
  .kit-list[class*='list--variant-filled'] .kit-list-item.kit-list-item--active:not(div),
189
117
  .kit-list[class*='list--variant-filled'] .kit-list-item:active:not(div) {
190
- background-color: color-mix(in oklab, var(--list-item-background) 90%, var(--kit-scrim));
191
- border-color: color-mix(in oklab, var(--list-item-background) 90%, var(--kit-scrim));
118
+ background-color: color-mix(in oklab, var(--list-item-background) 90%, var(--kit-state-shadow));
119
+ border-color: color-mix(in oklab, var(--list-item-background) 90%, var(--kit-state-shadow));
192
120
  }
193
121
  .kit-list[class*='list--variant-']:not([class*='variant-filled'])
194
122
  .kit-list-item.kit-list-item--active:not(div),
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">
2
- import { getAssets } from '../../internal/index.js';
2
+ import { getAssets } from '../../internal/core/actions/assets.svelte.js';
3
3
  import type { ListProps } from './types.js';
4
4
 
5
5
  let {
@@ -36,208 +36,9 @@
36
36
  rest.class
37
37
  ]}
38
38
  role="listbox"
39
- style:--base={assets.color(background)}
40
- style:--on={assets.color(color)}
41
- style:--shape={assets.shape(rounded)}
39
+ style:--list-background={assets.color(background)}
40
+ style:--list-color={assets.color(color)}
41
+ style:--list-shape={assets.shape(rounded)}
42
42
  >
43
43
  {@render children?.()}
44
44
  </svelte:element>
45
-
46
- <style>/* root */
47
- .kit-list {
48
- --list-color: var(--on, var(--kit-on-container));
49
- --list-background: var(--base, var(--kit-container));
50
- --list-radius: var(--shape, var(--kit-radius-md));
51
- }
52
- .kit-list {
53
- position: relative;
54
- flex-direction: column;
55
- width: 100%;
56
- display: flex;
57
- border: none;
58
- outline: none;
59
- }
60
- .kit-list-item {
61
- --list-item-radius: var(--shape, var(--list-radius, var(--kit-radius-md)));
62
- }
63
- .kit-list-item {
64
- position: relative;
65
- border: none;
66
- outline: none;
67
- padding-top: var(--list-spacing-x);
68
- padding-bottom: var(--list-spacing-x);
69
- padding-right: var(--list-spacing-y);
70
- padding-left: var(--list-spacing-y);
71
- color: var(--list-item-color);
72
- border-radius: var(--list-item-radius);
73
- font-weight: 500;
74
- text-decoration: none;
75
- }
76
- .kit-list-item:not(div) {
77
- cursor: pointer;
78
- }
79
- .kit-list-item,
80
- .kit-list-item .kit-list-item-content--content,
81
- .kit-list-item .kit-list-item-content--append,
82
- .kit-list-item .kit-list-item-content--prepend {
83
- display: inline-flex;
84
- align-items: center;
85
- white-space: nowrap;
86
- gap: calc(var(--prism-spacing) * var(--list-multiplier-gap));
87
- font-size: calc(var(--prism-spacing) * var(--list-multiplier-font-size));
88
- }
89
- .kit-list-item.kit-list-item--append:not(.kit-list-item--prepend) {
90
- display: grid;
91
- grid-template-columns: auto 1fr;
92
- }
93
- .kit-list-item.kit-list-item--prepend:not(.kit-list-item--append) {
94
- display: grid;
95
- grid-template-columns: 1fr auto;
96
- }
97
- .kit-list-item.kit-list-item--prepend.kit-list-item--append {
98
- display: grid;
99
- grid-template-columns: auto 1fr auto;
100
- }
101
- .kit-list-item::after {
102
- content: '';
103
- position: absolute;
104
- inset: 0;
105
- background-color: currentColor;
106
- opacity: 0;
107
- transition: opacity 150ms ease;
108
- pointer-events: none;
109
- border-radius: inherit;
110
- }
111
- .kit-list-item:not(div):hover::after {
112
- opacity: 0.08;
113
- }
114
- .kit-list-item:not(div):active::after {
115
- opacity: 0.12;
116
- }
117
- .kit-list-item:not(div):focus-visible::after {
118
- opacity: 0.12;
119
- }
120
- .kit-list.kit-list--nav {
121
- padding-top: 8px;
122
- padding-bottom: 8px;
123
- padding-inline: 8px;
124
- }
125
- /* size */
126
- .kit-list[breakpoint]kit-list--size-xs {
127
- --list-multiplier-x: 16;
128
- --list-multiplier-y: 4;
129
- --list-multiplier-gap: 2;
130
- --list-multiplier-font-size: 6;
131
- }
132
- .kit-list[breakpoint]kit-list--size-xs .kit-icon[class*='kit-icon--size-md'] {
133
- --icon-multiplier-parent-size: 6;
134
- }
135
- .kit-list[breakpoint]kit-list--size-sm {
136
- --list-multiplier-x: 20;
137
- --list-multiplier-y: 5;
138
- --list-multiplier-gap: 4;
139
- --list-multiplier-font-size: 7;
140
- }
141
- .kit-list[breakpoint]kit-list--size-sm .kit-icon[class*='kit-icon--size-md'] {
142
- --icon-multiplier-parent-size: 7;
143
- }
144
- .kit-list[breakpoint]kit-list--size-md {
145
- --list-multiplier-x: 24;
146
- --list-multiplier-y: 6;
147
- --list-multiplier-gap: 4;
148
- --list-multiplier-font-size: 8;
149
- }
150
- .kit-list[breakpoint]kit-list--size-md .kit-icon[class*='kit-icon--size-md'] {
151
- --icon-multiplier-parent-size: 8;
152
- }
153
- .kit-list[breakpoint]kit-list--size-lg {
154
- --list-multiplier-x: 28;
155
- --list-multiplier-y: 7;
156
- --list-multiplier-gap: 4;
157
- --list-multiplier-font-size: 9;
158
- }
159
- .kit-list[breakpoint]kit-list--size-lg .kit-icon[class*='kit-icon--size-md'] {
160
- --icon-multiplier-parent-size: 9;
161
- }
162
- .kit-list[breakpoint]kit-list--size-xl {
163
- --list-multiplier-x: 32;
164
- --list-multiplier-y: 8;
165
- --list-multiplier-gap: 5;
166
- --list-multiplier-font-size: 10;
167
- }
168
- .kit-list[breakpoint]kit-list--size-xl .kit-icon[class*='kit-icon--size-md'] {
169
- --icon-multiplier-parent-size: 10;
170
- }
171
- /* density */
172
- .kit-list[breakpoint]kit-list--density-default .kit-list-item {
173
- height: calc(var(--prism-spacing) * var(--list-multiplier-x));
174
- --list-spacing-x: 0;
175
- --list-spacing-y: calc(var(--prism-spacing) * var(--list-multiplier-y));
176
- }
177
- .kit-list[breakpoint]kit-list--density-compact .kit-list-item {
178
- height: calc(var(--prism-spacing) * var(--list-multiplier-x) - 0.25rem);
179
- --list-spacing-x: 0;
180
- --list-spacing-y: calc(var(--prism-spacing) * var(--list-multiplier-y) - 0.25rem);
181
- }
182
- .kit-list[breakpoint]kit-list--density-comfortable .kit-list-item {
183
- height: calc(var(--prism-spacing) * var(--list-multiplier-x) + 0.25rem);
184
- --list-spacing-x: 0;
185
- --list-spacing-y: calc(var(--prism-spacing) * var(--list-multiplier-y) + 0.25rem);
186
- }
187
- /* variant */
188
- .kit-list[breakpoint]kit-list--variant-filled .kit-list-item {
189
- --list-item-color: var(--on, var(--list-color, var(--kit-on-container)));
190
- --list-item-background: var(--base, var(--list-background, var(--kit-container)));
191
- background-color: var(--list-item-background);
192
- }
193
- .kit-list[breakpoint]kit-list--variant-outline .kit-list-item {
194
- --list-item-color: var(--base, var(--list-color, var(--kit-on-container)));
195
- background-color: transparent;
196
- }
197
- .kit-list[breakpoint]kit-list--variant-outline .kit-list-item::before {
198
- content: '';
199
- position: absolute;
200
- inset: 0;
201
- border: 1px solid currentColor;
202
- pointer-events: none;
203
- border-radius: inherit;
204
- }
205
- .kit-list[breakpoint]kit-list--variant-text .kit-list-item {
206
- --list-item-color: var(--base, var(--list-color, var(--kit-on-container)));
207
- background-color: transparent;
208
- border-color: transparent;
209
- }
210
- /* events */
211
- .kit-list[class*='list--variant-filled'] .kit-list-item.kit-list-item--active:not(div),
212
- .kit-list[class*='list--variant-filled'] .kit-list-item:active:not(div) {
213
- background-color: color-mix(in oklab, var(--list-item-background) 90%, var(--kit-scrim));
214
- border-color: color-mix(in oklab, var(--list-item-background) 90%, var(--kit-scrim));
215
- }
216
- .kit-list[class*='list--variant-']:not([class*='variant-filled'])
217
- .kit-list-item.kit-list-item--active:not(div),
218
- .kit-list[class*='list--variant-']:not([class*='variant-filled']) .kit-list-item:active:not(div) {
219
- background-color: color-mix(in oklab, currentColor 15%, transparent);
220
- border-color: color-mix(in oklab, currentColor 15%, transparent);
221
- }
222
- /* disabled */
223
- .kit-list .kit-list-item.kit-list-item--disabled,
224
- .kit-list .kit-list-item[disabled],
225
- .kit-list.kit-list--disabled .kit-list-item {
226
- pointer-events: none;
227
- user-select: none;
228
- cursor: default;
229
- }
230
- .kit-list[class*='list--variant-filled'] .kit-list-item.kit-list-item--disabled,
231
- .kit-list[class*='list--variant-filled'] .kit-list-item.kit-list-item--disabled {
232
- color: color-mix(in oklab, var(--list-item-color) 40%, transparent) !important;
233
- background-color: color-mix(in oklab, var(--list-item-background) 70%, transparent) !important;
234
- border-color: color-mix(in oklab, var(--list-item-background) 70%, transparent) !important;
235
- }
236
- .kit-list[class*='list--variant-']:not([class*='variant-filled'])
237
- .kit-list-item.kit-list-item--disabled,
238
- .kit-list[class*='list--variant-']:not([class*='variant-filled'])
239
- .kit-list-item.kit-list-item--disabled
240
- i:before {
241
- color: color-mix(in oklab, var(--list-item-background) 40%, transparent) !important;
242
- }
243
- </style>
@@ -0,0 +1,67 @@
1
+ .kit-list-item {
2
+ position: relative;
3
+ border: none;
4
+ outline: none;
5
+ padding-top: var(--list-spacing-x);
6
+ padding-bottom: var(--list-spacing-x);
7
+ padding-right: var(--list-spacing-y);
8
+ padding-left: var(--list-spacing-y);
9
+ color: var(--list-item-color, var(--kit-label-primary));
10
+ border-radius: var(--list-item-shape, var(--system-shape-sm));
11
+ font-weight: 500;
12
+ text-decoration: none;
13
+ }
14
+
15
+ .kit-list-item {
16
+ height: var(--list-height);
17
+ }
18
+
19
+ .kit-list-item:not(div) {
20
+ cursor: pointer;
21
+ }
22
+
23
+ .kit-list-item,
24
+ .kit-list-item .kit-list-item-content--content,
25
+ .kit-list-item .kit-list-item-content--append,
26
+ .kit-list-item .kit-list-item-content--prepend {
27
+ display: inline-flex;
28
+ align-items: center;
29
+ white-space: nowrap;
30
+ gap: calc(var(--system-spacing) * var(--list-multiplier-gap));
31
+ font-size: calc(var(--system-spacing) * var(--list-multiplier-font-size));
32
+ }
33
+
34
+ .kit-list-item.kit-list-item--append:not(.kit-list-item--prepend) {
35
+ display: grid;
36
+ grid-template-columns: auto 1fr;
37
+ }
38
+
39
+ .kit-list-item.kit-list-item--prepend:not(.kit-list-item--append) {
40
+ display: grid;
41
+ grid-template-columns: 1fr auto;
42
+ }
43
+
44
+ .kit-list-item.kit-list-item--prepend.kit-list-item--append {
45
+ display: grid;
46
+ grid-template-columns: auto 1fr auto;
47
+ }
48
+
49
+ .kit-list-item::after {
50
+ content: '';
51
+ position: absolute;
52
+ inset: 0;
53
+ background-color: currentColor;
54
+ opacity: 0;
55
+ transition: opacity 150ms ease;
56
+ pointer-events: none;
57
+ border-radius: inherit;
58
+ }
59
+ .kit-list-item:not(div):hover::after {
60
+ opacity: 0.08;
61
+ }
62
+ .kit-list-item:not(div):active::after {
63
+ opacity: 0.12;
64
+ }
65
+ .kit-list-item:not(div):focus-visible::after {
66
+ opacity: 0.12;
67
+ }