@teselagen/ove 0.3.11 → 0.3.12
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/index.js +362 -209
- package/index.mjs +362 -209
- package/index.umd.js +339 -232
- package/package.json +1 -1
- package/src/AlignmentView/AlignmentVisibilityTool.js +1 -1
- package/src/AlignmentView/EditTrackNameDialog.js +1 -5
- package/src/AlignmentView/HorizontalPanelDragHandle.js +2 -2
- package/src/AlignmentView/Minimap.js +12 -12
- package/src/AlignmentView/PairwiseAlignmentView.js +1 -1
- package/src/AlignmentView/getGapMap.js +1 -1
- package/src/AlignmentView/getTrackFromEvent.js +1 -1
- package/src/AlignmentView/index.js +32 -37
- package/src/AutoAnnotate.js +48 -48
- package/src/CircularView/Cutsites.js +3 -3
- package/src/CircularView/Labels/index.js +7 -7
- package/src/CircularView/Labels/relaxLabels_DEPRECATED.js +5 -5
- package/src/CircularView/RotateCircularViewSlider.js +1 -1
- package/src/CircularView/SelectionLayer.js +2 -2
- package/src/CircularView/drawAnnotations.js +3 -3
- package/src/CircularView/getAngleForPositionMidpoint.js +1 -1
- package/src/CircularView/index.d.ts +11 -11
- package/src/CircularView/index.js +9 -9
- package/src/CreateAnnotationsPage.js +7 -5
- package/src/CreateCustomEnzyme/index.js +1 -5
- package/src/CutsiteFilter/AdditionalCutsiteInfoDialog.js +11 -11
- package/src/CutsiteFilter/index.js +12 -12
- package/src/DigestTool/AddLaddersDialog.js +1 -1
- package/src/DigestTool/DigestTool.js +3 -3
- package/src/DigestTool/Ladder.js +8 -8
- package/src/DigestTool/ladderDefaults.js +1 -2
- package/src/Editor/CommandHotkeyHandler.js +1 -1
- package/src/Editor/DropHandler.js +2 -2
- package/src/Editor/index.js +14 -14
- package/src/Editor/userDefinedHandlersAndOpts.js +2 -0
- package/src/FindBar/index.js +6 -6
- package/src/GlobalDialogUtils.js +6 -0
- package/src/LinearView/ZoomLinearView.js +1 -1
- package/src/LinearView/index.js +7 -7
- package/src/MenuBar/index.js +1 -1
- package/src/MenuBar/viewSubmenu.js +1 -1
- package/src/PCRTool/PCRTool.js +19 -19
- package/src/Reflex/Browser.js +4 -5
- package/src/Reflex/ReflexContainer.js +3 -3
- package/src/Reflex/ReflexElement.js +2 -2
- package/src/RowItem/Axis.js +1 -1
- package/src/RowItem/Caret/index.js +1 -1
- package/src/RowItem/Chromatograms/Chromatogram.js +3 -3
- package/src/RowItem/CutsiteSelectionLayers.js +1 -1
- package/src/RowItem/Cutsites.js +1 -1
- package/src/RowItem/Labels.js +2 -2
- package/src/RowItem/Orfs.js +2 -2
- package/src/RowItem/Sequence.js +4 -4
- package/src/RowItem/StackedAnnotations/PointedAnnotation.js +3 -3
- package/src/RowItem/StackedAnnotations/getStructuredBases.js +1 -1
- package/src/RowItem/Translations/AASliver.js +71 -75
- package/src/RowItem/Translations/index.js +1 -1
- package/src/RowItem/getCutsiteLabelHeights.js +1 -1
- package/src/RowItem/index.js +14 -8
- package/src/RowView/estimateRowHeight.js +5 -5
- package/src/RowView/index.d.ts +7 -7
- package/src/RowView/index.js +11 -12
- package/src/SimpleCircularOrLinearView.js +6 -6
- package/src/StatusBar/MeltingTemp.js +3 -3
- package/src/ToolBar/ToolbarItem.js +2 -2
- package/src/ToolBar/alignmentTool.js +9 -9
- package/src/ToolBar/editTool.js +1 -1
- package/src/ToolBar/findTool.js +2 -2
- package/src/ToolBar/importTool.js +1 -1
- package/src/ToolBar/index.js +2 -2
- package/src/ToolBar/oligoTool.js +1 -1
- package/src/ToolBar/orfTool.js +1 -6
- package/src/ToolBar/printTool.js +2 -2
- package/src/ToolBar/visibilityTool.js +1 -1
- package/src/VersionHistoryView/index.js +2 -2
- package/src/commands/index.js +236 -230
- package/src/createVectorEditor/index.js +4 -4
- package/src/fileUtils.js +18 -18
- package/src/helperComponents/AddOrEditAnnotationDialog/index.js +22 -15
- package/src/helperComponents/AddOrEditFeatureDialog/index.js +2 -2
- package/src/helperComponents/AddOrEditPartDialog/index.js +2 -2
- package/src/helperComponents/AddOrEditPrimerDialog/index.js +5 -5
- package/src/helperComponents/EnzymesDialog/index.js +17 -22
- package/src/helperComponents/GoToDialog.js +5 -1
- package/src/helperComponents/MergeFeaturesDialog/index.js +3 -3
- package/src/helperComponents/PinchHelper/PinchHelper.js +1 -1
- package/src/helperComponents/PrintDialog/index.js +4 -4
- package/src/helperComponents/PropertiesDialog/CutsiteProperties.js +3 -3
- package/src/helperComponents/PropertiesDialog/GenbankView.js +1 -1
- package/src/helperComponents/PropertiesDialog/GeneralProperties.js +5 -5
- package/src/helperComponents/PropertiesDialog/GenericAnnotationProperties.js +136 -138
- package/src/helperComponents/PropertiesDialog/OrfProperties.js +3 -3
- package/src/helperComponents/PropertiesDialog/PrimerProperties.js +1 -1
- package/src/helperComponents/PropertiesDialog/TranslationProperties.js +2 -2
- package/src/helperComponents/PropertiesDialog/index.js +3 -3
- package/src/helperComponents/RemoveDuplicates/index.js +3 -3
- package/src/helperComponents/SelectDialog.js +3 -3
- package/src/helperComponents/UncontrolledSliderWithPlusMinusBtns.js +5 -5
- package/src/helperComponents/createSimpleDialog.js +1 -1
- package/src/helperComponents/partTagSearch.js +2 -5
- package/src/helperComponents/withHover.js +3 -3
- package/src/redux/alignments.js +6 -6
- package/src/redux/annotationVisibility.js +4 -4
- package/src/redux/featureLengthsToHide.js +1 -1
- package/src/redux/frameTranslations.js +3 -3
- package/src/redux/middleware.js +2 -2
- package/src/redux/panelsShown.js +19 -19
- package/src/redux/partLengthsToHide.js +1 -1
- package/src/redux/primerLengthsToHide.js +1 -1
- package/src/redux/readOnly.js +1 -4
- package/src/redux/selectionLayer.js +1 -1
- package/src/redux/sequenceData/features.js +1 -1
- package/src/redux/sequenceData/upsertDeleteActionGenerator.js +1 -1
- package/src/redux/sequenceDataHistory.js +5 -5
- package/src/redux/toolBar.js +2 -4
- package/src/redux/utils/createMetaAction.js +2 -2
- package/src/redux/versionHistory.js +1 -2
- package/src/selectors/annotationSearchSelector.js +4 -4
- package/src/selectors/circularSelector.js +1 -1
- package/src/selectors/cutsiteLabelColorSelector.js +1 -1
- package/src/selectors/filteredCutsitesSelector.js +6 -6
- package/src/selectors/filteredFeaturesSelector.js +4 -4
- package/src/selectors/filteredPartsSelector.js +5 -5
- package/src/selectors/filteredPrimersSelector.js +3 -3
- package/src/selectors/isEnzymeFilterAndSelector.js +1 -1
- package/src/selectors/orfsSelector.js +1 -1
- package/src/selectors/restrictionEnzymesSelector.js +2 -2
- package/src/selectors/searchLayersSelector.js +7 -7
- package/src/selectors/sequenceLengthSelector.js +1 -1
- package/src/selectors/sequenceSelector.js +1 -1
- package/src/selectors/tagsToBoldSelector.js +1 -1
- package/src/selectors/translationsSelector.js +7 -7
- package/src/updateEditor.js +1 -1
- package/src/utils/PassThrough.js +1 -1
- package/src/utils/addWrappedAddons.js +1 -1
- package/src/utils/annotationTypes.js +2 -2
- package/src/utils/combineReducersDontIgnoreKeys.js +1 -1
- package/src/utils/editorUtils.js +2 -2
- package/src/utils/massageTickSpacing.js +1 -1
- package/src/utils/onlyUpdateForKeysDeep.js +1 -1
- package/src/utils/pureNoFunc.js +1 -1
- package/src/utils/shouldRerender.js +1 -1
- package/src/utils/showFileDialog.js +6 -7
- package/src/utils/updateLabelsForInViewFeatures.js +1 -1
- package/src/utils/useAnnotationLimits.js +1 -1
- package/src/withEditorInteractions/Keyboard.js +2 -3
- package/src/withEditorInteractions/createSequenceInputPopup.js +4 -4
- package/src/withEditorInteractions/index.js +93 -55
- package/src/withEditorProps/index.js +40 -37
package/index.js
CHANGED
|
@@ -7425,7 +7425,7 @@ function getPlainObjectKeys(object) {
|
|
|
7425
7425
|
var ownKeys$8 = typeof Reflect !== "undefined" && Reflect.ownKeys ? Reflect.ownKeys : hasGetOwnPropertySymbols ? function (obj) {
|
|
7426
7426
|
return Object.getOwnPropertyNames(obj).concat(Object.getOwnPropertySymbols(obj));
|
|
7427
7427
|
} : /* istanbul ignore next */Object.getOwnPropertyNames;
|
|
7428
|
-
function toPrimitive$
|
|
7428
|
+
function toPrimitive$2(value) {
|
|
7429
7429
|
return value === null ? null : typeof value === "object" ? "" + value : value;
|
|
7430
7430
|
}
|
|
7431
7431
|
function hasProp(target, prop) {
|
|
@@ -8354,7 +8354,7 @@ var ObservableValue = /*#__PURE__*/function (_Atom) {
|
|
|
8354
8354
|
return this.name_ + "[" + this.value_ + "]";
|
|
8355
8355
|
};
|
|
8356
8356
|
_proto.valueOf = function valueOf() {
|
|
8357
|
-
return toPrimitive$
|
|
8357
|
+
return toPrimitive$2(this.get());
|
|
8358
8358
|
};
|
|
8359
8359
|
_proto[_Symbol$toPrimitive] = function () {
|
|
8360
8360
|
return this.valueOf();
|
|
@@ -8582,7 +8582,7 @@ var ComputedValue = /*#__PURE__*/function () {
|
|
|
8582
8582
|
return this.name_ + "[" + this.derivation.toString() + "]";
|
|
8583
8583
|
};
|
|
8584
8584
|
_proto.valueOf = function valueOf() {
|
|
8585
|
-
return toPrimitive$
|
|
8585
|
+
return toPrimitive$2(this.get());
|
|
8586
8586
|
};
|
|
8587
8587
|
_proto[_Symbol$toPrimitive$1] = function () {
|
|
8588
8588
|
return this.valueOf();
|
|
@@ -30279,10 +30279,18 @@ var _fails = function (exec) {
|
|
|
30279
30279
|
}
|
|
30280
30280
|
};
|
|
30281
30281
|
|
|
30282
|
-
|
|
30283
|
-
var
|
|
30284
|
-
|
|
30285
|
-
|
|
30282
|
+
var _descriptors;
|
|
30283
|
+
var hasRequired_descriptors;
|
|
30284
|
+
|
|
30285
|
+
function require_descriptors () {
|
|
30286
|
+
if (hasRequired_descriptors) return _descriptors;
|
|
30287
|
+
hasRequired_descriptors = 1;
|
|
30288
|
+
// Thank's IE8 for his funny defineProperty
|
|
30289
|
+
_descriptors = !_fails(function () {
|
|
30290
|
+
return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
|
|
30291
|
+
});
|
|
30292
|
+
return _descriptors;
|
|
30293
|
+
}
|
|
30286
30294
|
|
|
30287
30295
|
var _domCreate;
|
|
30288
30296
|
var hasRequired_domCreate;
|
|
@@ -30300,9 +30308,17 @@ function require_domCreate () {
|
|
|
30300
30308
|
return _domCreate;
|
|
30301
30309
|
}
|
|
30302
30310
|
|
|
30303
|
-
var _ie8DomDefine
|
|
30304
|
-
|
|
30305
|
-
|
|
30311
|
+
var _ie8DomDefine;
|
|
30312
|
+
var hasRequired_ie8DomDefine;
|
|
30313
|
+
|
|
30314
|
+
function require_ie8DomDefine () {
|
|
30315
|
+
if (hasRequired_ie8DomDefine) return _ie8DomDefine;
|
|
30316
|
+
hasRequired_ie8DomDefine = 1;
|
|
30317
|
+
_ie8DomDefine = !require_descriptors() && !_fails(function () {
|
|
30318
|
+
return Object.defineProperty(require_domCreate()('div'), 'a', { get: function () { return 7; } }).a != 7;
|
|
30319
|
+
});
|
|
30320
|
+
return _ie8DomDefine;
|
|
30321
|
+
}
|
|
30306
30322
|
|
|
30307
30323
|
// 7.1.1 ToPrimitive(input [, PreferredType])
|
|
30308
30324
|
var isObject$d = _isObject;
|
|
@@ -30317,22 +30333,29 @@ var _toPrimitive$1 = function (it, S) {
|
|
|
30317
30333
|
throw TypeError("Can't convert object to primitive value");
|
|
30318
30334
|
};
|
|
30319
30335
|
|
|
30320
|
-
var
|
|
30321
|
-
var IE8_DOM_DEFINE$1 = _ie8DomDefine;
|
|
30322
|
-
var toPrimitive$2 = _toPrimitive$1;
|
|
30323
|
-
var dP$3 = Object.defineProperty;
|
|
30336
|
+
var hasRequired_objectDp;
|
|
30324
30337
|
|
|
30325
|
-
|
|
30326
|
-
|
|
30327
|
-
|
|
30328
|
-
|
|
30329
|
-
|
|
30330
|
-
|
|
30331
|
-
|
|
30332
|
-
|
|
30333
|
-
|
|
30334
|
-
|
|
30335
|
-
|
|
30338
|
+
function require_objectDp () {
|
|
30339
|
+
if (hasRequired_objectDp) return _objectDp;
|
|
30340
|
+
hasRequired_objectDp = 1;
|
|
30341
|
+
var anObject = _anObject;
|
|
30342
|
+
var IE8_DOM_DEFINE = require_ie8DomDefine();
|
|
30343
|
+
var toPrimitive = _toPrimitive$1;
|
|
30344
|
+
var dP = Object.defineProperty;
|
|
30345
|
+
|
|
30346
|
+
_objectDp.f = require_descriptors() ? Object.defineProperty : function defineProperty(O, P, Attributes) {
|
|
30347
|
+
anObject(O);
|
|
30348
|
+
P = toPrimitive(P, true);
|
|
30349
|
+
anObject(Attributes);
|
|
30350
|
+
if (IE8_DOM_DEFINE) try {
|
|
30351
|
+
return dP(O, P, Attributes);
|
|
30352
|
+
} catch (e) { /* empty */ }
|
|
30353
|
+
if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
|
|
30354
|
+
if ('value' in Attributes) O[P] = Attributes.value;
|
|
30355
|
+
return O;
|
|
30356
|
+
};
|
|
30357
|
+
return _objectDp;
|
|
30358
|
+
}
|
|
30336
30359
|
|
|
30337
30360
|
var _propertyDesc = function (bitmap, value) {
|
|
30338
30361
|
return {
|
|
@@ -30343,9 +30366,9 @@ var _propertyDesc = function (bitmap, value) {
|
|
|
30343
30366
|
};
|
|
30344
30367
|
};
|
|
30345
30368
|
|
|
30346
|
-
var dP$2 =
|
|
30369
|
+
var dP$2 = require_objectDp();
|
|
30347
30370
|
var createDesc$3 = _propertyDesc;
|
|
30348
|
-
var _hide =
|
|
30371
|
+
var _hide = require_descriptors() ? function (object, key, value) {
|
|
30349
30372
|
return dP$2.f(object, key, createDesc$3(1, value));
|
|
30350
30373
|
} : function (object, key, value) {
|
|
30351
30374
|
object[key] = value;
|
|
@@ -30590,7 +30613,7 @@ function require_objectAssign () {
|
|
|
30590
30613
|
if (hasRequired_objectAssign) return _objectAssign;
|
|
30591
30614
|
hasRequired_objectAssign = 1;
|
|
30592
30615
|
// 19.1.2.1 Object.assign(target, source, ...)
|
|
30593
|
-
var DESCRIPTORS =
|
|
30616
|
+
var DESCRIPTORS = require_descriptors();
|
|
30594
30617
|
var getKeys = _objectKeys;
|
|
30595
30618
|
var gOPS = _objectGops;
|
|
30596
30619
|
var pIE = require_objectPie();
|
|
@@ -30666,11 +30689,11 @@ var _iterators = {};
|
|
|
30666
30689
|
|
|
30667
30690
|
var _redefine = _hide;
|
|
30668
30691
|
|
|
30669
|
-
var dP$1 =
|
|
30692
|
+
var dP$1 = require_objectDp();
|
|
30670
30693
|
var anObject$4 = _anObject;
|
|
30671
30694
|
var getKeys$1 = _objectKeys;
|
|
30672
30695
|
|
|
30673
|
-
var _objectDps =
|
|
30696
|
+
var _objectDps = require_descriptors() ? Object.defineProperties : function defineProperties(O, Properties) {
|
|
30674
30697
|
anObject$4(O);
|
|
30675
30698
|
var keys = getKeys$1(Properties);
|
|
30676
30699
|
var length = keys.length;
|
|
@@ -30749,7 +30772,7 @@ $exports.store = store$2;
|
|
|
30749
30772
|
|
|
30750
30773
|
var _wksExports = _wks.exports;
|
|
30751
30774
|
|
|
30752
|
-
var def =
|
|
30775
|
+
var def = require_objectDp().f;
|
|
30753
30776
|
var has$c = _has;
|
|
30754
30777
|
var TAG$1 = _wksExports('toStringTag');
|
|
30755
30778
|
|
|
@@ -31063,7 +31086,7 @@ var _isArrayIter = function (it) {
|
|
|
31063
31086
|
return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
|
|
31064
31087
|
};
|
|
31065
31088
|
|
|
31066
|
-
var $defineProperty$2 =
|
|
31089
|
+
var $defineProperty$2 = require_objectDp();
|
|
31067
31090
|
var createDesc$2 = _propertyDesc;
|
|
31068
31091
|
|
|
31069
31092
|
var _createProperty = function (object, index, value) {
|
|
@@ -31196,7 +31219,7 @@ var _default$9 = function (instance, Constructor) {
|
|
|
31196
31219
|
|
|
31197
31220
|
var $export$3 = _export;
|
|
31198
31221
|
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
|
|
31199
|
-
$export$3($export$3.S + $export$3.F * !
|
|
31222
|
+
$export$3($export$3.S + $export$3.F * !require_descriptors(), 'Object', { defineProperty: require_objectDp().f });
|
|
31200
31223
|
|
|
31201
31224
|
var $Object$2 = _coreExports.Object;
|
|
31202
31225
|
var defineProperty$c = function defineProperty(it, key, desc) {
|
|
@@ -31244,7 +31267,7 @@ var _meta = {exports: {}};
|
|
|
31244
31267
|
var META$1 = _uid('meta');
|
|
31245
31268
|
var isObject$c = _isObject;
|
|
31246
31269
|
var has$a = _has;
|
|
31247
|
-
var setDesc =
|
|
31270
|
+
var setDesc = require_objectDp().f;
|
|
31248
31271
|
var id$1 = 0;
|
|
31249
31272
|
var isExtensible = Object.isExtensible || function () {
|
|
31250
31273
|
return true;
|
|
@@ -31299,7 +31322,7 @@ var _metaExports = _meta.exports;
|
|
|
31299
31322
|
|
|
31300
31323
|
var core = _coreExports;
|
|
31301
31324
|
var wksExt$1 = _wksExt;
|
|
31302
|
-
var defineProperty$a =
|
|
31325
|
+
var defineProperty$a = require_objectDp().f;
|
|
31303
31326
|
var _wksDefine = function (name) {
|
|
31304
31327
|
var $Symbol = core.Symbol || (core.Symbol = {} );
|
|
31305
31328
|
if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty$a($Symbol, name, { value: wksExt$1.f(name) });
|
|
@@ -31366,10 +31389,10 @@ var createDesc$1 = _propertyDesc;
|
|
|
31366
31389
|
var toIObject$1 = _toIobject;
|
|
31367
31390
|
var toPrimitive$1 = _toPrimitive$1;
|
|
31368
31391
|
var has$9 = _has;
|
|
31369
|
-
var IE8_DOM_DEFINE =
|
|
31392
|
+
var IE8_DOM_DEFINE = require_ie8DomDefine();
|
|
31370
31393
|
var gOPD$5 = Object.getOwnPropertyDescriptor;
|
|
31371
31394
|
|
|
31372
|
-
_objectGopd.f =
|
|
31395
|
+
_objectGopd.f = require_descriptors() ? gOPD$5 : function getOwnPropertyDescriptor(O, P) {
|
|
31373
31396
|
O = toIObject$1(O);
|
|
31374
31397
|
P = toPrimitive$1(P, true);
|
|
31375
31398
|
if (IE8_DOM_DEFINE) try {
|
|
@@ -31381,7 +31404,7 @@ _objectGopd.f = _descriptors ? gOPD$5 : function getOwnPropertyDescriptor(O, P)
|
|
|
31381
31404
|
// ECMAScript 6 symbols shim
|
|
31382
31405
|
var global$2 = _globalExports;
|
|
31383
31406
|
var has$8 = _has;
|
|
31384
|
-
var DESCRIPTORS =
|
|
31407
|
+
var DESCRIPTORS = require_descriptors();
|
|
31385
31408
|
var $export$2 = _export;
|
|
31386
31409
|
var redefine = _redefine;
|
|
31387
31410
|
var META = _metaExports.KEY;
|
|
@@ -31404,7 +31427,7 @@ var _create$1 = _objectCreate;
|
|
|
31404
31427
|
var gOPNExt = _objectGopnExt;
|
|
31405
31428
|
var $GOPD = _objectGopd;
|
|
31406
31429
|
var $GOPS = _objectGops;
|
|
31407
|
-
var $DP =
|
|
31430
|
+
var $DP = require_objectDp();
|
|
31408
31431
|
var $keys$1 = _objectKeys;
|
|
31409
31432
|
var gOPD$4 = $GOPD.f;
|
|
31410
31433
|
var dP = $DP.f;
|
|
@@ -85373,13 +85396,7 @@ function withTableParams(compOrOpts, pTopLevelOpts) {
|
|
|
85373
85396
|
return {};
|
|
85374
85397
|
}
|
|
85375
85398
|
const mergedOpts = getMergedOpts(topLevelOptions, ownProps);
|
|
85376
|
-
const {
|
|
85377
|
-
formName,
|
|
85378
|
-
urlConnected,
|
|
85379
|
-
history,
|
|
85380
|
-
defaults,
|
|
85381
|
-
onlyOneFilter
|
|
85382
|
-
} = mergedOpts;
|
|
85399
|
+
const { formName, urlConnected, history, defaults, onlyOneFilter } = mergedOpts;
|
|
85383
85400
|
function updateSearch(val) {
|
|
85384
85401
|
setTimeout(function() {
|
|
85385
85402
|
dispatch(reduxForm.change(formName, "reduxFormSearchInput", val || ""));
|
|
@@ -85418,12 +85435,7 @@ function withTableParams(compOrOpts, pTopLevelOpts) {
|
|
|
85418
85435
|
action(...args, currentParams);
|
|
85419
85436
|
};
|
|
85420
85437
|
});
|
|
85421
|
-
const {
|
|
85422
|
-
variables,
|
|
85423
|
-
selectedEntities,
|
|
85424
|
-
mergedOpts,
|
|
85425
|
-
...restStateProps
|
|
85426
|
-
} = stateProps;
|
|
85438
|
+
const { variables, selectedEntities, mergedOpts, ...restStateProps } = stateProps;
|
|
85427
85439
|
const changeFormValue = (...args) => dispatchProps.dispatch(reduxForm.change(formName, ...args));
|
|
85428
85440
|
const tableParams = {
|
|
85429
85441
|
changeFormValue,
|
|
@@ -89319,7 +89331,9 @@ const wrapDialog = (topLevelDialogProps = {}) => (Component) => (props) => {
|
|
|
89319
89331
|
return doNotTriggerClick();
|
|
89320
89332
|
}
|
|
89321
89333
|
const parentEl = r.current?.closest(".bp3-dialog-container");
|
|
89322
|
-
const dialogs = document.querySelectorAll(
|
|
89334
|
+
const dialogs = document.querySelectorAll(
|
|
89335
|
+
".bp3-dialog-container"
|
|
89336
|
+
);
|
|
89323
89337
|
const numDialogs = dialogs?.length;
|
|
89324
89338
|
if (numDialogs > 1) {
|
|
89325
89339
|
const topMostDialog = dialogs[numDialogs - 1];
|
|
@@ -89658,6 +89672,7 @@ function MatchHeaders({
|
|
|
89658
89672
|
marginBottom: 10,
|
|
89659
89673
|
marginLeft: 20,
|
|
89660
89674
|
fontSize: 10
|
|
89675
|
+
/* color: Colors.RED1 */
|
|
89661
89676
|
}
|
|
89662
89677
|
},
|
|
89663
89678
|
userMatchedHeader && [
|
|
@@ -91646,10 +91661,7 @@ const UploadCsvWizardDialog = compose(
|
|
|
91646
91661
|
if (props.filesWIssues.length > 0) {
|
|
91647
91662
|
const reduxFormEntitiesArray = [];
|
|
91648
91663
|
const finishedFiles = props.filesWIssues.map((f, i) => {
|
|
91649
|
-
const {
|
|
91650
|
-
reduxFormEntities,
|
|
91651
|
-
reduxFormCellValidation
|
|
91652
|
-
} = reduxForm.formValueSelector(`editableCellTable-${i}`)(
|
|
91664
|
+
const { reduxFormEntities, reduxFormCellValidation } = reduxForm.formValueSelector(`editableCellTable-${i}`)(
|
|
91653
91665
|
state,
|
|
91654
91666
|
"reduxFormEntities",
|
|
91655
91667
|
"reduxFormCellValidation"
|
|
@@ -103904,7 +103916,14 @@ const EnhancedMenuItem = compose(
|
|
|
103904
103916
|
}
|
|
103905
103917
|
}),
|
|
103906
103918
|
branch(({ navTo }) => navTo, withRouter$1)
|
|
103907
|
-
)(function({
|
|
103919
|
+
)(function({
|
|
103920
|
+
navTo,
|
|
103921
|
+
context,
|
|
103922
|
+
staticContext,
|
|
103923
|
+
didMount,
|
|
103924
|
+
willUnmount,
|
|
103925
|
+
...props
|
|
103926
|
+
}) {
|
|
103908
103927
|
let MenuItemComp = core$5.MenuItem;
|
|
103909
103928
|
if (navTo) {
|
|
103910
103929
|
MenuItemComp = MenuItemLink;
|
|
@@ -104962,11 +104981,7 @@ function getCommandHotkeyHandlers(commands) {
|
|
|
104962
104981
|
return handlers;
|
|
104963
104982
|
}
|
|
104964
104983
|
|
|
104965
|
-
const withCommand = (mappings) => (WrappedComponent) => ({
|
|
104966
|
-
cmd,
|
|
104967
|
-
cmdOptions = {},
|
|
104968
|
-
...props
|
|
104969
|
-
}) => {
|
|
104984
|
+
const withCommand = (mappings) => (WrappedComponent) => ({ cmd, cmdOptions = {}, ...props }) => {
|
|
104970
104985
|
const mappedProps = {};
|
|
104971
104986
|
Object.keys(mappings).forEach((k) => {
|
|
104972
104987
|
mappedProps[k] = mappings[k] === "execute" ? (event) => cmd.execute({ event }) : typeof mappings[k] === "function" ? mappings[k](cmd, props) : cmd[mappings[k]];
|
|
@@ -106113,9 +106128,9 @@ const frameTranslations = createReducer(
|
|
|
106113
106128
|
}
|
|
106114
106129
|
},
|
|
106115
106130
|
{
|
|
106116
|
-
|
|
106117
|
-
|
|
106118
|
-
|
|
106131
|
+
1: false,
|
|
106132
|
+
2: false,
|
|
106133
|
+
3: false,
|
|
106119
106134
|
"-1": false,
|
|
106120
106135
|
"-2": false,
|
|
106121
106136
|
"-3": false
|
|
@@ -106844,9 +106859,14 @@ function checkIfNonCircularRangesOverlap(range, comparisonRange) {
|
|
|
106844
106859
|
|
|
106845
106860
|
function checkIfPotentiallyCircularRangesOverlap(range, comparisonRange) {
|
|
106846
106861
|
return splitRangeIntoTwoPartsIfItIsCircular(range, Infinity).some(function(splitRange) {
|
|
106847
|
-
return splitRangeIntoTwoPartsIfItIsCircular(comparisonRange, Infinity).some(
|
|
106848
|
-
|
|
106849
|
-
|
|
106862
|
+
return splitRangeIntoTwoPartsIfItIsCircular(comparisonRange, Infinity).some(
|
|
106863
|
+
function(splitComparisonRange) {
|
|
106864
|
+
return checkIfNonCircularRangesOverlap(
|
|
106865
|
+
splitRange,
|
|
106866
|
+
splitComparisonRange
|
|
106867
|
+
);
|
|
106868
|
+
}
|
|
106869
|
+
);
|
|
106850
106870
|
});
|
|
106851
106871
|
}
|
|
106852
106872
|
|
|
@@ -106856,15 +106876,19 @@ function collapseOverlapsGeneratedFromRangeComparisonIfPossible(overlaps, sequen
|
|
|
106856
106876
|
return overlaps;
|
|
106857
106877
|
} else if (overlaps.length === 2) {
|
|
106858
106878
|
if (overlaps[0].start === 0 && overlaps[1].end + 1 === sequenceLength && !originalRangeLinear) {
|
|
106859
|
-
return [
|
|
106860
|
-
|
|
106861
|
-
|
|
106862
|
-
|
|
106879
|
+
return [
|
|
106880
|
+
{
|
|
106881
|
+
start: overlaps[1].start,
|
|
106882
|
+
end: overlaps[0].end
|
|
106883
|
+
}
|
|
106884
|
+
];
|
|
106863
106885
|
} else if (overlaps[1].start === 0 && overlaps[0].end + 1 === sequenceLength && !originalRangeLinear) {
|
|
106864
|
-
return [
|
|
106865
|
-
|
|
106866
|
-
|
|
106867
|
-
|
|
106886
|
+
return [
|
|
106887
|
+
{
|
|
106888
|
+
start: overlaps[0].start,
|
|
106889
|
+
end: overlaps[1].end
|
|
106890
|
+
}
|
|
106891
|
+
];
|
|
106868
106892
|
} else {
|
|
106869
106893
|
return overlaps;
|
|
106870
106894
|
}
|
|
@@ -106872,17 +106896,29 @@ function collapseOverlapsGeneratedFromRangeComparisonIfPossible(overlaps, sequen
|
|
|
106872
106896
|
const firstOverlap = overlaps[0];
|
|
106873
106897
|
const secondOverlap = overlaps[1];
|
|
106874
106898
|
const thirdOverlap = overlaps[2];
|
|
106875
|
-
let collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106899
|
+
let collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106900
|
+
[firstOverlap, secondOverlap],
|
|
106901
|
+
sequenceLength,
|
|
106902
|
+
optionalOriginalRange
|
|
106903
|
+
);
|
|
106876
106904
|
if (collapsedOverlaps.length === 1) {
|
|
106877
106905
|
collapsedOverlaps.push(thirdOverlap);
|
|
106878
106906
|
return collapsedOverlaps;
|
|
106879
106907
|
} else {
|
|
106880
|
-
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106908
|
+
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106909
|
+
[firstOverlap, thirdOverlap],
|
|
106910
|
+
sequenceLength,
|
|
106911
|
+
optionalOriginalRange
|
|
106912
|
+
);
|
|
106881
106913
|
if (collapsedOverlaps.length === 1) {
|
|
106882
106914
|
collapsedOverlaps.push(secondOverlap);
|
|
106883
106915
|
return collapsedOverlaps;
|
|
106884
106916
|
} else {
|
|
106885
|
-
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106917
|
+
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106918
|
+
[secondOverlap, thirdOverlap],
|
|
106919
|
+
sequenceLength,
|
|
106920
|
+
optionalOriginalRange
|
|
106921
|
+
);
|
|
106886
106922
|
if (collapsedOverlaps.length === 1) {
|
|
106887
106923
|
collapsedOverlaps.push(firstOverlap);
|
|
106888
106924
|
return collapsedOverlaps;
|
|
@@ -106904,11 +106940,18 @@ function convertRangeIndices(range, inputType, outputType) {
|
|
|
106904
106940
|
}
|
|
106905
106941
|
|
|
106906
106942
|
function convertRangeTo0Based(range) {
|
|
106907
|
-
return convertRangeIndices(range, {
|
|
106943
|
+
return convertRangeIndices(range, {
|
|
106944
|
+
inclusive1BasedStart: true,
|
|
106945
|
+
inclusive1BasedEnd: true
|
|
106946
|
+
});
|
|
106908
106947
|
}
|
|
106909
106948
|
|
|
106910
106949
|
function convertRangeTo1Based(range) {
|
|
106911
|
-
return convertRangeIndices(
|
|
106950
|
+
return convertRangeIndices(
|
|
106951
|
+
range,
|
|
106952
|
+
{},
|
|
106953
|
+
{ inclusive1BasedStart: true, inclusive1BasedEnd: true }
|
|
106954
|
+
);
|
|
106912
106955
|
}
|
|
106913
106956
|
|
|
106914
106957
|
function provideInclusiveOptions(funToWrap) {
|
|
@@ -107013,7 +107056,11 @@ function expandOrContractCircularRangeToPosition(range, position, maxLength) {
|
|
|
107013
107056
|
let endMoved = true;
|
|
107014
107057
|
if (range.end >= position) {
|
|
107015
107058
|
if (position + maxLength - range.start > range.end - position) {
|
|
107016
|
-
newRange.end = normalizePositionByRangeLength(
|
|
107059
|
+
newRange.end = normalizePositionByRangeLength(
|
|
107060
|
+
position - 1,
|
|
107061
|
+
maxLength,
|
|
107062
|
+
false
|
|
107063
|
+
);
|
|
107017
107064
|
} else {
|
|
107018
107065
|
newRange.start = position;
|
|
107019
107066
|
endMoved = false;
|
|
@@ -107086,19 +107133,31 @@ function expandOrContractRangeToPosition(range, position, maxLength) {
|
|
|
107086
107133
|
if (range.start > range.end) {
|
|
107087
107134
|
return expandOrContractCircularRangeToPosition(range, position, maxLength);
|
|
107088
107135
|
} else {
|
|
107089
|
-
return expandOrContractNonCircularRangeToPosition(
|
|
107136
|
+
return expandOrContractNonCircularRangeToPosition(
|
|
107137
|
+
range,
|
|
107138
|
+
position);
|
|
107090
107139
|
}
|
|
107091
107140
|
}
|
|
107092
107141
|
|
|
107093
107142
|
function translateRange(rangeToBeAdjusted, translateBy, rangeLength) {
|
|
107094
107143
|
return lodashExports.assign({}, rangeToBeAdjusted, {
|
|
107095
|
-
start: normalizePositionByRangeLength(
|
|
107096
|
-
|
|
107144
|
+
start: normalizePositionByRangeLength(
|
|
107145
|
+
rangeToBeAdjusted.start + translateBy,
|
|
107146
|
+
rangeLength
|
|
107147
|
+
),
|
|
107148
|
+
end: normalizePositionByRangeLength(
|
|
107149
|
+
rangeToBeAdjusted.end + translateBy,
|
|
107150
|
+
rangeLength
|
|
107151
|
+
)
|
|
107097
107152
|
});
|
|
107098
107153
|
}
|
|
107099
107154
|
|
|
107100
107155
|
function flipRelativeRange(innerRange, outerRange, sequenceLength, options) {
|
|
107101
|
-
const isFullyContained = isRangeWithinRange(
|
|
107156
|
+
const isFullyContained = isRangeWithinRange(
|
|
107157
|
+
innerRange,
|
|
107158
|
+
outerRange,
|
|
107159
|
+
sequenceLength
|
|
107160
|
+
);
|
|
107102
107161
|
if (isFullyContained) {
|
|
107103
107162
|
return flipFullyContainedRange(innerRange, outerRange, sequenceLength);
|
|
107104
107163
|
} else {
|
|
@@ -107106,40 +107165,91 @@ function flipRelativeRange(innerRange, outerRange, sequenceLength, options) {
|
|
|
107106
107165
|
}
|
|
107107
107166
|
}
|
|
107108
107167
|
function flipNonFullyContainedRange(innerRange, outerRange, sequenceLength, options) {
|
|
107109
|
-
const outerFullyContained = isRangeWithinRange(
|
|
107168
|
+
const outerFullyContained = isRangeWithinRange(
|
|
107169
|
+
outerRange,
|
|
107170
|
+
innerRange,
|
|
107171
|
+
sequenceLength
|
|
107172
|
+
);
|
|
107110
107173
|
let flippedInnerRange;
|
|
107111
107174
|
if (outerFullyContained) {
|
|
107112
|
-
const expandBy1 = getRangeLength(
|
|
107113
|
-
|
|
107114
|
-
|
|
107115
|
-
|
|
107116
|
-
|
|
107117
|
-
|
|
107118
|
-
|
|
107119
|
-
|
|
107120
|
-
|
|
107121
|
-
|
|
107175
|
+
const expandBy1 = getRangeLength(
|
|
107176
|
+
{
|
|
107177
|
+
start: innerRange.start,
|
|
107178
|
+
end: outerRange.start
|
|
107179
|
+
},
|
|
107180
|
+
sequenceLength
|
|
107181
|
+
) - 1;
|
|
107182
|
+
flippedInnerRange = expandOrContractRangeByLength(
|
|
107183
|
+
outerRange,
|
|
107184
|
+
expandBy1,
|
|
107185
|
+
false,
|
|
107186
|
+
sequenceLength
|
|
107187
|
+
);
|
|
107188
|
+
const expandBy2 = getRangeLength(
|
|
107189
|
+
{
|
|
107190
|
+
end: innerRange.end,
|
|
107191
|
+
start: outerRange.end
|
|
107192
|
+
},
|
|
107193
|
+
sequenceLength
|
|
107194
|
+
) - 1;
|
|
107195
|
+
flippedInnerRange = expandOrContractRangeByLength(
|
|
107196
|
+
flippedInnerRange,
|
|
107197
|
+
expandBy2,
|
|
107198
|
+
true,
|
|
107199
|
+
sequenceLength
|
|
107200
|
+
);
|
|
107122
107201
|
} else {
|
|
107123
|
-
const overlaps = getOverlapsOfPotentiallyCircularRanges(
|
|
107202
|
+
const overlaps = getOverlapsOfPotentiallyCircularRanges(
|
|
107203
|
+
innerRange,
|
|
107204
|
+
outerRange,
|
|
107205
|
+
sequenceLength
|
|
107206
|
+
);
|
|
107124
107207
|
if (overlaps.length >= 1) {
|
|
107125
107208
|
let overlapExtendsForward;
|
|
107126
107209
|
const firstOverlap = overlaps[0];
|
|
107127
107210
|
overlapExtendsForward = firstOverlap.start !== outerRange.start;
|
|
107128
|
-
const flippedTruncatedInner = flipFullyContainedRange(
|
|
107211
|
+
const flippedTruncatedInner = flipFullyContainedRange(
|
|
107212
|
+
firstOverlap,
|
|
107213
|
+
outerRange,
|
|
107214
|
+
sequenceLength
|
|
107215
|
+
);
|
|
107129
107216
|
const lengthToExtend = getRangeLength(innerRange, sequenceLength) - getRangeLength(flippedTruncatedInner, sequenceLength);
|
|
107130
|
-
flippedInnerRange = expandOrContractRangeByLength(
|
|
107217
|
+
flippedInnerRange = expandOrContractRangeByLength(
|
|
107218
|
+
flippedTruncatedInner,
|
|
107219
|
+
lengthToExtend,
|
|
107220
|
+
overlapExtendsForward,
|
|
107221
|
+
sequenceLength
|
|
107222
|
+
);
|
|
107131
107223
|
} else {
|
|
107132
|
-
throw new Error(
|
|
107224
|
+
throw new Error(
|
|
107225
|
+
"This case (relative ranges that do not overlap) is unsupported! "
|
|
107226
|
+
);
|
|
107133
107227
|
}
|
|
107134
107228
|
}
|
|
107135
107229
|
return flippedInnerRange;
|
|
107136
107230
|
}
|
|
107137
107231
|
function flipFullyContainedRange(innerRange, outerRange, sequenceLength, options) {
|
|
107138
107232
|
const translateBy = -outerRange.start;
|
|
107139
|
-
const translatedOuterRange = translateRange(
|
|
107140
|
-
|
|
107141
|
-
|
|
107142
|
-
|
|
107233
|
+
const translatedOuterRange = translateRange(
|
|
107234
|
+
outerRange,
|
|
107235
|
+
translateBy,
|
|
107236
|
+
sequenceLength
|
|
107237
|
+
);
|
|
107238
|
+
const translatedInnerRange = translateRange(
|
|
107239
|
+
innerRange,
|
|
107240
|
+
translateBy,
|
|
107241
|
+
sequenceLength
|
|
107242
|
+
);
|
|
107243
|
+
const translatedFlippedInnerRange = flipNonOriginSpanningContainedRange(
|
|
107244
|
+
translatedInnerRange,
|
|
107245
|
+
translatedOuterRange,
|
|
107246
|
+
sequenceLength
|
|
107247
|
+
);
|
|
107248
|
+
const flippedInnerRange = translateRange(
|
|
107249
|
+
translatedFlippedInnerRange,
|
|
107250
|
+
-translateBy,
|
|
107251
|
+
sequenceLength
|
|
107252
|
+
);
|
|
107143
107253
|
return flippedInnerRange;
|
|
107144
107254
|
}
|
|
107145
107255
|
function flipNonOriginSpanningContainedRange(innerRange, outerRange, sequenceLength) {
|
|
@@ -107311,9 +107421,15 @@ function trimNumberToFitWithin0ToAnotherNumber(numberToBeTrimmed, max) {
|
|
|
107311
107421
|
}
|
|
107312
107422
|
|
|
107313
107423
|
function zeroSubrangeByContainerRange(subRange, containerRange, sequenceLength) {
|
|
107314
|
-
const trimmedSubRange = trimRangeByAnotherRange(
|
|
107424
|
+
const trimmedSubRange = trimRangeByAnotherRange(
|
|
107425
|
+
subRange,
|
|
107426
|
+
containerRange,
|
|
107427
|
+
sequenceLength
|
|
107428
|
+
);
|
|
107315
107429
|
if (trimmedSubRange) {
|
|
107316
|
-
throw new Error(
|
|
107430
|
+
throw new Error(
|
|
107431
|
+
"subRange must be fully contained by containerRange! Otherwise this function does not make sense"
|
|
107432
|
+
);
|
|
107317
107433
|
}
|
|
107318
107434
|
const newSubrange = {};
|
|
107319
107435
|
newSubrange.start = subRange.start - containerRange.start;
|
|
@@ -107340,12 +107456,24 @@ function modulo(n, m) {
|
|
|
107340
107456
|
}
|
|
107341
107457
|
|
|
107342
107458
|
function getZeroedRangeOverlaps(annotation, selection, sequenceLength) {
|
|
107343
|
-
const overlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
107459
|
+
const overlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
107460
|
+
getOverlapsOfPotentiallyCircularRanges(
|
|
107461
|
+
annotation,
|
|
107462
|
+
selection,
|
|
107463
|
+
sequenceLength
|
|
107464
|
+
),
|
|
107465
|
+
sequenceLength,
|
|
107466
|
+
annotation
|
|
107467
|
+
);
|
|
107344
107468
|
const zeroedOverlaps = overlaps.map((overlap) => {
|
|
107345
|
-
return zeroSubrangeByContainerRange(
|
|
107346
|
-
|
|
107347
|
-
|
|
107348
|
-
|
|
107469
|
+
return zeroSubrangeByContainerRange(
|
|
107470
|
+
overlap,
|
|
107471
|
+
{
|
|
107472
|
+
start: selection.start,
|
|
107473
|
+
end: normalizePositionByRangeLength(selection.start - 1, sequenceLength)
|
|
107474
|
+
},
|
|
107475
|
+
sequenceLength
|
|
107476
|
+
);
|
|
107349
107477
|
});
|
|
107350
107478
|
return zeroedOverlaps;
|
|
107351
107479
|
}
|
|
@@ -114051,7 +114179,7 @@ const calcTmMethods = {
|
|
|
114051
114179
|
calculateTemperature: function(sequence, type, A, R, C, Na) {
|
|
114052
114180
|
if (typeof type === "undefined") {
|
|
114053
114181
|
type = this.TABLE_BRESLAUER;
|
|
114054
|
-
} else if (type != this.TABLE_BRESLAUER &&
|
|
114182
|
+
} else if (type != this.TABLE_BRESLAUER && type != this.TABLE_UNIFIED && type != this.TABLE_SUGIMOTO) {
|
|
114055
114183
|
throw new Error("Invalid table type!");
|
|
114056
114184
|
}
|
|
114057
114185
|
if (!A) {
|
|
@@ -122310,12 +122438,7 @@ function findSequenceMatches(sequence, searchString, options = {}) {
|
|
|
122310
122438
|
return matches;
|
|
122311
122439
|
}
|
|
122312
122440
|
function findSequenceMatchesTopStrand(sequence, searchString, options = {}) {
|
|
122313
|
-
const {
|
|
122314
|
-
isCircular,
|
|
122315
|
-
isAmbiguous,
|
|
122316
|
-
isProteinSequence,
|
|
122317
|
-
isProteinSearch
|
|
122318
|
-
} = options;
|
|
122441
|
+
const { isCircular, isAmbiguous, isProteinSequence, isProteinSearch } = options;
|
|
122319
122442
|
let searchStringToUse = escapeStringRegexp(searchString);
|
|
122320
122443
|
if (isAmbiguous) {
|
|
122321
122444
|
if (isProteinSearch || isProteinSequence) {
|
|
@@ -122397,7 +122520,10 @@ function convertAmbiguousStringToRegex(string, isProtein) {
|
|
|
122397
122520
|
|
|
122398
122521
|
function getComplementSequenceString(sequence, isRna) {
|
|
122399
122522
|
let complementSeqString = "";
|
|
122400
|
-
const complementMap = lodashExports.merge(
|
|
122523
|
+
const complementMap = lodashExports.merge(
|
|
122524
|
+
DNAComplementMap,
|
|
122525
|
+
isRna ? { a: "u", A: "U" } : { a: "t", A: "T" }
|
|
122526
|
+
);
|
|
122401
122527
|
for (let i = 0; i < sequence.length; i++) {
|
|
122402
122528
|
let complementChar = complementMap[sequence[i]];
|
|
122403
122529
|
if (!complementChar) {
|
|
@@ -135068,10 +135194,7 @@ async function geneiousXmlToJson(string, options) {
|
|
|
135068
135194
|
});
|
|
135069
135195
|
}
|
|
135070
135196
|
});
|
|
135071
|
-
const toRet = lodashExports.filter(
|
|
135072
|
-
resultArray,
|
|
135073
|
-
(r) => r?.parsedSequence?.sequence?.length
|
|
135074
|
-
);
|
|
135197
|
+
const toRet = lodashExports.filter(resultArray, (r) => r?.parsedSequence?.sequence?.length);
|
|
135075
135198
|
if (toRet.length)
|
|
135076
135199
|
return toRet;
|
|
135077
135200
|
return onFileParsed(resultArray);
|
|
@@ -135173,10 +135296,7 @@ async function jbeiXmlToJson(string, options) {
|
|
|
135173
135296
|
messages: ["Error while parsing JBEI format"]
|
|
135174
135297
|
});
|
|
135175
135298
|
}
|
|
135176
|
-
const toRet = lodashExports.filter(
|
|
135177
|
-
resultArray,
|
|
135178
|
-
(r) => r?.parsedSequence?.sequence?.length
|
|
135179
|
-
);
|
|
135299
|
+
const toRet = lodashExports.filter(resultArray, (r) => r?.parsedSequence?.sequence?.length);
|
|
135180
135300
|
if (toRet.length)
|
|
135181
135301
|
return toRet;
|
|
135182
135302
|
return onFileParsed(resultArray);
|
|
@@ -138451,10 +138571,7 @@ const lastSavedId$1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.definePrope
|
|
|
138451
138571
|
lastSavedIdUpdate
|
|
138452
138572
|
}, Symbol.toStringTag, { value: 'Module' }));
|
|
138453
138573
|
|
|
138454
|
-
const toggleReadOnlyMode = createMetaAction(
|
|
138455
|
-
"TOGGLE_READ_ONLY_MODE",
|
|
138456
|
-
lodashExports.noop
|
|
138457
|
-
);
|
|
138574
|
+
const toggleReadOnlyMode = createMetaAction("TOGGLE_READ_ONLY_MODE", lodashExports.noop);
|
|
138458
138575
|
const updateReadOnlyMode = createMetaAction("UPDATE_READ_ONLY_MODE");
|
|
138459
138576
|
const readOnly = createReducer(
|
|
138460
138577
|
{
|
|
@@ -142167,6 +142284,9 @@ function showAddOrEditAnnotationDialog({
|
|
|
142167
142284
|
overrideName: `AddOrEdit${nameUpper}DialogOverride`,
|
|
142168
142285
|
dialogType,
|
|
142169
142286
|
props: {
|
|
142287
|
+
...annotation.isEditLocked && {
|
|
142288
|
+
readOnly: typeof annotation.isEditLocked === "string" ? annotation.isEditLocked : "This annotation is locked"
|
|
142289
|
+
},
|
|
142170
142290
|
dialogProps: {
|
|
142171
142291
|
title: annotation && annotation.id ? `Edit ${nameUpper}` : `New ${nameUpper}`
|
|
142172
142292
|
},
|
|
@@ -142808,7 +142928,8 @@ function mapStateToProps(state, ownProps) {
|
|
|
142808
142928
|
editorName,
|
|
142809
142929
|
sequenceData: sequenceDataFromProps,
|
|
142810
142930
|
allowSeqDataOverride,
|
|
142811
|
-
allowMultipleFeatureDirections
|
|
142931
|
+
allowMultipleFeatureDirections,
|
|
142932
|
+
readOnly
|
|
142812
142933
|
} = ownProps;
|
|
142813
142934
|
const editorState = getEditorState(state, editorName);
|
|
142814
142935
|
const meta = { editorName };
|
|
@@ -142868,6 +142989,7 @@ function mapStateToProps(state, ownProps) {
|
|
|
142868
142989
|
const f = getFindTool(findTool, matchesTotal);
|
|
142869
142990
|
return {
|
|
142870
142991
|
...editorState,
|
|
142992
|
+
readOnly: readOnly || editorState.readOnly,
|
|
142871
142993
|
meta,
|
|
142872
142994
|
annotationToAdd,
|
|
142873
142995
|
...newSelection && { selectionLayer: newSelection },
|
|
@@ -161052,7 +161174,7 @@ function showFileDialog({ multiple = false, onSelect }) {
|
|
|
161052
161174
|
}
|
|
161053
161175
|
|
|
161054
161176
|
const name = "@teselagen/ove";
|
|
161055
|
-
const version = "0.3.
|
|
161177
|
+
const version = "0.3.11";
|
|
161056
161178
|
const main = "./src/index.js";
|
|
161057
161179
|
const exports$1 = {
|
|
161058
161180
|
".": {
|
|
@@ -161662,7 +161784,7 @@ const fileCommandDefs = {
|
|
|
161662
161784
|
isHidden: isProtein
|
|
161663
161785
|
},
|
|
161664
161786
|
deleteSequence: {
|
|
161665
|
-
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || !props.onDelete,
|
|
161787
|
+
isDisabled: (props) => props.disableBpEditing && bpEditingDisabledTooltip || props.readOnly && readOnlyDisabledTooltip || !props.onDelete,
|
|
161666
161788
|
isHidden: (props) => !props.onDelete,
|
|
161667
161789
|
handler: (props) => props.onDelete(props.sequenceData)
|
|
161668
161790
|
},
|
|
@@ -161861,6 +161983,7 @@ Object.keys(defaultCopyOptions).forEach((type) => {
|
|
|
161861
161983
|
};
|
|
161862
161984
|
});
|
|
161863
161985
|
const readOnlyDisabledTooltip = "Sorry this function is not allowed in Read-Only Mode";
|
|
161986
|
+
const bpEditingDisabledTooltip = "Sequence Editing Disabled";
|
|
161864
161987
|
const noSelection = ({ selectionLayer = {} }) => !(selectionLayer.start > -1 && selectionLayer.end > -1) && "Selection Required";
|
|
161865
161988
|
const triggerClipboardCommand = (type) => {
|
|
161866
161989
|
const wrapper = document.querySelector(".veVectorInteractionWrapper");
|
|
@@ -161892,8 +162015,8 @@ const editCommandDefs = {
|
|
|
161892
162015
|
handler: lodashExports.noop
|
|
161893
162016
|
},
|
|
161894
162017
|
cut: {
|
|
161895
|
-
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
161896
|
-
isHidden: (props) => props.readOnly,
|
|
162018
|
+
isDisabled: (props) => props.disableBpEditing && bpEditingDisabledTooltip || props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
162019
|
+
isHidden: (props) => props.readOnly || props.disableBpEditing,
|
|
161897
162020
|
handler: () => {
|
|
161898
162021
|
triggerClipboardCommand("cut");
|
|
161899
162022
|
},
|
|
@@ -161918,7 +162041,7 @@ const editCommandDefs = {
|
|
|
161918
162041
|
},
|
|
161919
162042
|
paste: {
|
|
161920
162043
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip,
|
|
161921
|
-
isHidden: (props) => props.readOnly,
|
|
162044
|
+
isHidden: (props) => props.readOnly || props.disableBpEditing,
|
|
161922
162045
|
handler: () => triggerClipboardCommand("paste"),
|
|
161923
162046
|
hotkey: "mod+v"
|
|
161924
162047
|
},
|
|
@@ -162072,12 +162195,12 @@ const editCommandDefs = {
|
|
|
162072
162195
|
hotkey: "mod+i"
|
|
162073
162196
|
},
|
|
162074
162197
|
complementSelection: {
|
|
162075
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162198
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162076
162199
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || noSelection(props),
|
|
162077
162200
|
handler: (props) => props.handleComplementSelection()
|
|
162078
162201
|
},
|
|
162079
162202
|
complementEntireSequence: {
|
|
162080
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162203
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162081
162204
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
162082
162205
|
handler: (props) => props.handleComplementSequence()
|
|
162083
162206
|
},
|
|
@@ -162229,13 +162352,13 @@ const editCommandDefs = {
|
|
|
162229
162352
|
// }
|
|
162230
162353
|
// },
|
|
162231
162354
|
reverseComplementSelection: {
|
|
162232
|
-
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || noSelection(props),
|
|
162355
|
+
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || noSelection(props) || props.disableBpEditing,
|
|
162233
162356
|
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162234
162357
|
handler: (props) => props.handleReverseComplementSelection(),
|
|
162235
162358
|
hotkey: "mod+e"
|
|
162236
162359
|
},
|
|
162237
162360
|
reverseComplementEntireSequence: {
|
|
162238
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162361
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162239
162362
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
162240
162363
|
handler: (props) => props.handleReverseComplementSequence()
|
|
162241
162364
|
},
|
|
@@ -162385,7 +162508,7 @@ const editCommandDefs = {
|
|
|
162385
162508
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0
|
|
162386
162509
|
},
|
|
162387
162510
|
rotateToCaretPosition: {
|
|
162388
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162511
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162389
162512
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.caretPosition === -1 && "You must first place cursor" || !props.sequenceData.circular && "Disabled for Linear Sequences" || props.sequenceLength === 0,
|
|
162390
162513
|
handler: (props) => props.handleRotateToCaretPosition(),
|
|
162391
162514
|
hotkey: "mod+b"
|
|
@@ -162394,13 +162517,13 @@ const editCommandDefs = {
|
|
|
162394
162517
|
};
|
|
162395
162518
|
const cirularityCommandDefs = {
|
|
162396
162519
|
circular: {
|
|
162397
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162520
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162398
162521
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip,
|
|
162399
162522
|
handler: (props) => props.updateCircular(true),
|
|
162400
162523
|
isActive: (props) => props && props.sequenceData.circular
|
|
162401
162524
|
},
|
|
162402
162525
|
linear: {
|
|
162403
|
-
isHidden: (props) => props.readOnly,
|
|
162526
|
+
isHidden: (props) => props.readOnly || props.disableBpEditing,
|
|
162404
162527
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip,
|
|
162405
162528
|
handler: (props) => props.updateCircular(false),
|
|
162406
162529
|
isActive: (props) => props && !props.sequenceData.circular
|
|
@@ -162427,29 +162550,27 @@ const nicheAnnotations = [
|
|
|
162427
162550
|
}
|
|
162428
162551
|
];
|
|
162429
162552
|
const labelToggleCommandDefs = {};
|
|
162430
|
-
["feature", "part", "cutsite", "primer", ...nicheAnnotations].forEach(
|
|
162431
|
-
|
|
162432
|
-
|
|
162433
|
-
|
|
162434
|
-
|
|
162435
|
-
|
|
162436
|
-
|
|
162437
|
-
|
|
162438
|
-
|
|
162439
|
-
|
|
162440
|
-
|
|
162441
|
-
|
|
162442
|
-
|
|
162443
|
-
|
|
162444
|
-
|
|
162445
|
-
|
|
162446
|
-
|
|
162447
|
-
|
|
162448
|
-
|
|
162449
|
-
|
|
162450
|
-
|
|
162451
|
-
}
|
|
162452
|
-
);
|
|
162553
|
+
["feature", "part", "cutsite", "primer", ...nicheAnnotations].forEach((_type) => {
|
|
162554
|
+
let rest = {};
|
|
162555
|
+
let type = _type;
|
|
162556
|
+
if (_type.type) {
|
|
162557
|
+
type = _type.type.slice(0, -1);
|
|
162558
|
+
rest = _type;
|
|
162559
|
+
}
|
|
162560
|
+
const cmdId = `toggle${lodashExports.upperFirst(type)}Labels`;
|
|
162561
|
+
const plural = type + "s";
|
|
162562
|
+
labelToggleCommandDefs[cmdId] = {
|
|
162563
|
+
toggle: ["show", "hide"],
|
|
162564
|
+
handler: (props) => props.annotationLabelVisibilityToggle(plural),
|
|
162565
|
+
isHidden: (props) => {
|
|
162566
|
+
return props && props.typesToOmit && props.typesToOmit[plural] === false;
|
|
162567
|
+
},
|
|
162568
|
+
...rest,
|
|
162569
|
+
isActive: (props) => {
|
|
162570
|
+
return props && props.annotationLabelVisibility[plural];
|
|
162571
|
+
}
|
|
162572
|
+
};
|
|
162573
|
+
});
|
|
162453
162574
|
const editAnnotationCommandDefs = ["feature", "part", "primer"].reduce(
|
|
162454
162575
|
(acc, key) => {
|
|
162455
162576
|
acc[`edit${lodashExports.upperFirst(key)}`] = {
|
|
@@ -166638,8 +166759,12 @@ function VectorInteractionHOC(Component) {
|
|
|
166638
166759
|
caretPosition = -1,
|
|
166639
166760
|
selectionLayer = { start: -1, end: -1 },
|
|
166640
166761
|
readOnly,
|
|
166641
|
-
onPaste
|
|
166762
|
+
onPaste,
|
|
166763
|
+
disableBpEditing
|
|
166642
166764
|
} = this.props;
|
|
166765
|
+
if (disableBpEditing) {
|
|
166766
|
+
return window.toastr.warning("Sorry the underlying sequence is locked");
|
|
166767
|
+
}
|
|
166643
166768
|
if (readOnly) {
|
|
166644
166769
|
return window.toastr.warning("Sorry the sequence is Read-Only");
|
|
166645
166770
|
}
|
|
@@ -166680,6 +166805,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166680
166805
|
sequenceData,
|
|
166681
166806
|
selectionLayer,
|
|
166682
166807
|
copyOptions,
|
|
166808
|
+
disableBpEditing,
|
|
166683
166809
|
readOnly
|
|
166684
166810
|
} = this.props;
|
|
166685
166811
|
const onCut = this.props.onCut || this.props.onCopy || lodashExports.noop;
|
|
@@ -166705,7 +166831,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166705
166831
|
);
|
|
166706
166832
|
if (!(this.sequenceDataToCopy || {}).textToCopy && !seqData.sequence.length)
|
|
166707
166833
|
return window.toastr.warning(
|
|
166708
|
-
`No Sequence Selected To ${isCut && !readOnly ? "Cut" : "Copy"}`
|
|
166834
|
+
`No Sequence Selected To ${isCut && !(readOnly || disableBpEditing) ? "Cut" : "Copy"}`
|
|
166709
166835
|
);
|
|
166710
166836
|
const clipboardData = e.clipboardData;
|
|
166711
166837
|
const textToCopy = (this.sequenceDataToCopy || {}).textToCopy !== void 0 ? this.sequenceDataToCopy.textToCopy : seqData.isProtein ? seqData.proteinSequence : seqData.sequence;
|
|
@@ -166713,7 +166839,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166713
166839
|
clipboardData.setData("text/plain", textToCopy);
|
|
166714
166840
|
clipboardData.setData("application/json", JSON.stringify(seqData));
|
|
166715
166841
|
e.preventDefault();
|
|
166716
|
-
if (isCut && !readOnly) {
|
|
166842
|
+
if (isCut && !(readOnly || disableBpEditing) && !disableBpEditing) {
|
|
166717
166843
|
this.handleDnaDelete(false);
|
|
166718
166844
|
onCut(
|
|
166719
166845
|
e,
|
|
@@ -166726,7 +166852,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166726
166852
|
document.body.removeEventListener("copy", this.handleCopy);
|
|
166727
166853
|
}
|
|
166728
166854
|
window.toastr.success(
|
|
166729
|
-
`Selection ${isCut && !readOnly ? "Cut" : "Copied"}`
|
|
166855
|
+
`Selection ${isCut && !(readOnly || disableBpEditing) && !disableBpEditing ? "Cut" : "Copied"}`
|
|
166730
166856
|
);
|
|
166731
166857
|
this.sequenceDataToCopy = void 0;
|
|
166732
166858
|
};
|
|
@@ -166737,14 +166863,18 @@ function VectorInteractionHOC(Component) {
|
|
|
166737
166863
|
caretPosition = -1,
|
|
166738
166864
|
selectionLayer = { start: -1, end: -1 },
|
|
166739
166865
|
sequenceData = { sequence: "" },
|
|
166740
|
-
readOnly
|
|
166866
|
+
readOnly,
|
|
166867
|
+
disableBpEditing
|
|
166741
166868
|
// updateSequenceData,
|
|
166742
166869
|
// wrappedInsertSequenceDataAtPositionOrRange
|
|
166743
166870
|
// handleInsert
|
|
166744
166871
|
} = this.props;
|
|
166745
166872
|
const sequenceLength = sequenceData.sequence.length;
|
|
166746
166873
|
const isReplace = selectionLayer.start > -1;
|
|
166747
|
-
if (
|
|
166874
|
+
if (disableBpEditing) {
|
|
166875
|
+
return window.toastr.warning("Sorry the underlying sequence is locked");
|
|
166876
|
+
}
|
|
166877
|
+
if (readOnly || disableBpEditing) {
|
|
166748
166878
|
window.toastr.warning("Sorry the sequence is Read-Only");
|
|
166749
166879
|
} else {
|
|
166750
166880
|
createSequenceInputPopup({
|
|
@@ -166772,13 +166902,17 @@ function VectorInteractionHOC(Component) {
|
|
|
166772
166902
|
selectionLayer = { start: -1, end: -1 },
|
|
166773
166903
|
sequenceData = { sequence: "" },
|
|
166774
166904
|
readOnly,
|
|
166905
|
+
disableBpEditing,
|
|
166775
166906
|
updateSequenceData,
|
|
166776
166907
|
wrappedInsertSequenceDataAtPositionOrRange,
|
|
166777
166908
|
caretPositionUpdate
|
|
166778
166909
|
// handleInsert
|
|
166779
166910
|
} = this.props;
|
|
166780
166911
|
const sequenceLength = sequenceData.sequence.length;
|
|
166781
|
-
if (
|
|
166912
|
+
if (disableBpEditing) {
|
|
166913
|
+
return window.toastr.warning("Sorry the underlying sequence is locked");
|
|
166914
|
+
}
|
|
166915
|
+
if (readOnly || disableBpEditing) {
|
|
166782
166916
|
return window.toastr.warning("Sorry the sequence is Read-Only");
|
|
166783
166917
|
}
|
|
166784
166918
|
if (sequenceLength > 0) {
|
|
@@ -166909,7 +167043,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166909
167043
|
};
|
|
166910
167044
|
// eslint-disable-next-line no-unused-vars
|
|
166911
167045
|
getCopyOptions = (annotation) => {
|
|
166912
|
-
const { sequenceData, readOnly, selectionLayer } = this.props;
|
|
167046
|
+
const { sequenceData, readOnly, disableBpEditing, selectionLayer } = this.props;
|
|
166913
167047
|
const { isProtein } = sequenceData;
|
|
166914
167048
|
const makeTextCopyable = (transformFunc, className, action = "copy") => {
|
|
166915
167049
|
return new Clipboard$1(`.${className}`, {
|
|
@@ -166969,7 +167103,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166969
167103
|
}
|
|
166970
167104
|
};
|
|
166971
167105
|
return [
|
|
166972
|
-
...readOnly ? [] : [
|
|
167106
|
+
...readOnly || disableBpEditing ? [] : [
|
|
166973
167107
|
{
|
|
166974
167108
|
text: "Replace",
|
|
166975
167109
|
...this.insertHelper
|
|
@@ -167043,21 +167177,14 @@ function VectorInteractionHOC(Component) {
|
|
|
167043
167177
|
this.openVeCopyAAReverse && this.openVeCopyAAReverse.destroy();
|
|
167044
167178
|
},
|
|
167045
167179
|
didMount: ({ className }) => {
|
|
167046
|
-
this.openVeCopyAAReverse = makeTextCopyable(
|
|
167047
|
-
(selectedSeqData)
|
|
167048
|
-
|
|
167049
|
-
|
|
167050
|
-
|
|
167051
|
-
|
|
167052
|
-
|
|
167053
|
-
|
|
167054
|
-
return {
|
|
167055
|
-
...revSeqData,
|
|
167056
|
-
textToCopy
|
|
167057
|
-
};
|
|
167058
|
-
},
|
|
167059
|
-
className
|
|
167060
|
-
);
|
|
167180
|
+
this.openVeCopyAAReverse = makeTextCopyable((selectedSeqData) => {
|
|
167181
|
+
const revSeqData = getReverseComplementSequenceAndAnnoations(selectedSeqData);
|
|
167182
|
+
const textToCopy = isProtein ? revSeqData.proteinSequence.toUpperCase() : getAminoAcidStringFromSequenceString(revSeqData.sequence);
|
|
167183
|
+
return {
|
|
167184
|
+
...revSeqData,
|
|
167185
|
+
textToCopy
|
|
167186
|
+
};
|
|
167187
|
+
}, className);
|
|
167061
167188
|
}
|
|
167062
167189
|
},
|
|
167063
167190
|
{
|
|
@@ -167164,11 +167291,12 @@ function VectorInteractionHOC(Component) {
|
|
|
167164
167291
|
({ nearestCaretPos, shiftHeld, event }) => {
|
|
167165
167292
|
this.updateSelectionOrCaret(shiftHeld, nearestCaretPos);
|
|
167166
167293
|
const {
|
|
167167
|
-
readOnly
|
|
167294
|
+
readOnly,
|
|
167295
|
+
disableBpEditing
|
|
167168
167296
|
// sequenceData: { circular }
|
|
167169
167297
|
} = this.props;
|
|
167170
167298
|
const menu = [
|
|
167171
|
-
...readOnly ? [] : [
|
|
167299
|
+
...readOnly || disableBpEditing ? [] : [
|
|
167172
167300
|
{
|
|
167173
167301
|
text: "Insert",
|
|
167174
167302
|
...this.insertHelper
|
|
@@ -167214,8 +167342,7 @@ function VectorInteractionHOC(Component) {
|
|
|
167214
167342
|
overlapsSelf: annotation.overlapsSelf
|
|
167215
167343
|
});
|
|
167216
167344
|
return [
|
|
167217
|
-
"
|
|
167218
|
-
"deletePart",
|
|
167345
|
+
...getEditDeleteHandlers("Part", annotation),
|
|
167219
167346
|
"--",
|
|
167220
167347
|
...this.getSelectionMenuOptions(annotation),
|
|
167221
167348
|
"--",
|
|
@@ -167257,8 +167384,7 @@ function VectorInteractionHOC(Component) {
|
|
|
167257
167384
|
event.persist();
|
|
167258
167385
|
const { readOnly, annotationsToSupport: { parts } = {} } = this.props;
|
|
167259
167386
|
return [
|
|
167260
|
-
"
|
|
167261
|
-
"deleteFeature",
|
|
167387
|
+
...getEditDeleteHandlers("Feature", annotation),
|
|
167262
167388
|
...this.getSelectionMenuOptions(annotation),
|
|
167263
167389
|
...readOnly ? [] : [
|
|
167264
167390
|
...parts && [
|
|
@@ -167325,8 +167451,7 @@ function VectorInteractionHOC(Component) {
|
|
|
167325
167451
|
end: annotation.end
|
|
167326
167452
|
});
|
|
167327
167453
|
return [
|
|
167328
|
-
"
|
|
167329
|
-
"deletePrimer",
|
|
167454
|
+
...getEditDeleteHandlers("Primer", annotation),
|
|
167330
167455
|
...this.getSelectionMenuOptions(annotation),
|
|
167331
167456
|
"showRemoveDuplicatesDialogPrimers",
|
|
167332
167457
|
"viewPrimerProperties"
|
|
@@ -167536,6 +167661,28 @@ const insertAndSelectHelper = ({ seqDataToInsert, props }) => {
|
|
|
167536
167661
|
end: newSelectionLayerEnd % newSeqData.sequence.length
|
|
167537
167662
|
});
|
|
167538
167663
|
};
|
|
167664
|
+
function getEditDeleteHandlers(type, annotation) {
|
|
167665
|
+
return [
|
|
167666
|
+
...annotation.isEditLocked ? [
|
|
167667
|
+
{
|
|
167668
|
+
shouldDismissPopover: false,
|
|
167669
|
+
text: /* @__PURE__ */ React$3.createElement(
|
|
167670
|
+
"div",
|
|
167671
|
+
{
|
|
167672
|
+
style: {
|
|
167673
|
+
fontSize: 11,
|
|
167674
|
+
fontStyle: "italic",
|
|
167675
|
+
color: "rgba(0,0,0,.5)"
|
|
167676
|
+
}
|
|
167677
|
+
},
|
|
167678
|
+
typeof annotation.isEditLocked === "string" ? annotation.isEditLocked : `Note: This Annotation is Locked`
|
|
167679
|
+
)
|
|
167680
|
+
}
|
|
167681
|
+
] : [],
|
|
167682
|
+
`edit${type}`,
|
|
167683
|
+
...annotation.isEditLocked ? [] : [`delete${type}`]
|
|
167684
|
+
];
|
|
167685
|
+
}
|
|
167539
167686
|
|
|
167540
167687
|
const style$i = '';
|
|
167541
167688
|
|
|
@@ -174693,7 +174840,11 @@ const GoToDialog = createSimpleDialog({
|
|
|
174693
174840
|
}
|
|
174694
174841
|
}
|
|
174695
174842
|
],
|
|
174696
|
-
withDialogProps: {
|
|
174843
|
+
withDialogProps: {
|
|
174844
|
+
title: "Go To",
|
|
174845
|
+
height: 190,
|
|
174846
|
+
onCloseHook: tryToRefocusEditor
|
|
174847
|
+
}
|
|
174697
174848
|
});
|
|
174698
174849
|
|
|
174699
174850
|
const validate$1 = (val, vals, props) => {
|
|
@@ -177353,6 +177504,7 @@ class AddOrEditAnnotationDialog extends React$3.Component {
|
|
|
177353
177504
|
overlapsSelf,
|
|
177354
177505
|
start,
|
|
177355
177506
|
end,
|
|
177507
|
+
readOnly,
|
|
177356
177508
|
getAdditionalEditAnnotationComps,
|
|
177357
177509
|
advancedOptions,
|
|
177358
177510
|
advancedDefaultOpen,
|
|
@@ -177447,10 +177599,11 @@ class AddOrEditAnnotationDialog extends React$3.Component {
|
|
|
177447
177599
|
"tg-upsert-annotation"
|
|
177448
177600
|
)
|
|
177449
177601
|
},
|
|
177602
|
+
typeof readOnly === "string" ? /* @__PURE__ */ React$3.createElement(core$5.Callout, { intent: "primary", style: { marginBottom: 10 } }, readOnly) : null,
|
|
177450
177603
|
/* @__PURE__ */ React$3.createElement(
|
|
177451
177604
|
InputField,
|
|
177452
177605
|
{
|
|
177453
|
-
disabled:
|
|
177606
|
+
disabled: readOnly,
|
|
177454
177607
|
inlineLabel: true,
|
|
177455
177608
|
tooltipError: true,
|
|
177456
177609
|
autoFocus: true,
|
|
@@ -180388,15 +180541,15 @@ class Browser {
|
|
|
180388
180541
|
}
|
|
180389
180542
|
// Edge 20+
|
|
180390
180543
|
static isEdge() {
|
|
180391
|
-
return Browser.isBrowser() &&
|
|
180544
|
+
return Browser.isBrowser() && !Browser.isIE() && !!window.StyleMedia;
|
|
180392
180545
|
}
|
|
180393
180546
|
// Chrome 1+
|
|
180394
180547
|
static isChrome() {
|
|
180395
|
-
return Browser.isBrowser() &&
|
|
180548
|
+
return Browser.isBrowser() && !!window.chrome && !!window.chrome.webstore;
|
|
180396
180549
|
}
|
|
180397
180550
|
// Blink engine detection
|
|
180398
180551
|
static isBlink() {
|
|
180399
|
-
return Browser.isBrowser() && (
|
|
180552
|
+
return Browser.isBrowser() && (Browser.isChrome() || Browser.isOpera()) && !!window.CSS;
|
|
180400
180553
|
}
|
|
180401
180554
|
static getUserAgent() {
|
|
180402
180555
|
return typeof navigator === "undefined" ? "" : navigator.userAgent;
|
|
@@ -182989,6 +183142,8 @@ const userDefinedHandlersAndOpts = [
|
|
|
182989
183142
|
"hideSingleImport",
|
|
182990
183143
|
"beforeAnnotationCreate",
|
|
182991
183144
|
"disableSetReadOnly",
|
|
183145
|
+
"allowAnnotationEditLocking",
|
|
183146
|
+
"disableBpEditing",
|
|
182992
183147
|
"showReadOnly",
|
|
182993
183148
|
"showCircularity",
|
|
182994
183149
|
"onHiddenEnzymeAdd",
|
|
@@ -184402,9 +184557,7 @@ const genericAnnotationProperties = ({
|
|
|
184402
184557
|
core$5.AnchorButton,
|
|
184403
184558
|
{
|
|
184404
184559
|
onClick: () => {
|
|
184405
|
-
deleteAnnotation(
|
|
184406
|
-
annotationPropertiesSelectedEntities
|
|
184407
|
-
);
|
|
184560
|
+
deleteAnnotation(annotationPropertiesSelectedEntities);
|
|
184408
184561
|
},
|
|
184409
184562
|
className: "tgDeleteAnnsBtn",
|
|
184410
184563
|
intent: "danger",
|