@visns-studio/visns-components 5.0.19 → 5.0.20
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/package.json +6 -6
- package/src/components/crm/MultiSelect.jsx +46 -67
- package/src/components/crm/auth/styles/Profile.module.scss +6 -7
- package/src/components/crm/generic/GenericDashboard.jsx +467 -29
- package/src/components/crm/generic/GenericFormBuilder.jsx +96 -32
- package/src/components/crm/generic/styles/AuditLog.module.scss +3 -3
- package/src/components/crm/generic/styles/AuditLogs.module.scss +1 -1
- package/src/components/crm/generic/styles/GenericDashboard.module.scss +364 -0
- package/src/components/crm/generic/styles/GenericDynamic.module.scss +11 -11
- package/src/components/crm/generic/styles/GenericFormBuilder.module.scss +327 -317
- package/src/components/crm/generic/styles/GenericIndex.module.scss +8 -8
- package/src/components/crm/generic/styles/GenericSort.module.scss +3 -3
- package/src/components/crm/generic/styles/NotificationList.module.scss +2 -2
- package/src/components/crm/sketch/SketchField.jsx +395 -0
- package/src/components/crm/sketch/arrow.jsx +108 -0
- package/src/components/crm/sketch/circle.jsx +75 -0
- package/src/components/crm/sketch/default-tool.jsx +16 -0
- package/src/components/crm/sketch/fabrictool.jsx +22 -0
- package/src/components/crm/sketch/history.jsx +144 -0
- package/src/components/crm/sketch/json/config.json +14 -0
- package/src/components/crm/sketch/line.jsx +64 -0
- package/src/components/crm/sketch/pan.jsx +48 -0
- package/src/components/crm/sketch/pencil.jsx +36 -0
- package/src/components/crm/sketch/rectangle-label-object.jsx +69 -0
- package/src/components/crm/sketch/rectangle-label.jsx +93 -0
- package/src/components/crm/sketch/rectangle.jsx +76 -0
- package/src/components/crm/sketch/select.jsx +16 -0
- package/src/components/crm/sketch/tools.jsx +11 -0
- package/src/components/crm/sketch/utils.jsx +67 -0
- package/src/components/crm/sorting/Item.jsx +2 -2
- package/src/components/crm/sorting/styles/Item.module.scss +12 -65
- package/src/components/crm/sorting/styles/List.module.scss +6 -20
- package/src/components/crm/styles/Form.module.scss +4 -6
- package/src/components/crm/styles/MultiSelect.module.scss +4 -0
- package/src/components/crm/styles/Navigation.module.scss +13 -6
- package/src/components/crm/styles/QrCode.module.scss +2 -2
- package/src/components/styles/global.css +8 -0
- package/src/index.js +2 -0
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import '../../styles/global.css';
|
|
2
|
+
|
|
1
3
|
import React, { useEffect, useRef, useState } from 'react';
|
|
2
4
|
import { useParams } from 'react-router-dom';
|
|
3
5
|
import Popup from 'reactjs-popup';
|
|
@@ -8,7 +10,7 @@ import Toggle from 'react-toggle';
|
|
|
8
10
|
import { toast } from 'react-toastify';
|
|
9
11
|
import { v4 as uuidv4 } from 'uuid';
|
|
10
12
|
import { Editor } from '@tinymce/tinymce-react';
|
|
11
|
-
import {
|
|
13
|
+
import { CirclePlus, CircleX, TrashCan } from 'akar-icons';
|
|
12
14
|
|
|
13
15
|
import 'react-toggle/style.css';
|
|
14
16
|
import 'react-datepicker/dist/react-datepicker.css';
|
|
@@ -16,7 +18,8 @@ import 'react-confirm-alert/src/react-confirm-alert.css';
|
|
|
16
18
|
|
|
17
19
|
import Breadcrumb from '../Breadcrumb';
|
|
18
20
|
import CustomFetch from '../Fetch';
|
|
19
|
-
import SortableList from '
|
|
21
|
+
import SortableList from '../sorting/List';
|
|
22
|
+
import SketchConfig from '../sketch/json/config.json';
|
|
20
23
|
|
|
21
24
|
import styles from './styles/GenericFormBuilder.module.scss'; // Import the CSS module
|
|
22
25
|
|
|
@@ -44,7 +47,8 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
44
47
|
label: '',
|
|
45
48
|
type: '',
|
|
46
49
|
});
|
|
47
|
-
const [fieldTypes
|
|
50
|
+
const [fieldTypes] = useState([
|
|
51
|
+
{ value: 'canvas', label: 'Canvas' },
|
|
48
52
|
{ value: 'checkbox', label: 'Checkbox' },
|
|
49
53
|
{ value: 'html5_date', label: 'Date' },
|
|
50
54
|
{ value: 'html5_datetime', label: 'Date & Time' },
|
|
@@ -78,6 +82,7 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
78
82
|
});
|
|
79
83
|
const [modalFormShow, setModalFormShow] = useState(false);
|
|
80
84
|
const [roles, setRoles] = useState([]);
|
|
85
|
+
const canvasTypes = SketchConfig.canvasTypes;
|
|
81
86
|
|
|
82
87
|
/** Data Option Functionalities */
|
|
83
88
|
const handleDataOption = (e) => {
|
|
@@ -428,6 +433,21 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
428
433
|
|
|
429
434
|
const renderField = (field) => {
|
|
430
435
|
switch (field.type) {
|
|
436
|
+
case 'canvas':
|
|
437
|
+
const canvasType = canvasTypes.find(
|
|
438
|
+
(item) => item.id === field.canvasType
|
|
439
|
+
);
|
|
440
|
+
return (
|
|
441
|
+
<label className={`${styles.fi__label}`}>
|
|
442
|
+
<span
|
|
443
|
+
className={`${styles.fi__span} ${styles.prefocus}`}
|
|
444
|
+
>
|
|
445
|
+
{field.label}{' '}
|
|
446
|
+
{field.required === 'yes' ? '*' : null}
|
|
447
|
+
</span>
|
|
448
|
+
<img src={canvasType.url} width="200" />
|
|
449
|
+
</label>
|
|
450
|
+
);
|
|
431
451
|
case 'checkbox':
|
|
432
452
|
return (
|
|
433
453
|
<label className={styles.fi__label}>
|
|
@@ -804,34 +824,38 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
804
824
|
}, []);
|
|
805
825
|
|
|
806
826
|
return (
|
|
807
|
-
|
|
808
|
-
<div className={styles.
|
|
809
|
-
<div className={
|
|
810
|
-
<
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
827
|
+
<>
|
|
828
|
+
<div className={styles.grid}>
|
|
829
|
+
<div className={styles.grid__row}>
|
|
830
|
+
<div className={`${styles.grid__full} ${styles.crmtitle}`}>
|
|
831
|
+
<Breadcrumb
|
|
832
|
+
data={data}
|
|
833
|
+
page={{
|
|
834
|
+
previousUrl: parentUrl,
|
|
835
|
+
title: 'Forms',
|
|
836
|
+
titleKey: 'label',
|
|
837
|
+
}}
|
|
838
|
+
/>
|
|
839
|
+
</div>
|
|
818
840
|
</div>
|
|
819
841
|
</div>
|
|
820
842
|
<div className={styles.grid}>
|
|
821
843
|
<div className={styles.grid__subrow}>
|
|
822
844
|
<div className={styles.grid__subnav}>
|
|
823
845
|
{data.detail && data.detail.length > 0 ? (
|
|
824
|
-
<
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
846
|
+
<div className={styles.sortableListContainer}>
|
|
847
|
+
<SortableList
|
|
848
|
+
handleClick={handleEdit}
|
|
849
|
+
handleDelete={handleDeleteField}
|
|
850
|
+
items={data.detail}
|
|
851
|
+
onSortEnd={onSortEnd}
|
|
852
|
+
axis="xy"
|
|
853
|
+
helperClass={styles.dragitem}
|
|
854
|
+
transitionDuration={250}
|
|
855
|
+
showImage={false}
|
|
856
|
+
useDragHandle
|
|
857
|
+
/>
|
|
858
|
+
</div>
|
|
835
859
|
) : null}
|
|
836
860
|
</div>
|
|
837
861
|
<div className={styles.grid__subcontent}>
|
|
@@ -1473,9 +1497,9 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
1473
1497
|
dataField.type ===
|
|
1474
1498
|
'table_text'
|
|
1475
1499
|
) {
|
|
1476
|
-
excludedKeywords.push(
|
|
1477
|
-
|
|
1478
|
-
);
|
|
1500
|
+
// excludedKeywords.push(
|
|
1501
|
+
// 'checkbox'
|
|
1502
|
+
// );
|
|
1479
1503
|
}
|
|
1480
1504
|
return !excludedKeywords.some(
|
|
1481
1505
|
(
|
|
@@ -1610,9 +1634,9 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
1610
1634
|
dataField.type ===
|
|
1611
1635
|
'table_text'
|
|
1612
1636
|
) {
|
|
1613
|
-
excludedKeywords.push(
|
|
1614
|
-
|
|
1615
|
-
);
|
|
1637
|
+
// excludedKeywords.push(
|
|
1638
|
+
// 'checkbox'
|
|
1639
|
+
// );
|
|
1616
1640
|
}
|
|
1617
1641
|
return !excludedKeywords.some(
|
|
1618
1642
|
(
|
|
@@ -1679,6 +1703,46 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
1679
1703
|
</div>
|
|
1680
1704
|
) : null}
|
|
1681
1705
|
|
|
1706
|
+
{['canvas'].includes(dataField.type) ? (
|
|
1707
|
+
<div className={styles.formItem}>
|
|
1708
|
+
<label className={styles.fi__label}>
|
|
1709
|
+
<select
|
|
1710
|
+
name="canvasType"
|
|
1711
|
+
value={dataField.canvasType}
|
|
1712
|
+
onChange={handleChangeForm}
|
|
1713
|
+
>
|
|
1714
|
+
<option>
|
|
1715
|
+
Please select a type
|
|
1716
|
+
</option>
|
|
1717
|
+
{canvasTypes.map(
|
|
1718
|
+
(
|
|
1719
|
+
canvasType,
|
|
1720
|
+
canvasTypeKey
|
|
1721
|
+
) => (
|
|
1722
|
+
<option
|
|
1723
|
+
value={
|
|
1724
|
+
canvasType.id
|
|
1725
|
+
}
|
|
1726
|
+
key={
|
|
1727
|
+
canvasTypeKey
|
|
1728
|
+
}
|
|
1729
|
+
>
|
|
1730
|
+
{
|
|
1731
|
+
canvasType.label
|
|
1732
|
+
}
|
|
1733
|
+
</option>
|
|
1734
|
+
)
|
|
1735
|
+
)}
|
|
1736
|
+
</select>
|
|
1737
|
+
<span
|
|
1738
|
+
className={styles.fi__span}
|
|
1739
|
+
>
|
|
1740
|
+
Canvas Type
|
|
1741
|
+
</span>
|
|
1742
|
+
</label>
|
|
1743
|
+
</div>
|
|
1744
|
+
) : null}
|
|
1745
|
+
|
|
1682
1746
|
{['signature'].includes(dataField.type) ? (
|
|
1683
1747
|
<div className={styles.formItem}>
|
|
1684
1748
|
<label className={styles.fi__label}>
|
|
@@ -1993,7 +2057,7 @@ function GenericFormBuilder({ setting, urlParam, userProfile }) {
|
|
|
1993
2057
|
</div>
|
|
1994
2058
|
</div>
|
|
1995
2059
|
</Popup>
|
|
1996
|
-
|
|
2060
|
+
</>
|
|
1997
2061
|
);
|
|
1998
2062
|
}
|
|
1999
2063
|
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
position: relative;
|
|
35
35
|
padding: 2px;
|
|
36
36
|
margin: 8px 0;
|
|
37
|
-
box-shadow: 0 4px 0 rgba(var(--primary-
|
|
37
|
+
box-shadow: 0 4px 0 rgba(var(--primary-rgb), 0.05);
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
.gridtxt__header {
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
flex: 0 0 calc(50% - 10px);
|
|
71
71
|
padding: 0.85rem;
|
|
72
72
|
box-sizing: border-box;
|
|
73
|
-
border: 1px solid rgba(var(--primary-
|
|
73
|
+
border: 1px solid rgba(var(--primary-rgb), 0.15);
|
|
74
74
|
color: var(--paragraph-color);
|
|
75
75
|
background: rgba(var(--tertiary-color-rgb), 0.95);
|
|
76
76
|
margin: 5px;
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
width: 49%;
|
|
102
102
|
padding: 1em;
|
|
103
103
|
box-sizing: border-box;
|
|
104
|
-
border: 1px solid rgba(var(--primary-
|
|
104
|
+
border: 1px solid rgba(var(--primary-rgb), 0.15);
|
|
105
105
|
color: var(--paragraph-color);
|
|
106
106
|
background: rgba(#f4f4f4, 0.65);
|
|
107
107
|
margin: 5px;
|
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
.grid__row {
|
|
2
|
+
width: 100%;
|
|
3
|
+
display: flex;
|
|
4
|
+
align-items: flex-start;
|
|
5
|
+
flex-wrap: nowrap;
|
|
6
|
+
height: auto;
|
|
7
|
+
gap: 1rem;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.grid__three {
|
|
11
|
+
width: 33%;
|
|
12
|
+
background: var(--item-color);
|
|
13
|
+
border-radius: var(--br);
|
|
14
|
+
border: 1px solid rgba(var(--item-color-rgb), 1.15);
|
|
15
|
+
box-sizing: border-box;
|
|
16
|
+
overflow: visible;
|
|
17
|
+
position: relative;
|
|
18
|
+
padding: 20px;
|
|
19
|
+
margin: 8px 0;
|
|
20
|
+
box-shadow: 0 4px 0 rgba(var(--primary-rgb), 0.05);
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.grid__half {
|
|
24
|
+
width: 50%;
|
|
25
|
+
background: var(--item-color);
|
|
26
|
+
border-radius: 6px;
|
|
27
|
+
border: 1px solid #dadce0;
|
|
28
|
+
box-sizing: border-box;
|
|
29
|
+
overflow: visible;
|
|
30
|
+
position: relative;
|
|
31
|
+
padding: 20px;
|
|
32
|
+
margin: 8px 0;
|
|
33
|
+
box-shadow: 0 4px 0 rgba(var(--primary-color), 0.05);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.grid__full {
|
|
37
|
+
width: 100%;
|
|
38
|
+
background: var(--item-color);
|
|
39
|
+
border-radius: var(--br);
|
|
40
|
+
border: 1px solid rgba(var(--item-color-rgb), 1.15);
|
|
41
|
+
box-sizing: border-box;
|
|
42
|
+
overflow: visible;
|
|
43
|
+
position: relative;
|
|
44
|
+
padding: 10px;
|
|
45
|
+
margin: 8px 0;
|
|
46
|
+
box-shadow: 0 4px 0 rgba(var(--primary-rgb), 0.05);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.grid__dashfull {
|
|
50
|
+
width: 100%;
|
|
51
|
+
background: var(--item-color);
|
|
52
|
+
border-radius: 6px;
|
|
53
|
+
border: 1px solid #dadce0;
|
|
54
|
+
box-sizing: border-box;
|
|
55
|
+
overflow: visible;
|
|
56
|
+
position: relative;
|
|
57
|
+
padding: 20px;
|
|
58
|
+
margin: 8px 0;
|
|
59
|
+
box-shadow: 0 4px 0 rgba(var(--primary-rgb), 0.05);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.widgetTitle {
|
|
63
|
+
width: 100%;
|
|
64
|
+
height: auto;
|
|
65
|
+
padding: 0;
|
|
66
|
+
margin-bottom: 0.85rem;
|
|
67
|
+
|
|
68
|
+
h2 {
|
|
69
|
+
font-size: 1rem;
|
|
70
|
+
margin: 0;
|
|
71
|
+
padding: 0;
|
|
72
|
+
line-height: 1;
|
|
73
|
+
text-transform: capitalize;
|
|
74
|
+
text-align: left;
|
|
75
|
+
color: var(--primary-color);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.dashList {
|
|
80
|
+
width: 100%;
|
|
81
|
+
display: flex;
|
|
82
|
+
flex-wrap: wrap;
|
|
83
|
+
list-style: none;
|
|
84
|
+
padding: 0;
|
|
85
|
+
margin: 0;
|
|
86
|
+
font-size: 0.875rem;
|
|
87
|
+
|
|
88
|
+
li {
|
|
89
|
+
width: 100%;
|
|
90
|
+
padding: 0;
|
|
91
|
+
margin: 0;
|
|
92
|
+
|
|
93
|
+
&:first-child {
|
|
94
|
+
button {
|
|
95
|
+
border-top-left-radius: var(--br);
|
|
96
|
+
border-top-right-radius: var(--br);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
&:last-child {
|
|
101
|
+
margin-bottom: 0;
|
|
102
|
+
|
|
103
|
+
button {
|
|
104
|
+
border-bottom-left-radius: var(--br);
|
|
105
|
+
border-bottom-right-radius: var(--br);
|
|
106
|
+
border-bottom: 1px solid #dadce0;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
a {
|
|
111
|
+
text-decoration: none;
|
|
112
|
+
|
|
113
|
+
&:hover {
|
|
114
|
+
background: rgba(var(--secondary-rgb), 0.05);
|
|
115
|
+
transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
button {
|
|
120
|
+
width: 100%;
|
|
121
|
+
display: block;
|
|
122
|
+
background: white;
|
|
123
|
+
border: 1px solid #dadce0;
|
|
124
|
+
border-bottom: none;
|
|
125
|
+
outline: none;
|
|
126
|
+
padding: 0.35rem 1rem;
|
|
127
|
+
color: var(--paragraph-color);
|
|
128
|
+
text-align: left;
|
|
129
|
+
transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
|
|
130
|
+
letter-spacing: 0.018em;
|
|
131
|
+
|
|
132
|
+
&:hover {
|
|
133
|
+
background: rgba(var(--secondary-rgb), 0.05);
|
|
134
|
+
transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
strong {
|
|
138
|
+
color: var(--paragraph-color);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
span {
|
|
142
|
+
color: rgba(var(--secondary-rgb), 1.1);
|
|
143
|
+
float: right;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.dmore {
|
|
150
|
+
width: 100%;
|
|
151
|
+
margin: 0.65em 0 0 0;
|
|
152
|
+
padding: 5px;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.dashwidget {
|
|
156
|
+
// background: var(--primary-color) !important;
|
|
157
|
+
border-top: 1px solid transparent !important;
|
|
158
|
+
border-left: 1px solid transparent !important;
|
|
159
|
+
border-right: 1px solid transparent !important;
|
|
160
|
+
border-bottom: 4px solid rgba(var(--primary-color-rgb), 0.9) !important;
|
|
161
|
+
|
|
162
|
+
h2 {
|
|
163
|
+
color: var(--highlight-color) !important;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
.widgetTitle {
|
|
167
|
+
border-bottom: 1px dashed rgba(#dadce0, 0.15);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
.dashwidget--highlight {
|
|
172
|
+
background: var(--primary-color) !important;
|
|
173
|
+
border-bottom: 4px solid rgba(var(--primary-color-rgb), 0.85) !important;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
.widgetNo {
|
|
177
|
+
width: 100%;
|
|
178
|
+
height: auto;
|
|
179
|
+
padding: 0 0 2rem 0;
|
|
180
|
+
box-sizing: border-box;
|
|
181
|
+
|
|
182
|
+
span {
|
|
183
|
+
width: 100%;
|
|
184
|
+
display: block;
|
|
185
|
+
text-align: center;
|
|
186
|
+
font-weight: 400;
|
|
187
|
+
font-size: 3em;
|
|
188
|
+
color: var(--tertiary-color);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
.widgetLink {
|
|
193
|
+
width: 100%;
|
|
194
|
+
display: block;
|
|
195
|
+
|
|
196
|
+
.btn {
|
|
197
|
+
width: max-content;
|
|
198
|
+
margin: 0 auto;
|
|
199
|
+
display: block;
|
|
200
|
+
padding: 0.25em 3em;
|
|
201
|
+
background: none;
|
|
202
|
+
|
|
203
|
+
&:hover {
|
|
204
|
+
background: none;
|
|
205
|
+
color: var(--tertiary-color);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
.filter-container {
|
|
211
|
+
padding: 1rem;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.filter-header {
|
|
215
|
+
text-align: left;
|
|
216
|
+
margin-bottom: 1rem;
|
|
217
|
+
|
|
218
|
+
h3 {
|
|
219
|
+
font-size: 1.25rem;
|
|
220
|
+
font-weight: 600;
|
|
221
|
+
color: #333;
|
|
222
|
+
margin: 0;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
.filter-fields {
|
|
227
|
+
display: flex;
|
|
228
|
+
flex-wrap: wrap;
|
|
229
|
+
gap: 1rem; // Gap between fields
|
|
230
|
+
align-items: flex-end; // Align fields vertically
|
|
231
|
+
}
|
|
232
|
+
.filter-field {
|
|
233
|
+
flex: 1; // Ensures equal spacing for each field
|
|
234
|
+
display: flex;
|
|
235
|
+
flex-direction: column;
|
|
236
|
+
min-width: 200px; // Sets a minimum width for smaller screens
|
|
237
|
+
|
|
238
|
+
label {
|
|
239
|
+
font-size: 0.875rem;
|
|
240
|
+
font-weight: 600;
|
|
241
|
+
margin-bottom: 0.5rem;
|
|
242
|
+
color: #555;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
input,
|
|
246
|
+
select {
|
|
247
|
+
border: 1px solid #dadce0;
|
|
248
|
+
border-radius: 5px;
|
|
249
|
+
padding: 0.5rem 0.75rem;
|
|
250
|
+
font-size: 0.875rem;
|
|
251
|
+
color: #333;
|
|
252
|
+
outline: none;
|
|
253
|
+
background-color: #f9f9f9;
|
|
254
|
+
width: 100%; // Ensures full width within the container
|
|
255
|
+
|
|
256
|
+
&:focus {
|
|
257
|
+
border-color: #007bff;
|
|
258
|
+
box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25); // Focus effect
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
.filter-actions {
|
|
264
|
+
display: flex;
|
|
265
|
+
gap: 0.75rem; // Gap between buttons
|
|
266
|
+
|
|
267
|
+
.btn {
|
|
268
|
+
padding: 0.5rem 1rem;
|
|
269
|
+
border-radius: 5px;
|
|
270
|
+
font-size: 0.875rem;
|
|
271
|
+
font-weight: 600;
|
|
272
|
+
text-transform: uppercase;
|
|
273
|
+
cursor: pointer;
|
|
274
|
+
transition: background-color 0.2s;
|
|
275
|
+
height: 51px;
|
|
276
|
+
|
|
277
|
+
&.btn-primary {
|
|
278
|
+
background-color: var(--primary-color);
|
|
279
|
+
color: var(--tertiary-color);
|
|
280
|
+
border: none;
|
|
281
|
+
|
|
282
|
+
&:hover {
|
|
283
|
+
background-color: #0056b3;
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
&.btn-secondary {
|
|
288
|
+
background-color: #f8f9fa;
|
|
289
|
+
color: #333;
|
|
290
|
+
border: 1px solid #ccc;
|
|
291
|
+
|
|
292
|
+
&:hover {
|
|
293
|
+
background-color: #e2e6ea;
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
.table-scroll {
|
|
300
|
+
overflow-x: auto;
|
|
301
|
+
overflow-y: hidden;
|
|
302
|
+
width: 100%;
|
|
303
|
+
display: block;
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
.table-scroll table {
|
|
307
|
+
min-width: max-content; /* Ensures the table width adapts to its content */
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
.table-container {
|
|
311
|
+
margin-top: 20px;
|
|
312
|
+
border: 1px solid #dadce0;
|
|
313
|
+
border-radius: 8px;
|
|
314
|
+
overflow: hidden;
|
|
315
|
+
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
.table-container table {
|
|
319
|
+
width: 100%;
|
|
320
|
+
border-collapse: collapse;
|
|
321
|
+
text-align: left;
|
|
322
|
+
background-color: #ffffff;
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
.table-container th {
|
|
326
|
+
background-color: #f6f8fa;
|
|
327
|
+
color: #333;
|
|
328
|
+
font-weight: bold;
|
|
329
|
+
padding: 12px 15px;
|
|
330
|
+
border-bottom: 1px solid #dadce0;
|
|
331
|
+
text-transform: capitalize;
|
|
332
|
+
font-size: 14px;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.table-container td {
|
|
336
|
+
padding: 10px 15px;
|
|
337
|
+
border-bottom: 1px solid #eaeaea;
|
|
338
|
+
font-size: 13px;
|
|
339
|
+
color: #555;
|
|
340
|
+
text-align: center;
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
.table-container tbody tr:hover {
|
|
344
|
+
background-color: #f9f9f9;
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
.table-container tbody tr:nth-child(even) {
|
|
348
|
+
background-color: #f7f7f7;
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
.table-container th:first-child,
|
|
352
|
+
.table-container td:first-child {
|
|
353
|
+
text-align: left;
|
|
354
|
+
font-weight: bold;
|
|
355
|
+
padding-left: 20px;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
.table-container td:last-child {
|
|
359
|
+
border-right: none;
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
.table-container th:last-child {
|
|
363
|
+
border-right: none;
|
|
364
|
+
}
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
padding: 5px;
|
|
34
34
|
margin: 8px 0;
|
|
35
35
|
height: auto;
|
|
36
|
-
box-shadow: 0 4px 0 rgba(var(--primary-
|
|
36
|
+
box-shadow: 0 4px 0 rgba(var(--primary-rgb), 0.05);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
.grid__subnav > ul {
|
|
@@ -406,7 +406,7 @@ select:not(:placeholder-shown) + .fi__span {
|
|
|
406
406
|
text-decoration: none;
|
|
407
407
|
overflow: hidden;
|
|
408
408
|
background: var(--primary-color);
|
|
409
|
-
border: 1px solid rgba(var(--primary-
|
|
409
|
+
border: 1px solid rgba(var(--primary-rgb), 1.1);
|
|
410
410
|
border-radius: var(--br);
|
|
411
411
|
outline: none;
|
|
412
412
|
transition: all 0.2s cubic-bezier(0.85, 0, 0.15, 1) 0s;
|
|
@@ -454,22 +454,22 @@ select:not(:placeholder-shown) + .fi__span {
|
|
|
454
454
|
}
|
|
455
455
|
|
|
456
456
|
.react-datepicker__close-icon:after {
|
|
457
|
-
background-color: rgba(var(--primary-
|
|
457
|
+
background-color: rgba(var(--primary-rgb), 0.45) !important;
|
|
458
458
|
font-size: 13px !important;
|
|
459
459
|
}
|
|
460
460
|
|
|
461
461
|
.react-datepicker__close-icon:hover:after {
|
|
462
|
-
background-color: rgba(var(--primary-
|
|
462
|
+
background-color: rgba(var(--primary-rgb), 1) !important;
|
|
463
463
|
}
|
|
464
464
|
|
|
465
465
|
.formbreak {
|
|
466
466
|
display: block;
|
|
467
467
|
width: 100%;
|
|
468
468
|
padding: 1em;
|
|
469
|
-
background: rgba(var(--primary-
|
|
469
|
+
background: rgba(var(--primary-rgb), 0.95);
|
|
470
470
|
border-radius: 3px;
|
|
471
471
|
box-sizing: border-box;
|
|
472
|
-
border: 2px solid rgba(var(--primary-
|
|
472
|
+
border: 2px solid rgba(var(--primary-rgb), 1.1);
|
|
473
473
|
}
|
|
474
474
|
|
|
475
475
|
.formbreak span {
|
|
@@ -643,7 +643,7 @@ select:not(:placeholder-shown) + .fi__span {
|
|
|
643
643
|
color: var(--secondary-color);
|
|
644
644
|
font-weight: 700;
|
|
645
645
|
font-size: 0.95em;
|
|
646
|
-
border-right: 2px solid rgba(var(--primary-
|
|
646
|
+
border-right: 2px solid rgba(var(--primary-rgb), 0.9);
|
|
647
647
|
position: relative;
|
|
648
648
|
background-clip: padding-box;
|
|
649
649
|
}
|
|
@@ -729,8 +729,8 @@ select:not(:placeholder-shown) + .fi__span {
|
|
|
729
729
|
align-items: center;
|
|
730
730
|
flex-wrap: wrap;
|
|
731
731
|
border-radius: 5px;
|
|
732
|
-
border: 1px solid rgba(var(--primary-
|
|
733
|
-
box-shadow: 0px 0px 20px rgba(var(--primary-
|
|
732
|
+
border: 1px solid rgba(var(--primary-rgb), 0.2);
|
|
733
|
+
box-shadow: 0px 0px 20px rgba(var(--primary-rgb), 0.1);
|
|
734
734
|
padding: 1.25rem 1.25rem 1.25rem 2rem;
|
|
735
735
|
box-sizing: border-box;
|
|
736
736
|
cursor: pointer;
|
|
@@ -771,8 +771,8 @@ select:not(:placeholder-shown) + .fi__span {
|
|
|
771
771
|
align-items: center;
|
|
772
772
|
flex-wrap: wrap;
|
|
773
773
|
border-radius: 5px;
|
|
774
|
-
border: 1px solid rgba(var(--primary-
|
|
775
|
-
box-shadow: 0px 0px 30px rgba(var(--primary-
|
|
774
|
+
border: 1px solid rgba(var(--primary-rgb), 0.2);
|
|
775
|
+
box-shadow: 0px 0px 30px rgba(var(--primary-rgb), 0.25);
|
|
776
776
|
padding: 1.25rem 1.25rem 1.25rem 2rem;
|
|
777
777
|
box-sizing: border-box;
|
|
778
778
|
cursor: grab;
|