Skip to content

Commit 12a5000

Browse files
author
Austin Green
committed
feat: move ID utilities to react-uid
1 parent 797c248 commit 12a5000

File tree

12 files changed

+29
-20
lines changed

12 files changed

+29
-20
lines changed

packages/accordion/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@
1818
},
1919
"types": "dist/typings/index.d.ts",
2020
"dependencies": {
21-
"@zendeskgarden/container-utilities": "^0.3.0"
21+
"@zendeskgarden/container-utilities": "^0.3.0",
22+
"react-uid": "^2.2.0"
2223
},
2324
"peerDependencies": {
2425
"prop-types": "^15.6.1",

packages/accordion/src/useAccordion.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
*/
77

88
import { useState, HTMLProps } from 'react';
9+
import { useUID } from 'react-uid';
910
import {
1011
composeEventHandlers,
11-
generateId,
1212
KEY_CODES,
1313
getControlledValue
1414
} from '@zendeskgarden/container-utilities';
@@ -55,7 +55,8 @@ export function useAccordion({
5555
expandable = true,
5656
collapsible = true
5757
}: IUseAccordionProps = {}): IUseAccordionReturnValue {
58-
const [prefix] = useState<string>(idPrefix || generateId('garden-accordion-container'));
58+
const generatedID = useUID();
59+
const [prefix] = useState<string>(idPrefix || generatedID);
5960
const TRIGGER_ID = `${prefix}--trigger`;
6061
const PANEL_ID = `${prefix}--panel`;
6162
const [expandedState, setExpandedState] = useState<number[]>(expandedSections || []);

packages/field/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
},
1919
"types": "dist/typings/index.d.ts",
2020
"dependencies": {
21-
"@zendeskgarden/container-utilities": "^0.3.0"
21+
"react-uid": "^2.2.0"
2222
},
2323
"peerDependencies": {
2424
"prop-types": "^15.6.1",

packages/field/src/useField.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*/
77

88
import { useState } from 'react';
9-
import { generateId } from '@zendeskgarden/container-utilities';
9+
import { useUID } from 'react-uid';
1010

1111
export interface IUseFieldPropGetters {
1212
getHintProps: <T>(options?: T) => T & React.HTMLProps<any>;
@@ -18,7 +18,8 @@ export interface IUseFieldPropGetters {
1818
}
1919

2020
export function useField(idPrefix?: string): IUseFieldPropGetters {
21-
const [prefix] = useState(idPrefix || generateId('garden-field-container'));
21+
const generatedID = useUID();
22+
const [prefix] = useState(idPrefix || generatedID);
2223
const inputId = `${prefix}--input`;
2324
const labelId = `${prefix}--label`;
2425
const hintId = `${prefix}--hint`;

packages/field/stories.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,11 @@
66
*/
77

88
import React from 'react';
9-
9+
import { uid } from 'react-uid';
1010
import { storiesOf } from '@storybook/react';
1111
import { withKnobs, text } from '@storybook/addon-knobs';
1212

1313
import { FieldContainer, useField } from './src';
14-
import { generateId } from '@zendeskgarden/container-utilities';
1514

1615
storiesOf('Field Container', module)
1716
.addDecorator(withKnobs)
@@ -30,10 +29,10 @@ storiesOf('Field Container', module)
3029
);
3130
};
3231

33-
return <Field id={text('id', generateId())} />;
32+
return <Field id={text('id', uid({ name: 'useField' }))} />;
3433
})
3534
.add('FieldContainer', () => (
36-
<FieldContainer id={text('id', generateId())}>
35+
<FieldContainer id={text('id', uid({ name: 'FieldContainer' }))}>
3736
{({ getLabelProps, getInputProps, getHintProps }) => (
3837
<>
3938
<label {...getLabelProps()}>Accessible Native Input</label>

packages/modal/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@
1919
"types": "dist/typings/index.d.ts",
2020
"dependencies": {
2121
"@zendeskgarden/container-focusjail": "^1.2.3",
22-
"@zendeskgarden/container-utilities": "^0.3.0"
22+
"@zendeskgarden/container-utilities": "^0.3.0",
23+
"react-uid": "^2.2.0"
2324
},
2425
"peerDependencies": {
2526
"prop-types": "^15.6.1",

packages/modal/src/useModal.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
*/
77

88
import { useState } from 'react';
9-
import { composeEventHandlers, generateId, KEY_CODES } from '@zendeskgarden/container-utilities';
9+
import { useUID } from 'react-uid';
10+
import { composeEventHandlers, KEY_CODES } from '@zendeskgarden/container-utilities';
1011
import { useFocusJail } from '@zendeskgarden/container-focusjail';
1112

1213
export interface IUseModalProps {
@@ -29,7 +30,8 @@ export interface IUseModalReturnValue {
2930
export function useModal(
3031
{ onClose, modalRef, id: _id, focusOnMount, environment }: IUseModalProps = {} as any
3132
): IUseModalReturnValue {
32-
const [idPrefix] = useState(_id || generateId('garden-modal-container'));
33+
const generatedId = useUID();
34+
const [idPrefix] = useState(_id || generatedId);
3335
const titleId = `${idPrefix}--title`;
3436
const contentId = `${idPrefix}--content`;
3537

packages/tabs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
"types": "dist/typings/index.d.ts",
2020
"dependencies": {
2121
"@zendeskgarden/container-selection": "^1.2.6",
22-
"@zendeskgarden/container-utilities": "^0.3.0"
22+
"react-uid": "^2.2.0"
2323
},
2424
"peerDependencies": {
2525
"prop-types": "^15.6.1",

packages/tabs/src/useTabs.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,13 @@
66
*/
77

88
import { useState } from 'react';
9+
import { useUID } from 'react-uid';
910
import {
1011
useSelection,
1112
IGetItemPropsOptions,
1213
IUseSelectionState,
1314
IUseSelectionProps
1415
} from '@zendeskgarden/container-selection';
15-
import { generateId } from '@zendeskgarden/container-utilities';
1616

1717
interface IGetTabProps<Item> extends IGetItemPropsOptions<Item> {
1818
index: number;
@@ -52,7 +52,8 @@ export function useTabs<Item = any>({
5252
defaultSelectedIndex: 0,
5353
...options
5454
});
55-
const [_id] = useState(idPrefix || generateId('garden-tabs-container'));
55+
const generatedId = useUID();
56+
const [_id] = useState(idPrefix || generatedId);
5657
const PANEL_ID = `${_id}--panel`;
5758
const TAB_ID = `${_id}--tab`;
5859

packages/tooltip/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@
1818
},
1919
"types": "dist/typings/index.d.ts",
2020
"dependencies": {
21-
"@zendeskgarden/container-utilities": "^0.3.0"
21+
"@zendeskgarden/container-utilities": "^0.3.0",
22+
"react-uid": "^2.2.0"
2223
},
2324
"peerDependencies": {
2425
"prop-types": "^15.6.1",

0 commit comments

Comments
 (0)