@aortl/admin-react 0.11.0 → 0.12.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/dist/Card.d.ts +7 -2
- package/dist/Card.d.ts.map +1 -1
- package/dist/StatCard.d.ts +10 -5
- package/dist/StatCard.d.ts.map +1 -1
- package/dist/admin.scoped.css +48 -16
- package/dist/index.cjs +15 -9
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +15 -9
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/Card.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { ComponentProps, ReactNode } from 'react';
|
|
2
2
|
import { IconProp } from './icon';
|
|
3
|
+
export type CardVariant = "default" | "muted" | "primary" | "info" | "success" | "warning" | "danger";
|
|
3
4
|
export interface CardContainerProps extends ComponentProps<"div"> {
|
|
5
|
+
/** Tinted surface + matching border. Defaults to the neutral surface. */
|
|
6
|
+
variant?: CardVariant;
|
|
4
7
|
bordered?: boolean;
|
|
5
8
|
compact?: boolean;
|
|
6
9
|
}
|
|
@@ -8,8 +11,10 @@ export interface CardContainerProps extends ComponentProps<"div"> {
|
|
|
8
11
|
* The bare `.card` container — no body, no title. Use this when you need to
|
|
9
12
|
* compose the internals yourself (e.g. a media block above the body).
|
|
10
13
|
*/
|
|
11
|
-
declare function CardContainer({ bordered, compact, className, ...rest }: CardContainerProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
declare function CardContainer({ variant, bordered, compact, className, ...rest }: CardContainerProps): import("react/jsx-runtime").JSX.Element;
|
|
12
15
|
export interface CardProps extends Omit<ComponentProps<"div">, "title"> {
|
|
16
|
+
/** Tinted surface + matching border. Defaults to the neutral surface. */
|
|
17
|
+
variant?: CardVariant;
|
|
13
18
|
bordered?: boolean;
|
|
14
19
|
compact?: boolean;
|
|
15
20
|
/** Leading icon for the title row. */
|
|
@@ -28,7 +33,7 @@ export interface CardProps extends Omit<ComponentProps<"div">, "title"> {
|
|
|
28
33
|
* an optional title (with icon), description, children, and actions. For
|
|
29
34
|
* anything outside that shape, use `<Card.Container>` and compose by hand.
|
|
30
35
|
*/
|
|
31
|
-
declare function CardRoot({ bordered, compact, icon, title, description, toolbar, actions, className, children, ...rest }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
36
|
+
declare function CardRoot({ variant, bordered, compact, icon, title, description, toolbar, actions, className, children, ...rest }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
32
37
|
export type CardBodyProps = ComponentProps<"div">;
|
|
33
38
|
declare function CardBody({ className, ...rest }: CardBodyProps): import("react/jsx-runtime").JSX.Element;
|
|
34
39
|
export type CardHeaderProps = ComponentProps<"div">;
|
package/dist/Card.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../src/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEnD,MAAM,WAAW,kBAAmB,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC/D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,iBAAS,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../src/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEnD,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,OAAO,GACP,SAAS,GACT,MAAM,GACN,SAAS,GACT,SAAS,GACT,QAAQ,CAAC;AAEb,MAAM,WAAW,kBAAmB,SAAQ,cAAc,CAAC,KAAK,CAAC;IAC/D,yEAAyE;IACzE,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,iBAAS,aAAa,CAAC,EACrB,OAAmB,EACnB,QAAQ,EACR,OAAO,EACP,SAAS,EACT,GAAG,IAAI,EACR,EAAE,kBAAkB,2CAepB;AAED,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACrE,yEAAyE;IACzE,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,iCAAiC;IACjC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,uCAAuC;IACvC,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,mCAAmC;IACnC,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB;AAED;;;;GAIG;AACH,iBAAS,QAAQ,CAAC,EAChB,OAAO,EACP,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,KAAK,EACL,WAAW,EACX,OAAO,EACP,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,SAAS,2CA0BX;AAED,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAClD,iBAAS,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,2CAEtD;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AACpD,iBAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,eAAe,2CAE1D;AAED,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AACrD,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,gBAAgB,2CAE5D;AAED,MAAM,WAAW,cAAe,SAAQ,cAAc,CAAC,IAAI,CAAC;IAC1D,oBAAoB;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AACD,iBAAS,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,2CAOxE;AAED,MAAM,MAAM,oBAAoB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;AACvD,iBAAS,eAAe,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,oBAAoB,2CAEpE;AAED,MAAM,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AACrD,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,gBAAgB,2CAE5D;AAED,eAAO,MAAM,IAAI;;;;;;;;CAQf,CAAC"}
|
package/dist/StatCard.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { ComponentProps, ReactNode } from 'react';
|
|
2
|
+
import { CardVariant } from './Card';
|
|
2
3
|
import { IconProp } from './icon';
|
|
3
4
|
export interface StatCardProps extends Omit<ComponentProps<"div">, "label"> {
|
|
5
|
+
/** Tinted surface + matching border, shared with `<Card>`. The value picks up the accent (except `warning`). Defaults to the neutral surface. */
|
|
6
|
+
variant?: CardVariant;
|
|
4
7
|
/** Small annotation above the value (e.g. "Total Generations"). */
|
|
5
8
|
label?: ReactNode;
|
|
6
9
|
/** The headline metric. Rendered with `tabular-nums` so digits don't shift between values. */
|
|
@@ -13,10 +16,12 @@ export interface StatCardProps extends Omit<ComponentProps<"div">, "label"> {
|
|
|
13
16
|
bordered?: boolean;
|
|
14
17
|
}
|
|
15
18
|
/**
|
|
16
|
-
* Compact KPI tile — `label / value / detail`.
|
|
17
|
-
*
|
|
18
|
-
* value dominates, label is
|
|
19
|
-
*
|
|
19
|
+
* Compact KPI tile — `label / value / detail`. Renders a `.card` shell (so it
|
|
20
|
+
* shares the surface, border, radius, shadow, and every card modifier) with an
|
|
21
|
+
* inverted inner hierarchy: the value dominates, the label is a small
|
|
22
|
+
* annotation. `compact`/`bordered` map to the shared `.card-compact`/
|
|
23
|
+
* `.card-bordered` modifiers. For free-form tiles, use `<Card>`; for
|
|
24
|
+
* label/value tables, use `<PropertyList>`.
|
|
20
25
|
*/
|
|
21
|
-
export declare function StatCard({ label, value, detail, icon, compact, bordered, className, children, ...rest }: StatCardProps): import("react/jsx-runtime").JSX.Element;
|
|
26
|
+
export declare function StatCard({ variant, label, value, detail, icon, compact, bordered, className, children, ...rest }: StatCardProps): import("react/jsx-runtime").JSX.Element;
|
|
22
27
|
//# sourceMappingURL=StatCard.d.ts.map
|
package/dist/StatCard.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatCard.d.ts","sourceRoot":"","sources":["../src/StatCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"StatCard.d.ts","sourceRoot":"","sources":["../src/StatCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEnD,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzE,iJAAiJ;IACjJ,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,mEAAmE;IACnE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,8FAA8F;IAC9F,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,qCAAqC;IACrC,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,EACvB,OAAmB,EACnB,KAAK,EACL,KAAK,EACL,MAAM,EACN,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,aAAa,2CA2Bf"}
|
package/dist/admin.scoped.css
CHANGED
|
@@ -2291,7 +2291,7 @@
|
|
|
2291
2291
|
border-style: var(--tw-border-style);
|
|
2292
2292
|
border-width: 1px;
|
|
2293
2293
|
border-color: var(--color-border);
|
|
2294
|
-
background-color: var(--color-surface);
|
|
2294
|
+
background-color: var(--color-surface-strong);
|
|
2295
2295
|
color: var(--color-text);
|
|
2296
2296
|
--tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
|
|
2297
2297
|
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
@@ -2347,19 +2347,44 @@
|
|
|
2347
2347
|
--tw-shadow: 0 0 #0000;
|
|
2348
2348
|
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
2349
2349
|
}
|
|
2350
|
+
:scope._ao-card-muted, :scope ._ao-card-muted {
|
|
2351
|
+
background-color: var(--color-surface);
|
|
2352
|
+
}
|
|
2353
|
+
:scope._ao-card-primary, :scope ._ao-card-primary {
|
|
2354
|
+
border-color: var(--color-primary-muted);
|
|
2355
|
+
background-color: var(--color-primary-muted);
|
|
2356
|
+
}
|
|
2357
|
+
:scope._ao-card-info, :scope ._ao-card-info {
|
|
2358
|
+
border-color: var(--color-info-muted);
|
|
2359
|
+
background-color: var(--color-info-muted);
|
|
2360
|
+
}
|
|
2361
|
+
:scope._ao-card-success, :scope ._ao-card-success {
|
|
2362
|
+
border-color: var(--color-success-muted);
|
|
2363
|
+
background-color: var(--color-success-muted);
|
|
2364
|
+
}
|
|
2365
|
+
:scope._ao-card-warning, :scope ._ao-card-warning {
|
|
2366
|
+
border-color: var(--color-warning-muted);
|
|
2367
|
+
background-color: var(--color-warning-muted);
|
|
2368
|
+
}
|
|
2369
|
+
:scope._ao-card-danger, :scope ._ao-card-danger {
|
|
2370
|
+
border-color: var(--color-danger-muted);
|
|
2371
|
+
background-color: var(--color-danger-muted);
|
|
2372
|
+
}
|
|
2373
|
+
:scope._ao-card-primary ._ao-card-title, :scope ._ao-card-primary ._ao-card-title {
|
|
2374
|
+
color: var(--color-primary);
|
|
2375
|
+
}
|
|
2376
|
+
:scope._ao-card-info ._ao-card-title, :scope ._ao-card-info ._ao-card-title {
|
|
2377
|
+
color: var(--color-info);
|
|
2378
|
+
}
|
|
2379
|
+
:scope._ao-card-success ._ao-card-title, :scope ._ao-card-success ._ao-card-title {
|
|
2380
|
+
color: var(--color-success);
|
|
2381
|
+
}
|
|
2382
|
+
:scope._ao-card-danger ._ao-card-title, :scope ._ao-card-danger ._ao-card-title {
|
|
2383
|
+
color: var(--color-danger);
|
|
2384
|
+
}
|
|
2350
2385
|
:scope._ao-stat-card, :scope ._ao-stat-card {
|
|
2351
|
-
display: flex;
|
|
2352
|
-
flex-direction: column;
|
|
2353
2386
|
gap: calc(var(--spacing) * 1);
|
|
2354
|
-
border-radius: var(--radius-xl);
|
|
2355
|
-
border-style: var(--tw-border-style);
|
|
2356
|
-
border-width: 1px;
|
|
2357
|
-
border-color: var(--color-border);
|
|
2358
|
-
background-color: var(--color-surface);
|
|
2359
2387
|
padding: calc(var(--spacing) * 4);
|
|
2360
|
-
color: var(--color-text);
|
|
2361
|
-
--tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
|
|
2362
|
-
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
2363
2388
|
}
|
|
2364
2389
|
:scope._ao-stat-card-label, :scope ._ao-stat-card-label {
|
|
2365
2390
|
display: flex;
|
|
@@ -2386,14 +2411,21 @@
|
|
|
2386
2411
|
line-height: var(--tw-leading, var(--text-sm--line-height));
|
|
2387
2412
|
color: var(--color-text-muted);
|
|
2388
2413
|
}
|
|
2389
|
-
:scope._ao-stat-card
|
|
2414
|
+
:scope._ao-card-compact._ao-stat-card, :scope ._ao-card-compact._ao-stat-card {
|
|
2390
2415
|
gap: calc(var(--spacing) * 0.5);
|
|
2391
2416
|
padding: calc(var(--spacing) * 3);
|
|
2392
2417
|
}
|
|
2393
|
-
:scope._ao-stat-card-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2418
|
+
:scope._ao-card-primary ._ao-stat-card-value, :scope ._ao-card-primary ._ao-stat-card-value {
|
|
2419
|
+
color: var(--color-primary);
|
|
2420
|
+
}
|
|
2421
|
+
:scope._ao-card-info ._ao-stat-card-value, :scope ._ao-card-info ._ao-stat-card-value {
|
|
2422
|
+
color: var(--color-info);
|
|
2423
|
+
}
|
|
2424
|
+
:scope._ao-card-success ._ao-stat-card-value, :scope ._ao-card-success ._ao-stat-card-value {
|
|
2425
|
+
color: var(--color-success);
|
|
2426
|
+
}
|
|
2427
|
+
:scope._ao-card-danger ._ao-stat-card-value, :scope ._ao-card-danger ._ao-stat-card-value {
|
|
2428
|
+
color: var(--color-danger);
|
|
2397
2429
|
}
|
|
2398
2430
|
:scope._ao-dialog, :scope ._ao-dialog {
|
|
2399
2431
|
margin: auto;
|
package/dist/index.cjs
CHANGED
|
@@ -998,10 +998,11 @@ function Container({ size = "md", compact, className, ...rest }) {
|
|
|
998
998
|
* The bare `.card` container — no body, no title. Use this when you need to
|
|
999
999
|
* compose the internals yourself (e.g. a media block above the body).
|
|
1000
1000
|
*/
|
|
1001
|
-
function CardContainer({ bordered, compact, className, ...rest }) {
|
|
1001
|
+
function CardContainer({ variant = "default", bordered, compact, className, ...rest }) {
|
|
1002
1002
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
1003
1003
|
className: cn([
|
|
1004
1004
|
"card",
|
|
1005
|
+
variant !== "default" && `card-${variant}`,
|
|
1005
1006
|
bordered && "card-bordered",
|
|
1006
1007
|
compact && "card-compact"
|
|
1007
1008
|
], className),
|
|
@@ -1013,12 +1014,13 @@ function CardContainer({ bordered, compact, className, ...rest }) {
|
|
|
1013
1014
|
* an optional title (with icon), description, children, and actions. For
|
|
1014
1015
|
* anything outside that shape, use `<Card.Container>` and compose by hand.
|
|
1015
1016
|
*/
|
|
1016
|
-
function CardRoot({ bordered, compact, icon, title, description, toolbar, actions, className, children, ...rest }) {
|
|
1017
|
+
function CardRoot({ variant, bordered, compact, icon, title, description, toolbar, actions, className, children, ...rest }) {
|
|
1017
1018
|
const titleEl = icon !== void 0 || title !== void 0 ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CardTitle, {
|
|
1018
1019
|
icon,
|
|
1019
1020
|
children: title
|
|
1020
1021
|
}) : null;
|
|
1021
1022
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(CardContainer, {
|
|
1023
|
+
variant,
|
|
1022
1024
|
bordered,
|
|
1023
1025
|
compact,
|
|
1024
1026
|
className,
|
|
@@ -1080,18 +1082,22 @@ var Card = Object.assign(CardRoot, {
|
|
|
1080
1082
|
//#endregion
|
|
1081
1083
|
//#region src/StatCard.tsx
|
|
1082
1084
|
/**
|
|
1083
|
-
* Compact KPI tile — `label / value / detail`.
|
|
1084
|
-
*
|
|
1085
|
-
* value dominates, label is
|
|
1086
|
-
*
|
|
1085
|
+
* Compact KPI tile — `label / value / detail`. Renders a `.card` shell (so it
|
|
1086
|
+
* shares the surface, border, radius, shadow, and every card modifier) with an
|
|
1087
|
+
* inverted inner hierarchy: the value dominates, the label is a small
|
|
1088
|
+
* annotation. `compact`/`bordered` map to the shared `.card-compact`/
|
|
1089
|
+
* `.card-bordered` modifiers. For free-form tiles, use `<Card>`; for
|
|
1090
|
+
* label/value tables, use `<PropertyList>`.
|
|
1087
1091
|
*/
|
|
1088
|
-
function StatCard({ label, value, detail, icon, compact, bordered, className, children, ...rest }) {
|
|
1092
|
+
function StatCard({ variant = "default", label, value, detail, icon, compact, bordered, className, children, ...rest }) {
|
|
1089
1093
|
const hasLabel = icon !== void 0 || label !== void 0;
|
|
1090
1094
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
1091
1095
|
className: cn([
|
|
1096
|
+
"card",
|
|
1092
1097
|
"stat-card",
|
|
1093
|
-
|
|
1094
|
-
|
|
1098
|
+
variant !== "default" && `card-${variant}`,
|
|
1099
|
+
compact && "card-compact",
|
|
1100
|
+
bordered && "card-bordered"
|
|
1095
1101
|
], className),
|
|
1096
1102
|
...rest,
|
|
1097
1103
|
children: [
|