@apollo-annotation/cli 1.1.0 → 1.1.2

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 (161) hide show
  1. package/README.md +133 -87
  2. package/dist/ApolloConf.d.ts.map +1 -1
  3. package/dist/ApolloConf.js +14 -3
  4. package/dist/ApolloConf.js.map +1 -1
  5. package/dist/baseCommand.d.ts +37 -1
  6. package/dist/baseCommand.d.ts.map +1 -1
  7. package/dist/baseCommand.js +226 -9
  8. package/dist/baseCommand.js.map +1 -1
  9. package/dist/commands/assembly/add-from-fasta.d.ts +8 -8
  10. package/dist/commands/assembly/add-from-fasta.d.ts.map +1 -1
  11. package/dist/commands/assembly/add-from-fasta.js +20 -16
  12. package/dist/commands/assembly/add-from-fasta.js.map +1 -1
  13. package/dist/commands/assembly/add-from-gff.d.ts +5 -5
  14. package/dist/commands/assembly/add-from-gff.d.ts.map +1 -1
  15. package/dist/commands/assembly/add-from-gff.js +2 -4
  16. package/dist/commands/assembly/add-from-gff.js.map +1 -1
  17. package/dist/commands/assembly/check.d.ts +3 -3
  18. package/dist/commands/assembly/check.d.ts.map +1 -1
  19. package/dist/commands/assembly/check.js +10 -48
  20. package/dist/commands/assembly/check.js.map +1 -1
  21. package/dist/commands/assembly/delete.d.ts +2 -2
  22. package/dist/commands/assembly/delete.d.ts.map +1 -1
  23. package/dist/commands/assembly/delete.js +4 -5
  24. package/dist/commands/assembly/delete.js.map +1 -1
  25. package/dist/commands/assembly/get.d.ts +1 -1
  26. package/dist/commands/assembly/get.d.ts.map +1 -1
  27. package/dist/commands/assembly/get.js +3 -5
  28. package/dist/commands/assembly/get.js.map +1 -1
  29. package/dist/commands/assembly/sequence.d.ts +4 -4
  30. package/dist/commands/assembly/sequence.d.ts.map +1 -1
  31. package/dist/commands/assembly/sequence.js +9 -29
  32. package/dist/commands/assembly/sequence.js.map +1 -1
  33. package/dist/commands/change/get.d.ts +1 -1
  34. package/dist/commands/change/get.d.ts.map +1 -1
  35. package/dist/commands/change/get.js +3 -5
  36. package/dist/commands/change/get.js.map +1 -1
  37. package/dist/commands/config.d.ts +4 -4
  38. package/dist/commands/config.d.ts.map +1 -1
  39. package/dist/commands/config.js +12 -19
  40. package/dist/commands/config.js.map +1 -1
  41. package/dist/commands/export/gff3.d.ts +2 -2
  42. package/dist/commands/export/gff3.d.ts.map +1 -1
  43. package/dist/commands/export/gff3.js +4 -26
  44. package/dist/commands/export/gff3.js.map +1 -1
  45. package/dist/commands/feature/add-child.d.ts +4 -4
  46. package/dist/commands/feature/add-child.d.ts.map +1 -1
  47. package/dist/commands/feature/add-child.js +6 -32
  48. package/dist/commands/feature/add-child.js.map +1 -1
  49. package/dist/commands/feature/add.d.ts +7 -18
  50. package/dist/commands/feature/add.d.ts.map +1 -1
  51. package/dist/commands/feature/add.js +4 -57
  52. package/dist/commands/feature/add.js.map +1 -1
  53. package/dist/commands/feature/check.d.ts +3 -2
  54. package/dist/commands/feature/check.d.ts.map +1 -1
  55. package/dist/commands/feature/check.js +16 -35
  56. package/dist/commands/feature/check.js.map +1 -1
  57. package/dist/commands/feature/copy.d.ts +4 -4
  58. package/dist/commands/feature/copy.d.ts.map +1 -1
  59. package/dist/commands/feature/copy.js +6 -32
  60. package/dist/commands/feature/copy.js.map +1 -1
  61. package/dist/commands/feature/delete.d.ts +4 -3
  62. package/dist/commands/feature/delete.d.ts.map +1 -1
  63. package/dist/commands/feature/delete.js +25 -46
  64. package/dist/commands/feature/delete.js.map +1 -1
  65. package/dist/commands/feature/edit-attribute.d.ts +4 -4
  66. package/dist/commands/feature/edit-attribute.d.ts.map +1 -1
  67. package/dist/commands/feature/edit-attribute.js +4 -24
  68. package/dist/commands/feature/edit-attribute.js.map +1 -1
  69. package/dist/commands/feature/edit-coords.d.ts +3 -3
  70. package/dist/commands/feature/edit-coords.d.ts.map +1 -1
  71. package/dist/commands/feature/edit-coords.js +4 -24
  72. package/dist/commands/feature/edit-coords.js.map +1 -1
  73. package/dist/commands/feature/edit-type.d.ts +2 -2
  74. package/dist/commands/feature/edit-type.d.ts.map +1 -1
  75. package/dist/commands/feature/edit-type.js +4 -24
  76. package/dist/commands/feature/edit-type.js.map +1 -1
  77. package/dist/commands/feature/edit.d.ts +1 -1
  78. package/dist/commands/feature/edit.d.ts.map +1 -1
  79. package/dist/commands/feature/edit.js +2 -18
  80. package/dist/commands/feature/edit.js.map +1 -1
  81. package/dist/commands/feature/get-id.d.ts +1 -1
  82. package/dist/commands/feature/get-id.d.ts.map +1 -1
  83. package/dist/commands/feature/get-id.js +5 -15
  84. package/dist/commands/feature/get-id.js.map +1 -1
  85. package/dist/commands/feature/get-indexed-id.d.ts +3 -3
  86. package/dist/commands/feature/get-indexed-id.d.ts.map +1 -1
  87. package/dist/commands/feature/get-indexed-id.js +3 -20
  88. package/dist/commands/feature/get-indexed-id.js.map +1 -1
  89. package/dist/commands/feature/get.d.ts +4 -4
  90. package/dist/commands/feature/get.d.ts.map +1 -1
  91. package/dist/commands/feature/get.js +4 -21
  92. package/dist/commands/feature/get.js.map +1 -1
  93. package/dist/commands/feature/import.d.ts +4 -4
  94. package/dist/commands/feature/import.d.ts.map +1 -1
  95. package/dist/commands/feature/import.js +4 -21
  96. package/dist/commands/feature/import.js.map +1 -1
  97. package/dist/commands/feature/search.d.ts +2 -2
  98. package/dist/commands/feature/search.d.ts.map +1 -1
  99. package/dist/commands/feature/search.js +9 -28
  100. package/dist/commands/feature/search.js.map +1 -1
  101. package/dist/commands/file/delete.d.ts +2 -1
  102. package/dist/commands/file/delete.d.ts.map +1 -1
  103. package/dist/commands/file/delete.js +12 -21
  104. package/dist/commands/file/delete.js.map +1 -1
  105. package/dist/commands/file/download.d.ts +2 -2
  106. package/dist/commands/file/download.d.ts.map +1 -1
  107. package/dist/commands/file/download.js +3 -7
  108. package/dist/commands/file/download.js.map +1 -1
  109. package/dist/commands/file/get.d.ts +1 -1
  110. package/dist/commands/file/get.d.ts.map +1 -1
  111. package/dist/commands/file/get.js +2 -4
  112. package/dist/commands/file/get.js.map +1 -1
  113. package/dist/commands/file/upload.d.ts +4 -4
  114. package/dist/commands/file/upload.d.ts.map +1 -1
  115. package/dist/commands/file/upload.js +3 -7
  116. package/dist/commands/file/upload.js.map +1 -1
  117. package/dist/commands/jbrowse/desktop.d.ts +4 -4
  118. package/dist/commands/jbrowse/get-config.d.ts.map +1 -1
  119. package/dist/commands/jbrowse/get-config.js +1 -7
  120. package/dist/commands/jbrowse/get-config.js.map +1 -1
  121. package/dist/commands/jbrowse/set-config.d.ts +1 -1
  122. package/dist/commands/jbrowse/set-config.d.ts.map +1 -1
  123. package/dist/commands/jbrowse/set-config.js +1 -19
  124. package/dist/commands/jbrowse/set-config.js.map +1 -1
  125. package/dist/commands/login.d.ts +5 -5
  126. package/dist/commands/login.d.ts.map +1 -1
  127. package/dist/commands/login.js +8 -7
  128. package/dist/commands/login.js.map +1 -1
  129. package/dist/commands/logout.d.ts.map +1 -1
  130. package/dist/commands/logout.js +2 -6
  131. package/dist/commands/logout.js.map +1 -1
  132. package/dist/commands/refseq/add-alias.d.ts +2 -2
  133. package/dist/commands/refseq/add-alias.d.ts.map +1 -1
  134. package/dist/commands/refseq/add-alias.js +2 -21
  135. package/dist/commands/refseq/add-alias.js.map +1 -1
  136. package/dist/commands/refseq/get.d.ts +1 -1
  137. package/dist/commands/refseq/get.d.ts.map +1 -1
  138. package/dist/commands/refseq/get.js +3 -5
  139. package/dist/commands/refseq/get.js.map +1 -1
  140. package/dist/commands/status.d.ts.map +1 -1
  141. package/dist/commands/status.js +2 -6
  142. package/dist/commands/status.js.map +1 -1
  143. package/dist/commands/user/get.d.ts +2 -2
  144. package/dist/commands/user/get.d.ts.map +1 -1
  145. package/dist/commands/user/get.js +1 -4
  146. package/dist/commands/user/get.js.map +1 -1
  147. package/dist/fileCommand.d.ts +2 -1
  148. package/dist/fileCommand.d.ts.map +1 -1
  149. package/dist/fileCommand.js +18 -11
  150. package/dist/fileCommand.js.map +1 -1
  151. package/dist/test/test.js +154 -30
  152. package/dist/test/test.js.map +1 -1
  153. package/dist/test/utils.d.ts.map +1 -1
  154. package/dist/test/utils.js +15 -2
  155. package/dist/test/utils.js.map +1 -1
  156. package/dist/utils.d.ts +1 -21
  157. package/dist/utils.d.ts.map +1 -1
  158. package/dist/utils.js +1 -234
  159. package/dist/utils.js.map +1 -1
  160. package/oclif.manifest.json +803 -515
  161. package/package.json +14 -15
package/dist/utils.js CHANGED
@@ -1,12 +1,8 @@
1
1
  import * as crypto from 'node:crypto';
2
2
  import * as fs from 'node:fs';
3
- import { stderr, stdin } from 'node:process';
4
- import { Agent, fetch } from 'undici';
5
- import { ApolloConf, ConfigError } from './ApolloConf.js';
3
+ import { stdin } from 'node:process';
6
4
  export const CLI_SERVER_ADDRESS = 'http://127.0.0.1:5657';
7
5
  export const CLI_SERVER_ADDRESS_CALLBACK = `${CLI_SERVER_ADDRESS}/auth/callback`;
8
- export class CheckError extends Error {
9
- }
10
6
  export async function createFetchErrorMessage(response, additionalText) {
11
7
  let errorMessage;
12
8
  try {
@@ -18,21 +14,6 @@ export async function createFetchErrorMessage(response, additionalText) {
18
14
  const responseMessage = `${response.status} ${response.statusText}${errorMessage ? ` (${errorMessage})` : ''}`;
19
15
  return `${additionalText ? `${additionalText} — ` : ''}${responseMessage}`;
20
16
  }
21
- export function checkConfigfileExists(configFile) {
22
- if (!fs.existsSync(configFile)) {
23
- throw new ConfigError(`Configuration file "${configFile}" does not exist. Please run "apollo config" first`);
24
- }
25
- }
26
- export function checkProfileExists(profileName, config) {
27
- if (!config.getProfileNames().includes(profileName)) {
28
- throw new ConfigError(`Profile "${profileName}" does not exist. Please run "apollo config" to set this profile up or choose a different profile`);
29
- }
30
- }
31
- export function basicCheckConfig(configFile, profileName) {
32
- checkConfigfileExists(configFile);
33
- const config = new ApolloConf(configFile);
34
- checkProfileExists(profileName, config);
35
- }
36
17
  /**
37
18
  * @deprecated Use this function while we wait to resolve the TypeError when using localhost in fetch.
38
19
  */
@@ -42,166 +23,6 @@ export function localhostToAddress(url) {
42
23
  * */
43
24
  return url.replace('//localhost', '127.0.0.1');
44
25
  }
45
- export async function deleteAssembly(address, accessToken, assemblyId) {
46
- const body = {
47
- typeName: 'DeleteAssemblyChange',
48
- assembly: assemblyId,
49
- };
50
- const auth = {
51
- method: 'POST',
52
- body: JSON.stringify(body),
53
- headers: {
54
- Authorization: `Bearer ${accessToken}`,
55
- 'Content-Type': 'application/json',
56
- },
57
- dispatcher: new Agent({ headersTimeout: 60 * 60 * 1000 }),
58
- };
59
- const url = new URL(localhostToAddress(`${address}/changes`));
60
- const response = await fetch(url, auth);
61
- if (!response.ok) {
62
- const errorMessage = await createFetchErrorMessage(response, 'deleteAssembly failed');
63
- throw new Error(errorMessage);
64
- }
65
- }
66
- export async function getAssembly(address, accessToken, assemblyNameOrId) {
67
- const assemblyId = await convertAssemblyNameToId(address, accessToken, [assemblyNameOrId]);
68
- if (assemblyId.length === 0) {
69
- throw new Error(`Assembly "${assemblyNameOrId}" not found`);
70
- }
71
- const res = await queryApollo(address, accessToken, 'assemblies');
72
- const assemblies = (await res.json());
73
- for (const x of assemblies) {
74
- if (x._id === assemblyId[0]) {
75
- // eslint-disable-next-line unicorn/prefer-structured-clone
76
- return JSON.parse(JSON.stringify(x));
77
- }
78
- }
79
- throw new Error(`Assembly "${assemblyNameOrId}" not found`);
80
- }
81
- export async function getRefseqId(address, accessToken, refseqNameOrId, inAssemblyNameOrId) {
82
- if (refseqNameOrId === undefined && inAssemblyNameOrId === undefined) {
83
- throw new Error('Please provide refseq and/or assembly');
84
- }
85
- inAssemblyNameOrId ??= '';
86
- let assemblyId = [];
87
- if (inAssemblyNameOrId !== '') {
88
- assemblyId = await convertAssemblyNameToId(address, accessToken, [
89
- inAssemblyNameOrId,
90
- ]);
91
- if (assemblyId.length !== 1) {
92
- throw new Error(`Assembly name or assembly id returned ${assemblyId.length} assemblies instead of just one`);
93
- }
94
- }
95
- const res = await queryApollo(address, accessToken, 'refSeqs');
96
- const refSeqs = (await res.json());
97
- const refseqIds = [];
98
- const nAssemblies = new Set();
99
- for (const x of refSeqs) {
100
- const aid = x['assembly'];
101
- const rid = x['_id'];
102
- const rname = x['name'];
103
- if (refseqNameOrId === rid ||
104
- refseqNameOrId === rname ||
105
- refseqNameOrId === undefined) {
106
- if (inAssemblyNameOrId === '' || assemblyId.includes(aid)) {
107
- refseqIds.push(rid);
108
- nAssemblies.add(aid);
109
- }
110
- else {
111
- //
112
- }
113
- }
114
- if (nAssemblies.size > 1) {
115
- throw new Error(`Sequence name "${refseqNameOrId}" found in more than one assembly`);
116
- }
117
- }
118
- return refseqIds;
119
- }
120
- async function checkNameToIdDict(address, accessToken) {
121
- const asm = await queryApollo(address, accessToken, 'checks/types');
122
- const ja = (await asm.json()); // Not sure if CheckResultSnapshot is the right interface
123
- const nameToId = {};
124
- for (const x of ja) {
125
- const { _id, name } = x; // x['name' as keyof typeof x]
126
- nameToId[name] = _id; // x['_id' as keyof typeof x]
127
- }
128
- return nameToId;
129
- }
130
- export async function convertCheckNameToId(address, accessToken, namesOrIds) {
131
- const nameToId = await checkNameToIdDict(address, accessToken);
132
- const ids = [];
133
- for (const x of namesOrIds) {
134
- if (nameToId[x] !== undefined) {
135
- ids.push(nameToId[x]);
136
- }
137
- else if (Object.values(nameToId).includes(x)) {
138
- ids.push(x);
139
- }
140
- else {
141
- throw new CheckError(`Check name or id "${x}" not found`);
142
- }
143
- }
144
- return ids;
145
- }
146
- export async function assemblyNameToIdDict(address, accessToken) {
147
- const asm = await queryApollo(address, accessToken, 'assemblies');
148
- const ja = (await asm.json());
149
- const nameToId = {};
150
- for (const x of ja) {
151
- nameToId[x['name']] = x['_id'];
152
- }
153
- return nameToId;
154
- }
155
- /** In input array namesOrIds, substitute common names with internal IDs */
156
- export async function convertAssemblyNameToId(address, accessToken, namesOrIds, verbose = true, removeDuplicates = true) {
157
- const nameToId = await assemblyNameToIdDict(address, accessToken);
158
- let ids = [];
159
- for (const x of namesOrIds) {
160
- if (nameToId[x] !== undefined) {
161
- ids.push(nameToId[x]);
162
- }
163
- else if (Object.values(nameToId).includes(x)) {
164
- ids.push(x);
165
- }
166
- else if (verbose) {
167
- stderr.write(`Warning: Omitting unknown assembly: "${x}"\n`);
168
- }
169
- }
170
- if (removeDuplicates) {
171
- ids = [...new Set(ids)];
172
- }
173
- return ids;
174
- }
175
- export async function getFeatureById(address, accessToken, id) {
176
- const url = new URL(localhostToAddress(`${address}/features/${id}`));
177
- const auth = {
178
- headers: {
179
- authorization: `Bearer ${accessToken}`,
180
- },
181
- };
182
- const response = await fetch(url, auth);
183
- return response;
184
- }
185
- export async function getAssemblyFromRefseq(address, accessToken, refSeq) {
186
- const refSeqs = await queryApollo(address, accessToken, 'refSeqs');
187
- const refJson = filterJsonList((await refSeqs.json()), [refSeq], '_id');
188
- return refJson[0]['assembly'];
189
- }
190
- export async function queryApollo(address, accessToken, endpoint) {
191
- const auth = {
192
- headers: {
193
- Authorization: `Bearer ${accessToken}`,
194
- 'Content-Type': 'application/json',
195
- },
196
- };
197
- const url = new URL(localhostToAddress(`${address}/${endpoint}`));
198
- const response = await fetch(url, auth);
199
- if (!response.ok) {
200
- const errorMessage = await createFetchErrorMessage(response, 'queryApollo failed');
201
- throw new ConfigError(errorMessage);
202
- }
203
- return response;
204
- }
205
26
  export function filterJsonList(json, keep, key) {
206
27
  const unique = new Set(keep);
207
28
  const results = [];
@@ -242,47 +63,6 @@ export const waitFor = (eventName, emitter) => {
242
63
  });
243
64
  return promise;
244
65
  };
245
- export async function submitAssembly(address, accessToken, body, force) {
246
- let assemblies = await queryApollo(address, accessToken, 'assemblies');
247
- for (const x of (await assemblies.json())) {
248
- const addedAssemblies = 'changes' in body ? body.changes : [body];
249
- for (const addedAssembly of addedAssemblies) {
250
- if (x.name === addedAssembly.assemblyName) {
251
- if (force) {
252
- await deleteAssembly(address, accessToken, x._id);
253
- }
254
- else {
255
- throw new Error(`Error: Assembly "${addedAssembly.assemblyName}" already exists`);
256
- }
257
- }
258
- }
259
- }
260
- const auth = {
261
- method: 'POST',
262
- body: JSON.stringify(body),
263
- headers: {
264
- Authorization: `Bearer ${accessToken}`,
265
- 'Content-Type': 'application/json',
266
- },
267
- dispatcher: new Agent({ headersTimeout: 60 * 60 * 1000 }),
268
- };
269
- const url = new URL(localhostToAddress(`${address}/changes`));
270
- const response = await fetch(url, auth);
271
- if (!response.ok) {
272
- const errorMessage = await createFetchErrorMessage(response, 'submitAssembly failed');
273
- throw new Error(errorMessage);
274
- }
275
- assemblies = await queryApollo(address, accessToken, 'assemblies');
276
- for (const x of (await assemblies.json())) {
277
- const addedAssemblies = 'changes' in body ? body.changes : [body];
278
- for (const addedAssembly of addedAssemblies) {
279
- if (x.name === addedAssembly.assemblyName) {
280
- return x;
281
- }
282
- }
283
- }
284
- throw new Error(`Failed to retrieve assembly from ${body.assembly}`);
285
- }
286
66
  export async function readStdin() {
287
67
  const chunks = [];
288
68
  for await (const chunk of stdin) {
@@ -328,17 +108,4 @@ export async function idReader(input, removeDuplicates = true) {
328
108
  }
329
109
  return ids;
330
110
  }
331
- export async function isFileId(x, address, accessToken) {
332
- if (x.length != 24) {
333
- return false;
334
- }
335
- const files = await queryApollo(address, accessToken, 'files');
336
- const json = (await files.json());
337
- for (const fileDoc of json) {
338
- if (fileDoc['_id'] === x) {
339
- return true;
340
- }
341
- }
342
- return false;
343
- }
344
111
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}