@openbraininstitute/morphoviewer 0.35.2 → 0.36.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 (78) hide show
  1. package/dist/behaviors/index.d.ts +1 -0
  2. package/dist/behaviors/index.d.ts.map +1 -1
  3. package/dist/behaviors/index.js +2 -1
  4. package/dist/behaviors/tap-guard.d.ts +17 -0
  5. package/dist/behaviors/tap-guard.d.ts.map +1 -0
  6. package/dist/behaviors/tap-guard.js +60 -0
  7. package/dist/components/morpho-viewer-small-circuit/painter/cached-cell-loader.d.ts +6 -0
  8. package/dist/components/morpho-viewer-small-circuit/painter/cached-cell-loader.d.ts.map +1 -0
  9. package/dist/components/morpho-viewer-small-circuit/painter/cached-cell-loader.js +12 -0
  10. package/dist/components/morpho-viewer-small-circuit/painter/dedupe-by-id.d.ts +3 -0
  11. package/dist/components/morpho-viewer-small-circuit/painter/dedupe-by-id.d.ts.map +1 -0
  12. package/dist/components/morpho-viewer-small-circuit/painter/dedupe-by-id.js +14 -0
  13. package/dist/components/morpho-viewer-small-circuit/painter/manager.d.ts +4 -2
  14. package/dist/components/morpho-viewer-small-circuit/painter/manager.d.ts.map +1 -1
  15. package/dist/components/morpho-viewer-small-circuit/painter/manager.js +115 -59
  16. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.d.ts +8 -1
  17. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.d.ts.map +1 -1
  18. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.js +57 -21
  19. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.d.ts +3 -0
  20. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.d.ts.map +1 -1
  21. package/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/segment-offscreen-painter.js +28 -6
  22. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.d.ts +3 -0
  23. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.d.ts.map +1 -1
  24. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.js +42 -28
  25. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/index.d.ts +5 -0
  26. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/index.d.ts.map +1 -0
  27. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/index.js +4 -0
  28. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/painter-cell-somas-id.d.ts +12 -0
  29. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/painter-cell-somas-id.d.ts.map +1 -0
  30. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/painter-cell-somas-id.js +79 -0
  31. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/painter-cell-somas.d.ts +19 -0
  32. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/painter-cell-somas.d.ts.map +1 -0
  33. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/painter-cell-somas.js +55 -0
  34. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/soma-cloud-data.d.ts +9 -0
  35. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/soma-cloud-data.d.ts.map +1 -0
  36. package/dist/components/morpho-viewer-small-circuit/painter/painter-cell-somas/soma-cloud-data.js +34 -0
  37. package/dist/components/morpho-viewer-small-circuit/painter/same-cell.d.ts +3 -0
  38. package/dist/components/morpho-viewer-small-circuit/painter/same-cell.d.ts.map +1 -0
  39. package/dist/components/morpho-viewer-small-circuit/painter/same-cell.js +15 -0
  40. package/dist/components/morpho-viewer-small-circuit/types.d.ts +1 -0
  41. package/dist/components/morpho-viewer-small-circuit/types.d.ts.map +1 -1
  42. package/dist/components/morpho-viewer-somas-only/manager/ambient-occlusion/ambient-occlusion.d.ts +19 -4
  43. package/dist/components/morpho-viewer-somas-only/manager/ambient-occlusion/ambient-occlusion.d.ts.map +1 -1
  44. package/dist/components/morpho-viewer-somas-only/manager/ambient-occlusion/ambient-occlusion.js +43 -19
  45. package/dist/components/morpho-viewer-somas-only/manager/manager.d.ts +23 -4
  46. package/dist/components/morpho-viewer-somas-only/manager/manager.d.ts.map +1 -1
  47. package/dist/components/morpho-viewer-somas-only/manager/manager.js +149 -29
  48. package/dist/components/morpho-viewer-somas-only/manager/painter-cell-infos.d.ts +12 -3
  49. package/dist/components/morpho-viewer-somas-only/manager/painter-cell-infos.d.ts.map +1 -1
  50. package/dist/components/morpho-viewer-somas-only/manager/painter-cell-infos.js +168 -76
  51. package/dist/components/morpho-viewer-somas-only/manager/painter-soma-cloud.d.ts +4 -2
  52. package/dist/components/morpho-viewer-somas-only/manager/painter-soma-cloud.d.ts.map +1 -1
  53. package/dist/components/morpho-viewer-somas-only/manager/painter-soma-cloud.js +33 -22
  54. package/dist/components/morpho-viewer-somas-only/manager/soma-picker.d.ts +15 -0
  55. package/dist/components/morpho-viewer-somas-only/manager/soma-picker.d.ts.map +1 -0
  56. package/dist/components/morpho-viewer-somas-only/manager/soma-picker.js +184 -0
  57. package/dist/components/morpho-viewer-somas-only/types.d.ts +8 -1
  58. package/dist/components/morpho-viewer-somas-only/types.d.ts.map +1 -1
  59. package/dist/morphology-picking/index.d.ts +1 -0
  60. package/dist/morphology-picking/index.d.ts.map +1 -1
  61. package/dist/morphology-picking/index.js +2 -1
  62. package/dist/morphology-picking/pick-color-codec.d.ts +4 -0
  63. package/dist/morphology-picking/pick-color-codec.d.ts.map +1 -0
  64. package/dist/morphology-picking/pick-color-codec.js +14 -0
  65. package/dist/package.json +1 -1
  66. package/dist/painters/overlay-interaction.d.ts +2 -0
  67. package/dist/painters/overlay-interaction.d.ts.map +1 -1
  68. package/dist/painters/overlay-interaction.js +11 -1
  69. package/dist/utils.d.ts +0 -3
  70. package/dist/utils.d.ts.map +1 -1
  71. package/dist/utils.js +1 -19
  72. package/package.json +1 -1
  73. package/dist/components/morpho-viewer-small-circuit/painter/still-pointer.d.ts +0 -9
  74. package/dist/components/morpho-viewer-small-circuit/painter/still-pointer.d.ts.map +0 -1
  75. package/dist/components/morpho-viewer-small-circuit/painter/still-pointer.js +0 -9
  76. package/dist/components/morpho-viewer-somas-only/manager/ambient-occlusion/rays.d.ts +0 -3
  77. package/dist/components/morpho-viewer-somas-only/manager/ambient-occlusion/rays.d.ts.map +0 -1
  78. package/dist/components/morpho-viewer-somas-only/manager/ambient-occlusion/rays.js +0 -24
@@ -1,3 +1,4 @@
1
1
  export * from "./space-per-pixel";
2
+ export * from "./tap-guard";
2
3
  export * from "./zoom";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/behaviors/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/behaviors/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from "./space-per-pixel";
2
+ export * from "./tap-guard";
2
3
  export * from "./zoom";
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmVoYXZpb3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxRQUFRLENBQUMifQ==
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmVoYXZpb3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxRQUFRLENBQUMifQ==
@@ -0,0 +1,17 @@
1
+ import type { TgdContext, TgdInputPointerEventTap } from "@tolokoban/tgd";
2
+ export declare class TapGuard {
3
+ private context;
4
+ private dragged;
5
+ private startX;
6
+ private startY;
7
+ private widthInPixels;
8
+ private heightInPixels;
9
+ attach(context: TgdContext): void;
10
+ detach(): void;
11
+ begin(x: number, y: number, widthInPixels: number, heightInPixels: number): void;
12
+ move(x: number, y: number): void;
13
+ isClick(evt: TgdInputPointerEventTap): boolean;
14
+ private readonly handleMoveStart;
15
+ private readonly handleMove;
16
+ }
17
+ //# sourceMappingURL=tap-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tap-guard.d.ts","sourceRoot":"","sources":["../../src/behaviors/tap-guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAA4B,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAiDpG,qBAAa,QAAQ;IACnB,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,cAAc,CAAK;IAE3B,MAAM,CAAC,OAAO,EAAE,UAAU;IAM1B,MAAM;IAUN,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;IASzE,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAWzB,OAAO,CAAC,GAAG,EAAE,uBAAuB,GAAG,OAAO;IAc9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAS9B;IAEF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAEzB;CACH"}
@@ -0,0 +1,60 @@
1
+ const CLICK_SLOP_IN_PIXELS = 5;
2
+ const MAX_CLICK_IN_SECONDS = 0.5;
3
+ const PRIORITY = 100;
4
+ function movedBeyondSlop(dx, dy, widthInPixels, heightInPixels) {
5
+ if (widthInPixels <= 0 || heightInPixels <= 0)
6
+ return false;
7
+ return Math.hypot((dx * widthInPixels) / 2, (dy * heightInPixels) / 2) > CLICK_SLOP_IN_PIXELS;
8
+ }
9
+ export class TapGuard {
10
+ constructor() {
11
+ this.context = null;
12
+ this.dragged = false;
13
+ this.startX = 0;
14
+ this.startY = 0;
15
+ this.widthInPixels = 0;
16
+ this.heightInPixels = 0;
17
+ this.handleMoveStart = (evt) => {
18
+ var _a;
19
+ const { canvas } = (_a = this.context) !== null && _a !== void 0 ? _a : {};
20
+ const sized = canvas && "clientWidth" in canvas;
21
+ this.begin(evt.start.x, evt.start.y, sized ? canvas.clientWidth : 0, sized ? canvas.clientHeight : 0);
22
+ };
23
+ this.handleMove = (evt) => {
24
+ this.move(evt.current.x, evt.current.y);
25
+ };
26
+ }
27
+ attach(context) {
28
+ this.context = context;
29
+ context.inputs.pointer.eventMoveStart.addListener(this.handleMoveStart, PRIORITY);
30
+ context.inputs.pointer.eventMove.addListener(this.handleMove, PRIORITY);
31
+ }
32
+ detach() {
33
+ const { context } = this;
34
+ if (!context)
35
+ return;
36
+ context.inputs.pointer.eventMoveStart.removeListener(this.handleMoveStart);
37
+ context.inputs.pointer.eventMove.removeListener(this.handleMove);
38
+ this.context = null;
39
+ }
40
+ begin(x, y, widthInPixels, heightInPixels) {
41
+ this.dragged = false;
42
+ this.startX = x;
43
+ this.startY = y;
44
+ this.widthInPixels = widthInPixels;
45
+ this.heightInPixels = heightInPixels;
46
+ }
47
+ move(x, y) {
48
+ if (this.dragged)
49
+ return;
50
+ this.dragged = movedBeyondSlop(x - this.startX, y - this.startY, this.widthInPixels, this.heightInPixels);
51
+ }
52
+ isClick(evt) {
53
+ if (this.dragged)
54
+ return false;
55
+ if (evt.t - evt.start.t > MAX_CLICK_IN_SECONDS)
56
+ return false;
57
+ return !movedBeyondSlop(evt.x - evt.start.x, evt.y - evt.start.y, this.widthInPixels, this.heightInPixels);
58
+ }
59
+ }
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFwLWd1YXJkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2JlaGF2aW9ycy90YXAtZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLENBQUM7QUFVL0IsTUFBTSxvQkFBb0IsR0FBRyxHQUFHLENBQUM7QUFNakMsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDO0FBR3JCLFNBQVMsZUFBZSxDQUN0QixFQUFVLEVBQ1YsRUFBVSxFQUNWLGFBQXFCLEVBQ3JCLGNBQXNCO0lBR3RCLElBQUksYUFBYSxJQUFJLENBQUMsSUFBSSxjQUFjLElBQUksQ0FBQztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBRTVELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsb0JBQW9CLENBQUM7QUFDaEcsQ0FBQztBQWlCRCxNQUFNLE9BQU8sUUFBUTtJQUFyQjtRQUNVLFlBQU8sR0FBc0IsSUFBSSxDQUFDO1FBQ2xDLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIsV0FBTSxHQUFHLENBQUMsQ0FBQztRQUNYLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFDWCxrQkFBYSxHQUFHLENBQUMsQ0FBQztRQUNsQixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQW9EVixvQkFBZSxHQUFHLENBQUMsR0FBNkIsRUFBRSxFQUFFOztZQUNuRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBQSxJQUFJLENBQUMsT0FBTyxtQ0FBSSxFQUFFLENBQUM7WUFDdEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLGFBQWEsSUFBSSxNQUFNLENBQUM7WUFDaEQsSUFBSSxDQUFDLEtBQUssQ0FDUixHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFDWCxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFDWCxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDOUIsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2hDLENBQUM7UUFDSixDQUFDLENBQUM7UUFFZSxlQUFVLEdBQUcsQ0FBQyxHQUE2QixFQUFFLEVBQUU7WUFDOUQsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFoRUMsTUFBTSxDQUFDLE9BQW1CO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNsRixPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELE1BQU07UUFDSixNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTztRQUVyQixPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMzRSxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztJQUN0QixDQUFDO0lBR0QsS0FBSyxDQUFDLENBQVMsRUFBRSxDQUFTLEVBQUUsYUFBcUIsRUFBRSxjQUFzQjtRQUN2RSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQztJQUN2QyxDQUFDO0lBR0QsSUFBSSxDQUFDLENBQVMsRUFBRSxDQUFTO1FBQ3ZCLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRXpCLElBQUksQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUM1QixDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFDZixDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFDZixJQUFJLENBQUMsYUFBYSxFQUNsQixJQUFJLENBQUMsY0FBYyxDQUNwQixDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUE0QjtRQUNsQyxJQUFJLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDL0IsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLG9CQUFvQjtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBSTdELE9BQU8sQ0FBQyxlQUFlLENBQ3JCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ25CLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ25CLElBQUksQ0FBQyxhQUFhLEVBQ2xCLElBQUksQ0FBQyxjQUFjLENBQ3BCLENBQUM7SUFDSixDQUFDO0NBZ0JGIn0=
@@ -0,0 +1,6 @@
1
+ import type { CacheLRU } from "../../../tools/cache-lru";
2
+ import type { MorphoViewerSmallCircuitCellData } from "../types";
3
+ type CellLoader = (id: string) => Promise<MorphoViewerSmallCircuitCellData | null>;
4
+ export declare function cachedCellLoader(cache: CacheLRU<Promise<MorphoViewerSmallCircuitCellData | null>>, loadCell: CellLoader): CellLoader;
5
+ export {};
6
+ //# sourceMappingURL=cached-cell-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cached-cell-loader.d.ts","sourceRoot":"","sources":["../../../../src/components/morpho-viewer-small-circuit/painter/cached-cell-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,UAAU,CAAC;AAEjE,KAAK,UAAU,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC;AAcnF,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC,EACjE,QAAQ,EAAE,UAAU,GACnB,UAAU,CAUZ"}
@@ -0,0 +1,12 @@
1
+ export function cachedCellLoader(cache, loadCell) {
2
+ return (id) => {
3
+ const cached = cache.get(id);
4
+ if (cached)
5
+ return cached;
6
+ const [path] = id.split("?");
7
+ const promise = loadCell(path);
8
+ cache.set(id, promise);
9
+ return promise;
10
+ };
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkLWNlbGwtbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9ycGhvLXZpZXdlci1zbWFsbC1jaXJjdWl0L3BhaW50ZXIvY2FjaGVkLWNlbGwtbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCQSxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLEtBQWlFLEVBQ2pFLFFBQW9CO0lBRXBCLE9BQU8sQ0FBQyxFQUFVLEVBQUUsRUFBRTtRQUNwQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLElBQUksTUFBTTtZQUFFLE9BQU8sTUFBTSxDQUFDO1FBRTFCLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdCLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvQixLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN2QixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDLENBQUM7QUFDSixDQUFDIn0=
@@ -0,0 +1,3 @@
1
+ import type { MorphoViewerSmallCircuitCell } from "../types";
2
+ export declare function dedupeById(circuit: MorphoViewerSmallCircuitCell[]): MorphoViewerSmallCircuitCell[];
3
+ //# sourceMappingURL=dedupe-by-id.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dedupe-by-id.d.ts","sourceRoot":"","sources":["../../../../src/components/morpho-viewer-small-circuit/painter/dedupe-by-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAa7D,wBAAgB,UAAU,CACxB,OAAO,EAAE,4BAA4B,EAAE,GACtC,4BAA4B,EAAE,CAchC"}
@@ -0,0 +1,14 @@
1
+ export function dedupeById(circuit) {
2
+ const seen = new Set();
3
+ const kept = circuit.filter((cell) => {
4
+ if (seen.has(cell.id))
5
+ return false;
6
+ seen.add(cell.id);
7
+ return true;
8
+ });
9
+ if (kept.length === circuit.length)
10
+ return circuit;
11
+ console.warn(`Cell ids must be unique, but ${circuit.length - kept.length} of them repeat one already in the circuit. Those cells were left out: an id names a cell to the painters, to the pick buffer and to the morphology cache alike.`);
12
+ return kept;
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVkdXBlLWJ5LWlkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9ycGhvLXZpZXdlci1zbWFsbC1jaXJjdWl0L3BhaW50ZXIvZGVkdXBlLWJ5LWlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWFBLE1BQU0sVUFBVSxVQUFVLENBQ3hCLE9BQXVDO0lBRXZDLE1BQU0sSUFBSSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFDL0IsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1FBQ25DLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFFcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDbEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUMsQ0FBQztJQUNILElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxPQUFPLENBQUMsTUFBTTtRQUFFLE9BQU8sT0FBTyxDQUFDO0lBRW5ELE9BQU8sQ0FBQyxJQUFJLENBQ1YsZ0NBQWdDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sa0tBQWtLLENBQy9OLENBQUM7SUFDRixPQUFPLElBQUksQ0FBQztBQUNkLENBQUMifQ==
@@ -44,12 +44,12 @@ export declare class PainterManager {
44
44
  private framebufferHighlightedCells;
45
45
  private framebufferBlur;
46
46
  private loadedCellsCache;
47
- private circuitSignature;
48
47
  private fitCameraOnUpdate;
49
- private placementSignature;
48
+ private placementIds;
50
49
  private bbox;
51
50
  private _verbose;
52
51
  private gizmoOverlay;
52
+ private readonly tapGuard;
53
53
  private readonly handleGizmoTipClick;
54
54
  private _gizmoCanvas;
55
55
  private painterOverlays;
@@ -63,6 +63,8 @@ export declare class PainterManager {
63
63
  private previewedLocationKey;
64
64
  private _locationLabelsEnabled;
65
65
  private readonly cellPainters;
66
+ private painterCellSomas;
67
+ private paintedSomaAsSphere;
66
68
  private _dendrogramMode;
67
69
  private dendrogramMix;
68
70
  private dendrogramAnimations;
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/components/morpho-viewer-small-circuit/painter/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/components/morpho-viewer-small-circuit/painter/manager.ts"],"names":[],"mappings":"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"}