@kaizen/components 1.79.6 → 1.79.8

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 (99) hide show
  1. package/dist/cjs/alpha.cjs +4 -0
  2. package/dist/cjs/src/Button/Button/Button.cjs +5 -0
  3. package/dist/cjs/src/Button/IconButton/IconButton.cjs +5 -0
  4. package/dist/cjs/src/LikertScaleLegacy/LikertScaleLegacy.cjs +3 -0
  5. package/dist/cjs/src/Modal/GenericModal/GenericModal.cjs +11 -1
  6. package/dist/cjs/src/Skirt/Skirt.cjs +3 -0
  7. package/dist/cjs/src/Skirt/subcomponents/SkirtCard/SkirtCard.cjs +4 -0
  8. package/dist/cjs/src/SplitButton/SplitButton.cjs +2 -0
  9. package/dist/cjs/src/TitleBlockZen/TitleBlockZen.cjs +3 -0
  10. package/dist/cjs/src/__alpha__/SingleSelect/SingleSelect.cjs +32 -0
  11. package/dist/cjs/src/__alpha__/SingleSelect/SingleSelect.module.css.cjs +6 -0
  12. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/List/List.cjs +24 -0
  13. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/List/List.module.css.cjs +6 -0
  14. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/ListItem/ListItem.cjs +24 -0
  15. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/ListItem/ListItem.module.css.cjs +6 -0
  16. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/ListSection/ListSection.cjs +25 -0
  17. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/ListSection/ListSection.module.css.cjs +6 -0
  18. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/Trigger/Trigger.cjs +21 -0
  19. package/dist/cjs/src/__alpha__/SingleSelect/subcomponents/Trigger/Trigger.module.css.cjs +6 -0
  20. package/dist/esm/alpha.mjs +1 -0
  21. package/dist/esm/src/Button/Button/Button.mjs +5 -0
  22. package/dist/esm/src/Button/IconButton/IconButton.mjs +5 -0
  23. package/dist/esm/src/LikertScaleLegacy/LikertScaleLegacy.mjs +3 -0
  24. package/dist/esm/src/Modal/GenericModal/GenericModal.mjs +11 -1
  25. package/dist/esm/src/Skirt/Skirt.mjs +3 -0
  26. package/dist/esm/src/Skirt/subcomponents/SkirtCard/SkirtCard.mjs +4 -0
  27. package/dist/esm/src/SplitButton/SplitButton.mjs +2 -0
  28. package/dist/esm/src/TitleBlockZen/TitleBlockZen.mjs +3 -0
  29. package/dist/esm/src/__alpha__/SingleSelect/SingleSelect.mjs +27 -0
  30. package/dist/esm/src/__alpha__/SingleSelect/SingleSelect.module.css.mjs +4 -0
  31. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/List/List.mjs +18 -0
  32. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/List/List.module.css.mjs +4 -0
  33. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/ListItem/ListItem.mjs +18 -0
  34. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/ListItem/ListItem.module.css.mjs +4 -0
  35. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/ListSection/ListSection.mjs +19 -0
  36. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/ListSection/ListSection.module.css.mjs +4 -0
  37. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/Trigger/Trigger.mjs +13 -0
  38. package/dist/esm/src/__alpha__/SingleSelect/subcomponents/Trigger/Trigger.module.css.mjs +4 -0
  39. package/dist/styles.css +57 -0
  40. package/dist/types/Button/Button/Button.d.ts +5 -0
  41. package/dist/types/Button/IconButton/IconButton.d.ts +5 -0
  42. package/dist/types/LikertScaleLegacy/LikertScaleLegacy.d.ts +3 -0
  43. package/dist/types/Skirt/Skirt.d.ts +3 -0
  44. package/dist/types/Skirt/subcomponents/SkirtCard/SkirtCard.d.ts +3 -0
  45. package/dist/types/SplitButton/SplitButton.d.ts +2 -0
  46. package/dist/types/TitleBlockZen/TitleBlockZen.d.ts +3 -0
  47. package/dist/types/__alpha__/SingleSelect/SingleSelect.d.ts +23 -0
  48. package/dist/types/__alpha__/SingleSelect/_docs/mockData.d.ts +59 -0
  49. package/dist/types/__alpha__/SingleSelect/index.d.ts +1 -0
  50. package/dist/types/__alpha__/SingleSelect/subcomponents/List/List.d.ts +6 -0
  51. package/dist/types/__alpha__/SingleSelect/subcomponents/List/index.d.ts +1 -0
  52. package/dist/types/__alpha__/SingleSelect/subcomponents/ListItem/ListItem.d.ts +6 -0
  53. package/dist/types/__alpha__/SingleSelect/subcomponents/ListItem/index.d.ts +1 -0
  54. package/dist/types/__alpha__/SingleSelect/subcomponents/ListSection/ListSection.d.ts +8 -0
  55. package/dist/types/__alpha__/SingleSelect/subcomponents/ListSection/index.d.ts +1 -0
  56. package/dist/types/__alpha__/SingleSelect/subcomponents/Trigger/Trigger.d.ts +1 -0
  57. package/dist/types/__alpha__/SingleSelect/subcomponents/Trigger/index.d.ts +1 -0
  58. package/dist/types/__alpha__/SingleSelect/subcomponents/index.d.ts +4 -0
  59. package/dist/types/__alpha__/index.d.ts +1 -0
  60. package/package.json +1 -1
  61. package/src/Button/Button/Button.tsx +5 -0
  62. package/src/Button/IconButton/IconButton.tsx +5 -0
  63. package/src/LikertScaleLegacy/LikertScaleLegacy.tsx +3 -0
  64. package/src/LikertScaleLegacy/_docs/LikertScaleLegacy.mdx +3 -2
  65. package/src/LikertScaleLegacy/_docs/LikertScaleLegacy.stickersheet.stories.tsx +1 -1
  66. package/src/LikertScaleLegacy/_docs/LikertScaleLegacy.stories.tsx +1 -1
  67. package/src/Modal/GenericModal/GenericModal.tsx +18 -1
  68. package/src/Skirt/Skirt.tsx +4 -0
  69. package/src/Skirt/_docs/Skirt.mdx +3 -1
  70. package/src/Skirt/_docs/Skirt.stories.tsx +1 -1
  71. package/src/Skirt/subcomponents/SkirtCard/SkirtCard.tsx +4 -0
  72. package/src/SplitButton/SplitButton.tsx +2 -0
  73. package/src/SplitButton/_docs/SplitButton.mdx +3 -1
  74. package/src/SplitButton/_docs/SplitButton.stickersheet.stories.tsx +1 -1
  75. package/src/SplitButton/_docs/SplitButton.stories.tsx +1 -1
  76. package/src/TitleBlockZen/TitleBlockZen.tsx +3 -0
  77. package/src/TitleBlockZen/_docs/TitleBlockZen.mdx +3 -2
  78. package/src/__alpha__/SingleSelect/SingleSelect.module.css +9 -0
  79. package/src/__alpha__/SingleSelect/SingleSelect.spec.tsx +26 -0
  80. package/src/__alpha__/SingleSelect/SingleSelect.tsx +27 -0
  81. package/src/__alpha__/SingleSelect/_docs/SingleSelect.mdx +27 -0
  82. package/src/__alpha__/SingleSelect/_docs/SingleSelect.stickersheet.stories.tsx +83 -0
  83. package/src/__alpha__/SingleSelect/_docs/SingleSelect.stories.tsx +23 -0
  84. package/src/__alpha__/SingleSelect/_docs/mockData.ts +92 -0
  85. package/src/__alpha__/SingleSelect/index.ts +1 -0
  86. package/src/__alpha__/SingleSelect/subcomponents/List/List.module.css +7 -0
  87. package/src/__alpha__/SingleSelect/subcomponents/List/List.tsx +17 -0
  88. package/src/__alpha__/SingleSelect/subcomponents/List/index.ts +1 -0
  89. package/src/__alpha__/SingleSelect/subcomponents/ListItem/ListItem.module.css +9 -0
  90. package/src/__alpha__/SingleSelect/subcomponents/ListItem/ListItem.tsx +17 -0
  91. package/src/__alpha__/SingleSelect/subcomponents/ListItem/index.ts +1 -0
  92. package/src/__alpha__/SingleSelect/subcomponents/ListSection/ListSection.module.css +9 -0
  93. package/src/__alpha__/SingleSelect/subcomponents/ListSection/ListSection.tsx +23 -0
  94. package/src/__alpha__/SingleSelect/subcomponents/ListSection/index.ts +1 -0
  95. package/src/__alpha__/SingleSelect/subcomponents/Trigger/Trigger.module.css +18 -0
  96. package/src/__alpha__/SingleSelect/subcomponents/Trigger/Trigger.tsx +13 -0
  97. package/src/__alpha__/SingleSelect/subcomponents/Trigger/index.ts +1 -0
  98. package/src/__alpha__/SingleSelect/subcomponents/index.ts +4 -0
  99. package/src/__alpha__/index.ts +1 -0
package/dist/styles.css CHANGED
@@ -1,4 +1,61 @@
1
1
  @layer tokens, normalize, reset, kz-components;@layer tokens{:root{--theme-key:heart;--animation-easing-function-ease-in-out:cubic-bezier(0.455,0.03,0.515,0.955);--animation-easing-function-ease-in:cubic-bezier(0.55,0.085,0.68,0.53);--animation-easing-function-ease-out:cubic-bezier(0.25,0.46,0.45,0.94);--animation-easing-function-linear:linear;--animation-easing-function-bounce-in:cubic-bezier(0.485,0.155,0.24,1.245);--animation-easing-function-bounce-out:cubic-bezier(0.485,0.155,0.515,0.845);--animation-easing-function-bounce-in-out:cubic-bezier(0.76,-0.245,0.24,1.245);--animation-duration-instant:0ms;--animation-duration-immediate:100ms;--animation-duration-rapid:200ms;--animation-duration-fast:300ms;--animation-duration-slow:400ms;--animation-duration-deliberate:700ms;--border-solid-border-width:2px;--border-solid-border-radius:7px;--border-solid-border-style:solid;--border-solid-border-color:#e1e2ea;--border-solid-border-color-rgb:225,226,234;--border-dashed-border-width:2px;--border-dashed-border-radius:7px;--border-dashed-border-style:dashed;--border-borderless-border-width:2px;--border-borderless-border-radius:7px;--border-borderless-border-style:solid;--border-borderless-border-color:transparent;--border-borderless-border-color-rgb:0,0,0;--border-focus-ring-border-width:2px;--border-focus-ring-border-radius:10px;--border-focus-ring-border-style:solid;--border-width-1:1px;--color-purple-100:#f4edf8;--color-purple-100-rgb:244,237,248;--color-purple-200:#dfc9ea;--color-purple-200-rgb:223,201,234;--color-purple-300:#c9a5dd;--color-purple-300-rgb:201,165,221;--color-purple-400:#ae67b1;--color-purple-400-rgb:174,103,177;--color-purple-500:#844587;--color-purple-500-rgb:132,69,135;--color-purple-600:#5f3361;--color-purple-600-rgb:95,51,97;--color-purple-700:#4a234d;--color-purple-700-rgb:74,35,77;--color-purple-800:#2f2438;--color-purple-800-rgb:47,36,56;--color-blue-100:#e6f6ff;--color-blue-100-rgb:230,246,255;--color-blue-200:#bde2f5;--color-blue-200-rgb:189,226,245;--color-blue-300:#73c0e8;--color-blue-300-rgb:115,192,232;--color-blue-400:#008bd6;--color-blue-400-rgb:0,139,214;--color-blue-500:#0168b3;--color-blue-500-rgb:1,104,179;--color-blue-600:#004970;--color-blue-600-rgb:0,73,112;--color-blue-700:#003157;--color-blue-700-rgb:0,49,87;--color-green-100:#e8f8f4;--color-green-100-rgb:232,248,244;--color-green-200:#c4ede2;--color-green-200-rgb:196,237,226;--color-green-300:#8fdbc7;--color-green-300-rgb:143,219,199;--color-green-400:#5dcaad;--color-green-400-rgb:93,202,173;--color-green-500:#3f9a86;--color-green-500-rgb:63,154,134;--color-green-600:#2c7d67;--color-green-600-rgb:44,125,103;--color-green-700:#22594a;--color-green-700-rgb:34,89,74;--color-yellow-100:#fff9e4;--color-yellow-100-rgb:255,249,228;--color-yellow-200:#ffeeb3;--color-yellow-200-rgb:255,238,179;--color-yellow-300:#ffe36e;--color-yellow-300-rgb:255,227,110;--color-yellow-400:#ffca4d;--color-yellow-400-rgb:255,202,77;--color-yellow-500:#ffb600;--color-yellow-500-rgb:255,182,0;--color-yellow-600:#c68600;--color-yellow-600-rgb:198,134,0;--color-yellow-700:#876400;--color-yellow-700-rgb:135,100,0;--color-red-100:#fdeaee;--color-red-100-rgb:253,234,238;--color-red-200:#f9c2cb;--color-red-200-rgb:249,194,203;--color-red-300:#f597a8;--color-red-300-rgb:245,151,168;--color-red-400:#e0707d;--color-red-400-rgb:224,112,125;--color-red-500:#c93b55;--color-red-500-rgb:201,59,85;--color-red-600:#a82433;--color-red-600-rgb:168,36,51;--color-red-700:#6c1e20;--color-red-700-rgb:108,30,32;--color-orange-100:#fff0e8;--color-orange-100-rgb:255,240,232;--color-orange-200:#ffd1b9;--color-orange-200-rgb:255,209,185;--color-orange-300:#ffb08a;--color-orange-300-rgb:255,176,138;--color-orange-400:#ff9461;--color-orange-400-rgb:255,148,97;--color-orange-500:#e96c2f;--color-orange-500-rgb:233,108,47;--color-orange-600:#b74302;--color-orange-600-rgb:183,67,2;--color-orange-700:#903c00;--color-orange-700-rgb:144,60,0;--color-gray-100:#f9f9f9;--color-gray-100-rgb:249,249,249;--color-gray-200:#f4f4f5;--color-gray-200-rgb:244,244,245;--color-gray-300:#eaeaec;--color-gray-300-rgb:234,234,236;--color-gray-400:#cdcdd0;--color-gray-400-rgb:205,205,208;--color-gray-500:#878792;--color-gray-500-rgb:135,135,146;--color-gray-600:#524e56;--color-gray-600-rgb:82,78,86;--color-white:#fff;--color-white-rgb:255,255,255;--color-black:#000;--color-black-rgb:0,0,0;--data-viz-favorable:#7dd5bd;--data-viz-favorable-rgb:125,213,189;--data-viz-unfavorable:#e68d97;--data-viz-unfavorable-rgb:230,141,151;--layout-content-max-width:1392px;--layout-content-max-width-with-sidebar:1080px;--layout-content-side-margin:72px;--layout-mobile-actions-drawer-height:60px;--layout-navigation-bar-height:72px;--layout-breakpoints-medium:768px;--layout-breakpoints-large:1080px;--shadow-small-box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 3px 16px 0 rgba(0,0,0,.06);--shadow-large-box-shadow:0 3px 9px 0 rgba(0,0,0,.1),0 8px 40px 0 rgba(0,0,0,.08);--spacing-0:0;--spacing-1:.0625rem;--spacing-2:.125rem;--spacing-4:.25rem;--spacing-6:.375rem;--spacing-8:.5rem;--spacing-12:.75rem;--spacing-16:1rem;--spacing-20:1.25rem;--spacing-24:1.5rem;--spacing-32:2rem;--spacing-40:2.5rem;--spacing-48:3rem;--spacing-56:3.5rem;--spacing-64:4rem;--spacing-72:4.5rem;--spacing-80:5rem;--spacing-96:6rem;--spacing-112:7rem;--spacing-128:8rem;--spacing-160:10rem;--spacing-200:12.5rem;--spacing-240:15rem;--spacing-280:17.5rem;--spacing-320:20rem;--spacing-xs:0.375rem;--spacing-sm:0.75rem;--spacing-md:1.5rem;--spacing-lg:2.25rem;--spacing-xl:3rem;--spacing-xxl:3.75rem;--spacing-xxxl:4.5rem;--spacing-xxxxl:5.25rem;--spacing-xxxxxl:6rem;--typography-data-large-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-large-font-weight:700;--typography-data-large-font-size:5.25rem;--typography-data-large-line-height:5.25rem;--typography-data-large-letter-spacing:normal;--typography-data-large-units-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-large-units-font-weight:700;--typography-data-large-units-font-size:2.625rem;--typography-data-large-units-line-height:5.25rem;--typography-data-large-units-letter-spacing:normal;--typography-data-medium-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-medium-font-weight:700;--typography-data-medium-font-size:3rem;--typography-data-medium-line-height:5rem;--typography-data-medium-letter-spacing:normal;--typography-data-medium-units-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-medium-units-font-weight:700;--typography-data-medium-units-font-size:1.5rem;--typography-data-medium-units-line-height:5rem;--typography-data-medium-units-letter-spacing:normal;--typography-data-small-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-small-font-weight:700;--typography-data-small-font-size:1.5rem;--typography-data-small-line-height:1.5rem;--typography-data-small-letter-spacing:normal;--typography-data-small-units-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-small-units-font-weight:700;--typography-data-small-units-font-size:1.125rem;--typography-data-small-units-line-height:1.5rem;--typography-data-small-units-letter-spacing:normal;--typography-display-0-font-family:"Tiempos Headline",Georgia,serif;--typography-display-0-font-weight:800;--typography-display-0-font-size:4.5rem;--typography-display-0-line-height:5.25rem;--typography-display-0-letter-spacing:0em;--typography-heading-1-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-1-font-weight:500;--typography-heading-1-font-size:2.125rem;--typography-heading-1-line-height:2.625rem;--typography-heading-1-letter-spacing:normal;--typography-heading-2-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-2-font-weight:600;--typography-heading-2-font-size:1.75rem;--typography-heading-2-line-height:2.25rem;--typography-heading-2-letter-spacing:normal;--typography-heading-3-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-3-font-weight:600;--typography-heading-3-font-size:1.375rem;--typography-heading-3-line-height:1.875rem;--typography-heading-3-letter-spacing:normal;--typography-heading-4-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-4-font-weight:600;--typography-heading-4-font-size:1.125rem;--typography-heading-4-line-height:1.5rem;--typography-heading-4-letter-spacing:normal;--typography-heading-5-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-5-font-weight:600;--typography-heading-5-font-size:1rem;--typography-heading-5-line-height:1.5rem;--typography-heading-5-letter-spacing:normal;--typography-heading-6-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-6-font-weight:600;--typography-heading-6-font-size:0.875rem;--typography-heading-6-line-height:1.5rem;--typography-heading-6-letter-spacing:normal;--typography-paragraph-intro-lede-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-intro-lede-font-weight:400;--typography-paragraph-intro-lede-font-size:1.25rem;--typography-paragraph-intro-lede-line-height:1.875rem;--typography-paragraph-intro-lede-letter-spacing:0;--typography-paragraph-intro-lede-max-width:975px;--typography-paragraph-body-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-body-font-weight:400;--typography-paragraph-body-font-size:1rem;--typography-paragraph-body-line-height:1.5rem;--typography-paragraph-body-letter-spacing:normal;--typography-paragraph-body-max-width:780px;--typography-paragraph-small-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-small-font-weight:400;--typography-paragraph-small-font-size:0.875rem;--typography-paragraph-small-line-height:1.125rem;--typography-paragraph-small-letter-spacing:normal;--typography-paragraph-small-max-width:680px;--typography-paragraph-extra-small-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-extra-small-font-weight:400;--typography-paragraph-extra-small-font-size:0.75rem;--typography-paragraph-extra-small-line-height:1.125rem;--typography-paragraph-extra-small-letter-spacing:normal;--typography-paragraph-extra-small-max-width:600px;--typography-paragraph-bold-font-weight:600;--typography-button-primary-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-button-primary-font-weight:500;--typography-button-primary-font-size:1.125rem;--typography-button-primary-line-height:1.5rem;--typography-button-primary-letter-spacing:normal;--typography-button-secondary-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-button-secondary-font-weight:500;--typography-button-secondary-font-size:1rem;--typography-button-secondary-line-height:1.5rem;--typography-button-secondary-letter-spacing:normal}}@layer normalize{html{text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{appearance:auto}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{appearance:none}::-webkit-file-upload-button{appearance:auto;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}}@layer reset{@font-face{font-family:Tiempos Headline;font-weight:800;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-bold.woff)}@font-face{font-family:Tiempos Headline;font-weight:500;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-medium.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-medium.woff)}@font-face{font-family:Greycliff CF;font-weight:300;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-light.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:400;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-regular.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:500;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-medium.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:600;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-demi-bold.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:700;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-bold.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:800;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-extra-bold.woff) format("woff")}@font-face{font-family:Inter;font-weight:300;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-light.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-light.woff)}@font-face{font-family:Inter;font-weight:400;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-regular.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-regular.woff)}@font-face{font-family:Inter;font-weight:500;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-medium.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-medium.woff)}@font-face{font-family:Inter;font-weight:600;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-demi-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-demi-bold.woff)}@font-face{font-family:Inter;font-weight:700;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-bold.woff)}@font-face{font-family:Inter;font-weight:800;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-extra-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-extra-bold.woff)}@font-face{font-family:IBM Plex Mono;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/ibm-plex-mono/ibm-plex-mono-regular.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/ibm-plex-mono/ibm-plex-mono-regular.woff)}}@layer reset{*,:after,:before{border-color:var(--border-solid-border-color,"currentColor");border-style:solid;border-width:0}}
2
+ @layer kz-components {
3
+ .SingleSelect-module_popover__ZjL9n {
4
+ background-color: var(--color-white);
5
+ border-radius: var(--spacing-8);
6
+ padding: var(--spacing-8);
7
+ width: 200px;
8
+ box-shadow: var(--shadow-small-box-shadow);
9
+ }
10
+ }
11
+
12
+ @layer kz-components {
13
+ .ListSection-module_listSectionHeader__bptHg {
14
+ font-family: var(--typography-heading-5-font-family);
15
+ font-weight: var(--typography-heading-5-font-weight);
16
+ font-size: var(--typography-heading-5-font-size);
17
+ line-height: var(--typography-heading-5-line-height);
18
+ letter-spacing: var(--typography-heading-5-letter-spacing);
19
+ }
20
+ }
21
+
22
+ @layer kz-components {
23
+ .ListItem-module_listItem__xGr6A {
24
+ font-family: var(--typography-paragraph-body-font-family);
25
+ font-weight: var(--typography-paragraph-body-font-weight);
26
+ font-size: var(--typography-paragraph-body-font-size);
27
+ line-height: var(--typography-paragraph-body-line-height);
28
+ letter-spacing: var(--typography-paragraph-body-letter-spacing);
29
+ }
30
+ }
31
+
32
+ @layer kz-components {
33
+ .Trigger-module_button__giSqA {
34
+ display: flex;
35
+ align-items: center;
36
+ justify-content: space-between;
37
+ font-family: var(--typography-paragraph-body-font-family);
38
+ font-weight: var(--typography-paragraph-body-font-weight);
39
+ font-size: var(--typography-paragraph-body-font-size);
40
+ line-height: var(--typography-paragraph-body-line-height);
41
+ letter-spacing: var(--typography-paragraph-body-letter-spacing);
42
+ padding: var(--spacing-12);
43
+ min-height: var(--spacing-48);
44
+ min-width: var(--spacing-200);
45
+ background-color: var(--color-white);
46
+ border-radius: var(--spacing-8);
47
+ border: 1px solid var(--color-gray-500);
48
+ }
49
+ }
50
+
51
+ @layer kz-components {
52
+ .List-module_list__bbFPn {
53
+ display: flex;
54
+ flex-direction: column;
55
+ gap: var(--spacing-16);
56
+ }
57
+ }
58
+
2
59
  @layer kz-components {
3
60
  /*
4
61
  * This is taken from the Material Symbols CDN
@@ -2,6 +2,11 @@ import React from 'react';
2
2
  import { type ButtonRef, type GenericButtonProps } from '../GenericButton';
3
3
  export type ButtonProps = GenericButtonProps;
4
4
  /**
5
+ * @deprecated This component will be replaced by the next Button component in v2.
6
+ * Use `@kaizen/components/next` Button instead.
7
+ * Migration guide: {@link https://cultureamp.design/?path=/docs/components-button-migration-guide--docs}
8
+ * Codemod available: `upgradeV1Buttons`
9
+ *
5
10
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3062890984/Button Guidance} |
6
11
  * {@link https://cultureamp.design/?path=/docs/components-buttons-button--docs Storybook}
7
12
  */
@@ -2,6 +2,11 @@ import React from 'react';
2
2
  import { type BaseButtonProps, type ButtonRef, type WorkingButtonProps } from '../GenericButton';
3
3
  export type IconButtonProps = Omit<BaseButtonProps, 'iconPosition'> & WorkingButtonProps;
4
4
  /**
5
+ * @deprecated This component will be replaced by the next Button component in v2.
6
+ * Use `@kaizen/components/next` Button instead.
7
+ * Migration guide: {@link https://cultureamp.design/?path=/docs/components-button-migration-guide--docs}
8
+ * Codemod available: `upgradeV1Buttons`
9
+ *
5
10
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3062890984/Button Guidance} |
6
11
  * {@link https://cultureamp.design/?path=/docs/components-iconbutton--docs Storybook}
7
12
  */
@@ -19,6 +19,9 @@ export type LikertScaleProps = {
19
19
  'onSelect': (value: ScaleItem | null) => void;
20
20
  };
21
21
  /**
22
+ * @deprecated This component will be renamed to LikertScale in v2.
23
+ * Start importing as LikertScale instead.
24
+ *
22
25
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3082060201/Likert+Scale Guidance} |
23
26
  * {@link https://cultureamp.design/?path=/docs/components-likertscalelegacy--docs Storybook}
24
27
  */
@@ -6,6 +6,9 @@ export type SkirtProps = {
6
6
  variant?: Variant;
7
7
  titleBlockHasNavigation?: boolean;
8
8
  } & ContentProps;
9
+ /**
10
+ * @deprecated This component will be removed in v2. Please remove any usages.
11
+ */
9
12
  export declare const Skirt: {
10
13
  ({ children, variant, titleBlockHasNavigation, classNameOverride, ...restProps }: SkirtProps): JSX.Element;
11
14
  displayName: string;
@@ -1,5 +1,8 @@
1
1
  import { type CardProps } from "../../../Card";
2
2
  export type SkirtCardProps = CardProps;
3
+ /**
4
+ * @deprecated This component will be removed in v2. Use a regular Card component instead.
5
+ */
3
6
  export declare const SkirtCard: {
4
7
  (props: SkirtCardProps): JSX.Element;
5
8
  displayName: string;
@@ -36,6 +36,8 @@ export type SplitButtonProps = {
36
36
  dir?: 'ltr' | 'rtl';
37
37
  } & OverrideClassName<HTMLAttributes<HTMLDivElement>>;
38
38
  /**
39
+ * @deprecated This component will be removed in v2. Use a Button and Menu component instead.
40
+ *
39
41
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3081896196/Split+Button Guidance} |
40
42
  * {@link https://cultureamp.design/storybook/?path=/docs/components-splitbutton--docs Storybook}
41
43
  */
@@ -1,5 +1,8 @@
1
1
  import { type TitleBlockProps } from './types';
2
2
  /**
3
+ * @deprecated This component will be renamed to TitleBlock in v2.
4
+ * Start importing as TitleBlock instead.
5
+ *
3
6
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3075605782/Title+Block Guidance} |
4
7
  * {@link https://cultureamp.design/?path=/story/components-titleblock--docs Storybook}
5
8
  */
@@ -0,0 +1,23 @@
1
+ import React, { type HTMLAttributes, type PropsWithChildren } from 'react';
2
+ import { type OverrideClassName } from "../../types/OverrideClassName";
3
+ export type SingleSelectProps = {
4
+ children?: React.ReactNode;
5
+ } & OverrideClassName<HTMLAttributes<Element>>;
6
+ export declare const SingleSelect: {
7
+ ({ classNameOverride, children, ...restProps }: PropsWithChildren<SingleSelectProps>): JSX.Element;
8
+ displayName: string;
9
+ List: {
10
+ ({ children, className, ...props }: import("react-aria-components").ListBoxProps<object> & PropsWithChildren): React.ReactElement;
11
+ displayName: string;
12
+ };
13
+ ListItem: {
14
+ ({ children, className, ...props }: import("react-aria-components").ListBoxItemProps<object> & PropsWithChildren): React.ReactElement;
15
+ displayName: string;
16
+ };
17
+ ListSection: {
18
+ ({ name, className, children, ...props }: import("react-aria-components").ListBoxSectionProps<object> & PropsWithChildren & {
19
+ name: string;
20
+ }): React.ReactElement;
21
+ displayName: string;
22
+ };
23
+ };
@@ -0,0 +1,59 @@
1
+ export declare const singleMockItems: {
2
+ label: string;
3
+ value: string;
4
+ }[];
5
+ export declare const groupedMockItems: {
6
+ label: string;
7
+ options: {
8
+ label: string;
9
+ value: string;
10
+ }[];
11
+ }[];
12
+ export declare const mixedMockItemsDisabled: ({
13
+ label: string;
14
+ value: string;
15
+ disabled: boolean;
16
+ options?: undefined;
17
+ } | {
18
+ label: string;
19
+ value: string;
20
+ disabled?: undefined;
21
+ options?: undefined;
22
+ } | {
23
+ label: string;
24
+ options: ({
25
+ label: string;
26
+ value: string;
27
+ disabled?: undefined;
28
+ } | {
29
+ label: string;
30
+ value: string;
31
+ disabled: boolean;
32
+ })[];
33
+ value?: undefined;
34
+ disabled?: undefined;
35
+ })[];
36
+ export declare const mixedMockItemsUngroupedFirst: ({
37
+ label: string;
38
+ value: string;
39
+ options?: undefined;
40
+ } | {
41
+ label: string;
42
+ options: {
43
+ label: string;
44
+ value: string;
45
+ }[];
46
+ value?: undefined;
47
+ })[];
48
+ export declare const mixedMockItemsUnordered: ({
49
+ label: string;
50
+ options: {
51
+ label: string;
52
+ value: string;
53
+ }[];
54
+ value?: undefined;
55
+ } | {
56
+ label: string;
57
+ value: string;
58
+ options?: undefined;
59
+ })[];
@@ -0,0 +1 @@
1
+ export * from './SingleSelect';
@@ -0,0 +1,6 @@
1
+ import React, { type PropsWithChildren } from 'react';
2
+ import { type ListBoxProps } from 'react-aria-components';
3
+ export declare const List: {
4
+ ({ children, className, ...props }: ListBoxProps<object> & PropsWithChildren): React.ReactElement;
5
+ displayName: string;
6
+ };
@@ -0,0 +1 @@
1
+ export * from './List';
@@ -0,0 +1,6 @@
1
+ import React, { type PropsWithChildren } from 'react';
2
+ import { type ListBoxItemProps } from 'react-aria-components';
3
+ export declare const ListItem: {
4
+ ({ children, className, ...props }: ListBoxItemProps<object> & PropsWithChildren): React.ReactElement;
5
+ displayName: string;
6
+ };
@@ -0,0 +1 @@
1
+ export * from './ListItem';
@@ -0,0 +1,8 @@
1
+ import React, { type PropsWithChildren } from 'react';
2
+ import { type ListBoxSectionProps } from 'react-aria-components';
3
+ export declare const ListSection: {
4
+ ({ name, className, children, ...props }: ListBoxSectionProps<object> & PropsWithChildren & {
5
+ name: string;
6
+ }): React.ReactElement;
7
+ displayName: string;
8
+ };
@@ -0,0 +1 @@
1
+ export * from './ListSection';
@@ -0,0 +1 @@
1
+ export declare const Trigger: () => JSX.Element;
@@ -0,0 +1 @@
1
+ export * from './Trigger';
@@ -0,0 +1,4 @@
1
+ export * from './List';
2
+ export * from './ListSection';
3
+ export * from './ListItem';
4
+ export * from './Trigger';
@@ -0,0 +1 @@
1
+ export * from './SingleSelect';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kaizen/components",
3
- "version": "1.79.6",
3
+ "version": "1.79.8",
4
4
  "description": "Kaizen component library",
5
5
  "author": "Geoffrey Chong <geoff.chong@cultureamp.com>",
6
6
  "homepage": "https://cultureamp.design",
@@ -5,6 +5,11 @@ import { GenericButton, type ButtonRef, type GenericButtonProps } from '../Gener
5
5
  export type ButtonProps = GenericButtonProps
6
6
 
7
7
  /**
8
+ * @deprecated This component will be replaced by the next Button component in v2.
9
+ * Use `@kaizen/components/next` Button instead.
10
+ * Migration guide: {@link https://cultureamp.design/?path=/docs/components-button-migration-guide--docs}
11
+ * Codemod available: `upgradeV1Buttons`
12
+ *
8
13
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3062890984/Button Guidance} |
9
14
  * {@link https://cultureamp.design/?path=/docs/components-buttons-button--docs Storybook}
10
15
  */
@@ -9,6 +9,11 @@ import {
9
9
  export type IconButtonProps = Omit<BaseButtonProps, 'iconPosition'> & WorkingButtonProps
10
10
 
11
11
  /**
12
+ * @deprecated This component will be replaced by the next Button component in v2.
13
+ * Use `@kaizen/components/next` Button instead.
14
+ * Migration guide: {@link https://cultureamp.design/?path=/docs/components-button-migration-guide--docs}
15
+ * Codemod available: `upgradeV1Buttons`
16
+ *
12
17
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3062890984/Button Guidance} |
13
18
  * {@link https://cultureamp.design/?path=/docs/components-iconbutton--docs Storybook}
14
19
  */
@@ -37,6 +37,9 @@ const SelectedItemIcon = (): JSX.Element => (
37
37
  )
38
38
 
39
39
  /**
40
+ * @deprecated This component will be renamed to LikertScale in v2.
41
+ * Start importing as LikertScale instead.
42
+ *
40
43
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3082060201/Likert+Scale Guidance} |
41
44
  * {@link https://cultureamp.design/?path=/docs/components-likertscalelegacy--docs Storybook}
42
45
  */
@@ -1,5 +1,5 @@
1
1
  import { Canvas, Controls, Meta } from '@storybook/blocks'
2
- import { ResourceLinks, KAIOInstallation } from '~storybook/components'
2
+ import { ResourceLinks, KAIOInstallation, RenameNotice } from '~storybook/components'
3
3
  import * as LikertScaleLegacyStories from './LikertScaleLegacy.stories'
4
4
 
5
5
  <Meta of={LikertScaleLegacyStories} />
@@ -10,9 +10,10 @@ import * as LikertScaleLegacyStories from './LikertScaleLegacy.stories'
10
10
  sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/LikertScaleLegacy"
11
11
  figma="https://www.figma.com/file/ZRfnoNUXbGZv4eVWLbF4Az/%EF%B8%8F%F0%9F%96%BC%EF%B8%8F-Component-Gallery?node-id=9%3A39905&t=P1w10jr2cpPuaayw-1"
12
12
  designGuidelines="https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3082060201/Likert+Scale"
13
-
14
13
  />
15
14
 
15
+ <RenameNotice />
16
+
16
17
  <KAIOInstallation exportNames="LikertScaleLegacy" />
17
18
 
18
19
  ## Overview
@@ -5,7 +5,7 @@ import { LikertScaleLegacy, type LikertScaleProps } from '../index'
5
5
  import { type Scale } from '../types'
6
6
 
7
7
  export default {
8
- title: 'Components/LikertScaleLegacy',
8
+ title: 'Components/LikertScaleLegacy (deprecated)',
9
9
  parameters: {
10
10
  chromatic: { disable: false },
11
11
  controls: { disable: true },
@@ -33,7 +33,7 @@ const scale: Scale = [
33
33
  ]
34
34
 
35
35
  const meta = {
36
- title: 'Components/LikertScaleLegacy',
36
+ title: 'Components/LikertScaleLegacy (deprecated)',
37
37
  component: LikertScaleLegacy,
38
38
  args: {
39
39
  scale,
@@ -3,6 +3,7 @@ import { createPortal } from 'react-dom'
3
3
  import { Transition } from '@headlessui/react'
4
4
  import classnames from 'classnames'
5
5
  import FocusLock from 'react-focus-lock'
6
+ import { useIsClientReady } from '../../utils/useIsClientReady'
6
7
  import { warn } from '../util/console'
7
8
  import { ModalContext } from './context/ModalContext'
8
9
  import styles from './GenericModal.module.scss'
@@ -38,6 +39,8 @@ export const GenericModal = ({
38
39
  const labelledByID = useId()
39
40
  const describedByID = useId()
40
41
 
42
+ const isClientReady = useIsClientReady()
43
+
41
44
  const [scrollLayer, setScrollLayer] = useState<HTMLDivElement | null>(null)
42
45
  const [modalLayer, setModalLayer] = useState<HTMLDivElement | null>(null)
43
46
 
@@ -58,6 +61,8 @@ export const GenericModal = ({
58
61
  }
59
62
 
60
63
  const focusOnAccessibleLabel = (): void => {
64
+ if (!isClientReady) return
65
+
61
66
  // Check if focus already exists within the modal
62
67
  if (modalLayer?.contains(document.activeElement)) {
63
68
  return
@@ -69,6 +74,8 @@ export const GenericModal = ({
69
74
  }
70
75
 
71
76
  const a11yWarn = (): void => {
77
+ if (!isClientReady) return
78
+
72
79
  // Ensure that consumers have provided an element that labels the modal
73
80
  // to meet ARIA accessibility guidelines.
74
81
  if (!document.getElementById(labelledByID)) {
@@ -80,6 +87,8 @@ export const GenericModal = ({
80
87
  }
81
88
 
82
89
  const preventBodyScroll = (): void => {
90
+ if (!isClientReady) return
91
+
83
92
  const hasScrollbar = window.innerWidth > document.documentElement.clientWidth
84
93
  const scrollStyles = [styles.unscrollable]
85
94
 
@@ -111,12 +120,14 @@ export const GenericModal = ({
111
120
  const onBeforeEnterHandler = (): void => {
112
121
  preventBodyScroll()
113
122
 
114
- if (onEscapeKeyup) {
123
+ if (onEscapeKeyup && isClientReady) {
115
124
  document.addEventListener('keyup', escapeKeyHandler)
116
125
  }
117
126
  }
118
127
 
119
128
  const cleanUpAfterClose = (): void => {
129
+ if (!isClientReady) return
130
+
120
131
  document.documentElement.classList.remove(styles.unscrollable, styles.pseudoScrollbar)
121
132
 
122
133
  if (onEscapeKeyup) {
@@ -133,6 +144,12 @@ export const GenericModal = ({
133
144
  cleanUpAfterClose()
134
145
  propsOnAfterLeave?.()
135
146
  }
147
+
148
+ // Don't render portal during SSR
149
+ if (!isClientReady) {
150
+ return <></>
151
+ }
152
+
136
153
  return createPortal(
137
154
  <Transition
138
155
  appear={true}
@@ -17,6 +17,10 @@ export type SkirtProps = {
17
17
  titleBlockHasNavigation?: boolean
18
18
  } & ContentProps
19
19
 
20
+ /**
21
+ * @deprecated This component will be removed in v2. Please remove any usages.
22
+ */
23
+
20
24
  export const Skirt = ({
21
25
  children,
22
26
  variant = 'default',
@@ -1,5 +1,5 @@
1
1
  import { Canvas, Controls, Meta } from '@storybook/blocks'
2
- import { ResourceLinks, KAIOInstallation } from '~storybook/components'
2
+ import { ResourceLinks, KAIOInstallation, RemovalNotice } from '~storybook/components'
3
3
  import * as SkirtStories from './Skirt.stories'
4
4
 
5
5
  <Meta of={SkirtStories} />
@@ -13,6 +13,8 @@ import * as SkirtStories from './Skirt.stories'
13
13
 
14
14
  />
15
15
 
16
+ <RemovalNotice />
17
+
16
18
  <KAIOInstallation exportNames={['Skirt', 'SkirtCard']} />
17
19
 
18
20
  ## Overview
@@ -5,7 +5,7 @@ import { Skirt } from '../index'
5
5
  import { SkirtCard } from '../subcomponents/SkirtCard'
6
6
 
7
7
  const meta = {
8
- title: 'Components/Skirt',
8
+ title: 'Components/Skirt (deprecated)',
9
9
  component: Skirt,
10
10
  args: {
11
11
  children: (
@@ -5,6 +5,10 @@ import styles from './SkirtCard.module.scss'
5
5
 
6
6
  export type SkirtCardProps = CardProps
7
7
 
8
+ /**
9
+ * @deprecated This component will be removed in v2. Use a regular Card component instead.
10
+ */
11
+
8
12
  export const SkirtCard = (props: SkirtCardProps): JSX.Element => {
9
13
  const { classNameOverride, ...restProps } = props
10
14
  return <Card classNameOverride={classnames(styles.wrapper, classNameOverride)} {...restProps} />
@@ -41,6 +41,8 @@ export type SplitButtonProps = {
41
41
  } & OverrideClassName<HTMLAttributes<HTMLDivElement>>
42
42
 
43
43
  /**
44
+ * @deprecated This component will be removed in v2. Use a Button and Menu component instead.
45
+ *
44
46
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3081896196/Split+Button Guidance} |
45
47
  * {@link https://cultureamp.design/storybook/?path=/docs/components-splitbutton--docs Storybook}
46
48
  */
@@ -1,5 +1,5 @@
1
1
  import { Canvas, Controls, DocsStory, Meta } from '@storybook/blocks'
2
- import { ResourceLinks, KAIOInstallation, LinkTo } from '~storybook/components'
2
+ import { ResourceLinks, KAIOInstallation, LinkTo, RemovalNotice } from '~storybook/components'
3
3
  import * as SplitButtonStories from './SplitButton.stories'
4
4
 
5
5
  <Meta of={SplitButtonStories} />
@@ -13,6 +13,8 @@ import * as SplitButtonStories from './SplitButton.stories'
13
13
 
14
14
  />
15
15
 
16
+ <RemovalNotice />
17
+
16
18
  <KAIOInstallation exportNames="SplitButton" />
17
19
 
18
20
  ## Overview
@@ -9,7 +9,7 @@ import { StickerSheet, type StickerSheetStory } from '~storybook/components/Stic
9
9
  import { SplitButton, type SplitButtonProps } from '../index'
10
10
 
11
11
  export default {
12
- title: 'Components/SplitButton',
12
+ title: 'Components/SplitButton (deprecated)',
13
13
  parameters: {
14
14
  chromatic: { disable: false },
15
15
  controls: { disable: true },
@@ -8,7 +8,7 @@ import {
8
8
  import { SplitButton } from '../index'
9
9
 
10
10
  const meta = {
11
- title: 'Components/SplitButton',
11
+ title: 'Components/SplitButton (deprecated)',
12
12
  component: SplitButton,
13
13
  argTypes: {
14
14
  actionButtonProps: {
@@ -228,6 +228,9 @@ const renderNavigationTabs = (
228
228
  )
229
229
 
230
230
  /**
231
+ * @deprecated This component will be renamed to TitleBlock in v2.
232
+ * Start importing as TitleBlock instead.
233
+ *
231
234
  * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3075605782/Title+Block Guidance} |
232
235
  * {@link https://cultureamp.design/?path=/story/components-titleblock--docs Storybook}
233
236
  */
@@ -1,5 +1,5 @@
1
1
  import { Canvas, Meta } from '@storybook/blocks'
2
- import { ResourceLinks, KAIOInstallation } from '~storybook/components'
2
+ import { ResourceLinks, KAIOInstallation, RenameNotice } from '~storybook/components'
3
3
  import * as TitleBlockZenStories from './TitleBlockZen.stories'
4
4
 
5
5
  <Meta of={TitleBlockZenStories} />
@@ -9,9 +9,10 @@ import * as TitleBlockZenStories from './TitleBlockZen.stories'
9
9
  <ResourceLinks
10
10
  sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/TitleBlockZen"
11
11
  designGuidelines="https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3075605782/Title+Block"
12
-
13
12
  />
14
13
 
14
+ <RenameNotice />
15
+
15
16
  <KAIOInstallation exportNames="TitleBlockZen" />
16
17
 
17
18
  ## Overview
@@ -0,0 +1,9 @@
1
+ @layer kz-components {
2
+ .popover {
3
+ background-color: var(--color-white);
4
+ border-radius: var(--spacing-8);
5
+ padding: var(--spacing-8);
6
+ width: 200px;
7
+ box-shadow: var(--shadow-small-box-shadow);
8
+ }
9
+ }
@@ -0,0 +1,26 @@
1
+ import React from 'react'
2
+ import { render } from '@testing-library/react'
3
+ import { SingleSelect } from './SingleSelect'
4
+ import { singleMockItems } from './_docs/mockData'
5
+
6
+ const SingleSelectWrapper = (): JSX.Element => (
7
+ <SingleSelect>
8
+ <SingleSelect.List>
9
+ {singleMockItems.map((item) => (
10
+ <SingleSelect.ListItem key={item.value} value={{ value: item.value }}>
11
+ {item.label}
12
+ </SingleSelect.ListItem>
13
+ ))}
14
+ </SingleSelect.List>
15
+ </SingleSelect>
16
+ )
17
+
18
+ describe('<SingleSelect />', () => {
19
+ describe('renders', () => {
20
+ it('a basic select component', () => {
21
+ const { getByRole } = render(<SingleSelectWrapper />)
22
+ const select = getByRole('button')
23
+ expect(select).toBeInTheDocument()
24
+ })
25
+ })
26
+ })