@genome-spy/core 0.56.1 → 0.58.0

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 (177) hide show
  1. package/README.md +0 -1
  2. package/dist/bundle/_commonjsHelpers-DjF3Plf2.js +26 -0
  3. package/dist/bundle/index-BftNdA0O.js +27 -0
  4. package/dist/bundle/index-C08YCM2T.js +539 -0
  5. package/dist/bundle/index-CCJIjehY.js +218 -0
  6. package/dist/bundle/index-CalimFw3.js +2131 -0
  7. package/dist/bundle/index-DS2hvLgl.js +3425 -0
  8. package/dist/bundle/index-DTcHjAHp.js +505 -0
  9. package/dist/bundle/index-Dec7VcMU.js +626 -0
  10. package/dist/bundle/index-DnIkxb0L.js +1025 -0
  11. package/dist/bundle/index-DwLfOHEk.js +1319 -0
  12. package/dist/bundle/{index-HGQZ77IK.js → index-Ww3TAo6_.js} +7 -7
  13. package/dist/bundle/{index-CjesiOz_.js → index-vgGDWUPz.js} +24 -24
  14. package/dist/bundle/index.es.js +4185 -5309
  15. package/dist/bundle/index.js +155 -145
  16. package/dist/bundle/long-BviWyoZx.js +2387 -0
  17. package/dist/bundle/remoteFile-BuaqFGWk.js +94 -0
  18. package/dist/schema.json +66 -0
  19. package/dist/src/data/collector.d.ts.map +1 -1
  20. package/dist/src/data/dataFlow.d.ts.map +1 -1
  21. package/dist/src/data/facetNode.d.ts.map +1 -1
  22. package/dist/src/data/flowNode.d.ts.map +1 -1
  23. package/dist/src/data/flowNode.js +2 -2
  24. package/dist/src/data/sources/dataSourceFactory.d.ts +2 -1
  25. package/dist/src/data/sources/dataSourceFactory.d.ts.map +1 -1
  26. package/dist/src/data/sources/dataSourceFactory.js +11 -0
  27. package/dist/src/data/sources/dataUtils.d.ts +3 -3
  28. package/dist/src/data/sources/dataUtils.d.ts.map +1 -1
  29. package/dist/src/data/sources/inlineSource.d.ts.map +1 -1
  30. package/dist/src/data/sources/lazy/bamSource.js +7 -7
  31. package/dist/src/data/sources/lazy/bigBedSource.d.ts.map +1 -1
  32. package/dist/src/data/sources/lazy/gff3Source.d.ts +3 -5
  33. package/dist/src/data/sources/lazy/gff3Source.d.ts.map +1 -1
  34. package/dist/src/data/sources/lazy/gff3Source.js +7 -13
  35. package/dist/src/data/sources/lazy/singleAxisWindowedSource.d.ts.map +1 -1
  36. package/dist/src/data/sources/lazy/tabixSource.d.ts +5 -0
  37. package/dist/src/data/sources/lazy/tabixSource.d.ts.map +1 -1
  38. package/dist/src/data/sources/lazy/tabixSource.js +20 -7
  39. package/dist/src/data/sources/lazy/vcfSource.d.ts +9 -0
  40. package/dist/src/data/sources/lazy/vcfSource.d.ts.map +1 -0
  41. package/dist/src/data/sources/lazy/vcfSource.js +38 -0
  42. package/dist/src/data/sources/lazy/vcfTypes.d.ts +7 -0
  43. package/dist/src/data/sources/namedSource.d.ts.map +1 -1
  44. package/dist/src/data/sources/sequenceSource.d.ts.map +1 -1
  45. package/dist/src/data/sources/urlSource.d.ts.map +1 -1
  46. package/dist/src/data/transforms/aggregate.d.ts.map +1 -1
  47. package/dist/src/data/transforms/aggregateOps.d.ts.map +1 -1
  48. package/dist/src/data/transforms/coverage.d.ts +0 -1
  49. package/dist/src/data/transforms/coverage.d.ts.map +1 -1
  50. package/dist/src/data/transforms/filter.d.ts.map +1 -1
  51. package/dist/src/data/transforms/filterScoredLabels.d.ts.map +1 -1
  52. package/dist/src/data/transforms/linearizeGenomicCoordinate.d.ts.map +1 -1
  53. package/dist/src/data/transforms/linearizeGenomicCoordinate.js +9 -2
  54. package/dist/src/data/transforms/sample.d.ts.map +1 -1
  55. package/dist/src/data/transforms/transformFactory.d.ts.map +1 -1
  56. package/dist/src/encoder/accessor.js +2 -2
  57. package/dist/src/encoder/encoder.d.ts +4 -4
  58. package/dist/src/encoder/encoder.d.ts.map +1 -1
  59. package/dist/src/encoder/encoder.js +1 -0
  60. package/dist/src/fonts/bmFontManager.d.ts +1 -9
  61. package/dist/src/fonts/bmFontManager.d.ts.map +1 -1
  62. package/dist/src/genome/genome.d.ts +3 -3
  63. package/dist/src/genome/genome.d.ts.map +1 -1
  64. package/dist/src/genome/genomeStore.d.ts.map +1 -1
  65. package/dist/src/genome/scaleLocus.d.ts.map +1 -1
  66. package/dist/src/genomeSpy.d.ts.map +1 -1
  67. package/dist/src/genomeSpy.js +27 -2
  68. package/dist/src/gl/arrayBuilder.d.ts.map +1 -1
  69. package/dist/src/gl/colorUtils.js +11 -4
  70. package/dist/src/gl/dataToVertices.d.ts.map +1 -1
  71. package/dist/src/gl/dataToVertices.js +7 -7
  72. package/dist/src/gl/glslScaleGenerator.d.ts +1 -2
  73. package/dist/src/gl/glslScaleGenerator.d.ts.map +1 -1
  74. package/dist/src/gl/glslScaleGenerator.js +14 -14
  75. package/dist/src/gl/webGLHelper.d.ts.map +1 -1
  76. package/dist/src/index.d.ts +1 -2
  77. package/dist/src/index.d.ts.map +1 -1
  78. package/dist/src/index.html +9 -9
  79. package/dist/src/marks/mark.d.ts +0 -1
  80. package/dist/src/marks/mark.d.ts.map +1 -1
  81. package/dist/src/marks/mark.js +2 -2
  82. package/dist/src/marks/markUtils.d.ts.map +1 -1
  83. package/dist/src/marks/rule.js +1 -1
  84. package/dist/src/marks/text.js +2 -2
  85. package/dist/src/scale/scale.d.ts +1 -1
  86. package/dist/src/scale/scale.d.ts.map +1 -1
  87. package/dist/src/scale/scale.js +16 -16
  88. package/dist/src/scale/ticks.d.ts +4 -4
  89. package/dist/src/scale/ticks.d.ts.map +1 -1
  90. package/dist/src/scale/ticks.js +4 -4
  91. package/dist/src/selection/selection.d.ts.map +1 -1
  92. package/dist/src/spec/axis.d.ts +1 -1
  93. package/dist/src/spec/channel.d.ts +1 -1
  94. package/dist/src/spec/data.d.ts +14 -1
  95. package/dist/src/spec/parameter.d.ts +2 -2
  96. package/dist/src/styles/genome-spy.css.d.ts +1 -1
  97. package/dist/src/styles/genome-spy.css.js +1 -1
  98. package/dist/src/styles/genome-spy.scss +4 -2
  99. package/dist/src/tooltip/dataTooltipHandler.d.ts +1 -1
  100. package/dist/src/tooltip/dataTooltipHandler.d.ts.map +1 -1
  101. package/dist/src/tooltip/dataTooltipHandler.js +32 -12
  102. package/dist/src/tooltip/refseqGeneTooltipHandler.d.ts +1 -1
  103. package/dist/src/tooltip/refseqGeneTooltipHandler.d.ts.map +1 -1
  104. package/dist/src/types/viewContext.d.ts +8 -0
  105. package/dist/src/utils/animator.d.ts.map +1 -1
  106. package/dist/src/utils/arrayUtils.d.ts +1 -1
  107. package/dist/src/utils/arrayUtils.d.ts.map +1 -1
  108. package/dist/src/utils/binnedIndex.d.ts.map +1 -1
  109. package/dist/src/utils/cloner.d.ts.map +1 -1
  110. package/dist/src/utils/concatIterables.d.ts.map +1 -1
  111. package/dist/src/utils/debounce.d.ts.map +1 -1
  112. package/dist/src/utils/domainArray.d.ts.map +1 -1
  113. package/dist/src/utils/expression.d.ts.map +1 -1
  114. package/dist/src/utils/expression.js +7 -0
  115. package/dist/src/utils/field.d.ts.map +1 -1
  116. package/dist/src/utils/field.js +32 -1
  117. package/dist/src/utils/indexer.d.ts.map +1 -1
  118. package/dist/src/utils/inertia.d.ts.map +1 -1
  119. package/dist/src/utils/inputBinding.d.ts +1 -1
  120. package/dist/src/utils/inputBinding.d.ts.map +1 -1
  121. package/dist/src/utils/inputBinding.js +18 -16
  122. package/dist/src/utils/iterateNestedMaps.d.ts +1 -1
  123. package/dist/src/utils/iterateNestedMaps.d.ts.map +1 -1
  124. package/dist/src/utils/kWayMerge.d.ts.map +1 -1
  125. package/dist/src/utils/mergeObjects.d.ts.map +1 -1
  126. package/dist/src/utils/propertyCacher.d.ts.map +1 -1
  127. package/dist/src/utils/propertyCoalescer.d.ts.map +1 -1
  128. package/dist/src/utils/ringBuffer.d.ts.map +1 -1
  129. package/dist/src/utils/setOperations.d.ts.map +1 -1
  130. package/dist/src/utils/throttle.d.ts.map +1 -1
  131. package/dist/src/utils/throttle.js +9 -6
  132. package/dist/src/utils/topK.d.ts.map +1 -1
  133. package/dist/src/utils/transition.d.ts.map +1 -1
  134. package/dist/src/utils/trees.d.ts.map +1 -1
  135. package/dist/src/utils/ui/tooltip.d.ts.map +1 -1
  136. package/dist/src/utils/url.js +2 -2
  137. package/dist/src/utils/variableTools.d.ts.map +1 -1
  138. package/dist/src/view/axisResolution.d.ts.map +1 -1
  139. package/dist/src/view/axisView.d.ts.map +1 -1
  140. package/dist/src/view/concatView.js +4 -4
  141. package/dist/src/view/containerView.d.ts.map +1 -1
  142. package/dist/src/view/facetView.d.ts +2 -2
  143. package/dist/src/view/facetView.d.ts.map +1 -1
  144. package/dist/src/view/flowBuilder.d.ts.map +1 -1
  145. package/dist/src/view/gridView.d.ts +1 -1
  146. package/dist/src/view/gridView.d.ts.map +1 -1
  147. package/dist/src/view/gridView.js +5 -5
  148. package/dist/src/view/layout/flexLayout.d.ts.map +1 -1
  149. package/dist/src/view/layout/rectangle.d.ts.map +1 -1
  150. package/dist/src/view/layout/rectangle.js +2 -2
  151. package/dist/src/view/paramMediator.d.ts +3 -3
  152. package/dist/src/view/paramMediator.d.ts.map +1 -1
  153. package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts.map +1 -1
  154. package/dist/src/view/renderingContext/compositeViewRenderingContext.d.ts.map +1 -1
  155. package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts.map +1 -1
  156. package/dist/src/view/scaleResolution.d.ts.map +1 -1
  157. package/dist/src/view/scaleResolution.js +29 -9
  158. package/dist/src/view/testUtils.d.ts +6 -2
  159. package/dist/src/view/testUtils.d.ts.map +1 -1
  160. package/dist/src/view/unitView.d.ts.map +1 -1
  161. package/dist/src/view/unitView.js +14 -0
  162. package/dist/src/view/view.d.ts.map +1 -1
  163. package/dist/src/view/view.js +3 -3
  164. package/dist/src/view/viewFactory.d.ts.map +1 -1
  165. package/dist/src/view/viewFactory.js +5 -5
  166. package/dist/src/view/viewUtils.d.ts.map +1 -1
  167. package/package.json +9 -8
  168. package/dist/bundle/_commonjsHelpers-DSebQMb9.js +0 -28
  169. package/dist/bundle/index-B6haPltu.js +0 -1042
  170. package/dist/bundle/index-BhtH2nrr.js +0 -513
  171. package/dist/bundle/index-BpoXW6_f.js +0 -1370
  172. package/dist/bundle/index-COovE1Oo.js +0 -3997
  173. package/dist/bundle/index-WACuLhO6.js +0 -2136
  174. package/dist/bundle/index-_ftu0t0z.js +0 -500
  175. package/dist/bundle/index-nCZhu2o-.js +0 -613
  176. package/dist/bundle/long-BXK3UEks.js +0 -2375
  177. package/dist/bundle/remoteFile-DuIsnepi.js +0 -90
@@ -93,8 +93,8 @@ export function tickValues(scale, count) {
93
93
  return scale.bins
94
94
  ? validTicks(scale, binValues(scale.bins, count))
95
95
  : scale.ticks
96
- ? scale.ticks(count)
97
- : scale.domain();
96
+ ? scale.ticks(count)
97
+ : scale.domain();
98
98
  }
99
99
 
100
100
  /**
@@ -132,8 +132,8 @@ export function tickFormat(scale, count, specifier) {
132
132
  var format = scale.tickFormat
133
133
  ? scale.tickFormat(count, specifier)
134
134
  : specifier
135
- ? numberFormat(specifier)
136
- : String;
135
+ ? numberFormat(specifier)
136
+ : String;
137
137
 
138
138
  if (isLogarithmic(scale.type)) {
139
139
  var logfmt = variablePrecision(specifier);
@@ -1 +1 @@
1
- {"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../src/selection/selection.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,kDAHW,OAAO,qBAAqB,EAAE,KAAK,GACjC,OAAO,4BAA4B,EAAE,oBAAoB,CAQrE;AAED;;;GAGG;AACH,iDAHW,OAAO,qBAAqB,EAAE,KAAK,EAAE,GACnC,OAAO,4BAA4B,EAAE,mBAAmB,CAQpE;AAED;;;;;;;GAOG;AACH,qDAJW,OAAO,4BAA4B,EAAE,mBAAmB,2BACxD,QAAQ,OAAO,KAAK,GAAG,QAAQ,GAAG,QAAQ,EAAE,SAAS,OAAO,qBAAqB,EAAE,KAAK,CAAC,CAAC,CAAC,GACzF,OAAO,4BAA4B,EAAE,mBAAmB,CA2BpE;AAED;;;;GAIG;AACH,yCAJW,OAAO,4BAA4B,EAAE,SAAS,SAC9C,OAAO,qBAAqB,EAAE,KAAK,UACnC,OAAO,WAkBjB;AAED;;GAEG;AACH,oDAFW;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAC,UAM1C;AAED;;;GAGG;AACH,4CAHW,OAAO,4BAA4B,EAAE,SAAS,oEAKxD;AAED;;;GAGG;AACH,kDAHW,OAAO,4BAA4B,EAAE,SAAS,0EAKxD;AAED;;;GAGG;AACH,iDAHW,OAAO,4BAA4B,EAAE,SAAS,yEAKxD;AAED;;;GAGG;AACH,gDAHW,OAAO,4BAA4B,EAAE,SAAS,wEAKxD;AAED;;;GAGG;AACH,gDAHW,OAAO,sBAAsB,EAAE,qBAAqB,GAClD,OAAO,sBAAsB,EAAE,eAAe,CAiB1D;AAED;;;GAGG;AACH,+CAHW,OAAO,sBAAsB,EAAE,eAAe,iEAKxD"}
1
+ {"version":3,"file":"selection.d.ts","sourceRoot":"","sources":["../../../src/selection/selection.js"],"names":[],"mappings":"AAGA;;;GAGG;AACH,kDAHW,OAAO,qBAAqB,EAAE,KAAK,GACjC,OAAO,4BAA4B,EAAE,oBAAoB,CAQrE;AAED;;;GAGG;AACH,iDAHW,OAAO,qBAAqB,EAAE,KAAK,EAAE,GACnC,OAAO,4BAA4B,EAAE,mBAAmB,CAQpE;AAED;;;;;;;GAOG;AACH,qDAJW,OAAO,4BAA4B,EAAE,mBAAmB,2BACxD,OAAO,CAAC,MAAM,CAAC,KAAK,GAAG,QAAQ,GAAG,QAAQ,EAAE,QAAQ,CAAC,OAAO,qBAAqB,EAAE,KAAK,CAAC,CAAC,CAAC,GACzF,OAAO,4BAA4B,EAAE,mBAAmB,CA2BpE;AAED;;;;GAIG;AACH,yCAJW,OAAO,4BAA4B,EAAE,SAAS,SAC9C,OAAO,qBAAqB,EAAE,KAAK,UACnC,OAAO,WAkBjB;AAED;;GAEG;AACH,oDAFW;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAC,UAM1C;AAED;;;GAGG;AACH,4CAHW,OAAO,4BAA4B,EAAE,SAAS,GAC5C,SAAS,IAAI,OAAO,4BAA4B,EAAE,cAAc,CAI5E;AAED;;;GAGG;AACH,kDAHW,OAAO,4BAA4B,EAAE,SAAS,GAC5C,SAAS,IAAI,OAAO,4BAA4B,EAAE,oBAAoB,CAIlF;AAED;;;GAGG;AACH,iDAHW,OAAO,4BAA4B,EAAE,SAAS,GAC5C,SAAS,IAAI,OAAO,4BAA4B,EAAE,mBAAmB,CAIjF;AAED;;;GAGG;AACH,gDAHW,OAAO,4BAA4B,EAAE,SAAS,GAC5C,SAAS,IAAI,OAAO,4BAA4B,EAAE,kBAAkB,CAIhF;AAED;;;GAGG;AACH,gDAHW,OAAO,sBAAsB,EAAE,qBAAqB,GAClD,OAAO,sBAAsB,EAAE,eAAe,CAiB1D;AAED;;;GAGG;AACH,+CAHW,OAAO,sBAAsB,EAAE,eAAe,GAC5C,MAAM,IAAI,OAAO,sBAAsB,EAAE,oBAAoB,CAIzE"}
@@ -139,7 +139,7 @@ export interface BaseAxis<
139
139
  S = string,
140
140
  C = string,
141
141
  FW = string,
142
- FS = string
142
+ FS = string,
143
143
  > {
144
144
  /**
145
145
  * The minimum extent in pixels that axis ticks and labels should use. This determines a minimum offset value for axis titles.
@@ -258,7 +258,7 @@ export interface ConditionValueDefMixins<V extends Value = Value> {
258
258
  */
259
259
  export type FieldOrDatumDefWithCondition<
260
260
  F extends FieldDef<any> | DatumDef<any> = FieldDef<any> | DatumDef<any>,
261
- V extends Value = Value
261
+ V extends Value = Value,
262
262
  > = F & ConditionValueDefMixins<V | ExprRef>;
263
263
 
264
264
  /**
@@ -201,7 +201,8 @@ export type LazyDataParams =
201
201
  | BigWigData
202
202
  | BigBedData
203
203
  | BamData
204
- | Gff3Data;
204
+ | Gff3Data
205
+ | VcfData;
205
206
 
206
207
  export interface DebouncedData {
207
208
  /**
@@ -372,6 +373,14 @@ export interface TabixData extends DebouncedData {
372
373
  */
373
374
  indexUrl?: string;
374
375
 
376
+ /**
377
+ * Add a `chr` (boolean) or custom (string) prefix to the chromosome names
378
+ * in the Tabix file.
379
+ *
380
+ * __Default value:__ `false`
381
+ */
382
+ addChrPrefix?: boolean | string;
383
+
375
384
  /**
376
385
  * Size of each chunk when fetching the Tabix file. Data is only fetched
377
386
  * when the length of the visible domain smaller than the window size.
@@ -384,3 +393,7 @@ export interface TabixData extends DebouncedData {
384
393
  export interface Gff3Data extends TabixData {
385
394
  type: "gff3";
386
395
  }
396
+
397
+ export interface VcfData extends TabixData {
398
+ type: "vcf";
399
+ }
@@ -235,8 +235,8 @@ export interface SelectionParameter<T extends SelectionType = SelectionType>
235
235
  | (T extends "point"
236
236
  ? PointSelectionConfig
237
237
  : T extends "interval"
238
- ? IntervalSelectionConfig
239
- : never);
238
+ ? IntervalSelectionConfig
239
+ : never);
240
240
 
241
241
  /*
242
242
  * Initialize the selection with a mapping between [projected channels or field names](https://vega.github.io/vega-lite/docs/selection.html#project) and initial values.
@@ -1,3 +1,3 @@
1
1
  export default css;
2
- declare const css: "\n.genome-spy {\n font-family: system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n position: relative;\n display: flex;\n flex-direction: column;\n}\n.genome-spy .canvas-wrapper {\n position: relative;\n flex-grow: 1;\n overflow: hidden;\n}\n.genome-spy canvas {\n display: block;\n transform: scale(1, 1);\n opacity: 1;\n transition: transform 0.6s, opacity 0.6s;\n}\n.genome-spy .loading-message {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.genome-spy .loading-message .message {\n color: #666;\n opacity: 0;\n transition: opacity 0.7s;\n}\n.genome-spy .loading > canvas {\n transform: scale(0.95, 0.95);\n opacity: 0;\n}\n.genome-spy .loading > .loading-message .message {\n opacity: 1;\n}\n.genome-spy .loading > .loading-message .message .ellipsis {\n animation: blinker 1s linear infinite;\n}\n@keyframes blinker {\n 50% {\n opacity: 0;\n }\n}\n.genome-spy .loading-indicators {\n position: absolute;\n inset: 0;\n user-select: none;\n pointer-events: none;\n}\n.genome-spy .loading-indicators div {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.genome-spy .loading-indicators div > div {\n font-size: 11px;\n transition: opacity 0.2s;\n background: white;\n padding: 2px 5px;\n display: flex;\n border-radius: 3px;\n gap: 0.5em;\n opacity: 0;\n}\n.genome-spy .loading-indicators div > div.loading {\n opacity: 0.5;\n}\n.genome-spy .loading-indicators div > div.error {\n opacity: 0.8;\n color: firebrick;\n}\n.genome-spy .loading-indicators div > div > * {\n display: block;\n}\n.genome-spy .loading-indicators div > div img {\n width: 1.5em;\n height: 1.5em;\n}\n.genome-spy .tooltip {\n position: absolute;\n max-width: 450px;\n overflow: hidden;\n background: #f6f6f6;\n padding: 10px;\n font-size: 13px;\n box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.21);\n pointer-events: none;\n z-index: 100;\n}\n.genome-spy .tooltip > :last-child {\n margin-bottom: 0;\n}\n.genome-spy .tooltip > .title {\n padding-bottom: 5px;\n margin-bottom: 5px;\n border-bottom: 1px dashed #b6b6b6;\n}\n.genome-spy .tooltip .summary {\n font-size: 12px;\n}\n.genome-spy .tooltip table {\n border-collapse: collapse;\n}\n.genome-spy .tooltip table:first-child {\n margin-top: 0;\n}\n.genome-spy .tooltip table th,\n.genome-spy .tooltip table td {\n padding: 2px 0.4em;\n vertical-align: top;\n}\n.genome-spy .tooltip table th:first-child,\n.genome-spy .tooltip table td:first-child {\n padding-left: 0;\n}\n.genome-spy .tooltip table th {\n text-align: left;\n font-weight: bold;\n}\n.genome-spy .tooltip .color-legend {\n display: inline-block;\n width: 0.8em;\n height: 0.8em;\n margin-left: 0.4em;\n box-shadow: 0px 0px 3px 1px white;\n}\n.genome-spy .tooltip .attributes .hovered {\n background-color: #e0e0e0;\n}\n.genome-spy .tooltip .na {\n color: #aaa;\n font-style: italic;\n font-size: 80%;\n}\n.genome-spy .gene-track-tooltip .summary {\n font-size: 90%;\n}\n.genome-spy .message-box {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n}\n.genome-spy .message-box > div {\n border: 1px solid red;\n padding: 10px;\n background: #fff0f0;\n}\n\n.gs-input-binding {\n display: grid;\n grid-template-columns: max-content max-content;\n column-gap: 1em;\n row-gap: 0.3em;\n justify-items: start;\n}\n.gs-input-binding > select,\n.gs-input-binding > input:not([type=checkbox]) {\n width: 100%;\n}\n.gs-input-binding input[type=range] + span {\n display: inline-block;\n margin-left: 0.3em;\n min-width: 2.2em;\n font-variant-numeric: tabular-nums;\n}\n.gs-input-binding input[type=range],\n.gs-input-binding input[type=radio] {\n vertical-align: text-bottom;\n}\n.gs-input-binding .radio-group {\n display: flex;\n align-items: center;\n}\n.gs-input-binding .description {\n max-width: 26em;\n grid-column: 1/-1;\n color: #777;\n font-size: 90%;\n margin-top: -0.5em;\n}\n\n.gs-input-bindings {\n flex-basis: content;\n font-size: 14px;\n padding: 10px;\n}\n";
2
+ declare const css: "\n.genome-spy {\n font-family: system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n position: relative;\n display: flex;\n flex-direction: column;\n}\n.genome-spy .canvas-wrapper {\n position: relative;\n flex-grow: 1;\n overflow: hidden;\n}\n.genome-spy canvas {\n display: block;\n transform: scale(1, 1);\n opacity: 1;\n transition: transform 0.6s, opacity 0.6s;\n}\n.genome-spy .loading-message {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.genome-spy .loading-message .message {\n color: #666;\n opacity: 0;\n transition: opacity 0.7s;\n}\n.genome-spy .loading > canvas {\n transform: scale(0.95, 0.95);\n opacity: 0;\n}\n.genome-spy .loading > .loading-message .message {\n opacity: 1;\n}\n.genome-spy .loading > .loading-message .message .ellipsis {\n animation: blinker 1s linear infinite;\n}\n@keyframes blinker {\n 50% {\n opacity: 0;\n }\n}\n.genome-spy .loading-indicators {\n position: absolute;\n inset: 0;\n user-select: none;\n pointer-events: none;\n}\n.genome-spy .loading-indicators div {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.genome-spy .loading-indicators div > div {\n font-size: 11px;\n transition: opacity 0.2s;\n background: white;\n padding: 2px 5px;\n display: flex;\n border-radius: 3px;\n gap: 0.5em;\n opacity: 0;\n}\n.genome-spy .loading-indicators div > div.loading {\n opacity: 0.5;\n}\n.genome-spy .loading-indicators div > div.error {\n opacity: 0.8;\n color: firebrick;\n}\n.genome-spy .loading-indicators div > div > * {\n display: block;\n}\n.genome-spy .loading-indicators div > div img {\n width: 1.5em;\n height: 1.5em;\n}\n.genome-spy .tooltip {\n position: absolute;\n max-width: 450px;\n overflow: hidden;\n background: #f6f6f6;\n padding: 10px;\n font-size: 12px;\n box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.21);\n pointer-events: none;\n z-index: 100;\n}\n.genome-spy .tooltip > :last-child {\n margin-bottom: 0;\n}\n.genome-spy .tooltip > .title {\n padding-bottom: 5px;\n margin-bottom: 5px;\n border-bottom: 1px dashed #b6b6b6;\n}\n.genome-spy .tooltip .summary {\n font-size: 12px;\n}\n.genome-spy .tooltip table {\n border-collapse: collapse;\n}\n.genome-spy .tooltip table:first-child {\n margin-top: 0;\n}\n.genome-spy .tooltip table th,\n.genome-spy .tooltip table td {\n padding: 2px 0.4em;\n vertical-align: top;\n}\n.genome-spy .tooltip table th:first-child,\n.genome-spy .tooltip table td:first-child {\n padding-left: 0;\n}\n.genome-spy .tooltip table th {\n text-align: left;\n font-weight: bold;\n}\n.genome-spy .tooltip .color-legend {\n display: inline-block;\n width: 0.8em;\n height: 0.8em;\n margin-left: 0.4em;\n box-shadow: 0px 0px 3px 1px white;\n}\n.genome-spy .tooltip .attributes .hovered {\n background-color: #e0e0e0;\n}\n.genome-spy .tooltip .na {\n color: #aaa;\n font-style: italic;\n font-size: 80%;\n}\n.genome-spy .gene-track-tooltip .summary {\n font-size: 90%;\n}\n.genome-spy .message-box {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n}\n.genome-spy .message-box > div {\n border: 1px solid red;\n padding: 10px;\n background: #fff0f0;\n}\n\n.gs-input-binding {\n display: grid;\n grid-template-columns: max-content max-content;\n column-gap: 1em;\n row-gap: 0.3em;\n justify-items: start;\n}\n.gs-input-binding > select,\n.gs-input-binding > input:not([type=checkbox]) {\n width: 100%;\n}\n.gs-input-binding input[type=range] + span {\n display: inline-block;\n margin-left: 0.3em;\n min-width: 2.2em;\n font-variant-numeric: tabular-nums;\n}\n.gs-input-binding input[type=range],\n.gs-input-binding input[type=radio] {\n vertical-align: text-bottom;\n}\n.gs-input-binding .radio-group {\n display: flex;\n align-items: center;\n}\n.gs-input-binding .description {\n max-width: 26em;\n grid-column: 1/-1;\n color: #777;\n font-size: 90%;\n margin-top: -0.5em;\n}\n\n.gs-input-bindings {\n flex-basis: content;\n font-size: 14px;\n padding: 10px;\n}\n";
3
3
  //# sourceMappingURL=genome-spy.css.d.ts.map
@@ -85,7 +85,7 @@ const css = `
85
85
  overflow: hidden;
86
86
  background: #f6f6f6;
87
87
  padding: 10px;
88
- font-size: 13px;
88
+ font-size: 12px;
89
89
  box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.21);
90
90
  pointer-events: none;
91
91
  z-index: 100;
@@ -23,7 +23,9 @@ $font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif,
23
23
  display: block;
24
24
  transform: scale(1, 1);
25
25
  opacity: 1;
26
- transition: transform 0.6s, opacity 0.6s;
26
+ transition:
27
+ transform 0.6s,
28
+ opacity 0.6s;
27
29
  }
28
30
 
29
31
  .loading-message {
@@ -115,7 +117,7 @@ $font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif,
115
117
  $background-color: #f6f6f6;
116
118
  background: $background-color;
117
119
  padding: $basic-spacing;
118
- font-size: 13px;
120
+ font-size: 12px;
119
121
 
120
122
  box-shadow: 0px 3px 15px 0px rgba(0, 0, 0, 0.21);
121
123
 
@@ -1,2 +1,2 @@
1
- export default function dataTooltipHandler(datum: Record<string, any>, mark: import("../marks/mark.js").default<import("../spec/mark.js").MarkProps>, params?: Record<string, any>): Promise<string | HTMLElement | import("lit-html").TemplateResult>;
1
+ export default function dataTooltipHandler(datum: Record<string, any>, mark: import("../marks/mark.js").default, params?: Record<string, any>): Promise<string | import("lit-html").TemplateResult | HTMLElement>;
2
2
  //# sourceMappingURL=dataTooltipHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dataTooltipHandler.d.ts","sourceRoot":"","sources":["../../../src/tooltip/dataTooltipHandler.js"],"names":[],"mappings":"AAMoC,uPAMa"}
1
+ {"version":3,"file":"dataTooltipHandler.d.ts","sourceRoot":"","sources":["../../../src/tooltip/dataTooltipHandler.js"],"names":[],"mappings":""}
@@ -30,24 +30,44 @@ export default async function dataTooltipHandler(datum, mark, params) {
30
30
  return "";
31
31
  };
32
32
 
33
- const strippedEntries = Object.entries(datum).filter(
34
- ([key, _value]) => !key.startsWith("_")
35
- );
33
+ /**
34
+ *
35
+ * @param {[string, any][]} entries
36
+ * @param {string} [prefix]
37
+ * @returns {ReturnType<typeof html>[]}
38
+ */
39
+ const entriesToHtml = (entries, prefix) => {
40
+ const strippedEntries = entries.filter(
41
+ ([key, _value]) => !key.startsWith("_")
42
+ );
43
+
44
+ if (strippedEntries.length === 0) {
45
+ return;
46
+ }
47
+
48
+ return strippedEntries.map(([key, value]) =>
49
+ typeof value === "object" && !Array.isArray(value)
50
+ ? html`${entriesToHtml(
51
+ Object.entries(value),
52
+ (prefix ? prefix : "") + key + "."
53
+ )}`
54
+ : html`
55
+ <tr>
56
+ <th>${prefix}${key}</th>
57
+ <td>${formatObject(value)} ${legend(key, datum)}</td>
58
+ </tr>
59
+ `
60
+ );
61
+ };
36
62
 
37
- if (strippedEntries.length === 0) {
63
+ const tableContents = entriesToHtml(Object.entries(datum));
64
+ if (!tableContents) {
38
65
  return;
39
66
  }
40
67
 
41
68
  const table = html`
42
69
  <table class="attributes">
43
- ${strippedEntries.map(
44
- ([key, value]) => html`
45
- <tr>
46
- <th>${key}</th>
47
- <td>${formatObject(value)} ${legend(key, datum)}</td>
48
- </tr>
49
- `
50
- )}
70
+ ${tableContents}
51
71
  </table>
52
72
  `;
53
73
 
@@ -1,2 +1,2 @@
1
- export default function refseqGeneTooltipHandler(datum: Record<string, any>, mark: import("../marks/mark.js").default<import("../spec/mark.js").MarkProps>, params?: Record<string, any>): Promise<string | HTMLElement | import("lit-html").TemplateResult>;
1
+ export default function refseqGeneTooltipHandler(datum: Record<string, any>, mark: import("../marks/mark.js").default, params?: Record<string, any>): Promise<string | import("lit-html").TemplateResult | HTMLElement>;
2
2
  //# sourceMappingURL=refseqGeneTooltipHandler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"refseqGeneTooltipHandler.d.ts","sourceRoot":"","sources":["../../../src/tooltip/refseqGeneTooltipHandler.js"],"names":[],"mappings":"AAOC,6PAQW"}
1
+ {"version":3,"file":"refseqGeneTooltipHandler.d.ts","sourceRoot":"","sources":["../../../src/tooltip/refseqGeneTooltipHandler.js"],"names":[],"mappings":""}
@@ -82,6 +82,14 @@ export default interface ViewContext {
82
82
  detail?: string
83
83
  ) => void;
84
84
 
85
+ /**
86
+ * Highlights a view by adding a border around it. This is useful for debugging.
87
+ *
88
+ * @param view The view to highlight. Null to remove the highlight.
89
+ * @returns
90
+ */
91
+ highlightView?: (view: View | null) => void;
92
+
85
93
  /**
86
94
  * Returns true if the view is configured to be visible.
87
95
  * N.B. This does NOT consider ancestors' visibility.
@@ -1 +1 @@
1
- {"version":3,"file":"animator.d.ts","sourceRoot":"","sources":["../../../src/utils/animator.js"],"names":[],"mappings":"AAoFA;;;;;;;;;;;;;;GAcG;AACH,6EARW,OAAO,sBAAsB,EAAE,OAAO,0BACxB,IAAI,YAClB,MAAM,UACN,MAAM,oCAEY,IAAI;UAAY,MAAM,IAAI;EAkFtD;AAhLD;IACI;;;OAGG;IACH,mCAFoB,MAAM,KAAE,IAAI,EAS/B;IANG,wBAHgB,MAAM,KAAE,IAAI,CAGS;IACrC,0BAA6B;IAC7B,eAAkB;IAElB,wCAAwC;IACxC,aADW,QAAU,MAAM,KAAE,IAAI,CAAC,EAAE,CACf;IAGzB;;;;;;;;;OASG;IACH,mCAFoB,MAAM,KAAE,IAAI,QAM/B;IAED;;OAEG;IACH,kCAFoB,MAAM,KAAE,IAAI,QAO/B;IAED;;;;OAIG;IACH,sBAoBC;IAED;;;;;OAKG;IACH,oBAFW,OAAO,iBAAiB,EAAE,iBAAiB,gBAQrD;CACJ"}
1
+ {"version":3,"file":"animator.d.ts","sourceRoot":"","sources":["../../../src/utils/animator.js"],"names":[],"mappings":"AAoFA;;;;;;;;;;;;;;GAcG;AACH,iCAFsC,CAAC,SAAzB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAE,YAN1B,OAAO,sBAAsB,EAAE,OAAO,YACtC,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,YAClB,MAAM,UACN,MAAM,gBACN,CAAC,GACC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,IAAI,CAAA;CAAC,CAkFvD;AAhLD;IACI;;;OAGG;IACH,4BAFW,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI,EAS/B;IANG,wBAHgB,MAAM,KAAE,IAAI,CAGS;IACrC,0BAA6B;IAC7B,eAAkB;IAElB,wCAAwC;IACxC,aADW,CAAC,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI,CAAC,EAAE,CACf;IAGzB;;;;;;;;;OASG;IACH,4BAFW,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI,QAM/B;IAED;;OAEG;IACH,2BAFW,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI,QAO/B;IAED;;;;OAIG;IACH,sBAoBC;IAED;;;;;OAKG;IACH,oBAFW,OAAO,iBAAiB,EAAE,iBAAiB,gBAQrD;CACJ"}
@@ -22,7 +22,7 @@ export function isHomogeneous(a: any[]): boolean;
22
22
  * @returns {T[]}
23
23
  * @template T
24
24
  */
25
- export function asArray<T>(obj: T | T[]): T[];
25
+ export function asArray<T>(obj: T[] | T): T[];
26
26
  /**
27
27
  * Returns the last element of an array.
28
28
  * Like vega-util's peek but with stricter typings
@@ -1 +1 @@
1
- {"version":3,"file":"arrayUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/arrayUtils.js"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,+DAEC;AAED;;;;;;GAMG;AACH,wIAKC;AAED;;;GAGG;AACH,iCAFW,GAAG,EAAE,WASf;AAED;;;;GAIG;AACH,8CAQC;AAED;;;;;;GAMG;AACH,qCAEC"}
1
+ {"version":3,"file":"arrayUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/arrayUtils.js"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,mCAFa,CAAC,KAFH,CAAC,EAAE,KACH,CAAC,EAAE,WAKb;AAED;;;;;;GAMG;AACH,gDAFa,CAAC,EAAE,CAAC,EAAE,CAAC,KAJT,CAAC,EAAE,KACH,CAAC,EAAE,aACH,CAAS,IAAC,EAAD,CAAC,KAAE,CAAC,aACb,CAAS,IAAC,EAAD,CAAC,KAAE,CAAC,WAQvB;AAED;;;GAGG;AACH,iCAFW,GAAG,EAAE,WASf;AAED;;;;GAIG;AACH,wBAFa,CAAC,OAFH,CAAC,EAAE,GAAG,CAAC,GACL,CAAC,EAAE,CAWf;AAED;;;;;;GAMG;AACH,qBAFa,CAAC,OADH,CAAC,EAAE,KAKb"}
@@ -1 +1 @@
1
- {"version":3,"file":"binnedIndex.d.ts","sourceRoot":"","sources":["../../../src/utils/binnedIndex.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AAEH;;;;;;;;;;;GAWG;AACH,mDANW,MAAM,UACN,CAAC,MAAM,EAAE,MAAM,CAAC,0BACF,MAAM,4BACN,MAAM;iCA2ChB,MAAM,kBACN,MAAM;oBAsHJ,MAAM;EA+BtB;6BAhNU,MAAM,OACN,MAAM,QACN,CAAC,MAAM,EAAE,MAAM,CAAC,KACd,CAAC,MAAM,EAAE,MAAM,CAAC"}
1
+ {"version":3,"file":"binnedIndex.d.ts","sourceRoot":"","sources":["../../../src/utils/binnedIndex.js"],"names":[],"mappings":"AAKA;;;;;;GAMG;AAEH;;;;;;;;;;;GAWG;AACH,0CAFa,CAAC,QAJH,MAAM,UACN,CAAC,MAAM,EAAE,MAAM,CAAC,YAChB,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,cACpB,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM;YA0ChB,CAAC,oBACD,MAAM,kBACN,MAAM;oBAsHJ,MAAM;EA+BtB;6BAhNU,MAAM,OACN,MAAM,QACN,CAAC,MAAM,EAAE,MAAM,CAAC,KACd,CAAC,MAAM,EAAE,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cloner.d.ts","sourceRoot":"","sources":["../../../src/utils/cloner.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH;gBAH6C,MAAM,EAAE;EAwBpD;AAED;;;;GAIG;AACH,sCAFW,MAAM,YAYhB"}
1
+ {"version":3,"file":"cloner.d.ts","sourceRoot":"","sources":["../../../src/utils/cloner.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,qCAFuB,CAAC,SAAX,MAAQ,qBAFV,CAAC,GACC,CAAC,CAAS,IAAC,EAAD,CAAC,KAAE,CAAC,CAAC,GAAG;IAAE,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAwBtD;AAED;;;;GAIG;AACH,sCAFW,MAAM,YAYhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"concatIterables.d.ts","sourceRoot":"","sources":["../../../src/utils/concatIterables.js"],"names":[],"mappings":"AAAA;;;GAGG;AACH;;EAqBC"}
1
+ {"version":3,"file":"concatIterables.d.ts","sourceRoot":"","sources":["../../../src/utils/concatIterables.js"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wCAFa,CAAC,gBADC,QAAQ,CAAC,CAAC,CAAC,EAAA;;EAwBzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../../src/utils/debounce.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,4EAJW,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,0DAqCjC"}
1
+ {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../../src/utils/debounce.js"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,yBAHqB,CAAC,SAAR,GAAG,EAAG,EACP,CAAC,QAHH,CAAC,GAAG,IAAI,EAAC,CAAC,KAAK,CAAC,QAChB,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,yCAYnB,CAAC,KACA,OAAO,CAAC,CAAC,CAAC,CAwBzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"domainArray.d.ts","sourceRoot":"","sources":["../../../src/utils/domainArray.js"],"names":[],"mappings":"AA8KA;;;;GAIG;AACH,2CAHW,MAAM,kBACN,MAAM,EAAE,eAiBlB;AAED;;;;GAIG;AACH,4CAFW,WAAW,GAAG,GAAG,EAAE,SAI7B;AA3MD;;GAEG;AAEH;IACI,cAIC;IAFG,qBAAqB;IACrB,MADW,MAAM,CACI;IAGzB;;;;OAIG;IACH,cAHW,MAAM,GACJ,WAAW,CAIvB;IAED;;;;OAIG;IACH,kBAHW,SAAS,MAAM,CAAC,GACd,WAAW,CAcvB;IAED;;;;;OAKG;IACH,sEAJuB,MAAM,GAChB,WAAW,CASvB;CACJ;AAED;IAoBgB,UAAe;IAEf,UAAe;CAS9B;AAED;;GAEG;AACH;IAKQ,0BAA0B;IAC1B,cADW,IAAI,MAAM,CAAC,CACO;CAoBpC;AAED;CAKC;AAED;IACI;;;OAGG;IACH,2BAFW,MAAM,EAAE,EAiBlB;CAgBJ;qBAhKY,OAAO,GAAG,MAAM,GAAG,MAAM"}
1
+ {"version":3,"file":"domainArray.d.ts","sourceRoot":"","sources":["../../../src/utils/domainArray.js"],"names":[],"mappings":"AA8KA;;;;GAIG;AACH,2CAHW,MAAM,kBACN,MAAM,EAAE,eAiBlB;AAED;;;;GAIG;AACH,4CAFW,WAAW,GAAG,GAAG,EAAE,SAI7B;AA3MD;;GAEG;AAEH;IACI,cAIC;IAFG,qBAAqB;IACrB,MADW,MAAM,CACI;IAGzB;;;;OAIG;IACH,cAHW,MAAM,GACJ,WAAW,CAIvB;IAED;;;;OAIG;IACH,kBAHW,QAAQ,CAAC,MAAM,CAAC,GACd,WAAW,CAcvB;IAED;;;;;OAKG;IACH,sBAFa,CAAC,UAHH,QAAQ,CAAC,CAAC,CAAC,aACX,CAAS,IAAC,EAAD,CAAC,KAAE,MAAM,GAChB,WAAW,CASvB;CACJ;AAED;IAoBgB,UAAe;IAEf,UAAe;CAS9B;AAED;;GAEG;AACH;IAKQ,0BAA0B;IAC1B,cADW,GAAG,CAAC,MAAM,CAAC,CACO;CAoBpC;AAED;CAKC;AAED;IACI;;;OAGG;IACH,2BAFW,MAAM,EAAE,EAiBlB;CAgBJ;qBAhKY,OAAO,GAAG,MAAM,GAAG,MAAM"}
@@ -1 +1 @@
1
- {"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../../src/utils/expression.js"],"names":[],"mappings":"AA2DA;;;;;;;;;;GAUG;AACH,6CAHW,MAAM,sBACJ,kBAAkB,CAgC9B;;YAvCU,MAAM,EAAE;aACR,MAAM,EAAE;UACR,MAAM;;iCAEH,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,qBAAqB,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,eAAe"}
1
+ {"version":3,"file":"expression.d.ts","sourceRoot":"","sources":["../../../src/utils/expression.js"],"names":[],"mappings":"AAkEA;;;;;;;;;;GAUG;AACH,6CAHW,MAAM,sBACJ,kBAAkB,CAgC9B;;YAvCU,MAAM,EAAE;aACR,MAAM,EAAE;UACR,MAAM;;iCAEH,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,qBAAqB,EAAE,KAAK,KAAK,GAAG,CAAC,GAAG,eAAe"}
@@ -33,6 +33,13 @@ const functionContext = {
33
33
  },
34
34
  lerp,
35
35
  linearstep,
36
+ replace(
37
+ /** @type {string} */ str,
38
+ /** @type {RegExp} */ pattern,
39
+ /** @type {string} */ replace
40
+ ) {
41
+ return String(str).replace(pattern, replace);
42
+ },
36
43
  smoothstep,
37
44
  selectionTest,
38
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/utils/field.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,iCAHW,MAAM,SACN,MAAM,uCAYhB"}
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/utils/field.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,iCAHW,MAAM,SACN,MAAM,uCAgChB"}
@@ -17,12 +17,43 @@ import { field as vegaField, accessor } from "vega-util";
17
17
  */
18
18
  export function field(fieldExpr, name = fieldExpr) {
19
19
  if (/^[A-Za-z0-9_]+$/.test(fieldExpr)) {
20
+ const validate = function (
21
+ /** @type {import("../data/flowNode.js").Datum} */ datum
22
+ ) {
23
+ if (!(fieldExpr in datum)) {
24
+ logMissingProperty(datum, fieldExpr);
25
+ }
26
+ };
27
+
20
28
  // eslint-disable-next-line no-new-func
21
29
  const fn = /** @type {import("vega-util").AccessorFn} */ (
22
- new Function("datum", `return datum[${JSON.stringify(fieldExpr)}]`)
30
+ new Function(
31
+ "validator",
32
+ `
33
+ let validated = !validator;
34
+ return function accessField(datum) {
35
+ if (!validated) {
36
+ validator(datum);
37
+ validated = true;
38
+ }
39
+ return datum[${JSON.stringify(fieldExpr)}];
40
+ }`
41
+ )(validate)
23
42
  );
24
43
  return accessor(fn, [fieldExpr], name);
25
44
  } else {
45
+ // TODO: Should implement validation here as well
26
46
  return vegaField(fieldExpr);
27
47
  }
28
48
  }
49
+
50
+ /**
51
+ *
52
+ * @param {any} obj
53
+ * @param {string} prop
54
+ */
55
+ function logMissingProperty(obj, prop) {
56
+ throw new Error(
57
+ `Invalid field "${prop}". Available fields or properties: ${Object.keys(obj).join(", ")}`
58
+ );
59
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../../src/utils/indexer.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH;;IAyBI,oCAAoC;;IAOpC,4BAA4B;kBAAhB,MAAM;;EAYrB"}
1
+ {"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../../src/utils/indexer.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,sCAFa,CAAC;YAYE,CAAC;IAeb,oCAAoC;qBAAxB,QAAQ,CAAC,CAAC,CAAC;IAOvB,4BAA4B;kBAAhB,MAAM;;EAYrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"inertia.d.ts","sourceRoot":"","sources":["../../../src/utils/inertia.js"],"names":[],"mappings":"AAwEA;;;GAGG;AACH,8EAiBC;AAzFD;;GAEG;AACH;IACI;;;OAGG;IACH,sBAHW,OAAO,eAAe,EAAE,OAAO,aAC/B,OAAO,EA0BjB;IAvBG,0CAAwB;IACxB,kBAA0B;IAG1B,oBAAsB;IAEtB,oCAAoC;IACpC,iBADoB,MAAM,KAAE,IAAI,CACZ;IAEpB,oBAAoB;IACpB,kBAAkB;IAElB;;;;MAUC;IAGL,eAQC;IAED;;;;OAIG;IACH,mBAHW,MAAM,mBACG,MAAM,KAAE,IAAI,QAkB/B;CACJ"}
1
+ {"version":3,"file":"inertia.d.ts","sourceRoot":"","sources":["../../../src/utils/inertia.js"],"names":[],"mappings":"AAwEA;;;GAGG;AACH,kCAFa,CAAC,SADH,CAAC,iCAoBX;AAzFD;;GAEG;AACH;IACI;;;OAGG;IACH,sBAHW,OAAO,eAAe,EAAE,OAAO,aAC/B,OAAO,EA0BjB;IAvBG,0CAAwB;IACxB,kBAA0B;IAG1B,oBAAsB;IAEtB,oCAAoC;IACpC,UADW,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI,CACZ;IAEpB,oBAAoB;IACpB,kBAAkB;IAElB;;;;MAUC;IAGL,eAQC;IAED;;;;OAIG;IACH,mBAHW,MAAM,YACN,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI,QAkB/B;CACJ"}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * @param {import("../view/paramMediator.js").default} mediator
3
3
  */
4
- export default function createBindingInputs(mediator: import("../view/paramMediator.js").default): import("lit-html").TemplateResult<2 | 1>[];
4
+ export default function createBindingInputs(mediator: import("../view/paramMediator.js").default): import("lit-html").TemplateResult<2 | 1 | 3>[];
5
5
  //# sourceMappingURL=inputBinding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inputBinding.d.ts","sourceRoot":"","sources":["../../../src/utils/inputBinding.js"],"names":[],"mappings":"AAKA;;GAEG;AACH,sDAFW,OAAO,0BAA0B,EAAE,OAAO,8CAwIpD"}
1
+ {"version":3,"file":"inputBinding.d.ts","sourceRoot":"","sources":["../../../src/utils/inputBinding.js"],"names":[],"mappings":"AAKA;;GAEG;AACH,sDAFW,OAAO,0BAA0B,EAAE,OAAO,kDA0IpD"}
@@ -71,16 +71,17 @@ export default function createBindingInputs(mediator) {
71
71
  html`<span class="label">${label}</span>
72
72
  <div class="radio-group">
73
73
  ${bind.options.map(
74
- (option, i) => html`<label>
75
- <input
76
- type="radio"
77
- name=${name}
78
- value=${option}
79
- .checked=${value == option}
80
- @input=${(/** @type {any} */ e) =>
81
- debouncedSetter(e.target.value)}
82
- />${bind.labels?.[i] ?? option}</label
83
- >`
74
+ (option, i) =>
75
+ html`<label>
76
+ <input
77
+ type="radio"
78
+ name=${name}
79
+ value=${option}
80
+ .checked=${value == option}
81
+ @input=${(/** @type {any} */ e) =>
82
+ debouncedSetter(e.target.value)}
83
+ />${bind.labels?.[i] ?? option}</label
84
+ >`
84
85
  )}
85
86
  </div>`
86
87
  );
@@ -93,12 +94,13 @@ export default function createBindingInputs(mediator) {
93
94
  debouncedSetter(e.target.value)}
94
95
  >
95
96
  ${bind.options.map(
96
- (option, i) => html`<option
97
- value=${option}
98
- ?selected=${value == option}
99
- >
100
- ${bind.labels?.[i] ?? option}
101
- </option>`
97
+ (option, i) =>
98
+ html`<option
99
+ value=${option}
100
+ ?selected=${value == option}
101
+ >
102
+ ${bind.labels?.[i] ?? option}
103
+ </option>`
102
104
  )}
103
105
  </select> `
104
106
  );
@@ -8,5 +8,5 @@
8
8
  * @returns {Generator<[any[], T]>}
9
9
  * @template T
10
10
  */
11
- export default function iterateNestedMaps<T>(map: Map<any, T>, path?: any[]): Generator<[any[], T], any, any>;
11
+ export default function iterateNestedMaps<T>(map: Map<any, T>, path?: any[]): Generator<[any[], T]>;
12
12
  //# sourceMappingURL=iterateNestedMaps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"iterateNestedMaps.d.ts","sourceRoot":"","sources":["../../../src/utils/iterateNestedMaps.js"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,sEAJW,GAAG,EAAE,mCAef"}
1
+ {"version":3,"file":"iterateNestedMaps.d.ts","sourceRoot":"","sources":["../../../src/utils/iterateNestedMaps.js"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,0CAFa,CAAC,OAHH,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,SACX,GAAG,EAAE,GACH,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAcjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"kWayMerge.d.ts","sourceRoot":"","sources":["../../../src/utils/kWayMerge.js"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,0EAJuB,IAAI,0BACJ,MAAM,QAmC5B"}
1
+ {"version":3,"file":"kWayMerge.d.ts","sourceRoot":"","sources":["../../../src/utils/kWayMerge.js"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,kCAFa,CAAC,UAHH,CAAC,EAAE,EAAE,WACL,CAAS,IAAC,EAAD,CAAC,KAAE,IAAI,aAChB,CAAS,IAAC,EAAD,CAAC,KAAE,MAAM,QAmC5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"mergeObjects.d.ts","sourceRoot":"","sources":["../../../src/utils/mergeObjects.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,kEALW,MAAM,SACN,MAAM,EAAE,KA8ElB"}
1
+ {"version":3,"file":"mergeObjects.d.ts","sourceRoot":"","sources":["../../../src/utils/mergeObjects.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,qCAFa,CAAC,WAJF,CAAC,EAAE,cACJ,MAAM,SACN,MAAM,EAAE,GACN,CAAC,CA6Eb"}
@@ -1 +1 @@
1
- {"version":3,"file":"propertyCacher.d.ts","sourceRoot":"","sources":["../../../src/utils/propertyCacher.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,yCANW,MAAM,OACN,GAAG,wCAYb;AAED;;;;GAIG;AACH,iCAHW,MAAM,OACN,MAAM,QAIhB;AAED;;;;GAIG;AACH,uCAHW,MAAM,aACN,MAAM,QAUhB;AACD;;;GAGG;AACH,oCAFW,MAAM,QAIhB;AAED;;GAEG;AACH,wCAFW,GAAG,QAKb"}
1
+ {"version":3,"file":"propertyCacher.d.ts","sourceRoot":"","sources":["../../../src/utils/propertyCacher.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,gCAFa,CAAC,QAJH,MAAM,OACN,GAAG,YACH,CAAS,IAAI,EAAJ,UAAI,KAAE,CAAC,GACd,CAAC,CAUb;AAED;;;;GAIG;AACH,iCAHW,MAAM,OACN,MAAM,QAIhB;AAED;;;;GAIG;AACH,uCAHW,MAAM,aACN,MAAM,QAUhB;AACD;;;GAGG;AACH,oCAFW,MAAM,QAIhB;AAED;;GAEG;AACH,wCAFW,GAAG,QAKb"}
@@ -1 +1 @@
1
- {"version":3,"file":"propertyCoalescer.d.ts","sourceRoot":"","sources":["../../../src/utils/propertyCoalescer.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,wHA4BC"}
1
+ {"version":3,"file":"propertyCoalescer.d.ts","sourceRoot":"","sources":["../../../src/utils/propertyCoalescer.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,2CAF6C,CAAC,SAAhC,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,CAAE,uBAH/B,CAAG,MAAW,CAAC,GAAA,GACd,CAAC,CAgCb"}
@@ -1 +1 @@
1
- {"version":3,"file":"ringBuffer.d.ts","sourceRoot":"","sources":["../../../src/utils/ringBuffer.js"],"names":[],"mappings":"AAAA;;GAEG;AACH;IAQI;;OAEG;IACH,kBAFW,MAAM,EAIhB;IAED,uBAAuB;IACvB,YADY,CAAC,QAKZ;IAED;;OAEG;IACH,OAFa,CAAC,EAAE,CAOf;IAED,mBAEC;IAED,qBAEC;;CACJ"}
1
+ {"version":3,"file":"ringBuffer.d.ts","sourceRoot":"","sources":["../../../src/utils/ringBuffer.js"],"names":[],"mappings":"AAAA;;GAEG;AACH,gCAFa,CAAC;IAUV;;OAEG;IACH,kBAFW,MAAM,EAIhB;IAED,uBAAuB;IACvB,YADY,CAAC,QAKZ;IAED;;OAEG;IACH,OAFa,CAAC,EAAE,CAOf;IAED,mBAEC;IAED,qBAEC;;CACJ"}
@@ -1 +1 @@
1
- {"version":3,"file":"setOperations.d.ts","sourceRoot":"","sources":["../../../src/utils/setOperations.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,oEAOC;AAED;;;;GAIG;AACH,6DAMC;AAED;;;;GAIG;AACH,sEAQC;AAED;;;;GAIG;AACH,2EAUC;AAED;;;;GAIG;AACH,kEAMC"}
1
+ {"version":3,"file":"setOperations.d.ts","sourceRoot":"","sources":["../../../src/utils/setOperations.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,2BAFa,CAAC,OAFH,GAAG,CAAC,CAAC,CAAC,UACN,GAAG,CAAC,CAAC,CAAC,WAUhB;AAED;;;;GAIG;AACH,sBAFa,CAAC,QAFH,GAAG,CAAC,CAAC,CAAC,QACN,GAAG,CAAC,CAAC,CAAC,UAShB;AAED;;;;GAIG;AACH,6BAFa,CAAC,QAFH,GAAG,CAAC,CAAC,CAAC,QACN,GAAG,CAAC,CAAC,CAAC,YAWhB;AAED;;;;GAIG;AACH,oCAFa,CAAC,QAFH,GAAG,CAAC,CAAC,CAAC,QACN,GAAG,CAAC,CAAC,CAAC,UAahB;AAED;;;;GAIG;AACH,2BAFa,CAAC,QAFH,GAAG,CAAC,CAAC,CAAC,QACN,GAAG,CAAC,CAAC,CAAC,UAShB"}
@@ -1 +1 @@
1
- {"version":3,"file":"throttle.d.ts","sourceRoot":"","sources":["../../../src/utils/throttle.js"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wDAFW,MAAM,4BA2BhB"}
1
+ {"version":3,"file":"throttle.d.ts","sourceRoot":"","sources":["../../../src/utils/throttle.js"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wDAFW,MAAM,4BA8BhB"}
@@ -23,12 +23,15 @@ export default function throttle(func, limit) {
23
23
  lastRan = Date.now();
24
24
  } else {
25
25
  clearTimeout(lastFunc);
26
- lastFunc = window.setTimeout(function () {
27
- if (Date.now() - lastRan >= limit) {
28
- func.apply(context, args);
29
- lastRan = Date.now();
30
- }
31
- }, limit - (Date.now() - lastRan));
26
+ lastFunc = window.setTimeout(
27
+ function () {
28
+ if (Date.now() - lastRan >= limit) {
29
+ func.apply(context, args);
30
+ lastRan = Date.now();
31
+ }
32
+ },
33
+ limit - (Date.now() - lastRan)
34
+ );
32
35
  }
33
36
  };
34
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"topK.d.ts","sourceRoot":"","sources":["../../../src/utils/topK.js"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,sCAJW,MAAM,kCACQ,MAAM,OA4B9B;AAED;;;;;;;;GAQG;AACH,sCALW,MAAM,EAAE,KACR,MAAM,UACN,MAAM,QACN,MAAM,YA6BhB"}
1
+ {"version":3,"file":"topK.d.ts","sourceRoot":"","sources":["../../../src/utils/topK.js"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,qBAFa,CAAC,QAHH,CAAC,EAAE,KACH,MAAM,oBACN,CAAC,KAAK,EAAE,CAAC,KAAK,MAAM,OA4B9B;AAED;;;;;;;;GAQG;AACH,sCALW,MAAM,EAAE,KACR,MAAM,UACN,MAAM,QACN,MAAM,YA6BhB"}
@@ -1 +1 @@
1
- {"version":3,"file":"transition.d.ts","sourceRoot":"","sources":["../../../src/utils/transition.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AACH,4CAbW,iBAAiB,gBAqE3B;;;;;WAlES,MAAM;;;;SACN,MAAM;;;;eACN,MAAM;;;;YACN,MAAM;qBACG,MAAM,KAAE,IAAI;;;;4BACZ,MAAM,KAAE,MAAM;;;;0CACL,MAAM,KAAE,IAAI,KAAE,IAAI;aAEpC,WAAW"}
1
+ {"version":3,"file":"transition.d.ts","sourceRoot":"","sources":["../../../src/utils/transition.js"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AACH,4CAbW,iBAAiB,gBAqE3B;;;;;WAlES,MAAM;;;;SACN,MAAM;;;;eACN,MAAM;;;;YACN,MAAM;cACN,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI;;;;qBACrB,CAAS,IAAM,EAAN,MAAM,KAAE,MAAM;;;;4BACvB,CAAS,IAAqB,EAArB,CAAS,IAAM,EAAN,MAAM,KAAE,IAAI,KAAE,IAAI;aAEpC,WAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"trees.d.ts","sourceRoot":"","sources":["../../../src/utils/trees.js"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH;;;IA0BC;AAED;;;;;;;GAOG;AACH;;;;;IAEC;AAED;;;;;;;;GAQG;AACH;;;uEAmBC;AAED;;;;;;;GAOG;AACH;;;;;2BAGC"}
1
+ {"version":3,"file":"trees.d.ts","sourceRoot":"","sources":["../../../src/utils/trees.js"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,yCAHa,CAAC,SAFH,CAAC,EAAE,kBACH,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAEZ;;;GAAgB,CA4B5B;AAED;;;;;;;GAOG;AACH,6BAF4B,CAAC,SAAhB;IAAG,MAAM,EAAE,CAAC,CAAA;CAAE,SADhB,CAAC,EAAE;;;IAKb;AAED;;;;;;;;GAQG;AACH,sCAFa,CAAC,YAJH,CAAC,WACD;IAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,2BAAgB,CAAC;IAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,2BAAgB,CAAA;CAAE,oBAC7E,CAAC,IAAI,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,0BAuBlC;AAED;;;;;;;GAOG;AACH,0BAFiC,CAAC,SAArB;IAAG,QAAQ,EAAE,CAAC,EAAE,CAAA;CAAG,YAHrB,CAAC,WACD;IAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,2BAAgB,CAAC;IAAC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,2BAAgB,CAAA;CAAE,0BAOvF"}
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/utils/ui/tooltip.js"],"names":[],"mappings":"AAIA,gEAAiE;AAEjE;IACI;;OAEG;IACH,uBAFW,WAAW,EAsBrB;IAnBG,uBAA0B;IAE1B,wBAA4C;IAE5C,kBAAoB;IAGpB,kBAAkB;IAClB,uBADW,GAAG,CACwB;IAEtC,wBAA0B;IAE1B,sBAAsB;IACtB,+BAA+B;IAC/B,aADW,CAAC,MAAM,EAAE,MAAM,CAAC,CACC;IAE5B,sBAAsB;IAK1B;;OAEG;IACH,8BAKC;IAED,uBAEC;IAED,uBAEC;IAED;;OAEG;IACH,0BAFW,OAAO,QAOjB;IAED,wBAEC;IAED;;OAEG;IACH,4BAFW,UAAU,QAkCpB;IA/BG,8BAA0D;IAiC9D,wBAiBC;IAED;;OAEG;IACH,oBAFW,MAAM,GAAG,OAAO,KAAK,EAAE,cAAc,GAAG,WAAW,QAiB7D;IAED,cAGC;IAED;;;;;;;OAOG;IACH,sDAHuB,QAAQ,MAAM,GAAG,WAAW,GAAG,OAAO,KAAK,EAAE,cAAc,CAAC,QAmBlF;IAED,sBAEC;CACJ"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/utils/ui/tooltip.js"],"names":[],"mappings":"AAIA,gEAAiE;AAEjE;IACI;;OAEG;IACH,uBAFW,WAAW,EAsBrB;IAnBG,uBAA0B;IAE1B,wBAA4C;IAE5C,kBAAoB;IAGpB,kBAAkB;IAClB,uBADW,GAAG,CACwB;IAEtC,wBAA0B;IAE1B,sBAAsB;IACtB,+BAA+B;IAC/B,aADW,CAAC,MAAM,EAAE,MAAM,CAAC,CACC;IAE5B,sBAAsB;IAK1B;;OAEG;IACH,8BAKC;IAED,uBAEC;IAED,uBAEC;IAED;;OAEG;IACH,0BAFW,OAAO,QAOjB;IAED,wBAEC;IAED;;OAEG;IACH,4BAFW,UAAU,QAkCpB;IA/BG,8BAA0D;IAiC9D,wBAiBC;IAED;;OAEG;IACH,oBAFW,MAAM,GAAG,OAAO,KAAK,EAAE,cAAc,GAAG,WAAW,QAiB7D;IAED,cAGC;IAED;;;;;;;OAOG;IACH,gBAFa,CAAC,SAFH,CAAC,cACD,CAAS,IAAC,EAAD,CAAC,KAAE,OAAO,CAAC,MAAM,GAAG,WAAW,GAAG,OAAO,KAAK,EAAE,cAAc,CAAC,QAmBlF;IAED,sBAEC;CACJ"}
@@ -40,6 +40,6 @@ export function getDirectory(url) {
40
40
  return directory === ""
41
41
  ? undefined
42
42
  : directory.endsWith("://")
43
- ? url + "/"
44
- : directory;
43
+ ? url + "/"
44
+ : directory;
45
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"variableTools.d.ts","sourceRoot":"","sources":["../../../src/utils/variableTools.js"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,qCAFW,MAAM,EAAE,WAOlB;AAED;;;GAGG;AACH,gCAHW,GAAG,sCAKb;AArBD,iCAAiC;AACjC,8BAAiD"}
1
+ {"version":3,"file":"variableTools.d.ts","sourceRoot":"","sources":["../../../src/utils/variableTools.js"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,qCAFW,MAAM,EAAE,WAOlB;AAED;;;GAGG;AACH,gCAHW,GAAG,GACD,KAAK,IAAI,MAAM,GAAG,MAAM,GAAG,OAAO,CAI9C;AArBD,iCAAiC;AACjC,8BAAiD"}
@@ -1 +1 @@
1
- {"version":3,"file":"axisResolution.d.ts","sourceRoot":"","sources":["../../../src/view/axisResolution.js"],"names":[],"mappings":"AAeA;;;;;;;GAOG;AACH;IACI;;;OAGG;IAEH;;OAEG;IACH,qBAFW,OAAO,oBAAoB,EAAE,wBAAwB,EAM/D;IAHG,+DAAsB;IACtB,wDAAwD;IACxD,SADW,oBAAoB,EAAE,CAChB;IAGrB,8DAEC;IAED;;;;;OAKG;IACH,qBAFW,oBAAoB,QAwB9B;IAED,qDAuBC;IAED,mBAyDC;CACJ;;UAxIS,OAAO,eAAe,EAAE,OAAO;aAC/B,CAAC;gBACD,OAAO,oBAAoB,EAAE,mBAAmB"}
1
+ {"version":3,"file":"axisResolution.d.ts","sourceRoot":"","sources":["../../../src/view/axisResolution.js"],"names":[],"mappings":"AAeA;;;;;;;GAOG;AACH;IACI;;;OAGG;IAEH;;OAEG;IACH,qBAFW,OAAO,oBAAoB,EAAE,wBAAwB,EAM/D;IAHG,+DAAsB;IACtB,wDAAwD;IACxD,SADW,oBAAoB,EAAE,CAChB;IAGrB,8DAEC;IAED;;;;;OAKG;IACH,qBAFW,oBAAoB,QAwB9B;IAED,qDAuBC;IAED,mBAyDC;CACJ;iCA3I6D,CAAC,SAAlD,OAAQ,oBAAoB,EAAE,iBAAkB;UAGnD,OAAO,eAAe,EAAE,OAAO;aAC/B,CAAC;gBACD,OAAO,oBAAoB,EAAE,mBAAmB"}
@@ -1 +1 @@
1
- {"version":3,"file":"axisView.d.ts","sourceRoot":"","sources":["../../../src/view/axisView.js"],"names":[],"mappings":"AAoCA;;GAEG;AACH,kIAEC;AAkYD;;;;GAIG;AACH,wFAHW,MAAM,uCA2MhB;AArmBD;;GAEG;AACH,oIAGE;AAEF;;GAEG;AACH,kIAIE;AASF;;;;;GAKG;AACH;IACI;;;;;;;;;;OAUG;IAEH;;;;;;;OAOG;IACH,6DALW,MAAM,WADN,OAAO,yBAAyB,EAAE,OAAO,gBAEzC,OAAO,oBAAoB,EAAE,OAAO,cACpC,OAAO,WAAW,EAAE,OAAO,YAC3B,OAAO,WAAW,EAAE,WAAW,EAiCzC;IADG,iFAA8B;IAiBlC,+BAEC;CAKJ;sBA5HqB,gBAAgB"}
1
+ {"version":3,"file":"axisView.d.ts","sourceRoot":"","sources":["../../../src/view/axisView.js"],"names":[],"mappings":"AAoCA;;GAEG;AACH,kIAEC;AAkYD;;;;GAIG;AACH,wFAHW,MAAM,uCA2MhB;AArmBD;;GAEG;AACH,8BAFU,MAAM,CAAC,OAAO,oBAAoB,EAAE,wBAAwB,EAAE,sCAAY,CAAC,CAKnF;AAEF;;GAEG;AACH,8BAFU,MAAM,uCAAa,OAAO,oBAAoB,EAAE,wBAAwB,CAAC,CAMjF;AASF;;;;;GAKG;AACH;IACI;;;;;;;;;;OAUG;IAEH;;;;;;;OAOG;IACH,6DALW,MAAM,WADN,OAAO,yBAAyB,EAAE,OAAO,gBAEzC,OAAO,oBAAoB,EAAE,OAAO,cACpC,OAAO,WAAW,EAAE,OAAO,YAC3B,OAAO,WAAW,EAAE,WAAW,EAiCzC;IADG,iFAA8B;IAiBlC,+BAEC;CAKJ;sBA5HqB,gBAAgB"}
@@ -23,8 +23,8 @@ export default class ConcatView extends GridView {
23
23
  isConcatSpec(spec)
24
24
  ? spec.columns
25
25
  : isVConcatSpec(spec)
26
- ? 1
27
- : Infinity
26
+ ? 1
27
+ : Infinity
28
28
  );
29
29
 
30
30
  this.spec = spec;
@@ -38,8 +38,8 @@ export default class ConcatView extends GridView {
38
38
  const childSpecs = isConcatSpec(spec)
39
39
  ? spec.concat
40
40
  : isVConcatSpec(spec)
41
- ? spec.vconcat
42
- : spec.hconcat;
41
+ ? spec.vconcat
42
+ : spec.hconcat;
43
43
 
44
44
  this.setChildren(
45
45
  await Promise.all(
@@ -1 +1 @@
1
- {"version":3,"file":"containerView.d.ts","sourceRoot":"","sources":["../../../src/view/containerView.js"],"names":[],"mappings":"AAEA;;GAEG;AACH;IACI;;;;;;;;OAQG;IACH,kBAPW,OAAO,iBAAiB,EAAE,aAAa,WACvC,OAAO,yBAAyB,EAAE,OAAO,gBACzC,aAAa,cACb,OAAO,WAAW,EAAE,OAAO,QAC3B,MAAM,YACN,OAAO,WAAW,EAAE,WAAW,EAMzC;IADG,8CAAgB;IAGpB,oCAEC;IASD;;;;;OAKG;IACH,oBAHW,OAAO,WAAW,EAAE,OAAO,eAC3B,OAAO,WAAW,EAAE,OAAO,QAIrC;IA+CD;;;OAGG;IACH,2BAHW,MAAM,EAAE,GACN,IAAI,CAYhB;IAED;;;OAGG;IACH,sBAFW,MAAM,QAQhB;IAED;;;OAGG;IACH,2BAFW,MAAM,QAchB;IA1GD;;OAEG;IACH,qBAFa,iBAAiB,IAAI,CAAC,CAIlC;CA+GJ;iBA7I4C,WAAW"}
1
+ {"version":3,"file":"containerView.d.ts","sourceRoot":"","sources":["../../../src/view/containerView.js"],"names":[],"mappings":"AAEA;;GAEG;AACH;IACI;;;;;;;;OAQG;IACH,kBAPW,OAAO,iBAAiB,EAAE,aAAa,WACvC,OAAO,yBAAyB,EAAE,OAAO,gBACzC,aAAa,cACb,OAAO,WAAW,EAAE,OAAO,QAC3B,MAAM,YACN,OAAO,WAAW,EAAE,WAAW,EAMzC;IADG,8CAAgB;IAGpB,oCAEC;IASD;;;;;OAKG;IACH,oBAHW,OAAO,WAAW,EAAE,OAAO,eAC3B,OAAO,WAAW,EAAE,OAAO,QAIrC;IA+CD;;;OAGG;IACH,2BAHW,MAAM,EAAE,GACN,IAAI,CAYhB;IAED;;;OAGG;IACH,sBAFW,MAAM,QAQhB;IAED;;;OAGG;IACH,2BAFW,MAAM,QAchB;IA1GD;;OAEG;IACH,qBAFa,gBAAgB,CAAC,IAAI,CAAC,CAIlC;CA+GJ;iBA7I4C,WAAW"}