ui-soxo-bootstrap-core 2.6.41 → 2.6.42
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.
|
@@ -526,7 +526,7 @@ function panelActions(item, model, setSelectedRecord, setDrawerTitle, setDrawerV
|
|
|
526
526
|
<EditOutlined />
|
|
527
527
|
</Button>
|
|
528
528
|
)}
|
|
529
|
-
<Button
|
|
529
|
+
{/* <Button
|
|
530
530
|
size="small"
|
|
531
531
|
type="default"
|
|
532
532
|
onClick={() => {
|
|
@@ -536,7 +536,7 @@ function panelActions(item, model, setSelectedRecord, setDrawerTitle, setDrawerV
|
|
|
536
536
|
}}
|
|
537
537
|
>
|
|
538
538
|
<CopyOutlined />
|
|
539
|
-
</Button>
|
|
539
|
+
</Button> */}
|
|
540
540
|
<Popconfirm title="Are you sure?" onConfirm={() => deleteRecord(item)}>
|
|
541
541
|
<Button danger size="small" type="default">
|
|
542
542
|
<DeleteOutlined />
|
|
@@ -1290,7 +1290,27 @@ export default function ProcessStepsPage({ match, CustomComponents = {}, ...prop
|
|
|
1290
1290
|
</div>
|
|
1291
1291
|
)} */}
|
|
1292
1292
|
|
|
1293
|
-
<div className=
|
|
1293
|
+
<div className={`steps-top-bar${isStepFullscreen ? ' is-fullscreen' : ''}`}>
|
|
1294
|
+
{/*
|
|
1295
|
+
Full-screen toggle is anchored to the far left of the bar so the
|
|
1296
|
+
step tabs can stretch across the middle and the primary CTA sits
|
|
1297
|
+
flush right (see design).
|
|
1298
|
+
*/}
|
|
1299
|
+
<Button
|
|
1300
|
+
className="steps-fullscreen-toggle"
|
|
1301
|
+
type="dashed"
|
|
1302
|
+
icon={isStepFullscreen ? <CompressOutlined /> : <ExpandOutlined />}
|
|
1303
|
+
onClick={toggleStepFullscreen}
|
|
1304
|
+
aria-label={isStepFullscreen ? 'Exit Full Screen' : 'Full Screen'}
|
|
1305
|
+
title={isStepFullscreen ? 'Exit Full Screen' : 'Full Screen'}
|
|
1306
|
+
>
|
|
1307
|
+
{isStepFullscreen ? 'Exit Full Screen' : 'Full Screen'}
|
|
1308
|
+
</Button>
|
|
1309
|
+
|
|
1310
|
+
{/*
|
|
1311
|
+
Breadcrumb strip stays visible in fullscreen mode too so the
|
|
1312
|
+
user keeps the step timeline / navigation while presenting.
|
|
1313
|
+
*/}
|
|
1294
1314
|
<div className="steps-breadcrumb-strip">
|
|
1295
1315
|
{steps.length ? (
|
|
1296
1316
|
steps.map((stepItem, stepIndex) => {
|
|
@@ -1315,10 +1335,6 @@ export default function ProcessStepsPage({ match, CustomComponents = {}, ...prop
|
|
|
1315
1335
|
</div>
|
|
1316
1336
|
|
|
1317
1337
|
<div className="steps-nav-actions">
|
|
1318
|
-
<Button type="dashed" icon={isStepFullscreen ? <CompressOutlined /> : <ExpandOutlined />} onClick={toggleStepFullscreen}>
|
|
1319
|
-
{isStepFullscreen ? 'Exit Full Screen' : 'Full Screen'}
|
|
1320
|
-
</Button>
|
|
1321
|
-
|
|
1322
1338
|
{/*
|
|
1323
1339
|
Previous-process button.
|
|
1324
1340
|
- Only relevant at the start of a process (`activeStep === 0`)
|
|
@@ -1333,7 +1349,13 @@ export default function ProcessStepsPage({ match, CustomComponents = {}, ...prop
|
|
|
1333
1349
|
)}
|
|
1334
1350
|
|
|
1335
1351
|
{activeStep > 0 && (
|
|
1336
|
-
<Button
|
|
1352
|
+
<Button
|
|
1353
|
+
type="default"
|
|
1354
|
+
icon={<ArrowLeftOutlined />}
|
|
1355
|
+
onClick={handlePrevious}
|
|
1356
|
+
aria-label="Back"
|
|
1357
|
+
title="Back"
|
|
1358
|
+
>
|
|
1337
1359
|
Back
|
|
1338
1360
|
</Button>
|
|
1339
1361
|
)}
|
|
@@ -1366,7 +1388,13 @@ export default function ProcessStepsPage({ match, CustomComponents = {}, ...prop
|
|
|
1366
1388
|
)}
|
|
1367
1389
|
</>
|
|
1368
1390
|
) : (
|
|
1369
|
-
<Button
|
|
1391
|
+
<Button
|
|
1392
|
+
type="primary"
|
|
1393
|
+
disabled={!isStepCompleted}
|
|
1394
|
+
onClick={handleNext}
|
|
1395
|
+
aria-label={activeStep === 0 ? (FIRST_STEP_LABELS[processName?.trim().toLowerCase()] ?? 'Next') : 'Next'}
|
|
1396
|
+
title={activeStep === 0 ? (FIRST_STEP_LABELS[processName?.trim().toLowerCase()] ?? 'Next') : 'Next'}
|
|
1397
|
+
>
|
|
1370
1398
|
{/*
|
|
1371
1399
|
First-step label is resolved via FIRST_STEP_LABELS using
|
|
1372
1400
|
the process name (lowercased + trimmed) as the key. Known
|
|
@@ -1464,10 +1492,10 @@ export default function ProcessStepsPage({ match, CustomComponents = {}, ...prop
|
|
|
1464
1492
|
</button>
|
|
1465
1493
|
</>
|
|
1466
1494
|
) : null}
|
|
1467
|
-
<div
|
|
1495
|
+
{/* <div
|
|
1468
1496
|
key={`${currentProcessId}_${activeStep}`}
|
|
1469
1497
|
className={`steps-chat-step-card ${stepSlideDirection === 'backward' ? 'slide-backward' : 'slide-forward'}`}
|
|
1470
|
-
>
|
|
1498
|
+
> */}
|
|
1471
1499
|
{/* <div className="steps-chat-step-top">
|
|
1472
1500
|
<span className="steps-index-pill">
|
|
1473
1501
|
Step {Math.min(activeStep + 1, steps.length || 1)} of {steps.length || 1}
|
|
@@ -1476,15 +1504,15 @@ export default function ProcessStepsPage({ match, CustomComponents = {}, ...prop
|
|
|
1476
1504
|
{currentStep?.step_description ? <p className="steps-description">{currentStep.step_description}</p> : null}
|
|
1477
1505
|
</div> */}
|
|
1478
1506
|
|
|
1479
|
-
<div className="steps-chat-step-component">
|
|
1507
|
+
{/* <div className="steps-chat-step-component"> */}
|
|
1480
1508
|
{loading ? (
|
|
1481
1509
|
<div className="steps-chat-loading">
|
|
1482
1510
|
<Spin />
|
|
1483
1511
|
</div>
|
|
1484
1512
|
) : null}
|
|
1485
1513
|
{!loading ? renderDynamicStep() : null}
|
|
1486
|
-
</div>
|
|
1487
|
-
</div>
|
|
1514
|
+
{/* </div> */}
|
|
1515
|
+
{/* </div> */}
|
|
1488
1516
|
</div>
|
|
1489
1517
|
</div>
|
|
1490
1518
|
|
|
@@ -159,16 +159,19 @@
|
|
|
159
159
|
flex: 0 0 auto;
|
|
160
160
|
display: flex;
|
|
161
161
|
align-items: center;
|
|
162
|
-
gap:
|
|
163
|
-
padding:
|
|
164
|
-
|
|
165
|
-
background: #f8fbff;
|
|
166
|
-
min-height: 50px;
|
|
162
|
+
gap: 12px;
|
|
163
|
+
padding: 0 24px;
|
|
164
|
+
min-height: 70px;
|
|
167
165
|
width: 100%;
|
|
168
166
|
max-width: 100%;
|
|
169
167
|
min-width: 0;
|
|
170
168
|
box-sizing: border-box;
|
|
171
169
|
overflow: hidden;
|
|
170
|
+
position: relative;
|
|
171
|
+
/* Clean solid header on the soft sage → ivory gradient (no glass/frost).
|
|
172
|
+
Matches the onboarding reference without the frosted-glass treatment. */
|
|
173
|
+
border-bottom: 1px solid rgba(255, 255, 255, 0.4);
|
|
174
|
+
background: linear-gradient(180deg, #a7c2c6 0%, #eff3e3 100%);
|
|
172
175
|
}
|
|
173
176
|
|
|
174
177
|
.steps-breadcrumb-strip {
|
|
@@ -176,13 +179,45 @@
|
|
|
176
179
|
min-width: 0;
|
|
177
180
|
display: flex;
|
|
178
181
|
align-items: center;
|
|
179
|
-
|
|
182
|
+
justify-content: center;
|
|
183
|
+
gap: 52px;
|
|
180
184
|
overflow-x: auto;
|
|
181
185
|
overflow-y: hidden;
|
|
182
186
|
white-space: nowrap;
|
|
183
|
-
scrollbar-width:
|
|
184
|
-
|
|
185
|
-
|
|
187
|
+
scrollbar-width: none;
|
|
188
|
+
padding: 0 8px;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
.steps-breadcrumb-strip::-webkit-scrollbar {
|
|
192
|
+
height: 0;
|
|
193
|
+
display: none;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
/* Full-screen toggle — grey frosted pill anchored to the far left. */
|
|
197
|
+
.steps-fullscreen-toggle {
|
|
198
|
+
flex: 0 0 auto;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.steps-fullscreen-toggle.ant-btn,
|
|
202
|
+
.steps-fullscreen-toggle.ant-btn-dashed {
|
|
203
|
+
height: 38px;
|
|
204
|
+
padding: 0 18px;
|
|
205
|
+
border-radius: 999px;
|
|
206
|
+
background: #07232E33;
|
|
207
|
+
border: 1px solid #dbe3e6;
|
|
208
|
+
color: #ffffff;
|
|
209
|
+
font-size: 13px;
|
|
210
|
+
font-weight: 500;
|
|
211
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
|
|
212
|
+
transition: all 0.2s ease;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
.steps-fullscreen-toggle.ant-btn:hover,
|
|
216
|
+
.steps-fullscreen-toggle.ant-btn:focus {
|
|
217
|
+
background: #ffffff;
|
|
218
|
+
border-color: #ffffff;
|
|
219
|
+
color: #000000;
|
|
220
|
+
transform: translateY(-1px);
|
|
186
221
|
}
|
|
187
222
|
|
|
188
223
|
.steps-nav-actions {
|
|
@@ -190,20 +225,40 @@
|
|
|
190
225
|
display: flex;
|
|
191
226
|
align-items: center;
|
|
192
227
|
gap: 6px;
|
|
228
|
+
/*
|
|
229
|
+
Anchors the Back + primary CTA to the far right. In fullscreen the
|
|
230
|
+
breadcrumb strip is not rendered, so this margin keeps the group pinned
|
|
231
|
+
right with only the Full Screen toggle sitting on the left.
|
|
232
|
+
*/
|
|
233
|
+
margin-left: auto;
|
|
193
234
|
}
|
|
194
235
|
|
|
195
236
|
.steps-nav-actions .ant-btn {
|
|
196
|
-
min-height:
|
|
197
|
-
border-radius:
|
|
198
|
-
padding: 0
|
|
237
|
+
min-height: 40px;
|
|
238
|
+
border-radius: 999px;
|
|
239
|
+
padding: 0 18px;
|
|
199
240
|
font-size: 13px;
|
|
200
241
|
font-weight: 600;
|
|
201
242
|
touch-action: manipulation;
|
|
202
243
|
-webkit-tap-highlight-color: transparent;
|
|
203
|
-
transition: all 0.
|
|
244
|
+
transition: all 0.2s ease;
|
|
204
245
|
white-space: nowrap;
|
|
205
246
|
}
|
|
206
247
|
|
|
248
|
+
/* Secondary (Back / previous-process) — solid white pill. */
|
|
249
|
+
.steps-nav-actions .ant-btn-default {
|
|
250
|
+
background: #ffffff;
|
|
251
|
+
border-color: #dbe3e6;
|
|
252
|
+
color: #4a5a68;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
.steps-nav-actions .ant-btn-default:hover,
|
|
256
|
+
.steps-nav-actions .ant-btn-default:focus {
|
|
257
|
+
background: #f4f7f8;
|
|
258
|
+
border-color: #c3ccd0;
|
|
259
|
+
color: #253a5b;
|
|
260
|
+
}
|
|
261
|
+
|
|
207
262
|
.steps-nav-actions .ant-btn:active {
|
|
208
263
|
transform: scale(0.97);
|
|
209
264
|
}
|
|
@@ -253,17 +308,23 @@
|
|
|
253
308
|
}
|
|
254
309
|
|
|
255
310
|
.steps-breadcrumb-item {
|
|
311
|
+
/* Compact, natural-width steps that sit centered with connector lines
|
|
312
|
+
between them — matching the onboarding reference. */
|
|
313
|
+
position: relative;
|
|
314
|
+
flex: 0 0 auto;
|
|
315
|
+
min-width: 0;
|
|
256
316
|
display: inline-flex;
|
|
257
317
|
align-items: center;
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
318
|
+
justify-content: flex-start;
|
|
319
|
+
gap: 8px;
|
|
320
|
+
border: none;
|
|
321
|
+
background: transparent;
|
|
261
322
|
border-radius: 999px;
|
|
262
|
-
padding:
|
|
323
|
+
padding: 4px;
|
|
263
324
|
cursor: pointer;
|
|
264
|
-
transition: all 0.
|
|
265
|
-
color: #
|
|
266
|
-
font-size:
|
|
325
|
+
transition: all 0.2s ease;
|
|
326
|
+
color: #7a8792;
|
|
327
|
+
font-size: 13px;
|
|
267
328
|
font-weight: 500;
|
|
268
329
|
white-space: nowrap;
|
|
269
330
|
min-height: 34px;
|
|
@@ -271,56 +332,109 @@
|
|
|
271
332
|
-webkit-tap-highlight-color: transparent;
|
|
272
333
|
}
|
|
273
334
|
|
|
274
|
-
.
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
335
|
+
/* Thin connecting line drawn into the gap toward the next step. */
|
|
336
|
+
.steps-breadcrumb-item:not(:last-child)::after {
|
|
337
|
+
content: '';
|
|
338
|
+
position: absolute;
|
|
339
|
+
left: 100%;
|
|
340
|
+
top: 50%;
|
|
341
|
+
width: 52px;
|
|
342
|
+
height: 1px;
|
|
343
|
+
background: rgba(37, 58, 91, 0.2);
|
|
344
|
+
transform: translateY(-50%);
|
|
278
345
|
}
|
|
279
346
|
|
|
280
347
|
.steps-breadcrumb-item:active {
|
|
281
|
-
transform: scale(0.
|
|
348
|
+
transform: scale(0.97);
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
/* Number bubble — default (upcoming) solid muted circle. */
|
|
352
|
+
.steps-breadcrumb-index {
|
|
353
|
+
width: 26px;
|
|
354
|
+
height: 26px;
|
|
355
|
+
border-radius: 50%;
|
|
356
|
+
display: inline-flex;
|
|
357
|
+
align-items: center;
|
|
358
|
+
justify-content: center;
|
|
359
|
+
font-size: 12px;
|
|
360
|
+
font-weight: 600;
|
|
361
|
+
background: #ffffff;
|
|
362
|
+
border: 1px solid #d3dbdf;
|
|
363
|
+
color: #8a97a2;
|
|
364
|
+
flex: 0 0 auto;
|
|
365
|
+
transition: all 0.2s ease;
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
.steps-breadcrumb-item:hover .steps-breadcrumb-index {
|
|
369
|
+
border-color: rgba(37, 58, 91, 0.35);
|
|
370
|
+
color: #253a5b;
|
|
282
371
|
}
|
|
283
372
|
|
|
373
|
+
/* Label is shown only for the active step (upcoming steps are circle-only,
|
|
374
|
+
as in the reference). */
|
|
375
|
+
.steps-breadcrumb-label {
|
|
376
|
+
display: none;
|
|
377
|
+
font-size: 13px;
|
|
378
|
+
font-weight: 500;
|
|
379
|
+
color: inherit;
|
|
380
|
+
min-width: 0;
|
|
381
|
+
overflow: hidden;
|
|
382
|
+
text-overflow: ellipsis;
|
|
383
|
+
white-space: nowrap;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
/* ACTIVE — solid white rounded pill with dark navy text. */
|
|
284
387
|
.steps-breadcrumb-item.active {
|
|
285
|
-
background: #
|
|
286
|
-
|
|
287
|
-
|
|
388
|
+
background: #ffffff;
|
|
389
|
+
padding: 4px 16px 4px 6px;
|
|
390
|
+
box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
|
|
391
|
+
color: #253a5b;
|
|
288
392
|
font-weight: 600;
|
|
289
393
|
}
|
|
290
394
|
|
|
291
|
-
.steps-breadcrumb-item.
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
color: #
|
|
395
|
+
.steps-breadcrumb-item.active .steps-breadcrumb-index {
|
|
396
|
+
background: #ffffff;
|
|
397
|
+
border-color: rgba(37, 58, 91, 0.25);
|
|
398
|
+
color: #253a5b;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
.steps-breadcrumb-item.active .steps-breadcrumb-label {
|
|
402
|
+
display: inline;
|
|
403
|
+
color: #253a5b;
|
|
295
404
|
}
|
|
296
405
|
|
|
406
|
+
/* COMPLETED — filled navy circle. */
|
|
297
407
|
.steps-breadcrumb-item.completed .steps-breadcrumb-index {
|
|
298
|
-
background: #
|
|
408
|
+
background: #253a5b;
|
|
409
|
+
border-color: #253a5b;
|
|
299
410
|
color: #ffffff;
|
|
300
411
|
}
|
|
301
412
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
413
|
+
/* Primary CTA (Start / Verify Profile / Next / Finish) — dark navy pill. */
|
|
414
|
+
.steps-nav-actions .ant-btn-primary {
|
|
415
|
+
background: #253a5b;
|
|
416
|
+
border-color: #253a5b;
|
|
417
|
+
border-radius: 999px;
|
|
418
|
+
padding: 0 30px;
|
|
419
|
+
min-height: 40px;
|
|
420
|
+
box-shadow: 0 8px 20px rgba(37, 58, 91, 0.28);
|
|
305
421
|
}
|
|
306
422
|
|
|
307
|
-
.steps-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
border-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
justify-content: center;
|
|
314
|
-
font-size: 11px;
|
|
315
|
-
font-weight: 700;
|
|
316
|
-
background: #e2e8f4;
|
|
317
|
-
color: #1e293b;
|
|
318
|
-
flex: 0 0 auto;
|
|
423
|
+
.steps-nav-actions .ant-btn-primary:hover,
|
|
424
|
+
.steps-nav-actions .ant-btn-primary:focus {
|
|
425
|
+
background: #1d3054;
|
|
426
|
+
border-color: #1d3054;
|
|
427
|
+
transform: translateY(-1px);
|
|
428
|
+
box-shadow: 0 12px 26px rgba(37, 58, 91, 0.36);
|
|
319
429
|
}
|
|
320
430
|
|
|
321
|
-
.steps-
|
|
322
|
-
|
|
323
|
-
|
|
431
|
+
.steps-nav-actions .ant-btn-primary:disabled,
|
|
432
|
+
.steps-nav-actions .ant-btn-primary[disabled] {
|
|
433
|
+
background: #c8d0e0;
|
|
434
|
+
border-color: #c8d0e0;
|
|
435
|
+
color: #ffffff;
|
|
436
|
+
box-shadow: none;
|
|
437
|
+
transform: none;
|
|
324
438
|
}
|
|
325
439
|
|
|
326
440
|
.steps-breadcrumb-empty {
|
|
@@ -347,8 +461,8 @@
|
|
|
347
461
|
padding: 10px 14px;
|
|
348
462
|
box-sizing: border-box;
|
|
349
463
|
position: relative;
|
|
464
|
+
background: linear-gradient(180deg, #a7c2c6 0%, #eff3e3 100%);
|
|
350
465
|
}
|
|
351
|
-
|
|
352
466
|
.steps-stage-body.is-swipe-enabled {
|
|
353
467
|
touch-action: pan-y;
|
|
354
468
|
}
|