@jbrowse/plugin-hic 2.6.1

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 (96) hide show
  1. package/LICENSE +201 -0
  2. package/dist/HicAdapter/HicAdapter.d.ts +32 -0
  3. package/dist/HicAdapter/HicAdapter.js +85 -0
  4. package/dist/HicAdapter/HicAdapter.js.map +1 -0
  5. package/dist/HicAdapter/configSchema.d.ts +13 -0
  6. package/dist/HicAdapter/configSchema.js +22 -0
  7. package/dist/HicAdapter/configSchema.js.map +1 -0
  8. package/dist/HicAdapter/index.d.ts +3 -0
  9. package/dist/HicAdapter/index.js +39 -0
  10. package/dist/HicAdapter/index.js.map +1 -0
  11. package/dist/HicRenderer/HicRenderer.d.ts +53 -0
  12. package/dist/HicRenderer/HicRenderer.js +126 -0
  13. package/dist/HicRenderer/HicRenderer.js.map +1 -0
  14. package/dist/HicRenderer/components/HicRendering.d.ts +10 -0
  15. package/dist/HicRenderer/components/HicRendering.js +16 -0
  16. package/dist/HicRenderer/components/HicRendering.js.map +1 -0
  17. package/dist/HicRenderer/configSchema.d.ts +28 -0
  18. package/dist/HicRenderer/configSchema.js +37 -0
  19. package/dist/HicRenderer/configSchema.js.map +1 -0
  20. package/dist/HicRenderer/index.d.ts +3 -0
  21. package/dist/HicRenderer/index.js +17 -0
  22. package/dist/HicRenderer/index.js.map +1 -0
  23. package/dist/HicTrack/configSchema.d.ts +75 -0
  24. package/dist/HicTrack/configSchema.js +17 -0
  25. package/dist/HicTrack/configSchema.js.map +1 -0
  26. package/dist/HicTrack/index.d.ts +3 -0
  27. package/dist/HicTrack/index.js +20 -0
  28. package/dist/HicTrack/index.js.map +1 -0
  29. package/dist/LinearHicDisplay/configSchema.d.ts +33 -0
  30. package/dist/LinearHicDisplay/configSchema.js +25 -0
  31. package/dist/LinearHicDisplay/configSchema.js.map +1 -0
  32. package/dist/LinearHicDisplay/index.d.ts +3 -0
  33. package/dist/LinearHicDisplay/index.js +24 -0
  34. package/dist/LinearHicDisplay/index.js.map +1 -0
  35. package/dist/LinearHicDisplay/model.d.ts +332 -0
  36. package/dist/LinearHicDisplay/model.js +95 -0
  37. package/dist/LinearHicDisplay/model.js.map +1 -0
  38. package/dist/index.d.ts +7 -0
  39. package/dist/index.js +56 -0
  40. package/dist/index.js.map +1 -0
  41. package/esm/HicAdapter/HicAdapter.d.ts +32 -0
  42. package/esm/HicAdapter/HicAdapter.js +77 -0
  43. package/esm/HicAdapter/HicAdapter.js.map +1 -0
  44. package/esm/HicAdapter/configSchema.d.ts +13 -0
  45. package/esm/HicAdapter/configSchema.js +20 -0
  46. package/esm/HicAdapter/configSchema.js.map +1 -0
  47. package/esm/HicAdapter/index.d.ts +3 -0
  48. package/esm/HicAdapter/index.js +11 -0
  49. package/esm/HicAdapter/index.js.map +1 -0
  50. package/esm/HicRenderer/HicRenderer.d.ts +53 -0
  51. package/esm/HicRenderer/HicRenderer.js +97 -0
  52. package/esm/HicRenderer/HicRenderer.js.map +1 -0
  53. package/esm/HicRenderer/components/HicRendering.d.ts +10 -0
  54. package/esm/HicRenderer/components/HicRendering.js +11 -0
  55. package/esm/HicRenderer/components/HicRendering.js.map +1 -0
  56. package/esm/HicRenderer/configSchema.d.ts +28 -0
  57. package/esm/HicRenderer/configSchema.js +35 -0
  58. package/esm/HicRenderer/configSchema.js.map +1 -0
  59. package/esm/HicRenderer/index.d.ts +3 -0
  60. package/esm/HicRenderer/index.js +12 -0
  61. package/esm/HicRenderer/index.js.map +1 -0
  62. package/esm/HicTrack/configSchema.d.ts +75 -0
  63. package/esm/HicTrack/configSchema.js +15 -0
  64. package/esm/HicTrack/configSchema.js.map +1 -0
  65. package/esm/HicTrack/index.d.ts +3 -0
  66. package/esm/HicTrack/index.js +15 -0
  67. package/esm/HicTrack/index.js.map +1 -0
  68. package/esm/LinearHicDisplay/configSchema.d.ts +33 -0
  69. package/esm/LinearHicDisplay/configSchema.js +23 -0
  70. package/esm/LinearHicDisplay/configSchema.js.map +1 -0
  71. package/esm/LinearHicDisplay/index.d.ts +3 -0
  72. package/esm/LinearHicDisplay/index.js +19 -0
  73. package/esm/LinearHicDisplay/index.js.map +1 -0
  74. package/esm/LinearHicDisplay/model.d.ts +332 -0
  75. package/esm/LinearHicDisplay/model.js +93 -0
  76. package/esm/LinearHicDisplay/model.js.map +1 -0
  77. package/esm/index.d.ts +7 -0
  78. package/esm/index.js +50 -0
  79. package/esm/index.js.map +1 -0
  80. package/package.json +60 -0
  81. package/src/HicAdapter/HicAdapter.ts +150 -0
  82. package/src/HicAdapter/configSchema.ts +26 -0
  83. package/src/HicAdapter/index.ts +15 -0
  84. package/src/HicRenderer/HicRenderer.tsx +170 -0
  85. package/src/HicRenderer/components/HicRendering.test.tsx +21 -0
  86. package/src/HicRenderer/components/HicRendering.tsx +24 -0
  87. package/src/HicRenderer/components/__snapshots__/HicRendering.test.tsx.snap +14 -0
  88. package/src/HicRenderer/configSchema.ts +42 -0
  89. package/src/HicRenderer/index.ts +17 -0
  90. package/src/HicTrack/configSchema.ts +23 -0
  91. package/src/HicTrack/index.ts +16 -0
  92. package/src/LinearHicDisplay/configSchema.ts +33 -0
  93. package/src/LinearHicDisplay/index.ts +21 -0
  94. package/src/LinearHicDisplay/model.ts +104 -0
  95. package/src/declare.d.ts +2 -0
  96. package/src/index.ts +71 -0
@@ -0,0 +1,75 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
3
+ name: {
4
+ description: string;
5
+ type: string;
6
+ defaultValue: string;
7
+ };
8
+ assemblyNames: {
9
+ description: string;
10
+ type: string;
11
+ defaultValue: string[];
12
+ };
13
+ description: {
14
+ description: string;
15
+ type: string;
16
+ defaultValue: string;
17
+ };
18
+ category: {
19
+ description: string;
20
+ type: string;
21
+ defaultValue: never[];
22
+ };
23
+ metadata: {
24
+ type: string;
25
+ description: string;
26
+ defaultValue: {};
27
+ };
28
+ adapter: import("mobx-state-tree").IAnyModelType;
29
+ textSearching: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
30
+ indexingAttributes: {
31
+ type: string;
32
+ description: string;
33
+ defaultValue: string[];
34
+ };
35
+ indexingFeatureTypesToExclude: {
36
+ type: string;
37
+ description: string;
38
+ defaultValue: string[];
39
+ };
40
+ textSearchAdapter: import("mobx-state-tree").IAnyModelType;
41
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
42
+ displays: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>;
43
+ formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
44
+ feature: {
45
+ type: string;
46
+ description: string;
47
+ defaultValue: {};
48
+ contextVariable: string[];
49
+ };
50
+ subfeatures: {
51
+ type: string;
52
+ description: string;
53
+ defaultValue: {};
54
+ contextVariable: string[];
55
+ };
56
+ depth: {
57
+ type: string;
58
+ defaultValue: number;
59
+ description: string;
60
+ };
61
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
62
+ formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
63
+ config: {
64
+ type: string;
65
+ description: string;
66
+ defaultValue: {};
67
+ contextVariable: string[];
68
+ };
69
+ hideUris: {
70
+ type: string;
71
+ defaultValue: boolean;
72
+ };
73
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
74
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "trackId">>, undefined>>;
75
+ export default configSchema;
@@ -0,0 +1,15 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
+ import { createBaseTrackConfig } from '@jbrowse/core/pluggableElementTypes';
3
+ /**
4
+ * #config HicTrack
5
+ * #category track
6
+ */
7
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
8
+ const configSchema = (pluginManager) => ConfigurationSchema('HicTrack', {}, {
9
+ /**
10
+ * #baseConfiguration
11
+ */
12
+ baseConfiguration: createBaseTrackConfig(pluginManager),
13
+ });
14
+ export default configSchema;
15
+ //# sourceMappingURL=configSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/HicTrack/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAG3E;;;GAGG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,YAAY,GAAG,CAAC,aAA4B,EAAE,EAAE,CACpD,mBAAmB,CACjB,UAAU,EACV,EAAE,EACF;IACE;;OAEG;IACH,iBAAiB,EAAE,qBAAqB,CAAC,aAAa,CAAC;CACxD,CACF,CAAA;AAEH,eAAe,YAAY,CAAA"}
@@ -0,0 +1,3 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ declare const _default: (pluginManager: PluginManager) => void;
3
+ export default _default;
@@ -0,0 +1,15 @@
1
+ import TrackType from '@jbrowse/core/pluggableElementTypes/TrackType';
2
+ import { createBaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
3
+ import configSchemaF from './configSchema';
4
+ export default (pluginManager) => {
5
+ pluginManager.addTrackType(() => {
6
+ const configSchema = configSchemaF(pluginManager);
7
+ return new TrackType({
8
+ name: 'HicTrack',
9
+ displayName: 'Hi-C track',
10
+ configSchema,
11
+ stateModel: createBaseTrackModel(pluginManager, 'HicTrack', configSchema),
12
+ });
13
+ });
14
+ };
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/HicTrack/index.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,+CAA+C,CAAA;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAA;AACjF,OAAO,aAAa,MAAM,gBAAgB,CAAA;AAE1C,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE;QAC9B,MAAM,YAAY,GAAG,aAAa,CAAC,aAAa,CAAC,CAAA;QACjD,OAAO,IAAI,SAAS,CAAC;YACnB,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,YAAY;YACzB,YAAY;YACZ,UAAU,EAAE,oBAAoB,CAAC,aAAa,EAAE,UAAU,EAAE,YAAY,CAAC;SAC1E,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -0,0 +1,33 @@
1
+ import { Instance } from 'mobx-state-tree';
2
+ import PluginManager from '@jbrowse/core/PluginManager';
3
+ declare const HicTrackConfigFactory: (pluginManager: PluginManager) => import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
4
+ /**
5
+ * #slot
6
+ */
7
+ renderer: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
8
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
9
+ maxFeatureScreenDensity: {
10
+ type: string;
11
+ description: string;
12
+ defaultValue: number;
13
+ };
14
+ fetchSizeLimit: {
15
+ type: string;
16
+ defaultValue: number;
17
+ description: string;
18
+ };
19
+ height: {
20
+ type: string;
21
+ defaultValue: number;
22
+ description: string;
23
+ };
24
+ mouseover: {
25
+ type: string;
26
+ description: string;
27
+ defaultValue: string;
28
+ contextVariable: string[];
29
+ };
30
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>, undefined>>;
31
+ export type HicTrackConfigModel = ReturnType<typeof HicTrackConfigFactory>;
32
+ export type HicTrackConfig = Instance<HicTrackConfigModel>;
33
+ export default HicTrackConfigFactory;
@@ -0,0 +1,23 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
+ import { baseLinearDisplayConfigSchema } from '@jbrowse/plugin-linear-genome-view';
3
+ /**
4
+ * #config LinearHicDisplay
5
+ * #category display
6
+ */
7
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
8
+ const HicTrackConfigFactory = (pluginManager) => {
9
+ return ConfigurationSchema('LinearHicDisplay', {
10
+ /**
11
+ * #slot
12
+ */
13
+ renderer: pluginManager.getRendererType('HicRenderer').configSchema,
14
+ }, {
15
+ /**
16
+ * #baseConfiguration
17
+ */
18
+ baseConfiguration: baseLinearDisplayConfigSchema,
19
+ explicitlyTyped: true,
20
+ });
21
+ };
22
+ export default HicTrackConfigFactory;
23
+ //# sourceMappingURL=configSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSchema.js","sourceRoot":"","sources":["../../src/LinearHicDisplay/configSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAA;AAIlF;;;GAGG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,MAAM,qBAAqB,GAAG,CAAC,aAA4B,EAAE,EAAE;IAC7D,OAAO,mBAAmB,CACxB,kBAAkB,EAClB;QACE;;WAEG;QACH,QAAQ,EAAE,aAAa,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,YAAY;KACpE,EACD;QACE;;WAEG;QACH,iBAAiB,EAAE,6BAA6B;QAChD,eAAe,EAAE,IAAI;KACtB,CACF,CAAA;AACH,CAAC,CAAA;AAID,eAAe,qBAAqB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager';
2
+ declare const _default: (pluginManager: PluginManager) => void;
3
+ export default _default;
@@ -0,0 +1,19 @@
1
+ import { DisplayType } from '@jbrowse/core/pluggableElementTypes';
2
+ import { BaseLinearDisplayComponent } from '@jbrowse/plugin-linear-genome-view';
3
+ import configSchemaFactory from './configSchema';
4
+ import stateModelFactory from './model';
5
+ export default (pluginManager) => {
6
+ pluginManager.addDisplayType(() => {
7
+ const configSchema = configSchemaFactory(pluginManager);
8
+ return new DisplayType({
9
+ name: 'LinearHicDisplay',
10
+ displayName: 'Hi-C contact matrix display',
11
+ configSchema,
12
+ stateModel: stateModelFactory(configSchema),
13
+ trackType: 'HicTrack',
14
+ viewType: 'LinearGenomeView',
15
+ ReactComponent: BaseLinearDisplayComponent,
16
+ });
17
+ });
18
+ };
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/LinearHicDisplay/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAA;AAEjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAE/E,OAAO,mBAAmB,MAAM,gBAAgB,CAAA;AAChD,OAAO,iBAAiB,MAAM,SAAS,CAAA;AAEvC,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,cAAc,CAAC,GAAG,EAAE;QAChC,MAAM,YAAY,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAA;QACvD,OAAO,IAAI,WAAW,CAAC;YACrB,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,6BAA6B;YAC1C,YAAY;YACZ,UAAU,EAAE,iBAAiB,CAAC,YAAY,CAAC;YAC3C,SAAS,EAAE,UAAU;YACrB,QAAQ,EAAE,kBAAkB;YAC5B,cAAc,EAAE,0BAA0B;SAC3C,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -0,0 +1,332 @@
1
+ /// <reference types="react" />
2
+ import { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
3
+ declare const _default: (configSchema: AnyConfigurationSchemaType) => import("mobx-state-tree").IModelType<{
4
+ id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
5
+ type: import("mobx-state-tree").ISimpleType<string>;
6
+ rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
7
+ } & {
8
+ heightPreConfig: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
9
+ } & {
10
+ userBpPerPxLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
11
+ userByteSizeLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
12
+ } & {
13
+ blockState: import("mobx-state-tree").IMapType<import("mobx-state-tree").IModelType<{
14
+ key: import("mobx-state-tree").ISimpleType<string>;
15
+ region: import("mobx-state-tree").IModelType<{
16
+ refName: import("mobx-state-tree").ISimpleType<string>;
17
+ start: import("mobx-state-tree").ISimpleType<number>;
18
+ end: import("mobx-state-tree").ISimpleType<number>;
19
+ reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
20
+ } & {
21
+ assemblyName: import("mobx-state-tree").ISimpleType<string>;
22
+ }, {
23
+ setRefName(newRefName: string): void;
24
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
25
+ reloadFlag: import("mobx-state-tree").IType<number | undefined, number, number>;
26
+ isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
27
+ isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
28
+ }, {
29
+ renderInProgress: AbortController | undefined;
30
+ filled: boolean;
31
+ reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
32
+ features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
33
+ layout: any;
34
+ status: string;
35
+ error: unknown;
36
+ message: string | undefined;
37
+ maxHeightReached: boolean;
38
+ ReactComponent: ({ model, }: {
39
+ model: any;
40
+ }) => any;
41
+ renderProps: any;
42
+ } & {
43
+ doReload(): void;
44
+ afterAttach(): void;
45
+ setStatus(message: string): void;
46
+ setLoading(abortController: AbortController): void;
47
+ setMessage(messageText: string): void;
48
+ setRendered(props: {
49
+ reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
50
+ features: Map<string, import("@jbrowse/core/util").Feature>;
51
+ layout: any;
52
+ maxHeightReached: boolean;
53
+ renderProps: any;
54
+ } | undefined): void;
55
+ setError(error: unknown): void;
56
+ reload(): void;
57
+ beforeDestroy(): void;
58
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
59
+ configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
60
+ maxFeatureScreenDensity: {
61
+ type: string;
62
+ description: string;
63
+ defaultValue: number;
64
+ };
65
+ fetchSizeLimit: {
66
+ type: string;
67
+ defaultValue: number;
68
+ description: string;
69
+ };
70
+ height: {
71
+ type: string;
72
+ defaultValue: number;
73
+ description: string;
74
+ };
75
+ mouseover: {
76
+ type: string;
77
+ description: string;
78
+ defaultValue: string;
79
+ contextVariable: string[];
80
+ };
81
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
82
+ } & {
83
+ /**
84
+ * #property
85
+ */
86
+ type: import("mobx-state-tree").ISimpleType<"LinearHicDisplay">;
87
+ /**
88
+ * #property
89
+ */
90
+ configuration: AnyConfigurationSchemaType;
91
+ /**
92
+ * #property
93
+ */
94
+ resolution: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
95
+ }, {
96
+ rendererTypeName: string;
97
+ error: unknown;
98
+ message: string | undefined;
99
+ } & {
100
+ readonly RenderingComponent: import("react").FC<{
101
+ model: {
102
+ id: string;
103
+ type: string;
104
+ rpcDriverName: string | undefined;
105
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
106
+ rendererTypeName: string;
107
+ error: unknown;
108
+ message: string | undefined;
109
+ } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
110
+ id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
111
+ type: import("mobx-state-tree").ISimpleType<string>;
112
+ rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
113
+ }, {
114
+ rendererTypeName: string;
115
+ error: unknown;
116
+ message: string | undefined;
117
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
118
+ onHorizontalScroll?: Function | undefined;
119
+ blockState?: Record<string, any> | undefined;
120
+ }>;
121
+ readonly DisplayBlurb: import("react").FC<{
122
+ model: {
123
+ id: string;
124
+ type: string;
125
+ rpcDriverName: string | undefined;
126
+ } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
127
+ rendererTypeName: string;
128
+ error: unknown;
129
+ message: string | undefined;
130
+ } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
131
+ id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
132
+ type: import("mobx-state-tree").ISimpleType<string>;
133
+ rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
134
+ }, {
135
+ rendererTypeName: string;
136
+ error: unknown;
137
+ message: string | undefined;
138
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
139
+ }> | null;
140
+ readonly adapterConfig: any;
141
+ readonly parentTrack: any;
142
+ renderProps(): any;
143
+ readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType;
144
+ readonly DisplayMessageComponent: import("react").FC<any> | undefined;
145
+ trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
146
+ readonly viewMenuActions: import("@jbrowse/core/ui").MenuItem[];
147
+ regionCannotBeRendered(): null;
148
+ } & {
149
+ setMessage(arg?: string | undefined): void;
150
+ setError(error?: unknown): void;
151
+ setRpcDriverName(rpcDriverName: string): void;
152
+ reload(): void;
153
+ } & {
154
+ scrollTop: number;
155
+ } & {
156
+ readonly height: number;
157
+ } & {
158
+ setScrollTop(scrollTop: number): void;
159
+ setHeight(displayHeight: number): number;
160
+ resizeHeight(distance: number): number;
161
+ } & {
162
+ featureDensityStatsP: Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats> | undefined;
163
+ featureDensityStats: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined;
164
+ currStatsBpPerPx: number;
165
+ } & {
166
+ readonly currentBytesRequested: number;
167
+ readonly currentFeatureScreenDensity: number;
168
+ readonly maxFeatureScreenDensity: any;
169
+ readonly featureDensityStatsReady: boolean;
170
+ readonly maxAllowableBytes: number;
171
+ } & {
172
+ afterAttach(): void;
173
+ } & {
174
+ setCurrStatsBpPerPx(n: number): void;
175
+ setFeatureDensityStatsLimit(stats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined): void;
176
+ getFeatureDensityStats(): Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
177
+ setFeatureDensityStatsP(arg: any): void;
178
+ setFeatureDensityStats(featureDensityStats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined): void;
179
+ clearFeatureDensityStats(): void;
180
+ } & {
181
+ readonly regionTooLarge: boolean;
182
+ readonly regionTooLargeReason: string;
183
+ } & {
184
+ regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
185
+ regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
186
+ } & {
187
+ featureIdUnderMouse: string | undefined;
188
+ contextMenuFeature: import("@jbrowse/core/util").Feature | undefined;
189
+ } & {
190
+ readonly blockType: "dynamicBlocks" | "staticBlocks";
191
+ readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
192
+ } & {
193
+ readonly renderDelay: number;
194
+ readonly TooltipComponent: import("react").FC<any>;
195
+ readonly selectedFeatureId: string | undefined;
196
+ readonly DisplayMessageComponent: import("react").FC<any> | undefined;
197
+ } & {
198
+ readonly features: import("@jbrowse/core/util/compositeMap").default<string, import("@jbrowse/core/util").Feature>;
199
+ readonly featureUnderMouse: import("@jbrowse/core/util").Feature | undefined;
200
+ getFeatureOverlapping(blockKey: string, x: number, y: number): string | undefined;
201
+ getFeatureByID(blockKey: string, id: string): [number, number, number, number] | undefined;
202
+ searchFeatureByID(id: string): [number, number, number, number] | undefined;
203
+ } & {
204
+ addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
205
+ deleteBlock(key: string): void;
206
+ selectFeature(feature: import("@jbrowse/core/util").Feature): void;
207
+ clearFeatureSelection(): void;
208
+ setFeatureIdUnderMouse(feature?: string | undefined): void;
209
+ setContextMenuFeature(feature?: import("@jbrowse/core/util").Feature | undefined): void;
210
+ } & {
211
+ reload(): Promise<void>;
212
+ } & {
213
+ trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
214
+ contextMenuItems(): import("@jbrowse/core/ui").MenuItem[];
215
+ renderProps(): any;
216
+ } & {
217
+ renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
218
+ afterAttach(): void;
219
+ } & {
220
+ /**
221
+ * #getter
222
+ */
223
+ readonly blockType: string;
224
+ /**
225
+ * #getter
226
+ */
227
+ readonly rendererTypeName: string;
228
+ /**
229
+ * #method
230
+ */
231
+ renderProps(): any;
232
+ } & {
233
+ /**
234
+ * #action
235
+ */
236
+ setResolution(n: number): void;
237
+ } & {
238
+ /**
239
+ * #getter
240
+ */
241
+ trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
242
+ }, {
243
+ type: string;
244
+ } & Partial<import("mobx-state-tree/dist/internal").ExtractCFromProps<{
245
+ id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
246
+ type: import("mobx-state-tree").ISimpleType<string>;
247
+ rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
248
+ } & {
249
+ heightPreConfig: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
250
+ } & {
251
+ userBpPerPxLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
252
+ userByteSizeLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
253
+ } & {
254
+ blockState: import("mobx-state-tree").IMapType<import("mobx-state-tree").IModelType<{
255
+ key: import("mobx-state-tree").ISimpleType<string>;
256
+ region: import("mobx-state-tree").IModelType<{
257
+ refName: import("mobx-state-tree").ISimpleType<string>;
258
+ start: import("mobx-state-tree").ISimpleType<number>;
259
+ end: import("mobx-state-tree").ISimpleType<number>;
260
+ reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
261
+ } & {
262
+ assemblyName: import("mobx-state-tree").ISimpleType<string>;
263
+ }, {
264
+ setRefName(newRefName: string): void;
265
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
266
+ reloadFlag: import("mobx-state-tree").IType<number | undefined, number, number>;
267
+ isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
268
+ isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
269
+ }, {
270
+ renderInProgress: AbortController | undefined;
271
+ filled: boolean;
272
+ reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
273
+ features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
274
+ layout: any;
275
+ status: string;
276
+ error: unknown;
277
+ message: string | undefined;
278
+ maxHeightReached: boolean;
279
+ ReactComponent: ({ model, }: {
280
+ model: any;
281
+ }) => any;
282
+ renderProps: any;
283
+ } & {
284
+ doReload(): void;
285
+ afterAttach(): void;
286
+ setStatus(message: string): void;
287
+ setLoading(abortController: AbortController): void;
288
+ setMessage(messageText: string): void;
289
+ setRendered(props: {
290
+ reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
291
+ features: Map<string, import("@jbrowse/core/util").Feature>;
292
+ layout: any;
293
+ maxHeightReached: boolean;
294
+ renderProps: any;
295
+ } | undefined): void;
296
+ setError(error: unknown): void;
297
+ reload(): void;
298
+ beforeDestroy(): void;
299
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
300
+ configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
301
+ maxFeatureScreenDensity: {
302
+ type: string;
303
+ description: string;
304
+ defaultValue: number;
305
+ };
306
+ fetchSizeLimit: {
307
+ type: string;
308
+ defaultValue: number;
309
+ description: string;
310
+ };
311
+ height: {
312
+ type: string;
313
+ defaultValue: number;
314
+ description: string;
315
+ };
316
+ mouseover: {
317
+ type: string;
318
+ description: string;
319
+ defaultValue: string;
320
+ contextVariable: string[];
321
+ };
322
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
323
+ }>> & import("mobx-state-tree/dist/internal").NonEmptyObject & import("mobx-state-tree")._NotCustomized, {
324
+ type: string;
325
+ id: string;
326
+ configuration: import("mobx-state-tree").ModelSnapshotType<Record<string, any>>;
327
+ rpcDriverName: string | undefined;
328
+ heightPreConfig: number | undefined;
329
+ userBpPerPxLimit: number | undefined;
330
+ userByteSizeLimit: number | undefined;
331
+ } & import("mobx-state-tree")._NotCustomized>;
332
+ export default _default;
@@ -0,0 +1,93 @@
1
+ import { ConfigurationReference, getConf } from '@jbrowse/core/configuration';
2
+ import { BaseLinearDisplay } from '@jbrowse/plugin-linear-genome-view';
3
+ import { types, getEnv } from 'mobx-state-tree';
4
+ /**
5
+ * #stateModel LinearHicDisplay
6
+ * #category display
7
+ * extends `BaseLinearDisplay`
8
+ */
9
+ function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
10
+ export default (configSchema) => types
11
+ .compose('LinearHicDisplay', BaseLinearDisplay, types.model({
12
+ /**
13
+ * #property
14
+ */
15
+ type: types.literal('LinearHicDisplay'),
16
+ /**
17
+ * #property
18
+ */
19
+ configuration: ConfigurationReference(configSchema),
20
+ /**
21
+ * #property
22
+ */
23
+ resolution: types.optional(types.number, 1),
24
+ }))
25
+ .views(self => {
26
+ const { renderProps: superRenderProps } = self;
27
+ return {
28
+ /**
29
+ * #getter
30
+ */
31
+ get blockType() {
32
+ return 'dynamicBlocks';
33
+ },
34
+ /**
35
+ * #getter
36
+ */
37
+ get rendererTypeName() {
38
+ return 'HicRenderer';
39
+ },
40
+ /**
41
+ * #method
42
+ */
43
+ renderProps() {
44
+ const config = self.rendererType.configSchema.create(getConf(self, 'renderer') || {}, getEnv(self));
45
+ return {
46
+ ...superRenderProps(),
47
+ config,
48
+ rpcDriverName: self.rpcDriverName,
49
+ displayModel: self,
50
+ resolution: self.resolution,
51
+ };
52
+ },
53
+ };
54
+ })
55
+ .actions(self => ({
56
+ /**
57
+ * #action
58
+ */
59
+ setResolution(n) {
60
+ self.resolution = n;
61
+ },
62
+ }))
63
+ .views(self => {
64
+ const { trackMenuItems: superTrackMenuItems } = self;
65
+ return {
66
+ /**
67
+ * #getter
68
+ */
69
+ trackMenuItems() {
70
+ return [
71
+ ...superTrackMenuItems(),
72
+ {
73
+ label: 'Resolution',
74
+ subMenu: [
75
+ {
76
+ label: 'Finer resolution',
77
+ onClick: () => {
78
+ self.setResolution(self.resolution * 2);
79
+ },
80
+ },
81
+ {
82
+ label: 'Coarser resolution',
83
+ onClick: () => {
84
+ self.setResolution(self.resolution / 2);
85
+ },
86
+ },
87
+ ],
88
+ },
89
+ ];
90
+ },
91
+ };
92
+ });
93
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/LinearHicDisplay/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAG/C;;;;GAIG;AACH,SAAS,CAAC,KAAI,CAAC,CAAC,wDAAwD;AAExE,eAAe,CAAC,YAAwC,EAAE,EAAE,CAC1D,KAAK;KACF,OAAO,CACN,kBAAkB,EAClB,iBAAiB,EACjB,KAAK,CAAC,KAAK,CAAC;IACV;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACvC;;OAEG;IACH,aAAa,EAAE,sBAAsB,CAAC,YAAY,CAAC;IACnD;;OAEG;IACH,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;CAC5C,CAAC,CACH;KACA,KAAK,CAAC,IAAI,CAAC,EAAE;IACZ,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAA;IAC9C,OAAO;QACL;;WAEG;QACH,IAAI,SAAS;YACX,OAAO,eAAe,CAAA;QACxB,CAAC;QACD;;WAEG;QACH,IAAI,gBAAgB;YAClB,OAAO,aAAa,CAAA;QACtB,CAAC;QACD;;WAEG;QACH,WAAW;YACT,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,MAAM,CAClD,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,EAC/B,MAAM,CAAC,IAAI,CAAC,CACb,CAAA;YAED,OAAO;gBACL,GAAG,gBAAgB,EAAE;gBACrB,MAAM;gBACN,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,YAAY,EAAE,IAAI;gBAClB,UAAU,EAAE,IAAI,CAAC,UAAU;aAC5B,CAAA;QACH,CAAC;KACF,CAAA;AACH,CAAC,CAAC;KACD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB;;OAEG;IACH,aAAa,CAAC,CAAS;QACrB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAA;IACrB,CAAC;CACF,CAAC,CAAC;KACF,KAAK,CAAC,IAAI,CAAC,EAAE;IACZ,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAA;IACpD,OAAO;QACL;;WAEG;QACH,cAAc;YACZ,OAAO;gBACL,GAAG,mBAAmB,EAAE;gBACxB;oBACE,KAAK,EAAE,YAAY;oBACnB,OAAO,EAAE;wBACP;4BACE,KAAK,EAAE,kBAAkB;4BACzB,OAAO,EAAE,GAAG,EAAE;gCACZ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;4BACzC,CAAC;yBACF;wBACD;4BACE,KAAK,EAAE,oBAAoB;4BAC3B,OAAO,EAAE,GAAG,EAAE;gCACZ,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;4BACzC,CAAC;yBACF;qBACF;iBACF;aACF,CAAA;QACH,CAAC;KACF,CAAA;AACH,CAAC,CAAC,CAAA"}
package/esm/index.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ import Plugin from '@jbrowse/core/Plugin';
2
+ import PluginManager from '@jbrowse/core/PluginManager';
3
+ export default class HicPlugin extends Plugin {
4
+ name: string;
5
+ install(pluginManager: PluginManager): void;
6
+ configure(pluginManager: PluginManager): void;
7
+ }