@jirawatpyk/aura-react 4.15.0 → 4.17.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 +76 -5
- package/dist/aura.bundle.js +239 -142
- package/dist/cjs/index.cjs +239 -142
- package/dist/esm/AppShell.js +9 -9
- package/dist/esm/Breadcrumb.js +1 -1
- package/dist/esm/Button.js +12 -3
- package/dist/esm/Command.js +69 -49
- package/dist/esm/DataTable.js +43 -16
- package/dist/esm/DatePicker.js +17 -146
- package/dist/esm/FileUpload.js +1 -10
- package/dist/esm/Pagination.js +35 -23
- package/dist/esm/Skeleton.js +4 -1
- package/dist/esm/Stat.js +1 -1
- package/dist/esm/StatusPill.js +4 -13
- package/dist/esm/TimePicker.js +1 -12
- package/dist/esm/breakpoints.js +5 -0
- package/dist/esm/colorScheme.js +1 -11
- package/dist/esm/colorSchemeScript.js +19 -0
- package/dist/esm/dates.js +164 -0
- package/dist/esm/locale.js +1 -347
- package/dist/esm/responsive.js +1 -1
- package/dist/esm/status.js +17 -0
- package/dist/esm/strings.js +351 -0
- package/dist/esm/text.js +30 -0
- package/dist/index.d.ts +537 -503
- package/dist/server/index.cjs +791 -0
- package/dist/server/index.d.ts +171 -0
- package/dist/server/index.js +768 -0
- package/dist/styles.css +69 -4
- package/dist/styles.layer.css +1352 -0
- package/package.json +11 -4
package/dist/styles.css
CHANGED
|
@@ -49,6 +49,16 @@ a.aura-btn { text-decoration: none; }
|
|
|
49
49
|
.aura-btn--secondary { border: 1px solid var(--aura-button-secondary-border); color: var(--aura-fg-primary); }
|
|
50
50
|
.aura-btn--secondary:hover { background: var(--aura-bg-surface-hover); }
|
|
51
51
|
/* Destructive: filled for the confirm step, outline beside other actions. Loading keeps the colour (busy, not unavailable). */
|
|
52
|
+
.aura-btn--ghost { color: var(--aura-fg-primary); }
|
|
53
|
+
.aura-btn--ghost:hover { background: var(--aura-bg-surface-hover); }
|
|
54
|
+
/* size="sm" (4.16): 32px for toolbars, table rows and card footers. On touch the pill stays 32px and a transparent
|
|
55
|
+
* ::after grows the hit area to 44px, as IconButton does. */
|
|
56
|
+
.aura-btn--sm { height: var(--aura-button-height-sm); padding: 0 var(--aura-space-3); gap: 6px; }
|
|
57
|
+
.aura-btn--sm.aura-btn--full { height: auto; min-height: var(--aura-button-height-sm); padding-block: var(--aura-space-1); }
|
|
58
|
+
@media (pointer: coarse) {
|
|
59
|
+
.aura-btn--sm { position: relative; }
|
|
60
|
+
.aura-btn--sm::after { content: ''; position: absolute; top: 50%; left: 50%; width: max(100%, var(--aura-touch-target)); height: max(100%, var(--aura-touch-target)); transform: translate(-50%, -50%); }
|
|
61
|
+
}
|
|
52
62
|
.aura-btn--danger { background: var(--aura-button-danger-bg); color: var(--aura-button-danger-fg); }
|
|
53
63
|
.aura-btn--danger:hover { background: var(--aura-button-danger-bg-hover); }
|
|
54
64
|
.aura-btn--danger-secondary { border: 1px solid var(--aura-border-danger); color: var(--aura-fg-danger); background: transparent; }
|
|
@@ -237,6 +247,7 @@ a.aura-btn { text-decoration: none; }
|
|
|
237
247
|
.aura-table__pager > span { margin-right: var(--aura-space-2); }
|
|
238
248
|
|
|
239
249
|
/* Icon button — 32px round, icon in the text colour */
|
|
250
|
+
a.aura-icon-btn { text-decoration: none; }
|
|
240
251
|
.aura-icon-btn {
|
|
241
252
|
width: var(--aura-control-sm); height: var(--aura-control-sm); flex: none;
|
|
242
253
|
display: inline-flex; align-items: center; justify-content: center;
|
|
@@ -809,7 +820,17 @@ a.aura-btn { text-decoration: none; }
|
|
|
809
820
|
position: sticky; top: 0; z-index: 10; display: flex; align-items: center; gap: var(--aura-space-2);
|
|
810
821
|
min-height: 56px; padding: 0 var(--aura-space-6); background: var(--aura-bg-surface); border-bottom: 1px solid var(--aura-border-default);
|
|
811
822
|
}
|
|
812
|
-
.
|
|
823
|
+
/* Responsive in CSS (4.16), so the server's HTML is already right on a phone: below lg the sidebar is hidden and the
|
|
824
|
+
* menu button shows; from lg up the reverse. JavaScript only opens and closes the drawer. */
|
|
825
|
+
.aura-shell__menu { display: inline-flex; }
|
|
826
|
+
@media (max-width: 1023.98px) {
|
|
827
|
+
.aura-shell__nav { display: none; }
|
|
828
|
+
.aura-shell__bar { padding: 0 var(--aura-space-2) 0 var(--aura-space-2); }
|
|
829
|
+
}
|
|
830
|
+
@media (min-width: 1024px) {
|
|
831
|
+
.aura-shell__menu { display: none; }
|
|
832
|
+
.aura-shell__bar--menu-only { display: none; }
|
|
833
|
+
}
|
|
813
834
|
.aura-shell__bar-content { flex: 1; min-width: 0; display: flex; align-items: center; gap: var(--aura-space-3); }
|
|
814
835
|
.aura-shell__content { flex: 1; min-width: 0; padding: var(--aura-space-6) var(--aura-space-4); }
|
|
815
836
|
@media (min-width: 640px) { .aura-shell__content { padding: var(--aura-space-6); } }
|
|
@@ -1127,10 +1148,23 @@ button.aura-stepper__step:hover .aura-stepper__label { text-decoration: underlin
|
|
|
1127
1148
|
|
|
1128
1149
|
/* Touch screens: bigger targets for days and options. */
|
|
1129
1150
|
@media (pointer: coarse) {
|
|
1130
|
-
.aura-cal { --aura-cal-cell:
|
|
1151
|
+
.aura-cal { --aura-cal-cell: var(--aura-touch-target); }
|
|
1131
1152
|
.aura-combo__option { min-height: 44px; }
|
|
1132
|
-
.aura-segmented__option, .aura-segmented--sm .aura-segmented__option { height:
|
|
1153
|
+
.aura-segmented__option, .aura-segmented--sm .aura-segmented__option { height: var(--aura-touch-target); }
|
|
1133
1154
|
.aura-number__step { width: 44px; }
|
|
1155
|
+
/* 4.17: the rest of the controls under 44px on touch screens. */
|
|
1156
|
+
.aura-menu__item { height: var(--aura-touch-target); }
|
|
1157
|
+
.aura-page { min-width: var(--aura-touch-target); height: var(--aura-touch-target); }
|
|
1158
|
+
/* Side by side, each 44px wide (40px tall inside the 44px field), so their targets never overlap. */
|
|
1159
|
+
.aura-combo__clear, .aura-combo__toggle, .aura-date__toggle { width: var(--aura-touch-target); height: 40px; }
|
|
1160
|
+
.aura-combo__toggle, .aura-date__toggle { right: 0; }
|
|
1161
|
+
.aura-combo__clear, .aura-date .aura-combo__clear { right: var(--aura-touch-target); }
|
|
1162
|
+
.aura-combo .aura-input__control, .aura-date .aura-input__control { padding-right: calc(var(--aura-space-1) + 2 * var(--aura-touch-target)); }
|
|
1163
|
+
.aura-combo__clear::after, .aura-combo__toggle::after, .aura-date__toggle::after, .aura-tag__remove::after {
|
|
1164
|
+
content: ''; position: absolute; top: 50%; left: 50%; width: max(100%, var(--aura-touch-target)); height: max(100%, var(--aura-touch-target)); transform: translate(-50%, -50%);
|
|
1165
|
+
}
|
|
1166
|
+
.aura-tag__remove { position: relative; }
|
|
1167
|
+
.aura-combo.is-multi .aura-combo__clear, .aura-combo.is-multi .aura-combo__toggle { top: calc((var(--aura-input-height) - 2px - 40px) / 2); }
|
|
1134
1168
|
}
|
|
1135
1169
|
|
|
1136
1170
|
/* ---------- Small screens (< 640px) ---------- */
|
|
@@ -1140,7 +1174,7 @@ button.aura-stepper__step:hover .aura-stepper__label { text-decoration: underlin
|
|
|
1140
1174
|
.aura-stepper--horizontal .aura-stepper__item:not(:last-child)::after { right: 8px; }
|
|
1141
1175
|
.aura-stepper--horizontal .aura-stepper__compact { display: block; }
|
|
1142
1176
|
.aura-dialog-layer:not(.aura-drawer-layer) { align-items: flex-end; padding: 0; }
|
|
1143
|
-
.aura-dialog { max-width: none !important; max-height: 92vh; border-radius: var(--aura-radius-2xl) var(--aura-radius-2xl) 0 0; border-bottom: 0;
|
|
1177
|
+
.aura-dialog { max-width: none !important; max-height: 92vh; max-height: 92dvh; border-radius: var(--aura-radius-2xl) var(--aura-radius-2xl) 0 0; border-bottom: 0;
|
|
1144
1178
|
padding-bottom: calc(var(--aura-space-6) + env(safe-area-inset-bottom)); animation-name: aura-sheet-in; }
|
|
1145
1179
|
.aura-dialog__foot { flex-direction: column-reverse; }
|
|
1146
1180
|
.aura-dialog__foot > * { width: 100%; }
|
|
@@ -1255,6 +1289,7 @@ button.aura-stepper__step:hover .aura-stepper__label { text-decoration: underlin
|
|
|
1255
1289
|
flex: none; padding: 2px 6px; border: 1px solid var(--aura-border-default); border-radius: var(--aura-radius-xs);
|
|
1256
1290
|
font-family: var(--font-mono); font-size: 11px; line-height: 16px; color: var(--aura-fg-secondary); background: var(--aura-bg-canvas);
|
|
1257
1291
|
}
|
|
1292
|
+
.aura-command__loading { display: flex; align-items: center; gap: var(--aura-space-2); padding: var(--aura-space-2) var(--aura-space-3); font-size: 13px; color: var(--aura-fg-secondary); }
|
|
1258
1293
|
.aura-command__empty { margin: 0; padding: var(--aura-space-6) var(--aura-space-2); text-align: center; font-size: 14px; color: var(--aura-fg-secondary); }
|
|
1259
1294
|
.aura-command__foot { display: flex; justify-content: space-between; gap: var(--aura-space-3); padding: var(--aura-space-2) var(--aura-space-4); border-top: 1px solid var(--aura-border-default); font-size: 12px; color: var(--aura-fg-secondary); }
|
|
1260
1295
|
@media (max-width: 639.98px) {
|
|
@@ -1281,3 +1316,33 @@ button.aura-stepper__step:hover .aura-stepper__label { text-decoration: underlin
|
|
|
1281
1316
|
}
|
|
1282
1317
|
.aura-density { display: contents; }
|
|
1283
1318
|
|
|
1319
|
+
|
|
1320
|
+
/* DataTable: cards before hydration (4.16). While a stackBelow table hasn't measured itself yet (server HTML, first
|
|
1321
|
+
* client render) it holds both layouts; these container queries show one, so a phone never sees the grid first. */
|
|
1322
|
+
.aura-table-dual { container-type: inline-size; }
|
|
1323
|
+
@container (min-width: 360px) { .aura-table-dual[data-stack-below='360'] > .aura-table--stacked { display: none; } }
|
|
1324
|
+
@container (max-width: 359.98px) { .aura-table-dual[data-stack-below='360'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1325
|
+
@container (min-width: 400px) { .aura-table-dual[data-stack-below='400'] > .aura-table--stacked { display: none; } }
|
|
1326
|
+
@container (max-width: 399.98px) { .aura-table-dual[data-stack-below='400'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1327
|
+
@container (min-width: 480px) { .aura-table-dual[data-stack-below='480'] > .aura-table--stacked { display: none; } }
|
|
1328
|
+
@container (max-width: 479.98px) { .aura-table-dual[data-stack-below='480'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1329
|
+
@container (min-width: 520px) { .aura-table-dual[data-stack-below='520'] > .aura-table--stacked { display: none; } }
|
|
1330
|
+
@container (max-width: 519.98px) { .aura-table-dual[data-stack-below='520'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1331
|
+
@container (min-width: 560px) { .aura-table-dual[data-stack-below='560'] > .aura-table--stacked { display: none; } }
|
|
1332
|
+
@container (max-width: 559.98px) { .aura-table-dual[data-stack-below='560'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1333
|
+
@container (min-width: 600px) { .aura-table-dual[data-stack-below='600'] > .aura-table--stacked { display: none; } }
|
|
1334
|
+
@container (max-width: 599.98px) { .aura-table-dual[data-stack-below='600'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1335
|
+
@container (min-width: 640px) { .aura-table-dual[data-stack-below='640'] > .aura-table--stacked { display: none; } }
|
|
1336
|
+
@container (max-width: 639.98px) { .aura-table-dual[data-stack-below='640'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1337
|
+
@container (min-width: 720px) { .aura-table-dual[data-stack-below='720'] > .aura-table--stacked { display: none; } }
|
|
1338
|
+
@container (max-width: 719.98px) { .aura-table-dual[data-stack-below='720'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1339
|
+
@container (min-width: 768px) { .aura-table-dual[data-stack-below='768'] > .aura-table--stacked { display: none; } }
|
|
1340
|
+
@container (max-width: 767.98px) { .aura-table-dual[data-stack-below='768'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1341
|
+
@container (min-width: 800px) { .aura-table-dual[data-stack-below='800'] > .aura-table--stacked { display: none; } }
|
|
1342
|
+
@container (max-width: 799.98px) { .aura-table-dual[data-stack-below='800'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1343
|
+
@container (min-width: 900px) { .aura-table-dual[data-stack-below='900'] > .aura-table--stacked { display: none; } }
|
|
1344
|
+
@container (max-width: 899.98px) { .aura-table-dual[data-stack-below='900'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1345
|
+
@container (min-width: 960px) { .aura-table-dual[data-stack-below='960'] > .aura-table--stacked { display: none; } }
|
|
1346
|
+
@container (max-width: 959.98px) { .aura-table-dual[data-stack-below='960'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|
|
1347
|
+
@container (min-width: 1024px) { .aura-table-dual[data-stack-below='1024'] > .aura-table--stacked { display: none; } }
|
|
1348
|
+
@container (max-width: 1023.98px) { .aura-table-dual[data-stack-below='1024'] > .aura-table:not(.aura-table--stacked) { display: none; } }
|