@heswell/vuu-data-engine-local 4.2.0 → 4.2.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/README.md CHANGED
@@ -272,8 +272,13 @@ npm run pub -- --package=@heswell/vuu-data-engine-local --tag alpha
272
272
  ```sh
273
273
  npm run bench:data-engine-local # 100k rows
274
274
  BENCH_ROWS=10000 npm run bench:data-engine-local # smaller run
275
+ npm run bench -w @heswell/vuu-data-engine-local -- --outputJson=/tmp/local-bench.json
275
276
  ```
276
277
 
278
+ The repository's `Performance` workflow records this comparison at 100k rows
279
+ and publishes historical charts alongside the WebSocket and outbound suites.
280
+ See [CI and historical results](../../docs/design/data-services.md#ci-and-historical-results).
281
+
277
282
  `requestAnimationFrame` is made synchronous during the bench, so each timing includes delivering
278
283
  rows to the client. The bench runs under vitest (Node) using `vitest.config.ts` in this
279
284
  package; the tests run under `bun test`. `test/LegacyParity.test.ts` checks that both implementations give the same
package/index.js CHANGED
@@ -6735,8 +6735,8 @@ class BasketModule extends VuuModule {
6735
6735
  }
6736
6736
  createNewBasket = async (rpcRequest)=>{
6737
6737
  if ("VIEWPORT_CONTEXT" === rpcRequest.context.type) {
6738
- const { sourceBasketId, tradeBasketName } = rpcRequest.params;
6739
- const key = this.createTradingBasket(sourceBasketId, tradeBasketName);
6738
+ const { sourceBasketId, basketTradeName } = rpcRequest.params;
6739
+ const key = this.createTradingBasket(sourceBasketId, basketTradeName);
6740
6740
  return {
6741
6741
  type: "SUCCESS_RESULT",
6742
6742
  data: key
@@ -7868,6 +7868,7 @@ const Title = "title:String";
7868
7868
  const Message = "message:String";
7869
7869
  const Level = "level:String";
7870
7870
  const Audience = "audience:String";
7871
+ const Topic = "topic:String";
7871
7872
  const genericColumns = [
7872
7873
  Id,
7873
7874
  Type,
@@ -7875,8 +7876,10 @@ const genericColumns = [
7875
7876
  Title,
7876
7877
  Message,
7877
7878
  Level,
7878
- Audience
7879
+ Audience,
7880
+ Topic
7879
7881
  ];
7882
+ const genericColumnNames = new Set(genericColumns.map((column)=>column.split(":")[0]));
7880
7883
  const NotificationsSchema = {
7881
7884
  Id: Id,
7882
7885
  Type: Type,
@@ -7885,10 +7888,11 @@ const NotificationsSchema = {
7885
7888
  Message: Message,
7886
7889
  Level: Level,
7887
7890
  Audience: Audience,
7891
+ Topic: Topic,
7888
7892
  allFrom: (...additionalColumns)=>[
7889
- ...genericColumns,
7890
- ...additionalColumns
7891
- ].map(NotificationsSchema_toColumn)
7893
+ ...genericColumns.map(NotificationsSchema_toColumn),
7894
+ ...additionalColumns.map(NotificationsSchema_toColumn).filter(({ name })=>!genericColumnNames.has(name))
7895
+ ]
7892
7896
  };
7893
7897
  const NAME = "NOTIFICATIONS";
7894
7898
  const TABLE_NAME = "notifications";
@@ -8236,6 +8240,18 @@ const MODULE_ADMIN_TABLE_SCHEMAS = {
8236
8240
  name: "navIconUrl",
8237
8241
  serverDataType: "string"
8238
8242
  },
8243
+ {
8244
+ name: "navOrder",
8245
+ serverDataType: "double"
8246
+ },
8247
+ {
8248
+ name: "navBadge",
8249
+ serverDataType: "string"
8250
+ },
8251
+ {
8252
+ name: "notificationTopics",
8253
+ serverDataType: "string"
8254
+ },
8239
8255
  ...VUU_DEFAULT_COLUMNS
8240
8256
  ],
8241
8257
  key: "id",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@heswell/vuu-data-engine-local",
3
- "version": "4.2.0",
3
+ "version": "4.2.1",
4
4
  "description": "In-browser Vuu server (VuuModule, tables, EngineDataSource) built on @heswell/vuu-table and @heswell/vuu-viewport",
5
5
  "main": "./index.js",
6
6
  "module": "./index.js",
@@ -13,8 +13,10 @@ export declare const NotificationsSchema: {
13
13
  Message: string;
14
14
  Level: string;
15
15
  Audience: string;
16
+ Topic: string;
16
17
  /**
17
- * The generic notification columns, plus any additional columns.
18
+ * The generic notification columns, plus any additional columns. An
19
+ * additional column that repeats a generic column name is ignored.
18
20
  */
19
21
  allFrom: (...additionalColumns: ColumnDefinition[]) => SchemaColumn[];
20
22
  };