@antelopejs/interface-dms 0.5.0 → 0.5.1

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 (69) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/dist/base/activity-feed.d.ts +43 -31
  3. package/dist/base/activity-feed.js +11 -6
  4. package/dist/base/activity-feed.js.map +1 -1
  5. package/dist/base/banner.d.ts +61 -4
  6. package/dist/base/banner.js +13 -2
  7. package/dist/base/banner.js.map +1 -1
  8. package/dist/base/block-types.d.ts +1 -0
  9. package/dist/base/block-types.js +1 -0
  10. package/dist/base/block-types.js.map +1 -1
  11. package/dist/base/chart-card.d.ts +1 -1
  12. package/dist/base/chart-schemas.d.ts +52 -52
  13. package/dist/base/chart-schemas.js +2 -6
  14. package/dist/base/chart-schemas.js.map +1 -1
  15. package/dist/base/chart.js +2 -20
  16. package/dist/base/chart.js.map +1 -1
  17. package/dist/base/code-block.d.ts +89 -0
  18. package/dist/base/code-block.js +93 -0
  19. package/dist/base/code-block.js.map +1 -0
  20. package/dist/base/display.d.ts +27 -4
  21. package/dist/base/display.js +28 -6
  22. package/dist/base/display.js.map +1 -1
  23. package/dist/base/empty-state.d.ts +35 -0
  24. package/dist/base/empty-state.js +10 -0
  25. package/dist/base/empty-state.js.map +1 -1
  26. package/dist/base/index.d.ts +1 -0
  27. package/dist/base/index.js +1 -0
  28. package/dist/base/index.js.map +1 -1
  29. package/dist/base/internal/composed-text.d.ts +8 -1
  30. package/dist/base/internal/composed-text.js +9 -1
  31. package/dist/base/internal/composed-text.js.map +1 -1
  32. package/dist/base/internal/realtime-topics.d.ts +15 -0
  33. package/dist/base/internal/realtime-topics.js +36 -0
  34. package/dist/base/internal/realtime-topics.js.map +1 -0
  35. package/dist/base/key-value-list.d.ts +23 -0
  36. package/dist/base/key-value-list.js +8 -2
  37. package/dist/base/key-value-list.js.map +1 -1
  38. package/dist/base/meter.d.ts +38 -17
  39. package/dist/base/meter.js +15 -6
  40. package/dist/base/meter.js.map +1 -1
  41. package/dist/base/nav-card-grid.d.ts +41 -31
  42. package/dist/base/nav-card-grid.js +11 -7
  43. package/dist/base/nav-card-grid.js.map +1 -1
  44. package/dist/base/stat-group.d.ts +6 -0
  45. package/dist/base/stat-group.js +3 -2
  46. package/dist/base/stat-group.js.map +1 -1
  47. package/dist/base/tab.d.ts +8 -0
  48. package/dist/base/tab.js +5 -2
  49. package/dist/base/tab.js.map +1 -1
  50. package/dist/base/table-view/column-display.d.ts +43 -3
  51. package/dist/base/table-view/column-display.js +3 -2
  52. package/dist/base/table-view/column-display.js.map +1 -1
  53. package/dist/base/table-view/factory.js +2 -0
  54. package/dist/base/table-view/factory.js.map +1 -1
  55. package/dist/base/table-view/internal/realtime.d.ts +7 -0
  56. package/dist/base/table-view/internal/realtime.js +14 -0
  57. package/dist/base/table-view/internal/realtime.js.map +1 -1
  58. package/dist/base/table-view/options.d.ts +9 -0
  59. package/dist/base/table-view/schema.d.ts +3 -0
  60. package/dist/base/table-view/schema.js +5 -0
  61. package/dist/base/table-view/schema.js.map +1 -1
  62. package/dist/base/table-view/source.d.ts +10 -2
  63. package/dist/base/table-view/source.js +9 -1
  64. package/dist/base/table-view/source.js.map +1 -1
  65. package/dist/base/top-list-card.d.ts +21 -14
  66. package/dist/base/top-list-card.js +3 -2
  67. package/dist/base/top-list-card.js.map +1 -1
  68. package/dist/base/types/action-target.d.ts +14 -0
  69. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-block.js","sourceRoot":"","sources":["../../src/base/code-block.ts"],"names":[],"mappings":"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"}
@@ -79,8 +79,16 @@ export declare const blockEmptyOption: () => z.ZodOptional<z.ZodObject<{
79
79
  * or not. Turn it off to nest the block in a `Card`.
80
80
  */
81
81
  export declare const blockCardOption: (isOnByDefault: boolean) => z.ZodDefault<z.ZodBoolean>;
82
- /** The `fetchUrl` option of a block, picked in the editor's source list. */
83
- export declare const blockFetchUrlOption: (description: string) => z.ZodOptional<z.ZodString>;
82
+ /**
83
+ * The `fetchUrl` option of a block, picked in the editor's source list.
84
+ * `periodOption` names the block's option holding the period scope the
85
+ * source follows, for a block that can follow one.
86
+ */
87
+ export declare const blockFetchUrlOption: (description: string, periodOption?: string) => z.ZodOptional<z.ZodString>;
88
+ /** The `periodScope` option of a block whose data source follows a period. */
89
+ export declare const blockPeriodScopeOption: () => z.ZodOptional<z.ZodString>;
90
+ /** The `realtimeTopic` option of a block that refetches on realtime events. */
91
+ export declare const blockRealtimeTopicOption: () => z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
84
92
  /** The `fetchUrlMethod` option that goes with `fetchUrl`. */
85
93
  export declare const blockFetchUrlMethodOption: () => z.ZodOptional<z.ZodNativeEnum<typeof HttpMethod>>;
86
94
  /**
@@ -103,6 +111,19 @@ export interface BlockItemsSource {
103
111
  */
104
112
  fetchUrl?: string;
105
113
  fetchUrlMethod?: EnumOption<HttpMethod>;
114
+ /**
115
+ * Id of the `PeriodSelector` the items follow: `fetchUrl` is requested with
116
+ * the selected period (`from`, `to`, `preset`, `comparison`, and
117
+ * `compareFrom` / `compareTo` when comparing), and again when it changes,
118
+ * as for a `KpiCard`.
119
+ */
120
+ periodScope?: string;
121
+ /**
122
+ * Topics the backend publishes on (`PublishMessage`) when the items change:
123
+ * the block reads `fetchUrl` again on each event, keeping the items on
124
+ * screen. The page registers them, as for a chart's `realtimeTopic`.
125
+ */
126
+ realtimeTopic?: string | string[];
106
127
  /** Shown when there is nothing to list. */
107
128
  empty?: BlockEmptyText;
108
129
  /**
@@ -121,6 +142,8 @@ export interface BlockItemsSource {
121
142
  export declare const blockItemsSourceOptions: () => {
122
143
  fetchUrl: z.ZodOptional<z.ZodString>;
123
144
  fetchUrlMethod: z.ZodOptional<z.ZodNativeEnum<typeof HttpMethod>>;
145
+ periodScope: z.ZodOptional<z.ZodString>;
146
+ realtimeTopic: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
124
147
  empty: z.ZodOptional<z.ZodObject<{
125
148
  title: z.ZodString;
126
149
  description: z.ZodOptional<z.ZodString>;
@@ -138,8 +161,8 @@ export declare const blockItemsSourceOptions: () => {
138
161
  *
139
162
  * `REFRESH_PAGE` asks every block of the page that reads its data from a
140
163
  * route (StatGroup, KeyValueList, NavCardGrid, ActivityFeed, KpiCard,
141
- * TopListCard, Meter, the charts, a `Tab`'s `badgesUrl`) to read it again,
142
- * without remounting it: a form changing the record a detail page shows
164
+ * TopListCard, Meter, Banner, the charts, a `Tab`'s `badgesUrl`, TableView) to
165
+ * read it again, without remounting it: a form changing the record a detail page shows
143
166
  * declares `.watch(FormEvents.SUBMIT_SUCCESS, BlockFunctions.REFRESH_PAGE)`.
144
167
  * The page header's buttons do it on their own once they changed something,
145
168
  * and a frontend component calls `refreshPageBlocks()` for the same effect.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BlockFunctions = exports.blockItemsSourceOptions = exports.blockFetchUrlMethodOption = exports.blockFetchUrlOption = exports.blockCardOption = exports.blockEmptyOption = exports.blockActionsOption = exports.BlockLinkActionSchema = exports.BLOCK_ACTION_VARIANTS = void 0;
3
+ exports.BlockFunctions = exports.blockItemsSourceOptions = exports.blockFetchUrlMethodOption = exports.blockRealtimeTopicOption = exports.blockPeriodScopeOption = exports.blockFetchUrlOption = exports.blockCardOption = exports.blockEmptyOption = exports.blockActionsOption = exports.BlockLinkActionSchema = exports.BLOCK_ACTION_VARIANTS = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const block_registry_1 = require("./block-registry");
6
6
  const http_1 = require("./types/http");
@@ -58,14 +58,33 @@ const blockCardOption = (isOnByDefault) => (0, block_registry_1.ui)(zod_1.z
58
58
  .default(isOnByDefault)
59
59
  .describe("Card surface around the block; off inside a `Card`."), { label: "In a card", group: "appearance", widget: "switch" });
60
60
  exports.blockCardOption = blockCardOption;
61
- /** The `fetchUrl` option of a block, picked in the editor's source list. */
62
- const blockFetchUrlOption = (description) => (0, block_registry_1.ui)(zod_1.z.string().optional().describe(description), {
61
+ /**
62
+ * The `fetchUrl` option of a block, picked in the editor's source list.
63
+ * `periodOption` names the block's option holding the period scope the
64
+ * source follows, for a block that can follow one.
65
+ */
66
+ const blockFetchUrlOption = (description, periodOption) => (0, block_registry_1.ui)(zod_1.z.string().optional().describe(description), {
63
67
  label: "Data source",
64
68
  group: "data",
65
69
  widget: "dataSource",
66
70
  advanced: true,
71
+ ...(periodOption ? { periodOption } : {}),
67
72
  });
68
73
  exports.blockFetchUrlOption = blockFetchUrlOption;
74
+ /** The `periodScope` option of a block whose data source follows a period. */
75
+ const blockPeriodScopeOption = () => (0, block_registry_1.ui)(zod_1.z
76
+ .string()
77
+ .optional()
78
+ .describe("Id of the PeriodSelector driving this block."), { label: "Period scope", group: "advanced" });
79
+ exports.blockPeriodScopeOption = blockPeriodScopeOption;
80
+ /** The `realtimeTopic` option of a block that refetches on realtime events. */
81
+ const blockRealtimeTopicOption = () =>
82
+ // A topic is a name the backend publishes under, which only its code knows.
83
+ (0, block_registry_1.ui)(zod_1.z
84
+ .union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())])
85
+ .optional()
86
+ .describe("Topics whose events make the block read its data again."), { label: "Realtime topics", group: "data", advanced: true });
87
+ exports.blockRealtimeTopicOption = blockRealtimeTopicOption;
69
88
  /** The `fetchUrlMethod` option that goes with `fetchUrl`. */
70
89
  const blockFetchUrlMethodOption = () => (0, block_registry_1.ui)(zod_1.z.nativeEnum(http_1.HttpMethod).optional(), {
71
90
  label: "HTTP method",
@@ -73,10 +92,13 @@ const blockFetchUrlMethodOption = () => (0, block_registry_1.ui)(zod_1.z.nativeE
73
92
  widget: "select",
74
93
  });
75
94
  exports.blockFetchUrlMethodOption = blockFetchUrlMethodOption;
95
+ const PERIOD_SCOPE_OPTION = "periodScope";
76
96
  /** The options of `BlockItemsSource`, for a list block's schema. */
77
97
  const blockItemsSourceOptions = () => ({
78
- fetchUrl: (0, exports.blockFetchUrlOption)("Route answering `{ items }`; when set it replaces the static items."),
98
+ fetchUrl: (0, exports.blockFetchUrlOption)("Route answering `{ items }`; when set it replaces the static items.", PERIOD_SCOPE_OPTION),
79
99
  fetchUrlMethod: (0, exports.blockFetchUrlMethodOption)(),
100
+ periodScope: (0, exports.blockPeriodScopeOption)(),
101
+ realtimeTopic: (0, exports.blockRealtimeTopicOption)(),
80
102
  empty: (0, exports.blockEmptyOption)(),
81
103
  skeletonCount: (0, block_registry_1.ui)(zod_1.z
82
104
  .number()
@@ -97,8 +119,8 @@ exports.blockItemsSourceOptions = blockItemsSourceOptions;
97
119
  *
98
120
  * `REFRESH_PAGE` asks every block of the page that reads its data from a
99
121
  * route (StatGroup, KeyValueList, NavCardGrid, ActivityFeed, KpiCard,
100
- * TopListCard, Meter, the charts, a `Tab`'s `badgesUrl`) to read it again,
101
- * without remounting it: a form changing the record a detail page shows
122
+ * TopListCard, Meter, Banner, the charts, a `Tab`'s `badgesUrl`, TableView) to
123
+ * read it again, without remounting it: a form changing the record a detail page shows
102
124
  * declares `.watch(FormEvents.SUBMIT_SUCCESS, BlockFunctions.REFRESH_PAGE)`.
103
125
  * The page header's buttons do it on their own once they changed something,
104
126
  * and a frontend component calls `refreshPageBlocks()` for the same effect.
@@ -1 +1 @@
1
- {"version":3,"file":"display.js","sourceRoot":"","sources":["../../src/base/display.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"display.js","sourceRoot":"","sources":["../../src/base/display.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { z } from "zod";
3
3
  import type { BaseComponentProps } from "./types";
4
4
  import { type BlockLinkAction } from "./display";
5
5
  import { type Tone } from "./types/tone";
6
+ import { type CodeBlockLanguage } from "./code-block";
6
7
  /** Why a block is empty: see `EmptyStateVariant`. */
7
8
  export declare const EMPTY_STATE_VARIANTS: readonly ["no-data", "no-result", "no-access", "error"];
8
9
  /** Why it is empty: sets the default icon, the well tone and the live role. */
@@ -10,6 +11,15 @@ export type EmptyStateVariant = (typeof EMPTY_STATE_VARIANTS)[number];
10
11
  /** The sizes of an empty state. */
11
12
  export declare const EMPTY_STATE_SIZES: readonly ["sm", "md", "lg"];
12
13
  export type EmptyStateSize = (typeof EMPTY_STATE_SIZES)[number];
14
+ /** A snippet under the text of an empty state: the first call to make. */
15
+ export interface EmptyStateCode {
16
+ /** The code, verbatim. */
17
+ content: string;
18
+ /** Highlighting language, as in `CodeBlock`. Defaults to `text`. */
19
+ language?: CodeBlockLanguage;
20
+ /** A button copies the code. Defaults to `true`. */
21
+ copy?: boolean;
22
+ }
13
23
  /** The options `EmptyState` takes. */
14
24
  export interface EmptyStateProps extends BaseComponentProps {
15
25
  /** `$`-prefixed for an i18n key, like every text of the block. */
@@ -24,6 +34,8 @@ export interface EmptyStateProps extends BaseComponentProps {
24
34
  hatched?: boolean;
25
35
  size?: EmptyStateSize;
26
36
  actions?: BlockLinkAction[];
37
+ /** A snippet between the text and the actions ("send your first email"). */
38
+ code?: EmptyStateCode;
27
39
  /** Card surface around it; turn it off inside a `Card` block. */
28
40
  card?: boolean;
29
41
  }
@@ -65,6 +77,19 @@ export declare const EmptyStateSchema: z.ZodObject<{
65
77
  variant?: "link" | "solid" | "outline" | "soft" | "ghost" | "subtle" | undefined;
66
78
  color?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
67
79
  }>, "many">>;
80
+ code: z.ZodOptional<z.ZodObject<{
81
+ content: z.ZodString;
82
+ language: z.ZodOptional<z.ZodEnum<["json", "javascript", "typescript", "html", "sql", "shell", "text"]>>;
83
+ copy: z.ZodOptional<z.ZodBoolean>;
84
+ }, "strip", z.ZodTypeAny, {
85
+ content: string;
86
+ language?: "text" | "json" | "sql" | "html" | "javascript" | "shell" | "typescript" | undefined;
87
+ copy?: boolean | undefined;
88
+ }, {
89
+ content: string;
90
+ language?: "text" | "json" | "sql" | "html" | "javascript" | "shell" | "typescript" | undefined;
91
+ copy?: boolean | undefined;
92
+ }>>;
68
93
  variant: z.ZodDefault<z.ZodEnum<["no-data", "no-result", "no-access", "error"]>>;
69
94
  icon: z.ZodOptional<z.ZodString>;
70
95
  tone: z.ZodOptional<z.ZodEnum<["primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral", ...("primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral")[]]>>;
@@ -76,6 +101,11 @@ export declare const EmptyStateSchema: z.ZodObject<{
76
101
  title: string;
77
102
  variant: "error" | "no-data" | "no-result" | "no-access";
78
103
  card: boolean;
104
+ code?: {
105
+ content: string;
106
+ language?: "text" | "json" | "sql" | "html" | "javascript" | "shell" | "typescript" | undefined;
107
+ copy?: boolean | undefined;
108
+ } | undefined;
79
109
  description?: string | undefined;
80
110
  icon?: string | undefined;
81
111
  actions?: {
@@ -89,6 +119,11 @@ export declare const EmptyStateSchema: z.ZodObject<{
89
119
  hatched?: boolean | undefined;
90
120
  }, {
91
121
  title: string;
122
+ code?: {
123
+ content: string;
124
+ language?: "text" | "json" | "sql" | "html" | "javascript" | "shell" | "typescript" | undefined;
125
+ copy?: boolean | undefined;
126
+ } | undefined;
92
127
  description?: string | undefined;
93
128
  size?: "sm" | "md" | "lg" | undefined;
94
129
  icon?: string | 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 code_block_1 = require("./code-block");
11
12
  /** Why a block is empty: see `EmptyStateVariant`. */
12
13
  exports.EMPTY_STATE_VARIANTS = [
13
14
  "no-data",
@@ -46,6 +47,14 @@ function EmptyState(options) {
46
47
  icon: options.icon || EMPTY_STATE_ICON,
47
48
  });
48
49
  }
50
+ const EmptyStateCodeSchema = zod_1.z.object({
51
+ content: (0, block_registry_1.ui)(zod_1.z.string(), { label: "Code", widget: "textarea" }),
52
+ language: (0, block_registry_1.ui)(zod_1.z.enum(code_block_1.CODE_BLOCK_LANGUAGES).optional(), {
53
+ label: "Language",
54
+ widget: "select",
55
+ }),
56
+ copy: (0, block_registry_1.ui)(zod_1.z.boolean().optional(), { label: "Copy button", widget: "switch" }),
57
+ });
49
58
  /** The options `EmptyState` accepts. */
50
59
  exports.EmptyStateSchema = zod_1.z.object({
51
60
  title: (0, block_registry_1.ui)(zod_1.z.string().describe("Title of the empty state."), {
@@ -59,6 +68,7 @@ exports.EmptyStateSchema = zod_1.z.object({
59
68
  widget: "textarea",
60
69
  }),
61
70
  actions: (0, display_1.blockActionsOption)("Buttons under the text; the first one leads."),
71
+ code: (0, block_registry_1.ui)(EmptyStateCodeSchema.optional().describe("A snippet between the text and the actions."), { label: "Code snippet", group: "content" }),
62
72
  variant: (0, block_registry_1.ui)(zod_1.z
63
73
  .enum(exports.EMPTY_STATE_VARIANTS)
64
74
  .default(EMPTY_STATE_DEFAULTS.variant)
@@ -1 +1 @@
1
- {"version":3,"file":"empty-state.js","sourceRoot":"","sources":["../../src/base/empty-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"empty-state.js","sourceRoot":"","sources":["../../src/base/empty-state.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ export * from "./card";
9
9
  export * from "./chart";
10
10
  export * from "./chart-card";
11
11
  export * from "./chart-schemas";
12
+ export * from "./code-block";
12
13
  export * from "./confirm-dialog";
13
14
  export * from "./display";
14
15
  export * from "./empty-state";
@@ -30,6 +30,7 @@ __exportStar(require("./card"), exports);
30
30
  __exportStar(require("./chart"), exports);
31
31
  __exportStar(require("./chart-card"), exports);
32
32
  __exportStar(require("./chart-schemas"), exports);
33
+ __exportStar(require("./code-block"), exports);
33
34
  __exportStar(require("./confirm-dialog"), exports);
34
35
  __exportStar(require("./display"), exports);
35
36
  __exportStar(require("./empty-state"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8EAA8E;AAC9E,6EAA6E;AAC7E,2EAA2E;AAC3E,uEAAuE;AACvE,mEAAmE;AACnE,sCAAoC;AACpC,oCAAkC;AAElC,kDAAgC;AAChC,gDAA8B;AAC9B,iDAA+B;AAC/B,mDAAiC;AACjC,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB;AACxB,+CAA6B;AAC7B,kDAAgC;AAChC,mDAAiC;AACjC,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,yCAAuB;AACvB,yCAAuB;AACvB,mDAAiC;AACjC,6CAA2B;AAC3B,4CAA0B;AAC1B,0CAAwB;AACxB,kDAAgC;AAChC,oDAAkC;AAClC,gDAA8B;AAC9B,yDAAuC;AACvC,+CAA6B;AAC7B,4CAA0B;AAC1B,0CAAwB;AACxB,+CAA6B;AAC7B,wCAAsB;AACtB,+CAA6B;AAC7B,0DAAwC;AACxC,kDAAgC;AAChC,0CAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8EAA8E;AAC9E,6EAA6E;AAC7E,2EAA2E;AAC3E,uEAAuE;AACvE,mEAAmE;AACnE,sCAAoC;AACpC,oCAAkC;AAElC,kDAAgC;AAChC,gDAA8B;AAC9B,iDAA+B;AAC/B,mDAAiC;AACjC,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB;AACxB,+CAA6B;AAC7B,kDAAgC;AAChC,+CAA6B;AAC7B,mDAAiC;AACjC,4CAA0B;AAC1B,gDAA8B;AAC9B,gDAA8B;AAC9B,yCAAuB;AACvB,yCAAuB;AACvB,mDAAiC;AACjC,6CAA2B;AAC3B,4CAA0B;AAC1B,0CAAwB;AACxB,kDAAgC;AAChC,oDAAkC;AAClC,gDAA8B;AAC9B,yDAAuC;AACvC,+CAA6B;AAC7B,4CAA0B;AAC1B,0CAAwB;AACxB,+CAA6B;AAC7B,wCAAsB;AACtB,+CAA6B;AAC7B,0DAAwC;AACxC,kDAAgC;AAChC,0CAAwB"}
@@ -1,11 +1,18 @@
1
1
  import { z } from "zod";
2
- import { type BlockText, type ComposedText } from "../types/composed-text";
2
+ import { type BlockText, type ComposedText, type ComposedTextParam } from "../types/composed-text";
3
3
  /**
4
4
  * The zod schema of a {@link ComposedText}.
5
5
  *
6
6
  * @internal
7
7
  */
8
8
  export declare const ComposedTextSchema: z.ZodType<ComposedText>;
9
+ /**
10
+ * The schema of one value a composed text names, for an option that takes
11
+ * such values on their own.
12
+ *
13
+ * @internal
14
+ */
15
+ export declare const composedTextParamSchema: () => z.ZodType<ComposedTextParam>;
9
16
  /**
10
17
  * The schema of a block text option: a plain string or a composed text.
11
18
  *
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.blockTextSchema = exports.ComposedTextSchema = void 0;
3
+ exports.blockTextSchema = exports.composedTextParamSchema = exports.ComposedTextSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const composed_text_1 = require("../types/composed-text");
6
6
  const DateValueSchema = zod_1.z.union([zod_1.z.string(), zod_1.z.number()]);
@@ -41,6 +41,14 @@ exports.ComposedTextSchema = zod_1.z.object({
41
41
  params: zod_1.z.record(ComposedTextParamSchema).optional(),
42
42
  plural: zod_1.z.string().optional(),
43
43
  });
44
+ /**
45
+ * The schema of one value a composed text names, for an option that takes
46
+ * such values on their own.
47
+ *
48
+ * @internal
49
+ */
50
+ const composedTextParamSchema = () => ComposedTextParamSchema;
51
+ exports.composedTextParamSchema = composedTextParamSchema;
44
52
  /**
45
53
  * The schema of a block text option: a plain string or a composed text.
46
54
  *
@@ -1 +1 @@
1
- {"version":3,"file":"composed-text.js","sourceRoot":"","sources":["../../../src/base/internal/composed-text.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,0DAMgC;AAEhC,MAAM,eAAe,GAAG,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAE1D,MAAM,gBAAgB,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACpD,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;KACrB,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACvB,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,0CAA0B,CAAC,CAAC,QAAQ,EAAE;KACtD,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAC3B,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,0CAA0B,CAAC,CAAC,QAAQ,EAAE;KACtD,CAAC;IACF,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IACjE,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,4CAA4B,CAAC,CAAC,QAAQ,EAAE;KACxD,CAAC;IACF,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC;CAC1D,CAAC,CAAC;AAEH,0EAA0E;AAC1E,0BAA0B;AAC1B,MAAM,uBAAuB,GAAiC,OAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACxE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,gBAAgB,EAAE,0BAAkB,CAAC,CAAC,CACxE,CAAC;AAEF;;;;GAIG;AACU,QAAA,kBAAkB,GAA4B,OAAC,CAAC,MAAM,CAAC;IAClE,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtB,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;IACpD,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAEH;;;;GAIG;AACI,MAAM,eAAe,GAAG,GAAyB,EAAE,CACxD,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,0BAAkB,CAAC,CAAC,CAAC;AAD/B,QAAA,eAAe,mBACgB"}
1
+ {"version":3,"file":"composed-text.js","sourceRoot":"","sources":["../../../src/base/internal/composed-text.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,0DAMgC;AAEhC,MAAM,eAAe,GAAG,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAE1D,MAAM,gBAAgB,GAAG,OAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACpD,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACxB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;KACrB,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACvB,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,0CAA0B,CAAC,CAAC,QAAQ,EAAE;KACtD,CAAC;IACF,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC;QAC3B,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,0CAA0B,CAAC,CAAC,QAAQ,EAAE;KACtD,CAAC;IACF,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IACjE,OAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,OAAC,CAAC,IAAI,CAAC,4CAA4B,CAAC,CAAC,QAAQ,EAAE;KACxD,CAAC;IACF,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,CAAC;CAC1D,CAAC,CAAC;AAEH,0EAA0E;AAC1E,0BAA0B;AAC1B,MAAM,uBAAuB,GAAiC,OAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CACxE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,EAAE,gBAAgB,EAAE,0BAAkB,CAAC,CAAC,CACxE,CAAC;AAEF;;;;GAIG;AACU,QAAA,kBAAkB,GAA4B,OAAC,CAAC,MAAM,CAAC;IAClE,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtB,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;IACpD,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAEH;;;;;GAKG;AACI,MAAM,uBAAuB,GAAG,GAAiC,EAAE,CACxE,uBAAuB,CAAC;AADb,QAAA,uBAAuB,2BACV;AAE1B;;;;GAIG;AACI,MAAM,eAAe,GAAG,GAAyB,EAAE,CACxD,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,0BAAkB,CAAC,CAAC,CAAC;AAD/B,QAAA,eAAe,mBACgB"}
@@ -0,0 +1,15 @@
1
+ import type { ComponentBuilder } from "../../component";
2
+ /**
3
+ * The topics a block's `realtimeTopic` option names, as a list.
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function normalizeRealtimeTopics(topic: string | string[] | undefined): string[];
8
+ /**
9
+ * Bind the topics a block refetches on to the page it is placed on: they are
10
+ * the allowlist a session's subscriptions are checked against. Registered from
11
+ * the builder's `onCreated`, so the module whose page it is owns them.
12
+ *
13
+ * @internal
14
+ */
15
+ export declare function attachRealtimeTopicsHook<TProps>(builder: ComponentBuilder<TProps>, topic: string | string[] | undefined): ComponentBuilder<TProps>;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeRealtimeTopics = normalizeRealtimeTopics;
4
+ exports.attachRealtimeTopicsHook = attachRealtimeTopicsHook;
5
+ const realtime_1 = require("../../realtime");
6
+ /**
7
+ * The topics a block's `realtimeTopic` option names, as a list.
8
+ *
9
+ * @internal
10
+ */
11
+ function normalizeRealtimeTopics(topic) {
12
+ if (!topic)
13
+ return [];
14
+ return Array.isArray(topic) ? topic : [topic];
15
+ }
16
+ /**
17
+ * Bind the topics a block refetches on to the page it is placed on: they are
18
+ * the allowlist a session's subscriptions are checked against. Registered from
19
+ * the builder's `onCreated`, so the module whose page it is owns them.
20
+ *
21
+ * @internal
22
+ */
23
+ function attachRealtimeTopicsHook(builder, topic) {
24
+ const topics = normalizeRealtimeTopics(topic);
25
+ if (topics.length === 0)
26
+ return builder;
27
+ return builder.onCreated((parentPage) => {
28
+ const parentInfo = parentPage.pageInfo;
29
+ if (!parentInfo)
30
+ return;
31
+ for (const entry of topics) {
32
+ (0, realtime_1.RegisterPageTopic)(parentInfo.fullId, entry);
33
+ }
34
+ });
35
+ }
36
+ //# sourceMappingURL=realtime-topics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realtime-topics.js","sourceRoot":"","sources":["../../../src/base/internal/realtime-topics.ts"],"names":[],"mappings":";;AASA,0DAKC;AASD,4DAaC;AAlCD,6CAAmD;AAEnD;;;;GAIG;AACH,SAAgB,uBAAuB,CACrC,KAAoC;IAEpC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,wBAAwB,CACtC,OAAiC,EACjC,KAAoC;IAEpC,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACxC,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,UAAwB,EAAE,EAAE;QACpD,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,UAAU;YAAE,OAAO;QACxB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAA,4BAAiB,EAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -33,6 +33,13 @@ export interface KeyValueListItem {
33
33
  detail?: BlockText;
34
34
  /** ISO 4217 code of a `money` value; overrides the list's `currency`. */
35
35
  currency?: string;
36
+ /** Draws a button copying the value as it is shown. */
37
+ copy?: boolean;
38
+ /**
39
+ * Text the copy button copies instead of the shown value (a full URL behind
40
+ * a short label). Implies `copy`.
41
+ */
42
+ copyValue?: string;
36
43
  }
37
44
  /** The options `KeyValueList` takes. */
38
45
  export interface KeyValueListProps extends BaseComponentProps, BlockItemsSource {
@@ -73,6 +80,8 @@ export declare function KeyValueList(options?: KeyValueListProps): ComponentBuil
73
80
  export declare const KeyValueListSchema: z.ZodObject<{
74
81
  fetchUrl: z.ZodOptional<z.ZodString>;
75
82
  fetchUrlMethod: z.ZodOptional<z.ZodNativeEnum<typeof import("./types").HttpMethod>>;
83
+ periodScope: z.ZodOptional<z.ZodString>;
84
+ realtimeTopic: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
76
85
  empty: z.ZodOptional<z.ZodObject<{
77
86
  title: z.ZodString;
78
87
  description: z.ZodOptional<z.ZodString>;
@@ -94,24 +103,30 @@ export declare const KeyValueListSchema: z.ZodObject<{
94
103
  tone: z.ZodOptional<z.ZodEnum<["primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral", ...("primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral")[]]>>;
95
104
  detail: z.ZodOptional<z.ZodType<BlockText, z.ZodTypeDef, BlockText>>;
96
105
  currency: z.ZodOptional<z.ZodString>;
106
+ copy: z.ZodOptional<z.ZodBoolean>;
107
+ copyValue: z.ZodOptional<z.ZodString>;
97
108
  }, "strip", z.ZodTypeAny, {
98
109
  label: BlockText;
99
110
  type?: "link" | "date" | "status" | "money" | "text" | "mono" | undefined;
100
111
  value?: number | BlockText | null | undefined;
101
112
  id?: string | undefined;
102
113
  to?: string | undefined;
114
+ copy?: boolean | undefined;
103
115
  detail?: BlockText | undefined;
104
116
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
105
117
  currency?: string | undefined;
118
+ copyValue?: string | undefined;
106
119
  }, {
107
120
  label: BlockText;
108
121
  type?: "link" | "date" | "status" | "money" | "text" | "mono" | undefined;
109
122
  value?: number | BlockText | null | undefined;
110
123
  id?: string | undefined;
111
124
  to?: string | undefined;
125
+ copy?: boolean | undefined;
112
126
  detail?: BlockText | undefined;
113
127
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
114
128
  currency?: string | undefined;
129
+ copyValue?: string | undefined;
115
130
  }>, "many">>;
116
131
  card: z.ZodDefault<z.ZodBoolean>;
117
132
  dense: z.ZodOptional<z.ZodBoolean>;
@@ -126,13 +141,17 @@ export declare const KeyValueListSchema: z.ZodObject<{
126
141
  value?: number | BlockText | null | undefined;
127
142
  id?: string | undefined;
128
143
  to?: string | undefined;
144
+ copy?: boolean | undefined;
129
145
  detail?: BlockText | undefined;
130
146
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
131
147
  currency?: string | undefined;
148
+ copyValue?: string | undefined;
132
149
  }[] | undefined;
133
150
  title?: string | undefined;
134
151
  fetchUrl?: string | undefined;
135
152
  fetchUrlMethod?: import("./types").HttpMethod | undefined;
153
+ periodScope?: string | undefined;
154
+ realtimeTopic?: string | string[] | undefined;
136
155
  currency?: string | undefined;
137
156
  empty?: {
138
157
  title: string;
@@ -147,14 +166,18 @@ export declare const KeyValueListSchema: z.ZodObject<{
147
166
  value?: number | BlockText | null | undefined;
148
167
  id?: string | undefined;
149
168
  to?: string | undefined;
169
+ copy?: boolean | undefined;
150
170
  detail?: BlockText | undefined;
151
171
  tone?: "primary" | "secondary" | "success" | "info" | "warning" | "error" | "neutral" | undefined;
152
172
  currency?: string | undefined;
173
+ copyValue?: string | undefined;
153
174
  }[] | undefined;
154
175
  title?: string | undefined;
155
176
  fetchUrl?: string | undefined;
156
177
  fetchUrlMethod?: import("./types").HttpMethod | undefined;
157
178
  card?: boolean | undefined;
179
+ periodScope?: string | undefined;
180
+ realtimeTopic?: string | string[] | undefined;
158
181
  columns?: number | undefined;
159
182
  currency?: string | undefined;
160
183
  empty?: {
@@ -9,6 +9,7 @@ const display_1 = require("./display");
9
9
  const display_2 = require("./internal/display");
10
10
  const tone_1 = require("./types/tone");
11
11
  const composed_text_1 = require("./internal/composed-text");
12
+ const realtime_topics_1 = require("./internal/realtime-topics");
12
13
  /**
13
14
  * How a value is drawn: `text` plain, `status` a tinted pill, `money` a
14
15
  * currency amount, `date` a localized date, `link` an accent link, `mono` an
@@ -46,12 +47,12 @@ const KEY_VALUE_LIST_DEFAULTS = { card: true, columns: 1 };
46
47
  * ```
47
48
  */
48
49
  function KeyValueList(options) {
49
- return new component_1.ComponentBuilder(KEY_VALUE_LIST_COMPONENT_NAME)
50
+ return (0, realtime_topics_1.attachRealtimeTopicsHook)(new component_1.ComponentBuilder(KEY_VALUE_LIST_COMPONENT_NAME)
50
51
  .options({ ...KEY_VALUE_LIST_DEFAULTS, ...options })
51
52
  .meta({
52
53
  name: options?.title || "Key / value list",
53
54
  icon: KEY_VALUE_LIST_ICON,
54
- });
55
+ }), options?.realtimeTopic);
55
56
  }
56
57
  const KeyValueListItemSchema = zod_1.z.object({
57
58
  id: (0, block_registry_1.ui)(zod_1.z.string().optional(), { label: "Key", advanced: true }),
@@ -71,6 +72,11 @@ const KeyValueListItemSchema = zod_1.z.object({
71
72
  }),
72
73
  detail: (0, block_registry_1.ui)((0, composed_text_1.blockTextSchema)().optional(), { label: "Detail", widget: "text" }),
73
74
  currency: (0, block_registry_1.ui)(zod_1.z.string().optional(), { label: "Currency", advanced: true }),
75
+ copy: (0, block_registry_1.ui)(zod_1.z.boolean().optional(), { label: "Copy button", widget: "switch" }),
76
+ copyValue: (0, block_registry_1.ui)(zod_1.z.string().optional(), {
77
+ label: "Copied text",
78
+ advanced: true,
79
+ }),
74
80
  });
75
81
  /** The options `KeyValueList` accepts. */
76
82
  exports.KeyValueListSchema = zod_1.z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"key-value-list.js","sourceRoot":"","sources":["../../src/base/key-value-list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"key-value-list.js","sourceRoot":"","sources":["../../src/base/key-value-list.ts"],"names":[],"mappings":"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"}