groovinads-ui 1.9.7 → 1.9.9

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.
package/index.d.ts CHANGED
@@ -9,6 +9,7 @@ export interface ButtonProps {
9
9
  className?: string;
10
10
  disabled?: boolean;
11
11
  endIcon?: string;
12
+ hideLabelOnDesktop?: boolean;
12
13
  hideLabelOnMobile?: boolean;
13
14
  onClick?: MouseEventHandler<HTMLButtonElement>;
14
15
  processing?: boolean;
@@ -32,10 +33,20 @@ export interface DropdownComponentProps {
32
33
  disabled?: boolean;
33
34
  drop?: 'up' | 'down' | 'start' | 'end';
34
35
  fullWidth?: boolean;
36
+ icon?: string;
37
+ isChild?: boolean;
38
+ label?: ReactNode;
35
39
  onToggle?: (show: boolean) => void;
36
40
  overflow?: boolean;
41
+ processing?: boolean;
42
+ requiredText?: string;
43
+ selectedValue?: ReactNode;
37
44
  setShow?: Dispatch<SetStateAction<boolean>>;
38
45
  show?: boolean;
46
+ showError?: boolean;
47
+ size?: 'xs' | 'md' | 'lg';
48
+ style?: 'default' | 'success' | 'danger' | 'warning' | 'link';
49
+ variant?: 'primary' | 'secondary' | 'terciary' | 'outline' | 'input';
39
50
  }
40
51
 
41
52
  export const DropdownComponent: React.FC<DropdownComponentProps>;
@@ -214,20 +225,42 @@ export interface InputEmailProps {
214
225
  export const InputEmail: React.FC<InputEmailProps>;
215
226
 
216
227
  export interface InputChipProps {
217
- chips?: string[];
228
+ autoFocus?: boolean;
218
229
  className?: string;
230
+ counter?: boolean;
219
231
  disabled?: boolean;
232
+ duplicateKeywordErrorText?: string;
220
233
  helpText?: string;
221
- label?: string;
222
- maxChips?: number;
223
- name?: string;
224
- onChipsChange?: (chips: string[]) => void;
225
- placeholder?: string;
226
- size?: 'xs' | 'md' | 'lg';
234
+ keywordsList: string[];
235
+ maxKeywords: number;
236
+ maxKeywordLength: number;
237
+ pillColor?: 'blue' | 'danger' | 'dark' | 'green' | 'light' | 'midtone' | 'neutral' | 'red' | 'yellow';
238
+ placeholder: string;
239
+ recomendedKeywords: number;
240
+ requiredText: string;
241
+ setKeywordsList: (keywords: string[]) => void;
227
242
  }
228
243
 
229
244
  export const InputChip: React.FC<InputChipProps>;
230
245
 
246
+ export interface SliderProps {
247
+ className?: string;
248
+ disabled?: boolean;
249
+ label?: string;
250
+ labelInputMax?: string;
251
+ labelInputMin?: string;
252
+ max?: number;
253
+ min?: number;
254
+ onChange?: (value: number | [number, number]) => void;
255
+ orientation?: 'horizontal' | 'vertical';
256
+ range?: boolean;
257
+ step?: number;
258
+ tooltip?: boolean;
259
+ value?: number | [number, number];
260
+ }
261
+
262
+ export const Slider: React.FC<SliderProps>;
263
+
231
264
  // ============================================================================
232
265
  // LABEL COMPONENTS
233
266
  // ============================================================================
@@ -244,6 +277,25 @@ export interface AlertProps {
244
277
 
245
278
  export const Alert: React.FC<AlertProps>;
246
279
 
280
+ export interface BlockIconProps {
281
+ className?: string;
282
+ color?: 'green' | 'grey' | 'yellow' | 'red' | 'danger' | 'neutral' | 'blue' | 'light' | 'midtone' | 'dark';
283
+ name?: string;
284
+ size?: 'xs' | 'md' | 'lg';
285
+ }
286
+
287
+ export const BlockIcon: React.FC<BlockIconProps>;
288
+
289
+ export interface EditableContentProps {
290
+ as: string;
291
+ className?: string;
292
+ onChange: (value: string) => void;
293
+ onSave: (value: string) => Promise<void>;
294
+ value?: string;
295
+ }
296
+
297
+ export const EditableContent: React.FC<EditableContentProps>;
298
+
247
299
  export interface IconProps {
248
300
  className?: string;
249
301
  iconName: string;
@@ -261,10 +313,12 @@ export interface LoginSourceProps {
261
313
  export const LoginSource: React.FC<LoginSourceProps>;
262
314
 
263
315
  export interface PillComponentProps {
316
+ children?: ReactNode;
264
317
  className?: string;
265
- icon?: string;
266
- label: string;
267
- variant?: 'primary' | 'secondary' | 'success' | 'danger' | 'warning' | 'info' | 'light' | 'dark';
318
+ closeButton?: boolean;
319
+ color?: 'green' | 'yellow' | 'red' | 'danger' | 'neutral' | 'blue' | 'light' | 'midtone' | 'dark';
320
+ disabled?: boolean;
321
+ onClick?: MouseEventHandler<HTMLButtonElement>;
268
322
  }
269
323
 
270
324
  export const PillComponent: React.FC<PillComponentProps>;
@@ -277,6 +331,19 @@ export interface SpinnerProps {
277
331
 
278
332
  export const Spinner: React.FC<SpinnerProps>;
279
333
 
334
+ export interface ProgressBarProps {
335
+ className?: string;
336
+ dangerTo?: number;
337
+ label?: string;
338
+ max?: number;
339
+ orientation?: 'horizontal' | 'vertical';
340
+ showNumbers?: boolean;
341
+ value?: number;
342
+ warningTo?: number;
343
+ }
344
+
345
+ export const ProgressBar: React.FC<ProgressBarProps>;
346
+
280
347
  export interface StatusIconProps {
281
348
  className?: string;
282
349
  icon?: string;
@@ -319,6 +386,24 @@ export interface ToastProgressProps {
319
386
 
320
387
  export const ToastProgress: React.FC<ToastProgressProps>;
321
388
 
389
+ // ============================================================================
390
+ // MODAL COMPONENTS
391
+ // ============================================================================
392
+
393
+ export interface ModalComponentProps {
394
+ children: ReactNode;
395
+ className?: string;
396
+ footer?: ReactNode;
397
+ header: string | ReactNode;
398
+ onBeforeClose?: () => void;
399
+ setShow: Dispatch<SetStateAction<boolean>>;
400
+ show: boolean;
401
+ size?: 'sm' | 'md' | 'lg';
402
+ type?: 'default' | 'confirmation' | 'error';
403
+ }
404
+
405
+ export const ModalComponent: React.FC<ModalComponentProps>;
406
+
322
407
  // ============================================================================
323
408
  // NAVIGATION COMPONENTS
324
409
  // ============================================================================
@@ -335,6 +420,18 @@ export interface NavbarProps {
335
420
 
336
421
  export const Navbar: React.FC<NavbarProps>;
337
422
 
423
+ export interface AsideProps {
424
+ backdrop?: boolean;
425
+ belowNavbar?: boolean;
426
+ children: ReactNode;
427
+ className?: string;
428
+ header: string | ReactNode;
429
+ onHide: () => void;
430
+ show: boolean;
431
+ }
432
+
433
+ export const Aside: React.FC<AsideProps>;
434
+
338
435
  export interface StepperProps {
339
436
  activeStep?: number;
340
437
  className?: string;
@@ -352,6 +449,22 @@ export interface TabnavProps {
352
449
 
353
450
  export const Tabnav: React.FC<TabnavProps>;
354
451
 
452
+ export interface PaginationProps {
453
+ className?: string;
454
+ currentPage: number;
455
+ onNextPage: () => void;
456
+ onPageChange: (page: number) => void;
457
+ onPageSizeChange: (size: number) => void;
458
+ onPrevPage: () => void;
459
+ pageSize: number;
460
+ pageSizeOptions?: number[];
461
+ paginationMode?: 'local' | 'remote';
462
+ showPerPageLabel?: string;
463
+ totalPages?: number;
464
+ }
465
+
466
+ export const Pagination: React.FC<PaginationProps>;
467
+
355
468
  export interface SidebarProps {
356
469
  children?: ReactNode;
357
470
  className?: string;
@@ -362,3 +475,15 @@ export interface SidebarProps {
362
475
 
363
476
  export const Sidebar: React.FC<SidebarProps>;
364
477
 
478
+ // ============================================================================
479
+ // TABLE COMPONENTS
480
+ // ============================================================================
481
+
482
+ export interface TableSkeletonProps {
483
+ className?: string;
484
+ cols: number;
485
+ rows: number;
486
+ }
487
+
488
+ export const TableSkeleton: React.FC<TableSkeletonProps>;
489
+
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "groovinads-ui",
3
3
  "description": "Groovinads UI is a React component library designed exclusively for Groovinads applications. It provides ready-to-use UI elements styled according to Groovinads design guidelines to facilitate rapid development.",
4
- "version": "1.9.07",
4
+ "version": "1.9.9",
5
5
  "type": "module",
6
6
  "keywords": [
7
7
  "css",
@@ -30,10 +30,13 @@
30
30
  "@rollup/plugin-json": "^6.1.0",
31
31
  "@rollup/plugin-node-resolve": "^15.2.3",
32
32
  "@rollup/plugin-replace": "^6.0.3",
33
- "@storybook/addon-docs": "^10.0.8",
34
- "@storybook/addon-links": "^10.0.8",
35
- "@storybook/addon-onboarding": "^10.0.8",
36
- "@storybook/react-vite": "^10.0.8",
33
+ "@storybook/addon-docs": "^10.1.2",
34
+ "@storybook/addon-links": "^10.1.2",
35
+ "@storybook/addon-onboarding": "^10.1.2",
36
+ "@storybook/addon-vitest": "^10.1.2",
37
+ "@storybook/react-vite": "^10.1.2",
38
+ "@vitest/browser-playwright": "^4.0.14",
39
+ "@vitest/coverage-v8": "^4.0.14",
37
40
  "axios": "^1.7.2",
38
41
  "babel-loader": "^9.1.3",
39
42
  "eslint": "^8.0.1",
@@ -43,13 +46,14 @@
43
46
  "eslint-plugin-n": "^15.0.0",
44
47
  "eslint-plugin-promise": "^6.0.0",
45
48
  "eslint-plugin-react": "^7.31.11",
46
- "eslint-plugin-storybook": "10.0.8",
49
+ "eslint-plugin-storybook": "10.1.2",
47
50
  "js-cookie": "^3.0.5",
51
+ "playwright": "^1.57.0",
48
52
  "prettier": "^3.2.5",
49
53
  "prop-types": "^15.8.1",
50
- "react": "^18.2.0",
54
+ "react": "^19.1.0",
51
55
  "react-bootstrap": "^2.10.4",
52
- "react-dom": "^18.2.0",
56
+ "react-dom": "^19.1.0",
53
57
  "react-router-dom": "^6.24.0",
54
58
  "react-tabulator": "^0.21.0",
55
59
  "remark-gfm": "^4.0.1",
@@ -61,17 +65,18 @@
61
65
  "rollup-plugin-terser": "^7.0.2",
62
66
  "rollup-plugin-typescript2": "^0.36.0",
63
67
  "sass": "^1.72.0",
64
- "storybook": "^10.0.8",
68
+ "storybook": "^10.1.2",
65
69
  "typescript": "^5.4.4",
66
- "vite": "^5.2.2"
70
+ "vite": "^5.2.2",
71
+ "vitest": "^4.0.14"
67
72
  },
68
73
  "peerDependencies": {
69
74
  "axios": "^1.7.2",
70
75
  "babel-loader": "^9.1.3",
71
76
  "js-cookie": "^3.0.5",
72
- "react": "^18.2.0",
77
+ "react": "^19.1.0",
73
78
  "react-bootstrap": "^2.10.4",
74
- "react-dom": "^18.2.0"
79
+ "react-dom": "^19.1.0"
75
80
  },
76
81
  "packageManager": "yarn@4.1.1",
77
82
  "scripts": {
@@ -81,7 +86,6 @@
81
86
  },
82
87
  "dependencies": {
83
88
  "date-fns": "^4.1.0",
84
- "framer-motion": "^12.23.24",
85
89
  "react-datepicker": "^7.3.0",
86
90
  "react-loading-skeleton": "^3.5.0",
87
91
  "react-responsive": "^10.0.0"