@antelopejs/interface-dms 0.4.0 → 0.4.2

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.
Files changed (43) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/base/banner.d.ts +15 -9
  3. package/dist/base/banner.js +8 -3
  4. package/dist/base/banner.js.map +1 -1
  5. package/dist/base/card.d.ts +2 -2
  6. package/dist/base/chart-card.d.ts +6 -2
  7. package/dist/base/chart-card.js.map +1 -1
  8. package/dist/base/chart.d.ts +4 -0
  9. package/dist/base/chart.js.map +1 -1
  10. package/dist/base/display.d.ts +30 -0
  11. package/dist/base/display.js +16 -1
  12. package/dist/base/display.js.map +1 -1
  13. package/dist/base/internal/composed-text.d.ts +14 -0
  14. package/dist/base/internal/composed-text.js +51 -0
  15. package/dist/base/internal/composed-text.js.map +1 -0
  16. package/dist/base/key-value-list.d.ts +31 -25
  17. package/dist/base/key-value-list.js +5 -3
  18. package/dist/base/key-value-list.js.map +1 -1
  19. package/dist/base/kpi-card.d.ts +6 -2
  20. package/dist/base/kpi-card.js.map +1 -1
  21. package/dist/base/meter.d.ts +2 -1
  22. package/dist/base/meter.js.map +1 -1
  23. package/dist/base/stat-group.d.ts +30 -21
  24. package/dist/base/stat-group.js +7 -3
  25. package/dist/base/stat-group.js.map +1 -1
  26. package/dist/base/tab.d.ts +7 -1
  27. package/dist/base/tab.js.map +1 -1
  28. package/dist/base/table-view/column-display.d.ts +80 -3
  29. package/dist/base/table-view/column-display.js +12 -1
  30. package/dist/base/table-view/column-display.js.map +1 -1
  31. package/dist/base/table-view/schema.d.ts +2 -2
  32. package/dist/base/top-list-card.d.ts +6 -2
  33. package/dist/base/top-list-card.js.map +1 -1
  34. package/dist/base/types/composed-text.d.ts +120 -0
  35. package/dist/base/types/composed-text.js +17 -0
  36. package/dist/base/types/composed-text.js.map +1 -0
  37. package/dist/base/types/index.d.ts +1 -0
  38. package/dist/base/types/index.js +1 -0
  39. package/dist/base/types/index.js.map +1 -1
  40. package/dist/layout-banners.d.ts +74 -11
  41. package/dist/layout-banners.js +3 -3
  42. package/dist/layout-banners.js.map +1 -1
  43. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"meter.js","sourceRoot":"","sources":["../../src/base/meter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meter.js","sourceRoot":"","sources":["../../src/base/meter.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { z } from "zod";
3
3
  import { type BlockItemsSource } from "./display";
4
4
  import { type Tone, type IconTone } from "./types/tone";
5
5
  import type { BaseComponentProps } from "./types";
6
+ import type { BlockText } from "./types/composed-text";
6
7
  /** One cell of a stat group. */
7
8
  export interface StatGroupItem {
8
9
  /** Stable key; the position is used without one. */
@@ -14,12 +15,20 @@ export interface StatGroupItem {
14
15
  * cards layout.
15
16
  */
16
17
  tone?: IconTone;
17
- /** Mono label above the value; `$`-prefixed for an i18n key. */
18
- eyebrow: string;
19
- /** The figure or the short state; a number is formatted for the locale. */
20
- value: string | number;
21
- /** One line under the value. */
22
- detail?: string;
18
+ /**
19
+ * Mono label above the value; `$`-prefixed for an i18n key, or a
20
+ * `ComposedText`.
21
+ */
22
+ eyebrow: BlockText;
23
+ /**
24
+ * The figure or the short state; a number is formatted for the locale, and
25
+ * a `ComposedText` composes an amount, a date or a count in the
26
+ * reader's language (`{ key: "saas.stats.mrr", params: { amount: { type:
27
+ * "money", value: 92200, currency: "EUR" } } }`).
28
+ */
29
+ value: BlockText | number;
30
+ /** One line under the value: a string or a `ComposedText`. */
31
+ detail?: BlockText;
23
32
  /** Tone of the detail line (`neutral` = muted). */
24
33
  detailTone?: Tone;
25
34
  /** Route, `#anchor` or URL the whole cell links to. */
@@ -80,27 +89,27 @@ export declare const StatGroupSchema: z.ZodObject<{
80
89
  id: z.ZodOptional<z.ZodString>;
81
90
  icon: z.ZodOptional<z.ZodString>;
82
91
  tone: z.ZodOptional<z.ZodEnum<["primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | "muted", ...("primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | "muted")[]]>>;
83
- eyebrow: z.ZodString;
84
- value: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
85
- detail: z.ZodOptional<z.ZodString>;
92
+ eyebrow: z.ZodType<BlockText, z.ZodTypeDef, BlockText>;
93
+ value: z.ZodUnion<[z.ZodType<BlockText, z.ZodTypeDef, BlockText>, z.ZodNumber]>;
94
+ detail: z.ZodOptional<z.ZodType<BlockText, z.ZodTypeDef, BlockText>>;
86
95
  detailTone: z.ZodOptional<z.ZodEnum<["primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral", ...("primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral")[]]>>;
87
96
  to: z.ZodOptional<z.ZodString>;
88
97
  }, "strip", z.ZodTypeAny, {
89
- value: string | number;
90
- eyebrow: string;
98
+ value: number | BlockText;
99
+ eyebrow: BlockText;
91
100
  id?: string | undefined;
92
101
  icon?: string | undefined;
93
102
  to?: string | undefined;
94
- detail?: string | undefined;
103
+ detail?: BlockText | undefined;
95
104
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | "muted" | undefined;
96
105
  detailTone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
97
106
  }, {
98
- value: string | number;
99
- eyebrow: string;
107
+ value: number | BlockText;
108
+ eyebrow: BlockText;
100
109
  id?: string | undefined;
101
110
  icon?: string | undefined;
102
111
  to?: string | undefined;
103
- detail?: string | undefined;
112
+ detail?: BlockText | undefined;
104
113
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | "muted" | undefined;
105
114
  detailTone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
106
115
  }>, "many">>;
@@ -110,12 +119,12 @@ export declare const StatGroupSchema: z.ZodObject<{
110
119
  }, "strip", z.ZodTypeAny, {
111
120
  layout: "cards" | "joined";
112
121
  items?: {
113
- value: string | number;
114
- eyebrow: string;
122
+ value: number | BlockText;
123
+ eyebrow: BlockText;
115
124
  id?: string | undefined;
116
125
  icon?: string | undefined;
117
126
  to?: string | undefined;
118
- detail?: string | undefined;
127
+ detail?: BlockText | undefined;
119
128
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | "muted" | undefined;
120
129
  detailTone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
121
130
  }[] | undefined;
@@ -130,12 +139,12 @@ export declare const StatGroupSchema: z.ZodObject<{
130
139
  skeletonCount?: number | undefined;
131
140
  }, {
132
141
  items?: {
133
- value: string | number;
134
- eyebrow: string;
142
+ value: number | BlockText;
143
+ eyebrow: BlockText;
135
144
  id?: string | undefined;
136
145
  icon?: string | undefined;
137
146
  to?: string | undefined;
138
- detail?: string | undefined;
147
+ detail?: BlockText | undefined;
139
148
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | "muted" | undefined;
140
149
  detailTone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
141
150
  }[] | undefined;
@@ -8,6 +8,7 @@ const block_registry_1 = require("./block-registry");
8
8
  const display_1 = require("./display");
9
9
  const display_2 = require("./internal/display");
10
10
  const tone_1 = require("./types/tone");
11
+ const composed_text_1 = require("./internal/composed-text");
11
12
  /** How a stat group lays its cells out: see `StatGroupProps.layout`. */
12
13
  exports.STAT_GROUP_LAYOUTS = ["joined", "cards"];
13
14
  const STAT_GROUP_COMPONENT_NAME = "dms-stat-group-block";
@@ -44,11 +45,14 @@ const StatGroupItemSchema = zod_1.z.object({
44
45
  label: "Tone",
45
46
  widget: "select",
46
47
  }),
47
- eyebrow: (0, block_registry_1.ui)(zod_1.z.string().describe("Mono label above the value."), {
48
+ eyebrow: (0, block_registry_1.ui)((0, composed_text_1.blockTextSchema)().describe("Mono label above the value."), {
48
49
  label: "Label",
50
+ widget: "text",
49
51
  }),
50
- value: (0, block_registry_1.ui)(zod_1.z.union([zod_1.z.string(), zod_1.z.number()]).describe("The figure or the state."), { label: "Value" }),
51
- detail: (0, block_registry_1.ui)(zod_1.z.string().optional(), { label: "Detail" }),
52
+ value: (0, block_registry_1.ui)(zod_1.z
53
+ .union([(0, composed_text_1.blockTextSchema)(), zod_1.z.number()])
54
+ .describe("The figure or the state."), { label: "Value", widget: "text" }),
55
+ detail: (0, block_registry_1.ui)((0, composed_text_1.blockTextSchema)().optional(), { label: "Detail", widget: "text" }),
52
56
  detailTone: (0, block_registry_1.ui)((0, display_2.toneEnum)(tone_1.TONES).optional(), {
53
57
  label: "Detail tone",
54
58
  widget: "select",
@@ -1 +1 @@
1
- {"version":3,"file":"stat-group.js","sourceRoot":"","sources":["../../src/base/stat-group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stat-group.js","sourceRoot":"","sources":["../../src/base/stat-group.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,13 @@ export interface TabProps extends BaseComponentProps {
44
44
  * A module route answering `{ [slot]: string | number }` in one request:
45
45
  * the badge of each tab it names (a count of a record's related rows),
46
46
  * replacing its static `badge`. Fetched again when one of the tab set's
47
- * `watchActions` fires. Shown like a table view's tab counts.
47
+ * `watchActions` fires, or when the page asks its blocks to refresh (see
48
+ * `BlockFunctions.REFRESH_PAGE`). Shown like a table view's tab counts.
49
+ *
50
+ * It may name the record of the page: `{{params.X}}` is filled with the
51
+ * route parameter `X` of the page URL (`/api/customers/{{params.id}}/counts`
52
+ * on a detail page), `{{query.X}}` with its query parameter `X`. Nothing is
53
+ * requested while a token has no value: the static badges show.
48
54
  */
49
55
  badgesUrl?: string;
50
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../src/base/tab.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../src/base/tab.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { type Class, type ClassDecorator } from "@antelopejs/interface-core/decorators";
2
+ import type { BlockText } from "../types/composed-text";
2
3
  import type { Tone } from "../types/tone";
3
4
  /**
4
5
  * How table cells (and expanded-row fields) draw a column's value, in place of
@@ -36,6 +37,39 @@ export interface ColumnDisplaySerialized {
36
37
  export declare const RegisterDisplay: (id: string) => ClassDecorator<Class<ColumnDisplay<object>>>;
37
38
  /** The tones of a cell's text. */
38
39
  export type CellTone = "default" | "muted" | "dimmed" | "highlighted" | "success" | "warning" | "error" | "info" | "primary";
40
+ /**
41
+ * A cell's secondary line as a row field holds it, with the tone that row
42
+ * gives it: "Payment failed · retry Oct 10" in `error`, "Due Oct 28" in
43
+ * `muted`. The server picks the text and the tone per row; the column only
44
+ * names the field.
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * @Listable(["status", "attemptCount", "nextPaymentAttemptAt"])
49
+ * get statusDetail(): CellSubline | null {
50
+ * if (this.status !== "open" || !this.nextPaymentAttemptAt) return null;
51
+ * const date = this.nextPaymentAttemptAt.toISOString();
52
+ * return {
53
+ * text: {
54
+ * key: "$saas.invoice.sub_state.retry",
55
+ * params: { date: { type: "date", value: date, format: "day" } },
56
+ * },
57
+ * tone: "error",
58
+ * };
59
+ * }
60
+ * ```
61
+ */
62
+ export interface CellSubline {
63
+ /** The line: a string (`$`-prefixed for an i18n key) or a composed text. */
64
+ text: BlockText;
65
+ /** Tone of the line; the display's own tone when left out. */
66
+ tone?: CellTone;
67
+ }
68
+ /**
69
+ * What a row field drawn as a cell's secondary line holds: a text, or a text
70
+ * and its tone. Nothing (`null`, `""`) draws no line.
71
+ */
72
+ export type CellSublineValue = BlockText | CellSubline;
39
73
  export declare namespace DefaultDisplays {
40
74
  /** A badge an identity cell shows when a field of the row matches. */
41
75
  interface IdentityBadge {
@@ -55,8 +89,14 @@ export declare namespace DefaultDisplays {
55
89
  avatarField?: string;
56
90
  /** Icon drawn in a tile instead of an avatar. */
57
91
  icon?: string;
58
- /** Row field drawn as the secondary line. */
92
+ /**
93
+ * Row field drawn as the secondary line: a string, drawn as written (an
94
+ * address, an id), or a `ComposedText` or {@link CellSubline}
95
+ * composed in the reader's language.
96
+ */
59
97
  subtitleField?: string;
98
+ /** Tone of the secondary line when the row gives none. Defaults to `dimmed`. */
99
+ subtitleTone?: CellTone;
60
100
  /** Row field holding the user id that marks the signed-in user's row. */
61
101
  selfField?: string;
62
102
  /** Tag of the signed-in user's row ("You"). `$`-prefixed: an i18n key. */
@@ -64,10 +104,18 @@ export declare namespace DefaultDisplays {
64
104
  badges?: IdentityBadge[];
65
105
  /** File storage the avatar is read from. */
66
106
  storage?: string;
107
+ /**
108
+ * Name drawn, muted, for a row without a value ("Automatic" for a credit
109
+ * note no operator issued). `$`-prefixed: an i18n key.
110
+ */
111
+ emptyLabel?: string;
112
+ /** Icon drawn in a tile for a row without a value (`i-ph-robot`). */
113
+ emptyIcon?: string;
67
114
  }
68
115
  /**
69
116
  * Avatar or icon tile, the value as the name, a "You" tag on the signed-in
70
- * user's row, badges and a secondary line, all read off the row.
117
+ * user's row, badges and a secondary line, all read off the row; an empty
118
+ * label and icon for a row without a value.
71
119
  */
72
120
  class IdentityDisplay extends ColumnDisplay<IdentityDisplayOptions> {
73
121
  }
@@ -142,14 +190,43 @@ export declare namespace DefaultDisplays {
142
190
  * @example { healthy: "success", degraded: "warning", failing: "error" }
143
191
  */
144
192
  tones: Record<string, Tone>;
145
- /** Row field drawn under the pill, in its tone (the failure's cause). */
193
+ /**
194
+ * Row field drawn under the pill (the failure's cause): a string
195
+ * (`$`-prefixed for an i18n key), a `ComposedText` or a
196
+ * {@link CellSubline} carrying its own tone.
197
+ */
146
198
  subField?: string;
199
+ /** Tone of the line under the pill when the row gives none; the pill's by default. */
200
+ subTone?: CellTone;
147
201
  /** A pulsing dot for these values (a run in progress). */
148
202
  liveValues?: string[];
149
203
  }
150
204
  /** A status as a tinted pill led by a dot, with an optional line under it. */
151
205
  class StatusPillDisplay extends ColumnDisplay<StatusPillDisplayOptions> {
152
206
  }
207
+ interface TwoLineDisplayOptions {
208
+ /**
209
+ * Row field holding the primary line, a string (`$`-prefixed for an i18n
210
+ * key) or a `ComposedText`, drawn in place of the column's value
211
+ * ("Renews in 3 days" over a `renewsAt` date column). Without it the
212
+ * primary line is the column's value, written by the column's own data
213
+ * type (an amount, a date, a select's label) or composed when the value
214
+ * is a `ComposedText`.
215
+ */
216
+ primaryField?: string;
217
+ /** Row field holding the secondary line: a {@link CellSublineValue}. */
218
+ subField?: string;
219
+ /** Tone of the secondary line when the row gives none. Defaults to `muted`. */
220
+ subTone?: CellTone;
221
+ /** Text drawn for an empty primary line. `$`-prefixed: an i18n key. Defaults to "—". */
222
+ emptyLabel?: string;
223
+ }
224
+ /**
225
+ * A primary line over a secondary one, without an avatar: a plan over its
226
+ * price per seat, an amount over what it means, a reason over its memo.
227
+ */
228
+ class TwoLineDisplay extends ColumnDisplay<TwoLineDisplayOptions> {
229
+ }
153
230
  interface ProgressDisplayOptions {
154
231
  /** Row field holding the number of items done. */
155
232
  doneField: string;
@@ -47,7 +47,8 @@ var DefaultDisplays;
47
47
  (function (DefaultDisplays) {
48
48
  /**
49
49
  * Avatar or icon tile, the value as the name, a "You" tag on the signed-in
50
- * user's row, badges and a secondary line, all read off the row.
50
+ * user's row, badges and a secondary line, all read off the row; an empty
51
+ * label and icon for a row without a value.
51
52
  */
52
53
  let IdentityDisplay = class IdentityDisplay extends ColumnDisplay {
53
54
  };
@@ -89,6 +90,16 @@ var DefaultDisplays;
89
90
  (0, exports.RegisterDisplay)("status_pill")
90
91
  ], StatusPillDisplay);
91
92
  DefaultDisplays.StatusPillDisplay = StatusPillDisplay;
93
+ /**
94
+ * A primary line over a secondary one, without an avatar: a plan over its
95
+ * price per seat, an amount over what it means, a reason over its memo.
96
+ */
97
+ let TwoLineDisplay = class TwoLineDisplay extends ColumnDisplay {
98
+ };
99
+ TwoLineDisplay = __decorate([
100
+ (0, exports.RegisterDisplay)("two_line")
101
+ ], TwoLineDisplay);
102
+ DefaultDisplays.TwoLineDisplay = TwoLineDisplay;
92
103
  /**
93
104
  * A bar filled with the share of items done ("31 / 44"), failed items in
94
105
  * red at its end; green once every item is done.
@@ -1 +1 @@
1
- {"version":3,"file":"column-display.js","sourceRoot":"","sources":["../../../src/base/table-view/column-display.ts"],"names":[],"mappings":";;;;;;;;;AAAA,sEAI+C;AAE/C,8DAAuD;AAEvD;;;;;;;;;;;;;;;GAeG;AACH,MAAsB,aAAa;IAML;IAH5B,qEAAqE;IAClD,eAAe,GAAG,IAAI,CAAC;IAE1C,YAA4B,OAAiB;QAAjB,YAAO,GAAP,OAAO,CAAU;IAAG,CAAC;CAClD;AAPD,sCAOC;AASD;;;;;GAKG;AACU,QAAA,eAAe,GAEwB,IAAA,+BAAkB,EACpE,CAAC,MAAM,EAAE,EAAU,EAAE,EAAE;IACrB,2BAAU,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC,CACF,CAAC;AAcF,IAAiB,eAAe,CAkL/B;AAlLD,WAAiB,eAAe;IA+B9B;;;OAGG;IAEH,IAAa,eAAe,GAA5B,MAAa,eAAgB,SAAQ,aAAqC;KAAG,CAAA;IAAhE,eAAe;QAD3B,IAAA,uBAAe,EAAC,UAAU,CAAC;OACf,eAAe,CAAiD;IAAhE,+BAAe,kBAAiD,CAAA;IAoB7E;;;OAGG;IAEH,IAAa,YAAY,GAAzB,MAAa,YAAa,SAAQ,aAAkC;KAAG,CAAA;IAA1D,YAAY;QADxB,IAAA,uBAAe,EAAC,OAAO,CAAC;OACZ,YAAY,CAA8C;IAA1D,4BAAY,eAA8C,CAAA;IA2BvE;;;OAGG;IAEH,IAAa,mBAAmB,GAAhC,MAAa,mBAAoB,SAAQ,aAAyC;KAAG,CAAA;IAAxE,mBAAmB;QAD/B,IAAA,uBAAe,EAAC,eAAe,CAAC;OACpB,mBAAmB,CAAqD;IAAxE,mCAAmB,sBAAqD,CAAA;IAarF,0EAA0E;IAE1E,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,aAAsC;KAAG,CAAA;IAAlE,gBAAgB;QAD5B,IAAA,uBAAe,EAAC,WAAW,CAAC;OAChB,gBAAgB,CAAkD;IAAlE,gCAAgB,mBAAkD,CAAA;IAe/E,8EAA8E;IAE9E,IAAa,iBAAiB,GAA9B,MAAa,iBAAkB,SAAQ,aAAuC;KAAG,CAAA;IAApE,iBAAiB;QAD7B,IAAA,uBAAe,EAAC,aAAa,CAAC;OAClB,iBAAiB,CAAmD;IAApE,iCAAiB,oBAAmD,CAAA;IAWjF;;;OAGG;IAEH,IAAa,eAAe,GAA5B,MAAa,eAAgB,SAAQ,aAAqC;KAAG,CAAA;IAAhE,eAAe;QAD3B,IAAA,uBAAe,EAAC,UAAU,CAAC;OACf,eAAe,CAAiD;IAAhE,+BAAe,kBAAiD,CAAA;IAS7E,gEAAgE;IAEhE,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,aAAsC;KAAG,CAAA;IAAlE,gBAAgB;QAD5B,IAAA,uBAAe,EAAC,WAAW,CAAC;OAChB,gBAAgB,CAAkD;IAAlE,gCAAgB,mBAAkD,CAAA;IAU/E,6EAA6E;IAE7E,IAAa,eAAe,GAA5B,MAAa,eAAgB,SAAQ,aAAqC;KAAG,CAAA;IAAhE,eAAe;QAD3B,IAAA,uBAAe,EAAC,UAAU,CAAC;OACf,eAAe,CAAiD;IAAhE,+BAAe,kBAAiD,CAAA;IAE7E,oEAAoE;IAEpE,IAAa,YAAY,GAAzB,MAAa,YAAa,SAAQ,aAAoC;KAAG,CAAA;IAA5D,YAAY;QADxB,IAAA,uBAAe,EAAC,OAAO,CAAC;OACZ,YAAY,CAAgD;IAA5D,4BAAY,eAAgD,CAAA;IAOzE,wDAAwD;IAExD,IAAa,WAAW,GAAxB,MAAa,WAAY,SAAQ,aAAiC;KAAG,CAAA;IAAxD,WAAW;QADvB,IAAA,uBAAe,EAAC,MAAM,CAAC;OACX,WAAW,CAA6C;IAAxD,2BAAW,cAA6C,CAAA;AACvE,CAAC,EAlLgB,eAAe,+BAAf,eAAe,QAkL/B"}
1
+ {"version":3,"file":"column-display.js","sourceRoot":"","sources":["../../../src/base/table-view/column-display.ts"],"names":[],"mappings":"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"}
@@ -897,7 +897,7 @@ export declare const TableViewSchema: z.ZodObject<{
897
897
  countLabel?: string | undefined;
898
898
  } | undefined;
899
899
  labelKey?: string | undefined;
900
- layout?: "full" | "compact" | undefined;
900
+ layout?: "compact" | "full" | undefined;
901
901
  card?: {
902
902
  component?: import("../..").Component<unknown> | undefined;
903
903
  fields?: string[] | undefined;
@@ -1093,7 +1093,7 @@ export declare const TableViewSchema: z.ZodObject<{
1093
1093
  countLabel?: string | undefined;
1094
1094
  } | undefined;
1095
1095
  labelKey?: string | undefined;
1096
- layout?: "full" | "compact" | undefined;
1096
+ layout?: "compact" | "full" | undefined;
1097
1097
  card?: {
1098
1098
  component?: import("../..").Component<unknown> | undefined;
1099
1099
  fields?: string[] | undefined;
@@ -21,6 +21,10 @@ export interface TopListItem {
21
21
  export interface TopListCardProps extends BaseComponentProps {
22
22
  title: string;
23
23
  description?: string;
24
+ /**
25
+ * Where the data is read from. `{{params.X}}` and `{{query.X}}` name the
26
+ * page URL, as in `BlockItemsSource.fetchUrl`.
27
+ */
24
28
  fetchUrl?: string;
25
29
  fetchUrlMethod?: EnumOption<HttpMethod>;
26
30
  periodScope?: string;
@@ -131,7 +135,7 @@ export declare const TopListCardSchema: z.ZodObject<{
131
135
  maxHeight?: string | undefined;
132
136
  skeletonCount?: number | undefined;
133
137
  periodScope?: string | undefined;
134
- valueFormat?: "number" | "compact" | "percent" | "currency" | undefined;
138
+ valueFormat?: "number" | "percent" | "compact" | "currency" | undefined;
135
139
  currencyCode?: string | undefined;
136
140
  showDelta?: boolean | undefined;
137
141
  showSparkline?: boolean | undefined;
@@ -165,7 +169,7 @@ export declare const TopListCardSchema: z.ZodObject<{
165
169
  maxHeight?: string | undefined;
166
170
  skeletonCount?: number | undefined;
167
171
  periodScope?: string | undefined;
168
- valueFormat?: "number" | "compact" | "percent" | "currency" | undefined;
172
+ valueFormat?: "number" | "percent" | "compact" | "currency" | undefined;
169
173
  currencyCode?: string | undefined;
170
174
  showDelta?: boolean | undefined;
171
175
  showSparkline?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"top-list-card.js","sourceRoot":"","sources":["../../src/base/top-list-card.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"top-list-card.js","sourceRoot":"","sources":["../../src/base/top-list-card.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,120 @@
1
+ /**
2
+ * A text the dashboard composes in the reader's language: an i18n key and the
3
+ * raw values its message names, each formatted for the reader's locale, time
4
+ * zone and clock when the text is drawn. The server sends the values, never a
5
+ * finished sentence, so a route answers the same JSON whatever the language of
6
+ * the person reading it.
7
+ *
8
+ * The key is looked up like any `$`-prefixed text, with or without its `$`:
9
+ * `"saas.billing.retry"` and `"$saas.billing.retry"` are the same message.
10
+ * A key the active language lacks falls back to the fallback language, then to
11
+ * the bare key.
12
+ *
13
+ * Plurals follow vue-i18n: the message lists its forms split by `|`
14
+ * (`"no seat | {count} seat | {count} seats"`) and the number named by
15
+ * `plural` picks one — by default the first `count` parameter.
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * // "saas.banner.past_due": "Invoice {invoice} of {amount} failed, retry {date}"
20
+ * const text: ComposedText = {
21
+ * key: "saas.banner.past_due",
22
+ * params: {
23
+ * invoice: "INV-0042",
24
+ * amount: { type: "money", value: 2900, currency: "EUR" },
25
+ * date: { type: "date", value: "2026-10-10", format: "day" },
26
+ * },
27
+ * };
28
+ * ```
29
+ */
30
+ export interface ComposedText {
31
+ /** The i18n key of the message; the leading `$` is optional. */
32
+ key: string;
33
+ /** The values the message names, by the name it gives them. */
34
+ params?: Record<string, ComposedTextParam>;
35
+ /**
36
+ * The parameter whose number picks the plural form. Defaults to the first
37
+ * `count` parameter; without one the message is not pluralised.
38
+ */
39
+ plural?: string;
40
+ }
41
+ /**
42
+ * An amount in the minor unit of its currency (cents for `EUR`, yen for
43
+ * `JPY`), written with the currency's symbol in the reader's locale:
44
+ * `{ type: "money", value: 92200, currency: "EUR" }` reads "€922.00" in
45
+ * English, "922,00 €" in French.
46
+ */
47
+ export interface ComposedTextMoneyParam {
48
+ type: "money";
49
+ /** The amount in minor units: an integer, the way payment providers store it. */
50
+ value: number;
51
+ /** ISO 4217 code. An unknown code writes the amount as a plain number. */
52
+ currency: string;
53
+ }
54
+ /** How much of a date a `date` or `datetime` parameter writes. */
55
+ export declare const COMPOSED_TEXT_DATE_FORMATS: readonly ["day", "short", "medium", "long"];
56
+ /**
57
+ * `day`: day and month ("Oct 10"); `short`: numeric ("10/10/2026");
58
+ * `medium`: the month abbreviated ("Oct 10, 2026"); `long`: the month in
59
+ * full ("October 10, 2026").
60
+ */
61
+ export type ComposedTextDateFormat = (typeof COMPOSED_TEXT_DATE_FORMATS)[number];
62
+ /**
63
+ * A date (`date`), or a date and its time (`datetime`), in the reader's
64
+ * language, time zone and date format preference.
65
+ */
66
+ export interface ComposedTextDateParam {
67
+ type: "date" | "datetime";
68
+ /** An ISO 8601 string or a timestamp in milliseconds. */
69
+ value: string | number;
70
+ /** Defaults to `medium`. */
71
+ format?: ComposedTextDateFormat;
72
+ }
73
+ /**
74
+ * The distance from now, past or future, in the largest whole unit: "in 3
75
+ * days", "tomorrow", "2 hours ago". It is computed when the text is drawn.
76
+ */
77
+ export interface ComposedTextRelativeDateParam {
78
+ type: "relative";
79
+ /** An ISO 8601 string or a timestamp in milliseconds. */
80
+ value: string | number;
81
+ }
82
+ /** How a `number` parameter is written. */
83
+ export declare const COMPOSED_TEXT_NUMBER_FORMATS: readonly ["decimal", "percent", "compact"];
84
+ /**
85
+ * `decimal`: grouped digits ("1,284.5"); `percent`: a ratio as a percentage
86
+ * (`0.25` → "25%"); `compact`: a short form ("1.3K").
87
+ */
88
+ export type ComposedTextNumberFormat = (typeof COMPOSED_TEXT_NUMBER_FORMATS)[number];
89
+ /** A number written for the reader's locale. */
90
+ export interface ComposedTextNumberParam {
91
+ type: "number";
92
+ value: number;
93
+ /** Defaults to `decimal`. */
94
+ format?: ComposedTextNumberFormat;
95
+ }
96
+ /**
97
+ * A count: written like a number, and the parameter that picks the plural
98
+ * form of the message unless `ComposedText.plural` names another one.
99
+ */
100
+ export interface ComposedTextCountParam {
101
+ type: "count";
102
+ value: number;
103
+ }
104
+ /** A parameter that says how its value is written. */
105
+ export type ComposedTextTypedParam = ComposedTextMoneyParam | ComposedTextDateParam | ComposedTextRelativeDateParam | ComposedTextNumberParam | ComposedTextCountParam;
106
+ /** The `type` of a typed parameter. */
107
+ export type ComposedTextParamType = ComposedTextTypedParam["type"];
108
+ /**
109
+ * A value a composed text names. A string is inserted as written — it is
110
+ * data (an invoice number, a plan name), not a key; a bare number is written
111
+ * for the locale; a typed parameter is formatted by its `type`; a nested
112
+ * `ComposedText` is composed first ("Business · {seats}" inside a sentence).
113
+ */
114
+ export type ComposedTextParam = string | number | ComposedTextTypedParam | ComposedText;
115
+ /**
116
+ * Any text a block draws: a plain string, `$`-prefixed for an i18n key, or a
117
+ * {@link ComposedText}. Every option and fetched field typed `BlockText`
118
+ * accepts both, so a route can answer either.
119
+ */
120
+ export type BlockText = string | ComposedText;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.COMPOSED_TEXT_NUMBER_FORMATS = exports.COMPOSED_TEXT_DATE_FORMATS = void 0;
4
+ /** How much of a date a `date` or `datetime` parameter writes. */
5
+ exports.COMPOSED_TEXT_DATE_FORMATS = [
6
+ "day",
7
+ "short",
8
+ "medium",
9
+ "long",
10
+ ];
11
+ /** How a `number` parameter is written. */
12
+ exports.COMPOSED_TEXT_NUMBER_FORMATS = [
13
+ "decimal",
14
+ "percent",
15
+ "compact",
16
+ ];
17
+ //# sourceMappingURL=composed-text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composed-text.js","sourceRoot":"","sources":["../../../src/base/types/composed-text.ts"],"names":[],"mappings":";;;AAuDA,kEAAkE;AACrD,QAAA,0BAA0B,GAAG;IACxC,KAAK;IACL,OAAO;IACP,QAAQ;IACR,MAAM;CACE,CAAC;AAgCX,2CAA2C;AAC9B,QAAA,4BAA4B,GAAG;IAC1C,SAAS;IACT,SAAS;IACT,SAAS;CACD,CAAC"}
@@ -1,6 +1,7 @@
1
1
  export * from "./base-component-props";
2
2
  export * from "./button";
3
3
  export * from "./color";
4
+ export * from "./composed-text";
4
5
  export * from "./component-input";
5
6
  export * from "./confirm-dialog";
6
7
  export * from "./custom-button";
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./base-component-props"), exports);
18
18
  __exportStar(require("./button"), exports);
19
19
  __exportStar(require("./color"), exports);
20
+ __exportStar(require("./composed-text"), exports);
20
21
  __exportStar(require("./component-input"), exports);
21
22
  __exportStar(require("./confirm-dialog"), exports);
22
23
  __exportStar(require("./custom-button"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,2CAAyB;AACzB,0CAAwB;AACxB,oDAAkC;AAClC,mDAAiC;AACjC,kDAAgC;AAChC,gDAA8B;AAC9B,0CAAwB;AACxB,kDAAgC;AAChC,iDAA+B;AAC/B,8CAA4B;AAC5B,gDAA8B;AAC9B,yCAAuB;AACvB,yCAAuB;AACvB,gDAA8B;AAC9B,sDAAoC;AACpC,yCAAuB;AACvB,yCAAuB;AACvB,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/base/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,2CAAyB;AACzB,0CAAwB;AACxB,kDAAgC;AAChC,oDAAkC;AAClC,mDAAiC;AACjC,kDAAgC;AAChC,gDAA8B;AAC9B,0CAAwB;AACxB,kDAAgC;AAChC,iDAA+B;AAC/B,8CAA4B;AAC5B,gDAA8B;AAC9B,yCAAuB;AACvB,yCAAuB;AACvB,gDAA8B;AAC9B,sDAAoC;AACpC,yCAAuB;AACvB,yCAAuB;AACvB,0CAAwB"}