@semcore/accordion 5.36.0 → 5.36.1
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/CHANGELOG.md +12 -2
- package/lib/cjs/Accordion.js +55 -29
- package/lib/cjs/Accordion.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/cjs/style/accordion.shadow.css +2 -0
- package/lib/es6/Accordion.js +58 -31
- package/lib/es6/Accordion.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/es6/style/accordion.shadow.css +2 -0
- package/lib/types/index.d.ts +8 -3
- package/package.json +4 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
+
## [5.36.1] - 2024-06-26
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
|
|
9
|
+
- `Accordion.Item.Toggle` can have only `h*` tag, `h3` tag is default.
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- Flex component `Accordion.Item.ToggleButton` with role `button`.
|
|
14
|
+
|
|
5
15
|
## [5.36.0] - 2024-06-26
|
|
6
16
|
|
|
7
17
|
### Changed
|
|
@@ -851,12 +861,12 @@ CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangel
|
|
|
851
861
|
### Fixed
|
|
852
862
|
|
|
853
863
|
- Поправили вызов `onChange` для `Accordion`
|
|
854
|
-
- Исправлен транспайл цветовых переменных для стилей без префиксов (build.css)
|
|
864
|
+
- Исправлен транспайл цветовых переменных для стилей без префиксов (`build.css`)
|
|
855
865
|
|
|
856
866
|
### Added
|
|
857
867
|
|
|
858
868
|
- Добавлена адаптивность на маленьких экранах(<768px)
|
|
859
|
-
- Появилась возможность добавления различных стилистических тем через
|
|
869
|
+
- Появилась возможность добавления различных стилистических тем через CSS переменные
|
|
860
870
|
- Появилась возможность оптицонально подключать адаптивноссть
|
|
861
871
|
- Появилась возможность изолировать стили даже в пределах одной страницы
|
|
862
872
|
|
package/lib/cjs/Accordion.js
CHANGED
|
@@ -19,19 +19,20 @@ var _core = _interopRequireWildcard(require("@semcore/core"));
|
|
|
19
19
|
var _react = _interopRequireDefault(require("react"));
|
|
20
20
|
var _flexBox = require("@semcore/flex-box");
|
|
21
21
|
var _animation = require("@semcore/animation");
|
|
22
|
+
var _typography = require("@semcore/typography");
|
|
22
23
|
var _m = _interopRequireDefault(require("@semcore/icon/ChevronRight/m"));
|
|
23
24
|
var _l = _interopRequireDefault(require("@semcore/icon/ChevronRight/l"));
|
|
24
25
|
var _keyboardFocusEnhance = _interopRequireDefault(require("@semcore/utils/lib/enhances/keyboardFocusEnhance"));
|
|
25
26
|
var _uniqueID = _interopRequireDefault(require("@semcore/utils/lib/uniqueID"));
|
|
26
27
|
var _useCssVariable = require("@semcore/utils/lib/useCssVariable");
|
|
27
28
|
/*__reshadow-styles__:"./style/accordion.shadow.css"*/
|
|
28
|
-
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".
|
|
29
|
-
"__SItemToggle": "
|
|
30
|
-
"_keyboardFocused": "
|
|
31
|
-
"_tabIndex_-1": "_tabIndex_-
|
|
32
|
-
"_disabled": "
|
|
33
|
-
"__SItemChevron": "
|
|
34
|
-
"_selected": "
|
|
29
|
+
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SItemToggle_a1g6r_gg_{display:flex;align-items:center;position:relative;cursor:pointer;outline:0}.___SItemToggle_a1g6r_gg_.__keyboardFocused_a1g6r_gg_:not(._tabIndex_-1_a1g6r_gg_)::after{position:absolute;display:block;content:\"\";top:3px;right:3px;bottom:3px;left:3px;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));pointer-events:none;z-index:3}.___SItemToggle_a1g6r_gg_.__disabled_a1g6r_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default}.___SItemChevron_a1g6r_gg_{transform:rotate(0deg);transition:transform calc(var(--intergalactic-duration-accordion, 200)*1ms) ease-out;fill:var(--intergalactic-icon-primary-neutral, #6c6e79)}.___SItemChevron_a1g6r_gg_.__selected_a1g6r_gg_{transform:rotate(90deg)}@media (prefers-reduced-motion){.___SItemChevron_a1g6r_gg_{transition:none}}" /*__inner_css_end__*/, "a1g6r_gg_") /*__reshadow_css_end__*/, {
|
|
30
|
+
"__SItemToggle": "___SItemToggle_a1g6r_gg_",
|
|
31
|
+
"_keyboardFocused": "__keyboardFocused_a1g6r_gg_",
|
|
32
|
+
"_tabIndex_-1": "_tabIndex_-1_a1g6r_gg_",
|
|
33
|
+
"_disabled": "__disabled_a1g6r_gg_",
|
|
34
|
+
"__SItemChevron": "___SItemChevron_a1g6r_gg_",
|
|
35
|
+
"_selected": "__selected_a1g6r_gg_"
|
|
35
36
|
});
|
|
36
37
|
var RootAccordion = /*#__PURE__*/function (_Component) {
|
|
37
38
|
(0, _inherits2["default"])(RootAccordion, _Component);
|
|
@@ -65,8 +66,8 @@ var RootAccordion = /*#__PURE__*/function (_Component) {
|
|
|
65
66
|
}
|
|
66
67
|
}, {
|
|
67
68
|
key: "getItemProps",
|
|
68
|
-
value: function getItemProps(
|
|
69
|
-
var value =
|
|
69
|
+
value: function getItemProps(_ref8) {
|
|
70
|
+
var value = _ref8.value;
|
|
70
71
|
var _this$asProps = this.asProps,
|
|
71
72
|
selectedValue = _this$asProps.value,
|
|
72
73
|
duration = _this$asProps.duration;
|
|
@@ -127,7 +128,21 @@ var RootItem = /*#__PURE__*/function (_Component2) {
|
|
|
127
128
|
disabled: disabled,
|
|
128
129
|
onClick: disabled ? undefined : this.handleClick,
|
|
129
130
|
id: "igc-".concat(uid, "-").concat(value, "-toggle"),
|
|
130
|
-
|
|
131
|
+
tag: 'h3',
|
|
132
|
+
size: 300
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
}, {
|
|
136
|
+
key: "getToggleButtonProps",
|
|
137
|
+
value: function getToggleButtonProps() {
|
|
138
|
+
var _this$asProps3 = this.asProps,
|
|
139
|
+
value = _this$asProps3.value,
|
|
140
|
+
uid = _this$asProps3.uid,
|
|
141
|
+
selected = _this$asProps3.selected,
|
|
142
|
+
disabled = _this$asProps3.disabled;
|
|
143
|
+
return {
|
|
144
|
+
disabled: disabled,
|
|
145
|
+
id: "igc-".concat(uid, "-").concat(value, "-toggle-button"),
|
|
131
146
|
'aria-expanded': selected ? 'true' : 'false',
|
|
132
147
|
'aria-controls': "igc-".concat(uid, "-").concat(value, "-collapse")
|
|
133
148
|
};
|
|
@@ -135,25 +150,25 @@ var RootItem = /*#__PURE__*/function (_Component2) {
|
|
|
135
150
|
}, {
|
|
136
151
|
key: "getCollapseProps",
|
|
137
152
|
value: function getCollapseProps() {
|
|
138
|
-
var _this$
|
|
139
|
-
selected = _this$
|
|
140
|
-
uid = _this$
|
|
141
|
-
duration = _this$
|
|
142
|
-
value = _this$
|
|
153
|
+
var _this$asProps4 = this.asProps,
|
|
154
|
+
selected = _this$asProps4.selected,
|
|
155
|
+
uid = _this$asProps4.uid,
|
|
156
|
+
duration = _this$asProps4.duration,
|
|
157
|
+
value = _this$asProps4.value;
|
|
143
158
|
return {
|
|
144
159
|
selected: selected,
|
|
145
160
|
duration: duration,
|
|
146
161
|
id: "igc-".concat(uid, "-").concat(value, "-collapse"),
|
|
147
162
|
role: 'region',
|
|
148
|
-
'aria-labelledby': "igc-".concat(uid, "-").concat(value, "-toggle")
|
|
163
|
+
'aria-labelledby': "igc-".concat(uid, "-").concat(value, "-toggle-button")
|
|
149
164
|
};
|
|
150
165
|
}
|
|
151
166
|
}, {
|
|
152
167
|
key: "getChevronProps",
|
|
153
168
|
value: function getChevronProps() {
|
|
154
|
-
var _this$
|
|
155
|
-
selected = _this$
|
|
156
|
-
size = _this$
|
|
169
|
+
var _this$asProps5 = this.asProps,
|
|
170
|
+
selected = _this$asProps5.selected,
|
|
171
|
+
size = _this$asProps5.size;
|
|
157
172
|
return {
|
|
158
173
|
selected: selected,
|
|
159
174
|
size: size
|
|
@@ -201,12 +216,12 @@ var Toggle = /*#__PURE__*/function (_Component3) {
|
|
|
201
216
|
key: "render",
|
|
202
217
|
value: function render() {
|
|
203
218
|
var _ref = this.asProps,
|
|
204
|
-
|
|
205
|
-
var _this$
|
|
206
|
-
styles = _this$
|
|
207
|
-
disabled = _this$
|
|
208
|
-
var SItemToggle =
|
|
209
|
-
return
|
|
219
|
+
_ref5;
|
|
220
|
+
var _this$asProps6 = this.asProps,
|
|
221
|
+
styles = _this$asProps6.styles,
|
|
222
|
+
disabled = _this$asProps6.disabled;
|
|
223
|
+
var SItemToggle = _typography.Text;
|
|
224
|
+
return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SItemToggle, _ref5.cn("SItemToggle", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
210
225
|
"ref": this.toggleRef,
|
|
211
226
|
"onKeyDown": this.handleKeyDown,
|
|
212
227
|
"aria-disabled": disabled ? 'true' : undefined
|
|
@@ -218,23 +233,34 @@ var Toggle = /*#__PURE__*/function (_Component3) {
|
|
|
218
233
|
(0, _defineProperty2["default"])(Toggle, "enhance", [(0, _keyboardFocusEnhance["default"])()]);
|
|
219
234
|
function Chevron(props) {
|
|
220
235
|
var _ref2 = arguments[0],
|
|
221
|
-
|
|
236
|
+
_ref6;
|
|
222
237
|
var styles = props.styles,
|
|
223
238
|
size = props.size;
|
|
224
239
|
var SItemChevron = size === 'l' ? _l["default"] : _m["default"];
|
|
225
|
-
return
|
|
240
|
+
return _ref6 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SItemChevron, _ref6.cn("SItemChevron", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({}, _ref2))));
|
|
241
|
+
}
|
|
242
|
+
function ToggleButton(props) {
|
|
243
|
+
var _ref3 = arguments[0],
|
|
244
|
+
_ref7;
|
|
245
|
+
var styles = props.styles,
|
|
246
|
+
size = props.size;
|
|
247
|
+
var SToggleButton = _flexBox.Flex;
|
|
248
|
+
return _ref7 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SToggleButton, _ref7.cn("SToggleButton", (0, _objectSpread2["default"])({}, (0, _core.assignProps)((0, _objectSpread2["default"])({
|
|
249
|
+
"role": 'button'
|
|
250
|
+
}, props), _ref3))));
|
|
226
251
|
}
|
|
227
252
|
function Collapse(props) {
|
|
228
|
-
var
|
|
253
|
+
var _ref4 = arguments[0];
|
|
229
254
|
var selected = props.selected;
|
|
230
255
|
return /*#__PURE__*/_react["default"].createElement(_animation.Collapse, (0, _core.assignProps)({
|
|
231
256
|
"visible": selected,
|
|
232
257
|
"interactive": true
|
|
233
|
-
},
|
|
258
|
+
}, _ref4));
|
|
234
259
|
}
|
|
235
260
|
var Item = (0, _core["default"])(RootItem, {
|
|
236
261
|
Toggle: Toggle,
|
|
237
262
|
Chevron: Chevron,
|
|
263
|
+
ToggleButton: ToggleButton,
|
|
238
264
|
Collapse: Collapse
|
|
239
265
|
});
|
|
240
266
|
var Accordion = (0, _core["default"])(RootAccordion, {
|
package/lib/cjs/Accordion.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_animation","_m","_l","_keyboardFocusEnhance","_uniqueID","_useCssVariable","style","_index","sstyled","insert","RootAccordion","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","newValue","value","asProps","isArray","indexOfNewValue","indexOf","result","_toConsumableArray2","push","splice","handlers","_createClass2","key","uncontrolledProps","getItemProps","_ref6","_this$asProps","selectedValue","duration","selected","includes","$handleInteraction","handleToggleInteraction","render","Children","createElement","Component","defaultValue","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","RootItem","_Component2","_super2","_this2","_len2","_key2","_this2$asProps","getToggleProps","_this$asProps2","uid","disabled","onClick","undefined","handleClick","id","role","getCollapseProps","_this$asProps3","getChevronProps","_this$asProps4","size","exports","uniqueIDEnhancement","Toggle","_Component3","_super3","_this3","_len3","_key3","React","createRef","event","toggleRef","current","target","currentTarget","click","preventDefault","_ref","_ref4","_this$asProps5","styles","SItemToggle","Box","cn","_objectSpread2","assignProps","handleKeyDown","keyboardFocusEnhance","Chevron","props","_ref2","arguments[0]","_ref5","SItemChevron","ChevronRightL","ChevronRightM","Collapse","_ref3","CollapseAnimate","Item","createComponent","Accordion","wrapAccordion","wrapper","_default"],"sources":["../../src/Accordion.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport { Collapse as CollapseAnimate } from '@semcore/animation';\nimport ChevronRightM from '@semcore/icon/ChevronRight/m';\nimport ChevronRightL from '@semcore/icon/ChevronRight/l';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\n\nimport style from './style/accordion.shadow.css';\n\nclass RootAccordion extends Component {\n static displayName = 'Accordion';\n static style = style;\n static defaultProps = {\n defaultValue: [],\n };\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-accordion',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n handleToggleInteraction = (newValue) => {\n const { value } = this.asProps;\n\n if (Array.isArray(value)) {\n const indexOfNewValue = value.indexOf(newValue);\n const result = [...value];\n indexOfNewValue === -1 ? result.push(newValue) : result.splice(indexOfNewValue, 1);\n this.handlers.value(result);\n } else {\n this.handlers.value(value === newValue ? null : newValue);\n }\n };\n\n getItemProps({ value }) {\n const { value: selectedValue, duration } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n $handleInteraction: this.handleToggleInteraction,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nexport class RootItem extends Component {\n static displayName = 'Item';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n handleClick = () => {\n const { value, $handleInteraction } = this.asProps;\n\n $handleInteraction(value);\n };\n\n getToggleProps() {\n const { value, uid, selected, disabled } = this.asProps;\n return {\n disabled,\n onClick: disabled ? undefined : this.handleClick,\n id: `igc-${uid}-${value}-toggle`,\n role: 'button',\n 'aria-expanded': selected ? 'true' : 'false',\n 'aria-controls': `igc-${uid}-${value}-collapse`,\n };\n }\n\n getCollapseProps() {\n const { selected, uid, duration, value } = this.asProps;\n return {\n selected,\n duration,\n id: `igc-${uid}-${value}-collapse`,\n role: 'region',\n 'aria-labelledby': `igc-${uid}-${value}-toggle`,\n };\n }\n\n getChevronProps() {\n const { selected, size } = this.asProps;\n return {\n selected,\n size,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nclass Toggle extends Component {\n static enhance = [keyboardFocusEnhance()];\n\n toggleRef = React.createRef();\n\n handleKeyDown = (event) => {\n if (event.key === 'Enter') {\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n } else if (event.key === ' ') {\n event.preventDefault();\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n }\n };\n\n render() {\n const { styles, disabled } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle\n ref={this.toggleRef}\n render={Box}\n onKeyDown={this.handleKeyDown}\n aria-disabled={disabled ? 'true' : undefined}\n />,\n );\n }\n}\n\nfunction Chevron(props) {\n const { styles, size } = props;\n\n const SItemChevron = Root;\n return sstyled(styles)(<SItemChevron render={size === 'l' ? ChevronRightL : ChevronRightM} />);\n}\n\nfunction Collapse(props) {\n const { selected } = props;\n return <Root render={CollapseAnimate} visible={selected} interactive />;\n}\n\nconst Item = createComponent(RootItem, {\n Toggle,\n Chevron,\n Collapse,\n});\n\nconst Accordion = createComponent(RootAccordion, {\n Item,\n});\n\nexport const wrapAccordion = (wrapper) => wrapper;\n\nexport default Accordion;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Accordion.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_animation","_typography","_m","_l","_keyboardFocusEnhance","_uniqueID","_useCssVariable","style","_index","sstyled","insert","RootAccordion","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","newValue","value","asProps","isArray","indexOfNewValue","indexOf","result","_toConsumableArray2","push","splice","handlers","_createClass2","key","uncontrolledProps","getItemProps","_ref8","_this$asProps","selectedValue","duration","selected","includes","$handleInteraction","handleToggleInteraction","render","Children","createElement","Component","defaultValue","cssVariableEnhance","variable","fallback","map","Number","parseInt","prop","RootItem","_Component2","_super2","_this2","_len2","_key2","_this2$asProps","getToggleProps","_this$asProps2","uid","disabled","onClick","undefined","handleClick","id","tag","size","getToggleButtonProps","_this$asProps3","getCollapseProps","_this$asProps4","role","getChevronProps","_this$asProps5","exports","uniqueIDEnhancement","Toggle","_Component3","_super3","_this3","_len3","_key3","React","createRef","event","toggleRef","current","target","currentTarget","click","preventDefault","_ref","_ref5","_this$asProps6","styles","SItemToggle","Text","cn","_objectSpread2","assignProps","handleKeyDown","keyboardFocusEnhance","Chevron","props","_ref2","arguments[0]","_ref6","SItemChevron","ChevronRightL","ChevronRightM","ToggleButton","_ref3","_ref7","SToggleButton","Flex","Collapse","_ref4","CollapseAnimate","Item","createComponent","Accordion","wrapAccordion","wrapper","_default"],"sources":["../../src/Accordion.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Collapse as CollapseAnimate } from '@semcore/animation';\nimport { Text } from '@semcore/typography';\nimport ChevronRightM from '@semcore/icon/ChevronRight/m';\nimport ChevronRightL from '@semcore/icon/ChevronRight/l';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\n\nimport style from './style/accordion.shadow.css';\n\nclass RootAccordion extends Component {\n static displayName = 'Accordion';\n static style = style;\n static defaultProps = {\n defaultValue: [],\n };\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-accordion',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n handleToggleInteraction = (newValue) => {\n const { value } = this.asProps;\n\n if (Array.isArray(value)) {\n const indexOfNewValue = value.indexOf(newValue);\n const result = [...value];\n indexOfNewValue === -1 ? result.push(newValue) : result.splice(indexOfNewValue, 1);\n this.handlers.value(result);\n } else {\n this.handlers.value(value === newValue ? null : newValue);\n }\n };\n\n getItemProps({ value }) {\n const { value: selectedValue, duration } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n $handleInteraction: this.handleToggleInteraction,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nexport class RootItem extends Component {\n static displayName = 'Item';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n handleClick = () => {\n const { value, $handleInteraction } = this.asProps;\n\n $handleInteraction(value);\n };\n\n getToggleProps() {\n const { value, uid, selected, disabled } = this.asProps;\n return {\n disabled,\n onClick: disabled ? undefined : this.handleClick,\n id: `igc-${uid}-${value}-toggle`,\n tag: 'h3',\n size: 300,\n };\n }\n\n getToggleButtonProps() {\n const { value, uid, selected, disabled } = this.asProps;\n return {\n disabled,\n id: `igc-${uid}-${value}-toggle-button`,\n 'aria-expanded': selected ? 'true' : 'false',\n 'aria-controls': `igc-${uid}-${value}-collapse`,\n };\n }\n\n getCollapseProps() {\n const { selected, uid, duration, value } = this.asProps;\n return {\n selected,\n duration,\n id: `igc-${uid}-${value}-collapse`,\n role: 'region',\n 'aria-labelledby': `igc-${uid}-${value}-toggle-button`,\n };\n }\n\n getChevronProps() {\n const { selected, size } = this.asProps;\n return {\n selected,\n size,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nclass Toggle extends Component {\n static enhance = [keyboardFocusEnhance()];\n\n toggleRef = React.createRef();\n\n handleKeyDown = (event) => {\n if (event.key === 'Enter') {\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n } else if (event.key === ' ') {\n event.preventDefault();\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n }\n };\n\n render() {\n const { styles, disabled } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle\n ref={this.toggleRef}\n render={Text}\n onKeyDown={this.handleKeyDown}\n aria-disabled={disabled ? 'true' : undefined}\n />,\n );\n }\n}\n\nfunction Chevron(props) {\n const { styles, size } = props;\n\n const SItemChevron = Root;\n return sstyled(styles)(<SItemChevron render={size === 'l' ? ChevronRightL : ChevronRightM} />);\n}\n\nfunction ToggleButton(props) {\n const { styles, size } = props;\n\n const SToggleButton = Root;\n return sstyled(styles)(<SToggleButton render={Flex} role={'button'} {...props} />);\n}\n\nfunction Collapse(props) {\n const { selected } = props;\n return <Root render={CollapseAnimate} visible={selected} interactive />;\n}\n\nconst Item = createComponent(RootItem, {\n Toggle,\n Chevron,\n ToggleButton,\n Collapse,\n});\n\nconst Accordion = createComponent(RootAccordion, {\n Item,\n});\n\nexport const wrapAccordion = (wrapper) => wrapper;\n\nexport default Accordion;\n"],"mappings":";;;;;;;;;;;;;;;;;AACA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AADA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,EAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,EAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,qBAAA,GAAAN,sBAAA,CAAAF,OAAA;AACA,IAAAS,SAAA,GAAAP,sBAAA,CAAAF,OAAA;AACA,IAAAU,eAAA,GAAAV,OAAA;AAAuE;AAAA,IAAAW,KAAA,+BAAAC,MAAA,CAAAC,OAAA,CAAAC,MAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA;AAAA,IAIjEC,aAAa,0BAAAC,UAAA;EAAA,IAAAC,UAAA,aAAAF,aAAA,EAAAC,UAAA;EAAA,IAAAE,MAAA,OAAAC,aAAA,aAAAJ,aAAA;EAAA,SAAAA,cAAA;IAAA,IAAAK,KAAA;IAAA,IAAAC,gBAAA,mBAAAN,aAAA;IAAA,SAAAO,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAAP,KAAA,GAAAF,MAAA,CAAAU,IAAA,CAAAC,KAAA,CAAAX,MAAA,SAAAY,MAAA,CAAAL,IAAA;IAAA,IAAAM,gBAAA,iBAAAC,uBAAA,aAAAZ,KAAA,8BAqBS,UAACa,QAAQ,EAAK;MACtC,IAAQC,KAAK,GAAKd,KAAA,CAAKe,OAAO,CAAtBD,KAAK;MAEb,IAAIR,KAAK,CAACU,OAAO,CAACF,KAAK,CAAC,EAAE;QACxB,IAAMG,eAAe,GAAGH,KAAK,CAACI,OAAO,CAACL,QAAQ,CAAC;QAC/C,IAAMM,MAAM,OAAAC,mBAAA,aAAON,KAAK,CAAC;QACzBG,eAAe,KAAK,CAAC,CAAC,GAAGE,MAAM,CAACE,IAAI,CAACR,QAAQ,CAAC,GAAGM,MAAM,CAACG,MAAM,CAACL,eAAe,EAAE,CAAC,CAAC;QAClFjB,KAAA,CAAKuB,QAAQ,CAACT,KAAK,CAACK,MAAM,CAAC;MAC7B,CAAC,MAAM;QACLnB,KAAA,CAAKuB,QAAQ,CAACT,KAAK,CAACA,KAAK,KAAKD,QAAQ,GAAG,IAAI,GAAGA,QAAQ,CAAC;MAC3D;IACF,CAAC;IAAA,OAAAb,KAAA;EAAA;EAAA,IAAAwB,aAAA,aAAA7B,aAAA;IAAA8B,GAAA;IAAAX,KAAA,EAjBD,SAAAY,kBAAA,EAAoB;MAClB,OAAO;QACLZ,KAAK,EAAE;MACT,CAAC;IACH;EAAC;IAAAW,GAAA;IAAAX,KAAA,EAeD,SAAAa,aAAAC,KAAA,EAAwB;MAAA,IAATd,KAAK,GAAAc,KAAA,CAALd,KAAK;MAClB,IAAAe,aAAA,GAA2C,IAAI,CAACd,OAAO;QAAxCe,aAAa,GAAAD,aAAA,CAApBf,KAAK;QAAiBiB,QAAQ,GAAAF,aAAA,CAARE,QAAQ;MACtC,IAAMC,QAAQ,GAAG1B,KAAK,CAACU,OAAO,CAACc,aAAa,CAAC,GACzCA,aAAa,CAACG,QAAQ,CAACnB,KAAK,CAAC,GAC7BgB,aAAa,KAAKhB,KAAK;MAC3B,OAAO;QACLkB,QAAQ,EAARA,QAAQ;QACRD,QAAQ,EAARA,QAAQ;QACRG,kBAAkB,EAAE,IAAI,CAACC;MAC3B,CAAC;IACH;EAAC;IAAAV,GAAA;IAAAX,KAAA,EAED,SAAAsB,OAAA,EAAS;MACP,IAAQC,QAAQ,GAAK,IAAI,CAACtB,OAAO,CAAzBsB,QAAQ;MAChB,oBAAOxD,MAAA,YAAAyD,aAAA,CAACD,QAAQ,OAAG;IACrB;EAAC;EAAA,OAAA1C,aAAA;AAAA,EAjDyB4C,eAAS;AAAA,IAAA5B,gBAAA,aAA/BhB,aAAa,iBACI,WAAW;AAAA,IAAAgB,gBAAA,aAD5BhB,aAAa,WAEFJ,KAAK;AAAA,IAAAoB,gBAAA,aAFhBhB,aAAa,kBAGK;EACpB6C,YAAY,EAAE;AAChB,CAAC;AAAA,IAAA7B,gBAAA,aALGhB,aAAa,aAMA,CACf,IAAA8C,kCAAkB,EAAC;EACjBC,QAAQ,EAAE,oCAAoC;EAC9CC,QAAQ,EAAE,KAAK;EACfC,GAAG,EAAEC,MAAM,CAACC,QAAQ;EACpBC,IAAI,EAAE;AACR,CAAC,CAAC,CACH;AAAA,IAuCUC,QAAQ,0BAAAC,WAAA;EAAA,IAAApD,UAAA,aAAAmD,QAAA,EAAAC,WAAA;EAAA,IAAAC,OAAA,OAAAnD,aAAA,aAAAiD,QAAA;EAAA,SAAAA,SAAA;IAAA,IAAAG,MAAA;IAAA,IAAAlD,gBAAA,mBAAA+C,QAAA;IAAA,SAAAI,KAAA,GAAAjD,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAA8C,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAAhD,IAAA,CAAAgD,KAAA,IAAAlD,SAAA,CAAAkD,KAAA;IAAA;IAAAF,MAAA,GAAAD,OAAA,CAAA1C,IAAA,CAAAC,KAAA,CAAAyC,OAAA,SAAAxC,MAAA,CAAAL,IAAA;IAAA,IAAAM,gBAAA,iBAAAC,uBAAA,aAAAuC,MAAA,kBAKL,YAAM;MAClB,IAAAG,cAAA,GAAsCH,MAAA,CAAKpC,OAAO;QAA1CD,KAAK,GAAAwC,cAAA,CAALxC,KAAK;QAAEoB,kBAAkB,GAAAoB,cAAA,CAAlBpB,kBAAkB;MAEjCA,kBAAkB,CAACpB,KAAK,CAAC;IAC3B,CAAC;IAAA,OAAAqC,MAAA;EAAA;EAAA,IAAA3B,aAAA,aAAAwB,QAAA;IAAAvB,GAAA;IAAAX,KAAA,EAED,SAAAyC,eAAA,EAAiB;MACf,IAAAC,cAAA,GAA2C,IAAI,CAACzC,OAAO;QAA/CD,KAAK,GAAA0C,cAAA,CAAL1C,KAAK;QAAE2C,GAAG,GAAAD,cAAA,CAAHC,GAAG;QAAEzB,QAAQ,GAAAwB,cAAA,CAARxB,QAAQ;QAAE0B,QAAQ,GAAAF,cAAA,CAARE,QAAQ;MACtC,OAAO;QACLA,QAAQ,EAARA,QAAQ;QACRC,OAAO,EAAED,QAAQ,GAAGE,SAAS,GAAG,IAAI,CAACC,WAAW;QAChDC,EAAE,SAAApD,MAAA,CAAS+C,GAAG,OAAA/C,MAAA,CAAII,KAAK,YAAS;QAChCiD,GAAG,EAAE,IAAI;QACTC,IAAI,EAAE;MACR,CAAC;IACH;EAAC;IAAAvC,GAAA;IAAAX,KAAA,EAED,SAAAmD,qBAAA,EAAuB;MACrB,IAAAC,cAAA,GAA2C,IAAI,CAACnD,OAAO;QAA/CD,KAAK,GAAAoD,cAAA,CAALpD,KAAK;QAAE2C,GAAG,GAAAS,cAAA,CAAHT,GAAG;QAAEzB,QAAQ,GAAAkC,cAAA,CAARlC,QAAQ;QAAE0B,QAAQ,GAAAQ,cAAA,CAARR,QAAQ;MACtC,OAAO;QACLA,QAAQ,EAARA,QAAQ;QACRI,EAAE,SAAApD,MAAA,CAAS+C,GAAG,OAAA/C,MAAA,CAAII,KAAK,mBAAgB;QACvC,eAAe,EAAEkB,QAAQ,GAAG,MAAM,GAAG,OAAO;QAC5C,eAAe,SAAAtB,MAAA,CAAS+C,GAAG,OAAA/C,MAAA,CAAII,KAAK;MACtC,CAAC;IACH;EAAC;IAAAW,GAAA;IAAAX,KAAA,EAED,SAAAqD,iBAAA,EAAmB;MACjB,IAAAC,cAAA,GAA2C,IAAI,CAACrD,OAAO;QAA/CiB,QAAQ,GAAAoC,cAAA,CAARpC,QAAQ;QAAEyB,GAAG,GAAAW,cAAA,CAAHX,GAAG;QAAE1B,QAAQ,GAAAqC,cAAA,CAARrC,QAAQ;QAAEjB,KAAK,GAAAsD,cAAA,CAALtD,KAAK;MACtC,OAAO;QACLkB,QAAQ,EAARA,QAAQ;QACRD,QAAQ,EAARA,QAAQ;QACR+B,EAAE,SAAApD,MAAA,CAAS+C,GAAG,OAAA/C,MAAA,CAAII,KAAK,cAAW;QAClCuD,IAAI,EAAE,QAAQ;QACd,iBAAiB,SAAA3D,MAAA,CAAS+C,GAAG,OAAA/C,MAAA,CAAII,KAAK;MACxC,CAAC;IACH;EAAC;IAAAW,GAAA;IAAAX,KAAA,EAED,SAAAwD,gBAAA,EAAkB;MAChB,IAAAC,cAAA,GAA2B,IAAI,CAACxD,OAAO;QAA/BiB,QAAQ,GAAAuC,cAAA,CAARvC,QAAQ;QAAEgC,IAAI,GAAAO,cAAA,CAAJP,IAAI;MACtB,OAAO;QACLhC,QAAQ,EAARA,QAAQ;QACRgC,IAAI,EAAJA;MACF,CAAC;IACH;EAAC;IAAAvC,GAAA;IAAAX,KAAA,EAED,SAAAsB,OAAA,EAAS;MACP,IAAQC,QAAQ,GAAK,IAAI,CAACtB,OAAO,CAAzBsB,QAAQ;MAChB,oBAAOxD,MAAA,YAAAyD,aAAA,CAACD,QAAQ,OAAG;IACrB;EAAC;EAAA,OAAAW,QAAA;AAAA,EAtD2BT,eAAS;AAAAiC,OAAA,CAAAxB,QAAA,GAAAA,QAAA;AAAA,IAAArC,gBAAA,aAA1BqC,QAAQ,iBACE,MAAM;AAAA,IAAArC,gBAAA,aADhBqC,QAAQ,WAEJzD,KAAK;AAAA,IAAAoB,gBAAA,aAFTqC,QAAQ,aAGF,CAAC,IAAAyB,oBAAmB,GAAE,CAAC;AAAA,IAsDpCC,MAAM,0BAAAC,WAAA;EAAA,IAAA9E,UAAA,aAAA6E,MAAA,EAAAC,WAAA;EAAA,IAAAC,OAAA,OAAA7E,aAAA,aAAA2E,MAAA;EAAA,SAAAA,OAAA;IAAA,IAAAG,MAAA;IAAA,IAAA5E,gBAAA,mBAAAyE,MAAA;IAAA,SAAAI,KAAA,GAAA3E,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAwE,KAAA,GAAAC,KAAA,MAAAA,KAAA,GAAAD,KAAA,EAAAC,KAAA;MAAA1E,IAAA,CAAA0E,KAAA,IAAA5E,SAAA,CAAA4E,KAAA;IAAA;IAAAF,MAAA,GAAAD,OAAA,CAAApE,IAAA,CAAAC,KAAA,CAAAmE,OAAA,SAAAlE,MAAA,CAAAL,IAAA;IAAA,IAAAM,gBAAA,iBAAAC,uBAAA,aAAAiE,MAAA,6BAGEG,iBAAK,CAACC,SAAS,EAAE;IAAA,IAAAtE,gBAAA,iBAAAC,uBAAA,aAAAiE,MAAA,oBAEb,UAACK,KAAK,EAAK;MACzB,IAAIA,KAAK,CAACzD,GAAG,KAAK,OAAO,EAAE;QACzB,IAAIoD,MAAA,CAAKM,SAAS,CAACC,OAAO,KAAKF,KAAK,CAACG,MAAM,EAAE;UAC3CH,KAAK,CAACI,aAAa,CAACC,KAAK,EAAE;QAC7B;MACF,CAAC,MAAM,IAAIL,KAAK,CAACzD,GAAG,KAAK,GAAG,EAAE;QAC5ByD,KAAK,CAACM,cAAc,EAAE;QACtB,IAAIX,MAAA,CAAKM,SAAS,CAACC,OAAO,KAAKF,KAAK,CAACG,MAAM,EAAE;UAC3CH,KAAK,CAACI,aAAa,CAACC,KAAK,EAAE;QAC7B;MACF;IACF,CAAC;IAAA,OAAAV,MAAA;EAAA;EAAA,IAAArD,aAAA,aAAAkD,MAAA;IAAAjD,GAAA;IAAAX,KAAA,EAED,SAAAsB,OAAA,EAAS;MAAA,IAAAqD,IAAA,QAAA1E,OAAA;QAAA2E,KAAA;MACP,IAAAC,cAAA,GAA6B,IAAI,CAAC5E,OAAO;QAAjC6E,MAAM,GAAAD,cAAA,CAANC,MAAM;QAAElC,QAAQ,GAAAiC,cAAA,CAARjC,QAAQ;MACxB,IAAMmC,WAAW,GAKLC,gBAAI;MAHhB,OAAAJ,KAAA,GAAO,IAAAjG,aAAO,EAACmG,MAAM,CAAC,eACpB/G,MAAA,YAAAyD,aAAA,CAACuD,WAAW,EAAAH,KAAA,CAAAK,EAAA,oBAAAC,cAAA,qBAAAtH,KAAA,CAAAuH,WAAA;QAAA,OACL,IAAI,CAACd,SAAS;QAAA,aAER,IAAI,CAACe,aAAa;QAAA,iBACdxC,QAAQ,GAAG,MAAM,GAAGE;MAAS,GAAA6B,IAAA,IAC5C;IAEN;EAAC;EAAA,OAAAf,MAAA;AAAA,EA9BkBnC,eAAS;AAAA,IAAA5B,gBAAA,aAAxB+D,MAAM,aACO,CAAC,IAAAyB,gCAAoB,GAAE,CAAC;AAgC3C,SAASC,OAAOA,CAACC,KAAK,EAAE;EAAA,IAAAC,KAAA,GAAAC,YAAA;IAAAC,KAAA;EACtB,IAAQZ,MAAM,GAAWS,KAAK,CAAtBT,MAAM;IAAE5B,IAAI,GAAKqC,KAAK,CAAdrC,IAAI;EAEpB,IAAMyC,YAAY,GAC2BzC,IAAI,KAAK,GAAG,GAAG0C,aAAa,GAAGC,aAAa;EAAzF,OAAAH,KAAA,GAAO,IAAA/G,aAAO,EAACmG,MAAM,CAAC,eAAC/G,MAAA,YAAAyD,aAAA,CAACmE,YAAY,EAAAD,KAAA,CAAAT,EAAA,qBAAAC,cAAA,qBAAAtH,KAAA,CAAAuH,WAAA,MAAAK,KAAA,IAAyD;AAC/F;AAEA,SAASM,YAAYA,CAACP,KAAK,EAAE;EAAA,IAAAQ,KAAA,GAAAN,YAAA;IAAAO,KAAA;EAC3B,IAAQlB,MAAM,GAAWS,KAAK,CAAtBT,MAAM;IAAE5B,IAAI,GAAKqC,KAAK,CAAdrC,IAAI;EAEpB,IAAM+C,aAAa,GAC2BC,aAAI;EAAlD,OAAAF,KAAA,GAAO,IAAArH,aAAO,EAACmG,MAAM,CAAC,eAAC/G,MAAA,YAAAyD,aAAA,CAACyE,aAAa,EAAAD,KAAA,CAAAf,EAAA,sBAAAC,cAAA,qBAAAtH,KAAA,CAAAuH,WAAA,MAAAD,cAAA;IAAA,QAAqB;EAAQ,GAAMK,KAAK,GAAAQ,KAAA,IAAI;AACnF;AAEA,SAASI,QAAQA,CAACZ,KAAK,EAAE;EAAA,IAAAa,KAAA,GAAAX,YAAA;EACvB,IAAQvE,QAAQ,GAAKqE,KAAK,CAAlBrE,QAAQ;EAChB,oBAAOnD,MAAA,YAAAyD,aAAA,CAAc6E,mBAAe,MAAAzI,KAAA,CAAAuH,WAAA;IAAA,WAAWjE,QAAQ;IAAA;EAAA,GAAAkF,KAAA,EAAgB;AACzE;AAEA,IAAME,IAAI,GAAG,IAAAC,gBAAe,EAACrE,QAAQ,EAAE;EACrC0B,MAAM,EAANA,MAAM;EACN0B,OAAO,EAAPA,OAAO;EACPQ,YAAY,EAAZA,YAAY;EACZK,QAAQ,EAARA;AACF,CAAC,CAAC;AAEF,IAAMK,SAAS,GAAG,IAAAD,gBAAe,EAAC1H,aAAa,EAAE;EAC/CyH,IAAI,EAAJA;AACF,CAAC,CAAC;AAEK,IAAMG,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,OAAO;EAAA,OAAKA,OAAO;AAAA;AAAChD,OAAA,CAAA+C,aAAA,GAAAA,aAAA;AAAA,IAAAE,QAAA,GAEnCH,SAAS;AAAA9C,OAAA,cAAAiD,QAAA"}
|
package/lib/cjs/index.d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { BoxProps, FlexProps } from '@semcore/flex-box';\nimport { PropGetterFn, Intergalactic, UnknownProperties } from '@semcore/core';\nimport { CollapseProps } from '@semcore/animation';\nimport { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nexport type AccordionValue = null | number | string | Array<number | string | null>;\n\nexport type AccordionProps<T extends AccordionValue = AccordionValue> = FlexProps & {\n /** Value for the active tab. Can be set as stroke, number, null or as array.\n * @type AccordionValue\n * */\n value?: T;\n /**\n * Value of the active tabs selected by default\n * @type AccordionValue\n * @default []\n */\n defaultValue?: T;\n /** Called when the selection is changed\n * @type (value: AccordionValue, event?: React.SyntheticEvent) => void\n * */\n onChange?:\n | ((value: T, event?: React.SyntheticEvent) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Animation duration of each Accordion.Item inside\n * @default 350 */\n duration?: number;\n};\n\nexport interface IAccordionProps<T extends AccordionValue = AccordionValue>\n extends AccordionProps<T> {}\n\n/** @deprecated */\nexport interface IAccordionContext extends AccordionContext, UnknownProperties {}\nexport type AccordionContext = {\n getItemProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IAccordionHandlers extends AccordionHandlers, UnknownProperties {}\nexport type AccordionHandlers = {\n value: (value: AccordionValue) => void;\n};\n\n/** @deprecated */\nexport interface IAccordionItemProps extends AccordionItemProps, UnknownProperties {}\nexport type AccordionItemProps = {\n /** Tab value */\n value: string | number;\n /** Disabling selection changes */\n disabled?: boolean;\n /** Animation duration\n * @default 350 */\n duration?: number;\n};\n\n/** @deprecated */\nexport interface IAccordionItemContext extends AccordionItemContext, UnknownProperties {}\nexport type AccordionItemContext = {\n getToggleProps?: PropGetterFn;\n getCollapseProps?: PropGetterFn;\n getChevronProps?: PropGetterFn;\n selected?: boolean;\n};\n\nexport type AccordionItemToggleProps = BoxProps &
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { BoxProps, FlexProps, Flex } from '@semcore/flex-box';\nimport { PropGetterFn, Intergalactic, UnknownProperties } from '@semcore/core';\nimport { CollapseProps } from '@semcore/animation';\nimport { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { Text } from '@semcore/typography';\n\nexport type AccordionValue = null | number | string | Array<number | string | null>;\n\nexport type AccordionProps<T extends AccordionValue = AccordionValue> = FlexProps & {\n /** Value for the active tab. Can be set as stroke, number, null or as array.\n * @type AccordionValue\n * */\n value?: T;\n /**\n * Value of the active tabs selected by default\n * @type AccordionValue\n * @default []\n */\n defaultValue?: T;\n /** Called when the selection is changed\n * @type (value: AccordionValue, event?: React.SyntheticEvent) => void\n * */\n onChange?:\n | ((value: T, event?: React.SyntheticEvent) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Animation duration of each Accordion.Item inside\n * @default 350 */\n duration?: number;\n};\n\nexport interface IAccordionProps<T extends AccordionValue = AccordionValue>\n extends AccordionProps<T> {}\n\n/** @deprecated */\nexport interface IAccordionContext extends AccordionContext, UnknownProperties {}\nexport type AccordionContext = {\n getItemProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IAccordionHandlers extends AccordionHandlers, UnknownProperties {}\nexport type AccordionHandlers = {\n value: (value: AccordionValue) => void;\n};\n\n/** @deprecated */\nexport interface IAccordionItemProps extends AccordionItemProps, UnknownProperties {}\nexport type AccordionItemProps = {\n /** Tab value */\n value: string | number;\n /** Disabling selection changes */\n disabled?: boolean;\n /** Animation duration\n * @default 350 */\n duration?: number;\n};\n\n/** @deprecated */\nexport interface IAccordionItemContext extends AccordionItemContext, UnknownProperties {}\nexport type AccordionItemContext = {\n getToggleProps?: PropGetterFn;\n getCollapseProps?: PropGetterFn;\n getChevronProps?: PropGetterFn;\n selected?: boolean;\n};\n\nexport type AccordionItemToggleProps = BoxProps &\n KeyboardFocusProps & {\n tag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n };\nexport type ChevronItemProps = BoxProps & {\n /**\n * Chevron size\n * @default m\n */\n size?: 'm' | 'l';\n};\n\ntype IntergalacticAccordionComponent<PropsExtending = {}> = (<\n Value extends AccordionValue,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n AccordionProps<Value>,\n AccordionContext & { value: Value },\n [handlers: AccordionHandlers]\n > &\n PropsExtending,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', AccordionProps>;\n\ndeclare const Accordion: IntergalacticAccordionComponent & {\n Item: Intergalactic.Component<\n 'div',\n AccordionItemProps,\n AccordionItemContext,\n [handlers: AccordionHandlers]\n > & {\n Toggle: Intergalactic.Component<typeof Text, AccordionItemToggleProps>;\n ToggleButton: Intergalactic.Component<typeof Flex, {}>;\n Chevron: Intergalactic.Component<'div', ChevronItemProps>;\n Collapse: Intergalactic.Component<'div', CollapseProps>;\n };\n};\n\ndeclare const wrapAccordion: <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticAccordionComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n) => IntergalacticAccordionComponent<PropsExtending>;\nexport { wrapAccordion };\n\nexport default Accordion;\n"],"mappings":""}
|
package/lib/es6/Accordion.js
CHANGED
|
@@ -7,26 +7,28 @@ import _inherits from "@babel/runtime/helpers/inherits";
|
|
|
7
7
|
import _createSuper from "@babel/runtime/helpers/createSuper";
|
|
8
8
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
9
9
|
import { sstyled as _sstyled } from "@semcore/utils/lib/core/index";
|
|
10
|
+
import { assignProps as _assignProps4 } from "@semcore/core";
|
|
10
11
|
import { assignProps as _assignProps3 } from "@semcore/core";
|
|
11
12
|
import { assignProps as _assignProps2 } from "@semcore/core";
|
|
12
13
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
13
14
|
import React from 'react';
|
|
14
15
|
import createComponent, { Component, sstyled, Root } from '@semcore/core';
|
|
15
|
-
import { Box } from '@semcore/flex-box';
|
|
16
|
+
import { Box, Flex } from '@semcore/flex-box';
|
|
16
17
|
import { Collapse as CollapseAnimate } from '@semcore/animation';
|
|
18
|
+
import { Text } from '@semcore/typography';
|
|
17
19
|
import ChevronRightM from '@semcore/icon/ChevronRight/m';
|
|
18
20
|
import ChevronRightL from '@semcore/icon/ChevronRight/l';
|
|
19
21
|
import keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';
|
|
20
22
|
import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
|
|
21
23
|
import { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';
|
|
22
24
|
/*__reshadow-styles__:"./style/accordion.shadow.css"*/
|
|
23
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
24
|
-
"__SItemToggle": "
|
|
25
|
-
"_keyboardFocused": "
|
|
26
|
-
"_tabIndex_-1": "_tabIndex_-
|
|
27
|
-
"_disabled": "
|
|
28
|
-
"__SItemChevron": "
|
|
29
|
-
"_selected": "
|
|
25
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SItemToggle_a1g6r_gg_{display:flex;align-items:center;position:relative;cursor:pointer;outline:0}.___SItemToggle_a1g6r_gg_.__keyboardFocused_a1g6r_gg_:not(._tabIndex_-1_a1g6r_gg_)::after{position:absolute;display:block;content:\"\";top:3px;right:3px;bottom:3px;left:3px;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5));pointer-events:none;z-index:3}.___SItemToggle_a1g6r_gg_.__disabled_a1g6r_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default}.___SItemChevron_a1g6r_gg_{transform:rotate(0deg);transition:transform calc(var(--intergalactic-duration-accordion, 200)*1ms) ease-out;fill:var(--intergalactic-icon-primary-neutral, #6c6e79)}.___SItemChevron_a1g6r_gg_.__selected_a1g6r_gg_{transform:rotate(90deg)}@media (prefers-reduced-motion){.___SItemChevron_a1g6r_gg_{transition:none}}" /*__inner_css_end__*/, "a1g6r_gg_") /*__reshadow_css_end__*/, {
|
|
26
|
+
"__SItemToggle": "___SItemToggle_a1g6r_gg_",
|
|
27
|
+
"_keyboardFocused": "__keyboardFocused_a1g6r_gg_",
|
|
28
|
+
"_tabIndex_-1": "_tabIndex_-1_a1g6r_gg_",
|
|
29
|
+
"_disabled": "__disabled_a1g6r_gg_",
|
|
30
|
+
"__SItemChevron": "___SItemChevron_a1g6r_gg_",
|
|
31
|
+
"_selected": "__selected_a1g6r_gg_"
|
|
30
32
|
});
|
|
31
33
|
var RootAccordion = /*#__PURE__*/function (_Component) {
|
|
32
34
|
_inherits(RootAccordion, _Component);
|
|
@@ -60,8 +62,8 @@ var RootAccordion = /*#__PURE__*/function (_Component) {
|
|
|
60
62
|
}
|
|
61
63
|
}, {
|
|
62
64
|
key: "getItemProps",
|
|
63
|
-
value: function getItemProps(
|
|
64
|
-
var value =
|
|
65
|
+
value: function getItemProps(_ref8) {
|
|
66
|
+
var value = _ref8.value;
|
|
65
67
|
var _this$asProps = this.asProps,
|
|
66
68
|
selectedValue = _this$asProps.value,
|
|
67
69
|
duration = _this$asProps.duration;
|
|
@@ -122,7 +124,21 @@ export var RootItem = /*#__PURE__*/function (_Component2) {
|
|
|
122
124
|
disabled: disabled,
|
|
123
125
|
onClick: disabled ? undefined : this.handleClick,
|
|
124
126
|
id: "igc-".concat(uid, "-").concat(value, "-toggle"),
|
|
125
|
-
|
|
127
|
+
tag: 'h3',
|
|
128
|
+
size: 300
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
}, {
|
|
132
|
+
key: "getToggleButtonProps",
|
|
133
|
+
value: function getToggleButtonProps() {
|
|
134
|
+
var _this$asProps3 = this.asProps,
|
|
135
|
+
value = _this$asProps3.value,
|
|
136
|
+
uid = _this$asProps3.uid,
|
|
137
|
+
selected = _this$asProps3.selected,
|
|
138
|
+
disabled = _this$asProps3.disabled;
|
|
139
|
+
return {
|
|
140
|
+
disabled: disabled,
|
|
141
|
+
id: "igc-".concat(uid, "-").concat(value, "-toggle-button"),
|
|
126
142
|
'aria-expanded': selected ? 'true' : 'false',
|
|
127
143
|
'aria-controls': "igc-".concat(uid, "-").concat(value, "-collapse")
|
|
128
144
|
};
|
|
@@ -130,25 +146,25 @@ export var RootItem = /*#__PURE__*/function (_Component2) {
|
|
|
130
146
|
}, {
|
|
131
147
|
key: "getCollapseProps",
|
|
132
148
|
value: function getCollapseProps() {
|
|
133
|
-
var _this$
|
|
134
|
-
selected = _this$
|
|
135
|
-
uid = _this$
|
|
136
|
-
duration = _this$
|
|
137
|
-
value = _this$
|
|
149
|
+
var _this$asProps4 = this.asProps,
|
|
150
|
+
selected = _this$asProps4.selected,
|
|
151
|
+
uid = _this$asProps4.uid,
|
|
152
|
+
duration = _this$asProps4.duration,
|
|
153
|
+
value = _this$asProps4.value;
|
|
138
154
|
return {
|
|
139
155
|
selected: selected,
|
|
140
156
|
duration: duration,
|
|
141
157
|
id: "igc-".concat(uid, "-").concat(value, "-collapse"),
|
|
142
158
|
role: 'region',
|
|
143
|
-
'aria-labelledby': "igc-".concat(uid, "-").concat(value, "-toggle")
|
|
159
|
+
'aria-labelledby': "igc-".concat(uid, "-").concat(value, "-toggle-button")
|
|
144
160
|
};
|
|
145
161
|
}
|
|
146
162
|
}, {
|
|
147
163
|
key: "getChevronProps",
|
|
148
164
|
value: function getChevronProps() {
|
|
149
|
-
var _this$
|
|
150
|
-
selected = _this$
|
|
151
|
-
size = _this$
|
|
165
|
+
var _this$asProps5 = this.asProps,
|
|
166
|
+
selected = _this$asProps5.selected,
|
|
167
|
+
size = _this$asProps5.size;
|
|
152
168
|
return {
|
|
153
169
|
selected: selected,
|
|
154
170
|
size: size
|
|
@@ -195,12 +211,12 @@ var Toggle = /*#__PURE__*/function (_Component3) {
|
|
|
195
211
|
key: "render",
|
|
196
212
|
value: function render() {
|
|
197
213
|
var _ref = this.asProps,
|
|
198
|
-
|
|
199
|
-
var _this$
|
|
200
|
-
styles = _this$
|
|
201
|
-
disabled = _this$
|
|
202
|
-
var SItemToggle =
|
|
203
|
-
return
|
|
214
|
+
_ref5;
|
|
215
|
+
var _this$asProps6 = this.asProps,
|
|
216
|
+
styles = _this$asProps6.styles,
|
|
217
|
+
disabled = _this$asProps6.disabled;
|
|
218
|
+
var SItemToggle = Text;
|
|
219
|
+
return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SItemToggle, _ref5.cn("SItemToggle", _objectSpread({}, _assignProps({
|
|
204
220
|
"ref": this.toggleRef,
|
|
205
221
|
"onKeyDown": this.handleKeyDown,
|
|
206
222
|
"aria-disabled": disabled ? 'true' : undefined
|
|
@@ -212,23 +228,34 @@ var Toggle = /*#__PURE__*/function (_Component3) {
|
|
|
212
228
|
_defineProperty(Toggle, "enhance", [keyboardFocusEnhance()]);
|
|
213
229
|
function Chevron(props) {
|
|
214
230
|
var _ref2 = arguments[0],
|
|
215
|
-
|
|
231
|
+
_ref6;
|
|
216
232
|
var styles = props.styles,
|
|
217
233
|
size = props.size;
|
|
218
234
|
var SItemChevron = size === 'l' ? ChevronRightL : ChevronRightM;
|
|
219
|
-
return
|
|
235
|
+
return _ref6 = sstyled(styles), /*#__PURE__*/React.createElement(SItemChevron, _ref6.cn("SItemChevron", _objectSpread({}, _assignProps2({}, _ref2))));
|
|
236
|
+
}
|
|
237
|
+
function ToggleButton(props) {
|
|
238
|
+
var _ref3 = arguments[0],
|
|
239
|
+
_ref7;
|
|
240
|
+
var styles = props.styles,
|
|
241
|
+
size = props.size;
|
|
242
|
+
var SToggleButton = Flex;
|
|
243
|
+
return _ref7 = sstyled(styles), /*#__PURE__*/React.createElement(SToggleButton, _ref7.cn("SToggleButton", _objectSpread({}, _assignProps3(_objectSpread({
|
|
244
|
+
"role": 'button'
|
|
245
|
+
}, props), _ref3))));
|
|
220
246
|
}
|
|
221
247
|
function Collapse(props) {
|
|
222
|
-
var
|
|
248
|
+
var _ref4 = arguments[0];
|
|
223
249
|
var selected = props.selected;
|
|
224
|
-
return /*#__PURE__*/React.createElement(CollapseAnimate,
|
|
250
|
+
return /*#__PURE__*/React.createElement(CollapseAnimate, _assignProps4({
|
|
225
251
|
"visible": selected,
|
|
226
252
|
"interactive": true
|
|
227
|
-
},
|
|
253
|
+
}, _ref4));
|
|
228
254
|
}
|
|
229
255
|
var Item = createComponent(RootItem, {
|
|
230
256
|
Toggle: Toggle,
|
|
231
257
|
Chevron: Chevron,
|
|
258
|
+
ToggleButton: ToggleButton,
|
|
232
259
|
Collapse: Collapse
|
|
233
260
|
});
|
|
234
261
|
var Accordion = createComponent(RootAccordion, {
|
package/lib/es6/Accordion.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.js","names":["React","createComponent","Component","sstyled","Root","Box","Collapse","CollapseAnimate","ChevronRightM","ChevronRightL","keyboardFocusEnhance","uniqueIDEnhancement","cssVariableEnhance","style","_sstyled","insert","RootAccordion","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","newValue","value","asProps","isArray","indexOfNewValue","indexOf","result","_toConsumableArray","push","splice","handlers","_createClass","key","uncontrolledProps","getItemProps","_ref6","_this$asProps","selectedValue","duration","selected","includes","$handleInteraction","handleToggleInteraction","render","Children","createElement","defaultValue","variable","fallback","map","Number","parseInt","prop","RootItem","_Component2","_super2","_this2","_len2","_key2","_this2$asProps","getToggleProps","_this$asProps2","uid","disabled","onClick","undefined","handleClick","id","role","getCollapseProps","_this$asProps3","getChevronProps","_this$asProps4","size","Toggle","_Component3","_super3","_this3","_len3","_key3","createRef","event","toggleRef","current","target","currentTarget","click","preventDefault","_ref","_ref4","_this$asProps5","styles","SItemToggle","cn","_objectSpread","_assignProps","handleKeyDown","Chevron","props","_ref2","arguments[0]","_ref5","SItemChevron","_assignProps2","_ref3","_assignProps3","Item","Accordion","wrapAccordion","wrapper"],"sources":["../../src/Accordion.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport { Collapse as CollapseAnimate } from '@semcore/animation';\nimport ChevronRightM from '@semcore/icon/ChevronRight/m';\nimport ChevronRightL from '@semcore/icon/ChevronRight/l';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\n\nimport style from './style/accordion.shadow.css';\n\nclass RootAccordion extends Component {\n static displayName = 'Accordion';\n static style = style;\n static defaultProps = {\n defaultValue: [],\n };\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-accordion',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n handleToggleInteraction = (newValue) => {\n const { value } = this.asProps;\n\n if (Array.isArray(value)) {\n const indexOfNewValue = value.indexOf(newValue);\n const result = [...value];\n indexOfNewValue === -1 ? result.push(newValue) : result.splice(indexOfNewValue, 1);\n this.handlers.value(result);\n } else {\n this.handlers.value(value === newValue ? null : newValue);\n }\n };\n\n getItemProps({ value }) {\n const { value: selectedValue, duration } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n $handleInteraction: this.handleToggleInteraction,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nexport class RootItem extends Component {\n static displayName = 'Item';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n handleClick = () => {\n const { value, $handleInteraction } = this.asProps;\n\n $handleInteraction(value);\n };\n\n getToggleProps() {\n const { value, uid, selected, disabled } = this.asProps;\n return {\n disabled,\n onClick: disabled ? undefined : this.handleClick,\n id: `igc-${uid}-${value}-toggle`,\n role: 'button',\n 'aria-expanded': selected ? 'true' : 'false',\n 'aria-controls': `igc-${uid}-${value}-collapse`,\n };\n }\n\n getCollapseProps() {\n const { selected, uid, duration, value } = this.asProps;\n return {\n selected,\n duration,\n id: `igc-${uid}-${value}-collapse`,\n role: 'region',\n 'aria-labelledby': `igc-${uid}-${value}-toggle`,\n };\n }\n\n getChevronProps() {\n const { selected, size } = this.asProps;\n return {\n selected,\n size,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nclass Toggle extends Component {\n static enhance = [keyboardFocusEnhance()];\n\n toggleRef = React.createRef();\n\n handleKeyDown = (event) => {\n if (event.key === 'Enter') {\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n } else if (event.key === ' ') {\n event.preventDefault();\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n }\n };\n\n render() {\n const { styles, disabled } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle\n ref={this.toggleRef}\n render={Box}\n onKeyDown={this.handleKeyDown}\n aria-disabled={disabled ? 'true' : undefined}\n />,\n );\n }\n}\n\nfunction Chevron(props) {\n const { styles, size } = props;\n\n const SItemChevron = Root;\n return sstyled(styles)(<SItemChevron render={size === 'l' ? ChevronRightL : ChevronRightM} />);\n}\n\nfunction Collapse(props) {\n const { selected } = props;\n return <Root render={CollapseAnimate} visible={selected} interactive />;\n}\n\nconst Item = createComponent(RootItem, {\n Toggle,\n Chevron,\n Collapse,\n});\n\nconst Accordion = createComponent(RootAccordion, {\n Item,\n});\n\nexport const wrapAccordion = (wrapper) => wrapper;\n\nexport default Accordion;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Accordion.js","names":["React","createComponent","Component","sstyled","Root","Box","Flex","Collapse","CollapseAnimate","Text","ChevronRightM","ChevronRightL","keyboardFocusEnhance","uniqueIDEnhancement","cssVariableEnhance","style","_sstyled","insert","RootAccordion","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","newValue","value","asProps","isArray","indexOfNewValue","indexOf","result","_toConsumableArray","push","splice","handlers","_createClass","key","uncontrolledProps","getItemProps","_ref8","_this$asProps","selectedValue","duration","selected","includes","$handleInteraction","handleToggleInteraction","render","Children","createElement","defaultValue","variable","fallback","map","Number","parseInt","prop","RootItem","_Component2","_super2","_this2","_len2","_key2","_this2$asProps","getToggleProps","_this$asProps2","uid","disabled","onClick","undefined","handleClick","id","tag","size","getToggleButtonProps","_this$asProps3","getCollapseProps","_this$asProps4","role","getChevronProps","_this$asProps5","Toggle","_Component3","_super3","_this3","_len3","_key3","createRef","event","toggleRef","current","target","currentTarget","click","preventDefault","_ref","_ref5","_this$asProps6","styles","SItemToggle","cn","_objectSpread","_assignProps","handleKeyDown","Chevron","props","_ref2","arguments[0]","_ref6","SItemChevron","_assignProps2","ToggleButton","_ref3","_ref7","SToggleButton","_assignProps3","_ref4","_assignProps4","Item","Accordion","wrapAccordion","wrapper"],"sources":["../../src/Accordion.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport { Box, Flex } from '@semcore/flex-box';\nimport { Collapse as CollapseAnimate } from '@semcore/animation';\nimport { Text } from '@semcore/typography';\nimport ChevronRightM from '@semcore/icon/ChevronRight/m';\nimport ChevronRightL from '@semcore/icon/ChevronRight/l';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';\n\nimport style from './style/accordion.shadow.css';\n\nclass RootAccordion extends Component {\n static displayName = 'Accordion';\n static style = style;\n static defaultProps = {\n defaultValue: [],\n };\n static enhance = [\n cssVariableEnhance({\n variable: '--intergalactic-duration-accordion',\n fallback: '200',\n map: Number.parseInt,\n prop: 'duration',\n }),\n ];\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n handleToggleInteraction = (newValue) => {\n const { value } = this.asProps;\n\n if (Array.isArray(value)) {\n const indexOfNewValue = value.indexOf(newValue);\n const result = [...value];\n indexOfNewValue === -1 ? result.push(newValue) : result.splice(indexOfNewValue, 1);\n this.handlers.value(result);\n } else {\n this.handlers.value(value === newValue ? null : newValue);\n }\n };\n\n getItemProps({ value }) {\n const { value: selectedValue, duration } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n $handleInteraction: this.handleToggleInteraction,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nexport class RootItem extends Component {\n static displayName = 'Item';\n static style = style;\n static enhance = [uniqueIDEnhancement()];\n\n handleClick = () => {\n const { value, $handleInteraction } = this.asProps;\n\n $handleInteraction(value);\n };\n\n getToggleProps() {\n const { value, uid, selected, disabled } = this.asProps;\n return {\n disabled,\n onClick: disabled ? undefined : this.handleClick,\n id: `igc-${uid}-${value}-toggle`,\n tag: 'h3',\n size: 300,\n };\n }\n\n getToggleButtonProps() {\n const { value, uid, selected, disabled } = this.asProps;\n return {\n disabled,\n id: `igc-${uid}-${value}-toggle-button`,\n 'aria-expanded': selected ? 'true' : 'false',\n 'aria-controls': `igc-${uid}-${value}-collapse`,\n };\n }\n\n getCollapseProps() {\n const { selected, uid, duration, value } = this.asProps;\n return {\n selected,\n duration,\n id: `igc-${uid}-${value}-collapse`,\n role: 'region',\n 'aria-labelledby': `igc-${uid}-${value}-toggle-button`,\n };\n }\n\n getChevronProps() {\n const { selected, size } = this.asProps;\n return {\n selected,\n size,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n return <Children />;\n }\n}\n\nclass Toggle extends Component {\n static enhance = [keyboardFocusEnhance()];\n\n toggleRef = React.createRef();\n\n handleKeyDown = (event) => {\n if (event.key === 'Enter') {\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n } else if (event.key === ' ') {\n event.preventDefault();\n if (this.toggleRef.current === event.target) {\n event.currentTarget.click();\n }\n }\n };\n\n render() {\n const { styles, disabled } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle\n ref={this.toggleRef}\n render={Text}\n onKeyDown={this.handleKeyDown}\n aria-disabled={disabled ? 'true' : undefined}\n />,\n );\n }\n}\n\nfunction Chevron(props) {\n const { styles, size } = props;\n\n const SItemChevron = Root;\n return sstyled(styles)(<SItemChevron render={size === 'l' ? ChevronRightL : ChevronRightM} />);\n}\n\nfunction ToggleButton(props) {\n const { styles, size } = props;\n\n const SToggleButton = Root;\n return sstyled(styles)(<SToggleButton render={Flex} role={'button'} {...props} />);\n}\n\nfunction Collapse(props) {\n const { selected } = props;\n return <Root render={CollapseAnimate} visible={selected} interactive />;\n}\n\nconst Item = createComponent(RootItem, {\n Toggle,\n Chevron,\n ToggleButton,\n Collapse,\n});\n\nconst Accordion = createComponent(RootAccordion, {\n Item,\n});\n\nexport const wrapAccordion = (wrapper) => wrapper;\n\nexport default Accordion;\n"],"mappings":"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"}
|
package/lib/es6/index.d.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { BoxProps, FlexProps } from '@semcore/flex-box';\nimport { PropGetterFn, Intergalactic, UnknownProperties } from '@semcore/core';\nimport { CollapseProps } from '@semcore/animation';\nimport { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nexport type AccordionValue = null | number | string | Array<number | string | null>;\n\nexport type AccordionProps<T extends AccordionValue = AccordionValue> = FlexProps & {\n /** Value for the active tab. Can be set as stroke, number, null or as array.\n * @type AccordionValue\n * */\n value?: T;\n /**\n * Value of the active tabs selected by default\n * @type AccordionValue\n * @default []\n */\n defaultValue?: T;\n /** Called when the selection is changed\n * @type (value: AccordionValue, event?: React.SyntheticEvent) => void\n * */\n onChange?:\n | ((value: T, event?: React.SyntheticEvent) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Animation duration of each Accordion.Item inside\n * @default 350 */\n duration?: number;\n};\n\nexport interface IAccordionProps<T extends AccordionValue = AccordionValue>\n extends AccordionProps<T> {}\n\n/** @deprecated */\nexport interface IAccordionContext extends AccordionContext, UnknownProperties {}\nexport type AccordionContext = {\n getItemProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IAccordionHandlers extends AccordionHandlers, UnknownProperties {}\nexport type AccordionHandlers = {\n value: (value: AccordionValue) => void;\n};\n\n/** @deprecated */\nexport interface IAccordionItemProps extends AccordionItemProps, UnknownProperties {}\nexport type AccordionItemProps = {\n /** Tab value */\n value: string | number;\n /** Disabling selection changes */\n disabled?: boolean;\n /** Animation duration\n * @default 350 */\n duration?: number;\n};\n\n/** @deprecated */\nexport interface IAccordionItemContext extends AccordionItemContext, UnknownProperties {}\nexport type AccordionItemContext = {\n getToggleProps?: PropGetterFn;\n getCollapseProps?: PropGetterFn;\n getChevronProps?: PropGetterFn;\n selected?: boolean;\n};\n\nexport type AccordionItemToggleProps = BoxProps &
|
|
1
|
+
{"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { BoxProps, FlexProps, Flex } from '@semcore/flex-box';\nimport { PropGetterFn, Intergalactic, UnknownProperties } from '@semcore/core';\nimport { CollapseProps } from '@semcore/animation';\nimport { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { Text } from '@semcore/typography';\n\nexport type AccordionValue = null | number | string | Array<number | string | null>;\n\nexport type AccordionProps<T extends AccordionValue = AccordionValue> = FlexProps & {\n /** Value for the active tab. Can be set as stroke, number, null or as array.\n * @type AccordionValue\n * */\n value?: T;\n /**\n * Value of the active tabs selected by default\n * @type AccordionValue\n * @default []\n */\n defaultValue?: T;\n /** Called when the selection is changed\n * @type (value: AccordionValue, event?: React.SyntheticEvent) => void\n * */\n onChange?:\n | ((value: T, event?: React.SyntheticEvent) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Animation duration of each Accordion.Item inside\n * @default 350 */\n duration?: number;\n};\n\nexport interface IAccordionProps<T extends AccordionValue = AccordionValue>\n extends AccordionProps<T> {}\n\n/** @deprecated */\nexport interface IAccordionContext extends AccordionContext, UnknownProperties {}\nexport type AccordionContext = {\n getItemProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IAccordionHandlers extends AccordionHandlers, UnknownProperties {}\nexport type AccordionHandlers = {\n value: (value: AccordionValue) => void;\n};\n\n/** @deprecated */\nexport interface IAccordionItemProps extends AccordionItemProps, UnknownProperties {}\nexport type AccordionItemProps = {\n /** Tab value */\n value: string | number;\n /** Disabling selection changes */\n disabled?: boolean;\n /** Animation duration\n * @default 350 */\n duration?: number;\n};\n\n/** @deprecated */\nexport interface IAccordionItemContext extends AccordionItemContext, UnknownProperties {}\nexport type AccordionItemContext = {\n getToggleProps?: PropGetterFn;\n getCollapseProps?: PropGetterFn;\n getChevronProps?: PropGetterFn;\n selected?: boolean;\n};\n\nexport type AccordionItemToggleProps = BoxProps &\n KeyboardFocusProps & {\n tag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n };\nexport type ChevronItemProps = BoxProps & {\n /**\n * Chevron size\n * @default m\n */\n size?: 'm' | 'l';\n};\n\ntype IntergalacticAccordionComponent<PropsExtending = {}> = (<\n Value extends AccordionValue,\n Tag extends Intergalactic.Tag = 'div',\n>(\n props: Intergalactic.InternalTypings.ComponentProps<\n Tag,\n 'div',\n AccordionProps<Value>,\n AccordionContext & { value: Value },\n [handlers: AccordionHandlers]\n > &\n PropsExtending,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\n Intergalactic.InternalTypings.ComponentAdditive<'div', 'div', AccordionProps>;\n\ndeclare const Accordion: IntergalacticAccordionComponent & {\n Item: Intergalactic.Component<\n 'div',\n AccordionItemProps,\n AccordionItemContext,\n [handlers: AccordionHandlers]\n > & {\n Toggle: Intergalactic.Component<typeof Text, AccordionItemToggleProps>;\n ToggleButton: Intergalactic.Component<typeof Flex, {}>;\n Chevron: Intergalactic.Component<'div', ChevronItemProps>;\n Collapse: Intergalactic.Component<'div', CollapseProps>;\n };\n};\n\ndeclare const wrapAccordion: <PropsExtending extends {}>(\n wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticAccordionComponent>\n > &\n PropsExtending,\n ) => React.ReactNode,\n) => IntergalacticAccordionComponent<PropsExtending>;\nexport { wrapAccordion };\n\nexport default Accordion;\n"],"mappings":""}
|
package/lib/types/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { BoxProps, FlexProps } from '@semcore/flex-box';
|
|
1
|
+
import { BoxProps, FlexProps, Flex } from '@semcore/flex-box';
|
|
2
2
|
import { PropGetterFn, Intergalactic, UnknownProperties } from '@semcore/core';
|
|
3
3
|
import { CollapseProps } from '@semcore/animation';
|
|
4
4
|
import { KeyboardFocusProps } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';
|
|
5
|
+
import { Text } from '@semcore/typography';
|
|
5
6
|
|
|
6
7
|
export type AccordionValue = null | number | string | Array<number | string | null>;
|
|
7
8
|
|
|
@@ -63,7 +64,10 @@ export type AccordionItemContext = {
|
|
|
63
64
|
selected?: boolean;
|
|
64
65
|
};
|
|
65
66
|
|
|
66
|
-
export type AccordionItemToggleProps = BoxProps &
|
|
67
|
+
export type AccordionItemToggleProps = BoxProps &
|
|
68
|
+
KeyboardFocusProps & {
|
|
69
|
+
tag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
|
|
70
|
+
};
|
|
67
71
|
export type ChevronItemProps = BoxProps & {
|
|
68
72
|
/**
|
|
69
73
|
* Chevron size
|
|
@@ -94,7 +98,8 @@ declare const Accordion: IntergalacticAccordionComponent & {
|
|
|
94
98
|
AccordionItemContext,
|
|
95
99
|
[handlers: AccordionHandlers]
|
|
96
100
|
> & {
|
|
97
|
-
Toggle: Intergalactic.Component<
|
|
101
|
+
Toggle: Intergalactic.Component<typeof Text, AccordionItemToggleProps>;
|
|
102
|
+
ToggleButton: Intergalactic.Component<typeof Flex, {}>;
|
|
98
103
|
Chevron: Intergalactic.Component<'div', ChevronItemProps>;
|
|
99
104
|
Collapse: Intergalactic.Component<'div', CollapseProps>;
|
|
100
105
|
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@semcore/accordion",
|
|
3
3
|
"description": "Semrush Accordion Component",
|
|
4
|
-
"version": "5.36.
|
|
4
|
+
"version": "5.36.1",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"module": "lib/es6/index.js",
|
|
7
7
|
"typings": "lib/types/index.d.ts",
|
|
@@ -11,9 +11,10 @@
|
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@semcore/animation": "2.29.0",
|
|
13
13
|
"@semcore/flex-box": "5.29.0",
|
|
14
|
-
"@semcore/icon": "4.
|
|
14
|
+
"@semcore/icon": "4.41.0",
|
|
15
15
|
"@semcore/utils": "4.30.0",
|
|
16
|
-
"@semcore/button": "5.31.
|
|
16
|
+
"@semcore/button": "5.31.1",
|
|
17
|
+
"@semcore/typography": "5.38.0"
|
|
17
18
|
},
|
|
18
19
|
"peerDependencies": {
|
|
19
20
|
"@semcore/core": "^2.17.5",
|