@typed/template 0.1.2 → 0.1.4
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/dist/cjs/ElementRef.js +3 -3
- package/dist/cjs/ElementRef.js.map +1 -1
- package/dist/cjs/ElementSource.js +2 -2
- package/dist/cjs/ElementSource.js.map +1 -1
- package/dist/cjs/EventHandler.js +1 -1
- package/dist/cjs/EventHandler.js.map +1 -1
- package/dist/cjs/Html.js +10 -10
- package/dist/cjs/Html.js.map +1 -1
- package/dist/cjs/HtmlChunk.js +1 -1
- package/dist/cjs/Hydrate.js +5 -5
- package/dist/cjs/Hydrate.js.map +1 -1
- package/dist/cjs/Many.js +1 -1
- package/dist/cjs/Many.js.map +1 -1
- package/dist/cjs/Parser.js +4 -4
- package/dist/cjs/Parser.js.map +1 -1
- package/dist/cjs/Placeholder.js +2 -2
- package/dist/cjs/Placeholder.js.map +1 -1
- package/dist/cjs/Platform.js +1 -1
- package/dist/cjs/Platform.js.map +1 -1
- package/dist/cjs/Render.js +3 -3
- package/dist/cjs/Render.js.map +1 -1
- package/dist/cjs/RenderContext.js +1 -1
- package/dist/cjs/RenderContext.js.map +1 -1
- package/dist/cjs/RenderTemplate.js +1 -1
- package/dist/cjs/RenderTemplate.js.map +1 -1
- package/dist/cjs/TemplateInstance.js +2 -2
- package/dist/cjs/TemplateInstance.js.map +1 -1
- package/dist/cjs/Test.js +5 -5
- package/dist/cjs/Test.js.map +1 -1
- package/dist/cjs/Tokenizer.js +1 -1
- package/dist/cjs/Tokenizer.js.map +1 -1
- package/dist/cjs/index.js +16 -16
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/browser.js +3 -3
- package/dist/cjs/internal/browser.js.map +1 -1
- package/dist/cjs/internal/hydrate.js +8 -8
- package/dist/cjs/internal/hydrate.js.map +1 -1
- package/dist/cjs/internal/parser.js +4 -4
- package/dist/cjs/internal/parser.js.map +1 -1
- package/dist/cjs/internal/parts.js +2 -2
- package/dist/cjs/internal/parts.js.map +1 -1
- package/dist/cjs/internal/render.js +11 -11
- package/dist/cjs/internal/render.js.map +1 -1
- package/dist/cjs/internal/server.js +1 -1
- package/dist/cjs/internal/server.js.map +1 -1
- package/dist/cjs/internal/tokenizer.js +2 -2
- package/dist/cjs/internal/tokenizer.js.map +1 -1
- package/dist/cjs/internal/utils.js +1 -1
- package/dist/cjs/internal/utils.js.map +1 -1
- package/dist/dts/Directive.d.ts +2 -2
- package/dist/dts/Directive.d.ts.map +1 -1
- package/dist/dts/ElementRef.d.ts +1 -1
- package/dist/dts/ElementRef.d.ts.map +1 -1
- package/dist/dts/Entry.d.ts +2 -2
- package/dist/dts/Entry.d.ts.map +1 -1
- package/dist/dts/EventHandler.d.ts +1 -1
- package/dist/dts/EventHandler.d.ts.map +1 -1
- package/dist/dts/Html.d.ts +3 -3
- package/dist/dts/Html.d.ts.map +1 -1
- package/dist/dts/HtmlChunk.d.ts +1 -1
- package/dist/dts/HtmlChunk.d.ts.map +1 -1
- package/dist/dts/Hydrate.d.ts +4 -4
- package/dist/dts/Hydrate.d.ts.map +1 -1
- package/dist/dts/Many.d.ts +2 -2
- package/dist/dts/Many.d.ts.map +1 -1
- package/dist/dts/Parser.d.ts +2 -2
- package/dist/dts/Parser.d.ts.map +1 -1
- package/dist/dts/Part.d.ts +2 -2
- package/dist/dts/Part.d.ts.map +1 -1
- package/dist/dts/Placeholder.d.ts +1 -1
- package/dist/dts/Placeholder.d.ts.map +1 -1
- package/dist/dts/Platform.d.ts +3 -3
- package/dist/dts/Platform.d.ts.map +1 -1
- package/dist/dts/Render.d.ts +3 -3
- package/dist/dts/Render.d.ts.map +1 -1
- package/dist/dts/RenderContext.d.ts +2 -2
- package/dist/dts/RenderContext.d.ts.map +1 -1
- package/dist/dts/RenderTemplate.d.ts +5 -5
- package/dist/dts/RenderTemplate.d.ts.map +1 -1
- package/dist/dts/Renderable.d.ts +2 -2
- package/dist/dts/Renderable.d.ts.map +1 -1
- package/dist/dts/TemplateInstance.d.ts +2 -2
- package/dist/dts/TemplateInstance.d.ts.map +1 -1
- package/dist/dts/Test.d.ts +4 -4
- package/dist/dts/Test.d.ts.map +1 -1
- package/dist/dts/Tokenizer.d.ts +1 -1
- package/dist/dts/Tokenizer.d.ts.map +1 -1
- package/dist/dts/index.d.ts +16 -16
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/browser.d.ts +2 -2
- package/dist/dts/internal/browser.d.ts.map +1 -1
- package/dist/dts/internal/hydrate.d.ts +6 -6
- package/dist/dts/internal/hydrate.d.ts.map +1 -1
- package/dist/dts/internal/module-augmentation.d.ts +1 -1
- package/dist/dts/internal/module-augmentation.d.ts.map +1 -1
- package/dist/dts/internal/parser.d.ts +1 -1
- package/dist/dts/internal/parser.d.ts.map +1 -1
- package/dist/dts/internal/parts.d.ts +12 -12
- package/dist/dts/internal/parts.d.ts.map +1 -1
- package/dist/dts/internal/render.d.ts +13 -13
- package/dist/dts/internal/render.d.ts.map +1 -1
- package/dist/dts/internal/server.d.ts +4 -4
- package/dist/dts/internal/server.d.ts.map +1 -1
- package/dist/dts/internal/tokenizer.d.ts +1 -1
- package/dist/dts/internal/tokenizer.d.ts.map +1 -1
- package/dist/esm/ElementRef.js +3 -3
- package/dist/esm/ElementRef.js.map +1 -1
- package/dist/esm/ElementSource.js +2 -2
- package/dist/esm/ElementSource.js.map +1 -1
- package/dist/esm/EventHandler.js +1 -1
- package/dist/esm/EventHandler.js.map +1 -1
- package/dist/esm/Html.js +10 -10
- package/dist/esm/Html.js.map +1 -1
- package/dist/esm/HtmlChunk.js +1 -1
- package/dist/esm/HtmlChunk.js.map +1 -1
- package/dist/esm/Hydrate.js +5 -5
- package/dist/esm/Hydrate.js.map +1 -1
- package/dist/esm/Many.js +1 -1
- package/dist/esm/Many.js.map +1 -1
- package/dist/esm/Parser.js +4 -4
- package/dist/esm/Parser.js.map +1 -1
- package/dist/esm/Placeholder.js +2 -2
- package/dist/esm/Placeholder.js.map +1 -1
- package/dist/esm/Platform.js +1 -1
- package/dist/esm/Platform.js.map +1 -1
- package/dist/esm/Render.js +3 -3
- package/dist/esm/Render.js.map +1 -1
- package/dist/esm/RenderContext.js +1 -1
- package/dist/esm/RenderContext.js.map +1 -1
- package/dist/esm/RenderTemplate.js +1 -1
- package/dist/esm/RenderTemplate.js.map +1 -1
- package/dist/esm/TemplateInstance.js +2 -2
- package/dist/esm/TemplateInstance.js.map +1 -1
- package/dist/esm/Test.js +5 -5
- package/dist/esm/Test.js.map +1 -1
- package/dist/esm/Tokenizer.js +1 -1
- package/dist/esm/Tokenizer.js.map +1 -1
- package/dist/esm/index.js +16 -16
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/browser.js +3 -3
- package/dist/esm/internal/browser.js.map +1 -1
- package/dist/esm/internal/hydrate.js +8 -8
- package/dist/esm/internal/hydrate.js.map +1 -1
- package/dist/esm/internal/parser.js +4 -4
- package/dist/esm/internal/parser.js.map +1 -1
- package/dist/esm/internal/parts.js +2 -2
- package/dist/esm/internal/parts.js.map +1 -1
- package/dist/esm/internal/render.js +11 -11
- package/dist/esm/internal/render.js.map +1 -1
- package/dist/esm/internal/server.js +1 -1
- package/dist/esm/internal/server.js.map +1 -1
- package/dist/esm/internal/tokenizer.js +2 -2
- package/dist/esm/internal/tokenizer.js.map +1 -1
- package/dist/esm/internal/utils.js +1 -1
- package/dist/esm/internal/utils.js.map +1 -1
- package/package.json +6 -6
- package/src/Directive.ts +2 -2
- package/src/ElementRef.ts +5 -5
- package/src/ElementSource.ts +2 -2
- package/src/Entry.ts +2 -2
- package/src/EventHandler.ts +2 -2
- package/src/Html.ts +15 -15
- package/src/HtmlChunk.ts +2 -2
- package/src/Hydrate.ts +7 -7
- package/src/Many.ts +2 -2
- package/src/Parser.ts +5 -5
- package/src/Part.ts +2 -2
- package/src/Placeholder.ts +2 -2
- package/src/Platform.ts +4 -4
- package/src/Render.ts +4 -4
- package/src/RenderContext.ts +3 -3
- package/src/RenderTemplate.ts +6 -6
- package/src/Renderable.ts +2 -2
- package/src/TemplateInstance.ts +4 -4
- package/src/Test.ts +7 -7
- package/src/Tokenizer.ts +2 -2
- package/src/index.ts +16 -16
- package/src/internal/HydrateContext.ts +2 -2
- package/src/internal/browser.ts +5 -5
- package/src/internal/hydrate.ts +13 -13
- package/src/internal/module-augmentation.ts +1 -1
- package/src/internal/parser.ts +12 -5
- package/src/internal/parts.ts +6 -6
- package/src/internal/render.ts +22 -22
- package/src/internal/server.ts +5 -5
- package/src/internal/tokenizer.ts +3 -3
- package/src/internal/utils.ts +1 -1
package/src/Entry.ts
CHANGED
package/src/EventHandler.ts
CHANGED
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { type EventWithTarget, isUsingKeyModifier } from "@typed/dom/EventTarget"
|
|
5
5
|
import { type Effect, unit } from "effect/Effect"
|
|
6
|
-
import type { Placeholder } from "./Placeholder"
|
|
6
|
+
import type { Placeholder } from "./Placeholder.js"
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* @since 1.0.0
|
|
10
10
|
*/
|
|
11
|
-
export const EventHandlerTypeId = Symbol.for("./EventHandler")
|
|
11
|
+
export const EventHandlerTypeId = Symbol.for("./EventHandler.js")
|
|
12
12
|
/**
|
|
13
13
|
* @since 1.0.0
|
|
14
14
|
*/
|
package/src/Html.ts
CHANGED
|
@@ -9,21 +9,21 @@ import type { Rendered } from "@typed/wire"
|
|
|
9
9
|
import { Effect, Option } from "effect"
|
|
10
10
|
import { join } from "effect/ReadonlyArray"
|
|
11
11
|
import type * as Scope from "effect/Scope"
|
|
12
|
-
import { isDirective } from "./Directive"
|
|
13
|
-
import * as ElementRef from "./ElementRef"
|
|
14
|
-
import type { ServerEntry } from "./Entry"
|
|
15
|
-
import type { HtmlChunk, PartChunk, SparsePartChunk, TextChunk } from "./HtmlChunk"
|
|
16
|
-
import { templateToHtmlChunks } from "./HtmlChunk"
|
|
17
|
-
import { parse } from "./internal/parser"
|
|
18
|
-
import { partNodeToPart } from "./internal/server"
|
|
19
|
-
import { TEXT_START, TYPED_END, TYPED_HOLE, TYPED_START } from "./Meta"
|
|
20
|
-
import type { Placeholder } from "./Placeholder"
|
|
21
|
-
import type { Renderable } from "./Renderable"
|
|
22
|
-
import { RenderContext } from "./RenderContext"
|
|
23
|
-
import { HtmlRenderEvent, isRenderEvent } from "./RenderEvent"
|
|
24
|
-
import type { RenderEvent } from "./RenderEvent"
|
|
25
|
-
import { RenderTemplate } from "./RenderTemplate"
|
|
26
|
-
import { TemplateInstance } from "./TemplateInstance"
|
|
12
|
+
import { isDirective } from "./Directive.js"
|
|
13
|
+
import * as ElementRef from "./ElementRef.js"
|
|
14
|
+
import type { ServerEntry } from "./Entry.js"
|
|
15
|
+
import type { HtmlChunk, PartChunk, SparsePartChunk, TextChunk } from "./HtmlChunk.js"
|
|
16
|
+
import { templateToHtmlChunks } from "./HtmlChunk.js"
|
|
17
|
+
import { parse } from "./internal/parser.js"
|
|
18
|
+
import { partNodeToPart } from "./internal/server.js"
|
|
19
|
+
import { TEXT_START, TYPED_END, TYPED_HOLE, TYPED_START } from "./Meta.js"
|
|
20
|
+
import type { Placeholder } from "./Placeholder.js"
|
|
21
|
+
import type { Renderable } from "./Renderable.js"
|
|
22
|
+
import { RenderContext } from "./RenderContext.js"
|
|
23
|
+
import { HtmlRenderEvent, isRenderEvent } from "./RenderEvent.js"
|
|
24
|
+
import type { RenderEvent } from "./RenderEvent.js"
|
|
25
|
+
import { RenderTemplate } from "./RenderTemplate.js"
|
|
26
|
+
import { TemplateInstance } from "./TemplateInstance.js"
|
|
27
27
|
|
|
28
28
|
const toHtml = (r: RenderEvent) => (r as HtmlRenderEvent).html
|
|
29
29
|
|
package/src/HtmlChunk.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
import { TYPED_HASH } from "./Meta"
|
|
4
|
+
import { TYPED_HASH } from "./Meta.js"
|
|
5
5
|
import type {
|
|
6
6
|
Attribute,
|
|
7
7
|
ElementNode,
|
|
@@ -13,7 +13,7 @@ import type {
|
|
|
13
13
|
Template,
|
|
14
14
|
Text,
|
|
15
15
|
TextOnlyElement
|
|
16
|
-
} from "./Template"
|
|
16
|
+
} from "./Template.js"
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* @since 1.0.0
|
package/src/Hydrate.ts
CHANGED
|
@@ -8,13 +8,13 @@ import { RootElement } from "@typed/dom/RootElement"
|
|
|
8
8
|
import * as Fx from "@typed/fx/Fx"
|
|
9
9
|
import * as Effect from "effect/Effect"
|
|
10
10
|
import * as Layer from "effect/Layer"
|
|
11
|
-
import { findRootParentChildNodes, hydrateTemplate } from "./internal/hydrate"
|
|
12
|
-
import { HydrateContext } from "./internal/HydrateContext"
|
|
13
|
-
import { attachRoot } from "./internal/render"
|
|
14
|
-
import type { ToRendered } from "./Render"
|
|
15
|
-
import { RenderContext } from "./RenderContext"
|
|
16
|
-
import { type RenderEvent } from "./RenderEvent"
|
|
17
|
-
import { RenderTemplate } from "./RenderTemplate"
|
|
11
|
+
import { findRootParentChildNodes, hydrateTemplate } from "./internal/hydrate.js"
|
|
12
|
+
import { HydrateContext } from "./internal/HydrateContext.js"
|
|
13
|
+
import { attachRoot } from "./internal/render.js"
|
|
14
|
+
import type { ToRendered } from "./Render.js"
|
|
15
|
+
import { RenderContext } from "./RenderContext.js"
|
|
16
|
+
import { type RenderEvent } from "./RenderEvent.js"
|
|
17
|
+
import { RenderTemplate } from "./RenderTemplate.js"
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* @since 1.0.0
|
package/src/Many.ts
CHANGED
|
@@ -9,8 +9,8 @@ import * as RefSubject from "@typed/fx/RefSubject"
|
|
|
9
9
|
import { makeHold } from "@typed/fx/Subject"
|
|
10
10
|
import * as Effect from "effect/Effect"
|
|
11
11
|
import { dual } from "effect/Function"
|
|
12
|
-
import { RenderContext } from "./RenderContext"
|
|
13
|
-
import { type RenderEvent } from "./RenderEvent"
|
|
12
|
+
import { RenderContext } from "./RenderContext.js"
|
|
13
|
+
import { type RenderEvent } from "./RenderEvent.js"
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @since 1.0.0
|
package/src/Parser.ts
CHANGED
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
|
|
5
5
|
import * as Chunk from "effect/Chunk"
|
|
6
6
|
import { globalValue } from "effect/GlobalValue"
|
|
7
|
-
import { templateHash } from "./internal/parser"
|
|
8
|
-
import * as Template from "./Template"
|
|
9
|
-
import type { Token } from "./Token"
|
|
10
|
-
import { tokenize } from "./Tokenizer"
|
|
7
|
+
import { templateHash } from "./internal/parser.js"
|
|
8
|
+
import * as Template from "./Template.js"
|
|
9
|
+
import type { Token } from "./Token.js"
|
|
10
|
+
import { tokenize } from "./Tokenizer.js"
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* @since 1.0.0
|
|
@@ -454,4 +454,4 @@ class ParserImpl {
|
|
|
454
454
|
/**
|
|
455
455
|
* @since 1.0.0
|
|
456
456
|
*/
|
|
457
|
-
export const parser: Parser = globalValue(Symbol.for("./Parser"), () => new ParserImpl())
|
|
457
|
+
export const parser: Parser = globalValue(Symbol.for("./Parser.js"), () => new ParserImpl())
|
package/src/Part.ts
CHANGED
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
import type { Cause } from "effect/Cause"
|
|
6
6
|
import type { Effect } from "effect/Effect"
|
|
7
7
|
import type { Scope } from "effect/Scope"
|
|
8
|
-
import type { ElementSource } from "./ElementSource"
|
|
9
|
-
import type { EventHandler } from "./EventHandler"
|
|
8
|
+
import type { ElementSource } from "./ElementSource.js"
|
|
9
|
+
import type { EventHandler } from "./EventHandler.js"
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* @since 1.0.0
|
package/src/Placeholder.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import "./internal/module-augmentation"
|
|
5
|
+
import "./internal/module-augmentation.js"
|
|
6
6
|
import type { Fx } from "@typed/fx/Fx"
|
|
7
7
|
import { isFx } from "@typed/fx/Fx"
|
|
8
8
|
import * as RefSubject from "@typed/fx/RefSubject"
|
|
@@ -12,7 +12,7 @@ import { Effect } from "effect"
|
|
|
12
12
|
/**
|
|
13
13
|
* @since 1.0.0
|
|
14
14
|
*/
|
|
15
|
-
export const PlaceholderTypeId = Symbol.for("./Placholder")
|
|
15
|
+
export const PlaceholderTypeId = Symbol.for("./Placholder.js")
|
|
16
16
|
/**
|
|
17
17
|
* @since 1.0.0
|
|
18
18
|
*/
|
package/src/Platform.ts
CHANGED
|
@@ -8,10 +8,10 @@ import * as HttpServer from "@effect/platform/HttpServer"
|
|
|
8
8
|
import type * as Fx from "@typed/fx/Fx"
|
|
9
9
|
import { toStream } from "@typed/fx/Stream"
|
|
10
10
|
import { Effect, Option, Stream } from "effect"
|
|
11
|
-
import { renderToHtml } from "./Html"
|
|
12
|
-
import type * as RenderContext from "./RenderContext"
|
|
13
|
-
import type { RenderEvent } from "./RenderEvent"
|
|
14
|
-
import type { RenderTemplate } from "./RenderTemplate"
|
|
11
|
+
import { renderToHtml } from "./Html.js"
|
|
12
|
+
import type * as RenderContext from "./RenderContext.js"
|
|
13
|
+
import type { RenderEvent } from "./RenderEvent.js"
|
|
14
|
+
import type { RenderTemplate } from "./RenderTemplate.js"
|
|
15
15
|
|
|
16
16
|
const HTML_CONTENT_TYPE = "text/html"
|
|
17
17
|
const CAMEL_CASE_CONTENT_TYPE = { contentType: HTML_CONTENT_TYPE }
|
package/src/Render.ts
CHANGED
|
@@ -8,10 +8,10 @@ import { RootElement } from "@typed/dom/RootElement"
|
|
|
8
8
|
import * as Fx from "@typed/fx/Fx"
|
|
9
9
|
import { type Rendered } from "@typed/wire"
|
|
10
10
|
import * as Effect from "effect/Effect"
|
|
11
|
-
import { attachRoot, renderTemplate } from "./internal/render"
|
|
12
|
-
import { RenderContext } from "./RenderContext"
|
|
13
|
-
import { type RenderEvent } from "./RenderEvent"
|
|
14
|
-
import { RenderTemplate } from "./RenderTemplate"
|
|
11
|
+
import { attachRoot, renderTemplate } from "./internal/render.js"
|
|
12
|
+
import { RenderContext } from "./RenderContext.js"
|
|
13
|
+
import { type RenderEvent } from "./RenderEvent.js"
|
|
14
|
+
import { RenderTemplate } from "./RenderTemplate.js"
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* @since 1.0.0
|
package/src/RenderContext.ts
CHANGED
|
@@ -13,8 +13,8 @@ import * as Idle from "@typed/fx/Idle"
|
|
|
13
13
|
import type { Rendered } from "@typed/wire"
|
|
14
14
|
import { Effect, Layer, Option } from "effect"
|
|
15
15
|
import * as Scope from "effect/Scope"
|
|
16
|
-
import type { Entry } from "./Entry"
|
|
17
|
-
import type { Part, SparsePart } from "./Part"
|
|
16
|
+
import type { Entry } from "./Entry.js"
|
|
17
|
+
import type { Part, SparsePart } from "./Part.js"
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* The context in which templates are rendered within
|
|
@@ -47,7 +47,7 @@ export interface RenderContext {
|
|
|
47
47
|
* @since 1.0.0
|
|
48
48
|
*/
|
|
49
49
|
export const RenderContext: Context.Tagged<RenderContext, RenderContext> = Context.Tagged<RenderContext>(
|
|
50
|
-
"./RenderContext"
|
|
50
|
+
"./RenderContext.js"
|
|
51
51
|
)
|
|
52
52
|
|
|
53
53
|
/**
|
package/src/RenderTemplate.ts
CHANGED
|
@@ -7,11 +7,11 @@ import * as Fx from "@typed/fx/Fx"
|
|
|
7
7
|
import type { Rendered } from "@typed/wire"
|
|
8
8
|
import type * as Effect from "effect/Effect"
|
|
9
9
|
import type { Scope } from "effect/Scope"
|
|
10
|
-
import type { ElementRef } from "./ElementRef"
|
|
11
|
-
import type { Placeholder } from "./Placeholder"
|
|
12
|
-
import type { Renderable } from "./Renderable"
|
|
13
|
-
import type { RenderEvent } from "./RenderEvent"
|
|
14
|
-
import type { TemplateInstance } from "./TemplateInstance"
|
|
10
|
+
import type { ElementRef } from "./ElementRef.js"
|
|
11
|
+
import type { Placeholder } from "./Placeholder.js"
|
|
12
|
+
import type { Renderable } from "./Renderable.js"
|
|
13
|
+
import type { RenderEvent } from "./RenderEvent.js"
|
|
14
|
+
import type { TemplateInstance } from "./TemplateInstance.js"
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
17
|
* @since 1.0.0
|
|
@@ -38,7 +38,7 @@ export const RenderTemplate: Context.Tagged<RenderTemplate, RenderTemplate> = Co
|
|
|
38
38
|
RenderTemplate,
|
|
39
39
|
RenderTemplate
|
|
40
40
|
>(
|
|
41
|
-
"./RenderTemplate"
|
|
41
|
+
"./RenderTemplate.js"
|
|
42
42
|
)
|
|
43
43
|
|
|
44
44
|
/**
|
package/src/Renderable.ts
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
import type { Fx } from "@typed/fx/Fx"
|
|
5
5
|
import type { Rendered } from "@typed/wire"
|
|
6
6
|
import type { Effect } from "effect/Effect"
|
|
7
|
-
import type { Placeholder } from "./Placeholder"
|
|
8
|
-
import type { RenderEvent } from "./RenderEvent"
|
|
7
|
+
import type { Placeholder } from "./Placeholder.js"
|
|
8
|
+
import type { RenderEvent } from "./RenderEvent.js"
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* @since 1.0.0
|
package/src/TemplateInstance.ts
CHANGED
|
@@ -8,14 +8,14 @@ import type * as Versioned from "@typed/fx/Versioned"
|
|
|
8
8
|
import type { Rendered } from "@typed/wire"
|
|
9
9
|
import type { NoSuchElementException } from "effect/Cause"
|
|
10
10
|
import type * as Effect from "effect/Effect"
|
|
11
|
-
import { type ElementRef, ElementRefTypeId } from "./ElementRef"
|
|
12
|
-
import type { Placeholder } from "./Placeholder"
|
|
13
|
-
import type { RenderEvent } from "./RenderEvent"
|
|
11
|
+
import { type ElementRef, ElementRefTypeId } from "./ElementRef.js"
|
|
12
|
+
import type { Placeholder } from "./Placeholder.js"
|
|
13
|
+
import type { RenderEvent } from "./RenderEvent.js"
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* @since 1.0.0
|
|
17
17
|
*/
|
|
18
|
-
export const TemplateInstanceTypeId = Symbol.for("./TemplateInstance")
|
|
18
|
+
export const TemplateInstanceTypeId = Symbol.for("./TemplateInstance.js")
|
|
19
19
|
/**
|
|
20
20
|
* @since 1.0.0
|
|
21
21
|
*/
|
package/src/Test.ts
CHANGED
|
@@ -18,13 +18,13 @@ import * as Fiber from "effect/Fiber"
|
|
|
18
18
|
import type * as Scope from "effect/Scope"
|
|
19
19
|
import * as happyDOM from "happy-dom"
|
|
20
20
|
import type IHappyDOMOptions from "happy-dom/lib/window/IHappyDOMOptions.js"
|
|
21
|
-
import * as ElementRef from "./ElementRef"
|
|
22
|
-
import { ROOT_CSS_SELECTOR } from "./ElementSource"
|
|
23
|
-
import { adjustTime } from "./internal/utils"
|
|
24
|
-
import { render } from "./Render"
|
|
25
|
-
import * as RenderContext from "./RenderContext"
|
|
26
|
-
import type { RenderEvent } from "./RenderEvent"
|
|
27
|
-
import type { RenderTemplate } from "./RenderTemplate"
|
|
21
|
+
import * as ElementRef from "./ElementRef.js"
|
|
22
|
+
import { ROOT_CSS_SELECTOR } from "./ElementSource.js"
|
|
23
|
+
import { adjustTime } from "./internal/utils.js"
|
|
24
|
+
import { render } from "./Render.js"
|
|
25
|
+
import * as RenderContext from "./RenderContext.js"
|
|
26
|
+
import type { RenderEvent } from "./RenderEvent.js"
|
|
27
|
+
import type { RenderTemplate } from "./RenderTemplate.js"
|
|
28
28
|
|
|
29
29
|
// TODO: Instrument RenderTemplate to log info about when specific values are hanging for too long
|
|
30
30
|
// TODO: Input events
|
package/src/Tokenizer.ts
CHANGED
package/src/index.ts
CHANGED
|
@@ -2,65 +2,65 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import "./internal/module-augmentation"
|
|
5
|
+
import "./internal/module-augmentation.js"
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* @since 1.0.0
|
|
9
9
|
*/
|
|
10
|
-
export * as Directive from "./Directive"
|
|
10
|
+
export * as Directive from "./Directive.js"
|
|
11
11
|
/**
|
|
12
12
|
* @since 1.0.0
|
|
13
13
|
*/
|
|
14
|
-
export * as ElementRef from "./ElementRef"
|
|
14
|
+
export * as ElementRef from "./ElementRef.js"
|
|
15
15
|
/**
|
|
16
16
|
* @since 1.0.0
|
|
17
17
|
*/
|
|
18
|
-
export * as ElementSource from "./ElementSource"
|
|
18
|
+
export * as ElementSource from "./ElementSource.js"
|
|
19
19
|
/**
|
|
20
20
|
* @since 1.0.0
|
|
21
21
|
*/
|
|
22
|
-
export * as EventHandler from "./EventHandler"
|
|
22
|
+
export * as EventHandler from "./EventHandler.js"
|
|
23
23
|
/**
|
|
24
24
|
* @since 1.0.0
|
|
25
25
|
*/
|
|
26
|
-
export * from "./Html"
|
|
26
|
+
export * from "./Html.js"
|
|
27
27
|
/**
|
|
28
28
|
* @since 1.0.0
|
|
29
29
|
*/
|
|
30
|
-
export * from "./Hydrate"
|
|
30
|
+
export * from "./Hydrate.js"
|
|
31
31
|
/**
|
|
32
32
|
* @since 1.0.0
|
|
33
33
|
*/
|
|
34
|
-
export * from "./Many"
|
|
34
|
+
export * from "./Many.js"
|
|
35
35
|
/**
|
|
36
36
|
* @since 1.0.0
|
|
37
37
|
*/
|
|
38
|
-
export * from "./Part"
|
|
38
|
+
export * from "./Part.js"
|
|
39
39
|
/**
|
|
40
40
|
* @since 1.0.0
|
|
41
41
|
*/
|
|
42
|
-
export * from "./Placeholder"
|
|
42
|
+
export * from "./Placeholder.js"
|
|
43
43
|
/**
|
|
44
44
|
* @since 1.0.0
|
|
45
45
|
*/
|
|
46
|
-
export * from "./Render"
|
|
46
|
+
export * from "./Render.js"
|
|
47
47
|
/**
|
|
48
48
|
* @since 1.0.0
|
|
49
49
|
*/
|
|
50
|
-
export * from "./Renderable"
|
|
50
|
+
export * from "./Renderable.js"
|
|
51
51
|
/**
|
|
52
52
|
* @since 1.0.0
|
|
53
53
|
*/
|
|
54
|
-
export * as RenderContext from "./RenderContext"
|
|
54
|
+
export * as RenderContext from "./RenderContext.js"
|
|
55
55
|
/**
|
|
56
56
|
* @since 1.0.0
|
|
57
57
|
*/
|
|
58
|
-
export * from "./RenderEvent"
|
|
58
|
+
export * from "./RenderEvent.js"
|
|
59
59
|
/**
|
|
60
60
|
* @since 1.0.0
|
|
61
61
|
*/
|
|
62
|
-
export * from "./RenderTemplate"
|
|
62
|
+
export * from "./RenderTemplate.js"
|
|
63
63
|
/**
|
|
64
64
|
* @since 1.0.0
|
|
65
65
|
*/
|
|
66
|
-
export * from "./TemplateInstance"
|
|
66
|
+
export * from "./TemplateInstance.js"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Tagged } from "@typed/context"
|
|
2
|
-
import type { Template } from "../Template"
|
|
3
|
-
import type { ParentChildNodes } from "./utils"
|
|
2
|
+
import type { Template } from "../Template.js"
|
|
3
|
+
import type { ParentChildNodes } from "./utils.js"
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Used Internally to pass context down to components for hydration
|
package/src/internal/browser.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { diffable, isComment } from "@typed/wire"
|
|
2
2
|
import udomdiff from "udomdiff"
|
|
3
|
-
import type { RenderContext } from "../RenderContext"
|
|
4
|
-
import type { RenderEvent } from "../RenderEvent"
|
|
5
|
-
import { isRenderEvent } from "../RenderEvent"
|
|
6
|
-
import { NodePartImpl } from "./parts"
|
|
7
|
-
import { findHoleComment, isCommentWithValue } from "./utils"
|
|
3
|
+
import type { RenderContext } from "../RenderContext.js"
|
|
4
|
+
import type { RenderEvent } from "../RenderEvent.js"
|
|
5
|
+
import { isRenderEvent } from "../RenderEvent.js"
|
|
6
|
+
import { NodePartImpl } from "./parts.js"
|
|
7
|
+
import { findHoleComment, isCommentWithValue } from "./utils.js"
|
|
8
8
|
|
|
9
9
|
export function makeRenderNodePart(
|
|
10
10
|
index: number,
|
package/src/internal/hydrate.ts
CHANGED
|
@@ -3,21 +3,21 @@ import * as Subject from "@typed/fx/Subject"
|
|
|
3
3
|
import type { Rendered } from "@typed/wire"
|
|
4
4
|
import type { Cause } from "effect"
|
|
5
5
|
import { Effect } from "effect"
|
|
6
|
-
import * as ElementRef from "../ElementRef"
|
|
7
|
-
import type { Placeholder } from "../Placeholder"
|
|
8
|
-
import type { Renderable } from "../Renderable"
|
|
9
|
-
import type { RenderContext } from "../RenderContext"
|
|
10
|
-
import { DomRenderEvent } from "../RenderEvent"
|
|
11
|
-
import type { RenderTemplate } from "../RenderTemplate"
|
|
12
|
-
import { TemplateInstance } from "../TemplateInstance"
|
|
13
|
-
import { indexRefCounter } from "./indexRefCounter"
|
|
6
|
+
import * as ElementRef from "../ElementRef.js"
|
|
7
|
+
import type { Placeholder } from "../Placeholder.js"
|
|
8
|
+
import type { Renderable } from "../Renderable.js"
|
|
9
|
+
import type { RenderContext } from "../RenderContext.js"
|
|
10
|
+
import { DomRenderEvent } from "../RenderEvent.js"
|
|
11
|
+
import type { RenderTemplate } from "../RenderTemplate.js"
|
|
12
|
+
import { TemplateInstance } from "../TemplateInstance.js"
|
|
13
|
+
import { indexRefCounter } from "./indexRefCounter.js"
|
|
14
14
|
|
|
15
15
|
import { unsafeGet } from "@typed/context"
|
|
16
16
|
|
|
17
|
-
import type { Template } from "../Template"
|
|
18
|
-
import { CouldNotFindCommentError, CouldNotFindRootElement } from "./errors"
|
|
19
|
-
import { HydrateContext } from "./HydrateContext"
|
|
20
|
-
import { buildParts, getBrowserEntry, renderTemplate, renderValues } from "./render"
|
|
17
|
+
import type { Template } from "../Template.js"
|
|
18
|
+
import { CouldNotFindCommentError, CouldNotFindRootElement } from "./errors.js"
|
|
19
|
+
import { HydrateContext } from "./HydrateContext.js"
|
|
20
|
+
import { buildParts, getBrowserEntry, renderTemplate, renderValues } from "./render.js"
|
|
21
21
|
import {
|
|
22
22
|
findPath,
|
|
23
23
|
getPreviousNodes,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
isCommentWithValue,
|
|
26
26
|
isHtmlElement,
|
|
27
27
|
type ParentChildNodes
|
|
28
|
-
} from "./utils"
|
|
28
|
+
} from "./utils.js"
|
|
29
29
|
|
|
30
30
|
// TODO: Handle missing comment errors
|
|
31
31
|
|
package/src/internal/parser.ts
CHANGED
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import * as Chunk from "effect/Chunk"
|
|
2
2
|
import { globalValue } from "effect/GlobalValue"
|
|
3
3
|
import * as Option from "effect/Option"
|
|
4
|
-
import * as Template from "../Template"
|
|
5
|
-
import { SELF_CLOSING_TAGS, TEXT_ONLY_NODES_REGEX } from "../Token"
|
|
6
|
-
import type { TextChunk } from "./chunks"
|
|
7
|
-
import {
|
|
4
|
+
import * as Template from "../Template.js"
|
|
5
|
+
import { SELF_CLOSING_TAGS, TEXT_ONLY_NODES_REGEX } from "../Token.js"
|
|
6
|
+
import type { TextChunk } from "./chunks.js"
|
|
7
|
+
import {
|
|
8
|
+
getPart,
|
|
9
|
+
getStrictPart,
|
|
10
|
+
getTextUntilCloseBrace,
|
|
11
|
+
getTextUntilPart,
|
|
12
|
+
getWhitespace,
|
|
13
|
+
PART_STRING
|
|
14
|
+
} from "./chunks.js"
|
|
8
15
|
|
|
9
16
|
// TODO: Consider ways to surface useful errors and warnings.
|
|
10
17
|
// TODO: Profile for performance optimization
|
|
@@ -610,7 +617,7 @@ function parseTextAndParts<T>(s: string, f: (index: number) => T): Array<Templat
|
|
|
610
617
|
return out
|
|
611
618
|
}
|
|
612
619
|
|
|
613
|
-
export const parser: Parser = globalValue(Symbol.for("../Parser2"), () => new ParserImpl())
|
|
620
|
+
export const parser: Parser = globalValue(Symbol.for("../Parser2.js"), () => new ParserImpl())
|
|
614
621
|
|
|
615
622
|
const digestSize = 2
|
|
616
623
|
const multiplier = 33
|
package/src/internal/parts.ts
CHANGED
|
@@ -11,9 +11,9 @@ import * as Fiber from "effect/Fiber"
|
|
|
11
11
|
import * as ReadonlyArray from "effect/ReadonlyArray"
|
|
12
12
|
import type { Scope } from "effect/Scope"
|
|
13
13
|
import * as SynchronizedRef from "effect/SynchronizedRef"
|
|
14
|
-
import type { ElementRef } from "../ElementRef"
|
|
15
|
-
import type { ElementSource } from "../ElementSource"
|
|
16
|
-
import { unescape } from "../HtmlChunk"
|
|
14
|
+
import type { ElementRef } from "../ElementRef.js"
|
|
15
|
+
import type { ElementSource } from "../ElementSource.js"
|
|
16
|
+
import { unescape } from "../HtmlChunk.js"
|
|
17
17
|
import type {
|
|
18
18
|
AttributePart,
|
|
19
19
|
BooleanPart,
|
|
@@ -31,9 +31,9 @@ import type {
|
|
|
31
31
|
SparsePart,
|
|
32
32
|
StaticText,
|
|
33
33
|
TextPart
|
|
34
|
-
} from "../Part"
|
|
35
|
-
import type { RenderContext } from "../RenderContext"
|
|
36
|
-
import { findHoleComment } from "./utils"
|
|
34
|
+
} from "../Part.js"
|
|
35
|
+
import type { RenderContext } from "../RenderContext.js"
|
|
36
|
+
import { findHoleComment } from "./utils.js"
|
|
37
37
|
|
|
38
38
|
const strictEq = strict<any>()
|
|
39
39
|
|
package/src/internal/render.ts
CHANGED
|
@@ -7,25 +7,25 @@ import { Effect } from "effect"
|
|
|
7
7
|
import type { Cause } from "effect/Cause"
|
|
8
8
|
import { replace } from "effect/ReadonlyArray"
|
|
9
9
|
import type { Scope } from "effect/Scope"
|
|
10
|
-
import { isDirective } from "../Directive"
|
|
11
|
-
import * as ElementRef from "../ElementRef"
|
|
12
|
-
import type { BrowserEntry } from "../Entry"
|
|
13
|
-
import * as EventHandler from "../EventHandler"
|
|
14
|
-
import type { AttributePart, ClassNamePart, CommentPart, Part, Parts, SparsePart, StaticText } from "../Part"
|
|
15
|
-
import type { Placeholder } from "../Placeholder"
|
|
16
|
-
import type { ToRendered } from "../Render"
|
|
17
|
-
import type { Renderable } from "../Renderable"
|
|
18
|
-
import type { RenderContext } from "../RenderContext"
|
|
19
|
-
import type { RenderEvent } from "../RenderEvent"
|
|
20
|
-
import { DomRenderEvent } from "../RenderEvent"
|
|
21
|
-
import type { RenderTemplate } from "../RenderTemplate"
|
|
22
|
-
import type * as Template from "../Template"
|
|
23
|
-
import { TemplateInstance } from "../TemplateInstance"
|
|
24
|
-
import { makeRenderNodePart } from "./browser"
|
|
25
|
-
import { HydrateContext } from "./HydrateContext"
|
|
26
|
-
import type { IndexRefCounter } from "./indexRefCounter"
|
|
27
|
-
import { indexRefCounter } from "./indexRefCounter"
|
|
28
|
-
import { parse } from "./parser"
|
|
10
|
+
import { isDirective } from "../Directive.js"
|
|
11
|
+
import * as ElementRef from "../ElementRef.js"
|
|
12
|
+
import type { BrowserEntry } from "../Entry.js"
|
|
13
|
+
import * as EventHandler from "../EventHandler.js"
|
|
14
|
+
import type { AttributePart, ClassNamePart, CommentPart, Part, Parts, SparsePart, StaticText } from "../Part.js"
|
|
15
|
+
import type { Placeholder } from "../Placeholder.js"
|
|
16
|
+
import type { ToRendered } from "../Render.js"
|
|
17
|
+
import type { Renderable } from "../Renderable.js"
|
|
18
|
+
import type { RenderContext } from "../RenderContext.js"
|
|
19
|
+
import type { RenderEvent } from "../RenderEvent.js"
|
|
20
|
+
import { DomRenderEvent } from "../RenderEvent.js"
|
|
21
|
+
import type { RenderTemplate } from "../RenderTemplate.js"
|
|
22
|
+
import type * as Template from "../Template.js"
|
|
23
|
+
import { TemplateInstance } from "../TemplateInstance.js"
|
|
24
|
+
import { makeRenderNodePart } from "./browser.js"
|
|
25
|
+
import { HydrateContext } from "./HydrateContext.js"
|
|
26
|
+
import type { IndexRefCounter } from "./indexRefCounter.js"
|
|
27
|
+
import { indexRefCounter } from "./indexRefCounter.js"
|
|
28
|
+
import { parse } from "./parser.js"
|
|
29
29
|
import {
|
|
30
30
|
AttributePartImpl,
|
|
31
31
|
BooleanPartImpl,
|
|
@@ -40,9 +40,9 @@ import {
|
|
|
40
40
|
SparseCommentPartImpl,
|
|
41
41
|
StaticTextImpl,
|
|
42
42
|
TextPartImpl
|
|
43
|
-
} from "./parts"
|
|
44
|
-
import type { ParentChildNodes } from "./utils"
|
|
45
|
-
import { findPath } from "./utils"
|
|
43
|
+
} from "./parts.js"
|
|
44
|
+
import type { ParentChildNodes } from "./utils.js"
|
|
45
|
+
import { findPath } from "./utils.js"
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
48
|
* Here for "standard" browser rendering, a TemplateInstance is effectively a live
|
package/src/internal/server.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect"
|
|
2
|
-
import type { HtmlChunk, PartChunk, SparsePartChunk } from "../HtmlChunk"
|
|
2
|
+
import type { HtmlChunk, PartChunk, SparsePartChunk } from "../HtmlChunk.js"
|
|
3
3
|
import type {
|
|
4
4
|
AttributePart,
|
|
5
5
|
ClassNamePart,
|
|
@@ -10,9 +10,9 @@ import type {
|
|
|
10
10
|
SparseCommentPart,
|
|
11
11
|
SparsePart,
|
|
12
12
|
StaticText
|
|
13
|
-
} from "../Part"
|
|
14
|
-
import type { Renderable } from "../Renderable"
|
|
15
|
-
import type { PartNode, SparseAttrNode, SparseClassNameNode, SparseCommentNode, SparsePartNode } from "../Template"
|
|
13
|
+
} from "../Part.js"
|
|
14
|
+
import type { Renderable } from "../Renderable.js"
|
|
15
|
+
import type { PartNode, SparseAttrNode, SparseClassNameNode, SparseCommentNode, SparsePartNode } from "../Template.js"
|
|
16
16
|
import {
|
|
17
17
|
AttributePartImpl,
|
|
18
18
|
BooleanPartImpl,
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
SparseCommentPartImpl,
|
|
27
27
|
StaticTextImpl,
|
|
28
28
|
TextPartImpl
|
|
29
|
-
} from "./parts"
|
|
29
|
+
} from "./parts.js"
|
|
30
30
|
|
|
31
31
|
export type RenderChunk<R, E> =
|
|
32
32
|
| TextRenderChunk
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as Token from "../Token"
|
|
1
|
+
import * as Token from "../Token.js"
|
|
2
2
|
import {
|
|
3
3
|
getAllTextUntilElementClose,
|
|
4
4
|
getAttributeWithoutQuotes,
|
|
@@ -15,8 +15,8 @@ import {
|
|
|
15
15
|
getWhitespace,
|
|
16
16
|
PART_REGEX,
|
|
17
17
|
PART_STRING
|
|
18
|
-
} from "./chunks"
|
|
19
|
-
import type { TextChunk } from "./chunks"
|
|
18
|
+
} from "./chunks.js"
|
|
19
|
+
import type { TextChunk } from "./chunks.js"
|
|
20
20
|
|
|
21
21
|
export function tokenize(template: ReadonlyArray<string>): Iterable<Token.Token> {
|
|
22
22
|
return new Tokenizer(template)
|