@nativescript/canvas 2.0.0-webgpu.11 → 2.0.0-webgpu.12

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 (74) hide show
  1. package/Canvas/common.d.ts +3 -1
  2. package/Canvas/common.js +10 -0
  3. package/Canvas/common.js.map +1 -1
  4. package/Canvas/index.android.js +7 -7
  5. package/Canvas/index.android.js.map +1 -1
  6. package/Canvas/index.d.ts +11 -3
  7. package/Canvas/index.ios.js +14 -3
  8. package/Canvas/index.ios.js.map +1 -1
  9. package/ImageAsset/index.js +39 -17
  10. package/ImageAsset/index.js.map +1 -1
  11. package/ImageBitmap/index.js +18 -21
  12. package/ImageBitmap/index.js.map +1 -1
  13. package/WebGL/WebGLRenderingContext/index.js +74 -31
  14. package/WebGL/WebGLRenderingContext/index.js.map +1 -1
  15. package/WebGL2/WebGL2RenderingContext/index.js +4 -4
  16. package/WebGL2/WebGL2RenderingContext/index.js.map +1 -1
  17. package/WebGPU/GPU.js +4 -3
  18. package/WebGPU/GPU.js.map +1 -1
  19. package/WebGPU/GPUAdapter.d.ts +3 -2
  20. package/WebGPU/GPUAdapter.js +6 -0
  21. package/WebGPU/GPUAdapter.js.map +1 -1
  22. package/WebGPU/GPUCanvasContext.d.ts +1 -0
  23. package/WebGPU/GPUCanvasContext.js +17 -0
  24. package/WebGPU/GPUCanvasContext.js.map +1 -1
  25. package/WebGPU/GPUDevice.d.ts +3 -3
  26. package/WebGPU/GPUDevice.js +77 -15
  27. package/WebGPU/GPUDevice.js.map +1 -1
  28. package/angular/esm2022/index.mjs +4 -4
  29. package/angular/fesm2022/nativescript-canvas-angular.mjs +4 -4
  30. package/package.json +1 -1
  31. package/platforms/android/canvas-release.aar +0 -0
  32. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/CanvasNative +0 -0
  33. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/CanvasNative-Swift.h +1 -0
  34. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_ios.h +7 -0
  35. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Headers/canvas_native.h +170 -55
  36. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
  37. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.abi.json +67 -20
  38. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.private.swiftinterface +1 -0
  39. package/platforms/ios/CanvasNative.xcframework/ios-arm64/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios.swiftinterface +1 -0
  40. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  41. package/platforms/ios/CanvasNative.xcframework/ios-arm64/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +647 -645
  42. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/CanvasNative +0 -0
  43. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/CanvasNative-Swift.h +2 -0
  44. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_ios.h +7 -0
  45. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Headers/canvas_native.h +170 -55
  46. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
  47. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
  48. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.abi.json +67 -20
  49. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +1 -0
  50. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/arm64-apple-ios-simulator.swiftinterface +1 -0
  51. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.abi.json +67 -20
  52. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +1 -0
  53. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/Modules/CanvasNative.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +1 -0
  54. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/CanvasNative.framework/_CodeSignature/CodeResources +26 -26
  55. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/DWARF/CanvasNative +0 -0
  56. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/aarch64/CanvasNative.yml +649 -647
  57. package/platforms/ios/CanvasNative.xcframework/ios-arm64_x86_64-simulator/dSYMs/CanvasNative.framework.dSYM/Contents/Resources/Relocations/x86_64/CanvasNative.yml +687 -685
  58. package/platforms/ios/src/NSOperationQueueWrapper.h +1 -1
  59. package/platforms/ios/src/NSOperationQueueWrapper.mm +41 -9
  60. package/platforms/ios/src/cpp/AsyncCallback.h +16 -8
  61. package/platforms/ios/src/cpp/CanvasJSIModule.cpp +116 -44
  62. package/platforms/ios/src/cpp/ImageAssetImpl.cpp +16 -24
  63. package/platforms/ios/src/cpp/ImageAssetImpl.h +3 -3
  64. package/platforms/ios/src/cpp/ImageBitmapImpl.cpp +22 -3
  65. package/platforms/ios/src/cpp/ImageBitmapImpl.h +6 -3
  66. package/platforms/ios/src/cpp/PromiseCallback.h +1 -2
  67. package/platforms/ios/src/cpp/canvas2d/CanvasRenderingContext2DImpl.h +3 -3
  68. package/platforms/ios/src/cpp/webgl/WebGLRenderingContext.cpp +106 -1
  69. package/platforms/ios/src/cpp/webgpu/GPUAdapterImpl.cpp +7 -6
  70. package/platforms/ios/src/cpp/webgpu/GPUCommandEncoderImpl.cpp +437 -439
  71. package/platforms/ios/src/cpp/webgpu/GPUDeviceImpl.cpp +35 -55
  72. package/platforms/ios/src/cpp/webgpu/GPUImpl.cpp +2 -1
  73. package/platforms/ios/src/cpp/webgpu/GPULabel.h +33 -0
  74. package/platforms/ios/src/cpp/webgpu/GPUQueueImpl.cpp +23 -9
@@ -42,6 +42,12 @@ export class GPUAdapter {
42
42
  requestDevice(desc) {
43
43
  return new Promise((resolve, reject) => {
44
44
  const options = desc ?? {};
45
+ if (Array.isArray(options.requiredFeatures)) {
46
+ options.requiredFeatures.push('texture-adapter-specific-format-features');
47
+ }
48
+ else {
49
+ options.requiredFeatures = ['texture-adapter-specific-format-features'];
50
+ }
45
51
  this[native_].requestDevice(options, (error, device) => {
46
52
  if (error) {
47
53
  reject(error);
@@ -1 +1 @@
1
- {"version":3,"file":"GPUAdapter.js","sourceRoot":"","sources":["../../../../packages/canvas/WebGPU/GPUAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,MAAM,OAAO,oBAAqB,SAAQ,GAAW;IACpD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACvB,OAAO,sBAAsB,CAAC;IAC/B,CAAC;CACD;AAED,MAAM,OAAO,UAAU;IAKtB,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,QAAQ;QACX,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,IAAI,KAAK,CAAC;IAClD,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC9B,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,OAAO;QACxB,IAAI,OAAO,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,GAAG,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;YACvB,OAAO,GAAG,CAAC;QACZ,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,kBAAkB;QACjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;YAChD,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,IAA0B;QACvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtD,IAAI,KAAK,EAAE,CAAC;oBACX,MAAM,CAAC,KAAK,CAAC,CAAC;gBACf,CAAC;qBAAM,CAAC;oBACP,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBAC/C,OAAO,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,MAAM;QACL,OAAO;YACN,IAAI,EAAE,EAAE;YACR,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC;IACH,CAAC;CACD"}
1
+ {"version":3,"file":"GPUAdapter.js","sourceRoot":"","sources":["../../../../packages/canvas/WebGPU/GPUAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,MAAM,OAAO,oBAAqB,SAAQ,GAAmB;IAC5D,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACvB,OAAO,sBAAsB,CAAC;IAC/B,CAAC;CACD;AAED,MAAM,OAAO,UAAU;IAKtB,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,QAAQ;QACX,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED,IAAI,iBAAiB;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,IAAI,KAAK,CAAC;IAClD,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC9B,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,OAAO;QACxB,IAAI,OAAO,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,GAAG,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;YACvB,OAAO,GAAG,CAAC;QACZ,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,kBAAkB;QACjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;YAChD,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,IAA0B;QACvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAC7C,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,0CAAmD,CAAC,CAAC;YACpF,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,gBAAgB,GAAG,CAAC,0CAAmD,CAAC,CAAC;YAClF,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;gBACtD,IAAI,KAAK,EAAE,CAAC;oBACX,MAAM,CAAC,KAAK,CAAC,CAAC;gBACf,CAAC;qBAAM,CAAC;oBACP,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBAC/C,OAAO,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,MAAM;QACL,OAAO;YACN,IAAI,EAAE,EAAE;YACR,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC;IACH,CAAC;CACD"}
@@ -12,6 +12,7 @@ export declare class GPUCanvasContext {
12
12
  get context(): any;
13
13
  get contextPtr(): any;
14
14
  get native(): any;
15
+ get canvas(): any;
15
16
  configure(options: {
16
17
  device: GPUDevice;
17
18
  format: GPUTextureFormat;
@@ -24,6 +24,9 @@ export class GPUCanvasContext {
24
24
  get native() {
25
25
  return this[native_];
26
26
  }
27
+ get canvas() {
28
+ return this._canvas;
29
+ }
27
30
  configure(options) {
28
31
  const opts = {
29
32
  usage: GPUTextureUsage.RENDER_ATTACHMENT,
@@ -40,6 +43,20 @@ export class GPUCanvasContext {
40
43
  if (!options.alphaMode) {
41
44
  opts.alphaMode = capabilities.alphaModes[0];
42
45
  }
46
+ else {
47
+ if (!capabilities.alphaModes.includes(options.alphaMode) && (options.alphaMode === 'opaque' || options.alphaMode === 'premultiplied')) {
48
+ opts.alphaMode = capabilities.alphaModes[0];
49
+ console.warn(`GPUCanvasContext: configure alphaMode ${options.alphaMode} unsupported falling back to ${capabilities.alphaModes[0]}`);
50
+ }
51
+ }
52
+ if (__ANDROID__ && !capabilities.format.includes(options.format) && (options.format === 'bgra8unorm' || options.format === 'bgra8unorm-srgb')) {
53
+ opts.format = capabilities.format[0];
54
+ console.warn(`GPUCanvasContext: configure format ${options.format} unsupported falling back to ${capabilities.format[0]}`);
55
+ }
56
+ if (__IOS__ && opts.usage > capabilities.usages) {
57
+ opts.usage = capabilities.usages;
58
+ console.warn(`GPUCanvasContext: configure usage unsupported falling back to ${capabilities.usages}`);
59
+ }
43
60
  }
44
61
  opts.device = options?.device?.[native_];
45
62
  this[native_].configure(opts);
@@ -1 +1 @@
1
- {"version":3,"file":"GPUCanvasContext.js","sourceRoot":"","sources":["../../../../packages/canvas/WebGPU/GPUCanvasContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GPUCanvasContext.js","sourceRoot":"","sources":["../../../../packages/canvas/WebGPU/GPUCanvasContext.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ import { GPUQuerySet } from './GPUQuerySet';
20
20
  import { GPURenderBundleEncoder } from './GPURenderBundleEncoder';
21
21
  import { GPUAdapter, GPUSupportedFeatures } from './GPUAdapter';
22
22
  export declare class EventTarget {
23
- _emitter?: WeakRef<Observable>;
23
+ protected _emitter?: WeakRef<Observable>;
24
24
  addEventListener(event: string, handler: any, options?: AddEventListenerOptions): void;
25
25
  removeEventListener(event: string, handler?: any): void;
26
26
  dispatchEvent(event: any): void;
@@ -33,8 +33,8 @@ interface GPUExtent3DDict {
33
33
  type GPUExtent3D = [number, number, number] | [number, number] | GPUExtent3DDict;
34
34
  export declare class GPUDevice extends EventTarget {
35
35
  [native_]: any;
36
- _lostPromise: Promise<GPUDeviceLostInfo>;
37
- _observerable: Observable;
36
+ private _lost;
37
+ private _observerable;
38
38
  constructor();
39
39
  private _uncapturederror;
40
40
  static fromNative(device: any, adapter: GPUAdapter): GPUDevice;
@@ -30,6 +30,8 @@ function fixup_shader_code(code) {
30
30
  code = code.replace(/^let /gm, 'const ');
31
31
  code = code.replace(/alias\s+bool([2-4])\s*=\s*vec\1<\s*bool\s*>\s*;/gm, '');
32
32
  code = code.replace(/alias\s+float([2-4])x([2-4])\s*=\s*mat\1x\2<\s*f32\s*>\s*;/gm, '');
33
+ // patch switch issue
34
+ code = code.replace(/case\s+(\d+)\s*:\s*{/g, 'case $1u: {');
33
35
  return code;
34
36
  }
35
37
  // Doing so because :D
@@ -126,11 +128,11 @@ export class GPUDevice extends EventTarget {
126
128
  });
127
129
  }
128
130
  else {
129
- console.error(error);
131
+ // console.error(error);
130
132
  }
131
133
  }
132
134
  else {
133
- console.error(error);
135
+ //console.error(error);
134
136
  }
135
137
  }
136
138
  static fromNative(device, adapter) {
@@ -139,28 +141,26 @@ export class GPUDevice extends EventTarget {
139
141
  device.setuncapturederror(ret._uncapturederror.bind(this));
140
142
  ret[native_] = device;
141
143
  ret[adapter_] = adapter;
142
- return ret;
143
- }
144
- return null;
145
- }
146
- get label() {
147
- return this[native_]?.label ?? '';
148
- }
149
- get lost() {
150
- if (!this._lostPromise) {
151
- this._lostPromise = new Promise((resolve, reject) => {
152
- this[native_].lost
144
+ ret._lost = new Promise((resolve, reject) => {
145
+ ret[native_].lost
153
146
  .then((info) => {
154
147
  const ret = new GPUDeviceLostInfo();
155
148
  ret[native_] = info;
156
149
  resolve(ret);
157
150
  })
158
- .reject((error) => {
151
+ .catch((error) => {
159
152
  reject(error);
160
153
  });
161
154
  });
155
+ return ret;
162
156
  }
163
- return this._lostPromise;
157
+ return null;
158
+ }
159
+ get label() {
160
+ return this[native_]?.label ?? '';
161
+ }
162
+ get lost() {
163
+ return this._lost;
164
164
  }
165
165
  get native() {
166
166
  return this[native_];
@@ -274,6 +274,7 @@ export class GPUDevice extends EventTarget {
274
274
  }
275
275
  const fragment = descriptor.fragment;
276
276
  if (fragment) {
277
+ handleUnsupportedPlatformFormat(fragment, 'createRenderPipeline');
277
278
  fragment.module = fragment.module[native_];
278
279
  }
279
280
  const layout = descriptor.layout;
@@ -298,6 +299,7 @@ export class GPUDevice extends EventTarget {
298
299
  }
299
300
  const fragment = descriptor.fragment;
300
301
  if (fragment) {
302
+ handleUnsupportedPlatformFormat(fragment, 'createRenderPipelineAsync');
301
303
  fragment.module = fragment.module[native_];
302
304
  }
303
305
  const layout = descriptor.layout;
@@ -327,6 +329,28 @@ export class GPUDevice extends EventTarget {
327
329
  }
328
330
  createTexture(descriptor) {
329
331
  const sizeIsArray = Array.isArray(descriptor.size);
332
+ function handleUnsupportedPlatformFormat(fragment, method) {
333
+ // falls back to platform supported format ... maybe this can be removed once frameworks use the getPreferredCanvasFormat
334
+ if (__ANDROID__) {
335
+ let hasBrga = false;
336
+ fragment.targets = fragment.targets.map((target) => {
337
+ switch (target.format) {
338
+ case 'bgra8unorm':
339
+ target.format = 'rgba8unorm';
340
+ hasBrga = true;
341
+ break;
342
+ case 'bgra8unorm-srgb':
343
+ target.format = 'rgba8unorm-srgb';
344
+ hasBrga = true;
345
+ break;
346
+ }
347
+ return target;
348
+ });
349
+ if (hasBrga) {
350
+ console.warn(`GPUDevice:${method} using unsupported brga format falling back to rgba counterpart.`);
351
+ }
352
+ }
353
+ }
330
354
  const opts = {
331
355
  label: descriptor?.label,
332
356
  mipLevelCount: descriptor?.mipLevelCount ?? 1,
@@ -339,6 +363,22 @@ export class GPUDevice extends EventTarget {
339
363
  height: sizeIsArray ? descriptor.size[1] ?? 1 : descriptor.size?.height ?? 1,
340
364
  depthOrArrayLayers: sizeIsArray ? descriptor.size[2] ?? 1 : descriptor.size?.depthOrArrayLayers ?? 1,
341
365
  };
366
+ let hasBrga = false;
367
+ if (__ANDROID__) {
368
+ switch (opts.format) {
369
+ case 'bgra8unorm':
370
+ opts.format = 'rgba8unorm';
371
+ hasBrga = true;
372
+ break;
373
+ case 'bgra8unorm-srgb':
374
+ opts.format = 'rgba8unorm-srgb';
375
+ hasBrga = true;
376
+ break;
377
+ }
378
+ if (hasBrga) {
379
+ console.warn(`GPUDevice:createTexture using unsupported brga format falling back to rgba counterpart.`);
380
+ }
381
+ }
342
382
  return GPUTexture.fromNative(this.native.createTexture(opts));
343
383
  }
344
384
  popErrorScope() {
@@ -376,4 +416,26 @@ export class GPUDevice extends EventTarget {
376
416
  return this._queue;
377
417
  }
378
418
  }
419
+ function handleUnsupportedPlatformFormat(fragment, method) {
420
+ // falls back to platform supported format ... maybe this can be removed once frameworks use the getPreferredCanvasFormat
421
+ if (__ANDROID__) {
422
+ let hasBrga = false;
423
+ fragment.targets = fragment.targets.map((target) => {
424
+ switch (target.format) {
425
+ case 'bgra8unorm':
426
+ target.format = 'rgba8unorm';
427
+ hasBrga = true;
428
+ break;
429
+ case 'bgra8unorm-srgb':
430
+ target.format = 'rgba8unorm-srgb';
431
+ hasBrga = true;
432
+ break;
433
+ }
434
+ return target;
435
+ });
436
+ if (hasBrga) {
437
+ console.warn(`GPUDevice:${method} using unsupported brga format falling back to rgba counterpart.`);
438
+ }
439
+ }
440
+ }
379
441
  //# sourceMappingURL=GPUDevice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GPUDevice.js","sourceRoot":"","sources":["../../../../packages/canvas/WebGPU/GPUDevice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GPUDevice.js","sourceRoot":"","sources":["../../../../packages/canvas/WebGPU/GPUDevice.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,11 @@ import * as i0 from "@angular/core";
4
4
  registerElement('Canvas', () => require('@nativescript/canvas').Canvas);
5
5
  // @ts-ignore
6
6
  export class CanvasModule {
7
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule });
9
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule });
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule });
9
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule });
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  schemas: [NO_ERRORS_SCHEMA]
@@ -5,11 +5,11 @@ import { registerElement } from '@nativescript/angular';
5
5
  registerElement('Canvas', () => require('@nativescript/canvas').Canvas);
6
6
  // @ts-ignore
7
7
  class CanvasModule {
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule });
10
- static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule });
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule });
10
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule });
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.3", ngImport: i0, type: CanvasModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: CanvasModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  schemas: [NO_ERRORS_SCHEMA]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nativescript/canvas",
3
- "version": "2.0.0-webgpu.11",
3
+ "version": "2.0.0-webgpu.12",
4
4
  "description": "DOM Canvas API for NativeScript",
5
5
  "main": "index",
6
6
  "typings": "index.d.ts",
@@ -347,6 +347,7 @@ SWIFT_CLASS_NAMED("CanvasHelpers")
347
347
  + (BOOL)drawImageWithContext:(int64_t)context image:(UIImage * _Nonnull)image sx:(float)sx sy:(float)sy sw:(float)sw sh:(float)sh dx:(float)dx dy:(float)dy dw:(float)dw dh:(float)dh SWIFT_WARN_UNUSED_RESULT;
348
348
  + (int64_t)initWebGPUWithViewLayer:(int64_t)instance :(int64_t)view :(uint32_t)width :(uint32_t)height SWIFT_METHOD_FAMILY(none) SWIFT_WARN_UNUSED_RESULT;
349
349
  + (int64_t)initWebGPUWithView:(int64_t)instance :(int64_t)view :(uint32_t)width :(uint32_t)height SWIFT_METHOD_FAMILY(none) SWIFT_WARN_UNUSED_RESULT;
350
+ + (void)resizeWebGPUWithView:(int64_t)context :(int64_t)view :(uint32_t)width :(uint32_t)height;
350
351
  + (int64_t)initGLWithView:(int64_t)view :(BOOL)alpha :(BOOL)antialias :(BOOL)depth :(BOOL)fail_if_major_performance_caveat :(int32_t)power_preference :(BOOL)premultiplied_alpha :(BOOL)preserve_drawing_buffer :(BOOL)stencil :(BOOL)desynchronized :(BOOL)xr_compatible :(int32_t)version :(BOOL)is_canvas SWIFT_METHOD_FAMILY(none) SWIFT_WARN_UNUSED_RESULT;
351
352
  + (int64_t)initSharedGLWithView:(int64_t)view :(BOOL)alpha :(BOOL)antialias :(BOOL)depth :(BOOL)fail_if_major_performance_caveat :(int32_t)power_preference :(BOOL)premultiplied_alpha :(BOOL)preserve_drawing_buffer :(BOOL)stencil :(BOOL)desynchronized :(BOOL)xr_compatible :(int32_t)version :(BOOL)is_canvas :(int64_t)shared_context SWIFT_METHOD_FAMILY(none) SWIFT_WARN_UNUSED_RESULT;
352
353
  + (int64_t)initGLWithWidthAndHeight:(int32_t)width :(int32_t)height :(BOOL)alpha :(BOOL)antialias :(BOOL)depth :(BOOL)fail_if_major_performance_caveat :(int32_t)power_preference :(BOOL)premultiplied_alpha :(BOOL)preserve_drawing_buffer :(BOOL)stencil :(BOOL)desynchronized :(BOOL)xr_compatible :(int32_t)version :(BOOL)is_canvas SWIFT_METHOD_FAMILY(none) SWIFT_WARN_UNUSED_RESULT;
@@ -20,6 +20,13 @@ long long canvas_native_init_ios_webgpu_uiview(int64_t instance,
20
20
  uint32_t height);
21
21
  #endif
22
22
 
23
+ #if defined(TARGET_OS_IOS)
24
+ void canvas_native_resize_ios_webgpu_uiview(int64_t context,
25
+ int64_t view,
26
+ uint32_t width,
27
+ uint32_t height);
28
+ #endif
29
+
23
30
  long long canvas_native_init_ios_gl(int64_t view,
24
31
  bool alpha,
25
32
  bool antialias,