vigla 0.1.0 → 0.2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"owners.d.ts","sourceRoot":"","sources":["../../../src/runtime/reactivity/owners.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAQ1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAQzC,MAAM,WAAW,UAAU;IAC1B,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;CACnC;AAID,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAE9D;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAEnE;AAwBD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,CAAC,CAK7C;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAIvD;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAKhD;AAED,wBAAgB,aAAa,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAE7C;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAQ3F;AAWD,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAQ9C;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAOxD;AAcD,qBAAa,KAAK;IACjB,YAAY,MAAM,EAAE,MAAM,EAIzB;IAED,IAAI,MAAM,IAAI,KAAK,GAAG,IAAI,CAGzB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAIrD;IAED,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAIrB;IAEK,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAS/C;IAED,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEvB;IAED,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,KAAK,CAE1C;IAED,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAcpC;IAED,OAAO,IAAI,IAAI,CAEd;CACD;AAWD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAE7C;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAE7C;AAED,wBAAgB,QAAQ,IAAI,KAAK,GAAG,IAAI,CAGvC;AAED,wBAAgB,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,MAAM,GAAE,KAAK,GAAG,IAAW,GAAG,KAAK,CAYvF"}
1
+ {"version":3,"file":"owners.d.ts","sourceRoot":"","sources":["../../../src/runtime/reactivity/owners.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAQ1E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAQzC,MAAM,WAAW,UAAU;IAC1B,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;CACnC;AAID,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAE9D;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAEnE;AAgCD,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,CAAC,CAK7C;AAED,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAIvD;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAKhD;AAED,wBAAgB,aAAa,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAE7C;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAQ3F;AAWD,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAQ9C;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAOxD;AAcD,qBAAa,KAAK;IACjB,YAAY,MAAM,EAAE,MAAM,EAIzB;IAED,IAAI,MAAM,IAAI,KAAK,GAAG,IAAI,CAGzB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,MAAM,IAAI,WAAW,CAExB;IAED,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI,CAIrD;IAED,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAIrB;IAEK,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAS/C;IAED,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEvB;IAED,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,KAAK,CAE1C;IAED,SAAS,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAcpC;IAED,OAAO,IAAI,IAAI,CAEd;CACD;AAWD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAE7C;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAE7C;AAED,wBAAgB,QAAQ,IAAI,KAAK,GAAG,IAAI,CAGvC;AAED,wBAAgB,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,MAAM,GAAE,KAAK,GAAG,IAAW,GAAG,KAAK,CAYvF"}
@@ -29,6 +29,13 @@ function standing() {
29
29
  function current() {
30
30
  return standing() ?? layerOf(ambient());
31
31
  }
32
+ function readable() {
33
+ const layer = current();
34
+ if (layer === null && ambient() === null) {
35
+ throw failure('context_without_owner', 'Context can only be read where an owner exists');
36
+ }
37
+ return layer;
38
+ }
32
39
  function writable() {
33
40
  const layer = standing();
34
41
  if (layer !== null)
@@ -40,7 +47,7 @@ function writable() {
40
47
  return ownContext(effect);
41
48
  }
42
49
  export function getContext(key) {
43
- for (let layer = current(); layer !== null; layer = layer.parent) {
50
+ for (let layer = readable(); layer !== null; layer = layer.parent) {
44
51
  if (layer.map?.has(key))
45
52
  return layer.map.get(key);
46
53
  }
@@ -63,7 +70,7 @@ export function createContext() {
63
70
  }
64
71
  export function getAllContexts() {
65
72
  const chain = [];
66
- for (let layer = current(); layer !== null; layer = layer.parent)
73
+ for (let layer = readable(); layer !== null; layer = layer.parent)
67
74
  chain.push(layer);
68
75
  const all = new Map();
69
76
  for (let index = chain.length - 1; index >= 0; index--) {
@@ -1 +1 @@
1
- {"version":3,"file":"owners.js","sourceRoot":"","sources":["../../../src/runtime/reactivity/owners.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"owners.js","sourceRoot":"","sources":["../../../src/runtime/reactivity/owners.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,11 @@
1
1
  {
2
2
  "name": "vigla",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
+ "repository": {
5
+ "type": "git",
6
+ "url": "git+https://github.com/runlith/vigla.git",
7
+ "directory": "packages/vigla"
8
+ },
4
9
  "type": "module",
5
10
  "files": [
6
11
  "dist",
@@ -41,6 +41,14 @@ function current(): Layer<Effect> | null {
41
41
  return standing() ?? layerOf(ambient());
42
42
  }
43
43
 
44
+ function readable(): Layer<Effect> | null {
45
+ const layer = current();
46
+ if (layer === null && ambient() === null) {
47
+ throw failure('context_without_owner', 'Context can only be read where an owner exists');
48
+ }
49
+ return layer;
50
+ }
51
+
44
52
  function writable(): Layer<Effect> {
45
53
  const layer = standing();
46
54
  if (layer !== null) return layer;
@@ -52,7 +60,7 @@ function writable(): Layer<Effect> {
52
60
  }
53
61
 
54
62
  export function getContext<T>(key: unknown): T {
55
- for (let layer = current(); layer !== null; layer = layer.parent) {
63
+ for (let layer = readable(); layer !== null; layer = layer.parent) {
56
64
  if (layer.map?.has(key)) return layer.map.get(key) as T;
57
65
  }
58
66
  return undefined as T;
@@ -77,7 +85,7 @@ export function createContext<T>(): Context<T> {
77
85
 
78
86
  export function getAllContexts<T extends Map<unknown, unknown> = Map<unknown, unknown>>(): T {
79
87
  const chain: Layer<Effect>[] = [];
80
- for (let layer = current(); layer !== null; layer = layer.parent) chain.push(layer);
88
+ for (let layer = readable(); layer !== null; layer = layer.parent) chain.push(layer);
81
89
  const all = new Map<unknown, unknown>();
82
90
  for (let index = chain.length - 1; index >= 0; index--) {
83
91
  for (const [key, value] of chain[index]?.map ?? []) all.set(key, value);