@teselagen/sequence-utils 0.3.32-beta.1 → 0.3.32-beta.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.
@@ -7,5 +7,5 @@ export default function findOrfsInPlasmid(sequence: any, circular: any, minimumO
7
7
  forward: any;
8
8
  annotationTypePlural: string;
9
9
  isOrf: boolean;
10
- id: any;
10
+ id: string;
11
11
  }[];
@@ -16,5 +16,5 @@ export default function getOrfsFromSequence(options: any): {
16
16
  forward: any;
17
17
  annotationTypePlural: string;
18
18
  isOrf: boolean;
19
- id: any;
19
+ id: string;
20
20
  }[];
package/index.cjs CHANGED
@@ -3667,307 +3667,15 @@ const getFeatureToColorMap = /* @__PURE__ */ __name(({ includeHidden } = {}) =>
3667
3667
  const getFeatureTypes = /* @__PURE__ */ __name(({ includeHidden } = {}) => filter(getMergedFeatureMap(), (f) => includeHidden ? true : !f.isHidden).map(
3668
3668
  (f) => f.name
3669
3669
  ), "getFeatureTypes");
3670
- function getDefaultExportFromCjs(x) {
3671
- return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
3672
- }
3673
- __name(getDefaultExportFromCjs, "getDefaultExportFromCjs");
3674
- var lib = { exports: {} };
3675
- var randomFromSeed;
3676
- var hasRequiredRandomFromSeed;
3677
- function requireRandomFromSeed() {
3678
- if (hasRequiredRandomFromSeed) return randomFromSeed;
3679
- hasRequiredRandomFromSeed = 1;
3680
- var seed = 1;
3681
- function getNextValue() {
3682
- seed = (seed * 9301 + 49297) % 233280;
3683
- return seed / 233280;
3684
- }
3685
- __name(getNextValue, "getNextValue");
3686
- function setSeed(_seed_) {
3687
- seed = _seed_;
3688
- }
3689
- __name(setSeed, "setSeed");
3690
- randomFromSeed = {
3691
- nextValue: getNextValue,
3692
- seed: setSeed
3693
- };
3694
- return randomFromSeed;
3695
- }
3696
- __name(requireRandomFromSeed, "requireRandomFromSeed");
3697
- var alphabet_1;
3698
- var hasRequiredAlphabet;
3699
- function requireAlphabet() {
3700
- if (hasRequiredAlphabet) return alphabet_1;
3701
- hasRequiredAlphabet = 1;
3702
- var randomFromSeed2 = requireRandomFromSeed();
3703
- var ORIGINAL = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-";
3704
- var alphabet;
3705
- var previousSeed;
3706
- var shuffled;
3707
- function reset() {
3708
- shuffled = false;
3709
- }
3710
- __name(reset, "reset");
3711
- function setCharacters(_alphabet_) {
3712
- if (!_alphabet_) {
3713
- if (alphabet !== ORIGINAL) {
3714
- alphabet = ORIGINAL;
3715
- reset();
3716
- }
3717
- return;
3718
- }
3719
- if (_alphabet_ === alphabet) {
3720
- return;
3721
- }
3722
- if (_alphabet_.length !== ORIGINAL.length) {
3723
- throw new Error("Custom alphabet for shortid must be " + ORIGINAL.length + " unique characters. You submitted " + _alphabet_.length + " characters: " + _alphabet_);
3724
- }
3725
- var unique = _alphabet_.split("").filter(function(item, ind, arr) {
3726
- return ind !== arr.lastIndexOf(item);
3727
- });
3728
- if (unique.length) {
3729
- throw new Error("Custom alphabet for shortid must be " + ORIGINAL.length + " unique characters. These characters were not unique: " + unique.join(", "));
3730
- }
3731
- alphabet = _alphabet_;
3732
- reset();
3733
- }
3734
- __name(setCharacters, "setCharacters");
3735
- function characters(_alphabet_) {
3736
- setCharacters(_alphabet_);
3737
- return alphabet;
3738
- }
3739
- __name(characters, "characters");
3740
- function setSeed(seed) {
3741
- randomFromSeed2.seed(seed);
3742
- if (previousSeed !== seed) {
3743
- reset();
3744
- previousSeed = seed;
3745
- }
3746
- }
3747
- __name(setSeed, "setSeed");
3748
- function shuffle() {
3749
- if (!alphabet) {
3750
- setCharacters(ORIGINAL);
3751
- }
3752
- var sourceArray = alphabet.split("");
3753
- var targetArray = [];
3754
- var r = randomFromSeed2.nextValue();
3755
- var characterIndex;
3756
- while (sourceArray.length > 0) {
3757
- r = randomFromSeed2.nextValue();
3758
- characterIndex = Math.floor(r * sourceArray.length);
3759
- targetArray.push(sourceArray.splice(characterIndex, 1)[0]);
3760
- }
3761
- return targetArray.join("");
3762
- }
3763
- __name(shuffle, "shuffle");
3764
- function getShuffled() {
3765
- if (shuffled) {
3766
- return shuffled;
3767
- }
3768
- shuffled = shuffle();
3769
- return shuffled;
3770
- }
3771
- __name(getShuffled, "getShuffled");
3772
- function lookup(index) {
3773
- var alphabetShuffled = getShuffled();
3774
- return alphabetShuffled[index];
3775
- }
3776
- __name(lookup, "lookup");
3777
- function get2() {
3778
- return alphabet || ORIGINAL;
3779
- }
3780
- __name(get2, "get");
3781
- alphabet_1 = {
3782
- get: get2,
3783
- characters,
3784
- seed: setSeed,
3785
- lookup,
3786
- shuffled: getShuffled
3787
- };
3788
- return alphabet_1;
3789
- }
3790
- __name(requireAlphabet, "requireAlphabet");
3791
- var randomByteBrowser;
3792
- var hasRequiredRandomByteBrowser;
3793
- function requireRandomByteBrowser() {
3794
- if (hasRequiredRandomByteBrowser) return randomByteBrowser;
3795
- hasRequiredRandomByteBrowser = 1;
3796
- var crypto = typeof window === "object" && (window.crypto || window.msCrypto);
3797
- var randomByte;
3798
- if (!crypto || !crypto.getRandomValues) {
3799
- randomByte = /* @__PURE__ */ __name(function(size) {
3800
- var bytes = [];
3801
- for (var i = 0; i < size; i++) {
3802
- bytes.push(Math.floor(Math.random() * 256));
3803
- }
3804
- return bytes;
3805
- }, "randomByte");
3806
- } else {
3807
- randomByte = /* @__PURE__ */ __name(function(size) {
3808
- return crypto.getRandomValues(new Uint8Array(size));
3809
- }, "randomByte");
3810
- }
3811
- randomByteBrowser = randomByte;
3812
- return randomByteBrowser;
3813
- }
3814
- __name(requireRandomByteBrowser, "requireRandomByteBrowser");
3815
- var format_browser;
3816
- var hasRequiredFormat_browser;
3817
- function requireFormat_browser() {
3818
- if (hasRequiredFormat_browser) return format_browser;
3819
- hasRequiredFormat_browser = 1;
3820
- format_browser = /* @__PURE__ */ __name(function(random, alphabet, size) {
3821
- var mask = (2 << Math.log(alphabet.length - 1) / Math.LN2) - 1;
3822
- var step = -~(1.6 * mask * size / alphabet.length);
3823
- var id = "";
3824
- while (true) {
3825
- var bytes = random(step);
3826
- var i = step;
3827
- while (i--) {
3828
- id += alphabet[bytes[i] & mask] || "";
3829
- if (id.length === +size) return id;
3830
- }
3831
- }
3832
- }, "format_browser");
3833
- return format_browser;
3834
- }
3835
- __name(requireFormat_browser, "requireFormat_browser");
3836
- var generate_1;
3837
- var hasRequiredGenerate;
3838
- function requireGenerate() {
3839
- if (hasRequiredGenerate) return generate_1;
3840
- hasRequiredGenerate = 1;
3841
- var alphabet = requireAlphabet();
3842
- var random = requireRandomByteBrowser();
3843
- var format = /* @__PURE__ */ requireFormat_browser();
3844
- function generate(number) {
3845
- var loopCounter = 0;
3846
- var done;
3847
- var str = "";
3848
- while (!done) {
3849
- str = str + format(random, alphabet.get(), 1);
3850
- done = number < Math.pow(16, loopCounter + 1);
3851
- loopCounter++;
3852
- }
3853
- return str;
3854
- }
3855
- __name(generate, "generate");
3856
- generate_1 = generate;
3857
- return generate_1;
3858
- }
3859
- __name(requireGenerate, "requireGenerate");
3860
- var build_1;
3861
- var hasRequiredBuild;
3862
- function requireBuild() {
3863
- if (hasRequiredBuild) return build_1;
3864
- hasRequiredBuild = 1;
3865
- var generate = requireGenerate();
3866
- requireAlphabet();
3867
- var REDUCE_TIME = 1567752802062;
3868
- var version = 7;
3869
- var counter;
3870
- var previousSeconds;
3871
- function build(clusterWorkerId) {
3872
- var str = "";
3873
- var seconds = Math.floor((Date.now() - REDUCE_TIME) * 1e-3);
3874
- if (seconds === previousSeconds) {
3875
- counter++;
3876
- } else {
3877
- counter = 0;
3878
- previousSeconds = seconds;
3879
- }
3880
- str = str + generate(version);
3881
- str = str + generate(clusterWorkerId);
3882
- if (counter > 0) {
3883
- str = str + generate(counter);
3884
- }
3885
- str = str + generate(seconds);
3886
- return str;
3887
- }
3888
- __name(build, "build");
3889
- build_1 = build;
3890
- return build_1;
3891
- }
3892
- __name(requireBuild, "requireBuild");
3893
- var isValid;
3894
- var hasRequiredIsValid;
3895
- function requireIsValid() {
3896
- if (hasRequiredIsValid) return isValid;
3897
- hasRequiredIsValid = 1;
3898
- var alphabet = requireAlphabet();
3899
- function isShortId(id) {
3900
- if (!id || typeof id !== "string" || id.length < 6) {
3901
- return false;
3902
- }
3903
- var nonAlphabetic = new RegExp("[^" + alphabet.get().replace(/[|\\{}()[\]^$+*?.-]/g, "\\$&") + "]");
3904
- return !nonAlphabetic.test(id);
3905
- }
3906
- __name(isShortId, "isShortId");
3907
- isValid = isShortId;
3908
- return isValid;
3909
- }
3910
- __name(requireIsValid, "requireIsValid");
3911
- var clusterWorkerIdBrowser;
3912
- var hasRequiredClusterWorkerIdBrowser;
3913
- function requireClusterWorkerIdBrowser() {
3914
- if (hasRequiredClusterWorkerIdBrowser) return clusterWorkerIdBrowser;
3915
- hasRequiredClusterWorkerIdBrowser = 1;
3916
- clusterWorkerIdBrowser = 0;
3917
- return clusterWorkerIdBrowser;
3918
- }
3919
- __name(requireClusterWorkerIdBrowser, "requireClusterWorkerIdBrowser");
3920
- var hasRequiredLib;
3921
- function requireLib() {
3922
- if (hasRequiredLib) return lib.exports;
3923
- hasRequiredLib = 1;
3924
- (function(module2) {
3925
- var alphabet = requireAlphabet();
3926
- var build = requireBuild();
3927
- var isValid2 = requireIsValid();
3928
- var clusterWorkerId = requireClusterWorkerIdBrowser() || 0;
3929
- function seed(seedValue) {
3930
- alphabet.seed(seedValue);
3931
- return module2.exports;
3932
- }
3933
- __name(seed, "seed");
3934
- function worker(workerId) {
3935
- clusterWorkerId = workerId;
3936
- return module2.exports;
3937
- }
3938
- __name(worker, "worker");
3939
- function characters(newCharacters) {
3940
- if (newCharacters !== void 0) {
3941
- alphabet.characters(newCharacters);
3942
- }
3943
- return alphabet.shuffled();
3944
- }
3945
- __name(characters, "characters");
3946
- function generate() {
3947
- return build(clusterWorkerId);
3948
- }
3949
- __name(generate, "generate");
3950
- module2.exports = generate;
3951
- module2.exports.generate = generate;
3952
- module2.exports.seed = seed;
3953
- module2.exports.worker = worker;
3954
- module2.exports.characters = characters;
3955
- module2.exports.isValid = isValid2;
3956
- })(lib);
3957
- return lib.exports;
3958
- }
3959
- __name(requireLib, "requireLib");
3960
- var shortid$1;
3961
- var hasRequiredShortid;
3962
- function requireShortid() {
3963
- if (hasRequiredShortid) return shortid$1;
3964
- hasRequiredShortid = 1;
3965
- shortid$1 = requireLib();
3966
- return shortid$1;
3967
- }
3968
- __name(requireShortid, "requireShortid");
3969
- var shortidExports = requireShortid();
3970
- const shortid = /* @__PURE__ */ getDefaultExportFromCjs(shortidExports);
3670
+ const urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
3671
+ let nanoid = /* @__PURE__ */ __name((size = 21) => {
3672
+ let id = "";
3673
+ let bytes = crypto.getRandomValues(new Uint8Array(size |= 0));
3674
+ while (size--) {
3675
+ id += urlAlphabet[bytes[size] & 63];
3676
+ }
3677
+ return id;
3678
+ }, "nanoid");
3971
3679
  function cutSequenceByRestrictionEnzyme(pSequence, circular, restrictionEnzyme) {
3972
3680
  if (restrictionEnzyme.forwardRegex.length === 0 || restrictionEnzyme.reverseRegex.length === 0) {
3973
3681
  const returnArray = [];
@@ -4175,7 +3883,7 @@ function cutSequence(forwardRegExpPattern, restrictionEnzyme, sequence, circular
4175
3883
  }
4176
3884
  const overhangBps = getSequenceWithinRange(cutRange, originalSequence);
4177
3885
  restrictionCutSite = {
4178
- id: shortid(),
3886
+ id: nanoid(),
4179
3887
  start,
4180
3888
  end,
4181
3889
  topSnipPosition,
@@ -4233,7 +3941,7 @@ function computeDigestFragments({
4233
3941
  });
4234
3942
  if (!circular && cutsites.length) {
4235
3943
  sortedCutsites.push({
4236
- id: "seqTerm_" + shortid(),
3944
+ id: "seqTerm_" + nanoid(),
4237
3945
  start: 0,
4238
3946
  end: 0,
4239
3947
  overhangBps: "",
@@ -4367,6 +4075,10 @@ function getDigestFragsForSeqAndEnzymes({
4367
4075
  });
4368
4076
  }
4369
4077
  __name(getDigestFragsForSeqAndEnzymes, "getDigestFragsForSeqAndEnzymes");
4078
+ function getDefaultExportFromCjs(x) {
4079
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
4080
+ }
4081
+ __name(getDefaultExportFromCjs, "getDefaultExportFromCjs");
4370
4082
  var jsondiffpatch_umd$1 = { exports: {} };
4371
4083
  var empty = {};
4372
4084
  var hasRequiredEmpty;
@@ -8965,10 +8677,10 @@ function tidyUpAnnotation(_annotation, {
8965
8677
  annotation.name = "Untitled annotation";
8966
8678
  }
8967
8679
  if (provideNewIdsForAnnotations) {
8968
- annotation.id = shortid();
8680
+ annotation.id = nanoid();
8969
8681
  }
8970
8682
  if (!annotation.id && annotation.id !== 0 && !doNotProvideIdsForAnnotations) {
8971
- annotation.id = shortid();
8683
+ annotation.id = nanoid();
8972
8684
  messages.push(
8973
8685
  "Unable to detect valid ID for annotation, setting ID to " + annotation.id
8974
8686
  );
@@ -9212,7 +8924,7 @@ function tidyUpSequenceData(pSeqData, options = {}) {
9212
8924
  if (item.id || item.id === 0) {
9213
8925
  itemId = item.id;
9214
8926
  } else {
9215
- itemId = shortid();
8927
+ itemId = nanoid();
9216
8928
  if (!doNotProvideIdsForAnnotations) {
9217
8929
  item.id = itemId;
9218
8930
  }
@@ -17782,7 +17494,7 @@ function generateAnnotation(start, end, maxLength) {
17782
17494
  return __spreadProps(__spreadValues({}, range), {
17783
17495
  name: getRandomInt(0, 1e5).toString(),
17784
17496
  type: "misc_feature",
17785
- id: shortid(),
17497
+ id: nanoid(),
17786
17498
  forward: Math.random() > 0.5,
17787
17499
  notes: {}
17788
17500
  });
@@ -17905,7 +17617,7 @@ function getOrfsFromSequence(options) {
17905
17617
  forward,
17906
17618
  annotationTypePlural: "orfs",
17907
17619
  isOrf: true,
17908
- id: shortid()
17620
+ id: nanoid()
17909
17621
  });
17910
17622
  }
17911
17623
  }
package/index.js CHANGED
@@ -3665,307 +3665,15 @@ const getFeatureToColorMap = /* @__PURE__ */ __name(({ includeHidden } = {}) =>
3665
3665
  const getFeatureTypes = /* @__PURE__ */ __name(({ includeHidden } = {}) => filter(getMergedFeatureMap(), (f) => includeHidden ? true : !f.isHidden).map(
3666
3666
  (f) => f.name
3667
3667
  ), "getFeatureTypes");
3668
- function getDefaultExportFromCjs(x) {
3669
- return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
3670
- }
3671
- __name(getDefaultExportFromCjs, "getDefaultExportFromCjs");
3672
- var lib = { exports: {} };
3673
- var randomFromSeed;
3674
- var hasRequiredRandomFromSeed;
3675
- function requireRandomFromSeed() {
3676
- if (hasRequiredRandomFromSeed) return randomFromSeed;
3677
- hasRequiredRandomFromSeed = 1;
3678
- var seed = 1;
3679
- function getNextValue() {
3680
- seed = (seed * 9301 + 49297) % 233280;
3681
- return seed / 233280;
3682
- }
3683
- __name(getNextValue, "getNextValue");
3684
- function setSeed(_seed_) {
3685
- seed = _seed_;
3686
- }
3687
- __name(setSeed, "setSeed");
3688
- randomFromSeed = {
3689
- nextValue: getNextValue,
3690
- seed: setSeed
3691
- };
3692
- return randomFromSeed;
3693
- }
3694
- __name(requireRandomFromSeed, "requireRandomFromSeed");
3695
- var alphabet_1;
3696
- var hasRequiredAlphabet;
3697
- function requireAlphabet() {
3698
- if (hasRequiredAlphabet) return alphabet_1;
3699
- hasRequiredAlphabet = 1;
3700
- var randomFromSeed2 = requireRandomFromSeed();
3701
- var ORIGINAL = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-";
3702
- var alphabet;
3703
- var previousSeed;
3704
- var shuffled;
3705
- function reset() {
3706
- shuffled = false;
3707
- }
3708
- __name(reset, "reset");
3709
- function setCharacters(_alphabet_) {
3710
- if (!_alphabet_) {
3711
- if (alphabet !== ORIGINAL) {
3712
- alphabet = ORIGINAL;
3713
- reset();
3714
- }
3715
- return;
3716
- }
3717
- if (_alphabet_ === alphabet) {
3718
- return;
3719
- }
3720
- if (_alphabet_.length !== ORIGINAL.length) {
3721
- throw new Error("Custom alphabet for shortid must be " + ORIGINAL.length + " unique characters. You submitted " + _alphabet_.length + " characters: " + _alphabet_);
3722
- }
3723
- var unique = _alphabet_.split("").filter(function(item, ind, arr) {
3724
- return ind !== arr.lastIndexOf(item);
3725
- });
3726
- if (unique.length) {
3727
- throw new Error("Custom alphabet for shortid must be " + ORIGINAL.length + " unique characters. These characters were not unique: " + unique.join(", "));
3728
- }
3729
- alphabet = _alphabet_;
3730
- reset();
3731
- }
3732
- __name(setCharacters, "setCharacters");
3733
- function characters(_alphabet_) {
3734
- setCharacters(_alphabet_);
3735
- return alphabet;
3736
- }
3737
- __name(characters, "characters");
3738
- function setSeed(seed) {
3739
- randomFromSeed2.seed(seed);
3740
- if (previousSeed !== seed) {
3741
- reset();
3742
- previousSeed = seed;
3743
- }
3744
- }
3745
- __name(setSeed, "setSeed");
3746
- function shuffle() {
3747
- if (!alphabet) {
3748
- setCharacters(ORIGINAL);
3749
- }
3750
- var sourceArray = alphabet.split("");
3751
- var targetArray = [];
3752
- var r = randomFromSeed2.nextValue();
3753
- var characterIndex;
3754
- while (sourceArray.length > 0) {
3755
- r = randomFromSeed2.nextValue();
3756
- characterIndex = Math.floor(r * sourceArray.length);
3757
- targetArray.push(sourceArray.splice(characterIndex, 1)[0]);
3758
- }
3759
- return targetArray.join("");
3760
- }
3761
- __name(shuffle, "shuffle");
3762
- function getShuffled() {
3763
- if (shuffled) {
3764
- return shuffled;
3765
- }
3766
- shuffled = shuffle();
3767
- return shuffled;
3768
- }
3769
- __name(getShuffled, "getShuffled");
3770
- function lookup(index) {
3771
- var alphabetShuffled = getShuffled();
3772
- return alphabetShuffled[index];
3773
- }
3774
- __name(lookup, "lookup");
3775
- function get2() {
3776
- return alphabet || ORIGINAL;
3777
- }
3778
- __name(get2, "get");
3779
- alphabet_1 = {
3780
- get: get2,
3781
- characters,
3782
- seed: setSeed,
3783
- lookup,
3784
- shuffled: getShuffled
3785
- };
3786
- return alphabet_1;
3787
- }
3788
- __name(requireAlphabet, "requireAlphabet");
3789
- var randomByteBrowser;
3790
- var hasRequiredRandomByteBrowser;
3791
- function requireRandomByteBrowser() {
3792
- if (hasRequiredRandomByteBrowser) return randomByteBrowser;
3793
- hasRequiredRandomByteBrowser = 1;
3794
- var crypto = typeof window === "object" && (window.crypto || window.msCrypto);
3795
- var randomByte;
3796
- if (!crypto || !crypto.getRandomValues) {
3797
- randomByte = /* @__PURE__ */ __name(function(size) {
3798
- var bytes = [];
3799
- for (var i = 0; i < size; i++) {
3800
- bytes.push(Math.floor(Math.random() * 256));
3801
- }
3802
- return bytes;
3803
- }, "randomByte");
3804
- } else {
3805
- randomByte = /* @__PURE__ */ __name(function(size) {
3806
- return crypto.getRandomValues(new Uint8Array(size));
3807
- }, "randomByte");
3808
- }
3809
- randomByteBrowser = randomByte;
3810
- return randomByteBrowser;
3811
- }
3812
- __name(requireRandomByteBrowser, "requireRandomByteBrowser");
3813
- var format_browser;
3814
- var hasRequiredFormat_browser;
3815
- function requireFormat_browser() {
3816
- if (hasRequiredFormat_browser) return format_browser;
3817
- hasRequiredFormat_browser = 1;
3818
- format_browser = /* @__PURE__ */ __name(function(random, alphabet, size) {
3819
- var mask = (2 << Math.log(alphabet.length - 1) / Math.LN2) - 1;
3820
- var step = -~(1.6 * mask * size / alphabet.length);
3821
- var id = "";
3822
- while (true) {
3823
- var bytes = random(step);
3824
- var i = step;
3825
- while (i--) {
3826
- id += alphabet[bytes[i] & mask] || "";
3827
- if (id.length === +size) return id;
3828
- }
3829
- }
3830
- }, "format_browser");
3831
- return format_browser;
3832
- }
3833
- __name(requireFormat_browser, "requireFormat_browser");
3834
- var generate_1;
3835
- var hasRequiredGenerate;
3836
- function requireGenerate() {
3837
- if (hasRequiredGenerate) return generate_1;
3838
- hasRequiredGenerate = 1;
3839
- var alphabet = requireAlphabet();
3840
- var random = requireRandomByteBrowser();
3841
- var format = /* @__PURE__ */ requireFormat_browser();
3842
- function generate(number) {
3843
- var loopCounter = 0;
3844
- var done;
3845
- var str = "";
3846
- while (!done) {
3847
- str = str + format(random, alphabet.get(), 1);
3848
- done = number < Math.pow(16, loopCounter + 1);
3849
- loopCounter++;
3850
- }
3851
- return str;
3852
- }
3853
- __name(generate, "generate");
3854
- generate_1 = generate;
3855
- return generate_1;
3856
- }
3857
- __name(requireGenerate, "requireGenerate");
3858
- var build_1;
3859
- var hasRequiredBuild;
3860
- function requireBuild() {
3861
- if (hasRequiredBuild) return build_1;
3862
- hasRequiredBuild = 1;
3863
- var generate = requireGenerate();
3864
- requireAlphabet();
3865
- var REDUCE_TIME = 1567752802062;
3866
- var version = 7;
3867
- var counter;
3868
- var previousSeconds;
3869
- function build(clusterWorkerId) {
3870
- var str = "";
3871
- var seconds = Math.floor((Date.now() - REDUCE_TIME) * 1e-3);
3872
- if (seconds === previousSeconds) {
3873
- counter++;
3874
- } else {
3875
- counter = 0;
3876
- previousSeconds = seconds;
3877
- }
3878
- str = str + generate(version);
3879
- str = str + generate(clusterWorkerId);
3880
- if (counter > 0) {
3881
- str = str + generate(counter);
3882
- }
3883
- str = str + generate(seconds);
3884
- return str;
3885
- }
3886
- __name(build, "build");
3887
- build_1 = build;
3888
- return build_1;
3889
- }
3890
- __name(requireBuild, "requireBuild");
3891
- var isValid;
3892
- var hasRequiredIsValid;
3893
- function requireIsValid() {
3894
- if (hasRequiredIsValid) return isValid;
3895
- hasRequiredIsValid = 1;
3896
- var alphabet = requireAlphabet();
3897
- function isShortId(id) {
3898
- if (!id || typeof id !== "string" || id.length < 6) {
3899
- return false;
3900
- }
3901
- var nonAlphabetic = new RegExp("[^" + alphabet.get().replace(/[|\\{}()[\]^$+*?.-]/g, "\\$&") + "]");
3902
- return !nonAlphabetic.test(id);
3903
- }
3904
- __name(isShortId, "isShortId");
3905
- isValid = isShortId;
3906
- return isValid;
3907
- }
3908
- __name(requireIsValid, "requireIsValid");
3909
- var clusterWorkerIdBrowser;
3910
- var hasRequiredClusterWorkerIdBrowser;
3911
- function requireClusterWorkerIdBrowser() {
3912
- if (hasRequiredClusterWorkerIdBrowser) return clusterWorkerIdBrowser;
3913
- hasRequiredClusterWorkerIdBrowser = 1;
3914
- clusterWorkerIdBrowser = 0;
3915
- return clusterWorkerIdBrowser;
3916
- }
3917
- __name(requireClusterWorkerIdBrowser, "requireClusterWorkerIdBrowser");
3918
- var hasRequiredLib;
3919
- function requireLib() {
3920
- if (hasRequiredLib) return lib.exports;
3921
- hasRequiredLib = 1;
3922
- (function(module2) {
3923
- var alphabet = requireAlphabet();
3924
- var build = requireBuild();
3925
- var isValid2 = requireIsValid();
3926
- var clusterWorkerId = requireClusterWorkerIdBrowser() || 0;
3927
- function seed(seedValue) {
3928
- alphabet.seed(seedValue);
3929
- return module2.exports;
3930
- }
3931
- __name(seed, "seed");
3932
- function worker(workerId) {
3933
- clusterWorkerId = workerId;
3934
- return module2.exports;
3935
- }
3936
- __name(worker, "worker");
3937
- function characters(newCharacters) {
3938
- if (newCharacters !== void 0) {
3939
- alphabet.characters(newCharacters);
3940
- }
3941
- return alphabet.shuffled();
3942
- }
3943
- __name(characters, "characters");
3944
- function generate() {
3945
- return build(clusterWorkerId);
3946
- }
3947
- __name(generate, "generate");
3948
- module2.exports = generate;
3949
- module2.exports.generate = generate;
3950
- module2.exports.seed = seed;
3951
- module2.exports.worker = worker;
3952
- module2.exports.characters = characters;
3953
- module2.exports.isValid = isValid2;
3954
- })(lib);
3955
- return lib.exports;
3956
- }
3957
- __name(requireLib, "requireLib");
3958
- var shortid$1;
3959
- var hasRequiredShortid;
3960
- function requireShortid() {
3961
- if (hasRequiredShortid) return shortid$1;
3962
- hasRequiredShortid = 1;
3963
- shortid$1 = requireLib();
3964
- return shortid$1;
3965
- }
3966
- __name(requireShortid, "requireShortid");
3967
- var shortidExports = requireShortid();
3968
- const shortid = /* @__PURE__ */ getDefaultExportFromCjs(shortidExports);
3668
+ const urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
3669
+ let nanoid = /* @__PURE__ */ __name((size = 21) => {
3670
+ let id = "";
3671
+ let bytes = crypto.getRandomValues(new Uint8Array(size |= 0));
3672
+ while (size--) {
3673
+ id += urlAlphabet[bytes[size] & 63];
3674
+ }
3675
+ return id;
3676
+ }, "nanoid");
3969
3677
  function cutSequenceByRestrictionEnzyme(pSequence, circular, restrictionEnzyme) {
3970
3678
  if (restrictionEnzyme.forwardRegex.length === 0 || restrictionEnzyme.reverseRegex.length === 0) {
3971
3679
  const returnArray = [];
@@ -4173,7 +3881,7 @@ function cutSequence(forwardRegExpPattern, restrictionEnzyme, sequence, circular
4173
3881
  }
4174
3882
  const overhangBps = getSequenceWithinRange(cutRange, originalSequence);
4175
3883
  restrictionCutSite = {
4176
- id: shortid(),
3884
+ id: nanoid(),
4177
3885
  start,
4178
3886
  end,
4179
3887
  topSnipPosition,
@@ -4231,7 +3939,7 @@ function computeDigestFragments({
4231
3939
  });
4232
3940
  if (!circular && cutsites.length) {
4233
3941
  sortedCutsites.push({
4234
- id: "seqTerm_" + shortid(),
3942
+ id: "seqTerm_" + nanoid(),
4235
3943
  start: 0,
4236
3944
  end: 0,
4237
3945
  overhangBps: "",
@@ -4365,6 +4073,10 @@ function getDigestFragsForSeqAndEnzymes({
4365
4073
  });
4366
4074
  }
4367
4075
  __name(getDigestFragsForSeqAndEnzymes, "getDigestFragsForSeqAndEnzymes");
4076
+ function getDefaultExportFromCjs(x) {
4077
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
4078
+ }
4079
+ __name(getDefaultExportFromCjs, "getDefaultExportFromCjs");
4368
4080
  var jsondiffpatch_umd$1 = { exports: {} };
4369
4081
  var empty = {};
4370
4082
  var hasRequiredEmpty;
@@ -8963,10 +8675,10 @@ function tidyUpAnnotation(_annotation, {
8963
8675
  annotation.name = "Untitled annotation";
8964
8676
  }
8965
8677
  if (provideNewIdsForAnnotations) {
8966
- annotation.id = shortid();
8678
+ annotation.id = nanoid();
8967
8679
  }
8968
8680
  if (!annotation.id && annotation.id !== 0 && !doNotProvideIdsForAnnotations) {
8969
- annotation.id = shortid();
8681
+ annotation.id = nanoid();
8970
8682
  messages.push(
8971
8683
  "Unable to detect valid ID for annotation, setting ID to " + annotation.id
8972
8684
  );
@@ -9210,7 +8922,7 @@ function tidyUpSequenceData(pSeqData, options = {}) {
9210
8922
  if (item.id || item.id === 0) {
9211
8923
  itemId = item.id;
9212
8924
  } else {
9213
- itemId = shortid();
8925
+ itemId = nanoid();
9214
8926
  if (!doNotProvideIdsForAnnotations) {
9215
8927
  item.id = itemId;
9216
8928
  }
@@ -17780,7 +17492,7 @@ function generateAnnotation(start, end, maxLength) {
17780
17492
  return __spreadProps(__spreadValues({}, range), {
17781
17493
  name: getRandomInt(0, 1e5).toString(),
17782
17494
  type: "misc_feature",
17783
- id: shortid(),
17495
+ id: nanoid(),
17784
17496
  forward: Math.random() > 0.5,
17785
17497
  notes: {}
17786
17498
  });
@@ -17903,7 +17615,7 @@ function getOrfsFromSequence(options) {
17903
17615
  forward,
17904
17616
  annotationTypePlural: "orfs",
17905
17617
  isOrf: true,
17906
- id: shortid()
17618
+ id: nanoid()
17907
17619
  });
17908
17620
  }
17909
17621
  }
package/index.umd.cjs CHANGED
@@ -3669,307 +3669,15 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
3669
3669
  const getFeatureTypes = /* @__PURE__ */ __name(({ includeHidden } = {}) => filter(getMergedFeatureMap(), (f) => includeHidden ? true : !f.isHidden).map(
3670
3670
  (f) => f.name
3671
3671
  ), "getFeatureTypes");
3672
- function getDefaultExportFromCjs(x) {
3673
- return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
3674
- }
3675
- __name(getDefaultExportFromCjs, "getDefaultExportFromCjs");
3676
- var lib = { exports: {} };
3677
- var randomFromSeed;
3678
- var hasRequiredRandomFromSeed;
3679
- function requireRandomFromSeed() {
3680
- if (hasRequiredRandomFromSeed) return randomFromSeed;
3681
- hasRequiredRandomFromSeed = 1;
3682
- var seed = 1;
3683
- function getNextValue() {
3684
- seed = (seed * 9301 + 49297) % 233280;
3685
- return seed / 233280;
3686
- }
3687
- __name(getNextValue, "getNextValue");
3688
- function setSeed(_seed_) {
3689
- seed = _seed_;
3690
- }
3691
- __name(setSeed, "setSeed");
3692
- randomFromSeed = {
3693
- nextValue: getNextValue,
3694
- seed: setSeed
3695
- };
3696
- return randomFromSeed;
3697
- }
3698
- __name(requireRandomFromSeed, "requireRandomFromSeed");
3699
- var alphabet_1;
3700
- var hasRequiredAlphabet;
3701
- function requireAlphabet() {
3702
- if (hasRequiredAlphabet) return alphabet_1;
3703
- hasRequiredAlphabet = 1;
3704
- var randomFromSeed2 = requireRandomFromSeed();
3705
- var ORIGINAL = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-";
3706
- var alphabet;
3707
- var previousSeed;
3708
- var shuffled;
3709
- function reset() {
3710
- shuffled = false;
3711
- }
3712
- __name(reset, "reset");
3713
- function setCharacters(_alphabet_) {
3714
- if (!_alphabet_) {
3715
- if (alphabet !== ORIGINAL) {
3716
- alphabet = ORIGINAL;
3717
- reset();
3718
- }
3719
- return;
3720
- }
3721
- if (_alphabet_ === alphabet) {
3722
- return;
3723
- }
3724
- if (_alphabet_.length !== ORIGINAL.length) {
3725
- throw new Error("Custom alphabet for shortid must be " + ORIGINAL.length + " unique characters. You submitted " + _alphabet_.length + " characters: " + _alphabet_);
3726
- }
3727
- var unique = _alphabet_.split("").filter(function(item, ind, arr) {
3728
- return ind !== arr.lastIndexOf(item);
3729
- });
3730
- if (unique.length) {
3731
- throw new Error("Custom alphabet for shortid must be " + ORIGINAL.length + " unique characters. These characters were not unique: " + unique.join(", "));
3732
- }
3733
- alphabet = _alphabet_;
3734
- reset();
3735
- }
3736
- __name(setCharacters, "setCharacters");
3737
- function characters(_alphabet_) {
3738
- setCharacters(_alphabet_);
3739
- return alphabet;
3740
- }
3741
- __name(characters, "characters");
3742
- function setSeed(seed) {
3743
- randomFromSeed2.seed(seed);
3744
- if (previousSeed !== seed) {
3745
- reset();
3746
- previousSeed = seed;
3747
- }
3748
- }
3749
- __name(setSeed, "setSeed");
3750
- function shuffle() {
3751
- if (!alphabet) {
3752
- setCharacters(ORIGINAL);
3753
- }
3754
- var sourceArray = alphabet.split("");
3755
- var targetArray = [];
3756
- var r = randomFromSeed2.nextValue();
3757
- var characterIndex;
3758
- while (sourceArray.length > 0) {
3759
- r = randomFromSeed2.nextValue();
3760
- characterIndex = Math.floor(r * sourceArray.length);
3761
- targetArray.push(sourceArray.splice(characterIndex, 1)[0]);
3762
- }
3763
- return targetArray.join("");
3764
- }
3765
- __name(shuffle, "shuffle");
3766
- function getShuffled() {
3767
- if (shuffled) {
3768
- return shuffled;
3769
- }
3770
- shuffled = shuffle();
3771
- return shuffled;
3772
- }
3773
- __name(getShuffled, "getShuffled");
3774
- function lookup(index) {
3775
- var alphabetShuffled = getShuffled();
3776
- return alphabetShuffled[index];
3777
- }
3778
- __name(lookup, "lookup");
3779
- function get2() {
3780
- return alphabet || ORIGINAL;
3781
- }
3782
- __name(get2, "get");
3783
- alphabet_1 = {
3784
- get: get2,
3785
- characters,
3786
- seed: setSeed,
3787
- lookup,
3788
- shuffled: getShuffled
3789
- };
3790
- return alphabet_1;
3791
- }
3792
- __name(requireAlphabet, "requireAlphabet");
3793
- var randomByteBrowser;
3794
- var hasRequiredRandomByteBrowser;
3795
- function requireRandomByteBrowser() {
3796
- if (hasRequiredRandomByteBrowser) return randomByteBrowser;
3797
- hasRequiredRandomByteBrowser = 1;
3798
- var crypto = typeof window === "object" && (window.crypto || window.msCrypto);
3799
- var randomByte;
3800
- if (!crypto || !crypto.getRandomValues) {
3801
- randomByte = /* @__PURE__ */ __name(function(size) {
3802
- var bytes = [];
3803
- for (var i = 0; i < size; i++) {
3804
- bytes.push(Math.floor(Math.random() * 256));
3805
- }
3806
- return bytes;
3807
- }, "randomByte");
3808
- } else {
3809
- randomByte = /* @__PURE__ */ __name(function(size) {
3810
- return crypto.getRandomValues(new Uint8Array(size));
3811
- }, "randomByte");
3812
- }
3813
- randomByteBrowser = randomByte;
3814
- return randomByteBrowser;
3815
- }
3816
- __name(requireRandomByteBrowser, "requireRandomByteBrowser");
3817
- var format_browser;
3818
- var hasRequiredFormat_browser;
3819
- function requireFormat_browser() {
3820
- if (hasRequiredFormat_browser) return format_browser;
3821
- hasRequiredFormat_browser = 1;
3822
- format_browser = /* @__PURE__ */ __name(function(random, alphabet, size) {
3823
- var mask = (2 << Math.log(alphabet.length - 1) / Math.LN2) - 1;
3824
- var step = -~(1.6 * mask * size / alphabet.length);
3825
- var id = "";
3826
- while (true) {
3827
- var bytes = random(step);
3828
- var i = step;
3829
- while (i--) {
3830
- id += alphabet[bytes[i] & mask] || "";
3831
- if (id.length === +size) return id;
3832
- }
3833
- }
3834
- }, "format_browser");
3835
- return format_browser;
3836
- }
3837
- __name(requireFormat_browser, "requireFormat_browser");
3838
- var generate_1;
3839
- var hasRequiredGenerate;
3840
- function requireGenerate() {
3841
- if (hasRequiredGenerate) return generate_1;
3842
- hasRequiredGenerate = 1;
3843
- var alphabet = requireAlphabet();
3844
- var random = requireRandomByteBrowser();
3845
- var format = /* @__PURE__ */ requireFormat_browser();
3846
- function generate(number) {
3847
- var loopCounter = 0;
3848
- var done;
3849
- var str = "";
3850
- while (!done) {
3851
- str = str + format(random, alphabet.get(), 1);
3852
- done = number < Math.pow(16, loopCounter + 1);
3853
- loopCounter++;
3854
- }
3855
- return str;
3856
- }
3857
- __name(generate, "generate");
3858
- generate_1 = generate;
3859
- return generate_1;
3860
- }
3861
- __name(requireGenerate, "requireGenerate");
3862
- var build_1;
3863
- var hasRequiredBuild;
3864
- function requireBuild() {
3865
- if (hasRequiredBuild) return build_1;
3866
- hasRequiredBuild = 1;
3867
- var generate = requireGenerate();
3868
- requireAlphabet();
3869
- var REDUCE_TIME = 1567752802062;
3870
- var version = 7;
3871
- var counter;
3872
- var previousSeconds;
3873
- function build(clusterWorkerId) {
3874
- var str = "";
3875
- var seconds = Math.floor((Date.now() - REDUCE_TIME) * 1e-3);
3876
- if (seconds === previousSeconds) {
3877
- counter++;
3878
- } else {
3879
- counter = 0;
3880
- previousSeconds = seconds;
3881
- }
3882
- str = str + generate(version);
3883
- str = str + generate(clusterWorkerId);
3884
- if (counter > 0) {
3885
- str = str + generate(counter);
3886
- }
3887
- str = str + generate(seconds);
3888
- return str;
3889
- }
3890
- __name(build, "build");
3891
- build_1 = build;
3892
- return build_1;
3893
- }
3894
- __name(requireBuild, "requireBuild");
3895
- var isValid;
3896
- var hasRequiredIsValid;
3897
- function requireIsValid() {
3898
- if (hasRequiredIsValid) return isValid;
3899
- hasRequiredIsValid = 1;
3900
- var alphabet = requireAlphabet();
3901
- function isShortId(id) {
3902
- if (!id || typeof id !== "string" || id.length < 6) {
3903
- return false;
3904
- }
3905
- var nonAlphabetic = new RegExp("[^" + alphabet.get().replace(/[|\\{}()[\]^$+*?.-]/g, "\\$&") + "]");
3906
- return !nonAlphabetic.test(id);
3907
- }
3908
- __name(isShortId, "isShortId");
3909
- isValid = isShortId;
3910
- return isValid;
3911
- }
3912
- __name(requireIsValid, "requireIsValid");
3913
- var clusterWorkerIdBrowser;
3914
- var hasRequiredClusterWorkerIdBrowser;
3915
- function requireClusterWorkerIdBrowser() {
3916
- if (hasRequiredClusterWorkerIdBrowser) return clusterWorkerIdBrowser;
3917
- hasRequiredClusterWorkerIdBrowser = 1;
3918
- clusterWorkerIdBrowser = 0;
3919
- return clusterWorkerIdBrowser;
3920
- }
3921
- __name(requireClusterWorkerIdBrowser, "requireClusterWorkerIdBrowser");
3922
- var hasRequiredLib;
3923
- function requireLib() {
3924
- if (hasRequiredLib) return lib.exports;
3925
- hasRequiredLib = 1;
3926
- (function(module2) {
3927
- var alphabet = requireAlphabet();
3928
- var build = requireBuild();
3929
- var isValid2 = requireIsValid();
3930
- var clusterWorkerId = requireClusterWorkerIdBrowser() || 0;
3931
- function seed(seedValue) {
3932
- alphabet.seed(seedValue);
3933
- return module2.exports;
3934
- }
3935
- __name(seed, "seed");
3936
- function worker(workerId) {
3937
- clusterWorkerId = workerId;
3938
- return module2.exports;
3939
- }
3940
- __name(worker, "worker");
3941
- function characters(newCharacters) {
3942
- if (newCharacters !== void 0) {
3943
- alphabet.characters(newCharacters);
3944
- }
3945
- return alphabet.shuffled();
3946
- }
3947
- __name(characters, "characters");
3948
- function generate() {
3949
- return build(clusterWorkerId);
3950
- }
3951
- __name(generate, "generate");
3952
- module2.exports = generate;
3953
- module2.exports.generate = generate;
3954
- module2.exports.seed = seed;
3955
- module2.exports.worker = worker;
3956
- module2.exports.characters = characters;
3957
- module2.exports.isValid = isValid2;
3958
- })(lib);
3959
- return lib.exports;
3960
- }
3961
- __name(requireLib, "requireLib");
3962
- var shortid$1;
3963
- var hasRequiredShortid;
3964
- function requireShortid() {
3965
- if (hasRequiredShortid) return shortid$1;
3966
- hasRequiredShortid = 1;
3967
- shortid$1 = requireLib();
3968
- return shortid$1;
3969
- }
3970
- __name(requireShortid, "requireShortid");
3971
- var shortidExports = requireShortid();
3972
- const shortid = /* @__PURE__ */ getDefaultExportFromCjs(shortidExports);
3672
+ const urlAlphabet = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
3673
+ let nanoid = /* @__PURE__ */ __name((size = 21) => {
3674
+ let id = "";
3675
+ let bytes = crypto.getRandomValues(new Uint8Array(size |= 0));
3676
+ while (size--) {
3677
+ id += urlAlphabet[bytes[size] & 63];
3678
+ }
3679
+ return id;
3680
+ }, "nanoid");
3973
3681
  function cutSequenceByRestrictionEnzyme(pSequence, circular, restrictionEnzyme) {
3974
3682
  if (restrictionEnzyme.forwardRegex.length === 0 || restrictionEnzyme.reverseRegex.length === 0) {
3975
3683
  const returnArray = [];
@@ -4177,7 +3885,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
4177
3885
  }
4178
3886
  const overhangBps = getSequenceWithinRange(cutRange, originalSequence);
4179
3887
  restrictionCutSite = {
4180
- id: shortid(),
3888
+ id: nanoid(),
4181
3889
  start,
4182
3890
  end,
4183
3891
  topSnipPosition,
@@ -4235,7 +3943,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
4235
3943
  });
4236
3944
  if (!circular && cutsites.length) {
4237
3945
  sortedCutsites.push({
4238
- id: "seqTerm_" + shortid(),
3946
+ id: "seqTerm_" + nanoid(),
4239
3947
  start: 0,
4240
3948
  end: 0,
4241
3949
  overhangBps: "",
@@ -4369,6 +4077,10 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
4369
4077
  });
4370
4078
  }
4371
4079
  __name(getDigestFragsForSeqAndEnzymes, "getDigestFragsForSeqAndEnzymes");
4080
+ function getDefaultExportFromCjs(x) {
4081
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
4082
+ }
4083
+ __name(getDefaultExportFromCjs, "getDefaultExportFromCjs");
4372
4084
  var jsondiffpatch_umd$1 = { exports: {} };
4373
4085
  var empty = {};
4374
4086
  var hasRequiredEmpty;
@@ -8967,10 +8679,10 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
8967
8679
  annotation.name = "Untitled annotation";
8968
8680
  }
8969
8681
  if (provideNewIdsForAnnotations) {
8970
- annotation.id = shortid();
8682
+ annotation.id = nanoid();
8971
8683
  }
8972
8684
  if (!annotation.id && annotation.id !== 0 && !doNotProvideIdsForAnnotations) {
8973
- annotation.id = shortid();
8685
+ annotation.id = nanoid();
8974
8686
  messages.push(
8975
8687
  "Unable to detect valid ID for annotation, setting ID to " + annotation.id
8976
8688
  );
@@ -9214,7 +8926,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
9214
8926
  if (item.id || item.id === 0) {
9215
8927
  itemId = item.id;
9216
8928
  } else {
9217
- itemId = shortid();
8929
+ itemId = nanoid();
9218
8930
  if (!doNotProvideIdsForAnnotations) {
9219
8931
  item.id = itemId;
9220
8932
  }
@@ -17784,7 +17496,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
17784
17496
  return __spreadProps(__spreadValues({}, range), {
17785
17497
  name: getRandomInt(0, 1e5).toString(),
17786
17498
  type: "misc_feature",
17787
- id: shortid(),
17499
+ id: nanoid(),
17788
17500
  forward: Math.random() > 0.5,
17789
17501
  notes: {}
17790
17502
  });
@@ -17907,7 +17619,7 @@ var __name = (target, value) => __defProp(target, "name", { value, configurable:
17907
17619
  forward,
17908
17620
  annotationTypePlural: "orfs",
17909
17621
  isOrf: true,
17910
- id: shortid()
17622
+ id: nanoid()
17911
17623
  });
17912
17624
  }
17913
17625
  }
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@teselagen/sequence-utils",
3
- "version": "0.3.32-beta.1",
3
+ "version": "0.3.32-beta.2",
4
4
  "type": "module",
5
5
  "dependencies": {
6
+ "@teselagen/range-utils": "0.3.14-beta.1",
6
7
  "escape-string-regexp": "5.0.0",
7
8
  "jsondiffpatch": "0.4.1",
8
- "string-splice": "^1.3.0",
9
9
  "lodash-es": "^4.17.21",
10
- "shortid": "2.2.16",
11
- "@teselagen/range-utils": "0.3.13"
10
+ "nanoid": "^5.1.5",
11
+ "string-splice": "^1.3.0"
12
12
  },
13
13
  "exports": {
14
14
  ".": {
@@ -16,5 +16,9 @@
16
16
  "require": "./index.cjs"
17
17
  }
18
18
  },
19
+ "volta": {
20
+ "node": "18.18.0",
21
+ "yarn": "1.22.22"
22
+ },
19
23
  "license": "MIT"
20
24
  }
@@ -1,4 +1,4 @@
1
- import shortid from "shortid";
1
+ import { nanoid } from "nanoid";
2
2
  import { flatMap, cloneDeep } from "lodash-es";
3
3
  import {
4
4
  normalizePositionByRangeLength,
@@ -27,7 +27,7 @@ function computeDigestFragments({
27
27
  });
28
28
  if (!circular && cutsites.length) {
29
29
  sortedCutsites.push({
30
- id: "seqTerm_" + shortid(),
30
+ id: "seqTerm_" + nanoid(),
31
31
  start: 0,
32
32
  end: 0,
33
33
  overhangBps: "",
@@ -1,5 +1,5 @@
1
1
  import { assign } from "lodash-es";
2
- import shortid from "shortid";
2
+ import { nanoid } from "nanoid";
3
3
  import getReverseComplementSequenceString from "./getReverseComplementSequenceString";
4
4
 
5
5
  import {
@@ -268,7 +268,7 @@ function cutSequence(
268
268
  const overhangBps = getSequenceWithinRange(cutRange, originalSequence);
269
269
 
270
270
  restrictionCutSite = {
271
- id: shortid(),
271
+ id: nanoid(),
272
272
  start,
273
273
  end,
274
274
  topSnipPosition,
@@ -1,5 +1,5 @@
1
1
  import { generateRandomRange } from "@teselagen/range-utils";
2
- import shortid from "shortid";
2
+ import { nanoid } from "nanoid";
3
3
 
4
4
  function generateAnnotations(
5
5
  numberOfAnnotationsToGenerate,
@@ -21,7 +21,7 @@ function generateAnnotation(start, end, maxLength) {
21
21
  ...range,
22
22
  name: getRandomInt(0, 100000).toString(),
23
23
  type: "misc_feature",
24
- id: shortid(),
24
+ id: nanoid(),
25
25
  forward: Math.random() > 0.5,
26
26
  notes: {}
27
27
  };
@@ -1,4 +1,4 @@
1
- import shortid from "shortid";
1
+ import { nanoid } from "nanoid";
2
2
  import getReverseComplementSequenceString from "./getReverseComplementSequenceString";
3
3
 
4
4
  /**
@@ -61,7 +61,7 @@ export default function getOrfsFromSequence(options) {
61
61
  forward: forward,
62
62
  annotationTypePlural: "orfs",
63
63
  isOrf: true,
64
- id: shortid()
64
+ id: nanoid()
65
65
  });
66
66
  }
67
67
  }
@@ -1,6 +1,6 @@
1
1
  import { cloneDeep, get, some } from "lodash-es";
2
2
  import { getFeatureToColorMap, getFeatureTypes } from "./featureTypesAndColors";
3
- import shortid from "shortid";
3
+ import { nanoid } from "nanoid";
4
4
 
5
5
  export default function tidyUpAnnotation(
6
6
  _annotation,
@@ -34,10 +34,10 @@ export default function tidyUpAnnotation(
34
34
  annotation.name = "Untitled annotation";
35
35
  }
36
36
  if (provideNewIdsForAnnotations) {
37
- annotation.id = shortid();
37
+ annotation.id = nanoid();
38
38
  }
39
39
  if (!annotation.id && annotation.id !== 0 && !doNotProvideIdsForAnnotations) {
40
- annotation.id = shortid();
40
+ annotation.id = nanoid();
41
41
  messages.push(
42
42
  "Unable to detect valid ID for annotation, setting ID to " + annotation.id
43
43
  );
@@ -1,5 +1,5 @@
1
1
  // tnrtodo: figure out where to insert this validation exactly..
2
- import shortid from "shortid";
2
+ import { nanoid } from "nanoid";
3
3
 
4
4
  import getAminoAcidDataForEachBaseOfDna from "./getAminoAcidDataForEachBaseOfDna";
5
5
  import { cloneDeep, flatMap } from "lodash-es";
@@ -155,7 +155,7 @@ export default function tidyUpSequenceData(pSeqData, options = {}) {
155
155
  if (item.id || item.id === 0) {
156
156
  itemId = item.id;
157
157
  } else {
158
- itemId = shortid();
158
+ itemId = nanoid();
159
159
  if (!doNotProvideIdsForAnnotations) {
160
160
  item.id = itemId; //assign the newly created id to the item
161
161
  }