@antelopejs/interface-dms 0.5.7 → 0.5.9
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 +36 -0
- package/dist/base/chart-card.d.ts +9 -0
- package/dist/base/chart-card.js +4 -1
- package/dist/base/chart-card.js.map +1 -1
- package/dist/base/form-schema.d.ts +7 -0
- package/dist/base/form-schema.js.map +1 -1
- package/dist/base/top-list-card.d.ts +17 -0
- package/dist/base/top-list-card.js +4 -2
- package/dist/base/top-list-card.js.map +1 -1
- package/dist/base/types/action-target.d.ts +6 -0
- package/dist/base/types/confirm-dialog.d.ts +5 -0
- package/dist/client-ip.d.ts +31 -0
- package/dist/client-ip.js +40 -0
- package/dist/client-ip.js.map +1 -0
- package/dist/page/types.d.ts +11 -0
- package/dist/page/types.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,41 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v0.5.9
|
|
4
|
+
|
|
5
|
+
[compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.5.8...v0.5.9)
|
|
6
|
+
|
|
7
|
+
### 🚀 Enhancements
|
|
8
|
+
|
|
9
|
+
- **interface:** Expose the resolved client address to modules ([#235](https://github.com/AntelopeJS/dms/pull/235))
|
|
10
|
+
- **form:** Keep out-of-range numbers, interpolate field error params and expose the required legend ([#231](https://github.com/AntelopeJS/dms/pull/231))
|
|
11
|
+
- **confirm:** Add useConfirmFrom and a case-insensitive typed confirmation ([#232](https://github.com/AntelopeJS/dms/pull/232))
|
|
12
|
+
- **page:** Let a page failing its validation redirect instead of answering not found ([#236](https://github.com/AntelopeJS/dms/pull/236))
|
|
13
|
+
- **links:** Let row links and link actions keep the page's context ([#238](https://github.com/AntelopeJS/dms/pull/238))
|
|
14
|
+
|
|
15
|
+
### 🏡 Chore
|
|
16
|
+
|
|
17
|
+
- **release:** @antelopejs/dms v0.7.13 ([c0a0eb50](https://github.com/AntelopeJS/dms/commit/c0a0eb50))
|
|
18
|
+
|
|
19
|
+
### ❤️ Contributors
|
|
20
|
+
|
|
21
|
+
- Antony Rizzitelli <rizzitelli.antony@pm.me>
|
|
22
|
+
|
|
23
|
+
## v0.5.8
|
|
24
|
+
|
|
25
|
+
[compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.5.7...v0.5.8)
|
|
26
|
+
|
|
27
|
+
### 🩹 Fixes
|
|
28
|
+
|
|
29
|
+
- **module:** Redirect a module's address on the server, and refresh chart cards live ([#239](https://github.com/AntelopeJS/dms/pull/239))
|
|
30
|
+
|
|
31
|
+
### 🏡 Chore
|
|
32
|
+
|
|
33
|
+
- **release:** @antelopejs/dms v0.7.12 ([2a855a10](https://github.com/AntelopeJS/dms/commit/2a855a10))
|
|
34
|
+
|
|
35
|
+
### ❤️ Contributors
|
|
36
|
+
|
|
37
|
+
- Antony Rizzitelli <rizzitelli.antony@pm.me>
|
|
38
|
+
|
|
3
39
|
## v0.5.7
|
|
4
40
|
|
|
5
41
|
[compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.5.6...v0.5.7)
|
|
@@ -14,6 +14,12 @@ export interface ChartCardProps extends BaseComponentProps {
|
|
|
14
14
|
fetchUrl?: string;
|
|
15
15
|
fetchUrlMethod?: EnumOption<HttpMethod>;
|
|
16
16
|
periodScope?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Topics the backend publishes on (`PublishMessage`) when the data moves:
|
|
19
|
+
* the card reads `fetchUrl` again on each event, keeping what it shows,
|
|
20
|
+
* through the page's `live` gate. The page registers them.
|
|
21
|
+
*/
|
|
22
|
+
realtimeTopic?: string | string[];
|
|
17
23
|
valueFormat?: ValueFormat;
|
|
18
24
|
currencyCode?: string;
|
|
19
25
|
valuePrecision?: ValuePrecision;
|
|
@@ -51,6 +57,7 @@ export declare const ChartCardSchema: z.ZodObject<{
|
|
|
51
57
|
fetchUrl: z.ZodOptional<z.ZodString>;
|
|
52
58
|
fetchUrlMethod: z.ZodOptional<z.ZodNativeEnum<typeof HttpMethod>>;
|
|
53
59
|
periodScope: z.ZodOptional<z.ZodString>;
|
|
60
|
+
realtimeTopic: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
54
61
|
valueFormat: z.ZodOptional<z.ZodEnum<["number", "currency", "percent", "compact"]>>;
|
|
55
62
|
currencyCode: z.ZodOptional<z.ZodString>;
|
|
56
63
|
showDelta: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -68,6 +75,7 @@ export declare const ChartCardSchema: z.ZodObject<{
|
|
|
68
75
|
fetchUrl?: string | undefined;
|
|
69
76
|
fetchUrlMethod?: HttpMethod | undefined;
|
|
70
77
|
periodScope?: string | undefined;
|
|
78
|
+
realtimeTopic?: string | string[] | undefined;
|
|
71
79
|
valueFormat?: "number" | "percent" | "compact" | "currency" | undefined;
|
|
72
80
|
currencyCode?: string | undefined;
|
|
73
81
|
showSeriesLegend?: boolean | undefined;
|
|
@@ -81,6 +89,7 @@ export declare const ChartCardSchema: z.ZodObject<{
|
|
|
81
89
|
fetchUrl?: string | undefined;
|
|
82
90
|
fetchUrlMethod?: HttpMethod | undefined;
|
|
83
91
|
periodScope?: string | undefined;
|
|
92
|
+
realtimeTopic?: string | string[] | undefined;
|
|
84
93
|
showLegend?: boolean | undefined;
|
|
85
94
|
valueFormat?: "number" | "percent" | "compact" | "currency" | undefined;
|
|
86
95
|
currencyCode?: string | undefined;
|
package/dist/base/chart-card.js
CHANGED
|
@@ -7,6 +7,8 @@ const zod_1 = require("zod");
|
|
|
7
7
|
const block_registry_1 = require("./block-registry");
|
|
8
8
|
const chart_1 = require("./chart");
|
|
9
9
|
const chart_schemas_1 = require("./internal/chart-schemas");
|
|
10
|
+
const display_1 = require("./display");
|
|
11
|
+
const realtime_topics_1 = require("./internal/realtime-topics");
|
|
10
12
|
const http_1 = require("./types/http");
|
|
11
13
|
const CHART_CARD_COMPONENT_NAME = "dms-chart-card";
|
|
12
14
|
const NESTED_CHART_ID = "chart";
|
|
@@ -37,7 +39,7 @@ function ChartCard(options) {
|
|
|
37
39
|
name: rest.title || "Chart card",
|
|
38
40
|
icon: rest.icon || "i-ph-chart-line",
|
|
39
41
|
});
|
|
40
|
-
return chart ? builder.child(NESTED_CHART_ID, chart) : builder;
|
|
42
|
+
return (0, realtime_topics_1.attachRealtimeTopicsHook)(chart ? builder.child(NESTED_CHART_ID, chart) : builder, rest.realtimeTopic);
|
|
41
43
|
}
|
|
42
44
|
/** The options `ChartCard` accepts, including the chart it wraps. */
|
|
43
45
|
exports.ChartCardSchema = zod_1.z.object({
|
|
@@ -78,6 +80,7 @@ exports.ChartCardSchema = zod_1.z.object({
|
|
|
78
80
|
label: "Period scope",
|
|
79
81
|
group: "advanced",
|
|
80
82
|
}),
|
|
83
|
+
realtimeTopic: (0, display_1.blockRealtimeTopicOption)(),
|
|
81
84
|
valueFormat: (0, block_registry_1.ui)(zod_1.z.enum(chart_1.VALUE_FORMATS).optional(), {
|
|
82
85
|
label: "Value format",
|
|
83
86
|
group: "appearance",
|
|
@@ -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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"}
|
|
@@ -144,6 +144,13 @@ export declare namespace FormComponents {
|
|
|
144
144
|
placeholder?: string;
|
|
145
145
|
/** Unit written after the field ("days"): an i18n key with `$`, or a literal. */
|
|
146
146
|
suffix?: string;
|
|
147
|
+
/**
|
|
148
|
+
* `InputNumber` only. By default (`true`) a value typed outside `min` /
|
|
149
|
+
* `max` is clamped into range when the field loses focus. `false` keeps
|
|
150
|
+
* it as typed and shows "too small" / "too large" under the field, which
|
|
151
|
+
* blocks the submit; the steppers still stop at the bounds.
|
|
152
|
+
*/
|
|
153
|
+
clamp?: boolean;
|
|
147
154
|
}
|
|
148
155
|
interface InputTimeOptions {
|
|
149
156
|
min?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-schema.js","sourceRoot":"","sources":["../../src/base/form-schema.ts"],"names":[],"mappings":";AAAA,4EAA4E;AAC5E,2EAA2E;AAC3E,6DAA6D;;;;;;;;;;;;;;;;;AA6B7D,gEAmBC;AAQD,8CAIC;AAgBD,0CAgBC;AAoBD,kCAOC;AAqBD,gCAOC;AAED,kDAgBC;AAnKD,4CAA8E;AAC9E,wCAAoD;AACpD,6BAAwB;AACxB,2DAAqD;AACrD,4CAAkD;AAIlD,oEAAmE;AACnE,6CAWsB;AACtB,wDAA4D;AAE5D,sDAAoC;AACpC;;GAEG;AACH,SAAgB,0BAA0B,CACxC,UAAwB,EACxB,OAAoD;IAEpD,IAAI,MAAM,GAAG,UAAU,CAAC;IAExB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,GAAG,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtB,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;SAAM,IAAI,MAAM,YAAY,OAAC,CAAC,SAAS,EAAE,CAAC;QACzC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;SAAM,IAAI,MAAM,YAAY,OAAC,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,eAAe,GAAG,SAAS,CAAC;AAClC,6EAA6E;AAC7E,gEAAgE;AAChE,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;AAExD,sEAAsE;AACtE,SAAgB,iBAAiB,CAAC,KAAgB;IAChD,IAAI,IAAA,oBAAa,EAAC,KAAK,CAAC,IAAI,CAAC,KAAK,eAAe;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;IACtE,OAAO,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,gBAAgB,CACvB,KAAmC,EACnC,KAAgB;IAEhB,MAAM,UAAU,GACd,KAAK,CAAC,QAAQ,IAAI,iBAAiB,CAAC,KAAK,CAAC;QACxC,CAAC,CAAC,OAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QACjB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IACjC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,0BAA0B,CAAC,UAAU,EAAE;QACvD,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;KACzB,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,eAAe,CAC7B,MAA0B;IAE1B,MAAM,KAAK,GAAiC,EAAE,CAAC;IAE/C,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,IAAA,yBAAY,EAAC,IAAI,CAAC,EAAE,CAAC;YACvB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,OAAO,OAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,GAAG,QAAQ,CAAC;AAE5B,SAAS,aAAa,CAAC,MAAe;IACpC,OAAO,MAAM,YAAY,4BAAgB,IAAI,UAAU,IAAI,MAAM,CAAC;AACpE,CAAC;AAED,MAAM,YAAY,GAAG,UAAU,CAAC;AAEhC,SAAS,WAAW,CAAC,MAAe;IAClC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAChE,MAAM,KAAK,GAAG,MAAmB,CAAC;IAClC,OAAO,CACL,CAAC,UAAU,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC,YAAY,IAAI,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CACzD,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,SAAgB,WAAW,CACzB,OAA+C;IAE/C,OAAO;QACL,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QACzB,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,OAA8B;IAE9B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACjD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAmC;IAEnC,OAAO,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAChD,GAAG,OAAO;QACV,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;KACxC,CAAC,CAAC,CAAC;AACN,CAAC;AAID,SAAgB,UAAU,CACxB,MAAwB;IAExB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACjE,IAAI,WAAW,CAAC,MAAM,CAAC;QAAE,OAAO,eAAe,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACpD,CAAC;AAED,SAAgB,mBAAmB,CACjC,MAA0B;IAE1B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACzB,IAAI,IAAA,yBAAY,EAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO;gBACL,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,gCAAkB,CAAC;gBAC3C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC;QACJ,CAAC;QACD,OAAO,IAAA,gCAAkB,EAAC,IAAI,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACI,MAAM,IAAI,GAAG,CAAC,OAAmB,EAAe,EAAE;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG,IAAI,4BAAgB,CAAsB,uCAAmB,CAAC;SAC3E,OAAO,CAAC;QACP,GAAG,eAAe,CAAC,OAAO,CAAC;QAC3B,MAAM,EAAE,gBAAgB;QACxB,GAAG,CAAC,OAAO,EAAE,QAAQ,IAAI;YACvB,QAAQ,EAAE,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC;SAClD,CAAC;QACF,MAAM,EAAE,IAAA,oCAAe,EAAC,MAAM,CAAC;KAChC,CAAC;QACF,yEAAyE;QACzE,yEAAyE;QACzE,wEAAwE;QACxE,iBAAiB;SAChB,gBAAgB,CAAC,gCAAsB,CAAC;SACxC,IAAI,CAAC;QACJ,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,MAAM;QAC9B,IAAI,EAAE,kBAAkB;KACzB,CAAC,CAAC;IAEL,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC;AAzBW,QAAA,IAAI,QAyBf;AAEF,IAAiB,cAAc,
|
|
1
|
+
{"version":3,"file":"form-schema.js","sourceRoot":"","sources":["../../src/base/form-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,14 @@ export interface TopListItem {
|
|
|
30
30
|
sparkline?: number[];
|
|
31
31
|
icon?: string;
|
|
32
32
|
avatar?: TopListItemAvatar;
|
|
33
|
+
/**
|
|
34
|
+
* Where the row leads. It may name the page it is shown on, as
|
|
35
|
+
* `fetchUrl` does: `{{params.X}}` and `{{query.X}}` are filled from the
|
|
36
|
+
* page URL when the row is drawn, and a query pair whose token the page
|
|
37
|
+
* has no value for is left out, so
|
|
38
|
+
* `/pages?website={{query.website}}&sales.period={{query.sales.period}}`
|
|
39
|
+
* keeps the page's website and period.
|
|
40
|
+
*/
|
|
33
41
|
to?: string;
|
|
34
42
|
}
|
|
35
43
|
export interface TopListCardProps extends BaseComponentProps {
|
|
@@ -42,6 +50,12 @@ export interface TopListCardProps extends BaseComponentProps {
|
|
|
42
50
|
fetchUrl?: string;
|
|
43
51
|
fetchUrlMethod?: EnumOption<HttpMethod>;
|
|
44
52
|
periodScope?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Topics the backend publishes on (`PublishMessage`) when the data moves:
|
|
55
|
+
* the card reads `fetchUrl` again on each event, keeping what it shows,
|
|
56
|
+
* through the page's `live` gate. The page registers them.
|
|
57
|
+
*/
|
|
58
|
+
realtimeTopic?: string | string[];
|
|
45
59
|
valueFormat?: ValueFormat;
|
|
46
60
|
currencyCode?: string;
|
|
47
61
|
valuePrecision?: ValuePrecision;
|
|
@@ -92,6 +106,7 @@ export declare const TopListCardSchema: z.ZodObject<{
|
|
|
92
106
|
fetchUrl: z.ZodOptional<z.ZodString>;
|
|
93
107
|
fetchUrlMethod: z.ZodOptional<z.ZodNativeEnum<typeof HttpMethod>>;
|
|
94
108
|
periodScope: z.ZodOptional<z.ZodString>;
|
|
109
|
+
realtimeTopic: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
95
110
|
valueFormat: z.ZodOptional<z.ZodEnum<["number", "currency", "percent", "compact"]>>;
|
|
96
111
|
currencyCode: z.ZodOptional<z.ZodString>;
|
|
97
112
|
valueSuffix: z.ZodOptional<z.ZodString>;
|
|
@@ -182,6 +197,7 @@ export declare const TopListCardSchema: z.ZodObject<{
|
|
|
182
197
|
fetchUrlMethod?: HttpMethod | undefined;
|
|
183
198
|
periodScope?: string | undefined;
|
|
184
199
|
maxHeight?: string | undefined;
|
|
200
|
+
realtimeTopic?: string | string[] | undefined;
|
|
185
201
|
actions?: {
|
|
186
202
|
label: string;
|
|
187
203
|
to: string;
|
|
@@ -225,6 +241,7 @@ export declare const TopListCardSchema: z.ZodObject<{
|
|
|
225
241
|
fetchUrlMethod?: HttpMethod | undefined;
|
|
226
242
|
periodScope?: string | undefined;
|
|
227
243
|
maxHeight?: string | undefined;
|
|
244
|
+
realtimeTopic?: string | string[] | undefined;
|
|
228
245
|
actions?: {
|
|
229
246
|
label: string;
|
|
230
247
|
to: string;
|
|
@@ -7,6 +7,7 @@ const zod_1 = require("zod");
|
|
|
7
7
|
const block_registry_1 = require("./block-registry");
|
|
8
8
|
const chart_1 = require("./chart");
|
|
9
9
|
const display_1 = require("./display");
|
|
10
|
+
const realtime_topics_1 = require("./internal/realtime-topics");
|
|
10
11
|
const composed_text_1 = require("./internal/composed-text");
|
|
11
12
|
const http_1 = require("./types/http");
|
|
12
13
|
const TOP_LIST_CARD_COMPONENT_NAME = "dms-top-list-card";
|
|
@@ -18,12 +19,12 @@ const DEFAULT_ICON = "i-ph-list-numbers";
|
|
|
18
19
|
* on every edit — so a block with nothing set yet has to be a legal call.
|
|
19
20
|
*/
|
|
20
21
|
function TopListCard(options) {
|
|
21
|
-
return new component_1.ComponentBuilder(TOP_LIST_CARD_COMPONENT_NAME)
|
|
22
|
+
return (0, realtime_topics_1.attachRealtimeTopicsHook)(new component_1.ComponentBuilder(TOP_LIST_CARD_COMPONENT_NAME)
|
|
22
23
|
.options({ ...options })
|
|
23
24
|
.meta({
|
|
24
25
|
name: options?.title || "Top list",
|
|
25
26
|
icon: DEFAULT_ICON,
|
|
26
|
-
});
|
|
27
|
+
}), options?.realtimeTopic);
|
|
27
28
|
}
|
|
28
29
|
const TopListItemSchema = zod_1.z.object({
|
|
29
30
|
id: zod_1.z.union([zod_1.z.string(), zod_1.z.number()]),
|
|
@@ -64,6 +65,7 @@ exports.TopListCardSchema = zod_1.z.object({
|
|
|
64
65
|
label: "Period scope",
|
|
65
66
|
group: "advanced",
|
|
66
67
|
}),
|
|
68
|
+
realtimeTopic: (0, display_1.blockRealtimeTopicOption)(),
|
|
67
69
|
valueFormat: (0, block_registry_1.ui)(zod_1.z.enum(chart_1.VALUE_FORMATS).optional(), {
|
|
68
70
|
label: "Value format",
|
|
69
71
|
group: "appearance",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"top-list-card.js","sourceRoot":"","sources":["../../src/base/top-list-card.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"top-list-card.js","sourceRoot":"","sources":["../../src/base/top-list-card.ts"],"names":[],"mappings":"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"}
|
|
@@ -92,9 +92,15 @@ export type ActionTarget = {
|
|
|
92
92
|
component: Component;
|
|
93
93
|
} & SidePanelTargetOptions) | {
|
|
94
94
|
type: "page";
|
|
95
|
+
/**
|
|
96
|
+
* The page to open. On a row action the row's fields fill `{field}`;
|
|
97
|
+
* `{{params.X}}` and `{{query.X}}` name the page the action sits on, a
|
|
98
|
+
* query pair whose token the page has no value for being left out.
|
|
99
|
+
*/
|
|
95
100
|
url: string;
|
|
96
101
|
} | {
|
|
97
102
|
type: "external";
|
|
103
|
+
/** Takes the same `{field}` and page URL tokens as a `page` target. */
|
|
98
104
|
url: string;
|
|
99
105
|
newTab?: boolean;
|
|
100
106
|
} | {
|
|
@@ -78,6 +78,11 @@ export interface ConfirmDialog {
|
|
|
78
78
|
blocked?: boolean;
|
|
79
79
|
/** Text the user must type to confirm (type-to-confirm). */
|
|
80
80
|
confirmText?: string;
|
|
81
|
+
/**
|
|
82
|
+
* Compares the typed text with `confirmText` ignoring case (`acme` matches
|
|
83
|
+
* `ACME`): for a name the user reads but would not care to retype exactly.
|
|
84
|
+
*/
|
|
85
|
+
confirmTextCaseInsensitive?: boolean;
|
|
81
86
|
/**
|
|
82
87
|
* Fields the user fills in before confirming. Their values are sent with
|
|
83
88
|
* the action's request — merged into an `api` target's `body`, the input
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { RequestContext } from "@antelopejs/interface-api";
|
|
2
|
+
/** What a request exposes about the address it came from. */
|
|
3
|
+
export interface ClientAddressSource {
|
|
4
|
+
/** The TCP peer of the request: the client, or the nearest proxy */
|
|
5
|
+
socketAddress: string | undefined;
|
|
6
|
+
/** The raw `x-forwarded-for` header, possibly absent */
|
|
7
|
+
forwardedFor: string | undefined;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* The client address of a request, resolved the way the DMS resolves the
|
|
11
|
+
* address it records on a session: behind the `auth.trustedProxies` reverse
|
|
12
|
+
* proxies of its configuration, each trusted hop vouching for the
|
|
13
|
+
* `x-forwarded-for` entry it appended and nothing left of it, with an
|
|
14
|
+
* IPv4-mapped address (`::ffff:10.0.0.1`) written as plain IPv4.
|
|
15
|
+
*
|
|
16
|
+
* The DMS owns the proxy count, so a module asks rather than reading a
|
|
17
|
+
* setting of its own the operator would have to keep in sync with it.
|
|
18
|
+
*
|
|
19
|
+
* @param source The socket peer and `x-forwarded-for` header of the request
|
|
20
|
+
* @returns The client address, or an empty string when none is known
|
|
21
|
+
*/
|
|
22
|
+
export declare const ResolveClientIp: (source: ClientAddressSource) => Promise<string>;
|
|
23
|
+
/**
|
|
24
|
+
* The client address of the request `context` serves, through
|
|
25
|
+
* {@link ResolveClientIp}: what a public route keys a rate limit or an
|
|
26
|
+
* anonymous visitor on.
|
|
27
|
+
*
|
|
28
|
+
* @param context The request context (`@Context()` in a controller)
|
|
29
|
+
* @returns The client address, or an empty string when none is known
|
|
30
|
+
*/
|
|
31
|
+
export declare function getClientIp(context: RequestContext): Promise<string>;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ResolveClientIp = void 0;
|
|
4
|
+
exports.getClientIp = getClientIp;
|
|
5
|
+
const interface_core_1 = require("@antelopejs/interface-core");
|
|
6
|
+
const FORWARDED_FOR_HEADER = "x-forwarded-for";
|
|
7
|
+
const FORWARDED_FOR_SEPARATOR = ",";
|
|
8
|
+
/**
|
|
9
|
+
* The client address of a request, resolved the way the DMS resolves the
|
|
10
|
+
* address it records on a session: behind the `auth.trustedProxies` reverse
|
|
11
|
+
* proxies of its configuration, each trusted hop vouching for the
|
|
12
|
+
* `x-forwarded-for` entry it appended and nothing left of it, with an
|
|
13
|
+
* IPv4-mapped address (`::ffff:10.0.0.1`) written as plain IPv4.
|
|
14
|
+
*
|
|
15
|
+
* The DMS owns the proxy count, so a module asks rather than reading a
|
|
16
|
+
* setting of its own the operator would have to keep in sync with it.
|
|
17
|
+
*
|
|
18
|
+
* @param source The socket peer and `x-forwarded-for` header of the request
|
|
19
|
+
* @returns The client address, or an empty string when none is known
|
|
20
|
+
*/
|
|
21
|
+
exports.ResolveClientIp = (0, interface_core_1.InterfaceFunction)();
|
|
22
|
+
function forwardedForOf(context) {
|
|
23
|
+
const header = context.rawRequest.headers[FORWARDED_FOR_HEADER];
|
|
24
|
+
return Array.isArray(header) ? header.join(FORWARDED_FOR_SEPARATOR) : header;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* The client address of the request `context` serves, through
|
|
28
|
+
* {@link ResolveClientIp}: what a public route keys a rate limit or an
|
|
29
|
+
* anonymous visitor on.
|
|
30
|
+
*
|
|
31
|
+
* @param context The request context (`@Context()` in a controller)
|
|
32
|
+
* @returns The client address, or an empty string when none is known
|
|
33
|
+
*/
|
|
34
|
+
function getClientIp(context) {
|
|
35
|
+
return (0, exports.ResolveClientIp)({
|
|
36
|
+
socketAddress: context.rawRequest.socket.remoteAddress,
|
|
37
|
+
forwardedFor: forwardedForOf(context),
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=client-ip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-ip.js","sourceRoot":"","sources":["../src/client-ip.ts"],"names":[],"mappings":";;;AA2CA,kCAKC;AA/CD,+DAA+D;AAE/D,MAAM,oBAAoB,GAAG,iBAAiB,CAAC;AAC/C,MAAM,uBAAuB,GAAG,GAAG,CAAC;AAUpC;;;;;;;;;;;;GAYG;AACU,QAAA,eAAe,GAC1B,IAAA,kCAAiB,GAA2C,CAAC;AAE/D,SAAS,cAAc,CAAC,OAAuB;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC/E,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,OAAuB;IACjD,OAAO,IAAA,uBAAe,EAAC;QACrB,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa;QACtD,YAAY,EAAE,cAAc,CAAC,OAAO,CAAC;KACtC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/page/types.d.ts
CHANGED
|
@@ -44,8 +44,19 @@ export interface PageSetupContext {
|
|
|
44
44
|
*/
|
|
45
45
|
export type PageSetupFunction = (context: PageSetupContext) => MaybePromise<PageSetupCleanup | void>;
|
|
46
46
|
export interface PageValidation {
|
|
47
|
+
/** Query parameters the page needs, each with a non-empty value. */
|
|
47
48
|
requiredQueryParams?: string[];
|
|
49
|
+
/** Id of a validation function the frontend registers. */
|
|
48
50
|
customFunctionId?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Where a page that fails its validation sends the user, in place of the
|
|
53
|
+
* "Page not found" error: a dashboard path, such as the list a detail page
|
|
54
|
+
* opened without its `?id` belongs to. The history entry is replaced, so
|
|
55
|
+
* Back does not return to the invalid URL, and a server render answers a
|
|
56
|
+
* redirect. It may name the page URL with `{{params.X}}` and `{{query.X}}`
|
|
57
|
+
* tokens; a query pair whose token has no value is left out.
|
|
58
|
+
*/
|
|
59
|
+
redirectTo?: string;
|
|
49
60
|
}
|
|
50
61
|
export declare const MODULE_URL_PREFIX = "/modules";
|
|
51
62
|
/**
|
package/dist/page/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/page/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/page/types.ts"],"names":[],"mappings":";;;AAmFa,QAAA,iBAAiB,GAAG,UAAU,CAAC"}
|
package/package.json
CHANGED