@sproutsocial/seeds-react-accordion 0.4.32 → 0.4.46

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/dist/index.js CHANGED
@@ -100,13 +100,24 @@ var Accordion = ({
100
100
  };
101
101
 
102
102
  // src/AccordionItem.tsx
103
- var RadixAccordion3 = require("@radix-ui/react-accordion");
103
+ var RadixAccordion2 = __toESM(require("@radix-ui/react-accordion"));
104
+ var import_jsx_runtime2 = require("react/jsx-runtime");
105
+ var AccordionItem = ({ children, value }) => {
106
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(RadixAccordion2.Item, { className: "accordion-item", value, children });
107
+ };
108
+
109
+ // src/AccordionContent.tsx
110
+ var import_react4 = require("react");
111
+
112
+ // src/AccordionContentHybrid.tsx
113
+ var import_react3 = require("react");
114
+ var import_seeds_react_system_props3 = require("@sproutsocial/seeds-react-system-props");
104
115
 
105
116
  // src/styles.ts
106
117
  var import_styled_components = __toESM(require("styled-components"));
107
- var RadixAccordion2 = __toESM(require("@radix-ui/react-accordion"));
118
+ var RadixAccordion3 = __toESM(require("@radix-ui/react-accordion"));
108
119
  var import_seeds_react_system_props2 = require("@sproutsocial/seeds-react-system-props");
109
- var StyledAccordionItem = (0, import_styled_components.default)(RadixAccordion2.Item)``;
120
+ var StyledAccordionItem = (0, import_styled_components.default)(RadixAccordion3.Item)``;
110
121
  var animations = import_styled_components.css`
111
122
  @keyframes slideDown {
112
123
  from {
@@ -127,7 +138,7 @@ var animations = import_styled_components.css`
127
138
  }
128
139
  `;
129
140
  var StyledRadixAccordionContent = (0, import_styled_components.default)(
130
- RadixAccordion2.Content
141
+ RadixAccordion3.Content
131
142
  )`
132
143
  ${animations}
133
144
 
@@ -160,7 +171,8 @@ var ContentContainer = import_styled_components.default.div`
160
171
  font-family: ${({ theme }) => theme.fontFamily};
161
172
 
162
173
  &[data-styled="true"] {
163
- padding: ${({ theme }) => theme.space[400]};
174
+ padding: 0 ${({ theme }) => theme.space[400]}
175
+ ${({ theme }) => theme.space[400]};
164
176
  ${({ theme }) => theme.typography[200]};
165
177
  }
166
178
 
@@ -215,7 +227,7 @@ var TriggerContainer = import_styled_components.default.div`
215
227
  `}
216
228
 
217
229
  .accordion-item[data-state="open"] &[data-styled="true"] {
218
- border-bottom: ${({ theme }) => `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};
230
+ border-bottom: ${({ theme }) => `${theme.borderWidths[500]} solid transparent`};
219
231
  }
220
232
 
221
233
  .accordion-item[data-state="closed"] &[data-styled="true"] {
@@ -228,12 +240,10 @@ var TriggerContainer = import_styled_components.default.div`
228
240
  border-top-right-radius: ${({ theme }) => theme.radii.outer};
229
241
  }
230
242
 
231
- .accordion-item:last-child &[data-styled="true"] {
232
- border-bottom: ${({ theme }) => `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};
233
- }
234
-
235
243
  .accordion-item:last-child[data-state="closed"] &[data-styled="true"] {
236
- transition: border-radius 0s linear 0.3s;
244
+ transition: border-radius 0s linear 0.3s,
245
+ border-bottom-color 0s ease-in-out 0.3s;
246
+ border-bottom: ${({ theme }) => `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};
237
247
  border-bottom-left-radius: ${({ theme }) => theme.radii.outer};
238
248
  border-bottom-right-radius: ${({ theme }) => theme.radii.outer};
239
249
  }
@@ -244,94 +254,119 @@ var TriggerContainer = import_styled_components.default.div`
244
254
  ${import_seeds_react_system_props2.FLEXBOX}
245
255
  `;
246
256
 
247
- // src/AccordionItem.tsx
248
- var import_jsx_runtime2 = require("react/jsx-runtime");
249
- var AccordionItem = ({ children, value }) => {
250
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(StyledAccordionItem, { className: "accordion-item", value, children });
251
- };
252
-
253
- // src/AccordionContent.tsx
257
+ // src/AccordionContentTailwind.tsx
254
258
  var import_react2 = require("react");
259
+ var RadixAccordion4 = __toESM(require("@radix-ui/react-accordion"));
255
260
  var import_jsx_runtime3 = require("react/jsx-runtime");
256
- var AccordionContent = ({
261
+ function cn(...inputs) {
262
+ const classes = [];
263
+ for (const input of inputs) {
264
+ if (!input) continue;
265
+ if (typeof input === "string") {
266
+ classes.push(input);
267
+ } else if (typeof input === "object") {
268
+ for (const [key, value] of Object.entries(input)) {
269
+ if (value) {
270
+ classes.push(key);
271
+ }
272
+ }
273
+ }
274
+ }
275
+ return classes.join(" ");
276
+ }
277
+ var AccordionContentTailwind = ({
257
278
  children,
279
+ className,
258
280
  ...rest
259
281
  }) => {
260
282
  const { styled: styled2 } = (0, import_react2.useContext)(AccordionContext);
261
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(StyledRadixAccordionContent, { "data-styled": styled2, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(ContentContainer, { "data-styled": styled2, ...rest, children }) });
283
+ const contentDataAttrs = { "data-styled": styled2 };
284
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
285
+ RadixAccordion4.Content,
286
+ {
287
+ className: cn("seeds-accordion-content", className),
288
+ ...contentDataAttrs,
289
+ children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
290
+ "div",
291
+ {
292
+ className: "seeds-accordion-content-inner",
293
+ "data-styled": styled2,
294
+ ...rest,
295
+ children
296
+ }
297
+ )
298
+ }
299
+ );
262
300
  };
263
301
 
264
- // src/AccordionTrigger.tsx
302
+ // src/AccordionContentHybrid.tsx
303
+ var import_jsx_runtime4 = require("react/jsx-runtime");
304
+ var AccordionContentHybrid = ({
305
+ children,
306
+ ...rest
307
+ }) => {
308
+ const { styled: styled2 } = (0, import_react3.useContext)(AccordionContext);
309
+ if ((0, import_seeds_react_system_props3.needsStyledComponents)(rest)) {
310
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(StyledRadixAccordionContent, { "data-styled": styled2, children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ContentContainer, { "data-styled": styled2, ...rest, children }) });
311
+ }
312
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(AccordionContentTailwind, { ...rest, children });
313
+ };
314
+
315
+ // src/AccordionContent.tsx
316
+ var import_jsx_runtime5 = require("react/jsx-runtime");
317
+ var AccordionContent = (props) => /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(AccordionContentHybrid, { ...props });
318
+
319
+ // src/AccordionTriggerHybrid.tsx
320
+ var import_react7 = require("react");
321
+ var import_seeds_react_system_props4 = require("@sproutsocial/seeds-react-system-props");
322
+
323
+ // src/AccordionTriggerInner.tsx
324
+ var import_react5 = require("react");
265
325
  var import_seeds_react_box = require("@sproutsocial/seeds-react-box");
266
326
  var import_seeds_react_button = require("@sproutsocial/seeds-react-button");
267
327
  var import_seeds_react_icon3 = require("@sproutsocial/seeds-react-icon");
268
328
  var import_seeds_react_menu2 = require("@sproutsocial/seeds-react-menu");
269
- var import_react3 = require("react");
270
329
  var import_seeds_react_content_header2 = require("@sproutsocial/seeds-react-content-header");
271
- var RadixAccordion4 = __toESM(require("@radix-ui/react-accordion"));
272
- var import_jsx_runtime4 = require("react/jsx-runtime");
330
+ var RadixAccordion5 = __toESM(require("@radix-ui/react-accordion"));
331
+ var import_jsx_runtime6 = require("react/jsx-runtime");
273
332
  var MAX_RELATED_ACTIONS = 2;
274
333
  var AccordionTriggerWrapper = ({
275
334
  children
276
- }) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(RadixAccordion4.Trigger, { asChild: true, children });
277
- var AccordionTrigger = ({
278
- children,
335
+ }) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(RadixAccordion5.Trigger, { asChild: true, children });
336
+ var AccordionTriggerInner = ({
337
+ title,
338
+ headingLevel,
279
339
  leftSlot,
340
+ rightSlot,
280
341
  relatedActions,
281
342
  overflowMenu,
282
- rightSlot,
283
- title,
284
- headingLevel = "h4",
285
- ...rest
343
+ color,
344
+ triggerIcon,
345
+ triggerPosition
286
346
  }) => {
287
- const { triggerIcon, triggerPosition, styled: styled2 } = (0, import_react3.useContext)(AccordionContext);
288
347
  const validatedActions = relatedActions?.slice(0, MAX_RELATED_ACTIONS);
289
- const {
290
- color,
291
- padding,
292
- paddingBottom,
293
- paddingTop,
294
- paddingX,
295
- paddingY,
296
- paddingLeft,
297
- paddingRight,
298
- p,
299
- pb,
300
- pt,
301
- pr,
302
- pl,
303
- px,
304
- py,
305
- fontFamily,
306
- fontSize,
307
- fontStyle,
308
- fontWeight,
309
- lineHeight,
310
- textAlign,
311
- ...triggerProps
312
- } = rest;
313
348
  const shouldRenderActionsBlock = Boolean(overflowMenu || validatedActions);
314
- const renderedOverflowMenu = overflowMenu && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
349
+ const renderedOverflowMenu = overflowMenu && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
315
350
  import_seeds_react_menu2.ActionMenu,
316
351
  {
317
- menuToggleElement: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
352
+ menuToggleElement: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
318
353
  import_seeds_react_menu2.MenuToggleButton,
319
354
  {
320
355
  "aria-label": overflowMenu["aria-label"],
321
356
  appearance: "unstyled",
322
357
  color,
323
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_seeds_react_icon3.Icon, { name: "ellipsis-horizontal-outline", "aria-hidden": "true" })
358
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_seeds_react_icon3.Icon, { name: "ellipsis-horizontal-outline", "aria-hidden": "true" })
324
359
  }
325
360
  ),
326
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_seeds_react_menu2.MenuContent, { children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_seeds_react_menu2.MenuGroup, { id: "overflow-actions", children: overflowMenu.items.map((item, index) => {
327
- const { iconName, id, onClick, children: children2, ...menuItemProps } = item;
328
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
361
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_seeds_react_menu2.MenuContent, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_seeds_react_menu2.MenuGroup, { id: "overflow-actions", children: overflowMenu.items.map((item, index) => {
362
+ const { iconName, id, onClick, children, ...menuItemProps } = item;
363
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
329
364
  import_seeds_react_menu2.MenuItem,
330
365
  {
331
366
  id: id || `overflow-item-${index}`,
332
367
  onClick,
333
368
  ...menuItemProps,
334
- children: iconName ? /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
369
+ children: iconName ? /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
335
370
  import_seeds_react_box.Box,
336
371
  {
337
372
  display: "flex",
@@ -339,56 +374,177 @@ var AccordionTrigger = ({
339
374
  gap: "300",
340
375
  color,
341
376
  children: [
342
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_seeds_react_icon3.Icon, { name: iconName }),
343
- children2
377
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_seeds_react_icon3.Icon, { name: iconName }),
378
+ children
344
379
  ]
345
380
  }
346
- ) : children2
381
+ ) : children
347
382
  },
348
383
  id || `overflow-item-${index}`
349
384
  );
350
385
  }) }) })
351
386
  }
352
387
  );
353
- const renderedRelatedActions = validatedActions && validatedActions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_seeds_react_box.Box, { display: "flex", children: validatedActions.map((action, index) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
388
+ const renderedRelatedActions = validatedActions && validatedActions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_seeds_react_box.Box, { display: "flex", children: validatedActions.map((action, index) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
354
389
  import_seeds_react_button.Button,
355
390
  {
356
391
  onClick: action.onClick,
357
392
  "aria-label": action["aria-label"],
358
393
  color,
359
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_seeds_react_icon3.Icon, { name: action.iconName, "aria-hidden": "true" })
394
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_seeds_react_icon3.Icon, { name: action.iconName, "aria-hidden": "true" })
360
395
  },
361
396
  `${action.iconName}-${index}`
362
397
  )) });
363
- const renderedActions = shouldRenderActionsBlock ? /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_seeds_react_box.Box, { mr: 300, display: "flex", children: [
398
+ const renderedActions = shouldRenderActionsBlock ? /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_seeds_react_box.Box, { mr: 300, display: "flex", children: [
364
399
  renderedOverflowMenu,
365
400
  renderedRelatedActions
366
401
  ] }) : void 0;
367
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
368
- TriggerContainer,
402
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
403
+ import_seeds_react_content_header2.CollapsibleContentHeader,
404
+ {
405
+ title,
406
+ headingLevel,
407
+ leftSlot,
408
+ rightSlot,
409
+ headerActions: renderedActions,
410
+ trigger: AccordionTriggerWrapper,
411
+ triggerPosition,
412
+ triggerIcon,
413
+ bordered: false
414
+ }
415
+ );
416
+ };
417
+
418
+ // src/AccordionTriggerTailwind.tsx
419
+ var import_react6 = require("react");
420
+ var import_jsx_runtime7 = require("react/jsx-runtime");
421
+ function cn2(...inputs) {
422
+ const classes = [];
423
+ for (const input of inputs) {
424
+ if (!input) continue;
425
+ if (typeof input === "string") {
426
+ classes.push(input);
427
+ } else if (typeof input === "object") {
428
+ for (const [key, value] of Object.entries(input)) {
429
+ if (value) {
430
+ classes.push(key);
431
+ }
432
+ }
433
+ }
434
+ }
435
+ return classes.join(" ");
436
+ }
437
+ var AccordionTriggerTailwind = ({
438
+ children,
439
+ leftSlot,
440
+ relatedActions,
441
+ overflowMenu,
442
+ rightSlot,
443
+ title,
444
+ headingLevel = "h4",
445
+ className,
446
+ // In the Tailwind path the hybrid gate guarantees no styled-system props are
447
+ // present. `color` is still pulled out so it is forwarded to the inner content
448
+ // (overflow menu / related actions) but not onto the wrapper div.
449
+ color,
450
+ ...triggerProps
451
+ }) => {
452
+ const { triggerIcon, triggerPosition, styled: styled2 } = (0, import_react6.useContext)(AccordionContext);
453
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
454
+ "div",
369
455
  {
456
+ className: cn2("seeds-accordion-trigger", className),
370
457
  "data-styled": styled2,
371
- $styled: styled2,
372
458
  "data-qa-trigger": "HERE",
373
- color,
374
459
  ...triggerProps,
375
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
376
- import_seeds_react_content_header2.CollapsibleContentHeader,
460
+ children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
461
+ AccordionTriggerInner,
377
462
  {
378
463
  title,
379
464
  headingLevel,
380
465
  leftSlot,
381
466
  rightSlot,
382
- headerActions: renderedActions,
383
- trigger: AccordionTriggerWrapper,
384
- triggerPosition,
467
+ relatedActions,
468
+ overflowMenu,
469
+ color,
385
470
  triggerIcon,
386
- bordered: false
471
+ triggerPosition
387
472
  }
388
473
  )
389
474
  }
390
475
  );
391
476
  };
477
+
478
+ // src/AccordionTriggerHybrid.tsx
479
+ var import_jsx_runtime8 = require("react/jsx-runtime");
480
+ var AccordionTriggerHybrid = (props) => {
481
+ const {
482
+ children,
483
+ leftSlot,
484
+ relatedActions,
485
+ overflowMenu,
486
+ rightSlot,
487
+ title,
488
+ headingLevel = "h4",
489
+ ...rest
490
+ } = props;
491
+ const { triggerIcon, triggerPosition, styled: styled2 } = (0, import_react7.useContext)(AccordionContext);
492
+ if ((0, import_seeds_react_system_props4.needsStyledComponents)(rest)) {
493
+ const {
494
+ color,
495
+ padding,
496
+ paddingBottom,
497
+ paddingTop,
498
+ paddingX,
499
+ paddingY,
500
+ paddingLeft,
501
+ paddingRight,
502
+ p,
503
+ pb,
504
+ pt,
505
+ pr,
506
+ pl,
507
+ px,
508
+ py,
509
+ fontFamily,
510
+ fontSize,
511
+ fontStyle,
512
+ fontWeight,
513
+ lineHeight,
514
+ textAlign,
515
+ ...triggerProps
516
+ } = rest;
517
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
518
+ TriggerContainer,
519
+ {
520
+ "data-styled": styled2,
521
+ $styled: styled2,
522
+ "data-qa-trigger": "HERE",
523
+ color,
524
+ ...triggerProps,
525
+ children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
526
+ AccordionTriggerInner,
527
+ {
528
+ title,
529
+ headingLevel,
530
+ leftSlot,
531
+ rightSlot,
532
+ relatedActions,
533
+ overflowMenu,
534
+ color,
535
+ triggerIcon,
536
+ triggerPosition
537
+ }
538
+ )
539
+ }
540
+ );
541
+ }
542
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(AccordionTriggerTailwind, { ...props });
543
+ };
544
+
545
+ // src/AccordionTrigger.tsx
546
+ var import_jsx_runtime9 = require("react/jsx-runtime");
547
+ var AccordionTrigger = (props) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(AccordionTriggerHybrid, { ...props });
392
548
  // Annotate the CommonJS export names for ESM import in node:
393
549
  0 && (module.exports = {
394
550
  Accordion,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/Accordion.tsx","../src/AccordionTypes.ts","../src/AccordionItem.tsx","../src/styles.ts","../src/AccordionContent.tsx","../src/AccordionTrigger.tsx"],"sourcesContent":["import { Accordion } from \"./Accordion\";\nimport { AccordionItem } from \"./AccordionItem\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport { Accordion, AccordionItem, AccordionContent, AccordionTrigger };\nexport * from \"./AccordionTypes\";\n","import React, { createContext, type ReactElement } from \"react\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeAccordionProps } from \"./AccordionTypes\";\n\nexport const AccordionContext = createContext<{\n triggerIcon: ReactElement | null;\n triggerPosition: string;\n styled: boolean;\n}>({\n triggerIcon: null,\n triggerPosition: \"\",\n styled: false,\n});\n\nexport const Accordion = ({\n children,\n collapsible,\n defaultValue = [\"item-0\"],\n triggerPosition = \"right\",\n triggerIcon = <Icon className=\"triggerIcon\" name=\"chevron-down-outline\" />,\n type = \"multiple\",\n styled = true,\n value,\n onValueChange,\n}: TypeAccordionProps) => {\n const contextValue = {\n triggerIcon: React.isValidElement(triggerIcon) ? triggerIcon : null,\n triggerPosition,\n styled,\n };\n\n if (type === \"single\") {\n // Determine if controlled or uncontrolled\n const isControlled = value !== undefined;\n\n return (\n <RadixAccordion.Root\n type=\"single\"\n value={\n isControlled ? (Array.isArray(value) ? value[0] : value) : undefined\n }\n defaultValue={\n !isControlled && defaultValue\n ? Array.isArray(defaultValue)\n ? defaultValue[0]\n : defaultValue\n : undefined\n }\n onValueChange={onValueChange as ((value: string) => void) | undefined}\n collapsible={collapsible}\n >\n <AccordionContext.Provider value={contextValue}>\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n }\n\n // Multiple mode\n const isControlled = value !== undefined;\n\n return (\n <RadixAccordion.Root\n type=\"multiple\"\n value={\n isControlled ? (Array.isArray(value) ? value : [value]) : undefined\n }\n defaultValue={\n !isControlled && defaultValue\n ? Array.isArray(defaultValue)\n ? defaultValue\n : [defaultValue]\n : undefined\n }\n onValueChange={onValueChange as ((value: string[]) => void) | undefined}\n >\n <AccordionContext.Provider value={contextValue}>\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n};\n","import * as React from \"react\";\nimport {\n type TypeSystemCommonProps,\n type TypeBorderSystemProps,\n type TypeFlexboxSystemProps,\n type TypeLayoutSystemProps,\n type TypeStyledComponentsCommonProps,\n type TypeSystemTypographyProps,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeIconName } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeMenuItemProps } from \"@sproutsocial/seeds-react-menu\";\nimport { type TypeHeadingLevel } from \"@sproutsocial/seeds-react-content-header\";\n\nexport interface TypeAccordionSystemProps\n extends Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\">,\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeBorderSystemProps,\n TypeFlexboxSystemProps,\n TypeLayoutSystemProps,\n TypeSystemTypographyProps {}\n\nexport interface TypeAccordionProps {\n children?: React.ReactNode;\n collapsible?: boolean;\n defaultValue?: string | string[];\n triggerIcon?: React.ReactNode;\n triggerPosition?: \"left\" | \"right\";\n type?: \"single\" | \"multiple\";\n styled?: boolean;\n /** Controlled value for open accordion items (single mode: string, multiple mode: string[]) */\n value?: string | string[];\n /** Callback fired when accordion items change (single mode: string, multiple mode: string[]) */\n onValueChange?: (value: string | string[]) => void;\n}\n\nexport interface TypeRelatedAction {\n iconName: TypeIconName;\n onClick: () => void;\n \"aria-label\": string;\n}\n\nexport interface TypeOverflowMenuItem extends TypeMenuItemProps {\n iconName?: TypeIconName;\n}\n\nexport interface TypeOverflowMenuConfig {\n /** Menu items to be rendered in the overflow menu */\n items: TypeOverflowMenuItem[];\n /** Aria label for the overflow menu trigger button. Defaults to \"More actions\" */\n \"aria-label\"?: string;\n}\n\nexport interface TypeAccordionItemProps {\n children: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n value: string;\n}\n\n/**\n * Props for AccordionTrigger component\n *\n * @example\n * ```tsx\n * <AccordionTrigger\n * title=\"My Accordion Title\"\n * headingLevel=\"h2\"\n * />\n * ```\n */\nexport interface TypeAccordionTriggerProps extends TypeAccordionSystemProps {\n title: string;\n leftSlot?: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n rightSlot?: React.ReactNode;\n /** The semantic heading level for the accordion title. Defaults to \"h4\" */\n headingLevel?: TypeHeadingLevel;\n}\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { type TypeAccordionItemProps } from \"./AccordionTypes\";\nimport { StyledAccordionItem } from \"./styles\";\n\nexport const AccordionItem = ({ children, value }: TypeAccordionItemProps) => {\n return (\n <StyledAccordionItem className=\"accordion-item\" value={value}>\n {children}\n </StyledAccordionItem>\n );\n};\n","import styled, { css } from \"styled-components\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport {\n BORDER,\n COMMON,\n FLEXBOX,\n LAYOUT,\n TYPOGRAPHY,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\n\ninterface StyledAccordionProps extends TypeAccordionSystemProps {\n $styled?: boolean;\n}\n\nexport const StyledAccordionItem = styled(RadixAccordion.Item)``;\n\nconst animations = css`\n @keyframes slideDown {\n from {\n height: 0;\n }\n to {\n height: var(--radix-accordion-content-height);\n }\n }\n\n @keyframes slideUp {\n from {\n height: var(--radix-accordion-content-height);\n }\n to {\n height: 0;\n }\n }\n`;\n\nexport const StyledRadixAccordionContent = styled(\n RadixAccordion.Content\n)<StyledAccordionProps>`\n ${animations}\n\n overflow: hidden;\n\n &[data-state=\"open\"] {\n animation: slideDown 300ms ease-in-out;\n }\n\n &[data-state=\"closed\"] {\n animation: slideUp 300ms ease-in-out;\n }\n\n &[data-styled=\"true\"] {\n border-left: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-right: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n background: ${({ theme }) => theme.colors.container.background.base};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n`;\n\nexport const ContentContainer = styled.div<StyledAccordionProps>`\n color: ${({ theme }) => theme.colors.text.body};\n background: transparent;\n font-family: ${({ theme }) => theme.fontFamily};\n\n &[data-styled=\"true\"] {\n padding: ${({ theme }) => theme.space[400]};\n ${({ theme }) => theme.typography[200]};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${TYPOGRAPHY}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n\nexport const TriggerContainer = styled.div<StyledAccordionProps>`\n display: flex;\n align-items: center;\n color: ${({ theme }) => theme.colors.text.body};\n ${({ theme }) => theme.typography[200]};\n\n /* Override Text.Headline styles to match original accordion trigger typography */\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: normal;\n line-height: inherit;\n color: inherit;\n }\n\n &[data-styled=\"true\"] {\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-weight: ${({ theme }) => theme.fontWeights.semibold};\n color: ${({ theme }) => theme.colors.text.headline};\n }\n }\n\n ${({ $styled, theme }) =>\n $styled &&\n `\n border-top: ${theme.borderWidths[500]} solid ${theme.colors.container.border.base};\n border-left: ${theme.borderWidths[500]} solid ${theme.colors.container.border.base};\n border-right: ${theme.borderWidths[500]} solid ${theme.colors.container.border.base};\n background: ${theme.colors.container.background.base};\n `}\n\n .accordion-item[data-state=\"open\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n }\n\n .accordion-item[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-bottom-color 0s ease-in-out 0.3s;\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid transparent`};\n }\n\n .accordion-item:first-child &[data-styled=\"true\"] {\n border-top-left-radius: ${({ theme }) => theme.radii.outer};\n border-top-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n .accordion-item:last-child &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n }\n\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-radius 0s linear 0.3s;\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n","import { StyledRadixAccordionContent, ContentContainer } from \"./styles\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\nimport { AccordionContext } from \"./Accordion\";\nimport { useContext } from \"react\";\n\ninterface TypeAccordionContentProps extends TypeAccordionSystemProps {\n children?: React.ReactNode;\n}\n\nexport const AccordionContent = ({\n children,\n ...rest\n}: TypeAccordionContentProps) => {\n const { styled } = useContext(AccordionContext);\n\n return (\n <StyledRadixAccordionContent data-styled={styled}>\n <ContentContainer data-styled={styled} {...rest}>\n {children}\n </ContentContainer>\n </StyledRadixAccordionContent>\n );\n};\n","import { TriggerContainer } from \"./styles\";\nimport { type TypeAccordionTriggerProps } from \"./AccordionTypes\";\nimport { Box } from \"@sproutsocial/seeds-react-box\";\nimport { Button } from \"@sproutsocial/seeds-react-button\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport {\n ActionMenu,\n MenuContent,\n MenuItem,\n MenuGroup,\n MenuToggleButton,\n} from \"@sproutsocial/seeds-react-menu\";\nimport React, { useContext } from \"react\";\nimport { AccordionContext } from \"./Accordion\";\nimport { CollapsibleContentHeader } from \"@sproutsocial/seeds-react-content-header\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\n\nconst MAX_RELATED_ACTIONS = 2;\n\n// Wrapper to adapt RadixAccordion.Trigger to the ContentHeader trigger interface\nconst AccordionTriggerWrapper = ({\n children,\n}: {\n children: React.ReactElement;\n}) => <RadixAccordion.Trigger asChild>{children}</RadixAccordion.Trigger>;\n\nexport const AccordionTrigger = ({\n children,\n leftSlot,\n relatedActions,\n overflowMenu,\n rightSlot,\n title,\n headingLevel = \"h4\",\n ...rest\n}: TypeAccordionTriggerProps) => {\n const { triggerIcon, triggerPosition, styled } = useContext(AccordionContext);\n\n // Validate and limit related actions\n const validatedActions = relatedActions?.slice(0, MAX_RELATED_ACTIONS);\n\n // Extract system props to distribute to appropriate container\n const {\n color,\n padding,\n paddingBottom,\n paddingTop,\n paddingX,\n paddingY,\n paddingLeft,\n paddingRight,\n p,\n pb,\n pt,\n pr,\n pl,\n px,\n py,\n fontFamily,\n fontSize,\n fontStyle,\n fontWeight,\n lineHeight,\n textAlign,\n ...triggerProps\n } = rest;\n\n const shouldRenderActionsBlock = Boolean(overflowMenu || validatedActions);\n\n // Render overflow menu from config\n const renderedOverflowMenu = overflowMenu && (\n <ActionMenu\n menuToggleElement={\n <MenuToggleButton\n aria-label={overflowMenu[\"aria-label\"]}\n appearance=\"unstyled\"\n color={color}\n >\n <Icon name=\"ellipsis-horizontal-outline\" aria-hidden=\"true\" />\n </MenuToggleButton>\n }\n >\n <MenuContent>\n <MenuGroup id=\"overflow-actions\">\n {overflowMenu.items.map((item, index) => {\n const { iconName, id, onClick, children, ...menuItemProps } = item;\n return (\n <MenuItem\n key={id || `overflow-item-${index}`}\n id={id || `overflow-item-${index}`}\n onClick={onClick}\n {...menuItemProps}\n >\n {iconName ? (\n <Box\n display=\"flex\"\n alignItems=\"center\"\n gap=\"300\"\n color={color}\n >\n <Icon name={iconName} />\n {children}\n </Box>\n ) : (\n children\n )}\n </MenuItem>\n );\n })}\n </MenuGroup>\n </MenuContent>\n </ActionMenu>\n );\n\n // Render related actions from config\n const renderedRelatedActions = validatedActions &&\n validatedActions.length > 0 && (\n <Box display=\"flex\">\n {validatedActions.map((action, index) => (\n <Button\n key={`${action.iconName}-${index}`}\n onClick={action.onClick}\n aria-label={action[\"aria-label\"]}\n color={color}\n >\n <Icon name={action.iconName} aria-hidden=\"true\" />\n </Button>\n ))}\n </Box>\n );\n\n // Compose actions into a single ReactNode for ContentHeader\n const renderedActions = shouldRenderActionsBlock ? (\n <Box mr={300} display=\"flex\">\n {renderedOverflowMenu}\n {renderedRelatedActions}\n </Box>\n ) : undefined;\n\n return (\n <TriggerContainer\n data-styled={styled}\n $styled={styled}\n data-qa-trigger=\"HERE\"\n color={color}\n {...triggerProps}\n >\n <CollapsibleContentHeader\n title={title}\n headingLevel={headingLevel}\n leftSlot={leftSlot}\n rightSlot={rightSlot}\n headerActions={renderedActions}\n trigger={AccordionTriggerWrapper}\n triggerPosition={triggerPosition as \"left\" | \"right\"}\n triggerIcon={triggerIcon}\n bordered={false}\n />\n </TriggerContainer>\n );\n};\n"],"mappings":"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","names":["import_seeds_react_icon","styled","React","isControlled","RadixAccordion","RadixAccordion","import_seeds_react_system_props","styled","import_jsx_runtime","import_react","import_jsx_runtime","styled","import_seeds_react_icon","import_seeds_react_menu","import_react","import_seeds_react_content_header","RadixAccordion","import_jsx_runtime","styled","children"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/Accordion.tsx","../src/AccordionTypes.ts","../src/AccordionItem.tsx","../src/AccordionContent.tsx","../src/AccordionContentHybrid.tsx","../src/styles.ts","../src/AccordionContentTailwind.tsx","../src/AccordionTriggerHybrid.tsx","../src/AccordionTriggerInner.tsx","../src/AccordionTriggerTailwind.tsx","../src/AccordionTrigger.tsx"],"sourcesContent":["import { Accordion } from \"./Accordion\";\nimport { AccordionItem } from \"./AccordionItem\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport { Accordion, AccordionItem, AccordionContent, AccordionTrigger };\nexport * from \"./AccordionTypes\";\n","import React, { createContext, type ReactElement } from \"react\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeAccordionProps } from \"./AccordionTypes\";\n\nexport const AccordionContext = createContext<{\n triggerIcon: ReactElement | null;\n triggerPosition: string;\n styled: boolean;\n}>({\n triggerIcon: null,\n triggerPosition: \"\",\n styled: false,\n});\n\nexport const Accordion = ({\n children,\n collapsible,\n defaultValue = [\"item-0\"],\n triggerPosition = \"right\",\n triggerIcon = <Icon className=\"triggerIcon\" name=\"chevron-down-outline\" />,\n type = \"multiple\",\n styled = true,\n value,\n onValueChange,\n}: TypeAccordionProps) => {\n const contextValue = {\n triggerIcon: React.isValidElement(triggerIcon) ? triggerIcon : null,\n triggerPosition,\n styled,\n };\n\n if (type === \"single\") {\n // Determine if controlled or uncontrolled\n const isControlled = value !== undefined;\n\n return (\n <RadixAccordion.Root\n type=\"single\"\n value={\n isControlled ? (Array.isArray(value) ? value[0] : value) : undefined\n }\n defaultValue={\n !isControlled && defaultValue\n ? Array.isArray(defaultValue)\n ? defaultValue[0]\n : defaultValue\n : undefined\n }\n onValueChange={onValueChange as ((value: string) => void) | undefined}\n collapsible={collapsible}\n >\n <AccordionContext.Provider value={contextValue}>\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n }\n\n // Multiple mode\n const isControlled = value !== undefined;\n\n return (\n <RadixAccordion.Root\n type=\"multiple\"\n value={\n isControlled ? (Array.isArray(value) ? value : [value]) : undefined\n }\n defaultValue={\n !isControlled && defaultValue\n ? Array.isArray(defaultValue)\n ? defaultValue\n : [defaultValue]\n : undefined\n }\n onValueChange={onValueChange as ((value: string[]) => void) | undefined}\n >\n <AccordionContext.Provider value={contextValue}>\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n};\n","import * as React from \"react\";\nimport {\n type TypeSystemCommonProps,\n type TypeBorderSystemProps,\n type TypeFlexboxSystemProps,\n type TypeLayoutSystemProps,\n type TypeStyledComponentsCommonProps,\n type TypeSystemTypographyProps,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeIconName } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeMenuItemProps } from \"@sproutsocial/seeds-react-menu\";\nimport { type TypeHeadingLevel } from \"@sproutsocial/seeds-react-content-header\";\n\nexport interface TypeAccordionSystemProps\n extends Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\">,\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeBorderSystemProps,\n TypeFlexboxSystemProps,\n TypeLayoutSystemProps,\n TypeSystemTypographyProps {}\n\nexport interface TypeAccordionProps {\n children?: React.ReactNode;\n collapsible?: boolean;\n defaultValue?: string | string[];\n triggerIcon?: React.ReactNode;\n triggerPosition?: \"left\" | \"right\";\n type?: \"single\" | \"multiple\";\n styled?: boolean;\n /** Controlled value for open accordion items (single mode: string, multiple mode: string[]) */\n value?: string | string[];\n /** Callback fired when accordion items change (single mode: string, multiple mode: string[]) */\n onValueChange?: (value: string | string[]) => void;\n}\n\nexport interface TypeRelatedAction {\n iconName: TypeIconName;\n onClick: () => void;\n \"aria-label\": string;\n}\n\nexport interface TypeOverflowMenuItem extends TypeMenuItemProps {\n iconName?: TypeIconName;\n}\n\nexport interface TypeOverflowMenuConfig {\n /** Menu items to be rendered in the overflow menu */\n items: TypeOverflowMenuItem[];\n /** Aria label for the overflow menu trigger button. Defaults to \"More actions\" */\n \"aria-label\"?: string;\n}\n\nexport interface TypeAccordionItemProps {\n children: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n value: string;\n}\n\n/**\n * Props for AccordionTrigger component\n *\n * @example\n * ```tsx\n * <AccordionTrigger\n * title=\"My Accordion Title\"\n * headingLevel=\"h2\"\n * />\n * ```\n */\nexport interface TypeAccordionTriggerProps extends TypeAccordionSystemProps {\n title: string;\n leftSlot?: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n rightSlot?: React.ReactNode;\n /** The semantic heading level for the accordion title. Defaults to \"h4\" */\n headingLevel?: TypeHeadingLevel;\n}\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { type TypeAccordionItemProps } from \"./AccordionTypes\";\n\nexport const AccordionItem = ({ children, value }: TypeAccordionItemProps) => {\n return (\n <RadixAccordion.Item className=\"accordion-item\" value={value}>\n {children}\n </RadixAccordion.Item>\n );\n};\n","import React from \"react\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\nimport { AccordionContentHybrid } from \"./AccordionContentHybrid\";\n\ninterface TypeAccordionContentProps extends TypeAccordionSystemProps {\n children?: React.ReactNode;\n}\n\n/**\n * AccordionContent. Automatically routes between the Tailwind implementation\n * (preferred) and the styled-components implementation (for consumers using\n * system props or a styled() extension).\n */\nexport const AccordionContent = (props: TypeAccordionContentProps) => (\n <AccordionContentHybrid {...props} />\n);\n","/**\n * Hybrid AccordionContent.\n * Automatically chooses between the Tailwind and styled-components rendering\n * based on whether styled-system props or a styled() extension are present.\n */\n\nimport React, { useContext } from \"react\";\nimport { needsStyledComponents } from \"@sproutsocial/seeds-react-system-props\";\nimport { StyledRadixAccordionContent, ContentContainer } from \"./styles\";\nimport { AccordionContext } from \"./Accordion\";\nimport { AccordionContentTailwind } from \"./AccordionContentTailwind\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\n\ninterface TypeAccordionContentProps extends TypeAccordionSystemProps {\n children?: React.ReactNode;\n}\n\nexport const AccordionContentHybrid = ({\n children,\n ...rest\n}: TypeAccordionContentProps) => {\n const { styled } = useContext(AccordionContext);\n\n if (needsStyledComponents(rest)) {\n // Styled-components branch — identical to the legacy AccordionContent body.\n return (\n <StyledRadixAccordionContent data-styled={styled}>\n <ContentContainer data-styled={styled} {...rest}>\n {children}\n </ContentContainer>\n </StyledRadixAccordionContent>\n );\n }\n\n // Tailwind path (preferred — no styled-components runtime).\n return (\n <AccordionContentTailwind {...rest}>{children}</AccordionContentTailwind>\n );\n};\n","import styled, { css } from \"styled-components\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport {\n BORDER,\n COMMON,\n FLEXBOX,\n LAYOUT,\n TYPOGRAPHY,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\n\ninterface StyledAccordionProps extends TypeAccordionSystemProps {\n $styled?: boolean;\n}\n\nexport const StyledAccordionItem = styled(RadixAccordion.Item)``;\n\nconst animations = css`\n @keyframes slideDown {\n from {\n height: 0;\n }\n to {\n height: var(--radix-accordion-content-height);\n }\n }\n\n @keyframes slideUp {\n from {\n height: var(--radix-accordion-content-height);\n }\n to {\n height: 0;\n }\n }\n`;\n\nexport const StyledRadixAccordionContent = styled(\n RadixAccordion.Content\n)<StyledAccordionProps>`\n ${animations}\n\n overflow: hidden;\n\n &[data-state=\"open\"] {\n animation: slideDown 300ms ease-in-out;\n }\n\n &[data-state=\"closed\"] {\n animation: slideUp 300ms ease-in-out;\n }\n\n &[data-styled=\"true\"] {\n border-left: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-right: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n background: ${({ theme }) => theme.colors.container.background.base};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n`;\n\nexport const ContentContainer = styled.div<StyledAccordionProps>`\n color: ${({ theme }) => theme.colors.text.body};\n background: transparent;\n font-family: ${({ theme }) => theme.fontFamily};\n\n &[data-styled=\"true\"] {\n padding: 0 ${({ theme }) => theme.space[400]}\n ${({ theme }) => theme.space[400]};\n ${({ theme }) => theme.typography[200]};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${TYPOGRAPHY}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n\nexport const TriggerContainer = styled.div<StyledAccordionProps>`\n display: flex;\n align-items: center;\n color: ${({ theme }) => theme.colors.text.body};\n ${({ theme }) => theme.typography[200]};\n\n /* Override Text.Headline styles to match original accordion trigger typography */\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-size: inherit;\n font-weight: normal;\n line-height: inherit;\n color: inherit;\n }\n\n &[data-styled=\"true\"] {\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n font-weight: ${({ theme }) => theme.fontWeights.semibold};\n color: ${({ theme }) => theme.colors.text.headline};\n }\n }\n\n ${({ $styled, theme }) =>\n $styled &&\n `\n border-top: ${theme.borderWidths[500]} solid ${theme.colors.container.border.base};\n border-left: ${theme.borderWidths[500]} solid ${theme.colors.container.border.base};\n border-right: ${theme.borderWidths[500]} solid ${theme.colors.container.border.base};\n background: ${theme.colors.container.background.base};\n `}\n\n .accordion-item[data-state=\"open\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid transparent`};\n }\n\n .accordion-item[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-bottom-color 0s ease-in-out 0.3s;\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid transparent`};\n }\n\n .accordion-item:first-child &[data-styled=\"true\"] {\n border-top-left-radius: ${({ theme }) => theme.radii.outer};\n border-top-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-radius 0s linear 0.3s,\n border-bottom-color 0s ease-in-out 0.3s;\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n","/**\n * Tailwind/CSS-class implementation of AccordionContent.\n * Uses the Seeds accordion CSS classes from accordion.css.\n */\n\nimport React, { useContext } from \"react\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { AccordionContext } from \"./Accordion\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\n\n// Utility for merging class names properly\nfunction cn(\n ...inputs: (string | undefined | null | false | Record<string, boolean>)[]\n): string {\n const classes: string[] = [];\n\n for (const input of inputs) {\n if (!input) continue;\n\n if (typeof input === \"string\") {\n classes.push(input);\n } else if (typeof input === \"object\") {\n for (const [key, value] of Object.entries(input)) {\n if (value) {\n classes.push(key);\n }\n }\n }\n }\n\n return classes.join(\" \");\n}\n\ninterface TypeAccordionContentTailwindProps extends TypeAccordionSystemProps {\n children?: React.ReactNode;\n}\n\nexport const AccordionContentTailwind = ({\n children,\n className,\n ...rest\n}: TypeAccordionContentTailwindProps) => {\n const { styled } = useContext(AccordionContext);\n\n // data-styled is forwarded to the Radix Content element via spread: React\n // component prop types have no data-* index signature, so spreading (which is\n // not subject to excess-property checks) keeps this type-safe. Radix forwards\n // the attribute to the underlying DOM node so the CSS [data-styled] rules fire.\n const contentDataAttrs = { \"data-styled\": styled };\n\n return (\n <RadixAccordion.Content\n className={cn(\"seeds-accordion-content\", className)}\n {...contentDataAttrs}\n >\n <div\n className=\"seeds-accordion-content-inner\"\n data-styled={styled}\n {...(rest as React.HTMLAttributes<HTMLDivElement>)}\n >\n {children}\n </div>\n </RadixAccordion.Content>\n );\n};\n","/**\n * Hybrid AccordionTrigger wrapper.\n * Automatically chooses between the Tailwind and styled-components rendering\n * based on whether styled-system props or a styled() extension are present.\n */\n\nimport { useContext } from \"react\";\nimport { needsStyledComponents } from \"@sproutsocial/seeds-react-system-props\";\nimport { TriggerContainer } from \"./styles\";\nimport { AccordionContext } from \"./Accordion\";\nimport { AccordionTriggerInner } from \"./AccordionTriggerInner\";\nimport { AccordionTriggerTailwind } from \"./AccordionTriggerTailwind\";\nimport { type TypeAccordionTriggerProps } from \"./AccordionTypes\";\n\nexport const AccordionTriggerHybrid = (props: TypeAccordionTriggerProps) => {\n const {\n children,\n leftSlot,\n relatedActions,\n overflowMenu,\n rightSlot,\n title,\n headingLevel = \"h4\",\n ...rest\n } = props;\n const { triggerIcon, triggerPosition, styled } = useContext(AccordionContext);\n\n if (needsStyledComponents(rest)) {\n // Styled-components branch — mirrors the legacy AccordionTrigger exactly:\n // the styled-system props are destructured out and only `color` plus the\n // remaining triggerProps are forwarded to TriggerContainer.\n const {\n color,\n padding,\n paddingBottom,\n paddingTop,\n paddingX,\n paddingY,\n paddingLeft,\n paddingRight,\n p,\n pb,\n pt,\n pr,\n pl,\n px,\n py,\n fontFamily,\n fontSize,\n fontStyle,\n fontWeight,\n lineHeight,\n textAlign,\n ...triggerProps\n } = rest;\n\n return (\n <TriggerContainer\n data-styled={styled}\n $styled={styled}\n data-qa-trigger=\"HERE\"\n color={color}\n {...triggerProps}\n >\n <AccordionTriggerInner\n title={title}\n headingLevel={headingLevel}\n leftSlot={leftSlot}\n rightSlot={rightSlot}\n relatedActions={relatedActions}\n overflowMenu={overflowMenu}\n color={color}\n triggerIcon={triggerIcon}\n triggerPosition={triggerPosition}\n />\n </TriggerContainer>\n );\n }\n\n // Tailwind path (preferred — no styled-components runtime).\n return <AccordionTriggerTailwind {...props} />;\n};\n","import React from \"react\";\nimport { Box } from \"@sproutsocial/seeds-react-box\";\nimport { Button } from \"@sproutsocial/seeds-react-button\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport {\n ActionMenu,\n MenuContent,\n MenuItem,\n MenuGroup,\n MenuToggleButton,\n} from \"@sproutsocial/seeds-react-menu\";\nimport {\n CollapsibleContentHeader,\n type TypeHeadingLevel,\n} from \"@sproutsocial/seeds-react-content-header\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport {\n type TypeRelatedAction,\n type TypeOverflowMenuConfig,\n type TypeAccordionSystemProps,\n} from \"./AccordionTypes\";\n\nconst MAX_RELATED_ACTIONS = 2;\n\n// Wrapper to adapt RadixAccordion.Trigger to the ContentHeader trigger interface\nconst AccordionTriggerWrapper = ({\n children,\n}: {\n children: React.ReactElement;\n}) => <RadixAccordion.Trigger asChild>{children}</RadixAccordion.Trigger>;\n\nexport interface TypeAccordionTriggerInnerProps {\n title: string;\n headingLevel: TypeHeadingLevel;\n leftSlot?: React.ReactNode;\n rightSlot?: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n color?: TypeAccordionSystemProps[\"color\"];\n triggerIcon: React.ReactElement | null;\n triggerPosition: string;\n}\n\n/**\n * Wrapper-agnostic inner subtree of the accordion trigger (overflow menu,\n * related actions, and CollapsibleContentHeader). Shared by both the\n * styled-components and Tailwind trigger wrappers so they render an identical\n * subtree and guarantee visual parity.\n */\nexport const AccordionTriggerInner = ({\n title,\n headingLevel,\n leftSlot,\n rightSlot,\n relatedActions,\n overflowMenu,\n color,\n triggerIcon,\n triggerPosition,\n}: TypeAccordionTriggerInnerProps) => {\n // Validate and limit related actions\n const validatedActions = relatedActions?.slice(0, MAX_RELATED_ACTIONS);\n\n const shouldRenderActionsBlock = Boolean(overflowMenu || validatedActions);\n\n // Render overflow menu from config\n const renderedOverflowMenu = overflowMenu && (\n <ActionMenu\n menuToggleElement={\n <MenuToggleButton\n aria-label={overflowMenu[\"aria-label\"]}\n appearance=\"unstyled\"\n color={color}\n >\n <Icon name=\"ellipsis-horizontal-outline\" aria-hidden=\"true\" />\n </MenuToggleButton>\n }\n >\n <MenuContent>\n <MenuGroup id=\"overflow-actions\">\n {overflowMenu.items.map((item, index) => {\n const { iconName, id, onClick, children, ...menuItemProps } = item;\n return (\n <MenuItem\n key={id || `overflow-item-${index}`}\n id={id || `overflow-item-${index}`}\n onClick={onClick}\n {...menuItemProps}\n >\n {iconName ? (\n <Box\n display=\"flex\"\n alignItems=\"center\"\n gap=\"300\"\n color={color}\n >\n <Icon name={iconName} />\n {children}\n </Box>\n ) : (\n children\n )}\n </MenuItem>\n );\n })}\n </MenuGroup>\n </MenuContent>\n </ActionMenu>\n );\n\n // Render related actions from config\n const renderedRelatedActions = validatedActions &&\n validatedActions.length > 0 && (\n <Box display=\"flex\">\n {validatedActions.map((action, index) => (\n <Button\n key={`${action.iconName}-${index}`}\n onClick={action.onClick}\n aria-label={action[\"aria-label\"]}\n color={color}\n >\n <Icon name={action.iconName} aria-hidden=\"true\" />\n </Button>\n ))}\n </Box>\n );\n\n // Compose actions into a single ReactNode for ContentHeader\n const renderedActions = shouldRenderActionsBlock ? (\n <Box mr={300} display=\"flex\">\n {renderedOverflowMenu}\n {renderedRelatedActions}\n </Box>\n ) : undefined;\n\n return (\n <CollapsibleContentHeader\n title={title}\n headingLevel={headingLevel}\n leftSlot={leftSlot}\n rightSlot={rightSlot}\n headerActions={renderedActions}\n trigger={AccordionTriggerWrapper}\n triggerPosition={triggerPosition as \"left\" | \"right\"}\n triggerIcon={triggerIcon}\n bordered={false}\n />\n );\n};\n","/**\n * Tailwind/CSS-class implementation of the AccordionTrigger wrapper.\n * Uses the Seeds accordion CSS classes from accordion.css.\n */\n\nimport React, { useContext } from \"react\";\nimport { AccordionContext } from \"./Accordion\";\nimport { AccordionTriggerInner } from \"./AccordionTriggerInner\";\nimport { type TypeAccordionTriggerProps } from \"./AccordionTypes\";\n\n// Utility for merging class names properly\nfunction cn(\n ...inputs: (string | undefined | null | false | Record<string, boolean>)[]\n): string {\n const classes: string[] = [];\n\n for (const input of inputs) {\n if (!input) continue;\n\n if (typeof input === \"string\") {\n classes.push(input);\n } else if (typeof input === \"object\") {\n for (const [key, value] of Object.entries(input)) {\n if (value) {\n classes.push(key);\n }\n }\n }\n }\n\n return classes.join(\" \");\n}\n\nexport const AccordionTriggerTailwind = ({\n children,\n leftSlot,\n relatedActions,\n overflowMenu,\n rightSlot,\n title,\n headingLevel = \"h4\",\n className,\n // In the Tailwind path the hybrid gate guarantees no styled-system props are\n // present. `color` is still pulled out so it is forwarded to the inner content\n // (overflow menu / related actions) but not onto the wrapper div.\n color,\n ...triggerProps\n}: TypeAccordionTriggerProps) => {\n const { triggerIcon, triggerPosition, styled } = useContext(AccordionContext);\n\n return (\n <div\n className={cn(\"seeds-accordion-trigger\", className)}\n data-styled={styled}\n data-qa-trigger=\"HERE\"\n {...(triggerProps as React.HTMLAttributes<HTMLDivElement>)}\n >\n <AccordionTriggerInner\n title={title}\n headingLevel={headingLevel}\n leftSlot={leftSlot}\n rightSlot={rightSlot}\n relatedActions={relatedActions}\n overflowMenu={overflowMenu}\n color={color}\n triggerIcon={triggerIcon}\n triggerPosition={triggerPosition}\n />\n </div>\n );\n};\n","import { type TypeAccordionTriggerProps } from \"./AccordionTypes\";\nimport { AccordionTriggerHybrid } from \"./AccordionTriggerHybrid\";\n\n/**\n * AccordionTrigger. Automatically routes between the Tailwind implementation\n * (preferred) and the styled-components implementation (for consumers using\n * system props or a styled() extension).\n */\nexport const AccordionTrigger = (props: TypeAccordionTriggerProps) => (\n <AccordionTriggerHybrid {...props} />\n);\n"],"mappings":"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","names":["import_seeds_react_icon","styled","React","isControlled","RadixAccordion","import_jsx_runtime","import_react","import_react","import_seeds_react_system_props","RadixAccordion","import_seeds_react_system_props","styled","import_react","RadixAccordion","import_jsx_runtime","styled","import_jsx_runtime","styled","import_jsx_runtime","import_react","import_seeds_react_system_props","import_react","import_seeds_react_icon","import_seeds_react_menu","import_seeds_react_content_header","RadixAccordion","import_jsx_runtime","import_react","import_jsx_runtime","cn","styled","import_jsx_runtime","styled","import_jsx_runtime"]}
package/package.json CHANGED
@@ -1,15 +1,26 @@
1
1
  {
2
2
  "name": "@sproutsocial/seeds-react-accordion",
3
- "version": "0.4.32",
3
+ "version": "0.4.46",
4
4
  "description": "Seeds React Accordion",
5
5
  "author": "Sprout Social, Inc.",
6
6
  "license": "MIT",
7
7
  "main": "dist/index.js",
8
8
  "module": "dist/esm/index.js",
9
9
  "types": "dist/index.d.ts",
10
+ "files": [
11
+ "dist"
12
+ ],
13
+ "exports": {
14
+ ".": {
15
+ "import": "./dist/esm/index.js",
16
+ "require": "./dist/index.js",
17
+ "types": "./dist/index.d.ts"
18
+ },
19
+ "./dist/accordion.css": "./dist/accordion.css"
20
+ },
10
21
  "scripts": {
11
- "build": "tsup --dts",
12
- "build:debug": "tsup --dts --metafile",
22
+ "build": "tsup --dts && cp src/accordion.css dist/accordion.css",
23
+ "build:debug": "tsup --dts --metafile && cp src/accordion.css dist/accordion.css",
13
24
  "dev": "tsup --watch --dts",
14
25
  "clean": "rm -rf .turbo dist",
15
26
  "clean:modules": "rm -rf node_modules",
@@ -19,13 +30,13 @@
19
30
  },
20
31
  "dependencies": {
21
32
  "@radix-ui/react-accordion": "^1.2.12",
22
- "@sproutsocial/seeds-react-theme": "^3.6.2",
23
- "@sproutsocial/seeds-react-system-props": "^3.0.1",
24
- "@sproutsocial/seeds-react-box": "^1.1.16",
25
- "@sproutsocial/seeds-react-content-header": "^0.2.11",
26
- "@sproutsocial/seeds-react-button": "^2.0.5",
27
- "@sproutsocial/seeds-react-icon": "^2.3.7",
28
- "@sproutsocial/seeds-react-menu": "^1.13.0",
33
+ "@sproutsocial/seeds-react-theme": "^4.1.0",
34
+ "@sproutsocial/seeds-react-system-props": "^3.1.1",
35
+ "@sproutsocial/seeds-react-box": "^1.1.21",
36
+ "@sproutsocial/seeds-react-content-header": "^0.2.19",
37
+ "@sproutsocial/seeds-react-button": "^2.2.1",
38
+ "@sproutsocial/seeds-react-icon": "^2.4.0",
39
+ "@sproutsocial/seeds-react-menu": "^1.15.10",
29
40
  "styled-system": "^5.1.5"
30
41
  },
31
42
  "devDependencies": {
package/.eslintignore DELETED
@@ -1,6 +0,0 @@
1
- # Node modules
2
- node_modules/
3
-
4
- # Build output
5
- dist/
6
- coverage/
package/.eslintrc.js DELETED
@@ -1,4 +0,0 @@
1
- module.exports = {
2
- root: true,
3
- extends: ["eslint-config-seeds/racine"],
4
- };