@visns-studio/visns-components 5.11.1 → 5.11.3

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 (60) hide show
  1. package/package.json +2 -2
  2. package/src/components/cms/DataGrid.jsx +8 -8
  3. package/src/components/cms/DropZone.jsx +1 -1
  4. package/src/components/cms/Form.jsx +1 -1
  5. package/src/components/cms/Gallery.jsx +1 -1
  6. package/src/components/cms/sorting/Item.jsx +1 -1
  7. package/src/components/crm/AssociationManager.jsx +431 -0
  8. package/src/components/crm/Autocomplete.jsx +3 -3
  9. package/src/components/crm/Breadcrumb.jsx +4 -4
  10. package/src/components/crm/BusinessCardOcr.jsx +681 -95
  11. package/src/components/crm/ClientAssociationManager.jsx +362 -0
  12. package/src/components/crm/DataGrid.jsx +34 -32
  13. package/src/components/crm/Field.jsx +12 -12
  14. package/src/components/crm/Form.jsx +2 -2
  15. package/src/components/crm/MergeEntity.jsx +1049 -0
  16. package/src/components/crm/MultiSelect.jsx +14 -3
  17. package/src/components/crm/Navigation.jsx +14 -15
  18. package/src/components/crm/Notification.jsx +2 -2
  19. package/src/components/crm/QuickAction.jsx +3 -3
  20. package/src/components/crm/SectionHeader.jsx +1 -1
  21. package/src/components/crm/SwitchAccount.jsx +4 -4
  22. package/src/components/crm/auth/ClientLogin.jsx +2 -2
  23. package/src/components/crm/auth/ClientOTPVerify.jsx +2 -2
  24. package/src/components/crm/auth/Login.jsx +3 -3
  25. package/src/components/crm/auth/Reset.jsx +2 -2
  26. package/src/components/crm/auth/TwoFactorAuth.jsx +2 -2
  27. package/src/components/crm/cells/CellWithTooltip.jsx +35 -28
  28. package/src/components/crm/columns/ColumnRenderers.jsx +320 -259
  29. package/src/components/crm/controls/DataGridSearch.jsx +5 -5
  30. package/src/components/crm/generic/AlternativeActionModal.jsx +100 -0
  31. package/src/components/crm/generic/ContactSelectorModal.jsx +59 -16
  32. package/src/components/crm/generic/DateRangeSelectorModal.jsx +181 -0
  33. package/src/components/crm/generic/GenericClientPortal.jsx +1 -1
  34. package/src/components/crm/generic/GenericDashboard.jsx +4 -4
  35. package/src/components/crm/generic/GenericDetail.jsx +31 -6
  36. package/src/components/crm/generic/GenericDynamic.jsx +3 -3
  37. package/src/components/crm/generic/GenericEditableTable.jsx +4 -4
  38. package/src/components/crm/generic/GenericFormBuilder.jsx +6 -6
  39. package/src/components/crm/generic/GenericGrid.jsx +1622 -268
  40. package/src/components/crm/generic/GenericReport.jsx +966 -646
  41. package/src/components/crm/generic/GenericReportForm.jsx +1 -1
  42. package/src/components/crm/generic/NotificationList.jsx +1 -1
  43. package/src/components/crm/generic/ReasonCollectorModal.jsx +194 -0
  44. package/src/components/crm/generic/SortableQuoteItems.jsx +3 -3
  45. package/src/components/crm/generic/shared/formatters.js +107 -1
  46. package/src/components/crm/generic/styles/AlternativeActionModal.css +127 -0
  47. package/src/components/crm/generic/styles/DateRangeSelectorModal.css +115 -0
  48. package/src/components/crm/generic/styles/GenericIndex.module.scss +206 -0
  49. package/src/components/crm/generic/styles/GenericReport.module.scss +96 -0
  50. package/src/components/crm/generic/styles/ReasonCollectorModal.css +217 -0
  51. package/src/components/crm/modals/GalleryModal.jsx +2 -2
  52. package/src/components/crm/sorting/Item.jsx +3 -3
  53. package/src/components/crm/styles/AssociationManager.module.scss +364 -0
  54. package/src/components/crm/styles/BusinessCardOcr.module.scss +197 -4
  55. package/src/components/crm/styles/ClientAssociationManager.module.scss +290 -0
  56. package/src/components/crm/styles/MergeEntity.module.scss +690 -0
  57. package/src/components/crm/styles/MultiSelect.module.scss +18 -0
  58. package/src/components/crm/styles/Navigation.module.scss +68 -8
  59. package/src/components/crm/styles/global-datagrid.css +9 -0
  60. package/src/index.js +6 -0
@@ -304,6 +304,8 @@
304
304
  .hactions {
305
305
  width: max-content;
306
306
  justify-self: end;
307
+ position: relative;
308
+ z-index: 100; // Ensure proper stacking above modal content
307
309
 
308
310
  > ul {
309
311
  list-style: none;
@@ -313,10 +315,21 @@
313
315
  flex-wrap: nowrap;
314
316
  flex-direction: row;
315
317
  align-items: center;
316
- justify-content: center;
318
+ justify-content: flex-end;
319
+ gap: 2px;
320
+ position: relative;
321
+ z-index: 101;
317
322
 
318
323
  li {
319
- margin: 0 5px;
324
+ margin: 0 2px;
325
+ position: relative;
326
+ display: flex;
327
+ align-items: center;
328
+ flex-shrink: 0;
329
+ min-width: 32px; // Reduced from 40px for better spacing
330
+ min-height: 32px; // Reduced from 40px for better spacing
331
+ justify-content: center;
332
+ z-index: 102;
320
333
  }
321
334
 
322
335
  a {
@@ -327,13 +340,21 @@
327
340
  background: none;
328
341
  border: 2px solid var(--primary-color);
329
342
  border-radius: 100%;
330
- transition: all 0.65s cubic-bezier(0.25, 0.8, 0.25, 1);
343
+ transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1); // Reduced duration
331
344
  display: flex;
332
345
  align-items: center;
346
+ justify-content: center;
347
+ width: 32px; // Reduced from 36px
348
+ height: 32px; // Reduced from 36px
349
+ position: relative;
350
+ z-index: 103;
351
+ transform: translateZ(0); // Force hardware acceleration
352
+ will-change: transform, background-color; // Optimize for animations
333
353
 
334
354
  &:hover,
335
355
  &.active {
336
356
  background: var(--primary-color);
357
+ transform: translateZ(0) scale(1.05); // Slight scale on hover
337
358
 
338
359
  svg {
339
360
  color: var(--secondary-color);
@@ -349,15 +370,23 @@
349
370
  background: none;
350
371
  border: 1px solid var(--primary-color);
351
372
  border-radius: 100%;
352
- transition: all 0.65s cubic-bezier(0.25, 0.8, 0.25, 1);
373
+ transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1); // Reduced duration
353
374
  display: flex;
354
375
  align-items: center;
376
+ justify-content: center;
377
+ width: 32px; // Reduced from 36px
378
+ height: 32px; // Reduced from 36px
355
379
  outline: none;
356
380
  appearance: none;
381
+ position: relative;
382
+ z-index: 103;
383
+ transform: translateZ(0); // Force hardware acceleration
384
+ will-change: transform, background-color; // Optimize for animations
357
385
 
358
386
  &:hover,
359
387
  &.active {
360
388
  background: var(--primary-color);
389
+ transform: translateZ(0) scale(1.05); // Slight scale on hover
361
390
 
362
391
  svg {
363
392
  color: var(--secondary-color);
@@ -370,6 +399,8 @@
370
399
  .hactions-alternate {
371
400
  width: max-content;
372
401
  justify-self: end;
402
+ position: relative;
403
+ z-index: 100; // Ensure proper stacking above modal content
373
404
 
374
405
  > ul {
375
406
  list-style: none;
@@ -379,10 +410,21 @@
379
410
  flex-wrap: nowrap;
380
411
  flex-direction: row;
381
412
  align-items: center;
382
- justify-content: center;
413
+ justify-content: flex-end;
414
+ gap: 2px;
415
+ position: relative;
416
+ z-index: 101;
383
417
 
384
418
  li {
385
- margin: 0 5px;
419
+ margin: 0 2px;
420
+ position: relative;
421
+ display: flex;
422
+ align-items: center;
423
+ flex-shrink: 0;
424
+ min-width: 32px; // Reduced from 40px for better spacing
425
+ min-height: 32px; // Reduced from 40px for better spacing
426
+ justify-content: center;
427
+ z-index: 102;
386
428
  }
387
429
 
388
430
  a {
@@ -393,13 +435,21 @@
393
435
  background: none;
394
436
  border: 2px solid var(--primary-color);
395
437
  border-radius: 100%;
396
- transition: all 0.65s cubic-bezier(0.25, 0.8, 0.25, 1);
438
+ transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1); // Reduced duration
397
439
  display: flex;
398
440
  align-items: center;
441
+ justify-content: center;
442
+ width: 32px; // Reduced from 36px
443
+ height: 32px; // Reduced from 36px
444
+ position: relative;
445
+ z-index: 103;
446
+ transform: translateZ(0); // Force hardware acceleration
447
+ will-change: transform, background-color; // Optimize for animations
399
448
 
400
449
  &:hover,
401
450
  &.active {
402
451
  background: var(--primary-color);
452
+ transform: translateZ(0) scale(1.05); // Slight scale on hover
403
453
 
404
454
  svg {
405
455
  color: var(--tertiary-color);
@@ -415,15 +465,23 @@
415
465
  background: none;
416
466
  border: 1px solid var(--primary-color);
417
467
  border-radius: 100%;
418
- transition: all 0.65s cubic-bezier(0.25, 0.8, 0.25, 1);
468
+ transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1); // Reduced duration
419
469
  display: flex;
420
470
  align-items: center;
471
+ justify-content: center;
472
+ width: 32px; // Reduced from 36px
473
+ height: 32px; // Reduced from 36px
421
474
  outline: none;
422
475
  appearance: none;
476
+ position: relative;
477
+ z-index: 103;
478
+ transform: translateZ(0); // Force hardware acceleration
479
+ will-change: transform, background-color; // Optimize for animations
423
480
 
424
481
  &:hover,
425
482
  &.active {
426
483
  background: var(--primary-color);
484
+ transform: translateZ(0) scale(1.05); // Slight scale on hover
427
485
 
428
486
  svg {
429
487
  color: var(--tertiary-color);
@@ -636,6 +694,8 @@
636
694
  position: sticky;
637
695
  top: 0;
638
696
  z-index: 995;
697
+ contain: layout; /* Prevent layout shifts */
698
+ transform: translateZ(0); /* Force hardware acceleration */
639
699
 
640
700
  /* Hide scrollbar for Chrome/Safari/Opera */
641
701
  &::-webkit-scrollbar {
@@ -3,6 +3,15 @@
3
3
  overflow: hidden !important;
4
4
  }
5
5
 
6
+ /* Ensure tooltips always appear above all other elements */
7
+ .react-tooltip,
8
+ div[role="tooltip"],
9
+ [data-tooltip-id] + div[role="tooltip"],
10
+ .tooltip {
11
+ z-index: 999999 !important;
12
+ position: fixed !important;
13
+ }
14
+
6
15
  .InovuaReactDataGrid__header-wrapper {
7
16
  border-top-left-radius: var(--br, 4px) !important;
8
17
  border-top-right-radius: var(--br, 4px) !important;
package/src/index.js CHANGED
@@ -6,15 +6,18 @@ import SortableList from './components/cms/sorting/List';
6
6
 
7
7
  /** CRM Components */
8
8
  import AsyncSelect from './components/crm/AsyncSelect';
9
+ import AssociationManager from './components/crm/AssociationManager';
9
10
  import Autocomplete from './components/crm/Autocomplete';
10
11
  import Breadcrumb from './components/crm/Breadcrumb';
11
12
  import BusinessCardOcr from './components/crm/BusinessCardOcr';
12
13
  import Call from './components/crm/Call';
14
+ import ClientAssociationManager from './components/crm/ClientAssociationManager';
13
15
  import CustomFetch from './components/crm/Fetch';
14
16
  import Download from './components/crm/Download';
15
17
  import Field from './components/crm/Field';
16
18
  import Form from './components/crm/Form';
17
19
  import Loader from './components/crm/Loader';
20
+ import MergeEntity from './components/crm/MergeEntity';
18
21
  import MultiSelect from './components/crm/MultiSelect';
19
22
  import Navigation from './components/crm/Navigation';
20
23
  import Notification from './components/crm/Notification';
@@ -64,6 +67,7 @@ import NotificationList from './components/crm/generic/NotificationList';
64
67
 
65
68
  export {
66
69
  AsyncSelect,
70
+ AssociationManager,
67
71
  AudioPlayer,
68
72
  AuditLog,
69
73
  AuditLogs,
@@ -73,6 +77,7 @@ export {
73
77
  BusinessCardOcr,
74
78
  Call,
75
79
  CellWithTooltip,
80
+ ClientAssociationManager,
76
81
  ClientLogin,
77
82
  ClientOTPVerify,
78
83
  ClientPortal,
@@ -104,6 +109,7 @@ export {
104
109
  GenericSort,
105
110
  Loader,
106
111
  Login,
112
+ MergeEntity,
107
113
  MultiSelect,
108
114
  Navigation,
109
115
  Notification,