@antelopejs/interface-dms 0.10.0 → 0.10.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.
package/CHANGELOG.md CHANGED
@@ -1,9 +1,54 @@
1
1
  # Changelog
2
2
 
3
+ ## v0.10.1
4
+
5
+ [compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.10.0...v0.10.1)
6
+
7
+ ### 🚀 Enhancements
8
+
9
+ - **dms-layout:** Restore a static GitHub star link in the footer ([#546](https://github.com/AntelopeJS/dms/pull/546))
10
+ - **dms:** Support a read-only public demo ([#581](https://github.com/AntelopeJS/dms/pull/581))
11
+
12
+ ### 🩹 Fixes
13
+
14
+ - **store:** Reuse the runtime id of an uninstalled module on reinstall ([#547](https://github.com/AntelopeJS/dms/pull/547))
15
+ - **chart:** Draw the one point per group a series data source answers ([#586](https://github.com/AntelopeJS/dms/pull/586))
16
+
17
+ ### 💅 Refactors
18
+
19
+ - **frontend:** Remove type assertions in tests ([#525](https://github.com/AntelopeJS/dms/pull/525))
20
+ - **frontend:** Remove type assertions in core, auth and layout ([#526](https://github.com/AntelopeJS/dms/pull/526))
21
+ - **frontend:** Remove type assertions in ui components and composables ([#527](https://github.com/AntelopeJS/dms/pull/527))
22
+ - **frontend:** Remove type assertions in ui data types ([#528](https://github.com/AntelopeJS/dms/pull/528))
23
+ - **backend:** Remove SAFETY assertions in test fixtures ([#542](https://github.com/AntelopeJS/dms/pull/542))
24
+ - **backend:** Remove SAFETY assertions in serialized-option and fixture tests ([#543](https://github.com/AntelopeJS/dms/pull/543))
25
+ - **agents:** Fix the lint findings in dms's own agent files ([#548](https://github.com/AntelopeJS/dms/pull/548))
26
+
27
+ ### 📖 Documentation
28
+
29
+ - **readme:** Rewrite the README as a landing page ([#554](https://github.com/AntelopeJS/dms/pull/554))
30
+
31
+ ### 🏡 Chore
32
+
33
+ - **release:** @antelopejs/dms v0.12.0 ([fdfcc0ad](https://github.com/AntelopeJS/dms/commit/fdfcc0ad))
34
+ - **package:** Update the npm description and keywords ([#580](https://github.com/AntelopeJS/dms/pull/580))
35
+ - **package:** Restore realtime in the npm description ([#588](https://github.com/AntelopeJS/dms/pull/588))
36
+
37
+ ### ❤️ Contributors
38
+
39
+ - Antony Rizzitelli ([@Upd4ting](http://github.com/Upd4ting))
40
+
3
41
  ## v0.10.0
4
42
 
5
43
  [compare changes](https://github.com/AntelopeJS/dms/compare/interface-v0.9.1...v0.10.0)
6
44
 
45
+ ### Upgrade notes
46
+
47
+ - 16 new modules (11 public, 5 `@internal`) hold the types that pages, components and tables share: `component-options/*` (`action-target`, `button`, `confirm-dialog`, `row-action`, `form-field`, `data-type`, `page-layout`, and their `internal/` counterparts), `tones`, `watch-actions`, `export-status` and `invite-extension-payloads` ([#539](https://github.com/AntelopeJS/dms/pull/539)). Every old subpath still exports the same names, re-exported from the new module, so no import changes.
48
+ - Do not augment `WatchFunctionParamMap` through `watch-actions`: keep augmenting it through `base/types`, as before.
49
+ - Two type-only layer exceptions remain (`component.ts` to `page.ts`, and the `User` table to the default data types). They are removed in the next breaking release ([#531](https://github.com/AntelopeJS/dms/issues/531)).
50
+ - Modules implementing interface-dms move to `>=0.10.0 <0.11.0`; `@antelopejs/dms` implements it.
51
+
7
52
  ### 🚀 Enhancements
8
53
 
9
54
  - **interface-dms:** Expose stable default data type subpaths ([#475](https://github.com/AntelopeJS/dms/pull/475))
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  <a href="https://www.npmjs.com/package/@antelopejs/interface-dms"><img alt="npm" src="https://img.shields.io/npm/v/@antelopejs/interface-dms?style=for-the-badge&labelColor=000000&color=000000"></a>
6
6
  <a href="./LICENSE"><img alt="License" src="https://img.shields.io/npm/l/@antelopejs/interface-dms?style=for-the-badge&labelColor=000000&color=000000"></a>
7
- <a href="https://discord.gg/sjK28QHrA7"><img alt="Discord" src="https://img.shields.io/badge/Discord-18181B?logo=discord&style=for-the-badge&color=000000"></a>
7
+ <a href="https://discord.gg/g4pFt6eXqu"><img alt="Discord" src="https://img.shields.io/badge/Discord-18181B?logo=discord&style=for-the-badge&color=000000"></a>
8
8
  <a href="https://dms.antelopejs.com/docs/interfaces"><img alt="Documentation" src="https://img.shields.io/badge/Docs-18181B?style=for-the-badge&color=000000"></a>
9
9
 
10
10
  The public contracts of the AntelopeJS DMS: pages and components, permissions and tenancy, authentication, notifications and HTML rendering.
@@ -30,7 +30,7 @@ export declare function declaresCounters(options: Pick<TableViewOptions, "tabs"
30
30
  export declare function servesRoute(endpoints: Record<string, DataControllerCallbackWithOptions>, path: string, method: string): boolean;
31
31
  /**
32
32
  * Warn, once per controller, when a table view declares filter tabs, counted
33
- * views or counted groups but its controller mounts no `POST count/batch`
33
+ * views or counted groups but its controller mounts no `GET count/batch`
34
34
  * route: every counter request would fail. The fix belongs in the controller
35
35
  * (mount `countBatch: TableViewRoutes.CountBatch`), so this only reports it.
36
36
  *
@@ -86,7 +86,7 @@ function declaresCounters(options) {
86
86
  !!options.grouped?.count);
87
87
  }
88
88
  const COUNT_BATCH_PATH = "count/batch";
89
- const COUNT_BATCH_METHOD = "post";
89
+ const COUNT_BATCH_METHOD = "get";
90
90
  const EDGE_SLASHES = /^\/+|\/+$/g;
91
91
  const controllersWarnedForTabCounts = new WeakSet();
92
92
  /** @internal */
@@ -96,7 +96,7 @@ function servesRoute(endpoints, path, method) {
96
96
  }
97
97
  /**
98
98
  * Warn, once per controller, when a table view declares filter tabs, counted
99
- * views or counted groups but its controller mounts no `POST count/batch`
99
+ * views or counted groups but its controller mounts no `GET count/batch`
100
100
  * route: every counter request would fail. The fix belongs in the controller
101
101
  * (mount `countBatch: TableViewRoutes.CountBatch`), so this only reports it.
102
102
  *
@@ -108,6 +108,6 @@ function warnIfTabsLackCountBatch(controller, location, hasCounters, endpoints)
108
108
  if (servesRoute(endpoints, COUNT_BATCH_PATH, COUNT_BATCH_METHOD))
109
109
  return;
110
110
  controllersWarnedForTabCounts.add(controller);
111
- logging_1.Logging.Warn(`[DMS] TableView on "${controller.name}" (${location}) declares filter tabs, counted views or counted groups but its controller mounts no POST ${location}/${COUNT_BATCH_PATH} route: their counters will fail. Mount \`countBatch: TableViewRoutes.CountBatch\` on the controller.`);
111
+ logging_1.Logging.Warn(`[DMS] TableView on "${controller.name}" (${location}) declares filter tabs, counted views or counted groups but its controller mounts no GET ${location}/${COUNT_BATCH_PATH} route: their counters will fail. Mount \`countBatch: TableViewRoutes.CountBatch\` on the controller.`);
112
112
  }
113
113
  //# sourceMappingURL=tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/tabs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/base/table-view/internal/tabs.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,9 @@ export declare namespace TableViewRoutes {
10
10
  */
11
11
  const Count: DataControllerCallback;
12
12
  /**
13
- * `POST <location>/count/batch`: one count per query, in a single request.
13
+ * `GET <location>/count/batch`: one count per repeated `query` value,
14
+ * encoded as an escaped id, `?`, and its list query string. Accepts up to
15
+ * 50 entries and 8,192 UTF-8 bytes in the encoded path plus search.
14
16
  * Filter tabs with counters require the controller to mount
15
17
  * `countBatch: TableViewRoutes.CountBatch`; a table view declaring `tabs`
16
18
  * without it gets failing counters and a registration warning.
@@ -17,30 +17,34 @@ const realtime_1 = require("./internal/realtime");
17
17
  const meta_1 = require("./meta");
18
18
  const row_rules_1 = require("./internal/row-rules");
19
19
  const MAX_BATCH_COUNT_QUERIES = 50;
20
- // oxlint-disable-next-line anti-slop/no-unknown-parameters -- This parser is the JSONBody boundary of the published count-batch route; it must accept arbitrary decoded request values before checking them.
21
- function parseBatchCountBody(body) {
22
- // oxlint-disable-next-line anti-slop/no-runtime-typeof -- JSONBody supplies untyped input; this existing parser rejects non-object request bodies before inspecting queries.
23
- (0, interface_api_util_1.assert)(body && typeof body === "object", 400, "Invalid count batch body.");
24
- const { queries } = body;
25
- (0, interface_api_util_1.assert)(Array.isArray(queries), 400, "Invalid count batch queries.");
26
- (0, interface_api_util_1.assert)(queries.length <= MAX_BATCH_COUNT_QUERIES, 400, "Too many count batch queries.");
27
- for (const query of queries) {
28
- (0, interface_api_util_1.assert)(
29
- // oxlint-disable-next-line anti-slop/no-runtime-typeof -- The count-batch parser checks each request entry's id representation; a stronger schema would reject inputs currently accepted by this published route.
30
- query && typeof query.id === "string" && query.query, 400, "Invalid count batch query.");
20
+ const MAX_BATCH_COUNT_TARGET_BYTES = 8_192;
21
+ const HTTP_BAD_REQUEST = 400;
22
+ const HTTP_URI_TOO_LONG = 414;
23
+ const COUNT_QUERY_SEPARATOR = "?";
24
+ function decodeCountId(id) {
25
+ try {
26
+ return decodeURIComponent(id);
31
27
  }
32
- return { queries };
28
+ catch {
29
+ (0, interface_api_util_1.assert)(false, HTTP_BAD_REQUEST, "Invalid count batch query.");
30
+ }
31
+ }
32
+ function parseBatchCountQueries(ctx, values) {
33
+ (0, interface_api_util_1.assert)(Buffer.byteLength(ctx.url.pathname + ctx.url.search, "utf8") <=
34
+ MAX_BATCH_COUNT_TARGET_BYTES, HTTP_URI_TOO_LONG, "Count batch URI too long.");
35
+ (0, interface_api_util_1.assert)(values.length <= MAX_BATCH_COUNT_QUERIES, HTTP_BAD_REQUEST, "Too many count batch queries.");
36
+ return values.map((value) => {
37
+ const separator = value.indexOf(COUNT_QUERY_SEPARATOR);
38
+ (0, interface_api_util_1.assert)(separator >= 0, HTTP_BAD_REQUEST, "Invalid count batch query.");
39
+ return {
40
+ id: decodeCountId(value.slice(0, separator)),
41
+ query: new URLSearchParams(value.slice(separator + 1)),
42
+ };
43
+ });
33
44
  }
34
45
  function buildBatchCountContext(ctx, query) {
35
46
  const url = new URL(ctx.url);
36
- url.search = "";
37
- for (const [key, value] of Object.entries(query)) {
38
- if (value === undefined)
39
- continue;
40
- for (const item of Array.isArray(value) ? value : [value]) {
41
- url.searchParams.append(key, String(item));
42
- }
43
- }
47
+ url.search = query.toString();
44
48
  return { ...ctx, url };
45
49
  }
46
50
  const createBulkOperationRoute = (operationFunc) => ({
@@ -100,13 +104,11 @@ function createSummaryRoute(actionId) {
100
104
  }
101
105
  function createBatchCountRoute(actionId) {
102
106
  return {
103
- func: async function (ctx,
104
- // oxlint-disable-next-line anti-slop/no-unknown-parameters -- JSONBody is decoded by parseBatchCountBody below; its published route boundary must still accept arbitrary request values.
105
- body, user) {
106
- const parsed = parseBatchCountBody(body);
107
+ func: async function (ctx, values, user) {
108
+ const queries = parseBatchCountQueries(ctx, values);
107
109
  const permissions = await (0, auth_2.authorizeAction)(this, actionId, user, (0, request_tenant_1.getRequestTenantId)(ctx));
108
110
  const meta = (0, interface_data_api_1.GetDataControllerMeta)(this);
109
- const entries = await Promise.all(parsed.queries.map(async ({ id, query }) => {
111
+ const entries = await Promise.all(queries.map(async ({ id, query }) => {
110
112
  const queryContext = buildBatchCountContext(ctx, query);
111
113
  const listParams = {
112
114
  filters: components_1.Parameters.ExtractFilters(queryContext, meta),
@@ -116,8 +118,8 @@ function createBatchCountRoute(actionId) {
116
118
  }));
117
119
  return Object.fromEntries(entries);
118
120
  },
119
- args: [(0, interface_api_1.Context)(), (0, interface_api_1.JSONBody)(), (0, auth_1.AuthUser)()],
120
- method: "post",
121
+ args: [(0, interface_api_1.Context)(), (0, interface_api_1.MultiParameter)("query", "query"), (0, auth_1.AuthUser)()],
122
+ method: "get",
121
123
  };
122
124
  }
123
125
  function createEditRoute(baseRoute) {
@@ -136,7 +138,9 @@ var TableViewRoutes;
136
138
  */
137
139
  TableViewRoutes.Count = createCountRoute(auth_2.LIST_ACTION);
138
140
  /**
139
- * `POST <location>/count/batch`: one count per query, in a single request.
141
+ * `GET <location>/count/batch`: one count per repeated `query` value,
142
+ * encoded as an escaped id, `?`, and its list query string. Accepts up to
143
+ * 50 entries and 8,192 UTF-8 bytes in the encoded path plus search.
140
144
  * Filter tabs with counters require the controller to mount
141
145
  * `countBatch: TableViewRoutes.CountBatch`; a table view declaring `tabs`
142
146
  * without it gets failing counters and a registration warning.
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../src/base/table-view/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../src/base/table-view/routes.ts"],"names":[],"mappings":"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"}
@@ -104,7 +104,7 @@ export class roleDataAPI extends DataController(
104
104
  | `List` | Paginated list with search, filters and sorting. |
105
105
  | `Select` | List with the `select` pluck mode, used by relation pickers. `?ids=a&ids=b` (with `idKey` when the value is another field) answers those rows alone, as `List` does: a picker and a filter chip name the ids they hold this way. |
106
106
  | `Count` | Row count for the current query. |
107
- | `CountBatch` | One count per query, in a single `POST /count/batch` (tab, view and group counters). |
107
+ | `CountBatch` | One count per repeated `query` value in `GET /count/batch` (tab, view and group counters). Each value is `encodeURIComponent(id) + "?" + listQueryString`, with repeated filters preserved. Requests accept up to 50 entries and 8,192 UTF-8 bytes in the encoded path plus search; the client packs larger batches into bounded GET requests. |
108
108
  | `Summary` | `GET /summary?ids=…`: the footer summaries a table view declared, over every row the request's filters list. |
109
109
  | `New` | Create a row. |
110
110
  | `Edit` | Update a row. |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antelopejs/interface-dms",
3
- "version": "0.10.0",
3
+ "version": "0.10.1",
4
4
  "description": "Public AntelopeJS interfaces of the DMS: pages, components, permissions, tenancy, auth, notifications and HTML rendering.",
5
5
  "keywords": [
6
6
  "antelopejs",