@teselagen/sequence-utils 0.3.41 → 0.3.42
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.
- package/README.md +2 -8
- package/filterSequenceString.d.ts +1 -1
- package/index.cjs +12 -6
- package/index.js +12 -6
- package/index.umd.cjs +12 -6
- package/package.json +2 -2
- package/src/filterSequenceString.js +7 -4
- package/src/tidyUpSequenceData.js +5 -2
package/README.md
CHANGED
|
@@ -64,15 +64,9 @@ Make sure they pass by running `npm test`
|
|
|
64
64
|
|
|
65
65
|
Commit and push all changes first (make sure tests are passing!)
|
|
66
66
|
|
|
67
|
-
|
|
67
|
+
# Publishing
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
Sign into npm using the teselagen npm account (npm whoami)
|
|
71
|
-
|
|
72
|
-
```
|
|
73
|
-
npm version patch|minor|major
|
|
74
|
-
npm publish
|
|
75
|
-
```
|
|
69
|
+
See the [README](../README.md)
|
|
76
70
|
|
|
77
71
|
### Outside collaborators:
|
|
78
72
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export default function filterSequenceString(sequenceString?: string, { additionalValidChars, isOligo, name, isProtein, isRna, isMixedRnaAndDna }?: {
|
|
1
|
+
export default function filterSequenceString(sequenceString?: string, { additionalValidChars, isOligo, name, isProtein, isRna, isMixedRnaAndDna, getAcceptedInsertChars }?: {
|
|
2
2
|
additionalValidChars?: string | undefined;
|
|
3
3
|
}): (string | string[])[];
|
|
4
4
|
export function getAcceptedChars({ isOligo, isProtein, isRna, isMixedRnaAndDna }?: {}): string;
|
package/index.cjs
CHANGED
|
@@ -6196,14 +6196,16 @@ function filterSequenceString(sequenceString = "", {
|
|
|
6196
6196
|
name,
|
|
6197
6197
|
isProtein,
|
|
6198
6198
|
isRna,
|
|
6199
|
-
isMixedRnaAndDna
|
|
6199
|
+
isMixedRnaAndDna,
|
|
6200
|
+
getAcceptedInsertChars
|
|
6200
6201
|
} = {}) {
|
|
6201
|
-
const
|
|
6202
|
+
const sequenceTypeInfo = {
|
|
6202
6203
|
isOligo,
|
|
6203
6204
|
isProtein,
|
|
6204
6205
|
isRna,
|
|
6205
6206
|
isMixedRnaAndDna
|
|
6206
|
-
}
|
|
6207
|
+
};
|
|
6208
|
+
const acceptedChars = isFunction(getAcceptedInsertChars) ? getAcceptedInsertChars(sequenceTypeInfo) : getAcceptedChars(sequenceTypeInfo);
|
|
6207
6209
|
const replaceChars = getReplaceChars({
|
|
6208
6210
|
isOligo,
|
|
6209
6211
|
isProtein,
|
|
@@ -6440,6 +6442,7 @@ function tidyUpSequenceData(pSeqData, options = {}) {
|
|
|
6440
6442
|
doNotProvideIdsForAnnotations,
|
|
6441
6443
|
noCdsTranslations,
|
|
6442
6444
|
convertAnnotationsFromAAIndices,
|
|
6445
|
+
getAcceptedInsertChars,
|
|
6443
6446
|
topLevelSeqData
|
|
6444
6447
|
} = options;
|
|
6445
6448
|
let seqData = cloneDeep(pSeqData);
|
|
@@ -6471,13 +6474,16 @@ function tidyUpSequenceData(pSeqData, options = {}) {
|
|
|
6471
6474
|
if (!doNotRemoveInvalidChars) {
|
|
6472
6475
|
if (seqData.isProtein) {
|
|
6473
6476
|
const [newSeq] = filterSequenceString(seqData.proteinSequence, __spreadProps(__spreadValues({}, topLevelSeqData || seqData), {
|
|
6474
|
-
isProtein: true
|
|
6477
|
+
isProtein: true,
|
|
6478
|
+
getAcceptedInsertChars
|
|
6475
6479
|
}));
|
|
6476
6480
|
seqData.proteinSequence = newSeq;
|
|
6477
6481
|
} else {
|
|
6478
|
-
const [newSeq] = filterSequenceString(seqData.sequence, __spreadValues({
|
|
6482
|
+
const [newSeq] = filterSequenceString(seqData.sequence, __spreadProps(__spreadValues({
|
|
6479
6483
|
additionalValidChars
|
|
6480
|
-
}, topLevelSeqData || seqData)
|
|
6484
|
+
}, topLevelSeqData || seqData), {
|
|
6485
|
+
getAcceptedInsertChars
|
|
6486
|
+
}));
|
|
6481
6487
|
seqData.sequence = newSeq;
|
|
6482
6488
|
}
|
|
6483
6489
|
}
|
package/index.js
CHANGED
|
@@ -6194,14 +6194,16 @@ function filterSequenceString(sequenceString = "", {
|
|
|
6194
6194
|
name,
|
|
6195
6195
|
isProtein,
|
|
6196
6196
|
isRna,
|
|
6197
|
-
isMixedRnaAndDna
|
|
6197
|
+
isMixedRnaAndDna,
|
|
6198
|
+
getAcceptedInsertChars
|
|
6198
6199
|
} = {}) {
|
|
6199
|
-
const
|
|
6200
|
+
const sequenceTypeInfo = {
|
|
6200
6201
|
isOligo,
|
|
6201
6202
|
isProtein,
|
|
6202
6203
|
isRna,
|
|
6203
6204
|
isMixedRnaAndDna
|
|
6204
|
-
}
|
|
6205
|
+
};
|
|
6206
|
+
const acceptedChars = isFunction(getAcceptedInsertChars) ? getAcceptedInsertChars(sequenceTypeInfo) : getAcceptedChars(sequenceTypeInfo);
|
|
6205
6207
|
const replaceChars = getReplaceChars({
|
|
6206
6208
|
isOligo,
|
|
6207
6209
|
isProtein,
|
|
@@ -6438,6 +6440,7 @@ function tidyUpSequenceData(pSeqData, options = {}) {
|
|
|
6438
6440
|
doNotProvideIdsForAnnotations,
|
|
6439
6441
|
noCdsTranslations,
|
|
6440
6442
|
convertAnnotationsFromAAIndices,
|
|
6443
|
+
getAcceptedInsertChars,
|
|
6441
6444
|
topLevelSeqData
|
|
6442
6445
|
} = options;
|
|
6443
6446
|
let seqData = cloneDeep(pSeqData);
|
|
@@ -6469,13 +6472,16 @@ function tidyUpSequenceData(pSeqData, options = {}) {
|
|
|
6469
6472
|
if (!doNotRemoveInvalidChars) {
|
|
6470
6473
|
if (seqData.isProtein) {
|
|
6471
6474
|
const [newSeq] = filterSequenceString(seqData.proteinSequence, __spreadProps(__spreadValues({}, topLevelSeqData || seqData), {
|
|
6472
|
-
isProtein: true
|
|
6475
|
+
isProtein: true,
|
|
6476
|
+
getAcceptedInsertChars
|
|
6473
6477
|
}));
|
|
6474
6478
|
seqData.proteinSequence = newSeq;
|
|
6475
6479
|
} else {
|
|
6476
|
-
const [newSeq] = filterSequenceString(seqData.sequence, __spreadValues({
|
|
6480
|
+
const [newSeq] = filterSequenceString(seqData.sequence, __spreadProps(__spreadValues({
|
|
6477
6481
|
additionalValidChars
|
|
6478
|
-
}, topLevelSeqData || seqData)
|
|
6482
|
+
}, topLevelSeqData || seqData), {
|
|
6483
|
+
getAcceptedInsertChars
|
|
6484
|
+
}));
|
|
6479
6485
|
seqData.sequence = newSeq;
|
|
6480
6486
|
}
|
|
6481
6487
|
}
|
package/index.umd.cjs
CHANGED
|
@@ -6198,14 +6198,16 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
6198
6198
|
name,
|
|
6199
6199
|
isProtein,
|
|
6200
6200
|
isRna,
|
|
6201
|
-
isMixedRnaAndDna
|
|
6201
|
+
isMixedRnaAndDna,
|
|
6202
|
+
getAcceptedInsertChars
|
|
6202
6203
|
} = {}) {
|
|
6203
|
-
const
|
|
6204
|
+
const sequenceTypeInfo = {
|
|
6204
6205
|
isOligo,
|
|
6205
6206
|
isProtein,
|
|
6206
6207
|
isRna,
|
|
6207
6208
|
isMixedRnaAndDna
|
|
6208
|
-
}
|
|
6209
|
+
};
|
|
6210
|
+
const acceptedChars = isFunction(getAcceptedInsertChars) ? getAcceptedInsertChars(sequenceTypeInfo) : getAcceptedChars(sequenceTypeInfo);
|
|
6209
6211
|
const replaceChars = getReplaceChars({
|
|
6210
6212
|
isOligo,
|
|
6211
6213
|
isProtein,
|
|
@@ -6442,6 +6444,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
6442
6444
|
doNotProvideIdsForAnnotations,
|
|
6443
6445
|
noCdsTranslations,
|
|
6444
6446
|
convertAnnotationsFromAAIndices,
|
|
6447
|
+
getAcceptedInsertChars,
|
|
6445
6448
|
topLevelSeqData
|
|
6446
6449
|
} = options;
|
|
6447
6450
|
let seqData = cloneDeep(pSeqData);
|
|
@@ -6473,13 +6476,16 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
|
|
|
6473
6476
|
if (!doNotRemoveInvalidChars) {
|
|
6474
6477
|
if (seqData.isProtein) {
|
|
6475
6478
|
const [newSeq] = filterSequenceString(seqData.proteinSequence, __spreadProps(__spreadValues({}, topLevelSeqData || seqData), {
|
|
6476
|
-
isProtein: true
|
|
6479
|
+
isProtein: true,
|
|
6480
|
+
getAcceptedInsertChars
|
|
6477
6481
|
}));
|
|
6478
6482
|
seqData.proteinSequence = newSeq;
|
|
6479
6483
|
} else {
|
|
6480
|
-
const [newSeq] = filterSequenceString(seqData.sequence, __spreadValues({
|
|
6484
|
+
const [newSeq] = filterSequenceString(seqData.sequence, __spreadProps(__spreadValues({
|
|
6481
6485
|
additionalValidChars
|
|
6482
|
-
}, topLevelSeqData || seqData)
|
|
6486
|
+
}, topLevelSeqData || seqData), {
|
|
6487
|
+
getAcceptedInsertChars
|
|
6488
|
+
}));
|
|
6483
6489
|
seqData.sequence = newSeq;
|
|
6484
6490
|
}
|
|
6485
6491
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teselagen/sequence-utils",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.42",
|
|
4
4
|
"repository": "https://github.com/TeselaGen/tg-oss",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"string-splice": "^1.3.0",
|
|
10
10
|
"lodash-es": "^4.17.21",
|
|
11
11
|
"shortid": "2.2.16",
|
|
12
|
-
"@teselagen/range-utils": "0.3.
|
|
12
|
+
"@teselagen/range-utils": "0.3.20"
|
|
13
13
|
},
|
|
14
14
|
"exports": {
|
|
15
15
|
".": {
|
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
ambiguous_rna_letters,
|
|
5
5
|
extended_protein_letters
|
|
6
6
|
} from "./bioData";
|
|
7
|
+
import {isFunction} from "lodash-es";
|
|
7
8
|
|
|
8
9
|
let allWarnings = [];
|
|
9
10
|
|
|
@@ -30,15 +31,17 @@ export default function filterSequenceString(
|
|
|
30
31
|
name,
|
|
31
32
|
isProtein,
|
|
32
33
|
isRna,
|
|
33
|
-
isMixedRnaAndDna
|
|
34
|
-
|
|
34
|
+
isMixedRnaAndDna,
|
|
35
|
+
getAcceptedInsertChars
|
|
36
|
+
} = {},
|
|
35
37
|
) {
|
|
36
|
-
const
|
|
38
|
+
const sequenceTypeInfo = {
|
|
37
39
|
isOligo,
|
|
38
40
|
isProtein,
|
|
39
41
|
isRna,
|
|
40
42
|
isMixedRnaAndDna
|
|
41
|
-
}
|
|
43
|
+
};
|
|
44
|
+
const acceptedChars = isFunction(getAcceptedInsertChars) ? getAcceptedInsertChars(sequenceTypeInfo) : getAcceptedChars(sequenceTypeInfo);
|
|
42
45
|
const replaceChars = getReplaceChars({
|
|
43
46
|
isOligo,
|
|
44
47
|
isProtein,
|
|
@@ -22,6 +22,7 @@ export default function tidyUpSequenceData(pSeqData, options = {}) {
|
|
|
22
22
|
doNotProvideIdsForAnnotations,
|
|
23
23
|
noCdsTranslations,
|
|
24
24
|
convertAnnotationsFromAAIndices,
|
|
25
|
+
getAcceptedInsertChars,
|
|
25
26
|
topLevelSeqData
|
|
26
27
|
} = options;
|
|
27
28
|
let seqData = cloneDeep(pSeqData); //sequence is usually immutable, so we clone it and return it
|
|
@@ -59,13 +60,15 @@ export default function tidyUpSequenceData(pSeqData, options = {}) {
|
|
|
59
60
|
if (seqData.isProtein) {
|
|
60
61
|
const [newSeq] = filterSequenceString(seqData.proteinSequence, {
|
|
61
62
|
...(topLevelSeqData || seqData),
|
|
62
|
-
isProtein: true
|
|
63
|
+
isProtein: true,
|
|
64
|
+
getAcceptedInsertChars
|
|
63
65
|
});
|
|
64
66
|
seqData.proteinSequence = newSeq;
|
|
65
67
|
} else {
|
|
66
68
|
const [newSeq] = filterSequenceString(seqData.sequence, {
|
|
67
69
|
additionalValidChars,
|
|
68
|
-
...(topLevelSeqData || seqData)
|
|
70
|
+
...(topLevelSeqData || seqData),
|
|
71
|
+
getAcceptedInsertChars
|
|
69
72
|
});
|
|
70
73
|
seqData.sequence = newSeq;
|
|
71
74
|
}
|