harperdb 4.7.12 → 4.7.14

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 (34) hide show
  1. package/README.md +1 -1
  2. package/bin/harperdb.js +34 -34
  3. package/bin/lite.js +28 -28
  4. package/launchServiceScripts/launchNatsIngestService.js +29 -29
  5. package/launchServiceScripts/launchNatsReplyService.js +29 -29
  6. package/launchServiceScripts/launchUpdateNodes4-0-0.js +29 -29
  7. package/npm-shrinkwrap.json +292 -256
  8. package/package.json +3 -3
  9. package/resources/RequestTarget.d.ts +1 -1
  10. package/resources/Resource.d.ts +13 -13
  11. package/resources/Table.d.ts +12 -10
  12. package/resources/transactionBroadcast.d.ts +4 -3
  13. package/server/jobs/jobProcess.js +29 -29
  14. package/server/replication/knownNodes.d.ts +1 -1
  15. package/server/threads/threadServer.js +29 -29
  16. package/studio/web/HDBDogOnly.svg +78 -1
  17. package/studio/web/assets/index-BwlW0AMB.css +1 -0
  18. package/studio/web/assets/{index-YHth6Ryl.css → index-CVjGhoEG.css} +1 -1
  19. package/studio/web/assets/{index-B_cFV1Ze.js → index-DCIk8mGR.js} +1 -1
  20. package/studio/web/assets/index-DHFTW4ZU.js +36 -0
  21. package/studio/web/assets/index-KVLE5Pus.js +217 -0
  22. package/studio/web/assets/{index.lazy-CFrFVE2k.js → index.lazy-CwPUt0Bc.js} +53 -53
  23. package/studio/web/assets/{profiler-_PkvXANS.js → profiler-Cnhc6FqT.js} +1 -1
  24. package/studio/web/assets/{react-redux-Cuw5Q5nk.js → react-redux-Dy0makvb.js} +2 -2
  25. package/studio/web/assets/startRecording-IOmSWGHg.js +2 -0
  26. package/studio/web/github-icon.svg +14 -2
  27. package/studio/web/index.html +14 -16
  28. package/studio/web/running.html +137 -92
  29. package/studio/web/running.js +1 -1
  30. package/utility/scripts/restartHdb.js +29 -29
  31. package/studio/web/assets/index-B-eMLFIg.css +0 -1
  32. package/studio/web/assets/index-BedIpyD2.js +0 -37
  33. package/studio/web/assets/index-CYB7LsMb.js +0 -203
  34. package/studio/web/assets/startRecording-BAY7HJ6r.js +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "harperdb",
3
- "version": "4.7.12",
3
+ "version": "4.7.14",
4
4
  "description": "HarperDB is a distributed database, caching service, streaming broker, and application development platform focused on performance and ease of use.",
5
5
  "keywords": [
6
6
  "database",
@@ -84,7 +84,7 @@
84
84
  "json-bigint-fixes": "1.1.0",
85
85
  "json2csv": "5.0.7",
86
86
  "jsonata": "1.8.7",
87
- "jsonwebtoken": "9.0.2",
87
+ "jsonwebtoken": "9.0.3",
88
88
  "lmdb": "3.4.4",
89
89
  "lodash": "4.17.21",
90
90
  "mathjs": "11.12.0",
@@ -92,7 +92,7 @@
92
92
  "minimist": "1.2.8",
93
93
  "moment": "2.30.1",
94
94
  "mqtt-packet": "~9.0.1",
95
- "msgpackr": "1.11.4",
95
+ "msgpackr": "1.11.8",
96
96
  "nats": "2.19.0",
97
97
  "needle": "3.3.1",
98
98
  "node-forge": "^1.3.1",
@@ -1,4 +1,4 @@
1
- import { UserRoleDatabasePermissions } from '../security/user.types.js';
1
+ import type { UserRoleDatabasePermissions } from '../security/user.ts';
2
2
  import type { Conditions, Id, Select, Sort } from './ResourceInterface.ts';
3
3
  export declare class RequestTarget extends URLSearchParams {
4
4
  #private;
@@ -1,4 +1,4 @@
1
- import type { ResourceInterface, SubscriptionRequest, Id, Context, Query, SourceContext } from './ResourceInterface.ts';
1
+ import type { ResourceInterface, Id, Context, Query, SourceContext } from './ResourceInterface.ts';
2
2
  import { type Transaction } from './DatabaseTransaction.ts';
3
3
  import { IterableEventQueue } from './IterableEventQueue.ts';
4
4
  import { AsyncLocalStorage } from 'async_hooks';
@@ -27,9 +27,10 @@ export declare class Resource implements ResourceInterface {
27
27
  /**
28
28
  * The get methods are for directly getting a resource, and called for HTTP GET requests.
29
29
  */
30
- static get(identifier: Id, context?: Context): Promise<Resource>;
31
- static get(target: RequestTarget, context?: Context): Promise<AsyncIterable<object>>;
32
- static get: typeof Resource.get;
30
+ static get: {
31
+ (idOrQuery: string | Id | Query, dataOrContext?: any, context?: Context): any;
32
+ reliesOnPrototype: boolean;
33
+ };
33
34
  get?(query?: any): Promise<any>;
34
35
  /**
35
36
  * Store the provided record by the provided id. If no id is provided, it is auto-generated.
@@ -42,9 +43,10 @@ export declare class Resource implements ResourceInterface {
42
43
  (idOrQuery: string | Id | Query, dataOrContext?: any, context?: Context): any;
43
44
  reliesOnPrototype: boolean;
44
45
  };
45
- static delete(identifier: Id, context?: Context): Promise<boolean>;
46
- static delete(request: Context, context?: Context): Promise<object>;
47
- static delete: typeof Resource.delete;
46
+ static delete: {
47
+ (idOrQuery: string | Id | Query, dataOrContext?: any, context?: Context): any;
48
+ reliesOnPrototype: boolean;
49
+ };
48
50
  /**
49
51
  * Generate a new primary key for a resource; by default we use UUIDs (for now).
50
52
  */
@@ -74,12 +76,10 @@ export declare class Resource implements ResourceInterface {
74
76
  (idOrQuery: string | Id | Query, dataOrContext?: any, context?: Context): any;
75
77
  reliesOnPrototype: boolean;
76
78
  };
77
- static subscribe(request: SubscriptionRequest): Promise<AsyncIterable<{
78
- id: any;
79
- operation: string;
80
- value: object;
81
- }>>;
82
- static subscribe: typeof Resource.subscribe;
79
+ static subscribe: {
80
+ (idOrQuery: string | Id | Query, dataOrContext?: any, context?: Context): any;
81
+ reliesOnPrototype: boolean;
82
+ };
83
83
  static publish: {
84
84
  (idOrQuery: string | Id | Query, dataOrContext?: any, context?: Context): any;
85
85
  reliesOnPrototype: boolean;
@@ -5,7 +5,6 @@
5
5
  */
6
6
  import { type Database } from 'lmdb';
7
7
  import type { ResourceInterface, SubscriptionRequest, Id, Context, Sort, SubSelect, RequestTargetOrId } from './ResourceInterface.ts';
8
- import { Resource } from './Resource.ts';
9
8
  import { type Entry } from './RecordEncoder.ts';
10
9
  import { RequestTarget } from './RequestTarget.ts';
11
10
  export type Attribute = {
@@ -650,8 +649,10 @@ export declare function makeTable(options: any): {
650
649
  };
651
650
  directURLMapping: boolean;
652
651
  loadAsInstance: boolean;
653
- get(identifier: Id, context?: Context): Promise<Resource>;
654
- get(target: RequestTarget, context?: Context): Promise<AsyncIterable<object>>;
652
+ get: {
653
+ (idOrQuery: string | Id | import("./ResourceInterface.ts").Query, dataOrContext?: any, context?: Context): any;
654
+ reliesOnPrototype: boolean;
655
+ };
655
656
  put: {
656
657
  (idOrQuery: string | Id | import("./ResourceInterface.ts").Query, dataOrContext?: any, context?: Context): any;
657
658
  reliesOnPrototype: boolean;
@@ -660,8 +661,10 @@ export declare function makeTable(options: any): {
660
661
  (idOrQuery: string | Id | import("./ResourceInterface.ts").Query, dataOrContext?: any, context?: Context): any;
661
662
  reliesOnPrototype: boolean;
662
663
  };
663
- delete(identifier: Id, context?: Context): Promise<boolean>;
664
- delete(request: Context, context?: Context): Promise<object>;
664
+ delete: {
665
+ (idOrQuery: string | Id | import("./ResourceInterface.ts").Query, dataOrContext?: any, context?: Context): any;
666
+ reliesOnPrototype: boolean;
667
+ };
665
668
  create(idPrefix: Id, record: any, context: Context): Promise<Id>;
666
669
  create(record: any, context: Context): Promise<Id>;
667
670
  invalidate: {
@@ -680,11 +683,10 @@ export declare function makeTable(options: any): {
680
683
  (idOrQuery: string | Id | import("./ResourceInterface.ts").Query, dataOrContext?: any, context?: Context): any;
681
684
  reliesOnPrototype: boolean;
682
685
  };
683
- subscribe(request: SubscriptionRequest): Promise<AsyncIterable<{
684
- id: any;
685
- operation: string;
686
- value: object;
687
- }>>;
686
+ subscribe: {
687
+ (idOrQuery: string | Id | import("./ResourceInterface.ts").Query, dataOrContext?: any, context?: Context): any;
688
+ reliesOnPrototype: boolean;
689
+ };
688
690
  publish: {
689
691
  (idOrQuery: string | Id | import("./ResourceInterface.ts").Query, dataOrContext?: any, context?: Context): any;
690
692
  reliesOnPrototype: boolean;
@@ -4,12 +4,13 @@ import type { Id } from './ResourceInterface.ts';
4
4
  * This module/function is responsible for the main work of tracking subscriptions and listening for new transactions
5
5
  * that have occurred on any thread, and then reading through the transaction log to notify listeners. This is
6
6
  * responsible for cleanup of subscriptions as well.
7
- * @param path
8
- * @param dbi
7
+ * @param table
9
8
  * @param key
10
9
  * @param listener
10
+ * @param startTime
11
+ * @param options
11
12
  */
12
- export declare function addSubscription(table: any, key: any, listener?: (key: any) => any, startTime: number, options: any): Subscription;
13
+ export declare function addSubscription(table: any, key: any, listener?: (key: any) => any, startTime?: number, options?: any): Subscription;
13
14
  /**
14
15
  * This is the class that is returned from subscribe calls and provide the interface to set a callback, end the
15
16
  * subscription and get the initial state.