{"version":3,"file":"control.min.js","sources":["../../../apps/frappe/node_modules/air-datepicker/dist/js/datepicker.min.js","../../../apps/frappe/frappe/public/js/frappe/ui/capture.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.cs.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.da.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.de.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.en.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.es.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.fi.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.fr.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.hu.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.nl.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.pl.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.pt-BR.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.pt.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.ro.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.sk.js","../../../apps/frappe/node_modules/air-datepicker/dist/js/i18n/datepicker.zh.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/datepicker_i18n.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/base_control.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/base_input.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/data.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/int.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/float.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/currency.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/date.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/time.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/datetime.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/date_range.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/select.js","../../../apps/frappe/node_modules/awesomplete/awesomplete.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/link.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/dynamic_link.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/text.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/code.js","../../../apps/frappe/node_modules/quill/dist/quill.js","../../../apps/frappe/node_modules/quill-image-resize/image-resize.min.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/text_editor.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/quill-mention/constants/keys.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/quill-mention/blots/mention.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/quill-mention/quill.mention.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/comment.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/check.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/image.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/attach.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/attach_image.js","../../../apps/frappe/frappe/public/js/frappe/form/grid_row_form.js","../../../apps/frappe/frappe/public/js/frappe/form/grid_row.js","../../../apps/frappe/frappe/public/js/frappe/form/grid_pagination.js","../../../apps/frappe/frappe/public/js/frappe/form/grid.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/table.js","../../../apps/frappe/frappe/public/js/frappe/color_picker/utils.js","../../../apps/frappe/frappe/public/js/frappe/color_picker/color_picker.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/color.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/signature.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/password.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/read_only.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/button.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/html.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/markdown_editor.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/html_editor.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/heading.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/autocomplete.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/Barcode.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE39/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/constants.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/CODE128.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/auto.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/CODE128_AUTO.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/CODE128A.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/CODE128B.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/CODE128C.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/CODE128/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/constants.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/encoder.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/EAN.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/EAN13.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/EAN8.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/EAN5.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/EAN2.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/UPC.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/UPCE.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/EAN_UPC/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/ITF/constants.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/ITF/ITF.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/ITF/ITF14.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/ITF/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/MSI/MSI.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/MSI/checksums.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/MSI/MSI10.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/MSI/MSI11.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/MSI/MSI1010.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/MSI/MSI1110.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/MSI/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/pharmacode/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/codabar/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/GenericBarcode/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/barcodes/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/help/merge.js","../../../apps/frappe/node_modules/jsbarcode/bin/help/linearizeEncodings.js","../../../apps/frappe/node_modules/jsbarcode/bin/help/fixOptions.js","../../../apps/frappe/node_modules/jsbarcode/bin/help/optionsFromStrings.js","../../../apps/frappe/node_modules/jsbarcode/bin/options/defaults.js","../../../apps/frappe/node_modules/jsbarcode/bin/help/getOptionsFromElement.js","../../../apps/frappe/node_modules/jsbarcode/bin/renderers/shared.js","../../../apps/frappe/node_modules/jsbarcode/bin/renderers/canvas.js","../../../apps/frappe/node_modules/jsbarcode/bin/renderers/svg.js","../../../apps/frappe/node_modules/jsbarcode/bin/renderers/object.js","../../../apps/frappe/node_modules/jsbarcode/bin/renderers/index.js","../../../apps/frappe/node_modules/jsbarcode/bin/exceptions/exceptions.js","../../../apps/frappe/node_modules/jsbarcode/bin/help/getRenderProperties.js","../../../apps/frappe/node_modules/jsbarcode/bin/exceptions/ErrorHandler.js","../../../apps/frappe/node_modules/jsbarcode/bin/JsBarcode.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/barcode.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/geolocation.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/multiselect.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/multicheck.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/table_multiselect.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/multiselect_pills.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/multiselect_list.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/rating.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/duration.js","../../../apps/frappe/frappe/public/js/frappe/icon_picker/icon_picker.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/icon.js","../../../apps/frappe/frappe/public/js/frappe/form/controls/control.js"],"sourcesContent":["!function(t,e,s){!function(){var i,a,n,h=\"2.2.3\",o=\"datepicker\",r=\".datepicker-here\",c=!1,d='
',l={classes:\"\",inline:!1,language:\"ru\",startDate:new Date,firstDay:\"\",weekends:[6,0],dateFormat:\"\",altField:\"\",altFieldDateFormat:\"@\",toggleSelected:!0,keyboardNav:!0,position:\"bottom left\",offset:12,view:\"days\",minView:\"days\",showOtherMonths:!0,selectOtherMonths:!0,moveToOtherMonthsOnSelect:!0,showOtherYears:!0,selectOtherYears:!0,moveToOtherYearsOnSelect:!0,minDate:\"\",maxDate:\"\",disableNavWhenOutOfRange:!0,multipleDates:!1,multipleDatesSeparator:\",\",range:!1,todayButton:!1,clearButton:!1,showEvent:\"focus\",autoClose:!1,monthsField:\"monthsShort\",prevHtml:'',nextHtml:'',navTitles:{days:\"MM, yyyy\",months:\"yyyy\",years:\"yyyy1 - yyyy2\"},timepicker:!1,onlyTimepicker:!1,dateTimeSeparator:\" \",timeFormat:\"\",minHours:0,maxHours:24,minMinutes:0,maxMinutes:59,minSeconds:0,maxSeconds:59,hoursStep:1,minutesStep:1,secondsStep:1,onSelect:\"\",onShow:\"\",onHide:\"\",onChangeMonth:\"\",onChangeYear:\"\",onChangeDecade:\"\",onChangeView:\"\",onRenderCell:\"\"},u={ctrlRight:[17,39],ctrlUp:[17,38],ctrlLeft:[17,37],ctrlDown:[17,40],shiftRight:[16,39],shiftUp:[16,38],shiftLeft:[16,37],shiftDown:[16,40],altUp:[18,38],altRight:[18,39],altLeft:[18,37],altDown:[18,40],ctrlShiftUp:[16,17,38]},m=function(t,a){this.el=t,this.$el=e(t),this.opts=e.extend(!0,{},l,a,this.$el.data()),i==s&&(i=e(\"body\")),this.opts.startDate||(this.opts.startDate=new Date),\"INPUT\"==this.el.nodeName&&(this.elIsInput=!0),this.opts.altField&&(this.$altField=\"string\"==typeof this.opts.altField?e(this.opts.altField):this.opts.altField),this.inited=!1,this.visible=!1,this.silent=!1,this.currentDate=this.opts.startDate,this.currentView=this.opts.view,this._createShortCuts(),this.selectedDates=[],this.views={},this.keys=[],this.minRange=\"\",this.maxRange=\"\",this._prevOnSelectValue=\"\",this.init()};n=m,n.prototype={VERSION:h,viewIndexes:[\"days\",\"months\",\"years\"],init:function(){c||this.opts.inline||!this.elIsInput||this._buildDatepickersContainer(),this._buildBaseHtml(),this._defineLocale(this.opts.language),this._syncWithMinMaxDates(),this.elIsInput&&(this.opts.inline||(this._setPositionClasses(this.opts.position),this._bindEvents()),this.opts.keyboardNav&&!this.opts.onlyTimepicker&&this._bindKeyboardEvents(),this.$datepicker.on(\"mousedown\",this._onMouseDownDatepicker.bind(this)),this.$datepicker.on(\"mouseup\",this._onMouseUpDatepicker.bind(this))),this.opts.classes&&this.$datepicker.addClass(this.opts.classes),this.opts.timepicker&&(this.timepicker=new e.fn.datepicker.Timepicker(this,this.opts),this._bindTimepickerEvents()),this.opts.onlyTimepicker&&this.$datepicker.addClass(\"-only-timepicker-\"),this.views[this.currentView]=new e.fn.datepicker.Body(this,this.currentView,this.opts),this.views[this.currentView].show(),this.nav=new e.fn.datepicker.Navigation(this,this.opts),this.view=this.currentView,this.$el.on(\"clickCell.adp\",this._onClickCell.bind(this)),this.$datepicker.on(\"mouseenter\",\".datepicker--cell\",this._onMouseEnterCell.bind(this)),this.$datepicker.on(\"mouseleave\",\".datepicker--cell\",this._onMouseLeaveCell.bind(this)),this.inited=!0},_createShortCuts:function(){this.minDate=this.opts.minDate?this.opts.minDate:new Date((-86399999136e5)),this.maxDate=this.opts.maxDate?this.opts.maxDate:new Date(86399999136e5)},_bindEvents:function(){this.$el.on(this.opts.showEvent+\".adp\",this._onShowEvent.bind(this)),this.$el.on(\"mouseup.adp\",this._onMouseUpEl.bind(this)),this.$el.on(\"blur.adp\",this._onBlur.bind(this)),this.$el.on(\"keyup.adp\",this._onKeyUpGeneral.bind(this)),e(t).on(\"resize.adp\",this._onResize.bind(this)),e(\"body\").on(\"mouseup.adp\",this._onMouseUpBody.bind(this))},_bindKeyboardEvents:function(){this.$el.on(\"keydown.adp\",this._onKeyDown.bind(this)),this.$el.on(\"keyup.adp\",this._onKeyUp.bind(this)),this.$el.on(\"hotKey.adp\",this._onHotKey.bind(this))},_bindTimepickerEvents:function(){this.$el.on(\"timeChange.adp\",this._onTimeChange.bind(this))},isWeekend:function(t){return this.opts.weekends.indexOf(t)!==-1},_defineLocale:function(t){\"string\"==typeof t?(this.loc=e.fn.datepicker.language[t],this.loc||(console.warn(\"Can't find language \\\"\"+t+'\" in Datepicker.language, will use \"ru\" instead'),this.loc=e.extend(!0,{},e.fn.datepicker.language.ru)),this.loc=e.extend(!0,{},e.fn.datepicker.language.ru,e.fn.datepicker.language[t])):this.loc=e.extend(!0,{},e.fn.datepicker.language.ru,t),this.opts.dateFormat&&(this.loc.dateFormat=this.opts.dateFormat),this.opts.timeFormat&&(this.loc.timeFormat=this.opts.timeFormat),\"\"!==this.opts.firstDay&&(this.loc.firstDay=this.opts.firstDay),this.opts.timepicker&&(this.loc.dateFormat=[this.loc.dateFormat,this.loc.timeFormat].join(this.opts.dateTimeSeparator)),this.opts.onlyTimepicker&&(this.loc.dateFormat=this.loc.timeFormat);var s=this._getWordBoundaryRegExp;(this.loc.timeFormat.match(s(\"aa\"))||this.loc.timeFormat.match(s(\"AA\")))&&(this.ampm=!0)},_buildDatepickersContainer:function(){c=!0,i.append('
'),a=e(\"#datepickers-container\")},_buildBaseHtml:function(){var t,s=e('
');t=\"INPUT\"==this.el.nodeName?this.opts.inline?s.insertAfter(this.$el):a:s.appendTo(this.$el),this.$datepicker=e(d).appendTo(t),this.$content=e(\".datepicker--content\",this.$datepicker),this.$nav=e(\".datepicker--nav\",this.$datepicker)},_triggerOnChange:function(){if(!this.selectedDates.length){if(\"\"===this._prevOnSelectValue)return;return this._prevOnSelectValue=\"\",this.opts.onSelect(\"\",\"\",this)}var t,e=this.selectedDates,s=n.getParsedDate(e[0]),i=this,a=new Date(s.year,s.month,s.date,s.hours,s.minutes,s.seconds);t=e.map(function(t){return i.formatDate(i.loc.dateFormat,t)}).join(this.opts.multipleDatesSeparator),(this.opts.multipleDates||this.opts.range)&&(a=e.map(function(t){var e=n.getParsedDate(t);return new Date(e.year,e.month,e.date,e.hours,e.minutes,e.seconds)})),this._prevOnSelectValue=t,this.opts.onSelect(t,a,this)},next:function(){var t=this.parsedDate,e=this.opts;switch(this.view){case\"days\":this.date=new Date(t.year,t.month+1,1),e.onChangeMonth&&e.onChangeMonth(this.parsedDate.month,this.parsedDate.year);break;case\"months\":this.date=new Date(t.year+1,t.month,1),e.onChangeYear&&e.onChangeYear(this.parsedDate.year);break;case\"years\":this.date=new Date(t.year+10,0,1),e.onChangeDecade&&e.onChangeDecade(this.curDecade)}},prev:function(){var t=this.parsedDate,e=this.opts;switch(this.view){case\"days\":this.date=new Date(t.year,t.month-1,1),e.onChangeMonth&&e.onChangeMonth(this.parsedDate.month,this.parsedDate.year);break;case\"months\":this.date=new Date(t.year-1,t.month,1),e.onChangeYear&&e.onChangeYear(this.parsedDate.year);break;case\"years\":this.date=new Date(t.year-10,0,1),e.onChangeDecade&&e.onChangeDecade(this.curDecade)}},formatDate:function(t,e){e=e||this.date;var s,i=t,a=this._getWordBoundaryRegExp,h=this.loc,o=n.getLeadingZeroNum,r=n.getDecade(e),c=n.getParsedDate(e),d=c.fullHours,l=c.hours,u=t.match(a(\"aa\"))||t.match(a(\"AA\")),m=\"am\",p=this._replacer;switch(this.opts.timepicker&&this.timepicker&&u&&(s=this.timepicker._getValidHoursFromDate(e,u),d=o(s.hours),l=s.hours,m=s.dayPeriod),!0){case/@/.test(i):i=i.replace(/@/,e.getTime());case/aa/.test(i):i=p(i,a(\"aa\"),m);case/AA/.test(i):i=p(i,a(\"AA\"),m.toUpperCase());case/dd/.test(i):i=p(i,a(\"dd\"),c.fullDate);case/d/.test(i):i=p(i,a(\"d\"),c.date);case/DD/.test(i):i=p(i,a(\"DD\"),h.days[c.day]);case/D/.test(i):i=p(i,a(\"D\"),h.daysShort[c.day]);case/mm/.test(i):i=p(i,a(\"mm\"),c.fullMonth);case/m/.test(i):i=p(i,a(\"m\"),c.month+1);case/MM/.test(i):i=p(i,a(\"MM\"),this.loc.months[c.month]);case/M/.test(i):i=p(i,a(\"M\"),h.monthsShort[c.month]);case/ss/.test(i):i=p(i,a(\"ss\"),c.fullSeconds);case/s/.test(i):i=p(i,a(\"s\"),c.seconds);case/ii/.test(i):i=p(i,a(\"ii\"),c.fullMinutes);case/i/.test(i):i=p(i,a(\"i\"),c.minutes);case/hh/.test(i):i=p(i,a(\"hh\"),d);case/h/.test(i):i=p(i,a(\"h\"),l);case/yyyy/.test(i):i=p(i,a(\"yyyy\"),c.year);case/yyyy1/.test(i):i=p(i,a(\"yyyy1\"),r[0]);case/yyyy2/.test(i):i=p(i,a(\"yyyy2\"),r[1]);case/yy/.test(i):i=p(i,a(\"yy\"),c.year.toString().slice(-2))}return i},_replacer:function(t,e,s){return t.replace(e,function(t,e,i,a){return e+s+a})},_getWordBoundaryRegExp:function(t){var e=\"\\\\s|\\\\.|-|/|\\\\\\\\|,|\\\\$|\\\\!|\\\\?|:|;\";return new RegExp(\"(^|>|\"+e+\")(\"+t+\")($|<|\"+e+\")\",\"g\")},selectDate:function(t){var e=this,s=e.opts,i=e.parsedDate,a=e.selectedDates,h=a.length,o=\"\";if(Array.isArray(t))return void t.forEach(function(t){e.selectDate(t)});if(t instanceof Date){if(this.lastSelectedDate=t,this.timepicker&&this.timepicker._setTime(t),e._trigger(\"selectDate\",t),this.timepicker&&(t.setHours(this.timepicker.hours),t.setMinutes(this.timepicker.minutes),t.setSeconds(this.timepicker.seconds)),\"days\"==e.view&&t.getMonth()!=i.month&&s.moveToOtherMonthsOnSelect&&(o=new Date(t.getFullYear(),t.getMonth(),1)),\"years\"==e.view&&t.getFullYear()!=i.year&&s.moveToOtherYearsOnSelect&&(o=new Date(t.getFullYear(),0,1)),o&&(e.silent=!0,e.date=o,e.silent=!1,e.nav._render()),s.multipleDates&&!s.range){if(h===s.multipleDates)return;e._isSelected(t)||e.selectedDates.push(t)}else s.range?2==h?(e.selectedDates=[t],e.minRange=t,e.maxRange=\"\"):1==h?(e.selectedDates.push(t),e.maxRange?e.minRange=t:e.maxRange=t,n.bigger(e.maxRange,e.minRange)&&(e.maxRange=e.minRange,e.minRange=t),e.selectedDates=[e.minRange,e.maxRange]):(e.selectedDates=[t],e.minRange=t):e.selectedDates=[t];e._setInputValue(),s.onSelect&&e._triggerOnChange(),s.autoClose&&!this.timepickerIsActive&&(s.multipleDates||s.range?s.range&&2==e.selectedDates.length&&e.hide():e.hide()),e.views[this.currentView]._render()}},removeDate:function(t){var e=this.selectedDates,s=this;if(t instanceof Date)return e.some(function(i,a){if(n.isSame(i,t))return e.splice(a,1),s.selectedDates.length?s.lastSelectedDate=s.selectedDates[s.selectedDates.length-1]:(s.minRange=\"\",s.maxRange=\"\",s.lastSelectedDate=\"\"),s.views[s.currentView]._render(),s._setInputValue(),s.opts.onSelect&&s._triggerOnChange(),!0})},today:function(){this.silent=!0,this.view=this.opts.minView,this.silent=!1,this.date=new Date,this.opts.todayButton instanceof Date&&this.selectDate(this.opts.todayButton)},clear:function(){this.selectedDates=[],this.minRange=\"\",this.maxRange=\"\",this.views[this.currentView]._render(),this._setInputValue(),this.opts.onSelect&&this._triggerOnChange()},update:function(t,s){var i=arguments.length,a=this.lastSelectedDate;return 2==i?this.opts[t]=s:1==i&&\"object\"==typeof t&&(this.opts=e.extend(!0,this.opts,t)),this._createShortCuts(),this._syncWithMinMaxDates(),this._defineLocale(this.opts.language),this.nav._addButtonsIfNeed(),this.opts.onlyTimepicker||this.nav._render(),this.views[this.currentView]._render(),this.elIsInput&&!this.opts.inline&&(this._setPositionClasses(this.opts.position),this.visible&&this.setPosition(this.opts.position)),this.opts.classes&&this.$datepicker.addClass(this.opts.classes),this.opts.onlyTimepicker&&this.$datepicker.addClass(\"-only-timepicker-\"),this.opts.timepicker&&(a&&this.timepicker._handleDate(a),this.timepicker._updateRanges(),this.timepicker._updateCurrentTime(),a&&(a.setHours(this.timepicker.hours),a.setMinutes(this.timepicker.minutes),a.setSeconds(this.timepicker.seconds))),this._setInputValue(),this},_syncWithMinMaxDates:function(){var t=this.date.getTime();this.silent=!0,this.minTime>t&&(this.date=this.minDate),this.maxTime=this.minTime&&s<=this.maxTime,month:o>=this.minTime&&r<=this.maxTime,year:i.year>=a.year&&i.year<=h.year};return e?c[e]:c.day},_getDimensions:function(t){var e=t.offset();return{width:t.outerWidth(),height:t.outerHeight(),left:e.left,top:e.top}},_getDateFromCell:function(t){var e=this.parsedDate,i=t.data(\"year\")||e.year,a=t.data(\"month\")==s?e.month:t.data(\"month\"),n=t.data(\"date\")||1;return new Date(i,a,n)},_setPositionClasses:function(t){t=t.split(\" \");var e=t[0],s=t[1],i=\"datepicker -\"+e+\"-\"+s+\"- -from-\"+e+\"-\";this.visible&&(i+=\" active\"),this.$datepicker.removeAttr(\"class\").addClass(i)},setPosition:function(t){t=t||this.opts.position;var e,s,i=this._getDimensions(this.$el),a=this._getDimensions(this.$datepicker),n=t.split(\" \"),h=this.opts.offset,o=n[0],r=n[1];switch(o){case\"top\":e=i.top-a.height-h;break;case\"right\":s=i.left+i.width+h;break;case\"bottom\":e=i.top+i.height+h;break;case\"left\":s=i.left-a.width-h}switch(r){case\"top\":e=i.top;break;case\"right\":s=i.left+i.width-a.width;break;case\"bottom\":e=i.top+i.height-a.height;break;case\"left\":s=i.left;break;case\"center\":/left|right/.test(o)?e=i.top+i.height/2-a.height/2:s=i.left+i.width/2-a.width/2}this.$datepicker.css({left:s,top:e})},show:function(){var t=this.opts.onShow;this.setPosition(this.opts.position),this.$datepicker.addClass(\"active\"),this.visible=!0,t&&this._bindVisionEvents(t)},hide:function(){var t=this.opts.onHide;this.$datepicker.removeClass(\"active\").css({left:\"-100000px\"}),this.focused=\"\",this.keys=[],this.inFocus=!1,this.visible=!1,this.$el.blur(),t&&this._bindVisionEvents(t)},down:function(t){this._changeView(t,\"down\")},up:function(t){this._changeView(t,\"up\")},_bindVisionEvents:function(t){this.$datepicker.off(\"transitionend.dp\"),t(this,!1),this.$datepicker.one(\"transitionend.dp\",t.bind(this,this,!0))},_changeView:function(t,e){t=t||this.focused||this.date;var s=\"up\"==e?this.viewIndex+1:this.viewIndex-1;s>2&&(s=2),s<0&&(s=0),this.silent=!0,this.date=new Date(t.getFullYear(),t.getMonth(),1),this.silent=!1,this.view=this.viewIndexes[s]},_handleHotKey:function(t){var e,s,i,a=n.getParsedDate(this._getFocusedDate()),h=this.opts,o=!1,r=!1,c=!1,d=a.year,l=a.month,u=a.date;switch(t){case\"ctrlRight\":case\"ctrlUp\":l+=1,o=!0;break;case\"ctrlLeft\":case\"ctrlDown\":l-=1,o=!0;break;case\"shiftRight\":case\"shiftUp\":r=!0,d+=1;break;case\"shiftLeft\":case\"shiftDown\":r=!0,d-=1;break;case\"altRight\":case\"altUp\":c=!0,d+=10;break;case\"altLeft\":case\"altDown\":c=!0,d-=10;break;case\"ctrlShiftUp\":this.up()}i=n.getDaysCount(new Date(d,l)),s=new Date(d,l,u),ithis.maxTime&&(s=this.maxDate),this.focused=s,e=n.getParsedDate(s),o&&h.onChangeMonth&&h.onChangeMonth(e.month,e.year),r&&h.onChangeYear&&h.onChangeYear(e.year),c&&h.onChangeDecade&&h.onChangeDecade(this.curDecade)},_registerKey:function(t){var e=this.keys.some(function(e){return e==t});e||this.keys.push(t)},_unRegisterKey:function(t){var e=this.keys.indexOf(t);this.keys.splice(e,1)},_isHotKeyPressed:function(){var t,e=!1,s=this,i=this.keys.sort();for(var a in u)t=u[a],i.length==t.length&&t.every(function(t,e){return t==i[e]})&&(s._trigger(\"hotKey\",a),e=!0);return e},_trigger:function(t,e){this.$el.trigger(t,e)},_focusNextCell:function(t,e){e=e||this.cellType;var s=n.getParsedDate(this._getFocusedDate()),i=s.year,a=s.month,h=s.date;if(!this._isHotKeyPressed()){switch(t){case 37:\"day\"==e?h-=1:\"\",\"month\"==e?a-=1:\"\",\"year\"==e?i-=1:\"\";break;case 38:\"day\"==e?h-=7:\"\",\"month\"==e?a-=3:\"\",\"year\"==e?i-=4:\"\";break;case 39:\"day\"==e?h+=1:\"\",\"month\"==e?a+=1:\"\",\"year\"==e?i+=1:\"\";break;case 40:\"day\"==e?h+=7:\"\",\"month\"==e?a+=3:\"\",\"year\"==e?i+=4:\"\"}var o=new Date(i,a,h);o.getTime()this.maxTime&&(o=this.maxDate),this.focused=o}},_getFocusedDate:function(){var t=this.focused||this.selectedDates[this.selectedDates.length-1],e=this.parsedDate;if(!t)switch(this.view){case\"days\":t=new Date(e.year,e.month,(new Date).getDate());break;case\"months\":t=new Date(e.year,e.month,1);break;case\"years\":t=new Date(e.year,0,1)}return t},_getCell:function(t,s){s=s||this.cellType;var i,a=n.getParsedDate(t),h='.datepicker--cell[data-year=\"'+a.year+'\"]';switch(s){case\"month\":h='[data-month=\"'+a.month+'\"]';break;case\"day\":h+='[data-month=\"'+a.month+'\"][data-date=\"'+a.date+'\"]'}return i=this.views[this.currentView].$el.find(h),i.length?i:e(\"\")},destroy:function(){var t=this;t.$el.off(\".adp\").data(\"datepicker\",\"\"),t.selectedDates=[],t.focused=\"\",t.views={},t.keys=[],t.minRange=\"\",t.maxRange=\"\",t.opts.inline||!t.elIsInput?t.$datepicker.closest(\".datepicker-inline\").remove():t.$datepicker.remove()},_handleAlreadySelectedDates:function(t,e){this.opts.range?this.opts.toggleSelected?this.removeDate(e):2!=this.selectedDates.length&&this._trigger(\"clickCell\",e):this.opts.toggleSelected&&this.removeDate(e),this.opts.toggleSelected||(this.lastSelectedDate=t,this.opts.timepicker&&(this.timepicker._setTime(t),this.timepicker.update()))},_onShowEvent:function(t){this.visible||this.show()},_onBlur:function(){!this.inFocus&&this.visible&&this.hide()},_onMouseDownDatepicker:function(t){this.inFocus=!0},_onMouseUpDatepicker:function(t){this.inFocus=!1,t.originalEvent.inFocus=!0,t.originalEvent.timepickerFocus||this.$el.focus()},_onKeyUpGeneral:function(t){var e=this.$el.val();e||this.clear()},_onResize:function(){this.visible&&this.setPosition()},_onMouseUpBody:function(t){t.originalEvent.inFocus||this.visible&&!this.inFocus&&this.hide()},_onMouseUpEl:function(t){t.originalEvent.inFocus=!0,setTimeout(this._onKeyUpGeneral.bind(this),4)},_onKeyDown:function(t){var e=t.which;if(this._registerKey(e),e>=37&&e<=40&&(t.preventDefault(),this._focusNextCell(e)),13==e&&this.focused){if(this._getCell(this.focused).hasClass(\"-disabled-\"))return;if(this.view!=this.opts.minView)this.down();else{var s=this._isSelected(this.focused,this.cellType);if(!s)return this.timepicker&&(this.focused.setHours(this.timepicker.hours),this.focused.setMinutes(this.timepicker.minutes),this.focused.setSeconds(this.timepicker.seconds)),void this.selectDate(this.focused);this._handleAlreadySelectedDates(s,this.focused)}}27==e&&this.hide()},_onKeyUp:function(t){var e=t.which;this._unRegisterKey(e)},_onHotKey:function(t,e){this._handleHotKey(e)},_onMouseEnterCell:function(t){var s=e(t.target).closest(\".datepicker--cell\"),i=this._getDateFromCell(s);this.silent=!0,this.focused&&(this.focused=\"\"),s.addClass(\"-focus-\"),this.focused=i,this.silent=!1,this.opts.range&&1==this.selectedDates.length&&(this.minRange=this.selectedDates[0],this.maxRange=\"\",n.less(this.minRange,this.focused)&&(this.maxRange=this.minRange,this.minRange=\"\"),this.views[this.currentView]._update())},_onMouseLeaveCell:function(t){var s=e(t.target).closest(\".datepicker--cell\");s.removeClass(\"-focus-\"),this.silent=!0,this.focused=\"\",this.silent=!1},_onTimeChange:function(t,e,s,i){var a=new Date,n=this.selectedDates,h=!1;n.length&&(h=!0,a=this.lastSelectedDate),a.setHours(e),a.setMinutes(s),a.setSeconds(i),h||this._getCell(a).hasClass(\"-disabled-\")?(this._setInputValue(),this.opts.onSelect&&this._triggerOnChange()):this.selectDate(a)},_onClickCell:function(t,e){this.timepicker&&(e.setHours(this.timepicker.hours),e.setMinutes(this.timepicker.minutes),e.setSeconds(this.timepicker.seconds)),this.selectDate(e)},set focused(t){if(!t&&this.focused){var e=this._getCell(this.focused);e.length&&e.removeClass(\"-focus-\")}this._focused=t,this.opts.range&&1==this.selectedDates.length&&(this.minRange=this.selectedDates[0],this.maxRange=\"\",n.less(this.minRange,this._focused)&&(this.maxRange=this.minRange,this.minRange=\"\")),this.silent||(this.date=t)},get focused(){return this._focused},get parsedDate(){return n.getParsedDate(this.date)},set date(t){if(t instanceof Date)return this.currentDate=t,this.inited&&!this.silent&&(this.views[this.view]._render(),this.nav._render(),this.visible&&this.elIsInput&&this.setPosition()),t},get date(){return this.currentDate},set view(t){if(this.viewIndex=this.viewIndexes.indexOf(t),!(this.viewIndex<0))return this.prevView=this.currentView,this.currentView=t,this.inited&&(this.views[t]?this.views[t]._render():this.views[t]=new e.fn.datepicker.Body(this,t,this.opts),this.views[this.prevView].hide(),this.views[t].show(),this.nav._render(),this.opts.onChangeView&&this.opts.onChangeView(t),this.elIsInput&&this.visible&&this.setPosition()),t},get view(){return this.currentView},get cellType(){return this.view.substring(0,this.view.length-1)},get minTime(){var t=n.getParsedDate(this.minDate);return new Date(t.year,t.month,t.date).getTime()},get maxTime(){var t=n.getParsedDate(this.maxDate);return new Date(t.year,t.month,t.date).getTime()},get curDecade(){return n.getDecade(this.date)}},n.getDaysCount=function(t){return new Date(t.getFullYear(),t.getMonth()+1,0).getDate()},n.getParsedDate=function(t){return{year:t.getFullYear(),month:t.getMonth(),fullMonth:t.getMonth()+1<10?\"0\"+(t.getMonth()+1):t.getMonth()+1,date:t.getDate(),fullDate:t.getDate()<10?\"0\"+t.getDate():t.getDate(),day:t.getDay(),hours:t.getHours(),fullHours:t.getHours()<10?\"0\"+t.getHours():t.getHours(),minutes:t.getMinutes(),fullMinutes:t.getMinutes()<10?\"0\"+t.getMinutes():t.getMinutes(),seconds:t.getSeconds(),fullSeconds:t.getSeconds()<10?\"0\"+t.getSeconds():t.getSeconds()}},n.getDecade=function(t){var e=10*Math.floor(t.getFullYear()/10);return[e,e+9]},n.template=function(t,e){return t.replace(/#\\{([\\w]+)\\}/g,function(t,s){if(e[s]||0===e[s])return e[s]})},n.isSame=function(t,e,s){if(!t||!e)return!1;var i=n.getParsedDate(t),a=n.getParsedDate(e),h=s?s:\"day\",o={day:i.date==a.date&&i.month==a.month&&i.year==a.year,month:i.month==a.month&&i.year==a.year,year:i.year==a.year};return o[h]},n.less=function(t,e,s){return!(!t||!e)&&e.getTime()t.getTime()},n.getLeadingZeroNum=function(t){return parseInt(t)<10?\"0\"+t:t},n.resetTime=function(t){if(\"object\"==typeof t)return t=n.getParsedDate(t),new Date(t.year,t.month,t.date)},e.fn.datepicker=function(t){return this.each(function(){if(e.data(this,o)){var s=e.data(this,o);s.opts=e.extend(!0,s.opts,t),s.update()}else e.data(this,o,new m(this,t))})},e.fn.datepicker.Constructor=m,e.fn.datepicker.language={ru:{days:[\"Воскресенье\",\"Понедельник\",\"Вторник\",\"Среда\",\"Четверг\",\"Пятница\",\"Суббота\"],daysShort:[\"Вос\",\"Пон\",\"Вто\",\"Сре\",\"Чет\",\"Пят\",\"Суб\"],daysMin:[\"Вс\",\"Пн\",\"Вт\",\"Ср\",\"Чт\",\"Пт\",\"Сб\"],months:[\"Январь\",\"Февраль\",\"Март\",\"Апрель\",\"Май\",\"Июнь\",\"Июль\",\"Август\",\"Сентябрь\",\"Октябрь\",\"Ноябрь\",\"Декабрь\"],monthsShort:[\"Янв\",\"Фев\",\"Мар\",\"Апр\",\"Май\",\"Июн\",\"Июл\",\"Авг\",\"Сен\",\"Окт\",\"Ноя\",\"Дек\"],today:\"Сегодня\",clear:\"Очистить\",dateFormat:\"dd.mm.yyyy\",timeFormat:\"hh:ii\",firstDay:1}},e(function(){e(r).datepicker()})}(),function(){var t={days:'
',months:'
',years:'
'},i=e.fn.datepicker,a=i.Constructor;i.Body=function(t,s,i){this.d=t,this.type=s,this.opts=i,this.$el=e(\"\"),this.opts.onlyTimepicker||this.init()},i.Body.prototype={init:function(){this._buildBaseHtml(),this._render(),this._bindEvents()},_bindEvents:function(){this.$el.on(\"click\",\".datepicker--cell\",e.proxy(this._onClickCell,this))},_buildBaseHtml:function(){this.$el=e(t[this.type]).appendTo(this.d.$content),this.$names=e(\".datepicker--days-names\",this.$el),this.$cells=e(\".datepicker--cells\",this.$el)},_getDayNamesHtml:function(t,e,i,a){return e=e!=s?e:t,i=i?i:\"\",a=a!=s?a:0,a>7?i:7==e?this._getDayNamesHtml(t,0,i,++a):(i+='
'+this.d.loc.daysMin[e]+\"
\",this._getDayNamesHtml(t,++e,i,++a))},_getCellContents:function(t,e){var s=\"datepicker--cell datepicker--cell-\"+e,i=new Date,n=this.d,h=a.resetTime(n.minRange),o=a.resetTime(n.maxRange),r=n.opts,c=a.getParsedDate(t),d={},l=c.date;switch(e){case\"day\":n.isWeekend(c.day)&&(s+=\" -weekend-\"),c.month!=this.d.parsedDate.month&&(s+=\" -other-month-\",r.selectOtherMonths||(s+=\" -disabled-\"),r.showOtherMonths||(l=\"\"));break;case\"month\":l=n.loc[n.opts.monthsField][c.month];break;case\"year\":var u=n.curDecade;l=c.year,(c.yearu[1])&&(s+=\" -other-decade-\",r.selectOtherYears||(s+=\" -disabled-\"),r.showOtherYears||(l=\"\"))}return r.onRenderCell&&(d=r.onRenderCell(t,e)||{},l=d.html?d.html:l,s+=d.classes?\" \"+d.classes:\"\"),r.range&&(a.isSame(h,t,e)&&(s+=\" -range-from-\"),a.isSame(o,t,e)&&(s+=\" -range-to-\"),1==n.selectedDates.length&&n.focused?((a.bigger(h,t)&&a.less(n.focused,t)||a.less(o,t)&&a.bigger(n.focused,t))&&(s+=\" -in-range-\"),a.less(o,t)&&a.isSame(n.focused,t)&&(s+=\" -range-from-\"),a.bigger(h,t)&&a.isSame(n.focused,t)&&(s+=\" -range-to-\")):2==n.selectedDates.length&&a.bigger(h,t)&&a.less(o,t)&&(s+=\" -in-range-\")),a.isSame(i,t,e)&&(s+=\" -current-\"),n.focused&&a.isSame(t,n.focused,e)&&(s+=\" -focus-\"),n._isSelected(t,e)&&(s+=\" -selected-\"),n._isInRange(t,e)&&!d.disabled||(s+=\" -disabled-\"),{html:l,classes:s}},_getDaysHtml:function(t){var e=a.getDaysCount(t),s=new Date(t.getFullYear(),t.getMonth(),1).getDay(),i=new Date(t.getFullYear(),t.getMonth(),e).getDay(),n=s-this.d.loc.firstDay,h=6-i+this.d.loc.firstDay;n=n<0?n+7:n,h=h>6?h-7:h;for(var o,r,c=-n+1,d=\"\",l=c,u=e+h;l<=u;l++)r=t.getFullYear(),o=t.getMonth(),d+=this._getDayHtml(new Date(r,o,l));return d},_getDayHtml:function(t){var e=this._getCellContents(t,\"day\");return'
'+e.html+\"
\"},_getMonthsHtml:function(t){for(var e=\"\",s=a.getParsedDate(t),i=0;i<12;)e+=this._getMonthHtml(new Date(s.year,i)),i++;return e},_getMonthHtml:function(t){var e=this._getCellContents(t,\"month\");return'
'+e.html+\"
\"},_getYearsHtml:function(t){var e=(a.getParsedDate(t),a.getDecade(t)),s=e[0]-1,i=\"\",n=s;for(n;n<=e[1]+1;n++)i+=this._getYearHtml(new Date(n,0));return i},_getYearHtml:function(t){var e=this._getCellContents(t,\"year\");return'
'+e.html+\"
\"},_renderTypes:{days:function(){var t=this._getDayNamesHtml(this.d.loc.firstDay),e=this._getDaysHtml(this.d.currentDate);this.$cells.html(e),this.$names.html(t)},months:function(){var t=this._getMonthsHtml(this.d.currentDate);this.$cells.html(t)},years:function(){var t=this._getYearsHtml(this.d.currentDate);this.$cells.html(t)}},_render:function(){this.opts.onlyTimepicker||this._renderTypes[this.type].bind(this)()},_update:function(){var t,s,i,a=e(\".datepicker--cell\",this.$cells),n=this;a.each(function(a,h){s=e(this),i=n.d._getDateFromCell(e(this)),t=n._getCellContents(i,n.d.cellType),s.attr(\"class\",t.classes)})},show:function(){this.opts.onlyTimepicker||(this.$el.addClass(\"active\"),this.acitve=!0)},hide:function(){this.$el.removeClass(\"active\"),this.active=!1},_handleClick:function(t){var e=t.data(\"date\")||1,s=t.data(\"month\")||0,i=t.data(\"year\")||this.d.parsedDate.year,a=this.d;if(a.view!=this.opts.minView)return void a.down(new Date(i,s,e));var n=new Date(i,s,e),h=this.d._isSelected(n,this.d.cellType);return h?void a._handleAlreadySelectedDates.bind(a,h,n)():void a._trigger(\"clickCell\",n)},_onClickCell:function(t){var s=e(t.target).closest(\".datepicker--cell\");s.hasClass(\"-disabled-\")||this._handleClick.bind(this)(s)}}}(),function(){var t='
#{prevHtml}
#{title}
#{nextHtml}
',s='
',i='#{label}',a=e.fn.datepicker,n=a.Constructor;a.Navigation=function(t,e){this.d=t,this.opts=e,this.$buttonsContainer=\"\",this.init()},a.Navigation.prototype={init:function(){this._buildBaseHtml(),this._bindEvents()},_bindEvents:function(){this.d.$nav.on(\"click\",\".datepicker--nav-action\",e.proxy(this._onClickNavButton,this)),this.d.$nav.on(\"click\",\".datepicker--nav-title\",e.proxy(this._onClickNavTitle,this)),this.d.$datepicker.on(\"click\",\".datepicker--button\",e.proxy(this._onClickNavButton,this))},_buildBaseHtml:function(){this.opts.onlyTimepicker||this._render(),this._addButtonsIfNeed()},_addButtonsIfNeed:function(){this.opts.todayButton&&this._addButton(\"today\"),this.opts.clearButton&&this._addButton(\"clear\")},_render:function(){var s=this._getTitle(this.d.currentDate),i=n.template(t,e.extend({title:s},this.opts));this.d.$nav.html(i),\"years\"==this.d.view&&e(\".datepicker--nav-title\",this.d.$nav).addClass(\"-disabled-\"),this.setNavStatus()},_getTitle:function(t){return this.d.formatDate(this.opts.navTitles[this.d.view],t)},_addButton:function(t){this.$buttonsContainer.length||this._addButtonsContainer();var s={action:t,label:this.d.loc[t]},a=n.template(i,s);e(\"[data-action=\"+t+\"]\",this.$buttonsContainer).length||this.$buttonsContainer.append(a)},_addButtonsContainer:function(){this.d.$datepicker.append(s),this.$buttonsContainer=e(\".datepicker--buttons\",this.d.$datepicker)},setNavStatus:function(){if((this.opts.minDate||this.opts.maxDate)&&this.opts.disableNavWhenOutOfRange){var t=this.d.parsedDate,e=t.month,s=t.year,i=t.date;switch(this.d.view){case\"days\":this.d._isInRange(new Date(s,e-1,1),\"month\")||this._disableNav(\"prev\"),this.d._isInRange(new Date(s,e+1,1),\"month\")||this._disableNav(\"next\");break;case\"months\":this.d._isInRange(new Date(s-1,e,i),\"year\")||this._disableNav(\"prev\"),this.d._isInRange(new Date(s+1,e,i),\"year\")||this._disableNav(\"next\");break;case\"years\":var a=n.getDecade(this.d.date);this.d._isInRange(new Date(a[0]-1,0,1),\"year\")||this._disableNav(\"prev\"),this.d._isInRange(new Date(a[1]+1,0,1),\"year\")||this._disableNav(\"next\")}}},_disableNav:function(t){e('[data-action=\"'+t+'\"]',this.d.$nav).addClass(\"-disabled-\")},_activateNav:function(t){e('[data-action=\"'+t+'\"]',this.d.$nav).removeClass(\"-disabled-\")},_onClickNavButton:function(t){var s=e(t.target).closest(\"[data-action]\"),i=s.data(\"action\");this.d[i]()},_onClickNavTitle:function(t){if(!e(t.target).hasClass(\"-disabled-\"))return\"days\"==this.d.view?this.d.view=\"months\":void(this.d.view=\"years\")}}}(),function(){var t='
#{hourVisible} : #{minValue} : #{secValue}
',s=e.fn.datepicker,i=s.Constructor;s.Timepicker=function(t,e){this.d=t,this.opts=e,this.init()},s.Timepicker.prototype={init:function(){var t=\"input\";this._setTime(this.d.date),this._buildHTML(),navigator.userAgent.match(/trident/gi)&&(t=\"change\"),this.d.$el.on(\"selectDate\",this._onSelectDate.bind(this)),\nthis.$ranges.on(t,this._onChangeRange.bind(this)),this.$ranges.on(\"mouseup\",this._onMouseUpRange.bind(this)),this.$ranges.on(\"mousemove focus \",this._onMouseEnterRange.bind(this)),this.$ranges.on(\"mouseout blur\",this._onMouseOutRange.bind(this))},_setTime:function(t){var e=i.getParsedDate(t);this._handleDate(t),this.hours=e.hourst.getHours()&&(this.minMinutes=this.opts.minMinutes)},_setMaxTimeFromDate:function(t){this.maxHours=t.getHours(),this.maxMinutes=t.getMinutes(),this.maxSeconds=t.getSeconds(),this.d.lastSelectedDate&&this.d.lastSelectedDate.getHours()t?0:i.minHours,this.minMinutes=i.minMinutes<0||i.minMinutes>e?0:i.minMinutes,this.maxHours=i.maxHours<0||i.maxHours>t?t:i.maxHours,this.maxMinutes=i.maxMinutes<0||i.maxMinutes>e?e:i.maxMinutes,this.minSeconds=i.minSeconds<0||i.minSeconds>s?0:i.minSeconds,this.maxSeconds=i.maxSeconds<0||i.maxSeconds>s?s:i.maxSeconds},_validateHoursMinutes:function(t){this.hoursthis.maxHours&&(this.hours=this.maxHours),this.minutesthis.maxMinutes&&(this.minutes=this.maxMinutes),this.secondsthis.maxSeconds&&(this.seconds=this.maxSeconds)},_buildHTML:function(){var s=i.getLeadingZeroNum,a={hourMin:this.minHours,hourMax:s(this.maxHours),hourStep:this.opts.hoursStep,hourValue:this.hours,hourVisible:s(this.displayHours),minMin:this.minMinutes,minMax:s(this.maxMinutes),minStep:this.opts.minutesStep,minValue:s(this.minutes),secMin:this.minSeconds,secMax:s(this.maxSeconds),secStep:this.opts.secondsStep,secValue:s(this.seconds)},n=i.template(t,a);this.$timepicker=e(n).appendTo(this.d.$datepicker),this.$ranges=e('[type=\"range\"]',this.$timepicker),this.$hours=e('[name=\"hours\"]',this.$timepicker),this.$minutes=e('[name=\"minutes\"]',this.$timepicker),this.$seconds=e('[name=\"seconds\"]',this.$timepicker),this.$hoursText=e(\".datepicker--time-current-hours\",this.$timepicker),this.$minutesText=e(\".datepicker--time-current-minutes\",this.$timepicker),this.$secondsText=e(\".datepicker--time-current-seconds\",this.$timepicker),this.d.ampm&&(this.$ampm=e('').appendTo(e(\".datepicker--time-current\",this.$timepicker)).html(this.dayPeriod),this.$timepicker.addClass(\"-am-pm-\"))},_updateCurrentTime:function(){var t=i.getLeadingZeroNum(this.displayHours),e=i.getLeadingZeroNum(this.minutes),s=i.getLeadingZeroNum(this.seconds);this.$hoursText.html(t),this.$minutesText.html(e),this.$secondsText.html(s),this.d.ampm&&this.$ampm.html(this.dayPeriod)},_updateRanges:function(){this.$hours.attr({min:this.minHours,max:this.maxHours}).val(this.hours),this.$minutes.attr({min:this.minMinutes,max:this.maxMinutes}).val(this.minutes),this.$seconds.attr({min:this.minSeconds,max:this.maxSeconds}).val(this.seconds)},_handleDate:function(t){this._setDefaultMinMaxTime(),t&&(i.isSame(t,this.d.opts.minDate)?this._setMinTimeFromDate(this.d.opts.minDate):i.isSame(t,this.d.opts.maxDate)&&this._setMaxTimeFromDate(this.d.opts.maxDate)),this._validateHoursMinutes(t)},update:function(){this._updateRanges(),this._updateCurrentTime()},_getValidHoursFromDate:function(t,e){var s=t,a=t;t instanceof Date&&(s=i.getParsedDate(t),a=s.hours);var n=e||this.d.ampm,h=\"am\";if(n)switch(!0){case 0==a:a=12;break;case 12==a:h=\"pm\";break;case a>11:a-=12,h=\"pm\"}return{hours:a,dayPeriod:h}},set hours(t){this._hours=t;var e=this._getValidHoursFromDate(t);this.displayHours=e.hours,this.dayPeriod=e.dayPeriod},get hours(){return this._hours},_onChangeRange:function(t){var s=e(t.target),i=s.attr(\"name\");this.d.timepickerIsActive=!0,this[i]=s.val(),this._updateCurrentTime(),this.d._trigger(\"timeChange\",[this.hours,this.minutes,this.seconds]),this._handleDate(this.d.lastSelectedDate),this.update()},_onSelectDate:function(t,e){this._handleDate(e),this.update()},_onMouseEnterRange:function(t){var s=e(t.target).attr(\"name\");e(\".datepicker--time-current-\"+s,this.$timepicker).addClass(\"-focus-\")},_onMouseOutRange:function(t){var s=e(t.target).attr(\"name\");this.d.inFocus||e(\".datepicker--time-current-\"+s,this.$timepicker).removeClass(\"-focus-\")},_onMouseUpRange:function(t){this.d.timepickerIsActive=!1}}}()}(window,jQuery);","// frappe.ui.Capture\n// Author - Achilles Rasquinha \n\n/**\n * @description Converts a canvas, image or a video to a data URL string.\n *\n * @param \t{HTMLElement} element - canvas, img or video.\n * @returns {string} \t\t\t - The data URL string.\n *\n * @example\n * frappe._.get_data_uri(video)\n * // returns \"data:image/pngbase64,...\"\n */\nfrappe._.get_data_uri = element => {\n\n\tconst width = element.videoWidth;\n\tconst height = element.videoHeight;\n\n\tconst $canvas = $('');\n\t$canvas[0].width = width;\n\t$canvas[0].height = height;\n\n\tconst context = $canvas[0].getContext('2d');\n\tcontext.drawImage(element, 0, 0, width, height);\n\n\tconst data_uri = $canvas[0].toDataURL('image/png');\n\n\treturn data_uri;\n};\n\nfunction get_file_input() {\n\tlet input = document.createElement(\"input\");\n\tinput.setAttribute(\"type\", \"file\");\n\tinput.setAttribute(\"accept\", \"image/*\");\n\tinput.setAttribute(\"multiple\", \"\");\n\n\treturn input;\n}\n\nfunction read(file) {\n\treturn new Promise((resolve, reject) => {\n\t\tconst reader = new FileReader();\n\t\treader.onload = () => resolve(reader.result);\n\t\treader.onerror = reject;\n\t\treader.readAsDataURL(file);\n\t});\n}\n\n/**\n * @description Frappe's Capture object.\n *\n * @example\n * const capture = frappe.ui.Capture()\n * capture.show()\n *\n * capture.click((data_uri) => {\n * \t// do stuff\n * })\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API/Taking_still_photos\n */\nfrappe.ui.Capture = class {\n\tconstructor(options = {}) {\n\t\tthis.options = frappe.ui.Capture.OPTIONS;\n\t\tthis.set_options(options);\n\n\t\tthis.facing_mode = \"environment\";\n\t\tthis.images = [];\n\t}\n\n\tset_options(options) {\n\t\tthis.options = { ...frappe.ui.Capture.OPTIONS, ...options };\n\n\t\treturn this;\n\t}\n\n\tshow() {\n\t\tthis.build_dialog();\n\n\t\tif (frappe.is_mobile()) {\n\t\t\tthis.show_for_mobile();\n\t\t} else {\n\t\t\tthis.show_for_desktop();\n\t\t}\n\t}\n\n\tbuild_dialog() {\n\t\tlet me = this;\n\t\tme.dialog = new frappe.ui.Dialog({\n\t\t\ttitle: this.options.title,\n\t\t\tanimate: this.options.animate,\n\t\t\tfields: [\n\t\t\t\t{\n\t\t\t\t\tfieldtype: \"HTML\",\n\t\t\t\t\tfieldname: \"capture\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tfieldtype: \"HTML\",\n\t\t\t\t\tfieldname: \"total_count\"\n\t\t\t\t}\n\t\t\t],\n\t\t\ton_hide: this.stop_media_stream()\n\t\t});\n\n\t\tme.$template = $(frappe.ui.Capture.TEMPLATE);\n\n\t\tlet field = me.dialog.get_field(\"capture\");\n\t\t$(field.wrapper).html(me.$template);\n\n\t\tme.dialog.get_close_btn().on('click', () => {\n\t\t\tme.hide();\n\t\t});\n\t}\n\n\tshow_for_mobile() {\n\t\tlet me = this;\n\t\tif (!me.input) {\n\t\t\tme.input = get_file_input();\n\t\t}\n\n\t\tme.input.onchange = async function () {\n\t\t\tfor (let file of me.input.files) {\n\t\t\t\tlet f = await read(file);\n\t\t\t\tme.images.push(f);\n\t\t\t}\n\n\t\t\tme.render_preview();\n\t\t\tme.dialog.show();\n\t\t};\n\t\tme.input.click();\n\t}\n\n\tshow_for_desktop() {\n\t\tlet me = this;\n\n\t\tthis.render_stream()\n\t\t\t.then(() => {\n\t\t\t\tme.dialog.show();\n\t\t\t})\n\t\t\t.catch(err => {\n\t\t\t\tif (me.options.error) {\n\t\t\t\t\tfrappe.show_alert(frappe.ui.Capture.ERR_MESSAGE, 3);\n\t\t\t\t}\n\n\t\t\t\tthrow err;\n\t\t\t});\n\t}\n\n\trender_stream() {\n\t\tlet me = this;\n\t\tlet constraints = {\n\t\t\tvideo: {\n\t\t\t\tfacingMode: this.facing_mode\n\t\t\t}\n\t\t};\n\n\t\treturn navigator.mediaDevices.getUserMedia(constraints).then(stream => {\n\t\t\tme.stream = stream;\n\t\t\tme.dialog.custom_actions.empty();\n\t\t\tme.dialog.get_primary_btn().off('click');\n\t\t\tme.setup_take_photo_action();\n\t\t\tme.setup_preview_action();\n\t\t\tme.setup_toggle_camera();\n\n\t\t\tme.$template.find('.fc-stream-container').show();\n\t\t\tme.$template.find('.fc-preview-container').hide();\n\t\t\tme.video = me.$template.find('video')[0];\n\t\t\tme.video.srcObject = me.stream;\n\t\t\tme.video.load();\n\t\t\tme.video.play();\n\t\t});\n\t}\n\n\trender_preview() {\n\t\tthis.stop_media_stream();\n\t\tthis.$template.find('.fc-stream-container').hide();\n\t\tthis.$template.find('.fc-preview-container').show();\n\t\tthis.dialog.get_primary_btn().off('click');\n\n\t\tlet images = ``;\n\n\t\tthis.images.forEach((image, idx) => {\n\t\t\timages += `\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\t${frappe.utils.icon(\"close\", \"lg\")}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
\n\t\t\t`;\n\t\t});\n\n\t\tthis.$template.find('.fc-preview-container').empty();\n\t\t$(this.$template.find('.fc-preview-container')).html(\n\t\t\t`
\n\t\t\t\t${images}\n\t\t\t
`\n\t\t);\n\n\t\tthis.setup_capture_action();\n\t\tthis.setup_submit_action();\n\t\tthis.setup_remove_action();\n\t\tthis.update_count();\n\t\tthis.dialog.custom_actions.empty();\n\t}\n\n\tsetup_take_photo_action() {\n\t\tlet me = this;\n\n\t\tthis.dialog.set_primary_action(__('Take Photo'), () => {\n\t\t\tconst data_url = frappe._.get_data_uri(me.video);\n\n\t\t\tme.images.push(data_url);\n\t\t\tme.setup_preview_action();\n\t\t\tme.update_count();\n\t\t});\n\t}\n\n\tsetup_preview_action() {\n\t\tlet me = this;\n\n\t\tif (!this.images.length) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.dialog.set_secondary_action_label(__(\"Preview\"));\n\t\tthis.dialog.set_secondary_action(() => {\n\t\t\tme.dialog.get_primary_btn().off('click');\n\t\t\tme.render_preview();\n\t\t});\n\t}\n\n\tsetup_remove_action() {\n\t\tlet me = this;\n\t\tlet elements = this.$template[0].getElementsByClassName(\"capture-remove-btn\");\n\n\t\telements.forEach(el => {\n\t\t\tel.onclick = () => {\n\t\t\t\tlet idx = parseInt(el.getAttribute(\"data-idx\"));\n\n\t\t\t\tme.images.splice(idx, 1);\n\t\t\t\tme.render_preview();\n\t\t\t};\n\t\t});\n\t}\n\n\tupdate_count() {\n\t\tlet field = this.dialog.get_field(\"total_count\");\n\t\tlet msg = `${__(\"Total Images\")}: ${this.images.length}`;\n\n\t\tif (this.images.length === 0) {\n\t\t\tmsg = __(\"No Images\");\n\t\t}\n\n\t\t$(field.wrapper).html(`\n\t\t\t
\n\t\t\t\t
${msg}
\n\t\t\t
\n\t\t`);\n\t}\n\n\tsetup_toggle_camera() {\n\t\tlet me = this;\n\n\t\tthis.dialog.add_custom_action(__(\"Switch Camera\"), () => {\n\t\t\tme.facing_mode = me.facing_mode == \"environment\" ? \"user\" : \"environment\";\n\n\t\t\tfrappe.show_alert({\n\t\t\t\tmessage: __(\"Switching Camera\")\n\t\t\t});\n\n\t\t\tme.stop_media_stream();\n\t\t\tme.render_stream();\n\t\t}, \"btn-switch\");\n\t}\n\n\tsetup_capture_action() {\n\t\tlet me = this;\n\n\t\tthis.dialog.set_secondary_action_label(__(\"Capture\"));\n\t\tthis.dialog.set_secondary_action(() => {\n\t\t\tif (frappe.is_mobile()) {\n\t\t\t\tme.show_for_mobile();\n\t\t\t} else {\n\t\t\t\tme.render_stream();\n\t\t\t}\n\t\t});\n\t}\n\n\tsetup_submit_action() {\n\t\tlet me = this;\n\n\t\tthis.dialog.set_primary_action(__('Submit'), () => {\n\t\t\tme.hide();\n\n\t\t\tif (me.callback) {\n\t\t\t\tme.callback(me.images);\n\t\t\t}\n\t\t});\n\t}\n\n\thide() {\n\t\tif (this.dialog) this.dialog.hide();\n\t\tthis.stop_media_stream();\n\t}\n\n\tstop_media_stream() {\n\t\tif (this.stream) {\n\t\t\tthis.stream.getTracks().forEach((track) => {\n\t\t\t\ttrack.stop();\n\t\t\t});\n\t\t}\n\t}\n\n\tsubmit(fn) {\n\t\tthis.callback = fn;\n\t}\n};\nfrappe.ui.Capture.OPTIONS = {\n\ttitle: __(\"Camera\"),\n\tanimate: false,\n\terror: false\n};\nfrappe.ui.Capture.ERR_MESSAGE = __('Unable to load camera.');\nfrappe.ui.Capture.TEMPLATE = `\n
\n\t
\n\t\t\n\t
\n\t
\n\t
\n
\n`;",";(function ($) { $.fn.datepicker.language['cs'] = {\n days: ['Neděle', 'Pondělí', 'Úterý', 'Středa', 'Čtvrtek', 'Pátek', 'Sobota'],\n daysShort: ['Ne', 'Po', 'Út', 'St', 'Čt', 'Pá', 'So'],\n daysMin: ['Ne', 'Po', 'Út', 'St', 'Čt', 'Pá', 'So'],\n months: ['Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec'],\n monthsShort: ['Led', 'Úno', 'Bře', 'Dub', 'Kvě', 'Čvn', 'Čvc', 'Srp', 'Zář', 'Říj', 'Lis', 'Pro'],\n today: 'Dnes',\n clear: 'Vymazat',\n dateFormat: 'dd.mm.yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['da'] = {\n days: ['Søndag', 'Mandag', 'Tirsdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lørdag'],\n daysShort: ['Søn', 'Man', 'Tir', 'Ons', 'Tor', 'Fre', 'Lør'],\n daysMin: ['Sø', 'Ma', 'Ti', 'On', 'To', 'Fr', 'Lø'],\n months: ['Januar','Februar','Marts','April','Maj','Juni', 'Juli','August','September','Oktober','November','December'],\n monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'],\n today: 'I dag',\n clear: 'Nulstil',\n dateFormat: 'dd/mm/yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['de'] = {\n days: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],\n daysShort: ['Son', 'Mon', 'Die', 'Mit', 'Don', 'Fre', 'Sam'],\n daysMin: ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],\n months: ['Januar','Februar','März','April','Mai','Juni', 'Juli','August','September','Oktober','November','Dezember'],\n monthsShort: ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],\n today: 'Heute',\n clear: 'Aufräumen',\n dateFormat: 'dd.mm.yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n};\n })(jQuery);",";(function ($) { $.fn.datepicker.language['en'] = {\n days: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n daysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n daysMin: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n months: ['January','February','March','April','May','June', 'July','August','September','October','November','December'],\n monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n today: 'Today',\n clear: 'Clear',\n dateFormat: 'mm/dd/yyyy',\n timeFormat: 'hh:ii aa',\n firstDay: 0\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['es'] = {\n days: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'],\n daysShort: ['Dom', 'Lun', 'Mar', 'Mie', 'Jue', 'Vie', 'Sab'],\n daysMin: ['Do', 'Lu', 'Ma', 'Mi', 'Ju', 'Vi', 'Sa'],\n months: ['Enero','Febrero','Marzo','Abril','Mayo','Junio', 'Julio','Augosto','Septiembre','Octubre','Noviembre','Diciembre'],\n monthsShort: ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic'],\n today: 'Hoy',\n clear: 'Limpiar',\n dateFormat: 'dd/mm/yyyy',\n timeFormat: 'hh:ii aa',\n firstDay: 1\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['fi'] = {\n days: ['Sunnuntai', 'Maanantai', 'Tiistai', 'Keskiviikko', 'Torstai', 'Perjantai', 'Lauantai'],\n daysShort: ['Su', 'Ma', 'Ti', 'Ke', 'To', 'Pe', 'La'],\n daysMin: ['Su', 'Ma', 'Ti', 'Ke', 'To', 'Pe', 'La'],\n months: ['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kesäkuu', 'Heinäkuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'],\n monthsShort: ['Tammi', 'Helmi', 'Maalis', 'Huhti', 'Touko', 'Kesä', 'Heinä', 'Elo', 'Syys', 'Loka', 'Marras', 'Joulu'],\n today: 'Tänään',\n clear: 'Tyhjennä',\n dateFormat: 'dd.mm.yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n};\n })(jQuery);",";(function ($) { $.fn.datepicker.language['fr'] = {\n days: ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'],\n daysShort: ['Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam'],\n daysMin: ['Di', 'Lu', 'Ma', 'Me', 'Je', 'Ve', 'Sa'],\n months: ['Janvier','Février','Mars','Avril','Mai','Juin', 'Juillet','Août','Septembre','Octobre','Novembre','Decembre'],\n monthsShort: ['Jan', 'Fév', 'Mars', 'Avr', 'Mai', 'Juin', 'Juil', 'Août', 'Sep', 'Oct', 'Nov', 'Dec'],\n today: \"Aujourd'hui\",\n clear: 'Effacer',\n dateFormat: 'dd/mm/yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n}; })(jQuery);",";(function ($) { ;(function ($) { $.fn.datepicker.language['hu'] = {\n days: ['Vasárnap', 'Hétfő', 'Kedd', 'Szerda', 'Csütörtök', 'Péntek', 'Szombat'],\n daysShort: ['Va', 'Hé', 'Ke', 'Sze', 'Cs', 'Pé', 'Szo'],\n daysMin: ['V', 'H', 'K', 'Sz', 'Cs', 'P', 'Sz'],\n months: ['Január', 'Február', 'Március', 'Április', 'Május', 'Június', 'Július', 'Augusztus', 'Szeptember', 'Október', 'November', 'December'],\n monthsShort: ['Jan', 'Feb', 'Már', 'Ápr', 'Máj', 'Jún', 'Júl', 'Aug', 'Szep', 'Okt', 'Nov', 'Dec'],\n today: 'Ma',\n clear: 'Törlés',\n dateFormat: 'yyyy-mm-dd',\n timeFormat: 'hh:ii aa',\n firstDay: 1\n}; })(jQuery); })(jQuery);",";(function ($) { $.fn.datepicker.language['nl'] = {\n days: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],\n daysShort: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],\n daysMin: ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],\n months: ['Januari', 'Februari', 'Maart', 'April', 'Mei', 'Juni', 'Juli', 'Augustus', 'September', 'Oktober', 'November', 'December'],\n monthsShort: ['Jan', 'Feb', 'Mrt', 'Apr', 'Mei', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'],\n today: 'Vandaag',\n clear: 'Legen',\n dateFormat: 'dd-MM-yy',\n timeFormat: 'hh:ii',\n firstDay: 0\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['pl'] = {\n days: ['Niedziela', 'Poniedziałek', 'Wtorek', 'Środa', 'Czwartek', 'Piątek', 'Sobota'],\n daysShort: ['Nie', 'Pon', 'Wto', 'Śro', 'Czw', 'Pią', 'Sob'],\n daysMin: ['Nd', 'Pn', 'Wt', 'Śr', 'Czw', 'Pt', 'So'],\n months: ['Styczeń','Luty','Marzec','Kwiecień','Maj','Czerwiec', 'Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień'],\n monthsShort: ['Sty', 'Lut', 'Mar', 'Kwi', 'Maj', 'Cze', 'Lip', 'Sie', 'Wrz', 'Paź', 'Lis', 'Gru'],\n today: 'Dzisiaj',\n clear: 'Wyczyść',\n dateFormat: 'yyyy-mm-dd',\n timeFormat: 'hh:ii:aa',\n firstDay: 1\n};\n })(jQuery);",";(function ($) { $.fn.datepicker.language['pt-BR'] = {\n days: ['Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'],\n daysShort: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sab'],\n daysMin: ['Do', 'Se', 'Te', 'Qu', 'Qu', 'Se', 'Sa'],\n months: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'],\n monthsShort: ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'],\n today: 'Hoje',\n clear: 'Limpar',\n dateFormat: 'dd/mm/yyyy',\n timeFormat: 'hh:ii',\n firstDay: 0\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['pt'] = {\n days: ['Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'],\n daysShort: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sab'],\n daysMin: ['Do', 'Se', 'Te', 'Qa', 'Qi', 'Sx', 'Sa'],\n months: ['Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho', 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro'],\n monthsShort: ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'],\n today: 'Hoje',\n clear: 'Limpar',\n dateFormat: 'dd/mm/yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['ro'] = {\n days: ['Duminică', 'Luni', 'Marţi', 'Miercuri', 'Joi', 'Vineri', 'Sâmbătă'],\n daysShort: ['Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sâm'],\n daysMin: ['D', 'L', 'Ma', 'Mi', 'J', 'V', 'S'],\n months: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Iunie','Iulie','August','Septembrie','Octombrie','Noiembrie','Decembrie'],\n monthsShort: ['Ian', 'Feb', 'Mar', 'Apr', 'Mai', 'Iun', 'Iul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec'],\n today: 'Azi',\n clear: 'Şterge',\n dateFormat: 'dd.mm.yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n};\n })(jQuery);",";(function ($) { $.fn.datepicker.language['sk'] = {\n days: ['Nedeľa', 'Pondelok', 'Utorok', 'Streda', 'Štvrtok', 'Piatok', 'Sobota'],\n daysShort: ['Ned', 'Pon', 'Uto', 'Str', 'Štv', 'Pia', 'Sob'],\n daysMin: ['Ne', 'Po', 'Ut', 'St', 'Št', 'Pi', 'So'],\n months: ['Január','Február','Marec','Apríl','Máj','Jún', 'Júl','August','September','Október','November','December'],\n monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'Máj', 'Jún', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'],\n today: 'Dnes',\n clear: 'Vymazať',\n dateFormat: 'dd.mm.yyyy',\n timeFormat: 'hh:ii',\n firstDay: 1\n}; })(jQuery);",";(function ($) { $.fn.datepicker.language['zh'] = {\n days: ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],\n daysShort: ['日', '一', '二', '三', '四', '五', '六'],\n daysMin: ['日', '一', '二', '三', '四', '五', '六'],\n months: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],\n monthsShort: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],\n today: '今天',\n clear: '清除',\n dateFormat: 'yyyy-mm-dd',\n timeFormat: 'hh:ii',\n firstDay: 1\n}; })(jQuery);","import \"air-datepicker/dist/js/i18n/datepicker.cs.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.da.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.de.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.en.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.es.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.fi.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.fr.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.hu.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.nl.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.pl.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.pt-BR.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.pt.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.ro.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.sk.js\";\nimport \"air-datepicker/dist/js/i18n/datepicker.zh.js\";\n\n(function ($) {\n\t$.fn.datepicker.language['ar'] = {\n\t\tdays: ['الأحد', 'الأثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعه', 'السبت'],\n\t\tdaysShort: ['الأحد', 'الأثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعه', 'السبت'],\n\t\tdaysMin: ['الأحد', 'الأثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعه', 'السبت'],\n\t\tmonths: ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'اكتوبر', 'نوفمبر', 'ديسمبر'],\n\t\tmonthsShort: ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'اكتوبر', 'نوفمبر', 'ديسمبر'],\n\t\ttoday: 'اليوم',\n\t\tclear: 'Clear',\n\t\tdateFormat: 'dd/mm/yyyy',\n\t\ttimeFormat: 'hh:ii aa',\n\t\tfirstDay: 0\n\t};\n})(jQuery);\n\n(function ($) {\n\t$.fn.datepicker.language['gr'] = {\n\t\tdays: ['Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέμπτη', 'Παρασκευή', 'Σάββατο'],\n\t\tdaysShort: ['Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ'],\n\t\tdaysMin: ['Κυ', 'Δε', 'Τρ', 'Τε', 'Πε', 'Πα', 'Σα'],\n\t\tmonths: ['Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάιος', 'Ιούνιος', 'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος'],\n\t\tmonthsShort: ['Ιαν', 'Φεβ', 'Μαρ', 'Απρ', 'Μάι', 'Ι/ν', 'Ι/λ', 'Αυγ', 'Σεπ', 'Οκτ', 'Νοε', 'Δεκ'],\n\t\ttoday: 'Σήμερα',\n\t\tclear: 'Καθαρισμός',\n\t\tdateFormat: 'dd/mm/yyyy',\n\t\ttimeFormat: 'hh:ii aa',\n\t\tfirstDay: 0\n\t};\n})(jQuery);\n\n\n(function ($) {\n\t$.fn.datepicker.language['it'] = {\n\t\tdays: ['Domenica', 'Lunedì', 'Martedì', 'Mercoledì', 'Giovedì', 'Venerdì', 'Sabato'],\n\t\tdaysShort: ['Dom', 'Lun', 'Mar', 'Mer', 'Gio', 'Ven', 'Sab'],\n\t\tdaysMin: ['Do', 'Lu', 'Ma', 'Me', 'Gi', 'Ve', 'Sa'],\n\t\tmonths: ['Gennaio', 'Febbraio', 'Marzo', 'Aprile', 'Maggio', 'Giugno', 'Luglio', 'Agosto',\n\t\t\t'Settembre', 'Ottobre', 'Novembre', 'Dicembre'],\n\t\tmonthsShort: ['Gen', 'Feb', 'Mar', 'Apr', 'Mag', 'Giu', 'Lug', 'Ago', 'Set', 'Ott', 'Nov', 'Dic'],\n\t\ttoday: 'Oggi',\n\t\tclear: 'Reset',\n\t\tdateFormat: 'dd/mm/yyyy',\n\t\ttimeFormat: 'hh:ii',\n\t\tfirstDay: 1\n\t};\n})(jQuery);\n","frappe.ui.form.Control = Class.extend({\n\tinit: function(opts) {\n\t\t$.extend(this, opts);\n\t\tthis.make();\n\n\t\t// if developer_mode=1, show fieldname as tooltip\n\t\tif(frappe.boot.user && frappe.boot.developer_mode===1 && this.$wrapper) {\n\t\t\tthis.$wrapper.attr(\"title\", __(this.df.fieldname));\n\t\t}\n\n\t\tif(this.render_input) {\n\t\t\tthis.refresh();\n\t\t}\n\t},\n\tmake: function() {\n\t\tthis.make_wrapper();\n\t\tthis.$wrapper\n\t\t\t.attr(\"data-fieldtype\", this.df.fieldtype)\n\t\t\t.attr(\"data-fieldname\", this.df.fieldname);\n\t\tthis.wrapper = this.$wrapper.get(0);\n\t\tthis.wrapper.fieldobj = this; // reference for event handlers\n\t},\n\n\tmake_wrapper: function() {\n\t\tthis.$wrapper = $(\"
\").appendTo(this.parent);\n\n\t\t// alias\n\t\tthis.wrapper = this.$wrapper;\n\t},\n\n\ttoggle: function(show) {\n\t\tthis.df.hidden = show ? 0 : 1;\n\t\tthis.refresh();\n\t},\n\n\t// returns \"Read\", \"Write\" or \"None\"\n\t// as strings based on permissions\n\tget_status: function(explain) {\n\t\tif (this.df.get_status) {\n\t\t\treturn this.df.get_status(this);\n\t\t}\n\n\t\tif ((!this.doctype && !this.docname) || this.df.parenttype === 'Web Form' || this.df.is_web_form) {\n\t\t\t// like in case of a dialog box\n\t\t\tif (cint(this.df.hidden)) {\n\t\t\t\t// eslint-disable-next-line\n\t\t\t\tif (explain) console.log(\"By Hidden: None\"); // eslint-disable-line no-console\n\t\t\t\treturn \"None\";\n\n\t\t\t} else if (cint(this.df.hidden_due_to_dependency)) {\n\t\t\t\t// eslint-disable-next-line\n\t\t\t\tif(explain) console.log(\"By Hidden Dependency: None\"); // eslint-disable-line no-console\n\t\t\t\treturn \"None\";\n\n\t\t\t} else if (cint(this.df.read_only)) {\n\t\t\t\t// eslint-disable-next-line\n\t\t\t\tif (explain) console.log(\"By Read Only: Read\"); // eslint-disable-line no-console\n\t\t\t\treturn \"Read\";\n\n\t\t\t} else if ((this.grid &&\n\t\t\t\t\t\tthis.grid.display_status == 'Read') ||\n\t\t\t\t\t\t(this.layout &&\n\t\t\t\t\t\tthis.layout.grid &&\n\t\t\t\t\t\tthis.layout.grid.display_status == 'Read')) {\n\t\t\t\t// parent grid is read\n\t\t\t\tif (explain) console.log(\"By Parent Grid Read-only: Read\"); // eslint-disable-line no-console\n\t\t\t\treturn \"Read\";\n\t\t\t}\n\n\t\t\treturn \"Write\";\n\t\t}\n\n\t\tvar status = frappe.perm.get_field_display_status(this.df,\n\t\t\tfrappe.model.get_doc(this.doctype, this.docname), this.perm || (this.frm && this.frm.perm), explain);\n\n\t\t// Match parent grid controls read only status\n\t\tif (status === 'Write' && (this.grid || (this.layout && this.layout.grid) && !cint(this.df.allow_on_submit))) {\n\t\t\tvar grid = this.grid || this.layout.grid;\n\t\t\tif (grid.display_status == 'Read') {\n\t\t\t\tstatus = 'Read';\n\t\t\t\tif (explain) console.log(\"By Parent Grid Read-only: Read\"); // eslint-disable-line no-console\n\t\t\t}\n\t\t}\n\n\t\t// hide if no value\n\t\tif (this.doctype && status===\"Read\" && !this.only_input\n\t\t\t&& is_null(frappe.model.get_value(this.doctype, this.docname, this.df.fieldname))\n\t\t\t&& !in_list([\"HTML\", \"Image\", \"Button\"], this.df.fieldtype)) {\n\n\t\t\t// eslint-disable-next-line\n\t\t\tif (explain) console.log(\"By Hide Read-only, null fields: None\"); // eslint-disable-line no-console\n\t\t\tstatus = \"None\";\n\t\t}\n\n\t\treturn status;\n\t},\n\trefresh: function() {\n\t\tthis.disp_status = this.get_status();\n\t\tthis.$wrapper\n\t\t\t&& this.$wrapper.toggleClass(\"hide-control\", this.disp_status==\"None\")\n\t\t\t&& this.refresh_input\n\t\t\t&& this.refresh_input();\n\n\t\tvar value = this.get_value();\n\n\t\tthis.show_translatable_button(value);\n\t},\n\tshow_translatable_button(value) {\n\t\t// Disable translation non-string fields or special string fields\n\t\tif (!frappe.model\n\t\t\t|| !this.frm\n\t\t\t|| !this.doc\n\t\t\t|| !this.df.translatable\n\t\t\t|| !frappe.model.can_write('Translation')\n\t\t\t|| !value) return;\n\n\t\t// Disable translation in website\n\t\tif (!frappe.views || !frappe.views.TranslationManager) return;\n\n\t\t// Already attached button\n\t\tif (this.$wrapper.find('.clearfix .btn-translation').length) return;\n\n\t\tconst translation_btn =\n\t\t\t`\n\t\t\t\t\n\t\t\t`;\n\n\t\t$(translation_btn)\n\t\t\t.appendTo(this.$wrapper.find('.clearfix'))\n\t\t\t.on('click', () => {\n\t\t\t\tif (!this.doc.__islocal) {\n\t\t\t\t\tnew frappe.views.TranslationManager({\n\t\t\t\t\t\t'df': this.df,\n\t\t\t\t\t\t'source_text': this.value,\n\t\t\t\t\t\t'target_language': this.doc.language,\n\t\t\t\t\t\t'doc': this.doc\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\n\t},\n\tget_doc: function() {\n\t\treturn this.doctype && this.docname\n\t\t\t&& locals[this.doctype] && locals[this.doctype][this.docname] || {};\n\t},\n\tget_model_value: function() {\n\t\tif(this.doc) {\n\t\t\treturn this.doc[this.df.fieldname];\n\t\t}\n\t},\n\tset_value: function(value) {\n\t\treturn this.validate_and_set_in_model(value);\n\t},\n\tparse_validate_and_set_in_model: function(value, e) {\n\t\tif(this.parse) {\n\t\t\tvalue = this.parse(value);\n\t\t}\n\t\treturn this.validate_and_set_in_model(value, e);\n\t},\n\tvalidate_and_set_in_model: function(value, e) {\n\t\tvar me = this;\n\t\tlet force_value_set = (this.doc && this.doc.__run_link_triggers);\n\t\tlet is_value_same = (this.get_model_value() === value);\n\n\t\tif (this.inside_change_event || (!force_value_set && is_value_same)) {\n\t\t\treturn Promise.resolve();\n\t\t}\n\n\t\tthis.inside_change_event = true;\n\t\tfunction set(value) {\n\t\t\tme.inside_change_event = false;\n\t\t\treturn frappe.run_serially([\n\t\t\t\t() => me._validated = true,\n\t\t\t\t() => me.set_model_value(value),\n\t\t\t\t() => delete me._validated,\n\t\t\t\t() => {\n\t\t\t\t\tme.set_mandatory && me.set_mandatory(value);\n\n\t\t\t\t\tif(me.df.change || me.df.onchange) {\n\t\t\t\t\t\t// onchange event specified in df\n\t\t\t\t\t\tlet set = (me.df.change || me.df.onchange).apply(me, [e]);\n\t\t\t\t\t\tme.set_invalid && me.set_invalid();\n\t\t\t\t\t\treturn set;\n\t\t\t\t\t}\n\t\t\t\t\tme.set_invalid && me.set_invalid();\n\t\t\t\t}\n\t\t\t]);\n\t\t};\n\n\t\tvalue = this.validate(value);\n\t\tif (value && value.then) {\n\t\t\t// got a promise\n\t\t\treturn value.then((value) => set(value));\n\t\t} else {\n\t\t\t// all clear\n\t\t\treturn set(value);\n\t\t}\n\t},\n\tget_value: function() {\n\t\tif(this.get_status()==='Write') {\n\t\t\treturn this.get_input_value ?\n\t\t\t\t(this.parse ? this.parse(this.get_input_value()) : this.get_input_value()) :\n\t\t\t\tundefined;\n\t\t} else {\n\t\t\treturn this.value || undefined;\n\t\t}\n\t},\n\tset_model_value: function(value) {\n\t\tif(this.frm) {\n\t\t\tthis.last_value = value;\n\t\t\treturn frappe.model.set_value(this.doctype, this.docname, this.df.fieldname,\n\t\t\t\tvalue, this.df.fieldtype);\n\t\t} else {\n\t\t\tif(this.doc) {\n\t\t\t\tthis.doc[this.df.fieldname] = value;\n\t\t\t}\n\t\t\tthis.set_input(value);\n\t\t\treturn Promise.resolve();\n\t\t}\n\t},\n\tset_focus: function() {\n\t\tif(this.$input) {\n\t\t\tthis.$input.get(0).focus();\n\t\t\treturn true;\n\t\t}\n\t}\n});\n","frappe.ui.form.ControlInput = frappe.ui.form.Control.extend({\n\thorizontal: true,\n\tmake: function() {\n\t\t// parent element\n\t\tthis._super();\n\t\tthis.set_input_areas();\n\n\t\t// set description\n\t\tthis.set_max_width();\n\t},\n\tmake_wrapper: function() {\n\t\tif(this.only_input) {\n\t\t\tthis.$wrapper = $('
').appendTo(this.parent);\n\t\t} else {\n\t\t\tthis.$wrapper = $('
\\\n\t\t\t\t
\\\n\t\t\t\t\t
\\\n\t\t\t\t\t\t\\\n\t\t\t\t\t
\\\n\t\t\t\t\t
\\\n\t\t\t\t\t\t
\\\n\t\t\t\t\t\t
\\\n\t\t\t\t\t\t

\\\n\t\t\t\t\t
\\\n\t\t\t\t
\\\n\t\t\t
').appendTo(this.parent);\n\t\t}\n\t},\n\ttoggle_label: function(show) {\n\t\tthis.$wrapper.find(\".control-label\").toggleClass(\"hide\", !show);\n\t},\n\ttoggle_description: function(show) {\n\t\tthis.$wrapper.find(\".help-box\").toggleClass(\"hide\", !show);\n\t},\n\tset_input_areas: function() {\n\t\tif(this.only_input) {\n\t\t\tthis.input_area = this.wrapper;\n\t\t} else {\n\t\t\tthis.label_area = this.label_span = this.$wrapper.find(\"label\").get(0);\n\t\t\tthis.input_area = this.$wrapper.find(\".control-input\").get(0);\n\t\t\tthis.$input_wrapper = this.$wrapper.find(\".control-input-wrapper\");\n\t\t\t// keep a separate display area to rendered formatted values\n\t\t\t// like links, currencies, HTMLs etc.\n\t\t\tthis.disp_area = this.$wrapper.find(\".control-value\").get(0);\n\t\t}\n\t},\n\tset_max_width: function() {\n\t\tif(this.horizontal) {\n\t\t\tthis.$wrapper.addClass(\"input-max-width\");\n\t\t}\n\t},\n\n\t// update input value, label, description\n\t// display (show/hide/read-only),\n\t// mandatory style on refresh\n\trefresh_input: function() {\n\t\tvar me = this;\n\t\tvar make_input = function() {\n\t\t\tif (!me.has_input) {\n\t\t\t\tme.make_input();\n\t\t\t\tif (me.df.on_make) {\n\t\t\t\t\tme.df.on_make(me);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\n\t\tvar update_input = function() {\n\t\t\tif (me.doctype && me.docname) {\n\t\t\t\tme.set_input(me.value);\n\t\t\t} else {\n\t\t\t\tme.set_input(me.value || null);\n\t\t\t}\n\t\t};\n\n\t\tif (me.disp_status != \"None\") {\n\t\t\t// refresh value\n\t\t\tif (me.frm) {\n\t\t\t\tme.value = frappe.model.get_value(me.doctype, me.docname, me.df.fieldname);\n\t\t\t} else if (me.doc) {\n\t\t\t\tme.value = me.doc[me.df.fieldname];\n\t\t\t}\n\n\t\t\tif (me.can_write()) {\n\t\t\t\tme.disp_area && $(me.disp_area).toggle(false);\n\t\t\t\t$(me.input_area).toggle(true);\n\t\t\t\tme.$input && me.$input.prop(\"disabled\", false);\n\t\t\t\tmake_input();\n\t\t\t\tupdate_input();\n\t\t\t} else {\n\t\t\t\tif (me.only_input) {\n\t\t\t\t\tmake_input();\n\t\t\t\t\tupdate_input();\n\t\t\t\t} else {\n\t\t\t\t\t$(me.input_area).toggle(false);\n\t\t\t\t\tif (me.disp_area) {\n\t\t\t\t\t\tme.set_disp_area(me.value);\n\t\t\t\t\t\t$(me.disp_area).toggle(true);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tme.$input && me.$input.prop(\"disabled\", true);\n\t\t\t}\n\n\t\t\tme.set_description();\n\t\t\tme.set_label();\n\t\t\tme.set_mandatory(me.value);\n\t\t\tme.set_bold();\n\t\t\tme.set_required();\n\t\t}\n\t},\n\n\tcan_write() {\n\t\treturn this.disp_status == \"Write\";\n\t},\n\n\tset_disp_area: function(value) {\n\t\tif(in_list([\"Currency\", \"Int\", \"Float\"], this.df.fieldtype)\n\t\t\t&& (this.value === 0 || value === 0)) {\n\t\t\t// to set the 0 value in readonly for currency, int, float field\n\t\t\tvalue = 0;\n\t\t} else {\n\t\t\tvalue = this.value || value;\n\t\t}\n\t\tif (this.df.fieldtype === 'Data') {\n\t\t\tvalue = frappe.utils.escape_html(value);\n\t\t}\n\t\tlet doc = this.doc || (this.frm && this.frm.doc);\n\t\tlet display_value = frappe.format(value, this.df, { no_icon: true, inline: true }, doc);\n\t\tthis.disp_area && $(this.disp_area).html(display_value);\n\t},\n\tset_label: function(label) {\n\t\tif(label) this.df.label = label;\n\n\t\tif(this.only_input || this.df.label==this._label)\n\t\t\treturn;\n\n\t\tvar icon = \"\";\n\t\tthis.label_span.innerHTML = (icon ? ' ' : \"\") +\n\t\t\t__(this.df.label) || \" \";\n\t\tthis._label = this.df.label;\n\t},\n\tset_description: function(description) {\n\t\tif (description !== undefined) {\n\t\t\tthis.df.description = description;\n\t\t}\n\t\tif (this.only_input || this.df.description===this._description) {\n\t\t\treturn;\n\t\t}\n\t\tif (this.df.description) {\n\t\t\tthis.$wrapper.find(\".help-box\").html(__(this.df.description));\n\t\t} else {\n\t\t\tthis.set_empty_description();\n\t\t}\n\t\tthis._description = this.df.description;\n\t},\n\tset_new_description: function(description) {\n\t\tthis.$wrapper.find(\".help-box\").html(description);\n\t},\n\tset_empty_description: function() {\n\t\tthis.$wrapper.find(\".help-box\").html(\"\");\n\t},\n\tset_mandatory: function(value) {\n\t\tthis.$wrapper.toggleClass(\"has-error\", Boolean(this.df.reqd && is_null(value)));\n\t},\n\tset_invalid: function () {\n\t\tlet invalid = !!this.df.invalid;\n\t\tif (this.grid) {\n\t\t\tthis.$wrapper.parents('.grid-static-col').toggleClass('invalid', invalid);\n\t\t\tthis.$input.toggleClass('invalid', invalid);\n\t\t\tthis.grid_row.columns[this.df.fieldname].is_invalid = invalid;\n\t\t} else {\n\t\t\tthis.$wrapper.toggleClass('has-error', invalid);\n\t\t}\n\t},\n\tset_required() {\n\t\tthis.label_area && $(this.label_area).toggleClass('reqd', Boolean(this.df.reqd));\n\t},\n\tset_bold: function() {\n\t\tif(this.$input) {\n\t\t\tthis.$input.toggleClass(\"bold\", !!(this.df.bold || this.df.reqd));\n\t\t}\n\t\tif(this.disp_area) {\n\t\t\t$(this.disp_area).toggleClass(\"bold\", !!(this.df.bold || this.df.reqd));\n\t\t}\n\t}\n});\n","frappe.provide('frappe.phone_call');\n\nfrappe.ui.form.ControlData = frappe.ui.form.ControlInput.extend({\n\thtml_element: \"input\",\n\tinput_type: \"text\",\n\ttrigger_change_on_input_event: true,\n\tmake_input: function() {\n\t\tif(this.$input) return;\n\n\t\tthis.$input = $(\"<\"+ this.html_element +\">\")\n\t\t\t.attr(\"type\", this.input_type)\n\t\t\t.attr(\"autocomplete\", \"off\")\n\t\t\t.addClass(\"input-with-feedback form-control\")\n\t\t\t.prependTo(this.input_area);\n\n\t\tthis.$input.on('paste', (e) => {\n\t\t\tlet pasted_data = frappe.utils.get_clipboard_data(e);\n\t\t\tlet maxlength = this.$input.attr('maxlength');\n\t\t\tif (maxlength && pasted_data.length > maxlength) {\n\t\t\t\tlet warning_message = __('The value you pasted was {0} characters long. Max allowed characters is {1}.', [\n\t\t\t\t\tcstr(pasted_data.length).bold(),\n\t\t\t\t\tcstr(maxlength).bold()\n\t\t\t\t]);\n\n\t\t\t\t// Only show edit link to users who can update the doctype\n\t\t\t\tif (this.frm && frappe.model.can_write(this.frm.doctype)) {\n\t\t\t\t\tlet doctype_edit_link = null;\n\t\t\t\t\tif (this.frm.meta.custom) {\n\t\t\t\t\t\tdoctype_edit_link = frappe.utils.get_form_link(\n\t\t\t\t\t\t\t'DocType',\n\t\t\t\t\t\t\tthis.frm.doctype, true,\n\t\t\t\t\t\t\t__('this form')\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tdoctype_edit_link = frappe.utils.get_form_link('Customize Form', 'Customize Form', true, null, {\n\t\t\t\t\t\t\tdoc_type: this.frm.doctype\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tlet edit_note = __('{0}: You can increase the limit for the field if required via {1}', [\n\t\t\t\t\t\t__('Note').bold(),\n\t\t\t\t\t\tdoctype_edit_link\n\t\t\t\t\t]);\n\t\t\t\t\twarning_message += `

${edit_note}`;\n\t\t\t\t}\n\n\t\t\t\tfrappe.msgprint({\n\t\t\t\t\tmessage: warning_message,\n\t\t\t\t\tindicator: 'orange',\n\t\t\t\t\ttitle: __('Data Clipped')\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\tthis.set_input_attributes();\n\t\tthis.input = this.$input.get(0);\n\t\tthis.has_input = true;\n\t\tthis.bind_change_event();\n\t\tthis.setup_autoname_check();\n\n\t\tif (this.df.options == 'URL') {\n\t\t\tthis.setup_url_field();\n\t\t}\n\n\t\tif (this.df.options == 'Barcode') {\n\t\t\tthis.setup_barcode_field();\n\t\t}\n\t},\n\tsetup_url_field: function() {\n\t\tthis.$wrapper.find('.control-input').append(\n\t\t\t`\n\t\t\t\t\n\t\t\t\t\t${frappe.utils.icon('link-url', 'sm')}\n\t\t\t\t\n\t\t\t`\n\t\t);\n\n\t\tthis.$link = this.$wrapper.find('.link-btn');\n\t\tthis.$link_open = this.$link.find('.btn-open');\n\t\tthis.$input[0].style.paddingRight = \"24px\"; // To prevent text-icon mixup\n\n\t\tthis.$input.on(\"focus\", () => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tlet inputValue = this.get_input_value();\n\n\t\t\t\tif (inputValue && validate_url(inputValue)) {\n\t\t\t\t\tthis.$link.toggle(true);\n\t\t\t\t\tthis.$link_open.attr('href', this.get_input_value());\n\t\t\t\t}\n\t\t\t}, 500);\n\t\t});\n\n\n\t\tthis.$input.bind(\"input\", () => {\n\t\t\tlet inputValue = this.get_input_value();\n\n\t\t\tif (inputValue && validate_url(inputValue)) {\n\t\t\t\tthis.$link.toggle(true);\n\t\t\t\tthis.$link_open.attr('href', this.get_input_value());\n\t\t\t} else {\n\t\t\t\tthis.$link.toggle(false);\n\t\t\t}\n\t\t});\n\n\t\tthis.$input.on(\"blur\", () => {\n\t\t\t// if this disappears immediately, the user's click\n\t\t\t// does not register, hence timeout\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.$link.toggle(false);\n\t\t\t}, 500);\n\t\t});\n\t},\n\tsetup_barcode_field: function() {\n\t\tthis.$wrapper.find('.control-input').append(\n\t\t\t`\n\t\t\t\t\n\t\t\t\t\t${frappe.utils.icon('scan', 'sm')}\n\t\t\t\t\n\t\t\t`\n\t\t);\n\n\t\tthis.$scan_btn = this.$wrapper.find('.link-btn');\n\t\tthis.$scan_btn.toggle(true);\n\n\t\tconst me = this;\n\t\tthis.$scan_btn.on('click', 'a', () => {\n\t\t\tnew frappe.ui.Scanner({\n\t\t\t\tdialog: true,\n\t\t\t\tmultiple: false,\n\t\t\t\ton_scan(data) {\n\t\t\t\t\tif (data && data.result && data.result.text) {\n\t\t\t\t\t\tme.set_value(data.result.text);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t},\n\tbind_change_event: function() {\n\t\tconst change_handler = e => {\n\t\t\tif (this.change) this.change(e);\n\t\t\telse {\n\t\t\t\tlet value = this.get_input_value();\n\t\t\t\tthis.parse_validate_and_set_in_model(value, e);\n\t\t\t}\n\t\t};\n\t\tthis.$input.on(\"change\", change_handler);\n\t\tif (this.trigger_change_on_input_event && !this.in_grid()) {\n\t\t\t// debounce to avoid repeated validations on value change\n\t\t\tthis.$input.on(\"input\", frappe.utils.debounce(change_handler, 500));\n\t\t}\n\t},\n\tsetup_autoname_check: function() {\n\t\tif (!this.df.parent) return;\n\t\tthis.meta = frappe.get_meta(this.df.parent);\n\t\tif (this.meta && ((this.meta.autoname\n\t\t\t&& this.meta.autoname.substr(0, 6)==='field:'\n\t\t\t&& this.meta.autoname.substr(6) === this.df.fieldname) || this.df.fieldname==='__newname') ) {\n\t\t\tthis.$input.on('keyup', () => {\n\t\t\t\tthis.set_description('');\n\t\t\t\tif (this.doc && this.doc.__islocal) {\n\t\t\t\t\t// check after 1 sec\n\t\t\t\t\tlet timeout = setTimeout(() => {\n\t\t\t\t\t\t// clear any pending calls\n\t\t\t\t\t\tif (this.last_check) clearTimeout(this.last_check);\n\n\t\t\t\t\t\t// check if name exists\n\t\t\t\t\t\tfrappe.db.get_value(this.doctype, this.$input.val(),\n\t\t\t\t\t\t\t'name', (val) => {\n\t\t\t\t\t\t\t\tif (val && val.name) {\n\t\t\t\t\t\t\t\t\tthis.set_description(__('{0} already exists. Select another name', [val.name]));\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tthis.doc.parenttype\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.last_check = null;\n\t\t\t\t\t}, 1000);\n\t\t\t\t\tthis.last_check = timeout;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t},\n\tset_input_attributes: function() {\n\t\tif (in_list(\n\t\t\t['Data', 'Link', 'Dynamic Link', 'Password', 'Select', 'Read Only'],\n\t\t\tthis.df.fieldtype\n\t\t)) {\n\t\t\tthis.$input.attr(\"maxlength\", this.df.length || 140);\n\t\t}\n\n\t\tthis.$input\n\t\t\t.attr(\"data-fieldtype\", this.df.fieldtype)\n\t\t\t.attr(\"data-fieldname\", this.df.fieldname)\n\t\t\t.attr(\"placeholder\", this.df.placeholder || \"\");\n\t\tif(this.doctype) {\n\t\t\tthis.$input.attr(\"data-doctype\", this.doctype);\n\t\t}\n\t\tif(this.df.input_css) {\n\t\t\tthis.$input.css(this.df.input_css);\n\t\t}\n\t\tif(this.df.input_class) {\n\t\t\tthis.$input.addClass(this.df.input_class);\n\t\t}\n\t},\n\tset_input: function(value) {\n\t\tthis.last_value = this.value;\n\t\tthis.value = value;\n\t\tthis.set_formatted_input(value);\n\t\tthis.set_disp_area(value);\n\t\tthis.set_mandatory && this.set_mandatory(value);\n\t},\n\tset_formatted_input: function(value) {\n\t\tthis.$input && this.$input.val(this.format_for_input(value));\n\t},\n\tget_input_value: function() {\n\t\treturn this.$input ? this.$input.val() : undefined;\n\t},\n\tformat_for_input: function(val) {\n\t\treturn val==null ? \"\" : val;\n\t},\n\tvalidate: function(v) {\n\t\tif (!v) {\n\t\t\treturn '';\n\t\t}\n\t\tif(this.df.is_filter) {\n\t\t\treturn v;\n\t\t}\n\t\tif(this.df.options == 'Phone') {\n\t\t\tthis.df.invalid = !validate_phone(v);\n\t\t\treturn v;\n\t\t} else if (this.df.options == 'Name') {\n\t\t\tthis.df.invalid = !validate_name(v);\n\t\t\treturn v;\n\t\t} else if(this.df.options == 'Email') {\n\t\t\tvar email_list = frappe.utils.split_emails(v);\n\t\t\tif (!email_list) {\n\t\t\t\treturn '';\n\t\t\t} else {\n\t\t\t\tlet email_invalid = false;\n\t\t\t\temail_list.forEach(function(email) {\n\t\t\t\t\tif (!validate_email(email)) {\n\t\t\t\t\t\temail_invalid = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tthis.df.invalid = email_invalid;\n\t\t\t\treturn v;\n\t\t\t}\n\t\t} else if (this.df.options == 'URL') {\n\t\t\tthis.df.invalid = !validate_url(v);\n\t\t\treturn v;\n\t\t} else {\n\t\t\treturn v;\n\t\t}\n\t},\n\ttoggle_container_scroll: function(el_class, scroll_class, add=false) {\n\t\tlet el = this.$input.parents(el_class)[0];\n\t\tif (el) $(el).toggleClass(scroll_class, add);\n\t},\n\n\tin_grid() {\n\t\treturn this.grid || this.layout && this.layout.grid;\n\t}\n});\n","frappe.ui.form.ControlInt = frappe.ui.form.ControlData.extend({\n\ttrigger_change_on_input_event: false,\n\tmake: function () {\n\t\tthis._super();\n\t\t// $(this.label_area).addClass('pull-right');\n\t\t// $(this.disp_area).addClass('text-right');\n\t},\n\tmake_input: function () {\n\t\tvar me = this;\n\t\tthis._super();\n\t\tthis.$input\n\t\t\t// .addClass(\"text-right\")\n\t\t\t.on(\"focus\", function () {\n\t\t\t\tsetTimeout(function () {\n\t\t\t\t\tif (!document.activeElement) return;\n\t\t\t\t\tdocument.activeElement.value\n\t\t\t\t\t\t= me.validate(document.activeElement.value);\n\t\t\t\t\tdocument.activeElement.select();\n\t\t\t\t}, 100);\n\t\t\t\treturn false;\n\t\t\t});\n\t},\n\tvalidate: function (value) {\n\t\treturn this.parse(value);\n\t},\n\teval_expression: function (value) {\n\t\tif (typeof value === 'string') {\n\t\t\tif (value.match(/^[0-9+\\-/* ]+$/)) {\n\t\t\t\t// If it is a string containing operators\n\t\t\t\ttry {\n\t\t\t\t\treturn eval(value);\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// bad expression\n\t\t\t\t\treturn value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn value;\n\t},\n\tparse: function (value) {\n\t\treturn cint(this.eval_expression(value), null);\n\t}\n});\n\nfrappe.ui.form.ControlLongInt = frappe.ui.form.ControlInt;\n","frappe.ui.form.ControlFloat = frappe.ui.form.ControlInt.extend({\n\tmake_input() {\n\t\tthis._super();\n\t\tconst change_handler = e => {\n\t\t\tif (this.change) this.change(e);\n\t\t\telse {\n\t\t\t\tlet value = this.get_input_value();\n\t\t\t\tthis.parse_validate_and_set_in_model(value, e);\n\t\t\t}\n\t\t};\n\t\t// convert to number format on focusout since focus converts it to flt.\n\t\tthis.$input.on(\"focusout\", change_handler);\n\t},\n\tparse: function(value) {\n\t\tvalue = this.eval_expression(value);\n\t\treturn isNaN(parseFloat(value)) ? null : flt(value, this.get_precision());\n\t},\n\n\tformat_for_input: function(value) {\n\t\tvar number_format;\n\t\tif (this.df.fieldtype===\"Float\" && this.df.options && this.df.options.trim()) {\n\t\t\tnumber_format = this.get_number_format();\n\t\t}\n\t\tvar formatted_value = format_number(value, number_format, this.get_precision());\n\t\treturn isNaN(Number(value)) ? \"\" : formatted_value;\n\t},\n\n\tget_number_format: function() {\n\t\tvar currency = frappe.meta.get_field_currency(this.df, this.get_doc());\n\t\treturn get_number_format(currency);\n\t},\n\n\tget_precision: function() {\n\t\t// round based on field precision or float precision, else don't round\n\t\treturn this.df.precision || cint(frappe.boot.sysdefaults.float_precision, null);\n\t}\n});\n\nfrappe.ui.form.ControlPercent = frappe.ui.form.ControlFloat;\n","frappe.ui.form.ControlCurrency = frappe.ui.form.ControlFloat.extend({\n\tformat_for_input: function(value) {\n\t\tvar formatted_value = format_number(value, this.get_number_format(), this.get_precision());\n\t\treturn isNaN(Number(value)) ? \"\" : formatted_value;\n\t},\n\n\tget_precision: function() {\n\t\t// always round based on field precision or currency's precision\n\t\t// this method is also called in this.parse()\n\t\tif (!this.df.precision) {\n\t\t\tif(frappe.boot.sysdefaults.currency_precision) {\n\t\t\t\tthis.df.precision = frappe.boot.sysdefaults.currency_precision;\n\t\t\t} else {\n\t\t\t\tthis.df.precision = get_number_format_info(this.get_number_format()).precision;\n\t\t\t}\n\t\t}\n\n\t\treturn this.df.precision;\n\t}\n});\n","frappe.ui.form.ControlDate = frappe.ui.form.ControlData.extend({\n\ttrigger_change_on_input_event: false,\n\tmake_input: function() {\n\t\tthis._super();\n\t\tthis.make_picker();\n\t},\n\tmake_picker: function() {\n\t\tthis.set_date_options();\n\t\tthis.set_datepicker();\n\t\tthis.set_t_for_today();\n\t},\n\tset_formatted_input: function(value) {\n\t\tthis._super(value);\n\t\tif (this.timepicker_only) return;\n\t\tif (!this.datepicker) return;\n\t\tif (!value) {\n\t\t\tthis.datepicker.clear();\n\t\t\treturn;\n\t\t} else if (value === \"Today\") {\n\t\t\tvalue = this.get_now_date();\n\t\t}\n\n\t\tlet should_refresh = this.last_value && this.last_value !== value;\n\n\t\tif (!should_refresh) {\n\t\t\tif(this.datepicker.selectedDates.length > 0) {\n\t\t\t\t// if date is selected but different from value, refresh\n\t\t\t\tconst selected_date =\n\t\t\t\t\tmoment(this.datepicker.selectedDates[0])\n\t\t\t\t\t\t.format(this.date_format);\n\n\t\t\t\tshould_refresh = selected_date !== value;\n\t\t\t} else {\n\t\t\t\t// if datepicker has no selected date, refresh\n\t\t\t\tshould_refresh = true;\n\t\t\t}\n\t\t}\n\n\t\tif(should_refresh) {\n\t\t\tthis.datepicker.selectDate(frappe.datetime.str_to_obj(value));\n\t\t}\n\t},\n\tset_date_options: function() {\n\t\t// webformTODO:\n\t\tlet sysdefaults = frappe.boot.sysdefaults;\n\n\t\tlet lang = 'en';\n\t\tfrappe.boot.user && (lang = frappe.boot.user.language);\n\t\tif(!$.fn.datepicker.language[lang]) {\n\t\t\tlang = 'en';\n\t\t}\n\n\t\tlet date_format = sysdefaults && sysdefaults.date_format\n\t\t\t? sysdefaults.date_format : 'yyyy-mm-dd';\n\n\t\tlet now_date = new Date();\n\n\t\tthis.today_text = __(\"Today\");\n\t\tthis.date_format = frappe.defaultDateFormat;\n\t\tthis.datepicker_options = {\n\t\t\tlanguage: lang,\n\t\t\tautoClose: true,\n\t\t\ttodayButton: true,\n\t\t\tdateFormat: date_format,\n\t\t\tstartDate: now_date,\n\t\t\tkeyboardNav: false,\n\t\t\tfirstDay: frappe.datetime.get_first_day_of_the_week_index(),\n\t\t\tonSelect: () => {\n\t\t\t\tthis.$input.trigger('change');\n\t\t\t},\n\t\t\tonShow: () => {\n\t\t\t\tthis.datepicker.$datepicker\n\t\t\t\t\t.find('.datepicker--button:visible')\n\t\t\t\t\t.text(this.today_text);\n\n\t\t\t\tthis.update_datepicker_position();\n\t\t\t}\n\t\t};\n\t},\n\tset_datepicker: function() {\n\t\tthis.$input.datepicker(this.datepicker_options);\n\t\tthis.datepicker = this.$input.data('datepicker');\n\n\t\t// today button didn't work as expected,\n\t\t// so explicitly bind the event\n\t\tthis.datepicker.$datepicker\n\t\t\t.find('[data-action=\"today\"]')\n\t\t\t.click(() => {\n\t\t\t\tthis.datepicker.selectDate(this.get_now_date());\n\t\t\t});\n\t},\n\tupdate_datepicker_position: function() {\n\t\tif(!this.frm) return;\n\t\t// show datepicker above or below the input\n\t\t// based on scroll position\n\t\t// We have to bodge around the timepicker getting its position\n\t\t// wrong by 42px when opening upwards.\n\t\tconst $header = $('.page-head');\n\t\tconst header_bottom = $header.position().top + $header.outerHeight();\n\t\tconst picker_height = this.datepicker.$datepicker.outerHeight() + 12;\n\t\tconst picker_top = this.$input.offset().top - $(window).scrollTop() - picker_height;\n\n\t\tvar position = 'top left';\n\t\t// 12 is the default datepicker.opts[offset]\n\t\tif (picker_top <= header_bottom) {\n\t\t\tposition = 'bottom left';\n\t\t\tif (this.timepicker_only) this.datepicker.opts['offset'] = 12;\n\t\t} else {\n\t\t\t// To account for 42px incorrect positioning\n\t\t\tif (this.timepicker_only) this.datepicker.opts['offset'] = -30;\n\t\t}\n\n\t\tthis.datepicker.update('position', position);\n\t},\n\tget_now_date: function() {\n\t\treturn frappe.datetime.now_date(true);\n\t},\n\tset_t_for_today: function() {\n\t\tvar me = this;\n\t\tthis.$input.on(\"keydown\", function(e) {\n\t\t\tif(e.which===84) { // 84 === t\n\t\t\t\tif(me.df.fieldtype=='Date') {\n\t\t\t\t\tme.set_value(frappe.datetime.nowdate());\n\t\t\t\t} if(me.df.fieldtype=='Datetime') {\n\t\t\t\t\tme.set_value(frappe.datetime.now_datetime());\n\t\t\t\t} if(me.df.fieldtype=='Time') {\n\t\t\t\t\tme.set_value(frappe.datetime.now_time());\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\t},\n\tparse: function(value) {\n\t\tif(value) {\n\t\t\treturn frappe.datetime.user_to_str(value);\n\t\t}\n\t},\n\tformat_for_input: function(value) {\n\t\tif(value) {\n\t\t\treturn frappe.datetime.str_to_user(value);\n\t\t}\n\t\treturn \"\";\n\t},\n\tvalidate: function(value) {\n\t\tif(value && !frappe.datetime.validate(value)) {\n\t\t\tlet sysdefaults = frappe.sys_defaults;\n\t\t\tlet date_format = sysdefaults && sysdefaults.date_format\n\t\t\t\t? sysdefaults.date_format : 'yyyy-mm-dd';\n\t\t\tfrappe.msgprint(__(\"Date {0} must be in format: {1}\", [value, date_format]));\n\t\t\treturn '';\n\t\t}\n\t\treturn value;\n\t}\n});\n","frappe.ui.form.ControlTime = frappe.ui.form.ControlDate.extend({\n\tset_formatted_input: function(value) {\n\t\tthis._super(value);\n\t},\n\tmake_input: function() {\n\t\tthis.timepicker_only = true;\n\t\tthis._super();\n\t},\n\tmake_picker: function() {\n\t\tthis.set_time_options();\n\t\tthis.set_datepicker();\n\t\tthis.refresh();\n\t},\n\tset_time_options: function() {\n\t\tlet sysdefaults = frappe.boot.sysdefaults;\n\n\t\tlet time_format = sysdefaults && sysdefaults.time_format\n\t\t\t? sysdefaults.time_format : 'HH:mm:ss';\n\n\t\tthis.time_format = frappe.defaultTimeFormat;\n\t\tthis.datepicker_options = {\n\t\t\tlanguage: \"en\",\n\t\t\ttimepicker: true,\n\t\t\tonlyTimepicker: true,\n\t\t\ttimeFormat: time_format.toLowerCase().replace(\"mm\", \"ii\"),\n\t\t\tstartDate: frappe.datetime.now_time(true),\n\t\t\tonSelect: () => {\n\t\t\t\t// ignore micro seconds\n\t\t\t\tif (moment(this.get_value(), time_format).format('HH:mm:ss') != moment(this.value, time_format).format('HH:mm:ss')) {\n\t\t\t\t\tthis.$input.trigger('change');\n\t\t\t\t}\n\t\t\t},\n\t\t\tonShow: () => {\n\t\t\t\t$('.datepicker--button:visible').text(__('Now'));\n\n\t\t\t\tthis.update_datepicker_position();\n\t\t\t},\n\t\t\tkeyboardNav: false,\n\t\t\ttodayButton: true\n\t\t};\n\t},\n\tset_input: function(value) {\n\t\tthis._super(value);\n\t\tif (value\n\t\t\t&& ((this.last_value && this.last_value !== this.value)\n\t\t\t\t|| (!this.datepicker.selectedDates.length))) {\n\n\t\t\tlet time_format = frappe.sys_defaults.time_format || 'HH:mm:ss';\n\t\t\tvar date_obj = frappe.datetime.moment_to_date_obj(moment(value, time_format));\n\t\t\tthis.datepicker.selectDate(date_obj);\n\t\t}\n\t},\n\tset_datepicker: function() {\n\t\tthis.$input.datepicker(this.datepicker_options);\n\t\tthis.datepicker = this.$input.data('datepicker');\n\n\t\tthis.datepicker.$datepicker\n\t\t\t.find('[data-action=\"today\"]')\n\t\t\t.click(() => {\n\t\t\t\tthis.datepicker.selectDate(frappe.datetime.now_time(true));\n\t\t\t\tthis.datepicker.hide();\n\t\t\t});\n\t\tif (this.datepicker.opts.timeFormat.indexOf('s') == -1) {\n\t\t\t// No seconds in time format\n\t\t\tconst $tp = this.datepicker.timepicker;\n\t\t\t$tp.$seconds.parent().css('display', 'none');\n\t\t\t$tp.$secondsText.css('display', 'none');\n\t\t\t$tp.$secondsText.prev().css('display', 'none');\n\t\t}\n\t},\n\tset_description: function() {\n\t\tconst { description } = this.df;\n\t\tconst { time_zone } = frappe.sys_defaults;\n\t\tif (!frappe.datetime.is_timezone_same()) {\n\t\t\tif (!description) {\n\t\t\t\tthis.df.description = time_zone;\n\t\t\t} else if (!description.includes(time_zone)) {\n\t\t\t\tthis.df.description += '
' + time_zone;\n\t\t\t}\n\t\t}\n\t\tthis._super();\n\t},\n\tparse: function(value) {\n\t\tif (value) {\n\t\t\treturn frappe.datetime.user_to_str(value, true);\n\t\t}\n\t},\n\tformat_for_input: function(value) {\n\t\tif (value) {\n\t\t\treturn frappe.datetime.str_to_user(value, true);\n\t\t}\n\t\treturn \"\";\n\t},\n\tvalidate: function(value) {\n\t\tif (value && !frappe.datetime.validate(value)) {\n\t\t\tlet sysdefaults = frappe.sys_defaults;\n\t\t\tlet time_format = sysdefaults && sysdefaults.time_format\n\t\t\t\t? sysdefaults.time_format : 'HH:mm:ss';\n\t\t\tfrappe.msgprint(__(\"Time {0} must be in format: {1}\", [value, time_format]));\n\t\t\treturn '';\n\t\t}\n\t\treturn value;\n\t}\n});\n","frappe.ui.form.ControlDatetime = frappe.ui.form.ControlDate.extend({\n\tset_date_options: function() {\n\t\tthis._super();\n\t\tthis.today_text = __(\"Now\");\n\t\tlet sysdefaults = frappe.boot.sysdefaults;\n\t\tthis.date_format = frappe.defaultDatetimeFormat;\n\t\tlet time_format = sysdefaults && sysdefaults.time_format\n\t\t\t? sysdefaults.time_format : 'HH:mm:ss';\n\t\t$.extend(this.datepicker_options, {\n\t\t\ttimepicker: true,\n\t\t\ttimeFormat: time_format.toLowerCase().replace(\"mm\", \"ii\")\n\t\t});\n\t},\n\tget_now_date: function() {\n\t\treturn frappe.datetime.now_datetime(true);\n\t},\n\tset_description: function() {\n\t\tconst { description } = this.df;\n\t\tconst { time_zone } = frappe.sys_defaults;\n\t\tif (!this.df.hide_timezone && !frappe.datetime.is_timezone_same()) {\n\t\t\tif (!description) {\n\t\t\t\tthis.df.description = time_zone;\n\t\t\t} else if (!description.includes(time_zone)) {\n\t\t\t\tthis.df.description += '
' + time_zone;\n\t\t\t}\n\t\t}\n\t\tthis._super();\n\t},\n\tset_datepicker: function() {\n\t\tthis._super();\n\t\tif (this.datepicker.opts.timeFormat.indexOf('s') == -1) {\n\t\t\t// No seconds in time format\n\t\t\tconst $tp = this.datepicker.timepicker;\n\t\t\t$tp.$seconds.parent().css('display', 'none');\n\t\t\t$tp.$secondsText.css('display', 'none');\n\t\t\t$tp.$secondsText.prev().css('display', 'none');\n\t\t}\n\t},\n\tget_model_value() {\n\t\tlet value = this._super();\n\t\treturn frappe.datetime.get_datetime_as_string(value);\n\t}\n});\n","frappe.ui.form.ControlDateRange = frappe.ui.form.ControlData.extend({\n\tmake_input: function() {\n\t\tthis._super();\n\t\tthis.set_date_options();\n\t\tthis.set_datepicker();\n\t\tthis.refresh();\n\t},\n\tset_date_options: function() {\n\t\tvar me = this;\n\t\tthis.datepicker_options = {\n\t\t\tlanguage: \"en\",\n\t\t\trange: true,\n\t\t\tautoClose: true,\n\t\t\ttoggleSelected: false,\n\t\t\tfirstDay: frappe.datetime.get_first_day_of_the_week_index()\n\t\t};\n\t\tthis.datepicker_options.dateFormat =\n\t\t\t(frappe.boot.sysdefaults.date_format || 'yyyy-mm-dd');\n\t\tthis.datepicker_options.onSelect = function() {\n\t\t\tme.$input.trigger('change');\n\t\t};\n\t},\n\tset_datepicker: function() {\n\t\tthis.$input.datepicker(this.datepicker_options);\n\t\tthis.datepicker = this.$input.data('datepicker');\n\t},\n\tset_input: function(value, value2) {\n\t\tthis.last_value = this.value;\n\t\tif (value && value2) {\n\t\t\tthis.value = [value, value2];\n\t\t} else {\n\t\t\tthis.value = value;\n\t\t}\n\t\tif (this.value) {\n\t\t\tlet formatted = this.format_for_input(this.value[0], this.value[1]);\n\t\t\tthis.$input && this.$input.val(formatted);\n\t\t} else {\n\t\t\tthis.$input && this.$input.val(\"\");\n\t\t}\n\t\tthis.set_disp_area(value || '');\n\t\tthis.set_mandatory && this.set_mandatory(value);\n\t},\n\tparse: function(value) {\n\t\t// replace the separator (which can be in user language) with comma\n\t\tconst to = __('{0} to {1}').replace('{0}', '').replace('{1}', '');\n\t\tvalue = value.replace(to, ',');\n\n\t\tif(value && value.includes(',')) {\n\t\t\tvar vals = value.split(',');\n\t\t\tvar from_date = moment(frappe.datetime.user_to_obj(vals[0])).format('YYYY-MM-DD');\n\t\t\tvar to_date = moment(frappe.datetime.user_to_obj(vals[vals.length-1])).format('YYYY-MM-DD');\n\t\t\treturn [from_date, to_date];\n\t\t}\n\t},\n\tformat_for_input: function(value1, value2) {\n\t\tif(value1 && value2) {\n\t\t\tvalue1 = frappe.datetime.str_to_user(value1);\n\t\t\tvalue2 = frappe.datetime.str_to_user(value2);\n\t\t\treturn __(\"{0} to {1}\", [value1, value2]);\n\t\t}\n\t\treturn \"\";\n\t}\n});\n","frappe.ui.form.ControlSelect = frappe.ui.form.ControlData.extend({\n\thtml_element: 'select',\n\tmake_input: function() {\n\t\tthis._super();\n\n\t\tconst is_xs_input = this.df.input_class\n\t\t\t&& this.df.input_class.includes('input-xs');\n\t\tthis.set_icon(is_xs_input);\n\t\tthis.df.placeholder && this.set_placeholder(is_xs_input);\n\n\t\tthis.$input.addClass('ellipsis');\n\t\tthis.set_options();\n\t},\n\tset_icon: function(is_xs_input) {\n\t\tconst select_icon_html =\n\t\t\t`
\n\t\t\t\t${frappe.utils.icon('select', is_xs_input ? 'xs' : 'sm')}\n\t\t\t
`;\n\t\tif (this.only_input) {\n\t\t\tthis.$wrapper.append(select_icon_html);\n\t\t} else {\n\t\t\tthis.$wrapper.find('.control-input')\n\t\t\t\t.addClass('flex align-center')\n\t\t\t\t.append(select_icon_html);\n\t\t}\n\t},\n\tset_placeholder: function(is_xs_input) {\n\t\tconst placeholder_html =\n\t\t\t`
\n\t\t\t\t${this.df.placeholder}\n\t\t\t
`;\n\t\tif (this.only_input) {\n\t\t\tthis.$wrapper.append(placeholder_html);\n\t\t} else {\n\t\t\tthis.$wrapper.find('.control-input').append(placeholder_html);\n\t\t}\n\t\tthis.toggle_placeholder();\n\t\tthis.$input && this.$input.on('select-change', () => this.toggle_placeholder());\n\t},\n\tset_formatted_input: function(value) {\n\t\t// refresh options first - (new ones??)\n\t\tif(value==null) value = '';\n\t\tthis.set_options(value);\n\n\t\t// set in the input element\n\t\tthis._super(value);\n\n\t\t// check if the value to be set is selected\n\t\tvar input_value = '';\n\t\tif(this.$input) {\n\t\t\tinput_value = this.$input.val();\n\t\t}\n\n\t\tif(value && input_value && value !== input_value) {\n\t\t\t// trying to set a non-existant value\n\t\t\t// model value must be same as whatever the input is\n\t\t\tthis.set_model_value(input_value);\n\t\t}\n\t},\n\tset_options: function(value) {\n\t\t// reset options, if something new is set\n\t\tvar options = this.df.options || [];\n\n\t\tif(typeof this.df.options===\"string\") {\n\t\t\toptions = this.df.options.split(\"\\n\");\n\t\t}\n\n\t\t// nothing changed\n\t\tif (JSON.stringify(options) === this.last_options) {\n\t\t\treturn;\n\t\t}\n\t\tthis.last_options = JSON.stringify(options);\n\n\t\tif(this.$input) {\n\t\t\tvar selected = this.$input.find(\":selected\").val();\n\t\t\tthis.$input.empty().add_options(options || []);\n\n\t\t\tif(value===undefined && selected) {\n\t\t\t\tthis.$input.val(selected);\n\t\t\t}\n\t\t}\n\t},\n\tget_file_attachment_list: function() {\n\t\tif(!this.frm) return;\n\t\tvar fl = frappe.model.docinfo[this.frm.doctype][this.frm.docname];\n\t\tif(fl && fl.attachments) {\n\t\t\tthis.set_description(\"\");\n\t\t\tvar options = [\"\"];\n\t\t\t$.each(fl.attachments, function(i, f) {\n\t\t\t\toptions.push(f.file_url);\n\t\t\t});\n\t\t\treturn options;\n\t\t} else {\n\t\t\tthis.set_description(__(\"Please attach a file first.\"));\n\t\t\treturn [\"\"];\n\t\t}\n\t},\n\ttoggle_placeholder: function() {\n\t\tconst input_set = Boolean(this.$input.find('option:selected').text());\n\t\tthis.$wrapper.find('.placeholder').toggle(!input_set);\n\t}\n});\n\n// add
`).prependTo(this.input_area);\n\t\tthis.$input_area = $(this.input_area);\n\t\tthis.$input = this.$input_area.find('input');\n\t\tthis.$link = this.$input_area.find('.link-btn');\n\t\tthis.$link_open = this.$link.find('.btn-open');\n\t\tthis.set_input_attributes();\n\t\tthis.$input.on(\"focus\", function() {\n\t\t\tsetTimeout(function() {\n\t\t\t\tif(me.$input.val() && me.get_options()) {\n\t\t\t\t\tlet doctype = me.get_options();\n\t\t\t\t\tlet name = me.$input.val();\n\t\t\t\t\tme.$link.toggle(true);\n\t\t\t\t\tme.$link_open.attr('href', frappe.utils.get_form_link(doctype, name));\n\t\t\t\t}\n\n\t\t\t\tif(!me.$input.val()) {\n\t\t\t\t\tme.$input.val(\"\").trigger(\"input\");\n\t\t\t\t}\n\t\t\t}, 500);\n\t\t});\n\t\tthis.$input.on(\"blur\", function() {\n\t\t\t// if this disappears immediately, the user's click\n\t\t\t// does not register, hence timeout\n\t\t\tsetTimeout(function() {\n\t\t\t\tme.$link.toggle(false);\n\t\t\t}, 500);\n\t\t});\n\t\tthis.$input.attr('data-target', this.df.options);\n\t\tthis.input = this.$input.get(0);\n\t\tthis.has_input = true;\n\t\tthis.translate_values = true;\n\t\tthis.setup_buttons();\n\t\tthis.setup_awesomeplete();\n\t\tthis.bind_change_event();\n\t},\n\tget_options: function() {\n\t\treturn this.df.options;\n\t},\n\tget_reference_doctype() {\n\t\t// this is used to get the context in which link field is loaded\n\t\tif (this.doctype) return this.doctype;\n\t\telse {\n\t\t\treturn frappe.get_route && frappe.get_route()[0] === 'List' ? frappe.get_route()[1] : null;\n\t\t}\n\t},\n\tsetup_buttons: function() {\n\t\tif(this.only_input && !this.with_link_btn) {\n\t\t\tthis.$input_area.find(\".link-btn\").remove();\n\t\t}\n\t},\n\topen_advanced_search: function() {\n\t\tvar doctype = this.get_options();\n\t\tif(!doctype) return;\n\t\tnew frappe.ui.form.LinkSelector({\n\t\t\tdoctype: doctype,\n\t\t\ttarget: this,\n\t\t\ttxt: this.get_input_value()\n\t\t});\n\t\treturn false;\n\t},\n\tnew_doc: function() {\n\t\tvar doctype = this.get_options();\n\t\tvar me = this;\n\n\t\tif (!doctype) return;\n\n\t\tlet df = this.df;\n\t\tif (this.frm && this.frm.doctype !== this.df.parent) {\n\t\t\t// incase of grid use common df set in grid\n\t\t\tdf = this.frm.get_docfield(this.doc.parentfield, this.df.fieldname);\n\t\t}\n\t\t// set values to fill in the new document\n\t\tif (df && df.get_route_options_for_new_doc) {\n\t\t\tfrappe.route_options = df.get_route_options_for_new_doc(this);\n\t\t} else {\n\t\t\tfrappe.route_options = {};\n\t\t}\n\n\t\t// partially entered name field\n\t\tfrappe.route_options.name_field = this.get_value();\n\n\t\t// reference to calling link\n\t\tfrappe._from_link = this;\n\t\tfrappe._from_link_scrollY = $(document).scrollTop();\n\n\t\tfrappe.ui.form.make_quick_entry(doctype, (doc) => {\n\t\t\treturn me.set_value(doc.name);\n\t\t});\n\n\t\treturn false;\n\t},\n\tsetup_awesomeplete: function() {\n\t\tvar me = this;\n\n\t\tthis.$input.cache = {};\n\n\t\tthis.awesomplete = new Awesomplete(me.input, {\n\t\t\tminChars: 0,\n\t\t\tmaxItems: 99,\n\t\t\tautoFirst: true,\n\t\t\tlist: [],\n\t\t\tdata: function (item) {\n\t\t\t\treturn {\n\t\t\t\t\tlabel: item.label || item.value,\n\t\t\t\t\tvalue: item.value\n\t\t\t\t};\n\t\t\t},\n\t\t\tfilter: function() {\n\t\t\t\treturn true;\n\t\t\t},\n\t\t\titem: function (item) {\n\t\t\t\tvar d = this.get_item(item.value);\n\t\t\t\tif(!d.label) {\td.label = d.value; }\n\n\t\t\t\tvar _label = (me.translate_values) ? __(d.label) : d.label;\n\t\t\t\tvar html = d.html || \"\" + _label + \"\";\n\t\t\t\tif(d.description && d.value!==d.description) {\n\t\t\t\t\thtml += '
' + __(d.description) + '';\n\t\t\t\t}\n\t\t\t\treturn $('
  • ')\n\t\t\t\t\t.data('item.autocomplete', d)\n\t\t\t\t\t.prop('aria-selected', 'false')\n\t\t\t\t\t.html(`

    ${html}

    `)\n\t\t\t\t\t.get(0);\n\t\t\t},\n\t\t\tsort: function() {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t});\n\n\t\tthis.custom_awesomplete_filter && this.custom_awesomplete_filter(this.awesomplete);\n\n\t\tthis.$input.on(\"input\", frappe.utils.debounce(function(e) {\n\t\t\tvar doctype = me.get_options();\n\t\t\tif(!doctype) return;\n\t\t\tif (!me.$input.cache[doctype]) {\n\t\t\t\tme.$input.cache[doctype] = {};\n\t\t\t}\n\n\t\t\tvar term = e.target.value;\n\n\t\t\tif (me.$input.cache[doctype][term]!=null) {\n\t\t\t\t// immediately show from cache\n\t\t\t\tme.awesomplete.list = me.$input.cache[doctype][term];\n\t\t\t}\n\t\t\tvar args = {\n\t\t\t\t'txt': term,\n\t\t\t\t'doctype': doctype,\n\t\t\t\t'ignore_user_permissions': me.df.ignore_user_permissions,\n\t\t\t\t'reference_doctype': me.get_reference_doctype() || \"\"\n\t\t\t};\n\n\t\t\tme.set_custom_query(args);\n\n\t\t\tfrappe.call({\n\t\t\t\ttype: \"POST\",\n\t\t\t\tmethod:'frappe.desk.search.search_link',\n\t\t\t\tno_spinner: true,\n\t\t\t\targs: args,\n\t\t\t\tcallback: function(r) {\n\t\t\t\t\tif(!me.$input.is(\":focus\")) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tr.results = me.merge_duplicates(r.results);\n\n\t\t\t\t\t// show filter description in awesomplete\n\t\t\t\t\tif (args.filters) {\n\t\t\t\t\t\tlet filter_string = me.get_filter_description(args.filters);\n\t\t\t\t\t\tif (filter_string) {\n\t\t\t\t\t\t\tr.results.push({\n\t\t\t\t\t\t\t\thtml: `${filter_string}`,\n\t\t\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t\t\t\taction: () => {}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif(!me.df.only_select) {\n\t\t\t\t\t\tif(frappe.model.can_create(doctype)) {\n\t\t\t\t\t\t\t// new item\n\t\t\t\t\t\t\tr.results.push({\n\t\t\t\t\t\t\t\thtml: \"\"\n\t\t\t\t\t\t\t\t\t+ \" \"\n\t\t\t\t\t\t\t\t\t+ __(\"Create a new {0}\", [__(me.get_options())])\n\t\t\t\t\t\t\t\t\t+ \"\",\n\t\t\t\t\t\t\t\tlabel: __(\"Create a new {0}\", [__(me.get_options())]),\n\t\t\t\t\t\t\t\tvalue: \"create_new__link_option\",\n\t\t\t\t\t\t\t\taction: me.new_doc\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// advanced search\n\n\t\t\t\t\t\tif (locals && locals['DocType']) {\n\t\t\t\t\t\t\t// not applicable in web forms\n\t\t\t\t\t\t\tr.results.push({\n\t\t\t\t\t\t\t\thtml: \"\"\n\t\t\t\t\t\t\t\t\t+ \" \"\n\t\t\t\t\t\t\t\t\t+ __(\"Advanced Search\")\n\t\t\t\t\t\t\t\t\t+ \"\",\n\t\t\t\t\t\t\t\tlabel: __(\"Advanced Search\"),\n\t\t\t\t\t\t\t\tvalue: \"advanced_search__link_option\",\n\t\t\t\t\t\t\t\taction: me.open_advanced_search\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tme.$input.cache[doctype][term] = r.results;\n\t\t\t\t\tme.awesomplete.list = me.$input.cache[doctype][term];\n\t\t\t\t\tme.toggle_href(doctype);\n\t\t\t\t}\n\t\t\t});\n\t\t}, 500));\n\n\t\tthis.$input.on(\"blur\", function() {\n\t\t\tif(me.selected) {\n\t\t\t\tme.selected = false;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar value = me.get_input_value();\n\t\t\tif(value!==me.last_value) {\n\t\t\t\tme.parse_validate_and_set_in_model(value);\n\t\t\t}\n\t\t});\n\n\t\tthis.$input.on(\"awesomplete-open\", () => {\n\t\t\tthis.autocomplete_open = true;\n\t\t});\n\n\t\tthis.$input.on(\"awesomplete-close\", () => {\n\t\t\tthis.autocomplete_open = false;\n\t\t});\n\n\t\tthis.$input.on(\"awesomplete-select\", function(e) {\n\t\t\tvar o = e.originalEvent;\n\t\t\tvar item = me.awesomplete.get_item(o.text.value);\n\n\t\t\tme.autocomplete_open = false;\n\n\t\t\t// prevent selection on tab\n\t\t\tvar TABKEY = 9;\n\t\t\tif(e.keyCode === TABKEY) {\n\t\t\t\te.preventDefault();\n\t\t\t\tme.awesomplete.close();\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tif(item.action) {\n\t\t\t\titem.value = \"\";\n\t\t\t\titem.action.apply(me);\n\t\t\t}\n\n\t\t\t// if remember_last_selected is checked in the doctype against the field,\n\t\t\t// then add this value\n\t\t\t// to defaults so you do not need to set it again\n\t\t\t// unless it is changed.\n\t\t\tif(me.df.remember_last_selected_value) {\n\t\t\t\tfrappe.boot.user.last_selected_values[me.df.options] = item.value;\n\t\t\t}\n\n\t\t\tme.parse_validate_and_set_in_model(item.value);\n\t\t});\n\n\t\tthis.$input.on(\"awesomplete-selectcomplete\", function(e) {\n\t\t\tvar o = e.originalEvent;\n\t\t\tif(o.text.value.indexOf(\"__link_option\") !== -1) {\n\t\t\t\tme.$input.val(\"\");\n\t\t\t}\n\t\t});\n\t},\n\n\tmerge_duplicates(results) {\n\t\t// in case of result like this\n\t\t// [{value: 'Manufacturer 1', 'description': 'mobile part 1'},\n\t\t// \t{value: 'Manufacturer 1', 'description': 'mobile part 2'}]\n\t\t// suggestion list has two items with same value (docname) & description\n\t\treturn results.reduce((newArr, currElem) => {\n\t\t\tif (newArr.length === 0) return [currElem];\n\t\t\tlet element_with_same_value = newArr.find(e => e.value === currElem.value);\n\t\t\tif (element_with_same_value) {\n\t\t\t\telement_with_same_value.description += `, ${currElem.description}`;\n\t\t\t\treturn [...newArr];\n\t\t\t}\n\t\t\treturn [...newArr, currElem];\n\t\t}, []);\n\t\t// returns [{value: 'Manufacturer 1', 'description': 'mobile part 1, mobile part 2'}]\n\t},\n\n\ttoggle_href(doctype) {\n\t\tif (frappe.model.can_select(doctype) && !frappe.model.can_read(doctype)) {\n\t\t\t// remove href from link field as user has only select perm\n\t\t\tthis.$input_area.find(\".link-btn\").addClass('hide');\n\t\t} else {\n\t\t\tthis.$input_area.find(\".link-btn\").removeClass('hide');\n\t\t}\n\t},\n\n\tget_filter_description(filters) {\n\t\tlet doctype = this.get_options();\n\t\tlet filter_array = [];\n\t\tlet meta = null;\n\n\t\tfrappe.model.with_doctype(doctype, () => {\n\t\t\tmeta = frappe.get_meta(doctype);\n\t\t});\n\n\t\t// convert object style to array\n\t\tif (!Array.isArray(filters)) {\n\t\t\tfor (let fieldname in filters) {\n\t\t\t\tlet value = filters[fieldname];\n\t\t\t\tif (!Array.isArray(value)) {\n\t\t\t\t\tvalue = ['=', value];\n\t\t\t\t}\n\t\t\t\tfilter_array.push([fieldname, ...value]); // fieldname, operator, value\n\t\t\t}\n\t\t} else {\n\t\t\tfilter_array = filters;\n\t\t}\n\n\t\t// add doctype if missing\n\t\tfilter_array = filter_array.map(filter => {\n\t\t\tif (filter.length === 3) {\n\t\t\t\treturn [doctype, ...filter]; // doctype, fieldname, operator, value\n\t\t\t}\n\t\t\treturn filter;\n\t\t});\n\n\t\tfunction get_filter_description(filter) {\n\t\t\tlet doctype = filter[0];\n\t\t\tlet fieldname = filter[1];\n\t\t\tlet docfield = frappe.meta.get_docfield(doctype, fieldname);\n\t\t\tlet label = docfield ? docfield.label : frappe.model.unscrub(fieldname);\n\n\t\t\tif (docfield && docfield.fieldtype === 'Check') {\n\t\t\t\tfilter[3] = filter[3] ? __('Yes'): __('No');\n\t\t\t}\n\n\t\t\tif (filter[3] && Array.isArray(filter[3]) && filter[3].length > 5) {\n\t\t\t\tfilter[3] = filter[3].slice(0, 5);\n\t\t\t\tfilter[3].push('...');\n\t\t\t}\n\n\t\t\tlet value = filter[3] == null || filter[3] === ''\n\t\t\t\t? __('empty')\n\t\t\t\t: String(filter[3]);\n\n\t\t\treturn [__(label).bold(), filter[2], value.bold()].join(' ');\n\t\t}\n\n\t\tlet filter_string = filter_array\n\t\t\t.map(get_filter_description)\n\t\t\t.join(', ');\n\n\t\treturn __('Filters applied for {0}', [filter_string]);\n\t},\n\n\tset_custom_query(args) {\n\t\tconst is_valid_value = (value, key) => {\n\t\t\tif (value) return true;\n\t\t\t// check if empty value is valid\n\t\t\tif (this.frm) {\n\t\t\t\tlet field = frappe.meta.get_docfield(this.frm.doctype, key);\n\t\t\t\t// empty value link fields is invalid\n\t\t\t\treturn !field || ![\"Link\", \"Dynamic Link\"].includes(field.fieldtype);\n\t\t\t} else {\n\t\t\t\treturn value !== undefined;\n\t\t\t}\n\t\t};\n\n\t\tconst set_nulls = (obj) => {\n\t\t\t$.each(obj, (key, value) => {\n\t\t\t\tif (!is_valid_value(value, key)) {\n\t\t\t\t\tdelete obj[key];\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn obj;\n\t\t};\n\n\t\tif(this.get_query || this.df.get_query) {\n\t\t\tvar get_query = this.get_query || this.df.get_query;\n\t\t\tif($.isPlainObject(get_query)) {\n\t\t\t\tvar filters = null;\n\t\t\t\tif(get_query.filters) {\n\t\t\t\t\t// passed as {'filters': {'key':'value'}}\n\t\t\t\t\tfilters = get_query.filters;\n\t\t\t\t} else if(get_query.query) {\n\n\t\t\t\t\t// passed as {'query': 'path.to.method'}\n\t\t\t\t\targs.query = get_query;\n\t\t\t\t} else {\n\n\t\t\t\t\t// dict is filters\n\t\t\t\t\tfilters = get_query;\n\t\t\t\t}\n\n\t\t\t\tif (filters) {\n\t\t\t\t\tfilters = set_nulls(filters);\n\n\t\t\t\t\t// extend args for custom functions\n\t\t\t\t\t$.extend(args, filters);\n\n\t\t\t\t\t// add \"filters\" for standard query (search.py)\n\t\t\t\t\targs.filters = filters;\n\t\t\t\t}\n\t\t\t} else if (typeof (get_query) === \"string\") {\n\t\t\t\targs.query = get_query;\n\t\t\t} else {\n\t\t\t\t// get_query by function\n\t\t\t\tvar q = (get_query)(this.frm && this.frm.doc || this.doc, this.doctype, this.docname);\n\n\t\t\t\tif (typeof (q) ===\"string\") {\n\t\t\t\t\t// returns a string\n\t\t\t\t\targs.query = q;\n\t\t\t\t} else if($.isPlainObject(q)) {\n\t\t\t\t\t// returns a plain object with filters\n\t\t\t\t\tif(q.filters) {\n\t\t\t\t\t\tset_nulls(q.filters);\n\t\t\t\t\t}\n\n\t\t\t\t\t// turn off value translation\n\t\t\t\t\tif(q.translate_values !== undefined) {\n\t\t\t\t\t\tthis.translate_values = q.translate_values;\n\t\t\t\t\t}\n\n\t\t\t\t\t// extend args for custom functions\n\t\t\t\t\t$.extend(args, q);\n\n\t\t\t\t\t// add \"filters\" for standard query (search.py)\n\t\t\t\t\targs.filters = q.filters;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif(this.df.filters) {\n\t\t\tset_nulls(this.df.filters);\n\t\t\tif(!args.filters) args.filters = {};\n\t\t\t$.extend(args.filters, this.df.filters);\n\t\t}\n\t},\n\n\tvalidate(value) {\n\t\t// validate the value just entered\n\t\tif (\n\t\t\tthis._validated\n\t\t\t|| this.df.options==\"[Select]\"\n\t\t\t|| this.df.ignore_link_validation\n\t\t) {\n\t\t\treturn value;\n\t\t}\n\n\t\treturn this.validate_link_and_fetch(this.df, this.get_options(),\n\t\t\tthis.docname, value);\n\t},\n\n\tvalidate_link_and_fetch(df, options, docname, value) {\n\t\tif (!options) return;\n\n\t\tconst fetch_map = this.get_fetch_map();\n\t\tconst columns_to_fetch = Object.values(fetch_map);\n\n\t\t// if default and no fetch, no need to validate\n\t\tif (!columns_to_fetch.length && df.__default_value === value) {\n\t\t\treturn value;\n\t\t}\n\n\t\tfunction update_dependant_fields(response) {\n\t\t\tlet field_value = \"\";\n\t\t\tfor (const [target_field, source_field] of Object.entries(fetch_map)) {\n\t\t\t\tif (value) field_value = response[source_field];\n\t\t\t\tfrappe.model.set_value(\n\t\t\t\t\tdf.parent,\n\t\t\t\t\tdocname,\n\t\t\t\t\ttarget_field,\n\t\t\t\t\tfield_value,\n\t\t\t\t\tdf.fieldtype,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t// to avoid unnecessary request\n\t\tif (value) {\n\t\t\treturn frappe.xcall(\"frappe.client.validate_link\", {\n\t\t\t\tdoctype: options,\n\t\t\t\tdocname: value,\n\t\t\t\tfields: columns_to_fetch,\n\t\t\t}).then((response) => {\n\t\t\t\tif (!docname || !columns_to_fetch.length) return response.name;\n\t\t\t\tupdate_dependant_fields(response);\n\t\t\t\treturn response.name;\n\t\t\t});\n\t\t} else {\n\t\t\tupdate_dependant_fields({});\n\t\t\treturn value;\n\t\t}\n\t},\n\n\tget_fetch_map() {\n\t\tconst fetch_map = {};\n\t\tif (!this.frm) return fetch_map;\n\n\t\tfor (const key of [\"*\", this.df.parent]) {\n\t\t\tif (this.frm.fetch_dict[key] && this.frm.fetch_dict[key][this.df.fieldname]) {\n\t\t\t\tObject.assign(fetch_map, this.frm.fetch_dict[key][this.df.fieldname]);\n\t\t\t}\n\t\t}\n\n\t\treturn fetch_map;\n\t}\n});\n\nif (Awesomplete) {\n\tAwesomplete.prototype.get_item = function(value) {\n\t\treturn this._list.find(function(item) {\n\t\t\treturn item.value === value;\n\t\t});\n\t};\n}\n\n","frappe.ui.form.ControlDynamicLink = frappe.ui.form.ControlLink.extend({\n\tget_options: function() {\n\t\tlet options = '';\n\t\tif (this.df.get_options) {\n\t\t\toptions = this.df.get_options();\n\t\t} else if (this.docname==null && cur_dialog) {\n\t\t\t//for dialog box\n\t\t\toptions = cur_dialog.get_value(this.df.options);\n\t\t} else if (!cur_frm) {\n\t\t\tconst selector = `input[data-fieldname=\"${this.df.options}\"]`;\n\t\t\tlet input = null;\n\t\t\tif (cur_list) {\n\t\t\t\t// for list page\n\t\t\t\tinput = cur_list.filter_area.standard_filters_wrapper.find(selector);\n\t\t\t}\n\t\t\tif (cur_page) {\n\t\t\t\tinput = $(cur_page.page).find(selector);\n\t\t\t}\n\t\t\tif (input) {\n\t\t\t\toptions = input.val();\n\t\t\t}\n\t\t} else {\n\t\t\toptions = frappe.model.get_value(this.df.parent, this.docname, this.df.options);\n\t\t}\n\n\t\tif (frappe.model.is_single(options)) {\n\t\t\tfrappe.throw(__(\"{0} is not a valid DocType for Dynamic Link\", [options.bold()]));\n\t\t}\n\n\t\treturn options;\n\t},\n});\n","frappe.ui.form.ControlText = frappe.ui.form.ControlData.extend({\n\thtml_element: \"textarea\",\n\thorizontal: false,\n\tmake_wrapper: function() {\n\t\tthis._super();\n\t\tthis.$wrapper.find(\".like-disabled-input\").addClass(\"for-description\");\n\t},\n\tmake_input: function() {\n\t\tthis._super();\n\t\tthis.$input.css({'height': '300px'});\n\t}\n});\n\nfrappe.ui.form.ControlLongText = frappe.ui.form.ControlText;\nfrappe.ui.form.ControlSmallText = frappe.ui.form.ControlText.extend({\n\tmake_input: function() {\n\t\tthis._super();\n\t\tthis.$input.css({'height': '150px'});\n\t}\n});\n","frappe.ui.form.ControlCode = frappe.ui.form.ControlText.extend({\n\tmake_input() {\n\t\tif (this.editor) return;\n\t\tthis.load_lib().then(() => this.make_ace_editor());\n\t},\n\n\tmake_ace_editor() {\n\t\tif (this.editor) return;\n\t\tthis.ace_editor_target = $('
    ')\n\t\t\t.appendTo(this.input_area);\n\n\t\tthis.expanded = false;\n\t\tthis.$expand_button = $(``).click(() => {\n\t\t\tthis.expanded = !this.expanded;\n\t\t\tthis.refresh_height();\n\t\t\tthis.toggle_label();\n\t\t}).appendTo(this.$input_wrapper);\n\t\t// styling\n\t\tthis.ace_editor_target.addClass('border rounded');\n\t\tthis.ace_editor_target.css('height', 300);\n\n\t\t// initialize\n\t\tconst ace = window.ace;\n\t\tthis.editor = ace.edit(this.ace_editor_target.get(0));\n\t\tthis.editor.setTheme('ace/theme/tomorrow');\n\t\tthis.editor.setOption(\"showPrintMargin\", false);\n\t\tthis.set_language();\n\n\t\t// events\n\t\tthis.editor.session.on('change', frappe.utils.debounce(() => {\n\t\t\tconst input_value = this.get_input_value();\n\t\t\tthis.parse_validate_and_set_in_model(input_value);\n\t\t}, 300));\n\n\t\t// setup autocompletion when it is set the first time\n\t\tObject.defineProperty(this.df, 'autocompletions', {\n\t\t\tget() {\n\t\t\t\treturn this._autocompletions || [];\n\t\t\t},\n\t\t\tset: (value) => {\n\t\t\t\tthis.setup_autocompletion();\n\t\t\t\tthis.df._autocompletions = value;\n\t\t\t}\n\t\t});\n\t},\n\n\tsetup_autocompletion() {\n\t\tif (this._autocompletion_setup) return;\n\n\t\tconst ace = window.ace;\n\t\tconst get_autocompletions = () => this.df.autocompletions;\n\n\t\tace.config.loadModule(\"ace/ext/language_tools\", langTools => {\n\t\t\tthis.editor.setOptions({\n\t\t\t\tenableBasicAutocompletion: true,\n\t\t\t\tenableLiveAutocompletion: true\n\t\t\t});\n\n\t\t\tlangTools.addCompleter({\n\t\t\t\tgetCompletions: function(editor, session, pos, prefix, callback) {\n\t\t\t\t\tif (prefix.length === 0) {\n\t\t\t\t\t\tcallback(null, []);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tlet autocompletions = get_autocompletions();\n\t\t\t\t\tif (autocompletions.length) {\n\t\t\t\t\t\tcallback(\n\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\tautocompletions.map(a => {\n\t\t\t\t\t\t\t\tif (typeof a === 'string') {\n\t\t\t\t\t\t\t\t\ta = { value: a };\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\tname: 'frappe',\n\t\t\t\t\t\t\t\t\tvalue: a.value,\n\t\t\t\t\t\t\t\t\tscore: a.score\n\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t\tthis._autocompletion_setup = true;\n\t},\n\n\trefresh_height() {\n\t\tthis.ace_editor_target.css('height', this.expanded ? 600 : 300);\n\t\tthis.editor.resize();\n\t},\n\n\ttoggle_label() {\n\t\tthis.$expand_button && this.$expand_button.text(this.get_button_label());\n\t},\n\n\tget_button_label() {\n\t\treturn this.expanded ? __('Collapse', null, 'Shrink code field.') : __('Expand', null, 'Enlarge code field.');\n\t},\n\n\tset_language() {\n\t\tconst language_map = {\n\t\t\t'Javascript': 'ace/mode/javascript',\n\t\t\t'JS': 'ace/mode/javascript',\n\t\t\t'Python': 'ace/mode/python',\n\t\t\t'Py': 'ace/mode/python',\n\t\t\t'HTML': 'ace/mode/html',\n\t\t\t'CSS': 'ace/mode/css',\n\t\t\t'Markdown': 'ace/mode/markdown',\n\t\t\t'SCSS': 'ace/mode/scss',\n\t\t\t'JSON': 'ace/mode/json',\n\t\t\t'Golang': 'ace/mode/golang',\n\t\t\t'Go': 'ace/mode/golang'\n\t\t};\n\t\tconst language = this.df.options;\n\n\t\tconst valid_languages = Object.keys(language_map);\n\t\tif (language && !valid_languages.includes(language)) {\n\t\t\t// eslint-disable-next-line\n\t\t\tconsole.warn(`Invalid language option provided for field \"${this.df.label}\". Valid options are ${valid_languages.join(', ')}.`);\n\t\t}\n\n\t\tconst ace_language_mode = language_map[language] || '';\n\t\tthis.editor.session.setMode(ace_language_mode);\n\t\tthis.editor.setKeyboardHandler('ace/keyboard/vscode');\n\t},\n\n\tparse(value) {\n\t\tif (value == null) {\n\t\t\tvalue = \"\";\n\t\t}\n\t\treturn value;\n\t},\n\n\tset_formatted_input(value) {\n\t\treturn this.load_lib().then(() => {\n\t\t\tif (!this.editor) return;\n\t\t\tif (!value) value = '';\n\t\t\tif (value === this.get_input_value()) return;\n\t\t\tthis.editor.session.setValue(value);\n\t\t});\n\t},\n\n\tget_input_value() {\n\t\treturn this.editor ? this.editor.session.getValue() : '';\n\t},\n\n\tload_lib() {\n\t\tif (this.library_loaded) return this.library_loaded;\n\n\t\tif (frappe.boot.developer_mode) {\n\t\t\tthis.root_lib_path = '/assets/frappe/node_modules/ace-builds/src-noconflict/';\n\t\t} else {\n\t\t\tthis.root_lib_path = '/assets/frappe/node_modules/ace-builds/src-min-noconflict/';\n\t\t}\n\n\t\tthis.library_loaded = new Promise(resolve => {\n\t\t\tfrappe.require(this.root_lib_path + 'ace.js', () => {\n\t\t\t\twindow.ace.config.set('basePath', this.root_lib_path);\n\t\t\t\tresolve();\n\t\t\t});\n\t\t});\n\n\t\treturn this.library_loaded;\n\t}\n});\n","/*!\n * Quill Editor v2.0.0-dev.3\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Quill\"] = factory();\n\telse\n\t\troot[\"Quill\"] = factory();\n})(window, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 0);\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"./assets/icons/align-center.svg\":\n/*!***************************************!*\\\n !*** ./assets/icons/align-center.svg ***!\n \\***************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/align-center.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/align-justify.svg\":\n/*!****************************************!*\\\n !*** ./assets/icons/align-justify.svg ***!\n \\****************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/align-justify.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/align-left.svg\":\n/*!*************************************!*\\\n !*** ./assets/icons/align-left.svg ***!\n \\*************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/align-left.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/align-right.svg\":\n/*!**************************************!*\\\n !*** ./assets/icons/align-right.svg ***!\n \\**************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/align-right.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/background.svg\":\n/*!*************************************!*\\\n !*** ./assets/icons/background.svg ***!\n \\*************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/background.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/blockquote.svg\":\n/*!*************************************!*\\\n !*** ./assets/icons/blockquote.svg ***!\n \\*************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/blockquote.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/bold.svg\":\n/*!*******************************!*\\\n !*** ./assets/icons/bold.svg ***!\n \\*******************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/bold.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/clean.svg\":\n/*!********************************!*\\\n !*** ./assets/icons/clean.svg ***!\n \\********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/clean.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/code.svg\":\n/*!*******************************!*\\\n !*** ./assets/icons/code.svg ***!\n \\*******************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/code.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/color.svg\":\n/*!********************************!*\\\n !*** ./assets/icons/color.svg ***!\n \\********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/color.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/direction-ltr.svg\":\n/*!****************************************!*\\\n !*** ./assets/icons/direction-ltr.svg ***!\n \\****************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/direction-ltr.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/direction-rtl.svg\":\n/*!****************************************!*\\\n !*** ./assets/icons/direction-rtl.svg ***!\n \\****************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/direction-rtl.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/dropdown.svg\":\n/*!***********************************!*\\\n !*** ./assets/icons/dropdown.svg ***!\n \\***********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/dropdown.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/formula.svg\":\n/*!**********************************!*\\\n !*** ./assets/icons/formula.svg ***!\n \\**********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/formula.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/header-2.svg\":\n/*!***********************************!*\\\n !*** ./assets/icons/header-2.svg ***!\n \\***********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/header-2.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/header.svg\":\n/*!*********************************!*\\\n !*** ./assets/icons/header.svg ***!\n \\*********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/header.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/image.svg\":\n/*!********************************!*\\\n !*** ./assets/icons/image.svg ***!\n \\********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/image.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/indent.svg\":\n/*!*********************************!*\\\n !*** ./assets/icons/indent.svg ***!\n \\*********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/indent.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/italic.svg\":\n/*!*********************************!*\\\n !*** ./assets/icons/italic.svg ***!\n \\*********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/italic.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/link.svg\":\n/*!*******************************!*\\\n !*** ./assets/icons/link.svg ***!\n \\*******************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/link.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/list-bullet.svg\":\n/*!**************************************!*\\\n !*** ./assets/icons/list-bullet.svg ***!\n \\**************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/list-bullet.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/list-check.svg\":\n/*!*************************************!*\\\n !*** ./assets/icons/list-check.svg ***!\n \\*************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/list-check.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/list-ordered.svg\":\n/*!***************************************!*\\\n !*** ./assets/icons/list-ordered.svg ***!\n \\***************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/list-ordered.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/outdent.svg\":\n/*!**********************************!*\\\n !*** ./assets/icons/outdent.svg ***!\n \\**********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/outdent.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/strike.svg\":\n/*!*********************************!*\\\n !*** ./assets/icons/strike.svg ***!\n \\*********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/strike.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/subscript.svg\":\n/*!************************************!*\\\n !*** ./assets/icons/subscript.svg ***!\n \\************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/subscript.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/superscript.svg\":\n/*!**************************************!*\\\n !*** ./assets/icons/superscript.svg ***!\n \\**************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/superscript.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/table.svg\":\n/*!********************************!*\\\n !*** ./assets/icons/table.svg ***!\n \\********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/table.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/underline.svg\":\n/*!************************************!*\\\n !*** ./assets/icons/underline.svg ***!\n \\************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/underline.svg?\");\n\n/***/ }),\n\n/***/ \"./assets/icons/video.svg\":\n/*!********************************!*\\\n !*** ./assets/icons/video.svg ***!\n \\********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// Module\\nvar code = \\\" \\\";\\n// Exports\\nmodule.exports = code;\\n\\n//# sourceURL=webpack://Quill/./assets/icons/video.svg?\");\n\n/***/ }),\n\n/***/ \"./blots/block.js\":\n/*!************************!*\\\n !*** ./blots/block.js ***!\n \\************************/\n/*! exports provided: blockDelta, bubbleFormats, BlockEmbed, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"blockDelta\\\", function() { return blockDelta; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"bubbleFormats\\\", function() { return bubbleFormats; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"BlockEmbed\\\", function() { return BlockEmbed; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Block; });\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_1__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _break__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./break */ \\\"./blots/break.js\\\");\\n/* harmony import */ var _inline__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./inline */ \\\"./blots/inline.js\\\");\\n/* harmony import */ var _text__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./text */ \\\"./blots/text.js\\\");\\n\\n\\n\\n\\n\\n\\nconst NEWLINE_LENGTH = 1;\\n\\nclass Block extends parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"BlockBlot\\\"] {\\n constructor(scroll, domNode) {\\n super(scroll, domNode);\\n this.cache = {};\\n }\\n\\n delta() {\\n if (this.cache.delta == null) {\\n this.cache.delta = blockDelta(this);\\n }\\n\\n return this.cache.delta;\\n }\\n\\n deleteAt(index, length) {\\n super.deleteAt(index, length);\\n this.cache = {};\\n }\\n\\n formatAt(index, length, name, value) {\\n if (length <= 0) return;\\n\\n if (this.scroll.query(name, parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"Scope\\\"].BLOCK)) {\\n if (index + length === this.length()) {\\n this.format(name, value);\\n }\\n } else {\\n super.formatAt(index, Math.min(length, this.length() - index - 1), name, value);\\n }\\n\\n this.cache = {};\\n }\\n\\n insertAt(index, value, def) {\\n if (def != null) {\\n super.insertAt(index, value, def);\\n this.cache = {};\\n return;\\n }\\n\\n if (value.length === 0) return;\\n const lines = value.split('\\\\n');\\n const text = lines.shift();\\n\\n if (text.length > 0) {\\n if (index < this.length() - 1 || this.children.tail == null) {\\n super.insertAt(Math.min(index, this.length() - 1), text);\\n } else {\\n this.children.tail.insertAt(this.children.tail.length(), text);\\n }\\n\\n this.cache = {};\\n }\\n\\n let block = this;\\n lines.reduce((lineIndex, line) => {\\n block = block.split(lineIndex, true);\\n block.insertAt(0, line);\\n return line.length;\\n }, index + text.length);\\n }\\n\\n insertBefore(blot, ref) {\\n const {\\n head\\n } = this.children;\\n super.insertBefore(blot, ref);\\n\\n if (head instanceof _break__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"]) {\\n head.remove();\\n }\\n\\n this.cache = {};\\n }\\n\\n length() {\\n if (this.cache.length == null) {\\n this.cache.length = super.length() + NEWLINE_LENGTH;\\n }\\n\\n return this.cache.length;\\n }\\n\\n moveChildren(target, ref) {\\n super.moveChildren(target, ref);\\n this.cache = {};\\n }\\n\\n optimize(context) {\\n super.optimize(context);\\n this.cache = {};\\n }\\n\\n path(index) {\\n return super.path(index, true);\\n }\\n\\n removeChild(child) {\\n super.removeChild(child);\\n this.cache = {};\\n }\\n\\n split(index, force = false) {\\n if (force && (index === 0 || index >= this.length() - NEWLINE_LENGTH)) {\\n const clone = this.clone();\\n\\n if (index === 0) {\\n this.parent.insertBefore(clone, this);\\n return this;\\n }\\n\\n this.parent.insertBefore(clone, this.next);\\n return clone;\\n }\\n\\n const next = super.split(index, force);\\n this.cache = {};\\n return next;\\n }\\n\\n}\\n\\nBlock.blotName = 'block';\\nBlock.tagName = 'P';\\nBlock.defaultChild = _break__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"];\\nBlock.allowedChildren = [_break__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"], _inline__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"], parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"EmbedBlot\\\"], _text__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"]];\\n\\nclass BlockEmbed extends parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"EmbedBlot\\\"] {\\n attach() {\\n super.attach();\\n this.attributes = new parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"AttributorStore\\\"](this.domNode);\\n }\\n\\n delta() {\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().insert(this.value(), extend__WEBPACK_IMPORTED_MODULE_0___default()(this.formats(), this.attributes.values()));\\n }\\n\\n format(name, value) {\\n const attribute = this.scroll.query(name, parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"Scope\\\"].BLOCK_ATTRIBUTE);\\n\\n if (attribute != null) {\\n this.attributes.attribute(attribute, value);\\n }\\n }\\n\\n formatAt(index, length, name, value) {\\n this.format(name, value);\\n }\\n\\n insertAt(index, value, def) {\\n if (typeof value === 'string' && value.endsWith('\\\\n')) {\\n const block = this.scroll.create(Block.blotName);\\n this.parent.insertBefore(block, index === 0 ? this : this.next);\\n block.insertAt(0, value.slice(0, -1));\\n } else {\\n super.insertAt(index, value, def);\\n }\\n }\\n\\n}\\n\\nBlockEmbed.scope = parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"Scope\\\"].BLOCK_BLOT; // It is important for cursor behavior BlockEmbeds use tags that are block level elements\\n\\nfunction blockDelta(blot, filter = true) {\\n return blot.descendants(parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"LeafBlot\\\"]).reduce((delta, leaf) => {\\n if (leaf.length() === 0) {\\n return delta;\\n }\\n\\n return delta.insert(leaf.value(), bubbleFormats(leaf, {}, filter));\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a()).insert('\\\\n', bubbleFormats(blot));\\n}\\n\\nfunction bubbleFormats(blot, formats = {}, filter = true) {\\n if (blot == null) return formats;\\n\\n if (typeof blot.formats === 'function') {\\n formats = extend__WEBPACK_IMPORTED_MODULE_0___default()(formats, blot.formats());\\n\\n if (filter) {\\n // exclude syntax highlighting from deltas and getFormat()\\n delete formats['code-token'];\\n }\\n }\\n\\n if (blot.parent == null || blot.parent.statics.blotName === 'scroll' || blot.parent.statics.scope !== blot.statics.scope) {\\n return formats;\\n }\\n\\n return bubbleFormats(blot.parent, formats, filter);\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./blots/block.js?\");\n\n/***/ }),\n\n/***/ \"./blots/break.js\":\n/*!************************!*\\\n !*** ./blots/break.js ***!\n \\************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\n\\nclass Break extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"EmbedBlot\\\"] {\\n static value() {\\n return undefined;\\n }\\n\\n optimize() {\\n if (this.prev || this.next) {\\n this.remove();\\n }\\n }\\n\\n length() {\\n return 0;\\n }\\n\\n value() {\\n return '';\\n }\\n\\n}\\n\\nBreak.blotName = 'break';\\nBreak.tagName = 'BR';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Break);\\n\\n//# sourceURL=webpack://Quill/./blots/break.js?\");\n\n/***/ }),\n\n/***/ \"./blots/container.js\":\n/*!****************************!*\\\n !*** ./blots/container.js ***!\n \\****************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\n\\nclass Container extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ContainerBlot\\\"] {}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Container);\\n\\n//# sourceURL=webpack://Quill/./blots/container.js?\");\n\n/***/ }),\n\n/***/ \"./blots/cursor.js\":\n/*!*************************!*\\\n !*** ./blots/cursor.js ***!\n \\*************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _text__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./text */ \\\"./blots/text.js\\\");\\n\\n\\n\\nclass Cursor extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"EmbedBlot\\\"] {\\n static value() {\\n return undefined;\\n }\\n\\n constructor(scroll, domNode, selection) {\\n super(scroll, domNode);\\n this.selection = selection;\\n this.textNode = document.createTextNode(Cursor.CONTENTS);\\n this.domNode.appendChild(this.textNode);\\n this.savedLength = 0;\\n }\\n\\n detach() {\\n // super.detach() will also clear domNode.__blot\\n if (this.parent != null) this.parent.removeChild(this);\\n }\\n\\n format(name, value) {\\n if (this.savedLength !== 0) {\\n super.format(name, value);\\n return;\\n }\\n\\n let target = this;\\n let index = 0;\\n\\n while (target != null && target.statics.scope !== parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOCK_BLOT) {\\n index += target.offset(target.parent);\\n target = target.parent;\\n }\\n\\n if (target != null) {\\n this.savedLength = Cursor.CONTENTS.length;\\n target.optimize();\\n target.formatAt(index, Cursor.CONTENTS.length, name, value);\\n this.savedLength = 0;\\n }\\n }\\n\\n index(node, offset) {\\n if (node === this.textNode) return 0;\\n return super.index(node, offset);\\n }\\n\\n length() {\\n return this.savedLength;\\n }\\n\\n position() {\\n return [this.textNode, this.textNode.data.length];\\n }\\n\\n remove() {\\n super.remove();\\n this.parent = null;\\n }\\n\\n restore() {\\n if (this.selection.composing || this.parent == null) return null;\\n const range = this.selection.getNativeRange(); // Link format will insert text outside of anchor tag\\n\\n while (this.domNode.lastChild != null && this.domNode.lastChild !== this.textNode) {\\n this.domNode.parentNode.insertBefore(this.domNode.lastChild, this.domNode);\\n }\\n\\n const prevTextBlot = this.prev instanceof _text__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] ? this.prev : null;\\n const prevTextLength = prevTextBlot ? prevTextBlot.length() : 0;\\n const nextTextBlot = this.next instanceof _text__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] ? this.next : null;\\n const nextText = nextTextBlot ? nextTextBlot.text : '';\\n const {\\n textNode\\n } = this; // take text from inside this blot and reset it\\n\\n const newText = textNode.data.split(Cursor.CONTENTS).join('');\\n textNode.data = Cursor.CONTENTS; // proactively merge TextBlots around cursor so that optimization\\n // doesn't lose the cursor. the reason we are here in cursor.restore\\n // could be that the user clicked in prevTextBlot or nextTextBlot, or\\n // the user typed something.\\n\\n let mergedTextBlot;\\n\\n if (prevTextBlot) {\\n mergedTextBlot = prevTextBlot;\\n\\n if (newText || nextTextBlot) {\\n prevTextBlot.insertAt(prevTextBlot.length(), newText + nextText);\\n\\n if (nextTextBlot) {\\n nextTextBlot.remove();\\n }\\n }\\n } else if (nextTextBlot) {\\n mergedTextBlot = nextTextBlot;\\n nextTextBlot.insertAt(0, newText);\\n } else {\\n const newTextNode = document.createTextNode(newText);\\n mergedTextBlot = this.scroll.create(newTextNode);\\n this.parent.insertBefore(mergedTextBlot, this);\\n }\\n\\n this.remove();\\n\\n if (range) {\\n // calculate selection to restore\\n const remapOffset = (node, offset) => {\\n if (prevTextBlot && node === prevTextBlot.domNode) {\\n return offset;\\n }\\n\\n if (node === textNode) {\\n return prevTextLength + offset - 1;\\n }\\n\\n if (nextTextBlot && node === nextTextBlot.domNode) {\\n return prevTextLength + newText.length + offset;\\n }\\n\\n return null;\\n };\\n\\n const start = remapOffset(range.start.node, range.start.offset);\\n const end = remapOffset(range.end.node, range.end.offset);\\n\\n if (start !== null && end !== null) {\\n return {\\n startNode: mergedTextBlot.domNode,\\n startOffset: start,\\n endNode: mergedTextBlot.domNode,\\n endOffset: end\\n };\\n }\\n }\\n\\n return null;\\n }\\n\\n update(mutations, context) {\\n if (mutations.some(mutation => {\\n return mutation.type === 'characterData' && mutation.target === this.textNode;\\n })) {\\n const range = this.restore();\\n if (range) context.range = range;\\n }\\n }\\n\\n value() {\\n return '';\\n }\\n\\n}\\n\\nCursor.blotName = 'cursor';\\nCursor.className = 'ql-cursor';\\nCursor.tagName = 'span';\\nCursor.CONTENTS = '\\\\uFEFF'; // Zero width no break space\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Cursor);\\n\\n//# sourceURL=webpack://Quill/./blots/cursor.js?\");\n\n/***/ }),\n\n/***/ \"./blots/embed.js\":\n/*!************************!*\\\n !*** ./blots/embed.js ***!\n \\************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _text__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./text */ \\\"./blots/text.js\\\");\\n\\n\\nconst GUARD_TEXT = '\\\\uFEFF';\\n\\nclass Embed extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"EmbedBlot\\\"] {\\n constructor(scroll, node) {\\n super(scroll, node);\\n this.contentNode = document.createElement('span');\\n this.contentNode.setAttribute('contenteditable', false);\\n Array.from(this.domNode.childNodes).forEach(childNode => {\\n this.contentNode.appendChild(childNode);\\n });\\n this.leftGuard = document.createTextNode(GUARD_TEXT);\\n this.rightGuard = document.createTextNode(GUARD_TEXT);\\n this.domNode.appendChild(this.leftGuard);\\n this.domNode.appendChild(this.contentNode);\\n this.domNode.appendChild(this.rightGuard);\\n }\\n\\n index(node, offset) {\\n if (node === this.leftGuard) return 0;\\n if (node === this.rightGuard) return 1;\\n return super.index(node, offset);\\n }\\n\\n restore(node) {\\n let range;\\n let textNode;\\n const text = node.data.split(GUARD_TEXT).join('');\\n\\n if (node === this.leftGuard) {\\n if (this.prev instanceof _text__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"]) {\\n const prevLength = this.prev.length();\\n this.prev.insertAt(prevLength, text);\\n range = {\\n startNode: this.prev.domNode,\\n startOffset: prevLength + text.length\\n };\\n } else {\\n textNode = document.createTextNode(text);\\n this.parent.insertBefore(this.scroll.create(textNode), this);\\n range = {\\n startNode: textNode,\\n startOffset: text.length\\n };\\n }\\n } else if (node === this.rightGuard) {\\n if (this.next instanceof _text__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"]) {\\n this.next.insertAt(0, text);\\n range = {\\n startNode: this.next.domNode,\\n startOffset: text.length\\n };\\n } else {\\n textNode = document.createTextNode(text);\\n this.parent.insertBefore(this.scroll.create(textNode), this.next);\\n range = {\\n startNode: textNode,\\n startOffset: text.length\\n };\\n }\\n }\\n\\n node.data = GUARD_TEXT;\\n return range;\\n }\\n\\n update(mutations, context) {\\n mutations.forEach(mutation => {\\n if (mutation.type === 'characterData' && (mutation.target === this.leftGuard || mutation.target === this.rightGuard)) {\\n const range = this.restore(mutation.target);\\n if (range) context.range = range;\\n }\\n });\\n }\\n\\n}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Embed);\\n\\n//# sourceURL=webpack://Quill/./blots/embed.js?\");\n\n/***/ }),\n\n/***/ \"./blots/inline.js\":\n/*!*************************!*\\\n !*** ./blots/inline.js ***!\n \\*************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _break__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./break */ \\\"./blots/break.js\\\");\\n/* harmony import */ var _text__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./text */ \\\"./blots/text.js\\\");\\n\\n\\n\\n\\nclass Inline extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"InlineBlot\\\"] {\\n static compare(self, other) {\\n const selfIndex = Inline.order.indexOf(self);\\n const otherIndex = Inline.order.indexOf(other);\\n\\n if (selfIndex >= 0 || otherIndex >= 0) {\\n return selfIndex - otherIndex;\\n }\\n\\n if (self === other) {\\n return 0;\\n }\\n\\n if (self < other) {\\n return -1;\\n }\\n\\n return 1;\\n }\\n\\n formatAt(index, length, name, value) {\\n if (Inline.compare(this.statics.blotName, name) < 0 && this.scroll.query(name, parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOT)) {\\n const blot = this.isolate(index, length);\\n\\n if (value) {\\n blot.wrap(name, value);\\n }\\n } else {\\n super.formatAt(index, length, name, value);\\n }\\n }\\n\\n optimize(context) {\\n super.optimize(context);\\n\\n if (this.parent instanceof Inline && Inline.compare(this.statics.blotName, this.parent.statics.blotName) > 0) {\\n const parent = this.parent.isolate(this.offset(), this.length());\\n this.moveChildren(parent);\\n parent.wrap(this);\\n }\\n }\\n\\n}\\n\\nInline.allowedChildren = [Inline, _break__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"], parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"EmbedBlot\\\"], _text__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"]]; // Lower index means deeper in the DOM tree, since not found (-1) is for embeds\\n\\nInline.order = ['cursor', 'inline', // Must be lower\\n'link', // Chrome wants to be lower\\n'underline', 'strike', 'italic', 'bold', 'script', 'code' // Must be higher\\n];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Inline);\\n\\n//# sourceURL=webpack://Quill/./blots/inline.js?\");\n\n/***/ }),\n\n/***/ \"./blots/scroll.js\":\n/*!*************************!*\\\n !*** ./blots/scroll.js ***!\n \\*************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _core_emitter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/emitter */ \\\"./core/emitter.js\\\");\\n/* harmony import */ var _block__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _break__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./break */ \\\"./blots/break.js\\\");\\n/* harmony import */ var _container__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./container */ \\\"./blots/container.js\\\");\\n\\n\\n\\n\\n\\n\\nfunction isLine(blot) {\\n return blot instanceof _block__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] || blot instanceof _block__WEBPACK_IMPORTED_MODULE_2__[\\\"BlockEmbed\\\"];\\n}\\n\\nclass Scroll extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ScrollBlot\\\"] {\\n constructor(registry, domNode, {\\n emitter\\n }) {\\n super(registry, domNode);\\n this.emitter = emitter;\\n this.batch = false;\\n this.optimize();\\n this.enable();\\n this.domNode.addEventListener('dragstart', e => this.handleDragStart(e));\\n }\\n\\n batchStart() {\\n if (!Array.isArray(this.batch)) {\\n this.batch = [];\\n }\\n }\\n\\n batchEnd() {\\n const mutations = this.batch;\\n this.batch = false;\\n this.update(mutations);\\n }\\n\\n emitMount(blot) {\\n this.emitter.emit(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SCROLL_BLOT_MOUNT, blot);\\n }\\n\\n emitUnmount(blot) {\\n this.emitter.emit(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SCROLL_BLOT_UNMOUNT, blot);\\n }\\n\\n deleteAt(index, length) {\\n const [first, offset] = this.line(index);\\n const [last] = this.line(index + length);\\n super.deleteAt(index, length);\\n\\n if (last != null && first !== last && offset > 0) {\\n if (first instanceof _block__WEBPACK_IMPORTED_MODULE_2__[\\\"BlockEmbed\\\"] || last instanceof _block__WEBPACK_IMPORTED_MODULE_2__[\\\"BlockEmbed\\\"]) {\\n this.optimize();\\n return;\\n }\\n\\n const ref = last.children.head instanceof _break__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"] ? null : last.children.head;\\n first.moveChildren(last, ref);\\n first.remove();\\n }\\n\\n this.optimize();\\n }\\n\\n enable(enabled = true) {\\n this.domNode.setAttribute('contenteditable', enabled);\\n }\\n\\n formatAt(index, length, format, value) {\\n super.formatAt(index, length, format, value);\\n this.optimize();\\n }\\n\\n handleDragStart(event) {\\n event.preventDefault();\\n }\\n\\n insertAt(index, value, def) {\\n if (index >= this.length()) {\\n if (def == null || this.scroll.query(value, parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOCK) == null) {\\n const blot = this.scroll.create(this.statics.defaultChild.blotName);\\n this.appendChild(blot);\\n\\n if (def == null && value.endsWith('\\\\n')) {\\n blot.insertAt(0, value.slice(0, -1), def);\\n } else {\\n blot.insertAt(0, value, def);\\n }\\n } else {\\n const embed = this.scroll.create(value, def);\\n this.appendChild(embed);\\n }\\n } else {\\n super.insertAt(index, value, def);\\n }\\n\\n this.optimize();\\n }\\n\\n insertBefore(blot, ref) {\\n if (blot.statics.scope === parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE_BLOT) {\\n const wrapper = this.scroll.create(this.statics.defaultChild.blotName);\\n wrapper.appendChild(blot);\\n super.insertBefore(wrapper, ref);\\n } else {\\n super.insertBefore(blot, ref);\\n }\\n }\\n\\n isEnabled() {\\n return this.domNode.getAttribute('contenteditable') === 'true';\\n }\\n\\n leaf(index) {\\n return this.path(index).pop() || [null, -1];\\n }\\n\\n line(index) {\\n if (index === this.length()) {\\n return this.line(index - 1);\\n }\\n\\n return this.descendant(isLine, index);\\n }\\n\\n lines(index = 0, length = Number.MAX_VALUE) {\\n const getLines = (blot, blotIndex, blotLength) => {\\n let lines = [];\\n let lengthLeft = blotLength;\\n blot.children.forEachAt(blotIndex, blotLength, (child, childIndex, childLength) => {\\n if (isLine(child)) {\\n lines.push(child);\\n } else if (child instanceof parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ContainerBlot\\\"]) {\\n lines = lines.concat(getLines(child, childIndex, lengthLeft));\\n }\\n\\n lengthLeft -= childLength;\\n });\\n return lines;\\n };\\n\\n return getLines(this, index, length);\\n }\\n\\n optimize(mutations = [], context = {}) {\\n if (this.batch) return;\\n super.optimize(mutations, context);\\n\\n if (mutations.length > 0) {\\n this.emitter.emit(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SCROLL_OPTIMIZE, mutations, context);\\n }\\n }\\n\\n path(index) {\\n return super.path(index).slice(1); // Exclude self\\n }\\n\\n remove() {// Never remove self\\n }\\n\\n update(mutations) {\\n if (this.batch) {\\n if (Array.isArray(mutations)) {\\n this.batch = this.batch.concat(mutations);\\n }\\n\\n return;\\n }\\n\\n let source = _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER;\\n\\n if (typeof mutations === 'string') {\\n source = mutations;\\n }\\n\\n if (!Array.isArray(mutations)) {\\n mutations = this.observer.takeRecords();\\n }\\n\\n if (mutations.length > 0) {\\n this.emitter.emit(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SCROLL_BEFORE_UPDATE, source, mutations);\\n }\\n\\n super.update(mutations.concat([])); // pass copy\\n\\n if (mutations.length > 0) {\\n this.emitter.emit(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SCROLL_UPDATE, source, mutations);\\n }\\n }\\n\\n}\\n\\nScroll.blotName = 'scroll';\\nScroll.className = 'ql-editor';\\nScroll.tagName = 'DIV';\\nScroll.defaultChild = _block__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"];\\nScroll.allowedChildren = [_block__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"], _block__WEBPACK_IMPORTED_MODULE_2__[\\\"BlockEmbed\\\"], _container__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"]];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Scroll);\\n\\n//# sourceURL=webpack://Quill/./blots/scroll.js?\");\n\n/***/ }),\n\n/***/ \"./blots/text.js\":\n/*!***********************!*\\\n !*** ./blots/text.js ***!\n \\***********************/\n/*! exports provided: default, escapeText */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Text; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"escapeText\\\", function() { return escapeText; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\n\\nclass Text extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"TextBlot\\\"] {}\\n\\nfunction escapeText(text) {\\n return text.replace(/[&<>\\\"']/g, s => {\\n // https://lodash.com/docs#escape\\n const entityMap = {\\n '&': '&',\\n '<': '<',\\n '>': '>',\\n '\\\"': '"',\\n \\\"'\\\": '''\\n };\\n return entityMap[s];\\n });\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./blots/text.js?\");\n\n/***/ }),\n\n/***/ \"./core.js\":\n/*!*****************!*\\\n !*** ./core.js ***!\n \\*****************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core/quill */ \\\"./core/quill.js\\\");\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _blots_break__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./blots/break */ \\\"./blots/break.js\\\");\\n/* harmony import */ var _blots_container__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./blots/container */ \\\"./blots/container.js\\\");\\n/* harmony import */ var _blots_cursor__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./blots/cursor */ \\\"./blots/cursor.js\\\");\\n/* harmony import */ var _blots_embed__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./blots/embed */ \\\"./blots/embed.js\\\");\\n/* harmony import */ var _blots_inline__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./blots/inline */ \\\"./blots/inline.js\\\");\\n/* harmony import */ var _blots_scroll__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./blots/scroll */ \\\"./blots/scroll.js\\\");\\n/* harmony import */ var _blots_text__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./blots/text */ \\\"./blots/text.js\\\");\\n/* harmony import */ var _modules_clipboard__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./modules/clipboard */ \\\"./modules/clipboard.js\\\");\\n/* harmony import */ var _modules_history__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./modules/history */ \\\"./modules/history.js\\\");\\n/* harmony import */ var _modules_keyboard__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./modules/keyboard */ \\\"./modules/keyboard.js\\\");\\n/* harmony import */ var _modules_uploader__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./modules/uploader */ \\\"./modules/uploader.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n_core_quill__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].register({\\n 'blots/block': _blots_block__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"],\\n 'blots/block/embed': _blots_block__WEBPACK_IMPORTED_MODULE_1__[\\\"BlockEmbed\\\"],\\n 'blots/break': _blots_break__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"],\\n 'blots/container': _blots_container__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"],\\n 'blots/cursor': _blots_cursor__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"],\\n 'blots/embed': _blots_embed__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"],\\n 'blots/inline': _blots_inline__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"],\\n 'blots/scroll': _blots_scroll__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"],\\n 'blots/text': _blots_text__WEBPACK_IMPORTED_MODULE_8__[\\\"default\\\"],\\n 'modules/clipboard': _modules_clipboard__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"],\\n 'modules/history': _modules_history__WEBPACK_IMPORTED_MODULE_10__[\\\"default\\\"],\\n 'modules/keyboard': _modules_keyboard__WEBPACK_IMPORTED_MODULE_11__[\\\"default\\\"],\\n 'modules/uploader': _modules_uploader__WEBPACK_IMPORTED_MODULE_12__[\\\"default\\\"]\\n});\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (_core_quill__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]);\\n\\n//# sourceURL=webpack://Quill/./core.js?\");\n\n/***/ }),\n\n/***/ \"./core/editor.js\":\n/*!************************!*\\\n !*** ./core/editor.js ***!\n \\************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var clone__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! clone */ \\\"./node_modules/clone/clone.js\\\");\\n/* harmony import */ var clone__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(clone__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var deep_equal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! deep-equal */ \\\"./node_modules/deep-equal/index.js\\\");\\n/* harmony import */ var deep_equal__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(deep_equal__WEBPACK_IMPORTED_MODULE_1__);\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_2__);\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_3__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _selection__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./selection */ \\\"./core/selection.js\\\");\\n/* harmony import */ var _blots_cursor__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../blots/cursor */ \\\"./blots/cursor.js\\\");\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _blots_break__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../blots/break */ \\\"./blots/break.js\\\");\\n/* harmony import */ var _blots_text__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../blots/text */ \\\"./blots/text.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nconst ASCII = /^[ -~]*$/;\\n\\nclass Editor {\\n constructor(scroll) {\\n this.scroll = scroll;\\n this.delta = this.getDelta();\\n }\\n\\n applyDelta(delta) {\\n let consumeNextNewline = false;\\n this.scroll.update();\\n let scrollLength = this.scroll.length();\\n this.scroll.batchStart();\\n const normalizedDelta = normalizeDelta(delta);\\n normalizedDelta.reduce((index, op) => {\\n const length = op.retain || op.delete || op.insert.length || 1;\\n let attributes = op.attributes || {};\\n\\n if (op.insert != null) {\\n if (typeof op.insert === 'string') {\\n let text = op.insert;\\n\\n if (text.endsWith('\\\\n') && consumeNextNewline) {\\n consumeNextNewline = false;\\n text = text.slice(0, -1);\\n }\\n\\n if ((index >= scrollLength || this.scroll.descendant(_blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"BlockEmbed\\\"], index)[0]) && !text.endsWith('\\\\n')) {\\n consumeNextNewline = true;\\n }\\n\\n this.scroll.insertAt(index, text);\\n const [line, offset] = this.scroll.line(index);\\n let formats = extend__WEBPACK_IMPORTED_MODULE_2___default()({}, Object(_blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"bubbleFormats\\\"])(line));\\n\\n if (line instanceof _blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"]) {\\n const [leaf] = line.descendant(parchment__WEBPACK_IMPORTED_MODULE_4__[\\\"LeafBlot\\\"], offset);\\n formats = extend__WEBPACK_IMPORTED_MODULE_2___default()(formats, Object(_blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"bubbleFormats\\\"])(leaf));\\n }\\n\\n attributes = quill_delta__WEBPACK_IMPORTED_MODULE_3__[\\\"AttributeMap\\\"].diff(formats, attributes) || {};\\n } else if (typeof op.insert === 'object') {\\n const key = Object.keys(op.insert)[0]; // There should only be one key\\n\\n if (key == null) return index;\\n this.scroll.insertAt(index, key, op.insert[key]);\\n }\\n\\n scrollLength += length;\\n }\\n\\n Object.keys(attributes).forEach(name => {\\n this.scroll.formatAt(index, length, name, attributes[name]);\\n });\\n return index + length;\\n }, 0);\\n normalizedDelta.reduce((index, op) => {\\n if (typeof op.delete === 'number') {\\n this.scroll.deleteAt(index, op.delete);\\n return index;\\n }\\n\\n return index + (op.retain || op.insert.length || 1);\\n }, 0);\\n this.scroll.batchEnd();\\n this.scroll.optimize();\\n return this.update(normalizedDelta);\\n }\\n\\n deleteText(index, length) {\\n this.scroll.deleteAt(index, length);\\n return this.update(new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).delete(length));\\n }\\n\\n formatLine(index, length, formats = {}) {\\n this.scroll.update();\\n Object.keys(formats).forEach(format => {\\n this.scroll.lines(index, Math.max(length, 1)).forEach(line => {\\n line.format(format, formats[format]);\\n });\\n });\\n this.scroll.optimize();\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).retain(length, clone__WEBPACK_IMPORTED_MODULE_0___default()(formats));\\n return this.update(delta);\\n }\\n\\n formatText(index, length, formats = {}) {\\n Object.keys(formats).forEach(format => {\\n this.scroll.formatAt(index, length, format, formats[format]);\\n });\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).retain(length, clone__WEBPACK_IMPORTED_MODULE_0___default()(formats));\\n return this.update(delta);\\n }\\n\\n getContents(index, length) {\\n return this.delta.slice(index, index + length);\\n }\\n\\n getDelta() {\\n return this.scroll.lines().reduce((delta, line) => {\\n return delta.concat(line.delta());\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a());\\n }\\n\\n getFormat(index, length = 0) {\\n let lines = [];\\n let leaves = [];\\n\\n if (length === 0) {\\n this.scroll.path(index).forEach(path => {\\n const [blot] = path;\\n\\n if (blot instanceof _blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"]) {\\n lines.push(blot);\\n } else if (blot instanceof parchment__WEBPACK_IMPORTED_MODULE_4__[\\\"LeafBlot\\\"]) {\\n leaves.push(blot);\\n }\\n });\\n } else {\\n lines = this.scroll.lines(index, length);\\n leaves = this.scroll.descendants(parchment__WEBPACK_IMPORTED_MODULE_4__[\\\"LeafBlot\\\"], index, length);\\n }\\n\\n const formatsArr = [lines, leaves].map(blots => {\\n if (blots.length === 0) return {};\\n let formats = Object(_blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"bubbleFormats\\\"])(blots.shift());\\n\\n while (Object.keys(formats).length > 0) {\\n const blot = blots.shift();\\n if (blot == null) return formats;\\n formats = combineFormats(Object(_blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"bubbleFormats\\\"])(blot), formats);\\n }\\n\\n return formats;\\n });\\n return extend__WEBPACK_IMPORTED_MODULE_2___default.a.apply(extend__WEBPACK_IMPORTED_MODULE_2___default.a, formatsArr);\\n }\\n\\n getHTML(index, length) {\\n const [line, lineOffset] = this.scroll.line(index);\\n\\n if (line.length() >= lineOffset + length) {\\n return convertHTML(line, lineOffset, length, true);\\n }\\n\\n return convertHTML(this.scroll, index, length, true);\\n }\\n\\n getText(index, length) {\\n return this.getContents(index, length).filter(op => typeof op.insert === 'string').map(op => op.insert).join('');\\n }\\n\\n insertEmbed(index, embed, value) {\\n this.scroll.insertAt(index, embed, value);\\n return this.update(new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).insert({\\n [embed]: value\\n }));\\n }\\n\\n insertText(index, text, formats = {}) {\\n text = text.replace(/\\\\r\\\\n/g, '\\\\n').replace(/\\\\r/g, '\\\\n');\\n this.scroll.insertAt(index, text);\\n Object.keys(formats).forEach(format => {\\n this.scroll.formatAt(index, text.length, format, formats[format]);\\n });\\n return this.update(new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).insert(text, clone__WEBPACK_IMPORTED_MODULE_0___default()(formats)));\\n }\\n\\n isBlank() {\\n if (this.scroll.children.length === 0) return true;\\n if (this.scroll.children.length > 1) return false;\\n const block = this.scroll.children.head;\\n if (block.statics.blotName !== _blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"].blotName) return false;\\n if (block.children.length > 1) return false;\\n return block.children.head instanceof _blots_break__WEBPACK_IMPORTED_MODULE_8__[\\\"default\\\"];\\n }\\n\\n removeFormat(index, length) {\\n const text = this.getText(index, length);\\n const [line, offset] = this.scroll.line(index + length);\\n let suffixLength = 0;\\n let suffix = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a();\\n\\n if (line != null) {\\n suffixLength = line.length() - offset;\\n suffix = line.delta().slice(offset, offset + suffixLength - 1).insert('\\\\n');\\n }\\n\\n const contents = this.getContents(index, length + suffixLength);\\n const diff = contents.diff(new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().insert(text).concat(suffix));\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).concat(diff);\\n return this.applyDelta(delta);\\n }\\n\\n update(change, mutations = [], selectionInfo = undefined) {\\n const oldDelta = this.delta;\\n\\n if (mutations.length === 1 && mutations[0].type === 'characterData' && mutations[0].target.data.match(ASCII) && this.scroll.find(mutations[0].target)) {\\n // Optimization for character changes\\n const textBlot = this.scroll.find(mutations[0].target);\\n const formats = Object(_blots_block__WEBPACK_IMPORTED_MODULE_7__[\\\"bubbleFormats\\\"])(textBlot);\\n const index = textBlot.offset(this.scroll);\\n const oldValue = mutations[0].oldValue.replace(_blots_cursor__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"].CONTENTS, '');\\n const oldText = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().insert(oldValue);\\n const newText = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().insert(textBlot.value());\\n const relativeSelectionInfo = selectionInfo && {\\n oldRange: shiftRange(selectionInfo.oldRange, -index),\\n newRange: shiftRange(selectionInfo.newRange, -index)\\n };\\n const diffDelta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).concat(oldText.diff(newText, relativeSelectionInfo));\\n change = diffDelta.reduce((delta, op) => {\\n if (op.insert) {\\n return delta.insert(op.insert, formats);\\n }\\n\\n return delta.push(op);\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a());\\n this.delta = oldDelta.compose(change);\\n } else {\\n this.delta = this.getDelta();\\n\\n if (!change || !deep_equal__WEBPACK_IMPORTED_MODULE_1___default()(oldDelta.compose(change), this.delta)) {\\n change = oldDelta.diff(this.delta, selectionInfo);\\n }\\n }\\n\\n return change;\\n }\\n\\n}\\n\\nfunction convertListHTML(items, lastIndent, types) {\\n if (items.length === 0) {\\n const [endTag] = getListType(types.pop());\\n\\n if (lastIndent <= 0) {\\n return \\\"\\\");\\n }\\n\\n return \\\"\\\").concat(convertListHTML([], lastIndent - 1, types));\\n }\\n\\n const [{\\n child,\\n offset,\\n length,\\n indent,\\n type\\n }, ...rest] = items;\\n const [tag, attribute] = getListType(type);\\n\\n if (indent > lastIndent) {\\n types.push(type);\\n\\n if (indent === lastIndent + 1) {\\n return \\\"<\\\".concat(tag, \\\">\\\").concat(convertHTML(child, offset, length)).concat(convertListHTML(rest, indent, types));\\n }\\n\\n return \\\"<\\\".concat(tag, \\\">
  • \\\").concat(convertListHTML(items, lastIndent + 1, types));\\n }\\n\\n const previousType = types[types.length - 1];\\n\\n if (indent === lastIndent && type === previousType) {\\n return \\\"
  • \\\").concat(convertHTML(child, offset, length)).concat(convertListHTML(rest, indent, types));\\n }\\n\\n const [endTag] = getListType(types.pop());\\n return \\\"\\\").concat(convertListHTML(items, lastIndent - 1, types));\\n}\\n\\nfunction convertHTML(blot, index, length, isRoot = false) {\\n if (typeof blot.html === 'function') {\\n return blot.html(index, length);\\n }\\n\\n if (blot instanceof _blots_text__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"]) {\\n return Object(_blots_text__WEBPACK_IMPORTED_MODULE_9__[\\\"escapeText\\\"])(blot.value().slice(index, index + length));\\n }\\n\\n if (blot.children) {\\n // TODO fix API\\n if (blot.statics.blotName === 'list-container') {\\n const items = [];\\n blot.children.forEachAt(index, length, (child, offset, childLength) => {\\n const formats = child.formats();\\n items.push({\\n child,\\n offset,\\n length: childLength,\\n indent: formats.indent || 0,\\n type: formats.list\\n });\\n });\\n return convertListHTML(items, -1, []);\\n }\\n\\n const parts = [];\\n blot.children.forEachAt(index, length, (child, offset, childLength) => {\\n parts.push(convertHTML(child, offset, childLength));\\n });\\n\\n if (isRoot || blot.statics.blotName === 'list') {\\n return parts.join('');\\n }\\n\\n const {\\n outerHTML,\\n innerHTML\\n } = blot.domNode;\\n const [start, end] = outerHTML.split(\\\">\\\".concat(innerHTML, \\\"<\\\")); // TODO cleanup\\n\\n if (start === '\\\".concat(parts.join(''), \\\"<\\\").concat(end);\\n }\\n\\n return \\\"\\\".concat(start, \\\">\\\").concat(parts.join(''), \\\"<\\\").concat(end);\\n }\\n\\n return blot.domNode.outerHTML;\\n}\\n\\nfunction combineFormats(formats, combined) {\\n return Object.keys(combined).reduce((merged, name) => {\\n if (formats[name] == null) return merged;\\n\\n if (combined[name] === formats[name]) {\\n merged[name] = combined[name];\\n } else if (Array.isArray(combined[name])) {\\n if (combined[name].indexOf(formats[name]) < 0) {\\n merged[name] = combined[name].concat([formats[name]]);\\n }\\n } else {\\n merged[name] = [combined[name], formats[name]];\\n }\\n\\n return merged;\\n }, {});\\n}\\n\\nfunction getListType(type) {\\n const tag = type === 'ordered' ? 'ol' : 'ul';\\n\\n switch (type) {\\n case 'checked':\\n return [tag, ' data-list=\\\"checked\\\"'];\\n\\n case 'unchecked':\\n return [tag, ' data-list=\\\"unchecked\\\"'];\\n\\n default:\\n return [tag, ''];\\n }\\n}\\n\\nfunction normalizeDelta(delta) {\\n return delta.reduce((normalizedDelta, op) => {\\n if (typeof op.insert === 'string') {\\n const text = op.insert.replace(/\\\\r\\\\n/g, '\\\\n').replace(/\\\\r/g, '\\\\n');\\n return normalizedDelta.insert(text, op.attributes);\\n }\\n\\n return normalizedDelta.push(op);\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a());\\n}\\n\\nfunction shiftRange({\\n index,\\n length\\n}, amount) {\\n return new _selection__WEBPACK_IMPORTED_MODULE_5__[\\\"Range\\\"](index + amount, length);\\n}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Editor);\\n\\n//# sourceURL=webpack://Quill/./core/editor.js?\");\n\n/***/ }),\n\n/***/ \"./core/emitter.js\":\n/*!*************************!*\\\n !*** ./core/emitter.js ***!\n \\*************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var eventemitter3__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! eventemitter3 */ \\\"./node_modules/eventemitter3/index.js\\\");\\n/* harmony import */ var eventemitter3__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(eventemitter3__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var _instances__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instances */ \\\"./core/instances.js\\\");\\n/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./logger */ \\\"./core/logger.js\\\");\\n\\n\\n\\nconst debug = Object(_logger__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"])('quill:events');\\nconst EVENTS = ['selectionchange', 'mousedown', 'mouseup', 'click'];\\nEVENTS.forEach(eventName => {\\n document.addEventListener(eventName, (...args) => {\\n Array.from(document.querySelectorAll('.ql-container')).forEach(node => {\\n const quill = _instances__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].get(node);\\n\\n if (quill && quill.emitter) {\\n quill.emitter.handleDOM(...args);\\n }\\n });\\n });\\n});\\n\\nclass Emitter extends eventemitter3__WEBPACK_IMPORTED_MODULE_0___default.a {\\n constructor() {\\n super();\\n this.listeners = {};\\n this.on('error', debug.error);\\n }\\n\\n emit(...args) {\\n debug.log.call(debug, ...args);\\n super.emit(...args);\\n }\\n\\n handleDOM(event, ...args) {\\n (this.listeners[event.type] || []).forEach(({\\n node,\\n handler\\n }) => {\\n if (event.target === node || node.contains(event.target)) {\\n handler(event, ...args);\\n }\\n });\\n }\\n\\n listenDOM(eventName, node, handler) {\\n if (!this.listeners[eventName]) {\\n this.listeners[eventName] = [];\\n }\\n\\n this.listeners[eventName].push({\\n node,\\n handler\\n });\\n }\\n\\n}\\n\\nEmitter.events = {\\n EDITOR_CHANGE: 'editor-change',\\n SCROLL_BEFORE_UPDATE: 'scroll-before-update',\\n SCROLL_BLOT_MOUNT: 'scroll-blot-mount',\\n SCROLL_BLOT_UNMOUNT: 'scroll-blot-unmount',\\n SCROLL_OPTIMIZE: 'scroll-optimize',\\n SCROLL_UPDATE: 'scroll-update',\\n SELECTION_CHANGE: 'selection-change',\\n TEXT_CHANGE: 'text-change'\\n};\\nEmitter.sources = {\\n API: 'api',\\n SILENT: 'silent',\\n USER: 'user'\\n};\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Emitter);\\n\\n//# sourceURL=webpack://Quill/./core/emitter.js?\");\n\n/***/ }),\n\n/***/ \"./core/instances.js\":\n/*!***************************!*\\\n !*** ./core/instances.js ***!\n \\***************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (new WeakMap());\\n\\n//# sourceURL=webpack://Quill/./core/instances.js?\");\n\n/***/ }),\n\n/***/ \"./core/logger.js\":\n/*!************************!*\\\n !*** ./core/logger.js ***!\n \\************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\nconst levels = ['error', 'warn', 'log', 'info'];\\nlet level = 'warn';\\n\\nfunction debug(method, ...args) {\\n if (levels.indexOf(method) <= levels.indexOf(level)) {\\n console[method](...args); // eslint-disable-line no-console\\n }\\n}\\n\\nfunction namespace(ns) {\\n return levels.reduce((logger, method) => {\\n logger[method] = debug.bind(console, method, ns);\\n return logger;\\n }, {});\\n}\\n\\nnamespace.level = newLevel => {\\n level = newLevel;\\n};\\n\\ndebug.level = namespace.level;\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (namespace);\\n\\n//# sourceURL=webpack://Quill/./core/logger.js?\");\n\n/***/ }),\n\n/***/ \"./core/module.js\":\n/*!************************!*\\\n !*** ./core/module.js ***!\n \\************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\nclass Module {\\n constructor(quill, options = {}) {\\n this.quill = quill;\\n this.options = options;\\n }\\n\\n}\\n\\nModule.DEFAULTS = {};\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Module);\\n\\n//# sourceURL=webpack://Quill/./core/module.js?\");\n\n/***/ }),\n\n/***/ \"./core/quill.js\":\n/*!***********************!*\\\n !*** ./core/quill.js ***!\n \\***********************/\n/*! exports provided: globalRegistry, expandConfig, overload, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"globalRegistry\\\", function() { return globalRegistry; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"expandConfig\\\", function() { return expandConfig; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"overload\\\", function() { return overload; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Quill; });\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_2__);\\n/* harmony import */ var _editor__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./editor */ \\\"./core/editor.js\\\");\\n/* harmony import */ var _emitter__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./emitter */ \\\"./core/emitter.js\\\");\\n/* harmony import */ var _module__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./module */ \\\"./core/module.js\\\");\\n/* harmony import */ var _selection__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./selection */ \\\"./core/selection.js\\\");\\n/* harmony import */ var _instances__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./instances */ \\\"./core/instances.js\\\");\\n/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./logger */ \\\"./core/logger.js\\\");\\n/* harmony import */ var _theme__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./theme */ \\\"./core/theme.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nconst debug = Object(_logger__WEBPACK_IMPORTED_MODULE_8__[\\\"default\\\"])('quill');\\nconst globalRegistry = new parchment__WEBPACK_IMPORTED_MODULE_1__[\\\"Registry\\\"]();\\nparchment__WEBPACK_IMPORTED_MODULE_1__[\\\"ParentBlot\\\"].uiClass = 'ql-ui';\\n\\nclass Quill {\\n static debug(limit) {\\n if (limit === true) {\\n limit = 'log';\\n }\\n\\n _logger__WEBPACK_IMPORTED_MODULE_8__[\\\"default\\\"].level(limit);\\n }\\n\\n static find(node) {\\n return _instances__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"].get(node) || globalRegistry.find(node);\\n }\\n\\n static import(name) {\\n if (this.imports[name] == null) {\\n debug.error(\\\"Cannot import \\\".concat(name, \\\". Are you sure it was registered?\\\"));\\n }\\n\\n return this.imports[name];\\n }\\n\\n static register(path, target, overwrite = false) {\\n if (typeof path !== 'string') {\\n const name = path.attrName || path.blotName;\\n\\n if (typeof name === 'string') {\\n // register(Blot | Attributor, overwrite)\\n this.register(\\\"formats/\\\".concat(name), path, target);\\n } else {\\n Object.keys(path).forEach(key => {\\n this.register(key, path[key], target);\\n });\\n }\\n } else {\\n if (this.imports[path] != null && !overwrite) {\\n debug.warn(\\\"Overwriting \\\".concat(path, \\\" with\\\"), target);\\n }\\n\\n this.imports[path] = target;\\n\\n if ((path.startsWith('blots/') || path.startsWith('formats/')) && target.blotName !== 'abstract') {\\n globalRegistry.register(target);\\n }\\n\\n if (typeof target.register === 'function') {\\n target.register(globalRegistry);\\n }\\n }\\n }\\n\\n constructor(container, options = {}) {\\n this.options = expandConfig(container, options);\\n this.container = this.options.container;\\n\\n if (this.container == null) {\\n return debug.error('Invalid Quill container', container);\\n }\\n\\n if (this.options.debug) {\\n Quill.debug(this.options.debug);\\n }\\n\\n const html = this.container.innerHTML.trim();\\n this.container.classList.add('ql-container');\\n this.container.innerHTML = '';\\n _instances__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"].set(this.container, this);\\n this.root = this.addContainer('ql-editor');\\n this.root.classList.add('ql-blank');\\n this.root.setAttribute('data-gramm', false);\\n this.scrollingContainer = this.options.scrollingContainer || this.root;\\n this.emitter = new _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"]();\\n const ScrollBlot = this.options.registry.query(parchment__WEBPACK_IMPORTED_MODULE_1__[\\\"ScrollBlot\\\"].blotName);\\n this.scroll = new ScrollBlot(this.options.registry, this.root, {\\n emitter: this.emitter\\n });\\n this.editor = new _editor__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"](this.scroll);\\n this.selection = new _selection__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"](this.scroll, this.emitter);\\n this.theme = new this.options.theme(this, this.options); // eslint-disable-line new-cap\\n\\n this.keyboard = this.theme.addModule('keyboard');\\n this.clipboard = this.theme.addModule('clipboard');\\n this.history = this.theme.addModule('history');\\n this.uploader = this.theme.addModule('uploader');\\n this.theme.init();\\n this.emitter.on(_emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].events.EDITOR_CHANGE, type => {\\n if (type === _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].events.TEXT_CHANGE) {\\n this.root.classList.toggle('ql-blank', this.editor.isBlank());\\n }\\n });\\n this.emitter.on(_emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].events.SCROLL_UPDATE, (source, mutations) => {\\n const oldRange = this.selection.lastRange;\\n const [newRange] = this.selection.getRange();\\n const selectionInfo = oldRange && newRange ? {\\n oldRange,\\n newRange\\n } : undefined;\\n modify.call(this, () => this.editor.update(null, mutations, selectionInfo), source);\\n });\\n const contents = this.clipboard.convert({\\n html: \\\"\\\".concat(html, \\\"


    \\\"),\\n text: '\\\\n'\\n });\\n this.setContents(contents);\\n this.history.clear();\\n\\n if (this.options.placeholder) {\\n this.root.setAttribute('data-placeholder', this.options.placeholder);\\n }\\n\\n if (this.options.readOnly) {\\n this.disable();\\n }\\n\\n this.allowReadOnlyEdits = false;\\n }\\n\\n addContainer(container, refNode = null) {\\n if (typeof container === 'string') {\\n const className = container;\\n container = document.createElement('div');\\n container.classList.add(className);\\n }\\n\\n this.container.insertBefore(container, refNode);\\n return container;\\n }\\n\\n blur() {\\n this.selection.setRange(null);\\n }\\n\\n deleteText(index, length, source) {\\n [index, length,, source] = overload(index, length, source);\\n return modify.call(this, () => {\\n return this.editor.deleteText(index, length);\\n }, source, index, -1 * length);\\n }\\n\\n disable() {\\n this.enable(false);\\n }\\n\\n editReadOnly(modifier) {\\n this.allowReadOnlyEdits = true;\\n const value = modifier();\\n this.allowReadOnlyEdits = false;\\n return value;\\n }\\n\\n enable(enabled = true) {\\n this.scroll.enable(enabled);\\n this.container.classList.toggle('ql-disabled', !enabled);\\n }\\n\\n focus() {\\n const {\\n scrollTop\\n } = this.scrollingContainer;\\n this.selection.focus();\\n this.scrollingContainer.scrollTop = scrollTop;\\n this.scrollIntoView();\\n }\\n\\n format(name, value, source = _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.API) {\\n return modify.call(this, () => {\\n const range = this.getSelection(true);\\n let change = new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a();\\n if (range == null) return change;\\n\\n if (this.scroll.query(name, parchment__WEBPACK_IMPORTED_MODULE_1__[\\\"Scope\\\"].BLOCK)) {\\n change = this.editor.formatLine(range.index, range.length, {\\n [name]: value\\n });\\n } else if (range.length === 0) {\\n this.selection.format(name, value);\\n return change;\\n } else {\\n change = this.editor.formatText(range.index, range.length, {\\n [name]: value\\n });\\n }\\n\\n this.setSelection(range, _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.SILENT);\\n return change;\\n }, source);\\n }\\n\\n formatLine(index, length, name, value, source) {\\n let formats; // eslint-disable-next-line prefer-const\\n\\n [index, length, formats, source] = overload(index, length, name, value, source);\\n return modify.call(this, () => {\\n return this.editor.formatLine(index, length, formats);\\n }, source, index, 0);\\n }\\n\\n formatText(index, length, name, value, source) {\\n let formats; // eslint-disable-next-line prefer-const\\n\\n [index, length, formats, source] = overload(index, length, name, value, source);\\n return modify.call(this, () => {\\n return this.editor.formatText(index, length, formats);\\n }, source, index, 0);\\n }\\n\\n getBounds(index, length = 0) {\\n let bounds;\\n\\n if (typeof index === 'number') {\\n bounds = this.selection.getBounds(index, length);\\n } else {\\n bounds = this.selection.getBounds(index.index, index.length);\\n }\\n\\n const containerBounds = this.container.getBoundingClientRect();\\n return {\\n bottom: bounds.bottom - containerBounds.top,\\n height: bounds.height,\\n left: bounds.left - containerBounds.left,\\n right: bounds.right - containerBounds.left,\\n top: bounds.top - containerBounds.top,\\n width: bounds.width\\n };\\n }\\n\\n getContents(index = 0, length = this.getLength() - index) {\\n [index, length] = overload(index, length);\\n return this.editor.getContents(index, length);\\n }\\n\\n getFormat(index = this.getSelection(true), length = 0) {\\n if (typeof index === 'number') {\\n return this.editor.getFormat(index, length);\\n }\\n\\n return this.editor.getFormat(index.index, index.length);\\n }\\n\\n getIndex(blot) {\\n return blot.offset(this.scroll);\\n }\\n\\n getLength() {\\n return this.scroll.length();\\n }\\n\\n getLeaf(index) {\\n return this.scroll.leaf(index);\\n }\\n\\n getLine(index) {\\n return this.scroll.line(index);\\n }\\n\\n getLines(index = 0, length = Number.MAX_VALUE) {\\n if (typeof index !== 'number') {\\n return this.scroll.lines(index.index, index.length);\\n }\\n\\n return this.scroll.lines(index, length);\\n }\\n\\n getModule(name) {\\n return this.theme.modules[name];\\n }\\n\\n getSelection(focus = false) {\\n if (focus) this.focus();\\n this.update(); // Make sure we access getRange with editor in consistent state\\n\\n return this.selection.getRange()[0];\\n }\\n\\n getSemanticHTML(index = 0, length = this.getLength() - index) {\\n [index, length] = overload(index, length);\\n return this.editor.getHTML(index, length);\\n }\\n\\n getText(index = 0, length = this.getLength() - index) {\\n [index, length] = overload(index, length);\\n return this.editor.getText(index, length);\\n }\\n\\n hasFocus() {\\n return this.selection.hasFocus();\\n }\\n\\n insertEmbed(index, embed, value, source = Quill.sources.API) {\\n return modify.call(this, () => {\\n return this.editor.insertEmbed(index, embed, value);\\n }, source, index);\\n }\\n\\n insertText(index, text, name, value, source) {\\n let formats; // eslint-disable-next-line prefer-const\\n\\n [index,, formats, source] = overload(index, 0, name, value, source);\\n return modify.call(this, () => {\\n return this.editor.insertText(index, text, formats);\\n }, source, index, text.length);\\n }\\n\\n isEnabled() {\\n return this.scroll.isEnabled();\\n }\\n\\n off(...args) {\\n return this.emitter.off(...args);\\n }\\n\\n on(...args) {\\n return this.emitter.on(...args);\\n }\\n\\n once(...args) {\\n return this.emitter.once(...args);\\n }\\n\\n removeFormat(index, length, source) {\\n [index, length,, source] = overload(index, length, source);\\n return modify.call(this, () => {\\n return this.editor.removeFormat(index, length);\\n }, source, index);\\n }\\n\\n scrollIntoView() {\\n this.selection.scrollIntoView(this.scrollingContainer);\\n }\\n\\n setContents(delta, source = _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.API) {\\n return modify.call(this, () => {\\n delta = new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a(delta);\\n const length = this.getLength();\\n const deleted = this.editor.deleteText(0, length);\\n const applied = this.editor.applyDelta(delta);\\n const lastOp = applied.ops[applied.ops.length - 1];\\n\\n if (lastOp != null && typeof lastOp.insert === 'string' && lastOp.insert[lastOp.insert.length - 1] === '\\\\n') {\\n this.editor.deleteText(this.getLength() - 1, 1);\\n applied.delete(1);\\n }\\n\\n return deleted.compose(applied);\\n }, source);\\n }\\n\\n setSelection(index, length, source) {\\n if (index == null) {\\n this.selection.setRange(null, length || Quill.sources.API);\\n } else {\\n [index, length,, source] = overload(index, length, source);\\n this.selection.setRange(new _selection__WEBPACK_IMPORTED_MODULE_6__[\\\"Range\\\"](Math.max(0, index), length), source);\\n\\n if (source !== _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.SILENT) {\\n this.selection.scrollIntoView(this.scrollingContainer);\\n }\\n }\\n }\\n\\n setText(text, source = _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.API) {\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a().insert(text);\\n return this.setContents(delta, source);\\n }\\n\\n update(source = _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.USER) {\\n const change = this.scroll.update(source); // Will update selection before selection.update() does if text changes\\n\\n this.selection.update(source); // TODO this is usually undefined\\n\\n return change;\\n }\\n\\n updateContents(delta, source = _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.API) {\\n return modify.call(this, () => {\\n delta = new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a(delta);\\n return this.editor.applyDelta(delta, source);\\n }, source, true);\\n }\\n\\n}\\n\\nQuill.DEFAULTS = {\\n bounds: null,\\n modules: {},\\n placeholder: '',\\n readOnly: false,\\n registry: globalRegistry,\\n scrollingContainer: null,\\n theme: 'default'\\n};\\nQuill.events = _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].events;\\nQuill.sources = _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources; // eslint-disable-next-line no-undef\\n\\nQuill.version = false ? undefined : \\\"2.0.0-dev.3\\\";\\nQuill.imports = {\\n delta: quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a,\\n parchment: parchment__WEBPACK_IMPORTED_MODULE_1__,\\n 'core/module': _module__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"],\\n 'core/theme': _theme__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"]\\n};\\n\\nfunction expandConfig(container, userConfig) {\\n userConfig = extend__WEBPACK_IMPORTED_MODULE_2___default()(true, {\\n container,\\n modules: {\\n clipboard: true,\\n keyboard: true,\\n history: true,\\n uploader: true\\n }\\n }, userConfig);\\n\\n if (!userConfig.theme || userConfig.theme === Quill.DEFAULTS.theme) {\\n userConfig.theme = _theme__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"];\\n } else {\\n userConfig.theme = Quill.import(\\\"themes/\\\".concat(userConfig.theme));\\n\\n if (userConfig.theme == null) {\\n throw new Error(\\\"Invalid theme \\\".concat(userConfig.theme, \\\". Did you register it?\\\"));\\n }\\n }\\n\\n const themeConfig = extend__WEBPACK_IMPORTED_MODULE_2___default()(true, {}, userConfig.theme.DEFAULTS);\\n [themeConfig, userConfig].forEach(config => {\\n config.modules = config.modules || {};\\n Object.keys(config.modules).forEach(module => {\\n if (config.modules[module] === true) {\\n config.modules[module] = {};\\n }\\n });\\n });\\n const moduleNames = Object.keys(themeConfig.modules).concat(Object.keys(userConfig.modules));\\n const moduleConfig = moduleNames.reduce((config, name) => {\\n const moduleClass = Quill.import(\\\"modules/\\\".concat(name));\\n\\n if (moduleClass == null) {\\n debug.error(\\\"Cannot load \\\".concat(name, \\\" module. Are you sure you registered it?\\\"));\\n } else {\\n config[name] = moduleClass.DEFAULTS || {};\\n }\\n\\n return config;\\n }, {}); // Special case toolbar shorthand\\n\\n if (userConfig.modules != null && userConfig.modules.toolbar && userConfig.modules.toolbar.constructor !== Object) {\\n userConfig.modules.toolbar = {\\n container: userConfig.modules.toolbar\\n };\\n }\\n\\n userConfig = extend__WEBPACK_IMPORTED_MODULE_2___default()(true, {}, Quill.DEFAULTS, {\\n modules: moduleConfig\\n }, themeConfig, userConfig);\\n ['bounds', 'container', 'scrollingContainer'].forEach(key => {\\n if (typeof userConfig[key] === 'string') {\\n userConfig[key] = document.querySelector(userConfig[key]);\\n }\\n });\\n userConfig.modules = Object.keys(userConfig.modules).reduce((config, name) => {\\n if (userConfig.modules[name]) {\\n config[name] = userConfig.modules[name];\\n }\\n\\n return config;\\n }, {});\\n return userConfig;\\n} // Handle selection preservation and TEXT_CHANGE emission\\n// common to modification APIs\\n\\n\\nfunction modify(modifier, source, index, shift) {\\n if (!this.isEnabled() && source === _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.USER && !this.allowReadOnlyEdits) {\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a();\\n }\\n\\n let range = index == null ? null : this.getSelection();\\n const oldDelta = this.editor.delta;\\n const change = modifier();\\n\\n if (range != null) {\\n if (index === true) {\\n index = range.index; // eslint-disable-line prefer-destructuring\\n }\\n\\n if (shift == null) {\\n range = shiftRange(range, change, source);\\n } else if (shift !== 0) {\\n range = shiftRange(range, index, shift, source);\\n }\\n\\n this.setSelection(range, _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.SILENT);\\n }\\n\\n if (change.length() > 0) {\\n const args = [_emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].events.TEXT_CHANGE, change, oldDelta, source];\\n this.emitter.emit(_emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].events.EDITOR_CHANGE, ...args);\\n\\n if (source !== _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.SILENT) {\\n this.emitter.emit(...args);\\n }\\n }\\n\\n return change;\\n}\\n\\nfunction overload(index, length, name, value, source) {\\n let formats = {};\\n\\n if (typeof index.index === 'number' && typeof index.length === 'number') {\\n // Allow for throwaway end (used by insertText/insertEmbed)\\n if (typeof length !== 'number') {\\n source = value;\\n value = name;\\n name = length;\\n length = index.length; // eslint-disable-line prefer-destructuring\\n\\n index = index.index; // eslint-disable-line prefer-destructuring\\n } else {\\n length = index.length; // eslint-disable-line prefer-destructuring\\n\\n index = index.index; // eslint-disable-line prefer-destructuring\\n }\\n } else if (typeof length !== 'number') {\\n source = value;\\n value = name;\\n name = length;\\n length = 0;\\n } // Handle format being object, two format name/value strings or excluded\\n\\n\\n if (typeof name === 'object') {\\n formats = name;\\n source = value;\\n } else if (typeof name === 'string') {\\n if (value != null) {\\n formats[name] = value;\\n } else {\\n source = name;\\n }\\n } // Handle optional source\\n\\n\\n source = source || _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.API;\\n return [index, length, formats, source];\\n}\\n\\nfunction shiftRange(range, index, length, source) {\\n if (range == null) return null;\\n let start;\\n let end;\\n\\n if (index instanceof quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a) {\\n [start, end] = [range.index, range.index + range.length].map(pos => index.transformPosition(pos, source !== _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.USER));\\n } else {\\n [start, end] = [range.index, range.index + range.length].map(pos => {\\n if (pos < index || pos === index && source === _emitter__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.USER) return pos;\\n\\n if (length >= 0) {\\n return pos + length;\\n }\\n\\n return Math.max(index, pos + length);\\n });\\n }\\n\\n return new _selection__WEBPACK_IMPORTED_MODULE_6__[\\\"Range\\\"](start, end - start);\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./core/quill.js?\");\n\n/***/ }),\n\n/***/ \"./core/selection.js\":\n/*!***************************!*\\\n !*** ./core/selection.js ***!\n \\***************************/\n/*! exports provided: Range, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"Range\\\", function() { return Range; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Selection; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var clone__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! clone */ \\\"./node_modules/clone/clone.js\\\");\\n/* harmony import */ var clone__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(clone__WEBPACK_IMPORTED_MODULE_1__);\\n/* harmony import */ var deep_equal__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! deep-equal */ \\\"./node_modules/deep-equal/index.js\\\");\\n/* harmony import */ var deep_equal__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(deep_equal__WEBPACK_IMPORTED_MODULE_2__);\\n/* harmony import */ var _emitter__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./emitter */ \\\"./core/emitter.js\\\");\\n/* harmony import */ var _logger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./logger */ \\\"./core/logger.js\\\");\\n\\n\\n\\n\\n\\nconst debug = Object(_logger__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"])('quill:selection');\\n\\nclass Range {\\n constructor(index, length = 0) {\\n this.index = index;\\n this.length = length;\\n }\\n\\n}\\n\\nclass Selection {\\n constructor(scroll, emitter) {\\n this.emitter = emitter;\\n this.scroll = scroll;\\n this.composing = false;\\n this.mouseDown = false;\\n this.root = this.scroll.domNode;\\n this.cursor = this.scroll.create('cursor', this); // savedRange is last non-null range\\n\\n this.savedRange = new Range(0, 0);\\n this.lastRange = this.savedRange;\\n this.lastNative = null;\\n this.handleComposition();\\n this.handleDragging();\\n this.emitter.listenDOM('selectionchange', document, () => {\\n if (!this.mouseDown && !this.composing) {\\n setTimeout(this.update.bind(this, _emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.USER), 1);\\n }\\n });\\n this.emitter.on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].events.SCROLL_BEFORE_UPDATE, () => {\\n if (!this.hasFocus()) return;\\n const native = this.getNativeRange();\\n if (native == null) return;\\n if (native.start.node === this.cursor.textNode) return; // cursor.restore() will handle\\n\\n this.emitter.once(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].events.SCROLL_UPDATE, () => {\\n try {\\n if (this.root.contains(native.start.node) && this.root.contains(native.end.node)) {\\n this.setNativeRange(native.start.node, native.start.offset, native.end.node, native.end.offset);\\n }\\n\\n this.update(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.SILENT);\\n } catch (ignored) {// ignore\\n }\\n });\\n });\\n this.emitter.on(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].events.SCROLL_OPTIMIZE, (mutations, context) => {\\n if (context.range) {\\n const {\\n startNode,\\n startOffset,\\n endNode,\\n endOffset\\n } = context.range;\\n this.setNativeRange(startNode, startOffset, endNode, endOffset);\\n this.update(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.SILENT);\\n }\\n });\\n this.update(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.SILENT);\\n }\\n\\n handleComposition() {\\n this.root.addEventListener('compositionstart', () => {\\n this.composing = true;\\n this.scroll.batchStart();\\n });\\n this.root.addEventListener('compositionend', () => {\\n this.scroll.batchEnd();\\n this.composing = false;\\n\\n if (this.cursor.parent) {\\n const range = this.cursor.restore();\\n if (!range) return;\\n setTimeout(() => {\\n this.setNativeRange(range.startNode, range.startOffset, range.endNode, range.endOffset);\\n }, 1);\\n }\\n });\\n }\\n\\n handleDragging() {\\n this.emitter.listenDOM('mousedown', document.body, () => {\\n this.mouseDown = true;\\n });\\n this.emitter.listenDOM('mouseup', document.body, () => {\\n this.mouseDown = false;\\n this.update(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.USER);\\n });\\n }\\n\\n focus() {\\n if (this.hasFocus()) return;\\n this.root.focus();\\n this.setRange(this.savedRange);\\n }\\n\\n format(format, value) {\\n this.scroll.update();\\n const nativeRange = this.getNativeRange();\\n if (nativeRange == null || !nativeRange.native.collapsed || this.scroll.query(format, parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOCK)) return;\\n\\n if (nativeRange.start.node !== this.cursor.textNode) {\\n const blot = this.scroll.find(nativeRange.start.node, false);\\n if (blot == null) return; // TODO Give blot ability to not split\\n\\n if (blot instanceof parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"LeafBlot\\\"]) {\\n const after = blot.split(nativeRange.start.offset);\\n blot.parent.insertBefore(this.cursor, after);\\n } else {\\n blot.insertBefore(this.cursor, nativeRange.start.node); // Should never happen\\n }\\n\\n this.cursor.attach();\\n }\\n\\n this.cursor.format(format, value);\\n this.scroll.optimize();\\n this.setNativeRange(this.cursor.textNode, this.cursor.textNode.data.length);\\n this.update();\\n }\\n\\n getBounds(index, length = 0) {\\n const scrollLength = this.scroll.length();\\n index = Math.min(index, scrollLength - 1);\\n length = Math.min(index + length, scrollLength - 1) - index;\\n let node;\\n let [leaf, offset] = this.scroll.leaf(index);\\n if (leaf == null) return null;\\n [node, offset] = leaf.position(offset, true);\\n const range = document.createRange();\\n\\n if (length > 0) {\\n range.setStart(node, offset);\\n [leaf, offset] = this.scroll.leaf(index + length);\\n if (leaf == null) return null;\\n [node, offset] = leaf.position(offset, true);\\n range.setEnd(node, offset);\\n return range.getBoundingClientRect();\\n }\\n\\n let side = 'left';\\n let rect;\\n\\n if (node instanceof Text) {\\n if (offset < node.data.length) {\\n range.setStart(node, offset);\\n range.setEnd(node, offset + 1);\\n } else {\\n range.setStart(node, offset - 1);\\n range.setEnd(node, offset);\\n side = 'right';\\n }\\n\\n rect = range.getBoundingClientRect();\\n } else {\\n rect = leaf.domNode.getBoundingClientRect();\\n if (offset > 0) side = 'right';\\n }\\n\\n return {\\n bottom: rect.top + rect.height,\\n height: rect.height,\\n left: rect[side],\\n right: rect[side],\\n top: rect.top,\\n width: 0\\n };\\n }\\n\\n getNativeRange() {\\n const selection = document.getSelection();\\n if (selection == null || selection.rangeCount <= 0) return null;\\n const nativeRange = selection.getRangeAt(0);\\n if (nativeRange == null) return null;\\n const range = this.normalizeNative(nativeRange);\\n debug.info('getNativeRange', range);\\n return range;\\n }\\n\\n getRange() {\\n const normalized = this.getNativeRange();\\n if (normalized == null) return [null, null];\\n const range = this.normalizedToRange(normalized);\\n return [range, normalized];\\n }\\n\\n hasFocus() {\\n return document.activeElement === this.root || contains(this.root, document.activeElement);\\n }\\n\\n normalizedToRange(range) {\\n const positions = [[range.start.node, range.start.offset]];\\n\\n if (!range.native.collapsed) {\\n positions.push([range.end.node, range.end.offset]);\\n }\\n\\n const indexes = positions.map(position => {\\n const [node, offset] = position;\\n const blot = this.scroll.find(node, true);\\n const index = blot.offset(this.scroll);\\n\\n if (offset === 0) {\\n return index;\\n }\\n\\n if (blot instanceof parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"LeafBlot\\\"]) {\\n return index + blot.index(node, offset);\\n }\\n\\n return index + blot.length();\\n });\\n const end = Math.min(Math.max(...indexes), this.scroll.length() - 1);\\n const start = Math.min(end, ...indexes);\\n return new Range(start, end - start);\\n }\\n\\n normalizeNative(nativeRange) {\\n if (!contains(this.root, nativeRange.startContainer) || !nativeRange.collapsed && !contains(this.root, nativeRange.endContainer)) {\\n return null;\\n }\\n\\n const range = {\\n start: {\\n node: nativeRange.startContainer,\\n offset: nativeRange.startOffset\\n },\\n end: {\\n node: nativeRange.endContainer,\\n offset: nativeRange.endOffset\\n },\\n native: nativeRange\\n };\\n [range.start, range.end].forEach(position => {\\n let {\\n node,\\n offset\\n } = position;\\n\\n while (!(node instanceof Text) && node.childNodes.length > 0) {\\n if (node.childNodes.length > offset) {\\n node = node.childNodes[offset];\\n offset = 0;\\n } else if (node.childNodes.length === offset) {\\n node = node.lastChild;\\n\\n if (node instanceof Text) {\\n offset = node.data.length;\\n } else if (node.childNodes.length > 0) {\\n // Container case\\n offset = node.childNodes.length;\\n } else {\\n // Embed case\\n offset = node.childNodes.length + 1;\\n }\\n } else {\\n break;\\n }\\n }\\n\\n position.node = node;\\n position.offset = offset;\\n });\\n return range;\\n }\\n\\n rangeToNative(range) {\\n const indexes = range.collapsed ? [range.index] : [range.index, range.index + range.length];\\n const args = [];\\n const scrollLength = this.scroll.length();\\n indexes.forEach((index, i) => {\\n index = Math.min(scrollLength - 1, index);\\n const [leaf, leafOffset] = this.scroll.leaf(index);\\n const [node, offset] = leaf.position(leafOffset, i !== 0);\\n args.push(node, offset);\\n });\\n\\n if (args.length < 2) {\\n return args.concat(args);\\n }\\n\\n return args;\\n }\\n\\n scrollIntoView(scrollingContainer) {\\n const range = this.lastRange;\\n if (range == null) return;\\n const bounds = this.getBounds(range.index, range.length);\\n if (bounds == null) return;\\n const limit = this.scroll.length() - 1;\\n const [first] = this.scroll.line(Math.min(range.index, limit));\\n let last = first;\\n\\n if (range.length > 0) {\\n [last] = this.scroll.line(Math.min(range.index + range.length, limit));\\n }\\n\\n if (first == null || last == null) return;\\n const scrollBounds = scrollingContainer.getBoundingClientRect();\\n\\n if (bounds.top < scrollBounds.top) {\\n scrollingContainer.scrollTop -= scrollBounds.top - bounds.top;\\n } else if (bounds.bottom > scrollBounds.bottom) {\\n scrollingContainer.scrollTop += bounds.bottom - scrollBounds.bottom;\\n }\\n }\\n\\n setNativeRange(startNode, startOffset, endNode = startNode, endOffset = startOffset, force = false) {\\n debug.info('setNativeRange', startNode, startOffset, endNode, endOffset);\\n\\n if (startNode != null && (this.root.parentNode == null || startNode.parentNode == null || endNode.parentNode == null)) {\\n return;\\n }\\n\\n const selection = document.getSelection();\\n if (selection == null) return;\\n\\n if (startNode != null) {\\n if (!this.hasFocus()) this.root.focus();\\n const {\\n native\\n } = this.getNativeRange() || {};\\n\\n if (native == null || force || startNode !== native.startContainer || startOffset !== native.startOffset || endNode !== native.endContainer || endOffset !== native.endOffset) {\\n if (startNode.tagName === 'BR') {\\n startOffset = Array.from(startNode.parentNode.childNodes).indexOf(startNode);\\n startNode = startNode.parentNode;\\n }\\n\\n if (endNode.tagName === 'BR') {\\n endOffset = Array.from(endNode.parentNode.childNodes).indexOf(endNode);\\n endNode = endNode.parentNode;\\n }\\n\\n const range = document.createRange();\\n range.setStart(startNode, startOffset);\\n range.setEnd(endNode, endOffset);\\n selection.removeAllRanges();\\n selection.addRange(range);\\n }\\n } else {\\n selection.removeAllRanges();\\n this.root.blur();\\n }\\n }\\n\\n setRange(range, force = false, source = _emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.API) {\\n if (typeof force === 'string') {\\n source = force;\\n force = false;\\n }\\n\\n debug.info('setRange', range);\\n\\n if (range != null) {\\n const args = this.rangeToNative(range);\\n this.setNativeRange(...args, force);\\n } else {\\n this.setNativeRange(null);\\n }\\n\\n this.update(source);\\n }\\n\\n update(source = _emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.USER) {\\n const oldRange = this.lastRange;\\n const [lastRange, nativeRange] = this.getRange();\\n this.lastRange = lastRange;\\n this.lastNative = nativeRange;\\n\\n if (this.lastRange != null) {\\n this.savedRange = this.lastRange;\\n }\\n\\n if (!deep_equal__WEBPACK_IMPORTED_MODULE_2___default()(oldRange, this.lastRange)) {\\n if (!this.composing && nativeRange != null && nativeRange.native.collapsed && nativeRange.start.node !== this.cursor.textNode) {\\n const range = this.cursor.restore();\\n\\n if (range) {\\n this.setNativeRange(range.startNode, range.startOffset, range.endNode, range.endOffset);\\n }\\n }\\n\\n const args = [_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].events.SELECTION_CHANGE, clone__WEBPACK_IMPORTED_MODULE_1___default()(this.lastRange), clone__WEBPACK_IMPORTED_MODULE_1___default()(oldRange), source];\\n this.emitter.emit(_emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].events.EDITOR_CHANGE, ...args);\\n\\n if (source !== _emitter__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.SILENT) {\\n this.emitter.emit(...args);\\n }\\n }\\n }\\n\\n}\\n\\nfunction contains(parent, descendant) {\\n try {\\n // Firefox inserts inaccessible nodes around video elements\\n descendant.parentNode; // eslint-disable-line no-unused-expressions\\n } catch (e) {\\n return false;\\n }\\n\\n return parent.contains(descendant);\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./core/selection.js?\");\n\n/***/ }),\n\n/***/ \"./core/theme.js\":\n/*!***********************!*\\\n !*** ./core/theme.js ***!\n \\***********************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\nclass Theme {\\n constructor(quill, options) {\\n this.quill = quill;\\n this.options = options;\\n this.modules = {};\\n }\\n\\n init() {\\n Object.keys(this.options.modules).forEach(name => {\\n if (this.modules[name] == null) {\\n this.addModule(name);\\n }\\n });\\n }\\n\\n addModule(name) {\\n const ModuleClass = this.quill.constructor.import(\\\"modules/\\\".concat(name));\\n this.modules[name] = new ModuleClass(this.quill, this.options.modules[name] || {});\\n return this.modules[name];\\n }\\n\\n}\\n\\nTheme.DEFAULTS = {\\n modules: {}\\n};\\nTheme.themes = {\\n default: Theme\\n};\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Theme);\\n\\n//# sourceURL=webpack://Quill/./core/theme.js?\");\n\n/***/ }),\n\n/***/ \"./formats/align.js\":\n/*!**************************!*\\\n !*** ./formats/align.js ***!\n \\**************************/\n/*! exports provided: AlignAttribute, AlignClass, AlignStyle */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"AlignAttribute\\\", function() { return AlignAttribute; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"AlignClass\\\", function() { return AlignClass; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"AlignStyle\\\", function() { return AlignStyle; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\nconst config = {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOCK,\\n whitelist: ['right', 'center', 'justify']\\n};\\nconst AlignAttribute = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Attributor\\\"]('align', 'align', config);\\nconst AlignClass = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ClassAttributor\\\"]('align', 'ql-align', config);\\nconst AlignStyle = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"StyleAttributor\\\"]('align', 'text-align', config);\\n\\n\\n//# sourceURL=webpack://Quill/./formats/align.js?\");\n\n/***/ }),\n\n/***/ \"./formats/background.js\":\n/*!*******************************!*\\\n !*** ./formats/background.js ***!\n \\*******************************/\n/*! exports provided: BackgroundClass, BackgroundStyle */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"BackgroundClass\\\", function() { return BackgroundClass; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"BackgroundStyle\\\", function() { return BackgroundStyle; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _color__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./color */ \\\"./formats/color.js\\\");\\n\\n\\nconst BackgroundClass = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ClassAttributor\\\"]('background', 'ql-bg', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE\\n});\\nconst BackgroundStyle = new _color__WEBPACK_IMPORTED_MODULE_1__[\\\"ColorAttributor\\\"]('background', 'background-color', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE\\n});\\n\\n\\n//# sourceURL=webpack://Quill/./formats/background.js?\");\n\n/***/ }),\n\n/***/ \"./formats/blockquote.js\":\n/*!*******************************!*\\\n !*** ./formats/blockquote.js ***!\n \\*******************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n\\n\\nclass Blockquote extends _blots_block__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {}\\n\\nBlockquote.blotName = 'blockquote';\\nBlockquote.tagName = 'blockquote';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Blockquote);\\n\\n//# sourceURL=webpack://Quill/./formats/blockquote.js?\");\n\n/***/ }),\n\n/***/ \"./formats/bold.js\":\n/*!*************************!*\\\n !*** ./formats/bold.js ***!\n \\*************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blots_inline__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/inline */ \\\"./blots/inline.js\\\");\\n\\n\\nclass Bold extends _blots_inline__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static create() {\\n return super.create();\\n }\\n\\n static formats() {\\n return true;\\n }\\n\\n optimize(context) {\\n super.optimize(context);\\n\\n if (this.domNode.tagName !== this.statics.tagName[0]) {\\n this.replaceWith(this.statics.blotName);\\n }\\n }\\n\\n}\\n\\nBold.blotName = 'bold';\\nBold.tagName = ['STRONG', 'B'];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Bold);\\n\\n//# sourceURL=webpack://Quill/./formats/bold.js?\");\n\n/***/ }),\n\n/***/ \"./formats/code.js\":\n/*!*************************!*\\\n !*** ./formats/code.js ***!\n \\*************************/\n/*! exports provided: Code, CodeBlockContainer, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"Code\\\", function() { return Code; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"CodeBlockContainer\\\", function() { return CodeBlockContainer; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return CodeBlock; });\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _blots_break__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../blots/break */ \\\"./blots/break.js\\\");\\n/* harmony import */ var _blots_cursor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../blots/cursor */ \\\"./blots/cursor.js\\\");\\n/* harmony import */ var _blots_inline__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../blots/inline */ \\\"./blots/inline.js\\\");\\n/* harmony import */ var _blots_text__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../blots/text */ \\\"./blots/text.js\\\");\\n/* harmony import */ var _blots_container__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../blots/container */ \\\"./blots/container.js\\\");\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\nclass CodeBlockContainer extends _blots_container__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"] {\\n static create(value) {\\n const domNode = super.create(value);\\n domNode.setAttribute('spellcheck', false);\\n return domNode;\\n }\\n\\n html(index, length) {\\n const text = this.children.map(child => child.domNode.innerText).join('\\\\n').slice(index, index + length);\\n return \\\"
    \\\".concat(Object(_blots_text__WEBPACK_IMPORTED_MODULE_4__[\\\"escapeText\\\"])(text), \\\"
    \\\");\\n }\\n\\n}\\n\\nclass CodeBlock extends _blots_block__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static register() {\\n _core_quill__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"].register(CodeBlockContainer);\\n }\\n\\n}\\n\\nclass Code extends _blots_inline__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"] {}\\n\\nCode.blotName = 'code';\\nCode.tagName = 'CODE';\\nCodeBlock.blotName = 'code-block';\\nCodeBlock.className = 'ql-code-block';\\nCodeBlock.tagName = 'DIV';\\nCodeBlockContainer.blotName = 'code-block-container';\\nCodeBlockContainer.className = 'ql-code-block-container';\\nCodeBlockContainer.tagName = 'DIV';\\nCodeBlockContainer.allowedChildren = [CodeBlock];\\nCodeBlock.allowedChildren = [_blots_text__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"], _blots_break__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"], _blots_cursor__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"]];\\nCodeBlock.requiredContainer = CodeBlockContainer;\\nCodeBlock.TAB = ' ';\\n\\n\\n//# sourceURL=webpack://Quill/./formats/code.js?\");\n\n/***/ }),\n\n/***/ \"./formats/color.js\":\n/*!**************************!*\\\n !*** ./formats/color.js ***!\n \\**************************/\n/*! exports provided: ColorAttributor, ColorClass, ColorStyle */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"ColorAttributor\\\", function() { return ColorAttributor; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"ColorClass\\\", function() { return ColorClass; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"ColorStyle\\\", function() { return ColorStyle; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\n\\nclass ColorAttributor extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"StyleAttributor\\\"] {\\n value(domNode) {\\n let value = super.value(domNode);\\n if (!value.startsWith('rgb(')) return value;\\n value = value.replace(/^[^\\\\d]+/, '').replace(/[^\\\\d]+$/, '');\\n const hex = value.split(',').map(component => \\\"00\\\".concat(parseInt(component, 10).toString(16)).slice(-2)).join('');\\n return \\\"#\\\".concat(hex);\\n }\\n\\n}\\n\\nconst ColorClass = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ClassAttributor\\\"]('color', 'ql-color', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE\\n});\\nconst ColorStyle = new ColorAttributor('color', 'color', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE\\n});\\n\\n\\n//# sourceURL=webpack://Quill/./formats/color.js?\");\n\n/***/ }),\n\n/***/ \"./formats/direction.js\":\n/*!******************************!*\\\n !*** ./formats/direction.js ***!\n \\******************************/\n/*! exports provided: DirectionAttribute, DirectionClass, DirectionStyle */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"DirectionAttribute\\\", function() { return DirectionAttribute; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"DirectionClass\\\", function() { return DirectionClass; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"DirectionStyle\\\", function() { return DirectionStyle; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\nconst config = {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOCK,\\n whitelist: ['rtl']\\n};\\nconst DirectionAttribute = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Attributor\\\"]('direction', 'dir', config);\\nconst DirectionClass = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ClassAttributor\\\"]('direction', 'ql-direction', config);\\nconst DirectionStyle = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"StyleAttributor\\\"]('direction', 'direction', config);\\n\\n\\n//# sourceURL=webpack://Quill/./formats/direction.js?\");\n\n/***/ }),\n\n/***/ \"./formats/font.js\":\n/*!*************************!*\\\n !*** ./formats/font.js ***!\n \\*************************/\n/*! exports provided: FontStyle, FontClass */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"FontStyle\\\", function() { return FontStyle; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"FontClass\\\", function() { return FontClass; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\nconst config = {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE,\\n whitelist: ['serif', 'monospace']\\n};\\nconst FontClass = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ClassAttributor\\\"]('font', 'ql-font', config);\\n\\nclass FontStyleAttributor extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"StyleAttributor\\\"] {\\n value(node) {\\n return super.value(node).replace(/[\\\"']/g, '');\\n }\\n\\n}\\n\\nconst FontStyle = new FontStyleAttributor('font', 'font-family', config);\\n\\n\\n//# sourceURL=webpack://Quill/./formats/font.js?\");\n\n/***/ }),\n\n/***/ \"./formats/formula.js\":\n/*!****************************!*\\\n !*** ./formats/formula.js ***!\n \\****************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blots_embed__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/embed */ \\\"./blots/embed.js\\\");\\n\\n\\nclass Formula extends _blots_embed__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static create(value) {\\n if (window.katex == null) {\\n throw new Error('Formula module requires KaTeX.');\\n }\\n\\n const node = super.create(value);\\n\\n if (typeof value === 'string') {\\n window.katex.render(value, node, {\\n throwOnError: false,\\n errorColor: '#f00'\\n });\\n node.setAttribute('data-value', value);\\n }\\n\\n return node;\\n }\\n\\n static value(domNode) {\\n return domNode.getAttribute('data-value');\\n }\\n\\n html() {\\n const {\\n formula\\n } = this.value();\\n return \\\"\\\".concat(formula, \\\"\\\");\\n }\\n\\n}\\n\\nFormula.blotName = 'formula';\\nFormula.className = 'ql-formula';\\nFormula.tagName = 'SPAN';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Formula);\\n\\n//# sourceURL=webpack://Quill/./formats/formula.js?\");\n\n/***/ }),\n\n/***/ \"./formats/header.js\":\n/*!***************************!*\\\n !*** ./formats/header.js ***!\n \\***************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n\\n\\nclass Header extends _blots_block__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static formats(domNode) {\\n return this.tagName.indexOf(domNode.tagName) + 1;\\n }\\n\\n}\\n\\nHeader.blotName = 'header';\\nHeader.tagName = ['H1', 'H2', 'H3', 'H4', 'H5', 'H6'];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Header);\\n\\n//# sourceURL=webpack://Quill/./formats/header.js?\");\n\n/***/ }),\n\n/***/ \"./formats/image.js\":\n/*!**************************!*\\\n !*** ./formats/image.js ***!\n \\**************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _link__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./link */ \\\"./formats/link.js\\\");\\n\\n\\nconst ATTRIBUTES = ['alt', 'height', 'width'];\\n\\nclass Image extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"EmbedBlot\\\"] {\\n static create(value) {\\n const node = super.create(value);\\n\\n if (typeof value === 'string') {\\n node.setAttribute('src', this.sanitize(value));\\n }\\n\\n return node;\\n }\\n\\n static formats(domNode) {\\n return ATTRIBUTES.reduce((formats, attribute) => {\\n if (domNode.hasAttribute(attribute)) {\\n formats[attribute] = domNode.getAttribute(attribute);\\n }\\n\\n return formats;\\n }, {});\\n }\\n\\n static match(url) {\\n return /\\\\.(jpe?g|gif|png)$/.test(url) || /^data:image\\\\/.+;base64/.test(url);\\n }\\n\\n static register() {\\n if (/Firefox/i.test(navigator.userAgent)) {\\n setTimeout(() => {\\n // Disable image resizing in Firefox\\n document.execCommand('enableObjectResizing', false, false);\\n }, 1);\\n }\\n }\\n\\n static sanitize(url) {\\n return Object(_link__WEBPACK_IMPORTED_MODULE_1__[\\\"sanitize\\\"])(url, ['http', 'https', 'data']) ? url : '//:0';\\n }\\n\\n static value(domNode) {\\n return domNode.getAttribute('src');\\n }\\n\\n format(name, value) {\\n if (ATTRIBUTES.indexOf(name) > -1) {\\n if (value) {\\n this.domNode.setAttribute(name, value);\\n } else {\\n this.domNode.removeAttribute(name);\\n }\\n } else {\\n super.format(name, value);\\n }\\n }\\n\\n}\\n\\nImage.blotName = 'image';\\nImage.tagName = 'IMG';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Image);\\n\\n//# sourceURL=webpack://Quill/./formats/image.js?\");\n\n/***/ }),\n\n/***/ \"./formats/indent.js\":\n/*!***************************!*\\\n !*** ./formats/indent.js ***!\n \\***************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\n\\nclass IndentAttributor extends parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ClassAttributor\\\"] {\\n add(node, value) {\\n if (value === '+1' || value === '-1') {\\n const indent = this.value(node) || 0;\\n value = value === '+1' ? indent + 1 : indent - 1;\\n }\\n\\n if (value === 0) {\\n this.remove(node);\\n return true;\\n }\\n\\n return super.add(node, value);\\n }\\n\\n canAdd(node, value) {\\n return super.canAdd(node, value) || super.canAdd(node, parseInt(value, 10));\\n }\\n\\n value(node) {\\n return parseInt(super.value(node), 10) || undefined; // Don't return NaN\\n }\\n\\n}\\n\\nconst IndentClass = new IndentAttributor('indent', 'ql-indent', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOCK,\\n whitelist: [1, 2, 3, 4, 5, 6, 7, 8]\\n});\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (IndentClass);\\n\\n//# sourceURL=webpack://Quill/./formats/indent.js?\");\n\n/***/ }),\n\n/***/ \"./formats/italic.js\":\n/*!***************************!*\\\n !*** ./formats/italic.js ***!\n \\***************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _bold__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./bold */ \\\"./formats/bold.js\\\");\\n\\n\\nclass Italic extends _bold__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {}\\n\\nItalic.blotName = 'italic';\\nItalic.tagName = ['EM', 'I'];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Italic);\\n\\n//# sourceURL=webpack://Quill/./formats/italic.js?\");\n\n/***/ }),\n\n/***/ \"./formats/link.js\":\n/*!*************************!*\\\n !*** ./formats/link.js ***!\n \\*************************/\n/*! exports provided: default, sanitize */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Link; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"sanitize\\\", function() { return sanitize; });\\n/* harmony import */ var _blots_inline__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/inline */ \\\"./blots/inline.js\\\");\\n\\n\\nclass Link extends _blots_inline__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static create(value) {\\n const node = super.create(value);\\n node.setAttribute('href', this.sanitize(value));\\n node.setAttribute('rel', 'noopener noreferrer');\\n node.setAttribute('target', '_blank');\\n return node;\\n }\\n\\n static formats(domNode) {\\n return domNode.getAttribute('href');\\n }\\n\\n static sanitize(url) {\\n return sanitize(url, this.PROTOCOL_WHITELIST) ? url : this.SANITIZED_URL;\\n }\\n\\n format(name, value) {\\n if (name !== this.statics.blotName || !value) {\\n super.format(name, value);\\n } else {\\n this.domNode.setAttribute('href', this.constructor.sanitize(value));\\n }\\n }\\n\\n}\\n\\nLink.blotName = 'link';\\nLink.tagName = 'A';\\nLink.SANITIZED_URL = 'about:blank';\\nLink.PROTOCOL_WHITELIST = ['http', 'https', 'mailto', 'tel'];\\n\\nfunction sanitize(url, protocols) {\\n const anchor = document.createElement('a');\\n anchor.href = url;\\n const protocol = anchor.href.slice(0, anchor.href.indexOf(':'));\\n return protocols.indexOf(protocol) > -1;\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./formats/link.js?\");\n\n/***/ }),\n\n/***/ \"./formats/list.js\":\n/*!*************************!*\\\n !*** ./formats/list.js ***!\n \\*************************/\n/*! exports provided: ListContainer, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"ListContainer\\\", function() { return ListContainer; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return ListItem; });\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _blots_container__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../blots/container */ \\\"./blots/container.js\\\");\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n\\n\\n\\n\\nclass ListContainer extends _blots_container__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] {}\\n\\nListContainer.blotName = 'list-container';\\nListContainer.tagName = 'OL';\\n\\nclass ListItem extends _blots_block__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static create(value) {\\n const node = super.create();\\n node.setAttribute('data-list', value);\\n return node;\\n }\\n\\n static formats(domNode) {\\n return domNode.getAttribute('data-list') || undefined;\\n }\\n\\n static register() {\\n _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].register(ListContainer);\\n }\\n\\n constructor(scroll, domNode) {\\n super(scroll, domNode);\\n const ui = domNode.ownerDocument.createElement('span');\\n\\n const listEventHandler = e => {\\n if (!scroll.isEnabled()) return;\\n const format = this.statics.formats(domNode, scroll);\\n\\n if (format === 'checked') {\\n this.format('list', 'unchecked');\\n e.preventDefault();\\n } else if (format === 'unchecked') {\\n this.format('list', 'checked');\\n e.preventDefault();\\n }\\n };\\n\\n ui.addEventListener('mousedown', listEventHandler);\\n ui.addEventListener('touchstart', listEventHandler);\\n this.attachUI(ui);\\n }\\n\\n format(name, value) {\\n if (name === this.statics.blotName && value) {\\n this.domNode.setAttribute('data-list', value);\\n } else {\\n super.format(name, value);\\n }\\n }\\n\\n}\\n\\nListItem.blotName = 'list';\\nListItem.tagName = 'LI';\\nListContainer.allowedChildren = [ListItem];\\nListItem.requiredContainer = ListContainer;\\n\\n\\n//# sourceURL=webpack://Quill/./formats/list.js?\");\n\n/***/ }),\n\n/***/ \"./formats/script.js\":\n/*!***************************!*\\\n !*** ./formats/script.js ***!\n \\***************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blots_inline__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/inline */ \\\"./blots/inline.js\\\");\\n\\n\\nclass Script extends _blots_inline__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static create(value) {\\n if (value === 'super') {\\n return document.createElement('sup');\\n }\\n\\n if (value === 'sub') {\\n return document.createElement('sub');\\n }\\n\\n return super.create(value);\\n }\\n\\n static formats(domNode) {\\n if (domNode.tagName === 'SUB') return 'sub';\\n if (domNode.tagName === 'SUP') return 'super';\\n return undefined;\\n }\\n\\n}\\n\\nScript.blotName = 'script';\\nScript.tagName = ['SUB', 'SUP'];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Script);\\n\\n//# sourceURL=webpack://Quill/./formats/script.js?\");\n\n/***/ }),\n\n/***/ \"./formats/size.js\":\n/*!*************************!*\\\n !*** ./formats/size.js ***!\n \\*************************/\n/*! exports provided: SizeClass, SizeStyle */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"SizeClass\\\", function() { return SizeClass; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"SizeStyle\\\", function() { return SizeStyle; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n\\nconst SizeClass = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"ClassAttributor\\\"]('size', 'ql-size', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE,\\n whitelist: ['small', 'large', 'huge']\\n});\\nconst SizeStyle = new parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"StyleAttributor\\\"]('size', 'font-size', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].INLINE,\\n whitelist: ['10px', '18px', '32px']\\n});\\n\\n\\n//# sourceURL=webpack://Quill/./formats/size.js?\");\n\n/***/ }),\n\n/***/ \"./formats/strike.js\":\n/*!***************************!*\\\n !*** ./formats/strike.js ***!\n \\***************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _bold__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./bold */ \\\"./formats/bold.js\\\");\\n\\n\\nclass Strike extends _bold__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {}\\n\\nStrike.blotName = 'strike';\\nStrike.tagName = ['S', 'STRIKE'];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Strike);\\n\\n//# sourceURL=webpack://Quill/./formats/strike.js?\");\n\n/***/ }),\n\n/***/ \"./formats/table.js\":\n/*!**************************!*\\\n !*** ./formats/table.js ***!\n \\**************************/\n/*! exports provided: TableCell, TableRow, TableBody, TableContainer, tableId */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"TableCell\\\", function() { return TableCell; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"TableRow\\\", function() { return TableRow; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"TableBody\\\", function() { return TableBody; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"TableContainer\\\", function() { return TableContainer; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"tableId\\\", function() { return tableId; });\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _blots_container__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../blots/container */ \\\"./blots/container.js\\\");\\n\\n\\n\\nclass TableCell extends _blots_block__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static create(value) {\\n const node = super.create();\\n\\n if (value) {\\n node.setAttribute('data-row', value);\\n } else {\\n node.setAttribute('data-row', tableId());\\n }\\n\\n return node;\\n }\\n\\n static formats(domNode) {\\n if (domNode.hasAttribute('data-row')) {\\n return domNode.getAttribute('data-row');\\n }\\n\\n return undefined;\\n }\\n\\n cellOffset() {\\n if (this.parent) {\\n return this.parent.children.indexOf(this);\\n }\\n\\n return -1;\\n }\\n\\n format(name, value) {\\n if (name === TableCell.blotName && value) {\\n this.domNode.setAttribute('data-row', value);\\n } else {\\n super.format(name, value);\\n }\\n }\\n\\n row() {\\n return this.parent;\\n }\\n\\n rowOffset() {\\n if (this.row()) {\\n return this.row().rowOffset();\\n }\\n\\n return -1;\\n }\\n\\n table() {\\n return this.row() && this.row().table();\\n }\\n\\n}\\n\\nTableCell.blotName = 'table';\\nTableCell.tagName = 'TD';\\n\\nclass TableRow extends _blots_container__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] {\\n checkMerge() {\\n if (super.checkMerge() && this.next.children.head != null) {\\n const thisHead = this.children.head.formats();\\n const thisTail = this.children.tail.formats();\\n const nextHead = this.next.children.head.formats();\\n const nextTail = this.next.children.tail.formats();\\n return thisHead.table === thisTail.table && thisHead.table === nextHead.table && thisHead.table === nextTail.table;\\n }\\n\\n return false;\\n }\\n\\n optimize(...args) {\\n super.optimize(...args);\\n this.children.forEach(child => {\\n if (child.next == null) return;\\n const childFormats = child.formats();\\n const nextFormats = child.next.formats();\\n\\n if (childFormats.table !== nextFormats.table) {\\n const next = this.splitAfter(child);\\n\\n if (next) {\\n next.optimize();\\n } // We might be able to merge with prev now\\n\\n\\n if (this.prev) {\\n this.prev.optimize();\\n }\\n }\\n });\\n }\\n\\n rowOffset() {\\n if (this.parent) {\\n return this.parent.children.indexOf(this);\\n }\\n\\n return -1;\\n }\\n\\n table() {\\n return this.parent && this.parent.parent;\\n }\\n\\n}\\n\\nTableRow.blotName = 'table-row';\\nTableRow.tagName = 'TR';\\n\\nclass TableBody extends _blots_container__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] {}\\n\\nTableBody.blotName = 'table-body';\\nTableBody.tagName = 'TBODY';\\n\\nclass TableContainer extends _blots_container__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] {\\n balanceCells() {\\n const rows = this.descendants(TableRow);\\n const maxColumns = rows.reduce((max, row) => {\\n return Math.max(row.children.length, max);\\n }, 0);\\n rows.forEach(row => {\\n new Array(maxColumns - row.children.length).fill(0).forEach(() => {\\n let value;\\n\\n if (row.children.head != null) {\\n value = TableCell.formats(row.children.head.domNode);\\n }\\n\\n const blot = this.scroll.create(TableCell.blotName, value);\\n row.appendChild(blot);\\n blot.optimize(); // Add break blot\\n });\\n });\\n }\\n\\n cells(column) {\\n return this.rows().map(row => row.children.at(column));\\n }\\n\\n deleteColumn(index) {\\n const [body] = this.descendant(TableBody);\\n if (body == null || body.children.head == null) return;\\n body.children.forEach(row => {\\n const cell = row.children.at(index);\\n\\n if (cell != null) {\\n cell.remove();\\n }\\n });\\n }\\n\\n insertColumn(index) {\\n const [body] = this.descendant(TableBody);\\n if (body == null || body.children.head == null) return;\\n body.children.forEach(row => {\\n const ref = row.children.at(index);\\n const value = TableCell.formats(row.children.head.domNode);\\n const cell = this.scroll.create(TableCell.blotName, value);\\n row.insertBefore(cell, ref);\\n });\\n }\\n\\n insertRow(index) {\\n const [body] = this.descendant(TableBody);\\n if (body == null || body.children.head == null) return;\\n const id = tableId();\\n const row = this.scroll.create(TableRow.blotName);\\n body.children.head.children.forEach(() => {\\n const cell = this.scroll.create(TableCell.blotName, id);\\n row.appendChild(cell);\\n });\\n const ref = body.children.at(index);\\n body.insertBefore(row, ref);\\n }\\n\\n rows() {\\n const body = this.children.head;\\n if (body == null) return [];\\n return body.children.map(row => row);\\n }\\n\\n}\\n\\nTableContainer.blotName = 'table-container';\\nTableContainer.tagName = 'TABLE';\\nTableContainer.allowedChildren = [TableBody];\\nTableBody.requiredContainer = TableContainer;\\nTableBody.allowedChildren = [TableRow];\\nTableRow.requiredContainer = TableBody;\\nTableRow.allowedChildren = [TableCell];\\nTableCell.requiredContainer = TableRow;\\n\\nfunction tableId() {\\n const id = Math.random().toString(36).slice(2, 6);\\n return \\\"row-\\\".concat(id);\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./formats/table.js?\");\n\n/***/ }),\n\n/***/ \"./formats/underline.js\":\n/*!******************************!*\\\n !*** ./formats/underline.js ***!\n \\******************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blots_inline__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/inline */ \\\"./blots/inline.js\\\");\\n\\n\\nclass Underline extends _blots_inline__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {}\\n\\nUnderline.blotName = 'underline';\\nUnderline.tagName = 'U';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Underline);\\n\\n//# sourceURL=webpack://Quill/./formats/underline.js?\");\n\n/***/ }),\n\n/***/ \"./formats/video.js\":\n/*!**************************!*\\\n !*** ./formats/video.js ***!\n \\**************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _link__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./link */ \\\"./formats/link.js\\\");\\n\\n\\nconst ATTRIBUTES = ['height', 'width'];\\n\\nclass Video extends _blots_block__WEBPACK_IMPORTED_MODULE_0__[\\\"BlockEmbed\\\"] {\\n static create(value) {\\n const node = super.create(value);\\n node.setAttribute('frameborder', '0');\\n node.setAttribute('allowfullscreen', true);\\n node.setAttribute('src', this.sanitize(value));\\n return node;\\n }\\n\\n static formats(domNode) {\\n return ATTRIBUTES.reduce((formats, attribute) => {\\n if (domNode.hasAttribute(attribute)) {\\n formats[attribute] = domNode.getAttribute(attribute);\\n }\\n\\n return formats;\\n }, {});\\n }\\n\\n static sanitize(url) {\\n return _link__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sanitize(url); // eslint-disable-line import/no-named-as-default-member\\n }\\n\\n static value(domNode) {\\n return domNode.getAttribute('src');\\n }\\n\\n format(name, value) {\\n if (ATTRIBUTES.indexOf(name) > -1) {\\n if (value) {\\n this.domNode.setAttribute(name, value);\\n } else {\\n this.domNode.removeAttribute(name);\\n }\\n } else {\\n super.format(name, value);\\n }\\n }\\n\\n html() {\\n const {\\n video\\n } = this.value();\\n return \\\"
    \\\").concat(video, \\\"\\\");\\n }\\n\\n}\\n\\nVideo.blotName = 'video';\\nVideo.className = 'ql-video';\\nVideo.tagName = 'IFRAME';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Video);\\n\\n//# sourceURL=webpack://Quill/./formats/video.js?\");\n\n/***/ }),\n\n/***/ \"./modules/clipboard.js\":\n/*!******************************!*\\\n !*** ./modules/clipboard.js ***!\n \\******************************/\n/*! exports provided: default, matchAttributor, matchBlot, matchNewline, matchText, traverse */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Clipboard; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"matchAttributor\\\", function() { return matchAttributor; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"matchBlot\\\", function() { return matchBlot; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"matchNewline\\\", function() { return matchNewline; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"matchText\\\", function() { return matchText; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"traverse\\\", function() { return traverse; });\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_1__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n/* harmony import */ var _core_logger__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/logger */ \\\"./core/logger.js\\\");\\n/* harmony import */ var _core_module__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/module */ \\\"./core/module.js\\\");\\n/* harmony import */ var _formats_align__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../formats/align */ \\\"./formats/align.js\\\");\\n/* harmony import */ var _formats_background__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../formats/background */ \\\"./formats/background.js\\\");\\n/* harmony import */ var _formats_code__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../formats/code */ \\\"./formats/code.js\\\");\\n/* harmony import */ var _formats_color__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../formats/color */ \\\"./formats/color.js\\\");\\n/* harmony import */ var _formats_direction__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../formats/direction */ \\\"./formats/direction.js\\\");\\n/* harmony import */ var _formats_font__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../formats/font */ \\\"./formats/font.js\\\");\\n/* harmony import */ var _formats_size__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../formats/size */ \\\"./formats/size.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nconst debug = Object(_core_logger__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"])('quill:clipboard');\\nconst CLIPBOARD_CONFIG = [[Node.TEXT_NODE, matchText], [Node.TEXT_NODE, matchNewline], ['br', matchBreak], [Node.ELEMENT_NODE, matchNewline], [Node.ELEMENT_NODE, matchBlot], [Node.ELEMENT_NODE, matchAttributor], [Node.ELEMENT_NODE, matchStyles], ['li', matchIndent], ['ol, ul', matchList], ['pre', matchCodeBlock], ['tr', matchTable], ['b', matchAlias.bind(matchAlias, 'bold')], ['i', matchAlias.bind(matchAlias, 'italic')], ['strike', matchAlias.bind(matchAlias, 'strike')], ['style', matchIgnore]];\\nconst ATTRIBUTE_ATTRIBUTORS = [_formats_align__WEBPACK_IMPORTED_MODULE_7__[\\\"AlignAttribute\\\"], _formats_direction__WEBPACK_IMPORTED_MODULE_11__[\\\"DirectionAttribute\\\"]].reduce((memo, attr) => {\\n memo[attr.keyName] = attr;\\n return memo;\\n}, {});\\nconst STYLE_ATTRIBUTORS = [_formats_align__WEBPACK_IMPORTED_MODULE_7__[\\\"AlignStyle\\\"], _formats_background__WEBPACK_IMPORTED_MODULE_8__[\\\"BackgroundStyle\\\"], _formats_color__WEBPACK_IMPORTED_MODULE_10__[\\\"ColorStyle\\\"], _formats_direction__WEBPACK_IMPORTED_MODULE_11__[\\\"DirectionStyle\\\"], _formats_font__WEBPACK_IMPORTED_MODULE_12__[\\\"FontStyle\\\"], _formats_size__WEBPACK_IMPORTED_MODULE_13__[\\\"SizeStyle\\\"]].reduce((memo, attr) => {\\n memo[attr.keyName] = attr;\\n return memo;\\n}, {});\\n\\nclass Clipboard extends _core_module__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"] {\\n constructor(quill, options) {\\n super(quill, options);\\n this.quill.root.addEventListener('copy', e => this.onCaptureCopy(e, false));\\n this.quill.root.addEventListener('cut', e => this.onCaptureCopy(e, true));\\n this.quill.root.addEventListener('paste', this.onCapturePaste.bind(this));\\n this.matchers = [];\\n CLIPBOARD_CONFIG.concat(this.options.matchers).forEach(([selector, matcher]) => {\\n this.addMatcher(selector, matcher);\\n });\\n }\\n\\n addMatcher(selector, matcher) {\\n this.matchers.push([selector, matcher]);\\n }\\n\\n convert({\\n html,\\n text\\n }, formats = {}) {\\n if (formats[_formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"].blotName]) {\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().insert(text, {\\n [_formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"].blotName]: formats[_formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"].blotName]\\n });\\n }\\n\\n if (!html) {\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().insert(text || '');\\n }\\n\\n const doc = new DOMParser().parseFromString(html, 'text/html');\\n const container = doc.body;\\n const nodeMatches = new WeakMap();\\n const [elementMatchers, textMatchers] = this.prepareMatching(container, nodeMatches);\\n const delta = traverse(this.quill.scroll, container, elementMatchers, textMatchers, nodeMatches); // Remove trailing newline\\n\\n if (deltaEndsWith(delta, '\\\\n') && (delta.ops[delta.ops.length - 1].attributes == null || formats.table)) {\\n return delta.compose(new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().retain(delta.length() - 1).delete(1));\\n }\\n\\n return delta;\\n }\\n\\n dangerouslyPasteHTML(index, html, source = _core_quill__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.API) {\\n if (typeof index === 'string') {\\n const delta = this.convert({\\n html: index,\\n text: ''\\n });\\n this.quill.setContents(delta, html);\\n this.quill.setSelection(0, _core_quill__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.SILENT);\\n } else {\\n const paste = this.convert({\\n html,\\n text: ''\\n });\\n this.quill.updateContents(new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().retain(index).concat(paste), source);\\n this.quill.setSelection(index + paste.length(), _core_quill__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.SILENT);\\n }\\n }\\n\\n onCaptureCopy(e, isCut = false) {\\n if (e.defaultPrevented) return;\\n e.preventDefault();\\n const [range] = this.quill.selection.getRange();\\n if (range == null) return;\\n const {\\n html,\\n text\\n } = this.onCopy(range, isCut);\\n e.clipboardData.setData('text/plain', text);\\n e.clipboardData.setData('text/html', html);\\n\\n if (isCut) {\\n this.quill.deleteText(range, _core_quill__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.USER);\\n }\\n }\\n\\n onCapturePaste(e) {\\n if (e.defaultPrevented || !this.quill.isEnabled()) return;\\n e.preventDefault();\\n const range = this.quill.getSelection(true);\\n if (range == null) return;\\n const html = e.clipboardData.getData('text/html');\\n const text = e.clipboardData.getData('text/plain');\\n const files = Array.from(e.clipboardData.files || []);\\n\\n if (!html && files.length > 0) {\\n this.quill.uploader.upload(range, files);\\n } else {\\n this.onPaste(range, {\\n html,\\n text\\n });\\n }\\n }\\n\\n onCopy(range) {\\n const text = this.quill.getText(range);\\n const html = this.quill.getSemanticHTML(range);\\n return {\\n html,\\n text\\n };\\n }\\n\\n onPaste(range, {\\n text,\\n html\\n }) {\\n const formats = this.quill.getFormat(range.index);\\n const pastedDelta = this.convert({\\n text,\\n html\\n }, formats);\\n debug.log('onPaste', pastedDelta, {\\n text,\\n html\\n });\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().retain(range.index).delete(range.length).concat(pastedDelta);\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.USER); // range.length contributes to delta.length()\\n\\n this.quill.setSelection(delta.length() - range.length, _core_quill__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].sources.SILENT);\\n this.quill.scrollIntoView();\\n }\\n\\n prepareMatching(container, nodeMatches) {\\n const elementMatchers = [];\\n const textMatchers = [];\\n this.matchers.forEach(pair => {\\n const [selector, matcher] = pair;\\n\\n switch (selector) {\\n case Node.TEXT_NODE:\\n textMatchers.push(matcher);\\n break;\\n\\n case Node.ELEMENT_NODE:\\n elementMatchers.push(matcher);\\n break;\\n\\n default:\\n Array.from(container.querySelectorAll(selector)).forEach(node => {\\n if (nodeMatches.has(node)) {\\n const matches = nodeMatches.get(node);\\n matches.push(matcher);\\n } else {\\n nodeMatches.set(node, [matcher]);\\n }\\n });\\n break;\\n }\\n });\\n return [elementMatchers, textMatchers];\\n }\\n\\n}\\n\\nClipboard.DEFAULTS = {\\n matchers: []\\n};\\n\\nfunction applyFormat(delta, format, value) {\\n if (typeof format === 'object') {\\n return Object.keys(format).reduce((newDelta, key) => {\\n return applyFormat(newDelta, key, format[key]);\\n }, delta);\\n }\\n\\n return delta.reduce((newDelta, op) => {\\n if (op.attributes && op.attributes[format]) {\\n return newDelta.push(op);\\n }\\n\\n return newDelta.insert(op.insert, extend__WEBPACK_IMPORTED_MODULE_0___default()({}, {\\n [format]: value\\n }, op.attributes));\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a());\\n}\\n\\nfunction deltaEndsWith(delta, text) {\\n let endText = '';\\n\\n for (let i = delta.ops.length - 1; i >= 0 && endText.length < text.length; --i // eslint-disable-line no-plusplus\\n ) {\\n const op = delta.ops[i];\\n if (typeof op.insert !== 'string') break;\\n endText = op.insert + endText;\\n }\\n\\n return endText.slice(-1 * text.length) === text;\\n}\\n\\nfunction isLine(node) {\\n if (node.childNodes.length === 0) return false; // Exclude embed blocks\\n\\n return ['address', 'article', 'blockquote', 'canvas', 'dd', 'div', 'dl', 'dt', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'iframe', 'li', 'main', 'nav', 'ol', 'output', 'p', 'pre', 'section', 'table', 'td', 'tr', 'ul', 'video'].includes(node.tagName.toLowerCase());\\n}\\n\\nconst preNodes = new WeakMap();\\n\\nfunction isPre(node) {\\n if (node == null) return false;\\n\\n if (!preNodes.has(node)) {\\n if (node.tagName === 'PRE') {\\n preNodes.set(node, true);\\n } else {\\n preNodes.set(node, isPre(node.parentNode));\\n }\\n }\\n\\n return preNodes.get(node);\\n}\\n\\nfunction traverse(scroll, node, elementMatchers, textMatchers, nodeMatches) {\\n // Post-order\\n if (node.nodeType === node.TEXT_NODE) {\\n return textMatchers.reduce((delta, matcher) => {\\n return matcher(node, delta, scroll);\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a());\\n }\\n\\n if (node.nodeType === node.ELEMENT_NODE) {\\n return Array.from(node.childNodes || []).reduce((delta, childNode) => {\\n let childrenDelta = traverse(scroll, childNode, elementMatchers, textMatchers, nodeMatches);\\n\\n if (childNode.nodeType === node.ELEMENT_NODE) {\\n childrenDelta = elementMatchers.reduce((reducedDelta, matcher) => {\\n return matcher(childNode, reducedDelta, scroll);\\n }, childrenDelta);\\n childrenDelta = (nodeMatches.get(childNode) || []).reduce((reducedDelta, matcher) => {\\n return matcher(childNode, reducedDelta, scroll);\\n }, childrenDelta);\\n }\\n\\n return delta.concat(childrenDelta);\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a());\\n }\\n\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a();\\n}\\n\\nfunction matchAlias(format, node, delta) {\\n return applyFormat(delta, format, true);\\n}\\n\\nfunction matchAttributor(node, delta, scroll) {\\n const attributes = parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"Attributor\\\"].keys(node);\\n const classes = parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"ClassAttributor\\\"].keys(node);\\n const styles = parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"StyleAttributor\\\"].keys(node);\\n const formats = {};\\n attributes.concat(classes).concat(styles).forEach(name => {\\n let attr = scroll.query(name, parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"Scope\\\"].ATTRIBUTE);\\n\\n if (attr != null) {\\n formats[attr.attrName] = attr.value(node);\\n if (formats[attr.attrName]) return;\\n }\\n\\n attr = ATTRIBUTE_ATTRIBUTORS[name];\\n\\n if (attr != null && (attr.attrName === name || attr.keyName === name)) {\\n formats[attr.attrName] = attr.value(node) || undefined;\\n }\\n\\n attr = STYLE_ATTRIBUTORS[name];\\n\\n if (attr != null && (attr.attrName === name || attr.keyName === name)) {\\n attr = STYLE_ATTRIBUTORS[name];\\n formats[attr.attrName] = attr.value(node) || undefined;\\n }\\n });\\n\\n if (Object.keys(formats).length > 0) {\\n return applyFormat(delta, formats);\\n }\\n\\n return delta;\\n}\\n\\nfunction matchBlot(node, delta, scroll) {\\n const match = scroll.query(node);\\n if (match == null) return delta;\\n\\n if (match.prototype instanceof parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"EmbedBlot\\\"]) {\\n const embed = {};\\n const value = match.value(node);\\n\\n if (value != null) {\\n embed[match.blotName] = value;\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().insert(embed, match.formats(node, scroll));\\n }\\n } else {\\n if (match.prototype instanceof parchment__WEBPACK_IMPORTED_MODULE_2__[\\\"BlockBlot\\\"] && !deltaEndsWith(delta, '\\\\n')) {\\n delta.insert('\\\\n');\\n }\\n\\n if (typeof match.formats === 'function') {\\n return applyFormat(delta, match.blotName, match.formats(node, scroll));\\n }\\n }\\n\\n return delta;\\n}\\n\\nfunction matchBreak(node, delta) {\\n if (!deltaEndsWith(delta, '\\\\n')) {\\n delta.insert('\\\\n');\\n }\\n\\n return delta;\\n}\\n\\nfunction matchCodeBlock(node, delta, scroll) {\\n const match = scroll.query('code-block');\\n const language = match ? match.formats(node, scroll) : true;\\n return applyFormat(delta, 'code-block', language);\\n}\\n\\nfunction matchIgnore() {\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a();\\n}\\n\\nfunction matchIndent(node, delta, scroll) {\\n const match = scroll.query(node);\\n\\n if (match == null || match.blotName !== 'list' || !deltaEndsWith(delta, '\\\\n')) {\\n return delta;\\n }\\n\\n let indent = -1;\\n let parent = node.parentNode;\\n\\n while (parent != null) {\\n if (['OL', 'UL'].includes(parent.tagName)) {\\n indent += 1;\\n }\\n\\n parent = parent.parentNode;\\n }\\n\\n if (indent <= 0) return delta;\\n return delta.reduce((composed, op) => {\\n if (op.attributes && op.attributes.list) {\\n return composed.push(op);\\n }\\n\\n return composed.insert(op.insert, {\\n indent,\\n ...(op.attributes || {})\\n });\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a());\\n}\\n\\nfunction matchList(node, delta) {\\n const list = node.tagName === 'OL' ? 'ordered' : 'bullet';\\n return applyFormat(delta, 'list', list);\\n}\\n\\nfunction matchNewline(node, delta, scroll) {\\n if (!deltaEndsWith(delta, '\\\\n')) {\\n if (isLine(node)) {\\n return delta.insert('\\\\n');\\n }\\n\\n if (delta.length() > 0 && node.nextSibling) {\\n let {\\n nextSibling\\n } = node;\\n\\n while (nextSibling != null) {\\n if (isLine(nextSibling)) {\\n return delta.insert('\\\\n');\\n }\\n\\n const match = scroll.query(nextSibling);\\n\\n if (match && match.prototype instanceof _blots_block__WEBPACK_IMPORTED_MODULE_3__[\\\"BlockEmbed\\\"]) {\\n return delta.insert('\\\\n');\\n }\\n\\n nextSibling = nextSibling.firstChild;\\n }\\n }\\n }\\n\\n return delta;\\n}\\n\\nfunction matchStyles(node, delta) {\\n const formats = {};\\n const style = node.style || {};\\n\\n if (style.fontStyle === 'italic') {\\n formats.italic = true;\\n }\\n\\n if (style.textDecoration === 'underline') {\\n formats.underline = true;\\n }\\n\\n if (style.textDecoration === 'line-through') {\\n formats.strike = true;\\n }\\n\\n if (style.fontWeight.startsWith('bold') || parseInt(style.fontWeight, 10) >= 700) {\\n formats.bold = true;\\n }\\n\\n if (Object.keys(formats).length > 0) {\\n delta = applyFormat(delta, formats);\\n }\\n\\n if (parseFloat(style.textIndent || 0) > 0) {\\n // Could be 0.5in\\n return new quill_delta__WEBPACK_IMPORTED_MODULE_1___default.a().insert('\\\\t').concat(delta);\\n }\\n\\n return delta;\\n}\\n\\nfunction matchTable(node, delta) {\\n const table = node.parentNode.tagName === 'TABLE' ? node.parentNode : node.parentNode.parentNode;\\n const rows = Array.from(table.querySelectorAll('tr'));\\n const row = rows.indexOf(node) + 1;\\n return applyFormat(delta, 'table', row);\\n}\\n\\nfunction matchText(node, delta) {\\n let text = node.data; // Word represents empty line with  \\n\\n if (node.parentNode.tagName === 'O:P') {\\n return delta.insert(text.trim());\\n }\\n\\n if (text.trim().length === 0 && text.includes('\\\\n')) {\\n return delta;\\n }\\n\\n if (!isPre(node)) {\\n const replacer = (collapse, match) => {\\n const replaced = match.replace(/[^\\\\u00a0]/g, ''); // \\\\u00a0 is nbsp;\\n\\n return replaced.length < 1 && collapse ? ' ' : replaced;\\n };\\n\\n text = text.replace(/\\\\r\\\\n/g, ' ').replace(/\\\\n/g, ' ');\\n text = text.replace(/\\\\s\\\\s+/g, replacer.bind(replacer, true)); // collapse whitespace\\n\\n if (node.previousSibling == null && isLine(node.parentNode) || node.previousSibling != null && isLine(node.previousSibling)) {\\n text = text.replace(/^\\\\s+/, replacer.bind(replacer, false));\\n }\\n\\n if (node.nextSibling == null && isLine(node.parentNode) || node.nextSibling != null && isLine(node.nextSibling)) {\\n text = text.replace(/\\\\s+$/, replacer.bind(replacer, false));\\n }\\n }\\n\\n return delta.insert(text);\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./modules/clipboard.js?\");\n\n/***/ }),\n\n/***/ \"./modules/history.js\":\n/*!****************************!*\\\n !*** ./modules/history.js ***!\n \\****************************/\n/*! exports provided: default, getLastChangeIndex */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return History; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"getLastChangeIndex\\\", function() { return getLastChangeIndex; });\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n/* harmony import */ var _core_module__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/module */ \\\"./core/module.js\\\");\\n\\n\\n\\n\\nclass History extends _core_module__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] {\\n constructor(quill, options) {\\n super(quill, options);\\n this.lastRecorded = 0;\\n this.ignoreChange = false;\\n this.clear();\\n this.quill.on(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.EDITOR_CHANGE, (eventName, delta, oldDelta, source) => {\\n if (eventName !== _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.TEXT_CHANGE || this.ignoreChange) return;\\n\\n if (!this.options.userOnly || source === _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER) {\\n this.record(delta, oldDelta);\\n } else {\\n this.transform(delta);\\n }\\n });\\n this.quill.keyboard.addBinding({\\n key: 'z',\\n shortKey: true\\n }, this.undo.bind(this));\\n this.quill.keyboard.addBinding({\\n key: 'z',\\n shortKey: true,\\n shiftKey: true\\n }, this.redo.bind(this));\\n\\n if (/Win/i.test(navigator.platform)) {\\n this.quill.keyboard.addBinding({\\n key: 'y',\\n shortKey: true\\n }, this.redo.bind(this));\\n }\\n }\\n\\n change(source, dest) {\\n if (this.stack[source].length === 0) return;\\n const delta = this.stack[source].pop();\\n const base = this.quill.getContents();\\n const inverseDelta = delta.invert(base);\\n this.stack[dest].push(inverseDelta);\\n this.lastRecorded = 0;\\n this.ignoreChange = true;\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n this.ignoreChange = false;\\n const index = getLastChangeIndex(this.quill.scroll, delta);\\n this.quill.setSelection(index);\\n }\\n\\n clear() {\\n this.stack = {\\n undo: [],\\n redo: []\\n };\\n }\\n\\n cutoff() {\\n this.lastRecorded = 0;\\n }\\n\\n record(changeDelta, oldDelta) {\\n if (changeDelta.ops.length === 0) return;\\n this.stack.redo = [];\\n let undoDelta = changeDelta.invert(oldDelta);\\n const timestamp = Date.now();\\n\\n if (this.lastRecorded + this.options.delay > timestamp && this.stack.undo.length > 0) {\\n const delta = this.stack.undo.pop();\\n undoDelta = undoDelta.compose(delta);\\n } else {\\n this.lastRecorded = timestamp;\\n }\\n\\n if (undoDelta.length() === 0) return;\\n this.stack.undo.push(undoDelta);\\n\\n if (this.stack.undo.length > this.options.maxStack) {\\n this.stack.undo.shift();\\n }\\n }\\n\\n redo() {\\n this.change('redo', 'undo');\\n }\\n\\n transform(delta) {\\n transformStack(this.stack.undo, delta);\\n transformStack(this.stack.redo, delta);\\n }\\n\\n undo() {\\n this.change('undo', 'redo');\\n }\\n\\n}\\n\\nHistory.DEFAULTS = {\\n delay: 1000,\\n maxStack: 100,\\n userOnly: false\\n};\\n\\nfunction transformStack(stack, delta) {\\n let remoteDelta = delta;\\n\\n for (let i = stack.length - 1; i >= 0; i -= 1) {\\n const oldDelta = stack[i];\\n stack[i] = remoteDelta.transform(oldDelta, true);\\n remoteDelta = oldDelta.transform(remoteDelta);\\n\\n if (stack[i].length() === 0) {\\n stack.splice(i, 1);\\n }\\n }\\n}\\n\\nfunction endsWithNewlineChange(scroll, delta) {\\n const lastOp = delta.ops[delta.ops.length - 1];\\n if (lastOp == null) return false;\\n\\n if (lastOp.insert != null) {\\n return typeof lastOp.insert === 'string' && lastOp.insert.endsWith('\\\\n');\\n }\\n\\n if (lastOp.attributes != null) {\\n return Object.keys(lastOp.attributes).some(attr => {\\n return scroll.query(attr, parchment__WEBPACK_IMPORTED_MODULE_0__[\\\"Scope\\\"].BLOCK) != null;\\n });\\n }\\n\\n return false;\\n}\\n\\nfunction getLastChangeIndex(scroll, delta) {\\n const deleteLength = delta.reduce((length, op) => {\\n return length + (op.delete || 0);\\n }, 0);\\n let changeIndex = delta.length() - deleteLength;\\n\\n if (endsWithNewlineChange(scroll, delta)) {\\n changeIndex -= 1;\\n }\\n\\n return changeIndex;\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./modules/history.js?\");\n\n/***/ }),\n\n/***/ \"./modules/keyboard.js\":\n/*!*****************************!*\\\n !*** ./modules/keyboard.js ***!\n \\*****************************/\n/*! exports provided: default, SHORTKEY, normalize */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Keyboard; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"SHORTKEY\\\", function() { return SHORTKEY; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"normalize\\\", function() { return normalize; });\\n/* harmony import */ var clone__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! clone */ \\\"./node_modules/clone/clone.js\\\");\\n/* harmony import */ var clone__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(clone__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var deep_equal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! deep-equal */ \\\"./node_modules/deep-equal/index.js\\\");\\n/* harmony import */ var deep_equal__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(deep_equal__WEBPACK_IMPORTED_MODULE_1__);\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_2__);\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_3__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n/* harmony import */ var _core_logger__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../core/logger */ \\\"./core/logger.js\\\");\\n/* harmony import */ var _core_module__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../core/module */ \\\"./core/module.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\nconst debug = Object(_core_logger__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"])('quill:keyboard');\\nconst SHORTKEY = /Mac/i.test(navigator.platform) ? 'metaKey' : 'ctrlKey';\\n\\nclass Keyboard extends _core_module__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"] {\\n static match(evt, binding) {\\n if (['altKey', 'ctrlKey', 'metaKey', 'shiftKey'].some(key => {\\n return !!binding[key] !== evt[key] && binding[key] !== null;\\n })) {\\n return false;\\n }\\n\\n return binding.key === evt.key || binding.key === evt.which;\\n }\\n\\n constructor(quill, options) {\\n super(quill, options);\\n this.bindings = {};\\n Object.keys(this.options.bindings).forEach(name => {\\n if (this.options.bindings[name]) {\\n this.addBinding(this.options.bindings[name]);\\n }\\n });\\n this.addBinding({\\n key: 'Enter',\\n shiftKey: null\\n }, this.handleEnter);\\n this.addBinding({\\n key: 'Enter',\\n metaKey: null,\\n ctrlKey: null,\\n altKey: null\\n }, () => {});\\n\\n if (/Firefox/i.test(navigator.userAgent)) {\\n // Need to handle delete and backspace for Firefox in the general case #1171\\n this.addBinding({\\n key: 'Backspace'\\n }, {\\n collapsed: true\\n }, this.handleBackspace);\\n this.addBinding({\\n key: 'Delete'\\n }, {\\n collapsed: true\\n }, this.handleDelete);\\n } else {\\n this.addBinding({\\n key: 'Backspace'\\n }, {\\n collapsed: true,\\n prefix: /^.?$/\\n }, this.handleBackspace);\\n this.addBinding({\\n key: 'Delete'\\n }, {\\n collapsed: true,\\n suffix: /^.?$/\\n }, this.handleDelete);\\n }\\n\\n this.addBinding({\\n key: 'Backspace'\\n }, {\\n collapsed: false\\n }, this.handleDeleteRange);\\n this.addBinding({\\n key: 'Delete'\\n }, {\\n collapsed: false\\n }, this.handleDeleteRange);\\n this.addBinding({\\n key: 'Backspace',\\n altKey: null,\\n ctrlKey: null,\\n metaKey: null,\\n shiftKey: null\\n }, {\\n collapsed: true,\\n offset: 0\\n }, this.handleBackspace);\\n this.listen();\\n }\\n\\n addBinding(keyBinding, context = {}, handler = {}) {\\n const binding = normalize(keyBinding);\\n\\n if (binding == null) {\\n debug.warn('Attempted to add invalid keyboard binding', binding);\\n return;\\n }\\n\\n if (typeof context === 'function') {\\n context = {\\n handler: context\\n };\\n }\\n\\n if (typeof handler === 'function') {\\n handler = {\\n handler\\n };\\n }\\n\\n const keys = Array.isArray(binding.key) ? binding.key : [binding.key];\\n keys.forEach(key => {\\n const singleBinding = extend__WEBPACK_IMPORTED_MODULE_2___default()({}, binding, {\\n key\\n }, context, handler);\\n this.bindings[singleBinding.key] = this.bindings[singleBinding.key] || [];\\n this.bindings[singleBinding.key].push(singleBinding);\\n });\\n }\\n\\n listen() {\\n this.quill.root.addEventListener('keydown', evt => {\\n if (evt.defaultPrevented || evt.isComposing) return;\\n const bindings = (this.bindings[evt.key] || []).concat(this.bindings[evt.which] || []);\\n const matches = bindings.filter(binding => Keyboard.match(evt, binding));\\n if (matches.length === 0) return;\\n const range = this.quill.getSelection();\\n if (range == null || !this.quill.hasFocus()) return;\\n const [line, offset] = this.quill.getLine(range.index);\\n const [leafStart, offsetStart] = this.quill.getLeaf(range.index);\\n const [leafEnd, offsetEnd] = range.length === 0 ? [leafStart, offsetStart] : this.quill.getLeaf(range.index + range.length);\\n const prefixText = leafStart instanceof parchment__WEBPACK_IMPORTED_MODULE_4__[\\\"TextBlot\\\"] ? leafStart.value().slice(0, offsetStart) : '';\\n const suffixText = leafEnd instanceof parchment__WEBPACK_IMPORTED_MODULE_4__[\\\"TextBlot\\\"] ? leafEnd.value().slice(offsetEnd) : '';\\n const curContext = {\\n collapsed: range.length === 0,\\n empty: range.length === 0 && line.length() <= 1,\\n format: this.quill.getFormat(range),\\n line,\\n offset,\\n prefix: prefixText,\\n suffix: suffixText,\\n event: evt\\n };\\n const prevented = matches.some(binding => {\\n if (binding.collapsed != null && binding.collapsed !== curContext.collapsed) {\\n return false;\\n }\\n\\n if (binding.empty != null && binding.empty !== curContext.empty) {\\n return false;\\n }\\n\\n if (binding.offset != null && binding.offset !== curContext.offset) {\\n return false;\\n }\\n\\n if (Array.isArray(binding.format)) {\\n // any format is present\\n if (binding.format.every(name => curContext.format[name] == null)) {\\n return false;\\n }\\n } else if (typeof binding.format === 'object') {\\n // all formats must match\\n if (!Object.keys(binding.format).every(name => {\\n if (binding.format[name] === true) return curContext.format[name] != null;\\n if (binding.format[name] === false) return curContext.format[name] == null;\\n return deep_equal__WEBPACK_IMPORTED_MODULE_1___default()(binding.format[name], curContext.format[name]);\\n })) {\\n return false;\\n }\\n }\\n\\n if (binding.prefix != null && !binding.prefix.test(curContext.prefix)) {\\n return false;\\n }\\n\\n if (binding.suffix != null && !binding.suffix.test(curContext.suffix)) {\\n return false;\\n }\\n\\n return binding.handler.call(this, range, curContext, binding) !== true;\\n });\\n\\n if (prevented) {\\n evt.preventDefault();\\n }\\n });\\n }\\n\\n handleBackspace(range, context) {\\n // Check for astral symbols\\n const length = /[\\\\uD800-\\\\uDBFF][\\\\uDC00-\\\\uDFFF]$/.test(context.prefix) ? 2 : 1;\\n if (range.index === 0 || this.quill.getLength() <= 1) return;\\n let formats = {};\\n const [line] = this.quill.getLine(range.index);\\n let delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index - length).delete(length);\\n\\n if (context.offset === 0) {\\n // Always deleting newline here, length always 1\\n const [prev] = this.quill.getLine(range.index - 1);\\n\\n if (prev) {\\n const curFormats = line.formats();\\n const prevFormats = this.quill.getFormat(range.index - 1, 1);\\n formats = quill_delta__WEBPACK_IMPORTED_MODULE_3__[\\\"AttributeMap\\\"].diff(curFormats, prevFormats) || {};\\n\\n if (Object.keys(formats).length > 0) {\\n // line.length() - 1 targets \\\\n in line, another -1 for newline being deleted\\n const formatDelta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index + line.length() - 2).retain(1, formats);\\n delta = delta.compose(formatDelta);\\n }\\n }\\n }\\n\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.focus();\\n }\\n\\n handleDelete(range, context) {\\n // Check for astral symbols\\n const length = /^[\\\\uD800-\\\\uDBFF][\\\\uDC00-\\\\uDFFF]/.test(context.suffix) ? 2 : 1;\\n if (range.index >= this.quill.getLength() - length) return;\\n let formats = {};\\n const [line] = this.quill.getLine(range.index);\\n let delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index).delete(length);\\n\\n if (context.offset >= line.length() - 1) {\\n const [next] = this.quill.getLine(range.index + 1);\\n\\n if (next) {\\n const curFormats = line.formats();\\n const nextFormats = this.quill.getFormat(range.index, 1);\\n formats = quill_delta__WEBPACK_IMPORTED_MODULE_3__[\\\"AttributeMap\\\"].diff(curFormats, nextFormats) || {};\\n\\n if (Object.keys(formats).length > 0) {\\n delta = delta.retain(next.length() - 1).retain(1, formats);\\n }\\n }\\n }\\n\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.focus();\\n }\\n\\n handleDeleteRange(range) {\\n const lines = this.quill.getLines(range);\\n let formats = {};\\n\\n if (lines.length > 1) {\\n const firstFormats = lines[0].formats();\\n const lastFormats = lines[lines.length - 1].formats();\\n formats = quill_delta__WEBPACK_IMPORTED_MODULE_3__[\\\"AttributeMap\\\"].diff(lastFormats, firstFormats) || {};\\n }\\n\\n this.quill.deleteText(range, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n\\n if (Object.keys(formats).length > 0) {\\n this.quill.formatLine(range.index, 1, formats, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n\\n this.quill.setSelection(range.index, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n this.quill.focus();\\n }\\n\\n handleEnter(range, context) {\\n const lineFormats = Object.keys(context.format).reduce((formats, format) => {\\n if (this.quill.scroll.query(format, parchment__WEBPACK_IMPORTED_MODULE_4__[\\\"Scope\\\"].BLOCK) && !Array.isArray(context.format[format])) {\\n formats[format] = context.format[format];\\n }\\n\\n return formats;\\n }, {});\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index).delete(range.length).insert('\\\\n', lineFormats);\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(range.index + 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n this.quill.focus();\\n Object.keys(context.format).forEach(name => {\\n if (lineFormats[name] != null) return;\\n if (Array.isArray(context.format[name])) return;\\n if (name === 'code' || name === 'link') return;\\n this.quill.format(name, context.format[name], _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n });\\n }\\n\\n}\\n\\nKeyboard.DEFAULTS = {\\n bindings: {\\n bold: makeFormatHandler('bold'),\\n italic: makeFormatHandler('italic'),\\n underline: makeFormatHandler('underline'),\\n indent: {\\n // highlight tab or tab at beginning of list, indent or blockquote\\n key: 'Tab',\\n format: ['blockquote', 'indent', 'list'],\\n\\n handler(range, context) {\\n if (context.collapsed && context.offset !== 0) return true;\\n this.quill.format('indent', '+1', _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n return false;\\n }\\n\\n },\\n outdent: {\\n key: 'Tab',\\n shiftKey: true,\\n format: ['blockquote', 'indent', 'list'],\\n\\n // highlight tab or tab at beginning of list, indent or blockquote\\n handler(range, context) {\\n if (context.collapsed && context.offset !== 0) return true;\\n this.quill.format('indent', '-1', _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n return false;\\n }\\n\\n },\\n 'outdent backspace': {\\n key: 'Backspace',\\n collapsed: true,\\n shiftKey: null,\\n metaKey: null,\\n ctrlKey: null,\\n altKey: null,\\n format: ['indent', 'list'],\\n offset: 0,\\n\\n handler(range, context) {\\n if (context.format.indent != null) {\\n this.quill.format('indent', '-1', _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n } else if (context.format.list != null) {\\n this.quill.format('list', false, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n }\\n\\n },\\n 'indent code-block': makeCodeBlockHandler(true),\\n 'outdent code-block': makeCodeBlockHandler(false),\\n 'remove tab': {\\n key: 'Tab',\\n shiftKey: true,\\n collapsed: true,\\n prefix: /\\\\t$/,\\n\\n handler(range) {\\n this.quill.deleteText(range.index - 1, 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n\\n },\\n tab: {\\n key: 'Tab',\\n\\n handler(range, context) {\\n if (context.format.table) return true;\\n this.quill.history.cutoff();\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index).delete(range.length).insert('\\\\t');\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.history.cutoff();\\n this.quill.setSelection(range.index + 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n return false;\\n }\\n\\n },\\n 'blockquote empty enter': {\\n key: 'Enter',\\n collapsed: true,\\n format: ['blockquote'],\\n empty: true,\\n\\n handler() {\\n this.quill.format('blockquote', false, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n\\n },\\n 'list empty enter': {\\n key: 'Enter',\\n collapsed: true,\\n format: ['list'],\\n empty: true,\\n\\n handler(range, context) {\\n const formats = {\\n list: false\\n };\\n\\n if (context.format.indent) {\\n formats.indent = false;\\n }\\n\\n this.quill.formatLine(range.index, range.length, formats, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n\\n },\\n 'checklist enter': {\\n key: 'Enter',\\n collapsed: true,\\n format: {\\n list: 'checked'\\n },\\n\\n handler(range) {\\n const [line, offset] = this.quill.getLine(range.index);\\n const formats = extend__WEBPACK_IMPORTED_MODULE_2___default()({}, line.formats(), {\\n list: 'checked'\\n });\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index).insert('\\\\n', formats).retain(line.length() - offset - 1).retain(1, {\\n list: 'unchecked'\\n });\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(range.index + 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n this.quill.scrollIntoView();\\n }\\n\\n },\\n 'header enter': {\\n key: 'Enter',\\n collapsed: true,\\n format: ['header'],\\n suffix: /^$/,\\n\\n handler(range, context) {\\n const [line, offset] = this.quill.getLine(range.index);\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index).insert('\\\\n', context.format).retain(line.length() - offset - 1).retain(1, {\\n header: null\\n });\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(range.index + 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n this.quill.scrollIntoView();\\n }\\n\\n },\\n 'table backspace': {\\n key: 'Backspace',\\n format: ['table'],\\n collapsed: true,\\n offset: 0,\\n\\n handler() {}\\n\\n },\\n 'table delete': {\\n key: 'Delete',\\n format: ['table'],\\n collapsed: true,\\n suffix: /^$/,\\n\\n handler() {}\\n\\n },\\n 'table enter': {\\n key: 'Enter',\\n shiftKey: null,\\n format: ['table'],\\n\\n handler(range) {\\n const module = this.quill.getModule('table');\\n\\n if (module) {\\n const [table, row, cell, offset] = module.getTable(range);\\n const shift = tableSide(table, row, cell, offset);\\n if (shift == null) return;\\n let index = table.offset();\\n\\n if (shift < 0) {\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).insert('\\\\n');\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(range.index + 1, range.length, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n } else if (shift > 0) {\\n index += table.length();\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(index).insert('\\\\n');\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(index, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n }\\n }\\n\\n },\\n 'table tab': {\\n key: 'Tab',\\n shiftKey: null,\\n format: ['table'],\\n\\n handler(range, context) {\\n const {\\n event,\\n line: cell\\n } = context;\\n const offset = cell.offset(this.quill.scroll);\\n\\n if (event.shiftKey) {\\n this.quill.setSelection(offset - 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n } else {\\n this.quill.setSelection(offset + cell.length(), _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n }\\n\\n },\\n 'list autofill': {\\n key: ' ',\\n shiftKey: null,\\n collapsed: true,\\n format: {\\n list: false,\\n 'code-block': false,\\n blockquote: false,\\n header: false,\\n table: false\\n },\\n prefix: /^\\\\s*?(\\\\d+\\\\.|-|\\\\*|\\\\[ ?\\\\]|\\\\[x\\\\])$/,\\n\\n handler(range, context) {\\n if (this.quill.scroll.query('list') == null) return true;\\n const {\\n length\\n } = context.prefix;\\n const [line, offset] = this.quill.getLine(range.index);\\n if (offset > length) return true;\\n let value;\\n\\n switch (context.prefix.trim()) {\\n case '[]':\\n case '[ ]':\\n value = 'unchecked';\\n break;\\n\\n case '[x]':\\n value = 'checked';\\n break;\\n\\n case '-':\\n case '*':\\n value = 'bullet';\\n break;\\n\\n default:\\n value = 'ordered';\\n }\\n\\n this.quill.insertText(range.index, ' ', _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.history.cutoff();\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index - offset).delete(length + 1).retain(line.length() - 2 - offset).retain(1, {\\n list: value\\n });\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.history.cutoff();\\n this.quill.setSelection(range.index - length, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n return false;\\n }\\n\\n },\\n 'code exit': {\\n key: 'Enter',\\n collapsed: true,\\n format: ['code-block'],\\n prefix: /^$/,\\n suffix: /^\\\\s*$/,\\n\\n handler(range) {\\n const [line, offset] = this.quill.getLine(range.index);\\n let numLines = 2;\\n let cur = line;\\n\\n while (cur != null && cur.length() <= 1 && cur.formats()['code-block']) {\\n cur = cur.prev;\\n numLines -= 1; // Requisite prev lines are empty\\n\\n if (numLines <= 0) {\\n const delta = new quill_delta__WEBPACK_IMPORTED_MODULE_3___default.a().retain(range.index + line.length() - offset - 2).retain(1, {\\n 'code-block': null\\n }).delete(1);\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(range.index - 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n return false;\\n }\\n }\\n\\n return true;\\n }\\n\\n },\\n 'embed left': makeEmbedArrowHandler('ArrowLeft', false),\\n 'embed left shift': makeEmbedArrowHandler('ArrowLeft', true),\\n 'embed right': makeEmbedArrowHandler('ArrowRight', false),\\n 'embed right shift': makeEmbedArrowHandler('ArrowRight', true),\\n 'table down': makeTableArrowHandler(false),\\n 'table up': makeTableArrowHandler(true)\\n }\\n};\\n\\nfunction makeCodeBlockHandler(indent) {\\n return {\\n key: 'Tab',\\n shiftKey: !indent,\\n format: {\\n 'code-block': true\\n },\\n\\n handler(range) {\\n const CodeBlock = this.quill.scroll.query('code-block');\\n const lines = range.length === 0 ? this.quill.getLines(range.index, 1) : this.quill.getLines(range);\\n let {\\n index,\\n length\\n } = range;\\n lines.forEach((line, i) => {\\n if (indent) {\\n line.insertAt(0, CodeBlock.TAB);\\n\\n if (i === 0) {\\n index += CodeBlock.TAB.length;\\n } else {\\n length += CodeBlock.TAB.length;\\n }\\n } else if (line.domNode.textContent.startsWith(CodeBlock.TAB)) {\\n line.deleteAt(0, CodeBlock.TAB.length);\\n\\n if (i === 0) {\\n index -= CodeBlock.TAB.length;\\n } else {\\n length -= CodeBlock.TAB.length;\\n }\\n }\\n });\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(index, length, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.SILENT);\\n }\\n\\n };\\n}\\n\\nfunction makeEmbedArrowHandler(key, shiftKey) {\\n const where = key === 'ArrowLeft' ? 'prefix' : 'suffix';\\n return {\\n key,\\n shiftKey,\\n altKey: null,\\n [where]: /^$/,\\n\\n handler(range) {\\n let {\\n index\\n } = range;\\n\\n if (key === 'ArrowRight') {\\n index += range.length + 1;\\n }\\n\\n const [leaf] = this.quill.getLeaf(index);\\n if (!(leaf instanceof parchment__WEBPACK_IMPORTED_MODULE_4__[\\\"EmbedBlot\\\"])) return true;\\n\\n if (key === 'ArrowLeft') {\\n if (shiftKey) {\\n this.quill.setSelection(range.index - 1, range.length + 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n } else {\\n this.quill.setSelection(range.index - 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n } else if (shiftKey) {\\n this.quill.setSelection(range.index, range.length + 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n } else {\\n this.quill.setSelection(range.index + range.length + 1, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n\\n return false;\\n }\\n\\n };\\n}\\n\\nfunction makeFormatHandler(format) {\\n return {\\n key: format[0],\\n shortKey: true,\\n\\n handler(range, context) {\\n this.quill.format(format, !context.format[format], _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n\\n };\\n}\\n\\nfunction makeTableArrowHandler(up) {\\n return {\\n key: up ? 'ArrowUp' : 'ArrowDown',\\n collapsed: true,\\n format: ['table'],\\n\\n handler(range, context) {\\n // TODO move to table module\\n const key = up ? 'prev' : 'next';\\n const cell = context.line;\\n const targetRow = cell.parent[key];\\n\\n if (targetRow != null) {\\n if (targetRow.statics.blotName === 'table-row') {\\n let targetCell = targetRow.children.head;\\n let cur = cell;\\n\\n while (cur.prev != null) {\\n cur = cur.prev;\\n targetCell = targetCell.next;\\n }\\n\\n const index = targetCell.offset(this.quill.scroll) + Math.min(context.offset, targetCell.length() - 1);\\n this.quill.setSelection(index, 0, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n } else {\\n const targetLine = cell.table()[key];\\n\\n if (targetLine != null) {\\n if (up) {\\n this.quill.setSelection(targetLine.offset(this.quill.scroll) + targetLine.length() - 1, 0, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n } else {\\n this.quill.setSelection(targetLine.offset(this.quill.scroll), 0, _core_quill__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"].sources.USER);\\n }\\n }\\n }\\n\\n return false;\\n }\\n\\n };\\n}\\n\\nfunction normalize(binding) {\\n if (typeof binding === 'string' || typeof binding === 'number') {\\n binding = {\\n key: binding\\n };\\n } else if (typeof binding === 'object') {\\n binding = clone__WEBPACK_IMPORTED_MODULE_0___default()(binding, false);\\n } else {\\n return null;\\n }\\n\\n if (binding.shortKey) {\\n binding[SHORTKEY] = binding.shortKey;\\n delete binding.shortKey;\\n }\\n\\n return binding;\\n}\\n\\nfunction tableSide(table, row, cell, offset) {\\n if (row.prev == null && row.next == null) {\\n if (cell.prev == null && cell.next == null) {\\n return offset === 0 ? -1 : 1;\\n }\\n\\n return cell.prev == null ? -1 : 1;\\n }\\n\\n if (row.prev == null) {\\n return -1;\\n }\\n\\n if (row.next == null) {\\n return 1;\\n }\\n\\n return null;\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./modules/keyboard.js?\");\n\n/***/ }),\n\n/***/ \"./modules/syntax.js\":\n/*!***************************!*\\\n !*** ./modules/syntax.js ***!\n \\***************************/\n/*! exports provided: CodeBlock, CodeToken, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"CodeBlock\\\", function() { return SyntaxCodeBlock; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"CodeToken\\\", function() { return CodeToken; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Syntax; });\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _blots_inline__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../blots/inline */ \\\"./blots/inline.js\\\");\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n/* harmony import */ var _core_module__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/module */ \\\"./core/module.js\\\");\\n/* harmony import */ var _blots_block__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../blots/block */ \\\"./blots/block.js\\\");\\n/* harmony import */ var _blots_break__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../blots/break */ \\\"./blots/break.js\\\");\\n/* harmony import */ var _blots_cursor__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../blots/cursor */ \\\"./blots/cursor.js\\\");\\n/* harmony import */ var _blots_text__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../blots/text */ \\\"./blots/text.js\\\");\\n/* harmony import */ var _formats_code__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../formats/code */ \\\"./formats/code.js\\\");\\n/* harmony import */ var _clipboard__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./clipboard */ \\\"./modules/clipboard.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\nconst TokenAttributor = new parchment__WEBPACK_IMPORTED_MODULE_1__[\\\"ClassAttributor\\\"]('code-token', 'hljs', {\\n scope: parchment__WEBPACK_IMPORTED_MODULE_1__[\\\"Scope\\\"].INLINE\\n});\\n\\nclass CodeToken extends _blots_inline__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] {\\n static formats(node, scroll) {\\n while (node != null && node !== scroll.domNode) {\\n if (node.classList && node.classList.contains(_formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"].className)) {\\n return super.formats(node, scroll);\\n }\\n\\n node = node.parentNode;\\n }\\n\\n return undefined;\\n }\\n\\n constructor(scroll, domNode, value) {\\n super(scroll, domNode, value);\\n TokenAttributor.add(this.domNode, value);\\n }\\n\\n format(format, value) {\\n if (format !== CodeToken.blotName) {\\n super.format(format, value);\\n } else if (value) {\\n TokenAttributor.add(this.domNode, value);\\n } else {\\n TokenAttributor.remove(this.domNode);\\n this.domNode.classList.remove(this.statics.className);\\n }\\n }\\n\\n optimize(...args) {\\n super.optimize(...args);\\n\\n if (!TokenAttributor.value(this.domNode)) {\\n this.unwrap();\\n }\\n }\\n\\n}\\n\\nCodeToken.blotName = 'code-token';\\nCodeToken.className = 'ql-token';\\n\\nclass SyntaxCodeBlock extends _formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"] {\\n static create(value) {\\n const domNode = super.create(value);\\n\\n if (typeof value === 'string') {\\n domNode.setAttribute('data-language', value);\\n }\\n\\n return domNode;\\n }\\n\\n static formats(domNode) {\\n return domNode.getAttribute('data-language') || 'plain';\\n }\\n\\n static register() {} // Syntax module will register\\n\\n\\n format(name, value) {\\n if (name === this.statics.blotName && value) {\\n this.domNode.setAttribute('data-language', value);\\n } else {\\n super.format(name, value);\\n }\\n }\\n\\n replaceWith(name, value) {\\n this.formatAt(0, this.length(), CodeToken.blotName, false);\\n return super.replaceWith(name, value);\\n }\\n\\n}\\n\\nclass SyntaxCodeBlockContainer extends _formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"CodeBlockContainer\\\"] {\\n attach() {\\n super.attach();\\n this.forceNext = false;\\n this.scroll.emitMount(this);\\n }\\n\\n format(name, value) {\\n if (name === SyntaxCodeBlock.blotName) {\\n this.forceNext = true;\\n this.children.forEach(child => {\\n child.format(name, value);\\n });\\n }\\n }\\n\\n formatAt(index, length, name, value) {\\n if (name === SyntaxCodeBlock.blotName) {\\n this.forceNext = true;\\n }\\n\\n super.formatAt(index, length, name, value);\\n }\\n\\n highlight(highlight, forced = false) {\\n if (this.children.head == null) return;\\n const nodes = Array.from(this.domNode.childNodes).filter(node => node !== this.uiNode);\\n const text = \\\"\\\".concat(nodes.map(node => node.textContent).join('\\\\n'), \\\"\\\\n\\\");\\n const language = SyntaxCodeBlock.formats(this.children.head.domNode);\\n\\n if (forced || this.forceNext || this.cachedText !== text) {\\n if (text.trim().length > 0 || this.cachedText == null) {\\n const oldDelta = this.children.reduce((delta, child) => {\\n return delta.concat(Object(_blots_block__WEBPACK_IMPORTED_MODULE_5__[\\\"blockDelta\\\"])(child, false));\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a());\\n const delta = highlight(text, language);\\n oldDelta.diff(delta).reduce((index, {\\n retain,\\n attributes\\n }) => {\\n // Should be all retains\\n if (!retain) return index;\\n\\n if (attributes) {\\n Object.keys(attributes).forEach(format => {\\n if ([SyntaxCodeBlock.blotName, CodeToken.blotName].includes(format)) {\\n this.formatAt(index, retain, format, attributes[format]);\\n }\\n });\\n }\\n\\n return index + retain;\\n }, 0);\\n }\\n\\n this.cachedText = text;\\n this.forceNext = false;\\n }\\n }\\n\\n optimize(context) {\\n super.optimize(context);\\n\\n if (this.parent != null && this.children.head != null && this.uiNode != null) {\\n const language = SyntaxCodeBlock.formats(this.children.head.domNode);\\n\\n if (language !== this.uiNode.value) {\\n this.uiNode.value = language;\\n }\\n }\\n }\\n\\n}\\n\\nSyntaxCodeBlockContainer.allowedChildren = [SyntaxCodeBlock];\\nSyntaxCodeBlock.requiredContainer = SyntaxCodeBlockContainer;\\nSyntaxCodeBlock.allowedChildren = [CodeToken, _blots_cursor__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"], _blots_text__WEBPACK_IMPORTED_MODULE_8__[\\\"default\\\"], _blots_break__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"]];\\n\\nclass Syntax extends _core_module__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"] {\\n static register() {\\n _core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].register(CodeToken, true);\\n _core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].register(SyntaxCodeBlock, true);\\n _core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].register(SyntaxCodeBlockContainer, true);\\n }\\n\\n constructor(quill, options) {\\n super(quill, options);\\n\\n if (this.options.hljs == null) {\\n throw new Error('Syntax module requires highlight.js. Please include the library on the page before Quill.');\\n }\\n\\n this.languages = this.options.languages.reduce((memo, {\\n key\\n }) => {\\n memo[key] = true;\\n return memo;\\n }, {});\\n this.highlightBlot = this.highlightBlot.bind(this);\\n this.initListener();\\n this.initTimer();\\n }\\n\\n initListener() {\\n this.quill.on(_core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].events.SCROLL_BLOT_MOUNT, blot => {\\n if (!(blot instanceof SyntaxCodeBlockContainer)) return;\\n const select = this.quill.root.ownerDocument.createElement('select');\\n this.options.languages.forEach(({\\n key,\\n label\\n }) => {\\n const option = select.ownerDocument.createElement('option');\\n option.textContent = label;\\n option.setAttribute('value', key);\\n select.appendChild(option);\\n });\\n select.addEventListener('change', () => {\\n blot.format(SyntaxCodeBlock.blotName, select.value);\\n this.quill.root.focus(); // Prevent scrolling\\n\\n this.highlight(blot, true);\\n });\\n\\n if (blot.uiNode == null) {\\n blot.attachUI(select);\\n\\n if (blot.children.head) {\\n select.value = SyntaxCodeBlock.formats(blot.children.head.domNode);\\n }\\n }\\n });\\n }\\n\\n initTimer() {\\n let timer = null;\\n this.quill.on(_core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].events.SCROLL_OPTIMIZE, () => {\\n clearTimeout(timer);\\n timer = setTimeout(() => {\\n this.highlight();\\n timer = null;\\n }, this.options.interval);\\n });\\n }\\n\\n highlight(blot = null, force = false) {\\n if (this.quill.selection.composing) return;\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.USER);\\n const range = this.quill.getSelection();\\n const blots = blot == null ? this.quill.scroll.descendants(SyntaxCodeBlockContainer) : [blot];\\n blots.forEach(container => {\\n container.highlight(this.highlightBlot, force);\\n });\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.SILENT);\\n\\n if (range != null) {\\n this.quill.setSelection(range, _core_quill__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].sources.SILENT);\\n }\\n }\\n\\n highlightBlot(text, language = 'plain') {\\n language = this.languages[language] ? language : 'plain';\\n\\n if (language === 'plain') {\\n return Object(_blots_text__WEBPACK_IMPORTED_MODULE_8__[\\\"escapeText\\\"])(text).split('\\\\n').reduce((delta, line, i) => {\\n if (i !== 0) {\\n delta.insert('\\\\n', {\\n [_formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"].blotName]: language\\n });\\n }\\n\\n return delta.insert(line);\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a());\\n }\\n\\n const container = this.quill.root.ownerDocument.createElement('div');\\n container.classList.add(_formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"].className);\\n container.innerHTML = this.options.hljs.highlight(language, text).value;\\n return Object(_clipboard__WEBPACK_IMPORTED_MODULE_10__[\\\"traverse\\\"])(this.quill.scroll, container, [(node, delta) => {\\n const value = TokenAttributor.value(node);\\n\\n if (value) {\\n return delta.compose(new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a().retain(delta.length(), {\\n [CodeToken.blotName]: value\\n }));\\n }\\n\\n return delta;\\n }], [(node, delta) => {\\n return node.data.split('\\\\n').reduce((memo, nodeText, i) => {\\n if (i !== 0) memo.insert('\\\\n', {\\n [_formats_code__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"].blotName]: language\\n });\\n return memo.insert(nodeText);\\n }, delta);\\n }], new WeakMap());\\n }\\n\\n}\\n\\nSyntax.DEFAULTS = {\\n hljs: (() => {\\n return window.hljs;\\n })(),\\n interval: 1000,\\n languages: [{\\n key: 'plain',\\n label: 'Plain'\\n }, {\\n key: 'bash',\\n label: 'Bash'\\n }, {\\n key: 'cpp',\\n label: 'C++'\\n }, {\\n key: 'cs',\\n label: 'C#'\\n }, {\\n key: 'css',\\n label: 'CSS'\\n }, {\\n key: 'diff',\\n label: 'Diff'\\n }, {\\n key: 'xml',\\n label: 'HTML/XML'\\n }, {\\n key: 'java',\\n label: 'Java'\\n }, {\\n key: 'javascript',\\n label: 'Javascript'\\n }, {\\n key: 'markdown',\\n label: 'Markdown'\\n }, {\\n key: 'php',\\n label: 'PHP'\\n }, {\\n key: 'python',\\n label: 'Python'\\n }, {\\n key: 'ruby',\\n label: 'Ruby'\\n }, {\\n key: 'sql',\\n label: 'SQL'\\n }]\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./modules/syntax.js?\");\n\n/***/ }),\n\n/***/ \"./modules/table.js\":\n/*!**************************!*\\\n !*** ./modules/table.js ***!\n \\**************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n/* harmony import */ var _core_module__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/module */ \\\"./core/module.js\\\");\\n/* harmony import */ var _formats_table__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../formats/table */ \\\"./formats/table.js\\\");\\n\\n\\n\\n\\n\\nclass Table extends _core_module__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] {\\n static register() {\\n _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].register(_formats_table__WEBPACK_IMPORTED_MODULE_3__[\\\"TableCell\\\"]);\\n _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].register(_formats_table__WEBPACK_IMPORTED_MODULE_3__[\\\"TableRow\\\"]);\\n _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].register(_formats_table__WEBPACK_IMPORTED_MODULE_3__[\\\"TableBody\\\"]);\\n _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].register(_formats_table__WEBPACK_IMPORTED_MODULE_3__[\\\"TableContainer\\\"]);\\n }\\n\\n constructor(...args) {\\n super(...args);\\n this.listenBalanceCells();\\n }\\n\\n balanceTables() {\\n this.quill.scroll.descendants(_formats_table__WEBPACK_IMPORTED_MODULE_3__[\\\"TableContainer\\\"]).forEach(table => {\\n table.balanceCells();\\n });\\n }\\n\\n deleteColumn() {\\n const [table,, cell] = this.getTable();\\n if (cell == null) return;\\n table.deleteColumn(cell.cellOffset());\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n }\\n\\n deleteRow() {\\n const [, row] = this.getTable();\\n if (row == null) return;\\n row.remove();\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n }\\n\\n deleteTable() {\\n const [table] = this.getTable();\\n if (table == null) return;\\n const offset = table.offset();\\n table.remove();\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(offset, _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.SILENT);\\n }\\n\\n getTable(range = this.quill.getSelection()) {\\n if (range == null) return [null, null, null, -1];\\n const [cell, offset] = this.quill.getLine(range.index);\\n\\n if (cell == null || cell.statics.blotName !== _formats_table__WEBPACK_IMPORTED_MODULE_3__[\\\"TableCell\\\"].blotName) {\\n return [null, null, null, -1];\\n }\\n\\n const row = cell.parent;\\n const table = row.parent.parent;\\n return [table, row, cell, offset];\\n }\\n\\n insertColumn(offset) {\\n const range = this.quill.getSelection();\\n const [table, row, cell] = this.getTable(range);\\n if (cell == null) return;\\n const column = cell.cellOffset();\\n table.insertColumn(column + offset);\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n let shift = row.rowOffset();\\n\\n if (offset === 0) {\\n shift += 1;\\n }\\n\\n this.quill.setSelection(range.index + shift, range.length, _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.SILENT);\\n }\\n\\n insertColumnLeft() {\\n this.insertColumn(0);\\n }\\n\\n insertColumnRight() {\\n this.insertColumn(1);\\n }\\n\\n insertRow(offset) {\\n const range = this.quill.getSelection();\\n const [table, row, cell] = this.getTable(range);\\n if (cell == null) return;\\n const index = row.rowOffset();\\n table.insertRow(index + offset);\\n this.quill.update(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n\\n if (offset > 0) {\\n this.quill.setSelection(range, _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.SILENT);\\n } else {\\n this.quill.setSelection(range.index + row.children.length, range.length, _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.SILENT);\\n }\\n }\\n\\n insertRowAbove() {\\n this.insertRow(0);\\n }\\n\\n insertRowBelow() {\\n this.insertRow(1);\\n }\\n\\n insertTable(rows, columns) {\\n const range = this.quill.getSelection();\\n if (range == null) return;\\n const delta = new Array(rows).fill(0).reduce(memo => {\\n const text = new Array(columns).fill('\\\\n').join('');\\n return memo.insert(text, {\\n table: Object(_formats_table__WEBPACK_IMPORTED_MODULE_3__[\\\"tableId\\\"])()\\n });\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a().retain(range.index));\\n this.quill.updateContents(delta, _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(range.index, _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.SILENT);\\n this.balanceTables();\\n }\\n\\n listenBalanceCells() {\\n this.quill.on(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SCROLL_OPTIMIZE, mutations => {\\n mutations.some(mutation => {\\n if (['TD', 'TR', 'TBODY', 'TABLE'].includes(mutation.target.tagName)) {\\n this.quill.once(_core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.TEXT_CHANGE, (delta, old, source) => {\\n if (source !== _core_quill__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER) return;\\n this.balanceTables();\\n });\\n return true;\\n }\\n\\n return false;\\n });\\n });\\n }\\n\\n}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Table);\\n\\n//# sourceURL=webpack://Quill/./modules/table.js?\");\n\n/***/ }),\n\n/***/ \"./modules/toolbar.js\":\n/*!****************************!*\\\n !*** ./modules/toolbar.js ***!\n \\****************************/\n/*! exports provided: default, addControls */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Toolbar; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"addControls\\\", function() { return addControls; });\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var parchment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! parchment */ \\\"./node_modules/parchment/src/parchment.ts\\\");\\n/* harmony import */ var _core_quill__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/quill */ \\\"./core/quill.js\\\");\\n/* harmony import */ var _core_logger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/logger */ \\\"./core/logger.js\\\");\\n/* harmony import */ var _core_module__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/module */ \\\"./core/module.js\\\");\\n\\n\\n\\n\\n\\nconst debug = Object(_core_logger__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"])('quill:toolbar');\\n\\nclass Toolbar extends _core_module__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"] {\\n constructor(quill, options) {\\n super(quill, options);\\n\\n if (Array.isArray(this.options.container)) {\\n const container = document.createElement('div');\\n addControls(container, this.options.container);\\n quill.container.parentNode.insertBefore(container, quill.container);\\n this.container = container;\\n } else if (typeof this.options.container === 'string') {\\n this.container = document.querySelector(this.options.container);\\n } else {\\n this.container = this.options.container;\\n }\\n\\n if (!(this.container instanceof HTMLElement)) {\\n return debug.error('Container required for toolbar', this.options);\\n }\\n\\n this.container.classList.add('ql-toolbar');\\n this.controls = [];\\n this.handlers = {};\\n Object.keys(this.options.handlers).forEach(format => {\\n this.addHandler(format, this.options.handlers[format]);\\n });\\n Array.from(this.container.querySelectorAll('button, select')).forEach(input => {\\n this.attach(input);\\n });\\n this.quill.on(_core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].events.EDITOR_CHANGE, (type, range) => {\\n if (type === _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].events.SELECTION_CHANGE) {\\n this.update(range);\\n }\\n });\\n this.quill.on(_core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].events.SCROLL_OPTIMIZE, () => {\\n const [range] = this.quill.selection.getRange(); // quill.getSelection triggers update\\n\\n this.update(range);\\n });\\n }\\n\\n addHandler(format, handler) {\\n this.handlers[format] = handler;\\n }\\n\\n attach(input) {\\n let format = Array.from(input.classList).find(className => {\\n return className.indexOf('ql-') === 0;\\n });\\n if (!format) return;\\n format = format.slice('ql-'.length);\\n\\n if (input.tagName === 'BUTTON') {\\n input.setAttribute('type', 'button');\\n }\\n\\n if (this.handlers[format] == null && this.quill.scroll.query(format) == null) {\\n debug.warn('ignoring attaching to nonexistent format', format, input);\\n return;\\n }\\n\\n const eventName = input.tagName === 'SELECT' ? 'change' : 'click';\\n input.addEventListener(eventName, e => {\\n let value;\\n\\n if (input.tagName === 'SELECT') {\\n if (input.selectedIndex < 0) return;\\n const selected = input.options[input.selectedIndex];\\n\\n if (selected.hasAttribute('selected')) {\\n value = false;\\n } else {\\n value = selected.value || false;\\n }\\n } else {\\n if (input.classList.contains('ql-active')) {\\n value = false;\\n } else {\\n value = input.value || !input.hasAttribute('value');\\n }\\n\\n e.preventDefault();\\n }\\n\\n this.quill.focus();\\n const [range] = this.quill.selection.getRange();\\n\\n if (this.handlers[format] != null) {\\n this.handlers[format].call(this, value);\\n } else if (this.quill.scroll.query(format).prototype instanceof parchment__WEBPACK_IMPORTED_MODULE_1__[\\\"EmbedBlot\\\"]) {\\n value = prompt(\\\"Enter \\\".concat(format)); // eslint-disable-line no-alert\\n\\n if (!value) return;\\n this.quill.updateContents(new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a().retain(range.index).delete(range.length).insert({\\n [format]: value\\n }), _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n } else {\\n this.quill.format(format, value, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n }\\n\\n this.update(range);\\n });\\n this.controls.push([format, input]);\\n }\\n\\n update(range) {\\n const formats = range == null ? {} : this.quill.getFormat(range);\\n this.controls.forEach(pair => {\\n const [format, input] = pair;\\n\\n if (input.tagName === 'SELECT') {\\n let option;\\n\\n if (range == null) {\\n option = null;\\n } else if (formats[format] == null) {\\n option = input.querySelector('option[selected]');\\n } else if (!Array.isArray(formats[format])) {\\n let value = formats[format];\\n\\n if (typeof value === 'string') {\\n value = value.replace(/\\\"/g, '\\\\\\\\\\\"');\\n }\\n\\n option = input.querySelector(\\\"option[value=\\\\\\\"\\\".concat(value, \\\"\\\\\\\"]\\\"));\\n }\\n\\n if (option == null) {\\n input.value = ''; // TODO make configurable?\\n\\n input.selectedIndex = -1;\\n } else {\\n option.selected = true;\\n }\\n } else if (range == null) {\\n input.classList.remove('ql-active');\\n } else if (input.hasAttribute('value')) {\\n // both being null should match (default values)\\n // '1' should match with 1 (headers)\\n const isActive = formats[format] === input.getAttribute('value') || formats[format] != null && formats[format].toString() === input.getAttribute('value') || formats[format] == null && !input.getAttribute('value');\\n input.classList.toggle('ql-active', isActive);\\n } else {\\n input.classList.toggle('ql-active', formats[format] != null);\\n }\\n });\\n }\\n\\n}\\n\\nToolbar.DEFAULTS = {};\\n\\nfunction addButton(container, format, value) {\\n const input = document.createElement('button');\\n input.setAttribute('type', 'button');\\n input.classList.add(\\\"ql-\\\".concat(format));\\n\\n if (value != null) {\\n input.value = value;\\n }\\n\\n container.appendChild(input);\\n}\\n\\nfunction addControls(container, groups) {\\n if (!Array.isArray(groups[0])) {\\n groups = [groups];\\n }\\n\\n groups.forEach(controls => {\\n const group = document.createElement('span');\\n group.classList.add('ql-formats');\\n controls.forEach(control => {\\n if (typeof control === 'string') {\\n addButton(group, control);\\n } else {\\n const format = Object.keys(control)[0];\\n const value = control[format];\\n\\n if (Array.isArray(value)) {\\n addSelect(group, format, value);\\n } else {\\n addButton(group, format, value);\\n }\\n }\\n });\\n container.appendChild(group);\\n });\\n}\\n\\nfunction addSelect(container, format, values) {\\n const input = document.createElement('select');\\n input.classList.add(\\\"ql-\\\".concat(format));\\n values.forEach(value => {\\n const option = document.createElement('option');\\n\\n if (value !== false) {\\n option.setAttribute('value', value);\\n } else {\\n option.setAttribute('selected', 'selected');\\n }\\n\\n input.appendChild(option);\\n });\\n container.appendChild(input);\\n}\\n\\nToolbar.DEFAULTS = {\\n container: null,\\n handlers: {\\n clean() {\\n const range = this.quill.getSelection();\\n if (range == null) return;\\n\\n if (range.length === 0) {\\n const formats = this.quill.getFormat();\\n Object.keys(formats).forEach(name => {\\n // Clean functionality in existing apps only clean inline formats\\n if (this.quill.scroll.query(name, parchment__WEBPACK_IMPORTED_MODULE_1__[\\\"Scope\\\"].INLINE) != null) {\\n this.quill.format(name, false, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n }\\n });\\n } else {\\n this.quill.removeFormat(range, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n }\\n },\\n\\n direction(value) {\\n const {\\n align\\n } = this.quill.getFormat();\\n\\n if (value === 'rtl' && align == null) {\\n this.quill.format('align', 'right', _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n } else if (!value && align === 'right') {\\n this.quill.format('align', false, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n }\\n\\n this.quill.format('direction', value, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n },\\n\\n indent(value) {\\n const range = this.quill.getSelection();\\n const formats = this.quill.getFormat(range);\\n const indent = parseInt(formats.indent || 0, 10);\\n\\n if (value === '+1' || value === '-1') {\\n let modifier = value === '+1' ? 1 : -1;\\n if (formats.direction === 'rtl') modifier *= -1;\\n this.quill.format('indent', indent + modifier, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n }\\n },\\n\\n link(value) {\\n if (value === true) {\\n value = prompt('Enter link URL:'); // eslint-disable-line no-alert\\n }\\n\\n this.quill.format('link', value, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n },\\n\\n list(value) {\\n const range = this.quill.getSelection();\\n const formats = this.quill.getFormat(range);\\n\\n if (value === 'check') {\\n if (formats.list === 'checked' || formats.list === 'unchecked') {\\n this.quill.format('list', false, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n } else {\\n this.quill.format('list', 'unchecked', _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n }\\n } else {\\n this.quill.format('list', value, _core_quill__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].sources.USER);\\n }\\n }\\n\\n }\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./modules/toolbar.js?\");\n\n/***/ }),\n\n/***/ \"./modules/uploader.js\":\n/*!*****************************!*\\\n !*** ./modules/uploader.js ***!\n \\*****************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! quill-delta */ \\\"./node_modules/quill-delta/dist/Delta.js\\\");\\n/* harmony import */ var quill_delta__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(quill_delta__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var _core_emitter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/emitter */ \\\"./core/emitter.js\\\");\\n/* harmony import */ var _core_module__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/module */ \\\"./core/module.js\\\");\\n\\n\\n\\n\\nclass Uploader extends _core_module__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] {\\n constructor(quill, options) {\\n super(quill, options);\\n quill.root.addEventListener('drop', e => {\\n e.preventDefault();\\n let native;\\n\\n if (document.caretRangeFromPoint) {\\n native = document.caretRangeFromPoint(e.clientX, e.clientY);\\n } else if (document.caretPositionFromPoint) {\\n const position = document.caretPositionFromPoint(e.clientX, e.clientY);\\n native = document.createRange();\\n native.setStart(position.offsetNode, position.offset);\\n native.setEnd(position.offsetNode, position.offset);\\n } else {\\n return;\\n }\\n\\n const normalized = quill.selection.normalizeNative(native);\\n const range = quill.selection.normalizedToRange(normalized);\\n this.upload(range, e.dataTransfer.files);\\n });\\n }\\n\\n upload(range, files) {\\n const uploads = [];\\n Array.from(files).forEach(file => {\\n if (file && this.options.mimetypes.includes(file.type)) {\\n uploads.push(file);\\n }\\n });\\n\\n if (uploads.length > 0) {\\n this.options.handler.call(this, range, uploads);\\n }\\n }\\n\\n}\\n\\nUploader.DEFAULTS = {\\n mimetypes: ['image/png', 'image/jpeg'],\\n\\n handler(range, files) {\\n const promises = files.map(file => {\\n return new Promise(resolve => {\\n const reader = new FileReader();\\n\\n reader.onload = e => {\\n resolve(e.target.result);\\n };\\n\\n reader.readAsDataURL(file);\\n });\\n });\\n Promise.all(promises).then(images => {\\n const update = images.reduce((delta, image) => {\\n return delta.insert({\\n image\\n });\\n }, new quill_delta__WEBPACK_IMPORTED_MODULE_0___default.a().retain(range.index).delete(range.length));\\n this.quill.updateContents(update, _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n this.quill.setSelection(range.index + images.length, _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.SILENT);\\n });\\n }\\n\\n};\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Uploader);\\n\\n//# sourceURL=webpack://Quill/./modules/uploader.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/array-filter/index.js\":\n/*!********************************************!*\\\n !*** ./node_modules/array-filter/index.js ***!\n \\********************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"\\n/**\\n * Array#filter.\\n *\\n * @param {Array} arr\\n * @param {Function} fn\\n * @param {Object=} self\\n * @return {Array}\\n * @throw TypeError\\n */\\n\\nmodule.exports = function (arr, fn, self) {\\n if (arr.filter) return arr.filter(fn, self);\\n if (void 0 === arr || null === arr) throw new TypeError;\\n if ('function' != typeof fn) throw new TypeError;\\n var ret = [];\\n for (var i = 0; i < arr.length; i++) {\\n if (!hasOwn.call(arr, i)) continue;\\n var val = arr[i];\\n if (fn.call(self, val, i, arr)) ret.push(val);\\n }\\n return ret;\\n};\\n\\nvar hasOwn = Object.prototype.hasOwnProperty;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/array-filter/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/available-typed-arrays/index.js\":\n/*!******************************************************!*\\\n !*** ./node_modules/available-typed-arrays/index.js ***!\n \\******************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"/* WEBPACK VAR INJECTION */(function(global) {\\n\\nvar filter = __webpack_require__(/*! array-filter */ \\\"./node_modules/array-filter/index.js\\\");\\n\\nmodule.exports = function availableTypedArrays() {\\n\\treturn filter([\\n\\t\\t'BigInt64Array',\\n\\t\\t'BigUint64Array',\\n\\t\\t'Float32Array',\\n\\t\\t'Float64Array',\\n\\t\\t'Int16Array',\\n\\t\\t'Int32Array',\\n\\t\\t'Int8Array',\\n\\t\\t'Uint16Array',\\n\\t\\t'Uint32Array',\\n\\t\\t'Uint8Array',\\n\\t\\t'Uint8ClampedArray'\\n\\t], function (typedArray) {\\n\\t\\treturn typeof global[typedArray] === 'function';\\n\\t});\\n};\\n\\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ \\\"./node_modules/webpack/buildin/global.js\\\")))\\n\\n//# sourceURL=webpack://Quill/./node_modules/available-typed-arrays/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/clone/clone.js\":\n/*!*************************************!*\\\n !*** ./node_modules/clone/clone.js ***!\n \\*************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"var clone = (function() {\\n'use strict';\\n\\nfunction _instanceof(obj, type) {\\n return type != null && obj instanceof type;\\n}\\n\\nvar nativeMap;\\ntry {\\n nativeMap = Map;\\n} catch(_) {\\n // maybe a reference error because no `Map`. Give it a dummy value that no\\n // value will ever be an instanceof.\\n nativeMap = function() {};\\n}\\n\\nvar nativeSet;\\ntry {\\n nativeSet = Set;\\n} catch(_) {\\n nativeSet = function() {};\\n}\\n\\nvar nativePromise;\\ntry {\\n nativePromise = Promise;\\n} catch(_) {\\n nativePromise = function() {};\\n}\\n\\n/**\\n * Clones (copies) an Object using deep copying.\\n *\\n * This function supports circular references by default, but if you are certain\\n * there are no circular references in your object, you can save some CPU time\\n * by calling clone(obj, false).\\n *\\n * Caution: if `circular` is false and `parent` contains circular references,\\n * your program may enter an infinite loop and crash.\\n *\\n * @param `parent` - the object to be cloned\\n * @param `circular` - set to true if the object to be cloned may contain\\n * circular references. (optional - true by default)\\n * @param `depth` - set to a number if the object is only to be cloned to\\n * a particular depth. (optional - defaults to Infinity)\\n * @param `prototype` - sets the prototype to be used when cloning an object.\\n * (optional - defaults to parent prototype).\\n * @param `includeNonEnumerable` - set to true if the non-enumerable properties\\n * should be cloned as well. Non-enumerable properties on the prototype\\n * chain will be ignored. (optional - false by default)\\n*/\\nfunction clone(parent, circular, depth, prototype, includeNonEnumerable) {\\n if (typeof circular === 'object') {\\n depth = circular.depth;\\n prototype = circular.prototype;\\n includeNonEnumerable = circular.includeNonEnumerable;\\n circular = circular.circular;\\n }\\n // maintain two arrays for circular references, where corresponding parents\\n // and children have the same index\\n var allParents = [];\\n var allChildren = [];\\n\\n var useBuffer = typeof Buffer != 'undefined';\\n\\n if (typeof circular == 'undefined')\\n circular = true;\\n\\n if (typeof depth == 'undefined')\\n depth = Infinity;\\n\\n // recurse this function so we don't reset allParents and allChildren\\n function _clone(parent, depth) {\\n // cloning null always returns null\\n if (parent === null)\\n return null;\\n\\n if (depth === 0)\\n return parent;\\n\\n var child;\\n var proto;\\n if (typeof parent != 'object') {\\n return parent;\\n }\\n\\n if (_instanceof(parent, nativeMap)) {\\n child = new nativeMap();\\n } else if (_instanceof(parent, nativeSet)) {\\n child = new nativeSet();\\n } else if (_instanceof(parent, nativePromise)) {\\n child = new nativePromise(function (resolve, reject) {\\n parent.then(function(value) {\\n resolve(_clone(value, depth - 1));\\n }, function(err) {\\n reject(_clone(err, depth - 1));\\n });\\n });\\n } else if (clone.__isArray(parent)) {\\n child = [];\\n } else if (clone.__isRegExp(parent)) {\\n child = new RegExp(parent.source, __getRegExpFlags(parent));\\n if (parent.lastIndex) child.lastIndex = parent.lastIndex;\\n } else if (clone.__isDate(parent)) {\\n child = new Date(parent.getTime());\\n } else if (useBuffer && Buffer.isBuffer(parent)) {\\n if (Buffer.allocUnsafe) {\\n // Node.js >= 4.5.0\\n child = Buffer.allocUnsafe(parent.length);\\n } else {\\n // Older Node.js versions\\n child = new Buffer(parent.length);\\n }\\n parent.copy(child);\\n return child;\\n } else if (_instanceof(parent, Error)) {\\n child = Object.create(parent);\\n } else {\\n if (typeof prototype == 'undefined') {\\n proto = Object.getPrototypeOf(parent);\\n child = Object.create(proto);\\n }\\n else {\\n child = Object.create(prototype);\\n proto = prototype;\\n }\\n }\\n\\n if (circular) {\\n var index = allParents.indexOf(parent);\\n\\n if (index != -1) {\\n return allChildren[index];\\n }\\n allParents.push(parent);\\n allChildren.push(child);\\n }\\n\\n if (_instanceof(parent, nativeMap)) {\\n parent.forEach(function(value, key) {\\n var keyChild = _clone(key, depth - 1);\\n var valueChild = _clone(value, depth - 1);\\n child.set(keyChild, valueChild);\\n });\\n }\\n if (_instanceof(parent, nativeSet)) {\\n parent.forEach(function(value) {\\n var entryChild = _clone(value, depth - 1);\\n child.add(entryChild);\\n });\\n }\\n\\n for (var i in parent) {\\n var attrs;\\n if (proto) {\\n attrs = Object.getOwnPropertyDescriptor(proto, i);\\n }\\n\\n if (attrs && attrs.set == null) {\\n continue;\\n }\\n child[i] = _clone(parent[i], depth - 1);\\n }\\n\\n if (Object.getOwnPropertySymbols) {\\n var symbols = Object.getOwnPropertySymbols(parent);\\n for (var i = 0; i < symbols.length; i++) {\\n // Don't need to worry about cloning a symbol because it is a primitive,\\n // like a number or string.\\n var symbol = symbols[i];\\n var descriptor = Object.getOwnPropertyDescriptor(parent, symbol);\\n if (descriptor && !descriptor.enumerable && !includeNonEnumerable) {\\n continue;\\n }\\n child[symbol] = _clone(parent[symbol], depth - 1);\\n if (!descriptor.enumerable) {\\n Object.defineProperty(child, symbol, {\\n enumerable: false\\n });\\n }\\n }\\n }\\n\\n if (includeNonEnumerable) {\\n var allPropertyNames = Object.getOwnPropertyNames(parent);\\n for (var i = 0; i < allPropertyNames.length; i++) {\\n var propertyName = allPropertyNames[i];\\n var descriptor = Object.getOwnPropertyDescriptor(parent, propertyName);\\n if (descriptor && descriptor.enumerable) {\\n continue;\\n }\\n child[propertyName] = _clone(parent[propertyName], depth - 1);\\n Object.defineProperty(child, propertyName, {\\n enumerable: false\\n });\\n }\\n }\\n\\n return child;\\n }\\n\\n return _clone(parent, depth);\\n}\\n\\n/**\\n * Simple flat clone using prototype, accepts only objects, usefull for property\\n * override on FLAT configuration object (no nested props).\\n *\\n * USE WITH CAUTION! This may not behave as you wish if you do not know how this\\n * works.\\n */\\nclone.clonePrototype = function clonePrototype(parent) {\\n if (parent === null)\\n return null;\\n\\n var c = function () {};\\n c.prototype = parent;\\n return new c();\\n};\\n\\n// private utility functions\\n\\nfunction __objToStr(o) {\\n return Object.prototype.toString.call(o);\\n}\\nclone.__objToStr = __objToStr;\\n\\nfunction __isDate(o) {\\n return typeof o === 'object' && __objToStr(o) === '[object Date]';\\n}\\nclone.__isDate = __isDate;\\n\\nfunction __isArray(o) {\\n return typeof o === 'object' && __objToStr(o) === '[object Array]';\\n}\\nclone.__isArray = __isArray;\\n\\nfunction __isRegExp(o) {\\n return typeof o === 'object' && __objToStr(o) === '[object RegExp]';\\n}\\nclone.__isRegExp = __isRegExp;\\n\\nfunction __getRegExpFlags(re) {\\n var flags = '';\\n if (re.global) flags += 'g';\\n if (re.ignoreCase) flags += 'i';\\n if (re.multiline) flags += 'm';\\n return flags;\\n}\\nclone.__getRegExpFlags = __getRegExpFlags;\\n\\nreturn clone;\\n})();\\n\\nif (typeof module === 'object' && module.exports) {\\n module.exports = clone;\\n}\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/clone/clone.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/index.js\":\n/*!******************************************!*\\\n !*** ./node_modules/deep-equal/index.js ***!\n \\******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar objectKeys = __webpack_require__(/*! object-keys */ \\\"./node_modules/deep-equal/node_modules/object-keys/index.js\\\");\\nvar isArguments = __webpack_require__(/*! is-arguments */ \\\"./node_modules/is-arguments/index.js\\\");\\nvar is = __webpack_require__(/*! object-is */ \\\"./node_modules/object-is/index.js\\\");\\nvar isRegex = __webpack_require__(/*! is-regex */ \\\"./node_modules/deep-equal/node_modules/is-regex/index.js\\\");\\nvar flags = __webpack_require__(/*! regexp.prototype.flags */ \\\"./node_modules/regexp.prototype.flags/index.js\\\");\\nvar isArray = __webpack_require__(/*! isarray */ \\\"./node_modules/deep-equal/node_modules/isarray/index.js\\\");\\nvar isDate = __webpack_require__(/*! is-date-object */ \\\"./node_modules/deep-equal/node_modules/is-date-object/index.js\\\");\\nvar whichBoxedPrimitive = __webpack_require__(/*! which-boxed-primitive */ \\\"./node_modules/which-boxed-primitive/index.js\\\");\\nvar GetIntrinsic = __webpack_require__(/*! es-abstract/GetIntrinsic */ \\\"./node_modules/deep-equal/node_modules/es-abstract/GetIntrinsic.js\\\");\\nvar callBound = __webpack_require__(/*! es-abstract/helpers/callBound */ \\\"./node_modules/deep-equal/node_modules/es-abstract/helpers/callBound.js\\\");\\nvar whichCollection = __webpack_require__(/*! which-collection */ \\\"./node_modules/which-collection/index.js\\\");\\nvar getIterator = __webpack_require__(/*! es-get-iterator */ \\\"./node_modules/es-get-iterator/index.js\\\");\\nvar getSideChannel = __webpack_require__(/*! side-channel */ \\\"./node_modules/side-channel/index.js\\\");\\nvar whichTypedArray = __webpack_require__(/*! which-typed-array */ \\\"./node_modules/which-typed-array/index.js\\\");\\nvar assign = __webpack_require__(/*! object.assign */ \\\"./node_modules/object.assign/index.js\\\");\\n\\nvar $getTime = callBound('Date.prototype.getTime');\\nvar gPO = Object.getPrototypeOf;\\nvar $objToString = callBound('Object.prototype.toString');\\n\\nvar $Set = GetIntrinsic('%Set%', true);\\nvar $mapHas = callBound('Map.prototype.has', true);\\nvar $mapGet = callBound('Map.prototype.get', true);\\nvar $mapSize = callBound('Map.prototype.size', true);\\nvar $setAdd = callBound('Set.prototype.add', true);\\nvar $setDelete = callBound('Set.prototype.delete', true);\\nvar $setHas = callBound('Set.prototype.has', true);\\nvar $setSize = callBound('Set.prototype.size', true);\\n\\n// taken from https://github.com/browserify/commonjs-assert/blob/bba838e9ba9e28edf3127ce6974624208502f6bc/internal/util/comparisons.js#L401-L414\\nfunction setHasEqualElement(set, val1, opts, channel) {\\n var i = getIterator(set);\\n var result;\\n while ((result = i.next()) && !result.done) {\\n if (internalDeepEqual(val1, result.value, opts, channel)) { // eslint-disable-line no-use-before-define\\n // Remove the matching element to make sure we do not check that again.\\n $setDelete(set, result.value);\\n return true;\\n }\\n }\\n\\n return false;\\n}\\n\\n// taken from https://github.com/browserify/commonjs-assert/blob/bba838e9ba9e28edf3127ce6974624208502f6bc/internal/util/comparisons.js#L416-L439\\nfunction findLooseMatchingPrimitives(prim) {\\n if (typeof prim === 'undefined') {\\n return null;\\n }\\n if (typeof prim === 'object') { // Only pass in null as object!\\n return void 0;\\n }\\n if (typeof prim === 'symbol') {\\n return false;\\n }\\n if (typeof prim === 'string' || typeof prim === 'number') {\\n // Loose equal entries exist only if the string is possible to convert to a regular number and not NaN.\\n return +prim === +prim; // eslint-disable-line no-implicit-coercion\\n }\\n return true;\\n}\\n\\n// taken from https://github.com/browserify/commonjs-assert/blob/bba838e9ba9e28edf3127ce6974624208502f6bc/internal/util/comparisons.js#L449-L460\\nfunction mapMightHaveLoosePrim(a, b, prim, item, opts, channel) {\\n var altValue = findLooseMatchingPrimitives(prim);\\n if (altValue != null) {\\n return altValue;\\n }\\n var curB = $mapGet(b, altValue);\\n var looseOpts = assign({}, opts, { strict: false });\\n if (\\n (typeof curB === 'undefined' && !$mapHas(b, altValue))\\n // eslint-disable-next-line no-use-before-define\\n || !internalDeepEqual(item, curB, looseOpts, channel)\\n ) {\\n return false;\\n }\\n // eslint-disable-next-line no-use-before-define\\n return !$mapHas(a, altValue) && internalDeepEqual(item, curB, looseOpts, channel);\\n}\\n\\n// taken from https://github.com/browserify/commonjs-assert/blob/bba838e9ba9e28edf3127ce6974624208502f6bc/internal/util/comparisons.js#L441-L447\\nfunction setMightHaveLoosePrim(a, b, prim) {\\n var altValue = findLooseMatchingPrimitives(prim);\\n if (altValue != null) {\\n return altValue;\\n }\\n\\n return $setHas(b, altValue) && !$setHas(a, altValue);\\n}\\n\\n// taken from https://github.com/browserify/commonjs-assert/blob/bba838e9ba9e28edf3127ce6974624208502f6bc/internal/util/comparisons.js#L518-L533\\nfunction mapHasEqualEntry(set, map, key1, item1, opts, channel) {\\n var i = getIterator(set);\\n var result;\\n var key2;\\n while ((result = i.next()) && !result.done) {\\n key2 = result.value;\\n if (\\n // eslint-disable-next-line no-use-before-define\\n internalDeepEqual(key1, key2, opts, channel)\\n // eslint-disable-next-line no-use-before-define\\n && internalDeepEqual(item1, $mapGet(map, key2), opts, channel)\\n ) {\\n $setDelete(set, key2);\\n return true;\\n }\\n }\\n\\n return false;\\n}\\n\\nfunction internalDeepEqual(actual, expected, options, channel) {\\n var opts = options || {};\\n\\n // 7.1. All identical values are equivalent, as determined by ===.\\n if (opts.strict ? is(actual, expected) : actual === expected) {\\n return true;\\n }\\n\\n var actualBoxed = whichBoxedPrimitive(actual);\\n var expectedBoxed = whichBoxedPrimitive(expected);\\n if (actualBoxed !== expectedBoxed) {\\n return false;\\n }\\n\\n // 7.3. Other pairs that do not both pass typeof value == 'object', equivalence is determined by ==.\\n if (!actual || !expected || (typeof actual !== 'object' && typeof expected !== 'object')) {\\n return opts.strict ? is(actual, expected) : actual == expected; // eslint-disable-line eqeqeq\\n }\\n\\n /*\\n * 7.4. For all other Object pairs, including Array objects, equivalence is\\n * determined by having the same number of owned properties (as verified\\n * with Object.prototype.hasOwnProperty.call), the same set of keys\\n * (although not necessarily the same order), equivalent values for every\\n * corresponding key, and an identical 'prototype' property. Note: this\\n * accounts for both named and indexed properties on Arrays.\\n */\\n // see https://github.com/nodejs/node/commit/d3aafd02efd3a403d646a3044adcf14e63a88d32 for memos/channel inspiration\\n\\n var hasActual = channel.has(actual);\\n var hasExpected = channel.has(expected);\\n var sentinel;\\n if (hasActual && hasExpected) {\\n if (channel.get(actual) === channel.get(expected)) {\\n return true;\\n }\\n } else {\\n sentinel = {};\\n }\\n if (!hasActual) { channel.set(actual, sentinel); }\\n if (!hasExpected) { channel.set(expected, sentinel); }\\n\\n // eslint-disable-next-line no-use-before-define\\n return objEquiv(actual, expected, opts, channel);\\n}\\n\\nfunction isBuffer(x) {\\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') {\\n return false;\\n }\\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\\n return false;\\n }\\n if (x.length > 0 && typeof x[0] !== 'number') {\\n return false;\\n }\\n\\n return !!(x.constructor && x.constructor.isBuffer && x.constructor.isBuffer(x));\\n}\\n\\nfunction setEquiv(a, b, opts, channel) {\\n if ($setSize(a) !== $setSize(b)) {\\n return false;\\n }\\n var iA = getIterator(a);\\n var iB = getIterator(b);\\n var resultA;\\n var resultB;\\n var set;\\n while ((resultA = iA.next()) && !resultA.done) {\\n if (resultA.value && typeof resultA.value === 'object') {\\n if (!set) { set = new $Set(); }\\n $setAdd(set, resultA.value);\\n } else if (!$setHas(b, resultA.value)) {\\n if (opts.strict) { return false; }\\n if (!setMightHaveLoosePrim(a, b, resultA.value)) {\\n return false;\\n }\\n if (!set) { set = new $Set(); }\\n $setAdd(set, resultA.value);\\n }\\n }\\n if (set) {\\n while ((resultB = iB.next()) && !resultB.done) {\\n // We have to check if a primitive value is already matching and only if it's not, go hunting for it.\\n if (resultB.value && typeof resultB.value === 'object') {\\n if (!setHasEqualElement(set, resultB.value, opts.strict, channel)) {\\n return false;\\n }\\n } else if (\\n !opts.strict\\n && !$setHas(a, resultB.value)\\n && !setHasEqualElement(set, resultB.value, opts.strict, channel)\\n ) {\\n return false;\\n }\\n }\\n return $setSize(set) === 0;\\n }\\n return true;\\n}\\n\\nfunction mapEquiv(a, b, opts, channel) {\\n if ($mapSize(a) !== $mapSize(b)) {\\n return false;\\n }\\n var iA = getIterator(a);\\n var iB = getIterator(b);\\n var resultA;\\n var resultB;\\n var set;\\n var key;\\n var item1;\\n var item2;\\n while ((resultA = iA.next()) && !resultA.done) {\\n key = resultA.value[0];\\n item1 = resultA.value[1];\\n if (key && typeof key === 'object') {\\n if (!set) { set = new $Set(); }\\n $setAdd(set, key);\\n } else {\\n item2 = $mapGet(b, key);\\n if ((typeof item2 === 'undefined' && !$mapHas(b, key)) || !internalDeepEqual(item1, item2, opts, channel)) {\\n if (opts.strict) {\\n return false;\\n }\\n if (!mapMightHaveLoosePrim(a, b, key, item1, opts, channel)) {\\n return false;\\n }\\n if (!set) { set = new $Set(); }\\n $setAdd(set, key);\\n }\\n }\\n }\\n\\n if (set) {\\n while ((resultB = iB.next()) && !resultB.done) {\\n key = resultB.value[0];\\n item2 = resultB.value[1];\\n if (key && typeof key === 'object') {\\n if (!mapHasEqualEntry(set, a, key, item2, opts, channel)) {\\n return false;\\n }\\n } else if (\\n !opts.strict\\n && (!a.has(key) || !internalDeepEqual($mapGet(a, key), item2, opts, channel))\\n && !mapHasEqualEntry(set, a, key, item2, assign({}, opts, { strict: false }), channel)\\n ) {\\n return false;\\n }\\n }\\n return $setSize(set) === 0;\\n }\\n return true;\\n}\\n\\nfunction objEquiv(a, b, opts, channel) {\\n /* eslint max-statements: [2, 100], max-lines-per-function: [2, 120], max-depth: [2, 5] */\\n var i, key;\\n\\n if (typeof a !== typeof b) { return false; }\\n if (a == null || b == null) { return false; }\\n\\n if ($objToString(a) !== $objToString(b)) { return false; }\\n\\n if (isArguments(a) !== isArguments(b)) { return false; }\\n\\n var aIsArray = isArray(a);\\n var bIsArray = isArray(b);\\n if (aIsArray !== bIsArray) { return false; }\\n\\n // TODO: replace when a cross-realm brand check is available\\n var aIsError = a instanceof Error;\\n var bIsError = b instanceof Error;\\n if (aIsError !== bIsError) { return false; }\\n if (aIsError || bIsError) {\\n if (a.name !== b.name || a.message !== b.message) { return false; }\\n }\\n\\n var aIsRegex = isRegex(a);\\n var bIsRegex = isRegex(b);\\n if (aIsRegex !== bIsRegex) { return false; }\\n if ((aIsRegex || bIsRegex) && (a.source !== b.source || flags(a) !== flags(b))) {\\n return false;\\n }\\n\\n var aIsDate = isDate(a);\\n var bIsDate = isDate(b);\\n if (aIsDate !== bIsDate) { return false; }\\n if (aIsDate || bIsDate) { // && would work too, because both are true or both false here\\n if ($getTime(a) !== $getTime(b)) { return false; }\\n }\\n if (opts.strict && gPO && gPO(a) !== gPO(b)) { return false; }\\n\\n if (whichTypedArray(a) !== whichTypedArray(b)) {\\n return false;\\n }\\n\\n var aIsBuffer = isBuffer(a);\\n var bIsBuffer = isBuffer(b);\\n if (aIsBuffer !== bIsBuffer) { return false; }\\n if (aIsBuffer || bIsBuffer) { // && would work too, because both are true or both false here\\n if (a.length !== b.length) { return false; }\\n for (i = 0; i < a.length; i++) {\\n if (a[i] !== b[i]) { return false; }\\n }\\n return true;\\n }\\n\\n if (typeof a !== typeof b) { return false; }\\n\\n var ka = objectKeys(a);\\n var kb = objectKeys(b);\\n // having the same number of owned properties (keys incorporates hasOwnProperty)\\n if (ka.length !== kb.length) { return false; }\\n\\n // the same set of keys (although not necessarily the same order),\\n ka.sort();\\n kb.sort();\\n // ~~~cheap key test\\n for (i = ka.length - 1; i >= 0; i--) {\\n if (ka[i] != kb[i]) { return false; } // eslint-disable-line eqeqeq\\n }\\n\\n // equivalent values for every corresponding key, and ~~~possibly expensive deep test\\n for (i = ka.length - 1; i >= 0; i--) {\\n key = ka[i];\\n if (!internalDeepEqual(a[key], b[key], opts, channel)) { return false; }\\n }\\n\\n var aCollection = whichCollection(a);\\n var bCollection = whichCollection(b);\\n if (aCollection !== bCollection) {\\n return false;\\n }\\n if (aCollection === 'Set' || bCollection === 'Set') { // aCollection === bCollection\\n return setEquiv(a, b, opts, channel);\\n }\\n if (aCollection === 'Map') { // aCollection === bCollection\\n return mapEquiv(a, b, opts, channel);\\n }\\n\\n return true;\\n}\\n\\nmodule.exports = function deepEqual(a, b, opts) {\\n return internalDeepEqual(a, b, opts, getSideChannel());\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/es-abstract/GetIntrinsic.js\":\n/*!**************************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/es-abstract/GetIntrinsic.js ***!\n \\**************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* globals\\n\\tAtomics,\\n\\tSharedArrayBuffer,\\n*/\\n\\nvar undefined;\\n\\nvar $TypeError = TypeError;\\n\\nvar $gOPD = Object.getOwnPropertyDescriptor;\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD({}, '');\\n\\t} catch (e) {\\n\\t\\t$gOPD = null; // this is IE 8, which has a broken gOPD\\n\\t}\\n}\\n\\nvar throwTypeError = function () { throw new $TypeError(); };\\nvar ThrowTypeError = $gOPD\\n\\t? (function () {\\n\\t\\ttry {\\n\\t\\t\\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\\n\\t\\t\\targuments.callee; // IE 8 does not throw here\\n\\t\\t\\treturn throwTypeError;\\n\\t\\t} catch (calleeThrows) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\\n\\t\\t\\t\\treturn $gOPD(arguments, 'callee').get;\\n\\t\\t\\t} catch (gOPDthrows) {\\n\\t\\t\\t\\treturn throwTypeError;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}())\\n\\t: throwTypeError;\\n\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\n\\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\\n\\nvar generator; // = function * () {};\\nvar generatorFunction = generator ? getProto(generator) : undefined;\\nvar asyncFn; // async function() {};\\nvar asyncFunction = asyncFn ? asyncFn.constructor : undefined;\\nvar asyncGen; // async function * () {};\\nvar asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;\\nvar asyncGenIterator = asyncGen ? asyncGen() : undefined;\\n\\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\\n\\nvar INTRINSICS = {\\n\\t'%Array%': Array,\\n\\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\\n\\t'%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,\\n\\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\\n\\t'%ArrayPrototype%': Array.prototype,\\n\\t'%ArrayProto_entries%': Array.prototype.entries,\\n\\t'%ArrayProto_forEach%': Array.prototype.forEach,\\n\\t'%ArrayProto_keys%': Array.prototype.keys,\\n\\t'%ArrayProto_values%': Array.prototype.values,\\n\\t'%AsyncFromSyncIteratorPrototype%': undefined,\\n\\t'%AsyncFunction%': asyncFunction,\\n\\t'%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,\\n\\t'%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,\\n\\t'%AsyncGeneratorFunction%': asyncGenFunction,\\n\\t'%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,\\n\\t'%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,\\n\\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\\n\\t'%Boolean%': Boolean,\\n\\t'%BooleanPrototype%': Boolean.prototype,\\n\\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\\n\\t'%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,\\n\\t'%Date%': Date,\\n\\t'%DatePrototype%': Date.prototype,\\n\\t'%decodeURI%': decodeURI,\\n\\t'%decodeURIComponent%': decodeURIComponent,\\n\\t'%encodeURI%': encodeURI,\\n\\t'%encodeURIComponent%': encodeURIComponent,\\n\\t'%Error%': Error,\\n\\t'%ErrorPrototype%': Error.prototype,\\n\\t'%eval%': eval, // eslint-disable-line no-eval\\n\\t'%EvalError%': EvalError,\\n\\t'%EvalErrorPrototype%': EvalError.prototype,\\n\\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\\n\\t'%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,\\n\\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\\n\\t'%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,\\n\\t'%Function%': Function,\\n\\t'%FunctionPrototype%': Function.prototype,\\n\\t'%Generator%': generator ? getProto(generator()) : undefined,\\n\\t'%GeneratorFunction%': generatorFunction,\\n\\t'%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,\\n\\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\\n\\t'%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\\n\\t'%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\\n\\t'%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,\\n\\t'%isFinite%': isFinite,\\n\\t'%isNaN%': isNaN,\\n\\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\\n\\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\\n\\t'%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,\\n\\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\\n\\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\\n\\t'%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,\\n\\t'%Math%': Math,\\n\\t'%Number%': Number,\\n\\t'%NumberPrototype%': Number.prototype,\\n\\t'%Object%': Object,\\n\\t'%ObjectPrototype%': Object.prototype,\\n\\t'%ObjProto_toString%': Object.prototype.toString,\\n\\t'%ObjProto_valueOf%': Object.prototype.valueOf,\\n\\t'%parseFloat%': parseFloat,\\n\\t'%parseInt%': parseInt,\\n\\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\\n\\t'%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,\\n\\t'%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,\\n\\t'%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,\\n\\t'%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,\\n\\t'%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,\\n\\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\\n\\t'%RangeError%': RangeError,\\n\\t'%RangeErrorPrototype%': RangeError.prototype,\\n\\t'%ReferenceError%': ReferenceError,\\n\\t'%ReferenceErrorPrototype%': ReferenceError.prototype,\\n\\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\\n\\t'%RegExp%': RegExp,\\n\\t'%RegExpPrototype%': RegExp.prototype,\\n\\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\\n\\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\\n\\t'%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,\\n\\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\\n\\t'%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,\\n\\t'%String%': String,\\n\\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\\n\\t'%StringPrototype%': String.prototype,\\n\\t'%Symbol%': hasSymbols ? Symbol : undefined,\\n\\t'%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,\\n\\t'%SyntaxError%': SyntaxError,\\n\\t'%SyntaxErrorPrototype%': SyntaxError.prototype,\\n\\t'%ThrowTypeError%': ThrowTypeError,\\n\\t'%TypedArray%': TypedArray,\\n\\t'%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,\\n\\t'%TypeError%': $TypeError,\\n\\t'%TypeErrorPrototype%': $TypeError.prototype,\\n\\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\\n\\t'%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,\\n\\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\\n\\t'%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,\\n\\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\\n\\t'%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,\\n\\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\\n\\t'%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,\\n\\t'%URIError%': URIError,\\n\\t'%URIErrorPrototype%': URIError.prototype,\\n\\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\\n\\t'%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,\\n\\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,\\n\\t'%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype\\n};\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\nvar $replace = bind.call(Function.call, String.prototype.replace);\\n\\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\\nvar rePropName = /[^%.[\\\\]]+|\\\\[(?:(-?\\\\d+(?:\\\\.\\\\d+)?)|([\\\"'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2)\\\\]|(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|%$))/g;\\nvar reEscapeChar = /\\\\\\\\(\\\\\\\\)?/g; /** Used to match backslashes in property paths. */\\nvar stringToPath = function stringToPath(string) {\\n\\tvar result = [];\\n\\t$replace(string, rePropName, function (match, number, quote, subString) {\\n\\t\\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);\\n\\t});\\n\\treturn result;\\n};\\n/* end adaptation */\\n\\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\\n\\tif (!(name in INTRINSICS)) {\\n\\t\\tthrow new SyntaxError('intrinsic ' + name + ' does not exist!');\\n\\t}\\n\\n\\t// istanbul ignore if // hopefully this is impossible to test :-)\\n\\tif (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {\\n\\t\\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\\n\\t}\\n\\n\\treturn INTRINSICS[name];\\n};\\n\\nmodule.exports = function GetIntrinsic(name, allowMissing) {\\n\\tif (typeof name !== 'string' || name.length === 0) {\\n\\t\\tthrow new TypeError('intrinsic name must be a non-empty string');\\n\\t}\\n\\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\\n\\t\\tthrow new TypeError('\\\"allowMissing\\\" argument must be a boolean');\\n\\t}\\n\\n\\tvar parts = stringToPath(name);\\n\\n\\tvar value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);\\n\\tfor (var i = 1; i < parts.length; i += 1) {\\n\\t\\tif (value != null) {\\n\\t\\t\\tif ($gOPD && (i + 1) >= parts.length) {\\n\\t\\t\\t\\tvar desc = $gOPD(value, parts[i]);\\n\\t\\t\\t\\tif (!allowMissing && !(parts[i] in value)) {\\n\\t\\t\\t\\t\\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tvalue = desc ? (desc.get || desc.value) : value[parts[i]];\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tvalue = value[parts[i]];\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn value;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/es-abstract/GetIntrinsic.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/es-abstract/helpers/callBind.js\":\n/*!******************************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/es-abstract/helpers/callBind.js ***!\n \\******************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/deep-equal/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $Function = GetIntrinsic('%Function%');\\nvar $apply = $Function.apply;\\nvar $call = $Function.call;\\n\\nmodule.exports = function callBind() {\\n\\treturn bind.apply($call, arguments);\\n};\\n\\nmodule.exports.apply = function applyBind() {\\n\\treturn bind.apply($apply, arguments);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/es-abstract/helpers/callBind.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/es-abstract/helpers/callBound.js\":\n/*!*******************************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/es-abstract/helpers/callBound.js ***!\n \\*******************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/deep-equal/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar callBind = __webpack_require__(/*! ./callBind */ \\\"./node_modules/deep-equal/node_modules/es-abstract/helpers/callBind.js\\\");\\n\\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\\n\\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\\n\\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\\n\\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.')) {\\n\\t\\treturn callBind(intrinsic);\\n\\t}\\n\\treturn intrinsic;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/es-abstract/helpers/callBound.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/is-date-object/index.js\":\n/*!**********************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/is-date-object/index.js ***!\n \\**********************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar getDay = Date.prototype.getDay;\\nvar tryDateObject = function tryDateGetDayCall(value) {\\n\\ttry {\\n\\t\\tgetDay.call(value);\\n\\t\\treturn true;\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t}\\n};\\n\\nvar toStr = Object.prototype.toString;\\nvar dateClass = '[object Date]';\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\n\\nmodule.exports = function isDateObject(value) {\\n\\tif (typeof value !== 'object' || value === null) {\\n\\t\\treturn false;\\n\\t}\\n\\treturn hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/is-date-object/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/is-regex/index.js\":\n/*!****************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/is-regex/index.js ***!\n \\****************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar has = __webpack_require__(/*! has */ \\\"./node_modules/has/src/index.js\\\");\\nvar regexExec = RegExp.prototype.exec;\\nvar gOPD = Object.getOwnPropertyDescriptor;\\n\\nvar tryRegexExecCall = function tryRegexExec(value) {\\n\\ttry {\\n\\t\\tvar lastIndex = value.lastIndex;\\n\\t\\tvalue.lastIndex = 0; // eslint-disable-line no-param-reassign\\n\\n\\t\\tregexExec.call(value);\\n\\t\\treturn true;\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t} finally {\\n\\t\\tvalue.lastIndex = lastIndex; // eslint-disable-line no-param-reassign\\n\\t}\\n};\\nvar toStr = Object.prototype.toString;\\nvar regexClass = '[object RegExp]';\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\n\\nmodule.exports = function isRegex(value) {\\n\\tif (!value || typeof value !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\tif (!hasToStringTag) {\\n\\t\\treturn toStr.call(value) === regexClass;\\n\\t}\\n\\n\\tvar descriptor = gOPD(value, 'lastIndex');\\n\\tvar hasLastIndexDataProperty = descriptor && has(descriptor, 'value');\\n\\tif (!hasLastIndexDataProperty) {\\n\\t\\treturn false;\\n\\t}\\n\\n\\treturn tryRegexExecCall(value);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/is-regex/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/isarray/index.js\":\n/*!***************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/isarray/index.js ***!\n \\***************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"var toString = {}.toString;\\n\\nmodule.exports = Array.isArray || function (arr) {\\n return toString.call(arr) == '[object Array]';\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/isarray/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/object-keys/implementation.js\":\n/*!****************************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/object-keys/implementation.js ***!\n \\****************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar keysShim;\\nif (!Object.keys) {\\n\\t// modified from https://github.com/es-shims/es5-shim\\n\\tvar has = Object.prototype.hasOwnProperty;\\n\\tvar toStr = Object.prototype.toString;\\n\\tvar isArgs = __webpack_require__(/*! ./isArguments */ \\\"./node_modules/deep-equal/node_modules/object-keys/isArguments.js\\\"); // eslint-disable-line global-require\\n\\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\\n\\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\\n\\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\\n\\tvar dontEnums = [\\n\\t\\t'toString',\\n\\t\\t'toLocaleString',\\n\\t\\t'valueOf',\\n\\t\\t'hasOwnProperty',\\n\\t\\t'isPrototypeOf',\\n\\t\\t'propertyIsEnumerable',\\n\\t\\t'constructor'\\n\\t];\\n\\tvar equalsConstructorPrototype = function (o) {\\n\\t\\tvar ctor = o.constructor;\\n\\t\\treturn ctor && ctor.prototype === o;\\n\\t};\\n\\tvar excludedKeys = {\\n\\t\\t$applicationCache: true,\\n\\t\\t$console: true,\\n\\t\\t$external: true,\\n\\t\\t$frame: true,\\n\\t\\t$frameElement: true,\\n\\t\\t$frames: true,\\n\\t\\t$innerHeight: true,\\n\\t\\t$innerWidth: true,\\n\\t\\t$onmozfullscreenchange: true,\\n\\t\\t$onmozfullscreenerror: true,\\n\\t\\t$outerHeight: true,\\n\\t\\t$outerWidth: true,\\n\\t\\t$pageXOffset: true,\\n\\t\\t$pageYOffset: true,\\n\\t\\t$parent: true,\\n\\t\\t$scrollLeft: true,\\n\\t\\t$scrollTop: true,\\n\\t\\t$scrollX: true,\\n\\t\\t$scrollY: true,\\n\\t\\t$self: true,\\n\\t\\t$webkitIndexedDB: true,\\n\\t\\t$webkitStorageInfo: true,\\n\\t\\t$window: true\\n\\t};\\n\\tvar hasAutomationEqualityBug = (function () {\\n\\t\\t/* global window */\\n\\t\\tif (typeof window === 'undefined') { return false; }\\n\\t\\tfor (var k in window) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\\n\\t\\t\\t\\t\\ttry {\\n\\t\\t\\t\\t\\t\\tequalsConstructorPrototype(window[k]);\\n\\t\\t\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\t\\t\\treturn true;\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\treturn true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn false;\\n\\t}());\\n\\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\\n\\t\\t/* global window */\\n\\t\\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\\n\\t\\t\\treturn equalsConstructorPrototype(o);\\n\\t\\t}\\n\\t\\ttry {\\n\\t\\t\\treturn equalsConstructorPrototype(o);\\n\\t\\t} catch (e) {\\n\\t\\t\\treturn false;\\n\\t\\t}\\n\\t};\\n\\n\\tkeysShim = function keys(object) {\\n\\t\\tvar isObject = object !== null && typeof object === 'object';\\n\\t\\tvar isFunction = toStr.call(object) === '[object Function]';\\n\\t\\tvar isArguments = isArgs(object);\\n\\t\\tvar isString = isObject && toStr.call(object) === '[object String]';\\n\\t\\tvar theKeys = [];\\n\\n\\t\\tif (!isObject && !isFunction && !isArguments) {\\n\\t\\t\\tthrow new TypeError('Object.keys called on a non-object');\\n\\t\\t}\\n\\n\\t\\tvar skipProto = hasProtoEnumBug && isFunction;\\n\\t\\tif (isString && object.length > 0 && !has.call(object, 0)) {\\n\\t\\t\\tfor (var i = 0; i < object.length; ++i) {\\n\\t\\t\\t\\ttheKeys.push(String(i));\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\tif (isArguments && object.length > 0) {\\n\\t\\t\\tfor (var j = 0; j < object.length; ++j) {\\n\\t\\t\\t\\ttheKeys.push(String(j));\\n\\t\\t\\t}\\n\\t\\t} else {\\n\\t\\t\\tfor (var name in object) {\\n\\t\\t\\t\\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\\n\\t\\t\\t\\t\\ttheKeys.push(String(name));\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\tif (hasDontEnumBug) {\\n\\t\\t\\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\\n\\n\\t\\t\\tfor (var k = 0; k < dontEnums.length; ++k) {\\n\\t\\t\\t\\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\\n\\t\\t\\t\\t\\ttheKeys.push(dontEnums[k]);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn theKeys;\\n\\t};\\n}\\nmodule.exports = keysShim;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/object-keys/implementation.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/object-keys/index.js\":\n/*!*******************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/object-keys/index.js ***!\n \\*******************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar slice = Array.prototype.slice;\\nvar isArgs = __webpack_require__(/*! ./isArguments */ \\\"./node_modules/deep-equal/node_modules/object-keys/isArguments.js\\\");\\n\\nvar origKeys = Object.keys;\\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(/*! ./implementation */ \\\"./node_modules/deep-equal/node_modules/object-keys/implementation.js\\\");\\n\\nvar originalKeys = Object.keys;\\n\\nkeysShim.shim = function shimObjectKeys() {\\n\\tif (Object.keys) {\\n\\t\\tvar keysWorksWithArguments = (function () {\\n\\t\\t\\t// Safari 5.0 bug\\n\\t\\t\\tvar args = Object.keys(arguments);\\n\\t\\t\\treturn args && args.length === arguments.length;\\n\\t\\t}(1, 2));\\n\\t\\tif (!keysWorksWithArguments) {\\n\\t\\t\\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\\n\\t\\t\\t\\tif (isArgs(object)) {\\n\\t\\t\\t\\t\\treturn originalKeys(slice.call(object));\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\treturn originalKeys(object);\\n\\t\\t\\t};\\n\\t\\t}\\n\\t} else {\\n\\t\\tObject.keys = keysShim;\\n\\t}\\n\\treturn Object.keys || keysShim;\\n};\\n\\nmodule.exports = keysShim;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/object-keys/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/deep-equal/node_modules/object-keys/isArguments.js\":\n/*!*************************************************************************!*\\\n !*** ./node_modules/deep-equal/node_modules/object-keys/isArguments.js ***!\n \\*************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar toStr = Object.prototype.toString;\\n\\nmodule.exports = function isArguments(value) {\\n\\tvar str = toStr.call(value);\\n\\tvar isArgs = str === '[object Arguments]';\\n\\tif (!isArgs) {\\n\\t\\tisArgs = str !== '[object Array]' &&\\n\\t\\t\\tvalue !== null &&\\n\\t\\t\\ttypeof value === 'object' &&\\n\\t\\t\\ttypeof value.length === 'number' &&\\n\\t\\t\\tvalue.length >= 0 &&\\n\\t\\t\\ttoStr.call(value.callee) === '[object Function]';\\n\\t}\\n\\treturn isArgs;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/deep-equal/node_modules/object-keys/isArguments.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/define-properties/index.js\":\n/*!*************************************************!*\\\n !*** ./node_modules/define-properties/index.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar keys = __webpack_require__(/*! object-keys */ \\\"./node_modules/object-keys/index.js\\\");\\nvar hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';\\n\\nvar toStr = Object.prototype.toString;\\nvar concat = Array.prototype.concat;\\nvar origDefineProperty = Object.defineProperty;\\n\\nvar isFunction = function (fn) {\\n\\treturn typeof fn === 'function' && toStr.call(fn) === '[object Function]';\\n};\\n\\nvar arePropertyDescriptorsSupported = function () {\\n\\tvar obj = {};\\n\\ttry {\\n\\t\\torigDefineProperty(obj, 'x', { enumerable: false, value: obj });\\n\\t\\t// eslint-disable-next-line no-unused-vars, no-restricted-syntax\\n\\t\\tfor (var _ in obj) { // jscs:ignore disallowUnusedVariables\\n\\t\\t\\treturn false;\\n\\t\\t}\\n\\t\\treturn obj.x === obj;\\n\\t} catch (e) { /* this is IE 8. */\\n\\t\\treturn false;\\n\\t}\\n};\\nvar supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();\\n\\nvar defineProperty = function (object, name, value, predicate) {\\n\\tif (name in object && (!isFunction(predicate) || !predicate())) {\\n\\t\\treturn;\\n\\t}\\n\\tif (supportsDescriptors) {\\n\\t\\torigDefineProperty(object, name, {\\n\\t\\t\\tconfigurable: true,\\n\\t\\t\\tenumerable: false,\\n\\t\\t\\tvalue: value,\\n\\t\\t\\twritable: true\\n\\t\\t});\\n\\t} else {\\n\\t\\tobject[name] = value;\\n\\t}\\n};\\n\\nvar defineProperties = function (object, map) {\\n\\tvar predicates = arguments.length > 2 ? arguments[2] : {};\\n\\tvar props = keys(map);\\n\\tif (hasSymbols) {\\n\\t\\tprops = concat.call(props, Object.getOwnPropertySymbols(map));\\n\\t}\\n\\tfor (var i = 0; i < props.length; i += 1) {\\n\\t\\tdefineProperty(object, props[i], map[props[i]], predicates[props[i]]);\\n\\t}\\n};\\n\\ndefineProperties.supportsDescriptors = !!supportsDescriptors;\\n\\nmodule.exports = defineProperties;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/define-properties/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/es-get-iterator/index.js\":\n/*!***********************************************!*\\\n !*** ./node_modules/es-get-iterator/index.js ***!\n \\***********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"/* WEBPACK VAR INJECTION */(function(process) {\\n\\n/* eslint global-require: 0 */\\n// the code is structured this way so that bundlers can\\n// alias out `has-symbols` to `() => true` or `() => false` if your target\\n// environments' Symbol capabilities are known, and then use\\n// dead code elimination on the rest of this module.\\n//\\n// Similarly, `isarray` can be aliased to `Array.isArray` if\\n// available in all target environments.\\n\\nvar isArguments = __webpack_require__(/*! is-arguments */ \\\"./node_modules/is-arguments/index.js\\\");\\n\\nif (__webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")() || __webpack_require__(/*! has-symbols/shams */ \\\"./node_modules/has-symbols/shams.js\\\")()) {\\n\\tvar $iterator = Symbol.iterator;\\n\\t// Symbol is available natively or shammed\\n\\t// natively:\\n\\t// - Chrome >= 38\\n\\t// - Edge 12-14?, Edge >= 15 for sure\\n\\t// - FF >= 36\\n\\t// - Safari >= 9\\n\\t// - node >= 0.12\\n\\tmodule.exports = function getIterator(iterable) {\\n\\t\\t// alternatively, `iterable[$iterator]?.()`\\n\\t\\tif (iterable != null && typeof iterable[$iterator] !== 'undefined') {\\n\\t\\t\\treturn iterable[$iterator]();\\n\\t\\t}\\n\\t\\tif (isArguments(iterable)) {\\n\\t\\t\\t// arguments objects lack Symbol.iterator\\n\\t\\t\\t// - node 0.12\\n\\t\\t\\treturn Array.prototype[$iterator].call(iterable);\\n\\t\\t}\\n\\t};\\n} else {\\n\\t// Symbol is not available, native or shammed\\n\\tvar isArray = __webpack_require__(/*! isarray */ \\\"./node_modules/es-get-iterator/node_modules/isarray/index.js\\\");\\n\\tvar isString = __webpack_require__(/*! is-string */ \\\"./node_modules/is-string/index.js\\\");\\n\\tvar GetIntrinsic = __webpack_require__(/*! es-abstract/GetIntrinsic */ \\\"./node_modules/es-get-iterator/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\tvar $Map = GetIntrinsic('%Map%', true);\\n\\tvar $Set = GetIntrinsic('%Set%', true);\\n\\tvar callBound = __webpack_require__(/*! es-abstract/helpers/callBound */ \\\"./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBound.js\\\");\\n\\tvar $arrayPush = callBound('Array.prototype.push');\\n\\tvar $charCodeAt = callBound('String.prototype.charCodeAt');\\n\\tvar $stringSlice = callBound('String.prototype.slice');\\n\\n\\tvar advanceStringIndex = function advanceStringIndex(S, index) {\\n\\t\\tvar length = S.length;\\n\\t\\tif ((index + 1) >= length) {\\n\\t\\t\\treturn index + 1;\\n\\t\\t}\\n\\n\\t\\tvar first = $charCodeAt(S, index);\\n\\t\\tif (first < 0xD800 || first > 0xDBFF) {\\n\\t\\t\\treturn index + 1;\\n\\t\\t}\\n\\n\\t\\tvar second = $charCodeAt(S, index + 1);\\n\\t\\tif (second < 0xDC00 || second > 0xDFFF) {\\n\\t\\t\\treturn index + 1;\\n\\t\\t}\\n\\n\\t\\treturn index + 2;\\n\\t};\\n\\n\\tvar getArrayIterator = function getArrayIterator(arraylike) {\\n\\t\\tvar i = 0;\\n\\t\\treturn {\\n\\t\\t\\tnext: function next() {\\n\\t\\t\\t\\tvar done = i >= arraylike.length;\\n\\t\\t\\t\\tvar value;\\n\\t\\t\\t\\tif (!done) {\\n\\t\\t\\t\\t\\tvalue = arraylike[i];\\n\\t\\t\\t\\t\\ti += 1;\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\treturn {\\n\\t\\t\\t\\t\\tdone: done,\\n\\t\\t\\t\\t\\tvalue: value\\n\\t\\t\\t\\t};\\n\\t\\t\\t}\\n\\t\\t};\\n\\t};\\n\\n\\tvar getNonCollectionIterator = function getNonCollectionIterator(iterable) {\\n\\t\\tif (isArray(iterable) || isArguments(iterable)) {\\n\\t\\t\\treturn getArrayIterator(iterable);\\n\\t\\t}\\n\\t\\tif (isString(iterable)) {\\n\\t\\t\\tvar i = 0;\\n\\t\\t\\treturn {\\n\\t\\t\\t\\tnext: function next() {\\n\\t\\t\\t\\t\\tvar nextIndex = advanceStringIndex(iterable, i);\\n\\t\\t\\t\\t\\tvar value = $stringSlice(iterable, i, nextIndex);\\n\\t\\t\\t\\t\\ti = nextIndex;\\n\\t\\t\\t\\t\\treturn {\\n\\t\\t\\t\\t\\t\\tdone: nextIndex > iterable.length,\\n\\t\\t\\t\\t\\t\\tvalue: value\\n\\t\\t\\t\\t\\t};\\n\\t\\t\\t\\t}\\n\\t\\t\\t};\\n\\t\\t}\\n\\t};\\n\\n\\tif (!$Map && !$Set) {\\n\\t\\t// the only language iterables are Array, String, arguments\\n\\t\\t// - Safari <= 6.0\\n\\t\\t// - Chrome < 38\\n\\t\\t// - node < 0.12\\n\\t\\t// - FF < 13\\n\\t\\t// - IE < 11\\n\\t\\t// - Edge < 11\\n\\n\\t\\tmodule.exports = getNonCollectionIterator;\\n\\t} else {\\n\\t\\t// either Map or Set are available, but Symbol is not\\n\\t\\t// - es6-shim on an ES5 browser\\n\\t\\t// - Safari 6.2 (maybe 6.1?)\\n\\t\\t// - FF v[13, 36)\\n\\t\\t// - IE 11\\n\\t\\t// - Edge 11\\n\\t\\t// - Safari v[6, 9)\\n\\n\\t\\tvar isMap = __webpack_require__(/*! is-map */ \\\"./node_modules/is-map/index.js\\\");\\n\\t\\tvar isSet = __webpack_require__(/*! is-set */ \\\"./node_modules/is-set/index.js\\\");\\n\\n\\t\\t// Firefox >= 27, IE 11, Safari 6.2 - 9, Edge 11, es6-shim in older envs, all have forEach\\n\\t\\tvar $mapForEach = callBound('Map.prototype.forEach', true);\\n\\t\\tvar $setForEach = callBound('Set.prototype.forEach', true);\\n\\t\\tif (typeof process === 'undefined' || !process.versions || !process.versions.node) { // \\\"if is not node\\\"\\n\\n\\t\\t\\t// Firefox 17 - 26 has `.iterator()`, whose iterator `.next()` either\\n\\t\\t\\t// returns a value, or throws a StopIteration object. These browsers\\n\\t\\t\\t// do not have any other mechanism for iteration.\\n\\t\\t\\tvar $mapIterator = callBound('Map.prototype.iterator', true);\\n\\t\\t\\tvar $setIterator = callBound('Set.prototype.iterator', true);\\n\\t\\t\\tvar getStopIterationIterator = function (iterator) {\\n\\t\\t\\t\\tvar done = false;\\n\\t\\t\\t\\treturn {\\n\\t\\t\\t\\t\\tnext: function next() {\\n\\t\\t\\t\\t\\t\\ttry {\\n\\t\\t\\t\\t\\t\\t\\treturn {\\n\\t\\t\\t\\t\\t\\t\\t\\tdone: done,\\n\\t\\t\\t\\t\\t\\t\\t\\tvalue: done ? undefined : iterator.next()\\n\\t\\t\\t\\t\\t\\t\\t};\\n\\t\\t\\t\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\t\\t\\t\\tdone = true;\\n\\t\\t\\t\\t\\t\\t\\treturn {\\n\\t\\t\\t\\t\\t\\t\\t\\tdone: true,\\n\\t\\t\\t\\t\\t\\t\\t\\tvalue: undefined\\n\\t\\t\\t\\t\\t\\t\\t};\\n\\t\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t};\\n\\t\\t\\t};\\n\\t\\t}\\n\\t\\t// Firefox 27-35, and some older es6-shim versions, use a string \\\"@@iterator\\\" property\\n\\t\\t// this returns a proper iterator object, so we should use it instead of forEach.\\n\\t\\t// newer es6-shim versions use a string \\\"_es6-shim iterator_\\\" property.\\n\\t\\tvar $mapAtAtIterator = callBound('Map.prototype.@@iterator', true) || callBound('Map.prototype._es6-shim iterator_', true);\\n\\t\\tvar $setAtAtIterator = callBound('Set.prototype.@@iterator', true) || callBound('Set.prototype._es6-shim iterator_', true);\\n\\n\\t\\tvar getCollectionIterator = function getCollectionIterator(iterable) {\\n\\t\\t\\tif (isMap(iterable)) {\\n\\t\\t\\t\\tif ($mapIterator) {\\n\\t\\t\\t\\t\\treturn getStopIterationIterator($mapIterator(iterable));\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tif ($mapAtAtIterator) {\\n\\t\\t\\t\\t\\treturn $mapAtAtIterator(iterable);\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tif ($mapForEach) {\\n\\t\\t\\t\\t\\tvar entries = [];\\n\\t\\t\\t\\t\\t$mapForEach(iterable, function (v, k) {\\n\\t\\t\\t\\t\\t\\t$arrayPush(entries, [k, v]);\\n\\t\\t\\t\\t\\t});\\n\\t\\t\\t\\t\\treturn getArrayIterator(entries);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\tif (isSet(iterable)) {\\n\\t\\t\\t\\tif ($setIterator) {\\n\\t\\t\\t\\t\\treturn getStopIterationIterator($setIterator(iterable));\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tif ($setAtAtIterator) {\\n\\t\\t\\t\\t\\treturn $setAtAtIterator(iterable);\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tif ($setForEach) {\\n\\t\\t\\t\\t\\tvar values = [];\\n\\t\\t\\t\\t\\t$setForEach(iterable, function (v) {\\n\\t\\t\\t\\t\\t\\t$arrayPush(values, v);\\n\\t\\t\\t\\t\\t});\\n\\t\\t\\t\\t\\treturn getArrayIterator(values);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t};\\n\\n\\t\\tmodule.exports = function getIterator(iterable) {\\n\\t\\t\\treturn getCollectionIterator(iterable) || getNonCollectionIterator(iterable);\\n\\t\\t};\\n\\t}\\n}\\n\\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../process/browser.js */ \\\"./node_modules/process/browser.js\\\")))\\n\\n//# sourceURL=webpack://Quill/./node_modules/es-get-iterator/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/es-get-iterator/node_modules/es-abstract/GetIntrinsic.js\":\n/*!*******************************************************************************!*\\\n !*** ./node_modules/es-get-iterator/node_modules/es-abstract/GetIntrinsic.js ***!\n \\*******************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* globals\\n\\tAtomics,\\n\\tSharedArrayBuffer,\\n*/\\n\\nvar undefined;\\n\\nvar $TypeError = TypeError;\\n\\nvar $gOPD = Object.getOwnPropertyDescriptor;\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD({}, '');\\n\\t} catch (e) {\\n\\t\\t$gOPD = null; // this is IE 8, which has a broken gOPD\\n\\t}\\n}\\n\\nvar throwTypeError = function () { throw new $TypeError(); };\\nvar ThrowTypeError = $gOPD\\n\\t? (function () {\\n\\t\\ttry {\\n\\t\\t\\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\\n\\t\\t\\targuments.callee; // IE 8 does not throw here\\n\\t\\t\\treturn throwTypeError;\\n\\t\\t} catch (calleeThrows) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\\n\\t\\t\\t\\treturn $gOPD(arguments, 'callee').get;\\n\\t\\t\\t} catch (gOPDthrows) {\\n\\t\\t\\t\\treturn throwTypeError;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}())\\n\\t: throwTypeError;\\n\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\n\\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\\n\\nvar generator; // = function * () {};\\nvar generatorFunction = generator ? getProto(generator) : undefined;\\nvar asyncFn; // async function() {};\\nvar asyncFunction = asyncFn ? asyncFn.constructor : undefined;\\nvar asyncGen; // async function * () {};\\nvar asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;\\nvar asyncGenIterator = asyncGen ? asyncGen() : undefined;\\n\\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\\n\\nvar INTRINSICS = {\\n\\t'%Array%': Array,\\n\\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\\n\\t'%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,\\n\\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\\n\\t'%ArrayPrototype%': Array.prototype,\\n\\t'%ArrayProto_entries%': Array.prototype.entries,\\n\\t'%ArrayProto_forEach%': Array.prototype.forEach,\\n\\t'%ArrayProto_keys%': Array.prototype.keys,\\n\\t'%ArrayProto_values%': Array.prototype.values,\\n\\t'%AsyncFromSyncIteratorPrototype%': undefined,\\n\\t'%AsyncFunction%': asyncFunction,\\n\\t'%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,\\n\\t'%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,\\n\\t'%AsyncGeneratorFunction%': asyncGenFunction,\\n\\t'%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,\\n\\t'%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,\\n\\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\\n\\t'%Boolean%': Boolean,\\n\\t'%BooleanPrototype%': Boolean.prototype,\\n\\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\\n\\t'%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,\\n\\t'%Date%': Date,\\n\\t'%DatePrototype%': Date.prototype,\\n\\t'%decodeURI%': decodeURI,\\n\\t'%decodeURIComponent%': decodeURIComponent,\\n\\t'%encodeURI%': encodeURI,\\n\\t'%encodeURIComponent%': encodeURIComponent,\\n\\t'%Error%': Error,\\n\\t'%ErrorPrototype%': Error.prototype,\\n\\t'%eval%': eval, // eslint-disable-line no-eval\\n\\t'%EvalError%': EvalError,\\n\\t'%EvalErrorPrototype%': EvalError.prototype,\\n\\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\\n\\t'%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,\\n\\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\\n\\t'%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,\\n\\t'%Function%': Function,\\n\\t'%FunctionPrototype%': Function.prototype,\\n\\t'%Generator%': generator ? getProto(generator()) : undefined,\\n\\t'%GeneratorFunction%': generatorFunction,\\n\\t'%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,\\n\\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\\n\\t'%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\\n\\t'%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\\n\\t'%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,\\n\\t'%isFinite%': isFinite,\\n\\t'%isNaN%': isNaN,\\n\\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\\n\\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\\n\\t'%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,\\n\\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\\n\\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\\n\\t'%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,\\n\\t'%Math%': Math,\\n\\t'%Number%': Number,\\n\\t'%NumberPrototype%': Number.prototype,\\n\\t'%Object%': Object,\\n\\t'%ObjectPrototype%': Object.prototype,\\n\\t'%ObjProto_toString%': Object.prototype.toString,\\n\\t'%ObjProto_valueOf%': Object.prototype.valueOf,\\n\\t'%parseFloat%': parseFloat,\\n\\t'%parseInt%': parseInt,\\n\\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\\n\\t'%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,\\n\\t'%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,\\n\\t'%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,\\n\\t'%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,\\n\\t'%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,\\n\\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\\n\\t'%RangeError%': RangeError,\\n\\t'%RangeErrorPrototype%': RangeError.prototype,\\n\\t'%ReferenceError%': ReferenceError,\\n\\t'%ReferenceErrorPrototype%': ReferenceError.prototype,\\n\\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\\n\\t'%RegExp%': RegExp,\\n\\t'%RegExpPrototype%': RegExp.prototype,\\n\\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\\n\\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\\n\\t'%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,\\n\\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\\n\\t'%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,\\n\\t'%String%': String,\\n\\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\\n\\t'%StringPrototype%': String.prototype,\\n\\t'%Symbol%': hasSymbols ? Symbol : undefined,\\n\\t'%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,\\n\\t'%SyntaxError%': SyntaxError,\\n\\t'%SyntaxErrorPrototype%': SyntaxError.prototype,\\n\\t'%ThrowTypeError%': ThrowTypeError,\\n\\t'%TypedArray%': TypedArray,\\n\\t'%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,\\n\\t'%TypeError%': $TypeError,\\n\\t'%TypeErrorPrototype%': $TypeError.prototype,\\n\\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\\n\\t'%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,\\n\\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\\n\\t'%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,\\n\\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\\n\\t'%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,\\n\\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\\n\\t'%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,\\n\\t'%URIError%': URIError,\\n\\t'%URIErrorPrototype%': URIError.prototype,\\n\\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\\n\\t'%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,\\n\\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,\\n\\t'%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype\\n};\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\nvar $replace = bind.call(Function.call, String.prototype.replace);\\n\\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\\nvar rePropName = /[^%.[\\\\]]+|\\\\[(?:(-?\\\\d+(?:\\\\.\\\\d+)?)|([\\\"'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2)\\\\]|(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|%$))/g;\\nvar reEscapeChar = /\\\\\\\\(\\\\\\\\)?/g; /** Used to match backslashes in property paths. */\\nvar stringToPath = function stringToPath(string) {\\n\\tvar result = [];\\n\\t$replace(string, rePropName, function (match, number, quote, subString) {\\n\\t\\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);\\n\\t});\\n\\treturn result;\\n};\\n/* end adaptation */\\n\\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\\n\\tif (!(name in INTRINSICS)) {\\n\\t\\tthrow new SyntaxError('intrinsic ' + name + ' does not exist!');\\n\\t}\\n\\n\\t// istanbul ignore if // hopefully this is impossible to test :-)\\n\\tif (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {\\n\\t\\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\\n\\t}\\n\\n\\treturn INTRINSICS[name];\\n};\\n\\nmodule.exports = function GetIntrinsic(name, allowMissing) {\\n\\tif (typeof name !== 'string' || name.length === 0) {\\n\\t\\tthrow new TypeError('intrinsic name must be a non-empty string');\\n\\t}\\n\\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\\n\\t\\tthrow new TypeError('\\\"allowMissing\\\" argument must be a boolean');\\n\\t}\\n\\n\\tvar parts = stringToPath(name);\\n\\n\\tvar value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);\\n\\tfor (var i = 1; i < parts.length; i += 1) {\\n\\t\\tif (value != null) {\\n\\t\\t\\tif ($gOPD && (i + 1) >= parts.length) {\\n\\t\\t\\t\\tvar desc = $gOPD(value, parts[i]);\\n\\t\\t\\t\\tif (!allowMissing && !(parts[i] in value)) {\\n\\t\\t\\t\\t\\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tvalue = desc ? (desc.get || desc.value) : value[parts[i]];\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tvalue = value[parts[i]];\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn value;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/es-get-iterator/node_modules/es-abstract/GetIntrinsic.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBind.js\":\n/*!***********************************************************************************!*\\\n !*** ./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBind.js ***!\n \\***********************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/es-get-iterator/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $Function = GetIntrinsic('%Function%');\\nvar $apply = $Function.apply;\\nvar $call = $Function.call;\\n\\nmodule.exports = function callBind() {\\n\\treturn bind.apply($call, arguments);\\n};\\n\\nmodule.exports.apply = function applyBind() {\\n\\treturn bind.apply($apply, arguments);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBind.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBound.js\":\n/*!************************************************************************************!*\\\n !*** ./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBound.js ***!\n \\************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/es-get-iterator/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar callBind = __webpack_require__(/*! ./callBind */ \\\"./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBind.js\\\");\\n\\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\\n\\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\\n\\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\\n\\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.')) {\\n\\t\\treturn callBind(intrinsic);\\n\\t}\\n\\treturn intrinsic;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBound.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/es-get-iterator/node_modules/isarray/index.js\":\n/*!********************************************************************!*\\\n !*** ./node_modules/es-get-iterator/node_modules/isarray/index.js ***!\n \\********************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"var toString = {}.toString;\\n\\nmodule.exports = Array.isArray || function (arr) {\\n return toString.call(arr) == '[object Array]';\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/es-get-iterator/node_modules/isarray/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/eventemitter3/index.js\":\n/*!*********************************************!*\\\n !*** ./node_modules/eventemitter3/index.js ***!\n \\*********************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"'use strict';\\n\\nvar has = Object.prototype.hasOwnProperty\\n , prefix = '~';\\n\\n/**\\n * Constructor to create a storage for our `EE` objects.\\n * An `Events` instance is a plain object whose properties are event names.\\n *\\n * @constructor\\n * @private\\n */\\nfunction Events() {}\\n\\n//\\n// We try to not inherit from `Object.prototype`. In some engines creating an\\n// instance in this way is faster than calling `Object.create(null)` directly.\\n// If `Object.create(null)` is not supported we prefix the event names with a\\n// character to make sure that the built-in object properties are not\\n// overridden or used as an attack vector.\\n//\\nif (Object.create) {\\n Events.prototype = Object.create(null);\\n\\n //\\n // This hack is needed because the `__proto__` property is still inherited in\\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\\n //\\n if (!new Events().__proto__) prefix = false;\\n}\\n\\n/**\\n * Representation of a single event listener.\\n *\\n * @param {Function} fn The listener function.\\n * @param {*} context The context to invoke the listener with.\\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\\n * @constructor\\n * @private\\n */\\nfunction EE(fn, context, once) {\\n this.fn = fn;\\n this.context = context;\\n this.once = once || false;\\n}\\n\\n/**\\n * Add a listener for a given event.\\n *\\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\\n * @param {(String|Symbol)} event The event name.\\n * @param {Function} fn The listener function.\\n * @param {*} context The context to invoke the listener with.\\n * @param {Boolean} once Specify if the listener is a one-time listener.\\n * @returns {EventEmitter}\\n * @private\\n */\\nfunction addListener(emitter, event, fn, context, once) {\\n if (typeof fn !== 'function') {\\n throw new TypeError('The listener must be a function');\\n }\\n\\n var listener = new EE(fn, context || emitter, once)\\n , evt = prefix ? prefix + event : event;\\n\\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\\n else emitter._events[evt] = [emitter._events[evt], listener];\\n\\n return emitter;\\n}\\n\\n/**\\n * Clear event by name.\\n *\\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\\n * @param {(String|Symbol)} evt The Event name.\\n * @private\\n */\\nfunction clearEvent(emitter, evt) {\\n if (--emitter._eventsCount === 0) emitter._events = new Events();\\n else delete emitter._events[evt];\\n}\\n\\n/**\\n * Minimal `EventEmitter` interface that is molded against the Node.js\\n * `EventEmitter` interface.\\n *\\n * @constructor\\n * @public\\n */\\nfunction EventEmitter() {\\n this._events = new Events();\\n this._eventsCount = 0;\\n}\\n\\n/**\\n * Return an array listing the events for which the emitter has registered\\n * listeners.\\n *\\n * @returns {Array}\\n * @public\\n */\\nEventEmitter.prototype.eventNames = function eventNames() {\\n var names = []\\n , events\\n , name;\\n\\n if (this._eventsCount === 0) return names;\\n\\n for (name in (events = this._events)) {\\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\\n }\\n\\n if (Object.getOwnPropertySymbols) {\\n return names.concat(Object.getOwnPropertySymbols(events));\\n }\\n\\n return names;\\n};\\n\\n/**\\n * Return the listeners registered for a given event.\\n *\\n * @param {(String|Symbol)} event The event name.\\n * @returns {Array} The registered listeners.\\n * @public\\n */\\nEventEmitter.prototype.listeners = function listeners(event) {\\n var evt = prefix ? prefix + event : event\\n , handlers = this._events[evt];\\n\\n if (!handlers) return [];\\n if (handlers.fn) return [handlers.fn];\\n\\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\\n ee[i] = handlers[i].fn;\\n }\\n\\n return ee;\\n};\\n\\n/**\\n * Return the number of listeners listening to a given event.\\n *\\n * @param {(String|Symbol)} event The event name.\\n * @returns {Number} The number of listeners.\\n * @public\\n */\\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\\n var evt = prefix ? prefix + event : event\\n , listeners = this._events[evt];\\n\\n if (!listeners) return 0;\\n if (listeners.fn) return 1;\\n return listeners.length;\\n};\\n\\n/**\\n * Calls each of the listeners registered for a given event.\\n *\\n * @param {(String|Symbol)} event The event name.\\n * @returns {Boolean} `true` if the event had listeners, else `false`.\\n * @public\\n */\\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\\n var evt = prefix ? prefix + event : event;\\n\\n if (!this._events[evt]) return false;\\n\\n var listeners = this._events[evt]\\n , len = arguments.length\\n , args\\n , i;\\n\\n if (listeners.fn) {\\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\\n\\n switch (len) {\\n case 1: return listeners.fn.call(listeners.context), true;\\n case 2: return listeners.fn.call(listeners.context, a1), true;\\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\\n }\\n\\n for (i = 1, args = new Array(len -1); i < len; i++) {\\n args[i - 1] = arguments[i];\\n }\\n\\n listeners.fn.apply(listeners.context, args);\\n } else {\\n var length = listeners.length\\n , j;\\n\\n for (i = 0; i < length; i++) {\\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\\n\\n switch (len) {\\n case 1: listeners[i].fn.call(listeners[i].context); break;\\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\\n default:\\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\\n args[j - 1] = arguments[j];\\n }\\n\\n listeners[i].fn.apply(listeners[i].context, args);\\n }\\n }\\n }\\n\\n return true;\\n};\\n\\n/**\\n * Add a listener for a given event.\\n *\\n * @param {(String|Symbol)} event The event name.\\n * @param {Function} fn The listener function.\\n * @param {*} [context=this] The context to invoke the listener with.\\n * @returns {EventEmitter} `this`.\\n * @public\\n */\\nEventEmitter.prototype.on = function on(event, fn, context) {\\n return addListener(this, event, fn, context, false);\\n};\\n\\n/**\\n * Add a one-time listener for a given event.\\n *\\n * @param {(String|Symbol)} event The event name.\\n * @param {Function} fn The listener function.\\n * @param {*} [context=this] The context to invoke the listener with.\\n * @returns {EventEmitter} `this`.\\n * @public\\n */\\nEventEmitter.prototype.once = function once(event, fn, context) {\\n return addListener(this, event, fn, context, true);\\n};\\n\\n/**\\n * Remove the listeners of a given event.\\n *\\n * @param {(String|Symbol)} event The event name.\\n * @param {Function} fn Only remove the listeners that match this function.\\n * @param {*} context Only remove the listeners that have this context.\\n * @param {Boolean} once Only remove one-time listeners.\\n * @returns {EventEmitter} `this`.\\n * @public\\n */\\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\\n var evt = prefix ? prefix + event : event;\\n\\n if (!this._events[evt]) return this;\\n if (!fn) {\\n clearEvent(this, evt);\\n return this;\\n }\\n\\n var listeners = this._events[evt];\\n\\n if (listeners.fn) {\\n if (\\n listeners.fn === fn &&\\n (!once || listeners.once) &&\\n (!context || listeners.context === context)\\n ) {\\n clearEvent(this, evt);\\n }\\n } else {\\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\\n if (\\n listeners[i].fn !== fn ||\\n (once && !listeners[i].once) ||\\n (context && listeners[i].context !== context)\\n ) {\\n events.push(listeners[i]);\\n }\\n }\\n\\n //\\n // Reset the array, or remove it completely if we have no more listeners.\\n //\\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\\n else clearEvent(this, evt);\\n }\\n\\n return this;\\n};\\n\\n/**\\n * Remove all listeners, or those of the specified event.\\n *\\n * @param {(String|Symbol)} [event] The event name.\\n * @returns {EventEmitter} `this`.\\n * @public\\n */\\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\\n var evt;\\n\\n if (event) {\\n evt = prefix ? prefix + event : event;\\n if (this._events[evt]) clearEvent(this, evt);\\n } else {\\n this._events = new Events();\\n this._eventsCount = 0;\\n }\\n\\n return this;\\n};\\n\\n//\\n// Alias methods names because people roll like that.\\n//\\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\\n\\n//\\n// Expose the prefix.\\n//\\nEventEmitter.prefixed = prefix;\\n\\n//\\n// Allow `EventEmitter` to be imported as module namespace.\\n//\\nEventEmitter.EventEmitter = EventEmitter;\\n\\n//\\n// Expose the module.\\n//\\nif ('undefined' !== typeof module) {\\n module.exports = EventEmitter;\\n}\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/eventemitter3/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/extend/index.js\":\n/*!**************************************!*\\\n !*** ./node_modules/extend/index.js ***!\n \\**************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"'use strict';\\n\\nvar hasOwn = Object.prototype.hasOwnProperty;\\nvar toStr = Object.prototype.toString;\\nvar defineProperty = Object.defineProperty;\\nvar gOPD = Object.getOwnPropertyDescriptor;\\n\\nvar isArray = function isArray(arr) {\\n\\tif (typeof Array.isArray === 'function') {\\n\\t\\treturn Array.isArray(arr);\\n\\t}\\n\\n\\treturn toStr.call(arr) === '[object Array]';\\n};\\n\\nvar isPlainObject = function isPlainObject(obj) {\\n\\tif (!obj || toStr.call(obj) !== '[object Object]') {\\n\\t\\treturn false;\\n\\t}\\n\\n\\tvar hasOwnConstructor = hasOwn.call(obj, 'constructor');\\n\\tvar hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, 'isPrototypeOf');\\n\\t// Not own constructor property must be Object\\n\\tif (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {\\n\\t\\treturn false;\\n\\t}\\n\\n\\t// Own properties are enumerated firstly, so to speed up,\\n\\t// if last one is own, then all properties are own.\\n\\tvar key;\\n\\tfor (key in obj) { /**/ }\\n\\n\\treturn typeof key === 'undefined' || hasOwn.call(obj, key);\\n};\\n\\n// If name is '__proto__', and Object.defineProperty is available, define __proto__ as an own property on target\\nvar setProperty = function setProperty(target, options) {\\n\\tif (defineProperty && options.name === '__proto__') {\\n\\t\\tdefineProperty(target, options.name, {\\n\\t\\t\\tenumerable: true,\\n\\t\\t\\tconfigurable: true,\\n\\t\\t\\tvalue: options.newValue,\\n\\t\\t\\twritable: true\\n\\t\\t});\\n\\t} else {\\n\\t\\ttarget[options.name] = options.newValue;\\n\\t}\\n};\\n\\n// Return undefined instead of __proto__ if '__proto__' is not an own property\\nvar getProperty = function getProperty(obj, name) {\\n\\tif (name === '__proto__') {\\n\\t\\tif (!hasOwn.call(obj, name)) {\\n\\t\\t\\treturn void 0;\\n\\t\\t} else if (gOPD) {\\n\\t\\t\\t// In early versions of node, obj['__proto__'] is buggy when obj has\\n\\t\\t\\t// __proto__ as an own property. Object.getOwnPropertyDescriptor() works.\\n\\t\\t\\treturn gOPD(obj, name).value;\\n\\t\\t}\\n\\t}\\n\\n\\treturn obj[name];\\n};\\n\\nmodule.exports = function extend() {\\n\\tvar options, name, src, copy, copyIsArray, clone;\\n\\tvar target = arguments[0];\\n\\tvar i = 1;\\n\\tvar length = arguments.length;\\n\\tvar deep = false;\\n\\n\\t// Handle a deep copy situation\\n\\tif (typeof target === 'boolean') {\\n\\t\\tdeep = target;\\n\\t\\ttarget = arguments[1] || {};\\n\\t\\t// skip the boolean and the target\\n\\t\\ti = 2;\\n\\t}\\n\\tif (target == null || (typeof target !== 'object' && typeof target !== 'function')) {\\n\\t\\ttarget = {};\\n\\t}\\n\\n\\tfor (; i < length; ++i) {\\n\\t\\toptions = arguments[i];\\n\\t\\t// Only deal with non-null/undefined values\\n\\t\\tif (options != null) {\\n\\t\\t\\t// Extend the base object\\n\\t\\t\\tfor (name in options) {\\n\\t\\t\\t\\tsrc = getProperty(target, name);\\n\\t\\t\\t\\tcopy = getProperty(options, name);\\n\\n\\t\\t\\t\\t// Prevent never-ending loop\\n\\t\\t\\t\\tif (target !== copy) {\\n\\t\\t\\t\\t\\t// Recurse if we're merging plain objects or arrays\\n\\t\\t\\t\\t\\tif (deep && copy && (isPlainObject(copy) || (copyIsArray = isArray(copy)))) {\\n\\t\\t\\t\\t\\t\\tif (copyIsArray) {\\n\\t\\t\\t\\t\\t\\t\\tcopyIsArray = false;\\n\\t\\t\\t\\t\\t\\t\\tclone = src && isArray(src) ? src : [];\\n\\t\\t\\t\\t\\t\\t} else {\\n\\t\\t\\t\\t\\t\\t\\tclone = src && isPlainObject(src) ? src : {};\\n\\t\\t\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t\\t\\t// Never move original objects, clone them\\n\\t\\t\\t\\t\\t\\tsetProperty(target, { name: name, newValue: extend(deep, clone, copy) });\\n\\n\\t\\t\\t\\t\\t// Don't bring in undefined values\\n\\t\\t\\t\\t\\t} else if (typeof copy !== 'undefined') {\\n\\t\\t\\t\\t\\t\\tsetProperty(target, { name: name, newValue: copy });\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t// Return the modified object\\n\\treturn target;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/extend/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/fast-diff/diff.js\":\n/*!****************************************!*\\\n !*** ./node_modules/fast-diff/diff.js ***!\n \\****************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"/**\\n * This library modifies the diff-patch-match library by Neil Fraser\\n * by removing the patch and match functionality and certain advanced\\n * options in the diff function. The original license is as follows:\\n *\\n * ===\\n *\\n * Diff Match and Patch\\n *\\n * Copyright 2006 Google Inc.\\n * http://code.google.com/p/google-diff-match-patch/\\n *\\n * Licensed under the Apache License, Version 2.0 (the \\\"License\\\");\\n * you may not use this file except in compliance with the License.\\n * You may obtain a copy of the License at\\n *\\n * http://www.apache.org/licenses/LICENSE-2.0\\n *\\n * Unless required by applicable law or agreed to in writing, software\\n * distributed under the License is distributed on an \\\"AS IS\\\" BASIS,\\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\\n * See the License for the specific language governing permissions and\\n * limitations under the License.\\n */\\n\\n\\n/**\\n * The data structure representing a diff is an array of tuples:\\n * [[DIFF_DELETE, 'Hello'], [DIFF_INSERT, 'Goodbye'], [DIFF_EQUAL, ' world.']]\\n * which means: delete 'Hello', add 'Goodbye' and keep ' world.'\\n */\\nvar DIFF_DELETE = -1;\\nvar DIFF_INSERT = 1;\\nvar DIFF_EQUAL = 0;\\n\\n\\n/**\\n * Find the differences between two texts. Simplifies the problem by stripping\\n * any common prefix or suffix off the texts before diffing.\\n * @param {string} text1 Old string to be diffed.\\n * @param {string} text2 New string to be diffed.\\n * @param {Int|Object} [cursor_pos] Edit position in text1 or object with more info\\n * @return {Array} Array of diff tuples.\\n */\\nfunction diff_main(text1, text2, cursor_pos, _fix_unicode) {\\n // Check for equality\\n if (text1 === text2) {\\n if (text1) {\\n return [[DIFF_EQUAL, text1]];\\n }\\n return [];\\n }\\n\\n if (cursor_pos != null) {\\n var editdiff = find_cursor_edit_diff(text1, text2, cursor_pos);\\n if (editdiff) {\\n return editdiff;\\n }\\n }\\n\\n // Trim off common prefix (speedup).\\n var commonlength = diff_commonPrefix(text1, text2);\\n var commonprefix = text1.substring(0, commonlength);\\n text1 = text1.substring(commonlength);\\n text2 = text2.substring(commonlength);\\n\\n // Trim off common suffix (speedup).\\n commonlength = diff_commonSuffix(text1, text2);\\n var commonsuffix = text1.substring(text1.length - commonlength);\\n text1 = text1.substring(0, text1.length - commonlength);\\n text2 = text2.substring(0, text2.length - commonlength);\\n\\n // Compute the diff on the middle block.\\n var diffs = diff_compute_(text1, text2);\\n\\n // Restore the prefix and suffix.\\n if (commonprefix) {\\n diffs.unshift([DIFF_EQUAL, commonprefix]);\\n }\\n if (commonsuffix) {\\n diffs.push([DIFF_EQUAL, commonsuffix]);\\n }\\n diff_cleanupMerge(diffs, _fix_unicode);\\n return diffs;\\n};\\n\\n\\n/**\\n * Find the differences between two texts. Assumes that the texts do not\\n * have any common prefix or suffix.\\n * @param {string} text1 Old string to be diffed.\\n * @param {string} text2 New string to be diffed.\\n * @return {Array} Array of diff tuples.\\n */\\nfunction diff_compute_(text1, text2) {\\n var diffs;\\n\\n if (!text1) {\\n // Just add some text (speedup).\\n return [[DIFF_INSERT, text2]];\\n }\\n\\n if (!text2) {\\n // Just delete some text (speedup).\\n return [[DIFF_DELETE, text1]];\\n }\\n\\n var longtext = text1.length > text2.length ? text1 : text2;\\n var shorttext = text1.length > text2.length ? text2 : text1;\\n var i = longtext.indexOf(shorttext);\\n if (i !== -1) {\\n // Shorter text is inside the longer text (speedup).\\n diffs = [\\n [DIFF_INSERT, longtext.substring(0, i)],\\n [DIFF_EQUAL, shorttext],\\n [DIFF_INSERT, longtext.substring(i + shorttext.length)]\\n ];\\n // Swap insertions for deletions if diff is reversed.\\n if (text1.length > text2.length) {\\n diffs[0][0] = diffs[2][0] = DIFF_DELETE;\\n }\\n return diffs;\\n }\\n\\n if (shorttext.length === 1) {\\n // Single character string.\\n // After the previous speedup, the character can't be an equality.\\n return [[DIFF_DELETE, text1], [DIFF_INSERT, text2]];\\n }\\n\\n // Check to see if the problem can be split in two.\\n var hm = diff_halfMatch_(text1, text2);\\n if (hm) {\\n // A half-match was found, sort out the return data.\\n var text1_a = hm[0];\\n var text1_b = hm[1];\\n var text2_a = hm[2];\\n var text2_b = hm[3];\\n var mid_common = hm[4];\\n // Send both pairs off for separate processing.\\n var diffs_a = diff_main(text1_a, text2_a);\\n var diffs_b = diff_main(text1_b, text2_b);\\n // Merge the results.\\n return diffs_a.concat([[DIFF_EQUAL, mid_common]], diffs_b);\\n }\\n\\n return diff_bisect_(text1, text2);\\n};\\n\\n\\n/**\\n * Find the 'middle snake' of a diff, split the problem in two\\n * and return the recursively constructed diff.\\n * See Myers 1986 paper: An O(ND) Difference Algorithm and Its Variations.\\n * @param {string} text1 Old string to be diffed.\\n * @param {string} text2 New string to be diffed.\\n * @return {Array} Array of diff tuples.\\n * @private\\n */\\nfunction diff_bisect_(text1, text2) {\\n // Cache the text lengths to prevent multiple calls.\\n var text1_length = text1.length;\\n var text2_length = text2.length;\\n var max_d = Math.ceil((text1_length + text2_length) / 2);\\n var v_offset = max_d;\\n var v_length = 2 * max_d;\\n var v1 = new Array(v_length);\\n var v2 = new Array(v_length);\\n // Setting all elements to -1 is faster in Chrome & Firefox than mixing\\n // integers and undefined.\\n for (var x = 0; x < v_length; x++) {\\n v1[x] = -1;\\n v2[x] = -1;\\n }\\n v1[v_offset + 1] = 0;\\n v2[v_offset + 1] = 0;\\n var delta = text1_length - text2_length;\\n // If the total number of characters is odd, then the front path will collide\\n // with the reverse path.\\n var front = (delta % 2 !== 0);\\n // Offsets for start and end of k loop.\\n // Prevents mapping of space beyond the grid.\\n var k1start = 0;\\n var k1end = 0;\\n var k2start = 0;\\n var k2end = 0;\\n for (var d = 0; d < max_d; d++) {\\n // Walk the front path one step.\\n for (var k1 = -d + k1start; k1 <= d - k1end; k1 += 2) {\\n var k1_offset = v_offset + k1;\\n var x1;\\n if (k1 === -d || (k1 !== d && v1[k1_offset - 1] < v1[k1_offset + 1])) {\\n x1 = v1[k1_offset + 1];\\n } else {\\n x1 = v1[k1_offset - 1] + 1;\\n }\\n var y1 = x1 - k1;\\n while (\\n x1 < text1_length && y1 < text2_length &&\\n text1.charAt(x1) === text2.charAt(y1)\\n ) {\\n x1++;\\n y1++;\\n }\\n v1[k1_offset] = x1;\\n if (x1 > text1_length) {\\n // Ran off the right of the graph.\\n k1end += 2;\\n } else if (y1 > text2_length) {\\n // Ran off the bottom of the graph.\\n k1start += 2;\\n } else if (front) {\\n var k2_offset = v_offset + delta - k1;\\n if (k2_offset >= 0 && k2_offset < v_length && v2[k2_offset] !== -1) {\\n // Mirror x2 onto top-left coordinate system.\\n var x2 = text1_length - v2[k2_offset];\\n if (x1 >= x2) {\\n // Overlap detected.\\n return diff_bisectSplit_(text1, text2, x1, y1);\\n }\\n }\\n }\\n }\\n\\n // Walk the reverse path one step.\\n for (var k2 = -d + k2start; k2 <= d - k2end; k2 += 2) {\\n var k2_offset = v_offset + k2;\\n var x2;\\n if (k2 === -d || (k2 !== d && v2[k2_offset - 1] < v2[k2_offset + 1])) {\\n x2 = v2[k2_offset + 1];\\n } else {\\n x2 = v2[k2_offset - 1] + 1;\\n }\\n var y2 = x2 - k2;\\n while (\\n x2 < text1_length && y2 < text2_length &&\\n text1.charAt(text1_length - x2 - 1) === text2.charAt(text2_length - y2 - 1)\\n ) {\\n x2++;\\n y2++;\\n }\\n v2[k2_offset] = x2;\\n if (x2 > text1_length) {\\n // Ran off the left of the graph.\\n k2end += 2;\\n } else if (y2 > text2_length) {\\n // Ran off the top of the graph.\\n k2start += 2;\\n } else if (!front) {\\n var k1_offset = v_offset + delta - k2;\\n if (k1_offset >= 0 && k1_offset < v_length && v1[k1_offset] !== -1) {\\n var x1 = v1[k1_offset];\\n var y1 = v_offset + x1 - k1_offset;\\n // Mirror x2 onto top-left coordinate system.\\n x2 = text1_length - x2;\\n if (x1 >= x2) {\\n // Overlap detected.\\n return diff_bisectSplit_(text1, text2, x1, y1);\\n }\\n }\\n }\\n }\\n }\\n // Diff took too long and hit the deadline or\\n // number of diffs equals number of characters, no commonality at all.\\n return [[DIFF_DELETE, text1], [DIFF_INSERT, text2]];\\n};\\n\\n\\n/**\\n * Given the location of the 'middle snake', split the diff in two parts\\n * and recurse.\\n * @param {string} text1 Old string to be diffed.\\n * @param {string} text2 New string to be diffed.\\n * @param {number} x Index of split point in text1.\\n * @param {number} y Index of split point in text2.\\n * @return {Array} Array of diff tuples.\\n */\\nfunction diff_bisectSplit_(text1, text2, x, y) {\\n var text1a = text1.substring(0, x);\\n var text2a = text2.substring(0, y);\\n var text1b = text1.substring(x);\\n var text2b = text2.substring(y);\\n\\n // Compute both diffs serially.\\n var diffs = diff_main(text1a, text2a);\\n var diffsb = diff_main(text1b, text2b);\\n\\n return diffs.concat(diffsb);\\n};\\n\\n\\n/**\\n * Determine the common prefix of two strings.\\n * @param {string} text1 First string.\\n * @param {string} text2 Second string.\\n * @return {number} The number of characters common to the start of each\\n * string.\\n */\\nfunction diff_commonPrefix(text1, text2) {\\n // Quick check for common null cases.\\n if (!text1 || !text2 || text1.charAt(0) !== text2.charAt(0)) {\\n return 0;\\n }\\n // Binary search.\\n // Performance analysis: http://neil.fraser.name/news/2007/10/09/\\n var pointermin = 0;\\n var pointermax = Math.min(text1.length, text2.length);\\n var pointermid = pointermax;\\n var pointerstart = 0;\\n while (pointermin < pointermid) {\\n if (\\n text1.substring(pointerstart, pointermid) ==\\n text2.substring(pointerstart, pointermid)\\n ) {\\n pointermin = pointermid;\\n pointerstart = pointermin;\\n } else {\\n pointermax = pointermid;\\n }\\n pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin);\\n }\\n\\n if (is_surrogate_pair_start(text1.charCodeAt(pointermid - 1))) {\\n pointermid--;\\n }\\n\\n return pointermid;\\n};\\n\\n\\n/**\\n * Determine the common suffix of two strings.\\n * @param {string} text1 First string.\\n * @param {string} text2 Second string.\\n * @return {number} The number of characters common to the end of each string.\\n */\\nfunction diff_commonSuffix(text1, text2) {\\n // Quick check for common null cases.\\n if (!text1 || !text2 || text1.slice(-1) !== text2.slice(-1)) {\\n return 0;\\n }\\n // Binary search.\\n // Performance analysis: http://neil.fraser.name/news/2007/10/09/\\n var pointermin = 0;\\n var pointermax = Math.min(text1.length, text2.length);\\n var pointermid = pointermax;\\n var pointerend = 0;\\n while (pointermin < pointermid) {\\n if (\\n text1.substring(text1.length - pointermid, text1.length - pointerend) ==\\n text2.substring(text2.length - pointermid, text2.length - pointerend)\\n ) {\\n pointermin = pointermid;\\n pointerend = pointermin;\\n } else {\\n pointermax = pointermid;\\n }\\n pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin);\\n }\\n\\n if (is_surrogate_pair_end(text1.charCodeAt(text1.length - pointermid))) {\\n pointermid--;\\n }\\n\\n return pointermid;\\n};\\n\\n\\n/**\\n * Do the two texts share a substring which is at least half the length of the\\n * longer text?\\n * This speedup can produce non-minimal diffs.\\n * @param {string} text1 First string.\\n * @param {string} text2 Second string.\\n * @return {Array.} Five element Array, containing the prefix of\\n * text1, the suffix of text1, the prefix of text2, the suffix of\\n * text2 and the common middle. Or null if there was no match.\\n */\\nfunction diff_halfMatch_(text1, text2) {\\n var longtext = text1.length > text2.length ? text1 : text2;\\n var shorttext = text1.length > text2.length ? text2 : text1;\\n if (longtext.length < 4 || shorttext.length * 2 < longtext.length) {\\n return null; // Pointless.\\n }\\n\\n /**\\n * Does a substring of shorttext exist within longtext such that the substring\\n * is at least half the length of longtext?\\n * Closure, but does not reference any external variables.\\n * @param {string} longtext Longer string.\\n * @param {string} shorttext Shorter string.\\n * @param {number} i Start index of quarter length substring within longtext.\\n * @return {Array.} Five element Array, containing the prefix of\\n * longtext, the suffix of longtext, the prefix of shorttext, the suffix\\n * of shorttext and the common middle. Or null if there was no match.\\n * @private\\n */\\n function diff_halfMatchI_(longtext, shorttext, i) {\\n // Start with a 1/4 length substring at position i as a seed.\\n var seed = longtext.substring(i, i + Math.floor(longtext.length / 4));\\n var j = -1;\\n var best_common = '';\\n var best_longtext_a, best_longtext_b, best_shorttext_a, best_shorttext_b;\\n while ((j = shorttext.indexOf(seed, j + 1)) !== -1) {\\n var prefixLength = diff_commonPrefix(\\n longtext.substring(i), shorttext.substring(j));\\n var suffixLength = diff_commonSuffix(\\n longtext.substring(0, i), shorttext.substring(0, j));\\n if (best_common.length < suffixLength + prefixLength) {\\n best_common = shorttext.substring(\\n j - suffixLength, j) + shorttext.substring(j, j + prefixLength);\\n best_longtext_a = longtext.substring(0, i - suffixLength);\\n best_longtext_b = longtext.substring(i + prefixLength);\\n best_shorttext_a = shorttext.substring(0, j - suffixLength);\\n best_shorttext_b = shorttext.substring(j + prefixLength);\\n }\\n }\\n if (best_common.length * 2 >= longtext.length) {\\n return [\\n best_longtext_a, best_longtext_b,\\n best_shorttext_a, best_shorttext_b, best_common\\n ];\\n } else {\\n return null;\\n }\\n }\\n\\n // First check if the second quarter is the seed for a half-match.\\n var hm1 = diff_halfMatchI_(longtext, shorttext, Math.ceil(longtext.length / 4));\\n // Check again based on the third quarter.\\n var hm2 = diff_halfMatchI_(longtext, shorttext, Math.ceil(longtext.length / 2));\\n var hm;\\n if (!hm1 && !hm2) {\\n return null;\\n } else if (!hm2) {\\n hm = hm1;\\n } else if (!hm1) {\\n hm = hm2;\\n } else {\\n // Both matched. Select the longest.\\n hm = hm1[4].length > hm2[4].length ? hm1 : hm2;\\n }\\n\\n // A half-match was found, sort out the return data.\\n var text1_a, text1_b, text2_a, text2_b;\\n if (text1.length > text2.length) {\\n text1_a = hm[0];\\n text1_b = hm[1];\\n text2_a = hm[2];\\n text2_b = hm[3];\\n } else {\\n text2_a = hm[0];\\n text2_b = hm[1];\\n text1_a = hm[2];\\n text1_b = hm[3];\\n }\\n var mid_common = hm[4];\\n return [text1_a, text1_b, text2_a, text2_b, mid_common];\\n};\\n\\n\\n/**\\n * Reorder and merge like edit sections. Merge equalities.\\n * Any edit section can move as long as it doesn't cross an equality.\\n * @param {Array} diffs Array of diff tuples.\\n * @param {boolean} fix_unicode Whether to normalize to a unicode-correct diff\\n */\\nfunction diff_cleanupMerge(diffs, fix_unicode) {\\n diffs.push([DIFF_EQUAL, '']); // Add a dummy entry at the end.\\n var pointer = 0;\\n var count_delete = 0;\\n var count_insert = 0;\\n var text_delete = '';\\n var text_insert = '';\\n var commonlength;\\n while (pointer < diffs.length) {\\n if (pointer < diffs.length - 1 && !diffs[pointer][1]) {\\n diffs.splice(pointer, 1);\\n continue;\\n }\\n switch (diffs[pointer][0]) {\\n case DIFF_INSERT:\\n\\n count_insert++;\\n text_insert += diffs[pointer][1];\\n pointer++;\\n break;\\n case DIFF_DELETE:\\n count_delete++;\\n text_delete += diffs[pointer][1];\\n pointer++;\\n break;\\n case DIFF_EQUAL:\\n var previous_equality = pointer - count_insert - count_delete - 1;\\n if (fix_unicode) {\\n // prevent splitting of unicode surrogate pairs. when fix_unicode is true,\\n // we assume that the old and new text in the diff are complete and correct\\n // unicode-encoded JS strings, but the tuple boundaries may fall between\\n // surrogate pairs. we fix this by shaving off stray surrogates from the end\\n // of the previous equality and the beginning of this equality. this may create\\n // empty equalities or a common prefix or suffix. for example, if AB and AC are\\n // emojis, `[[0, 'A'], [-1, 'BA'], [0, 'C']]` would turn into deleting 'ABAC' and\\n // inserting 'AC', and then the common suffix 'AC' will be eliminated. in this\\n // particular case, both equalities go away, we absorb any previous inequalities,\\n // and we keep scanning for the next equality before rewriting the tuples.\\n if (previous_equality >= 0 && ends_with_pair_start(diffs[previous_equality][1])) {\\n var stray = diffs[previous_equality][1].slice(-1);\\n diffs[previous_equality][1] = diffs[previous_equality][1].slice(0, -1);\\n text_delete = stray + text_delete;\\n text_insert = stray + text_insert;\\n if (!diffs[previous_equality][1]) {\\n // emptied out previous equality, so delete it and include previous delete/insert\\n diffs.splice(previous_equality, 1);\\n pointer--;\\n var k = previous_equality - 1;\\n if (diffs[k] && diffs[k][0] === DIFF_INSERT) {\\n count_insert++;\\n text_insert = diffs[k][1] + text_insert;\\n k--;\\n }\\n if (diffs[k] && diffs[k][0] === DIFF_DELETE) {\\n count_delete++;\\n text_delete = diffs[k][1] + text_delete;\\n k--;\\n }\\n previous_equality = k;\\n }\\n }\\n if (starts_with_pair_end(diffs[pointer][1])) {\\n var stray = diffs[pointer][1].charAt(0);\\n diffs[pointer][1] = diffs[pointer][1].slice(1);\\n text_delete += stray;\\n text_insert += stray;\\n }\\n }\\n if (pointer < diffs.length - 1 && !diffs[pointer][1]) {\\n // for empty equality not at end, wait for next equality\\n diffs.splice(pointer, 1);\\n break;\\n }\\n if (text_delete.length > 0 || text_insert.length > 0) {\\n // note that diff_commonPrefix and diff_commonSuffix are unicode-aware\\n if (text_delete.length > 0 && text_insert.length > 0) {\\n // Factor out any common prefixes.\\n commonlength = diff_commonPrefix(text_insert, text_delete);\\n if (commonlength !== 0) {\\n if (previous_equality >= 0) {\\n diffs[previous_equality][1] += text_insert.substring(0, commonlength);\\n } else {\\n diffs.splice(0, 0, [DIFF_EQUAL, text_insert.substring(0, commonlength)]);\\n pointer++;\\n }\\n text_insert = text_insert.substring(commonlength);\\n text_delete = text_delete.substring(commonlength);\\n }\\n // Factor out any common suffixes.\\n commonlength = diff_commonSuffix(text_insert, text_delete);\\n if (commonlength !== 0) {\\n diffs[pointer][1] =\\n text_insert.substring(text_insert.length - commonlength) + diffs[pointer][1];\\n text_insert = text_insert.substring(0, text_insert.length - commonlength);\\n text_delete = text_delete.substring(0, text_delete.length - commonlength);\\n }\\n }\\n // Delete the offending records and add the merged ones.\\n var n = count_insert + count_delete;\\n if (text_delete.length === 0 && text_insert.length === 0) {\\n diffs.splice(pointer - n, n);\\n pointer = pointer - n;\\n } else if (text_delete.length === 0) {\\n diffs.splice(pointer - n, n, [DIFF_INSERT, text_insert]);\\n pointer = pointer - n + 1;\\n } else if (text_insert.length === 0) {\\n diffs.splice(pointer - n, n, [DIFF_DELETE, text_delete]);\\n pointer = pointer - n + 1;\\n } else {\\n diffs.splice(pointer - n, n, [DIFF_DELETE, text_delete], [DIFF_INSERT, text_insert]);\\n pointer = pointer - n + 2;\\n }\\n }\\n if (pointer !== 0 && diffs[pointer - 1][0] === DIFF_EQUAL) {\\n // Merge this equality with the previous one.\\n diffs[pointer - 1][1] += diffs[pointer][1];\\n diffs.splice(pointer, 1);\\n } else {\\n pointer++;\\n }\\n count_insert = 0;\\n count_delete = 0;\\n text_delete = '';\\n text_insert = '';\\n break;\\n }\\n }\\n if (diffs[diffs.length - 1][1] === '') {\\n diffs.pop(); // Remove the dummy entry at the end.\\n }\\n\\n // Second pass: look for single edits surrounded on both sides by equalities\\n // which can be shifted sideways to eliminate an equality.\\n // e.g: ABAC -> ABAC\\n var changes = false;\\n pointer = 1;\\n // Intentionally ignore the first and last element (don't need checking).\\n while (pointer < diffs.length - 1) {\\n if (diffs[pointer - 1][0] === DIFF_EQUAL &&\\n diffs[pointer + 1][0] === DIFF_EQUAL) {\\n // This is a single edit surrounded by equalities.\\n if (diffs[pointer][1].substring(diffs[pointer][1].length -\\n diffs[pointer - 1][1].length) === diffs[pointer - 1][1]) {\\n // Shift the edit over the previous equality.\\n diffs[pointer][1] = diffs[pointer - 1][1] +\\n diffs[pointer][1].substring(0, diffs[pointer][1].length -\\n diffs[pointer - 1][1].length);\\n diffs[pointer + 1][1] = diffs[pointer - 1][1] + diffs[pointer + 1][1];\\n diffs.splice(pointer - 1, 1);\\n changes = true;\\n } else if (diffs[pointer][1].substring(0, diffs[pointer + 1][1].length) ==\\n diffs[pointer + 1][1]) {\\n // Shift the edit over the next equality.\\n diffs[pointer - 1][1] += diffs[pointer + 1][1];\\n diffs[pointer][1] =\\n diffs[pointer][1].substring(diffs[pointer + 1][1].length) +\\n diffs[pointer + 1][1];\\n diffs.splice(pointer + 1, 1);\\n changes = true;\\n }\\n }\\n pointer++;\\n }\\n // If shifts were made, the diff needs reordering and another shift sweep.\\n if (changes) {\\n diff_cleanupMerge(diffs, fix_unicode);\\n }\\n};\\n\\nfunction is_surrogate_pair_start(charCode) {\\n return charCode >= 0xD800 && charCode <= 0xDBFF;\\n}\\n\\nfunction is_surrogate_pair_end(charCode) {\\n return charCode >= 0xDC00 && charCode <= 0xDFFF;\\n}\\n\\nfunction starts_with_pair_end(str) {\\n return is_surrogate_pair_end(str.charCodeAt(0));\\n}\\n\\nfunction ends_with_pair_start(str) {\\n return is_surrogate_pair_start(str.charCodeAt(str.length - 1));\\n}\\n\\nfunction remove_empty_tuples(tuples) {\\n var ret = [];\\n for (var i = 0; i < tuples.length; i++) {\\n if (tuples[i][1].length > 0) {\\n ret.push(tuples[i]);\\n }\\n }\\n return ret;\\n}\\n\\nfunction make_edit_splice(before, oldMiddle, newMiddle, after) {\\n if (ends_with_pair_start(before) || starts_with_pair_end(after)) {\\n return null;\\n }\\n return remove_empty_tuples([\\n [DIFF_EQUAL, before],\\n [DIFF_DELETE, oldMiddle],\\n [DIFF_INSERT, newMiddle],\\n [DIFF_EQUAL, after]\\n ]);\\n}\\n\\nfunction find_cursor_edit_diff(oldText, newText, cursor_pos) {\\n // note: this runs after equality check has ruled out exact equality\\n var oldRange = typeof cursor_pos === 'number' ?\\n { index: cursor_pos, length: 0 } : cursor_pos.oldRange;\\n var newRange = typeof cursor_pos === 'number' ?\\n null : cursor_pos.newRange;\\n // take into account the old and new selection to generate the best diff\\n // possible for a text edit. for example, a text change from \\\"xxx\\\" to \\\"xx\\\"\\n // could be a delete or forwards-delete of any one of the x's, or the\\n // result of selecting two of the x's and typing \\\"x\\\".\\n var oldLength = oldText.length;\\n var newLength = newText.length;\\n if (oldRange.length === 0 && (newRange === null || newRange.length === 0)) {\\n // see if we have an insert or delete before or after cursor\\n var oldCursor = oldRange.index;\\n var oldBefore = oldText.slice(0, oldCursor);\\n var oldAfter = oldText.slice(oldCursor);\\n var maybeNewCursor = newRange ? newRange.index : null;\\n editBefore: {\\n // is this an insert or delete right before oldCursor?\\n var newCursor = oldCursor + newLength - oldLength;\\n if (maybeNewCursor !== null && maybeNewCursor !== newCursor) {\\n break editBefore;\\n }\\n if (newCursor < 0 || newCursor > newLength) {\\n break editBefore;\\n }\\n var newBefore = newText.slice(0, newCursor);\\n var newAfter = newText.slice(newCursor);\\n if (newAfter !== oldAfter) {\\n break editBefore;\\n }\\n var prefixLength = Math.min(oldCursor, newCursor);\\n var oldPrefix = oldBefore.slice(0, prefixLength);\\n var newPrefix = newBefore.slice(0, prefixLength);\\n if (oldPrefix !== newPrefix) {\\n break editBefore;\\n }\\n var oldMiddle = oldBefore.slice(prefixLength);\\n var newMiddle = newBefore.slice(prefixLength);\\n return make_edit_splice(oldPrefix, oldMiddle, newMiddle, oldAfter);\\n }\\n editAfter: {\\n // is this an insert or delete right after oldCursor?\\n if (maybeNewCursor !== null && maybeNewCursor !== oldCursor) {\\n break editAfter;\\n }\\n var cursor = oldCursor;\\n var newBefore = newText.slice(0, cursor);\\n var newAfter = newText.slice(cursor);\\n if (newBefore !== oldBefore) {\\n break editAfter;\\n }\\n var suffixLength = Math.min(oldLength - cursor, newLength - cursor);\\n var oldSuffix = oldAfter.slice(oldAfter.length - suffixLength);\\n var newSuffix = newAfter.slice(newAfter.length - suffixLength);\\n if (oldSuffix !== newSuffix) {\\n break editAfter;\\n }\\n var oldMiddle = oldAfter.slice(0, oldAfter.length - suffixLength);\\n var newMiddle = newAfter.slice(0, newAfter.length - suffixLength);\\n return make_edit_splice(oldBefore, oldMiddle, newMiddle, oldSuffix);\\n }\\n }\\n if (oldRange.length > 0 && newRange && newRange.length === 0) {\\n replaceRange: {\\n // see if diff could be a splice of the old selection range\\n var oldPrefix = oldText.slice(0, oldRange.index);\\n var oldSuffix = oldText.slice(oldRange.index + oldRange.length);\\n var prefixLength = oldPrefix.length;\\n var suffixLength = oldSuffix.length;\\n if (newLength < prefixLength + suffixLength) {\\n break replaceRange;\\n }\\n var newPrefix = newText.slice(0, prefixLength);\\n var newSuffix = newText.slice(newLength - suffixLength);\\n if (oldPrefix !== newPrefix || oldSuffix !== newSuffix) {\\n break replaceRange;\\n }\\n var oldMiddle = oldText.slice(prefixLength, oldLength - suffixLength);\\n var newMiddle = newText.slice(prefixLength, newLength - suffixLength);\\n return make_edit_splice(oldPrefix, oldMiddle, newMiddle, oldSuffix);\\n }\\n }\\n\\n return null;\\n}\\n\\nfunction diff(text1, text2, cursor_pos) {\\n // only pass fix_unicode=true at the top level, not when diff_main is\\n // recursively invoked\\n return diff_main(text1, text2, cursor_pos, true);\\n}\\n\\ndiff.INSERT = DIFF_INSERT;\\ndiff.DELETE = DIFF_DELETE;\\ndiff.EQUAL = DIFF_EQUAL;\\n\\nmodule.exports = diff;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/fast-diff/diff.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/foreach/index.js\":\n/*!***************************************!*\\\n !*** ./node_modules/foreach/index.js ***!\n \\***************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"\\nvar hasOwn = Object.prototype.hasOwnProperty;\\nvar toString = Object.prototype.toString;\\n\\nmodule.exports = function forEach (obj, fn, ctx) {\\n if (toString.call(fn) !== '[object Function]') {\\n throw new TypeError('iterator must be a function');\\n }\\n var l = obj.length;\\n if (l === +l) {\\n for (var i = 0; i < l; i++) {\\n fn.call(ctx, obj[i], i, obj);\\n }\\n } else {\\n for (var k in obj) {\\n if (hasOwn.call(obj, k)) {\\n fn.call(ctx, obj[k], k, obj);\\n }\\n }\\n }\\n};\\n\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/foreach/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/function-bind/implementation.js\":\n/*!******************************************************!*\\\n !*** ./node_modules/function-bind/implementation.js ***!\n \\******************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* eslint no-invalid-this: 1 */\\n\\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\\nvar slice = Array.prototype.slice;\\nvar toStr = Object.prototype.toString;\\nvar funcType = '[object Function]';\\n\\nmodule.exports = function bind(that) {\\n var target = this;\\n if (typeof target !== 'function' || toStr.call(target) !== funcType) {\\n throw new TypeError(ERROR_MESSAGE + target);\\n }\\n var args = slice.call(arguments, 1);\\n\\n var bound;\\n var binder = function () {\\n if (this instanceof bound) {\\n var result = target.apply(\\n this,\\n args.concat(slice.call(arguments))\\n );\\n if (Object(result) === result) {\\n return result;\\n }\\n return this;\\n } else {\\n return target.apply(\\n that,\\n args.concat(slice.call(arguments))\\n );\\n }\\n };\\n\\n var boundLength = Math.max(0, target.length - args.length);\\n var boundArgs = [];\\n for (var i = 0; i < boundLength; i++) {\\n boundArgs.push('$' + i);\\n }\\n\\n bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);\\n\\n if (target.prototype) {\\n var Empty = function Empty() {};\\n Empty.prototype = target.prototype;\\n bound.prototype = new Empty();\\n Empty.prototype = null;\\n }\\n\\n return bound;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/function-bind/implementation.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/function-bind/index.js\":\n/*!*********************************************!*\\\n !*** ./node_modules/function-bind/index.js ***!\n \\*********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar implementation = __webpack_require__(/*! ./implementation */ \\\"./node_modules/function-bind/implementation.js\\\");\\n\\nmodule.exports = Function.prototype.bind || implementation;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/function-bind/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/has-symbols/index.js\":\n/*!*******************************************!*\\\n !*** ./node_modules/has-symbols/index.js ***!\n \\*******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"/* WEBPACK VAR INJECTION */(function(global) {\\n\\nvar origSymbol = global.Symbol;\\nvar hasSymbolSham = __webpack_require__(/*! ./shams */ \\\"./node_modules/has-symbols/shams.js\\\");\\n\\nmodule.exports = function hasNativeSymbols() {\\n\\tif (typeof origSymbol !== 'function') { return false; }\\n\\tif (typeof Symbol !== 'function') { return false; }\\n\\tif (typeof origSymbol('foo') !== 'symbol') { return false; }\\n\\tif (typeof Symbol('bar') !== 'symbol') { return false; }\\n\\n\\treturn hasSymbolSham();\\n};\\n\\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ \\\"./node_modules/webpack/buildin/global.js\\\")))\\n\\n//# sourceURL=webpack://Quill/./node_modules/has-symbols/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/has-symbols/shams.js\":\n/*!*******************************************!*\\\n !*** ./node_modules/has-symbols/shams.js ***!\n \\*******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* eslint complexity: [2, 18], max-statements: [2, 33] */\\nmodule.exports = function hasSymbols() {\\n\\tif (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }\\n\\tif (typeof Symbol.iterator === 'symbol') { return true; }\\n\\n\\tvar obj = {};\\n\\tvar sym = Symbol('test');\\n\\tvar symObj = Object(sym);\\n\\tif (typeof sym === 'string') { return false; }\\n\\n\\tif (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }\\n\\tif (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }\\n\\n\\t// temp disabled per https://github.com/ljharb/object.assign/issues/17\\n\\t// if (sym instanceof Symbol) { return false; }\\n\\t// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4\\n\\t// if (!(symObj instanceof Symbol)) { return false; }\\n\\n\\t// if (typeof Symbol.prototype.toString !== 'function') { return false; }\\n\\t// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }\\n\\n\\tvar symVal = 42;\\n\\tobj[sym] = symVal;\\n\\tfor (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax\\n\\tif (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }\\n\\n\\tif (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }\\n\\n\\tvar syms = Object.getOwnPropertySymbols(obj);\\n\\tif (syms.length !== 1 || syms[0] !== sym) { return false; }\\n\\n\\tif (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }\\n\\n\\tif (typeof Object.getOwnPropertyDescriptor === 'function') {\\n\\t\\tvar descriptor = Object.getOwnPropertyDescriptor(obj, sym);\\n\\t\\tif (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }\\n\\t}\\n\\n\\treturn true;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/has-symbols/shams.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/has/src/index.js\":\n/*!***************************************!*\\\n !*** ./node_modules/has/src/index.js ***!\n \\***************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\n\\nmodule.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/has/src/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-arguments/index.js\":\n/*!********************************************!*\\\n !*** ./node_modules/is-arguments/index.js ***!\n \\********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\nvar toStr = Object.prototype.toString;\\n\\nvar isStandardArguments = function isArguments(value) {\\n\\tif (hasToStringTag && value && typeof value === 'object' && Symbol.toStringTag in value) {\\n\\t\\treturn false;\\n\\t}\\n\\treturn toStr.call(value) === '[object Arguments]';\\n};\\n\\nvar isLegacyArguments = function isArguments(value) {\\n\\tif (isStandardArguments(value)) {\\n\\t\\treturn true;\\n\\t}\\n\\treturn value !== null &&\\n\\t\\ttypeof value === 'object' &&\\n\\t\\ttypeof value.length === 'number' &&\\n\\t\\tvalue.length >= 0 &&\\n\\t\\ttoStr.call(value) !== '[object Array]' &&\\n\\t\\ttoStr.call(value.callee) === '[object Function]';\\n};\\n\\nvar supportsStandardArguments = (function () {\\n\\treturn isStandardArguments(arguments);\\n}());\\n\\nisStandardArguments.isLegacyArguments = isLegacyArguments; // for tests\\n\\nmodule.exports = supportsStandardArguments ? isStandardArguments : isLegacyArguments;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-arguments/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-bigint/index.js\":\n/*!*****************************************!*\\\n !*** ./node_modules/is-bigint/index.js ***!\n \\*****************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nif (typeof BigInt === 'function') {\\n\\tvar bigIntValueOf = BigInt.prototype.valueOf;\\n\\tvar tryBigInt = function tryBigIntObject(value) {\\n\\t\\ttry {\\n\\t\\t\\tbigIntValueOf.call(value);\\n\\t\\t\\treturn true;\\n\\t\\t} catch (e) {\\n\\t\\t}\\n\\t\\treturn false;\\n\\t};\\n\\n\\tmodule.exports = function isBigInt(value) {\\n\\t\\tif (\\n\\t\\t\\tvalue === null\\n\\t\\t\\t|| typeof value === 'undefined'\\n\\t\\t\\t|| typeof value === 'boolean'\\n\\t\\t\\t|| typeof value === 'string'\\n\\t\\t\\t|| typeof value === 'number'\\n\\t\\t\\t|| typeof value === 'symbol'\\n\\t\\t\\t|| typeof value === 'function'\\n\\t\\t) {\\n\\t\\t\\treturn false;\\n\\t\\t}\\n\\t\\tif (typeof value === 'bigint') { // eslint-disable-line valid-typeof\\n\\t\\t\\treturn true;\\n\\t\\t}\\n\\n\\t\\treturn tryBigInt(value);\\n\\t};\\n} else {\\n\\tmodule.exports = function isBigInt(value) {\\n\\t\\treturn false && false;\\n\\t};\\n}\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-bigint/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-boolean-object/index.js\":\n/*!*************************************************!*\\\n !*** ./node_modules/is-boolean-object/index.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar boolToStr = Boolean.prototype.toString;\\n\\nvar tryBooleanObject = function booleanBrandCheck(value) {\\n\\ttry {\\n\\t\\tboolToStr.call(value);\\n\\t\\treturn true;\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t}\\n};\\nvar toStr = Object.prototype.toString;\\nvar boolClass = '[object Boolean]';\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\n\\nmodule.exports = function isBoolean(value) {\\n\\tif (typeof value === 'boolean') {\\n\\t\\treturn true;\\n\\t}\\n\\tif (value === null || typeof value !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\treturn hasToStringTag && Symbol.toStringTag in value ? tryBooleanObject(value) : toStr.call(value) === boolClass;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-boolean-object/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-date-object/index.js\":\n/*!**********************************************!*\\\n !*** ./node_modules/is-date-object/index.js ***!\n \\**********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar getDay = Date.prototype.getDay;\\nvar tryDateObject = function tryDateObject(value) {\\n\\ttry {\\n\\t\\tgetDay.call(value);\\n\\t\\treturn true;\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t}\\n};\\n\\nvar toStr = Object.prototype.toString;\\nvar dateClass = '[object Date]';\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\n\\nmodule.exports = function isDateObject(value) {\\n\\tif (typeof value !== 'object' || value === null) { return false; }\\n\\treturn hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-date-object/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-map/index.js\":\n/*!**************************************!*\\\n !*** ./node_modules/is-map/index.js ***!\n \\**************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar $Map = typeof Map === 'function' && Map.prototype ? Map : null;\\nvar $Set = typeof Set === 'function' && Set.prototype ? Set : null;\\n\\nvar exported;\\n\\nif (!$Map) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\texported = function isMap(x) {\\n\\t\\t// `Map` is not present in this environment.\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nvar $mapHas = $Map ? Map.prototype.has : null;\\nvar $setHas = $Set ? Set.prototype.has : null;\\nif (!exported && !$mapHas) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\texported = function isMap(x) {\\n\\t\\t// `Map` does not have a `has` method\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nmodule.exports = exported || function isMap(x) {\\n\\tif (!x || typeof x !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\ttry {\\n\\t\\t$mapHas.call(x);\\n\\t\\tif ($setHas) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t$setHas.call(x);\\n\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\treturn true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn x instanceof $Map; // core-js workaround, pre-v2.5.0\\n\\t} catch (e) {}\\n\\treturn false;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-map/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-number-object/index.js\":\n/*!************************************************!*\\\n !*** ./node_modules/is-number-object/index.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar numToStr = Number.prototype.toString;\\nvar tryNumberObject = function tryNumberObject(value) {\\n\\ttry {\\n\\t\\tnumToStr.call(value);\\n\\t\\treturn true;\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t}\\n};\\nvar toStr = Object.prototype.toString;\\nvar numClass = '[object Number]';\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\n\\nmodule.exports = function isNumberObject(value) {\\n\\tif (typeof value === 'number') {\\n\\t\\treturn true;\\n\\t}\\n\\tif (typeof value !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\treturn hasToStringTag ? tryNumberObject(value) : toStr.call(value) === numClass;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-number-object/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-regex/index.js\":\n/*!****************************************!*\\\n !*** ./node_modules/is-regex/index.js ***!\n \\****************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar has = __webpack_require__(/*! has */ \\\"./node_modules/has/src/index.js\\\");\\nvar regexExec = RegExp.prototype.exec;\\nvar gOPD = Object.getOwnPropertyDescriptor;\\n\\nvar tryRegexExecCall = function tryRegexExec(value) {\\n\\ttry {\\n\\t\\tvar lastIndex = value.lastIndex;\\n\\t\\tvalue.lastIndex = 0;\\n\\n\\t\\tregexExec.call(value);\\n\\t\\treturn true;\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t} finally {\\n\\t\\tvalue.lastIndex = lastIndex;\\n\\t}\\n};\\nvar toStr = Object.prototype.toString;\\nvar regexClass = '[object RegExp]';\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\n\\nmodule.exports = function isRegex(value) {\\n\\tif (!value || typeof value !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\tif (!hasToStringTag) {\\n\\t\\treturn toStr.call(value) === regexClass;\\n\\t}\\n\\n\\tvar descriptor = gOPD(value, 'lastIndex');\\n\\tvar hasLastIndexDataProperty = descriptor && has(descriptor, 'value');\\n\\tif (!hasLastIndexDataProperty) {\\n\\t\\treturn false;\\n\\t}\\n\\n\\treturn tryRegexExecCall(value);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-regex/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-set/index.js\":\n/*!**************************************!*\\\n !*** ./node_modules/is-set/index.js ***!\n \\**************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar $Map = typeof Map === 'function' && Map.prototype ? Map : null;\\nvar $Set = typeof Set === 'function' && Set.prototype ? Set : null;\\n\\nvar exported;\\n\\nif (!$Set) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\texported = function isSet(x) {\\n\\t\\t// `Set` is not present in this environment.\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nvar $mapHas = $Map ? Map.prototype.has : null;\\nvar $setHas = $Set ? Set.prototype.has : null;\\nif (!exported && !$setHas) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\texported = function isSet(x) {\\n\\t\\t// `Set` does not have a `has` method\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nmodule.exports = exported || function isSet(x) {\\n\\tif (!x || typeof x !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\ttry {\\n\\t\\t$setHas.call(x);\\n\\t\\tif ($mapHas) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t$mapHas.call(x);\\n\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\treturn true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn x instanceof $Set; // core-js workaround, pre-v2.5.0\\n\\t} catch (e) {}\\n\\treturn false;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-set/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-string/index.js\":\n/*!*****************************************!*\\\n !*** ./node_modules/is-string/index.js ***!\n \\*****************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar strValue = String.prototype.valueOf;\\nvar tryStringObject = function tryStringObject(value) {\\n\\ttry {\\n\\t\\tstrValue.call(value);\\n\\t\\treturn true;\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t}\\n};\\nvar toStr = Object.prototype.toString;\\nvar strClass = '[object String]';\\nvar hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';\\n\\nmodule.exports = function isString(value) {\\n\\tif (typeof value === 'string') {\\n\\t\\treturn true;\\n\\t}\\n\\tif (typeof value !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\treturn hasToStringTag ? tryStringObject(value) : toStr.call(value) === strClass;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-string/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-typed-array/index.js\":\n/*!**********************************************!*\\\n !*** ./node_modules/is-typed-array/index.js ***!\n \\**********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"/* WEBPACK VAR INJECTION */(function(global) {\\n\\nvar forEach = __webpack_require__(/*! foreach */ \\\"./node_modules/foreach/index.js\\\");\\nvar availableTypedArrays = __webpack_require__(/*! available-typed-arrays */ \\\"./node_modules/available-typed-arrays/index.js\\\");\\nvar callBound = __webpack_require__(/*! es-abstract/helpers/callBound */ \\\"./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBound.js\\\");\\n\\nvar $toString = callBound('Object.prototype.toString');\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\nvar hasToStringTag = hasSymbols && typeof Symbol.toStringTag === 'symbol';\\n\\nvar typedArrays = availableTypedArrays();\\n\\nvar $indexOf = callBound('Array.prototype.indexOf', true) || function indexOf(array, value) {\\n\\tfor (var i = 0; i < array.length; i += 1) {\\n\\t\\tif (array[i] === value) {\\n\\t\\t\\treturn i;\\n\\t\\t}\\n\\t}\\n\\treturn -1;\\n};\\nvar $slice = callBound('String.prototype.slice');\\nvar toStrTags = {};\\nvar gOPD = __webpack_require__(/*! es-abstract/helpers/getOwnPropertyDescriptor */ \\\"./node_modules/is-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js\\\");\\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\\nif (hasToStringTag && gOPD && getPrototypeOf) {\\n\\tforEach(typedArrays, function (typedArray) {\\n\\t\\tvar arr = new global[typedArray]();\\n\\t\\tif (!(Symbol.toStringTag in arr)) {\\n\\t\\t\\tthrow new EvalError('this engine has support for Symbol.toStringTag, but ' + typedArray + ' does not have the property! Please report this.');\\n\\t\\t}\\n\\t\\tvar proto = getPrototypeOf(arr);\\n\\t\\tvar descriptor = gOPD(proto, Symbol.toStringTag);\\n\\t\\tif (!descriptor) {\\n\\t\\t\\tvar superProto = getPrototypeOf(proto);\\n\\t\\t\\tdescriptor = gOPD(superProto, Symbol.toStringTag);\\n\\t\\t}\\n\\t\\ttoStrTags[typedArray] = descriptor.get;\\n\\t});\\n}\\n\\nvar tryTypedArrays = function tryAllTypedArrays(value) {\\n\\tvar anyTrue = false;\\n\\tforEach(toStrTags, function (getter, typedArray) {\\n\\t\\tif (!anyTrue) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\tanyTrue = getter.call(value) === typedArray;\\n\\t\\t\\t} catch (e) { /**/ }\\n\\t\\t}\\n\\t});\\n\\treturn anyTrue;\\n};\\n\\nmodule.exports = function isTypedArray(value) {\\n\\tif (!value || typeof value !== 'object') { return false; }\\n\\tif (!hasToStringTag) {\\n\\t\\tvar tag = $slice($toString(value), 8, -1);\\n\\t\\treturn $indexOf(typedArrays, tag) > -1;\\n\\t}\\n\\tif (!gOPD) { return false; }\\n\\treturn tryTypedArrays(value);\\n};\\n\\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ \\\"./node_modules/webpack/buildin/global.js\\\")))\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-typed-array/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-typed-array/node_modules/es-abstract/GetIntrinsic.js\":\n/*!******************************************************************************!*\\\n !*** ./node_modules/is-typed-array/node_modules/es-abstract/GetIntrinsic.js ***!\n \\******************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* globals\\n\\tAtomics,\\n\\tSharedArrayBuffer,\\n*/\\n\\nvar undefined;\\n\\nvar $TypeError = TypeError;\\n\\nvar $gOPD = Object.getOwnPropertyDescriptor;\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD({}, '');\\n\\t} catch (e) {\\n\\t\\t$gOPD = null; // this is IE 8, which has a broken gOPD\\n\\t}\\n}\\n\\nvar throwTypeError = function () { throw new $TypeError(); };\\nvar ThrowTypeError = $gOPD\\n\\t? (function () {\\n\\t\\ttry {\\n\\t\\t\\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\\n\\t\\t\\targuments.callee; // IE 8 does not throw here\\n\\t\\t\\treturn throwTypeError;\\n\\t\\t} catch (calleeThrows) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\\n\\t\\t\\t\\treturn $gOPD(arguments, 'callee').get;\\n\\t\\t\\t} catch (gOPDthrows) {\\n\\t\\t\\t\\treturn throwTypeError;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}())\\n\\t: throwTypeError;\\n\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\n\\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\\n\\nvar generator; // = function * () {};\\nvar generatorFunction = generator ? getProto(generator) : undefined;\\nvar asyncFn; // async function() {};\\nvar asyncFunction = asyncFn ? asyncFn.constructor : undefined;\\nvar asyncGen; // async function * () {};\\nvar asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;\\nvar asyncGenIterator = asyncGen ? asyncGen() : undefined;\\n\\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\\n\\nvar INTRINSICS = {\\n\\t'%Array%': Array,\\n\\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\\n\\t'%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,\\n\\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\\n\\t'%ArrayPrototype%': Array.prototype,\\n\\t'%ArrayProto_entries%': Array.prototype.entries,\\n\\t'%ArrayProto_forEach%': Array.prototype.forEach,\\n\\t'%ArrayProto_keys%': Array.prototype.keys,\\n\\t'%ArrayProto_values%': Array.prototype.values,\\n\\t'%AsyncFromSyncIteratorPrototype%': undefined,\\n\\t'%AsyncFunction%': asyncFunction,\\n\\t'%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,\\n\\t'%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,\\n\\t'%AsyncGeneratorFunction%': asyncGenFunction,\\n\\t'%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,\\n\\t'%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,\\n\\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\\n\\t'%Boolean%': Boolean,\\n\\t'%BooleanPrototype%': Boolean.prototype,\\n\\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\\n\\t'%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,\\n\\t'%Date%': Date,\\n\\t'%DatePrototype%': Date.prototype,\\n\\t'%decodeURI%': decodeURI,\\n\\t'%decodeURIComponent%': decodeURIComponent,\\n\\t'%encodeURI%': encodeURI,\\n\\t'%encodeURIComponent%': encodeURIComponent,\\n\\t'%Error%': Error,\\n\\t'%ErrorPrototype%': Error.prototype,\\n\\t'%eval%': eval, // eslint-disable-line no-eval\\n\\t'%EvalError%': EvalError,\\n\\t'%EvalErrorPrototype%': EvalError.prototype,\\n\\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\\n\\t'%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,\\n\\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\\n\\t'%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,\\n\\t'%Function%': Function,\\n\\t'%FunctionPrototype%': Function.prototype,\\n\\t'%Generator%': generator ? getProto(generator()) : undefined,\\n\\t'%GeneratorFunction%': generatorFunction,\\n\\t'%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,\\n\\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\\n\\t'%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\\n\\t'%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\\n\\t'%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,\\n\\t'%isFinite%': isFinite,\\n\\t'%isNaN%': isNaN,\\n\\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\\n\\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\\n\\t'%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,\\n\\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\\n\\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\\n\\t'%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,\\n\\t'%Math%': Math,\\n\\t'%Number%': Number,\\n\\t'%NumberPrototype%': Number.prototype,\\n\\t'%Object%': Object,\\n\\t'%ObjectPrototype%': Object.prototype,\\n\\t'%ObjProto_toString%': Object.prototype.toString,\\n\\t'%ObjProto_valueOf%': Object.prototype.valueOf,\\n\\t'%parseFloat%': parseFloat,\\n\\t'%parseInt%': parseInt,\\n\\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\\n\\t'%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,\\n\\t'%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,\\n\\t'%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,\\n\\t'%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,\\n\\t'%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,\\n\\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\\n\\t'%RangeError%': RangeError,\\n\\t'%RangeErrorPrototype%': RangeError.prototype,\\n\\t'%ReferenceError%': ReferenceError,\\n\\t'%ReferenceErrorPrototype%': ReferenceError.prototype,\\n\\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\\n\\t'%RegExp%': RegExp,\\n\\t'%RegExpPrototype%': RegExp.prototype,\\n\\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\\n\\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\\n\\t'%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,\\n\\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\\n\\t'%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,\\n\\t'%String%': String,\\n\\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\\n\\t'%StringPrototype%': String.prototype,\\n\\t'%Symbol%': hasSymbols ? Symbol : undefined,\\n\\t'%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,\\n\\t'%SyntaxError%': SyntaxError,\\n\\t'%SyntaxErrorPrototype%': SyntaxError.prototype,\\n\\t'%ThrowTypeError%': ThrowTypeError,\\n\\t'%TypedArray%': TypedArray,\\n\\t'%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,\\n\\t'%TypeError%': $TypeError,\\n\\t'%TypeErrorPrototype%': $TypeError.prototype,\\n\\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\\n\\t'%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,\\n\\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\\n\\t'%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,\\n\\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\\n\\t'%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,\\n\\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\\n\\t'%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,\\n\\t'%URIError%': URIError,\\n\\t'%URIErrorPrototype%': URIError.prototype,\\n\\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\\n\\t'%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,\\n\\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,\\n\\t'%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype\\n};\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\nvar $replace = bind.call(Function.call, String.prototype.replace);\\n\\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\\nvar rePropName = /[^%.[\\\\]]+|\\\\[(?:(-?\\\\d+(?:\\\\.\\\\d+)?)|([\\\"'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2)\\\\]|(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|%$))/g;\\nvar reEscapeChar = /\\\\\\\\(\\\\\\\\)?/g; /** Used to match backslashes in property paths. */\\nvar stringToPath = function stringToPath(string) {\\n\\tvar result = [];\\n\\t$replace(string, rePropName, function (match, number, quote, subString) {\\n\\t\\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);\\n\\t});\\n\\treturn result;\\n};\\n/* end adaptation */\\n\\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\\n\\tif (!(name in INTRINSICS)) {\\n\\t\\tthrow new SyntaxError('intrinsic ' + name + ' does not exist!');\\n\\t}\\n\\n\\t// istanbul ignore if // hopefully this is impossible to test :-)\\n\\tif (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {\\n\\t\\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\\n\\t}\\n\\n\\treturn INTRINSICS[name];\\n};\\n\\nmodule.exports = function GetIntrinsic(name, allowMissing) {\\n\\tif (typeof name !== 'string' || name.length === 0) {\\n\\t\\tthrow new TypeError('intrinsic name must be a non-empty string');\\n\\t}\\n\\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\\n\\t\\tthrow new TypeError('\\\"allowMissing\\\" argument must be a boolean');\\n\\t}\\n\\n\\tvar parts = stringToPath(name);\\n\\n\\tvar value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);\\n\\tfor (var i = 1; i < parts.length; i += 1) {\\n\\t\\tif (value != null) {\\n\\t\\t\\tif ($gOPD && (i + 1) >= parts.length) {\\n\\t\\t\\t\\tvar desc = $gOPD(value, parts[i]);\\n\\t\\t\\t\\tif (!allowMissing && !(parts[i] in value)) {\\n\\t\\t\\t\\t\\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tvalue = desc ? (desc.get || desc.value) : value[parts[i]];\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tvalue = value[parts[i]];\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn value;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-typed-array/node_modules/es-abstract/GetIntrinsic.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBind.js\":\n/*!**********************************************************************************!*\\\n !*** ./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBind.js ***!\n \\**********************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/is-typed-array/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $Function = GetIntrinsic('%Function%');\\nvar $apply = $Function.apply;\\nvar $call = $Function.call;\\n\\nmodule.exports = function callBind() {\\n\\treturn bind.apply($call, arguments);\\n};\\n\\nmodule.exports.apply = function applyBind() {\\n\\treturn bind.apply($apply, arguments);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBind.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBound.js\":\n/*!***********************************************************************************!*\\\n !*** ./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBound.js ***!\n \\***********************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/is-typed-array/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar callBind = __webpack_require__(/*! ./callBind */ \\\"./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBind.js\\\");\\n\\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\\n\\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\\n\\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\\n\\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.')) {\\n\\t\\treturn callBind(intrinsic);\\n\\t}\\n\\treturn intrinsic;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBound.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js\":\n/*!**************************************************************************************************!*\\\n !*** ./node_modules/is-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js ***!\n \\**************************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/is-typed-array/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%');\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD([], 'length');\\n\\t} catch (e) {\\n\\t\\t// IE 8 has a broken gOPD\\n\\t\\t$gOPD = null;\\n\\t}\\n}\\n\\nmodule.exports = $gOPD;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-weakmap/index.js\":\n/*!******************************************!*\\\n !*** ./node_modules/is-weakmap/index.js ***!\n \\******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar $WeakMap = typeof WeakMap === 'function' && WeakMap.prototype ? WeakMap : null;\\nvar $WeakSet = typeof WeakSet === 'function' && WeakSet.prototype ? WeakSet : null;\\n\\nvar exported;\\n\\nif (!$WeakMap) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\texported = function isWeakMap(x) {\\n\\t\\t// `WeakMap` is not present in this environment.\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nvar $mapHas = $WeakMap ? $WeakMap.prototype.has : null;\\nvar $setHas = $WeakSet ? $WeakSet.prototype.has : null;\\nif (!exported && !$mapHas) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\texported = function isWeakMap(x) {\\n\\t\\t// `WeakMap` does not have a `has` method\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nmodule.exports = exported || function isWeakMap(x) {\\n\\tif (!x || typeof x !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\ttry {\\n\\t\\t$mapHas.call(x, $mapHas);\\n\\t\\tif ($setHas) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t$setHas.call(x, $setHas);\\n\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\treturn true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn x instanceof $WeakMap; // core-js workaround, pre-v3\\n\\t} catch (e) {}\\n\\treturn false;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-weakmap/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/is-weakset/index.js\":\n/*!******************************************!*\\\n !*** ./node_modules/is-weakset/index.js ***!\n \\******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar $WeakMap = typeof WeakMap === 'function' && WeakMap.prototype ? WeakMap : null;\\nvar $WeakSet = typeof WeakSet === 'function' && WeakSet.prototype ? WeakSet : null;\\n\\nvar exported;\\n\\nif (!$WeakMap) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\texported = function isWeakSet(x) {\\n\\t\\t// `WeakSet` is not present in this environment.\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nvar $mapHas = $WeakMap ? $WeakMap.prototype.has : null;\\nvar $setHas = $WeakSet ? $WeakSet.prototype.has : null;\\nif (!exported && !$setHas) {\\n\\t// eslint-disable-next-line no-unused-vars\\n\\tmodule.exports = function isWeakSet(x) {\\n\\t\\t// `WeakSet` does not have a `has` method\\n\\t\\treturn false;\\n\\t};\\n}\\n\\nmodule.exports = exported || function isWeakSet(x) {\\n\\tif (!x || typeof x !== 'object') {\\n\\t\\treturn false;\\n\\t}\\n\\ttry {\\n\\t\\t$setHas.call(x, $setHas);\\n\\t\\tif ($mapHas) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t$mapHas.call(x, $mapHas);\\n\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\treturn true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn x instanceof $WeakSet; // core-js workaround, pre-v3\\n\\t} catch (e) {}\\n\\treturn false;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/is-weakset/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object-inspect/index.js\":\n/*!**********************************************!*\\\n !*** ./node_modules/object-inspect/index.js ***!\n \\**********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\neval(\"var hasMap = typeof Map === 'function' && Map.prototype;\\nvar mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;\\nvar mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;\\nvar mapForEach = hasMap && Map.prototype.forEach;\\nvar hasSet = typeof Set === 'function' && Set.prototype;\\nvar setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;\\nvar setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;\\nvar setForEach = hasSet && Set.prototype.forEach;\\nvar hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;\\nvar weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;\\nvar hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;\\nvar weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;\\nvar booleanValueOf = Boolean.prototype.valueOf;\\nvar objectToString = Object.prototype.toString;\\nvar match = String.prototype.match;\\nvar bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;\\n\\nvar inspectCustom = __webpack_require__(/*! ./util.inspect */ 1).custom;\\nvar inspectSymbol = inspectCustom && isSymbol(inspectCustom) ? inspectCustom : null;\\n\\nmodule.exports = function inspect_(obj, options, depth, seen) {\\n var opts = options || {};\\n\\n if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {\\n throw new TypeError('option \\\"quoteStyle\\\" must be \\\"single\\\" or \\\"double\\\"');\\n }\\n\\n if (typeof obj === 'undefined') {\\n return 'undefined';\\n }\\n if (obj === null) {\\n return 'null';\\n }\\n if (typeof obj === 'boolean') {\\n return obj ? 'true' : 'false';\\n }\\n\\n if (typeof obj === 'string') {\\n return inspectString(obj, opts);\\n }\\n if (typeof obj === 'number') {\\n if (obj === 0) {\\n return Infinity / obj > 0 ? '0' : '-0';\\n }\\n return String(obj);\\n }\\n if (typeof obj === 'bigint') { // eslint-disable-line valid-typeof\\n return String(obj) + 'n';\\n }\\n\\n var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;\\n if (typeof depth === 'undefined') { depth = 0; }\\n if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {\\n return '[Object]';\\n }\\n\\n if (typeof seen === 'undefined') {\\n seen = [];\\n } else if (indexOf(seen, obj) >= 0) {\\n return '[Circular]';\\n }\\n\\n function inspect(value, from) {\\n if (from) {\\n seen = seen.slice();\\n seen.push(from);\\n }\\n return inspect_(value, opts, depth + 1, seen);\\n }\\n\\n if (typeof obj === 'function') {\\n var name = nameOf(obj);\\n return '[Function' + (name ? ': ' + name : '') + ']';\\n }\\n if (isSymbol(obj)) {\\n var symString = Symbol.prototype.toString.call(obj);\\n return typeof obj === 'object' ? markBoxed(symString) : symString;\\n }\\n if (isElement(obj)) {\\n var s = '<' + String(obj.nodeName).toLowerCase();\\n var attrs = obj.attributes || [];\\n for (var i = 0; i < attrs.length; i++) {\\n s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);\\n }\\n s += '>';\\n if (obj.childNodes && obj.childNodes.length) { s += '...'; }\\n s += '';\\n return s;\\n }\\n if (isArray(obj)) {\\n if (obj.length === 0) { return '[]'; }\\n return '[ ' + arrObjKeys(obj, inspect).join(', ') + ' ]';\\n }\\n if (isError(obj)) {\\n var parts = arrObjKeys(obj, inspect);\\n if (parts.length === 0) { return '[' + String(obj) + ']'; }\\n return '{ [' + String(obj) + '] ' + parts.join(', ') + ' }';\\n }\\n if (typeof obj === 'object') {\\n if (inspectSymbol && typeof obj[inspectSymbol] === 'function') {\\n return obj[inspectSymbol]();\\n } else if (typeof obj.inspect === 'function') {\\n return obj.inspect();\\n }\\n }\\n if (isMap(obj)) {\\n var mapParts = [];\\n mapForEach.call(obj, function (value, key) {\\n mapParts.push(inspect(key, obj) + ' => ' + inspect(value, obj));\\n });\\n return collectionOf('Map', mapSize.call(obj), mapParts);\\n }\\n if (isSet(obj)) {\\n var setParts = [];\\n setForEach.call(obj, function (value) {\\n setParts.push(inspect(value, obj));\\n });\\n return collectionOf('Set', setSize.call(obj), setParts);\\n }\\n if (isWeakMap(obj)) {\\n return weakCollectionOf('WeakMap');\\n }\\n if (isWeakSet(obj)) {\\n return weakCollectionOf('WeakSet');\\n }\\n if (isNumber(obj)) {\\n return markBoxed(inspect(Number(obj)));\\n }\\n if (isBigInt(obj)) {\\n return markBoxed(inspect(bigIntValueOf.call(obj)));\\n }\\n if (isBoolean(obj)) {\\n return markBoxed(booleanValueOf.call(obj));\\n }\\n if (isString(obj)) {\\n return markBoxed(inspect(String(obj)));\\n }\\n if (!isDate(obj) && !isRegExp(obj)) {\\n var xs = arrObjKeys(obj, inspect);\\n if (xs.length === 0) { return '{}'; }\\n return '{ ' + xs.join(', ') + ' }';\\n }\\n return String(obj);\\n};\\n\\nfunction wrapQuotes(s, defaultStyle, opts) {\\n var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '\\\"' : \\\"'\\\";\\n return quoteChar + s + quoteChar;\\n}\\n\\nfunction quote(s) {\\n return String(s).replace(/\\\"/g, '"');\\n}\\n\\nfunction isArray(obj) { return toStr(obj) === '[object Array]'; }\\nfunction isDate(obj) { return toStr(obj) === '[object Date]'; }\\nfunction isRegExp(obj) { return toStr(obj) === '[object RegExp]'; }\\nfunction isError(obj) { return toStr(obj) === '[object Error]'; }\\nfunction isSymbol(obj) { return toStr(obj) === '[object Symbol]'; }\\nfunction isString(obj) { return toStr(obj) === '[object String]'; }\\nfunction isNumber(obj) { return toStr(obj) === '[object Number]'; }\\nfunction isBigInt(obj) { return toStr(obj) === '[object BigInt]'; }\\nfunction isBoolean(obj) { return toStr(obj) === '[object Boolean]'; }\\n\\nvar hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };\\nfunction has(obj, key) {\\n return hasOwn.call(obj, key);\\n}\\n\\nfunction toStr(obj) {\\n return objectToString.call(obj);\\n}\\n\\nfunction nameOf(f) {\\n if (f.name) { return f.name; }\\n var m = match.call(f, /^function\\\\s*([\\\\w$]+)/);\\n if (m) { return m[1]; }\\n return null;\\n}\\n\\nfunction indexOf(xs, x) {\\n if (xs.indexOf) { return xs.indexOf(x); }\\n for (var i = 0, l = xs.length; i < l; i++) {\\n if (xs[i] === x) { return i; }\\n }\\n return -1;\\n}\\n\\nfunction isMap(x) {\\n if (!mapSize || !x || typeof x !== 'object') {\\n return false;\\n }\\n try {\\n mapSize.call(x);\\n try {\\n setSize.call(x);\\n } catch (s) {\\n return true;\\n }\\n return x instanceof Map; // core-js workaround, pre-v2.5.0\\n } catch (e) {}\\n return false;\\n}\\n\\nfunction isWeakMap(x) {\\n if (!weakMapHas || !x || typeof x !== 'object') {\\n return false;\\n }\\n try {\\n weakMapHas.call(x, weakMapHas);\\n try {\\n weakSetHas.call(x, weakSetHas);\\n } catch (s) {\\n return true;\\n }\\n return x instanceof WeakMap; // core-js workaround, pre-v2.5.0\\n } catch (e) {}\\n return false;\\n}\\n\\nfunction isSet(x) {\\n if (!setSize || !x || typeof x !== 'object') {\\n return false;\\n }\\n try {\\n setSize.call(x);\\n try {\\n mapSize.call(x);\\n } catch (m) {\\n return true;\\n }\\n return x instanceof Set; // core-js workaround, pre-v2.5.0\\n } catch (e) {}\\n return false;\\n}\\n\\nfunction isWeakSet(x) {\\n if (!weakSetHas || !x || typeof x !== 'object') {\\n return false;\\n }\\n try {\\n weakSetHas.call(x, weakSetHas);\\n try {\\n weakMapHas.call(x, weakMapHas);\\n } catch (s) {\\n return true;\\n }\\n return x instanceof WeakSet; // core-js workaround, pre-v2.5.0\\n } catch (e) {}\\n return false;\\n}\\n\\nfunction isElement(x) {\\n if (!x || typeof x !== 'object') { return false; }\\n if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {\\n return true;\\n }\\n return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';\\n}\\n\\nfunction inspectString(str, opts) {\\n // eslint-disable-next-line no-control-regex\\n var s = str.replace(/(['\\\\\\\\])/g, '\\\\\\\\$1').replace(/[\\\\x00-\\\\x1f]/g, lowbyte);\\n return wrapQuotes(s, 'single', opts);\\n}\\n\\nfunction lowbyte(c) {\\n var n = c.charCodeAt(0);\\n var x = {\\n 8: 'b', 9: 't', 10: 'n', 12: 'f', 13: 'r'\\n }[n];\\n if (x) { return '\\\\\\\\' + x; }\\n return '\\\\\\\\x' + (n < 0x10 ? '0' : '') + n.toString(16);\\n}\\n\\nfunction markBoxed(str) {\\n return 'Object(' + str + ')';\\n}\\n\\nfunction weakCollectionOf(type) {\\n return type + ' { ? }';\\n}\\n\\nfunction collectionOf(type, size, entries) {\\n return type + ' (' + size + ') {' + entries.join(', ') + '}';\\n}\\n\\nfunction arrObjKeys(obj, inspect) {\\n var isArr = isArray(obj);\\n var xs = [];\\n if (isArr) {\\n xs.length = obj.length;\\n for (var i = 0; i < obj.length; i++) {\\n xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';\\n }\\n }\\n for (var key in obj) { // eslint-disable-line no-restricted-syntax\\n if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\\n if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue\\n if ((/[^\\\\w$]/).test(key)) {\\n xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));\\n } else {\\n xs.push(key + ': ' + inspect(obj[key], obj));\\n }\\n }\\n return xs;\\n}\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object-inspect/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object-is/index.js\":\n/*!*****************************************!*\\\n !*** ./node_modules/object-is/index.js ***!\n \\*****************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n// http://www.ecma-international.org/ecma-262/6.0/#sec-object.is\\n\\nvar numberIsNaN = function (value) {\\n\\treturn value !== value;\\n};\\n\\nmodule.exports = function is(a, b) {\\n\\tif (a === 0 && b === 0) {\\n\\t\\treturn 1 / a === 1 / b;\\n\\t}\\n\\tif (a === b) {\\n\\t\\treturn true;\\n\\t}\\n\\tif (numberIsNaN(a) && numberIsNaN(b)) {\\n\\t\\treturn true;\\n\\t}\\n\\treturn false;\\n};\\n\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object-is/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object-keys/index.js\":\n/*!*******************************************!*\\\n !*** ./node_modules/object-keys/index.js ***!\n \\*******************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n// modified from https://github.com/es-shims/es5-shim\\nvar has = Object.prototype.hasOwnProperty;\\nvar toStr = Object.prototype.toString;\\nvar slice = Array.prototype.slice;\\nvar isArgs = __webpack_require__(/*! ./isArguments */ \\\"./node_modules/object-keys/isArguments.js\\\");\\nvar isEnumerable = Object.prototype.propertyIsEnumerable;\\nvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\\nvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\\nvar dontEnums = [\\n\\t'toString',\\n\\t'toLocaleString',\\n\\t'valueOf',\\n\\t'hasOwnProperty',\\n\\t'isPrototypeOf',\\n\\t'propertyIsEnumerable',\\n\\t'constructor'\\n];\\nvar equalsConstructorPrototype = function (o) {\\n\\tvar ctor = o.constructor;\\n\\treturn ctor && ctor.prototype === o;\\n};\\nvar excludedKeys = {\\n\\t$applicationCache: true,\\n\\t$console: true,\\n\\t$external: true,\\n\\t$frame: true,\\n\\t$frameElement: true,\\n\\t$frames: true,\\n\\t$innerHeight: true,\\n\\t$innerWidth: true,\\n\\t$outerHeight: true,\\n\\t$outerWidth: true,\\n\\t$pageXOffset: true,\\n\\t$pageYOffset: true,\\n\\t$parent: true,\\n\\t$scrollLeft: true,\\n\\t$scrollTop: true,\\n\\t$scrollX: true,\\n\\t$scrollY: true,\\n\\t$self: true,\\n\\t$webkitIndexedDB: true,\\n\\t$webkitStorageInfo: true,\\n\\t$window: true\\n};\\nvar hasAutomationEqualityBug = (function () {\\n\\t/* global window */\\n\\tif (typeof window === 'undefined') { return false; }\\n\\tfor (var k in window) {\\n\\t\\ttry {\\n\\t\\t\\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\\n\\t\\t\\t\\ttry {\\n\\t\\t\\t\\t\\tequalsConstructorPrototype(window[k]);\\n\\t\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\t\\treturn true;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t} catch (e) {\\n\\t\\t\\treturn true;\\n\\t\\t}\\n\\t}\\n\\treturn false;\\n}());\\nvar equalsConstructorPrototypeIfNotBuggy = function (o) {\\n\\t/* global window */\\n\\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\\n\\t\\treturn equalsConstructorPrototype(o);\\n\\t}\\n\\ttry {\\n\\t\\treturn equalsConstructorPrototype(o);\\n\\t} catch (e) {\\n\\t\\treturn false;\\n\\t}\\n};\\n\\nvar keysShim = function keys(object) {\\n\\tvar isObject = object !== null && typeof object === 'object';\\n\\tvar isFunction = toStr.call(object) === '[object Function]';\\n\\tvar isArguments = isArgs(object);\\n\\tvar isString = isObject && toStr.call(object) === '[object String]';\\n\\tvar theKeys = [];\\n\\n\\tif (!isObject && !isFunction && !isArguments) {\\n\\t\\tthrow new TypeError('Object.keys called on a non-object');\\n\\t}\\n\\n\\tvar skipProto = hasProtoEnumBug && isFunction;\\n\\tif (isString && object.length > 0 && !has.call(object, 0)) {\\n\\t\\tfor (var i = 0; i < object.length; ++i) {\\n\\t\\t\\ttheKeys.push(String(i));\\n\\t\\t}\\n\\t}\\n\\n\\tif (isArguments && object.length > 0) {\\n\\t\\tfor (var j = 0; j < object.length; ++j) {\\n\\t\\t\\ttheKeys.push(String(j));\\n\\t\\t}\\n\\t} else {\\n\\t\\tfor (var name in object) {\\n\\t\\t\\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\\n\\t\\t\\t\\ttheKeys.push(String(name));\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\tif (hasDontEnumBug) {\\n\\t\\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\\n\\n\\t\\tfor (var k = 0; k < dontEnums.length; ++k) {\\n\\t\\t\\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\\n\\t\\t\\t\\ttheKeys.push(dontEnums[k]);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn theKeys;\\n};\\n\\nkeysShim.shim = function shimObjectKeys() {\\n\\tif (Object.keys) {\\n\\t\\tvar keysWorksWithArguments = (function () {\\n\\t\\t\\t// Safari 5.0 bug\\n\\t\\t\\treturn (Object.keys(arguments) || '').length === 2;\\n\\t\\t}(1, 2));\\n\\t\\tif (!keysWorksWithArguments) {\\n\\t\\t\\tvar originalKeys = Object.keys;\\n\\t\\t\\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\\n\\t\\t\\t\\tif (isArgs(object)) {\\n\\t\\t\\t\\t\\treturn originalKeys(slice.call(object));\\n\\t\\t\\t\\t} else {\\n\\t\\t\\t\\t\\treturn originalKeys(object);\\n\\t\\t\\t\\t}\\n\\t\\t\\t};\\n\\t\\t}\\n\\t} else {\\n\\t\\tObject.keys = keysShim;\\n\\t}\\n\\treturn Object.keys || keysShim;\\n};\\n\\nmodule.exports = keysShim;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object-keys/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object-keys/isArguments.js\":\n/*!*************************************************!*\\\n !*** ./node_modules/object-keys/isArguments.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar toStr = Object.prototype.toString;\\n\\nmodule.exports = function isArguments(value) {\\n\\tvar str = toStr.call(value);\\n\\tvar isArgs = str === '[object Arguments]';\\n\\tif (!isArgs) {\\n\\t\\tisArgs = str !== '[object Array]' &&\\n\\t\\t\\tvalue !== null &&\\n\\t\\t\\ttypeof value === 'object' &&\\n\\t\\t\\ttypeof value.length === 'number' &&\\n\\t\\t\\tvalue.length >= 0 &&\\n\\t\\t\\ttoStr.call(value.callee) === '[object Function]';\\n\\t}\\n\\treturn isArgs;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object-keys/isArguments.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object.assign/implementation.js\":\n/*!******************************************************!*\\\n !*** ./node_modules/object.assign/implementation.js ***!\n \\******************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n// modified from https://github.com/es-shims/es6-shim\\nvar keys = __webpack_require__(/*! object-keys */ \\\"./node_modules/object-keys/index.js\\\");\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\nvar canBeObject = function (obj) {\\n\\treturn typeof obj !== 'undefined' && obj !== null;\\n};\\nvar hasSymbols = __webpack_require__(/*! has-symbols/shams */ \\\"./node_modules/has-symbols/shams.js\\\")();\\nvar toObject = Object;\\nvar push = bind.call(Function.call, Array.prototype.push);\\nvar propIsEnumerable = bind.call(Function.call, Object.prototype.propertyIsEnumerable);\\nvar originalGetSymbols = hasSymbols ? Object.getOwnPropertySymbols : null;\\n\\nmodule.exports = function assign(target, source1) {\\n\\tif (!canBeObject(target)) { throw new TypeError('target must be an object'); }\\n\\tvar objTarget = toObject(target);\\n\\tvar s, source, i, props, syms, value, key;\\n\\tfor (s = 1; s < arguments.length; ++s) {\\n\\t\\tsource = toObject(arguments[s]);\\n\\t\\tprops = keys(source);\\n\\t\\tvar getSymbols = hasSymbols && (Object.getOwnPropertySymbols || originalGetSymbols);\\n\\t\\tif (getSymbols) {\\n\\t\\t\\tsyms = getSymbols(source);\\n\\t\\t\\tfor (i = 0; i < syms.length; ++i) {\\n\\t\\t\\t\\tkey = syms[i];\\n\\t\\t\\t\\tif (propIsEnumerable(source, key)) {\\n\\t\\t\\t\\t\\tpush(props, key);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\tfor (i = 0; i < props.length; ++i) {\\n\\t\\t\\tkey = props[i];\\n\\t\\t\\tvalue = source[key];\\n\\t\\t\\tif (propIsEnumerable(source, key)) {\\n\\t\\t\\t\\tobjTarget[key] = value;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn objTarget;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object.assign/implementation.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object.assign/index.js\":\n/*!*********************************************!*\\\n !*** ./node_modules/object.assign/index.js ***!\n \\*********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar defineProperties = __webpack_require__(/*! define-properties */ \\\"./node_modules/define-properties/index.js\\\");\\n\\nvar implementation = __webpack_require__(/*! ./implementation */ \\\"./node_modules/object.assign/implementation.js\\\");\\nvar getPolyfill = __webpack_require__(/*! ./polyfill */ \\\"./node_modules/object.assign/polyfill.js\\\");\\nvar shim = __webpack_require__(/*! ./shim */ \\\"./node_modules/object.assign/shim.js\\\");\\n\\nvar polyfill = getPolyfill();\\n\\ndefineProperties(polyfill, {\\n\\tgetPolyfill: getPolyfill,\\n\\timplementation: implementation,\\n\\tshim: shim\\n});\\n\\nmodule.exports = polyfill;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object.assign/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object.assign/polyfill.js\":\n/*!************************************************!*\\\n !*** ./node_modules/object.assign/polyfill.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar implementation = __webpack_require__(/*! ./implementation */ \\\"./node_modules/object.assign/implementation.js\\\");\\n\\nvar lacksProperEnumerationOrder = function () {\\n\\tif (!Object.assign) {\\n\\t\\treturn false;\\n\\t}\\n\\t// v8, specifically in node 4.x, has a bug with incorrect property enumeration order\\n\\t// note: this does not detect the bug unless there's 20 characters\\n\\tvar str = 'abcdefghijklmnopqrst';\\n\\tvar letters = str.split('');\\n\\tvar map = {};\\n\\tfor (var i = 0; i < letters.length; ++i) {\\n\\t\\tmap[letters[i]] = letters[i];\\n\\t}\\n\\tvar obj = Object.assign({}, map);\\n\\tvar actual = '';\\n\\tfor (var k in obj) {\\n\\t\\tactual += k;\\n\\t}\\n\\treturn str !== actual;\\n};\\n\\nvar assignHasPendingExceptions = function () {\\n\\tif (!Object.assign || !Object.preventExtensions) {\\n\\t\\treturn false;\\n\\t}\\n\\t// Firefox 37 still has \\\"pending exception\\\" logic in its Object.assign implementation,\\n\\t// which is 72% slower than our shim, and Firefox 40's native implementation.\\n\\tvar thrower = Object.preventExtensions({ 1: 2 });\\n\\ttry {\\n\\t\\tObject.assign(thrower, 'xy');\\n\\t} catch (e) {\\n\\t\\treturn thrower[1] === 'y';\\n\\t}\\n\\treturn false;\\n};\\n\\nmodule.exports = function getPolyfill() {\\n\\tif (!Object.assign) {\\n\\t\\treturn implementation;\\n\\t}\\n\\tif (lacksProperEnumerationOrder()) {\\n\\t\\treturn implementation;\\n\\t}\\n\\tif (assignHasPendingExceptions()) {\\n\\t\\treturn implementation;\\n\\t}\\n\\treturn Object.assign;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object.assign/polyfill.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/object.assign/shim.js\":\n/*!********************************************!*\\\n !*** ./node_modules/object.assign/shim.js ***!\n \\********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar define = __webpack_require__(/*! define-properties */ \\\"./node_modules/define-properties/index.js\\\");\\nvar getPolyfill = __webpack_require__(/*! ./polyfill */ \\\"./node_modules/object.assign/polyfill.js\\\");\\n\\nmodule.exports = function shimAssign() {\\n\\tvar polyfill = getPolyfill();\\n\\tdefine(\\n\\t\\tObject,\\n\\t\\t{ assign: polyfill },\\n\\t\\t{ assign: function () { return Object.assign !== polyfill; } }\\n\\t);\\n\\treturn polyfill;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/object.assign/shim.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/attributor/attributor.ts\":\n/*!*************************************************************!*\\\n !*** ./node_modules/parchment/src/attributor/attributor.ts ***!\n \\*************************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Attributor; });\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n\\nclass Attributor {\\n constructor(attrName, keyName, options = {}) {\\n this.attrName = attrName;\\n this.keyName = keyName;\\n const attributeBit = _scope__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].TYPE & _scope__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].ATTRIBUTE;\\n this.scope =\\n options.scope != null\\n ? // Ignore type bits, force attribute bit\\n (options.scope & _scope__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].LEVEL) | attributeBit\\n : _scope__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].ATTRIBUTE;\\n if (options.whitelist != null) {\\n this.whitelist = options.whitelist;\\n }\\n }\\n static keys(node) {\\n return Array.from(node.attributes).map((item) => item.name);\\n }\\n add(node, value) {\\n if (!this.canAdd(node, value)) {\\n return false;\\n }\\n node.setAttribute(this.keyName, value);\\n return true;\\n }\\n canAdd(_node, value) {\\n if (this.whitelist == null) {\\n return true;\\n }\\n if (typeof value === 'string') {\\n return this.whitelist.indexOf(value.replace(/[\\\"']/g, '')) > -1;\\n }\\n else {\\n return this.whitelist.indexOf(value) > -1;\\n }\\n }\\n remove(node) {\\n node.removeAttribute(this.keyName);\\n }\\n value(node) {\\n const value = node.getAttribute(this.keyName);\\n if (this.canAdd(node, value) && value) {\\n return value;\\n }\\n return '';\\n }\\n}\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/attributor/attributor.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/attributor/class.ts\":\n/*!********************************************************!*\\\n !*** ./node_modules/parchment/src/attributor/class.ts ***!\n \\********************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _attributor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./attributor */ \\\"./node_modules/parchment/src/attributor/attributor.ts\\\");\\n\\nfunction match(node, prefix) {\\n const className = node.getAttribute('class') || '';\\n return className\\n .split(/\\\\s+/)\\n .filter((name) => name.indexOf(`${prefix}-`) === 0);\\n}\\nclass ClassAttributor extends _attributor__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static keys(node) {\\n return (node.getAttribute('class') || '')\\n .split(/\\\\s+/)\\n .map((name) => name.split('-').slice(0, -1).join('-'));\\n }\\n add(node, value) {\\n if (!this.canAdd(node, value)) {\\n return false;\\n }\\n this.remove(node);\\n node.classList.add(`${this.keyName}-${value}`);\\n return true;\\n }\\n remove(node) {\\n const matches = match(node, this.keyName);\\n matches.forEach((name) => {\\n node.classList.remove(name);\\n });\\n if (node.classList.length === 0) {\\n node.removeAttribute('class');\\n }\\n }\\n value(node) {\\n const result = match(node, this.keyName)[0] || '';\\n const value = result.slice(this.keyName.length + 1); // +1 for hyphen\\n return this.canAdd(node, value) ? value : '';\\n }\\n}\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (ClassAttributor);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/attributor/class.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/attributor/store.ts\":\n/*!********************************************************!*\\\n !*** ./node_modules/parchment/src/attributor/store.ts ***!\n \\********************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _registry__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../registry */ \\\"./node_modules/parchment/src/registry.ts\\\");\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _attributor__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./attributor */ \\\"./node_modules/parchment/src/attributor/attributor.ts\\\");\\n/* harmony import */ var _class__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./class */ \\\"./node_modules/parchment/src/attributor/class.ts\\\");\\n/* harmony import */ var _style__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./style */ \\\"./node_modules/parchment/src/attributor/style.ts\\\");\\n\\n\\n\\n\\n\\nclass AttributorStore {\\n constructor(domNode) {\\n this.attributes = {};\\n this.domNode = domNode;\\n this.build();\\n }\\n attribute(attribute, value) {\\n // verb\\n if (value) {\\n if (attribute.add(this.domNode, value)) {\\n if (attribute.value(this.domNode) != null) {\\n this.attributes[attribute.attrName] = attribute;\\n }\\n else {\\n delete this.attributes[attribute.attrName];\\n }\\n }\\n }\\n else {\\n attribute.remove(this.domNode);\\n delete this.attributes[attribute.attrName];\\n }\\n }\\n build() {\\n this.attributes = {};\\n const blot = _registry__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].find(this.domNode);\\n if (blot == null) {\\n return;\\n }\\n const attributes = _attributor__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].keys(this.domNode);\\n const classes = _class__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].keys(this.domNode);\\n const styles = _style__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"].keys(this.domNode);\\n attributes\\n .concat(classes)\\n .concat(styles)\\n .forEach((name) => {\\n const attr = blot.scroll.query(name, _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].ATTRIBUTE);\\n if (attr instanceof _attributor__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"]) {\\n this.attributes[attr.attrName] = attr;\\n }\\n });\\n }\\n copy(target) {\\n Object.keys(this.attributes).forEach((key) => {\\n const value = this.attributes[key].value(this.domNode);\\n target.format(key, value);\\n });\\n }\\n move(target) {\\n this.copy(target);\\n Object.keys(this.attributes).forEach((key) => {\\n this.attributes[key].remove(this.domNode);\\n });\\n this.attributes = {};\\n }\\n values() {\\n return Object.keys(this.attributes).reduce((attributes, name) => {\\n attributes[name] = this.attributes[name].value(this.domNode);\\n return attributes;\\n }, {});\\n }\\n}\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (AttributorStore);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/attributor/store.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/attributor/style.ts\":\n/*!********************************************************!*\\\n !*** ./node_modules/parchment/src/attributor/style.ts ***!\n \\********************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _attributor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./attributor */ \\\"./node_modules/parchment/src/attributor/attributor.ts\\\");\\n\\nfunction camelize(name) {\\n const parts = name.split('-');\\n const rest = parts\\n .slice(1)\\n .map((part) => part[0].toUpperCase() + part.slice(1))\\n .join('');\\n return parts[0] + rest;\\n}\\nclass StyleAttributor extends _attributor__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static keys(node) {\\n return (node.getAttribute('style') || '').split(';').map((value) => {\\n const arr = value.split(':');\\n return arr[0].trim();\\n });\\n }\\n add(node, value) {\\n if (!this.canAdd(node, value)) {\\n return false;\\n }\\n // @ts-ignore\\n node.style[camelize(this.keyName)] = value;\\n return true;\\n }\\n remove(node) {\\n // @ts-ignore\\n node.style[camelize(this.keyName)] = '';\\n if (!node.getAttribute('style')) {\\n node.removeAttribute('style');\\n }\\n }\\n value(node) {\\n // @ts-ignore\\n const value = node.style[camelize(this.keyName)];\\n return this.canAdd(node, value) ? value : '';\\n }\\n}\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (StyleAttributor);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/attributor/style.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/abstract/container.ts\":\n/*!***************************************************************!*\\\n !*** ./node_modules/parchment/src/blot/abstract/container.ts ***!\n \\***************************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _parent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./parent */ \\\"./node_modules/parchment/src/blot/abstract/parent.ts\\\");\\n\\n\\nclass ContainerBlot extends _parent__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] {\\n checkMerge() {\\n return (this.next !== null && this.next.statics.blotName === this.statics.blotName);\\n }\\n deleteAt(index, length) {\\n super.deleteAt(index, length);\\n this.enforceAllowedChildren();\\n }\\n formatAt(index, length, name, value) {\\n super.formatAt(index, length, name, value);\\n this.enforceAllowedChildren();\\n }\\n insertAt(index, value, def) {\\n super.insertAt(index, value, def);\\n this.enforceAllowedChildren();\\n }\\n optimize(context) {\\n super.optimize(context);\\n if (this.children.length > 0 && this.next != null && this.checkMerge()) {\\n this.next.moveChildren(this);\\n this.next.remove();\\n }\\n }\\n}\\nContainerBlot.blotName = 'container';\\nContainerBlot.scope = _scope__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].BLOCK_BLOT;\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (ContainerBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/abstract/container.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/abstract/leaf.ts\":\n/*!**********************************************************!*\\\n !*** ./node_modules/parchment/src/blot/abstract/leaf.ts ***!\n \\**********************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _shadow__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./shadow */ \\\"./node_modules/parchment/src/blot/abstract/shadow.ts\\\");\\n\\n\\nclass LeafBlot extends _shadow__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] {\\n static value(_domNode) {\\n return true;\\n }\\n index(node, offset) {\\n if (this.domNode === node ||\\n this.domNode.compareDocumentPosition(node) &\\n Node.DOCUMENT_POSITION_CONTAINED_BY) {\\n return Math.min(offset, 1);\\n }\\n return -1;\\n }\\n position(index, _inclusive) {\\n const childNodes = Array.from(this.parent.domNode.childNodes);\\n let offset = childNodes.indexOf(this.domNode);\\n if (index > 0) {\\n offset += 1;\\n }\\n return [this.parent.domNode, offset];\\n }\\n value() {\\n return {\\n [this.statics.blotName]: this.statics.value(this.domNode) || true,\\n };\\n }\\n}\\nLeafBlot.scope = _scope__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].INLINE_BLOT;\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (LeafBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/abstract/leaf.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/abstract/parent.ts\":\n/*!************************************************************!*\\\n !*** ./node_modules/parchment/src/blot/abstract/parent.ts ***!\n \\************************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _collection_linked_list__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../collection/linked-list */ \\\"./node_modules/parchment/src/collection/linked-list.ts\\\");\\n/* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../error */ \\\"./node_modules/parchment/src/error.ts\\\");\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _shadow__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./shadow */ \\\"./node_modules/parchment/src/blot/abstract/shadow.ts\\\");\\n\\n\\n\\n\\nfunction makeAttachedBlot(node, scroll) {\\n let blot = scroll.find(node);\\n if (blot == null) {\\n try {\\n blot = scroll.create(node);\\n }\\n catch (e) {\\n blot = scroll.create(_scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].INLINE);\\n Array.from(node.childNodes).forEach((child) => {\\n // @ts-ignore\\n blot.domNode.appendChild(child);\\n });\\n if (node.parentNode) {\\n node.parentNode.replaceChild(blot.domNode, node);\\n }\\n blot.attach();\\n }\\n }\\n return blot;\\n}\\nclass ParentBlot extends _shadow__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"] {\\n constructor(scroll, domNode) {\\n super(scroll, domNode);\\n this.uiNode = null;\\n this.build();\\n }\\n appendChild(other) {\\n this.insertBefore(other);\\n }\\n attach() {\\n super.attach();\\n this.children.forEach((child) => {\\n child.attach();\\n });\\n }\\n attachUI(node) {\\n if (this.uiNode != null) {\\n this.uiNode.remove();\\n }\\n this.uiNode = node;\\n if (ParentBlot.uiClass) {\\n this.uiNode.classList.add(ParentBlot.uiClass);\\n }\\n this.uiNode.setAttribute('contenteditable', 'false');\\n this.domNode.insertBefore(this.uiNode, this.domNode.firstChild);\\n }\\n build() {\\n this.children = new _collection_linked_list__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]();\\n // Need to be reversed for if DOM nodes already in order\\n Array.from(this.domNode.childNodes)\\n .filter((node) => node !== this.uiNode)\\n .reverse()\\n .forEach((node) => {\\n try {\\n const child = makeAttachedBlot(node, this.scroll);\\n this.insertBefore(child, this.children.head || undefined);\\n }\\n catch (err) {\\n if (err instanceof _error__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"]) {\\n return;\\n }\\n else {\\n throw err;\\n }\\n }\\n });\\n }\\n deleteAt(index, length) {\\n if (index === 0 && length === this.length()) {\\n return this.remove();\\n }\\n this.children.forEachAt(index, length, (child, offset, childLength) => {\\n child.deleteAt(offset, childLength);\\n });\\n }\\n descendant(criteria, index = 0) {\\n const [child, offset] = this.children.find(index);\\n if ((criteria.blotName == null && criteria(child)) ||\\n (criteria.blotName != null && child instanceof criteria)) {\\n return [child, offset];\\n }\\n else if (child instanceof ParentBlot) {\\n return child.descendant(criteria, offset);\\n }\\n else {\\n return [null, -1];\\n }\\n }\\n descendants(criteria, index = 0, length = Number.MAX_VALUE) {\\n let descendants = [];\\n let lengthLeft = length;\\n this.children.forEachAt(index, length, (child, childIndex, childLength) => {\\n if ((criteria.blotName == null && criteria(child)) ||\\n (criteria.blotName != null && child instanceof criteria)) {\\n descendants.push(child);\\n }\\n if (child instanceof ParentBlot) {\\n descendants = descendants.concat(child.descendants(criteria, childIndex, lengthLeft));\\n }\\n lengthLeft -= childLength;\\n });\\n return descendants;\\n }\\n detach() {\\n this.children.forEach((child) => {\\n child.detach();\\n });\\n super.detach();\\n }\\n enforceAllowedChildren() {\\n let done = false;\\n this.children.forEach((child) => {\\n if (done) {\\n return;\\n }\\n const allowed = this.statics.allowedChildren.some((def) => child instanceof def);\\n if (allowed) {\\n return;\\n }\\n if (child.statics.scope === _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].BLOCK_BLOT) {\\n if (child.next != null) {\\n this.splitAfter(child);\\n }\\n if (child.prev != null) {\\n this.splitAfter(child.prev);\\n }\\n child.parent.unwrap();\\n done = true;\\n }\\n else if (child instanceof ParentBlot) {\\n child.unwrap();\\n }\\n else {\\n child.remove();\\n }\\n });\\n }\\n formatAt(index, length, name, value) {\\n this.children.forEachAt(index, length, (child, offset, childLength) => {\\n child.formatAt(offset, childLength, name, value);\\n });\\n }\\n insertAt(index, value, def) {\\n const [child, offset] = this.children.find(index);\\n if (child) {\\n child.insertAt(offset, value, def);\\n }\\n else {\\n const blot = def == null\\n ? this.scroll.create('text', value)\\n : this.scroll.create(value, def);\\n this.appendChild(blot);\\n }\\n }\\n insertBefore(childBlot, refBlot) {\\n if (childBlot.parent != null) {\\n childBlot.parent.children.remove(childBlot);\\n }\\n let refDomNode = null;\\n this.children.insertBefore(childBlot, refBlot || null);\\n childBlot.parent = this;\\n if (refBlot != null) {\\n refDomNode = refBlot.domNode;\\n }\\n if (this.domNode.parentNode !== childBlot.domNode ||\\n this.domNode.nextSibling !== refDomNode) {\\n this.domNode.insertBefore(childBlot.domNode, refDomNode);\\n }\\n childBlot.attach();\\n }\\n length() {\\n return this.children.reduce((memo, child) => {\\n return memo + child.length();\\n }, 0);\\n }\\n moveChildren(targetParent, refNode) {\\n this.children.forEach((child) => {\\n targetParent.insertBefore(child, refNode);\\n });\\n }\\n optimize(context) {\\n super.optimize(context);\\n this.enforceAllowedChildren();\\n if (this.uiNode != null && this.uiNode !== this.domNode.firstChild) {\\n this.domNode.insertBefore(this.uiNode, this.domNode.firstChild);\\n }\\n if (this.children.length === 0) {\\n if (this.statics.defaultChild != null) {\\n const child = this.scroll.create(this.statics.defaultChild.blotName);\\n this.appendChild(child);\\n // TODO double check if necessary\\n // child.optimize(context);\\n }\\n else {\\n this.remove();\\n }\\n }\\n }\\n path(index, inclusive = false) {\\n const [child, offset] = this.children.find(index, inclusive);\\n const position = [[this, index]];\\n if (child instanceof ParentBlot) {\\n return position.concat(child.path(offset, inclusive));\\n }\\n else if (child != null) {\\n position.push([child, offset]);\\n }\\n return position;\\n }\\n removeChild(child) {\\n this.children.remove(child);\\n }\\n replaceWith(name, value) {\\n const replacement = typeof name === 'string' ? this.scroll.create(name, value) : name;\\n if (replacement instanceof ParentBlot) {\\n this.moveChildren(replacement);\\n }\\n return super.replaceWith(replacement);\\n }\\n split(index, force = false) {\\n if (!force) {\\n if (index === 0) {\\n return this;\\n }\\n if (index === this.length()) {\\n return this.next;\\n }\\n }\\n const after = this.clone();\\n if (this.parent) {\\n this.parent.insertBefore(after, this.next || undefined);\\n }\\n this.children.forEachAt(index, this.length(), (child, offset, _length) => {\\n const split = child.split(offset, force);\\n if (split != null) {\\n after.appendChild(split);\\n }\\n });\\n return after;\\n }\\n splitAfter(child) {\\n const after = this.clone();\\n while (child.next != null) {\\n after.appendChild(child.next);\\n }\\n if (this.parent) {\\n this.parent.insertBefore(after, this.next || undefined);\\n }\\n return after;\\n }\\n unwrap() {\\n if (this.parent) {\\n this.moveChildren(this.parent, this.next || undefined);\\n }\\n this.remove();\\n }\\n update(mutations, _context) {\\n const addedNodes = [];\\n const removedNodes = [];\\n mutations.forEach((mutation) => {\\n if (mutation.target === this.domNode && mutation.type === 'childList') {\\n addedNodes.push(...mutation.addedNodes);\\n removedNodes.push(...mutation.removedNodes);\\n }\\n });\\n removedNodes.forEach((node) => {\\n // Check node has actually been removed\\n // One exception is Chrome does not immediately remove IFRAMEs\\n // from DOM but MutationRecord is correct in its reported removal\\n if (node.parentNode != null &&\\n // @ts-ignore\\n node.tagName !== 'IFRAME' &&\\n document.body.compareDocumentPosition(node) &\\n Node.DOCUMENT_POSITION_CONTAINED_BY) {\\n return;\\n }\\n const blot = this.scroll.find(node);\\n if (blot == null) {\\n return;\\n }\\n if (blot.domNode.parentNode == null ||\\n blot.domNode.parentNode === this.domNode) {\\n blot.detach();\\n }\\n });\\n addedNodes\\n .filter((node) => {\\n return node.parentNode === this.domNode || node === this.uiNode;\\n })\\n .sort((a, b) => {\\n if (a === b) {\\n return 0;\\n }\\n if (a.compareDocumentPosition(b) & Node.DOCUMENT_POSITION_FOLLOWING) {\\n return 1;\\n }\\n return -1;\\n })\\n .forEach((node) => {\\n let refBlot = null;\\n if (node.nextSibling != null) {\\n refBlot = this.scroll.find(node.nextSibling);\\n }\\n const blot = makeAttachedBlot(node, this.scroll);\\n if (blot.next !== refBlot || blot.next == null) {\\n if (blot.parent != null) {\\n blot.parent.removeChild(this);\\n }\\n this.insertBefore(blot, refBlot || undefined);\\n }\\n });\\n this.enforceAllowedChildren();\\n }\\n}\\nParentBlot.uiClass = '';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (ParentBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/abstract/parent.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/abstract/shadow.ts\":\n/*!************************************************************!*\\\n !*** ./node_modules/parchment/src/blot/abstract/shadow.ts ***!\n \\************************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../error */ \\\"./node_modules/parchment/src/error.ts\\\");\\n/* harmony import */ var _registry__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../registry */ \\\"./node_modules/parchment/src/registry.ts\\\");\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n\\n\\n\\nclass ShadowBlot {\\n constructor(scroll, domNode) {\\n this.scroll = scroll;\\n this.domNode = domNode;\\n _registry__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].blots.set(domNode, this);\\n this.prev = null;\\n this.next = null;\\n }\\n static create(value) {\\n if (this.tagName == null) {\\n throw new _error__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]('Blot definition missing tagName');\\n }\\n let node;\\n if (Array.isArray(this.tagName)) {\\n if (typeof value === 'string') {\\n value = value.toUpperCase();\\n if (parseInt(value, 10).toString() === value) {\\n value = parseInt(value, 10);\\n }\\n }\\n if (typeof value === 'number') {\\n node = document.createElement(this.tagName[value - 1]);\\n }\\n else if (this.tagName.indexOf(value) > -1) {\\n node = document.createElement(value);\\n }\\n else {\\n node = document.createElement(this.tagName[0]);\\n }\\n }\\n else {\\n node = document.createElement(this.tagName);\\n }\\n if (this.className) {\\n node.classList.add(this.className);\\n }\\n return node;\\n }\\n // Hack for accessing inherited static methods\\n get statics() {\\n return this.constructor;\\n }\\n attach() {\\n // Nothing to do\\n }\\n clone() {\\n const domNode = this.domNode.cloneNode(false);\\n return this.scroll.create(domNode);\\n }\\n detach() {\\n if (this.parent != null) {\\n this.parent.removeChild(this);\\n }\\n _registry__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].blots.delete(this.domNode);\\n }\\n deleteAt(index, length) {\\n const blot = this.isolate(index, length);\\n blot.remove();\\n }\\n formatAt(index, length, name, value) {\\n const blot = this.isolate(index, length);\\n if (this.scroll.query(name, _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].BLOT) != null && value) {\\n blot.wrap(name, value);\\n }\\n else if (this.scroll.query(name, _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].ATTRIBUTE) != null) {\\n const parent = this.scroll.create(this.statics.scope);\\n blot.wrap(parent);\\n parent.format(name, value);\\n }\\n }\\n insertAt(index, value, def) {\\n const blot = def == null\\n ? this.scroll.create('text', value)\\n : this.scroll.create(value, def);\\n const ref = this.split(index);\\n this.parent.insertBefore(blot, ref || undefined);\\n }\\n isolate(index, length) {\\n const target = this.split(index);\\n if (target == null) {\\n throw new Error('Attempt to isolate at end');\\n }\\n target.split(length);\\n return target;\\n }\\n length() {\\n return 1;\\n }\\n offset(root = this.parent) {\\n if (this.parent == null || this === root) {\\n return 0;\\n }\\n return this.parent.children.offset(this) + this.parent.offset(root);\\n }\\n optimize(_context) {\\n if (this.statics.requiredContainer &&\\n !(this.parent instanceof this.statics.requiredContainer)) {\\n this.wrap(this.statics.requiredContainer.blotName);\\n }\\n }\\n remove() {\\n if (this.domNode.parentNode != null) {\\n this.domNode.parentNode.removeChild(this.domNode);\\n }\\n this.detach();\\n }\\n replaceWith(name, value) {\\n const replacement = typeof name === 'string' ? this.scroll.create(name, value) : name;\\n if (this.parent != null) {\\n this.parent.insertBefore(replacement, this.next || undefined);\\n this.remove();\\n }\\n return replacement;\\n }\\n split(index, _force) {\\n return index === 0 ? this : this.next;\\n }\\n update(_mutations, _context) {\\n // Nothing to do by default\\n }\\n wrap(name, value) {\\n const wrapper = typeof name === 'string'\\n ? this.scroll.create(name, value)\\n : name;\\n if (this.parent != null) {\\n this.parent.insertBefore(wrapper, this.next || undefined);\\n }\\n if (typeof wrapper.appendChild !== 'function') {\\n throw new _error__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"](`Cannot wrap ${name}`);\\n }\\n wrapper.appendChild(this);\\n return wrapper;\\n }\\n}\\nShadowBlot.blotName = 'abstract';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (ShadowBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/abstract/shadow.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/block.ts\":\n/*!**************************************************!*\\\n !*** ./node_modules/parchment/src/blot/block.ts ***!\n \\**************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _attributor_attributor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../attributor/attributor */ \\\"./node_modules/parchment/src/attributor/attributor.ts\\\");\\n/* harmony import */ var _attributor_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../attributor/store */ \\\"./node_modules/parchment/src/attributor/store.ts\\\");\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _abstract_leaf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./abstract/leaf */ \\\"./node_modules/parchment/src/blot/abstract/leaf.ts\\\");\\n/* harmony import */ var _abstract_parent__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./abstract/parent */ \\\"./node_modules/parchment/src/blot/abstract/parent.ts\\\");\\n/* harmony import */ var _inline__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./inline */ \\\"./node_modules/parchment/src/blot/inline.ts\\\");\\n\\n\\n\\n\\n\\n\\nclass BlockBlot extends _abstract_parent__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"] {\\n constructor(scroll, domNode) {\\n super(scroll, domNode);\\n this.attributes = new _attributor_store__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"](this.domNode);\\n }\\n static formats(domNode, scroll) {\\n const match = scroll.query(BlockBlot.blotName);\\n if (match != null &&\\n domNode.tagName === match.tagName) {\\n return undefined;\\n }\\n else if (typeof this.tagName === 'string') {\\n return true;\\n }\\n else if (Array.isArray(this.tagName)) {\\n return domNode.tagName.toLowerCase();\\n }\\n }\\n format(name, value) {\\n const format = this.scroll.query(name, _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].BLOCK);\\n if (format == null) {\\n return;\\n }\\n else if (format instanceof _attributor_attributor__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]) {\\n this.attributes.attribute(format, value);\\n }\\n else if (name === this.statics.blotName && !value) {\\n this.replaceWith(BlockBlot.blotName);\\n }\\n else if (value &&\\n (name !== this.statics.blotName || this.formats()[name] !== value)) {\\n this.replaceWith(name, value);\\n }\\n }\\n formats() {\\n const formats = this.attributes.values();\\n const format = this.statics.formats(this.domNode, this.scroll);\\n if (format != null) {\\n formats[this.statics.blotName] = format;\\n }\\n return formats;\\n }\\n formatAt(index, length, name, value) {\\n if (this.scroll.query(name, _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].BLOCK) != null) {\\n this.format(name, value);\\n }\\n else {\\n super.formatAt(index, length, name, value);\\n }\\n }\\n insertAt(index, value, def) {\\n if (def == null || this.scroll.query(value, _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].INLINE) != null) {\\n // Insert text or inline\\n super.insertAt(index, value, def);\\n }\\n else {\\n const after = this.split(index);\\n if (after != null) {\\n const blot = this.scroll.create(value, def);\\n after.parent.insertBefore(blot, after);\\n }\\n else {\\n throw new Error('Attempt to insertAt after block boundaries');\\n }\\n }\\n }\\n replaceWith(name, value) {\\n const replacement = super.replaceWith(name, value);\\n this.attributes.copy(replacement);\\n return replacement;\\n }\\n update(mutations, context) {\\n super.update(mutations, context);\\n const attributeChanged = mutations.some((mutation) => mutation.target === this.domNode && mutation.type === 'attributes');\\n if (attributeChanged) {\\n this.attributes.build();\\n }\\n }\\n}\\nBlockBlot.blotName = 'block';\\nBlockBlot.scope = _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].BLOCK_BLOT;\\nBlockBlot.tagName = 'P';\\nBlockBlot.allowedChildren = [\\n _inline__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"],\\n BlockBlot,\\n _abstract_leaf__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"],\\n];\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (BlockBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/block.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/embed.ts\":\n/*!**************************************************!*\\\n !*** ./node_modules/parchment/src/blot/embed.ts ***!\n \\**************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _abstract_leaf__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstract/leaf */ \\\"./node_modules/parchment/src/blot/abstract/leaf.ts\\\");\\n\\nclass EmbedBlot extends _abstract_leaf__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n static formats(_domNode, _scroll) {\\n return undefined;\\n }\\n format(name, value) {\\n // super.formatAt wraps, which is what we want in general,\\n // but this allows subclasses to overwrite for formats\\n // that just apply to particular embeds\\n super.formatAt(0, this.length(), name, value);\\n }\\n formatAt(index, length, name, value) {\\n if (index === 0 && length === this.length()) {\\n this.format(name, value);\\n }\\n else {\\n super.formatAt(index, length, name, value);\\n }\\n }\\n formats() {\\n return this.statics.formats(this.domNode, this.scroll);\\n }\\n}\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (EmbedBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/embed.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/inline.ts\":\n/*!***************************************************!*\\\n !*** ./node_modules/parchment/src/blot/inline.ts ***!\n \\***************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _attributor_attributor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../attributor/attributor */ \\\"./node_modules/parchment/src/attributor/attributor.ts\\\");\\n/* harmony import */ var _attributor_store__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../attributor/store */ \\\"./node_modules/parchment/src/attributor/store.ts\\\");\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _abstract_leaf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./abstract/leaf */ \\\"./node_modules/parchment/src/blot/abstract/leaf.ts\\\");\\n/* harmony import */ var _abstract_parent__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./abstract/parent */ \\\"./node_modules/parchment/src/blot/abstract/parent.ts\\\");\\n\\n\\n\\n\\n\\n// Shallow object comparison\\nfunction isEqual(obj1, obj2) {\\n if (Object.keys(obj1).length !== Object.keys(obj2).length) {\\n return false;\\n }\\n // @ts-ignore\\n for (const prop in obj1) {\\n // @ts-ignore\\n if (obj1[prop] !== obj2[prop]) {\\n return false;\\n }\\n }\\n return true;\\n}\\nclass InlineBlot extends _abstract_parent__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"] {\\n constructor(scroll, domNode) {\\n super(scroll, domNode);\\n this.attributes = new _attributor_store__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"](this.domNode);\\n }\\n static formats(domNode, scroll) {\\n const match = scroll.query(InlineBlot.blotName);\\n if (match != null &&\\n domNode.tagName === match.tagName) {\\n return undefined;\\n }\\n else if (typeof this.tagName === 'string') {\\n return true;\\n }\\n else if (Array.isArray(this.tagName)) {\\n return domNode.tagName.toLowerCase();\\n }\\n return undefined;\\n }\\n format(name, value) {\\n if (name === this.statics.blotName && !value) {\\n this.children.forEach((child) => {\\n if (!(child instanceof InlineBlot)) {\\n child = child.wrap(InlineBlot.blotName, true);\\n }\\n this.attributes.copy(child);\\n });\\n this.unwrap();\\n }\\n else {\\n const format = this.scroll.query(name, _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].INLINE);\\n if (format == null) {\\n return;\\n }\\n if (format instanceof _attributor_attributor__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]) {\\n this.attributes.attribute(format, value);\\n }\\n else if (value &&\\n (name !== this.statics.blotName || this.formats()[name] !== value)) {\\n this.replaceWith(name, value);\\n }\\n }\\n }\\n formats() {\\n const formats = this.attributes.values();\\n const format = this.statics.formats(this.domNode, this.scroll);\\n if (format != null) {\\n formats[this.statics.blotName] = format;\\n }\\n return formats;\\n }\\n formatAt(index, length, name, value) {\\n if (this.formats()[name] != null ||\\n this.scroll.query(name, _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].ATTRIBUTE)) {\\n const blot = this.isolate(index, length);\\n blot.format(name, value);\\n }\\n else {\\n super.formatAt(index, length, name, value);\\n }\\n }\\n optimize(context) {\\n super.optimize(context);\\n const formats = this.formats();\\n if (Object.keys(formats).length === 0) {\\n return this.unwrap(); // unformatted span\\n }\\n const next = this.next;\\n if (next instanceof InlineBlot &&\\n next.prev === this &&\\n isEqual(formats, next.formats())) {\\n next.moveChildren(this);\\n next.remove();\\n }\\n }\\n replaceWith(name, value) {\\n const replacement = super.replaceWith(name, value);\\n this.attributes.copy(replacement);\\n return replacement;\\n }\\n update(mutations, context) {\\n super.update(mutations, context);\\n const attributeChanged = mutations.some((mutation) => mutation.target === this.domNode && mutation.type === 'attributes');\\n if (attributeChanged) {\\n this.attributes.build();\\n }\\n }\\n wrap(name, value) {\\n const wrapper = super.wrap(name, value);\\n if (wrapper instanceof InlineBlot) {\\n this.attributes.move(wrapper);\\n }\\n return wrapper;\\n }\\n}\\nInlineBlot.allowedChildren = [InlineBlot, _abstract_leaf__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"]];\\nInlineBlot.blotName = 'inline';\\nInlineBlot.scope = _scope__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].INLINE_BLOT;\\nInlineBlot.tagName = 'SPAN';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (InlineBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/inline.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/scroll.ts\":\n/*!***************************************************!*\\\n !*** ./node_modules/parchment/src/blot/scroll.ts ***!\n \\***************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _registry__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../registry */ \\\"./node_modules/parchment/src/registry.ts\\\");\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _abstract_container__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./abstract/container */ \\\"./node_modules/parchment/src/blot/abstract/container.ts\\\");\\n/* harmony import */ var _abstract_parent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./abstract/parent */ \\\"./node_modules/parchment/src/blot/abstract/parent.ts\\\");\\n/* harmony import */ var _block__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./block */ \\\"./node_modules/parchment/src/blot/block.ts\\\");\\n\\n\\n\\n\\n\\nconst OBSERVER_CONFIG = {\\n attributes: true,\\n characterData: true,\\n characterDataOldValue: true,\\n childList: true,\\n subtree: true,\\n};\\nconst MAX_OPTIMIZE_ITERATIONS = 100;\\nclass ScrollBlot extends _abstract_parent__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"] {\\n constructor(registry, node) {\\n // @ts-ignore\\n super(null, node);\\n this.registry = registry;\\n this.scroll = this;\\n this.build();\\n this.observer = new MutationObserver((mutations) => {\\n this.update(mutations);\\n });\\n this.observer.observe(this.domNode, OBSERVER_CONFIG);\\n this.attach();\\n }\\n create(input, value) {\\n return this.registry.create(this, input, value);\\n }\\n find(node, bubble = false) {\\n return this.registry.find(node, bubble);\\n }\\n query(query, scope = _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].ANY) {\\n return this.registry.query(query, scope);\\n }\\n register(...definitions) {\\n return this.registry.register(...definitions);\\n }\\n build() {\\n if (this.scroll == null) {\\n return;\\n }\\n super.build();\\n }\\n detach() {\\n super.detach();\\n this.observer.disconnect();\\n }\\n deleteAt(index, length) {\\n this.update();\\n if (index === 0 && length === this.length()) {\\n this.children.forEach((child) => {\\n child.remove();\\n });\\n }\\n else {\\n super.deleteAt(index, length);\\n }\\n }\\n formatAt(index, length, name, value) {\\n this.update();\\n super.formatAt(index, length, name, value);\\n }\\n insertAt(index, value, def) {\\n this.update();\\n super.insertAt(index, value, def);\\n }\\n optimize(mutations = [], context = {}) {\\n super.optimize(context);\\n const mutationsMap = context.mutationsMap || new WeakMap();\\n // We must modify mutations directly, cannot make copy and then modify\\n let records = Array.from(this.observer.takeRecords());\\n // Array.push currently seems to be implemented by a non-tail recursive function\\n // so we cannot just mutations.push.apply(mutations, this.observer.takeRecords());\\n while (records.length > 0) {\\n mutations.push(records.pop());\\n }\\n const mark = (blot, markParent = true) => {\\n if (blot == null || blot === this) {\\n return;\\n }\\n if (blot.domNode.parentNode == null) {\\n return;\\n }\\n if (!mutationsMap.has(blot.domNode)) {\\n mutationsMap.set(blot.domNode, []);\\n }\\n if (markParent) {\\n mark(blot.parent);\\n }\\n };\\n const optimize = (blot) => {\\n // Post-order traversal\\n if (!mutationsMap.has(blot.domNode)) {\\n return;\\n }\\n if (blot instanceof _abstract_parent__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"]) {\\n blot.children.forEach(optimize);\\n }\\n mutationsMap.delete(blot.domNode);\\n blot.optimize(context);\\n };\\n let remaining = mutations;\\n for (let i = 0; remaining.length > 0; i += 1) {\\n if (i >= MAX_OPTIMIZE_ITERATIONS) {\\n throw new Error('[Parchment] Maximum optimize iterations reached');\\n }\\n remaining.forEach((mutation) => {\\n const blot = this.find(mutation.target, true);\\n if (blot == null) {\\n return;\\n }\\n if (blot.domNode === mutation.target) {\\n if (mutation.type === 'childList') {\\n mark(this.find(mutation.previousSibling, false));\\n Array.from(mutation.addedNodes).forEach((node) => {\\n const child = this.find(node, false);\\n mark(child, false);\\n if (child instanceof _abstract_parent__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"]) {\\n child.children.forEach((grandChild) => {\\n mark(grandChild, false);\\n });\\n }\\n });\\n }\\n else if (mutation.type === 'attributes') {\\n mark(blot.prev);\\n }\\n }\\n mark(blot);\\n });\\n this.children.forEach(optimize);\\n remaining = Array.from(this.observer.takeRecords());\\n records = remaining.slice();\\n while (records.length > 0) {\\n mutations.push(records.pop());\\n }\\n }\\n }\\n update(mutations, context = {}) {\\n mutations = mutations || this.observer.takeRecords();\\n const mutationsMap = new WeakMap();\\n mutations\\n .map((mutation) => {\\n const blot = _registry__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].find(mutation.target, true);\\n if (blot == null) {\\n return null;\\n }\\n if (mutationsMap.has(blot.domNode)) {\\n mutationsMap.get(blot.domNode).push(mutation);\\n return null;\\n }\\n else {\\n mutationsMap.set(blot.domNode, [mutation]);\\n return blot;\\n }\\n })\\n .forEach((blot) => {\\n if (blot != null && blot !== this && mutationsMap.has(blot.domNode)) {\\n blot.update(mutationsMap.get(blot.domNode) || [], context);\\n }\\n });\\n context.mutationsMap = mutationsMap;\\n if (mutationsMap.has(this.domNode)) {\\n super.update(mutationsMap.get(this.domNode), context);\\n }\\n this.optimize(mutations, context);\\n }\\n}\\nScrollBlot.blotName = 'scroll';\\nScrollBlot.defaultChild = _block__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"];\\nScrollBlot.allowedChildren = [_block__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"], _abstract_container__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"]];\\nScrollBlot.scope = _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].BLOCK_BLOT;\\nScrollBlot.tagName = 'DIV';\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (ScrollBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/scroll.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/blot/text.ts\":\n/*!*************************************************!*\\\n !*** ./node_modules/parchment/src/blot/text.ts ***!\n \\*************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony import */ var _abstract_leaf__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./abstract/leaf */ \\\"./node_modules/parchment/src/blot/abstract/leaf.ts\\\");\\n\\n\\nclass TextBlot extends _abstract_leaf__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"] {\\n constructor(scroll, node) {\\n super(scroll, node);\\n this.text = this.statics.value(this.domNode);\\n }\\n static create(value) {\\n return document.createTextNode(value);\\n }\\n static value(domNode) {\\n return domNode.data;\\n }\\n deleteAt(index, length) {\\n this.domNode.data = this.text =\\n this.text.slice(0, index) + this.text.slice(index + length);\\n }\\n index(node, offset) {\\n if (this.domNode === node) {\\n return offset;\\n }\\n return -1;\\n }\\n insertAt(index, value, def) {\\n if (def == null) {\\n this.text = this.text.slice(0, index) + value + this.text.slice(index);\\n this.domNode.data = this.text;\\n }\\n else {\\n super.insertAt(index, value, def);\\n }\\n }\\n length() {\\n return this.text.length;\\n }\\n optimize(context) {\\n super.optimize(context);\\n this.text = this.statics.value(this.domNode);\\n if (this.text.length === 0) {\\n this.remove();\\n }\\n else if (this.next instanceof TextBlot && this.next.prev === this) {\\n this.insertAt(this.length(), this.next.value());\\n this.next.remove();\\n }\\n }\\n position(index, _inclusive = false) {\\n return [this.domNode, index];\\n }\\n split(index, force = false) {\\n if (!force) {\\n if (index === 0) {\\n return this;\\n }\\n if (index === this.length()) {\\n return this.next;\\n }\\n }\\n const after = this.scroll.create(this.domNode.splitText(index));\\n this.parent.insertBefore(after, this.next || undefined);\\n this.text = this.statics.value(this.domNode);\\n return after;\\n }\\n update(mutations, _context) {\\n if (mutations.some((mutation) => {\\n return (mutation.type === 'characterData' && mutation.target === this.domNode);\\n })) {\\n this.text = this.statics.value(this.domNode);\\n }\\n }\\n value() {\\n return this.text;\\n }\\n}\\nTextBlot.blotName = 'text';\\nTextBlot.scope = _scope__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].INLINE_BLOT;\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (TextBlot);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/blot/text.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/collection/linked-list.ts\":\n/*!**************************************************************!*\\\n !*** ./node_modules/parchment/src/collection/linked-list.ts ***!\n \\**************************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\nclass LinkedList {\\n constructor() {\\n this.head = null;\\n this.tail = null;\\n this.length = 0;\\n }\\n append(...nodes) {\\n this.insertBefore(nodes[0], null);\\n if (nodes.length > 1) {\\n const rest = nodes.slice(1);\\n this.append(...rest);\\n }\\n }\\n at(index) {\\n const next = this.iterator();\\n let cur = next();\\n while (cur && index > 0) {\\n index -= 1;\\n cur = next();\\n }\\n return cur;\\n }\\n contains(node) {\\n const next = this.iterator();\\n let cur = next();\\n while (cur) {\\n if (cur === node) {\\n return true;\\n }\\n cur = next();\\n }\\n return false;\\n }\\n indexOf(node) {\\n const next = this.iterator();\\n let cur = next();\\n let index = 0;\\n while (cur) {\\n if (cur === node) {\\n return index;\\n }\\n index += 1;\\n cur = next();\\n }\\n return -1;\\n }\\n insertBefore(node, refNode) {\\n if (node == null) {\\n return;\\n }\\n this.remove(node);\\n node.next = refNode;\\n if (refNode != null) {\\n node.prev = refNode.prev;\\n if (refNode.prev != null) {\\n refNode.prev.next = node;\\n }\\n refNode.prev = node;\\n if (refNode === this.head) {\\n this.head = node;\\n }\\n }\\n else if (this.tail != null) {\\n this.tail.next = node;\\n node.prev = this.tail;\\n this.tail = node;\\n }\\n else {\\n node.prev = null;\\n this.head = this.tail = node;\\n }\\n this.length += 1;\\n }\\n offset(target) {\\n let index = 0;\\n let cur = this.head;\\n while (cur != null) {\\n if (cur === target) {\\n return index;\\n }\\n index += cur.length();\\n cur = cur.next;\\n }\\n return -1;\\n }\\n remove(node) {\\n if (!this.contains(node)) {\\n return;\\n }\\n if (node.prev != null) {\\n node.prev.next = node.next;\\n }\\n if (node.next != null) {\\n node.next.prev = node.prev;\\n }\\n if (node === this.head) {\\n this.head = node.next;\\n }\\n if (node === this.tail) {\\n this.tail = node.prev;\\n }\\n this.length -= 1;\\n }\\n iterator(curNode = this.head) {\\n // TODO use yield when we can\\n return () => {\\n const ret = curNode;\\n if (curNode != null) {\\n curNode = curNode.next;\\n }\\n return ret;\\n };\\n }\\n find(index, inclusive = false) {\\n const next = this.iterator();\\n let cur = next();\\n while (cur) {\\n const length = cur.length();\\n if (index < length ||\\n (inclusive &&\\n index === length &&\\n (cur.next == null || cur.next.length() !== 0))) {\\n return [cur, index];\\n }\\n index -= length;\\n cur = next();\\n }\\n return [null, 0];\\n }\\n forEach(callback) {\\n const next = this.iterator();\\n let cur = next();\\n while (cur) {\\n callback(cur);\\n cur = next();\\n }\\n }\\n forEachAt(index, length, callback) {\\n if (length <= 0) {\\n return;\\n }\\n const [startNode, offset] = this.find(index);\\n let curIndex = index - offset;\\n const next = this.iterator(startNode);\\n let cur = next();\\n while (cur && curIndex < index + length) {\\n const curLength = cur.length();\\n if (index > curIndex) {\\n callback(cur, index - curIndex, Math.min(length, curIndex + curLength - index));\\n }\\n else {\\n callback(cur, 0, Math.min(curLength, index + length - curIndex));\\n }\\n curIndex += curLength;\\n cur = next();\\n }\\n }\\n map(callback) {\\n return this.reduce((memo, cur) => {\\n memo.push(callback(cur));\\n return memo;\\n }, []);\\n }\\n reduce(callback, memo) {\\n const next = this.iterator();\\n let cur = next();\\n while (cur) {\\n memo = callback(memo, cur);\\n cur = next();\\n }\\n return memo;\\n }\\n}\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (LinkedList);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/collection/linked-list.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/error.ts\":\n/*!*********************************************!*\\\n !*** ./node_modules/parchment/src/error.ts ***!\n \\*********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return ParchmentError; });\\nclass ParchmentError extends Error {\\n constructor(message) {\\n message = '[Parchment] ' + message;\\n super(message);\\n this.message = message;\\n this.name = this.constructor.name;\\n }\\n}\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/error.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/parchment.ts\":\n/*!*************************************************!*\\\n !*** ./node_modules/parchment/src/parchment.ts ***!\n \\*************************************************/\n/*! exports provided: ParentBlot, ContainerBlot, LeafBlot, EmbedBlot, ScrollBlot, BlockBlot, InlineBlot, TextBlot, Attributor, ClassAttributor, StyleAttributor, AttributorStore, Registry, Scope */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _blot_abstract_container__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./blot/abstract/container */ \\\"./node_modules/parchment/src/blot/abstract/container.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"ContainerBlot\\\", function() { return _blot_abstract_container__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _blot_abstract_leaf__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./blot/abstract/leaf */ \\\"./node_modules/parchment/src/blot/abstract/leaf.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"LeafBlot\\\", function() { return _blot_abstract_leaf__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _blot_abstract_parent__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./blot/abstract/parent */ \\\"./node_modules/parchment/src/blot/abstract/parent.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"ParentBlot\\\", function() { return _blot_abstract_parent__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _blot_block__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./blot/block */ \\\"./node_modules/parchment/src/blot/block.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"BlockBlot\\\", function() { return _blot_block__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _blot_embed__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./blot/embed */ \\\"./node_modules/parchment/src/blot/embed.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"EmbedBlot\\\", function() { return _blot_embed__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _blot_inline__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./blot/inline */ \\\"./node_modules/parchment/src/blot/inline.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"InlineBlot\\\", function() { return _blot_inline__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _blot_scroll__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./blot/scroll */ \\\"./node_modules/parchment/src/blot/scroll.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"ScrollBlot\\\", function() { return _blot_scroll__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _blot_text__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./blot/text */ \\\"./node_modules/parchment/src/blot/text.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"TextBlot\\\", function() { return _blot_text__WEBPACK_IMPORTED_MODULE_7__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _attributor_attributor__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./attributor/attributor */ \\\"./node_modules/parchment/src/attributor/attributor.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"Attributor\\\", function() { return _attributor_attributor__WEBPACK_IMPORTED_MODULE_8__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _attributor_class__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./attributor/class */ \\\"./node_modules/parchment/src/attributor/class.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"ClassAttributor\\\", function() { return _attributor_class__WEBPACK_IMPORTED_MODULE_9__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _attributor_store__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./attributor/store */ \\\"./node_modules/parchment/src/attributor/store.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"AttributorStore\\\", function() { return _attributor_store__WEBPACK_IMPORTED_MODULE_10__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _attributor_style__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./attributor/style */ \\\"./node_modules/parchment/src/attributor/style.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"StyleAttributor\\\", function() { return _attributor_style__WEBPACK_IMPORTED_MODULE_11__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _registry__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./registry */ \\\"./node_modules/parchment/src/registry.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"Registry\\\", function() { return _registry__WEBPACK_IMPORTED_MODULE_12__[\\\"default\\\"]; });\\n\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \\\"Scope\\\", function() { return _scope__WEBPACK_IMPORTED_MODULE_13__[\\\"default\\\"]; });\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/parchment.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/registry.ts\":\n/*!************************************************!*\\\n !*** ./node_modules/parchment/src/registry.ts ***!\n \\************************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return Registry; });\\n/* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./error */ \\\"./node_modules/parchment/src/error.ts\\\");\\n/* harmony import */ var _scope__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./scope */ \\\"./node_modules/parchment/src/scope.ts\\\");\\n\\n\\nclass Registry {\\n constructor() {\\n this.attributes = {};\\n this.classes = {};\\n this.tags = {};\\n this.types = {};\\n }\\n static find(node, bubble = false) {\\n if (node == null) {\\n return null;\\n }\\n if (this.blots.has(node)) {\\n return this.blots.get(node) || null;\\n }\\n if (bubble) {\\n return this.find(node.parentNode, bubble);\\n }\\n return null;\\n }\\n create(scroll, input, value) {\\n const match = this.query(input);\\n if (match == null) {\\n throw new _error__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"](`Unable to create ${input} blot`);\\n }\\n const blotClass = match;\\n const node = \\n // @ts-ignore\\n input instanceof Node || input.nodeType === Node.TEXT_NODE\\n ? input\\n : blotClass.create(value);\\n const blot = new blotClass(scroll, node, value);\\n Registry.blots.set(blot.domNode, blot);\\n return blot;\\n }\\n find(node, bubble = false) {\\n return Registry.find(node, bubble);\\n }\\n query(query, scope = _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].ANY) {\\n let match;\\n if (typeof query === 'string') {\\n match = this.types[query] || this.attributes[query];\\n // @ts-ignore\\n }\\n else if (query instanceof Text || query.nodeType === Node.TEXT_NODE) {\\n match = this.types.text;\\n }\\n else if (typeof query === 'number') {\\n if (query & _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].LEVEL & _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].BLOCK) {\\n match = this.types.block;\\n }\\n else if (query & _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].LEVEL & _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].INLINE) {\\n match = this.types.inline;\\n }\\n }\\n else if (query instanceof HTMLElement) {\\n const names = (query.getAttribute('class') || '').split(/\\\\s+/);\\n names.some((name) => {\\n match = this.classes[name];\\n if (match) {\\n return true;\\n }\\n return false;\\n });\\n match = match || this.tags[query.tagName];\\n }\\n if (match == null) {\\n return null;\\n }\\n // @ts-ignore\\n if (scope & _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].LEVEL & match.scope && scope & _scope__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].TYPE & match.scope) {\\n return match;\\n }\\n return null;\\n }\\n register(...definitions) {\\n if (definitions.length > 1) {\\n return definitions.map((d) => {\\n return this.register(d);\\n });\\n }\\n const definition = definitions[0];\\n if (typeof definition.blotName !== 'string' &&\\n typeof definition.attrName !== 'string') {\\n throw new _error__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]('Invalid definition');\\n }\\n else if (definition.blotName === 'abstract') {\\n throw new _error__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]('Cannot register abstract class');\\n }\\n this.types[definition.blotName || definition.attrName] = definition;\\n if (typeof definition.keyName === 'string') {\\n this.attributes[definition.keyName] = definition;\\n }\\n else {\\n if (definition.className != null) {\\n this.classes[definition.className] = definition;\\n }\\n if (definition.tagName != null) {\\n if (Array.isArray(definition.tagName)) {\\n definition.tagName = definition.tagName.map((tagName) => {\\n return tagName.toUpperCase();\\n });\\n }\\n else {\\n definition.tagName = definition.tagName.toUpperCase();\\n }\\n const tagNames = Array.isArray(definition.tagName)\\n ? definition.tagName\\n : [definition.tagName];\\n tagNames.forEach((tag) => {\\n if (this.tags[tag] == null || definition.className == null) {\\n this.tags[tag] = definition;\\n }\\n });\\n }\\n }\\n return definition;\\n }\\n}\\nRegistry.blots = new WeakMap();\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/registry.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/parchment/src/scope.ts\":\n/*!*********************************************!*\\\n !*** ./node_modules/parchment/src/scope.ts ***!\n \\*********************************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\nvar Scope;\\n(function (Scope) {\\n Scope[Scope[\\\"TYPE\\\"] = 3] = \\\"TYPE\\\";\\n Scope[Scope[\\\"LEVEL\\\"] = 12] = \\\"LEVEL\\\";\\n Scope[Scope[\\\"ATTRIBUTE\\\"] = 13] = \\\"ATTRIBUTE\\\";\\n Scope[Scope[\\\"BLOT\\\"] = 14] = \\\"BLOT\\\";\\n Scope[Scope[\\\"INLINE\\\"] = 7] = \\\"INLINE\\\";\\n Scope[Scope[\\\"BLOCK\\\"] = 11] = \\\"BLOCK\\\";\\n Scope[Scope[\\\"BLOCK_BLOT\\\"] = 10] = \\\"BLOCK_BLOT\\\";\\n Scope[Scope[\\\"INLINE_BLOT\\\"] = 6] = \\\"INLINE_BLOT\\\";\\n Scope[Scope[\\\"BLOCK_ATTRIBUTE\\\"] = 9] = \\\"BLOCK_ATTRIBUTE\\\";\\n Scope[Scope[\\\"INLINE_ATTRIBUTE\\\"] = 5] = \\\"INLINE_ATTRIBUTE\\\";\\n Scope[Scope[\\\"ANY\\\"] = 15] = \\\"ANY\\\";\\n})(Scope || (Scope = {}));\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Scope);\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/parchment/src/scope.ts?\");\n\n/***/ }),\n\n/***/ \"./node_modules/process/browser.js\":\n/*!*****************************************!*\\\n !*** ./node_modules/process/browser.js ***!\n \\*****************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"// shim for using process in browser\\nvar process = module.exports = {};\\n\\n// cached from whatever global is present so that test runners that stub it\\n// don't break things. But we need to wrap it in a try catch in case it is\\n// wrapped in strict mode code which doesn't define any globals. It's inside a\\n// function because try/catches deoptimize in certain engines.\\n\\nvar cachedSetTimeout;\\nvar cachedClearTimeout;\\n\\nfunction defaultSetTimout() {\\n throw new Error('setTimeout has not been defined');\\n}\\nfunction defaultClearTimeout () {\\n throw new Error('clearTimeout has not been defined');\\n}\\n(function () {\\n try {\\n if (typeof setTimeout === 'function') {\\n cachedSetTimeout = setTimeout;\\n } else {\\n cachedSetTimeout = defaultSetTimout;\\n }\\n } catch (e) {\\n cachedSetTimeout = defaultSetTimout;\\n }\\n try {\\n if (typeof clearTimeout === 'function') {\\n cachedClearTimeout = clearTimeout;\\n } else {\\n cachedClearTimeout = defaultClearTimeout;\\n }\\n } catch (e) {\\n cachedClearTimeout = defaultClearTimeout;\\n }\\n} ())\\nfunction runTimeout(fun) {\\n if (cachedSetTimeout === setTimeout) {\\n //normal enviroments in sane situations\\n return setTimeout(fun, 0);\\n }\\n // if setTimeout wasn't available but was latter defined\\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\\n cachedSetTimeout = setTimeout;\\n return setTimeout(fun, 0);\\n }\\n try {\\n // when when somebody has screwed with setTimeout but no I.E. maddness\\n return cachedSetTimeout(fun, 0);\\n } catch(e){\\n try {\\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\\n return cachedSetTimeout.call(null, fun, 0);\\n } catch(e){\\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\\n return cachedSetTimeout.call(this, fun, 0);\\n }\\n }\\n\\n\\n}\\nfunction runClearTimeout(marker) {\\n if (cachedClearTimeout === clearTimeout) {\\n //normal enviroments in sane situations\\n return clearTimeout(marker);\\n }\\n // if clearTimeout wasn't available but was latter defined\\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\\n cachedClearTimeout = clearTimeout;\\n return clearTimeout(marker);\\n }\\n try {\\n // when when somebody has screwed with setTimeout but no I.E. maddness\\n return cachedClearTimeout(marker);\\n } catch (e){\\n try {\\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\\n return cachedClearTimeout.call(null, marker);\\n } catch (e){\\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\\n return cachedClearTimeout.call(this, marker);\\n }\\n }\\n\\n\\n\\n}\\nvar queue = [];\\nvar draining = false;\\nvar currentQueue;\\nvar queueIndex = -1;\\n\\nfunction cleanUpNextTick() {\\n if (!draining || !currentQueue) {\\n return;\\n }\\n draining = false;\\n if (currentQueue.length) {\\n queue = currentQueue.concat(queue);\\n } else {\\n queueIndex = -1;\\n }\\n if (queue.length) {\\n drainQueue();\\n }\\n}\\n\\nfunction drainQueue() {\\n if (draining) {\\n return;\\n }\\n var timeout = runTimeout(cleanUpNextTick);\\n draining = true;\\n\\n var len = queue.length;\\n while(len) {\\n currentQueue = queue;\\n queue = [];\\n while (++queueIndex < len) {\\n if (currentQueue) {\\n currentQueue[queueIndex].run();\\n }\\n }\\n queueIndex = -1;\\n len = queue.length;\\n }\\n currentQueue = null;\\n draining = false;\\n runClearTimeout(timeout);\\n}\\n\\nprocess.nextTick = function (fun) {\\n var args = new Array(arguments.length - 1);\\n if (arguments.length > 1) {\\n for (var i = 1; i < arguments.length; i++) {\\n args[i - 1] = arguments[i];\\n }\\n }\\n queue.push(new Item(fun, args));\\n if (queue.length === 1 && !draining) {\\n runTimeout(drainQueue);\\n }\\n};\\n\\n// v8 likes predictible objects\\nfunction Item(fun, array) {\\n this.fun = fun;\\n this.array = array;\\n}\\nItem.prototype.run = function () {\\n this.fun.apply(null, this.array);\\n};\\nprocess.title = 'browser';\\nprocess.browser = true;\\nprocess.env = {};\\nprocess.argv = [];\\nprocess.version = ''; // empty string to avoid regexp issues\\nprocess.versions = {};\\n\\nfunction noop() {}\\n\\nprocess.on = noop;\\nprocess.addListener = noop;\\nprocess.once = noop;\\nprocess.off = noop;\\nprocess.removeListener = noop;\\nprocess.removeAllListeners = noop;\\nprocess.emit = noop;\\nprocess.prependListener = noop;\\nprocess.prependOnceListener = noop;\\n\\nprocess.listeners = function (name) { return [] }\\n\\nprocess.binding = function (name) {\\n throw new Error('process.binding is not supported');\\n};\\n\\nprocess.cwd = function () { return '/' };\\nprocess.chdir = function (dir) {\\n throw new Error('process.chdir is not supported');\\n};\\nprocess.umask = function() { return 0; };\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/process/browser.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/dist/AttributeMap.js\":\n/*!*******************************************************!*\\\n !*** ./node_modules/quill-delta/dist/AttributeMap.js ***!\n \\*******************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\nvar __importDefault = (this && this.__importDefault) || function (mod) {\\n return (mod && mod.__esModule) ? mod : { \\\"default\\\": mod };\\n};\\nObject.defineProperty(exports, \\\"__esModule\\\", { value: true });\\nvar deep_equal_1 = __importDefault(__webpack_require__(/*! deep-equal */ \\\"./node_modules/quill-delta/node_modules/deep-equal/index.js\\\"));\\nvar extend_1 = __importDefault(__webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\"));\\nvar AttributeMap;\\n(function (AttributeMap) {\\n function compose(a, b, keepNull) {\\n if (a === void 0) { a = {}; }\\n if (b === void 0) { b = {}; }\\n if (typeof a !== 'object') {\\n a = {};\\n }\\n if (typeof b !== 'object') {\\n b = {};\\n }\\n var attributes = extend_1.default(true, {}, b);\\n if (!keepNull) {\\n attributes = Object.keys(attributes).reduce(function (copy, key) {\\n if (attributes[key] != null) {\\n copy[key] = attributes[key];\\n }\\n return copy;\\n }, {});\\n }\\n for (var key in a) {\\n if (a[key] !== undefined && b[key] === undefined) {\\n attributes[key] = a[key];\\n }\\n }\\n return Object.keys(attributes).length > 0 ? attributes : undefined;\\n }\\n AttributeMap.compose = compose;\\n function diff(a, b) {\\n if (a === void 0) { a = {}; }\\n if (b === void 0) { b = {}; }\\n if (typeof a !== 'object') {\\n a = {};\\n }\\n if (typeof b !== 'object') {\\n b = {};\\n }\\n var attributes = Object.keys(a)\\n .concat(Object.keys(b))\\n .reduce(function (attrs, key) {\\n if (!deep_equal_1.default(a[key], b[key])) {\\n attrs[key] = b[key] === undefined ? null : b[key];\\n }\\n return attrs;\\n }, {});\\n return Object.keys(attributes).length > 0 ? attributes : undefined;\\n }\\n AttributeMap.diff = diff;\\n function invert(attr, base) {\\n if (attr === void 0) { attr = {}; }\\n if (base === void 0) { base = {}; }\\n attr = attr || {};\\n var baseInverted = Object.keys(base).reduce(function (memo, key) {\\n if (base[key] !== attr[key] && attr[key] !== undefined) {\\n memo[key] = base[key];\\n }\\n return memo;\\n }, {});\\n return Object.keys(attr).reduce(function (memo, key) {\\n if (attr[key] !== base[key] && base[key] === undefined) {\\n memo[key] = null;\\n }\\n return memo;\\n }, baseInverted);\\n }\\n AttributeMap.invert = invert;\\n function transform(a, b, priority) {\\n if (priority === void 0) { priority = false; }\\n if (typeof a !== 'object') {\\n return b;\\n }\\n if (typeof b !== 'object') {\\n return undefined;\\n }\\n if (!priority) {\\n return b; // b simply overwrites us without priority\\n }\\n var attributes = Object.keys(b).reduce(function (attrs, key) {\\n if (a[key] === undefined) {\\n attrs[key] = b[key]; // null is a valid value\\n }\\n return attrs;\\n }, {});\\n return Object.keys(attributes).length > 0 ? attributes : undefined;\\n }\\n AttributeMap.transform = transform;\\n})(AttributeMap || (AttributeMap = {}));\\nexports.default = AttributeMap;\\n//# sourceMappingURL=AttributeMap.js.map\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/dist/AttributeMap.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/dist/Delta.js\":\n/*!************************************************!*\\\n !*** ./node_modules/quill-delta/dist/Delta.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\nvar __importDefault = (this && this.__importDefault) || function (mod) {\\n return (mod && mod.__esModule) ? mod : { \\\"default\\\": mod };\\n};\\nvar deep_equal_1 = __importDefault(__webpack_require__(/*! deep-equal */ \\\"./node_modules/quill-delta/node_modules/deep-equal/index.js\\\"));\\nvar extend_1 = __importDefault(__webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\"));\\nvar fast_diff_1 = __importDefault(__webpack_require__(/*! fast-diff */ \\\"./node_modules/fast-diff/diff.js\\\"));\\nvar AttributeMap_1 = __importDefault(__webpack_require__(/*! ./AttributeMap */ \\\"./node_modules/quill-delta/dist/AttributeMap.js\\\"));\\nvar Op_1 = __importDefault(__webpack_require__(/*! ./Op */ \\\"./node_modules/quill-delta/dist/Op.js\\\"));\\nvar NULL_CHARACTER = String.fromCharCode(0); // Placeholder char for embed in diff()\\nvar Delta = /** @class */ (function () {\\n function Delta(ops) {\\n // Assume we are given a well formed ops\\n if (Array.isArray(ops)) {\\n this.ops = ops;\\n }\\n else if (ops != null && Array.isArray(ops.ops)) {\\n this.ops = ops.ops;\\n }\\n else {\\n this.ops = [];\\n }\\n }\\n Delta.prototype.insert = function (arg, attributes) {\\n var newOp = {};\\n if (typeof arg === 'string' && arg.length === 0) {\\n return this;\\n }\\n newOp.insert = arg;\\n if (attributes != null &&\\n typeof attributes === 'object' &&\\n Object.keys(attributes).length > 0) {\\n newOp.attributes = attributes;\\n }\\n return this.push(newOp);\\n };\\n Delta.prototype.delete = function (length) {\\n if (length <= 0) {\\n return this;\\n }\\n return this.push({ delete: length });\\n };\\n Delta.prototype.retain = function (length, attributes) {\\n if (length <= 0) {\\n return this;\\n }\\n var newOp = { retain: length };\\n if (attributes != null &&\\n typeof attributes === 'object' &&\\n Object.keys(attributes).length > 0) {\\n newOp.attributes = attributes;\\n }\\n return this.push(newOp);\\n };\\n Delta.prototype.push = function (newOp) {\\n var index = this.ops.length;\\n var lastOp = this.ops[index - 1];\\n newOp = extend_1.default(true, {}, newOp);\\n if (typeof lastOp === 'object') {\\n if (typeof newOp.delete === 'number' &&\\n typeof lastOp.delete === 'number') {\\n this.ops[index - 1] = { delete: lastOp.delete + newOp.delete };\\n return this;\\n }\\n // Since it does not matter if we insert before or after deleting at the same index,\\n // always prefer to insert first\\n if (typeof lastOp.delete === 'number' && newOp.insert != null) {\\n index -= 1;\\n lastOp = this.ops[index - 1];\\n if (typeof lastOp !== 'object') {\\n this.ops.unshift(newOp);\\n return this;\\n }\\n }\\n if (deep_equal_1.default(newOp.attributes, lastOp.attributes)) {\\n if (typeof newOp.insert === 'string' &&\\n typeof lastOp.insert === 'string') {\\n this.ops[index - 1] = { insert: lastOp.insert + newOp.insert };\\n if (typeof newOp.attributes === 'object') {\\n this.ops[index - 1].attributes = newOp.attributes;\\n }\\n return this;\\n }\\n else if (typeof newOp.retain === 'number' &&\\n typeof lastOp.retain === 'number') {\\n this.ops[index - 1] = { retain: lastOp.retain + newOp.retain };\\n if (typeof newOp.attributes === 'object') {\\n this.ops[index - 1].attributes = newOp.attributes;\\n }\\n return this;\\n }\\n }\\n }\\n if (index === this.ops.length) {\\n this.ops.push(newOp);\\n }\\n else {\\n this.ops.splice(index, 0, newOp);\\n }\\n return this;\\n };\\n Delta.prototype.chop = function () {\\n var lastOp = this.ops[this.ops.length - 1];\\n if (lastOp && lastOp.retain && !lastOp.attributes) {\\n this.ops.pop();\\n }\\n return this;\\n };\\n Delta.prototype.filter = function (predicate) {\\n return this.ops.filter(predicate);\\n };\\n Delta.prototype.forEach = function (predicate) {\\n this.ops.forEach(predicate);\\n };\\n Delta.prototype.map = function (predicate) {\\n return this.ops.map(predicate);\\n };\\n Delta.prototype.partition = function (predicate) {\\n var passed = [];\\n var failed = [];\\n this.forEach(function (op) {\\n var target = predicate(op) ? passed : failed;\\n target.push(op);\\n });\\n return [passed, failed];\\n };\\n Delta.prototype.reduce = function (predicate, initialValue) {\\n return this.ops.reduce(predicate, initialValue);\\n };\\n Delta.prototype.changeLength = function () {\\n return this.reduce(function (length, elem) {\\n if (elem.insert) {\\n return length + Op_1.default.length(elem);\\n }\\n else if (elem.delete) {\\n return length - elem.delete;\\n }\\n return length;\\n }, 0);\\n };\\n Delta.prototype.length = function () {\\n return this.reduce(function (length, elem) {\\n return length + Op_1.default.length(elem);\\n }, 0);\\n };\\n Delta.prototype.slice = function (start, end) {\\n if (start === void 0) { start = 0; }\\n if (end === void 0) { end = Infinity; }\\n var ops = [];\\n var iter = Op_1.default.iterator(this.ops);\\n var index = 0;\\n while (index < end && iter.hasNext()) {\\n var nextOp = void 0;\\n if (index < start) {\\n nextOp = iter.next(start - index);\\n }\\n else {\\n nextOp = iter.next(end - index);\\n ops.push(nextOp);\\n }\\n index += Op_1.default.length(nextOp);\\n }\\n return new Delta(ops);\\n };\\n Delta.prototype.compose = function (other) {\\n var thisIter = Op_1.default.iterator(this.ops);\\n var otherIter = Op_1.default.iterator(other.ops);\\n var ops = [];\\n var firstOther = otherIter.peek();\\n if (firstOther != null &&\\n typeof firstOther.retain === 'number' &&\\n firstOther.attributes == null) {\\n var firstLeft = firstOther.retain;\\n while (thisIter.peekType() === 'insert' &&\\n thisIter.peekLength() <= firstLeft) {\\n firstLeft -= thisIter.peekLength();\\n ops.push(thisIter.next());\\n }\\n if (firstOther.retain - firstLeft > 0) {\\n otherIter.next(firstOther.retain - firstLeft);\\n }\\n }\\n var delta = new Delta(ops);\\n while (thisIter.hasNext() || otherIter.hasNext()) {\\n if (otherIter.peekType() === 'insert') {\\n delta.push(otherIter.next());\\n }\\n else if (thisIter.peekType() === 'delete') {\\n delta.push(thisIter.next());\\n }\\n else {\\n var length_1 = Math.min(thisIter.peekLength(), otherIter.peekLength());\\n var thisOp = thisIter.next(length_1);\\n var otherOp = otherIter.next(length_1);\\n if (typeof otherOp.retain === 'number') {\\n var newOp = {};\\n if (typeof thisOp.retain === 'number') {\\n newOp.retain = length_1;\\n }\\n else {\\n newOp.insert = thisOp.insert;\\n }\\n // Preserve null when composing with a retain, otherwise remove it for inserts\\n var attributes = AttributeMap_1.default.compose(thisOp.attributes, otherOp.attributes, typeof thisOp.retain === 'number');\\n if (attributes) {\\n newOp.attributes = attributes;\\n }\\n delta.push(newOp);\\n // Optimization if rest of other is just retain\\n if (!otherIter.hasNext() &&\\n deep_equal_1.default(delta.ops[delta.ops.length - 1], newOp)) {\\n var rest = new Delta(thisIter.rest());\\n return delta.concat(rest).chop();\\n }\\n // Other op should be delete, we could be an insert or retain\\n // Insert + delete cancels out\\n }\\n else if (typeof otherOp.delete === 'number' &&\\n typeof thisOp.retain === 'number') {\\n delta.push(otherOp);\\n }\\n }\\n }\\n return delta.chop();\\n };\\n Delta.prototype.concat = function (other) {\\n var delta = new Delta(this.ops.slice());\\n if (other.ops.length > 0) {\\n delta.push(other.ops[0]);\\n delta.ops = delta.ops.concat(other.ops.slice(1));\\n }\\n return delta;\\n };\\n Delta.prototype.diff = function (other, cursor) {\\n if (this.ops === other.ops) {\\n return new Delta();\\n }\\n var strings = [this, other].map(function (delta) {\\n return delta\\n .map(function (op) {\\n if (op.insert != null) {\\n return typeof op.insert === 'string' ? op.insert : NULL_CHARACTER;\\n }\\n var prep = delta === other ? 'on' : 'with';\\n throw new Error('diff() called ' + prep + ' non-document');\\n })\\n .join('');\\n });\\n var retDelta = new Delta();\\n var diffResult = fast_diff_1.default(strings[0], strings[1], cursor);\\n var thisIter = Op_1.default.iterator(this.ops);\\n var otherIter = Op_1.default.iterator(other.ops);\\n diffResult.forEach(function (component) {\\n var length = component[1].length;\\n while (length > 0) {\\n var opLength = 0;\\n switch (component[0]) {\\n case fast_diff_1.default.INSERT:\\n opLength = Math.min(otherIter.peekLength(), length);\\n retDelta.push(otherIter.next(opLength));\\n break;\\n case fast_diff_1.default.DELETE:\\n opLength = Math.min(length, thisIter.peekLength());\\n thisIter.next(opLength);\\n retDelta.delete(opLength);\\n break;\\n case fast_diff_1.default.EQUAL:\\n opLength = Math.min(thisIter.peekLength(), otherIter.peekLength(), length);\\n var thisOp = thisIter.next(opLength);\\n var otherOp = otherIter.next(opLength);\\n if (deep_equal_1.default(thisOp.insert, otherOp.insert)) {\\n retDelta.retain(opLength, AttributeMap_1.default.diff(thisOp.attributes, otherOp.attributes));\\n }\\n else {\\n retDelta.push(otherOp).delete(opLength);\\n }\\n break;\\n }\\n length -= opLength;\\n }\\n });\\n return retDelta.chop();\\n };\\n Delta.prototype.eachLine = function (predicate, newline) {\\n if (newline === void 0) { newline = '\\\\n'; }\\n var iter = Op_1.default.iterator(this.ops);\\n var line = new Delta();\\n var i = 0;\\n while (iter.hasNext()) {\\n if (iter.peekType() !== 'insert') {\\n return;\\n }\\n var thisOp = iter.peek();\\n var start = Op_1.default.length(thisOp) - iter.peekLength();\\n var index = typeof thisOp.insert === 'string'\\n ? thisOp.insert.indexOf(newline, start) - start\\n : -1;\\n if (index < 0) {\\n line.push(iter.next());\\n }\\n else if (index > 0) {\\n line.push(iter.next(index));\\n }\\n else {\\n if (predicate(line, iter.next(1).attributes || {}, i) === false) {\\n return;\\n }\\n i += 1;\\n line = new Delta();\\n }\\n }\\n if (line.length() > 0) {\\n predicate(line, {}, i);\\n }\\n };\\n Delta.prototype.invert = function (base) {\\n var inverted = new Delta();\\n this.reduce(function (baseIndex, op) {\\n if (op.insert) {\\n inverted.delete(Op_1.default.length(op));\\n }\\n else if (op.retain && op.attributes == null) {\\n inverted.retain(op.retain);\\n return baseIndex + op.retain;\\n }\\n else if (op.delete || (op.retain && op.attributes)) {\\n var length_2 = (op.delete || op.retain);\\n var slice = base.slice(baseIndex, baseIndex + length_2);\\n slice.forEach(function (baseOp) {\\n if (op.delete) {\\n inverted.push(baseOp);\\n }\\n else if (op.retain && op.attributes) {\\n inverted.retain(Op_1.default.length(baseOp), AttributeMap_1.default.invert(op.attributes, baseOp.attributes));\\n }\\n });\\n return baseIndex + length_2;\\n }\\n return baseIndex;\\n }, 0);\\n return inverted.chop();\\n };\\n Delta.prototype.transform = function (arg, priority) {\\n if (priority === void 0) { priority = false; }\\n priority = !!priority;\\n if (typeof arg === 'number') {\\n return this.transformPosition(arg, priority);\\n }\\n var other = arg;\\n var thisIter = Op_1.default.iterator(this.ops);\\n var otherIter = Op_1.default.iterator(other.ops);\\n var delta = new Delta();\\n while (thisIter.hasNext() || otherIter.hasNext()) {\\n if (thisIter.peekType() === 'insert' &&\\n (priority || otherIter.peekType() !== 'insert')) {\\n delta.retain(Op_1.default.length(thisIter.next()));\\n }\\n else if (otherIter.peekType() === 'insert') {\\n delta.push(otherIter.next());\\n }\\n else {\\n var length_3 = Math.min(thisIter.peekLength(), otherIter.peekLength());\\n var thisOp = thisIter.next(length_3);\\n var otherOp = otherIter.next(length_3);\\n if (thisOp.delete) {\\n // Our delete either makes their delete redundant or removes their retain\\n continue;\\n }\\n else if (otherOp.delete) {\\n delta.push(otherOp);\\n }\\n else {\\n // We retain either their retain or insert\\n delta.retain(length_3, AttributeMap_1.default.transform(thisOp.attributes, otherOp.attributes, priority));\\n }\\n }\\n }\\n return delta.chop();\\n };\\n Delta.prototype.transformPosition = function (index, priority) {\\n if (priority === void 0) { priority = false; }\\n priority = !!priority;\\n var thisIter = Op_1.default.iterator(this.ops);\\n var offset = 0;\\n while (thisIter.hasNext() && offset <= index) {\\n var length_4 = thisIter.peekLength();\\n var nextType = thisIter.peekType();\\n thisIter.next();\\n if (nextType === 'delete') {\\n index -= Math.min(length_4, index - offset);\\n continue;\\n }\\n else if (nextType === 'insert' && (offset < index || !priority)) {\\n index += length_4;\\n }\\n offset += length_4;\\n }\\n return index;\\n };\\n Delta.Op = Op_1.default;\\n Delta.AttributeMap = AttributeMap_1.default;\\n return Delta;\\n}());\\nmodule.exports = Delta;\\n//# sourceMappingURL=Delta.js.map\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/dist/Delta.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/dist/Iterator.js\":\n/*!***************************************************!*\\\n !*** ./node_modules/quill-delta/dist/Iterator.js ***!\n \\***************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\nvar __importDefault = (this && this.__importDefault) || function (mod) {\\n return (mod && mod.__esModule) ? mod : { \\\"default\\\": mod };\\n};\\nObject.defineProperty(exports, \\\"__esModule\\\", { value: true });\\nvar Op_1 = __importDefault(__webpack_require__(/*! ./Op */ \\\"./node_modules/quill-delta/dist/Op.js\\\"));\\nvar Iterator = /** @class */ (function () {\\n function Iterator(ops) {\\n this.ops = ops;\\n this.index = 0;\\n this.offset = 0;\\n }\\n Iterator.prototype.hasNext = function () {\\n return this.peekLength() < Infinity;\\n };\\n Iterator.prototype.next = function (length) {\\n if (!length) {\\n length = Infinity;\\n }\\n var nextOp = this.ops[this.index];\\n if (nextOp) {\\n var offset = this.offset;\\n var opLength = Op_1.default.length(nextOp);\\n if (length >= opLength - offset) {\\n length = opLength - offset;\\n this.index += 1;\\n this.offset = 0;\\n }\\n else {\\n this.offset += length;\\n }\\n if (typeof nextOp.delete === 'number') {\\n return { delete: length };\\n }\\n else {\\n var retOp = {};\\n if (nextOp.attributes) {\\n retOp.attributes = nextOp.attributes;\\n }\\n if (typeof nextOp.retain === 'number') {\\n retOp.retain = length;\\n }\\n else if (typeof nextOp.insert === 'string') {\\n retOp.insert = nextOp.insert.substr(offset, length);\\n }\\n else {\\n // offset should === 0, length should === 1\\n retOp.insert = nextOp.insert;\\n }\\n return retOp;\\n }\\n }\\n else {\\n return { retain: Infinity };\\n }\\n };\\n Iterator.prototype.peek = function () {\\n return this.ops[this.index];\\n };\\n Iterator.prototype.peekLength = function () {\\n if (this.ops[this.index]) {\\n // Should never return 0 if our index is being managed correctly\\n return Op_1.default.length(this.ops[this.index]) - this.offset;\\n }\\n else {\\n return Infinity;\\n }\\n };\\n Iterator.prototype.peekType = function () {\\n if (this.ops[this.index]) {\\n if (typeof this.ops[this.index].delete === 'number') {\\n return 'delete';\\n }\\n else if (typeof this.ops[this.index].retain === 'number') {\\n return 'retain';\\n }\\n else {\\n return 'insert';\\n }\\n }\\n return 'retain';\\n };\\n Iterator.prototype.rest = function () {\\n if (!this.hasNext()) {\\n return [];\\n }\\n else if (this.offset === 0) {\\n return this.ops.slice(this.index);\\n }\\n else {\\n var offset = this.offset;\\n var index = this.index;\\n var next = this.next();\\n var rest = this.ops.slice(this.index);\\n this.offset = offset;\\n this.index = index;\\n return [next].concat(rest);\\n }\\n };\\n return Iterator;\\n}());\\nexports.default = Iterator;\\n//# sourceMappingURL=Iterator.js.map\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/dist/Iterator.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/dist/Op.js\":\n/*!*********************************************!*\\\n !*** ./node_modules/quill-delta/dist/Op.js ***!\n \\*********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\nvar __importDefault = (this && this.__importDefault) || function (mod) {\\n return (mod && mod.__esModule) ? mod : { \\\"default\\\": mod };\\n};\\nObject.defineProperty(exports, \\\"__esModule\\\", { value: true });\\nvar Iterator_1 = __importDefault(__webpack_require__(/*! ./Iterator */ \\\"./node_modules/quill-delta/dist/Iterator.js\\\"));\\nvar Op;\\n(function (Op) {\\n function iterator(ops) {\\n return new Iterator_1.default(ops);\\n }\\n Op.iterator = iterator;\\n function length(op) {\\n if (typeof op.delete === 'number') {\\n return op.delete;\\n }\\n else if (typeof op.retain === 'number') {\\n return op.retain;\\n }\\n else {\\n return typeof op.insert === 'string' ? op.insert.length : 1;\\n }\\n }\\n Op.length = length;\\n})(Op || (Op = {}));\\nexports.default = Op;\\n//# sourceMappingURL=Op.js.map\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/dist/Op.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/node_modules/deep-equal/index.js\":\n/*!*******************************************************************!*\\\n !*** ./node_modules/quill-delta/node_modules/deep-equal/index.js ***!\n \\*******************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\neval(\"var objectKeys = __webpack_require__(/*! object-keys */ \\\"./node_modules/quill-delta/node_modules/object-keys/index.js\\\");\\nvar isArguments = __webpack_require__(/*! is-arguments */ \\\"./node_modules/is-arguments/index.js\\\");\\nvar is = __webpack_require__(/*! object-is */ \\\"./node_modules/object-is/index.js\\\");\\nvar isRegex = __webpack_require__(/*! is-regex */ \\\"./node_modules/is-regex/index.js\\\");\\nvar flags = __webpack_require__(/*! regexp.prototype.flags */ \\\"./node_modules/regexp.prototype.flags/index.js\\\");\\nvar isDate = __webpack_require__(/*! is-date-object */ \\\"./node_modules/is-date-object/index.js\\\");\\n\\nvar getTime = Date.prototype.getTime;\\n\\nfunction deepEqual(actual, expected, options) {\\n var opts = options || {};\\n\\n // 7.1. All identical values are equivalent, as determined by ===.\\n if (opts.strict ? is(actual, expected) : actual === expected) {\\n return true;\\n }\\n\\n // 7.3. Other pairs that do not both pass typeof value == 'object', equivalence is determined by ==.\\n if (!actual || !expected || (typeof actual !== 'object' && typeof expected !== 'object')) {\\n return opts.strict ? is(actual, expected) : actual == expected;\\n }\\n\\n /*\\n * 7.4. For all other Object pairs, including Array objects, equivalence is\\n * determined by having the same number of owned properties (as verified\\n * with Object.prototype.hasOwnProperty.call), the same set of keys\\n * (although not necessarily the same order), equivalent values for every\\n * corresponding key, and an identical 'prototype' property. Note: this\\n * accounts for both named and indexed properties on Arrays.\\n */\\n // eslint-disable-next-line no-use-before-define\\n return objEquiv(actual, expected, opts);\\n}\\n\\nfunction isUndefinedOrNull(value) {\\n return value === null || value === undefined;\\n}\\n\\nfunction isBuffer(x) {\\n if (!x || typeof x !== 'object' || typeof x.length !== 'number') {\\n return false;\\n }\\n if (typeof x.copy !== 'function' || typeof x.slice !== 'function') {\\n return false;\\n }\\n if (x.length > 0 && typeof x[0] !== 'number') {\\n return false;\\n }\\n return true;\\n}\\n\\nfunction objEquiv(a, b, opts) {\\n /* eslint max-statements: [2, 50] */\\n var i, key;\\n if (typeof a !== typeof b) { return false; }\\n if (isUndefinedOrNull(a) || isUndefinedOrNull(b)) { return false; }\\n\\n // an identical 'prototype' property.\\n if (a.prototype !== b.prototype) { return false; }\\n\\n if (isArguments(a) !== isArguments(b)) { return false; }\\n\\n var aIsRegex = isRegex(a);\\n var bIsRegex = isRegex(b);\\n if (aIsRegex !== bIsRegex) { return false; }\\n if (aIsRegex || bIsRegex) {\\n return a.source === b.source && flags(a) === flags(b);\\n }\\n\\n if (isDate(a) && isDate(b)) {\\n return getTime.call(a) === getTime.call(b);\\n }\\n\\n var aIsBuffer = isBuffer(a);\\n var bIsBuffer = isBuffer(b);\\n if (aIsBuffer !== bIsBuffer) { return false; }\\n if (aIsBuffer || bIsBuffer) { // && would work too, because both are true or both false here\\n if (a.length !== b.length) { return false; }\\n for (i = 0; i < a.length; i++) {\\n if (a[i] !== b[i]) { return false; }\\n }\\n return true;\\n }\\n\\n if (typeof a !== typeof b) { return false; }\\n\\n try {\\n var ka = objectKeys(a);\\n var kb = objectKeys(b);\\n } catch (e) { // happens when one is a string literal and the other isn't\\n return false;\\n }\\n // having the same number of owned properties (keys incorporates hasOwnProperty)\\n if (ka.length !== kb.length) { return false; }\\n\\n // the same set of keys (although not necessarily the same order),\\n ka.sort();\\n kb.sort();\\n // ~~~cheap key test\\n for (i = ka.length - 1; i >= 0; i--) {\\n if (ka[i] != kb[i]) { return false; }\\n }\\n // equivalent values for every corresponding key, and ~~~possibly expensive deep test\\n for (i = ka.length - 1; i >= 0; i--) {\\n key = ka[i];\\n if (!deepEqual(a[key], b[key], opts)) { return false; }\\n }\\n\\n return true;\\n}\\n\\nmodule.exports = deepEqual;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/node_modules/deep-equal/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/node_modules/object-keys/implementation.js\":\n/*!*****************************************************************************!*\\\n !*** ./node_modules/quill-delta/node_modules/object-keys/implementation.js ***!\n \\*****************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar keysShim;\\nif (!Object.keys) {\\n\\t// modified from https://github.com/es-shims/es5-shim\\n\\tvar has = Object.prototype.hasOwnProperty;\\n\\tvar toStr = Object.prototype.toString;\\n\\tvar isArgs = __webpack_require__(/*! ./isArguments */ \\\"./node_modules/quill-delta/node_modules/object-keys/isArguments.js\\\"); // eslint-disable-line global-require\\n\\tvar isEnumerable = Object.prototype.propertyIsEnumerable;\\n\\tvar hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');\\n\\tvar hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');\\n\\tvar dontEnums = [\\n\\t\\t'toString',\\n\\t\\t'toLocaleString',\\n\\t\\t'valueOf',\\n\\t\\t'hasOwnProperty',\\n\\t\\t'isPrototypeOf',\\n\\t\\t'propertyIsEnumerable',\\n\\t\\t'constructor'\\n\\t];\\n\\tvar equalsConstructorPrototype = function (o) {\\n\\t\\tvar ctor = o.constructor;\\n\\t\\treturn ctor && ctor.prototype === o;\\n\\t};\\n\\tvar excludedKeys = {\\n\\t\\t$applicationCache: true,\\n\\t\\t$console: true,\\n\\t\\t$external: true,\\n\\t\\t$frame: true,\\n\\t\\t$frameElement: true,\\n\\t\\t$frames: true,\\n\\t\\t$innerHeight: true,\\n\\t\\t$innerWidth: true,\\n\\t\\t$onmozfullscreenchange: true,\\n\\t\\t$onmozfullscreenerror: true,\\n\\t\\t$outerHeight: true,\\n\\t\\t$outerWidth: true,\\n\\t\\t$pageXOffset: true,\\n\\t\\t$pageYOffset: true,\\n\\t\\t$parent: true,\\n\\t\\t$scrollLeft: true,\\n\\t\\t$scrollTop: true,\\n\\t\\t$scrollX: true,\\n\\t\\t$scrollY: true,\\n\\t\\t$self: true,\\n\\t\\t$webkitIndexedDB: true,\\n\\t\\t$webkitStorageInfo: true,\\n\\t\\t$window: true\\n\\t};\\n\\tvar hasAutomationEqualityBug = (function () {\\n\\t\\t/* global window */\\n\\t\\tif (typeof window === 'undefined') { return false; }\\n\\t\\tfor (var k in window) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\tif (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {\\n\\t\\t\\t\\t\\ttry {\\n\\t\\t\\t\\t\\t\\tequalsConstructorPrototype(window[k]);\\n\\t\\t\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\t\\t\\treturn true;\\n\\t\\t\\t\\t\\t}\\n\\t\\t\\t\\t}\\n\\t\\t\\t} catch (e) {\\n\\t\\t\\t\\treturn true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn false;\\n\\t}());\\n\\tvar equalsConstructorPrototypeIfNotBuggy = function (o) {\\n\\t\\t/* global window */\\n\\t\\tif (typeof window === 'undefined' || !hasAutomationEqualityBug) {\\n\\t\\t\\treturn equalsConstructorPrototype(o);\\n\\t\\t}\\n\\t\\ttry {\\n\\t\\t\\treturn equalsConstructorPrototype(o);\\n\\t\\t} catch (e) {\\n\\t\\t\\treturn false;\\n\\t\\t}\\n\\t};\\n\\n\\tkeysShim = function keys(object) {\\n\\t\\tvar isObject = object !== null && typeof object === 'object';\\n\\t\\tvar isFunction = toStr.call(object) === '[object Function]';\\n\\t\\tvar isArguments = isArgs(object);\\n\\t\\tvar isString = isObject && toStr.call(object) === '[object String]';\\n\\t\\tvar theKeys = [];\\n\\n\\t\\tif (!isObject && !isFunction && !isArguments) {\\n\\t\\t\\tthrow new TypeError('Object.keys called on a non-object');\\n\\t\\t}\\n\\n\\t\\tvar skipProto = hasProtoEnumBug && isFunction;\\n\\t\\tif (isString && object.length > 0 && !has.call(object, 0)) {\\n\\t\\t\\tfor (var i = 0; i < object.length; ++i) {\\n\\t\\t\\t\\ttheKeys.push(String(i));\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\tif (isArguments && object.length > 0) {\\n\\t\\t\\tfor (var j = 0; j < object.length; ++j) {\\n\\t\\t\\t\\ttheKeys.push(String(j));\\n\\t\\t\\t}\\n\\t\\t} else {\\n\\t\\t\\tfor (var name in object) {\\n\\t\\t\\t\\tif (!(skipProto && name === 'prototype') && has.call(object, name)) {\\n\\t\\t\\t\\t\\ttheKeys.push(String(name));\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\tif (hasDontEnumBug) {\\n\\t\\t\\tvar skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);\\n\\n\\t\\t\\tfor (var k = 0; k < dontEnums.length; ++k) {\\n\\t\\t\\t\\tif (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {\\n\\t\\t\\t\\t\\ttheKeys.push(dontEnums[k]);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\treturn theKeys;\\n\\t};\\n}\\nmodule.exports = keysShim;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/node_modules/object-keys/implementation.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/node_modules/object-keys/index.js\":\n/*!********************************************************************!*\\\n !*** ./node_modules/quill-delta/node_modules/object-keys/index.js ***!\n \\********************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar slice = Array.prototype.slice;\\nvar isArgs = __webpack_require__(/*! ./isArguments */ \\\"./node_modules/quill-delta/node_modules/object-keys/isArguments.js\\\");\\n\\nvar origKeys = Object.keys;\\nvar keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(/*! ./implementation */ \\\"./node_modules/quill-delta/node_modules/object-keys/implementation.js\\\");\\n\\nvar originalKeys = Object.keys;\\n\\nkeysShim.shim = function shimObjectKeys() {\\n\\tif (Object.keys) {\\n\\t\\tvar keysWorksWithArguments = (function () {\\n\\t\\t\\t// Safari 5.0 bug\\n\\t\\t\\tvar args = Object.keys(arguments);\\n\\t\\t\\treturn args && args.length === arguments.length;\\n\\t\\t}(1, 2));\\n\\t\\tif (!keysWorksWithArguments) {\\n\\t\\t\\tObject.keys = function keys(object) { // eslint-disable-line func-name-matching\\n\\t\\t\\t\\tif (isArgs(object)) {\\n\\t\\t\\t\\t\\treturn originalKeys(slice.call(object));\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\treturn originalKeys(object);\\n\\t\\t\\t};\\n\\t\\t}\\n\\t} else {\\n\\t\\tObject.keys = keysShim;\\n\\t}\\n\\treturn Object.keys || keysShim;\\n};\\n\\nmodule.exports = keysShim;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/node_modules/object-keys/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/quill-delta/node_modules/object-keys/isArguments.js\":\n/*!**************************************************************************!*\\\n !*** ./node_modules/quill-delta/node_modules/object-keys/isArguments.js ***!\n \\**************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar toStr = Object.prototype.toString;\\n\\nmodule.exports = function isArguments(value) {\\n\\tvar str = toStr.call(value);\\n\\tvar isArgs = str === '[object Arguments]';\\n\\tif (!isArgs) {\\n\\t\\tisArgs = str !== '[object Array]' &&\\n\\t\\t\\tvalue !== null &&\\n\\t\\t\\ttypeof value === 'object' &&\\n\\t\\t\\ttypeof value.length === 'number' &&\\n\\t\\t\\tvalue.length >= 0 &&\\n\\t\\t\\ttoStr.call(value.callee) === '[object Function]';\\n\\t}\\n\\treturn isArgs;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/quill-delta/node_modules/object-keys/isArguments.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/regexp.prototype.flags/implementation.js\":\n/*!***************************************************************!*\\\n !*** ./node_modules/regexp.prototype.flags/implementation.js ***!\n \\***************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar $Object = Object;\\nvar $TypeError = TypeError;\\n\\nmodule.exports = function flags() {\\n\\tif (this != null && this !== $Object(this)) {\\n\\t\\tthrow new $TypeError('RegExp.prototype.flags getter called on non-object');\\n\\t}\\n\\tvar result = '';\\n\\tif (this.global) {\\n\\t\\tresult += 'g';\\n\\t}\\n\\tif (this.ignoreCase) {\\n\\t\\tresult += 'i';\\n\\t}\\n\\tif (this.multiline) {\\n\\t\\tresult += 'm';\\n\\t}\\n\\tif (this.dotAll) {\\n\\t\\tresult += 's';\\n\\t}\\n\\tif (this.unicode) {\\n\\t\\tresult += 'u';\\n\\t}\\n\\tif (this.sticky) {\\n\\t\\tresult += 'y';\\n\\t}\\n\\treturn result;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/regexp.prototype.flags/implementation.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/regexp.prototype.flags/index.js\":\n/*!******************************************************!*\\\n !*** ./node_modules/regexp.prototype.flags/index.js ***!\n \\******************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar define = __webpack_require__(/*! define-properties */ \\\"./node_modules/define-properties/index.js\\\");\\nvar callBind = __webpack_require__(/*! es-abstract/helpers/callBind */ \\\"./node_modules/regexp.prototype.flags/node_modules/es-abstract/helpers/callBind.js\\\");\\n\\nvar implementation = __webpack_require__(/*! ./implementation */ \\\"./node_modules/regexp.prototype.flags/implementation.js\\\");\\nvar getPolyfill = __webpack_require__(/*! ./polyfill */ \\\"./node_modules/regexp.prototype.flags/polyfill.js\\\");\\nvar shim = __webpack_require__(/*! ./shim */ \\\"./node_modules/regexp.prototype.flags/shim.js\\\");\\n\\nvar flagsBound = callBind(implementation);\\n\\ndefine(flagsBound, {\\n\\tgetPolyfill: getPolyfill,\\n\\timplementation: implementation,\\n\\tshim: shim\\n});\\n\\nmodule.exports = flagsBound;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/regexp.prototype.flags/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/regexp.prototype.flags/node_modules/es-abstract/GetIntrinsic.js\":\n/*!**************************************************************************************!*\\\n !*** ./node_modules/regexp.prototype.flags/node_modules/es-abstract/GetIntrinsic.js ***!\n \\**************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* globals\\n\\tAtomics,\\n\\tSharedArrayBuffer,\\n*/\\n\\nvar undefined;\\n\\nvar $TypeError = TypeError;\\n\\nvar $gOPD = Object.getOwnPropertyDescriptor;\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD({}, '');\\n\\t} catch (e) {\\n\\t\\t$gOPD = null; // this is IE 8, which has a broken gOPD\\n\\t}\\n}\\n\\nvar throwTypeError = function () { throw new $TypeError(); };\\nvar ThrowTypeError = $gOPD\\n\\t? (function () {\\n\\t\\ttry {\\n\\t\\t\\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\\n\\t\\t\\targuments.callee; // IE 8 does not throw here\\n\\t\\t\\treturn throwTypeError;\\n\\t\\t} catch (calleeThrows) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\\n\\t\\t\\t\\treturn $gOPD(arguments, 'callee').get;\\n\\t\\t\\t} catch (gOPDthrows) {\\n\\t\\t\\t\\treturn throwTypeError;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}())\\n\\t: throwTypeError;\\n\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\n\\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\\n\\nvar generator; // = function * () {};\\nvar generatorFunction = generator ? getProto(generator) : undefined;\\nvar asyncFn; // async function() {};\\nvar asyncFunction = asyncFn ? asyncFn.constructor : undefined;\\nvar asyncGen; // async function * () {};\\nvar asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;\\nvar asyncGenIterator = asyncGen ? asyncGen() : undefined;\\n\\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\\n\\nvar INTRINSICS = {\\n\\t'%Array%': Array,\\n\\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\\n\\t'%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,\\n\\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\\n\\t'%ArrayPrototype%': Array.prototype,\\n\\t'%ArrayProto_entries%': Array.prototype.entries,\\n\\t'%ArrayProto_forEach%': Array.prototype.forEach,\\n\\t'%ArrayProto_keys%': Array.prototype.keys,\\n\\t'%ArrayProto_values%': Array.prototype.values,\\n\\t'%AsyncFromSyncIteratorPrototype%': undefined,\\n\\t'%AsyncFunction%': asyncFunction,\\n\\t'%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,\\n\\t'%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,\\n\\t'%AsyncGeneratorFunction%': asyncGenFunction,\\n\\t'%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,\\n\\t'%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,\\n\\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\\n\\t'%Boolean%': Boolean,\\n\\t'%BooleanPrototype%': Boolean.prototype,\\n\\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\\n\\t'%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,\\n\\t'%Date%': Date,\\n\\t'%DatePrototype%': Date.prototype,\\n\\t'%decodeURI%': decodeURI,\\n\\t'%decodeURIComponent%': decodeURIComponent,\\n\\t'%encodeURI%': encodeURI,\\n\\t'%encodeURIComponent%': encodeURIComponent,\\n\\t'%Error%': Error,\\n\\t'%ErrorPrototype%': Error.prototype,\\n\\t'%eval%': eval, // eslint-disable-line no-eval\\n\\t'%EvalError%': EvalError,\\n\\t'%EvalErrorPrototype%': EvalError.prototype,\\n\\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\\n\\t'%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,\\n\\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\\n\\t'%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,\\n\\t'%Function%': Function,\\n\\t'%FunctionPrototype%': Function.prototype,\\n\\t'%Generator%': generator ? getProto(generator()) : undefined,\\n\\t'%GeneratorFunction%': generatorFunction,\\n\\t'%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,\\n\\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\\n\\t'%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\\n\\t'%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\\n\\t'%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,\\n\\t'%isFinite%': isFinite,\\n\\t'%isNaN%': isNaN,\\n\\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\\n\\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\\n\\t'%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,\\n\\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\\n\\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\\n\\t'%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,\\n\\t'%Math%': Math,\\n\\t'%Number%': Number,\\n\\t'%NumberPrototype%': Number.prototype,\\n\\t'%Object%': Object,\\n\\t'%ObjectPrototype%': Object.prototype,\\n\\t'%ObjProto_toString%': Object.prototype.toString,\\n\\t'%ObjProto_valueOf%': Object.prototype.valueOf,\\n\\t'%parseFloat%': parseFloat,\\n\\t'%parseInt%': parseInt,\\n\\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\\n\\t'%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,\\n\\t'%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,\\n\\t'%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,\\n\\t'%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,\\n\\t'%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,\\n\\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\\n\\t'%RangeError%': RangeError,\\n\\t'%RangeErrorPrototype%': RangeError.prototype,\\n\\t'%ReferenceError%': ReferenceError,\\n\\t'%ReferenceErrorPrototype%': ReferenceError.prototype,\\n\\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\\n\\t'%RegExp%': RegExp,\\n\\t'%RegExpPrototype%': RegExp.prototype,\\n\\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\\n\\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\\n\\t'%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,\\n\\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\\n\\t'%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,\\n\\t'%String%': String,\\n\\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\\n\\t'%StringPrototype%': String.prototype,\\n\\t'%Symbol%': hasSymbols ? Symbol : undefined,\\n\\t'%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,\\n\\t'%SyntaxError%': SyntaxError,\\n\\t'%SyntaxErrorPrototype%': SyntaxError.prototype,\\n\\t'%ThrowTypeError%': ThrowTypeError,\\n\\t'%TypedArray%': TypedArray,\\n\\t'%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,\\n\\t'%TypeError%': $TypeError,\\n\\t'%TypeErrorPrototype%': $TypeError.prototype,\\n\\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\\n\\t'%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,\\n\\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\\n\\t'%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,\\n\\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\\n\\t'%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,\\n\\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\\n\\t'%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,\\n\\t'%URIError%': URIError,\\n\\t'%URIErrorPrototype%': URIError.prototype,\\n\\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\\n\\t'%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,\\n\\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,\\n\\t'%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype\\n};\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\nvar $replace = bind.call(Function.call, String.prototype.replace);\\n\\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\\nvar rePropName = /[^%.[\\\\]]+|\\\\[(?:(-?\\\\d+(?:\\\\.\\\\d+)?)|([\\\"'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2)\\\\]|(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|%$))/g;\\nvar reEscapeChar = /\\\\\\\\(\\\\\\\\)?/g; /** Used to match backslashes in property paths. */\\nvar stringToPath = function stringToPath(string) {\\n\\tvar result = [];\\n\\t$replace(string, rePropName, function (match, number, quote, subString) {\\n\\t\\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);\\n\\t});\\n\\treturn result;\\n};\\n/* end adaptation */\\n\\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\\n\\tif (!(name in INTRINSICS)) {\\n\\t\\tthrow new SyntaxError('intrinsic ' + name + ' does not exist!');\\n\\t}\\n\\n\\t// istanbul ignore if // hopefully this is impossible to test :-)\\n\\tif (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {\\n\\t\\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\\n\\t}\\n\\n\\treturn INTRINSICS[name];\\n};\\n\\nmodule.exports = function GetIntrinsic(name, allowMissing) {\\n\\tif (typeof name !== 'string' || name.length === 0) {\\n\\t\\tthrow new TypeError('intrinsic name must be a non-empty string');\\n\\t}\\n\\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\\n\\t\\tthrow new TypeError('\\\"allowMissing\\\" argument must be a boolean');\\n\\t}\\n\\n\\tvar parts = stringToPath(name);\\n\\n\\tvar value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);\\n\\tfor (var i = 1; i < parts.length; i += 1) {\\n\\t\\tif (value != null) {\\n\\t\\t\\tif ($gOPD && (i + 1) >= parts.length) {\\n\\t\\t\\t\\tvar desc = $gOPD(value, parts[i]);\\n\\t\\t\\t\\tif (!allowMissing && !(parts[i] in value)) {\\n\\t\\t\\t\\t\\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tvalue = desc ? (desc.get || desc.value) : value[parts[i]];\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tvalue = value[parts[i]];\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn value;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/regexp.prototype.flags/node_modules/es-abstract/GetIntrinsic.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/regexp.prototype.flags/node_modules/es-abstract/helpers/callBind.js\":\n/*!******************************************************************************************!*\\\n !*** ./node_modules/regexp.prototype.flags/node_modules/es-abstract/helpers/callBind.js ***!\n \\******************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/regexp.prototype.flags/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $Function = GetIntrinsic('%Function%');\\nvar $apply = $Function.apply;\\nvar $call = $Function.call;\\n\\nmodule.exports = function callBind() {\\n\\treturn bind.apply($call, arguments);\\n};\\n\\nmodule.exports.apply = function applyBind() {\\n\\treturn bind.apply($apply, arguments);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/regexp.prototype.flags/node_modules/es-abstract/helpers/callBind.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/regexp.prototype.flags/polyfill.js\":\n/*!*********************************************************!*\\\n !*** ./node_modules/regexp.prototype.flags/polyfill.js ***!\n \\*********************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar implementation = __webpack_require__(/*! ./implementation */ \\\"./node_modules/regexp.prototype.flags/implementation.js\\\");\\n\\nvar supportsDescriptors = __webpack_require__(/*! define-properties */ \\\"./node_modules/define-properties/index.js\\\").supportsDescriptors;\\nvar $gOPD = Object.getOwnPropertyDescriptor;\\nvar $TypeError = TypeError;\\n\\nmodule.exports = function getPolyfill() {\\n\\tif (!supportsDescriptors) {\\n\\t\\tthrow new $TypeError('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors');\\n\\t}\\n\\tif ((/a/mig).flags === 'gim') {\\n\\t\\tvar descriptor = $gOPD(RegExp.prototype, 'flags');\\n\\t\\tif (descriptor && typeof descriptor.get === 'function' && typeof (/a/).dotAll === 'boolean') {\\n\\t\\t\\treturn descriptor.get;\\n\\t\\t}\\n\\t}\\n\\treturn implementation;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/regexp.prototype.flags/polyfill.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/regexp.prototype.flags/shim.js\":\n/*!*****************************************************!*\\\n !*** ./node_modules/regexp.prototype.flags/shim.js ***!\n \\*****************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar supportsDescriptors = __webpack_require__(/*! define-properties */ \\\"./node_modules/define-properties/index.js\\\").supportsDescriptors;\\nvar getPolyfill = __webpack_require__(/*! ./polyfill */ \\\"./node_modules/regexp.prototype.flags/polyfill.js\\\");\\nvar gOPD = Object.getOwnPropertyDescriptor;\\nvar defineProperty = Object.defineProperty;\\nvar TypeErr = TypeError;\\nvar getProto = Object.getPrototypeOf;\\nvar regex = /a/;\\n\\nmodule.exports = function shimFlags() {\\n\\tif (!supportsDescriptors || !getProto) {\\n\\t\\tthrow new TypeErr('RegExp.prototype.flags requires a true ES5 environment that supports property descriptors');\\n\\t}\\n\\tvar polyfill = getPolyfill();\\n\\tvar proto = getProto(regex);\\n\\tvar descriptor = gOPD(proto, 'flags');\\n\\tif (!descriptor || descriptor.get !== polyfill) {\\n\\t\\tdefineProperty(proto, 'flags', {\\n\\t\\t\\tconfigurable: true,\\n\\t\\t\\tenumerable: false,\\n\\t\\t\\tget: polyfill\\n\\t\\t});\\n\\t}\\n\\treturn polyfill;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/regexp.prototype.flags/shim.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/side-channel/index.js\":\n/*!********************************************!*\\\n !*** ./node_modules/side-channel/index.js ***!\n \\********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! es-abstract/GetIntrinsic */ \\\"./node_modules/side-channel/node_modules/es-abstract/GetIntrinsic.js\\\");\\nvar callBound = __webpack_require__(/*! es-abstract/helpers/callBound */ \\\"./node_modules/side-channel/node_modules/es-abstract/helpers/callBound.js\\\");\\nvar inspect = __webpack_require__(/*! object-inspect */ \\\"./node_modules/object-inspect/index.js\\\");\\n\\nvar $TypeError = GetIntrinsic('%TypeError%');\\nvar $WeakMap = GetIntrinsic('%WeakMap%', true);\\nvar $Map = GetIntrinsic('%Map%', true);\\nvar $push = callBound('Array.prototype.push');\\n\\nvar $weakMapGet = callBound('WeakMap.prototype.get', true);\\nvar $weakMapSet = callBound('WeakMap.prototype.set', true);\\nvar $weakMapHas = callBound('WeakMap.prototype.has', true);\\nvar $mapGet = callBound('Map.prototype.get', true);\\nvar $mapSet = callBound('Map.prototype.set', true);\\nvar $mapHas = callBound('Map.prototype.has', true);\\nvar objectGet = function (objects, key) { // eslint-disable-line consistent-return\\n\\tfor (var i = 0; i < objects.length; i += 1) {\\n\\t\\tif (objects[i].key === key) {\\n\\t\\t\\treturn objects[i].value;\\n\\t\\t}\\n\\t}\\n};\\nvar objectSet = function (objects, key, value) {\\n\\tfor (var i = 0; i < objects.length; i += 1) {\\n\\t\\tif (objects[i].key === key) {\\n\\t\\t\\tobjects[i].value = value; // eslint-disable-line no-param-reassign\\n\\t\\t\\treturn;\\n\\t\\t}\\n\\t}\\n\\t$push(objects, {\\n\\t\\tkey: key,\\n\\t\\tvalue: value\\n\\t});\\n};\\nvar objectHas = function (objects, key) {\\n\\tfor (var i = 0; i < objects.length; i += 1) {\\n\\t\\tif (objects[i].key === key) {\\n\\t\\t\\treturn true;\\n\\t\\t}\\n\\t}\\n\\treturn false;\\n};\\n\\nmodule.exports = function getSideChannel() {\\n\\tvar $wm;\\n\\tvar $m;\\n\\tvar $o;\\n\\tvar channel = {\\n\\t\\tassert: function (key) {\\n\\t\\t\\tif (!channel.has(key)) {\\n\\t\\t\\t\\tthrow new $TypeError('Side channel does not contain ' + inspect(key));\\n\\t\\t\\t}\\n\\t\\t},\\n\\t\\tget: function (key) { // eslint-disable-line consistent-return\\n\\t\\t\\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\\n\\t\\t\\t\\tif ($wm) {\\n\\t\\t\\t\\t\\treturn $weakMapGet($wm, key);\\n\\t\\t\\t\\t}\\n\\t\\t\\t} else if ($Map) {\\n\\t\\t\\t\\tif ($m) {\\n\\t\\t\\t\\t\\treturn $mapGet($m, key);\\n\\t\\t\\t\\t}\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tif ($o) { // eslint-disable-line no-lonely-if\\n\\t\\t\\t\\t\\treturn objectGet($o, key);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t},\\n\\t\\thas: function (key) {\\n\\t\\t\\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\\n\\t\\t\\t\\tif ($wm) {\\n\\t\\t\\t\\t\\treturn $weakMapHas($wm, key);\\n\\t\\t\\t\\t}\\n\\t\\t\\t} else if ($Map) {\\n\\t\\t\\t\\tif ($m) {\\n\\t\\t\\t\\t\\treturn $mapHas($m, key);\\n\\t\\t\\t\\t}\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tif ($o) { // eslint-disable-line no-lonely-if\\n\\t\\t\\t\\t\\treturn objectHas($o, key);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\treturn false;\\n\\t\\t},\\n\\t\\tset: function (key, value) {\\n\\t\\t\\tif ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {\\n\\t\\t\\t\\tif (!$wm) {\\n\\t\\t\\t\\t\\t$wm = new $WeakMap();\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t$weakMapSet($wm, key, value);\\n\\t\\t\\t} else if ($Map) {\\n\\t\\t\\t\\tif (!$m) {\\n\\t\\t\\t\\t\\t$m = new $Map();\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\t$mapSet($m, key, value);\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tif (!$o) {\\n\\t\\t\\t\\t\\t$o = [];\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tobjectSet($o, key, value);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t};\\n\\treturn channel;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/side-channel/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/side-channel/node_modules/es-abstract/GetIntrinsic.js\":\n/*!****************************************************************************!*\\\n !*** ./node_modules/side-channel/node_modules/es-abstract/GetIntrinsic.js ***!\n \\****************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* globals\\n\\tAtomics,\\n\\tSharedArrayBuffer,\\n*/\\n\\nvar undefined;\\n\\nvar $TypeError = TypeError;\\n\\nvar $gOPD = Object.getOwnPropertyDescriptor;\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD({}, '');\\n\\t} catch (e) {\\n\\t\\t$gOPD = null; // this is IE 8, which has a broken gOPD\\n\\t}\\n}\\n\\nvar throwTypeError = function () { throw new $TypeError(); };\\nvar ThrowTypeError = $gOPD\\n\\t? (function () {\\n\\t\\ttry {\\n\\t\\t\\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\\n\\t\\t\\targuments.callee; // IE 8 does not throw here\\n\\t\\t\\treturn throwTypeError;\\n\\t\\t} catch (calleeThrows) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\\n\\t\\t\\t\\treturn $gOPD(arguments, 'callee').get;\\n\\t\\t\\t} catch (gOPDthrows) {\\n\\t\\t\\t\\treturn throwTypeError;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}())\\n\\t: throwTypeError;\\n\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\n\\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\\n\\nvar generator; // = function * () {};\\nvar generatorFunction = generator ? getProto(generator) : undefined;\\nvar asyncFn; // async function() {};\\nvar asyncFunction = asyncFn ? asyncFn.constructor : undefined;\\nvar asyncGen; // async function * () {};\\nvar asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;\\nvar asyncGenIterator = asyncGen ? asyncGen() : undefined;\\n\\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\\n\\nvar INTRINSICS = {\\n\\t'%Array%': Array,\\n\\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\\n\\t'%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,\\n\\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\\n\\t'%ArrayPrototype%': Array.prototype,\\n\\t'%ArrayProto_entries%': Array.prototype.entries,\\n\\t'%ArrayProto_forEach%': Array.prototype.forEach,\\n\\t'%ArrayProto_keys%': Array.prototype.keys,\\n\\t'%ArrayProto_values%': Array.prototype.values,\\n\\t'%AsyncFromSyncIteratorPrototype%': undefined,\\n\\t'%AsyncFunction%': asyncFunction,\\n\\t'%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,\\n\\t'%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,\\n\\t'%AsyncGeneratorFunction%': asyncGenFunction,\\n\\t'%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,\\n\\t'%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,\\n\\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\\n\\t'%Boolean%': Boolean,\\n\\t'%BooleanPrototype%': Boolean.prototype,\\n\\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\\n\\t'%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,\\n\\t'%Date%': Date,\\n\\t'%DatePrototype%': Date.prototype,\\n\\t'%decodeURI%': decodeURI,\\n\\t'%decodeURIComponent%': decodeURIComponent,\\n\\t'%encodeURI%': encodeURI,\\n\\t'%encodeURIComponent%': encodeURIComponent,\\n\\t'%Error%': Error,\\n\\t'%ErrorPrototype%': Error.prototype,\\n\\t'%eval%': eval, // eslint-disable-line no-eval\\n\\t'%EvalError%': EvalError,\\n\\t'%EvalErrorPrototype%': EvalError.prototype,\\n\\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\\n\\t'%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,\\n\\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\\n\\t'%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,\\n\\t'%Function%': Function,\\n\\t'%FunctionPrototype%': Function.prototype,\\n\\t'%Generator%': generator ? getProto(generator()) : undefined,\\n\\t'%GeneratorFunction%': generatorFunction,\\n\\t'%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,\\n\\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\\n\\t'%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\\n\\t'%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\\n\\t'%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,\\n\\t'%isFinite%': isFinite,\\n\\t'%isNaN%': isNaN,\\n\\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\\n\\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\\n\\t'%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,\\n\\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\\n\\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\\n\\t'%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,\\n\\t'%Math%': Math,\\n\\t'%Number%': Number,\\n\\t'%NumberPrototype%': Number.prototype,\\n\\t'%Object%': Object,\\n\\t'%ObjectPrototype%': Object.prototype,\\n\\t'%ObjProto_toString%': Object.prototype.toString,\\n\\t'%ObjProto_valueOf%': Object.prototype.valueOf,\\n\\t'%parseFloat%': parseFloat,\\n\\t'%parseInt%': parseInt,\\n\\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\\n\\t'%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,\\n\\t'%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,\\n\\t'%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,\\n\\t'%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,\\n\\t'%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,\\n\\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\\n\\t'%RangeError%': RangeError,\\n\\t'%RangeErrorPrototype%': RangeError.prototype,\\n\\t'%ReferenceError%': ReferenceError,\\n\\t'%ReferenceErrorPrototype%': ReferenceError.prototype,\\n\\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\\n\\t'%RegExp%': RegExp,\\n\\t'%RegExpPrototype%': RegExp.prototype,\\n\\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\\n\\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\\n\\t'%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,\\n\\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\\n\\t'%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,\\n\\t'%String%': String,\\n\\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\\n\\t'%StringPrototype%': String.prototype,\\n\\t'%Symbol%': hasSymbols ? Symbol : undefined,\\n\\t'%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,\\n\\t'%SyntaxError%': SyntaxError,\\n\\t'%SyntaxErrorPrototype%': SyntaxError.prototype,\\n\\t'%ThrowTypeError%': ThrowTypeError,\\n\\t'%TypedArray%': TypedArray,\\n\\t'%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,\\n\\t'%TypeError%': $TypeError,\\n\\t'%TypeErrorPrototype%': $TypeError.prototype,\\n\\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\\n\\t'%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,\\n\\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\\n\\t'%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,\\n\\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\\n\\t'%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,\\n\\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\\n\\t'%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,\\n\\t'%URIError%': URIError,\\n\\t'%URIErrorPrototype%': URIError.prototype,\\n\\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\\n\\t'%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,\\n\\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,\\n\\t'%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype\\n};\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\nvar $replace = bind.call(Function.call, String.prototype.replace);\\n\\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\\nvar rePropName = /[^%.[\\\\]]+|\\\\[(?:(-?\\\\d+(?:\\\\.\\\\d+)?)|([\\\"'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2)\\\\]|(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|%$))/g;\\nvar reEscapeChar = /\\\\\\\\(\\\\\\\\)?/g; /** Used to match backslashes in property paths. */\\nvar stringToPath = function stringToPath(string) {\\n\\tvar result = [];\\n\\t$replace(string, rePropName, function (match, number, quote, subString) {\\n\\t\\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);\\n\\t});\\n\\treturn result;\\n};\\n/* end adaptation */\\n\\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\\n\\tif (!(name in INTRINSICS)) {\\n\\t\\tthrow new SyntaxError('intrinsic ' + name + ' does not exist!');\\n\\t}\\n\\n\\t// istanbul ignore if // hopefully this is impossible to test :-)\\n\\tif (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {\\n\\t\\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\\n\\t}\\n\\n\\treturn INTRINSICS[name];\\n};\\n\\nmodule.exports = function GetIntrinsic(name, allowMissing) {\\n\\tif (typeof name !== 'string' || name.length === 0) {\\n\\t\\tthrow new TypeError('intrinsic name must be a non-empty string');\\n\\t}\\n\\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\\n\\t\\tthrow new TypeError('\\\"allowMissing\\\" argument must be a boolean');\\n\\t}\\n\\n\\tvar parts = stringToPath(name);\\n\\n\\tvar value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);\\n\\tfor (var i = 1; i < parts.length; i += 1) {\\n\\t\\tif (value != null) {\\n\\t\\t\\tif ($gOPD && (i + 1) >= parts.length) {\\n\\t\\t\\t\\tvar desc = $gOPD(value, parts[i]);\\n\\t\\t\\t\\tif (!allowMissing && !(parts[i] in value)) {\\n\\t\\t\\t\\t\\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tvalue = desc ? (desc.get || desc.value) : value[parts[i]];\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tvalue = value[parts[i]];\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn value;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/side-channel/node_modules/es-abstract/GetIntrinsic.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/side-channel/node_modules/es-abstract/helpers/callBind.js\":\n/*!********************************************************************************!*\\\n !*** ./node_modules/side-channel/node_modules/es-abstract/helpers/callBind.js ***!\n \\********************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/side-channel/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $Function = GetIntrinsic('%Function%');\\nvar $apply = $Function.apply;\\nvar $call = $Function.call;\\n\\nmodule.exports = function callBind() {\\n\\treturn bind.apply($call, arguments);\\n};\\n\\nmodule.exports.apply = function applyBind() {\\n\\treturn bind.apply($apply, arguments);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/side-channel/node_modules/es-abstract/helpers/callBind.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/side-channel/node_modules/es-abstract/helpers/callBound.js\":\n/*!*********************************************************************************!*\\\n !*** ./node_modules/side-channel/node_modules/es-abstract/helpers/callBound.js ***!\n \\*********************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/side-channel/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar callBind = __webpack_require__(/*! ./callBind */ \\\"./node_modules/side-channel/node_modules/es-abstract/helpers/callBind.js\\\");\\n\\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\\n\\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\\n\\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\\n\\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.')) {\\n\\t\\treturn callBind(intrinsic);\\n\\t}\\n\\treturn intrinsic;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/side-channel/node_modules/es-abstract/helpers/callBound.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/webpack/buildin/global.js\":\n/*!***********************************!*\\\n !*** (webpack)/buildin/global.js ***!\n \\***********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"var g;\\n\\n// This works in non-strict mode\\ng = (function() {\\n\\treturn this;\\n})();\\n\\ntry {\\n\\t// This works if eval is allowed (see CSP)\\n\\tg = g || new Function(\\\"return this\\\")();\\n} catch (e) {\\n\\t// This works if the window reference is available\\n\\tif (typeof window === \\\"object\\\") g = window;\\n}\\n\\n// g can still be undefined, but nothing to do about it...\\n// We return undefined, instead of nothing here, so it's\\n// easier to handle this case. if(!global) { ...}\\n\\nmodule.exports = g;\\n\\n\\n//# sourceURL=webpack://Quill/(webpack)/buildin/global.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-boxed-primitive/index.js\":\n/*!*****************************************************!*\\\n !*** ./node_modules/which-boxed-primitive/index.js ***!\n \\*****************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar isString = __webpack_require__(/*! is-string */ \\\"./node_modules/is-string/index.js\\\");\\nvar isNumber = __webpack_require__(/*! is-number-object */ \\\"./node_modules/is-number-object/index.js\\\");\\nvar isBoolean = __webpack_require__(/*! is-boolean-object */ \\\"./node_modules/is-boolean-object/index.js\\\");\\nvar isSymbol = __webpack_require__(/*! is-symbol */ \\\"./node_modules/which-boxed-primitive/node_modules/is-symbol/index.js\\\");\\nvar isBigInt = __webpack_require__(/*! is-bigint */ \\\"./node_modules/is-bigint/index.js\\\");\\n\\n// eslint-disable-next-line consistent-return\\nmodule.exports = function whichBoxedPrimitive(value) {\\n\\t// eslint-disable-next-line eqeqeq\\n\\tif (value == null || (typeof value !== 'object' && typeof value !== 'function')) {\\n\\t\\treturn null;\\n\\t}\\n\\tif (isString(value)) {\\n\\t\\treturn 'String';\\n\\t}\\n\\tif (isNumber(value)) {\\n\\t\\treturn 'Number';\\n\\t}\\n\\tif (isBoolean(value)) {\\n\\t\\treturn 'Boolean';\\n\\t}\\n\\tif (isSymbol(value)) {\\n\\t\\treturn 'Symbol';\\n\\t}\\n\\tif (isBigInt(value)) {\\n\\t\\treturn 'BigInt';\\n\\t}\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-boxed-primitive/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-boxed-primitive/node_modules/is-symbol/index.js\":\n/*!****************************************************************************!*\\\n !*** ./node_modules/which-boxed-primitive/node_modules/is-symbol/index.js ***!\n \\****************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar toStr = Object.prototype.toString;\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\n\\nif (hasSymbols) {\\n\\tvar symToStr = Symbol.prototype.toString;\\n\\tvar symStringRegex = /^Symbol\\\\(.*\\\\)$/;\\n\\tvar isSymbolObject = function isRealSymbolObject(value) {\\n\\t\\tif (typeof value.valueOf() !== 'symbol') {\\n\\t\\t\\treturn false;\\n\\t\\t}\\n\\t\\treturn symStringRegex.test(symToStr.call(value));\\n\\t};\\n\\n\\tmodule.exports = function isSymbol(value) {\\n\\t\\tif (typeof value === 'symbol') {\\n\\t\\t\\treturn true;\\n\\t\\t}\\n\\t\\tif (toStr.call(value) !== '[object Symbol]') {\\n\\t\\t\\treturn false;\\n\\t\\t}\\n\\t\\ttry {\\n\\t\\t\\treturn isSymbolObject(value);\\n\\t\\t} catch (e) {\\n\\t\\t\\treturn false;\\n\\t\\t}\\n\\t};\\n} else {\\n\\n\\tmodule.exports = function isSymbol(value) {\\n\\t\\t// this environment does not support Symbols.\\n\\t\\treturn false && false;\\n\\t};\\n}\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-boxed-primitive/node_modules/is-symbol/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-collection/index.js\":\n/*!************************************************!*\\\n !*** ./node_modules/which-collection/index.js ***!\n \\************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar isMap = __webpack_require__(/*! is-map */ \\\"./node_modules/is-map/index.js\\\");\\nvar isSet = __webpack_require__(/*! is-set */ \\\"./node_modules/is-set/index.js\\\");\\nvar isWeakMap = __webpack_require__(/*! is-weakmap */ \\\"./node_modules/is-weakmap/index.js\\\");\\nvar isWeakSet = __webpack_require__(/*! is-weakset */ \\\"./node_modules/is-weakset/index.js\\\");\\n\\nmodule.exports = function whichCollection(value) {\\n\\tif (value && typeof value === 'object') {\\n\\t\\tif (isMap(value)) {\\n\\t\\t\\treturn 'Map';\\n\\t\\t}\\n\\t\\tif (isSet(value)) {\\n\\t\\t\\treturn 'Set';\\n\\t\\t}\\n\\t\\tif (isWeakMap(value)) {\\n\\t\\t\\treturn 'WeakMap';\\n\\t\\t}\\n\\t\\tif (isWeakSet(value)) {\\n\\t\\t\\treturn 'WeakSet';\\n\\t\\t}\\n\\t}\\n\\treturn false;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-collection/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-typed-array/index.js\":\n/*!*************************************************!*\\\n !*** ./node_modules/which-typed-array/index.js ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"/* WEBPACK VAR INJECTION */(function(global) {\\n\\nvar forEach = __webpack_require__(/*! foreach */ \\\"./node_modules/foreach/index.js\\\");\\nvar availableTypedArrays = __webpack_require__(/*! available-typed-arrays */ \\\"./node_modules/available-typed-arrays/index.js\\\");\\nvar callBound = __webpack_require__(/*! es-abstract/helpers/callBound */ \\\"./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBound.js\\\");\\n\\nvar $toString = callBound('Object.prototype.toString');\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\nvar hasToStringTag = hasSymbols && typeof Symbol.toStringTag === 'symbol';\\n\\nvar typedArrays = availableTypedArrays();\\n\\nvar $slice = callBound('String.prototype.slice');\\nvar toStrTags = {};\\nvar gOPD = __webpack_require__(/*! es-abstract/helpers/getOwnPropertyDescriptor */ \\\"./node_modules/which-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js\\\");\\nvar getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof');\\nif (hasToStringTag && gOPD && getPrototypeOf) {\\n\\tforEach(typedArrays, function (typedArray) {\\n\\t\\tif (typeof global[typedArray] === 'function') {\\n\\t\\t\\tvar arr = new global[typedArray]();\\n\\t\\t\\tif (!(Symbol.toStringTag in arr)) {\\n\\t\\t\\t\\tthrow new EvalError('this engine has support for Symbol.toStringTag, but ' + typedArray + ' does not have the property! Please report this.');\\n\\t\\t\\t}\\n\\t\\t\\tvar proto = getPrototypeOf(arr);\\n\\t\\t\\tvar descriptor = gOPD(proto, Symbol.toStringTag);\\n\\t\\t\\tif (!descriptor) {\\n\\t\\t\\t\\tvar superProto = getPrototypeOf(proto);\\n\\t\\t\\t\\tdescriptor = gOPD(superProto, Symbol.toStringTag);\\n\\t\\t\\t}\\n\\t\\t\\ttoStrTags[typedArray] = descriptor.get;\\n\\t\\t}\\n\\t});\\n}\\n\\nvar tryTypedArrays = function tryAllTypedArrays(value) {\\n\\tvar foundName = false;\\n\\tforEach(toStrTags, function (getter, typedArray) {\\n\\t\\tif (!foundName) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\tvar name = getter.call(value);\\n\\t\\t\\t\\tif (name === typedArray) {\\n\\t\\t\\t\\t\\tfoundName = name;\\n\\t\\t\\t\\t}\\n\\t\\t\\t} catch (e) {}\\n\\t\\t}\\n\\t});\\n\\treturn foundName;\\n};\\n\\nvar isTypedArray = __webpack_require__(/*! is-typed-array */ \\\"./node_modules/is-typed-array/index.js\\\");\\n\\nmodule.exports = function whichTypedArray(value) {\\n\\tif (!isTypedArray(value)) { return false; }\\n\\tif (!hasToStringTag) { return $slice($toString(value), 8, -1); }\\n\\treturn tryTypedArrays(value);\\n};\\n\\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ \\\"./node_modules/webpack/buildin/global.js\\\")))\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-typed-array/index.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-typed-array/node_modules/es-abstract/GetIntrinsic.js\":\n/*!*********************************************************************************!*\\\n !*** ./node_modules/which-typed-array/node_modules/es-abstract/GetIntrinsic.js ***!\n \\*********************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\n/* globals\\n\\tAtomics,\\n\\tSharedArrayBuffer,\\n*/\\n\\nvar undefined;\\n\\nvar $TypeError = TypeError;\\n\\nvar $gOPD = Object.getOwnPropertyDescriptor;\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD({}, '');\\n\\t} catch (e) {\\n\\t\\t$gOPD = null; // this is IE 8, which has a broken gOPD\\n\\t}\\n}\\n\\nvar throwTypeError = function () { throw new $TypeError(); };\\nvar ThrowTypeError = $gOPD\\n\\t? (function () {\\n\\t\\ttry {\\n\\t\\t\\t// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties\\n\\t\\t\\targuments.callee; // IE 8 does not throw here\\n\\t\\t\\treturn throwTypeError;\\n\\t\\t} catch (calleeThrows) {\\n\\t\\t\\ttry {\\n\\t\\t\\t\\t// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')\\n\\t\\t\\t\\treturn $gOPD(arguments, 'callee').get;\\n\\t\\t\\t} catch (gOPDthrows) {\\n\\t\\t\\t\\treturn throwTypeError;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}())\\n\\t: throwTypeError;\\n\\nvar hasSymbols = __webpack_require__(/*! has-symbols */ \\\"./node_modules/has-symbols/index.js\\\")();\\n\\nvar getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto\\n\\nvar generator; // = function * () {};\\nvar generatorFunction = generator ? getProto(generator) : undefined;\\nvar asyncFn; // async function() {};\\nvar asyncFunction = asyncFn ? asyncFn.constructor : undefined;\\nvar asyncGen; // async function * () {};\\nvar asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;\\nvar asyncGenIterator = asyncGen ? asyncGen() : undefined;\\n\\nvar TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);\\n\\nvar INTRINSICS = {\\n\\t'%Array%': Array,\\n\\t'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,\\n\\t'%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,\\n\\t'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,\\n\\t'%ArrayPrototype%': Array.prototype,\\n\\t'%ArrayProto_entries%': Array.prototype.entries,\\n\\t'%ArrayProto_forEach%': Array.prototype.forEach,\\n\\t'%ArrayProto_keys%': Array.prototype.keys,\\n\\t'%ArrayProto_values%': Array.prototype.values,\\n\\t'%AsyncFromSyncIteratorPrototype%': undefined,\\n\\t'%AsyncFunction%': asyncFunction,\\n\\t'%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,\\n\\t'%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,\\n\\t'%AsyncGeneratorFunction%': asyncGenFunction,\\n\\t'%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,\\n\\t'%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,\\n\\t'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,\\n\\t'%Boolean%': Boolean,\\n\\t'%BooleanPrototype%': Boolean.prototype,\\n\\t'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,\\n\\t'%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,\\n\\t'%Date%': Date,\\n\\t'%DatePrototype%': Date.prototype,\\n\\t'%decodeURI%': decodeURI,\\n\\t'%decodeURIComponent%': decodeURIComponent,\\n\\t'%encodeURI%': encodeURI,\\n\\t'%encodeURIComponent%': encodeURIComponent,\\n\\t'%Error%': Error,\\n\\t'%ErrorPrototype%': Error.prototype,\\n\\t'%eval%': eval, // eslint-disable-line no-eval\\n\\t'%EvalError%': EvalError,\\n\\t'%EvalErrorPrototype%': EvalError.prototype,\\n\\t'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,\\n\\t'%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,\\n\\t'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,\\n\\t'%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,\\n\\t'%Function%': Function,\\n\\t'%FunctionPrototype%': Function.prototype,\\n\\t'%Generator%': generator ? getProto(generator()) : undefined,\\n\\t'%GeneratorFunction%': generatorFunction,\\n\\t'%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,\\n\\t'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,\\n\\t'%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,\\n\\t'%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,\\n\\t'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,\\n\\t'%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,\\n\\t'%isFinite%': isFinite,\\n\\t'%isNaN%': isNaN,\\n\\t'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,\\n\\t'%JSON%': typeof JSON === 'object' ? JSON : undefined,\\n\\t'%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,\\n\\t'%Map%': typeof Map === 'undefined' ? undefined : Map,\\n\\t'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),\\n\\t'%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,\\n\\t'%Math%': Math,\\n\\t'%Number%': Number,\\n\\t'%NumberPrototype%': Number.prototype,\\n\\t'%Object%': Object,\\n\\t'%ObjectPrototype%': Object.prototype,\\n\\t'%ObjProto_toString%': Object.prototype.toString,\\n\\t'%ObjProto_valueOf%': Object.prototype.valueOf,\\n\\t'%parseFloat%': parseFloat,\\n\\t'%parseInt%': parseInt,\\n\\t'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,\\n\\t'%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,\\n\\t'%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,\\n\\t'%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,\\n\\t'%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,\\n\\t'%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,\\n\\t'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,\\n\\t'%RangeError%': RangeError,\\n\\t'%RangeErrorPrototype%': RangeError.prototype,\\n\\t'%ReferenceError%': ReferenceError,\\n\\t'%ReferenceErrorPrototype%': ReferenceError.prototype,\\n\\t'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,\\n\\t'%RegExp%': RegExp,\\n\\t'%RegExpPrototype%': RegExp.prototype,\\n\\t'%Set%': typeof Set === 'undefined' ? undefined : Set,\\n\\t'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),\\n\\t'%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,\\n\\t'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,\\n\\t'%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,\\n\\t'%String%': String,\\n\\t'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,\\n\\t'%StringPrototype%': String.prototype,\\n\\t'%Symbol%': hasSymbols ? Symbol : undefined,\\n\\t'%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,\\n\\t'%SyntaxError%': SyntaxError,\\n\\t'%SyntaxErrorPrototype%': SyntaxError.prototype,\\n\\t'%ThrowTypeError%': ThrowTypeError,\\n\\t'%TypedArray%': TypedArray,\\n\\t'%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,\\n\\t'%TypeError%': $TypeError,\\n\\t'%TypeErrorPrototype%': $TypeError.prototype,\\n\\t'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,\\n\\t'%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,\\n\\t'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,\\n\\t'%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,\\n\\t'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,\\n\\t'%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,\\n\\t'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,\\n\\t'%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,\\n\\t'%URIError%': URIError,\\n\\t'%URIErrorPrototype%': URIError.prototype,\\n\\t'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,\\n\\t'%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,\\n\\t'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,\\n\\t'%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype\\n};\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\nvar $replace = bind.call(Function.call, String.prototype.replace);\\n\\n/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */\\nvar rePropName = /[^%.[\\\\]]+|\\\\[(?:(-?\\\\d+(?:\\\\.\\\\d+)?)|([\\\"'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2)\\\\]|(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|%$))/g;\\nvar reEscapeChar = /\\\\\\\\(\\\\\\\\)?/g; /** Used to match backslashes in property paths. */\\nvar stringToPath = function stringToPath(string) {\\n\\tvar result = [];\\n\\t$replace(string, rePropName, function (match, number, quote, subString) {\\n\\t\\tresult[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);\\n\\t});\\n\\treturn result;\\n};\\n/* end adaptation */\\n\\nvar getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {\\n\\tif (!(name in INTRINSICS)) {\\n\\t\\tthrow new SyntaxError('intrinsic ' + name + ' does not exist!');\\n\\t}\\n\\n\\t// istanbul ignore if // hopefully this is impossible to test :-)\\n\\tif (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {\\n\\t\\tthrow new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');\\n\\t}\\n\\n\\treturn INTRINSICS[name];\\n};\\n\\nmodule.exports = function GetIntrinsic(name, allowMissing) {\\n\\tif (typeof name !== 'string' || name.length === 0) {\\n\\t\\tthrow new TypeError('intrinsic name must be a non-empty string');\\n\\t}\\n\\tif (arguments.length > 1 && typeof allowMissing !== 'boolean') {\\n\\t\\tthrow new TypeError('\\\"allowMissing\\\" argument must be a boolean');\\n\\t}\\n\\n\\tvar parts = stringToPath(name);\\n\\n\\tvar value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);\\n\\tfor (var i = 1; i < parts.length; i += 1) {\\n\\t\\tif (value != null) {\\n\\t\\t\\tif ($gOPD && (i + 1) >= parts.length) {\\n\\t\\t\\t\\tvar desc = $gOPD(value, parts[i]);\\n\\t\\t\\t\\tif (!allowMissing && !(parts[i] in value)) {\\n\\t\\t\\t\\t\\tthrow new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\tvalue = desc ? (desc.get || desc.value) : value[parts[i]];\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tvalue = value[parts[i]];\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\treturn value;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-typed-array/node_modules/es-abstract/GetIntrinsic.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBind.js\":\n/*!*************************************************************************************!*\\\n !*** ./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBind.js ***!\n \\*************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar bind = __webpack_require__(/*! function-bind */ \\\"./node_modules/function-bind/index.js\\\");\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/which-typed-array/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $Function = GetIntrinsic('%Function%');\\nvar $apply = $Function.apply;\\nvar $call = $Function.call;\\n\\nmodule.exports = function callBind() {\\n\\treturn bind.apply($call, arguments);\\n};\\n\\nmodule.exports.apply = function applyBind() {\\n\\treturn bind.apply($apply, arguments);\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBind.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBound.js\":\n/*!**************************************************************************************!*\\\n !*** ./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBound.js ***!\n \\**************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/which-typed-array/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar callBind = __webpack_require__(/*! ./callBind */ \\\"./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBind.js\\\");\\n\\nvar $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));\\n\\nmodule.exports = function callBoundIntrinsic(name, allowMissing) {\\n\\tvar intrinsic = GetIntrinsic(name, !!allowMissing);\\n\\tif (typeof intrinsic === 'function' && $indexOf(name, '.prototype.')) {\\n\\t\\treturn callBind(intrinsic);\\n\\t}\\n\\treturn intrinsic;\\n};\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBound.js?\");\n\n/***/ }),\n\n/***/ \"./node_modules/which-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js\":\n/*!*****************************************************************************************************!*\\\n !*** ./node_modules/which-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js ***!\n \\*****************************************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\neval(\"\\n\\nvar GetIntrinsic = __webpack_require__(/*! ../GetIntrinsic */ \\\"./node_modules/which-typed-array/node_modules/es-abstract/GetIntrinsic.js\\\");\\n\\nvar $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%');\\nif ($gOPD) {\\n\\ttry {\\n\\t\\t$gOPD([], 'length');\\n\\t} catch (e) {\\n\\t\\t// IE 8 has a broken gOPD\\n\\t\\t$gOPD = null;\\n\\t}\\n}\\n\\nmodule.exports = $gOPD;\\n\\n\\n//# sourceURL=webpack://Quill/./node_modules/which-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js?\");\n\n/***/ }),\n\n/***/ \"./quill.js\":\n/*!******************!*\\\n !*** ./quill.js ***!\n \\******************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core */ \\\"./core.js\\\");\\n/* harmony import */ var _formats_align__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./formats/align */ \\\"./formats/align.js\\\");\\n/* harmony import */ var _formats_direction__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./formats/direction */ \\\"./formats/direction.js\\\");\\n/* harmony import */ var _formats_indent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./formats/indent */ \\\"./formats/indent.js\\\");\\n/* harmony import */ var _formats_blockquote__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./formats/blockquote */ \\\"./formats/blockquote.js\\\");\\n/* harmony import */ var _formats_header__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./formats/header */ \\\"./formats/header.js\\\");\\n/* harmony import */ var _formats_list__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./formats/list */ \\\"./formats/list.js\\\");\\n/* harmony import */ var _formats_background__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./formats/background */ \\\"./formats/background.js\\\");\\n/* harmony import */ var _formats_color__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./formats/color */ \\\"./formats/color.js\\\");\\n/* harmony import */ var _formats_font__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./formats/font */ \\\"./formats/font.js\\\");\\n/* harmony import */ var _formats_size__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./formats/size */ \\\"./formats/size.js\\\");\\n/* harmony import */ var _formats_bold__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./formats/bold */ \\\"./formats/bold.js\\\");\\n/* harmony import */ var _formats_italic__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./formats/italic */ \\\"./formats/italic.js\\\");\\n/* harmony import */ var _formats_link__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./formats/link */ \\\"./formats/link.js\\\");\\n/* harmony import */ var _formats_script__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./formats/script */ \\\"./formats/script.js\\\");\\n/* harmony import */ var _formats_strike__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./formats/strike */ \\\"./formats/strike.js\\\");\\n/* harmony import */ var _formats_underline__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./formats/underline */ \\\"./formats/underline.js\\\");\\n/* harmony import */ var _formats_formula__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./formats/formula */ \\\"./formats/formula.js\\\");\\n/* harmony import */ var _formats_image__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./formats/image */ \\\"./formats/image.js\\\");\\n/* harmony import */ var _formats_video__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./formats/video */ \\\"./formats/video.js\\\");\\n/* harmony import */ var _formats_code__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./formats/code */ \\\"./formats/code.js\\\");\\n/* harmony import */ var _modules_syntax__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./modules/syntax */ \\\"./modules/syntax.js\\\");\\n/* harmony import */ var _modules_table__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./modules/table */ \\\"./modules/table.js\\\");\\n/* harmony import */ var _modules_toolbar__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./modules/toolbar */ \\\"./modules/toolbar.js\\\");\\n/* harmony import */ var _ui_icons__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ./ui/icons */ \\\"./ui/icons.js\\\");\\n/* harmony import */ var _ui_picker__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ./ui/picker */ \\\"./ui/picker.js\\\");\\n/* harmony import */ var _ui_color_picker__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ./ui/color-picker */ \\\"./ui/color-picker.js\\\");\\n/* harmony import */ var _ui_icon_picker__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ./ui/icon-picker */ \\\"./ui/icon-picker.js\\\");\\n/* harmony import */ var _ui_tooltip__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ./ui/tooltip */ \\\"./ui/tooltip.js\\\");\\n/* harmony import */ var _themes_bubble__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(/*! ./themes/bubble */ \\\"./themes/bubble.js\\\");\\n/* harmony import */ var _themes_snow__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(/*! ./themes/snow */ \\\"./themes/snow.js\\\");\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n_core__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].register({\\n 'attributors/attribute/direction': _formats_direction__WEBPACK_IMPORTED_MODULE_2__[\\\"DirectionAttribute\\\"],\\n 'attributors/class/align': _formats_align__WEBPACK_IMPORTED_MODULE_1__[\\\"AlignClass\\\"],\\n 'attributors/class/background': _formats_background__WEBPACK_IMPORTED_MODULE_7__[\\\"BackgroundClass\\\"],\\n 'attributors/class/color': _formats_color__WEBPACK_IMPORTED_MODULE_8__[\\\"ColorClass\\\"],\\n 'attributors/class/direction': _formats_direction__WEBPACK_IMPORTED_MODULE_2__[\\\"DirectionClass\\\"],\\n 'attributors/class/font': _formats_font__WEBPACK_IMPORTED_MODULE_9__[\\\"FontClass\\\"],\\n 'attributors/class/size': _formats_size__WEBPACK_IMPORTED_MODULE_10__[\\\"SizeClass\\\"],\\n 'attributors/style/align': _formats_align__WEBPACK_IMPORTED_MODULE_1__[\\\"AlignStyle\\\"],\\n 'attributors/style/background': _formats_background__WEBPACK_IMPORTED_MODULE_7__[\\\"BackgroundStyle\\\"],\\n 'attributors/style/color': _formats_color__WEBPACK_IMPORTED_MODULE_8__[\\\"ColorStyle\\\"],\\n 'attributors/style/direction': _formats_direction__WEBPACK_IMPORTED_MODULE_2__[\\\"DirectionStyle\\\"],\\n 'attributors/style/font': _formats_font__WEBPACK_IMPORTED_MODULE_9__[\\\"FontStyle\\\"],\\n 'attributors/style/size': _formats_size__WEBPACK_IMPORTED_MODULE_10__[\\\"SizeStyle\\\"]\\n}, true);\\n_core__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"].register({\\n 'formats/align': _formats_align__WEBPACK_IMPORTED_MODULE_1__[\\\"AlignClass\\\"],\\n 'formats/direction': _formats_direction__WEBPACK_IMPORTED_MODULE_2__[\\\"DirectionClass\\\"],\\n 'formats/indent': _formats_indent__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"],\\n 'formats/background': _formats_background__WEBPACK_IMPORTED_MODULE_7__[\\\"BackgroundStyle\\\"],\\n 'formats/color': _formats_color__WEBPACK_IMPORTED_MODULE_8__[\\\"ColorStyle\\\"],\\n 'formats/font': _formats_font__WEBPACK_IMPORTED_MODULE_9__[\\\"FontClass\\\"],\\n 'formats/size': _formats_size__WEBPACK_IMPORTED_MODULE_10__[\\\"SizeClass\\\"],\\n 'formats/blockquote': _formats_blockquote__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"],\\n 'formats/code-block': _formats_code__WEBPACK_IMPORTED_MODULE_20__[\\\"default\\\"],\\n 'formats/header': _formats_header__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"],\\n 'formats/list': _formats_list__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"],\\n 'formats/bold': _formats_bold__WEBPACK_IMPORTED_MODULE_11__[\\\"default\\\"],\\n 'formats/code': _formats_code__WEBPACK_IMPORTED_MODULE_20__[\\\"Code\\\"],\\n 'formats/italic': _formats_italic__WEBPACK_IMPORTED_MODULE_12__[\\\"default\\\"],\\n 'formats/link': _formats_link__WEBPACK_IMPORTED_MODULE_13__[\\\"default\\\"],\\n 'formats/script': _formats_script__WEBPACK_IMPORTED_MODULE_14__[\\\"default\\\"],\\n 'formats/strike': _formats_strike__WEBPACK_IMPORTED_MODULE_15__[\\\"default\\\"],\\n 'formats/underline': _formats_underline__WEBPACK_IMPORTED_MODULE_16__[\\\"default\\\"],\\n 'formats/formula': _formats_formula__WEBPACK_IMPORTED_MODULE_17__[\\\"default\\\"],\\n 'formats/image': _formats_image__WEBPACK_IMPORTED_MODULE_18__[\\\"default\\\"],\\n 'formats/video': _formats_video__WEBPACK_IMPORTED_MODULE_19__[\\\"default\\\"],\\n 'modules/syntax': _modules_syntax__WEBPACK_IMPORTED_MODULE_21__[\\\"default\\\"],\\n 'modules/table': _modules_table__WEBPACK_IMPORTED_MODULE_22__[\\\"default\\\"],\\n 'modules/toolbar': _modules_toolbar__WEBPACK_IMPORTED_MODULE_23__[\\\"default\\\"],\\n 'themes/bubble': _themes_bubble__WEBPACK_IMPORTED_MODULE_29__[\\\"default\\\"],\\n 'themes/snow': _themes_snow__WEBPACK_IMPORTED_MODULE_30__[\\\"default\\\"],\\n 'ui/icons': _ui_icons__WEBPACK_IMPORTED_MODULE_24__[\\\"default\\\"],\\n 'ui/picker': _ui_picker__WEBPACK_IMPORTED_MODULE_25__[\\\"default\\\"],\\n 'ui/icon-picker': _ui_icon_picker__WEBPACK_IMPORTED_MODULE_27__[\\\"default\\\"],\\n 'ui/color-picker': _ui_color_picker__WEBPACK_IMPORTED_MODULE_26__[\\\"default\\\"],\\n 'ui/tooltip': _ui_tooltip__WEBPACK_IMPORTED_MODULE_28__[\\\"default\\\"]\\n}, true);\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (_core__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"]);\\n\\n//# sourceURL=webpack://Quill/./quill.js?\");\n\n/***/ }),\n\n/***/ \"./themes/base.js\":\n/*!************************!*\\\n !*** ./themes/base.js ***!\n \\************************/\n/*! exports provided: BaseTooltip, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"BaseTooltip\\\", function() { return BaseTooltip; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return BaseTheme; });\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var _core_emitter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/emitter */ \\\"./core/emitter.js\\\");\\n/* harmony import */ var _core_theme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../core/theme */ \\\"./core/theme.js\\\");\\n/* harmony import */ var _ui_color_picker__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../ui/color-picker */ \\\"./ui/color-picker.js\\\");\\n/* harmony import */ var _ui_icon_picker__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../ui/icon-picker */ \\\"./ui/icon-picker.js\\\");\\n/* harmony import */ var _ui_picker__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../ui/picker */ \\\"./ui/picker.js\\\");\\n/* harmony import */ var _ui_tooltip__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../ui/tooltip */ \\\"./ui/tooltip.js\\\");\\n\\n\\n\\n\\n\\n\\n\\nconst ALIGNS = [false, 'center', 'right', 'justify'];\\nconst COLORS = ['#000000', '#e60000', '#ff9900', '#ffff00', '#008a00', '#0066cc', '#9933ff', '#ffffff', '#facccc', '#ffebcc', '#ffffcc', '#cce8cc', '#cce0f5', '#ebd6ff', '#bbbbbb', '#f06666', '#ffc266', '#ffff66', '#66b966', '#66a3e0', '#c285ff', '#888888', '#a10000', '#b26b00', '#b2b200', '#006100', '#0047b2', '#6b24b2', '#444444', '#5c0000', '#663d00', '#666600', '#003700', '#002966', '#3d1466'];\\nconst FONTS = [false, 'serif', 'monospace'];\\nconst HEADERS = ['1', '2', '3', false];\\nconst SIZES = ['small', false, 'large', 'huge'];\\n\\nclass BaseTheme extends _core_theme__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] {\\n constructor(quill, options) {\\n super(quill, options);\\n\\n const listener = e => {\\n if (!document.body.contains(quill.root)) {\\n document.body.removeEventListener('click', listener);\\n return;\\n }\\n\\n if (this.tooltip != null && !this.tooltip.root.contains(e.target) && document.activeElement !== this.tooltip.textbox && !this.quill.hasFocus()) {\\n this.tooltip.hide();\\n }\\n\\n if (this.pickers != null) {\\n this.pickers.forEach(picker => {\\n if (!picker.container.contains(e.target)) {\\n picker.close();\\n }\\n });\\n }\\n };\\n\\n quill.emitter.listenDOM('click', document.body, listener);\\n }\\n\\n addModule(name) {\\n const module = super.addModule(name);\\n\\n if (name === 'toolbar') {\\n this.extendToolbar(module);\\n }\\n\\n return module;\\n }\\n\\n buildButtons(buttons, icons) {\\n Array.from(buttons).forEach(button => {\\n const className = button.getAttribute('class') || '';\\n className.split(/\\\\s+/).forEach(name => {\\n if (!name.startsWith('ql-')) return;\\n name = name.slice('ql-'.length);\\n if (icons[name] == null) return;\\n\\n if (name === 'direction') {\\n button.innerHTML = icons[name][''] + icons[name].rtl;\\n } else if (typeof icons[name] === 'string') {\\n button.innerHTML = icons[name];\\n } else {\\n const value = button.value || '';\\n\\n if (value != null && icons[name][value]) {\\n button.innerHTML = icons[name][value];\\n }\\n }\\n });\\n });\\n }\\n\\n buildPickers(selects, icons) {\\n this.pickers = Array.from(selects).map(select => {\\n if (select.classList.contains('ql-align')) {\\n if (select.querySelector('option') == null) {\\n fillSelect(select, ALIGNS);\\n }\\n\\n return new _ui_icon_picker__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"](select, icons.align);\\n }\\n\\n if (select.classList.contains('ql-background') || select.classList.contains('ql-color')) {\\n const format = select.classList.contains('ql-background') ? 'background' : 'color';\\n\\n if (select.querySelector('option') == null) {\\n fillSelect(select, COLORS, format === 'background' ? '#ffffff' : '#000000');\\n }\\n\\n return new _ui_color_picker__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"](select, icons[format]);\\n }\\n\\n if (select.querySelector('option') == null) {\\n if (select.classList.contains('ql-font')) {\\n fillSelect(select, FONTS);\\n } else if (select.classList.contains('ql-header')) {\\n fillSelect(select, HEADERS);\\n } else if (select.classList.contains('ql-size')) {\\n fillSelect(select, SIZES);\\n }\\n }\\n\\n return new _ui_picker__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"](select);\\n });\\n\\n const update = () => {\\n this.pickers.forEach(picker => {\\n picker.update();\\n });\\n };\\n\\n this.quill.on(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.EDITOR_CHANGE, update);\\n }\\n\\n}\\n\\nBaseTheme.DEFAULTS = extend__WEBPACK_IMPORTED_MODULE_0___default()(true, {}, _core_theme__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].DEFAULTS, {\\n modules: {\\n toolbar: {\\n handlers: {\\n formula() {\\n this.quill.theme.tooltip.edit('formula');\\n },\\n\\n image() {\\n let fileInput = this.container.querySelector('input.ql-image[type=file]');\\n\\n if (fileInput == null) {\\n fileInput = document.createElement('input');\\n fileInput.setAttribute('type', 'file');\\n fileInput.setAttribute('accept', this.quill.uploader.options.mimetypes.join(', '));\\n fileInput.classList.add('ql-image');\\n fileInput.addEventListener('change', () => {\\n const range = this.quill.getSelection(true);\\n this.quill.uploader.upload(range, fileInput.files);\\n fileInput.value = '';\\n });\\n this.container.appendChild(fileInput);\\n }\\n\\n fileInput.click();\\n },\\n\\n video() {\\n this.quill.theme.tooltip.edit('video');\\n }\\n\\n }\\n }\\n }\\n});\\n\\nclass BaseTooltip extends _ui_tooltip__WEBPACK_IMPORTED_MODULE_6__[\\\"default\\\"] {\\n constructor(quill, boundsContainer) {\\n super(quill, boundsContainer);\\n this.textbox = this.root.querySelector('input[type=\\\"text\\\"]');\\n this.listen();\\n }\\n\\n listen() {\\n this.textbox.addEventListener('keydown', event => {\\n if (event.key === 'Enter') {\\n this.save();\\n event.preventDefault();\\n } else if (event.key === 'Escape') {\\n this.cancel();\\n event.preventDefault();\\n }\\n });\\n }\\n\\n cancel() {\\n this.hide();\\n }\\n\\n edit(mode = 'link', preview = null) {\\n this.root.classList.remove('ql-hidden');\\n this.root.classList.add('ql-editing');\\n\\n if (preview != null) {\\n this.textbox.value = preview;\\n } else if (mode !== this.root.getAttribute('data-mode')) {\\n this.textbox.value = '';\\n }\\n\\n this.position(this.quill.getBounds(this.quill.selection.savedRange));\\n this.textbox.select();\\n this.textbox.setAttribute('placeholder', this.textbox.getAttribute(\\\"data-\\\".concat(mode)) || '');\\n this.root.setAttribute('data-mode', mode);\\n }\\n\\n restoreFocus() {\\n const {\\n scrollTop\\n } = this.quill.scrollingContainer;\\n this.quill.focus();\\n this.quill.scrollingContainer.scrollTop = scrollTop;\\n }\\n\\n save() {\\n let {\\n value\\n } = this.textbox;\\n\\n switch (this.root.getAttribute('data-mode')) {\\n case 'link':\\n {\\n const {\\n scrollTop\\n } = this.quill.root;\\n\\n if (this.linkRange) {\\n this.quill.formatText(this.linkRange, 'link', value, _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n delete this.linkRange;\\n } else {\\n this.restoreFocus();\\n this.quill.format('link', value, _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n }\\n\\n this.quill.root.scrollTop = scrollTop;\\n break;\\n }\\n\\n case 'video':\\n {\\n value = extractVideoUrl(value);\\n }\\n // eslint-disable-next-line no-fallthrough\\n\\n case 'formula':\\n {\\n if (!value) break;\\n const range = this.quill.getSelection(true);\\n\\n if (range != null) {\\n const index = range.index + range.length;\\n this.quill.insertEmbed(index, this.root.getAttribute('data-mode'), value, _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n\\n if (this.root.getAttribute('data-mode') === 'formula') {\\n this.quill.insertText(index + 1, ' ', _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n }\\n\\n this.quill.setSelection(index + 2, _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n }\\n\\n break;\\n }\\n\\n default:\\n }\\n\\n this.textbox.value = '';\\n this.hide();\\n }\\n\\n}\\n\\nfunction extractVideoUrl(url) {\\n let match = url.match(/^(?:(https?):\\\\/\\\\/)?(?:(?:www|m)\\\\.)?youtube\\\\.com\\\\/watch.*v=([a-zA-Z0-9_-]+)/) || url.match(/^(?:(https?):\\\\/\\\\/)?(?:(?:www|m)\\\\.)?youtu\\\\.be\\\\/([a-zA-Z0-9_-]+)/);\\n\\n if (match) {\\n return \\\"\\\".concat(match[1] || 'https', \\\"://www.youtube.com/embed/\\\").concat(match[2], \\\"?showinfo=0\\\");\\n } // eslint-disable-next-line no-cond-assign\\n\\n\\n if (match = url.match(/^(?:(https?):\\\\/\\\\/)?(?:www\\\\.)?vimeo\\\\.com\\\\/(\\\\d+)/)) {\\n return \\\"\\\".concat(match[1] || 'https', \\\"://player.vimeo.com/video/\\\").concat(match[2], \\\"/\\\");\\n }\\n\\n return url;\\n}\\n\\nfunction fillSelect(select, values, defaultValue = false) {\\n values.forEach(value => {\\n const option = document.createElement('option');\\n\\n if (value === defaultValue) {\\n option.setAttribute('selected', 'selected');\\n } else {\\n option.setAttribute('value', value);\\n }\\n\\n select.appendChild(option);\\n });\\n}\\n\\n\\n\\n//# sourceURL=webpack://Quill/./themes/base.js?\");\n\n/***/ }),\n\n/***/ \"./themes/bubble.js\":\n/*!**************************!*\\\n !*** ./themes/bubble.js ***!\n \\**************************/\n/*! exports provided: BubbleTooltip, default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"BubbleTooltip\\\", function() { return BubbleTooltip; });\\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \\\"default\\\", function() { return BubbleTheme; });\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var _core_emitter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/emitter */ \\\"./core/emitter.js\\\");\\n/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./base */ \\\"./themes/base.js\\\");\\n/* harmony import */ var _core_selection__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../core/selection */ \\\"./core/selection.js\\\");\\n/* harmony import */ var _ui_icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../ui/icons */ \\\"./ui/icons.js\\\");\\n\\n\\n\\n\\n\\nconst TOOLBAR_CONFIG = [['bold', 'italic', 'link'], [{\\n header: 1\\n}, {\\n header: 2\\n}, 'blockquote']];\\n\\nclass BubbleTooltip extends _base__WEBPACK_IMPORTED_MODULE_2__[\\\"BaseTooltip\\\"] {\\n constructor(quill, bounds) {\\n super(quill, bounds);\\n this.quill.on(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.EDITOR_CHANGE, (type, range, oldRange, source) => {\\n if (type !== _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SELECTION_CHANGE) return;\\n\\n if (range != null && range.length > 0 && source === _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER) {\\n this.show(); // Lock our width so we will expand beyond our offsetParent boundaries\\n\\n this.root.style.left = '0px';\\n this.root.style.width = '';\\n this.root.style.width = \\\"\\\".concat(this.root.offsetWidth, \\\"px\\\");\\n const lines = this.quill.getLines(range.index, range.length);\\n\\n if (lines.length === 1) {\\n this.position(this.quill.getBounds(range));\\n } else {\\n const lastLine = lines[lines.length - 1];\\n const index = this.quill.getIndex(lastLine);\\n const length = Math.min(lastLine.length() - 1, range.index + range.length - index);\\n const indexBounds = this.quill.getBounds(new _core_selection__WEBPACK_IMPORTED_MODULE_3__[\\\"Range\\\"](index, length));\\n this.position(indexBounds);\\n }\\n } else if (document.activeElement !== this.textbox && this.quill.hasFocus()) {\\n this.hide();\\n }\\n });\\n }\\n\\n listen() {\\n super.listen();\\n this.root.querySelector('.ql-close').addEventListener('click', () => {\\n this.root.classList.remove('ql-editing');\\n });\\n this.quill.on(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SCROLL_OPTIMIZE, () => {\\n // Let selection be restored by toolbar handlers before repositioning\\n setTimeout(() => {\\n if (this.root.classList.contains('ql-hidden')) return;\\n const range = this.quill.getSelection();\\n\\n if (range != null) {\\n this.position(this.quill.getBounds(range));\\n }\\n }, 1);\\n });\\n }\\n\\n cancel() {\\n this.show();\\n }\\n\\n position(reference) {\\n const shift = super.position(reference);\\n const arrow = this.root.querySelector('.ql-tooltip-arrow');\\n arrow.style.marginLeft = '';\\n\\n if (shift !== 0) {\\n arrow.style.marginLeft = \\\"\\\".concat(-1 * shift - arrow.offsetWidth / 2, \\\"px\\\");\\n }\\n\\n return shift;\\n }\\n\\n}\\n\\nBubbleTooltip.TEMPLATE = ['', '
    ', '', '', '
    '].join('');\\n\\nclass BubbleTheme extends _base__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] {\\n constructor(quill, options) {\\n if (options.modules.toolbar != null && options.modules.toolbar.container == null) {\\n options.modules.toolbar.container = TOOLBAR_CONFIG;\\n }\\n\\n super(quill, options);\\n this.quill.container.classList.add('ql-bubble');\\n }\\n\\n extendToolbar(toolbar) {\\n this.tooltip = new BubbleTooltip(this.quill, this.options.bounds);\\n this.tooltip.root.appendChild(toolbar.container);\\n this.buildButtons(toolbar.container.querySelectorAll('button'), _ui_icons__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"]);\\n this.buildPickers(toolbar.container.querySelectorAll('select'), _ui_icons__WEBPACK_IMPORTED_MODULE_4__[\\\"default\\\"]);\\n }\\n\\n}\\n\\nBubbleTheme.DEFAULTS = extend__WEBPACK_IMPORTED_MODULE_0___default()(true, {}, _base__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].DEFAULTS, {\\n modules: {\\n toolbar: {\\n handlers: {\\n link(value) {\\n if (!value) {\\n this.quill.format('link', false);\\n } else {\\n this.quill.theme.tooltip.edit();\\n }\\n }\\n\\n }\\n }\\n }\\n});\\n\\n\\n//# sourceURL=webpack://Quill/./themes/bubble.js?\");\n\n/***/ }),\n\n/***/ \"./themes/snow.js\":\n/*!************************!*\\\n !*** ./themes/snow.js ***!\n \\************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! extend */ \\\"./node_modules/extend/index.js\\\");\\n/* harmony import */ var extend__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(extend__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var _core_emitter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../core/emitter */ \\\"./core/emitter.js\\\");\\n/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./base */ \\\"./themes/base.js\\\");\\n/* harmony import */ var _formats_link__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../formats/link */ \\\"./formats/link.js\\\");\\n/* harmony import */ var _core_selection__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../core/selection */ \\\"./core/selection.js\\\");\\n/* harmony import */ var _ui_icons__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../ui/icons */ \\\"./ui/icons.js\\\");\\n\\n\\n\\n\\n\\n\\nconst TOOLBAR_CONFIG = [[{\\n header: ['1', '2', '3', false]\\n}], ['bold', 'italic', 'underline', 'link'], [{\\n list: 'ordered'\\n}, {\\n list: 'bullet'\\n}], ['clean']];\\n\\nclass SnowTooltip extends _base__WEBPACK_IMPORTED_MODULE_2__[\\\"BaseTooltip\\\"] {\\n constructor(quill, bounds) {\\n super(quill, bounds);\\n this.preview = this.root.querySelector('a.ql-preview');\\n }\\n\\n listen() {\\n super.listen();\\n this.root.querySelector('a.ql-action').addEventListener('click', event => {\\n if (this.root.classList.contains('ql-editing')) {\\n this.save();\\n } else {\\n this.edit('link', this.preview.textContent);\\n }\\n\\n event.preventDefault();\\n });\\n this.root.querySelector('a.ql-remove').addEventListener('click', event => {\\n if (this.linkRange != null) {\\n const range = this.linkRange;\\n this.restoreFocus();\\n this.quill.formatText(range, 'link', false, _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER);\\n delete this.linkRange;\\n }\\n\\n event.preventDefault();\\n this.hide();\\n });\\n this.quill.on(_core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].events.SELECTION_CHANGE, (range, oldRange, source) => {\\n if (range == null) return;\\n\\n if (range.length === 0 && source === _core_emitter__WEBPACK_IMPORTED_MODULE_1__[\\\"default\\\"].sources.USER) {\\n const [link, offset] = this.quill.scroll.descendant(_formats_link__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"], range.index);\\n\\n if (link != null) {\\n this.linkRange = new _core_selection__WEBPACK_IMPORTED_MODULE_4__[\\\"Range\\\"](range.index - offset, link.length());\\n const preview = _formats_link__WEBPACK_IMPORTED_MODULE_3__[\\\"default\\\"].formats(link.domNode);\\n this.preview.textContent = preview;\\n this.preview.setAttribute('href', preview);\\n this.show();\\n this.position(this.quill.getBounds(this.linkRange));\\n return;\\n }\\n } else {\\n delete this.linkRange;\\n }\\n\\n this.hide();\\n });\\n }\\n\\n show() {\\n super.show();\\n this.root.removeAttribute('data-mode');\\n }\\n\\n}\\n\\nSnowTooltip.TEMPLATE = ['', '', '', ''].join('');\\n\\nclass SnowTheme extends _base__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"] {\\n constructor(quill, options) {\\n if (options.modules.toolbar != null && options.modules.toolbar.container == null) {\\n options.modules.toolbar.container = TOOLBAR_CONFIG;\\n }\\n\\n super(quill, options);\\n this.quill.container.classList.add('ql-snow');\\n }\\n\\n extendToolbar(toolbar) {\\n toolbar.container.classList.add('ql-snow');\\n this.buildButtons(toolbar.container.querySelectorAll('button'), _ui_icons__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"]);\\n this.buildPickers(toolbar.container.querySelectorAll('select'), _ui_icons__WEBPACK_IMPORTED_MODULE_5__[\\\"default\\\"]);\\n this.tooltip = new SnowTooltip(this.quill, this.options.bounds);\\n\\n if (toolbar.container.querySelector('.ql-link')) {\\n this.quill.keyboard.addBinding({\\n key: 'k',\\n shortKey: true\\n }, (range, context) => {\\n toolbar.handlers.link.call(toolbar, !context.format.link);\\n });\\n }\\n }\\n\\n}\\n\\nSnowTheme.DEFAULTS = extend__WEBPACK_IMPORTED_MODULE_0___default()(true, {}, _base__WEBPACK_IMPORTED_MODULE_2__[\\\"default\\\"].DEFAULTS, {\\n modules: {\\n toolbar: {\\n handlers: {\\n link(value) {\\n if (value) {\\n const range = this.quill.getSelection();\\n if (range == null || range.length === 0) return;\\n let preview = this.quill.getText(range);\\n\\n if (/^\\\\S+@\\\\S+\\\\.\\\\S+$/.test(preview) && preview.indexOf('mailto:') !== 0) {\\n preview = \\\"mailto:\\\".concat(preview);\\n }\\n\\n const {\\n tooltip\\n } = this.quill.theme;\\n tooltip.edit('link', preview);\\n } else {\\n this.quill.format('link', false);\\n }\\n }\\n\\n }\\n }\\n }\\n});\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (SnowTheme);\\n\\n//# sourceURL=webpack://Quill/./themes/snow.js?\");\n\n/***/ }),\n\n/***/ \"./ui/color-picker.js\":\n/*!****************************!*\\\n !*** ./ui/color-picker.js ***!\n \\****************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _picker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./picker */ \\\"./ui/picker.js\\\");\\n\\n\\nclass ColorPicker extends _picker__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n constructor(select, label) {\\n super(select);\\n this.label.innerHTML = label;\\n this.container.classList.add('ql-color-picker');\\n Array.from(this.container.querySelectorAll('.ql-picker-item')).slice(0, 7).forEach(item => {\\n item.classList.add('ql-primary');\\n });\\n }\\n\\n buildItem(option) {\\n const item = super.buildItem(option);\\n item.style.backgroundColor = option.getAttribute('value') || '';\\n return item;\\n }\\n\\n selectItem(item, trigger) {\\n super.selectItem(item, trigger);\\n const colorLabel = this.label.querySelector('.ql-color-label');\\n const value = item ? item.getAttribute('data-value') || '' : '';\\n\\n if (colorLabel) {\\n if (colorLabel.tagName === 'line') {\\n colorLabel.style.stroke = value;\\n } else {\\n colorLabel.style.fill = value;\\n }\\n }\\n }\\n\\n}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (ColorPicker);\\n\\n//# sourceURL=webpack://Quill/./ui/color-picker.js?\");\n\n/***/ }),\n\n/***/ \"./ui/icon-picker.js\":\n/*!***************************!*\\\n !*** ./ui/icon-picker.js ***!\n \\***************************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _picker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./picker */ \\\"./ui/picker.js\\\");\\n\\n\\nclass IconPicker extends _picker__WEBPACK_IMPORTED_MODULE_0__[\\\"default\\\"] {\\n constructor(select, icons) {\\n super(select);\\n this.container.classList.add('ql-icon-picker');\\n Array.from(this.container.querySelectorAll('.ql-picker-item')).forEach(item => {\\n item.innerHTML = icons[item.getAttribute('data-value') || ''];\\n });\\n this.defaultItem = this.container.querySelector('.ql-selected');\\n this.selectItem(this.defaultItem);\\n }\\n\\n selectItem(target, trigger) {\\n super.selectItem(target, trigger);\\n const item = target || this.defaultItem;\\n if (this.label.innerHTML === item.innerHTML) return;\\n this.label.innerHTML = item.innerHTML;\\n }\\n\\n}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (IconPicker);\\n\\n//# sourceURL=webpack://Quill/./ui/icon-picker.js?\");\n\n/***/ }),\n\n/***/ \"./ui/icons.js\":\n/*!*********************!*\\\n !*** ./ui/icons.js ***!\n \\*********************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _assets_icons_align_left_svg__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../assets/icons/align-left.svg */ \\\"./assets/icons/align-left.svg\\\");\\n/* harmony import */ var _assets_icons_align_left_svg__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_align_left_svg__WEBPACK_IMPORTED_MODULE_0__);\\n/* harmony import */ var _assets_icons_align_center_svg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../assets/icons/align-center.svg */ \\\"./assets/icons/align-center.svg\\\");\\n/* harmony import */ var _assets_icons_align_center_svg__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_align_center_svg__WEBPACK_IMPORTED_MODULE_1__);\\n/* harmony import */ var _assets_icons_align_right_svg__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../assets/icons/align-right.svg */ \\\"./assets/icons/align-right.svg\\\");\\n/* harmony import */ var _assets_icons_align_right_svg__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_align_right_svg__WEBPACK_IMPORTED_MODULE_2__);\\n/* harmony import */ var _assets_icons_align_justify_svg__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../assets/icons/align-justify.svg */ \\\"./assets/icons/align-justify.svg\\\");\\n/* harmony import */ var _assets_icons_align_justify_svg__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_align_justify_svg__WEBPACK_IMPORTED_MODULE_3__);\\n/* harmony import */ var _assets_icons_background_svg__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../assets/icons/background.svg */ \\\"./assets/icons/background.svg\\\");\\n/* harmony import */ var _assets_icons_background_svg__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_background_svg__WEBPACK_IMPORTED_MODULE_4__);\\n/* harmony import */ var _assets_icons_blockquote_svg__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../assets/icons/blockquote.svg */ \\\"./assets/icons/blockquote.svg\\\");\\n/* harmony import */ var _assets_icons_blockquote_svg__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_blockquote_svg__WEBPACK_IMPORTED_MODULE_5__);\\n/* harmony import */ var _assets_icons_bold_svg__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../assets/icons/bold.svg */ \\\"./assets/icons/bold.svg\\\");\\n/* harmony import */ var _assets_icons_bold_svg__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_bold_svg__WEBPACK_IMPORTED_MODULE_6__);\\n/* harmony import */ var _assets_icons_clean_svg__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../assets/icons/clean.svg */ \\\"./assets/icons/clean.svg\\\");\\n/* harmony import */ var _assets_icons_clean_svg__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_clean_svg__WEBPACK_IMPORTED_MODULE_7__);\\n/* harmony import */ var _assets_icons_code_svg__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../assets/icons/code.svg */ \\\"./assets/icons/code.svg\\\");\\n/* harmony import */ var _assets_icons_code_svg__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_code_svg__WEBPACK_IMPORTED_MODULE_8__);\\n/* harmony import */ var _assets_icons_color_svg__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../assets/icons/color.svg */ \\\"./assets/icons/color.svg\\\");\\n/* harmony import */ var _assets_icons_color_svg__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_color_svg__WEBPACK_IMPORTED_MODULE_9__);\\n/* harmony import */ var _assets_icons_direction_ltr_svg__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../assets/icons/direction-ltr.svg */ \\\"./assets/icons/direction-ltr.svg\\\");\\n/* harmony import */ var _assets_icons_direction_ltr_svg__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_direction_ltr_svg__WEBPACK_IMPORTED_MODULE_10__);\\n/* harmony import */ var _assets_icons_direction_rtl_svg__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../assets/icons/direction-rtl.svg */ \\\"./assets/icons/direction-rtl.svg\\\");\\n/* harmony import */ var _assets_icons_direction_rtl_svg__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_direction_rtl_svg__WEBPACK_IMPORTED_MODULE_11__);\\n/* harmony import */ var _assets_icons_formula_svg__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../assets/icons/formula.svg */ \\\"./assets/icons/formula.svg\\\");\\n/* harmony import */ var _assets_icons_formula_svg__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_formula_svg__WEBPACK_IMPORTED_MODULE_12__);\\n/* harmony import */ var _assets_icons_header_svg__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../assets/icons/header.svg */ \\\"./assets/icons/header.svg\\\");\\n/* harmony import */ var _assets_icons_header_svg__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_header_svg__WEBPACK_IMPORTED_MODULE_13__);\\n/* harmony import */ var _assets_icons_header_2_svg__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../assets/icons/header-2.svg */ \\\"./assets/icons/header-2.svg\\\");\\n/* harmony import */ var _assets_icons_header_2_svg__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_header_2_svg__WEBPACK_IMPORTED_MODULE_14__);\\n/* harmony import */ var _assets_icons_italic_svg__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ../assets/icons/italic.svg */ \\\"./assets/icons/italic.svg\\\");\\n/* harmony import */ var _assets_icons_italic_svg__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_italic_svg__WEBPACK_IMPORTED_MODULE_15__);\\n/* harmony import */ var _assets_icons_image_svg__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../assets/icons/image.svg */ \\\"./assets/icons/image.svg\\\");\\n/* harmony import */ var _assets_icons_image_svg__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_image_svg__WEBPACK_IMPORTED_MODULE_16__);\\n/* harmony import */ var _assets_icons_indent_svg__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../assets/icons/indent.svg */ \\\"./assets/icons/indent.svg\\\");\\n/* harmony import */ var _assets_icons_indent_svg__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_indent_svg__WEBPACK_IMPORTED_MODULE_17__);\\n/* harmony import */ var _assets_icons_outdent_svg__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ../assets/icons/outdent.svg */ \\\"./assets/icons/outdent.svg\\\");\\n/* harmony import */ var _assets_icons_outdent_svg__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_outdent_svg__WEBPACK_IMPORTED_MODULE_18__);\\n/* harmony import */ var _assets_icons_link_svg__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ../assets/icons/link.svg */ \\\"./assets/icons/link.svg\\\");\\n/* harmony import */ var _assets_icons_link_svg__WEBPACK_IMPORTED_MODULE_19___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_link_svg__WEBPACK_IMPORTED_MODULE_19__);\\n/* harmony import */ var _assets_icons_list_bullet_svg__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ../assets/icons/list-bullet.svg */ \\\"./assets/icons/list-bullet.svg\\\");\\n/* harmony import */ var _assets_icons_list_bullet_svg__WEBPACK_IMPORTED_MODULE_20___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_list_bullet_svg__WEBPACK_IMPORTED_MODULE_20__);\\n/* harmony import */ var _assets_icons_list_check_svg__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ../assets/icons/list-check.svg */ \\\"./assets/icons/list-check.svg\\\");\\n/* harmony import */ var _assets_icons_list_check_svg__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_list_check_svg__WEBPACK_IMPORTED_MODULE_21__);\\n/* harmony import */ var _assets_icons_list_ordered_svg__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ../assets/icons/list-ordered.svg */ \\\"./assets/icons/list-ordered.svg\\\");\\n/* harmony import */ var _assets_icons_list_ordered_svg__WEBPACK_IMPORTED_MODULE_22___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_list_ordered_svg__WEBPACK_IMPORTED_MODULE_22__);\\n/* harmony import */ var _assets_icons_subscript_svg__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ../assets/icons/subscript.svg */ \\\"./assets/icons/subscript.svg\\\");\\n/* harmony import */ var _assets_icons_subscript_svg__WEBPACK_IMPORTED_MODULE_23___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_subscript_svg__WEBPACK_IMPORTED_MODULE_23__);\\n/* harmony import */ var _assets_icons_superscript_svg__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! ../assets/icons/superscript.svg */ \\\"./assets/icons/superscript.svg\\\");\\n/* harmony import */ var _assets_icons_superscript_svg__WEBPACK_IMPORTED_MODULE_24___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_superscript_svg__WEBPACK_IMPORTED_MODULE_24__);\\n/* harmony import */ var _assets_icons_strike_svg__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! ../assets/icons/strike.svg */ \\\"./assets/icons/strike.svg\\\");\\n/* harmony import */ var _assets_icons_strike_svg__WEBPACK_IMPORTED_MODULE_25___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_strike_svg__WEBPACK_IMPORTED_MODULE_25__);\\n/* harmony import */ var _assets_icons_table_svg__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(/*! ../assets/icons/table.svg */ \\\"./assets/icons/table.svg\\\");\\n/* harmony import */ var _assets_icons_table_svg__WEBPACK_IMPORTED_MODULE_26___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_table_svg__WEBPACK_IMPORTED_MODULE_26__);\\n/* harmony import */ var _assets_icons_underline_svg__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(/*! ../assets/icons/underline.svg */ \\\"./assets/icons/underline.svg\\\");\\n/* harmony import */ var _assets_icons_underline_svg__WEBPACK_IMPORTED_MODULE_27___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_underline_svg__WEBPACK_IMPORTED_MODULE_27__);\\n/* harmony import */ var _assets_icons_video_svg__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(/*! ../assets/icons/video.svg */ \\\"./assets/icons/video.svg\\\");\\n/* harmony import */ var _assets_icons_video_svg__WEBPACK_IMPORTED_MODULE_28___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_video_svg__WEBPACK_IMPORTED_MODULE_28__);\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = ({\\n align: {\\n '': _assets_icons_align_left_svg__WEBPACK_IMPORTED_MODULE_0___default.a,\\n center: _assets_icons_align_center_svg__WEBPACK_IMPORTED_MODULE_1___default.a,\\n right: _assets_icons_align_right_svg__WEBPACK_IMPORTED_MODULE_2___default.a,\\n justify: _assets_icons_align_justify_svg__WEBPACK_IMPORTED_MODULE_3___default.a\\n },\\n background: _assets_icons_background_svg__WEBPACK_IMPORTED_MODULE_4___default.a,\\n blockquote: _assets_icons_blockquote_svg__WEBPACK_IMPORTED_MODULE_5___default.a,\\n bold: _assets_icons_bold_svg__WEBPACK_IMPORTED_MODULE_6___default.a,\\n clean: _assets_icons_clean_svg__WEBPACK_IMPORTED_MODULE_7___default.a,\\n code: _assets_icons_code_svg__WEBPACK_IMPORTED_MODULE_8___default.a,\\n 'code-block': _assets_icons_code_svg__WEBPACK_IMPORTED_MODULE_8___default.a,\\n color: _assets_icons_color_svg__WEBPACK_IMPORTED_MODULE_9___default.a,\\n direction: {\\n '': _assets_icons_direction_ltr_svg__WEBPACK_IMPORTED_MODULE_10___default.a,\\n rtl: _assets_icons_direction_rtl_svg__WEBPACK_IMPORTED_MODULE_11___default.a\\n },\\n formula: _assets_icons_formula_svg__WEBPACK_IMPORTED_MODULE_12___default.a,\\n header: {\\n '1': _assets_icons_header_svg__WEBPACK_IMPORTED_MODULE_13___default.a,\\n '2': _assets_icons_header_2_svg__WEBPACK_IMPORTED_MODULE_14___default.a\\n },\\n italic: _assets_icons_italic_svg__WEBPACK_IMPORTED_MODULE_15___default.a,\\n image: _assets_icons_image_svg__WEBPACK_IMPORTED_MODULE_16___default.a,\\n indent: {\\n '+1': _assets_icons_indent_svg__WEBPACK_IMPORTED_MODULE_17___default.a,\\n '-1': _assets_icons_outdent_svg__WEBPACK_IMPORTED_MODULE_18___default.a\\n },\\n link: _assets_icons_link_svg__WEBPACK_IMPORTED_MODULE_19___default.a,\\n list: {\\n bullet: _assets_icons_list_bullet_svg__WEBPACK_IMPORTED_MODULE_20___default.a,\\n check: _assets_icons_list_check_svg__WEBPACK_IMPORTED_MODULE_21___default.a,\\n ordered: _assets_icons_list_ordered_svg__WEBPACK_IMPORTED_MODULE_22___default.a\\n },\\n script: {\\n sub: _assets_icons_subscript_svg__WEBPACK_IMPORTED_MODULE_23___default.a,\\n super: _assets_icons_superscript_svg__WEBPACK_IMPORTED_MODULE_24___default.a\\n },\\n strike: _assets_icons_strike_svg__WEBPACK_IMPORTED_MODULE_25___default.a,\\n table: _assets_icons_table_svg__WEBPACK_IMPORTED_MODULE_26___default.a,\\n underline: _assets_icons_underline_svg__WEBPACK_IMPORTED_MODULE_27___default.a,\\n video: _assets_icons_video_svg__WEBPACK_IMPORTED_MODULE_28___default.a\\n});\\n\\n//# sourceURL=webpack://Quill/./ui/icons.js?\");\n\n/***/ }),\n\n/***/ \"./ui/picker.js\":\n/*!**********************!*\\\n !*** ./ui/picker.js ***!\n \\**********************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\n/* harmony import */ var _assets_icons_dropdown_svg__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../assets/icons/dropdown.svg */ \\\"./assets/icons/dropdown.svg\\\");\\n/* harmony import */ var _assets_icons_dropdown_svg__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_assets_icons_dropdown_svg__WEBPACK_IMPORTED_MODULE_0__);\\n\\nlet optionsCounter = 0;\\n\\nfunction toggleAriaAttribute(element, attribute) {\\n element.setAttribute(attribute, !(element.getAttribute(attribute) === 'true'));\\n}\\n\\nclass Picker {\\n constructor(select) {\\n this.select = select;\\n this.container = document.createElement('span');\\n this.buildPicker();\\n this.select.style.display = 'none';\\n this.select.parentNode.insertBefore(this.container, this.select);\\n this.label.addEventListener('mousedown', () => {\\n this.togglePicker();\\n });\\n this.label.addEventListener('keydown', event => {\\n switch (event.key) {\\n case 'Enter':\\n this.togglePicker();\\n break;\\n\\n case 'Escape':\\n this.escape();\\n event.preventDefault();\\n break;\\n\\n default:\\n }\\n });\\n this.select.addEventListener('change', this.update.bind(this));\\n }\\n\\n togglePicker() {\\n this.container.classList.toggle('ql-expanded'); // Toggle aria-expanded and aria-hidden to make the picker accessible\\n\\n toggleAriaAttribute(this.label, 'aria-expanded');\\n toggleAriaAttribute(this.options, 'aria-hidden');\\n }\\n\\n buildItem(option) {\\n const item = document.createElement('span');\\n item.tabIndex = '0';\\n item.setAttribute('role', 'button');\\n item.classList.add('ql-picker-item');\\n\\n if (option.hasAttribute('value')) {\\n item.setAttribute('data-value', option.getAttribute('value'));\\n }\\n\\n if (option.textContent) {\\n item.setAttribute('data-label', option.textContent);\\n }\\n\\n item.addEventListener('click', () => {\\n this.selectItem(item, true);\\n });\\n item.addEventListener('keydown', event => {\\n switch (event.key) {\\n case 'Enter':\\n this.selectItem(item, true);\\n event.preventDefault();\\n break;\\n\\n case 'Escape':\\n this.escape();\\n event.preventDefault();\\n break;\\n\\n default:\\n }\\n });\\n return item;\\n }\\n\\n buildLabel() {\\n const label = document.createElement('span');\\n label.classList.add('ql-picker-label');\\n label.innerHTML = _assets_icons_dropdown_svg__WEBPACK_IMPORTED_MODULE_0___default.a;\\n label.tabIndex = '0';\\n label.setAttribute('role', 'button');\\n label.setAttribute('aria-expanded', 'false');\\n this.container.appendChild(label);\\n return label;\\n }\\n\\n buildOptions() {\\n const options = document.createElement('span');\\n options.classList.add('ql-picker-options'); // Don't want screen readers to read this until options are visible\\n\\n options.setAttribute('aria-hidden', 'true');\\n options.tabIndex = '-1'; // Need a unique id for aria-controls\\n\\n options.id = \\\"ql-picker-options-\\\".concat(optionsCounter);\\n optionsCounter += 1;\\n this.label.setAttribute('aria-controls', options.id);\\n this.options = options;\\n Array.from(this.select.options).forEach(option => {\\n const item = this.buildItem(option);\\n options.appendChild(item);\\n\\n if (option.selected === true) {\\n this.selectItem(item);\\n }\\n });\\n this.container.appendChild(options);\\n }\\n\\n buildPicker() {\\n Array.from(this.select.attributes).forEach(item => {\\n this.container.setAttribute(item.name, item.value);\\n });\\n this.container.classList.add('ql-picker');\\n this.label = this.buildLabel();\\n this.buildOptions();\\n }\\n\\n escape() {\\n // Close menu and return focus to trigger label\\n this.close(); // Need setTimeout for accessibility to ensure that the browser executes\\n // focus on the next process thread and after any DOM content changes\\n\\n setTimeout(() => this.label.focus(), 1);\\n }\\n\\n close() {\\n this.container.classList.remove('ql-expanded');\\n this.label.setAttribute('aria-expanded', 'false');\\n this.options.setAttribute('aria-hidden', 'true');\\n }\\n\\n selectItem(item, trigger = false) {\\n const selected = this.container.querySelector('.ql-selected');\\n if (item === selected) return;\\n\\n if (selected != null) {\\n selected.classList.remove('ql-selected');\\n }\\n\\n if (item == null) return;\\n item.classList.add('ql-selected');\\n this.select.selectedIndex = Array.from(item.parentNode.children).indexOf(item);\\n\\n if (item.hasAttribute('data-value')) {\\n this.label.setAttribute('data-value', item.getAttribute('data-value'));\\n } else {\\n this.label.removeAttribute('data-value');\\n }\\n\\n if (item.hasAttribute('data-label')) {\\n this.label.setAttribute('data-label', item.getAttribute('data-label'));\\n } else {\\n this.label.removeAttribute('data-label');\\n }\\n\\n if (trigger) {\\n this.select.dispatchEvent(new Event('change'));\\n this.close();\\n }\\n }\\n\\n update() {\\n let option;\\n\\n if (this.select.selectedIndex > -1) {\\n const item = this.container.querySelector('.ql-picker-options').children[this.select.selectedIndex];\\n option = this.select.options[this.select.selectedIndex];\\n this.selectItem(item);\\n } else {\\n this.selectItem(null);\\n }\\n\\n const isActive = option != null && option !== this.select.querySelector('option[selected]');\\n this.label.classList.toggle('ql-active', isActive);\\n }\\n\\n}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Picker);\\n\\n//# sourceURL=webpack://Quill/./ui/picker.js?\");\n\n/***/ }),\n\n/***/ \"./ui/tooltip.js\":\n/*!***********************!*\\\n !*** ./ui/tooltip.js ***!\n \\***********************/\n/*! exports provided: default */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\neval(\"__webpack_require__.r(__webpack_exports__);\\nclass Tooltip {\\n constructor(quill, boundsContainer) {\\n this.quill = quill;\\n this.boundsContainer = boundsContainer || document.body;\\n this.root = quill.addContainer('ql-tooltip');\\n this.root.innerHTML = this.constructor.TEMPLATE;\\n\\n if (this.quill.root === this.quill.scrollingContainer) {\\n this.quill.root.addEventListener('scroll', () => {\\n this.root.style.marginTop = \\\"\\\".concat(-1 * this.quill.root.scrollTop, \\\"px\\\");\\n });\\n }\\n\\n this.hide();\\n }\\n\\n hide() {\\n this.root.classList.add('ql-hidden');\\n }\\n\\n position(reference) {\\n const left = reference.left + reference.width / 2 - this.root.offsetWidth / 2; // root.scrollTop should be 0 if scrollContainer !== root\\n\\n const top = reference.bottom + this.quill.root.scrollTop;\\n this.root.style.left = \\\"\\\".concat(left, \\\"px\\\");\\n this.root.style.top = \\\"\\\".concat(top, \\\"px\\\");\\n this.root.classList.remove('ql-flip');\\n const containerBounds = this.boundsContainer.getBoundingClientRect();\\n const rootBounds = this.root.getBoundingClientRect();\\n let shift = 0;\\n\\n if (rootBounds.right > containerBounds.right) {\\n shift = containerBounds.right - rootBounds.right;\\n this.root.style.left = \\\"\\\".concat(left + shift, \\\"px\\\");\\n }\\n\\n if (rootBounds.left < containerBounds.left) {\\n shift = containerBounds.left - rootBounds.left;\\n this.root.style.left = \\\"\\\".concat(left + shift, \\\"px\\\");\\n }\\n\\n if (rootBounds.bottom > containerBounds.bottom) {\\n const height = rootBounds.bottom - rootBounds.top;\\n const verticalShift = reference.bottom - reference.top + height;\\n this.root.style.top = \\\"\\\".concat(top - verticalShift, \\\"px\\\");\\n this.root.classList.add('ql-flip');\\n }\\n\\n return shift;\\n }\\n\\n show() {\\n this.root.classList.remove('ql-editing');\\n this.root.classList.remove('ql-hidden');\\n }\\n\\n}\\n\\n/* harmony default export */ __webpack_exports__[\\\"default\\\"] = (Tooltip);\\n\\n//# sourceURL=webpack://Quill/./ui/tooltip.js?\");\n\n/***/ }),\n\n/***/ 0:\n/*!************************!*\\\n !*** multi ./quill.js ***!\n \\************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\neval(\"module.exports = __webpack_require__(/*! ./quill.js */\\\"./quill.js\\\");\\n\\n\\n//# sourceURL=webpack://Quill/multi_./quill.js?\");\n\n/***/ }),\n\n/***/ 1:\n/*!********************************!*\\\n !*** ./util.inspect (ignored) ***!\n \\********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\neval(\"/* (ignored) */\\n\\n//# sourceURL=webpack://Quill/./util.inspect_(ignored)?\");\n\n/***/ })\n\n/******/ })[\"default\"];\n});","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.ImageResize=e():t.ImageResize=e()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,\"a\",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p=\"\",e(e.s=41)}([function(t,e){function n(t){var e=typeof t;return null!=t&&(\"object\"==e||\"function\"==e)}t.exports=n},function(t,e,n){var r=n(23),o=\"object\"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function(\"return this\")();t.exports=i},function(t,e){function n(t){return null!=t&&\"object\"==typeof t}t.exports=n},function(t,e,n){function r(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e1)return t.map(function(t){return l(t)});var n=t[0];if(\"string\"!=typeof n.blotName&&\"string\"!=typeof n.attrName)throw new s(\"Invalid definition\");if(\"abstract\"===n.blotName)throw new s(\"Cannot register abstract class\");if(h[n.blotName||n.attrName]=n,\"string\"==typeof n.keyName)u[n.keyName]=n;else if(null!=n.className&&(c[n.className]=n),null!=n.tagName){Array.isArray(n.tagName)?n.tagName=n.tagName.map(function(t){return t.toUpperCase()}):n.tagName=n.tagName.toUpperCase();var r=Array.isArray(n.tagName)?n.tagName:[n.tagName];r.forEach(function(t){null!=f[t]&&null!=n.className||(f[t]=n)})}return n}var a=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var s=function(t){function e(e){var n=this;return e=\"[Parchment] \"+e,n=t.call(this,e)||this,n.message=e,n.name=n.constructor.name,n}return a(e,t),e}(Error);e.ParchmentError=s;var u={},c={},f={},h={};e.DATA_KEY=\"__blot\";var p;!function(t){t[t.TYPE=3]=\"TYPE\",t[t.LEVEL=12]=\"LEVEL\",t[t.ATTRIBUTE=13]=\"ATTRIBUTE\",t[t.BLOT=14]=\"BLOT\",t[t.INLINE=7]=\"INLINE\",t[t.BLOCK=11]=\"BLOCK\",t[t.BLOCK_BLOT=10]=\"BLOCK_BLOT\",t[t.INLINE_BLOT=6]=\"INLINE_BLOT\",t[t.BLOCK_ATTRIBUTE=9]=\"BLOCK_ATTRIBUTE\",t[t.INLINE_ATTRIBUTE=5]=\"INLINE_ATTRIBUTE\",t[t.ANY=15]=\"ANY\"}(p=e.Scope||(e.Scope={})),e.create=r,e.find=o,e.query=i,e.register=l},function(t,e,n){var r=n(51),o=n(11),i=n(3),l=n(20),a=String.fromCharCode(0),s=function(t){Array.isArray(t)?this.ops=t:null!=t&&Array.isArray(t.ops)?this.ops=t.ops:this.ops=[]};s.prototype.insert=function(t,e){var n={};return 0===t.length?this:(n.insert=t,null!=e&&\"object\"==typeof e&&Object.keys(e).length>0&&(n.attributes=e),this.push(n))},s.prototype.delete=function(t){return t<=0?this:this.push({delete:t})},s.prototype.retain=function(t,e){if(t<=0)return this;var n={retain:t};return null!=e&&\"object\"==typeof e&&Object.keys(e).length>0&&(n.attributes=e),this.push(n)},s.prototype.push=function(t){var e=this.ops.length,n=this.ops[e-1];if(t=i(!0,{},t),\"object\"==typeof n){if(\"number\"==typeof t.delete&&\"number\"==typeof n.delete)return this.ops[e-1]={delete:n.delete+t.delete},this;if(\"number\"==typeof n.delete&&null!=t.insert&&(e-=1,\"object\"!=typeof(n=this.ops[e-1])))return this.ops.unshift(t),this;if(o(t.attributes,n.attributes)){if(\"string\"==typeof t.insert&&\"string\"==typeof n.insert)return this.ops[e-1]={insert:n.insert+t.insert},\"object\"==typeof t.attributes&&(this.ops[e-1].attributes=t.attributes),this;if(\"number\"==typeof t.retain&&\"number\"==typeof n.retain)return this.ops[e-1]={retain:n.retain+t.retain},\"object\"==typeof t.attributes&&(this.ops[e-1].attributes=t.attributes),this}}return e===this.ops.length?this.ops.push(t):this.ops.splice(e,0,t),this},s.prototype.chop=function(){var t=this.ops[this.ops.length-1];return t&&t.retain&&!t.attributes&&this.ops.pop(),this},s.prototype.filter=function(t){return this.ops.filter(t)},s.prototype.forEach=function(t){this.ops.forEach(t)},s.prototype.map=function(t){return this.ops.map(t)},s.prototype.partition=function(t){var e=[],n=[];return this.forEach(function(r){(t(r)?e:n).push(r)}),[e,n]},s.prototype.reduce=function(t,e){return this.ops.reduce(t,e)},s.prototype.changeLength=function(){return this.reduce(function(t,e){return e.insert?t+l.length(e):e.delete?t-e.delete:t},0)},s.prototype.length=function(){return this.reduce(function(t,e){return t+l.length(e)},0)},s.prototype.slice=function(t,e){t=t||0,\"number\"!=typeof e&&(e=1/0);for(var n=[],r=l.iterator(this.ops),o=0;o0&&(e.push(t.ops[0]),e.ops=e.ops.concat(t.ops.slice(1))),e},s.prototype.diff=function(t,e){if(this.ops===t.ops)return new s;var n=[this,t].map(function(e){return e.map(function(n){if(null!=n.insert)return\"string\"==typeof n.insert?n.insert:a;var r=e===t?\"on\":\"with\";throw new Error(\"diff() called \"+r+\" non-document\")}).join(\"\")}),i=new s,u=r(n[0],n[1],e),c=l.iterator(this.ops),f=l.iterator(t.ops);return u.forEach(function(t){for(var e=t[1].length;e>0;){var n=0;switch(t[0]){case r.INSERT:n=Math.min(f.peekLength(),e),i.push(f.next(n));break;case r.DELETE:n=Math.min(e,c.peekLength()),c.next(n),i.delete(n);break;case r.EQUAL:n=Math.min(c.peekLength(),f.peekLength(),e);var a=c.next(n),s=f.next(n);o(a.insert,s.insert)?i.retain(n,l.attributes.diff(a.attributes,s.attributes)):i.push(s).delete(n)}e-=n}}),i.chop()},s.prototype.eachLine=function(t,e){e=e||\"\\n\";for(var n=l.iterator(this.ops),r=new s,o=0;n.hasNext();){if(\"insert\"!==n.peekType())return;var i=n.peek(),a=l.length(i)-n.peekLength(),u=\"string\"==typeof i.insert?i.insert.indexOf(e,a)-a:-1;if(u<0)r.push(n.next());else if(u>0)r.push(n.next(u));else{if(!1===t(r,n.next(1).attributes||{},o))return;o+=1,r=new s}}r.length()>0&&t(r,{},o)},s.prototype.transform=function(t,e){if(e=!!e,\"number\"==typeof t)return this.transformPosition(t,e);for(var n=l.iterator(this.ops),r=l.iterator(t.ops),o=new s;n.hasNext()||r.hasNext();)if(\"insert\"!==n.peekType()||!e&&\"insert\"===r.peekType())if(\"insert\"===r.peekType())o.push(r.next());else{var i=Math.min(n.peekLength(),r.peekLength()),a=n.next(i),u=r.next(i);if(a.delete)continue;u.delete?o.push(u):o.retain(i,l.attributes.transform(a.attributes,u.attributes,e))}else o.retain(l.length(n.next()));return o.chop()},s.prototype.transformPosition=function(t,e){e=!!e;for(var n=l.iterator(this.ops),r=0;n.hasNext()&&r<=t;){var o=n.peekLength(),i=n.peekType();n.next(),\"delete\"!==i?(\"insert\"===i&&(r1&&void 0!==arguments[1]?arguments[1]:{};return null==t?e:(\"function\"==typeof t.formats&&(e=(0,f.default)(e,t.formats())),null==t.parent||\"scroll\"==t.parent.blotName||t.parent.statics.scope!==t.statics.scope?e:a(t.parent,e))}Object.defineProperty(e,\"__esModule\",{value:!0}),e.default=e.BlockEmbed=e.bubbleFormats=void 0;var s=function(){function t(t,e){for(var n=0;n0&&(t1&&void 0!==arguments[1]&&arguments[1];if(n&&(0===t||t>=this.length()-1)){var r=this.clone();return 0===t?(this.parent.insertBefore(r,this),this):(this.parent.insertBefore(r,this.next),r)}var o=u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"split\",this).call(this,t,n);return this.cache={},o}}]),e}(y.default.Block);x.blotName=\"block\",x.tagName=\"P\",x.defaultChild=\"break\",x.allowedChildren=[m.default,y.default.Embed,O.default],e.bubbleFormats=a,e.BlockEmbed=w,e.default=x},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function l(t,e){if(e=(0,A.default)(!0,{container:t,modules:{clipboard:!0,keyboard:!0,history:!0}},e),e.theme&&e.theme!==q.DEFAULTS.theme){if(e.theme=q.import(\"themes/\"+e.theme),null==e.theme)throw new Error(\"Invalid theme \"+e.theme+\". Did you register it?\")}else e.theme=S.default;var n=(0,A.default)(!0,{},e.theme.DEFAULTS);[n,e].forEach(function(t){t.modules=t.modules||{},Object.keys(t.modules).forEach(function(e){!0===t.modules[e]&&(t.modules[e]={})})});var r=Object.keys(n.modules).concat(Object.keys(e.modules)),o=r.reduce(function(t,e){var n=q.import(\"modules/\"+e);return null==n?P.error(\"Cannot load \"+e+\" module. Are you sure you registered it?\"):t[e]=n.DEFAULTS||{},t},{});return null!=e.modules&&e.modules.toolbar&&e.modules.toolbar.constructor!==Object&&(e.modules.toolbar={container:e.modules.toolbar}),e=(0,A.default)(!0,{},q.DEFAULTS,{modules:o},n,e),[\"bounds\",\"container\",\"scrollingContainer\"].forEach(function(t){\"string\"==typeof e[t]&&(e[t]=document.querySelector(e[t]))}),e.modules=Object.keys(e.modules).reduce(function(t,n){return e.modules[n]&&(t[n]=e.modules[n]),t},{}),e}function a(t,e,n,r){if(this.options.strict&&!this.isEnabled()&&e===g.default.sources.USER)return new d.default;var o=null==n?null:this.getSelection(),i=this.editor.delta,l=t();if(null!=o&&(!0===n&&(n=o.index),null==r?o=u(o,l,e):0!==r&&(o=u(o,n,r,e)),this.setSelection(o,g.default.sources.SILENT)),l.length()>0){var a,s=[g.default.events.TEXT_CHANGE,l,i,e];if((a=this.emitter).emit.apply(a,[g.default.events.EDITOR_CHANGE].concat(s)),e!==g.default.sources.SILENT){var c;(c=this.emitter).emit.apply(c,s)}}return l}function s(t,e,n,r,o){var i={};return\"number\"==typeof t.index&&\"number\"==typeof t.length?\"number\"!=typeof e?(o=r,r=n,n=e,e=t.length,t=t.index):(e=t.length,t=t.index):\"number\"!=typeof e&&(o=r,r=n,n=e,e=0),\"object\"===(void 0===n?\"undefined\":c(n))?(i=n,o=r):\"string\"==typeof n&&(null!=r?i[n]=r:o=n),o=o||g.default.sources.API,[t,e,i,o]}function u(t,e,n,r){if(null==t)return null;var o=void 0,i=void 0;if(e instanceof d.default){var l=[t.index,t.index+t.length].map(function(t){return e.transformPosition(t,r!==g.default.sources.USER)}),a=f(l,2);o=a[0],i=a[1]}else{var s=[t.index,t.index+t.length].map(function(t){return t=0?t+n:Math.max(e,t+n)}),u=f(s,2);o=u[0],i=u[1]}return new x.Range(o,i-o)}Object.defineProperty(e,\"__esModule\",{value:!0}),e.default=e.overload=e.expandConfig=void 0;var c=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},f=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),h=function(){function t(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{};if(i(this,t),this.options=l(e,r),this.container=this.options.container,null==this.container)return P.error(\"Invalid Quill container\",e);this.options.debug&&t.debug(this.options.debug);var o=this.container.innerHTML.trim();this.container.classList.add(\"ql-container\"),this.container.innerHTML=\"\",this.container.__quill=this,this.root=this.addContainer(\"ql-editor\"),this.root.classList.add(\"ql-blank\"),this.root.setAttribute(\"data-gramm\",!1),this.scrollingContainer=this.options.scrollingContainer||this.root,this.emitter=new g.default,this.scroll=w.default.create(this.root,{emitter:this.emitter,whitelist:this.options.formats}),this.editor=new v.default(this.scroll),this.selection=new E.default(this.scroll,this.emitter),this.theme=new this.options.theme(this,this.options),this.keyboard=this.theme.addModule(\"keyboard\"),this.clipboard=this.theme.addModule(\"clipboard\"),this.history=this.theme.addModule(\"history\"),this.theme.init(),this.emitter.on(g.default.events.EDITOR_CHANGE,function(t){t===g.default.events.TEXT_CHANGE&&n.root.classList.toggle(\"ql-blank\",n.editor.isBlank())}),this.emitter.on(g.default.events.SCROLL_UPDATE,function(t,e){var r=n.selection.lastRange,o=r&&0===r.length?r.index:void 0;a.call(n,function(){return n.editor.update(null,e,o)},t)});var s=this.clipboard.convert(\"
    \"+o+\"


    \");this.setContents(s),this.history.clear(),this.options.placeholder&&this.root.setAttribute(\"data-placeholder\",this.options.placeholder),this.options.readOnly&&this.disable()}return h(t,null,[{key:\"debug\",value:function(t){!0===t&&(t=\"log\"),N.default.level(t)}},{key:\"find\",value:function(t){return t.__quill||w.default.find(t)}},{key:\"import\",value:function(t){return null==this.imports[t]&&P.error(\"Cannot import \"+t+\". Are you sure it was registered?\"),this.imports[t]}},{key:\"register\",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(\"string\"!=typeof t){var o=t.attrName||t.blotName;\"string\"==typeof o?this.register(\"formats/\"+o,t,e):Object.keys(t).forEach(function(r){n.register(r,t[r],e)})}else null==this.imports[t]||r||P.warn(\"Overwriting \"+t+\" with\",e),this.imports[t]=e,(t.startsWith(\"blots/\")||t.startsWith(\"formats/\"))&&\"abstract\"!==e.blotName?w.default.register(e):t.startsWith(\"modules\")&&\"function\"==typeof e.register&&e.register()}}]),h(t,[{key:\"addContainer\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(\"string\"==typeof t){var n=t;t=document.createElement(\"div\"),t.classList.add(n)}return this.container.insertBefore(t,e),t}},{key:\"blur\",value:function(){this.selection.setRange(null)}},{key:\"deleteText\",value:function(t,e,n){var r=this,o=s(t,e,n),i=f(o,4);return t=i[0],e=i[1],n=i[3],a.call(this,function(){return r.editor.deleteText(t,e)},n,t,-1*e)}},{key:\"disable\",value:function(){this.enable(!1)}},{key:\"enable\",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.scroll.enable(t),this.container.classList.toggle(\"ql-disabled\",!t)}},{key:\"focus\",value:function(){var t=this.scrollingContainer.scrollTop;this.selection.focus(),this.scrollingContainer.scrollTop=t,this.scrollIntoView()}},{key:\"format\",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:g.default.sources.API;return a.call(this,function(){var r=n.getSelection(!0),i=new d.default;if(null==r)return i;if(w.default.query(t,w.default.Scope.BLOCK))i=n.editor.formatLine(r.index,r.length,o({},t,e));else{if(0===r.length)return n.selection.format(t,e),i;i=n.editor.formatText(r.index,r.length,o({},t,e))}return n.setSelection(r,g.default.sources.SILENT),i},r)}},{key:\"formatLine\",value:function(t,e,n,r,o){var i=this,l=void 0,u=s(t,e,n,r,o),c=f(u,4);return t=c[0],e=c[1],l=c[2],o=c[3],a.call(this,function(){return i.editor.formatLine(t,e,l)},o,t,0)}},{key:\"formatText\",value:function(t,e,n,r,o){var i=this,l=void 0,u=s(t,e,n,r,o),c=f(u,4);return t=c[0],e=c[1],l=c[2],o=c[3],a.call(this,function(){return i.editor.formatText(t,e,l)},o,t,0)}},{key:\"getBounds\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=void 0;n=\"number\"==typeof t?this.selection.getBounds(t,e):this.selection.getBounds(t.index,t.length);var r=this.container.getBoundingClientRect();return{bottom:n.bottom-r.top,height:n.height,left:n.left-r.left,right:n.right-r.left,top:n.top-r.top,width:n.width}}},{key:\"getContents\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.getLength()-t,n=s(t,e),r=f(n,2);return t=r[0],e=r[1],this.editor.getContents(t,e)}},{key:\"getFormat\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.getSelection(!0),e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return\"number\"==typeof t?this.editor.getFormat(t,e):this.editor.getFormat(t.index,t.length)}},{key:\"getIndex\",value:function(t){return t.offset(this.scroll)}},{key:\"getLength\",value:function(){return this.scroll.length()}},{key:\"getLeaf\",value:function(t){return this.scroll.leaf(t)}},{key:\"getLine\",value:function(t){return this.scroll.line(t)}},{key:\"getLines\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE;return\"number\"!=typeof t?this.scroll.lines(t.index,t.length):this.scroll.lines(t,e)}},{key:\"getModule\",value:function(t){return this.theme.modules[t]}},{key:\"getSelection\",value:function(){return arguments.length>0&&void 0!==arguments[0]&&arguments[0]&&this.focus(),this.update(),this.selection.getRange()[0]}},{key:\"getText\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.getLength()-t,n=s(t,e),r=f(n,2);return t=r[0],e=r[1],this.editor.getText(t,e)}},{key:\"hasFocus\",value:function(){return this.selection.hasFocus()}},{key:\"insertEmbed\",value:function(e,n,r){var o=this,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t.sources.API;return a.call(this,function(){return o.editor.insertEmbed(e,n,r)},i,e)}},{key:\"insertText\",value:function(t,e,n,r,o){var i=this,l=void 0,u=s(t,0,n,r,o),c=f(u,4);return t=c[0],l=c[2],o=c[3],a.call(this,function(){return i.editor.insertText(t,e,l)},o,t,e.length)}},{key:\"isEnabled\",value:function(){return!this.container.classList.contains(\"ql-disabled\")}},{key:\"off\",value:function(){return this.emitter.off.apply(this.emitter,arguments)}},{key:\"on\",value:function(){return this.emitter.on.apply(this.emitter,arguments)}},{key:\"once\",value:function(){return this.emitter.once.apply(this.emitter,arguments)}},{key:\"pasteHTML\",value:function(t,e,n){this.clipboard.dangerouslyPasteHTML(t,e,n)}},{key:\"removeFormat\",value:function(t,e,n){var r=this,o=s(t,e,n),i=f(o,4);return t=i[0],e=i[1],n=i[3],a.call(this,function(){return r.editor.removeFormat(t,e)},n,t)}},{key:\"scrollIntoView\",value:function(){this.selection.scrollIntoView(this.scrollingContainer)}},{key:\"setContents\",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g.default.sources.API;return a.call(this,function(){t=new d.default(t);var n=e.getLength(),r=e.editor.deleteText(0,n),o=e.editor.applyDelta(t),i=o.ops[o.ops.length-1];return null!=i&&\"string\"==typeof i.insert&&\"\\n\"===i.insert[i.insert.length-1]&&(e.editor.deleteText(e.getLength()-1,1),o.delete(1)),r.compose(o)},n)}},{key:\"setSelection\",value:function(e,n,r){if(null==e)this.selection.setRange(null,n||t.sources.API);else{var o=s(e,n,r),i=f(o,4);e=i[0],n=i[1],r=i[3],this.selection.setRange(new x.Range(e,n),r),r!==g.default.sources.SILENT&&this.selection.scrollIntoView(this.scrollingContainer)}}},{key:\"setText\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g.default.sources.API,n=(new d.default).insert(t);return this.setContents(n,e)}},{key:\"update\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:g.default.sources.USER,e=this.scroll.update(t);return this.selection.update(t),e}},{key:\"updateContents\",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:g.default.sources.API;return a.call(this,function(){return t=new d.default(t),e.editor.applyDelta(t,n)},n,!0)}}]),t}();q.DEFAULTS={bounds:null,formats:null,modules:{},placeholder:\"\",readOnly:!1,scrollingContainer:null,strict:!0,theme:\"default\"},q.events=g.default.events,q.sources=g.default.sources,q.version=\"1.3.6\",q.imports={delta:d.default,parchment:w.default,\"core/module\":_.default,\"core/theme\":S.default},e.expandConfig=l,e.overload=s,e.default=q},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function i(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function l(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var a=function(){function t(t,e){for(var n=0;n0){var n=this.parent.isolate(this.offset(),this.length());this.moveChildren(n),n.wrap(this)}}}],[{key:\"compare\",value:function(t,n){var r=e.order.indexOf(t),o=e.order.indexOf(n);return r>=0||o>=0?r-o:t===n?0:t1?e-1:0),r=1;r1&&void 0!==arguments[1]?arguments[1]:{};r(this,t),this.quill=e,this.options=n};o.DEFAULTS={},e.default=o},function(t,e,n){\"use strict\";function r(t){if(i.indexOf(t)<=i.indexOf(l)){for(var e,n=arguments.length,r=Array(n>1?n-1:0),o=1;o0&&\"number\"!=typeof t[0]))}function i(t,e,n){var i,c;if(r(t)||r(e))return!1;if(t.prototype!==e.prototype)return!1;if(s(t))return!!s(e)&&(t=l.call(t),e=l.call(e),u(t,e,n));if(o(t)){if(!o(e))return!1;if(t.length!==e.length)return!1;for(i=0;i=0;i--)if(f[i]!=h[i])return!1;for(i=f.length-1;i>=0;i--)if(c=f[i],!u(t[c],e[c],n))return!1;return typeof t==typeof e}var l=Array.prototype.slice,a=n(52),s=n(53),u=t.exports=function(t,e,n){return n||(n={}),t===e||(t instanceof Date&&e instanceof Date?t.getTime()===e.getTime():!t||!e||\"object\"!=typeof t&&\"object\"!=typeof e?n.strict?t===e:t==e:i(t,e,n))}},function(t,e,n){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var r=n(1),o=function(){function t(t,e,n){void 0===n&&(n={}),this.attrName=t,this.keyName=e;var o=r.Scope.TYPE&r.Scope.ATTRIBUTE;null!=n.scope?this.scope=n.scope&r.Scope.LEVEL|o:this.scope=r.Scope.ATTRIBUTE,null!=n.whitelist&&(this.whitelist=n.whitelist)}return t.keys=function(t){return[].map.call(t.attributes,function(t){return t.name})},t.prototype.add=function(t,e){return!!this.canAdd(t,e)&&(t.setAttribute(this.keyName,e),!0)},t.prototype.canAdd=function(t,e){return null!=r.query(t,r.Scope.BLOT&(this.scope|r.Scope.TYPE))&&(null==this.whitelist||(\"string\"==typeof e?this.whitelist.indexOf(e.replace(/[\"']/g,\"\"))>-1:this.whitelist.indexOf(e)>-1))},t.prototype.remove=function(t){t.removeAttribute(this.keyName)},t.prototype.value=function(t){var e=t.getAttribute(this.keyName);return this.canAdd(t,e)&&e?e:\"\"},t}();e.default=o},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function i(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function l(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0}),e.default=e.Code=void 0;var a=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),s=function(){function t(t,e){for(var n=0;n=t+n)){var l=this.newlineIndex(t,!0)+1,a=i-l+1,s=this.isolate(l,a),u=s.next;s.format(r,o),u instanceof e&&u.formatAt(0,t-l+n-a,r,o)}}}},{key:\"insertAt\",value:function(t,e,n){if(null==n){var r=this.descendant(m.default,t),o=a(r,2),i=o[0],l=o[1];i.insertAt(l,e)}}},{key:\"length\",value:function(){var t=this.domNode.textContent.length;return this.domNode.textContent.endsWith(\"\\n\")?t:t+1}},{key:\"newlineIndex\",value:function(t){if(arguments.length>1&&void 0!==arguments[1]&&arguments[1])return this.domNode.textContent.slice(0,t).lastIndexOf(\"\\n\");var e=this.domNode.textContent.slice(t).indexOf(\"\\n\");return e>-1?t+e:-1}},{key:\"optimize\",value:function(t){this.domNode.textContent.endsWith(\"\\n\")||this.appendChild(p.default.create(\"text\",\"\\n\")),u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"optimize\",this).call(this,t);var n=this.next;null!=n&&n.prev===this&&n.statics.blotName===this.statics.blotName&&this.statics.formats(this.domNode)===n.statics.formats(n.domNode)&&(n.optimize(t),n.moveChildren(this),n.remove())}},{key:\"replace\",value:function(t){u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"replace\",this).call(this,t),[].slice.call(this.domNode.querySelectorAll(\"*\")).forEach(function(t){var e=p.default.find(t);null==e?t.parentNode.removeChild(t):e instanceof p.default.Embed?e.remove():e.unwrap()})}}],[{key:\"create\",value:function(t){var n=u(e.__proto__||Object.getPrototypeOf(e),\"create\",this).call(this,t);return n.setAttribute(\"spellcheck\",!1),n}},{key:\"formats\",value:function(){return!0}}]),e}(y.default);O.blotName=\"code-block\",O.tagName=\"PRE\",O.TAB=\" \",e.Code=_,e.default=O},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function l(t,e){return Object.keys(e).reduce(function(n,r){return null==t[r]?n:(e[r]===t[r]?n[r]=e[r]:Array.isArray(e[r])?e[r].indexOf(t[r])<0&&(n[r]=e[r].concat([t[r]])):n[r]=[e[r],t[r]],n)},{})}function a(t){return t.reduce(function(t,e){if(1===e.insert){var n=(0,A.default)(e.attributes);return delete n.image,t.insert({image:e.attributes.image},n)}if(null==e.attributes||!0!==e.attributes.list&&!0!==e.attributes.bullet||(e=(0,A.default)(e),e.attributes.list?e.attributes.list=\"ordered\":(e.attributes.list=\"bullet\",delete e.attributes.bullet)),\"string\"==typeof e.insert){var r=e.insert.replace(/\\r\\n/g,\"\\n\").replace(/\\r/g,\"\\n\");return t.insert(r,e.attributes)}return t.push(e)},new h.default)}Object.defineProperty(e,\"__esModule\",{value:!0});var s=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},u=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),c=function(){function t(t,e){for(var n=0;n=r&&!a.endsWith(\"\\n\")&&(n=!0),e.scroll.insertAt(t,a);var c=e.scroll.line(t),f=u(c,2),h=f[0],p=f[1],y=(0,S.default)({},(0,O.bubbleFormats)(h));if(h instanceof w.default){var b=h.descendant(v.default.Leaf,p),g=u(b,1),m=g[0];y=(0,S.default)(y,(0,O.bubbleFormats)(m))}l=d.default.attributes.diff(y,l)||{}}else if(\"object\"===s(o.insert)){var _=Object.keys(o.insert)[0];if(null==_)return t;e.scroll.insertAt(t,_,o.insert[_])}r+=i}return Object.keys(l).forEach(function(n){e.scroll.formatAt(t,i,n,l[n])}),t+i},0),t.reduce(function(t,n){return\"number\"==typeof n.delete?(e.scroll.deleteAt(t,n.delete),t):t+(n.retain||n.insert.length||1)},0),this.scroll.batchEnd(),this.update(t)}},{key:\"deleteText\",value:function(t,e){return this.scroll.deleteAt(t,e),this.update((new h.default).retain(t).delete(e))}},{key:\"formatLine\",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.scroll.update(),Object.keys(r).forEach(function(o){if(null==n.scroll.whitelist||n.scroll.whitelist[o]){var i=n.scroll.lines(t,Math.max(e,1)),l=e;i.forEach(function(e){var i=e.length();if(e instanceof g.default){var a=t-e.offset(n.scroll),s=e.newlineIndex(a+l)-a+1;e.formatAt(a,s,o,r[o])}else e.format(o,r[o]);l-=i})}}),this.scroll.optimize(),this.update((new h.default).retain(t).retain(e,(0,A.default)(r)))}},{key:\"formatText\",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return Object.keys(r).forEach(function(o){n.scroll.formatAt(t,e,o,r[o])}),this.update((new h.default).retain(t).retain(e,(0,A.default)(r)))}},{key:\"getContents\",value:function(t,e){return this.delta.slice(t,t+e)}},{key:\"getDelta\",value:function(){return this.scroll.lines().reduce(function(t,e){return t.concat(e.delta())},new h.default)}},{key:\"getFormat\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=[],r=[];0===e?this.scroll.path(t).forEach(function(t){var e=u(t,1),o=e[0];o instanceof w.default?n.push(o):o instanceof v.default.Leaf&&r.push(o)}):(n=this.scroll.lines(t,e),r=this.scroll.descendants(v.default.Leaf,t,e));var o=[n,r].map(function(t){if(0===t.length)return{};for(var e=(0,O.bubbleFormats)(t.shift());Object.keys(e).length>0;){var n=t.shift();if(null==n)return e;e=l((0,O.bubbleFormats)(n),e)}return e});return S.default.apply(S.default,o)}},{key:\"getText\",value:function(t,e){return this.getContents(t,e).filter(function(t){return\"string\"==typeof t.insert}).map(function(t){return t.insert}).join(\"\")}},{key:\"insertEmbed\",value:function(t,e,n){return this.scroll.insertAt(t,e,n),this.update((new h.default).retain(t).insert(o({},e,n)))}},{key:\"insertText\",value:function(t,e){var n=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e=e.replace(/\\r\\n/g,\"\\n\").replace(/\\r/g,\"\\n\"),this.scroll.insertAt(t,e),Object.keys(r).forEach(function(o){n.scroll.formatAt(t,e.length,o,r[o])}),this.update((new h.default).retain(t).insert(e,(0,A.default)(r)))}},{key:\"isBlank\",value:function(){if(0==this.scroll.children.length)return!0;if(this.scroll.children.length>1)return!1;var t=this.scroll.children.head;return t.statics.blotName===w.default.blotName&&(!(t.children.length>1)&&t.children.head instanceof E.default)}},{key:\"removeFormat\",value:function(t,e){var n=this.getText(t,e),r=this.scroll.line(t+e),o=u(r,2),i=o[0],l=o[1],a=0,s=new h.default;null!=i&&(a=i instanceof g.default?i.newlineIndex(l)-l+1:i.length()-l,s=i.delta().slice(l,l+a-1).insert(\"\\n\"));var c=this.getContents(t,e+a),f=c.diff((new h.default).insert(n).concat(s)),p=(new h.default).retain(t).concat(f);return this.applyDelta(p)}},{key:\"update\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,r=this.delta;if(1===e.length&&\"characterData\"===e[0].type&&e[0].target.data.match(P)&&v.default.find(e[0].target)){var o=v.default.find(e[0].target),i=(0,O.bubbleFormats)(o),l=o.offset(this.scroll),a=e[0].oldValue.replace(_.default.CONTENTS,\"\"),s=(new h.default).insert(a),u=(new h.default).insert(o.value());t=(new h.default).retain(l).concat(s.diff(u,n)).reduce(function(t,e){return e.insert?t.insert(e.insert,i):t.push(e)},new h.default),this.delta=r.compose(t)}else this.delta=this.getDelta(),t&&(0,N.default)(r.compose(t),this.delta)||(t=r.diff(this.delta,n));return t}}]),t}();e.default=q},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e1&&void 0!==arguments[1]?arguments[1]:0;i(this,t),this.index=e,this.length=n},O=function(){function t(e,n){var r=this;i(this,t),this.emitter=n,this.scroll=e,this.composing=!1,this.mouseDown=!1,this.root=this.scroll.domNode,this.cursor=c.default.create(\"cursor\",this),this.lastRange=this.savedRange=new _(0,0),this.handleComposition(),this.handleDragging(),this.emitter.listenDOM(\"selectionchange\",document,function(){r.mouseDown||setTimeout(r.update.bind(r,v.default.sources.USER),1)}),this.emitter.on(v.default.events.EDITOR_CHANGE,function(t,e){t===v.default.events.TEXT_CHANGE&&e.length()>0&&r.update(v.default.sources.SILENT)}),this.emitter.on(v.default.events.SCROLL_BEFORE_UPDATE,function(){if(r.hasFocus()){var t=r.getNativeRange();null!=t&&t.start.node!==r.cursor.textNode&&r.emitter.once(v.default.events.SCROLL_UPDATE,function(){try{r.setNativeRange(t.start.node,t.start.offset,t.end.node,t.end.offset)}catch(t){}})}}),this.emitter.on(v.default.events.SCROLL_OPTIMIZE,function(t,e){if(e.range){var n=e.range,o=n.startNode,i=n.startOffset,l=n.endNode,a=n.endOffset;r.setNativeRange(o,i,l,a)}}),this.update(v.default.sources.SILENT)}return s(t,[{key:\"handleComposition\",value:function(){var t=this;this.root.addEventListener(\"compositionstart\",function(){t.composing=!0}),this.root.addEventListener(\"compositionend\",function(){if(t.composing=!1,t.cursor.parent){var e=t.cursor.restore();if(!e)return;setTimeout(function(){t.setNativeRange(e.startNode,e.startOffset,e.endNode,e.endOffset)},1)}})}},{key:\"handleDragging\",value:function(){var t=this;this.emitter.listenDOM(\"mousedown\",document.body,function(){t.mouseDown=!0}),this.emitter.listenDOM(\"mouseup\",document.body,function(){t.mouseDown=!1,t.update(v.default.sources.USER)})}},{key:\"focus\",value:function(){this.hasFocus()||(this.root.focus(),this.setRange(this.savedRange))}},{key:\"format\",value:function(t,e){if(null==this.scroll.whitelist||this.scroll.whitelist[t]){this.scroll.update();var n=this.getNativeRange();if(null!=n&&n.native.collapsed&&!c.default.query(t,c.default.Scope.BLOCK)){if(n.start.node!==this.cursor.textNode){var r=c.default.find(n.start.node,!1);if(null==r)return;if(r instanceof c.default.Leaf){var o=r.split(n.start.offset);r.parent.insertBefore(this.cursor,o)}else r.insertBefore(this.cursor,n.start.node);this.cursor.attach()}this.cursor.format(t,e),this.scroll.optimize(),this.setNativeRange(this.cursor.textNode,this.cursor.textNode.data.length),this.update()}}}},{key:\"getBounds\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=this.scroll.length();t=Math.min(t,n-1),e=Math.min(t+e,n-1)-t;var r=void 0,o=this.scroll.leaf(t),i=a(o,2),l=i[0],s=i[1];if(null==l)return null;var u=l.position(s,!0),c=a(u,2);r=c[0],s=c[1];var f=document.createRange();if(e>0){f.setStart(r,s);var h=this.scroll.leaf(t+e),p=a(h,2);if(l=p[0],s=p[1],null==l)return null;var d=l.position(s,!0),y=a(d,2);return r=y[0],s=y[1],f.setEnd(r,s),f.getBoundingClientRect()}var v=\"left\",b=void 0;return r instanceof Text?(s0&&(v=\"right\")),{bottom:b.top+b.height,height:b.height,left:b[v],right:b[v],top:b.top,width:0}}},{key:\"getNativeRange\",value:function(){var t=document.getSelection();if(null==t||t.rangeCount<=0)return null;var e=t.getRangeAt(0);if(null==e)return null;var n=this.normalizeNative(e);return m.info(\"getNativeRange\",n),n}},{key:\"getRange\",value:function(){var t=this.getNativeRange();return null==t?[null,null]:[this.normalizedToRange(t),t]}},{key:\"hasFocus\",value:function(){return document.activeElement===this.root}},{key:\"normalizedToRange\",value:function(t){var e=this,n=[[t.start.node,t.start.offset]];t.native.collapsed||n.push([t.end.node,t.end.offset]);var r=n.map(function(t){var n=a(t,2),r=n[0],o=n[1],i=c.default.find(r,!0),l=i.offset(e.scroll);return 0===o?l:i instanceof c.default.Container?l+i.length():l+i.index(r,o)}),i=Math.min(Math.max.apply(Math,o(r)),this.scroll.length()-1),l=Math.min.apply(Math,[i].concat(o(r)));return new _(l,i-l)}},{key:\"normalizeNative\",value:function(t){if(!l(this.root,t.startContainer)||!t.collapsed&&!l(this.root,t.endContainer))return null;var e={start:{node:t.startContainer,offset:t.startOffset},end:{node:t.endContainer,offset:t.endOffset},native:t};return[e.start,e.end].forEach(function(t){for(var e=t.node,n=t.offset;!(e instanceof Text)&&e.childNodes.length>0;)if(e.childNodes.length>n)e=e.childNodes[n],n=0;else{if(e.childNodes.length!==n)break;e=e.lastChild,n=e instanceof Text?e.data.length:e.childNodes.length+1}t.node=e,t.offset=n}),e}},{key:\"rangeToNative\",value:function(t){var e=this,n=t.collapsed?[t.index]:[t.index,t.index+t.length],r=[],o=this.scroll.length();return n.forEach(function(t,n){t=Math.min(o-1,t);var i=void 0,l=e.scroll.leaf(t),s=a(l,2),u=s[0],c=s[1],f=u.position(c,0!==n),h=a(f,2);i=h[0],c=h[1],r.push(i,c)}),r.length<2&&(r=r.concat(r)),r}},{key:\"scrollIntoView\",value:function(t){var e=this.lastRange;if(null!=e){var n=this.getBounds(e.index,e.length);if(null!=n){var r=this.scroll.length()-1,o=this.scroll.line(Math.min(e.index,r)),i=a(o,1),l=i[0],s=l;if(e.length>0){var u=this.scroll.line(Math.min(e.index+e.length,r));s=a(u,1)[0]}if(null!=l&&null!=s){var c=t.getBoundingClientRect();n.topc.bottom&&(t.scrollTop+=n.bottom-c.bottom)}}}}},{key:\"setNativeRange\",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:e,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(m.info(\"setNativeRange\",t,e,n,r),null==t||null!=this.root.parentNode&&null!=t.parentNode&&null!=n.parentNode){var i=document.getSelection();if(null!=i)if(null!=t){this.hasFocus()||this.root.focus();var l=(this.getNativeRange()||{}).native;if(null==l||o||t!==l.startContainer||e!==l.startOffset||n!==l.endContainer||r!==l.endOffset){\"BR\"==t.tagName&&(e=[].indexOf.call(t.parentNode.childNodes,t),t=t.parentNode),\"BR\"==n.tagName&&(r=[].indexOf.call(n.parentNode.childNodes,n),n=n.parentNode);var a=document.createRange();a.setStart(t,e),a.setEnd(n,r),i.removeAllRanges(),i.addRange(a)}}else i.removeAllRanges(),this.root.blur(),document.body.focus()}}},{key:\"setRange\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:v.default.sources.API;if(\"string\"==typeof e&&(n=e,e=!1),m.info(\"setRange\",t),null!=t){var r=this.rangeToNative(t);this.setNativeRange.apply(this,o(r).concat([e]))}else this.setNativeRange(null);this.update(n)}},{key:\"update\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v.default.sources.USER,e=this.lastRange,n=this.getRange(),r=a(n,2),o=r[0],i=r[1];if(this.lastRange=o,null!=this.lastRange&&(this.savedRange=this.lastRange),!(0,d.default)(e,this.lastRange)){var l;!this.composing&&null!=i&&i.native.collapsed&&i.start.node!==this.cursor.textNode&&this.cursor.restore();var s=[v.default.events.SELECTION_CHANGE,(0,h.default)(this.lastRange),(0,h.default)(e),t];if((l=this.emitter).emit.apply(l,[v.default.events.EDITOR_CHANGE].concat(s)),t!==v.default.sources.SILENT){var u;(u=this.emitter).emit.apply(u,s)}}}}]),t}();e.Range=_,e.default=O},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var l=function(){function t(t,e){for(var n=0;n0&&(n+=1),[this.parent.domNode,n]},e.prototype.value=function(){return t={},t[this.statics.blotName]=this.statics.value(this.domNode)||!0,t;var t},e.scope=i.Scope.INLINE_BLOT,e}(o.default);e.default=l},function(t,e,n){function r(t){this.ops=t,this.index=0,this.offset=0}var o=n(11),i=n(3),l={attributes:{compose:function(t,e,n){\"object\"!=typeof t&&(t={}),\"object\"!=typeof e&&(e={});var r=i(!0,{},e);n||(r=Object.keys(r).reduce(function(t,e){return null!=r[e]&&(t[e]=r[e]),t},{}));for(var o in t)void 0!==t[o]&&void 0===e[o]&&(r[o]=t[o]);return Object.keys(r).length>0?r:void 0},diff:function(t,e){\"object\"!=typeof t&&(t={}),\"object\"!=typeof e&&(e={});var n=Object.keys(t).concat(Object.keys(e)).reduce(function(n,r){return o(t[r],e[r])||(n[r]=void 0===e[r]?null:e[r]),n},{});return Object.keys(n).length>0?n:void 0},transform:function(t,e,n){if(\"object\"!=typeof t)return e;if(\"object\"==typeof e){if(!n)return e;var r=Object.keys(e).reduce(function(n,r){return void 0===t[r]&&(n[r]=e[r]),n},{});return Object.keys(r).length>0?r:void 0}}},iterator:function(t){return new r(t)},length:function(t){return\"number\"==typeof t.delete?t.delete:\"number\"==typeof t.retain?t.retain:\"string\"==typeof t.insert?t.insert.length:1}};r.prototype.hasNext=function(){return this.peekLength()<1/0},r.prototype.next=function(t){t||(t=1/0);var e=this.ops[this.index];if(e){var n=this.offset,r=l.length(e);if(t>=r-n?(t=r-n,this.index+=1,this.offset=0):this.offset+=t,\"number\"==typeof e.delete)return{delete:t};var o={};return e.attributes&&(o.attributes=e.attributes),\"number\"==typeof e.retain?o.retain=t:\"string\"==typeof e.insert?o.insert=e.insert.substr(n,t):o.insert=e.insert,o}return{retain:1/0}},r.prototype.peek=function(){return this.ops[this.index]},r.prototype.peekLength=function(){return this.ops[this.index]?l.length(this.ops[this.index])-this.offset:1/0},r.prototype.peekType=function(){return this.ops[this.index]?\"number\"==typeof this.ops[this.index].delete?\"delete\":\"number\"==typeof this.ops[this.index].retain?\"retain\":\"insert\":\"retain\"},t.exports=l},function(t,n){var r=function(){\"use strict\";function t(t,e){return null!=e&&t instanceof e}function n(r,o,i,l,f){function h(r,i){if(null===r)return null;if(0===i)return r;var v,b;if(\"object\"!=typeof r)return r;if(t(r,s))v=new s;else if(t(r,u))v=new u;else if(t(r,c))v=new c(function(t,e){r.then(function(e){t(h(e,i-1))},function(t){e(h(t,i-1))})});else if(n.__isArray(r))v=[];else if(n.__isRegExp(r))v=new RegExp(r.source,a(r)),r.lastIndex&&(v.lastIndex=r.lastIndex);else if(n.__isDate(r))v=new Date(r.getTime());else{if(y&&e.isBuffer(r))return v=new e(r.length),r.copy(v),v;t(r,Error)?v=Object.create(r):void 0===l?(b=Object.getPrototypeOf(r),v=Object.create(b)):(v=Object.create(l),b=l)}if(o){var g=p.indexOf(r);if(-1!=g)return d[g];p.push(r),d.push(v)}t(r,s)&&r.forEach(function(t,e){var n=h(e,i-1),r=h(t,i-1);v.set(n,r)}),t(r,u)&&r.forEach(function(t){var e=h(t,i-1);v.add(e)});for(var m in r){var _;b&&(_=Object.getOwnPropertyDescriptor(b,m)),_&&null==_.set||(v[m]=h(r[m],i-1))}if(Object.getOwnPropertySymbols)for(var O=Object.getOwnPropertySymbols(r),m=0;m0){if(i instanceof y.BlockEmbed||f instanceof y.BlockEmbed)return void this.optimize();if(i instanceof _.default){var h=i.newlineIndex(i.length(),!0);if(h>-1&&(i=i.split(h+1))===f)return void this.optimize()}else if(f instanceof _.default){var p=f.newlineIndex(0);p>-1&&f.split(p+1)}var d=f.children.head instanceof g.default?null:f.children.head;i.moveChildren(f,d),i.remove()}this.optimize()}},{key:\"enable\",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.domNode.setAttribute(\"contenteditable\",t)}},{key:\"formatAt\",value:function(t,n,r,o){(null==this.whitelist||this.whitelist[r])&&(c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"formatAt\",this).call(this,t,n,r,o),this.optimize())}},{key:\"insertAt\",value:function(t,n,r){if(null==r||null==this.whitelist||this.whitelist[n]){if(t>=this.length())if(null==r||null==h.default.query(n,h.default.Scope.BLOCK)){var o=h.default.create(this.statics.defaultChild);this.appendChild(o),null==r&&n.endsWith(\"\\n\")&&(n=n.slice(0,-1)),o.insertAt(0,n,r)}else{var i=h.default.create(n,r);this.appendChild(i)}else c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"insertAt\",this).call(this,t,n,r);this.optimize()}}},{key:\"insertBefore\",value:function(t,n){if(t.statics.scope===h.default.Scope.INLINE_BLOT){var r=h.default.create(this.statics.defaultChild);r.appendChild(t),t=r}c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"insertBefore\",this).call(this,t,n)}},{key:\"leaf\",value:function(t){return this.path(t).pop()||[null,-1]}},{key:\"line\",value:function(t){return t===this.length()?this.line(t-1):this.descendant(a,t)}},{key:\"lines\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE;return function t(e,n,r){var o=[],i=r;return e.children.forEachAt(n,r,function(e,n,r){a(e)?o.push(e):e instanceof h.default.Container&&(o=o.concat(t(e,n,i))),i-=r}),o}(this,t,e)}},{key:\"optimize\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};!0!==this.batch&&(c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"optimize\",this).call(this,t,n),t.length>0&&this.emitter.emit(d.default.events.SCROLL_OPTIMIZE,t,n))}},{key:\"path\",value:function(t){return c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"path\",this).call(this,t).slice(1)}},{key:\"update\",value:function(t){if(!0!==this.batch){var n=d.default.sources.USER;\"string\"==typeof t&&(n=t),Array.isArray(t)||(t=this.observer.takeRecords()),t.length>0&&this.emitter.emit(d.default.events.SCROLL_BEFORE_UPDATE,n,t),c(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"update\",this).call(this,t.concat([])),t.length>0&&this.emitter.emit(d.default.events.SCROLL_UPDATE,n,t)}}}]),e}(h.default.Scroll);x.blotName=\"scroll\",x.className=\"ql-editor\",x.tagName=\"DIV\",x.defaultChild=\"block\",x.allowedChildren=[v.default,y.BlockEmbed,w.default],e.default=x},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function i(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function l(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function a(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function s(t,e){var n,r=t===D.keys.LEFT?\"prefix\":\"suffix\";return n={key:t,shiftKey:e,altKey:null},o(n,r,/^$/),o(n,\"handler\",function(n){var r=n.index;t===D.keys.RIGHT&&(r+=n.length+1);var o=this.quill.getLeaf(r);return!(b(o,1)[0]instanceof S.default.Embed)||(t===D.keys.LEFT?e?this.quill.setSelection(n.index-1,n.length+1,q.default.sources.USER):this.quill.setSelection(n.index-1,q.default.sources.USER):e?this.quill.setSelection(n.index,n.length+1,q.default.sources.USER):this.quill.setSelection(n.index+n.length+1,q.default.sources.USER),!1)}),n}function u(t,e){if(!(0===t.index||this.quill.getLength()<=1)){var n=this.quill.getLine(t.index),r=b(n,1),o=r[0],i={};if(0===e.offset){var l=this.quill.getLine(t.index-1),a=b(l,1),s=a[0];if(null!=s&&s.length()>1){var u=o.formats(),c=this.quill.getFormat(t.index-1,1);i=N.default.attributes.diff(u,c)||{}}}var f=/[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]$/.test(e.prefix)?2:1;this.quill.deleteText(t.index-f,f,q.default.sources.USER),Object.keys(i).length>0&&this.quill.formatLine(t.index-f,f,i,q.default.sources.USER),this.quill.focus()}}function c(t,e){var n=/^[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/.test(e.suffix)?2:1;if(!(t.index>=this.quill.getLength()-n)){var r={},o=0,i=this.quill.getLine(t.index),l=b(i,1),a=l[0];if(e.offset>=a.length()-1){var s=this.quill.getLine(t.index+1),u=b(s,1),c=u[0];if(c){var f=a.formats(),h=this.quill.getFormat(t.index,1);r=N.default.attributes.diff(f,h)||{},o=c.length()}}this.quill.deleteText(t.index,n,q.default.sources.USER),Object.keys(r).length>0&&this.quill.formatLine(t.index+o-1,n,r,q.default.sources.USER)}}function f(t){var e=this.quill.getLines(t),n={};if(e.length>1){var r=e[0].formats(),o=e[e.length-1].formats();n=N.default.attributes.diff(o,r)||{}}this.quill.deleteText(t,q.default.sources.USER),Object.keys(n).length>0&&this.quill.formatLine(t.index,1,n,q.default.sources.USER),this.quill.setSelection(t.index,q.default.sources.SILENT),this.quill.focus()}function h(t,e){var n=this;t.length>0&&this.quill.scroll.deleteAt(t.index,t.length);var r=Object.keys(e.format).reduce(function(t,n){return S.default.query(n,S.default.Scope.BLOCK)&&!Array.isArray(e.format[n])&&(t[n]=e.format[n]),t},{});this.quill.insertText(t.index,\"\\n\",r,q.default.sources.USER),this.quill.setSelection(t.index+1,q.default.sources.SILENT),this.quill.focus(),Object.keys(e.format).forEach(function(t){null==r[t]&&(Array.isArray(e.format[t])||\"link\"!==t&&n.quill.format(t,e.format[t],q.default.sources.USER))})}function p(t){return{key:D.keys.TAB,shiftKey:!t,format:{\"code-block\":!0},handler:function(e){var n=S.default.query(\"code-block\"),r=e.index,o=e.length,i=this.quill.scroll.descendant(n,r),l=b(i,2),a=l[0],s=l[1];if(null!=a){var u=this.quill.getIndex(a),c=a.newlineIndex(s,!0)+1,f=a.newlineIndex(u+s+o),h=a.domNode.textContent.slice(c,f).split(\"\\n\");s=0,h.forEach(function(e,i){t?(a.insertAt(c+s,n.TAB),s+=n.TAB.length,0===i?r+=n.TAB.length:o+=n.TAB.length):e.startsWith(n.TAB)&&(a.deleteAt(c+s,n.TAB.length),s-=n.TAB.length,0===i?r-=n.TAB.length:o-=n.TAB.length),s+=e.length+1}),this.quill.update(q.default.sources.USER),this.quill.setSelection(r,o,q.default.sources.SILENT)}}}}function d(t){return{key:t[0].toUpperCase(),shortKey:!0,handler:function(e,n){this.quill.format(t,!n.format[t],q.default.sources.USER)}}}function y(t){if(\"string\"==typeof t||\"number\"==typeof t)return y({key:t});if(\"object\"===(void 0===t?\"undefined\":v(t))&&(t=(0,_.default)(t,!1)),\"string\"==typeof t.key)if(null!=D.keys[t.key.toUpperCase()])t.key=D.keys[t.key.toUpperCase()];else{if(1!==t.key.length)return null;t.key=t.key.toUpperCase().charCodeAt(0)}return t.shortKey&&(t[I]=t.shortKey,delete t.shortKey),t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.SHORTKEY=e.default=void 0;var v=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},b=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),g=function(){function t(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=y(t);if(null==r||null==r.key)return B.warn(\"Attempted to add invalid keyboard binding\",r);\"function\"==typeof e&&(e={handler:e}),\"function\"==typeof n&&(n={handler:n}),r=(0,E.default)(r,e,n),this.bindings[r.key]=this.bindings[r.key]||[],this.bindings[r.key].push(r)}},{key:\"listen\",value:function(){var t=this;this.quill.root.addEventListener(\"keydown\",function(n){if(!n.defaultPrevented){var r=n.which||n.keyCode,o=(t.bindings[r]||[]).filter(function(t){return e.match(n,t)});if(0!==o.length){var i=t.quill.getSelection();if(null!=i&&t.quill.hasFocus()){var l=t.quill.getLine(i.index),a=b(l,2),s=a[0],u=a[1],c=t.quill.getLeaf(i.index),f=b(c,2),h=f[0],p=f[1],d=0===i.length?[h,p]:t.quill.getLeaf(i.index+i.length),y=b(d,2),g=y[0],m=y[1],_=h instanceof S.default.Text?h.value().slice(0,p):\"\",O=g instanceof S.default.Text?g.value().slice(m):\"\",x={collapsed:0===i.length,empty:0===i.length&&s.length()<=1,format:t.quill.getFormat(i),offset:u,prefix:_,suffix:O};o.some(function(e){if(null!=e.collapsed&&e.collapsed!==x.collapsed)return!1;if(null!=e.empty&&e.empty!==x.empty)return!1;if(null!=e.offset&&e.offset!==x.offset)return!1;if(Array.isArray(e.format)){if(e.format.every(function(t){return null==x.format[t]}))return!1}else if(\"object\"===v(e.format)&&!Object.keys(e.format).every(function(t){return!0===e.format[t]?null!=x.format[t]:!1===e.format[t]?null==x.format[t]:(0,w.default)(e.format[t],x.format[t])}))return!1;return!(null!=e.prefix&&!e.prefix.test(x.prefix))&&(!(null!=e.suffix&&!e.suffix.test(x.suffix))&&!0!==e.handler.call(t,i,x))})&&n.preventDefault()}}}})}}]),e}(M.default);D.keys={BACKSPACE:8,TAB:9,ENTER:13,ESCAPE:27,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46},D.DEFAULTS={bindings:{bold:d(\"bold\"),italic:d(\"italic\"),underline:d(\"underline\"),indent:{key:D.keys.TAB,format:[\"blockquote\",\"indent\",\"list\"],handler:function(t,e){if(e.collapsed&&0!==e.offset)return!0;this.quill.format(\"indent\",\"+1\",q.default.sources.USER)}},outdent:{key:D.keys.TAB,shiftKey:!0,format:[\"blockquote\",\"indent\",\"list\"],handler:function(t,e){if(e.collapsed&&0!==e.offset)return!0;this.quill.format(\"indent\",\"-1\",q.default.sources.USER)}},\"outdent backspace\":{key:D.keys.BACKSPACE,collapsed:!0,shiftKey:null,metaKey:null,ctrlKey:null,altKey:null,format:[\"indent\",\"list\"],offset:0,handler:function(t,e){null!=e.format.indent?this.quill.format(\"indent\",\"-1\",q.default.sources.USER):null!=e.format.list&&this.quill.format(\"list\",!1,q.default.sources.USER)}},\"indent code-block\":p(!0),\"outdent code-block\":p(!1),\"remove tab\":{key:D.keys.TAB,shiftKey:!0,collapsed:!0,prefix:/\\t$/,handler:function(t){this.quill.deleteText(t.index-1,1,q.default.sources.USER)}},tab:{key:D.keys.TAB,handler:function(t){this.quill.history.cutoff();var e=(new A.default).retain(t.index).delete(t.length).insert(\"\\t\");this.quill.updateContents(e,q.default.sources.USER),this.quill.history.cutoff(),this.quill.setSelection(t.index+1,q.default.sources.SILENT)}},\"list empty enter\":{key:D.keys.ENTER,collapsed:!0,format:[\"list\"],empty:!0,handler:function(t,e){this.quill.format(\"list\",!1,q.default.sources.USER),e.format.indent&&this.quill.format(\"indent\",!1,q.default.sources.USER)}},\"checklist enter\":{key:D.keys.ENTER,collapsed:!0,format:{list:\"checked\"},handler:function(t){var e=this.quill.getLine(t.index),n=b(e,2),r=n[0],o=n[1],i=(0,E.default)({},r.formats(),{list:\"checked\"}),l=(new A.default).retain(t.index).insert(\"\\n\",i).retain(r.length()-o-1).retain(1,{list:\"unchecked\"});this.quill.updateContents(l,q.default.sources.USER),this.quill.setSelection(t.index+1,q.default.sources.SILENT),this.quill.scrollIntoView()}},\"header enter\":{key:D.keys.ENTER,collapsed:!0,format:[\"header\"],suffix:/^$/,handler:function(t,e){var n=this.quill.getLine(t.index),r=b(n,2),o=r[0],i=r[1],l=(new A.default).retain(t.index).insert(\"\\n\",e.format).retain(o.length()-i-1).retain(1,{header:null});this.quill.updateContents(l,q.default.sources.USER),this.quill.setSelection(t.index+1,q.default.sources.SILENT),this.quill.scrollIntoView()}},\"list autofill\":{key:\" \",collapsed:!0,format:{list:!1},prefix:/^\\s*?(\\d+\\.|-|\\*|\\[ ?\\]|\\[x\\])$/,handler:function(t,e){var n=e.prefix.length,r=this.quill.getLine(t.index),o=b(r,2),i=o[0],l=o[1];if(l>n)return!0;var a=void 0;switch(e.prefix.trim()){case\"[]\":case\"[ ]\":a=\"unchecked\";break;case\"[x]\":a=\"checked\";break;case\"-\":case\"*\":a=\"bullet\";break;default:a=\"ordered\"}this.quill.insertText(t.index,\" \",q.default.sources.USER),this.quill.history.cutoff();var s=(new A.default).retain(t.index-l).delete(n+1).retain(i.length()-2-l).retain(1,{list:a});this.quill.updateContents(s,q.default.sources.USER),this.quill.history.cutoff(),this.quill.setSelection(t.index-n,q.default.sources.SILENT)}},\"code exit\":{key:D.keys.ENTER,collapsed:!0,format:[\"code-block\"],prefix:/\\n\\n$/,suffix:/^\\s+$/,handler:function(t){var e=this.quill.getLine(t.index),n=b(e,2),r=n[0],o=n[1],i=(new A.default).retain(t.index+r.length()-o-2).retain(1,{\"code-block\":null}).delete(1);this.quill.updateContents(i,q.default.sources.USER)}},\"embed left\":s(D.keys.LEFT,!1),\"embed left shift\":s(D.keys.LEFT,!0),\"embed right\":s(D.keys.RIGHT,!1),\"embed right shift\":s(D.keys.RIGHT,!0)}},e.default=D,e.SHORTKEY=I},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function i(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function l(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var a=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),s=function t(e,n,r){null===e&&(e=Function.prototype);var o=Object.getOwnPropertyDescriptor(e,n);if(void 0===o){var i=Object.getPrototypeOf(e);return null===i?void 0:t(i,n,r)}if(\"value\"in o)return o.value;var l=o.get;if(void 0!==l)return l.call(r)},u=function(){function t(t,e){for(var n=0;n-1}Object.defineProperty(e,\"__esModule\",{value:!0}),e.sanitize=e.default=void 0;var a=function(){function t(t,e){for(var n=0;n1&&void 0!==arguments[1]&&arguments[1],n=this.container.querySelector(\".ql-selected\");if(t!==n&&(null!=n&&n.classList.remove(\"ql-selected\"),null!=t&&(t.classList.add(\"ql-selected\"),this.select.selectedIndex=[].indexOf.call(t.parentNode.children,t),t.hasAttribute(\"data-value\")?this.label.setAttribute(\"data-value\",t.getAttribute(\"data-value\")):this.label.removeAttribute(\"data-value\"),t.hasAttribute(\"data-label\")?this.label.setAttribute(\"data-label\",t.getAttribute(\"data-label\")):this.label.removeAttribute(\"data-label\"),e))){if(\"function\"==typeof Event)this.select.dispatchEvent(new Event(\"change\"));else if(\"object\"===(\"undefined\"==typeof Event?\"undefined\":l(Event))){var r=document.createEvent(\"Event\");r.initEvent(\"change\",!0,!0),this.select.dispatchEvent(r)}this.close()}}},{key:\"update\",value:function(){var t=void 0;if(this.select.selectedIndex>-1){var e=this.container.querySelector(\".ql-picker-options\").children[this.select.selectedIndex];t=this.select.options[this.select.selectedIndex],this.selectItem(e)}else this.selectItem(null);var n=null!=t&&t!==this.select.querySelector(\"option[selected]\");this.label.classList.toggle(\"ql-active\",n)}}]),t}();e.default=p},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(0),i=r(o),l=n(5),a=r(l),s=n(4),u=r(s),c=n(16),f=r(c),h=n(25),p=r(h),d=n(24),y=r(d),v=n(35),b=r(v),g=n(6),m=r(g),_=n(22),O=r(_),w=n(7),x=r(w),E=n(55),k=r(E),A=n(42),j=r(A),N=n(23),T=r(N);a.default.register({\"blots/block\":u.default,\"blots/block/embed\":s.BlockEmbed,\"blots/break\":f.default,\"blots/container\":p.default,\"blots/cursor\":y.default,\"blots/embed\":b.default,\"blots/inline\":m.default,\"blots/scroll\":O.default,\"blots/text\":x.default,\"modules/clipboard\":k.default,\"modules/history\":j.default,\"modules/keyboard\":T.default}),i.default.register(u.default,f.default,y.default,m.default,O.default,x.default),e.default=a.default},function(t,e,n){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var r=n(1),o=function(){function t(t){this.domNode=t,this.domNode[r.DATA_KEY]={blot:this}}return Object.defineProperty(t.prototype,\"statics\",{get:function(){return this.constructor},enumerable:!0,configurable:!0}),t.create=function(t){if(null==this.tagName)throw new r.ParchmentError(\"Blot definition missing tagName\");var e;return Array.isArray(this.tagName)?(\"string\"==typeof t&&(t=t.toUpperCase(),parseInt(t).toString()===t&&(t=parseInt(t))),e=\"number\"==typeof t?document.createElement(this.tagName[t-1]):this.tagName.indexOf(t)>-1?document.createElement(t):document.createElement(this.tagName[0])):e=document.createElement(this.tagName),this.className&&e.classList.add(this.className),e},t.prototype.attach=function(){null!=this.parent&&(this.scroll=this.parent.scroll)},t.prototype.clone=function(){var t=this.domNode.cloneNode(!1);return r.create(t)},t.prototype.detach=function(){null!=this.parent&&this.parent.removeChild(this),delete this.domNode[r.DATA_KEY]},t.prototype.deleteAt=function(t,e){this.isolate(t,e).remove()},t.prototype.formatAt=function(t,e,n,o){var i=this.isolate(t,e);if(null!=r.query(n,r.Scope.BLOT)&&o)i.wrap(n,o);else if(null!=r.query(n,r.Scope.ATTRIBUTE)){var l=r.create(this.statics.scope);i.wrap(l),l.format(n,o)}},t.prototype.insertAt=function(t,e,n){var o=null==n?r.create(\"text\",e):r.create(e,n),i=this.split(t);this.parent.insertBefore(o,i)},t.prototype.insertInto=function(t,e){void 0===e&&(e=null),null!=this.parent&&this.parent.children.remove(this);var n=null;t.children.insertBefore(this,e),null!=e&&(n=e.domNode),this.domNode.parentNode==t.domNode&&this.domNode.nextSibling==n||t.domNode.insertBefore(this.domNode,n),this.parent=t,this.attach()},t.prototype.isolate=function(t,e){var n=this.split(t);return n.split(e),n},t.prototype.length=function(){return 1},t.prototype.offset=function(t){return void 0===t&&(t=this.parent),null==this.parent||this==t?0:this.parent.children.offset(this)+this.parent.offset(t)},t.prototype.optimize=function(t){null!=this.domNode[r.DATA_KEY]&&delete this.domNode[r.DATA_KEY].mutations},t.prototype.remove=function(){null!=this.domNode.parentNode&&this.domNode.parentNode.removeChild(this.domNode),this.detach()},t.prototype.replace=function(t){null!=t.parent&&(t.parent.insertBefore(this,t.next),t.remove())},t.prototype.replaceWith=function(t,e){var n=\"string\"==typeof t?r.create(t,e):t;return n.replace(this),n},t.prototype.split=function(t,e){return 0===t?this:this.next},t.prototype.update=function(t,e){},t.prototype.wrap=function(t,e){var n=\"string\"==typeof t?r.create(t,e):t;return null!=this.parent&&this.parent.insertBefore(n,this.next),n.appendChild(this),n},t.blotName=\"abstract\",t}();e.default=o},function(t,e,n){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var r=n(12),o=n(32),i=n(33),l=n(1),a=function(){function t(t){this.attributes={},this.domNode=t,this.build()}return t.prototype.attribute=function(t,e){e?t.add(this.domNode,e)&&(null!=t.value(this.domNode)?this.attributes[t.attrName]=t:delete this.attributes[t.attrName]):(t.remove(this.domNode),delete this.attributes[t.attrName])},t.prototype.build=function(){var t=this;this.attributes={};var e=r.default.keys(this.domNode),n=o.default.keys(this.domNode),a=i.default.keys(this.domNode);e.concat(n).concat(a).forEach(function(e){var n=l.query(e,l.Scope.ATTRIBUTE);n instanceof r.default&&(t.attributes[n.attrName]=n)})},t.prototype.copy=function(t){var e=this;Object.keys(this.attributes).forEach(function(n){var r=e.attributes[n].value(e.domNode);t.format(n,r)})},t.prototype.move=function(t){var e=this;this.copy(t),Object.keys(this.attributes).forEach(function(t){e.attributes[t].remove(e.domNode)}),this.attributes={}},t.prototype.values=function(){var t=this;return Object.keys(this.attributes).reduce(function(e,n){return e[n]=t.attributes[n].value(t.domNode),e},{})},t}();e.default=a},function(t,e,n){\"use strict\";function r(t,e){return(t.getAttribute(\"class\")||\"\").split(/\\s+/).filter(function(t){return 0===t.indexOf(e+\"-\")})}var o=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var i=n(12),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.keys=function(t){return(t.getAttribute(\"class\")||\"\").split(/\\s+/).map(function(t){return t.split(\"-\").slice(0,-1).join(\"-\")})},e.prototype.add=function(t,e){return!!this.canAdd(t,e)&&(this.remove(t),t.classList.add(this.keyName+\"-\"+e),!0)},e.prototype.remove=function(t){r(t,this.keyName).forEach(function(e){t.classList.remove(e)}),0===t.classList.length&&t.removeAttribute(\"class\")},e.prototype.value=function(t){var e=r(t,this.keyName)[0]||\"\",n=e.slice(this.keyName.length+1);return this.canAdd(t,n)?n:\"\"},e}(i.default);e.default=l},function(t,e,n){\"use strict\";function r(t){var e=t.split(\"-\"),n=e.slice(1).map(function(t){return t[0].toUpperCase()+t.slice(1)}).join(\"\");return e[0]+n}var o=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var i=n(12),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.keys=function(t){return(t.getAttribute(\"style\")||\"\").split(\";\").map(function(t){return t.split(\":\")[0].trim()})},e.prototype.add=function(t,e){return!!this.canAdd(t,e)&&(t.style[r(this.keyName)]=e,!0)},e.prototype.remove=function(t){t.style[r(this.keyName)]=\"\",t.getAttribute(\"style\")||t.removeAttribute(\"style\")},e.prototype.value=function(t){var e=t.style[r(this.keyName)];return this.canAdd(t,e)?e:\"\"},e}(i.default);e.default=l},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}Object.defineProperty(e,\"__esModule\",{value:!0});var o=function(){function t(t,e){for(var n=0;nr&&this.stack.undo.length>0){var o=this.stack.undo.pop();n=n.compose(o.undo),t=o.redo.compose(t)}else this.lastRecorded=r;this.stack.undo.push({redo:t,undo:n}),this.stack.undo.length>this.options.maxStack&&this.stack.undo.shift()}}},{key:\"redo\",value:function(){this.change(\"redo\",\"undo\")}},{key:\"transform\",value:function(t){this.stack.undo.forEach(function(e){e.undo=t.transform(e.undo,!0),e.redo=t.transform(e.redo,!0)}),this.stack.redo.forEach(function(e){e.undo=t.transform(e.undo,!0),e.redo=t.transform(e.redo,!0)})}},{key:\"undo\",value:function(){this.change(\"undo\",\"redo\")}}]),e}(y.default);v.DEFAULTS={delay:1e3,maxStack:100,userOnly:!1},e.default=v,e.getLastChangeIndex=s},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function i(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function l(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function a(t){var e=t.match(/^(?:(https?):\\/\\/)?(?:(?:www|m)\\.)?youtube\\.com\\/watch.*v=([a-zA-Z0-9_-]+)/)||t.match(/^(?:(https?):\\/\\/)?(?:(?:www|m)\\.)?youtu\\.be\\/([a-zA-Z0-9_-]+)/);return e?(e[1]||\"https\")+\"://www.youtube.com/embed/\"+e[2]+\"?showinfo=0\":(e=t.match(/^(?:(https?):\\/\\/)?(?:www\\.)?vimeo\\.com\\/(\\d+)/))?(e[1]||\"https\")+\"://player.vimeo.com/video/\"+e[2]+\"/\":t}function s(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];e.forEach(function(e){var r=document.createElement(\"option\");e===n?r.setAttribute(\"selected\",\"selected\"):r.setAttribute(\"value\",e),t.appendChild(r)})}Object.defineProperty(e,\"__esModule\",{value:!0}),e.default=e.BaseTooltip=void 0;var u=function(){function t(t,e){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:\"link\",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;this.root.classList.remove(\"ql-hidden\"),this.root.classList.add(\"ql-editing\"),null!=e?this.textbox.value=e:t!==this.root.getAttribute(\"data-mode\")&&(this.textbox.value=\"\"),this.position(this.quill.getBounds(this.quill.selection.savedRange)),this.textbox.select(),this.textbox.setAttribute(\"placeholder\",this.textbox.getAttribute(\"data-\"+t)||\"\"),this.root.setAttribute(\"data-mode\",t)}},{key:\"restoreFocus\",value:function(){var t=this.quill.scrollingContainer.scrollTop;this.quill.focus(),this.quill.scrollingContainer.scrollTop=t}},{key:\"save\",value:function(){var t=this.textbox.value;switch(this.root.getAttribute(\"data-mode\")){case\"link\":var e=this.quill.root.scrollTop;this.linkRange?(this.quill.formatText(this.linkRange,\"link\",t,v.default.sources.USER),delete this.linkRange):(this.restoreFocus(),this.quill.format(\"link\",t,v.default.sources.USER)),this.quill.root.scrollTop=e;break;case\"video\":t=a(t);case\"formula\":if(!t)break;var n=this.quill.getSelection(!0);if(null!=n){var r=n.index+n.length;this.quill.insertEmbed(r,this.root.getAttribute(\"data-mode\"),t,v.default.sources.USER),\"formula\"===this.root.getAttribute(\"data-mode\")&&this.quill.insertText(r+1,\" \",v.default.sources.USER),this.quill.setSelection(r+2,v.default.sources.USER)}}this.textbox.value=\"\",this.hide()}}]),e}(N.default);e.BaseTooltip=R,e.default=L},function(t,e,n){\"use strict\";Object.defineProperty(e,\"__esModule\",{value:!0});var r=function(){function t(){this.head=this.tail=null,this.length=0}return t.prototype.append=function(){for(var t=[],e=0;e1&&this.append.apply(this,t.slice(1))},t.prototype.contains=function(t){for(var e,n=this.iterator();e=n();)if(e===t)return!0;return!1},t.prototype.insertBefore=function(t,e){t&&(t.next=e,null!=e?(t.prev=e.prev,null!=e.prev&&(e.prev.next=t),e.prev=t,e===this.head&&(this.head=t)):null!=this.tail?(this.tail.next=t,t.prev=this.tail,this.tail=t):(t.prev=null,this.head=this.tail=t),this.length+=1)},t.prototype.offset=function(t){for(var e=0,n=this.head;null!=n;){if(n===t)return e;e+=n.length(),n=n.next}return-1},t.prototype.remove=function(t){this.contains(t)&&(null!=t.prev&&(t.prev.next=t.next),null!=t.next&&(t.next.prev=t.prev),t===this.head&&(this.head=t.next),t===this.tail&&(this.tail=t.prev),this.length-=1)},t.prototype.iterator=function(t){return void 0===t&&(t=this.head),function(){var e=t;return null!=t&&(t=t.next),e}},t.prototype.find=function(t,e){void 0===e&&(e=!1);for(var n,r=this.iterator();n=r();){var o=n.length();if(ta?n(r,t-a,Math.min(e,a+u-t)):n(r,0,Math.min(u,t+e-a)),a+=u}},t.prototype.map=function(t){return this.reduce(function(e,n){return e.push(t(n)),e},[])},t.prototype.reduce=function(t,e){for(var n,r=this.iterator();n=r();)e=t(e,n);return e},t}();e.default=r},function(t,e,n){\"use strict\";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(17),i=n(1),l={attributes:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0},a=function(t){function e(e){var n=t.call(this,e)||this;return n.scroll=n,n.observer=new MutationObserver(function(t){n.update(t)}),n.observer.observe(n.domNode,l),n.attach(),n}return r(e,t),e.prototype.detach=function(){t.prototype.detach.call(this),this.observer.disconnect()},e.prototype.deleteAt=function(e,n){this.update(),0===e&&n===this.length()?this.children.forEach(function(t){t.remove()}):t.prototype.deleteAt.call(this,e,n)},e.prototype.formatAt=function(e,n,r,o){this.update(),t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.insertAt=function(e,n,r){this.update(),t.prototype.insertAt.call(this,e,n,r)},e.prototype.optimize=function(e,n){var r=this;void 0===e&&(e=[]),void 0===n&&(n={}),t.prototype.optimize.call(this,n);for(var l=[].slice.call(this.observer.takeRecords());l.length>0;)e.push(l.pop());for(var a=function(t,e){void 0===e&&(e=!0),null!=t&&t!==r&&null!=t.domNode.parentNode&&(null==t.domNode[i.DATA_KEY].mutations&&(t.domNode[i.DATA_KEY].mutations=[]),e&&a(t.parent))},s=function(t){null!=t.domNode[i.DATA_KEY]&&null!=t.domNode[i.DATA_KEY].mutations&&(t instanceof o.default&&t.children.forEach(s),t.optimize(n))},u=e,c=0;u.length>0;c+=1){if(c>=100)throw new Error(\"[Parchment] Maximum optimize iterations reached\");for(u.forEach(function(t){var e=i.find(t.target,!0);null!=e&&(e.domNode===t.target&&(\"childList\"===t.type?(a(i.find(t.previousSibling,!1)),[].forEach.call(t.addedNodes,function(t){var e=i.find(t,!1);a(e,!1),e instanceof o.default&&e.children.forEach(function(t){a(t,!1)})})):\"attributes\"===t.type&&a(e.prev)),a(e))}),this.children.forEach(s),u=[].slice.call(this.observer.takeRecords()),l=u.slice();l.length>0;)e.push(l.pop())}},e.prototype.update=function(e,n){var r=this;void 0===n&&(n={}),e=e||this.observer.takeRecords(),e.map(function(t){var e=i.find(t.target,!0);return null==e?null:null==e.domNode[i.DATA_KEY].mutations?(e.domNode[i.DATA_KEY].mutations=[t],e):(e.domNode[i.DATA_KEY].mutations.push(t),null)}).forEach(function(t){null!=t&&t!==r&&null!=t.domNode[i.DATA_KEY]&&t.update(t.domNode[i.DATA_KEY].mutations||[],n)}),null!=this.domNode[i.DATA_KEY].mutations&&t.prototype.update.call(this,this.domNode[i.DATA_KEY].mutations,n),this.optimize(e,n)},e.blotName=\"scroll\",e.defaultChild=\"block\",e.scope=i.Scope.BLOCK_BLOT,e.tagName=\"DIV\",e}(o.default);e.default=a},function(t,e,n){\"use strict\";function r(t,e){if(Object.keys(t).length!==Object.keys(e).length)return!1;for(var n in t)if(t[n]!==e[n])return!1;return!0}var o=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var i=n(18),l=n(1),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o(e,t),e.formats=function(n){if(n.tagName!==e.tagName)return t.formats.call(this,n)},e.prototype.format=function(n,r){var o=this;n!==this.statics.blotName||r?t.prototype.format.call(this,n,r):(this.children.forEach(function(t){t instanceof i.default||(t=t.wrap(e.blotName,!0)),o.attributes.copy(t)}),this.unwrap())},e.prototype.formatAt=function(e,n,r,o){if(null!=this.formats()[r]||l.query(r,l.Scope.ATTRIBUTE)){this.isolate(e,n).format(r,o)}else t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.optimize=function(n){t.prototype.optimize.call(this,n);var o=this.formats();if(0===Object.keys(o).length)return this.unwrap();var i=this.next;i instanceof e&&i.prev===this&&r(o,i.formats())&&(i.moveChildren(this),i.remove())},e.blotName=\"inline\",e.scope=l.Scope.INLINE_BLOT,e.tagName=\"SPAN\",e}(i.default);e.default=a},function(t,e,n){\"use strict\";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(18),i=n(1),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.formats=function(n){var r=i.query(e.blotName).tagName;if(n.tagName!==r)return t.formats.call(this,n)},e.prototype.format=function(n,r){null!=i.query(n,i.Scope.BLOCK)&&(n!==this.statics.blotName||r?t.prototype.format.call(this,n,r):this.replaceWith(e.blotName))},e.prototype.formatAt=function(e,n,r,o){null!=i.query(r,i.Scope.BLOCK)?this.format(r,o):t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.insertAt=function(e,n,r){if(null==r||null!=i.query(n,i.Scope.INLINE))t.prototype.insertAt.call(this,e,n,r);else{var o=this.split(e),l=i.create(n,r);o.parent.insertBefore(l,o)}},e.prototype.update=function(e,n){navigator.userAgent.match(/Trident/)?this.build():t.prototype.update.call(this,e,n)},e.blotName=\"block\",e.scope=i.Scope.BLOCK_BLOT,e.tagName=\"P\",e}(o.default);e.default=l},function(t,e,n){\"use strict\";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(19),i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.formats=function(t){},e.prototype.format=function(e,n){t.prototype.formatAt.call(this,0,this.length(),e,n)},e.prototype.formatAt=function(e,n,r,o){0===e&&n===this.length()?this.format(r,o):t.prototype.formatAt.call(this,e,n,r,o)},e.prototype.formats=function(){return this.statics.formats(this.domNode)},e}(o.default);e.default=i},function(t,e,n){\"use strict\";var r=this&&this.__extends||function(){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};return function(e,n){function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}();Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(19),i=n(1),l=function(t){function e(e){var n=t.call(this,e)||this;return n.text=n.statics.value(n.domNode),n}return r(e,t),e.create=function(t){return document.createTextNode(t)},e.value=function(t){var e=t.data;return e.normalize&&(e=e.normalize()),e},e.prototype.deleteAt=function(t,e){this.domNode.data=this.text=this.text.slice(0,t)+this.text.slice(t+e)},e.prototype.index=function(t,e){return this.domNode===t?e:-1},e.prototype.insertAt=function(e,n,r){null==r?(this.text=this.text.slice(0,e)+n+this.text.slice(e),this.domNode.data=this.text):t.prototype.insertAt.call(this,e,n,r)},e.prototype.length=function(){return this.text.length},e.prototype.optimize=function(n){t.prototype.optimize.call(this,n),this.text=this.statics.value(this.domNode),0===this.text.length?this.remove():this.next instanceof e&&this.next.prev===this&&(this.insertAt(this.length(),this.next.value()),this.next.remove())},e.prototype.position=function(t,e){return void 0===e&&(e=!1),[this.domNode,t]},e.prototype.split=function(t,e){if(void 0===e&&(e=!1),!e){if(0===t)return this;if(t===this.length())return this.next}var n=i.create(this.domNode.splitText(t));return this.parent.insertBefore(n,this.next),this.text=this.statics.value(this.domNode),n},e.prototype.update=function(t,e){var n=this;t.some(function(t){return\"characterData\"===t.type&&t.target===n.domNode})&&(this.text=this.statics.value(this.domNode))},e.prototype.value=function(){return this.text},e.blotName=\"text\",e.scope=i.Scope.INLINE_BLOT,e}(o.default);e.default=l},function(t,e,n){\"use strict\";var r=document.createElement(\"div\");if(r.classList.toggle(\"test-class\",!1),r.classList.contains(\"test-class\")){var o=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return arguments.length>1&&!this.contains(t)==!e?e:o.call(this,t)}}String.prototype.startsWith||(String.prototype.startsWith=function(t,e){return e=e||0,this.substr(e,t.length)===t}),String.prototype.endsWith||(String.prototype.endsWith=function(t,e){var n=this.toString();(\"number\"!=typeof e||!isFinite(e)||Math.floor(e)!==e||e>n.length)&&(e=n.length),e-=t.length;var r=n.indexOf(t,e);return-1!==r&&r===e}),Array.prototype.find||Object.defineProperty(Array.prototype,\"find\",{value:function(t){if(null===this)throw new TypeError(\"Array.prototype.find called on null or undefined\");if(\"function\"!=typeof t)throw new TypeError(\"predicate must be a function\");for(var e,n=Object(this),r=n.length>>>0,o=arguments[1],i=0;ie.length?t:e,l=t.length>e.length?e:t,a=i.indexOf(l);if(-1!=a)return r=[[y,i.substring(0,a)],[v,l],[y,i.substring(a+l.length)]],t.length>e.length&&(r[0][0]=r[2][0]=d),r;if(1==l.length)return[[d,t],[y,e]];var u=s(t,e);if(u){var c=u[0],f=u[1],h=u[2],p=u[3],b=u[4],g=n(c,h),m=n(f,p);return g.concat([[v,b]],m)}return o(t,e)}function o(t,e){for(var n=t.length,r=e.length,o=Math.ceil((n+r)/2),l=o,a=2*o,s=new Array(a),u=new Array(a),c=0;cn)v+=2;else if(x>r)p+=2;else if(h){var E=l+f-_;if(E>=0&&E=k)return i(t,e,O,x)}}}for(var A=-m+b;A<=m-g;A+=2){var k,E=l+A;k=A==-m||A!=m&&u[E-1]n)g+=2;else if(j>r)b+=2;else if(!h){var w=l+f-A;if(w>=0&&w=k)return i(t,e,O,x)}}}}return[[d,t],[y,e]]}function i(t,e,r,o){var i=t.substring(0,r),l=e.substring(0,o),a=t.substring(r),s=e.substring(o),u=n(i,l),c=n(a,s);return u.concat(c)}function l(t,e){if(!t||!e||t.charAt(0)!=e.charAt(0))return 0;for(var n=0,r=Math.min(t.length,e.length),o=r,i=0;n=t.length?[r,o,i,s,f]:null}var r=t.length>e.length?t:e,o=t.length>e.length?e:t;if(r.length<4||2*o.lengthu[4].length?s:u:s;var c,f,h,p;return t.length>e.length?(c=i[0],f=i[1],h=i[2],p=i[3]):(h=i[0],p=i[1],c=i[2],f=i[3]),[c,f,h,p,i[4]]}function u(t){t.push([v,\"\"]);for(var e,n=0,r=0,o=0,i=\"\",s=\"\";n1?(0!==r&&0!==o&&(e=l(s,i),0!==e&&(n-r-o>0&&t[n-r-o-1][0]==v?t[n-r-o-1][1]+=s.substring(0,e):(t.splice(0,0,[v,s.substring(0,e)]),n++),s=s.substring(e),i=i.substring(e)),0!==(e=a(s,i))&&(t[n][1]=s.substring(s.length-e)+t[n][1],s=s.substring(0,s.length-e),i=i.substring(0,i.length-e))),0===r?t.splice(n-o,r+o,[y,s]):0===o?t.splice(n-r,r+o,[d,i]):t.splice(n-r-o,r+o,[d,i],[y,s]),n=n-r-o+(r?1:0)+(o?1:0)+1):0!==n&&t[n-1][0]==v?(t[n-1][1]+=t[n][1],t.splice(n,1)):n++,o=0,r=0,i=\"\",s=\"\"}\"\"===t[t.length-1][1]&&t.pop();var c=!1;for(n=1;n0&&r.splice(o+2,0,[l[0],a]),p(r,o,3)}return t}function h(t){for(var e=!1,n=function(t){return t.charCodeAt(0)>=56320&&t.charCodeAt(0)<=57343},r=2;r=55296&&t.charCodeAt(t.length-1)<=56319}(t[r-2][1])&&t[r-1][0]===d&&n(t[r-1][1])&&t[r][0]===y&&n(t[r][1])&&(e=!0,t[r-1][1]=t[r-2][1].slice(-1)+t[r-1][1],t[r][1]=t[r-2][1].slice(-1)+t[r][1],t[r-2][1]=t[r-2][1].slice(0,-1));if(!e)return t;for(var o=[],r=0;r0&&o.push(t[r]);return o}function p(t,e,n){for(var r=e+n-1;r>=0&&r>=e-1;r--)if(r+1=0&&n.length-1}function h(t,e,n){return t.nodeType===t.TEXT_NODE?n.reduce(function(e,n){return n(t,e)},new T.default):t.nodeType===t.ELEMENT_NODE?[].reduce.call(t.childNodes||[],function(r,o){var i=h(o,e,n);return o.nodeType===t.ELEMENT_NODE&&(i=e.reduce(function(t,e){return e(o,t)},i),i=(o[W]||[]).reduce(function(t,e){return e(o,t)},i)),r.concat(i)},new T.default):new T.default}function p(t,e,n){return s(n,t,!0)}function d(t,e){var n=P.default.Attributor.Attribute.keys(t),r=P.default.Attributor.Class.keys(t),o=P.default.Attributor.Style.keys(t),i={};return n.concat(r).concat(o).forEach(function(e){var n=P.default.query(e,P.default.Scope.ATTRIBUTE);null!=n&&(i[n.attrName]=n.value(t),i[n.attrName])||(n=G[e],null==n||n.attrName!==e&&n.keyName!==e||(i[n.attrName]=n.value(t)||void 0),null==(n=X[e])||n.attrName!==e&&n.keyName!==e||(n=X[e],i[n.attrName]=n.value(t)||void 0))}),Object.keys(i).length>0&&(e=s(e,i)),e}function y(t,e){var n=P.default.query(t);if(null==n)return e;if(n.prototype instanceof P.default.Embed){var r={},o=n.value(t);null!=o&&(r[n.blotName]=o,e=(new T.default).insert(r,n.formats(t)))}else\"function\"==typeof n.formats&&(e=s(e,n.blotName,n.formats(t)));return e}function v(t,e){return c(e,\"\\n\")||e.insert(\"\\n\"),e}function b(){return new T.default}function g(t,e){var n=P.default.query(t);if(null==n||\"list-item\"!==n.blotName||!c(e,\"\\n\"))return e;for(var r=-1,o=t.parentNode;!o.classList.contains(\"ql-clipboard\");)\"list\"===(P.default.query(o)||{}).blotName&&(r+=1),o=o.parentNode;return r<=0?e:e.compose((new T.default).retain(e.length()-1).retain(1,{indent:r}))}function m(t,e){return c(e,\"\\n\")||(f(t)||e.length()>0&&t.nextSibling&&f(t.nextSibling))&&e.insert(\"\\n\"),e}function _(t,e){if(f(t)&&null!=t.nextElementSibling&&!c(e,\"\\n\\n\")){var n=t.offsetHeight+parseFloat(u(t).marginTop)+parseFloat(u(t).marginBottom);t.nextElementSibling.offsetTop>t.offsetTop+1.5*n&&e.insert(\"\\n\")}return e}function O(t,e){var n={},r=t.style||{};return r.fontStyle&&\"italic\"===u(t).fontStyle&&(n.italic=!0),r.fontWeight&&(u(t).fontWeight.startsWith(\"bold\")||parseInt(u(t).fontWeight)>=700)&&(n.bold=!0),Object.keys(n).length>0&&(e=s(e,n)),parseFloat(r.textIndent||0)>0&&(e=(new T.default).insert(\"\\t\").concat(e)),e}function w(t,e){var n=t.data;if(\"O:P\"===t.parentNode.tagName)return e.insert(n.trim());if(0===n.trim().length&&t.parentNode.classList.contains(\"ql-clipboard\"))return e;if(!u(t.parentNode).whiteSpace.startsWith(\"pre\")){var r=function(t,e){return e=e.replace(/[^\\u00a0]/g,\"\"),e.length<1&&t?\" \":e};n=n.replace(/\\r\\n/g,\" \").replace(/\\n/g,\" \"),n=n.replace(/\\s\\s+/g,r.bind(r,!0)),(null==t.previousSibling&&f(t.parentNode)||null!=t.previousSibling&&f(t.previousSibling))&&(n=n.replace(/^\\s+/,r.bind(r,!1))),(null==t.nextSibling&&f(t.parentNode)||null!=t.nextSibling&&f(t.nextSibling))&&(n=n.replace(/\\s+$/,r.bind(r,!1)))}return e.insert(n)}Object.defineProperty(e,\"__esModule\",{value:!0}),e.matchText=e.matchSpacing=e.matchNewline=e.matchBlot=e.matchAttributor=e.default=void 0;var x=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},E=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),k=function(){function t(t,e){for(var n=0;n\\r?\\n +\\<\"),this.convert();var e=this.quill.getFormat(this.quill.selection.savedRange.index);if(e[F.default.blotName]){var n=this.container.innerText;return this.container.innerHTML=\"\",(new T.default).insert(n,o({},F.default.blotName,e[F.default.blotName]))}var r=this.prepareMatching(),i=E(r,2),l=i[0],a=i[1],s=h(this.container,l,a);return c(s,\"\\n\")&&null==s.ops[s.ops.length-1].attributes&&(s=s.compose((new T.default).retain(s.length()-1).delete(1))),V.log(\"convert\",this.container.innerHTML,s),this.container.innerHTML=\"\",s}},{key:\"dangerouslyPasteHTML\",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:C.default.sources.API;if(\"string\"==typeof t)this.quill.setContents(this.convert(t),e),this.quill.setSelection(0,C.default.sources.SILENT);else{var r=this.convert(e);this.quill.updateContents((new T.default).retain(t).concat(r),n),this.quill.setSelection(t+r.length(),C.default.sources.SILENT)}}},{key:\"onPaste\",value:function(t){var e=this;if(!t.defaultPrevented&&this.quill.isEnabled()){var n=this.quill.getSelection(),r=(new T.default).retain(n.index),o=this.quill.scrollingContainer.scrollTop;this.container.focus(),this.quill.selection.update(C.default.sources.SILENT),setTimeout(function(){r=r.concat(e.convert()).delete(n.length),e.quill.updateContents(r,C.default.sources.USER),e.quill.setSelection(r.length()-n.length,C.default.sources.SILENT),e.quill.scrollingContainer.scrollTop=o,e.quill.focus()},1)}}},{key:\"prepareMatching\",value:function(){var t=this,e=[],n=[];return this.matchers.forEach(function(r){var o=E(r,2),i=o[0],l=o[1];switch(i){case Node.TEXT_NODE:n.push(l);break;case Node.ELEMENT_NODE:e.push(l);break;default:[].forEach.call(t.container.querySelectorAll(i),function(t){t[W]=t[W]||[],t[W].push(l)})}}),[e,n]}}]),e}(B.default);$.DEFAULTS={matchers:[],matchVisual:!0},e.default=$,e.matchAttributor=d,e.matchBlot=y,e.matchNewline=m,e.matchSpacing=_,e.matchText=w},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var l=function(){function t(t,e){for(var n=0;n '},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var l=function(){function t(t,e){for(var n=0;nr.right&&(i=r.right-o.right,this.root.style.left=e+i+\"px\"),o.leftr.bottom){var l=o.bottom-o.top,a=t.bottom-t.top+l;this.root.style.top=n-a+\"px\",this.root.classList.add(\"ql-flip\")}return i}},{key:\"show\",value:function(){this.root.classList.remove(\"ql-editing\"),this.root.classList.remove(\"ql-hidden\")}}]),t}();e.default=i},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function i(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function l(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var a=function(){function t(t,e){var n=[],r=!0,o=!1,i=void 0;try{for(var l,a=t[Symbol.iterator]();!(r=(l=a.next()).done)&&(n.push(l.value),!e||n.length!==e);r=!0);}catch(t){o=!0,i=t}finally{try{!r&&a.return&&a.return()}finally{if(o)throw i}}return n}return function(e,n){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,n);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),s=function t(e,n,r){null===e&&(e=Function.prototype);var o=Object.getOwnPropertyDescriptor(e,n);if(void 0===o){var i=Object.getPrototypeOf(e);return null===i?void 0:t(i,n,r)}if(\"value\"in o)return o.value;var l=o.get;if(void 0!==l)return l.call(r)},u=function(){function t(t,e){for(var n=0;n','','',''].join(\"\"),e.default=w},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,\"__esModule\",{value:!0});var o=n(29),i=r(o),l=n(36),a=n(38),s=n(64),u=n(65),c=r(u),f=n(66),h=r(f),p=n(67),d=r(p),y=n(37),v=n(26),b=n(39),g=n(40),m=n(56),_=r(m),O=n(68),w=r(O),x=n(27),E=r(x),k=n(69),A=r(k),j=n(70),N=r(j),T=n(71),S=r(T),P=n(72),q=r(P),C=n(73),L=r(C),R=n(13),M=r(R),B=n(74),I=r(B),D=n(75),U=r(D),F=n(57),z=r(F),H=n(41),K=r(H),Y=n(28),V=r(Y),W=n(59),Z=r(W),G=n(60),X=r(G),$=n(61),Q=r($),J=n(108),tt=r(J),et=n(62),nt=r(et);i.default.register({\"attributors/attribute/direction\":a.DirectionAttribute,\"attributors/class/align\":l.AlignClass,\"attributors/class/background\":y.BackgroundClass,\"attributors/class/color\":v.ColorClass,\"attributors/class/direction\":a.DirectionClass,\"attributors/class/font\":b.FontClass,\"attributors/class/size\":g.SizeClass,\"attributors/style/align\":l.AlignStyle,\"attributors/style/background\":y.BackgroundStyle,\"attributors/style/color\":v.ColorStyle,\"attributors/style/direction\":a.DirectionStyle,\"attributors/style/font\":b.FontStyle,\"attributors/style/size\":g.SizeStyle},!0),i.default.register({\"formats/align\":l.AlignClass,\"formats/direction\":a.DirectionClass,\"formats/indent\":s.IndentClass,\"formats/background\":y.BackgroundStyle,\"formats/color\":v.ColorStyle,\"formats/font\":b.FontClass,\"formats/size\":g.SizeClass,\"formats/blockquote\":c.default,\"formats/code-block\":M.default,\"formats/header\":h.default,\"formats/list\":d.default,\"formats/bold\":_.default,\"formats/code\":R.Code,\"formats/italic\":w.default,\"formats/link\":E.default,\"formats/script\":A.default,\"formats/strike\":N.default,\"formats/underline\":S.default,\"formats/image\":q.default,\"formats/video\":L.default,\"formats/list/item\":p.ListItem,\"modules/formula\":I.default,\"modules/syntax\":U.default,\"modules/toolbar\":z.default,\"themes/bubble\":tt.default,\"themes/snow\":nt.default,\"ui/icons\":K.default,\"ui/picker\":V.default,\"ui/icon-picker\":X.default,\"ui/color-picker\":Z.default,\"ui/tooltip\":Q.default},!0),e.default=i.default},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0}),e.IndentClass=void 0;var l=function(){function t(t,e){for(var n=0;n0&&this.children.tail.format(t,e)}},{key:\"formats\",value:function(){return o({},this.statics.blotName,this.statics.formats(this.domNode))}},{key:\"insertBefore\",value:function(t,n){if(t instanceof v)u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"insertBefore\",this).call(this,t,n);else{var r=null==n?this.length():n.offset(this),o=this.split(r);o.parent.insertBefore(t,o)}}},{key:\"optimize\",value:function(t){u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"optimize\",this).call(this,t);var n=this.next;null!=n&&n.prev===this&&n.statics.blotName===this.statics.blotName&&n.domNode.tagName===this.domNode.tagName&&n.domNode.getAttribute(\"data-checked\")===this.domNode.getAttribute(\"data-checked\")&&(n.moveChildren(this),n.remove())}},{key:\"replace\",value:function(t){if(t.statics.blotName!==this.statics.blotName){var n=f.default.create(this.statics.defaultChild);t.moveChildren(n),this.appendChild(n)}u(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"replace\",this).call(this,t)}}]),e}(y.default);b.blotName=\"list\",b.scope=f.default.Scope.BLOCK_BLOT,b.tagName=[\"OL\",\"UL\"],b.defaultChild=\"list-item\",b.allowedChildren=[v],e.ListItem=v,e.default=b},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var l=n(56),a=function(t){return t&&t.__esModule?t:{default:t}}(l),s=function(t){function e(){return r(this,e),o(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return i(e,t),e}(a.default);s.blotName=\"italic\",s.tagName=[\"EM\",\"I\"],e.default=s},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var l=function(){function t(t,e){for(var n=0;n-1?n?this.domNode.setAttribute(t,n):this.domNode.removeAttribute(t):a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"format\",this).call(this,t,n)}}],[{key:\"create\",value:function(t){var n=a(e.__proto__||Object.getPrototypeOf(e),\"create\",this).call(this,t);return\"string\"==typeof t&&n.setAttribute(\"src\",this.sanitize(t)),n}},{key:\"formats\",value:function(t){return f.reduce(function(e,n){return t.hasAttribute(n)&&(e[n]=t.getAttribute(n)),e},{})}},{key:\"match\",value:function(t){return/\\.(jpe?g|gif|png)$/.test(t)||/^data:image\\/.+;base64/.test(t)}},{key:\"sanitize\",value:function(t){return(0,c.sanitize)(t,[\"http\",\"https\",\"data\"])?t:\"//:0\"}},{key:\"value\",value:function(t){return t.getAttribute(\"src\")}}]),e}(u.default.Embed);h.blotName=\"image\",h.tagName=\"IMG\",e.default=h},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0});var l=function(){function t(t,e){for(var n=0;n-1?n?this.domNode.setAttribute(t,n):this.domNode.removeAttribute(t):a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"format\",this).call(this,t,n)}}],[{key:\"create\",value:function(t){var n=a(e.__proto__||Object.getPrototypeOf(e),\"create\",this).call(this,t);return n.setAttribute(\"frameborder\",\"0\"),n.setAttribute(\"allowfullscreen\",!0),n.setAttribute(\"src\",this.sanitize(t)),n}},{key:\"formats\",value:function(t){return f.reduce(function(e,n){return t.hasAttribute(n)&&(e[n]=t.getAttribute(n)),e},{})}},{key:\"sanitize\",value:function(t){return c.default.sanitize(t)}},{key:\"value\",value:function(t){return t.getAttribute(\"src\")}}]),e}(s.BlockEmbed);h.blotName=\"video\",h.className=\"ql-video\",h.tagName=\"IFRAME\",e.default=h},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function i(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function l(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0}),e.default=e.FormulaBlot=void 0;var a=function(){function t(t,e){for(var n=0;n0||null==this.cachedText)&&(this.domNode.innerHTML=t(e),this.domNode.normalize(),this.attach()),this.cachedText=e)}}]),e}(v.default);b.className=\"ql-syntax\";var g=new c.default.Attributor.Class(\"token\",\"hljs\",{scope:c.default.Scope.INLINE}),m=function(t){function e(t,n){o(this,e);var r=i(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t,n));if(\"function\"!=typeof r.options.highlight)throw new Error(\"Syntax module requires highlight.js. Please include the library on the page before Quill.\");var l=null;return r.quill.on(h.default.events.SCROLL_OPTIMIZE,function(){clearTimeout(l),l=setTimeout(function(){r.highlight(),l=null},r.options.interval)}),r.highlight(),r}return l(e,t),a(e,null,[{key:\"register\",value:function(){h.default.register(g,!0),h.default.register(b,!0)}}]),a(e,[{key:\"highlight\",value:function(){var t=this;if(!this.quill.selection.composing){this.quill.update(h.default.sources.USER);var e=this.quill.getSelection();this.quill.scroll.descendants(b).forEach(function(e){e.highlight(t.options.highlight)}),this.quill.update(h.default.sources.SILENT),null!=e&&this.quill.setSelection(e,h.default.sources.SILENT)}}}]),e}(d.default);m.DEFAULTS={highlight:function(){return null==window.hljs?null:function(t){return window.hljs.highlightAuto(t).value}}(),interval:1e3},e.CodeBlock=b,e.CodeToken=g,e.default=m},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e){t.exports=' '},function(t,e,n){\"use strict\";function r(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function i(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function l(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,\"__esModule\",{value:!0}),e.default=e.BubbleTooltip=void 0;var a=function t(e,n,r){null===e&&(e=Function.prototype);var o=Object.getOwnPropertyDescriptor(e,n);if(void 0===o){var i=Object.getPrototypeOf(e);return null===i?void 0:t(i,n,r)}if(\"value\"in o)return o.value;var l=o.get;if(void 0!==l)return l.call(r)},s=function(){function t(t,e){for(var n=0;n0&&o===h.default.sources.USER){r.show(),r.root.style.left=\"0px\",r.root.style.width=\"\",r.root.style.width=r.root.offsetWidth+\"px\";var i=r.quill.getLines(e.index,e.length);if(1===i.length)r.position(r.quill.getBounds(e));else{var l=i[i.length-1],a=r.quill.getIndex(l),s=Math.min(l.length()-1,e.index+e.length-a),u=r.quill.getBounds(new y.Range(a,s));r.position(u)}}else document.activeElement!==r.textbox&&r.quill.hasFocus()&&r.hide()}),r}return l(e,t),s(e,[{key:\"listen\",value:function(){var t=this;a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"listen\",this).call(this),this.root.querySelector(\".ql-close\").addEventListener(\"click\",function(){t.root.classList.remove(\"ql-editing\")}),this.quill.on(h.default.events.SCROLL_OPTIMIZE,function(){setTimeout(function(){if(!t.root.classList.contains(\"ql-hidden\")){var e=t.quill.getSelection();null!=e&&t.position(t.quill.getBounds(e))}},1)})}},{key:\"cancel\",value:function(){this.show()}},{key:\"position\",value:function(t){var n=a(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"position\",this).call(this,t),r=this.root.querySelector(\".ql-tooltip-arrow\");if(r.style.marginLeft=\"\",0===n)return n;r.style.marginLeft=-1*n-r.offsetWidth/2+\"px\"}}]),e}(p.BaseTooltip);_.TEMPLATE=['','
    ','','',\"
    \"].join(\"\"),e.BubbleTooltip=_,e.default=m},function(t,e,n){t.exports=n(63)}]).default})}).call(e,n(43).Buffer)},function(t,e,n){var r=n(11),o=n(1),i=r(o,\"Map\");t.exports=i},function(t,e,n){var r=n(1),o=r.Symbol;t.exports=o},function(t,e){function n(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}t.exports=n},function(t,e,n){function r(t,e,n){(void 0===n||i(t[e],n))&&(void 0!==n||e in t)||o(t,e,n)}var o=n(10),i=n(8);t.exports=r},function(t,e,n){function r(t,e,n,f,h){t!==e&&l(e,function(l,u){if(s(l))h||(h=new o),a(t,e,u,n,r,f,h);else{var p=f?f(c(t,u),l,u+\"\",t,e,h):void 0;void 0===p&&(p=l),i(t,u,p)}},u)}var o=n(48),i=n(19),l=n(53),a=n(58),s=n(0),u=n(34),c=n(27);t.exports=r},function(t,e,n){function r(t,e){return l(i(t,e,o),t+\"\")}var o=n(28),i=n(96),l=n(97);t.exports=r},function(t,e,n){var r=n(11),o=function(){try{var t=r(Object,\"defineProperty\");return t({},\"\",{}),t}catch(t){}}();t.exports=o},function(t,e,n){(function(e){var n=\"object\"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(e,n(35))},function(t,e,n){var r=n(95),o=r(Object.getPrototypeOf,Object);t.exports=o},function(t,e){function n(t,e){var n=typeof t;return!!(e=null==e?r:e)&&(\"number\"==n||\"symbol\"!=n&&o.test(t))&&t>-1&&t%1==0&&t-1&&t%1==0&&t<=r}var r=9007199254740991;t.exports=n},function(t,e,n){var r=n(56),o=n(61),i=n(93),l=i&&i.isTypedArray,a=l?o(l):r;t.exports=a},function(t,e,n){function r(t){return l(t)?o(t,!0):i(t)}var o=n(50),i=n(57),l=n(12);t.exports=r},function(t,e){var n;n=function(){return this}();try{n=n||Function(\"return this\")()||(0,eval)(\"this\")}catch(t){\"object\"==typeof window&&(n=window)}t.exports=n},function(t,e,n){\"use strict\";e.a={modules:[\"DisplaySize\",\"Toolbar\",\"Resize\"],overlayStyles:{position:\"absolute\",boxSizing:\"border-box\",border:\"1px dashed #444\"},handleStyles:{position:\"absolute\",height:\"12px\",width:\"12px\",backgroundColor:\"white\",border:\"1px solid #777\",boxSizing:\"border-box\",opacity:\"0.80\"},displayStyles:{position:\"absolute\",font:\"12px/1.0 Arial, Helvetica, sans-serif\",padding:\"4px 8px\",textAlign:\"center\",backgroundColor:\"white\",color:\"#333\",border:\"1px solid #777\",boxSizing:\"border-box\",opacity:\"0.80\",cursor:\"default\"},toolbarStyles:{position:\"absolute\",top:\"-12px\",right:\"0\",left:\"0\",height:\"0\",minWidth:\"100px\",font:\"12px/1.0 Arial, Helvetica, sans-serif\",textAlign:\"center\",color:\"#333\",boxSizing:\"border-box\",cursor:\"default\"},toolbarButtonStyles:{display:\"inline-block\",width:\"24px\",height:\"24px\",background:\"white\",border:\"1px solid #999\",verticalAlign:\"middle\"},toolbarButtonSvgStyles:{fill:\"#444\",stroke:\"#444\",strokeWidth:\"2\"}}},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}n.d(e,\"a\",function(){return a});var l=n(9),a=function(t){function e(){var t,n,i,l;r(this,e);for(var a=arguments.length,s=Array(a),u=0;u120&&t[1]>30)Object.assign(i.display.style,{right:\"4px\",bottom:\"4px\",left:\"auto\"});else if(\"right\"==i.img.style.float){var e=i.display.getBoundingClientRect();Object.assign(i.display.style,{right:\"auto\",bottom:\"-\"+(e.height+4)+\"px\",left:\"-\"+(e.width+4)+\"px\"})}else{var n=i.display.getBoundingClientRect();Object.assign(i.display.style,{right:\"-\"+(n.width+4)+\"px\",bottom:\"-\"+(n.height+4)+\"px\",left:\"auto\"})}}},i.getCurrentSize=function(){return[i.img.width,Math.round(i.img.width/i.img.naturalWidth*i.img.naturalHeight)]},l=n,o(i,l)}return i(e,t),e}(l.a)},function(t,e,n){\"use strict\";function r(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}function o(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function i(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}n.d(e,\"a\",function(){return a});var l=n(9),a=function(t){function e(){var t,n,i,l;r(this,e);for(var a=arguments.length,s=Array(a),u=0;u0&&(r.style.borderLeftWidth=\"0\"),Object.assign(r.children[0].style,i.options.toolbarButtonSvgStyles),e.isApplied()&&i._selectButton(r),i.toolbar.appendChild(r)})},i._selectButton=function(t){t.style.filter=\"invert(20%)\"},l=n,o(i,l)}return i(e,t),e}(d.a)},function(t,e,n){var r=n(18),o=n(21),i=n(70),l=n(108),a=o(function(t){return t.push(void 0,i),r(l,void 0,t)});t.exports=a},function(t,e,n){\"use strict\";function r(t,e){if(!t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!e||\"object\"!=typeof e&&\"function\"!=typeof e?t:e}function o(t,e){if(\"function\"!=typeof e&&null!==e)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function i(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}Object.defineProperty(e,\"__esModule\",{value:!0});var l=n(15),a=n.n(l),s=n(40),u=n.n(s),c=n(36),f=n(37),h=n(39),p=n(38),d=function(){function t(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{};i(this,t),this.initializeModules=function(){n.removeModules(),n.modules=n.moduleClasses.map(function(t){return new(v[t]||t)(n)}),n.modules.forEach(function(t){t.onCreate()}),n.onUpdate()},this.onUpdate=function(){n.repositionElements(),n.modules.forEach(function(t){t.onUpdate()})},this.removeModules=function(){n.modules.forEach(function(t){t.onDestroy()}),n.modules=[]},this.handleClick=function(t){if(t.target&&t.target.tagName&&\"IMG\"===t.target.tagName.toUpperCase()){if(n.img===t.target)return;n.img&&n.hide(),n.show(t.target),t.preventDefault()}else n.img&&n.hide()},this.handleScroll=function(t){n.hide()},this.show=function(t){n.img=t,n.showOverlay(),n.initializeModules()},this.showOverlay=function(){n.overlay&&n.hideOverlay(),n.quill.setSelection(null),n.setUserSelect(\"none\"),document.addEventListener(\"keyup\",n.checkImage,!0),n.quill.root.addEventListener(\"input\",n.checkImage,!0),n.overlay=document.createElement(\"div\"),Object.assign(n.overlay.style,n.options.overlayStyles),n.quill.root.parentNode.appendChild(n.overlay),n.repositionElements()},this.hideOverlay=function(){n.overlay&&(n.quill.root.parentNode.removeChild(n.overlay),n.overlay=void 0,document.removeEventListener(\"keyup\",n.checkImage),n.quill.root.removeEventListener(\"input\",n.checkImage),n.setUserSelect(\"\"))},this.repositionElements=function(){if(n.overlay&&n.img){var t=n.quill.root.parentNode,e=n.img.getBoundingClientRect(),r=t.getBoundingClientRect();Object.assign(n.overlay.style,{left:e.left-r.left-1+t.scrollLeft+\"px\",top:e.top-r.top+t.scrollTop+\"px\",width:e.width+\"px\",height:e.height+\"px\"})}},this.hide=function(){n.hideOverlay(),n.removeModules(),n.img=void 0},this.setUserSelect=function(t){[\"userSelect\",\"mozUserSelect\",\"webkitUserSelect\",\"msUserSelect\"].forEach(function(e){n.quill.root.style[e]=t,document.documentElement.style[e]=t})},this.checkImage=function(t){n.img&&(46!=t.keyCode&&8!=t.keyCode||(window.Quill||a.a).find(n.img).deleteAt(0),n.hide())},this.quill=e;var o=!1;r.modules&&(o=r.modules.slice()),this.options=u()({},r,c.a),!1!==o&&(this.options.modules=o),document.execCommand(\"enableObjectResizing\",!1,\"false\"),this.quill.root.addEventListener(\"click\",this.handleClick,!1),this.quill.root.addEventListener(\"mscontrolselect\",this.handleClick,!1),this.quill.root.addEventListener(\"scroll\",this.handleScroll,!1),this.quill.root.parentNode.style.position=this.quill.root.parentNode.style.position||\"relative\",this.moduleClasses=this.options.modules,this.modules=[]};if(e.default=b,window.Quill){var g=[\"alt\",\"height\",\"width\",\"style\"],m=window.Quill.import(\"formats/image\"),_=function(t){function e(){return i(this,e),r(this,(e.__proto__||Object.getPrototypeOf(e)).apply(this,arguments))}return o(e,t),d(e,[{key:\"format\",value:function(t,n){g.indexOf(t)>-1?n?this.domNode.setAttribute(t,n):this.domNode.removeAttribute(t):y(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),\"format\",this).call(this,t,n)}}],[{key:\"formats\",value:function(t){return g.reduce(function(e,n){return t.hasAttribute(n)&&(e[n]=t.getAttribute(n)),e},{})}}]),e}(m);window.Quill.register(_,!0),\"function\"!=typeof Object.assign&&(Object.assign=function(t){if(null==t)throw new TypeError(\"Cannot convert undefined or null to object\");t=Object(t);for(var e=1;e0)throw new Error(\"Invalid string. Length must be a multiple of 4\");var n=t.indexOf(\"=\");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function o(t){var e=r(t),n=e[0],o=e[1];return 3*(n+o)/4-o}function i(t,e,n){return 3*(e+n)/4-n}function l(t){for(var e,n=r(t),o=n[0],l=n[1],a=new h(i(t,o,l)),s=0,u=l>0?o-4:o,c=0;c>16&255,a[s++]=e>>8&255,a[s++]=255&e;return 2===l&&(e=f[t.charCodeAt(c)]<<2|f[t.charCodeAt(c+1)]>>4,a[s++]=255&e),1===l&&(e=f[t.charCodeAt(c)]<<10|f[t.charCodeAt(c+1)]<<4|f[t.charCodeAt(c+2)]>>2,a[s++]=e>>8&255,a[s++]=255&e),a}function a(t){return c[t>>18&63]+c[t>>12&63]+c[t>>6&63]+c[63&t]}function s(t,e,n){for(var r,o=[],i=e;il?l:i+16383));return 1===r?(e=t[n-1],o.push(c[e>>2]+c[e<<4&63]+\"==\")):2===r&&(e=(t[n-2]<<8)+t[n-1],o.push(c[e>>10]+c[e>>4&63]+c[e<<2&63]+\"=\")),o.join(\"\")}e.byteLength=o,e.toByteArray=l,e.fromByteArray=u;for(var c=[],f=[],h=\"undefined\"!=typeof Uint8Array?Uint8Array:Array,p=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",d=0,y=p.length;d=r())throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+r().toString(16)+\" bytes\");return 0|t}function y(t){return+t!=t&&(t=0),i.alloc(+t)}function v(t,e){if(i.isBuffer(t))return t.length;if(\"undefined\"!=typeof ArrayBuffer&&\"function\"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;\"string\"!=typeof t&&(t=\"\"+t);var n=t.length;if(0===n)return 0;for(var r=!1;;)switch(e){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":case void 0:return K(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*n;case\"hex\":return n>>>1;case\"base64\":return W(t).length;default:if(r)return K(t).length;e=(\"\"+e).toLowerCase(),r=!0}}function b(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return\"\";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return\"\";if(n>>>=0,e>>>=0,n<=e)return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return q(this,e,n);case\"utf8\":case\"utf-8\":return N(this,e,n);case\"ascii\":return S(this,e,n);case\"latin1\":case\"binary\":return P(this,e,n);case\"base64\":return j(this,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return C(this,e,n);default:if(r)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),r=!0}}function g(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function m(t,e,n,r,o){if(0===t.length)return-1;if(\"string\"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(o)return-1;n=t.length-1}else if(n<0){if(!o)return-1;n=0}if(\"string\"==typeof e&&(e=i.from(e,r)),i.isBuffer(e))return 0===e.length?-1:_(t,e,n,r,o);if(\"number\"==typeof e)return e&=255,i.TYPED_ARRAY_SUPPORT&&\"function\"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):_(t,[e],n,r,o);throw new TypeError(\"val must be string, number or Buffer\")}function _(t,e,n,r,o){function i(t,e){return 1===l?t[e]:t.readUInt16BE(e*l)}var l=1,a=t.length,s=e.length;if(void 0!==r&&(\"ucs2\"===(r=String(r).toLowerCase())||\"ucs-2\"===r||\"utf16le\"===r||\"utf-16le\"===r)){if(t.length<2||e.length<2)return-1;l=2,a/=2,s/=2,n/=2}var u;if(o){var c=-1;for(u=n;ua&&(n=a-s),u=n;u>=0;u--){for(var f=!0,h=0;ho&&(r=o):r=o;var i=e.length;if(i%2!=0)throw new TypeError(\"Invalid hex string\");r>i/2&&(r=i/2);for(var l=0;l239?4:i>223?3:i>191?2:1;if(o+a<=n){var s,u,c,f;switch(a){case 1:i<128&&(l=i);break;case 2:s=t[o+1],128==(192&s)&&(f=(31&i)<<6|63&s)>127&&(l=f);break;case 3:s=t[o+1],u=t[o+2],128==(192&s)&&128==(192&u)&&(f=(15&i)<<12|(63&s)<<6|63&u)>2047&&(f<55296||f>57343)&&(l=f);break;case 4:s=t[o+1],u=t[o+2],c=t[o+3],128==(192&s)&&128==(192&u)&&128==(192&c)&&(f=(15&i)<<18|(63&s)<<12|(63&u)<<6|63&c)>65535&&f<1114112&&(l=f)}}null===l?(l=65533,a=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),o+=a}return T(r)}function T(t){var e=t.length;if(e<=J)return String.fromCharCode.apply(String,t);for(var n=\"\",r=0;rr)&&(n=r);for(var o=\"\",i=e;in)throw new RangeError(\"Trying to access beyond buffer length\")}function R(t,e,n,r,o,l){if(!i.isBuffer(t))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(e>o||et.length)throw new RangeError(\"Index out of range\")}function M(t,e,n,r){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-n,2);o>>8*(r?o:1-o)}function B(t,e,n,r){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-n,4);o>>8*(r?o:3-o)&255}function I(t,e,n,r,o,i){if(n+r>t.length)throw new RangeError(\"Index out of range\");if(n<0)throw new RangeError(\"Index out of range\")}function D(t,e,n,r,o){return o||I(t,e,n,4,3.4028234663852886e38,-3.4028234663852886e38),$.write(t,e,n,r,23,4),n+4}function U(t,e,n,r,o){return o||I(t,e,n,8,1.7976931348623157e308,-1.7976931348623157e308),$.write(t,e,n,r,52,8),n+8}function F(t){if(t=z(t).replace(tt,\"\"),t.length<2)return\"\";for(;t.length%4!=0;)t+=\"=\";return t}function z(t){return t.trim?t.trim():t.replace(/^\\s+|\\s+$/g,\"\")}function H(t){return t<16?\"0\"+t.toString(16):t.toString(16)}function K(t,e){e=e||1/0;for(var n,r=t.length,o=null,i=[],l=0;l55295&&n<57344){if(!o){if(n>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(l+1===r){(e-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(e-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((e-=1)<0)break;i.push(n)}else if(n<2048){if((e-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error(\"Invalid code point\");if((e-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function Y(t){for(var e=[],n=0;n>8,o=n%256,i.push(o),i.push(r);return i}function W(t){return X.toByteArray(F(t))}function Z(t,e,n,r){for(var o=0;o=e.length||o>=t.length);++o)e[o+n]=t[o];return o}function G(t){return t!==t}/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\nvar X=n(42),$=n(44),Q=n(45);e.Buffer=i,e.SlowBuffer=y,e.INSPECT_MAX_BYTES=50,i.TYPED_ARRAY_SUPPORT=void 0!==t.TYPED_ARRAY_SUPPORT?t.TYPED_ARRAY_SUPPORT:function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&\"function\"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(t){return!1}}(),e.kMaxLength=r(),i.poolSize=8192,i._augment=function(t){return t.__proto__=i.prototype,t},i.from=function(t,e,n){return l(null,t,e,n)},i.TYPED_ARRAY_SUPPORT&&(i.prototype.__proto__=Uint8Array.prototype,i.__proto__=Uint8Array,\"undefined\"!=typeof Symbol&&Symbol.species&&i[Symbol.species]===i&&Object.defineProperty(i,Symbol.species,{value:null,configurable:!0})),i.alloc=function(t,e,n){return s(null,t,e,n)},i.allocUnsafe=function(t){return u(null,t)},i.allocUnsafeSlow=function(t){return u(null,t)},i.isBuffer=function(t){return!(null==t||!t._isBuffer)},i.compare=function(t,e){if(!i.isBuffer(t)||!i.isBuffer(e))throw new TypeError(\"Arguments must be Buffers\");if(t===e)return 0;for(var n=t.length,r=e.length,o=0,l=Math.min(n,r);o0&&(t=this.toString(\"hex\",0,n).match(/.{2}/g).join(\" \"),this.length>n&&(t+=\" ... \")),\"\"},i.prototype.compare=function(t,e,n,r,o){if(!i.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),e<0||n>t.length||r<0||o>this.length)throw new RangeError(\"out of range index\");if(r>=o&&e>=n)return 0;if(r>=o)return-1;if(e>=n)return 1;if(e>>>=0,n>>>=0,r>>>=0,o>>>=0,this===t)return 0;for(var l=o-r,a=n-e,s=Math.min(l,a),u=this.slice(r,o),c=t.slice(e,n),f=0;fo)&&(n=o),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");r||(r=\"utf8\");for(var i=!1;;)switch(r){case\"hex\":return O(this,t,e,n);case\"utf8\":case\"utf-8\":return w(this,t,e,n);case\"ascii\":return x(this,t,e,n);case\"latin1\":case\"binary\":return E(this,t,e,n);case\"base64\":return k(this,t,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return A(this,t,e,n);default:if(i)throw new TypeError(\"Unknown encoding: \"+r);r=(\"\"+r).toLowerCase(),i=!0}},i.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};var J=4096;i.prototype.slice=function(t,e){var n=this.length;t=~~t,e=void 0===e?n:~~e,t<0?(t+=n)<0&&(t=0):t>n&&(t=n),e<0?(e+=n)<0&&(e=0):e>n&&(e=n),e0&&(o*=256);)r+=this[t+--e]*o;return r},i.prototype.readUInt8=function(t,e){return e||L(t,1,this.length),this[t]},i.prototype.readUInt16LE=function(t,e){return e||L(t,2,this.length),this[t]|this[t+1]<<8},i.prototype.readUInt16BE=function(t,e){return e||L(t,2,this.length),this[t]<<8|this[t+1]},i.prototype.readUInt32LE=function(t,e){return e||L(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},i.prototype.readUInt32BE=function(t,e){return e||L(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},i.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||L(t,e,this.length);for(var r=this[t],o=1,i=0;++i=o&&(r-=Math.pow(2,8*e)),r},i.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||L(t,e,this.length);for(var r=e,o=1,i=this[t+--r];r>0&&(o*=256);)i+=this[t+--r]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},i.prototype.readInt8=function(t,e){return e||L(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},i.prototype.readInt16LE=function(t,e){e||L(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},i.prototype.readInt16BE=function(t,e){e||L(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},i.prototype.readInt32LE=function(t,e){return e||L(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},i.prototype.readInt32BE=function(t,e){return e||L(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},i.prototype.readFloatLE=function(t,e){return e||L(t,4,this.length),$.read(this,t,!0,23,4)},i.prototype.readFloatBE=function(t,e){return e||L(t,4,this.length),$.read(this,t,!1,23,4)},i.prototype.readDoubleLE=function(t,e){return e||L(t,8,this.length),$.read(this,t,!0,52,8)},i.prototype.readDoubleBE=function(t,e){return e||L(t,8,this.length),$.read(this,t,!1,52,8)},i.prototype.writeUIntLE=function(t,e,n,r){if(t=+t,e|=0,n|=0,!r){R(this,t,e,n,Math.pow(2,8*n)-1,0)}var o=1,i=0;for(this[e]=255&t;++i=0&&(i*=256);)this[e+o]=t/i&255;return e+n},i.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,1,255,0),i.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},i.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,65535,0),i.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):M(this,t,e,!0),e+2},i.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,65535,0),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):M(this,t,e,!1),e+2},i.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,4294967295,0),i.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):B(this,t,e,!0),e+4},i.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,4294967295,0),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):B(this,t,e,!1),e+4},i.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e|=0,!r){var o=Math.pow(2,8*n-1);R(this,t,e,n,o-1,-o)}var i=0,l=1,a=0;for(this[e]=255&t;++i>0)-a&255;return e+n},i.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e|=0,!r){var o=Math.pow(2,8*n-1);R(this,t,e,n,o-1,-o)}var i=n-1,l=1,a=0;for(this[e+i]=255&t;--i>=0&&(l*=256);)t<0&&0===a&&0!==this[e+i+1]&&(a=1),this[e+i]=(t/l>>0)-a&255;return e+n},i.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,1,127,-128),i.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},i.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,32767,-32768),i.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):M(this,t,e,!0),e+2},i.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,32767,-32768),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):M(this,t,e,!1),e+2},i.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,2147483647,-2147483648),i.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):B(this,t,e,!0),e+4},i.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),i.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):B(this,t,e,!1),e+4},i.prototype.writeFloatLE=function(t,e,n){return D(this,t,e,!0,n)},i.prototype.writeFloatBE=function(t,e,n){return D(this,t,e,!1,n)},i.prototype.writeDoubleLE=function(t,e,n){return U(this,t,e,!0,n)},i.prototype.writeDoubleBE=function(t,e,n){return U(this,t,e,!1,n)},i.prototype.copy=function(t,e,n,r){if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError(\"sourceStart out of bounds\");if(r<0)throw new RangeError(\"sourceEnd out of bounds\");r>this.length&&(r=this.length),t.length-e=0;--o)t[o+e]=this[o+n];else if(l<1e3||!i.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,t||(t=0);var l;if(\"number\"==typeof t)for(l=e;l>1,c=-7,f=n?o-1:0,h=n?-1:1,p=t[e+f];for(f+=h,i=p&(1<<-c)-1,p>>=-c,c+=a;c>0;i=256*i+t[e+f],f+=h,c-=8);for(l=i&(1<<-c)-1,i>>=-c,c+=r;c>0;l=256*l+t[e+f],f+=h,c-=8);if(0===i)i=1-u;else{if(i===s)return l?NaN:1/0*(p?-1:1);l+=Math.pow(2,r),i-=u}return(p?-1:1)*l*Math.pow(2,i-r)},e.write=function(t,e,n,r,o,i){var l,a,s,u=8*i-o-1,c=(1<>1,h=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:i-1,d=r?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,l=c):(l=Math.floor(Math.log(e)/Math.LN2),e*(s=Math.pow(2,-l))<1&&(l--,s*=2),e+=l+f>=1?h/s:h*Math.pow(2,1-f),e*s>=2&&(l++,s/=2),l+f>=c?(a=0,l=c):l+f>=1?(a=(e*s-1)*Math.pow(2,o),l+=f):(a=e*Math.pow(2,f-1)*Math.pow(2,o),l=0));o>=8;t[n+p]=255&a,p+=d,a/=256,o-=8);for(l=l<0;t[n+p]=255&l,p+=d,l/=256,u-=8);t[n+p-d]|=128*y}},function(t,e){var n={}.toString;t.exports=Array.isArray||function(t){return\"[object Array]\"==n.call(t)}},function(t,e,n){function r(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e1?n[o-1]:void 0,a=o>2?n[2]:void 0;for(l=t.length>3&&\"function\"==typeof l?(o--,l):void 0,a&&i(n[0],n[1],a)&&(l=o<3?void 0:l,o=1),e=Object(e);++r-1}var o=n(4);t.exports=r},function(t,e,n){function r(t,e){var n=this.__data__,r=o(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this}var o=n(4);t.exports=r},function(t,e,n){function r(){this.size=0,this.__data__={hash:new o,map:new(l||i),string:new o}}var o=n(46),i=n(3),l=n(16);t.exports=r},function(t,e,n){function r(t){var e=o(this,t).delete(t);return this.size-=e?1:0,e}var o=n(6);t.exports=r},function(t,e,n){function r(t){return o(this,t).get(t)}var o=n(6);t.exports=r},function(t,e,n){function r(t){return o(this,t).has(t)}var o=n(6);t.exports=r},function(t,e,n){function r(t,e){var n=o(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this}var o=n(6);t.exports=r},function(t,e){function n(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}t.exports=n},function(t,e,n){(function(t){var r=n(23),o=\"object\"==typeof e&&e&&!e.nodeType&&e,i=o&&\"object\"==typeof t&&t&&!t.nodeType&&t,l=i&&i.exports===o,a=l&&r.process,s=function(){try{var t=i&&i.require&&i.require(\"util\").types;return t||a&&a.binding&&a.binding(\"util\")}catch(t){}}();t.exports=s}).call(e,n(14)(t))},function(t,e){function n(t){return o.call(t)}var r=Object.prototype,o=r.toString;t.exports=n},function(t,e){function n(t,e){return function(n){return t(e(n))}}t.exports=n},function(t,e,n){function r(t,e,n){return e=i(void 0===e?t.length-1:e,0),function(){for(var r=arguments,l=-1,a=i(r.length-e,0),s=Array(a);++l0){if(++e>=r)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var r=800,o=16,i=Date.now;t.exports=n},function(t,e,n){function r(){this.__data__=new o,this.size=0}var o=n(3);t.exports=r},function(t,e){function n(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}t.exports=n},function(t,e){function n(t){return this.__data__.get(t)}t.exports=n},function(t,e){function n(t){return this.__data__.has(t)}t.exports=n},function(t,e,n){function r(t,e){var n=this.__data__;if(n instanceof o){var r=n.__data__;if(!i||r.length\\n \\n \\n \\n'},function(t,e){t.exports='\\n \\n \\n \\n'},function(t,e){t.exports='\\n \\n \\n \\n'}])});","import Quill from 'quill';\nimport ImageResize from 'quill-image-resize';\n\nQuill.register('modules/imageResize', ImageResize);\nconst CodeBlockContainer = Quill.import('formats/code-block-container');\nCodeBlockContainer.tagName = 'PRE';\nQuill.register(CodeBlockContainer, true);\n\n// font size\nlet font_sizes = [false, '8px', '9px', '10px', '11px', '12px', '13px', '14px', '15px', '16px', '18px', '20px', '22px', '24px', '32px', '36px', '40px', '48px', '54px', '64px', '96px', '128px'];\nconst Size = Quill.import('attributors/style/size');\nSize.whitelist = font_sizes;\nQuill.register(Size, true);\n\n// table\nconst Table = Quill.import('formats/table-container');\nconst superCreate = Table.create.bind(Table);\nTable.create = (value) => {\n\tconst node = superCreate(value);\n\tnode.classList.add('table');\n\tnode.classList.add('table-bordered');\n\treturn node;\n};\n\nQuill.register(Table, true);\n\n// link without href\nvar Link = Quill.import('formats/link');\n\nclass MyLink extends Link {\n\tstatic create(value) {\n\t\tlet node = super.create(value);\n\t\tvalue = this.sanitize(value);\n\t\tnode.setAttribute('href', value);\n\t\tif (value.startsWith('/') || value.indexOf(window.location.host)) {\n\t\t\t// no href if internal link\n\t\t\tnode.removeAttribute('target');\n\t\t}\n\t\treturn node;\n\t}\n}\n\nQuill.register(MyLink, true);\n\n// image uploader\nconst Uploader = Quill.import('modules/uploader');\nUploader.DEFAULTS.mimetypes.push('image/gif');\n\n// inline style\nconst BackgroundStyle = Quill.import('attributors/style/background');\nconst ColorStyle = Quill.import('attributors/style/color');\nconst FontStyle = Quill.import('attributors/style/font');\nconst AlignStyle = Quill.import('attributors/style/align');\nconst DirectionStyle = Quill.import('attributors/style/direction');\nQuill.register(BackgroundStyle, true);\nQuill.register(ColorStyle, true);\nQuill.register(FontStyle, true);\nQuill.register(AlignStyle, true);\nQuill.register(DirectionStyle, true);\n\n// direction class\nconst DirectionClass = Quill.import('attributors/class/direction');\nQuill.register(DirectionClass, true);\n\n// replace font tag with span\nconst Inline = Quill.import('blots/inline');\n\nclass CustomColor extends Inline {\n\tconstructor(domNode, value) {\n\t\tsuper(domNode, value);\n\t\tthis.domNode.style.color = this.domNode.color;\n\t\tdomNode.outerHTML = this.domNode.outerHTML.replace(//g, '
    ');\n\t}\n}\n\nCustomColor.blotName = \"customColor\";\nCustomColor.tagName = \"font\";\n\nQuill.register(CustomColor, true);\n\nfrappe.ui.form.ControlTextEditor = frappe.ui.form.ControlCode.extend({\n\tmake_wrapper() {\n\t\tthis._super();\n\t},\n\n\tmake_input() {\n\t\tthis.has_input = true;\n\t\tthis.make_quill_editor();\n\t},\n\n\tmake_quill_editor() {\n\t\tif (this.quill) return;\n\t\tthis.quill_container = $('
    ').appendTo(this.input_area);\n\t\tthis.quill = new Quill(this.quill_container[0], this.get_quill_options());\n\t\tthis.bind_events();\n\t},\n\n\tbind_events() {\n\t\tthis.quill.on('text-change', frappe.utils.debounce((delta, oldDelta, source) => {\n\t\t\tif (!this.is_quill_dirty(source)) return;\n\n\t\t\tconst input_value = this.get_input_value();\n\t\t\tthis.parse_validate_and_set_in_model(input_value);\n\t\t}, 300));\n\n\t\t$(this.quill.root).on('keydown', (e) => {\n\t\t\tconst key = frappe.ui.keys && frappe.ui.keys.get_key(e);\n\t\t\tif (['ctrl+b', 'meta+b'].includes(key)) {\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t});\n\n\t\t$(this.quill.root).on('drop', (e) => {\n\t\t\te.stopPropagation();\n\t\t});\n\n\t\t// table commands\n\t\tthis.$wrapper.on('click', '.ql-table .ql-picker-item', (e) => {\n\t\t\tconst $target = $(e.currentTarget);\n\t\t\tconst action = $target.data().value;\n\t\t\te.preventDefault();\n\n\t\t\tconst table = this.quill.getModule('table');\n\t\t\tif (action === 'insert-table') {\n\t\t\t\ttable.insertTable(2, 2);\n\t\t\t} else if (action === 'insert-row-above') {\n\t\t\t\ttable.insertRowAbove();\n\t\t\t} else if (action === 'insert-row-below') {\n\t\t\t\ttable.insertRowBelow();\n\t\t\t} else if (action === 'insert-column-left') {\n\t\t\t\ttable.insertColumnLeft();\n\t\t\t} else if (action === 'insert-column-right') {\n\t\t\t\ttable.insertColumnRight();\n\t\t\t} else if (action === 'delete-row') {\n\t\t\t\ttable.deleteRow();\n\t\t\t} else if (action === 'delete-column') {\n\t\t\t\ttable.deleteColumn();\n\t\t\t} else if (action === 'delete-table') {\n\t\t\t\ttable.deleteTable();\n\t\t\t}\n\n\t\t\tif (action !== 'delete-row') {\n\t\t\t\ttable.balanceTables();\n\t\t\t}\n\n\t\t\te.preventDefault();\n\t\t});\n\n\t\t// font size dropdown\n\t\tlet $font_size_label = this.$wrapper.find('.ql-size .ql-picker-label:first');\n\t\tlet $default_font_size = this.$wrapper.find('.ql-size .ql-picker-item:first');\n\n\t\tif ($font_size_label.length) {\n\t\t\t$font_size_label.attr('data-value', '---');\n\t\t\t$default_font_size.attr('data-value', '---');\n\t\t}\n\t},\n\n\tis_quill_dirty(source) {\n\t\tif (source === 'api') return false;\n\t\tlet input_value = this.get_input_value();\n\t\treturn this.value !== input_value;\n\t},\n\n\tget_quill_options() {\n\t\treturn {\n\t\t\tmodules: {\n\t\t\t\ttoolbar: this.get_toolbar_options(),\n\t\t\t\ttable: true,\n\t\t\t\timageResize: {}\n\t\t\t},\n\t\t\ttheme: 'snow'\n\t\t};\n\t},\n\n\tget_toolbar_options() {\n\t\treturn [\n\t\t\t[{ header: [1, 2, 3, false] }],\n\t\t\t[{ size: font_sizes }],\n\t\t\t['bold', 'italic', 'underline', 'clean'],\n\t\t\t[{ 'color': [] }, { 'background': [] }],\n\t\t\t['blockquote', 'code-block'],\n\t\t\t// Adding Direction tool to give the user the ability to change text direction.\n\t\t\t[{ 'direction': \"rtl\" }],\n\t\t\t['link', 'image'],\n\t\t\t[{ 'list': 'ordered' }, { 'list': 'bullet' }, { 'list': 'check' }],\n\t\t\t[{ 'align': [] }],\n\t\t\t[{ 'indent': '-1'}, { 'indent': '+1' }],\n\t\t\t[{'table': [\n\t\t\t\t'insert-table',\n\t\t\t\t'insert-row-above',\n\t\t\t\t'insert-row-below',\n\t\t\t\t'insert-column-right',\n\t\t\t\t'insert-column-left',\n\t\t\t\t'delete-row',\n\t\t\t\t'delete-column',\n\t\t\t\t'delete-table',\n\t\t\t]}],\n\t\t];\n\t},\n\n\tparse(value) {\n\t\tif (value == null) {\n\t\t\tvalue = \"\";\n\t\t}\n\t\treturn frappe.dom.remove_script_and_style(value);\n\t},\n\n\tset_formatted_input(value) {\n\t\tif (!this.quill) return;\n\t\tif (value === this.get_input_value()) return;\n\t\tif (!value) {\n\t\t\t// clear contents for falsy values like '', undefined or null\n\t\t\tthis.quill.setText('');\n\t\t\treturn;\n\t\t}\n\n\t\t// set html without triggering a focus\n\t\tconst delta = this.quill.clipboard.convert({ html: value, text: '' });\n\t\tthis.quill.setContents(delta);\n\t},\n\n\tget_input_value() {\n\t\tlet value = this.quill ? this.quill.root.innerHTML : '';\n\t\t// hack to retain space sequence.\n\t\tvalue = value.replace(/(\\s)(\\s)/g, '  ');\n\n\t\ttry {\n\t\t\tif (!$(value).find('.ql-editor').length) {\n\t\t\t\tvalue = `
    ${value}
    `;\n\t\t\t}\n\t\t} catch(e) {\n\t\t\tvalue = `
    ${value}
    `;\n\t\t}\n\n\t\treturn value;\n\t},\n\n\tset_focus() {\n\t\tthis.quill.focus();\n\t}\n});\n","/* eslint-disable */\nconst Keys = {\n TAB: 'Tab',\n ENTER: 'Enter',\n ESCAPE: 27,\n UP: 'ArrowUp',\n DOWN: 'ArrowDown',\n};\n\nexport default Keys;\n","/* eslint-disable */\nimport Quill from 'quill';\n\nconst Embed = Quill.import('blots/embed');\n\n\nclass MentionBlot extends Embed {\n static create(data) {\n const node = super.create();\n const denotationChar = document.createElement('span');\n denotationChar.className = 'ql-mention-denotation-char';\n denotationChar.innerHTML = data.denotationChar;\n node.appendChild(denotationChar);\n node.innerHTML += data.value;\n node.innerHTML += `${data.isGroup === 'true' ? frappe.utils.icon('users') : ''}`;\n node.dataset.id = data.id;\n node.dataset.value = data.value;\n node.dataset.denotationChar = data.denotationChar;\n\tnode.dataset.isGroup = data.isGroup;\n if (data.link) {\n node.dataset.link = data.link;\n }\n return node;\n }\n\n static value(domNode) {\n return {\n id: domNode.dataset.id,\n value: domNode.dataset.value,\n link: domNode.dataset.link || null,\n denotationChar: domNode.dataset.denotationChar,\n isGroup: domNode.dataset.isGroup,\n };\n }\n}\n\nMentionBlot.blotName = 'mention';\nMentionBlot.tagName = 'span';\nMentionBlot.className = 'mention';\n\nQuill.register(MentionBlot, true);\n","/* eslint-disable */\nimport Quill from 'quill';\nimport Keys from './constants/keys';\nimport './blots/mention';\n\n\nclass Mention {\n constructor(quill, options) {\n this.isOpen = false;\n this.itemIndex = 0;\n this.mentionCharPos = null;\n this.cursorPos = null;\n this.values = [];\n this.suspendMouseEnter = false;\n\n this.quill = quill;\n\n this.options = {\n source: null,\n renderItem(item, searchTerm) {\n return `${item.value}`;\n },\n mentionDenotationChars: ['@'],\n allowedChars: /^[a-zA-Z0-9_]*$/,\n minChars: 0,\n maxChars: 31,\n offsetTop: 2,\n offsetLeft: 0,\n isolateCharacter: false,\n fixMentionsToQuill: false,\n defaultMenuOrientation: 'bottom',\n };\n\n Object.assign(this.options, options);\n\n this.mentionContainer = document.createElement('div');\n this.mentionContainer.className = 'ql-mention-list-container';\n this.mentionContainer.style.cssText = 'display: none; position: absolute;';\n this.mentionContainer.onmousemove = this.onContainerMouseMove.bind(this);\n\n if (this.options.fixMentionsToQuill) {\n this.mentionContainer.style.width = 'auto';\n }\n\n this.mentionList = document.createElement('ul');\n this.mentionList.className = 'ql-mention-list';\n this.mentionContainer.appendChild(this.mentionList);\n\n this.quill.container.appendChild(this.mentionContainer);\n\n quill.on('text-change', this.onTextChange.bind(this));\n quill.on('selection-change', this.onSelectionChange.bind(this));\n\n quill.keyboard.addBinding({\n key: Keys.TAB,\n }, this.selectHandler.bind(this));\n quill.keyboard.bindings[Keys.TAB].unshift(quill.keyboard.bindings[Keys.TAB].pop());\n\n quill.keyboard.addBinding({\n key: Keys.ENTER,\n }, this.selectHandler.bind(this));\n quill.keyboard.bindings[Keys.ENTER].unshift(quill.keyboard.bindings[Keys.ENTER].pop());\n\n quill.keyboard.addBinding({\n key: Keys.ESCAPE,\n }, this.escapeHandler.bind(this));\n\n quill.keyboard.addBinding({\n key: Keys.UP,\n }, this.upHandler.bind(this));\n\n quill.keyboard.addBinding({\n key: Keys.DOWN,\n }, this.downHandler.bind(this));\n }\n\n selectHandler() {\n if (this.isOpen) {\n this.selectItem();\n return false;\n }\n return true;\n }\n\n escapeHandler() {\n if (this.isOpen) {\n this.hideMentionList();\n return false;\n }\n return true;\n }\n\n upHandler() {\n if (this.isOpen) {\n this.prevItem();\n return false;\n }\n return true;\n }\n\n downHandler() {\n if (this.isOpen) {\n this.nextItem();\n return false;\n }\n return true;\n }\n\n showMentionList() {\n this.mentionContainer.style.visibility = 'hidden';\n this.mentionContainer.style.display = '';\n this.setMentionContainerPosition();\n this.isOpen = true;\n }\n\n hideMentionList() {\n this.mentionContainer.style.display = 'none';\n this.isOpen = false;\n }\n\n highlightItem(scrollItemInView = true) {\n for (let i = 0; i < this.mentionList.childNodes.length; i += 1) {\n this.mentionList.childNodes[i].classList.remove('selected');\n }\n this.mentionList.childNodes[this.itemIndex].classList.add('selected');\n\n if (scrollItemInView) {\n const itemHeight = this.mentionList.childNodes[this.itemIndex].offsetHeight;\n const itemPos = this.itemIndex * itemHeight;\n const containerTop = this.mentionContainer.scrollTop;\n const containerBottom = containerTop + this.mentionContainer.offsetHeight;\n\n if (itemPos < containerTop) {\n // Scroll up if the item is above the top of the container\n this.mentionContainer.scrollTop = itemPos;\n } else if (itemPos > (containerBottom - itemHeight)) {\n // scroll down if any part of the element is below the bottom of the container\n this.mentionContainer.scrollTop += (itemPos - containerBottom) + itemHeight;\n }\n }\n }\n\n getItemData() {\n const itemLink = this.mentionList.childNodes[this.itemIndex].dataset.link;\n return {\n id: this.mentionList.childNodes[this.itemIndex].dataset.id,\n value: itemLink ?\n `${this.mentionList.childNodes[this.itemIndex].dataset.value}` :\n this.mentionList.childNodes[this.itemIndex].dataset.value,\n link: itemLink || null,\n denotationChar: this.mentionList.childNodes[this.itemIndex].dataset.denotationChar,\n isGroup: this.mentionList.childNodes[this.itemIndex].dataset.isGroup,\n };\n }\n\n onContainerMouseMove() {\n this.suspendMouseEnter = false;\n }\n\n selectItem() {\n const data = this.getItemData();\n this.quill\n .deleteText(this.mentionCharPos, this.cursorPos - this.mentionCharPos, Quill.sources.API);\n this.quill.insertEmbed(this.mentionCharPos, 'mention', data, Quill.sources.API);\n this.quill.insertText(this.mentionCharPos + 1, ' ', Quill.sources.API);\n this.quill.setSelection(this.mentionCharPos + 2, Quill.sources.API);\n this.hideMentionList();\n }\n\n onItemMouseEnter(e) {\n if (this.suspendMouseEnter) {\n return;\n }\n\n const index = Number(e.target.dataset.index);\n\n if (!Number.isNaN(index) && index !== this.itemIndex) {\n this.itemIndex = index;\n this.highlightItem(false);\n }\n }\n\n onItemClick(e) {\n e.stopImmediatePropagation();\n e.preventDefault();\n this.itemIndex = e.currentTarget.dataset.index;\n this.highlightItem();\n this.selectItem();\n }\n\n renderList(mentionChar, data, searchTerm) {\n if (data && data.length > 0) {\n this.values = data;\n this.mentionList.innerHTML = '';\n for (let i = 0; i < data.length; i += 1) {\n const li = document.createElement('li');\n li.className = 'ql-mention-list-item';\n li.dataset.index = i;\n li.dataset.id = data[i].id;\n li.dataset.value = data[i].value;\n li.dataset.isGroup = Boolean(data[i].is_group);\n li.dataset.denotationChar = mentionChar;\n if (data[i].link) {\n li.dataset.link = data[i].link;\n }\n li.innerHTML = this.options.renderItem(data[i], searchTerm);\n li.onmouseenter = this.onItemMouseEnter.bind(this);\n li.onclick = this.onItemClick.bind(this);\n this.mentionList.appendChild(li);\n }\n this.itemIndex = 0;\n this.highlightItem();\n this.showMentionList();\n } else {\n this.hideMentionList();\n }\n }\n\n nextItem() {\n this.itemIndex = (this.itemIndex + 1) % this.values.length;\n this.suspendMouseEnter = true;\n this.highlightItem();\n }\n\n prevItem() {\n this.itemIndex = ((this.itemIndex + this.values.length) - 1) % this.values.length;\n this.suspendMouseEnter = true;\n this.highlightItem();\n }\n\n hasValidChars(s) {\n return this.options.allowedChars.test(s);\n }\n\n containerBottomIsNotVisible(topPos, containerPos) {\n const mentionContainerBottom = topPos + this.mentionContainer.offsetHeight + containerPos.top;\n return mentionContainerBottom > window.pageYOffset + window.innerHeight;\n }\n\n containerRightIsNotVisible(leftPos, containerPos) {\n if (this.options.fixMentionsToQuill) {\n return false;\n }\n\n const rightPos = leftPos + this.mentionContainer.offsetWidth + containerPos.left;\n const browserWidth = window.pageXOffset + document.documentElement.clientWidth;\n return rightPos > browserWidth;\n }\n\n setMentionContainerPosition() {\n const containerPos = this.quill.container.getBoundingClientRect();\n const mentionCharPos = this.quill.getBounds(this.mentionCharPos);\n const containerHeight = this.mentionContainer.offsetHeight;\n\n let topPos = this.options.offsetTop;\n let leftPos = this.options.offsetLeft;\n\n // handle horizontal positioning\n if (this.options.fixMentionsToQuill) {\n const rightPos = 0;\n this.mentionContainer.style.right = `${rightPos}px`;\n } else {\n leftPos += mentionCharPos.left;\n }\n\n if (this.containerRightIsNotVisible(leftPos, containerPos)) {\n const containerWidth = this.mentionContainer.offsetWidth + this.options.offsetLeft;\n const quillWidth = containerPos.width;\n leftPos = quillWidth - containerWidth;\n }\n\n // handle vertical positioning\n if (this.options.defaultMenuOrientation === 'top') {\n // Attempt to align the mention container with the top of the quill editor\n if (this.options.fixMentionsToQuill) {\n topPos = -1 * (containerHeight + this.options.offsetTop);\n } else {\n topPos = mentionCharPos.top - (containerHeight + this.options.offsetTop);\n }\n\n // default to bottom if the top is not visible\n if (topPos + containerPos.top <= 0) {\n let overMentionCharPos = this.options.offsetTop;\n\n if (this.options.fixMentionsToQuill) {\n overMentionCharPos += containerPos.height;\n } else {\n overMentionCharPos += mentionCharPos.bottom;\n }\n\n topPos = overMentionCharPos;\n }\n } else {\n // Attempt to align the mention container with the bottom of the quill editor\n if (this.options.fixMentionsToQuill) {\n topPos += containerPos.height;\n } else {\n topPos += mentionCharPos.bottom;\n }\n\n // default to the top if the bottom is not visible\n if (this.containerBottomIsNotVisible(topPos, containerPos)) {\n let overMentionCharPos = this.options.offsetTop * -1;\n\n if (!this.options.fixMentionsToQuill) {\n overMentionCharPos += mentionCharPos.top;\n }\n\n topPos = overMentionCharPos - containerHeight;\n }\n }\n\n this.mentionContainer.style.top = `${topPos}px`;\n this.mentionContainer.style.left = `${leftPos}px`;\n\n this.mentionContainer.style.visibility = 'visible';\n }\n\n onSomethingChange() {\n const range = this.quill.getSelection();\n if (range == null) return;\n this.cursorPos = range.index;\n const startPos = Math.max(0, this.cursorPos - this.options.maxChars);\n const beforeCursorPos = this.quill.getText(startPos, this.cursorPos - startPos);\n const mentionCharIndex = this.options.mentionDenotationChars.reduce((prev, cur) => {\n const previousIndex = prev;\n const mentionIndex = beforeCursorPos.lastIndexOf(cur);\n\n return mentionIndex > previousIndex ? mentionIndex : previousIndex;\n }, -1);\n if (mentionCharIndex > -1) {\n if (this.options.isolateCharacter && !(mentionCharIndex == 0 || !!beforeCursorPos[mentionCharIndex - 1].match(/\\s/g))) {\n this.hideMentionList();\n return;\n }\n const mentionCharPos = this.cursorPos - (beforeCursorPos.length - mentionCharIndex);\n this.mentionCharPos = mentionCharPos;\n const textAfter = beforeCursorPos.substring(mentionCharIndex + 1);\n if (textAfter.length >= this.options.minChars && this.hasValidChars(textAfter)) {\n const mentionChar = beforeCursorPos[mentionCharIndex];\n this.options.source(textAfter, this.renderList.bind(this, mentionChar), mentionChar);\n } else {\n this.hideMentionList();\n }\n } else {\n this.hideMentionList();\n }\n }\n\n onTextChange(delta, oldDelta, source) {\n if (source === 'user') {\n this.onSomethingChange();\n }\n }\n\n onSelectionChange(range) {\n if (range && range.length === 0) {\n this.onSomethingChange();\n } else {\n this.hideMentionList();\n }\n }\n}\n\nQuill.register('modules/mention', Mention, true);\n\nexport default Mention;\n","import Quill from 'quill';\nimport Mention from './quill-mention/quill.mention';\n\nQuill.register('modules/mention', Mention, true);\n\nfrappe.ui.form.ControlComment = frappe.ui.form.ControlTextEditor.extend({\n\tmake_wrapper() {\n\t\tthis.comment_wrapper = !this.no_wrapper ? $(`\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t${__(\"Add a comment\")}\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t${__(\"Ctrl+Enter to add comment\")}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t`) : $('
    ');\n\n\t\tthis.comment_wrapper.appendTo(this.parent);\n\n\t\t// wrapper should point to frappe-control\n\t\tthis.$wrapper = !this.no_wrapper\n\t\t\t? this.comment_wrapper.find('.frappe-control')\n\t\t\t: this.comment_wrapper;\n\n\t\tthis.wrapper = this.$wrapper;\n\n\t\tthis.button = this.comment_wrapper.find('.btn-comment');\n\t},\n\n\tbind_events() {\n\t\tthis._super();\n\n\t\tthis.button.click(() => {\n\t\t\tthis.submit();\n\t\t});\n\n\t\tthis.$wrapper.on('keydown', e => {\n\t\t\tconst key = frappe.ui.keys.get_key(e);\n\t\t\tif (key === 'ctrl+enter') {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.submit();\n\t\t\t}\n\t\t});\n\n\t\tthis.quill.on('text-change', frappe.utils.debounce(() => {\n\t\t\tthis.update_state();\n\t\t}, 300));\n\t},\n\n\tsubmit() {\n\t\tthis.on_submit && this.on_submit(this.get_value());\n\t},\n\n\tupdate_state() {\n\t\tconst value = this.get_value();\n\t\tif (strip_html(value).trim() != \"\" || value.includes('img')) {\n\t\t\tthis.button.removeClass('btn-default').addClass('btn-primary');\n\t\t} else {\n\t\t\tthis.button.addClass('btn-default').removeClass('btn-primary');\n\t\t}\n\t},\n\n\tget_quill_options() {\n\t\tconst options = this._super();\n\t\treturn Object.assign(options, {\n\t\t\ttheme: 'bubble',\n\t\t\tmodules: Object.assign(options.modules, {\n\t\t\t\tmention: this.get_mention_options()\n\t\t\t})\n\t\t});\n\t},\n\n\tget_mention_options() {\n\t\tif (!this.enable_mentions) {\n\t\t\treturn null;\n\t\t}\n\t\tlet me = this;\n\t\treturn {\n\t\t\tallowedChars: /^[A-Za-z0-9_]*$/,\n\t\t\tmentionDenotationChars: [\"@\"],\n\t\t\tisolateCharacter: true,\n\t\t\tsource: frappe.utils.debounce(async function(search_term, renderList) {\n\t\t\t\tlet method = me.mention_search_method || 'frappe.desk.search.get_names_for_mentions';\n\t\t\t\tlet values = await frappe.xcall(method, {\n\t\t\t\t\tsearch_term\n\t\t\t\t});\n\t\t\t\trenderList(values, search_term);\n\t\t\t}, 300),\n\t\t\trenderItem(item) {\n\t\t\t\tlet value = item.value;\n\t\t\t\treturn `${value} ${item.is_group ? frappe.utils.icon('users') : ''}`;\n\t\t\t}\n\t\t};\n\t},\n\n\tget_toolbar_options() {\n\t\treturn [\n\t\t\t['bold', 'italic', 'underline'],\n\t\t\t['blockquote', 'code-block'],\n\t\t\t[{ 'direction': \"rtl\" }],\n\t\t\t['link', 'image'],\n\t\t\t[{ 'list': 'ordered' }, { 'list': 'bullet' }],\n\t\t\t[{ 'align': [] }],\n\t\t\t['clean']\n\t\t];\n\t},\n\n\tclear() {\n\t\tthis.quill.setText('');\n\t},\n\n\tdisable() {\n\t\tthis.quill.disable();\n\t\tthis.button.prop('disabled', true);\n\t},\n\n\tenable() {\n\t\tthis.quill.enable();\n\t\tthis.button.prop('disabled', false);\n\t}\n});\n","frappe.ui.form.ControlCheck = frappe.ui.form.ControlData.extend({\n\tinput_type: \"checkbox\",\n\tmake_wrapper: function() {\n\t\tthis.$wrapper = $(`
    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t

    \n\t\t\t
    \n\t\t
    `).appendTo(this.parent);\n\t},\n\tset_input_areas: function() {\n\t\tthis.input_area = this.$wrapper.find(\".input-area\").get(0);\n\t\tif (this.only_input) return;\n\n\t\tthis.label_area = this.label_span = this.$wrapper.find(\".label-area\").get(0);\n\t\tthis.disp_area = this.$wrapper.find(\".disp-area\").get(0);\n\t},\n\tmake_input: function() {\n\t\tthis._super();\n\t\tthis.$input.removeClass(\"form-control\");\n\t},\n\tget_input_value: function() {\n\t\treturn this.input && this.input.checked ? 1 : 0;\n\t},\n\tvalidate: function(value) {\n\t\treturn cint(value);\n\t},\n\tset_input: function(value) {\n\t\tvalue = cint(value);\n\t\tif(this.input) {\n\t\t\tthis.input.checked = (value ? 1 : 0);\n\t\t}\n\t\tthis.last_value = value;\n\t\tthis.set_mandatory(value);\n\t\tthis.set_disp_area(value);\n\t}\n});\n","frappe.ui.form.ControlImage = frappe.ui.form.Control.extend({\n\tmake: function() {\n\t\tthis._super();\n\t\tthis.$wrapper.css({\"margin\": \"0px\"});\n\t\tthis.$body = $(\"
    \").appendTo(this.$wrapper)\n\t\t\t.css({\"margin-bottom\": \"10px\"});\n\t\t$('
    ').appendTo(this.$wrapper);\n\t},\n\trefresh_input: function() {\n\t\tthis.$body.empty();\n\n\t\tvar doc = this.get_doc();\n\t\tif(doc && this.df.options && doc[this.df.options]) {\n\t\t\tthis.$img = $(\"\")\n\t\t\t\t.appendTo(this.$body);\n\t\t} else {\n\t\t\tthis.$buffer = $(`
    ${frappe.utils.icon('restriction', 'md')}
    `)\n\t\t\t\t.appendTo(this.$body);\n\t\t}\n\t\treturn false;\n\t}\n});\n","frappe.ui.form.ControlAttach = frappe.ui.form.ControlData.extend({\n\tmake_input: function() {\n\t\tlet me = this;\n\t\tthis.$input = $('
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    `;\n\n\t\t\t$(template).appendTo(this.wrapper);\n\t\t\tthis.form_area = this.wrapper.find(\".form-area\");\n\t\t\tthis.row.set_row_index();\n\t\t\tthis.set_form_events();\n\t\t}\n\t}\n\tset_form_events() {\n\t\tvar me = this;\n\t\tthis.wrapper.find(\".grid-delete-row\")\n\t\t\t.on('click', function() {\n\t\t\t\tme.row.remove(); return false;\n\t\t\t});\n\t\tthis.wrapper.find(\".grid-insert-row\")\n\t\t\t.on('click', function() {\n\t\t\t\tme.row.insert(true); return false;\n\t\t\t});\n\t\tthis.wrapper.find(\".grid-insert-row-below\")\n\t\t\t.on('click', function() {\n\t\t\t\tme.row.insert(true, true); return false;\n\t\t\t});\n\t\tthis.wrapper.find(\".grid-duplicate-row\")\n\t\t\t.on('click', function() {\n\t\t\t\tme.row.insert(true, true, true); return false;\n\t\t\t});\n\t\tthis.wrapper.find(\".grid-move-row\")\n\t\t\t.on('click', function() {\n\t\t\t\tme.row.move(); return false;\n\t\t\t});\n\t\tthis.wrapper.find(\".grid-append-row\")\n\t\t\t.on('click', function() {\n\t\t\t\tme.row.toggle_view(false);\n\t\t\t\tme.row.grid.add_new_row(me.row.doc.idx+1, null, true);\n\t\t\t\treturn false;\n\t\t\t});\n\t\tthis.wrapper.find(\".grid-form-heading, .grid-footer-toolbar\").on(\"click\", function() {\n\t\t\tme.row.toggle_view();\n\t\t\treturn false;\n\t\t});\n\t}\n\ttoggle_add_delete_button_display($parent) {\n\t\t$parent.find(\".row-actions, .grid-append-row\")\n\t\t\t.toggle(this.row.grid.is_editable());\n\t}\n\trefresh_field(fieldname) {\n\t\tconst field = this.fields_dict[fieldname];\n\t\tif (!field) return;\n\n\t\tfield.docname = this.row.doc.name;\n\t\tfield.refresh();\n\t\tthis.layout && this.layout.refresh_dependency();\n\t}\n\tset_focus() {\n\t\t// wait for animation and then focus on the first row\n\t\tvar me = this;\n\t\tsetTimeout(function() {\n\t\t\tif(me.row.frm && me.row.frm.doc.docstatus===0 || !me.row.frm) {\n\t\t\t\tvar first = me.form_area.find(\"input:first\");\n\t\t\t\tif(first.length && !in_list([\"Date\", \"Datetime\", \"Time\"], first.attr(\"data-fieldtype\"))) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tfirst.get(0).focus();\n\t\t\t\t\t} catch(e) {\n\t\t\t\t\t\t//\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}, 500);\n\t}\n}\n","import GridRowForm from './grid_row_form';\n\nexport default class GridRow {\n\tconstructor(opts) {\n\t\tthis.on_grid_fields_dict = {};\n\t\tthis.on_grid_fields = [];\n\t\t$.extend(this, opts);\n\t\tif (this.doc && this.parent_df.options) {\n\t\t\tfrappe.meta.make_docfield_copy_for(this.parent_df.options, this.doc.name, this.docfields);\n\t\t\tconst docfields = frappe.meta.get_docfields(this.parent_df.options, this.doc.name);\n\t\t\tthis.docfields = docfields.length ? docfields : opts.docfields;\n\t\t}\n\t\tthis.columns = {};\n\t\tthis.columns_list = [];\n\t\tthis.row_check_html = '';\n\t\tthis.make();\n\t}\n\tmake() {\n\t\tvar me = this;\n\n\t\tthis.wrapper = $('
    ').appendTo(this.parent).data(\"grid_row\", this);\n\t\tthis.row = $('
    ').appendTo(this.wrapper)\n\t\t\t.on(\"click\", function(e) {\n\t\t\t\tif($(e.target).hasClass('grid-row-check') || $(e.target).hasClass('row-index') || $(e.target).parent().hasClass('row-index')) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif(me.grid.allow_on_grid_editing() && me.grid.is_editable()) {\n\t\t\t\t\t// pass\n\t\t\t\t} else {\n\t\t\t\t\tme.toggle_view();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t});\n\n\t\tif(this.grid.template && !this.grid.meta.editable_grid) {\n\t\t\tthis.render_template();\n\t\t} else {\n\t\t\tthis.render_row();\n\t\t}\n\t\tif(this.doc) {\n\t\t\tthis.set_data();\n\t\t}\n\t}\n\tset_data() {\n\t\tthis.wrapper.data({\n\t\t\t\"doc\": this.doc\n\t\t})\n\t}\n\tset_row_index() {\n\t\tif(this.doc) {\n\t\t\tthis.wrapper\n\t\t\t\t.attr('data-name', this.doc.name)\n\t\t\t\t.attr(\"data-idx\", this.doc.idx)\n\t\t\t\t.find(\".row-index span, .grid-form-row-index\").html(this.doc.idx)\n\n\t\t}\n\t}\n\tselect(checked) {\n\t\tthis.doc.__checked = checked ? 1 : 0;\n\t}\n\trefresh_check() {\n\t\tthis.wrapper.find('.grid-row-check').prop('checked', this.doc ? !!this.doc.__checked : false);\n\t\tthis.grid.refresh_remove_rows_button();\n\t}\n\tremove() {\n\t\tvar me = this;\n\t\tif(this.grid.is_editable()) {\n\t\t\tif(this.frm) {\n\t\t\t\tif(this.get_open_form()) {\n\t\t\t\t\tthis.hide_form();\n\t\t\t\t}\n\n\t\t\t\tfrappe.run_serially([\n\t\t\t\t\t() => {\n\t\t\t\t\t\treturn this.frm.script_manager.trigger(\"before_\" + this.grid.df.fieldname + \"_remove\",\n\t\t\t\t\t\t\tthis.doc.doctype, this.doc.name);\n\t\t\t\t\t},\n\t\t\t\t\t() => {\n\t\t\t\t\t\tfrappe.model.clear_doc(this.doc.doctype, this.doc.name);\n\n\t\t\t\t\t\tthis.frm.script_manager.trigger(this.grid.df.fieldname + \"_remove\",\n\t\t\t\t\t\t\tthis.doc.doctype, this.doc.name);\n\t\t\t\t\t\tthis.frm.dirty();\n\t\t\t\t\t\tthis.grid.refresh();\n\t\t\t\t\t},\n\t\t\t\t]).catch((e) => {\n\t\t\t\t\t// aborted\n\t\t\t\t\tconsole.trace(e); // eslint-disable-line\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tlet data = null;\n\t\t\t\tif (this.grid.df.get_data) {\n\t\t\t\t\tdata = this.grid.df.get_data();\n\t\t\t\t} else {\n\t\t\t\t\tdata = this.grid.df.data;\n\t\t\t\t}\n\n\t\t\t\tconst index = data.findIndex(d => d.name === me.doc.name);\n\n\t\t\t\tif (index > -1) {\n\t\t\t\t\t// mutate array directly,\n\t\t\t\t\t// else the object reference will be lost\n\t\t\t\t\tdata.splice(index, 1);\n\t\t\t\t}\n\t\t\t\t// remap idxs\n\t\t\t\tdata.forEach(function(d, i) {\n\t\t\t\t\td.idx = i+1;\n\t\t\t\t});\n\n\t\t\t\tthis.grid.refresh();\n\t\t\t}\n\t\t}\n\t}\n\tinsert(show, below, duplicate) {\n\t\tvar idx = this.doc.idx;\n\t\tvar copy_doc = duplicate ? this.doc : null;\n\t\tif(below) idx ++;\n\t\tthis.toggle_view(false);\n\t\tthis.grid.add_new_row(idx, null, show, copy_doc);\n\t}\n\tmove() {\n\t\t// promopt the user where they want to move this row\n\t\tvar me = this;\n\t\tfrappe.prompt({\n\t\t\tfieldname: 'move_to',\n\t\t\tlabel: __('Move to Row Number'),\n\t\t\tfieldtype: 'Int',\n\t\t\treqd: 1,\n\t\t\tdefault: this.doc.idx,\n\t\t}, function(values) {\n\t\t\tif (me.doc._sortable === false) {\n\t\t\t\tfrappe.msgprint(__('Cannot move row'));\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// renumber and refresh\n\t\t\tlet data = me.grid.get_data();\n\t\t\tdata.move(me.doc.idx - 1, values.move_to - 1);\n\n\t\t\t// renum idx\n\t\t\tfor(let i=0; i${this.row_check_html}`).appendTo(this.row);\n\t\t}\n\n\t\tif (this.doc) {\n\t\t\tthis.row_index.find('span').html(this.doc.idx);\n\t\t}\n\n\t\tthis.row_display = $('
    ').appendTo(this.row)\n\t\t\t.html(frappe.render(this.grid.template, {\n\t\t\t\tdoc: this.doc ? frappe.get_format_helper(this.doc) : null,\n\t\t\t\tfrm: this.frm,\n\t\t\t\trow: this\n\t\t\t}));\n\t}\n\trender_row(refresh) {\n\t\tvar me = this;\n\t\tthis.set_row_index();\n\n\t\t// index (1, 2, 3 etc)\n\t\tif(!this.row_index) {\n\t\t\t// REDESIGN-TODO: Make translation contextual, this No is Number\n\t\t\tvar txt = (this.doc ? this.doc.idx : __(\"No.\"));\n\t\t\tthis.row_index = $(\n\t\t\t\t`
    \n\t\t\t\t\t${this.row_check_html}\n\t\t\t\t${txt}
    `)\n\t\t\t\t.appendTo(this.row)\n\t\t\t\t.on('click', function(e) {\n\t\t\t\t\tif(!$(e.target).hasClass('grid-row-check')) {\n\t\t\t\t\t\tme.toggle_view();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t} else {\n\t\t\tthis.row_index.find('span').html(txt);\n\t\t}\n\n\t\tthis.setup_columns();\n\t\tthis.add_open_form_button();\n\t\tthis.add_column_configure_button();\n\t\tthis.refresh_check();\n\n\t\tif(this.frm && this.doc) {\n\t\t\t$(this.frm.wrapper).trigger(\"grid-row-render\", [this]);\n\t\t}\n\t}\n\n\tmake_editable() {\n\t\tthis.row.toggleClass('editable-row', this.grid.is_editable());\n\t}\n\n\tis_too_small() {\n\t\treturn this.row.width() ? this.row.width() < 300 : false;\n\t}\n\n\tadd_open_form_button() {\n\t\tvar me = this;\n\t\tif(this.doc && !this.grid.df.in_place_edit) {\n\t\t\t// remove row\n\t\t\tif (!this.open_form_button) {\n\t\t\t\tthis.open_form_button = $('
    ').appendTo(this.row);\n\n\t\t\t\tif (!this.configure_columns) {\n\t\t\t\t\tthis.open_form_button = $(`\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t${frappe.utils.icon('edit', 'xs')}\n\t\t\t\t\t\t\t
    ${ __(\"Edit\") }
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t`)\n\t\t\t\t\t\t.appendTo(this.open_form_button)\n\t\t\t\t\t\t.on('click', function() {\n\t\t\t\t\t\t\tme.toggle_view(); return false;\n\t\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (this.is_too_small()) {\n\t\t\t\t\t// narrow\n\t\t\t\t\tthis.open_form_button.css({'margin-right': '-2px'});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tadd_column_configure_button() {\n\t\tif (this.grid.df.in_place_edit && !this.frm) return;\n\n\t\tif (this.configure_columns && this.frm) {\n\t\t\tthis.configure_columns_button = $(`\n\t\t\t\t\n\t\t\t`)\n\t\t\t\t.appendTo(this.row)\n\t\t\t\t.on('click', () => {\n\t\t\t\t\tthis.configure_dialog_for_columns_selector();\n\t\t\t\t});\n\t\t} else if (this.configure_columns && !this.frm) {\n\t\t\tthis.configure_columns_button = $(`\n\t\t\t\t
    \n\t\t\t`).appendTo(this.row);\n\t\t}\n\t}\n\n\tconfigure_dialog_for_columns_selector() {\n\t\tthis.grid_settings_dialog = new frappe.ui.Dialog({\n\t\t\ttitle: __(\"Configure Columns\"),\n\t\t\tfields: [{\n\t\t\t\t'fieldtype': 'HTML',\n\t\t\t\t'fieldname': 'fields_html'\n\t\t\t}]\n\t\t});\n\n\t\tthis.grid.setup_visible_columns();\n\t\tthis.setup_columns_for_dialog();\n\t\tthis.prepare_wrapper_for_columns();\n\t\tthis.render_selected_columns();\n\t\tthis.grid_settings_dialog.show();\n\n\t\t$(this.fields_html_wrapper).find('.add-new-fields').click(() => {\n\t\t\tthis.column_selector_for_dialog();\n\t\t});\n\n\t\tthis.grid_settings_dialog.set_primary_action(__('Update'), () => {\n\t\t\tthis.validate_columns_width();\n\t\t\tthis.columns = {};\n\t\t\tthis.update_user_settings_for_grid();\n\t\t\tthis.grid_settings_dialog.hide();\n\t\t});\n\n\t\tthis.grid_settings_dialog.set_secondary_action_label(__(\"Reset to default\"));\n\t\tthis.grid_settings_dialog.set_secondary_action(() => {\n\t\t\tthis.reset_user_settings_for_grid();\n\t\t\tthis.grid_settings_dialog.hide();\n\t\t});\n\t}\n\n\tsetup_columns_for_dialog() {\n\t\tthis.selected_columns_for_grid = [];\n\t\tthis.grid.visible_columns.forEach(row => {\n\t\t\tthis.selected_columns_for_grid.push({\n\t\t\t\tfieldname: row[0].fieldname,\n\t\t\t\tcolumns: row[0].columns || row[0].colsize\n\t\t\t});\n\t\t});\n\t}\n\n\tprepare_wrapper_for_columns() {\n\t\tthis.fields_html_wrapper = this.grid_settings_dialog.get_field(\"fields_html\").$wrapper[0];\n\n\t\t$(`\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t${__('Fieldname').bold()}\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t${__('Column Width').bold()}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t`).appendTo(this.fields_html_wrapper);\n\t}\n\n\tcolumn_selector_for_dialog() {\n\t\tlet docfields = this.prepare_columns_for_dialog(this.selected_columns_for_grid.map(field => field.fieldname));\n\n\t\tlet d = new frappe.ui.Dialog({\n\t\t\ttitle: __(\"{0} Fields\", [__(this.grid.doctype)]),\n\t\t\tfields: [\n\t\t\t\t{\n\t\t\t\t\tlabel: __(\"Select Fields\"),\n\t\t\t\t\tfieldtype: \"MultiCheck\",\n\t\t\t\t\tfieldname: \"fields\",\n\t\t\t\t\toptions: docfields,\n\t\t\t\t\tcolumns: 2\n\t\t\t\t}\n\t\t\t]\n\t\t});\n\n\t\td.set_primary_action(__('Add'), () => {\n\t\t\tlet selected_fields = d.get_values().fields;\n\t\t\tthis.selected_columns_for_grid = [];\n\t\t\tif (selected_fields) {\n\t\t\t\tselected_fields.forEach(selected_column => {\n\t\t\t\t\tlet docfield = frappe.meta.get_docfield(this.grid.doctype, selected_column);\n\t\t\t\t\tthis.grid.update_default_colsize(docfield);\n\n\t\t\t\t\tthis.selected_columns_for_grid.push({\n\t\t\t\t\t\tfieldname: selected_column,\n\t\t\t\t\t\tcolumns: docfield.columns || docfield.colsize\n\t\t\t\t\t});\n\t\t\t\t});\n\n\t\t\t\tthis.render_selected_columns();\n\t\t\t\td.hide();\n\t\t\t}\n\t\t});\n\n\t\td.show();\n\t}\n\n\tprepare_columns_for_dialog(selected_fields) {\n\t\tlet fields = [];\n\n\t\tconst blocked_fields = frappe.model.no_value_type;\n\t\tconst always_allow = [\"Button\"];\n\n\t\tconst show_field = (f) => always_allow.includes(f) || !blocked_fields.includes(f);\n\n\t\tthis.docfields.forEach(column => {\n\t\t\tif (!column.hidden && show_field(column.fieldtype)) {\n\t\t\t\tfields.push({\n\t\t\t\t\tlabel: column.label,\n\t\t\t\t\tvalue: column.fieldname,\n\t\t\t\t\tchecked: selected_fields ? in_list(selected_fields, column.fieldname) : false\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\treturn fields;\n\t}\n\n\trender_selected_columns() {\n\t\tlet fields = '';\n\t\tif (this.selected_columns_for_grid) {\n\t\t\tthis.selected_columns_for_grid.forEach(d => {\n\t\t\t\tlet docfield = frappe.meta.get_docfield(this.grid.doctype, d.fieldname);\n\n\t\t\t\tfields += `\n\t\t\t\t\t
    \n\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t${frappe.utils.icon('drag', 'xs')}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t${__(docfield.label)}\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t
    \n\t\t\t\t\t
    `;\n\t\t\t});\n\t\t}\n\n\t\t$(this.fields_html_wrapper).find('.selected-fields').html(fields);\n\n\t\tthis.prepare_handler_for_sort();\n\t\tthis.select_on_focus();\n\t\tthis.update_column_width();\n\t\tthis.remove_selected_column();\n\t}\n\n\tprepare_handler_for_sort() {\n\t\tnew Sortable($(this.fields_html_wrapper).find('.selected-fields')[0], {\n\t\t\thandle: '.sortable-handle',\n\t\t\tdraggable: '.sortable',\n\t\t\tonUpdate: () => {\n\t\t\t\tthis.sort_columns();\n\t\t\t}\n\t\t});\n\t}\n\n\tsort_columns() {\n\t\tthis.selected_columns_for_grid = [];\n\n\t\tlet columns = $(this.fields_html_wrapper).find('.fields_order') || [];\n\t\tcolumns.each(idx => {\n\t\t\tthis.selected_columns_for_grid.push({\n\t\t\t\tfieldname: $(columns[idx]).attr('data-fieldname'),\n\t\t\t\tcolumns: cint($(columns[idx]).find('.column-width').attr('value'))\n\t\t\t});\n\t\t});\n\t}\n\n\tselect_on_focus() {\n\t\t$(this.fields_html_wrapper).find('.column-width').click((event) => {\n\t\t\t$(event.target).select();\n\t\t});\n\t}\n\n\tupdate_column_width() {\n\t\t$(this.fields_html_wrapper).find('.column-width').change((event) => {\n\t\t\tif (cint(event.target.value) === 0) {\n\t\t\t\tevent.target.value = cint(event.target.defaultValue);\n\t\t\t\tfrappe.throw(__('Column width cannot be zero.'));\n\t\t\t}\n\n\t\t\tthis.selected_columns_for_grid.forEach(row => {\n\t\t\t\tif (row.fieldname === event.target.dataset.fieldname) {\n\t\t\t\t\trow.columns = cint(event.target.value);\n\t\t\t\t\tevent.target.defaultValue = cint(event.target.value);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tvalidate_columns_width() {\n\t\tlet total_column_width = 0.0;\n\n\t\tthis.selected_columns_for_grid.forEach(row => {\n\t\t\tif (row.columns && row.columns > 0) {\n\t\t\t\ttotal_column_width += cint(row.columns);\n\t\t\t}\n\t\t});\n\n\t\tif (total_column_width && total_column_width > 10) {\n\t\t\tfrappe.throw(__('The total column width cannot be more than 10.'));\n\t\t}\n\t}\n\n\tremove_selected_column() {\n\t\t$(this.fields_html_wrapper).find('.remove-field').click((event) => {\n\t\t\tlet fieldname = event.currentTarget.dataset.fieldname;\n\t\t\tlet selected_columns_for_grid = this.selected_columns_for_grid.filter(row => {\n\t\t\t\treturn (row.fieldname !== fieldname);\n\t\t\t});\n\n\t\t\tif (selected_columns_for_grid && selected_columns_for_grid.length === 0) {\n\t\t\t\tfrappe.throw(__('At least one column is required to show in the grid.'));\n\t\t\t}\n\n\t\t\tthis.selected_columns_for_grid = selected_columns_for_grid;\n\t\t\t$(this.fields_html_wrapper).find(`[data-fieldname=\"${fieldname}\"]`).remove();\n\t\t});\n\t}\n\n\tupdate_user_settings_for_grid() {\n\t\tif (!this.selected_columns_for_grid || !this.frm) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet value = {};\n\t\tvalue[this.grid.doctype] = this.selected_columns_for_grid;\n\t\tfrappe.model.user_settings.save(this.frm.doctype, 'GridView', value)\n\t\t\t.then((r) => {\n\t\t\t\tfrappe.model.user_settings[this.frm.doctype] = r.message || r;\n\t\t\t\tthis.grid.reset_grid();\n\t\t\t});\n\t}\n\n\treset_user_settings_for_grid() {\n\t\tfrappe.model.user_settings.save(this.frm.doctype, 'GridView', null)\n\t\t\t.then((r) => {\n\t\t\t\tfrappe.model.user_settings[this.frm.doctype] = r.message || r;\n\t\t\t\tthis.grid.reset_grid();\n\t\t\t});\n\t}\n\n\tsetup_columns() {\n\t\tthis.focus_set = false;\n\n\t\tthis.grid.setup_visible_columns();\n\t\tthis.grid.visible_columns.forEach((col, ci) => {\n\t\t\t// to get update df for the row\n\t\t\tlet df = this.docfields.find(field => field.fieldname === col[0].fieldname);\n\n\t\t\tthis.set_dependant_property(df);\n\n\t\t\tlet colsize = col[1];\n\t\t\tlet txt = this.doc ?\n\t\t\t\tfrappe.format(this.doc[df.fieldname], df, null, this.doc) :\n\t\t\t\t__(df.label);\n\n\t\t\tif (this.doc && df.fieldtype === \"Select\") {\n\t\t\t\ttxt = __(txt);\n\t\t\t}\n\t\t\tlet column;\n\t\t\tif (!this.columns[df.fieldname]) {\n\t\t\t\tcolumn = this.make_column(df, colsize, txt, ci);\n\t\t\t} else {\n\t\t\t\tcolumn = this.columns[df.fieldname];\n\t\t\t\tthis.refresh_field(df.fieldname, txt);\n\t\t\t}\n\n\t\t\t// background color for cell\n\t\t\tif (this.doc) {\n\t\t\t\tif (df.reqd && !txt) {\n\t\t\t\t\tcolumn.addClass('error');\n\t\t\t\t}\n\t\t\t\tif (column.is_invalid) {\n\t\t\t\t\tcolumn.addClass('invalid');\n\t\t\t\t} else if (df.reqd || df.bold) {\n\t\t\t\t\tcolumn.addClass('bold');\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tset_dependant_property(df) {\n\t\tif (!df.reqd && df.mandatory_depends_on &&\n\t\t\tthis.evaluate_depends_on_value(df.mandatory_depends_on)) {\n\t\t\tdf.reqd = 1;\n\t\t}\n\n\t\tif (!df.read_only && df.read_only_depends_on &&\n\t\t\tthis.evaluate_depends_on_value(df.read_only_depends_on)) {\n\t\t\tdf.read_only = 1;\n\t\t}\n\t}\n\n\tevaluate_depends_on_value(expression) {\n\t\tlet out = null;\n\t\tlet doc = this.doc;\n\n\t\tif (!doc) return;\n\n\t\tlet parent = this.frm ? this.frm.doc : this.doc || null;\n\n\t\tif (typeof (expression) === 'boolean') {\n\t\t\tout = expression;\n\n\t\t} else if (typeof (expression) === 'function') {\n\t\t\tout = expression(doc);\n\n\t\t} else if (expression.substr(0, 5)=='eval:') {\n\t\t\ttry {\n\t\t\t\tout = frappe.utils.eval(expression.substr(5), { doc, parent });\n\t\t\t\tif (parent && parent.istable && expression.includes('is_submittable')) {\n\t\t\t\t\tout = true;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tfrappe.throw(__('Invalid \"depends_on\" expression'));\n\t\t\t}\n\n\t\t} else if (expression.substr(0, 3)=='fn:' && this.frm) {\n\t\t\tout = this.frm.script_manager.trigger(expression.substr(3), this.doctype, this.docname);\n\t\t} else {\n\t\t\tvar value = doc[expression];\n\t\t\tif ($.isArray(value)) {\n\t\t\t\tout = !!value.length;\n\t\t\t} else {\n\t\t\t\tout = !!value;\n\t\t\t}\n\t\t}\n\n\t\treturn out;\n\t}\n\n\tmake_column(df, colsize, txt, ci) {\n\t\tlet me = this;\n\t\tvar add_class = (([\"Text\", \"Small Text\"].indexOf(df.fieldtype)!==-1) ?\n\t\t\t\" grid-overflow-no-ellipsis\" : \"\");\n\t\tadd_class += ([\"Int\", \"Currency\", \"Float\", \"Percent\"].indexOf(df.fieldtype)!==-1) ?\n\t\t\t\" text-right\": \"\";\n\t\tadd_class += ([\"Check\"].indexOf(df.fieldtype)!==-1) ?\n\t\t\t\" text-center\": \"\";\n\n\t\tvar $col = $('
    ')\n\t\t\t.attr(\"data-fieldname\", df.fieldname)\n\t\t\t.attr(\"data-fieldtype\", df.fieldtype)\n\t\t\t.data(\"df\", df)\n\t\t\t.appendTo(this.row)\n\t\t\t.on('click', function() {\n\t\t\t\tif(frappe.ui.form.editable_row===me) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tvar out = me.toggle_editable_row();\n\t\t\t\tvar col = this;\n\t\t\t\tsetTimeout(function() {\n\t\t\t\t\t$(col).find('input[type=\"Text\"]:first').focus();\n\t\t\t\t}, 500);\n\t\t\t\treturn out;\n\t\t\t});\n\n\t\t$col.field_area = $('
    ').appendTo($col).toggle(false);\n\t\t$col.static_area = $('
    ').appendTo($col).html(txt);\n\n\t\t// set title attribute to see full label for columns in the heading row\n\t\tif (!this.doc) {\n\t\t\t$col.attr(\"title\", txt);\n\t\t}\n\n\t\t$col.df = df;\n\t\t$col.column_index = ci;\n\n\t\tthis.columns[df.fieldname] = $col;\n\t\tthis.columns_list.push($col);\n\n\t\treturn $col;\n\t}\n\n\tactivate() {\n\t\tthis.toggle_editable_row(true);\n\t\treturn this;\n\t}\n\n\ttoggle_editable_row(show) {\n\t\tvar me = this;\n\t\t// show static for field based on\n\t\t// whether grid is editable\n\t\tif(this.grid.allow_on_grid_editing() && this.grid.is_editable() && this.doc && show !== false) {\n\n\t\t\t// disable other editable row\n\t\t\tif(frappe.ui.form.editable_row\n\t\t\t\t&& frappe.ui.form.editable_row !== this) {\n\t\t\t\tfrappe.ui.form.editable_row.toggle_editable_row(false);\n\t\t\t}\n\n\t\t\tthis.row.toggleClass('editable-row', true);\n\n\t\t\t// setup controls\n\t\t\tthis.columns_list.forEach(function(column) {\n\t\t\t\tme.make_control(column);\n\t\t\t\tcolumn.static_area.toggle(false);\n\t\t\t\tcolumn.field_area.toggle(true);\n\t\t\t});\n\n\t\t\tfrappe.ui.form.editable_row = this;\n\t\t\treturn false;\n\t\t} else {\n\t\t\tthis.row.toggleClass('editable-row', false);\n\n\t\t\tthis.columns_list.forEach((column, index) => {\n\n\t\t\t\tif(!this.frm) {\n\t\t\t\t\tlet df = this.grid.visible_columns[index][0]\n\n\t\t\t\t\tlet txt = this.doc ?\n\t\t\t\t\t\tfrappe.format(this.doc[df.fieldname], df, null, this.doc) :\n\t\t\t\t\t\t__(df.label);\n\n\t\t\t\t\tthis.refresh_field(df.fieldname, txt)\n\t\t\t\t}\n\n\t\t\t\tif (!column.df.hidden) {\n\t\t\t\t\tcolumn.static_area.toggle(true);\n\t\t\t\t}\n\n\t\t\t\tcolumn.field_area && column.field_area.toggle(false);\n\t\t\t});\n\t\t\tfrappe.ui.form.editable_row = null;\n\t\t}\n\t}\n\n\tmake_control(column) {\n\t\tif(column.field) return;\n\n\t\tvar me = this,\n\t\t\tparent = column.field_area,\n\t\t\tdf = column.df;\n\n\t\t// no text editor in grid\n\t\tif (df.fieldtype=='Text Editor') {\n\t\t\tdf = Object.assign({}, df);\n\t\t\tdf.fieldtype = 'Text';\n\t\t}\n\n\t\tvar field = frappe.ui.form.make_control({\n\t\t\tdf: df,\n\t\t\tparent: parent,\n\t\t\tonly_input: true,\n\t\t\twith_link_btn: true,\n\t\t\tdoc: this.doc,\n\t\t\tdoctype: this.doc.doctype,\n\t\t\tdocname: this.doc.name,\n\t\t\tfrm: this.grid.frm,\n\t\t\tgrid: this.grid,\n\t\t\tgrid_row: this,\n\t\t\tvalue: this.doc[df.fieldname]\n\t\t});\n\n\t\t// sync get_query\n\t\tfield.get_query = this.grid.get_field(df.fieldname).get_query;\n\n\t\tif (!field.df.onchange_modified) {\n\t\t\tvar field_on_change_function = field.df.onchange;\n\t\t\tfield.df.onchange = (e) => {\n\t\t\t\tfield_on_change_function && field_on_change_function(e);\n\t\t\t\tthis.refresh_field(field.df.fieldname);\n\t\t\t};\n\n\t\t\tfield.df.onchange_modified = true;\n\t\t}\n\n\t\tfield.refresh();\n\t\tif(field.$input) {\n\t\t\tfield.$input\n\t\t\t\t.addClass('input-sm')\n\t\t\t\t.attr('data-col-idx', column.column_index)\n\t\t\t\t.attr('placeholder', __(df.placeholder || df.label));\n\t\t\t// flag list input\n\t\t\tif (this.columns_list && this.columns_list.slice(-1)[0]===column) {\n\t\t\t\tfield.$input.attr('data-last-input', 1);\n\t\t\t}\n\t\t}\n\n\t\tthis.set_arrow_keys(field);\n\t\tcolumn.field = field;\n\t\tthis.on_grid_fields_dict[df.fieldname] = field;\n\t\tthis.on_grid_fields.push(field);\n\n\t}\n\n\tset_arrow_keys(field) {\n\t\tvar me = this;\n\t\tlet ignore_fieldtypes = ['Text', 'Small Text', 'Code', 'Text Editor', 'HTML Editor'];\n\t\tif (field.$input) {\n\t\t\tfield.$input.on('keydown', function(e) {\n\t\t\t\tvar { TAB, UP: UP_ARROW, DOWN: DOWN_ARROW } = frappe.ui.keyCode;\n\t\t\t\tif (!in_list([TAB, UP_ARROW, DOWN_ARROW], e.which)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar values = me.grid.get_data();\n\t\t\t\tvar fieldname = $(this).attr('data-fieldname');\n\t\t\t\tvar fieldtype = $(this).attr('data-fieldtype');\n\n\t\t\t\tlet ctrl_key = e.metaKey || e.ctrlKey;\n\t\t\t\tif (!in_list(ignore_fieldtypes, fieldtype)\n\t\t\t\t\t&& ctrl_key && e.which !== TAB) {\n\t\t\t\t\tme.add_new_row_using_keys(e);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (e.shiftKey && e.altKey && DOWN_ARROW === e.which) {\n\t\t\t\t\tme.duplicate_row_using_keys();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar move_up_down = function(base) {\n\t\t\t\t\tif (in_list(ignore_fieldtypes, fieldtype) && !e.altKey) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tif (field.autocomplete_open) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\tbase.toggle_editable_row();\n\t\t\t\t\tvar input = base.columns[fieldname].field.$input;\n\t\t\t\t\tif (input) {\n\t\t\t\t\t\tinput.focus();\n\t\t\t\t\t}\n\t\t\t\t\treturn true;\n\t\t\t\t};\n\n\t\t\t\t// TAB\n\t\t\t\tif (e.which === TAB && !e.shiftKey) {\n\t\t\t\t\tvar last_column = me.wrapper.find(':input:enabled:last').get(0);\n\t\t\t\t\tvar is_last_column = $(this).attr('data-last-input') || last_column === this;\n\n\t\t\t\t\tif (is_last_column) {\n\t\t\t\t\t\t// last row\n\t\t\t\t\t\tif (me.doc.idx === values.length) {\n\t\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\t\tme.grid.add_new_row(null, null, true);\n\t\t\t\t\t\t\t\tme.grid.grid_rows[me.grid.grid_rows.length - 1].toggle_editable_row();\n\t\t\t\t\t\t\t\tme.grid.set_focus_on_row();\n\t\t\t\t\t\t\t}, 100);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// last column before last row\n\t\t\t\t\t\t\tme.grid.grid_rows[me.doc.idx].toggle_editable_row();\n\t\t\t\t\t\t\tme.grid.set_focus_on_row(me.doc.idx);\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else if (e.which === UP_ARROW) {\n\t\t\t\t\tif (me.doc.idx > 1) {\n\t\t\t\t\t\tvar prev = me.grid.grid_rows[me.doc.idx-2];\n\t\t\t\t\t\tif (move_up_down(prev)) {\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else if (e.which === DOWN_ARROW) {\n\t\t\t\t\tif (me.doc.idx < values.length) {\n\t\t\t\t\t\tvar next = me.grid.grid_rows[me.doc.idx];\n\t\t\t\t\t\tif (move_up_down(next)) {\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t});\n\t\t}\n\t}\n\n\tduplicate_row_using_keys() {\n\t\tsetTimeout(() => {\n\t\t\tthis.insert(false, true, true);\n\t\t\tthis.grid.grid_rows[this.doc.idx].toggle_editable_row();\n\t\t\tthis.grid.set_focus_on_row(this.doc.idx);\n\t\t}, 100);\n\t}\n\n\tadd_new_row_using_keys(e) {\n\t\tlet idx = '';\n\n\t\tlet ctrl_key = e.metaKey || e.ctrlKey;\n\t\tlet is_down_arrow_key_press = (e.which === 40);\n\n\t\t// Add new row at the end or start of the table\n\t\tif (ctrl_key && e.shiftKey) {\n\t\t\tidx = is_down_arrow_key_press ? null : 1;\n\t\t\tthis.grid.add_new_row(idx, null, is_down_arrow_key_press,\n\t\t\t\tfalse, is_down_arrow_key_press, !is_down_arrow_key_press);\n\t\t\tidx = is_down_arrow_key_press ? (cint(this.grid.grid_rows.length) - 1) : 0;\n\n\t\t} else if (ctrl_key) {\n\t\t\tidx = is_down_arrow_key_press ? this.doc.idx : (this.doc.idx - 1);\n\t\t\tthis.insert(false, is_down_arrow_key_press);\n\t\t}\n\n\t\tif (idx !== '') {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.grid.grid_rows[idx].toggle_editable_row();\n\t\t\t\tthis.grid.set_focus_on_row(idx);\n\t\t\t}, 100);\n\t\t}\n\t}\n\n\tget_open_form() {\n\t\treturn frappe.ui.form.get_open_grid_form();\n\t}\n\n\ttoggle_view(show, callback) {\n\t\tif(!this.doc) {\n\t\t\treturn this;\n\t\t}\n\n\t\tif(this.frm) {\n\t\t\t// reload doc\n\t\t\tthis.doc = locals[this.doc.doctype][this.doc.name];\n\t\t}\n\n\t\t// hide other\n\t\tvar open_row = this.get_open_form();\n\n\t\tif (show === undefined) show = !open_row;\n\n\t\t// call blur\n\t\tdocument.activeElement && document.activeElement.blur();\n\n\t\tif(show && open_row) {\n\t\t\tif(open_row==this) {\n\t\t\t\t// already open, do nothing\n\t\t\t\tcallback && callback();\n\t\t\t\treturn;\n\t\t\t} else {\n\t\t\t\t// close other views\n\t\t\t\topen_row.toggle_view(false);\n\t\t\t}\n\t\t}\n\n\t\tif(show) {\n\t\t\tthis.show_form();\n\t\t} else {\n\t\t\tthis.hide_form();\n\t\t}\n\t\tcallback && callback();\n\n\t\treturn this;\n\t}\n\tshow_form() {\n\t\tif (!this.grid_form) {\n\t\t\tthis.grid_form = new GridRowForm({\n\t\t\t\trow: this\n\t\t\t});\n\t\t}\n\t\tthis.grid_form.render();\n\t\tthis.row.toggle(false);\n\t\t// this.form_panel.toggle(true);\n\n\t\tlet cannot_add_rows = this.grid.cannot_add_rows || (this.grid.df && this.grid.df.cannot_add_rows);\n\t\tthis.wrapper\n\t\t\t.find('.grid-insert-row-below, .grid-insert-row, .grid-duplicate-row, .grid-append-row')\n\t\t\t.toggle(!cannot_add_rows);\n\n\t\tthis.wrapper.find('.grid-delete-row')\n\t\t\t.toggle(!(this.grid.df && this.grid.df.cannot_delete_rows));\n\n\t\tfrappe.dom.freeze(\"\", \"dark\");\n\t\tif (cur_frm) cur_frm.cur_grid = this;\n\t\tthis.wrapper.addClass(\"grid-row-open\");\n\t\tif (!frappe.dom.is_element_in_viewport(this.wrapper)\n\t\t\t&& !frappe.dom.is_element_in_modal(this.wrapper)) {\n\t\t\t// -15 offset to make form look visually centered\n\t\t\tfrappe.utils.scroll_to(this.wrapper, true, -15);\n\t\t}\n\n\t\tif (this.frm) {\n\t\t\tthis.frm.script_manager.trigger(this.doc.parentfield + \"_on_form_rendered\");\n\t\t\tthis.frm.script_manager.trigger(\"form_render\", this.doc.doctype, this.doc.name);\n\t\t}\n\t}\n\thide_form() {\n\t\tfrappe.dom.unfreeze();\n\t\tthis.row.toggle(true);\n\t\tif (!frappe.dom.is_element_in_modal(this.row)) {\n\t\t\tfrappe.utils.scroll_to(this.row, true, 15);\n\t\t}\n\t\tthis.refresh();\n\t\tif(cur_frm) cur_frm.cur_grid = null;\n\t\tthis.wrapper.removeClass(\"grid-row-open\");\n\t}\n\topen_prev() {\n\t\tif (!this.doc) return;\n\t\tthis.open_row_at_index(this.doc.idx - 2);\n\t}\n\topen_next() {\n\t\tif (!this.doc) return;\n\n\t\tif (!this.open_row_at_index(this.doc.idx)) {\n\t\t\tthis.grid.add_new_row(null, null, true);\n\t\t}\n\t}\n\topen_row_at_index(row_index) {\n\t\tif (!this.grid.data[row_index]) return;\n\n\t\tthis.change_page_if_reqd(row_index);\n\t\tthis.grid.grid_rows[row_index].toggle_view(true);\n\t\treturn true;\n\t}\n\tchange_page_if_reqd(row_index) {\n\t\tconst {\n\t\t\tpage_index,\n\t\t\tpage_length\n\t\t} = this.grid.grid_pagination;\n\n\t\trow_index++;\n\t\tlet new_page;\n\n\t\tif (row_index <= (page_index - 1) * page_length) {\n\t\t\tnew_page = page_index - 1;\n\t\t} else if (row_index > page_index * page_length) {\n\t\t\tnew_page = page_index + 1;\n\t\t}\n\n\t\tif (new_page) {\n\t\t\tthis.grid.grid_pagination.go_to_page(new_page);\n\t\t}\n\t}\n\trefresh_field(fieldname, txt) {\n\t\tlet df = this.docfields.find(col => {\n\t\t\treturn col.fieldname === fieldname;\n\t\t});\n\n\t\t// format values if no frm\n\t\tif (df && this.doc) {\n\t\t\ttxt = frappe.format(this.doc[fieldname], df, null, this.doc);\n\t\t}\n\n\t\tif (!txt && this.frm) {\n\t\t\ttxt = frappe.format(this.doc[fieldname], df, null, this.frm.doc);\n\t\t}\n\n\t\t// reset static value\n\t\tlet column = this.columns[fieldname];\n\t\tif (column) {\n\t\t\tcolumn.static_area.html(txt || \"\");\n\t\t\tif (df && df.reqd) {\n\t\t\t\tcolumn.toggleClass('error', !!(txt === null || txt === ''));\n\t\t\t}\n\t\t}\n\n\t\tlet field = this.on_grid_fields_dict[fieldname];\n\t\t// reset field value\n\t\tif (field) {\n\t\t\tfield.docname = this.doc.name;\n\t\t\tfield.refresh();\n\t\t}\n\n\t\t// in form\n\t\tif (this.grid_form) {\n\t\t\tthis.grid_form.refresh_field(fieldname);\n\t\t}\n\t}\n\tget_field(fieldname) {\n\t\tlet field = this.on_grid_fields_dict[fieldname];\n\t\tif (field) {\n\t\t\treturn field;\n\t\t} else if(this.grid_form) {\n\t\t\treturn this.grid_form.fields_dict[fieldname];\n\t\t} else {\n\t\t\tthrow `fieldname ${fieldname} not found`;\n\t\t}\n\t}\n\n\tget_visible_columns(blacklist=[]) {\n\t\tvar me = this;\n\t\tvar visible_columns = $.map(this.docfields, function(df) {\n\t\t\tvar visible = !df.hidden && df.in_list_view && me.grid.frm.get_perm(df.permlevel, \"read\")\n\t\t\t\t&& !in_list(frappe.model.layout_fields, df.fieldtype) && !in_list(blacklist, df.fieldname);\n\n\t\t\treturn visible ? df : null;\n\t\t});\n\t\treturn visible_columns;\n\t}\n\tset_field_property(fieldname, property, value) {\n\t\t// set a field property for open form / grid form\n\t\tvar me = this;\n\n\t\tvar set_property = function(field) {\n\t\t\tif(!field) return;\n\t\t\tfield.df[property] = value;\n\t\t\tfield.refresh();\n\t\t}\n\n\t\t// set property in grid form\n\t\tif(this.grid_form) {\n\t\t\tset_property(this.grid_form.fields_dict[fieldname]);\n\t\t\tthis.grid_form.layout && this.grid_form.layout.refresh_sections();\n\t\t}\n\n\t\t// set property in on grid fields\n\t\tset_property(this.on_grid_fields_dict[fieldname]);\n\t}\n\ttoggle_reqd(fieldname, reqd) {\n\t\tthis.set_field_property(fieldname, 'reqd', reqd ? 1 : 0);\n\t}\n\ttoggle_display(fieldname, show) {\n\t\tthis.set_field_property(fieldname, 'hidden', show ? 0 : 1);\n\t}\n\ttoggle_editable(fieldname, editable) {\n\t\tthis.set_field_property(fieldname, 'read_only', editable ? 0 : 1);\n\t}\n};\n","export default class GridPagination {\n\n\tconstructor(opts) {\n\t\t$.extend(this, opts);\n\t\tthis.setup_pagination();\n\t}\n\n\tsetup_pagination() {\n\t\tthis.page_length = 50;\n\t\tthis.page_index = 1;\n\t\tthis.total_pages = Math.ceil(this.grid.data.length/this.page_length);\n\n\t\tthis.render_pagination();\n\t}\n\n\trender_pagination() {\n\t\tif (this.grid.data.length <= this.page_length) {\n\t\t\tthis.wrapper.find('.grid-pagination').html('');\n\t\t} else {\n\t\t\tlet $pagination_template = this.get_pagination_html();\n\t\t\tthis.wrapper.find('.grid-pagination').html($pagination_template);\n\t\t\tthis.prev_page_button = this.wrapper.find('.prev-page');\n\t\t\tthis.next_page_button = this.wrapper.find('.next-page');\n\t\t\tthis.$page_number = this.wrapper.find('.current-page-number');\n\t\t\tthis.$total_pages = this.wrapper.find('.total-page-number');\n\t\t\tthis.first_page_button = this.wrapper.find('.first-page');\n\t\t\tthis.last_page_button = this.wrapper.find('.last-page');\n\n\t\t\tthis.bind_pagination_events();\n\t\t}\n\t}\n\n\tbind_pagination_events() {\n\t\tthis.prev_page_button.on('click', () => {\n\t\t\tthis.render_prev_page();\n\t\t});\n\n\t\tthis.next_page_button.on('click', () => {\n\t\t\tthis.render_next_page();\n\t\t});\n\n\t\tthis.first_page_button.on('click', () => {\n\t\t\tthis.go_to_page(1);\n\t\t});\n\n\t\tthis.last_page_button.on('click', () => {\n\t\t\tthis.go_to_page(this.total_pages);\n\t\t});\n\n\t\tthis.$page_number.on('keyup', (e) => {\n\t\t\te.currentTarget.style.width = ((e.currentTarget.value.length + 1) * 8) + 'px';\n\t\t});\n\n\t\tthis.$page_number.on('keydown', (e) => {\n\t\t\te = (e) ? e : window.event;\n\t\t\tvar charCode = (e.which) ? e.which : e.keyCode;\n\t\t\tlet arrow = { up: 38, down: 40 };\n\n\t\t\tswitch (charCode) {\n\t\t\t\tcase arrow.up:\n\t\t\t\t\tthis.inc_dec_number(true);\n\t\t\t\t\tbreak;\n\t\t\t\tcase arrow.down:\n\t\t\t\t\tthis.inc_dec_number(false);\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// only allow numbers from 0-9 and up, down, left, right arrow keys\n\t\t\tif (charCode > 31 && (charCode < 48 || charCode > 57) &&\n\t\t\t\t![37, 38, 39, 40].includes(charCode)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn true;\n\t\t});\n\n\t\tthis.$page_number.on('focusout', (e) => {\n\t\t\tif (this.page_index == e.currentTarget.value) return;\n\t\t\tthis.page_index = e.currentTarget.value;\n\n\t\t\tif (this.page_index < 1) {\n\t\t\t\tthis.page_index = 1;\n\t\t\t} else if (this.page_index > this.total_pages) {\n\t\t\t\tthis.page_index = this.total_pages;\n\t\t\t}\n\n\t\t\tthis.go_to_page();\n\t\t});\n\t}\n\n\tinc_dec_number(increment) {\n\t\tlet new_value = parseInt(this.$page_number.val());\n\t\tincrement ? new_value++ : new_value--;\n\n\t\tif (new_value < 1 || new_value > this.total_pages) return;\n\n\t\tthis.$page_number.val(new_value);\n\t}\n\n\tupdate_page_numbers() {\n\t\tlet total_pages = Math.ceil(this.grid.data.length/this.page_length);\n\t\tif (this.total_pages !== total_pages) {\n\t\t\tthis.total_pages = total_pages;\n\t\t\tthis.render_pagination();\n\t\t}\n\t}\n\n\tcheck_page_number() {\n\t\tif (this.page_index > this.total_pages && this.page_index > 1) {\n\t\t\tthis.go_to_page(this.page_index-1);\n\t\t}\n\t}\n\n\tget_pagination_html() {\n\t\tlet page_text_html = `
    \n\t\t\t\t\n\t\t\t\t${__('of')}\n\t\t\t\t ${__(this.total_pages)} \n\t\t\t
    `;\n\n\t\treturn $(`\n\t\t\t\n\t\t\t${page_text_html}\n\t\t\t\n\t\t\t`);\n\t}\n\n\trender_next_page() {\n\t\tif (this.page_index*this.page_length < this.grid.data.length) {\n\t\t\tthis.page_index++;\n\t\t\tthis.go_to_page();\n\t\t}\n\t}\n\n\trender_prev_page() {\n\t\tif (this.page_index > 1) {\n\t\t\tthis.page_index--;\n\t\t\tthis.go_to_page();\n\t\t}\n\t}\n\n\tgo_to_page(index, from_refresh) {\n\t\tif (!index) {\n\t\t\tindex = this.page_index;\n\t\t} else {\n\t\t\tthis.page_index = index;\n\t\t}\n\t\tlet $rows = $(this.grid.parent).find(\".rows\").empty();\n\t\tthis.grid.render_result_rows($rows, true);\n\t\tif (this.$page_number) {\n\t\t\tthis.$page_number.val(index);\n\t\t\tthis.$page_number.css('width', ((index.toString().length + 1) * 8) + 'px');\n\t\t}\n\n\t\tthis.update_page_numbers();\n\t\tif (!from_refresh) {\n\t\t\tthis.grid.scroll_to_top();\n\t\t}\n\t}\n\n\tgo_to_last_page_to_add_row() {\n\t\tlet total_pages = this.total_pages;\n\t\tlet page_length = this.page_length;\n\t\tif (this.grid.data.length == page_length*total_pages) {\n\t\t\tthis.go_to_page(total_pages + 1);\n\t\t\tfrappe.utils.scroll_to(this.wrapper);\n\t\t} else if (this.page_index == this.total_pages) {\n\t\t\treturn;\n\t\t} else {\n\t\t\tthis.go_to_page(total_pages);\n\t\t}\n\t}\n\n\tget_result_length() {\n\t\treturn this.grid.data.length < this.page_index*this.page_length\n\t\t\t? this.grid.data.length\n\t\t\t: this.page_index*this.page_length;\n\t}\n\n}","// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors\n// MIT License. See license.txt\n\nimport GridRow from \"./grid_row\";\nimport GridPagination from './grid_pagination';\n\nfrappe.ui.form.get_open_grid_form = function () {\n\treturn $(\".grid-row-open\").data(\"grid_row\");\n}\n\nfrappe.ui.form.close_grid_form = function () {\n\tvar open_form = frappe.ui.form.get_open_grid_form();\n\topen_form && open_form.hide_form();\n\n\t// hide editable row too\n\tif (frappe.ui.form.editable_row) {\n\t\tfrappe.ui.form.editable_row.toggle_editable_row(false);\n\t}\n}\n\n\nexport default class Grid {\n\tconstructor(opts) {\n\t\t$.extend(this, opts);\n\t\tthis.fieldinfo = {};\n\t\tthis.doctype = this.df.options;\n\n\t\tif (this.doctype) {\n\t\t\tthis.meta = frappe.get_meta(this.doctype);\n\t\t}\n\t\tthis.fields_map = {};\n\t\tthis.template = null;\n\t\tthis.multiple_set = false;\n\t\tif (this.frm && this.frm.meta.__form_grid_templates\n\t\t\t&& this.frm.meta.__form_grid_templates[this.df.fieldname]) {\n\t\t\tthis.template = this.frm.meta.__form_grid_templates[this.df.fieldname];\n\t\t}\n\n\t\tthis.is_grid = true;\n\t\tthis.debounced_refresh = this.refresh.bind(this);\n\t\tthis.debounced_refresh = frappe.utils.debounce(this.debounced_refresh, 100);\n\t}\n\n\tallow_on_grid_editing() {\n\t\tif (frappe.utils.is_xs()) {\n\t\t\treturn false;\n\t\t} else if (this.meta && this.meta.editable_grid || !this.meta) {\n\t\t\treturn true;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\tmake() {\n\t\tlet template = `\n\t\t\t\n\t\t\t

    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t${__(\"No Data\")}\n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t
    \n\t\t\t
    \n\t\t`;\n\n\t\tthis.wrapper = $(template).appendTo(this.parent);\n\t\t$(this.parent).addClass('form-group');\n\t\tthis.set_grid_description();\n\n\t\tfrappe.utils.bind_actions_with_object(this.wrapper, this);\n\n\t\tthis.form_grid = this.wrapper.find('.form-grid');\n\n\t\tthis.setup_add_row();\n\n\t\tthis.setup_grid_pagination();\n\n\t\tthis.custom_buttons = {};\n\t\tthis.grid_buttons = this.wrapper.find('.grid-buttons');\n\t\tthis.grid_custom_buttons = this.wrapper.find('.grid-custom-buttons');\n\t\tthis.remove_rows_button = this.grid_buttons.find('.grid-remove-rows');\n\t\tthis.remove_all_rows_button = this.grid_buttons.find('.grid-remove-all-rows');\n\n\t\tthis.setup_allow_bulk_edit();\n\t\tthis.setup_check();\n\t\tif (this.df.on_setup) {\n\t\t\tthis.df.on_setup(this);\n\t\t}\n\t}\n\tset_grid_description() {\n\t\tlet description_wrapper = $(this.parent).find('.grid-description');\n\t\tif (this.df.description) {\n\t\t\tdescription_wrapper.text(__(this.df.description));\n\t\t} else {\n\t\t\tdescription_wrapper.hide();\n\t\t}\n\t}\n\tsetup_grid_pagination() {\n\t\tthis.grid_pagination = new GridPagination({\n\t\t\tgrid: this,\n\t\t\twrapper: this.wrapper,\n\t\t});\n\t}\n\n\tsetup_check() {\n\n\t\tthis.wrapper.on('click', '.grid-row-check', (e) => {\n\t\t\tvar $check = $(e.currentTarget);\n\t\t\tif ($check.parents('.grid-heading-row:first').length !== 0) {\n\t\t\t\t// select all?\n\t\t\t\tvar checked = $check.prop('checked');\n\t\t\t\t$check.parents('.form-grid:first')\n\t\t\t\t\t.find('.grid-row-check').prop('checked', checked);\n\n\t\t\t\t// set all\n\t\t\t\tlet result_length = this.grid_pagination.get_result_length();\n\t\t\t\tlet page_index = this.grid_pagination.page_index;\n\t\t\t\tlet page_length = this.grid_pagination.page_length;\n\t\t\t\tfor (var ri = (page_index - 1) * page_length; ri < result_length; ri++) {\n\t\t\t\t\tthis.grid_rows[ri].doc.__checked = checked ? 1 : 0;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tvar docname = $check.parents('.grid-row:first').attr('data-name');\n\t\t\t\tthis.grid_rows_by_docname[docname].select($check.prop('checked'));\n\t\t\t}\n\t\t\tthis.refresh_remove_rows_button();\n\t\t});\n\n\t}\n\n\tdelete_rows() {\n\t\tvar dirty = false;\n\n\t\tlet tasks = [];\n\t\tlet selected_children = this.get_selected_children();\n\t\tselected_children.forEach(doc => {\n\t\t\ttasks.push(() => {\n\t\t\t\tif (!this.frm) {\n\t\t\t\t\tthis.df.data = this.get_data();\n\t\t\t\t\tthis.df.data = this.df.data.filter(row => row.idx != doc.idx);\n\t\t\t\t}\n\t\t\t\tthis.grid_rows_by_docname[doc.name].remove();\n\t\t\t\tdirty = true;\n\t\t\t});\n\t\t\ttasks.push(() => frappe.timeout(0.1));\n\t\t});\n\n\t\tif (!this.frm) {\n\t\t\ttasks.push(() => {\n\t\t\t\t// reorder idx of df.data\n\t\t\t\tthis.df.data.forEach((row, index) => row.idx = index + 1);\n\t\t\t});\n\t\t}\n\n\t\ttasks.push(() => {\n\t\t\tif (dirty) {\n\t\t\t\tthis.refresh();\n\t\t\t\tthis.frm && this.frm.script_manager.trigger(this.df.fieldname + \"_delete\", this.doctype);\n\t\t\t}\n\t\t});\n\n\t\tfrappe.run_serially(tasks);\n\n\t\tthis.wrapper.find('.grid-heading-row .grid-row-check:checked:first').prop('checked', 0);\n\t\tif (selected_children.length == this.grid_pagination.page_length) {\n\t\t\tthis.scroll_to_top();\n\t\t}\n\t}\n\n\tdelete_all_rows() {\n\t\tfrappe.confirm(__(\"Are you sure you want to delete all rows?\"), () => {\n\t\t\tthis.frm.doc[this.df.fieldname] = [];\n\t\t\t$(this.parent).find('.rows').empty();\n\t\t\tthis.grid_rows = [];\n\t\t\tthis.refresh();\n\t\t\tthis.frm && this.frm.script_manager.trigger(this.df.fieldname + \"_delete\", this.doctype);\n\t\t\tthis.frm && this.frm.dirty();\n\t\t\tthis.scroll_to_top();\n\t\t});\n\t}\n\n\tscroll_to_top() {\n\t\tfrappe.utils.scroll_to(this.wrapper);\n\t}\n\n\tselect_row(name) {\n\t\tthis.grid_rows_by_docname[name].select();\n\t}\n\n\tremove_all() {\n\t\tthis.grid_rows.forEach(row => {\n\t\t\trow.remove();\n\t\t});\n\t}\n\n\trefresh_remove_rows_button() {\n\t\tif (this.df.cannot_delete_rows) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.remove_rows_button.toggleClass('hidden',\n\t\t\tthis.wrapper.find('.grid-body .grid-row-check:checked:first').length ? false : true);\n\n\t\tlet select_all_checkbox_checked = this.wrapper.find('.grid-heading-row .grid-row-check:checked:first').length;\n\t\tlet show_delete_all_btn = select_all_checkbox_checked && this.data.length > this.get_selected_children().length;\n\t\tthis.remove_all_rows_button.toggleClass('hidden', !show_delete_all_btn);\n\t}\n\n\tget_selected() {\n\t\treturn (this.grid_rows || []).map(row => {\n\t\t\treturn row.doc.__checked ? row.doc.name : null;\n\t\t}).filter(d => {\n\t\t\treturn d;\n\t\t});\n\t}\n\n\tget_selected_children() {\n\t\treturn (this.grid_rows || []).map(row => {\n\t\t\treturn row.doc.__checked ? row.doc : null;\n\t\t}).filter(d => {\n\t\t\treturn d;\n\t\t});\n\t}\n\n\treset_grid() {\n\t\tthis.visible_columns = [];\n\t\tthis.grid_rows = [];\n\n\t\t$(this.parent).find(\".grid-body .grid-row\").remove();\n\t\tthis.refresh();\n\t}\n\n\tmake_head() {\n\t\t// labels\n\t\tif (this.header_row) {\n\t\t\t$(this.parent).find(\".grid-heading-row .grid-row\").remove();\n\t\t}\n\t\tthis.header_row = new GridRow({\n\t\t\tparent: $(this.parent).find(\".grid-heading-row\"),\n\t\t\tparent_df: this.df,\n\t\t\tdocfields: this.docfields,\n\t\t\tfrm: this.frm,\n\t\t\tgrid: this,\n\t\t\tconfigure_columns: true\n\t\t});\n\t}\n\n\trefresh(force) {\n\t\tif (this.frm && this.frm.setting_dependency) return;\n\n\t\tthis.data = this.get_data();\n\n\t\t!this.wrapper && this.make();\n\t\tlet $rows = $(this.parent).find('.rows');\n\n\t\tthis.setup_fields();\n\n\t\tif (this.frm) {\n\t\t\tthis.display_status = frappe.perm.get_field_display_status(this.df, this.frm.doc,\n\t\t\t\tthis.perm);\n\t\t} else if (this.df.is_web_form && this.control) {\n\t\t\tthis.display_status = this.control.get_status();\n\t\t} else {\n\t\t\t// not in form\n\t\t\tthis.display_status = 'Write';\n\t\t}\n\n\t\tif (this.display_status === \"None\") return;\n\n\t\t// redraw\n\t\tthis.make_head();\n\n\t\tif (!this.grid_rows) {\n\t\t\tthis.grid_rows = [];\n\t\t}\n\n\t\tthis.truncate_rows();\n\t\tthis.grid_rows_by_docname = {};\n\n\t\tthis.grid_pagination.update_page_numbers();\n\t\tthis.render_result_rows($rows, false);\n\t\tthis.grid_pagination.check_page_number();\n\t\tthis.wrapper.find('.grid-empty').toggleClass('hidden', Boolean(this.data.length));\n\n\t\t// toolbar\n\t\tthis.setup_toolbar();\n\t\tthis.toggle_checkboxes(this.display_status !== 'Read');\n\n\t\t// sortable\n\t\tif (this.frm && this.is_sortable() && !this.sortable_setup_done) {\n\t\t\tthis.make_sortable($rows);\n\t\t\tthis.sortable_setup_done = true;\n\t\t}\n\n\t\tthis.last_display_status = this.display_status;\n\t\tthis.last_docname = this.frm && this.frm.docname;\n\n\t\t// red if mandatory\n\t\tthis.form_grid.toggleClass('error', !!(this.df.reqd && !(this.data && this.data.length)));\n\n\t\tthis.refresh_remove_rows_button();\n\n\t\tthis.wrapper.trigger('change');\n\t}\n\n\n\trender_result_rows($rows, append_row) {\n\t\tlet result_length = this.grid_pagination.get_result_length();\n\t\tlet page_index = this.grid_pagination.page_index;\n\t\tlet page_length = this.grid_pagination.page_length;\n\t\tif (!this.grid_rows) {\n\t\t\treturn;\n\t\t}\n\t\tfor (var ri = (page_index - 1) * page_length; ri < result_length; ri++) {\n\t\t\tvar d = this.data[ri];\n\t\t\tif (!d) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (d.idx === undefined) {\n\t\t\t\td.idx = ri + 1;\n\t\t\t}\n\t\t\tif (d.name === undefined) {\n\t\t\t\td.name = \"row \" + d.idx;\n\t\t\t}\n\t\t\tif (this.grid_rows[ri] && !append_row) {\n\t\t\t\tvar grid_row = this.grid_rows[ri];\n\t\t\t\tgrid_row.doc = d;\n\t\t\t\tgrid_row.refresh();\n\t\t\t} else {\n\t\t\t\tvar grid_row = new GridRow({\n\t\t\t\t\tparent: $rows,\n\t\t\t\t\tparent_df: this.df,\n\t\t\t\t\tdocfields: this.docfields,\n\t\t\t\t\tdoc: d,\n\t\t\t\t\tfrm: this.frm,\n\t\t\t\t\tgrid: this\n\t\t\t\t});\n\t\t\t\tthis.grid_rows[ri] = grid_row;\n\t\t\t}\n\n\t\t\tthis.grid_rows_by_docname[d.name] = grid_row;\n\t\t}\n\t}\n\n\tsetup_toolbar() {\n\n\t\tif (this.is_editable()) {\n\t\t\tthis.wrapper.find('.grid-footer').toggle(true);\n\n\t\t\t// show, hide buttons to add rows\n\t\t\tif (this.cannot_add_rows || (this.df && this.df.cannot_add_rows)) {\n\t\t\t\t// add 'hidden' to buttons\n\t\t\t\tthis.wrapper.find('.grid-add-row, .grid-add-multiple-rows')\n\t\t\t\t\t.addClass('hidden');\n\t\t\t} else {\n\t\t\t\t// show buttons\n\t\t\t\tthis.wrapper.find('.grid-add-row').removeClass('hidden');\n\n\t\t\t\tif (this.multiple_set) {\n\t\t\t\t\tthis.wrapper.find('.grid-add-multiple-rows').removeClass('hidden');\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (this.grid_rows.length < this.grid_pagination.page_length) {\n\t\t\tthis.wrapper.find('.grid-footer').toggle(false);\n\t\t}\n\n\t\tthis.wrapper.find('.grid-add-row, .grid-add-multiple-rows').toggle(this.is_editable());\n\n\t}\n\n\ttruncate_rows() {\n\t\tif (this.grid_rows.length > this.data.length) {\n\t\t\t// remove extra rows\n\t\t\tfor (var i = this.data.length; i < this.grid_rows.length; i++) {\n\t\t\t\tvar grid_row = this.grid_rows[i];\n\t\t\t\tif (grid_row) grid_row.wrapper.remove();\n\t\t\t}\n\t\t\tthis.grid_rows.splice(this.data.length);\n\t\t}\n\t}\n\n\tsetup_fields() {\n\t\t// reset docfield\n\t\tif (this.frm && this.frm.docname) {\n\t\t\t// use doc specific docfield object\n\t\t\tthis.df = frappe.meta.get_docfield(this.frm.doctype, this.df.fieldname,\n\t\t\t\tthis.frm.docname);\n\t\t} else {\n\t\t\t// use non-doc specific docfield\n\t\t\tif (this.df.options) {\n\t\t\t\tthis.df = frappe.meta.get_docfield(this.df.options, this.df.fieldname) || this.df || null;\n\t\t\t}\n\t\t}\n\n\t\tif (this.doctype && this.frm) {\n\t\t\tthis.docfields = frappe.meta.get_docfields(this.doctype, this.frm.docname);\n\t\t} else {\n\t\t\t// fields given in docfield\n\t\t\tthis.docfields = this.df.fields;\n\t\t}\n\n\t\tthis.docfields.forEach(df => {\n\t\t\tthis.fields_map[df.fieldname] = df;\n\t\t});\n\t}\n\n\trefresh_row(docname) {\n\t\tthis.grid_rows_by_docname[docname] &&\n\t\t\tthis.grid_rows_by_docname[docname].refresh();\n\t}\n\n\tmake_sortable($rows) {\n\t\tnew Sortable($rows.get(0), {\n\t\t\tgroup: { name: this.df.fieldname },\n\t\t\thandle: '.sortable-handle',\n\t\t\tdraggable: '.grid-row',\n\t\t\tanimation: 100,\n\t\t\tfilter: 'li, a',\n\t\t\tonMove: (event) => {\n\t\t\t\t// don't move if editable\n\t\t\t\tif (!this.is_editable()) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\t// prevent drag behaviour if _sortable property is \"false\"\n\t\t\t\tlet idx = $(event.dragged).closest('.grid-row').attr('data-idx');\n\t\t\t\tlet doc = this.data[idx % this.grid_pagination.page_length];\n\t\t\t\tif (doc && doc._sortable === false) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\t\t\tonUpdate: (event) => {\n\t\t\t\tlet idx = $(event.item).closest('.grid-row').attr('data-idx') - 1;\n\t\t\t\tlet doc = this.data[idx % this.grid_pagination.page_length];\n\t\t\t\tthis.renumber_based_on_dom();\n\t\t\t\tthis.frm.script_manager.trigger(this.df.fieldname + \"_move\", this.df.options, doc.name);\n\t\t\t\tthis.refresh();\n\t\t\t\tthis.frm.dirty();\n\t\t\t}\n\t\t});\n\n\t\t$(this.frm.wrapper).trigger(\"grid-make-sortable\", [this.frm]);\n\t}\n\n\tget_data() {\n\t\tvar data = this.frm ?\n\t\t\tthis.frm.doc[this.df.fieldname] || []\n\t\t\t: this.df.data || this.get_modal_data();\n\t\t// data.sort(function(a, b) { return a.idx - b.idx});\n\t\treturn data;\n\t}\n\n\tget_modal_data() {\n\t\treturn this.df.get_data ? this.df.get_data().filter(data => {\n\t\t\tif (!this.deleted_docs || !in_list(this.deleted_docs, data.name)) {\n\t\t\t\treturn data;\n\t\t\t}\n\t\t}) : [];\n\t}\n\n\tset_column_disp(fieldname, show) {\n\t\tif (Array.isArray(fieldname)) {\n\t\t\tfor (let field of fieldname) {\n\t\t\t\tthis.update_docfield_property(field, \"hidden\", show ? 0 : 1);\n\t\t\t\tthis.set_editable_grid_column_disp(field, show);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.get_docfield(fieldname).hidden = show ? 0 : 1;\n\t\t\tthis.set_editable_grid_column_disp(fieldname, show);\n\t\t}\n\n\t\tthis.debounced_refresh();\n\t}\n\n\tset_editable_grid_column_disp(fieldname, show) {\n\t\t//Hide columns for editable grids\n\t\tif (this.meta.editable_grid && this.grid_rows) {\n\t\t\tthis.grid_rows.forEach(row => {\n\t\t\t\trow.columns_list.forEach(column => {\n\t\t\t\t\t//Hide the column specified\n\t\t\t\t\tif (column.df.fieldname == fieldname) {\n\t\t\t\t\t\tif (show) {\n\t\t\t\t\t\t\tcolumn.df.hidden = false;\n\n\t\t\t\t\t\t\t//Show the static area and hide field area if it is not the editable row\n\t\t\t\t\t\t\tif (row != frappe.ui.form.editable_row) {\n\t\t\t\t\t\t\t\tcolumn.static_area.show();\n\t\t\t\t\t\t\t\tcolumn.field_area && column.field_area.toggle(false);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t//Hide the static area and show field area if it is the editable row\n\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\tcolumn.static_area.hide();\n\t\t\t\t\t\t\t\tcolumn.field_area && column.field_area.toggle(true);\n\n\t\t\t\t\t\t\t\t//Format the editable column appropriately if it is now visible\n\t\t\t\t\t\t\t\tif (column.field) {\n\t\t\t\t\t\t\t\t\tcolumn.field.refresh();\n\t\t\t\t\t\t\t\t\tif (column.field.$input) column.field.$input.toggleClass('input-sm', true);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tcolumn.df.hidden = true;\n\t\t\t\t\t\t\tcolumn.static_area.hide();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\tthis.refresh();\n\t}\n\n\ttoggle_reqd(fieldname, reqd) {\n\t\tthis.update_docfield_property(fieldname, \"reqd\", reqd);\n\t\tthis.debounced_refresh();\n\t}\n\n\ttoggle_enable(fieldname, enable) {\n\t\tthis.update_docfield_property(fieldname, \"read_only\", enable ? 0 : 1);\n\t\tthis.debounced_refresh();\n\t}\n\n\ttoggle_display(fieldname, show) {\n\t\tthis.update_docfield_property(fieldname, \"hidden\", show ? 0 : 1);\n\t\tthis.debounced_refresh();\n\t}\n\n\ttoggle_checkboxes(enable) {\n\t\tthis.wrapper.find(\".grid-row-check\").prop('disabled', !enable)\n\t}\n\n\tget_docfield(fieldname) {\n\t\treturn frappe.meta.get_docfield(this.doctype, fieldname, this.frm ? this.frm.docname : null);\n\t}\n\n\tget_row(key) {\n\t\tif (typeof key == 'number') {\n\t\t\tif (key < 0) {\n\t\t\t\treturn this.grid_rows[this.grid_rows.length + key];\n\t\t\t} else {\n\t\t\t\treturn this.grid_rows[key];\n\t\t\t}\n\t\t} else {\n\t\t\treturn this.grid_rows_by_docname[key];\n\t\t}\n\t}\n\n\tget_grid_row(key) {\n\t\treturn this.get_row(key);\n\t}\n\n\tget_field(fieldname) {\n\t\t// Note: workaround for get_query\n\t\tif (!this.fieldinfo[fieldname])\n\t\t\tthis.fieldinfo[fieldname] = {\n\t\t\t}\n\t\treturn this.fieldinfo[fieldname];\n\t}\n\n\tset_value(fieldname, value, doc) {\n\t\tif (this.display_status !== \"None\" && this.grid_rows_by_docname[doc.name]) {\n\t\t\tthis.grid_rows_by_docname[doc.name].refresh_field(fieldname, value);\n\t\t}\n\t}\n\n\tsetup_add_row() {\n\t\tthis.wrapper.find(\".grid-add-row\").click(() => {\n\t\t\tthis.add_new_row(null, null, true, null, true);\n\t\t\tthis.set_focus_on_row();\n\n\t\t\treturn false;\n\t\t});\n\t}\n\n\tadd_new_row(idx, callback, show, copy_doc, go_to_last_page = false, go_to_first_page = false) {\n\t\tif (this.is_editable()) {\n\t\t\tif (go_to_last_page) {\n\t\t\t\tthis.grid_pagination.go_to_last_page_to_add_row();\n\t\t\t} else if (go_to_first_page) {\n\t\t\t\tthis.grid_pagination.go_to_page(1);\n\t\t\t}\n\n\t\t\tif (this.frm) {\n\t\t\t\tvar d = frappe.model.add_child(this.frm.doc, this.df.options, this.df.fieldname, idx);\n\t\t\t\tif (copy_doc) {\n\t\t\t\t\td = this.duplicate_row(d, copy_doc);\n\t\t\t\t}\n\t\t\t\td.__unedited = true;\n\t\t\t\tthis.frm.script_manager.trigger(this.df.fieldname + \"_add\", d.doctype, d.name);\n\t\t\t\tthis.refresh();\n\t\t\t} else {\n\t\t\t\tif (!this.df.data) {\n\t\t\t\t\tthis.df.data = this.get_data() || [];\n\t\t\t\t}\n\t\t\t\tthis.df.data.push({ idx: this.df.data.length + 1, __islocal: true });\n\t\t\t\tthis.refresh();\n\t\t\t}\n\n\t\t\tif (show) {\n\t\t\t\tif (idx) {\n\t\t\t\t\t// always open inserted rows\n\t\t\t\t\tthis.wrapper.find(\"[data-idx='\" + idx + \"']\").data(\"grid_row\")\n\t\t\t\t\t\t.toggle_view(true, callback);\n\t\t\t\t} else {\n\t\t\t\t\tif (!this.allow_on_grid_editing()) {\n\t\t\t\t\t\t// open last row only if on-grid-editing is disabled\n\t\t\t\t\t\tthis.wrapper.find(\".grid-row:last\").data(\"grid_row\")\n\t\t\t\t\t\t\t.toggle_view(true, callback);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn d;\n\t\t}\n\t}\n\n\trenumber_based_on_dom() {\n\t\t// renumber based on dom\n\t\tlet $rows = $(this.parent).find(\".rows\");\n\n\t\t$rows.find(\".grid-row\").each((i, item) => {\n\t\t\tlet $item = $(item);\n\t\t\tlet index = (this.grid_pagination.page_index - 1) * this.grid_pagination.page_length + i;\n\t\t\tlet d = locals[this.doctype][$item.attr('data-name')];\n\t\t\td.idx = index + 1;\n\t\t\t$item.attr('data-idx', d.idx);\n\n\t\t\tthis.frm.doc[this.df.fieldname][index] = (d);\n\t\t\tthis.data[index] = d;\n\t\t\tthis.grid_rows[index] = (this.grid_rows_by_docname[d.name]);\n\t\t});\n\t}\n\n\tduplicate_row(d, copy_doc) {\n\t\t$.each(copy_doc, function (key, value) {\n\t\t\tif (![\"creation\", \"modified\", \"modified_by\", \"idx\", \"owner\",\n\t\t\t\t\"parent\", \"doctype\", \"name\", \"parentfield\"].includes(key)) {\n\t\t\t\td[key] = value;\n\t\t\t}\n\t\t});\n\n\t\treturn d;\n\t}\n\n\tset_focus_on_row(idx) {\n\t\tif (!idx && idx !== 0) {\n\t\t\tidx = this.grid_rows.length - 1;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tthis.grid_rows[idx].row\n\t\t\t\t.find('input[type=\"Text\"],textarea,select').filter(':visible:first').focus();\n\t\t}, 100);\n\t}\n\n\tsetup_visible_columns() {\n\t\tif (this.visible_columns && this.visible_columns.length > 0) return;\n\n\t\tthis.user_defined_columns = [];\n\t\tthis.setup_user_defined_columns();\n\t\tvar total_colsize = 1,\n\t\t\tfields = (this.user_defined_columns && this.user_defined_columns.length > 0)\n\t\t\t\t? this.user_defined_columns : this.editable_fields || this.docfields;\n\n\t\tthis.visible_columns = [];\n\n\t\tfor (var ci in fields) {\n\t\t\tvar _df = fields[ci];\n\n\t\t\t// get docfield if from fieldname\n\t\t\tdf = (this.user_defined_columns && this.user_defined_columns.length > 0) ? _df : this.fields_map[_df.fieldname];\n\n\t\t\tif (df && !df.hidden\n\t\t\t\t&& (this.editable_fields || df.in_list_view)\n\t\t\t\t&& (this.frm && this.frm.get_perm(df.permlevel, \"read\") || !this.frm)\n\t\t\t\t&& !in_list(frappe.model.layout_fields, df.fieldtype)) {\n\n\t\t\t\tif (df.columns) {\n\t\t\t\t\tdf.colsize = df.columns;\n\t\t\t\t} else {\n\t\t\t\t\tthis.update_default_colsize(df);\n\t\t\t\t}\n\n\t\t\t\t// attach formatter on refresh\n\t\t\t\tif (df.fieldtype == 'Link' && !df.formatter && df.parent && frappe.meta.docfield_map[df.parent]) {\n\t\t\t\t\tconst docfield = frappe.meta.docfield_map[df.parent][df.fieldname];\n\t\t\t\t\tif (docfield && docfield.formatter) {\n\t\t\t\t\t\tdf.formatter = docfield.formatter;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttotal_colsize += df.colsize;\n\t\t\t\tif (total_colsize > 11)\n\t\t\t\t\treturn false;\n\t\t\t\tthis.visible_columns.push([df, df.colsize]);\n\t\t\t}\n\t\t}\n\n\t\t// redistribute if total-col size is less than 12\n\t\tvar passes = 0;\n\t\twhile (total_colsize < 11 && passes < 12) {\n\t\t\tfor (var i in this.visible_columns) {\n\t\t\t\tvar df = this.visible_columns[i][0];\n\t\t\t\tvar colsize = this.visible_columns[i][1];\n\t\t\t\tif (colsize > 1 && colsize < 11\n\t\t\t\t\t&& !in_list(frappe.model.std_fields_list, df.fieldname)) {\n\n\t\t\t\t\tif (passes < 3 && [\"Int\", \"Currency\", \"Float\", \"Check\", \"Percent\"].indexOf(df.fieldtype) !== -1) {\n\t\t\t\t\t\t// don't increase col size of these fields in first 3 passes\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.visible_columns[i][1] += 1;\n\t\t\t\t\ttotal_colsize++;\n\t\t\t\t}\n\n\t\t\t\tif (total_colsize > 10)\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tpasses++;\n\t\t}\n\t}\n\n\tupdate_default_colsize(df) {\n\t\tvar colsize = 2;\n\t\tswitch (df.fieldtype) {\n\t\t\tcase \"Text\": break;\n\t\t\tcase \"Small Text\": colsize = 3; break;\n\t\t\tcase \"Check\": colsize = 1;\n\t\t}\n\t\tdf.colsize = colsize;\n\t}\n\n\tsetup_user_defined_columns() {\n\t\tif (this.frm) {\n\t\t\tlet user_settings = frappe.get_user_settings(this.frm.doctype, 'GridView');\n\t\t\tif (user_settings && user_settings[this.doctype] && user_settings[this.doctype].length) {\n\t\t\t\tthis.user_defined_columns = user_settings[this.doctype].map(row => {\n\t\t\t\t\tlet column = frappe.meta.get_docfield(this.doctype, row.fieldname);\n\t\t\t\t\tif (column) {\n\t\t\t\t\t\tcolumn.in_list_view = 1;\n\t\t\t\t\t\tcolumn.columns = row.columns;\n\t\t\t\t\t\treturn column;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tis_editable() {\n\t\treturn this.display_status == \"Write\" && !this.static_rows;\n\t}\n\n\tis_sortable() {\n\t\treturn this.sortable_status || this.is_editable();\n\t}\n\n\tonly_sortable(status) {\n\t\tif (status === undefined ? true : status) {\n\t\t\tthis.sortable_status = true;\n\t\t\tthis.static_rows = true;\n\t\t}\n\t}\n\n\tset_multiple_add(link, qty) {\n\t\tif (this.multiple_set) return;\n\n\t\tvar link_field = frappe.meta.get_docfield(this.df.options, link);\n\t\tvar btn = $(this.wrapper).find(\".grid-add-multiple-rows\");\n\n\t\t// show button\n\t\tbtn.removeClass('hidden');\n\n\t\t// open link selector on click\n\t\tbtn.on(\"click\", () => {\n\t\t\tnew frappe.ui.form.LinkSelector({\n\t\t\t\tdoctype: link_field.options,\n\t\t\t\tfieldname: link,\n\t\t\t\tqty_fieldname: qty,\n\t\t\t\ttarget: this,\n\t\t\t\ttxt: \"\"\n\t\t\t});\n\t\t\tthis.grid_pagination.go_to_last_page_to_add_row();\n\t\t\treturn false;\n\t\t});\n\t\tthis.multiple_set = true;\n\t}\n\n\tsetup_allow_bulk_edit() {\n\t\tlet me = this;\n\t\tif (this.frm && this.frm.get_docfield(this.df.fieldname).allow_bulk_edit) {\n\t\t\t// download\n\t\t\tthis.setup_download();\n\n\t\t\tconst value_formatter_map = {\n\t\t\t\t\"Date\": val => val ? frappe.datetime.user_to_str(val) : val,\n\t\t\t\t\"Int\": val => cint(val),\n\t\t\t\t\"Check\": val => cint(val),\n\t\t\t\t\"Float\": val => flt(val),\n\t\t\t};\n\n\t\t\t// upload\n\t\t\tfrappe.flags.no_socketio = true;\n\t\t\t$(this.wrapper).find(\".grid-upload\").removeClass('hidden').on(\"click\", () => {\n\t\t\t\tnew frappe.ui.FileUploader({\n\t\t\t\t\tas_dataurl: true,\n\t\t\t\t\tallow_multiple: false,\n\t\t\t\t\ton_success(file) {\n\t\t\t\t\t\tvar data = frappe.utils.csv_to_array(frappe.utils.get_decoded_string(file.dataurl));\n\t\t\t\t\t\t// row #2 contains fieldnames;\n\t\t\t\t\t\tvar fieldnames = data[2];\n\t\t\t\t\t\tme.frm.clear_table(me.df.fieldname);\n\t\t\t\t\t\t$.each(data, (i, row) => {\n\t\t\t\t\t\t\tif (i > 6) {\n\t\t\t\t\t\t\t\tvar blank_row = true;\n\t\t\t\t\t\t\t\t$.each(row, function (ci, value) {\n\t\t\t\t\t\t\t\t\tif (value) {\n\t\t\t\t\t\t\t\t\t\tblank_row = false;\n\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\tif (!blank_row) {\n\t\t\t\t\t\t\t\t\tvar d = me.frm.add_child(me.df.fieldname);\n\t\t\t\t\t\t\t\t\t$.each(row, (ci, value) => {\n\t\t\t\t\t\t\t\t\t\tvar fieldname = fieldnames[ci];\n\t\t\t\t\t\t\t\t\t\tvar df = frappe.meta.get_docfield(me.df.options, fieldname);\n\t\t\t\t\t\t\t\t\t\tif (df) {\n\t\t\t\t\t\t\t\t\t\t\td[fieldnames[ci]] = value_formatter_map[df.fieldtype]\n\t\t\t\t\t\t\t\t\t\t\t\t? value_formatter_map[df.fieldtype](value)\n\t\t\t\t\t\t\t\t\t\t\t\t: value;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tme.frm.refresh_field(me.df.fieldname);\n\t\t\t\t\t\tfrappe.msgprint({ message: __('Table updated'), title: __('Success'), indicator: 'green' });\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\treturn false;\n\t\t\t});\n\t\t}\n\t}\n\n\tsetup_download() {\n\t\tlet title = this.df.label || frappe.model.unscrub(this.df.fieldname);\n\t\t$(this.wrapper).find(\".grid-download\").removeClass('hidden').on(\"click\", () => {\n\t\t\tvar data = [];\n\t\t\tvar docfields = [];\n\t\t\tdata.push([__(\"Bulk Edit {0}\", [title])]);\n\t\t\tdata.push([]);\n\t\t\tdata.push([]);\n\t\t\tdata.push([]);\n\t\t\tdata.push([__(\"The CSV format is case sensitive\")]);\n\t\t\tdata.push([__(\"Do not edit headers which are preset in the template\")]);\n\t\t\tdata.push([\"------\"]);\n\t\t\t$.each(frappe.get_meta(this.df.options).fields, (i, df) => {\n\t\t\t\t// don't include the read-only field in the template\n\t\t\t\tif (frappe.model.is_value_type(df.fieldtype)) {\n\t\t\t\t\tdata[1].push(df.label);\n\t\t\t\t\tdata[2].push(df.fieldname);\n\t\t\t\t\tlet description = (df.description || \"\") + ' ';\n\t\t\t\t\tif (df.fieldtype === \"Date\") {\n\t\t\t\t\t\tdescription += frappe.boot.sysdefaults.date_format;\n\t\t\t\t\t}\n\t\t\t\t\tdata[3].push(description);\n\t\t\t\t\tdocfields.push(df);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// add data\n\t\t\t$.each(this.frm.doc[this.df.fieldname] || [], (i, d) => {\n\t\t\t\tvar row = [];\n\t\t\t\t$.each(data[2], (i, fieldname) => {\n\t\t\t\t\tvar value = d[fieldname];\n\n\t\t\t\t\t// format date\n\t\t\t\t\tif (docfields[i].fieldtype === \"Date\" && value) {\n\t\t\t\t\t\tvalue = frappe.datetime.str_to_user(value);\n\t\t\t\t\t}\n\n\t\t\t\t\trow.push(value || \"\");\n\t\t\t\t});\n\t\t\t\tdata.push(row);\n\t\t\t});\n\n\t\t\tfrappe.tools.downloadify(data, null, title);\n\t\t\treturn false;\n\t\t});\n\t}\n\n\tadd_custom_button(label, click, position='bottom') {\n\t\t// add / unhide a custom button\n\t\tconst $wrapper = position === 'top' ? this.grid_custom_buttons : this.grid_buttons;\n\t\tlet $btn = this.custom_buttons[label];\n\t\tif (!$btn) {\n\t\t\t$btn = $(``)\n\t\t\t\t.prependTo($wrapper)\n\t\t\t\t.on('click', click);\n\t\t\tthis.custom_buttons[label] = $btn;\n\t\t} else {\n\t\t\t$btn.removeClass('hidden');\n\t\t}\n\t\treturn $btn;\n\t}\n\n\tclear_custom_buttons() {\n\t\t// hide all custom buttons\n\t\tthis.grid_buttons.find('.btn-custom').addClass('hidden');\n\t}\n\n\tupdate_docfield_property(fieldname, property, value) {\n\t\t// update the docfield of each row\n\t\tif (!this.grid_rows) {\n\t\t\treturn;\n\t\t}\n\n\t\tfor (let row of this.grid_rows) {\n\t\t\tlet docfield = row.docfields.find(d => d.fieldname === fieldname);\n\t\t\tif (docfield) {\n\t\t\t\tdocfield[property] = value;\n\t\t\t} else {\n\t\t\t\tthrow `field ${fieldname} not found`;\n\t\t\t}\n\t\t}\n\n\t\t// update the parent too (for new rows)\n\t\tthis.docfields.find(d => d.fieldname === fieldname)[property] = value;\n\n\t\tthis.debounced_refresh();\n\t}\n}\n","import Grid from '../grid';\n\nfrappe.ui.form.ControlTable = frappe.ui.form.Control.extend({\n\tmake: function() {\n\t\tthis._super();\n\n\t\t// add title if prev field is not column / section heading or html\n\t\tthis.grid = new Grid({\n\t\t\tfrm: this.frm,\n\t\t\tdf: this.df,\n\t\t\tperm: this.perm || (this.frm && this.frm.perm) || this.df.perm,\n\t\t\tparent: this.wrapper,\n\t\t\tcontrol: this\n\t\t});\n\n\t\tif (this.frm) {\n\t\t\tthis.frm.grids[this.frm.grids.length] = this;\n\t\t}\n\n\t\tthis.$wrapper.on('paste', ':text', e => {\n\t\t\tconst table_field = this.df.fieldname;\n\t\t\tconst grid = this.grid;\n\t\t\tconst grid_pagination = grid.grid_pagination;\n\t\t\tconst grid_rows = grid.grid_rows;\n\t\t\tconst doctype = grid.doctype;\n\t\t\tconst row_docname = $(e.target).closest('.grid-row').data('name');\n\t\t\tconst in_grid_form = $(e.target).closest('.form-in-grid').length;\n\n\t\t\tlet pasted_data = frappe.utils.get_clipboard_data(e);\n\n\t\t\tif (!pasted_data || in_grid_form) return;\n\n\t\t\tlet data = frappe.utils.csv_to_array(pasted_data, '\\t');\n\n\t\t\tif (data.length === 1 && data[0].length === 1) return;\n\n\t\t\tlet fieldnames = [];\n\t\t\t// for raw data with column header\n\t\t\tif (this.get_field(data[0][0])) {\n\t\t\t\tdata[0].forEach(column => {\n\t\t\t\t\tfieldnames.push(this.get_field(column));\n\t\t\t\t});\n\t\t\t\tdata.shift();\n\t\t\t} else {\n\t\t\t\t// no column header, map to the existing visible columns\n\t\t\t\tconst visible_columns = grid_rows[0].get_visible_columns();\n\t\t\t\tlet target_column_matched = false;\n\t\t\t\tvisible_columns.forEach(column => {\n\t\t\t\t\t// consider all columns after the target column.\n\t\t\t\t\tif (target_column_matched || column.fieldname === $(e.target).data('fieldname')) {\n\t\t\t\t\t\tfieldnames.push(column.fieldname);\n\t\t\t\t\t\ttarget_column_matched = true;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tlet row_idx = locals[doctype][row_docname].idx;\n\t\t\tlet data_length = data.length;\n\t\t\tdata.forEach((row, i) => {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tlet blank_row = !row.filter(Boolean).length;\n\t\t\t\t\tif (!blank_row) {\n\t\t\t\t\t\tif (row_idx > this.frm.doc[table_field].length) {\n\t\t\t\t\t\t\tthis.grid.add_new_row();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (row_idx > 1 && (row_idx - 1) % grid_pagination.page_length === 0) {\n\t\t\t\t\t\t\tgrid_pagination.go_to_page(grid_pagination.page_index + 1);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst row_name = grid_rows[row_idx - 1].doc.name;\n\t\t\t\t\t\trow.forEach((value, data_index) => {\n\t\t\t\t\t\t\tif (fieldnames[data_index]) {\n\t\t\t\t\t\t\t\tfrappe.model.set_value(doctype, row_name, fieldnames[data_index], value);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\trow_idx++;\n\t\t\t\t\t\tif (data_length >= 10) {\n\t\t\t\t\t\t\tlet progress = i + 1;\n\t\t\t\t\t\t\tfrappe.show_progress(__('Processing'), progress, data_length, null, true);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}, 0);\n\t\t\t});\n\t\t\treturn false; // Prevent the default handler from running.\n\t\t});\n\t},\n\tget_field(field_name) {\n\t\tlet fieldname;\n\t\tfield_name = field_name.toLowerCase();\n\t\tthis.grid.meta.fields.some(field => {\n\t\t\tif (frappe.model.no_value_type.includes(field.fieldtype)) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst is_field_matching = () => {\n\t\t\t\treturn (\n\t\t\t\t\tfield.fieldname.toLowerCase() === field_name ||\n\t\t\t\t\t(field.label || '').toLowerCase() === field_name ||\n\t\t\t\t\t(__(field.label) || '').toLowerCase() === field_name\n\t\t\t\t);\n\t\t\t};\n\n\t\t\tif (is_field_matching()) {\n\t\t\t\tfieldname = field.fieldname;\n\t\t\t\treturn true;\n\t\t\t}\n\t\t});\n\t\treturn fieldname;\n\t},\n\trefresh_input: function() {\n\t\tthis.grid.refresh();\n\t},\n\tget_value: function() {\n\t\tif(this.grid) {\n\t\t\treturn this.grid.get_data();\n\t\t}\n\t},\n\tset_input: function( ) {\n\t\t//\n\t},\n\tvalidate: function() {\n\t\treturn this.get_value();\n\t},\n\tcheck_all_rows() {\n\t\tthis.$wrapper.find('.grid-row-check')[0].click();\n\t}\n});\n","export default {\n\tget_hue(rgb) {\n\t\treturn this.get_hsv(rgb)[0];\n\t},\n\n\tget_hsv(rgb) {\n\t\tif (typeof rgb === \"string\") {\n\t\t\tif (rgb.startsWith('#')) {\n\t\t\t\trgb = this.hex_to_rgb_values(rgb);\n\t\t\t} else {\n\t\t\t\trgb = this.get_rgb_values(rgb);\n\t\t\t}\n\t\t}\n\t\treturn this.rgb_to_hsv(...rgb);\n\t},\n\n\tget_rgb_values(rgb_string) {\n\t\treturn rgb_string.replace(/[()rgb\\s]/g, '').split(',').map(s => parseInt(s));\n\t},\n\n\trgb_to_hsv(r, g, b) {\n\t\tr /= 255;\n\t\tg /= 255;\n\t\tb /= 255;\n\n\t\tlet max = Math.max(r, g, b), min = Math.min(r, g, b);\n\t\tlet h, s, v = max;\n\n\t\tlet d = max - min;\n\t\ts = max == 0 ? 0 : d / max;\n\n\t\tif (max == min) {\n\t\t\th = 0; // achromatic\n\t\t} else {\n\t\t\tswitch (max) {\n\t\t\t\tcase r: h = (g - b) / d + (g < b ? 6 : 0); break;\n\t\t\t\tcase g: h = (b - r) / d + 2; break;\n\t\t\t\tcase b: h = (r - g) / d + 4; break;\n\t\t\t}\n\n\t\t\th /= 6;\n\t\t}\n\t\treturn [Math.round(h * 360), Math.round(s * 100), Math.round(v * 100)];\n\t},\n\n\tcomponent_to_hex(c) {\n\t\tconst hex = c.toString(16);\n\t\treturn hex.length == 1 ? \"0\" + hex : hex;\n\t},\n\n\trgb_to_hex(r, g, b) {\n\t\treturn \"#\" + this.component_to_hex(r) + this.component_to_hex(g) + this.component_to_hex(b);\n\t},\n\n\thex_to_rgb_values(hex) {\n\t\tconst result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n\t\treturn [parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)];\n\t},\n\n\thsv_to_hex(h, s, v) {\n\t\ts /= 100;\n\t\tv /= 100;\n\t\th /= 360;\n\n\t\tlet r, g, b;\n\t\tlet i = Math.floor(h * 6);\n\t\tlet f = h * 6 - i;\n\t\tlet p = v * (1 - s);\n\t\tlet q = v * (1 - f * s);\n\t\tlet t = v * (1 - (1 - f) * s);\n\n\t\tswitch (i % 6) {\n\t\t\tcase 0: r = v, g = t, b = p; break;\n\t\t\tcase 1: r = q, g = v, b = p; break;\n\t\t\tcase 2: r = p, g = v, b = t; break;\n\t\t\tcase 3: r = p, g = q, b = v; break;\n\t\t\tcase 4: r = t, g = p, b = v; break;\n\t\t\tcase 5: r = v, g = p, b = q; break;\n\t\t}\n\t\tr = Math.round(r * 255);\n\t\tg = Math.round(g * 255);\n\t\tb = Math.round(b * 255);\n\t\treturn this.rgb_to_hex(r, g, b);\n\t},\n\n\tclamp(min, val, max) {\n\t\treturn val > max ? max : val < min ? min : val;\n\t}\n};","import utils from './utils';\n\nclass Picker {\n\tconstructor(opts) {\n\t\tthis.parent = opts.parent;\n\t\tthis.width = opts.width;\n\t\tthis.height = opts.height;\n\t\tthis.set_color(opts.color);\n\t\tthis.swatches = opts.swatches;\n\t\tthis.setup_picker();\n\t}\n\n\trefresh() {\n\t\tthis.set_selector_position(true);\n\t\tthis.update_color_map();\n\t}\n\n\tsetup_picker() {\n\t\tlet color_picker_template = document.createElement('template');\n\t\tcolor_picker_template.innerHTML = `\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t${__('SWATCHES')}
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t${__('COLOR PICKER')}
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t`.trim();\n\t\tthis.color_picker_wrapper = color_picker_template.content.firstElementChild.cloneNode(true);\n\t\tthis.parent.appendChild(this.color_picker_wrapper);\n\t\tthis.color_map = this.color_picker_wrapper.getElementsByClassName('color-map')[0];\n\t\tthis.color_selector_circle = this.color_map.getElementsByClassName('color-selector')[0];\n\t\tthis.hue_map = this.color_picker_wrapper.getElementsByClassName('hue-map')[0];\n\t\tthis.swatches_wrapper = this.color_picker_wrapper.getElementsByClassName('swatches')[0];\n\t\tthis.hue_selector_circle = this.hue_map.getElementsByClassName('hue-selector')[0];\n\t\tthis.refresh();\n\t\tthis.setup_events();\n\t\tthis.setup_swatches();\n\t}\n\n\tsetup_events() {\n\t\tthis.setup_hue_event();\n\t\tthis.setup_color_event();\n\t}\n\n\tsetup_swatches() {\n\t\tlet swatch_template = document.createElement('template');\n\t\tswatch_template.innerHTML = '
    ';\n\t\tthis.swatches.forEach(color => {\n\t\t\tlet swatch = swatch_template.content.firstElementChild.cloneNode(true);\n\t\t\tthis.swatches_wrapper.appendChild(swatch);\n\t\t\tconst set_values = () => {\n\t\t\t\tthis.set_color(color);\n\t\t\t\tthis.set_selector_position();\n\t\t\t\tthis.update_color_map();\n\t\t\t};\n\t\t\tswatch.addEventListener('click', () => {\n\t\t\t\tset_values();\n\t\t\t});\n\t\t\tswatch.onkeydown = (e) => {\n\t\t\t\tconst key_code = e.keyCode;\n\t\t\t\tif ([13, 32].includes(key_code)) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tset_values();\n\t\t\t\t}\n\t\t\t};\n\t\t\tswatch.style.backgroundColor = color;\n\t\t});\n\t}\n\n\tset_selector_position(silent) {\n\t\tthis.hue = utils.get_hue(this.get_color());\n\t\tthis.color_selector_position = this.get_pointer_coords();\n\t\tthis.hue_selector_position = {\n\t\t\tx: this.hue * this.hue_map.offsetWidth / 360,\n\t\t\ty: this.hue_map.offsetHeight / 2\n\t\t};\n\t\tthis.update_color_selector(silent);\n\t\tthis.update_hue_selector(silent);\n\t}\n\n\tsetup_color_event() {\n\t\tlet on_drag = (x, y) => {\n\t\t\tthis.color_selector_position.x = x;\n\t\t\tthis.color_selector_position.y = y;\n\t\t\tthis.update_color();\n\t\t\tthis.update_color_selector();\n\t\t};\n\t\tthis.setup_drag_event(this.color_map, on_drag);\n\t}\n\n\tupdate_color() {\n\t\tlet x = this.color_selector_position.x;\n\t\tlet y = this.color_selector_position.y;\n\t\tlet w = this.color_map.offsetWidth;\n\t\tlet h = this.color_map.offsetHeight;\n\t\tlet color = utils.hsv_to_hex(\n\t\t\tthis.hue,\n\t\t\tMath.round(x / w * 100),\n\t\t\tMath.round((1 - (y / h)) * 100),\n\t\t);\n\t\tthis.set_color(color);\n\t}\n\n\tupdate_color_selector(silent) {\n\t\tlet x = this.color_selector_position.x;\n\t\tlet y = this.color_selector_position.y;\n\t\t// set color selector position and background\n\t\tthis.color_selector_circle.style.top = (y - this.color_selector_circle.offsetHeight / 2) + 'px';\n\t\tthis.color_selector_circle.style.left = (x - this.color_selector_circle.offsetWidth / 2) + 'px';\n\t\tthis.color_map.style.color = this.get_color();\n\t\t!silent && this.on_change && this.on_change(this.get_color());\n\t}\n\n\tsetup_hue_event() {\n\t\t// eslint-disable-next-line no-unused-vars\n\t\tlet on_drag = (x, y) => {\n\t\t\tthis.hue_selector_position.x = x;\n\t\t\tthis.hue = Math.round(x * 360 / this.hue_map.offsetWidth);\n\t\t\tthis.update_color_map();\n\t\t\tthis.update_hue_selector();\n\t\t\tthis.update_color();\n\t\t\tthis.update_color_selector();\n\t\t};\n\t\tthis.setup_drag_event(this.hue_map, on_drag);\n\t}\n\n\tupdate_color_map() {\n\t\tthis.color_map.style.background = `\n\t\t\tlinear-gradient(0deg, black, transparent),\n\t\t\tlinear-gradient(90deg, white, transparent),\n\t\t\thsl(${this.hue}, 100%, 50%)\n\t\t`;\n\t}\n\n\tupdate_hue_selector() {\n\t\tlet x = this.hue_selector_position.x - 1;\n\t\tlet y = (this.hue_map.offsetHeight / 2) - 1;\n\t\t// set color selector position and background\n\t\tthis.hue_selector_circle.style.top = (y - this.hue_selector_circle.offsetHeight / 2) + 'px';\n\t\tthis.hue_selector_circle.style.left = (x - this.hue_selector_circle.offsetWidth / 2) + 'px';\n\t\tthis.hue_map.style.color = `hsl(${this.hue}, 100%, 50%)`;\n\t}\n\n\tget_pointer_coords() {\n\t\t// eslint-disable-next-line no-unused-vars\n\t\tlet h, s, v;\n\t\t// eslint-disable-next-line no-unused-vars\n\t\t[h, s, v] = utils.get_hsv(this.get_color());\n\t\tlet width = this.color_map.offsetWidth;\n\t\tlet height = this.color_map.offsetHeight;\n\t\tlet x = utils.clamp(0, s * width / 100, width);\n\t\tlet y = utils.clamp(0, (1 - (v / 100)) * height, height);\n\t\treturn {x, y};\n\t}\n\n\tsetup_drag_event(element, callback) {\n\t\tlet on_drag = (event, force) => {\n\t\t\tif (element.drag_enabled || force) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent = event.touches ? event.touches[0] : event;\n\t\t\t\tlet element_bounds = element.getBoundingClientRect();\n\t\t\t\tlet x = event.clientX - element_bounds.left;\n\t\t\t\tlet y = event.clientY - element_bounds.top;\n\t\t\t\tx = utils.clamp(0, x, element_bounds.width);\n\t\t\t\ty = utils.clamp(0, y, element_bounds.height);\n\t\t\t\tcallback(x, y);\n\t\t\t}\n\t\t};\n\n\t\telement.addEventListener(\"mousedown\", () => element.drag_enabled = true);\n\t\tdocument.addEventListener(\"mouseup\", () => element.drag_enabled = false);\n\t\tdocument.addEventListener(\"mousemove\", on_drag);\n\t\telement.addEventListener(\"click\", (event) => on_drag(event, true));\n\n\t\telement.addEventListener(\"touchstart\", () => element.drag_enabled = true);\n\t\telement.addEventListener(\"touchend\", () => element.drag_enabled = false);\n\t\telement.addEventListener(\"touchcancel\", () => element.drag_enabled = false);\n\t\telement.addEventListener(\"touchmove\", (event) => {\n\t\t\tif (event.touches.length == 1) {\n\t\t\t\ton_drag(event);\n\t\t\t} else {\n\t\t\t\telement.drag_enabled = false;\n\t\t\t}\n\t\t});\n\t}\n\n\tset_color(color) {\n\t\tthis.color = color || '#ffffff';\n\t}\n\n\tget_color() {\n\t\treturn this.color || '#ffffff';\n\t}\n}\n\nexport default Picker;","import Picker from '../../color_picker/color_picker';\n\nfrappe.ui.form.ControlColor = frappe.ui.form.ControlData.extend({\n\tmake_input: function () {\n\t\tthis.df.placeholder = this.df.placeholder || __('Choose a color');\n\t\tthis._super();\n\t\tthis.make_color_input();\n\t},\n\tmake_color_input: function () {\n\t\tlet picker_wrapper = $('
    ');\n\t\tthis.picker = new Picker({\n\t\t\tparent: picker_wrapper[0],\n\t\t\tcolor: this.get_color(),\n\t\t\tswatches: [\n\t\t\t\t'#449CF0',\n\t\t\t\t'#ECAD4B',\n\t\t\t\t'#29CD42',\n\t\t\t\t'#761ACB',\n\t\t\t\t'#CB2929',\n\t\t\t\t'#ED6396',\n\t\t\t\t'#29CD42',\n\t\t\t\t'#4463F0',\n\t\t\t\t'#EC864B',\n\t\t\t\t'#4F9DD9',\n\t\t\t\t'#39E4A5',\n\t\t\t\t'#B4CD29',\n\t\t\t]\n\t\t});\n\n\t\tthis.$wrapper.popover({\n\t\t\ttrigger: 'manual',\n\t\t\toffset: `${-this.$wrapper.width() / 4}, 5`,\n\t\t\tboundary: 'viewport',\n\t\t\tplacement: 'bottom',\n\t\t\ttemplate: `\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t`,\n\t\t\tcontent: () => picker_wrapper,\n\t\t\thtml: true\n\t\t}).on('show.bs.popover', () => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.picker.refresh();\n\t\t\t}, 10);\n\t\t}).on('hidden.bs.popover', () => {\n\t\t\t$('body').off('click.color-popover');\n\t\t\t$(window).off('hashchange.color-popover');\n\t\t});\n\n\t\tthis.picker.on_change = (color) => {\n\t\t\tthis.set_value(color);\n\t\t};\n\n\t\tif (!this.selected_color) {\n\t\t\tthis.selected_color = $(`
    `);\n\t\t\tthis.selected_color.insertAfter(this.$input);\n\t\t}\n\n\t\tthis.$wrapper.find('.selected-color').parent().on('click', (e) => {\n\t\t\tthis.$wrapper.popover('toggle');\n\t\t\tif (!this.get_color()) {\n\t\t\t\tthis.$input.val('');\n\t\t\t}\n\t\t\te.stopPropagation();\n\t\t\t$('body').on('click.color-popover', (ev) => {\n\t\t\t\tif (!$(ev.target).parents().is('.popover')) {\n\t\t\t\t\tthis.$wrapper.popover('hide');\n\t\t\t\t}\n\t\t\t});\n\t\t\t$(window).on('hashchange.color-popover', () => {\n\t\t\t\tthis.$wrapper.popover('hide');\n\t\t\t});\n\t\t});\n\t},\n\trefresh() {\n\t\tthis._super();\n\t\tlet color = this.get_color();\n\t\tif (this.picker && this.picker.color !== color) {\n\t\t\tthis.picker.color = color;\n\t\t\tthis.picker.refresh();\n\t\t}\n\t},\n\tset_formatted_input: function(value) {\n\t\tthis._super(value);\n\t\tthis.$input.val(value);\n\t\tthis.selected_color.css({\n\t\t\t\"background-color\": value || 'transparent',\n\t\t});\n\t\tthis.selected_color.toggleClass('no-value', !value);\n\t},\n\tget_color() {\n\t\treturn this.validate(this.get_value());\n\t},\n\tvalidate: function (value) {\n\t\tif (value === '') {\n\t\t\treturn '';\n\t\t}\n\t\tvar is_valid = /^#[0-9A-F]{6}$/i.test(value);\n\t\tif (is_valid) {\n\t\t\treturn value;\n\t\t}\n\t\treturn null;\n\t}\n});\n","frappe.ui.form.ControlSignature = frappe.ui.form.ControlData.extend({\n\tsaving: false,\n\tloading: false,\n\tmake: function() {\n\t\tvar me = this;\n\t\tthis._super();\n\n\t\t// make jSignature field\n\t\tthis.body = $('
    ').appendTo(me.wrapper);\n\n\t\tif (this.body.is(':visible')) {\n\t\t\tthis.make_pad();\n\t\t} else {\n\t\t\t$(document).on('frappe.ui.Dialog:shown', () => {\n\t\t\t\tthis.make_pad();\n\t\t\t});\n\t\t}\n\n\t\tthis.img_wrapper = $(`
    \n\t\t\t
    \n\t\t\t\t${frappe.utils.icon('restriction', 'md')}\n\t\t\t
    `)\n\t\t\t.appendTo(this.wrapper);\n\t\tthis.img = $(\"\")\n\t\t\t.appendTo(this.img_wrapper).toggle(false);\n\n\t},\n\tmake_pad: function() {\n\t\tlet width = this.body.width();\n\t\tif (width > 0 && !this.$pad) {\n\t\t\tthis.$pad = this.body.jSignature({\n\t\t\t\theight: 200,\n\t\t\t\tcolor: \"var(--text-color)\",\n\t\t\t\twidth: this.body.width(),\n\t\t\t\tlineWidth: 2,\n\t\t\t\t\"background-color\": \"var(--control-bg)\"\n\t\t\t}).on('change',\n\t\t\t\tthis.on_save_sign.bind(this));\n\t\t\tthis.load_pad();\n\t\t\tthis.$reset_button_wrapper = $(`\n\t\t\t\t\t\n\t\t\t\t`)\n\t\t\t\t.appendTo(this.$pad)\n\t\t\t\t.on(\"click\", '.signature-reset', () => {\n\t\t\t\t\tthis.on_reset_sign();\n\t\t\t\t\treturn false;\n\t\t\t\t});\n\n\t\t}\n\t},\n\trefresh_input: function(e) {\n\t\t// prevent to load the second time\n\t\tthis.make_pad();\n\t\tthis.$wrapper.find(\".control-input\").toggle(false);\n\t\tthis.set_editable(this.get_status()==\"Write\");\n\t\tthis.load_pad();\n\t\tif(this.get_status()==\"Read\") {\n\t\t\t$(this.disp_area).toggle(false);\n\t\t}\n\t},\n\tset_image: function(value) {\n\t\tif(value) {\n\t\t\t$(this.img_wrapper).find(\".missing-image\").toggle(false);\n\t\t\tthis.img.attr(\"src\", value).toggle(true);\n\t\t} else {\n\t\t\t$(this.img_wrapper).find(\".missing-image\").toggle(true);\n\t\t\tthis.img.toggle(false);\n\t\t}\n\t},\n\tload_pad: function() {\n\t\t// make sure not triggered during saving\n\t\tif (this.saving) return;\n\t\t// get value\n\t\tvar value = this.get_value();\n\t\t// import data for pad\n\t\tif (this.$pad) {\n\t\t\tthis.loading = true;\n\t\t\t// reset in all cases\n\t\t\tthis.$pad.jSignature('reset');\n\t\t\tif (value) {\n\t\t\t\t// load the image to find out the size, because scaling will affect\n\t\t\t\t// stroke width\n\t\t\t\ttry {\n\t\t\t\t\tthis.$pad.jSignature('setData', value);\n\t\t\t\t\tthis.set_image(value);\n\t\t\t\t}\n\t\t\t\tcatch (e){\n\t\t\t\t\tconsole.log(\"Cannot set data for signature\", value, e);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.loading = false;\n\t\t}\n\t},\n\tset_editable: function(editable) {\n\t\tthis.$pad && this.$pad.toggle(editable);\n\t\tthis.img_wrapper.toggle(!editable);\n\t\tif (this.$reset_button_wrapper) {\n\t\t\tthis.$reset_button_wrapper.toggle(editable);\n\t\t\tif (editable) {\n\t\t\t\tthis.$reset_button_wrapper.addClass('editing');\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.$reset_button_wrapper.removeClass('editing');\n\t\t\t}\n\t\t}\n\t},\n\tset_my_value: function(value) {\n\t\tif (this.saving || this.loading) return;\n\t\tthis.saving = true;\n\t\tthis.set_value(value);\n\t\tthis.saving = false;\n\t},\n\tget_value: function() {\n\t\treturn this.value ? this.value: this.get_model_value();\n\t},\n\t// reset signature canvas\n\ton_reset_sign: function() {\n\t\tthis.$pad.jSignature(\"reset\");\n\t\tthis.set_my_value(\"\");\n\t},\n\t// save signature value to model and display\n\ton_save_sign: function() {\n\t\tif (this.saving || this.loading) return;\n\t\tvar base64_img = this.$pad.jSignature(\"getData\");\n\t\tthis.set_my_value(base64_img);\n\t\tthis.set_image(this.get_value());\n\t}\n});\n","frappe.ui.form.ControlPassword = frappe.ui.form.ControlData.extend({\n\tinput_type: \"password\",\n\tmake: function() {\n\t\tthis._super();\n\t},\n\tmake_input: function() {\n\t\tvar me = this;\n\t\tthis._super();\n\t\tthis.$input.parent().append($(''));\n\t\tthis.$wrapper.find('.control-input-wrapper').append($('

    '));\n\n\t\tthis.indicator = this.$wrapper.find('.password-strength-indicator');\n\t\tthis.message = this.$wrapper.find('.help-box');\n\n\t\tthis.$input.on('keyup', () => {\n\t\t\tclearTimeout(this.check_password_timeout);\n\t\t\tthis.check_password_timeout = setTimeout (() => {\n\t\t\t\tme.get_password_strength(me.$input.val());\n\t\t\t}, 500);\n\t\t});\n\t},\n\tget_password_strength: function(value) {\n\t\tvar me = this;\n\t\tfrappe.call({\n\t\t\ttype: 'POST',\n\t\t\tmethod: 'frappe.core.doctype.user.user.test_password_strength',\n\t\t\targs: {\n\t\t\t\tnew_password: value || ''\n\t\t\t},\n\t\t\tcallback: function(r) {\n\t\t\t\tif (r.message && r.message.entropy) {\n\t\t\t\t\tvar score = r.message.score,\n\t\t\t\t\t\tfeedback = r.message.feedback;\n\n\t\t\t\t\tfeedback.crack_time_display = r.message.crack_time_display;\n\n\t\t\t\t\tvar indicators = ['grey', 'red', 'orange', 'yellow', 'green'];\n\t\t\t\t\tme.set_strength_indicator(indicators[score]);\n\n\t\t\t\t}\n\t\t\t}\n\n\t\t});\n\t},\n\tset_strength_indicator: function(color) {\n\t\tvar message = __(\"Include symbols, numbers and capital letters in the password\");\n\t\tthis.indicator.removeClass().addClass('password-strength-indicator indicator ' + color);\n\t\tthis.message.html(message).removeClass('hidden');\n\t}\n});\n","frappe.ui.form.ControlReadOnly = frappe.ui.form.ControlData.extend({\n\tget_status: function(explain) {\n\t\tvar status = this._super(explain);\n\t\tif(status===\"Write\")\n\t\t\tstatus = \"Read\";\n\t\treturn;\n\t},\n});\n","frappe.ui.form.ControlButton = frappe.ui.form.ControlData.extend({\n\tcan_write() {\n\t\t// should be always true in case of button\n\t\treturn true;\n\t},\n\tmake_input: function() {\n\t\tvar me = this;\n\t\tconst btn_type = this.df.primary ? 'btn-primary': 'btn-default';\n\t\tconst btn_size = this.df.btn_size\n\t\t\t? `btn-${this.df.btn_size}`\n\t\t\t: \"btn-xs\";\n\t\tthis.$input = $(``)\n\t\t\t.click(e => {\n\t\t\t\tif (!this.showing_preview) {\n\t\t\t\t\tthis.update_preview();\n\t\t\t\t}\n\n\t\t\t\tconst $btn = $(e.target);\n\t\t\t\tthis.markdown_preview.toggle(!this.showing_preview);\n\t\t\t\tthis.ace_editor_target.toggle(this.showing_preview);\n\n\t\t\t\tthis.showing_preview = !this.showing_preview;\n\n\t\t\t\t$btn.text(this.showing_preview ? __('Edit') : __('Preview'));\n\t\t\t});\n\t\tthis.markdown_container.prepend(this.preview_toggle_btn);\n\n\t\tthis.markdown_preview = $(`
    `).hide();\n\t\tthis.markdown_container.append(this.markdown_preview);\n\t},\n\n\tset_language() {\n\t\tthis.df.options = 'Markdown';\n\t\tthis._super();\n\t},\n\n\tupdate_preview() {\n\t\tconst value = this.get_value() || \"\";\n\t\tthis.markdown_preview.html(frappe.markdown(value));\n\t},\n\n\tset_formatted_input(value) {\n\t\tthis._super(value)\n\t\t\t.then(() => {\n\t\t\t\tthis.update_preview();\n\t\t\t});\n\t},\n\n\tset_disp_area(value) {\n\t\tthis.disp_area && $(this.disp_area).text(value);\n\t}\n});\n","frappe.ui.form.ControlHTMLEditor = frappe.ui.form.ControlMarkdownEditor.extend({\n\teditor_class: 'html',\n\tset_language() {\n\t\tthis.df.options = 'HTML';\n\t\tthis._super();\n\t},\n\tupdate_preview() {\n\t\tif (!this.markdown_preview) return;\n\t\tlet value = this.get_value() || '';\n\t\tvalue = frappe.dom.remove_script_and_style(value);\n\t\tthis.markdown_preview.html(value);\n\t}\n});\n","frappe.ui.form.ControlHeading = frappe.ui.form.ControlHTML.extend({\n\tget_content: function() {\n\t\treturn \"

    \" + __(this.df.label) + \"

    \";\n\t}\n});\n","import Awesomplete from 'awesomplete';\n\nfrappe.ui.form.ControlAutocomplete = frappe.ui.form.ControlData.extend({\n\ttrigger_change_on_input_event: false,\n\tmake_input() {\n\t\tthis._super();\n\t\tthis.setup_awesomplete();\n\t\tthis.set_options();\n\t},\n\n\tset_options() {\n\t\tif (this.df.options) {\n\t\t\tlet options = this.df.options || [];\n\t\t\tthis._data = this.parse_options(options);\n\t\t}\n\t},\n\n\tget_awesomplete_settings() {\n\t\tvar me = this;\n\t\treturn {\n\t\t\tminChars: 0,\n\t\t\tmaxItems: this.df.max_items || 99,\n\t\t\tautoFirst: true,\n\t\t\tlist: this.get_data(),\n\t\t\tdata: function(item) {\n\t\t\t\tif (!(item instanceof Object)) {\n\t\t\t\t\tvar d = { value: item };\n\t\t\t\t\titem = d;\n\t\t\t\t}\n\n\t\t\t\treturn {\n\t\t\t\t\tlabel: item.label || item.value,\n\t\t\t\t\tvalue: item.value\n\t\t\t\t};\n\t\t\t},\n\t\t\tfilter: function(item, input) {\n\t\t\t\tlet hay = item.label + item.value;\n\t\t\t\treturn Awesomplete.FILTER_CONTAINS(hay, input);\n\t\t\t},\n\t\t\titem: function(item) {\n\t\t\t\tvar d = this.get_item(item.value);\n\t\t\t\tif (!d) {\n\t\t\t\t\td = item;\n\t\t\t\t}\n\n\t\t\t\tif (!d.label) {\n\t\t\t\t\td.label = d.value;\n\t\t\t\t}\n\n\t\t\t\tvar _label = me.translate_values ? __(d.label) : d.label;\n\t\t\t\tvar html = '' + _label + '';\n\t\t\t\tif (d.description) {\n\t\t\t\t\thtml += '
    ' + __(d.description) + '';\n\t\t\t\t}\n\n\t\t\t\treturn $('
  • ')\n\t\t\t\t\t.data('item.autocomplete', d)\n\t\t\t\t\t.prop('aria-selected', 'false')\n\t\t\t\t\t.html('

    ' + html + '

    ')\n\t\t\t\t\t.get(0);\n\t\t\t},\n\t\t\tsort: () => {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t};\n\t},\n\n\tsetup_awesomplete() {\n\t\tthis.awesomplete = new Awesomplete(\n\t\t\tthis.input,\n\t\t\tthis.get_awesomplete_settings()\n\t\t);\n\n\t\t$(this.input_area)\n\t\t\t.find('.awesomplete ul')\n\t\t\t.css('min-width', '100%');\n\n\t\tthis.$input.on(\n\t\t\t'input',\n\t\t\tfrappe.utils.debounce(() => {\n\t\t\t\tthis.awesomplete.list = this.get_data();\n\t\t\t}, 500)\n\t\t);\n\n\t\tthis.$input.on('focus', () => {\n\t\t\tif (!this.$input.val()) {\n\t\t\t\tthis.$input.val('');\n\t\t\t\tthis.$input.trigger('input');\n\t\t\t}\n\t\t});\n\n\t\tthis.$input.on(\"awesomplete-open\", () => {\n\t\t\tthis.autocomplete_open = true;\n\t\t});\n\n\t\tthis.$input.on(\"awesomplete-close\", () => {\n\t\t\tthis.autocomplete_open = false;\n\t\t});\n\n\t\tthis.$input.on('awesomplete-selectcomplete', () => {\n\t\t\tthis.$input.trigger('change');\n\t\t});\n\t},\n\n\tvalidate(value) {\n\t\tif (this.df.ignore_validation) {\n\t\t\treturn value || '';\n\t\t}\n\t\tlet valid_values = this.awesomplete._list.map(d => d.value);\n\t\tif (!valid_values.length) {\n\t\t\treturn value;\n\t\t}\n\t\tif (valid_values.includes(value)) {\n\t\t\treturn value;\n\t\t} else {\n\t\t\treturn '';\n\t\t}\n\t},\n\n\tparse_options(options) {\n\t\tif (typeof options === 'string') {\n\t\t\toptions = options.split('\\n');\n\t\t}\n\t\tif (typeof options[0] === 'string') {\n\t\t\toptions = options.map(o => ({ label: o, value: o }));\n\t\t}\n\t\treturn options;\n\t},\n\n\tget_data() {\n\t\treturn this._data || [];\n\t},\n\n\tset_data(data) {\n\t\tdata = this.parse_options(data);\n\t\tif (this.awesomplete) {\n\t\t\tthis.awesomplete.list = data;\n\t\t}\n\t\tthis._data = data;\n\t}\n});\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Barcode = function Barcode(data, options) {\n\t_classCallCheck(this, Barcode);\n\n\tthis.data = data;\n\tthis.text = options.text || data;\n\tthis.options = options;\n};\n\nexports.default = Barcode;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.CODE39 = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _Barcode2 = require(\"../Barcode.js\");\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:\n// https://en.wikipedia.org/wiki/Code_39#Encoding\n\nvar CODE39 = function (_Barcode) {\n\t_inherits(CODE39, _Barcode);\n\n\tfunction CODE39(data, options) {\n\t\t_classCallCheck(this, CODE39);\n\n\t\tdata = data.toUpperCase();\n\n\t\t// Calculate mod43 checksum if enabled\n\t\tif (options.mod43) {\n\t\t\tdata += getCharacter(mod43checksum(data));\n\t\t}\n\n\t\treturn _possibleConstructorReturn(this, (CODE39.__proto__ || Object.getPrototypeOf(CODE39)).call(this, data, options));\n\t}\n\n\t_createClass(CODE39, [{\n\t\tkey: \"encode\",\n\t\tvalue: function encode() {\n\t\t\t// First character is always a *\n\t\t\tvar result = getEncoding(\"*\");\n\n\t\t\t// Take every character and add the binary representation to the result\n\t\t\tfor (var i = 0; i < this.data.length; i++) {\n\t\t\t\tresult += getEncoding(this.data[i]) + \"0\";\n\t\t\t}\n\n\t\t\t// Last character is always a *\n\t\t\tresult += getEncoding(\"*\");\n\n\t\t\treturn {\n\t\t\t\tdata: result,\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}, {\n\t\tkey: \"valid\",\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9A-Z\\-\\.\\ \\$\\/\\+\\%]+$/) !== -1;\n\t\t}\n\t}]);\n\n\treturn CODE39;\n}(_Barcode3.default);\n\n// All characters. The position in the array is the (checksum) value\n\n\nvar characters = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\", \"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\", \"H\", \"I\", \"J\", \"K\", \"L\", \"M\", \"N\", \"O\", \"P\", \"Q\", \"R\", \"S\", \"T\", \"U\", \"V\", \"W\", \"X\", \"Y\", \"Z\", \"-\", \".\", \" \", \"$\", \"/\", \"+\", \"%\", \"*\"];\n\n// The decimal representation of the characters, is converted to the\n// corresponding binary with the getEncoding function\nvar encodings = [20957, 29783, 23639, 30485, 20951, 29813, 23669, 20855, 29789, 23645, 29975, 23831, 30533, 22295, 30149, 24005, 21623, 29981, 23837, 22301, 30023, 23879, 30545, 22343, 30161, 24017, 21959, 30065, 23921, 22385, 29015, 18263, 29141, 17879, 29045, 18293, 17783, 29021, 18269, 17477, 17489, 17681, 20753, 35770];\n\n// Get the binary representation of a character by converting the encodings\n// from decimal to binary\nfunction getEncoding(character) {\n\treturn getBinary(characterValue(character));\n}\n\nfunction getBinary(characterValue) {\n\treturn encodings[characterValue].toString(2);\n}\n\nfunction getCharacter(characterValue) {\n\treturn characters[characterValue];\n}\n\nfunction characterValue(character) {\n\treturn characters.indexOf(character);\n}\n\nfunction mod43checksum(data) {\n\tvar checksum = 0;\n\tfor (var i = 0; i < data.length; i++) {\n\t\tchecksum += characterValue(data[i]);\n\t}\n\n\tchecksum = checksum % 43;\n\treturn checksum;\n}\n\nexports.CODE39 = CODE39;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _SET_BY_CODE;\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// constants for internal usage\nvar SET_A = exports.SET_A = 0;\nvar SET_B = exports.SET_B = 1;\nvar SET_C = exports.SET_C = 2;\n\n// Special characters\nvar SHIFT = exports.SHIFT = 98;\nvar START_A = exports.START_A = 103;\nvar START_B = exports.START_B = 104;\nvar START_C = exports.START_C = 105;\nvar MODULO = exports.MODULO = 103;\nvar STOP = exports.STOP = 106;\nvar FNC1 = exports.FNC1 = 207;\n\n// Get set by start code\nvar SET_BY_CODE = exports.SET_BY_CODE = (_SET_BY_CODE = {}, _defineProperty(_SET_BY_CODE, START_A, SET_A), _defineProperty(_SET_BY_CODE, START_B, SET_B), _defineProperty(_SET_BY_CODE, START_C, SET_C), _SET_BY_CODE);\n\n// Get next set by code\nvar SWAP = exports.SWAP = {\n\t101: SET_A,\n\t100: SET_B,\n\t99: SET_C\n};\n\nvar A_START_CHAR = exports.A_START_CHAR = String.fromCharCode(208); // START_A + 105\nvar B_START_CHAR = exports.B_START_CHAR = String.fromCharCode(209); // START_B + 105\nvar C_START_CHAR = exports.C_START_CHAR = String.fromCharCode(210); // START_C + 105\n\n// 128A (Code Set A)\n// ASCII characters 00 to 95 (0–9, A–Z and control codes), special characters, and FNC 1–4\nvar A_CHARS = exports.A_CHARS = \"[\\x00-\\x5F\\xC8-\\xCF]\";\n\n// 128B (Code Set B)\n// ASCII characters 32 to 127 (0–9, A–Z, a–z), special characters, and FNC 1–4\nvar B_CHARS = exports.B_CHARS = \"[\\x20-\\x7F\\xC8-\\xCF]\";\n\n// 128C (Code Set C)\n// 00–99 (encodes two digits with a single code point) and FNC1\nvar C_CHARS = exports.C_CHARS = \"(\\xCF*[0-9]{2}\\xCF*)\";\n\n// CODE128 includes 107 symbols:\n// 103 data symbols, 3 start symbols (A, B and C), and 1 stop symbol (the last one)\n// Each symbol consist of three black bars (1) and three white spaces (0).\nvar BARS = exports.BARS = [11011001100, 11001101100, 11001100110, 10010011000, 10010001100, 10001001100, 10011001000, 10011000100, 10001100100, 11001001000, 11001000100, 11000100100, 10110011100, 10011011100, 10011001110, 10111001100, 10011101100, 10011100110, 11001110010, 11001011100, 11001001110, 11011100100, 11001110100, 11101101110, 11101001100, 11100101100, 11100100110, 11101100100, 11100110100, 11100110010, 11011011000, 11011000110, 11000110110, 10100011000, 10001011000, 10001000110, 10110001000, 10001101000, 10001100010, 11010001000, 11000101000, 11000100010, 10110111000, 10110001110, 10001101110, 10111011000, 10111000110, 10001110110, 11101110110, 11010001110, 11000101110, 11011101000, 11011100010, 11011101110, 11101011000, 11101000110, 11100010110, 11101101000, 11101100010, 11100011010, 11101111010, 11001000010, 11110001010, 10100110000, 10100001100, 10010110000, 10010000110, 10000101100, 10000100110, 10110010000, 10110000100, 10011010000, 10011000010, 10000110100, 10000110010, 11000010010, 11001010000, 11110111010, 11000010100, 10001111010, 10100111100, 10010111100, 10010011110, 10111100100, 10011110100, 10011110010, 11110100100, 11110010100, 11110010010, 11011011110, 11011110110, 11110110110, 10101111000, 10100011110, 10001011110, 10111101000, 10111100010, 11110101000, 11110100010, 10111011110, 10111101110, 11101011110, 11110101110, 11010000100, 11010010000, 11010011100, 1100011101011];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _Barcode2 = require('../Barcode.js');\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nvar _constants = require('./constants');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// This is the master class,\n// it does require the start code to be included in the string\nvar CODE128 = function (_Barcode) {\n\t_inherits(CODE128, _Barcode);\n\n\tfunction CODE128(data, options) {\n\t\t_classCallCheck(this, CODE128);\n\n\t\t// Get array of ascii codes from data\n\t\tvar _this = _possibleConstructorReturn(this, (CODE128.__proto__ || Object.getPrototypeOf(CODE128)).call(this, data.substring(1), options));\n\n\t\t_this.bytes = data.split('').map(function (char) {\n\t\t\treturn char.charCodeAt(0);\n\t\t});\n\t\treturn _this;\n\t}\n\n\t_createClass(CODE128, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\t// ASCII value ranges 0-127, 200-211\n\t\t\treturn (/^[\\x00-\\x7F\\xC8-\\xD3]+$/.test(this.data)\n\t\t\t);\n\t\t}\n\n\t\t// The public encoding function\n\n\t}, {\n\t\tkey: 'encode',\n\t\tvalue: function encode() {\n\t\t\tvar bytes = this.bytes;\n\t\t\t// Remove the start code from the bytes and set its index\n\t\t\tvar startIndex = bytes.shift() - 105;\n\t\t\t// Get start set by index\n\t\t\tvar startSet = _constants.SET_BY_CODE[startIndex];\n\n\t\t\tif (startSet === undefined) {\n\t\t\t\tthrow new RangeError('The encoding does not start with a start character.');\n\t\t\t}\n\n\t\t\tif (this.shouldEncodeAsEan128() === true) {\n\t\t\t\tbytes.unshift(_constants.FNC1);\n\t\t\t}\n\n\t\t\t// Start encode with the right type\n\t\t\tvar encodingResult = CODE128.next(bytes, 1, startSet);\n\n\t\t\treturn {\n\t\t\t\ttext: this.text === this.data ? this.text.replace(/[^\\x20-\\x7E]/g, '') : this.text,\n\t\t\t\tdata:\n\t\t\t\t// Add the start bits\n\t\t\t\tCODE128.getBar(startIndex) +\n\t\t\t\t// Add the encoded bits\n\t\t\t\tencodingResult.result +\n\t\t\t\t// Add the checksum\n\t\t\t\tCODE128.getBar((encodingResult.checksum + startIndex) % _constants.MODULO) +\n\t\t\t\t// Add the end bits\n\t\t\t\tCODE128.getBar(_constants.STOP)\n\t\t\t};\n\t\t}\n\n\t\t// GS1-128/EAN-128\n\n\t}, {\n\t\tkey: 'shouldEncodeAsEan128',\n\t\tvalue: function shouldEncodeAsEan128() {\n\t\t\tvar isEAN128 = this.options.ean128 || false;\n\t\t\tif (typeof isEAN128 === 'string') {\n\t\t\t\tisEAN128 = isEAN128.toLowerCase() === 'true';\n\t\t\t}\n\t\t\treturn isEAN128;\n\t\t}\n\n\t\t// Get a bar symbol by index\n\n\t}], [{\n\t\tkey: 'getBar',\n\t\tvalue: function getBar(index) {\n\t\t\treturn _constants.BARS[index] ? _constants.BARS[index].toString() : '';\n\t\t}\n\n\t\t// Correct an index by a set and shift it from the bytes array\n\n\t}, {\n\t\tkey: 'correctIndex',\n\t\tvalue: function correctIndex(bytes, set) {\n\t\t\tif (set === _constants.SET_A) {\n\t\t\t\tvar charCode = bytes.shift();\n\t\t\t\treturn charCode < 32 ? charCode + 64 : charCode - 32;\n\t\t\t} else if (set === _constants.SET_B) {\n\t\t\t\treturn bytes.shift() - 32;\n\t\t\t} else {\n\t\t\t\treturn (bytes.shift() - 48) * 10 + bytes.shift() - 48;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'next',\n\t\tvalue: function next(bytes, pos, set) {\n\t\t\tif (!bytes.length) {\n\t\t\t\treturn { result: '', checksum: 0 };\n\t\t\t}\n\n\t\t\tvar nextCode = void 0,\n\t\t\t index = void 0;\n\n\t\t\t// Special characters\n\t\t\tif (bytes[0] >= 200) {\n\t\t\t\tindex = bytes.shift() - 105;\n\t\t\t\tvar nextSet = _constants.SWAP[index];\n\n\t\t\t\t// Swap to other set\n\t\t\t\tif (nextSet !== undefined) {\n\t\t\t\t\tnextCode = CODE128.next(bytes, pos + 1, nextSet);\n\t\t\t\t}\n\t\t\t\t// Continue on current set but encode a special character\n\t\t\t\telse {\n\t\t\t\t\t\t// Shift\n\t\t\t\t\t\tif ((set === _constants.SET_A || set === _constants.SET_B) && index === _constants.SHIFT) {\n\t\t\t\t\t\t\t// Convert the next character so that is encoded correctly\n\t\t\t\t\t\t\tbytes[0] = set === _constants.SET_A ? bytes[0] > 95 ? bytes[0] - 96 : bytes[0] : bytes[0] < 32 ? bytes[0] + 96 : bytes[0];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tnextCode = CODE128.next(bytes, pos + 1, set);\n\t\t\t\t\t}\n\t\t\t}\n\t\t\t// Continue encoding\n\t\t\telse {\n\t\t\t\t\tindex = CODE128.correctIndex(bytes, set);\n\t\t\t\t\tnextCode = CODE128.next(bytes, pos + 1, set);\n\t\t\t\t}\n\n\t\t\t// Get the correct binary encoding and calculate the weight\n\t\t\tvar enc = CODE128.getBar(index);\n\t\t\tvar weight = index * pos;\n\n\t\t\treturn {\n\t\t\t\tresult: enc + nextCode.result,\n\t\t\t\tchecksum: weight + nextCode.checksum\n\t\t\t};\n\t\t}\n\t}]);\n\n\treturn CODE128;\n}(_Barcode3.default);\n\nexports.default = CODE128;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _constants = require('./constants');\n\n// Match Set functions\nvar matchSetALength = function matchSetALength(string) {\n\treturn string.match(new RegExp('^' + _constants.A_CHARS + '*'))[0].length;\n};\nvar matchSetBLength = function matchSetBLength(string) {\n\treturn string.match(new RegExp('^' + _constants.B_CHARS + '*'))[0].length;\n};\nvar matchSetC = function matchSetC(string) {\n\treturn string.match(new RegExp('^' + _constants.C_CHARS + '*'))[0];\n};\n\n// CODE128A or CODE128B\nfunction autoSelectFromAB(string, isA) {\n\tvar ranges = isA ? _constants.A_CHARS : _constants.B_CHARS;\n\tvar untilC = string.match(new RegExp('^(' + ranges + '+?)(([0-9]{2}){2,})([^0-9]|$)'));\n\n\tif (untilC) {\n\t\treturn untilC[1] + String.fromCharCode(204) + autoSelectFromC(string.substring(untilC[1].length));\n\t}\n\n\tvar chars = string.match(new RegExp('^' + ranges + '+'))[0];\n\n\tif (chars.length === string.length) {\n\t\treturn string;\n\t}\n\n\treturn chars + String.fromCharCode(isA ? 205 : 206) + autoSelectFromAB(string.substring(chars.length), !isA);\n}\n\n// CODE128C\nfunction autoSelectFromC(string) {\n\tvar cMatch = matchSetC(string);\n\tvar length = cMatch.length;\n\n\tif (length === string.length) {\n\t\treturn string;\n\t}\n\n\tstring = string.substring(length);\n\n\t// Select A/B depending on the longest match\n\tvar isA = matchSetALength(string) >= matchSetBLength(string);\n\treturn cMatch + String.fromCharCode(isA ? 206 : 205) + autoSelectFromAB(string, isA);\n}\n\n// Detect Code Set (A, B or C) and format the string\n\nexports.default = function (string) {\n\tvar newString = void 0;\n\tvar cLength = matchSetC(string).length;\n\n\t// Select 128C if the string start with enough digits\n\tif (cLength >= 2) {\n\t\tnewString = _constants.C_START_CHAR + autoSelectFromC(string);\n\t} else {\n\t\t// Select A/B depending on the longest match\n\t\tvar isA = matchSetALength(string) > matchSetBLength(string);\n\t\tnewString = (isA ? _constants.A_START_CHAR : _constants.B_START_CHAR) + autoSelectFromAB(string, isA);\n\t}\n\n\treturn newString.replace(/[\\xCD\\xCE]([^])[\\xCD\\xCE]/, // Any sequence between 205 and 206 characters\n\tfunction (match, char) {\n\t\treturn String.fromCharCode(203) + char;\n\t});\n};","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _CODE2 = require('./CODE128');\n\nvar _CODE3 = _interopRequireDefault(_CODE2);\n\nvar _auto = require('./auto');\n\nvar _auto2 = _interopRequireDefault(_auto);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar CODE128AUTO = function (_CODE) {\n\t_inherits(CODE128AUTO, _CODE);\n\n\tfunction CODE128AUTO(data, options) {\n\t\t_classCallCheck(this, CODE128AUTO);\n\n\t\t// ASCII value ranges 0-127, 200-211\n\t\tif (/^[\\x00-\\x7F\\xC8-\\xD3]+$/.test(data)) {\n\t\t\tvar _this = _possibleConstructorReturn(this, (CODE128AUTO.__proto__ || Object.getPrototypeOf(CODE128AUTO)).call(this, (0, _auto2.default)(data), options));\n\t\t} else {\n\t\t\tvar _this = _possibleConstructorReturn(this, (CODE128AUTO.__proto__ || Object.getPrototypeOf(CODE128AUTO)).call(this, data, options));\n\t\t}\n\t\treturn _possibleConstructorReturn(_this);\n\t}\n\n\treturn CODE128AUTO;\n}(_CODE3.default);\n\nexports.default = CODE128AUTO;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _CODE2 = require('./CODE128.js');\n\nvar _CODE3 = _interopRequireDefault(_CODE2);\n\nvar _constants = require('./constants');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar CODE128A = function (_CODE) {\n\t_inherits(CODE128A, _CODE);\n\n\tfunction CODE128A(string, options) {\n\t\t_classCallCheck(this, CODE128A);\n\n\t\treturn _possibleConstructorReturn(this, (CODE128A.__proto__ || Object.getPrototypeOf(CODE128A)).call(this, _constants.A_START_CHAR + string, options));\n\t}\n\n\t_createClass(CODE128A, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn new RegExp('^' + _constants.A_CHARS + '+$').test(this.data);\n\t\t}\n\t}]);\n\n\treturn CODE128A;\n}(_CODE3.default);\n\nexports.default = CODE128A;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _CODE2 = require('./CODE128.js');\n\nvar _CODE3 = _interopRequireDefault(_CODE2);\n\nvar _constants = require('./constants');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar CODE128B = function (_CODE) {\n\t_inherits(CODE128B, _CODE);\n\n\tfunction CODE128B(string, options) {\n\t\t_classCallCheck(this, CODE128B);\n\n\t\treturn _possibleConstructorReturn(this, (CODE128B.__proto__ || Object.getPrototypeOf(CODE128B)).call(this, _constants.B_START_CHAR + string, options));\n\t}\n\n\t_createClass(CODE128B, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn new RegExp('^' + _constants.B_CHARS + '+$').test(this.data);\n\t\t}\n\t}]);\n\n\treturn CODE128B;\n}(_CODE3.default);\n\nexports.default = CODE128B;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _CODE2 = require('./CODE128.js');\n\nvar _CODE3 = _interopRequireDefault(_CODE2);\n\nvar _constants = require('./constants');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar CODE128C = function (_CODE) {\n\t_inherits(CODE128C, _CODE);\n\n\tfunction CODE128C(string, options) {\n\t\t_classCallCheck(this, CODE128C);\n\n\t\treturn _possibleConstructorReturn(this, (CODE128C.__proto__ || Object.getPrototypeOf(CODE128C)).call(this, _constants.C_START_CHAR + string, options));\n\t}\n\n\t_createClass(CODE128C, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn new RegExp('^' + _constants.C_CHARS + '+$').test(this.data);\n\t\t}\n\t}]);\n\n\treturn CODE128C;\n}(_CODE3.default);\n\nexports.default = CODE128C;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CODE128C = exports.CODE128B = exports.CODE128A = exports.CODE128 = undefined;\n\nvar _CODE128_AUTO = require('./CODE128_AUTO.js');\n\nvar _CODE128_AUTO2 = _interopRequireDefault(_CODE128_AUTO);\n\nvar _CODE128A = require('./CODE128A.js');\n\nvar _CODE128A2 = _interopRequireDefault(_CODE128A);\n\nvar _CODE128B = require('./CODE128B.js');\n\nvar _CODE128B2 = _interopRequireDefault(_CODE128B);\n\nvar _CODE128C = require('./CODE128C.js');\n\nvar _CODE128C2 = _interopRequireDefault(_CODE128C);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.CODE128 = _CODE128_AUTO2.default;\nexports.CODE128A = _CODE128A2.default;\nexports.CODE128B = _CODE128B2.default;\nexports.CODE128C = _CODE128C2.default;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n// Standard start end and middle bits\nvar SIDE_BIN = exports.SIDE_BIN = '101';\nvar MIDDLE_BIN = exports.MIDDLE_BIN = '01010';\n\nvar BINARIES = exports.BINARIES = {\n\t'L': [// The L (left) type of encoding\n\t'0001101', '0011001', '0010011', '0111101', '0100011', '0110001', '0101111', '0111011', '0110111', '0001011'],\n\t'G': [// The G type of encoding\n\t'0100111', '0110011', '0011011', '0100001', '0011101', '0111001', '0000101', '0010001', '0001001', '0010111'],\n\t'R': [// The R (right) type of encoding\n\t'1110010', '1100110', '1101100', '1000010', '1011100', '1001110', '1010000', '1000100', '1001000', '1110100'],\n\t'O': [// The O (odd) encoding for UPC-E\n\t'0001101', '0011001', '0010011', '0111101', '0100011', '0110001', '0101111', '0111011', '0110111', '0001011'],\n\t'E': [// The E (even) encoding for UPC-E\n\t'0100111', '0110011', '0011011', '0100001', '0011101', '0111001', '0000101', '0010001', '0001001', '0010111']\n};\n\n// Define the EAN-2 structure\nvar EAN2_STRUCTURE = exports.EAN2_STRUCTURE = ['LL', 'LG', 'GL', 'GG'];\n\n// Define the EAN-5 structure\nvar EAN5_STRUCTURE = exports.EAN5_STRUCTURE = ['GGLLL', 'GLGLL', 'GLLGL', 'GLLLG', 'LGGLL', 'LLGGL', 'LLLGG', 'LGLGL', 'LGLLG', 'LLGLG'];\n\n// Define the EAN-13 structure\nvar EAN13_STRUCTURE = exports.EAN13_STRUCTURE = ['LLLLLL', 'LLGLGG', 'LLGGLG', 'LLGGGL', 'LGLLGG', 'LGGLLG', 'LGGGLL', 'LGLGLG', 'LGLGGL', 'LGGLGL'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _constants = require('./constants');\n\n// Encode data string\nvar encode = function encode(data, structure, separator) {\n\tvar encoded = data.split('').map(function (val, idx) {\n\t\treturn _constants.BINARIES[structure[idx]];\n\t}).map(function (val, idx) {\n\t\treturn val ? val[data[idx]] : '';\n\t});\n\n\tif (separator) {\n\t\tvar last = data.length - 1;\n\t\tencoded = encoded.map(function (val, idx) {\n\t\t\treturn idx < last ? val + separator : val;\n\t\t});\n\t}\n\n\treturn encoded.join('');\n};\n\nexports.default = encode;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _constants = require('./constants');\n\nvar _encoder = require('./encoder');\n\nvar _encoder2 = _interopRequireDefault(_encoder);\n\nvar _Barcode2 = require('../Barcode');\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// Base class for EAN8 & EAN13\nvar EAN = function (_Barcode) {\n\t_inherits(EAN, _Barcode);\n\n\tfunction EAN(data, options) {\n\t\t_classCallCheck(this, EAN);\n\n\t\t// Make sure the font is not bigger than the space between the guard bars\n\t\tvar _this = _possibleConstructorReturn(this, (EAN.__proto__ || Object.getPrototypeOf(EAN)).call(this, data, options));\n\n\t\t_this.fontSize = !options.flat && options.fontSize > options.width * 10 ? options.width * 10 : options.fontSize;\n\n\t\t// Make the guard bars go down half the way of the text\n\t\t_this.guardHeight = options.height + _this.fontSize / 2 + options.textMargin;\n\t\treturn _this;\n\t}\n\n\t_createClass(EAN, [{\n\t\tkey: 'encode',\n\t\tvalue: function encode() {\n\t\t\treturn this.options.flat ? this.encodeFlat() : this.encodeGuarded();\n\t\t}\n\t}, {\n\t\tkey: 'leftText',\n\t\tvalue: function leftText(from, to) {\n\t\t\treturn this.text.substr(from, to);\n\t\t}\n\t}, {\n\t\tkey: 'leftEncode',\n\t\tvalue: function leftEncode(data, structure) {\n\t\t\treturn (0, _encoder2.default)(data, structure);\n\t\t}\n\t}, {\n\t\tkey: 'rightText',\n\t\tvalue: function rightText(from, to) {\n\t\t\treturn this.text.substr(from, to);\n\t\t}\n\t}, {\n\t\tkey: 'rightEncode',\n\t\tvalue: function rightEncode(data, structure) {\n\t\t\treturn (0, _encoder2.default)(data, structure);\n\t\t}\n\t}, {\n\t\tkey: 'encodeGuarded',\n\t\tvalue: function encodeGuarded() {\n\t\t\tvar textOptions = { fontSize: this.fontSize };\n\t\t\tvar guardOptions = { height: this.guardHeight };\n\n\t\t\treturn [{ data: _constants.SIDE_BIN, options: guardOptions }, { data: this.leftEncode(), text: this.leftText(), options: textOptions }, { data: _constants.MIDDLE_BIN, options: guardOptions }, { data: this.rightEncode(), text: this.rightText(), options: textOptions }, { data: _constants.SIDE_BIN, options: guardOptions }];\n\t\t}\n\t}, {\n\t\tkey: 'encodeFlat',\n\t\tvalue: function encodeFlat() {\n\t\t\tvar data = [_constants.SIDE_BIN, this.leftEncode(), _constants.MIDDLE_BIN, this.rightEncode(), _constants.SIDE_BIN];\n\n\t\t\treturn {\n\t\t\t\tdata: data.join(''),\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}]);\n\n\treturn EAN;\n}(_Barcode3.default);\n\nexports.default = EAN;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if (\"value\" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };\n\nvar _constants = require('./constants');\n\nvar _EAN2 = require('./EAN');\n\nvar _EAN3 = _interopRequireDefault(_EAN2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:\n// https://en.wikipedia.org/wiki/International_Article_Number_(EAN)#Binary_encoding_of_data_digits_into_EAN-13_barcode\n\n// Calculate the checksum digit\n// https://en.wikipedia.org/wiki/International_Article_Number_(EAN)#Calculation_of_checksum_digit\nvar checksum = function checksum(number) {\n\tvar res = number.substr(0, 12).split('').map(function (n) {\n\t\treturn +n;\n\t}).reduce(function (sum, a, idx) {\n\t\treturn idx % 2 ? sum + a * 3 : sum + a;\n\t}, 0);\n\n\treturn (10 - res % 10) % 10;\n};\n\nvar EAN13 = function (_EAN) {\n\t_inherits(EAN13, _EAN);\n\n\tfunction EAN13(data, options) {\n\t\t_classCallCheck(this, EAN13);\n\n\t\t// Add checksum if it does not exist\n\t\tif (data.search(/^[0-9]{12}$/) !== -1) {\n\t\t\tdata += checksum(data);\n\t\t}\n\n\t\t// Adds a last character to the end of the barcode\n\t\tvar _this = _possibleConstructorReturn(this, (EAN13.__proto__ || Object.getPrototypeOf(EAN13)).call(this, data, options));\n\n\t\t_this.lastChar = options.lastChar;\n\t\treturn _this;\n\t}\n\n\t_createClass(EAN13, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9]{13}$/) !== -1 && +this.data[12] === checksum(this.data);\n\t\t}\n\t}, {\n\t\tkey: 'leftText',\n\t\tvalue: function leftText() {\n\t\t\treturn _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'leftText', this).call(this, 1, 6);\n\t\t}\n\t}, {\n\t\tkey: 'leftEncode',\n\t\tvalue: function leftEncode() {\n\t\t\tvar data = this.data.substr(1, 6);\n\t\t\tvar structure = _constants.EAN13_STRUCTURE[this.data[0]];\n\t\t\treturn _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'leftEncode', this).call(this, data, structure);\n\t\t}\n\t}, {\n\t\tkey: 'rightText',\n\t\tvalue: function rightText() {\n\t\t\treturn _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'rightText', this).call(this, 7, 6);\n\t\t}\n\t}, {\n\t\tkey: 'rightEncode',\n\t\tvalue: function rightEncode() {\n\t\t\tvar data = this.data.substr(7, 6);\n\t\t\treturn _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'rightEncode', this).call(this, data, 'RRRRRR');\n\t\t}\n\n\t\t// The \"standard\" way of printing EAN13 barcodes with guard bars\n\n\t}, {\n\t\tkey: 'encodeGuarded',\n\t\tvalue: function encodeGuarded() {\n\t\t\tvar data = _get(EAN13.prototype.__proto__ || Object.getPrototypeOf(EAN13.prototype), 'encodeGuarded', this).call(this);\n\n\t\t\t// Extend data with left digit & last character\n\t\t\tif (this.options.displayValue) {\n\t\t\t\tdata.unshift({\n\t\t\t\t\tdata: '000000000000',\n\t\t\t\t\ttext: this.text.substr(0, 1),\n\t\t\t\t\toptions: { textAlign: 'left', fontSize: this.fontSize }\n\t\t\t\t});\n\n\t\t\t\tif (this.options.lastChar) {\n\t\t\t\t\tdata.push({\n\t\t\t\t\t\tdata: '00'\n\t\t\t\t\t});\n\t\t\t\t\tdata.push({\n\t\t\t\t\t\tdata: '00000',\n\t\t\t\t\t\ttext: this.options.lastChar,\n\t\t\t\t\t\toptions: { fontSize: this.fontSize }\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn data;\n\t\t}\n\t}]);\n\n\treturn EAN13;\n}(_EAN3.default);\n\nexports.default = EAN13;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if (\"value\" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };\n\nvar _EAN2 = require('./EAN');\n\nvar _EAN3 = _interopRequireDefault(_EAN2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:\n// http://www.barcodeisland.com/ean8.phtml\n\n// Calculate the checksum digit\nvar checksum = function checksum(number) {\n\tvar res = number.substr(0, 7).split('').map(function (n) {\n\t\treturn +n;\n\t}).reduce(function (sum, a, idx) {\n\t\treturn idx % 2 ? sum + a : sum + a * 3;\n\t}, 0);\n\n\treturn (10 - res % 10) % 10;\n};\n\nvar EAN8 = function (_EAN) {\n\t_inherits(EAN8, _EAN);\n\n\tfunction EAN8(data, options) {\n\t\t_classCallCheck(this, EAN8);\n\n\t\t// Add checksum if it does not exist\n\t\tif (data.search(/^[0-9]{7}$/) !== -1) {\n\t\t\tdata += checksum(data);\n\t\t}\n\n\t\treturn _possibleConstructorReturn(this, (EAN8.__proto__ || Object.getPrototypeOf(EAN8)).call(this, data, options));\n\t}\n\n\t_createClass(EAN8, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9]{8}$/) !== -1 && +this.data[7] === checksum(this.data);\n\t\t}\n\t}, {\n\t\tkey: 'leftText',\n\t\tvalue: function leftText() {\n\t\t\treturn _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'leftText', this).call(this, 0, 4);\n\t\t}\n\t}, {\n\t\tkey: 'leftEncode',\n\t\tvalue: function leftEncode() {\n\t\t\tvar data = this.data.substr(0, 4);\n\t\t\treturn _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'leftEncode', this).call(this, data, 'LLLL');\n\t\t}\n\t}, {\n\t\tkey: 'rightText',\n\t\tvalue: function rightText() {\n\t\t\treturn _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'rightText', this).call(this, 4, 4);\n\t\t}\n\t}, {\n\t\tkey: 'rightEncode',\n\t\tvalue: function rightEncode() {\n\t\t\tvar data = this.data.substr(4, 4);\n\t\t\treturn _get(EAN8.prototype.__proto__ || Object.getPrototypeOf(EAN8.prototype), 'rightEncode', this).call(this, data, 'RRRR');\n\t\t}\n\t}]);\n\n\treturn EAN8;\n}(_EAN3.default);\n\nexports.default = EAN8;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _constants = require('./constants');\n\nvar _encoder = require('./encoder');\n\nvar _encoder2 = _interopRequireDefault(_encoder);\n\nvar _Barcode2 = require('../Barcode');\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:\n// https://en.wikipedia.org/wiki/EAN_5#Encoding\n\nvar checksum = function checksum(data) {\n\tvar result = data.split('').map(function (n) {\n\t\treturn +n;\n\t}).reduce(function (sum, a, idx) {\n\t\treturn idx % 2 ? sum + a * 9 : sum + a * 3;\n\t}, 0);\n\treturn result % 10;\n};\n\nvar EAN5 = function (_Barcode) {\n\t_inherits(EAN5, _Barcode);\n\n\tfunction EAN5(data, options) {\n\t\t_classCallCheck(this, EAN5);\n\n\t\treturn _possibleConstructorReturn(this, (EAN5.__proto__ || Object.getPrototypeOf(EAN5)).call(this, data, options));\n\t}\n\n\t_createClass(EAN5, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9]{5}$/) !== -1;\n\t\t}\n\t}, {\n\t\tkey: 'encode',\n\t\tvalue: function encode() {\n\t\t\tvar structure = _constants.EAN5_STRUCTURE[checksum(this.data)];\n\t\t\treturn {\n\t\t\t\tdata: '1011' + (0, _encoder2.default)(this.data, structure, '01'),\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}]);\n\n\treturn EAN5;\n}(_Barcode3.default);\n\nexports.default = EAN5;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _constants = require('./constants');\n\nvar _encoder = require('./encoder');\n\nvar _encoder2 = _interopRequireDefault(_encoder);\n\nvar _Barcode2 = require('../Barcode');\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:\n// https://en.wikipedia.org/wiki/EAN_2#Encoding\n\nvar EAN2 = function (_Barcode) {\n\t_inherits(EAN2, _Barcode);\n\n\tfunction EAN2(data, options) {\n\t\t_classCallCheck(this, EAN2);\n\n\t\treturn _possibleConstructorReturn(this, (EAN2.__proto__ || Object.getPrototypeOf(EAN2)).call(this, data, options));\n\t}\n\n\t_createClass(EAN2, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9]{2}$/) !== -1;\n\t\t}\n\t}, {\n\t\tkey: 'encode',\n\t\tvalue: function encode() {\n\t\t\t// Choose the structure based on the number mod 4\n\t\t\tvar structure = _constants.EAN2_STRUCTURE[parseInt(this.data) % 4];\n\t\t\treturn {\n\t\t\t\t// Start bits + Encode the two digits with 01 in between\n\t\t\t\tdata: '1011' + (0, _encoder2.default)(this.data, structure, '01'),\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}]);\n\n\treturn EAN2;\n}(_Barcode3.default);\n\nexports.default = EAN2;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.checksum = checksum;\n\nvar _encoder = require(\"./encoder\");\n\nvar _encoder2 = _interopRequireDefault(_encoder);\n\nvar _Barcode2 = require(\"../Barcode.js\");\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:\n// https://en.wikipedia.org/wiki/Universal_Product_Code#Encoding\n\nvar UPC = function (_Barcode) {\n\t_inherits(UPC, _Barcode);\n\n\tfunction UPC(data, options) {\n\t\t_classCallCheck(this, UPC);\n\n\t\t// Add checksum if it does not exist\n\t\tif (data.search(/^[0-9]{11}$/) !== -1) {\n\t\t\tdata += checksum(data);\n\t\t}\n\n\t\tvar _this = _possibleConstructorReturn(this, (UPC.__proto__ || Object.getPrototypeOf(UPC)).call(this, data, options));\n\n\t\t_this.displayValue = options.displayValue;\n\n\t\t// Make sure the font is not bigger than the space between the guard bars\n\t\tif (options.fontSize > options.width * 10) {\n\t\t\t_this.fontSize = options.width * 10;\n\t\t} else {\n\t\t\t_this.fontSize = options.fontSize;\n\t\t}\n\n\t\t// Make the guard bars go down half the way of the text\n\t\t_this.guardHeight = options.height + _this.fontSize / 2 + options.textMargin;\n\t\treturn _this;\n\t}\n\n\t_createClass(UPC, [{\n\t\tkey: \"valid\",\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9]{12}$/) !== -1 && this.data[11] == checksum(this.data);\n\t\t}\n\t}, {\n\t\tkey: \"encode\",\n\t\tvalue: function encode() {\n\t\t\tif (this.options.flat) {\n\t\t\t\treturn this.flatEncoding();\n\t\t\t} else {\n\t\t\t\treturn this.guardedEncoding();\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"flatEncoding\",\n\t\tvalue: function flatEncoding() {\n\t\t\tvar result = \"\";\n\n\t\t\tresult += \"101\";\n\t\t\tresult += (0, _encoder2.default)(this.data.substr(0, 6), \"LLLLLL\");\n\t\t\tresult += \"01010\";\n\t\t\tresult += (0, _encoder2.default)(this.data.substr(6, 6), \"RRRRRR\");\n\t\t\tresult += \"101\";\n\n\t\t\treturn {\n\t\t\t\tdata: result,\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}, {\n\t\tkey: \"guardedEncoding\",\n\t\tvalue: function guardedEncoding() {\n\t\t\tvar result = [];\n\n\t\t\t// Add the first digit\n\t\t\tif (this.displayValue) {\n\t\t\t\tresult.push({\n\t\t\t\t\tdata: \"00000000\",\n\t\t\t\t\ttext: this.text.substr(0, 1),\n\t\t\t\t\toptions: { textAlign: \"left\", fontSize: this.fontSize }\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// Add the guard bars\n\t\t\tresult.push({\n\t\t\t\tdata: \"101\" + (0, _encoder2.default)(this.data[0], \"L\"),\n\t\t\t\toptions: { height: this.guardHeight }\n\t\t\t});\n\n\t\t\t// Add the left side\n\t\t\tresult.push({\n\t\t\t\tdata: (0, _encoder2.default)(this.data.substr(1, 5), \"LLLLL\"),\n\t\t\t\ttext: this.text.substr(1, 5),\n\t\t\t\toptions: { fontSize: this.fontSize }\n\t\t\t});\n\n\t\t\t// Add the middle bits\n\t\t\tresult.push({\n\t\t\t\tdata: \"01010\",\n\t\t\t\toptions: { height: this.guardHeight }\n\t\t\t});\n\n\t\t\t// Add the right side\n\t\t\tresult.push({\n\t\t\t\tdata: (0, _encoder2.default)(this.data.substr(6, 5), \"RRRRR\"),\n\t\t\t\ttext: this.text.substr(6, 5),\n\t\t\t\toptions: { fontSize: this.fontSize }\n\t\t\t});\n\n\t\t\t// Add the end bits\n\t\t\tresult.push({\n\t\t\t\tdata: (0, _encoder2.default)(this.data[11], \"R\") + \"101\",\n\t\t\t\toptions: { height: this.guardHeight }\n\t\t\t});\n\n\t\t\t// Add the last digit\n\t\t\tif (this.displayValue) {\n\t\t\t\tresult.push({\n\t\t\t\t\tdata: \"00000000\",\n\t\t\t\t\ttext: this.text.substr(11, 1),\n\t\t\t\t\toptions: { textAlign: \"right\", fontSize: this.fontSize }\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}\n\t}]);\n\n\treturn UPC;\n}(_Barcode3.default);\n\n// Calulate the checksum digit\n// https://en.wikipedia.org/wiki/International_Article_Number_(EAN)#Calculation_of_checksum_digit\n\n\nfunction checksum(number) {\n\tvar result = 0;\n\n\tvar i;\n\tfor (i = 1; i < 11; i += 2) {\n\t\tresult += parseInt(number[i]);\n\t}\n\tfor (i = 0; i < 11; i += 2) {\n\t\tresult += parseInt(number[i]) * 3;\n\t}\n\n\treturn (10 - result % 10) % 10;\n}\n\nexports.default = UPC;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _encoder = require('./encoder');\n\nvar _encoder2 = _interopRequireDefault(_encoder);\n\nvar _Barcode2 = require('../Barcode.js');\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nvar _UPC = require('./UPC.js');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation:\n// https://en.wikipedia.org/wiki/Universal_Product_Code#Encoding\n//\n// UPC-E documentation:\n// https://en.wikipedia.org/wiki/Universal_Product_Code#UPC-E\n\nvar EXPANSIONS = [\"XX00000XXX\", \"XX10000XXX\", \"XX20000XXX\", \"XXX00000XX\", \"XXXX00000X\", \"XXXXX00005\", \"XXXXX00006\", \"XXXXX00007\", \"XXXXX00008\", \"XXXXX00009\"];\n\nvar PARITIES = [[\"EEEOOO\", \"OOOEEE\"], [\"EEOEOO\", \"OOEOEE\"], [\"EEOOEO\", \"OOEEOE\"], [\"EEOOOE\", \"OOEEEO\"], [\"EOEEOO\", \"OEOOEE\"], [\"EOOEEO\", \"OEEOOE\"], [\"EOOOEE\", \"OEEEOO\"], [\"EOEOEO\", \"OEOEOE\"], [\"EOEOOE\", \"OEOEEO\"], [\"EOOEOE\", \"OEEOEO\"]];\n\nvar UPCE = function (_Barcode) {\n\t_inherits(UPCE, _Barcode);\n\n\tfunction UPCE(data, options) {\n\t\t_classCallCheck(this, UPCE);\n\n\t\tvar _this = _possibleConstructorReturn(this, (UPCE.__proto__ || Object.getPrototypeOf(UPCE)).call(this, data, options));\n\t\t// Code may be 6 or 8 digits;\n\t\t// A 7 digit code is ambiguous as to whether the extra digit\n\t\t// is a UPC-A check or number system digit.\n\n\n\t\t_this.isValid = false;\n\t\tif (data.search(/^[0-9]{6}$/) !== -1) {\n\t\t\t_this.middleDigits = data;\n\t\t\t_this.upcA = expandToUPCA(data, \"0\");\n\t\t\t_this.text = options.text || '' + _this.upcA[0] + data + _this.upcA[_this.upcA.length - 1];\n\t\t\t_this.isValid = true;\n\t\t} else if (data.search(/^[01][0-9]{7}$/) !== -1) {\n\t\t\t_this.middleDigits = data.substring(1, data.length - 1);\n\t\t\t_this.upcA = expandToUPCA(_this.middleDigits, data[0]);\n\n\t\t\tif (_this.upcA[_this.upcA.length - 1] === data[data.length - 1]) {\n\t\t\t\t_this.isValid = true;\n\t\t\t} else {\n\t\t\t\t// checksum mismatch\n\t\t\t\treturn _possibleConstructorReturn(_this);\n\t\t\t}\n\t\t} else {\n\t\t\treturn _possibleConstructorReturn(_this);\n\t\t}\n\n\t\t_this.displayValue = options.displayValue;\n\n\t\t// Make sure the font is not bigger than the space between the guard bars\n\t\tif (options.fontSize > options.width * 10) {\n\t\t\t_this.fontSize = options.width * 10;\n\t\t} else {\n\t\t\t_this.fontSize = options.fontSize;\n\t\t}\n\n\t\t// Make the guard bars go down half the way of the text\n\t\t_this.guardHeight = options.height + _this.fontSize / 2 + options.textMargin;\n\t\treturn _this;\n\t}\n\n\t_createClass(UPCE, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn this.isValid;\n\t\t}\n\t}, {\n\t\tkey: 'encode',\n\t\tvalue: function encode() {\n\t\t\tif (this.options.flat) {\n\t\t\t\treturn this.flatEncoding();\n\t\t\t} else {\n\t\t\t\treturn this.guardedEncoding();\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'flatEncoding',\n\t\tvalue: function flatEncoding() {\n\t\t\tvar result = \"\";\n\n\t\t\tresult += \"101\";\n\t\t\tresult += this.encodeMiddleDigits();\n\t\t\tresult += \"010101\";\n\n\t\t\treturn {\n\t\t\t\tdata: result,\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}, {\n\t\tkey: 'guardedEncoding',\n\t\tvalue: function guardedEncoding() {\n\t\t\tvar result = [];\n\n\t\t\t// Add the UPC-A number system digit beneath the quiet zone\n\t\t\tif (this.displayValue) {\n\t\t\t\tresult.push({\n\t\t\t\t\tdata: \"00000000\",\n\t\t\t\t\ttext: this.text[0],\n\t\t\t\t\toptions: { textAlign: \"left\", fontSize: this.fontSize }\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// Add the guard bars\n\t\t\tresult.push({\n\t\t\t\tdata: \"101\",\n\t\t\t\toptions: { height: this.guardHeight }\n\t\t\t});\n\n\t\t\t// Add the 6 UPC-E digits\n\t\t\tresult.push({\n\t\t\t\tdata: this.encodeMiddleDigits(),\n\t\t\t\ttext: this.text.substring(1, 7),\n\t\t\t\toptions: { fontSize: this.fontSize }\n\t\t\t});\n\n\t\t\t// Add the end bits\n\t\t\tresult.push({\n\t\t\t\tdata: \"010101\",\n\t\t\t\toptions: { height: this.guardHeight }\n\t\t\t});\n\n\t\t\t// Add the UPC-A check digit beneath the quiet zone\n\t\t\tif (this.displayValue) {\n\t\t\t\tresult.push({\n\t\t\t\t\tdata: \"00000000\",\n\t\t\t\t\ttext: this.text[7],\n\t\t\t\t\toptions: { textAlign: \"right\", fontSize: this.fontSize }\n\t\t\t\t});\n\t\t\t}\n\n\t\t\treturn result;\n\t\t}\n\t}, {\n\t\tkey: 'encodeMiddleDigits',\n\t\tvalue: function encodeMiddleDigits() {\n\t\t\tvar numberSystem = this.upcA[0];\n\t\t\tvar checkDigit = this.upcA[this.upcA.length - 1];\n\t\t\tvar parity = PARITIES[parseInt(checkDigit)][parseInt(numberSystem)];\n\t\t\treturn (0, _encoder2.default)(this.middleDigits, parity);\n\t\t}\n\t}]);\n\n\treturn UPCE;\n}(_Barcode3.default);\n\nfunction expandToUPCA(middleDigits, numberSystem) {\n\tvar lastUpcE = parseInt(middleDigits[middleDigits.length - 1]);\n\tvar expansion = EXPANSIONS[lastUpcE];\n\n\tvar result = \"\";\n\tvar digitIndex = 0;\n\tfor (var i = 0; i < expansion.length; i++) {\n\t\tvar c = expansion[i];\n\t\tif (c === 'X') {\n\t\t\tresult += middleDigits[digitIndex++];\n\t\t} else {\n\t\t\tresult += c;\n\t\t}\n\t}\n\n\tresult = '' + numberSystem + result;\n\treturn '' + result + (0, _UPC.checksum)(result);\n}\n\nexports.default = UPCE;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.UPCE = exports.UPC = exports.EAN2 = exports.EAN5 = exports.EAN8 = exports.EAN13 = undefined;\n\nvar _EAN = require('./EAN13.js');\n\nvar _EAN2 = _interopRequireDefault(_EAN);\n\nvar _EAN3 = require('./EAN8.js');\n\nvar _EAN4 = _interopRequireDefault(_EAN3);\n\nvar _EAN5 = require('./EAN5.js');\n\nvar _EAN6 = _interopRequireDefault(_EAN5);\n\nvar _EAN7 = require('./EAN2.js');\n\nvar _EAN8 = _interopRequireDefault(_EAN7);\n\nvar _UPC = require('./UPC.js');\n\nvar _UPC2 = _interopRequireDefault(_UPC);\n\nvar _UPCE = require('./UPCE.js');\n\nvar _UPCE2 = _interopRequireDefault(_UPCE);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.EAN13 = _EAN2.default;\nexports.EAN8 = _EAN4.default;\nexports.EAN5 = _EAN6.default;\nexports.EAN2 = _EAN8.default;\nexports.UPC = _UPC2.default;\nexports.UPCE = _UPCE2.default;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nvar START_BIN = exports.START_BIN = '1010';\nvar END_BIN = exports.END_BIN = '11101';\n\nvar BINARIES = exports.BINARIES = ['00110', '10001', '01001', '11000', '00101', '10100', '01100', '00011', '10010', '01010'];","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _constants = require('./constants');\n\nvar _Barcode2 = require('../Barcode');\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar ITF = function (_Barcode) {\n\t_inherits(ITF, _Barcode);\n\n\tfunction ITF() {\n\t\t_classCallCheck(this, ITF);\n\n\t\treturn _possibleConstructorReturn(this, (ITF.__proto__ || Object.getPrototypeOf(ITF)).apply(this, arguments));\n\t}\n\n\t_createClass(ITF, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^([0-9]{2})+$/) !== -1;\n\t\t}\n\t}, {\n\t\tkey: 'encode',\n\t\tvalue: function encode() {\n\t\t\tvar _this2 = this;\n\n\t\t\t// Calculate all the digit pairs\n\t\t\tvar encoded = this.data.match(/.{2}/g).map(function (pair) {\n\t\t\t\treturn _this2.encodePair(pair);\n\t\t\t}).join('');\n\n\t\t\treturn {\n\t\t\t\tdata: _constants.START_BIN + encoded + _constants.END_BIN,\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\n\t\t// Calculate the data of a number pair\n\n\t}, {\n\t\tkey: 'encodePair',\n\t\tvalue: function encodePair(pair) {\n\t\t\tvar second = _constants.BINARIES[pair[1]];\n\n\t\t\treturn _constants.BINARIES[pair[0]].split('').map(function (first, idx) {\n\t\t\t\treturn (first === '1' ? '111' : '1') + (second[idx] === '1' ? '000' : '0');\n\t\t\t}).join('');\n\t\t}\n\t}]);\n\n\treturn ITF;\n}(_Barcode3.default);\n\nexports.default = ITF;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _ITF2 = require('./ITF');\n\nvar _ITF3 = _interopRequireDefault(_ITF2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// Calculate the checksum digit\nvar checksum = function checksum(data) {\n\tvar res = data.substr(0, 13).split('').map(function (num) {\n\t\treturn parseInt(num, 10);\n\t}).reduce(function (sum, n, idx) {\n\t\treturn sum + n * (3 - idx % 2 * 2);\n\t}, 0);\n\n\treturn Math.ceil(res / 10) * 10 - res;\n};\n\nvar ITF14 = function (_ITF) {\n\t_inherits(ITF14, _ITF);\n\n\tfunction ITF14(data, options) {\n\t\t_classCallCheck(this, ITF14);\n\n\t\t// Add checksum if it does not exist\n\t\tif (data.search(/^[0-9]{13}$/) !== -1) {\n\t\t\tdata += checksum(data);\n\t\t}\n\t\treturn _possibleConstructorReturn(this, (ITF14.__proto__ || Object.getPrototypeOf(ITF14)).call(this, data, options));\n\t}\n\n\t_createClass(ITF14, [{\n\t\tkey: 'valid',\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9]{14}$/) !== -1 && +this.data[13] === checksum(this.data);\n\t\t}\n\t}]);\n\n\treturn ITF14;\n}(_ITF3.default);\n\nexports.default = ITF14;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ITF14 = exports.ITF = undefined;\n\nvar _ITF = require('./ITF');\n\nvar _ITF2 = _interopRequireDefault(_ITF);\n\nvar _ITF3 = require('./ITF14');\n\nvar _ITF4 = _interopRequireDefault(_ITF3);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.ITF = _ITF2.default;\nexports.ITF14 = _ITF4.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _Barcode2 = require(\"../Barcode.js\");\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation\n// https://en.wikipedia.org/wiki/MSI_Barcode#Character_set_and_binary_lookup\n\nvar MSI = function (_Barcode) {\n\t_inherits(MSI, _Barcode);\n\n\tfunction MSI(data, options) {\n\t\t_classCallCheck(this, MSI);\n\n\t\treturn _possibleConstructorReturn(this, (MSI.__proto__ || Object.getPrototypeOf(MSI)).call(this, data, options));\n\t}\n\n\t_createClass(MSI, [{\n\t\tkey: \"encode\",\n\t\tvalue: function encode() {\n\t\t\t// Start bits\n\t\t\tvar ret = \"110\";\n\n\t\t\tfor (var i = 0; i < this.data.length; i++) {\n\t\t\t\t// Convert the character to binary (always 4 binary digits)\n\t\t\t\tvar digit = parseInt(this.data[i]);\n\t\t\t\tvar bin = digit.toString(2);\n\t\t\t\tbin = addZeroes(bin, 4 - bin.length);\n\n\t\t\t\t// Add 100 for every zero and 110 for every 1\n\t\t\t\tfor (var b = 0; b < bin.length; b++) {\n\t\t\t\t\tret += bin[b] == \"0\" ? \"100\" : \"110\";\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// End bits\n\t\t\tret += \"1001\";\n\n\t\t\treturn {\n\t\t\t\tdata: ret,\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}, {\n\t\tkey: \"valid\",\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[0-9]+$/) !== -1;\n\t\t}\n\t}]);\n\n\treturn MSI;\n}(_Barcode3.default);\n\nfunction addZeroes(number, n) {\n\tfor (var i = 0; i < n; i++) {\n\t\tnumber = \"0\" + number;\n\t}\n\treturn number;\n}\n\nexports.default = MSI;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.mod10 = mod10;\nexports.mod11 = mod11;\nfunction mod10(number) {\n\tvar sum = 0;\n\tfor (var i = 0; i < number.length; i++) {\n\t\tvar n = parseInt(number[i]);\n\t\tif ((i + number.length) % 2 === 0) {\n\t\t\tsum += n;\n\t\t} else {\n\t\t\tsum += n * 2 % 10 + Math.floor(n * 2 / 10);\n\t\t}\n\t}\n\treturn (10 - sum % 10) % 10;\n}\n\nfunction mod11(number) {\n\tvar sum = 0;\n\tvar weights = [2, 3, 4, 5, 6, 7];\n\tfor (var i = 0; i < number.length; i++) {\n\t\tvar n = parseInt(number[number.length - 1 - i]);\n\t\tsum += weights[i % weights.length] * n;\n\t}\n\treturn (11 - sum % 11) % 11;\n}","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _MSI2 = require('./MSI.js');\n\nvar _MSI3 = _interopRequireDefault(_MSI2);\n\nvar _checksums = require('./checksums.js');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar MSI10 = function (_MSI) {\n\t_inherits(MSI10, _MSI);\n\n\tfunction MSI10(data, options) {\n\t\t_classCallCheck(this, MSI10);\n\n\t\treturn _possibleConstructorReturn(this, (MSI10.__proto__ || Object.getPrototypeOf(MSI10)).call(this, data + (0, _checksums.mod10)(data), options));\n\t}\n\n\treturn MSI10;\n}(_MSI3.default);\n\nexports.default = MSI10;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _MSI2 = require('./MSI.js');\n\nvar _MSI3 = _interopRequireDefault(_MSI2);\n\nvar _checksums = require('./checksums.js');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar MSI11 = function (_MSI) {\n\t_inherits(MSI11, _MSI);\n\n\tfunction MSI11(data, options) {\n\t\t_classCallCheck(this, MSI11);\n\n\t\treturn _possibleConstructorReturn(this, (MSI11.__proto__ || Object.getPrototypeOf(MSI11)).call(this, data + (0, _checksums.mod11)(data), options));\n\t}\n\n\treturn MSI11;\n}(_MSI3.default);\n\nexports.default = MSI11;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _MSI2 = require('./MSI.js');\n\nvar _MSI3 = _interopRequireDefault(_MSI2);\n\nvar _checksums = require('./checksums.js');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar MSI1010 = function (_MSI) {\n\t_inherits(MSI1010, _MSI);\n\n\tfunction MSI1010(data, options) {\n\t\t_classCallCheck(this, MSI1010);\n\n\t\tdata += (0, _checksums.mod10)(data);\n\t\tdata += (0, _checksums.mod10)(data);\n\t\treturn _possibleConstructorReturn(this, (MSI1010.__proto__ || Object.getPrototypeOf(MSI1010)).call(this, data, options));\n\t}\n\n\treturn MSI1010;\n}(_MSI3.default);\n\nexports.default = MSI1010;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _MSI2 = require('./MSI.js');\n\nvar _MSI3 = _interopRequireDefault(_MSI2);\n\nvar _checksums = require('./checksums.js');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar MSI1110 = function (_MSI) {\n\t_inherits(MSI1110, _MSI);\n\n\tfunction MSI1110(data, options) {\n\t\t_classCallCheck(this, MSI1110);\n\n\t\tdata += (0, _checksums.mod11)(data);\n\t\tdata += (0, _checksums.mod10)(data);\n\t\treturn _possibleConstructorReturn(this, (MSI1110.__proto__ || Object.getPrototypeOf(MSI1110)).call(this, data, options));\n\t}\n\n\treturn MSI1110;\n}(_MSI3.default);\n\nexports.default = MSI1110;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.MSI1110 = exports.MSI1010 = exports.MSI11 = exports.MSI10 = exports.MSI = undefined;\n\nvar _MSI = require('./MSI.js');\n\nvar _MSI2 = _interopRequireDefault(_MSI);\n\nvar _MSI3 = require('./MSI10.js');\n\nvar _MSI4 = _interopRequireDefault(_MSI3);\n\nvar _MSI5 = require('./MSI11.js');\n\nvar _MSI6 = _interopRequireDefault(_MSI5);\n\nvar _MSI7 = require('./MSI1010.js');\n\nvar _MSI8 = _interopRequireDefault(_MSI7);\n\nvar _MSI9 = require('./MSI1110.js');\n\nvar _MSI10 = _interopRequireDefault(_MSI9);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.MSI = _MSI2.default;\nexports.MSI10 = _MSI4.default;\nexports.MSI11 = _MSI6.default;\nexports.MSI1010 = _MSI8.default;\nexports.MSI1110 = _MSI10.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.pharmacode = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _Barcode2 = require(\"../Barcode.js\");\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding documentation\n// http://www.gomaro.ch/ftproot/Laetus_PHARMA-CODE.pdf\n\nvar pharmacode = function (_Barcode) {\n\t_inherits(pharmacode, _Barcode);\n\n\tfunction pharmacode(data, options) {\n\t\t_classCallCheck(this, pharmacode);\n\n\t\tvar _this = _possibleConstructorReturn(this, (pharmacode.__proto__ || Object.getPrototypeOf(pharmacode)).call(this, data, options));\n\n\t\t_this.number = parseInt(data, 10);\n\t\treturn _this;\n\t}\n\n\t_createClass(pharmacode, [{\n\t\tkey: \"encode\",\n\t\tvalue: function encode() {\n\t\t\tvar z = this.number;\n\t\t\tvar result = \"\";\n\n\t\t\t// http://i.imgur.com/RMm4UDJ.png\n\t\t\t// (source: http://www.gomaro.ch/ftproot/Laetus_PHARMA-CODE.pdf, page: 34)\n\t\t\twhile (!isNaN(z) && z != 0) {\n\t\t\t\tif (z % 2 === 0) {\n\t\t\t\t\t// Even\n\t\t\t\t\tresult = \"11100\" + result;\n\t\t\t\t\tz = (z - 2) / 2;\n\t\t\t\t} else {\n\t\t\t\t\t// Odd\n\t\t\t\t\tresult = \"100\" + result;\n\t\t\t\t\tz = (z - 1) / 2;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Remove the two last zeroes\n\t\t\tresult = result.slice(0, -2);\n\n\t\t\treturn {\n\t\t\t\tdata: result,\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\t}, {\n\t\tkey: \"valid\",\n\t\tvalue: function valid() {\n\t\t\treturn this.number >= 3 && this.number <= 131070;\n\t\t}\n\t}]);\n\n\treturn pharmacode;\n}(_Barcode3.default);\n\nexports.pharmacode = pharmacode;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.codabar = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _Barcode2 = require(\"../Barcode.js\");\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Encoding specification:\n// http://www.barcodeisland.com/codabar.phtml\n\nvar codabar = function (_Barcode) {\n\t_inherits(codabar, _Barcode);\n\n\tfunction codabar(data, options) {\n\t\t_classCallCheck(this, codabar);\n\n\t\tif (data.search(/^[0-9\\-\\$\\:\\.\\+\\/]+$/) === 0) {\n\t\t\tdata = \"A\" + data + \"A\";\n\t\t}\n\n\t\tvar _this = _possibleConstructorReturn(this, (codabar.__proto__ || Object.getPrototypeOf(codabar)).call(this, data.toUpperCase(), options));\n\n\t\t_this.text = _this.options.text || _this.text.replace(/[A-D]/g, '');\n\t\treturn _this;\n\t}\n\n\t_createClass(codabar, [{\n\t\tkey: \"valid\",\n\t\tvalue: function valid() {\n\t\t\treturn this.data.search(/^[A-D][0-9\\-\\$\\:\\.\\+\\/]+[A-D]$/) !== -1;\n\t\t}\n\t}, {\n\t\tkey: \"encode\",\n\t\tvalue: function encode() {\n\t\t\tvar result = [];\n\t\t\tvar encodings = this.getEncodings();\n\t\t\tfor (var i = 0; i < this.data.length; i++) {\n\t\t\t\tresult.push(encodings[this.data.charAt(i)]);\n\t\t\t\t// for all characters except the last, append a narrow-space (\"0\")\n\t\t\t\tif (i !== this.data.length - 1) {\n\t\t\t\t\tresult.push(\"0\");\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\ttext: this.text,\n\t\t\t\tdata: result.join('')\n\t\t\t};\n\t\t}\n\t}, {\n\t\tkey: \"getEncodings\",\n\t\tvalue: function getEncodings() {\n\t\t\treturn {\n\t\t\t\t\"0\": \"101010011\",\n\t\t\t\t\"1\": \"101011001\",\n\t\t\t\t\"2\": \"101001011\",\n\t\t\t\t\"3\": \"110010101\",\n\t\t\t\t\"4\": \"101101001\",\n\t\t\t\t\"5\": \"110101001\",\n\t\t\t\t\"6\": \"100101011\",\n\t\t\t\t\"7\": \"100101101\",\n\t\t\t\t\"8\": \"100110101\",\n\t\t\t\t\"9\": \"110100101\",\n\t\t\t\t\"-\": \"101001101\",\n\t\t\t\t\"$\": \"101100101\",\n\t\t\t\t\":\": \"1101011011\",\n\t\t\t\t\"/\": \"1101101011\",\n\t\t\t\t\".\": \"1101101101\",\n\t\t\t\t\"+\": \"101100110011\",\n\t\t\t\t\"A\": \"1011001001\",\n\t\t\t\t\"B\": \"1001001011\",\n\t\t\t\t\"C\": \"1010010011\",\n\t\t\t\t\"D\": \"1010011001\"\n\t\t\t};\n\t\t}\n\t}]);\n\n\treturn codabar;\n}(_Barcode3.default);\n\nexports.codabar = codabar;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.GenericBarcode = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _Barcode2 = require(\"../Barcode.js\");\n\nvar _Barcode3 = _interopRequireDefault(_Barcode2);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar GenericBarcode = function (_Barcode) {\n\t_inherits(GenericBarcode, _Barcode);\n\n\tfunction GenericBarcode(data, options) {\n\t\t_classCallCheck(this, GenericBarcode);\n\n\t\treturn _possibleConstructorReturn(this, (GenericBarcode.__proto__ || Object.getPrototypeOf(GenericBarcode)).call(this, data, options)); // Sets this.data and this.text\n\t}\n\n\t// Return the corresponding binary numbers for the data provided\n\n\n\t_createClass(GenericBarcode, [{\n\t\tkey: \"encode\",\n\t\tvalue: function encode() {\n\t\t\treturn {\n\t\t\t\tdata: \"10101010101010101010101010101010101010101\",\n\t\t\t\ttext: this.text\n\t\t\t};\n\t\t}\n\n\t\t// Resturn true/false if the string provided is valid for this encoder\n\n\t}, {\n\t\tkey: \"valid\",\n\t\tvalue: function valid() {\n\t\t\treturn true;\n\t\t}\n\t}]);\n\n\treturn GenericBarcode;\n}(_Barcode3.default);\n\nexports.GenericBarcode = GenericBarcode;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _CODE = require('./CODE39/');\n\nvar _CODE2 = require('./CODE128/');\n\nvar _EAN_UPC = require('./EAN_UPC/');\n\nvar _ITF = require('./ITF/');\n\nvar _MSI = require('./MSI/');\n\nvar _pharmacode = require('./pharmacode/');\n\nvar _codabar = require('./codabar');\n\nvar _GenericBarcode = require('./GenericBarcode/');\n\nexports.default = {\n\tCODE39: _CODE.CODE39,\n\tCODE128: _CODE2.CODE128, CODE128A: _CODE2.CODE128A, CODE128B: _CODE2.CODE128B, CODE128C: _CODE2.CODE128C,\n\tEAN13: _EAN_UPC.EAN13, EAN8: _EAN_UPC.EAN8, EAN5: _EAN_UPC.EAN5, EAN2: _EAN_UPC.EAN2, UPC: _EAN_UPC.UPC, UPCE: _EAN_UPC.UPCE,\n\tITF14: _ITF.ITF14,\n\tITF: _ITF.ITF,\n\tMSI: _MSI.MSI, MSI10: _MSI.MSI10, MSI11: _MSI.MSI11, MSI1010: _MSI.MSI1010, MSI1110: _MSI.MSI1110,\n\tpharmacode: _pharmacode.pharmacode,\n\tcodabar: _codabar.codabar,\n\tGenericBarcode: _GenericBarcode.GenericBarcode\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nexports.default = function (old, replaceObj) {\n return _extends({}, old, replaceObj);\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.default = linearizeEncodings;\n\n// Encodings can be nestled like [[1-1, 1-2], 2, [3-1, 3-2]\n// Convert to [1-1, 1-2, 2, 3-1, 3-2]\n\nfunction linearizeEncodings(encodings) {\n\tvar linearEncodings = [];\n\tfunction nextLevel(encoded) {\n\t\tif (Array.isArray(encoded)) {\n\t\t\tfor (var i = 0; i < encoded.length; i++) {\n\t\t\t\tnextLevel(encoded[i]);\n\t\t\t}\n\t\t} else {\n\t\t\tencoded.text = encoded.text || \"\";\n\t\t\tencoded.data = encoded.data || \"\";\n\t\t\tlinearEncodings.push(encoded);\n\t\t}\n\t}\n\tnextLevel(encodings);\n\n\treturn linearEncodings;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.default = fixOptions;\n\n\nfunction fixOptions(options) {\n\t// Fix the margins\n\toptions.marginTop = options.marginTop || options.margin;\n\toptions.marginBottom = options.marginBottom || options.margin;\n\toptions.marginRight = options.marginRight || options.margin;\n\toptions.marginLeft = options.marginLeft || options.margin;\n\n\treturn options;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.default = optionsFromStrings;\n\n// Convert string to integers/booleans where it should be\n\nfunction optionsFromStrings(options) {\n\tvar intOptions = [\"width\", \"height\", \"textMargin\", \"fontSize\", \"margin\", \"marginTop\", \"marginBottom\", \"marginLeft\", \"marginRight\"];\n\n\tfor (var intOption in intOptions) {\n\t\tif (intOptions.hasOwnProperty(intOption)) {\n\t\t\tintOption = intOptions[intOption];\n\t\t\tif (typeof options[intOption] === \"string\") {\n\t\t\t\toptions[intOption] = parseInt(options[intOption], 10);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (typeof options[\"displayValue\"] === \"string\") {\n\t\toptions[\"displayValue\"] = options[\"displayValue\"] != \"false\";\n\t}\n\n\treturn options;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nvar defaults = {\n\twidth: 2,\n\theight: 100,\n\tformat: \"auto\",\n\tdisplayValue: true,\n\tfontOptions: \"\",\n\tfont: \"monospace\",\n\ttext: undefined,\n\ttextAlign: \"center\",\n\ttextPosition: \"bottom\",\n\ttextMargin: 2,\n\tfontSize: 20,\n\tbackground: \"#ffffff\",\n\tlineColor: \"#000000\",\n\tmargin: 10,\n\tmarginTop: undefined,\n\tmarginBottom: undefined,\n\tmarginLeft: undefined,\n\tmarginRight: undefined,\n\tvalid: function valid() {}\n};\n\nexports.default = defaults;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _optionsFromStrings = require(\"./optionsFromStrings.js\");\n\nvar _optionsFromStrings2 = _interopRequireDefault(_optionsFromStrings);\n\nvar _defaults = require(\"../options/defaults.js\");\n\nvar _defaults2 = _interopRequireDefault(_defaults);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getOptionsFromElement(element) {\n\tvar options = {};\n\tfor (var property in _defaults2.default) {\n\t\tif (_defaults2.default.hasOwnProperty(property)) {\n\t\t\t// jsbarcode-*\n\t\t\tif (element.hasAttribute(\"jsbarcode-\" + property.toLowerCase())) {\n\t\t\t\toptions[property] = element.getAttribute(\"jsbarcode-\" + property.toLowerCase());\n\t\t\t}\n\n\t\t\t// data-*\n\t\t\tif (element.hasAttribute(\"data-\" + property.toLowerCase())) {\n\t\t\t\toptions[property] = element.getAttribute(\"data-\" + property.toLowerCase());\n\t\t\t}\n\t\t}\n\t}\n\n\toptions[\"value\"] = element.getAttribute(\"jsbarcode-value\") || element.getAttribute(\"data-value\");\n\n\t// Since all atributes are string they need to be converted to integers\n\toptions = (0, _optionsFromStrings2.default)(options);\n\n\treturn options;\n}\n\nexports.default = getOptionsFromElement;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\nexports.getTotalWidthOfEncodings = exports.calculateEncodingAttributes = exports.getBarcodePadding = exports.getEncodingHeight = exports.getMaximumHeightOfEncodings = undefined;\n\nvar _merge = require(\"../help/merge.js\");\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction getEncodingHeight(encoding, options) {\n\treturn options.height + (options.displayValue && encoding.text.length > 0 ? options.fontSize + options.textMargin : 0) + options.marginTop + options.marginBottom;\n}\n\nfunction getBarcodePadding(textWidth, barcodeWidth, options) {\n\tif (options.displayValue && barcodeWidth < textWidth) {\n\t\tif (options.textAlign == \"center\") {\n\t\t\treturn Math.floor((textWidth - barcodeWidth) / 2);\n\t\t} else if (options.textAlign == \"left\") {\n\t\t\treturn 0;\n\t\t} else if (options.textAlign == \"right\") {\n\t\t\treturn Math.floor(textWidth - barcodeWidth);\n\t\t}\n\t}\n\treturn 0;\n}\n\nfunction calculateEncodingAttributes(encodings, barcodeOptions, context) {\n\tfor (var i = 0; i < encodings.length; i++) {\n\t\tvar encoding = encodings[i];\n\t\tvar options = (0, _merge2.default)(barcodeOptions, encoding.options);\n\n\t\t// Calculate the width of the encoding\n\t\tvar textWidth;\n\t\tif (options.displayValue) {\n\t\t\ttextWidth = messureText(encoding.text, options, context);\n\t\t} else {\n\t\t\ttextWidth = 0;\n\t\t}\n\n\t\tvar barcodeWidth = encoding.data.length * options.width;\n\t\tencoding.width = Math.ceil(Math.max(textWidth, barcodeWidth));\n\n\t\tencoding.height = getEncodingHeight(encoding, options);\n\n\t\tencoding.barcodePadding = getBarcodePadding(textWidth, barcodeWidth, options);\n\t}\n}\n\nfunction getTotalWidthOfEncodings(encodings) {\n\tvar totalWidth = 0;\n\tfor (var i = 0; i < encodings.length; i++) {\n\t\ttotalWidth += encodings[i].width;\n\t}\n\treturn totalWidth;\n}\n\nfunction getMaximumHeightOfEncodings(encodings) {\n\tvar maxHeight = 0;\n\tfor (var i = 0; i < encodings.length; i++) {\n\t\tif (encodings[i].height > maxHeight) {\n\t\t\tmaxHeight = encodings[i].height;\n\t\t}\n\t}\n\treturn maxHeight;\n}\n\nfunction messureText(string, options, context) {\n\tvar ctx;\n\n\tif (context) {\n\t\tctx = context;\n\t} else if (typeof document !== \"undefined\") {\n\t\tctx = document.createElement(\"canvas\").getContext(\"2d\");\n\t} else {\n\t\t// If the text cannot be messured we will return 0.\n\t\t// This will make some barcode with big text render incorrectly\n\t\treturn 0;\n\t}\n\tctx.font = options.fontOptions + \" \" + options.fontSize + \"px \" + options.font;\n\n\t// Calculate the width of the encoding\n\tvar size = ctx.measureText(string).width;\n\n\treturn size;\n}\n\nexports.getMaximumHeightOfEncodings = getMaximumHeightOfEncodings;\nexports.getEncodingHeight = getEncodingHeight;\nexports.getBarcodePadding = getBarcodePadding;\nexports.calculateEncodingAttributes = calculateEncodingAttributes;\nexports.getTotalWidthOfEncodings = getTotalWidthOfEncodings;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _merge = require(\"../help/merge.js\");\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nvar _shared = require(\"./shared.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar CanvasRenderer = function () {\n\tfunction CanvasRenderer(canvas, encodings, options) {\n\t\t_classCallCheck(this, CanvasRenderer);\n\n\t\tthis.canvas = canvas;\n\t\tthis.encodings = encodings;\n\t\tthis.options = options;\n\t}\n\n\t_createClass(CanvasRenderer, [{\n\t\tkey: \"render\",\n\t\tvalue: function render() {\n\t\t\t// Abort if the browser does not support HTML5 canvas\n\t\t\tif (!this.canvas.getContext) {\n\t\t\t\tthrow new Error('The browser does not support canvas.');\n\t\t\t}\n\n\t\t\tthis.prepareCanvas();\n\t\t\tfor (var i = 0; i < this.encodings.length; i++) {\n\t\t\t\tvar encodingOptions = (0, _merge2.default)(this.options, this.encodings[i].options);\n\n\t\t\t\tthis.drawCanvasBarcode(encodingOptions, this.encodings[i]);\n\t\t\t\tthis.drawCanvasText(encodingOptions, this.encodings[i]);\n\n\t\t\t\tthis.moveCanvasDrawing(this.encodings[i]);\n\t\t\t}\n\n\t\t\tthis.restoreCanvas();\n\t\t}\n\t}, {\n\t\tkey: \"prepareCanvas\",\n\t\tvalue: function prepareCanvas() {\n\t\t\t// Get the canvas context\n\t\t\tvar ctx = this.canvas.getContext(\"2d\");\n\n\t\t\tctx.save();\n\n\t\t\t(0, _shared.calculateEncodingAttributes)(this.encodings, this.options, ctx);\n\t\t\tvar totalWidth = (0, _shared.getTotalWidthOfEncodings)(this.encodings);\n\t\t\tvar maxHeight = (0, _shared.getMaximumHeightOfEncodings)(this.encodings);\n\n\t\t\tthis.canvas.width = totalWidth + this.options.marginLeft + this.options.marginRight;\n\n\t\t\tthis.canvas.height = maxHeight;\n\n\t\t\t// Paint the canvas\n\t\t\tctx.clearRect(0, 0, this.canvas.width, this.canvas.height);\n\t\t\tif (this.options.background) {\n\t\t\t\tctx.fillStyle = this.options.background;\n\t\t\t\tctx.fillRect(0, 0, this.canvas.width, this.canvas.height);\n\t\t\t}\n\n\t\t\tctx.translate(this.options.marginLeft, 0);\n\t\t}\n\t}, {\n\t\tkey: \"drawCanvasBarcode\",\n\t\tvalue: function drawCanvasBarcode(options, encoding) {\n\t\t\t// Get the canvas context\n\t\t\tvar ctx = this.canvas.getContext(\"2d\");\n\n\t\t\tvar binary = encoding.data;\n\n\t\t\t// Creates the barcode out of the encoded binary\n\t\t\tvar yFrom;\n\t\t\tif (options.textPosition == \"top\") {\n\t\t\t\tyFrom = options.marginTop + options.fontSize + options.textMargin;\n\t\t\t} else {\n\t\t\t\tyFrom = options.marginTop;\n\t\t\t}\n\n\t\t\tctx.fillStyle = options.lineColor;\n\n\t\t\tfor (var b = 0; b < binary.length; b++) {\n\t\t\t\tvar x = b * options.width + encoding.barcodePadding;\n\n\t\t\t\tif (binary[b] === \"1\") {\n\t\t\t\t\tctx.fillRect(x, yFrom, options.width, options.height);\n\t\t\t\t} else if (binary[b]) {\n\t\t\t\t\tctx.fillRect(x, yFrom, options.width, options.height * binary[b]);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"drawCanvasText\",\n\t\tvalue: function drawCanvasText(options, encoding) {\n\t\t\t// Get the canvas context\n\t\t\tvar ctx = this.canvas.getContext(\"2d\");\n\n\t\t\tvar font = options.fontOptions + \" \" + options.fontSize + \"px \" + options.font;\n\n\t\t\t// Draw the text if displayValue is set\n\t\t\tif (options.displayValue) {\n\t\t\t\tvar x, y;\n\n\t\t\t\tif (options.textPosition == \"top\") {\n\t\t\t\t\ty = options.marginTop + options.fontSize - options.textMargin;\n\t\t\t\t} else {\n\t\t\t\t\ty = options.height + options.textMargin + options.marginTop + options.fontSize;\n\t\t\t\t}\n\n\t\t\t\tctx.font = font;\n\n\t\t\t\t// Draw the text in the correct X depending on the textAlign option\n\t\t\t\tif (options.textAlign == \"left\" || encoding.barcodePadding > 0) {\n\t\t\t\t\tx = 0;\n\t\t\t\t\tctx.textAlign = 'left';\n\t\t\t\t} else if (options.textAlign == \"right\") {\n\t\t\t\t\tx = encoding.width - 1;\n\t\t\t\t\tctx.textAlign = 'right';\n\t\t\t\t}\n\t\t\t\t// In all other cases, center the text\n\t\t\t\telse {\n\t\t\t\t\t\tx = encoding.width / 2;\n\t\t\t\t\t\tctx.textAlign = 'center';\n\t\t\t\t\t}\n\n\t\t\t\tctx.fillText(encoding.text, x, y);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"moveCanvasDrawing\",\n\t\tvalue: function moveCanvasDrawing(encoding) {\n\t\t\tvar ctx = this.canvas.getContext(\"2d\");\n\n\t\t\tctx.translate(encoding.width, 0);\n\t\t}\n\t}, {\n\t\tkey: \"restoreCanvas\",\n\t\tvalue: function restoreCanvas() {\n\t\t\t// Get the canvas context\n\t\t\tvar ctx = this.canvas.getContext(\"2d\");\n\n\t\t\tctx.restore();\n\t\t}\n\t}]);\n\n\treturn CanvasRenderer;\n}();\n\nexports.default = CanvasRenderer;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _merge = require(\"../help/merge.js\");\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nvar _shared = require(\"./shared.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar svgns = \"http://www.w3.org/2000/svg\";\n\nvar SVGRenderer = function () {\n\tfunction SVGRenderer(svg, encodings, options) {\n\t\t_classCallCheck(this, SVGRenderer);\n\n\t\tthis.svg = svg;\n\t\tthis.encodings = encodings;\n\t\tthis.options = options;\n\t\tthis.document = options.xmlDocument || document;\n\t}\n\n\t_createClass(SVGRenderer, [{\n\t\tkey: \"render\",\n\t\tvalue: function render() {\n\t\t\tvar currentX = this.options.marginLeft;\n\n\t\t\tthis.prepareSVG();\n\t\t\tfor (var i = 0; i < this.encodings.length; i++) {\n\t\t\t\tvar encoding = this.encodings[i];\n\t\t\t\tvar encodingOptions = (0, _merge2.default)(this.options, encoding.options);\n\n\t\t\t\tvar group = this.createGroup(currentX, encodingOptions.marginTop, this.svg);\n\n\t\t\t\tthis.setGroupOptions(group, encodingOptions);\n\n\t\t\t\tthis.drawSvgBarcode(group, encodingOptions, encoding);\n\t\t\t\tthis.drawSVGText(group, encodingOptions, encoding);\n\n\t\t\t\tcurrentX += encoding.width;\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"prepareSVG\",\n\t\tvalue: function prepareSVG() {\n\t\t\t// Clear the SVG\n\t\t\twhile (this.svg.firstChild) {\n\t\t\t\tthis.svg.removeChild(this.svg.firstChild);\n\t\t\t}\n\n\t\t\t(0, _shared.calculateEncodingAttributes)(this.encodings, this.options);\n\t\t\tvar totalWidth = (0, _shared.getTotalWidthOfEncodings)(this.encodings);\n\t\t\tvar maxHeight = (0, _shared.getMaximumHeightOfEncodings)(this.encodings);\n\n\t\t\tvar width = totalWidth + this.options.marginLeft + this.options.marginRight;\n\t\t\tthis.setSvgAttributes(width, maxHeight);\n\n\t\t\tif (this.options.background) {\n\t\t\t\tthis.drawRect(0, 0, width, maxHeight, this.svg).setAttribute(\"style\", \"fill:\" + this.options.background + \";\");\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"drawSvgBarcode\",\n\t\tvalue: function drawSvgBarcode(parent, options, encoding) {\n\t\t\tvar binary = encoding.data;\n\n\t\t\t// Creates the barcode out of the encoded binary\n\t\t\tvar yFrom;\n\t\t\tif (options.textPosition == \"top\") {\n\t\t\t\tyFrom = options.fontSize + options.textMargin;\n\t\t\t} else {\n\t\t\t\tyFrom = 0;\n\t\t\t}\n\n\t\t\tvar barWidth = 0;\n\t\t\tvar x = 0;\n\t\t\tfor (var b = 0; b < binary.length; b++) {\n\t\t\t\tx = b * options.width + encoding.barcodePadding;\n\n\t\t\t\tif (binary[b] === \"1\") {\n\t\t\t\t\tbarWidth++;\n\t\t\t\t} else if (barWidth > 0) {\n\t\t\t\t\tthis.drawRect(x - options.width * barWidth, yFrom, options.width * barWidth, options.height, parent);\n\t\t\t\t\tbarWidth = 0;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Last draw is needed since the barcode ends with 1\n\t\t\tif (barWidth > 0) {\n\t\t\t\tthis.drawRect(x - options.width * (barWidth - 1), yFrom, options.width * barWidth, options.height, parent);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"drawSVGText\",\n\t\tvalue: function drawSVGText(parent, options, encoding) {\n\t\t\tvar textElem = this.document.createElementNS(svgns, 'text');\n\n\t\t\t// Draw the text if displayValue is set\n\t\t\tif (options.displayValue) {\n\t\t\t\tvar x, y;\n\n\t\t\t\ttextElem.setAttribute(\"style\", \"font:\" + options.fontOptions + \" \" + options.fontSize + \"px \" + options.font);\n\n\t\t\t\tif (options.textPosition == \"top\") {\n\t\t\t\t\ty = options.fontSize - options.textMargin;\n\t\t\t\t} else {\n\t\t\t\t\ty = options.height + options.textMargin + options.fontSize;\n\t\t\t\t}\n\n\t\t\t\t// Draw the text in the correct X depending on the textAlign option\n\t\t\t\tif (options.textAlign == \"left\" || encoding.barcodePadding > 0) {\n\t\t\t\t\tx = 0;\n\t\t\t\t\ttextElem.setAttribute(\"text-anchor\", \"start\");\n\t\t\t\t} else if (options.textAlign == \"right\") {\n\t\t\t\t\tx = encoding.width - 1;\n\t\t\t\t\ttextElem.setAttribute(\"text-anchor\", \"end\");\n\t\t\t\t}\n\t\t\t\t// In all other cases, center the text\n\t\t\t\telse {\n\t\t\t\t\t\tx = encoding.width / 2;\n\t\t\t\t\t\ttextElem.setAttribute(\"text-anchor\", \"middle\");\n\t\t\t\t\t}\n\n\t\t\t\ttextElem.setAttribute(\"x\", x);\n\t\t\t\ttextElem.setAttribute(\"y\", y);\n\n\t\t\t\ttextElem.appendChild(this.document.createTextNode(encoding.text));\n\n\t\t\t\tparent.appendChild(textElem);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: \"setSvgAttributes\",\n\t\tvalue: function setSvgAttributes(width, height) {\n\t\t\tvar svg = this.svg;\n\t\t\tsvg.setAttribute(\"width\", width + \"px\");\n\t\t\tsvg.setAttribute(\"height\", height + \"px\");\n\t\t\tsvg.setAttribute(\"x\", \"0px\");\n\t\t\tsvg.setAttribute(\"y\", \"0px\");\n\t\t\tsvg.setAttribute(\"viewBox\", \"0 0 \" + width + \" \" + height);\n\n\t\t\tsvg.setAttribute(\"xmlns\", svgns);\n\t\t\tsvg.setAttribute(\"version\", \"1.1\");\n\n\t\t\tsvg.setAttribute(\"style\", \"transform: translate(0,0)\");\n\t\t}\n\t}, {\n\t\tkey: \"createGroup\",\n\t\tvalue: function createGroup(x, y, parent) {\n\t\t\tvar group = this.document.createElementNS(svgns, 'g');\n\t\t\tgroup.setAttribute(\"transform\", \"translate(\" + x + \", \" + y + \")\");\n\n\t\t\tparent.appendChild(group);\n\n\t\t\treturn group;\n\t\t}\n\t}, {\n\t\tkey: \"setGroupOptions\",\n\t\tvalue: function setGroupOptions(group, options) {\n\t\t\tgroup.setAttribute(\"style\", \"fill:\" + options.lineColor + \";\");\n\t\t}\n\t}, {\n\t\tkey: \"drawRect\",\n\t\tvalue: function drawRect(x, y, width, height, parent) {\n\t\t\tvar rect = this.document.createElementNS(svgns, 'rect');\n\n\t\t\trect.setAttribute(\"x\", x);\n\t\t\trect.setAttribute(\"y\", y);\n\t\t\trect.setAttribute(\"width\", width);\n\t\t\trect.setAttribute(\"height\", height);\n\n\t\t\tparent.appendChild(rect);\n\n\t\t\treturn rect;\n\t\t}\n\t}]);\n\n\treturn SVGRenderer;\n}();\n\nexports.default = SVGRenderer;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar ObjectRenderer = function () {\n\tfunction ObjectRenderer(object, encodings, options) {\n\t\t_classCallCheck(this, ObjectRenderer);\n\n\t\tthis.object = object;\n\t\tthis.encodings = encodings;\n\t\tthis.options = options;\n\t}\n\n\t_createClass(ObjectRenderer, [{\n\t\tkey: \"render\",\n\t\tvalue: function render() {\n\t\t\tthis.object.encodings = this.encodings;\n\t\t}\n\t}]);\n\n\treturn ObjectRenderer;\n}();\n\nexports.default = ObjectRenderer;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _canvas = require('./canvas.js');\n\nvar _canvas2 = _interopRequireDefault(_canvas);\n\nvar _svg = require('./svg.js');\n\nvar _svg2 = _interopRequireDefault(_svg);\n\nvar _object = require('./object.js');\n\nvar _object2 = _interopRequireDefault(_object);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = { CanvasRenderer: _canvas2.default, SVGRenderer: _svg2.default, ObjectRenderer: _object2.default };","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar InvalidInputException = function (_Error) {\n\t_inherits(InvalidInputException, _Error);\n\n\tfunction InvalidInputException(symbology, input) {\n\t\t_classCallCheck(this, InvalidInputException);\n\n\t\tvar _this = _possibleConstructorReturn(this, (InvalidInputException.__proto__ || Object.getPrototypeOf(InvalidInputException)).call(this));\n\n\t\t_this.name = \"InvalidInputException\";\n\n\t\t_this.symbology = symbology;\n\t\t_this.input = input;\n\n\t\t_this.message = '\"' + _this.input + '\" is not a valid input for ' + _this.symbology;\n\t\treturn _this;\n\t}\n\n\treturn InvalidInputException;\n}(Error);\n\nvar InvalidElementException = function (_Error2) {\n\t_inherits(InvalidElementException, _Error2);\n\n\tfunction InvalidElementException() {\n\t\t_classCallCheck(this, InvalidElementException);\n\n\t\tvar _this2 = _possibleConstructorReturn(this, (InvalidElementException.__proto__ || Object.getPrototypeOf(InvalidElementException)).call(this));\n\n\t\t_this2.name = \"InvalidElementException\";\n\t\t_this2.message = \"Not supported type to render on\";\n\t\treturn _this2;\n\t}\n\n\treturn InvalidElementException;\n}(Error);\n\nvar NoElementException = function (_Error3) {\n\t_inherits(NoElementException, _Error3);\n\n\tfunction NoElementException() {\n\t\t_classCallCheck(this, NoElementException);\n\n\t\tvar _this3 = _possibleConstructorReturn(this, (NoElementException.__proto__ || Object.getPrototypeOf(NoElementException)).call(this));\n\n\t\t_this3.name = \"NoElementException\";\n\t\t_this3.message = \"No element to render on.\";\n\t\treturn _this3;\n\t}\n\n\treturn NoElementException;\n}(Error);\n\nexports.InvalidInputException = InvalidInputException;\nexports.InvalidElementException = InvalidElementException;\nexports.NoElementException = NoElementException;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; /* global HTMLImageElement */\n/* global HTMLCanvasElement */\n/* global SVGElement */\n\nvar _getOptionsFromElement = require(\"./getOptionsFromElement.js\");\n\nvar _getOptionsFromElement2 = _interopRequireDefault(_getOptionsFromElement);\n\nvar _renderers = require(\"../renderers\");\n\nvar _renderers2 = _interopRequireDefault(_renderers);\n\nvar _exceptions = require(\"../exceptions/exceptions.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// Takes an element and returns an object with information about how\n// it should be rendered\n// This could also return an array with these objects\n// {\n// element: The element that the renderer should draw on\n// renderer: The name of the renderer\n// afterRender (optional): If something has to done after the renderer\n// completed, calls afterRender (function)\n// options (optional): Options that can be defined in the element\n// }\n\nfunction getRenderProperties(element) {\n\t// If the element is a string, query select call again\n\tif (typeof element === \"string\") {\n\t\treturn querySelectedRenderProperties(element);\n\t}\n\t// If element is array. Recursivly call with every object in the array\n\telse if (Array.isArray(element)) {\n\t\t\tvar returnArray = [];\n\t\t\tfor (var i = 0; i < element.length; i++) {\n\t\t\t\treturnArray.push(getRenderProperties(element[i]));\n\t\t\t}\n\t\t\treturn returnArray;\n\t\t}\n\t\t// If element, render on canvas and set the uri as src\n\t\telse if (typeof HTMLCanvasElement !== 'undefined' && element instanceof HTMLImageElement) {\n\t\t\t\treturn newCanvasRenderProperties(element);\n\t\t\t}\n\t\t\t// If SVG\n\t\t\telse if (element && element.nodeName === 'svg' || typeof SVGElement !== 'undefined' && element instanceof SVGElement) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\telement: element,\n\t\t\t\t\t\toptions: (0, _getOptionsFromElement2.default)(element),\n\t\t\t\t\t\trenderer: _renderers2.default.SVGRenderer\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\t// If canvas (in browser)\n\t\t\t\telse if (typeof HTMLCanvasElement !== 'undefined' && element instanceof HTMLCanvasElement) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\telement: element,\n\t\t\t\t\t\t\toptions: (0, _getOptionsFromElement2.default)(element),\n\t\t\t\t\t\t\trenderer: _renderers2.default.CanvasRenderer\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\t// If canvas (in node)\n\t\t\t\t\telse if (element && element.getContext) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\telement: element,\n\t\t\t\t\t\t\t\trenderer: _renderers2.default.CanvasRenderer\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} else if (element && (typeof element === \"undefined\" ? \"undefined\" : _typeof(element)) === 'object' && !element.nodeName) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\telement: element,\n\t\t\t\t\t\t\t\trenderer: _renderers2.default.ObjectRenderer\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthrow new _exceptions.InvalidElementException();\n\t\t\t\t\t\t}\n}\n\nfunction querySelectedRenderProperties(string) {\n\tvar selector = document.querySelectorAll(string);\n\tif (selector.length === 0) {\n\t\treturn undefined;\n\t} else {\n\t\tvar returnArray = [];\n\t\tfor (var i = 0; i < selector.length; i++) {\n\t\t\treturnArray.push(getRenderProperties(selector[i]));\n\t\t}\n\t\treturn returnArray;\n\t}\n}\n\nfunction newCanvasRenderProperties(imgElement) {\n\tvar canvas = document.createElement('canvas');\n\treturn {\n\t\telement: canvas,\n\t\toptions: (0, _getOptionsFromElement2.default)(imgElement),\n\t\trenderer: _renderers2.default.CanvasRenderer,\n\t\tafterRender: function afterRender() {\n\t\t\timgElement.setAttribute(\"src\", canvas.toDataURL());\n\t\t}\n\t};\n}\n\nexports.default = getRenderProperties;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/*eslint no-console: 0 */\n\nvar ErrorHandler = function () {\n\tfunction ErrorHandler(api) {\n\t\t_classCallCheck(this, ErrorHandler);\n\n\t\tthis.api = api;\n\t}\n\n\t_createClass(ErrorHandler, [{\n\t\tkey: \"handleCatch\",\n\t\tvalue: function handleCatch(e) {\n\t\t\t// If babel supported extending of Error in a correct way instanceof would be used here\n\t\t\tif (e.name === \"InvalidInputException\") {\n\t\t\t\tif (this.api._options.valid !== this.api._defaults.valid) {\n\t\t\t\t\tthis.api._options.valid(false);\n\t\t\t\t} else {\n\t\t\t\t\tthrow e.message;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthrow e;\n\t\t\t}\n\n\t\t\tthis.api.render = function () {};\n\t\t}\n\t}, {\n\t\tkey: \"wrapBarcodeCall\",\n\t\tvalue: function wrapBarcodeCall(func) {\n\t\t\ttry {\n\t\t\t\tvar result = func.apply(undefined, arguments);\n\t\t\t\tthis.api._options.valid(true);\n\t\t\t\treturn result;\n\t\t\t} catch (e) {\n\t\t\t\tthis.handleCatch(e);\n\n\t\t\t\treturn this.api;\n\t\t\t}\n\t\t}\n\t}]);\n\n\treturn ErrorHandler;\n}();\n\nexports.default = ErrorHandler;","'use strict';\n\nvar _barcodes = require('./barcodes/');\n\nvar _barcodes2 = _interopRequireDefault(_barcodes);\n\nvar _merge = require('./help/merge.js');\n\nvar _merge2 = _interopRequireDefault(_merge);\n\nvar _linearizeEncodings = require('./help/linearizeEncodings.js');\n\nvar _linearizeEncodings2 = _interopRequireDefault(_linearizeEncodings);\n\nvar _fixOptions = require('./help/fixOptions.js');\n\nvar _fixOptions2 = _interopRequireDefault(_fixOptions);\n\nvar _getRenderProperties = require('./help/getRenderProperties.js');\n\nvar _getRenderProperties2 = _interopRequireDefault(_getRenderProperties);\n\nvar _optionsFromStrings = require('./help/optionsFromStrings.js');\n\nvar _optionsFromStrings2 = _interopRequireDefault(_optionsFromStrings);\n\nvar _ErrorHandler = require('./exceptions/ErrorHandler.js');\n\nvar _ErrorHandler2 = _interopRequireDefault(_ErrorHandler);\n\nvar _exceptions = require('./exceptions/exceptions.js');\n\nvar _defaults = require('./options/defaults.js');\n\nvar _defaults2 = _interopRequireDefault(_defaults);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// The protype of the object returned from the JsBarcode() call\n\n\n// Help functions\nvar API = function API() {};\n\n// The first call of the library API\n// Will return an object with all barcodes calls and the data that is used\n// by the renderers\n\n\n// Default values\n\n\n// Exceptions\n// Import all the barcodes\nvar JsBarcode = function JsBarcode(element, text, options) {\n\tvar api = new API();\n\n\tif (typeof element === \"undefined\") {\n\t\tthrow Error(\"No element to render on was provided.\");\n\t}\n\n\t// Variables that will be pased through the API calls\n\tapi._renderProperties = (0, _getRenderProperties2.default)(element);\n\tapi._encodings = [];\n\tapi._options = _defaults2.default;\n\tapi._errorHandler = new _ErrorHandler2.default(api);\n\n\t// If text is set, use the simple syntax (render the barcode directly)\n\tif (typeof text !== \"undefined\") {\n\t\toptions = options || {};\n\n\t\tif (!options.format) {\n\t\t\toptions.format = autoSelectBarcode();\n\t\t}\n\n\t\tapi.options(options)[options.format](text, options).render();\n\t}\n\n\treturn api;\n};\n\n// To make tests work TODO: remove\nJsBarcode.getModule = function (name) {\n\treturn _barcodes2.default[name];\n};\n\n// Register all barcodes\nfor (var name in _barcodes2.default) {\n\tif (_barcodes2.default.hasOwnProperty(name)) {\n\t\t// Security check if the propery is a prototype property\n\t\tregisterBarcode(_barcodes2.default, name);\n\t}\n}\nfunction registerBarcode(barcodes, name) {\n\tAPI.prototype[name] = API.prototype[name.toUpperCase()] = API.prototype[name.toLowerCase()] = function (text, options) {\n\t\tvar api = this;\n\t\treturn api._errorHandler.wrapBarcodeCall(function () {\n\t\t\t// Ensure text is options.text\n\t\t\toptions.text = typeof options.text === 'undefined' ? undefined : '' + options.text;\n\n\t\t\tvar newOptions = (0, _merge2.default)(api._options, options);\n\t\t\tnewOptions = (0, _optionsFromStrings2.default)(newOptions);\n\t\t\tvar Encoder = barcodes[name];\n\t\t\tvar encoded = encode(text, Encoder, newOptions);\n\t\t\tapi._encodings.push(encoded);\n\n\t\t\treturn api;\n\t\t});\n\t};\n}\n\n// encode() handles the Encoder call and builds the binary string to be rendered\nfunction encode(text, Encoder, options) {\n\t// Ensure that text is a string\n\ttext = \"\" + text;\n\n\tvar encoder = new Encoder(text, options);\n\n\t// If the input is not valid for the encoder, throw error.\n\t// If the valid callback option is set, call it instead of throwing error\n\tif (!encoder.valid()) {\n\t\tthrow new _exceptions.InvalidInputException(encoder.constructor.name, text);\n\t}\n\n\t// Make a request for the binary data (and other infromation) that should be rendered\n\tvar encoded = encoder.encode();\n\n\t// Encodings can be nestled like [[1-1, 1-2], 2, [3-1, 3-2]\n\t// Convert to [1-1, 1-2, 2, 3-1, 3-2]\n\tencoded = (0, _linearizeEncodings2.default)(encoded);\n\n\t// Merge\n\tfor (var i = 0; i < encoded.length; i++) {\n\t\tencoded[i].options = (0, _merge2.default)(options, encoded[i].options);\n\t}\n\n\treturn encoded;\n}\n\nfunction autoSelectBarcode() {\n\t// If CODE128 exists. Use it\n\tif (_barcodes2.default[\"CODE128\"]) {\n\t\treturn \"CODE128\";\n\t}\n\n\t// Else, take the first (probably only) barcode\n\treturn Object.keys(_barcodes2.default)[0];\n}\n\n// Sets global encoder options\n// Added to the api by the JsBarcode function\nAPI.prototype.options = function (options) {\n\tthis._options = (0, _merge2.default)(this._options, options);\n\treturn this;\n};\n\n// Will create a blank space (usually in between barcodes)\nAPI.prototype.blank = function (size) {\n\tvar zeroes = new Array(size + 1).join(\"0\");\n\tthis._encodings.push({ data: zeroes });\n\treturn this;\n};\n\n// Initialize JsBarcode on all HTML elements defined.\nAPI.prototype.init = function () {\n\t// Should do nothing if no elements where found\n\tif (!this._renderProperties) {\n\t\treturn;\n\t}\n\n\t// Make sure renderProperies is an array\n\tif (!Array.isArray(this._renderProperties)) {\n\t\tthis._renderProperties = [this._renderProperties];\n\t}\n\n\tvar renderProperty;\n\tfor (var i in this._renderProperties) {\n\t\trenderProperty = this._renderProperties[i];\n\t\tvar options = (0, _merge2.default)(this._options, renderProperty.options);\n\n\t\tif (options.format == \"auto\") {\n\t\t\toptions.format = autoSelectBarcode();\n\t\t}\n\n\t\tthis._errorHandler.wrapBarcodeCall(function () {\n\t\t\tvar text = options.value;\n\t\t\tvar Encoder = _barcodes2.default[options.format.toUpperCase()];\n\t\t\tvar encoded = encode(text, Encoder, options);\n\n\t\t\trender(renderProperty, encoded, options);\n\t\t});\n\t}\n};\n\n// The render API call. Calls the real render function.\nAPI.prototype.render = function () {\n\tif (!this._renderProperties) {\n\t\tthrow new _exceptions.NoElementException();\n\t}\n\n\tif (Array.isArray(this._renderProperties)) {\n\t\tfor (var i = 0; i < this._renderProperties.length; i++) {\n\t\t\trender(this._renderProperties[i], this._encodings, this._options);\n\t\t}\n\t} else {\n\t\trender(this._renderProperties, this._encodings, this._options);\n\t}\n\n\treturn this;\n};\n\nAPI.prototype._defaults = _defaults2.default;\n\n// Prepares the encodings and calls the renderer\nfunction render(renderProperties, encodings, options) {\n\tencodings = (0, _linearizeEncodings2.default)(encodings);\n\n\tfor (var i = 0; i < encodings.length; i++) {\n\t\tencodings[i].options = (0, _merge2.default)(options, encodings[i].options);\n\t\t(0, _fixOptions2.default)(encodings[i].options);\n\t}\n\n\t(0, _fixOptions2.default)(options);\n\n\tvar Renderer = renderProperties.renderer;\n\tvar renderer = new Renderer(renderProperties.element, encodings, options);\n\trenderer.render();\n\n\tif (renderProperties.afterRender) {\n\t\trenderProperties.afterRender();\n\t}\n}\n\n// Export to browser\nif (typeof window !== \"undefined\") {\n\twindow.JsBarcode = JsBarcode;\n}\n\n// Export to jQuery\n/*global jQuery */\nif (typeof jQuery !== 'undefined') {\n\tjQuery.fn.JsBarcode = function (content, options) {\n\t\tvar elementArray = [];\n\t\tjQuery(this).each(function () {\n\t\t\telementArray.push(this);\n\t\t});\n\t\treturn JsBarcode(elementArray, content, options);\n\t};\n}\n\n// Export to commonJS\nmodule.exports = JsBarcode;","import JsBarcode from 'jsbarcode';\n\nfrappe.ui.form.ControlBarcode = frappe.ui.form.ControlData.extend({\n\tmake_wrapper() {\n\t\t// Create the elements for barcode area\n\t\tthis._super();\n\n\t\tthis.default_svg = '';\n\t\tlet $input_wrapper = this.$wrapper.find('.control-input-wrapper');\n\t\tthis.barcode_area = $(\n\t\t\t`
    ${this.default_svg}
    `\n\t\t);\n\t\tthis.barcode_area.appendTo($input_wrapper);\n\t},\n\n\tparse(value) {\n\t\t// Parse raw value\n\t\tif (value) {\n\t\t\tif (value.startsWith('\n\t\t\t\t
    \n\t\t\t
    `\n\t\t);\n\t\tthis.map_area.prependTo($input_wrapper);\n\t\tthis.$wrapper.find('.control-input').addClass(\"hidden\");\n\n\t\tif (this.frm) {\n\t\t\tthis.make_map();\n\t\t} else {\n\t\t\t$(document).on('frappe.ui.Dialog:shown', () => {\n\t\t\t\tthis.make_map();\n\t\t\t});\n\t\t}\n\t},\n\n\tmake_map() {\n\t\tthis.bind_leaflet_map();\n\t\tthis.bind_leaflet_draw_control();\n\t\tthis.bind_leaflet_locate_control();\n\t\tthis.bind_leaflet_refresh_button();\n\t},\n\n\tformat_for_input(value) {\n\t\tif (!this.map) return;\n\t\t// render raw value from db into map\n\t\tthis.clear_editable_layers();\n\t\tif(value) {\n\t\t\tvar data_layers = new L.FeatureGroup()\n\t\t\t\t.addLayer(L.geoJson(JSON.parse(value),{\n\t\t\t\t\tpointToLayer: function(geoJsonPoint, latlng) {\n\t\t\t\t\t\tif (geoJsonPoint.properties.point_type == \"circle\"){\n\t\t\t\t\t\t\treturn L.circle(latlng, {radius: geoJsonPoint.properties.radius});\n\t\t\t\t\t\t} else if (geoJsonPoint.properties.point_type == \"circlemarker\") {\n\t\t\t\t\t\t\treturn L.circleMarker(latlng, {radius: geoJsonPoint.properties.radius});\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\treturn L.marker(latlng);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\tthis.add_non_group_layers(data_layers, this.editableLayers);\n\t\t\ttry {\n\t\t\t\tthis.map.fitBounds(this.editableLayers.getBounds(), {\n\t\t\t\t\tpadding: [50,50]\n\t\t\t\t});\n\t\t\t}\n\t\t\tcatch(err) {\n\t\t\t\t// suppress error if layer has a point.\n\t\t\t}\n\t\t\tthis.editableLayers.addTo(this.map);\n\t\t} else {\n\t\t\tthis.map.setView(frappe.utils.map_defaults.center, frappe.utils.map_defaults.zoom);\n\t\t}\n\t\tthis.map.invalidateSize();\n\t},\n\n\tbind_leaflet_map() {\n\t\tvar circleToGeoJSON = L.Circle.prototype.toGeoJSON;\n\t\tL.Circle.include({\n\t\t\ttoGeoJSON: function() {\n\t\t\t\tvar feature = circleToGeoJSON.call(this);\n\t\t\t\tfeature.properties = {\n\t\t\t\t\tpoint_type: 'circle',\n\t\t\t\t\tradius: this.getRadius()\n\t\t\t\t};\n\t\t\t\treturn feature;\n\t\t\t}\n\t\t});\n\n\t\tL.CircleMarker.include({\n\t\t\ttoGeoJSON: function() {\n\t\t\t\tvar feature = circleToGeoJSON.call(this);\n\t\t\t\tfeature.properties = {\n\t\t\t\t\tpoint_type: 'circlemarker',\n\t\t\t\t\tradius: this.getRadius()\n\t\t\t\t};\n\t\t\t\treturn feature;\n\t\t\t}\n\t\t});\n\n\t\tL.Icon.Default.imagePath = '/assets/frappe/images/leaflet/';\n\t\tthis.map = L.map(this.map_id);\n\n\t\tL.tileLayer(frappe.utils.map_defaults.tiles,\n\t\t\tfrappe.utils.map_defaults.options).addTo(this.map);\n\t},\n\n\tbind_leaflet_locate_control() {\n\t\t// To request location update and set location, sets current geolocation on load\n\t\tthis.locate_control = L.control.locate({position:'topright'});\n\t\tthis.locate_control.addTo(this.map);\n\t},\n\n\tbind_leaflet_draw_control() {\n\t\tthis.editableLayers = new L.FeatureGroup();\n\n\t\tvar options = {\n\t\t\tposition: 'topleft',\n\t\t\tdraw: {\n\t\t\t\tpolyline: {\n\t\t\t\t\tshapeOptions: {\n\t\t\t\t\t\tcolor: frappe.ui.color.get('blue'),\n\t\t\t\t\t\tweight: 10\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tpolygon: {\n\t\t\t\t\tallowIntersection: false, // Restricts shapes to simple polygons\n\t\t\t\t\tdrawError: {\n\t\t\t\t\t\tcolor: frappe.ui.color.get('orange'), // Color the shape will turn when intersects\n\t\t\t\t\t\tmessage: 'Oh snap! you can\\'t draw that!' // Message that will show when intersect\n\t\t\t\t\t},\n\t\t\t\t\tshapeOptions: {\n\t\t\t\t\t\tcolor: frappe.ui.color.get('blue')\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tcircle: true,\n\t\t\t\trectangle: {\n\t\t\t\t\tshapeOptions: {\n\t\t\t\t\t\tclickable: false\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\tedit: {\n\t\t\t\tfeatureGroup: this.editableLayers, //REQUIRED!!\n\t\t\t\tremove: true\n\t\t\t}\n\t\t};\n\n\t\t// create control and add to map\n\t\tthis.drawControl = new L.Control.Draw(options);\n\t\tthis.map.addControl(this.drawControl);\n\n\t\tthis.map.on('draw:created', (e) => {\n\t\t\tvar type = e.layerType,\n\t\t\t\tlayer = e.layer;\n\t\t\tif (type === 'marker') {\n\t\t\t\tlayer.bindPopup('Marker');\n\t\t\t}\n\t\t\tthis.editableLayers.addLayer(layer);\n\t\t\tthis.set_value(JSON.stringify(this.editableLayers.toGeoJSON()));\n\t\t});\n\n\t\tthis.map.on('draw:deleted draw:edited', (e) => {\n\t\t\tvar layer = e.layer;\n\t\t\tthis.editableLayers.removeLayer(layer);\n\t\t\tthis.set_value(JSON.stringify(this.editableLayers.toGeoJSON()));\n\t\t});\n\t},\n\n\tbind_leaflet_refresh_button() {\n\t\tL.easyButton({\n\t\t\tid: 'refresh-map-'+this.df.fieldname,\n\t\t\tposition: 'topright',\n\t\t\ttype: 'replace',\n\t\t\tleafletClasses: true,\n\t\t\tstates:[{\n\t\t\t\tstateName: 'refresh-map',\n\t\t\t\tonClick: function(button, map){\n\t\t\t\t\tmap._onResize();\n\t\t\t\t},\n\t\t\t\ttitle: 'Refresh map',\n\t\t\t\ticon: 'fa fa-refresh'\n\t\t\t}]\n\t\t}).addTo(this.map);\n\t},\n\n\tadd_non_group_layers(source_layer, target_group) {\n\t\t// https://gis.stackexchange.com/a/203773\n\t\t// Would benefit from https://github.com/Leaflet/Leaflet/issues/4461\n\t\tif (source_layer instanceof L.LayerGroup) {\n\t\t\tsource_layer.eachLayer((layer)=>{\n\t\t\t\tthis.add_non_group_layers(layer, target_group);\n\t\t\t});\n\t\t} else {\n\t\t\ttarget_group.addLayer(source_layer);\n\t\t}\n\t},\n\n\tclear_editable_layers() {\n\t\tthis.editableLayers.eachLayer((l)=>{\n\t\t\tthis.editableLayers.removeLayer(l);\n\t\t});\n\t}\n});\n","import Awesomplete from 'awesomplete';\n\nfrappe.ui.form.ControlMultiSelect = frappe.ui.form.ControlAutocomplete.extend({\n\tget_awesomplete_settings() {\n\t\tconst settings = this._super();\n\n\t\treturn Object.assign(settings, {\n\t\t\tfilter: function(text, input) {\n\t\t\t\tlet d = this.get_item(text.value);\n\t\t\t\tif(!d) {\n\t\t\t\t\treturn Awesomplete.FILTER_CONTAINS(text, input.match(/[^,]*$/)[0]);\n\t\t\t\t}\n\n\t\t\t\tlet getMatch = value => Awesomplete.FILTER_CONTAINS(value, input.match(/[^,]*$/)[0]);\n\n\t\t\t\t// match typed input with label or value or description\n\t\t\t\tlet v = getMatch(d.label);\n\t\t\t\tif(!v && d.value) {\n\t\t\t\t\tv = getMatch(d.value);\n\t\t\t\t}\n\t\t\t\tif(!v && d.description) {\n\t\t\t\t\tv = getMatch(d.description);\n\t\t\t\t}\n\n\t\t\t\treturn v;\n\t\t\t},\n\n\t\t\treplace: function(text) {\n\t\t\t\tconst before = this.input.value.match(/^.+,\\s*|/)[0];\n\t\t\t\tthis.input.value = before + text + \", \";\n\t\t\t}\n\t\t});\n\t},\n\n\tget_value() {\n\t\tlet data = this._super();\n\t\t// find value of label from option list and return actual value string\n\t\tif (this.df.options && this.df.options.length && this.df.options[0].label) {\n\t\t\tdata = data.split(',').map(op => op.trim());\n\t\t\tdata = data.map(val => {\n\t\t\t\tlet option = this.df.options.find(op => op.label === val);\n\t\t\t\treturn option ? option.value : null;\n\t\t\t}).filter(n => n != null).join(', ');\n\t\t}\n\t\treturn data;\n\t},\n\n\tset_formatted_input(value) {\n\t\tif (!value) return;\n\t\t// find label of value from option list and set from it as input\n\t\tif (this.df.options && this.df.options.length && this.df.options[0].label) {\n\t\t\tvalue = value.split(',').map(d => d.trim()).map(val => {\n\t\t\t\tlet option = this.df.options.find(op => op.value === val);\n\t\t\t\treturn option ? option.label : val;\n\t\t\t}).filter(n => n != null).join(', ');\n\t\t}\n\t\tthis._super(value);\n\t},\n\n\tget_values() {\n\t\tconst value = this.get_value() || '';\n\t\tconst values = value.split(/\\s*,\\s*/).filter(d => d);\n\n\t\treturn values;\n\t},\n\n\tget_data() {\n\t\tlet data;\n\t\tif(this.df.get_data) {\n\t\t\tdata = this.df.get_data();\n\t\t\tif (data) this.set_data(data);\n\t\t} else {\n\t\t\tdata = this._super();\n\t\t}\n\t\tconst values = this.get_values() || [];\n\n\t\t// return values which are not already selected\n\t\tif(data) data.filter(d => !values.includes(d));\n\t\treturn data;\n\t}\n});\n","frappe.ui.form.ControlMultiCheck = frappe.ui.form.Control.extend({\n\t// UI: multiple checkboxes\n\t// Value: Array of values\n\t// Options: Array of label/value/checked option objects\n\n\tmake() {\n\t\tthis._super();\n\t\tif (this.df.label) {\n\t\t\tthis.$label = $(``).appendTo(this.wrapper);\n\t\t}\n\t\tthis.$load_state = $(`
    ${__(\"Loading\")}...
    `);\n\t\tthis.$select_buttons = this.get_select_buttons().appendTo(this.wrapper);\n\t\tthis.$load_state.appendTo(this.wrapper);\n\n\t\tconst row = this.get_column_size() === 12 ? '' : 'row';\n\t\tthis.$checkbox_area = $(`
    `).appendTo(this.wrapper);\n\t\tthis.refresh();\n\t},\n\n\trefresh() {\n\t\tthis.set_options();\n\t\tthis.bind_checkboxes();\n\t\tthis.refresh_input();\n\t\tthis._super();\n\t},\n\n\trefresh_input() {\n\t\tthis.select_options(this.selected_options);\n\t},\n\n\n\tset_options() {\n\t\tthis.$load_state.show();\n\t\tthis.$select_buttons.hide();\n\t\tthis.parse_df_options();\n\n\t\tif(this.df.get_data) {\n\t\t\tif(typeof this.df.get_data().then == 'function') {\n\t\t\t\tthis.df.get_data().then(results => {\n\t\t\t\t\tthis.options = results;\n\t\t\t\t\tthis.make_checkboxes();\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis.options = this.df.get_data();\n\t\t\t\tthis.make_checkboxes();\n\t\t\t}\n\t\t} else {\n\t\t\tthis.make_checkboxes();\n\t\t}\n\t},\n\n\tparse_df_options() {\n\t\tif(Array.isArray(this.df.options)) {\n\t\t\tthis.options = this.df.options;\n\t\t} else if(this.df.options && this.df.options.length>0 && frappe.utils.is_json(this.df.options)) {\n\t\t\tlet args = JSON.parse(this.df.options);\n\t\t\tif(Array.isArray(args)) {\n\t\t\t\tthis.options = args;\n\t\t\t} else if(Array.isArray(args.options)) {\n\t\t\t\tthis.options = args.options;\n\t\t\t}\n\t\t} else {\n\t\t\tthis.options = [];\n\t\t}\n\t},\n\n\tmake_checkboxes() {\n\t\tthis.$load_state.hide();\n\t\tthis.$checkbox_area.empty();\n\t\tthis.options.forEach(option => {\n\t\t\tlet checkbox = this.get_checkbox_element(option).appendTo(this.$checkbox_area);\n\t\t\tif (option.danger) {\n\t\t\t\tcheckbox.find('.label-area').addClass('text-danger');\n\t\t\t}\n\t\t\toption.$checkbox = checkbox;\n\t\t});\n\t\tif(this.df.select_all) {\n\t\t\tthis.setup_select_all();\n\t\t}\n\t\tthis.set_checked_options();\n\t},\n\n\tbind_checkboxes() {\n\t\t$(this.wrapper).on('change', ':checkbox', e => {\n\t\t\tconst $checkbox = $(e.target);\n\t\t\tconst option_name = $checkbox.attr(\"data-unit\");\n\t\t\tif($checkbox.is(':checked')) {\n\t\t\t\tif(this.selected_options.includes(option_name)) return;\n\t\t\t\tthis.selected_options.push(option_name);\n\t\t\t} else {\n\t\t\t\tlet index = this.selected_options.indexOf(option_name);\n\t\t\t\tif(index > -1) {\n\t\t\t\t\tthis.selected_options.splice(index, 1);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.df.on_change && this.df.on_change();\n\t\t});\n\t},\n\n\tset_checked_options() {\n\t\tthis.selected_options = this.options\n\t\t\t.filter(o => o.checked)\n\t\t\t.map(o => o.value);\n\t\tthis.select_options(this.selected_options);\n\t},\n\n\tsetup_select_all() {\n\t\tthis.$select_buttons.show();\n\t\tthis.$select_buttons.find('.select-all').on('click', () => {\n\t\t\tthis.select_all();\n\t\t});\n\t\tthis.$select_buttons.find('.deselect-all').on('click', () => {\n\t\t\tthis.select_all(true);\n\t\t});\n\t},\n\n\tselect_all(deselect=false) {\n\t\t$(this.wrapper).find(`:checkbox`).prop(\"checked\", deselect).trigger('click');\n\t},\n\n\tselect_options(selected_options) {\n\t\tthis.options.map(option => option.value).forEach(value => {\n\t\t\tlet $checkbox = $(this.wrapper).find(`:checkbox[data-unit=\"${value}\"]`)[0];\n\t\t\tif($checkbox) $checkbox.checked = selected_options.includes(value);\n\t\t});\n\t},\n\n\tget_value() {\n\t\treturn this.selected_options;\n\t},\n\n\tget_checked_options() {\n\t\treturn this.get_value();\n\t},\n\n\tget_unchecked_options() {\n\t\treturn this.options.map(o => o.value)\n\t\t\t.filter(value => !this.selected_options.includes(value));\n\t},\n\n\tget_checkbox_element(option) {\n\t\tconst column_size = this.get_column_size();\n\t\treturn $(`\n\t\t\t
    \n\t\t\t\t\n\t\t\t
    \n\t\t`);\n\t},\n\n\tget_select_buttons() {\n\t\treturn $(`\n\t\t
    \n\t\t\t\n\t\t\t\n\t\t
    \n\t\t`);\n\t},\n\n\tget_column_size() {\n\t\treturn 12 / (+this.df.columns || 1);\n\t}\n});\n","frappe.ui.form.ControlTableMultiSelect = frappe.ui.form.ControlLink.extend({\n\tmake_input() {\n\t\tthis._super();\n\n\t\tthis.$input_area.addClass('form-control table-multiselect');\n\t\tthis.$input.removeClass('form-control');\n\n\t\tthis.$input.on(\"awesomplete-selectcomplete\", () => {\n\t\t\tthis.$input.val('').focus();\n\t\t});\n\n\t\t// used as an internal model to store values\n\t\tthis.rows = [];\n\t\t// used as an internal model to filter awesomplete values\n\t\tthis._rows_list = [];\n\n\t\tthis.$input_area.on('click', (e) => {\n\t\t\tif (e.target === this.$input_area.get(0)) {\n\t\t\t\tthis.$input.focus();\n\t\t\t}\n\t\t});\n\n\t\tthis.$input_area.on('click', '.btn-remove', (e) => {\n\t\t\tconst $target = $(e.currentTarget);\n\t\t\tconst $value = $target.closest('.tb-selected-value');\n\n\t\t\tconst value = decodeURIComponent($value.data().value);\n\t\t\tconst link_field = this.get_link_field();\n\t\t\tthis.rows = this.rows.filter(row => row[link_field.fieldname] !== value);\n\n\t\t\tthis.parse_validate_and_set_in_model('');\n\t\t});\n\t\tthis.$input_area.on('click', '.btn-link-to-form', (e) => {\n\t\t\tconst $target = $(e.currentTarget);\n\t\t\tconst $value = $target.closest('.tb-selected-value');\n\n\t\t\tconst value = decodeURIComponent($value.data().value);\n\t\t\tconst link_field = this.get_link_field();\n\t\t\tfrappe.set_route('Form', link_field.options, value);\n\t\t});\n\t\tthis.$input.on('keydown', e => {\n\t\t\t// if backspace key pressed on empty input, delete last value\n\t\t\tif (e.keyCode == frappe.ui.keyCode.BACKSPACE && e.target.value === '') {\n\t\t\t\tthis.rows = this.rows.slice(0, this.rows.length - 1);\n\t\t\t\tthis.parse_validate_and_set_in_model('');\n\t\t\t}\n\t\t});\n\t},\n\tsetup_buttons() {\n\t\tthis.$input_area.find('.link-btn').remove();\n\t},\n\tparse(value) {\n\t\tconst link_field = this.get_link_field();\n\n\t\tif (value) {\n\t\t\tif (this.frm) {\n\t\t\t\tconst new_row = frappe.model.add_child(this.frm.doc, this.df.options, this.df.fieldname);\n\t\t\t\tnew_row[link_field.fieldname] = value;\n\t\t\t\tthis.rows = this.frm.doc[this.df.fieldname];\n\t\t\t} else {\n\t\t\t\tthis.rows.push({\n\t\t\t\t\t[link_field.fieldname]: value\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\tthis._rows_list = this.rows.map(row => row[link_field.fieldname]);\n\t\treturn this.rows;\n\t},\n\tget_model_value() {\n\t\tlet value = this._super();\n\t\treturn value ? value.filter(d => !d.__islocal) : value;\n\t},\n\tvalidate(value) {\n\t\tconst rows = (value || []).slice();\n\n\t\t// validate the value just entered\n\t\tif (this.df.ignore_link_validation) {\n\t\t\treturn rows;\n\t\t}\n\n\t\tconst link_field = this.get_link_field();\n\t\tif (rows.length === 0) {\n\t\t\treturn rows;\n\t\t}\n\n\t\tconst all_rows_except_last = rows.slice(0, rows.length - 1);\n\t\tconst last_row = rows[rows.length - 1];\n\n\t\t// validate the last value entered\n\t\tconst link_value = last_row[link_field.fieldname];\n\n\t\t// falsy value\n\t\tif (!link_value) {\n\t\t\treturn all_rows_except_last;\n\t\t}\n\n\t\t// duplicate value\n\t\tif (all_rows_except_last.map(row => row[link_field.fieldname]).includes(link_value)) {\n\t\t\treturn all_rows_except_last;\n\t\t}\n\n\t\tconst validate_promise = this.validate_link_and_fetch(this.df, this.get_options(),\n\t\t\tthis.docname, link_value);\n\n\t\treturn validate_promise.then(validated_value => {\n\t\t\tif (validated_value === link_value) {\n\t\t\t\treturn rows;\n\t\t\t} else {\n\t\t\t\trows.pop();\n\t\t\t\treturn rows;\n\t\t\t}\n\t\t});\n\t},\n\tset_formatted_input(value) {\n\t\tthis.rows = value || [];\n\t\tconst link_field = this.get_link_field();\n\t\tconst values = this.rows.map(row => row[link_field.fieldname]);\n\t\tthis.set_pill_html(values);\n\t},\n\tset_pill_html(values) {\n\t\tconst html = values\n\t\t\t.map(value => this.get_pill_html(value))\n\t\t\t.join('');\n\n\t\tthis.$input_area.find('.tb-selected-value').remove();\n\t\tthis.$input_area.prepend(html);\n\t},\n\tget_pill_html(value) {\n\t\tconst encoded_value = encodeURIComponent(value);\n\t\treturn `\n\t\t\t\n\t\t`;\n\t},\n\tget_options() {\n\t\treturn (this.get_link_field() || {}).options;\n\t},\n\tget_link_field() {\n\t\tif (!this._link_field) {\n\t\t\tconst meta = frappe.get_meta(this.df.options);\n\t\t\tthis._link_field = meta.fields.find(df => df.fieldtype === 'Link');\n\t\t\tif (!this._link_field) {\n\t\t\t\tthrow new Error('Table MultiSelect requires a Table with atleast one Link field');\n\t\t\t}\n\t\t}\n\t\treturn this._link_field;\n\t},\n\tcustom_awesomplete_filter: function(awesomplete) {\n\t\tlet me = this;\n\n\t\tawesomplete.filter = function(item) {\n\t\t\tif (in_list(me._rows_list, item.value)) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn true;\n\t\t};\n\t}\n});\n","import Awesomplete from 'awesomplete';\n\nfrappe.ui.form.ControlMultiSelectPills = frappe.ui.form.ControlAutocomplete.extend({\n\tmake_input() {\n\t\tthis._super();\n\t\tthis.$input_area = $(this.input_area);\n\t\tthis.$multiselect_wrapper = $('
    ')\n\t\t\t.addClass('form-control table-multiselect')\n\t\t\t.appendTo(this.$input_area);\n\n\t\tthis.$input.removeClass('form-control');\n\t\tthis.$input_area.find('.awesomplete').appendTo(this.$multiselect_wrapper);\n\n\t\tthis.$input.on(\"awesomplete-selectcomplete\", () => {\n\t\t\tthis.$input.val('').focus();\n\t\t});\n\n\t\t// used as an internal model to store values\n\t\tthis.rows = [];\n\n\t\tthis.$input_area.on('click', '.btn-remove', (e) => {\n\t\t\tconst $target = $(e.currentTarget);\n\t\t\tconst $value = $target.closest('.tb-selected-value');\n\n\t\t\tconst value = decodeURIComponent($value.data().value);\n\t\t\tthis.rows = this.rows.filter(val => val !== value);\n\n\t\t\tthis.parse_validate_and_set_in_model('');\n\t\t});\n\n\t\tthis.$input.on('keydown', e => {\n\t\t\t// if backspace key pressed on empty input, delete last value\n\t\t\tif (e.keyCode == frappe.ui.keyCode.BACKSPACE && e.target.value === '') {\n\t\t\t\tthis.rows = this.rows.slice(0, this.rows.length - 1);\n\t\t\t\tthis.parse_validate_and_set_in_model('');\n\t\t\t}\n\t\t});\n\t},\n\n\tparse(value) {\n\t\tif (value) {\n\t\t\tthis.rows.push(value);\n\t\t}\n\n\t\treturn this.rows;\n\t},\n\n\tvalidate(value) {\n\t\tconst rows = (value || []).slice();\n\n\t\tif (rows.length === 0) {\n\t\t\treturn rows;\n\t\t}\n\n\t\tconst all_rows_except_last = rows.slice(0, rows.length - 1);\n\t\tconst last_value = rows[rows.length - 1];\n\n\t\t// falsy value\n\t\tif (!last_value) {\n\t\t\treturn all_rows_except_last;\n\t\t}\n\n\t\t// duplicate value\n\t\tif (all_rows_except_last.includes(last_value)) {\n\t\t\treturn all_rows_except_last;\n\t\t}\n\n\t\treturn rows;\n\t},\n\n\tset_formatted_input(value) {\n\t\tthis.rows = value || [];\n\t\tthis.set_pill_html(this.rows);\n\t},\n\n\tset_pill_html(values) {\n\t\tconst html = values\n\t\t\t.map(value => this.get_pill_html(value))\n\t\t\t.join('');\n\n\t\tthis.$multiselect_wrapper.find('.tb-selected-value').remove();\n\t\tthis.$multiselect_wrapper.prepend(html);\n\t},\n\n\tget_pill_html(value) {\n\t\tconst encoded_value = encodeURIComponent(value);\n\t\treturn `\n\t\t\t\n\t\t`;\n\t},\n\n\tget_awesomplete_settings() {\n\t\tconst settings = this._super();\n\n\t\treturn Object.assign(settings, {\n\t\t\tfilter: function(text, input) {\n\t\t\t\tlet d = this.get_item(text.value);\n\t\t\t\tif(!d) {\n\t\t\t\t\treturn Awesomplete.FILTER_CONTAINS(text, input.match(/[^,]*$/)[0]);\n\t\t\t\t}\n\n\t\t\t\tlet getMatch = value => Awesomplete.FILTER_CONTAINS(value, input.match(/[^,]*$/)[0]);\n\n\t\t\t\t// match typed input with label or value or description\n\t\t\t\tlet v = getMatch(d.label);\n\t\t\t\tif(!v && d.value) {\n\t\t\t\t\tv = getMatch(d.value);\n\t\t\t\t}\n\t\t\t\tif(!v && d.description) {\n\t\t\t\t\tv = getMatch(d.description);\n\t\t\t\t}\n\n\t\t\t\treturn v;\n\t\t\t}\n\t\t});\n\t},\n\n\tget_value() {\n\t\treturn this.rows;\n\t},\n\n\tget_values() {\n\t\treturn this.rows;\n\t},\n\n\tget_data() {\n\t\tlet data;\n\t\tif(this.df.get_data) {\n\t\t\tlet txt = this.$input.val();\n\t\t\tdata = this.df.get_data(txt);\n\t\t\tif (data && data.then) {\n\t\t\t\tdata.then((r) => {\n\t\t\t\t\tthis.set_data(r);\n\t\t\t\t});\n\t\t\t\tdata = this.get_value();\n\t\t\t} else {\n\t\t\t\tthis.set_data(data);\n\t\t\t}\n\t\t} else {\n\t\t\tdata = this._super();\n\t\t}\n\t\tconst values = this.get_values() || [];\n\n\t\t// return values which are not already selected\n\t\tif (data) data.filter(d => !values.includes(d));\n\t\treturn data;\n\t}\n});\n","frappe.ui.form.ControlMultiSelectList = frappe.ui.form.ControlData.extend({\n\ttrigger_change_on_input_event: false,\n\tmake_input() {\n\t\tlet template = `\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t
      \n\t\t\t\t\t
    • \n\t\t\t\t\t\t\n\t\t\t\t\t
    • \n\t\t\t\t\t
      \n\t\t\t\t\t
      \n\t\t\t\t
    \n\t\t\t
    \n\t\t`;\n\n\t\tthis.$list_wrapper = $(template);\n\t\tthis.$input = $('');\n\t\tthis.input = this.$input.get(0);\n\t\tthis.has_input = true;\n\t\tthis.$list_wrapper.prependTo(this.input_area);\n\t\tthis.$filter_input = this.$list_wrapper.find('input');\n\t\tthis.$list_wrapper.on('click', '.dropdown-menu', e => {\n\t\t\te.stopPropagation();\n\t\t});\n\t\tthis.$list_wrapper.on('click', '.selectable-item', e => {\n\t\t\tlet $target = $(e.currentTarget);\n\t\t\tthis.toggle_select_item($target);\n\t\t});\n\t\tthis.$list_wrapper.on('input', 'input', frappe.utils.debounce((e) => {\n\t\t\tthis.set_options()\n\t\t\t\t.then(() => {\n\t\t\t\t\tlet txt = e.target.value;\n\t\t\t\t\tlet filtered_options = this._options.filter(opt => {\n\t\t\t\t\t\tlet match = false;\n\t\t\t\t\t\tif (this.values.includes(opt.value)) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmatch = Awesomplete.FILTER_CONTAINS(opt.label, txt)\n\t\t\t\t\t\t\t|| Awesomplete.FILTER_CONTAINS(opt.value, txt)\n\t\t\t\t\t\t\t|| Awesomplete.FILTER_CONTAINS(opt.description, txt);\n\n\t\t\t\t\t\treturn match;\n\t\t\t\t\t});\n\t\t\t\t\tlet options = this._selected_values\n\t\t\t\t\t\t.concat(filtered_options)\n\t\t\t\t\t\t.uniqBy(opt => opt.value);\n\t\t\t\t\tthis.set_selectable_items(options);\n\t\t\t\t});\n\t\t}, 300));\n\t\tthis.$list_wrapper.on('keydown', 'input', e => {\n\t\t\tif (e.key === 'ArrowDown') {\n\t\t\t\tthis.highlight_item(1);\n\t\t\t} else if (e.key === 'ArrowUp') {\n\t\t\t\tthis.highlight_item(-1);\n\t\t\t} else if (e.key === 'Enter') {\n\t\t\t\tif (this._$last_highlighted) {\n\t\t\t\t\tthis.toggle_select_item(this._$last_highlighted);\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis.$list_wrapper.on('keydown', e => {\n\t\t\tif ($(e.target).is('input')) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (e.key === 'Backspace') {\n\t\t\t\tthis.set_value([]);\n\t\t\t}\n\t\t});\n\n\t\tthis.$list_wrapper.on('show.bs.dropdown', () => {\n\t\t\tthis.set_options()\n\t\t\t\t.then(() => {\n\t\t\t\t\tthis.set_selectable_items(this._options);\n\t\t\t\t});\n\t\t});\n\n\t\tthis.set_input_attributes();\n\t\tthis.values = [];\n\t\tthis._options = [];\n\t\tthis._selected_values = [];\n\t\tthis.highlighted = -1;\n\t},\n\n\tset_input_attributes() {\n\t\tthis.$list_wrapper\n\t\t\t.attr(\"data-fieldtype\", this.df.fieldtype)\n\t\t\t.attr(\"data-fieldname\", this.df.fieldname);\n\n\t\tthis.set_status(this.get_placeholder_text());\n\n\t\tif (this.doctype) {\n\t\t\tthis.$list_wrapper.attr(\"data-doctype\", this.doctype);\n\t\t}\n\t\tif(this.df.input_css) {\n\t\t\tthis.$list_wrapper.css(this.df.input_css);\n\t\t}\n\t\tif(this.df.input_class) {\n\t\t\tthis.$list_wrapper.addClass(this.df.input_class);\n\t\t}\n\t},\n\n\ttoggle_select_item($selectable_item) {\n\t\t$selectable_item.toggleClass('selected');\n\t\tlet value = decodeURIComponent($selectable_item.data().value);\n\n\t\tif ($selectable_item.hasClass('selected')) {\n\t\t\tthis.values = this.values.slice();\n\t\t\tthis.values.push(value);\n\t\t} else {\n\t\t\tthis.values = this.values.filter(val => val !== value);\n\t\t}\n\t\tthis.update_selected_values(value);\n\t\tthis.parse_validate_and_set_in_model('');\n\t\tthis.update_status();\n\t},\n\n\tset_value(value) {\n\t\tif (!value) return Promise.resolve();\n\t\tif (typeof value === 'string') {\n\t\t\tvalue = [value];\n\t\t}\n\t\tthis.values = value;\n\t\tthis.values.forEach(value => {\n\t\t\tthis.update_selected_values(value);\n\t\t});\n\t\tthis.parse_validate_and_set_in_model('');\n\t\tthis.update_status();\n\t\treturn Promise.resolve();\n\t},\n\n\tupdate_selected_values(value) {\n\t\tthis._selected_values = this._selected_values || [];\n\t\tlet option = this._options.find(opt => opt.value === value);\n\t\tif (option) {\n\t\t\tif (this.values.includes(value)) {\n\t\t\t\tthis._selected_values.push(option);\n\t\t\t} else {\n\t\t\t\tthis._selected_values = this._selected_values.filter(opt => opt.value !== value);\n\t\t\t}\n\t\t}\n\t},\n\n\tupdate_status() {\n\t\tlet text;\n\t\tif (this.values.length === 0) {\n\t\t\ttext = this.get_placeholder_text();\n\t\t} else if (this.values.length === 1) {\n\t\t\tlet val = this.values[0];\n\t\t\tlet option = this._options.find(opt => opt.value === val);\n\t\t\ttext = option ? option.label : val;\n\t\t} else {\n\t\t\ttext = __('{0} values selected', [this.values.length]);\n\t\t}\n\t\tthis.set_status(text);\n\t},\n\n\tget_placeholder_text() {\n\t\treturn `${this.df.placeholder || ''}`;\n\t},\n\n\tset_status(text) {\n\t\tthis.$list_wrapper.find('.status-text').html(text);\n\t},\n\n\tset_options() {\n\t\tlet promise = Promise.resolve();\n\n\t\tfunction process_options(options) {\n\t\t\treturn options.map(option => {\n\t\t\t\tif (typeof option === 'string') {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tlabel: option,\n\t\t\t\t\t\tvalue: option\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (!option.label) {\n\t\t\t\t\toption.label = option.value;\n\t\t\t\t}\n\t\t\t\treturn option;\n\t\t\t});\n\t\t}\n\n\t\tif (this.df.get_data) {\n\t\t\tlet txt = this.$filter_input.val();\n\t\t\tlet value = this.df.get_data(txt);\n\t\t\tif (!value) {\n\t\t\t\tthis._options = [];\n\t\t\t} else if (value.then) {\n\t\t\t\tpromise = value.then(options => {\n\t\t\t\t\tthis._options = process_options(options);\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis._options = process_options(value);\n\t\t\t}\n\t\t} else {\n\t\t\tthis._options = process_options(this.df.options);\n\t\t}\n\t\treturn promise;\n\t},\n\n\tset_selectable_items(options) {\n\t\tlet html = options.map(option => {\n\t\t\tlet encoded_value = encodeURIComponent(option.value);\n\t\t\tlet selected = this.values.includes(option.value) ? 'selected' : '';\n\t\t\treturn `
  • \n\t\t\t\t
    \n\t\t\t\t\t${option.label}\n\t\t\t\t\t
    ${option.description}
    \n\t\t\t\t
    \n\t\t\t\t
    ${frappe.utils.icon('tick', 'xs')}
    \n\t\t\t
  • `;\n\t\t}).join('');\n\t\tif (!html) {\n\t\t\thtml = `
  • ${__('No values to show')}
  • `;\n\t\t}\n\t\tthis.$list_wrapper\n\t\t\t.find('.selectable-items')\n\t\t\t.html(html);\n\n\t\tthis.highlighted = -1;\n\t},\n\n\tget_value() {\n\t\treturn this.values;\n\t},\n\n\thighlight_item(value) {\n\t\tthis.highlighted += value;\n\n\t\tif (this.highlighted < 0) {\n\t\t\tthis.highlighted = 0;\n\t\t}\n\t\tlet $items = this.$list_wrapper.find('.selectable-item');\n\t\tif (this.highlighted > $items.length - 1) {\n\t\t\tthis.highlighted = $items.length - 1;\n\t\t}\n\n\t\tlet $item = $items[this.highlighted];\n\n\t\tif (this._$last_highlighted) {\n\t\t\tthis._$last_highlighted.removeClass('highlighted');\n\t\t}\n\t\tthis._$last_highlighted = $($item).addClass('highlighted');\n\t\tthis.scroll_dropdown_if_needed($item);\n\t},\n\n\tscroll_dropdown_if_needed($item) {\n\t\tif ($item.scrollIntoView) {\n\t\t\t$item.scrollIntoView({ behavior: 'smooth', block: 'nearest', inline: 'start' });\n\t\t} else {\n\t\t\t$item.parentNode.scrollTop = $item.offsetTop - $item.parentNode.offsetTop;\n\t\t}\n\t}\n});\n","frappe.ui.form.ControlRating = frappe.ui.form.ControlInt.extend({\n\tmake_input() {\n\t\tthis._super();\n\t\tlet stars = '';\n\t\t[1, 2, 3, 4, 5].forEach(i => {\n\t\t\tstars += `\n\t\t\t\t\n\t\t\t`;\n\t\t});\n\t\tconst star_template = `\n\t\t\t
    \n\t\t\t\t${stars}\n\t\t\t
    \n\t\t`;\n\n\t\t$(this.input_area).html(star_template);\n\n\t\t$(this.input_area).find('svg').hover((ev) => {\n\t\t\tconst el = $(ev.currentTarget);\n\t\t\tlet star_value = el.data('rating');\n\t\t\tel.parent().children('svg').each( function(e) {\n\t\t\t\tif (e < star_value) {\n\t\t\t\t\t$(this).addClass('star-hover');\n\t\t\t\t} else {\n\t\t\t\t\t$(this).removeClass('star-hover');\n\t\t\t\t}\n\t\t\t});\n\t\t}, (ev) => {\n\t\t\tconst el = $(ev.currentTarget);\n\t\t\tel.parent().children('svg').each( function() {\n\t\t\t\t$(this).removeClass('star-hover');\n\t\t\t});\n\t\t});\n\n\t\t$(this.input_area).find('svg').click((ev) => {\n\t\t\tconst el = $(ev.currentTarget);\n\t\t\tlet star_value = el.data('rating');\n\t\t\tel.parent().children('svg').each( function(e) {\n\t\t\t\tif (e < star_value) {\n\t\t\t\t\t$(this).addClass('star-click');\n\t\t\t\t} else {\n\t\t\t\t\t$(this).removeClass('star-click');\n\t\t\t\t}\n\t\t\t});\n\t\t\tthis.validate_and_set_in_model(star_value, ev);\n\t\t\tif (this.doctype && this.docname) {\n\t\t\t\tthis.set_input(star_value);\n\t\t\t}\n\t\t});\n\t},\n\tget_value() {\n\t\treturn cint(this.value, null);\n\t},\n\tset_formatted_input(value) {\n\t\tlet el = $(this.input_area).find('svg');\n\t\tel.children('svg').prevObject.each( function(e) {\n\t\t\tif (e < value) {\n\t\t\t\t$(this).addClass('star-click');\n\t\t\t} else {\n\t\t\t\t$(this).removeClass('star-click');\n\t\t\t}\n\t\t});\n\t}\n});\n","frappe.ui.form.ControlDuration = frappe.ui.form.ControlData.extend({\n\tmake_input: function() {\n\t\tthis._super();\n\t\tthis.make_picker();\n\t},\n\n\tmake_picker: function() {\n\t\tthis.inputs = [];\n\t\tthis.set_duration_options();\n\t\tthis.$picker = $(\n\t\t\t`
    \n\t\t\t\t
    \n\t\t\t
    `\n\t\t);\n\t\tthis.$wrapper.append(this.$picker);\n\t\tthis.build_numeric_input(\"days\", this.duration_options.hide_days);\n\t\tthis.build_numeric_input(\"hours\", false);\n\t\tthis.build_numeric_input(\"minutes\", false);\n\t\tthis.build_numeric_input(\"seconds\", this.duration_options.hide_seconds);\n\t\tthis.set_duration_picker_value(this.value);\n\t\tthis.$picker.hide();\n\t\tthis.bind_events();\n\t\tthis.refresh();\n\t},\n\n\tbuild_numeric_input: function(label, hidden, max) {\n\t\tlet $duration_input = $(`\n\t\t\t\n\t\t`);\n\n\t\tlet $input = $(`
    `).prepend($duration_input);\n\n\t\tif (max) {\n\t\t\t$duration_input.attr(\"max\", max);\n\t\t}\n\n\t\tthis.inputs[label] = $duration_input;\n\n\t\tlet $control = $(`\n\t\t\t
    \n\t\t\t\t
    ${__(label)}
    \n\t\t\t
    `\n\t\t);\n\n\t\tif (hidden) {\n\t\t\t$control.addClass(\"hidden\");\n\t\t}\n\t\t$control.prepend($input);\n\t\t$control.appendTo(this.$picker.find(\".picker-row\"));\n\t},\n\n\tset_duration_options() {\n\t\tthis.duration_options = frappe.utils.get_duration_options(this.df);\n\t},\n\n\tset_duration_picker_value: function(value) {\n\t\tlet total_duration = frappe.utils.seconds_to_duration(value, this.duration_options);\n\n\t\tif (this.$picker) {\n\t\t\tObject.keys(total_duration).forEach(duration => {\n\t\t\t\tthis.inputs[duration].prop(\"value\", total_duration[duration]);\n\t\t\t});\n\t\t}\n\t},\n\n\tbind_events: function() {\n\t\t// flag to handle the display property of the picker\n\t\tlet clicked = false;\n\n\t\tthis.$wrapper.find(\".duration-input\").mousedown(() => {\n\t\t\t// input in individual duration boxes\n\t\t\tclicked = true;\n\t\t});\n\n\t\tthis.$picker.on(\"change\", \".duration-input\", () => {\n\t\t\t// duration changed in individual boxes\n\t\t\tclicked = false;\n\t\t\tlet duration = this.get_duration();\n\t\t\tlet value = frappe.utils.duration_to_seconds(\n\t\t\t\tduration.days,\n\t\t\t\tduration.hours,\n\t\t\t\tduration.minutes,\n\t\t\t\tduration.seconds\n\t\t\t);\n\t\t\tthis.set_value(value);\n\t\t\tthis.set_focus();\n\t\t});\n\n\t\tthis.$input.on(\"focus\", () => {\n\t\t\tthis.$picker.show();\n\t\t\tlet is_picker_set = this.is_duration_picker_set(this.inputs);\n\t\t\tif (!is_picker_set) {\n\t\t\t\tthis.set_duration_picker_value(this.value);\n\t\t\t}\n\t\t});\n\n\t\tthis.$input.on(\"blur\", () => {\n\t\t\t// input in duration boxes, don't close the picker\n\t\t\tif (clicked) {\n\t\t\t\tclicked = false;\n\t\t\t} else {\n\t\t\t\t// blur event was not due to duration inputs\n\t\t\t\tthis.$picker.hide();\n\t\t\t}\n\t\t});\n\t},\n\n\tget_value() {\n\t\treturn cint(this.value);\n\t},\n\n\trefresh_input: function() {\n\t\tthis._super();\n\t\tthis.set_duration_options();\n\t\tthis.set_duration_picker_value(this.value);\n\t},\n\n\tformat_for_input: function(value) {\n\t\treturn frappe.utils.get_formatted_duration(value, this.duration_options);\n\t},\n\n\tget_duration() {\n\t\t// returns an object of days, hours, minutes and seconds from the inputs array\n\t\tlet total_duration = {\n\t\t\tminutes: 0,\n\t\t\thours: 0,\n\t\t\tdays: 0,\n\t\t\tseconds: 0\n\t\t};\n\t\tif (this.inputs) {\n\t\t\ttotal_duration.minutes = parseInt(this.inputs.minutes.val());\n\t\t\ttotal_duration.hours = parseInt(this.inputs.hours.val());\n\t\t\tif (!this.duration_options.hide_days) {\n\t\t\t\ttotal_duration.days = parseInt(this.inputs.days.val());\n\t\t\t}\n\t\t\tif (!this.duration_options.hide_seconds) {\n\t\t\t\ttotal_duration.seconds = parseInt(this.inputs.seconds.val());\n\t\t\t}\n\t\t}\n\t\treturn total_duration;\n\t},\n\n\tis_duration_picker_set(inputs) {\n\t\tlet is_set = false;\n\t\tObject.values(inputs).forEach(duration => {\n\t\t\tif (duration.prop(\"value\") != 0) {\n\t\t\t\tis_set = true;\n\t\t\t}\n\t\t});\n\t\treturn is_set;\n\t}\n});","class Picker {\n\tconstructor(opts) {\n\t\tthis.parent = opts.parent;\n\t\tthis.width = opts.width;\n\t\tthis.height = opts.height;\n\t\tthis.set_icon(opts.icon);\n\t\tthis.icons = opts.icons;\n\t\tthis.setup_picker();\n\t}\n\n\trefresh() {\n\t\tthis.update_icon_selected(true);\n\t}\n\n\tsetup_picker() {\n\t\tthis.icon_picker_wrapper = $(`\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t${frappe.utils.icon('search', \"sm\")}\n\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t
    \n\t\t`);\n\t\tthis.parent.append(this.icon_picker_wrapper);\n\t\tthis.icon_wrapper = this.icon_picker_wrapper.find('.icons');\n\t\tthis.search_input = this.icon_picker_wrapper.find('.search-icons > input');\n\t\tthis.refresh();\n\t\tthis.setup_icons();\n\t}\n\n\tsetup_icons() {\n\t\tthis.icons.forEach(icon => {\n\t\t\tlet $icon = $(`
    ${frappe.utils.icon(icon, \"md\")}
    `);\n\t\t\tthis.icon_wrapper.append($icon);\n\t\t\tconst set_values = () => {\n\t\t\t\tthis.set_icon(icon);\n\t\t\t\tthis.update_icon_selected();\n\t\t\t};\n\t\t\t$icon.on('click', () => {\n\t\t\t\tset_values();\n\t\t\t});\n\t\t\t$icon.keydown((e) => {\n\t\t\t\tconst key_code = e.keyCode;\n\t\t\t\tif ([13, 32].includes(key_code)) {\n\t\t\t\t\te.preventDefault();\n\t\t\t\t\tset_values();\n\t\t\t\t}\n\t\t\t});\n\t\t\tthis.search_input.keyup((e) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tthis.filter_icons();\n\t\t\t});\n\n\t\t\tthis.search_input.on('search', () => {\n\t\t\t\tthis.filter_icons();\n\t\t\t});\n\t\t});\n\t}\n\n\tfilter_icons() {\n\t\tlet value = this.search_input.val();\n\t\tif (!value) {\n\t\t\tthis.icon_wrapper.find(\".icon-wrapper\").removeClass('hidden');\n\t\t} else {\n\t\t\tthis.icon_wrapper.find(\".icon-wrapper\").addClass('hidden');\n\t\t\tthis.icon_wrapper.find(`.icon-wrapper[id*='${value}']`).removeClass('hidden');\n\t\t}\n\t}\n\n\tupdate_icon_selected(silent) {\n\t\t!silent && this.on_change && this.on_change(this.get_icon());\n\t}\n\n\tset_icon(icon) {\n\t\tthis.icon = icon || '';\n\t}\n\n\tget_icon() {\n\t\treturn this.icon || '';\n\t}\n}\n\nexport default Picker;","import Picker from '../../icon_picker/icon_picker';\n\nfrappe.ui.form.ControlIcon = class ControlIcon extends frappe.ui.form.ControlData {\n\tmake_input() {\n\t\tthis.df.placeholder = this.df.placeholder || __('Choose an icon');\n\t\tsuper.make_input();\n\t\tthis.get_all_icons();\n\t\tthis.make_icon_input();\n\t}\n\n\tget_all_icons() {\n\t\tfrappe.symbols = [];\n\t\t$(\"#frappe-symbols > symbol[id]\").each(function() {\n\t\t\tfrappe.symbols.push(this.id.replace('icon-', ''));\n\t\t});\n\t}\n\n\tmake_icon_input() {\n\t\tlet picker_wrapper = $('
    ');\n\t\tthis.picker = new Picker({\n\t\t\tparent: picker_wrapper,\n\t\t\ticon: this.get_icon(),\n\t\t\ticons: frappe.symbols\n\t\t});\n\n\t\tthis.$wrapper.popover({\n\t\t\ttrigger: 'manual',\n\t\t\toffset: `${-this.$wrapper.width() / 4.5}, 5`,\n\t\t\tboundary: 'viewport',\n\t\t\tplacement: 'bottom',\n\t\t\ttemplate: `\n\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t\t
    \n\t\t\t\t
    \n\t\t\t`,\n\t\t\tcontent: () => picker_wrapper,\n\t\t\thtml: true\n\t\t}).on('show.bs.popover', () => {\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.picker.refresh();\n\t\t\t}, 10);\n\t\t}).on('hidden.bs.popover', () => {\n\t\t\t$('body').off('click.icon-popover');\n\t\t\t$(window).off('hashchange.icon-popover');\n\t\t});\n\n\t\tthis.picker.on_change = (icon) => {\n\t\t\tthis.set_value(icon);\n\t\t};\n\n\t\tif (!this.selected_icon) {\n\t\t\tthis.selected_icon = $(`
    ${frappe.utils.icon(\"folder-normal\", \"md\")}
    `);\n\t\t\tthis.selected_icon.insertAfter(this.$input);\n\t\t}\n\n\t\tthis.$wrapper.find('.selected-icon').parent().on('click', (e) => {\n\t\t\tthis.$wrapper.popover('toggle');\n\t\t\tif (!this.get_icon()) {\n\t\t\t\tthis.$input.val('');\n\t\t\t}\n\t\t\te.stopPropagation();\n\t\t\t$('body').on('click.icon-popover', (ev) => {\n\t\t\t\tif (!$(ev.target).parents().is('.popover')) {\n\t\t\t\t\tthis.$wrapper.popover('hide');\n\t\t\t\t}\n\t\t\t});\n\t\t\t$(window).on('hashchange.icon-popover', () => {\n\t\t\t\tthis.$wrapper.popover('hide');\n\t\t\t});\n\t\t});\n\t}\n\n\trefresh() {\n\t\tsuper.refresh();\n\t\tlet icon = this.get_icon();\n\t\tif (this.picker && this.picker.icon !== icon) {\n\t\t\tthis.picker.icon = icon;\n\t\t\tthis.picker.refresh();\n\t\t}\n\t}\n\n\tset_formatted_input(value) {\n\t\tsuper.set_formatted_input(value);\n\t\tthis.$input.val(value);\n\t\tthis.selected_icon.find(\"use\").attr(\"href\", \"#icon-\"+(value || \"folder-normal\"));\n\t\tthis.selected_icon.toggleClass('no-value', !value);\n\t}\n\n\tget_icon() {\n\t\treturn this.get_value() || 'folder-normal';\n\t}\n};","import './base_control';\nimport './base_input';\nimport './data';\nimport './int';\nimport './float';\nimport './currency';\nimport './date';\nimport './time';\nimport './datetime';\nimport './date_range';\nimport './select';\nimport './link';\nimport './dynamic_link';\nimport './text';\nimport './code';\nimport './text_editor';\nimport './comment';\nimport './check';\nimport './image';\nimport './attach';\nimport './attach_image';\nimport './table';\nimport './color';\nimport './signature';\nimport './password';\nimport './read_only';\nimport './button';\nimport './html';\nimport './markdown_editor';\nimport './html_editor';\nimport './heading';\nimport './autocomplete';\nimport './barcode';\nimport './geolocation';\nimport './multiselect';\nimport './multicheck';\nimport './table_multiselect';\nimport './multiselect_pills';\nimport './multiselect_list';\nimport './rating';\nimport './duration';\nimport './icon';\n\nfrappe.ui.form.make_control = function (opts) {\n\tvar control_class_name = \"Control\" + opts.df.fieldtype.replace(/ /g, \"\");\n\tif(frappe.ui.form[control_class_name]) {\n\t\treturn new frappe.ui.form[control_class_name](opts);\n\t} else {\n\t\t// eslint-disable-next-line\n\t\tconsole.log(\"Invalid Control Name: \" + opts.df.fieldtype);\n\t}\n};\n\n"],"names":["t","e","s","i","a","n","o","c","l","u","m","get_file_input","let","input","document","createElement","setAttribute","read","file","Promise","resolve","reject","const","reader","FileReader","onload","result","onerror","readAsDataURL","window","jQuery","classes","inline","language","startDate","Date","firstDay","weekends","dateFormat","altField","altFieldDateFormat","toggleSelected","keyboardNav","position","offset","view","minView","showOtherMonths","selectOtherMonths","moveToOtherMonthsOnSelect","showOtherYears","selectOtherYears","moveToOtherYearsOnSelect","minDate","maxDate","disableNavWhenOutOfRange","multipleDates","multipleDatesSeparator","range","todayButton","clearButton","showEvent","autoClose","monthsField","prevHtml","nextHtml","navTitles","days","months","years","timepicker","onlyTimepicker","dateTimeSeparator","timeFormat","minHours","maxHours","minMinutes","maxMinutes","minSeconds","maxSeconds","hoursStep","minutesStep","secondsStep","onSelect","onShow","onHide","onChangeMonth","onChangeYear","onChangeDecade","onChangeView","onRenderCell","ctrlRight","ctrlUp","ctrlLeft","ctrlDown","shiftRight","shiftUp","shiftLeft","shiftDown","altUp","altRight","altLeft","altDown","ctrlShiftUp","this","el","$el","opts","extend","data","nodeName","elIsInput","$altField","inited","visible","silent","currentDate","currentView","_createShortCuts","selectedDates","views","keys","minRange","maxRange","_prevOnSelectValue","init","prototype","VERSION","viewIndexes","_buildDatepickersContainer","_buildBaseHtml","_defineLocale","_syncWithMinMaxDates","_setPositionClasses","_bindEvents","_bindKeyboardEvents","$datepicker","on","_onMouseDownDatepicker","bind","_onMouseUpDatepicker","addClass","fn","datepicker","Timepicker","_bindTimepickerEvents","Body","show","nav","Navigation","_onClickCell","_onMouseEnterCell","_onMouseLeaveCell","_onShowEvent","_onMouseUpEl","_onBlur","_onKeyUpGeneral","_onResize","_onMouseUpBody","_onKeyDown","_onKeyUp","_onHotKey","_onTimeChange","isWeekend","indexOf","loc","console","warn","ru","join","_getWordBoundaryRegExp","match","ampm","append","insertAfter","appendTo","$content","$nav","_triggerOnChange","length","getParsedDate","year","month","date","hours","minutes","seconds","map","formatDate","next","parsedDate","curDecade","prev","h","getLeadingZeroNum","r","getDecade","d","fullHours","p","_replacer","_getValidHoursFromDate","dayPeriod","test","replace","getTime","toUpperCase","fullDate","day","daysShort","fullMonth","monthsShort","fullSeconds","fullMinutes","toString","slice","RegExp","selectDate","Array","isArray","forEach","lastSelectedDate","_setTime","_trigger","setHours","setMinutes","setSeconds","getMonth","getFullYear","_render","_isSelected","push","bigger","_setInputValue","timepickerIsActive","hide","removeDate","some","isSame","splice","today","clear","update","arguments","_addButtonsIfNeed","setPosition","_handleDate","_updateRanges","_updateCurrentTime","minTime","maxTime","val","_isInRange","_getDimensions","width","outerWidth","height","outerHeight","left","top","_getDateFromCell","split","removeAttr","css","_bindVisionEvents","removeClass","focused","inFocus","blur","down","_changeView","up","off","one","viewIndex","_handleHotKey","_getFocusedDate","getDaysCount","_registerKey","_unRegisterKey","_isHotKeyPressed","sort","every","trigger","_focusNextCell","cellType","getDate","_getCell","find","destroy","closest","remove","_handleAlreadySelectedDates","originalEvent","timepickerFocus","focus","setTimeout","which","preventDefault","hasClass","target","less","_update","_focused","prevView","substring","getDay","getHours","getMinutes","getSeconds","Math","floor","template","parseInt","resetTime","each","Constructor","daysMin","type","proxy","$names","$cells","_getDayNamesHtml","_getCellContents","html","disabled","_getDaysHtml","_getDayHtml","_getMonthsHtml","_getMonthHtml","_getYearsHtml","_getYearHtml","_renderTypes","attr","acitve","active","_handleClick","$buttonsContainer","_onClickNavButton","_onClickNavTitle","_addButton","_getTitle","title","setNavStatus","_addButtonsContainer","action","label","_disableNav","_activateNav","_buildHTML","navigator","userAgent","_onSelectDate","$ranges","_onChangeRange","_onMouseUpRange","_onMouseEnterRange","_onMouseOutRange","_setMinTimeFromDate","_setMaxTimeFromDate","_setDefaultMinMaxTime","_validateHoursMinutes","hourMin","hourMax","hourStep","hourValue","hourVisible","displayHours","minMin","minMax","minStep","minValue","secMin","secMax","secStep","secValue","$timepicker","$hours","$minutes","$seconds","$hoursText","$minutesText","$secondsText","$ampm","min","max","_hours","frappe","_","get_data_uri","element","videoWidth","videoHeight","$canvas","$","getContext","drawImage","toDataURL","ui","Capture","[object Object]","options","OPTIONS","set_options","facing_mode","images","Object","build_dialog","is_mobile","show_for_mobile","show_for_desktop","me","dialog","Dialog","animate","fields","fieldtype","fieldname","on_hide","stop_media_stream","$template","TEMPLATE","field","get_field","wrapper","get_close_btn","onchange","async","files","f","render_preview","click","render_stream","then","catch","err","error","show_alert","ERR_MESSAGE","constraints","video","facingMode","mediaDevices","getUserMedia","stream","custom_actions","empty","get_primary_btn","setup_take_photo_action","setup_preview_action","setup_toggle_camera","srcObject","load","play","image","idx","utils","icon","setup_capture_action","setup_submit_action","setup_remove_action","update_count","set_primary_action","__","data_url","set_secondary_action_label","set_secondary_action","getElementsByClassName","onclick","getAttribute","msg","add_custom_action","message","callback","getTracks","track","stop","form","Control","Class","make","boot","user","developer_mode","$wrapper","df","render_input","refresh","make_wrapper","get","fieldobj","parent","toggle","hidden","get_status","explain","doctype","docname","parenttype","is_web_form","cint","log","hidden_due_to_dependency","read_only","grid","display_status","layout","status","perm","get_field_display_status","model","get_doc","frm","allow_on_submit","only_input","is_null","get_value","in_list","disp_status","toggleClass","refresh_input","value","show_translatable_button","doc","translatable","can_write","TranslationManager","translation_btn","__islocal","source_text","target_language","locals","get_model_value","set_value","validate_and_set_in_model","parse_validate_and_set_in_model","parse","force_value_set","__run_link_triggers","is_value_same","inside_change_event","set","run_serially","_validated","set_model_value","set_mandatory","change","apply","set_invalid","validate","get_input_value","undefined","last_value","set_input","set_focus","$input","ControlInput","horizontal","_super","set_input_areas","set_max_width","toggle_label","toggle_description","input_area","label_area","label_span","$input_wrapper","disp_area","make_input","has_input","on_make","update_input","prop","set_disp_area","set_description","set_label","set_bold","set_required","escape_html","display_value","format","no_icon","_label","innerHTML","description","_description","set_empty_description","set_new_description","Boolean","reqd","invalid","parents","grid_row","columns","is_invalid","bold","provide","ControlData","html_element","input_type","trigger_change_on_input_event","prependTo","pasted_data","get_clipboard_data","maxlength","warning_message","cstr","doctype_edit_link","meta","custom","get_form_link","doc_type","msgprint","indicator","set_input_attributes","bind_change_event","setup_autoname_check","setup_url_field","setup_barcode_field","$link","$link_open","style","paddingRight","inputValue","validate_url","$scan_btn","Scanner","multiple","on_scan","text","change_handler","in_grid","debounce","get_meta","autoname","substr","timeout","last_check","clearTimeout","db","name","placeholder","input_css","input_class","set_formatted_input","format_for_input","v","is_filter","validate_phone","validate_name","email_list","split_emails","email_invalid","email","validate_email","toggle_container_scroll","el_class","scroll_class","add","ControlInt","activeElement","select","eval_expression","eval","ControlLongInt","ControlFloat","isNaN","parseFloat","flt","get_precision","number_format","trim","get_number_format","formatted_value","format_number","Number","currency","get_field_currency","precision","sysdefaults","float_precision","ControlPercent","ControlCurrency","currency_precision","get_number_format_info","ControlDate","make_picker","set_date_options","set_datepicker","set_t_for_today","timepicker_only","get_now_date","should_refresh","moment","date_format","datetime","str_to_obj","lang","now_date","today_text","defaultDateFormat","datepicker_options","get_first_day_of_the_week_index","update_datepicker_position","$header","header_bottom","picker_height","scrollTop","nowdate","now_datetime","now_time","user_to_str","str_to_user","sys_defaults","ControlTime","set_time_options","time_format","defaultTimeFormat","toLowerCase","date_obj","moment_to_date_obj","$tp","is_timezone_same","includes","time_zone","ControlDatetime","defaultDatetimeFormat","hide_timezone","get_datetime_as_string","ControlDateRange","value2","formatted","to","vals","user_to_obj","value1","ControlSelect","is_xs_input","set_icon","set_placeholder","select_icon_html","placeholder_html","toggle_placeholder","input_value","JSON","stringify","last_options","selected","add_options","get_file_attachment_list","fl","docinfo","attachments","file_url","input_set","options_list","j","is_value_null","is_label_null","is_disabled","selectedIndex","set_working","done_working","original_val","count","isOpened","instance","properties","initial","attrValue","Function","configure","minChars","maxItems","autoFirst","DATA","filter","FILTER_CONTAINS","SORT_BYLENGTH","container","CONTAINER","item","ITEM","REPLACE","tabSelect","index","ul","create","role","id","inside","className","aria-live","aria-atomic","textContent","_events","evaluate","close","reason","keydown","evt","keyCode","opened","submit","mousedown","li","parentNode","button","hasAttribute","list","removeAttribute","all","Suggestion","_list","children","items","fire","open","goto","unbind","insertBefore","removeChild","indexOfAwesomplete","previous","pos","lis","offsetTop","clientHeight","suggestions","origin","siblingIndex","suggestion","appendChild","regExpEscape","FILTER_STARTSWITH","b","around","item_id","aria-selected","defineProperty","String","valueOf","expr","con","querySelector","$$","call","querySelectorAll","tag","ref","event","addEventListener","removeEventListener","createEvent","initEvent","dispatchEvent","previousElementSibling","self","Awesomplete","Document","readyState","module","exports","recent_link_validations","ControlLink","$input_area","get_options","translate_values","setup_buttons","setup_awesomeplete","get_reference_doctype","get_route","with_link_btn","open_advanced_search","LinkSelector","txt","new_doc","get_docfield","parentfield","get_route_options_for_new_doc","route_options","name_field","_from_link","_from_link_scrollY","make_quick_entry","cache","awesomplete","get_item","custom_awesomplete_filter","term","args","ignore_user_permissions","reference_doctype","set_custom_query","method","no_spinner","is","results","merge_duplicates","filters","filter_string","get_filter_description","only_select","can_create","toggle_href","autocomplete_open","remember_last_selected_value","last_selected_values","reduce","newArr","currElem","element_with_same_value","can_select","can_read","filter_array","with_doctype","docfield","unscrub","set_nulls","obj","key","is_valid_value","get_query","isPlainObject","query","q","ignore_link_validation","validate_link_and_fetch","fetch_map","get_fetch_map","columns_to_fetch","values","__default_value","xcall","response","update_dependant_fields","field_value","entries","source_field","target_field","fetch_dict","assign","ControlDynamicLink","cur_dialog","cur_frm","selector","cur_list","filter_area","standard_filters_wrapper","cur_page","page","is_single","throw","ControlText","ControlLongText","ControlSmallText","ControlCode","editor","load_lib","make_ace_editor","ace_editor_target","expanded","$expand_button","get_button_label","refresh_height","ace","edit","setTheme","setOption","set_language","session","_autocompletions","setup_autocompletion","_autocompletion_setup","config","loadModule","langTools","setOptions","enableBasicAutocompletion","enableLiveAutocompletion","addCompleter","getCompletions","prefix","autocompletions","score","resize","language_map","Javascript","JS","Python","Py","HTML","CSS","Markdown","SCSS","Golang","Go","valid_languages","ace_language_mode","setMode","setKeyboardHandler","setValue","getValue","library_loaded","root_lib_path","require","factory","modules","installedModules","__webpack_require__","moduleId","getter","enumerable","Symbol","toStringTag","mode","__esModule","ns","object","property","hasOwnProperty","./assets/icons/align-center.svg","./assets/icons/align-justify.svg","./assets/icons/align-left.svg","./assets/icons/align-right.svg","./assets/icons/background.svg","./assets/icons/blockquote.svg","./assets/icons/bold.svg","./assets/icons/clean.svg","./assets/icons/code.svg","./assets/icons/color.svg","./assets/icons/direction-ltr.svg","./assets/icons/direction-rtl.svg","./assets/icons/dropdown.svg","./assets/icons/formula.svg","./assets/icons/header-2.svg","./assets/icons/header.svg","./assets/icons/image.svg","./assets/icons/indent.svg","./assets/icons/italic.svg","./assets/icons/link.svg","./assets/icons/list-bullet.svg","./assets/icons/list-check.svg","./assets/icons/list-ordered.svg","./assets/icons/outdent.svg","./assets/icons/strike.svg","./assets/icons/subscript.svg","./assets/icons/superscript.svg","./assets/icons/table.svg","./assets/icons/underline.svg","./assets/icons/video.svg","./blots/block.js","__webpack_exports__","./blots/break.js","./blots/container.js","./blots/cursor.js","./blots/embed.js","./blots/inline.js","./blots/scroll.js","./blots/text.js","./core.js","./core/editor.js","./core/emitter.js","./core/instances.js","./core/logger.js","./core/module.js","./core/quill.js","./core/selection.js","./core/theme.js","./formats/align.js","./formats/background.js","./formats/blockquote.js","./formats/bold.js","./formats/code.js","./formats/color.js","./formats/direction.js","./formats/font.js","./formats/formula.js","./formats/header.js","./formats/image.js","./formats/indent.js","./formats/italic.js","./formats/link.js","./formats/list.js","./formats/script.js","./formats/size.js","./formats/strike.js","./formats/table.js","./formats/underline.js","./formats/video.js","./modules/clipboard.js","./modules/history.js","./modules/keyboard.js","./modules/syntax.js","./modules/table.js","./modules/toolbar.js","./modules/uploader.js","./node_modules/array-filter/index.js","./node_modules/available-typed-arrays/index.js","./node_modules/clone/clone.js","./node_modules/deep-equal/index.js","./node_modules/deep-equal/node_modules/es-abstract/GetIntrinsic.js","./node_modules/deep-equal/node_modules/es-abstract/helpers/callBind.js","./node_modules/deep-equal/node_modules/es-abstract/helpers/callBound.js","./node_modules/deep-equal/node_modules/is-date-object/index.js","./node_modules/deep-equal/node_modules/is-regex/index.js","./node_modules/deep-equal/node_modules/isarray/index.js","./node_modules/deep-equal/node_modules/object-keys/implementation.js","./node_modules/deep-equal/node_modules/object-keys/index.js","./node_modules/deep-equal/node_modules/object-keys/isArguments.js","./node_modules/define-properties/index.js","./node_modules/es-get-iterator/index.js","./node_modules/es-get-iterator/node_modules/es-abstract/GetIntrinsic.js","./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBind.js","./node_modules/es-get-iterator/node_modules/es-abstract/helpers/callBound.js","./node_modules/es-get-iterator/node_modules/isarray/index.js","./node_modules/eventemitter3/index.js","./node_modules/extend/index.js","./node_modules/fast-diff/diff.js","./node_modules/foreach/index.js","./node_modules/function-bind/implementation.js","./node_modules/function-bind/index.js","./node_modules/has-symbols/index.js","./node_modules/has-symbols/shams.js","./node_modules/has/src/index.js","./node_modules/is-arguments/index.js","./node_modules/is-bigint/index.js","./node_modules/is-boolean-object/index.js","./node_modules/is-date-object/index.js","./node_modules/is-map/index.js","./node_modules/is-number-object/index.js","./node_modules/is-regex/index.js","./node_modules/is-set/index.js","./node_modules/is-string/index.js","./node_modules/is-typed-array/index.js","./node_modules/is-typed-array/node_modules/es-abstract/GetIntrinsic.js","./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBind.js","./node_modules/is-typed-array/node_modules/es-abstract/helpers/callBound.js","./node_modules/is-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js","./node_modules/is-weakmap/index.js","./node_modules/is-weakset/index.js","./node_modules/object-inspect/index.js","./node_modules/object-is/index.js","./node_modules/object-keys/index.js","./node_modules/object-keys/isArguments.js","./node_modules/object.assign/implementation.js","./node_modules/object.assign/index.js","./node_modules/object.assign/polyfill.js","./node_modules/object.assign/shim.js","./node_modules/parchment/src/attributor/attributor.ts","./node_modules/parchment/src/attributor/class.ts","./node_modules/parchment/src/attributor/store.ts","./node_modules/parchment/src/attributor/style.ts","./node_modules/parchment/src/blot/abstract/container.ts","./node_modules/parchment/src/blot/abstract/leaf.ts","./node_modules/parchment/src/blot/abstract/parent.ts","./node_modules/parchment/src/blot/abstract/shadow.ts","./node_modules/parchment/src/blot/block.ts","./node_modules/parchment/src/blot/embed.ts","./node_modules/parchment/src/blot/inline.ts","./node_modules/parchment/src/blot/scroll.ts","./node_modules/parchment/src/blot/text.ts","./node_modules/parchment/src/collection/linked-list.ts","./node_modules/parchment/src/error.ts","./node_modules/parchment/src/parchment.ts","./node_modules/parchment/src/registry.ts","./node_modules/parchment/src/scope.ts","./node_modules/process/browser.js","./node_modules/quill-delta/dist/AttributeMap.js","./node_modules/quill-delta/dist/Delta.js","./node_modules/quill-delta/dist/Iterator.js","./node_modules/quill-delta/dist/Op.js","./node_modules/quill-delta/node_modules/deep-equal/index.js","./node_modules/quill-delta/node_modules/object-keys/implementation.js","./node_modules/quill-delta/node_modules/object-keys/index.js","./node_modules/quill-delta/node_modules/object-keys/isArguments.js","./node_modules/regexp.prototype.flags/implementation.js","./node_modules/regexp.prototype.flags/index.js","./node_modules/regexp.prototype.flags/node_modules/es-abstract/GetIntrinsic.js","./node_modules/regexp.prototype.flags/node_modules/es-abstract/helpers/callBind.js","./node_modules/regexp.prototype.flags/polyfill.js","./node_modules/regexp.prototype.flags/shim.js","./node_modules/side-channel/index.js","./node_modules/side-channel/node_modules/es-abstract/GetIntrinsic.js","./node_modules/side-channel/node_modules/es-abstract/helpers/callBind.js","./node_modules/side-channel/node_modules/es-abstract/helpers/callBound.js","./node_modules/webpack/buildin/global.js","./node_modules/which-boxed-primitive/index.js","./node_modules/which-boxed-primitive/node_modules/is-symbol/index.js","./node_modules/which-collection/index.js","./node_modules/which-typed-array/index.js","./node_modules/which-typed-array/node_modules/es-abstract/GetIntrinsic.js","./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBind.js","./node_modules/which-typed-array/node_modules/es-abstract/helpers/callBound.js","./node_modules/which-typed-array/node_modules/es-abstract/helpers/getOwnPropertyDescriptor.js","./quill.js","./themes/base.js","./themes/bubble.js","./themes/snow.js","./ui/color-picker.js","./ui/icon-picker.js","./ui/icons.js","./ui/picker.js","./ui/tooltip.js","0","1","configurable","default","delete","has","__data__","TypeError","onCreate","onDestroy","onUpdate","overlay","img","requestUpdate","writable","webpackPolyfill","deprecate","paths","y","Scope","register","Container","Format","Leaf","Embed","Scroll","Block","Inline","Text","Attributor","Attribute","Style","Store","ANY","nodeType","Node","TEXT_NODE","LEVEL","BLOCK","block","INLINE","HTMLElement","tagName","scope","TYPE","__extends","setPrototypeOf","__proto__","constructor","Error","ParchmentError","DATA_KEY","ATTRIBUTE","BLOT","BLOCK_BLOT","INLINE_BLOT","BLOCK_ATTRIBUTE","INLINE_ATTRIBUTE","blot","blotName","attrName","keyName","fromCharCode","ops","insert","attributes","retain","unshift","chop","pop","partition","changeLength","iterator","hasNext","compose","peekType","peekLength","concat","diff","INSERT","DELETE","EQUAL","eachLine","peek","transform","transformPosition","ReferenceError","formats","statics","BlockEmbed","bubbleFormats","getOwnPropertyDescriptor","getPrototypeOf","g","O","w","domNode","attribute","endsWith","x","insertAt","delta","descendants","shift","tail","head","clone","defaultChild","allowedChildren","A","clipboard","keyboard","history","theme","DEFAULTS","import","S","P","toolbar","strict","isEnabled","sources","USER","getSelection","setSelection","SILENT","events","TEXT_CHANGE","emitter","emit","EDITOR_CHANGE","API","Range","overload","expandConfig","done","return","E","k","N","T","debug","classList","__quill","root","addContainer","scrollingContainer","scroll","whitelist","selection","addModule","isBlank","SCROLL_UPDATE","lastRange","convert","setContents","readOnly","disable","level","imports","startsWith","setRange","deleteText","enable","scrollIntoView","formatLine","formatText","getBounds","getBoundingClientRect","bottom","right","getLength","getContents","getFormat","leaf","line","MAX_VALUE","lines","getRange","getText","hasFocus","insertEmbed","insertText","contains","once","dangerouslyPasteHTML","removeFormat","applyDelta","bounds","version","parchment","core/module","core/theme","compare","isolate","wrap","moveChildren","order","handleDOM","listeners","node","handler","SCROLL_BEFORE_UPDATE","SCROLL_OPTIMIZE","SELECTION_CHANGE","quill","copy","canAdd","Code","descendant","deleteAt","newlineIndex","formatAt","lastIndexOf","optimize","unwrap","TAB","getDelta","batchStart","bullet","batchEnd","path","oldValue","CONTENTS","from","composing","mouseDown","cursor","savedRange","handleComposition","handleDragging","listenDOM","getNativeRange","start","textNode","setNativeRange","end","startNode","startOffset","endNode","endOffset","restore","body","native","collapsed","attach","createRange","setStart","setEnd","rangeCount","getRangeAt","normalizeNative","info","normalizedToRange","startContainer","endContainer","childNodes","lastChild","removeAllRanges","addRange","rangeToNative","replaceChild","build","reverse","forEachAt","detach","insertInto","addedNodes","removedNodes","compareDocumentPosition","DOCUMENT_POSITION_CONTAINED_BY","DOCUMENT_POSITION_FOLLOWING","nextSibling","replaceWith","move","depth","includeNonEnumerable","circular","__isArray","__isRegExp","source","lastIndex","__isDate","isBuffer","getOwnPropertySymbols","getOwnPropertyNames","global","ignoreCase","multiline","Map","Set","clonePrototype","__objToStr","__getRegExpFlags","batch","observer","takeRecords","D","LEFT","shiftKey","altKey","RIGHT","getLeaf","getLine","suffix","getLines","code-block","getIndex","shortKey","charCodeAt","I","SHORTKEY","C","L","R","M","B","platform","bindings","addBinding","ENTER","metaKey","ctrlKey","BACKSPACE","listen","defaultPrevented","ESCAPE","UP","DOWN","italic","underline","indent","outdent","outdent backspace","indent code-block","outdent code-block","remove tab","tab","cutoff","updateContents","list empty enter","checklist enter","header enter","header","list autofill","code exit","embed left","embed left shift","embed right","embed right shift","createTextNode","_length","ColorStyle","ColorClass","ColorAttributor","href","sanitize","PROTOCOL_WHITELIST","SANITIZED_URL","buildPicker","display","togglePicker","escape","tabIndex","selectItem","buildItem","buildLabel","buildOptions","Event","blots/block","blots/block/embed","blots/break","blots/container","blots/cursor","blots/embed","blots/inline","blots/scroll","blots/text","modules/clipboard","modules/history","modules/keyboard","cloneNode","mutations","themes","contentNode","leftGuard","rightGuard","AlignStyle","AlignClass","AlignAttribute","BackgroundStyle","BackgroundClass","DirectionStyle","DirectionClass","DirectionAttribute","FontClass","FontStyle","SizeStyle","SizeClass","align","center","justify","background","blockquote","clean","code","color","direction","rtl","float","full","formula","2","+1","-1","link","ordered","check","script","sub","super","strike","getLastChangeIndex","lastRecorded","ignoreChange","userOnly","record","undo","redo","stack","now","delay","maxStack","BaseTooltip","tooltip","textbox","pickers","extendToolbar","handlers","save","cancel","linkRange","restoreFocus","characterData","characterDataOldValue","childList","subtree","MutationObserver","observe","disconnect","previousSibling","normalize","splitText","DOMTokenList","isFinite","execCommand","ceil","charAt","shim","propertyIsEnumerable","supported","unsupported","context","_eventsCount","eventNames","removeListener","removeAllListeners","addListener","setMaxListeners","prefixed","EventEmitter","ELEMENT_NODE","getComputedStyle","G","X","nextElementSibling","offsetHeight","marginTop","marginBottom","whiteSpace","matchText","matchSpacing","matchNewline","matchBlot","matchAttributor","U","F","z","H","K","Y","V","W","Z","fontStyle","fontWeight","textIndent","onPaste","matchers","matchVisual","addMatcher","innerText","prepareMatching","addControls","controls","addHandler","prompt","backgroundColor","stroke","fill","defaultItem","boundsContainer","offsetWidth","buildButtons","buildPickers","preview","Q","J","tt","et","nt","attributors/attribute/direction","attributors/class/align","attributors/class/background","attributors/class/color","attributors/class/direction","attributors/class/font","attributors/class/size","attributors/style/align","attributors/style/background","attributors/style/color","attributors/style/direction","attributors/style/font","attributors/style/size","formats/align","formats/direction","formats/indent","IndentClass","formats/background","formats/color","formats/font","formats/size","formats/blockquote","formats/code-block","formats/header","formats/list","formats/bold","formats/code","formats/italic","formats/link","formats/script","formats/strike","formats/underline","formats/image","formats/video","formats/list/item","ListItem","modules/formula","modules/syntax","modules/toolbar","themes/bubble","themes/snow","ui/icons","ui/picker","ui/icon-picker","ui/color-picker","ui/tooltip","FormulaBlot","katex","render","throwOnError","errorColor","CodeToken","CodeBlock","cachedText","highlight","interval","hljs","highlightAuto","BubbleTooltip","marginLeft","Buffer","isTypedArray","overlayStyles","boxSizing","border","handleStyles","opacity","displayStyles","font","padding","textAlign","toolbarStyles","minWidth","toolbarButtonStyles","verticalAlign","toolbarButtonSvgStyles","strokeWidth","getCurrentSize","round","naturalWidth","naturalHeight","boxes","addBox","positionBoxes","setCursor","handleMousedown","dragBox","dragStartX","clientX","preDragWidth","handleDrag","handleMouseup","_defineAlignments","_addToolbarButtons","alignments","isApplied","_selectButton","borderLeftWidth","DisplaySize","Toolbar","Resize","initializeModules","removeModules","moduleClasses","repositionElements","handleClick","handleScroll","showOverlay","hideOverlay","setUserSelect","checkImage","scrollLeft","documentElement","Quill","byteLength","toByteArray","fromByteArray","Uint8Array","TYPED_ARRAY_SUPPORT","RangeError","ArrayBuffer","isEncoding","write","buffer","isView","readUInt16BE","SlowBuffer","alloc","INSPECT_MAX_BYTES","foo","subarray","kMaxLength","poolSize","_augment","species","allocUnsafe","allocUnsafeSlow","_isBuffer","swap16","swap32","swap64","equals","inspect","toJSON","_arr","readUIntLE","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","writeUIntBE","writeUInt8","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","NaN","abs","LN2","size","byteOffset","exec","IE_PROTO","hash","string","process","types","binding","ImageResize","CodeBlockContainer","font_sizes","Size","Table","superCreate","Link","MyLink","location","host","Uploader","mimetypes","CustomColor","outerHTML","ControlTextEditor","make_quill_editor","quill_container","get_quill_options","bind_events","oldDelta","is_quill_dirty","get_key","stopPropagation","currentTarget","table","getModule","insertTable","insertRowAbove","insertRowBelow","insertColumnLeft","insertColumnRight","deleteRow","deleteColumn","deleteTable","balanceTables","$font_size_label","$default_font_size","get_toolbar_options","imageResize","dom","remove_script_and_style","setText","Keys","MentionBlot","denotationChar","isGroup","dataset","Mention","isOpen","itemIndex","mentionCharPos","cursorPos","suspendMouseEnter","renderItem","searchTerm","mentionDenotationChars","allowedChars","maxChars","offsetLeft","isolateCharacter","fixMentionsToQuill","defaultMenuOrientation","mentionContainer","cssText","onmousemove","onContainerMouseMove","mentionList","onTextChange","onSelectionChange","selectHandler","escapeHandler","upHandler","downHandler","hideMentionList","prevItem","nextItem","visibility","setMentionContainerPosition","scrollItemInView","itemHeight","itemPos","containerTop","containerBottom","itemLink","getItemData","highlightItem","stopImmediatePropagation","mentionChar","is_group","onmouseenter","onItemMouseEnter","onItemClick","showMentionList","topPos","containerPos","pageYOffset","innerHeight","leftPos","pageXOffset","clientWidth","containerHeight","rightPos","containerRightIsNotVisible","containerWidth","overMentionCharPos","containerBottomIsNotVisible","startPos","beforeCursorPos","mentionCharIndex","cur","previousIndex","mentionIndex","textAfter","hasValidChars","renderList","onSomethingChange","ControlComment","comment_wrapper","no_wrapper","update_state","on_submit","strip_html","mention","get_mention_options","enable_mentions","search_term","mention_search_method","ControlCheck","checked","ControlImage","margin","$body","margin-bottom","$img","$buffer","ControlAttach","on_attach_click","$value","bind_actions_with_object","toggle_reload_button","clear_attachment","remove_attachment_by_filename","docstatus","dataurl","fileobj","reload_attachment","file_uploader","uploader","upload_files","set_upload_options","FileUploader","upload_options","allow_multiple","on_success","on_upload_complete","filename","file_url_parts","attachment","update_attachment","ControlAttachImage","popover","placement","content","restrictions","allowed_file_types","GridRowForm","row","make_form","form_area","scroll_to","Layout","docfields","no_submit_on_enter","grid_row_form","fields_dict","fieldinfo","fi","toggle_add_delete_button_display","open_grid_row","set_row_index","set_form_events","toggle_view","add_new_row","$parent","is_editable","refresh_dependency","first","GridRow","on_grid_fields_dict","on_grid_fields","parent_df","make_docfield_copy_for","get_docfields","columns_list","row_check_html","allow_on_grid_editing","editable_grid","render_template","render_row","set_data","__checked","refresh_remove_rows_button","get_open_form","hide_form","script_manager","clear_doc","dirty","trace","get_data","findIndex","below","duplicate","copy_doc","_sortable","move_to","grid_form","row_display","row_index","get_format_helper","setup_columns","add_open_form_button","add_column_configure_button","refresh_check","in_place_edit","open_form_button","configure_columns","is_too_small","margin-right","configure_columns_button","configure_dialog_for_columns_selector","grid_settings_dialog","setup_visible_columns","setup_columns_for_dialog","prepare_wrapper_for_columns","render_selected_columns","fields_html_wrapper","column_selector_for_dialog","validate_columns_width","update_user_settings_for_grid","reset_user_settings_for_grid","selected_columns_for_grid","visible_columns","colsize","prepare_columns_for_dialog","selected_fields","get_values","selected_column","update_default_colsize","blocked_fields","no_value_type","always_allow","column","prepare_handler_for_sort","select_on_focus","update_column_width","remove_selected_column","Sortable","handle","draggable","sort_columns","defaultValue","total_column_width","user_settings","reset_grid","focus_set","col","ci","set_dependant_property","refresh_field","make_column","mandatory_depends_on","evaluate_depends_on_value","read_only_depends_on","expression","out","istable","add_class","$col","editable_row","toggle_editable_row","field_area","static_area","column_index","make_control","onchange_modified","field_on_change_function","set_arrow_keys","ignore_fieldtypes","UP_ARROW","DOWN_ARROW","ctrl_key","duplicate_row_using_keys","move_up_down","base","grid_rows","last_column","set_focus_on_row","add_new_row_using_keys","is_down_arrow_key_press","get_open_grid_form","open_row","show_form","cannot_add_rows","cannot_delete_rows","freeze","cur_grid","is_element_in_viewport","is_element_in_modal","unfreeze","open_row_at_index","change_page_if_reqd","new_page","grid_pagination","page_index","page_length","go_to_page","blacklist","in_list_view","get_perm","permlevel","layout_fields","set_property","refresh_sections","set_field_property","editable","GridPagination","setup_pagination","total_pages","render_pagination","$pagination_template","get_pagination_html","prev_page_button","next_page_button","$page_number","$total_pages","first_page_button","last_page_button","bind_pagination_events","render_prev_page","render_next_page","charCode","inc_dec_number","increment","new_value","page_text_html","from_refresh","$rows","render_result_rows","update_page_numbers","scroll_to_top","close_grid_form","open_form","Grid","fields_map","multiple_set","__form_grid_templates","is_grid","debounced_refresh","is_xs","set_grid_description","form_grid","setup_add_row","setup_grid_pagination","custom_buttons","grid_buttons","grid_custom_buttons","remove_rows_button","remove_all_rows_button","setup_allow_bulk_edit","setup_check","on_setup","description_wrapper","$check","result_length","get_result_length","ri","grid_rows_by_docname","tasks","selected_children","get_selected_children","confirm","show_delete_all_btn","header_row","force","setting_dependency","setup_fields","control","make_head","truncate_rows","check_page_number","setup_toolbar","toggle_checkboxes","is_sortable","sortable_setup_done","make_sortable","last_display_status","last_docname","append_row","group","animation","onMove","dragged","renumber_based_on_dom","get_modal_data","deleted_docs","update_docfield_property","set_editable_grid_column_disp","get_row","go_to_last_page","go_to_first_page","go_to_last_page_to_add_row","add_child","duplicate_row","__unedited","$item","user_defined_columns","setup_user_defined_columns","total_colsize","editable_fields","_df","formatter","docfield_map","passes","std_fields_list","get_user_settings","static_rows","sortable_status","qty","link_field","btn","qty_fieldname","allow_bulk_edit","setup_download","value_formatter_map","Int","Check","Float","flags","no_socketio","as_dataurl","csv_to_array","get_decoded_string","fieldnames","clear_table","blank_row","is_value_type","tools","downloadify","$btn","ControlTable","grids","table_field","row_docname","in_grid_form","get_visible_columns","target_column_matched","row_idx","data_length","row_name","data_index","progress","show_progress","field_name","check_all_rows","get_hue","rgb","get_hsv","hex_to_rgb_values","get_rgb_values","rgb_to_hsv","rgb_string","component_to_hex","hex","rgb_to_hex","hsv_to_hex","clamp","Picker","set_color","swatches","setup_picker","set_selector_position","update_color_map","color_picker_template","color_picker_wrapper","firstElementChild","color_map","color_selector_circle","hue_map","swatches_wrapper","hue_selector_circle","setup_events","setup_swatches","setup_hue_event","setup_color_event","swatch_template","swatch","set_values","onkeydown","key_code","hue","get_color","color_selector_position","get_pointer_coords","hue_selector_position","update_color_selector","update_hue_selector","setup_drag_event","update_color","on_change","on_drag","drag_enabled","touches","element_bounds","clientY","ControlColor","make_color_input","picker_wrapper","picker","boundary","selected_color","ev","background-color","ControlSignature","saving","loading","make_pad","img_wrapper","$pad","jSignature","lineWidth","on_save_sign","load_pad","$reset_button_wrapper","on_reset_sign","set_editable","set_image","set_my_value","base64_img","ControlPassword","check_password_timeout","get_password_strength","new_password","entropy","feedback","crack_time_display","set_strength_indicator","ControlReadOnly","ControlButton","btn_type","primary","btn_size","has_handlers","run_server_script","docs","exc","refresh_fields","ControlHTML","get_content","ControlMarkdownEditor","editor_class","markdown_container","getSession","setUseWrapMode","showing_preview","preview_toggle_btn","update_preview","markdown_preview","prepend","markdown","ControlHTMLEditor","ControlHeading","ControlAutocomplete","setup_awesomplete","_data","parse_options","get_awesomplete_settings","max_items","hay","ignore_validation","valid_values","Barcode","_classCallCheck","_createClass","defineProperties","props","descriptor","protoProps","staticProps","_Barcode3","_Barcode2","CODE39","_Barcode","characterValue","mod43","checksum","mod43checksum","characters","_possibleConstructorReturn","subClass","superClass","_inherits","getEncoding","search","encodings","character","getBinary","_SET_BY_CODE","_defineProperty","SET_A","SET_B","SET_C","START_A","START_B","START_C","101","100","99","CODE128","_this","bytes","char","startIndex","startSet","_constants","SET_BY_CODE","shouldEncodeAsEan128","FNC1","encodingResult","getBar","MODULO","STOP","isEAN128","ean128","BARS","nextCode","nextSet","SWAP","SHIFT","correctIndex","weight","matchSetALength","A_CHARS","matchSetBLength","B_CHARS","matchSetC","C_CHARS","autoSelectFromAB","isA","ranges","untilC","autoSelectFromC","chars","cMatch","newString","C_START_CHAR","A_START_CHAR","B_START_CHAR","_CODE3","_interopRequireDefault","_CODE2","_auto2","_auto","CODE128AUTO","_CODE","CODE128A","CODE128B","CODE128C","_CODE128_AUTO2","_CODE128_AUTO","_CODE128A2","_CODE128A","_CODE128B2","_CODE128B","_CODE128C2","_CODE128C","structure","separator","encoded","BINARIES","last","_encoder2","_encoder","EAN","fontSize","flat","guardHeight","textMargin","encodeFlat","encodeGuarded","textOptions","guardOptions","SIDE_BIN","leftEncode","leftText","MIDDLE_BIN","rightEncode","rightText","_get","receiver","desc","_EAN3","_EAN2","number","sum","EAN13","_EAN","lastChar","EAN13_STRUCTURE","displayValue","EAN8","EAN5","EAN5_STRUCTURE","EAN2","EAN2_STRUCTURE","UPC","flatEncoding","guardedEncoding","EXPANSIONS","PARITIES","UPCE","isValid","middleDigits","upcA","expandToUPCA","encodeMiddleDigits","numberSystem","checkDigit","parity","lastUpcE","expansion","digitIndex","_UPC","_EAN4","_EAN6","_EAN5","_EAN8","_EAN7","_UPC2","_UPCE2","_UPCE","ITF","_this2","pair","encodePair","START_BIN","END_BIN","second","_ITF3","_ITF2","res","num","ITF14","_ITF","_ITF4","MSI","ret","bin","addZeroes","weights","_MSI3","_MSI2","MSI10","_MSI","_checksums","mod10","MSI11","mod11","MSI1010","MSI1110","_MSI4","_MSI6","_MSI5","_MSI8","_MSI7","_MSI10","_MSI9","pharmacode","codabar","getEncodings","3","4","5","6","7","8","9","-",":","/",".","+","GenericBarcode","_EAN_UPC","_pharmacode","_codabar","_GenericBarcode","_extends","old","replaceObj","linearEncodings","nextLevel","marginRight","intOptions","intOption","defaults","fontOptions","textPosition","lineColor","valid","_optionsFromStrings2","_optionsFromStrings","_defaults2","_defaults","_merge2","_merge","getEncodingHeight","encoding","getBarcodePadding","textWidth","barcodeWidth","messureText","ctx","measureText","maxHeight","barcodeOptions","barcodePadding","totalWidth","CanvasRenderer","canvas","prepareCanvas","encodingOptions","drawCanvasBarcode","drawCanvasText","moveCanvasDrawing","restoreCanvas","_shared","calculateEncodingAttributes","getTotalWidthOfEncodings","getMaximumHeightOfEncodings","clearRect","fillStyle","fillRect","translate","yFrom","binary","fillText","svgns","SVGRenderer","svg","xmlDocument","currentX","prepareSVG","createGroup","setGroupOptions","drawSvgBarcode","drawSVGText","firstChild","setSvgAttributes","drawRect","barWidth","textElem","createElementNS","rect","ObjectRenderer","_canvas2","_canvas","_svg2","_svg","_object2","_object","InvalidInputException","_Error","symbology","InvalidElementException","_Error2","NoElementException","_Error3","_this3","_typeof","_getOptionsFromElement2","_getOptionsFromElement","_renderers2","_renderers","getRenderProperties","returnArray","querySelectedRenderProperties","HTMLCanvasElement","HTMLImageElement","imgElement","renderer","afterRender","SVGElement","_exceptions","ErrorHandler","api","_options","func","handleCatch","_barcodes2","_barcodes","_linearizeEncodings2","_linearizeEncodings","_fixOptions2","_fixOptions","_getRenderProperties2","_getRenderProperties","_ErrorHandler2","_ErrorHandler","JsBarcode","_renderProperties","_encodings","_errorHandler","autoSelectBarcode","registerBarcode","barcodes","wrapBarcodeCall","newOptions","Encoder","encode","encoder","renderProperties","Renderer","blank","zeroes","renderProperty","elementArray","ControlBarcode","default_svg","barcode_area","get_barcode_html","barcode_value","is_json","valueField","ControlGeolocation","map_id","get_unique_id","map_area","make_map","bind_leaflet_map","bind_leaflet_draw_control","bind_leaflet_locate_control","bind_leaflet_refresh_button","clear_editable_layers","data_layers","FeatureGroup","addLayer","geoJson","pointToLayer","geoJsonPoint","latlng","point_type","circle","radius","circleMarker","marker","add_non_group_layers","editableLayers","fitBounds","addTo","setView","map_defaults","zoom","invalidateSize","circleToGeoJSON","Circle","toGeoJSON","include","feature","getRadius","CircleMarker","Icon","Default","imagePath","tileLayer","tiles","locate_control","locate","draw","polyline","shapeOptions","polygon","allowIntersection","drawError","rectangle","clickable","featureGroup","drawControl","Draw","addControl","layerType","layer","bindPopup","removeLayer","easyButton","leafletClasses","states","stateName","onClick","source_layer","target_group","LayerGroup","eachLayer","ControlMultiSelect","settings","getMatch","before","op","option","ControlMultiCheck","$label","$load_state","$select_buttons","get_select_buttons","get_column_size","$checkbox_area","bind_checkboxes","select_options","selected_options","parse_df_options","make_checkboxes","checkbox","get_checkbox_element","danger","$checkbox","select_all","setup_select_all","set_checked_options","option_name","deselect","get_checked_options","get_unchecked_options","column_size","ControlTableMultiSelect","rows","_rows_list","decodeURIComponent","get_link_field","set_route","all_rows_except_last","link_value","validated_value","set_pill_html","get_pill_html","encodeURIComponent","_link_field","ControlMultiSelectPills","$multiselect_wrapper","ControlMultiSelectList","$list_wrapper","$filter_input","$target","toggle_select_item","filtered_options","opt","_selected_values","uniqBy","set_selectable_items","highlight_item","_$last_highlighted","highlighted","set_status","get_placeholder_text","$selectable_item","update_selected_values","update_status","promise","process_options","encoded_value","$items","scroll_dropdown_if_needed","behavior","ControlRating","stars","star_template","hover","star_value","prevObject","ControlDuration","inputs","set_duration_options","$picker","build_numeric_input","duration_options","hide_days","hide_seconds","set_duration_picker_value","$duration_input","$control","get_duration_options","total_duration","seconds_to_duration","duration","clicked","get_duration","duration_to_seconds","is_duration_picker_set","get_formatted_duration","is_set","icons","update_icon_selected","icon_picker_wrapper","icon_wrapper","search_input","setup_icons","$icon","keyup","filter_icons","get_icon","ControlIcon","get_all_icons","make_icon_input","symbols","selected_icon","control_class_name"],"mappings":"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"}