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.
Files changed (236) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +55 -12
  3. package/convert.d.ts +13 -10
  4. package/convert.js +17 -12
  5. package/esm/converter.d.ts +10 -6
  6. package/esm/converter.js +164 -48
  7. package/esm/converter.js.map +1 -1
  8. package/esm/create.d.ts +21 -1
  9. package/esm/create.js +29 -15
  10. package/esm/create.js.map +1 -1
  11. package/esm/dependencies.d.ts +6 -3
  12. package/esm/dependencies.js +104 -14
  13. package/esm/dependencies.js.map +1 -1
  14. package/esm/events.d.ts +6 -0
  15. package/esm/events.js +145 -0
  16. package/esm/events.js.map +1 -0
  17. package/esm/interop.d.ts +29 -0
  18. package/esm/interop.js +205 -0
  19. package/esm/interop.js.map +1 -0
  20. package/esm/navigation.d.ts +2 -0
  21. package/esm/navigation.js +30 -0
  22. package/esm/navigation.js.map +1 -0
  23. package/esm/types.d.ts +97 -4
  24. package/infra.codegen +53 -68
  25. package/lib/converter.d.ts +10 -6
  26. package/lib/converter.js +164 -48
  27. package/lib/converter.js.map +1 -1
  28. package/lib/create.d.ts +21 -1
  29. package/lib/create.js +31 -17
  30. package/lib/create.js.map +1 -1
  31. package/lib/dependencies.d.ts +6 -3
  32. package/lib/dependencies.js +104 -14
  33. package/lib/dependencies.js.map +1 -1
  34. package/lib/events.d.ts +6 -0
  35. package/lib/events.js +154 -0
  36. package/lib/events.js.map +1 -0
  37. package/lib/index.js +1 -1
  38. package/lib/interop.d.ts +29 -0
  39. package/lib/interop.js +226 -0
  40. package/lib/interop.js.map +1 -0
  41. package/lib/navigation.d.ts +2 -0
  42. package/lib/navigation.js +35 -0
  43. package/lib/navigation.js.map +1 -0
  44. package/lib/types.d.ts +97 -4
  45. package/package.json +26 -13
  46. package/src/converter.ts +237 -57
  47. package/src/create.ts +53 -9
  48. package/src/dependencies.ts +122 -14
  49. package/src/events.ts +174 -0
  50. package/src/interop.ts +273 -0
  51. package/src/navigation.ts +36 -0
  52. package/src/types.ts +115 -4
  53. package/convert.ts +0 -17
  54. package/esm/internal/Environment.d.ts +0 -3
  55. package/esm/internal/Environment.js +0 -6
  56. package/esm/internal/Environment.js.map +0 -1
  57. package/esm/internal/Platform/BootConfig.d.ts +0 -20
  58. package/esm/internal/Platform/BootConfig.js +0 -10
  59. package/esm/internal/Platform/BootConfig.js.map +0 -1
  60. package/esm/internal/Platform/Mono/MonoDebugger.d.ts +0 -3
  61. package/esm/internal/Platform/Mono/MonoDebugger.js +0 -43
  62. package/esm/internal/Platform/Mono/MonoDebugger.js.map +0 -1
  63. package/esm/internal/Platform/Mono/MonoPlatform.d.ts +0 -2
  64. package/esm/internal/Platform/Mono/MonoPlatform.js +0 -403
  65. package/esm/internal/Platform/Mono/MonoPlatform.js.map +0 -1
  66. package/esm/internal/Platform/Mono/TimezoneDataFile.d.ts +0 -1
  67. package/esm/internal/Platform/Mono/TimezoneDataFile.js +0 -51
  68. package/esm/internal/Platform/Mono/TimezoneDataFile.js.map +0 -1
  69. package/esm/internal/Platform/Platform.d.ts +0 -31
  70. package/esm/internal/Platform/Platform.js +0 -2
  71. package/esm/internal/Platform/Platform.js.map +0 -1
  72. package/esm/internal/Platform/Url.d.ts +0 -2
  73. package/esm/internal/Platform/Url.js +0 -11
  74. package/esm/internal/Platform/Url.js.map +0 -1
  75. package/esm/internal/Platform/WebAssemblyConfigLoader.d.ts +0 -4
  76. package/esm/internal/Platform/WebAssemblyConfigLoader.js +0 -64
  77. package/esm/internal/Platform/WebAssemblyConfigLoader.js.map +0 -1
  78. package/esm/internal/Platform/WebAssemblyResourceLoader.d.ts +0 -24
  79. package/esm/internal/Platform/WebAssemblyResourceLoader.js +0 -223
  80. package/esm/internal/Platform/WebAssemblyResourceLoader.js.map +0 -1
  81. package/esm/internal/Platform/WebAssemblyStartOptions.d.ts +0 -13
  82. package/esm/internal/Platform/WebAssemblyStartOptions.js +0 -2
  83. package/esm/internal/Platform/WebAssemblyStartOptions.js.map +0 -1
  84. package/esm/internal/Rendering/BrowserRenderer.d.ts +0 -38
  85. package/esm/internal/Rendering/BrowserRenderer.js +0 -458
  86. package/esm/internal/Rendering/BrowserRenderer.js.map +0 -1
  87. package/esm/internal/Rendering/ElementReferenceCapture.d.ts +0 -1
  88. package/esm/internal/Rendering/ElementReferenceCapture.js +0 -24
  89. package/esm/internal/Rendering/ElementReferenceCapture.js.map +0 -1
  90. package/esm/internal/Rendering/EventDelegator.d.ts +0 -20
  91. package/esm/internal/Rendering/EventDelegator.js +0 -236
  92. package/esm/internal/Rendering/EventDelegator.js.map +0 -1
  93. package/esm/internal/Rendering/EventFieldInfo.d.ts +0 -6
  94. package/esm/internal/Rendering/EventFieldInfo.js +0 -32
  95. package/esm/internal/Rendering/EventFieldInfo.js.map +0 -1
  96. package/esm/internal/Rendering/EventForDotNet.d.ts +0 -10
  97. package/esm/internal/Rendering/EventForDotNet.js +0 -194
  98. package/esm/internal/Rendering/EventForDotNet.js.map +0 -1
  99. package/esm/internal/Rendering/LogicalElements.d.ts +0 -19
  100. package/esm/internal/Rendering/LogicalElements.js +0 -250
  101. package/esm/internal/Rendering/LogicalElements.js.map +0 -1
  102. package/esm/internal/Rendering/RenderBatch/BinaryDecoder.d.ts +0 -5
  103. package/esm/internal/Rendering/RenderBatch/BinaryDecoder.js +0 -34
  104. package/esm/internal/Rendering/RenderBatch/BinaryDecoder.js.map +0 -1
  105. package/esm/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.d.ts +0 -18
  106. package/esm/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js +0 -190
  107. package/esm/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js.map +0 -1
  108. package/esm/internal/Rendering/RenderBatch/RenderBatch.d.ts +0 -87
  109. package/esm/internal/Rendering/RenderBatch/RenderBatch.js +0 -26
  110. package/esm/internal/Rendering/RenderBatch/RenderBatch.js.map +0 -1
  111. package/esm/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.d.ts +0 -52
  112. package/esm/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js +0 -103
  113. package/esm/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js.map +0 -1
  114. package/esm/internal/Rendering/RenderBatch/Utf8Decoder.d.ts +0 -1
  115. package/esm/internal/Rendering/RenderBatch/Utf8Decoder.js +0 -63
  116. package/esm/internal/Rendering/RenderBatch/Utf8Decoder.js.map +0 -1
  117. package/esm/internal/Rendering/Renderer.d.ts +0 -8
  118. package/esm/internal/Rendering/Renderer.js +0 -69
  119. package/esm/internal/Rendering/Renderer.js.map +0 -1
  120. package/esm/internal/Rendering/RendererEventDispatcher.d.ts +0 -4
  121. package/esm/internal/Rendering/RendererEventDispatcher.js +0 -11
  122. package/esm/internal/Rendering/RendererEventDispatcher.js.map +0 -1
  123. package/esm/internal/Services/NavigationManager.d.ts +0 -16
  124. package/esm/internal/Services/NavigationManager.js +0 -138
  125. package/esm/internal/Services/NavigationManager.js.map +0 -1
  126. package/esm/internal/globals.d.ts +0 -1
  127. package/esm/internal/globals.js +0 -5
  128. package/esm/internal/globals.js.map +0 -1
  129. package/esm/internal/index.d.ts +0 -15
  130. package/esm/internal/index.js +0 -152
  131. package/esm/internal/index.js.map +0 -1
  132. package/lib/internal/Environment.d.ts +0 -3
  133. package/lib/internal/Environment.js +0 -9
  134. package/lib/internal/Environment.js.map +0 -1
  135. package/lib/internal/Platform/BootConfig.d.ts +0 -20
  136. package/lib/internal/Platform/BootConfig.js +0 -13
  137. package/lib/internal/Platform/BootConfig.js.map +0 -1
  138. package/lib/internal/Platform/Mono/MonoDebugger.d.ts +0 -3
  139. package/lib/internal/Platform/Mono/MonoDebugger.js +0 -48
  140. package/lib/internal/Platform/Mono/MonoDebugger.js.map +0 -1
  141. package/lib/internal/Platform/Mono/MonoPlatform.d.ts +0 -2
  142. package/lib/internal/Platform/Mono/MonoPlatform.js +0 -406
  143. package/lib/internal/Platform/Mono/MonoPlatform.js.map +0 -1
  144. package/lib/internal/Platform/Mono/TimezoneDataFile.d.ts +0 -1
  145. package/lib/internal/Platform/Mono/TimezoneDataFile.js +0 -55
  146. package/lib/internal/Platform/Mono/TimezoneDataFile.js.map +0 -1
  147. package/lib/internal/Platform/Platform.d.ts +0 -31
  148. package/lib/internal/Platform/Platform.js +0 -3
  149. package/lib/internal/Platform/Platform.js.map +0 -1
  150. package/lib/internal/Platform/Url.d.ts +0 -2
  151. package/lib/internal/Platform/Url.js +0 -16
  152. package/lib/internal/Platform/Url.js.map +0 -1
  153. package/lib/internal/Platform/WebAssemblyConfigLoader.d.ts +0 -4
  154. package/lib/internal/Platform/WebAssemblyConfigLoader.js +0 -67
  155. package/lib/internal/Platform/WebAssemblyConfigLoader.js.map +0 -1
  156. package/lib/internal/Platform/WebAssemblyResourceLoader.d.ts +0 -24
  157. package/lib/internal/Platform/WebAssemblyResourceLoader.js +0 -226
  158. package/lib/internal/Platform/WebAssemblyResourceLoader.js.map +0 -1
  159. package/lib/internal/Platform/WebAssemblyStartOptions.d.ts +0 -13
  160. package/lib/internal/Platform/WebAssemblyStartOptions.js +0 -3
  161. package/lib/internal/Platform/WebAssemblyStartOptions.js.map +0 -1
  162. package/lib/internal/Rendering/BrowserRenderer.d.ts +0 -38
  163. package/lib/internal/Rendering/BrowserRenderer.js +0 -461
  164. package/lib/internal/Rendering/BrowserRenderer.js.map +0 -1
  165. package/lib/internal/Rendering/ElementReferenceCapture.d.ts +0 -1
  166. package/lib/internal/Rendering/ElementReferenceCapture.js +0 -28
  167. package/lib/internal/Rendering/ElementReferenceCapture.js.map +0 -1
  168. package/lib/internal/Rendering/EventDelegator.d.ts +0 -20
  169. package/lib/internal/Rendering/EventDelegator.js +0 -239
  170. package/lib/internal/Rendering/EventDelegator.js.map +0 -1
  171. package/lib/internal/Rendering/EventFieldInfo.d.ts +0 -6
  172. package/lib/internal/Rendering/EventFieldInfo.js +0 -35
  173. package/lib/internal/Rendering/EventFieldInfo.js.map +0 -1
  174. package/lib/internal/Rendering/EventForDotNet.d.ts +0 -10
  175. package/lib/internal/Rendering/EventForDotNet.js +0 -197
  176. package/lib/internal/Rendering/EventForDotNet.js.map +0 -1
  177. package/lib/internal/Rendering/LogicalElements.d.ts +0 -19
  178. package/lib/internal/Rendering/LogicalElements.js +0 -265
  179. package/lib/internal/Rendering/LogicalElements.js.map +0 -1
  180. package/lib/internal/Rendering/RenderBatch/BinaryDecoder.d.ts +0 -5
  181. package/lib/internal/Rendering/RenderBatch/BinaryDecoder.js +0 -42
  182. package/lib/internal/Rendering/RenderBatch/BinaryDecoder.js.map +0 -1
  183. package/lib/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.d.ts +0 -18
  184. package/lib/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js +0 -193
  185. package/lib/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.js.map +0 -1
  186. package/lib/internal/Rendering/RenderBatch/RenderBatch.d.ts +0 -87
  187. package/lib/internal/Rendering/RenderBatch/RenderBatch.js +0 -29
  188. package/lib/internal/Rendering/RenderBatch/RenderBatch.js.map +0 -1
  189. package/lib/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.d.ts +0 -52
  190. package/lib/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js +0 -106
  191. package/lib/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.js.map +0 -1
  192. package/lib/internal/Rendering/RenderBatch/Utf8Decoder.d.ts +0 -1
  193. package/lib/internal/Rendering/RenderBatch/Utf8Decoder.js +0 -66
  194. package/lib/internal/Rendering/RenderBatch/Utf8Decoder.js.map +0 -1
  195. package/lib/internal/Rendering/Renderer.d.ts +0 -8
  196. package/lib/internal/Rendering/Renderer.js +0 -76
  197. package/lib/internal/Rendering/Renderer.js.map +0 -1
  198. package/lib/internal/Rendering/RendererEventDispatcher.d.ts +0 -4
  199. package/lib/internal/Rendering/RendererEventDispatcher.js +0 -16
  200. package/lib/internal/Rendering/RendererEventDispatcher.js.map +0 -1
  201. package/lib/internal/Services/NavigationManager.d.ts +0 -16
  202. package/lib/internal/Services/NavigationManager.js +0 -144
  203. package/lib/internal/Services/NavigationManager.js.map +0 -1
  204. package/lib/internal/globals.d.ts +0 -1
  205. package/lib/internal/globals.js +0 -7
  206. package/lib/internal/globals.js.map +0 -1
  207. package/lib/internal/index.d.ts +0 -15
  208. package/lib/internal/index.js +0 -161
  209. package/lib/internal/index.js.map +0 -1
  210. package/src/internal/Environment.ts +0 -11
  211. package/src/internal/Platform/BootConfig.ts +0 -21
  212. package/src/internal/Platform/Mono/MonoDebugger.ts +0 -48
  213. package/src/internal/Platform/Mono/MonoPlatform.ts +0 -494
  214. package/src/internal/Platform/Mono/MonoTypes.d.ts +0 -27
  215. package/src/internal/Platform/Mono/TimezoneDataFile.ts +0 -46
  216. package/src/internal/Platform/Platform.ts +0 -40
  217. package/src/internal/Platform/Url.ts +0 -11
  218. package/src/internal/Platform/WebAssemblyConfigLoader.ts +0 -34
  219. package/src/internal/Platform/WebAssemblyResourceLoader.ts +0 -234
  220. package/src/internal/Platform/WebAssemblyStartOptions.ts +0 -22
  221. package/src/internal/Rendering/BrowserRenderer.ts +0 -616
  222. package/src/internal/Rendering/ElementReferenceCapture.ts +0 -27
  223. package/src/internal/Rendering/EventDelegator.ts +0 -293
  224. package/src/internal/Rendering/EventFieldInfo.ts +0 -31
  225. package/src/internal/Rendering/EventForDotNet.ts +0 -370
  226. package/src/internal/Rendering/LogicalElements.ts +0 -289
  227. package/src/internal/Rendering/RenderBatch/BinaryDecoder.ts +0 -43
  228. package/src/internal/Rendering/RenderBatch/OutOfProcessRenderBatch.ts +0 -244
  229. package/src/internal/Rendering/RenderBatch/RenderBatch.ts +0 -100
  230. package/src/internal/Rendering/RenderBatch/SharedMemoryRenderBatch.ts +0 -137
  231. package/src/internal/Rendering/RenderBatch/Utf8Decoder.ts +0 -66
  232. package/src/internal/Rendering/Renderer.ts +0 -98
  233. package/src/internal/Rendering/RendererEventDispatcher.ts +0 -20
  234. package/src/internal/Services/NavigationManager.ts +0 -157
  235. package/src/internal/globals.ts +0 -5
  236. package/src/internal/index.ts +0 -170
@@ -1,461 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BrowserRenderer = void 0;
4
- var RenderBatch_1 = require("./RenderBatch/RenderBatch");
5
- var EventDelegator_1 = require("./EventDelegator");
6
- var LogicalElements_1 = require("./LogicalElements");
7
- var ElementReferenceCapture_1 = require("./ElementReferenceCapture");
8
- var RendererEventDispatcher_1 = require("./RendererEventDispatcher");
9
- var NavigationManager_1 = require("../Services/NavigationManager");
10
- var selectValuePropname = '_blazorSelectValue';
11
- var sharedTemplateElemForParsing = document.createElement('template');
12
- var sharedSvgElemForParsing = document.createElementNS('http://www.w3.org/2000/svg', 'g');
13
- var preventDefaultEvents = { submit: true };
14
- var rootComponentsPendingFirstRender = {};
15
- var internalAttributeNamePrefix = '__internal_';
16
- var eventPreventDefaultAttributeNamePrefix = 'preventDefault_';
17
- var eventStopPropagationAttributeNamePrefix = 'stopPropagation_';
18
- var BrowserRenderer = /** @class */ (function () {
19
- function BrowserRenderer(browserRendererId) {
20
- var _this = this;
21
- this.childComponentLocations = {};
22
- this.browserRendererId = browserRendererId;
23
- this.eventDelegator = new EventDelegator_1.EventDelegator(function (event, eventHandlerId, eventArgs, eventFieldInfo) {
24
- raiseEvent(event, _this.browserRendererId, eventHandlerId, eventArgs, eventFieldInfo);
25
- });
26
- NavigationManager_1.attachToEventDelegator(this.eventDelegator);
27
- }
28
- BrowserRenderer.prototype.attachRootComponentToLogicalElement = function (componentId, element) {
29
- this.attachComponentToElement(componentId, element);
30
- rootComponentsPendingFirstRender[componentId] = element;
31
- };
32
- BrowserRenderer.prototype.updateComponent = function (batch, componentId, edits, referenceFrames) {
33
- var element = this.childComponentLocations[componentId];
34
- if (!element) {
35
- throw new Error("No element is currently associated with component " + componentId);
36
- }
37
- // On the first render for each root component, clear any existing content (e.g., prerendered)
38
- var rootElementToClear = rootComponentsPendingFirstRender[componentId];
39
- if (rootElementToClear) {
40
- var rootElementToClearEnd = LogicalElements_1.getLogicalSiblingEnd(rootElementToClear);
41
- delete rootComponentsPendingFirstRender[componentId];
42
- if (!rootElementToClearEnd) {
43
- clearElement(rootElementToClear);
44
- }
45
- else {
46
- clearBetween(rootElementToClear, rootElementToClearEnd);
47
- }
48
- }
49
- var ownerDocument = LogicalElements_1.getClosestDomElement(element).ownerDocument;
50
- var activeElementBefore = ownerDocument && ownerDocument.activeElement;
51
- this.applyEdits(batch, componentId, element, 0, edits, referenceFrames);
52
- // Try to restore focus in case it was lost due to an element move
53
- if (activeElementBefore instanceof HTMLElement &&
54
- ownerDocument &&
55
- ownerDocument.activeElement !== activeElementBefore) {
56
- activeElementBefore.focus();
57
- }
58
- };
59
- BrowserRenderer.prototype.disposeComponent = function (componentId) {
60
- delete this.childComponentLocations[componentId];
61
- };
62
- BrowserRenderer.prototype.disposeEventHandler = function (eventHandlerId) {
63
- this.eventDelegator.removeListener(eventHandlerId);
64
- };
65
- BrowserRenderer.prototype.attachComponentToElement = function (componentId, element) {
66
- this.childComponentLocations[componentId] = element;
67
- };
68
- BrowserRenderer.prototype.applyEdits = function (batch, componentId, parent, childIndex, edits, referenceFrames) {
69
- var currentDepth = 0;
70
- var childIndexAtCurrentDepth = childIndex;
71
- var permutationList;
72
- var arrayBuilderSegmentReader = batch.arrayBuilderSegmentReader;
73
- var editReader = batch.editReader;
74
- var frameReader = batch.frameReader;
75
- var editsValues = arrayBuilderSegmentReader.values(edits);
76
- var editsOffset = arrayBuilderSegmentReader.offset(edits);
77
- var editsLength = arrayBuilderSegmentReader.count(edits);
78
- var maxEditIndexExcl = editsOffset + editsLength;
79
- for (var editIndex = editsOffset; editIndex < maxEditIndexExcl; editIndex++) {
80
- var edit = batch.diffReader.editsEntry(editsValues, editIndex);
81
- var editType = editReader.editType(edit);
82
- switch (editType) {
83
- case RenderBatch_1.EditType.prependFrame: {
84
- var frameIndex = editReader.newTreeIndex(edit);
85
- var frame = batch.referenceFramesEntry(referenceFrames, frameIndex);
86
- var siblingIndex = editReader.siblingIndex(edit);
87
- this.insertFrame(batch, componentId, parent, childIndexAtCurrentDepth + siblingIndex, referenceFrames, frame, frameIndex);
88
- break;
89
- }
90
- case RenderBatch_1.EditType.removeFrame: {
91
- var siblingIndex = editReader.siblingIndex(edit);
92
- LogicalElements_1.removeLogicalChild(parent, childIndexAtCurrentDepth + siblingIndex);
93
- break;
94
- }
95
- case RenderBatch_1.EditType.setAttribute: {
96
- var frameIndex = editReader.newTreeIndex(edit);
97
- var frame = batch.referenceFramesEntry(referenceFrames, frameIndex);
98
- var siblingIndex = editReader.siblingIndex(edit);
99
- var element = LogicalElements_1.getLogicalChild(parent, childIndexAtCurrentDepth + siblingIndex);
100
- if (element instanceof Element) {
101
- this.applyAttribute(batch, componentId, element, frame);
102
- }
103
- else {
104
- throw new Error('Cannot set attribute on non-element child');
105
- }
106
- break;
107
- }
108
- case RenderBatch_1.EditType.removeAttribute: {
109
- // Note that we don't have to dispose the info we track about event handlers here, because the
110
- // disposed event handler IDs are delivered separately (in the 'disposedEventHandlerIds' array)
111
- var siblingIndex = editReader.siblingIndex(edit);
112
- var element = LogicalElements_1.getLogicalChild(parent, childIndexAtCurrentDepth + siblingIndex);
113
- if (element instanceof HTMLElement) {
114
- var attributeName = editReader.removedAttributeName(edit);
115
- // First try to remove any special property we use for this attribute
116
- if (!this.tryApplySpecialProperty(batch, element, attributeName, null)) {
117
- // If that's not applicable, it's a regular DOM attribute so remove that
118
- element.removeAttribute(attributeName);
119
- }
120
- }
121
- else {
122
- throw new Error('Cannot remove attribute from non-element child');
123
- }
124
- break;
125
- }
126
- case RenderBatch_1.EditType.updateText: {
127
- var frameIndex = editReader.newTreeIndex(edit);
128
- var frame = batch.referenceFramesEntry(referenceFrames, frameIndex);
129
- var siblingIndex = editReader.siblingIndex(edit);
130
- var textNode = LogicalElements_1.getLogicalChild(parent, childIndexAtCurrentDepth + siblingIndex);
131
- if (textNode instanceof Text) {
132
- textNode.textContent = frameReader.textContent(frame);
133
- }
134
- else {
135
- throw new Error('Cannot set text content on non-text child');
136
- }
137
- break;
138
- }
139
- case RenderBatch_1.EditType.updateMarkup: {
140
- var frameIndex = editReader.newTreeIndex(edit);
141
- var frame = batch.referenceFramesEntry(referenceFrames, frameIndex);
142
- var siblingIndex = editReader.siblingIndex(edit);
143
- LogicalElements_1.removeLogicalChild(parent, childIndexAtCurrentDepth + siblingIndex);
144
- this.insertMarkup(batch, parent, childIndexAtCurrentDepth + siblingIndex, frame);
145
- break;
146
- }
147
- case RenderBatch_1.EditType.stepIn: {
148
- var siblingIndex = editReader.siblingIndex(edit);
149
- parent = LogicalElements_1.getLogicalChild(parent, childIndexAtCurrentDepth + siblingIndex);
150
- currentDepth++;
151
- childIndexAtCurrentDepth = 0;
152
- break;
153
- }
154
- case RenderBatch_1.EditType.stepOut: {
155
- parent = LogicalElements_1.getLogicalParent(parent);
156
- currentDepth--;
157
- childIndexAtCurrentDepth = currentDepth === 0 ? childIndex : 0; // The childIndex is only ever nonzero at zero depth
158
- break;
159
- }
160
- case RenderBatch_1.EditType.permutationListEntry: {
161
- permutationList = permutationList || [];
162
- permutationList.push({
163
- fromSiblingIndex: childIndexAtCurrentDepth + editReader.siblingIndex(edit),
164
- toSiblingIndex: childIndexAtCurrentDepth + editReader.moveToSiblingIndex(edit),
165
- });
166
- break;
167
- }
168
- case RenderBatch_1.EditType.permutationListEnd: {
169
- LogicalElements_1.permuteLogicalChildren(parent, permutationList);
170
- permutationList = undefined;
171
- break;
172
- }
173
- default: {
174
- var unknownType = editType; // Compile-time verification that the switch was exhaustive
175
- throw new Error("Unknown edit type: " + unknownType);
176
- }
177
- }
178
- }
179
- };
180
- BrowserRenderer.prototype.insertFrame = function (batch, componentId, parent, childIndex, frames, frame, frameIndex) {
181
- var frameReader = batch.frameReader;
182
- var frameType = frameReader.frameType(frame);
183
- switch (frameType) {
184
- case RenderBatch_1.FrameType.element:
185
- this.insertElement(batch, componentId, parent, childIndex, frames, frame, frameIndex);
186
- return 1;
187
- case RenderBatch_1.FrameType.text:
188
- this.insertText(batch, parent, childIndex, frame);
189
- return 1;
190
- case RenderBatch_1.FrameType.attribute:
191
- throw new Error('Attribute frames should only be present as leading children of element frames.');
192
- case RenderBatch_1.FrameType.component:
193
- this.insertComponent(batch, parent, childIndex, frame);
194
- return 1;
195
- case RenderBatch_1.FrameType.region:
196
- return this.insertFrameRange(batch, componentId, parent, childIndex, frames, frameIndex + 1, frameIndex + frameReader.subtreeLength(frame));
197
- case RenderBatch_1.FrameType.elementReferenceCapture:
198
- if (parent instanceof Element) {
199
- ElementReferenceCapture_1.applyCaptureIdToElement(parent, frameReader.elementReferenceCaptureId(frame));
200
- return 0; // A "capture" is a child in the diff, but has no node in the DOM
201
- }
202
- else {
203
- throw new Error('Reference capture frames can only be children of element frames.');
204
- }
205
- case RenderBatch_1.FrameType.markup:
206
- this.insertMarkup(batch, parent, childIndex, frame);
207
- return 1;
208
- default:
209
- var unknownType = frameType; // Compile-time verification that the switch was exhaustive
210
- throw new Error("Unknown frame type: " + unknownType);
211
- }
212
- };
213
- BrowserRenderer.prototype.insertElement = function (batch, componentId, parent, childIndex, frames, frame, frameIndex) {
214
- var frameReader = batch.frameReader;
215
- var tagName = frameReader.elementName(frame);
216
- var newDomElementRaw = tagName === 'svg' || LogicalElements_1.isSvgElement(parent)
217
- ? document.createElementNS('http://www.w3.org/2000/svg', tagName)
218
- : document.createElement(tagName);
219
- var newElement = LogicalElements_1.toLogicalElement(newDomElementRaw);
220
- LogicalElements_1.insertLogicalChild(newDomElementRaw, parent, childIndex);
221
- // Apply attributes
222
- var descendantsEndIndexExcl = frameIndex + frameReader.subtreeLength(frame);
223
- for (var descendantIndex = frameIndex + 1; descendantIndex < descendantsEndIndexExcl; descendantIndex++) {
224
- var descendantFrame = batch.referenceFramesEntry(frames, descendantIndex);
225
- if (frameReader.frameType(descendantFrame) === RenderBatch_1.FrameType.attribute) {
226
- this.applyAttribute(batch, componentId, newDomElementRaw, descendantFrame);
227
- }
228
- else {
229
- // As soon as we see a non-attribute child, all the subsequent child frames are
230
- // not attributes, so bail out and insert the remnants recursively
231
- this.insertFrameRange(batch, componentId, newElement, 0, frames, descendantIndex, descendantsEndIndexExcl);
232
- break;
233
- }
234
- }
235
- // We handle setting 'value' on a <select> in two different ways:
236
- // [1] When inserting a corresponding <option>, in case you're dynamically adding options
237
- // [2] After we finish inserting the <select>, in case the descendant options are being
238
- // added as an opaque markup block rather than individually
239
- // Right here we implement [2]
240
- if (newDomElementRaw instanceof HTMLSelectElement && selectValuePropname in newDomElementRaw) {
241
- var selectValue = newDomElementRaw[selectValuePropname];
242
- newDomElementRaw.value = selectValue;
243
- delete newDomElementRaw[selectValuePropname];
244
- }
245
- };
246
- BrowserRenderer.prototype.insertComponent = function (batch, parent, childIndex, frame) {
247
- var containerElement = LogicalElements_1.createAndInsertLogicalContainer(parent, childIndex);
248
- // All we have to do is associate the child component ID with its location. We don't actually
249
- // do any rendering here, because the diff for the child will appear later in the render batch.
250
- var childComponentId = batch.frameReader.componentId(frame);
251
- this.attachComponentToElement(childComponentId, containerElement);
252
- };
253
- BrowserRenderer.prototype.insertText = function (batch, parent, childIndex, textFrame) {
254
- var textContent = batch.frameReader.textContent(textFrame);
255
- var newTextNode = document.createTextNode(textContent);
256
- LogicalElements_1.insertLogicalChild(newTextNode, parent, childIndex);
257
- };
258
- BrowserRenderer.prototype.insertMarkup = function (batch, parent, childIndex, markupFrame) {
259
- var markupContainer = LogicalElements_1.createAndInsertLogicalContainer(parent, childIndex);
260
- var markupContent = batch.frameReader.markupContent(markupFrame);
261
- var parsedMarkup = parseMarkup(markupContent, LogicalElements_1.isSvgElement(parent));
262
- var logicalSiblingIndex = 0;
263
- while (parsedMarkup.firstChild) {
264
- LogicalElements_1.insertLogicalChild(parsedMarkup.firstChild, markupContainer, logicalSiblingIndex++);
265
- }
266
- };
267
- BrowserRenderer.prototype.applyAttribute = function (batch, componentId, toDomElement, attributeFrame) {
268
- var frameReader = batch.frameReader;
269
- var attributeName = frameReader.attributeName(attributeFrame);
270
- var eventHandlerId = frameReader.attributeEventHandlerId(attributeFrame);
271
- if (eventHandlerId) {
272
- var eventName = stripOnPrefix(attributeName);
273
- this.eventDelegator.setListener(toDomElement, eventName, eventHandlerId, componentId);
274
- return;
275
- }
276
- // First see if we have special handling for this attribute
277
- if (!this.tryApplySpecialProperty(batch, toDomElement, attributeName, attributeFrame)) {
278
- // If not, treat it as a regular string-valued attribute
279
- toDomElement.setAttribute(attributeName, frameReader.attributeValue(attributeFrame));
280
- }
281
- };
282
- BrowserRenderer.prototype.tryApplySpecialProperty = function (batch, element, attributeName, attributeFrame) {
283
- switch (attributeName) {
284
- case 'value':
285
- return this.tryApplyValueProperty(batch, element, attributeFrame);
286
- case 'checked':
287
- return this.tryApplyCheckedProperty(batch, element, attributeFrame);
288
- default: {
289
- if (attributeName.startsWith(internalAttributeNamePrefix)) {
290
- this.applyInternalAttribute(batch, element, attributeName.substring(internalAttributeNamePrefix.length), attributeFrame);
291
- return true;
292
- }
293
- return false;
294
- }
295
- }
296
- };
297
- BrowserRenderer.prototype.applyInternalAttribute = function (batch, element, internalAttributeName, attributeFrame) {
298
- var attributeValue = attributeFrame ? batch.frameReader.attributeValue(attributeFrame) : null;
299
- if (internalAttributeName.startsWith(eventStopPropagationAttributeNamePrefix)) {
300
- // Stop propagation
301
- var eventName = stripOnPrefix(internalAttributeName.substring(eventStopPropagationAttributeNamePrefix.length));
302
- this.eventDelegator.setStopPropagation(element, eventName, attributeValue !== null);
303
- }
304
- else if (internalAttributeName.startsWith(eventPreventDefaultAttributeNamePrefix)) {
305
- // Prevent default
306
- var eventName = stripOnPrefix(internalAttributeName.substring(eventPreventDefaultAttributeNamePrefix.length));
307
- this.eventDelegator.setPreventDefault(element, eventName, attributeValue !== null);
308
- }
309
- else {
310
- // The prefix makes this attribute name reserved, so any other usage is disallowed
311
- throw new Error("Unsupported internal attribute '" + internalAttributeName + "'");
312
- }
313
- };
314
- BrowserRenderer.prototype.tryApplyValueProperty = function (batch, element, attributeFrame) {
315
- // Certain elements have built-in behaviour for their 'value' property
316
- var frameReader = batch.frameReader;
317
- if (element.tagName === 'INPUT' && element.getAttribute('type') === 'time' && !element.getAttribute('step')) {
318
- var timeValue = attributeFrame ? frameReader.attributeValue(attributeFrame) : null;
319
- if (timeValue) {
320
- element['value'] = timeValue.substring(0, 5);
321
- return true;
322
- }
323
- }
324
- switch (element.tagName) {
325
- case 'INPUT':
326
- case 'SELECT':
327
- case 'TEXTAREA': {
328
- var value = attributeFrame ? frameReader.attributeValue(attributeFrame) : null;
329
- element.value = value;
330
- if (element.tagName === 'SELECT') {
331
- // <select> is special, in that anything we write to .value will be lost if there
332
- // isn't yet a matching <option>. To maintain the expected behavior no matter the
333
- // element insertion/update order, preserve the desired value separately so
334
- // we can recover it when inserting any matching <option> or after inserting an
335
- // entire markup block of descendants.
336
- element[selectValuePropname] = value;
337
- }
338
- return true;
339
- }
340
- case 'OPTION': {
341
- var value = attributeFrame ? frameReader.attributeValue(attributeFrame) : null;
342
- if (value) {
343
- element.setAttribute('value', value);
344
- }
345
- else {
346
- element.removeAttribute('value');
347
- }
348
- // See above for why we have this special handling for <select>/<option>
349
- // Note that this is only one of the two cases where we set the value on a <select>
350
- var selectElem = this.findClosestAncestorSelectElement(element);
351
- if (selectElem && selectValuePropname in selectElem && selectElem[selectValuePropname] === value) {
352
- this.tryApplyValueProperty(batch, selectElem, attributeFrame);
353
- delete selectElem[selectValuePropname];
354
- }
355
- return true;
356
- }
357
- default:
358
- return false;
359
- }
360
- };
361
- BrowserRenderer.prototype.tryApplyCheckedProperty = function (batch, element, attributeFrame) {
362
- // Certain elements have built-in behaviour for their 'checked' property
363
- if (element.tagName === 'INPUT') {
364
- var value = attributeFrame ? batch.frameReader.attributeValue(attributeFrame) : null;
365
- element.checked = value !== null;
366
- return true;
367
- }
368
- else {
369
- return false;
370
- }
371
- };
372
- BrowserRenderer.prototype.findClosestAncestorSelectElement = function (element) {
373
- while (element) {
374
- if (element instanceof HTMLSelectElement) {
375
- return element;
376
- }
377
- else {
378
- element = element.parentElement;
379
- }
380
- }
381
- return null;
382
- };
383
- BrowserRenderer.prototype.insertFrameRange = function (batch, componentId, parent, childIndex, frames, startIndex, endIndexExcl) {
384
- var origChildIndex = childIndex;
385
- for (var index = startIndex; index < endIndexExcl; index++) {
386
- var frame = batch.referenceFramesEntry(frames, index);
387
- var numChildrenInserted = this.insertFrame(batch, componentId, parent, childIndex, frames, frame, index);
388
- childIndex += numChildrenInserted;
389
- // Skip over any descendants, since they are already dealt with recursively
390
- index += countDescendantFrames(batch, frame);
391
- }
392
- return childIndex - origChildIndex; // Total number of children inserted
393
- };
394
- return BrowserRenderer;
395
- }());
396
- exports.BrowserRenderer = BrowserRenderer;
397
- function parseMarkup(markup, isSvg) {
398
- if (isSvg) {
399
- sharedSvgElemForParsing.innerHTML = markup || ' ';
400
- return sharedSvgElemForParsing;
401
- }
402
- else {
403
- sharedTemplateElemForParsing.innerHTML = markup || ' ';
404
- return sharedTemplateElemForParsing.content;
405
- }
406
- }
407
- function countDescendantFrames(batch, frame) {
408
- var frameReader = batch.frameReader;
409
- switch (frameReader.frameType(frame)) {
410
- // The following frame types have a subtree length. Other frames may use that memory slot
411
- // to mean something else, so we must not read it. We should consider having nominal subtypes
412
- // of RenderTreeFramePointer that prevent access to non-applicable fields.
413
- case RenderBatch_1.FrameType.component:
414
- case RenderBatch_1.FrameType.element:
415
- case RenderBatch_1.FrameType.region:
416
- return frameReader.subtreeLength(frame) - 1;
417
- default:
418
- return 0;
419
- }
420
- }
421
- function raiseEvent(event, browserRendererId, eventHandlerId, eventArgs, eventFieldInfo) {
422
- if (preventDefaultEvents[event.type]) {
423
- event.preventDefault();
424
- }
425
- var eventDescriptor = {
426
- browserRendererId: browserRendererId,
427
- eventHandlerId: eventHandlerId,
428
- eventArgsType: eventArgs.type,
429
- eventFieldInfo: eventFieldInfo,
430
- };
431
- RendererEventDispatcher_1.dispatchEvent(eventDescriptor, eventArgs.data);
432
- }
433
- function clearElement(element) {
434
- var childNode;
435
- while ((childNode = element.firstChild)) {
436
- element.removeChild(childNode);
437
- }
438
- }
439
- function clearBetween(start, end) {
440
- var logicalParent = LogicalElements_1.getLogicalParent(start);
441
- if (!logicalParent) {
442
- throw new Error("Can't clear between nodes. The start node does not have a logical parent.");
443
- }
444
- var children = LogicalElements_1.getLogicalChildrenArray(logicalParent);
445
- var removeStart = children.indexOf(start) + 1;
446
- var endIndex = children.indexOf(end);
447
- // We remove the end component comment from the DOM as we don't need it after this point.
448
- for (var i = removeStart; i <= endIndex; i++) {
449
- LogicalElements_1.removeLogicalChild(logicalParent, removeStart);
450
- }
451
- // We sanitize the start comment by removing all the information from it now that we don't need it anymore
452
- // as it adds noise to the DOM.
453
- start.textContent = '!';
454
- }
455
- function stripOnPrefix(attributeName) {
456
- if (attributeName.startsWith('on')) {
457
- return attributeName.substring(2);
458
- }
459
- throw new Error("Attribute should be an event name, but doesn't start with 'on'. Value: '" + attributeName + "'");
460
- }
461
- //# sourceMappingURL=BrowserRenderer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BrowserRenderer.js","sourceRoot":"","sources":["../../../src/internal/Rendering/BrowserRenderer.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export declare function applyCaptureIdToElement(element: Element, referenceCaptureId: string): void;
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.applyCaptureIdToElement = void 0;
4
- function applyCaptureIdToElement(element, referenceCaptureId) {
5
- element.setAttribute(getCaptureIdAttributeName(referenceCaptureId), '');
6
- }
7
- exports.applyCaptureIdToElement = applyCaptureIdToElement;
8
- function getElementByCaptureId(referenceCaptureId) {
9
- var selector = "[" + getCaptureIdAttributeName(referenceCaptureId) + "]";
10
- return document.querySelector(selector);
11
- }
12
- function getCaptureIdAttributeName(referenceCaptureId) {
13
- return "_bl_" + referenceCaptureId;
14
- }
15
- // Support receiving ElementRef instances as args in interop calls
16
- var elementRefKey = '__internalId'; // Keep in sync with ElementRef.cs
17
- DotNet.attachReviver(function (key, value) {
18
- if (value &&
19
- typeof value === 'object' &&
20
- value.hasOwnProperty(elementRefKey) &&
21
- typeof value[elementRefKey] === 'string') {
22
- return getElementByCaptureId(value[elementRefKey]);
23
- }
24
- else {
25
- return value;
26
- }
27
- });
28
- //# sourceMappingURL=ElementReferenceCapture.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ElementReferenceCapture.js","sourceRoot":"","sources":["../../../src/internal/Rendering/ElementReferenceCapture.ts"],"names":[],"mappings":";;;AAAA,SAAgB,uBAAuB,CAAC,OAAgB,EAAE,kBAA0B;IAClF,OAAO,CAAC,YAAY,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1E,CAAC;AAFD,0DAEC;AAED,SAAS,qBAAqB,CAAC,kBAA0B;IACvD,IAAM,QAAQ,GAAG,MAAI,yBAAyB,CAAC,kBAAkB,CAAC,MAAG,CAAC;IACtE,OAAO,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,yBAAyB,CAAC,kBAA0B;IAC3D,OAAO,SAAO,kBAAoB,CAAC;AACrC,CAAC;AAED,kEAAkE;AAClE,IAAM,aAAa,GAAG,cAAc,CAAC,CAAC,kCAAkC;AACxE,MAAM,CAAC,aAAa,CAAC,UAAC,GAAG,EAAE,KAAK;IAC9B,IACE,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC;QACnC,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,QAAQ,EACxC;QACA,OAAO,qBAAqB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;KACpD;SAAM;QACL,OAAO,KAAK,CAAC;KACd;AACH,CAAC,CAAC,CAAC"}
@@ -1,20 +0,0 @@
1
- import { EventForDotNet, UIEventArgs } from './EventForDotNet';
2
- import { EventFieldInfo } from './EventFieldInfo';
3
- export interface OnEventCallback {
4
- (event: Event, eventHandlerId: number, eventArgs: EventForDotNet<UIEventArgs>, eventFieldInfo: EventFieldInfo | null): void;
5
- }
6
- export declare class EventDelegator {
7
- private onEvent;
8
- private static nextEventDelegatorId;
9
- private readonly eventsCollectionKey;
10
- private readonly afterClickCallbacks;
11
- private eventInfoStore;
12
- constructor(onEvent: OnEventCallback);
13
- setListener(element: Element, eventName: string, eventHandlerId: number, renderingComponentId: number): void;
14
- removeListener(eventHandlerId: number): void;
15
- notifyAfterClick(callback: (event: MouseEvent) => void): void;
16
- setStopPropagation(element: Element, eventName: string, value: boolean): void;
17
- setPreventDefault(element: Element, eventName: string, value: boolean): void;
18
- private onGlobalEvent;
19
- private getEventHandlerInfosForElement;
20
- }