@e280/sly 0.0.0-4 → 0.0.0-5

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 (78) hide show
  1. package/README.md +99 -88
  2. package/package.json +2 -2
  3. package/s/demo/demo.bundle.ts +3 -47
  4. package/s/demo/demo.css +13 -6
  5. package/s/demo/views/counter.ts +42 -0
  6. package/s/demo/views/demo.ts +25 -0
  7. package/s/demo/views/loaders.ts +58 -0
  8. package/s/features/op/loaders/make-loader.ts +18 -0
  9. package/s/features/op/loaders/parts/anims.ts +277 -0
  10. package/s/features/op/loaders/parts/ascii-anim.ts +38 -0
  11. package/s/features/{loady → op/loaders}/parts/error-display.ts +10 -10
  12. package/s/features/op/op.ts +42 -20
  13. package/s/features/op/podium.ts +67 -0
  14. package/s/features/views/use.ts +6 -5
  15. package/s/features/views/view.ts +12 -5
  16. package/s/index.html.ts +2 -2
  17. package/s/index.ts +4 -3
  18. package/x/demo/demo.bundle.js +2 -36
  19. package/x/demo/demo.bundle.js.map +1 -1
  20. package/x/demo/demo.bundle.min.js +61 -12
  21. package/x/demo/demo.bundle.min.js.map +4 -4
  22. package/x/demo/demo.css +13 -6
  23. package/x/demo/views/counter.d.ts +1 -0
  24. package/x/demo/views/counter.js +34 -0
  25. package/x/demo/views/counter.js.map +1 -0
  26. package/x/demo/views/demo.d.ts +1 -0
  27. package/x/demo/views/demo.js +21 -0
  28. package/x/demo/views/demo.js.map +1 -0
  29. package/x/demo/views/loaders.d.ts +1 -0
  30. package/x/demo/views/loaders.js +50 -0
  31. package/x/demo/views/loaders.js.map +1 -0
  32. package/x/features/op/loaders/make-loader.d.ts +5 -0
  33. package/x/features/op/loaders/make-loader.js +7 -0
  34. package/x/features/op/loaders/make-loader.js.map +1 -0
  35. package/x/features/op/loaders/parts/anims.d.ts +24 -0
  36. package/x/features/op/loaders/parts/anims.js +251 -0
  37. package/x/features/op/loaders/parts/anims.js.map +1 -0
  38. package/x/features/op/loaders/parts/ascii-anim.d.ts +6 -0
  39. package/x/features/op/loaders/parts/ascii-anim.js +26 -0
  40. package/x/features/op/loaders/parts/ascii-anim.js.map +1 -0
  41. package/x/features/op/loaders/parts/error-display.d.ts +1 -0
  42. package/x/features/{loady → op/loaders}/parts/error-display.js +9 -9
  43. package/x/features/op/loaders/parts/error-display.js.map +1 -0
  44. package/x/features/op/op.d.ts +12 -3
  45. package/x/features/op/op.js +33 -17
  46. package/x/features/op/op.js.map +1 -1
  47. package/x/features/op/podium.d.ts +9 -0
  48. package/x/features/op/podium.js +53 -0
  49. package/x/features/op/podium.js.map +1 -0
  50. package/x/features/views/use.d.ts +4 -3
  51. package/x/features/views/use.js +7 -5
  52. package/x/features/views/use.js.map +1 -1
  53. package/x/features/views/view.js +11 -5
  54. package/x/features/views/view.js.map +1 -1
  55. package/x/index.d.ts +4 -3
  56. package/x/index.html +17 -10
  57. package/x/index.html.js +2 -2
  58. package/x/index.html.js.map +1 -1
  59. package/x/index.js +4 -3
  60. package/x/index.js.map +1 -1
  61. package/s/features/loady/ascii-loader.ts +0 -38
  62. package/s/features/loady/parts/ascii-anim.ts +0 -27
  63. package/s/features/loady/parts/ascii-loader.ts +0 -14
  64. package/s/features/op/pod.ts +0 -19
  65. package/x/features/loady/ascii-loader.d.ts +0 -5
  66. package/x/features/loady/ascii-loader.js +0 -33
  67. package/x/features/loady/ascii-loader.js.map +0 -1
  68. package/x/features/loady/parts/ascii-anim.d.ts +0 -1
  69. package/x/features/loady/parts/ascii-anim.js +0 -21
  70. package/x/features/loady/parts/ascii-anim.js.map +0 -1
  71. package/x/features/loady/parts/ascii-loader.d.ts +0 -3
  72. package/x/features/loady/parts/ascii-loader.js +0 -10
  73. package/x/features/loady/parts/ascii-loader.js.map +0 -1
  74. package/x/features/loady/parts/error-display.d.ts +0 -1
  75. package/x/features/loady/parts/error-display.js.map +0 -1
  76. package/x/features/op/pod.d.ts +0 -5
  77. package/x/features/op/pod.js +0 -16
  78. package/x/features/op/pod.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"op.js","sourceRoot":"","sources":["../../../s/features/op/op.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"op.js","sourceRoot":"","sources":["../../../s/features/op/op.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Pod, PodSelect } from "./types.js";
2
+ export declare const podium: {
3
+ status: (p: Pod<any>) => "loading" | "ready" | "error";
4
+ value: <V>(p: Pod<V>) => V | undefined;
5
+ error: <V>(p: Pod<V>) => any;
6
+ select: <V, R>(p: Pod<V>, select: PodSelect<V, R>) => R;
7
+ morph: <A, B>(p: Pod<A>, fn: (a: A) => B) => Pod<B>;
8
+ all: <V>(...ps: Pod<V>[]) => Pod<V[]>;
9
+ };
@@ -0,0 +1,53 @@
1
+ export const podium = {
2
+ status: (p) => p[0],
3
+ value: (p) => {
4
+ return p[0] === "ready"
5
+ ? p[1]
6
+ : undefined;
7
+ },
8
+ error: (p) => {
9
+ return p[0] === "error"
10
+ ? p[1]
11
+ : undefined;
12
+ },
13
+ select: (p, select) => {
14
+ switch (p[0]) {
15
+ case "loading": return select.loading();
16
+ case "error": return select.error(p[1]);
17
+ case "ready": return select.ready(p[1]);
18
+ default: throw new Error("unknown op status");
19
+ }
20
+ },
21
+ morph: (p, fn) => {
22
+ return podium.select(p, {
23
+ loading: () => ["loading"],
24
+ error: error => ["error", error],
25
+ ready: a => ["ready", fn(a)],
26
+ });
27
+ },
28
+ all: (...ps) => {
29
+ const values = [];
30
+ const errors = [];
31
+ let loading = 0;
32
+ for (const p of ps) {
33
+ switch (p[0]) {
34
+ case "loading":
35
+ loading++;
36
+ break;
37
+ case "ready":
38
+ values.push(p[1]);
39
+ break;
40
+ case "error":
41
+ errors.push(p[1]);
42
+ break;
43
+ }
44
+ }
45
+ if (errors.length > 0)
46
+ return ["error", errors];
47
+ else if (loading === 0)
48
+ return ["ready", values];
49
+ else
50
+ return ["loading"];
51
+ }
52
+ };
53
+ //# sourceMappingURL=podium.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"podium.js","sourceRoot":"","sources":["../../../s/features/op/podium.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,MAAM,GAAG;IACrB,MAAM,EAAE,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7B,KAAK,EAAE,CAAI,CAAS,EAAE,EAAE;QACvB,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO;YACtB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,SAAS,CAAA;IACb,CAAC;IAED,KAAK,EAAE,CAAI,CAAS,EAAE,EAAE;QACvB,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO;YACtB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,SAAS,CAAA;IACb,CAAC;IAED,MAAM,EAAE,CAAO,CAAS,EAAE,MAAuB,EAAE,EAAE;QACpD,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACd,KAAK,SAAS,CAAC,CAAC,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;YACvC,KAAK,OAAO,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACvC,KAAK,OAAO,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACvC,OAAO,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;QAC9C,CAAC;IACF,CAAC;IAED,KAAK,EAAE,CAAO,CAAS,EAAE,EAAe,EAAU,EAAE;QACnD,OAAO,MAAM,CAAC,MAAM,CAAY,CAAC,EAAE;YAClC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC;YAC1B,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC;YAChC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;SAC5B,CAAC,CAAA;IACH,CAAC;IAED,GAAG,EAAE,CAAI,GAAG,EAAY,EAAY,EAAE;QACrC,MAAM,MAAM,GAAQ,EAAE,CAAA;QACtB,MAAM,MAAM,GAAU,EAAE,CAAA;QACxB,IAAI,OAAO,GAAG,CAAC,CAAA;QAEf,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YACpB,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACd,KAAK,SAAS;oBACb,OAAO,EAAE,CAAA;oBACT,MAAK;gBAEN,KAAK,OAAO;oBACX,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBACjB,MAAK;gBAEN,KAAK,OAAO;oBACX,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBACjB,MAAK;YACP,CAAC;QACF,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YACpB,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;aAEpB,IAAI,OAAO,KAAK,CAAC;YACrB,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;;YAGxB,OAAO,CAAC,SAAS,CAAC,CAAA;IACpB,CAAC;CACD,CAAA"}
@@ -7,20 +7,21 @@ export declare class Use {
7
7
  #private;
8
8
  element: HTMLElement;
9
9
  shadow: ShadowRoot;
10
+ render: () => void;
10
11
  [_wrap](fn: () => void): void;
11
12
  [_disconnect](): void;
12
13
  [_reconnect](): void;
13
- constructor(element: HTMLElement, shadow: ShadowRoot);
14
+ constructor(element: HTMLElement, shadow: ShadowRoot, render: () => void);
14
15
  get renderCount(): number;
15
16
  get rendered(): Promise<void>;
16
- styles(...styles: CSSResultGroup[]): void;
17
17
  name(name: string): void;
18
+ styles(...styles: CSSResultGroup[]): void;
18
19
  once<V>(fn: () => V): V;
19
20
  mount(fn: () => () => void): void;
20
21
  life<V>(fn: () => [result: V, dispose: () => void]): V;
21
22
  op: {
22
- promise: <V>(p: Promise<V>) => Op<V>;
23
23
  fn: <V>(f: () => Promise<V>) => Op<V>;
24
+ promise: <V>(p: Promise<V>) => Op<V>;
24
25
  };
25
26
  signal<V>(value: V): import("@e280/strata/signals").Signal<V>;
26
27
  }
@@ -9,6 +9,7 @@ export const _reconnect = Symbol();
9
9
  export class Use {
10
10
  element;
11
11
  shadow;
12
+ render;
12
13
  #runs = 0;
13
14
  #position = 0;
14
15
  #values = new MapG();
@@ -29,9 +30,10 @@ export class Use {
29
30
  [_reconnect]() {
30
31
  this.#mounts.remountAll();
31
32
  }
32
- constructor(element, shadow) {
33
+ constructor(element, shadow, render) {
33
34
  this.element = element;
34
35
  this.shadow = shadow;
36
+ this.render = render;
35
37
  }
36
38
  get renderCount() {
37
39
  return this.#runs;
@@ -39,12 +41,12 @@ export class Use {
39
41
  get rendered() {
40
42
  return this.#rendered.promise;
41
43
  }
42
- styles(...styles) {
43
- this.once(() => applyStyles(this.shadow, styles));
44
- }
45
44
  name(name) {
46
45
  this.once(() => this.element.setAttribute("view", name));
47
46
  }
47
+ styles(...styles) {
48
+ this.once(() => applyStyles(this.shadow, styles));
49
+ }
48
50
  once(fn) {
49
51
  return this.#values.guarantee(this.#position++, fn);
50
52
  }
@@ -61,8 +63,8 @@ export class Use {
61
63
  return r;
62
64
  }
63
65
  op = {
64
- promise: (p) => this.once(() => Op.promise(p)),
65
66
  fn: (f) => this.once(() => Op.fn(f)),
67
+ promise: (p) => this.once(() => Op.promise(p)),
66
68
  };
67
69
  signal(value) {
68
70
  return this.once(() => signal(value));
@@ -1 +1 @@
1
- {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../s/features/views/use.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../s/features/views/use.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ function setupView(settings) {
16
16
  class ViewDirective extends AsyncDirective {
17
17
  #element = document.createElement(settings.tag ?? "sly-view");
18
18
  #shadow = this.#element.attachShadow(settings);
19
- #use = new Use(this.#element, this.#shadow);
19
+ #use = new Use(this.#element, this.#shadow, () => this.#render());
20
20
  #fn = (() => {
21
21
  const fn2 = fn(this.#use);
22
22
  this.#element.setAttribute("view", settings.name ?? "");
@@ -25,9 +25,13 @@ function setupView(settings) {
25
25
  return fn2;
26
26
  })();
27
27
  #tracking = new MapG;
28
- #render = debounce(0, (w, props) => {
28
+ #params;
29
+ #render() {
30
+ if (!this.#params)
31
+ return;
29
32
  if (!this.isConnected)
30
33
  return;
34
+ const { with: w, props } = this.#params;
31
35
  this.#use[_wrap](() => {
32
36
  // apply html attributes
33
37
  applyAttrs(this.#element, w.attrs);
@@ -37,13 +41,15 @@ function setupView(settings) {
37
41
  render(result, this.#shadow);
38
42
  // reacting to changes
39
43
  for (const item of seen)
40
- this.#tracking.guarantee(item, () => tracker.changed(item, async () => this.#render(w, props)));
44
+ this.#tracking.guarantee(item, () => tracker.changed(item, async () => this.#renderDebounced()));
41
45
  // inject content into light dom
42
46
  render(w.children, this.#element);
43
47
  });
44
- });
48
+ }
49
+ #renderDebounced = debounce(0, () => this.#render());
45
50
  render(w, props) {
46
- this.#render(w, props);
51
+ this.#params = { with: w, props };
52
+ this.#render();
47
53
  return this.#element;
48
54
  }
49
55
  disconnected() {
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../s/features/views/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../s/features/views/view.ts"],"names":[],"mappings":"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"}
package/x/index.d.ts CHANGED
@@ -2,10 +2,11 @@ export * from "./features/dom/dashify.js";
2
2
  export * from "./features/dom/dollar.js";
3
3
  export * from "./features/dom/register.js";
4
4
  export * from "./features/dom/types.js";
5
- export * from "./features/loady/ascii-loader.js";
6
- export * from "./features/loady/parts/error-display.js";
5
+ export * from "./features/op/loaders/make-loader.js";
6
+ export * from "./features/op/loaders/parts/ascii-anim.js";
7
+ export * from "./features/op/loaders/parts/error-display.js";
7
8
  export * from "./features/op/op.js";
8
- export * from "./features/op/pod.js";
9
+ export * from "./features/op/podium.js";
9
10
  export * from "./features/op/types.js";
10
11
  export * from "./features/views/css-reset.js";
11
12
  export * from "./features/views/types.js";
package/x/index.html CHANGED
@@ -12,6 +12,7 @@
12
12
  :root {
13
13
  --prime: #1eff00;
14
14
  --accent: #387d42;
15
+ --pill: #12763959;
15
16
  --bg: #0e2316;
16
17
  --link: cyan;
17
18
  }
@@ -58,15 +59,12 @@ a {
58
59
 
59
60
  @layer page {
60
61
  :root {
61
- color-scheme: dark;
62
-
63
- padding: 5vw 0.5em;
64
- min-height: 100%;
65
- scrollbar-gutter: stable;
66
-
67
62
  font-size: 21px;
68
63
  font-family: sans-serif;
69
64
 
65
+ color-scheme: dark;
66
+ scrollbar-gutter: stable;
67
+
70
68
  color: color-mix(in lch, var(--prime), #fff8 50%);
71
69
  background: radial-gradient(
72
70
  circle,
@@ -76,6 +74,11 @@ a {
76
74
  }
77
75
 
78
76
  body {
77
+ width: 100%;
78
+ max-width: 32em;
79
+ margin: auto;
80
+ padding: 1em;
81
+
79
82
  display: flex;
80
83
  flex-direction: column;
81
84
  align-items: center;
@@ -95,13 +98,17 @@ body {
95
98
  font-size: 0.8em;
96
99
  }
97
100
 
101
+ .demo {
102
+ width: 100%;
103
+ }
104
+
98
105
  :not(:defined) {
99
106
  display: none;
100
107
  }
101
108
  }
102
109
 
103
110
  </style>
104
- <script type=module src="demo/demo.bundle.min.js?v=f30dd1a88dc1"></script>
111
+ <script type=module src="demo/demo.bundle.min.js?v=ada444f4ee58"></script>
105
112
  <link rel="icon" href="assets/favicon.png?v=4dc161ed79b3"/>
106
113
 
107
114
  <meta name="theme-color" content="#95ff7b">
@@ -119,10 +126,10 @@ body {
119
126
  <body>
120
127
 
121
128
  <img class=icon alt="" src="/assets/favicon.png"/>
122
- <h1>sly</h1>
123
- <p class=lil>v0.0.0-4</p>
124
- <div class=demo></div>
129
+ <h1>sly testing page</h1>
125
130
  <p><a href="https://github.com/e280/sly">github.com/e280/sly</a></p>
131
+ <p class=lil>v0.0.0-5</p>
132
+ <div class=demo></div>
126
133
 
127
134
  </body>
128
135
  </html>
package/x/index.html.js CHANGED
@@ -21,10 +21,10 @@ export default ssg.page(import.meta.url, async (orb) => ({
21
21
  `,
22
22
  body: html `
23
23
  <img class=icon alt="" src="/assets/favicon.png"/>
24
- <h1>sly</h1>
24
+ <h1>sly testing page</h1>
25
+ <p><a href="https://github.com/e280/sly">github.com/e280/sly</a></p>
25
26
  <p class=lil>v${orb.packageVersion()}</p>
26
27
  <div class=demo></div>
27
- <p><a href="https://github.com/e280/sly">github.com/e280/sly</a></p>
28
28
  `,
29
29
  }));
30
30
  //# sourceMappingURL=index.html.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.html.js","sourceRoot":"","sources":["../s/index.html.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;AAErC,MAAM,KAAK,GAAG,KAAK,CAAA;AACnB,MAAM,WAAW,GAAG,0BAA0B,CAAA;AAC9C,MAAM,MAAM,GAAG,cAAc,CAAA;AAC7B,MAAM,OAAO,GAAG,qBAAqB,CAAA;AAErC,eAAe,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,CAAC;IACtD,KAAK;IACL,EAAE,EAAE,yBAAyB;IAC7B,GAAG,EAAE,eAAe;IACpB,OAAO;IACP,IAAI,EAAE,IAAI;IACV,UAAU,EAAE;QACX,UAAU,EAAE,SAAS;QACrB,KAAK;QACL,WAAW;QACX,QAAQ,EAAE,WAAW;QACrB,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO;KACpC;IAED,IAAI,EAAE,IAAI,CAAA;;EAET;IAED,IAAI,EAAE,IAAI,CAAA;;;kBAGO,GAAG,CAAC,cAAc,EAAE;;;EAGpC;CACD,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"index.html.js","sourceRoot":"","sources":["../s/index.html.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,aAAa,CAAA;AAErC,MAAM,KAAK,GAAG,KAAK,CAAA;AACnB,MAAM,WAAW,GAAG,0BAA0B,CAAA;AAC9C,MAAM,MAAM,GAAG,cAAc,CAAA;AAC7B,MAAM,OAAO,GAAG,qBAAqB,CAAA;AAErC,eAAe,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,CAAC;IACtD,KAAK;IACL,EAAE,EAAE,yBAAyB;IAC7B,GAAG,EAAE,eAAe;IACpB,OAAO;IACP,IAAI,EAAE,IAAI;IACV,UAAU,EAAE;QACX,UAAU,EAAE,SAAS;QACrB,KAAK;QACL,WAAW;QACX,QAAQ,EAAE,WAAW;QACrB,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,OAAO;KACpC;IAED,IAAI,EAAE,IAAI,CAAA;;EAET;IAED,IAAI,EAAE,IAAI,CAAA;;;;kBAIO,GAAG,CAAC,cAAc,EAAE;;EAEpC;CACD,CAAC,CAAC,CAAA"}
package/x/index.js CHANGED
@@ -2,10 +2,11 @@ export * from "./features/dom/dashify.js";
2
2
  export * from "./features/dom/dollar.js";
3
3
  export * from "./features/dom/register.js";
4
4
  export * from "./features/dom/types.js";
5
- export * from "./features/loady/ascii-loader.js";
6
- export * from "./features/loady/parts/error-display.js";
5
+ export * from "./features/op/loaders/make-loader.js";
6
+ export * from "./features/op/loaders/parts/ascii-anim.js";
7
+ export * from "./features/op/loaders/parts/error-display.js";
7
8
  export * from "./features/op/op.js";
8
- export * from "./features/op/pod.js";
9
+ export * from "./features/op/podium.js";
9
10
  export * from "./features/op/types.js";
10
11
  export * from "./features/views/css-reset.js";
11
12
  export * from "./features/views/types.js";
package/x/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../s/index.ts"],"names":[],"mappings":"AACA,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AAEvC,cAAc,kCAAkC,CAAA;AAChD,cAAc,yCAAyC,CAAA;AAEvD,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AAEtC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../s/index.ts"],"names":[],"mappings":"AACA,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AAEvC,cAAc,sCAAsC,CAAA;AACpD,cAAc,2CAA2C,CAAA;AACzD,cAAc,8CAA8C,CAAA;AAE5D,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AAEtC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA"}
@@ -1,38 +0,0 @@
1
-
2
- import {makeAsciiLoader} from "./parts/ascii-loader.js";
3
-
4
- const hz = 15
5
-
6
- export const loady = {
7
- cylon: makeAsciiLoader(hz, [
8
- "=----",
9
- "-=---",
10
- "--=--",
11
- "---=-",
12
- "----=",
13
- "-----",
14
- "-----",
15
- ]),
16
-
17
- dots: makeAsciiLoader(hz, [
18
- ":....",
19
- "::...",
20
- ".::..",
21
- "..::.",
22
- "...::",
23
- "....:",
24
- ".....",
25
- ".....",
26
- ]),
27
-
28
- binary: makeAsciiLoader(hz, [
29
- "01111",
30
- "10111",
31
- "11011",
32
- "11101",
33
- "11110",
34
- "11111",
35
- "11111",
36
- ]),
37
- }
38
-
@@ -1,27 +0,0 @@
1
-
2
- import {css} from "lit"
3
- import {nap, repeat} from "@e280/stz"
4
-
5
- import {view} from "../../views/view.js"
6
- import {cssReset} from "../../views/css-reset.js"
7
-
8
- const style = css`
9
- :host {
10
- font-family: monospace;
11
- }
12
- `
13
-
14
- export const AsciiAnim = view(use => (hz: number, anim: string[]) => {
15
- use.name("loading")
16
- use.styles(cssReset, style)
17
- const frame = use.signal(0)
18
-
19
- use.mount(() => repeat(async() => {
20
- await nap(1000 / hz)
21
- const next = frame() + 1
22
- frame(next >= anim.length ? 0 : next)
23
- }))
24
-
25
- return anim.at(frame())
26
- })
27
-
@@ -1,14 +0,0 @@
1
-
2
- import {Op} from "../../op/op.js"
3
- import {AsciiAnim} from "./ascii-anim.js"
4
- import {Content} from "../../views/types.js"
5
- import {ErrorDisplay} from "./error-display.js"
6
-
7
- export function makeAsciiLoader(hz: number, anim: string[]) {
8
- return <V>(op: Op<V>, fn: (value: V) => Content) => op.select({
9
- loading: () => AsciiAnim(hz, anim),
10
- error: error => ErrorDisplay(error),
11
- ready: fn,
12
- })
13
- }
14
-
@@ -1,19 +0,0 @@
1
-
2
- import {Pod, PodSelect} from "./types.js"
3
-
4
- export const pod = {
5
- value: <V>(pod: Pod<V>) => {
6
- return pod[0] === "ready"
7
- ? pod[1]
8
- : undefined
9
- },
10
- select: <V, R>(pod: Pod<V>, select: PodSelect<V, R>) => {
11
- switch (pod[0]) {
12
- case "loading": return select.loading()
13
- case "error": return select.error(pod[1])
14
- case "ready": return select.ready(pod[1])
15
- default: throw new Error("unknown op status")
16
- }
17
- },
18
- }
19
-
@@ -1,5 +0,0 @@
1
- export declare const loady: {
2
- cylon: <V>(op: import("../op/op.js").Op<V>, fn: (value: V) => import("../views/types.js").Content) => string | void | HTMLElement | import("lit-html").TemplateResult | import("lit-html/directive.js").DirectiveResult<import("lit-html/directive.js").DirectiveClass> | import("../views/types.js").Content[] | null | undefined;
3
- dots: <V>(op: import("../op/op.js").Op<V>, fn: (value: V) => import("../views/types.js").Content) => string | void | HTMLElement | import("lit-html").TemplateResult | import("lit-html/directive.js").DirectiveResult<import("lit-html/directive.js").DirectiveClass> | import("../views/types.js").Content[] | null | undefined;
4
- binary: <V>(op: import("../op/op.js").Op<V>, fn: (value: V) => import("../views/types.js").Content) => string | void | HTMLElement | import("lit-html").TemplateResult | import("lit-html/directive.js").DirectiveResult<import("lit-html/directive.js").DirectiveClass> | import("../views/types.js").Content[] | null | undefined;
5
- };
@@ -1,33 +0,0 @@
1
- import { makeAsciiLoader } from "./parts/ascii-loader.js";
2
- const hz = 15;
3
- export const loady = {
4
- cylon: makeAsciiLoader(hz, [
5
- "=----",
6
- "-=---",
7
- "--=--",
8
- "---=-",
9
- "----=",
10
- "-----",
11
- "-----",
12
- ]),
13
- dots: makeAsciiLoader(hz, [
14
- ":....",
15
- "::...",
16
- ".::..",
17
- "..::.",
18
- "...::",
19
- "....:",
20
- ".....",
21
- ".....",
22
- ]),
23
- binary: makeAsciiLoader(hz, [
24
- "01111",
25
- "10111",
26
- "11011",
27
- "11101",
28
- "11110",
29
- "11111",
30
- "11111",
31
- ]),
32
- };
33
- //# sourceMappingURL=ascii-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ascii-loader.js","sourceRoot":"","sources":["../../../s/features/loady/ascii-loader.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AAExD,MAAM,EAAE,GAAG,EAAE,CAAA;AAEb,MAAM,CAAC,MAAM,KAAK,GAAG;IACpB,KAAK,EAAE,eAAe,CAAC,EAAE,EAAE;QAC1B,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;KACP,CAAC;IAEF,IAAI,EAAE,eAAe,CAAC,EAAE,EAAE;QACzB,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;KACP,CAAC;IAEF,MAAM,EAAE,eAAe,CAAC,EAAE,EAAE;QAC3B,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;QACP,OAAO;KACP,CAAC;CACF,CAAA"}
@@ -1 +0,0 @@
1
- export declare const AsciiAnim: import("../../views/types.js").View<[hz: number, anim: string[]]>;
@@ -1,21 +0,0 @@
1
- import { css } from "lit";
2
- import { nap, repeat } from "@e280/stz";
3
- import { view } from "../../views/view.js";
4
- import { cssReset } from "../../views/css-reset.js";
5
- const style = css `
6
- :host {
7
- font-family: monospace;
8
- }
9
- `;
10
- export const AsciiAnim = view(use => (hz, anim) => {
11
- use.name("loading");
12
- use.styles(cssReset, style);
13
- const frame = use.signal(0);
14
- use.mount(() => repeat(async () => {
15
- await nap(1000 / hz);
16
- const next = frame() + 1;
17
- frame(next >= anim.length ? 0 : next);
18
- }));
19
- return anim.at(frame());
20
- });
21
- //# sourceMappingURL=ascii-anim.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ascii-anim.js","sourceRoot":"","sources":["../../../../s/features/loady/parts/ascii-anim.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAA;AACvB,OAAO,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,WAAW,CAAA;AAErC,OAAO,EAAC,IAAI,EAAC,MAAM,qBAAqB,CAAA;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AAEjD,MAAM,KAAK,GAAG,GAAG,CAAA;;;;CAIhB,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAU,EAAE,IAAc,EAAE,EAAE;IACnE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACnB,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAE3B,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,IAAG,EAAE;QAChC,MAAM,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAA;QACpB,MAAM,IAAI,GAAG,KAAK,EAAE,GAAG,CAAC,CAAA;QACxB,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC,CAAC,CAAC,CAAA;IAEH,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAA;AACxB,CAAC,CAAC,CAAA"}
@@ -1,3 +0,0 @@
1
- import { Op } from "../../op/op.js";
2
- import { Content } from "../../views/types.js";
3
- export declare function makeAsciiLoader(hz: number, anim: string[]): <V>(op: Op<V>, fn: (value: V) => Content) => string | void | HTMLElement | import("lit-html").TemplateResult | import("lit-html/directive.js").DirectiveResult<import("lit-html/directive.js").DirectiveClass> | Content[] | null | undefined;
@@ -1,10 +0,0 @@
1
- import { AsciiAnim } from "./ascii-anim.js";
2
- import { ErrorDisplay } from "./error-display.js";
3
- export function makeAsciiLoader(hz, anim) {
4
- return (op, fn) => op.select({
5
- loading: () => AsciiAnim(hz, anim),
6
- error: error => ErrorDisplay(error),
7
- ready: fn,
8
- });
9
- }
10
- //# sourceMappingURL=ascii-loader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ascii-loader.js","sourceRoot":"","sources":["../../../../s/features/loady/parts/ascii-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAA;AAEzC,OAAO,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAA;AAE/C,MAAM,UAAU,eAAe,CAAC,EAAU,EAAE,IAAc;IACzD,OAAO,CAAI,EAAS,EAAE,EAAyB,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC;QAC7D,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC;QAClC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC;QACnC,KAAK,EAAE,EAAE;KACT,CAAC,CAAA;AACH,CAAC"}
@@ -1 +0,0 @@
1
- export declare const ErrorDisplay: import("../../views/types.js").View<[error: any]>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-display.js","sourceRoot":"","sources":["../../../../s/features/loady/parts/error-display.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,KAAK,CAAA;AAC7B,OAAO,EAAC,IAAI,EAAC,MAAM,qBAAqB,CAAA;AACxC,OAAO,EAAC,QAAQ,EAAC,MAAM,0BAA0B,CAAA;AAEjD,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;CAKhB,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAU,EAAE,EAAE;IACtD,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACnB,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;IAE3B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAC5B,OAAO,KAAK,CAAA;SAER,IAAI,KAAK,YAAY,KAAK;QAC9B,OAAO,IAAI,CAAA,WAAW,KAAK,CAAC,IAAI,oBAAoB,KAAK,CAAC,OAAO,SAAS,CAAA;;QAG1E,OAAO,OAAO,CAAA;AAChB,CAAC,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- import { Pod, PodSelect } from "./types.js";
2
- export declare const pod: {
3
- value: <V>(pod: Pod<V>) => V | undefined;
4
- select: <V, R>(pod: Pod<V>, select: PodSelect<V, R>) => R;
5
- };
@@ -1,16 +0,0 @@
1
- export const pod = {
2
- value: (pod) => {
3
- return pod[0] === "ready"
4
- ? pod[1]
5
- : undefined;
6
- },
7
- select: (pod, select) => {
8
- switch (pod[0]) {
9
- case "loading": return select.loading();
10
- case "error": return select.error(pod[1]);
11
- case "ready": return select.ready(pod[1]);
12
- default: throw new Error("unknown op status");
13
- }
14
- },
15
- };
16
- //# sourceMappingURL=pod.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pod.js","sourceRoot":"","sources":["../../../s/features/op/pod.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,GAAG,GAAG;IAClB,KAAK,EAAE,CAAI,GAAW,EAAE,EAAE;QACzB,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO;YACxB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACR,CAAC,CAAC,SAAS,CAAA;IACb,CAAC;IACD,MAAM,EAAE,CAAO,GAAW,EAAE,MAAuB,EAAE,EAAE;QACtD,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,KAAK,SAAS,CAAC,CAAC,OAAO,MAAM,CAAC,OAAO,EAAE,CAAA;YACvC,KAAK,OAAO,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACzC,KAAK,OAAO,CAAC,CAAC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACzC,OAAO,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;QAC9C,CAAC;IACF,CAAC;CACD,CAAA"}