@flighthq/image 0.5.1-next.731.0ae0aa4 → 0.5.1-next.799.62ef0c7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/image`. The `@flight
13
13
  This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
14
14
 
15
15
  - [Flight project](https://github.com/flighthq/flight)
16
- - [Source for @flighthq/image@0.5.1-next.731.0ae0aa4](https://github.com/flighthq/flight/tree/0ae0aa49d8251d23b546f64bc242f3ad59a98dcb/packages/image)
17
- - [License](https://github.com/flighthq/flight/blob/0ae0aa49d8251d23b546f64bc242f3ad59a98dcb/LICENSE.md)
16
+ - [Source for @flighthq/image@0.5.1-next.799.62ef0c7](https://github.com/flighthq/flight/tree/62ef0c74f09f24177aac3695b2487b2d743d4fe6/packages/image)
17
+ - [License](https://github.com/flighthq/flight/blob/62ef0c74f09f24177aac3695b2487b2d743d4fe6/LICENSE.md)
@@ -1 +1 @@
1
- {"version":3,"file":"imageBackend.d.ts","sourceRoot":"","sources":["../src/imageBackend.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAE3B,YAAY,EACZ,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAIlC,wBAAgB,qBAAqB,IAAI,YAAY,CAqCpD;AAsBD,wBAAgB,mBAAmB,IAAI,kBAAkB,CAaxD;AAID,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,qBAAqB,GAAG,2BAA2B,CAgBnG;AAED,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,qBAAqB,GAAG,OAAO,CAE3E;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAMnE;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAKlF;AAED,wBAAgB,wBAAwB,IAAI,IAAI,CAK/C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,GAAG,IAAI,CAElE"}
1
+ {"version":3,"file":"imageBackend.d.ts","sourceRoot":"","sources":["../src/imageBackend.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAG3B,YAAY,EACZ,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAIlC,wBAAgB,qBAAqB,IAAI,YAAY,CAqCpD;AAsBD,wBAAgB,mBAAmB,IAAI,kBAAkB,CAaxD;AAID,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,qBAAqB,GAAG,2BAA2B,CAgBnG;AAED,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,qBAAqB,GAAG,OAAO,CAE3E;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAMnE;AAED,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI,CAKlF;AAED,wBAAgB,wBAAwB,IAAI,IAAI,CAK/C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,GAAG,IAAI,CAElE"}
@@ -1,6 +1,7 @@
1
+ import { createEntity } from '@flighthq/entity/contract';
1
2
  import { createImageResourceFromCanvas, createImageResourceFromImageElement } from './imageResourceFrom';
2
3
  export function createWebImageBackend() {
3
- return {
4
+ return createEntity({
4
5
  createImageFromBitmap(bitmap) {
5
6
  const canvas = document.createElement('canvas');
6
7
  canvas.width = bitmap.width;
@@ -38,7 +39,7 @@ export function createWebImageBackend() {
38
39
  }
39
40
  return createImageResourceFromImageElement(img);
40
41
  },
41
- };
42
+ });
42
43
  }
43
44
  // ImageData is straight-alpha by contract. Preserve a Bitmap's declared representation at its own
44
45
  // seam, then normalize only the scratch browser copy used to materialize a CanvasImageSource.
@@ -121,11 +122,11 @@ export function resetImageBackendForTest() {
121
122
  export function setImageBackend(backend) {
122
123
  _custom = backend;
123
124
  }
124
- const _sentinel = {
125
+ const _sentinel = createEntity({
125
126
  loadImageFromUrl(_url, _crossOrigin, _signal) {
126
127
  return Promise.reject(new Error('No image backend installed. Call enableHostWebImage() or setImageBackend() first.'));
127
128
  },
128
- };
129
+ });
129
130
  let _custom = null;
130
131
  let _host = null;
131
132
  let _hostConflict = false;
@@ -1 +1 @@
1
- {"version":3,"file":"imageBackend.js","sourceRoot":"","sources":["../src/imageBackend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imageBackend.js","sourceRoot":"","sources":["../src/imageBackend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAUzD,OAAO,EAAE,6BAA6B,EAAE,mCAAmC,EAAE,MAAM,qBAAqB,CAAC;AAEzG,MAAM,UAAU,qBAAqB;IACnC,OAAO,YAAY,CAAqC;QACtD,qBAAqB,CAAC,MAAM;YAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC5B,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,MAAM,YAAY,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3E,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC5G,MAAM,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1D,OAAO,6BAA6B,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC;QACD,KAAK,CAAC,gBAAgB,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM;YAC7C,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,IAAI,WAAW,KAAK,SAAS;gBAAE,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC;YAC7D,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;YACd,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,IAAI,WAAW,GAA+B,GAAG,EAAE,GAAE,CAAC,CAAC;gBACvD,MAAM,YAAY,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;oBACpD,WAAW,GAAG,MAAM,CAAC;gBACvB,CAAC,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,GAAS,EAAE;oBACzB,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC;oBACb,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC,CAAC;gBACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC1D,IAAI,CAAC;oBACH,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC;gBACnD,CAAC;wBAAS,CAAC;oBACT,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;YACrB,CAAC;YACD,OAAO,mCAAmC,CAAC,GAAG,CAAC,CAAC;QAClD,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,kGAAkG;AAClG,8FAA8F;AAC9F,SAAS,kBAAkB,CAAC,MAAmC;IAC7D,MAAM,IAAI,GAAG,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACZ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAChB,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;IAChG,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO;YACL,QAAQ,EAAE,aAAa;YACvB,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YACxE,SAAS,EAAE,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY;SACjF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;AAClG,CAAC;AAED,8GAA8G;AAC9G,iGAAiG;AACjG,MAAM,UAAU,qBAAqB,CAAC,SAAgC;IACpE,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,OAAO,OAAO,CAAC,SAAS,CAAC,KAAK,UAAU;YAC7C,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE;YACnD,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACvD,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,UAAU;YAC3C,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE;YACjD,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACvD,CAAC;IACD,OAAO;QACL,WAAW,EAAE,KAAK;QAClB,KAAK,EAAE,OAAO,SAAS,CAAC,SAAS,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM;QACvE,SAAS;KACV,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,OAAO,IAAI,KAAK,IAAI,SAAS,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,SAAgC;IAChE,OAAO,qBAAqB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAqB;IAC3D,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,IAAI,KAAK,KAAK,OAAO;YAAE,aAAa,GAAG,IAAI,CAAC;QAC5C,OAAO;IACT,CAAC;IACD,KAAK,GAAG,OAAO,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,SAAiB,EAAE,SAAkB;IAC1E,gBAAgB,GAAG;QACjB,SAAS;QACT,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,yBAAyB;KAC/D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,GAAG,IAAI,CAAC;IACf,KAAK,GAAG,IAAI,CAAC;IACb,aAAa,GAAG,KAAK,CAAC;IACtB,gBAAgB,GAAG,IAAI,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAA4B;IAC1D,OAAO,GAAG,OAAO,CAAC;AACpB,CAAC;AAED,MAAM,SAAS,GAAiB,YAAY,CAAqC;IAC/E,gBAAgB,CACd,IAAY,EACZ,YAA8C,EAC9C,OAAqB;QAErB,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAC/F,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AAEH,IAAI,OAAO,GAAwB,IAAI,CAAC;AACxC,IAAI,KAAK,GAAwB,IAAI,CAAC;AACtC,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,IAAI,gBAAgB,GAAqF,IAAI,CAAC"}
@@ -5,7 +5,7 @@ import { BitmapTextureSourceKind, ImageResourceFailureKind, ImageResourceReferen
5
5
  // out of its source and the reference borrows it, so a document that never resolves an image never pays for
6
6
  // its pixels. `textures` starts empty and each waiting Texture subscribes itself.
7
7
  export function createEmbeddedImageResourceReference(bytes, mimeType = null, alphaType = 'straight') {
8
- return {
8
+ return createEntity({
9
9
  alphaType,
10
10
  bytes,
11
11
  failure: null,
@@ -13,7 +13,7 @@ export function createEmbeddedImageResourceReference(bytes, mimeType = null, alp
13
13
  mimeType,
14
14
  state: ResourceResolutionState.Unresolved,
15
15
  textures: [],
16
- };
16
+ });
17
17
  }
18
18
  // The one encoded-byte producer for image resource references. A registered decoder owns format
19
19
  // knowledge; this async resource layer turns its RGBA result into the live Bitmap entity renderers
@@ -43,7 +43,7 @@ async function decodeEmbeddedImageResourceReference(ref, signal) {
43
43
  return createEntity(bitmap);
44
44
  }
45
45
  export function createExternalImageResourceReference(uri, basePath = null) {
46
- return {
46
+ return createEntity({
47
47
  basePath,
48
48
  failure: null,
49
49
  kind: ImageResourceReferenceKind.External,
@@ -51,15 +51,15 @@ export function createExternalImageResourceReference(uri, basePath = null) {
51
51
  state: ResourceResolutionState.Unresolved,
52
52
  textures: [],
53
53
  uri,
54
- };
54
+ });
55
55
  }
56
56
  // Reduces a thrown value to the serialization-safe categories a reference retains. Raw Error objects and
57
57
  // arbitrary thrown values stay inside the resolving operation; diagnostics get category, name, and message.
58
58
  export function createImageResourceFailure(cause) {
59
59
  if (cause instanceof Error) {
60
- return { kind: ImageResourceFailureKind.Error, message: cause.message, name: cause.name };
60
+ return createEntity({ kind: ImageResourceFailureKind.Error, message: cause.message, name: cause.name });
61
61
  }
62
- return { kind: ImageResourceFailureKind.Error, message: String(cause), name: null };
62
+ return createEntity({ kind: ImageResourceFailureKind.Error, message: String(cause), name: null });
63
63
  }
64
64
  async function resolveImageBitmapComposition(ref, signal) {
65
65
  signal.throwIfAborted();
@@ -123,11 +123,11 @@ export async function resolveImageResourceReference(ref, fetch, signal) {
123
123
  const decodeFailure = usesOrdinaryEmbeddedDecode
124
124
  ? explainImageDecodeFailure(ref.bytes, ref.mimeType ?? undefined)
125
125
  : null;
126
- ref.failure = {
126
+ ref.failure = createEntity({
127
127
  kind: ImageResourceFailureKind.Unavailable,
128
128
  message: decodeFailure?.reason ?? 'Image resource unavailable',
129
129
  name: null,
130
- };
130
+ });
131
131
  ref.state = ResourceResolutionState.Failed;
132
132
  return null;
133
133
  }
@@ -1 +1 @@
1
- {"version":3,"file":"imageResourceReference.js","sourceRoot":"","sources":["../src/imageResourceReference.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imageResourceReference.js","sourceRoot":"","sources":["../src/imageResourceReference.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/image",
3
- "version": "0.5.1-next.731.0ae0aa4",
3
+ "version": "0.5.1-next.799.62ef0c7",
4
4
  "author": "Joshua Granick and other contributors",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -38,9 +38,9 @@
38
38
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
39
39
  },
40
40
  "dependencies": {
41
- "@flighthq/entity": "0.5.1-next.731.0ae0aa4",
42
- "@flighthq/image-codec": "0.5.1-next.731.0ae0aa4",
43
- "@flighthq/types": "0.5.1-next.731.0ae0aa4"
41
+ "@flighthq/entity": "0.5.1-next.799.62ef0c7",
42
+ "@flighthq/image-codec": "0.5.1-next.799.62ef0c7",
43
+ "@flighthq/types": "0.5.1-next.799.62ef0c7"
44
44
  },
45
45
  "devDependencies": {
46
46
  "typescript": "^5.3.0"
@@ -1,4 +1,5 @@
1
1
  import type { ImageResource, ImageBackend } from '@flighthq/types/contract';
2
+ import { EntityRuntimeKey } from '@flighthq/types/contract';
2
3
  import { afterEach, describe, expect, it } from 'vitest';
3
4
 
4
5
  import {
@@ -21,6 +22,7 @@ function recordingBackend(): { backend: ImageBackend; calls: unknown[][] } {
21
22
  const calls: unknown[][] = [];
22
23
  return {
23
24
  backend: {
25
+ [EntityRuntimeKey]: undefined,
24
26
  loadImageFromUrl(url, crossOrigin, signal): Promise<ImageResource> {
25
27
  calls.push([url, crossOrigin, signal]);
26
28
  return Promise.resolve({} as ImageResource);
@@ -82,7 +84,7 @@ describe('explainImageOperation', () => {
82
84
  operation: 'createImageFromBitmap',
83
85
  });
84
86
 
85
- setImageBackend({ loadImageFromUrl: vi.fn() });
87
+ setImageBackend({ [EntityRuntimeKey]: undefined, loadImageFromUrl: vi.fn() });
86
88
  expect(explainImageOperation('createImageFromBitmap')).toEqual({
87
89
  implemented: false,
88
90
  layer: 'none',
@@ -91,7 +93,7 @@ describe('explainImageOperation', () => {
91
93
  });
92
94
 
93
95
  it('reports the unsupported Bitmap operation without claiming URL loading is absent', () => {
94
- const backend: ImageBackend = { loadImageFromUrl: vi.fn() };
96
+ const backend: ImageBackend = { [EntityRuntimeKey]: undefined, loadImageFromUrl: vi.fn() };
95
97
  setImageBackend(backend);
96
98
 
97
99
  expect(explainImageOperation('createImageFromBitmap')).toEqual({
@@ -145,7 +147,7 @@ describe('hasImageOperation', () => {
145
147
  expect(hasImageOperation(operation)).toBe(explainImageOperation(operation).implemented);
146
148
  }
147
149
 
148
- setImageBackend({ loadImageFromUrl: vi.fn() });
150
+ setImageBackend({ [EntityRuntimeKey]: undefined, loadImageFromUrl: vi.fn() });
149
151
  for (const operation of ['createImageFromBitmap', 'loadImageFromUrl'] as const) {
150
152
  expect(hasImageOperation(operation)).toBe(explainImageOperation(operation).implemented);
151
153
  }
@@ -1,6 +1,6 @@
1
1
  import { createEntity } from '@flighthq/entity/contract';
2
2
  import type { Bitmap, ImageResource, ImageBackend } from '@flighthq/types/contract';
3
- import { BitmapTextureSourceKind } from '@flighthq/types/contract';
3
+ import { BitmapTextureSourceKind, EntityRuntimeKey } from '@flighthq/types/contract';
4
4
 
5
5
  import { createWebImageBackend, resetImageBackendForTest, setImageBackend } from './imageBackend';
6
6
  import { createImageResource } from './imageResource';
@@ -35,6 +35,7 @@ describe('createImageResourceFromBitmap', () => {
35
35
  const expected = {} as ImageResource;
36
36
  const createImageFromBitmap = vi.fn((_bitmap: Readonly<Bitmap>) => expected);
37
37
  const backend: ImageBackend = {
38
+ [EntityRuntimeKey]: undefined,
38
39
  createImageFromBitmap,
39
40
  loadImageFromUrl: vi.fn(),
40
41
  };
@@ -47,7 +48,7 @@ describe('createImageResourceFromBitmap', () => {
47
48
 
48
49
  it('returns null for selected-backend absence without throwing or falling back to DOM', () => {
49
50
  const createElement = vi.spyOn(document, 'createElement');
50
- const backend: ImageBackend = { loadImageFromUrl: vi.fn() };
51
+ const backend: ImageBackend = { [EntityRuntimeKey]: undefined, loadImageFromUrl: vi.fn() };
51
52
  setImageBackend(backend);
52
53
 
53
54
  expect(() => createImageResourceFromBitmap(createTestBitmap(1, 1))).not.toThrow();
@@ -77,11 +77,11 @@ describe('createExternalImageResourceReference', () => {
77
77
  describe('createImageResourceFailure', () => {
78
78
  it('keeps an Error name and message', () => {
79
79
  const failure = createImageResourceFailure(new TypeError('bad magic'));
80
- expect(failure).toEqual({ kind: ImageResourceFailureKind.Error, message: 'bad magic', name: 'TypeError' });
80
+ expect(failure).toMatchObject({ kind: ImageResourceFailureKind.Error, message: 'bad magic', name: 'TypeError' });
81
81
  });
82
82
 
83
83
  it('stringifies a non-Error cause with no name', () => {
84
- expect(createImageResourceFailure('exploded')).toEqual({
84
+ expect(createImageResourceFailure('exploded')).toMatchObject({
85
85
  kind: ImageResourceFailureKind.Error,
86
86
  message: 'exploded',
87
87
  name: null,
@@ -123,11 +123,11 @@ describe('enableImageBitmapComposition', () => {
123
123
  describe('explainImageResourceReferenceResolution', () => {
124
124
  it('detaches the failure so a caller cannot mutate the reference', () => {
125
125
  const ref = createEmbeddedImageResourceReference(new Uint8Array(1));
126
- ref.failure = { kind: ImageResourceFailureKind.Error, message: 'nope', name: null };
126
+ ref.failure = { [EntityRuntimeKey]: undefined, kind: ImageResourceFailureKind.Error, message: 'nope', name: null };
127
127
  ref.state = ResourceResolutionState.Failed;
128
128
  const explanation = explainImageResourceReferenceResolution(ref);
129
129
  expect(explanation.failure).not.toBe(ref.failure);
130
- expect(explanation.failure).toEqual(ref.failure);
130
+ expect(explanation.failure).toMatchObject(ref.failure!);
131
131
  });
132
132
 
133
133
  it('reports only a failed reference as retryable', () => {
@@ -141,7 +141,12 @@ describe('explainImageResourceReferenceResolution', () => {
141
141
  describe('resetFailedImageResourceReference', () => {
142
142
  it('clears a failed reference back to unresolved', () => {
143
143
  const ref = createExternalImageResourceReference('a.png');
144
- ref.failure = { kind: ImageResourceFailureKind.Unavailable, message: 'missing', name: null };
144
+ ref.failure = {
145
+ [EntityRuntimeKey]: undefined,
146
+ kind: ImageResourceFailureKind.Unavailable,
147
+ message: 'missing',
148
+ name: null,
149
+ };
145
150
  ref.state = ResourceResolutionState.Failed;
146
151
  expect(resetFailedImageResourceReference(ref)).toBe(true);
147
152
  expect(ref.state).toBe(ResourceResolutionState.Unresolved);
@@ -231,7 +236,7 @@ describe('resolveImageResourceReference', () => {
231
236
  const ref = createEmbeddedImageResourceReference(new Uint8Array([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a]));
232
237
 
233
238
  expect(await resolveImageResourceReference(ref, unusedFetch, new AbortController().signal)).toBeNull();
234
- expect(ref.failure).toEqual({
239
+ expect(ref.failure).toMatchObject({
235
240
  kind: ImageResourceFailureKind.Unavailable,
236
241
  message: 'decoder-not-registered',
237
242
  name: null,
@@ -259,7 +264,7 @@ describe('resolveImageResourceReference', () => {
259
264
  const fetch = vi.fn().mockRejectedValue(new Error('network down'));
260
265
  expect(await resolveImageResourceReference(ref, fetch, new AbortController().signal)).toBeNull();
261
266
  expect(ref.state).toBe(ResourceResolutionState.Failed);
262
- expect(ref.failure).toEqual({ kind: ImageResourceFailureKind.Error, message: 'network down', name: 'Error' });
267
+ expect(ref.failure).toMatchObject({ kind: ImageResourceFailureKind.Error, message: 'network down', name: 'Error' });
263
268
  });
264
269
 
265
270
  it('treats an abort as a cancel: reverts to unresolved and rethrows', async () => {
@@ -276,7 +281,7 @@ describe('resolveImageResourceReference', () => {
276
281
 
277
282
  it('clears a prior failure when the reference is retried', async () => {
278
283
  const ref = createExternalImageResourceReference('flaky.png');
279
- ref.failure = { kind: ImageResourceFailureKind.Error, message: 'old', name: null };
284
+ ref.failure = { [EntityRuntimeKey]: undefined, kind: ImageResourceFailureKind.Error, message: 'old', name: null };
280
285
  ref.state = ResourceResolutionState.Failed;
281
286
  const fetch = vi.fn().mockResolvedValue({ width: 1 } as ImageResource);
282
287
  await resolveImageResourceReference(ref, fetch, new AbortController().signal);