@elliemae/ds-accordion 2.2.0-alpha.4 → 3.0.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/cjs/DSAccordion.js +29 -50
  2. package/cjs/DSAccordionCTX.js +14 -40
  3. package/cjs/DSAccordionDatatestid.js +10 -38
  4. package/cjs/DSAccordionTypes.js +2 -27
  5. package/cjs/config/useAccordion.js +36 -59
  6. package/cjs/config/useAccordionRefs.js +39 -46
  7. package/cjs/defaultProps.js +39 -49
  8. package/cjs/index.js +14 -37
  9. package/cjs/parts/accordionContent/AccordionContent.js +35 -44
  10. package/cjs/parts/accordionItem/DSAccordionItem.js +174 -147
  11. package/cjs/parts/accordionItem/styles.js +128 -142
  12. package/cjs/parts/accordionItem/useAccordionItem.js +39 -52
  13. package/cjs/parts/accordionItem/useIsShowingEllipsis.js +21 -42
  14. package/cjs/propTypes.js +22 -53
  15. package/esm/DSAccordion.js +16 -18
  16. package/esm/DSAccordionCTX.js +9 -10
  17. package/esm/DSAccordionDatatestid.js +6 -9
  18. package/esm/DSAccordionTypes.js +1 -2
  19. package/esm/config/useAccordion.js +27 -25
  20. package/esm/config/useAccordionRefs.js +31 -17
  21. package/esm/defaultProps.js +31 -21
  22. package/esm/index.js +2 -8
  23. package/esm/parts/accordionContent/AccordionContent.js +25 -14
  24. package/esm/parts/accordionItem/DSAccordionItem.js +147 -114
  25. package/esm/parts/accordionItem/styles.js +115 -116
  26. package/esm/parts/accordionItem/useAccordionItem.js +33 -21
  27. package/esm/parts/accordionItem/useIsShowingEllipsis.js +15 -11
  28. package/esm/propTypes.js +17 -24
  29. package/package.json +7 -7
  30. package/cjs/DSAccordion.js.map +0 -7
  31. package/cjs/DSAccordionCTX.js.map +0 -7
  32. package/cjs/DSAccordionDatatestid.js.map +0 -7
  33. package/cjs/DSAccordionTypes.js.map +0 -7
  34. package/cjs/config/useAccordion.js.map +0 -7
  35. package/cjs/config/useAccordionRefs.js.map +0 -7
  36. package/cjs/defaultProps.js.map +0 -7
  37. package/cjs/index.js.map +0 -7
  38. package/cjs/parts/accordionContent/AccordionContent.js.map +0 -7
  39. package/cjs/parts/accordionItem/DSAccordionItem.js.map +0 -7
  40. package/cjs/parts/accordionItem/styles.js.map +0 -7
  41. package/cjs/parts/accordionItem/useAccordionItem.js.map +0 -7
  42. package/cjs/parts/accordionItem/useIsShowingEllipsis.js.map +0 -7
  43. package/cjs/propTypes.js.map +0 -7
  44. package/esm/DSAccordion.js.map +0 -7
  45. package/esm/DSAccordionCTX.js.map +0 -7
  46. package/esm/DSAccordionDatatestid.js.map +0 -7
  47. package/esm/DSAccordionTypes.js.map +0 -7
  48. package/esm/config/useAccordion.js.map +0 -7
  49. package/esm/config/useAccordionRefs.js.map +0 -7
  50. package/esm/defaultProps.js.map +0 -7
  51. package/esm/index.js.map +0 -7
  52. package/esm/parts/accordionContent/AccordionContent.js.map +0 -7
  53. package/esm/parts/accordionItem/DSAccordionItem.js.map +0 -7
  54. package/esm/parts/accordionItem/styles.js.map +0 -7
  55. package/esm/parts/accordionItem/useAccordionItem.js.map +0 -7
  56. package/esm/parts/accordionItem/useIsShowingEllipsis.js.map +0 -7
  57. package/esm/propTypes.js.map +0 -7
@@ -1,50 +1,41 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var AccordionContent_exports = {};
29
- __export(AccordionContent_exports, {
30
- AccordionContent: () => AccordionContent
31
- });
32
- var React = __toESM(require("react"));
33
- var import_react = __toESM(require("react"));
34
- var import_DSAccordionCTX = require("../../DSAccordionCTX");
35
- var import_DSAccordionDatatestid = require("../../DSAccordionDatatestid");
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
6
+ require('core-js/modules/esnext.async-iterator.for-each.js');
7
+ require('core-js/modules/esnext.iterator.constructor.js');
8
+ require('core-js/modules/esnext.iterator.for-each.js');
9
+ require('core-js/modules/esnext.async-iterator.filter.js');
10
+ require('core-js/modules/esnext.iterator.filter.js');
11
+ var React = require('react');
12
+ var DSAccordionCTX = require('../../DSAccordionCTX.js');
13
+ var DSAccordionDatatestid = require('../../DSAccordionDatatestid.js');
14
+ var jsxRuntime = require('react/jsx-runtime');
15
+
16
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
17
+
18
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
19
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
20
+
21
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
+
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
36
24
  const AccordionContent = () => {
37
25
  const {
38
- props: { containerProps, children }
39
- } = (0, import_react.useContext)(import_DSAccordionCTX.DSAccordionContext);
26
+ props: {
27
+ containerProps,
28
+ children
29
+ }
30
+ } = React.useContext(DSAccordionCTX.DSAccordionContext);
40
31
  const childrenWithIndex = [];
41
- import_react.default.Children.forEach(children, (child, index) => childrenWithIndex.push(import_react.default.cloneElement(child, {
32
+ React__default["default"].Children.forEach(children, (child, index) => childrenWithIndex.push( /*#__PURE__*/React__default["default"].cloneElement(child, {
42
33
  dsIndex: index
43
34
  })));
44
- return /* @__PURE__ */ import_react.default.createElement("div", {
45
- ...containerProps,
46
- "data-testid": import_DSAccordionDatatestid.DSAccordionDataTestid.GROUP
47
- }, childrenWithIndex);
35
+ return /*#__PURE__*/jsxRuntime.jsx("div", _objectSpread(_objectSpread({}, containerProps), {}, {
36
+ "data-testid": DSAccordionDatatestid.DSAccordionDataTestid.GROUP,
37
+ children: childrenWithIndex
38
+ }));
48
39
  };
49
- module.exports = __toCommonJS(AccordionContent_exports);
50
- //# sourceMappingURL=AccordionContent.js.map
40
+
41
+ exports.AccordionContent = AccordionContent;
@@ -1,51 +1,47 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __reExport = (target, module2, copyDefault, desc) => {
13
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
14
- for (let key of __getOwnPropNames(module2))
15
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
16
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
17
- }
18
- return target;
19
- };
20
- var __toESM = (module2, isNodeMode) => {
21
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
22
- };
23
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
24
- return (module2, temp) => {
25
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
26
- };
27
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
28
- var DSAccordionItem_exports = {};
29
- __export(DSAccordionItem_exports, {
30
- DSAccordionItem: () => DSAccordionItem,
31
- DSAccordionItemWithSchema: () => DSAccordionItemWithSchema,
32
- default: () => DSAccordionItem_default
33
- });
34
- var React = __toESM(require("react"));
35
- var import_react = __toESM(require("react"));
36
- var import_react_desc = require("react-desc");
37
- var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
38
- var import_ds_button = require("@elliemae/ds-button");
39
- var import_ds_popperjs = require("@elliemae/ds-popperjs");
40
- var import_defaultProps = require("../../defaultProps");
41
- var import_styles = require("./styles");
42
- var import_propTypes = require("../../propTypes");
43
- var import_useAccordionItem = require("./useAccordionItem");
44
- var import_DSAccordionCTX = require("../../DSAccordionCTX");
45
- var import_DSAccordionDatatestid = require("../../DSAccordionDatatestid");
46
- var import_useIsShowingEllipsis = require("./useIsShowingEllipsis");
47
- const DSAccordionItem = (props) => {
48
- const propsWithDefaults = (0, import_ds_props_helpers.useMemoMergePropsWithDefault)(props, import_defaultProps.accordionItemDefaultProps);
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var _jsx2 = require('@babel/runtime/helpers/jsx');
6
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
8
+ require('core-js/modules/web.dom-collections.iterator.js');
9
+ require('core-js/modules/esnext.async-iterator.map.js');
10
+ require('core-js/modules/esnext.iterator.map.js');
11
+ require('core-js/modules/esnext.async-iterator.filter.js');
12
+ require('core-js/modules/esnext.iterator.constructor.js');
13
+ require('core-js/modules/esnext.iterator.filter.js');
14
+ require('core-js/modules/esnext.async-iterator.for-each.js');
15
+ require('core-js/modules/esnext.iterator.for-each.js');
16
+ var React = require('react');
17
+ var reactDesc = require('react-desc');
18
+ var dsPropsHelpers = require('@elliemae/ds-props-helpers');
19
+ var DSButton = require('@elliemae/ds-button');
20
+ var dsPopperjs = require('@elliemae/ds-popperjs');
21
+ var defaultProps = require('../../defaultProps.js');
22
+ var styles = require('./styles.js');
23
+ var propTypes = require('../../propTypes.js');
24
+ var useAccordionItem = require('./useAccordionItem.js');
25
+ var DSAccordionCTX = require('../../DSAccordionCTX.js');
26
+ var DSAccordionDatatestid = require('../../DSAccordionDatatestid.js');
27
+ var useIsShowingEllipsis = require('./useIsShowingEllipsis.js');
28
+ var jsxRuntime = require('react/jsx-runtime');
29
+
30
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
31
+
32
+ var _jsx2__default = /*#__PURE__*/_interopDefaultLegacy(_jsx2);
33
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
34
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
35
+ var DSButton__default = /*#__PURE__*/_interopDefaultLegacy(DSButton);
36
+
37
+ const _excluded = ["onClick", "id"];
38
+
39
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
40
+
41
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
42
+
43
+ const DSAccordionItem = props => {
44
+ const propsWithDefaults = dsPropsHelpers.useMemoMergePropsWithDefault(props, defaultProps.accordionItemDefaultProps);
49
45
  const {
50
46
  children,
51
47
  title,
@@ -58,122 +54,153 @@ const DSAccordionItem = (props) => {
58
54
  dsIndex,
59
55
  renderCustomActions
60
56
  } = propsWithDefaults;
61
- const { handleOnClick, handleOnKeyDown, selected } = (0, import_useAccordionItem.useAccordionItem)({ value, disabled });
57
+ const {
58
+ handleOnClick,
59
+ handleOnKeyDown,
60
+ selected
61
+ } = useAccordionItem.useAccordionItem({
62
+ value,
63
+ disabled
64
+ });
62
65
  const {
63
66
  allChildrenReferences,
64
67
  actualActiveValue,
65
- props: { isDSMobile }
66
- } = (0, import_react.useContext)(import_DSAccordionCTX.DSAccordionContext);
67
- const onKeyDownWithIndex = (0, import_react.useCallback)((e) => {
68
+ props: {
69
+ isDSMobile
70
+ }
71
+ } = React.useContext(DSAccordionCTX.DSAccordionContext);
72
+ const onKeyDownWithIndex = React.useCallback(e => {
68
73
  handleOnKeyDown(e, dsIndex);
69
74
  }, [dsIndex, handleOnKeyDown]);
70
- const [showPopover, setShowPopover] = (0, import_react.useState)(false);
71
- const [referenceElement, setReferenceElement] = (0, import_react.useState)();
72
- const CustomActionsContent = (0, import_react.useMemo)(() => {
73
- if (!isDSMobile && customActions?.length > 0)
74
- return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemCustomActions, null, customActions?.map(({ onClick, id, ...rest }) => /* @__PURE__ */ import_react.default.createElement(import_ds_button.DSButton, {
75
- key: id,
76
- onClick: (e) => {
75
+ const [showPopover, setShowPopover] = React.useState(false);
76
+ const [referenceElement, setReferenceElement] = React.useState();
77
+ const CustomActionsContent = React.useMemo(() => {
78
+ if (!isDSMobile && (customActions === null || customActions === void 0 ? void 0 : customActions.length) > 0) return /*#__PURE__*/_jsx2__default["default"](styles.StyledItemCustomActions, {}, void 0, customActions === null || customActions === void 0 ? void 0 : customActions.map(_ref => {
79
+ let {
80
+ onClick,
81
+ id
82
+ } = _ref,
83
+ rest = _objectWithoutProperties__default["default"](_ref, _excluded);
84
+
85
+ return /*#__PURE__*/jsxRuntime.jsx(DSButton__default["default"], _objectSpread(_objectSpread({
86
+ onClick: e => {
77
87
  e.stopPropagation();
78
- if (onClick)
79
- onClick(e);
80
- },
81
- ...rest,
82
- buttonType: import_ds_button.BUTTON_TYPE.SECONDARY
83
- })));
84
- if (!isDSMobile && renderCustomActions)
85
- return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemCustomActions, null, renderCustomActions({ allRefs: allChildrenReferences, actualActiveValue }));
88
+ if (onClick) onClick(e);
89
+ }
90
+ }, rest), {}, {
91
+ buttonType: DSButton.BUTTON_TYPE.SECONDARY
92
+ }), id);
93
+ }));
94
+ if (!isDSMobile && renderCustomActions) return /*#__PURE__*/_jsx2__default["default"](styles.StyledItemCustomActions, {}, void 0, renderCustomActions({
95
+ allRefs: allChildrenReferences,
96
+ actualActiveValue
97
+ }));
86
98
  return null;
87
99
  }, [actualActiveValue, allChildrenReferences, customActions, isDSMobile, renderCustomActions]);
88
- const { isShowingEllipsis: isPrimaryShowingEllipsis, setElement: setPrimaryElement } = (0, import_useIsShowingEllipsis.useIsShowingEllipsis)();
89
- const { isShowingEllipsis: isSecondaryShowingEllipsis, setElement: setSecondaryElement } = (0, import_useIsShowingEllipsis.useIsShowingEllipsis)();
90
- const handleOnFocus = (0, import_react.useCallback)(() => setShowPopover(isPrimaryShowingEllipsis || isSecondaryShowingEllipsis), [isPrimaryShowingEllipsis, isSecondaryShowingEllipsis]);
91
- const handleOnBlur = (0, import_react.useCallback)(() => setShowPopover(false), []);
92
- const Titles = (0, import_react.useMemo)(() => {
93
- if (isPrimaryShowingEllipsis || isSecondaryShowingEllipsis)
94
- return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledPrimaryTitle, {
100
+ const {
101
+ isShowingEllipsis: isPrimaryShowingEllipsis,
102
+ setElement: setPrimaryElement
103
+ } = useIsShowingEllipsis.useIsShowingEllipsis();
104
+ const {
105
+ isShowingEllipsis: isSecondaryShowingEllipsis,
106
+ setElement: setSecondaryElement
107
+ } = useIsShowingEllipsis.useIsShowingEllipsis();
108
+ const handleOnFocus = React.useCallback(() => setShowPopover(isPrimaryShowingEllipsis || isSecondaryShowingEllipsis), [isPrimaryShowingEllipsis, isSecondaryShowingEllipsis]);
109
+ const handleOnBlur = React.useCallback(() => setShowPopover(false), []);
110
+ const Titles = React.useMemo(() => {
111
+ if (isPrimaryShowingEllipsis || isSecondaryShowingEllipsis) return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
112
+ children: [/*#__PURE__*/jsxRuntime.jsx(styles.StyledPrimaryTitle, {
95
113
  ref: setPrimaryElement,
96
- id: `accordion_${title}id`,
97
- disabled,
98
- isDSMobile
99
- }, title), !isDSMobile && secondaryTitle && /* @__PURE__ */ import_react.default.createElement(import_styles.StyledSecondaryTitle, {
114
+ id: "accordion_".concat(title, "id"),
115
+ disabled: disabled,
116
+ isDSMobile: isDSMobile,
117
+ children: title
118
+ }), !isDSMobile && secondaryTitle && /*#__PURE__*/jsxRuntime.jsx(styles.StyledSecondaryTitle, {
100
119
  ref: setSecondaryElement,
101
- disabled
102
- }, secondaryTitle), /* @__PURE__ */ import_react.default.createElement(import_ds_popperjs.DSPopperJS, {
103
- referenceElement,
104
- showPopover
105
- }, /* @__PURE__ */ import_react.default.createElement("div", {
106
- style: { maxWidth: 260, padding: 8, background: "white", display: "grid", gap: 8 }
107
- }, /* @__PURE__ */ import_react.default.createElement("p", {
108
- style: { margin: 0 }
109
- }, title), /* @__PURE__ */ import_react.default.createElement("p", {
110
- style: { margin: 0 }
111
- }, " ", secondaryTitle))));
112
- return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledPrimaryTitle, {
113
- ref: setPrimaryElement,
114
- id: `accordion_${title}id`,
115
- disabled,
116
- isDSMobile
117
- }, title), !isDSMobile && secondaryTitle && /* @__PURE__ */ import_react.default.createElement(import_styles.StyledSecondaryTitle, {
118
- ref: setSecondaryElement,
119
- disabled
120
- }, secondaryTitle));
121
- }, [
122
- disabled,
123
- isDSMobile,
124
- isPrimaryShowingEllipsis,
125
- isSecondaryShowingEllipsis,
126
- referenceElement,
127
- secondaryTitle,
128
- setPrimaryElement,
129
- setSecondaryElement,
130
- showPopover,
131
- title
132
- ]);
133
- return /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemContainer, {
134
- "data-testid": import_DSAccordionDatatestid.DSAccordionDataTestid.ITEM.CONTAINER
135
- }, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemHeaderContainer, {
136
- disabled
137
- }, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemHeader, {
138
- withCustomActions: (customActions?.length > 0 || renderCustomActions !== void 0) && !isDSMobile,
120
+ disabled: disabled,
121
+ children: secondaryTitle
122
+ }), /*#__PURE__*/_jsx2__default["default"](dsPopperjs.DSPopperJS, {
123
+ referenceElement: referenceElement,
124
+ showPopover: showPopover
125
+ }, void 0, /*#__PURE__*/_jsx2__default["default"]("div", {
126
+ style: {
127
+ maxWidth: 260,
128
+ padding: 8,
129
+ background: 'white',
130
+ display: 'grid',
131
+ gap: 8
132
+ }
133
+ }, void 0, /*#__PURE__*/_jsx2__default["default"]("p", {
134
+ style: {
135
+ margin: 0
136
+ }
137
+ }, void 0, title), /*#__PURE__*/_jsx2__default["default"]("p", {
138
+ style: {
139
+ margin: 0
140
+ }
141
+ }, void 0, " ", secondaryTitle)))]
142
+ });
143
+ return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
144
+ children: [/*#__PURE__*/jsxRuntime.jsx(styles.StyledPrimaryTitle, {
145
+ ref: setPrimaryElement,
146
+ id: "accordion_".concat(title, "id"),
147
+ disabled: disabled,
148
+ isDSMobile: isDSMobile,
149
+ children: title
150
+ }), !isDSMobile && secondaryTitle && /*#__PURE__*/jsxRuntime.jsx(styles.StyledSecondaryTitle, {
151
+ ref: setSecondaryElement,
152
+ disabled: disabled,
153
+ children: secondaryTitle
154
+ })]
155
+ });
156
+ }, [disabled, isDSMobile, isPrimaryShowingEllipsis, isSecondaryShowingEllipsis, referenceElement, secondaryTitle, setPrimaryElement, setSecondaryElement, showPopover, title]);
157
+ return /*#__PURE__*/_jsx2__default["default"](styles.StyledItemContainer, {
158
+ "data-testid": DSAccordionDatatestid.DSAccordionDataTestid.ITEM.CONTAINER
159
+ }, void 0, /*#__PURE__*/_jsx2__default["default"](styles.StyledItemHeaderContainer, {
160
+ disabled: disabled
161
+ }, void 0, /*#__PURE__*/jsxRuntime.jsxs(styles.StyledItemHeader, {
162
+ withCustomActions: ((customActions === null || customActions === void 0 ? void 0 : customActions.length) > 0 || renderCustomActions !== undefined) && !isDSMobile,
139
163
  withSecondaryTitle: secondaryTitle,
140
164
  onClick: handleOnClick,
141
- tabIndex: !disabled ? 0 : void 0,
142
- disabled,
165
+ tabIndex: !disabled ? 0 : undefined,
166
+ disabled: disabled,
143
167
  "data-disabled": disabled,
144
168
  ref: allChildrenReferences[dsIndex],
145
169
  onKeyDown: onKeyDownWithIndex,
146
- isDSMobile,
147
- "data-testid": import_DSAccordionDatatestid.DSAccordionDataTestid.ITEM.HEADER,
148
- id: `ds-accordion-header-${value}`,
170
+ isDSMobile: isDSMobile,
171
+ "data-testid": DSAccordionDatatestid.DSAccordionDataTestid.ITEM.HEADER,
172
+ id: "ds-accordion-header-".concat(value),
149
173
  "aria-expanded": selected,
150
174
  "aria-disabled": disabled,
151
- "aria-controls": `ds-accordion-content-${value}`,
175
+ "aria-controls": "ds-accordion-content-".concat(value),
152
176
  onFocus: handleOnFocus,
153
- onBlur: handleOnBlur
154
- }, /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemAddon, {
155
- disabled,
156
- isDSMobile
157
- }, selected ? /* @__PURE__ */ import_react.default.createElement(IconOpened, {
158
- isDSMobile
159
- }) : /* @__PURE__ */ import_react.default.createElement(IconClosed, {
160
- isDSMobile
161
- })), /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemTitles, {
162
- onMouseEnter: handleOnFocus,
163
- onMouseLeave: handleOnBlur,
164
- isDSMobile,
165
- ref: setReferenceElement
166
- }, Titles)), CustomActionsContent), selected && /* @__PURE__ */ import_react.default.createElement(import_styles.StyledItemContent, {
167
- "data-testid": import_DSAccordionDatatestid.DSAccordionDataTestid.ITEM.CONTENT,
168
- "aria-labelledby": `ds-accordion-header-${value}`,
177
+ onBlur: handleOnBlur,
178
+ children: [/*#__PURE__*/_jsx2__default["default"](styles.StyledItemAddon, {
179
+ disabled: disabled,
180
+ isDSMobile: isDSMobile
181
+ }, void 0, selected ? /*#__PURE__*/_jsx2__default["default"](IconOpened, {
182
+ isDSMobile: isDSMobile
183
+ }) : /*#__PURE__*/_jsx2__default["default"](IconClosed, {
184
+ isDSMobile: isDSMobile
185
+ })), /*#__PURE__*/jsxRuntime.jsx(styles.StyledItemTitles, {
186
+ onMouseEnter: handleOnFocus,
187
+ onMouseLeave: handleOnBlur,
188
+ isDSMobile: isDSMobile,
189
+ ref: setReferenceElement,
190
+ children: Titles
191
+ })]
192
+ }), CustomActionsContent), selected && /*#__PURE__*/_jsx2__default["default"](styles.StyledItemContent, {
193
+ "data-testid": DSAccordionDatatestid.DSAccordionDataTestid.ITEM.CONTENT,
194
+ "aria-labelledby": "ds-accordion-header-".concat(value),
169
195
  role: "region",
170
- isDSMobile,
171
- id: `ds-accordion-content-${value}`
172
- }, children));
196
+ isDSMobile: isDSMobile,
197
+ id: "ds-accordion-content-".concat(value)
198
+ }, void 0, children));
173
199
  };
174
- DSAccordionItem.propTypes = import_propTypes.accordionItemPropTypes;
175
- const DSAccordionItemWithSchema = (0, import_react_desc.describe)(DSAccordionItem);
176
- DSAccordionItemWithSchema.propTypes = import_propTypes.accordionItemPropTypes;
177
- var DSAccordionItem_default = DSAccordionItem;
178
- module.exports = __toCommonJS(DSAccordionItem_exports);
179
- //# sourceMappingURL=DSAccordionItem.js.map
200
+
201
+ const DSAccordionItemWithSchema = reactDesc.describe(DSAccordionItem);
202
+ DSAccordionItemWithSchema.propTypes = propTypes.accordionItemPropTypes;
203
+
204
+ exports.DSAccordionItem = DSAccordionItem;
205
+ exports.DSAccordionItemWithSchema = DSAccordionItemWithSchema;
206
+ exports["default"] = DSAccordionItem;