@sc-360-v2/storefront-cms-library 0.2.79 → 0.2.80

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 (33) hide show
  1. package/dist/builder.js +1 -1
  2. package/dist/buy-for-tab-container.scss +89 -0
  3. package/dist/buy-for-tab.scss +579 -0
  4. package/dist/buy-for-tabs-container-item.scss +80 -0
  5. package/dist/buyForHeaders.scss +203 -0
  6. package/dist/{buyFor.scss → buyForPopup.scss} +86 -22
  7. package/dist/cart-details.scss +1 -1
  8. package/dist/cart-products-sidebar.scss +201 -0
  9. package/dist/cartDropdownOverlay.scss +34 -27
  10. package/dist/checkout.scss +173 -0
  11. package/dist/layouter.scss +9 -2
  12. package/dist/light-box-v2.scss +4 -0
  13. package/dist/quick-links.scss +249 -194
  14. package/dist/repeater-embla-controls.scss +71 -96
  15. package/dist/repeater.scss +8 -2
  16. package/dist/search.scss +30 -0
  17. package/dist/types/builder/elements/add-order/index.d.ts +1 -1
  18. package/dist/types/builder/elements/buy-for-tab/index.d.ts +46 -0
  19. package/dist/types/builder/elements/buy-for-tab-container/index.d.ts +45 -0
  20. package/dist/types/builder/elements/checkout/index.d.ts +27 -0
  21. package/dist/types/builder/enums/index.d.ts +6 -0
  22. package/dist/types/builder/index.d.ts +4 -1
  23. package/dist/types/builder/tools/element-edit/bundle.d.ts +15 -0
  24. package/dist/types/builder/tools/element-edit/buyForTabContainer.d.ts +9 -0
  25. package/dist/types/builder/tools/element-edit/buyForWithTab.d.ts +215 -0
  26. package/dist/types/builder/tools/element-edit/checkout.d.ts +343 -0
  27. package/dist/types/builder/tools/element-edit/index.d.ts +4 -1
  28. package/dist/types/builder/tools/element-edit/quickLinks.d.ts +90 -127
  29. package/dist/types/builder/tools/element-edit/section.d.ts +2 -1
  30. package/dist/types/builder/tools/element-edit/storeLocations.d.ts +2 -1
  31. package/dist/uom-selector.scss +3 -3
  32. package/dist/widget.scss +7 -2
  33. package/package.json +1 -1
@@ -0,0 +1,80 @@
1
+ @use "sass:map";
2
+ @use "sass:list";
3
+ [data-div-type="element"] {
4
+ &[data-element-type="buyForTabsContainer"] {
5
+ width: 100%;
6
+ & > div {
7
+ &.wrapper {
8
+ width: 100%;
9
+ height: 100%;
10
+ padding: var(--_ctm-mob-repe-lt-pg, var(--_ctm-tab-repe-lt-pg, var(--_ctm-repe-lt-pg)));
11
+
12
+ background-color: var(
13
+ --_ctm-mob-repe-dn-bd-cr,
14
+ var(--_ctm-tab-repe-dn-bd-cr, var(--_ctm-repe-dn-bd-cr))
15
+ );
16
+ background-image: var(
17
+ --_ctm-mob-repe-dn-bd-ie,
18
+ var(--_ctm-tab-repe-dn-bd-ie, var(--_ctm-repe-dn-bd-ie))
19
+ );
20
+ background-attachment: var(
21
+ --_ctm-mob-repe-dn-bd-at,
22
+ var(--_ctm-tab-repe-dn-bd-at, var(--_ctm-repe-dn-bd-at))
23
+ );
24
+ background-position: var(
25
+ --_ctm-mob-repe-dn-bd-pn,
26
+ var(--_ctm-tab-repe-dn-bd-pn, var(--_ctm-repe-dn-bd-pn))
27
+ );
28
+ background-repeat: var(
29
+ --_ctm-mob-repe-dn-bd-rt,
30
+ var(--_ctm-tab-repe-dn-bd-rt, var(--_ctm-repe-dn-bd-rt))
31
+ );
32
+ background-size: var(
33
+ --_ctm-mob-repe-dn-bd-se,
34
+ var(--_ctm-tab-repe-dn-bd-se, var(--_ctm-repe-dn-bd-se))
35
+ );
36
+ border-radius: var(
37
+ --_ctm-mob-repe-dn-br-rs,
38
+ var(--_ctm-tab-repe-dn-br-rs, var(--_ctm-repe-dn-br-rs))
39
+ );
40
+ border-color: var(
41
+ --_ctm-mob-repe-dn-br-cr,
42
+ var(--_ctm-tab-repe-dn-br-cr, var(--_ctm-repe-dn-br-cr))
43
+ );
44
+ border-style: var(
45
+ --_ctm-mob-repe-dn-br-se,
46
+ var(--_ctm-tab-repe-dn-br-se, var(--_ctm-repe-dn-br-se))
47
+ );
48
+ border-width: var(
49
+ --_ctm-mob-repe-dn-br-wh,
50
+ var(--_ctm-tab-repe-dn-br-wh, var(--_ctm-repe-dn-br-wh))
51
+ );
52
+ box-shadow: var(
53
+ --_hover-show-shadow,
54
+ var(
55
+ --_sf-hr-bx-sw,
56
+ var(
57
+ --_show-shadow,
58
+ var(
59
+ --_ctm-mob-dn-dt-se-sw-ae,
60
+ var(--_ctm-tab-dn-dt-se-sw-ae, var(--_ctm-dn-dt-se-sw-ae))
61
+ )
62
+ var(
63
+ --_ctm-mob-dn-dt-se-sw-br,
64
+ var(--_ctm-tab-dn-dt-se-sw-br, var(--_ctm-dn-dt-se-sw-br))
65
+ )
66
+ var(
67
+ --_ctm-mob-dn-dt-se-sw-sd,
68
+ var(--_ctm-tab-dn-dt-se-sw-sd, var(--_ctm-dn-dt-se-sw-sd))
69
+ )
70
+ var(
71
+ --_ctm-mob-dn-dt-se-sw-cr,
72
+ var(--_ctm-tab-dn-dt-se-sw-cr, var(--_ctm-dn-dt-se-sw-cr))
73
+ )
74
+ )
75
+ )
76
+ );
77
+ }
78
+ }
79
+ }
80
+ }
@@ -0,0 +1,203 @@
1
+ .buy-for-container {
2
+ padding: 1rem;
3
+ font-family: "Arial", sans-serif;
4
+
5
+ .buy-for-header {
6
+ display: flex;
7
+ flex-wrap: wrap;
8
+ justify-content: space-between;
9
+ align-items: center;
10
+ margin-bottom: 1rem;
11
+
12
+ h1 {
13
+ font-size: 1.5rem;
14
+ font-weight: bold;
15
+ display: flex;
16
+ align-items: center;
17
+
18
+ .separator {
19
+ margin: 0 0.5rem;
20
+ color: #ccc;
21
+ }
22
+
23
+ a {
24
+ font-size: 1rem;
25
+ color: #6c757d;
26
+ text-decoration: none;
27
+
28
+ &:hover {
29
+ text-decoration: underline;
30
+ }
31
+ }
32
+ }
33
+
34
+ .impersonate-manage {
35
+ display: flex;
36
+ align-items: center;
37
+ gap: 1rem;
38
+
39
+ .impersonate-text {
40
+ background: #f3f5f7;
41
+ padding: 0.4rem 0.8rem;
42
+ border-radius: 5px;
43
+ font-size: 0.9rem;
44
+ }
45
+
46
+ .manage-link {
47
+ color: #0056d2;
48
+ text-decoration: none;
49
+
50
+ &:hover {
51
+ text-decoration: underline;
52
+ }
53
+ }
54
+
55
+ .employee-switch {
56
+ display: flex;
57
+ align-items: center;
58
+ gap: 0.5rem;
59
+
60
+ button {
61
+ background: white;
62
+ border: 1px solid #ddd;
63
+ padding: 0.3rem 0.6rem;
64
+ border-radius: 6px;
65
+ cursor: pointer;
66
+ font-size: 1.2rem;
67
+
68
+ &:hover {
69
+ background-color: #f0f0f0;
70
+ }
71
+ }
72
+
73
+ #employee-count {
74
+ font-size: 0.95rem;
75
+ }
76
+ }
77
+ }
78
+ }
79
+
80
+ .employee-info {
81
+ border-top: 1px solid #eee;
82
+ padding-top: 1rem;
83
+ .employee-details-section {
84
+ display: flex;
85
+ justify-content: space-between;
86
+ .employee-details {
87
+ display: flex;
88
+ justify-content: space-between;
89
+ align-items: center;
90
+ flex-wrap: wrap;
91
+
92
+ .employee-name {
93
+ font-size: 1.3rem;
94
+ font-weight: bold;
95
+ display: flex;
96
+ align-items: center;
97
+
98
+ .external-link-icon {
99
+ margin-left: 0.5rem;
100
+ font-size: 1rem;
101
+ text-decoration: none;
102
+ }
103
+ }
104
+
105
+ .autosave-info {
106
+ background: #e6f9ee;
107
+ color: #28a745;
108
+ padding: 0.4rem 0.8rem;
109
+ border-radius: 5px;
110
+ font-size: 0.85rem;
111
+ }
112
+ }
113
+ }
114
+
115
+ .employee-meta {
116
+ display: flex;
117
+ align-items: center;
118
+ margin: 0.8rem 0;
119
+ flex-wrap: wrap;
120
+
121
+ .meta-item {
122
+ font-size: 0.9rem;
123
+ color: #555;
124
+ }
125
+
126
+ .meta-separator {
127
+ margin: 0 0.5rem;
128
+ color: #bbb;
129
+ }
130
+ }
131
+
132
+ .employee-address-info {
133
+ display: flex;
134
+ flex-wrap: wrap;
135
+ gap: 1.5rem;
136
+ margin-top: 1rem;
137
+
138
+ .info-block {
139
+ min-width: 160px;
140
+
141
+ h4 {
142
+ font-size: 0.95rem;
143
+ color: #6c757d;
144
+ margin-bottom: 0.2rem;
145
+ }
146
+
147
+ p {
148
+ font-weight: bold;
149
+ font-size: 0.95rem;
150
+ color: #222;
151
+ }
152
+ }
153
+
154
+ .cart-block {
155
+ display: flex;
156
+ align-items: center;
157
+ gap: 0.5rem;
158
+
159
+ .cart-icon {
160
+ position: relative;
161
+ font-size: 1.8rem;
162
+
163
+ .cart-count {
164
+ background: #ffcd00;
165
+ color: #000;
166
+ border-radius: 50%;
167
+ font-size: 0.8rem;
168
+ padding: 0.2rem 0.4rem;
169
+ position: absolute;
170
+ top: -10px;
171
+ right: -10px;
172
+ }
173
+ }
174
+
175
+ .cart-price {
176
+ h4 {
177
+ font-size: 0.95rem;
178
+ margin-bottom: 0;
179
+ }
180
+
181
+ p {
182
+ font-weight: bold;
183
+ font-size: 1rem;
184
+ }
185
+ }
186
+ }
187
+ }
188
+ }
189
+
190
+ // Responsive
191
+ @media (max-width: 768px) {
192
+ .buy-for-header {
193
+ flex-direction: column;
194
+ align-items: flex-start;
195
+ gap: 0.8rem;
196
+ }
197
+
198
+ .employee-address-info {
199
+ flex-direction: column;
200
+ gap: 1rem;
201
+ }
202
+ }
203
+ }
@@ -14,23 +14,24 @@
14
14
  max-width: 600px;
15
15
  background: #ffffff;
16
16
  border-radius: 12px;
17
- padding: 24px;
18
17
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
19
18
  display: flex;
20
19
  flex-direction: column;
21
- max-height: 80vh;
20
+ max-height: 83vh;
22
21
  overflow-y: auto;
23
22
  }
24
23
 
25
24
  .popup_header {
26
25
  display: flex;
27
- flex-direction: column;
28
- margin-bottom: 16px;
26
+ justify-content: space-between;
27
+ border-bottom: 1px solid var(--_gray-200);
28
+ padding: 16px 24px;
29
29
 
30
30
  h2 {
31
- font-size: 20px;
31
+ font-size: 18px;
32
32
  font-weight: 600;
33
33
  margin: 0;
34
+ line-height: 28px;
34
35
  }
35
36
 
36
37
  p {
@@ -40,6 +41,38 @@
40
41
  }
41
42
  }
42
43
 
44
+ .popup_headertitle {
45
+ ul {
46
+ display: flex;
47
+ align-items: center;
48
+ gap: 12px;
49
+ font-size: 14px;
50
+ color: var(--_gray-600);
51
+
52
+ li {
53
+ &::after {
54
+ background: var(--_gray-300);
55
+ width: 5px;
56
+ height: 5px;
57
+ content: " ";
58
+ border-radius: 50%;
59
+ display: inline-block;
60
+ margin-left: 12px;
61
+ }
62
+
63
+ &:last-child::after {
64
+ padding: 0;
65
+ width: 0;
66
+ margin: 0;
67
+ }
68
+ }
69
+ }
70
+ }
71
+
72
+ .popup_body {
73
+ padding: 24px;
74
+ }
75
+
43
76
  .search_input {
44
77
  padding: 10px 12px;
45
78
  border: 1px solid #ddd;
@@ -47,7 +80,7 @@
47
80
  margin-bottom: 16px;
48
81
  width: 100%;
49
82
  font-size: 14px;
50
- width: 300px !important;
83
+ // width: 300px !important;
51
84
  height: 40px !important;
52
85
  border: 1px solid var(--_gray-200) !important;
53
86
 
@@ -71,31 +104,44 @@
71
104
  align-items: center;
72
105
  gap: 8px;
73
106
  font-weight: 500;
74
- font-size: 15px;
107
+ font-size: 14px;
75
108
  margin-bottom: 8px;
109
+ padding: 8px;
110
+ border-bottom: 1px solid var(--_gray-200);
111
+
76
112
  input {
77
113
  width: auto;
78
114
  }
115
+
116
+ label {
117
+ color: var(--_gray-600);
118
+ font-size: 14px;
119
+ font-weight: 400;
120
+ }
79
121
  }
80
122
 
81
123
  .user_card {
82
124
  display: flex;
83
125
  justify-content: space-between;
84
126
  align-items: center;
85
- padding: 10px 12px;
86
- border: 1px solid #ddd;
87
- border-radius: 8px;
88
- margin-bottom: 6px;
127
+ padding: 16px;
128
+ border: 1px solid var(--_gray-200);
129
+ border-radius: 6px;
130
+ margin-bottom: 8px;
89
131
  cursor: pointer;
90
132
  transition: all 0.2s ease;
91
133
 
134
+ &:last-child {
135
+ margin-bottom: 0;
136
+ }
137
+
92
138
  &:hover {
93
- background-color: #f5f5f5;
139
+ background-color: var(--_primary-25);
94
140
  }
95
141
 
96
142
  &.selected {
97
- background-color: #e6f4ff;
98
- border-color: #007bff;
143
+ background-color: var(--_primary-25);
144
+ border-color: var(--_primary-300);
99
145
  }
100
146
 
101
147
  .user_info {
@@ -109,14 +155,18 @@
109
155
  .user_id {
110
156
  font-size: 12px;
111
157
  color: #666;
158
+ display: flex;
159
+ gap: 4px;
160
+ margin-top: 6px;
112
161
  }
113
162
  }
114
163
 
115
164
  .selected_icon {
116
165
  font-size: 16px;
166
+
117
167
  svg {
118
168
  path {
119
- stroke: var(--_primary-500);
169
+ stroke: var(--_primary-400);
120
170
  }
121
171
  }
122
172
  }
@@ -125,12 +175,13 @@
125
175
 
126
176
  .popup_footer {
127
177
  display: flex;
128
- justify-content: space-between;
129
- margin-top: 24px;
178
+ padding: 16px 24px;
179
+ border-top: 1px solid var(--_gray-200);
180
+ justify-content: end;
130
181
 
131
182
  button {
132
183
  padding: 10px 16px;
133
- border-radius: 6px;
184
+ border-radius: 4px;
134
185
  font-size: 14px;
135
186
  font-weight: 500;
136
187
  cursor: pointer;
@@ -138,20 +189,33 @@
138
189
  transition: background 0.2s ease;
139
190
 
140
191
  &:first-child {
141
- background: #f3f3f3;
192
+ // background: #f3f3f3;
142
193
  color: #333;
143
194
 
144
195
  &:hover {
145
- background: #e0e0e0;
196
+ // background: #e0e0e0;
146
197
  }
147
198
  }
148
199
 
149
200
  &.proceed_button {
150
- background: #007bff;
201
+ background: var(--_primary-400);
151
202
  color: #fff;
203
+ display: flex;
204
+ gap: 10px;
205
+
206
+ span {
207
+ svg {
208
+ width: 18px;
209
+ height: 18px;
210
+
211
+ path {
212
+ stroke: #ffffff;
213
+ }
214
+ }
215
+ }
152
216
 
153
217
  &:disabled {
154
- background: #ccc;
218
+ background: var(--_primary-100);
155
219
  cursor: not-allowed;
156
220
  }
157
221
 
@@ -359,7 +359,7 @@ $resizeActive: '[data-cms-element-resizer="true"]';
359
359
  align-items: center;
360
360
 
361
361
  .create-btn {
362
- background-color: #2563eb;
362
+ background-color: #243dc6;
363
363
  color: #fff;
364
364
  padding: 0.5rem 1rem;
365
365
  border-radius: 0.375rem;
@@ -0,0 +1,201 @@
1
+ @use "sass:map";
2
+ @use "sass:list";
3
+
4
+ // Variables
5
+ $primary-color: #243dc6;
6
+ $text-color: #2d2d2d;
7
+ $background-color: #ffffff;
8
+ $border-radius: 8px;
9
+ $input-border: #e0e0e0;
10
+ $error-color: #e53935;
11
+ $hint-color: #7d7d7d;
12
+ $shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
13
+
14
+ // Sidebar Overlay
15
+ .sidebar__overlay {
16
+ position: fixed;
17
+ width: 100%;
18
+ height: 100%;
19
+ top: 0;
20
+ background: rgba(112, 112, 112, 0.13);
21
+ z-index: 9999;
22
+ }
23
+
24
+ .sidebar__container {
25
+ position: fixed;
26
+ top: 0;
27
+ right: 0;
28
+ width: 220px;
29
+ max-width: 100%;
30
+ height: 100vh;
31
+ background: $background-color;
32
+ box-shadow: $shadow;
33
+ z-index: 1001;
34
+ display: flex;
35
+ flex-direction: column;
36
+ animation: slide-in 0.3s ease-out;
37
+ overflow-y: auto;
38
+
39
+ @keyframes slide-in {
40
+ from {
41
+ transform: translateX(100%);
42
+ }
43
+ to {
44
+ transform: translateX(0);
45
+ }
46
+ }
47
+ }
48
+
49
+ // Sidebar Header
50
+ .sidebar__header {
51
+ display: flex;
52
+ justify-content: flex-end;
53
+ align-items: center;
54
+ padding: 8px 16px;
55
+ position: sticky;
56
+ top: 0;
57
+ background: #fff;
58
+ z-index: 1;
59
+
60
+ h2 {
61
+ font-size: 18px;
62
+ font-weight: 600;
63
+ color: $text-color;
64
+ margin: 0;
65
+ }
66
+
67
+ .close__btn {
68
+ background: none;
69
+ border: none;
70
+ padding: 0;
71
+ margin: 0;
72
+ cursor: pointer;
73
+
74
+ svg {
75
+ width: 24px;
76
+ height: 24px;
77
+ }
78
+ }
79
+ }
80
+
81
+ // Sidebar Footer
82
+ .sidebar__footer {
83
+ margin-top: auto;
84
+ display: flex;
85
+ flex-direction: column;
86
+ justify-content: center;
87
+ padding: 12px;
88
+ border-top: 1px solid #eee;
89
+
90
+ .discard__btn {
91
+ background: none;
92
+ border: none;
93
+ color: $text-color;
94
+ cursor: pointer;
95
+ font-weight: 500;
96
+ margin-bottom: 10px;
97
+ }
98
+
99
+ .share__btn {
100
+ background: $primary-color;
101
+ color: $background-color;
102
+ border: none;
103
+ padding: 10px 16px;
104
+ border-radius: $border-radius;
105
+ cursor: pointer;
106
+ font-weight: 600;
107
+ transition: background 0.2s;
108
+
109
+ &:hover {
110
+ // background: darken($primary-color, 5%);
111
+ background: color-mix(in srgb, #{$primary-color} 95%, transparent 5%);
112
+ }
113
+ }
114
+ }
115
+
116
+ // Cart Popup
117
+ .cart__popup {
118
+ padding: 12px;
119
+ background-color: #fff;
120
+ border-radius: 8px;
121
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
122
+ }
123
+
124
+ .cart__header {
125
+ display: flex;
126
+ flex-direction: column;
127
+ align-items: center;
128
+ margin-bottom: 20px;
129
+ }
130
+
131
+ .total__label {
132
+ font-size: 16px;
133
+ font-weight: normal;
134
+ color: #333;
135
+ }
136
+
137
+ .total__price {
138
+ font-size: 20px;
139
+ font-weight: bold;
140
+ color: black;
141
+ }
142
+
143
+ .view-cart__btn {
144
+ padding: 10px 15px;
145
+ background-color: #007bff;
146
+ color: #fff;
147
+ border: none;
148
+ border-radius: 4px;
149
+ cursor: pointer;
150
+ margin-top: 15px;
151
+
152
+ &:hover {
153
+ background-color: #0056b3;
154
+ }
155
+ }
156
+
157
+ // Cart Content
158
+ .cart__content {
159
+ .cart__list-title {
160
+ font-size: 18px;
161
+ font-weight: bold;
162
+ margin-bottom: 10px;
163
+ text-align: center;
164
+ }
165
+
166
+ .cart__items {
167
+ .cart__item {
168
+ display: flex;
169
+ flex-direction: column;
170
+ align-items: center;
171
+ margin-bottom: 20px;
172
+ text-align: center;
173
+ padding: 10px;
174
+ border-bottom: 1px solid #eee;
175
+
176
+ .item__info {
177
+ margin-top: 10px;
178
+ text-align: center;
179
+ }
180
+
181
+ .item__title {
182
+ font-size: 16px;
183
+ font-weight: normal;
184
+ color: #333;
185
+ margin-bottom: 5px;
186
+ }
187
+
188
+ .item__price {
189
+ font-size: 18px;
190
+ font-weight: bold;
191
+ color: black;
192
+ }
193
+
194
+ .item__image {
195
+ max-width: 150px;
196
+ height: auto;
197
+ border-radius: 4px;
198
+ }
199
+ }
200
+ }
201
+ }