@jbrowse/plugin-jobs-management 3.6.5 → 4.0.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.
@@ -1,4 +1,4 @@
1
- import type { NewJob } from '../model';
1
+ import type { NewJob } from '../model.ts';
2
2
  declare const CurrentJobCard: ({ job, }: {
3
3
  job: NewJob;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import type { NewJob } from '../model';
1
+ import type { NewJob } from '../model.ts';
2
2
  declare const JobCard: ({ job }: {
3
3
  job: NewJob;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
- import type { JobsListModel } from '../model';
2
- declare const JobsListWidget: ({ model }: {
1
+ import type { JobsListModel } from '../model.ts';
2
+ declare const JobsListWidget: ({ model, }: {
3
3
  model: JobsListModel;
4
4
  }) => import("react/jsx-runtime").JSX.Element;
5
5
  export default JobsListWidget;
@@ -1,10 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { makeStyles } from '@jbrowse/core/util/tss-react';
2
3
  import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
3
4
  import { Accordion, AccordionSummary, Card, CardContent, Typography, } from '@mui/material';
4
5
  import { observer } from 'mobx-react';
5
- import { makeStyles } from 'tss-react/mui';
6
- import CurrentJobCard from './CurrentJobCard';
7
- import JobCard from './JobCard';
6
+ import CurrentJobCard from "./CurrentJobCard.js";
7
+ import JobCard from "./JobCard.js";
8
8
  const useStyles = makeStyles()(theme => ({
9
9
  root: {
10
10
  margin: theme.spacing(1),
@@ -13,7 +13,7 @@ const useStyles = makeStyles()(theme => ({
13
13
  color: theme.palette.tertiary.contrastText,
14
14
  },
15
15
  }));
16
- const JobsListWidget = observer(function ({ model }) {
16
+ const JobsListWidget = observer(function JobsListWidget({ model, }) {
17
17
  const { classes } = useStyles();
18
18
  const { jobs, finished, queued, aborted } = model;
19
19
  return (_jsxs("div", { className: classes.root, children: [_jsxs(Accordion, { defaultExpanded: true, children: [_jsx(AccordionSummary, { expandIcon: _jsx(ExpandMoreIcon, { className: classes.expandIcon }), children: _jsx(Typography, { variant: "h5", children: "Running jobs" }) }), jobs.length ? (jobs.map((job, index) => (_jsx(CurrentJobCard, { job: job }, `${JSON.stringify(job)}-${index}`)))) : (_jsx(Card, { variant: "outlined", children: _jsx(CardContent, { children: _jsx(Typography, { variant: "body1", children: "No running jobs" }) }) }))] }), _jsxs(Accordion, { defaultExpanded: true, children: [_jsx(AccordionSummary, { expandIcon: _jsx(ExpandMoreIcon, { className: classes.expandIcon }), children: _jsx(Typography, { variant: "h5", children: "Queued jobs" }) }), queued.length ? (queued.map((job, index) => (_jsx(JobCard, { job: job }, `${JSON.stringify(job)}-${index}`)))) : (_jsx(Card, { variant: "outlined", children: _jsx(CardContent, { children: _jsx(Typography, { variant: "body1", children: "No queued jobs" }) }) }))] }), _jsxs(Accordion, { defaultExpanded: true, children: [_jsx(AccordionSummary, { expandIcon: _jsx(ExpandMoreIcon, { className: classes.expandIcon }), children: _jsx(Typography, { variant: "h5", children: "Completed jobs" }) }), finished.length ? (finished.map((job, index) => (_jsx(JobCard, { job: job }, `${JSON.stringify(job)}-${index}`)))) : (_jsx(Card, { variant: "outlined", children: _jsx(CardContent, { children: _jsx(Typography, { variant: "body1", children: "No completed jobs" }) }) }))] }), _jsxs(Accordion, { defaultExpanded: true, children: [_jsx(AccordionSummary, { expandIcon: _jsx(ExpandMoreIcon, { className: classes.expandIcon }), children: _jsx(Typography, { variant: "h5", children: "Aborted jobs" }) }), aborted.length ? (aborted.map((job, index) => (_jsx(JobCard, { job: job }, `${JSON.stringify(job)}-${index}`)))) : (_jsx(Card, { variant: "outlined", children: _jsx(CardContent, { children: _jsx(Typography, { variant: "body1", children: "No aborted jobs" }) }) }))] })] }));
@@ -1,3 +1,3 @@
1
1
  import type PluginManager from '@jbrowse/core/PluginManager';
2
- export declare const configSchema: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
2
+ export declare const configSchema: import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{}, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<undefined, undefined>>;
3
3
  export default function JobsListWidgetF(pluginManager: PluginManager): void;
@@ -1,7 +1,7 @@
1
1
  import { lazy } from 'react';
2
2
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
3
3
  import { WidgetType } from '@jbrowse/core/pluggableElementTypes';
4
- import { stateModelFactory } from './model';
4
+ import { stateModelFactory } from "./model.js";
5
5
  export const configSchema = ConfigurationSchema('JobsListWidget', {});
6
6
  export default function JobsListWidgetF(pluginManager) {
7
7
  pluginManager.addWidgetType(() => {
@@ -10,7 +10,7 @@ export default function JobsListWidgetF(pluginManager) {
10
10
  heading: 'Jobs list',
11
11
  configSchema,
12
12
  stateModel: stateModelFactory(pluginManager),
13
- ReactComponent: lazy(() => import('./components/JobsListWidget')),
13
+ ReactComponent: lazy(() => import("./components/JobsListWidget.js")),
14
14
  });
15
15
  });
16
16
  }
@@ -1,11 +1,11 @@
1
- export declare const Job: import("mobx-state-tree").IModelType<{
2
- name: import("mobx-state-tree").ISimpleType<string>;
3
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
4
- progressPct: import("mobx-state-tree").ISimpleType<number>;
1
+ export declare const Job: import("@jbrowse/mobx-state-tree").IModelType<{
2
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
3
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
4
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
5
5
  }, {
6
6
  cancelCallback(): void;
7
7
  } & {
8
8
  setCancelCallback(cancelCallback: () => void): void;
9
9
  setStatusMessage(message?: string): void;
10
10
  setProgressPct(pct: number): void;
11
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
11
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
@@ -1,4 +1,4 @@
1
- import { types } from 'mobx-state-tree';
1
+ import { types } from '@jbrowse/mobx-state-tree';
2
2
  export const Job = types
3
3
  .model('Job', {
4
4
  name: types.string,
@@ -1,186 +1,186 @@
1
- import { Job } from './jobModel';
1
+ import { Job } from './jobModel.ts';
2
2
  import type PluginManager from '@jbrowse/core/PluginManager';
3
- import type { Instance, SnapshotIn } from 'mobx-state-tree';
3
+ import type { Instance, SnapshotIn } from '@jbrowse/mobx-state-tree';
4
4
  export interface NewJob extends SnapshotIn<typeof Job> {
5
5
  cancelCallback(): void;
6
6
  setStatusMessage(msg?: string): void;
7
7
  }
8
- export declare function stateModelFactory(_pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
9
- id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
10
- type: import("mobx-state-tree").ISimpleType<"JobsListWidget">;
11
- jobs: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
12
- name: import("mobx-state-tree").ISimpleType<string>;
13
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
14
- progressPct: import("mobx-state-tree").ISimpleType<number>;
8
+ export declare function stateModelFactory(_pluginManager: PluginManager): import("@jbrowse/mobx-state-tree").IModelType<{
9
+ id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
10
+ type: import("@jbrowse/mobx-state-tree").ISimpleType<"JobsListWidget">;
11
+ jobs: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IModelType<{
12
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
13
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
14
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
15
15
  }, {
16
16
  cancelCallback(): void;
17
17
  } & {
18
18
  setCancelCallback(cancelCallback: () => void): void;
19
19
  setStatusMessage(message?: string): void;
20
20
  setProgressPct(pct: number): void;
21
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
22
- finished: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
23
- name: import("mobx-state-tree").ISimpleType<string>;
24
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
25
- progressPct: import("mobx-state-tree").ISimpleType<number>;
21
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
22
+ finished: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IModelType<{
23
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
24
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
25
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
26
26
  }, {
27
27
  cancelCallback(): void;
28
28
  } & {
29
29
  setCancelCallback(cancelCallback: () => void): void;
30
30
  setStatusMessage(message?: string): void;
31
31
  setProgressPct(pct: number): void;
32
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
33
- queued: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
34
- name: import("mobx-state-tree").ISimpleType<string>;
35
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
36
- progressPct: import("mobx-state-tree").ISimpleType<number>;
32
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
33
+ queued: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IModelType<{
34
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
35
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
36
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
37
37
  }, {
38
38
  cancelCallback(): void;
39
39
  } & {
40
40
  setCancelCallback(cancelCallback: () => void): void;
41
41
  setStatusMessage(message?: string): void;
42
42
  setProgressPct(pct: number): void;
43
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
44
- aborted: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
45
- name: import("mobx-state-tree").ISimpleType<string>;
46
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
47
- progressPct: import("mobx-state-tree").ISimpleType<number>;
43
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
44
+ aborted: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IModelType<{
45
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
46
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
47
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
48
48
  }, {
49
49
  cancelCallback(): void;
50
50
  } & {
51
51
  setCancelCallback(cancelCallback: () => void): void;
52
52
  setStatusMessage(message?: string): void;
53
53
  setProgressPct(pct: number): void;
54
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
54
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
55
55
  }, {
56
56
  addJob(job: NewJob): {
57
57
  name: string;
58
58
  statusMessage: string | undefined;
59
59
  progressPct: number;
60
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
60
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
61
61
  cancelCallback(): void;
62
62
  } & {
63
63
  setCancelCallback(cancelCallback: () => void): void;
64
64
  setStatusMessage(message?: string): void;
65
65
  setProgressPct(pct: number): void;
66
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
67
- name: import("mobx-state-tree").ISimpleType<string>;
68
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
69
- progressPct: import("mobx-state-tree").ISimpleType<number>;
66
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
67
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
68
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
69
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
70
70
  }, {
71
71
  cancelCallback(): void;
72
72
  } & {
73
73
  setCancelCallback(cancelCallback: () => void): void;
74
74
  setStatusMessage(message?: string): void;
75
75
  setProgressPct(pct: number): void;
76
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
76
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
77
77
  removeJob(jobName: string): ({
78
78
  name: string;
79
79
  statusMessage: string | undefined;
80
80
  progressPct: number;
81
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
81
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
82
82
  cancelCallback(): void;
83
83
  } & {
84
84
  setCancelCallback(cancelCallback: () => void): void;
85
85
  setStatusMessage(message?: string): void;
86
86
  setProgressPct(pct: number): void;
87
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
88
- name: import("mobx-state-tree").ISimpleType<string>;
89
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
90
- progressPct: import("mobx-state-tree").ISimpleType<number>;
87
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
88
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
89
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
90
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
91
91
  }, {
92
92
  cancelCallback(): void;
93
93
  } & {
94
94
  setCancelCallback(cancelCallback: () => void): void;
95
95
  setStatusMessage(message?: string): void;
96
96
  setProgressPct(pct: number): void;
97
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
97
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
98
98
  addFinishedJob(job: NewJob): ({
99
99
  name: string;
100
100
  statusMessage: string | undefined;
101
101
  progressPct: number;
102
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
102
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
103
103
  cancelCallback(): void;
104
104
  } & {
105
105
  setCancelCallback(cancelCallback: () => void): void;
106
106
  setStatusMessage(message?: string): void;
107
107
  setProgressPct(pct: number): void;
108
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
109
- name: import("mobx-state-tree").ISimpleType<string>;
110
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
111
- progressPct: import("mobx-state-tree").ISimpleType<number>;
108
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
109
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
110
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
111
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
112
112
  }, {
113
113
  cancelCallback(): void;
114
114
  } & {
115
115
  setCancelCallback(cancelCallback: () => void): void;
116
116
  setStatusMessage(message?: string): void;
117
117
  setProgressPct(pct: number): void;
118
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
118
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
119
119
  addQueuedJob(job: NewJob): ({
120
120
  name: string;
121
121
  statusMessage: string | undefined;
122
122
  progressPct: number;
123
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
123
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
124
124
  cancelCallback(): void;
125
125
  } & {
126
126
  setCancelCallback(cancelCallback: () => void): void;
127
127
  setStatusMessage(message?: string): void;
128
128
  setProgressPct(pct: number): void;
129
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
130
- name: import("mobx-state-tree").ISimpleType<string>;
131
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
132
- progressPct: import("mobx-state-tree").ISimpleType<number>;
129
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
130
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
131
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
132
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
133
133
  }, {
134
134
  cancelCallback(): void;
135
135
  } & {
136
136
  setCancelCallback(cancelCallback: () => void): void;
137
137
  setStatusMessage(message?: string): void;
138
138
  setProgressPct(pct: number): void;
139
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
139
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
140
140
  addAbortedJob(job: NewJob): ({
141
141
  name: string;
142
142
  statusMessage: string | undefined;
143
143
  progressPct: number;
144
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
144
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
145
145
  cancelCallback(): void;
146
146
  } & {
147
147
  setCancelCallback(cancelCallback: () => void): void;
148
148
  setStatusMessage(message?: string): void;
149
149
  setProgressPct(pct: number): void;
150
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
151
- name: import("mobx-state-tree").ISimpleType<string>;
152
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
153
- progressPct: import("mobx-state-tree").ISimpleType<number>;
150
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
151
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
152
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
153
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
154
154
  }, {
155
155
  cancelCallback(): void;
156
156
  } & {
157
157
  setCancelCallback(cancelCallback: () => void): void;
158
158
  setStatusMessage(message?: string): void;
159
159
  setProgressPct(pct: number): void;
160
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
160
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
161
161
  removeQueuedJob(jobName: string): ({
162
162
  name: string;
163
163
  statusMessage: string | undefined;
164
164
  progressPct: number;
165
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
165
+ } & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject & {
166
166
  cancelCallback(): void;
167
167
  } & {
168
168
  setCancelCallback(cancelCallback: () => void): void;
169
169
  setStatusMessage(message?: string): void;
170
170
  setProgressPct(pct: number): void;
171
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
172
- name: import("mobx-state-tree").ISimpleType<string>;
173
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
174
- progressPct: import("mobx-state-tree").ISimpleType<number>;
171
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
172
+ name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
173
+ statusMessage: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
174
+ progressPct: import("@jbrowse/mobx-state-tree").ISimpleType<number>;
175
175
  }, {
176
176
  cancelCallback(): void;
177
177
  } & {
178
178
  setCancelCallback(cancelCallback: () => void): void;
179
179
  setStatusMessage(message?: string): void;
180
180
  setProgressPct(pct: number): void;
181
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
181
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
182
182
  updateJobStatusMessage(jobName: string, message?: string): void;
183
183
  updateJobProgressPct(jobName: string, pct: number): void;
184
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
184
+ }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
185
185
  export type JobsListStateModel = ReturnType<typeof stateModelFactory>;
186
186
  export type JobsListModel = Instance<JobsListStateModel>;
@@ -1,6 +1,6 @@
1
1
  import { ElementId } from '@jbrowse/core/util/types/mst';
2
- import { types } from 'mobx-state-tree';
3
- import { Job } from './jobModel';
2
+ import { types } from '@jbrowse/mobx-state-tree';
3
+ import { Job } from "./jobModel.js";
4
4
  export function stateModelFactory(_pluginManager) {
5
5
  return types
6
6
  .model('JobsListModel', {
@@ -24,11 +24,11 @@ export function stateModelFactory(_pluginManager) {
24
24
  return addedJob;
25
25
  },
26
26
  removeJob(jobName) {
27
- const indx = self.jobs.findIndex(job => job.name === jobName);
28
- if (indx === -1) {
27
+ const index = self.jobs.findIndex(job => job.name === jobName);
28
+ if (index === -1) {
29
29
  return undefined;
30
30
  }
31
- const removed = self.jobs.splice(indx, 1);
31
+ const removed = self.jobs.splice(index, 1);
32
32
  return removed[0];
33
33
  },
34
34
  addFinishedJob(job) {
@@ -56,11 +56,11 @@ export function stateModelFactory(_pluginManager) {
56
56
  return self.aborted[length - 1];
57
57
  },
58
58
  removeQueuedJob(jobName) {
59
- const indx = self.queued.findIndex(job => job.name === jobName);
60
- if (indx === -1) {
59
+ const index = self.queued.findIndex(job => job.name === jobName);
60
+ if (index === -1) {
61
61
  return undefined;
62
62
  }
63
- const removed = self.queued.splice(indx, 1);
63
+ const removed = self.queued.splice(index, 1);
64
64
  return removed[0];
65
65
  },
66
66
  updateJobStatusMessage(jobName, message) {
package/esm/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import Plugin from '@jbrowse/core/Plugin';
2
2
  import type PluginManager from '@jbrowse/core/PluginManager';
3
+ export type { JobsListModel } from './JobsListWidget/model.ts';
3
4
  export default class JobsManagementPlugin extends Plugin {
4
5
  name: string;
5
6
  install(pluginManager: PluginManager): void;
package/esm/index.js CHANGED
@@ -1,12 +1,9 @@
1
1
  import Plugin from '@jbrowse/core/Plugin';
2
2
  import { Indexing } from '@jbrowse/core/ui/Icons';
3
3
  import { isAbstractMenuManager, isSessionModelWithWidgets, } from '@jbrowse/core/util';
4
- import JobsListWidgetF from './JobsListWidget';
4
+ import JobsListWidgetF from "./JobsListWidget/index.js";
5
5
  export default class JobsManagementPlugin extends Plugin {
6
- constructor() {
7
- super(...arguments);
8
- this.name = 'JobsManagementPlugin';
9
- }
6
+ name = 'JobsManagementPlugin';
10
7
  install(pluginManager) {
11
8
  JobsListWidgetF(pluginManager);
12
9
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-jobs-management",
3
- "version": "3.6.5",
3
+ "version": "4.0.0",
4
4
  "description": "JBrowse 2 jobs management",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -15,44 +15,37 @@
15
15
  "directory": "plugins/jobs-management"
16
16
  },
17
17
  "author": "JBrowse Team",
18
- "distMain": "dist/index.js",
19
- "srcMain": "src/index.ts",
20
- "main": "dist/index.js",
18
+ "main": "esm/index.js",
21
19
  "files": [
22
- "dist",
23
20
  "esm"
24
21
  ],
25
- "scripts": {
26
- "build": "npm-run-all build:*",
27
- "test": "cd ../..; jest --passWithNoTests plugins/jobs-management",
28
- "prepublishOnly": "yarn test",
29
- "prepack": "yarn build && yarn useDist",
30
- "postpack": "yarn useSrc",
31
- "useDist": "node ../../scripts/useDist.js",
32
- "useSrc": "node ../../scripts/useSrc.js",
33
- "prebuild": "npm run clean",
34
- "build:esm": "tsc --build tsconfig.build.esm.json",
35
- "build:commonjs": "tsc --build tsconfig.build.commonjs.json",
36
- "clean": "rimraf dist esm *.tsbuildinfo"
37
- },
38
22
  "dependencies": {
39
- "@jbrowse/core": "^3.6.5",
40
- "@jbrowse/text-indexing": "^3.6.5",
41
- "@mui/icons-material": "^7.0.0",
42
- "@mui/material": "^7.0.0",
43
- "mobx": "^6.0.0",
44
- "mobx-react": "^9.0.0",
45
- "mobx-state-tree": "^5.0.0",
46
- "tss-react": "^4.0.0"
23
+ "@jbrowse/mobx-state-tree": "^5.5.0",
24
+ "@mui/icons-material": "^7.3.6",
25
+ "@mui/material": "^7.3.6",
26
+ "mobx": "^6.15.0",
27
+ "mobx-react": "^9.2.1",
28
+ "@jbrowse/core": "^4.0.0"
47
29
  },
48
30
  "peerDependencies": {
49
31
  "react": ">=18.0.0"
50
32
  },
51
- "distModule": "esm/index.js",
52
- "srcModule": "src/index.ts",
53
- "module": "esm/index.js",
54
33
  "publishConfig": {
55
34
  "access": "public"
56
35
  },
57
- "gitHead": "354d0a87b757b4d84f824b47507662f6f3a1693f"
58
- }
36
+ "sideEffects": false,
37
+ "scripts": {
38
+ "build": "pnpm run /^build:/",
39
+ "test": "cd ../..; jest --passWithNoTests plugins/jobs-management",
40
+ "prebuild": "pnpm clean",
41
+ "build:esm": "tsc -p tsconfig.build.esm.json",
42
+ "clean": "rimraf esm *.tsbuildinfo"
43
+ },
44
+ "types": "esm/index.d.ts",
45
+ "exports": {
46
+ ".": {
47
+ "types": "./esm/index.d.ts",
48
+ "import": "./esm/index.js"
49
+ }
50
+ }
51
+ }
@@ -1,5 +0,0 @@
1
- import type { NewJob } from '../model';
2
- declare const CurrentJobCard: ({ job, }: {
3
- job: NewJob;
4
- }) => import("react/jsx-runtime").JSX.Element;
5
- export default CurrentJobCard;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const jsx_runtime_1 = require("react/jsx-runtime");
4
- const react_1 = require("react");
5
- const material_1 = require("@mui/material");
6
- const mobx_react_1 = require("mobx-react");
7
- const CurrentJobCard = (0, mobx_react_1.observer)(function CurrentJobCard({ job, }) {
8
- const [clicked, setClicked] = (0, react_1.useState)(false);
9
- return ((0, jsx_runtime_1.jsxs)(material_1.Card, { variant: "outlined", children: [(0, jsx_runtime_1.jsxs)(material_1.CardContent, { children: [(0, jsx_runtime_1.jsxs)(material_1.Typography, { variant: "body1", children: [(0, jsx_runtime_1.jsx)("strong", { children: 'Name: ' }), job.name] }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { variant: "body1", children: [(0, jsx_runtime_1.jsx)("strong", { children: 'Message: ' }), job.statusMessage || 'No message provided'] }), (0, jsx_runtime_1.jsx)(material_1.Box, { sx: {
10
- display: 'flex',
11
- alignItems: 'center',
12
- marginTop: 10,
13
- marginBottom: 10,
14
- marginLeft: 10,
15
- }, children: job.progressPct === 0 || job.progressPct === 100 ? ((0, jsx_runtime_1.jsx)(material_1.Box, { sx: { width: '100%' }, children: (0, jsx_runtime_1.jsx)(material_1.LinearProgress, { variant: "indeterminate" }) })) : ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Box, { sx: { width: '100%' }, children: (0, jsx_runtime_1.jsx)(material_1.LinearProgress, { variant: "determinate", value: job.progressPct }) }), (0, jsx_runtime_1.jsx)(material_1.Box, { sx: { m: 1 }, children: (0, jsx_runtime_1.jsx)(material_1.Typography, { children: `${Math.round(job.progressPct || 0)}%` }) })] })) })] }), (0, jsx_runtime_1.jsx)(material_1.CardActions, { children: (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", color: "inherit", disabled: clicked || job.progressPct === 0, onClick: () => {
16
- job.setStatusMessage('Aborted via cancel button');
17
- job.cancelCallback();
18
- setClicked(true);
19
- }, children: "Cancel" }) })] }));
20
- });
21
- exports.default = CurrentJobCard;
@@ -1,5 +0,0 @@
1
- import type { NewJob } from '../model';
2
- declare const JobCard: ({ job }: {
3
- job: NewJob;
4
- }) => import("react/jsx-runtime").JSX.Element;
5
- export default JobCard;
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const jsx_runtime_1 = require("react/jsx-runtime");
4
- const material_1 = require("@mui/material");
5
- const mobx_react_1 = require("mobx-react");
6
- const JobCard = (0, mobx_react_1.observer)(function JobCard({ job }) {
7
- return ((0, jsx_runtime_1.jsx)(material_1.Card, { variant: "outlined", children: (0, jsx_runtime_1.jsxs)(material_1.CardContent, { children: [(0, jsx_runtime_1.jsxs)(material_1.Typography, { variant: "body1", children: [(0, jsx_runtime_1.jsx)("strong", { children: 'Name: ' }), job.name] }), job.statusMessage ? ((0, jsx_runtime_1.jsxs)(material_1.Typography, { variant: "body1", children: [(0, jsx_runtime_1.jsx)("strong", { children: 'Message: ' }), job.statusMessage] })) : null] }) }));
8
- });
9
- exports.default = JobCard;
@@ -1,5 +0,0 @@
1
- import type { JobsListModel } from '../model';
2
- declare const JobsListWidget: ({ model }: {
3
- model: JobsListModel;
4
- }) => import("react/jsx-runtime").JSX.Element;
5
- export default JobsListWidget;
@@ -1,26 +0,0 @@
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
- const jsx_runtime_1 = require("react/jsx-runtime");
7
- const ExpandMore_1 = __importDefault(require("@mui/icons-material/ExpandMore"));
8
- const material_1 = require("@mui/material");
9
- const mobx_react_1 = require("mobx-react");
10
- const mui_1 = require("tss-react/mui");
11
- const CurrentJobCard_1 = __importDefault(require("./CurrentJobCard"));
12
- const JobCard_1 = __importDefault(require("./JobCard"));
13
- const useStyles = (0, mui_1.makeStyles)()(theme => ({
14
- root: {
15
- margin: theme.spacing(1),
16
- },
17
- expandIcon: {
18
- color: theme.palette.tertiary.contrastText,
19
- },
20
- }));
21
- const JobsListWidget = (0, mobx_react_1.observer)(function ({ model }) {
22
- const { classes } = useStyles();
23
- const { jobs, finished, queued, aborted } = model;
24
- return ((0, jsx_runtime_1.jsxs)("div", { className: classes.root, children: [(0, jsx_runtime_1.jsxs)(material_1.Accordion, { defaultExpanded: true, children: [(0, jsx_runtime_1.jsx)(material_1.AccordionSummary, { expandIcon: (0, jsx_runtime_1.jsx)(ExpandMore_1.default, { className: classes.expandIcon }), children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Running jobs" }) }), jobs.length ? (jobs.map((job, index) => ((0, jsx_runtime_1.jsx)(CurrentJobCard_1.default, { job: job }, `${JSON.stringify(job)}-${index}`)))) : ((0, jsx_runtime_1.jsx)(material_1.Card, { variant: "outlined", children: (0, jsx_runtime_1.jsx)(material_1.CardContent, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body1", children: "No running jobs" }) }) }))] }), (0, jsx_runtime_1.jsxs)(material_1.Accordion, { defaultExpanded: true, children: [(0, jsx_runtime_1.jsx)(material_1.AccordionSummary, { expandIcon: (0, jsx_runtime_1.jsx)(ExpandMore_1.default, { className: classes.expandIcon }), children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Queued jobs" }) }), queued.length ? (queued.map((job, index) => ((0, jsx_runtime_1.jsx)(JobCard_1.default, { job: job }, `${JSON.stringify(job)}-${index}`)))) : ((0, jsx_runtime_1.jsx)(material_1.Card, { variant: "outlined", children: (0, jsx_runtime_1.jsx)(material_1.CardContent, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body1", children: "No queued jobs" }) }) }))] }), (0, jsx_runtime_1.jsxs)(material_1.Accordion, { defaultExpanded: true, children: [(0, jsx_runtime_1.jsx)(material_1.AccordionSummary, { expandIcon: (0, jsx_runtime_1.jsx)(ExpandMore_1.default, { className: classes.expandIcon }), children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Completed jobs" }) }), finished.length ? (finished.map((job, index) => ((0, jsx_runtime_1.jsx)(JobCard_1.default, { job: job }, `${JSON.stringify(job)}-${index}`)))) : ((0, jsx_runtime_1.jsx)(material_1.Card, { variant: "outlined", children: (0, jsx_runtime_1.jsx)(material_1.CardContent, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body1", children: "No completed jobs" }) }) }))] }), (0, jsx_runtime_1.jsxs)(material_1.Accordion, { defaultExpanded: true, children: [(0, jsx_runtime_1.jsx)(material_1.AccordionSummary, { expandIcon: (0, jsx_runtime_1.jsx)(ExpandMore_1.default, { className: classes.expandIcon }), children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "h5", children: "Aborted jobs" }) }), aborted.length ? (aborted.map((job, index) => ((0, jsx_runtime_1.jsx)(JobCard_1.default, { job: job }, `${JSON.stringify(job)}-${index}`)))) : ((0, jsx_runtime_1.jsx)(material_1.Card, { variant: "outlined", children: (0, jsx_runtime_1.jsx)(material_1.CardContent, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body1", children: "No aborted jobs" }) }) }))] })] }));
25
- });
26
- exports.default = JobsListWidget;
@@ -1,3 +0,0 @@
1
- import type PluginManager from '@jbrowse/core/PluginManager';
2
- export declare const configSchema: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
3
- export default function JobsListWidgetF(pluginManager: PluginManager): void;
@@ -1,53 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.configSchema = void 0;
37
- exports.default = JobsListWidgetF;
38
- const react_1 = require("react");
39
- const configuration_1 = require("@jbrowse/core/configuration");
40
- const pluggableElementTypes_1 = require("@jbrowse/core/pluggableElementTypes");
41
- const model_1 = require("./model");
42
- exports.configSchema = (0, configuration_1.ConfigurationSchema)('JobsListWidget', {});
43
- function JobsListWidgetF(pluginManager) {
44
- pluginManager.addWidgetType(() => {
45
- return new pluggableElementTypes_1.WidgetType({
46
- name: 'JobsListWidget',
47
- heading: 'Jobs list',
48
- configSchema: exports.configSchema,
49
- stateModel: (0, model_1.stateModelFactory)(pluginManager),
50
- ReactComponent: (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('./components/JobsListWidget')))),
51
- });
52
- });
53
- }
@@ -1,11 +0,0 @@
1
- export declare const Job: import("mobx-state-tree").IModelType<{
2
- name: import("mobx-state-tree").ISimpleType<string>;
3
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
4
- progressPct: import("mobx-state-tree").ISimpleType<number>;
5
- }, {
6
- cancelCallback(): void;
7
- } & {
8
- setCancelCallback(cancelCallback: () => void): void;
9
- setStatusMessage(message?: string): void;
10
- setProgressPct(pct: number): void;
11
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Job = void 0;
4
- const mobx_state_tree_1 = require("mobx-state-tree");
5
- exports.Job = mobx_state_tree_1.types
6
- .model('Job', {
7
- name: mobx_state_tree_1.types.string,
8
- statusMessage: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.string),
9
- progressPct: mobx_state_tree_1.types.number,
10
- })
11
- .volatile(() => ({
12
- cancelCallback() { },
13
- }))
14
- .actions(self => ({
15
- setCancelCallback(cancelCallback) {
16
- self.cancelCallback = cancelCallback;
17
- },
18
- setStatusMessage(message) {
19
- self.statusMessage = message;
20
- },
21
- setProgressPct(pct) {
22
- self.progressPct = pct;
23
- },
24
- }));
@@ -1,186 +0,0 @@
1
- import { Job } from './jobModel';
2
- import type PluginManager from '@jbrowse/core/PluginManager';
3
- import type { Instance, SnapshotIn } from 'mobx-state-tree';
4
- export interface NewJob extends SnapshotIn<typeof Job> {
5
- cancelCallback(): void;
6
- setStatusMessage(msg?: string): void;
7
- }
8
- export declare function stateModelFactory(_pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
9
- id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
10
- type: import("mobx-state-tree").ISimpleType<"JobsListWidget">;
11
- jobs: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
12
- name: import("mobx-state-tree").ISimpleType<string>;
13
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
14
- progressPct: import("mobx-state-tree").ISimpleType<number>;
15
- }, {
16
- cancelCallback(): void;
17
- } & {
18
- setCancelCallback(cancelCallback: () => void): void;
19
- setStatusMessage(message?: string): void;
20
- setProgressPct(pct: number): void;
21
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
22
- finished: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
23
- name: import("mobx-state-tree").ISimpleType<string>;
24
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
25
- progressPct: import("mobx-state-tree").ISimpleType<number>;
26
- }, {
27
- cancelCallback(): void;
28
- } & {
29
- setCancelCallback(cancelCallback: () => void): void;
30
- setStatusMessage(message?: string): void;
31
- setProgressPct(pct: number): void;
32
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
33
- queued: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
34
- name: import("mobx-state-tree").ISimpleType<string>;
35
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
36
- progressPct: import("mobx-state-tree").ISimpleType<number>;
37
- }, {
38
- cancelCallback(): void;
39
- } & {
40
- setCancelCallback(cancelCallback: () => void): void;
41
- setStatusMessage(message?: string): void;
42
- setProgressPct(pct: number): void;
43
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
44
- aborted: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
45
- name: import("mobx-state-tree").ISimpleType<string>;
46
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
47
- progressPct: import("mobx-state-tree").ISimpleType<number>;
48
- }, {
49
- cancelCallback(): void;
50
- } & {
51
- setCancelCallback(cancelCallback: () => void): void;
52
- setStatusMessage(message?: string): void;
53
- setProgressPct(pct: number): void;
54
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
55
- }, {
56
- addJob(job: NewJob): {
57
- name: string;
58
- statusMessage: string | undefined;
59
- progressPct: number;
60
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
61
- cancelCallback(): void;
62
- } & {
63
- setCancelCallback(cancelCallback: () => void): void;
64
- setStatusMessage(message?: string): void;
65
- setProgressPct(pct: number): void;
66
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
67
- name: import("mobx-state-tree").ISimpleType<string>;
68
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
69
- progressPct: import("mobx-state-tree").ISimpleType<number>;
70
- }, {
71
- cancelCallback(): void;
72
- } & {
73
- setCancelCallback(cancelCallback: () => void): void;
74
- setStatusMessage(message?: string): void;
75
- setProgressPct(pct: number): void;
76
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
77
- removeJob(jobName: string): ({
78
- name: string;
79
- statusMessage: string | undefined;
80
- progressPct: number;
81
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
82
- cancelCallback(): void;
83
- } & {
84
- setCancelCallback(cancelCallback: () => void): void;
85
- setStatusMessage(message?: string): void;
86
- setProgressPct(pct: number): void;
87
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
88
- name: import("mobx-state-tree").ISimpleType<string>;
89
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
90
- progressPct: import("mobx-state-tree").ISimpleType<number>;
91
- }, {
92
- cancelCallback(): void;
93
- } & {
94
- setCancelCallback(cancelCallback: () => void): void;
95
- setStatusMessage(message?: string): void;
96
- setProgressPct(pct: number): void;
97
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
98
- addFinishedJob(job: NewJob): ({
99
- name: string;
100
- statusMessage: string | undefined;
101
- progressPct: number;
102
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
103
- cancelCallback(): void;
104
- } & {
105
- setCancelCallback(cancelCallback: () => void): void;
106
- setStatusMessage(message?: string): void;
107
- setProgressPct(pct: number): void;
108
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
109
- name: import("mobx-state-tree").ISimpleType<string>;
110
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
111
- progressPct: import("mobx-state-tree").ISimpleType<number>;
112
- }, {
113
- cancelCallback(): void;
114
- } & {
115
- setCancelCallback(cancelCallback: () => void): void;
116
- setStatusMessage(message?: string): void;
117
- setProgressPct(pct: number): void;
118
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
119
- addQueuedJob(job: NewJob): ({
120
- name: string;
121
- statusMessage: string | undefined;
122
- progressPct: number;
123
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
124
- cancelCallback(): void;
125
- } & {
126
- setCancelCallback(cancelCallback: () => void): void;
127
- setStatusMessage(message?: string): void;
128
- setProgressPct(pct: number): void;
129
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
130
- name: import("mobx-state-tree").ISimpleType<string>;
131
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
132
- progressPct: import("mobx-state-tree").ISimpleType<number>;
133
- }, {
134
- cancelCallback(): void;
135
- } & {
136
- setCancelCallback(cancelCallback: () => void): void;
137
- setStatusMessage(message?: string): void;
138
- setProgressPct(pct: number): void;
139
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
140
- addAbortedJob(job: NewJob): ({
141
- name: string;
142
- statusMessage: string | undefined;
143
- progressPct: number;
144
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
145
- cancelCallback(): void;
146
- } & {
147
- setCancelCallback(cancelCallback: () => void): void;
148
- setStatusMessage(message?: string): void;
149
- setProgressPct(pct: number): void;
150
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
151
- name: import("mobx-state-tree").ISimpleType<string>;
152
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
153
- progressPct: import("mobx-state-tree").ISimpleType<number>;
154
- }, {
155
- cancelCallback(): void;
156
- } & {
157
- setCancelCallback(cancelCallback: () => void): void;
158
- setStatusMessage(message?: string): void;
159
- setProgressPct(pct: number): void;
160
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
161
- removeQueuedJob(jobName: string): ({
162
- name: string;
163
- statusMessage: string | undefined;
164
- progressPct: number;
165
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
166
- cancelCallback(): void;
167
- } & {
168
- setCancelCallback(cancelCallback: () => void): void;
169
- setStatusMessage(message?: string): void;
170
- setProgressPct(pct: number): void;
171
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
172
- name: import("mobx-state-tree").ISimpleType<string>;
173
- statusMessage: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
174
- progressPct: import("mobx-state-tree").ISimpleType<number>;
175
- }, {
176
- cancelCallback(): void;
177
- } & {
178
- setCancelCallback(cancelCallback: () => void): void;
179
- setStatusMessage(message?: string): void;
180
- setProgressPct(pct: number): void;
181
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
182
- updateJobStatusMessage(jobName: string, message?: string): void;
183
- updateJobProgressPct(jobName: string, pct: number): void;
184
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
185
- export type JobsListStateModel = ReturnType<typeof stateModelFactory>;
186
- export type JobsListModel = Instance<JobsListStateModel>;
@@ -1,84 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.stateModelFactory = stateModelFactory;
4
- const mst_1 = require("@jbrowse/core/util/types/mst");
5
- const mobx_state_tree_1 = require("mobx-state-tree");
6
- const jobModel_1 = require("./jobModel");
7
- function stateModelFactory(_pluginManager) {
8
- return mobx_state_tree_1.types
9
- .model('JobsListModel', {
10
- id: mst_1.ElementId,
11
- type: mobx_state_tree_1.types.literal('JobsListWidget'),
12
- jobs: mobx_state_tree_1.types.array(jobModel_1.Job),
13
- finished: mobx_state_tree_1.types.array(jobModel_1.Job),
14
- queued: mobx_state_tree_1.types.array(jobModel_1.Job),
15
- aborted: mobx_state_tree_1.types.array(jobModel_1.Job),
16
- })
17
- .actions(self => ({
18
- addJob(job) {
19
- const { cancelCallback, name } = job;
20
- const existing = self.jobs.find(job => job.name === name);
21
- if (existing) {
22
- return existing;
23
- }
24
- const length = self.jobs.push(job);
25
- const addedJob = self.jobs[length - 1];
26
- addedJob.setCancelCallback(cancelCallback);
27
- return addedJob;
28
- },
29
- removeJob(jobName) {
30
- const indx = self.jobs.findIndex(job => job.name === jobName);
31
- if (indx === -1) {
32
- return undefined;
33
- }
34
- const removed = self.jobs.splice(indx, 1);
35
- return removed[0];
36
- },
37
- addFinishedJob(job) {
38
- const existing = self.finished.find(finishedJob => finishedJob.name === job.name);
39
- if (existing) {
40
- return existing;
41
- }
42
- const length = self.finished.push(job);
43
- return self.finished[length - 1];
44
- },
45
- addQueuedJob(job) {
46
- const existing = self.queued.find(queuedJob => queuedJob.name === job.name);
47
- if (existing) {
48
- return existing;
49
- }
50
- const length = self.queued.push(job);
51
- return self.queued[length - 1];
52
- },
53
- addAbortedJob(job) {
54
- const existing = self.aborted.find(abortedJob => abortedJob.name === job.name);
55
- if (existing) {
56
- return existing;
57
- }
58
- const length = self.aborted.push(job);
59
- return self.aborted[length - 1];
60
- },
61
- removeQueuedJob(jobName) {
62
- const indx = self.queued.findIndex(job => job.name === jobName);
63
- if (indx === -1) {
64
- return undefined;
65
- }
66
- const removed = self.queued.splice(indx, 1);
67
- return removed[0];
68
- },
69
- updateJobStatusMessage(jobName, message) {
70
- const job = self.jobs.find(job => job.name === jobName);
71
- if (!job) {
72
- throw new Error(`No job found with name ${jobName}`);
73
- }
74
- job.setStatusMessage(message);
75
- },
76
- updateJobProgressPct(jobName, pct) {
77
- const job = self.jobs.find(job => job.name === jobName);
78
- if (!job) {
79
- throw new Error(`No job found with name ${jobName}`);
80
- }
81
- job.setProgressPct(pct);
82
- },
83
- }));
84
- }
package/dist/index.d.ts DELETED
@@ -1,7 +0,0 @@
1
- import Plugin from '@jbrowse/core/Plugin';
2
- import type PluginManager from '@jbrowse/core/PluginManager';
3
- export default class JobsManagementPlugin extends Plugin {
4
- name: string;
5
- install(pluginManager: PluginManager): void;
6
- configure(pluginManager: PluginManager): void;
7
- }
package/dist/index.js DELETED
@@ -1,40 +0,0 @@
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
- const Plugin_1 = __importDefault(require("@jbrowse/core/Plugin"));
7
- const Icons_1 = require("@jbrowse/core/ui/Icons");
8
- const util_1 = require("@jbrowse/core/util");
9
- const JobsListWidget_1 = __importDefault(require("./JobsListWidget"));
10
- class JobsManagementPlugin extends Plugin_1.default {
11
- constructor() {
12
- super(...arguments);
13
- this.name = 'JobsManagementPlugin';
14
- }
15
- install(pluginManager) {
16
- (0, JobsListWidget_1.default)(pluginManager);
17
- }
18
- configure(pluginManager) {
19
- if ((0, util_1.isAbstractMenuManager)(pluginManager.rootModel)) {
20
- pluginManager.rootModel.appendToMenu('Tools', {
21
- label: 'Jobs list',
22
- icon: Icons_1.Indexing,
23
- onClick: (session) => {
24
- if ((0, util_1.isSessionModelWithWidgets)(session)) {
25
- const { widgets } = session;
26
- let jobStatusWidget = widgets.get('JobsList');
27
- if (!jobStatusWidget) {
28
- jobStatusWidget = session.addWidget('JobsListWidget', 'JobsList');
29
- session.showWidget(jobStatusWidget);
30
- }
31
- else {
32
- session.showWidget(jobStatusWidget);
33
- }
34
- }
35
- },
36
- });
37
- }
38
- }
39
- }
40
- exports.default = JobsManagementPlugin;