@antelopejs/interface-dms 0.5.5 → 0.5.7
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/CHANGELOG.md +51 -0
- package/dist/api-base-url.d.ts +10 -0
- package/dist/api-base-url.js +15 -0
- package/dist/api-base-url.js.map +1 -0
- package/dist/base/activity-feed.d.ts +70 -1
- package/dist/base/activity-feed.js +39 -0
- package/dist/base/activity-feed.js.map +1 -1
- package/dist/base/block-types.d.ts +1 -0
- package/dist/base/block-types.js +1 -0
- package/dist/base/block-types.js.map +1 -1
- package/dist/base/chart-card.d.ts +13 -0
- package/dist/base/chart-card.js +1 -0
- package/dist/base/chart-card.js.map +1 -1
- package/dist/base/chart-schemas.d.ts +39 -0
- package/dist/base/chart-schemas.js +5 -0
- package/dist/base/chart-schemas.js.map +1 -1
- package/dist/base/chart.d.ts +10 -0
- package/dist/base/chart.js +3 -1
- package/dist/base/chart.js.map +1 -1
- package/dist/base/data-types/default-types.d.ts +5 -0
- package/dist/base/data-types/default-types.js +11 -3
- package/dist/base/data-types/default-types.js.map +1 -1
- package/dist/base/form-schema.d.ts +5 -0
- package/dist/base/form-schema.js.map +1 -1
- package/dist/base/guard.d.ts +228 -0
- package/dist/base/guard.js +94 -0
- package/dist/base/guard.js.map +1 -0
- package/dist/base/index.d.ts +1 -0
- package/dist/base/index.js +1 -0
- package/dist/base/index.js.map +1 -1
- package/dist/base/internal/layouts.d.ts +6 -0
- package/dist/base/live-toggle.d.ts +31 -2
- package/dist/base/live-toggle.js +27 -4
- package/dist/base/live-toggle.js.map +1 -1
- package/dist/base/period-selector.d.ts +61 -13
- package/dist/base/period-selector.js +27 -1
- package/dist/base/period-selector.js.map +1 -1
- package/dist/base/tab.d.ts +23 -6
- package/dist/base/tab.js +2 -1
- package/dist/base/tab.js.map +1 -1
- package/dist/base/table-view/factory.js +2 -0
- package/dist/base/table-view/factory.js.map +1 -1
- package/dist/base/table-view/internal/factory-helpers.js +1 -0
- package/dist/base/table-view/internal/factory-helpers.js.map +1 -1
- package/dist/base/table-view/internal/validation.js +3 -0
- package/dist/base/table-view/internal/validation.js.map +1 -1
- package/dist/base/table-view/options.d.ts +76 -4
- package/dist/base/table-view/options.js.map +1 -1
- package/dist/base/table-view/schema.d.ts +44 -3
- package/dist/base/table-view/schema.js +22 -2
- package/dist/base/table-view/schema.js.map +1 -1
- package/dist/base/table-view/source.d.ts +2 -2
- package/dist/base/table-view/source.js +22 -7
- package/dist/base/table-view/source.js.map +1 -1
- package/dist/base/table-view.d.ts +1 -1
- package/dist/base/table-view.js.map +1 -1
- package/dist/base/top-list-card.d.ts +20 -0
- package/dist/base/top-list-card.js +5 -0
- package/dist/base/top-list-card.js.map +1 -1
- package/dist/base/types/action-target.d.ts +34 -0
- package/dist/base/types/confirm-dialog.d.ts +42 -0
- package/dist/base/types/custom-button.d.ts +4 -0
- package/dist/base/types/row-action.d.ts +6 -0
- package/dist/component.d.ts +8 -0
- package/dist/component.js.map +1 -1
- package/dist/page/controllers.js +26 -6
- package/dist/page/controllers.js.map +1 -1
- package/dist/page/internal/layout-filter.d.ts +3 -1
- package/dist/page/internal/layout-filter.js +10 -7
- package/dist/page/internal/layout-filter.js.map +1 -1
- package/dist/page/internal/metadata-helpers.d.ts +10 -0
- package/dist/page/internal/metadata-helpers.js +15 -1
- package/dist/page/internal/metadata-helpers.js.map +1 -1
- package/dist/page/internal/page-registration.d.ts +2 -0
- package/dist/page/internal/page-registration.js.map +1 -1
- package/dist/page/metadata.js +11 -5
- package/dist/page/metadata.js.map +1 -1
- package/dist/page/types.d.ts +47 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,56 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.5.7
|
|
4
|
+
|
|
5
|
+
[compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.5.6...v0.5.7)
|
|
6
|
+
|
|
7
|
+
### 🚀 Enhancements
|
|
8
|
+
|
|
9
|
+
- **dms:** Give custom components the live, form and record APIs stock blocks use ([#225](https://github.com/AntelopeJS/dms/pull/225))
|
|
10
|
+
- **dms:** Close the module gaps left by the API console ([#233](https://github.com/AntelopeJS/dms/pull/233))
|
|
11
|
+
|
|
12
|
+
### 🩹 Fixes
|
|
13
|
+
|
|
14
|
+
- **guard:** Space several children the way the page spaces its blocks ([#221](https://github.com/AntelopeJS/dms/pull/221))
|
|
15
|
+
|
|
16
|
+
### 🏡 Chore
|
|
17
|
+
|
|
18
|
+
- **release:** @antelopejs/dms v0.7.10 ([e4747dce](https://github.com/AntelopeJS/dms/commit/e4747dce))
|
|
19
|
+
- **release:** @antelopejs/dms v0.7.11 ([54748e78](https://github.com/AntelopeJS/dms/commit/54748e78))
|
|
20
|
+
|
|
21
|
+
### ❤️ Contributors
|
|
22
|
+
|
|
23
|
+
- Antony Rizzitelli <rizzitelli.antony@pm.me>
|
|
24
|
+
|
|
25
|
+
## v0.5.6
|
|
26
|
+
|
|
27
|
+
[compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.5.5...v0.5.6)
|
|
28
|
+
|
|
29
|
+
### 🚀 Enhancements
|
|
30
|
+
|
|
31
|
+
- **interface:** Expose the API base URL to modules with GetApiBaseUrl ([#215](https://github.com/AntelopeJS/dms/pull/215))
|
|
32
|
+
- **confirm:** Add a secondary action to ConfirmDialog ([#214](https://github.com/AntelopeJS/dms/pull/214))
|
|
33
|
+
- **period:** Add relative range label, comparison toggle, all-time preset and shared remembered period ([#209](https://github.com/AntelopeJS/dms/pull/209))
|
|
34
|
+
- **blocks:** Close the stock block gaps left by the dms-api migration ([#210](https://github.com/AntelopeJS/dms/pull/210))
|
|
35
|
+
- **blocks:** Treat a 404 as not found, and draw it the same in a Guard ([#216](https://github.com/AntelopeJS/dms/pull/216))
|
|
36
|
+
- **table-view:** Close the search and side panel gaps of a custom request log ([#212](https://github.com/AntelopeJS/dms/pull/212))
|
|
37
|
+
- **page:** Bring the live mode to parity with custom live controls ([#211](https://github.com/AntelopeJS/dms/pull/211))
|
|
38
|
+
- **table-view:** Pin rows, fall back to the default sort, name row actions after the row ([#218](https://github.com/AntelopeJS/dms/pull/218))
|
|
39
|
+
- **page:** Let header actions follow the page query ([#219](https://github.com/AntelopeJS/dms/pull/219))
|
|
40
|
+
|
|
41
|
+
### 🩹 Fixes
|
|
42
|
+
|
|
43
|
+
- **realtime:** Keep a page's topics when it remounts at the same path ([#213](https://github.com/AntelopeJS/dms/pull/213))
|
|
44
|
+
- **preferences:** Keep the server-read table state in a compact cookie and the rest in localStorage ([#217](https://github.com/AntelopeJS/dms/pull/217))
|
|
45
|
+
|
|
46
|
+
### 🏡 Chore
|
|
47
|
+
|
|
48
|
+
- **release:** @antelopejs/dms v0.7.9 ([33baee22](https://github.com/AntelopeJS/dms/commit/33baee22))
|
|
49
|
+
|
|
50
|
+
### ❤️ Contributors
|
|
51
|
+
|
|
52
|
+
- Antony Rizzitelli <rizzitelli.antony@pm.me>
|
|
53
|
+
|
|
3
54
|
## v0.5.5
|
|
4
55
|
|
|
5
56
|
[compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.5.4...v0.5.5)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The public origin the DMS API is reached on (`apiBaseUrl`): the base of
|
|
3
|
+
* any absolute link to a backend route -- a public file, a webhook, a
|
|
4
|
+
* snippet a user copies.
|
|
5
|
+
*
|
|
6
|
+
* It comes from the DMS configuration, and from the dev server override, so
|
|
7
|
+
* the module owns it, as with `GetClientBaseUrl`: behind a reverse proxy that
|
|
8
|
+
* forwards no `X-Forwarded-Host`, the request alone cannot tell it.
|
|
9
|
+
*/
|
|
10
|
+
export declare const GetApiBaseUrl: () => Promise<string | undefined>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GetApiBaseUrl = void 0;
|
|
4
|
+
const interface_core_1 = require("@antelopejs/interface-core");
|
|
5
|
+
/**
|
|
6
|
+
* The public origin the DMS API is reached on (`apiBaseUrl`): the base of
|
|
7
|
+
* any absolute link to a backend route -- a public file, a webhook, a
|
|
8
|
+
* snippet a user copies.
|
|
9
|
+
*
|
|
10
|
+
* It comes from the DMS configuration, and from the dev server override, so
|
|
11
|
+
* the module owns it, as with `GetClientBaseUrl`: behind a reverse proxy that
|
|
12
|
+
* forwards no `X-Forwarded-Host`, the request alone cannot tell it.
|
|
13
|
+
*/
|
|
14
|
+
exports.GetApiBaseUrl = (0, interface_core_1.InterfaceFunction)();
|
|
15
|
+
//# sourceMappingURL=api-base-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-base-url.js","sourceRoot":"","sources":["../src/api-base-url.ts"],"names":[],"mappings":";;;AAAA,+DAA+D;AAE/D;;;;;;;;GAQG;AACU,QAAA,aAAa,GAAG,IAAA,kCAAiB,GAA4B,CAAC"}
|
|
@@ -17,6 +17,11 @@ export interface ActivityFeedItem {
|
|
|
17
17
|
title: BlockText;
|
|
18
18
|
/** Details under the title, joined by "·"; each one like the title. */
|
|
19
19
|
meta?: BlockText[];
|
|
20
|
+
/**
|
|
21
|
+
* A third line under the details, dimmed and mono, like the title: the
|
|
22
|
+
* evidence behind the entry (`400 "Cart is empty" × 16`).
|
|
23
|
+
*/
|
|
24
|
+
detail?: BlockText;
|
|
20
25
|
/**
|
|
21
26
|
* Values the `$`-prefixed title and details interpolate (`{device}`). A
|
|
22
27
|
* typed value is formatted for the reader (`{ type: "count", value: 3 }`,
|
|
@@ -35,13 +40,37 @@ export interface ActivityFeedItem {
|
|
|
35
40
|
/** Path the entry links to. */
|
|
36
41
|
to?: string;
|
|
37
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* What an `ActivityFeed`'s `fetchUrl` answers: its entries, newest first, and
|
|
45
|
+
* optionally how many there are in all, shown beside the title.
|
|
46
|
+
*/
|
|
47
|
+
export interface ActivityFeedResponse {
|
|
48
|
+
items: ActivityFeedItem[];
|
|
49
|
+
/**
|
|
50
|
+
* The count beside the title: every entry the source holds, more than
|
|
51
|
+
* `items` when the route caps them. Replaces the `count` option.
|
|
52
|
+
*/
|
|
53
|
+
count?: number;
|
|
54
|
+
}
|
|
38
55
|
/**
|
|
39
56
|
* The options `ActivityFeed` takes. Its `fetchUrl` answers `{ items }`, newest
|
|
40
|
-
* first, like every list block
|
|
57
|
+
* first, like every list block, and may add a `count`
|
|
58
|
+
* (`ActivityFeedResponse`).
|
|
41
59
|
*/
|
|
42
60
|
export interface ActivityFeedProps extends BaseComponentProps, BlockItemsSource {
|
|
43
61
|
/** Eyebrow title of the card head. */
|
|
44
62
|
title?: string;
|
|
63
|
+
/**
|
|
64
|
+
* Count beside the title, as a mono chip. A `count` the route answers
|
|
65
|
+
* replaces it. Shown with the card head only.
|
|
66
|
+
*/
|
|
67
|
+
count?: number;
|
|
68
|
+
/**
|
|
69
|
+
* Soft badge in the card head, before the actions, like a `TopListCard`'s
|
|
70
|
+
* period badge: the window the entries cover ("Last 24 h"). A `$` key, a
|
|
71
|
+
* literal or a `ComposedText`. Shown with the card head only.
|
|
72
|
+
*/
|
|
73
|
+
badge?: BlockText;
|
|
45
74
|
/** Entries shown when no data source is set, newest first. */
|
|
46
75
|
items?: ActivityFeedItem[];
|
|
47
76
|
/**
|
|
@@ -51,6 +80,18 @@ export interface ActivityFeedProps extends BaseComponentProps, BlockItemsSource
|
|
|
51
80
|
groupByDay?: boolean;
|
|
52
81
|
/** Shows at most this many entries; `skeletonCount` never exceeds it. */
|
|
53
82
|
maxItems?: number;
|
|
83
|
+
/**
|
|
84
|
+
* Shows the first this many entries and, under them, a "Show N more"
|
|
85
|
+
* button that unfolds the rest (up to `maxItems`) and folds them back:
|
|
86
|
+
* the card stays short without hiding what it holds.
|
|
87
|
+
*/
|
|
88
|
+
visibleItems?: number;
|
|
89
|
+
/**
|
|
90
|
+
* Entries wrap their title, details and detail line over as many lines as
|
|
91
|
+
* they need, a long path breaking anywhere, instead of cutting each to one
|
|
92
|
+
* line with an ellipsis. Defaults to `false`.
|
|
93
|
+
*/
|
|
94
|
+
wrap?: boolean;
|
|
54
95
|
/**
|
|
55
96
|
* The card fills its grid cell instead of growing with its entries, which
|
|
56
97
|
* scroll inside it under a fixed head: the cards beside it in the row set
|
|
@@ -80,6 +121,17 @@ export interface ActivityFeedProps extends BaseComponentProps, BlockItemsSource
|
|
|
80
121
|
* maxItems: 8,
|
|
81
122
|
* actions: [{ label: "View all", to: "/audit" }],
|
|
82
123
|
* })
|
|
124
|
+
*
|
|
125
|
+
* // Head: "NEEDS ATTENTION [4] Last 24 h"; each entry a third mono line,
|
|
126
|
+
* // wrapped rather than cut, three shown before "Show 1 more".
|
|
127
|
+
* ActivityFeed({
|
|
128
|
+
* title: "Needs attention",
|
|
129
|
+
* badge: "Last 24 h",
|
|
130
|
+
* fetchUrl: "/api/attention", // { items: [{ …, detail }], count: 4 }
|
|
131
|
+
* groupByDay: false,
|
|
132
|
+
* wrap: true,
|
|
133
|
+
* visibleItems: 3,
|
|
134
|
+
* })
|
|
83
135
|
* ```
|
|
84
136
|
*/
|
|
85
137
|
export declare function ActivityFeed(options?: ActivityFeedProps): ComponentBuilder<ActivityFeedProps>;
|
|
@@ -109,6 +161,7 @@ export declare const ActivityFeedSchema: z.ZodObject<{
|
|
|
109
161
|
tone: z.ZodOptional<z.ZodEnum<["primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral", ...("primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral")[]]>>;
|
|
110
162
|
title: z.ZodType<BlockText, z.ZodTypeDef, BlockText>;
|
|
111
163
|
meta: z.ZodOptional<z.ZodArray<z.ZodType<BlockText, z.ZodTypeDef, BlockText>, "many">>;
|
|
164
|
+
detail: z.ZodOptional<z.ZodType<BlockText, z.ZodTypeDef, BlockText>>;
|
|
112
165
|
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<ComposedTextParam, z.ZodTypeDef, ComposedTextParam>>>;
|
|
113
166
|
date: z.ZodOptional<z.ZodString>;
|
|
114
167
|
time: z.ZodOptional<z.ZodType<BlockText, z.ZodTypeDef, BlockText>>;
|
|
@@ -123,6 +176,7 @@ export declare const ActivityFeedSchema: z.ZodObject<{
|
|
|
123
176
|
icon?: string | undefined;
|
|
124
177
|
meta?: BlockText[] | undefined;
|
|
125
178
|
to?: string | undefined;
|
|
179
|
+
detail?: BlockText | undefined;
|
|
126
180
|
tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
|
|
127
181
|
unread?: boolean | undefined;
|
|
128
182
|
}, {
|
|
@@ -134,11 +188,16 @@ export declare const ActivityFeedSchema: z.ZodObject<{
|
|
|
134
188
|
icon?: string | undefined;
|
|
135
189
|
meta?: BlockText[] | undefined;
|
|
136
190
|
to?: string | undefined;
|
|
191
|
+
detail?: BlockText | undefined;
|
|
137
192
|
tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
|
|
138
193
|
unread?: boolean | undefined;
|
|
139
194
|
}>, "many">>;
|
|
195
|
+
count: z.ZodOptional<z.ZodNumber>;
|
|
196
|
+
badge: z.ZodOptional<z.ZodType<BlockText, z.ZodTypeDef, BlockText>>;
|
|
140
197
|
groupByDay: z.ZodOptional<z.ZodBoolean>;
|
|
141
198
|
maxItems: z.ZodOptional<z.ZodNumber>;
|
|
199
|
+
visibleItems: z.ZodOptional<z.ZodNumber>;
|
|
200
|
+
wrap: z.ZodOptional<z.ZodBoolean>;
|
|
142
201
|
fillHeight: z.ZodOptional<z.ZodBoolean>;
|
|
143
202
|
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
144
203
|
label: z.ZodString;
|
|
@@ -170,17 +229,21 @@ export declare const ActivityFeedSchema: z.ZodObject<{
|
|
|
170
229
|
icon?: string | undefined;
|
|
171
230
|
meta?: BlockText[] | undefined;
|
|
172
231
|
to?: string | undefined;
|
|
232
|
+
detail?: BlockText | undefined;
|
|
173
233
|
tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
|
|
174
234
|
unread?: boolean | undefined;
|
|
175
235
|
}[] | undefined;
|
|
176
236
|
maxItems?: number | undefined;
|
|
177
237
|
title?: string | undefined;
|
|
238
|
+
count?: number | undefined;
|
|
178
239
|
fetchUrl?: string | undefined;
|
|
179
240
|
fetchUrlMethod?: import("./types").HttpMethod | undefined;
|
|
180
241
|
periodScope?: string | undefined;
|
|
242
|
+
wrap?: boolean | undefined;
|
|
181
243
|
mono?: boolean | undefined;
|
|
182
244
|
realtimeTopic?: string | string[] | undefined;
|
|
183
245
|
fillHeight?: boolean | undefined;
|
|
246
|
+
badge?: BlockText | undefined;
|
|
184
247
|
actions?: {
|
|
185
248
|
label: string;
|
|
186
249
|
to: string;
|
|
@@ -189,6 +252,7 @@ export declare const ActivityFeedSchema: z.ZodObject<{
|
|
|
189
252
|
color?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
|
|
190
253
|
}[] | undefined;
|
|
191
254
|
groupByDay?: boolean | undefined;
|
|
255
|
+
visibleItems?: number | undefined;
|
|
192
256
|
empty?: {
|
|
193
257
|
title: string;
|
|
194
258
|
description?: string | undefined;
|
|
@@ -204,18 +268,22 @@ export declare const ActivityFeedSchema: z.ZodObject<{
|
|
|
204
268
|
icon?: string | undefined;
|
|
205
269
|
meta?: BlockText[] | undefined;
|
|
206
270
|
to?: string | undefined;
|
|
271
|
+
detail?: BlockText | undefined;
|
|
207
272
|
tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
|
|
208
273
|
unread?: boolean | undefined;
|
|
209
274
|
}[] | undefined;
|
|
210
275
|
maxItems?: number | undefined;
|
|
211
276
|
title?: string | undefined;
|
|
277
|
+
count?: number | undefined;
|
|
212
278
|
fetchUrl?: string | undefined;
|
|
213
279
|
fetchUrlMethod?: import("./types").HttpMethod | undefined;
|
|
214
280
|
card?: boolean | undefined;
|
|
215
281
|
periodScope?: string | undefined;
|
|
282
|
+
wrap?: boolean | undefined;
|
|
216
283
|
mono?: boolean | undefined;
|
|
217
284
|
realtimeTopic?: string | string[] | undefined;
|
|
218
285
|
fillHeight?: boolean | undefined;
|
|
286
|
+
badge?: BlockText | undefined;
|
|
219
287
|
actions?: {
|
|
220
288
|
label: string;
|
|
221
289
|
to: string;
|
|
@@ -224,6 +292,7 @@ export declare const ActivityFeedSchema: z.ZodObject<{
|
|
|
224
292
|
color?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
|
|
225
293
|
}[] | undefined;
|
|
226
294
|
groupByDay?: boolean | undefined;
|
|
295
|
+
visibleItems?: number | undefined;
|
|
227
296
|
empty?: {
|
|
228
297
|
title: string;
|
|
229
298
|
description?: string | undefined;
|
|
@@ -27,6 +27,17 @@ const DEFAULT_ICON = "i-ph-pulse";
|
|
|
27
27
|
* maxItems: 8,
|
|
28
28
|
* actions: [{ label: "View all", to: "/audit" }],
|
|
29
29
|
* })
|
|
30
|
+
*
|
|
31
|
+
* // Head: "NEEDS ATTENTION [4] Last 24 h"; each entry a third mono line,
|
|
32
|
+
* // wrapped rather than cut, three shown before "Show 1 more".
|
|
33
|
+
* ActivityFeed({
|
|
34
|
+
* title: "Needs attention",
|
|
35
|
+
* badge: "Last 24 h",
|
|
36
|
+
* fetchUrl: "/api/attention", // { items: [{ …, detail }], count: 4 }
|
|
37
|
+
* groupByDay: false,
|
|
38
|
+
* wrap: true,
|
|
39
|
+
* visibleItems: 3,
|
|
40
|
+
* })
|
|
30
41
|
* ```
|
|
31
42
|
*/
|
|
32
43
|
function ActivityFeed(options) {
|
|
@@ -46,6 +57,10 @@ const ActivityFeedItemSchema = zod_1.z.object({
|
|
|
46
57
|
}),
|
|
47
58
|
title: (0, block_registry_1.ui)((0, composed_text_1.blockTextSchema)(), { label: "Title", widget: "text" }),
|
|
48
59
|
meta: (0, block_registry_1.ui)(zod_1.z.array((0, composed_text_1.blockTextSchema)()).optional(), { label: "Details" }),
|
|
60
|
+
detail: (0, block_registry_1.ui)((0, composed_text_1.blockTextSchema)().optional(), {
|
|
61
|
+
label: "Detail line",
|
|
62
|
+
widget: "text",
|
|
63
|
+
}),
|
|
49
64
|
params: (0, block_registry_1.ui)(zod_1.z.record(zod_1.z.string(), (0, composed_text_1.composedTextParamSchema)()).optional(), {
|
|
50
65
|
label: "Text values",
|
|
51
66
|
widget: "json",
|
|
@@ -71,6 +86,15 @@ exports.ActivityFeedSchema = zod_1.z.object({
|
|
|
71
86
|
group: "content",
|
|
72
87
|
widget: "json",
|
|
73
88
|
}),
|
|
89
|
+
count: (0, block_registry_1.ui)(zod_1.z
|
|
90
|
+
.number()
|
|
91
|
+
.int()
|
|
92
|
+
.min(0)
|
|
93
|
+
.optional()
|
|
94
|
+
.describe("Count beside the title; a `count` the route answers wins."), { label: "Count", group: "content", widget: "number", min: 0 }),
|
|
95
|
+
badge: (0, block_registry_1.ui)((0, composed_text_1.blockTextSchema)()
|
|
96
|
+
.optional()
|
|
97
|
+
.describe("Soft badge in the card head, e.g. the window covered."), { label: "Badge", group: "content", widget: "text" }),
|
|
74
98
|
groupByDay: (0, block_registry_1.ui)(zod_1.z
|
|
75
99
|
.boolean()
|
|
76
100
|
.optional()
|
|
@@ -86,6 +110,21 @@ exports.ActivityFeedSchema = zod_1.z.object({
|
|
|
86
110
|
widget: "number",
|
|
87
111
|
min: 1,
|
|
88
112
|
}),
|
|
113
|
+
visibleItems: (0, block_registry_1.ui)(zod_1.z
|
|
114
|
+
.number()
|
|
115
|
+
.int()
|
|
116
|
+
.min(1)
|
|
117
|
+
.optional()
|
|
118
|
+
.describe('Entries shown before a "Show N more" button unfolds the rest.'), {
|
|
119
|
+
label: "Entries before Show more",
|
|
120
|
+
group: "appearance",
|
|
121
|
+
widget: "number",
|
|
122
|
+
min: 1,
|
|
123
|
+
}),
|
|
124
|
+
wrap: (0, block_registry_1.ui)(zod_1.z
|
|
125
|
+
.boolean()
|
|
126
|
+
.optional()
|
|
127
|
+
.describe("Entries wrap their texts rather than cutting them to one line."), { label: "Wrap entries", group: "appearance", widget: "switch" }),
|
|
89
128
|
fillHeight: (0, block_registry_1.ui)(zod_1.z
|
|
90
129
|
.boolean()
|
|
91
130
|
.optional()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-feed.js","sourceRoot":"","sources":["../../src/base/activity-feed.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"activity-feed.js","sourceRoot":"","sources":["../../src/base/activity-feed.ts"],"names":[],"mappings":";;;AA6JA,oCAYC;AAzKD,4CAAgD;AAChD,6BAAwB;AACxB,qDAA+E;AAC/E,uCAMmB;AACnB,gDAA8C;AAC9C,4DAGkC;AAGlC,uCAAgD;AAChD,gEAAsE;AA4GtE,MAAM,4BAA4B,GAAG,yBAAyB,CAAC;AAC/D,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,YAAY,CAC1B,OAA2B;IAE3B,OAAO,IAAA,0CAAwB,EAC7B,IAAI,4BAAgB,CAAoB,4BAA4B,CAAC;SAClE,OAAO,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;SACvB,IAAI,CAAC;QACJ,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,eAAe;QACvC,IAAI,EAAE,YAAY;KACnB,CAAC,EACJ,OAAO,EAAE,aAAa,CACvB,CAAC;AACJ,CAAC;AAED,MAAM,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IACtC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzB,IAAI,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAClE,IAAI,EAAE,IAAA,mBAAE,EAAC,IAAA,kBAAQ,EAAC,YAAK,CAAC,CAAC,QAAQ,EAAE,EAAE;QACnC,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,QAAQ;KACjB,CAAC;IACF,KAAK,EAAE,IAAA,mBAAE,EAAC,IAAA,+BAAe,GAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAChE,IAAI,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,KAAK,CAAC,IAAA,+BAAe,GAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACrE,MAAM,EAAE,IAAA,mBAAE,EAAC,IAAA,+BAAe,GAAE,CAAC,QAAQ,EAAE,EAAE;QACvC,KAAK,EAAE,aAAa;QACpB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,MAAM,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,IAAA,uCAAuB,GAAE,CAAC,CAAC,QAAQ,EAAE,EAAE;QACrE,KAAK,EAAE,aAAa;QACpB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,IAAI,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE;QACjE,KAAK,EAAE,MAAM;KACd,CAAC;IACF,IAAI,EAAE,IAAA,mBAAE,EAAC,IAAA,+BAAe,GAAE,CAAC,QAAQ,EAAE,EAAE;QACrC,KAAK,EAAE,WAAW;QAClB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,MAAM,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACzE,EAAE,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;CAChE,CAA6C,CAAC;AAE/C,0CAA0C;AAC7B,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,KAAK,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE;QACtE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,SAAS;KACjB,CAAC;IACF,KAAK,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,EAAE;QACpD,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,KAAK,EAAE,IAAA,mBAAE,EACP,OAAC;SACE,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,CAAC,EACxE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAC/D;IACD,KAAK,EAAE,IAAA,mBAAE,EACP,IAAA,+BAAe,GAAE;SACd,QAAQ,EAAE;SACV,QAAQ,CAAC,uDAAuD,CAAC,EACpE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CACrD;IACD,UAAU,EAAE,IAAA,mBAAE,EACZ,OAAC;SACE,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,wDAAwD,CAAC,EACrE;QACE,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,IAAI;KACd,CACF;IACD,QAAQ,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE;QACxC,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,QAAQ;QAChB,GAAG,EAAE,CAAC;KACP,CAAC;IACF,YAAY,EAAE,IAAA,mBAAE,EACd,OAAC;SACE,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,+DAA+D,CAChE,EACH;QACE,KAAK,EAAE,0BAA0B;QACjC,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,QAAQ;QAChB,GAAG,EAAE,CAAC;KACP,CACF;IACD,IAAI,EAAE,IAAA,mBAAE,EACN,OAAC;SACE,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,gEAAgE,CACjE,EACH,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,CACjE;IACD,UAAU,EAAE,IAAA,mBAAE,EACZ,OAAC;SACE,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,mFAAmF,CACpF,EACH,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,CAClE;IACD,OAAO,EAAE,IAAA,4BAAkB,EAAC,gCAAgC,CAAC;IAC7D,GAAG,IAAA,iCAAuB,GAAE;IAC5B,IAAI,EAAE,IAAA,mBAAE,EAAC,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC/B,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,QAAQ;KACjB,CAAC;IACF,IAAI,EAAE,IAAA,yBAAe,EAAC,IAAI,CAAC;CAC5B,CAA8C,CAAC;AAEhD,IAAA,kCAAiB,EAAC;IAChB,IAAI,EAAE,cAAc;IACpB,aAAa,EAAE,4BAA4B;IAC3C,MAAM,EAAE,0BAAkB;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,yDAAyD;QACtE,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAC"}
|
package/dist/base/block-types.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"block-types.js","sourceRoot":"","sources":["../../src/base/block-types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;GAWG;AACH,2BAAyB;AACzB,oBAAkB;AAClB,kBAAgB;AAChB,oCAAkC;AAClC,wBAAsB;AACtB,wBAAsB;AACtB,yBAAuB;AACvB,+BAA6B;AAC7B,kBAAgB;AAChB,4BAA0B;AAC1B,sBAAoB;AACpB,mBAAiB;AACjB,2BAAyB;AACzB,6BAA2B;AAC3B,yBAAuB;AACvB,kCAAgC;AAChC,qBAAmB;AACnB,mBAAiB;AACjB,wBAAsB;AACtB,iBAAe;AACf,+BAA6B;AAC7B,2BAAyB;AAEzB,2EAA2E;AAC3E,6DAA6D;AAC7D,iDAA+B;AAC/B,2DAAyC;AACzC,4DAA0C;AAC1C,yDAAuC"}
|
|
1
|
+
{"version":3,"file":"block-types.js","sourceRoot":"","sources":["../../src/base/block-types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;GAWG;AACH,2BAAyB;AACzB,oBAAkB;AAClB,kBAAgB;AAChB,oCAAkC;AAClC,wBAAsB;AACtB,wBAAsB;AACtB,yBAAuB;AACvB,+BAA6B;AAC7B,kBAAgB;AAChB,mBAAiB;AACjB,4BAA0B;AAC1B,sBAAoB;AACpB,mBAAiB;AACjB,2BAAyB;AACzB,6BAA2B;AAC3B,yBAAuB;AACvB,kCAAgC;AAChC,qBAAmB;AACnB,mBAAiB;AACjB,wBAAsB;AACtB,iBAAe;AACf,+BAA6B;AAC7B,2BAAyB;AAEzB,2EAA2E;AAC3E,6DAA6D;AAC7D,iDAA+B;AAC/B,2DAAyC;AACzC,4DAA0C;AAC1C,yDAAuC"}
|
|
@@ -18,7 +18,17 @@ export interface ChartCardProps extends BaseComponentProps {
|
|
|
18
18
|
currencyCode?: string;
|
|
19
19
|
valuePrecision?: ValuePrecision;
|
|
20
20
|
showDelta?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* The card's own legend, "Period" and "Comparison" in its head, drawn when
|
|
23
|
+
* the route answers a comparison. Defaults to `true`.
|
|
24
|
+
*/
|
|
21
25
|
showLegend?: boolean;
|
|
26
|
+
/**
|
|
27
|
+
* The legend of the chart the card wraps, naming each of its series
|
|
28
|
+
* ("Average", "p95"), placed by the chart's `legendPosition`. Off by
|
|
29
|
+
* default: a card's single series is named by its title.
|
|
30
|
+
*/
|
|
31
|
+
showSeriesLegend?: boolean;
|
|
22
32
|
primaryLabel?: string;
|
|
23
33
|
comparisonLabel?: string;
|
|
24
34
|
}
|
|
@@ -45,6 +55,7 @@ export declare const ChartCardSchema: z.ZodObject<{
|
|
|
45
55
|
currencyCode: z.ZodOptional<z.ZodString>;
|
|
46
56
|
showDelta: z.ZodDefault<z.ZodBoolean>;
|
|
47
57
|
showLegend: z.ZodDefault<z.ZodBoolean>;
|
|
58
|
+
showSeriesLegend: z.ZodOptional<z.ZodBoolean>;
|
|
48
59
|
primaryLabel: z.ZodOptional<z.ZodString>;
|
|
49
60
|
comparisonLabel: z.ZodOptional<z.ZodString>;
|
|
50
61
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -59,6 +70,7 @@ export declare const ChartCardSchema: z.ZodObject<{
|
|
|
59
70
|
periodScope?: string | undefined;
|
|
60
71
|
valueFormat?: "number" | "percent" | "compact" | "currency" | undefined;
|
|
61
72
|
currencyCode?: string | undefined;
|
|
73
|
+
showSeriesLegend?: boolean | undefined;
|
|
62
74
|
primaryLabel?: string | undefined;
|
|
63
75
|
comparisonLabel?: string | undefined;
|
|
64
76
|
}, {
|
|
@@ -73,6 +85,7 @@ export declare const ChartCardSchema: z.ZodObject<{
|
|
|
73
85
|
valueFormat?: "number" | "percent" | "compact" | "currency" | undefined;
|
|
74
86
|
currencyCode?: string | undefined;
|
|
75
87
|
showDelta?: boolean | undefined;
|
|
88
|
+
showSeriesLegend?: boolean | undefined;
|
|
76
89
|
primaryLabel?: string | undefined;
|
|
77
90
|
comparisonLabel?: string | undefined;
|
|
78
91
|
}>;
|
package/dist/base/chart-card.js
CHANGED
|
@@ -99,6 +99,7 @@ exports.ChartCardSchema = zod_1.z.object({
|
|
|
99
99
|
group: "appearance",
|
|
100
100
|
widget: "switch",
|
|
101
101
|
}),
|
|
102
|
+
showSeriesLegend: (0, block_registry_1.ui)(zod_1.z.boolean().optional().describe("Name each series of the chart."), { label: "Show series legend", group: "appearance", widget: "switch" }),
|
|
102
103
|
primaryLabel: (0, block_registry_1.ui)(zod_1.z.string().optional(), {
|
|
103
104
|
label: "Series label",
|
|
104
105
|
group: "content",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chart-card.js","sourceRoot":"","sources":["../../src/base/chart-card.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"chart-card.js","sourceRoot":"","sources":["../../src/base/chart-card.ts"],"names":[],"mappings":"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"}
|