@fideus-labs/ngff-zarr 0.2.3 → 0.2.5

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 (199) hide show
  1. package/README.md +268 -76
  2. package/esm/browser-mod.d.ts +2 -0
  3. package/esm/browser-mod.d.ts.map +1 -1
  4. package/esm/browser-mod.js +4 -1
  5. package/esm/browser-mod.js.map +1 -0
  6. package/esm/io/from_ngff_zarr.d.ts.map +1 -1
  7. package/esm/io/from_ngff_zarr.js +2 -2
  8. package/esm/io/from_ngff_zarr.js.map +1 -0
  9. package/esm/io/hcs.js +1 -0
  10. package/esm/io/hcs.js.map +1 -0
  11. package/esm/io/itk_image_to_ngff_image.js +1 -0
  12. package/esm/io/itk_image_to_ngff_image.js.map +1 -0
  13. package/esm/io/ngff_image_to_itk_image.js +1 -0
  14. package/esm/io/ngff_image_to_itk_image.js.map +1 -0
  15. package/esm/io/to_ngff_image.js +1 -0
  16. package/esm/io/to_ngff_image.js.map +1 -0
  17. package/esm/io/to_ngff_zarr.d.ts.map +1 -1
  18. package/esm/io/to_ngff_zarr.js +2 -2
  19. package/esm/io/to_ngff_zarr.js.map +1 -0
  20. package/esm/methods/itkwasm-browser.js +1 -0
  21. package/esm/methods/itkwasm-browser.js.map +1 -0
  22. package/esm/methods/itkwasm-node.js +1 -0
  23. package/esm/methods/itkwasm-node.js.map +1 -0
  24. package/esm/methods/itkwasm-shared.js +1 -0
  25. package/esm/methods/itkwasm-shared.js.map +1 -0
  26. package/esm/methods/itkwasm.js +1 -0
  27. package/esm/methods/itkwasm.js.map +1 -0
  28. package/esm/mod.d.ts +1 -1
  29. package/esm/mod.d.ts.map +1 -1
  30. package/esm/mod.js +2 -1
  31. package/esm/mod.js.map +1 -0
  32. package/esm/process/to_multiscales-browser.d.ts +17 -0
  33. package/esm/process/to_multiscales-browser.d.ts.map +1 -0
  34. package/esm/process/to_multiscales-browser.js +15 -0
  35. package/esm/process/to_multiscales-browser.js.map +1 -0
  36. package/esm/process/to_multiscales-node.d.ts +18 -0
  37. package/esm/process/to_multiscales-node.d.ts.map +1 -0
  38. package/esm/process/to_multiscales-node.js +17 -0
  39. package/esm/process/to_multiscales-node.js.map +1 -0
  40. package/esm/process/to_multiscales-shared.d.ts +28 -0
  41. package/esm/process/to_multiscales-shared.d.ts.map +1 -0
  42. package/esm/{io/to_multiscales.js → process/to_multiscales-shared.js} +7 -5
  43. package/esm/process/to_multiscales-shared.js.map +1 -0
  44. package/esm/schemas/coordinate_systems.js +1 -0
  45. package/esm/schemas/coordinate_systems.js.map +1 -0
  46. package/esm/schemas/index.js +1 -0
  47. package/esm/schemas/index.js.map +1 -0
  48. package/esm/schemas/methods.js +1 -0
  49. package/esm/schemas/methods.js.map +1 -0
  50. package/esm/schemas/multiscales.js +1 -0
  51. package/esm/schemas/multiscales.js.map +1 -0
  52. package/esm/schemas/ngff_image.js +1 -0
  53. package/esm/schemas/ngff_image.js.map +1 -0
  54. package/esm/schemas/ome_zarr.js +1 -0
  55. package/esm/schemas/ome_zarr.js.map +1 -0
  56. package/esm/schemas/rfc4.js +1 -0
  57. package/esm/schemas/rfc4.js.map +1 -0
  58. package/esm/schemas/units.js +1 -0
  59. package/esm/schemas/units.js.map +1 -0
  60. package/esm/schemas/zarr_metadata.js +1 -0
  61. package/esm/schemas/zarr_metadata.js.map +1 -0
  62. package/esm/types/array_interface.js +1 -0
  63. package/esm/types/array_interface.js.map +1 -0
  64. package/esm/types/hcs.js +1 -0
  65. package/esm/types/hcs.js.map +1 -0
  66. package/esm/types/methods.js +1 -0
  67. package/esm/types/methods.js.map +1 -0
  68. package/esm/types/multiscales.js +1 -0
  69. package/esm/types/multiscales.js.map +1 -0
  70. package/esm/types/ngff_image.js +1 -0
  71. package/esm/types/ngff_image.js.map +1 -0
  72. package/esm/types/rfc4.js +1 -0
  73. package/esm/types/rfc4.js.map +1 -0
  74. package/esm/types/units.js +1 -0
  75. package/esm/types/units.js.map +1 -0
  76. package/esm/types/zarr_metadata.js +1 -0
  77. package/esm/types/zarr_metadata.js.map +1 -0
  78. package/esm/utils/create_queue.js +1 -0
  79. package/esm/utils/create_queue.js.map +1 -0
  80. package/esm/utils/factory.js +1 -0
  81. package/esm/utils/factory.js.map +1 -0
  82. package/esm/utils/method_metadata.js +1 -0
  83. package/esm/utils/method_metadata.js.map +1 -0
  84. package/esm/utils/validation.js +1 -0
  85. package/esm/utils/validation.js.map +1 -0
  86. package/package.json +31 -28
  87. package/esm/_dnt.shims.d.ts +0 -2
  88. package/esm/_dnt.shims.d.ts.map +0 -1
  89. package/esm/_dnt.shims.js +0 -57
  90. package/esm/io/to_multiscales.d.ts +0 -18
  91. package/esm/io/to_multiscales.d.ts.map +0 -1
  92. package/esm/package.json +0 -3
  93. package/script/_dnt.shims.d.ts +0 -2
  94. package/script/_dnt.shims.d.ts.map +0 -1
  95. package/script/_dnt.shims.js +0 -60
  96. package/script/browser-mod.d.ts +0 -14
  97. package/script/browser-mod.d.ts.map +0 -1
  98. package/script/browser-mod.js +0 -48
  99. package/script/io/from_ngff_zarr.d.ts +0 -10
  100. package/script/io/from_ngff_zarr.d.ts.map +0 -1
  101. package/script/io/from_ngff_zarr.js +0 -234
  102. package/script/io/hcs.d.ts +0 -18
  103. package/script/io/hcs.d.ts.map +0 -1
  104. package/script/io/hcs.js +0 -55
  105. package/script/io/itk_image_to_ngff_image.d.ts +0 -30
  106. package/script/io/itk_image_to_ngff_image.d.ts.map +0 -1
  107. package/script/io/itk_image_to_ngff_image.js +0 -153
  108. package/script/io/ngff_image_to_itk_image.d.ts +0 -30
  109. package/script/io/ngff_image_to_itk_image.d.ts.map +0 -1
  110. package/script/io/ngff_image_to_itk_image.js +0 -244
  111. package/script/io/to_multiscales.d.ts +0 -18
  112. package/script/io/to_multiscales.d.ts.map +0 -1
  113. package/script/io/to_multiscales.js +0 -67
  114. package/script/io/to_ngff_image.d.ts +0 -17
  115. package/script/io/to_ngff_image.d.ts.map +0 -1
  116. package/script/io/to_ngff_image.js +0 -162
  117. package/script/io/to_ngff_zarr.d.ts +0 -10
  118. package/script/io/to_ngff_zarr.d.ts.map +0 -1
  119. package/script/io/to_ngff_zarr.js +0 -346
  120. package/script/methods/itkwasm-browser.d.ts +0 -6
  121. package/script/methods/itkwasm-browser.d.ts.map +0 -1
  122. package/script/methods/itkwasm-browser.js +0 -488
  123. package/script/methods/itkwasm-node.d.ts +0 -6
  124. package/script/methods/itkwasm-node.d.ts.map +0 -1
  125. package/script/methods/itkwasm-node.js +0 -493
  126. package/script/methods/itkwasm-shared.d.ts +0 -68
  127. package/script/methods/itkwasm-shared.d.ts.map +0 -1
  128. package/script/methods/itkwasm-shared.js +0 -524
  129. package/script/methods/itkwasm.d.ts +0 -14
  130. package/script/methods/itkwasm.d.ts.map +0 -1
  131. package/script/methods/itkwasm.js +0 -21
  132. package/script/mod.d.ts +0 -24
  133. package/script/mod.d.ts.map +0 -1
  134. package/script/mod.js +0 -50
  135. package/script/package.json +0 -3
  136. package/script/schemas/coordinate_systems.d.ts +0 -251
  137. package/script/schemas/coordinate_systems.d.ts.map +0 -1
  138. package/script/schemas/coordinate_systems.js +0 -142
  139. package/script/schemas/index.d.ts +0 -9
  140. package/script/schemas/index.d.ts.map +0 -1
  141. package/script/schemas/index.js +0 -101
  142. package/script/schemas/methods.d.ts +0 -3
  143. package/script/schemas/methods.d.ts.map +0 -1
  144. package/script/schemas/methods.js +0 -11
  145. package/script/schemas/multiscales.d.ts +0 -4
  146. package/script/schemas/multiscales.d.ts.map +0 -1
  147. package/script/schemas/multiscales.js +0 -24
  148. package/script/schemas/ngff_image.d.ts +0 -20
  149. package/script/schemas/ngff_image.d.ts.map +0 -1
  150. package/script/schemas/ngff_image.js +0 -24
  151. package/script/schemas/ome_zarr.d.ts +0 -617
  152. package/script/schemas/ome_zarr.d.ts.map +0 -1
  153. package/script/schemas/ome_zarr.js +0 -211
  154. package/script/schemas/rfc4.d.ts +0 -334
  155. package/script/schemas/rfc4.d.ts.map +0 -1
  156. package/script/schemas/rfc4.js +0 -132
  157. package/script/schemas/units.d.ts +0 -78
  158. package/script/schemas/units.d.ts.map +0 -1
  159. package/script/schemas/units.js +0 -70
  160. package/script/schemas/zarr_metadata.d.ts +0 -55
  161. package/script/schemas/zarr_metadata.d.ts.map +0 -1
  162. package/script/schemas/zarr_metadata.js +0 -71
  163. package/script/types/array_interface.d.ts +0 -7
  164. package/script/types/array_interface.d.ts.map +0 -1
  165. package/script/types/array_interface.js +0 -2
  166. package/script/types/hcs.d.ts +0 -70
  167. package/script/types/hcs.d.ts.map +0 -1
  168. package/script/types/hcs.js +0 -233
  169. package/script/types/methods.d.ts +0 -7
  170. package/script/types/methods.d.ts.map +0 -1
  171. package/script/types/methods.js +0 -12
  172. package/script/types/multiscales.d.ts +0 -21
  173. package/script/types/multiscales.d.ts.map +0 -1
  174. package/script/types/multiscales.js +0 -38
  175. package/script/types/ngff_image.d.ts +0 -27
  176. package/script/types/ngff_image.d.ts.map +0 -1
  177. package/script/types/ngff_image.js +0 -48
  178. package/script/types/rfc4.d.ts +0 -94
  179. package/script/types/rfc4.d.ts.map +0 -1
  180. package/script/types/rfc4.js +0 -143
  181. package/script/types/units.d.ts +0 -12
  182. package/script/types/units.d.ts.map +0 -1
  183. package/script/types/units.js +0 -66
  184. package/script/types/zarr_metadata.d.ts +0 -58
  185. package/script/types/zarr_metadata.d.ts.map +0 -1
  186. package/script/types/zarr_metadata.js +0 -20
  187. package/script/utils/create_queue.d.ts +0 -6
  188. package/script/utils/create_queue.d.ts.map +0 -1
  189. package/script/utils/create_queue.js +0 -17
  190. package/script/utils/factory.d.ts +0 -13
  191. package/script/utils/factory.d.ts.map +0 -1
  192. package/script/utils/factory.js +0 -108
  193. package/script/utils/method_metadata.d.ts +0 -10
  194. package/script/utils/method_metadata.d.ts.map +0 -1
  195. package/script/utils/method_metadata.js +0 -40
  196. package/script/utils/validation.d.ts +0 -6
  197. package/script/utils/validation.d.ts.map +0 -1
  198. package/script/utils/validation.js +0 -78
  199. /package/{LICENSE → LICENSE.txt} +0 -0
@@ -1,66 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.timeUnits = exports.spaceUnits = exports.supportedDims = void 0;
4
- exports.isDimensionSupported = isDimensionSupported;
5
- exports.isUnitSupported = isUnitSupported;
6
- exports.supportedDims = ["x", "y", "z", "c", "t"];
7
- exports.spaceUnits = [
8
- "angstrom",
9
- "attometer",
10
- "centimeter",
11
- "decimeter",
12
- "exameter",
13
- "femtometer",
14
- "foot",
15
- "gigameter",
16
- "hectometer",
17
- "inch",
18
- "kilometer",
19
- "megameter",
20
- "meter",
21
- "micrometer",
22
- "mile",
23
- "millimeter",
24
- "nanometer",
25
- "parsec",
26
- "petameter",
27
- "picometer",
28
- "terameter",
29
- "yard",
30
- "yoctometer",
31
- "yottameter",
32
- "zeptometer",
33
- "zettameter",
34
- ];
35
- exports.timeUnits = [
36
- "attosecond",
37
- "centisecond",
38
- "day",
39
- "decisecond",
40
- "exasecond",
41
- "femtosecond",
42
- "gigasecond",
43
- "hectosecond",
44
- "hour",
45
- "kilosecond",
46
- "megasecond",
47
- "microsecond",
48
- "millisecond",
49
- "minute",
50
- "nanosecond",
51
- "petasecond",
52
- "picosecond",
53
- "second",
54
- "terasecond",
55
- "yoctosecond",
56
- "yottasecond",
57
- "zeptosecond",
58
- "zettasecond",
59
- ];
60
- function isDimensionSupported(dim) {
61
- return exports.supportedDims.includes(dim);
62
- }
63
- function isUnitSupported(unit) {
64
- return (exports.timeUnits.includes(unit) ||
65
- exports.spaceUnits.includes(unit));
66
- }
@@ -1,58 +0,0 @@
1
- import type { AxesType, SupportedDims, Units } from "./units.js";
2
- export interface Axis {
3
- name: SupportedDims;
4
- type: AxesType;
5
- unit: Units | undefined;
6
- }
7
- export interface Identity {
8
- type: "identity";
9
- }
10
- export interface Scale {
11
- scale: number[];
12
- type: "scale";
13
- }
14
- export interface Translation {
15
- translation: number[];
16
- type: "translation";
17
- }
18
- export type Transform = Scale | Translation;
19
- export interface Dataset {
20
- path: string;
21
- coordinateTransformations: Transform[];
22
- }
23
- export interface OmeroWindow {
24
- min?: number;
25
- max?: number;
26
- start?: number;
27
- end?: number;
28
- }
29
- export interface OmeroChannel {
30
- color: string;
31
- window: OmeroWindow;
32
- label?: string;
33
- active?: boolean;
34
- }
35
- export interface Omero {
36
- channels: OmeroChannel[];
37
- version?: string;
38
- }
39
- export interface MethodMetadata {
40
- description: string;
41
- method: string;
42
- version: string;
43
- }
44
- export interface Metadata {
45
- axes: Axis[];
46
- datasets: Dataset[];
47
- coordinateTransformations: Transform[] | undefined;
48
- omero: Omero | undefined;
49
- name: string;
50
- version: string;
51
- type?: string;
52
- metadata?: MethodMetadata;
53
- }
54
- export declare function validateColor(color: string): void;
55
- export declare function createScale(scale: number[]): Scale;
56
- export declare function createTranslation(translation: number[]): Translation;
57
- export declare function createIdentity(): Identity;
58
- //# sourceMappingURL=zarr_metadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"zarr_metadata.d.ts","sourceRoot":"","sources":["../../src/types/zarr_metadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjE,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;CACzB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,WAAW,CAAC;AAE5C,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,yBAAyB,EAAE,SAAS,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,KAAK;IACpB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,IAAI,EAAE,CAAC;IACb,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,yBAAyB,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;IACnD,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAElD;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,WAAW,CAEpE;AAED,wBAAgB,cAAc,IAAI,QAAQ,CAEzC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateColor = validateColor;
4
- exports.createScale = createScale;
5
- exports.createTranslation = createTranslation;
6
- exports.createIdentity = createIdentity;
7
- function validateColor(color) {
8
- if (!/^[0-9A-Fa-f]{6}$/.test(color)) {
9
- throw new Error(`Invalid color '${color}'. Must be 6 hex digits.`);
10
- }
11
- }
12
- function createScale(scale) {
13
- return { scale: [...scale], type: "scale" };
14
- }
15
- function createTranslation(translation) {
16
- return { translation: [...translation], type: "translation" };
17
- }
18
- function createIdentity() {
19
- return { type: "identity" };
20
- }
@@ -1,6 +0,0 @@
1
- export type ChunkQueue = {
2
- add(fn: () => Promise<void>): void;
3
- onIdle(): Promise<void>;
4
- };
5
- export declare function createQueue(): ChunkQueue;
6
- //# sourceMappingURL=create_queue.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create_queue.d.ts","sourceRoot":"","sources":["../../src/utils/create_queue.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACnC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB,CAAC;AAEF,wBAAgB,WAAW,IAAI,UAAU,CAOxC"}
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createQueue = createQueue;
7
- // SPDX-FileCopyrightText: Copyright (c) Fideus Labs LLC
8
- // SPDX-License-Identifier: MIT
9
- const p_queue_1 = __importDefault(require("p-queue"));
10
- function createQueue() {
11
- const concurrency = Math.min(navigator?.hardwareConcurrency || 4, 128);
12
- const queue = new p_queue_1.default({ concurrency });
13
- return {
14
- add: (fn) => queue.add(fn),
15
- onIdle: queue.onIdle.bind(queue),
16
- };
17
- }
@@ -1,13 +0,0 @@
1
- import { NgffImage } from "../types/ngff_image.js";
2
- import { Multiscales } from "../types/multiscales.js";
3
- import type { Axis, Dataset, Metadata, Scale, Translation } from "../types/zarr_metadata.js";
4
- import type { AxesType, SupportedDims, Units } from "../types/units.js";
5
- import type { Methods } from "../types/methods.js";
6
- export declare function createNgffImage(_data: ArrayBuffer | number[], shape: number[], dtype: string, dims: string[], scale: Record<string, number>, translation: Record<string, number>, name?: string): Promise<NgffImage>;
7
- export declare function createAxis(name: SupportedDims, type: AxesType, unit?: Units): Axis;
8
- export declare function createScale(scale: number[]): Scale;
9
- export declare function createTranslation(translation: number[]): Translation;
10
- export declare function createDataset(path: string, scale: number[], translation: number[]): Dataset;
11
- export declare function createMetadata(axes: Axis[], datasets: Dataset[], name?: string, version?: string): Metadata;
12
- export declare function createMultiscales(images: NgffImage[], metadata: Metadata, scaleFactors?: (Record<string, number> | number)[], method?: Methods): Multiscales;
13
- //# sourceMappingURL=factory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/utils/factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EACV,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,KAAK,EACL,WAAW,EACZ,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAsBnD,wBAAsB,eAAe,CACnC,KAAK,EAAE,WAAW,GAAG,MAAM,EAAE,EAC7B,KAAK,EAAE,MAAM,EAAE,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACnC,IAAI,SAAU,GACb,OAAO,CAAC,SAAS,CAAC,CAYpB;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,aAAa,EACnB,IAAI,EAAE,QAAQ,EACd,IAAI,CAAC,EAAE,KAAK,GACX,IAAI,CAMN;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAKlD;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,WAAW,CAKpE;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EAAE,EACf,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAQT;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,EAAE,EACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,IAAI,SAAU,EACd,OAAO,SAAQ,GACd,QAAQ,CASV;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EAAE,EACnB,QAAQ,EAAE,QAAQ,EAClB,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EAClD,MAAM,CAAC,EAAE,OAAO,GACf,WAAW,CAQb"}
@@ -1,108 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.createNgffImage = createNgffImage;
27
- exports.createAxis = createAxis;
28
- exports.createScale = createScale;
29
- exports.createTranslation = createTranslation;
30
- exports.createDataset = createDataset;
31
- exports.createMetadata = createMetadata;
32
- exports.createMultiscales = createMultiscales;
33
- // SPDX-FileCopyrightText: Copyright (c) Fideus Labs LLC
34
- // SPDX-License-Identifier: MIT
35
- const zarr = __importStar(require("zarrita"));
36
- const ngff_image_js_1 = require("../types/ngff_image.js");
37
- const multiscales_js_1 = require("../types/multiscales.js");
38
- // Create a zarr.Array for testing using an in-memory store
39
- async function createTestZarrArray(shape, dtype, chunks, name) {
40
- const store = new Map();
41
- const root = zarr.root(store);
42
- // Create the array using zarrita with correct options
43
- const array = await zarr.create(root.resolve(name), {
44
- shape,
45
- chunk_shape: chunks,
46
- data_type: dtype,
47
- });
48
- return array;
49
- }
50
- async function createNgffImage(_data, shape, dtype, dims, scale, translation, name = "image") {
51
- const zarrArray = await createTestZarrArray(shape, dtype, shape, name);
52
- return new ngff_image_js_1.NgffImage({
53
- data: zarrArray,
54
- dims,
55
- scale,
56
- translation,
57
- name,
58
- axesUnits: undefined,
59
- computedCallbacks: undefined,
60
- });
61
- }
62
- function createAxis(name, type, unit) {
63
- return {
64
- name,
65
- type,
66
- unit: unit || undefined,
67
- };
68
- }
69
- function createScale(scale) {
70
- return {
71
- scale: [...scale],
72
- type: "scale",
73
- };
74
- }
75
- function createTranslation(translation) {
76
- return {
77
- translation: [...translation],
78
- type: "translation",
79
- };
80
- }
81
- function createDataset(path, scale, translation) {
82
- return {
83
- path,
84
- coordinateTransformations: [
85
- createScale(scale),
86
- createTranslation(translation),
87
- ],
88
- };
89
- }
90
- function createMetadata(axes, datasets, name = "image", version = "0.4") {
91
- return {
92
- axes: [...axes],
93
- datasets: [...datasets],
94
- coordinateTransformations: undefined,
95
- omero: undefined,
96
- name,
97
- version,
98
- };
99
- }
100
- function createMultiscales(images, metadata, scaleFactors, method) {
101
- return new multiscales_js_1.Multiscales({
102
- images: [...images],
103
- metadata,
104
- scaleFactors: scaleFactors || undefined,
105
- method: method || undefined,
106
- chunks: undefined,
107
- });
108
- }
@@ -1,10 +0,0 @@
1
- import type { Methods } from "../types/methods.js";
2
- import type { MethodMetadata } from "../types/zarr_metadata.js";
3
- /**
4
- * Get metadata information for a given downsampling method.
5
- *
6
- * @param method - The downsampling method enum
7
- * @returns MethodMetadata with description, method (package.function), and version
8
- */
9
- export declare function getMethodMetadata(method: Methods): MethodMetadata | undefined;
10
- //# sourceMappingURL=method_metadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"method_metadata.d.ts","sourceRoot":"","sources":["../../src/utils/method_metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AA6BhE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS,CAe7E"}
@@ -1,40 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMethodMetadata = getMethodMetadata;
4
- const METHOD_INFO = {
5
- itkwasm_gaussian: {
6
- description: "Smoothed with a discrete gaussian filter to generate a scale space, ideal for intensity images. ITK-Wasm implementation is extremely portable and SIMD accelerated.",
7
- package: "itkwasm-downsample",
8
- method: "itkwasm_downsample.downsample",
9
- },
10
- itkwasm_bin_shrink: {
11
- description: "Uses the local mean for the output value. WebAssembly build. Fast but generates more artifacts than gaussian-based methods. Appropriate for intensity images.",
12
- package: "itkwasm-downsample",
13
- method: "itkwasm_downsample.downsample_bin_shrink",
14
- },
15
- itkwasm_label_image: {
16
- description: "A sample is the mode of the linearly weighted local labels in the image. Fast and minimal artifacts. For label images.",
17
- package: "itkwasm-downsample",
18
- method: "itkwasm_downsample.downsample_label_image",
19
- },
20
- };
21
- /**
22
- * Get metadata information for a given downsampling method.
23
- *
24
- * @param method - The downsampling method enum
25
- * @returns MethodMetadata with description, method (package.function), and version
26
- */
27
- function getMethodMetadata(method) {
28
- const methodInfo = METHOD_INFO[method];
29
- if (!methodInfo) {
30
- return undefined;
31
- }
32
- // TODO: Determine package version dynamically if possible,
33
- // For now use a placeholder
34
- const version = "unknown";
35
- return {
36
- description: methodInfo.description,
37
- method: methodInfo.method,
38
- version,
39
- };
40
- }
@@ -1,6 +0,0 @@
1
- import type { Metadata } from "../types/zarr_metadata.js";
2
- export declare function validateMetadata(metadata: unknown): Metadata;
3
- export declare function validateColor(color: string): void;
4
- export declare function isValidDimension(dim: string): boolean;
5
- export declare function isValidUnit(unit: string): boolean;
6
- //# sourceMappingURL=validation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAG1D,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,CAQ5D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAyDjD"}
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateMetadata = validateMetadata;
4
- exports.validateColor = validateColor;
5
- exports.isValidDimension = isValidDimension;
6
- exports.isValidUnit = isValidUnit;
7
- const zarr_metadata_js_1 = require("../schemas/zarr_metadata.js");
8
- function validateMetadata(metadata) {
9
- const result = zarr_metadata_js_1.MetadataSchema.safeParse(metadata);
10
- if (!result.success) {
11
- throw new Error(`Invalid metadata: ${result.error.message}`);
12
- }
13
- return result.data;
14
- }
15
- function validateColor(color) {
16
- if (!/^[0-9A-Fa-f]{6}$/.test(color)) {
17
- throw new Error(`Invalid color '${color}'. Must be 6 hex digits.`);
18
- }
19
- }
20
- function isValidDimension(dim) {
21
- return ["c", "x", "y", "z", "t"].includes(dim);
22
- }
23
- function isValidUnit(unit) {
24
- const timeUnits = [
25
- "attosecond",
26
- "centisecond",
27
- "day",
28
- "decisecond",
29
- "exasecond",
30
- "femtosecond",
31
- "gigasecond",
32
- "hectosecond",
33
- "hour",
34
- "kilosecond",
35
- "megasecond",
36
- "microsecond",
37
- "millisecond",
38
- "minute",
39
- "nanosecond",
40
- "petasecond",
41
- "picosecond",
42
- "second",
43
- "terasecond",
44
- "yoctosecond",
45
- "yottasecond",
46
- "zeptosecond",
47
- "zettasecond",
48
- ];
49
- const spaceUnits = [
50
- "angstrom",
51
- "attometer",
52
- "centimeter",
53
- "decimeter",
54
- "exameter",
55
- "femtometer",
56
- "foot",
57
- "gigameter",
58
- "hectometer",
59
- "inch",
60
- "kilometer",
61
- "megameter",
62
- "meter",
63
- "micrometer",
64
- "mile",
65
- "millimeter",
66
- "nanometer",
67
- "parsec",
68
- "petameter",
69
- "picometer",
70
- "terameter",
71
- "yard",
72
- "yoctometer",
73
- "yottameter",
74
- "zeptometer",
75
- "zettameter",
76
- ];
77
- return timeUnits.includes(unit) || spaceUnits.includes(unit);
78
- }
File without changes