@seeqdev/qomponents 0.0.157 → 0.0.159-patch-package-alternative

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 (183) hide show
  1. package/dist/example/package.json +15 -13
  2. package/dist/example/src/Example.tsx +269 -39
  3. package/dist/example/src/index.css +1 -0
  4. package/dist/example/vite.config.ts +2 -1
  5. package/dist/index.esm.js +2710 -2706
  6. package/dist/index.esm.js.map +1 -1
  7. package/dist/index.js +2710 -2706
  8. package/dist/index.js.map +1 -1
  9. package/dist/{Accordion → src/Accordion}/Accordion.d.ts +4 -4
  10. package/dist/src/Accordion/Accordion.stories.d.ts +5 -0
  11. package/dist/{Accordion → src/Accordion}/Accordion.test.d.ts +1 -1
  12. package/dist/src/Accordion/Accordion.types.d.ts +86 -0
  13. package/dist/{Accordion → src/Accordion}/index.d.ts +1 -1
  14. package/dist/{Alert → src/Alert}/Alert.d.ts +7 -7
  15. package/dist/src/Alert/Alert.stories.d.ts +5 -0
  16. package/dist/src/Alert/Alert.test.d.ts +1 -0
  17. package/dist/src/Alert/Alert.types.d.ts +63 -0
  18. package/dist/{Alert → src/Alert}/index.d.ts +1 -1
  19. package/dist/{Button → src/Button}/Button.d.ts +10 -10
  20. package/dist/src/Button/Button.stories.d.ts +8 -0
  21. package/dist/{Button → src/Button}/Button.test.d.ts +1 -1
  22. package/dist/src/Button/Button.types.d.ts +148 -0
  23. package/dist/{Button → src/Button}/index.d.ts +1 -1
  24. package/dist/{ButtonGroup → src/ButtonGroup}/ButtonGroup.d.ts +7 -7
  25. package/dist/src/ButtonGroup/ButtonGroup.stories.d.ts +5 -0
  26. package/dist/src/ButtonGroup/ButtonGroup.test.d.ts +1 -0
  27. package/dist/src/ButtonGroup/ButtonGroup.types.d.ts +81 -0
  28. package/dist/{ButtonGroup → src/ButtonGroup}/index.d.ts +1 -1
  29. package/dist/{ButtonWithDropdown → src/ButtonWithDropdown}/ButtonWithDropdown.d.ts +4 -4
  30. package/dist/src/ButtonWithDropdown/ButtonWithDropdown.stories.d.ts +5 -0
  31. package/dist/{ButtonWithDropdown → src/ButtonWithDropdown}/ButtonWithDropdown.test.d.ts +1 -1
  32. package/dist/src/ButtonWithDropdown/ButtonWithDropdown.types.d.ts +233 -0
  33. package/dist/{ButtonWithDropdown → src/ButtonWithDropdown}/index.d.ts +1 -1
  34. package/dist/{ButtonWithPopover → src/ButtonWithPopover}/ButtonWithPopover.d.ts +4 -4
  35. package/dist/src/ButtonWithPopover/ButtonWithPopover.stories.d.ts +5 -0
  36. package/dist/{ButtonWithPopover → src/ButtonWithPopover}/ButtonWithPopover.test.d.ts +1 -1
  37. package/dist/src/ButtonWithPopover/ButtonWithPopover.types.d.ts +134 -0
  38. package/dist/{ButtonWithPopover → src/ButtonWithPopover}/index.d.ts +1 -1
  39. package/dist/{Carousel → src/Carousel}/Carousel.d.ts +9 -9
  40. package/dist/src/Carousel/Carousel.stories.d.ts +5 -0
  41. package/dist/{Carousel → src/Carousel}/Carousel.test.d.ts +1 -1
  42. package/dist/src/Carousel/Carousel.types.d.ts +86 -0
  43. package/dist/{Carousel → src/Carousel}/index.d.ts +1 -1
  44. package/dist/{Checkbox → src/Checkbox}/Checkbox.d.ts +7 -7
  45. package/dist/src/Checkbox/Checkbox.stories.d.ts +5 -0
  46. package/dist/{Checkbox → src/Checkbox}/Checkbox.test.d.ts +1 -1
  47. package/dist/src/Checkbox/Checkbox.types.d.ts +92 -0
  48. package/dist/{Checkbox → src/Checkbox}/index.d.ts +1 -1
  49. package/dist/{Collapse → src/Collapse}/Collapse.d.ts +4 -4
  50. package/dist/src/Collapse/Collapse.stories.d.ts +5 -0
  51. package/dist/{Collapse → src/Collapse}/Collapse.test.d.ts +1 -1
  52. package/dist/src/Collapse/Collapse.types.d.ts +19 -0
  53. package/dist/{Collapse → src/Collapse}/index.d.ts +1 -1
  54. package/dist/{Icon → src/Icon}/Icon.d.ts +10 -10
  55. package/dist/src/Icon/Icon.stories.d.ts +5 -0
  56. package/dist/{Icon → src/Icon}/Icon.test.d.ts +1 -1
  57. package/dist/src/Icon/Icon.types.d.ts +87 -0
  58. package/dist/{Icon → src/Icon}/index.d.ts +1 -1
  59. package/dist/{InputGroup → src/InputGroup}/InputGroup.d.ts +7 -7
  60. package/dist/src/InputGroup/InputGroup.stories.d.ts +5 -0
  61. package/dist/src/InputGroup/InputGroup.test.d.ts +1 -0
  62. package/dist/src/InputGroup/InputGroup.types.d.ts +62 -0
  63. package/dist/{InputGroup → src/InputGroup}/index.d.ts +2 -2
  64. package/dist/{Modal → src/Modal}/Modal.d.ts +5 -5
  65. package/dist/{Modal → src/Modal}/Modal.stories.d.ts +10 -10
  66. package/dist/{Modal → src/Modal}/Modal.test.d.ts +1 -1
  67. package/dist/src/Modal/Modal.types.d.ts +244 -0
  68. package/dist/{Modal → src/Modal}/index.d.ts +1 -1
  69. package/dist/{ProgressBar → src/ProgressBar}/ProgressBar.d.ts +4 -4
  70. package/dist/src/ProgressBar/ProgressBar.stories.d.ts +5 -0
  71. package/dist/src/ProgressBar/ProgressBar.test.d.ts +1 -0
  72. package/dist/src/ProgressBar/ProgressBar.types.d.ts +77 -0
  73. package/dist/{ProgressBar → src/ProgressBar}/index.d.ts +1 -1
  74. package/dist/{SeeqActionDropdown → src/SeeqActionDropdown}/SeeqActionDropdown.d.ts +4 -4
  75. package/dist/src/SeeqActionDropdown/SeeqActionDropdown.stories.d.ts +5 -0
  76. package/dist/{SeeqActionDropdown → src/SeeqActionDropdown}/SeeqActionDropdown.test.d.ts +1 -1
  77. package/dist/src/SeeqActionDropdown/SeeqActionDropdown.types.d.ts +160 -0
  78. package/dist/{SeeqActionDropdown → src/SeeqActionDropdown}/index.d.ts +1 -1
  79. package/dist/{SeeqActionDropdown → src/SeeqActionDropdown}/variants.d.ts +5 -5
  80. package/dist/{Select → src/Select}/Select.d.ts +15 -15
  81. package/dist/src/Select/Select.stories.d.ts +5 -0
  82. package/dist/{Select → src/Select}/Select.test.d.ts +1 -1
  83. package/dist/src/Select/Select.types.d.ts +220 -0
  84. package/dist/{Select → src/Select}/index.d.ts +2 -2
  85. package/dist/{Slider → src/Slider}/Slider.d.ts +6 -6
  86. package/dist/src/Slider/Slider.stories.d.ts +5 -0
  87. package/dist/src/Slider/Slider.test.d.ts +1 -0
  88. package/dist/src/Slider/Slider.types.d.ts +85 -0
  89. package/dist/{Slider → src/Slider}/index.d.ts +1 -1
  90. package/dist/{SvgIcon → src/SvgIcon}/SvgIcon.d.ts +20 -20
  91. package/dist/src/SvgIcon/SvgIcon.stories.d.ts +5 -0
  92. package/dist/{SvgIcon → src/SvgIcon}/SvgIcon.test.d.ts +1 -1
  93. package/dist/src/SvgIcon/SvgIcon.types.d.ts +76 -0
  94. package/dist/{SvgIcon → src/SvgIcon}/index.d.ts +1 -1
  95. package/dist/{Tabs → src/Tabs}/Tabs.d.ts +4 -4
  96. package/dist/src/Tabs/Tabs.stories.d.ts +5 -0
  97. package/dist/{Tabs → src/Tabs}/Tabs.test.d.ts +1 -1
  98. package/dist/src/Tabs/Tabs.types.d.ts +95 -0
  99. package/dist/{Tabs → src/Tabs}/index.d.ts +1 -1
  100. package/dist/{TextArea → src/TextArea}/TextArea.d.ts +7 -7
  101. package/dist/src/TextArea/TextArea.stories.d.ts +5 -0
  102. package/dist/{TextArea → src/TextArea}/TextArea.test.d.ts +1 -1
  103. package/dist/src/TextArea/TextArea.types.d.ts +105 -0
  104. package/dist/{TextArea → src/TextArea}/index.d.ts +1 -1
  105. package/dist/{TextField → src/TextField}/TextField.d.ts +7 -7
  106. package/dist/src/TextField/TextField.stories.d.ts +5 -0
  107. package/dist/{TextField → src/TextField}/TextField.test.d.ts +1 -1
  108. package/dist/src/TextField/TextField.types.d.ts +199 -0
  109. package/dist/{TextField → src/TextField}/index.d.ts +1 -1
  110. package/dist/{ToolbarButton → src/ToolbarButton}/ToolbarButton.d.ts +3 -3
  111. package/dist/src/ToolbarButton/ToolbarButton.stories.d.ts +5 -0
  112. package/dist/{ToolbarButton → src/ToolbarButton}/ToolbarButton.test.d.ts +1 -1
  113. package/dist/src/ToolbarButton/ToolbarButton.types.d.ts +124 -0
  114. package/dist/{ToolbarButton → src/ToolbarButton}/index.d.ts +1 -1
  115. package/dist/src/Tooltip/QTip.stories.d.ts +5 -0
  116. package/dist/{Tooltip → src/Tooltip}/QTip.types.d.ts +13 -13
  117. package/dist/src/Tooltip/QTipPerformance.stories.d.ts +5 -0
  118. package/dist/{Tooltip → src/Tooltip}/Qtip.d.ts +26 -26
  119. package/dist/{Tooltip → src/Tooltip}/Tooltip.d.ts +13 -13
  120. package/dist/src/Tooltip/Tooltip.stories.d.ts +5 -0
  121. package/dist/{Tooltip → src/Tooltip}/Tooltip.types.d.ts +22 -22
  122. package/dist/src/Tooltip/TooltipPerformance.stories.d.ts +5 -0
  123. package/dist/{Tooltip → src/Tooltip}/index.d.ts +2 -2
  124. package/dist/{Tooltip → src/Tooltip}/qTip.utilities.d.ts +3 -3
  125. package/dist/{index.d.ts → src/index.d.ts} +45 -45
  126. package/dist/src/setupTests.d.ts +1 -0
  127. package/dist/{types.d.ts → src/types.d.ts} +2 -2
  128. package/dist/{utils → src/utils}/browserId.d.ts +9 -9
  129. package/dist/{utils → src/utils}/svg.d.ts +15 -15
  130. package/dist/{utils → src/utils}/validateStyleDimension.d.ts +2 -2
  131. package/dist/{utils → src/utils}/validateStyleDimension.test.d.ts +1 -1
  132. package/dist/styles.css +98 -67
  133. package/package.json +21 -21
  134. package/dist/Accordion/Accordion.stories.d.ts +0 -6
  135. package/dist/Accordion/Accordion.types.d.ts +0 -20
  136. package/dist/Alert/Alert.stories.d.ts +0 -6
  137. package/dist/Alert/Alert.test.d.ts +0 -1
  138. package/dist/Alert/Alert.types.d.ts +0 -14
  139. package/dist/Button/Button.stories.d.ts +0 -9
  140. package/dist/Button/Button.types.d.ts +0 -53
  141. package/dist/ButtonGroup/ButtonGroup.stories.d.ts +0 -6
  142. package/dist/ButtonGroup/ButtonGroup.test.d.ts +0 -1
  143. package/dist/ButtonGroup/ButtonGroup.types.d.ts +0 -40
  144. package/dist/ButtonWithDropdown/ButtonWithDropdown.stories.d.ts +0 -6
  145. package/dist/ButtonWithDropdown/ButtonWithDropdown.types.d.ts +0 -90
  146. package/dist/ButtonWithPopover/ButtonWithPopover.stories.d.ts +0 -6
  147. package/dist/ButtonWithPopover/ButtonWithPopover.types.d.ts +0 -48
  148. package/dist/Carousel/Carousel.stories.d.ts +0 -6
  149. package/dist/Carousel/Carousel.types.d.ts +0 -24
  150. package/dist/Checkbox/Checkbox.stories.d.ts +0 -6
  151. package/dist/Checkbox/Checkbox.types.d.ts +0 -20
  152. package/dist/Collapse/Collapse.stories.d.ts +0 -6
  153. package/dist/Collapse/Collapse.types.d.ts +0 -5
  154. package/dist/Icon/Icon.stories.d.ts +0 -6
  155. package/dist/Icon/Icon.types.d.ts +0 -31
  156. package/dist/InputGroup/InputGroup.stories.d.ts +0 -6
  157. package/dist/InputGroup/InputGroup.test.d.ts +0 -1
  158. package/dist/InputGroup/InputGroup.types.d.ts +0 -36
  159. package/dist/Modal/Modal.types.d.ts +0 -48
  160. package/dist/ProgressBar/ProgressBar.stories.d.ts +0 -6
  161. package/dist/ProgressBar/ProgressBar.test.d.ts +0 -1
  162. package/dist/ProgressBar/ProgressBar.types.d.ts +0 -30
  163. package/dist/SeeqActionDropdown/SeeqActionDropdown.stories.d.ts +0 -6
  164. package/dist/SeeqActionDropdown/SeeqActionDropdown.types.d.ts +0 -58
  165. package/dist/Select/Select.stories.d.ts +0 -6
  166. package/dist/Select/Select.types.d.ts +0 -89
  167. package/dist/Slider/Slider.stories.d.ts +0 -6
  168. package/dist/Slider/Slider.test.d.ts +0 -1
  169. package/dist/Slider/Slider.types.d.ts +0 -17
  170. package/dist/SvgIcon/SvgIcon.stories.d.ts +0 -6
  171. package/dist/SvgIcon/SvgIcon.types.d.ts +0 -25
  172. package/dist/Tabs/Tabs.stories.d.ts +0 -6
  173. package/dist/Tabs/Tabs.types.d.ts +0 -21
  174. package/dist/TextArea/TextArea.stories.d.ts +0 -6
  175. package/dist/TextArea/TextArea.types.d.ts +0 -35
  176. package/dist/TextField/TextField.stories.d.ts +0 -6
  177. package/dist/TextField/TextField.types.d.ts +0 -40
  178. package/dist/ToolbarButton/ToolbarButton.stories.d.ts +0 -6
  179. package/dist/ToolbarButton/ToolbarButton.types.d.ts +0 -53
  180. package/dist/Tooltip/QTip.stories.d.ts +0 -6
  181. package/dist/Tooltip/QTipPerformance.stories.d.ts +0 -6
  182. package/dist/Tooltip/Tooltip.stories.d.ts +0 -6
  183. package/dist/Tooltip/TooltipPerformance.stories.d.ts +0 -6
@@ -11,20 +11,22 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "@fortawesome/fontawesome-free": "^6.4.0",
14
- "@seeqdev/qomponents": "0.0.72",
15
- "react": "^18.2.0",
16
- "react-dom": "^18.2.0"
14
+ "@seeqdev/qomponents": "0.0.153",
15
+ "@tailwindcss/vite": "4.1.8",
16
+ "react": "18.2.0",
17
+ "react-dom": "18.2.0",
18
+ "tailwindcss": "4.1.8"
17
19
  },
18
20
  "devDependencies": {
19
- "@types/react": "^18.0.37",
20
- "@types/react-dom": "^18.0.11",
21
- "@typescript-eslint/eslint-plugin": "^5.59.0",
22
- "@typescript-eslint/parser": "^5.59.0",
23
- "@vitejs/plugin-react": "^4.0.0",
24
- "eslint": "^8.38.0",
25
- "eslint-plugin-react-hooks": "^4.6.0",
26
- "eslint-plugin-react-refresh": "^0.3.4",
27
- "typescript": "^5.0.2",
28
- "vite": "^4.3.9"
21
+ "@types/react": "18.0.37",
22
+ "@types/react-dom": "18.0.11",
23
+ "@typescript-eslint/eslint-plugin": "5.59.0",
24
+ "@typescript-eslint/parser": "5.59.0",
25
+ "@vitejs/plugin-react": "4.5.1",
26
+ "eslint": "8.38.0",
27
+ "eslint-plugin-react-hooks": "4.6.0",
28
+ "eslint-plugin-react-refresh": "0.3.4",
29
+ "typescript": "5.0.2",
30
+ "vite": "6.3.5"
29
31
  }
30
32
  }
@@ -12,9 +12,17 @@ import {
12
12
  TextArea,
13
13
  TextField,
14
14
  ToolbarButton,
15
+ Accordion,
16
+ Alert,
17
+ ButtonGroup,
18
+ Carousel,
19
+ Collapse,
20
+ InputGroup,
21
+ ProgressBar,
22
+ SeeqActionDropdown,
23
+ Slider,
15
24
  } from '@seeqdev/qomponents';
16
25
  import ComplexSelectExample, { SelectOption } from './ComplexSelectExample';
17
- import Accordion from '../../src/Accordion';
18
26
 
19
27
  const availableThemes = [
20
28
  { display: 'Analysis', value: 'color_analysis' },
@@ -29,8 +37,8 @@ const options = [
29
37
  ];
30
38
 
31
39
  const Trigger = ({ label }: { label: string }) => (
32
- <div className="tw-flex tw-justify-start tw-items-center tw-border-b tw-px-2 tw-text-sq-color-dark">
33
- <Icon icon="fc-arrow-dropdown" extraClassNames="tw-text-sq-color-dark tw-mr-[0.5rem] tw-text-[0.75rem]" type="text" />
40
+ <div className="flex justify-start items-center border-b px-2 tw-text-sq-color-dark">
41
+ <Icon icon="fc-arrow-dropdown" extraClassNames="tw-text-sq-color-dark mr-[0.5rem] text-[0.75rem]" type="text" />
34
42
  {label}
35
43
  </div>
36
44
  );
@@ -42,7 +50,7 @@ const accordionItems = [
42
50
  itemTestId: 'phonecall',
43
51
  trigger: <Trigger label="Phone" />,
44
52
  content: (
45
- <div className="tw-p-2 tw-text-[0.8125rem] dark:tw-text-sq-white">
53
+ <div className="p-2 text-[0.8125rem] dark:tw-text-sq-white">
46
54
  If you need to reach us, please call us at 555-555-5555.
47
55
  </div>
48
56
  ),
@@ -53,7 +61,7 @@ const accordionItems = [
53
61
  itemTestId: 'email',
54
62
  trigger: <Trigger label="Email" />,
55
63
  content: (
56
- <div className="tw-p-2 tw-text-[0.8125rem] dark:tw-text-sq-white">
64
+ <div className="p-2 text-[0.8125rem] dark:text-sq-white">
57
65
  If you need to reach us, please mail example@seeqtest.com
58
66
  </div>
59
67
  ),
@@ -64,7 +72,7 @@ const accordionItems = [
64
72
  itemTestId: 'address',
65
73
  trigger: <Trigger label="Address" />,
66
74
  content: (
67
- <div className="tw-p-2 tw-text-[0.8125rem] dark:tw-text-sq-white">
75
+ <div className="p-2 text-[0.8125rem] dark:tw-text-sq-white">
68
76
  If you need to reach us, please visit us at 1234 Main St., Anytown, USA.
69
77
  </div>
70
78
  ),
@@ -72,8 +80,8 @@ const accordionItems = [
72
80
  ];
73
81
 
74
82
  const renderData = (text: string) => (
75
- <div className="tw-text-sq-color-gray dark:tw-text-sq-white tw-p-6">
76
- <p className="tw-mb-5 tw-text-[0.9375rem] tw-leading-normal">{text}</p>
83
+ <div className="tw-text-sq-color-gray dark:tw-text-sq-white p-6">
84
+ <p className="mb-5 text-[0.9375rem] leading-normal">{text}</p>
77
85
  </div>
78
86
  );
79
87
 
@@ -108,11 +116,13 @@ function Example() {
108
116
  */
109
117
  const [theme, setTheme] = React.useState('color_analysis');
110
118
  /**
111
- * qomponents also support dark-mode. To render qomponents using dark-mode wrap your addOn in a div and assign the
119
+ * qomponents also support tw-dark. To render qomponents using tw-dark wrap your addOn in a div and assign the
112
120
  * class "tw-dark" for dark-mode or "tw-light" for light mode.
113
121
  */
114
122
  const [mode, setMode] = React.useState('tw-light');
115
123
 
124
+ const [btGroupType, setBtGroupType] = React.useState('left');
125
+
116
126
  /**
117
127
  * This example uses controlled inputs (https://blog.logrocket.com/controlled-vs-uncontrolled-components-in-react/)
118
128
  */
@@ -120,7 +130,7 @@ function Example() {
120
130
  const [textAreaValue, setTextAreaValue] = React.useState('');
121
131
  const [selectValue, setSelectValue] = React.useState();
122
132
  const [complexSelectedValue, setComplexSelectedValue] = React.useState<SelectOption>();
123
- const [display, setDisplay] = React.useState('');
133
+ const [alertDisplay, setAlertDisplay] = React.useState('success');
124
134
  const [easeOfUse, setEaseOfUse] = React.useState(false);
125
135
  const [lookAndFeel, setLookAndFeel] = React.useState(false);
126
136
  const [speed, setSpeed] = React.useState(false);
@@ -130,9 +140,12 @@ function Example() {
130
140
  const [modalOpen, setModalOpen] = React.useState(false);
131
141
  const [modalTitle, setModalTitle] = React.useState('Modal Title');
132
142
  const [activeTab, setActiveTab] = React.useState('plugins');
143
+ const [collapseVisible, setCollapseVisible] = React.useState(false);
144
+ const [inputGroupValue, setInputGroupValue] = React.useState('');
145
+ const [sliderValue, setSliderValue] = React.useState<number>(50);
133
146
 
134
147
  return (
135
- // outer-wrapper div that assigns the mode (dark-mode or light) as well as the theme
148
+ // outer-wrapper div that assigns the mode (tw-dark or light) as well as the theme
136
149
  <div className={`backdrop ${mode} ${theme}`}>
137
150
  {/*add the QTip component at the very top level or your application to ensure your tooltips display as expected!*/}
138
151
  <QTip />
@@ -171,6 +184,7 @@ function Example() {
171
184
  <div className="labelWidth">Select theme:</div>
172
185
  {availableThemes.map((t) => (
173
186
  <Checkbox
187
+ key={t.value}
174
188
  type="radio"
175
189
  checked={theme === t.value}
176
190
  value={t.value}
@@ -232,7 +246,7 @@ function Example() {
232
246
  </div>
233
247
  <div className="formRow">
234
248
  <div className="labelWidth">Website tools</div>
235
- <div className="formElementWidth tw-border tw-rounded-sm">
249
+ <div className="formElementWidth border rounded-sm">
236
250
  <Tabs
237
251
  stretchTabs={true}
238
252
  activeTab={activeTab}
@@ -244,7 +258,7 @@ function Example() {
244
258
  </div>
245
259
  <div className="formRow">
246
260
  <div className="labelWidth">Get help</div>
247
- <div className="formElementWidth tw-border tw-rounded-sm">
261
+ <div className="formElementWidth border rounded-sm">
248
262
  <Accordion
249
263
  accordionItems={accordionItems}
250
264
  value={help}
@@ -255,7 +269,7 @@ function Example() {
255
269
  </div>
256
270
  <div className="formRow">
257
271
  <div className="labelWidth">Tools</div>
258
- <div className="formElementWidth formRow tw-border tw-rounded-sm tw-p-4 tw-flex tw-justify-center">
272
+ <div className="formElementWidth formRow border rounded-sm p-4 flex justify-center">
259
273
  <ToolbarButton
260
274
  icon="fc-y-axis"
261
275
  label="Analyzer"
@@ -265,15 +279,15 @@ function Example() {
265
279
  tooltipOptions={{ position: 'top', delay: 0 }}
266
280
  isHtmlTooltip={false}
267
281
  popoverContent={
268
- <div className="tw-text-sm dark:tw-text-white">
269
- <p className="tw-p-2">Select file from your computer or google drive</p>
282
+ <div className="text-sm dark:text-white">
283
+ <p className="p-2">Select file from your computer or google drive</p>
270
284
  <Button type="button" label="Click to select file" />
271
285
  </div>
272
286
  }
273
287
  />
274
288
  <ToolbarButton
275
289
  icon="fc-sun"
276
- label={mode === 'tw-light' ? 'Dark Mode' : 'Light Mode'}
290
+ label={mode === 'light' ? 'Dark Mode' : 'Light Mode'}
277
291
  testId="basic-toggler"
278
292
  isActive={mode === 'tw-light'}
279
293
  tooltipText="Toggle light and dark modes"
@@ -301,7 +315,7 @@ function Example() {
301
315
  <Icon
302
316
  icon="fc-more"
303
317
  type="text"
304
- extraClassNames="tw-text-sq-text-color dark:tw-text-sq-white tw-w-[18px]"
318
+ extraClassNames="tw-text-sq-text-color dark:tw-text-sq-white w-[18px]"
305
319
  />
306
320
  }
307
321
  containerTestId="basic-dropdown1"
@@ -326,7 +340,7 @@ function Example() {
326
340
  />
327
341
  </div>
328
342
  </div>
329
- <div className="formRow tw-mt-4">
343
+ <div className="formRow mt-4">
330
344
  <div className="labelWidth">More information</div>
331
345
  <div className="formElementWidth">
332
346
  <ButtonWithPopover
@@ -339,8 +353,8 @@ function Example() {
339
353
  tooltipPlacement="top"
340
354
  hasArrow
341
355
  isHtmlTooltip={false}>
342
- <div className="tw-text-sm dark:tw-text-white tw-w-72 tw-p-4">
343
- <p className="tw-font-bold">What are plugins?</p>
356
+ <div className="text-sm dark:text-white w-72 p-4">
357
+ <p className="font-bold">What are plugins?</p>
344
358
  Plugins are modular software components that extend the functionality of an application. They allow
345
359
  users to add new features or customize existing ones. Plugins can be easily integrated into an
346
360
  application and provide a way to enhance its capabilities without modifying the core codebase.Plugins
@@ -349,7 +363,7 @@ function Example() {
349
363
  </ButtonWithPopover>
350
364
  </div>
351
365
  </div>
352
- <div className="formRow">
366
+ <div className="formRow mt-4">
353
367
  <div className="labelWidth">Accept terms</div>
354
368
  <div className="formElementWidth">
355
369
  <Button
@@ -381,24 +395,240 @@ function Example() {
381
395
  </Modal>
382
396
  </div>
383
397
  </div>
384
- <div className="buttonRow">
385
- <Button
386
- label="Cancel"
387
- onClick={() => {
388
- setDisplay('cancel');
389
- }}
390
- extraClassNames="mr-10"
391
- />
392
- <Button
393
- label="Submit"
394
- onClick={() => {
395
- setDisplay('success');
396
- }}
397
- variant="theme"
398
- />
398
+ <div className="formRow mt-8">
399
+ <div className="labelWidth">Button example</div>
400
+ <div className="formElementWidth">
401
+ <div className="flex gap-2 mb-4">
402
+ <Button label="Show Success" onClick={() => setAlertDisplay('success')} variant="theme" />
403
+ <Button label="Show Cancel" onClick={() => setAlertDisplay('cancel')} variant="danger" />
404
+ <Button label="Show Info" onClick={() => setAlertDisplay('info')} variant="outline" />
405
+ </div>
406
+ </div>
407
+ </div>
408
+ {/* Alert Example: Show info, success, or warning based on form submission */}
409
+ <div className="formRow mt-8">
410
+ <div className="labelWidth">Alert example</div>
411
+ <div className="formElementWidth">
412
+ {alertDisplay === 'success' && (
413
+ <Alert variant="theme" testId="alert-success" dismissible>
414
+ <div className="font-bold">Submission Successful</div>
415
+ <div>
416
+ Your add-on details have been submitted successfully. Thank you for contributing to the Seeq Add-on
417
+ ecosystem!
418
+ </div>
419
+ </Alert>
420
+ )}
421
+ {alertDisplay === 'cancel' && (
422
+ <Alert variant="warning" testId="alert-cancel" dismissible>
423
+ <div className="font-bold">Submission Cancelled</div>
424
+ <div>You have cancelled the submission. No changes were saved.</div>
425
+ </Alert>
426
+ )}
427
+ {alertDisplay === 'info' && (
428
+ <Alert variant="gray" testId="alert-info" dismissible>
429
+ <div className="font-bold">Ready to Submit</div>
430
+ <div>Fill out the form and click Submit to add your new add-on to Seeq.</div>
431
+ </Alert>
432
+ )}
433
+ </div>
434
+ </div>
435
+ {/* ButtonGroup Example: Show and select a display type */}
436
+ <div className="formRow mt-8">
437
+ <div className="labelWidth">ButtonGroup example</div>
438
+ <div className="formElementWidth">
439
+ <ButtonGroup
440
+ buttons={[
441
+ {
442
+ variant: 'button',
443
+ buttonProps: {
444
+ label: 'Left',
445
+ value: 'left',
446
+ variant: 'outline',
447
+ isActive: btGroupType === 'left',
448
+ },
449
+ },
450
+ {
451
+ variant: 'button',
452
+ buttonProps: {
453
+ label: 'Center',
454
+ value: 'center',
455
+ variant: 'outline',
456
+ isActive: btGroupType === 'center',
457
+ },
458
+ },
459
+ {
460
+ variant: 'button',
461
+ buttonProps: {
462
+ label: 'Right',
463
+ value: 'right',
464
+ variant: 'outline',
465
+ isActive: btGroupType === 'right',
466
+ },
467
+ },
468
+ ]}
469
+ onChange={(type) => setBtGroupType(type)}
470
+ extraClassNames="mb-4"
471
+ />
472
+ </div>
473
+ </div>
474
+ {/* Carousel Example: Show a set of images with captions, allow navigation */}
475
+ <div className="formRow mt-8 h-60">
476
+ <div className="labelWidth">Carousel example</div>
477
+ <div className="formElementWidth">
478
+ <Carousel
479
+ carouselItems={[
480
+ <div className="flex flex-col items-center justify-center p-4" key="slide1">
481
+ <img
482
+ src="https://images.unsplash.com/photo-1506744038136-46273834b3fb?auto=format&fit=crop&w=400&h=250&q=80"
483
+ alt="Mountains"
484
+ className="w-48 h-32 object-cover rounded-md mb-2"
485
+ />
486
+ <div className="font-bold">Explore the Mountains</div>
487
+ <div className="text-xs tw-text-sq-color-gray">Find peace in nature's beauty.</div>
488
+ </div>,
489
+ <div className="flex flex-col items-center justify-center p-4" key="slide2">
490
+ <img
491
+ src="https://images.unsplash.com/photo-1465101046530-73398c7f28ca?auto=format&fit=crop&w=400&h=250&q=80"
492
+ alt="City"
493
+ className="w-48 h-32 object-cover rounded-md mb-2"
494
+ />
495
+ <div className="font-bold">City Lights</div>
496
+ <div className="text-xs tw-text-sq-color-gray">Experience the energy of the city.</div>
497
+ </div>,
498
+ <div className="flex flex-col items-center justify-center p-4" key="slide3">
499
+ <img
500
+ src="https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=400&h=250&q=80"
501
+ alt="Beach"
502
+ className="w-48 h-32 object-cover rounded-md mb-2"
503
+ />
504
+ <div className="font-bold">Relax at the Beach</div>
505
+ <div className="text-xs tw-text-sq-color-gray">Soak up the sun and surf.</div>
506
+ </div>,
507
+ ]}
508
+ showArrows={false}
509
+ continuous={true}
510
+ showIndicators
511
+ autoSlide={false}
512
+ testId="carousel-example"
513
+ extraClassNames="rounded-md shadow-sm mb-4"
514
+ />
515
+ </div>
516
+ </div>
517
+ {/* Collapse Example: Expand/collapse a section for additional details */}
518
+ <div className="formRow mt-8">
519
+ <div className="labelWidth">Collapse example</div>
520
+ <div className="formElementWidth">
521
+ <Button
522
+ label={collapseVisible ? 'Hide advanced options' : 'Show advanced options'}
523
+ variant="outline"
524
+ onClick={() => setCollapseVisible((v) => !v)}
525
+ extraClassNames="mb-2"
526
+ />
527
+ <Collapse isVisible={collapseVisible}>
528
+ <div className="p-4 mt-2 bg-transparent rounded-md">
529
+ <div className="font-bold">Advanced Settings</div>
530
+ <div className="text-xs tw-text-sq-color-gray">Configure rarely used options here.</div>
531
+ <Checkbox label="Enable beta features" />
532
+ <Checkbox label="Show debug info" />
533
+ </div>
534
+ </Collapse>
535
+ </div>
536
+ </div>
537
+ {/* SeeqActionDropdown Example: Contextual actions for a document */}
538
+ <div className="formRow mt-8">
539
+ <div className="labelWidth">SeeqActionDropdown example</div>
540
+ <div className="formElementWidth">
541
+ <SeeqActionDropdown
542
+ seeqActionDropdownItems={[
543
+ {
544
+ display: 'Edit Document',
545
+ icon: 'fc-edit',
546
+ action: () => alert('Edit action triggered!'),
547
+ text: 'Edit the selected document',
548
+ enabled: true,
549
+ },
550
+ {
551
+ display: 'Share',
552
+ icon: 'fc-share',
553
+ action: () => alert('Share action triggered!'),
554
+ text: 'Share the selected document',
555
+ enabled: true,
556
+ },
557
+ {
558
+ display: 'Delete',
559
+ icon: 'fc-delete',
560
+ action: () => alert('Delete action triggered!'),
561
+ text: 'Delete the selected document',
562
+ enabled: true,
563
+ },
564
+ ]}
565
+ trigger={<Button label="Actions" icon="fc-more" variant="outline" extraClassNames="w-32" />}
566
+ variant="create-workbench"
567
+ id="seeq-action-dropdown-example"
568
+ />
569
+ </div>
570
+ </div>
571
+ {/* InputGroup Example: Input with edit and delete icon buttons */}
572
+ <div className="formRow mt-8">
573
+ <div className="labelWidth">InputGroup example</div>
574
+ <div className="formElementWidth">
575
+ <InputGroup
576
+ value={inputGroupValue}
577
+ onChange={(e) => setInputGroupValue(e.target.value)}
578
+ placeholder="Enter item name"
579
+ append={[
580
+ {
581
+ variant: 'button',
582
+ buttonProps: {
583
+ icon: 'fc-edit',
584
+ variant: 'outline',
585
+ onClick: () => setInputGroupValue('Edit clicked'),
586
+ },
587
+ },
588
+ {
589
+ variant: 'button',
590
+ buttonProps: {
591
+ icon: 'fc-delete',
592
+ variant: 'outline',
593
+ onClick: () => setInputGroupValue('Delete clicked'),
594
+ },
595
+ },
596
+ ]}
597
+ extraClassNames="flex-1"
598
+ />
599
+ </div>
600
+ </div>
601
+ {/* ProgressBar Example: Show progress of a task */}
602
+ <div className="formRow mt-8">
603
+ <div className="labelWidth">ProgressBar example</div>
604
+ <div className="formElementWidth flex flex-col items-start gap-1">
605
+ <ProgressBar
606
+ values={[
607
+ { value: 85, label: 'Uploading orders', color: '#0491c2' },
608
+ { value: 90, label: 'Processing invoices', color: '#f59e42' },
609
+ ]}
610
+ max={200}
611
+ containerExtraClasses="w-full"
612
+ />
613
+ <span className="text-xs text-[#0491c2]">Uploading orders... 85%</span>
614
+ <span className="text-xs text-[#f59e42]">Processing invoices... 90%</span>
615
+ </div>
616
+ </div>
617
+ {/* Slider Example: Adjust a value with immediate feedback */}
618
+ <div className="formRow mt-8">
619
+ <div className="labelWidth">Slider example</div>
620
+ <div className="formElementWidth flex items-center gap-4">
621
+ <Slider
622
+ min={0}
623
+ max={100}
624
+ step={5}
625
+ value={sliderValue}
626
+ onValueChange={(val: number[]) => setSliderValue(val[0])}
627
+ rootExtraClassNames="w-64"
628
+ />
629
+ <span className="text-xs text-sq-color-gray">Current value: {sliderValue}</span>
630
+ </div>
399
631
  </div>
400
- {display === 'success' && <div>submit button onClick function was called</div>}
401
- {display === 'cancel' && <div>cancel button onClick function was called</div>}
402
632
  </div>
403
633
  </div>
404
634
  </div>
@@ -1,5 +1,6 @@
1
1
  @import '@seeqdev/qomponents/dist/styles.css';
2
2
  @import '@fortawesome/fontawesome-free/css/all.css';
3
+ @import 'tailwindcss';
3
4
 
4
5
  .tw-light {
5
6
  background-color: white;
@@ -1,9 +1,10 @@
1
1
  import { defineConfig } from 'vite';
2
2
  import react from '@vitejs/plugin-react';
3
+ import tailwindcss from '@tailwindcss/vite'
3
4
 
4
5
  // https://vitejs.dev/config/
5
6
  export default defineConfig({
6
- plugins: [react()],
7
+ plugins: [react(), tailwindcss()],
7
8
  css: {
8
9
  postcss: {
9
10
  plugins: [],