@pingux/astro 2.155.0-alpha.0 → 2.155.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.
- package/lib/cjs/components/Button/Buttons.styles.d.ts +859 -0
- package/lib/cjs/components/Button/Buttons.styles.js +17 -1
- package/lib/cjs/components/SearchNav/MoreItemsPopover.d.ts +4 -0
- package/lib/cjs/components/SearchNav/MoreItemsPopover.js +74 -0
- package/lib/cjs/components/SearchNav/SearchNav.chromatic.stories.d.ts +6 -0
- package/lib/cjs/components/SearchNav/SearchNav.chromatic.stories.js +101 -0
- package/lib/cjs/components/SearchNav/SearchNav.d.ts +13 -0
- package/lib/cjs/components/SearchNav/SearchNav.js +218 -0
- package/lib/cjs/components/SearchNav/SearchNav.stories.d.ts +6 -0
- package/lib/cjs/components/SearchNav/SearchNav.stories.js +76 -0
- package/lib/cjs/components/SearchNav/SearchNav.styles.d.ts +33 -0
- package/lib/cjs/components/SearchNav/SearchNav.styles.js +51 -0
- package/lib/cjs/components/SearchNav/SearchNav.test.d.ts +1 -0
- package/lib/cjs/components/SearchNav/SearchNav.test.js +610 -0
- package/lib/cjs/components/SearchNav/SearchNavTab.d.ts +4 -0
- package/lib/cjs/components/SearchNav/SearchNavTab.js +69 -0
- package/lib/cjs/components/SearchNav/index.d.ts +1 -0
- package/lib/cjs/components/SearchNav/index.js +14 -0
- package/lib/cjs/components/Text/Text.styles.d.ts +2548 -0
- package/lib/cjs/components/Text/Text.styles.js +23 -1
- package/lib/cjs/index.d.ts +2 -0
- package/lib/cjs/index.js +45 -26
- package/lib/cjs/styles/colors.d.ts +6 -0
- package/lib/cjs/styles/colors.js +4 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/colors.d.ts +1 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/colors.js +2 -1
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/buttons.d.ts +9 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/buttons.js +10 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/text.d.ts +12 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/text.js +12 -0
- package/lib/cjs/styles/themes/next-gen/convertedComponentList.js +1 -1
- package/lib/cjs/styles/themes/next-gen/next-gen.d.ts +15 -0
- package/lib/cjs/styles/themes/next-gen/variants/button.d.ts +9 -0
- package/lib/cjs/styles/themes/next-gen/variants/button.js +10 -0
- package/lib/cjs/styles/themes/next-gen/variants/searchNav.d.ts +6 -0
- package/lib/cjs/styles/themes/next-gen/variants/searchNav.js +14 -0
- package/lib/cjs/styles/themes/next-gen/variants/text.d.ts +1 -0
- package/lib/cjs/styles/themes/next-gen/variants/text.js +2 -1
- package/lib/cjs/styles/themes/next-gen/variants/variants.d.ts +5 -0
- package/lib/cjs/styles/themes/next-gen/variants/variants.js +2 -0
- package/lib/cjs/styles/variants/variants.js +2 -0
- package/lib/cjs/types/searchNav.d.ts +49 -0
- package/lib/cjs/types/searchNav.js +6 -0
- package/lib/components/Button/Buttons.styles.js +18 -2
- package/lib/components/SearchNav/MoreItemsPopover.js +60 -0
- package/lib/components/SearchNav/SearchNav.chromatic.stories.js +86 -0
- package/lib/components/SearchNav/SearchNav.js +203 -0
- package/lib/components/SearchNav/SearchNav.stories.js +61 -0
- package/lib/components/SearchNav/SearchNav.styles.js +43 -0
- package/lib/components/SearchNav/SearchNav.test.js +601 -0
- package/lib/components/SearchNav/SearchNavTab.js +55 -0
- package/lib/components/SearchNav/index.js +1 -0
- package/lib/components/Text/Text.styles.js +21 -1
- package/lib/index.js +2 -0
- package/lib/styles/colors.js +4 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/colors.js +2 -1
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/buttons.js +10 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/text.js +12 -0
- package/lib/styles/themes/next-gen/convertedComponentList.js +1 -1
- package/lib/styles/themes/next-gen/variants/button.js +10 -0
- package/lib/styles/themes/next-gen/variants/searchNav.js +6 -0
- package/lib/styles/themes/next-gen/variants/text.js +2 -1
- package/lib/styles/themes/next-gen/variants/variants.js +2 -0
- package/lib/styles/variants/variants.js +2 -0
- package/lib/types/searchNav.js +1 -0
- package/package.json +1 -1
|
@@ -295,6 +295,21 @@ var exampleText = _objectSpread(_objectSpread({}, base), {}, {
|
|
|
295
295
|
var paginationMenu = _objectSpread(_objectSpread({}, link), {}, {
|
|
296
296
|
fontWeight: 0
|
|
297
297
|
});
|
|
298
|
+
var tabLabelButton = _objectSpread(_objectSpread({}, _Text.searchNavTabLabel), {}, {
|
|
299
|
+
backgroundColor: 'transparent',
|
|
300
|
+
mb: '10px',
|
|
301
|
+
p: '0px',
|
|
302
|
+
borderImage: 'none',
|
|
303
|
+
display: 'inline-flex',
|
|
304
|
+
alignItems: 'center',
|
|
305
|
+
'&.is-hovered': {
|
|
306
|
+
color: 'active',
|
|
307
|
+
cursor: 'pointer'
|
|
308
|
+
},
|
|
309
|
+
'&.is-focused': _objectSpread(_objectSpread({}, defaultFocus), {}, {
|
|
310
|
+
borderRadius: '4px'
|
|
311
|
+
})
|
|
312
|
+
});
|
|
298
313
|
var _default = {
|
|
299
314
|
colorBlock: colorBlock,
|
|
300
315
|
colorBlockPrimary: colorBlockPrimary,
|
|
@@ -321,6 +336,7 @@ var _default = {
|
|
|
321
336
|
quiet: quiet,
|
|
322
337
|
success: success,
|
|
323
338
|
withIcon: withIcon,
|
|
324
|
-
filter: filter
|
|
339
|
+
filter: filter,
|
|
340
|
+
searchNavTabLabel: tabLabelButton
|
|
325
341
|
};
|
|
326
342
|
exports["default"] = _default;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
5
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
7
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
8
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
9
|
+
value: true
|
|
10
|
+
});
|
|
11
|
+
exports["default"] = void 0;
|
|
12
|
+
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
13
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
14
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
15
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
16
|
+
var _ChevronDownIcon = _interopRequireDefault(require("@pingux/mdi-react/ChevronDownIcon"));
|
|
17
|
+
var _ChevronUpIcon = _interopRequireDefault(require("@pingux/mdi-react/ChevronUpIcon"));
|
|
18
|
+
var _index = require("../../index");
|
|
19
|
+
var _react2 = require("@emotion/react");
|
|
20
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
21
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
22
|
+
var MoreItemsPopover = function MoreItemsPopover(props) {
|
|
23
|
+
var buttonRef = props.buttonRef,
|
|
24
|
+
items = props.items,
|
|
25
|
+
moreButtonText = props.moreButtonText,
|
|
26
|
+
onOpenChange = props.onOpenChange,
|
|
27
|
+
popoverButtonProps = props.popoverButtonProps,
|
|
28
|
+
popoverMenuProps = props.popoverMenuProps,
|
|
29
|
+
popoverProps = props.popoverProps,
|
|
30
|
+
setSelectedKey = props.setSelectedKey,
|
|
31
|
+
tabProps = props.tabProps;
|
|
32
|
+
var _useState = (0, _react.useState)(false),
|
|
33
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
34
|
+
isOpen = _useState2[0],
|
|
35
|
+
setIsOpen = _useState2[1];
|
|
36
|
+
(0, _react.useEffect)(function () {
|
|
37
|
+
if (onOpenChange) {
|
|
38
|
+
onOpenChange(isOpen);
|
|
39
|
+
}
|
|
40
|
+
}, [isOpen]);
|
|
41
|
+
return (0, _react2.jsx)(_index.Box, (0, _extends2["default"])({
|
|
42
|
+
role: "listitem",
|
|
43
|
+
variant: "searchNav.tab",
|
|
44
|
+
isRow: true,
|
|
45
|
+
alignItems: "center",
|
|
46
|
+
ml: "sm"
|
|
47
|
+
}, tabProps), (0, _react2.jsx)(_index.PopoverMenu, (0, _extends2["default"])({}, popoverProps, {
|
|
48
|
+
isOpen: isOpen,
|
|
49
|
+
onOpenChange: setIsOpen
|
|
50
|
+
}), (0, _react2.jsx)(_index.Button, (0, _extends2["default"])({
|
|
51
|
+
tabIndex: 0,
|
|
52
|
+
variant: "searchNavTabLabel",
|
|
53
|
+
ref: buttonRef
|
|
54
|
+
}, popoverButtonProps), moreButtonText, (0, _react2.jsx)(_index.Icon, {
|
|
55
|
+
icon: isOpen ? _ChevronUpIcon["default"] : _ChevronDownIcon["default"],
|
|
56
|
+
ml: "2px",
|
|
57
|
+
mt: "2px",
|
|
58
|
+
size: 13,
|
|
59
|
+
title: {
|
|
60
|
+
name: 'Add Circle Icon'
|
|
61
|
+
}
|
|
62
|
+
})), (0, _react2.jsx)(_index.Menu, (0, _extends2["default"])({
|
|
63
|
+
onAction: function onAction(e) {
|
|
64
|
+
setSelectedKey(e);
|
|
65
|
+
}
|
|
66
|
+
}, popoverMenuProps), (0, _map["default"])(items).call(items, function (item) {
|
|
67
|
+
return (0, _react2.jsx)(_index.Item, {
|
|
68
|
+
key: item.key,
|
|
69
|
+
textValue: item.text
|
|
70
|
+
}, item.text);
|
|
71
|
+
}))));
|
|
72
|
+
};
|
|
73
|
+
var _default = MoreItemsPopover;
|
|
74
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
5
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
7
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
8
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
9
|
+
value: true
|
|
10
|
+
});
|
|
11
|
+
exports["default"] = exports.Default = void 0;
|
|
12
|
+
var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
|
|
13
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
var _index = require("../../index");
|
|
16
|
+
var _react2 = require("@emotion/react");
|
|
17
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
18
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
19
|
+
var _default = {
|
|
20
|
+
title: 'Chromatic Only Search Nav Responsive'
|
|
21
|
+
};
|
|
22
|
+
exports["default"] = _default;
|
|
23
|
+
var items = [{
|
|
24
|
+
text: 'Overview',
|
|
25
|
+
key: 'Overview',
|
|
26
|
+
children: (0, _react2.jsx)(_index.Text, null, "Overview")
|
|
27
|
+
}, {
|
|
28
|
+
text: 'Configuration',
|
|
29
|
+
key: 'Configuration',
|
|
30
|
+
children: (0, _react2.jsx)(_index.Text, null, "Configuration")
|
|
31
|
+
}, {
|
|
32
|
+
text: 'Resources',
|
|
33
|
+
key: 'Resources',
|
|
34
|
+
children: (0, _react2.jsx)(_index.Text, null, "Resources")
|
|
35
|
+
}, {
|
|
36
|
+
text: 'Policies',
|
|
37
|
+
key: 'Policies',
|
|
38
|
+
children: (0, _react2.jsx)(_index.Text, null, "Policies")
|
|
39
|
+
}, {
|
|
40
|
+
text: 'Attribute Mappings',
|
|
41
|
+
key: 'Attribute Mappings',
|
|
42
|
+
children: (0, _react2.jsx)(_index.Text, null, "Attribute body")
|
|
43
|
+
}, {
|
|
44
|
+
text: 'Access',
|
|
45
|
+
key: 'Access',
|
|
46
|
+
children: (0, _react2.jsx)(_index.Text, null, "Access")
|
|
47
|
+
}, {
|
|
48
|
+
text: 'Integration',
|
|
49
|
+
key: 'Integration',
|
|
50
|
+
children: (0, _react2.jsx)(_index.Text, null, "Integration")
|
|
51
|
+
}];
|
|
52
|
+
var Default = function Default() {
|
|
53
|
+
var _items$find, _items$find2, _items$find3;
|
|
54
|
+
var _useState = (0, _react.useState)('Access'),
|
|
55
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
56
|
+
selectedKey = _useState2[0],
|
|
57
|
+
setSelectedKey = _useState2[1];
|
|
58
|
+
var setSelectedKeyCallback = function setSelectedKeyCallback(e) {
|
|
59
|
+
setSelectedKey(e);
|
|
60
|
+
};
|
|
61
|
+
return (0, _react2.jsx)(_index.Box, {
|
|
62
|
+
gap: "md"
|
|
63
|
+
}, (0, _react2.jsx)(_index.Box, {
|
|
64
|
+
maxWidth: "600px"
|
|
65
|
+
}, (0, _react2.jsx)(_index.SearchNav, {
|
|
66
|
+
items: items,
|
|
67
|
+
selectedKey: selectedKey,
|
|
68
|
+
setSelectedKey: function setSelectedKey(e) {
|
|
69
|
+
return setSelectedKeyCallback(e);
|
|
70
|
+
}
|
|
71
|
+
}), (0, _react2.jsx)(_index.Box, {
|
|
72
|
+
p: "sm"
|
|
73
|
+
}, (_items$find = (0, _find["default"])(items).call(items, function (item) {
|
|
74
|
+
return item.key === selectedKey;
|
|
75
|
+
})) === null || _items$find === void 0 ? void 0 : _items$find.children)), (0, _react2.jsx)(_index.Box, {
|
|
76
|
+
maxWidth: "400px"
|
|
77
|
+
}, (0, _react2.jsx)(_index.SearchNav, {
|
|
78
|
+
items: items,
|
|
79
|
+
selectedKey: selectedKey,
|
|
80
|
+
setSelectedKey: function setSelectedKey(e) {
|
|
81
|
+
return setSelectedKeyCallback(e);
|
|
82
|
+
}
|
|
83
|
+
}), (0, _react2.jsx)(_index.Box, {
|
|
84
|
+
p: "sm"
|
|
85
|
+
}, (_items$find2 = (0, _find["default"])(items).call(items, function (item) {
|
|
86
|
+
return item.key === selectedKey;
|
|
87
|
+
})) === null || _items$find2 === void 0 ? void 0 : _items$find2.children)), (0, _react2.jsx)(_index.Box, {
|
|
88
|
+
maxWidth: "200px"
|
|
89
|
+
}, (0, _react2.jsx)(_index.SearchNav, {
|
|
90
|
+
items: items,
|
|
91
|
+
selectedKey: selectedKey,
|
|
92
|
+
setSelectedKey: function setSelectedKey(e) {
|
|
93
|
+
return setSelectedKeyCallback(e);
|
|
94
|
+
}
|
|
95
|
+
}), (0, _react2.jsx)(_index.Box, {
|
|
96
|
+
p: "sm"
|
|
97
|
+
}, (_items$find3 = (0, _find["default"])(items).call(items, function (item) {
|
|
98
|
+
return item.key === selectedKey;
|
|
99
|
+
})) === null || _items$find3 === void 0 ? void 0 : _items$find3.children)));
|
|
100
|
+
};
|
|
101
|
+
exports.Default = Default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SearchNavProps } from '../../types/searchNav';
|
|
3
|
+
/**
|
|
4
|
+
* 1. Measures the width of all items based on their refs.
|
|
5
|
+
*/
|
|
6
|
+
export declare const measureItemWidths: (items: any, measurementRefs: any) => {};
|
|
7
|
+
/**
|
|
8
|
+
* 2. Calculates the number of visible items based on available container width
|
|
9
|
+
* and item widths.
|
|
10
|
+
*/
|
|
11
|
+
export declare const calculateVisibleCount: (containerWidth: any, moreButtonWidth: any, orderedItems: any, itemWidths: any) => number;
|
|
12
|
+
declare const SearchNav: React.ForwardRefExoticComponent<SearchNavProps & React.RefAttributes<HTMLElement>>;
|
|
13
|
+
export default SearchNav;
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
5
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
7
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
8
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
9
|
+
value: true
|
|
10
|
+
});
|
|
11
|
+
exports.measureItemWidths = exports["default"] = exports.calculateVisibleCount = void 0;
|
|
12
|
+
var _from = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/array/from"));
|
|
13
|
+
var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
|
|
14
|
+
var _findIndex = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find-index"));
|
|
15
|
+
var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
|
|
16
|
+
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
17
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
18
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
19
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
|
|
20
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
21
|
+
var _utils = require("@react-aria/utils");
|
|
22
|
+
var _hooks = require("../../hooks");
|
|
23
|
+
var _useProgressiveState3 = _interopRequireDefault(require("../../hooks/useProgressiveState"));
|
|
24
|
+
var _index = require("../../index");
|
|
25
|
+
var _MoreItemsPopover = _interopRequireDefault(require("./MoreItemsPopover"));
|
|
26
|
+
var _SearchNavTab = _interopRequireDefault(require("./SearchNavTab"));
|
|
27
|
+
var _react2 = require("@emotion/react");
|
|
28
|
+
var _excluded = ["defaultSelectedKey", "items", "labelProps", "moreButtonText", "onSelectionChange", "onOpenChange", "popoverButtonProps", "popoverMenuProps", "popoverProps", "rowProps", "selectedKey", "setSelectedKey", "tabProps"];
|
|
29
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
30
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
+
var TAB_MARGIN_WIDTH = 10; // Example constant value
|
|
32
|
+
var MORE_BUTTON_WIDTH = 60;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* 1. Measures the width of all items based on their refs.
|
|
36
|
+
*/
|
|
37
|
+
var measureItemWidths = function measureItemWidths(items, measurementRefs) {
|
|
38
|
+
var widths = {};
|
|
39
|
+
for (var i = 0; i < items.length; i += 1) {
|
|
40
|
+
var item = items[i];
|
|
41
|
+
var itemRef = measurementRefs.current[item.key];
|
|
42
|
+
if (itemRef) {
|
|
43
|
+
widths[item.key] = itemRef.offsetWidth;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return widths;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* 2. Calculates the number of visible items based on available container width
|
|
51
|
+
* and item widths.
|
|
52
|
+
*/
|
|
53
|
+
exports.measureItemWidths = measureItemWidths;
|
|
54
|
+
var calculateVisibleCount = function calculateVisibleCount(containerWidth, moreButtonWidth, orderedItems, itemWidths) {
|
|
55
|
+
var totalItemsWidth = 0;
|
|
56
|
+
var visibleCount = 0;
|
|
57
|
+
for (var i = 0; i < orderedItems.length; i += 1) {
|
|
58
|
+
var item = orderedItems[i];
|
|
59
|
+
var itemWidth = itemWidths[item.key] + TAB_MARGIN_WIDTH;
|
|
60
|
+
if (itemWidth) {
|
|
61
|
+
var itemsRemaining = orderedItems.length - (visibleCount + 1);
|
|
62
|
+
// Only require space for 'more' button if there are items that will be hidden
|
|
63
|
+
var requiredSpaceForMoreButton = itemsRemaining > 0 ? moreButtonWidth : 0;
|
|
64
|
+
var widthNeeded = totalItemsWidth + itemWidth + requiredSpaceForMoreButton;
|
|
65
|
+
if (widthNeeded > containerWidth) {
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
totalItemsWidth += itemWidth;
|
|
69
|
+
visibleCount += 1;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return visibleCount;
|
|
73
|
+
};
|
|
74
|
+
exports.calculateVisibleCount = calculateVisibleCount;
|
|
75
|
+
var SearchNav = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
76
|
+
var defaultSelectedKey = props.defaultSelectedKey,
|
|
77
|
+
items = props.items,
|
|
78
|
+
labelProps = props.labelProps,
|
|
79
|
+
_props$moreButtonText = props.moreButtonText,
|
|
80
|
+
moreButtonText = _props$moreButtonText === void 0 ? 'More' : _props$moreButtonText,
|
|
81
|
+
onSelectionChange = props.onSelectionChange,
|
|
82
|
+
onOpenChange = props.onOpenChange,
|
|
83
|
+
popoverButtonProps = props.popoverButtonProps,
|
|
84
|
+
popoverMenuProps = props.popoverMenuProps,
|
|
85
|
+
popoverProps = props.popoverProps,
|
|
86
|
+
rowProps = props.rowProps,
|
|
87
|
+
selectedKeyProp = props.selectedKey,
|
|
88
|
+
setSelectedKeyProp = props.setSelectedKey,
|
|
89
|
+
tabProps = props.tabProps,
|
|
90
|
+
others = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
91
|
+
var _useProgressiveState = (0, _useProgressiveState3["default"])(selectedKeyProp, defaultSelectedKey),
|
|
92
|
+
_useProgressiveState2 = (0, _slicedToArray2["default"])(_useProgressiveState, 2),
|
|
93
|
+
selectedKey = _useProgressiveState2[0],
|
|
94
|
+
setSelectedKey = _useProgressiveState2[1];
|
|
95
|
+
var _useState = (0, _react.useState)((0, _from["default"])(items)),
|
|
96
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
97
|
+
orderedItems = _useState2[0],
|
|
98
|
+
setOrderedItems = _useState2[1];
|
|
99
|
+
var buttonRef = (0, _react.useRef)(null);
|
|
100
|
+
var measurementRefs = (0, _react.useRef)({});
|
|
101
|
+
var tabListRef = (0, _hooks.useLocalOrForwardRef)(ref);
|
|
102
|
+
var _useState3 = (0, _react.useState)(items.length),
|
|
103
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
104
|
+
numVisibleItems = _useState4[0],
|
|
105
|
+
setNumVisibleItems = _useState4[1];
|
|
106
|
+
(0, _react.useEffect)(function () {
|
|
107
|
+
setOrderedItems(items);
|
|
108
|
+
}, [items]);
|
|
109
|
+
var calculateVisibleItems = function calculateVisibleItems() {
|
|
110
|
+
var _buttonRef$current;
|
|
111
|
+
if (!tabListRef.current) return;
|
|
112
|
+
|
|
113
|
+
// Step 1: Measure (updates itemWidths ref in parent scope if needed, or returns new object)
|
|
114
|
+
var currentItemWidths = measureItemWidths(items, measurementRefs);
|
|
115
|
+
var containerWidth = tabListRef.current.offsetWidth;
|
|
116
|
+
var moreButtonWidth = ((_buttonRef$current = buttonRef.current) === null || _buttonRef$current === void 0 ? void 0 : _buttonRef$current.offsetWidth) || MORE_BUTTON_WIDTH;
|
|
117
|
+
|
|
118
|
+
// Step 2: Calculate visible count (pure logic)
|
|
119
|
+
var visibleCount = calculateVisibleCount(containerWidth, moreButtonWidth, orderedItems, currentItemWidths);
|
|
120
|
+
|
|
121
|
+
// Step 3: Update state
|
|
122
|
+
setNumVisibleItems(visibleCount);
|
|
123
|
+
};
|
|
124
|
+
(0, _utils.useResizeObserver)({
|
|
125
|
+
ref: tabListRef,
|
|
126
|
+
onResize: calculateVisibleItems
|
|
127
|
+
});
|
|
128
|
+
var visibleItems = (0, _react.useMemo)(function () {
|
|
129
|
+
return (0, _slice["default"])(orderedItems).call(orderedItems, 0, numVisibleItems);
|
|
130
|
+
}, [orderedItems, numVisibleItems]);
|
|
131
|
+
var hiddenItems = (0, _react.useMemo)(function () {
|
|
132
|
+
return (0, _slice["default"])(orderedItems).call(orderedItems, numVisibleItems);
|
|
133
|
+
}, [orderedItems, numVisibleItems]);
|
|
134
|
+
(0, _react.useEffect)(function () {
|
|
135
|
+
if (onSelectionChange) {
|
|
136
|
+
onSelectionChange(selectedKey);
|
|
137
|
+
}
|
|
138
|
+
}, [selectedKey]);
|
|
139
|
+
(0, _utils.useLayoutEffect)(function () {
|
|
140
|
+
calculateVisibleItems();
|
|
141
|
+
}, [items]);
|
|
142
|
+
var reorderTabs = function reorderTabs() {
|
|
143
|
+
var selectedIndex = (0, _findIndex["default"])(orderedItems).call(orderedItems, function (item) {
|
|
144
|
+
return item.key === selectedKey;
|
|
145
|
+
});
|
|
146
|
+
var isSelectedHidden = selectedIndex >= numVisibleItems;
|
|
147
|
+
if (isSelectedHidden && selectedIndex !== -1 && numVisibleItems > 0) {
|
|
148
|
+
var _context;
|
|
149
|
+
var newOrderedItems = (0, _concat["default"])(_context = []).call(_context, orderedItems);
|
|
150
|
+
var selectedItem = newOrderedItems[selectedIndex];
|
|
151
|
+
var displacedItem = newOrderedItems[numVisibleItems - 1];
|
|
152
|
+
newOrderedItems[numVisibleItems - 1] = selectedItem;
|
|
153
|
+
newOrderedItems[selectedIndex] = displacedItem;
|
|
154
|
+
setOrderedItems(newOrderedItems);
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
(0, _react.useEffect)(function () {
|
|
158
|
+
reorderTabs();
|
|
159
|
+
}, [selectedKey, numVisibleItems]);
|
|
160
|
+
var handleSelection = function handleSelection(key) {
|
|
161
|
+
setSelectedKey(key);
|
|
162
|
+
if (setSelectedKeyProp) {
|
|
163
|
+
setSelectedKeyProp(key);
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
return (0, _react2.jsx)(_index.Box, {
|
|
167
|
+
maxWidth: "100%",
|
|
168
|
+
role: "navigation"
|
|
169
|
+
}, (0, _react2.jsx)(_index.Box, (0, _extends2["default"])({
|
|
170
|
+
role: "list",
|
|
171
|
+
isRow: true,
|
|
172
|
+
ref: tabListRef,
|
|
173
|
+
alignItems: "center",
|
|
174
|
+
variant: "searchNav.list"
|
|
175
|
+
}, others, rowProps), (0, _map["default"])(visibleItems).call(visibleItems, function (item) {
|
|
176
|
+
return (0, _react2.jsx)(_SearchNavTab["default"], {
|
|
177
|
+
key: item.key,
|
|
178
|
+
item: item,
|
|
179
|
+
selectedKey: selectedKey,
|
|
180
|
+
setSelectedKey: handleSelection,
|
|
181
|
+
tabProps: tabProps,
|
|
182
|
+
labelProps: labelProps
|
|
183
|
+
});
|
|
184
|
+
}), hiddenItems.length > 0 && (0, _react2.jsx)(_MoreItemsPopover["default"], {
|
|
185
|
+
onOpenChange: onOpenChange,
|
|
186
|
+
items: hiddenItems,
|
|
187
|
+
setSelectedKey: handleSelection,
|
|
188
|
+
buttonRef: buttonRef,
|
|
189
|
+
tabProps: tabProps,
|
|
190
|
+
popoverProps: popoverProps,
|
|
191
|
+
popoverButtonProps: popoverButtonProps,
|
|
192
|
+
popoverMenuProps: popoverMenuProps,
|
|
193
|
+
moreButtonText: moreButtonText
|
|
194
|
+
})), (0, _react2.jsx)(_index.Box
|
|
195
|
+
// Off-screen positioning to allow measurement without affecting layout
|
|
196
|
+
, {
|
|
197
|
+
sx: {
|
|
198
|
+
position: 'absolute',
|
|
199
|
+
top: 0,
|
|
200
|
+
left: '-9999px',
|
|
201
|
+
overflow: 'hidden'
|
|
202
|
+
}
|
|
203
|
+
}, (0, _map["default"])(items).call(items, function (item) {
|
|
204
|
+
return (0, _react2.jsx)(_index.Box, {
|
|
205
|
+
sx: {
|
|
206
|
+
maxWidth: 'fit-content'
|
|
207
|
+
},
|
|
208
|
+
key: "".concat(item.key, "-box")
|
|
209
|
+
}, (0, _react2.jsx)(_index.Text, {
|
|
210
|
+
key: "hidden-".concat(item.key),
|
|
211
|
+
ref: function ref(el) {
|
|
212
|
+
measurementRefs.current[item.key] = el;
|
|
213
|
+
}
|
|
214
|
+
}, item.text));
|
|
215
|
+
})));
|
|
216
|
+
});
|
|
217
|
+
var _default = SearchNav;
|
|
218
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
5
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
7
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
8
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
9
|
+
value: true
|
|
10
|
+
});
|
|
11
|
+
exports["default"] = exports.Default = void 0;
|
|
12
|
+
var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
|
|
13
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
var _index = require("../../index");
|
|
16
|
+
var _SearchNav = _interopRequireDefault(require("./SearchNav"));
|
|
17
|
+
var _react2 = require("@emotion/react");
|
|
18
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
|
+
var _default = {
|
|
21
|
+
title: 'Components/SearchNav'
|
|
22
|
+
};
|
|
23
|
+
exports["default"] = _default;
|
|
24
|
+
var items = [{
|
|
25
|
+
text: 'Overview',
|
|
26
|
+
key: 'Overview',
|
|
27
|
+
children: (0, _react2.jsx)(_index.Text, null, "Overview")
|
|
28
|
+
}, {
|
|
29
|
+
text: 'Configuration',
|
|
30
|
+
key: 'Configuration',
|
|
31
|
+
children: (0, _react2.jsx)(_index.Text, null, "Configuration")
|
|
32
|
+
}, {
|
|
33
|
+
text: 'Resources',
|
|
34
|
+
key: 'Resources',
|
|
35
|
+
children: (0, _react2.jsx)(_index.Text, null, "Resources")
|
|
36
|
+
}, {
|
|
37
|
+
text: 'Policies',
|
|
38
|
+
key: 'Policies',
|
|
39
|
+
children: (0, _react2.jsx)(_index.Text, null, "Policies")
|
|
40
|
+
}, {
|
|
41
|
+
text: 'Attribute Mappings',
|
|
42
|
+
key: 'Attribute Mappings',
|
|
43
|
+
children: (0, _react2.jsx)(_index.Text, null, "Attribute body")
|
|
44
|
+
}, {
|
|
45
|
+
text: 'Access',
|
|
46
|
+
key: 'Access',
|
|
47
|
+
children: (0, _react2.jsx)(_index.Text, null, "Access")
|
|
48
|
+
}, {
|
|
49
|
+
text: 'Integration',
|
|
50
|
+
key: 'Integration',
|
|
51
|
+
children: (0, _react2.jsx)(_index.Text, null, "Integration")
|
|
52
|
+
}];
|
|
53
|
+
var Default = function Default() {
|
|
54
|
+
var _items$find;
|
|
55
|
+
var _useState = (0, _react.useState)('Policies'),
|
|
56
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
57
|
+
selectedKey = _useState2[0],
|
|
58
|
+
setSelectedKey = _useState2[1];
|
|
59
|
+
var setSelectedKeyCallback = function setSelectedKeyCallback(e) {
|
|
60
|
+
setSelectedKey(e);
|
|
61
|
+
};
|
|
62
|
+
return (0, _react2.jsx)(_index.Box, {
|
|
63
|
+
maxWidth: "600px"
|
|
64
|
+
}, (0, _react2.jsx)(_SearchNav["default"], {
|
|
65
|
+
items: items,
|
|
66
|
+
selectedKey: selectedKey,
|
|
67
|
+
setSelectedKey: function setSelectedKey(e) {
|
|
68
|
+
return setSelectedKeyCallback(e);
|
|
69
|
+
}
|
|
70
|
+
}), (0, _react2.jsx)(_index.Box, {
|
|
71
|
+
p: "sm"
|
|
72
|
+
}, (_items$find = (0, _find["default"])(items).call(items, function (item) {
|
|
73
|
+
return item.key === selectedKey;
|
|
74
|
+
})) === null || _items$find === void 0 ? void 0 : _items$find.children));
|
|
75
|
+
};
|
|
76
|
+
exports.Default = Default;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
tab: {
|
|
3
|
+
pt: string;
|
|
4
|
+
cursor: string;
|
|
5
|
+
alignItems: string;
|
|
6
|
+
display: string;
|
|
7
|
+
borderBottom: string;
|
|
8
|
+
outline: string;
|
|
9
|
+
marginBottom: string;
|
|
10
|
+
position: string;
|
|
11
|
+
zIndex: string;
|
|
12
|
+
'&.is-focused': {
|
|
13
|
+
'& > span': {
|
|
14
|
+
borderRadius: string;
|
|
15
|
+
outline: string;
|
|
16
|
+
outlineColor: string;
|
|
17
|
+
outlineOffset: string;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
'&.is-disabled': {
|
|
21
|
+
cursor: string;
|
|
22
|
+
};
|
|
23
|
+
'&.is-selected': {
|
|
24
|
+
borderBottomWidth: string;
|
|
25
|
+
borderBottomColor: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
list: {
|
|
29
|
+
borderBottom: string;
|
|
30
|
+
borderBottomColor: string;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
export default _default;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
|
|
4
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
|
|
5
|
+
var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
|
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
7
|
+
var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
|
|
8
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
|
|
9
|
+
var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
|
|
10
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
11
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
12
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
13
|
+
value: true
|
|
14
|
+
});
|
|
15
|
+
exports["default"] = void 0;
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
17
|
+
var _Buttons = require("../Button/Buttons.styles");
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
20
|
+
var tab = {
|
|
21
|
+
pt: 'md',
|
|
22
|
+
cursor: 'pointer',
|
|
23
|
+
alignItems: 'center',
|
|
24
|
+
display: 'inline-flex',
|
|
25
|
+
borderBottom: '2px solid transparent',
|
|
26
|
+
outline: 'none',
|
|
27
|
+
marginBottom: '-1px',
|
|
28
|
+
position: 'relative',
|
|
29
|
+
zIndex: '2',
|
|
30
|
+
'&.is-focused': {
|
|
31
|
+
'& > span': _objectSpread(_objectSpread({}, _Buttons.defaultFocus), {}, {
|
|
32
|
+
borderRadius: '4px'
|
|
33
|
+
})
|
|
34
|
+
},
|
|
35
|
+
'&.is-disabled': {
|
|
36
|
+
cursor: 'default'
|
|
37
|
+
},
|
|
38
|
+
'&.is-selected': {
|
|
39
|
+
borderBottomWidth: '2px',
|
|
40
|
+
borderBottomColor: 'active'
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
var list = {
|
|
44
|
+
borderBottom: '1px solid',
|
|
45
|
+
borderBottomColor: 'border.hairline'
|
|
46
|
+
};
|
|
47
|
+
var _default = {
|
|
48
|
+
tab: tab,
|
|
49
|
+
list: list
|
|
50
|
+
};
|
|
51
|
+
exports["default"] = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|