@teselagen/ove 0.3.3 → 0.3.5
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.umd.js +188 -135
- package/package.json +7 -7
- package/src/Editor/index.js +35 -36
- package/src/Editor/userDefinedHandlersAndOpts.js +1 -0
- package/src/StatusBar/index.js +3 -5
- package/src/ToolBar/editTool.js +31 -18
- package/src/helperComponents/PropertiesDialog/GeneralProperties.js +1 -5
- package/src/updateEditor.js +1 -1
- package/src/withEditorInteractions/index.js +11 -11
    
        package/index.umd.js
    CHANGED
    
    | @@ -57088,17 +57088,17 @@ | |
| 57088 57088 | 
             
                throw TypeError("Can't convert object to primitive value");
         | 
| 57089 57089 | 
             
              };
         | 
| 57090 57090 |  | 
| 57091 | 
            -
              var anObject$ | 
| 57091 | 
            +
              var anObject$3 = _anObject;
         | 
| 57092 57092 | 
             
              var IE8_DOM_DEFINE$1 = _ie8DomDefine;
         | 
| 57093 57093 | 
             
              var toPrimitive$2 = _toPrimitive$1;
         | 
| 57094 | 
            -
              var dP$ | 
| 57094 | 
            +
              var dP$2 = Object.defineProperty;
         | 
| 57095 57095 |  | 
| 57096 57096 | 
             
              _objectDp.f = _descriptors ? Object.defineProperty : function defineProperty(O, P, Attributes) {
         | 
| 57097 | 
            -
                anObject$ | 
| 57097 | 
            +
                anObject$3(O);
         | 
| 57098 57098 | 
             
                P = toPrimitive$2(P, true);
         | 
| 57099 | 
            -
                anObject$ | 
| 57099 | 
            +
                anObject$3(Attributes);
         | 
| 57100 57100 | 
             
                if (IE8_DOM_DEFINE$1) try {
         | 
| 57101 | 
            -
                  return dP$ | 
| 57101 | 
            +
                  return dP$2(O, P, Attributes);
         | 
| 57102 57102 | 
             
                } catch (e) { /* empty */ }
         | 
| 57103 57103 | 
             
                if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
         | 
| 57104 57104 | 
             
                if ('value' in Attributes) O[P] = Attributes.value;
         | 
| @@ -57114,10 +57114,10 @@ | |
| 57114 57114 | 
             
                };
         | 
| 57115 57115 | 
             
              };
         | 
| 57116 57116 |  | 
| 57117 | 
            -
              var dP$ | 
| 57117 | 
            +
              var dP$1 = _objectDp;
         | 
| 57118 57118 | 
             
              var createDesc$3 = _propertyDesc;
         | 
| 57119 57119 | 
             
              var _hide = _descriptors ? function (object, key, value) {
         | 
| 57120 | 
            -
                return dP$ | 
| 57120 | 
            +
                return dP$1.f(object, key, createDesc$3(1, value));
         | 
| 57121 57121 | 
             
              } : function (object, key, value) {
         | 
| 57122 57122 | 
             
                object[key] = value;
         | 
| 57123 57123 | 
             
                return object;
         | 
| @@ -57133,7 +57133,7 @@ | |
| 57133 57133 | 
             
              var ctx$1 = _ctx;
         | 
| 57134 57134 | 
             
              var hide$2 = _hide;
         | 
| 57135 57135 | 
             
              var has$d = _has;
         | 
| 57136 | 
            -
              var PROTOTYPE$ | 
| 57136 | 
            +
              var PROTOTYPE$1 = 'prototype';
         | 
| 57137 57137 |  | 
| 57138 57138 | 
             
              var $export$8 = function (type, name, source) {
         | 
| 57139 57139 | 
             
                var IS_FORCED = type & $export$8.F;
         | 
| @@ -57143,8 +57143,8 @@ | |
| 57143 57143 | 
             
                var IS_BIND = type & $export$8.B;
         | 
| 57144 57144 | 
             
                var IS_WRAP = type & $export$8.W;
         | 
| 57145 57145 | 
             
                var exports = IS_GLOBAL ? core$3 : core$3[name] || (core$3[name] = {});
         | 
| 57146 | 
            -
                var expProto = exports[PROTOTYPE$ | 
| 57147 | 
            -
                var target = IS_GLOBAL ? global$4 : IS_STATIC ? global$4[name] : (global$4[name] || {})[PROTOTYPE$ | 
| 57146 | 
            +
                var expProto = exports[PROTOTYPE$1];
         | 
| 57147 | 
            +
                var target = IS_GLOBAL ? global$4 : IS_STATIC ? global$4[name] : (global$4[name] || {})[PROTOTYPE$1];
         | 
| 57148 57148 | 
             
                var key, own, out;
         | 
| 57149 57149 | 
             
                if (IS_GLOBAL) source = name;
         | 
| 57150 57150 | 
             
                for (key in source) {
         | 
| @@ -57168,7 +57168,7 @@ | |
| 57168 57168 | 
             
                        } return new C(a, b, c);
         | 
| 57169 57169 | 
             
                      } return C.apply(this, arguments);
         | 
| 57170 57170 | 
             
                    };
         | 
| 57171 | 
            -
                    F[PROTOTYPE$ | 
| 57171 | 
            +
                    F[PROTOTYPE$1] = C[PROTOTYPE$1];
         | 
| 57172 57172 | 
             
                    return F;
         | 
| 57173 57173 | 
             
                  // make static versions for prototype methods
         | 
| 57174 57174 | 
             
                  })(out) : IS_PROTO && typeof out == 'function' ? ctx$1(Function.call, out) : out;
         | 
| @@ -57305,14 +57305,14 @@ | |
| 57305 57305 | 
             
              var has$c = _has;
         | 
| 57306 57306 | 
             
              var toIObject$4 = _toIobject;
         | 
| 57307 57307 | 
             
              var arrayIndexOf = _arrayIncludes$1(false);
         | 
| 57308 | 
            -
              var IE_PROTO$ | 
| 57308 | 
            +
              var IE_PROTO$1 = _sharedKey('IE_PROTO');
         | 
| 57309 57309 |  | 
| 57310 57310 | 
             
              var _objectKeysInternal = function (object, names) {
         | 
| 57311 57311 | 
             
                var O = toIObject$4(object);
         | 
| 57312 57312 | 
             
                var i = 0;
         | 
| 57313 57313 | 
             
                var result = [];
         | 
| 57314 57314 | 
             
                var key;
         | 
| 57315 | 
            -
                for (key in O) if (key != IE_PROTO$ | 
| 57315 | 
            +
                for (key in O) if (key != IE_PROTO$1) has$c(O, key) && result.push(key);
         | 
| 57316 57316 | 
             
                // Don't enum bug & hidden keys
         | 
| 57317 57317 | 
             
                while (names.length > i) if (has$c(O, key = names[i++])) {
         | 
| 57318 57318 | 
             
                  ~arrayIndexOf(result, key) || result.push(key);
         | 
| @@ -57327,10 +57327,10 @@ | |
| 57327 57327 |  | 
| 57328 57328 | 
             
              // 19.1.2.14 / 15.2.3.14 Object.keys(O)
         | 
| 57329 57329 | 
             
              var $keys$3 = _objectKeysInternal;
         | 
| 57330 | 
            -
              var enumBugKeys | 
| 57330 | 
            +
              var enumBugKeys = _enumBugKeys;
         | 
| 57331 57331 |  | 
| 57332 57332 | 
             
              var _objectKeys = Object.keys || function keys(O) {
         | 
| 57333 | 
            -
                return $keys$3(O, enumBugKeys | 
| 57333 | 
            +
                return $keys$3(O, enumBugKeys);
         | 
| 57334 57334 | 
             
              };
         | 
| 57335 57335 |  | 
| 57336 57336 | 
             
              var _objectGops = {};
         | 
| @@ -57437,19 +57437,27 @@ | |
| 57437 57437 |  | 
| 57438 57438 | 
             
              var _redefine = _hide;
         | 
| 57439 57439 |  | 
| 57440 | 
            -
              var  | 
| 57441 | 
            -
              var  | 
| 57442 | 
            -
              var getKeys$1 = _objectKeys;
         | 
| 57440 | 
            +
              var _objectDps;
         | 
| 57441 | 
            +
              var hasRequired_objectDps;
         | 
| 57443 57442 |  | 
| 57444 | 
            -
               | 
| 57445 | 
            -
             | 
| 57446 | 
            -
             | 
| 57447 | 
            -
             | 
| 57448 | 
            -
             | 
| 57449 | 
            -
             | 
| 57450 | 
            -
             | 
| 57451 | 
            -
             | 
| 57452 | 
            -
             | 
| 57443 | 
            +
              function require_objectDps () {
         | 
| 57444 | 
            +
              	if (hasRequired_objectDps) return _objectDps;
         | 
| 57445 | 
            +
              	hasRequired_objectDps = 1;
         | 
| 57446 | 
            +
              	var dP = _objectDp;
         | 
| 57447 | 
            +
              	var anObject = _anObject;
         | 
| 57448 | 
            +
              	var getKeys = _objectKeys;
         | 
| 57449 | 
            +
             | 
| 57450 | 
            +
              	_objectDps = _descriptors ? Object.defineProperties : function defineProperties(O, Properties) {
         | 
| 57451 | 
            +
              	  anObject(O);
         | 
| 57452 | 
            +
              	  var keys = getKeys(Properties);
         | 
| 57453 | 
            +
              	  var length = keys.length;
         | 
| 57454 | 
            +
              	  var i = 0;
         | 
| 57455 | 
            +
              	  var P;
         | 
| 57456 | 
            +
              	  while (length > i) dP.f(O, P = keys[i++], Properties[P]);
         | 
| 57457 | 
            +
              	  return O;
         | 
| 57458 | 
            +
              	};
         | 
| 57459 | 
            +
              	return _objectDps;
         | 
| 57460 | 
            +
              }
         | 
| 57453 57461 |  | 
| 57454 57462 | 
             
              var _html;
         | 
| 57455 57463 | 
             
              var hasRequired_html;
         | 
| @@ -57462,47 +57470,55 @@ | |
| 57462 57470 | 
             
              	return _html;
         | 
| 57463 57471 | 
             
              }
         | 
| 57464 57472 |  | 
| 57465 | 
            -
               | 
| 57466 | 
            -
              var  | 
| 57467 | 
            -
              var dPs = _objectDps;
         | 
| 57468 | 
            -
              var enumBugKeys = _enumBugKeys;
         | 
| 57469 | 
            -
              var IE_PROTO$1 = _sharedKey('IE_PROTO');
         | 
| 57470 | 
            -
              var Empty = function () { /* empty */ };
         | 
| 57471 | 
            -
              var PROTOTYPE$1 = 'prototype';
         | 
| 57473 | 
            +
              var _objectCreate;
         | 
| 57474 | 
            +
              var hasRequired_objectCreate;
         | 
| 57472 57475 |  | 
| 57473 | 
            -
               | 
| 57474 | 
            -
             | 
| 57475 | 
            -
             | 
| 57476 | 
            -
             | 
| 57477 | 
            -
             | 
| 57478 | 
            -
             | 
| 57479 | 
            -
             | 
| 57480 | 
            -
             | 
| 57481 | 
            -
             | 
| 57482 | 
            -
             | 
| 57483 | 
            -
             | 
| 57484 | 
            -
             | 
| 57485 | 
            -
             | 
| 57486 | 
            -
             | 
| 57487 | 
            -
             | 
| 57488 | 
            -
             | 
| 57489 | 
            -
             | 
| 57490 | 
            -
             | 
| 57491 | 
            -
             | 
| 57492 | 
            -
             | 
| 57493 | 
            -
             | 
| 57494 | 
            -
             | 
| 57495 | 
            -
             | 
| 57496 | 
            -
             | 
| 57497 | 
            -
             | 
| 57498 | 
            -
             | 
| 57499 | 
            -
             | 
| 57500 | 
            -
             | 
| 57501 | 
            -
             | 
| 57502 | 
            -
             | 
| 57503 | 
            -
             | 
| 57504 | 
            -
             | 
| 57505 | 
            -
             | 
| 57476 | 
            +
              function require_objectCreate () {
         | 
| 57477 | 
            +
              	if (hasRequired_objectCreate) return _objectCreate;
         | 
| 57478 | 
            +
              	hasRequired_objectCreate = 1;
         | 
| 57479 | 
            +
              	// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
         | 
| 57480 | 
            +
              	var anObject = _anObject;
         | 
| 57481 | 
            +
              	var dPs = require_objectDps();
         | 
| 57482 | 
            +
              	var enumBugKeys = _enumBugKeys;
         | 
| 57483 | 
            +
              	var IE_PROTO = _sharedKey('IE_PROTO');
         | 
| 57484 | 
            +
              	var Empty = function () { /* empty */ };
         | 
| 57485 | 
            +
              	var PROTOTYPE = 'prototype';
         | 
| 57486 | 
            +
             | 
| 57487 | 
            +
              	// Create object with fake `null` prototype: use iframe Object with cleared prototype
         | 
| 57488 | 
            +
              	var createDict = function () {
         | 
| 57489 | 
            +
              	  // Thrash, waste and sodomy: IE GC bug
         | 
| 57490 | 
            +
              	  var iframe = require_domCreate()('iframe');
         | 
| 57491 | 
            +
              	  var i = enumBugKeys.length;
         | 
| 57492 | 
            +
              	  var lt = '<';
         | 
| 57493 | 
            +
              	  var gt = '>';
         | 
| 57494 | 
            +
              	  var iframeDocument;
         | 
| 57495 | 
            +
              	  iframe.style.display = 'none';
         | 
| 57496 | 
            +
              	  require_html().appendChild(iframe);
         | 
| 57497 | 
            +
              	  iframe.src = 'javascript:'; // eslint-disable-line no-script-url
         | 
| 57498 | 
            +
              	  // createDict = iframe.contentWindow.Object;
         | 
| 57499 | 
            +
              	  // html.removeChild(iframe);
         | 
| 57500 | 
            +
              	  iframeDocument = iframe.contentWindow.document;
         | 
| 57501 | 
            +
              	  iframeDocument.open();
         | 
| 57502 | 
            +
              	  iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
         | 
| 57503 | 
            +
              	  iframeDocument.close();
         | 
| 57504 | 
            +
              	  createDict = iframeDocument.F;
         | 
| 57505 | 
            +
              	  while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
         | 
| 57506 | 
            +
              	  return createDict();
         | 
| 57507 | 
            +
              	};
         | 
| 57508 | 
            +
             | 
| 57509 | 
            +
              	_objectCreate = Object.create || function create(O, Properties) {
         | 
| 57510 | 
            +
              	  var result;
         | 
| 57511 | 
            +
              	  if (O !== null) {
         | 
| 57512 | 
            +
              	    Empty[PROTOTYPE] = anObject(O);
         | 
| 57513 | 
            +
              	    result = new Empty();
         | 
| 57514 | 
            +
              	    Empty[PROTOTYPE] = null;
         | 
| 57515 | 
            +
              	    // add "__proto__" for Object.getPrototypeOf polyfill
         | 
| 57516 | 
            +
              	    result[IE_PROTO] = O;
         | 
| 57517 | 
            +
              	  } else result = createDict();
         | 
| 57518 | 
            +
              	  return Properties === undefined ? result : dPs(result, Properties);
         | 
| 57519 | 
            +
              	};
         | 
| 57520 | 
            +
              	return _objectCreate;
         | 
| 57521 | 
            +
              }
         | 
| 57506 57522 |  | 
| 57507 57523 | 
             
              var _wks = {exports: {}};
         | 
| 57508 57524 |  | 
| @@ -57528,7 +57544,7 @@ | |
| 57528 57544 | 
             
                if (it && !has$b(it = stat ? it : it.prototype, TAG$1)) def(it, TAG$1, { configurable: true, value: tag });
         | 
| 57529 57545 | 
             
              };
         | 
| 57530 57546 |  | 
| 57531 | 
            -
              var create$4 =  | 
| 57547 | 
            +
              var create$4 = require_objectCreate();
         | 
| 57532 57548 | 
             
              var descriptor = _propertyDesc;
         | 
| 57533 57549 | 
             
              var setToStringTag$2 = _setToStringTag;
         | 
| 57534 57550 | 
             
              var IteratorPrototype = {};
         | 
| @@ -58171,7 +58187,7 @@ | |
| 58171 58187 | 
             
              var toIObject = _toIobject;
         | 
| 58172 58188 | 
             
              var toPrimitive = _toPrimitive$1;
         | 
| 58173 58189 | 
             
              var createDesc = _propertyDesc;
         | 
| 58174 | 
            -
              var _create$1 =  | 
| 58190 | 
            +
              var _create$1 = require_objectCreate();
         | 
| 58175 58191 | 
             
              var gOPNExt = _objectGopnExt;
         | 
| 58176 58192 | 
             
              var $GOPD = _objectGopd;
         | 
| 58177 58193 | 
             
              var $GOPS = _objectGops;
         | 
| @@ -58481,7 +58497,7 @@ | |
| 58481 58497 |  | 
| 58482 58498 | 
             
              var $export = _export;
         | 
| 58483 58499 | 
             
              // 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
         | 
| 58484 | 
            -
              $export($export.S, 'Object', { create:  | 
| 58500 | 
            +
              $export($export.S, 'Object', { create: require_objectCreate() });
         | 
| 58485 58501 |  | 
| 58486 58502 | 
             
              var $Object = _coreExports.Object;
         | 
| 58487 58503 | 
             
              var create$3 = function create(P, D) {
         | 
| @@ -151662,9 +151678,7 @@ | |
| 151662 151678 | 
             
              };
         | 
| 151663 151679 |  | 
| 151664 151680 | 
             
              function validateSequence(sequence, options = {}) {
         | 
| 151665 | 
            -
                 | 
| 151666 | 
            -
                  isProtein,
         | 
| 151667 | 
            -
                  isOligo,
         | 
| 151681 | 
            +
                const {
         | 
| 151668 151682 | 
             
                  guessIfProtein,
         | 
| 151669 151683 | 
             
                  guessIfProteinOptions,
         | 
| 151670 151684 | 
             
                  reformatSeqName,
         | 
| @@ -151674,6 +151688,19 @@ | |
| 151674 151688 | 
             
                  allowOverflowAnnotations,
         | 
| 151675 151689 | 
             
                  coerceFeatureTypes
         | 
| 151676 151690 | 
             
                } = options;
         | 
| 151691 | 
            +
                [
         | 
| 151692 | 
            +
                  "isDNA",
         | 
| 151693 | 
            +
                  "isOligo",
         | 
| 151694 | 
            +
                  "isRNA",
         | 
| 151695 | 
            +
                  "isDoubleStrandedDNA",
         | 
| 151696 | 
            +
                  "isSingleStrandedDNA",
         | 
| 151697 | 
            +
                  "isDoubleStrandedRNA",
         | 
| 151698 | 
            +
                  "isProtein"
         | 
| 151699 | 
            +
                ].forEach((k) => {
         | 
| 151700 | 
            +
                  if (options[k] !== void 0 && sequence[k] === void 0) {
         | 
| 151701 | 
            +
                    sequence[k] = options[k];
         | 
| 151702 | 
            +
                  }
         | 
| 151703 | 
            +
                });
         | 
| 151677 151704 | 
             
                const response = {
         | 
| 151678 151705 | 
             
                  validatedAndCleanedSequence: {},
         | 
| 151679 151706 | 
             
                  messages: []
         | 
| @@ -151710,13 +151737,13 @@ | |
| 151710 151737 | 
             
                  sequence.sequence = "";
         | 
| 151711 151738 | 
             
                }
         | 
| 151712 151739 | 
             
                let validChars;
         | 
| 151713 | 
            -
                if (isProtein === void 0 && guessIfProtein) {
         | 
| 151714 | 
            -
                  isProtein = !guessIfSequenceIsDnaAndNotProtein(
         | 
| 151740 | 
            +
                if (sequence.isProtein === void 0 && guessIfProtein) {
         | 
| 151741 | 
            +
                  sequence.isProtein = !guessIfSequenceIsDnaAndNotProtein(
         | 
| 151715 151742 | 
             
                    sequence.sequence,
         | 
| 151716 151743 | 
             
                    guessIfProteinOptions
         | 
| 151717 151744 | 
             
                  );
         | 
| 151718 151745 | 
             
                }
         | 
| 151719 | 
            -
                if (isProtein) {
         | 
| 151746 | 
            +
                if (sequence.isProtein) {
         | 
| 151720 151747 | 
             
                  validChars = filterAminoAcidSequenceString(sequence.sequence);
         | 
| 151721 151748 | 
             
                  if (validChars !== sequence.sequence) {
         | 
| 151722 151749 | 
             
                    sequence.sequence = validChars;
         | 
| @@ -151732,14 +151759,15 @@ | |
| 151732 151759 | 
             
                  sequence.proteinSize = sequence.proteinSequence.length;
         | 
| 151733 151760 | 
             
                } else {
         | 
| 151734 151761 | 
             
                  const temp = sequence.sequence;
         | 
| 151735 | 
            -
                  if (!isOligo) {
         | 
| 151762 | 
            +
                  if (!sequence.isOligo) {
         | 
| 151736 151763 | 
             
                    sequence.sequence = sequence.sequence.replace(
         | 
| 151737 151764 | 
             
                      /u/gi,
         | 
| 151738 151765 | 
             
                      (u) => u === "U" ? "T" : "t"
         | 
| 151739 151766 | 
             
                    );
         | 
| 151740 151767 | 
             
                  }
         | 
| 151741 | 
            -
                  if (temp !== sequence.sequence) {
         | 
| 151768 | 
            +
                  if (temp !== sequence.sequence && !sequence.isDNA && !sequence.isProtein) {
         | 
| 151742 151769 | 
             
                    sequence.type = "RNA";
         | 
| 151770 | 
            +
                    sequence.sequence = temp;
         | 
| 151743 151771 | 
             
                  } else {
         | 
| 151744 151772 | 
             
                    sequence.type = "DNA";
         | 
| 151745 151773 | 
             
                  }
         | 
| @@ -151752,7 +151780,7 @@ | |
| 151752 151780 | 
             
                  }
         | 
| 151753 151781 | 
             
                }
         | 
| 151754 151782 | 
             
                if (!sequence.size) {
         | 
| 151755 | 
            -
                  sequence.size = isProtein ? sequence.proteinSequence.length * 3 : sequence.sequence.length;
         | 
| 151783 | 
            +
                  sequence.size = sequence.isProtein ? sequence.proteinSequence.length * 3 : sequence.sequence.length;
         | 
| 151756 151784 | 
             
                }
         | 
| 151757 151785 | 
             
                let circularityExplicitlyDefined;
         | 
| 151758 151786 | 
             
                if (sequence.circular === false || sequence.circular === "false" || sequence.circular === -1) {
         | 
| @@ -152317,7 +152345,13 @@ | |
| 152317 152345 | 
             
                      }
         | 
| 152318 152346 | 
             
                      options.sequenceTypeFromLocus = item;
         | 
| 152319 152347 | 
             
                      if (item.match(/ss-dna/i)) {
         | 
| 152348 | 
            +
                        options.isDNA = true;
         | 
| 152320 152349 | 
             
                        options.isSingleStrandedDNA = true;
         | 
| 152350 | 
            +
                      } else if (item.match(/rna/i)) {
         | 
| 152351 | 
            +
                        options.isRna = true;
         | 
| 152352 | 
            +
                      } else if (item.match(/ds-dna/i) || item.match(/dna/i)) {
         | 
| 152353 | 
            +
                        options.isDNA = true;
         | 
| 152354 | 
            +
                        options.isDoubleStrandedDNA = true;
         | 
| 152321 152355 | 
             
                      }
         | 
| 152322 152356 | 
             
                      if (item.match(/rna/i) && !item.match(/ss-rna/i)) {
         | 
| 152323 152357 | 
             
                        options.isDoubleStrandedRNA = true;
         | 
| @@ -152332,7 +152366,10 @@ | |
| 152332 152366 | 
             
                  }
         | 
| 152333 152367 | 
             
                  result.parsedSequence.gbDivision = gbDivision;
         | 
| 152334 152368 | 
             
                  result.parsedSequence.sequenceTypeFromLocus = options.sequenceTypeFromLocus;
         | 
| 152369 | 
            +
                  result.parsedSequence.isDNA = options.isDNA;
         | 
| 152370 | 
            +
                  result.parsedSequence.isDoubleStrandedDNA = options.isDoubleStrandedDNA;
         | 
| 152335 152371 | 
             
                  result.parsedSequence.isSingleStrandedDNA = options.isSingleStrandedDNA;
         | 
| 152372 | 
            +
                  result.parsedSequence.isRna = options.isRna;
         | 
| 152336 152373 | 
             
                  result.parsedSequence.isDoubleStrandedRNA = options.isDoubleStrandedRNA;
         | 
| 152337 152374 | 
             
                  result.parsedSequence.date = date;
         | 
| 152338 152375 | 
             
                  result.parsedSequence.circular = circular;
         | 
| @@ -169896,7 +169933,7 @@ | |
| 169896 169933 | 
             
                          caret: true,
         | 
| 169897 169934 | 
             
                          sequence: true,
         | 
| 169898 169935 | 
             
                          cutsites: false,
         | 
| 169899 | 
            -
                          reverseSequence: sequenceData?.isDoubleStrandedRNA,
         | 
| 169936 | 
            +
                          reverseSequence: Boolean(sequenceData?.isDoubleStrandedRNA),
         | 
| 169900 169937 | 
             
                          translations: false,
         | 
| 169901 169938 | 
             
                          aminoAcidNumbers: false,
         | 
| 169902 169939 | 
             
                          primaryProteinSequence: false,
         | 
| @@ -188626,7 +188663,7 @@ double click --> edit`}`; | |
| 188626 188663 | 
             
              }
         | 
| 188627 188664 |  | 
| 188628 188665 | 
             
              const name = "@teselagen/ove";
         | 
| 188629 | 
            -
              const version = "0.3. | 
| 188666 | 
            +
              const version = "0.3.4";
         | 
| 188630 188667 | 
             
              const main = "./src/index.js";
         | 
| 188631 188668 | 
             
              const packageJson = {
         | 
| 188632 188669 | 
             
              	name: name,
         | 
| @@ -206987,6 +207024,7 @@ ${seqDataToCopy}\r | |
| 206987 207024 | 
             
              }
         | 
| 206988 207025 |  | 
| 206989 207026 | 
             
              const userDefinedHandlersAndOpts = [
         | 
| 207027 | 
            +
                "onChangeEditLock",
         | 
| 206990 207028 | 
             
                "defaultLinkedOligoMessage",
         | 
| 206991 207029 | 
             
                "allowMultipleFeatureDirections",
         | 
| 206992 207030 | 
             
                "getAdditionalEditAnnotationComps",
         | 
| @@ -207251,20 +207289,38 @@ ${seqDataToCopy}\r | |
| 207251 207289 | 
             
                return {
         | 
| 207252 207290 | 
             
                  readOnly: editorState.readOnly
         | 
| 207253 207291 | 
             
                };
         | 
| 207254 | 
            -
              })( | 
| 207255 | 
            -
                 | 
| 207256 | 
            -
                   | 
| 207257 | 
            -
                   | 
| 207258 | 
            -
             | 
| 207259 | 
            -
             | 
| 207260 | 
            -
             | 
| 207261 | 
            -
             | 
| 207262 | 
            -
             | 
| 207263 | 
            -
             | 
| 207292 | 
            +
              })(
         | 
| 207293 | 
            +
                ({
         | 
| 207294 | 
            +
                  toolbarItemProps,
         | 
| 207295 | 
            +
                  readOnly,
         | 
| 207296 | 
            +
                  toggleReadOnlyMode,
         | 
| 207297 | 
            +
                  disableSetReadOnly,
         | 
| 207298 | 
            +
                  onChangeEditLock
         | 
| 207299 | 
            +
                }) => {
         | 
| 207300 | 
            +
                  const readOnlyTooltip = ({ readOnly: readOnly2, disableSetReadOnly: disableSetReadOnly2 }) => {
         | 
| 207301 | 
            +
                    if (disableSetReadOnly2) {
         | 
| 207302 | 
            +
                      return "You do not have permission to edit locks on this sequence";
         | 
| 207264 207303 | 
             
                    }
         | 
| 207265 | 
            -
             | 
| 207266 | 
            -
             | 
| 207267 | 
            -
             | 
| 207304 | 
            +
                    return readOnly2 ? "Click to enable editing" : "Click to disable editing";
         | 
| 207305 | 
            +
                  };
         | 
| 207306 | 
            +
                  return /* @__PURE__ */ React$3.createElement(
         | 
| 207307 | 
            +
                    ToolbarItem$1,
         | 
| 207308 | 
            +
                    {
         | 
| 207309 | 
            +
                      ...{
         | 
| 207310 | 
            +
                        disabled: disableSetReadOnly,
         | 
| 207311 | 
            +
                        Icon: /* @__PURE__ */ React$3.createElement(Icon, { icon: readOnly ? "lock" : "unlock" }),
         | 
| 207312 | 
            +
                        onIconClick: () => {
         | 
| 207313 | 
            +
                          if (onChangeEditLock)
         | 
| 207314 | 
            +
                            onChangeEditLock(!readOnly);
         | 
| 207315 | 
            +
                          toggleReadOnlyMode();
         | 
| 207316 | 
            +
                        },
         | 
| 207317 | 
            +
                        tooltip: readOnlyTooltip({ readOnly, disableSetReadOnly }),
         | 
| 207318 | 
            +
                        ...toolbarItemProps
         | 
| 207319 | 
            +
                      }
         | 
| 207320 | 
            +
                    }
         | 
| 207321 | 
            +
                  );
         | 
| 207322 | 
            +
                }
         | 
| 207323 | 
            +
              );
         | 
| 207268 207324 |  | 
| 207269 207325 | 
             
              const style$4 = '';
         | 
| 207270 207326 |  | 
| @@ -208063,11 +208119,9 @@ ${seqDataToCopy}\r | |
| 208063 208119 | 
             
                  EditReadOnlyItem,
         | 
| 208064 208120 | 
             
                  {
         | 
| 208065 208121 | 
             
                    editorName,
         | 
| 208066 | 
            -
                     | 
| 208067 | 
            -
             | 
| 208068 | 
            -
             | 
| 208069 | 
            -
                      showReadOnly
         | 
| 208070 | 
            -
                    }
         | 
| 208122 | 
            +
                    onSave,
         | 
| 208123 | 
            +
                    disableSetReadOnly,
         | 
| 208124 | 
            +
                    showReadOnly
         | 
| 208071 208125 | 
             
                  }
         | 
| 208072 208126 | 
             
                ), /* @__PURE__ */ React$3.createElement(
         | 
| 208073 208127 | 
             
                  EditCircularityItem,
         | 
| @@ -218108,46 +218162,46 @@ ${seqDataToCopy}\r | |
| 218108 218162 | 
             
                render() {
         | 
| 218109 218163 | 
             
                  const { previewModeFullscreen: uncontrolledPreviewModeFullscreen } = this.state;
         | 
| 218110 218164 | 
             
                  const {
         | 
| 218111 | 
            -
                     | 
| 218112 | 
            -
                     | 
| 218113 | 
            -
                     | 
| 218165 | 
            +
                    allowPanelTabDraggable = true,
         | 
| 218166 | 
            +
                    annotationsToSupport,
         | 
| 218167 | 
            +
                    caretPositionUpdate,
         | 
| 218168 | 
            +
                    closePanel,
         | 
| 218169 | 
            +
                    collapseSplitScreen,
         | 
| 218170 | 
            +
                    displayMenuBarAboveTools = true,
         | 
| 218114 218171 | 
             
                    editorName,
         | 
| 218172 | 
            +
                    fullScreenOffsets,
         | 
| 218173 | 
            +
                    expandTabToSplitScreen,
         | 
| 218174 | 
            +
                    extraRightSidePanel,
         | 
| 218175 | 
            +
                    getSequenceAtVersion,
         | 
| 218176 | 
            +
                    getVersionList,
         | 
| 218177 | 
            +
                    handleFullscreenClose,
         | 
| 218115 218178 | 
             
                    height: _height,
         | 
| 218116 | 
            -
                    showCircularity,
         | 
| 218117 218179 | 
             
                    hideSingleImport,
         | 
| 218180 | 
            +
                    hideStatusBar,
         | 
| 218181 | 
            +
                    hoveredId,
         | 
| 218182 | 
            +
                    isFullscreen,
         | 
| 218183 | 
            +
                    maxAnnotationsToDisplay,
         | 
| 218118 218184 | 
             
                    minHeight = 400,
         | 
| 218119 | 
            -
                     | 
| 218120 | 
            -
                     | 
| 218121 | 
            -
                     | 
| 218122 | 
            -
                     | 
| 218123 | 
            -
                    withZoomLinearView = true,
         | 
| 218124 | 
            -
                    displayMenuBarAboveTools = true,
         | 
| 218125 | 
            -
                    updateSequenceData,
         | 
| 218185 | 
            +
                    onlyShowLabelsThatDoNotFit = true,
         | 
| 218186 | 
            +
                    onSave,
         | 
| 218187 | 
            +
                    previewModeButtonMenu,
         | 
| 218188 | 
            +
                    previewModeFullscreen: controlledPreviewModeFullscreen,
         | 
| 218126 218189 | 
             
                    readOnly,
         | 
| 218190 | 
            +
                    selectionLayer,
         | 
| 218191 | 
            +
                    sequenceData = {},
         | 
| 218127 218192 | 
             
                    setPanelAsActive,
         | 
| 218193 | 
            +
                    showCircularity,
         | 
| 218194 | 
            +
                    showMenuBar,
         | 
| 218195 | 
            +
                    StatusBarProps = {},
         | 
| 218128 218196 | 
             
                    style = {},
         | 
| 218129 | 
            -
                    maxAnnotationsToDisplay,
         | 
| 218130 218197 | 
             
                    togglePanelFullScreen,
         | 
| 218131 | 
            -
                     | 
| 218132 | 
            -
                     | 
| 218133 | 
            -
                    closePanel,
         | 
| 218134 | 
            -
                    onSave,
         | 
| 218135 | 
            -
                    hideStatusBar,
         | 
| 218136 | 
            -
                    caretPositionUpdate,
         | 
| 218137 | 
            -
                    getVersionList,
         | 
| 218138 | 
            -
                    getSequenceAtVersion,
         | 
| 218139 | 
            -
                    selectionLayer,
         | 
| 218198 | 
            +
                    ToolBarProps = {},
         | 
| 218199 | 
            +
                    updateSequenceData,
         | 
| 218140 218200 | 
             
                    VersionHistoryViewProps,
         | 
| 218141 | 
            -
                     | 
| 218142 | 
            -
                     | 
| 218143 | 
            -
                     | 
| 218144 | 
            -
                     | 
| 218145 | 
            -
                    hoveredId,
         | 
| 218146 | 
            -
                    handleFullscreenClose,
         | 
| 218147 | 
            -
                    onlyShowLabelsThatDoNotFit = true,
         | 
| 218148 | 
            -
                    previewModeFullscreen: controlledPreviewModeFullscreen,
         | 
| 218149 | 
            -
                    previewModeButtonMenu,
         | 
| 218150 | 
            -
                    allowPanelTabDraggable = true
         | 
| 218201 | 
            +
                    withRotateCircularView = true,
         | 
| 218202 | 
            +
                    withZoomCircularView = true,
         | 
| 218203 | 
            +
                    withZoomLinearView = true,
         | 
| 218204 | 
            +
                    withPreviewMode
         | 
| 218151 218205 | 
             
                  } = this.props;
         | 
| 218152 218206 | 
             
                  if (!this.props.noVersionHistory && this.props.versionHistory && this.props.versionHistory.viewVersionHistory) {
         | 
| 218153 218207 | 
             
                    return /* @__PURE__ */ React$3.createElement(
         | 
| @@ -218631,12 +218685,11 @@ ${seqDataToCopy}\r | |
| 218631 218685 | 
             
                        userDefinedHandlersAndOpts,
         | 
| 218632 218686 | 
             
                        annotationsToSupport,
         | 
| 218633 218687 | 
             
                        closeFullscreen: !!(isFullscreen ? handleFullscreenClose : previewModeFullscreen),
         | 
| 218634 | 
            -
                         | 
| 218635 | 
            -
             | 
| 218636 | 
            -
             | 
| 218637 | 
            -
                          editorName
         | 
| 218638 | 
            -
                        },
         | 
| 218688 | 
            +
                        modifyTools: this.props.modifyTools,
         | 
| 218689 | 
            +
                        contentLeft: this.props.contentLeft,
         | 
| 218690 | 
            +
                        editorName,
         | 
| 218639 218691 | 
             
                        withDigestTool: true,
         | 
| 218692 | 
            +
                        onChangeEditLock: this.props.onChangeEditLock,
         | 
| 218640 218693 | 
             
                        ...ToolBarProps
         | 
| 218641 218694 | 
             
                      }
         | 
| 218642 218695 | 
             
                    ),
         | 
    
        package/package.json
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            {
         | 
| 2 2 | 
             
              "name": "@teselagen/ove",
         | 
| 3 | 
            -
              "version": "0.3. | 
| 3 | 
            +
              "version": "0.3.5",
         | 
| 4 4 | 
             
              "main": "./src/index.js",
         | 
| 5 5 | 
             
              "dependencies": {
         | 
| 6 | 
            -
                "@teselagen/sequence-utils": "0.3. | 
| 7 | 
            -
                "@teselagen/range-utils": "0.3. | 
| 8 | 
            -
                "@teselagen/ui": "0.3. | 
| 9 | 
            -
                "@teselagen/file-utils": "0.3. | 
| 10 | 
            -
                "@teselagen/bounce-loader": "0.3. | 
| 11 | 
            -
                "@teselagen/bio-parsers": "0.3. | 
| 6 | 
            +
                "@teselagen/sequence-utils": "0.3.5",
         | 
| 7 | 
            +
                "@teselagen/range-utils": "0.3.5",
         | 
| 8 | 
            +
                "@teselagen/ui": "0.3.5",
         | 
| 9 | 
            +
                "@teselagen/file-utils": "0.3.5",
         | 
| 10 | 
            +
                "@teselagen/bounce-loader": "0.3.5",
         | 
| 11 | 
            +
                "@teselagen/bio-parsers": "0.3.5",
         | 
| 12 12 | 
             
                "@blueprintjs/core": "3.52.0",
         | 
| 13 13 | 
             
                "@blueprintjs/datetime": "3.23.19",
         | 
| 14 14 | 
             
                "@blueprintjs/icons": "3.33.0",
         | 
    
        package/src/Editor/index.js
    CHANGED
    
    | @@ -342,46 +342,46 @@ export class Editor extends React.Component { | |
| 342 342 | 
             
                const { previewModeFullscreen: uncontrolledPreviewModeFullscreen } =
         | 
| 343 343 | 
             
                  this.state;
         | 
| 344 344 | 
             
                const {
         | 
| 345 | 
            -
                   | 
| 346 | 
            -
                   | 
| 347 | 
            -
                   | 
| 345 | 
            +
                  allowPanelTabDraggable = true,
         | 
| 346 | 
            +
                  annotationsToSupport,
         | 
| 347 | 
            +
                  caretPositionUpdate,
         | 
| 348 | 
            +
                  closePanel,
         | 
| 349 | 
            +
                  collapseSplitScreen,
         | 
| 350 | 
            +
                  displayMenuBarAboveTools = true,
         | 
| 348 351 | 
             
                  editorName,
         | 
| 352 | 
            +
                  fullScreenOffsets,
         | 
| 353 | 
            +
                  expandTabToSplitScreen,
         | 
| 354 | 
            +
                  extraRightSidePanel,
         | 
| 355 | 
            +
                  getSequenceAtVersion,
         | 
| 356 | 
            +
                  getVersionList,
         | 
| 357 | 
            +
                  handleFullscreenClose,
         | 
| 349 358 | 
             
                  height: _height,
         | 
| 350 | 
            -
                  showCircularity,
         | 
| 351 359 | 
             
                  hideSingleImport,
         | 
| 360 | 
            +
                  hideStatusBar,
         | 
| 361 | 
            +
                  hoveredId,
         | 
| 362 | 
            +
                  isFullscreen,
         | 
| 363 | 
            +
                  maxAnnotationsToDisplay,
         | 
| 352 364 | 
             
                  minHeight = 400,
         | 
| 353 | 
            -
                   | 
| 354 | 
            -
                   | 
| 355 | 
            -
                   | 
| 356 | 
            -
                   | 
| 357 | 
            -
                  withZoomLinearView = true,
         | 
| 358 | 
            -
                  displayMenuBarAboveTools = true,
         | 
| 359 | 
            -
                  updateSequenceData,
         | 
| 365 | 
            +
                  onlyShowLabelsThatDoNotFit = true,
         | 
| 366 | 
            +
                  onSave,
         | 
| 367 | 
            +
                  previewModeButtonMenu,
         | 
| 368 | 
            +
                  previewModeFullscreen: controlledPreviewModeFullscreen,
         | 
| 360 369 | 
             
                  readOnly,
         | 
| 370 | 
            +
                  selectionLayer,
         | 
| 371 | 
            +
                  sequenceData = {},
         | 
| 361 372 | 
             
                  setPanelAsActive,
         | 
| 373 | 
            +
                  showCircularity,
         | 
| 374 | 
            +
                  showMenuBar,
         | 
| 375 | 
            +
                  StatusBarProps = {},
         | 
| 362 376 | 
             
                  style = {},
         | 
| 363 | 
            -
                  maxAnnotationsToDisplay,
         | 
| 364 377 | 
             
                  togglePanelFullScreen,
         | 
| 365 | 
            -
                   | 
| 366 | 
            -
                   | 
| 367 | 
            -
                  closePanel,
         | 
| 368 | 
            -
                  onSave,
         | 
| 369 | 
            -
                  hideStatusBar,
         | 
| 370 | 
            -
                  caretPositionUpdate,
         | 
| 371 | 
            -
                  getVersionList,
         | 
| 372 | 
            -
                  getSequenceAtVersion,
         | 
| 373 | 
            -
                  selectionLayer,
         | 
| 378 | 
            +
                  ToolBarProps = {},
         | 
| 379 | 
            +
                  updateSequenceData,
         | 
| 374 380 | 
             
                  VersionHistoryViewProps,
         | 
| 375 | 
            -
                   | 
| 376 | 
            -
                   | 
| 377 | 
            -
                   | 
| 378 | 
            -
                   | 
| 379 | 
            -
                  hoveredId,
         | 
| 380 | 
            -
                  handleFullscreenClose,
         | 
| 381 | 
            -
                  onlyShowLabelsThatDoNotFit = true,
         | 
| 382 | 
            -
                  previewModeFullscreen: controlledPreviewModeFullscreen,
         | 
| 383 | 
            -
                  previewModeButtonMenu,
         | 
| 384 | 
            -
                  allowPanelTabDraggable = true
         | 
| 381 | 
            +
                  withRotateCircularView = true,
         | 
| 382 | 
            +
                  withZoomCircularView = true,
         | 
| 383 | 
            +
                  withZoomLinearView = true,
         | 
| 384 | 
            +
                  withPreviewMode
         | 
| 385 385 | 
             
                } = this.props;
         | 
| 386 386 | 
             
                if (
         | 
| 387 387 | 
             
                  !this.props.noVersionHistory &&
         | 
| @@ -898,12 +898,11 @@ export class Editor extends React.Component { | |
| 898 898 | 
             
                        closeFullscreen={
         | 
| 899 899 | 
             
                          !!(isFullscreen ? handleFullscreenClose : previewModeFullscreen)
         | 
| 900 900 | 
             
                        }
         | 
| 901 | 
            -
                        { | 
| 902 | 
            -
             | 
| 903 | 
            -
             | 
| 904 | 
            -
                          editorName
         | 
| 905 | 
            -
                        }}
         | 
| 901 | 
            +
                        modifyTools={this.props.modifyTools}
         | 
| 902 | 
            +
                        contentLeft={this.props.contentLeft}
         | 
| 903 | 
            +
                        editorName={editorName}
         | 
| 906 904 | 
             
                        withDigestTool
         | 
| 905 | 
            +
                        onChangeEditLock={this.props.onChangeEditLock}
         | 
| 907 906 | 
             
                        {...ToolBarProps}
         | 
| 908 907 | 
             
                      />
         | 
| 909 908 |  | 
    
        package/src/StatusBar/index.js
    CHANGED
    
    | @@ -235,11 +235,9 @@ export function StatusBar({ | |
| 235 235 | 
             
                  )}
         | 
| 236 236 | 
             
                  <EditReadOnlyItem
         | 
| 237 237 | 
             
                    editorName={editorName}
         | 
| 238 | 
            -
                    { | 
| 239 | 
            -
             | 
| 240 | 
            -
             | 
| 241 | 
            -
                      showReadOnly
         | 
| 242 | 
            -
                    }}
         | 
| 238 | 
            +
                    onSave={onSave}
         | 
| 239 | 
            +
                    disableSetReadOnly={disableSetReadOnly}
         | 
| 240 | 
            +
                    showReadOnly={showReadOnly}
         | 
| 243 241 | 
             
                  />
         | 
| 244 242 | 
             
                  <EditCircularityItem
         | 
| 245 243 | 
             
                    editorName={editorName}
         | 
    
        package/src/ToolBar/editTool.js
    CHANGED
    
    | @@ -1,5 +1,5 @@ | |
| 1 | 
            -
            import { Icon } from "@blueprintjs/core";
         | 
| 2 1 | 
             
            import React from "react";
         | 
| 2 | 
            +
            import { Icon } from "@blueprintjs/core";
         | 
| 3 3 | 
             
            import ToolbarItem from "./ToolbarItem";
         | 
| 4 4 | 
             
            import { connectToEditor } from "../withEditorProps";
         | 
| 5 5 |  | 
| @@ -7,20 +7,33 @@ export default connectToEditor((editorState) => { | |
| 7 7 | 
             
              return {
         | 
| 8 8 | 
             
                readOnly: editorState.readOnly
         | 
| 9 9 | 
             
              };
         | 
| 10 | 
            -
            })( | 
| 11 | 
            -
               | 
| 12 | 
            -
                 | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
             | 
| 21 | 
            -
             | 
| 22 | 
            -
             | 
| 23 | 
            -
             | 
| 24 | 
            -
                 | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 10 | 
            +
            })(
         | 
| 11 | 
            +
              ({
         | 
| 12 | 
            +
                toolbarItemProps,
         | 
| 13 | 
            +
                readOnly,
         | 
| 14 | 
            +
                toggleReadOnlyMode,
         | 
| 15 | 
            +
                disableSetReadOnly,
         | 
| 16 | 
            +
                onChangeEditLock
         | 
| 17 | 
            +
              }) => {
         | 
| 18 | 
            +
                const readOnlyTooltip = ({ readOnly, disableSetReadOnly }) => {
         | 
| 19 | 
            +
                  if (disableSetReadOnly) {
         | 
| 20 | 
            +
                    return "You do not have permission to edit locks on this sequence";
         | 
| 21 | 
            +
                  }
         | 
| 22 | 
            +
                  return readOnly ? "Click to enable editing" : "Click to disable editing";
         | 
| 23 | 
            +
                };
         | 
| 24 | 
            +
                return (
         | 
| 25 | 
            +
                  <ToolbarItem
         | 
| 26 | 
            +
                    {...{
         | 
| 27 | 
            +
                      disabled: disableSetReadOnly,
         | 
| 28 | 
            +
                      Icon: <Icon icon={readOnly ? "lock" : "unlock"} />,
         | 
| 29 | 
            +
                      onIconClick: () => {
         | 
| 30 | 
            +
                        if (onChangeEditLock) onChangeEditLock(!readOnly);
         | 
| 31 | 
            +
                        toggleReadOnlyMode();
         | 
| 32 | 
            +
                      },
         | 
| 33 | 
            +
                      tooltip: readOnlyTooltip({ readOnly, disableSetReadOnly }),
         | 
| 34 | 
            +
                      ...toolbarItemProps
         | 
| 35 | 
            +
                    }}
         | 
| 36 | 
            +
                  />
         | 
| 37 | 
            +
                );
         | 
| 38 | 
            +
              }
         | 
| 39 | 
            +
            );
         | 
| @@ -1,9 +1,5 @@ | |
| 1 1 | 
             
            import React from "react";
         | 
| 2 | 
            -
            import {
         | 
| 3 | 
            -
              InputField,
         | 
| 4 | 
            -
              BPSelect,
         | 
| 5 | 
            -
              TextareaField
         | 
| 6 | 
            -
            } from "@teselagen/ui";
         | 
| 2 | 
            +
            import { InputField, BPSelect, TextareaField } from "@teselagen/ui";
         | 
| 7 3 | 
             
            import { reduxForm } from "redux-form";
         | 
| 8 4 | 
             
            import withEditorProps from "../../withEditorProps";
         | 
| 9 5 | 
             
            import { compose } from "recompose";
         | 
    
        package/src/updateEditor.js
    CHANGED
    
    | @@ -118,7 +118,7 @@ export default function updateEditor( | |
| 118 118 | 
             
                        caret: true,
         | 
| 119 119 | 
             
                        sequence: true,
         | 
| 120 120 | 
             
                        cutsites: false,
         | 
| 121 | 
            -
                        reverseSequence: sequenceData?.isDoubleStrandedRNA,
         | 
| 121 | 
            +
                        reverseSequence: Boolean(sequenceData?.isDoubleStrandedRNA),
         | 
| 122 122 | 
             
                        translations: false,
         | 
| 123 123 | 
             
                        aminoAcidNumbers: false,
         | 
| 124 124 | 
             
                        primaryProteinSequence: false,
         | 
| @@ -261,7 +261,7 @@ function VectorInteractionHOC(Component /* options */) { | |
| 261 261 | 
             
                    copyOptions,
         | 
| 262 262 | 
             
                    readOnly
         | 
| 263 263 | 
             
                  } = this.props;
         | 
| 264 | 
            -
                  const onCut = this.props.onCut || this.props.onCopy ||  | 
| 264 | 
            +
                  const onCut = this.props.onCut || this.props.onCopy || noop;
         | 
| 265 265 | 
             
                  const seqData = tidyUpSequenceData(
         | 
| 266 266 | 
             
                    this.sequenceDataToCopy ||
         | 
| 267 267 | 
             
                      getSequenceDataBetweenRange(
         | 
| @@ -516,9 +516,9 @@ function VectorInteractionHOC(Component /* options */) { | |
| 516 516 | 
             
                    // onCancel: undefined,
         | 
| 517 517 | 
             
                    text: (
         | 
| 518 518 | 
             
                      <div style={{ wordBreak: "break-word" }}>
         | 
| 519 | 
            -
             | 
| 520 | 
            -
             | 
| 521 | 
            -
             | 
| 519 | 
            +
                        <h3>{annotation.name}:</h3>
         | 
| 520 | 
            +
                        {annotation.message}
         | 
| 521 | 
            +
                      </div>
         | 
| 522 522 | 
             
                    )
         | 
| 523 523 | 
             
                  });
         | 
| 524 524 | 
             
                  this.updateSelectionOrCaret(event.shiftKey, annotation);
         | 
| @@ -1223,14 +1223,14 @@ const insertAndSelectHelper = ({ seqDataToInsert, props }) => { | |
| 1223 1223 | 
             
                  sequenceData,
         | 
| 1224 1224 | 
             
                  caretPosition > -1 ? caretPosition : selectionLayer
         | 
| 1225 1225 | 
             
                );
         | 
| 1226 | 
            -
             | 
| 1227 | 
            -
             | 
| 1228 | 
            -
             | 
| 1229 | 
            -
             | 
| 1230 | 
            -
             | 
| 1231 | 
            -
             | 
| 1232 | 
            -
                  }
         | 
| 1226 | 
            +
              if (bpLimit) {
         | 
| 1227 | 
            +
                if (newSeqData.sequence.length > bpLimit) {
         | 
| 1228 | 
            +
                  window.toastr.error(
         | 
| 1229 | 
            +
                    `Sorry, you cannot go over the limit of ${bpLimit} base pairs`
         | 
| 1230 | 
            +
                  );
         | 
| 1231 | 
            +
                  throw new Error("bpLimit exceeded");
         | 
| 1233 1232 | 
             
                }
         | 
| 1233 | 
            +
              }
         | 
| 1234 1234 | 
             
              updateSequenceData(newSeqData);
         | 
| 1235 1235 | 
             
              const seqDataInsertLength = seqDataToInsert.sequence
         | 
| 1236 1236 | 
             
                ? seqDataToInsert.sequence.length
         |