@ambita/design-system 6.0.2-431.0 → 6.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 (66) hide show
  1. package/README.md +2 -2
  2. package/dist/css/ambita-dark.scss +1 -0
  3. package/dist/css/ambita-light.scss +1 -0
  4. package/dist/css/ambita-old.scss +1 -0
  5. package/dist/css/base.scss +1 -0
  6. package/dist/css/byggesoknaden.scss +1 -0
  7. package/dist/css/neo-tokens.scss +42 -17
  8. package/dist/css/utilities.scss +59 -0
  9. package/dist/ds.cjs +3 -3
  10. package/dist/ds.js +17291 -18235
  11. package/dist/ds.umd.cjs +4 -4
  12. package/dist/index.css +1 -1
  13. package/dist/themes/ambita-dark.css +1 -1
  14. package/dist/themes/ambita-light.css +1 -1
  15. package/dist/themes/ambita-old.css +1 -1
  16. package/dist/themes/byggesoknaden.css +1 -1
  17. package/dist/types/App.vue.d.ts +1 -79
  18. package/dist/types/components/AuxCheckbox/AuxCheckbox.vue.d.ts +51 -0
  19. package/dist/types/components/{Checkbox/CheckboxCard.vue.d.ts → AuxCheckbox/AuxCheckboxCard.vue.d.ts} +9 -0
  20. package/dist/types/components/{Checkbox/CheckboxRegular.vue.d.ts → AuxCheckbox/AuxCheckboxRegular.vue.d.ts} +9 -0
  21. package/dist/types/components/AuxDefinition/AuxDefinition.vue.d.ts +24 -0
  22. package/dist/types/components/AuxModal/AuxModal.vue.d.ts +16 -70
  23. package/dist/types/components/AuxNotification/AuxNotification.vue.d.ts +22 -0
  24. package/dist/types/components/AuxNotification/AuxNotifications.vue.d.ts +15 -0
  25. package/dist/types/components/AuxNotification/constants.d.ts +2 -0
  26. package/dist/types/components/AuxRadio/AuxRadio.vue.d.ts +31 -0
  27. package/dist/types/components/AuxSpinner/AuxSpinner.vue.d.ts +23 -0
  28. package/dist/types/components/AuxTag/AuxTag.vue.d.ts +18 -0
  29. package/dist/types/components/Button/NeoButton.vue.d.ts +2 -0
  30. package/dist/types/components/Button/NeoLoadingButton.vue.d.ts +33 -0
  31. package/dist/types/components/CheckboxDropdown/CheckboxDropdown.vue.d.ts +41 -307
  32. package/dist/types/components/CheckboxGroup/CheckboxGroup.vue.d.ts +17 -310
  33. package/dist/types/components/CheckboxGroup/types.d.ts +6 -0
  34. package/dist/types/components/Details/Details.vue.d.ts +5 -12
  35. package/dist/types/components/DirectionalArrow/DirectionalArrow.vue.d.ts +6 -14
  36. package/dist/types/components/FormElement/FormElement.vue.d.ts +5 -12
  37. package/dist/types/components/Input/Input.vue.d.ts +6 -13
  38. package/dist/types/components/Input/NeoInput.vue.d.ts +2 -2
  39. package/dist/types/components/NeoBanner/NeoBanner.vue.d.ts +1 -1
  40. package/dist/types/components/NeoComboBox/NeoComboBox.vue.d.ts +1 -1
  41. package/dist/types/components/NeoDatePicker/NeoDatePicker.vue.d.ts +2 -2
  42. package/dist/types/components/NeoSelect/NeoSelect.vue.d.ts +1 -1
  43. package/dist/types/components/NeoTagsInput/TagsInput.vue.d.ts +2 -2
  44. package/dist/types/components/RadioGroup/RadioGroup.vue.d.ts +18 -309
  45. package/dist/types/components/RadioGroup/RadioGroupCardElement.vue.d.ts +1 -1
  46. package/dist/types/components/RadioGroup/RadioGroupElement.vue.d.ts +1 -1
  47. package/dist/types/components/Select/Select.vue.d.ts +6 -13
  48. package/dist/types/components/StatusBadge/StatusBadge.vue.d.ts +19 -44
  49. package/dist/types/components/TextArea/TextArea.vue.d.ts +6 -13
  50. package/dist/types/components/Typography/NeoFormField.vue.d.ts +2 -3
  51. package/dist/types/components/Upload/Upload.vue.d.ts +5 -12
  52. package/dist/types/index.d.ts +10 -6
  53. package/dist/types/main.d.ts +0 -1
  54. package/package.json +80 -75
  55. package/dist/types/components/Checkbox/Checkbox.vue.d.ts +0 -239
  56. package/dist/types/components/Definition/Definition.vue.d.ts +0 -59
  57. package/dist/types/components/Notification/Notification.vue.d.ts +0 -35
  58. package/dist/types/components/Notification/Notifications.vue.d.ts +0 -53
  59. package/dist/types/components/Notification/constants.d.ts +0 -2
  60. package/dist/types/components/Radio/Radio.vue.d.ts +0 -51
  61. package/dist/types/components/Spinner/Spinner.vue.d.ts +0 -23
  62. package/dist/types/components/Tag/Tag.vue.d.ts +0 -22
  63. /package/dist/types/components/{Checkbox → AuxCheckbox}/constants.d.ts +0 -0
  64. /package/dist/types/components/{Spinner → AuxSpinner}/constants.d.ts +0 -0
  65. /package/dist/types/components/{Tag → AuxTag}/Colors.d.ts +0 -0
  66. /package/dist/types/components/{Seperator → Separator}/NeoSeparator.vue.d.ts +0 -0
package/README.md CHANGED
@@ -107,13 +107,13 @@ npm run test:unit
107
107
  npm run test:coverage
108
108
  ```
109
109
 
110
- #### Lint with [ESLint](https://eslint.org/)
110
+ #### Lint code
111
111
 
112
112
  ```sh
113
113
  npm run lint
114
114
  ```
115
115
 
116
- #### Format with [Prettier](https://prettier.io/)
116
+ #### Format code with [oxfmt](https://oxc.rs/docs/guide/usage/formatter.html)
117
117
 
118
118
  ```sh
119
119
  npm run format
@@ -13,6 +13,7 @@
13
13
 
14
14
  /* Layer 0: Legacy SCSS Variables (for legacy Aux components) */
15
15
  @use './colors-css-variables.scss';
16
+ @use './utilities.scss' as *;
16
17
 
17
18
  /* Layer 1: Semantic Tokens (primitives + theme-specific) */
18
19
  @import url('./themes/ambita-dark/semantic-tokens.css');
@@ -15,6 +15,7 @@
15
15
 
16
16
  /* Layer 0: Legacy SCSS Variables (for legacy Aux components) */
17
17
  @use './colors-css-variables.scss';
18
+ @use './utilities.scss' as *;
18
19
 
19
20
  /* Layer 1: Semantic Tokens (primitives + theme-specific) */
20
21
  @import url('./themes/ambita-light/semantic-tokens.css');
@@ -15,6 +15,7 @@
15
15
 
16
16
  /* Layer 0: Legacy SCSS Variables (for legacy Aux components) */
17
17
  @use './colors-css-variables.scss';
18
+ @use './utilities.scss' as *;
18
19
 
19
20
  /* Layer 1: Semantic Tokens (primitives + theme-specific) */
20
21
  @import url('./themes/ambita-old/semantic-tokens.css');
@@ -11,6 +11,7 @@
11
11
 
12
12
  /* Layer 0: Legacy SCSS Variables (for legacy Aux components) */
13
13
  @use './colors-css-variables.scss';
14
+ @use './utilities.scss' as *;
14
15
 
15
16
  /* Layer 1: Semantic Tokens - Using Ambita Light as default */
16
17
  @import url('./themes/ambita-light/semantic-tokens.css');
@@ -13,6 +13,7 @@
13
13
 
14
14
  /* Layer 0: Legacy SCSS Variables (for legacy Aux components) */
15
15
  @use './colors-css-variables.scss';
16
+ @use './utilities.scss' as *;
16
17
 
17
18
  /* Layer 1: Semantic Tokens (primitives + theme-specific) */
18
19
  @import url('./themes/byggesoknaden/semantic-tokens.css');
@@ -53,12 +53,6 @@ $border-color-error: var(--border-color-error);
53
53
  /* ============================================================================
54
54
  BUTTON COMPONENT TOKENS
55
55
  ============================================================================ */
56
- /*
57
- Font sizes:
58
- - 14px (default)
59
- - 16px (large)
60
- - 12px (small)
61
- */
62
56
 
63
57
  $default-transition-duration: 200ms;
64
58
 
@@ -88,10 +82,16 @@ $button-secondary-border: var(--border-color-secondary-default);
88
82
  $button-secondary-border-hover: var(--border-color-secondary-hover);
89
83
  $button-secondary-border-width: var(--border-weight-button);
90
84
 
85
+ // Tertiary Button
86
+ $button-tertiary-bg: transparent;
87
+ $button-tertiary-bg-disabled: transparent;
88
+ $button-tertiary-text: var(--text-link-default);
89
+
91
90
  // Button Sizing & Spacing
92
91
  $button-padding-x: 24px;
93
- $button-padding-y: 11px;
92
+ $button-padding-y: 10px;
94
93
  $button-padding-x-icon: 12px;
94
+ $button-icon-only-padding: var(--number-spacing-spacing-s);
95
95
  $button-icon-size: 18px;
96
96
  $button-icon-gap: 8px;
97
97
 
@@ -102,13 +102,15 @@ $button-small-icon-size: 18px;
102
102
 
103
103
  // Button Typography
104
104
  $button-font-size: var(--font-size-s);
105
- $button-font-size-small: var(--font-size-xxs);
105
+ $button-font-size-small: var(--font-size-xs);
106
+ $button-tertiary-font-size-small: var(--font-size-xxs);
106
107
  $button-font-weight: var(--font-weight-medium);
107
- $button-line-height: var(--font-line-height-s);
108
+ $button-line-height: var(--font-line-height-xs);
108
109
  $button-line-height-small: var(--font-line-height-xxs);
109
110
 
110
111
  // Button Border
111
112
  $button-border-radius: var(--corner-radius-l);
113
+ $button-icon-only-border-radius: var(--corner-radius-m);
112
114
 
113
115
  /* ============================================================================
114
116
  LINK BUTTON TOKENS
@@ -329,7 +331,7 @@ $pagination-button-shadow: none;
329
331
  $banner-padding-x: 15px;
330
332
  $banner-padding-y: 10px;
331
333
  $banner-icon-margin-right: 12px;
332
- $banner-content-max-width: 691px;
334
+ $banner-max-width: 700px;
333
335
  $banner-gap: 12px;
334
336
 
335
337
  // Banner Border & Radius
@@ -367,22 +369,18 @@ $banner-list-item-margin-bottom: 4px;
367
369
  $banner-error-bg: var(--fill-error);
368
370
  $banner-error-border: var(--fill-error-stronger);
369
371
  $banner-error-icon-color: var(--icon-fill-error);
370
- $banner-error-text: var(--text-default);
371
372
 
372
373
  $banner-warning-bg: var(--fill-warning);
373
374
  $banner-warning-border: var(--fill-warning-stronger);
374
375
  $banner-warning-icon-color: var(--fill-warning-stronger);
375
- $banner-warning-text: var(--text-default);
376
376
 
377
377
  $banner-info-bg: var(--fill-info);
378
378
  $banner-info-border: var(--fill-info-stronger);
379
379
  $banner-info-icon-color: var(--fill-info-stronger);
380
- $banner-info-text: var(--text-default);
381
380
 
382
381
  $banner-success-bg: var(--fill-success);
383
382
  $banner-success-border: var(--fill-success-stronger);
384
383
  $banner-success-icon-color: var(--fill-success-stronger);
385
- $banner-success-text: var(--text-default);
386
384
 
387
385
  // Banner Interactive States
388
386
  $banner-focus-shadow: var(--Shadow-Focus);
@@ -393,9 +391,9 @@ $banner-close-btn-color: var(--icon-fill-dark);
393
391
  $banner-link-color: var(--text-link-default);
394
392
  $banner-link-color-hover: var(--text-link-active);
395
393
 
396
- // Seperator Styling
397
- $seperator-background-color: var(--border-color-input);
398
- $seperator-height: 2px;
394
+ // Separator Styling
395
+ $separator-background-color: var(--border-color-input);
396
+ $separator-height: 2px;
399
397
 
400
398
  /* ============================================================================
401
399
  TABS COMPONENT TOKENS
@@ -535,3 +533,30 @@ $datepicker-footer-font-size: var(--font-size-xxs, 12px);
535
533
  // Datepicker Animation
536
534
  $datepicker-animation-duration-in: 150ms;
537
535
  $datepicker-animation-duration-out: 100ms;
536
+
537
+ /* ============================================================================
538
+ SPINNER COMPONENT TOKENS
539
+ ============================================================================ */
540
+
541
+ // Spinner colors
542
+ // spinner-lighter/lighter = track (background ring)
543
+ $spinner-color-track: var(--border-color-spinner-light);
544
+ // spinner-dark/darker = indicator (moving arc)
545
+ $spinner-color-indicator: var(--border-color-spinner-dark);
546
+
547
+ // Spinner sizes (width/height of the circle)
548
+ $spinner-size-small: 28px;
549
+ $spinner-size-medium: 48px;
550
+ $spinner-size-large: 96px;
551
+
552
+ // Spinner border widths
553
+ $spinner-border-small: 3px;
554
+ $spinner-border-medium: 5px;
555
+ $spinner-border-large: 10px;
556
+
557
+ // Spinner label font sizes
558
+ $spinner-label-font-size-medium: 12px;
559
+ $spinner-label-font-size-large: 24px;
560
+
561
+ // Spinner label margin (space between indicator and label)
562
+ $spinner-label-margin-top: 10px;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Utility Classes
3
+ *
4
+ * Single-purpose utility classes for common patterns.
5
+ * All utilities are prefixed with 'aux-' to avoid collision with consuming projects.
6
+ */
7
+
8
+ /*
9
+ * Hide only visually, but have it available for screen readers:
10
+ * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
11
+ *
12
+ * 1. For long content, line feeds are not interpreted as spaces and small width
13
+ * causes content to wrap 1 word per line:
14
+ * https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
15
+ */
16
+
17
+ .aux-visually-hidden,
18
+ .aux-sr-only {
19
+ border: 0;
20
+ clip: rect(0, 0, 0, 0);
21
+ height: 1px;
22
+ margin: -1px;
23
+ overflow: hidden;
24
+ padding: 0;
25
+ position: absolute;
26
+ white-space: nowrap;
27
+ width: 1px;
28
+ /* 1 */
29
+ }
30
+
31
+ /*
32
+ * Extends the .aux-visually-hidden class to allow the element
33
+ * to be focusable when navigated to via the keyboard:
34
+ */
35
+
36
+ .aux-visually-hidden.focusable:active,
37
+ .aux-visually-hidden.focusable:focus,
38
+ .aux-sr-only.focusable:active,
39
+ .aux-sr-only.focusable:focus {
40
+ clip: auto;
41
+ height: auto;
42
+ margin: 0;
43
+ overflow: visible;
44
+ position: static;
45
+ white-space: inherit;
46
+ width: auto;
47
+ }
48
+
49
+ /**
50
+ * Truncates text with ellipsis when it overflows its container.
51
+ * Requires a defined width or max-width on the element or its parent.
52
+ *
53
+ * Example: Long labels in dropdowns, tag text, button text
54
+ */
55
+ .aux-truncate {
56
+ overflow: hidden;
57
+ text-overflow: ellipsis;
58
+ white-space: nowrap;
59
+ }