@seeqdev/qomponents 0.0.80 → 0.0.81

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 (162) hide show
  1. package/dist/Accordion/Accordion.js +9 -0
  2. package/dist/Accordion/Accordion.js.map +1 -0
  3. package/dist/Accordion/Accordion.stories.js +109 -0
  4. package/dist/Accordion/Accordion.stories.js.map +1 -0
  5. package/dist/Accordion/Accordion.test.js +55 -0
  6. package/dist/Accordion/Accordion.test.js.map +1 -0
  7. package/dist/Accordion/Accordion.types.js +2 -0
  8. package/dist/Accordion/Accordion.types.js.map +1 -0
  9. package/dist/Accordion/index.js +2 -0
  10. package/dist/Accordion/index.js.map +1 -0
  11. package/dist/Button/Button.js +90 -0
  12. package/dist/Button/Button.js.map +1 -0
  13. package/dist/Button/Button.stories.js +85 -0
  14. package/dist/Button/Button.stories.js.map +1 -0
  15. package/dist/Button/Button.test.js +49 -0
  16. package/dist/Button/Button.test.js.map +1 -0
  17. package/dist/Button/Button.types.js +5 -0
  18. package/dist/Button/Button.types.js.map +1 -0
  19. package/dist/Button/index.js +2 -0
  20. package/dist/Button/index.js.map +1 -0
  21. package/dist/ButtonWithDropdown/ButtonWithDropdown.js +68 -0
  22. package/dist/ButtonWithDropdown/ButtonWithDropdown.js.map +1 -0
  23. package/dist/ButtonWithDropdown/ButtonWithDropdown.stories.js +93 -0
  24. package/dist/ButtonWithDropdown/ButtonWithDropdown.stories.js.map +1 -0
  25. package/dist/ButtonWithDropdown/ButtonWithDropdown.test.js +72 -0
  26. package/dist/ButtonWithDropdown/ButtonWithDropdown.test.js.map +1 -0
  27. package/dist/ButtonWithDropdown/ButtonWithDropdown.types.js +2 -0
  28. package/dist/ButtonWithDropdown/ButtonWithDropdown.types.js.map +1 -0
  29. package/dist/ButtonWithDropdown/index.js +2 -0
  30. package/dist/ButtonWithDropdown/index.js.map +1 -0
  31. package/dist/ButtonWithPopover/ButtonWithPopover.js +53 -0
  32. package/dist/ButtonWithPopover/ButtonWithPopover.js.map +1 -0
  33. package/dist/ButtonWithPopover/ButtonWithPopover.stories.js +72 -0
  34. package/dist/ButtonWithPopover/ButtonWithPopover.stories.js.map +1 -0
  35. package/dist/ButtonWithPopover/ButtonWithPopover.test.js +82 -0
  36. package/dist/ButtonWithPopover/ButtonWithPopover.test.js.map +1 -0
  37. package/dist/ButtonWithPopover/ButtonWithPopover.types.js +2 -0
  38. package/dist/ButtonWithPopover/ButtonWithPopover.types.js.map +1 -0
  39. package/dist/ButtonWithPopover/index.js +2 -0
  40. package/dist/ButtonWithPopover/index.js.map +1 -0
  41. package/dist/Checkbox/Checkbox.js +26 -0
  42. package/dist/Checkbox/Checkbox.js.map +1 -0
  43. package/dist/Checkbox/Checkbox.stories.js +34 -0
  44. package/dist/Checkbox/Checkbox.stories.js.map +1 -0
  45. package/dist/Checkbox/Checkbox.test.js +94 -0
  46. package/dist/Checkbox/Checkbox.test.js.map +1 -0
  47. package/dist/Checkbox/Checkbox.types.js +2 -0
  48. package/dist/Checkbox/Checkbox.types.js.map +1 -0
  49. package/dist/Checkbox/index.js +2 -0
  50. package/dist/Checkbox/index.js.map +1 -0
  51. package/dist/Icon/Icon.js +55 -0
  52. package/dist/Icon/Icon.js.map +1 -0
  53. package/dist/Icon/Icon.stories.js +41 -0
  54. package/dist/Icon/Icon.stories.js.map +1 -0
  55. package/dist/Icon/Icon.test.js +55 -0
  56. package/dist/Icon/Icon.test.js.map +1 -0
  57. package/dist/Icon/Icon.types.js +16 -0
  58. package/dist/Icon/Icon.types.js.map +1 -0
  59. package/dist/Icon/index.js +2 -0
  60. package/dist/Icon/index.js.map +1 -0
  61. package/dist/Modal/Modal.js +97 -0
  62. package/dist/Modal/Modal.js.map +1 -0
  63. package/dist/Modal/Modal.stories.js +187 -0
  64. package/dist/Modal/Modal.stories.js.map +1 -0
  65. package/dist/Modal/Modal.test.js +108 -0
  66. package/dist/Modal/Modal.test.js.map +1 -0
  67. package/dist/Modal/Modal.types.js +2 -0
  68. package/dist/Modal/Modal.types.js.map +1 -0
  69. package/dist/Modal/index.js +2 -0
  70. package/dist/Modal/index.js.map +1 -0
  71. package/dist/NewWorkbench/NewWorkbench.js +48 -0
  72. package/dist/NewWorkbench/NewWorkbench.js.map +1 -0
  73. package/dist/NewWorkbench/NewWorkbench.stories.js +77 -0
  74. package/dist/NewWorkbench/NewWorkbench.stories.js.map +1 -0
  75. package/dist/NewWorkbench/NewWorkbench.test.js +73 -0
  76. package/dist/NewWorkbench/NewWorkbench.test.js.map +1 -0
  77. package/dist/NewWorkbench/NewWorkbench.types.js +2 -0
  78. package/dist/NewWorkbench/NewWorkbench.types.js.map +1 -0
  79. package/dist/NewWorkbench/index.js +2 -0
  80. package/dist/NewWorkbench/index.js.map +1 -0
  81. package/dist/NewWorkbench/variants.js +23 -0
  82. package/dist/NewWorkbench/variants.js.map +1 -0
  83. package/dist/Select/Select.js +171 -0
  84. package/dist/Select/Select.js.map +1 -0
  85. package/dist/Select/Select.stories.js +77 -0
  86. package/dist/Select/Select.stories.js.map +1 -0
  87. package/dist/Select/Select.test.js +182 -0
  88. package/dist/Select/Select.test.js.map +1 -0
  89. package/dist/Select/Select.types.js +2 -0
  90. package/dist/Select/Select.types.js.map +1 -0
  91. package/dist/Select/index.js +2 -0
  92. package/dist/Select/index.js.map +1 -0
  93. package/dist/Tabs/Tabs.js +22 -0
  94. package/dist/Tabs/Tabs.js.map +1 -0
  95. package/dist/Tabs/Tabs.stories.js +91 -0
  96. package/dist/Tabs/Tabs.stories.js.map +1 -0
  97. package/dist/Tabs/Tabs.test.js +91 -0
  98. package/dist/Tabs/Tabs.test.js.map +1 -0
  99. package/dist/Tabs/Tabs.types.js +2 -0
  100. package/dist/Tabs/Tabs.types.js.map +1 -0
  101. package/dist/Tabs/index.js +2 -0
  102. package/dist/Tabs/index.js.map +1 -0
  103. package/dist/TextArea/TextArea.js +23 -0
  104. package/dist/TextArea/TextArea.js.map +1 -0
  105. package/dist/TextArea/TextArea.stories.js +39 -0
  106. package/dist/TextArea/TextArea.stories.js.map +1 -0
  107. package/dist/TextArea/TextArea.test.js +68 -0
  108. package/dist/TextArea/TextArea.test.js.map +1 -0
  109. package/dist/TextArea/TextArea.types.js +2 -0
  110. package/dist/TextArea/TextArea.types.js.map +1 -0
  111. package/dist/TextArea/index.js +2 -0
  112. package/dist/TextArea/index.js.map +1 -0
  113. package/dist/TextField/TextField.js +64 -0
  114. package/dist/TextField/TextField.js.map +1 -0
  115. package/dist/TextField/TextField.stories.js +41 -0
  116. package/dist/TextField/TextField.stories.js.map +1 -0
  117. package/dist/TextField/TextField.test.js +35 -0
  118. package/dist/TextField/TextField.test.js.map +1 -0
  119. package/dist/TextField/TextField.types.js +2 -0
  120. package/dist/TextField/TextField.types.js.map +1 -0
  121. package/dist/TextField/index.js +2 -0
  122. package/dist/TextField/index.js.map +1 -0
  123. package/dist/ToolbarButton/ToolbarButton.js +73 -0
  124. package/dist/ToolbarButton/ToolbarButton.js.map +1 -0
  125. package/dist/ToolbarButton/ToolbarButton.stories.js +89 -0
  126. package/dist/ToolbarButton/ToolbarButton.stories.js.map +1 -0
  127. package/dist/ToolbarButton/ToolbarButton.test.js +93 -0
  128. package/dist/ToolbarButton/ToolbarButton.test.js.map +1 -0
  129. package/dist/ToolbarButton/ToolbarButton.types.js +2 -0
  130. package/dist/ToolbarButton/ToolbarButton.types.js.map +1 -0
  131. package/dist/ToolbarButton/index.js +2 -0
  132. package/dist/ToolbarButton/index.js.map +1 -0
  133. package/dist/Tooltip/QTip.stories.js +40 -0
  134. package/dist/Tooltip/QTip.stories.js.map +1 -0
  135. package/dist/Tooltip/QTip.types.js +2 -0
  136. package/dist/Tooltip/QTip.types.js.map +1 -0
  137. package/dist/Tooltip/QTipPerformance.stories.js +30 -0
  138. package/dist/Tooltip/QTipPerformance.stories.js.map +1 -0
  139. package/dist/Tooltip/Qtip.js +158 -0
  140. package/dist/Tooltip/Qtip.js.map +1 -0
  141. package/dist/Tooltip/Tooltip.js +36 -0
  142. package/dist/Tooltip/Tooltip.js.map +1 -0
  143. package/dist/Tooltip/Tooltip.stories.js +32 -0
  144. package/dist/Tooltip/Tooltip.stories.js.map +1 -0
  145. package/dist/Tooltip/Tooltip.types.js +3 -0
  146. package/dist/Tooltip/Tooltip.types.js.map +1 -0
  147. package/dist/Tooltip/TooltipPerformance.stories.js +30 -0
  148. package/dist/Tooltip/TooltipPerformance.stories.js.map +1 -0
  149. package/dist/Tooltip/index.js +3 -0
  150. package/dist/Tooltip/index.js.map +1 -0
  151. package/dist/Tooltip/qTip.utilities.js +11 -0
  152. package/dist/Tooltip/qTip.utilities.js.map +1 -0
  153. package/dist/index.esm.js +18 -6
  154. package/dist/index.esm.js.map +1 -1
  155. package/dist/index.js +18 -6
  156. package/dist/index.js.map +1 -1
  157. package/dist/styles.css +11 -0
  158. package/dist/types.js +2 -0
  159. package/dist/types.js.map +1 -0
  160. package/dist/utils/browserId.js +29 -0
  161. package/dist/utils/browserId.js.map +1 -0
  162. package/package.json +1 -1
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=NewWorkbench.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NewWorkbench.types.js","sourceRoot":"","sources":["../../src/NewWorkbench/NewWorkbench.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export { default } from './NewWorkbench';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/NewWorkbench/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import Icon from '../Icon/Icon';
3
+ export const NewWorkbenchItem = (item) => {
4
+ return (React.createElement("div", { className: "tw-flex-col tw-flex tw-p-[10px] tw-pl-5 tw-w-[600px]" },
5
+ React.createElement("div", { className: "tw-flex tw-flex-row tw-gap-2 tw-items-end" },
6
+ item.icon && (React.createElement(Icon, { icon: item.icon, type: "text", extraClassNames: 'tw-rounded-[3px] tw-h-8 tw-w-8 tw-flex tw-justify-center tw-items-center tw-bg-sq-color-dark dark:tw-text-sq-white tw-text-[22px] tw-text-sq-white ' +
7
+ item.iconExtraClassNames })),
8
+ React.createElement("h4", { className: "tw-text-base tw-font-[600] tw-leading-[20px] mb-0" }, item.display)),
9
+ React.createElement("div", { className: "tw-text-[13px] tw-font-normal" }, item.text)));
10
+ };
11
+ export const ViewWorkbench = (item) => {
12
+ return (React.createElement("div", { className: "tw-flex-col tw-flex tw-p-[10px]" },
13
+ React.createElement("div", { className: "tw-flex tw-flex-row tw-gap-2 tw-items-end" },
14
+ item.icon && (React.createElement(Icon, { icon: item.icon, type: "text", extraClassNames: 'tw-flex tw-justify-center tw-items-center tw-text-[20px] dark:tw-text-sq-white tw-text-sq-text-color ' +
15
+ item.iconExtraClassNames })),
16
+ React.createElement("div", { className: "tw-text-[13px]" }, item.display))));
17
+ };
18
+ export const InsertSeeqContent = (item) => {
19
+ return (React.createElement("div", { className: "tw-flex-col tw-flex tw-justify-start tw-p-[10px] tw-font-normal tw-text-left dark:tw-text-sq-white tw-text-sq-text-color" },
20
+ React.createElement("h5", { className: "tw-text-[15px] tw-leading-[18px]" }, item.display),
21
+ React.createElement("div", { className: "tw-text-[11px] tw-text-[#999] !tw-mt-1" }, item.text)));
22
+ };
23
+ //# sourceMappingURL=variants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variants.js","sourceRoot":"","sources":["../../src/NewWorkbench/variants.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,IAAI,MAAM,cAAc,CAAC;AAEhC,MAAM,CAAC,MAAM,gBAAgB,GAAgC,CAAC,IAAI,EAAE,EAAE;IACpE,OAAO,CACL,6BAAK,SAAS,EAAC,sDAAsD;QACnE,6BAAK,SAAS,EAAC,2CAA2C;YACvD,IAAI,CAAC,IAAI,IAAI,CACZ,oBAAC,IAAI,IACH,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAC,MAAM,EACX,eAAe,EACb,qJAAqJ;oBACrJ,IAAI,CAAC,mBAAmB,GAE1B,CACH;YACD,4BAAI,SAAS,EAAC,mDAAmD,IAAE,IAAI,CAAC,OAAO,CAAM,CACjF;QACN,6BAAK,SAAS,EAAC,+BAA+B,IAAE,IAAI,CAAC,IAAI,CAAO,CAC5D,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAgC,CAAC,IAAI,EAAE,EAAE;IACjE,OAAO,CACL,6BAAK,SAAS,EAAC,iCAAiC;QAC9C,6BAAK,SAAS,EAAC,2CAA2C;YACvD,IAAI,CAAC,IAAI,IAAI,CACZ,oBAAC,IAAI,IACH,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAC,MAAM,EACX,eAAe,EACb,uGAAuG;oBACvG,IAAI,CAAC,mBAAmB,GAE1B,CACH;YACD,6BAAK,SAAS,EAAC,gBAAgB,IAAE,IAAI,CAAC,OAAO,CAAO,CAChD,CACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAgC,CAAC,IAAI,EAAE,EAAE;IACrE,OAAO,CACL,6BAAK,SAAS,EAAC,0HAA0H;QACvI,4BAAI,SAAS,EAAC,kCAAkC,IAAE,IAAI,CAAC,OAAO,CAAM;QACpE,6BAAK,SAAS,EAAC,wCAAwC,IAAE,IAAI,CAAC,IAAI,CAAO,CACrE,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,171 @@
1
+ import React from 'react';
2
+ import '../styles.css';
3
+ import { createFilter, default as ReactSelect } from 'react-select';
4
+ import CreatableSelect from 'react-select/creatable';
5
+ const baseClasses = ['focus:tw-ring-0', 'disabled:tw-cursor-not-allowed'].join(' ');
6
+ const containerStyles = ['tw-bg-white', 'dark:tw-bg-sq-dark-background'].join(' ');
7
+ const errorClasses = 'tw-border-sq-danger-color';
8
+ const borderColorClasses = ['tw-border-sq-disabled-gray', 'dark:tw-border-sq-dark-disabled-gray'].join(' ');
9
+ const borderStyles = [
10
+ 'tw-border-solid',
11
+ 'tw-border',
12
+ 'hover:tw-border-sq-color-dark',
13
+ 'focus:tw-border-sq-color-dark',
14
+ 'active:tw-border-sq-color-dark',
15
+ 'dark:hover:tw-border-sq-color-dark-dark',
16
+ 'dark:focus:tw-border-sq-color-dark-dark',
17
+ 'dark:active:tw-border-sq-color-dark-dark',
18
+ ].join(' ');
19
+ const textStyles = ['tw-text-sq-text-color', 'dark:tw-text-sq-dark-text', 'tw-text-sm'].join(' ');
20
+ const textActiveStyles = [
21
+ 'hover:tw-text-sq-color-dark',
22
+ 'focus:tw-text-sq-color-dark',
23
+ 'active:tw-text-sq-color-dark',
24
+ 'dark:tw-text-sq-dark-disabled-gray',
25
+ 'dark:hover:tw-text-sq-color-dark-dark',
26
+ 'dark:focus:tw-text-sq-color-dark-dark',
27
+ 'dark:active:tw-text-sq-color-dark-dark',
28
+ ].join(' ');
29
+ const menuStyles = [
30
+ 'tw-border-solid',
31
+ 'tw-border',
32
+ 'tw-rounded-b',
33
+ 'tw-border-sq-disabled-gray',
34
+ 'dark:tw-border-sq-dark-disabled-gray',
35
+ 'tw-whitespace-nowrap',
36
+ 'tw-min-w-fit',
37
+ '!tw-z-[9999]',
38
+ ].join(' ');
39
+ const menuListStyles = [
40
+ 'tw-rounded-b',
41
+ 'tw-bg-white',
42
+ 'dark:tw-bg-sq-dark-background',
43
+ 'tw-min-w-fit',
44
+ '!tw-z-[9999]',
45
+ 'specSelectMenu',
46
+ ].join(' ');
47
+ const groupHeadingStyles = [
48
+ 'tw-bg-sq-light-gray',
49
+ 'dark:tw-bg-sq-dark-disabled-gray',
50
+ 'tw-text-sq-darkish-gray',
51
+ 'tw-py-1',
52
+ 'tw-px-2.5',
53
+ 'specSelectGroupHeading',
54
+ ].join(' ');
55
+ const optionStyles = [
56
+ 'hover:tw-bg-sq-gray-highlight',
57
+ 'hover:tw-cursor-pointer',
58
+ 'dark:hover:tw-bg-sq-gray-highlight-dark',
59
+ 'tw-py-1',
60
+ 'tw-px-2.5',
61
+ 'specSelectOption',
62
+ ].join(' ');
63
+ const disabledClasses = ['tw-bg-sq-field-disabled-gray', 'tw-cursor-not-allowed'].join(' ');
64
+ const dropDownIndicatorStyles = `tw-text-sq-disabled-gray ${textActiveStyles} specOpenIt`;
65
+ const placeholderStyles = ['tw-text-gray-400', 'dark:tw-text-sq-dark-text-lighter', 'specOpenSelect'].join(' ');
66
+ const multiValueStyles = [
67
+ 'tw-bg-sq-disabled-gray',
68
+ 'dark:tw-bg-sq-multi-gray-dark',
69
+ 'tw-text-sm',
70
+ 'tw-py-0.5',
71
+ 'tw-px-1',
72
+ 'tw-m-0.5',
73
+ 'tw-rounded-sm',
74
+ 'specOpenSelect',
75
+ ].join(' ');
76
+ /**
77
+ * Select Component
78
+ * - based on react-select (https://react-select.com/)
79
+ *
80
+ * For ease of testing most of the elements of this select can be identified by classNames prefixed with "spec".
81
+ *
82
+ */
83
+ const Select = ({ options, value, placeholder = 'select', noOptionsMessage = 'no matching options', isSearchable = true, creatable = false, isMulti = false, isClearable = false, closeMenuOnSelect = true, id, inputId, menuPortalTarget, getOptionLabel, getSelectedValueLabel, getOptionValue, onChange, menuIsOpen, menuPlacement = 'auto', extraClassNames, inputGroup, filterConfig, filterOption, small = false, isDisabled = false, showError = false, isLoading = false, formatGroupLabel, onRemove, defaultValue, onMenuOpen, onMenuClose, components }) => {
84
+ const getOptionOrSelectedLabel = (option, { context }) => {
85
+ const getSelectedOptionLabel = getSelectedValueLabel ? getSelectedValueLabel : getOptionLabel;
86
+ if (getOptionLabel || getSelectedValueLabel) {
87
+ if (context === 'value') {
88
+ return getSelectedOptionLabel ? getSelectedOptionLabel(option) : option.label;
89
+ }
90
+ else {
91
+ return getOptionLabel ? getOptionLabel(option) : option.label;
92
+ }
93
+ }
94
+ else {
95
+ return option.label;
96
+ }
97
+ };
98
+ const interceptOnChange = (newValue, actionMeta) => {
99
+ if (isMulti && onRemove && actionMeta.action === 'remove-value') {
100
+ onRemove({ id: actionMeta.removedValue });
101
+ return;
102
+ }
103
+ onChange(newValue);
104
+ };
105
+ const props = {
106
+ id,
107
+ value,
108
+ inputId,
109
+ placeholder,
110
+ closeMenuOnSelect,
111
+ blurInputOnSelect: closeMenuOnSelect,
112
+ isSearchable: creatable ? true : isSearchable,
113
+ isMulti,
114
+ isClearable,
115
+ isLoading,
116
+ defaultValue,
117
+ noOptionsMessage: () => noOptionsMessage,
118
+ menuPortalTarget,
119
+ menuIsOpen,
120
+ onChange: interceptOnChange,
121
+ unstyled: true,
122
+ menuPlacement,
123
+ formatOptionLabel: getOptionOrSelectedLabel,
124
+ formatGroupLabel,
125
+ getOptionValue,
126
+ options,
127
+ isDisabled,
128
+ onMenuOpen,
129
+ onMenuClose,
130
+ components,
131
+ hideSelectedOptions: isMulti,
132
+ filterOption: filterOption ? filterOption : filterConfig ? createFilter(filterConfig) : undefined,
133
+ classNames: {
134
+ control: ({ menuIsOpen }) => {
135
+ let border = menuIsOpen ? 'tw-rounded-t-sm' : 'tw-rounded-sm';
136
+ // if it's on the left side of the input group make sure the right side is straight and not curved
137
+ if (inputGroup === 'left') {
138
+ border = menuIsOpen ? 'tw-rounded-tl-sm' : 'tw-rounded-l-sm';
139
+ }
140
+ else if (inputGroup === 'right') {
141
+ border = menuIsOpen ? 'tw-rounded-tr-sm' : 'tw-rounded-r-sm';
142
+ }
143
+ const appliedClasses = `${borderStyles} ${border} ${showError ? errorClasses : borderColorClasses} ${small ? 'reactSelectMinHeightSmall' : 'reactSelectMinHeight'} `;
144
+ return `${appliedClasses} ${baseClasses} specSelectControl ${isDisabled ? disabledClasses : ''} ${small ? 'tw-pl-2 tw-pr-1' : 'tw-pl-2.5 tw-pr-1.5'}`;
145
+ },
146
+ placeholder: () => placeholderStyles,
147
+ container: () => `${textStyles} ${containerStyles} ${extraClassNames}`,
148
+ input: () => textStyles + ' specSelectInput',
149
+ menuList: () => menuListStyles,
150
+ menu: () => menuStyles,
151
+ menuPortal: () => '!tw-z-[9000]',
152
+ dropdownIndicator: () => dropDownIndicatorStyles,
153
+ option: ({ isSelected, isDisabled }) => {
154
+ let classes = optionStyles;
155
+ if (isDisabled) {
156
+ classes += ' specDisabledOption ';
157
+ }
158
+ return isSelected ? classes + ' tw-bg-sq-colored-hover dark:tw-bg-sq-colored-hover-dark' : classes;
159
+ },
160
+ singleValue: () => 'specOpenSelect',
161
+ multiValue: () => multiValueStyles,
162
+ multiValueRemove: () => 'hover:tw-text-sq-danger-color specSelectMultiValueRemove',
163
+ clearIndicator: () => 'tw-text-sq-disabled-gray hover:tw-text-sq-danger-color specClearSelect',
164
+ group: () => 'specSelectGroup',
165
+ groupHeading: () => groupHeadingStyles,
166
+ },
167
+ };
168
+ return creatable ? React.createElement(CreatableSelect, { ...props }) : React.createElement(ReactSelect, { ...props });
169
+ };
170
+ export default Select;
171
+ //# sourceMappingURL=Select.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.js","sourceRoot":"","sources":["../../src/Select/Select.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ import React from 'react';
2
+ import Select from './Select';
3
+ import TextField from '../TextField';
4
+ export default {
5
+ title: 'Select',
6
+ };
7
+ export const AllSelectVariants = () => {
8
+ const options = [
9
+ { value: 'a', label: 'Chocolate' },
10
+ { value: 'b', label: 'Strawberry' },
11
+ { value: 'c', label: 'Vanilla' },
12
+ { value: 'd', label: 'Rocky Road' },
13
+ { value: 'e', label: 'Crazy Cow' },
14
+ { value: 'f', label: 'Almond Joy' },
15
+ { value: 'g', label: 'All of the above' },
16
+ ];
17
+ const colorOptions = [
18
+ { value: 'h', label: 'pink' },
19
+ { value: 'i', label: 'purple' },
20
+ { value: 'j', label: 'green' },
21
+ { value: 'k', label: 'red' },
22
+ ];
23
+ const groupedOptions = [
24
+ {
25
+ label: 'Ice Cream Flavors',
26
+ options: options,
27
+ },
28
+ {
29
+ label: 'Colors',
30
+ options: colorOptions,
31
+ },
32
+ ];
33
+ const customColorOption = (dropdownProps) => {
34
+ return (React.createElement("div", { style: { color: dropdownProps.data.label } }, dropdownProps.data.label));
35
+ };
36
+ const allSelects = () => (React.createElement(React.Fragment, null,
37
+ React.createElement("div", { className: "tw-p-5" },
38
+ React.createElement(Select, { id: "hello", onChange: () => { }, options: options, placeholder: "single value" })),
39
+ React.createElement("div", { className: "tw-p-5" },
40
+ React.createElement(Select, { id: "hello", onChange: () => { }, options: options, placeholder: "single value - small", small: true })),
41
+ React.createElement("div", { className: "tw-p-5" },
42
+ React.createElement(Select, { id: "disabled", onChange: () => { }, options: options, placeholder: "disabled", isDisabled: true })),
43
+ React.createElement("div", { className: "tw-p-5" },
44
+ React.createElement(Select, { id: "error", onChange: () => { }, options: options, placeholder: "error", showError: true })),
45
+ React.createElement("div", { className: "tw-p-5" },
46
+ React.createElement(Select, { onChange: () => { }, options: options, placeholder: "stays open", closeMenuOnSelect: false, creatable: true })),
47
+ React.createElement("div", { className: "tw-p-5" },
48
+ React.createElement(Select, { onChange: () => { }, options: groupedOptions, placeholder: "grouped" })),
49
+ React.createElement("div", { className: "tw-p-5" },
50
+ React.createElement(Select, { onChange: () => { }, options: options, creatable: true, placeholder: "create option" })),
51
+ React.createElement("div", { className: "tw-p-5" },
52
+ React.createElement(Select, { onChange: () => { }, options: options, isClearable: true, placeholder: "clearable" })),
53
+ React.createElement("div", { className: "tw-p-5" },
54
+ React.createElement(Select, { onChange: () => { }, options: options, placeholder: "multi-select", isMulti: true, isSearchable: false })),
55
+ React.createElement("div", { className: "tw-p-5" },
56
+ React.createElement(Select, { onChange: () => { }, placeholder: "type to search", options: options, isSearchable: true })),
57
+ React.createElement("div", { className: "tw-p-5 tw-flex tw-flex-row" },
58
+ React.createElement(Select, { onChange: () => { }, placeholder: "type to search", options: options, inputGroup: "left", extraClassNames: "tw-w-[200px]" }),
59
+ React.createElement(TextField, { onChange: () => { }, placeholder: "text goes here", inputGroup: "right" })),
60
+ React.createElement("div", { className: "tw-p-5" },
61
+ React.createElement(Select, { onChange: () => { }, options: colorOptions, placeholder: "custom option", components: { Option: (dropdownProps) => customColorOption(dropdownProps) } }))));
62
+ const renderAllVariations = () => (React.createElement(React.Fragment, null,
63
+ React.createElement("div", { className: "tw-grid tw-gap-4" },
64
+ allSelects(),
65
+ React.createElement("div", { className: "tw-dark tw-bg-sq-dark-background" }, allSelects()))));
66
+ return (React.createElement("div", { className: "tw-grid tw-grid-cols-3 tw-gap-4" },
67
+ React.createElement("div", { className: "color_topic" },
68
+ React.createElement("b", null, "Topic Colors"),
69
+ renderAllVariations()),
70
+ React.createElement("div", { className: "color_analysis" },
71
+ React.createElement("b", null, "Analysis Colors"),
72
+ renderAllVariations()),
73
+ React.createElement("div", { className: "color_datalab" },
74
+ React.createElement("b", null, "Datalab Colors"),
75
+ renderAllVariations())));
76
+ };
77
+ //# sourceMappingURL=Select.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.stories.js","sourceRoot":"","sources":["../../src/Select/Select.stories.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,182 @@
1
+ import React from 'react';
2
+ import '@testing-library/jest-dom';
3
+ import { render, screen } from '@testing-library/react';
4
+ import userEvent from '@testing-library/user-event';
5
+ import Select from './Select';
6
+ describe('Select', () => {
7
+ class Context {
8
+ testId = 'selectTestId';
9
+ label = 'button label';
10
+ options = [
11
+ { label: 'vanilla', value: 'a' },
12
+ { label: 'chocolate', value: 'b' },
13
+ { label: 'strawberry', value: 'c' },
14
+ ];
15
+ otherOptions = [
16
+ { label: 'red', value: 'd' },
17
+ { label: 'green', value: 'e' },
18
+ ];
19
+ groupedOptions = [
20
+ {
21
+ label: 'Ice Cream Flavors',
22
+ options: this.options,
23
+ },
24
+ {
25
+ label: 'Colors',
26
+ options: this.otherOptions,
27
+ },
28
+ ];
29
+ props = {
30
+ onChange: jest.fn(),
31
+ options: this.options,
32
+ };
33
+ }
34
+ let tc;
35
+ beforeEach(() => {
36
+ tc = new Context();
37
+ });
38
+ const openSelect = async () => {
39
+ const select = document.querySelector(`.specOpenSelect`);
40
+ await userEvent.click(select);
41
+ };
42
+ const renderSelect = (props) => render(React.createElement("div", { id: "wrapper" },
43
+ React.createElement(Select, { ...props })));
44
+ it('renders the select', () => {
45
+ renderSelect(tc.props);
46
+ expect(document.querySelector('.specSelectControl')).toBeInTheDocument();
47
+ });
48
+ it('displays options', async () => {
49
+ renderSelect(tc.props);
50
+ await openSelect();
51
+ expect(document.querySelectorAll('.specSelectOption')).toHaveLength(3);
52
+ });
53
+ it('displays grouped options', async () => {
54
+ renderSelect({ ...tc.props, options: tc.groupedOptions });
55
+ await openSelect();
56
+ expect(document.querySelectorAll('.specSelectOption')).toHaveLength(5);
57
+ expect(document.querySelectorAll('.specSelectGroupHeading')).toHaveLength(2);
58
+ expect(document.querySelectorAll('.specSelectGroup')).toHaveLength(2);
59
+ });
60
+ it('reflects error state', () => {
61
+ renderSelect({ ...tc.props, showError: true });
62
+ expect(document.querySelector('.specSelectControl')).toHaveClass('tw-border-sq-danger-color');
63
+ });
64
+ it('reflects custom render function for option', async () => {
65
+ const getOptionLabel = (option) => (React.createElement("div", null,
66
+ option.label,
67
+ React.createElement("br", null),
68
+ "custom formatting applied"));
69
+ renderSelect({ ...tc.props, getOptionLabel });
70
+ await openSelect();
71
+ expect(document.querySelectorAll('.specSelectOption')[0]).toHaveTextContent('custom formatting applied');
72
+ });
73
+ it('reflects custom render for selected option', async () => {
74
+ const getSelectedValueLabel = (option) => (React.createElement("div", null,
75
+ option.label,
76
+ React.createElement("br", null),
77
+ "the chosen one"));
78
+ renderSelect({ ...tc.props, getSelectedValueLabel });
79
+ await openSelect();
80
+ await userEvent.click(screen.getByText(tc.options[0].label));
81
+ expect(document.querySelectorAll('.specOpenSelect')[0]).toHaveTextContent('the chosen one');
82
+ });
83
+ it('renders the provided value as selected', () => {
84
+ const value = tc.options[1];
85
+ renderSelect({ ...tc.props, value });
86
+ expect(document.querySelectorAll('.specOpenSelect')[0]).toHaveTextContent(value.label);
87
+ });
88
+ it('renders the provided placeholder', () => {
89
+ const placeholder = 'choose your favorite flavor';
90
+ renderSelect({ ...tc.props, placeholder });
91
+ expect(screen.getByText(placeholder)).toBeInTheDocument();
92
+ });
93
+ it('renders the provided noOptionsMessage', async () => {
94
+ const noOptionsMessage = 'Nothing to see here.';
95
+ renderSelect({ ...tc.props, noOptionsMessage, options: [] });
96
+ await openSelect();
97
+ expect(screen.getByText(noOptionsMessage)).toBeInTheDocument();
98
+ });
99
+ it('supports multi selection', async () => {
100
+ const isMulti = true;
101
+ renderSelect({ ...tc.props, isMulti });
102
+ await openSelect();
103
+ await userEvent.click(screen.getByText(tc.options[0].label));
104
+ await openSelect();
105
+ await userEvent.click(screen.getByText(tc.options[1].label));
106
+ expect(document.querySelectorAll('.specOpenSelect')).toHaveLength(2);
107
+ });
108
+ it('renders isClearable', async () => {
109
+ const isClearable = true;
110
+ const placeholder = 'no worries - you can clear this.';
111
+ renderSelect({ ...tc.props, isClearable, placeholder });
112
+ await openSelect();
113
+ await userEvent.click(screen.getByText(tc.options[0].label));
114
+ expect(document.querySelectorAll('.specOpenSelect')[0]).toHaveTextContent(tc.options[0].label);
115
+ expect(document.querySelector('.specClearSelect')).toBeInTheDocument();
116
+ await userEvent.click(document.querySelector('.specClearSelect'));
117
+ expect(document.querySelectorAll('.specOpenSelect')[0]).toHaveTextContent(placeholder);
118
+ });
119
+ it('supports menuIsOpen', async () => {
120
+ const menuIsOpen = true;
121
+ renderSelect({ ...tc.props, menuIsOpen, menuPortalTarget: document.querySelector('#wrapper') });
122
+ expect(document.querySelectorAll('.specSelectOption')).toHaveLength(tc.options.length);
123
+ });
124
+ it('supports closeMenuOnSelect', async () => {
125
+ const closeMenuOnSelect = false;
126
+ renderSelect({ ...tc.props, closeMenuOnSelect });
127
+ await openSelect();
128
+ await userEvent.click(screen.getByText(tc.options[1].label));
129
+ await userEvent.click(screen.getByText(tc.options[2].label));
130
+ expect(document.querySelectorAll('.specOpenSelect')[0]).toHaveTextContent(tc.options[2].label);
131
+ });
132
+ it('removes selected option from multi-select options list', async () => {
133
+ const closeMenuOnSelect = false;
134
+ renderSelect({ ...tc.props, isMulti: true, closeMenuOnSelect });
135
+ await openSelect();
136
+ await userEvent.click(screen.getByText(tc.options[1].label));
137
+ await userEvent.click(screen.getByText(tc.options[2].label));
138
+ expect(document.querySelectorAll('.specSelectOption')).toHaveLength(tc.options.length - 2);
139
+ });
140
+ it('calls onChange handler', async () => {
141
+ const onChange = jest.fn();
142
+ renderSelect({ ...tc.props, onChange });
143
+ await openSelect();
144
+ await userEvent.click(screen.getByText(tc.options[1].label));
145
+ expect(onChange).toHaveBeenCalledWith(tc.options[1]);
146
+ });
147
+ it('includes inputId', async () => {
148
+ const inputId = 'idMe';
149
+ renderSelect({ ...tc.props, inputId });
150
+ expect(document.querySelector(`#${inputId}`)).toBeInTheDocument();
151
+ });
152
+ it('supports creating options', async () => {
153
+ const inputId = 'idMe';
154
+ const favorite = 'Almond Joy';
155
+ renderSelect({ ...tc.props, creatable: true, inputId });
156
+ await openSelect();
157
+ await userEvent.type(document.querySelector(`#${inputId}`), favorite);
158
+ expect(screen.getByText(`Create "${favorite}"`)).toBeInTheDocument();
159
+ });
160
+ it('supports onMenuOpen', async () => {
161
+ const onMenuOpen = jest.fn();
162
+ renderSelect({ ...tc.props, onMenuOpen });
163
+ await openSelect();
164
+ expect(onMenuOpen).toHaveBeenCalled();
165
+ });
166
+ it('supports onMenuClose', async () => {
167
+ const onMenuClose = jest.fn();
168
+ renderSelect({ ...tc.props, onMenuClose });
169
+ await openSelect();
170
+ await userEvent.click(screen.getByText(tc.options[0].label));
171
+ expect(onMenuClose).toHaveBeenCalled();
172
+ });
173
+ it('supports custom components', async () => {
174
+ const components = {
175
+ DropdownIndicator: () => React.createElement("div", { className: "custom" }, "Custom Dropdown"),
176
+ };
177
+ renderSelect({ ...tc.props, components });
178
+ await openSelect();
179
+ expect(document.querySelector('.custom')).toBeInTheDocument();
180
+ });
181
+ });
182
+ //# sourceMappingURL=Select.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.test.js","sourceRoot":"","sources":["../../src/Select/Select.test.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Select.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.types.js","sourceRoot":"","sources":["../../src/Select/Select.types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export { default } from './Select';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ import { Content, List, Root, Trigger } from '@radix-ui/react-tabs';
3
+ import Icon from '../Icon';
4
+ const Tabs = ({ tabs, defaultActiveTab, activeTab, onTabSelect, extraClassNames, testId, id, stretchTabs = false, }) => {
5
+ const handleTabSelect = (tabId) => {
6
+ if (activeTab === tabId)
7
+ return;
8
+ onTabSelect && onTabSelect(tabId);
9
+ };
10
+ return (React.createElement(Root, { className: `tw-flex tw-flex-col tw-min-w-[300px] tw-max-w-full tw-flex-grow focus-visible:tw-outline-none ${extraClassNames || ''}`, defaultValue: defaultActiveTab, "data-testid": testId, id: id, value: activeTab, onValueChange: handleTabSelect },
11
+ React.createElement(List, { className: `tw-flex tw-flex-row tw-flex-wrap tw-z-[1001]` }, tabs.map(({ id, icon, label, tabExtraClassNames, testId: tabsTestId, disabled }, index) => (React.createElement(Trigger, { className: `tw-bg-sq-white dark:tw-bg-sq-dark-background tw-h-[45px] focus-visible:tw-outline-none tw-min-w-[100px] tw-px-4 tw-border-solid dark:tw-border-gray-700 tw-flex tw-flex-1 tw-justify-center tw-items-center tw-border-r-[2px] last:tw-border-r-0 ${stretchTabs ? '' : 'tw-max-w-max tw-min-w-fit'} ${tabExtraClassNames || ''} ${activeTab === id
12
+ ? 'tw-border-b-sq-color-dark dark:tw-border-b-sq-color-dark tw-border-b-[3px]'
13
+ : 'hover:tw-bg-sq-light-gray tw-border-b-[1px] hover:dark:tw-bg-gray-700'}`, "data-testid": tabsTestId, disabled: disabled, key: `${label}-${id}-${index}`, value: id },
14
+ React.createElement("span", null,
15
+ icon && React.createElement(Icon, { icon: icon, testId: `${id}_tab-icon`, extraClassNames: "tw-text-[15px] tw-mr-[7px]" }),
16
+ React.createElement("span", { className: `tw-text-[14px] tw-font-medium ${activeTab === id
17
+ ? 'dark:tw-text-sq-dark-text tw-text-gray-500'
18
+ : 'dark:tw-text-sq-color-dark-dark tw-text-sq-color-dark'}` }, label)))))),
19
+ tabs.map((tab, index) => (React.createElement(Content, { className: `tw-bg-sq-white dark:tw-bg-sq-dark-background tw-overflow-y-auto -tw-mt-[1px] tw-border-t-[1px] tw-z-[500] tw-flex tw-flex-col tw-flex-grow focus-visible:tw-outline-none ${tab.tabContentExtraClassNames || ''}`, key: `${tab.label}_${index}_content`, value: tab.id }, tab.content)))));
20
+ };
21
+ export default Tabs;
22
+ //# sourceMappingURL=Tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../../src/Tabs/Tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,IAAI,MAAM,SAAS,CAAC;AAE3B,MAAM,IAAI,GAAuC,CAAC,EAChD,IAAI,EACJ,gBAAgB,EAChB,SAAS,EACT,WAAW,EACX,eAAe,EACf,MAAM,EACN,EAAE,EACF,WAAW,GAAG,KAAK,GACpB,EAAE,EAAE;IACH,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE;QACxC,IAAI,SAAS,KAAK,KAAK;YAAE,OAAO;QAChC,WAAW,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,IAAI,IACH,SAAS,EAAE,iGACT,eAAe,IAAI,EACrB,EAAE,EACF,YAAY,EAAE,gBAAgB,iBACjB,MAAM,EACnB,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,eAAe;QAC9B,oBAAC,IAAI,IAAC,SAAS,EAAE,8CAA8C,IAC5D,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAC1F,oBAAC,OAAO,IACN,SAAS,EAAE,oPACT,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,2BACrB,IAAI,kBAAkB,IAAI,EAAE,IAC1B,SAAS,KAAK,EAAE;gBACd,CAAC,CAAC,4EAA4E;gBAC9E,CAAC,CAAC,uEACN,EAAE,iBACW,UAAU,EACvB,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,IAAI,KAAK,EAAE,EAC9B,KAAK,EAAE,EAAE;YACT;gBACG,IAAI,IAAI,oBAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,eAAe,EAAC,4BAA4B,GAAG;gBACpG,8BACE,SAAS,EAAE,iCACT,SAAS,KAAK,EAAE;wBACd,CAAC,CAAC,4CAA4C;wBAC9C,CAAC,CAAC,uDACN,EAAE,IACD,KAAK,CACD,CACF,CACC,CACX,CAAC,CACG;QACN,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CACxB,oBAAC,OAAO,IACN,SAAS,EAAE,4KACT,GAAG,CAAC,yBAAyB,IAAI,EACnC,EAAE,EACF,GAAG,EAAE,GAAG,GAAG,CAAC,KAAK,IAAI,KAAK,UAAU,EACpC,KAAK,EAAE,GAAG,CAAC,EAAE,IACZ,GAAG,CAAC,OAAO,CACJ,CACX,CAAC,CACG,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,IAAI,CAAC"}