@patternfly/react-core 4.230.1 → 4.231.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 (51) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/esm/components/MenuToggle/MenuToggle.d.ts +8 -0
  3. package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  4. package/dist/esm/components/MenuToggle/MenuToggle.js +12 -7
  5. package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
  6. package/dist/esm/components/MenuToggle/MenuToggleAction.d.ts +19 -0
  7. package/dist/esm/components/MenuToggle/MenuToggleAction.d.ts.map +1 -0
  8. package/dist/esm/components/MenuToggle/MenuToggleAction.js +17 -0
  9. package/dist/esm/components/MenuToggle/MenuToggleAction.js.map +1 -0
  10. package/dist/esm/components/MenuToggle/MenuToggleCheckbox.d.ts +36 -0
  11. package/dist/esm/components/MenuToggle/MenuToggleCheckbox.d.ts.map +1 -0
  12. package/dist/esm/components/MenuToggle/MenuToggleCheckbox.js +43 -0
  13. package/dist/esm/components/MenuToggle/MenuToggleCheckbox.js.map +1 -0
  14. package/dist/esm/components/MenuToggle/index.d.ts +2 -0
  15. package/dist/esm/components/MenuToggle/index.d.ts.map +1 -1
  16. package/dist/esm/components/MenuToggle/index.js +2 -0
  17. package/dist/esm/components/MenuToggle/index.js.map +1 -1
  18. package/dist/js/components/MenuToggle/MenuToggle.d.ts +8 -0
  19. package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  20. package/dist/js/components/MenuToggle/MenuToggle.js +12 -7
  21. package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
  22. package/dist/js/components/MenuToggle/MenuToggleAction.d.ts +19 -0
  23. package/dist/js/components/MenuToggle/MenuToggleAction.d.ts.map +1 -0
  24. package/dist/js/components/MenuToggle/MenuToggleAction.js +21 -0
  25. package/dist/js/components/MenuToggle/MenuToggleAction.js.map +1 -0
  26. package/dist/js/components/MenuToggle/MenuToggleCheckbox.d.ts +36 -0
  27. package/dist/js/components/MenuToggle/MenuToggleCheckbox.d.ts.map +1 -0
  28. package/dist/js/components/MenuToggle/MenuToggleCheckbox.js +47 -0
  29. package/dist/js/components/MenuToggle/MenuToggleCheckbox.js.map +1 -0
  30. package/dist/js/components/MenuToggle/index.d.ts +2 -0
  31. package/dist/js/components/MenuToggle/index.d.ts.map +1 -1
  32. package/dist/js/components/MenuToggle/index.js +2 -0
  33. package/dist/js/components/MenuToggle/index.js.map +1 -1
  34. package/dist/umd/react-core.css +79 -79
  35. package/dist/umd/react-core.js +65 -7
  36. package/dist/umd/react-core.min.css +74 -74
  37. package/dist/umd/react-core.min.js +4 -4
  38. package/package.json +5 -5
  39. package/src/components/MenuToggle/MenuToggle.tsx +53 -27
  40. package/src/components/MenuToggle/MenuToggleAction.tsx +42 -0
  41. package/src/components/MenuToggle/MenuToggleCheckbox.tsx +104 -0
  42. package/src/components/MenuToggle/__tests__/__snapshots__/MenuToggle.test.tsx.snap +1 -1
  43. package/src/components/MenuToggle/examples/MenuToggle.md +35 -2
  44. package/src/components/MenuToggle/examples/MenuToggleSplitButtonAction.tsx +51 -0
  45. package/src/components/MenuToggle/examples/MenuToggleSplitButtonActionPrimary.tsx +58 -0
  46. package/src/components/MenuToggle/examples/MenuToggleSplitButtonActionSecondary.tsx +58 -0
  47. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckbox.tsx +40 -0
  48. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxPrimary.tsx +55 -0
  49. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxSecondary.tsx +55 -0
  50. package/src/components/MenuToggle/examples/MenuToggleSplitButtonCheckboxWithText.tsx +52 -0
  51. package/src/components/MenuToggle/index.ts +2 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 4.231.0 (2022-08-03)
7
+
8
+
9
+ ### Features
10
+
11
+ * **MenuToggle:** add split button variants ([#7748](https://github.com/patternfly/patternfly-react/issues/7748)) ([7577725](https://github.com/patternfly/patternfly-react/commit/7577725305533791481ac22d9b36b87d5d3167b1))
12
+
13
+
14
+
15
+
16
+
6
17
  ## 4.230.1 (2022-08-02)
7
18
 
8
19
  **Note:** Version bump only for package @patternfly/react-core
@@ -1,6 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { BadgeProps } from '../Badge';
3
3
  export declare type MenuToggleElement = HTMLDivElement | HTMLButtonElement;
4
+ export interface SplitButtonOptions {
5
+ /** Elements to display before the toggle button. When included, renders the menu toggle as a split button. */
6
+ items: React.ReactNode[];
7
+ /** Variant of split button toggle */
8
+ variant?: 'action' | 'checkbox';
9
+ }
4
10
  export interface MenuToggleProps extends Omit<React.DetailedHTMLProps<React.HTMLAttributes<MenuToggleElement>, MenuToggleElement>, 'ref'> {
5
11
  /** Content rendered inside the toggle */
6
12
  children?: React.ReactNode;
@@ -14,6 +20,8 @@ export interface MenuToggleProps extends Omit<React.DetailedHTMLProps<React.HTML
14
20
  isFullHeight?: boolean;
15
21
  /** Flag indicating the toggle takes up the full width of its parent */
16
22
  isFullWidth?: boolean;
23
+ /** Object used to configure a split button menu toggle */
24
+ splitButtonOptions?: SplitButtonOptions;
17
25
  /** Variant styles of the menu toggle */
18
26
  variant?: 'default' | 'plain' | 'primary' | 'plainText' | 'secondary' | 'typeahead';
19
27
  /** Optional icon rendered inside the toggle, before the children content */
@@ -1 +1 @@
1
- {"version":3,"file":"MenuToggle.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,oBAAY,iBAAiB,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAEnE,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,EAAE,KAAK,CAAC;IACxG,yCAAyC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wCAAwC;IACxC,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;IACpF,4EAA4E;IAC5E,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;IACrC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACzC;AAED,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC;IAClE,WAAW,SAAoB;IAC/B,MAAM,CAAC,YAAY,EAAE,eAAe,CAOlC;IAEF,MAAM;CA2FP;AAED,eAAO,MAAM,UAAU,2FAErB,CAAC"}
1
+ {"version":3,"file":"MenuToggle.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,oBAAY,iBAAiB,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAEnE,MAAM,WAAW,kBAAkB;IACjC,8GAA8G;IAC9G,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACzB,qCAAqC;IACrC,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,EAAE,KAAK,CAAC;IACxG,yCAAyC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0DAA0D;IAC1D,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,wCAAwC;IACxC,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;IACpF,4EAA4E;IAC5E,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;IACrC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACzC;AAED,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC;IAClE,WAAW,SAAoB;IAC/B,MAAM,CAAC,YAAY,EAAE,eAAe,CAMlC;IAEF,MAAM;CA6GP;AAED,eAAO,MAAM,UAAU,2FAErB,CAAC"}
@@ -9,7 +9,7 @@ export class MenuToggleBase extends React.Component {
9
9
  this.displayName = 'MenuToggleBase';
10
10
  }
11
11
  render() {
12
- const _a = this.props, { children, className, icon, badge, isExpanded, isDisabled, isFullHeight, isFullWidth, variant, innerRef, onClick, 'aria-label': ariaLabel } = _a, otherProps = __rest(_a, ["children", "className", "icon", "badge", "isExpanded", "isDisabled", "isFullHeight", "isFullWidth", "variant", "innerRef", "onClick", 'aria-label']);
12
+ const _a = this.props, { children, className, icon, badge, isExpanded, isDisabled, isFullHeight, isFullWidth, splitButtonOptions, variant, innerRef, onClick, 'aria-label': ariaLabel } = _a, otherProps = __rest(_a, ["children", "className", "icon", "badge", "isExpanded", "isDisabled", "isFullHeight", "isFullWidth", "splitButtonOptions", "variant", "innerRef", "onClick", 'aria-label']);
13
13
  const isPlain = variant === 'plain';
14
14
  const isPlainText = variant === 'plainText';
15
15
  const isTypeahead = variant === 'typeahead';
@@ -18,14 +18,20 @@ export class MenuToggleBase extends React.Component {
18
18
  React.createElement(CaretDownIcon, { "aria-hidden": true }))));
19
19
  const content = (React.createElement(React.Fragment, null,
20
20
  icon && React.createElement("span", { className: css(styles.menuToggleIcon) }, icon),
21
- isTypeahead ? children : React.createElement("span", { className: "pf-c-menu-toggle__text" }, children),
21
+ isTypeahead ? children : React.createElement("span", { className: css(styles.menuToggleText) }, children),
22
22
  badge && React.createElement("span", { className: css(styles.menuToggleCount) }, badge),
23
23
  isTypeahead ? (React.createElement("button", { type: "button", className: css(styles.menuToggleButton), "aria-expanded": isExpanded, onClick: onClick, "aria-label": "Menu toggle" }, toggleControls)) : (toggleControls)));
24
- const componentProps = Object.assign(Object.assign({ className: css(styles.menuToggle, isExpanded && styles.modifiers.expanded, variant === 'primary' && styles.modifiers.primary, (isPlain || isPlainText) && styles.modifiers.plain, isPlainText && styles.modifiers.text, isFullHeight && styles.modifiers.fullHeight, isTypeahead && styles.modifiers.typeahead, isFullWidth && styles.modifiers.fullWidth, className), children: isPlain ? children : content }, (isDisabled && { disabled: true })), otherProps);
24
+ const commonStyles = css(styles.menuToggle, isExpanded && styles.modifiers.expanded, variant === 'primary' && styles.modifiers.primary, variant === 'secondary' && styles.modifiers.secondary, (isPlain || isPlainText) && styles.modifiers.plain, isPlainText && styles.modifiers.text, isFullHeight && styles.modifiers.fullHeight, isFullWidth && styles.modifiers.fullWidth, isDisabled && styles.modifiers.disabled, className);
25
+ const componentProps = Object.assign(Object.assign({ children: isPlain ? children : content }, (isDisabled && { disabled: true })), otherProps);
25
26
  if (isTypeahead) {
26
- return React.createElement("div", Object.assign({ ref: innerRef }, componentProps));
27
+ return React.createElement("div", Object.assign({ ref: innerRef, className: css(commonStyles) }, componentProps));
27
28
  }
28
- return (React.createElement("button", Object.assign({ className: css(styles.menuToggle, isExpanded && styles.modifiers.expanded, variant === 'primary' && styles.modifiers.primary, variant === 'secondary' && styles.modifiers.secondary, (isPlain || isPlainText) && styles.modifiers.plain, isPlainText && styles.modifiers.text, isFullHeight && styles.modifiers.fullHeight, isFullWidth && styles.modifiers.fullWidth, className), ref: innerRef, type: "button", "aria-label": ariaLabel, "aria-expanded": isExpanded, onClick: onClick }, componentProps)));
29
+ if (splitButtonOptions) {
30
+ return (React.createElement("div", { className: css(commonStyles, styles.modifiers.splitButton, (splitButtonOptions === null || splitButtonOptions === void 0 ? void 0 : splitButtonOptions.variant) === 'action' && styles.modifiers.action) }, splitButtonOptions === null || splitButtonOptions === void 0 ? void 0 :
31
+ splitButtonOptions.items,
32
+ React.createElement("button", Object.assign({ className: css(styles.menuToggleButton), type: "button", "aria-expanded": isExpanded, "aria-label": ariaLabel, disabled: isDisabled }, otherProps), toggleControls)));
33
+ }
34
+ return (React.createElement("button", Object.assign({ className: css(commonStyles), type: "button", "aria-label": ariaLabel, "aria-expanded": isExpanded, ref: innerRef, disabled: isDisabled, onClick: onClick }, componentProps)));
29
35
  }
30
36
  }
31
37
  MenuToggleBase.defaultProps = {
@@ -33,8 +39,7 @@ MenuToggleBase.defaultProps = {
33
39
  isExpanded: false,
34
40
  isDisabled: false,
35
41
  isFullWidth: false,
36
- isFullHeight: false,
37
- variant: 'default'
42
+ isFullHeight: false
38
43
  };
39
44
  export const MenuToggle = React.forwardRef((props, ref) => (React.createElement(MenuToggleBase, Object.assign({ innerRef: ref }, props))));
40
45
  MenuToggle.displayName = 'MenuToggle';
@@ -1 +1 @@
1
- {"version":3,"file":"MenuToggle.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MenuToggle.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,MAAM,MAAM,gEAAgE,CAAC;AACpF,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,aAAa,MAAM,wDAAwD,CAAC;AAsCnF,MAAM,OAAO,cAAe,SAAQ,KAAK,CAAC,SAA0B;IAApE;;QACE,gBAAW,GAAG,gBAAgB,CAAC;IAsHjC,CAAC;IA7GC,MAAM;QACJ,MAAM,KAeF,IAAI,CAAC,KAAK,EAfR,EACJ,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAK,EACL,UAAU,EACV,UAAU,EACV,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,OAAO,EACP,QAAQ,EACR,OAAO,EACP,YAAY,EAAE,SAAS,OAEX,EADT,UAAU,cAdT,2KAeL,CAAa,CAAC;QACf,MAAM,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC;QACpC,MAAM,WAAW,GAAG,OAAO,KAAK,WAAW,CAAC;QAC5C,MAAM,WAAW,GAAG,OAAO,KAAK,WAAW,CAAC;QAC5C,MAAM,cAAc,GAAG,CACrB,8BAAM,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC;YAC7C,8BAAM,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAAC;gBAC/C,oBAAC,aAAa,0BAAe,CACxB,CACF,CACR,CAAC;QAEF,MAAM,OAAO,GAAG,CACd;YACG,IAAI,IAAI,8BAAM,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,IAAG,IAAI,CAAQ;YAClE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,8BAAM,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,IAAG,QAAQ,CAAQ;YACvF,KAAK,IAAI,8BAAM,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,IAAG,KAAK,CAAQ;YACrE,WAAW,CAAC,CAAC,CAAC,CACb,gCACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,mBACxB,UAAU,EACzB,OAAO,EAAE,OAAO,gBACL,aAAa,IAEvB,cAAc,CACR,CACV,CAAC,CAAC,CAAC,CACF,cAAc,CACf,CACA,CACJ,CAAC;QAEF,MAAM,YAAY,GAAG,GAAG,CACtB,MAAM,CAAC,UAAU,EACjB,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,EACvC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EACjD,OAAO,KAAK,WAAW,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,EACrD,CAAC,OAAO,IAAI,WAAW,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,EAClD,WAAW,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,EACpC,YAAY,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,EAC3C,WAAW,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,EACzC,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,EACvC,SAAS,CACV,CAAC;QAEF,MAAM,cAAc,iCAClB,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,IACnC,CAAC,UAAU,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAClC,UAAU,CACd,CAAC;QAEF,IAAI,WAAW,EAAE;YACf,OAAO,2CAAK,GAAG,EAAE,QAAqC,EAAE,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,IAAM,cAAc,EAAI,CAAC;SAC9G;QAED,IAAI,kBAAkB,EAAE;YACtB,OAAO,CACL,6BACE,SAAS,EAAE,GAAG,CACZ,YAAY,EACZ,MAAM,CAAC,SAAS,CAAC,WAAW,EAC5B,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,OAAO,MAAK,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CACpE,IAEA,kBAAkB,aAAlB,kBAAkB;gBAAlB,kBAAkB,CAAE,KAAK;gBAC1B,8CACE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,EACvC,IAAI,EAAC,QAAQ,mBACE,UAAU,gBACb,SAAS,EACrB,QAAQ,EAAE,UAAU,IAChB,UAAU,GAEb,cAAc,CACR,CACL,CACP,CAAC;SACH;QAED,OAAO,CACL,8CACE,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,EAC5B,IAAI,EAAC,QAAQ,gBACD,SAAS,mBACN,UAAU,EACzB,GAAG,EAAE,QAAwC,EAC7C,QAAQ,EAAE,UAAU,EACpB,OAAO,EAAE,OAAO,IACZ,cAAc,EAClB,CACH,CAAC;IACJ,CAAC;;AApHM,2BAAY,GAAoB;IACrC,SAAS,EAAE,EAAE;IACb,UAAU,EAAE,KAAK;IACjB,UAAU,EAAE,KAAK;IACjB,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,KAAK;CACpB,CAAC;AAiHJ,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,KAAsB,EAAE,GAAiC,EAAE,EAAE,CAAC,CACxG,oBAAC,cAAc,kBAAC,QAAQ,EAAE,GAAG,IAAM,KAAK,EAAI,CAC7C,CAAC,CAAC;AAEH,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
@@ -0,0 +1,19 @@
1
+ import * as React from 'react';
2
+ export interface MenuToggleActionProps {
3
+ /** Additional classes added to the MenuToggleAction */
4
+ className?: string;
5
+ /** Flag to show if the action button is disabled */
6
+ isDisabled?: boolean;
7
+ /** A callback for when the action button is clicked */
8
+ onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void;
9
+ /** Element to be rendered inside the <button> */
10
+ children?: React.ReactNode;
11
+ /** Id of the action button */
12
+ id?: string;
13
+ }
14
+ export declare class MenuToggleAction extends React.Component<MenuToggleActionProps> {
15
+ static displayName: string;
16
+ static defaultProps: MenuToggleActionProps;
17
+ render(): JSX.Element;
18
+ }
19
+ //# sourceMappingURL=MenuToggleAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleAction.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,qBAAqB;IACpC,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uDAAuD;IACvD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC/D,iDAAiD;IACjD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,8BAA8B;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,SAAS,CAAC,qBAAqB,CAAC;IAC1E,MAAM,CAAC,WAAW,SAAsB;IACxC,MAAM,CAAC,YAAY,EAAE,qBAAqB,CAIxC;IAEF,MAAM;CAgBP"}
@@ -0,0 +1,17 @@
1
+ import { __rest } from "tslib";
2
+ import * as React from 'react';
3
+ import styles from '@patternfly/react-styles/css/components/MenuToggle/menu-toggle';
4
+ import { css } from '@patternfly/react-styles';
5
+ export class MenuToggleAction extends React.Component {
6
+ render() {
7
+ const _a = this.props, { id, className, onClick, isDisabled, children } = _a, props = __rest(_a, ["id", "className", "onClick", "isDisabled", "children"]);
8
+ return (React.createElement("button", Object.assign({ id: id, className: css(styles.menuToggleButton, className), onClick: onClick, type: "button", disabled: isDisabled }, props), children));
9
+ }
10
+ }
11
+ MenuToggleAction.displayName = 'MenuToggleAction';
12
+ MenuToggleAction.defaultProps = {
13
+ className: '',
14
+ isDisabled: false,
15
+ onClick: () => { }
16
+ };
17
+ //# sourceMappingURL=MenuToggleAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleAction.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleAction.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,MAAM,MAAM,gEAAgE,CAAC;AACpF,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAe/C,MAAM,OAAO,gBAAiB,SAAQ,KAAK,CAAC,SAAgC;IAQ1E,MAAM;QACJ,MAAM,KAA6D,IAAI,CAAC,KAAK,EAAvE,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,OAAyB,EAApB,KAAK,cAAxD,wDAA0D,CAAa,CAAC;QAE9E,OAAO,CACL,8CACE,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAClD,OAAO,EAAE,OAAO,EAChB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,UAAU,IAChB,KAAK,GAER,QAAQ,CACF,CACV,CAAC;IACJ,CAAC;;AAtBM,4BAAW,GAAG,kBAAkB,CAAC;AACjC,6BAAY,GAA0B;IAC3C,SAAS,EAAE,EAAE;IACb,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;CAClB,CAAC"}
@@ -0,0 +1,36 @@
1
+ import * as React from 'react';
2
+ import { PickOptional } from '../../helpers/typeUtils';
3
+ import { OUIAProps } from '../../helpers';
4
+ export interface MenuToggleCheckboxProps extends Omit<React.HTMLProps<HTMLInputElement>, 'type' | 'onChange' | 'disabled' | 'checked'>, OUIAProps {
5
+ /** Additional classes added to the MenuToggleCheckbox */
6
+ className?: string;
7
+ /** Flag to show if the checkbox selection is valid or invalid */
8
+ isValid?: boolean;
9
+ /** Flag to show if the checkbox is disabled */
10
+ isDisabled?: boolean;
11
+ /** Flag to show if the checkbox is checked when it is controlled by React state.
12
+ * To make the checkbox uncontrolled instead use the defaultChecked prop, but do not use both.
13
+ */
14
+ isChecked?: boolean | null;
15
+ /** Flag to set the default checked value of the checkbox when it is uncontrolled by React state.
16
+ * To make the checkbox controlled instead use the isChecked prop, but do not use both.
17
+ */
18
+ defaultChecked?: boolean | null;
19
+ /** A callback for when the checkbox selection changes */
20
+ onChange?: (checked: boolean, event: React.FormEvent<HTMLInputElement>) => void;
21
+ /** Element to be rendered inside the <span> */
22
+ children?: React.ReactNode;
23
+ /** Id of the checkbox */
24
+ id: string;
25
+ }
26
+ export declare class MenuToggleCheckbox extends React.Component<MenuToggleCheckboxProps, {
27
+ ouiaStateId: string;
28
+ }> {
29
+ static displayName: string;
30
+ static defaultProps: PickOptional<MenuToggleCheckboxProps>;
31
+ constructor(props: MenuToggleCheckboxProps);
32
+ handleChange: (event: React.FormEvent<HTMLInputElement>) => void;
33
+ calculateChecked: () => boolean;
34
+ render(): JSX.Element;
35
+ }
36
+ //# sourceMappingURL=MenuToggleCheckbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleCheckbox.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleCheckbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAgB,SAAS,EAAoB,MAAM,eAAe,CAAC;AAE1E,MAAM,WAAW,uBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC,EAC3F,SAAS;IACX,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAChF,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,qBAAa,kBAAmB,SAAQ,KAAK,CAAC,SAAS,CAAC,uBAAuB,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;IACvG,MAAM,CAAC,WAAW,SAAwB;IAC1C,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,uBAAuB,CAAC,CAIxD;gBAEU,KAAK,EAAE,uBAAuB;IAO1C,YAAY,UAAW,MAAM,SAAS,CAAC,gBAAgB,CAAC,UAEtD;IAEF,gBAAgB,gBASd;IAEF,MAAM;CA0CP"}
@@ -0,0 +1,43 @@
1
+ import { __rest } from "tslib";
2
+ import * as React from 'react';
3
+ import styles from '@patternfly/react-styles/css/components/Check/check';
4
+ import { css } from '@patternfly/react-styles';
5
+ import { getOUIAProps, getDefaultOUIAId } from '../../helpers';
6
+ export class MenuToggleCheckbox extends React.Component {
7
+ constructor(props) {
8
+ super(props);
9
+ this.handleChange = (event) => {
10
+ this.props.onChange(event.target.checked, event);
11
+ };
12
+ this.calculateChecked = () => {
13
+ const { isChecked, defaultChecked } = this.props;
14
+ if (isChecked === null) {
15
+ // return false here and the indeterminate state will be set to true through the ref
16
+ return false;
17
+ }
18
+ else if (isChecked !== undefined) {
19
+ return isChecked;
20
+ }
21
+ return defaultChecked;
22
+ };
23
+ this.state = {
24
+ ouiaStateId: getDefaultOUIAId(MenuToggleCheckbox.displayName)
25
+ };
26
+ }
27
+ render() {
28
+ const _a = this.props, { className, isValid, isDisabled, isChecked, children, ouiaId, ouiaSafe,
29
+ /* eslint-disable @typescript-eslint/no-unused-vars */
30
+ onChange, defaultChecked, id } = _a, props = __rest(_a, ["className", "isValid", "isDisabled", "isChecked", "children", "ouiaId", "ouiaSafe", "onChange", "defaultChecked", "id"]);
31
+ const text = children && (React.createElement("span", { className: css(styles.checkLabel, className), "aria-hidden": "true", id: id }, children));
32
+ return (React.createElement("label", { className: css(styles.check, !children && styles.modifiers.standalone, className), htmlFor: id },
33
+ React.createElement("input", Object.assign({ className: css(styles.checkInput) }, (this.calculateChecked() !== undefined && { onChange: this.handleChange }), { name: id, type: "checkbox", ref: elem => elem && (elem.indeterminate = isChecked === null), "aria-invalid": !isValid, disabled: isDisabled }, (defaultChecked !== undefined ? { defaultChecked } : { checked: isChecked }), getOUIAProps(MenuToggleCheckbox.displayName, ouiaId !== undefined ? ouiaId : this.state.ouiaStateId, ouiaSafe), props)),
34
+ text));
35
+ }
36
+ }
37
+ MenuToggleCheckbox.displayName = 'MenuToggleCheckbox';
38
+ MenuToggleCheckbox.defaultProps = {
39
+ isValid: true,
40
+ isDisabled: false,
41
+ onChange: () => undefined
42
+ };
43
+ //# sourceMappingURL=MenuToggleCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleCheckbox.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleCheckbox.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,MAAM,MAAM,qDAAqD,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAa,gBAAgB,EAAE,MAAM,eAAe,CAAC;AA2B1E,MAAM,OAAO,kBAAmB,SAAQ,KAAK,CAAC,SAA2D;IAQvG,YAAY,KAA8B;QACxC,KAAK,CAAC,KAAK,CAAC,CAAC;QAMf,iBAAY,GAAG,CAAC,KAAwC,EAAE,EAAE;YAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAE,KAAK,CAAC,MAA2B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC,CAAC;QAEF,qBAAgB,GAAG,GAAG,EAAE;YACtB,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACjD,IAAI,SAAS,KAAK,IAAI,EAAE;gBACtB,oFAAoF;gBACpF,OAAO,KAAK,CAAC;aACd;iBAAM,IAAI,SAAS,KAAK,SAAS,EAAE;gBAClC,OAAO,SAAS,CAAC;aAClB;YACD,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC;QAlBA,IAAI,CAAC,KAAK,GAAG;YACX,WAAW,EAAE,gBAAgB,CAAC,kBAAkB,CAAC,WAAW,CAAC;SAC9D,CAAC;IACJ,CAAC;IAiBD,MAAM;QACJ,MAAM,KAaF,IAAI,CAAC,KAAK,EAbR,EACJ,SAAS,EACT,OAAO,EACP,UAAU,EACV,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ;QACR,sDAAsD;QACtD,QAAQ,EACR,cAAc,EACd,EAAE,OAEU,EADT,KAAK,cAZJ,yHAaL,CAAa,CAAC;QACf,MAAM,IAAI,GAAG,QAAQ,IAAI,CACvB,8BAAM,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,iBAAc,MAAM,EAAC,EAAE,EAAE,EAAE,IAC1E,QAAQ,CACJ,CACR,CAAC;QACF,OAAO,CACL,+BAAO,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE;YACnG,6CACE,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAC7B,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,IAC9E,IAAI,EAAE,EAAE,EACR,IAAI,EAAC,UAAU,EACf,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,SAAS,KAAK,IAAI,CAAC,kBAChD,CAAC,OAAO,EACtB,QAAQ,EAAE,UAAU,IAChB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAC5E,YAAY,CACd,kBAAkB,CAAC,WAAW,EAC9B,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EACtD,QAAQ,CACT,EACG,KAAK,EACT;YACD,IAAI,CACC,CACT,CAAC;IACJ,CAAC;;AAtEM,8BAAW,GAAG,oBAAoB,CAAC;AACnC,+BAAY,GAA0C;IAC3D,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAgB;CACjC,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export * from './MenuToggle';
2
+ export * from './MenuToggleAction';
3
+ export * from './MenuToggleCheckbox';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export * from './MenuToggle';
2
+ export * from './MenuToggleAction';
3
+ export * from './MenuToggleCheckbox';
2
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -1,6 +1,12 @@
1
1
  import * as React from 'react';
2
2
  import { BadgeProps } from '../Badge';
3
3
  export declare type MenuToggleElement = HTMLDivElement | HTMLButtonElement;
4
+ export interface SplitButtonOptions {
5
+ /** Elements to display before the toggle button. When included, renders the menu toggle as a split button. */
6
+ items: React.ReactNode[];
7
+ /** Variant of split button toggle */
8
+ variant?: 'action' | 'checkbox';
9
+ }
4
10
  export interface MenuToggleProps extends Omit<React.DetailedHTMLProps<React.HTMLAttributes<MenuToggleElement>, MenuToggleElement>, 'ref'> {
5
11
  /** Content rendered inside the toggle */
6
12
  children?: React.ReactNode;
@@ -14,6 +20,8 @@ export interface MenuToggleProps extends Omit<React.DetailedHTMLProps<React.HTML
14
20
  isFullHeight?: boolean;
15
21
  /** Flag indicating the toggle takes up the full width of its parent */
16
22
  isFullWidth?: boolean;
23
+ /** Object used to configure a split button menu toggle */
24
+ splitButtonOptions?: SplitButtonOptions;
17
25
  /** Variant styles of the menu toggle */
18
26
  variant?: 'default' | 'plain' | 'primary' | 'plainText' | 'secondary' | 'typeahead';
19
27
  /** Optional icon rendered inside the toggle, before the children content */
@@ -1 +1 @@
1
- {"version":3,"file":"MenuToggle.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,oBAAY,iBAAiB,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAEnE,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,EAAE,KAAK,CAAC;IACxG,yCAAyC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wCAAwC;IACxC,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;IACpF,4EAA4E;IAC5E,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;IACrC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACzC;AAED,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC;IAClE,WAAW,SAAoB;IAC/B,MAAM,CAAC,YAAY,EAAE,eAAe,CAOlC;IAEF,MAAM;CA2FP;AAED,eAAO,MAAM,UAAU,2FAErB,CAAC"}
1
+ {"version":3,"file":"MenuToggle.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,oBAAY,iBAAiB,GAAG,cAAc,GAAG,iBAAiB,CAAC;AAEnE,MAAM,WAAW,kBAAkB;IACjC,8GAA8G;IAC9G,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACzB,qCAAqC;IACrC,OAAO,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;CACjC;AAED,MAAM,WAAW,eACf,SAAQ,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC,EAAE,KAAK,CAAC;IACxG,yCAAyC;IACzC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0DAA0D;IAC1D,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,wCAAwC;IACxC,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC;IACpF,4EAA4E;IAC5E,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,4EAA4E;IAC5E,KAAK,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC,SAAS,CAAC;IACrC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;CACzC;AAED,qBAAa,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC;IAClE,WAAW,SAAoB;IAC/B,MAAM,CAAC,YAAY,EAAE,eAAe,CAMlC;IAEF,MAAM;CA6GP;AAED,eAAO,MAAM,UAAU,2FAErB,CAAC"}
@@ -12,7 +12,7 @@ class MenuToggleBase extends React.Component {
12
12
  this.displayName = 'MenuToggleBase';
13
13
  }
14
14
  render() {
15
- const _a = this.props, { children, className, icon, badge, isExpanded, isDisabled, isFullHeight, isFullWidth, variant, innerRef, onClick, 'aria-label': ariaLabel } = _a, otherProps = tslib_1.__rest(_a, ["children", "className", "icon", "badge", "isExpanded", "isDisabled", "isFullHeight", "isFullWidth", "variant", "innerRef", "onClick", 'aria-label']);
15
+ const _a = this.props, { children, className, icon, badge, isExpanded, isDisabled, isFullHeight, isFullWidth, splitButtonOptions, variant, innerRef, onClick, 'aria-label': ariaLabel } = _a, otherProps = tslib_1.__rest(_a, ["children", "className", "icon", "badge", "isExpanded", "isDisabled", "isFullHeight", "isFullWidth", "splitButtonOptions", "variant", "innerRef", "onClick", 'aria-label']);
16
16
  const isPlain = variant === 'plain';
17
17
  const isPlainText = variant === 'plainText';
18
18
  const isTypeahead = variant === 'typeahead';
@@ -21,14 +21,20 @@ class MenuToggleBase extends React.Component {
21
21
  React.createElement(caret_down_icon_1.default, { "aria-hidden": true }))));
22
22
  const content = (React.createElement(React.Fragment, null,
23
23
  icon && React.createElement("span", { className: react_styles_1.css(menu_toggle_1.default.menuToggleIcon) }, icon),
24
- isTypeahead ? children : React.createElement("span", { className: "pf-c-menu-toggle__text" }, children),
24
+ isTypeahead ? children : React.createElement("span", { className: react_styles_1.css(menu_toggle_1.default.menuToggleText) }, children),
25
25
  badge && React.createElement("span", { className: react_styles_1.css(menu_toggle_1.default.menuToggleCount) }, badge),
26
26
  isTypeahead ? (React.createElement("button", { type: "button", className: react_styles_1.css(menu_toggle_1.default.menuToggleButton), "aria-expanded": isExpanded, onClick: onClick, "aria-label": "Menu toggle" }, toggleControls)) : (toggleControls)));
27
- const componentProps = Object.assign(Object.assign({ className: react_styles_1.css(menu_toggle_1.default.menuToggle, isExpanded && menu_toggle_1.default.modifiers.expanded, variant === 'primary' && menu_toggle_1.default.modifiers.primary, (isPlain || isPlainText) && menu_toggle_1.default.modifiers.plain, isPlainText && menu_toggle_1.default.modifiers.text, isFullHeight && menu_toggle_1.default.modifiers.fullHeight, isTypeahead && menu_toggle_1.default.modifiers.typeahead, isFullWidth && menu_toggle_1.default.modifiers.fullWidth, className), children: isPlain ? children : content }, (isDisabled && { disabled: true })), otherProps);
27
+ const commonStyles = react_styles_1.css(menu_toggle_1.default.menuToggle, isExpanded && menu_toggle_1.default.modifiers.expanded, variant === 'primary' && menu_toggle_1.default.modifiers.primary, variant === 'secondary' && menu_toggle_1.default.modifiers.secondary, (isPlain || isPlainText) && menu_toggle_1.default.modifiers.plain, isPlainText && menu_toggle_1.default.modifiers.text, isFullHeight && menu_toggle_1.default.modifiers.fullHeight, isFullWidth && menu_toggle_1.default.modifiers.fullWidth, isDisabled && menu_toggle_1.default.modifiers.disabled, className);
28
+ const componentProps = Object.assign(Object.assign({ children: isPlain ? children : content }, (isDisabled && { disabled: true })), otherProps);
28
29
  if (isTypeahead) {
29
- return React.createElement("div", Object.assign({ ref: innerRef }, componentProps));
30
+ return React.createElement("div", Object.assign({ ref: innerRef, className: react_styles_1.css(commonStyles) }, componentProps));
30
31
  }
31
- return (React.createElement("button", Object.assign({ className: react_styles_1.css(menu_toggle_1.default.menuToggle, isExpanded && menu_toggle_1.default.modifiers.expanded, variant === 'primary' && menu_toggle_1.default.modifiers.primary, variant === 'secondary' && menu_toggle_1.default.modifiers.secondary, (isPlain || isPlainText) && menu_toggle_1.default.modifiers.plain, isPlainText && menu_toggle_1.default.modifiers.text, isFullHeight && menu_toggle_1.default.modifiers.fullHeight, isFullWidth && menu_toggle_1.default.modifiers.fullWidth, className), ref: innerRef, type: "button", "aria-label": ariaLabel, "aria-expanded": isExpanded, onClick: onClick }, componentProps)));
32
+ if (splitButtonOptions) {
33
+ return (React.createElement("div", { className: react_styles_1.css(commonStyles, menu_toggle_1.default.modifiers.splitButton, (splitButtonOptions === null || splitButtonOptions === void 0 ? void 0 : splitButtonOptions.variant) === 'action' && menu_toggle_1.default.modifiers.action) }, splitButtonOptions === null || splitButtonOptions === void 0 ? void 0 :
34
+ splitButtonOptions.items,
35
+ React.createElement("button", Object.assign({ className: react_styles_1.css(menu_toggle_1.default.menuToggleButton), type: "button", "aria-expanded": isExpanded, "aria-label": ariaLabel, disabled: isDisabled }, otherProps), toggleControls)));
36
+ }
37
+ return (React.createElement("button", Object.assign({ className: react_styles_1.css(commonStyles), type: "button", "aria-label": ariaLabel, "aria-expanded": isExpanded, ref: innerRef, disabled: isDisabled, onClick: onClick }, componentProps)));
32
38
  }
33
39
  }
34
40
  exports.MenuToggleBase = MenuToggleBase;
@@ -37,8 +43,7 @@ MenuToggleBase.defaultProps = {
37
43
  isExpanded: false,
38
44
  isDisabled: false,
39
45
  isFullWidth: false,
40
- isFullHeight: false,
41
- variant: 'default'
46
+ isFullHeight: false
42
47
  };
43
48
  exports.MenuToggle = React.forwardRef((props, ref) => (React.createElement(MenuToggleBase, Object.assign({ innerRef: ref }, props))));
44
49
  exports.MenuToggle.displayName = 'MenuToggle';
@@ -1 +1 @@
1
- {"version":3,"file":"MenuToggle.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MenuToggle.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggle.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import * as React from 'react';
2
+ export interface MenuToggleActionProps {
3
+ /** Additional classes added to the MenuToggleAction */
4
+ className?: string;
5
+ /** Flag to show if the action button is disabled */
6
+ isDisabled?: boolean;
7
+ /** A callback for when the action button is clicked */
8
+ onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void;
9
+ /** Element to be rendered inside the <button> */
10
+ children?: React.ReactNode;
11
+ /** Id of the action button */
12
+ id?: string;
13
+ }
14
+ export declare class MenuToggleAction extends React.Component<MenuToggleActionProps> {
15
+ static displayName: string;
16
+ static defaultProps: MenuToggleActionProps;
17
+ render(): JSX.Element;
18
+ }
19
+ //# sourceMappingURL=MenuToggleAction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleAction.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleAction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,qBAAqB;IACpC,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uDAAuD;IACvD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IAC/D,iDAAiD;IACjD,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,8BAA8B;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,SAAS,CAAC,qBAAqB,CAAC;IAC1E,MAAM,CAAC,WAAW,SAAsB;IACxC,MAAM,CAAC,YAAY,EAAE,qBAAqB,CAIxC;IAEF,MAAM;CAgBP"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MenuToggleAction = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const menu_toggle_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/MenuToggle/menu-toggle"));
7
+ const react_styles_1 = require("@patternfly/react-styles");
8
+ class MenuToggleAction extends React.Component {
9
+ render() {
10
+ const _a = this.props, { id, className, onClick, isDisabled, children } = _a, props = tslib_1.__rest(_a, ["id", "className", "onClick", "isDisabled", "children"]);
11
+ return (React.createElement("button", Object.assign({ id: id, className: react_styles_1.css(menu_toggle_1.default.menuToggleButton, className), onClick: onClick, type: "button", disabled: isDisabled }, props), children));
12
+ }
13
+ }
14
+ exports.MenuToggleAction = MenuToggleAction;
15
+ MenuToggleAction.displayName = 'MenuToggleAction';
16
+ MenuToggleAction.defaultProps = {
17
+ className: '',
18
+ isDisabled: false,
19
+ onClick: () => { }
20
+ };
21
+ //# sourceMappingURL=MenuToggleAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleAction.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleAction.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAC/B,yHAAoF;AACpF,2DAA+C;AAe/C,MAAa,gBAAiB,SAAQ,KAAK,CAAC,SAAgC;IAQ1E,MAAM;QACJ,MAAM,KAA6D,IAAI,CAAC,KAAK,EAAvE,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,OAAyB,EAApB,KAAK,sBAAxD,wDAA0D,CAAa,CAAC;QAE9E,OAAO,CACL,8CACE,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,kBAAG,CAAC,qBAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAClD,OAAO,EAAE,OAAO,EAChB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,UAAU,IAChB,KAAK,GAER,QAAQ,CACF,CACV,CAAC;IACJ,CAAC;;AAvBH,4CAwBC;AAvBQ,4BAAW,GAAG,kBAAkB,CAAC;AACjC,6BAAY,GAA0B;IAC3C,SAAS,EAAE,EAAE;IACb,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;CAClB,CAAC"}
@@ -0,0 +1,36 @@
1
+ import * as React from 'react';
2
+ import { PickOptional } from '../../helpers/typeUtils';
3
+ import { OUIAProps } from '../../helpers';
4
+ export interface MenuToggleCheckboxProps extends Omit<React.HTMLProps<HTMLInputElement>, 'type' | 'onChange' | 'disabled' | 'checked'>, OUIAProps {
5
+ /** Additional classes added to the MenuToggleCheckbox */
6
+ className?: string;
7
+ /** Flag to show if the checkbox selection is valid or invalid */
8
+ isValid?: boolean;
9
+ /** Flag to show if the checkbox is disabled */
10
+ isDisabled?: boolean;
11
+ /** Flag to show if the checkbox is checked when it is controlled by React state.
12
+ * To make the checkbox uncontrolled instead use the defaultChecked prop, but do not use both.
13
+ */
14
+ isChecked?: boolean | null;
15
+ /** Flag to set the default checked value of the checkbox when it is uncontrolled by React state.
16
+ * To make the checkbox controlled instead use the isChecked prop, but do not use both.
17
+ */
18
+ defaultChecked?: boolean | null;
19
+ /** A callback for when the checkbox selection changes */
20
+ onChange?: (checked: boolean, event: React.FormEvent<HTMLInputElement>) => void;
21
+ /** Element to be rendered inside the <span> */
22
+ children?: React.ReactNode;
23
+ /** Id of the checkbox */
24
+ id: string;
25
+ }
26
+ export declare class MenuToggleCheckbox extends React.Component<MenuToggleCheckboxProps, {
27
+ ouiaStateId: string;
28
+ }> {
29
+ static displayName: string;
30
+ static defaultProps: PickOptional<MenuToggleCheckboxProps>;
31
+ constructor(props: MenuToggleCheckboxProps);
32
+ handleChange: (event: React.FormEvent<HTMLInputElement>) => void;
33
+ calculateChecked: () => boolean;
34
+ render(): JSX.Element;
35
+ }
36
+ //# sourceMappingURL=MenuToggleCheckbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleCheckbox.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleCheckbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAgB,SAAS,EAAoB,MAAM,eAAe,CAAC;AAE1E,MAAM,WAAW,uBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC,EAC3F,SAAS;IACX,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC3B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,yDAAyD;IACzD,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAChF,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,qBAAa,kBAAmB,SAAQ,KAAK,CAAC,SAAS,CAAC,uBAAuB,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;IACvG,MAAM,CAAC,WAAW,SAAwB;IAC1C,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,uBAAuB,CAAC,CAIxD;gBAEU,KAAK,EAAE,uBAAuB;IAO1C,YAAY,UAAW,MAAM,SAAS,CAAC,gBAAgB,CAAC,UAEtD;IAEF,gBAAgB,gBASd;IAEF,MAAM;CA0CP"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MenuToggleCheckbox = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const check_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/Check/check"));
7
+ const react_styles_1 = require("@patternfly/react-styles");
8
+ const helpers_1 = require("../../helpers");
9
+ class MenuToggleCheckbox extends React.Component {
10
+ constructor(props) {
11
+ super(props);
12
+ this.handleChange = (event) => {
13
+ this.props.onChange(event.target.checked, event);
14
+ };
15
+ this.calculateChecked = () => {
16
+ const { isChecked, defaultChecked } = this.props;
17
+ if (isChecked === null) {
18
+ // return false here and the indeterminate state will be set to true through the ref
19
+ return false;
20
+ }
21
+ else if (isChecked !== undefined) {
22
+ return isChecked;
23
+ }
24
+ return defaultChecked;
25
+ };
26
+ this.state = {
27
+ ouiaStateId: helpers_1.getDefaultOUIAId(MenuToggleCheckbox.displayName)
28
+ };
29
+ }
30
+ render() {
31
+ const _a = this.props, { className, isValid, isDisabled, isChecked, children, ouiaId, ouiaSafe,
32
+ /* eslint-disable @typescript-eslint/no-unused-vars */
33
+ onChange, defaultChecked, id } = _a, props = tslib_1.__rest(_a, ["className", "isValid", "isDisabled", "isChecked", "children", "ouiaId", "ouiaSafe", "onChange", "defaultChecked", "id"]);
34
+ const text = children && (React.createElement("span", { className: react_styles_1.css(check_1.default.checkLabel, className), "aria-hidden": "true", id: id }, children));
35
+ return (React.createElement("label", { className: react_styles_1.css(check_1.default.check, !children && check_1.default.modifiers.standalone, className), htmlFor: id },
36
+ React.createElement("input", Object.assign({ className: react_styles_1.css(check_1.default.checkInput) }, (this.calculateChecked() !== undefined && { onChange: this.handleChange }), { name: id, type: "checkbox", ref: elem => elem && (elem.indeterminate = isChecked === null), "aria-invalid": !isValid, disabled: isDisabled }, (defaultChecked !== undefined ? { defaultChecked } : { checked: isChecked }), helpers_1.getOUIAProps(MenuToggleCheckbox.displayName, ouiaId !== undefined ? ouiaId : this.state.ouiaStateId, ouiaSafe), props)),
37
+ text));
38
+ }
39
+ }
40
+ exports.MenuToggleCheckbox = MenuToggleCheckbox;
41
+ MenuToggleCheckbox.displayName = 'MenuToggleCheckbox';
42
+ MenuToggleCheckbox.defaultProps = {
43
+ isValid: true,
44
+ isDisabled: false,
45
+ onChange: () => undefined
46
+ };
47
+ //# sourceMappingURL=MenuToggleCheckbox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuToggleCheckbox.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/MenuToggleCheckbox.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAC/B,wGAAyE;AACzE,2DAA+C;AAE/C,2CAA0E;AA2B1E,MAAa,kBAAmB,SAAQ,KAAK,CAAC,SAA2D;IAQvG,YAAY,KAA8B;QACxC,KAAK,CAAC,KAAK,CAAC,CAAC;QAMf,iBAAY,GAAG,CAAC,KAAwC,EAAE,EAAE;YAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAE,KAAK,CAAC,MAA2B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC,CAAC;QAEF,qBAAgB,GAAG,GAAG,EAAE;YACtB,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YACjD,IAAI,SAAS,KAAK,IAAI,EAAE;gBACtB,oFAAoF;gBACpF,OAAO,KAAK,CAAC;aACd;iBAAM,IAAI,SAAS,KAAK,SAAS,EAAE;gBAClC,OAAO,SAAS,CAAC;aAClB;YACD,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC;QAlBA,IAAI,CAAC,KAAK,GAAG;YACX,WAAW,EAAE,0BAAgB,CAAC,kBAAkB,CAAC,WAAW,CAAC;SAC9D,CAAC;IACJ,CAAC;IAiBD,MAAM;QACJ,MAAM,KAaF,IAAI,CAAC,KAAK,EAbR,EACJ,SAAS,EACT,OAAO,EACP,UAAU,EACV,SAAS,EACT,QAAQ,EACR,MAAM,EACN,QAAQ;QACR,sDAAsD;QACtD,QAAQ,EACR,cAAc,EACd,EAAE,OAEU,EADT,KAAK,sBAZJ,yHAaL,CAAa,CAAC;QACf,MAAM,IAAI,GAAG,QAAQ,IAAI,CACvB,8BAAM,SAAS,EAAE,kBAAG,CAAC,eAAM,CAAC,UAAU,EAAE,SAAS,CAAC,iBAAc,MAAM,EAAC,EAAE,EAAE,EAAE,IAC1E,QAAQ,CACJ,CACR,CAAC;QACF,OAAO,CACL,+BAAO,SAAS,EAAE,kBAAG,CAAC,eAAM,CAAC,KAAK,EAAE,CAAC,QAAQ,IAAI,eAAM,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE;YACnG,6CACE,SAAS,EAAE,kBAAG,CAAC,eAAM,CAAC,UAAU,CAAC,IAC7B,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,IAC9E,IAAI,EAAE,EAAE,EACR,IAAI,EAAC,UAAU,EACf,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,SAAS,KAAK,IAAI,CAAC,kBAChD,CAAC,OAAO,EACtB,QAAQ,EAAE,UAAU,IAChB,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAC5E,sBAAY,CACd,kBAAkB,CAAC,WAAW,EAC9B,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EACtD,QAAQ,CACT,EACG,KAAK,EACT;YACD,IAAI,CACC,CACT,CAAC;IACJ,CAAC;;AAvEH,gDAwEC;AAvEQ,8BAAW,GAAG,oBAAoB,CAAC;AACnC,+BAAY,GAA0C;IAC3D,OAAO,EAAE,IAAI;IACb,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAgB;CACjC,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export * from './MenuToggle';
2
+ export * from './MenuToggleAction';
3
+ export * from './MenuToggleCheckbox';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC"}
@@ -2,4 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./MenuToggle"), exports);
5
+ tslib_1.__exportStar(require("./MenuToggleAction"), exports);
6
+ tslib_1.__exportStar(require("./MenuToggleCheckbox"), exports);
5
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/MenuToggle/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B;AAC7B,6DAAmC;AACnC,+DAAqC"}