@keenmate/pure-admin-core 2.9.0-rc03 → 2.9.0-rc05
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/README.md +55 -13
- package/dist/css/main.css +554 -7
- package/package.json +3 -1
- package/snippets/buttons.html +51 -0
- package/snippets/cards.html +132 -47
- package/snippets/comparison.html +26 -22
- package/snippets/manifest.json +180 -115
- package/snippets/range-group.html +125 -0
- package/snippets/splitter.html +44 -38
- package/snippets/statistics.html +31 -0
- package/src/js/btn-split-auto-absorb.js +327 -0
- package/src/js/command-palette.js +472 -0
- package/src/js/file-selector.js +1275 -0
- package/src/js/internal/logging.js +121 -0
- package/src/js/logic-tree-renderer.js +303 -0
- package/src/js/modal-dialogs.js +460 -0
- package/src/js/overflow.js +371 -0
- package/src/js/pa-stat-fit.js +184 -0
- package/src/js/range-group.js +663 -0
- package/src/js/search-autocomplete-v2.js +907 -0
- package/src/js/search-autocomplete.js +434 -0
- package/src/js/settings-panel.js +245 -0
- package/src/js/split-button.js +141 -0
- package/src/js/splitter.js +1323 -0
- package/src/js/toast-service.js +302 -0
- package/src/js/tooltips-popovers.js +275 -0
- package/src/js/virtual-scroll.js +143 -0
- package/src/js/virtual-textbox.js +803 -0
- package/src/scss/_core.scss +7 -0
- package/src/scss/core-components/_buttons.scss +44 -0
- package/src/scss/core-components/_cards.scss +95 -6
- package/src/scss/core-components/_overflow.scss +50 -0
- package/src/scss/core-components/_range-group.scss +474 -0
- package/src/scss/core-components/_statistics.scss +163 -0
- package/src/scss/variables/_components.scss +41 -2
package/snippets/buttons.html
CHANGED
|
@@ -283,6 +283,57 @@
|
|
|
283
283
|
</div>
|
|
284
284
|
|
|
285
285
|
|
|
286
|
+
<!-- Auto-Absorb Split Button (sibling buttons collapse into menu on resize) -->
|
|
287
|
+
<!-- The .pa-btn-toolbar wrapper provides the constrained-width flex row;
|
|
288
|
+
btn-split-auto-absorb.js moves overflowing siblings into the menu.
|
|
289
|
+
Standalone form (any flex context): -->
|
|
290
|
+
<div class="pa-btn-toolbar">
|
|
291
|
+
<button class="pa-btn pa-btn--primary">Save</button>
|
|
292
|
+
<button class="pa-btn pa-btn--primary">Format</button>
|
|
293
|
+
<button class="pa-btn pa-btn--primary">Refresh</button>
|
|
294
|
+
<button class="pa-btn pa-btn--primary" data-pa-absorb-priority="10">Publish</button>
|
|
295
|
+
<div class="pa-btn-split pa-btn-split--auto-absorb">
|
|
296
|
+
<button class="pa-btn pa-btn--primary">Run</button>
|
|
297
|
+
<button class="pa-btn pa-btn--primary pa-btn-split__toggle" onclick="toggleSplitMenu(event)">
|
|
298
|
+
<i class="fas fa-chevron-down text-2xs pa-btn-split__chevron"></i>
|
|
299
|
+
</button>
|
|
300
|
+
<div class="pa-btn-split__menu">
|
|
301
|
+
<div class="pa-btn-split__menu-inner">
|
|
302
|
+
<button class="pa-btn-split__item">Run with options…</button>
|
|
303
|
+
</div>
|
|
304
|
+
</div>
|
|
305
|
+
</div>
|
|
306
|
+
</div>
|
|
307
|
+
|
|
308
|
+
<!-- In a card header, nest the toolbar inside .pa-card__actions (the canonical
|
|
309
|
+
header actions slot) — same as a plain button row or a .pa-btn-group. The
|
|
310
|
+
framework makes that actions wrapper shrinkable so overflow detection still
|
|
311
|
+
works, and the header title yields before the toolbar collapses. -->
|
|
312
|
+
<div class="pa-card">
|
|
313
|
+
<div class="pa-card__header">
|
|
314
|
+
<h3>Team Members</h3>
|
|
315
|
+
<div class="pa-card__actions">
|
|
316
|
+
<div class="pa-btn-toolbar">
|
|
317
|
+
<button class="pa-btn pa-btn--secondary">Search</button>
|
|
318
|
+
<button class="pa-btn pa-btn--secondary">Filter</button>
|
|
319
|
+
<div class="pa-btn-split pa-btn-split--auto-absorb">
|
|
320
|
+
<button class="pa-btn pa-btn--primary">Add user</button>
|
|
321
|
+
<button class="pa-btn pa-btn--primary pa-btn-split__toggle" onclick="toggleSplitMenu(event)">
|
|
322
|
+
<i class="fas fa-chevron-down text-2xs pa-btn-split__chevron"></i>
|
|
323
|
+
</button>
|
|
324
|
+
<div class="pa-btn-split__menu">
|
|
325
|
+
<div class="pa-btn-split__menu-inner">
|
|
326
|
+
<button class="pa-btn-split__item">Add user with role…</button>
|
|
327
|
+
</div>
|
|
328
|
+
</div>
|
|
329
|
+
</div>
|
|
330
|
+
</div>
|
|
331
|
+
</div>
|
|
332
|
+
</div>
|
|
333
|
+
<div class="pa-card__body">Card content.</div>
|
|
334
|
+
</div>
|
|
335
|
+
|
|
336
|
+
|
|
286
337
|
<!-- BUTTONS WITH ICONS -->
|
|
287
338
|
|
|
288
339
|
<!-- Button with Icon (Text Icon) -->
|
package/snippets/cards.html
CHANGED
|
@@ -11,10 +11,16 @@
|
|
|
11
11
|
</div>
|
|
12
12
|
|
|
13
13
|
|
|
14
|
-
<!-- CARD WITH HEADER
|
|
14
|
+
<!-- CARD WITH HEADER
|
|
15
|
+
The title ALWAYS uses .pa-card__title > .pa-card__title-text (the icon
|
|
16
|
+
span is optional). This is the one canonical header title structure —
|
|
17
|
+
a bare <h3> in the header still renders, but is legacy tolerance, not
|
|
18
|
+
the documented shape. -->
|
|
15
19
|
<div class="pa-card">
|
|
16
20
|
<div class="pa-card__header">
|
|
17
|
-
<
|
|
21
|
+
<div class="pa-card__title">
|
|
22
|
+
<h3 class="pa-card__title-text">Card Title</h3>
|
|
23
|
+
</div>
|
|
18
24
|
</div>
|
|
19
25
|
<div class="pa-card__body">
|
|
20
26
|
Card content goes here.
|
|
@@ -28,7 +34,9 @@
|
|
|
28
34
|
Card content goes here.
|
|
29
35
|
</div>
|
|
30
36
|
<div class="pa-card__footer">
|
|
31
|
-
<
|
|
37
|
+
<div class="pa-card__actions">
|
|
38
|
+
<button class="pa-btn pa-btn--primary">Action</button>
|
|
39
|
+
</div>
|
|
32
40
|
</div>
|
|
33
41
|
</div>
|
|
34
42
|
|
|
@@ -36,31 +44,37 @@
|
|
|
36
44
|
<!-- COMPLETE CARD (header + body + footer) -->
|
|
37
45
|
<div class="pa-card">
|
|
38
46
|
<div class="pa-card__header">
|
|
39
|
-
<
|
|
47
|
+
<div class="pa-card__title">
|
|
48
|
+
<h3 class="pa-card__title-text">Complete Card</h3>
|
|
49
|
+
</div>
|
|
40
50
|
</div>
|
|
41
51
|
<div class="pa-card__body">
|
|
42
52
|
<p>This card has all three sections: header, body, and footer.</p>
|
|
43
53
|
</div>
|
|
44
54
|
<div class="pa-card__footer">
|
|
45
|
-
<
|
|
46
|
-
|
|
55
|
+
<div class="pa-card__actions">
|
|
56
|
+
<button class="pa-btn pa-btn--secondary">Cancel</button>
|
|
57
|
+
<button class="pa-btn pa-btn--primary">Save</button>
|
|
58
|
+
</div>
|
|
47
59
|
</div>
|
|
48
60
|
</div>
|
|
49
61
|
|
|
50
62
|
|
|
51
63
|
<!-- ================================
|
|
52
64
|
THREE-PART HEADER LAYOUT
|
|
53
|
-
.pa-card__header is a flex row with
|
|
54
|
-
[
|
|
55
|
-
|
|
65
|
+
.pa-card__header is a flex row with three canonical slots:
|
|
66
|
+
[.pa-card__title (truncates)] — [.pa-card__description (flexes, truncates)] — [.pa-card__actions (fixed)]
|
|
67
|
+
The title-text and description get ellipsis on overflow so narrow cards
|
|
56
68
|
never push content out of the header. Use .pa-card__header--wrap
|
|
57
69
|
if you'd rather have the text wrap to multiple lines instead.
|
|
58
70
|
================================ -->
|
|
59
71
|
|
|
60
72
|
<div class="pa-card">
|
|
61
73
|
<div class="pa-card__header">
|
|
62
|
-
<
|
|
63
|
-
|
|
74
|
+
<div class="pa-card__title">
|
|
75
|
+
<h3 class="pa-card__title-text">Dashboard</h3>
|
|
76
|
+
</div>
|
|
77
|
+
<p class="pa-card__description">Live metrics across every connected service — updated every 30 seconds.</p>
|
|
64
78
|
<div class="pa-card__actions">
|
|
65
79
|
<button class="pa-btn pa-btn--sm pa-btn--secondary">Refresh</button>
|
|
66
80
|
</div>
|
|
@@ -71,8 +85,10 @@
|
|
|
71
85
|
<!-- Wrap instead of truncate -->
|
|
72
86
|
<div class="pa-card">
|
|
73
87
|
<div class="pa-card__header pa-card__header--wrap">
|
|
74
|
-
<
|
|
75
|
-
|
|
88
|
+
<div class="pa-card__title">
|
|
89
|
+
<h3 class="pa-card__title-text">Wrapping Header</h3>
|
|
90
|
+
</div>
|
|
91
|
+
<p class="pa-card__description">This description wraps to multiple lines when the header gets narrow, instead of being clipped with an ellipsis.</p>
|
|
76
92
|
<div class="pa-card__actions">
|
|
77
93
|
<button class="pa-btn pa-btn--sm pa-btn--secondary">Action</button>
|
|
78
94
|
</div>
|
|
@@ -90,7 +106,9 @@
|
|
|
90
106
|
<!-- Default (accent-coloured underline) -->
|
|
91
107
|
<div class="pa-card">
|
|
92
108
|
<div class="pa-card__header pa-card__header--underlined">
|
|
93
|
-
<
|
|
109
|
+
<div class="pa-card__title">
|
|
110
|
+
<h3 class="pa-card__title-text">Section</h3>
|
|
111
|
+
</div>
|
|
94
112
|
</div>
|
|
95
113
|
<div class="pa-card__body">Body content.</div>
|
|
96
114
|
</div>
|
|
@@ -98,14 +116,18 @@
|
|
|
98
116
|
<!-- Semantic colour variants -->
|
|
99
117
|
<div class="pa-card">
|
|
100
118
|
<div class="pa-card__header pa-card__header--underlined pa-card__header--underline-success">
|
|
101
|
-
<
|
|
119
|
+
<div class="pa-card__title">
|
|
120
|
+
<h3 class="pa-card__title-text">Success underline</h3>
|
|
121
|
+
</div>
|
|
102
122
|
</div>
|
|
103
123
|
<div class="pa-card__body">Body.</div>
|
|
104
124
|
</div>
|
|
105
125
|
|
|
106
126
|
<div class="pa-card">
|
|
107
127
|
<div class="pa-card__header pa-card__header--underlined pa-card__header--underline-danger">
|
|
108
|
-
<
|
|
128
|
+
<div class="pa-card__title">
|
|
129
|
+
<h3 class="pa-card__title-text">Danger underline</h3>
|
|
130
|
+
</div>
|
|
109
131
|
</div>
|
|
110
132
|
<div class="pa-card__body">Body.</div>
|
|
111
133
|
</div>
|
|
@@ -113,7 +135,9 @@
|
|
|
113
135
|
<!-- Theme colour slot (1..9) -->
|
|
114
136
|
<div class="pa-card">
|
|
115
137
|
<div class="pa-card__header pa-card__header--underlined pa-card__header--underline-color-3">
|
|
116
|
-
<
|
|
138
|
+
<div class="pa-card__title">
|
|
139
|
+
<h3 class="pa-card__title-text">Theme colour 3 underline</h3>
|
|
140
|
+
</div>
|
|
117
141
|
</div>
|
|
118
142
|
<div class="pa-card__body">Body.</div>
|
|
119
143
|
</div>
|
|
@@ -124,7 +148,7 @@
|
|
|
124
148
|
-->
|
|
125
149
|
|
|
126
150
|
|
|
127
|
-
<!-- CARD WITH TITLE
|
|
151
|
+
<!-- CARD WITH TITLE ICON (the icon span is the only optional part) -->
|
|
128
152
|
<div class="pa-card">
|
|
129
153
|
<div class="pa-card__header">
|
|
130
154
|
<div class="pa-card__title">
|
|
@@ -136,8 +160,9 @@
|
|
|
136
160
|
</div>
|
|
137
161
|
</div>
|
|
138
162
|
<div class="pa-card__body">
|
|
139
|
-
|
|
140
|
-
|
|
163
|
+
The title always uses .pa-card__title > .pa-card__title-text; add the
|
|
164
|
+
.pa-card__title-icon span when you want a leading icon. Same structure
|
|
165
|
+
with or without the icon — never a bare <h3>.
|
|
141
166
|
</div>
|
|
142
167
|
</div>
|
|
143
168
|
|
|
@@ -145,18 +170,26 @@
|
|
|
145
170
|
<!-- CARD WITH METADATA -->
|
|
146
171
|
<div class="pa-card">
|
|
147
172
|
<div class="pa-card__header">
|
|
148
|
-
<
|
|
173
|
+
<div class="pa-card__title">
|
|
174
|
+
<h3 class="pa-card__title-text">Article Title</h3>
|
|
175
|
+
</div>
|
|
149
176
|
<span class="pa-card__meta">Published 2 hours ago</span>
|
|
150
177
|
</div>
|
|
151
178
|
<div class="pa-card__body">Article content.</div>
|
|
152
179
|
</div>
|
|
153
180
|
|
|
154
181
|
|
|
155
|
-
<!-- CARD WITH ACTIONS IN HEADER
|
|
182
|
+
<!-- CARD WITH ACTIONS IN HEADER
|
|
183
|
+
.pa-card__actions is THE canonical wrapper for header controls: it is a
|
|
184
|
+
documented card sub-element, carries its own gap + vertical centering, and
|
|
185
|
+
the header flex rules pin it to flex-shrink: 0 so it never gets squeezed.
|
|
186
|
+
Reach for this by default. -->
|
|
156
187
|
<div class="pa-card">
|
|
157
188
|
<div class="pa-card__header">
|
|
158
|
-
<
|
|
159
|
-
|
|
189
|
+
<div class="pa-card__title">
|
|
190
|
+
<h3 class="pa-card__title-text">Card with Actions</h3>
|
|
191
|
+
</div>
|
|
192
|
+
<div class="pa-card__actions">
|
|
160
193
|
<button class="pa-btn pa-btn--sm pa-btn--secondary">Cancel</button>
|
|
161
194
|
<button class="pa-btn pa-btn--sm pa-btn--success">Save</button>
|
|
162
195
|
</div>
|
|
@@ -164,15 +197,38 @@
|
|
|
164
197
|
<div class="pa-card__body">Card content.</div>
|
|
165
198
|
</div>
|
|
166
199
|
|
|
200
|
+
<!-- …want the SEGMENTED (joined-corner) button look? Nest .pa-btn-group
|
|
201
|
+
INSIDE .pa-card__actions. Don't use .pa-btn-group as the direct header
|
|
202
|
+
child — it's a general-purpose button-cluster component, not the card's
|
|
203
|
+
actions slot; putting it straight in the header only "works" because the
|
|
204
|
+
header happens to also pin .pa-btn-group to flex-shrink: 0, and it drags
|
|
205
|
+
the attached-button styling in whether you want it or not. -->
|
|
206
|
+
<div class="pa-card">
|
|
207
|
+
<div class="pa-card__header">
|
|
208
|
+
<div class="pa-card__title">
|
|
209
|
+
<h3 class="pa-card__title-text">Card with Segmented Actions</h3>
|
|
210
|
+
</div>
|
|
211
|
+
<div class="pa-card__actions">
|
|
212
|
+
<div class="pa-btn-group">
|
|
213
|
+
<button class="pa-btn pa-btn--sm pa-btn--secondary">Day</button>
|
|
214
|
+
<button class="pa-btn pa-btn--sm pa-btn--secondary">Week</button>
|
|
215
|
+
<button class="pa-btn pa-btn--sm pa-btn--secondary">Month</button>
|
|
216
|
+
</div>
|
|
217
|
+
</div>
|
|
218
|
+
</div>
|
|
219
|
+
<div class="pa-card__body">Card content.</div>
|
|
220
|
+
</div>
|
|
221
|
+
|
|
167
222
|
|
|
168
223
|
<!-- CARD WITH FOOTER ACTIONS -->
|
|
169
224
|
<div class="pa-card">
|
|
170
225
|
<div class="pa-card__header">
|
|
171
|
-
<
|
|
226
|
+
<div class="pa-card__title">
|
|
227
|
+
<h3 class="pa-card__title-text">Form Card</h3>
|
|
228
|
+
</div>
|
|
172
229
|
</div>
|
|
173
230
|
<div class="pa-card__body">Form content here.</div>
|
|
174
231
|
<div class="pa-card__footer">
|
|
175
|
-
<div></div>
|
|
176
232
|
<div class="pa-card__actions">
|
|
177
233
|
<button class="pa-btn pa-btn--secondary">Cancel</button>
|
|
178
234
|
<button class="pa-btn pa-btn--success">Save</button>
|
|
@@ -184,7 +240,9 @@
|
|
|
184
240
|
<!-- CARD WITH NO-PADDING BODY (for flush tables / lists) -->
|
|
185
241
|
<div class="pa-card">
|
|
186
242
|
<div class="pa-card__header">
|
|
187
|
-
<
|
|
243
|
+
<div class="pa-card__title">
|
|
244
|
+
<h3 class="pa-card__title-text">User List</h3>
|
|
245
|
+
</div>
|
|
188
246
|
</div>
|
|
189
247
|
<div class="pa-card__body pa-card__body--no-padding">
|
|
190
248
|
<table class="pa-table">
|
|
@@ -354,7 +412,9 @@
|
|
|
354
412
|
<!-- Inline tabs — pills that live in the header row -->
|
|
355
413
|
<div class="pa-card">
|
|
356
414
|
<div class="pa-card__header">
|
|
357
|
-
<
|
|
415
|
+
<div class="pa-card__title">
|
|
416
|
+
<h3 class="pa-card__title-text">Sales</h3>
|
|
417
|
+
</div>
|
|
358
418
|
<div class="pa-card__tabs pa-card__tabs--inline">
|
|
359
419
|
<button class="pa-card__tab pa-card__tab--active">Day</button>
|
|
360
420
|
<button class="pa-card__tab">Week</button>
|
|
@@ -372,7 +432,9 @@
|
|
|
372
432
|
identical, but the entire area becomes clickable. -->
|
|
373
433
|
<a href="/products/42" class="pa-card">
|
|
374
434
|
<div class="pa-card__header">
|
|
375
|
-
<
|
|
435
|
+
<div class="pa-card__title">
|
|
436
|
+
<h3 class="pa-card__title-text">Widget Pro</h3>
|
|
437
|
+
</div>
|
|
376
438
|
</div>
|
|
377
439
|
<div class="pa-card__body">
|
|
378
440
|
<p>Click anywhere on this card to navigate.</p>
|
|
@@ -474,21 +536,41 @@ CLICKABLE CARD:
|
|
|
474
536
|
looks identical to a regular card.
|
|
475
537
|
|
|
476
538
|
SUB-ELEMENTS:
|
|
477
|
-
- .pa-card__header Flex row
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
539
|
+
- .pa-card__header Flex row of three canonical slots:
|
|
540
|
+
[.pa-card__title] — [.pa-card__description] —
|
|
541
|
+
[.pa-card__actions]. (Bare h1..h6 / <p> children
|
|
542
|
+
still render + auto-truncate as legacy tolerance,
|
|
543
|
+
but the documented shape is the slots above —
|
|
544
|
+
one structure, so a <Card> wrapper emits one tree.)
|
|
545
|
+
- .pa-card__description Muted, flexing, truncating description line —
|
|
546
|
+
the header's middle slot. Bare <p> tolerated.
|
|
481
547
|
- .pa-card__body flex: 1; standard padding.
|
|
482
548
|
- .pa-card__footer Border-top + footer background; flex row.
|
|
483
|
-
|
|
484
|
-
|
|
549
|
+
Canonical content: optional leading text /
|
|
550
|
+
.pa-card__meta on the left + .pa-card__actions
|
|
551
|
+
on the right. The actions slot auto-pins to the
|
|
552
|
+
trailing edge (no empty spacer <div> needed),
|
|
553
|
+
with or without leading content. Always put
|
|
554
|
+
footer buttons inside .pa-card__actions so they
|
|
555
|
+
don't scatter to opposite corners.
|
|
556
|
+
- .pa-card__actions THE canonical header actions slot. Button/
|
|
557
|
+
control container (gap + align-center);
|
|
558
|
+
flex-shrink: 0 inside header. Use this for any
|
|
559
|
+
set of header controls. For the segmented
|
|
560
|
+
(joined-corner) look, nest a .pa-btn-group
|
|
561
|
+
INSIDE it — don't put .pa-btn-group straight in
|
|
562
|
+
the header (it's a generic button cluster, not
|
|
563
|
+
the actions slot).
|
|
485
564
|
- .pa-card__meta Muted secondary text (dates, byline, etc.).
|
|
486
565
|
|
|
487
|
-
TITLE SUB-COMPONENT:
|
|
488
|
-
- .pa-card__title Flex row wrapping icon + text;
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
566
|
+
TITLE SUB-COMPONENT (the canonical header title — use it for EVERY card):
|
|
567
|
+
- .pa-card__title Flex row wrapping the optional icon + text;
|
|
568
|
+
flex: 0 1 auto (natural width) so a sibling
|
|
569
|
+
.pa-card__description gets the free space and
|
|
570
|
+
.pa-card__actions stays right. Always present,
|
|
571
|
+
with or without an icon — never a bare <h3>.
|
|
572
|
+
- .pa-card__title-icon Fixed-size leading icon (optional).
|
|
573
|
+
- .pa-card__title-text The heading (h1..h6); truncates with ellipsis.
|
|
492
574
|
|
|
493
575
|
BODY MODIFIER:
|
|
494
576
|
- .pa-card__body--no-padding Strips body padding (for tables / lists
|
|
@@ -526,10 +608,9 @@ SECTION WRAPPERS (lighter than a card, for heading-only groupings):
|
|
|
526
608
|
underline, no container behaviour.
|
|
527
609
|
|
|
528
610
|
IMPLICIT BEHAVIOURS:
|
|
529
|
-
- The header
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
--wrap to opt out.
|
|
611
|
+
- The header truncates: .pa-card__title-text and .pa-card__description
|
|
612
|
+
get white-space: nowrap + text-overflow: ellipsis. This is why long
|
|
613
|
+
card titles look "cut off" in narrow columns — use --wrap to opt out.
|
|
533
614
|
- Buttons inside the header get -0.25rem vertical margin so they
|
|
534
615
|
don't grow the header height past $card-header-min-height.
|
|
535
616
|
- Card body :first-child gets margin-top: 0 to avoid double-spacing
|
|
@@ -540,8 +621,10 @@ STRUCTURE PATTERNS:
|
|
|
540
621
|
Card with three-part header:
|
|
541
622
|
<div class="pa-card">
|
|
542
623
|
<div class="pa-card__header">
|
|
543
|
-
<
|
|
544
|
-
|
|
624
|
+
<div class="pa-card__title">
|
|
625
|
+
<h3 class="pa-card__title-text">Title</h3>
|
|
626
|
+
</div>
|
|
627
|
+
<p class="pa-card__description">Description (truncates)</p>
|
|
545
628
|
<div class="pa-card__actions">
|
|
546
629
|
<button class="pa-btn pa-btn--sm">Action</button>
|
|
547
630
|
</div>
|
|
@@ -552,7 +635,9 @@ Card with three-part header:
|
|
|
552
635
|
Card with underlined header (semantic variant):
|
|
553
636
|
<div class="pa-card">
|
|
554
637
|
<div class="pa-card__header pa-card__header--underlined pa-card__header--underline-danger">
|
|
555
|
-
<
|
|
638
|
+
<div class="pa-card__title">
|
|
639
|
+
<h3 class="pa-card__title-text">Critical Settings</h3>
|
|
640
|
+
</div>
|
|
556
641
|
</div>
|
|
557
642
|
<div class="pa-card__body">…</div>
|
|
558
643
|
</div>
|
package/snippets/comparison.html
CHANGED
|
@@ -22,18 +22,20 @@
|
|
|
22
22
|
================================ -->
|
|
23
23
|
|
|
24
24
|
<div class="pa-card">
|
|
25
|
-
<div class="pa-card__header
|
|
25
|
+
<div class="pa-card__header">
|
|
26
26
|
<h3>Version Detail</h3>
|
|
27
|
-
<div class="pa-
|
|
28
|
-
<
|
|
29
|
-
<
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
<
|
|
36
|
-
|
|
27
|
+
<div class="pa-card__actions">
|
|
28
|
+
<div class="pa-btn-group">
|
|
29
|
+
<button class="pa-btn pa-btn--sm pa-btn--primary">
|
|
30
|
+
<i class="fa-solid fa-table-list"></i> View in form
|
|
31
|
+
</button>
|
|
32
|
+
<button class="pa-btn pa-btn--sm pa-btn--secondary">
|
|
33
|
+
<i class="fa-solid fa-table"></i> View in table
|
|
34
|
+
</button>
|
|
35
|
+
<button class="pa-btn pa-btn--sm pa-btn--secondary pa-btn--icon-only">
|
|
36
|
+
<i class="fa-solid fa-location-dot"></i>
|
|
37
|
+
</button>
|
|
38
|
+
</div>
|
|
37
39
|
</div>
|
|
38
40
|
</div>
|
|
39
41
|
<div class="pa-card__body pa-card__body--no-padding">
|
|
@@ -136,18 +138,20 @@
|
|
|
136
138
|
================================ -->
|
|
137
139
|
|
|
138
140
|
<div class="pa-card">
|
|
139
|
-
<div class="pa-card__header
|
|
141
|
+
<div class="pa-card__header">
|
|
140
142
|
<h3>Merge Comparison</h3>
|
|
141
|
-
<div class="pa-
|
|
142
|
-
<
|
|
143
|
-
<
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
<
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
<
|
|
150
|
-
|
|
143
|
+
<div class="pa-card__actions">
|
|
144
|
+
<div class="pa-btn-group">
|
|
145
|
+
<button class="pa-btn pa-btn--sm pa-btn--success">
|
|
146
|
+
<i class="fa-solid fa-code-merge"></i> Accept A
|
|
147
|
+
</button>
|
|
148
|
+
<button class="pa-btn pa-btn--sm pa-btn--info">
|
|
149
|
+
<i class="fa-solid fa-code-merge"></i> Accept B
|
|
150
|
+
</button>
|
|
151
|
+
<button class="pa-btn pa-btn--sm pa-btn--secondary">
|
|
152
|
+
<i class="fa-solid fa-xmark"></i> Reject Both
|
|
153
|
+
</button>
|
|
154
|
+
</div>
|
|
151
155
|
</div>
|
|
152
156
|
</div>
|
|
153
157
|
<div class="pa-card__body pa-card__body--no-padding">
|