@workday/canvas-kit-react 6.1.5 → 6.3.0-next.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 (100) hide show
  1. package/checkbox/lib/Checkbox.tsx +1 -1
  2. package/common/README.md +78 -0
  3. package/common/lib/utils/index.ts +1 -0
  4. package/common/lib/utils/useIsFullscreen.ts +20 -0
  5. package/common/lib/utils/useUniqueId.ts +44 -3
  6. package/dist/commonjs/checkbox/lib/Checkbox.d.ts +1 -1
  7. package/dist/commonjs/common/lib/utils/index.d.ts +1 -0
  8. package/dist/commonjs/common/lib/utils/index.d.ts.map +1 -1
  9. package/dist/commonjs/common/lib/utils/index.js +1 -0
  10. package/dist/commonjs/common/lib/utils/useIsFullscreen.d.ts +2 -0
  11. package/dist/commonjs/common/lib/utils/useIsFullscreen.d.ts.map +1 -0
  12. package/dist/commonjs/common/lib/utils/useIsFullscreen.js +20 -0
  13. package/dist/commonjs/common/lib/utils/useUniqueId.d.ts +28 -0
  14. package/dist/commonjs/common/lib/utils/useUniqueId.d.ts.map +1 -1
  15. package/dist/commonjs/common/lib/utils/useUniqueId.js +40 -5
  16. package/dist/commonjs/form-field/lib/FormField.d.ts.map +1 -1
  17. package/dist/commonjs/form-field/lib/FormField.js +1 -2
  18. package/dist/commonjs/popup/lib/hooks/focus-trap-js.d.ts.map +1 -1
  19. package/dist/commonjs/popup/lib/hooks/focus-trap-js.js +1 -0
  20. package/dist/commonjs/popup/lib/hooks/index.d.ts +3 -0
  21. package/dist/commonjs/popup/lib/hooks/index.d.ts.map +1 -1
  22. package/dist/commonjs/popup/lib/hooks/index.js +3 -0
  23. package/dist/commonjs/popup/lib/hooks/useCloseOnFullscreenExit.d.ts +7 -0
  24. package/dist/commonjs/popup/lib/hooks/useCloseOnFullscreenExit.d.ts.map +1 -0
  25. package/dist/commonjs/popup/lib/hooks/useCloseOnFullscreenExit.js +34 -0
  26. package/dist/commonjs/popup/lib/hooks/usePopupStack.d.ts.map +1 -1
  27. package/dist/commonjs/popup/lib/hooks/usePopupStack.js +1 -1
  28. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenEnter.d.ts +10 -0
  29. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenEnter.d.ts.map +1 -0
  30. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenEnter.js +41 -0
  31. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenExit.d.ts +9 -0
  32. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenExit.d.ts.map +1 -0
  33. package/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenExit.js +40 -0
  34. package/dist/commonjs/radio/lib/Radio.d.ts +1 -1
  35. package/dist/commonjs/switch/lib/Switch.d.ts +1 -1
  36. package/dist/commonjs/tooltip/lib/useTooltip.d.ts.map +1 -1
  37. package/dist/commonjs/tooltip/lib/useTooltip.js +3 -5
  38. package/dist/es6/checkbox/lib/Checkbox.d.ts +1 -1
  39. package/dist/es6/common/lib/utils/index.d.ts +1 -0
  40. package/dist/es6/common/lib/utils/index.d.ts.map +1 -1
  41. package/dist/es6/common/lib/utils/index.js +1 -0
  42. package/dist/es6/common/lib/utils/useIsFullscreen.d.ts +2 -0
  43. package/dist/es6/common/lib/utils/useIsFullscreen.d.ts.map +1 -0
  44. package/dist/es6/common/lib/utils/useIsFullscreen.js +15 -0
  45. package/dist/es6/common/lib/utils/useUniqueId.d.ts +28 -0
  46. package/dist/es6/common/lib/utils/useUniqueId.d.ts.map +1 -1
  47. package/dist/es6/common/lib/utils/useUniqueId.js +40 -2
  48. package/dist/es6/form-field/lib/FormField.d.ts.map +1 -1
  49. package/dist/es6/form-field/lib/FormField.js +2 -3
  50. package/dist/es6/popup/lib/hooks/focus-trap-js.d.ts.map +1 -1
  51. package/dist/es6/popup/lib/hooks/focus-trap-js.js +1 -0
  52. package/dist/es6/popup/lib/hooks/index.d.ts +3 -0
  53. package/dist/es6/popup/lib/hooks/index.d.ts.map +1 -1
  54. package/dist/es6/popup/lib/hooks/index.js +3 -0
  55. package/dist/es6/popup/lib/hooks/useCloseOnFullscreenExit.d.ts +7 -0
  56. package/dist/es6/popup/lib/hooks/useCloseOnFullscreenExit.d.ts.map +1 -0
  57. package/dist/es6/popup/lib/hooks/useCloseOnFullscreenExit.js +29 -0
  58. package/dist/es6/popup/lib/hooks/usePopupStack.d.ts.map +1 -1
  59. package/dist/es6/popup/lib/hooks/usePopupStack.js +1 -1
  60. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenEnter.d.ts +10 -0
  61. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenEnter.d.ts.map +1 -0
  62. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenEnter.js +36 -0
  63. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenExit.d.ts +9 -0
  64. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenExit.d.ts.map +1 -0
  65. package/dist/es6/popup/lib/hooks/useTransferOnFullscreenExit.js +35 -0
  66. package/dist/es6/radio/lib/Radio.d.ts +1 -1
  67. package/dist/es6/switch/lib/Switch.d.ts +1 -1
  68. package/dist/es6/tooltip/lib/useTooltip.d.ts.map +1 -1
  69. package/dist/es6/tooltip/lib/useTooltip.js +4 -3
  70. package/form-field/lib/FormField.tsx +8 -3
  71. package/package.json +7 -7
  72. package/popup/lib/hooks/focus-trap-js.ts +1 -0
  73. package/popup/lib/hooks/index.ts +3 -0
  74. package/popup/lib/hooks/useCloseOnFullscreenExit.ts +37 -0
  75. package/popup/lib/hooks/usePopupStack.ts +2 -1
  76. package/popup/lib/hooks/useTransferOnFullscreenEnter.ts +44 -0
  77. package/popup/lib/hooks/useTransferOnFullscreenExit.ts +43 -0
  78. package/radio/lib/Radio.tsx +1 -1
  79. package/switch/lib/Switch.tsx +1 -1
  80. package/tooltip/lib/useTooltip.tsx +4 -2
  81. package/ts3.5/dist/commonjs/checkbox/lib/Checkbox.d.ts +1 -1
  82. package/ts3.5/dist/commonjs/common/lib/utils/index.d.ts +1 -0
  83. package/ts3.5/dist/commonjs/common/lib/utils/useIsFullscreen.d.ts +2 -0
  84. package/ts3.5/dist/commonjs/common/lib/utils/useUniqueId.d.ts +28 -0
  85. package/ts3.5/dist/commonjs/popup/lib/hooks/index.d.ts +3 -0
  86. package/ts3.5/dist/commonjs/popup/lib/hooks/useCloseOnFullscreenExit.d.ts +7 -0
  87. package/ts3.5/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenEnter.d.ts +10 -0
  88. package/ts3.5/dist/commonjs/popup/lib/hooks/useTransferOnFullscreenExit.d.ts +9 -0
  89. package/ts3.5/dist/commonjs/radio/lib/Radio.d.ts +1 -1
  90. package/ts3.5/dist/commonjs/switch/lib/Switch.d.ts +1 -1
  91. package/ts3.5/dist/es6/checkbox/lib/Checkbox.d.ts +1 -1
  92. package/ts3.5/dist/es6/common/lib/utils/index.d.ts +1 -0
  93. package/ts3.5/dist/es6/common/lib/utils/useIsFullscreen.d.ts +2 -0
  94. package/ts3.5/dist/es6/common/lib/utils/useUniqueId.d.ts +28 -0
  95. package/ts3.5/dist/es6/popup/lib/hooks/index.d.ts +3 -0
  96. package/ts3.5/dist/es6/popup/lib/hooks/useCloseOnFullscreenExit.d.ts +7 -0
  97. package/ts3.5/dist/es6/popup/lib/hooks/useTransferOnFullscreenEnter.d.ts +10 -0
  98. package/ts3.5/dist/es6/popup/lib/hooks/useTransferOnFullscreenExit.d.ts +9 -0
  99. package/ts3.5/dist/es6/radio/lib/Radio.d.ts +1 -1
  100. package/ts3.5/dist/es6/switch/lib/Switch.d.ts +1 -1
@@ -33,7 +33,7 @@ export interface CheckboxProps extends Themeable {
33
33
  disabled?: boolean;
34
34
  /**
35
35
  * The HTML `id` of the underlying checkbox input element. This is required if `label` is defined as a non-empty string.
36
- * @default A uniquely generated id by uuid()
36
+ * @default A uniquely generated id
37
37
  */
38
38
  id?: string;
39
39
  /**
package/common/README.md CHANGED
@@ -17,6 +17,9 @@ Includes:
17
17
  - [Component Functions](#component-functions)
18
18
  - [createComponent](#createcomponent)
19
19
  - [ExtractProps](#extractprops)
20
+ - [Common Hooks](#common-hooks)
21
+ - [useUniqueId](#useuniqueid)
22
+ - [Utility Functions](#utility-functions)
20
23
 
21
24
  ## CanvasProvider
22
25
 
@@ -369,3 +372,78 @@ const MyNewComponent = createComponent('aside')(
369
372
 
370
373
  If the component is a `Component` and not an `ElementComponent`, only the prop interface will ever
371
374
  be returned since there is not HTML attribute interface associated with `Component`.
375
+
376
+ ## Common Hooks
377
+
378
+ ### useUniqueId
379
+
380
+ A hook to generate a unique identifier for an element. Most commonly used for accessibility. The
381
+ hook will generate a unique id the first render and always return the same id every render. This
382
+ uses [generateUniqueId](#generateuniqueid) internally.
383
+
384
+ ```tsx
385
+ const MyComponent = () => {
386
+ const id = useUniqueId();
387
+
388
+ return <div id={id}>Hello!</div>;
389
+ };
390
+ ```
391
+
392
+ If you wish to support user-defined ids, `useUniqueId` allows an optional id to override. This
393
+ provides a safe and easy way of handling id overrides without conditional hooks.
394
+
395
+ ```tsx
396
+ const MyComponent = ({id}) => {
397
+ const localId = useUniqueId(id);
398
+
399
+ return <div id={localId}>Hello!</div>;
400
+ };
401
+ ```
402
+
403
+ ## Utility Functions
404
+
405
+ ### generateUniqueId
406
+
407
+ Generates a unique and HTML5 compliant identifier every time it is called. Internally it uses a 4
408
+ character random seed starting with a letter. This seed is unique to each instance of this package
409
+ meaning different versions of Canvas Kit on the page will have a different seed. Each call will use
410
+ a Base 36 string (10 numbers + 26 letters) based on an incremented number. The incremented number
411
+ always starts at 0 and can be reset for testing purposes using
412
+ [resetUniqueIdCount](#resetuniqueidcount). [setUniqueSeed](#setuniqueseed) can also be used for
413
+ testing or server side rendering to get the same results during hydration.
414
+
415
+ ```ts
416
+ const id1 = generateUniqueId(); // vi1e0
417
+ const id2 = generateUniqueId(); // vi1e1
418
+ ```
419
+
420
+ ### setUniqueSeed
421
+
422
+ Update the seed used by the id generator. This is useful for snapshot tests to help stabilize ids
423
+ generated each run. This could also be used for server-side hydration - if you choose the same seed
424
+ for server and set that on the client before components are rendered, the ids generated will be the
425
+ same.
426
+
427
+ For snapshot testing, this will help stabilize snapshot tests. Use in conjunction with
428
+ [resetUniqueIdCount](#resetuniqueidcount).
429
+
430
+ ```ts
431
+ // set in a script tag from the server
432
+ setUniqueSeed(window.__ID_SEED); // set in a script tag from the server
433
+
434
+ // jest setup
435
+ before(() => {
436
+ setUniqueSeed('a');
437
+ });
438
+ ```
439
+
440
+ ### resetUniqueIdCount
441
+
442
+ This should only be called for tests in `beforeEach` for snapshot tests. Use in conjunction with
443
+ [setUniqueSeed](#setuniqueseed).
444
+
445
+ ```ts
446
+ beforeEach(() => {
447
+ resetUniqueIdCount();
448
+ });
449
+ ```
@@ -10,6 +10,7 @@ export * from './useMount';
10
10
  export * from './components';
11
11
  export * from './models';
12
12
  export * from './elements';
13
+ export * from './useIsFullscreen';
13
14
  export * from './useWindowSize';
14
15
  export * from './useResizeObserver';
15
16
  export * from './StaticStates';
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import screenfull from 'screenfull';
3
+
4
+ export const useIsFullscreen = () => {
5
+ const [isFullscreen, setIsFullscreen] = React.useState(false);
6
+
7
+ const handler = React.useCallback(() => {
8
+ setIsFullscreen(screenfull.isFullscreen);
9
+ }, []);
10
+
11
+ React.useEffect(() => {
12
+ screenfull.on('change', handler);
13
+
14
+ return () => {
15
+ screenfull.off('change', handler);
16
+ };
17
+ }, [handler]);
18
+
19
+ return isFullscreen;
20
+ };
@@ -1,8 +1,24 @@
1
- import uuid from 'uuid/v4';
2
-
3
1
  import {useConstant} from './useConstant';
4
2
 
5
- export const generateUniqueId = () => uuid().replace(/^[0-9\-]*/gi, '');
3
+ // Create a unique seed per import to prevent collisions from other versions of `useUniqueId`
4
+ let seed = Math.random()
5
+ .toString(36)
6
+ .slice(2)
7
+ .replace(/[0-9]*/, '')
8
+ .substr(0, 4);
9
+
10
+ let c = 0;
11
+
12
+ /**
13
+ * Generates a unique and HTML5 compliant identifier every time it is called. Internally it uses a 4
14
+ * character random seed starting with a letter. This seed is unique to each instance of this
15
+ * package meaning different versions of Canvas Kit on the page will have a different seed. Each
16
+ * call will use a Base 36 string (10 numbers + 26 letters) based on an incremented number. The
17
+ * incremented number always starts at 0 and can be reset for testing purposes using
18
+ * [resetUniqueIdCount](#resetuniqueidcount). [setUniqueSeed](#setuniqueseed) can also be used for
19
+ * testing or server side rendering to get the same results during hydration.
20
+ */
21
+ export const generateUniqueId = () => seed + (c++).toString(36);
6
22
 
7
23
  /**
8
24
  * Generate a unique ID if one is not provided. The generated ID will be stable across renders
@@ -20,3 +36,28 @@ export const useUniqueId = (id?: string) => {
20
36
  * TODO: Remove in major release
21
37
  */
22
38
  export const uniqueId = useUniqueId;
39
+
40
+ /**
41
+ * Update the seed used by the id generator. This is useful for snapshot tests to help stabilize ids
42
+ * generated each run. This could also be used for server-side hydration - if you choose the same
43
+ * seed for server and set that on the client before components are rendered, the ids generated will
44
+ * be the same.
45
+ * @example
46
+ * // set in a script tag from the server
47
+ * setSeed(window.__ID_SEED); // set in a script tag from the server
48
+ *
49
+ * // jest setup
50
+ * before(() => {
51
+ * setSeed('a')
52
+ * })
53
+ */
54
+ export const setUniqueSeed = (s: string) => {
55
+ seed = s;
56
+ };
57
+
58
+ /**
59
+ * This should only be called for tests in an `beforeEach`
60
+ */
61
+ export const resetUniqueIdCount = () => {
62
+ c = 0;
63
+ };
@@ -13,7 +13,7 @@ export interface CheckboxProps extends Themeable {
13
13
  disabled?: boolean;
14
14
  /**
15
15
  * The HTML `id` of the underlying checkbox input element. This is required if `label` is defined as a non-empty string.
16
- * @default A uniquely generated id by uuid()
16
+ * @default A uniquely generated id
17
17
  */
18
18
  id?: string;
19
19
  /**
@@ -10,6 +10,7 @@ export * from './useMount';
10
10
  export * from './components';
11
11
  export * from './models';
12
12
  export * from './elements';
13
+ export * from './useIsFullscreen';
13
14
  export * from './useWindowSize';
14
15
  export * from './useResizeObserver';
15
16
  export * from './StaticStates';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
@@ -15,6 +15,7 @@ __export(require("./useMount"));
15
15
  __export(require("./components"));
16
16
  __export(require("./models"));
17
17
  __export(require("./elements"));
18
+ __export(require("./useIsFullscreen"));
18
19
  __export(require("./useWindowSize"));
19
20
  __export(require("./useResizeObserver"));
20
21
  __export(require("./StaticStates"));
@@ -0,0 +1,2 @@
1
+ export declare const useIsFullscreen: () => boolean;
2
+ //# sourceMappingURL=useIsFullscreen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useIsFullscreen.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/useIsFullscreen.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,eAAe,eAgB3B,CAAC"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var screenfull_1 = __importDefault(require("screenfull"));
8
+ exports.useIsFullscreen = function () {
9
+ var _a = react_1.default.useState(false), isFullscreen = _a[0], setIsFullscreen = _a[1];
10
+ var handler = react_1.default.useCallback(function () {
11
+ setIsFullscreen(screenfull_1.default.isFullscreen);
12
+ }, []);
13
+ react_1.default.useEffect(function () {
14
+ screenfull_1.default.on('change', handler);
15
+ return function () {
16
+ screenfull_1.default.off('change', handler);
17
+ };
18
+ }, [handler]);
19
+ return isFullscreen;
20
+ };
@@ -1,3 +1,12 @@
1
+ /**
2
+ * Generates a unique and HTML5 compliant identifier every time it is called. Internally it uses a 4
3
+ * character random seed starting with a letter. This seed is unique to each instance of this
4
+ * package meaning different versions of Canvas Kit on the page will have a different seed. Each
5
+ * call will use a Base 36 string (10 numbers + 26 letters) based on an incremented number. The
6
+ * incremented number always starts at 0 and can be reset for testing purposes using
7
+ * [resetUniqueIdCount](#resetuniqueidcount). [setUniqueSeed](#setuniqueseed) can also be used for
8
+ * testing or server side rendering to get the same results during hydration.
9
+ */
1
10
  export declare const generateUniqueId: () => string;
2
11
  /**
3
12
  * Generate a unique ID if one is not provided. The generated ID will be stable across renders
@@ -10,4 +19,23 @@ export declare const useUniqueId: (id?: string | undefined) => string;
10
19
  * TODO: Remove in major release
11
20
  */
12
21
  export declare const uniqueId: (id?: string | undefined) => string;
22
+ /**
23
+ * Update the seed used by the id generator. This is useful for snapshot tests to help stabilize ids
24
+ * generated each run. This could also be used for server-side hydration - if you choose the same
25
+ * seed for server and set that on the client before components are rendered, the ids generated will
26
+ * be the same.
27
+ * @example
28
+ * // set in a script tag from the server
29
+ * setSeed(window.__ID_SEED); // set in a script tag from the server
30
+ *
31
+ * // jest setup
32
+ * before(() => {
33
+ * setSeed('a')
34
+ * })
35
+ */
36
+ export declare const setUniqueSeed: (s: string) => void;
37
+ /**
38
+ * This should only be called for tests in an `beforeEach`
39
+ */
40
+ export declare const resetUniqueIdCount: () => void;
13
41
  //# sourceMappingURL=useUniqueId.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useUniqueId.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/useUniqueId.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,gBAAgB,cAA0C,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,WAAW,qCAIvB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,qCAAc,CAAC"}
1
+ {"version":3,"file":"useUniqueId.d.ts","sourceRoot":"","sources":["../../../../../common/lib/utils/useUniqueId.ts"],"names":[],"mappings":"AAWA;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,cAAkC,CAAC;AAEhE;;;GAGG;AACH,eAAO,MAAM,WAAW,qCAIvB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,qCAAc,CAAC;AAEpC;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,aAAa,qBAEzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,YAE9B,CAAC"}
@@ -1,11 +1,23 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- var v4_1 = __importDefault(require("uuid/v4"));
7
3
  var useConstant_1 = require("./useConstant");
8
- exports.generateUniqueId = function () { return v4_1.default().replace(/^[0-9\-]*/gi, ''); };
4
+ // Create a unique seed per import to prevent collisions from other versions of `useUniqueId`
5
+ var seed = Math.random()
6
+ .toString(36)
7
+ .slice(2)
8
+ .replace(/[0-9]*/, '')
9
+ .substr(0, 4);
10
+ var c = 0;
11
+ /**
12
+ * Generates a unique and HTML5 compliant identifier every time it is called. Internally it uses a 4
13
+ * character random seed starting with a letter. This seed is unique to each instance of this
14
+ * package meaning different versions of Canvas Kit on the page will have a different seed. Each
15
+ * call will use a Base 36 string (10 numbers + 26 letters) based on an incremented number. The
16
+ * incremented number always starts at 0 and can be reset for testing purposes using
17
+ * [resetUniqueIdCount](#resetuniqueidcount). [setUniqueSeed](#setuniqueseed) can also be used for
18
+ * testing or server side rendering to get the same results during hydration.
19
+ */
20
+ exports.generateUniqueId = function () { return seed + (c++).toString(36); };
9
21
  /**
10
22
  * Generate a unique ID if one is not provided. The generated ID will be stable across renders
11
23
  * @param id Optional ID provided that will be used instead of a unique ID
@@ -21,3 +33,26 @@ exports.useUniqueId = function (id) {
21
33
  * TODO: Remove in major release
22
34
  */
23
35
  exports.uniqueId = exports.useUniqueId;
36
+ /**
37
+ * Update the seed used by the id generator. This is useful for snapshot tests to help stabilize ids
38
+ * generated each run. This could also be used for server-side hydration - if you choose the same
39
+ * seed for server and set that on the client before components are rendered, the ids generated will
40
+ * be the same.
41
+ * @example
42
+ * // set in a script tag from the server
43
+ * setSeed(window.__ID_SEED); // set in a script tag from the server
44
+ *
45
+ * // jest setup
46
+ * before(() => {
47
+ * setSeed('a')
48
+ * })
49
+ */
50
+ exports.setUniqueSeed = function (s) {
51
+ seed = s;
52
+ };
53
+ /**
54
+ * This should only be called for tests in an `beforeEach`
55
+ */
56
+ exports.resetUniqueIdCount = function () {
57
+ c = 0;
58
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../../form-field/lib/FormField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,cAAc,EAAE,SAAS,EAAU,SAAS,EAAC,MAAM,kCAAkC,CAAC;AAG9F,OAAO,EAAC,sBAAsB,EAAiC,MAAM,SAAS,CAAC;AAG/E,MAAM,WAAW,cACf,SAAQ,SAAS,EACf,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EACpC,cAAc;IAChB;;;OAGG;IACH,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAoED,cAAM,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IACrD,MAAM,CAAC,aAAa,gCAA0B;IAC9C,MAAM,CAAC,SAAS,mBAAa;IAE7B,OAAO,CAAC,OAAO,CAAwC;IAEvD,OAAO,CAAC,cAAc,CA8BpB;IAEF,MAAM;CA2DP;AAKD,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../../../form-field/lib/FormField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EACL,cAAc,EACd,SAAS,EAET,SAAS,EAEV,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAC,sBAAsB,EAAiC,MAAM,SAAS,CAAC;AAE/E,MAAM,WAAW,cACf,SAAQ,SAAS,EACf,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EACpC,cAAc;IAChB;;;OAGG;IACH,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAoED,cAAM,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IACrD,MAAM,CAAC,aAAa,gCAA0B;IAC9C,MAAM,CAAC,SAAS,mBAAa;IAE7B,OAAO,CAAC,OAAO,CAAoD;IAEnE,OAAO,CAAC,cAAc,CA8BpB;IAEF,MAAM;CA2DP;AAKD,eAAe,SAAS,CAAC"}
@@ -51,7 +51,6 @@ var common_1 = require("@workday/canvas-kit-react/common");
51
51
  var Hint_1 = __importDefault(require("./Hint"));
52
52
  var Label_1 = __importDefault(require("./Label"));
53
53
  var types_1 = require("./types");
54
- var v4_1 = __importDefault(require("uuid/v4"));
55
54
  // Use a fieldset element for accessible radio groups
56
55
  var FormFieldFieldsetContainer = common_1.styled('fieldset')(function (_a) {
57
56
  var grow = _a.grow, labelPosition = _a.labelPosition;
@@ -111,7 +110,7 @@ var FormField = /** @class */ (function (_super) {
111
110
  __extends(FormField, _super);
112
111
  function FormField() {
113
112
  var _this = _super !== null && _super.apply(this, arguments) || this;
114
- _this.inputId = _this.props.inputId || v4_1.default();
113
+ _this.inputId = _this.props.inputId || common_1.generateUniqueId();
115
114
  _this.renderChildren = function (child) {
116
115
  if (React.isValidElement(child)) {
117
116
  var props = __assign({}, child.props);
@@ -1 +1 @@
1
- {"version":3,"file":"focus-trap-js.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/focus-trap-js.ts"],"names":[],"mappings":"AAiFA,iBAAS,cAAc,CACrB,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,WAAW,GAAG,QAAQ,EAClC,YAAY,GAAE,WAAW,EAAE,GAAG,IAAW,uBAgC1C;kBAnCQ,cAAc;;;AA0DvB,OAAO,EAAC,cAAc,EAAC,CAAC"}
1
+ {"version":3,"file":"focus-trap-js.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/focus-trap-js.ts"],"names":[],"mappings":"AAkFA,iBAAS,cAAc,CACrB,KAAK,EAAE,aAAa,EACpB,UAAU,EAAE,WAAW,GAAG,QAAQ,EAClC,YAAY,GAAE,WAAW,EAAE,GAAG,IAAW,uBAgC1C;kBAnCQ,cAAc;;;AA0DvB,OAAO,EAAC,cAAc,EAAC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  // refactor for v5
3
+ /// <reference types="@types/node" />
3
4
  Object.defineProperty(exports, "__esModule", { value: true });
4
5
  var candidateSelectors = [
5
6
  'input',
@@ -2,6 +2,7 @@ export * from './useAlwaysCloseOnOutsideClick';
2
2
  export * from './useAssistiveHideSiblings';
3
3
  export * from './useBringToTopOnClick';
4
4
  export * from './useCloseOnEscape';
5
+ export * from './useCloseOnFullscreenExit';
5
6
  export * from './useCloseOnOutsideClick';
6
7
  export * from './useDisableBodyScroll';
7
8
  export * from './useFocusRedirect';
@@ -15,4 +16,6 @@ export * from './usePopupPopper';
15
16
  export * from './usePopupStack';
16
17
  export * from './usePopupTarget';
17
18
  export * from './useReturnFocus';
19
+ export * from './useTransferOnFullscreenEnter';
20
+ export * from './useTransferOnFullscreenExit';
18
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC"}
@@ -7,6 +7,7 @@ __export(require("./useAlwaysCloseOnOutsideClick"));
7
7
  __export(require("./useAssistiveHideSiblings"));
8
8
  __export(require("./useBringToTopOnClick"));
9
9
  __export(require("./useCloseOnEscape"));
10
+ __export(require("./useCloseOnFullscreenExit"));
10
11
  __export(require("./useCloseOnOutsideClick"));
11
12
  __export(require("./useDisableBodyScroll"));
12
13
  __export(require("./useFocusRedirect"));
@@ -20,3 +21,5 @@ __export(require("./usePopupPopper"));
20
21
  __export(require("./usePopupStack"));
21
22
  __export(require("./usePopupTarget"));
22
23
  __export(require("./useReturnFocus"));
24
+ __export(require("./useTransferOnFullscreenEnter"));
25
+ __export(require("./useTransferOnFullscreenExit"));
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Closes the popup when fullscreen is exited. Entering/exiting fullscreen changes the context of
3
+ * the entire screen. This should be added to popup types that are very context sensitive like
4
+ * Tooltips.
5
+ */
6
+ export declare const useCloseOnFullscreenExit: (model: import("../../..").Model<import("./usePopupModel").PopupState, import("./usePopupModel").PopupEvents>, elemProps?: {}) => {};
7
+ //# sourceMappingURL=useCloseOnFullscreenExit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCloseOnFullscreenExit.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/useCloseOnFullscreenExit.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,sIA0BpC,CAAC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var screenfull_1 = __importDefault(require("screenfull"));
8
+ /**
9
+ * Closes the popup when fullscreen is exited. Entering/exiting fullscreen changes the context of
10
+ * the entire screen. This should be added to popup types that are very context sensitive like
11
+ * Tooltips.
12
+ */
13
+ exports.useCloseOnFullscreenExit = function (model, elemProps) {
14
+ if (elemProps === void 0) { elemProps = {}; }
15
+ var handler = react_1.default.useCallback(function (event) {
16
+ if (!screenfull_1.default.isFullscreen) {
17
+ model.events.hide({ event: event });
18
+ }
19
+ }, [model.events]);
20
+ var visible = model.state.visibility !== 'hidden';
21
+ react_1.default.useEffect(function () {
22
+ if (!visible) {
23
+ return;
24
+ }
25
+ if (screenfull_1.default.isEnabled) {
26
+ screenfull_1.default.on('change', handler);
27
+ return function () {
28
+ screenfull_1.default.off('change', handler);
29
+ };
30
+ }
31
+ return;
32
+ }, [handler, visible]);
33
+ return elemProps;
34
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"usePopupStack.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/usePopupStack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,aAAa,wMA6CzB,CAAC"}
1
+ {"version":3,"file":"usePopupStack.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/usePopupStack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,aAAa,wMA8CzB,CAAC"}
@@ -61,8 +61,8 @@ exports.usePopupStack = function (ref, target) {
61
61
  ? target.current || undefined
62
62
  : target
63
63
  : undefined;
64
- canvas_kit_popup_stack_1.PopupStack.add({ element: localRef.current, owner: targetEl });
65
64
  var element = localRef.current;
65
+ canvas_kit_popup_stack_1.PopupStack.add({ element: element, owner: targetEl });
66
66
  return function () {
67
67
  canvas_kit_popup_stack_1.PopupStack.remove(element);
68
68
  };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Makes the popup transfer to the fullscreen element when fullscreen is entered. Without this, the
3
+ * popup would seem to disappear because the popup container element is not a child of the
4
+ * fullscreen element.
5
+ *
6
+ * Don't use this in conjunction with a hook that will close the popup when entering fullscreen.
7
+ * Doing so would open the popup when the intention was to close it.
8
+ */
9
+ export declare const useTransferOnFullscreenEnter: (model: import("../../..").Model<import("./usePopupModel").PopupState, import("./usePopupModel").PopupEvents>, elemProps?: {}) => {};
10
+ //# sourceMappingURL=useTransferOnFullscreenEnter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTransferOnFullscreenEnter.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/useTransferOnFullscreenEnter.ts"],"names":[],"mappings":"AAMA;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B,sIA6BxC,CAAC"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var screenfull_1 = __importDefault(require("screenfull"));
8
+ var canvas_kit_popup_stack_1 = require("@workday/canvas-kit-popup-stack");
9
+ /**
10
+ * Makes the popup transfer to the fullscreen element when fullscreen is entered. Without this, the
11
+ * popup would seem to disappear because the popup container element is not a child of the
12
+ * fullscreen element.
13
+ *
14
+ * Don't use this in conjunction with a hook that will close the popup when entering fullscreen.
15
+ * Doing so would open the popup when the intention was to close it.
16
+ */
17
+ exports.useTransferOnFullscreenEnter = function (model, elemProps) {
18
+ if (elemProps === void 0) { elemProps = {}; }
19
+ var handler = react_1.default.useCallback(function (event) {
20
+ if (screenfull_1.default.isFullscreen && model.state.stackRef.current) {
21
+ canvas_kit_popup_stack_1.PopupStack.transferToCurrentContext({
22
+ element: model.state.stackRef.current,
23
+ owner: model.state.targetRef.current,
24
+ });
25
+ }
26
+ }, [model.state.stackRef, model.state.targetRef]);
27
+ var visible = model.state.visibility !== 'hidden';
28
+ react_1.default.useEffect(function () {
29
+ if (!visible) {
30
+ return;
31
+ }
32
+ if (screenfull_1.default.isEnabled) {
33
+ screenfull_1.default.on('change', handler);
34
+ return function () {
35
+ screenfull_1.default.off('change', handler);
36
+ };
37
+ }
38
+ return;
39
+ }, [handler, visible]);
40
+ return elemProps;
41
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Makes the popup transfer to fullscreen when fullscreen is exited. Without this hook, the popup
3
+ * would not operate correctly with other popups on the screen.
4
+ *
5
+ * Don't use this in conjunction with a hook that will close the popup when exiting fullscreen.
6
+ * Doing so would open the popup when the intention was to close it.
7
+ */
8
+ export declare const useTransferOnFullscreenExit: (model: import("../../..").Model<import("./usePopupModel").PopupState, import("./usePopupModel").PopupEvents>, elemProps?: {}) => {};
9
+ //# sourceMappingURL=useTransferOnFullscreenExit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTransferOnFullscreenExit.d.ts","sourceRoot":"","sources":["../../../../../popup/lib/hooks/useTransferOnFullscreenExit.ts"],"names":[],"mappings":"AAMA;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,sIA6BvC,CAAC"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var react_1 = __importDefault(require("react"));
7
+ var screenfull_1 = __importDefault(require("screenfull"));
8
+ var canvas_kit_popup_stack_1 = require("@workday/canvas-kit-popup-stack");
9
+ /**
10
+ * Makes the popup transfer to fullscreen when fullscreen is exited. Without this hook, the popup
11
+ * would not operate correctly with other popups on the screen.
12
+ *
13
+ * Don't use this in conjunction with a hook that will close the popup when exiting fullscreen.
14
+ * Doing so would open the popup when the intention was to close it.
15
+ */
16
+ exports.useTransferOnFullscreenExit = function (model, elemProps) {
17
+ if (elemProps === void 0) { elemProps = {}; }
18
+ var handler = react_1.default.useCallback(function (event) {
19
+ if (!screenfull_1.default.isFullscreen && model.state.stackRef.current) {
20
+ canvas_kit_popup_stack_1.PopupStack.transferToCurrentContext({
21
+ element: model.state.stackRef.current,
22
+ owner: model.state.targetRef.current,
23
+ });
24
+ }
25
+ }, [model.state.stackRef, model.state.targetRef]);
26
+ var visible = model.state.visibility !== 'hidden';
27
+ react_1.default.useEffect(function () {
28
+ if (!visible) {
29
+ return;
30
+ }
31
+ if (screenfull_1.default.isEnabled) {
32
+ screenfull_1.default.on('change', handler);
33
+ return function () {
34
+ screenfull_1.default.off('change', handler);
35
+ };
36
+ }
37
+ return;
38
+ }, [handler, visible]);
39
+ return elemProps;
40
+ };
@@ -13,7 +13,7 @@ export interface RadioProps extends Themeable {
13
13
  disabled?: boolean;
14
14
  /**
15
15
  * The HTML `id` of the underlying radio input element. This is required if `label` is defined as a non-empty string.
16
- * @default A uniquely generated id by uuid()
16
+ * @default A uniquely generated id
17
17
  */
18
18
  id?: string;
19
19
  /**
@@ -13,7 +13,7 @@ export interface SwitchProps extends Themeable {
13
13
  disabled?: boolean;
14
14
  /**
15
15
  * The HTML `id` of the underlying checkbox input element.
16
- * @default A uniquely generated id by uuid()
16
+ * @default A uniquely generated id
17
17
  */
18
18
  id?: string;
19
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useTooltip.d.ts","sourceRoot":"","sources":["../../../../tooltip/lib/useTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAiD/B;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,EACtD,IAAc,EACd,SAAc,EACd,SAAe,EACf,SAAe,GAChB,GAAE;IACD;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACf;IA4CF,2EAA2E;;;;;;;;;;IAY3E,uDAAuD;;;;;;IAMvD,iEAAiE;;;;;;;EAQpE"}
1
+ {"version":3,"file":"useTooltip.d.ts","sourceRoot":"","sources":["../../../../tooltip/lib/useTooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAkD/B;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,EACtD,IAAc,EACd,SAAc,EACd,SAAe,EACf,SAAe,GAChB,GAAE;IACD;;;;;;;;;;;;;;;OAeG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACf;IA6CF,2EAA2E;;;;;;;;;;IAY3E,uDAAuD;;;;;;IAMvD,iEAAiE;;;;;;;EAQpE"}