@typed/template 0.12.0 → 0.14.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.
Files changed (123) hide show
  1. package/compiler-tools/package.json +6 -0
  2. package/dist/cjs/Directive.js +1 -1
  3. package/dist/cjs/Directive.js.map +1 -1
  4. package/dist/cjs/ElementRef.js +4 -4
  5. package/dist/cjs/ElementRef.js.map +1 -1
  6. package/dist/cjs/ElementSource.js +11 -7
  7. package/dist/cjs/ElementSource.js.map +1 -1
  8. package/dist/cjs/EventHandler.js +1 -1
  9. package/dist/cjs/EventHandler.js.map +1 -1
  10. package/dist/cjs/Html.js +10 -10
  11. package/dist/cjs/Html.js.map +1 -1
  12. package/dist/cjs/Hydrate.js +4 -18
  13. package/dist/cjs/Hydrate.js.map +1 -1
  14. package/dist/cjs/Many.js +4 -4
  15. package/dist/cjs/Many.js.map +1 -1
  16. package/dist/cjs/Placeholder.js +2 -2
  17. package/dist/cjs/Placeholder.js.map +1 -1
  18. package/dist/cjs/Platform.js +10 -11
  19. package/dist/cjs/Platform.js.map +1 -1
  20. package/dist/cjs/Render.js +5 -5
  21. package/dist/cjs/Render.js.map +1 -1
  22. package/dist/cjs/RenderContext.js +3 -3
  23. package/dist/cjs/RenderContext.js.map +1 -1
  24. package/dist/cjs/RenderQueue.js +11 -9
  25. package/dist/cjs/RenderQueue.js.map +1 -1
  26. package/dist/cjs/RenderTemplate.js +2 -2
  27. package/dist/cjs/RenderTemplate.js.map +1 -1
  28. package/dist/cjs/Template.js.map +1 -1
  29. package/dist/cjs/Test.js +12 -12
  30. package/dist/cjs/Test.js.map +1 -1
  31. package/dist/cjs/Vitest.js +5 -5
  32. package/dist/cjs/Vitest.js.map +1 -1
  33. package/dist/cjs/compiler-tools.js +100 -0
  34. package/dist/cjs/compiler-tools.js.map +1 -0
  35. package/dist/cjs/index.js +6 -6
  36. package/dist/cjs/index.js.map +1 -1
  37. package/dist/cjs/internal/EventSource.js +4 -4
  38. package/dist/cjs/internal/EventSource.js.map +1 -1
  39. package/dist/cjs/internal/HydrateContext.js.map +1 -1
  40. package/dist/cjs/internal/browser.js +1 -1
  41. package/dist/cjs/internal/browser.js.map +1 -1
  42. package/dist/cjs/internal/indexRefCounter.js +4 -4
  43. package/dist/cjs/internal/indexRefCounter.js.map +1 -1
  44. package/dist/cjs/internal/parser.js +4 -4
  45. package/dist/cjs/internal/parser.js.map +1 -1
  46. package/dist/cjs/internal/parser2.js +1 -1
  47. package/dist/cjs/internal/parser2.js.map +1 -1
  48. package/dist/cjs/internal/server-parts.js +2 -2
  49. package/dist/cjs/internal/server-parts.js.map +1 -1
  50. package/dist/cjs/internal/server.js +1 -1
  51. package/dist/cjs/internal/server.js.map +1 -1
  52. package/dist/cjs/internal/utils.js +2 -2
  53. package/dist/cjs/internal/utils.js.map +1 -1
  54. package/dist/cjs/internal/v2/parts.js +1 -1
  55. package/dist/cjs/internal/v2/parts.js.map +1 -1
  56. package/dist/cjs/internal/v2/render-sync-parts.js +3 -3
  57. package/dist/cjs/internal/v2/render-sync-parts.js.map +1 -1
  58. package/dist/cjs/internal/v2/render.js +250 -75
  59. package/dist/cjs/internal/v2/render.js.map +1 -1
  60. package/dist/cjs/internal/v2/sync-parts.js +1 -1
  61. package/dist/cjs/internal/v2/sync-parts.js.map +1 -1
  62. package/dist/dts/ElementRef.d.ts.map +1 -1
  63. package/dist/dts/ElementSource.d.ts +3 -1
  64. package/dist/dts/ElementSource.d.ts.map +1 -1
  65. package/dist/dts/EventHandler.d.ts.map +1 -1
  66. package/dist/dts/Html.d.ts +1 -1
  67. package/dist/dts/Html.d.ts.map +1 -1
  68. package/dist/dts/Hydrate.d.ts +2 -9
  69. package/dist/dts/Hydrate.d.ts.map +1 -1
  70. package/dist/dts/Platform.d.ts +5 -5
  71. package/dist/dts/Platform.d.ts.map +1 -1
  72. package/dist/dts/Render.d.ts.map +1 -1
  73. package/dist/dts/RenderQueue.d.ts.map +1 -1
  74. package/dist/dts/Template.d.ts +3 -3
  75. package/dist/dts/Template.d.ts.map +1 -1
  76. package/dist/dts/Vitest.d.ts.map +1 -1
  77. package/dist/dts/compiler-tools.d.ts +143 -0
  78. package/dist/dts/compiler-tools.d.ts.map +1 -0
  79. package/dist/dts/internal/server-parts.d.ts.map +1 -1
  80. package/dist/dts/internal/utils.d.ts.map +1 -1
  81. package/dist/dts/internal/v2/parts.d.ts.map +1 -1
  82. package/dist/dts/internal/v2/render.d.ts +31 -10
  83. package/dist/dts/internal/v2/render.d.ts.map +1 -1
  84. package/dist/dts/internal/v2/sync-parts.d.ts.map +1 -1
  85. package/dist/esm/ElementRef.js +1 -1
  86. package/dist/esm/ElementRef.js.map +1 -1
  87. package/dist/esm/ElementSource.js +14 -8
  88. package/dist/esm/ElementSource.js.map +1 -1
  89. package/dist/esm/Html.js +2 -2
  90. package/dist/esm/Html.js.map +1 -1
  91. package/dist/esm/Hydrate.js +0 -12
  92. package/dist/esm/Hydrate.js.map +1 -1
  93. package/dist/esm/Platform.js +3 -4
  94. package/dist/esm/Platform.js.map +1 -1
  95. package/dist/esm/RenderQueue.js +3 -1
  96. package/dist/esm/RenderQueue.js.map +1 -1
  97. package/dist/esm/Template.js.map +1 -1
  98. package/dist/esm/Test.js +2 -2
  99. package/dist/esm/Test.js.map +1 -1
  100. package/dist/esm/compiler-tools.js +91 -0
  101. package/dist/esm/compiler-tools.js.map +1 -0
  102. package/dist/esm/internal/HydrateContext.js.map +1 -1
  103. package/dist/esm/internal/v2/render.js +231 -63
  104. package/dist/esm/internal/v2/render.js.map +1 -1
  105. package/package.json +20 -11
  106. package/src/ElementRef.ts +35 -13
  107. package/src/ElementSource.ts +131 -53
  108. package/src/Html.ts +2 -2
  109. package/src/Hydrate.ts +2 -37
  110. package/src/Platform.ts +9 -10
  111. package/src/RenderQueue.ts +3 -1
  112. package/src/Template.ts +4 -2
  113. package/src/Test.ts +2 -2
  114. package/src/compiler-tools.ts +250 -0
  115. package/src/internal/HydrateContext.ts +0 -2
  116. package/src/internal/v2/render.ts +279 -54
  117. package/dist/cjs/internal/v2/hydrate.js +0 -202
  118. package/dist/cjs/internal/v2/hydrate.js.map +0 -1
  119. package/dist/dts/internal/v2/hydrate.d.ts +0 -7
  120. package/dist/dts/internal/v2/hydrate.d.ts.map +0 -1
  121. package/dist/esm/internal/v2/hydrate.js +0 -195
  122. package/dist/esm/internal/v2/hydrate.js.map +0 -1
  123. package/src/internal/v2/hydrate.ts +0 -289
@@ -1 +1 @@
1
- {"version":3,"file":"render-sync-parts.js","names":["Fx","_interopRequireWildcard","require","Effect","_Function","_characterEntities","_syncParts","_wire","_udomdiff","_interopRequireDefault","_Directive","_RenderEvent","_utils","_parts","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","makeAttributePart","index","element","attr","setValue","makeAttributeValueSetter","AttributePartImpl","name","value","isSet","isNullOrUndefined","removeAttribute","setAttributeNode","makeBooleanAttributePart","BooleanPartImpl","toggleAttribute","hasAttribute","makeClassNamePart","initial","Array","from","classList","ClassNamePartImpl","previous","added","removed","diffStrings","add","remove","makeDataPart","DataPartImpl","diff","diffDataSet","forEach","k","dataset","v","makePropertyPart","PropertyPartImpl","makeTextPart","text","TextPartImpl","nodeValue","convertCharacterEntities","undefined","current","length","unchanged","filter","c","includes","push","b","entries","keys","concat","map","makeSparsePartHandler","parts","renderables","makePart","handleText","join","mapEffect","withEmitter","sink","zipRight","gen","values","Map","expected","setValueIfReady","size","succeed","_","part","_tag","child","forkScoped","matchRenderable","fx","run","Sink","make","cause","promise","failCause","sync","update","effect","tap","Directive","directive","syncPartToPart","Otherwise","never","handleSparseAttribute","schedule","drain","flatMap","handleSparseClassName","splitClassNames","flat","handleSparseComment","comment","CommentPartImpl","textContent","identity","makeNodePart","document","nodes","NodePartImpl","matchNodeValue","content","createTextNode","diffChildren","updatedNodes","getPreviousTextSibling","node","nodeType","TEXT_NODE","previousSibling","isCommentWithValue","findPreviousNodes","hash","previousComments","Set","isComment","data","unshift","currentNodes","nextNodes","udomdiff","parentNode","diffable","onText","onNodes","String","isArray","some","x","renderEventToArray","isRenderEvent","valueOf","makeCommentPart","renderable","matches","isFx","isEffect","isDirective"],"sources":["../../../../src/internal/v2/render-sync-parts.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"render-sync-parts.js","names":["Fx","_interopRequireWildcard","require","Effect","_Function","_characterEntities","_syncParts","_wire","_udomdiff","_interopRequireDefault","_Directive","_RenderEvent","_utils","_parts","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","makeAttributePart","index","element","attr","setValue","makeAttributeValueSetter","AttributePartImpl","name","value","isSet","isNullOrUndefined","removeAttribute","setAttributeNode","makeBooleanAttributePart","BooleanPartImpl","toggleAttribute","hasAttribute","makeClassNamePart","initial","Array","from","classList","ClassNamePartImpl","previous","added","removed","diffStrings","add","remove","makeDataPart","DataPartImpl","diff","diffDataSet","forEach","k","dataset","v","makePropertyPart","PropertyPartImpl","makeTextPart","text","TextPartImpl","nodeValue","convertCharacterEntities","undefined","current","length","unchanged","filter","c","includes","push","b","entries","keys","concat","map","makeSparsePartHandler","parts","renderables","makePart","handleText","join","mapEffect","withEmitter","sink","zipRight","gen","values","Map","expected","setValueIfReady","size","succeed","_","part","_tag","child","forkScoped","matchRenderable","fx","run","Sink","make","cause","promise","failCause","sync","update","effect","tap","Directive","directive","syncPartToPart","Otherwise","never","handleSparseAttribute","schedule","drain","flatMap","handleSparseClassName","splitClassNames","flat","handleSparseComment","comment","CommentPartImpl","textContent","identity","makeNodePart","document","nodes","NodePartImpl","matchNodeValue","content","createTextNode","diffChildren","updatedNodes","getPreviousTextSibling","node","nodeType","TEXT_NODE","previousSibling","isCommentWithValue","findPreviousNodes","hash","previousComments","Set","isComment","data","unshift","currentNodes","nextNodes","udomdiff","parentNode","diffable","onText","onNodes","String","isArray","some","x","renderEventToArray","isRenderEvent","valueOf","makeCommentPart","renderable","matches","isFx","isEffect","isDirective"],"sources":["../../../../src/internal/v2/render-sync-parts.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,8 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.attachRoot = attachRoot;
7
+ exports.attemptHydration = attemptHydration;
8
+ exports.findHydrationTemplateByHash = findHydrationTemplateByHash;
9
+ exports.findRootChildNodes = findRootChildNodes;
10
+ exports.findRootParentChildNodes = findRootParentChildNodes;
7
11
  exports.getEventHandler = getEventHandler;
8
- exports.getNodes = getNodes;
12
+ exports.getNodesFromRendered = getNodesFromRendered;
13
+ exports.getWire = getWire;
9
14
  exports.makeTemplateContext = makeTemplateContext;
10
15
  exports.matchRenderable = matchRenderable;
11
16
  exports.matchSyncPart = matchSyncPart;
@@ -19,6 +24,9 @@ exports.setupClassNamePart = setupClassNamePart;
19
24
  exports.setupCommentPart = setupCommentPart;
20
25
  exports.setupDataPart = setupDataPart;
21
26
  exports.setupEventPart = setupEventPart;
27
+ exports.setupHydratePart = setupHydratePart;
28
+ exports.setupHydrateParts = setupHydrateParts;
29
+ exports.setupHydratedNodePart = setupHydratedNodePart;
22
30
  exports.setupNodePart = setupNodePart;
23
31
  exports.setupPropertiesPart = setupPropertiesPart;
24
32
  exports.setupPropertyPart = setupPropertyPart;
@@ -27,78 +35,117 @@ exports.setupSparseAttrPart = setupSparseAttrPart;
27
35
  exports.setupSparseClassNamePart = setupSparseClassNamePart;
28
36
  exports.setupSparseCommentPart = setupSparseCommentPart;
29
37
  exports.setupTextPart = setupTextPart;
30
- var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@typed/context"));
31
- var Fx = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@typed/fx"));
38
+ var Context = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@typed/context"));
39
+ var Fx = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@typed/fx"));
32
40
  var _wire = /*#__PURE__*/require("@typed/wire");
33
- var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
34
- var ExecutionStrategy = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/ExecutionStrategy"));
41
+ var _effect = /*#__PURE__*/require("effect");
42
+ var Cause = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Cause"));
43
+ var Chunk = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Chunk"));
44
+ var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
45
+ var ExecutionStrategy = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/ExecutionStrategy"));
35
46
  var _Function = /*#__PURE__*/require("effect/Function");
36
- var Scope = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Scope"));
47
+ var Scope = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Scope"));
37
48
  var _Directive = /*#__PURE__*/require("../../Directive.js");
38
- var ElementRef = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../ElementRef.js"));
39
- var ElementSource = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../ElementSource.js"));
40
- var EventHandler = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../../EventHandler.js"));
49
+ var ElementRef = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("../../ElementRef.js"));
50
+ var ElementSource = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("../../ElementSource.js"));
51
+ var EventHandler = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("../../EventHandler.js"));
41
52
  var _RenderEvent = /*#__PURE__*/require("../../RenderEvent.js");
42
53
  var _RenderQueue = /*#__PURE__*/require("../../RenderQueue.js");
54
+ var _errors = /*#__PURE__*/require("../errors.js");
43
55
  var _EventSource = /*#__PURE__*/require("../EventSource.js");
56
+ var _HydrateContext = /*#__PURE__*/require("../HydrateContext.js");
44
57
  var _indexRefCounter = /*#__PURE__*/require("../indexRefCounter.js");
45
58
  var _utils = /*#__PURE__*/require("../utils.js");
46
59
  var _helpers = /*#__PURE__*/require("./helpers.js");
60
+ var _hydrationTemplate = /*#__PURE__*/require("./hydration-template.js");
47
61
  var _parts = /*#__PURE__*/require("./parts.js");
48
62
  var _renderEntry = /*#__PURE__*/require("./render-entry.js");
49
- var SyncPartsInternal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./render-sync-parts.js"));
63
+ var SyncPartsInternal = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./render-sync-parts.js"));
50
64
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
51
65
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
52
66
  const renderTemplate = (document, renderContext) => (templateStrings, values) => {
53
67
  const entry = (0, _renderEntry.getBrowserEntry)(document, renderContext, templateStrings);
54
- if (entry.template.parts.length === 0) {
55
- return Fx.succeed((0, _RenderEvent.DomRenderEvent)((0, _wire.persistent)(document, document.importNode(entry.content, true))));
56
- }
57
- return Fx.make(sink => Effect.catchAllCause(Effect.gen(function* () {
58
- // Create a context for rendering our template
59
- const ctx = yield* makeTemplateContext(entry.content, document, renderContext, values, sink.onFailure);
60
- // Setup all parts
61
- const effects = setupParts(entry.template.parts, ctx);
62
- if (effects.length > 0) {
63
- yield* Effect.forEach(effects, (0, _Function.flow)(Effect.catchAllCause(ctx.onCause), Effect.forkIn(ctx.scope)));
64
- }
65
- // If there's anything to wait on and it's not already done, wait for an initial value
66
- // for all asynchronous sources.
67
- if (ctx.expected > 0 && (yield* ctx.refCounter.expect(ctx.expected))) {
68
- yield* ctx.refCounter.wait;
69
- }
70
- // Create a persistent wire from our content
71
- const wire = (0, _wire.persistent)(document, ctx.content);
72
- // Setup our event listeners for our wire.
73
- // We use the parentScope to allow event listeners to exist
74
- // beyond the lifetime of the current Fiber, but no further than its parent template.
75
- yield* ctx.eventSource.setup(wire, ctx.parentScope);
76
- // Emit our DomRenderEvent
77
- yield* sink.onSuccess((0, _RenderEvent.DomRenderEvent)(wire)).pipe(
78
- // Ensure our templates last forever in the DOM environment
79
- // so event listeners are kept attached to the current Scope.
80
- Effect.zipRight(Effect.never),
81
- // Close our scope whenever the current Fiber is interrupted
82
- Effect.onExit(exit => Scope.close(ctx.scope, exit)));
83
- }), sink.onFailure));
68
+ return Fx.make(function render(sink) {
69
+ return Effect.catchAllCause(Effect.gen(function* () {
70
+ // Create a context for rendering our template
71
+ const ctx = yield* makeTemplateContext(document, renderContext, values, sink.onFailure);
72
+ const hydration = attemptHydration(ctx, entry.template.hash);
73
+ let effects;
74
+ let content;
75
+ let wire;
76
+ if (_effect.Option.isSome(hydration)) {
77
+ const {
78
+ hydrateCtx,
79
+ where
80
+ } = hydration.value;
81
+ effects = setupHydrateParts(entry.template.parts, {
82
+ ...ctx,
83
+ where,
84
+ manyKey: hydrateCtx.manyKey,
85
+ makeHydrateContext: where => ({
86
+ where,
87
+ hydrate: true
88
+ })
89
+ });
90
+ wire = getWire(where);
91
+ } else {
92
+ content = ctx.document.importNode(entry.content, true);
93
+ effects = setupRenderParts(entry.template.parts, content, ctx);
94
+ }
95
+ if (effects.length > 0) {
96
+ yield* Effect.forEach(effects, (0, _Function.flow)(Effect.catchAllCause(ctx.onCause), Effect.forkIn(ctx.scope)));
97
+ }
98
+ // If there's anything to wait on and it's not already done, wait for an initial value
99
+ // for all asynchronous sources.
100
+ if (ctx.expected > 0 && (yield* ctx.refCounter.expect(ctx.expected))) {
101
+ yield* ctx.refCounter.wait;
102
+ }
103
+ // If we're not hydrating, we need to create our wire from our content
104
+ if (wire === undefined) {
105
+ wire = (0, _wire.persistent)(ctx.document, content);
106
+ }
107
+ // Setup our event listeners for our wire.
108
+ // We use the parentScope to allow event listeners to exist
109
+ // beyond the lifetime of the current Fiber, but no further than its parent template.
110
+ yield* ctx.eventSource.setup(wire, ctx.parentScope);
111
+ // If we're hydrating, we need to mark this part of the stack as hydrated
112
+ if (_effect.Option.isSome(hydration)) {
113
+ hydration.value.hydrateCtx.hydrate = false;
114
+ }
115
+ // Emit our DomRenderEvent
116
+ yield* sink.onSuccess((0, _RenderEvent.DomRenderEvent)(wire)).pipe(
117
+ // Ensure our templates last forever in the DOM environment
118
+ // so event listeners are kept attached to the current Scope.
119
+ Effect.zipRight(Effect.never),
120
+ // Close our scope whenever the current Fiber is interrupted
121
+ Effect.onExit(exit => Scope.close(ctx.scope, exit)));
122
+ }), cause => {
123
+ const hydrationFailure = Chunk.findFirst(Cause.defects(cause), _errors.isHydrationError);
124
+ if (_effect.Option.isSome(hydrationFailure)) {
125
+ return _HydrateContext.HydrateContext.pipe(Effect.tap(ctx => ctx.hydrate = false), Effect.flatMap(() => render(sink)));
126
+ }
127
+ return sink.onFailure(cause);
128
+ });
129
+ });
84
130
  };
85
131
  exports.renderTemplate = renderTemplate;
86
- function makeTemplateContext(entry, document, renderContext, values, onCause) {
132
+ function makeTemplateContext(document, renderContext, values, onCause) {
87
133
  return Effect.gen(function* () {
88
134
  const refCounter = yield* _indexRefCounter.makeRefCounter;
89
135
  const context = yield* Effect.context();
90
136
  const queue = Context.get(context, _RenderQueue.RenderQueue);
91
137
  const parentScope = Context.get(context, Scope.Scope);
92
138
  const eventSource = (0, _EventSource.makeEventSource)();
93
- const content = document.importNode(entry, true);
94
139
  const scope = yield* Scope.fork(parentScope, ExecutionStrategy.sequential);
140
+ const hydrateContext = Context.getOption(context, _HydrateContext.HydrateContext);
95
141
  const templateContext = {
96
142
  context: Context.add(context, Scope.Scope, scope),
97
143
  expected: 0,
98
- content,
99
144
  document,
100
145
  eventSource,
146
+ hydrateContext,
101
147
  parentScope,
148
+ manyKey: undefined,
102
149
  queue,
103
150
  refCounter,
104
151
  renderContext,
@@ -110,51 +157,67 @@ function makeTemplateContext(entry, document, renderContext, values, onCause) {
110
157
  return templateContext;
111
158
  });
112
159
  }
113
- function setupParts(parts, ctx) {
160
+ function attemptHydration(ctx, hash) {
161
+ if (_effect.Option.isSome(ctx.hydrateContext) && ctx.hydrateContext.value.hydrate) {
162
+ const hydrateCtx = ctx.hydrateContext.value;
163
+ const where = findHydrationTemplateByHash(hydrateCtx, hash);
164
+ if (where === null) {
165
+ hydrateCtx.hydrate = false;
166
+ return _effect.Option.none();
167
+ } else {
168
+ return _effect.Option.some({
169
+ where,
170
+ hydrateCtx
171
+ });
172
+ }
173
+ }
174
+ return _effect.Option.none();
175
+ }
176
+ function setupRenderParts(parts, content, ctx) {
114
177
  const effects = [];
115
178
  for (const [part, path] of parts) {
116
- const effect = setupPart(part, path, ctx);
179
+ const effect = setupRenderPart(part, content, path, ctx);
117
180
  if (effect) {
118
181
  effects.push(effect);
119
182
  }
120
183
  }
121
184
  return effects;
122
185
  }
123
- function setupPart(part, path, ctx) {
186
+ function setupRenderPart(part, content, path, ctx) {
124
187
  switch (part._tag) {
125
188
  case "attr":
126
- return setupAttrPart(part, (0, _utils.findPath)(ctx.content, path), ctx, ctx.values[part.index]);
189
+ return setupAttrPart(part, (0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
127
190
  case "boolean-part":
128
- return setupBooleanPart(part, (0, _utils.findPath)(ctx.content, path), ctx, ctx.values[part.index]);
191
+ return setupBooleanPart(part, (0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
129
192
  case "className-part":
130
- return setupClassNamePart(part, (0, _utils.findPath)(ctx.content, path), ctx, ctx.values[part.index]);
193
+ return setupClassNamePart(part, (0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
131
194
  case "comment-part":
132
- return setupCommentPart(part, (0, _utils.findPath)(ctx.content, path), ctx);
195
+ return setupCommentPart(part, (0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
133
196
  case "data":
134
- return setupDataPart(part, (0, _utils.findPath)(ctx.content, path), ctx, ctx.values[part.index]);
197
+ return setupDataPart(part, (0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
135
198
  case "event":
136
- return setupEventPart(part, (0, _utils.findPath)(ctx.content, path), ctx, ctx.values[part.index]);
199
+ return setupEventPart(part, (0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
137
200
  case "node":
138
201
  {
139
- const parent = (0, _utils.findPath)(ctx.content, path);
202
+ const parent = (0, _utils.findPath)(content, path);
140
203
  const comment = (0, _utils.findHoleComment)(parent, part.index);
141
204
  return setupNodePart(part, comment, ctx, null, []);
142
205
  }
143
206
  case "properties":
144
- return setupPropertiesPart(part, (0, _utils.findPath)(ctx.content, path), ctx);
207
+ return setupPropertiesPart((0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
145
208
  case "property":
146
- return setupPropertyPart(part, (0, _utils.findPath)(ctx.content, path), ctx, ctx.values[part.index]);
209
+ return setupPropertyPart(part, (0, _utils.findPath)(content, path), ctx, ctx.values[part.index]);
147
210
  case "ref":
148
- return setupRefPart(part, (0, _utils.findPath)(ctx.content, path), ctx);
211
+ return setupRefPart(part, (0, _utils.findPath)(content, path), ctx);
149
212
  case "sparse-attr":
150
- return setupSparseAttrPart(part, (0, _utils.findPath)(ctx.content, path), ctx);
213
+ return setupSparseAttrPart(part, (0, _utils.findPath)(content, path), ctx);
151
214
  case "sparse-class-name":
152
- return setupSparseClassNamePart(part, (0, _utils.findPath)(ctx.content, path), ctx);
215
+ return setupSparseClassNamePart(part, (0, _utils.findPath)(content, path), ctx);
153
216
  case "sparse-comment":
154
- return setupSparseCommentPart(part, (0, _utils.findPath)(ctx.content, path), ctx);
217
+ return setupSparseCommentPart(part, (0, _utils.findPath)(content, path), ctx);
155
218
  case "text-part":
156
219
  {
157
- const parent = (0, _utils.findPath)(ctx.content, path);
220
+ const parent = (0, _utils.findPath)(content, path);
158
221
  const comment = (0, _utils.findHoleComment)(parent, part.index);
159
222
  return setupTextPart(part, comment, ctx);
160
223
  }
@@ -183,9 +246,8 @@ function setupClassNamePart({
183
246
  }
184
247
  function setupCommentPart({
185
248
  index
186
- }, comment, ctx) {
249
+ }, comment, ctx, renderable) {
187
250
  const part = SyncPartsInternal.makeCommentPart(index, comment);
188
- const renderable = ctx.values[index];
189
251
  return matchSyncPart(renderable, ctx, part);
190
252
  }
191
253
  function setupDataPart({
@@ -234,8 +296,7 @@ function setupPropertyPart({
234
296
  }
235
297
  function setupRefPart({
236
298
  index
237
- }, element, ctx) {
238
- const renderable = ctx.values[index];
299
+ }, element, renderable) {
239
300
  if ((0, _helpers.isNullOrUndefined)(renderable)) return null;else if ((0, _Directive.isDirective)(renderable)) {
240
301
  return renderable(new _parts.RefPartImpl(ElementSource.fromElement(element), index));
241
302
  } else if (ElementRef.isElementRef(renderable)) {
@@ -245,10 +306,7 @@ function setupRefPart({
245
306
  return null;
246
307
  }
247
308
  }
248
- function setupPropertiesPart({
249
- index
250
- }, element, ctx) {
251
- const renderable = ctx.values[index];
309
+ function setupPropertiesPart(element, ctx, renderable) {
252
310
  if (renderable && typeof renderable === "object") {
253
311
  const effects = [];
254
312
  const addEffect = effect => {
@@ -356,10 +414,8 @@ function unwrapRenderable(renderable) {
356
414
  case "object":
357
415
  {
358
416
  if (renderable === null || renderable === undefined) return Fx.succeed(null);else if (Array.isArray(renderable)) {
359
- return renderable.length === 0 ? Fx.succeed(null)
360
- // TODO: We need to ensure the ordering of these values in server environments
361
- : Fx.map(Fx.tuple(renderable.map(unwrapRenderable)), xs => xs.flat());
362
- } else if (Fx.TypeId in renderable) {
417
+ return renderable.length === 0 ? Fx.succeed(null) : Fx.map(Fx.tuple(renderable.map(unwrapRenderable)), xs => xs.flat());
418
+ } else if (Fx.FxTypeId in renderable) {
363
419
  return renderable;
364
420
  } else if (Effect.EffectTypeId in renderable) {
365
421
  return Fx.fromFxEffect(Effect.map(renderable, unwrapRenderable));
@@ -403,15 +459,134 @@ function attachRoot(cache, where, what // TODO: Should we support HTML RenderEve
403
459
  });
404
460
  }
405
461
  function removeChildren(where, previous) {
406
- for (const node of getNodes(previous)) {
462
+ for (const node of getNodesFromRendered(previous)) {
407
463
  where.removeChild(node);
408
464
  }
409
465
  }
410
466
  function replaceChildren(where, wire) {
411
- where.replaceChildren(...getNodes(wire));
467
+ where.replaceChildren(...getNodesFromRendered(wire));
412
468
  }
413
- function getNodes(rendered) {
469
+ function getNodesFromRendered(rendered) {
414
470
  const value = rendered.valueOf();
415
471
  return Array.isArray(value) ? value : [value];
416
472
  }
473
+ function findHydrationTemplateByHash(hydrateCtx, hash) {
474
+ // If there is not a manyKey, we can just find the template by its hash
475
+ if (hydrateCtx.manyKey === undefined) {
476
+ return (0, _hydrationTemplate.findHydrationTemplate)((0, _hydrationTemplate.getChildNodes)(hydrateCtx.where), hash);
477
+ }
478
+ // If there is a manyKey, we need to find the many node first
479
+ const many = (0, _hydrationTemplate.findHydrationMany)((0, _hydrationTemplate.getChildNodes)(hydrateCtx.where), hydrateCtx.manyKey);
480
+ if (many === null) return null;
481
+ // Then we can find the template by its hash
482
+ return (0, _hydrationTemplate.findHydrationTemplate)((0, _hydrationTemplate.getChildNodes)(many), hash);
483
+ }
484
+ function setupHydrateParts(parts, ctx) {
485
+ const effects = [];
486
+ for (const [part, path] of parts) {
487
+ const effect = setupHydratePart(part, path, ctx);
488
+ if (effect) {
489
+ effects.push(effect);
490
+ }
491
+ }
492
+ return effects;
493
+ }
494
+ function setupHydratePart(part, path, ctx) {
495
+ switch (part._tag) {
496
+ case "attr":
497
+ return setupAttrPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
498
+ case "boolean-part":
499
+ return setupBooleanPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
500
+ case "className-part":
501
+ return setupClassNamePart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
502
+ case "comment-part":
503
+ return setupCommentPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
504
+ case "data":
505
+ return setupDataPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
506
+ case "event":
507
+ return setupEventPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
508
+ case "node":
509
+ {
510
+ const hole = (0, _hydrationTemplate.findHydrationHole)((0, _hydrationTemplate.getChildNodes)(ctx.where), part.index);
511
+ if (hole === null) {
512
+ throw new _errors.CouldNotFindCommentError(part.index);
513
+ }
514
+ return setupHydratedNodePart(part, hole, ctx);
515
+ }
516
+ case "properties":
517
+ return setupPropertiesPart((0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
518
+ case "property":
519
+ return setupPropertyPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx, ctx.values[part.index]);
520
+ case "ref":
521
+ return setupRefPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx.values[part.index]);
522
+ case "sparse-attr":
523
+ return setupSparseAttrPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx);
524
+ case "sparse-class-name":
525
+ return setupSparseClassNamePart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx);
526
+ case "sparse-comment":
527
+ return setupSparseCommentPart(part, (0, _utils.findHydratePath)(ctx.where, path), ctx);
528
+ case "text-part":
529
+ {
530
+ const hole = (0, _hydrationTemplate.findHydrationHole)((0, _hydrationTemplate.getChildNodes)(ctx.where), part.index);
531
+ if (hole === null) throw new _errors.CouldNotFindCommentError(part.index);
532
+ return setupTextPart(part, hole.endComment, ctx);
533
+ }
534
+ }
535
+ }
536
+ function setupHydratedNodePart(part, hole, ctx) {
537
+ const nestedCtx = ctx.makeHydrateContext(hole, part.index);
538
+ const previousNodes = (0, _hydrationTemplate.getPreviousNodes)(hole);
539
+ const text = previousNodes.length === 2 && (0, _utils.isCommentWithValue)(previousNodes[0], "text") && (0, _wire.isText)(previousNodes[1]) ? previousNodes[1] : null;
540
+ const effect = setupNodePart(part, hole.endComment, ctx, text, text === null ? previousNodes : [text]);
541
+ if (effect === null) return null;
542
+ return Effect.provideService(effect, _HydrateContext.HydrateContext, nestedCtx);
543
+ }
544
+ function findRootParentChildNodes(where) {
545
+ const childNodes = findRootChildNodes(where);
546
+ return {
547
+ parentNode: where,
548
+ childNodes
549
+ };
550
+ }
551
+ const START = "typed-start";
552
+ const END = "typed-end";
553
+ // Finds all of the childNodes between the "typed-start" and "typed-end" comments
554
+ function findRootChildNodes(where) {
555
+ let start = -1;
556
+ let end = -1;
557
+ const {
558
+ childNodes
559
+ } = where;
560
+ const length = childNodes.length;
561
+ for (let i = 0; i < length; i++) {
562
+ const node = childNodes[i];
563
+ if (node.nodeType === node.COMMENT_NODE && node.nodeValue === START) {
564
+ start = i;
565
+ break;
566
+ }
567
+ }
568
+ for (let i = length - 1; i >= Math.max(start, 0); i--) {
569
+ const node = childNodes[i];
570
+ if (node.nodeType === node.COMMENT_NODE && node.nodeValue === END) {
571
+ end = i;
572
+ break;
573
+ }
574
+ }
575
+ // If we can't find the start and end comments, just return all childNodes
576
+ if (start === -1 && end === -1) {
577
+ return Array.from(childNodes);
578
+ }
579
+ start = start === -1 ? 0 : start;
580
+ end = end === -1 ? length - 1 : end;
581
+ const rootChildNodes = Array(end - start);
582
+ for (let i = start + 1, j = 0; i <= end; i++) {
583
+ rootChildNodes[j++] = childNodes[i];
584
+ }
585
+ return rootChildNodes;
586
+ }
587
+ function getWire(where) {
588
+ const nodes = (0, _hydrationTemplate.getNodes)(where);
589
+ if (nodes.length === 1) return nodes[0];
590
+ return nodes;
591
+ }
417
592
  //# sourceMappingURL=render.js.map