piral-blazor 1.0.0-pre.2217 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +55 -12
- package/convert.d.ts +13 -10
- package/convert.js +17 -12
- package/esm/converter.d.ts +10 -6
- package/esm/converter.js +164 -48
- package/esm/converter.js.map +1 -1
- package/esm/create.d.ts +21 -1
- package/esm/create.js +29 -15
- package/esm/create.js.map +1 -1
- package/esm/dependencies.d.ts +6 -3
- package/esm/dependencies.js +104 -14
- package/esm/dependencies.js.map +1 -1
- package/esm/events.d.ts +6 -0
- package/esm/events.js +145 -0
- package/esm/events.js.map +1 -0
- package/esm/interop.d.ts +29 -0
- package/esm/interop.js +205 -0
- package/esm/interop.js.map +1 -0
- package/esm/navigation.d.ts +2 -0
- package/esm/navigation.js +30 -0
- package/esm/navigation.js.map +1 -0
- package/esm/types.d.ts +97 -4
- package/infra.codegen +53 -68
- package/lib/converter.d.ts +10 -6
- package/lib/converter.js +164 -48
- package/lib/converter.js.map +1 -1
- package/lib/create.d.ts +21 -1
- package/lib/create.js +31 -17
- package/lib/create.js.map +1 -1
- package/lib/dependencies.d.ts +6 -3
- package/lib/dependencies.js +104 -14
- package/lib/dependencies.js.map +1 -1
- package/lib/events.d.ts +6 -0
- package/lib/events.js +154 -0
- package/lib/events.js.map +1 -0
- package/lib/index.js +1 -1
- package/lib/interop.d.ts +29 -0
- package/lib/interop.js +226 -0
- package/lib/interop.js.map +1 -0
- package/lib/navigation.d.ts +2 -0
- package/lib/navigation.js +35 -0
- package/lib/navigation.js.map +1 -0
- package/lib/types.d.ts +97 -4
- package/package.json +26 -13
- package/src/converter.ts +237 -57
- package/src/create.ts +53 -9
- package/src/dependencies.ts +122 -14
- package/src/events.ts +174 -0
- package/src/interop.ts +273 -0
- package/src/navigation.ts +36 -0
- package/src/types.ts +115 -4
- package/convert.ts +0 -17
- package/esm/internal/Environment.d.ts +0 -3
- package/esm/internal/Environment.js +0 -6
- package/esm/internal/Environment.js.map +0 -1
- package/esm/internal/Platform/BootConfig.d.ts +0 -20
- package/esm/internal/Platform/BootConfig.js +0 -10
- package/esm/internal/Platform/BootConfig.js.map +0 -1
- package/esm/internal/Platform/Mono/MonoDebugger.d.ts +0 -3
- package/esm/internal/Platform/Mono/MonoDebugger.js +0 -43
- package/esm/internal/Platform/Mono/MonoDebugger.js.map +0 -1
- package/esm/internal/Platform/Mono/MonoPlatform.d.ts +0 -2
- package/esm/internal/Platform/Mono/MonoPlatform.js +0 -403
- package/esm/internal/Platform/Mono/MonoPlatform.js.map +0 -1
- package/esm/internal/Platform/Mono/TimezoneDataFile.d.ts +0 -1
- package/esm/internal/Platform/Mono/TimezoneDataFile.js +0 -51
- package/esm/internal/Platform/Mono/TimezoneDataFile.js.map +0 -1
- package/esm/internal/Platform/Platform.d.ts +0 -31
- package/esm/internal/Platform/Platform.js +0 -2
- package/esm/internal/Platform/Platform.js.map +0 -1
- package/esm/internal/Platform/Url.d.ts +0 -2
- package/esm/internal/Platform/Url.js +0 -11
- package/esm/internal/Platform/Url.js.map +0 -1
- package/esm/internal/Platform/WebAssemblyConfigLoader.d.ts +0 -4
- package/esm/internal/Platform/WebAssemblyConfigLoader.js +0 -64
- package/esm/internal/Platform/WebAssemblyConfigLoader.js.map +0 -1
- package/esm/internal/Platform/WebAssemblyResourceLoader.d.ts +0 -24
- package/esm/internal/Platform/WebAssemblyResourceLoader.js +0 -223
- package/esm/internal/Platform/WebAssemblyResourceLoader.js.map +0 -1
- package/esm/internal/Platform/WebAssemblyStartOptions.d.ts +0 -13
- package/esm/internal/Platform/WebAssemblyStartOptions.js +0 -2
- package/esm/internal/Platform/WebAssemblyStartOptions.js.map +0 -1
- package/esm/internal/Rendering/BrowserRenderer.d.ts +0 -38
- package/esm/internal/Rendering/BrowserRenderer.js +0 -458
- package/esm/internal/Rendering/BrowserRenderer.js.map +0 -1
- package/esm/internal/Rendering/ElementReferenceCapture.d.ts +0 -1
- package/esm/internal/Rendering/ElementReferenceCapture.js +0 -24
- package/esm/internal/Rendering/ElementReferenceCapture.js.map +0 -1
- package/esm/internal/Rendering/EventDelegator.d.ts +0 -20
- package/esm/internal/Rendering/EventDelegator.js +0 -236
- package/esm/internal/Rendering/EventDelegator.js.map +0 -1
- package/esm/internal/Rendering/EventFieldInfo.d.ts +0 -6
- package/esm/internal/Rendering/EventFieldInfo.js +0 -32
- package/esm/internal/Rendering/EventFieldInfo.js.map +0 -1
- package/esm/internal/Rendering/EventForDotNet.d.ts +0 -10
- package/esm/internal/Rendering/EventForDotNet.js +0 -194
- package/esm/internal/Rendering/EventForDotNet.js.map +0 -1
- package/esm/internal/Rendering/LogicalElements.d.ts +0 -19
- package/esm/internal/Rendering/LogicalElements.js +0 -250
- package/esm/internal/Rendering/LogicalElements.js.map +0 -1
- package/esm/internal/Rendering/RenderBatch/BinaryDecoder.d.ts +0 -5
- package/esm/internal/Rendering/RenderBatch/BinaryDecoder.js +0 -34
- package/esm/internal/Rendering/RenderBatch/BinaryDecoder.js.map +0 -1
- package/esm/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.d.ts +0 -18
- package/esm/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js +0 -190
- package/esm/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js.map +0 -1
- package/esm/internal/Rendering/RenderBatch/RenderBatch.d.ts +0 -87
- package/esm/internal/Rendering/RenderBatch/RenderBatch.js +0 -26
- package/esm/internal/Rendering/RenderBatch/RenderBatch.js.map +0 -1
- package/esm/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.d.ts +0 -52
- package/esm/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js +0 -103
- package/esm/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js.map +0 -1
- package/esm/internal/Rendering/RenderBatch/Utf8Decoder.d.ts +0 -1
- package/esm/internal/Rendering/RenderBatch/Utf8Decoder.js +0 -63
- package/esm/internal/Rendering/RenderBatch/Utf8Decoder.js.map +0 -1
- package/esm/internal/Rendering/Renderer.d.ts +0 -8
- package/esm/internal/Rendering/Renderer.js +0 -69
- package/esm/internal/Rendering/Renderer.js.map +0 -1
- package/esm/internal/Rendering/RendererEventDispatcher.d.ts +0 -4
- package/esm/internal/Rendering/RendererEventDispatcher.js +0 -11
- package/esm/internal/Rendering/RendererEventDispatcher.js.map +0 -1
- package/esm/internal/Services/NavigationManager.d.ts +0 -16
- package/esm/internal/Services/NavigationManager.js +0 -138
- package/esm/internal/Services/NavigationManager.js.map +0 -1
- package/esm/internal/globals.d.ts +0 -1
- package/esm/internal/globals.js +0 -5
- package/esm/internal/globals.js.map +0 -1
- package/esm/internal/index.d.ts +0 -15
- package/esm/internal/index.js +0 -152
- package/esm/internal/index.js.map +0 -1
- package/lib/internal/Environment.d.ts +0 -3
- package/lib/internal/Environment.js +0 -9
- package/lib/internal/Environment.js.map +0 -1
- package/lib/internal/Platform/BootConfig.d.ts +0 -20
- package/lib/internal/Platform/BootConfig.js +0 -13
- package/lib/internal/Platform/BootConfig.js.map +0 -1
- package/lib/internal/Platform/Mono/MonoDebugger.d.ts +0 -3
- package/lib/internal/Platform/Mono/MonoDebugger.js +0 -48
- package/lib/internal/Platform/Mono/MonoDebugger.js.map +0 -1
- package/lib/internal/Platform/Mono/MonoPlatform.d.ts +0 -2
- package/lib/internal/Platform/Mono/MonoPlatform.js +0 -406
- package/lib/internal/Platform/Mono/MonoPlatform.js.map +0 -1
- package/lib/internal/Platform/Mono/TimezoneDataFile.d.ts +0 -1
- package/lib/internal/Platform/Mono/TimezoneDataFile.js +0 -55
- package/lib/internal/Platform/Mono/TimezoneDataFile.js.map +0 -1
- package/lib/internal/Platform/Platform.d.ts +0 -31
- package/lib/internal/Platform/Platform.js +0 -3
- package/lib/internal/Platform/Platform.js.map +0 -1
- package/lib/internal/Platform/Url.d.ts +0 -2
- package/lib/internal/Platform/Url.js +0 -16
- package/lib/internal/Platform/Url.js.map +0 -1
- package/lib/internal/Platform/WebAssemblyConfigLoader.d.ts +0 -4
- package/lib/internal/Platform/WebAssemblyConfigLoader.js +0 -67
- package/lib/internal/Platform/WebAssemblyConfigLoader.js.map +0 -1
- package/lib/internal/Platform/WebAssemblyResourceLoader.d.ts +0 -24
- package/lib/internal/Platform/WebAssemblyResourceLoader.js +0 -226
- package/lib/internal/Platform/WebAssemblyResourceLoader.js.map +0 -1
- package/lib/internal/Platform/WebAssemblyStartOptions.d.ts +0 -13
- package/lib/internal/Platform/WebAssemblyStartOptions.js +0 -3
- package/lib/internal/Platform/WebAssemblyStartOptions.js.map +0 -1
- package/lib/internal/Rendering/BrowserRenderer.d.ts +0 -38
- package/lib/internal/Rendering/BrowserRenderer.js +0 -461
- package/lib/internal/Rendering/BrowserRenderer.js.map +0 -1
- package/lib/internal/Rendering/ElementReferenceCapture.d.ts +0 -1
- package/lib/internal/Rendering/ElementReferenceCapture.js +0 -28
- package/lib/internal/Rendering/ElementReferenceCapture.js.map +0 -1
- package/lib/internal/Rendering/EventDelegator.d.ts +0 -20
- package/lib/internal/Rendering/EventDelegator.js +0 -239
- package/lib/internal/Rendering/EventDelegator.js.map +0 -1
- package/lib/internal/Rendering/EventFieldInfo.d.ts +0 -6
- package/lib/internal/Rendering/EventFieldInfo.js +0 -35
- package/lib/internal/Rendering/EventFieldInfo.js.map +0 -1
- package/lib/internal/Rendering/EventForDotNet.d.ts +0 -10
- package/lib/internal/Rendering/EventForDotNet.js +0 -197
- package/lib/internal/Rendering/EventForDotNet.js.map +0 -1
- package/lib/internal/Rendering/LogicalElements.d.ts +0 -19
- package/lib/internal/Rendering/LogicalElements.js +0 -265
- package/lib/internal/Rendering/LogicalElements.js.map +0 -1
- package/lib/internal/Rendering/RenderBatch/BinaryDecoder.d.ts +0 -5
- package/lib/internal/Rendering/RenderBatch/BinaryDecoder.js +0 -42
- package/lib/internal/Rendering/RenderBatch/BinaryDecoder.js.map +0 -1
- package/lib/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.d.ts +0 -18
- package/lib/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js +0 -193
- package/lib/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js.map +0 -1
- package/lib/internal/Rendering/RenderBatch/RenderBatch.d.ts +0 -87
- package/lib/internal/Rendering/RenderBatch/RenderBatch.js +0 -29
- package/lib/internal/Rendering/RenderBatch/RenderBatch.js.map +0 -1
- package/lib/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.d.ts +0 -52
- package/lib/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js +0 -106
- package/lib/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js.map +0 -1
- package/lib/internal/Rendering/RenderBatch/Utf8Decoder.d.ts +0 -1
- package/lib/internal/Rendering/RenderBatch/Utf8Decoder.js +0 -66
- package/lib/internal/Rendering/RenderBatch/Utf8Decoder.js.map +0 -1
- package/lib/internal/Rendering/Renderer.d.ts +0 -8
- package/lib/internal/Rendering/Renderer.js +0 -76
- package/lib/internal/Rendering/Renderer.js.map +0 -1
- package/lib/internal/Rendering/RendererEventDispatcher.d.ts +0 -4
- package/lib/internal/Rendering/RendererEventDispatcher.js +0 -16
- package/lib/internal/Rendering/RendererEventDispatcher.js.map +0 -1
- package/lib/internal/Services/NavigationManager.d.ts +0 -16
- package/lib/internal/Services/NavigationManager.js +0 -144
- package/lib/internal/Services/NavigationManager.js.map +0 -1
- package/lib/internal/globals.d.ts +0 -1
- package/lib/internal/globals.js +0 -7
- package/lib/internal/globals.js.map +0 -1
- package/lib/internal/index.d.ts +0 -15
- package/lib/internal/index.js +0 -161
- package/lib/internal/index.js.map +0 -1
- package/src/internal/Environment.ts +0 -11
- package/src/internal/Platform/BootConfig.ts +0 -21
- package/src/internal/Platform/Mono/MonoDebugger.ts +0 -48
- package/src/internal/Platform/Mono/MonoPlatform.ts +0 -494
- package/src/internal/Platform/Mono/MonoTypes.d.ts +0 -27
- package/src/internal/Platform/Mono/TimezoneDataFile.ts +0 -46
- package/src/internal/Platform/Platform.ts +0 -40
- package/src/internal/Platform/Url.ts +0 -11
- package/src/internal/Platform/WebAssemblyConfigLoader.ts +0 -34
- package/src/internal/Platform/WebAssemblyResourceLoader.ts +0 -234
- package/src/internal/Platform/WebAssemblyStartOptions.ts +0 -22
- package/src/internal/Rendering/BrowserRenderer.ts +0 -616
- package/src/internal/Rendering/ElementReferenceCapture.ts +0 -27
- package/src/internal/Rendering/EventDelegator.ts +0 -293
- package/src/internal/Rendering/EventFieldInfo.ts +0 -31
- package/src/internal/Rendering/EventForDotNet.ts +0 -370
- package/src/internal/Rendering/LogicalElements.ts +0 -289
- package/src/internal/Rendering/RenderBatch/BinaryDecoder.ts +0 -43
- package/src/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.ts +0 -244
- package/src/internal/Rendering/RenderBatch/RenderBatch.ts +0 -100
- package/src/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.ts +0 -137
- package/src/internal/Rendering/RenderBatch/Utf8Decoder.ts +0 -66
- package/src/internal/Rendering/Renderer.ts +0 -98
- package/src/internal/Rendering/RendererEventDispatcher.ts +0 -20
- package/src/internal/Services/NavigationManager.ts +0 -157
- package/src/internal/globals.ts +0 -5
- package/src/internal/index.ts +0 -170
|
@@ -1,265 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*
|
|
3
|
-
A LogicalElement plays the same role as an Element instance from the point of view of the
|
|
4
|
-
API consumer. Inserting and removing logical elements updates the browser DOM just the same.
|
|
5
|
-
|
|
6
|
-
The difference is that, unlike regular DOM mutation APIs, the LogicalElement APIs don't use
|
|
7
|
-
the underlying DOM structure as the data storage for the element hierarchy. Instead, the
|
|
8
|
-
LogicalElement APIs take care of tracking hierarchical relationships separately. The point
|
|
9
|
-
of this is to permit a logical tree structure in which parent/child relationships don't
|
|
10
|
-
have to be materialized in terms of DOM element parent/child relationships. And the reason
|
|
11
|
-
why we want that is so that hierarchies of Blazor components can be tracked even when those
|
|
12
|
-
components' render output need not be a single literal DOM element.
|
|
13
|
-
|
|
14
|
-
Consumers of the API don't need to know about the implementation, but how it's done is:
|
|
15
|
-
- Each LogicalElement is materialized in the DOM as either:
|
|
16
|
-
- A Node instance, for actual Node instances inserted using 'insertLogicalChild' or
|
|
17
|
-
for Element instances promoted to LogicalElement via 'toLogicalElement'
|
|
18
|
-
- A Comment instance, for 'logical container' instances inserted using 'createAndInsertLogicalContainer'
|
|
19
|
-
- Then, on that instance (i.e., the Node or Comment), we store an array of 'logical children'
|
|
20
|
-
instances, e.g.,
|
|
21
|
-
[firstChild, secondChild, thirdChild, ...]
|
|
22
|
-
... plus we store a reference to the 'logical parent' (if any)
|
|
23
|
-
- The 'logical children' array means we can look up in O(1):
|
|
24
|
-
- The number of logical children (not currently implemented because not required, but trivial)
|
|
25
|
-
- The logical child at any given index
|
|
26
|
-
- Whenever a logical child is added or removed, we update the parent's array of logical children
|
|
27
|
-
*/
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.getClosestDomElement = exports.permuteLogicalChildren = exports.getLogicalChildrenArray = exports.isSvgElement = exports.getLogicalChild = exports.getLogicalSiblingEnd = exports.getLogicalParent = exports.removeLogicalChild = exports.insertLogicalChild = exports.createAndInsertLogicalContainer = exports.toLogicalElement = exports.toLogicalRootCommentElement = void 0;
|
|
30
|
-
var logicalChildrenPropname = createSymbolOrFallback('_blazorLogicalChildren');
|
|
31
|
-
var logicalParentPropname = createSymbolOrFallback('_blazorLogicalParent');
|
|
32
|
-
var logicalEndSiblingPropname = createSymbolOrFallback('_blazorLogicalEnd');
|
|
33
|
-
function toLogicalRootCommentElement(start, end) {
|
|
34
|
-
// Now that we support start/end comments as component delimiters we are going to be setting up
|
|
35
|
-
// adding the components rendered output as siblings of the start/end tags (between).
|
|
36
|
-
// For that to work, we need to appropriately configure the parent element to be a logical element
|
|
37
|
-
// with all their children being the child elements.
|
|
38
|
-
// For example, imagine you have
|
|
39
|
-
// <app>
|
|
40
|
-
// <div><p>Static content</p></div>
|
|
41
|
-
// <!-- start component
|
|
42
|
-
// <!-- end component
|
|
43
|
-
// <footer>Some other content</footer>
|
|
44
|
-
// <app>
|
|
45
|
-
// We want the parent element to be something like
|
|
46
|
-
// *app
|
|
47
|
-
// |- *div
|
|
48
|
-
// |- *component
|
|
49
|
-
// |- *footer
|
|
50
|
-
if (!start.parentNode) {
|
|
51
|
-
throw new Error("Comment not connected to the DOM " + start.textContent);
|
|
52
|
-
}
|
|
53
|
-
var parent = start.parentNode;
|
|
54
|
-
var parentLogicalElement = toLogicalElement(parent, /* allow existing contents */ true);
|
|
55
|
-
var children = getLogicalChildrenArray(parentLogicalElement);
|
|
56
|
-
Array.from(parent.childNodes).forEach(function (n) { return children.push(n); });
|
|
57
|
-
start[logicalParentPropname] = parentLogicalElement;
|
|
58
|
-
// We might not have an end comment in the case of non-prerendered components.
|
|
59
|
-
if (end) {
|
|
60
|
-
start[logicalEndSiblingPropname] = end;
|
|
61
|
-
toLogicalElement(end, /* allowExistingcontents */ true);
|
|
62
|
-
}
|
|
63
|
-
return toLogicalElement(start, /* allowExistingContents */ true);
|
|
64
|
-
}
|
|
65
|
-
exports.toLogicalRootCommentElement = toLogicalRootCommentElement;
|
|
66
|
-
function toLogicalElement(element, allowExistingContents) {
|
|
67
|
-
// Normally it's good to assert that the element has started empty, because that's the usual
|
|
68
|
-
// situation and we probably have a bug if it's not. But for the element that contain prerendered
|
|
69
|
-
// root components, we want to let them keep their content until we replace it.
|
|
70
|
-
if (element.childNodes.length > 0 && !allowExistingContents) {
|
|
71
|
-
throw new Error('New logical elements must start empty, or allowExistingContents must be true');
|
|
72
|
-
}
|
|
73
|
-
element[logicalChildrenPropname] = [];
|
|
74
|
-
return element;
|
|
75
|
-
}
|
|
76
|
-
exports.toLogicalElement = toLogicalElement;
|
|
77
|
-
function createAndInsertLogicalContainer(parent, childIndex) {
|
|
78
|
-
var containerElement = document.createComment('!');
|
|
79
|
-
insertLogicalChild(containerElement, parent, childIndex);
|
|
80
|
-
return containerElement;
|
|
81
|
-
}
|
|
82
|
-
exports.createAndInsertLogicalContainer = createAndInsertLogicalContainer;
|
|
83
|
-
function insertLogicalChild(child, parent, childIndex) {
|
|
84
|
-
var childAsLogicalElement = child;
|
|
85
|
-
if (child instanceof Comment) {
|
|
86
|
-
var existingGrandchildren = getLogicalChildrenArray(childAsLogicalElement);
|
|
87
|
-
if (existingGrandchildren && getLogicalChildrenArray(childAsLogicalElement).length > 0) {
|
|
88
|
-
// There's nothing to stop us implementing support for this scenario, and it's not difficult
|
|
89
|
-
// (after inserting 'child' itself, also iterate through its logical children and physically
|
|
90
|
-
// put them as following-siblings in the DOM). However there's no scenario that requires it
|
|
91
|
-
// presently, so if we did implement it there'd be no good way to have tests for it.
|
|
92
|
-
throw new Error('Not implemented: inserting non-empty logical container');
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
if (getLogicalParent(childAsLogicalElement)) {
|
|
96
|
-
// Likewise, we could easily support this scenario too (in this 'if' block, just splice
|
|
97
|
-
// out 'child' from the logical children array of its previous logical parent by using
|
|
98
|
-
// Array.prototype.indexOf to determine its previous sibling index).
|
|
99
|
-
// But again, since there's not currently any scenario that would use it, we would not
|
|
100
|
-
// have any test coverage for such an implementation.
|
|
101
|
-
throw new Error('Not implemented: moving existing logical children');
|
|
102
|
-
}
|
|
103
|
-
var newSiblings = getLogicalChildrenArray(parent);
|
|
104
|
-
if (childIndex < newSiblings.length) {
|
|
105
|
-
// Insert
|
|
106
|
-
var nextSibling = newSiblings[childIndex];
|
|
107
|
-
nextSibling.parentNode.insertBefore(child, nextSibling);
|
|
108
|
-
newSiblings.splice(childIndex, 0, childAsLogicalElement);
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
// Append
|
|
112
|
-
appendDomNode(child, parent);
|
|
113
|
-
newSiblings.push(childAsLogicalElement);
|
|
114
|
-
}
|
|
115
|
-
childAsLogicalElement[logicalParentPropname] = parent;
|
|
116
|
-
if (!(logicalChildrenPropname in childAsLogicalElement)) {
|
|
117
|
-
childAsLogicalElement[logicalChildrenPropname] = [];
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
exports.insertLogicalChild = insertLogicalChild;
|
|
121
|
-
function removeLogicalChild(parent, childIndex) {
|
|
122
|
-
var childrenArray = getLogicalChildrenArray(parent);
|
|
123
|
-
var childToRemove = childrenArray.splice(childIndex, 1)[0];
|
|
124
|
-
// If it's a logical container, also remove its descendants
|
|
125
|
-
if (childToRemove instanceof Comment) {
|
|
126
|
-
var grandchildrenArray = getLogicalChildrenArray(childToRemove);
|
|
127
|
-
while (grandchildrenArray.length > 0) {
|
|
128
|
-
removeLogicalChild(childToRemove, 0);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
// Finally, remove the node itself
|
|
132
|
-
var domNodeToRemove = childToRemove;
|
|
133
|
-
domNodeToRemove.parentNode.removeChild(domNodeToRemove);
|
|
134
|
-
}
|
|
135
|
-
exports.removeLogicalChild = removeLogicalChild;
|
|
136
|
-
function getLogicalParent(element) {
|
|
137
|
-
return element[logicalParentPropname] || null;
|
|
138
|
-
}
|
|
139
|
-
exports.getLogicalParent = getLogicalParent;
|
|
140
|
-
function getLogicalSiblingEnd(element) {
|
|
141
|
-
return element[logicalEndSiblingPropname] || null;
|
|
142
|
-
}
|
|
143
|
-
exports.getLogicalSiblingEnd = getLogicalSiblingEnd;
|
|
144
|
-
function getLogicalChild(parent, childIndex) {
|
|
145
|
-
return getLogicalChildrenArray(parent)[childIndex];
|
|
146
|
-
}
|
|
147
|
-
exports.getLogicalChild = getLogicalChild;
|
|
148
|
-
function isSvgElement(element) {
|
|
149
|
-
return getClosestDomElement(element).namespaceURI === 'http://www.w3.org/2000/svg';
|
|
150
|
-
}
|
|
151
|
-
exports.isSvgElement = isSvgElement;
|
|
152
|
-
function getLogicalChildrenArray(element) {
|
|
153
|
-
return element[logicalChildrenPropname];
|
|
154
|
-
}
|
|
155
|
-
exports.getLogicalChildrenArray = getLogicalChildrenArray;
|
|
156
|
-
function permuteLogicalChildren(parent, permutationList) {
|
|
157
|
-
// The permutationList must represent a valid permutation, i.e., the list of 'from' indices
|
|
158
|
-
// is distinct, and the list of 'to' indices is a permutation of it. The algorithm here
|
|
159
|
-
// relies on that assumption.
|
|
160
|
-
// Each of the phases here has to happen separately, because each one is designed not to
|
|
161
|
-
// interfere with the indices or DOM entries used by subsequent phases.
|
|
162
|
-
// Phase 1: track which nodes we will move
|
|
163
|
-
var siblings = getLogicalChildrenArray(parent);
|
|
164
|
-
permutationList.forEach(function (listEntry) {
|
|
165
|
-
listEntry.moveRangeStart = siblings[listEntry.fromSiblingIndex];
|
|
166
|
-
listEntry.moveRangeEnd = findLastDomNodeInRange(listEntry.moveRangeStart);
|
|
167
|
-
});
|
|
168
|
-
// Phase 2: insert markers
|
|
169
|
-
permutationList.forEach(function (listEntry) {
|
|
170
|
-
var marker = (listEntry.moveToBeforeMarker = document.createComment('marker'));
|
|
171
|
-
var insertBeforeNode = siblings[listEntry.toSiblingIndex + 1];
|
|
172
|
-
if (insertBeforeNode) {
|
|
173
|
-
insertBeforeNode.parentNode.insertBefore(marker, insertBeforeNode);
|
|
174
|
-
}
|
|
175
|
-
else {
|
|
176
|
-
appendDomNode(marker, parent);
|
|
177
|
-
}
|
|
178
|
-
});
|
|
179
|
-
// Phase 3: move descendants & remove markers
|
|
180
|
-
permutationList.forEach(function (listEntry) {
|
|
181
|
-
var insertBefore = listEntry.moveToBeforeMarker;
|
|
182
|
-
var parentDomNode = insertBefore.parentNode;
|
|
183
|
-
var elementToMove = listEntry.moveRangeStart;
|
|
184
|
-
var moveEndNode = listEntry.moveRangeEnd;
|
|
185
|
-
var nextToMove = elementToMove;
|
|
186
|
-
while (nextToMove) {
|
|
187
|
-
var nextNext = nextToMove.nextSibling;
|
|
188
|
-
parentDomNode.insertBefore(nextToMove, insertBefore);
|
|
189
|
-
if (nextToMove === moveEndNode) {
|
|
190
|
-
break;
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
nextToMove = nextNext;
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
parentDomNode.removeChild(insertBefore);
|
|
197
|
-
});
|
|
198
|
-
// Phase 4: update siblings index
|
|
199
|
-
permutationList.forEach(function (listEntry) {
|
|
200
|
-
siblings[listEntry.toSiblingIndex] = listEntry.moveRangeStart;
|
|
201
|
-
});
|
|
202
|
-
}
|
|
203
|
-
exports.permuteLogicalChildren = permuteLogicalChildren;
|
|
204
|
-
function getClosestDomElement(logicalElement) {
|
|
205
|
-
if (logicalElement instanceof Element) {
|
|
206
|
-
return logicalElement;
|
|
207
|
-
}
|
|
208
|
-
else if (logicalElement instanceof Comment) {
|
|
209
|
-
return logicalElement.parentNode;
|
|
210
|
-
}
|
|
211
|
-
else {
|
|
212
|
-
throw new Error('Not a valid logical element');
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
exports.getClosestDomElement = getClosestDomElement;
|
|
216
|
-
function getLogicalNextSibling(element) {
|
|
217
|
-
var siblings = getLogicalChildrenArray(getLogicalParent(element));
|
|
218
|
-
var siblingIndex = Array.prototype.indexOf.call(siblings, element);
|
|
219
|
-
return siblings[siblingIndex + 1] || null;
|
|
220
|
-
}
|
|
221
|
-
function appendDomNode(child, parent) {
|
|
222
|
-
// This function only puts 'child' into the DOM in the right place relative to 'parent'
|
|
223
|
-
// It does not update the logical children array of anything
|
|
224
|
-
if (parent instanceof Element) {
|
|
225
|
-
parent.appendChild(child);
|
|
226
|
-
}
|
|
227
|
-
else if (parent instanceof Comment) {
|
|
228
|
-
var parentLogicalNextSibling = getLogicalNextSibling(parent);
|
|
229
|
-
if (parentLogicalNextSibling) {
|
|
230
|
-
// Since the parent has a logical next-sibling, its appended child goes right before that
|
|
231
|
-
parentLogicalNextSibling.parentNode.insertBefore(child, parentLogicalNextSibling);
|
|
232
|
-
}
|
|
233
|
-
else {
|
|
234
|
-
// Since the parent has no logical next-sibling, keep recursing upwards until we find
|
|
235
|
-
// a logical ancestor that does have a next-sibling or is a physical element.
|
|
236
|
-
appendDomNode(child, getLogicalParent(parent));
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
else {
|
|
240
|
-
// Should never happen
|
|
241
|
-
throw new Error("Cannot append node because the parent is not a valid logical element. Parent: " + parent);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
// Returns the final node (in depth-first evaluation order) that is a descendant of the logical element.
|
|
245
|
-
// As such, the entire subtree is between 'element' and 'findLastDomNodeInRange(element)' inclusive.
|
|
246
|
-
function findLastDomNodeInRange(element) {
|
|
247
|
-
if (element instanceof Element) {
|
|
248
|
-
return element;
|
|
249
|
-
}
|
|
250
|
-
var nextSibling = getLogicalNextSibling(element);
|
|
251
|
-
if (nextSibling) {
|
|
252
|
-
// Simple case: not the last logical sibling, so take the node before the next sibling
|
|
253
|
-
return nextSibling.previousSibling;
|
|
254
|
-
}
|
|
255
|
-
else {
|
|
256
|
-
// Harder case: there's no logical next-sibling, so recurse upwards until we find
|
|
257
|
-
// a logical ancestor that does have one, or a physical element
|
|
258
|
-
var logicalParent = getLogicalParent(element);
|
|
259
|
-
return logicalParent instanceof Element ? logicalParent.lastChild : findLastDomNodeInRange(logicalParent);
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
function createSymbolOrFallback(fallback) {
|
|
263
|
-
return typeof Symbol === 'function' ? Symbol() : fallback;
|
|
264
|
-
}
|
|
265
|
-
//# sourceMappingURL=LogicalElements.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LogicalElements.js","sourceRoot":"","sources":["../../../src/internal/Rendering/LogicalElements.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare function readInt32LE(buffer: Uint8Array, position: number): any;
|
|
2
|
-
export declare function readUint32LE(buffer: Uint8Array, position: number): any;
|
|
3
|
-
export declare function readUint64LE(buffer: Uint8Array, position: number): any;
|
|
4
|
-
export declare function readLEB128(buffer: Uint8Array, position: number): number;
|
|
5
|
-
export declare function numLEB128Bytes(value: number): 1 | 2 | 3 | 4;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.numLEB128Bytes = exports.readLEB128 = exports.readUint64LE = exports.readUint32LE = exports.readInt32LE = void 0;
|
|
4
|
-
var uint64HighPartShift = Math.pow(2, 32);
|
|
5
|
-
var maxSafeNumberHighPart = Math.pow(2, 21) - 1; // The high-order int32 from Number.MAX_SAFE_INTEGER
|
|
6
|
-
function readInt32LE(buffer, position) {
|
|
7
|
-
return buffer[position] | (buffer[position + 1] << 8) | (buffer[position + 2] << 16) | (buffer[position + 3] << 24);
|
|
8
|
-
}
|
|
9
|
-
exports.readInt32LE = readInt32LE;
|
|
10
|
-
function readUint32LE(buffer, position) {
|
|
11
|
-
return (buffer[position] + (buffer[position + 1] << 8) + (buffer[position + 2] << 16) + ((buffer[position + 3] << 24) >>> 0)); // The >>> 0 coerces the value to unsigned
|
|
12
|
-
}
|
|
13
|
-
exports.readUint32LE = readUint32LE;
|
|
14
|
-
function readUint64LE(buffer, position) {
|
|
15
|
-
// This cannot be done using bit-shift operators in JavaScript, because
|
|
16
|
-
// those all implicitly convert to int32
|
|
17
|
-
var highPart = readUint32LE(buffer, position + 4);
|
|
18
|
-
if (highPart > maxSafeNumberHighPart) {
|
|
19
|
-
throw new Error("Cannot read uint64 with high order part " + highPart + ", because the result would exceed Number.MAX_SAFE_INTEGER.");
|
|
20
|
-
}
|
|
21
|
-
return highPart * uint64HighPartShift + readUint32LE(buffer, position);
|
|
22
|
-
}
|
|
23
|
-
exports.readUint64LE = readUint64LE;
|
|
24
|
-
function readLEB128(buffer, position) {
|
|
25
|
-
var result = 0;
|
|
26
|
-
var shift = 0;
|
|
27
|
-
for (var index = 0; index < 4; index++) {
|
|
28
|
-
var byte = buffer[position + index];
|
|
29
|
-
result |= (byte & 127) << shift;
|
|
30
|
-
if (byte < 128) {
|
|
31
|
-
break;
|
|
32
|
-
}
|
|
33
|
-
shift += 7;
|
|
34
|
-
}
|
|
35
|
-
return result;
|
|
36
|
-
}
|
|
37
|
-
exports.readLEB128 = readLEB128;
|
|
38
|
-
function numLEB128Bytes(value) {
|
|
39
|
-
return value < 128 ? 1 : value < 16384 ? 2 : value < 2097152 ? 3 : 4;
|
|
40
|
-
}
|
|
41
|
-
exports.numLEB128Bytes = numLEB128Bytes;
|
|
42
|
-
//# sourceMappingURL=BinaryDecoder.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BinaryDecoder.js","sourceRoot":"","sources":["../../../../src/internal/Rendering/RenderBatch/BinaryDecoder.ts"],"names":[],"mappings":";;;AAAA,IAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC5C,IAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,oDAAoD;AAEvG,SAAgB,WAAW,CAAC,MAAkB,EAAE,QAAgB;IAC9D,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACtH,CAAC;AAFD,kCAEC;AAED,SAAgB,YAAY,CAAC,MAAkB,EAAE,QAAgB;IAC/D,OAAO,CACL,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CACrH,CAAC,CAAC,0CAA0C;AAC/C,CAAC;AAJD,oCAIC;AAED,SAAgB,YAAY,CAAC,MAAkB,EAAE,QAAgB;IAC/D,uEAAuE;IACvE,wCAAwC;IACxC,IAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;IACpD,IAAI,QAAQ,GAAG,qBAAqB,EAAE;QACpC,MAAM,IAAI,KAAK,CACb,6CAA2C,QAAQ,+DAA4D,CAChH,CAAC;KACH;IAED,OAAO,QAAQ,GAAG,mBAAmB,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACzE,CAAC;AAXD,oCAWC;AAED,SAAgB,UAAU,CAAC,MAAkB,EAAE,QAAgB;IAC7D,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE;QACtC,IAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;QACtC,MAAM,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,KAAK,CAAC;QAChC,IAAI,IAAI,GAAG,GAAG,EAAE;YACd,MAAM;SACP;QACD,KAAK,IAAI,CAAC,CAAC;KACZ;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAZD,gCAYC;AAED,SAAgB,cAAc,CAAC,KAAa;IAC1C,OAAO,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AAFD,wCAEC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { RenderBatch, ArrayRange, RenderTreeDiff, ArrayValues, RenderTreeFrame, RenderTreeDiffReader, RenderTreeFrameReader, RenderTreeEditReader, ArrayRangeReader, ArrayBuilderSegmentReader } from './RenderBatch';
|
|
2
|
-
export declare class OutOfProcessRenderBatch implements RenderBatch {
|
|
3
|
-
private batchData;
|
|
4
|
-
constructor(batchData: Uint8Array);
|
|
5
|
-
updatedComponents(): ArrayRange<RenderTreeDiff>;
|
|
6
|
-
referenceFrames(): ArrayRange<RenderTreeFrame>;
|
|
7
|
-
disposedComponentIds(): ArrayRange<number>;
|
|
8
|
-
disposedEventHandlerIds(): ArrayRange<number>;
|
|
9
|
-
updatedComponentsEntry(values: ArrayValues<RenderTreeDiff>, index: number): RenderTreeDiff;
|
|
10
|
-
referenceFramesEntry(values: ArrayValues<RenderTreeFrame>, index: number): RenderTreeFrame;
|
|
11
|
-
disposedComponentIdsEntry(values: ArrayValues<number>, index: number): number;
|
|
12
|
-
disposedEventHandlerIdsEntry(values: ArrayValues<number>, index: number): number;
|
|
13
|
-
diffReader: RenderTreeDiffReader;
|
|
14
|
-
editReader: RenderTreeEditReader;
|
|
15
|
-
frameReader: RenderTreeFrameReader;
|
|
16
|
-
arrayRangeReader: ArrayRangeReader;
|
|
17
|
-
arrayBuilderSegmentReader: ArrayBuilderSegmentReader;
|
|
18
|
-
}
|
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.OutOfProcessRenderBatch = void 0;
|
|
4
|
-
var Utf8Decoder_1 = require("./Utf8Decoder");
|
|
5
|
-
var BinaryDecoder_1 = require("./BinaryDecoder");
|
|
6
|
-
var updatedComponentsEntryLength = 4; // Each is a single int32 giving the location of the data
|
|
7
|
-
var referenceFramesEntryLength = 20; // 1 int for frame type, then 16 bytes for type-specific data
|
|
8
|
-
var disposedComponentIdsEntryLength = 4; // Each is an int32 giving the ID
|
|
9
|
-
var disposedEventHandlerIdsEntryLength = 8; // Each is an int64 giving the ID
|
|
10
|
-
var editsEntryLength = 16; // 4 ints
|
|
11
|
-
var stringTableEntryLength = 4; // Each is an int32 giving the string data location, or -1 for null
|
|
12
|
-
var OutOfProcessRenderBatch = /** @class */ (function () {
|
|
13
|
-
function OutOfProcessRenderBatch(batchData) {
|
|
14
|
-
this.batchData = batchData;
|
|
15
|
-
var stringReader = new OutOfProcessStringReader(batchData);
|
|
16
|
-
this.arrayRangeReader = new OutOfProcessArrayRangeReader(batchData);
|
|
17
|
-
this.arrayBuilderSegmentReader = new OutOfProcessArrayBuilderSegmentReader(batchData);
|
|
18
|
-
this.diffReader = new OutOfProcessRenderTreeDiffReader(batchData);
|
|
19
|
-
this.editReader = new OutOfProcessRenderTreeEditReader(batchData, stringReader);
|
|
20
|
-
this.frameReader = new OutOfProcessRenderTreeFrameReader(batchData, stringReader);
|
|
21
|
-
}
|
|
22
|
-
OutOfProcessRenderBatch.prototype.updatedComponents = function () {
|
|
23
|
-
return BinaryDecoder_1.readInt32LE(this.batchData, this.batchData.length - 20); // 5th-from-last int32
|
|
24
|
-
};
|
|
25
|
-
OutOfProcessRenderBatch.prototype.referenceFrames = function () {
|
|
26
|
-
return BinaryDecoder_1.readInt32LE(this.batchData, this.batchData.length - 16); // 4th-from-last int32
|
|
27
|
-
};
|
|
28
|
-
OutOfProcessRenderBatch.prototype.disposedComponentIds = function () {
|
|
29
|
-
return BinaryDecoder_1.readInt32LE(this.batchData, this.batchData.length - 12); // 3rd-from-last int32
|
|
30
|
-
};
|
|
31
|
-
OutOfProcessRenderBatch.prototype.disposedEventHandlerIds = function () {
|
|
32
|
-
return BinaryDecoder_1.readInt32LE(this.batchData, this.batchData.length - 8); // 2th-from-last int32
|
|
33
|
-
};
|
|
34
|
-
OutOfProcessRenderBatch.prototype.updatedComponentsEntry = function (values, index) {
|
|
35
|
-
var tableEntryPos = values + index * updatedComponentsEntryLength;
|
|
36
|
-
return BinaryDecoder_1.readInt32LE(this.batchData, tableEntryPos);
|
|
37
|
-
};
|
|
38
|
-
OutOfProcessRenderBatch.prototype.referenceFramesEntry = function (values, index) {
|
|
39
|
-
return (values + index * referenceFramesEntryLength);
|
|
40
|
-
};
|
|
41
|
-
OutOfProcessRenderBatch.prototype.disposedComponentIdsEntry = function (values, index) {
|
|
42
|
-
var entryPos = values + index * disposedComponentIdsEntryLength;
|
|
43
|
-
return BinaryDecoder_1.readInt32LE(this.batchData, entryPos);
|
|
44
|
-
};
|
|
45
|
-
OutOfProcessRenderBatch.prototype.disposedEventHandlerIdsEntry = function (values, index) {
|
|
46
|
-
var entryPos = values + index * disposedEventHandlerIdsEntryLength;
|
|
47
|
-
return BinaryDecoder_1.readUint64LE(this.batchData, entryPos);
|
|
48
|
-
};
|
|
49
|
-
return OutOfProcessRenderBatch;
|
|
50
|
-
}());
|
|
51
|
-
exports.OutOfProcessRenderBatch = OutOfProcessRenderBatch;
|
|
52
|
-
var OutOfProcessRenderTreeDiffReader = /** @class */ (function () {
|
|
53
|
-
function OutOfProcessRenderTreeDiffReader(batchDataUint8) {
|
|
54
|
-
this.batchDataUint8 = batchDataUint8;
|
|
55
|
-
}
|
|
56
|
-
OutOfProcessRenderTreeDiffReader.prototype.componentId = function (diff) {
|
|
57
|
-
// First int32 is componentId
|
|
58
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, diff);
|
|
59
|
-
};
|
|
60
|
-
OutOfProcessRenderTreeDiffReader.prototype.edits = function (diff) {
|
|
61
|
-
// Entries data starts after the componentId (which is a 4-byte int)
|
|
62
|
-
return diff + 4;
|
|
63
|
-
};
|
|
64
|
-
OutOfProcessRenderTreeDiffReader.prototype.editsEntry = function (values, index) {
|
|
65
|
-
return values + index * editsEntryLength;
|
|
66
|
-
};
|
|
67
|
-
return OutOfProcessRenderTreeDiffReader;
|
|
68
|
-
}());
|
|
69
|
-
var OutOfProcessRenderTreeEditReader = /** @class */ (function () {
|
|
70
|
-
function OutOfProcessRenderTreeEditReader(batchDataUint8, stringReader) {
|
|
71
|
-
this.batchDataUint8 = batchDataUint8;
|
|
72
|
-
this.stringReader = stringReader;
|
|
73
|
-
}
|
|
74
|
-
OutOfProcessRenderTreeEditReader.prototype.editType = function (edit) {
|
|
75
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, edit); // 1st int
|
|
76
|
-
};
|
|
77
|
-
OutOfProcessRenderTreeEditReader.prototype.siblingIndex = function (edit) {
|
|
78
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, edit + 4); // 2nd int
|
|
79
|
-
};
|
|
80
|
-
OutOfProcessRenderTreeEditReader.prototype.newTreeIndex = function (edit) {
|
|
81
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, edit + 8); // 3rd int
|
|
82
|
-
};
|
|
83
|
-
OutOfProcessRenderTreeEditReader.prototype.moveToSiblingIndex = function (edit) {
|
|
84
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, edit + 8); // 3rd int
|
|
85
|
-
};
|
|
86
|
-
OutOfProcessRenderTreeEditReader.prototype.removedAttributeName = function (edit) {
|
|
87
|
-
var stringIndex = BinaryDecoder_1.readInt32LE(this.batchDataUint8, edit + 12); // 4th int
|
|
88
|
-
return this.stringReader.readString(stringIndex);
|
|
89
|
-
};
|
|
90
|
-
return OutOfProcessRenderTreeEditReader;
|
|
91
|
-
}());
|
|
92
|
-
var OutOfProcessRenderTreeFrameReader = /** @class */ (function () {
|
|
93
|
-
function OutOfProcessRenderTreeFrameReader(batchDataUint8, stringReader) {
|
|
94
|
-
this.batchDataUint8 = batchDataUint8;
|
|
95
|
-
this.stringReader = stringReader;
|
|
96
|
-
}
|
|
97
|
-
// For render frames, the 2nd-4th ints have different meanings depending on frameType.
|
|
98
|
-
// It's the caller's responsibility not to evaluate properties that aren't applicable to the frameType.
|
|
99
|
-
OutOfProcessRenderTreeFrameReader.prototype.frameType = function (frame) {
|
|
100
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame); // 1st int
|
|
101
|
-
};
|
|
102
|
-
OutOfProcessRenderTreeFrameReader.prototype.subtreeLength = function (frame) {
|
|
103
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 4); // 2nd int
|
|
104
|
-
};
|
|
105
|
-
OutOfProcessRenderTreeFrameReader.prototype.elementReferenceCaptureId = function (frame) {
|
|
106
|
-
var stringIndex = BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 4); // 2nd int
|
|
107
|
-
return this.stringReader.readString(stringIndex);
|
|
108
|
-
};
|
|
109
|
-
OutOfProcessRenderTreeFrameReader.prototype.componentId = function (frame) {
|
|
110
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 8); // 3rd int
|
|
111
|
-
};
|
|
112
|
-
OutOfProcessRenderTreeFrameReader.prototype.elementName = function (frame) {
|
|
113
|
-
var stringIndex = BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 8); // 3rd int
|
|
114
|
-
return this.stringReader.readString(stringIndex);
|
|
115
|
-
};
|
|
116
|
-
OutOfProcessRenderTreeFrameReader.prototype.textContent = function (frame) {
|
|
117
|
-
var stringIndex = BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 4); // 2nd int
|
|
118
|
-
return this.stringReader.readString(stringIndex);
|
|
119
|
-
};
|
|
120
|
-
OutOfProcessRenderTreeFrameReader.prototype.markupContent = function (frame) {
|
|
121
|
-
var stringIndex = BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 4); // 2nd int
|
|
122
|
-
return this.stringReader.readString(stringIndex);
|
|
123
|
-
};
|
|
124
|
-
OutOfProcessRenderTreeFrameReader.prototype.attributeName = function (frame) {
|
|
125
|
-
var stringIndex = BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 4); // 2nd int
|
|
126
|
-
return this.stringReader.readString(stringIndex);
|
|
127
|
-
};
|
|
128
|
-
OutOfProcessRenderTreeFrameReader.prototype.attributeValue = function (frame) {
|
|
129
|
-
var stringIndex = BinaryDecoder_1.readInt32LE(this.batchDataUint8, frame + 8); // 3rd int
|
|
130
|
-
return this.stringReader.readString(stringIndex);
|
|
131
|
-
};
|
|
132
|
-
OutOfProcessRenderTreeFrameReader.prototype.attributeEventHandlerId = function (frame) {
|
|
133
|
-
return BinaryDecoder_1.readUint64LE(this.batchDataUint8, frame + 12); // Bytes 12-19
|
|
134
|
-
};
|
|
135
|
-
return OutOfProcessRenderTreeFrameReader;
|
|
136
|
-
}());
|
|
137
|
-
var OutOfProcessStringReader = /** @class */ (function () {
|
|
138
|
-
function OutOfProcessStringReader(batchDataUint8) {
|
|
139
|
-
this.batchDataUint8 = batchDataUint8;
|
|
140
|
-
// Final int gives start position of the string table
|
|
141
|
-
this.stringTableStartIndex = BinaryDecoder_1.readInt32LE(batchDataUint8, batchDataUint8.length - 4);
|
|
142
|
-
}
|
|
143
|
-
OutOfProcessStringReader.prototype.readString = function (index) {
|
|
144
|
-
if (index === -1) {
|
|
145
|
-
// Special value encodes 'null'
|
|
146
|
-
return null;
|
|
147
|
-
}
|
|
148
|
-
else {
|
|
149
|
-
var stringTableEntryPos = BinaryDecoder_1.readInt32LE(this.batchDataUint8, this.stringTableStartIndex + index * stringTableEntryLength);
|
|
150
|
-
// By default, .NET's BinaryWriter gives LEB128-length-prefixed UTF-8 data.
|
|
151
|
-
// This is convenient enough to decode in JavaScript.
|
|
152
|
-
var numUtf8Bytes = BinaryDecoder_1.readLEB128(this.batchDataUint8, stringTableEntryPos);
|
|
153
|
-
var charsStart = stringTableEntryPos + BinaryDecoder_1.numLEB128Bytes(numUtf8Bytes);
|
|
154
|
-
var utf8Data = new Uint8Array(this.batchDataUint8.buffer, this.batchDataUint8.byteOffset + charsStart, numUtf8Bytes);
|
|
155
|
-
return Utf8Decoder_1.decodeUtf8(utf8Data);
|
|
156
|
-
}
|
|
157
|
-
};
|
|
158
|
-
return OutOfProcessStringReader;
|
|
159
|
-
}());
|
|
160
|
-
var OutOfProcessArrayRangeReader = /** @class */ (function () {
|
|
161
|
-
function OutOfProcessArrayRangeReader(batchDataUint8) {
|
|
162
|
-
this.batchDataUint8 = batchDataUint8;
|
|
163
|
-
}
|
|
164
|
-
OutOfProcessArrayRangeReader.prototype.count = function (arrayRange) {
|
|
165
|
-
// First int is count
|
|
166
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, arrayRange);
|
|
167
|
-
};
|
|
168
|
-
OutOfProcessArrayRangeReader.prototype.values = function (arrayRange) {
|
|
169
|
-
// Entries data starts after the 'count' int (i.e., after 4 bytes)
|
|
170
|
-
return arrayRange + 4;
|
|
171
|
-
};
|
|
172
|
-
return OutOfProcessArrayRangeReader;
|
|
173
|
-
}());
|
|
174
|
-
var OutOfProcessArrayBuilderSegmentReader = /** @class */ (function () {
|
|
175
|
-
function OutOfProcessArrayBuilderSegmentReader(batchDataUint8) {
|
|
176
|
-
this.batchDataUint8 = batchDataUint8;
|
|
177
|
-
}
|
|
178
|
-
OutOfProcessArrayBuilderSegmentReader.prototype.offset = function (arrayBuilderSegment) {
|
|
179
|
-
// Not used by the out-of-process representation of RenderBatch data.
|
|
180
|
-
// This only exists on the ArrayBuilderSegmentReader for the shared-memory representation.
|
|
181
|
-
return 0;
|
|
182
|
-
};
|
|
183
|
-
OutOfProcessArrayBuilderSegmentReader.prototype.count = function (arrayBuilderSegment) {
|
|
184
|
-
// First int is count
|
|
185
|
-
return BinaryDecoder_1.readInt32LE(this.batchDataUint8, arrayBuilderSegment);
|
|
186
|
-
};
|
|
187
|
-
OutOfProcessArrayBuilderSegmentReader.prototype.values = function (arrayBuilderSegment) {
|
|
188
|
-
// Entries data starts after the 'count' int (i.e., after 4 bytes)
|
|
189
|
-
return arrayBuilderSegment + 4;
|
|
190
|
-
};
|
|
191
|
-
return OutOfProcessArrayBuilderSegmentReader;
|
|
192
|
-
}());
|
|
193
|
-
//# sourceMappingURL=OutOfProcessRenderBatch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OutOfProcessRenderBatch.js","sourceRoot":"","sources":["../../../../src/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.ts"],"names":[],"mappings":";;;AAgBA,6CAA2C;AAC3C,iDAAwF;AAExF,IAAM,4BAA4B,GAAG,CAAC,CAAC,CAAC,yDAAyD;AACjG,IAAM,0BAA0B,GAAG,EAAE,CAAC,CAAC,6DAA6D;AACpG,IAAM,+BAA+B,GAAG,CAAC,CAAC,CAAC,iCAAiC;AAC5E,IAAM,kCAAkC,GAAG,CAAC,CAAC,CAAC,iCAAiC;AAC/E,IAAM,gBAAgB,GAAG,EAAE,CAAC,CAAC,SAAS;AACtC,IAAM,sBAAsB,GAAG,CAAC,CAAC,CAAC,mEAAmE;AAErG;IACE,iCAAoB,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;QACvC,IAAM,YAAY,GAAG,IAAI,wBAAwB,CAAC,SAAS,CAAC,CAAC;QAE7D,IAAI,CAAC,gBAAgB,GAAG,IAAI,4BAA4B,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,yBAAyB,GAAG,IAAI,qCAAqC,CAAC,SAAS,CAAC,CAAC;QACtF,IAAI,CAAC,UAAU,GAAG,IAAI,gCAAgC,CAAC,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,UAAU,GAAG,IAAI,gCAAgC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAChF,IAAI,CAAC,WAAW,GAAG,IAAI,iCAAiC,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IACpF,CAAC;IAED,mDAAiB,GAAjB;QACE,OAAO,2BAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,sBAAsB;IACxF,CAAC;IAED,iDAAe,GAAf;QACE,OAAO,2BAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,sBAAsB;IACxF,CAAC;IAED,sDAAoB,GAApB;QACE,OAAO,2BAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,sBAAsB;IACxF,CAAC;IAED,yDAAuB,GAAvB;QACE,OAAO,2BAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,sBAAsB;IACvF,CAAC;IAED,wDAAsB,GAAtB,UAAuB,MAAmC,EAAE,KAAa;QACvE,IAAM,aAAa,GAAI,MAAc,GAAG,KAAK,GAAG,4BAA4B,CAAC;QAC7E,OAAO,2BAAW,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACpD,CAAC;IAED,sDAAoB,GAApB,UAAqB,MAAoC,EAAE,KAAa;QACtE,OAAO,CAAE,MAAc,GAAG,KAAK,GAAG,0BAA0B,CAAQ,CAAC;IACvE,CAAC;IAED,2DAAyB,GAAzB,UAA0B,MAA2B,EAAE,KAAa;QAClE,IAAM,QAAQ,GAAI,MAAc,GAAG,KAAK,GAAG,+BAA+B,CAAC;QAC3E,OAAO,2BAAW,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAED,8DAA4B,GAA5B,UAA6B,MAA2B,EAAE,KAAa;QACrE,IAAM,QAAQ,GAAI,MAAc,GAAG,KAAK,GAAG,kCAAkC,CAAC;QAC9E,OAAO,4BAAY,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAWH,8BAAC;AAAD,CAAC,AAvDD,IAuDC;AAvDY,0DAAuB;AAyDpC;IACE,0CAAoB,cAA0B;QAA1B,mBAAc,GAAd,cAAc,CAAY;IAAG,CAAC;IAElD,sDAAW,GAAX,UAAY,IAAoB;QAC9B,6BAA6B;QAC7B,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAE,IAAW,CAAC,CAAC;IACvD,CAAC;IAED,gDAAK,GAAL,UAAM,IAAoB;QACxB,oEAAoE;QACpE,OAAQ,IAAY,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,qDAAU,GAAV,UAAW,MAAmC,EAAE,KAAa;QAC3D,OAAQ,MAAc,GAAG,KAAK,GAAG,gBAAgB,CAAC;IACpD,CAAC;IACH,uCAAC;AAAD,CAAC,AAhBD,IAgBC;AAED;IACE,0CAAoB,cAA0B,EAAU,YAAsC;QAA1E,mBAAc,GAAd,cAAc,CAAY;QAAU,iBAAY,GAAZ,YAAY,CAA0B;IAAG,CAAC;IAElG,mDAAQ,GAAR,UAAS,IAAoB;QAC3B,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAE,IAAW,CAAC,CAAC,CAAC,UAAU;IAClE,CAAC;IAED,uDAAY,GAAZ,UAAa,IAAoB;QAC/B,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,IAAY,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;IACxE,CAAC;IAED,uDAAY,GAAZ,UAAa,IAAoB;QAC/B,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,IAAY,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;IACxE,CAAC;IAED,6DAAkB,GAAlB,UAAmB,IAAoB;QACrC,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,IAAY,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;IACxE,CAAC;IAED,+DAAoB,GAApB,UAAqB,IAAoB;QACvC,IAAM,WAAW,GAAG,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,IAAY,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU;QACpF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IACH,uCAAC;AAAD,CAAC,AAvBD,IAuBC;AAED;IACE,2CAAoB,cAA0B,EAAU,YAAsC;QAA1E,mBAAc,GAAd,cAAc,CAAY;QAAU,iBAAY,GAAZ,YAAY,CAA0B;IAAG,CAAC;IAElG,sFAAsF;IACtF,uGAAuG;IAEvG,qDAAS,GAAT,UAAU,KAAsB;QAC9B,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAE,KAAY,CAAC,CAAC,CAAC,UAAU;IACnE,CAAC;IAED,yDAAa,GAAb,UAAc,KAAsB;QAClC,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;IACzE,CAAC;IAED,qEAAyB,GAAzB,UAA0B,KAAsB;QAC9C,IAAM,WAAW,GAAG,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;QACpF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,uDAAW,GAAX,UAAY,KAAsB;QAChC,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;IACzE,CAAC;IAED,uDAAW,GAAX,UAAY,KAAsB;QAChC,IAAM,WAAW,GAAG,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;QACpF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,uDAAW,GAAX,UAAY,KAAsB;QAChC,IAAM,WAAW,GAAG,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;QACpF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,yDAAa,GAAb,UAAc,KAAsB;QAClC,IAAM,WAAW,GAAG,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;QACpF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAE,CAAC;IACpD,CAAC;IAED,yDAAa,GAAb,UAAc,KAAsB;QAClC,IAAM,WAAW,GAAG,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;QACpF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,0DAAc,GAAd,UAAe,KAAsB;QACnC,IAAM,WAAW,GAAG,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU;QACpF,OAAO,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,mEAAuB,GAAvB,UAAwB,KAAsB;QAC5C,OAAO,4BAAY,CAAC,IAAI,CAAC,cAAc,EAAG,KAAa,GAAG,EAAE,CAAC,CAAC,CAAC,cAAc;IAC/E,CAAC;IACH,wCAAC;AAAD,CAAC,AAnDD,IAmDC;AAED;IAGE,kCAAoB,cAA0B;QAA1B,mBAAc,GAAd,cAAc,CAAY;QAC5C,qDAAqD;QACrD,IAAI,CAAC,qBAAqB,GAAG,2BAAW,CAAC,cAAc,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACtF,CAAC;IAED,6CAAU,GAAV,UAAW,KAAa;QACtB,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,+BAA+B;YAC/B,OAAO,IAAI,CAAC;SACb;aAAM;YACL,IAAM,mBAAmB,GAAG,2BAAW,CACrC,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,qBAAqB,GAAG,KAAK,GAAG,sBAAsB,CAC5D,CAAC;YAEF,2EAA2E;YAC3E,qDAAqD;YACrD,IAAM,YAAY,GAAG,0BAAU,CAAC,IAAI,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;YAC1E,IAAM,UAAU,GAAG,mBAAmB,GAAG,8BAAc,CAAC,YAAY,CAAC,CAAC;YACtE,IAAM,QAAQ,GAAG,IAAI,UAAU,CAC7B,IAAI,CAAC,cAAc,CAAC,MAAM,EAC1B,IAAI,CAAC,cAAc,CAAC,UAAU,GAAG,UAAU,EAC3C,YAAY,CACb,CAAC;YACF,OAAO,wBAAU,CAAC,QAAQ,CAAC,CAAC;SAC7B;IACH,CAAC;IACH,+BAAC;AAAD,CAAC,AA9BD,IA8BC;AAED;IACE,sCAAoB,cAA0B;QAA1B,mBAAc,GAAd,cAAc,CAAY;IAAG,CAAC;IAElD,4CAAK,GAAL,UAAS,UAAyB;QAChC,qBAAqB;QACrB,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAE,UAAiB,CAAC,CAAC;IAC7D,CAAC;IAED,6CAAM,GAAN,UAAU,UAAyB;QACjC,kEAAkE;QAClE,OAAQ,UAAkB,GAAG,CAAC,CAAC;IACjC,CAAC;IACH,mCAAC;AAAD,CAAC,AAZD,IAYC;AAED;IACE,+CAAoB,cAA0B;QAA1B,mBAAc,GAAd,cAAc,CAAY;IAAG,CAAC;IAElD,sDAAM,GAAN,UAAU,mBAA2C;QACnD,qEAAqE;QACrE,0FAA0F;QAC1F,OAAO,CAAC,CAAC;IACX,CAAC;IAED,qDAAK,GAAL,UAAS,mBAA2C;QAClD,qBAAqB;QACrB,OAAO,2BAAW,CAAC,IAAI,CAAC,cAAc,EAAE,mBAA0B,CAAC,CAAC;IACtE,CAAC;IAED,sDAAM,GAAN,UAAU,mBAA2C;QACnD,kEAAkE;QAClE,OAAQ,mBAA2B,GAAG,CAAC,CAAC;IAC1C,CAAC;IACH,4CAAC;AAAD,CAAC,AAlBD,IAkBC"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
export interface RenderBatch {
|
|
2
|
-
updatedComponents(): ArrayRange<RenderTreeDiff>;
|
|
3
|
-
referenceFrames(): ArrayRange<RenderTreeFrame>;
|
|
4
|
-
disposedComponentIds(): ArrayRange<number>;
|
|
5
|
-
disposedEventHandlerIds(): ArrayRange<number>;
|
|
6
|
-
updatedComponentsEntry(values: ArrayValues<RenderTreeDiff>, index: number): RenderTreeDiff;
|
|
7
|
-
referenceFramesEntry(values: ArrayValues<RenderTreeFrame>, index: number): RenderTreeFrame;
|
|
8
|
-
disposedComponentIdsEntry(values: ArrayValues<number>, index: number): number;
|
|
9
|
-
disposedEventHandlerIdsEntry(values: ArrayValues<number>, index: number): number;
|
|
10
|
-
diffReader: RenderTreeDiffReader;
|
|
11
|
-
editReader: RenderTreeEditReader;
|
|
12
|
-
frameReader: RenderTreeFrameReader;
|
|
13
|
-
arrayRangeReader: ArrayRangeReader;
|
|
14
|
-
arrayBuilderSegmentReader: ArrayBuilderSegmentReader;
|
|
15
|
-
}
|
|
16
|
-
export interface ArrayRangeReader {
|
|
17
|
-
count<T>(arrayRange: ArrayRange<T>): number;
|
|
18
|
-
values<T>(arrayRange: ArrayRange<T>): ArrayValues<T>;
|
|
19
|
-
}
|
|
20
|
-
export interface ArrayBuilderSegmentReader {
|
|
21
|
-
offset<T>(arrayBuilderSegment: ArrayBuilderSegment<T>): number;
|
|
22
|
-
count<T>(arrayBuilderSegment: ArrayBuilderSegment<T>): number;
|
|
23
|
-
values<T>(arrayBuilderSegment: ArrayBuilderSegment<T>): ArrayValues<T>;
|
|
24
|
-
}
|
|
25
|
-
export interface RenderTreeDiffReader {
|
|
26
|
-
componentId(diff: RenderTreeDiff): number;
|
|
27
|
-
edits(diff: RenderTreeDiff): ArrayBuilderSegment<RenderTreeEdit>;
|
|
28
|
-
editsEntry(values: ArrayValues<RenderTreeEdit>, index: number): RenderTreeEdit;
|
|
29
|
-
}
|
|
30
|
-
export interface RenderTreeEditReader {
|
|
31
|
-
editType(edit: RenderTreeEdit): EditType;
|
|
32
|
-
siblingIndex(edit: RenderTreeEdit): number;
|
|
33
|
-
newTreeIndex(edit: RenderTreeEdit): number;
|
|
34
|
-
moveToSiblingIndex(edit: RenderTreeEdit): number;
|
|
35
|
-
removedAttributeName(edit: RenderTreeEdit): string | null;
|
|
36
|
-
}
|
|
37
|
-
export interface RenderTreeFrameReader {
|
|
38
|
-
frameType(frame: RenderTreeFrame): FrameType;
|
|
39
|
-
subtreeLength(frame: RenderTreeFrame): number;
|
|
40
|
-
elementReferenceCaptureId(frame: RenderTreeFrame): string | null;
|
|
41
|
-
componentId(frame: RenderTreeFrame): number;
|
|
42
|
-
elementName(frame: RenderTreeFrame): string | null;
|
|
43
|
-
textContent(frame: RenderTreeFrame): string | null;
|
|
44
|
-
markupContent(frame: RenderTreeFrame): string;
|
|
45
|
-
attributeName(frame: RenderTreeFrame): string | null;
|
|
46
|
-
attributeValue(frame: RenderTreeFrame): string | null;
|
|
47
|
-
attributeEventHandlerId(frame: RenderTreeFrame): number;
|
|
48
|
-
}
|
|
49
|
-
export interface ArrayRange<T> {
|
|
50
|
-
ArrayRange__DO_NOT_IMPLEMENT: any;
|
|
51
|
-
}
|
|
52
|
-
export interface ArrayBuilderSegment<T> {
|
|
53
|
-
ArrayBuilderSegment__DO_NOT_IMPLEMENT: any;
|
|
54
|
-
}
|
|
55
|
-
export interface ArrayValues<T> {
|
|
56
|
-
ArrayValues__DO_NOT_IMPLEMENT: any;
|
|
57
|
-
}
|
|
58
|
-
export interface RenderTreeDiff {
|
|
59
|
-
RenderTreeDiff__DO_NOT_IMPLEMENT: any;
|
|
60
|
-
}
|
|
61
|
-
export interface RenderTreeFrame {
|
|
62
|
-
RenderTreeFrame__DO_NOT_IMPLEMENT: any;
|
|
63
|
-
}
|
|
64
|
-
export interface RenderTreeEdit {
|
|
65
|
-
RenderTreeEdit__DO_NOT_IMPLEMENT: any;
|
|
66
|
-
}
|
|
67
|
-
export declare enum EditType {
|
|
68
|
-
prependFrame = 1,
|
|
69
|
-
removeFrame = 2,
|
|
70
|
-
setAttribute = 3,
|
|
71
|
-
removeAttribute = 4,
|
|
72
|
-
updateText = 5,
|
|
73
|
-
stepIn = 6,
|
|
74
|
-
stepOut = 7,
|
|
75
|
-
updateMarkup = 8,
|
|
76
|
-
permutationListEntry = 9,
|
|
77
|
-
permutationListEnd = 10
|
|
78
|
-
}
|
|
79
|
-
export declare enum FrameType {
|
|
80
|
-
element = 1,
|
|
81
|
-
text = 2,
|
|
82
|
-
attribute = 3,
|
|
83
|
-
component = 4,
|
|
84
|
-
region = 5,
|
|
85
|
-
elementReferenceCapture = 6,
|
|
86
|
-
markup = 8
|
|
87
|
-
}
|