@veracity/vui 1.7.0 → 1.8.0-beta.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.
Files changed (80) hide show
  1. package/dist/cjs/accordion/accordion.types.d.ts +6 -4
  2. package/dist/cjs/accordion/accordion.types.d.ts.map +1 -1
  3. package/dist/cjs/accordion/accordionItemHorizontal.d.ts +1 -1
  4. package/dist/cjs/accordion/accordionItemHorizontal.d.ts.map +1 -1
  5. package/dist/cjs/accordion/accordionItemHorizontal.js +4 -3
  6. package/dist/cjs/breadcrumbs/breadcrumbs.d.ts +10 -0
  7. package/dist/cjs/breadcrumbs/breadcrumbs.d.ts.map +1 -0
  8. package/dist/cjs/breadcrumbs/breadcrumbs.js +70 -0
  9. package/dist/cjs/breadcrumbs/breadcrumbs.types.d.ts +30 -0
  10. package/dist/cjs/breadcrumbs/breadcrumbs.types.d.ts.map +1 -0
  11. package/dist/cjs/breadcrumbs/breadcrumbs.types.js +2 -0
  12. package/dist/cjs/breadcrumbs/breadcrumbsItem.d.ts +5 -0
  13. package/dist/cjs/breadcrumbs/breadcrumbsItem.d.ts.map +1 -0
  14. package/dist/cjs/breadcrumbs/breadcrumbsItem.js +36 -0
  15. package/dist/cjs/breadcrumbs/breadcrumbsSeparator.d.ts +5 -0
  16. package/dist/cjs/breadcrumbs/breadcrumbsSeparator.d.ts.map +1 -0
  17. package/dist/cjs/breadcrumbs/breadcrumbsSeparator.js +28 -0
  18. package/dist/cjs/breadcrumbs/context.d.ts +5 -0
  19. package/dist/cjs/breadcrumbs/context.d.ts.map +1 -0
  20. package/dist/cjs/breadcrumbs/context.js +7 -0
  21. package/dist/cjs/breadcrumbs/index.d.ts +4 -0
  22. package/dist/cjs/breadcrumbs/index.d.ts.map +1 -0
  23. package/dist/cjs/breadcrumbs/index.js +24 -0
  24. package/dist/cjs/breadcrumbs/theme.d.ts +20 -0
  25. package/dist/cjs/breadcrumbs/theme.d.ts.map +1 -0
  26. package/dist/cjs/breadcrumbs/theme.js +24 -0
  27. package/dist/cjs/index.d.ts +1 -0
  28. package/dist/cjs/index.d.ts.map +1 -1
  29. package/dist/cjs/index.js +1 -0
  30. package/dist/cjs/theme/components.d.ts +18 -0
  31. package/dist/cjs/theme/components.d.ts.map +1 -1
  32. package/dist/cjs/theme/components.js +68 -66
  33. package/dist/cjs/theme/defaultTheme.d.ts +18 -0
  34. package/dist/cjs/theme/defaultTheme.d.ts.map +1 -1
  35. package/dist/esm/accordion/accordion.types.d.ts +6 -4
  36. package/dist/esm/accordion/accordion.types.d.ts.map +1 -1
  37. package/dist/esm/accordion/accordionItemHorizontal.d.ts +1 -1
  38. package/dist/esm/accordion/accordionItemHorizontal.d.ts.map +1 -1
  39. package/dist/esm/accordion/accordionItemHorizontal.js +4 -3
  40. package/dist/esm/breadcrumbs/breadcrumbs.d.ts +10 -0
  41. package/dist/esm/breadcrumbs/breadcrumbs.d.ts.map +1 -0
  42. package/dist/esm/breadcrumbs/breadcrumbs.js +29 -0
  43. package/dist/esm/breadcrumbs/breadcrumbs.types.d.ts +30 -0
  44. package/dist/esm/breadcrumbs/breadcrumbs.types.d.ts.map +1 -0
  45. package/dist/esm/breadcrumbs/breadcrumbs.types.js +1 -0
  46. package/dist/esm/breadcrumbs/breadcrumbsItem.d.ts +5 -0
  47. package/dist/esm/breadcrumbs/breadcrumbsItem.d.ts.map +1 -0
  48. package/dist/esm/breadcrumbs/breadcrumbsItem.js +18 -0
  49. package/dist/esm/breadcrumbs/breadcrumbsSeparator.d.ts +5 -0
  50. package/dist/esm/breadcrumbs/breadcrumbsSeparator.d.ts.map +1 -0
  51. package/dist/esm/breadcrumbs/breadcrumbsSeparator.js +7 -0
  52. package/dist/esm/breadcrumbs/context.d.ts +5 -0
  53. package/dist/esm/breadcrumbs/context.d.ts.map +1 -0
  54. package/dist/esm/breadcrumbs/context.js +3 -0
  55. package/dist/esm/breadcrumbs/index.d.ts +4 -0
  56. package/dist/esm/breadcrumbs/index.d.ts.map +1 -0
  57. package/dist/esm/breadcrumbs/index.js +3 -0
  58. package/dist/esm/breadcrumbs/theme.d.ts +20 -0
  59. package/dist/esm/breadcrumbs/theme.d.ts.map +1 -0
  60. package/dist/esm/breadcrumbs/theme.js +22 -0
  61. package/dist/esm/index.d.ts +1 -0
  62. package/dist/esm/index.d.ts.map +1 -1
  63. package/dist/esm/index.js +1 -0
  64. package/dist/esm/theme/components.d.ts +18 -0
  65. package/dist/esm/theme/components.d.ts.map +1 -1
  66. package/dist/esm/theme/components.js +2 -0
  67. package/dist/esm/theme/defaultTheme.d.ts +18 -0
  68. package/dist/esm/theme/defaultTheme.d.ts.map +1 -1
  69. package/package.json +2 -2
  70. package/src/accordion/accordion.types.ts +6 -4
  71. package/src/accordion/accordionItemHorizontal.tsx +5 -2
  72. package/src/breadcrumbs/breadcrumbs.tsx +50 -0
  73. package/src/breadcrumbs/breadcrumbs.types.ts +34 -0
  74. package/src/breadcrumbs/breadcrumbsItem.tsx +38 -0
  75. package/src/breadcrumbs/breadcrumbsSeparator.tsx +15 -0
  76. package/src/breadcrumbs/context.ts +5 -0
  77. package/src/breadcrumbs/index.ts +3 -0
  78. package/src/breadcrumbs/theme.ts +26 -0
  79. package/src/index.ts +1 -0
  80. package/src/theme/components.ts +2 -0
@@ -277,6 +277,24 @@ declare const defaultTheme: {
277
277
  sizes: {};
278
278
  variants: {};
279
279
  };
280
+ Breadcrumbs: {
281
+ baseStyle: {};
282
+ defaultProps: {
283
+ size: string;
284
+ };
285
+ sizes: {
286
+ sm: {
287
+ item: {};
288
+ };
289
+ md: {
290
+ item: {};
291
+ };
292
+ lg: {
293
+ item: {};
294
+ };
295
+ };
296
+ variants: {};
297
+ };
280
298
  Button: {
281
299
  baseStyle: {};
282
300
  defaultProps: {
@@ -1 +1 @@
1
- {"version":3,"file":"defaultTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/defaultTheme.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGjB,CAAA;AAED,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"defaultTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/defaultTheme.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGjB,CAAA;AAED,eAAe,YAAY,CAAA"}
@@ -2,10 +2,10 @@ import { ReactNode } from 'react';
2
2
  import { ListItemProps } from '../list';
3
3
  import { SystemProps } from '../system';
4
4
  import { ThemingProps } from '../theme';
5
- export declare type Orientation = 'vertical' | 'horizontal';
5
+ export declare type AccordionOrientation = 'vertical' | 'horizontal';
6
6
  export declare type AccordionProps = SystemProps & ThemingProps<'Accordion'> & {
7
- /** Items orientation @default 'vertical' */
8
- orientation?: Orientation;
7
+ /** Items AccordionOrientation @default 'vertical' */
8
+ orientation?: AccordionOrientation;
9
9
  /** Hover color for the item title @default "blue.10" */
10
10
  itemTitleHoverBg?: string;
11
11
  items?: AccordionItemProps[];
@@ -24,6 +24,8 @@ export declare type AccordionItemProps = ListItemProps & {
24
24
  children?: ReactNode;
25
25
  /** Alternative way to provide content */
26
26
  content?: ReactNode;
27
+ /** Control the padding of the content */
28
+ contentPx?: string | number;
27
29
  /** Collapsed state */
28
30
  collapsed?: boolean;
29
31
  /** Hover color for the item title @default "blue.10" */
@@ -35,6 +37,6 @@ export declare type AccordionItemProps = ListItemProps & {
35
37
  };
36
38
  export declare type AccordionItemArrowProps = {
37
39
  collapsed?: boolean;
38
- orientation?: Orientation;
40
+ orientation?: AccordionOrientation;
39
41
  };
40
42
  //# sourceMappingURL=accordion.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accordion.types.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordion.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,WAAW,GAAG,UAAU,GAAG,YAAY,CAAA;AAEnD,oBAAY,cAAc,GAAG,WAAW,GACtC,YAAY,CAAC,WAAW,CAAC,GAAG;IAC1B,4CAA4C;IAC5C,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC7B,CAAA;AAEH,oBAAY,eAAe,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7C,oBAAY,sBAAsB,GAAG;IACnC,EAAE,EAAE,eAAe,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,oBAAY,kBAAkB,GAAG,aAAa,GAAG;IAC/C,gBAAgB;IAChB,EAAE,EAAE,eAAe,CAAA;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,sBAAsB;IACtB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,oBAAY,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B,CAAA"}
1
+ {"version":3,"file":"accordion.types.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordion.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,oBAAoB,GAAG,UAAU,GAAG,YAAY,CAAA;AAE5D,oBAAY,cAAc,GAAG,WAAW,GACtC,YAAY,CAAC,WAAW,CAAC,GAAG;IAC1B,qDAAqD;IACrD,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC7B,CAAA;AAEH,oBAAY,eAAe,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7C,oBAAY,sBAAsB,GAAG;IACnC,EAAE,EAAE,eAAe,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,oBAAY,kBAAkB,GAAG,aAAa,GAAG;IAC/C,gBAAgB;IAChB,EAAE,EAAE,eAAe,CAAA;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC3B,sBAAsB;IACtB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,YAAY;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,oBAAY,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,oBAAoB,CAAA;CACnC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { AccordionItemProps } from './accordion.types';
2
- /** An accordion item (horizontal orientation). */
2
+ /** An accordion item (horizontal AccordionOrientation). */
3
3
  export declare const AccordionItemHorizontal: (props: AccordionItemProps) => JSX.Element;
4
4
  export default AccordionItemHorizontal;
5
5
  //# sourceMappingURL=accordionItemHorizontal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accordionItemHorizontal.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordionItemHorizontal.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAItD,kDAAkD;AAClD,eAAO,MAAM,uBAAuB,UAAW,kBAAkB,gBAmFhE,CAAA;AAED,eAAe,uBAAuB,CAAA"}
1
+ {"version":3,"file":"accordionItemHorizontal.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordionItemHorizontal.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAItD,2DAA2D;AAC3D,eAAO,MAAM,uBAAuB,UAAW,kBAAkB,gBAsFhE,CAAA;AAED,eAAe,uBAAuB,CAAA"}
@@ -4,9 +4,9 @@ import { omitThemingProps, useStyleConfig } from '../core';
4
4
  import { cs } from '../utils';
5
5
  import AccordionItemArrow from './accordionItemArrow';
6
6
  import { useAccordionContext } from './context';
7
- /** An accordion item (horizontal orientation). */
7
+ /** An accordion item (horizontal AccordionOrientation). */
8
8
  export const AccordionItemHorizontal = (props) => {
9
- const { className, children, collapsed, content, disabled, id, itemTitleHoverBg = 'blue.10', title, onToggle, ...rest } = omitThemingProps(props);
9
+ const { className, children, collapsed, content, disabled, id, contentPx, itemTitleHoverBg = 'blue.10', title, onToggle, ...rest } = omitThemingProps(props);
10
10
  const [collapsedInternal, setIsCollapsedInternal] = useState(false);
11
11
  const styles = useStyleConfig('Accordion', useAccordionContext());
12
12
  useEffect(() => {
@@ -20,10 +20,11 @@ export const AccordionItemHorizontal = (props) => {
20
20
  };
21
21
  const cursor = disabled ? 'not-allowed' : 'pointer';
22
22
  const fontWeight = typeof title === 'string' ? '500' : 'inherit';
23
+ const expandedContentPx = contentPx ? contentPx : styles.item.pt;
23
24
  return (React.createElement(Box, { alignItems: collapsedInternal ? 'normal' : 'baseline', bg: disabled ? 'disabled.bg' : undefined, borderRight: "1px solid grey.40", className: cs('vui-accordion-item-horizontal', className), color: disabled ? 'disabled.color' : undefined, column: true, cursor: disabled ? 'not-allowed' : undefined, id: `${id}`, maxW: collapsedInternal ? styles.item.minH : 'auto', minW: styles.item.minH, p: 0, transitionDuration: "0ms", userSelect: disabled ? 'none' : undefined, ...rest },
24
25
  React.createElement(Box, { ...styles.item, cursor: cursor, hoverBg: itemTitleHoverBg, justifyContent: "space-between", minH: styles.item.minH, onClick: toggle, p: styles.item.pt, w: "100%" },
25
26
  !collapsedInternal && React.createElement(Box, { fontWeight: fontWeight }, title),
26
27
  React.createElement(AccordionItemArrow, { collapsed: collapsedInternal, orientation: "horizontal" })),
27
- !collapsedInternal ? (React.createElement(Box, { p: styles.item.pt, pt: 0, transitionDuration: "0ms" }, children ?? content)) : (React.createElement(Box, { cursor: cursor, flexDirection: "row-reverse", fontWeight: fontWeight, mb: styles.item.minH, mt: styles.item.pt, onClick: toggle, transform: "rotate(-90deg)", transitionDuration: "0ms", whiteSpace: "nowrap" }, title))));
28
+ !collapsedInternal ? (React.createElement(Box, { p: styles.item.pt, pt: 0, px: expandedContentPx, transitionDuration: "0ms", w: 1 }, children ?? content)) : (React.createElement(Box, { cursor: cursor, flexDirection: "row-reverse", fontWeight: fontWeight, mb: styles.item.minH, mt: styles.item.pt, onClick: toggle, transform: "rotate(-90deg)", transitionDuration: "0ms", whiteSpace: "nowrap" }, title))));
28
29
  };
29
30
  export default AccordionItemHorizontal;
@@ -0,0 +1,10 @@
1
+ import { VuiComponent } from '../core';
2
+ import { BreadcrumbsProps } from './breadcrumbs.types';
3
+ import BreadcrumbsItem from './breadcrumbsItem';
4
+ export declare const BreadcrumbsBase: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, import("..").SystemProps, never>;
5
+ /** [Beta] Breadcrumbs consist of a list of items that help a user visualize a page's location within the hierarchical structure of a website, and allow correspondent navigation. */
6
+ export declare const Breadcrumbs: VuiComponent<"div", BreadcrumbsProps> & {
7
+ Item: typeof BreadcrumbsItem;
8
+ };
9
+ export default Breadcrumbs;
10
+ //# sourceMappingURL=breadcrumbs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumbs.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbs.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,YAAY,EAAE,MAAM,SAAS,CAAA;AAEnE,OAAO,EAAwB,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAC5E,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAI/C,eAAO,MAAM,eAAe,+HAI3B,CAAA;AAED,qLAAqL;AACrL,eAAO,MAAM,WAAW;UA4BhB,sBAAsB;CAC7B,CAAA;AAID,eAAe,WAAW,CAAA"}
@@ -0,0 +1,29 @@
1
+ import React, { Children, Fragment, useMemo } from 'react';
2
+ import { styled, useStyleConfig, vui } from '../core';
3
+ import { cs, filterUndefined } from '../utils';
4
+ import BreadcrumbsItem from './breadcrumbsItem';
5
+ import BreadcrumbsSeparator from './breadcrumbsSeparator';
6
+ import { BreadcrumbsProvider } from './context';
7
+ export const BreadcrumbsBase = styled.divBox `
8
+ display: flex;
9
+ min-width: 0;
10
+ transition-duration: normal;
11
+ `;
12
+ /** [Beta] Breadcrumbs consist of a list of items that help a user visualize a page's location within the hierarchical structure of a website, and allow correspondent navigation. */
13
+ export const Breadcrumbs = vui((props, ref) => {
14
+ const { children, className, items, size, ...rest } = props;
15
+ const styles = useStyleConfig('Breadcrumbs', props);
16
+ const context = useMemo(() => filterUndefined({ size }), [size]);
17
+ const aliasedProps = filterUndefined({});
18
+ const arrayChildren = Children.toArray(children);
19
+ return (React.createElement(BreadcrumbsProvider, { value: context },
20
+ React.createElement(BreadcrumbsBase, { className: cs('vui-breadcrumbs', className), ref: ref, ...styles, ...aliasedProps, ...rest }, items
21
+ ? items?.map?.((item, key) => (React.createElement(Fragment, { key: key },
22
+ React.createElement(BreadcrumbsItem, { key: key, ...item }),
23
+ key !== items.length - 1 && React.createElement(BreadcrumbsSeparator, null))))
24
+ : Children.map(arrayChildren, (child, key) => (React.createElement(Fragment, { key: key },
25
+ child,
26
+ key !== arrayChildren.length - 1 && React.createElement(BreadcrumbsSeparator, null)))))));
27
+ });
28
+ Breadcrumbs.Item = BreadcrumbsItem;
29
+ export default Breadcrumbs;
@@ -0,0 +1,30 @@
1
+ import { ReactNode } from 'react';
2
+ import { BoxProps } from '../box';
3
+ import { IconProp } from '../icon';
4
+ import { SystemProps } from '../system';
5
+ import { ThemingProps } from '../theme';
6
+ export declare type BreadcrumbsProps = SystemProps & ThemingProps<'Breadcrumbs'> & {
7
+ /** Collection of items */
8
+ items?: BreadcrumbsItemProps[];
9
+ };
10
+ export declare type BreadcrumbsItemProps = BoxProps & {
11
+ /** Custom class name */
12
+ className?: string;
13
+ /** Content */
14
+ children?: ReactNode;
15
+ /** Alternative way to provide content */
16
+ content?: ReactNode;
17
+ /** Icon */
18
+ icon?: IconProp;
19
+ /** Path */
20
+ path?: string;
21
+ };
22
+ export declare type BreadcrumbsSeparatorProps = BoxProps & {
23
+ /** Custom class name */
24
+ className?: string;
25
+ /** Content */
26
+ children?: ReactNode;
27
+ /** Alternative way to provide content */
28
+ content?: ReactNode;
29
+ };
30
+ //# sourceMappingURL=breadcrumbs.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumbs.types.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbs.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,gBAAgB,GAAG,WAAW,GACxC,YAAY,CAAC,aAAa,CAAC,GAAG;IAC5B,0BAA0B;IAC1B,KAAK,CAAC,EAAE,oBAAoB,EAAE,CAAA;CAC/B,CAAA;AAEH,oBAAY,oBAAoB,GAAG,QAAQ,GAAG;IAC5C,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,WAAW;IACX,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,WAAW;IACX,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,oBAAY,yBAAyB,GAAG,QAAQ,GAAG;IACjD,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc;IACd,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,yCAAyC;IACzC,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB,CAAA"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ import { BreadcrumbsItemProps } from './breadcrumbs.types';
2
+ /** A Breadcrumbs item. */
3
+ export declare const BreadcrumbsItem: (props: BreadcrumbsItemProps) => JSX.Element;
4
+ export default BreadcrumbsItem;
5
+ //# sourceMappingURL=breadcrumbsItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumbsItem.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbsItem.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAG1D,0BAA0B;AAC1B,eAAO,MAAM,eAAe,UAAW,oBAAoB,gBAuB1D,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import { Link as RouterLink } from 'react-router-dom';
3
+ import { Box } from '../box';
4
+ import { omitThemingProps, useStyleConfig } from '../core';
5
+ import { Icon } from '../icon';
6
+ import { Link } from '../link';
7
+ import { cs } from '../utils';
8
+ import { useBreadcrumbsContext } from './context';
9
+ /** A Breadcrumbs item. */
10
+ export const BreadcrumbsItem = (props) => {
11
+ const { className, children, content, icon, path, ...rest } = omitThemingProps(props);
12
+ const styles = useStyleConfig('Breadcrumbs', useBreadcrumbsContext());
13
+ const innerContent = (React.createElement(React.Fragment, null,
14
+ !!icon && React.createElement(Icon, { name: icon, size: "sm" }),
15
+ content || children));
16
+ return (React.createElement(Box, { alignItems: "center", className: cs('vui-breadcrumbs-item', className), p: 0, ...rest, ...styles.item }, path ? (React.createElement(Link, { as: RouterLink, to: path }, innerContent)) : (innerContent)));
17
+ };
18
+ export default BreadcrumbsItem;
@@ -0,0 +1,5 @@
1
+ import { BreadcrumbsSeparatorProps } from './breadcrumbs.types';
2
+ /** Breadcrumbs separator. */
3
+ export declare const BreadcrumbsSeparator: ({ className, children, content, ...rest }: BreadcrumbsSeparatorProps) => JSX.Element;
4
+ export default BreadcrumbsSeparator;
5
+ //# sourceMappingURL=breadcrumbsSeparator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breadcrumbsSeparator.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/breadcrumbsSeparator.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAA;AAE/D,6BAA6B;AAC7B,eAAO,MAAM,oBAAoB,8CAA+C,yBAAyB,gBAIxG,CAAA;AAED,eAAe,oBAAoB,CAAA"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { Box } from '../box';
3
+ import { Icon } from '../icon';
4
+ import { cs } from '../utils';
5
+ /** Breadcrumbs separator. */
6
+ export const BreadcrumbsSeparator = ({ className, children, content, ...rest }) => (React.createElement(Box, { alignItems: "center", className: cs('vui-breadcrumbs-separator', className), p: 0, ...rest }, content || children || React.createElement(Icon, { name: "falAngleRight" })));
7
+ export default BreadcrumbsSeparator;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { Dict } from '../utils';
3
+ declare const BreadcrumbsProvider: import("react").Provider<Dict<any>>, useBreadcrumbsContext: () => Dict<any>;
4
+ export { BreadcrumbsProvider, useBreadcrumbsContext };
5
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/context.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiB,IAAI,EAAE,MAAM,UAAU,CAAA;AAE9C,QAAA,MAAO,mBAAmB,uCAAE,qBAAqB,iBAA6C,CAAA;AAE9F,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { createContext } from '../utils';
2
+ const [BreadcrumbsProvider, useBreadcrumbsContext] = createContext({ isOptional: true });
3
+ export { BreadcrumbsProvider, useBreadcrumbsContext };
@@ -0,0 +1,4 @@
1
+ export * from './breadcrumbs';
2
+ export { default } from './breadcrumbs';
3
+ export * from './breadcrumbs.types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,cAAc,qBAAqB,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './breadcrumbs';
2
+ export { default } from './breadcrumbs';
3
+ export * from './breadcrumbs.types';
@@ -0,0 +1,20 @@
1
+ declare const _default: {
2
+ baseStyle: {};
3
+ defaultProps: {
4
+ size: string;
5
+ };
6
+ sizes: {
7
+ sm: {
8
+ item: {};
9
+ };
10
+ md: {
11
+ item: {};
12
+ };
13
+ lg: {
14
+ item: {};
15
+ };
16
+ };
17
+ variants: {};
18
+ };
19
+ export default _default;
20
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/breadcrumbs/theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAoBA,wBAKC"}
@@ -0,0 +1,22 @@
1
+ const baseStyle = {};
2
+ const defaultProps = {
3
+ size: 'md'
4
+ };
5
+ const sizes = {
6
+ sm: {
7
+ item: {}
8
+ },
9
+ md: {
10
+ item: {}
11
+ },
12
+ lg: {
13
+ item: {}
14
+ }
15
+ };
16
+ const variants = {};
17
+ export default {
18
+ baseStyle,
19
+ defaultProps,
20
+ sizes,
21
+ variants
22
+ };
@@ -1,6 +1,7 @@
1
1
  export * from './accordion';
2
2
  export * from './avatar';
3
3
  export * from './box';
4
+ export * from './breadcrumbs';
4
5
  export * from './button';
5
6
  export * from './buttonGroup';
6
7
  export * from './buttonToggleGroup';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA;AACnC,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,KAAK,CAAA;AACnB,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,KAAK,CAAA;AACnB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,OAAO,CAAA;AACrB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,OAAO,CAAA;AACrB,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA;AACnC,cAAc,QAAQ,CAAA;AACtB,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,QAAQ,CAAA;AACtB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,QAAQ,CAAA;AACtB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,QAAQ,CAAA;AACtB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,KAAK,CAAA;AACnB,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,OAAO,CAAA;AACrB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,KAAK,CAAA;AACnB,cAAc,SAAS,CAAA;AACvB,cAAc,WAAW,CAAA;AACzB,cAAc,SAAS,CAAA;AACvB,cAAc,QAAQ,CAAA;AACtB,cAAc,OAAO,CAAA;AACrB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA;AAC1B,cAAc,SAAS,CAAA"}
package/dist/esm/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  export * from './accordion';
2
2
  export * from './avatar';
3
3
  export * from './box';
4
+ export * from './breadcrumbs';
4
5
  export * from './button';
5
6
  export * from './buttonGroup';
6
7
  export * from './buttonToggleGroup';
@@ -81,6 +81,24 @@ declare const _default: {
81
81
  sizes: {};
82
82
  variants: {};
83
83
  };
84
+ Breadcrumbs: {
85
+ baseStyle: {};
86
+ defaultProps: {
87
+ size: string;
88
+ };
89
+ sizes: {
90
+ sm: {
91
+ item: {};
92
+ };
93
+ md: {
94
+ item: {};
95
+ };
96
+ lg: {
97
+ item: {};
98
+ };
99
+ };
100
+ variants: {};
101
+ };
84
102
  Button: {
85
103
  baseStyle: {};
86
104
  defaultProps: {
@@ -1 +1 @@
1
- {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/theme/components.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,wBAqCC"}
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/theme/components.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,wBAsCC"}
@@ -1,6 +1,7 @@
1
1
  import Accordion from '../accordion/theme';
2
2
  import Avatar from '../avatar/theme';
3
3
  import Box from '../box/theme';
4
+ import Breadcrumbs from '../breadcrumbs/theme';
4
5
  import Button from '../button/theme';
5
6
  import Card from '../card/theme';
6
7
  import Checkbox from '../checkbox/theme';
@@ -38,6 +39,7 @@ export default {
38
39
  Accordion,
39
40
  Avatar,
40
41
  Box,
42
+ Breadcrumbs,
41
43
  Button,
42
44
  Card,
43
45
  Checkbox,
@@ -277,6 +277,24 @@ declare const defaultTheme: {
277
277
  sizes: {};
278
278
  variants: {};
279
279
  };
280
+ Breadcrumbs: {
281
+ baseStyle: {};
282
+ defaultProps: {
283
+ size: string;
284
+ };
285
+ sizes: {
286
+ sm: {
287
+ item: {};
288
+ };
289
+ md: {
290
+ item: {};
291
+ };
292
+ lg: {
293
+ item: {};
294
+ };
295
+ };
296
+ variants: {};
297
+ };
280
298
  Button: {
281
299
  baseStyle: {};
282
300
  defaultProps: {
@@ -1 +1 @@
1
- {"version":3,"file":"defaultTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/defaultTheme.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGjB,CAAA;AAED,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"defaultTheme.d.ts","sourceRoot":"","sources":["../../../src/theme/defaultTheme.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGjB,CAAA;AAED,eAAe,YAAY,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veracity/vui",
3
- "version": "1.7.0",
3
+ "version": "1.8.0-beta.0",
4
4
  "description": "Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.",
5
5
  "module": "./dist/esm/index.js",
6
6
  "main": "./dist/cjs/index.js",
@@ -34,4 +34,4 @@
34
34
  "react": "^17.0.0 || ^18.0.0",
35
35
  "react-dom": "^17.0.0 || ^18.0.0"
36
36
  }
37
- }
37
+ }
@@ -4,12 +4,12 @@ import { ListItemProps } from '../list'
4
4
  import { SystemProps } from '../system'
5
5
  import { ThemingProps } from '../theme'
6
6
 
7
- export type Orientation = 'vertical' | 'horizontal'
7
+ export type AccordionOrientation = 'vertical' | 'horizontal'
8
8
 
9
9
  export type AccordionProps = SystemProps &
10
10
  ThemingProps<'Accordion'> & {
11
- /** Items orientation @default 'vertical' */
12
- orientation?: Orientation
11
+ /** Items AccordionOrientation @default 'vertical' */
12
+ orientation?: AccordionOrientation
13
13
  /** Hover color for the item title @default "blue.10" */
14
14
  itemTitleHoverBg?: string
15
15
  items?: AccordionItemProps[]
@@ -31,6 +31,8 @@ export type AccordionItemProps = ListItemProps & {
31
31
  children?: ReactNode
32
32
  /** Alternative way to provide content */
33
33
  content?: ReactNode
34
+ /** Control the padding of the content */
35
+ contentPx?: string | number
34
36
  /** Collapsed state */
35
37
  collapsed?: boolean
36
38
  /** Hover color for the item title @default "blue.10" */
@@ -43,5 +45,5 @@ export type AccordionItemProps = ListItemProps & {
43
45
 
44
46
  export type AccordionItemArrowProps = {
45
47
  collapsed?: boolean
46
- orientation?: Orientation
48
+ orientation?: AccordionOrientation
47
49
  }
@@ -7,7 +7,7 @@ import { AccordionItemProps } from './accordion.types'
7
7
  import AccordionItemArrow from './accordionItemArrow'
8
8
  import { useAccordionContext } from './context'
9
9
 
10
- /** An accordion item (horizontal orientation). */
10
+ /** An accordion item (horizontal AccordionOrientation). */
11
11
  export const AccordionItemHorizontal = (props: AccordionItemProps) => {
12
12
  const {
13
13
  className,
@@ -16,6 +16,7 @@ export const AccordionItemHorizontal = (props: AccordionItemProps) => {
16
16
  content,
17
17
  disabled,
18
18
  id,
19
+ contentPx,
19
20
  itemTitleHoverBg = 'blue.10',
20
21
  title,
21
22
  onToggle,
@@ -39,6 +40,8 @@ export const AccordionItemHorizontal = (props: AccordionItemProps) => {
39
40
  const cursor = disabled ? 'not-allowed' : 'pointer'
40
41
  const fontWeight = typeof title === 'string' ? '500' : 'inherit'
41
42
 
43
+ const expandedContentPx = contentPx ? contentPx : styles.item.pt
44
+
42
45
  return (
43
46
  <Box
44
47
  alignItems={collapsedInternal ? 'normal' : 'baseline'}
@@ -71,7 +74,7 @@ export const AccordionItemHorizontal = (props: AccordionItemProps) => {
71
74
  </Box>
72
75
 
73
76
  {!collapsedInternal ? (
74
- <Box p={styles.item.pt} pt={0} transitionDuration="0ms">
77
+ <Box p={styles.item.pt} pt={0} px={expandedContentPx} transitionDuration="0ms" w={1}>
75
78
  {children ?? content}
76
79
  </Box>
77
80
  ) : (
@@ -0,0 +1,50 @@
1
+ import React, { Children, Fragment, useMemo } from 'react'
2
+
3
+ import { styled, useStyleConfig, vui, VuiComponent } from '../core'
4
+ import { cs, filterUndefined } from '../utils'
5
+ import { BreadcrumbsItemProps, BreadcrumbsProps } from './breadcrumbs.types'
6
+ import BreadcrumbsItem from './breadcrumbsItem'
7
+ import BreadcrumbsSeparator from './breadcrumbsSeparator'
8
+ import { BreadcrumbsProvider } from './context'
9
+
10
+ export const BreadcrumbsBase = styled.divBox`
11
+ display: flex;
12
+ min-width: 0;
13
+ transition-duration: normal;
14
+ `
15
+
16
+ /** [Beta] Breadcrumbs consist of a list of items that help a user visualize a page's location within the hierarchical structure of a website, and allow correspondent navigation. */
17
+ export const Breadcrumbs = vui<'div', BreadcrumbsProps>((props, ref) => {
18
+ const { children, className, items, size, ...rest } = props
19
+ const styles = useStyleConfig('Breadcrumbs', props)
20
+
21
+ const context = useMemo(() => filterUndefined({ size }), [size])
22
+
23
+ const aliasedProps = filterUndefined<BreadcrumbsProps>({})
24
+ const arrayChildren = Children.toArray(children)
25
+ return (
26
+ <BreadcrumbsProvider value={context}>
27
+ <BreadcrumbsBase className={cs('vui-breadcrumbs', className)} ref={ref} {...styles} {...aliasedProps} {...rest}>
28
+ {items
29
+ ? items?.map?.((item: BreadcrumbsItemProps, key: number) => (
30
+ <Fragment key={key}>
31
+ <BreadcrumbsItem key={key} {...item} />
32
+ {key !== items.length - 1 && <BreadcrumbsSeparator />}
33
+ </Fragment>
34
+ ))
35
+ : Children.map(arrayChildren, (child, key) => (
36
+ <Fragment key={key}>
37
+ {child}
38
+ {key !== arrayChildren.length - 1 && <BreadcrumbsSeparator />}
39
+ </Fragment>
40
+ ))}
41
+ </BreadcrumbsBase>
42
+ </BreadcrumbsProvider>
43
+ )
44
+ }) as VuiComponent<'div', BreadcrumbsProps> & {
45
+ Item: typeof BreadcrumbsItem
46
+ }
47
+
48
+ Breadcrumbs.Item = BreadcrumbsItem
49
+
50
+ export default Breadcrumbs
@@ -0,0 +1,34 @@
1
+ import { ReactNode } from 'react'
2
+
3
+ import { BoxProps } from '../box'
4
+ import { IconProp } from '../icon'
5
+ import { SystemProps } from '../system'
6
+ import { ThemingProps } from '../theme'
7
+
8
+ export type BreadcrumbsProps = SystemProps &
9
+ ThemingProps<'Breadcrumbs'> & {
10
+ /** Collection of items */
11
+ items?: BreadcrumbsItemProps[]
12
+ }
13
+
14
+ export type BreadcrumbsItemProps = BoxProps & {
15
+ /** Custom class name */
16
+ className?: string
17
+ /** Content */
18
+ children?: ReactNode
19
+ /** Alternative way to provide content */
20
+ content?: ReactNode
21
+ /** Icon */
22
+ icon?: IconProp
23
+ /** Path */
24
+ path?: string
25
+ }
26
+
27
+ export type BreadcrumbsSeparatorProps = BoxProps & {
28
+ /** Custom class name */
29
+ className?: string
30
+ /** Content */
31
+ children?: ReactNode
32
+ /** Alternative way to provide content */
33
+ content?: ReactNode
34
+ }