@agoric/vow 0.1.1-dev-00cccfc.0 → 0.1.1-dev-e2e36cc.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agoric/vow",
3
- "version": "0.1.1-dev-00cccfc.0+00cccfc",
3
+ "version": "0.1.1-dev-e2e36cc.0+e2e36cc",
4
4
  "description": "Remote (shortening and disconnection-tolerant) Promise-likes",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
@@ -20,7 +20,7 @@
20
20
  "lint:types": "tsc"
21
21
  },
22
22
  "dependencies": {
23
- "@agoric/base-zone": "0.1.1-dev-00cccfc.0+00cccfc",
23
+ "@agoric/base-zone": "0.1.1-dev-e2e36cc.0+e2e36cc",
24
24
  "@endo/env-options": "^1.1.3",
25
25
  "@endo/eventual-send": "^1.2.1",
26
26
  "@endo/pass-style": "^1.3.1",
@@ -28,7 +28,7 @@
28
28
  "@endo/promise-kit": "^1.1.1"
29
29
  },
30
30
  "devDependencies": {
31
- "@agoric/internal": "0.3.3-dev-00cccfc.0+00cccfc",
31
+ "@agoric/internal": "0.3.3-dev-e2e36cc.0+e2e36cc",
32
32
  "@endo/far": "^1.1.1",
33
33
  "@endo/init": "^1.1.1",
34
34
  "ava": "^5.3.0"
@@ -49,5 +49,5 @@
49
49
  "typeCoverage": {
50
50
  "atLeast": 89.21
51
51
  },
52
- "gitHead": "00cccfc6fad7465b6dc611d2c861b32f07fdeaea"
52
+ "gitHead": "e2e36cc1e1c015fc517a179019184fdc81f3e809"
53
53
  }
package/src/tools.d.ts CHANGED
@@ -3,7 +3,7 @@ export function prepareVowTools(zone: import('@agoric/base-zone').Zone, powers?:
3
3
  watchPromise?: ((p: PromiseLike<any>, watcher: import('./watch-promise.js').PromiseWatcher, ...args: unknown[]) => void) | undefined;
4
4
  } | undefined): {
5
5
  when: <T, TResult1 = import("./types.js").Unwrap<T>, TResult2 = never>(specimenP: T, onFulfilled?: ((value: import("./types.js").Unwrap<T>) => TResult1 | PromiseLike<TResult1>) | undefined, onRejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined) => Promise<TResult1 | TResult2>;
6
- watch: <T_1 = any, TResult1_1 = T_1, TResult2_1 = T_1>(specimenP: import("./types.js").ERef<T_1 | import("./types.js").Vow<T_1>>, watcher?: import("./types.js").Watcher<T_1, TResult1_1, TResult2_1> | undefined, watcherContext?: unknown) => import("./types.js").Vow<TResult1_1 | TResult2_1>;
6
+ watch: <T_1 = unknown, TResult1_1 = T_1, TResult2_1 = T_1, C = unknown>(specimenP: import("./types.js").ERef<T_1 | import("./types.js").Vow<T_1>>, watcher?: import("./types.js").Watcher<T_1, TResult1_1, TResult2_1, any> | undefined, watcherContext?: C | undefined) => import("./types.js").Vow<TResult1_1 | TResult2_1>;
7
7
  makeVowKit: <T_2>() => import("./types.js").VowKit<T_2>;
8
8
  allVows: (vows: any) => import("./types.js").Vow<any>;
9
9
  };
package/src/types.d.ts CHANGED
@@ -55,8 +55,8 @@ export type VowResolver<T = any> = {
55
55
  resolve(value?: T | PromiseVow<T>): void;
56
56
  reject(reason?: any): void;
57
57
  };
58
- export type Watcher<T = any, TResult1 = T, TResult2 = T> = {
59
- onFulfilled?: ((value: T) => Vow<TResult1> | PromiseVow<TResult1> | TResult1) | undefined;
58
+ export type Watcher<T = any, TResult1 = T, TResult2 = T, C = any> = {
59
+ onFulfilled?: ((value: T, context?: C) => Vow<TResult1> | PromiseVow<TResult1> | TResult1) | undefined;
60
60
  onRejected?: ((reason: any) => Vow<TResult2> | PromiseVow<TResult2> | TResult2) | undefined;
61
61
  };
62
62
  export type Specimen<T = any> = import('./types.js').ERef<T | import('./types.js').Vow<T>>;
@@ -65,7 +65,7 @@ export type VowTools = ReturnType<(zone: import("@agoric/base-zone").Zone, power
65
65
  watchPromise?: ((p: PromiseLike<any>, watcher: import("./watch-promise").PromiseWatcher, ...args: unknown[]) => void) | undefined;
66
66
  } | undefined) => {
67
67
  when: <T, TResult1 = Unwrap<T>, TResult2 = never>(specimenP: T, onFulfilled?: ((value: Unwrap<T>) => TResult1 | PromiseLike<TResult1>) | undefined, onRejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined) => Promise<TResult1 | TResult2>;
68
- watch: <T_1 = any, TResult1_1 = T_1, TResult2_1 = T_1>(specimenP: ERef<T_1 | Vow<T_1>>, watcher?: Watcher<T_1, TResult1_1, TResult2_1> | undefined, watcherContext?: unknown) => Vow<TResult1_1 | TResult2_1>;
68
+ watch: <T_1 = unknown, TResult1_1 = T_1, TResult2_1 = T_1, C = unknown>(specimenP: ERef<T_1 | Vow<T_1>>, watcher?: Watcher<T_1, TResult1_1, TResult2_1, any> | undefined, watcherContext?: C | undefined) => Vow<TResult1_1 | TResult2_1>;
69
69
  makeVowKit: <T_2>() => VowKit<T_2>;
70
70
  allVows: (vows: any) => Vow<any>;
71
71
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":"uBAGc,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG;;;;;4BAIxB,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;sBAMnB,CAAC,GAAG,YAAY,CAAC,CAAC;;;;6BAKlB,CACZ,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,OAAO,GAAG,IAAI,GAC5B,CAAK,SAAS,IAAI,GAAG,IAAI,GACzB,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,SAAS,GAAG,IAAI,GAC9B,KAAS,CACN;;;;;;;;;;;;;;yDA8BS,OAAO,GACnB,OAAW,qBAAqB,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC;;;;;;;;;;;;;;aAYnD,MAAM,QAAQ,CAAC,CAAC;;;WAShB,OAAO,MAAM,CAAC,CAAC,CAAC;;2BAKjB,OAAO,kBAAkB,EAAE,UAAU,CACjD,KAAS,EAAE,WAAW,CAAC,CAAC,CACrB;8BAKS;IACZ,GAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAChB,QAAY,EAAE,YAAY,CAAC,CAAC,CAAC;CAC1B;qCAKS;IACZ,GAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAChB,QAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IAC7B,OAAW,EAAE,QAAQ,CAAC,CAAC,CAAA;CACpB;mCAKS;IAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC;IAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI,CAAA;CAAE;;2BAQ/D,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,WAAW,QAAQ,CAAC,GAAG,QAAQ;2BACpD,GAAG,KAAK,IAAI,QAAQ,CAAC,GAAG,WAAW,QAAQ,CAAC,GAAG,QAAQ;;gCAKjE,OAAO,YAAY,EAAE,IAAI,CAAC,CAAC,GAAG,OAAO,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;uBAGzD;;;;;;;;EAAgD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":"uBAGc,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG;;;;;4BAIxB,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;sBAMnB,CAAC,GAAG,YAAY,CAAC,CAAC;;;;6BAKlB,CACZ,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,OAAO,GAAG,IAAI,GAC5B,CAAK,SAAS,IAAI,GAAG,IAAI,GACzB,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,MAAM,GAAG,IAAI,GAC3B,CAAK,SAAS,SAAS,GAAG,IAAI,GAC9B,KAAS,CACN;;;;;;;;;;;;;;yDA8BS,OAAO,GACnB,OAAW,qBAAqB,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC;;;;;;;;;;;;;;aAYnD,MAAM,QAAQ,CAAC,CAAC;;;WAShB,OAAO,MAAM,CAAC,CAAC,CAAC;;2BAKjB,OAAO,kBAAkB,EAAE,UAAU,CACjD,KAAS,EAAE,WAAW,CAAC,CAAC,CACrB;8BAKS;IACZ,GAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAChB,QAAY,EAAE,YAAY,CAAC,CAAC,CAAC;CAC1B;qCAKS;IACZ,GAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAChB,QAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IAC7B,OAAW,EAAE,QAAQ,CAAC,CAAC,CAAA;CACpB;mCAKS;IAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC;IAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI,CAAA;CAAE;;2BAS/D,CAAC,YAAY,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,WAAW,QAAQ,CAAC,GAAG,QAAQ;2BACjE,GAAG,KAAK,IAAI,QAAQ,CAAC,GAAG,WAAW,QAAQ,CAAC,GAAG,QAAQ;;gCAKjE,OAAO,YAAY,EAAE,IAAI,CAAC,CAAC,GAAG,OAAO,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;uBAGzD;;;;;;;;EAAgD"}
package/src/types.js CHANGED
@@ -113,8 +113,9 @@ export {};
113
113
  * @template [T=any]
114
114
  * @template [TResult1=T]
115
115
  * @template [TResult2=T]
116
+ * @template [C=any] watcher context
116
117
  * @typedef {object} Watcher
117
- * @property {(value: T) => Vow<TResult1> | PromiseVow<TResult1> | TResult1} [onFulfilled]
118
+ * @property {(value: T, context?: C) => Vow<TResult1> | PromiseVow<TResult1> | TResult1} [onFulfilled]
118
119
  * @property {(reason: any) => Vow<TResult2> | PromiseVow<TResult2> | TResult2} [onRejected]
119
120
  */
120
121
 
package/src/watch.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export function prepareWatch(zone: import('@agoric/base-zone').Zone, makeVowKit: () => import('./types.js').VowKit<any>, watchPromise?: ((p: Promise<any>, watcher: import("./watch-promise.js").PromiseWatcher, ...watcherArgs: unknown[]) => void) | undefined, isRetryableReason?: ((reason: any) => boolean) | undefined): <T = any, TResult1 = T, TResult2 = T>(specimenP: import("./types.js").ERef<T | import("./types.js").Vow<T>>, watcher?: import("./types.js").Watcher<T, TResult1, TResult2> | undefined, watcherContext?: unknown) => import("./types.js").Vow<TResult1 | TResult2>;
1
+ export function prepareWatch(zone: import('@agoric/base-zone').Zone, makeVowKit: () => import('./types.js').VowKit<any>, watchPromise?: ((p: Promise<any>, watcher: import("./watch-promise.js").PromiseWatcher, ...watcherArgs: unknown[]) => void) | undefined, isRetryableReason?: ((reason: any) => boolean) | undefined): <T = unknown, TResult1 = T, TResult2 = T, C = unknown>(specimenP: import("./types.js").ERef<T | import("./types.js").Vow<T>>, watcher?: import("./types.js").Watcher<T, TResult1, TResult2, any> | undefined, watcherContext?: C | undefined) => import("./types.js").Vow<TResult1 | TResult2>;
2
2
  export type Watch = ReturnType<typeof prepareWatch>;
3
3
  //# sourceMappingURL=watch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["watch.js"],"names":[],"mappings":"AAqHO,mCALI,OAAO,mBAAmB,EAAE,IAAI,cAChC,MAAM,OAAO,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,yKAE7B,GAAG,KAAK,OAAO,yNAqBtB,OAAO,mDAsBnB;oBAIa,WAAW,mBAAmB,CAAC"}
1
+ {"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["watch.js"],"names":[],"mappings":"AAqHO,mCALI,OAAO,mBAAmB,EAAE,IAAI,cAChC,MAAM,OAAO,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,yKAE7B,GAAG,KAAK,OAAO,+SA4ClC;oBAIa,WAAW,mBAAmB,CAAC"}
package/src/watch.js CHANGED
@@ -129,12 +129,13 @@ export const prepareWatch = (
129
129
  );
130
130
 
131
131
  /**
132
- * @template [T=any]
132
+ * @template [T=unknown]
133
133
  * @template [TResult1=T]
134
134
  * @template [TResult2=T]
135
+ * @template [C=unknown] watcher context
135
136
  * @param {import('./types.js').ERef<T | import('./types.js').Vow<T>>} specimenP
136
137
  * @param {import('./types.js').Watcher<T, TResult1, TResult2>} [watcher]
137
- * @param {unknown} [watcherContext]
138
+ * @param {C} [watcherContext]
138
139
  */
139
140
  const watch = (specimenP, watcher, watcherContext) => {
140
141
  /** @type {import('./types.js').VowKit<TResult1 | TResult2>} */