@jbrowse/app-core 3.5.0 → 3.5.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.
@@ -0,0 +1,102 @@
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
+ export default function RootConfiguration({ pluginManager, }: {
3
+ pluginManager: PluginManager;
4
+ }): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
5
+ rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
6
+ defaultDriver: {
7
+ type: string;
8
+ description: string;
9
+ defaultValue: string;
10
+ };
11
+ drivers: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IMapType<import("mobx-state-tree").ITypeUnion<import("mobx-state-tree").ModelCreationType<import("mobx-state-tree/dist/internal").ExtractCFromProps<Record<string, any>>> | undefined, import("mobx-state-tree").ModelSnapshotType<Record<string, any>>, ({} & Partial<import("mobx-state-tree/dist/internal").ExtractCFromProps<Record<string, any>>> & import("mobx-state-tree/dist/internal").NonEmptyObject) | undefined>>, [undefined]>;
12
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
13
+ highResolutionScaling: {
14
+ type: string;
15
+ defaultValue: number;
16
+ };
17
+ formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
18
+ feature: {
19
+ type: string;
20
+ description: string;
21
+ defaultValue: {};
22
+ contextVariable: string[];
23
+ };
24
+ subfeatures: {
25
+ type: string;
26
+ description: string;
27
+ defaultValue: {};
28
+ contextVariable: string[];
29
+ };
30
+ depth: {
31
+ type: string;
32
+ defaultValue: number;
33
+ description: string;
34
+ };
35
+ maxDepth: {
36
+ type: string;
37
+ defaultValue: number;
38
+ description: string;
39
+ };
40
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
41
+ formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
42
+ config: {
43
+ type: string;
44
+ description: string;
45
+ defaultValue: {};
46
+ contextVariable: string[];
47
+ };
48
+ hideUris: {
49
+ type: string;
50
+ defaultValue: boolean;
51
+ };
52
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
53
+ shareURL: {
54
+ type: string;
55
+ defaultValue: string;
56
+ };
57
+ disableAnalytics: {
58
+ type: string;
59
+ defaultValue: boolean;
60
+ };
61
+ hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
62
+ sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
63
+ trackNames: {
64
+ type: string;
65
+ defaultValue: boolean;
66
+ };
67
+ categories: {
68
+ type: string;
69
+ defaultValue: boolean;
70
+ };
71
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
72
+ defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
73
+ categoryNames: {
74
+ type: string;
75
+ defaultValue: never[];
76
+ };
77
+ topLevelCategories: {
78
+ type: string;
79
+ defaultValue: boolean;
80
+ };
81
+ subCategories: {
82
+ type: string;
83
+ defaultValue: boolean;
84
+ };
85
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
86
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
87
+ theme: {
88
+ type: string;
89
+ defaultValue: {};
90
+ };
91
+ extraThemes: {
92
+ type: string;
93
+ defaultValue: {};
94
+ };
95
+ logoPath: {
96
+ type: string;
97
+ defaultValue: {
98
+ uri: string;
99
+ locationType: string;
100
+ };
101
+ };
102
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = RootConfiguration;
7
+ const configuration_1 = require("@jbrowse/core/configuration");
8
+ const RpcManager_1 = __importDefault(require("@jbrowse/core/rpc/RpcManager"));
9
+ const product_core_1 = require("@jbrowse/product-core");
10
+ function RootConfiguration({ pluginManager, }) {
11
+ return (0, configuration_1.ConfigurationSchema)('Root', {
12
+ rpc: RpcManager_1.default.configSchema,
13
+ highResolutionScaling: {
14
+ type: 'number',
15
+ defaultValue: 2,
16
+ },
17
+ formatDetails: (0, product_core_1.FormatDetailsConfigSchemaFactory)(),
18
+ formatAbout: (0, product_core_1.FormatAboutConfigSchemaFactory)(),
19
+ shareURL: {
20
+ type: 'string',
21
+ defaultValue: 'https://share.jbrowse.org/api/v1/',
22
+ },
23
+ disableAnalytics: {
24
+ type: 'boolean',
25
+ defaultValue: false,
26
+ },
27
+ hierarchical: (0, product_core_1.HierarchicalConfigSchemaFactory)(),
28
+ theme: {
29
+ type: 'frozen',
30
+ defaultValue: {},
31
+ },
32
+ extraThemes: {
33
+ type: 'frozen',
34
+ defaultValue: {},
35
+ },
36
+ logoPath: {
37
+ type: 'fileLocation',
38
+ defaultValue: {
39
+ uri: '',
40
+ locationType: 'UriLocation',
41
+ },
42
+ },
43
+ ...pluginManager.pluginConfigurationNamespacedSchemas(),
44
+ ...pluginManager.pluginConfigurationUnnamespacedSchemas(),
45
+ });
46
+ }
@@ -4,42 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.JBrowseConfigF = JBrowseConfigF;
7
- const configuration_1 = require("@jbrowse/core/configuration");
8
- const RpcManager_1 = __importDefault(require("@jbrowse/core/rpc/RpcManager"));
9
- const product_core_1 = require("@jbrowse/product-core");
10
7
  const mobx_state_tree_1 = require("mobx-state-tree");
8
+ const RootConfiguration_1 = __importDefault(require("./RootConfiguration"));
11
9
  function JBrowseConfigF({ pluginManager, assemblyConfigSchema, }) {
12
10
  return mobx_state_tree_1.types.model('JBrowseConfig', {
13
- configuration: (0, configuration_1.ConfigurationSchema)('Root', {
14
- rpc: RpcManager_1.default.configSchema,
15
- highResolutionScaling: {
16
- type: 'number',
17
- defaultValue: 2,
18
- },
19
- formatDetails: (0, product_core_1.FormatDetailsConfigSchemaFactory)(),
20
- formatAbout: (0, product_core_1.FormatAboutConfigSchemaFactory)(),
21
- shareURL: {
22
- type: 'string',
23
- defaultValue: 'https://share.jbrowse.org/api/v1/',
24
- },
25
- disableAnalytics: {
26
- type: 'boolean',
27
- defaultValue: false,
28
- },
29
- hierarchical: (0, product_core_1.HierarchicalConfigSchemaFactory)(),
30
- theme: {
31
- type: 'frozen',
32
- defaultValue: {},
33
- },
34
- extraThemes: {
35
- type: 'frozen',
36
- defaultValue: {},
37
- },
38
- logoPath: {
39
- type: 'fileLocation',
40
- defaultValue: { uri: '', locationType: 'UriLocation' },
41
- },
42
- ...pluginManager.pluginConfigurationSchemas(),
11
+ configuration: (0, RootConfiguration_1.default)({
12
+ pluginManager,
43
13
  }),
44
14
  plugins: mobx_state_tree_1.types.array(mobx_state_tree_1.types.frozen()),
45
15
  assemblies: mobx_state_tree_1.types.array(assemblyConfigSchema),
@@ -51,5 +21,6 @@ function JBrowseConfigF({ pluginManager, assemblyConfigSchema, }) {
51
21
  name: 'New Session',
52
22
  }),
53
23
  preConfiguredSessions: mobx_state_tree_1.types.array(mobx_state_tree_1.types.frozen()),
24
+ ...pluginManager.pluginConfigurationRootSchemas(),
54
25
  });
55
26
  }
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const jsx_runtime_1 = require("react/jsx-runtime");
7
7
  const CascadingMenu_1 = __importDefault(require("@jbrowse/core/ui/CascadingMenu"));
8
+ const hooks_1 = require("@jbrowse/core/ui/hooks");
8
9
  const util_1 = require("@jbrowse/core/util");
9
10
  const KeyboardArrowDown_1 = __importDefault(require("@mui/icons-material/KeyboardArrowDown"));
10
11
  const KeyboardArrowUp_1 = __importDefault(require("@mui/icons-material/KeyboardArrowUp"));
@@ -12,12 +13,10 @@ const KeyboardDoubleArrowDown_1 = __importDefault(require("@mui/icons-material/K
12
13
  const KeyboardDoubleArrowUp_1 = __importDefault(require("@mui/icons-material/KeyboardDoubleArrowUp"));
13
14
  const Menu_1 = __importDefault(require("@mui/icons-material/Menu"));
14
15
  const material_1 = require("@mui/material");
15
- const hooks_1 = require("material-ui-popup-state/hooks");
16
16
  const mobx_react_1 = require("mobx-react");
17
17
  const ViewMenu = (0, mobx_react_1.observer)(function ({ model, IconButtonProps, IconProps, }) {
18
18
  const session = (0, util_1.getSession)(model);
19
19
  const popupState = (0, hooks_1.usePopupState)({
20
- popupId: 'viewMenu',
21
20
  variant: 'popover',
22
21
  });
23
22
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.IconButton, { ...IconButtonProps, ...(0, hooks_1.bindTrigger)(popupState), "data-testid": "view_menu_icon", children: (0, jsx_runtime_1.jsx)(Menu_1.default, { ...IconProps, fontSize: "small" }) }), (0, jsx_runtime_1.jsx)(CascadingMenu_1.default, { ...(0, hooks_1.bindPopover)(popupState), onMenuItemClick: (_event, callback) => {
@@ -0,0 +1,102 @@
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
+ export default function RootConfiguration({ pluginManager, }: {
3
+ pluginManager: PluginManager;
4
+ }): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
5
+ rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
6
+ defaultDriver: {
7
+ type: string;
8
+ description: string;
9
+ defaultValue: string;
10
+ };
11
+ drivers: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IMapType<import("mobx-state-tree").ITypeUnion<import("mobx-state-tree").ModelCreationType<import("mobx-state-tree/dist/internal").ExtractCFromProps<Record<string, any>>> | undefined, import("mobx-state-tree").ModelSnapshotType<Record<string, any>>, ({} & Partial<import("mobx-state-tree/dist/internal").ExtractCFromProps<Record<string, any>>> & import("mobx-state-tree/dist/internal").NonEmptyObject) | undefined>>, [undefined]>;
12
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
13
+ highResolutionScaling: {
14
+ type: string;
15
+ defaultValue: number;
16
+ };
17
+ formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
18
+ feature: {
19
+ type: string;
20
+ description: string;
21
+ defaultValue: {};
22
+ contextVariable: string[];
23
+ };
24
+ subfeatures: {
25
+ type: string;
26
+ description: string;
27
+ defaultValue: {};
28
+ contextVariable: string[];
29
+ };
30
+ depth: {
31
+ type: string;
32
+ defaultValue: number;
33
+ description: string;
34
+ };
35
+ maxDepth: {
36
+ type: string;
37
+ defaultValue: number;
38
+ description: string;
39
+ };
40
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
41
+ formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
42
+ config: {
43
+ type: string;
44
+ description: string;
45
+ defaultValue: {};
46
+ contextVariable: string[];
47
+ };
48
+ hideUris: {
49
+ type: string;
50
+ defaultValue: boolean;
51
+ };
52
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
53
+ shareURL: {
54
+ type: string;
55
+ defaultValue: string;
56
+ };
57
+ disableAnalytics: {
58
+ type: string;
59
+ defaultValue: boolean;
60
+ };
61
+ hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
62
+ sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
63
+ trackNames: {
64
+ type: string;
65
+ defaultValue: boolean;
66
+ };
67
+ categories: {
68
+ type: string;
69
+ defaultValue: boolean;
70
+ };
71
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
72
+ defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
73
+ categoryNames: {
74
+ type: string;
75
+ defaultValue: never[];
76
+ };
77
+ topLevelCategories: {
78
+ type: string;
79
+ defaultValue: boolean;
80
+ };
81
+ subCategories: {
82
+ type: string;
83
+ defaultValue: boolean;
84
+ };
85
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
86
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
87
+ theme: {
88
+ type: string;
89
+ defaultValue: {};
90
+ };
91
+ extraThemes: {
92
+ type: string;
93
+ defaultValue: {};
94
+ };
95
+ logoPath: {
96
+ type: string;
97
+ defaultValue: {
98
+ uri: string;
99
+ locationType: string;
100
+ };
101
+ };
102
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
@@ -0,0 +1,40 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
+ import RpcManager from '@jbrowse/core/rpc/RpcManager';
3
+ import { FormatAboutConfigSchemaFactory, FormatDetailsConfigSchemaFactory, HierarchicalConfigSchemaFactory, } from '@jbrowse/product-core';
4
+ export default function RootConfiguration({ pluginManager, }) {
5
+ return ConfigurationSchema('Root', {
6
+ rpc: RpcManager.configSchema,
7
+ highResolutionScaling: {
8
+ type: 'number',
9
+ defaultValue: 2,
10
+ },
11
+ formatDetails: FormatDetailsConfigSchemaFactory(),
12
+ formatAbout: FormatAboutConfigSchemaFactory(),
13
+ shareURL: {
14
+ type: 'string',
15
+ defaultValue: 'https://share.jbrowse.org/api/v1/',
16
+ },
17
+ disableAnalytics: {
18
+ type: 'boolean',
19
+ defaultValue: false,
20
+ },
21
+ hierarchical: HierarchicalConfigSchemaFactory(),
22
+ theme: {
23
+ type: 'frozen',
24
+ defaultValue: {},
25
+ },
26
+ extraThemes: {
27
+ type: 'frozen',
28
+ defaultValue: {},
29
+ },
30
+ logoPath: {
31
+ type: 'fileLocation',
32
+ defaultValue: {
33
+ uri: '',
34
+ locationType: 'UriLocation',
35
+ },
36
+ },
37
+ ...pluginManager.pluginConfigurationNamespacedSchemas(),
38
+ ...pluginManager.pluginConfigurationUnnamespacedSchemas(),
39
+ });
40
+ }
@@ -1,39 +1,9 @@
1
- import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- import RpcManager from '@jbrowse/core/rpc/RpcManager';
3
- import { FormatAboutConfigSchemaFactory, FormatDetailsConfigSchemaFactory, HierarchicalConfigSchemaFactory, } from '@jbrowse/product-core';
4
1
  import { types } from 'mobx-state-tree';
2
+ import RootConfiguration from './RootConfiguration';
5
3
  export function JBrowseConfigF({ pluginManager, assemblyConfigSchema, }) {
6
4
  return types.model('JBrowseConfig', {
7
- configuration: ConfigurationSchema('Root', {
8
- rpc: RpcManager.configSchema,
9
- highResolutionScaling: {
10
- type: 'number',
11
- defaultValue: 2,
12
- },
13
- formatDetails: FormatDetailsConfigSchemaFactory(),
14
- formatAbout: FormatAboutConfigSchemaFactory(),
15
- shareURL: {
16
- type: 'string',
17
- defaultValue: 'https://share.jbrowse.org/api/v1/',
18
- },
19
- disableAnalytics: {
20
- type: 'boolean',
21
- defaultValue: false,
22
- },
23
- hierarchical: HierarchicalConfigSchemaFactory(),
24
- theme: {
25
- type: 'frozen',
26
- defaultValue: {},
27
- },
28
- extraThemes: {
29
- type: 'frozen',
30
- defaultValue: {},
31
- },
32
- logoPath: {
33
- type: 'fileLocation',
34
- defaultValue: { uri: '', locationType: 'UriLocation' },
35
- },
36
- ...pluginManager.pluginConfigurationSchemas(),
5
+ configuration: RootConfiguration({
6
+ pluginManager,
37
7
  }),
38
8
  plugins: types.array(types.frozen()),
39
9
  assemblies: types.array(assemblyConfigSchema),
@@ -45,5 +15,6 @@ export function JBrowseConfigF({ pluginManager, assemblyConfigSchema, }) {
45
15
  name: 'New Session',
46
16
  }),
47
17
  preConfiguredSessions: types.array(types.frozen()),
18
+ ...pluginManager.pluginConfigurationRootSchemas(),
48
19
  });
49
20
  }
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import CascadingMenu from '@jbrowse/core/ui/CascadingMenu';
3
+ import { bindPopover, bindTrigger, usePopupState } from '@jbrowse/core/ui/hooks';
3
4
  import { getSession } from '@jbrowse/core/util';
4
5
  import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown';
5
6
  import KeyboardArrowUpIcon from '@mui/icons-material/KeyboardArrowUp';
@@ -7,12 +8,10 @@ import KeyboardDoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrow
7
8
  import KeyboardDoubleArrowUpIcon from '@mui/icons-material/KeyboardDoubleArrowUp';
8
9
  import MenuIcon from '@mui/icons-material/Menu';
9
10
  import { IconButton } from '@mui/material';
10
- import { bindPopover, bindTrigger, usePopupState, } from 'material-ui-popup-state/hooks';
11
11
  import { observer } from 'mobx-react';
12
12
  const ViewMenu = observer(function ({ model, IconButtonProps, IconProps, }) {
13
13
  const session = getSession(model);
14
14
  const popupState = usePopupState({
15
- popupId: 'viewMenu',
16
15
  variant: 'popover',
17
16
  });
18
17
  return (_jsxs(_Fragment, { children: [_jsx(IconButton, { ...IconButtonProps, ...bindTrigger(popupState), "data-testid": "view_menu_icon", children: _jsx(MenuIcon, { ...IconProps, fontSize: "small" }) }), _jsx(CascadingMenu, { ...bindPopover(popupState), onMenuItemClick: (_event, callback) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/app-core",
3
- "version": "3.5.0",
3
+ "version": "3.5.1",
4
4
  "description": "JBrowse 2 code shared between the 'full featured' apps e.g. jbrowse-web and jbrowse-desktop",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -42,7 +42,7 @@
42
42
  },
43
43
  "dependencies": {
44
44
  "@babel/runtime": "^7.16.3",
45
- "@jbrowse/product-core": "^3.5.0",
45
+ "@jbrowse/product-core": "^3.5.1",
46
46
  "@mui/icons-material": "^7.0.0",
47
47
  "@mui/material": "^7.0.0",
48
48
  "copy-to-clipboard": "^3.3.1",
@@ -59,5 +59,5 @@
59
59
  "publishConfig": {
60
60
  "access": "public"
61
61
  },
62
- "gitHead": "8a8aa0aab2229dece106a5715a767e649e2fe92b"
62
+ "gitHead": "cb8859da9d838ad2594964777c5c54f385d98f5e"
63
63
  }