@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.mjs
CHANGED
|
@@ -7404,7 +7404,7 @@ function getPlainObjectKeys(object) {
|
|
|
7404
7404
|
var ownKeys$8 = typeof Reflect !== "undefined" && Reflect.ownKeys ? Reflect.ownKeys : hasGetOwnPropertySymbols ? function (obj) {
|
|
7405
7405
|
return Object.getOwnPropertyNames(obj).concat(Object.getOwnPropertySymbols(obj));
|
|
7406
7406
|
} : /* istanbul ignore next */Object.getOwnPropertyNames;
|
|
7407
|
-
function toPrimitive$
|
|
7407
|
+
function toPrimitive$2(value) {
|
|
7408
7408
|
return value === null ? null : typeof value === "object" ? "" + value : value;
|
|
7409
7409
|
}
|
|
7410
7410
|
function hasProp(target, prop) {
|
|
@@ -8333,7 +8333,7 @@ var ObservableValue = /*#__PURE__*/function (_Atom) {
|
|
|
8333
8333
|
return this.name_ + "[" + this.value_ + "]";
|
|
8334
8334
|
};
|
|
8335
8335
|
_proto.valueOf = function valueOf() {
|
|
8336
|
-
return toPrimitive$
|
|
8336
|
+
return toPrimitive$2(this.get());
|
|
8337
8337
|
};
|
|
8338
8338
|
_proto[_Symbol$toPrimitive] = function () {
|
|
8339
8339
|
return this.valueOf();
|
|
@@ -8561,7 +8561,7 @@ var ComputedValue = /*#__PURE__*/function () {
|
|
|
8561
8561
|
return this.name_ + "[" + this.derivation.toString() + "]";
|
|
8562
8562
|
};
|
|
8563
8563
|
_proto.valueOf = function valueOf() {
|
|
8564
|
-
return toPrimitive$
|
|
8564
|
+
return toPrimitive$2(this.get());
|
|
8565
8565
|
};
|
|
8566
8566
|
_proto[_Symbol$toPrimitive$1] = function () {
|
|
8567
8567
|
return this.valueOf();
|
|
@@ -30258,10 +30258,18 @@ var _fails = function (exec) {
|
|
|
30258
30258
|
}
|
|
30259
30259
|
};
|
|
30260
30260
|
|
|
30261
|
-
|
|
30262
|
-
var
|
|
30263
|
-
|
|
30264
|
-
|
|
30261
|
+
var _descriptors;
|
|
30262
|
+
var hasRequired_descriptors;
|
|
30263
|
+
|
|
30264
|
+
function require_descriptors () {
|
|
30265
|
+
if (hasRequired_descriptors) return _descriptors;
|
|
30266
|
+
hasRequired_descriptors = 1;
|
|
30267
|
+
// Thank's IE8 for his funny defineProperty
|
|
30268
|
+
_descriptors = !_fails(function () {
|
|
30269
|
+
return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
|
|
30270
|
+
});
|
|
30271
|
+
return _descriptors;
|
|
30272
|
+
}
|
|
30265
30273
|
|
|
30266
30274
|
var _domCreate;
|
|
30267
30275
|
var hasRequired_domCreate;
|
|
@@ -30279,9 +30287,17 @@ function require_domCreate () {
|
|
|
30279
30287
|
return _domCreate;
|
|
30280
30288
|
}
|
|
30281
30289
|
|
|
30282
|
-
var _ie8DomDefine
|
|
30283
|
-
|
|
30284
|
-
|
|
30290
|
+
var _ie8DomDefine;
|
|
30291
|
+
var hasRequired_ie8DomDefine;
|
|
30292
|
+
|
|
30293
|
+
function require_ie8DomDefine () {
|
|
30294
|
+
if (hasRequired_ie8DomDefine) return _ie8DomDefine;
|
|
30295
|
+
hasRequired_ie8DomDefine = 1;
|
|
30296
|
+
_ie8DomDefine = !require_descriptors() && !_fails(function () {
|
|
30297
|
+
return Object.defineProperty(require_domCreate()('div'), 'a', { get: function () { return 7; } }).a != 7;
|
|
30298
|
+
});
|
|
30299
|
+
return _ie8DomDefine;
|
|
30300
|
+
}
|
|
30285
30301
|
|
|
30286
30302
|
// 7.1.1 ToPrimitive(input [, PreferredType])
|
|
30287
30303
|
var isObject$d = _isObject;
|
|
@@ -30296,22 +30312,29 @@ var _toPrimitive$1 = function (it, S) {
|
|
|
30296
30312
|
throw TypeError("Can't convert object to primitive value");
|
|
30297
30313
|
};
|
|
30298
30314
|
|
|
30299
|
-
var
|
|
30300
|
-
var IE8_DOM_DEFINE$1 = _ie8DomDefine;
|
|
30301
|
-
var toPrimitive$2 = _toPrimitive$1;
|
|
30302
|
-
var dP$3 = Object.defineProperty;
|
|
30315
|
+
var hasRequired_objectDp;
|
|
30303
30316
|
|
|
30304
|
-
|
|
30305
|
-
|
|
30306
|
-
|
|
30307
|
-
|
|
30308
|
-
|
|
30309
|
-
|
|
30310
|
-
|
|
30311
|
-
|
|
30312
|
-
|
|
30313
|
-
|
|
30314
|
-
|
|
30317
|
+
function require_objectDp () {
|
|
30318
|
+
if (hasRequired_objectDp) return _objectDp;
|
|
30319
|
+
hasRequired_objectDp = 1;
|
|
30320
|
+
var anObject = _anObject;
|
|
30321
|
+
var IE8_DOM_DEFINE = require_ie8DomDefine();
|
|
30322
|
+
var toPrimitive = _toPrimitive$1;
|
|
30323
|
+
var dP = Object.defineProperty;
|
|
30324
|
+
|
|
30325
|
+
_objectDp.f = require_descriptors() ? Object.defineProperty : function defineProperty(O, P, Attributes) {
|
|
30326
|
+
anObject(O);
|
|
30327
|
+
P = toPrimitive(P, true);
|
|
30328
|
+
anObject(Attributes);
|
|
30329
|
+
if (IE8_DOM_DEFINE) try {
|
|
30330
|
+
return dP(O, P, Attributes);
|
|
30331
|
+
} catch (e) { /* empty */ }
|
|
30332
|
+
if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
|
|
30333
|
+
if ('value' in Attributes) O[P] = Attributes.value;
|
|
30334
|
+
return O;
|
|
30335
|
+
};
|
|
30336
|
+
return _objectDp;
|
|
30337
|
+
}
|
|
30315
30338
|
|
|
30316
30339
|
var _propertyDesc = function (bitmap, value) {
|
|
30317
30340
|
return {
|
|
@@ -30322,9 +30345,9 @@ var _propertyDesc = function (bitmap, value) {
|
|
|
30322
30345
|
};
|
|
30323
30346
|
};
|
|
30324
30347
|
|
|
30325
|
-
var dP$2 =
|
|
30348
|
+
var dP$2 = require_objectDp();
|
|
30326
30349
|
var createDesc$3 = _propertyDesc;
|
|
30327
|
-
var _hide =
|
|
30350
|
+
var _hide = require_descriptors() ? function (object, key, value) {
|
|
30328
30351
|
return dP$2.f(object, key, createDesc$3(1, value));
|
|
30329
30352
|
} : function (object, key, value) {
|
|
30330
30353
|
object[key] = value;
|
|
@@ -30569,7 +30592,7 @@ function require_objectAssign () {
|
|
|
30569
30592
|
if (hasRequired_objectAssign) return _objectAssign;
|
|
30570
30593
|
hasRequired_objectAssign = 1;
|
|
30571
30594
|
// 19.1.2.1 Object.assign(target, source, ...)
|
|
30572
|
-
var DESCRIPTORS =
|
|
30595
|
+
var DESCRIPTORS = require_descriptors();
|
|
30573
30596
|
var getKeys = _objectKeys;
|
|
30574
30597
|
var gOPS = _objectGops;
|
|
30575
30598
|
var pIE = require_objectPie();
|
|
@@ -30645,11 +30668,11 @@ var _iterators = {};
|
|
|
30645
30668
|
|
|
30646
30669
|
var _redefine = _hide;
|
|
30647
30670
|
|
|
30648
|
-
var dP$1 =
|
|
30671
|
+
var dP$1 = require_objectDp();
|
|
30649
30672
|
var anObject$4 = _anObject;
|
|
30650
30673
|
var getKeys$1 = _objectKeys;
|
|
30651
30674
|
|
|
30652
|
-
var _objectDps =
|
|
30675
|
+
var _objectDps = require_descriptors() ? Object.defineProperties : function defineProperties(O, Properties) {
|
|
30653
30676
|
anObject$4(O);
|
|
30654
30677
|
var keys = getKeys$1(Properties);
|
|
30655
30678
|
var length = keys.length;
|
|
@@ -30728,7 +30751,7 @@ $exports.store = store$2;
|
|
|
30728
30751
|
|
|
30729
30752
|
var _wksExports = _wks.exports;
|
|
30730
30753
|
|
|
30731
|
-
var def =
|
|
30754
|
+
var def = require_objectDp().f;
|
|
30732
30755
|
var has$c = _has;
|
|
30733
30756
|
var TAG$1 = _wksExports('toStringTag');
|
|
30734
30757
|
|
|
@@ -31042,7 +31065,7 @@ var _isArrayIter = function (it) {
|
|
|
31042
31065
|
return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);
|
|
31043
31066
|
};
|
|
31044
31067
|
|
|
31045
|
-
var $defineProperty$2 =
|
|
31068
|
+
var $defineProperty$2 = require_objectDp();
|
|
31046
31069
|
var createDesc$2 = _propertyDesc;
|
|
31047
31070
|
|
|
31048
31071
|
var _createProperty = function (object, index, value) {
|
|
@@ -31175,7 +31198,7 @@ var _default$9 = function (instance, Constructor) {
|
|
|
31175
31198
|
|
|
31176
31199
|
var $export$3 = _export;
|
|
31177
31200
|
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
|
|
31178
|
-
$export$3($export$3.S + $export$3.F * !
|
|
31201
|
+
$export$3($export$3.S + $export$3.F * !require_descriptors(), 'Object', { defineProperty: require_objectDp().f });
|
|
31179
31202
|
|
|
31180
31203
|
var $Object$2 = _coreExports.Object;
|
|
31181
31204
|
var defineProperty$c = function defineProperty(it, key, desc) {
|
|
@@ -31223,7 +31246,7 @@ var _meta = {exports: {}};
|
|
|
31223
31246
|
var META$1 = _uid('meta');
|
|
31224
31247
|
var isObject$c = _isObject;
|
|
31225
31248
|
var has$a = _has;
|
|
31226
|
-
var setDesc =
|
|
31249
|
+
var setDesc = require_objectDp().f;
|
|
31227
31250
|
var id$1 = 0;
|
|
31228
31251
|
var isExtensible = Object.isExtensible || function () {
|
|
31229
31252
|
return true;
|
|
@@ -31278,7 +31301,7 @@ var _metaExports = _meta.exports;
|
|
|
31278
31301
|
|
|
31279
31302
|
var core = _coreExports;
|
|
31280
31303
|
var wksExt$1 = _wksExt;
|
|
31281
|
-
var defineProperty$a =
|
|
31304
|
+
var defineProperty$a = require_objectDp().f;
|
|
31282
31305
|
var _wksDefine = function (name) {
|
|
31283
31306
|
var $Symbol = core.Symbol || (core.Symbol = {} );
|
|
31284
31307
|
if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty$a($Symbol, name, { value: wksExt$1.f(name) });
|
|
@@ -31345,10 +31368,10 @@ var createDesc$1 = _propertyDesc;
|
|
|
31345
31368
|
var toIObject$1 = _toIobject;
|
|
31346
31369
|
var toPrimitive$1 = _toPrimitive$1;
|
|
31347
31370
|
var has$9 = _has;
|
|
31348
|
-
var IE8_DOM_DEFINE =
|
|
31371
|
+
var IE8_DOM_DEFINE = require_ie8DomDefine();
|
|
31349
31372
|
var gOPD$5 = Object.getOwnPropertyDescriptor;
|
|
31350
31373
|
|
|
31351
|
-
_objectGopd.f =
|
|
31374
|
+
_objectGopd.f = require_descriptors() ? gOPD$5 : function getOwnPropertyDescriptor(O, P) {
|
|
31352
31375
|
O = toIObject$1(O);
|
|
31353
31376
|
P = toPrimitive$1(P, true);
|
|
31354
31377
|
if (IE8_DOM_DEFINE) try {
|
|
@@ -31360,7 +31383,7 @@ _objectGopd.f = _descriptors ? gOPD$5 : function getOwnPropertyDescriptor(O, P)
|
|
|
31360
31383
|
// ECMAScript 6 symbols shim
|
|
31361
31384
|
var global$2 = _globalExports;
|
|
31362
31385
|
var has$8 = _has;
|
|
31363
|
-
var DESCRIPTORS =
|
|
31386
|
+
var DESCRIPTORS = require_descriptors();
|
|
31364
31387
|
var $export$2 = _export;
|
|
31365
31388
|
var redefine = _redefine;
|
|
31366
31389
|
var META = _metaExports.KEY;
|
|
@@ -31383,7 +31406,7 @@ var _create$1 = _objectCreate;
|
|
|
31383
31406
|
var gOPNExt = _objectGopnExt;
|
|
31384
31407
|
var $GOPD = _objectGopd;
|
|
31385
31408
|
var $GOPS = _objectGops;
|
|
31386
|
-
var $DP =
|
|
31409
|
+
var $DP = require_objectDp();
|
|
31387
31410
|
var $keys$1 = _objectKeys;
|
|
31388
31411
|
var gOPD$4 = $GOPD.f;
|
|
31389
31412
|
var dP = $DP.f;
|
|
@@ -85352,13 +85375,7 @@ function withTableParams(compOrOpts, pTopLevelOpts) {
|
|
|
85352
85375
|
return {};
|
|
85353
85376
|
}
|
|
85354
85377
|
const mergedOpts = getMergedOpts(topLevelOptions, ownProps);
|
|
85355
|
-
const {
|
|
85356
|
-
formName,
|
|
85357
|
-
urlConnected,
|
|
85358
|
-
history,
|
|
85359
|
-
defaults,
|
|
85360
|
-
onlyOneFilter
|
|
85361
|
-
} = mergedOpts;
|
|
85378
|
+
const { formName, urlConnected, history, defaults, onlyOneFilter } = mergedOpts;
|
|
85362
85379
|
function updateSearch(val) {
|
|
85363
85380
|
setTimeout(function() {
|
|
85364
85381
|
dispatch(change(formName, "reduxFormSearchInput", val || ""));
|
|
@@ -85397,12 +85414,7 @@ function withTableParams(compOrOpts, pTopLevelOpts) {
|
|
|
85397
85414
|
action(...args, currentParams);
|
|
85398
85415
|
};
|
|
85399
85416
|
});
|
|
85400
|
-
const {
|
|
85401
|
-
variables,
|
|
85402
|
-
selectedEntities,
|
|
85403
|
-
mergedOpts,
|
|
85404
|
-
...restStateProps
|
|
85405
|
-
} = stateProps;
|
|
85417
|
+
const { variables, selectedEntities, mergedOpts, ...restStateProps } = stateProps;
|
|
85406
85418
|
const changeFormValue = (...args) => dispatchProps.dispatch(change(formName, ...args));
|
|
85407
85419
|
const tableParams = {
|
|
85408
85420
|
changeFormValue,
|
|
@@ -89298,7 +89310,9 @@ const wrapDialog = (topLevelDialogProps = {}) => (Component) => (props) => {
|
|
|
89298
89310
|
return doNotTriggerClick();
|
|
89299
89311
|
}
|
|
89300
89312
|
const parentEl = r.current?.closest(".bp3-dialog-container");
|
|
89301
|
-
const dialogs = document.querySelectorAll(
|
|
89313
|
+
const dialogs = document.querySelectorAll(
|
|
89314
|
+
".bp3-dialog-container"
|
|
89315
|
+
);
|
|
89302
89316
|
const numDialogs = dialogs?.length;
|
|
89303
89317
|
if (numDialogs > 1) {
|
|
89304
89318
|
const topMostDialog = dialogs[numDialogs - 1];
|
|
@@ -89637,6 +89651,7 @@ function MatchHeaders({
|
|
|
89637
89651
|
marginBottom: 10,
|
|
89638
89652
|
marginLeft: 20,
|
|
89639
89653
|
fontSize: 10
|
|
89654
|
+
/* color: Colors.RED1 */
|
|
89640
89655
|
}
|
|
89641
89656
|
},
|
|
89642
89657
|
userMatchedHeader && [
|
|
@@ -91625,10 +91640,7 @@ const UploadCsvWizardDialog = compose(
|
|
|
91625
91640
|
if (props.filesWIssues.length > 0) {
|
|
91626
91641
|
const reduxFormEntitiesArray = [];
|
|
91627
91642
|
const finishedFiles = props.filesWIssues.map((f, i) => {
|
|
91628
|
-
const {
|
|
91629
|
-
reduxFormEntities,
|
|
91630
|
-
reduxFormCellValidation
|
|
91631
|
-
} = formValueSelector(`editableCellTable-${i}`)(
|
|
91643
|
+
const { reduxFormEntities, reduxFormCellValidation } = formValueSelector(`editableCellTable-${i}`)(
|
|
91632
91644
|
state,
|
|
91633
91645
|
"reduxFormEntities",
|
|
91634
91646
|
"reduxFormCellValidation"
|
|
@@ -103883,7 +103895,14 @@ const EnhancedMenuItem = compose(
|
|
|
103883
103895
|
}
|
|
103884
103896
|
}),
|
|
103885
103897
|
branch(({ navTo }) => navTo, withRouter$1)
|
|
103886
|
-
)(function({
|
|
103898
|
+
)(function({
|
|
103899
|
+
navTo,
|
|
103900
|
+
context,
|
|
103901
|
+
staticContext,
|
|
103902
|
+
didMount,
|
|
103903
|
+
willUnmount,
|
|
103904
|
+
...props
|
|
103905
|
+
}) {
|
|
103887
103906
|
let MenuItemComp = MenuItem;
|
|
103888
103907
|
if (navTo) {
|
|
103889
103908
|
MenuItemComp = MenuItemLink;
|
|
@@ -104941,11 +104960,7 @@ function getCommandHotkeyHandlers(commands) {
|
|
|
104941
104960
|
return handlers;
|
|
104942
104961
|
}
|
|
104943
104962
|
|
|
104944
|
-
const withCommand = (mappings) => (WrappedComponent) => ({
|
|
104945
|
-
cmd,
|
|
104946
|
-
cmdOptions = {},
|
|
104947
|
-
...props
|
|
104948
|
-
}) => {
|
|
104963
|
+
const withCommand = (mappings) => (WrappedComponent) => ({ cmd, cmdOptions = {}, ...props }) => {
|
|
104949
104964
|
const mappedProps = {};
|
|
104950
104965
|
Object.keys(mappings).forEach((k) => {
|
|
104951
104966
|
mappedProps[k] = mappings[k] === "execute" ? (event) => cmd.execute({ event }) : typeof mappings[k] === "function" ? mappings[k](cmd, props) : cmd[mappings[k]];
|
|
@@ -106092,9 +106107,9 @@ const frameTranslations = createReducer(
|
|
|
106092
106107
|
}
|
|
106093
106108
|
},
|
|
106094
106109
|
{
|
|
106095
|
-
|
|
106096
|
-
|
|
106097
|
-
|
|
106110
|
+
1: false,
|
|
106111
|
+
2: false,
|
|
106112
|
+
3: false,
|
|
106098
106113
|
"-1": false,
|
|
106099
106114
|
"-2": false,
|
|
106100
106115
|
"-3": false
|
|
@@ -106823,9 +106838,14 @@ function checkIfNonCircularRangesOverlap(range, comparisonRange) {
|
|
|
106823
106838
|
|
|
106824
106839
|
function checkIfPotentiallyCircularRangesOverlap(range, comparisonRange) {
|
|
106825
106840
|
return splitRangeIntoTwoPartsIfItIsCircular(range, Infinity).some(function(splitRange) {
|
|
106826
|
-
return splitRangeIntoTwoPartsIfItIsCircular(comparisonRange, Infinity).some(
|
|
106827
|
-
|
|
106828
|
-
|
|
106841
|
+
return splitRangeIntoTwoPartsIfItIsCircular(comparisonRange, Infinity).some(
|
|
106842
|
+
function(splitComparisonRange) {
|
|
106843
|
+
return checkIfNonCircularRangesOverlap(
|
|
106844
|
+
splitRange,
|
|
106845
|
+
splitComparisonRange
|
|
106846
|
+
);
|
|
106847
|
+
}
|
|
106848
|
+
);
|
|
106829
106849
|
});
|
|
106830
106850
|
}
|
|
106831
106851
|
|
|
@@ -106835,15 +106855,19 @@ function collapseOverlapsGeneratedFromRangeComparisonIfPossible(overlaps, sequen
|
|
|
106835
106855
|
return overlaps;
|
|
106836
106856
|
} else if (overlaps.length === 2) {
|
|
106837
106857
|
if (overlaps[0].start === 0 && overlaps[1].end + 1 === sequenceLength && !originalRangeLinear) {
|
|
106838
|
-
return [
|
|
106839
|
-
|
|
106840
|
-
|
|
106841
|
-
|
|
106858
|
+
return [
|
|
106859
|
+
{
|
|
106860
|
+
start: overlaps[1].start,
|
|
106861
|
+
end: overlaps[0].end
|
|
106862
|
+
}
|
|
106863
|
+
];
|
|
106842
106864
|
} else if (overlaps[1].start === 0 && overlaps[0].end + 1 === sequenceLength && !originalRangeLinear) {
|
|
106843
|
-
return [
|
|
106844
|
-
|
|
106845
|
-
|
|
106846
|
-
|
|
106865
|
+
return [
|
|
106866
|
+
{
|
|
106867
|
+
start: overlaps[0].start,
|
|
106868
|
+
end: overlaps[1].end
|
|
106869
|
+
}
|
|
106870
|
+
];
|
|
106847
106871
|
} else {
|
|
106848
106872
|
return overlaps;
|
|
106849
106873
|
}
|
|
@@ -106851,17 +106875,29 @@ function collapseOverlapsGeneratedFromRangeComparisonIfPossible(overlaps, sequen
|
|
|
106851
106875
|
const firstOverlap = overlaps[0];
|
|
106852
106876
|
const secondOverlap = overlaps[1];
|
|
106853
106877
|
const thirdOverlap = overlaps[2];
|
|
106854
|
-
let collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106878
|
+
let collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106879
|
+
[firstOverlap, secondOverlap],
|
|
106880
|
+
sequenceLength,
|
|
106881
|
+
optionalOriginalRange
|
|
106882
|
+
);
|
|
106855
106883
|
if (collapsedOverlaps.length === 1) {
|
|
106856
106884
|
collapsedOverlaps.push(thirdOverlap);
|
|
106857
106885
|
return collapsedOverlaps;
|
|
106858
106886
|
} else {
|
|
106859
|
-
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106887
|
+
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106888
|
+
[firstOverlap, thirdOverlap],
|
|
106889
|
+
sequenceLength,
|
|
106890
|
+
optionalOriginalRange
|
|
106891
|
+
);
|
|
106860
106892
|
if (collapsedOverlaps.length === 1) {
|
|
106861
106893
|
collapsedOverlaps.push(secondOverlap);
|
|
106862
106894
|
return collapsedOverlaps;
|
|
106863
106895
|
} else {
|
|
106864
|
-
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106896
|
+
collapsedOverlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
106897
|
+
[secondOverlap, thirdOverlap],
|
|
106898
|
+
sequenceLength,
|
|
106899
|
+
optionalOriginalRange
|
|
106900
|
+
);
|
|
106865
106901
|
if (collapsedOverlaps.length === 1) {
|
|
106866
106902
|
collapsedOverlaps.push(firstOverlap);
|
|
106867
106903
|
return collapsedOverlaps;
|
|
@@ -106883,11 +106919,18 @@ function convertRangeIndices(range, inputType, outputType) {
|
|
|
106883
106919
|
}
|
|
106884
106920
|
|
|
106885
106921
|
function convertRangeTo0Based(range) {
|
|
106886
|
-
return convertRangeIndices(range, {
|
|
106922
|
+
return convertRangeIndices(range, {
|
|
106923
|
+
inclusive1BasedStart: true,
|
|
106924
|
+
inclusive1BasedEnd: true
|
|
106925
|
+
});
|
|
106887
106926
|
}
|
|
106888
106927
|
|
|
106889
106928
|
function convertRangeTo1Based(range) {
|
|
106890
|
-
return convertRangeIndices(
|
|
106929
|
+
return convertRangeIndices(
|
|
106930
|
+
range,
|
|
106931
|
+
{},
|
|
106932
|
+
{ inclusive1BasedStart: true, inclusive1BasedEnd: true }
|
|
106933
|
+
);
|
|
106891
106934
|
}
|
|
106892
106935
|
|
|
106893
106936
|
function provideInclusiveOptions(funToWrap) {
|
|
@@ -106992,7 +107035,11 @@ function expandOrContractCircularRangeToPosition(range, position, maxLength) {
|
|
|
106992
107035
|
let endMoved = true;
|
|
106993
107036
|
if (range.end >= position) {
|
|
106994
107037
|
if (position + maxLength - range.start > range.end - position) {
|
|
106995
|
-
newRange.end = normalizePositionByRangeLength(
|
|
107038
|
+
newRange.end = normalizePositionByRangeLength(
|
|
107039
|
+
position - 1,
|
|
107040
|
+
maxLength,
|
|
107041
|
+
false
|
|
107042
|
+
);
|
|
106996
107043
|
} else {
|
|
106997
107044
|
newRange.start = position;
|
|
106998
107045
|
endMoved = false;
|
|
@@ -107065,19 +107112,31 @@ function expandOrContractRangeToPosition(range, position, maxLength) {
|
|
|
107065
107112
|
if (range.start > range.end) {
|
|
107066
107113
|
return expandOrContractCircularRangeToPosition(range, position, maxLength);
|
|
107067
107114
|
} else {
|
|
107068
|
-
return expandOrContractNonCircularRangeToPosition(
|
|
107115
|
+
return expandOrContractNonCircularRangeToPosition(
|
|
107116
|
+
range,
|
|
107117
|
+
position);
|
|
107069
107118
|
}
|
|
107070
107119
|
}
|
|
107071
107120
|
|
|
107072
107121
|
function translateRange(rangeToBeAdjusted, translateBy, rangeLength) {
|
|
107073
107122
|
return lodashExports.assign({}, rangeToBeAdjusted, {
|
|
107074
|
-
start: normalizePositionByRangeLength(
|
|
107075
|
-
|
|
107123
|
+
start: normalizePositionByRangeLength(
|
|
107124
|
+
rangeToBeAdjusted.start + translateBy,
|
|
107125
|
+
rangeLength
|
|
107126
|
+
),
|
|
107127
|
+
end: normalizePositionByRangeLength(
|
|
107128
|
+
rangeToBeAdjusted.end + translateBy,
|
|
107129
|
+
rangeLength
|
|
107130
|
+
)
|
|
107076
107131
|
});
|
|
107077
107132
|
}
|
|
107078
107133
|
|
|
107079
107134
|
function flipRelativeRange(innerRange, outerRange, sequenceLength, options) {
|
|
107080
|
-
const isFullyContained = isRangeWithinRange(
|
|
107135
|
+
const isFullyContained = isRangeWithinRange(
|
|
107136
|
+
innerRange,
|
|
107137
|
+
outerRange,
|
|
107138
|
+
sequenceLength
|
|
107139
|
+
);
|
|
107081
107140
|
if (isFullyContained) {
|
|
107082
107141
|
return flipFullyContainedRange(innerRange, outerRange, sequenceLength);
|
|
107083
107142
|
} else {
|
|
@@ -107085,40 +107144,91 @@ function flipRelativeRange(innerRange, outerRange, sequenceLength, options) {
|
|
|
107085
107144
|
}
|
|
107086
107145
|
}
|
|
107087
107146
|
function flipNonFullyContainedRange(innerRange, outerRange, sequenceLength, options) {
|
|
107088
|
-
const outerFullyContained = isRangeWithinRange(
|
|
107147
|
+
const outerFullyContained = isRangeWithinRange(
|
|
107148
|
+
outerRange,
|
|
107149
|
+
innerRange,
|
|
107150
|
+
sequenceLength
|
|
107151
|
+
);
|
|
107089
107152
|
let flippedInnerRange;
|
|
107090
107153
|
if (outerFullyContained) {
|
|
107091
|
-
const expandBy1 = getRangeLength(
|
|
107092
|
-
|
|
107093
|
-
|
|
107094
|
-
|
|
107095
|
-
|
|
107096
|
-
|
|
107097
|
-
|
|
107098
|
-
|
|
107099
|
-
|
|
107100
|
-
|
|
107154
|
+
const expandBy1 = getRangeLength(
|
|
107155
|
+
{
|
|
107156
|
+
start: innerRange.start,
|
|
107157
|
+
end: outerRange.start
|
|
107158
|
+
},
|
|
107159
|
+
sequenceLength
|
|
107160
|
+
) - 1;
|
|
107161
|
+
flippedInnerRange = expandOrContractRangeByLength(
|
|
107162
|
+
outerRange,
|
|
107163
|
+
expandBy1,
|
|
107164
|
+
false,
|
|
107165
|
+
sequenceLength
|
|
107166
|
+
);
|
|
107167
|
+
const expandBy2 = getRangeLength(
|
|
107168
|
+
{
|
|
107169
|
+
end: innerRange.end,
|
|
107170
|
+
start: outerRange.end
|
|
107171
|
+
},
|
|
107172
|
+
sequenceLength
|
|
107173
|
+
) - 1;
|
|
107174
|
+
flippedInnerRange = expandOrContractRangeByLength(
|
|
107175
|
+
flippedInnerRange,
|
|
107176
|
+
expandBy2,
|
|
107177
|
+
true,
|
|
107178
|
+
sequenceLength
|
|
107179
|
+
);
|
|
107101
107180
|
} else {
|
|
107102
|
-
const overlaps = getOverlapsOfPotentiallyCircularRanges(
|
|
107181
|
+
const overlaps = getOverlapsOfPotentiallyCircularRanges(
|
|
107182
|
+
innerRange,
|
|
107183
|
+
outerRange,
|
|
107184
|
+
sequenceLength
|
|
107185
|
+
);
|
|
107103
107186
|
if (overlaps.length >= 1) {
|
|
107104
107187
|
let overlapExtendsForward;
|
|
107105
107188
|
const firstOverlap = overlaps[0];
|
|
107106
107189
|
overlapExtendsForward = firstOverlap.start !== outerRange.start;
|
|
107107
|
-
const flippedTruncatedInner = flipFullyContainedRange(
|
|
107190
|
+
const flippedTruncatedInner = flipFullyContainedRange(
|
|
107191
|
+
firstOverlap,
|
|
107192
|
+
outerRange,
|
|
107193
|
+
sequenceLength
|
|
107194
|
+
);
|
|
107108
107195
|
const lengthToExtend = getRangeLength(innerRange, sequenceLength) - getRangeLength(flippedTruncatedInner, sequenceLength);
|
|
107109
|
-
flippedInnerRange = expandOrContractRangeByLength(
|
|
107196
|
+
flippedInnerRange = expandOrContractRangeByLength(
|
|
107197
|
+
flippedTruncatedInner,
|
|
107198
|
+
lengthToExtend,
|
|
107199
|
+
overlapExtendsForward,
|
|
107200
|
+
sequenceLength
|
|
107201
|
+
);
|
|
107110
107202
|
} else {
|
|
107111
|
-
throw new Error(
|
|
107203
|
+
throw new Error(
|
|
107204
|
+
"This case (relative ranges that do not overlap) is unsupported! "
|
|
107205
|
+
);
|
|
107112
107206
|
}
|
|
107113
107207
|
}
|
|
107114
107208
|
return flippedInnerRange;
|
|
107115
107209
|
}
|
|
107116
107210
|
function flipFullyContainedRange(innerRange, outerRange, sequenceLength, options) {
|
|
107117
107211
|
const translateBy = -outerRange.start;
|
|
107118
|
-
const translatedOuterRange = translateRange(
|
|
107119
|
-
|
|
107120
|
-
|
|
107121
|
-
|
|
107212
|
+
const translatedOuterRange = translateRange(
|
|
107213
|
+
outerRange,
|
|
107214
|
+
translateBy,
|
|
107215
|
+
sequenceLength
|
|
107216
|
+
);
|
|
107217
|
+
const translatedInnerRange = translateRange(
|
|
107218
|
+
innerRange,
|
|
107219
|
+
translateBy,
|
|
107220
|
+
sequenceLength
|
|
107221
|
+
);
|
|
107222
|
+
const translatedFlippedInnerRange = flipNonOriginSpanningContainedRange(
|
|
107223
|
+
translatedInnerRange,
|
|
107224
|
+
translatedOuterRange,
|
|
107225
|
+
sequenceLength
|
|
107226
|
+
);
|
|
107227
|
+
const flippedInnerRange = translateRange(
|
|
107228
|
+
translatedFlippedInnerRange,
|
|
107229
|
+
-translateBy,
|
|
107230
|
+
sequenceLength
|
|
107231
|
+
);
|
|
107122
107232
|
return flippedInnerRange;
|
|
107123
107233
|
}
|
|
107124
107234
|
function flipNonOriginSpanningContainedRange(innerRange, outerRange, sequenceLength) {
|
|
@@ -107290,9 +107400,15 @@ function trimNumberToFitWithin0ToAnotherNumber(numberToBeTrimmed, max) {
|
|
|
107290
107400
|
}
|
|
107291
107401
|
|
|
107292
107402
|
function zeroSubrangeByContainerRange(subRange, containerRange, sequenceLength) {
|
|
107293
|
-
const trimmedSubRange = trimRangeByAnotherRange(
|
|
107403
|
+
const trimmedSubRange = trimRangeByAnotherRange(
|
|
107404
|
+
subRange,
|
|
107405
|
+
containerRange,
|
|
107406
|
+
sequenceLength
|
|
107407
|
+
);
|
|
107294
107408
|
if (trimmedSubRange) {
|
|
107295
|
-
throw new Error(
|
|
107409
|
+
throw new Error(
|
|
107410
|
+
"subRange must be fully contained by containerRange! Otherwise this function does not make sense"
|
|
107411
|
+
);
|
|
107296
107412
|
}
|
|
107297
107413
|
const newSubrange = {};
|
|
107298
107414
|
newSubrange.start = subRange.start - containerRange.start;
|
|
@@ -107319,12 +107435,24 @@ function modulo(n, m) {
|
|
|
107319
107435
|
}
|
|
107320
107436
|
|
|
107321
107437
|
function getZeroedRangeOverlaps(annotation, selection, sequenceLength) {
|
|
107322
|
-
const overlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
107438
|
+
const overlaps = collapseOverlapsGeneratedFromRangeComparisonIfPossible(
|
|
107439
|
+
getOverlapsOfPotentiallyCircularRanges(
|
|
107440
|
+
annotation,
|
|
107441
|
+
selection,
|
|
107442
|
+
sequenceLength
|
|
107443
|
+
),
|
|
107444
|
+
sequenceLength,
|
|
107445
|
+
annotation
|
|
107446
|
+
);
|
|
107323
107447
|
const zeroedOverlaps = overlaps.map((overlap) => {
|
|
107324
|
-
return zeroSubrangeByContainerRange(
|
|
107325
|
-
|
|
107326
|
-
|
|
107327
|
-
|
|
107448
|
+
return zeroSubrangeByContainerRange(
|
|
107449
|
+
overlap,
|
|
107450
|
+
{
|
|
107451
|
+
start: selection.start,
|
|
107452
|
+
end: normalizePositionByRangeLength(selection.start - 1, sequenceLength)
|
|
107453
|
+
},
|
|
107454
|
+
sequenceLength
|
|
107455
|
+
);
|
|
107328
107456
|
});
|
|
107329
107457
|
return zeroedOverlaps;
|
|
107330
107458
|
}
|
|
@@ -114030,7 +114158,7 @@ const calcTmMethods = {
|
|
|
114030
114158
|
calculateTemperature: function(sequence, type, A, R, C, Na) {
|
|
114031
114159
|
if (typeof type === "undefined") {
|
|
114032
114160
|
type = this.TABLE_BRESLAUER;
|
|
114033
|
-
} else if (type != this.TABLE_BRESLAUER &&
|
|
114161
|
+
} else if (type != this.TABLE_BRESLAUER && type != this.TABLE_UNIFIED && type != this.TABLE_SUGIMOTO) {
|
|
114034
114162
|
throw new Error("Invalid table type!");
|
|
114035
114163
|
}
|
|
114036
114164
|
if (!A) {
|
|
@@ -122289,12 +122417,7 @@ function findSequenceMatches(sequence, searchString, options = {}) {
|
|
|
122289
122417
|
return matches;
|
|
122290
122418
|
}
|
|
122291
122419
|
function findSequenceMatchesTopStrand(sequence, searchString, options = {}) {
|
|
122292
|
-
const {
|
|
122293
|
-
isCircular,
|
|
122294
|
-
isAmbiguous,
|
|
122295
|
-
isProteinSequence,
|
|
122296
|
-
isProteinSearch
|
|
122297
|
-
} = options;
|
|
122420
|
+
const { isCircular, isAmbiguous, isProteinSequence, isProteinSearch } = options;
|
|
122298
122421
|
let searchStringToUse = escapeStringRegexp(searchString);
|
|
122299
122422
|
if (isAmbiguous) {
|
|
122300
122423
|
if (isProteinSearch || isProteinSequence) {
|
|
@@ -122376,7 +122499,10 @@ function convertAmbiguousStringToRegex(string, isProtein) {
|
|
|
122376
122499
|
|
|
122377
122500
|
function getComplementSequenceString(sequence, isRna) {
|
|
122378
122501
|
let complementSeqString = "";
|
|
122379
|
-
const complementMap = lodashExports.merge(
|
|
122502
|
+
const complementMap = lodashExports.merge(
|
|
122503
|
+
DNAComplementMap,
|
|
122504
|
+
isRna ? { a: "u", A: "U" } : { a: "t", A: "T" }
|
|
122505
|
+
);
|
|
122380
122506
|
for (let i = 0; i < sequence.length; i++) {
|
|
122381
122507
|
let complementChar = complementMap[sequence[i]];
|
|
122382
122508
|
if (!complementChar) {
|
|
@@ -135047,10 +135173,7 @@ async function geneiousXmlToJson(string, options) {
|
|
|
135047
135173
|
});
|
|
135048
135174
|
}
|
|
135049
135175
|
});
|
|
135050
|
-
const toRet = lodashExports.filter(
|
|
135051
|
-
resultArray,
|
|
135052
|
-
(r) => r?.parsedSequence?.sequence?.length
|
|
135053
|
-
);
|
|
135176
|
+
const toRet = lodashExports.filter(resultArray, (r) => r?.parsedSequence?.sequence?.length);
|
|
135054
135177
|
if (toRet.length)
|
|
135055
135178
|
return toRet;
|
|
135056
135179
|
return onFileParsed(resultArray);
|
|
@@ -135152,10 +135275,7 @@ async function jbeiXmlToJson(string, options) {
|
|
|
135152
135275
|
messages: ["Error while parsing JBEI format"]
|
|
135153
135276
|
});
|
|
135154
135277
|
}
|
|
135155
|
-
const toRet = lodashExports.filter(
|
|
135156
|
-
resultArray,
|
|
135157
|
-
(r) => r?.parsedSequence?.sequence?.length
|
|
135158
|
-
);
|
|
135278
|
+
const toRet = lodashExports.filter(resultArray, (r) => r?.parsedSequence?.sequence?.length);
|
|
135159
135279
|
if (toRet.length)
|
|
135160
135280
|
return toRet;
|
|
135161
135281
|
return onFileParsed(resultArray);
|
|
@@ -138430,10 +138550,7 @@ const lastSavedId$1 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.definePrope
|
|
|
138430
138550
|
lastSavedIdUpdate
|
|
138431
138551
|
}, Symbol.toStringTag, { value: 'Module' }));
|
|
138432
138552
|
|
|
138433
|
-
const toggleReadOnlyMode = createMetaAction(
|
|
138434
|
-
"TOGGLE_READ_ONLY_MODE",
|
|
138435
|
-
lodashExports.noop
|
|
138436
|
-
);
|
|
138553
|
+
const toggleReadOnlyMode = createMetaAction("TOGGLE_READ_ONLY_MODE", lodashExports.noop);
|
|
138437
138554
|
const updateReadOnlyMode = createMetaAction("UPDATE_READ_ONLY_MODE");
|
|
138438
138555
|
const readOnly = createReducer(
|
|
138439
138556
|
{
|
|
@@ -142146,6 +142263,9 @@ function showAddOrEditAnnotationDialog({
|
|
|
142146
142263
|
overrideName: `AddOrEdit${nameUpper}DialogOverride`,
|
|
142147
142264
|
dialogType,
|
|
142148
142265
|
props: {
|
|
142266
|
+
...annotation.isEditLocked && {
|
|
142267
|
+
readOnly: typeof annotation.isEditLocked === "string" ? annotation.isEditLocked : "This annotation is locked"
|
|
142268
|
+
},
|
|
142149
142269
|
dialogProps: {
|
|
142150
142270
|
title: annotation && annotation.id ? `Edit ${nameUpper}` : `New ${nameUpper}`
|
|
142151
142271
|
},
|
|
@@ -142787,7 +142907,8 @@ function mapStateToProps(state, ownProps) {
|
|
|
142787
142907
|
editorName,
|
|
142788
142908
|
sequenceData: sequenceDataFromProps,
|
|
142789
142909
|
allowSeqDataOverride,
|
|
142790
|
-
allowMultipleFeatureDirections
|
|
142910
|
+
allowMultipleFeatureDirections,
|
|
142911
|
+
readOnly
|
|
142791
142912
|
} = ownProps;
|
|
142792
142913
|
const editorState = getEditorState(state, editorName);
|
|
142793
142914
|
const meta = { editorName };
|
|
@@ -142847,6 +142968,7 @@ function mapStateToProps(state, ownProps) {
|
|
|
142847
142968
|
const f = getFindTool(findTool, matchesTotal);
|
|
142848
142969
|
return {
|
|
142849
142970
|
...editorState,
|
|
142971
|
+
readOnly: readOnly || editorState.readOnly,
|
|
142850
142972
|
meta,
|
|
142851
142973
|
annotationToAdd,
|
|
142852
142974
|
...newSelection && { selectionLayer: newSelection },
|
|
@@ -161031,7 +161153,7 @@ function showFileDialog({ multiple = false, onSelect }) {
|
|
|
161031
161153
|
}
|
|
161032
161154
|
|
|
161033
161155
|
const name = "@teselagen/ove";
|
|
161034
|
-
const version = "0.3.
|
|
161156
|
+
const version = "0.3.11";
|
|
161035
161157
|
const main = "./src/index.js";
|
|
161036
161158
|
const exports$1 = {
|
|
161037
161159
|
".": {
|
|
@@ -161641,7 +161763,7 @@ const fileCommandDefs = {
|
|
|
161641
161763
|
isHidden: isProtein
|
|
161642
161764
|
},
|
|
161643
161765
|
deleteSequence: {
|
|
161644
|
-
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || !props.onDelete,
|
|
161766
|
+
isDisabled: (props) => props.disableBpEditing && bpEditingDisabledTooltip || props.readOnly && readOnlyDisabledTooltip || !props.onDelete,
|
|
161645
161767
|
isHidden: (props) => !props.onDelete,
|
|
161646
161768
|
handler: (props) => props.onDelete(props.sequenceData)
|
|
161647
161769
|
},
|
|
@@ -161840,6 +161962,7 @@ Object.keys(defaultCopyOptions).forEach((type) => {
|
|
|
161840
161962
|
};
|
|
161841
161963
|
});
|
|
161842
161964
|
const readOnlyDisabledTooltip = "Sorry this function is not allowed in Read-Only Mode";
|
|
161965
|
+
const bpEditingDisabledTooltip = "Sequence Editing Disabled";
|
|
161843
161966
|
const noSelection = ({ selectionLayer = {} }) => !(selectionLayer.start > -1 && selectionLayer.end > -1) && "Selection Required";
|
|
161844
161967
|
const triggerClipboardCommand = (type) => {
|
|
161845
161968
|
const wrapper = document.querySelector(".veVectorInteractionWrapper");
|
|
@@ -161871,8 +161994,8 @@ const editCommandDefs = {
|
|
|
161871
161994
|
handler: lodashExports.noop
|
|
161872
161995
|
},
|
|
161873
161996
|
cut: {
|
|
161874
|
-
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
161875
|
-
isHidden: (props) => props.readOnly,
|
|
161997
|
+
isDisabled: (props) => props.disableBpEditing && bpEditingDisabledTooltip || props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
161998
|
+
isHidden: (props) => props.readOnly || props.disableBpEditing,
|
|
161876
161999
|
handler: () => {
|
|
161877
162000
|
triggerClipboardCommand("cut");
|
|
161878
162001
|
},
|
|
@@ -161897,7 +162020,7 @@ const editCommandDefs = {
|
|
|
161897
162020
|
},
|
|
161898
162021
|
paste: {
|
|
161899
162022
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip,
|
|
161900
|
-
isHidden: (props) => props.readOnly,
|
|
162023
|
+
isHidden: (props) => props.readOnly || props.disableBpEditing,
|
|
161901
162024
|
handler: () => triggerClipboardCommand("paste"),
|
|
161902
162025
|
hotkey: "mod+v"
|
|
161903
162026
|
},
|
|
@@ -162051,12 +162174,12 @@ const editCommandDefs = {
|
|
|
162051
162174
|
hotkey: "mod+i"
|
|
162052
162175
|
},
|
|
162053
162176
|
complementSelection: {
|
|
162054
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162177
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162055
162178
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || noSelection(props),
|
|
162056
162179
|
handler: (props) => props.handleComplementSelection()
|
|
162057
162180
|
},
|
|
162058
162181
|
complementEntireSequence: {
|
|
162059
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162182
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162060
162183
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
162061
162184
|
handler: (props) => props.handleComplementSequence()
|
|
162062
162185
|
},
|
|
@@ -162208,13 +162331,13 @@ const editCommandDefs = {
|
|
|
162208
162331
|
// }
|
|
162209
162332
|
// },
|
|
162210
162333
|
reverseComplementSelection: {
|
|
162211
|
-
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || noSelection(props),
|
|
162334
|
+
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || noSelection(props) || props.disableBpEditing,
|
|
162212
162335
|
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162213
162336
|
handler: (props) => props.handleReverseComplementSelection(),
|
|
162214
162337
|
hotkey: "mod+e"
|
|
162215
162338
|
},
|
|
162216
162339
|
reverseComplementEntireSequence: {
|
|
162217
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162340
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162218
162341
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0,
|
|
162219
162342
|
handler: (props) => props.handleReverseComplementSequence()
|
|
162220
162343
|
},
|
|
@@ -162364,7 +162487,7 @@ const editCommandDefs = {
|
|
|
162364
162487
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.sequenceLength === 0
|
|
162365
162488
|
},
|
|
162366
162489
|
rotateToCaretPosition: {
|
|
162367
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162490
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162368
162491
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip || props.caretPosition === -1 && "You must first place cursor" || !props.sequenceData.circular && "Disabled for Linear Sequences" || props.sequenceLength === 0,
|
|
162369
162492
|
handler: (props) => props.handleRotateToCaretPosition(),
|
|
162370
162493
|
hotkey: "mod+b"
|
|
@@ -162373,13 +162496,13 @@ const editCommandDefs = {
|
|
|
162373
162496
|
};
|
|
162374
162497
|
const cirularityCommandDefs = {
|
|
162375
162498
|
circular: {
|
|
162376
|
-
isHidden: (props) => props.readOnly || isProtein(props),
|
|
162499
|
+
isHidden: (props) => props.readOnly || isProtein(props) || props.disableBpEditing,
|
|
162377
162500
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip,
|
|
162378
162501
|
handler: (props) => props.updateCircular(true),
|
|
162379
162502
|
isActive: (props) => props && props.sequenceData.circular
|
|
162380
162503
|
},
|
|
162381
162504
|
linear: {
|
|
162382
|
-
isHidden: (props) => props.readOnly,
|
|
162505
|
+
isHidden: (props) => props.readOnly || props.disableBpEditing,
|
|
162383
162506
|
isDisabled: (props) => props.readOnly && readOnlyDisabledTooltip,
|
|
162384
162507
|
handler: (props) => props.updateCircular(false),
|
|
162385
162508
|
isActive: (props) => props && !props.sequenceData.circular
|
|
@@ -162406,29 +162529,27 @@ const nicheAnnotations = [
|
|
|
162406
162529
|
}
|
|
162407
162530
|
];
|
|
162408
162531
|
const labelToggleCommandDefs = {};
|
|
162409
|
-
["feature", "part", "cutsite", "primer", ...nicheAnnotations].forEach(
|
|
162410
|
-
|
|
162411
|
-
|
|
162412
|
-
|
|
162413
|
-
|
|
162414
|
-
|
|
162415
|
-
|
|
162416
|
-
|
|
162417
|
-
|
|
162418
|
-
|
|
162419
|
-
|
|
162420
|
-
|
|
162421
|
-
|
|
162422
|
-
|
|
162423
|
-
|
|
162424
|
-
|
|
162425
|
-
|
|
162426
|
-
|
|
162427
|
-
|
|
162428
|
-
|
|
162429
|
-
|
|
162430
|
-
}
|
|
162431
|
-
);
|
|
162532
|
+
["feature", "part", "cutsite", "primer", ...nicheAnnotations].forEach((_type) => {
|
|
162533
|
+
let rest = {};
|
|
162534
|
+
let type = _type;
|
|
162535
|
+
if (_type.type) {
|
|
162536
|
+
type = _type.type.slice(0, -1);
|
|
162537
|
+
rest = _type;
|
|
162538
|
+
}
|
|
162539
|
+
const cmdId = `toggle${lodashExports.upperFirst(type)}Labels`;
|
|
162540
|
+
const plural = type + "s";
|
|
162541
|
+
labelToggleCommandDefs[cmdId] = {
|
|
162542
|
+
toggle: ["show", "hide"],
|
|
162543
|
+
handler: (props) => props.annotationLabelVisibilityToggle(plural),
|
|
162544
|
+
isHidden: (props) => {
|
|
162545
|
+
return props && props.typesToOmit && props.typesToOmit[plural] === false;
|
|
162546
|
+
},
|
|
162547
|
+
...rest,
|
|
162548
|
+
isActive: (props) => {
|
|
162549
|
+
return props && props.annotationLabelVisibility[plural];
|
|
162550
|
+
}
|
|
162551
|
+
};
|
|
162552
|
+
});
|
|
162432
162553
|
const editAnnotationCommandDefs = ["feature", "part", "primer"].reduce(
|
|
162433
162554
|
(acc, key) => {
|
|
162434
162555
|
acc[`edit${lodashExports.upperFirst(key)}`] = {
|
|
@@ -166617,8 +166738,12 @@ function VectorInteractionHOC(Component) {
|
|
|
166617
166738
|
caretPosition = -1,
|
|
166618
166739
|
selectionLayer = { start: -1, end: -1 },
|
|
166619
166740
|
readOnly,
|
|
166620
|
-
onPaste
|
|
166741
|
+
onPaste,
|
|
166742
|
+
disableBpEditing
|
|
166621
166743
|
} = this.props;
|
|
166744
|
+
if (disableBpEditing) {
|
|
166745
|
+
return window.toastr.warning("Sorry the underlying sequence is locked");
|
|
166746
|
+
}
|
|
166622
166747
|
if (readOnly) {
|
|
166623
166748
|
return window.toastr.warning("Sorry the sequence is Read-Only");
|
|
166624
166749
|
}
|
|
@@ -166659,6 +166784,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166659
166784
|
sequenceData,
|
|
166660
166785
|
selectionLayer,
|
|
166661
166786
|
copyOptions,
|
|
166787
|
+
disableBpEditing,
|
|
166662
166788
|
readOnly
|
|
166663
166789
|
} = this.props;
|
|
166664
166790
|
const onCut = this.props.onCut || this.props.onCopy || lodashExports.noop;
|
|
@@ -166684,7 +166810,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166684
166810
|
);
|
|
166685
166811
|
if (!(this.sequenceDataToCopy || {}).textToCopy && !seqData.sequence.length)
|
|
166686
166812
|
return window.toastr.warning(
|
|
166687
|
-
`No Sequence Selected To ${isCut && !readOnly ? "Cut" : "Copy"}`
|
|
166813
|
+
`No Sequence Selected To ${isCut && !(readOnly || disableBpEditing) ? "Cut" : "Copy"}`
|
|
166688
166814
|
);
|
|
166689
166815
|
const clipboardData = e.clipboardData;
|
|
166690
166816
|
const textToCopy = (this.sequenceDataToCopy || {}).textToCopy !== void 0 ? this.sequenceDataToCopy.textToCopy : seqData.isProtein ? seqData.proteinSequence : seqData.sequence;
|
|
@@ -166692,7 +166818,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166692
166818
|
clipboardData.setData("text/plain", textToCopy);
|
|
166693
166819
|
clipboardData.setData("application/json", JSON.stringify(seqData));
|
|
166694
166820
|
e.preventDefault();
|
|
166695
|
-
if (isCut && !readOnly) {
|
|
166821
|
+
if (isCut && !(readOnly || disableBpEditing) && !disableBpEditing) {
|
|
166696
166822
|
this.handleDnaDelete(false);
|
|
166697
166823
|
onCut(
|
|
166698
166824
|
e,
|
|
@@ -166705,7 +166831,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166705
166831
|
document.body.removeEventListener("copy", this.handleCopy);
|
|
166706
166832
|
}
|
|
166707
166833
|
window.toastr.success(
|
|
166708
|
-
`Selection ${isCut && !readOnly ? "Cut" : "Copied"}`
|
|
166834
|
+
`Selection ${isCut && !(readOnly || disableBpEditing) && !disableBpEditing ? "Cut" : "Copied"}`
|
|
166709
166835
|
);
|
|
166710
166836
|
this.sequenceDataToCopy = void 0;
|
|
166711
166837
|
};
|
|
@@ -166716,14 +166842,18 @@ function VectorInteractionHOC(Component) {
|
|
|
166716
166842
|
caretPosition = -1,
|
|
166717
166843
|
selectionLayer = { start: -1, end: -1 },
|
|
166718
166844
|
sequenceData = { sequence: "" },
|
|
166719
|
-
readOnly
|
|
166845
|
+
readOnly,
|
|
166846
|
+
disableBpEditing
|
|
166720
166847
|
// updateSequenceData,
|
|
166721
166848
|
// wrappedInsertSequenceDataAtPositionOrRange
|
|
166722
166849
|
// handleInsert
|
|
166723
166850
|
} = this.props;
|
|
166724
166851
|
const sequenceLength = sequenceData.sequence.length;
|
|
166725
166852
|
const isReplace = selectionLayer.start > -1;
|
|
166726
|
-
if (
|
|
166853
|
+
if (disableBpEditing) {
|
|
166854
|
+
return window.toastr.warning("Sorry the underlying sequence is locked");
|
|
166855
|
+
}
|
|
166856
|
+
if (readOnly || disableBpEditing) {
|
|
166727
166857
|
window.toastr.warning("Sorry the sequence is Read-Only");
|
|
166728
166858
|
} else {
|
|
166729
166859
|
createSequenceInputPopup({
|
|
@@ -166751,13 +166881,17 @@ function VectorInteractionHOC(Component) {
|
|
|
166751
166881
|
selectionLayer = { start: -1, end: -1 },
|
|
166752
166882
|
sequenceData = { sequence: "" },
|
|
166753
166883
|
readOnly,
|
|
166884
|
+
disableBpEditing,
|
|
166754
166885
|
updateSequenceData,
|
|
166755
166886
|
wrappedInsertSequenceDataAtPositionOrRange,
|
|
166756
166887
|
caretPositionUpdate
|
|
166757
166888
|
// handleInsert
|
|
166758
166889
|
} = this.props;
|
|
166759
166890
|
const sequenceLength = sequenceData.sequence.length;
|
|
166760
|
-
if (
|
|
166891
|
+
if (disableBpEditing) {
|
|
166892
|
+
return window.toastr.warning("Sorry the underlying sequence is locked");
|
|
166893
|
+
}
|
|
166894
|
+
if (readOnly || disableBpEditing) {
|
|
166761
166895
|
return window.toastr.warning("Sorry the sequence is Read-Only");
|
|
166762
166896
|
}
|
|
166763
166897
|
if (sequenceLength > 0) {
|
|
@@ -166888,7 +167022,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166888
167022
|
};
|
|
166889
167023
|
// eslint-disable-next-line no-unused-vars
|
|
166890
167024
|
getCopyOptions = (annotation) => {
|
|
166891
|
-
const { sequenceData, readOnly, selectionLayer } = this.props;
|
|
167025
|
+
const { sequenceData, readOnly, disableBpEditing, selectionLayer } = this.props;
|
|
166892
167026
|
const { isProtein } = sequenceData;
|
|
166893
167027
|
const makeTextCopyable = (transformFunc, className, action = "copy") => {
|
|
166894
167028
|
return new Clipboard$1(`.${className}`, {
|
|
@@ -166948,7 +167082,7 @@ function VectorInteractionHOC(Component) {
|
|
|
166948
167082
|
}
|
|
166949
167083
|
};
|
|
166950
167084
|
return [
|
|
166951
|
-
...readOnly ? [] : [
|
|
167085
|
+
...readOnly || disableBpEditing ? [] : [
|
|
166952
167086
|
{
|
|
166953
167087
|
text: "Replace",
|
|
166954
167088
|
...this.insertHelper
|
|
@@ -167022,21 +167156,14 @@ function VectorInteractionHOC(Component) {
|
|
|
167022
167156
|
this.openVeCopyAAReverse && this.openVeCopyAAReverse.destroy();
|
|
167023
167157
|
},
|
|
167024
167158
|
didMount: ({ className }) => {
|
|
167025
|
-
this.openVeCopyAAReverse = makeTextCopyable(
|
|
167026
|
-
(selectedSeqData)
|
|
167027
|
-
|
|
167028
|
-
|
|
167029
|
-
|
|
167030
|
-
|
|
167031
|
-
|
|
167032
|
-
|
|
167033
|
-
return {
|
|
167034
|
-
...revSeqData,
|
|
167035
|
-
textToCopy
|
|
167036
|
-
};
|
|
167037
|
-
},
|
|
167038
|
-
className
|
|
167039
|
-
);
|
|
167159
|
+
this.openVeCopyAAReverse = makeTextCopyable((selectedSeqData) => {
|
|
167160
|
+
const revSeqData = getReverseComplementSequenceAndAnnoations(selectedSeqData);
|
|
167161
|
+
const textToCopy = isProtein ? revSeqData.proteinSequence.toUpperCase() : getAminoAcidStringFromSequenceString(revSeqData.sequence);
|
|
167162
|
+
return {
|
|
167163
|
+
...revSeqData,
|
|
167164
|
+
textToCopy
|
|
167165
|
+
};
|
|
167166
|
+
}, className);
|
|
167040
167167
|
}
|
|
167041
167168
|
},
|
|
167042
167169
|
{
|
|
@@ -167143,11 +167270,12 @@ function VectorInteractionHOC(Component) {
|
|
|
167143
167270
|
({ nearestCaretPos, shiftHeld, event }) => {
|
|
167144
167271
|
this.updateSelectionOrCaret(shiftHeld, nearestCaretPos);
|
|
167145
167272
|
const {
|
|
167146
|
-
readOnly
|
|
167273
|
+
readOnly,
|
|
167274
|
+
disableBpEditing
|
|
167147
167275
|
// sequenceData: { circular }
|
|
167148
167276
|
} = this.props;
|
|
167149
167277
|
const menu = [
|
|
167150
|
-
...readOnly ? [] : [
|
|
167278
|
+
...readOnly || disableBpEditing ? [] : [
|
|
167151
167279
|
{
|
|
167152
167280
|
text: "Insert",
|
|
167153
167281
|
...this.insertHelper
|
|
@@ -167193,8 +167321,7 @@ function VectorInteractionHOC(Component) {
|
|
|
167193
167321
|
overlapsSelf: annotation.overlapsSelf
|
|
167194
167322
|
});
|
|
167195
167323
|
return [
|
|
167196
|
-
"
|
|
167197
|
-
"deletePart",
|
|
167324
|
+
...getEditDeleteHandlers("Part", annotation),
|
|
167198
167325
|
"--",
|
|
167199
167326
|
...this.getSelectionMenuOptions(annotation),
|
|
167200
167327
|
"--",
|
|
@@ -167236,8 +167363,7 @@ function VectorInteractionHOC(Component) {
|
|
|
167236
167363
|
event.persist();
|
|
167237
167364
|
const { readOnly, annotationsToSupport: { parts } = {} } = this.props;
|
|
167238
167365
|
return [
|
|
167239
|
-
"
|
|
167240
|
-
"deleteFeature",
|
|
167366
|
+
...getEditDeleteHandlers("Feature", annotation),
|
|
167241
167367
|
...this.getSelectionMenuOptions(annotation),
|
|
167242
167368
|
...readOnly ? [] : [
|
|
167243
167369
|
...parts && [
|
|
@@ -167304,8 +167430,7 @@ function VectorInteractionHOC(Component) {
|
|
|
167304
167430
|
end: annotation.end
|
|
167305
167431
|
});
|
|
167306
167432
|
return [
|
|
167307
|
-
"
|
|
167308
|
-
"deletePrimer",
|
|
167433
|
+
...getEditDeleteHandlers("Primer", annotation),
|
|
167309
167434
|
...this.getSelectionMenuOptions(annotation),
|
|
167310
167435
|
"showRemoveDuplicatesDialogPrimers",
|
|
167311
167436
|
"viewPrimerProperties"
|
|
@@ -167515,6 +167640,28 @@ const insertAndSelectHelper = ({ seqDataToInsert, props }) => {
|
|
|
167515
167640
|
end: newSelectionLayerEnd % newSeqData.sequence.length
|
|
167516
167641
|
});
|
|
167517
167642
|
};
|
|
167643
|
+
function getEditDeleteHandlers(type, annotation) {
|
|
167644
|
+
return [
|
|
167645
|
+
...annotation.isEditLocked ? [
|
|
167646
|
+
{
|
|
167647
|
+
shouldDismissPopover: false,
|
|
167648
|
+
text: /* @__PURE__ */ React__default$1.createElement(
|
|
167649
|
+
"div",
|
|
167650
|
+
{
|
|
167651
|
+
style: {
|
|
167652
|
+
fontSize: 11,
|
|
167653
|
+
fontStyle: "italic",
|
|
167654
|
+
color: "rgba(0,0,0,.5)"
|
|
167655
|
+
}
|
|
167656
|
+
},
|
|
167657
|
+
typeof annotation.isEditLocked === "string" ? annotation.isEditLocked : `Note: This Annotation is Locked`
|
|
167658
|
+
)
|
|
167659
|
+
}
|
|
167660
|
+
] : [],
|
|
167661
|
+
`edit${type}`,
|
|
167662
|
+
...annotation.isEditLocked ? [] : [`delete${type}`]
|
|
167663
|
+
];
|
|
167664
|
+
}
|
|
167518
167665
|
|
|
167519
167666
|
const style$i = '';
|
|
167520
167667
|
|
|
@@ -174672,7 +174819,11 @@ const GoToDialog = createSimpleDialog({
|
|
|
174672
174819
|
}
|
|
174673
174820
|
}
|
|
174674
174821
|
],
|
|
174675
|
-
withDialogProps: {
|
|
174822
|
+
withDialogProps: {
|
|
174823
|
+
title: "Go To",
|
|
174824
|
+
height: 190,
|
|
174825
|
+
onCloseHook: tryToRefocusEditor
|
|
174826
|
+
}
|
|
174676
174827
|
});
|
|
174677
174828
|
|
|
174678
174829
|
const validate$1 = (val, vals, props) => {
|
|
@@ -177332,6 +177483,7 @@ class AddOrEditAnnotationDialog extends React__default$1.Component {
|
|
|
177332
177483
|
overlapsSelf,
|
|
177333
177484
|
start,
|
|
177334
177485
|
end,
|
|
177486
|
+
readOnly,
|
|
177335
177487
|
getAdditionalEditAnnotationComps,
|
|
177336
177488
|
advancedOptions,
|
|
177337
177489
|
advancedDefaultOpen,
|
|
@@ -177426,10 +177578,11 @@ class AddOrEditAnnotationDialog extends React__default$1.Component {
|
|
|
177426
177578
|
"tg-upsert-annotation"
|
|
177427
177579
|
)
|
|
177428
177580
|
},
|
|
177581
|
+
typeof readOnly === "string" ? /* @__PURE__ */ React__default$1.createElement(Callout, { intent: "primary", style: { marginBottom: 10 } }, readOnly) : null,
|
|
177429
177582
|
/* @__PURE__ */ React__default$1.createElement(
|
|
177430
177583
|
InputField,
|
|
177431
177584
|
{
|
|
177432
|
-
disabled:
|
|
177585
|
+
disabled: readOnly,
|
|
177433
177586
|
inlineLabel: true,
|
|
177434
177587
|
tooltipError: true,
|
|
177435
177588
|
autoFocus: true,
|
|
@@ -180367,15 +180520,15 @@ class Browser {
|
|
|
180367
180520
|
}
|
|
180368
180521
|
// Edge 20+
|
|
180369
180522
|
static isEdge() {
|
|
180370
|
-
return Browser.isBrowser() &&
|
|
180523
|
+
return Browser.isBrowser() && !Browser.isIE() && !!window.StyleMedia;
|
|
180371
180524
|
}
|
|
180372
180525
|
// Chrome 1+
|
|
180373
180526
|
static isChrome() {
|
|
180374
|
-
return Browser.isBrowser() &&
|
|
180527
|
+
return Browser.isBrowser() && !!window.chrome && !!window.chrome.webstore;
|
|
180375
180528
|
}
|
|
180376
180529
|
// Blink engine detection
|
|
180377
180530
|
static isBlink() {
|
|
180378
|
-
return Browser.isBrowser() && (
|
|
180531
|
+
return Browser.isBrowser() && (Browser.isChrome() || Browser.isOpera()) && !!window.CSS;
|
|
180379
180532
|
}
|
|
180380
180533
|
static getUserAgent() {
|
|
180381
180534
|
return typeof navigator === "undefined" ? "" : navigator.userAgent;
|
|
@@ -182968,6 +183121,8 @@ const userDefinedHandlersAndOpts = [
|
|
|
182968
183121
|
"hideSingleImport",
|
|
182969
183122
|
"beforeAnnotationCreate",
|
|
182970
183123
|
"disableSetReadOnly",
|
|
183124
|
+
"allowAnnotationEditLocking",
|
|
183125
|
+
"disableBpEditing",
|
|
182971
183126
|
"showReadOnly",
|
|
182972
183127
|
"showCircularity",
|
|
182973
183128
|
"onHiddenEnzymeAdd",
|
|
@@ -184381,9 +184536,7 @@ const genericAnnotationProperties = ({
|
|
|
184381
184536
|
AnchorButton,
|
|
184382
184537
|
{
|
|
184383
184538
|
onClick: () => {
|
|
184384
|
-
deleteAnnotation(
|
|
184385
|
-
annotationPropertiesSelectedEntities
|
|
184386
|
-
);
|
|
184539
|
+
deleteAnnotation(annotationPropertiesSelectedEntities);
|
|
184387
184540
|
},
|
|
184388
184541
|
className: "tgDeleteAnnsBtn",
|
|
184389
184542
|
intent: "danger",
|