@semcore/accordion 5.23.0 → 5.24.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/CHANGELOG.md +7 -1
- package/lib/cjs/Accordion.js +19 -14
- package/lib/cjs/Accordion.js.map +1 -1
- package/lib/cjs/index.d.js.map +1 -1
- package/lib/es6/Accordion.js +20 -15
- package/lib/es6/Accordion.js.map +1 -1
- package/lib/es6/index.d.js.map +1 -1
- package/lib/types/index.d.ts +9 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
|
|
4
4
|
|
|
5
|
-
## [5.
|
|
5
|
+
## [5.24.0-prerelease.1] - 2024-02-16
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Ability to set 'l' icon size for `Accordion.Item.Chevron`
|
|
10
|
+
|
|
11
|
+
## [5.23.0] - 2024-02-14
|
|
6
12
|
|
|
7
13
|
### Changed
|
|
8
14
|
|
package/lib/cjs/Accordion.js
CHANGED
|
@@ -19,17 +19,18 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
19
19
|
var _flexBox = require("@semcore/flex-box");
|
|
20
20
|
var _animation = require("@semcore/animation");
|
|
21
21
|
var _m = _interopRequireDefault(require("@semcore/icon/ChevronRight/m"));
|
|
22
|
+
var _l = _interopRequireDefault(require("@semcore/icon/ChevronRight/l"));
|
|
22
23
|
var _keyboardFocusEnhance = _interopRequireDefault(require("@semcore/utils/lib/enhances/keyboardFocusEnhance"));
|
|
23
24
|
var _uniqueID = _interopRequireDefault(require("@semcore/utils/lib/uniqueID"));
|
|
24
25
|
var _useCssVariable = require("@semcore/utils/lib/useCssVariable");
|
|
25
26
|
/*__reshadow-styles__:"./style/accordion.shadow.css"*/
|
|
26
|
-
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".
|
|
27
|
-
"__SItemToggle": "
|
|
28
|
-
"_keyboardFocused": "
|
|
29
|
-
"_tabIndex_-1": "_tabIndex_-
|
|
30
|
-
"_disabled": "
|
|
31
|
-
"__SItemChevron": "
|
|
32
|
-
"_selected": "
|
|
27
|
+
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SItemToggle_11yyn_gg_{position:relative;cursor:pointer;outline:0}.___SItemToggle_11yyn_gg_.__keyboardFocused_11yyn_gg_:not(._tabIndex_-1_11yyn_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_11yyn_gg_.__disabled_11yyn_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default}.___SItemChevron_11yyn_gg_{transform:rotate(0deg);transition:transform calc(var(--intergalactic-duration-accordion, 200)*1ms) ease-out;fill:var(--intergalactic-icon-primary-neutral, #6c6e79)}.___SItemChevron_11yyn_gg_.__selected_11yyn_gg_{transform:rotate(90deg)}@media (prefers-reduced-motion){.___SItemChevron_11yyn_gg_{transition:none}}" /*__inner_css_end__*/, "11yyn_gg_") /*__reshadow_css_end__*/, {
|
|
28
|
+
"__SItemToggle": "___SItemToggle_11yyn_gg_",
|
|
29
|
+
"_keyboardFocused": "__keyboardFocused_11yyn_gg_",
|
|
30
|
+
"_tabIndex_-1": "_tabIndex_-1_11yyn_gg_",
|
|
31
|
+
"_disabled": "__disabled_11yyn_gg_",
|
|
32
|
+
"__SItemChevron": "___SItemChevron_11yyn_gg_",
|
|
33
|
+
"_selected": "__selected_11yyn_gg_"
|
|
33
34
|
});
|
|
34
35
|
var RootAccordion = /*#__PURE__*/function (_Component) {
|
|
35
36
|
(0, _inherits2["default"])(RootAccordion, _Component);
|
|
@@ -149,9 +150,12 @@ var RootItem = /*#__PURE__*/function (_Component2) {
|
|
|
149
150
|
}, {
|
|
150
151
|
key: "getChevronProps",
|
|
151
152
|
value: function getChevronProps() {
|
|
152
|
-
var
|
|
153
|
+
var _this$asProps4 = this.asProps,
|
|
154
|
+
selected = _this$asProps4.selected,
|
|
155
|
+
size = _this$asProps4.size;
|
|
153
156
|
return {
|
|
154
|
-
selected: selected
|
|
157
|
+
selected: selected,
|
|
158
|
+
size: size
|
|
155
159
|
};
|
|
156
160
|
}
|
|
157
161
|
}, {
|
|
@@ -196,9 +200,9 @@ var Toggle = /*#__PURE__*/function (_Component3) {
|
|
|
196
200
|
value: function render() {
|
|
197
201
|
var _ref = this.asProps,
|
|
198
202
|
_ref4;
|
|
199
|
-
var _this$
|
|
200
|
-
styles = _this$
|
|
201
|
-
disabled = _this$
|
|
203
|
+
var _this$asProps5 = this.asProps,
|
|
204
|
+
styles = _this$asProps5.styles,
|
|
205
|
+
disabled = _this$asProps5.disabled;
|
|
202
206
|
var SItemToggle = _flexBox.Box;
|
|
203
207
|
return _ref4 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SItemToggle, _ref4.cn("SItemToggle", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
|
|
204
208
|
"ref": this.toggleRef,
|
|
@@ -213,8 +217,9 @@ var Toggle = /*#__PURE__*/function (_Component3) {
|
|
|
213
217
|
function Chevron(props) {
|
|
214
218
|
var _ref2 = arguments[0],
|
|
215
219
|
_ref5;
|
|
216
|
-
var styles = props.styles
|
|
217
|
-
|
|
220
|
+
var styles = props.styles,
|
|
221
|
+
size = props.size;
|
|
222
|
+
var SItemChevron = size === 'l' ? _l["default"] : _m["default"];
|
|
218
223
|
return _ref5 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SItemChevron, _ref5.cn("SItemChevron", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({}, _ref2))));
|
|
219
224
|
}
|
|
220
225
|
function Collapse(props) {
|
package/lib/cjs/Accordion.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_flexBox","_animation","_m","_keyboardFocusEnhance","_uniqueID","_useCssVariable","style","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","exports","uniqueIDEnhancement","Toggle","_Component3","_super3","_this3","_len3","_key3","React","createRef","e","toggleRef","current","target","currentTarget","click","_ref","_ref4","_this$asProps4","styles","SItemToggle","Box","cn","_objectSpread2","assignProps","handleKeyDown","keyboardFocusEnhance","Chevron","props","_ref2","arguments[0]","_ref5","SItemChevron","ChevronRight","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 ChevronRight from '@semcore/icon/ChevronRight/m';\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 } = this.asProps;\n return {\n selected,\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 = (e) => {\n switch (e.key) {\n case 'Enter':\n case ' ': {\n if (this.toggleRef.current === e.target) {\n e.currentTarget.click();\n }\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 } = props;\n const SItemChevron = Root;\n return sstyled(styles)(<SItemChevron render={ChevronRight} />);\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","_m","_l","_keyboardFocusEnhance","_uniqueID","_useCssVariable","style","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","e","toggleRef","current","target","currentTarget","click","_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 = (e) => {\n switch (e.key) {\n case 'Enter':\n case ' ': {\n if (this.toggleRef.current === e.target) {\n e.currentTarget.click();\n }\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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"}
|
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 {
|
|
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 & KeyboardFocusProps;\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<'div', AccordionItemToggleProps>;\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
|
@@ -14,18 +14,19 @@ import React from 'react';
|
|
|
14
14
|
import createComponent, { Component, sstyled, Root } from '@semcore/core';
|
|
15
15
|
import { Box } from '@semcore/flex-box';
|
|
16
16
|
import { Collapse as CollapseAnimate } from '@semcore/animation';
|
|
17
|
-
import
|
|
17
|
+
import ChevronRightM from '@semcore/icon/ChevronRight/m';
|
|
18
|
+
import ChevronRightL from '@semcore/icon/ChevronRight/l';
|
|
18
19
|
import keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';
|
|
19
20
|
import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
|
|
20
21
|
import { cssVariableEnhance } from '@semcore/utils/lib/useCssVariable';
|
|
21
22
|
/*__reshadow-styles__:"./style/accordion.shadow.css"*/
|
|
22
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
23
|
-
"__SItemToggle": "
|
|
24
|
-
"_keyboardFocused": "
|
|
25
|
-
"_tabIndex_-1": "_tabIndex_-
|
|
26
|
-
"_disabled": "
|
|
27
|
-
"__SItemChevron": "
|
|
28
|
-
"_selected": "
|
|
23
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SItemToggle_11yyn_gg_{position:relative;cursor:pointer;outline:0}.___SItemToggle_11yyn_gg_.__keyboardFocused_11yyn_gg_:not(._tabIndex_-1_11yyn_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_11yyn_gg_.__disabled_11yyn_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default}.___SItemChevron_11yyn_gg_{transform:rotate(0deg);transition:transform calc(var(--intergalactic-duration-accordion, 200)*1ms) ease-out;fill:var(--intergalactic-icon-primary-neutral, #6c6e79)}.___SItemChevron_11yyn_gg_.__selected_11yyn_gg_{transform:rotate(90deg)}@media (prefers-reduced-motion){.___SItemChevron_11yyn_gg_{transition:none}}" /*__inner_css_end__*/, "11yyn_gg_") /*__reshadow_css_end__*/, {
|
|
24
|
+
"__SItemToggle": "___SItemToggle_11yyn_gg_",
|
|
25
|
+
"_keyboardFocused": "__keyboardFocused_11yyn_gg_",
|
|
26
|
+
"_tabIndex_-1": "_tabIndex_-1_11yyn_gg_",
|
|
27
|
+
"_disabled": "__disabled_11yyn_gg_",
|
|
28
|
+
"__SItemChevron": "___SItemChevron_11yyn_gg_",
|
|
29
|
+
"_selected": "__selected_11yyn_gg_"
|
|
29
30
|
});
|
|
30
31
|
var RootAccordion = /*#__PURE__*/function (_Component) {
|
|
31
32
|
_inherits(RootAccordion, _Component);
|
|
@@ -145,9 +146,12 @@ export var RootItem = /*#__PURE__*/function (_Component2) {
|
|
|
145
146
|
}, {
|
|
146
147
|
key: "getChevronProps",
|
|
147
148
|
value: function getChevronProps() {
|
|
148
|
-
var
|
|
149
|
+
var _this$asProps4 = this.asProps,
|
|
150
|
+
selected = _this$asProps4.selected,
|
|
151
|
+
size = _this$asProps4.size;
|
|
149
152
|
return {
|
|
150
|
-
selected: selected
|
|
153
|
+
selected: selected,
|
|
154
|
+
size: size
|
|
151
155
|
};
|
|
152
156
|
}
|
|
153
157
|
}, {
|
|
@@ -191,9 +195,9 @@ var Toggle = /*#__PURE__*/function (_Component3) {
|
|
|
191
195
|
value: function render() {
|
|
192
196
|
var _ref = this.asProps,
|
|
193
197
|
_ref4;
|
|
194
|
-
var _this$
|
|
195
|
-
styles = _this$
|
|
196
|
-
disabled = _this$
|
|
198
|
+
var _this$asProps5 = this.asProps,
|
|
199
|
+
styles = _this$asProps5.styles,
|
|
200
|
+
disabled = _this$asProps5.disabled;
|
|
197
201
|
var SItemToggle = Box;
|
|
198
202
|
return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(SItemToggle, _ref4.cn("SItemToggle", _objectSpread({}, _assignProps({
|
|
199
203
|
"ref": this.toggleRef,
|
|
@@ -208,8 +212,9 @@ _defineProperty(Toggle, "enhance", [keyboardFocusEnhance()]);
|
|
|
208
212
|
function Chevron(props) {
|
|
209
213
|
var _ref2 = arguments[0],
|
|
210
214
|
_ref5;
|
|
211
|
-
var styles = props.styles
|
|
212
|
-
|
|
215
|
+
var styles = props.styles,
|
|
216
|
+
size = props.size;
|
|
217
|
+
var SItemChevron = size === 'l' ? ChevronRightL : ChevronRightM;
|
|
213
218
|
return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SItemChevron, _ref5.cn("SItemChevron", _objectSpread({}, _assignProps2({}, _ref2))));
|
|
214
219
|
}
|
|
215
220
|
function Collapse(props) {
|
package/lib/es6/Accordion.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Accordion.js","names":["React","createComponent","Component","sstyled","Root","Box","Collapse","CollapseAnimate","ChevronRight","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","Toggle","_Component3","_super3","_this3","_len3","_key3","createRef","e","toggleRef","current","target","currentTarget","click","_ref","_ref4","_this$asProps4","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 ChevronRight from '@semcore/icon/ChevronRight/m';\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 } = this.asProps;\n return {\n selected,\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 = (e) => {\n switch (e.key) {\n case 'Enter':\n case ' ': {\n if (this.toggleRef.current === e.target) {\n e.currentTarget.click();\n }\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 } = props;\n const SItemChevron = Root;\n return sstyled(styles)(<SItemChevron render={ChevronRight} />);\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","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","e","toggleRef","current","target","currentTarget","click","_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 = (e) => {\n switch (e.key) {\n case 'Enter':\n case ' ': {\n if (this.toggleRef.current === e.target) {\n e.currentTarget.click();\n }\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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"}
|
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 {
|
|
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 & KeyboardFocusProps;\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<'div', AccordionItemToggleProps>;\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,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BoxProps, FlexProps } 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';
|
|
@@ -64,6 +64,13 @@ export type AccordionItemContext = {
|
|
|
64
64
|
};
|
|
65
65
|
|
|
66
66
|
export type AccordionItemToggleProps = BoxProps & KeyboardFocusProps;
|
|
67
|
+
export type ChevronItemProps = BoxProps & {
|
|
68
|
+
/**
|
|
69
|
+
* Chevron size
|
|
70
|
+
* @default m
|
|
71
|
+
*/
|
|
72
|
+
size?: 'm' | 'l';
|
|
73
|
+
};
|
|
67
74
|
|
|
68
75
|
type IntergalacticAccordionComponent<PropsExtending = {}> = (<
|
|
69
76
|
Value extends AccordionValue,
|
|
@@ -88,7 +95,7 @@ declare const Accordion: IntergalacticAccordionComponent & {
|
|
|
88
95
|
[handlers: AccordionHandlers]
|
|
89
96
|
> & {
|
|
90
97
|
Toggle: Intergalactic.Component<'div', AccordionItemToggleProps>;
|
|
91
|
-
Chevron:
|
|
98
|
+
Chevron: Intergalactic.Component<'div', ChevronItemProps>;
|
|
92
99
|
Collapse: Intergalactic.Component<'div', CollapseProps>;
|
|
93
100
|
};
|
|
94
101
|
};
|