@orange-halo/components 1.0.0 → 2.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 (82) hide show
  1. package/custom-elements.json +3182 -73
  2. package/dist/base.js +3 -3
  3. package/dist/index.d.ts +6 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +4 -0
  6. package/dist/index.js.map +1 -1
  7. package/dist/oh-accordion.js +33 -33
  8. package/dist/oh-alert.js +26 -26
  9. package/dist/oh-badge.js +11 -11
  10. package/dist/oh-breadcrumb.js +20 -20
  11. package/dist/oh-button.d.ts +7 -1
  12. package/dist/oh-button.d.ts.map +1 -1
  13. package/dist/oh-button.js +118 -89
  14. package/dist/oh-button.js.map +1 -1
  15. package/dist/oh-card.d.ts.map +1 -1
  16. package/dist/oh-card.js +38 -66
  17. package/dist/oh-card.js.map +1 -1
  18. package/dist/oh-checkbox-group.d.ts +8 -0
  19. package/dist/oh-checkbox-group.d.ts.map +1 -1
  20. package/dist/oh-checkbox-group.figma.js +1 -1
  21. package/dist/oh-checkbox-group.figma.js.map +1 -1
  22. package/dist/oh-checkbox-group.js +40 -26
  23. package/dist/oh-checkbox-group.js.map +1 -1
  24. package/dist/oh-checkbox.d.ts +11 -2
  25. package/dist/oh-checkbox.d.ts.map +1 -1
  26. package/dist/oh-checkbox.js +44 -28
  27. package/dist/oh-checkbox.js.map +1 -1
  28. package/dist/oh-container.d.ts +5 -5
  29. package/dist/oh-container.js +15 -15
  30. package/dist/oh-drawer.d.ts +7 -2
  31. package/dist/oh-drawer.d.ts.map +1 -1
  32. package/dist/oh-drawer.js +52 -25
  33. package/dist/oh-drawer.js.map +1 -1
  34. package/dist/oh-footer.d.ts +5 -0
  35. package/dist/oh-footer.d.ts.map +1 -1
  36. package/dist/oh-footer.js +9 -4
  37. package/dist/oh-footer.js.map +1 -1
  38. package/dist/oh-hero.d.ts +5 -0
  39. package/dist/oh-hero.d.ts.map +1 -1
  40. package/dist/oh-hero.js +55 -51
  41. package/dist/oh-hero.js.map +1 -1
  42. package/dist/oh-icon.js +9 -9
  43. package/dist/oh-input.d.ts +11 -3
  44. package/dist/oh-input.d.ts.map +1 -1
  45. package/dist/oh-input.figma.js +2 -2
  46. package/dist/oh-input.figma.js.map +1 -1
  47. package/dist/oh-input.js +49 -37
  48. package/dist/oh-input.js.map +1 -1
  49. package/dist/oh-link.d.ts +1 -1
  50. package/dist/oh-link.js +35 -35
  51. package/dist/oh-modal.d.ts +10 -4
  52. package/dist/oh-modal.d.ts.map +1 -1
  53. package/dist/oh-modal.js +75 -72
  54. package/dist/oh-modal.js.map +1 -1
  55. package/dist/oh-navbar.d.ts.map +1 -1
  56. package/dist/oh-navbar.js +4 -5
  57. package/dist/oh-navbar.js.map +1 -1
  58. package/dist/oh-progress.d.ts.map +1 -1
  59. package/dist/oh-progress.js +21 -35
  60. package/dist/oh-progress.js.map +1 -1
  61. package/dist/oh-radio-group.d.ts +8 -0
  62. package/dist/oh-radio-group.d.ts.map +1 -1
  63. package/dist/oh-radio-group.js +40 -26
  64. package/dist/oh-radio-group.js.map +1 -1
  65. package/dist/oh-radio.d.ts +10 -1
  66. package/dist/oh-radio.d.ts.map +1 -1
  67. package/dist/oh-radio.js +44 -28
  68. package/dist/oh-radio.js.map +1 -1
  69. package/dist/oh-select.d.ts +10 -2
  70. package/dist/oh-select.d.ts.map +1 -1
  71. package/dist/oh-select.js +51 -32
  72. package/dist/oh-select.js.map +1 -1
  73. package/dist/oh-skip-link.d.ts.map +1 -1
  74. package/dist/oh-skip-link.js +15 -14
  75. package/dist/oh-skip-link.js.map +1 -1
  76. package/dist/oh-tabs.js +15 -15
  77. package/dist/oh-toggle.d.ts +5 -2
  78. package/dist/oh-toggle.d.ts.map +1 -1
  79. package/dist/oh-toggle.js +18 -20
  80. package/dist/oh-toggle.js.map +1 -1
  81. package/dist/styles/typography.js +50 -50
  82. package/package.json +15 -4
package/dist/base.js CHANGED
@@ -22,9 +22,9 @@ export const baseStyles = css `
22
22
 
23
23
  /* Focus ring for keyboard navigation */
24
24
  :host(:focus-visible) {
25
- outline: var(--oh-focus-ring-width, 2px) solid
26
- var(--oh-focus-ring-color, #c54300);
27
- outline-offset: var(--oh-focus-ring-offset, 2px);
25
+ outline: var(--oh-focus-ring-width) solid
26
+ var(--oh-focus-ring-color);
27
+ outline-offset: var(--oh-focus-ring-offset);
28
28
  }
29
29
 
30
30
  /* Hide focus ring for mouse users */
package/dist/index.d.ts CHANGED
@@ -26,6 +26,7 @@ import "./oh-link.js";
26
26
  import "./oh-modal.js";
27
27
  import "./oh-navbar.js";
28
28
  import "./oh-progress.js";
29
+ import "./oh-radio.js";
29
30
  import "./oh-radio-group.js";
30
31
  import "./oh-select.js";
31
32
  import "./oh-skip-link.js";
@@ -53,10 +54,13 @@ export type { ClusterGap, ClusterJustify, ClusterAlign } from "./oh-cluster.js";
53
54
  export { OhContainer } from "./oh-container.js";
54
55
  export type { ContainerSize } from "./oh-container.js";
55
56
  export { OhDrawer } from "./oh-drawer.js";
57
+ /** @deprecated Part of the Orange Halo brand: import from @orange-halo/brand-orange-halo. Removed from components in 3.0. */
56
58
  export { OhFooter } from "./oh-footer.js";
57
59
  export { OhGrid } from "./oh-grid.js";
58
60
  export type { GridColumns, GridGap } from "./oh-grid.js";
61
+ /** @deprecated Part of the Orange Halo brand: import from @orange-halo/brand-orange-halo. Removed from components in 3.0. */
59
62
  export { OhHero } from "./oh-hero.js";
63
+ /** @deprecated Part of the Orange Halo brand: import from @orange-halo/brand-orange-halo. Removed from components in 3.0. */
60
64
  export type { HeroVariant, HeroSize } from "./oh-hero.js";
61
65
  export { OhIcon } from "./oh-icon.js";
62
66
  export type { IconName, IconSize } from "./oh-icon.js";
@@ -69,6 +73,8 @@ export type { ModalSize } from "./oh-modal.js";
69
73
  export { OhNavbar } from "./oh-navbar.js";
70
74
  export { OhProgress } from "./oh-progress.js";
71
75
  export type { ProgressVariant, ProgressSize } from "./oh-progress.js";
76
+ export { OhRadio } from "./oh-radio.js";
77
+ export type { RadioState } from "./oh-radio.js";
72
78
  export { OhRadioGroup } from "./oh-radio-group.js";
73
79
  export type { RadioOption } from "./oh-radio-group.js";
74
80
  export { OhSelect } from "./oh-select.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -29,6 +29,7 @@ import "./oh-link.js";
29
29
  import "./oh-modal.js";
30
30
  import "./oh-navbar.js";
31
31
  import "./oh-progress.js";
32
+ import "./oh-radio.js";
32
33
  import "./oh-radio-group.js";
33
34
  import "./oh-select.js";
34
35
  import "./oh-skip-link.js";
@@ -52,8 +53,10 @@ export { OhCheckboxGroup } from "./oh-checkbox-group.js";
52
53
  export { OhCluster } from "./oh-cluster.js";
53
54
  export { OhContainer } from "./oh-container.js";
54
55
  export { OhDrawer } from "./oh-drawer.js";
56
+ /** @deprecated Part of the Orange Halo brand: import from @orange-halo/brand-orange-halo. Removed from components in 3.0. */
55
57
  export { OhFooter } from "./oh-footer.js";
56
58
  export { OhGrid } from "./oh-grid.js";
59
+ /** @deprecated Part of the Orange Halo brand: import from @orange-halo/brand-orange-halo. Removed from components in 3.0. */
57
60
  export { OhHero } from "./oh-hero.js";
58
61
  export { OhIcon } from "./oh-icon.js";
59
62
  export { OhInput } from "./oh-input.js";
@@ -61,6 +64,7 @@ export { OhLink } from "./oh-link.js";
61
64
  export { OhModal } from "./oh-modal.js";
62
65
  export { OhNavbar } from "./oh-navbar.js";
63
66
  export { OhProgress } from "./oh-progress.js";
67
+ export { OhRadio } from "./oh-radio.js";
64
68
  export { OhRadioGroup } from "./oh-radio-group.js";
65
69
  export { OhSelect } from "./oh-select.js";
66
70
  export { OhSkipLink } from "./oh-skip-link.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,gFAAgF;AAChF,kEAAkE;AAClE,gFAAgF;AAChF,OAAO,mBAAmB,CAAC;AAC3B,OAAO,eAAe,CAAC;AACvB,OAAO,eAAe,CAAC;AACvB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AACtB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,wBAAwB,CAAC;AAChC,OAAO,iBAAiB,CAAC;AACzB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,gBAAgB,CAAC;AACxB,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AACtB,OAAO,cAAc,CAAC;AACtB,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,gBAAgB,CAAC;AACxB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,gBAAgB,CAAC;AACxB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,eAAe,CAAC;AACvB,OAAO,cAAc,CAAC;AACtB,OAAO,gBAAgB,CAAC;AAExB,gFAAgF;AAChF,uEAAuE;AACvE,gFAAgF;AAEhF,OAAO;AACP,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAElD,kCAAkC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,SAAS;AACT,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,gFAAgF;AAChF,kEAAkE;AAClE,gFAAgF;AAChF,OAAO,mBAAmB,CAAC;AAC3B,OAAO,eAAe,CAAC;AACvB,OAAO,eAAe,CAAC;AACvB,OAAO,oBAAoB,CAAC;AAC5B,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AACtB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,wBAAwB,CAAC;AAChC,OAAO,iBAAiB,CAAC;AACzB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,gBAAgB,CAAC;AACxB,OAAO,gBAAgB,CAAC;AACxB,OAAO,cAAc,CAAC;AACtB,OAAO,cAAc,CAAC;AACtB,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,cAAc,CAAC;AACtB,OAAO,eAAe,CAAC;AACvB,OAAO,gBAAgB,CAAC;AACxB,OAAO,kBAAkB,CAAC;AAC1B,OAAO,eAAe,CAAC;AACvB,OAAO,qBAAqB,CAAC;AAC7B,OAAO,gBAAgB,CAAC;AACxB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,eAAe,CAAC;AACvB,OAAO,cAAc,CAAC;AACtB,OAAO,gBAAgB,CAAC;AAExB,gFAAgF;AAChF,uEAAuE;AACvE,gFAAgF;AAEhF,OAAO;AACP,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAElD,kCAAkC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,6HAA6H;AAC7H,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,6HAA6H;AAC7H,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG1C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,SAAS;AACT,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC"}
@@ -49,9 +49,9 @@ let OhAccordion = class OhAccordion extends OhElement {
49
49
 
50
50
  :host {
51
51
  display: block;
52
- font-family: var(--oh-font-family-sans);
53
- font-size: var(--oh-font-size-base);
54
- line-height: var(--oh-font-line-height-normal);
52
+ font-family: var(--oh-typography-body-font-family);
53
+ font-size: var(--oh-typography-body-base-font-size);
54
+ line-height: var(--oh-typography-body-base-line-height);
55
55
  }
56
56
 
57
57
  .accordion {
@@ -68,7 +68,7 @@ let OhAccordion = class OhAccordion extends OhElement {
68
68
  }
69
69
 
70
70
  .accordion--subtle .accordion-item {
71
- border-bottom: 1px solid var(--oh-color-border-subtle);
71
+ border-bottom: var(--oh-stroke-divider) solid var(--oh-color-border-subtle);
72
72
  }
73
73
 
74
74
  .accordion--subtle .accordion-item:last-child {
@@ -94,9 +94,9 @@ let OhAccordion = class OhAccordion extends OhElement {
94
94
  cursor: pointer;
95
95
  text-align: left;
96
96
 
97
- font-family: var(--oh-font-family-sans);
98
- font-size: var(--oh-font-size-base);
99
- font-weight: var(--oh-font-weight-medium);
97
+ font-family: var(--oh-typography-body-font-family);
98
+ font-size: var(--oh-typography-body-base-font-size);
99
+ font-weight: var(--oh-typography-label-base-font-weight);
100
100
  color: var(--oh-color-text-link);
101
101
  }
102
102
 
@@ -107,7 +107,7 @@ let OhAccordion = class OhAccordion extends OhElement {
107
107
  /* Text span with dashed underline — follows link rules */
108
108
  .accordion--subtle .accordion-text {
109
109
  position: relative;
110
- padding-bottom: 2px;
110
+ padding-bottom: var(--oh-decoration-underline-thickness);
111
111
  }
112
112
 
113
113
  .accordion--subtle .accordion-text::after {
@@ -116,18 +116,18 @@ let OhAccordion = class OhAccordion extends OhElement {
116
116
  left: 0;
117
117
  bottom: 0;
118
118
  width: 100%;
119
- height: 2px;
119
+ height: var(--oh-decoration-underline-thickness);
120
120
  background-image: repeating-linear-gradient(
121
121
  to right,
122
122
  var(--oh-color-text-link) 0,
123
- var(--oh-color-text-link) 4px,
124
- transparent 4px,
125
- transparent 8px
123
+ var(--oh-color-text-link) var(--oh-decoration-underline-dash),
124
+ transparent var(--oh-decoration-underline-dash),
125
+ transparent var(--oh-decoration-underline-period)
126
126
  );
127
127
  background-size: 100% 100%;
128
128
  background-repeat: no-repeat;
129
129
  transform-origin: right;
130
- transition: transform var(--oh-motion-relaxed, 300ms) var(--oh-motion-ease-gentle, ease);
130
+ transition: transform var(--oh-motion-relaxed) var(--oh-motion-ease-gentle);
131
131
  }
132
132
 
133
133
  .accordion--subtle .accordion-trigger:hover .accordion-text::after {
@@ -137,7 +137,7 @@ let OhAccordion = class OhAccordion extends OhElement {
137
137
  .accordion--subtle .accordion-trigger:focus-visible .accordion-text::after {
138
138
  background-image: none;
139
139
  background-color: var(--oh-color-brand-primary);
140
- height: 2px;
140
+ height: var(--oh-decoration-underline-thickness);
141
141
  transform: scaleX(1);
142
142
  }
143
143
 
@@ -156,21 +156,21 @@ let OhAccordion = class OhAccordion extends OhElement {
156
156
 
157
157
  .accordion--standout .accordion-item {
158
158
  background-color: var(--oh-color-surface-raised);
159
- border: var(--oh-input-base-border-width, 2.5px) solid var(--oh-color-border-emphasis);
160
- border-radius: var(--oh-radius-md);
159
+ border: var(--oh-stroke-control) solid var(--oh-color-border-emphasis);
160
+ border-radius: var(--oh-shape-container);
161
161
  overflow: hidden;
162
162
 
163
163
  /* Base shadow and lift animation */
164
- box-shadow: 3px 3px 0 0 rgba(107, 93, 77, 0.15);
164
+ box-shadow: var(--oh-elevation-offset-md) var(--oh-elevation-offset-md) 0 0 var(--oh-shadow-neutral);
165
165
  transition:
166
- transform var(--oh-motion-snappy, 150ms) var(--oh-motion-ease-playful, cubic-bezier(0.34, 1.56, 0.64, 1)),
167
- box-shadow var(--oh-motion-snappy, 150ms) var(--oh-motion-ease-playful, cubic-bezier(0.34, 1.56, 0.64, 1));
166
+ transform var(--oh-motion-snappy) var(--oh-motion-ease-playful),
167
+ box-shadow var(--oh-motion-snappy) var(--oh-motion-ease-playful);
168
168
  }
169
169
 
170
170
  /* Lift whole accordion only when trigger is hovered */
171
171
  .accordion--standout .accordion-item:has(.accordion-trigger:hover) {
172
- transform: translate(-2px, -2px);
173
- box-shadow: 5px 5px 0 0 rgba(107, 93, 77, 0.2);
172
+ transform: translate(var(--oh-lift-hover-md), var(--oh-lift-hover-md));
173
+ box-shadow: var(--oh-elevation-offset-xl) var(--oh-elevation-offset-xl) 0 0 var(--oh-shadow-neutral-hover);
174
174
  }
175
175
 
176
176
  .accordion--standout .accordion-item[data-expanded="true"] {
@@ -189,9 +189,9 @@ let OhAccordion = class OhAccordion extends OhElement {
189
189
  cursor: pointer;
190
190
  text-align: left;
191
191
 
192
- font-family: var(--oh-font-family-sans);
193
- font-size: var(--oh-font-size-base);
194
- font-weight: var(--oh-font-weight-semibold);
192
+ font-family: var(--oh-typography-body-font-family);
193
+ font-size: var(--oh-typography-body-base-font-size);
194
+ font-weight: var(--oh-typography-control-font-weight);
195
195
  color: var(--oh-color-text-primary);
196
196
  }
197
197
 
@@ -207,7 +207,7 @@ let OhAccordion = class OhAccordion extends OhElement {
207
207
  /* Text span for standout — dashed underline appears on hover */
208
208
  .accordion--standout .accordion-text {
209
209
  position: relative;
210
- padding-bottom: 2px;
210
+ padding-bottom: var(--oh-decoration-underline-thickness);
211
211
  }
212
212
 
213
213
  .accordion--standout .accordion-text::after {
@@ -216,19 +216,19 @@ let OhAccordion = class OhAccordion extends OhElement {
216
216
  left: 0;
217
217
  bottom: 0;
218
218
  width: 100%;
219
- height: 2px;
219
+ height: var(--oh-decoration-underline-thickness);
220
220
  background-image: repeating-linear-gradient(
221
221
  to right,
222
222
  var(--oh-color-text-primary) 0,
223
- var(--oh-color-text-primary) 4px,
224
- transparent 4px,
225
- transparent 8px
223
+ var(--oh-color-text-primary) var(--oh-decoration-underline-dash),
224
+ transparent var(--oh-decoration-underline-dash),
225
+ transparent var(--oh-decoration-underline-period)
226
226
  );
227
227
  background-size: 100% 100%;
228
228
  background-repeat: no-repeat;
229
229
  transform-origin: left;
230
230
  transform: scaleX(0);
231
- transition: transform var(--oh-motion-relaxed, 300ms) var(--oh-motion-ease-gentle, ease);
231
+ transition: transform var(--oh-motion-relaxed) var(--oh-motion-ease-gentle);
232
232
  }
233
233
 
234
234
  .accordion--standout .accordion-trigger:hover .accordion-text::after {
@@ -238,7 +238,7 @@ let OhAccordion = class OhAccordion extends OhElement {
238
238
  .accordion--standout .accordion-content {
239
239
  padding: var(--oh-spacing-4);
240
240
  color: var(--oh-color-text-primary);
241
- border-top: 1px solid var(--oh-color-border-subtle);
241
+ border-top: var(--oh-stroke-divider) solid var(--oh-color-border-subtle);
242
242
  }
243
243
 
244
244
  /* ═══════════════════════════════════════════════════════════════
@@ -249,7 +249,7 @@ let OhAccordion = class OhAccordion extends OhElement {
249
249
  flex-shrink: 0;
250
250
  width: 1rem;
251
251
  height: 1rem;
252
- transition: transform var(--oh-motion-gentle, 200ms) var(--oh-motion-ease-gentle, ease);
252
+ transition: transform var(--oh-motion-gentle) var(--oh-motion-ease-gentle);
253
253
  }
254
254
 
255
255
  .accordion--subtle .accordion-icon {
@@ -271,7 +271,7 @@ let OhAccordion = class OhAccordion extends OhElement {
271
271
  .accordion-panel {
272
272
  display: grid;
273
273
  grid-template-rows: 0fr;
274
- transition: grid-template-rows var(--oh-motion-gentle, 200ms) ease;
274
+ transition: grid-template-rows var(--oh-motion-gentle) ease;
275
275
  }
276
276
 
277
277
  .accordion-panel[data-expanded="true"] {
package/dist/oh-alert.js CHANGED
@@ -68,10 +68,10 @@ let OhAlert = class OhAlert extends OhElement {
68
68
 
69
69
  /* Shape */
70
70
  padding: var(--oh-spacing-4);
71
- border-radius: var(--oh-radius-md);
71
+ border-radius: var(--oh-shape-container);
72
72
 
73
73
  /* Chunky border like other components */
74
- border: var(--oh-input-base-border-width, 2.5px) solid;
74
+ border: var(--oh-stroke-control) solid;
75
75
  }
76
76
 
77
77
  /* ═══════════════════════════════════════════════════════════════
@@ -94,9 +94,9 @@ let OhAlert = class OhAlert extends OhElement {
94
94
  min-width: 0;
95
95
 
96
96
  /* Typography */
97
- font-family: var(--oh-font-family-sans);
98
- font-size: var(--oh-font-size-base);
99
- line-height: var(--oh-font-line-height-normal);
97
+ font-family: var(--oh-typography-body-font-family);
98
+ font-size: var(--oh-typography-body-base-font-size);
99
+ line-height: var(--oh-typography-body-base-line-height);
100
100
  }
101
101
 
102
102
  /*
@@ -104,24 +104,24 @@ let OhAlert = class OhAlert extends OhElement {
104
104
  * Uses background-image approach which works with ::slotted()
105
105
  */
106
106
  .alert-content ::slotted(a) {
107
- font-weight: var(--oh-font-weight-semibold);
107
+ font-weight: var(--oh-typography-emphasis-font-weight);
108
108
  text-decoration: none;
109
109
  background-image: repeating-linear-gradient(
110
110
  to right,
111
111
  currentColor 0,
112
- currentColor 4px,
113
- transparent 4px,
114
- transparent 8px
112
+ currentColor var(--oh-decoration-underline-dash),
113
+ transparent var(--oh-decoration-underline-dash),
114
+ transparent var(--oh-decoration-underline-period)
115
115
  );
116
- background-size: 100% 2px;
116
+ background-size: 100% var(--oh-decoration-underline-thickness);
117
117
  background-position: 0 100%;
118
118
  background-repeat: no-repeat;
119
- padding-bottom: 2px;
120
- transition: background-size var(--oh-motion-slow, 450ms) ease;
119
+ padding-bottom: var(--oh-decoration-underline-thickness);
120
+ transition: background-size var(--oh-motion-slow) ease;
121
121
  }
122
122
 
123
123
  .alert-content ::slotted(a:hover) {
124
- background-size: 0% 2px;
124
+ background-size: 0% var(--oh-decoration-underline-thickness);
125
125
  background-position: 100% 100%;
126
126
  }
127
127
 
@@ -130,7 +130,7 @@ let OhAlert = class OhAlert extends OhElement {
130
130
  outline-offset: 2px;
131
131
  border-radius: 2px;
132
132
  background-image: linear-gradient(currentColor, currentColor);
133
- background-size: 100% 2px;
133
+ background-size: 100% var(--oh-decoration-underline-thickness);
134
134
  }
135
135
 
136
136
  /* ═══════════════════════════════════════════════════════════════
@@ -146,13 +146,13 @@ let OhAlert = class OhAlert extends OhElement {
146
146
  padding: var(--oh-spacing-1) var(--oh-spacing-2);
147
147
  margin: -0.25rem -0.5rem -0.25rem 0;
148
148
 
149
- font-family: var(--oh-font-family-sans);
150
- font-size: var(--oh-font-size-base);
151
- font-weight: var(--oh-font-weight-medium);
149
+ font-family: var(--oh-typography-body-font-family);
150
+ font-size: var(--oh-typography-body-base-font-size);
151
+ font-weight: var(--oh-typography-label-base-font-weight);
152
152
 
153
153
  background: transparent;
154
154
  border: none;
155
- border-radius: var(--oh-radius-sm);
155
+ border-radius: var(--oh-shape-compact);
156
156
  cursor: pointer;
157
157
 
158
158
  /* Use primary text color for contrast */
@@ -160,20 +160,20 @@ let OhAlert = class OhAlert extends OhElement {
160
160
 
161
161
  /* Chunky animation setup */
162
162
  transition:
163
- transform var(--oh-motion-snappy, 150ms) var(--oh-motion-ease-playful, cubic-bezier(0.34, 1.56, 0.64, 1)),
164
- box-shadow var(--oh-motion-snappy, 150ms) var(--oh-motion-ease-playful, cubic-bezier(0.34, 1.56, 0.64, 1)),
165
- background-color var(--oh-motion-quick, 120ms) ease;
163
+ transform var(--oh-motion-snappy) var(--oh-motion-ease-playful),
164
+ box-shadow var(--oh-motion-snappy) var(--oh-motion-ease-playful),
165
+ background-color var(--oh-motion-quick) ease;
166
166
  }
167
167
 
168
168
  .alert-close:hover {
169
- background-color: rgba(0, 0, 0, 0.08);
170
- transform: translate(-2px, -2px);
171
- box-shadow: 4px 4px 0 0 rgba(0, 0, 0, 0.15);
169
+ background-color: var(--oh-close-button-background-hover);
170
+ transform: translate(var(--oh-lift-hover-md), var(--oh-lift-hover-md));
171
+ box-shadow: var(--oh-elevation-offset-lg) var(--oh-elevation-offset-lg) 0 0 var(--oh-close-button-shadow-hover);
172
172
  }
173
173
 
174
174
  .alert-close:active {
175
- transform: translate(1px, 1px);
176
- box-shadow: 1px 1px 0 0 rgba(0, 0, 0, 0.15);
175
+ transform: translate(var(--oh-lift-press-sm), var(--oh-lift-press-sm));
176
+ box-shadow: var(--oh-elevation-offset-xs) var(--oh-elevation-offset-xs) 0 0 var(--oh-close-button-shadow-hover);
177
177
  }
178
178
 
179
179
  .alert-close:focus-visible {
package/dist/oh-badge.js CHANGED
@@ -54,15 +54,15 @@ let OhBadge = class OhBadge extends OhElement {
54
54
  gap: var(--oh-spacing-1);
55
55
 
56
56
  /* Typography */
57
- font-family: var(--oh-font-family-sans);
58
- font-size: var(--oh-font-size-base);
59
- font-weight: var(--oh-font-weight-medium);
60
- line-height: var(--oh-font-line-height-tight, 1.25);
61
- letter-spacing: var(--oh-font-letter-spacing-wide);
57
+ font-family: var(--oh-typography-body-font-family);
58
+ font-size: var(--oh-typography-body-base-font-size);
59
+ font-weight: var(--oh-typography-label-base-font-weight);
60
+ line-height: var(--oh-typography-heading-h1-line-height);
61
+ letter-spacing: var(--oh-typography-control-letter-spacing);
62
62
 
63
63
  /* Shape */
64
64
  padding: var(--oh-spacing-1) var(--oh-spacing-2-5);
65
- border-radius: var(--oh-radius-sm);
65
+ border-radius: var(--oh-shape-compact);
66
66
 
67
67
  /* No interaction */
68
68
  pointer-events: none;
@@ -94,7 +94,7 @@ let OhBadge = class OhBadge extends OhElement {
94
94
  }
95
95
 
96
96
  .badge--subtle.badge--brand {
97
- background-color: var(--oh-color-brand-subtle);
97
+ background-color: var(--oh-color-brand-primary-subtle);
98
98
  color: var(--oh-color-brand-primary);
99
99
  }
100
100
 
@@ -109,22 +109,22 @@ let OhBadge = class OhBadge extends OhElement {
109
109
 
110
110
  .badge--filled.badge--success {
111
111
  background-color: var(--oh-color-feedback-success);
112
- color: var(--oh-color-surface-white);
112
+ color: var(--oh-color-text-on-success);
113
113
  }
114
114
 
115
115
  .badge--filled.badge--error {
116
116
  background-color: var(--oh-color-feedback-error);
117
- color: var(--oh-color-surface-white);
117
+ color: var(--oh-color-text-on-error);
118
118
  }
119
119
 
120
120
  .badge--filled.badge--warning {
121
121
  background-color: var(--oh-color-feedback-warning);
122
- color: var(--oh-color-surface-white);
122
+ color: var(--oh-color-text-on-warning);
123
123
  }
124
124
 
125
125
  .badge--filled.badge--info {
126
126
  background-color: var(--oh-color-feedback-info);
127
- color: var(--oh-color-surface-white);
127
+ color: var(--oh-color-text-on-info);
128
128
  }
129
129
 
130
130
  .badge--filled.badge--brand {
@@ -44,9 +44,9 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
44
44
 
45
45
  :host {
46
46
  display: block;
47
- font-family: var(--oh-font-family-sans);
48
- font-size: var(--oh-font-size-base);
49
- line-height: var(--oh-font-line-height-normal);
47
+ font-family: var(--oh-typography-body-font-family);
48
+ font-size: var(--oh-typography-body-base-font-size);
49
+ line-height: var(--oh-typography-body-base-line-height);
50
50
  }
51
51
 
52
52
  /* ═══════════════════════════════════════════════════════════════
@@ -87,7 +87,7 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
87
87
  display: inline-block;
88
88
  color: var(--oh-color-text-link);
89
89
  text-decoration: none;
90
- padding-bottom: 2px;
90
+ padding-bottom: var(--oh-decoration-underline-thickness);
91
91
  }
92
92
 
93
93
  .breadcrumb-link::after {
@@ -96,18 +96,18 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
96
96
  left: 0;
97
97
  bottom: 0;
98
98
  width: 100%;
99
- height: 2px;
99
+ height: var(--oh-decoration-underline-thickness);
100
100
  background-image: repeating-linear-gradient(
101
101
  to right,
102
102
  var(--oh-color-text-link) 0,
103
- var(--oh-color-text-link) 4px,
104
- transparent 4px,
105
- transparent 8px
103
+ var(--oh-color-text-link) var(--oh-decoration-underline-dash),
104
+ transparent var(--oh-decoration-underline-dash),
105
+ transparent var(--oh-decoration-underline-period)
106
106
  );
107
107
  background-size: 100% 100%;
108
108
  background-repeat: no-repeat;
109
109
  transform-origin: right;
110
- transition: transform var(--oh-motion-relaxed, 300ms) var(--oh-motion-ease-gentle, ease);
110
+ transition: transform var(--oh-motion-relaxed) var(--oh-motion-ease-gentle);
111
111
  }
112
112
 
113
113
  .breadcrumb-link:hover::after {
@@ -117,7 +117,7 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
117
117
  .breadcrumb-link:focus-visible {
118
118
  outline: none;
119
119
  background-color: var(--oh-color-surface-hover);
120
- border-radius: var(--oh-radius-xs);
120
+ border-radius: var(--oh-shape-tight);
121
121
  padding: 0 2px 2px 2px;
122
122
  margin: 0 -2px;
123
123
  }
@@ -125,7 +125,7 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
125
125
  .breadcrumb-link:focus-visible::after {
126
126
  background-image: none;
127
127
  background-color: var(--oh-color-brand-primary);
128
- height: 2px;
128
+ height: var(--oh-decoration-underline-thickness);
129
129
  transform: scaleX(1);
130
130
  }
131
131
 
@@ -135,7 +135,7 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
135
135
 
136
136
  .breadcrumb-current {
137
137
  color: var(--oh-color-text-primary);
138
- font-weight: var(--oh-font-weight-medium);
138
+ font-weight: var(--oh-typography-label-base-font-weight);
139
139
  }
140
140
 
141
141
  /* ═══════════════════════════════════════════════════════════════
@@ -153,7 +153,7 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
153
153
  gap: var(--oh-spacing-1);
154
154
  color: var(--oh-color-text-link);
155
155
  text-decoration: none;
156
- padding-bottom: 2px;
156
+ padding-bottom: var(--oh-decoration-underline-thickness);
157
157
  }
158
158
 
159
159
  .back-link::after {
@@ -162,18 +162,18 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
162
162
  left: 0;
163
163
  bottom: 0;
164
164
  width: 100%;
165
- height: 2px;
165
+ height: var(--oh-decoration-underline-thickness);
166
166
  background-image: repeating-linear-gradient(
167
167
  to right,
168
168
  var(--oh-color-text-link) 0,
169
- var(--oh-color-text-link) 4px,
170
- transparent 4px,
171
- transparent 8px
169
+ var(--oh-color-text-link) var(--oh-decoration-underline-dash),
170
+ transparent var(--oh-decoration-underline-dash),
171
+ transparent var(--oh-decoration-underline-period)
172
172
  );
173
173
  background-size: 100% 100%;
174
174
  background-repeat: no-repeat;
175
175
  transform-origin: right;
176
- transition: transform var(--oh-motion-relaxed, 300ms) var(--oh-motion-ease-gentle, ease);
176
+ transition: transform var(--oh-motion-relaxed) var(--oh-motion-ease-gentle);
177
177
  }
178
178
 
179
179
  .back-link:hover::after {
@@ -183,7 +183,7 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
183
183
  .back-link:focus-visible {
184
184
  outline: none;
185
185
  background-color: var(--oh-color-surface-hover);
186
- border-radius: var(--oh-radius-xs);
186
+ border-radius: var(--oh-shape-tight);
187
187
  padding: 0 2px 2px 2px;
188
188
  margin: 0 -2px;
189
189
  }
@@ -191,7 +191,7 @@ let OhBreadcrumb = class OhBreadcrumb extends OhElement {
191
191
  .back-link:focus-visible::after {
192
192
  background-image: none;
193
193
  background-color: var(--oh-color-brand-primary);
194
- height: 2px;
194
+ height: var(--oh-decoration-underline-thickness);
195
195
  transform: scaleX(1);
196
196
  }
197
197
 
@@ -7,7 +7,7 @@
7
7
  * DESIGN DECISIONS:
8
8
  * ─────────────────
9
9
  * 1. CHUNKY & CONFIDENT
10
- * - Thick border (2px) that feels illustrative
10
+ * - Thick border (stroke.control) that feels illustrative
11
11
  * - Solid fills, no subtle gradients
12
12
  * - Generous padding, substantial presence
13
13
  *
@@ -38,6 +38,12 @@ export declare class OhButton extends OhElement {
38
38
  size: ButtonSize;
39
39
  loading: boolean;
40
40
  iconOnly: boolean;
41
+ /**
42
+ * Accessible name for the inner button/anchor. Required for icon-only
43
+ * buttons. Use this, not aria-label: an aria-label on the host isn't
44
+ * forwarded into the shadow root.
45
+ */
46
+ accessibleLabel?: string;
41
47
  /**
42
48
  * Force a visual state (for documentation/Figma sync only)
43
49
  * Values: 'hover' | 'active' | 'focus'
@@ -1 +1 @@
1
- {"version":3,"file":"oh-button.d.ts","sourceRoot":"","sources":["../src/oh-button.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,EAAE,SAAS,EAAc,MAAM,WAAW,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAC/D,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC5C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEnE,qBACa,QAAS,SAAQ,SAAS;IACrC,OAAgB,MAAM,4BA8VpB;IAGF,OAAO,EAAE,aAAa,CAAa;IAGnC,IAAI,EAAE,UAAU,CAAQ;IAGxB,OAAO,UAAS;IAGhB,QAAQ,UAAS;IAEjB;;;OAGG;IAEH,UAAU,EAAE,WAAW,CAAa;IAEpC,kEAAkE;IAElE,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,uDAAuD;IAEvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,OAAO,CAAC,YAAY;IASpB,+CAA+C;IACtC,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY;IAKrC,8CAA8C;IACrC,IAAI;IAKb,MAAM;CA6CP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}
1
+ {"version":3,"file":"oh-button.d.ts","sourceRoot":"","sources":["../src/oh-button.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAIH,OAAO,EAAE,SAAS,EAAc,MAAM,WAAW,CAAC;AAElD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAC/D,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC5C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEnE,qBACa,QAAS,SAAQ,SAAS;IACrC,OAAgB,MAAM,4BA8WpB;IAGF,OAAO,EAAE,aAAa,CAAa;IAGnC,IAAI,EAAE,UAAU,CAAQ;IAGxB,OAAO,UAAS;IAGhB,QAAQ,UAAS;IAEjB;;;;OAIG;IAEH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IAEH,UAAU,EAAE,WAAW,CAAa;IAEpC,kEAAkE;IAElE,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,uDAAuD;IAEvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,OAAO,CAAC,YAAY;IASpB,+CAA+C;IACtC,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY;IAKrC,8CAA8C;IACrC,IAAI;IAKb,MAAM;CAuDP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,QAAQ,CAAC;KACvB;CACF"}