@kaizen/components 0.0.0-canary-introduce-next-entrypoint-20250225031042 → 0.0.0-canary-react-19-peer-20250303022312

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/bin/codemod.sh +2 -0
  2. package/codemods/README.md +46 -0
  3. package/codemods/upgradeV1Buttons/index.ts +19 -0
  4. package/codemods/upgradeV1Buttons/transformV1ButtonAttributes.spec.ts +210 -0
  5. package/codemods/upgradeV1Buttons/transformV1ButtonAttributes.ts +146 -0
  6. package/codemods/upgradeV1Buttons/upgradeV1Buttons.spec.ts +658 -0
  7. package/codemods/upgradeV1Buttons/upgradeV1Buttons.ts +93 -0
  8. package/codemods/utils/createJsxElementWithChildren.spec.ts +119 -0
  9. package/codemods/utils/createJsxElementWithChildren.ts +55 -0
  10. package/codemods/utils/createProp.spec.ts +75 -19
  11. package/codemods/utils/createProp.ts +8 -1
  12. package/codemods/utils/getKaioTagName.ts +13 -5
  13. package/codemods/utils/index.ts +1 -0
  14. package/dist/cjs/Calendar/CalendarPopover/CalendarPopover.cjs +38 -25
  15. package/dist/cjs/Focusable/Focusable.module.scss.cjs +6 -0
  16. package/dist/cjs/Link/Link.cjs +45 -0
  17. package/dist/cjs/Link/Link.module.css.cjs +20 -0
  18. package/dist/cjs/Link/subcomponents/LinkContent.cjs +34 -0
  19. package/dist/cjs/future.cjs +1 -1
  20. package/dist/cjs/index.cjs +4 -0
  21. package/dist/cjs/next.cjs +1 -1
  22. package/dist/cjs/overlaysV3.cjs +0 -2
  23. package/dist/cjs/utilitiesV3.cjs +4 -0
  24. package/dist/esm/Calendar/CalendarPopover/CalendarPopover.mjs +39 -26
  25. package/dist/esm/Focusable/Focusable.module.scss.mjs +4 -0
  26. package/dist/esm/Link/Link.mjs +40 -0
  27. package/dist/esm/Link/Link.module.css.mjs +18 -0
  28. package/dist/esm/Link/subcomponents/LinkContent.mjs +26 -0
  29. package/dist/esm/future.mjs +1 -1
  30. package/dist/esm/index.mjs +2 -0
  31. package/dist/esm/next.mjs +1 -1
  32. package/dist/esm/overlaysV3.mjs +0 -1
  33. package/dist/esm/utilitiesV3.mjs +2 -0
  34. package/dist/styles.css +8905 -8782
  35. package/dist/types/Link/Link.d.ts +39 -0
  36. package/dist/types/Link/index.d.ts +1 -0
  37. package/dist/types/Link/subcomponents/LinkContent.d.ts +8 -0
  38. package/dist/types/__next__/Tooltip/index.d.ts +0 -1
  39. package/dist/types/__next__/index.d.ts +1 -0
  40. package/dist/types/index.d.ts +2 -0
  41. package/package.json +3 -3
  42. package/src/Calendar/CalendarPopover/CalendarPopover.module.scss +8 -0
  43. package/src/Calendar/CalendarPopover/CalendarPopover.tsx +13 -2
  44. package/src/Calendar/CalendarPopover/_docs/CalendarPopover.stickersheet.stories.tsx +1 -55
  45. package/src/Calendar/CalendarRange/_docs/CalendarRange.stickersheet.stories.tsx +1 -1
  46. package/src/Calendar/CalendarRange/_docs/CalendarRange.stories.tsx +1 -1
  47. package/src/Calendar/CalendarSingle/_docs/CalendarSingle.stickersheet.stories.tsx +1 -1
  48. package/src/Calendar/CalendarSingle/_docs/CalendarSingle.stories.tsx +1 -1
  49. package/src/DatePicker/_docs/DatePicker.stickersheet.stories.tsx +1 -1
  50. package/src/DatePicker/_docs/DatePicker.stories.tsx +1 -1
  51. package/src/DatePicker/_docs/getLocale.stickersheet.stories.tsx +1 -1
  52. package/src/DateRangePicker/_docs/DateRangePicker.stickersheet.stories.tsx +1 -1
  53. package/src/DateRangePicker/_docs/DateRangePicker.stories.tsx +1 -1
  54. package/src/{__next__/Tooltip/subcomponents/Focusable → Focusable}/_docs/ApiSpecification.mdx +3 -3
  55. package/src/{__next__/Tooltip/subcomponents/Focusable → Focusable}/_docs/Focusable.stories.tsx +1 -1
  56. package/src/Icon/_docs/Icon.docs.stories.tsx +1 -1
  57. package/src/Icon/_docs/Icon.mdx +1 -1
  58. package/src/Icon/_docs/Icon.stickersheet.stories.tsx +1 -1
  59. package/src/Link/Link.module.css +119 -0
  60. package/src/Link/Link.tsx +90 -0
  61. package/src/Link/_docs/Link--api-specification.mdx +133 -0
  62. package/src/Link/_docs/Link--api-usage-guidelines.mdx +107 -0
  63. package/src/Link/_docs/Link.doc.stories.tsx +238 -0
  64. package/src/Link/_docs/Link.stickersheet.stories.tsx +191 -0
  65. package/src/Link/index.ts +1 -0
  66. package/src/Link/subcomponents/LinkContent.tsx +31 -0
  67. package/src/LinkButton/_docs/LinkButton--api-specification.mdx +1 -57
  68. package/src/Modal/GenericModal/_docs/GenericModal.spec.stories.tsx +1 -1
  69. package/src/Modal/GenericModal/_docs/GenericModal.stories.tsx +1 -1
  70. package/src/Tile/subcomponents/GenericTile/GenericTile.spec.stories.tsx +1 -1
  71. package/src/Tile/subcomponents/GenericTile/_docs/GenericTile.stickersheet.stories.tsx +1 -1
  72. package/src/TitleBlockZen/TitleBlockZen.module.scss +1 -6
  73. package/src/__next__/Button/_docs/Button--migration-guide.mdx +81 -0
  74. package/src/__next__/Icon/_docs/Icon--api-specification.mdx +1 -1
  75. package/src/__next__/Icon/_docs/Icon--usage-guidelines.mdx +1 -1
  76. package/src/__next__/Menu/_docs/Menu--api-specification.mdx +1 -1
  77. package/src/__next__/Menu/_docs/Menu--usage-guidelines.mdx +1 -1
  78. package/src/__next__/Select/_docs/Select.mdx +2 -2
  79. package/src/__next__/Select/_docs/Select.stickersheet.stories.tsx +1 -1
  80. package/src/__next__/Select/_docs/Select.stories.tsx +1 -1
  81. package/src/__next__/Tabs/_docs/Tabs--api-specification.mdx +1 -1
  82. package/src/__next__/Tag/RemovableTag/_docs/RemovableTag.mdx +1 -1
  83. package/src/__next__/Tooltip/_docs/ApiSpecification.mdx +1 -1
  84. package/src/__next__/Tooltip/_docs/Tooltip.docs.stories.tsx +2 -1
  85. package/src/__next__/Tooltip/_docs/Tooltip.mdx +1 -1
  86. package/src/__next__/Tooltip/_docs/Tooltip.spec.stories.tsx +2 -1
  87. package/src/__next__/Tooltip/_docs/Tooltip.stories.tsx +2 -1
  88. package/src/__next__/Tooltip/index.ts +0 -1
  89. package/src/__next__/index.ts +4 -0
  90. package/src/index.ts +2 -0
  91. package/dist/cjs/__next__/Tooltip/subcomponents/Focusable/Focusable.module.scss.cjs +0 -6
  92. package/dist/esm/__next__/Tooltip/subcomponents/Focusable/Focusable.module.scss.mjs +0 -4
  93. /package/dist/cjs/{__next__/Tooltip/subcomponents/Focusable → Focusable}/Focusable.cjs +0 -0
  94. /package/dist/esm/{__next__/Tooltip/subcomponents/Focusable → Focusable}/Focusable.mjs +0 -0
  95. /package/dist/types/{__next__/Tooltip/subcomponents/Focusable → Focusable}/Focusable.d.ts +0 -0
  96. /package/dist/types/{__next__/Tooltip/subcomponents/Focusable → Focusable}/index.d.ts +0 -0
  97. /package/src/{__next__/Tooltip/subcomponents/Focusable → Focusable}/Focusable.module.scss +0 -0
  98. /package/src/{__next__/Tooltip/subcomponents/Focusable → Focusable}/Focusable.tsx +0 -0
  99. /package/src/{__next__/Tooltip/subcomponents/Focusable → Focusable}/index.ts +0 -0
@@ -0,0 +1,31 @@
1
+ import React, { type ReactNode } from 'react'
2
+ import { mergeClassNames } from '~components/utils/mergeClassNames'
3
+ import styles from '../Link.module.css'
4
+
5
+ export type LinkContentProps = {
6
+ children: ReactNode
7
+ icon?: JSX.Element
8
+ iconPosition?: 'start' | 'end'
9
+ isUnderlined: boolean
10
+ }
11
+
12
+ const LinkIcon = ({ icon }: { icon: JSX.Element }): JSX.Element => (
13
+ <span className={styles.icon}>{icon}</span>
14
+ )
15
+
16
+ export const LinkContent = ({
17
+ children,
18
+ icon,
19
+ iconPosition,
20
+ isUnderlined,
21
+ }: LinkContentProps): JSX.Element => {
22
+ const iconPositionStyling = iconPosition === 'start' ? styles.iconStart : styles.iconEnd
23
+
24
+ return (
25
+ <span className={mergeClassNames(styles.linkContent, isUnderlined && styles.isUnderlined)}>
26
+ {icon && iconPosition === 'start' && <LinkIcon icon={icon} />}
27
+ <span className={mergeClassNames(icon && iconPositionStyling)}>{children}</span>
28
+ {icon && iconPosition === 'end' && <LinkIcon icon={icon} />}
29
+ </span>
30
+ )
31
+ }
@@ -163,63 +163,7 @@ For resizing on smaller screens, consider using the `className` prop to leverage
163
163
 
164
164
  ## Client side routing
165
165
 
166
- To enable client side routing with the `LinkButton`, you will need to wrap your application in a [RouterProvider](https://react-spectrum.adobe.com/react-aria/routing.html#routerprovider) from the `react-aria-components` library. The allows you to set the `navigation` method that performs the client side routing in the `LinkButton` component. Refer to the framework specific guidance below for [Next.js](#nextjs-config-example) or [React Router](#react-router-config-example).
167
-
168
- ### Next.js config example
169
-
170
- The following example demonstrates how you might use the React Aria's `RouterProvider` with `Next.js`'s Pages router. This will allow the `LinkButton` to navigate using the `router.push` method.
171
-
172
- ```tsx
173
- // ...imports
174
- import type { AppProps } from 'next/app'
175
- import { type NextRouter } from 'next/router'
176
- import { RouterProvider as RacRouterProvider } from 'react-aria-components'
177
-
178
- // This provides the correct types for `routerOptions` based on the routing solution. As the component agnostic to routing technology this must defined here
179
- declare module 'react-aria-components' {
180
- interface RouterConfig {
181
- // index 2 is the types for the pages routerOptions
182
- routerOptions: NonNullable<Parameters<NextRouter['push']>[2]>
183
- }
184
- }
185
-
186
- function App({ Component, pageProps, router }: AppProps) {
187
- return (
188
- <FrontendServices {...config}>
189
- {/* application code */}
190
- <RacRouterProvider navigate={(href, opts) => router.push(href, undefined, opts)}>
191
- <Component {...pageProps} />
192
- </RacRouterProvider>
193
- {/* application code */}
194
- </FrontendServices>
195
- )
196
- }
197
-
198
- export default App
199
- ```
200
-
201
- The implementation in your application would then look something like this:
202
-
203
- ```tsx
204
- import { useRouter } from 'next/router'
205
- import { LinkButton } from '@kaizen/components'
206
-
207
- const Component = () => {
208
- const router = useRouter()
209
-
210
- return (
211
- <>
212
- <LinkButton href="http://google.com">External link</LinkButton>
213
- <LinkButton href={`${router.pathname}/path-1`}>Internal link</LinkButton>
214
- <LinkButton href={`${router.pathname}/path-2`} routerOptions={{ scroll: false }}>
215
- Link with routerOptions
216
- </LinkButton>
217
- </>
218
- )
219
- }
220
- ```
221
-
222
- Additional config options for Next.js can be found in the React Aria's documentation on the [RouterProvider](https://react-spectrum.adobe.com/react-aria/routing.html#nextjs), including the alternative setup for the [App router](https://react-spectrum.adobe.com/react-aria/routing.html##app-router).
166
+ Please refer to the [client side routing](/docs/guides-client-side-routing--docs) for more information on how to set up client side routing with the `LinkButton`.
223
167
 
224
168
  ### React Router config example
225
169
 
@@ -6,7 +6,7 @@ import { expect, userEvent, waitFor, within } from '@storybook/test'
6
6
  import { GenericModal, ModalAccessibleLabel, ModalBody, ModalHeader } from '../index'
7
7
 
8
8
  const meta: Meta<typeof GenericModal> = {
9
- title: 'Components/Modals/GenericModal/Tests',
9
+ title: 'Components/Modals/GenericModal (primitive)/Tests',
10
10
  component: GenericModal,
11
11
  }
12
12
 
@@ -3,7 +3,7 @@ import { type Meta, type StoryObj } from '@storybook/react'
3
3
  import { GenericModal } from '../index'
4
4
 
5
5
  const meta = {
6
- title: 'Components/Modals/GenericModal',
6
+ title: 'Components/Modals/GenericModal (primitive)',
7
7
  component: GenericModal,
8
8
  args: {
9
9
  children: 'Example content',
@@ -4,7 +4,7 @@ import { expect, waitFor, within } from '@storybook/test'
4
4
  import { GenericTile } from './GenericTile'
5
5
 
6
6
  const meta: Meta<typeof GenericTile> = {
7
- title: 'Components/Tiles/GenericTile/Tests',
7
+ title: 'Components/Tiles/GenericTile (primitive)/Tests',
8
8
  component: GenericTile,
9
9
  args: {
10
10
  title: 'Title',
@@ -4,7 +4,7 @@ import { StickerSheet, type StickerSheetStory } from '~storybook/components/Stic
4
4
  import { GenericTile, type GenericTileProps } from '../index'
5
5
 
6
6
  export default {
7
- title: 'Components/Tiles/GenericTile',
7
+ title: 'Components/Tiles/GenericTile (primitive)',
8
8
  parameters: {
9
9
  chromatic: { disable: false },
10
10
  controls: { disable: true },
@@ -114,7 +114,6 @@ $tab-container-height-medium-and-small-collapsed: 0;
114
114
  display: flex;
115
115
  align-items: center;
116
116
  min-width: 0; // this is an important trick to prevent flexbox items from overflowing
117
- z-index: $ca-z-index-dropdown; // this ensures the page switcher dropdown sits over nav tabs
118
117
  transform: translateY(-0.0833em);
119
118
 
120
119
  .hasSubtitle & {
@@ -434,7 +433,7 @@ $tab-container-height-medium-and-small-collapsed: 0;
434
433
  width: $tab-container-height-small;
435
434
  height: $tab-container-height-small;
436
435
  background: linear-gradient(0deg, $color-purple-600, rgba($color-purple-600-rgb, 0));
437
- z-index: $ca-z-index-sticky;
436
+ z-index: 1;
438
437
  }
439
438
 
440
439
  .adminVariant & {
@@ -503,7 +502,6 @@ $tab-container-height-medium-and-small-collapsed: 0;
503
502
  cursor: pointer;
504
503
  display: flex;
505
504
  position: absolute;
506
- z-index: $ca-z-index-sticky;
507
505
  align-items: center;
508
506
  top: 50%;
509
507
  transform: translateY(-50%);
@@ -573,9 +571,6 @@ $tab-container-height-medium-and-small-collapsed: 0;
573
571
  // We are using visually hidden here instead of display:none so that a screen reader
574
572
  // navigating via 'read mode' (which doesn't trigger hover/focus) will still hear this link name
575
573
  @include visually-hidden;
576
-
577
- z-index: $ca-z-index-sticky - 1;
578
-
579
574
  @include ca-position($start: -2 * $ca-grid);
580
575
 
581
576
  position: absolute;
@@ -0,0 +1,81 @@
1
+ import { Canvas, Meta, Controls, Story } from '@storybook/blocks'
2
+ import { ResourceLinks, KAIOInstallation } from '~storybook/components'
3
+
4
+ <Meta title="Components/Button/Migration Guide" />
5
+
6
+ # Button Migration Guide (next)
7
+
8
+ This is a short guide to assist in migration from the old to new `Button` and `LinkButton` component.
9
+
10
+ ## Key API differences
11
+
12
+ Below is a list of notable changes when migrating to the new `Button` and `LinkButton` component:
13
+
14
+ - `label` is now handled as `Children` .
15
+ - Variants, such as `primary` and `secondary`, are now controlled as by the single `variant` prop and some values will be remapped in the codemod.
16
+ - `primary` `boolean` becomes `variant="primary"`.
17
+ - `secondary` `boolean` becomes `variant="tertiary"`.
18
+ - `destructive` `boolean` is removed and will default to the `primary` variant.
19
+ - `size` props have been adjusted to include `small`, `medium` and `large` and some values will be remapped in the codemod.
20
+ - `small` becomes `medium`
21
+ - `regular` becomes `large`
22
+ - `onClick` and other event handlers now reflect the RAC event ecosystems, ie: `onPress`.
23
+ - You can see more about the RAC event ecosystem [here](https://react-spectrum.adobe.com/react-aria/Button.html#events).
24
+ - `Button` and `LinkButton` now exist as separate components.
25
+ - The intent is to more closely align to the semantic roles of an anchor or button and should be used accordingly.
26
+ - `LinkButton` handles native navigation via `href` out of the box but additional config can be used to allow for client side routing - [see here](/docs/components-linkbutton-api-specification--docs#client-side-routing).
27
+ - `onPress` can still be used in place of `onClick` for pushing to routers and tracking events.
28
+ - `IconButton` has been superseded by icon props and the [icon-only pattern](/docs/components-button-button-next-api-specification--docs#icon-only-button-and-hashiddenlabel).
29
+ - `working`, `workingLabel` and `workingLabelHidden` has been updated to `isPending`, `pendingLabel` and `hasHiddenPendingLabel` to better reflect the state of the button.
30
+ - This is not available in the `LinkButton` component
31
+ - `badge` prop has been removed and should be handled within the `Children` where required.
32
+ - Reversed styles should be handled by the `ReversedColors` Provider but for ease of migration, the `isReversed` prop `boolean` exists.
33
+
34
+ ## Codemod
35
+
36
+ To assist in migration we have created the `upgradeV1Buttons` codemod.
37
+
38
+ This will loop through the given directory and update all instances of Button to the latest implementation. You can refer to this [README](https://github.com/cultureamp/kaizen-design-system/blob/main/packages/components/codemods/README.md#kaizen-codemods) on how to run kaizen codemods using the CLI within your repository, ie:
39
+
40
+ ```bash
41
+ pnpm kaizen-codemod src upgradeV1Buttons
42
+ ```
43
+
44
+ Note that there are cases where an props that no longer exist will be left in the codebase to throw type error and provide feedback to the engineer. This is intentional and identifies area's where manual updates are required.
45
+
46
+ ### Pre-requisites
47
+
48
+ It is also recommended that the `upgradeIconV1` codemod is run before `upgradeV1Buttons` to ensure that all icons are updated to the new `Icon` component that uses the Material icons CDN. There is likely to be a number of visual diffs in this migration so it is recommended to do this separately if viable. Seem more about this [here](/docs/components-icon-icon-future-api-specification--docs#set-up).
49
+
50
+ ### Codemod gotchas
51
+
52
+ If you're facing any issues not captured below, reach out to the [#help_design_system](https://cultureamp.slack.com/archives/C0189KBPM4Y) channel on Slack.
53
+
54
+ #### `icon` props and sizing
55
+
56
+ While the `icon` prop supports any `JSX` element, only the latest [Icon component](/docs/components-icon-icon-future-api-specification--docs) will be able to handle relative sizing and spacing automatically within the Button. We recommend running the `upgradeIconV1` codemod before this to convert all icons to the latest implementation. See the guidance here on using the [Material Icons CDN](/docs/guides-app-starter--docs#5-link-to-google-material-symbols-cdn).
57
+
58
+ #### `component` props type errors
59
+
60
+ Based off Metabase queries, `component` render props is used in consuming repositories to wrap Button content with a routing solution, such as NextJS's `Link` component. To ensure a safe migration, the codemod will update any usages to a `LinkButton` with the `component` prop still passed in. This will cause an intentional type error to provide feedback and make it easier to find in the codebase for a manual update. This should be able to be converted to use client side routing by following the [LinkButton API docs](https://cultureamp.design/?path=/docs/components-linkbutton-api-specification--docs).
61
+
62
+ #### `badge` props type errors
63
+
64
+ The codemod will continue to passed `badge` props into the new implementation so it will throw a type error and provide feedback to engineers. This will need to be manually composed within the `Children` if required, ie:
65
+
66
+ ```
67
+ import { Badge } from "@kaizen/components"
68
+ import { Button } from "@kaizen/components/next"
69
+
70
+ <Button>Label<Badge classNameOverride="ms-8" variant="success">New</Badge></Button>
71
+ ```
72
+
73
+ #### Link related props type errors
74
+
75
+ If no `href` or `component` props are passed to the component you may get type errors for having anchor related props passed into a Button, ie: `target`, `rel`.
76
+
77
+ This will cause a type error that can be corrected by either using the `LinkButton` (if intended) or removing all anchor related props as they should exist on semantic buttons.
78
+
79
+ ## More information
80
+
81
+ For more information on the about each of the new API's, we recommend referring the [Button](/docs/components-button-button-next-api-specification--docs) or [LinkButton](/docs/components-linkbutton-api-specification--docs) API specifications.
@@ -9,7 +9,7 @@ import * as IconStories from './Icon.docs.stories'
9
9
  Updated September 4, 2024
10
10
 
11
11
  <ResourceLinks
12
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__v2__/Icon"
12
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Icon"
13
13
  designGuidelines="/?path=/docs/illustrations-icon-v2-usage-guidelines--docs"
14
14
  />
15
15
 
@@ -9,7 +9,7 @@ import * as IconStories from './Icon.docs.stories'
9
9
  Updated September 13, 2024
10
10
 
11
11
  <ResourceLinks
12
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__illustrations__/Icon/next"
12
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Icon"
13
13
  apiSpecification="/?path=/docs/illustrations-icon-v3-api-specification--docs"
14
14
  figma="https://www.figma.com/design/eZKEE5kXbEMY3lx84oz8iN/%F0%9F%92%9C-Heart-UI-Kit?node-id=1929-3974"
15
15
  />
@@ -10,7 +10,7 @@ import * as exampleStories from './Menu.stories'
10
10
  Updated December 16, 2024
11
11
 
12
12
  <ResourceLinks
13
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__actions__/Menu"
13
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Menu"
14
14
  figma="https://www.figma.com/design/eZKEE5kXbEMY3lx84oz8iN/%F0%9F%92%9C-Heart-UI-Kit?m=auto&node-id=6262-0&t=I4H23jCrCJz4O2nf-1"
15
15
  designGuidelines="/?path=/docs/components-menu-menu-next-usage-guidelines--docs"
16
16
  ariaComponentPage="https://react-spectrum.adobe.com/react-aria/Menu.html"
@@ -10,7 +10,7 @@ import * as MenuStories from './Menu.stories'
10
10
  Updated July 6, 2024
11
11
 
12
12
  <ResourceLinks
13
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__actions__/Menu"
13
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Menu"
14
14
  figma="https://www.figma.com/design/eZKEE5kXbEMY3lx84oz8iN/%F0%9F%92%9C-Heart-UI-Kit?m=auto&node-id=6262-0&t=I4H23jCrCJz4O2nf-1"
15
15
  ariaComponentPage="https://react-spectrum.adobe.com/react-aria/Menu.html"
16
16
  apiSpecification="/?path=/docs/actions-menu-v3-api-specification--docs"
@@ -4,10 +4,10 @@ import * as SelectStories from './Select.stories'
4
4
 
5
5
  <Meta of={SelectStories} />
6
6
 
7
- # Select (future)
7
+ # Select (next)
8
8
 
9
9
  <ResourceLinks
10
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/Select"
10
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Select"
11
11
  figma="https://www.figma.com/file/ZRfnoNUXbGZv4eVWLbF4Az/%F0%9F%96%BC%EF%B8%8F-Component-Gallery?node-id=9%3A37837&mode=dev"
12
12
  designGuidelines="https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3081896474/Select"
13
13
 
@@ -14,7 +14,7 @@ import {
14
14
  const IS_CHROMATIC = isChromatic()
15
15
 
16
16
  export default {
17
- title: 'Components/Select/Select (future)',
17
+ title: 'Components/Select/Select (next)',
18
18
  parameters: {
19
19
  chromatic: { disable: false },
20
20
  controls: { disable: true },
@@ -7,7 +7,7 @@ import { type SelectOption } from '../types'
7
7
  import { groupedMockItems, mixedMockItemsDisabled, singleMockItems } from './mockData'
8
8
 
9
9
  const meta = {
10
- title: 'Components/Select/Select (future)',
10
+ title: 'Components/Select/Select (next)',
11
11
  component: Select,
12
12
  argTypes: {
13
13
  items: {
@@ -7,7 +7,7 @@ import * as TabsStories from './Tabs.stories'
7
7
  # Tabs (next)
8
8
 
9
9
  <ResourceLinks
10
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/Tabs"
10
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Tabs"
11
11
  figma="https://www.figma.com/file/eZKEE5kXbEMY3lx84oz8iN/%F0%9F%92%9C-UI-Kit%3A-Heart?type=design&node-id=1929%3A28886&mode=design&t=AGMmnoJia9RscurE-1"
12
12
  designGuidelines="https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3081929117/Tabs"
13
13
 
@@ -6,7 +6,7 @@ import * as RemovableTagStories from './RemovableTag.stories'
6
6
 
7
7
  # RemovableTag (next)
8
8
 
9
- <ResourceLinks sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Tag/RemovableTag.tsx" />
9
+ <ResourceLinks sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Tag/RemovableTag" />
10
10
 
11
11
  <KAIOInstallation exportNames="RemovableTag" isNext />
12
12
 
@@ -10,7 +10,7 @@ import * as exampleStories from './Tooltip.stories'
10
10
  Updated June 25, 2024
11
11
 
12
12
  <ResourceLinks
13
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/Tooltip"
13
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Tooltip"
14
14
  figma="https://www.figma.com/file/eZKEE5kXbEMY3lx84oz8iN/%F0%9F%92%9C-UI-Kit%3A-Heart?type=design&node-id=1929%3A32006&mode=design&t=LwTCBZ5E1uRvOA1l-1"
15
15
  designGuidelines="/?path=/docs/overlays-tooltip-next-usage-guidelines--docs"
16
16
  ariaComponentPage="https://react-spectrum.adobe.com/react-aria/Tooltip.html"
@@ -3,11 +3,12 @@ import { type Meta, type StoryObj } from '@storybook/react'
3
3
  import isChromatic from 'chromatic'
4
4
  import { Button, IconButton } from '~components/Button'
5
5
  import { FieldMessage } from '~components/FieldMessage'
6
+ import { Focusable } from '~components/Focusable'
6
7
  import { Input } from '~components/Input'
7
8
  import { Label } from '~components/Label'
8
9
  import { Text } from '~components/Text'
9
10
  import { Icon } from '~components/__next__/Icon'
10
- import { Focusable, Tooltip, TooltipTrigger } from '../index'
11
+ import { Tooltip, TooltipTrigger } from '../index'
11
12
  import * as TestStories from './Tooltip.spec.stories'
12
13
 
13
14
  const meta = {
@@ -13,7 +13,7 @@ import WhenToUsePng from './assets/tooltip_variant.png'
13
13
  Updated June 25, 2024
14
14
 
15
15
  <ResourceLinks
16
- sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/Tooltip"
16
+ sourceCode="https://github.com/cultureamp/kaizen-design-system/tree/main/packages/components/src/__next__/Tooltip"
17
17
  figma="https://www.figma.com/file/eZKEE5kXbEMY3lx84oz8iN/%F0%9F%92%9C-UI-Kit%3A-Heart?type=design&node-id=1929%3A32006&mode=design&t=LwTCBZ5E1uRvOA1l-1"
18
18
  designGuidelines="/?path=/docs/overlays-tooltip-next-usage-guidelines--docs"
19
19
  ariaComponentPage="https://react-spectrum.adobe.com/react-aria/Tooltip.html"
@@ -3,11 +3,12 @@ import { type Meta, type StoryObj } from '@storybook/react'
3
3
  import { expect, userEvent, waitFor, within } from '@storybook/test'
4
4
  import isChromatic from 'chromatic'
5
5
  import { Button, IconButton } from '~components/Button'
6
+ import { Focusable } from '~components/Focusable'
6
7
  import { Tab, TabList, TabPanel, TabPanels, Tabs } from '~components/Tabs'
7
8
  import { Text } from '~components/Text'
8
9
  import { Icon } from '~components/__next__/Icon'
9
10
  import { Tag } from '~components/__next__/Tag'
10
- import { Focusable, Tooltip, TooltipTrigger } from '../index'
11
+ import { Tooltip, TooltipTrigger } from '../index'
11
12
 
12
13
  const meta = {
13
14
  title: 'Components/Tooltip/Tooltip (next)/Tests',
@@ -2,8 +2,9 @@ import React, { type FunctionComponent } from 'react'
2
2
  import { type Meta, type StoryObj } from '@storybook/react'
3
3
  import isChromatic from 'chromatic'
4
4
  import { Button } from '~components/Button'
5
+ import { Focusable } from '~components/Focusable'
5
6
  import { Tag } from '~components/__next__'
6
- import { Focusable, Tooltip, TooltipTrigger } from '../index'
7
+ import { Tooltip, TooltipTrigger } from '../index'
7
8
  import * as testStories from './Tooltip.spec.stories'
8
9
 
9
10
  const meta = {
@@ -1,3 +1,2 @@
1
1
  export * from './Tooltip'
2
2
  export * from './TooltipTrigger'
3
- export * from './subcomponents/Focusable'
@@ -5,3 +5,7 @@ export * from './Select'
5
5
  export * from './Tag'
6
6
  export * from './Tabs'
7
7
  export * from './Tooltip'
8
+
9
+ // This Focusable component was originally exported from here, but since moved to the main entry point because there's no name clash.
10
+ // This is just here to keep backwards compatibility until the 2.0 release
11
+ export * from '../Focusable'
package/src/index.ts CHANGED
@@ -21,6 +21,7 @@ export * from './ErrorPage'
21
21
  export * from './FieldGroup'
22
22
  export * from './FieldMessage'
23
23
  export * from './Filter'
24
+ export * from './Focusable'
24
25
  export * from './GuidanceBlock'
25
26
  export * from './Heading'
26
27
  export * from './Icon'
@@ -29,6 +30,7 @@ export * from './Input'
29
30
  export * from './KaizenProvider'
30
31
  export * from './Label'
31
32
  export * from './LabelledMessage'
33
+ export * from './Link'
32
34
  export * from './LikertScaleLegacy'
33
35
  export * from './LinkButton'
34
36
  export * from './Loading'
@@ -1,6 +0,0 @@
1
- 'use strict';
2
-
3
- var styles = {
4
- "focusableWrapper": "Focusable-module_focusableWrapper__G7IVs"
5
- };
6
- module.exports = styles;
@@ -1,4 +0,0 @@
1
- var styles = {
2
- "focusableWrapper": "Focusable-module_focusableWrapper__G7IVs"
3
- };
4
- export { styles as default };