@apollo-annotation/shared 0.3.12 → 1.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.
Files changed (170) hide show
  1. package/dist/Changes/{DeleteFeatureChange.d.ts → AddAndDeleteFeatureChanges.d.ts} +26 -11
  2. package/dist/Changes/AddAndDeleteFeatureChanges.d.ts.map +1 -0
  3. package/dist/Changes/AddAndDeleteFeatureChanges.js +117 -0
  4. package/dist/Changes/AddAndDeleteFeatureChanges.js.map +1 -0
  5. package/dist/Changes/AddAssemblyAliasesChange.d.ts +1 -4
  6. package/dist/Changes/AddAssemblyAliasesChange.d.ts.map +1 -1
  7. package/dist/Changes/AddAssemblyAliasesChange.js +0 -27
  8. package/dist/Changes/AddAssemblyAliasesChange.js.map +1 -1
  9. package/dist/Changes/AddAssemblyAndFeaturesFromFileChange.d.ts +2 -11
  10. package/dist/Changes/AddAssemblyAndFeaturesFromFileChange.d.ts.map +1 -1
  11. package/dist/Changes/AddAssemblyAndFeaturesFromFileChange.js +2 -82
  12. package/dist/Changes/AddAssemblyAndFeaturesFromFileChange.js.map +1 -1
  13. package/dist/Changes/AddAssemblyFromExternalChange.d.ts +1 -9
  14. package/dist/Changes/AddAssemblyFromExternalChange.d.ts.map +1 -1
  15. package/dist/Changes/AddAssemblyFromExternalChange.js +0 -72
  16. package/dist/Changes/AddAssemblyFromExternalChange.js.map +1 -1
  17. package/dist/Changes/AddAssemblyFromFileChange.d.ts +2 -17
  18. package/dist/Changes/AddAssemblyFromFileChange.d.ts.map +1 -1
  19. package/dist/Changes/AddAssemblyFromFileChange.js +2 -119
  20. package/dist/Changes/AddAssemblyFromFileChange.js.map +1 -1
  21. package/dist/Changes/AddFeaturesFromFileChange.d.ts +2 -11
  22. package/dist/Changes/AddFeaturesFromFileChange.d.ts.map +1 -1
  23. package/dist/Changes/AddFeaturesFromFileChange.js +2 -66
  24. package/dist/Changes/AddFeaturesFromFileChange.js.map +1 -1
  25. package/dist/Changes/AddRefSeqAliasesChange.d.ts +1 -4
  26. package/dist/Changes/AddRefSeqAliasesChange.d.ts.map +1 -1
  27. package/dist/Changes/AddRefSeqAliasesChange.js +0 -34
  28. package/dist/Changes/AddRefSeqAliasesChange.js.map +1 -1
  29. package/dist/Changes/DeleteAssemblyChange.d.ts +1 -9
  30. package/dist/Changes/DeleteAssemblyChange.d.ts.map +1 -1
  31. package/dist/Changes/DeleteAssemblyChange.js +0 -53
  32. package/dist/Changes/DeleteAssemblyChange.js.map +1 -1
  33. package/dist/Changes/DeleteUserChange.d.ts +1 -4
  34. package/dist/Changes/DeleteUserChange.d.ts.map +1 -1
  35. package/dist/Changes/DeleteUserChange.js +0 -19
  36. package/dist/Changes/DeleteUserChange.js.map +1 -1
  37. package/dist/Changes/FeatureAttributeChange.d.ts +1 -9
  38. package/dist/Changes/FeatureAttributeChange.d.ts.map +1 -1
  39. package/dist/Changes/FeatureAttributeChange.js +0 -82
  40. package/dist/Changes/FeatureAttributeChange.js.map +1 -1
  41. package/dist/Changes/ImportJBrowseConfigChange.d.ts +1 -4
  42. package/dist/Changes/ImportJBrowseConfigChange.d.ts.map +1 -1
  43. package/dist/Changes/ImportJBrowseConfigChange.js +1 -18
  44. package/dist/Changes/ImportJBrowseConfigChange.js.map +1 -1
  45. package/dist/Changes/LocationEndChange.d.ts +1 -9
  46. package/dist/Changes/LocationEndChange.d.ts.map +1 -1
  47. package/dist/Changes/LocationEndChange.js +0 -90
  48. package/dist/Changes/LocationEndChange.js.map +1 -1
  49. package/dist/Changes/LocationStartChange.d.ts +1 -9
  50. package/dist/Changes/LocationStartChange.d.ts.map +1 -1
  51. package/dist/Changes/LocationStartChange.js +0 -90
  52. package/dist/Changes/LocationStartChange.js.map +1 -1
  53. package/dist/Changes/MergeAndUndoMergeExonsChanges.d.ts +46 -0
  54. package/dist/Changes/MergeAndUndoMergeExonsChanges.d.ts.map +1 -0
  55. package/dist/Changes/MergeAndUndoMergeExonsChanges.js +83 -0
  56. package/dist/Changes/MergeAndUndoMergeExonsChanges.js.map +1 -0
  57. package/dist/Changes/{MergeTranscriptsChange.d.ts → MergeAndUndoMergeTranscriptsChanges.d.ts} +22 -6
  58. package/dist/Changes/MergeAndUndoMergeTranscriptsChanges.d.ts.map +1 -0
  59. package/dist/Changes/{MergeTranscriptsChange.js → MergeAndUndoMergeTranscriptsChanges.js} +40 -50
  60. package/dist/Changes/MergeAndUndoMergeTranscriptsChanges.js.map +1 -0
  61. package/dist/Changes/SplitAndUndoSplitExonChanges.d.ts +55 -0
  62. package/dist/Changes/SplitAndUndoSplitExonChanges.d.ts.map +1 -0
  63. package/dist/Changes/SplitAndUndoSplitExonChanges.js +115 -0
  64. package/dist/Changes/SplitAndUndoSplitExonChanges.js.map +1 -0
  65. package/dist/Changes/StrandChange.d.ts +1 -9
  66. package/dist/Changes/StrandChange.d.ts.map +1 -1
  67. package/dist/Changes/StrandChange.js +0 -77
  68. package/dist/Changes/StrandChange.js.map +1 -1
  69. package/dist/Changes/TypeChange.d.ts +1 -9
  70. package/dist/Changes/TypeChange.d.ts.map +1 -1
  71. package/dist/Changes/TypeChange.js +0 -77
  72. package/dist/Changes/TypeChange.js.map +1 -1
  73. package/dist/Changes/UserChange.d.ts +1 -4
  74. package/dist/Changes/UserChange.d.ts.map +1 -1
  75. package/dist/Changes/UserChange.js +0 -23
  76. package/dist/Changes/UserChange.js.map +1 -1
  77. package/dist/Changes/index.d.ts +29 -22
  78. package/dist/Changes/index.d.ts.map +1 -1
  79. package/dist/Changes/index.js +19 -24
  80. package/dist/Changes/index.js.map +1 -1
  81. package/dist/Validations/Validation.d.ts +2 -2
  82. package/dist/Validations/Validation.d.ts.map +1 -1
  83. package/dist/Validations/Validation.js +1 -1
  84. package/dist/Validations/Validation.js.map +1 -1
  85. package/dist/Validations/ValidationSet.d.ts +2 -2
  86. package/dist/Validations/ValidationSet.d.ts.map +1 -1
  87. package/dist/Validations/ValidationSet.js +2 -2
  88. package/dist/Validations/ValidationSet.js.map +1 -1
  89. package/dist/index.d.ts +0 -1
  90. package/dist/index.d.ts.map +1 -1
  91. package/dist/index.js +0 -1
  92. package/dist/index.js.map +1 -1
  93. package/dist/tsconfig.tsbuildinfo +1 -1
  94. package/package.json +9 -4
  95. package/src/Changes/{DeleteFeatureChange.ts → AddAndDeleteFeatureChanges.ts} +77 -107
  96. package/src/Changes/AddAssemblyAliasesChange.ts +0 -35
  97. package/src/Changes/AddAssemblyAndFeaturesFromFileChange.ts +5 -108
  98. package/src/Changes/AddAssemblyFromExternalChange.ts +0 -87
  99. package/src/Changes/AddAssemblyFromFileChange.ts +5 -169
  100. package/src/Changes/AddFeaturesFromFileChange.ts +5 -86
  101. package/src/Changes/AddRefSeqAliasesChange.ts +0 -44
  102. package/src/Changes/DeleteAssemblyChange.ts +0 -72
  103. package/src/Changes/DeleteUserChange.ts +0 -25
  104. package/src/Changes/FeatureAttributeChange.ts +0 -104
  105. package/src/Changes/ImportJBrowseConfigChange.ts +1 -27
  106. package/src/Changes/LocationEndChange.ts +0 -100
  107. package/src/Changes/LocationStartChange.ts +0 -100
  108. package/src/Changes/{MergeExonsChange.ts → MergeAndUndoMergeExonsChanges.ts} +70 -90
  109. package/src/Changes/{MergeTranscriptsChange.ts → MergeAndUndoMergeTranscriptsChanges.ts} +74 -66
  110. package/src/Changes/{SplitExonChange.ts → SplitAndUndoSplitExonChanges.ts} +95 -122
  111. package/src/Changes/StrandChange.ts +0 -94
  112. package/src/Changes/TypeChange.ts +0 -94
  113. package/src/Changes/UserChange.ts +0 -30
  114. package/src/Changes/index.ts +32 -24
  115. package/src/Validations/Validation.ts +2 -5
  116. package/src/Validations/ValidationSet.ts +3 -6
  117. package/src/index.ts +0 -1
  118. package/dist/Changes/AddFeatureChange.d.ts +0 -37
  119. package/dist/Changes/AddFeatureChange.d.ts.map +0 -1
  120. package/dist/Changes/AddFeatureChange.js +0 -169
  121. package/dist/Changes/AddFeatureChange.js.map +0 -1
  122. package/dist/Changes/DeleteFeatureChange.d.ts.map +0 -1
  123. package/dist/Changes/DeleteFeatureChange.js +0 -161
  124. package/dist/Changes/DeleteFeatureChange.js.map +0 -1
  125. package/dist/Changes/FromFileBaseChange.d.ts +0 -12
  126. package/dist/Changes/FromFileBaseChange.d.ts.map +0 -1
  127. package/dist/Changes/FromFileBaseChange.js +0 -196
  128. package/dist/Changes/FromFileBaseChange.js.map +0 -1
  129. package/dist/Changes/MergeExonsChange.d.ts +0 -30
  130. package/dist/Changes/MergeExonsChange.d.ts.map +0 -1
  131. package/dist/Changes/MergeExonsChange.js +0 -110
  132. package/dist/Changes/MergeExonsChange.js.map +0 -1
  133. package/dist/Changes/MergeTranscriptsChange.d.ts.map +0 -1
  134. package/dist/Changes/MergeTranscriptsChange.js.map +0 -1
  135. package/dist/Changes/SplitExonChange.d.ts +0 -34
  136. package/dist/Changes/SplitExonChange.d.ts.map +0 -1
  137. package/dist/Changes/SplitExonChange.js +0 -138
  138. package/dist/Changes/SplitExonChange.js.map +0 -1
  139. package/dist/Changes/UndoMergeExonsChange.d.ts +0 -28
  140. package/dist/Changes/UndoMergeExonsChange.d.ts.map +0 -1
  141. package/dist/Changes/UndoMergeExonsChange.js +0 -100
  142. package/dist/Changes/UndoMergeExonsChange.js.map +0 -1
  143. package/dist/Changes/UndoMergeTranscriptsChange.d.ts +0 -28
  144. package/dist/Changes/UndoMergeTranscriptsChange.d.ts.map +0 -1
  145. package/dist/Changes/UndoMergeTranscriptsChange.js +0 -100
  146. package/dist/Changes/UndoMergeTranscriptsChange.js.map +0 -1
  147. package/dist/Changes/UndoSplitExonChange.d.ts +0 -33
  148. package/dist/Changes/UndoSplitExonChange.d.ts.map +0 -1
  149. package/dist/Changes/UndoSplitExonChange.js +0 -107
  150. package/dist/Changes/UndoSplitExonChange.js.map +0 -1
  151. package/dist/Operations/GetAssembliesOperation.d.ts +0 -12
  152. package/dist/Operations/GetAssembliesOperation.d.ts.map +0 -1
  153. package/dist/Operations/GetAssembliesOperation.js +0 -16
  154. package/dist/Operations/GetAssembliesOperation.js.map +0 -1
  155. package/dist/Operations/GetFeaturesOperation.d.ts +0 -27
  156. package/dist/Operations/GetFeaturesOperation.d.ts.map +0 -1
  157. package/dist/Operations/GetFeaturesOperation.js +0 -38
  158. package/dist/Operations/GetFeaturesOperation.js.map +0 -1
  159. package/dist/Operations/index.d.ts +0 -9
  160. package/dist/Operations/index.d.ts.map +0 -1
  161. package/dist/Operations/index.js +0 -6
  162. package/dist/Operations/index.js.map +0 -1
  163. package/src/Changes/AddFeatureChange.ts +0 -236
  164. package/src/Changes/FromFileBaseChange.ts +0 -231
  165. package/src/Changes/UndoMergeExonsChange.ts +0 -149
  166. package/src/Changes/UndoMergeTranscriptsChange.ts +0 -153
  167. package/src/Changes/UndoSplitExonChange.ts +0 -174
  168. package/src/Operations/GetAssembliesOperation.ts +0 -28
  169. package/src/Operations/GetFeaturesOperation.ts +0 -58
  170. package/src/Operations/index.ts +0 -6
@@ -1,6 +1,5 @@
1
- import { BgzipIndexedFasta } from '@gmod/indexedfasta';
2
- import { FromFileBaseChange } from './FromFileBaseChange.js';
3
- export class AddAssemblyFromFileChange extends FromFileBaseChange {
1
+ import { AssemblySpecificChange, } from '@apollo-annotation/common';
2
+ export class AddAssemblyFromFileChange extends AssemblySpecificChange {
4
3
  typeName = 'AddAssemblyFromFileChange';
5
4
  changes;
6
5
  constructor(json, options) {
@@ -18,122 +17,6 @@ export class AddAssemblyFromFileChange extends FromFileBaseChange {
18
17
  }
19
18
  return { typeName, assembly, changes };
20
19
  }
21
- /**
22
- * Applies the required change to database
23
- * @param backend - parameters from backend
24
- * @returns
25
- */
26
- async executeOnServer(backend) {
27
- const { changes } = this;
28
- for (const change of changes) {
29
- const { assemblyName, fileIds } = change;
30
- await ('gzi' in fileIds
31
- ? this.executeOnServerIndexed(backend, assemblyName, fileIds)
32
- : this.executeOnServerFasta(backend, assemblyName, fileIds.fa));
33
- }
34
- }
35
- async executeOnServerIndexed(backend, assemblyName, fileIds) {
36
- const { CHUNK_SIZE } = process.env;
37
- const customChunkSize = CHUNK_SIZE && Number(CHUNK_SIZE);
38
- const { FILE_UPLOAD_FOLDER } = process.env;
39
- if (!FILE_UPLOAD_FOLDER) {
40
- throw new Error('No FILE_UPLOAD_FOLDER found in .env file');
41
- }
42
- const { fa: faId, fai: faiId, gzi: gziId } = fileIds;
43
- const { assemblyModel, checkModel, fileModel, filesService, refSeqModel, user, } = backend;
44
- const faDoc = await fileModel.findById(faId);
45
- const faChecksum = faDoc?.checksum;
46
- if (!faChecksum) {
47
- throw new Error(`No checksum for file document ${faDoc?.id}`);
48
- }
49
- const faiDoc = await fileModel.findById(faiId);
50
- const faiChecksum = faiDoc?.checksum;
51
- if (!faiChecksum) {
52
- throw new Error(`No checksum for file document ${faiDoc?.id}`);
53
- }
54
- const gziDoc = await fileModel.findById(gziId);
55
- const gziChecksum = gziDoc?.checksum;
56
- if (!gziChecksum) {
57
- throw new Error(`No checksum for file document ${gziDoc?.id}`);
58
- }
59
- const fasta = filesService.getFileHandle(faDoc);
60
- const fai = filesService.getFileHandle(faiDoc);
61
- const gzi = filesService.getFileHandle(gziDoc);
62
- const sequenceAdapter = new BgzipIndexedFasta({ fasta, fai, gzi });
63
- const allSequenceSizes = await sequenceAdapter.getSequenceSizes();
64
- await Promise.all([fasta.close(), fai.close(), gzi.close()]);
65
- const assemblyDoc = await assemblyModel
66
- .findOne({ name: assemblyName })
67
- .exec();
68
- if (assemblyDoc) {
69
- throw new Error(`Assembly "${assemblyName}" already exists`);
70
- }
71
- const checkDocs = await checkModel.find({ isDefault: true }).exec();
72
- const checks = checkDocs.map((checkDoc) => checkDoc._id.toHexString());
73
- const [newAssemblyDoc] = await assemblyModel.create([
74
- {
75
- _id: this.assembly,
76
- name: assemblyName,
77
- user,
78
- status: -1,
79
- fileIds,
80
- checks,
81
- },
82
- ]);
83
- this.logger.debug?.(`Added new assembly "${assemblyName}", docId "${newAssemblyDoc._id}"`);
84
- for (const sequenceName in allSequenceSizes) {
85
- const [newRefSeqDoc] = await refSeqModel.create([
86
- {
87
- name: sequenceName,
88
- assembly: newAssemblyDoc._id,
89
- length: allSequenceSizes[sequenceName],
90
- ...(customChunkSize ? { chunkSize: customChunkSize } : null),
91
- user,
92
- status: -1,
93
- },
94
- ]);
95
- this.logger.debug?.(`Added new refSeq "${sequenceName}", docId "${newRefSeqDoc._id}"`);
96
- }
97
- }
98
- async executeOnServerFasta(backend, assemblyName, fileId) {
99
- const { assemblyModel, checkModel, fileModel, user } = backend;
100
- // Get file checksum
101
- const fileDoc = await fileModel.findById(fileId).exec();
102
- if (!fileDoc) {
103
- throw new Error(`File "${fileId}" not found in Mongo`);
104
- }
105
- this.logger.debug?.(`FileId "${fileId}", checksum "${fileDoc.checksum}"`);
106
- // Check and add new assembly
107
- const assemblyDoc = await assemblyModel
108
- .findOne({ name: assemblyName })
109
- .exec();
110
- if (assemblyDoc) {
111
- throw new Error(`Assembly "${assemblyName}" already exists`);
112
- }
113
- const checkDocs = await checkModel.find({ default: true }).exec();
114
- const checks = checkDocs.map((checkDoc) => checkDoc._id.toHexString());
115
- // Add assembly
116
- const [newAssemblyDoc] = await assemblyModel.create([
117
- {
118
- _id: this.assembly,
119
- name: assemblyName,
120
- user,
121
- status: -1,
122
- fileIds: { fa: fileId },
123
- checks,
124
- },
125
- ]);
126
- this.logger.debug?.(`Added new assembly "${assemblyName}", docId "${newAssemblyDoc._id}"`);
127
- this.logger.debug?.(`File type: "${fileDoc.type}", assemblyId: "${newAssemblyDoc._id}"`);
128
- // Add refSeqs
129
- // We cannot use Mongo 'session' / transaction here because Mongo has 16 MB limit for transaction
130
- await this.addRefSeqIntoDb(fileDoc, newAssemblyDoc._id.toString(), backend);
131
- }
132
- async executeOnLocalGFF3(_backend) {
133
- throw new Error('executeOnLocalGFF3 not implemented');
134
- }
135
- // eslint-disable-next-line @typescript-eslint/no-empty-function
136
- async executeOnClient(_dataStore) { }
137
20
  getInverse() {
138
21
  const { assembly, changes, logger, typeName } = this;
139
22
  return new AddAssemblyFromFileChange({ typeName, changes, assembly }, { logger });
@@ -1 +1 @@
1
- {"version":3,"file":"AddAssemblyFromFileChange.js","sourceRoot":"","sources":["../../src/Changes/AddAssemblyFromFileChange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddAssemblyFromFileChange.js","sourceRoot":"","sources":["../../src/Changes/AddAssemblyFromFileChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAGvB,MAAM,2BAA2B,CAAA;AAyBlC,MAAM,OAAO,yBAA0B,SAAQ,sBAAsB;IACnE,QAAQ,GAAG,2BAAoC,CAAA;IAC/C,OAAO,CAAoC;IAE3C,YACE,IAAyC,EACzC,OAAuB;QAEvB,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC;IAED,IAAI,YAAY;QACd,OAAO,aAAa,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,2DAA2D,CAAA;IAC7G,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAA;YAC3C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,CAAA;QACtD,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAA;IACxC,CAAC;IAED,UAAU;QACR,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACpD,OAAO,IAAI,yBAAyB,CAClC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAC/B,EAAE,MAAM,EAAE,CACX,CAAA;IACH,CAAC;CACF"}
@@ -1,5 +1,4 @@
1
- import type { ChangeOptions, ClientDataStore, LocalGFF3DataStore, SerializedAssemblySpecificChange, ServerDataStore } from '@apollo-annotation/common';
2
- import { FromFileBaseChange } from './FromFileBaseChange.js';
1
+ import { AssemblySpecificChange, type ChangeOptions, type SerializedAssemblySpecificChange } from '@apollo-annotation/common';
3
2
  export interface SerializedAddFeaturesFromFileChangeBase extends SerializedAssemblySpecificChange {
4
3
  typeName: 'AddFeaturesFromFileChange';
5
4
  deleteExistingFeatures?: boolean;
@@ -17,21 +16,13 @@ export interface SerializedAddFeaturesFromFileChangeMultiple extends SerializedA
17
16
  changes: AddFeaturesFromFileChangeDetails[];
18
17
  }
19
18
  export type SerializedAddFeaturesFromFileChange = SerializedAddFeaturesFromFileChangeSingle | SerializedAddFeaturesFromFileChangeMultiple;
20
- export declare class AddFeaturesFromFileChange extends FromFileBaseChange {
19
+ export declare class AddFeaturesFromFileChange extends AssemblySpecificChange {
21
20
  typeName: "AddFeaturesFromFileChange";
22
21
  changes: AddFeaturesFromFileChangeDetails[];
23
22
  deleteExistingFeatures: boolean;
24
23
  constructor(json: SerializedAddFeaturesFromFileChange, options?: ChangeOptions);
25
24
  get notification(): string;
26
25
  toJSON(): SerializedAddFeaturesFromFileChange;
27
- /**
28
- * Applies the required change to database
29
- * @param backend - parameters from backend
30
- * @returns
31
- */
32
- executeOnServer(backend: ServerDataStore): Promise<void>;
33
- executeOnLocalGFF3(_backend: LocalGFF3DataStore): Promise<void>;
34
- executeOnClient(_dataStore: ClientDataStore): Promise<void>;
35
26
  getInverse(): AddFeaturesFromFileChange;
36
27
  }
37
28
  //# sourceMappingURL=AddFeaturesFromFileChange.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddFeaturesFromFileChange.d.ts","sourceRoot":"","sources":["../../src/Changes/AddFeaturesFromFileChange.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,gCAAgC,EAChC,eAAe,EAChB,MAAM,2BAA2B,CAAA;AAElC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,MAAM,WAAW,uCACf,SAAQ,gCAAgC;IACxC,QAAQ,EAAE,2BAA2B,CAAA;IACrC,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC;AAED,MAAM,WAAW,gCAAgC;IAC/C,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CACzD;AAED,MAAM,WAAW,yCACf,SAAQ,uCAAuC,EAC7C,gCAAgC;CAAG;AAEvC,MAAM,WAAW,2CACf,SAAQ,uCAAuC;IAC/C,OAAO,EAAE,gCAAgC,EAAE,CAAA;CAC5C;AAED,MAAM,MAAM,mCAAmC,GAC3C,yCAAyC,GACzC,2CAA2C,CAAA;AAE/C,qBAAa,yBAA0B,SAAQ,kBAAkB;IAC/D,QAAQ,8BAAuC;IAC/C,OAAO,EAAE,gCAAgC,EAAE,CAAA;IAC3C,sBAAsB,UAAQ;gBAG5B,IAAI,EAAE,mCAAmC,EACzC,OAAO,CAAC,EAAE,aAAa;IAQzB,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,MAAM,IAAI,mCAAmC;IAS7C;;;;OAIG;IACG,eAAe,CAAC,OAAO,EAAE,eAAe;IAgExC,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB;IAK/C,eAAe,CAAC,UAAU,EAAE,eAAe;IAEjD,UAAU;CAOX"}
1
+ {"version":3,"file":"AddFeaturesFromFileChange.d.ts","sourceRoot":"","sources":["../../src/Changes/AddFeaturesFromFileChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,KAAK,aAAa,EAClB,KAAK,gCAAgC,EACtC,MAAM,2BAA2B,CAAA;AAElC,MAAM,WAAW,uCACf,SAAQ,gCAAgC;IACxC,QAAQ,EAAE,2BAA2B,CAAA;IACrC,sBAAsB,CAAC,EAAE,OAAO,CAAA;CACjC;AAED,MAAM,WAAW,gCAAgC;IAC/C,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CACzD;AAED,MAAM,WAAW,yCACf,SAAQ,uCAAuC,EAC7C,gCAAgC;CAAG;AAEvC,MAAM,WAAW,2CACf,SAAQ,uCAAuC;IAC/C,OAAO,EAAE,gCAAgC,EAAE,CAAA;CAC5C;AAED,MAAM,MAAM,mCAAmC,GAC3C,yCAAyC,GACzC,2CAA2C,CAAA;AAE/C,qBAAa,yBAA0B,SAAQ,sBAAsB;IACnE,QAAQ,8BAAuC;IAC/C,OAAO,EAAE,gCAAgC,EAAE,CAAA;IAC3C,sBAAsB,UAAQ;gBAG5B,IAAI,EAAE,mCAAmC,EACzC,OAAO,CAAC,EAAE,aAAa;IAQzB,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,MAAM,IAAI,mCAAmC;IAS7C,UAAU;CAOX"}
@@ -1,5 +1,5 @@
1
- import { FromFileBaseChange } from './FromFileBaseChange.js';
2
- export class AddFeaturesFromFileChange extends FromFileBaseChange {
1
+ import { AssemblySpecificChange, } from '@apollo-annotation/common';
2
+ export class AddFeaturesFromFileChange extends AssemblySpecificChange {
3
3
  typeName = 'AddFeaturesFromFileChange';
4
4
  changes;
5
5
  deleteExistingFeatures = false;
@@ -20,70 +20,6 @@ export class AddFeaturesFromFileChange extends FromFileBaseChange {
20
20
  }
21
21
  return { typeName, assembly, changes, deleteExistingFeatures };
22
22
  }
23
- /**
24
- * Applies the required change to database
25
- * @param backend - parameters from backend
26
- * @returns
27
- */
28
- async executeOnServer(backend) {
29
- const { fileModel, filesService } = backend;
30
- const { changes, deleteExistingFeatures, logger } = this;
31
- if (deleteExistingFeatures) {
32
- await this.removeExistingFeatures(backend);
33
- }
34
- for (const change of changes) {
35
- const { fileId, parseOptions } = change;
36
- const { FILE_UPLOAD_FOLDER } = process.env;
37
- if (!FILE_UPLOAD_FOLDER) {
38
- throw new Error('No FILE_UPLOAD_FOLDER found in .env file');
39
- }
40
- // Get file checksum
41
- const fileDoc = await fileModel.findById(fileId).exec();
42
- if (!fileDoc) {
43
- throw new Error(`File "${fileId}" not found in Mongo`);
44
- }
45
- logger.debug?.(`FileId "${fileId}", checksum "${fileDoc.checksum}"`);
46
- let errorCount = 0;
47
- // eslint-disable-next-line unicorn/consistent-function-scoping
48
- const errorLogger = (error) => {
49
- if (errorCount <= 99) {
50
- logger.warn('Error parsing or adding feature');
51
- logger.warn(error);
52
- if (errorCount === 99) {
53
- logger.warn('Reached 100 feature errors, omitting further warnings from log');
54
- }
55
- }
56
- errorCount++;
57
- };
58
- // Read data from compressed file and parse the content
59
- const { bufferSize = 10_000, strict = true } = parseOptions ?? {};
60
- const featureStream = filesService.parseGFF3(filesService.getFileStream(fileDoc), { bufferSize, errorCallback: strict ? undefined : errorLogger });
61
- let featureCount = 0;
62
- for await (const gff3Feature of featureStream) {
63
- // Add new feature into database
64
- try {
65
- await this.addFeatureIntoDb(gff3Feature, backend);
66
- }
67
- catch (error) {
68
- // if the first feature is an error, assume the file isn't valid and throw
69
- if (strict || featureCount === 0) {
70
- throw error;
71
- }
72
- errorLogger(error);
73
- }
74
- featureCount++;
75
- if (featureCount % 1000 === 0) {
76
- logger.debug?.(`Processed ${featureCount} features`);
77
- }
78
- }
79
- }
80
- logger.debug?.('New features added into database!');
81
- }
82
- async executeOnLocalGFF3(_backend) {
83
- throw new Error('executeOnLocalGFF3 not implemented');
84
- }
85
- // eslint-disable-next-line @typescript-eslint/no-empty-function
86
- async executeOnClient(_dataStore) { }
87
23
  getInverse() {
88
24
  const { assembly, changes, logger, typeName } = this;
89
25
  return new AddFeaturesFromFileChange({ typeName, changes, assembly }, { logger });
@@ -1 +1 @@
1
- {"version":3,"file":"AddFeaturesFromFileChange.js","sourceRoot":"","sources":["../../src/Changes/AddFeaturesFromFileChange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AddFeaturesFromFileChange.js","sourceRoot":"","sources":["../../src/Changes/AddFeaturesFromFileChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAGvB,MAAM,2BAA2B,CAAA;AA0BlC,MAAM,OAAO,yBAA0B,SAAQ,sBAAsB;IACnE,QAAQ,GAAG,2BAAoC,CAAA;IAC/C,OAAO,CAAoC;IAC3C,sBAAsB,GAAG,KAAK,CAAA;IAE9B,YACE,IAAyC,EACzC,OAAuB;QAEvB,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACpB,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,sBAAsB,IAAI,KAAK,CAAA;QAClE,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC;IAED,2EAA2E;IAC3E,IAAI,YAAY;QACd,OAAO,iEAAiE,CAAA;IAC1E,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACpE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAA;YAC5B,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAA;QAC/D,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAA;IAChE,CAAC;IAED,UAAU;QACR,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACpD,OAAO,IAAI,yBAAyB,CAClC,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAC/B,EAAE,MAAM,EAAE,CACX,CAAA;IACH,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { AssemblySpecificChange, type Change, type ChangeOptions, type ClientDataStore, type LocalGFF3DataStore, type SerializedAssemblySpecificChange, type ServerDataStore } from '@apollo-annotation/common';
1
+ import { AssemblySpecificChange, type Change, type ChangeOptions, type SerializedAssemblySpecificChange } from '@apollo-annotation/common';
2
2
  export interface SerializedRefSeqAliases {
3
3
  refName: string;
4
4
  aliases: string[];
@@ -11,11 +11,8 @@ export declare class AddRefSeqAliasesChange extends AssemblySpecificChange {
11
11
  typeName: "AddRefSeqAliasesChange";
12
12
  refSeqAliases: SerializedRefSeqAliases[];
13
13
  constructor(json: SerializedRefSeqAliasesChange, options?: ChangeOptions);
14
- executeOnClient(clientDataStore: ClientDataStore): Promise<void>;
15
14
  getInverse(): Change;
16
15
  toJSON(): SerializedRefSeqAliasesChange;
17
- executeOnServer(backend: ServerDataStore): Promise<void>;
18
- executeOnLocalGFF3(_backend: LocalGFF3DataStore): Promise<unknown>;
19
16
  get notification(): string;
20
17
  }
21
18
  //# sourceMappingURL=AddRefSeqAliasesChange.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddRefSeqAliasesChange.d.ts","sourceRoot":"","sources":["../../src/Changes/AddRefSeqAliasesChange.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,sBAAsB,EACtB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gCAAgC,EACrC,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAA;AAGlC,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,6BACf,SAAQ,gCAAgC;IACxC,QAAQ,EAAE,wBAAwB,CAAA;IAClC,aAAa,EAAE,uBAAuB,EAAE,CAAA;CACzC;AAED,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,QAAQ,2BAAoC;IAC5C,aAAa,EAAE,uBAAuB,EAAE,CAAA;gBAE5B,IAAI,EAAE,6BAA6B,EAAE,OAAO,CAAC,EAAE,aAAa;IAKxE,eAAe,CAAC,eAAe,EAAE,eAAe;IAkBhD,UAAU,IAAI,MAAM;IAIpB,MAAM,IAAI,6BAA6B;IAKjC,eAAe,CAAC,OAAO,EAAE,eAAe;IAe9C,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;IAKlE,IAAI,YAAY,IAAI,MAAM,CAEzB;CACF"}
1
+ {"version":3,"file":"AddRefSeqAliasesChange.d.ts","sourceRoot":"","sources":["../../src/Changes/AddRefSeqAliasesChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,KAAK,MAAM,EACX,KAAK,aAAa,EAClB,KAAK,gCAAgC,EACtC,MAAM,2BAA2B,CAAA;AAElC,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,EAAE,CAAA;CAClB;AAED,MAAM,WAAW,6BACf,SAAQ,gCAAgC;IACxC,QAAQ,EAAE,wBAAwB,CAAA;IAClC,aAAa,EAAE,uBAAuB,EAAE,CAAA;CACzC;AAED,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,QAAQ,2BAAoC;IAC5C,aAAa,EAAE,uBAAuB,EAAE,CAAA;gBAE5B,IAAI,EAAE,6BAA6B,EAAE,OAAO,CAAC,EAAE,aAAa;IAKxE,UAAU,IAAI,MAAM;IAIpB,MAAM,IAAI,6BAA6B;IAMvC,IAAI,YAAY,IAAI,MAAM,CAEzB;CACF"}
@@ -1,8 +1,4 @@
1
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
2
- /* eslint-disable @typescript-eslint/no-unsafe-call */
3
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
4
1
  import { AssemblySpecificChange, } from '@apollo-annotation/common';
5
- import { getSession } from '@jbrowse/core/util';
6
2
  export class AddRefSeqAliasesChange extends AssemblySpecificChange {
7
3
  typeName = 'AddRefSeqAliasesChange';
8
4
  refSeqAliases;
@@ -10,22 +6,6 @@ export class AddRefSeqAliasesChange extends AssemblySpecificChange {
10
6
  super(json, options);
11
7
  this.refSeqAliases = json.refSeqAliases;
12
8
  }
13
- executeOnClient(clientDataStore) {
14
- const { assemblyManager } = getSession(clientDataStore);
15
- const assembly = assemblyManager.get(this.assembly);
16
- if (!assembly) {
17
- throw new Error(`assembly ${this.assembly} not found`);
18
- }
19
- const sessionAliases = assembly.refNameAliases ?? {};
20
- for (const refSeqAlias of this.refSeqAliases) {
21
- const { aliases, refName } = refSeqAlias;
22
- for (const alias of aliases) {
23
- sessionAliases[alias] = refName;
24
- }
25
- }
26
- assembly.setRefNameAliases(sessionAliases);
27
- return Promise.resolve();
28
- }
29
9
  getInverse() {
30
10
  throw new Error('Method not implemented.');
31
11
  }
@@ -33,20 +13,6 @@ export class AddRefSeqAliasesChange extends AssemblySpecificChange {
33
13
  const { assembly, refSeqAliases, typeName } = this;
34
14
  return { assembly, typeName, refSeqAliases };
35
15
  }
36
- async executeOnServer(backend) {
37
- const { refSeqModel, session } = backend;
38
- const { assembly, logger, refSeqAliases } = this;
39
- for (const refSeqAlias of refSeqAliases) {
40
- logger.debug?.(`Updating Refname alias for assembly: ${assembly}, refSeqAlias: ${JSON.stringify(refSeqAlias)}`);
41
- const { aliases, refName } = refSeqAlias;
42
- await refSeqModel
43
- .updateOne({ assembly, name: refName }, { $set: { aliases } })
44
- .session(session);
45
- }
46
- }
47
- executeOnLocalGFF3(_backend) {
48
- throw new Error('Method not implemented.');
49
- }
50
16
  // eslint-disable-next-line @typescript-eslint/class-literal-property-style
51
17
  get notification() {
52
18
  return 'RefSeq aliases have been added.';
@@ -1 +1 @@
1
- {"version":3,"file":"AddRefSeqAliasesChange.js","sourceRoot":"","sources":["../../src/Changes/AddRefSeqAliasesChange.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,sDAAsD;AACtD,4DAA4D;AAC5D,OAAO,EACL,sBAAsB,GAOvB,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAa/C,MAAM,OAAO,sBAAuB,SAAQ,sBAAsB;IAChE,QAAQ,GAAG,wBAAiC,CAAA;IAC5C,aAAa,CAA2B;IAExC,YAAY,IAAmC,EAAE,OAAuB;QACtE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAA;IACzC,CAAC;IAED,eAAe,CAAC,eAAgC;QAC9C,MAAM,EAAE,eAAe,EAAE,GAAG,UAAU,CAAC,eAAe,CAAC,CAAA;QACvD,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,QAAQ,YAAY,CAAC,CAAA;QACxD,CAAC;QACD,MAAM,cAAc,GAAG,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAA;QAEpD,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;YACxC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,cAAc,CAAC,KAAK,CAAC,GAAG,OAAO,CAAA;YACjC,CAAC;QACH,CAAC;QACD,QAAQ,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAA;QAC1C,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,UAAU;QACR,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QAClD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAA;IAC9C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAwB;QAC5C,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QACxC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAA;QAEhD,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE,CAAC;YACxC,MAAM,CAAC,KAAK,EAAE,CACZ,wCAAwC,QAAQ,kBAAkB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAChG,CAAA;YACD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,WAAW,CAAA;YACxC,MAAM,WAAW;iBACd,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC;iBAC7D,OAAO,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED,kBAAkB,CAAC,QAA4B;QAC7C,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,2EAA2E;IAC3E,IAAI,YAAY;QACd,OAAO,iCAAiC,CAAA;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"AddRefSeqAliasesChange.js","sourceRoot":"","sources":["../../src/Changes/AddRefSeqAliasesChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAIvB,MAAM,2BAA2B,CAAA;AAalC,MAAM,OAAO,sBAAuB,SAAQ,sBAAsB;IAChE,QAAQ,GAAG,wBAAiC,CAAA;IAC5C,aAAa,CAA2B;IAExC,YAAY,IAAmC,EAAE,OAAuB;QACtE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAA;IACzC,CAAC;IAED,UAAU;QACR,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QAClD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAA;IAC9C,CAAC;IAED,2EAA2E;IAC3E,IAAI,YAAY;QACd,OAAO,iCAAiC,CAAA;IAC1C,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { AssemblySpecificChange, type ClientDataStore, type LocalGFF3DataStore, type SerializedAssemblySpecificChange, type ServerDataStore } from '@apollo-annotation/common';
1
+ import { AssemblySpecificChange, type SerializedAssemblySpecificChange } from '@apollo-annotation/common';
2
2
  export interface SerializedDeleteAssemblyChange extends SerializedAssemblySpecificChange {
3
3
  typeName: 'DeleteAssemblyChange';
4
4
  }
@@ -6,14 +6,6 @@ export declare class DeleteAssemblyChange extends AssemblySpecificChange {
6
6
  typeName: "DeleteAssemblyChange";
7
7
  get notification(): string;
8
8
  toJSON(): SerializedDeleteAssemblyChange;
9
- /**
10
- * Applies the required change to database
11
- * @param backend - parameters from backend
12
- * @returns
13
- */
14
- executeOnServer(backend: ServerDataStore): Promise<void>;
15
- executeOnLocalGFF3(_backend: LocalGFF3DataStore): Promise<void>;
16
- executeOnClient(dataStore: ClientDataStore): Promise<void>;
17
9
  getInverse(): DeleteAssemblyChange;
18
10
  }
19
11
  //# sourceMappingURL=DeleteAssemblyChange.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteAssemblyChange.d.ts","sourceRoot":"","sources":["../../src/Changes/DeleteAssemblyChange.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gCAAgC,EACrC,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAA;AAGlC,MAAM,WAAW,8BACf,SAAQ,gCAAgC;IACxC,QAAQ,EAAE,sBAAsB,CAAA;CACjC;AACD,qBAAa,oBAAqB,SAAQ,sBAAsB;IAC9D,QAAQ,yBAAkC;IAE1C,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,MAAM,IAAI,8BAA8B;IAKxC;;;;OAIG;IACG,eAAe,CAAC,OAAO,EAAE,eAAe;IAuCxC,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB;IAI/C,eAAe,CAAC,SAAS,EAAE,eAAe;IAehD,UAAU;CAOX"}
1
+ {"version":3,"file":"DeleteAssemblyChange.d.ts","sourceRoot":"","sources":["../../src/Changes/DeleteAssemblyChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,KAAK,gCAAgC,EACtC,MAAM,2BAA2B,CAAA;AAElC,MAAM,WAAW,8BACf,SAAQ,gCAAgC;IACxC,QAAQ,EAAE,sBAAsB,CAAA;CACjC;AACD,qBAAa,oBAAqB,SAAQ,sBAAsB;IAC9D,QAAQ,yBAAkC;IAE1C,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,MAAM,IAAI,8BAA8B;IAKxC,UAAU;CAOX"}
@@ -1,10 +1,4 @@
1
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
2
- /* eslint-disable @typescript-eslint/no-unsafe-return */
3
- /* eslint-disable @typescript-eslint/require-await */
4
- /* eslint-disable @typescript-eslint/no-unnecessary-condition */
5
- /* eslint-disable @typescript-eslint/no-unsafe-call */
6
1
  import { AssemblySpecificChange, } from '@apollo-annotation/common';
7
- import { getSession } from '@jbrowse/core/util';
8
2
  export class DeleteAssemblyChange extends AssemblySpecificChange {
9
3
  typeName = 'DeleteAssemblyChange';
10
4
  get notification() {
@@ -14,53 +8,6 @@ export class DeleteAssemblyChange extends AssemblySpecificChange {
14
8
  const { assembly, typeName } = this;
15
9
  return { typeName, assembly };
16
10
  }
17
- /**
18
- * Applies the required change to database
19
- * @param backend - parameters from backend
20
- * @returns
21
- */
22
- async executeOnServer(backend) {
23
- const { assemblyModel, featureModel, refSeqChunkModel, refSeqModel, session, } = backend;
24
- const { assembly, logger } = this;
25
- const assemblyDoc = await assemblyModel
26
- .findById(assembly)
27
- .session(session)
28
- .exec();
29
- if (!assemblyDoc) {
30
- const errMsg = `*** ERROR: Assembly with id "${assembly}" not found`;
31
- logger.error(errMsg);
32
- throw new Error(errMsg);
33
- }
34
- // We cannot use Mongo 'session' / transaction here because Mongo has 16 MB limit for transaction
35
- // Get RefSeqs
36
- const refSeqs = await refSeqModel.find({ assembly }).exec();
37
- const refSeqIds = refSeqs.map((refSeq) => refSeq._id);
38
- // Get and delete RefSeqChunks
39
- await refSeqChunkModel.deleteMany({ refSeq: refSeqIds }).exec();
40
- // Get and delete Features
41
- await featureModel.deleteMany({ refSeq: refSeqIds }).exec();
42
- // Delete RefSeqs and Assembly
43
- await refSeqModel.deleteMany({ assembly }).exec();
44
- await assemblyModel.findByIdAndDelete(assembly).exec();
45
- logger.debug?.(`Assembly "${assembly}" deleted from database.`);
46
- }
47
- async executeOnLocalGFF3(_backend) {
48
- throw new Error('executeOnLocalGFF3 not implemented');
49
- }
50
- async executeOnClient(dataStore) {
51
- const { assembly } = this;
52
- if (!dataStore) {
53
- throw new Error('No data store');
54
- }
55
- const session = getSession(dataStore);
56
- // If assemblyId is not present in client data store
57
- if (dataStore.assemblies.has(assembly)) {
58
- dataStore.deleteAssembly(assembly);
59
- }
60
- await session.removeAssembly?.(assembly);
61
- // @ts-expect-error this isn't on the AbstractSessionModel
62
- await session.removeSessionAssembly?.(assembly);
63
- }
64
11
  getInverse() {
65
12
  const { assembly, logger } = this;
66
13
  return new DeleteAssemblyChange({ typeName: 'DeleteAssemblyChange', assembly }, { logger });
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteAssemblyChange.js","sourceRoot":"","sources":["../../src/Changes/DeleteAssemblyChange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeleteAssemblyChange.js","sourceRoot":"","sources":["../../src/Changes/DeleteAssemblyChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,GAEvB,MAAM,2BAA2B,CAAA;AAMlC,MAAM,OAAO,oBAAqB,SAAQ,sBAAsB;IAC9D,QAAQ,GAAG,sBAA+B,CAAA;IAE1C,IAAI,YAAY;QACd,OAAO,aAAa,IAAI,CAAC,QAAQ,yBAAyB,CAAA;IAC5D,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACnC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;IAC/B,CAAC;IAED,UAAU;QACR,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACjC,OAAO,IAAI,oBAAoB,CAC7B,EAAE,QAAQ,EAAE,sBAAsB,EAAE,QAAQ,EAAE,EAC9C,EAAE,MAAM,EAAE,CACX,CAAA;IACH,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { Change, type ChangeOptions, type ClientDataStore, type LocalGFF3DataStore, type SerializedChange, type ServerDataStore } from '@apollo-annotation/common';
1
+ import { Change, type ChangeOptions, type SerializedChange } from '@apollo-annotation/common';
2
2
  export interface SerializedDeleteUserChangeBase extends SerializedChange {
3
3
  typeName: 'DeleteUserChange';
4
4
  userId: string;
@@ -17,9 +17,6 @@ export declare class DeleteUserChange extends Change {
17
17
  userId: string;
18
18
  constructor(json: SerializedDeleteUserChange, options?: ChangeOptions);
19
19
  toJSON(): SerializedDeleteUserChange;
20
- executeOnServer(backend: ServerDataStore): Promise<void>;
21
- executeOnLocalGFF3(_backend: LocalGFF3DataStore): Promise<void>;
22
- executeOnClient(_dataStore: ClientDataStore): Promise<void>;
23
20
  getInverse(): DeleteUserChange;
24
21
  }
25
22
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteUserChange.d.ts","sourceRoot":"","sources":["../../src/Changes/DeleteUserChange.ts"],"names":[],"mappings":"AACA,OAAO,EACL,MAAM,EACN,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAA;AAElC,MAAM,WAAW,8BAA+B,SAAQ,gBAAgB;IACtE,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,MAAM,EAAE,MAAM,CAAA;CACf;AAGD,MAAM,WAAW,uBAAuB;CAAG;AAE3C,UAAU,gCACR,SAAQ,8BAA8B,EACpC,uBAAuB;CAAG;AAE9B,UAAU,kCACR,SAAQ,8BAA8B;IACtC,OAAO,EAAE,uBAAuB,EAAE,CAAA;CACnC;AAED,MAAM,MAAM,0BAA0B,GAClC,gCAAgC,GAChC,kCAAkC,CAAA;AAEtC,qBAAa,gBAAiB,SAAQ,MAAM;IAC1C,QAAQ,qBAA8B;IACtC,OAAO,EAAE,uBAAuB,EAAE,CAAA;IAClC,MAAM,EAAE,MAAM,CAAA;gBAEF,IAAI,EAAE,0BAA0B,EAAE,OAAO,CAAC,EAAE,aAAa;IAMrE,MAAM,IAAI,0BAA0B;IAK9B,eAAe,CAAC,OAAO,EAAE,eAAe;IAcxC,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB;IAK/C,eAAe,CAAC,UAAU,EAAE,eAAe;IAEjD,UAAU;CAcX"}
1
+ {"version":3,"file":"DeleteUserChange.d.ts","sourceRoot":"","sources":["../../src/Changes/DeleteUserChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACtB,MAAM,2BAA2B,CAAA;AAElC,MAAM,WAAW,8BAA+B,SAAQ,gBAAgB;IACtE,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,MAAM,EAAE,MAAM,CAAA;CACf;AAGD,MAAM,WAAW,uBAAuB;CAAG;AAE3C,UAAU,gCACR,SAAQ,8BAA8B,EACpC,uBAAuB;CAAG;AAE9B,UAAU,kCACR,SAAQ,8BAA8B;IACtC,OAAO,EAAE,uBAAuB,EAAE,CAAA;CACnC;AAED,MAAM,MAAM,0BAA0B,GAClC,gCAAgC,GAChC,kCAAkC,CAAA;AAEtC,qBAAa,gBAAiB,SAAQ,MAAM;IAC1C,QAAQ,qBAA8B;IACtC,OAAO,EAAE,uBAAuB,EAAE,CAAA;IAClC,MAAM,EAAE,MAAM,CAAA;gBAEF,IAAI,EAAE,0BAA0B,EAAE,OAAO,CAAC,EAAE,aAAa;IAMrE,MAAM,IAAI,0BAA0B;IAKpC,UAAU;CAcX"}
@@ -1,4 +1,3 @@
1
- /* eslint-disable @typescript-eslint/require-await */
2
1
  import { Change, } from '@apollo-annotation/common';
3
2
  export class DeleteUserChange extends Change {
4
3
  typeName = 'DeleteUserChange';
@@ -13,24 +12,6 @@ export class DeleteUserChange extends Change {
13
12
  const { typeName, userId } = this;
14
13
  return { typeName, userId };
15
14
  }
16
- async executeOnServer(backend) {
17
- const { session, userModel } = backend;
18
- const { logger, userId } = this;
19
- const user = await userModel
20
- .findOneAndDelete({ _id: userId })
21
- .session(session)
22
- .exec();
23
- if (!user) {
24
- const errMsg = `*** ERROR: User with id "${userId}" not found`;
25
- logger.error(errMsg);
26
- throw new Error(errMsg);
27
- }
28
- }
29
- async executeOnLocalGFF3(_backend) {
30
- throw new Error('executeOnLocalGFF3 not implemented');
31
- }
32
- // eslint-disable-next-line @typescript-eslint/no-empty-function
33
- async executeOnClient(_dataStore) { }
34
15
  getInverse() {
35
16
  const { logger, typeName, userId } = this;
36
17
  return new DeleteUserChange({ typeName, userId }, { logger });
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteUserChange.js","sourceRoot":"","sources":["../../src/Changes/DeleteUserChange.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,OAAO,EACL,MAAM,GAMP,MAAM,2BAA2B,CAAA;AAuBlC,MAAM,OAAO,gBAAiB,SAAQ,MAAM;IAC1C,QAAQ,GAAG,kBAA2B,CAAA;IACtC,OAAO,CAA2B;IAClC,MAAM,CAAQ;IAEd,YAAY,IAAgC,EAAE,OAAuB;QACnE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACxD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;IAC3B,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAwB;QAC5C,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QACtC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAC/B,MAAM,IAAI,GAAG,MAAM,SAAS;aACzB,gBAAgB,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;aACjC,OAAO,CAAC,OAAO,CAAC;aAChB,IAAI,EAAE,CAAA;QACT,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,MAAM,GAAG,4BAA4B,MAAM,aAAa,CAAA;YAC9D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACpB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,QAA4B;QACnD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,eAAe,CAAC,UAA2B,IAAG,CAAC;IAErD,UAAU;QACR,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACzC,OAAO,IAAI,gBAAgB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC7D,gEAAgE;QAChE,wCAAwC;QACxC,eAAe;QACf,iBAAiB;QACjB,oCAAoC;QACpC,4CAA4C;QAC5C,UAAU;QACV,8EAA8E;QAC9E,kCAAkC;QAClC,IAAI;IACN,CAAC;CACF"}
1
+ {"version":3,"file":"DeleteUserChange.js","sourceRoot":"","sources":["../../src/Changes/DeleteUserChange.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,GAGP,MAAM,2BAA2B,CAAA;AAuBlC,MAAM,OAAO,gBAAiB,SAAQ,MAAM;IAC1C,QAAQ,GAAG,kBAA2B,CAAA;IACtC,OAAO,CAA2B;IAClC,MAAM,CAAQ;IAEd,YAAY,IAAgC,EAAE,OAAuB;QACnE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACxD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;IAC3B,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAA;IAC7B,CAAC;IAED,UAAU;QACR,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QACzC,OAAO,IAAI,gBAAgB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC7D,gEAAgE;QAChE,wCAAwC;QACxC,eAAe;QACf,iBAAiB;QACjB,oCAAoC;QACpC,4CAA4C;QAC5C,UAAU;QACV,8EAA8E;QAC9E,kCAAkC;QAClC,IAAI;IACN,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { type ChangeOptions, type ClientDataStore, FeatureChange, type LocalGFF3DataStore, type SerializedFeatureChange, type ServerDataStore } from '@apollo-annotation/common';
1
+ import { type ChangeOptions, FeatureChange, type SerializedFeatureChange } from '@apollo-annotation/common';
2
2
  interface SerializedFeatureAttributeChangeBase extends SerializedFeatureChange {
3
3
  typeName: 'FeatureAttributeChange';
4
4
  }
@@ -18,14 +18,6 @@ export declare class FeatureAttributeChange extends FeatureChange {
18
18
  changes: FeatureAttributeChangeDetails[];
19
19
  constructor(json: SerializedFeatureAttributeChange, options?: ChangeOptions);
20
20
  toJSON(): SerializedFeatureAttributeChange;
21
- /**
22
- * Applies the required change to database
23
- * @param backend - parameters from backend
24
- * @returns
25
- */
26
- executeOnServer(backend: ServerDataStore): Promise<void>;
27
- executeOnLocalGFF3(_backend: LocalGFF3DataStore): Promise<void>;
28
- executeOnClient(dataStore: ClientDataStore): Promise<void>;
29
21
  getInverse(): FeatureAttributeChange;
30
22
  }
31
23
  export declare function isFeatureAttributeChange(change: unknown): change is FeatureAttributeChange;
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureAttributeChange.d.ts","sourceRoot":"","sources":["../../src/Changes/FeatureAttributeChange.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACrB,MAAM,2BAA2B,CAAA;AAGlC,UAAU,oCAAqC,SAAQ,uBAAuB;IAC5E,QAAQ,EAAE,wBAAwB,CAAA;CACnC;AAED,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IACvC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CACxC;AAED,UAAU,sCACR,SAAQ,oCAAoC,EAC1C,6BAA6B;CAAG;AAEpC,UAAU,wCACR,SAAQ,oCAAoC;IAC5C,OAAO,EAAE,6BAA6B,EAAE,CAAA;CACzC;AAED,MAAM,MAAM,gCAAgC,GACxC,sCAAsC,GACtC,wCAAwC,CAAA;AAE5C,qBAAa,sBAAuB,SAAQ,aAAa;IACvD,QAAQ,2BAAoC;IAC5C,OAAO,EAAE,6BAA6B,EAAE,CAAA;gBAE5B,IAAI,EAAE,gCAAgC,EAAE,OAAO,CAAC,EAAE,aAAa;IAK3E,MAAM,IAAI,gCAAgC;IAgB1C;;;;OAIG;IACG,eAAe,CAAC,OAAO,EAAE,eAAe;IA0ExC,kBAAkB,CAAC,QAAQ,EAAE,kBAAkB;IAI/C,eAAe,CAAC,SAAS,EAAE,eAAe;IAehD,UAAU;CAkBX;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,sBAAsB,CAIlC"}
1
+ {"version":3,"file":"FeatureAttributeChange.d.ts","sourceRoot":"","sources":["../../src/Changes/FeatureAttributeChange.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,aAAa,EAClB,aAAa,EACb,KAAK,uBAAuB,EAC7B,MAAM,2BAA2B,CAAA;AAElC,UAAU,oCAAqC,SAAQ,uBAAuB;IAC5E,QAAQ,EAAE,wBAAwB,CAAA;CACnC;AAED,MAAM,WAAW,6BAA6B;IAC5C,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IACvC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CACxC;AAED,UAAU,sCACR,SAAQ,oCAAoC,EAC1C,6BAA6B;CAAG;AAEpC,UAAU,wCACR,SAAQ,oCAAoC;IAC5C,OAAO,EAAE,6BAA6B,EAAE,CAAA;CACzC;AAED,MAAM,MAAM,gCAAgC,GACxC,sCAAsC,GACtC,wCAAwC,CAAA;AAE5C,qBAAa,sBAAuB,SAAQ,aAAa;IACvD,QAAQ,2BAAoC;IAC5C,OAAO,EAAE,6BAA6B,EAAE,CAAA;gBAE5B,IAAI,EAAE,gCAAgC,EAAE,OAAO,CAAC,EAAE,aAAa;IAK3E,MAAM,IAAI,gCAAgC;IAgB1C,UAAU;CAkBX;AAED,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,OAAO,GACd,MAAM,IAAI,sBAAsB,CAIlC"}