@workday/canvas-kit-preview-react 16.0.0-alpha.0474-next.0 → 16.0.0-alpha.0476-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 (65) hide show
  1. package/dist/commonjs/index.d.ts +1 -0
  2. package/dist/commonjs/index.d.ts.map +1 -1
  3. package/dist/commonjs/index.js +1 -0
  4. package/dist/commonjs/tabs/index.d.ts +7 -0
  5. package/dist/commonjs/tabs/index.d.ts.map +1 -0
  6. package/dist/commonjs/tabs/index.js +22 -0
  7. package/dist/commonjs/tabs/lib/Tabs.d.ts +9555 -0
  8. package/dist/commonjs/tabs/lib/Tabs.d.ts.map +1 -0
  9. package/dist/commonjs/tabs/lib/Tabs.js +127 -0
  10. package/dist/commonjs/tabs/lib/TabsItem.d.ts +719 -0
  11. package/dist/commonjs/tabs/lib/TabsItem.d.ts.map +1 -0
  12. package/dist/commonjs/tabs/lib/TabsItem.js +50 -0
  13. package/dist/commonjs/tabs/lib/TabsList.d.ts +998 -0
  14. package/dist/commonjs/tabs/lib/TabsList.d.ts.map +1 -0
  15. package/dist/commonjs/tabs/lib/TabsList.js +121 -0
  16. package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts +650 -0
  17. package/dist/commonjs/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
  18. package/dist/commonjs/tabs/lib/TabsOverflowButton.js +28 -0
  19. package/dist/commonjs/tabs/lib/TabsPanel.d.ts +654 -0
  20. package/dist/commonjs/tabs/lib/TabsPanel.d.ts.map +1 -0
  21. package/dist/commonjs/tabs/lib/TabsPanel.js +42 -0
  22. package/dist/commonjs/tabs/lib/TabsPanels.d.ts +320 -0
  23. package/dist/commonjs/tabs/lib/TabsPanels.d.ts.map +1 -0
  24. package/dist/commonjs/tabs/lib/TabsPanels.js +13 -0
  25. package/dist/commonjs/tabs/lib/useTabsModel.d.ts +5924 -0
  26. package/dist/commonjs/tabs/lib/useTabsModel.d.ts.map +1 -0
  27. package/dist/commonjs/tabs/lib/useTabsModel.js +128 -0
  28. package/dist/es6/index.d.ts +1 -0
  29. package/dist/es6/index.d.ts.map +1 -1
  30. package/dist/es6/index.js +1 -0
  31. package/dist/es6/tabs/index.d.ts +7 -0
  32. package/dist/es6/tabs/index.d.ts.map +1 -0
  33. package/dist/es6/tabs/index.js +6 -0
  34. package/dist/es6/tabs/lib/Tabs.d.ts +9555 -0
  35. package/dist/es6/tabs/lib/Tabs.d.ts.map +1 -0
  36. package/dist/es6/tabs/lib/Tabs.js +124 -0
  37. package/dist/es6/tabs/lib/TabsItem.d.ts +719 -0
  38. package/dist/es6/tabs/lib/TabsItem.d.ts.map +1 -0
  39. package/dist/es6/tabs/lib/TabsItem.js +47 -0
  40. package/dist/es6/tabs/lib/TabsList.d.ts +998 -0
  41. package/dist/es6/tabs/lib/TabsList.d.ts.map +1 -0
  42. package/dist/es6/tabs/lib/TabsList.js +95 -0
  43. package/dist/es6/tabs/lib/TabsOverflowButton.d.ts +650 -0
  44. package/dist/es6/tabs/lib/TabsOverflowButton.d.ts.map +1 -0
  45. package/dist/es6/tabs/lib/TabsOverflowButton.js +25 -0
  46. package/dist/es6/tabs/lib/TabsPanel.d.ts +654 -0
  47. package/dist/es6/tabs/lib/TabsPanel.d.ts.map +1 -0
  48. package/dist/es6/tabs/lib/TabsPanel.js +36 -0
  49. package/dist/es6/tabs/lib/TabsPanels.d.ts +320 -0
  50. package/dist/es6/tabs/lib/TabsPanels.d.ts.map +1 -0
  51. package/dist/es6/tabs/lib/TabsPanels.js +10 -0
  52. package/dist/es6/tabs/lib/useTabsModel.d.ts +5924 -0
  53. package/dist/es6/tabs/lib/useTabsModel.d.ts.map +1 -0
  54. package/dist/es6/tabs/lib/useTabsModel.js +122 -0
  55. package/index.ts +1 -0
  56. package/package.json +4 -4
  57. package/tabs/index.ts +7 -0
  58. package/tabs/lib/Tabs.tsx +135 -0
  59. package/tabs/lib/TabsItem.tsx +274 -0
  60. package/tabs/lib/TabsList.tsx +181 -0
  61. package/tabs/lib/TabsOverflowButton.tsx +61 -0
  62. package/tabs/lib/TabsPanel.tsx +77 -0
  63. package/tabs/lib/TabsPanels.tsx +20 -0
  64. package/tabs/lib/useTabsModel.tsx +141 -0
  65. package/tabs/package.json +6 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTabsModel.d.ts","sourceRoot":"","sources":["../../../../tabs/lib/useTabsModel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAU1B;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,YAAY;IAGrB;;;;;OAKG;;IAEH;;;OAGG;;IAEH;;;;OAIG;;IAEH;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAoCH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QARH;;WAEG;;QAEH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Q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"}
@@ -0,0 +1,128 @@
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
+ exports.useTabsModel = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const collection_1 = require("@workday/canvas-kit-react/collection");
9
+ const common_1 = require("@workday/canvas-kit-react/common");
10
+ const menu_1 = require("@workday/canvas-kit-react/menu");
11
+ /**
12
+ * The TabsModel extends the [Collection
13
+ * System](/get-started/for-developers/guides/collection-api/). Tabs have tab items and
14
+ * panels. Tabs can be overflowed if there isn't enough room to render and will overflow to a
15
+ * {@link MenuModel} sub-model.
16
+ *
17
+ * ```tsx
18
+ * const model = useTabsModel({
19
+ * onSelect(data) {
20
+ * console.log('Selected Tab', data)
21
+ * }
22
+ * })
23
+ *
24
+ * <Tabs model={model}>{Tabs child components}</Tabs>
25
+ * ```
26
+ */
27
+ exports.useTabsModel = (0, common_1.createModelHook)({
28
+ defaultConfig: {
29
+ ...collection_1.useOverflowListModel.defaultConfig,
30
+ /**
31
+ * Optional id for the whole `Tabs` group. The `aria-controls` of the `Tab.Item` and `id` of the
32
+ * `Tab.Panel` will automatically be derived from this id. If not provided, a unique id will be
33
+ * created.
34
+ * @default useUniqueId()
35
+ */
36
+ id: '',
37
+ /**
38
+ * An initially selected tab. This value must match the `name` of the `Tab.Item` component. If
39
+ * not provided, the first tab will be selected.
40
+ */
41
+ initialTab: '',
42
+ /**
43
+ * The default Tabs sub-components only handle rendering of tabs in a horizontal orientation, but
44
+ * the sub-components could be replaced to handle vertical orientations.
45
+ * @default 'horizontal'
46
+ */
47
+ orientation: 'horizontal',
48
+ /**
49
+ * The variant of the Tabs.
50
+ * @default 'filled'
51
+ */
52
+ variant: 'filled',
53
+ menuConfig: {},
54
+ },
55
+ requiredConfig: collection_1.useOverflowListModel.requiredConfig,
56
+ contextOverride: collection_1.useOverflowListModel.Context,
57
+ })(config => {
58
+ var _a;
59
+ const initialSelectedRef = react_1.default.useRef(config.initialTab);
60
+ const getId = config.getId || collection_1.defaultGetId;
61
+ const modality = (0, common_1.useModalityType)();
62
+ const model = (0, collection_1.useOverflowListModel)(collection_1.useOverflowListModel.mergeConfig(config, {
63
+ shouldCalculateOverflow: modality !== 'touch',
64
+ orientation: config.orientation || 'horizontal',
65
+ onRegisterItem(data) {
66
+ if (!initialSelectedRef.current) {
67
+ initialSelectedRef.current = data.id;
68
+ events.select({ id: initialSelectedRef.current });
69
+ }
70
+ },
71
+ initialSelectedIds: config.initialTab
72
+ ? [config.initialTab]
73
+ : ((_a = config.items) === null || _a === void 0 ? void 0 : _a.length)
74
+ ? [getId(config.items[0])]
75
+ : [],
76
+ shouldVirtualize: false,
77
+ }));
78
+ const panels = (0, collection_1.useListModel)();
79
+ const state = {
80
+ ...model.state,
81
+ getId,
82
+ orientation: config.orientation || 'horizontal',
83
+ /**
84
+ * A list of panels. Uses `ListModel`
85
+ */
86
+ panels: panels.state.items,
87
+ /**
88
+ * A React.Ref of the current item index. A ref is used to allow for updating outside the normal
89
+ * React state cycle to ensure accurate index tracking as items are registered within the same
90
+ * state setting phase.
91
+ */
92
+ panelIndexRef: panels.state.indexRef,
93
+ variant: config.variant || 'filled',
94
+ };
95
+ const overflowItems = react_1.default.useMemo(() => config.items ? config.items.filter(item => state.hiddenIds.includes(getId(item))) : undefined,
96
+ // eslint-disable-next-line react-hooks/exhaustive-deps
97
+ [state.hiddenIds, config.items]);
98
+ const events = {
99
+ ...model.events,
100
+ /**
101
+ * This event registers panels with state.panels. Called when a panel is mounted.
102
+ */
103
+ registerPanel: panels.events.registerItem,
104
+ /**
105
+ * This event unregisters panels with state.panels. Called when a panel is unmounted.
106
+ */
107
+ unregisterPanel: panels.events.unregisterItem,
108
+ };
109
+ const menu = (0, menu_1.useMenuModel)(menu_1.useMenuModel.mergeConfig(config.menuConfig, {
110
+ id: `menu-${model.state.id}`,
111
+ items: overflowItems,
112
+ nonInteractiveIds: state.nonInteractiveIds.filter(key => !state.hiddenIds.includes(key)),
113
+ onSelect(data) {
114
+ menu.events.hide();
115
+ events.select(data);
116
+ },
117
+ onShow() {
118
+ // Always select the first item when the menu is opened
119
+ menu.events.goToFirst();
120
+ },
121
+ }));
122
+ return {
123
+ ...model,
124
+ state,
125
+ events,
126
+ menu,
127
+ };
128
+ });
@@ -7,5 +7,6 @@ export * from './radio';
7
7
  export * from './side-panel';
8
8
  export * from './status-indicator';
9
9
  export * from './switch';
10
+ export * from './tabs';
10
11
  export * from './version';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC"}
package/dist/es6/index.js CHANGED
@@ -7,4 +7,5 @@ export * from './radio';
7
7
  export * from './side-panel';
8
8
  export * from './status-indicator';
9
9
  export * from './switch';
10
+ export * from './tabs';
10
11
  export * from './version';
@@ -0,0 +1,7 @@
1
+ export * from './lib/Tabs';
2
+ export * from './lib/useTabsModel';
3
+ export * from './lib/TabsItem';
4
+ export * from './lib/TabsList';
5
+ export * from './lib/TabsOverflowButton';
6
+ export * from './lib/TabsPanel';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../tabs/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AAEnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './lib/Tabs';
2
+ export * from './lib/useTabsModel';
3
+ export * from './lib/TabsItem';
4
+ export * from './lib/TabsList';
5
+ export * from './lib/TabsOverflowButton';
6
+ export * from './lib/TabsPanel';