@epignosis_llc/gnosis 6.8.0 → 6.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,7 +6,7 @@
6
6
  * Released under the MIT license.
7
7
  */
8
8
 
9
- var exenv = {exports: {}};
9
+ var simpleSwizzle = {exports: {}};
10
10
 
11
- export { exenv as e };
11
+ export { simpleSwizzle as s };
12
12
  //# sourceMappingURL=index6.js.map
@@ -6,7 +6,7 @@
6
6
  * Released under the MIT license.
7
7
  */
8
8
 
9
- var simpleSwizzle = {exports: {}};
9
+ var exenv = {exports: {}};
10
10
 
11
- export { simpleSwizzle as s };
11
+ export { exenv as e };
12
12
  //# sourceMappingURL=index7.js.map
@@ -9,7 +9,7 @@
9
9
  import { c as colorString } from '../../_virtual/index3.js';
10
10
  import colorName from '../color-name/index.js';
11
11
  import '../simple-swizzle/index.js';
12
- import { s as simpleSwizzle } from '../../_virtual/index7.js';
12
+ import { s as simpleSwizzle } from '../../_virtual/index6.js';
13
13
 
14
14
  /* MIT license */
15
15
 
@@ -6,7 +6,7 @@
6
6
  * Released under the MIT license.
7
7
  */
8
8
 
9
- import { e as exenv } from '../../_virtual/index6.js';
9
+ import { e as exenv } from '../../_virtual/index7.js';
10
10
 
11
11
  /*!
12
12
  Copyright (c) 2015 Jed Watson.
@@ -8,7 +8,7 @@
8
8
 
9
9
  import { __exports as safeHTMLElement } from '../../../../_virtual/safeHTMLElement.js';
10
10
  import '../../../exenv/index.js';
11
- import { e as exenv } from '../../../../_virtual/index6.js';
11
+ import { e as exenv } from '../../../../_virtual/index7.js';
12
12
 
13
13
  Object.defineProperty(safeHTMLElement, "__esModule", {
14
14
  value: true
@@ -6,7 +6,7 @@
6
6
  * Released under the MIT license.
7
7
  */
8
8
 
9
- import { s as simpleSwizzle } from '../../_virtual/index7.js';
9
+ import { s as simpleSwizzle } from '../../_virtual/index6.js';
10
10
  import isArrayish$1 from './node_modules/is-arrayish/index.js';
11
11
 
12
12
  var isArrayish = isArrayish$1;
@@ -20,6 +20,7 @@ import { resolveStyles, selectContainer } from './styles.js';
20
20
  import { MAX_MENU_HEIGHT, PLACEHOLDER, MIN_WIDTH, MAX_WIDTH } from './constants.js';
21
21
  import { containerClassNames, renderSelect } from './helpers.js';
22
22
  import CustomMultiValueLabel from './components/CustomMultiValueLabel.js';
23
+ import CustomMultiValueRemove from './components/CustomMultiValueRemove.js';
23
24
  import CustomSingleValue from './components/CustomSingleValue.js';
24
25
  import CustomOptionComponent from './components/CustomOptionComponent.js';
25
26
  import CustomClearIndicator from './components/CustomClearIndicator.js';
@@ -137,6 +138,7 @@ var Select = function Select(props, forwardedRef) {
137
138
  Option: CustomOptionComponent,
138
139
  SingleValue: CustomSingleValue,
139
140
  MultiValueLabel: CustomMultiValueLabel,
141
+ MultiValueRemove: CustomMultiValueRemove,
140
142
  ClearIndicator: ClearIndicatorWithRef
141
143
  },
142
144
  formatCreateLabel: formatCreateLabel,
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../../../../src/components/FormElements/Select/Select.tsx"],"sourcesContent":["import React, {\n ForwardRefRenderFunction,\n forwardRef,\n isValidElement,\n useCallback,\n useImperativeHandle,\n useRef,\n} from \"react\";\nimport classNames from \"classnames\";\nimport {\n ActionMeta,\n ClearIndicatorProps,\n MultiValue,\n SelectInstance,\n SingleValue,\n} from \"react-select\";\nimport { SerializedStyles } from \"@emotion/react\";\nimport { AddOperatorSVG, InfoCircledSVG } from \"../../../icons\";\nimport Label from \"../Label/Label\";\nimport Tooltip from \"../../Tooltip/Tooltip\";\nimport { resolveStyles, selectContainer } from \"./styles\";\nimport { CustomOption, CustomSelectProps } from \"./types\";\nimport { MAX_MENU_HEIGHT, MIN_WIDTH, MAX_WIDTH, PLACEHOLDER } from \"./constants\";\nimport { containerClassNames, renderSelect } from \"./helpers\";\nimport CustomMultiValueLabel from \"./components/CustomMultiValueLabel\";\nimport CustomSingleValue from \"./components/CustomSingleValue\";\nimport CustomOptionComponent from \"./components/CustomOptionComponent\";\nimport CustomClearIndicator from \"./components/CustomClearIndicator\";\n\nconst Select: ForwardRefRenderFunction<\n SelectInstance<CustomOption>,\n CustomSelectProps<CustomOption, boolean>\n> = (props, forwardedRef) => {\n const {\n id = \"\",\n type = \"select\",\n required = false,\n label = \"\",\n options = [],\n size = \"md\",\n inline = false,\n status = \"valid\",\n isInlineFlex = false,\n isMulti = false,\n creatableTooltip = \"Create\",\n maxMenuHeight = MAX_MENU_HEIGHT,\n minWidth = MIN_WIDTH,\n maxWidth = MAX_WIDTH,\n placeholder = PLACEHOLDER,\n tooltipContent = \"\",\n minNumberOfOptionsToEnableSearch = 10,\n isValidNewOption,\n menuMinWidth,\n loadOptions,\n isSearchable,\n allowTextWrap,\n onChange,\n ...rest\n } = props;\n\n const hasLabel = Boolean(label);\n const containerRef = useRef<HTMLInputElement>(null);\n const selectRef = useRef<SelectInstance<CustomOption> | null>(null);\n const labelClassname = classNames({\n required,\n });\n\n useImperativeHandle<SelectInstance<CustomOption> | null, SelectInstance<CustomOption> | null>(\n forwardedRef,\n () => selectRef.current,\n [],\n );\n\n const ClearIndicatorWithRef = useCallback(\n (indicatorProps: ClearIndicatorProps<CustomOption>) => (\n <CustomClearIndicator {...indicatorProps} selectRef={selectRef} />\n ),\n [],\n );\n\n const countOptions = () => {\n // Count the number of options, including nested options if exists\n return options.reduce((count, option) => {\n return count + (\"options\" in option ? option.options.length : 1);\n }, 0);\n };\n\n const isSelectSearchable = () => {\n if (isSearchable !== undefined) {\n return isSearchable;\n }\n\n const isAsyncType = type === \"async\";\n const hasManyOptions = countOptions() > minNumberOfOptionsToEnableSearch;\n return isAsyncType || hasManyOptions;\n };\n\n const shouldRenderTooltip =\n (tooltipContent && typeof tooltipContent === \"string\" && tooltipContent !== \"\") ||\n isValidElement(tooltipContent);\n\n const styles = resolveStyles({ size, menuMinWidth, allowTextWrap });\n\n const formatCreateLabel = (inputValue: string) => (\n <Tooltip content={creatableTooltip} parentProps={{ \"aria-label\": inputValue }}>\n <div className=\"select-create-label\">\n <span>{inputValue} </span>\n <span>\n <AddOperatorSVG color=\"black\" height={12} />\n </span>\n </div>\n </Tooltip>\n );\n\n const customSelectProps = {\n ...rest,\n id: id,\n \"aria-label\": rest[\"aria-label\"],\n ref: selectRef,\n styles,\n isMulti,\n classNames: {\n control: () => containerClassNames(status, size),\n option: ({ isSelected }: { isSelected: boolean }) =>\n `${isSelected ? \"selected\" : \"\"} option-${size}`,\n },\n components: {\n IndicatorSeparator: () => null,\n Option: CustomOptionComponent,\n SingleValue: CustomSingleValue,\n MultiValueLabel: CustomMultiValueLabel,\n ClearIndicator: ClearIndicatorWithRef,\n },\n formatCreateLabel,\n isSearchable: isSelectSearchable(),\n maxMenuHeight,\n options,\n placeholder,\n type,\n isValidNewOption,\n loadOptions,\n onMouseDown: (e: MouseEvent) => e.stopPropagation(),\n onChange: (\n option: MultiValue<CustomOption> | SingleValue<CustomOption>,\n action: ActionMeta<CustomOption>,\n ) => {\n onChange?.(option, action);\n },\n isOptionDisabled: (option: CustomOption): boolean => Boolean(option.disabled),\n };\n\n return (\n <div\n css={(theme): SerializedStyles =>\n selectContainer(theme, {\n size,\n inline,\n isInlineFlex,\n minWidth,\n maxWidth,\n })\n }\n >\n {hasLabel && (\n <div className=\"label-container\">\n <Label\n htmlFor={id}\n aria-labelledby={id}\n data-testid={`${id}-label`}\n className={labelClassname}\n >\n {label}\n </Label>\n {shouldRenderTooltip && (\n <div data-testid={`${id}-tooltip`}>\n <Tooltip content={tooltipContent} parentProps={{ \"aria-label\": label }}>\n <InfoCircledSVG height={20} />\n </Tooltip>\n </div>\n )}\n </div>\n )}\n <div className=\"select-input-wrapper\" data-testid={`${id}-select`} ref={containerRef}>\n {renderSelect(type, customSelectProps)}\n </div>\n </div>\n );\n};\n\nexport default forwardRef(Select);\n"],"names":["Select","props","forwardedRef","_props$id","id","_props$type","type","_props$required","required","_props$label","label","_props$options","options","_props$size","size","_props$inline","inline","_props$status","status","_props$isInlineFlex","isInlineFlex","_props$isMulti","isMulti","_props$creatableToolt","creatableTooltip","_props$maxMenuHeight","maxMenuHeight","MAX_MENU_HEIGHT","_props$minWidth","minWidth","MIN_WIDTH","_props$maxWidth","maxWidth","MAX_WIDTH","_props$placeholder","placeholder","PLACEHOLDER","_props$tooltipContent","tooltipContent","_props$minNumberOfOpt","minNumberOfOptionsToEnableSearch","isValidNewOption","menuMinWidth","loadOptions","isSearchable","allowTextWrap","onChange","rest","_objectWithoutProperties","_excluded","hasLabel","Boolean","containerRef","useRef","selectRef","labelClassname","classNames","useImperativeHandle","current","ClearIndicatorWithRef","useCallback","indicatorProps","___EmotionJSX","CustomClearIndicator","_extends","countOptions","reduce","count","option","length","isSelectSearchable","undefined","isAsyncType","hasManyOptions","shouldRenderTooltip","isValidElement","styles","resolveStyles","formatCreateLabel","inputValue","Tooltip","content","parentProps","className","AddOperatorSVG","color","height","customSelectProps","_objectSpread","ref","control","containerClassNames","_ref","isSelected","concat","components","IndicatorSeparator","Option","CustomOptionComponent","SingleValue","CustomSingleValue","MultiValueLabel","CustomMultiValueLabel","ClearIndicator","onMouseDown","e","stopPropagation","action","isOptionDisabled","disabled","css","theme","selectContainer","Label","htmlFor","InfoCircledSVG","renderSelect","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../../../../src/components/FormElements/Select/Select.tsx"],"sourcesContent":["import React, {\n ForwardRefRenderFunction,\n forwardRef,\n isValidElement,\n useCallback,\n useImperativeHandle,\n useRef,\n} from \"react\";\nimport classNames from \"classnames\";\nimport {\n ActionMeta,\n ClearIndicatorProps,\n MultiValue,\n SelectInstance,\n SingleValue,\n} from \"react-select\";\nimport { SerializedStyles } from \"@emotion/react\";\nimport { AddOperatorSVG, InfoCircledSVG } from \"../../../icons\";\nimport Label from \"../Label/Label\";\nimport Tooltip from \"../../Tooltip/Tooltip\";\nimport { resolveStyles, selectContainer } from \"./styles\";\nimport { CustomOption, CustomSelectProps } from \"./types\";\nimport { MAX_MENU_HEIGHT, MIN_WIDTH, MAX_WIDTH, PLACEHOLDER } from \"./constants\";\nimport { containerClassNames, renderSelect } from \"./helpers\";\nimport CustomMultiValueLabel from \"./components/CustomMultiValueLabel\";\nimport CustomMultiValueRemove from \"./components/CustomMultiValueRemove\";\nimport CustomSingleValue from \"./components/CustomSingleValue\";\nimport CustomOptionComponent from \"./components/CustomOptionComponent\";\nimport CustomClearIndicator from \"./components/CustomClearIndicator\";\n\nconst Select: ForwardRefRenderFunction<\n SelectInstance<CustomOption>,\n CustomSelectProps<CustomOption, boolean>\n> = (props, forwardedRef) => {\n const {\n id = \"\",\n type = \"select\",\n required = false,\n label = \"\",\n options = [],\n size = \"md\",\n inline = false,\n status = \"valid\",\n isInlineFlex = false,\n isMulti = false,\n creatableTooltip = \"Create\",\n maxMenuHeight = MAX_MENU_HEIGHT,\n minWidth = MIN_WIDTH,\n maxWidth = MAX_WIDTH,\n placeholder = PLACEHOLDER,\n tooltipContent = \"\",\n minNumberOfOptionsToEnableSearch = 10,\n isValidNewOption,\n menuMinWidth,\n loadOptions,\n isSearchable,\n allowTextWrap,\n onChange,\n ...rest\n } = props;\n\n const hasLabel = Boolean(label);\n const containerRef = useRef<HTMLInputElement>(null);\n const selectRef = useRef<SelectInstance<CustomOption> | null>(null);\n const labelClassname = classNames({\n required,\n });\n\n useImperativeHandle<SelectInstance<CustomOption> | null, SelectInstance<CustomOption> | null>(\n forwardedRef,\n () => selectRef.current,\n [],\n );\n\n const ClearIndicatorWithRef = useCallback(\n (indicatorProps: ClearIndicatorProps<CustomOption>) => (\n <CustomClearIndicator {...indicatorProps} selectRef={selectRef} />\n ),\n [],\n );\n\n const countOptions = () => {\n // Count the number of options, including nested options if exists\n return options.reduce((count, option) => {\n return count + (\"options\" in option ? option.options.length : 1);\n }, 0);\n };\n\n const isSelectSearchable = () => {\n if (isSearchable !== undefined) {\n return isSearchable;\n }\n\n const isAsyncType = type === \"async\";\n const hasManyOptions = countOptions() > minNumberOfOptionsToEnableSearch;\n return isAsyncType || hasManyOptions;\n };\n\n const shouldRenderTooltip =\n (tooltipContent && typeof tooltipContent === \"string\" && tooltipContent !== \"\") ||\n isValidElement(tooltipContent);\n\n const styles = resolveStyles({ size, menuMinWidth, allowTextWrap });\n\n const formatCreateLabel = (inputValue: string) => (\n <Tooltip content={creatableTooltip} parentProps={{ \"aria-label\": inputValue }}>\n <div className=\"select-create-label\">\n <span>{inputValue} </span>\n <span>\n <AddOperatorSVG color=\"black\" height={12} />\n </span>\n </div>\n </Tooltip>\n );\n\n const customSelectProps = {\n ...rest,\n id: id,\n \"aria-label\": rest[\"aria-label\"],\n ref: selectRef,\n styles,\n isMulti,\n classNames: {\n control: () => containerClassNames(status, size),\n option: ({ isSelected }: { isSelected: boolean }) =>\n `${isSelected ? \"selected\" : \"\"} option-${size}`,\n },\n components: {\n IndicatorSeparator: () => null,\n Option: CustomOptionComponent,\n SingleValue: CustomSingleValue,\n MultiValueLabel: CustomMultiValueLabel,\n MultiValueRemove: CustomMultiValueRemove,\n ClearIndicator: ClearIndicatorWithRef,\n },\n formatCreateLabel,\n isSearchable: isSelectSearchable(),\n maxMenuHeight,\n options,\n placeholder,\n type,\n isValidNewOption,\n loadOptions,\n onMouseDown: (e: MouseEvent) => e.stopPropagation(),\n onChange: (\n option: MultiValue<CustomOption> | SingleValue<CustomOption>,\n action: ActionMeta<CustomOption>,\n ) => {\n onChange?.(option, action);\n },\n isOptionDisabled: (option: CustomOption): boolean => Boolean(option.disabled),\n };\n\n return (\n <div\n css={(theme): SerializedStyles =>\n selectContainer(theme, {\n size,\n inline,\n isInlineFlex,\n minWidth,\n maxWidth,\n })\n }\n >\n {hasLabel && (\n <div className=\"label-container\">\n <Label\n htmlFor={id}\n aria-labelledby={id}\n data-testid={`${id}-label`}\n className={labelClassname}\n >\n {label}\n </Label>\n {shouldRenderTooltip && (\n <div data-testid={`${id}-tooltip`}>\n <Tooltip content={tooltipContent} parentProps={{ \"aria-label\": label }}>\n <InfoCircledSVG height={20} />\n </Tooltip>\n </div>\n )}\n </div>\n )}\n <div className=\"select-input-wrapper\" data-testid={`${id}-select`} ref={containerRef}>\n {renderSelect(type, customSelectProps)}\n </div>\n </div>\n );\n};\n\nexport default forwardRef(Select);\n"],"names":["Select","props","forwardedRef","_props$id","id","_props$type","type","_props$required","required","_props$label","label","_props$options","options","_props$size","size","_props$inline","inline","_props$status","status","_props$isInlineFlex","isInlineFlex","_props$isMulti","isMulti","_props$creatableToolt","creatableTooltip","_props$maxMenuHeight","maxMenuHeight","MAX_MENU_HEIGHT","_props$minWidth","minWidth","MIN_WIDTH","_props$maxWidth","maxWidth","MAX_WIDTH","_props$placeholder","placeholder","PLACEHOLDER","_props$tooltipContent","tooltipContent","_props$minNumberOfOpt","minNumberOfOptionsToEnableSearch","isValidNewOption","menuMinWidth","loadOptions","isSearchable","allowTextWrap","onChange","rest","_objectWithoutProperties","_excluded","hasLabel","Boolean","containerRef","useRef","selectRef","labelClassname","classNames","useImperativeHandle","current","ClearIndicatorWithRef","useCallback","indicatorProps","___EmotionJSX","CustomClearIndicator","_extends","countOptions","reduce","count","option","length","isSelectSearchable","undefined","isAsyncType","hasManyOptions","shouldRenderTooltip","isValidElement","styles","resolveStyles","formatCreateLabel","inputValue","Tooltip","content","parentProps","className","AddOperatorSVG","color","height","customSelectProps","_objectSpread","ref","control","containerClassNames","_ref","isSelected","concat","components","IndicatorSeparator","Option","CustomOptionComponent","SingleValue","CustomSingleValue","MultiValueLabel","CustomMultiValueLabel","MultiValueRemove","CustomMultiValueRemove","ClearIndicator","onMouseDown","e","stopPropagation","action","isOptionDisabled","disabled","css","theme","selectContainer","Label","htmlFor","InfoCircledSVG","renderSelect","forwardRef"],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+
2
+ /**
3
+ * @license
4
+ * author: epignosis front-end team
5
+ * @epignosis_llc/gnosis.js v6.6.16
6
+ * Released under the MIT license.
7
+ */
8
+
9
+ import { extends as _extends, objectSpread2 as _objectSpread2 } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
10
+ import { memo } from 'react';
11
+ import { createElement as jsx } from '../../../../../node_modules/@emotion/react/dist/emotion-react.browser.esm.js';
12
+ import { c as components } from '../../../../../node_modules/react-select/dist/index-a301f526.esm.js';
13
+
14
+ var CustomMultiValueRemove = function CustomMultiValueRemove(props) {
15
+ var data = props.data,
16
+ innerProps = props.innerProps,
17
+ selectProps = props.selectProps;
18
+ var ariaLabel = "Remove ".concat(selectProps.getOptionLabel(data));
19
+ return jsx(components.MultiValueRemove, _extends({}, props, {
20
+ innerProps: _objectSpread2(_objectSpread2({}, innerProps), {}, {
21
+ "aria-label": ariaLabel
22
+ })
23
+ }));
24
+ };
25
+ var CustomMultiValueRemove$1 = /*#__PURE__*/memo(CustomMultiValueRemove);
26
+
27
+ export { CustomMultiValueRemove$1 as default };
28
+ //# sourceMappingURL=CustomMultiValueRemove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomMultiValueRemove.js","sources":["../../../../../../../src/components/FormElements/Select/components/CustomMultiValueRemove.tsx"],"sourcesContent":["import React, { FC, memo } from \"react\";\nimport { components, MultiValueRemoveProps } from \"react-select\";\nimport { CustomOption } from \"../types\";\n\nconst CustomMultiValueRemove: FC<MultiValueRemoveProps<CustomOption>> = (props) => {\n const { data, innerProps, selectProps } = props;\n const ariaLabel = `Remove ${selectProps.getOptionLabel(data)}`;\n\n return (\n <components.MultiValueRemove\n {...props}\n innerProps={{ ...innerProps, \"aria-label\": ariaLabel }}\n />\n );\n};\n\nexport default memo(CustomMultiValueRemove);\n"],"names":["CustomMultiValueRemove","props","data","innerProps","selectProps","ariaLabel","concat","getOptionLabel","___EmotionJSX","components","MultiValueRemove","_extends","_objectSpread","memo"],"mappings":";;;;;;;;;;;;;AAIA,IAAMA,sBAA+D,GAAG,SAAlEA,sBAA+DA,CAAIC,KAAK,EAAK;AACjF,EAAA,IAAQC,IAAI,GAA8BD,KAAK,CAAvCC,IAAI;IAAEC,UAAU,GAAkBF,KAAK,CAAjCE,UAAU;IAAEC,WAAW,GAAKH,KAAK,CAArBG,WAAW,CAAA;EACrC,IAAMC,SAAS,GAAAC,SAAAA,CAAAA,MAAA,CAAaF,WAAW,CAACG,cAAc,CAACL,IAAI,CAAC,CAAE,CAAA;EAE9D,OACEM,GAAA,CAACC,UAAU,CAACC,gBAAgB,EAAAC,QAAA,KACtBV,KAAK,EAAA;AACTE,IAAAA,UAAU,EAAAS,cAAA,CAAAA,cAAA,KAAOT,UAAU,CAAA,EAAA,EAAA,EAAA;AAAE,MAAA,YAAY,EAAEE,SAAAA;AAAS,KAAA,CAAA;AAAG,GAAA,CACxD,CAAC,CAAA;AAEN,CAAC,CAAA;AAED,+BAAeQ,aAAAA,IAAI,CAACb,sBAAsB,CAAC;;;;"}
@@ -19,7 +19,7 @@ import TabsContent from './TabsContent.js';
19
19
  import { tabsHeader, container } from './styles.js';
20
20
  import { createElement as jsx } from '../../../node_modules/@emotion/react/dist/emotion-react.browser.esm.js';
21
21
 
22
- var _excluded = ["tabs", "stickyHeader", "selectedTab", "onChangeTab", "inlineEndComponent", "testIds"];
22
+ var _excluded = ["tabs", "stickyHeader", "selectedTab", "controlled", "onChangeTab", "inlineEndComponent", "testIds"];
23
23
  var Tabs = function Tabs(_ref) {
24
24
  var _ref$tabs = _ref.tabs,
25
25
  tabs = _ref$tabs === void 0 ? [] : _ref$tabs,
@@ -27,24 +27,39 @@ var Tabs = function Tabs(_ref) {
27
27
  stickyHeader = _ref$stickyHeader === void 0 ? false : _ref$stickyHeader,
28
28
  _ref$selectedTab = _ref.selectedTab,
29
29
  selectedTab = _ref$selectedTab === void 0 ? 0 : _ref$selectedTab,
30
+ _ref$controlled = _ref.controlled,
31
+ controlled = _ref$controlled === void 0 ? false : _ref$controlled,
30
32
  onChangeTab = _ref.onChangeTab,
31
33
  inlineEndComponent = _ref.inlineEndComponent,
32
34
  testIds = _ref.testIds,
33
35
  rest = _objectWithoutProperties(_ref, _excluded);
34
36
  var _useState = useState(selectedTab),
35
37
  _useState2 = _slicedToArray(_useState, 2),
36
- activeTab = _useState2[0],
37
- setActiveTab = _useState2[1];
38
- var tabsLength = tabs.length - 1;
38
+ internalActiveTab = _useState2[0],
39
+ setInternalActiveTab = _useState2[1];
40
+ // Tabs without content are not rendered, so every index (selection, bounds, keyboard,
41
+ // arrows) refers to this filtered collection — matching what onChangeTab emits.
42
+ var tabsWithContent = tabs.filter(function (tab) {
43
+ return tab.content;
44
+ });
45
+ var tabsLength = tabsWithContent.length - 1;
39
46
  var tabsNavEl = useRef(null);
40
47
  var _useState3 = useState(false),
41
48
  _useState4 = _slicedToArray(_useState3, 2),
42
49
  isOverflowActive = _useState4[0],
43
50
  setIsOverflowActive = _useState4[1];
44
51
  var dir = document.dir;
52
+ var clampTabIndex = function clampTabIndex(index) {
53
+ if (index < 0) return 0;
54
+ if (index > tabsLength) return tabsLength;
55
+ return index;
56
+ };
57
+ var activeTab = controlled ? clampTabIndex(selectedTab) : internalActiveTab;
45
58
  var onSelectTab = function onSelectTab(index) {
46
59
  scrollToTab(index);
47
- setActiveTab(index);
60
+ if (!controlled) {
61
+ setInternalActiveTab(index);
62
+ }
48
63
  onChangeTab && onChangeTab(index);
49
64
  };
50
65
  var showLeftArrow = function showLeftArrow() {
@@ -53,33 +68,21 @@ var Tabs = function Tabs(_ref) {
53
68
  };
54
69
  var handLeftArrowClick = function handLeftArrowClick() {
55
70
  if (activeTab > 0) {
56
- scrollToTab(activeTab - 1);
57
- setActiveTab(function (currentTab) {
58
- return currentTab - 1;
59
- });
71
+ // Route through onSelectTab so controlled parents are notified of the new selection.
72
+ onSelectTab(activeTab - 1);
60
73
  }
61
74
  };
62
75
  var showRightArrow = function showRightArrow() {
63
- if (!isOverflowActive || !tabs.length) return false;
76
+ if (!isOverflowActive || !tabsWithContent.length) return false;
64
77
  return activeTab < tabsLength;
65
78
  };
66
79
  var handRightArrowClick = function handRightArrowClick() {
67
- if (tabs.length && activeTab < tabsLength) {
68
- scrollToTab(activeTab + 1);
69
- setActiveTab(function (currentTab) {
70
- return currentTab + 1;
71
- });
80
+ if (tabsWithContent.length && activeTab < tabsLength) {
81
+ onSelectTab(activeTab + 1);
72
82
  }
73
83
  };
74
84
  useEffect(function () {
75
- var newSelectedTab = selectedTab;
76
- if (selectedTab < 0) {
77
- newSelectedTab = 0;
78
- }
79
- if (selectedTab > tabsLength) {
80
- newSelectedTab = tabsLength;
81
- }
82
- setActiveTab(newSelectedTab);
85
+ setInternalActiveTab(clampTabIndex(selectedTab));
83
86
  }, [selectedTab]);
84
87
  useEffect(function () {
85
88
  toggleTabsArrow();
@@ -108,15 +111,9 @@ var Tabs = function Tabs(_ref) {
108
111
  };
109
112
  var handleKeyDown = function handleKeyDown(e, index) {
110
113
  if (e.key === "ArrowRight" && index < tabsLength) {
111
- // If next tab is undefined, do nothing
112
- if (tabs[index + 1].content) {
113
- onSelectTab(index + 1);
114
- }
114
+ onSelectTab(index + 1);
115
115
  } else if (e.key === "ArrowLeft" && index > 0) {
116
- // If prev tab is undefined, do nothing
117
- if (tabs[index - 1].content) {
118
- onSelectTab(index - 1);
119
- }
116
+ onSelectTab(index - 1);
120
117
  }
121
118
  };
122
119
  return jsx("section", _extends({
@@ -145,9 +142,7 @@ var Tabs = function Tabs(_ref) {
145
142
  ref: tabsNavEl
146
143
  }, (testIds === null || testIds === void 0 ? void 0 : testIds.nav) && {
147
144
  "data-testid": testIds.nav
148
- }), tabs.filter(function (tab) {
149
- return tab.content;
150
- }).map(function (_ref2, index) {
145
+ }), tabsWithContent.map(function (_ref2, index) {
151
146
  var title = _ref2.title,
152
147
  id = _ref2.id;
153
148
  return jsx(TabsNavItem, {
@@ -179,9 +174,7 @@ var Tabs = function Tabs(_ref) {
179
174
  role: "region"
180
175
  }, (testIds === null || testIds === void 0 ? void 0 : testIds.content) && {
181
176
  "data-testid": testIds.content
182
- }), tabs.filter(function (tab) {
183
- return tab.content;
184
- }).map(function (_ref3, index) {
177
+ }), tabsWithContent.map(function (_ref3, index) {
185
178
  var content = _ref3.content;
186
179
  return jsx(TabsContent, {
187
180
  key: index,
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","sources":["../../../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import React, { FC, useState, useEffect, useRef } from \"react\";\nimport { SerializedStyles } from \"@emotion/react\";\nimport { ArrowLeftSVG, ArrowRightSVG } from \"../../icons/\";\nimport Button from \"../Button/Button\";\nimport TabsNavItem from \"./TabsNavItem\";\nimport TabsContent from \"./TabsContent\";\nimport { container, tabsHeader } from \"./styles\";\n\nexport type TabObject = {\n title: JSX.Element | string;\n id?: string;\n content?: JSX.Element | string;\n};\n\ntype TabsProps = React.HTMLAttributes<HTMLElement> & {\n stickyHeader?: boolean;\n selectedTab?: number;\n onChangeTab?: (index: number) => void;\n tabs: TabObject[];\n inlineEndComponent?: JSX.Element;\n testIds?: {\n nav?: string;\n content?: string;\n };\n};\n\nconst Tabs: FC<TabsProps> = ({\n tabs = [],\n stickyHeader = false,\n selectedTab = 0,\n onChangeTab,\n inlineEndComponent,\n testIds,\n ...rest\n}) => {\n const [activeTab, setActiveTab] = useState(selectedTab);\n const tabsLength = tabs.length - 1;\n const tabsNavEl = useRef<HTMLDivElement>(null);\n const [isOverflowActive, setIsOverflowActive] = useState(false);\n const dir = document.dir;\n\n const onSelectTab = (index: number): void => {\n scrollToTab(index);\n setActiveTab(index);\n onChangeTab && onChangeTab(index);\n };\n\n const showLeftArrow = () => {\n if (!isOverflowActive) return false;\n return activeTab > 0;\n };\n\n const handLeftArrowClick = () => {\n if (activeTab > 0) {\n scrollToTab(activeTab - 1);\n setActiveTab((currentTab) => currentTab - 1);\n }\n };\n\n const showRightArrow = () => {\n if (!isOverflowActive || !tabs.length) return false;\n return activeTab < tabsLength;\n };\n\n const handRightArrowClick = () => {\n if (tabs.length && activeTab < tabsLength) {\n scrollToTab(activeTab + 1);\n setActiveTab((currentTab) => currentTab + 1);\n }\n };\n\n useEffect(() => {\n let newSelectedTab = selectedTab;\n\n if (selectedTab < 0) {\n newSelectedTab = 0;\n }\n\n if (selectedTab > tabsLength) {\n newSelectedTab = tabsLength;\n }\n\n setActiveTab(newSelectedTab);\n }, [selectedTab]);\n\n useEffect(() => {\n toggleTabsArrow();\n }, [tabsNavEl]);\n\n const toggleTabsArrow = () => {\n const el = tabsNavEl.current;\n if (el) {\n setIsOverflowActive(el.offsetWidth < el.scrollWidth);\n }\n };\n\n // add listener on window resize to toggle tabs arrow visibility\n useEffect(() => {\n window.addEventListener(\"resize\", toggleTabsArrow);\n\n return () => {\n window.removeEventListener(\"resize\", toggleTabsArrow);\n };\n }, []);\n\n //TODO: find a way to perform scrolling to tab\n const scrollToTab = (tabIndex: number) => {\n const tabOffset = document.querySelector(`#tab-${tabIndex}`)?.getBoundingClientRect().x;\n\n const tablist = document.getElementsByTagName(\"nav\")[0];\n tabOffset && tablist.scrollTo(tabOffset > 0 ? tabOffset - 16 : 0, 0);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>, index: number) => {\n if (e.key === \"ArrowRight\" && index < tabsLength) {\n // If next tab is undefined, do nothing\n if (tabs[index + 1].content) {\n onSelectTab(index + 1);\n }\n } else if (e.key === \"ArrowLeft\" && index > 0) {\n // If prev tab is undefined, do nothing\n if (tabs[index - 1].content) {\n onSelectTab(index - 1);\n }\n }\n };\n\n return (\n <section css={container} {...rest}>\n <div className=\"nav-wrapper\" role=\"navigation\" tabIndex={0}>\n {showLeftArrow() && (\n <Button\n data-testid=\"left-arrow\"\n variant=\"link\"\n color=\"secondary\"\n noGutters\n onClick={handLeftArrowClick}\n >\n {dir === \"rtl\" ? <ArrowRightSVG height={22} /> : <ArrowLeftSVG height={22} />}\n </Button>\n )}\n\n <nav\n css={(theme): SerializedStyles => tabsHeader(theme, { stickyHeader })}\n role=\"tablist\"\n ref={tabsNavEl}\n {...(testIds?.nav && { \"data-testid\": testIds.nav })}\n >\n {tabs\n .filter((tab) => tab.content)\n .map(({ title, id }, index) => (\n <TabsNavItem\n id={id}\n key={index}\n index={index}\n title={title}\n isActive={activeTab === index}\n onSelectTab={onSelectTab}\n onKeyDown={(e) => handleKeyDown(e, index)}\n />\n ))}\n {inlineEndComponent && <div className=\"inline-end-component\">{inlineEndComponent}</div>}\n </nav>\n\n {showRightArrow() && (\n <Button\n data-testid=\"right-arrow\"\n variant=\"link\"\n color=\"secondary\"\n noGutters\n onClick={handRightArrowClick}\n >\n {dir === \"rtl\" ? <ArrowLeftSVG height={22} /> : <ArrowRightSVG height={22} />}\n </Button>\n )}\n </div>\n\n <div\n id=\"content\"\n aria-live=\"polite\"\n role=\"region\"\n {...(testIds?.content && { \"data-testid\": testIds.content })}\n >\n {tabs\n .filter((tab) => tab.content)\n .map(({ content }, index) => (\n <TabsContent\n key={index}\n index={index}\n content={content}\n isVisible={activeTab === index}\n />\n ))}\n </div>\n </section>\n );\n};\n\nexport default Tabs;\n"],"names":["Tabs","_ref","_ref$tabs","tabs","_ref$stickyHeader","stickyHeader","_ref$selectedTab","selectedTab","onChangeTab","inlineEndComponent","testIds","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","activeTab","setActiveTab","tabsLength","length","tabsNavEl","useRef","_useState3","_useState4","isOverflowActive","setIsOverflowActive","dir","document","onSelectTab","index","scrollToTab","showLeftArrow","handLeftArrowClick","currentTab","showRightArrow","handRightArrowClick","useEffect","newSelectedTab","toggleTabsArrow","el","current","offsetWidth","scrollWidth","window","addEventListener","removeEventListener","tabIndex","_document$querySelect","tabOffset","querySelector","concat","getBoundingClientRect","x","tablist","getElementsByTagName","scrollTo","handleKeyDown","e","key","content","___EmotionJSX","_extends","css","container","className","role","Button","variant","color","noGutters","onClick","ArrowRightSVG","height","ArrowLeftSVG","theme","tabsHeader","ref","nav","filter","tab","map","_ref2","title","id","TabsNavItem","isActive","onKeyDown","_ref3","TabsContent","isVisible"],"mappings":"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"}
1
+ {"version":3,"file":"Tabs.js","sources":["../../../../../src/components/Tabs/Tabs.tsx"],"sourcesContent":["import React, { FC, useState, useEffect, useRef } from \"react\";\nimport { SerializedStyles } from \"@emotion/react\";\nimport { ArrowLeftSVG, ArrowRightSVG } from \"../../icons/\";\nimport Button from \"../Button/Button\";\nimport TabsNavItem from \"./TabsNavItem\";\nimport TabsContent from \"./TabsContent\";\nimport { container, tabsHeader } from \"./styles\";\n\nexport type TabObject = {\n title: JSX.Element | string;\n id?: string;\n content?: JSX.Element | string;\n};\n\ntype TabsProps = React.HTMLAttributes<HTMLElement> & {\n stickyHeader?: boolean;\n selectedTab?: number;\n /**\n * When true, the parent owns the active tab: selecting a tab only calls onChangeTab and the\n * component follows selectedTab. Keeps the selection from running ahead of parent state that\n * updates asynchronously (e.g. a URL transition).\n */\n controlled?: boolean;\n onChangeTab?: (index: number) => void;\n tabs: TabObject[];\n inlineEndComponent?: JSX.Element;\n testIds?: {\n nav?: string;\n content?: string;\n };\n};\n\nconst Tabs: FC<TabsProps> = ({\n tabs = [],\n stickyHeader = false,\n selectedTab = 0,\n controlled = false,\n onChangeTab,\n inlineEndComponent,\n testIds,\n ...rest\n}) => {\n const [internalActiveTab, setInternalActiveTab] = useState(selectedTab);\n // Tabs without content are not rendered, so every index (selection, bounds, keyboard,\n // arrows) refers to this filtered collection — matching what onChangeTab emits.\n const tabsWithContent = tabs.filter((tab) => tab.content);\n const tabsLength = tabsWithContent.length - 1;\n const tabsNavEl = useRef<HTMLDivElement>(null);\n const [isOverflowActive, setIsOverflowActive] = useState(false);\n const dir = document.dir;\n\n const clampTabIndex = (index: number): number => {\n if (index < 0) return 0;\n if (index > tabsLength) return tabsLength;\n return index;\n };\n\n const activeTab = controlled ? clampTabIndex(selectedTab) : internalActiveTab;\n\n const onSelectTab = (index: number): void => {\n scrollToTab(index);\n if (!controlled) {\n setInternalActiveTab(index);\n }\n onChangeTab && onChangeTab(index);\n };\n\n const showLeftArrow = () => {\n if (!isOverflowActive) return false;\n return activeTab > 0;\n };\n\n const handLeftArrowClick = () => {\n if (activeTab > 0) {\n // Route through onSelectTab so controlled parents are notified of the new selection.\n onSelectTab(activeTab - 1);\n }\n };\n\n const showRightArrow = () => {\n if (!isOverflowActive || !tabsWithContent.length) return false;\n return activeTab < tabsLength;\n };\n\n const handRightArrowClick = () => {\n if (tabsWithContent.length && activeTab < tabsLength) {\n onSelectTab(activeTab + 1);\n }\n };\n\n useEffect(() => {\n setInternalActiveTab(clampTabIndex(selectedTab));\n }, [selectedTab]);\n\n useEffect(() => {\n toggleTabsArrow();\n }, [tabsNavEl]);\n\n const toggleTabsArrow = () => {\n const el = tabsNavEl.current;\n if (el) {\n setIsOverflowActive(el.offsetWidth < el.scrollWidth);\n }\n };\n\n // add listener on window resize to toggle tabs arrow visibility\n useEffect(() => {\n window.addEventListener(\"resize\", toggleTabsArrow);\n\n return () => {\n window.removeEventListener(\"resize\", toggleTabsArrow);\n };\n }, []);\n\n //TODO: find a way to perform scrolling to tab\n const scrollToTab = (tabIndex: number) => {\n const tabOffset = document.querySelector(`#tab-${tabIndex}`)?.getBoundingClientRect().x;\n\n const tablist = document.getElementsByTagName(\"nav\")[0];\n tabOffset && tablist.scrollTo(tabOffset > 0 ? tabOffset - 16 : 0, 0);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>, index: number) => {\n if (e.key === \"ArrowRight\" && index < tabsLength) {\n onSelectTab(index + 1);\n } else if (e.key === \"ArrowLeft\" && index > 0) {\n onSelectTab(index - 1);\n }\n };\n\n return (\n <section css={container} {...rest}>\n <div className=\"nav-wrapper\" role=\"navigation\" tabIndex={0}>\n {showLeftArrow() && (\n <Button\n data-testid=\"left-arrow\"\n variant=\"link\"\n color=\"secondary\"\n noGutters\n onClick={handLeftArrowClick}\n >\n {dir === \"rtl\" ? <ArrowRightSVG height={22} /> : <ArrowLeftSVG height={22} />}\n </Button>\n )}\n\n <nav\n css={(theme): SerializedStyles => tabsHeader(theme, { stickyHeader })}\n role=\"tablist\"\n ref={tabsNavEl}\n {...(testIds?.nav && { \"data-testid\": testIds.nav })}\n >\n {tabsWithContent.map(({ title, id }, index) => (\n <TabsNavItem\n id={id}\n key={index}\n index={index}\n title={title}\n isActive={activeTab === index}\n onSelectTab={onSelectTab}\n onKeyDown={(e) => handleKeyDown(e, index)}\n />\n ))}\n {inlineEndComponent && <div className=\"inline-end-component\">{inlineEndComponent}</div>}\n </nav>\n\n {showRightArrow() && (\n <Button\n data-testid=\"right-arrow\"\n variant=\"link\"\n color=\"secondary\"\n noGutters\n onClick={handRightArrowClick}\n >\n {dir === \"rtl\" ? <ArrowLeftSVG height={22} /> : <ArrowRightSVG height={22} />}\n </Button>\n )}\n </div>\n\n <div\n id=\"content\"\n aria-live=\"polite\"\n role=\"region\"\n {...(testIds?.content && { \"data-testid\": testIds.content })}\n >\n {tabsWithContent.map(({ content }, index) => (\n <TabsContent\n key={index}\n index={index}\n content={content}\n isVisible={activeTab === index}\n />\n ))}\n </div>\n </section>\n );\n};\n\nexport default Tabs;\n"],"names":["Tabs","_ref","_ref$tabs","tabs","_ref$stickyHeader","stickyHeader","_ref$selectedTab","selectedTab","_ref$controlled","controlled","onChangeTab","inlineEndComponent","testIds","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","internalActiveTab","setInternalActiveTab","tabsWithContent","filter","tab","content","tabsLength","length","tabsNavEl","useRef","_useState3","_useState4","isOverflowActive","setIsOverflowActive","dir","document","clampTabIndex","index","activeTab","onSelectTab","scrollToTab","showLeftArrow","handLeftArrowClick","showRightArrow","handRightArrowClick","useEffect","toggleTabsArrow","el","current","offsetWidth","scrollWidth","window","addEventListener","removeEventListener","tabIndex","_document$querySelect","tabOffset","querySelector","concat","getBoundingClientRect","x","tablist","getElementsByTagName","scrollTo","handleKeyDown","e","key","___EmotionJSX","_extends","css","container","className","role","Button","variant","color","noGutters","onClick","ArrowRightSVG","height","ArrowLeftSVG","theme","tabsHeader","ref","nav","map","_ref2","title","id","TabsNavItem","isActive","onKeyDown","_ref3","TabsContent","isVisible"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ import { MultiValueRemoveProps } from "react-select";
3
+ import { CustomOption } from "../types";
4
+ declare const _default: React.NamedExoticComponent<MultiValueRemoveProps<CustomOption, boolean, import("react-select").GroupBase<CustomOption>>>;
5
+ export default _default;
@@ -7,6 +7,7 @@ export type TabObject = {
7
7
  type TabsProps = React.HTMLAttributes<HTMLElement> & {
8
8
  stickyHeader?: boolean;
9
9
  selectedTab?: number;
10
+ controlled?: boolean;
10
11
  onChangeTab?: (index: number) => void;
11
12
  tabs: TabObject[];
12
13
  inlineEndComponent?: JSX.Element;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epignosis_llc/gnosis",
3
- "version": "6.8.0",
3
+ "version": "6.8.2",
4
4
  "type": "module",
5
5
  "description": "Epignosis official react design system.",
6
6
  "homepage": "https://github.com/epignosis/gnosis",