@keenmate/pure-admin-core 2.4.0 → 2.5.0
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 +11 -6
- package/dist/css/main.css +47 -130
- package/package.json +1 -1
- package/snippets/AUDIT.md +94 -0
- package/snippets/alerts.html +264 -89
- package/snippets/badges.html +193 -61
- package/snippets/buttons.html +178 -0
- package/snippets/callouts.html +210 -129
- package/snippets/cards.html +383 -200
- package/snippets/checkbox-lists.html +199 -65
- package/snippets/code.html +55 -11
- package/snippets/command-palette.html +401 -111
- package/snippets/comparison.html +144 -93
- package/snippets/customization.html +311 -104
- package/snippets/data-display.html +584 -0
- package/snippets/detail-panel.html +470 -138
- package/snippets/filter-card.html +246 -0
- package/snippets/forms.html +408 -308
- package/snippets/grid.html +253 -141
- package/snippets/layout.html +379 -480
- package/snippets/lists.html +144 -47
- package/snippets/loaders.html +64 -39
- package/snippets/manifest.json +330 -280
- package/snippets/modal-dialogs.html +137 -64
- package/snippets/modals.html +221 -151
- package/snippets/notifications.html +285 -0
- package/snippets/popconfirm.html +213 -19
- package/snippets/profile.html +290 -330
- package/snippets/statistics.html +247 -0
- package/snippets/tables.html +359 -150
- package/snippets/tabs.html +129 -45
- package/snippets/timeline.html +123 -56
- package/snippets/toasts.html +179 -31
- package/snippets/tooltips.html +199 -81
- package/snippets/typography.html +183 -58
- package/snippets/utilities.html +511 -415
- package/snippets/virtual-scroll.html +201 -75
- package/snippets/web-daterangepicker.html +369 -189
- package/snippets/web-multiselect.html +360 -124
- package/src/scss/core-components/_alerts.scss +51 -12
- package/src/scss/core-components/_pagers.scss +1 -1
- package/src/scss/core-components/_popconfirm.scss +35 -13
- package/src/scss/core-components/_tables.scss +2 -134
- package/src/scss/variables/_components.scss +17 -2
package/snippets/lists.html
CHANGED
|
@@ -62,30 +62,35 @@
|
|
|
62
62
|
|
|
63
63
|
<!-- ================================
|
|
64
64
|
ICON LISTS
|
|
65
|
+
--icon alone = green ✓ (success). Combine with --danger / --info /
|
|
66
|
+
--warning to swap the ::before icon + colour. Those semantic
|
|
67
|
+
modifiers ONLY do anything when --icon is also present — they
|
|
68
|
+
style the pseudo-element, which doesn't exist without --icon.
|
|
69
|
+
(No --success modifier exists because success is the default.)
|
|
65
70
|
================================ -->
|
|
66
71
|
|
|
67
|
-
<!--
|
|
72
|
+
<!-- Default icon list — green ✓ (implicit success) -->
|
|
68
73
|
<ul class="pa-list-basic pa-list-basic--icon">
|
|
69
74
|
<li>SSL/TLS encryption enabled</li>
|
|
70
75
|
<li>Automatic daily backups</li>
|
|
71
76
|
<li>99.9% uptime SLA guarantee</li>
|
|
72
77
|
</ul>
|
|
73
78
|
|
|
74
|
-
<!-- Danger (
|
|
79
|
+
<!-- Danger (red ✗) -->
|
|
75
80
|
<ul class="pa-list-basic pa-list-basic--icon pa-list-basic--danger">
|
|
76
81
|
<li>Deprecated API endpoint</li>
|
|
77
82
|
<li>Unsupported browser version</li>
|
|
78
83
|
<li>Missing required permissions</li>
|
|
79
84
|
</ul>
|
|
80
85
|
|
|
81
|
-
<!-- Info (
|
|
86
|
+
<!-- Info (blue →) -->
|
|
82
87
|
<ul class="pa-list-basic pa-list-basic--icon pa-list-basic--info">
|
|
83
88
|
<li>Navigate to Settings panel</li>
|
|
84
89
|
<li>Select Integration options</li>
|
|
85
90
|
<li>Choose your provider</li>
|
|
86
91
|
</ul>
|
|
87
92
|
|
|
88
|
-
<!-- Warning (
|
|
93
|
+
<!-- Warning (yellow !) -->
|
|
89
94
|
<ul class="pa-list-basic pa-list-basic--icon pa-list-basic--warning">
|
|
90
95
|
<li>Rate limit approaching threshold</li>
|
|
91
96
|
<li>Certificate expires in 30 days</li>
|
|
@@ -152,6 +157,10 @@
|
|
|
152
157
|
|
|
153
158
|
<!-- ================================
|
|
154
159
|
COMPLEX LISTS (with avatars)
|
|
160
|
+
The sub-elements are flex-aware, so the container + items can be
|
|
161
|
+
<div>s (as below) or semantic <ul>/<li> — the CSS doesn't care.
|
|
162
|
+
Prefer <ul>/<li> when the list is genuinely enumerative so screen
|
|
163
|
+
readers announce it as one.
|
|
155
164
|
================================ -->
|
|
156
165
|
|
|
157
166
|
<div class="pa-list">
|
|
@@ -181,52 +190,140 @@
|
|
|
181
190
|
</div>
|
|
182
191
|
</div>
|
|
183
192
|
|
|
193
|
+
<!-- Same structure using semantic markup -->
|
|
194
|
+
<ul class="pa-list pa-list-basic--unstyled">
|
|
195
|
+
<li class="pa-list__item">
|
|
196
|
+
<div class="pa-list__avatar">🔔</div>
|
|
197
|
+
<div class="pa-list__content">
|
|
198
|
+
<div class="pa-list__title">New comment on "Q3 Roadmap"</div>
|
|
199
|
+
<div class="pa-list__subtitle">Sarah: "Looks good, shipping Monday"</div>
|
|
200
|
+
<div class="pa-list__meta">5 minutes ago</div>
|
|
201
|
+
</div>
|
|
202
|
+
</li>
|
|
203
|
+
<li class="pa-list__item">
|
|
204
|
+
<div class="pa-list__avatar">📦</div>
|
|
205
|
+
<div class="pa-list__content">
|
|
206
|
+
<div class="pa-list__title">Deploy succeeded</div>
|
|
207
|
+
<div class="pa-list__subtitle">web-api · build #2341</div>
|
|
208
|
+
<div class="pa-list__meta">1 hour ago</div>
|
|
209
|
+
</div>
|
|
210
|
+
</li>
|
|
211
|
+
</ul>
|
|
212
|
+
|
|
184
213
|
|
|
185
214
|
<!-- ================================
|
|
186
|
-
|
|
215
|
+
COMPONENT REFERENCE
|
|
187
216
|
================================ -->
|
|
188
217
|
|
|
189
218
|
<!--
|
|
190
|
-
UNORDERED LISTS:
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
- pa-list-basic
|
|
194
|
-
- pa-list-basic--
|
|
195
|
-
- pa-list-basic--
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
- pa-list-basic--
|
|
199
|
-
- pa-list-basic--
|
|
200
|
-
- pa-list-basic--
|
|
201
|
-
- pa-list-basic--
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
- pa-list-
|
|
205
|
-
- pa-list-
|
|
206
|
-
- pa-list-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
- pa-
|
|
216
|
-
- pa-
|
|
217
|
-
- pa-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
219
|
+
UNORDERED LISTS (.pa-list-basic — apply to <ul> or <ol>):
|
|
220
|
+
|
|
221
|
+
Spacing:
|
|
222
|
+
- .pa-list-basic Default (bullet list, li-margin: $spacing-sm, line-height 1.6)
|
|
223
|
+
- .pa-list-basic--compact li-margin: $spacing-xs
|
|
224
|
+
- .pa-list-basic--spacious li-margin: $spacing-base
|
|
225
|
+
|
|
226
|
+
Presentation:
|
|
227
|
+
- .pa-list-basic--unstyled No bullets, padding-inline-start: 0
|
|
228
|
+
- .pa-list-basic--inline Flex horizontal, gap: $spacing-base, no bullets
|
|
229
|
+
- .pa-list-basic--bordered Divider between items (last has none)
|
|
230
|
+
- .pa-list-basic--striped Alternating background on :nth-child(even)
|
|
231
|
+
|
|
232
|
+
Icon lists (pseudo-element ::before on each li):
|
|
233
|
+
- .pa-list-basic--icon Green ✓ (default / implicit success)
|
|
234
|
+
- .pa-list-basic--icon.pa-list-basic--danger Red ✗
|
|
235
|
+
- .pa-list-basic--icon.pa-list-basic--info Blue →
|
|
236
|
+
- .pa-list-basic--icon.pa-list-basic--warning Yellow !
|
|
237
|
+
|
|
238
|
+
Note: --danger / --info / --warning ONLY do anything when combined
|
|
239
|
+
with --icon — they style the ::before pseudo that --icon creates.
|
|
240
|
+
There's no standalone --danger list style. And --success doesn't
|
|
241
|
+
exist because success IS the default of --icon.
|
|
242
|
+
|
|
243
|
+
ORDERED LISTS (.pa-list-ordered — apply to <ol>):
|
|
244
|
+
- .pa-list-ordered Default numeric (1, 2, 3…)
|
|
245
|
+
- .pa-list-ordered--roman Upper-roman (I, II, III…)
|
|
246
|
+
- .pa-list-ordered--alpha Lower-alpha (a, b, c…)
|
|
247
|
+
|
|
248
|
+
DEFINITION LISTS (.pa-list-definition — apply to <dl>):
|
|
249
|
+
- .pa-list-definition Stacked dt/dd
|
|
250
|
+
dt: bold, $spacing-base margin-top
|
|
251
|
+
dd: indented $spacing-lg, muted text
|
|
252
|
+
- .pa-list-definition--inline dt and dd on one line; dt gets a `: `
|
|
253
|
+
suffix via ::after; each dd ends in a
|
|
254
|
+
block-level line break (so pairs stack).
|
|
255
|
+
|
|
256
|
+
COMPLEX LISTS (.pa-list — container + sub-elements):
|
|
257
|
+
|
|
258
|
+
.pa-list
|
|
259
|
+
.pa-list__item
|
|
260
|
+
.pa-list__avatar (circular — btn-icon-only-size; flex-centred)
|
|
261
|
+
.pa-list__content (flex: 1)
|
|
262
|
+
.pa-list__title (medium weight, text-color-1)
|
|
263
|
+
.pa-list__subtitle (muted, font-size-sm)
|
|
264
|
+
.pa-list__meta (muted, font-size-xs — smallest)
|
|
265
|
+
|
|
266
|
+
Automatic behaviour:
|
|
267
|
+
- .pa-list__item has flex, gap: $spacing-md, card-footer padding, and
|
|
268
|
+
a bottom border between items (last-child has none).
|
|
269
|
+
- .pa-list__item:hover gets var(--pa-main-bg) — signals interactivity.
|
|
270
|
+
Don't use bare .pa-list for passive read-only content if the hover
|
|
271
|
+
would be misleading.
|
|
272
|
+
- Any block element works for .pa-list + .pa-list__item; semantic
|
|
273
|
+
<ul>/<li> (combined with .pa-list-basic--unstyled on the ul to kill
|
|
274
|
+
bullets) is preferred for screen readers when the items form a
|
|
275
|
+
genuine enumerative list.
|
|
276
|
+
|
|
277
|
+
RTL HANDLING (all list types):
|
|
278
|
+
- padding-inline-start / margin-inline-start used throughout, so
|
|
279
|
+
bullets, definition indent, and RTL hanging indents flip correctly
|
|
280
|
+
under [dir="rtl"] without any extra classes.
|
|
281
|
+
|
|
282
|
+
WHEN TO USE WHICH:
|
|
283
|
+
- pa-list-basic Content lists, feature lists, inline nav
|
|
284
|
+
- pa-list-basic--icon Checklists, feature comparisons
|
|
285
|
+
- pa-list-basic--bordered Menu-like lists, settings toggles
|
|
286
|
+
- pa-list-basic--striped Dense key/value-ish content
|
|
287
|
+
- pa-list-ordered Step-by-step instructions, numbered procedures
|
|
288
|
+
- pa-list-definition Glossaries, specs, API reference
|
|
289
|
+
- pa-list (complex) User lists, activity feeds, notifications
|
|
290
|
+
|
|
291
|
+
STRUCTURE PATTERNS:
|
|
292
|
+
|
|
293
|
+
Feature checklist:
|
|
294
|
+
<ul class="pa-list-basic pa-list-basic--icon">
|
|
295
|
+
<li>SSL/TLS encryption enabled</li>
|
|
296
|
+
<li>Automatic daily backups</li>
|
|
297
|
+
</ul>
|
|
298
|
+
|
|
299
|
+
Bordered menu:
|
|
300
|
+
<ul class="pa-list-basic pa-list-basic--bordered">
|
|
301
|
+
<li>Overview</li>
|
|
302
|
+
<li>Settings</li>
|
|
303
|
+
<li>Billing</li>
|
|
304
|
+
</ul>
|
|
305
|
+
|
|
306
|
+
Inline navigation:
|
|
307
|
+
<ul class="pa-list-basic pa-list-basic--inline">
|
|
308
|
+
<li><a href="#">Home</a></li>
|
|
309
|
+
<li><a href="#">About</a></li>
|
|
310
|
+
</ul>
|
|
311
|
+
|
|
312
|
+
Inline key-value:
|
|
313
|
+
<dl class="pa-list-definition pa-list-definition--inline">
|
|
314
|
+
<dt>Status</dt><dd>Active</dd>
|
|
315
|
+
<dt>Owner</dt><dd>John Doe</dd>
|
|
316
|
+
</dl>
|
|
317
|
+
|
|
318
|
+
Complex user row with hover feedback:
|
|
319
|
+
<ul class="pa-list pa-list-basic--unstyled">
|
|
320
|
+
<li class="pa-list__item">
|
|
321
|
+
<div class="pa-list__avatar">👤</div>
|
|
322
|
+
<div class="pa-list__content">
|
|
323
|
+
<div class="pa-list__title">Sarah Johnson</div>
|
|
324
|
+
<div class="pa-list__subtitle">Product Manager</div>
|
|
325
|
+
<div class="pa-list__meta">Last active: 2h ago</div>
|
|
326
|
+
</div>
|
|
327
|
+
</li>
|
|
328
|
+
</ul>
|
|
232
329
|
-->
|
package/snippets/loaders.html
CHANGED
|
@@ -5,17 +5,17 @@
|
|
|
5
5
|
|
|
6
6
|
<!-- SPINNER COMPONENT -->
|
|
7
7
|
|
|
8
|
-
<!-- Basic Spinner -->
|
|
8
|
+
<!-- Basic Spinner (default size — $spinner-size, 16px default) -->
|
|
9
9
|
<div class="pa-spinner"></div>
|
|
10
10
|
|
|
11
|
-
<!-- Spinner
|
|
11
|
+
<!-- Extra-Small Spinner (uses $loader-dot-size, 12px default) -->
|
|
12
12
|
<div class="pa-spinner pa-spinner--xs"></div>
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
13
|
+
|
|
14
|
+
<!--
|
|
15
|
+
Note: the spinner only ships two sizes — the default and --xs. For
|
|
16
|
+
other sizes, override $spinner-size in SCSS before the framework
|
|
17
|
+
import, or set width/height inline.
|
|
18
|
+
-->
|
|
19
19
|
|
|
20
20
|
<!-- Colored Spinners -->
|
|
21
21
|
<div class="pa-spinner pa-spinner--primary"></div>
|
|
@@ -28,7 +28,11 @@
|
|
|
28
28
|
|
|
29
29
|
<!-- ADVANCED LOADERS -->
|
|
30
30
|
|
|
31
|
-
<!--
|
|
31
|
+
<!--
|
|
32
|
+
Dots Loader — convention is 3 <span> children. SCSS sets staggered
|
|
33
|
+
animation delays on nth-child(1) and (2); extra spans still work, they
|
|
34
|
+
just start in phase.
|
|
35
|
+
-->
|
|
32
36
|
<div class="pa-loader-dots">
|
|
33
37
|
<span></span>
|
|
34
38
|
<span></span>
|
|
@@ -42,7 +46,10 @@
|
|
|
42
46
|
<span></span>
|
|
43
47
|
</div>
|
|
44
48
|
|
|
45
|
-
<!--
|
|
49
|
+
<!--
|
|
50
|
+
Bars Loader — requires 5 <span> children. SCSS stagger targets
|
|
51
|
+
nth-child(1) through (5) explicitly.
|
|
52
|
+
-->
|
|
46
53
|
<div class="pa-loader-bars">
|
|
47
54
|
<span></span>
|
|
48
55
|
<span></span>
|
|
@@ -66,13 +73,13 @@
|
|
|
66
73
|
<!-- Pulse Loader - Large -->
|
|
67
74
|
<div class="pa-loader-pulse pa-loader-pulse--lg"></div>
|
|
68
75
|
|
|
69
|
-
<!-- Ring Loader (CSS-only,
|
|
76
|
+
<!-- Ring Loader (CSS-only, uses ::after pseudo-element) -->
|
|
70
77
|
<div class="pa-loader-ring"></div>
|
|
71
78
|
|
|
72
79
|
<!-- Ring Loader - Large -->
|
|
73
80
|
<div class="pa-loader-ring pa-loader-ring--lg"></div>
|
|
74
81
|
|
|
75
|
-
<!-- Wave Loader
|
|
82
|
+
<!-- Wave Loader — 5 <span> children (same stagger as bars) -->
|
|
76
83
|
<div class="pa-loader-wave">
|
|
77
84
|
<span></span>
|
|
78
85
|
<span></span>
|
|
@@ -100,13 +107,17 @@
|
|
|
100
107
|
|
|
101
108
|
<!-- Centered Loader with Text -->
|
|
102
109
|
<div class="pa-loader-center">
|
|
103
|
-
<div class="pa-spinner pa-spinner--
|
|
110
|
+
<div class="pa-spinner pa-spinner--primary"></div>
|
|
104
111
|
<p>Loading your data...</p>
|
|
105
112
|
</div>
|
|
106
113
|
|
|
107
|
-
<!--
|
|
114
|
+
<!--
|
|
115
|
+
Overlay Loader — absolutely positioned, so the parent must have
|
|
116
|
+
position: relative (or similar) to contain it. Background uses
|
|
117
|
+
var(--pa-loader-overlay-bg).
|
|
118
|
+
-->
|
|
108
119
|
<div class="pa-loader-overlay">
|
|
109
|
-
<div class="pa-spinner
|
|
120
|
+
<div class="pa-spinner"></div>
|
|
110
121
|
</div>
|
|
111
122
|
|
|
112
123
|
|
|
@@ -114,13 +125,17 @@
|
|
|
114
125
|
|
|
115
126
|
<!-- Inline Loading Text -->
|
|
116
127
|
<p>
|
|
117
|
-
Loading data <span class="pa-spinner pa-spinner--
|
|
128
|
+
Loading data <span class="pa-spinner pa-spinner--xs"></span>
|
|
118
129
|
</p>
|
|
119
130
|
|
|
120
131
|
|
|
121
132
|
<!-- BUTTON WITH SPINNER -->
|
|
122
133
|
|
|
123
|
-
<!--
|
|
134
|
+
<!--
|
|
135
|
+
Loading button — pa-btn--loading hides the label (text-fill transparent)
|
|
136
|
+
and positions the internal .pa-btn__spinner centered over the button.
|
|
137
|
+
Keep the label text so the button preserves its width.
|
|
138
|
+
-->
|
|
124
139
|
<button class="pa-btn pa-btn--primary pa-btn--loading">
|
|
125
140
|
<span class="pa-btn__spinner"></span>
|
|
126
141
|
Loading...
|
|
@@ -133,12 +148,12 @@
|
|
|
133
148
|
<div class="pa-card">
|
|
134
149
|
<div class="pa-card__body">
|
|
135
150
|
<div class="pa-loader-center" style="min-height: 200px;">
|
|
136
|
-
<div class="pa-loader-dots pa-loader-dots--lg" style="color: var(--accent
|
|
151
|
+
<div class="pa-loader-dots pa-loader-dots--lg" style="color: var(--pa-accent);">
|
|
137
152
|
<span></span>
|
|
138
153
|
<span></span>
|
|
139
154
|
<span></span>
|
|
140
155
|
</div>
|
|
141
|
-
<p style="margin-top: 1rem; color: var(--text-
|
|
156
|
+
<p style="margin-top: 1rem; color: var(--pa-text-color-2);">Loading content...</p>
|
|
142
157
|
</div>
|
|
143
158
|
</div>
|
|
144
159
|
</div>
|
|
@@ -150,34 +165,44 @@
|
|
|
150
165
|
|
|
151
166
|
<!--
|
|
152
167
|
SPINNERS:
|
|
153
|
-
- .pa-spinner:
|
|
154
|
-
- .pa-spinner--xs
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
-
|
|
159
|
-
-
|
|
160
|
-
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
-
|
|
168
|
+
- .pa-spinner: Rotating-border spinner at $spinner-size (16px default)
|
|
169
|
+
- .pa-spinner--xs: Extra-small variant using $loader-dot-size (12px default)
|
|
170
|
+
(No --sm / --md / --lg / --xl / --2xl exist in _loaders.scss. Override
|
|
171
|
+
$spinner-size in SCSS or set inline width/height for other sizes.)
|
|
172
|
+
- Color variants (border-top-color from the $btn-*-bg theme tokens):
|
|
173
|
+
.pa-spinner--primary .pa-spinner--secondary
|
|
174
|
+
.pa-spinner--success .pa-spinner--danger
|
|
175
|
+
.pa-spinner--warning .pa-spinner--info
|
|
176
|
+
|
|
177
|
+
ADVANCED LOADERS (child <span> count matters):
|
|
178
|
+
- .pa-loader-dots — 3 <span>s (only 2 delays defined; 3rd sits in phase)
|
|
179
|
+
- .pa-loader-bars — 5 <span>s (delays on nth-child 1..5)
|
|
180
|
+
- .pa-loader-wave — 5 <span>s (same stagger as bars)
|
|
181
|
+
- .pa-loader-pulse — CSS-only, no children
|
|
182
|
+
- .pa-loader-ring — CSS-only, animates via ::after
|
|
183
|
+
- All five support the --lg size modifier.
|
|
184
|
+
|
|
185
|
+
COLOR:
|
|
186
|
+
- All loaders paint from `currentColor` — set color on the wrapper to
|
|
187
|
+
theme them: <div class="pa-loader-dots" style="color: var(--pa-success-bg);">
|
|
164
188
|
|
|
165
189
|
UTILITIES:
|
|
166
|
-
- .pa-loader-center
|
|
167
|
-
- .pa-loader-overlay
|
|
190
|
+
- .pa-loader-center — flex column, centered; stack a loader + caption
|
|
191
|
+
- .pa-loader-overlay — absolute overlay with var(--pa-loader-overlay-bg);
|
|
192
|
+
parent must be positioned (relative/absolute/fixed)
|
|
168
193
|
|
|
169
194
|
BUTTON LOADING:
|
|
170
|
-
- .pa-btn--loading:
|
|
171
|
-
- .pa-btn__spinner:
|
|
195
|
+
- .pa-btn--loading — on the button: hides the label, keeps width
|
|
196
|
+
- .pa-btn__spinner — inside the button: gets positioned + animated
|
|
172
197
|
|
|
173
198
|
STRUCTURE EXAMPLES:
|
|
174
|
-
<div class="pa-loader-dots"> <!-- 3 spans
|
|
175
|
-
<span></span>
|
|
176
|
-
<span></span>
|
|
177
|
-
<span></span>
|
|
199
|
+
<div class="pa-loader-dots"> <!-- 3 spans -->
|
|
200
|
+
<span></span><span></span><span></span>
|
|
178
201
|
</div>
|
|
179
202
|
|
|
180
|
-
<div class="pa-loader-bars"> <!-- 5 spans
|
|
203
|
+
<div class="pa-loader-bars"> <!-- 5 spans -->
|
|
181
204
|
<span></span><span></span><span></span><span></span><span></span>
|
|
182
205
|
</div>
|
|
206
|
+
|
|
207
|
+
<div class="pa-loader-ring"></div> <!-- no children -->
|
|
183
208
|
-->
|