@vitessce/vit-s 3.6.8 → 3.6.10

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/dist/index.js CHANGED
@@ -32237,7 +32237,7 @@ const AUTO_INDEPENDENT_COORDINATION_TYPES = [
32237
32237
  CoordinationType$1.HIERARCHY_LEVELS
32238
32238
  ]
32239
32239
  });
32240
- const version = "3.6.8";
32240
+ const version = "3.6.10";
32241
32241
  const META_VERSION = {
32242
32242
  version
32243
32243
  };
@@ -41749,6 +41749,7 @@ function createLoaders(datasets, configDescription, fileTypes, coordinationTypes
41749
41749
  const defaultCoordinationValues = Object.fromEntries(
41750
41750
  coordinationTypes.map((ct) => [ct.name, ct.defaultValue])
41751
41751
  );
41752
+ const dataSourceClasses = Array.from(new Set(fileTypes.map((ft) => ft.dataSourceClass)));
41752
41753
  datasets.forEach((dataset) => {
41753
41754
  const datasetLoaders = {
41754
41755
  name: dataset.name,
@@ -41773,8 +41774,8 @@ function createLoaders(datasets, configDescription, fileTypes, coordinationTypes
41773
41774
  );
41774
41775
  const [DataSourceClass, LoaderClass] = getSourceAndLoaderFromFileType(fileType, fileTypes);
41775
41776
  const fileId = url || JSON.stringify(options);
41776
- const dataSourceName = DataSourceClass.prototype.constructor.name;
41777
- const dataSourceKey = [fileId, dataSourceName];
41777
+ const dataSourceIndex = dataSourceClasses.indexOf(DataSourceClass);
41778
+ const dataSourceKey = [fileId, dataSourceIndex];
41778
41779
  if (!dataSources.has(dataSourceKey)) {
41779
41780
  dataSources.set(dataSourceKey, new DataSourceClass({
41780
41781
  url,
@@ -1 +1 @@
1
- {"version":3,"file":"vitessce-grid-utils.d.ts","sourceRoot":"","sources":["../src/vitessce-grid-utils.js"],"names":[],"mappings":"AAyCA,gHA6CC;AA4BD;;;;;;;;;;GAUG;AACH,wCATW,MAAM,EAAE,qBACR,MAAM,aAEN,cAAc,EAAE,qBAChB,sBAAsB,EAAE,UACxB,MAAM,GACJ,MAAM,CA8DlB"}
1
+ {"version":3,"file":"vitessce-grid-utils.d.ts","sourceRoot":"","sources":["../src/vitessce-grid-utils.js"],"names":[],"mappings":"AAyCA,gHA6CC;AA4BD;;;;;;;;;;GAUG;AACH,wCATW,MAAM,EAAE,qBACR,MAAM,aAEN,cAAc,EAAE,qBAChB,sBAAsB,EAAE,UACxB,MAAM,GACJ,MAAM,CAmElB"}
@@ -110,6 +110,10 @@ export function createLoaders(datasets, configDescription, fileTypes, coordinati
110
110
  const result = {};
111
111
  const dataSources = new InternMap([], JSON.stringify);
112
112
  const defaultCoordinationValues = Object.fromEntries(coordinationTypes.map(ct => ([ct.name, ct.defaultValue])));
113
+ // Create an array of unique data source classes.
114
+ // This is used to get a unique index for each data source class,
115
+ // which is used below to construct `dataSourceKey`s.
116
+ const dataSourceClasses = Array.from(new Set(fileTypes.map(ft => ft.dataSourceClass)));
113
117
  datasets.forEach((dataset) => {
114
118
  const datasetLoaders = {
115
119
  name: dataset.name,
@@ -124,10 +128,11 @@ export function createLoaders(datasets, configDescription, fileTypes, coordinati
124
128
  // Create _one_ DataSourceClass instance per (URL, DataSource class name) pair.
125
129
  // Derived loaders share this object.
126
130
  const fileId = url || JSON.stringify(options);
127
- // The class name might be minified but that should not matter;
128
- // we just need a string that is unique to the class for the key.
129
- const dataSourceName = DataSourceClass.prototype.constructor.name;
130
- const dataSourceKey = [fileId, dataSourceName];
131
+ // The DataSourceClass class name might be minified, so
132
+ // DataSourceClass.prototype.constructor.name
133
+ // will not work, as it can result in conflicting strings.
134
+ const dataSourceIndex = dataSourceClasses.indexOf(DataSourceClass);
135
+ const dataSourceKey = [fileId, dataSourceIndex];
131
136
  if (!dataSources.has(dataSourceKey)) {
132
137
  dataSources.set(dataSourceKey, new DataSourceClass({
133
138
  url,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vitessce/vit-s",
3
- "version": "3.6.8",
3
+ "version": "3.6.10",
4
4
  "author": "HIDIVE Lab at HMS",
5
5
  "homepage": "http://vitessce.io",
6
6
  "repository": {
@@ -28,16 +28,16 @@
28
28
  "zustand": "^5.0.4",
29
29
  "react-aria": "^3.28.0",
30
30
  "react-error-boundary": "^5.0.0",
31
- "@vitessce/styles": "3.6.8",
32
- "@vitessce/abstract": "3.6.8",
33
- "@vitessce/constants-internal": "3.6.8",
34
- "@vitessce/plugins": "3.6.8",
35
- "@vitessce/schemas": "3.6.8",
36
- "@vitessce/error": "3.6.8",
37
- "@vitessce/utils": "3.6.8",
38
- "@vitessce/sets-utils": "3.6.8",
39
- "@vitessce/config": "3.6.8",
40
- "@vitessce/globals": "3.6.8"
31
+ "@vitessce/styles": "3.6.10",
32
+ "@vitessce/abstract": "3.6.10",
33
+ "@vitessce/error": "3.6.10",
34
+ "@vitessce/constants-internal": "3.6.10",
35
+ "@vitessce/plugins": "3.6.10",
36
+ "@vitessce/schemas": "3.6.10",
37
+ "@vitessce/utils": "3.6.10",
38
+ "@vitessce/sets-utils": "3.6.10",
39
+ "@vitessce/config": "3.6.10",
40
+ "@vitessce/globals": "3.6.10"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@testing-library/jest-dom": "^6.6.3",
@@ -46,7 +46,7 @@
46
46
  "react-dom": "^18.0.0",
47
47
  "vite": "^6.3.5",
48
48
  "vitest": "^3.1.4",
49
- "@vitessce/types": "3.6.8"
49
+ "@vitessce/types": "3.6.10"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -129,6 +129,10 @@ export function createLoaders(datasets, configDescription, fileTypes, coordinati
129
129
  const defaultCoordinationValues = Object.fromEntries(
130
130
  coordinationTypes.map(ct => ([ct.name, ct.defaultValue])),
131
131
  );
132
+ // Create an array of unique data source classes.
133
+ // This is used to get a unique index for each data source class,
134
+ // which is used below to construct `dataSourceKey`s.
135
+ const dataSourceClasses = Array.from(new Set(fileTypes.map(ft => ft.dataSourceClass)));
132
136
  datasets.forEach((dataset) => {
133
137
  const datasetLoaders = {
134
138
  name: dataset.name,
@@ -155,10 +159,11 @@ export function createLoaders(datasets, configDescription, fileTypes, coordinati
155
159
  // Create _one_ DataSourceClass instance per (URL, DataSource class name) pair.
156
160
  // Derived loaders share this object.
157
161
  const fileId = url || JSON.stringify(options);
158
- // The class name might be minified but that should not matter;
159
- // we just need a string that is unique to the class for the key.
160
- const dataSourceName = DataSourceClass.prototype.constructor.name;
161
- const dataSourceKey = [fileId, dataSourceName];
162
+ // The DataSourceClass class name might be minified, so
163
+ // DataSourceClass.prototype.constructor.name
164
+ // will not work, as it can result in conflicting strings.
165
+ const dataSourceIndex = dataSourceClasses.indexOf(DataSourceClass);
166
+ const dataSourceKey = [fileId, dataSourceIndex];
162
167
  if (!dataSources.has(dataSourceKey)) {
163
168
  dataSources.set(dataSourceKey, new DataSourceClass({
164
169
  url,