@semcore/accordion 5.46.0-prerelease.4 → 5.46.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 CHANGED
@@ -2,11 +2,17 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
- ## [5.46.0] - 2025-02-27
5
+ ## [5.46.0] - 2025-03-14
6
6
 
7
- ### Changed
7
+ ### Added
8
+
9
+ - Build for ESM.
10
+
11
+ ## [5.45.3] - 2025-03-03
12
+
13
+ ### Added
8
14
 
9
- - Version minor update due to children dependencies update (`@semcore/animation` [2.40.1 ~> 2.41.0], `@semcore/flex-box` [5.40.1 ~> 5.41.0], `@semcore/icon` [4.57.1 ~> 4.58.0], `@semcore/utils` [4.45.1 ~> 4.47.1], `@semcore/button` [5.41.2 ~> 5.42.0], `@semcore/core` [2.38.1 ~> 2.39.0]).
15
+ - `inert` and `aria-hidden` to collapsed Accordion.Item with preserveNode property to prevent focus and reading of hidden elements.
10
16
 
11
17
  ## [5.45.2] - 2025-02-05
12
18
 
@@ -260,9 +260,12 @@ function ToggleButton(props) {
260
260
  function Collapse(props) {
261
261
  var _ref4 = arguments[0];
262
262
  var selected = props.selected;
263
+ var visible = selected;
263
264
  return /*#__PURE__*/_react["default"].createElement(_animation.Collapse, (0, _core.assignProps)({
264
- "visible": selected,
265
- "interactive": true
265
+ "visible": visible,
266
+ "interactive": true,
267
+ "inert": !visible ? '' : undefined,
268
+ "aria-hidden": !visible
266
269
  }, _ref4));
267
270
  }
268
271
  var Item = (0, _core["default"])(RootItem, {
@@ -1 +1 @@
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","use","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 use: 'secondary',\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, use } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n use,\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, use } = this.asProps;\n return {\n use,\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': selected ? `igc-${uid}-${value}-collapse` : undefined,\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, use } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle use={use} ref={this.toggleRef} render={Text} onKeyDown={this.handleKeyDown} />,\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 } = props;\n\n const SToggleButton = Root;\n return sstyled(styles)(\n <SToggleButton alignItems='center' render={Flex} role={'button'} {...props} />,\n );\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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"}
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","use","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","visible","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 use: 'secondary',\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, use } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n use,\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, use } = this.asProps;\n return {\n use,\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': selected ? `igc-${uid}-${value}-collapse` : undefined,\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, use } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle use={use} ref={this.toggleRef} render={Text} onKeyDown={this.handleKeyDown} />,\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 } = props;\n\n const SToggleButton = Root;\n return sstyled(styles)(\n <SToggleButton alignItems='center' render={Flex} role={'button'} {...props} />,\n );\n}\n\nfunction Collapse(props) {\n const { selected } = props;\n const visible = selected;\n\n return (\n <Root\n render={CollapseAnimate}\n visible={visible}\n interactive\n inert={!visible ? '' : undefined}\n aria-hidden={!visible}\n />\n );\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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"}
@@ -255,9 +255,12 @@ function ToggleButton(props) {
255
255
  function Collapse(props) {
256
256
  var _ref4 = arguments[0];
257
257
  var selected = props.selected;
258
+ var visible = selected;
258
259
  return /*#__PURE__*/React.createElement(CollapseAnimate, _assignProps4({
259
- "visible": selected,
260
- "interactive": true
260
+ "visible": visible,
261
+ "interactive": true,
262
+ "inert": !visible ? '' : undefined,
263
+ "aria-hidden": !visible
261
264
  }, _ref4));
262
265
  }
263
266
  var Item = createComponent(RootItem, {
@@ -1 +1 @@
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","use","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 use: 'secondary',\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, use } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n use,\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, use } = this.asProps;\n return {\n use,\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': selected ? `igc-${uid}-${value}-collapse` : undefined,\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, use } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle use={use} ref={this.toggleRef} render={Text} onKeyDown={this.handleKeyDown} />,\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 } = props;\n\n const SToggleButton = Root;\n return sstyled(styles)(\n <SToggleButton alignItems='center' render={Flex} role={'button'} {...props} />,\n );\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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"}
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","use","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","visible","_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 use: 'secondary',\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, use } = this.asProps;\n const selected = Array.isArray(selectedValue)\n ? selectedValue.includes(value)\n : selectedValue === value;\n return {\n selected,\n duration,\n use,\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, use } = this.asProps;\n return {\n use,\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': selected ? `igc-${uid}-${value}-collapse` : undefined,\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, use } = this.asProps;\n const SItemToggle = Root;\n\n return sstyled(styles)(\n <SItemToggle use={use} ref={this.toggleRef} render={Text} onKeyDown={this.handleKeyDown} />,\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 } = props;\n\n const SToggleButton = Root;\n return sstyled(styles)(\n <SToggleButton alignItems='center' render={Flex} role={'button'} {...props} />,\n );\n}\n\nfunction Collapse(props) {\n const { selected } = props;\n const visible = selected;\n\n return (\n <Root\n render={CollapseAnimate}\n visible={visible}\n interactive\n inert={!visible ? '' : undefined}\n aria-hidden={!visible}\n />\n );\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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"}
@@ -0,0 +1,223 @@
1
+ import p from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import k from "@babel/runtime/helpers/esm/toConsumableArray";
3
+ import h from "@babel/runtime/helpers/esm/classCallCheck";
4
+ import x from "@babel/runtime/helpers/esm/createClass";
5
+ import m from "@babel/runtime/helpers/esm/assertThisInitialized";
6
+ import y from "@babel/runtime/helpers/esm/inherits";
7
+ import b from "@babel/runtime/helpers/esm/createSuper";
8
+ import c from "@babel/runtime/helpers/esm/defineProperty";
9
+ import { sstyled as A } from "@semcore/utils/lib/core/index";
10
+ import C, { Component as I, sstyled as P, assignProps as v } from "@semcore/core";
11
+ import g from "react";
12
+ import { Flex as R } from "@semcore/flex-box";
13
+ import { Collapse as $ } from "@semcore/animation";
14
+ import { Text as E } from "@semcore/typography";
15
+ import z from "@semcore/icon/ChevronRight/m";
16
+ import w from "@semcore/icon/ChevronRight/l";
17
+ import B from "@semcore/utils/lib/enhances/keyboardFocusEnhance";
18
+ import D from "@semcore/utils/lib/uniqueID";
19
+ import { cssVariableEnhance as F } from "@semcore/utils/lib/useCssVariable";
20
+ var T = (
21
+ /*__reshadow_css_start__*/
22
+ (A.insert(
23
+ /*__inner_css_start__*/
24
+ '.___SItemToggle_1lx1d_gg_{display:flex;align-items:center;position:relative;cursor:pointer;outline:0}.___SItemToggle_1lx1d_gg_.__keyboardFocused_1lx1d_gg_:not(._tabIndex_-1_1lx1d_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_1lx1d_gg_.__use_1lx1d_gg_.__use_1lx1d_gg_{color:var(--intergalactic-text-primary, #191b23);font-weight:var(--intergalactic-regular, 400)}.___SItemToggle_1lx1d_gg_.__use_1lx1d_gg_._use_primary_1lx1d_gg_{background-color:var(--intergalactic-bg-secondary-neutral, #f4f5f9);padding:var(--intergalactic-spacing-2x, 8px) var(--intergalactic-spacing-3x, 12px);margin-bottom:var(--intergalactic-spacing-05x, 2px)}@media (hover:hover){.___SItemToggle_1lx1d_gg_.__use_1lx1d_gg_._use_primary_1lx1d_gg_:hover{background-color:var(--intergalactic-bg-secondary-neutral-hover, #e0e1e9)}}.___SItemToggle_1lx1d_gg_.__disabled_1lx1d_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default}.___SItemChevron_1lx1d_gg_{transform:rotate(0deg);transition:transform calc(var(--intergalactic-duration-accordion, 200)*1ms) ease-out;fill:var(--intergalactic-icon-primary-neutral, #6c6e79)}.___SItemChevron_1lx1d_gg_.__selected_1lx1d_gg_{transform:rotate(90deg)}@media (prefers-reduced-motion){.___SItemChevron_1lx1d_gg_{transition:none}}',
25
+ "1lx1d_gg_"
26
+ ), {
27
+ __SItemToggle: "___SItemToggle_1lx1d_gg_",
28
+ _keyboardFocused: "__keyboardFocused_1lx1d_gg_",
29
+ "_tabIndex_-1": "_tabIndex_-1_1lx1d_gg_",
30
+ _use: "__use_1lx1d_gg_",
31
+ _use_primary: "_use_primary_1lx1d_gg_",
32
+ _disabled: "__disabled_1lx1d_gg_",
33
+ __SItemChevron: "___SItemChevron_1lx1d_gg_",
34
+ _selected: "__selected_1lx1d_gg_"
35
+ })
36
+ ), u = /* @__PURE__ */ function(s) {
37
+ y(o, s);
38
+ var i = b(o);
39
+ function o() {
40
+ var r;
41
+ h(this, o);
42
+ for (var e = arguments.length, n = new Array(e), t = 0; t < e; t++)
43
+ n[t] = arguments[t];
44
+ return r = i.call.apply(i, [this].concat(n)), c(m(r), "handleToggleInteraction", function(a) {
45
+ var l = r.asProps.value;
46
+ if (Array.isArray(l)) {
47
+ var _ = l.indexOf(a), d = k(l);
48
+ _ === -1 ? d.push(a) : d.splice(_, 1), r.handlers.value(d);
49
+ } else
50
+ r.handlers.value(l === a ? null : a);
51
+ }), r;
52
+ }
53
+ return x(o, [{
54
+ key: "uncontrolledProps",
55
+ value: function() {
56
+ return {
57
+ value: null
58
+ };
59
+ }
60
+ }, {
61
+ key: "getItemProps",
62
+ value: function(e) {
63
+ var n = e.value, t = this.asProps, a = t.value, l = t.duration, _ = t.use, d = Array.isArray(a) ? a.includes(n) : a === n;
64
+ return {
65
+ selected: d,
66
+ duration: l,
67
+ use: _,
68
+ $handleInteraction: this.handleToggleInteraction
69
+ };
70
+ }
71
+ }, {
72
+ key: "render",
73
+ value: function() {
74
+ var e = this.asProps.Children;
75
+ return /* @__PURE__ */ g.createElement(e, null);
76
+ }
77
+ }]), o;
78
+ }(I);
79
+ c(u, "displayName", "Accordion");
80
+ c(u, "style", T);
81
+ c(u, "defaultProps", {
82
+ defaultValue: [],
83
+ use: "secondary"
84
+ });
85
+ c(u, "enhance", [F({
86
+ variable: "--intergalactic-duration-accordion",
87
+ fallback: "200",
88
+ map: Number.parseInt,
89
+ prop: "duration"
90
+ })]);
91
+ var f = /* @__PURE__ */ function(s) {
92
+ y(o, s);
93
+ var i = b(o);
94
+ function o() {
95
+ var r;
96
+ h(this, o);
97
+ for (var e = arguments.length, n = new Array(e), t = 0; t < e; t++)
98
+ n[t] = arguments[t];
99
+ return r = i.call.apply(i, [this].concat(n)), c(m(r), "handleClick", function() {
100
+ var a = r.asProps, l = a.value, _ = a.$handleInteraction;
101
+ _(l);
102
+ }), r;
103
+ }
104
+ return x(o, [{
105
+ key: "getToggleProps",
106
+ value: function() {
107
+ var e = this.asProps, n = e.value, t = e.uid;
108
+ e.selected;
109
+ var a = e.disabled, l = e.use;
110
+ return {
111
+ use: l,
112
+ disabled: a,
113
+ onClick: a ? void 0 : this.handleClick,
114
+ id: "igc-".concat(t, "-").concat(n, "-toggle"),
115
+ tag: "h3",
116
+ size: 300
117
+ };
118
+ }
119
+ }, {
120
+ key: "getToggleButtonProps",
121
+ value: function() {
122
+ var e = this.asProps, n = e.value, t = e.uid, a = e.selected, l = e.disabled;
123
+ return {
124
+ disabled: l,
125
+ id: "igc-".concat(t, "-").concat(n, "-toggle-button"),
126
+ "aria-expanded": a ? "true" : "false",
127
+ "aria-controls": a ? "igc-".concat(t, "-").concat(n, "-collapse") : void 0
128
+ };
129
+ }
130
+ }, {
131
+ key: "getCollapseProps",
132
+ value: function() {
133
+ var e = this.asProps, n = e.selected, t = e.uid, a = e.duration, l = e.value;
134
+ return {
135
+ selected: n,
136
+ duration: a,
137
+ id: "igc-".concat(t, "-").concat(l, "-collapse"),
138
+ role: "region",
139
+ "aria-labelledby": "igc-".concat(t, "-").concat(l, "-toggle-button")
140
+ };
141
+ }
142
+ }, {
143
+ key: "getChevronProps",
144
+ value: function() {
145
+ var e = this.asProps, n = e.selected, t = e.size;
146
+ return {
147
+ selected: n,
148
+ size: t
149
+ };
150
+ }
151
+ }, {
152
+ key: "render",
153
+ value: function() {
154
+ var e = this.asProps.Children;
155
+ return /* @__PURE__ */ g.createElement(e, null);
156
+ }
157
+ }]), o;
158
+ }(I);
159
+ c(f, "displayName", "Item");
160
+ c(f, "style", T);
161
+ c(f, "enhance", [D()]);
162
+ var S = /* @__PURE__ */ function(s) {
163
+ y(o, s);
164
+ var i = b(o);
165
+ function o() {
166
+ var r;
167
+ h(this, o);
168
+ for (var e = arguments.length, n = new Array(e), t = 0; t < e; t++)
169
+ n[t] = arguments[t];
170
+ return r = i.call.apply(i, [this].concat(n)), c(m(r), "toggleRef", /* @__PURE__ */ g.createRef()), c(m(r), "handleKeyDown", function(a) {
171
+ a.key === "Enter" ? r.toggleRef.current === a.target && a.currentTarget.click() : a.key === " " && (a.preventDefault(), r.toggleRef.current === a.target && a.currentTarget.click());
172
+ }), r;
173
+ }
174
+ return x(o, [{
175
+ key: "render",
176
+ value: function() {
177
+ var e = this.asProps, n, t = this.asProps, a = t.styles;
178
+ t.disabled;
179
+ var l = t.use, _ = E;
180
+ return n = P(a), /* @__PURE__ */ g.createElement(_, n.cn("SItemToggle", p({}, v({
181
+ use: l,
182
+ ref: this.toggleRef,
183
+ onKeyDown: this.handleKeyDown
184
+ }, e))));
185
+ }
186
+ }]), o;
187
+ }(I);
188
+ c(S, "enhance", [B()]);
189
+ function K(s) {
190
+ var i = arguments[0], o, r = s.styles, e = s.size, n = e === "l" ? w : z;
191
+ return o = P(r), /* @__PURE__ */ g.createElement(n, o.cn("SItemChevron", p({}, v({}, i))));
192
+ }
193
+ function N(s) {
194
+ var i = arguments[0], o, r = s.styles, e = R;
195
+ return o = P(r), /* @__PURE__ */ g.createElement(e, o.cn("SToggleButton", p({}, v(p({
196
+ alignItems: "center",
197
+ role: "button"
198
+ }, s), i))));
199
+ }
200
+ function j(s) {
201
+ var i = arguments[0], o = s.selected, r = o;
202
+ return /* @__PURE__ */ g.createElement($, v({
203
+ visible: r,
204
+ interactive: !0,
205
+ inert: r ? void 0 : "",
206
+ "aria-hidden": !r
207
+ }, i));
208
+ }
209
+ var q = C(f, {
210
+ Toggle: S,
211
+ Chevron: K,
212
+ ToggleButton: N,
213
+ Collapse: j
214
+ }), le = C(u, {
215
+ Item: q
216
+ }), ie = function(i) {
217
+ return i;
218
+ };
219
+ export {
220
+ f as RootItem,
221
+ le as default,
222
+ ie as wrapAccordion
223
+ };
@@ -0,0 +1,6 @@
1
+ import { RootItem as t, default as e, wrapAccordion as a } from "./Accordion.mjs";
2
+ export {
3
+ t as RootItem,
4
+ e as default,
5
+ a as wrapAccordion
6
+ };
package/package.json CHANGED
@@ -1,23 +1,28 @@
1
1
  {
2
2
  "name": "@semcore/accordion",
3
3
  "description": "Semrush Accordion Component",
4
- "version": "5.46.0-prerelease.4",
4
+ "version": "5.46.0",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
8
8
  "sideEffects": false,
9
9
  "author": "UI-kit team <ui-kit-team@semrush.com>",
10
10
  "license": "MIT",
11
+ "exports": {
12
+ "require": "./lib/cjs/index.js",
13
+ "import": "./lib/esm/index.mjs",
14
+ "types": "./lib/types/index.d.ts"
15
+ },
11
16
  "dependencies": {
12
- "@semcore/animation": "2.41.0-prerelease.4",
13
- "@semcore/flex-box": "5.41.0-prerelease.4",
14
- "@semcore/icon": "4.58.0-prerelease.4",
15
- "@semcore/utils": "4.47.1-prerelease.4",
16
- "@semcore/button": "5.42.0-prerelease.4",
17
- "@semcore/typography": "5.52.0-prerelease.4"
17
+ "@semcore/animation": "2.41.0",
18
+ "@semcore/flex-box": "5.41.0",
19
+ "@semcore/icon": "4.60.0",
20
+ "@semcore/utils": "4.48.0",
21
+ "@semcore/button": "5.42.0",
22
+ "@semcore/typography": "5.52.0"
18
23
  },
19
24
  "peerDependencies": {
20
- "@semcore/core": "^2.39.0-prerelease.4",
25
+ "@semcore/core": "^2.17.5",
21
26
  "react": "16.8 - 18",
22
27
  "react-dom": "16.8 - 18"
23
28
  },
@@ -31,6 +36,6 @@
31
36
  "@semcore/testing-utils": "1.0.0"
32
37
  },
33
38
  "scripts": {
34
- "build": "pnpm semcore-builder --source=js"
39
+ "build": "pnpm semcore-builder --source=js && pnpm vite build"
35
40
  }
36
41
  }
package/vite.config.ts ADDED
@@ -0,0 +1,17 @@
1
+ import { defineConfig, mergeConfig } from 'vite';
2
+
3
+ import viteConfig from '../../commonVite.config';
4
+
5
+ export default mergeConfig(
6
+ viteConfig,
7
+ defineConfig({
8
+ build: {
9
+ lib: {
10
+ entry: './src/index.js',
11
+ },
12
+ rollupOptions: {
13
+ external: ['react', 'react-dom', 'react/jsx-runtime', /@babel\/runtime\/*/, /@semcore\/*/],
14
+ },
15
+ },
16
+ }),
17
+ );