@nativescript/canvas 2.0.0-webgpu.3 → 2.0.0-webgpu.31

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 (198) hide show
  1. package/Canvas/common.d.ts +4 -9
  2. package/Canvas/common.js +37 -126
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.d.ts +0 -1
  5. package/Canvas/index.android.js +45 -38
  6. package/Canvas/index.android.js.map +1 -1
  7. package/Canvas/index.d.ts +11 -3
  8. package/Canvas/index.ios.js +49 -40
  9. package/Canvas/index.ios.js.map +1 -1
  10. package/Canvas/utils.d.ts +3 -0
  11. package/Canvas/utils.js +85 -0
  12. package/Canvas/utils.js.map +1 -0
  13. package/Canvas2D/CanvasRenderingContext2D/index.d.ts +1 -0
  14. package/Canvas2D/CanvasRenderingContext2D/index.js +1 -0
  15. package/Canvas2D/CanvasRenderingContext2D/index.js.map +1 -1
  16. package/Dom/Group.d.ts +1 -2
  17. package/Dom/Group.js.map +1 -1
  18. package/Dom/Image.js +0 -1
  19. package/Dom/Image.js.map +1 -1
  20. package/Dom/Paint.d.ts +1 -1
  21. package/Dom/shapes/Path.d.ts +1 -1
  22. package/ImageAsset/index.js +77 -33
  23. package/ImageAsset/index.js.map +1 -1
  24. package/ImageBitmap/index.js +107 -20
  25. package/ImageBitmap/index.js.map +1 -1
  26. package/README.md +2 -4
  27. package/WebGL/WebGLRenderingContext/index.js +74 -31
  28. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  29. package/WebGL2/WebGL2RenderingContext/index.js +4 -4
  30. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  31. package/WebGPU/GPU.js +4 -3
  32. package/WebGPU/GPU.js.map +1 -1
  33. package/WebGPU/GPUAdapter.d.ts +6 -3
  34. package/WebGPU/GPUAdapter.js +31 -0
  35. package/WebGPU/GPUAdapter.js.map +1 -1
  36. package/WebGPU/GPUBindGroup.d.ts +1 -0
  37. package/WebGPU/GPUBindGroup.js +3 -0
  38. package/WebGPU/GPUBindGroup.js.map +1 -1
  39. package/WebGPU/GPUBindGroupLayout.d.ts +1 -0
  40. package/WebGPU/GPUBindGroupLayout.js +3 -0
  41. package/WebGPU/GPUBindGroupLayout.js.map +1 -1
  42. package/WebGPU/GPUBuffer.js +10 -2
  43. package/WebGPU/GPUBuffer.js.map +1 -1
  44. package/WebGPU/GPUCanvasContext.d.ts +3 -2
  45. package/WebGPU/GPUCanvasContext.js +52 -10
  46. package/WebGPU/GPUCanvasContext.js.map +1 -1
  47. package/WebGPU/GPUCommandBuffer.d.ts +1 -0
  48. package/WebGPU/GPUCommandBuffer.js +3 -0
  49. package/WebGPU/GPUCommandBuffer.js.map +1 -1
  50. package/WebGPU/GPUCommandEncoder.d.ts +3 -9
  51. package/WebGPU/GPUCommandEncoder.js +94 -41
  52. package/WebGPU/GPUCommandEncoder.js.map +1 -1
  53. package/WebGPU/GPUComputePassEncoder.d.ts +1 -0
  54. package/WebGPU/GPUComputePassEncoder.js +3 -0
  55. package/WebGPU/GPUComputePassEncoder.js.map +1 -1
  56. package/WebGPU/GPUComputePipeline.d.ts +1 -0
  57. package/WebGPU/GPUComputePipeline.js +3 -0
  58. package/WebGPU/GPUComputePipeline.js.map +1 -1
  59. package/WebGPU/GPUDevice.d.ts +17 -79
  60. package/WebGPU/GPUDevice.js +76 -91
  61. package/WebGPU/GPUDevice.js.map +1 -1
  62. package/WebGPU/GPUExternalTexture.d.ts +1 -0
  63. package/WebGPU/GPUExternalTexture.js +3 -0
  64. package/WebGPU/GPUExternalTexture.js.map +1 -1
  65. package/WebGPU/GPUPipelineLayout.d.ts +1 -0
  66. package/WebGPU/GPUPipelineLayout.js +3 -0
  67. package/WebGPU/GPUPipelineLayout.js.map +1 -1
  68. package/WebGPU/GPUQuerySet.d.ts +1 -0
  69. package/WebGPU/GPUQuerySet.js +3 -0
  70. package/WebGPU/GPUQuerySet.js.map +1 -1
  71. package/WebGPU/GPUQueue.d.ts +1 -0
  72. package/WebGPU/GPUQueue.js +56 -14
  73. package/WebGPU/GPUQueue.js.map +1 -1
  74. package/WebGPU/GPURenderBundle.d.ts +1 -0
  75. package/WebGPU/GPURenderBundle.js +3 -0
  76. package/WebGPU/GPURenderBundle.js.map +1 -1
  77. package/WebGPU/GPURenderBundleEncoder.d.ts +4 -2
  78. package/WebGPU/GPURenderBundleEncoder.js +7 -3
  79. package/WebGPU/GPURenderBundleEncoder.js.map +1 -1
  80. package/WebGPU/GPURenderPassEncoder.d.ts +2 -1
  81. package/WebGPU/GPURenderPassEncoder.js +5 -2
  82. package/WebGPU/GPURenderPassEncoder.js.map +1 -1
  83. package/WebGPU/GPURenderPipeline.d.ts +1 -0
  84. package/WebGPU/GPURenderPipeline.js +3 -0
  85. package/WebGPU/GPURenderPipeline.js.map +1 -1
  86. package/WebGPU/GPUSampler.d.ts +1 -0
  87. package/WebGPU/GPUSampler.js +3 -0
  88. package/WebGPU/GPUSampler.js.map +1 -1
  89. package/WebGPU/GPUShaderModule.d.ts +1 -1
  90. package/WebGPU/GPUShaderModule.js +2 -2
  91. package/WebGPU/GPUShaderModule.js.map +1 -1
  92. package/WebGPU/GPUTexture.d.ts +1 -0
  93. package/WebGPU/GPUTexture.js +3 -0
  94. package/WebGPU/GPUTexture.js.map +1 -1
  95. package/WebGPU/GPUTextureView.d.ts +1 -0
  96. package/WebGPU/GPUTextureView.js +3 -0
  97. package/WebGPU/GPUTextureView.js.map +1 -1
  98. package/WebGPU/Interfaces.d.ts +95 -4
  99. package/WebGPU/Types.d.ts +9 -1
  100. package/WebGPU/Utils.d.ts +6 -0
  101. package/WebGPU/Utils.js +224 -0
  102. package/WebGPU/Utils.js.map +1 -1
  103. package/angular/esm2022/index.mjs +4 -4
  104. package/angular/fesm2022/nativescript-canvas-angular.mjs +4 -4
  105. package/package.json +1 -1
  106. package/platforms/android/canvas-release.aar +0 -0
  107. package/platforms/ios/CanvasNative.xcframework/Info.plist +5 -5
  108. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  109. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +40 -12
  110. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +7 -0
  111. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +227 -62
  112. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Info.plist +0 -0
  113. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  114. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +7341 -6577
  115. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +62 -4
  116. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  117. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +62 -4
  118. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/NSCCanvas.nib +0 -0
  119. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  120. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +650 -644
  121. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  122. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +80 -24
  123. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +7 -0
  124. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +227 -62
  125. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Info.plist +0 -0
  126. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  127. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  128. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +7341 -6577
  129. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +62 -4
  130. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  131. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +62 -4
  132. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +7341 -6577
  133. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +62 -4
  134. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  135. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +62 -4
  136. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/NSCCanvas.nib +0 -0
  137. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +27 -27
  138. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  139. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +652 -646
  140. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasNative.yml +704 -684
  141. package/platforms/ios/src/NSOperationQueueWrapper.h +1 -1
  142. package/platforms/ios/src/NSOperationQueueWrapper.mm +41 -9
  143. package/platforms/ios/src/cpp/AsyncCallback.h +16 -8
  144. package/platforms/ios/src/cpp/CanvasJSIModule.cpp +208 -789
  145. package/platforms/ios/src/cpp/ImageAssetImpl.cpp +18 -28
  146. package/platforms/ios/src/cpp/ImageAssetImpl.h +3 -3
  147. package/platforms/ios/src/cpp/ImageBitmapImpl.cpp +60 -3
  148. package/platforms/ios/src/cpp/ImageBitmapImpl.h +10 -3
  149. package/platforms/ios/src/cpp/PromiseCallback.h +1 -2
  150. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.cpp +1 -1
  151. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +3 -3
  152. package/platforms/ios/src/cpp/canvas2d/Path2D.h +5 -5
  153. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +106 -1
  154. package/platforms/ios/src/cpp/webgpu/GPUAdapterImpl.cpp +26 -23
  155. package/platforms/ios/src/cpp/webgpu/GPUBindGroupImpl.cpp +31 -5
  156. package/platforms/ios/src/cpp/webgpu/GPUBindGroupImpl.h +4 -1
  157. package/platforms/ios/src/cpp/webgpu/GPUBindGroupLayoutImpl.cpp +26 -0
  158. package/platforms/ios/src/cpp/webgpu/GPUBindGroupLayoutImpl.h +3 -0
  159. package/platforms/ios/src/cpp/webgpu/GPUBufferImpl.cpp +41 -7
  160. package/platforms/ios/src/cpp/webgpu/GPUBufferImpl.h +4 -0
  161. package/platforms/ios/src/cpp/webgpu/GPUCanvasContextImpl.cpp +11 -5
  162. package/platforms/ios/src/cpp/webgpu/GPUCommandBufferImpl.cpp +28 -1
  163. package/platforms/ios/src/cpp/webgpu/GPUCommandBufferImpl.h +3 -0
  164. package/platforms/ios/src/cpp/webgpu/GPUCommandEncoderImpl.cpp +75 -79
  165. package/platforms/ios/src/cpp/webgpu/GPUCommandEncoderImpl.h +4 -0
  166. package/platforms/ios/src/cpp/webgpu/GPUComputePassEncoderImpl.cpp +42 -14
  167. package/platforms/ios/src/cpp/webgpu/GPUComputePassEncoderImpl.h +3 -0
  168. package/platforms/ios/src/cpp/webgpu/GPUComputePipelineImpl.cpp +25 -0
  169. package/platforms/ios/src/cpp/webgpu/GPUComputePipelineImpl.h +2 -0
  170. package/platforms/ios/src/cpp/webgpu/GPUDeviceImpl.cpp +1597 -674
  171. package/platforms/ios/src/cpp/webgpu/GPUDeviceImpl.h +2 -0
  172. package/platforms/ios/src/cpp/webgpu/GPUImpl.cpp +2 -1
  173. package/platforms/ios/src/cpp/webgpu/GPUImpl.h +1 -1
  174. package/platforms/ios/src/cpp/webgpu/GPULabel.h +33 -0
  175. package/platforms/ios/src/cpp/webgpu/GPUPipelineLayoutImpl.cpp +26 -0
  176. package/platforms/ios/src/cpp/webgpu/GPUPipelineLayoutImpl.h +3 -1
  177. package/platforms/ios/src/cpp/webgpu/GPUQuerySetImpl.cpp +1 -2
  178. package/platforms/ios/src/cpp/webgpu/GPUQuerySetImpl.h +1 -1
  179. package/platforms/ios/src/cpp/webgpu/GPUQueueImpl.cpp +50 -13
  180. package/platforms/ios/src/cpp/webgpu/GPUQueueImpl.h +3 -0
  181. package/platforms/ios/src/cpp/webgpu/GPURenderBundleEncoderImpl.cpp +43 -14
  182. package/platforms/ios/src/cpp/webgpu/GPURenderBundleEncoderImpl.h +3 -0
  183. package/platforms/ios/src/cpp/webgpu/GPURenderBundleImpl.cpp +25 -0
  184. package/platforms/ios/src/cpp/webgpu/GPURenderBundleImpl.h +3 -0
  185. package/platforms/ios/src/cpp/webgpu/GPURenderPassEncoderImpl.cpp +39 -13
  186. package/platforms/ios/src/cpp/webgpu/GPURenderPassEncoderImpl.h +3 -0
  187. package/platforms/ios/src/cpp/webgpu/GPURenderPipelineImpl.cpp +25 -0
  188. package/platforms/ios/src/cpp/webgpu/GPURenderPipelineImpl.h +3 -0
  189. package/platforms/ios/src/cpp/webgpu/GPUSamplerImpl.cpp +26 -0
  190. package/platforms/ios/src/cpp/webgpu/GPUSamplerImpl.h +4 -1
  191. package/platforms/ios/src/cpp/webgpu/GPUShaderModuleImpl.cpp +24 -0
  192. package/platforms/ios/src/cpp/webgpu/GPUShaderModuleImpl.h +3 -0
  193. package/platforms/ios/src/cpp/webgpu/GPUTextureImpl.cpp +34 -8
  194. package/platforms/ios/src/cpp/webgpu/GPUTextureImpl.h +2 -0
  195. package/platforms/ios/src/cpp/webgpu/GPUTextureViewImpl.cpp +26 -0
  196. package/platforms/ios/src/cpp/webgpu/GPUTextureViewImpl.h +3 -0
  197. package/platforms/ios/src/cpp/webgpu/GPUUtils.h +511 -0
  198. package/utils.d.ts +1 -1
@@ -213,13 +213,10 @@ export declare abstract class CanvasBase extends View implements ICanvasBase {
213
213
  y: number;
214
214
  }[];
215
215
  protected constructor();
216
- get ownerDocument(): {
217
- defaultView: {
218
- getComputedStyle: () => any;
219
- };
220
- } | Document;
216
+ get ownerDocument(): this;
217
+ emit(): void;
218
+ dispatchEvent(event: any): boolean;
221
219
  addEventListener(arg: string, callback: any, thisArg?: any): void;
222
- private _removeItemFromArray;
223
220
  removeEventListener(arg: string, callback: any, thisArg?: any): void;
224
221
  private _moveCallback;
225
222
  private _upCallback;
@@ -228,12 +225,10 @@ export declare abstract class CanvasBase extends View implements ICanvasBase {
228
225
  private _pinchCallback;
229
226
  _handleEvents(event: any): void;
230
227
  get classList(): Set<any>;
231
- _handlePowerPreference(powerPreference: string): 1 | 2 | 0 | -1;
232
- _handleContextOptions(type: '2d' | 'webgl' | 'webgl2' | 'experimental-webgl' | 'webgpu', contextOpts?: any): any;
233
228
  _readyEvent(): void;
234
229
  getAttribute(attrib: any): any;
235
230
  setAttribute(attrib: any): void;
236
- abstract getContext(type: string, options?: any): CanvasRenderingContext | null;
231
+ abstract getContext(type: string, contextAttributes?: any): CanvasRenderingContext | null;
237
232
  abstract getBoundingClientRect(): {
238
233
  x: number;
239
234
  y: number;
package/Canvas/common.js CHANGED
@@ -8,30 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { CSSType, View, Property, booleanConverter } from '@nativescript/core';
11
- const defaultGLOptions = {
12
- alpha: true,
13
- antialias: true,
14
- depth: true,
15
- failIfMajorPerformanceCaveat: false,
16
- powerPreference: 'default',
17
- premultipliedAlpha: true,
18
- preserveDrawingBuffer: false,
19
- stencil: false,
20
- desynchronized: false,
21
- xrCompatible: false,
22
- };
23
- const default2DOptions = {
24
- alpha: true,
25
- antialias: true,
26
- depth: true,
27
- failIfMajorPerformanceCaveat: false,
28
- powerPreference: 'default',
29
- premultipliedAlpha: true,
30
- preserveDrawingBuffer: false,
31
- stencil: false,
32
- desynchronized: false,
33
- xrCompatible: false,
34
- };
11
+ import { removeItemFromArray } from './utils';
35
12
  export class DOMRectReadOnly {
36
13
  constructor(x, y, width, height, top, right, bottom, left) {
37
14
  this.x = x;
@@ -212,17 +189,28 @@ let CanvasBase = class CanvasBase extends View {
212
189
  this._touchesById = [];
213
190
  this._lastPointerEventById = [];
214
191
  this._classList = new Set();
192
+ this.style.width = { unit: '%', value: 1 };
193
+ this.style.height = 'auto';
215
194
  }
216
195
  get ownerDocument() {
217
- return window?.document ?? doc;
196
+ //return window?.document ?? doc;
197
+ return this;
198
+ }
199
+ emit() { }
200
+ dispatchEvent(event) {
201
+ return true;
218
202
  }
219
203
  addEventListener(arg, callback, thisArg) {
204
+ if (typeof thisArg === 'boolean') {
205
+ thisArg = {
206
+ capture: thisArg,
207
+ };
208
+ }
220
209
  super.addEventListener(arg, callback, thisArg);
221
210
  if (typeof arg !== 'string') {
222
211
  return;
223
212
  }
224
- const eventtype = arg.toLowerCase();
225
- switch (eventtype) {
213
+ switch (arg) {
226
214
  case 'mousemove':
227
215
  this._mouseMoveCallbacks.push(callback);
228
216
  break;
@@ -273,63 +261,61 @@ let CanvasBase = class CanvasBase extends View {
273
261
  break;
274
262
  }
275
263
  }
276
- _removeItemFromArray(array, item) {
277
- const index = array.indexOf(item);
278
- if (index !== -1) {
279
- array.splice(index, 1);
280
- }
281
- }
282
264
  removeEventListener(arg, callback, thisArg) {
265
+ if (typeof thisArg === 'boolean') {
266
+ thisArg = {
267
+ capture: thisArg,
268
+ };
269
+ }
283
270
  super.removeEventListener(arg, callback, thisArg);
284
- const eventtype = arg.toLowerCase();
285
- switch (eventtype) {
271
+ switch (arg) {
286
272
  case 'mousemove':
287
- this._removeItemFromArray(this._mouseMoveCallbacks, callback);
273
+ removeItemFromArray(this._mouseMoveCallbacks, callback);
288
274
  break;
289
275
  case 'pointermove':
290
- this._removeItemFromArray(this._pointerMoveCallbacks, callback);
276
+ removeItemFromArray(this._pointerMoveCallbacks, callback);
291
277
  break;
292
278
  case 'mousedown':
293
- this._removeItemFromArray(this._mouseDownCallbacks, callback);
279
+ removeItemFromArray(this._mouseDownCallbacks, callback);
294
280
  break;
295
281
  case 'pointerdown':
296
- this._removeItemFromArray(this._pointerDownCallbacks, callback);
282
+ removeItemFromArray(this._pointerDownCallbacks, callback);
297
283
  break;
298
284
  case 'mouseup':
299
- this._removeItemFromArray(this._mouseUpCallbacks, callback);
285
+ removeItemFromArray(this._mouseUpCallbacks, callback);
300
286
  break;
301
287
  case 'pointerup':
302
- this._removeItemFromArray(this._pointerUpCallbacks, callback);
288
+ removeItemFromArray(this._pointerUpCallbacks, callback);
303
289
  break;
304
290
  case 'pointerout':
305
- this._removeItemFromArray(this._pointerOutCallbacks, callback);
291
+ removeItemFromArray(this._pointerOutCallbacks, callback);
306
292
  break;
307
293
  case 'pointerleave':
308
- this._removeItemFromArray(this._pointerLeaveCallbacks, callback);
294
+ removeItemFromArray(this._pointerLeaveCallbacks, callback);
309
295
  break;
310
296
  case 'mouseout':
311
297
  case 'mousecancel':
312
- this._removeItemFromArray(this._mouseCancelCallbacks, callback);
298
+ removeItemFromArray(this._mouseCancelCallbacks, callback);
313
299
  break;
314
300
  case 'pointercancel':
315
- this._removeItemFromArray(this._pointerCancelCallbacks, callback);
301
+ removeItemFromArray(this._pointerCancelCallbacks, callback);
316
302
  break;
317
303
  case 'touchstart':
318
- this._removeItemFromArray(this._touchStartCallbacks, callback);
304
+ removeItemFromArray(this._touchStartCallbacks, callback);
319
305
  break;
320
306
  case 'touchend':
321
- this._removeItemFromArray(this._touchEndCallbacks, callback);
307
+ removeItemFromArray(this._touchEndCallbacks, callback);
322
308
  break;
323
309
  case 'touchmove':
324
- this._removeItemFromArray(this._touchMoveCallbacks, callback);
310
+ removeItemFromArray(this._touchMoveCallbacks, callback);
325
311
  break;
326
312
  case 'touchcancel':
327
- this._removeItemFromArray(this._touchCancelCallbacks, callback);
313
+ removeItemFromArray(this._touchCancelCallbacks, callback);
328
314
  break;
329
315
  case 'wheel':
330
316
  case 'mousewheel':
331
317
  case 'dommousescroll':
332
- this._removeItemFromArray(this._mouseWheelCallbacks, callback);
318
+ removeItemFromArray(this._mouseWheelCallbacks, callback);
333
319
  break;
334
320
  }
335
321
  }
@@ -755,60 +741,6 @@ let CanvasBase = class CanvasBase extends View {
755
741
  get classList() {
756
742
  return this._classList;
757
743
  }
758
- _handlePowerPreference(powerPreference) {
759
- switch (powerPreference) {
760
- case 'default':
761
- return 0;
762
- case 'high-performance':
763
- return 1;
764
- case 'low-power':
765
- return 2;
766
- default:
767
- return -1;
768
- }
769
- }
770
- _handleContextOptions(type, contextOpts) {
771
- if (!contextOpts) {
772
- if (type === '2d') {
773
- return { ...default2DOptions, powerPreference: 0 };
774
- }
775
- if (type.indexOf('webgl') > -1) {
776
- return { ...defaultGLOptions, powerPreference: 0 };
777
- }
778
- }
779
- if (type === '2d') {
780
- if (contextOpts.alpha !== undefined && typeof contextOpts.alpha === 'boolean') {
781
- return { ...contextOpts, powerPreference: 0 };
782
- }
783
- else {
784
- return { alpha: true, powerPreference: 0 };
785
- }
786
- }
787
- const glOptions = { ...defaultGLOptions };
788
- const setIfDefined = (prop, value) => {
789
- const property = glOptions[prop];
790
- if (property !== undefined && prop === 'powerPreference') {
791
- // converts to int
792
- glOptions[prop] = value;
793
- }
794
- if (property !== undefined && typeof value === typeof property) {
795
- glOptions[prop] = value;
796
- }
797
- };
798
- if (type.indexOf('webgl') > -1 || type === 'experimental-webgl') {
799
- setIfDefined('alpha', contextOpts.alpha);
800
- setIfDefined('antialias', contextOpts.antialias);
801
- setIfDefined('depth', contextOpts.depth);
802
- setIfDefined('failIfMajorPerformanceCaveat', contextOpts.failIfMajorPerformanceCaveat);
803
- setIfDefined('powerPreference', this._handlePowerPreference(contextOpts.powerPreference ?? 'default'));
804
- setIfDefined('premultipliedAlpha', contextOpts.premultipliedAlpha);
805
- setIfDefined('preserveDrawingBuffer', contextOpts.preserveDrawingBuffer);
806
- setIfDefined('stencil', contextOpts.stencil);
807
- setIfDefined('desynchronized', contextOpts.desynchronized);
808
- return glOptions;
809
- }
810
- return null;
811
- }
812
744
  _readyEvent() {
813
745
  this.notify({
814
746
  eventName: 'ready',
@@ -816,31 +748,10 @@ let CanvasBase = class CanvasBase extends View {
816
748
  });
817
749
  }
818
750
  getAttribute(attrib) {
819
- if (attrib === 'width') {
820
- return this.width;
821
- }
822
- if (attrib === 'height') {
823
- return this.height;
824
- }
825
- if (attrib === 'tabindex') {
826
- return (this['tabindex'] = arguments[1]);
827
- }
828
751
  return this[attrib];
829
752
  }
830
753
  setAttribute(attrib) {
831
- if (attrib === 'width') {
832
- if (!isNaN(parseInt(arguments[1]))) {
833
- this.width = parseInt(arguments[1]);
834
- }
835
- }
836
- if (attrib === 'height') {
837
- if (!isNaN(parseInt(arguments[1]))) {
838
- this.height = parseInt(arguments[1]);
839
- }
840
- }
841
- if (attrib === 'tabindex') {
842
- this['tabindex'] = arguments[1];
843
- }
754
+ this[attrib] = attrib;
844
755
  }
845
756
  setPointerCapture(id) { }
846
757
  releasePointerCapture(id) { }
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../packages/canvas/Canvas/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../packages/canvas/Canvas/common.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,6 @@ export declare class Canvas extends CanvasBase {
37
37
  snapshot(flip?: boolean): ImageSource | null;
38
38
  get __native__context(): any;
39
39
  get native(): any;
40
- _didLayout: boolean;
41
40
  getContext(type: string, contextAttributes?: any): CanvasRenderingContext2D | WebGLRenderingContext | WebGL2RenderingContext | GPUCanvasContext | null;
42
41
  private _jsBuffer;
43
42
  private get _boundingClientRect();
@@ -5,6 +5,7 @@ import { WebGLRenderingContext } from '../WebGL/WebGLRenderingContext';
5
5
  import { WebGL2RenderingContext } from '../WebGL2/WebGL2RenderingContext';
6
6
  import { Application, View, Screen, ImageSource, Utils, widthProperty, heightProperty } from '@nativescript/core';
7
7
  import { GPUCanvasContext } from '../WebGPU';
8
+ import { handleContextOptions } from './utils';
8
9
  export function createSVGMatrix() {
9
10
  return new DOMMatrix();
10
11
  }
@@ -37,8 +38,8 @@ function updateFit(canvas) {
37
38
  canvas._canvas.setFit(org.nativescript.canvas.CanvasFit.Fill);
38
39
  }
39
40
  else if ((styleWidth?.unit === 'px' || styleWidth?.unit === 'dip') && (styleHeight?.unit === 'px' || styleHeight?.unit === 'dip')) {
40
- const width = Math.floor(canvas._canvas.getSurfaceWidth() / Screen.mainScreen.scale);
41
- const height = Math.floor(canvas._canvas.getSurfaceHeight() / Screen.mainScreen.scale);
41
+ const width = canvas._canvas.getSurfaceWidth();
42
+ const height = canvas._canvas.getSurfaceHeight();
42
43
  const viewWidth = canvas._canvas.getMeasuredWidth();
43
44
  const viewHeight = canvas._canvas.getMeasuredHeight();
44
45
  if (viewWidth > width || viewHeight > height) {
@@ -74,6 +75,17 @@ function updateFit(canvas) {
74
75
  canvas._canvas.setFit(org.nativescript.canvas.CanvasFit.Fill);
75
76
  }
76
77
  }
78
+ const viewRect_ = Symbol('[[viewRect]]');
79
+ function valueToNumber(value) {
80
+ switch (typeof value) {
81
+ case 'string':
82
+ return parseFloat(value);
83
+ case 'number':
84
+ return value;
85
+ default:
86
+ return NaN;
87
+ }
88
+ }
77
89
  export class Canvas extends CanvasBase {
78
90
  constructor(nativeInstance) {
79
91
  super();
@@ -82,7 +94,6 @@ export class Canvas extends CanvasBase {
82
94
  this._contextType = ContextType.None;
83
95
  this._is2D = false;
84
96
  this._isBatch = false;
85
- this._didLayout = false;
86
97
  if (nativeInstance) {
87
98
  // allows Worker usage
88
99
  this._canvas = nativeInstance;
@@ -96,11 +107,9 @@ export class Canvas extends CanvasBase {
96
107
  else {
97
108
  this._canvas = new org.nativescript.canvas.NSCCanvas(activity);
98
109
  }
99
- // const view = this._canvas.getChildAt(0) as android.view.TextureView;
100
- // view.setOpaque(true);
101
- // default canvas size
102
- this._canvas.setSurfaceWidth(300);
103
- this._canvas.setSurfaceHeight(150);
110
+ // // default canvas size
111
+ // this._canvas.setSurfaceWidth(300);
112
+ // this._canvas.setSurfaceHeight(150);
104
113
  global.__canvasLoaded = true;
105
114
  const ref = new WeakRef(this);
106
115
  this._canvas.setTouchEventListener(new org.nativescript.canvas.NSCCanvas.TouchEvents({
@@ -150,10 +159,10 @@ export class Canvas extends CanvasBase {
150
159
  if (this._canvas === undefined || this._canvas === null) {
151
160
  return;
152
161
  }
153
- if (typeof value !== 'number') {
154
- return;
162
+ value = valueToNumber(value);
163
+ if (!Number.isNaN(value)) {
164
+ this._canvas.setSurfaceWidth(value);
155
165
  }
156
- this._canvas.setSurfaceWidth(value);
157
166
  }
158
167
  // @ts-ignore
159
168
  get height() {
@@ -166,10 +175,10 @@ export class Canvas extends CanvasBase {
166
175
  if (this._canvas === undefined || this._canvas === null) {
167
176
  return;
168
177
  }
169
- if (typeof value !== 'number') {
170
- return;
178
+ value = valueToNumber(value);
179
+ if (!Number.isNaN(value)) {
180
+ this._canvas.setSurfaceHeight(value);
171
181
  }
172
- this._canvas.setSurfaceHeight(value);
173
182
  }
174
183
  [widthProperty.setNative](value) {
175
184
  updateFit(this);
@@ -179,11 +188,7 @@ export class Canvas extends CanvasBase {
179
188
  }
180
189
  static createCustomView() {
181
190
  const canvas = new Canvas();
182
- canvas._isBatch = true;
183
191
  canvas._isCustom = true;
184
- canvas.style.width = 300;
185
- canvas.style.height = 150;
186
- canvas._isBatch = false;
187
192
  return canvas;
188
193
  }
189
194
  createNativeView() {
@@ -210,20 +215,18 @@ export class Canvas extends CanvasBase {
210
215
  if (parent && typeof parent.getBoundingClientRect !== 'function') {
211
216
  parent.getBoundingClientRect = function () {
212
217
  const view = this;
213
- const nativeView = view.android;
214
- const width = this.width;
215
- const height = this.height;
216
- const scale = Screen.mainScreen.scale;
217
- return {
218
- bottom: nativeView.getBottom() / scale,
219
- height: height,
220
- left: nativeView.getLeft() / scale,
221
- right: nativeView.getRight() / scale,
222
- top: nativeView.getTop() / scale,
223
- width: width,
224
- x: nativeView.getX() / scale,
225
- y: nativeView.getY() / scale,
226
- };
218
+ if (!view) {
219
+ return new DOMRect(0, 0, 0, 0);
220
+ }
221
+ const nativeView = view.nativeView;
222
+ if (!view[viewRect_]) {
223
+ view[viewRect_] = new Float32Array(8);
224
+ }
225
+ if (!nativeView) {
226
+ return new DOMRect(0, 0, 0, 0);
227
+ }
228
+ nativeView.getBoundingClientRect(view[viewRect_]);
229
+ return new DOMRect(view[viewRect_][6], view[viewRect_][7], view[viewRect_][4], view[viewRect_][5], view[viewRect_][0], view[viewRect_][1], view[viewRect_][2], view[viewRect_][3]);
227
230
  };
228
231
  }
229
232
  if (parent && parent.ownerDocument === undefined) {
@@ -273,6 +276,8 @@ export class Canvas extends CanvasBase {
273
276
  return this._webglContext.native;
274
277
  case ContextType.Canvas:
275
278
  return this._webgl2Context.native;
279
+ case ContextType.WebGPU:
280
+ return this._gpuContext;
276
281
  default:
277
282
  return null;
278
283
  }
@@ -292,7 +297,7 @@ export class Canvas extends CanvasBase {
292
297
  if (!this._2dContext) {
293
298
  const opts = {
294
299
  ...defaultOpts,
295
- ...this._handleContextOptions(type, contextAttributes),
300
+ ...handleContextOptions(type, contextAttributes),
296
301
  fontColor: this.parent?.style?.color?.android ?? -16777216,
297
302
  };
298
303
  const ctx = this._canvas.create2DContext(opts.alpha, opts.antialias, opts.depth, opts.failIfMajorPerformanceCaveat, opts.powerPreference, opts.premultipliedAlpha, opts.preserveDrawingBuffer, opts.stencil, opts.desynchronized, opts.xrCompatible, opts.fontColor);
@@ -304,12 +309,12 @@ export class Canvas extends CanvasBase {
304
309
  }
305
310
  return this._2dContext;
306
311
  }
307
- else if (type === 'webgl') {
312
+ else if (type === 'webgl' || type === 'experimental-webgl') {
308
313
  if (this._2dContext || this._webgl2Context) {
309
314
  return null;
310
315
  }
311
316
  if (!this._webglContext) {
312
- const opts = { version: 1, ...defaultOpts, ...this._handleContextOptions(type, contextAttributes) };
317
+ const opts = { version: 1, ...defaultOpts, ...handleContextOptions(type, contextAttributes) };
313
318
  this._canvas.initContext(type, opts.alpha, false, opts.depth, opts.failIfMajorPerformanceCaveat, opts.powerPreference, opts.premultipliedAlpha, opts.preserveDrawingBuffer, opts.stencil, opts.desynchronized, opts.xrCompatible);
314
319
  this._webglContext = new WebGLRenderingContext(this._canvas, opts);
315
320
  this._webglContext._canvas = this;
@@ -318,12 +323,12 @@ export class Canvas extends CanvasBase {
318
323
  }
319
324
  return this._webglContext;
320
325
  }
321
- else if (type === 'webgl2') {
326
+ else if (type === 'webgl2' || type === 'experimental-webgl2') {
322
327
  if (this._2dContext || this._webglContext) {
323
328
  return null;
324
329
  }
325
330
  if (!this._webgl2Context) {
326
- const opts = { version: 2, ...defaultOpts, ...this._handleContextOptions(type, contextAttributes) };
331
+ const opts = { version: 2, ...defaultOpts, ...handleContextOptions(type, contextAttributes) };
327
332
  this._canvas.initContext(type, opts.alpha, false, opts.depth, opts.failIfMajorPerformanceCaveat, opts.powerPreference, opts.premultipliedAlpha, opts.preserveDrawingBuffer, opts.stencil, opts.desynchronized, opts.xrCompatible);
328
333
  this._webgl2Context = new WebGL2RenderingContext(this._canvas, opts);
329
334
  this._webgl2Context._canvas = this;
@@ -341,6 +346,8 @@ export class Canvas extends CanvasBase {
341
346
  this._canvas.initWebGPUContext(long(ptr));
342
347
  this._gpuContext = new GPUCanvasContext(this._canvas);
343
348
  this._gpuContext._canvas = this;
349
+ this._gpuContext._type = 'webgpu';
350
+ this._contextType = ContextType.WebGPU;
344
351
  }
345
352
  return this._gpuContext;
346
353
  }
@@ -355,7 +362,7 @@ export class Canvas extends CanvasBase {
355
362
  return this._jsBuffer;
356
363
  }
357
364
  getBoundingClientRect() {
358
- if (!this._canvas) {
365
+ if (!this._canvas || !this.parent) {
359
366
  return new DOMRect(0, 0, 0, 0);
360
367
  }
361
368
  org.nativescript.canvas.NSCCanvas.getBoundingClientRect(this._canvas);