{"version":3,"sources":["webpack:///./src/components/BulkScanning.vue?4865","webpack:///./src/components/BulkScanning.vue?6927","webpack:///src/components/BulkScanning.vue","webpack:///./src/components/BulkScanning.vue?a24c","webpack:///../../../src/components/VData/VData.ts","webpack:///../../../src/components/VDataIterator/VDataFooter.ts","webpack:///../../../src/components/VDataIterator/VDataIterator.ts","webpack:///../../../../src/components/VDataTable/mixins/header.ts","webpack:///../../../src/components/VDataTable/VDataTableHeaderMobile.ts","webpack:///../../../src/components/VDataTable/VDataTableHeaderDesktop.ts","webpack:///../../src/util/dedupeModelListeners.ts","webpack:///../../src/util/rebuildFunctionalSlots.ts","webpack:///../../../src/components/VDataTable/VDataTableHeader.ts","webpack:///../../../src/components/VDataTable/Row.ts","webpack:///../../../src/components/VDataTable/RowGroup.ts","webpack:///../../../src/components/VDataTable/VSimpleTable.ts","webpack:///../../../src/components/VDataTable/MobileRow.ts","webpack:///../../../src/components/VDataTable/VDataTable.ts","webpack:///./src/components/BulkScanning.vue","webpack:///../../../src/components/VBtn/index.ts","webpack:///../../../src/components/VSlider/VSlider.ts"],"names":["_vm","this","_h","$createElement","_c","_self","attrs","model","value","callback","$$v","clearAllDialogIsShown","expression","staticStyle","_v","staticClass","filterTag","on","$event","DWObject","Viewer","show","clearAllDocuments","errorTable","errorTableFields","scannedRecords","showModal","showUI","duplex","dpiItems","dpi","blankPageSensitivity","showNoScannerDialog","HowManyImagesInBuffer","_e","retryScan","retry","isScanning","acquireImage","length","changeScanner","hide","transactions","hasOwnProperty","scopedSlots","_u","key","fn","ref","_g","saveDocuments","style","showImagesInTransaction","_s","documentPreviewTitle","imageZoomIn","imageZoomOut","fitWindow","deleteSelected","printImage","saveImageLocally","undefined","includes","is201","filteredIndex","transferToDiffTransID","noTransferMessage","RotateLeft","CurrentImageIndexInBuffer","RotateRight","Crop","leftVertex","topVertex","rightVertex","bottomVertex","Erase","tableFields","handleErrorRow","row","item","error","data","transactionType","transactionTypes","images","allowTransfer","transferSnackMessage","staticRenderFns","require","name","mixins","searchFunctions","scanningButtonText","singleView","pixelTypeItems","text","label","align","pixelType","brightness","numImages","currentTransID","selectedRow","selectedIndex","imageIDsToReadBarcode","processing","methods","index","selectTransfer","forEach","record","_rowVariant","vin","transID","ClearFilter","FilterImagesByTag","render","saveAll","IfShowFileDialog","fileString","dayjs","format","SaveAllAsPDF","SaveAsPDF","_this","_asyncToGenerator","regeneratorRuntime","mark","_callee4","wrap","_context4","prev","next","_","has","$store","dispatch","title","description","icon","$root","$emit","Promise","all","map","_ref","_callee3","transactionObject","dataToSend","indexArr","document","_context3","Array","from","keys","getTiffString","sent","Object","assign","transactionID","parseInt","append","$api","submitDocuments","_2","_callee","_context","stop","_x2","apply","arguments","_3","_callee2","_context2","_x3","t0","response","err","_x","$forceUpdate","printAll","_this2","_callee6","i","_context6","push","ConvertToBase64","Dynamsoft","DWT","EnumDWT_ImageType","IT_PDF","_ref2","_callee5","base64Result","pdfString","_context5","getData","getLength","$hubapp","printBase64PDF","pdf","_x4","_this3","_callee7","_context7","_this4","selectedImages","SelectedImagesIndices","some","RemoveAllSelectedImages","updateTransactions","filter","color","protectedImages","extra201s","splice","SelectImages","RemoveAllImages","singlePageMode","zoom","_this5","SelectSource","CloseSource","OpenSource","errorCode","errorString","console","_this6","_callee8","_context8","AcquireImage","IfShowUI","Resolution","IfDuplexEnabled","PixelType","IfDisableSourceAfterAcquire","IfAutomaticDeskew","PixelFlavor","PageSize","EnumDWT_CapSupportedSizes","TWSS_MAXSIZE","RemoveTag","settings","errCode","errString","$nextTick","readBarcode","imageID","_this7","_callee9","_barcodeData","_barcodeData2","results","barcodeData","_context9","TagImages","ImageIDToIndex","Addon","BarcodeReader","decode","getBarcodeData","barcodeText","abrupt","type","STARTransactionID","timestamp","_showDetails","imageIndex","_this8","_callee10","_context10","TIFFCompressionType","resolve","reject","IT_TIF","onReady","_this9","GetWebTwain","IfUseTwainDSM","width","height","background","thumbnailViewer","createThumbnailViewer","size","rows","columns","location","event","sImageIndex","rect","x","y","RegisterEvent","_ref3","imageId","processImages","getRuntimeSettings","then","runtimeSettings","barcodeFormatIds","DBR","EnumBarcodeFormat","BF_PDF417","updateRuntimeSettings","GetSourceNames","_starRegex$exec","_tnClerkRegex$exec","_starRegex$exec2","_tnClerkRegex$exec2","starRegex","_wrapRegExp","version","tnClerkRegex","county","tnClerkTransactionID","exec","groups","_this10","tags","GetTagList","tag","imageIds","values","sort","a","b","aTime","replace","bTime","_this11","_callee11","_context11","showDetails","_this12","_callee12","_iterator","_step","_context12","_createForOfIteratorHelper","s","n","done","e","f","finish","setTimeout","Unload","Load","tagged201s","IndexToImageID","mounted","_this13","_callee13","_context13","destroyed","resetRuntimeSettings","beforeRouteLeave","to","_this14","_callee14","_context14","actions","handler","Vue","extend","inheritAttrs","props","items","default","options","sortBy","String","sortDesc","Boolean","customSort","Function","sortItems","mustSort","multiSort","page","Number","itemsPerPage","groupBy","groupDesc","customGroup","groupItems","locale","disableSort","disablePagination","disableFiltering","search","customFilter","searchItems","serverItemsLength","internalOptions","wrapInArray","_internalOptions$sort","_internalOptions$grou","_internalOptions","sortDiff","groupDiff","_toConsumableArray","fillArray","computed","itemsLength","filteredItems","pageCount","Math","ceil","pageStart","pageStop","min","isGrouped","pagination","slice","computedItems","paginateItems","groupedItems","scopedProps","sortArray","group","updateOptions","originalItemsLength","computedOptions","_objectSpread","watch","old","deepEqual","deep","immediate","isArray","toggle","oldBy","oldDesc","by","desc","byIndex","findIndex","k","_this$toggle","_this$toggle2","max","concat","$scopedSlots","required","itemsPerPageOptions","prevIcon","nextIcon","firstIcon","lastIcon","itemsPerPageText","itemsPerPageAllText","showFirstLastPage","showCurrentPage","disableItemsPerPage","pageText","disableNextPageIcon","computedDataItemsPerPageOptions","option","_typeof","genDataItemsPerPageOption","obj","onFirstPage","onPreviousPage","onNextPage","onLastPage","onChangeItemsPerPage","$vuetify","lang","t","genItemsPerPageSelect","computedIPPO","find","ippo","VSelect","disabled","hideDetails","auto","minWidth","input","genPaginationInfo","children","class","genIcon","click","VBtn","VIcon","genIcons","before","after","rtl","unshift","toString","getSlot","Mobile","Themeable","VData","itemKey","singleSelect","expanded","mobileBreakpoint","singleExpand","loading","noResultsText","noDataText","loadingText","hideDefaultFooter","footerProps","selectableKey","selection","expansion","internalCurrentItems","shiftKeyDown","lastEntry","everyItem","selectableItems","every","isSelected","someItems","sanitizedFooterProps","camelizeObjectKeys","isSelectable","reduce","getObjectValueByPath","created","breakingProps","_slicedToArray","original","replacement","$attrs","breaking","removedProps","prop","removed","window","addEventListener","onKeyDown","onKeyUp","beforeDestroy","removeEventListener","keyCode","keyCodes","shift","toggleSelectAll","select","emit","lastEntryKey","lastEntryKeySelected","multipleSelect","start","end","currentItem","isExpanded","expand","createItemProps","v","isMobile","genEmptyWrapper","content","genEmpty","filteredItemsLength","$slots","noData","noResults","genItems","empty","genFooter","getPrefixedScopedSlots","VDataFooter","genDefaultScopedSlot","outerProps","$props","directives","ripple","headers","checkboxColor","sortIcon","showGroupBy","genSelectAll","_this$checkboxColor","indeterminate","VSimpleCheckbox","genSortIcon","header","sortByText","genSortChip","sortIndex","beingSorted","isDesc","sortable","active","asc","VChip","stopPropagation","genSortSelect","multiple","menuProps","closeOnContentClick","change","h","sortHeaders","th","tr","genGroupByToggle","getAria","$t","ariaSort","ariaLabel","join","genHeader","role","scope","convertToUnit","divider","_this$getAria","groupable","dedupeModelListeners","indexOf","rebuildFunctionalSlots","slots","slot","functional","mobile","rebuildSlots","mergeData","VDataTableHeaderMobile","VDataTableHeaderDesktop","computedSlots","slotName","scopedSlot","regularSlot","textAlign","cellClass","headerClass","contentClass","summaryClass","dense","fixedHeader","classes","top","bottom","themeClasses","genWrapper","wrapper","hideDefaultHeader","mobileRowChildren","filterFn","searchTableItems","headersWithCustomFilters","headersWithoutCustomFilters","trim","matchesColumnFilters","defaultFilter","matchesSearchTerm","VDataIterator","Loadable","showSelect","showExpand","caption","headerProps","calculateWidths","headersLength","expandIcon","itemClass","loaderHeight","internalGroupBy","openCache","widths","computedHeaders","defaultHeader","colspanAttrs","colspan","columnSorters","acc","filterable","sanitizedHeaderProps","computedItemsPerPage","firstOption","calcWidths","$el","querySelectorAll","clientWidth","customFilterWithColumns","customSortWithHeaders","call","genCaption","genColgroup","genLoading","genProgress","genHeaders","VDataTableHeader","genGroupedRows","genRows","$set","genDefaultGroupedRow","isOpen","toggleFn","removeFn","remove","small","column","RowGroup","genScopedRows","genDefaultRows","genDefaultExpandedRow","genDefaultSimpleRow","headerRow","expandedRow","val","MobileRow","Row","mergeClasses","getPropertyFromItem","contextmenu","dblclick","genBody","body","genFoot","_this$$scopedSlots$fo","_this$$scopedSlots","foot","genFooters","simpleProps","VSimpleTable","proxySlot","component","VCard","VCardActions","VCardText","VCardTitle","VCol","VDataTable","VDialog","VRow","VSlider","VSnackbar","VSpacer","VSwitch","VTextField","VTooltip","VInput","ClickOutside","inverseLabel","step","thumbColor","thumbLabel","validator","thumbSize","tickLabels","ticks","tickSize","trackColor","trackFillColor","vertical","app","oldValue","thumbPressed","mouseTimeout","isFocused","isActive","noClick","startOffset","internalValue","get","lazyValue","set","isNaN","minValue","roundValue","maxValue","trackTransition","showTicks","stepNumeric","parseFloat","inputWidth","trackFillStyles","startDir","endDir","valueDir","isDisabled","transition","_defineProperty","trackStyles","numTicks","showThumbLabel","computedTrackColor","isDark","validationState","computedTrackFillColor","computedColor","computedThumbColor","parsed","beforeMount","querySelector","consoleWarn","genDefaultSlot","genLabel","slider","genSlider","isReadonly","onBlur","onSliderClick","mousedown","onSliderMouseDown","touchstart","genChildren","genInput","genTrackContainer","genSteps","genThumbContainer","onFocus","id","computedId","readonly","tabindex","setBackgroundColor","range","createRange","direction","offsetDirection","reverse","_style","filled","valueWidth","genThumb","thumbLabelContent","genThumbLabelContent","genThumbLabel","setTextColor","getThumbContainerStyles","focus","blur","keydown","transform","VScaleTransition","origin","_e$target","preventDefault","target","matches","domRect","getBoundingClientRect","touch","touches","clientY","clientX","left","clearTimeout","mouseUpOptions","passiveSupported","passive","capture","mouseMoveOptions","isTouchEvent","onMouseMove","addOnceEventListener","onSliderMouseUp","parseMouseMove","isInteractive","parseKeyDown","thumb","$refs","_this$$refs$track$get","track","trackStart","trackLength","clickOffset","clickPos","pageup","pagedown","home","right","down","up","steps","increase","multiplier","shiftKey","ctrlKey","trimmedStep","decimals","offset","newValue","round","toFixed"],"mappings":"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","file":"js/chunk-7df1cedc.befb8abd.js","sourcesContent":["export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BulkScanning.vue?vue&type=style&index=0&id=5f65e8e8&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-dialog',{attrs:{\"max-width\":\"30%\",\"persistent\":\"\"},model:{value:(_vm.clearAllDialogIsShown),callback:function ($$v) {_vm.clearAllDialogIsShown=$$v},expression:\"clearAllDialogIsShown\"}},[_c('v-card',[_c('h2',{staticStyle:{\"text-align\":\"center\"}},[_vm._v(\"Are you sure?\")]),_c('v-card-text',{staticClass:\"actionsClear\"},[(!_vm.filterTag)?_c('span',[_vm._v(\" This Will Clear All Currently Scanned Images \")]):_c('span',[_vm._v(\" This Will Clear All Images For This Transaction \")])]),_c('v-card-actions',{staticClass:\"actionsClear\"},[_c('v-btn',{attrs:{\"color\":\"red\"},on:{\"click\":function($event){_vm.clearAllDialogIsShown = false;\n _vm.DWObject.Viewer.show();}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Cancel\")])]),_c('v-btn',{attrs:{\"raised\":\"\",\"color\":\"green\"},on:{\"click\":function($event){_vm.DWObject.Viewer.show();\n _vm.clearAllDocuments();}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Clear\")])])],1)],1)],1),_c('v-dialog',{attrs:{\"width\":\"80vw\",\"persistent\":\"\"},model:{value:(_vm.errorTable),callback:function ($$v) {_vm.errorTable=$$v},expression:\"errorTable\"}},[_c('v-card',[_c('v-card-text',[_c('v-data-table',{attrs:{\"headers\":_vm.errorTableFields,\"items\":_vm.scannedRecords}})],1),_c('v-card-actions',{staticClass:\"d-flex justify-center\"},[_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){_vm.errorTable = false;\n _vm.DWObject.Viewer.show();}}},[_vm._v(\"Okay\")])],1)],1)],1),_c('v-dialog',{attrs:{\"width\":\"500\",\"persistent\":\"\"},model:{value:(_vm.showModal),callback:function ($$v) {_vm.showModal=$$v},expression:\"showModal\"}},[_c('v-card',[_c('div',{staticClass:\"closeModalButtonRight\"},[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.showModal = false;\n _vm.DWObject.Viewer.show();}}},[_c('v-icon',{attrs:{\"color\":\"red\"}},[_vm._v(\"close\")])],1)],1),_c('div',{staticClass:\"mainModal pa-2\"},[_c('v-switch',{attrs:{\"label\":\"Show Options on Scan\"},model:{value:(_vm.showUI),callback:function ($$v) {_vm.showUI=$$v},expression:\"showUI\"}}),_c('v-switch',{attrs:{\"label\":\"Duplex\"},model:{value:(_vm.duplex),callback:function ($$v) {_vm.duplex=$$v},expression:\"duplex\"}},[_vm._v(\"Duplex\")]),_c('v-select',{attrs:{\"items\":_vm.dpiItems},model:{value:(_vm.dpi),callback:function ($$v) {_vm.dpi=$$v},expression:\"dpi\"}}),_c('v-text-field',{attrs:{\"label\":\"Blank Page Sensitivity\",\"type\":\"number\"},model:{value:(_vm.blankPageSensitivity),callback:function ($$v) {_vm.blankPageSensitivity=$$v},expression:\"blankPageSensitivity\"}}),_c('v-slider',{attrs:{\"hide-details\":\"\"},model:{value:(_vm.blankPageSensitivity),callback:function ($$v) {_vm.blankPageSensitivity=$$v},expression:\"blankPageSensitivity\"}})],1)])],1),_c('v-dialog',{attrs:{\"width\":\"20vw\",\"persistent\":\"\"},model:{value:(_vm.showNoScannerDialog),callback:function ($$v) {_vm.showNoScannerDialog=$$v},expression:\"showNoScannerDialog\"}},[_c('v-card',[_c('v-card-title',{staticClass:\"d-flex justify-center\"},[_vm._v(\" No Scanner Found! \")]),_c('v-card-text',{staticClass:\"d-flex flex-column align-center\"},[_c('div',[_vm._v(\"Please Ensure Your Scanner is On and Retry\")]),(_vm.DWObject.HowManyImagesInBuffer > 0)?_c('div',[_vm._v(\" THIS WILL REMOVE ANY UNSAVED WORK \")]):_vm._e()]),_c('v-card-actions',{staticClass:\"d-flex justify-space-around\"},[_c('v-btn',{attrs:{\"color\":\"green\"},on:{\"click\":_vm.retryScan}},[_vm._v(\" Retry \")]),_c('v-btn',{attrs:{\"color\":\"error\"},on:{\"click\":function($event){_vm.showNoScannerDialog = false;\n _vm.DWObject.Viewer.show();\n _vm.retry = false;}}},[_vm._v(\" Cancel \")])],1)],1)],1),_c('h1',{staticClass:\"mb-1\"},[_vm._v(\"Bulk Scanning\")]),_c('v-row',[_c('div',{staticClass:\"ma-3\"},[_c('v-btn',{staticClass:\"mr-1\",attrs:{\"color\":\"primary\",\"disabled\":_vm.isScanning},on:{\"click\":_vm.acquireImage}},[(this.scannedRecords.length > 0)?_c('span',[_vm._v(\" Add Images \")]):_c('span',[_vm._v(\" Start Scanning \")])]),_c('v-btn',{staticClass:\"mr-1\",attrs:{\"color\":\"primary\",\"disabled\":_vm.isScanning},on:{\"click\":_vm.changeScanner}},[_vm._v(\"Change Scanner\")]),_c('v-btn',{staticClass:\"mr-1\",attrs:{\"color\":\"primary\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){_vm.showModal = true;\n _vm.DWObject.Viewer.hide();}}},[_vm._v(\"Scan Options\")]),_c('v-tooltip',{attrs:{\"bottom\":\"\",\"disabled\":_vm.scannedRecords.length > 0 &&\n !_vm.transactions.hasOwnProperty('NO MATCH') &&\n !_vm.transactions.hasOwnProperty('TNClerk')},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\n var on = ref.on;\nreturn [_c('span',_vm._g({},on),[_c('v-btn',{staticClass:\"ma-1\",attrs:{\"color\":\"green\",\"disabled\":_vm.isScanning ||\n !(_vm.scannedRecords.length > 0) ||\n _vm.transactions.hasOwnProperty('NO MATCH') ||\n _vm.transactions.hasOwnProperty('TNClerk')},on:{\"click\":_vm.saveDocuments}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Save Documents\")])])],1)]}}])},[(this.scannedRecords.length === 0)?_c('span',[_vm._v(\" Images Must Be Scanned Before Submitting \")]):(_vm.transactions.hasOwnProperty('NO MATCH'))?_c('span',[_vm._v(\" You Have Images Without a Transaction \")]):(_vm.transactions.hasOwnProperty('TNClerk'))?_c('span',[_vm._v(\" You Have Images That Should Be Scanned In TNClerk \")]):_vm._e()])],1),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-3\",style:(_vm.filterTag ? '' : 'visibility:hidden;'),attrs:{\"small\":\"\",\"color\":\"red\"},on:{\"click\":function($event){return _vm.showImagesInTransaction('')}}},[_vm._v(\" Clear Selection \")])],1),_c('v-row',[_c('v-col',{attrs:{\"id\":\"previewer\"}},[_c('v-card',{staticClass:\"d-flex flex-column\",attrs:{\"id\":\"docPreview\",\"elevation\":\"5\",\"height\":\"80vh\"}},[_c('v-card-title',[_c('h2',[_vm._v(\" \"+_vm._s(_vm.documentPreviewTitle)+\" \")])]),_c('v-card-text',{staticClass:\"d-flex flex-column\",staticStyle:{\"flex-grow\":\"1\",\"overflow\":\"hidden\"}},[_c('div',{attrs:{\"id\":\"controls\"}},[_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":_vm.imageZoomIn}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Zoom +\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":_vm.imageZoomOut}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Zoom -\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.DWObject.Viewer.fitWindow()}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Fit to Screen\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":_vm.deleteSelected}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Delete\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.printImage(false)}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Print\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.saveImageLocally(false)}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Download\")])]),_c('v-tooltip',{attrs:{\"bottom\":\"\",\"disabled\":_vm.filterTag === 'NO MATCH' ||\n _vm.filterTag === 'TNClerk' ||\n (![undefined, null, ''].includes(_vm.filterTag) &&\n !_vm.is201(_vm.filteredIndex))},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\n var on = ref.on;\nreturn [_c('span',_vm._g({},on),[_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning ||\n [undefined, null, ''].includes(_vm.filterTag) ||\n (_vm.is201(_vm.filteredIndex) &&\n _vm.filterTag !== 'NO MATCH' &&\n _vm.filterTag !== 'TNClerk')},on:{\"click\":_vm.transferToDiffTransID}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Transfer Document\")])])],1)]}}])},[_c('span',[_vm._v(\" \"+_vm._s(_vm.noTransferMessage)+\" \")])])],1),_c('div',{staticStyle:{\"flex-grow\":\"1\"},attrs:{\"id\":\"dwtcontrolContainer\"}}),_c('div',{attrs:{\"id\":\"controls\"}},[_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.DWObject.RotateLeft(_vm.DWObject.CurrentImageIndexInBuffer)}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Rotate Left\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.DWObject.RotateRight(_vm.DWObject.CurrentImageIndexInBuffer)}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Rotate Right\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.DWObject.Crop(\n _vm.DWObject.CurrentImageIndexInBuffer,\n _vm.leftVertex,\n _vm.topVertex,\n _vm.rightVertex,\n _vm.bottomVertex\n )}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Crop Area\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.DWObject.Erase(\n _vm.DWObject.CurrentImageIndexInBuffer,\n _vm.leftVertex,\n _vm.topVertex,\n _vm.rightVertex,\n _vm.bottomVertex\n )}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Erase Area\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){_vm.clearAllDialogIsShown = true;\n _vm.DWObject.Viewer.hide();}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Delete All\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.printImage(true)}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Print All\")])]),_c('v-btn',{staticClass:\"mb-1\",attrs:{\"color\":\"blue\",\"small\":\"\",\"disabled\":_vm.isScanning},on:{\"click\":function($event){return _vm.saveImageLocally(true)}}},[_c('span',{staticClass:\"white-text\"},[_vm._v(\"Download All\")])])],1)])],1)],1),_c('v-col',[_c('div',{staticClass:\"legend\"},[_c('div',[_c('div',{staticClass:\"color\",staticStyle:{\"background-color\":\"#b8daff\"}}),_c('span',[_vm._v(\" - Selected\")])]),_c('div',[_c('div',{staticClass:\"color\",staticStyle:{\"background-color\":\"#ffd9d9\"}}),_c('span',[_vm._v(\" - Error\")])]),_c('div',[_c('div',{staticClass:\"color\",staticStyle:{\"background-color\":\"#fff9bf\"}}),_c('span',[_vm._v(\" - Error Selected\")])])]),_c('div',{staticClass:\"bootstrap\"},[_c('b-table',{attrs:{\"sticky-header\":\"75vh\",\"no-border-collapse\":true,\"hover\":\"\",\"focusable\":\"\",\"bordered\":\"\",\"outlined\":\"\",\"show-empty\":true,\"fields\":_vm.tableFields,\"head-variant\":\"dark\",\"sort-icon-left\":\"\",\"items\":_vm.scannedRecords},on:{\"row-clicked\":_vm.showImagesInTransaction,\"row-hovered\":function($event){return _vm.handleErrorRow(true, $event)},\"row-unhovered\":function($event){return _vm.handleErrorRow(false, $event)}},scopedSlots:_vm._u([{key:\"row-details\",fn:function(row){return [_vm._v(\" \"+_vm._s(row.item.error)+\" \")]}},{key:\"cell(transactionType)\",fn:function(data){return [_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\n var on = ref.on;\nreturn [_c('span',_vm._g({},on),[_vm._v(_vm._s(data.item.transactionType))])]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.transactionTypes[data.item.transactionType]))])])]}},{key:\"cell(imageIds)\",fn:function(data){return [_c('div',[_vm._v(\" \"+_vm._s(data.item.images.length)+\" \")])]}}])})],1)])],1),_c('v-snackbar',{attrs:{\"bottom\":\"\",\"color\":\"primary\"},model:{value:(_vm.allowTransfer),callback:function ($$v) {_vm.allowTransfer=$$v},expression:\"allowTransfer\"}},[_vm._v(\" \"+_vm._s(_vm.transferSnackMessage)+\" \"),_c('v-btn',{attrs:{\"outlined\":\"\"},on:{\"click\":function($event){_vm.allowTransfer = false}}},[_vm._v(\"Cancel\")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BulkScanning.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BulkScanning.vue?vue&type=script&lang=js&\"","// Helpers\nimport { wrapInArray, sortItems, deepEqual, groupItems, searchItems, fillArray } from '../../util/helpers'\nimport Vue, { VNode } from 'vue'\n\n// Types\nimport {\n DataOptions,\n DataPagination,\n DataScopeProps,\n DataSortFunction,\n DataGroupFunction,\n DataSearchFunction,\n ItemGroup,\n} from 'vuetify/types'\nimport { PropValidator } from 'vue/types/options'\n\nexport default Vue.extend({\n name: 'v-data',\n\n inheritAttrs: false,\n\n props: {\n items: {\n type: Array,\n default: () => [],\n } as PropValidator,\n options: {\n type: Object,\n default: () => ({}),\n } as PropValidator>,\n sortBy: {\n type: [String, Array],\n default: () => [],\n } as PropValidator,\n sortDesc: {\n type: [Boolean, Array],\n default: () => [],\n } as PropValidator,\n customSort: {\n type: Function,\n default: sortItems,\n } as PropValidator,\n mustSort: Boolean,\n multiSort: Boolean,\n page: {\n type: Number,\n default: 1,\n },\n itemsPerPage: {\n type: Number,\n default: 10,\n },\n groupBy: {\n type: [String, Array],\n default: () => [],\n } as PropValidator,\n groupDesc: {\n type: [Boolean, Array],\n default: () => [],\n } as PropValidator,\n customGroup: {\n type: Function,\n default: groupItems,\n } as PropValidator,\n locale: {\n type: String,\n default: 'en-US',\n },\n disableSort: Boolean,\n disablePagination: Boolean,\n disableFiltering: Boolean,\n search: String,\n customFilter: {\n type: Function,\n default: searchItems,\n } as PropValidator,\n serverItemsLength: {\n type: Number,\n default: -1,\n },\n },\n\n data () {\n let internalOptions: DataOptions = {\n page: this.page,\n itemsPerPage: this.itemsPerPage,\n sortBy: wrapInArray(this.sortBy),\n sortDesc: wrapInArray(this.sortDesc),\n groupBy: wrapInArray(this.groupBy),\n groupDesc: wrapInArray(this.groupDesc),\n mustSort: this.mustSort,\n multiSort: this.multiSort,\n }\n\n if (this.options) {\n internalOptions = Object.assign(internalOptions, this.options)\n }\n\n const { sortBy, sortDesc, groupBy, groupDesc } = internalOptions\n const sortDiff = sortBy.length - sortDesc.length\n const groupDiff = groupBy.length - groupDesc.length\n\n if (sortDiff > 0) {\n internalOptions.sortDesc.push(...fillArray(sortDiff, false))\n }\n\n if (groupDiff > 0) {\n internalOptions.groupDesc.push(...fillArray(groupDiff, false))\n }\n\n return {\n internalOptions,\n }\n },\n\n computed: {\n itemsLength (): number {\n return this.serverItemsLength >= 0 ? this.serverItemsLength : this.filteredItems.length\n },\n pageCount (): number {\n return this.internalOptions.itemsPerPage <= 0\n ? 1\n : Math.ceil(this.itemsLength / this.internalOptions.itemsPerPage)\n },\n pageStart (): number {\n if (this.internalOptions.itemsPerPage === -1 || !this.items.length) return 0\n\n return (this.internalOptions.page - 1) * this.internalOptions.itemsPerPage\n },\n pageStop (): number {\n if (this.internalOptions.itemsPerPage === -1) return this.itemsLength\n if (!this.items.length) return 0\n\n return Math.min(this.itemsLength, this.internalOptions.page * this.internalOptions.itemsPerPage)\n },\n isGrouped (): boolean {\n return !!this.internalOptions.groupBy.length\n },\n pagination (): DataPagination {\n return {\n page: this.internalOptions.page,\n itemsPerPage: this.internalOptions.itemsPerPage,\n pageStart: this.pageStart,\n pageStop: this.pageStop,\n pageCount: this.pageCount,\n itemsLength: this.itemsLength,\n }\n },\n filteredItems (): any[] {\n let items = this.items.slice()\n\n if (!this.disableFiltering && this.serverItemsLength <= 0) {\n items = this.customFilter(items, this.search)\n }\n\n return items\n },\n computedItems (): any[] {\n let items = this.filteredItems.slice()\n\n if ((!this.disableSort || this.internalOptions.groupBy.length) && this.serverItemsLength <= 0) {\n items = this.sortItems(items)\n }\n\n if (!this.disablePagination && this.serverItemsLength <= 0) {\n items = this.paginateItems(items)\n }\n\n return items\n },\n groupedItems (): ItemGroup[] | null {\n return this.isGrouped ? this.groupItems(this.computedItems) : null\n },\n scopedProps (): DataScopeProps {\n return {\n sort: this.sort,\n sortArray: this.sortArray,\n group: this.group,\n items: this.computedItems,\n options: this.internalOptions,\n updateOptions: this.updateOptions,\n pagination: this.pagination,\n groupedItems: this.groupedItems,\n originalItemsLength: this.items.length,\n }\n },\n computedOptions (): DataOptions {\n return { ...this.options } as DataOptions\n },\n },\n\n watch: {\n computedOptions: {\n handler (options: DataOptions, old: DataOptions) {\n if (deepEqual(options, old)) return\n\n this.updateOptions(options)\n },\n deep: true,\n immediate: true,\n },\n internalOptions: {\n handler (options: DataOptions, old: DataOptions) {\n if (deepEqual(options, old)) return\n this.$emit('update:options', options)\n },\n deep: true,\n immediate: true,\n },\n page (page: number) {\n this.updateOptions({ page })\n },\n 'internalOptions.page' (page: number) {\n this.$emit('update:page', page)\n },\n itemsPerPage (itemsPerPage: number) {\n this.updateOptions({ itemsPerPage })\n },\n 'internalOptions.itemsPerPage' (itemsPerPage: number) {\n this.$emit('update:items-per-page', itemsPerPage)\n },\n sortBy (sortBy: string | string[]) {\n this.updateOptions({ sortBy: wrapInArray(sortBy) })\n },\n 'internalOptions.sortBy' (sortBy: string[], old: string[]) {\n !deepEqual(sortBy, old) && this.$emit('update:sort-by', Array.isArray(this.sortBy) ? sortBy : sortBy[0])\n },\n sortDesc (sortDesc: boolean | boolean[]) {\n this.updateOptions({ sortDesc: wrapInArray(sortDesc) })\n },\n 'internalOptions.sortDesc' (sortDesc: boolean[], old: boolean[]) {\n !deepEqual(sortDesc, old) && this.$emit('update:sort-desc', Array.isArray(this.sortDesc) ? sortDesc : sortDesc[0])\n },\n groupBy (groupBy: string | string[]) {\n this.updateOptions({ groupBy: wrapInArray(groupBy) })\n },\n 'internalOptions.groupBy' (groupBy: string[], old: string[]) {\n !deepEqual(groupBy, old) && this.$emit('update:group-by', Array.isArray(this.groupBy) ? groupBy : groupBy[0])\n },\n groupDesc (groupDesc: boolean | boolean[]) {\n this.updateOptions({ groupDesc: wrapInArray(groupDesc) })\n },\n 'internalOptions.groupDesc' (groupDesc: boolean[], old: boolean[]) {\n !deepEqual(groupDesc, old) && this.$emit('update:group-desc', Array.isArray(this.groupDesc) ? groupDesc : groupDesc[0])\n },\n multiSort (multiSort: boolean) {\n this.updateOptions({ multiSort })\n },\n 'internalOptions.multiSort' (multiSort: boolean) {\n this.$emit('update:multi-sort', multiSort)\n },\n mustSort (mustSort: boolean) {\n this.updateOptions({ mustSort })\n },\n 'internalOptions.mustSort' (mustSort: boolean) {\n this.$emit('update:must-sort', mustSort)\n },\n pageCount: {\n handler (pageCount: number) {\n this.$emit('page-count', pageCount)\n },\n immediate: true,\n },\n computedItems: {\n handler (computedItems: any[]) {\n this.$emit('current-items', computedItems)\n },\n immediate: true,\n },\n pagination: {\n handler (pagination: DataPagination, old: DataPagination) {\n if (deepEqual(pagination, old)) return\n this.$emit('pagination', this.pagination)\n },\n immediate: true,\n },\n },\n\n methods: {\n toggle (key: string, oldBy: string[], oldDesc: boolean[], page: number, mustSort: boolean, multiSort: boolean) {\n let by = oldBy.slice()\n let desc = oldDesc.slice()\n const byIndex = by.findIndex((k: string) => k === key)\n\n if (byIndex < 0) {\n if (!multiSort) {\n by = []\n desc = []\n }\n\n by.push(key)\n desc.push(false)\n } else if (byIndex >= 0 && !desc[byIndex]) {\n desc[byIndex] = true\n } else if (!mustSort) {\n by.splice(byIndex, 1)\n desc.splice(byIndex, 1)\n } else {\n desc[byIndex] = false\n }\n\n // Reset page to 1 if sortBy or sortDesc have changed\n if (!deepEqual(by, oldBy) || !deepEqual(desc, oldDesc)) {\n page = 1\n }\n\n return { by, desc, page }\n },\n group (key: string): void {\n const { by: groupBy, desc: groupDesc, page } = this.toggle(\n key,\n this.internalOptions.groupBy,\n this.internalOptions.groupDesc,\n this.internalOptions.page,\n true,\n false\n )\n this.updateOptions({ groupBy, groupDesc, page })\n },\n sort (key: string | string[]): void {\n if (Array.isArray(key)) return this.sortArray(key)\n\n const { by: sortBy, desc: sortDesc, page } = this.toggle(\n key,\n this.internalOptions.sortBy,\n this.internalOptions.sortDesc,\n this.internalOptions.page,\n this.internalOptions.mustSort,\n this.internalOptions.multiSort\n )\n this.updateOptions({ sortBy, sortDesc, page })\n },\n sortArray (sortBy: string[]) {\n const sortDesc = sortBy.map(s => {\n const i = this.internalOptions.sortBy.findIndex((k: string) => k === s)\n return i > -1 ? this.internalOptions.sortDesc[i] : false\n })\n\n this.updateOptions({ sortBy, sortDesc })\n },\n updateOptions (options: any) {\n this.internalOptions = {\n ...this.internalOptions,\n ...options,\n page: this.serverItemsLength < 0\n ? Math.max(1, Math.min(options.page || this.internalOptions.page, this.pageCount))\n : options.page || this.internalOptions.page,\n }\n },\n sortItems (items: any[]): any[] {\n let sortBy: string[] = []\n let sortDesc: boolean[] = []\n\n if (!this.disableSort) {\n sortBy = this.internalOptions.sortBy\n sortDesc = this.internalOptions.sortDesc\n }\n\n if (this.internalOptions.groupBy.length) {\n sortBy = [...this.internalOptions.groupBy, ...sortBy]\n sortDesc = [...this.internalOptions.groupDesc, ...sortDesc]\n }\n\n return this.customSort(items, sortBy, sortDesc, this.locale)\n },\n groupItems (items: any[]): ItemGroup[] {\n return this.customGroup(items, this.internalOptions.groupBy, this.internalOptions.groupDesc)\n },\n paginateItems (items: any[]): any[] {\n // Make sure we don't try to display non-existant page if items suddenly change\n // TODO: Could possibly move this to pageStart/pageStop?\n if (this.serverItemsLength === -1 && items.length <= this.pageStart) {\n this.internalOptions.page = Math.max(1, Math.ceil(items.length / this.internalOptions.itemsPerPage)) || 1 // Prevent NaN\n }\n\n return items.slice(this.pageStart, this.pageStop)\n },\n },\n\n render (): VNode {\n return this.$scopedSlots.default && this.$scopedSlots.default(this.scopedProps) as any\n },\n})\n","import './VDataFooter.sass'\n\n// Components\nimport VSelect from '../VSelect/VSelect'\nimport VIcon from '../VIcon'\nimport VBtn from '../VBtn'\n\n// Types\nimport Vue, { VNode, VNodeChildrenArrayContents, PropType } from 'vue'\nimport { DataPagination, DataOptions, DataItemsPerPageOption } from 'vuetify/types'\nimport { PropValidator } from 'vue/types/options'\nimport { getSlot } from '../../util/helpers'\n\nexport default Vue.extend({\n name: 'v-data-footer',\n\n props: {\n options: {\n type: Object as PropType,\n required: true,\n },\n pagination: {\n type: Object as PropType,\n required: true,\n },\n itemsPerPageOptions: {\n type: Array,\n default: () => ([5, 10, 15, -1]),\n } as PropValidator,\n prevIcon: {\n type: String,\n default: '$prev',\n },\n nextIcon: {\n type: String,\n default: '$next',\n },\n firstIcon: {\n type: String,\n default: '$first',\n },\n lastIcon: {\n type: String,\n default: '$last',\n },\n itemsPerPageText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageText',\n },\n itemsPerPageAllText: {\n type: String,\n default: '$vuetify.dataFooter.itemsPerPageAll',\n },\n showFirstLastPage: Boolean,\n showCurrentPage: Boolean,\n disablePagination: Boolean,\n disableItemsPerPage: Boolean,\n pageText: {\n type: String,\n default: '$vuetify.dataFooter.pageText',\n },\n },\n\n computed: {\n disableNextPageIcon (): boolean {\n return this.options.itemsPerPage <= 0 ||\n this.options.page * this.options.itemsPerPage >= this.pagination.itemsLength ||\n this.pagination.pageStop < 0\n },\n computedDataItemsPerPageOptions (): any[] {\n return this.itemsPerPageOptions.map(option => {\n if (typeof option === 'object') return option\n else return this.genDataItemsPerPageOption(option)\n })\n },\n },\n\n methods: {\n updateOptions (obj: object) {\n this.$emit('update:options', Object.assign({}, this.options, obj))\n },\n onFirstPage () {\n this.updateOptions({ page: 1 })\n },\n onPreviousPage () {\n this.updateOptions({ page: this.options.page - 1 })\n },\n onNextPage () {\n this.updateOptions({ page: this.options.page + 1 })\n },\n onLastPage () {\n this.updateOptions({ page: this.pagination.pageCount })\n },\n onChangeItemsPerPage (itemsPerPage: number) {\n this.updateOptions({ itemsPerPage, page: 1 })\n },\n genDataItemsPerPageOption (option: number) {\n return {\n text: option === -1 ? this.$vuetify.lang.t(this.itemsPerPageAllText) : String(option),\n value: option,\n }\n },\n genItemsPerPageSelect () {\n let value = this.options.itemsPerPage\n const computedIPPO = this.computedDataItemsPerPageOptions\n\n if (computedIPPO.length <= 1) return null\n\n if (!computedIPPO.find(ippo => ippo.value === value)) value = computedIPPO[0]\n\n return this.$createElement('div', {\n staticClass: 'v-data-footer__select',\n }, [\n this.$vuetify.lang.t(this.itemsPerPageText),\n this.$createElement(VSelect, {\n attrs: {\n 'aria-label': this.$vuetify.lang.t(this.itemsPerPageText),\n },\n props: {\n disabled: this.disableItemsPerPage,\n items: computedIPPO,\n value,\n hideDetails: true,\n auto: true,\n minWidth: '75px',\n },\n on: {\n input: this.onChangeItemsPerPage,\n },\n }),\n ])\n },\n genPaginationInfo () {\n let children: VNodeChildrenArrayContents = ['–']\n const itemsLength: number = this.pagination.itemsLength\n let pageStart: number = this.pagination.pageStart\n let pageStop: number = this.pagination.pageStop\n\n if (this.pagination.itemsLength && this.pagination.itemsPerPage) {\n pageStart = this.pagination.pageStart + 1\n pageStop = itemsLength < this.pagination.pageStop || this.pagination.pageStop < 0\n ? itemsLength\n : this.pagination.pageStop\n\n children = this.$scopedSlots['page-text']\n ? [this.$scopedSlots['page-text']!({ pageStart, pageStop, itemsLength })]\n : [this.$vuetify.lang.t(this.pageText, pageStart, pageStop, itemsLength)]\n } else if (this.$scopedSlots['page-text']) {\n children = [this.$scopedSlots['page-text']!({ pageStart, pageStop, itemsLength })]\n }\n\n return this.$createElement('div', {\n class: 'v-data-footer__pagination',\n }, children)\n },\n genIcon (click: Function, disabled: boolean, label: string, icon: string): VNode {\n return this.$createElement(VBtn, {\n props: {\n disabled: disabled || this.disablePagination,\n icon: true,\n text: true,\n // dark: this.dark, // TODO: add mixin\n // light: this.light // TODO: add mixin\n },\n on: {\n click,\n },\n attrs: {\n 'aria-label': label, // TODO: Localization\n },\n }, [this.$createElement(VIcon, icon)])\n },\n genIcons () {\n const before: VNodeChildrenArrayContents = []\n const after: VNodeChildrenArrayContents = []\n\n before.push(this.genIcon(\n this.onPreviousPage,\n this.options.page === 1,\n this.$vuetify.lang.t('$vuetify.dataFooter.prevPage'),\n this.$vuetify.rtl ? this.nextIcon : this.prevIcon\n ))\n\n after.push(this.genIcon(\n this.onNextPage,\n this.disableNextPageIcon,\n this.$vuetify.lang.t('$vuetify.dataFooter.nextPage'),\n this.$vuetify.rtl ? this.prevIcon : this.nextIcon\n ))\n\n if (this.showFirstLastPage) {\n before.unshift(this.genIcon(\n this.onFirstPage,\n this.options.page === 1,\n this.$vuetify.lang.t('$vuetify.dataFooter.firstPage'),\n this.$vuetify.rtl ? this.lastIcon : this.firstIcon\n ))\n\n after.push(this.genIcon(\n this.onLastPage,\n this.options.page >= this.pagination.pageCount || this.options.itemsPerPage === -1,\n this.$vuetify.lang.t('$vuetify.dataFooter.lastPage'),\n this.$vuetify.rtl ? this.firstIcon : this.lastIcon\n ))\n }\n\n return [\n this.$createElement('div', {\n staticClass: 'v-data-footer__icons-before',\n }, before),\n this.showCurrentPage && this.$createElement('span', [this.options.page.toString()]),\n this.$createElement('div', {\n staticClass: 'v-data-footer__icons-after',\n }, after),\n ]\n },\n },\n\n render (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-data-footer',\n }, [\n getSlot(this, 'prepend'),\n this.genItemsPerPageSelect(),\n this.genPaginationInfo(),\n this.genIcons(),\n ])\n },\n})\n","// Components\nimport { VData } from '../VData'\nimport VDataFooter from './VDataFooter'\n\n// Mixins\nimport Mobile from '../../mixins/mobile'\nimport Themeable from '../../mixins/themeable'\n\n// Helpers\nimport mixins from '../../util/mixins'\nimport { deepEqual, getObjectValueByPath, getPrefixedScopedSlots, getSlot, camelizeObjectKeys, keyCodes } from '../../util/helpers'\nimport { breaking, removed } from '../../util/console'\n\n// Types\nimport { VNode, VNodeChildren } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport { DataItemProps, DataScopeProps } from 'vuetify/types'\n\n/* @vue/component */\nexport default mixins(\n Mobile,\n Themeable\n).extend({\n name: 'v-data-iterator',\n\n props: {\n ...VData.options.props, // TODO: filter out props not used\n itemKey: {\n type: String,\n default: 'id',\n },\n value: {\n type: Array,\n default: () => [],\n } as PropValidator,\n singleSelect: Boolean,\n expanded: {\n type: Array,\n default: () => [],\n } as PropValidator,\n mobileBreakpoint: {\n ...Mobile.options.props.mobileBreakpoint,\n default: 600,\n },\n singleExpand: Boolean,\n loading: [Boolean, String],\n noResultsText: {\n type: String,\n default: '$vuetify.dataIterator.noResultsText',\n },\n noDataText: {\n type: String,\n default: '$vuetify.noDataText',\n },\n loadingText: {\n type: String,\n default: '$vuetify.dataIterator.loadingText',\n },\n hideDefaultFooter: Boolean,\n footerProps: Object,\n selectableKey: {\n type: String,\n default: 'isSelectable',\n },\n },\n\n data: () => ({\n selection: {} as Record,\n expansion: {} as Record,\n internalCurrentItems: [] as any[],\n shiftKeyDown: false,\n lastEntry: -1,\n }),\n\n computed: {\n everyItem (): boolean {\n return !!this.selectableItems.length && this.selectableItems.every((i: any) => this.isSelected(i))\n },\n someItems (): boolean {\n return this.selectableItems.some((i: any) => this.isSelected(i))\n },\n sanitizedFooterProps (): Record {\n return camelizeObjectKeys(this.footerProps)\n },\n selectableItems (): any[] {\n return this.internalCurrentItems.filter(item => this.isSelectable(item))\n },\n },\n\n watch: {\n value: {\n handler (value: any[]) {\n this.selection = value.reduce((selection, item) => {\n selection[getObjectValueByPath(item, this.itemKey)] = item\n return selection\n }, {})\n },\n immediate: true,\n },\n selection (value: Record, old: Record) {\n if (deepEqual(Object.keys(value), Object.keys(old))) return\n\n this.$emit('input', Object.values(value))\n },\n expanded: {\n handler (value: any[]) {\n this.expansion = value.reduce((expansion, item) => {\n expansion[getObjectValueByPath(item, this.itemKey)] = true\n return expansion\n }, {})\n },\n immediate: true,\n },\n expansion (value: Record, old: Record) {\n if (deepEqual(value, old)) return\n const keys = Object.keys(value).filter(k => value[k])\n const expanded = !keys.length ? [] : this.items.filter(i => keys.includes(String(getObjectValueByPath(i, this.itemKey))))\n this.$emit('update:expanded', expanded)\n },\n },\n\n created () {\n const breakingProps = [\n ['disable-initial-sort', 'sort-by'],\n ['filter', 'custom-filter'],\n ['pagination', 'options'],\n ['total-items', 'server-items-length'],\n ['hide-actions', 'hide-default-footer'],\n ['rows-per-page-items', 'footer-props.items-per-page-options'],\n ['rows-per-page-text', 'footer-props.items-per-page-text'],\n ['prev-icon', 'footer-props.prev-icon'],\n ['next-icon', 'footer-props.next-icon'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n\n const removedProps = [\n 'expand',\n 'content-class',\n 'content-props',\n 'content-tag',\n ]\n\n /* istanbul ignore next */\n removedProps.forEach(prop => {\n if (this.$attrs.hasOwnProperty(prop)) removed(prop)\n })\n },\n\n mounted () {\n window.addEventListener('keydown', this.onKeyDown)\n window.addEventListener('keyup', this.onKeyUp)\n },\n beforeDestroy () {\n window.removeEventListener('keydown', this.onKeyDown)\n window.removeEventListener('keyup', this.onKeyUp)\n },\n\n methods: {\n onKeyDown (e: KeyboardEvent): void {\n if (e.keyCode !== keyCodes.shift) return\n this.shiftKeyDown = true\n },\n onKeyUp (e: KeyboardEvent): void {\n if (e.keyCode !== keyCodes.shift) return\n this.shiftKeyDown = false\n },\n toggleSelectAll (value: boolean): void {\n const selection = Object.assign({}, this.selection)\n\n for (let i = 0; i < this.selectableItems.length; i++) {\n const item = this.selectableItems[i]\n\n if (!this.isSelectable(item)) continue\n\n const key = getObjectValueByPath(item, this.itemKey)\n if (value) selection[key] = item\n else delete selection[key]\n }\n\n this.selection = selection\n this.$emit('toggle-select-all', { items: this.internalCurrentItems, value })\n },\n isSelectable (item: any): boolean {\n return getObjectValueByPath(item, this.selectableKey) !== false\n },\n isSelected (item: any): boolean {\n return !!this.selection[getObjectValueByPath(item, this.itemKey)] || false\n },\n select (item: any, value = true, emit = true): void {\n if (!this.isSelectable(item)) return\n\n const selection = this.singleSelect ? {} : Object.assign({}, this.selection)\n const key = getObjectValueByPath(item, this.itemKey)\n\n if (value) selection[key] = item\n else delete selection[key]\n\n const index = this.selectableItems.findIndex(x => getObjectValueByPath(x, this.itemKey) === key)\n if (this.lastEntry === -1) this.lastEntry = index\n else if (this.shiftKeyDown && !this.singleSelect && emit) {\n const lastEntryKey = getObjectValueByPath(this.selectableItems[this.lastEntry], this.itemKey)\n const lastEntryKeySelected = Object.keys(this.selection).includes(String(lastEntryKey))\n this.multipleSelect(lastEntryKeySelected, emit, selection, index)\n }\n this.lastEntry = index\n\n if (this.singleSelect && emit) {\n const keys = Object.keys(this.selection)\n const old = keys.length && getObjectValueByPath(this.selection[keys[0]], this.itemKey)\n old && old !== key && this.$emit('item-selected', { item: this.selection[old], value: false })\n }\n this.selection = selection\n emit && this.$emit('item-selected', { item, value })\n },\n multipleSelect (value = true, emit = true, selection: any, index: number): void {\n const start = index < this.lastEntry ? index : this.lastEntry\n const end = index < this.lastEntry ? this.lastEntry : index\n for (let i = start; i <= end; i++) {\n const currentItem = this.selectableItems[i]\n const key = getObjectValueByPath(currentItem, this.itemKey)\n if (value) selection[key] = currentItem\n else delete selection[key]\n emit && this.$emit('item-selected', { currentItem, value })\n }\n },\n isExpanded (item: any): boolean {\n return this.expansion[getObjectValueByPath(item, this.itemKey)] || false\n },\n expand (item: any, value = true): void {\n const expansion = this.singleExpand ? {} : Object.assign({}, this.expansion)\n const key = getObjectValueByPath(item, this.itemKey)\n\n if (value) expansion[key] = true\n else delete expansion[key]\n\n this.expansion = expansion\n this.$emit('item-expanded', { item, value })\n },\n createItemProps (item: any, index: number): DataItemProps {\n return {\n item,\n index,\n select: (v: boolean) => this.select(item, v),\n isSelected: this.isSelected(item),\n expand: (v: boolean) => this.expand(item, v),\n isExpanded: this.isExpanded(item),\n isMobile: this.isMobile,\n }\n },\n genEmptyWrapper (content: VNodeChildren) {\n return this.$createElement('div', content)\n },\n genEmpty (originalItemsLength: number, filteredItemsLength: number) {\n if (originalItemsLength === 0 && this.loading) {\n const loading = this.$slots.loading || this.$vuetify.lang.t(this.loadingText)\n return this.genEmptyWrapper(loading)\n } else if (originalItemsLength === 0) {\n const noData = this.$slots['no-data'] || this.$vuetify.lang.t(this.noDataText)\n return this.genEmptyWrapper(noData)\n } else if (filteredItemsLength === 0) {\n const noResults = this.$slots['no-results'] || this.$vuetify.lang.t(this.noResultsText)\n return this.genEmptyWrapper(noResults)\n }\n\n return null\n },\n genItems (props: DataScopeProps) {\n const empty = this.genEmpty(props.originalItemsLength, props.pagination.itemsLength)\n if (empty) return [empty]\n\n if (this.$scopedSlots.default) {\n return this.$scopedSlots.default({\n ...props,\n isSelected: this.isSelected,\n select: this.select,\n isExpanded: this.isExpanded,\n isMobile: this.isMobile,\n expand: this.expand,\n })\n }\n\n if (this.$scopedSlots.item) {\n return props.items.map((item: any, index) => this.$scopedSlots.item!(this.createItemProps(\n item,\n index\n )))\n }\n\n return []\n },\n genFooter (props: DataScopeProps) {\n if (this.hideDefaultFooter) return null\n\n const data = {\n props: {\n ...this.sanitizedFooterProps,\n options: props.options,\n pagination: props.pagination,\n },\n on: {\n 'update:options': (value: any) => props.updateOptions(value),\n },\n }\n\n const scopedSlots = getPrefixedScopedSlots('footer.', this.$scopedSlots)\n\n return this.$createElement(VDataFooter, {\n scopedSlots,\n ...data,\n })\n },\n genDefaultScopedSlot (props: any) {\n const outerProps = {\n ...props,\n someItems: this.someItems,\n everyItem: this.everyItem,\n toggleSelectAll: this.toggleSelectAll,\n }\n\n return this.$createElement('div', {\n staticClass: 'v-data-iterator',\n }, [\n getSlot(this, 'header', outerProps, true),\n this.genItems(props),\n this.genFooter(props),\n getSlot(this, 'footer', outerProps, true),\n ])\n },\n },\n\n render (): VNode {\n return this.$createElement(VData, {\n props: this.$props,\n on: {\n 'update:options': (v: any, old: any) => !deepEqual(v, old) && this.$emit('update:options', v),\n 'update:page': (v: any) => this.$emit('update:page', v),\n 'update:items-per-page': (v: any) => this.$emit('update:items-per-page', v),\n 'update:sort-by': (v: any) => this.$emit('update:sort-by', v),\n 'update:sort-desc': (v: any) => this.$emit('update:sort-desc', v),\n 'update:group-by': (v: any) => this.$emit('update:group-by', v),\n 'update:group-desc': (v: any) => this.$emit('update:group-desc', v),\n pagination: (v: any, old: any) => !deepEqual(v, old) && this.$emit('pagination', v),\n 'current-items': (v: any[]) => {\n this.internalCurrentItems = v\n this.$emit('current-items', v)\n },\n 'page-count': (v: number) => this.$emit('page-count', v),\n },\n scopedSlots: {\n default: this.genDefaultScopedSlot,\n },\n })\n },\n})\n","import { VDataTable } from '../'\nimport VIcon from '../../VIcon'\nimport VSimpleCheckbox from '../../VCheckbox/VSimpleCheckbox'\nimport ripple from '../../../directives/ripple'\n\nimport Vue from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport mixins from '../../../util/mixins'\nimport { DataOptions, DataTableHeader } from 'vuetify/types'\n\ntype VDataTableInstance = InstanceType\n\ninterface options extends Vue {\n dataTable: VDataTableInstance\n}\n\nexport default mixins().extend({\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n headers: {\n type: Array,\n default: () => ([]),\n } as PropValidator,\n options: {\n type: Object,\n default: () => ({\n page: 1,\n itemsPerPage: 10,\n sortBy: [],\n sortDesc: [],\n groupBy: [],\n groupDesc: [],\n multiSort: false,\n mustSort: false,\n }),\n } as PropValidator,\n checkboxColor: String,\n sortIcon: {\n type: String,\n default: '$sort',\n },\n everyItem: Boolean,\n someItems: Boolean,\n showGroupBy: Boolean,\n singleSelect: Boolean,\n disableSort: Boolean,\n },\n\n methods: {\n genSelectAll () {\n const data = {\n props: {\n value: this.everyItem,\n indeterminate: !this.everyItem && this.someItems,\n color: this.checkboxColor ?? '',\n },\n on: {\n input: (v: boolean) => this.$emit('toggle-select-all', v),\n },\n }\n\n if (this.$scopedSlots['data-table-select']) {\n return this.$scopedSlots['data-table-select']!(data)\n }\n\n return this.$createElement(VSimpleCheckbox, {\n staticClass: 'v-data-table__checkbox',\n ...data,\n })\n },\n genSortIcon () {\n return this.$createElement(VIcon, {\n staticClass: 'v-data-table-header__icon',\n props: {\n size: 18,\n },\n }, [this.sortIcon])\n },\n },\n})\n","import { VNode, VNodeChildrenArrayContents } from 'vue'\nimport mixins from '../../util/mixins'\nimport VSelect from '../VSelect/VSelect'\nimport VChip from '../VChip'\nimport header from './mixins/header'\nimport { wrapInArray } from '../../util/helpers'\n\nexport default mixins(header).extend({\n name: 'v-data-table-header-mobile',\n\n props: {\n sortByText: {\n type: String,\n default: '$vuetify.dataTable.sortBy',\n },\n },\n\n methods: {\n genSortChip (props: any) {\n const children: VNodeChildrenArrayContents = [props.item.text]\n\n const sortIndex = this.options.sortBy.findIndex(k => k === props.item.value)\n const beingSorted = sortIndex >= 0\n const isDesc = this.options.sortDesc[sortIndex]\n\n children.push(this.$createElement('div', {\n staticClass: 'v-chip__close',\n class: {\n sortable: true,\n active: beingSorted,\n asc: beingSorted && !isDesc,\n desc: beingSorted && isDesc,\n },\n }, [this.genSortIcon()]))\n\n return this.$createElement(VChip, {\n staticClass: 'sortable',\n on: {\n click: (e: MouseEvent) => {\n e.stopPropagation()\n this.$emit('sort', props.item.value)\n },\n },\n }, children)\n },\n genSortSelect (items: any[]) {\n return this.$createElement(VSelect, {\n props: {\n label: this.$vuetify.lang.t(this.sortByText),\n items,\n hideDetails: true,\n multiple: this.options.multiSort,\n value: this.options.multiSort ? this.options.sortBy : this.options.sortBy[0],\n menuProps: { closeOnContentClick: true },\n },\n on: {\n change: (v: string | string[]) => this.$emit('sort', v),\n },\n scopedSlots: {\n selection: props => this.genSortChip(props),\n },\n })\n },\n },\n\n render (h): VNode {\n const children: VNodeChildrenArrayContents = []\n\n const header = this.headers.find(h => h.value === 'data-table-select')\n if (header && !this.singleSelect) {\n children.push(this.$createElement('div', {\n class: [\n 'v-data-table-header-mobile__select',\n ...wrapInArray(header.class),\n ],\n attrs: {\n width: header.width,\n },\n }, [this.genSelectAll()]))\n }\n\n const sortHeaders = this.headers\n .filter(h => h.sortable !== false && h.value !== 'data-table-select')\n .map(h => ({\n text: h.text,\n value: h.value,\n }))\n\n if (!this.disableSort && sortHeaders.length) {\n children.push(this.genSortSelect(sortHeaders))\n }\n\n const th = h('th', [h('div', { staticClass: 'v-data-table-header-mobile__wrapper' }, children)])\n\n const tr = h('tr', [th])\n\n return h('thead', {\n staticClass: 'v-data-table-header v-data-table-header-mobile',\n }, [tr])\n },\n})\n","// Helpers\nimport { VNode, VNodeData } from 'vue'\nimport mixins from '../../util/mixins'\nimport header from './mixins/header'\nimport { wrapInArray, convertToUnit } from '../../util/helpers'\nimport { DataTableHeader } from 'vuetify/types'\n\nexport default mixins(header).extend({\n name: 'v-data-table-header-desktop',\n\n methods: {\n genGroupByToggle (header: DataTableHeader) {\n return this.$createElement('span', {\n on: {\n click: (e: MouseEvent) => {\n e.stopPropagation()\n this.$emit('group', header.value)\n },\n },\n }, ['group'])\n },\n getAria (beingSorted: boolean, isDesc: boolean) {\n const $t = (key: string) => this.$vuetify.lang.t(`$vuetify.dataTable.ariaLabel.${key}`)\n\n let ariaSort = 'none'\n let ariaLabel = [\n $t('sortNone'),\n $t('activateAscending'),\n ]\n\n if (!beingSorted) {\n return { ariaSort, ariaLabel: ariaLabel.join(' ') }\n }\n\n if (isDesc) {\n ariaSort = 'descending'\n ariaLabel = [\n $t('sortDescending'),\n $t(this.options.mustSort ? 'activateAscending' : 'activateNone'),\n ]\n } else {\n ariaSort = 'ascending'\n ariaLabel = [\n $t('sortAscending'),\n $t('activateDescending'),\n ]\n }\n\n return { ariaSort, ariaLabel: ariaLabel.join(' ') }\n },\n genHeader (header: DataTableHeader) {\n const data: Required> = {\n attrs: {\n role: 'columnheader',\n scope: 'col',\n 'aria-label': header.text || '',\n },\n style: {\n width: convertToUnit(header.width),\n minWidth: convertToUnit(header.width),\n },\n class: [\n `text-${header.align || 'start'}`,\n ...wrapInArray(header.class),\n header.divider && 'v-data-table__divider',\n ],\n on: {},\n }\n const children = []\n\n if (header.value === 'data-table-select' && !this.singleSelect) {\n return this.$createElement('th', data, [this.genSelectAll()])\n }\n\n children.push(\n this.$scopedSlots[header.value]\n ? this.$scopedSlots[header.value]!({ header })\n : this.$createElement('span', [header.text])\n )\n\n if (!this.disableSort && (header.sortable || !header.hasOwnProperty('sortable'))) {\n data.on.click = () => this.$emit('sort', header.value)\n\n const sortIndex = this.options.sortBy.findIndex(k => k === header.value)\n const beingSorted = sortIndex >= 0\n const isDesc = this.options.sortDesc[sortIndex]\n\n data.class.push('sortable')\n\n const { ariaLabel, ariaSort } = this.getAria(beingSorted, isDesc)\n\n data.attrs['aria-label'] += `${header.text ? ': ' : ''}${ariaLabel}`\n data.attrs['aria-sort'] = ariaSort\n\n if (beingSorted) {\n data.class.push('active')\n data.class.push(isDesc ? 'desc' : 'asc')\n }\n\n if (header.align === 'end') children.unshift(this.genSortIcon())\n else children.push(this.genSortIcon())\n\n if (this.options.multiSort && beingSorted) {\n children.push(this.$createElement('span', { class: 'v-data-table-header__sort-badge' }, [String(sortIndex + 1)]))\n }\n }\n\n if (this.showGroupBy && header.groupable !== false) children.push(this.genGroupByToggle(header))\n\n return this.$createElement('th', data, children)\n },\n },\n\n render (): VNode {\n return this.$createElement('thead', {\n staticClass: 'v-data-table-header',\n }, [\n this.$createElement('tr', this.headers.map(header => this.genHeader(header))),\n ])\n },\n})\n","import { VNodeData } from 'vue'\n\n/**\n * Removes duplicate `@input` listeners when\n * using v-model with functional components\n *\n * @see https://github.com/vuetifyjs/vuetify/issues/4460\n */\nexport default function dedupeModelListeners (data: VNodeData): void {\n if (data.model && data.on && data.on.input) {\n if (Array.isArray(data.on.input)) {\n const i = data.on.input.indexOf(data.model.callback)\n if (i > -1) data.on.input.splice(i, 1)\n } else {\n delete data.on.input\n }\n }\n}\n","import { CreateElement, VNode } from 'vue'\n\nexport default function rebuildFunctionalSlots (slots: { [key: string]: VNode[] | undefined }, h: CreateElement) {\n const children: VNode[] = []\n\n for (const slot in slots) {\n if (slots.hasOwnProperty(slot)) {\n children.push(h('template', { slot }, slots[slot]))\n }\n }\n\n return children\n}\n","// Styles\nimport './VDataTableHeader.sass'\n\n// Components\nimport VDataTableHeaderMobile from './VDataTableHeaderMobile'\nimport VDataTableHeaderDesktop from './VDataTableHeaderDesktop'\n\n// Mixins\nimport header from './mixins/header'\n\n// Utilities\nimport dedupeModelListeners from '../../util/dedupeModelListeners'\nimport mergeData from '../../util/mergeData'\nimport rebuildSlots from '../../util/rebuildFunctionalSlots'\n\n// Types\nimport Vue from 'vue'\n\n/* @vue/component */\nexport default Vue.extend({\n name: 'v-data-table-header',\n\n functional: true,\n\n props: {\n ...header.options.props,\n mobile: Boolean,\n },\n\n render (h, { props, data, slots }) {\n dedupeModelListeners(data)\n const children = rebuildSlots(slots(), h)\n\n data = mergeData(data, { props })\n\n if (props.mobile) {\n return h(VDataTableHeaderMobile, data, children)\n } else {\n return h(VDataTableHeaderDesktop, data, children)\n }\n },\n})\n","// Types\nimport Vue, { VNode, PropType } from 'vue'\nimport { DataTableHeader } from 'vuetify/types'\n\n// Utils\nimport { getObjectValueByPath } from '../../util/helpers'\n\nexport default Vue.extend({\n name: 'row',\n\n functional: true,\n\n props: {\n headers: Array as PropType,\n index: Number,\n item: Object,\n rtl: Boolean,\n },\n\n render (h, { props, slots, data }): VNode {\n const computedSlots = slots()\n\n const columns: VNode[] = props.headers.map((header: DataTableHeader) => {\n const children = []\n const value = getObjectValueByPath(props.item, header.value)\n\n const slotName = header.value\n const scopedSlot = data.scopedSlots && data.scopedSlots[slotName]\n const regularSlot = computedSlots[slotName]\n\n if (scopedSlot) {\n children.push(scopedSlot({\n item: props.item,\n isMobile: false,\n header,\n index: props.index,\n value,\n }))\n } else if (regularSlot) {\n children.push(regularSlot)\n } else {\n children.push(value == null ? value : String(value))\n }\n\n const textAlign = `text-${header.align || 'start'}`\n\n return h('td', {\n class: [\n textAlign,\n header.cellClass,\n {\n 'v-data-table__divider': header.divider,\n },\n ],\n }, children)\n })\n\n return h('tr', data, columns)\n },\n})\n","import Vue, { VNode } from 'vue'\n\nexport default Vue.extend({\n name: 'row-group',\n\n functional: true,\n\n props: {\n value: {\n type: Boolean,\n default: true,\n },\n headerClass: {\n type: String,\n default: 'v-row-group__header',\n },\n contentClass: String,\n summaryClass: {\n type: String,\n default: 'v-row-group__summary',\n },\n },\n\n render (h, { slots, props }): VNode {\n const computedSlots = slots()\n const children = []\n\n if (computedSlots['column.header']) {\n children.push(h('tr', {\n staticClass: props.headerClass,\n }, computedSlots['column.header']))\n } else if (computedSlots['row.header']) {\n children.push(...computedSlots['row.header'])\n }\n\n if (computedSlots['row.content'] && props.value) children.push(...computedSlots['row.content'])\n\n if (computedSlots['column.summary']) {\n children.push(h('tr', {\n staticClass: props.summaryClass,\n }, computedSlots['column.summary']))\n } else if (computedSlots['row.summary']) {\n children.push(...computedSlots['row.summary'])\n }\n\n return children as any\n },\n})\n","import './VSimpleTable.sass'\n\nimport { convertToUnit } from '../../util/helpers'\nimport Themeable from '../../mixins/themeable'\nimport mixins from '../../util/mixins'\nimport { VNode } from 'vue'\n\nexport default mixins(Themeable).extend({\n name: 'v-simple-table',\n\n props: {\n dense: Boolean,\n fixedHeader: Boolean,\n height: [Number, String],\n },\n\n computed: {\n classes (): Record {\n return {\n 'v-data-table--dense': this.dense,\n 'v-data-table--fixed-height': !!this.height && !this.fixedHeader,\n 'v-data-table--fixed-header': this.fixedHeader,\n 'v-data-table--has-top': !!this.$slots.top,\n 'v-data-table--has-bottom': !!this.$slots.bottom,\n ...this.themeClasses,\n }\n },\n },\n\n methods: {\n genWrapper () {\n return this.$slots.wrapper || this.$createElement('div', {\n staticClass: 'v-data-table__wrapper',\n style: {\n height: convertToUnit(this.height),\n },\n }, [\n this.$createElement('table', this.$slots.default),\n ])\n },\n },\n\n render (h): VNode {\n return h('div', {\n staticClass: 'v-data-table',\n class: this.classes,\n }, [\n this.$slots.top,\n this.genWrapper(),\n this.$slots.bottom,\n ])\n },\n})\n","import Vue, { VNode, PropType } from 'vue'\nimport { getObjectValueByPath } from '../../util/helpers'\nimport { DataTableHeader } from 'vuetify/types'\n\nexport default Vue.extend({\n name: 'row',\n\n functional: true,\n\n props: {\n headers: Array as PropType,\n hideDefaultHeader: Boolean,\n index: Number,\n item: Object,\n rtl: Boolean,\n },\n\n render (h, { props, slots, data }): VNode {\n const computedSlots = slots()\n\n const columns: VNode[] = props.headers.map((header: DataTableHeader) => {\n const classes = {\n 'v-data-table__mobile-row': true,\n }\n\n const children = []\n const value = getObjectValueByPath(props.item, header.value)\n\n const slotName = header.value\n const scopedSlot = data.scopedSlots && data.scopedSlots[slotName]\n const regularSlot = computedSlots[slotName]\n\n if (scopedSlot) {\n children.push(scopedSlot({\n item: props.item,\n isMobile: true,\n header,\n index: props.index,\n value,\n }))\n } else if (regularSlot) {\n children.push(regularSlot)\n } else {\n children.push(value == null ? value : String(value))\n }\n\n const mobileRowChildren = [\n h('div', {\n staticClass: 'v-data-table__mobile-row__cell',\n }, children),\n ]\n\n if (header.value !== 'dataTableSelect' && !props.hideDefaultHeader) {\n mobileRowChildren.unshift(\n h('div', {\n staticClass: 'v-data-table__mobile-row__header',\n }, [header.text])\n )\n }\n\n return h('td', { class: classes }, mobileRowChildren)\n })\n\n return h('tr', { ...data, staticClass: 'v-data-table__mobile-table-row' }, columns)\n },\n})\n","import './VDataTable.sass'\n\n// Types\nimport { VNode, VNodeChildrenArrayContents, VNodeChildren } from 'vue'\nimport { PropValidator } from 'vue/types/options'\nimport {\n DataTableHeader,\n DataTableFilterFunction,\n DataScopeProps,\n DataOptions,\n DataPagination,\n DataTableCompareFunction,\n DataItemsPerPageOption,\n ItemGroup,\n RowClassFunction,\n DataTableItemProps,\n} from 'vuetify/types'\n\n// Components\nimport { VData } from '../VData'\nimport { VDataFooter, VDataIterator } from '../VDataIterator'\nimport VBtn from '../VBtn'\nimport VDataTableHeader from './VDataTableHeader'\n// import VVirtualTable from './VVirtualTable'\nimport VIcon from '../VIcon'\nimport Row from './Row'\nimport RowGroup from './RowGroup'\nimport VSimpleCheckbox from '../VCheckbox/VSimpleCheckbox'\nimport VSimpleTable from './VSimpleTable'\nimport MobileRow from './MobileRow'\n\n// Mixins\nimport Loadable from '../../mixins/loadable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Helpers\nimport mixins from '../../util/mixins'\nimport { deepEqual, getObjectValueByPath, getPrefixedScopedSlots, getSlot, defaultFilter, camelizeObjectKeys, getPropertyFromItem } from '../../util/helpers'\nimport { breaking } from '../../util/console'\nimport { mergeClasses } from '../../util/mergeData'\n\nfunction filterFn (item: any, search: string | null, filter: DataTableFilterFunction) {\n return (header: DataTableHeader) => {\n const value = getObjectValueByPath(item, header.value)\n return header.filter ? header.filter(value, search, item) : filter(value, search, item)\n }\n}\n\nfunction searchTableItems (\n items: any[],\n search: string | null,\n headersWithCustomFilters: DataTableHeader[],\n headersWithoutCustomFilters: DataTableHeader[],\n customFilter: DataTableFilterFunction\n) {\n search = typeof search === 'string' ? search.trim() : null\n\n return items.filter(item => {\n // Headers with custom filters are evaluated whether or not a search term has been provided.\n // We need to match every filter to be included in the results.\n const matchesColumnFilters = headersWithCustomFilters.every(filterFn(item, search, defaultFilter))\n\n // Headers without custom filters are only filtered by the `search` property if it is defined.\n // We only need a single column to match the search term to be included in the results.\n const matchesSearchTerm = !search || headersWithoutCustomFilters.some(filterFn(item, search, customFilter))\n\n return matchesColumnFilters && matchesSearchTerm\n })\n}\n\n/* @vue/component */\nexport default mixins(\n VDataIterator,\n Loadable,\n).extend({\n name: 'v-data-table',\n\n // https://github.com/vuejs/vue/issues/6872\n directives: {\n ripple,\n },\n\n props: {\n headers: {\n type: Array,\n default: () => [],\n } as PropValidator,\n showSelect: Boolean,\n checkboxColor: String,\n showExpand: Boolean,\n showGroupBy: Boolean,\n // TODO: Fix\n // virtualRows: Boolean,\n height: [Number, String],\n hideDefaultHeader: Boolean,\n caption: String,\n dense: Boolean,\n headerProps: Object,\n calculateWidths: Boolean,\n fixedHeader: Boolean,\n headersLength: Number,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n customFilter: {\n type: Function,\n default: defaultFilter,\n } as PropValidator,\n itemClass: {\n type: [String, Function],\n default: () => '',\n } as PropValidator,\n loaderHeight: {\n type: [Number, String],\n default: 4,\n },\n },\n\n data () {\n return {\n internalGroupBy: [] as string[],\n openCache: {} as { [key: string]: boolean },\n widths: [] as number[],\n }\n },\n\n computed: {\n computedHeaders (): DataTableHeader[] {\n if (!this.headers) return []\n const headers = this.headers.filter(h => h.value === undefined || !this.internalGroupBy.find(v => v === h.value))\n const defaultHeader = { text: '', sortable: false, width: '1px' }\n\n if (this.showSelect) {\n const index = headers.findIndex(h => h.value === 'data-table-select')\n if (index < 0) headers.unshift({ ...defaultHeader, value: 'data-table-select' })\n else headers.splice(index, 1, { ...defaultHeader, ...headers[index] })\n }\n\n if (this.showExpand) {\n const index = headers.findIndex(h => h.value === 'data-table-expand')\n if (index < 0) headers.unshift({ ...defaultHeader, value: 'data-table-expand' })\n else headers.splice(index, 1, { ...defaultHeader, ...headers[index] })\n }\n\n return headers\n },\n colspanAttrs (): object | undefined {\n return this.isMobile ? undefined : {\n colspan: this.headersLength || this.computedHeaders.length,\n }\n },\n columnSorters (): Record {\n return this.computedHeaders.reduce>((acc, header) => {\n if (header.sort) acc[header.value] = header.sort\n return acc\n }, {})\n },\n headersWithCustomFilters (): DataTableHeader[] {\n return this.headers.filter(header => header.filter && (!header.hasOwnProperty('filterable') || header.filterable === true))\n },\n headersWithoutCustomFilters (): DataTableHeader[] {\n return this.headers.filter(header => !header.filter && (!header.hasOwnProperty('filterable') || header.filterable === true))\n },\n sanitizedHeaderProps (): Record {\n return camelizeObjectKeys(this.headerProps)\n },\n computedItemsPerPage (): number {\n const itemsPerPage = this.options && this.options.itemsPerPage ? this.options.itemsPerPage : this.itemsPerPage\n const itemsPerPageOptions: DataItemsPerPageOption[] | undefined = this.sanitizedFooterProps.itemsPerPageOptions\n\n if (\n itemsPerPageOptions &&\n !itemsPerPageOptions.find(item => typeof item === 'number' ? item === itemsPerPage : item.value === itemsPerPage)\n ) {\n const firstOption = itemsPerPageOptions[0]\n return typeof firstOption === 'object' ? firstOption.value : firstOption\n }\n\n return itemsPerPage\n },\n },\n\n created () {\n const breakingProps = [\n ['sort-icon', 'header-props.sort-icon'],\n ['hide-headers', 'hide-default-header'],\n ['select-all', 'show-select'],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n mounted () {\n // if ((!this.sortBy || !this.sortBy.length) && (!this.options.sortBy || !this.options.sortBy.length)) {\n // const firstSortable = this.headers.find(h => !('sortable' in h) || !!h.sortable)\n // if (firstSortable) this.updateOptions({ sortBy: [firstSortable.value], sortDesc: [false] })\n // }\n\n if (this.calculateWidths) {\n window.addEventListener('resize', this.calcWidths)\n this.calcWidths()\n }\n },\n\n beforeDestroy () {\n if (this.calculateWidths) {\n window.removeEventListener('resize', this.calcWidths)\n }\n },\n\n methods: {\n calcWidths () {\n this.widths = Array.from(this.$el.querySelectorAll('th')).map(e => e.clientWidth)\n },\n customFilterWithColumns (items: any[], search: string) {\n return searchTableItems(items, search, this.headersWithCustomFilters, this.headersWithoutCustomFilters, this.customFilter)\n },\n customSortWithHeaders (items: any[], sortBy: string[], sortDesc: boolean[], locale: string) {\n return this.customSort(items, sortBy, sortDesc, locale, this.columnSorters)\n },\n createItemProps (item: any, index: number): DataTableItemProps {\n const props = VDataIterator.options.methods.createItemProps.call(this, item, index)\n\n return Object.assign(props, { headers: this.computedHeaders })\n },\n genCaption (props: DataScopeProps) {\n if (this.caption) return [this.$createElement('caption', [this.caption])]\n\n return getSlot(this, 'caption', props, true)\n },\n genColgroup (props: DataScopeProps) {\n return this.$createElement('colgroup', this.computedHeaders.map(header => {\n return this.$createElement('col', {\n class: {\n divider: header.divider,\n },\n })\n }))\n },\n genLoading () {\n const th = this.$createElement('th', {\n staticClass: 'column',\n attrs: this.colspanAttrs,\n }, [this.genProgress()])\n\n const tr = this.$createElement('tr', {\n staticClass: 'v-data-table__progress',\n }, [th])\n\n return this.$createElement('thead', [tr])\n },\n genHeaders (props: DataScopeProps) {\n const data = {\n props: {\n ...this.sanitizedHeaderProps,\n headers: this.computedHeaders,\n options: props.options,\n mobile: this.isMobile,\n showGroupBy: this.showGroupBy,\n checkboxColor: this.checkboxColor,\n someItems: this.someItems,\n everyItem: this.everyItem,\n singleSelect: this.singleSelect,\n disableSort: this.disableSort,\n },\n on: {\n sort: props.sort,\n group: props.group,\n 'toggle-select-all': this.toggleSelectAll,\n },\n }\n\n // TODO: rename to 'head'? (thead, tbody, tfoot)\n const children: VNodeChildrenArrayContents = [getSlot(this, 'header', {\n ...data,\n isMobile: this.isMobile,\n })]\n\n if (!this.hideDefaultHeader) {\n const scopedSlots = getPrefixedScopedSlots('header.', this.$scopedSlots)\n children.push(this.$createElement(VDataTableHeader, {\n ...data,\n scopedSlots,\n }))\n }\n\n if (this.loading) children.push(this.genLoading())\n\n return children\n },\n genEmptyWrapper (content: VNodeChildrenArrayContents) {\n return this.$createElement('tr', {\n staticClass: 'v-data-table__empty-wrapper',\n }, [\n this.$createElement('td', {\n attrs: this.colspanAttrs,\n }, content),\n ])\n },\n genItems (items: any[], props: DataScopeProps) {\n const empty = this.genEmpty(props.originalItemsLength, props.pagination.itemsLength)\n if (empty) return [empty]\n\n return props.groupedItems\n ? this.genGroupedRows(props.groupedItems, props)\n : this.genRows(items, props)\n },\n genGroupedRows (groupedItems: ItemGroup[], props: DataScopeProps) {\n return groupedItems.map(group => {\n if (!this.openCache.hasOwnProperty(group.name)) this.$set(this.openCache, group.name, true)\n\n if (this.$scopedSlots.group) {\n return this.$scopedSlots.group({\n group: group.name,\n options: props.options,\n isMobile: this.isMobile,\n items: group.items,\n headers: this.computedHeaders,\n })\n } else {\n return this.genDefaultGroupedRow(group.name, group.items, props)\n }\n })\n },\n genDefaultGroupedRow (group: string, items: any[], props: DataScopeProps) {\n const isOpen = !!this.openCache[group]\n const children: VNodeChildren = [\n this.$createElement('template', { slot: 'row.content' }, this.genRows(items, props)),\n ]\n const toggleFn = () => this.$set(this.openCache, group, !this.openCache[group])\n const removeFn = () => props.updateOptions({ groupBy: [], groupDesc: [] })\n\n if (this.$scopedSlots['group.header']) {\n children.unshift(this.$createElement('template', { slot: 'column.header' }, [\n this.$scopedSlots['group.header']!({\n group,\n groupBy: props.options.groupBy,\n isMobile: this.isMobile,\n items,\n headers: this.computedHeaders,\n isOpen,\n toggle: toggleFn,\n remove: removeFn,\n }),\n ]))\n } else {\n const toggle = this.$createElement(VBtn, {\n staticClass: 'ma-0',\n props: {\n icon: true,\n small: true,\n },\n on: {\n click: toggleFn,\n },\n }, [this.$createElement(VIcon, [isOpen ? '$minus' : '$plus'])])\n\n const remove = this.$createElement(VBtn, {\n staticClass: 'ma-0',\n props: {\n icon: true,\n small: true,\n },\n on: {\n click: removeFn,\n },\n }, [this.$createElement(VIcon, ['$close'])])\n\n const column = this.$createElement('td', {\n staticClass: 'text-start',\n attrs: this.colspanAttrs,\n }, [toggle, `${props.options.groupBy[0]}: ${group}`, remove])\n\n children.unshift(this.$createElement('template', { slot: 'column.header' }, [column]))\n }\n\n if (this.$scopedSlots['group.summary']) {\n children.push(this.$createElement('template', { slot: 'column.summary' }, [\n this.$scopedSlots['group.summary']!({\n group,\n groupBy: props.options.groupBy,\n isMobile: this.isMobile,\n items,\n headers: this.computedHeaders,\n isOpen,\n toggle: toggleFn,\n }),\n ]))\n }\n\n return this.$createElement(RowGroup, {\n key: group,\n props: {\n value: isOpen,\n },\n }, children)\n },\n genRows (items: any[], props: DataScopeProps) {\n return this.$scopedSlots.item ? this.genScopedRows(items, props) : this.genDefaultRows(items, props)\n },\n genScopedRows (items: any[], props: DataScopeProps) {\n const rows = []\n\n for (let i = 0; i < items.length; i++) {\n const item = items[i]\n rows.push(this.$scopedSlots.item!({\n ...this.createItemProps(item, i),\n isMobile: this.isMobile,\n }))\n\n if (this.isExpanded(item)) {\n rows.push(this.$scopedSlots['expanded-item']!({\n headers: this.computedHeaders,\n isMobile: this.isMobile,\n index: i,\n item,\n }))\n }\n }\n\n return rows\n },\n genDefaultRows (items: any[], props: DataScopeProps) {\n return this.$scopedSlots['expanded-item']\n ? items.map((item, index) => this.genDefaultExpandedRow(item, index))\n : items.map((item, index) => this.genDefaultSimpleRow(item, index))\n },\n genDefaultExpandedRow (item: any, index: number): VNode {\n const isExpanded = this.isExpanded(item)\n const classes = {\n 'v-data-table__expanded v-data-table__expanded__row': isExpanded,\n }\n const headerRow = this.genDefaultSimpleRow(item, index, classes)\n const expandedRow = this.$createElement('tr', {\n staticClass: 'v-data-table__expanded v-data-table__expanded__content',\n }, [this.$scopedSlots['expanded-item']!({\n headers: this.computedHeaders,\n isMobile: this.isMobile,\n item,\n })])\n\n return this.$createElement(RowGroup, {\n props: {\n value: isExpanded,\n },\n }, [\n this.$createElement('template', { slot: 'row.header' }, [headerRow]),\n this.$createElement('template', { slot: 'row.content' }, [expandedRow]),\n ])\n },\n genDefaultSimpleRow (item: any, index: number, classes: Record = {}): VNode {\n const scopedSlots = getPrefixedScopedSlots('item.', this.$scopedSlots)\n\n const data = this.createItemProps(item, index)\n\n if (this.showSelect) {\n const slot = scopedSlots['data-table-select']\n scopedSlots['data-table-select'] = slot ? () => slot({\n ...data,\n isMobile: this.isMobile,\n }) : () => this.$createElement(VSimpleCheckbox, {\n staticClass: 'v-data-table__checkbox',\n props: {\n value: data.isSelected,\n disabled: !this.isSelectable(item),\n color: this.checkboxColor ?? '',\n },\n on: {\n input: (val: boolean) => data.select(val),\n },\n })\n }\n\n if (this.showExpand) {\n const slot = scopedSlots['data-table-expand']\n scopedSlots['data-table-expand'] = slot ? () => slot(data) : () => this.$createElement(VIcon, {\n staticClass: 'v-data-table__expand-icon',\n class: {\n 'v-data-table__expand-icon--active': data.isExpanded,\n },\n on: {\n click: (e: MouseEvent) => {\n e.stopPropagation()\n data.expand(!data.isExpanded)\n },\n },\n }, [this.expandIcon])\n }\n\n return this.$createElement(this.isMobile ? MobileRow : Row, {\n key: getObjectValueByPath(item, this.itemKey),\n class: mergeClasses(\n { ...classes, 'v-data-table__selected': data.isSelected },\n getPropertyFromItem(item, this.itemClass)\n ),\n props: {\n headers: this.computedHeaders,\n hideDefaultHeader: this.hideDefaultHeader,\n index,\n item,\n rtl: this.$vuetify.rtl,\n },\n scopedSlots,\n on: {\n // TODO: for click, the first argument should be the event, and the second argument should be data,\n // but this is a breaking change so it's for v3\n click: () => this.$emit('click:row', item, data),\n contextmenu: (event: MouseEvent) => this.$emit('contextmenu:row', event, data),\n dblclick: (event: MouseEvent) => this.$emit('dblclick:row', event, data),\n },\n })\n },\n genBody (props: DataScopeProps): VNode | string | VNodeChildren {\n const data = {\n ...props,\n expand: this.expand,\n headers: this.computedHeaders,\n isExpanded: this.isExpanded,\n isMobile: this.isMobile,\n isSelected: this.isSelected,\n select: this.select,\n }\n\n if (this.$scopedSlots.body) {\n return this.$scopedSlots.body!(data)\n }\n\n return this.$createElement('tbody', [\n getSlot(this, 'body.prepend', data, true),\n this.genItems(props.items, props),\n getSlot(this, 'body.append', data, true),\n ])\n },\n genFoot (props: DataScopeProps): VNode[] | undefined {\n return this.$scopedSlots.foot?.(props)\n },\n genFooters (props: DataScopeProps) {\n const data = {\n props: {\n options: props.options,\n pagination: props.pagination,\n itemsPerPageText: '$vuetify.dataTable.itemsPerPageText',\n ...this.sanitizedFooterProps,\n },\n on: {\n 'update:options': (value: any) => props.updateOptions(value),\n },\n widths: this.widths,\n headers: this.computedHeaders,\n }\n\n const children: VNodeChildren = [\n getSlot(this, 'footer', data, true),\n ]\n\n if (!this.hideDefaultFooter) {\n children.push(this.$createElement(VDataFooter, {\n ...data,\n scopedSlots: getPrefixedScopedSlots('footer.', this.$scopedSlots),\n }))\n }\n\n return children\n },\n genDefaultScopedSlot (props: DataScopeProps): VNode {\n const simpleProps = {\n height: this.height,\n fixedHeader: this.fixedHeader,\n dense: this.dense,\n }\n\n // if (this.virtualRows) {\n // return this.$createElement(VVirtualTable, {\n // props: Object.assign(simpleProps, {\n // items: props.items,\n // height: this.height,\n // rowHeight: this.dense ? 24 : 48,\n // headerHeight: this.dense ? 32 : 48,\n // // TODO: expose rest of props from virtual table?\n // }),\n // scopedSlots: {\n // items: ({ items }) => this.genItems(items, props) as any,\n // },\n // }, [\n // this.proxySlot('body.before', [this.genCaption(props), this.genHeaders(props)]),\n // this.proxySlot('bottom', this.genFooters(props)),\n // ])\n // }\n\n return this.$createElement(VSimpleTable, {\n props: simpleProps,\n class: {\n 'v-data-table--mobile': this.isMobile,\n },\n }, [\n this.proxySlot('top', getSlot(this, 'top', {\n ...props,\n isMobile: this.isMobile,\n }, true)),\n this.genCaption(props),\n this.genColgroup(props),\n this.genHeaders(props),\n this.genBody(props),\n this.genFoot(props),\n this.proxySlot('bottom', this.genFooters(props)),\n ])\n },\n proxySlot (slot: string, content: VNodeChildren) {\n return this.$createElement('template', { slot }, content)\n },\n },\n\n render (): VNode {\n return this.$createElement(VData, {\n props: {\n ...this.$props,\n customFilter: this.customFilterWithColumns,\n customSort: this.customSortWithHeaders,\n itemsPerPage: this.computedItemsPerPage,\n },\n on: {\n 'update:options': (v: DataOptions, old: DataOptions) => {\n this.internalGroupBy = v.groupBy || []\n !deepEqual(v, old) && this.$emit('update:options', v)\n },\n 'update:page': (v: number) => this.$emit('update:page', v),\n 'update:items-per-page': (v: number) => this.$emit('update:items-per-page', v),\n 'update:sort-by': (v: string | string[]) => this.$emit('update:sort-by', v),\n 'update:sort-desc': (v: boolean | boolean[]) => this.$emit('update:sort-desc', v),\n 'update:group-by': (v: string | string[]) => this.$emit('update:group-by', v),\n 'update:group-desc': (v: boolean | boolean[]) => this.$emit('update:group-desc', v),\n pagination: (v: DataPagination, old: DataPagination) => !deepEqual(v, old) && this.$emit('pagination', v),\n 'current-items': (v: any[]) => {\n this.internalCurrentItems = v\n this.$emit('current-items', v)\n },\n 'page-count': (v: number) => this.$emit('page-count', v),\n },\n scopedSlots: {\n default: this.genDefaultScopedSlot,\n },\n })\n },\n})\n","import { render, staticRenderFns } from \"./BulkScanning.vue?vue&type=template&id=5f65e8e8&scoped=true&\"\nimport script from \"./BulkScanning.vue?vue&type=script&lang=js&\"\nexport * from \"./BulkScanning.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BulkScanning.vue?vue&type=style&index=0&id=5f65e8e8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5f65e8e8\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardActions } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCardTitle } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VDataTable } from 'vuetify/lib/components/VDataTable';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSelect } from 'vuetify/lib/components/VSelect';\nimport { VSlider } from 'vuetify/lib/components/VSlider';\nimport { VSnackbar } from 'vuetify/lib/components/VSnackbar';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VSwitch } from 'vuetify/lib/components/VSwitch';\nimport { VTextField } from 'vuetify/lib/components/VTextField';\nimport { VTooltip } from 'vuetify/lib/components/VTooltip';\ninstallComponents(component, {VBtn,VCard,VCardActions,VCardText,VCardTitle,VCol,VDataTable,VDialog,VIcon,VRow,VSelect,VSlider,VSnackbar,VSpacer,VSwitch,VTextField,VTooltip})\n","import VBtn from './VBtn'\n\nexport { VBtn }\nexport default VBtn\n","import './VSlider.sass'\n\n// Components\nimport VInput from '../VInput'\nimport { VScaleTransition } from '../transitions'\n\n// Mixins\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport Loadable from '../../mixins/loadable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Helpers\nimport { addOnceEventListener, deepEqual, keyCodes, createRange, convertToUnit, passiveSupported } from '../../util/helpers'\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport Vue, { VNode, VNodeChildrenArrayContents, PropType } from 'vue'\nimport { ScopedSlotChildren } from 'vue/types/vnode'\nimport { PropValidator } from 'vue/types/options'\n\ninterface options extends Vue {\n $refs: {\n track: HTMLElement\n }\n}\n\nexport default mixins\n/* eslint-enable indent */\n>(\n VInput,\n Loadable\n/* @vue/component */\n).extend({\n name: 'v-slider',\n\n directives: {\n ClickOutside,\n },\n\n mixins: [Loadable],\n\n props: {\n disabled: Boolean,\n inverseLabel: Boolean,\n max: {\n type: [Number, String],\n default: 100,\n },\n min: {\n type: [Number, String],\n default: 0,\n },\n step: {\n type: [Number, String],\n default: 1,\n },\n thumbColor: String,\n thumbLabel: {\n type: [Boolean, String] as PropType,\n default: undefined,\n validator: v => typeof v === 'boolean' || v === 'always',\n },\n thumbSize: {\n type: [Number, String],\n default: 32,\n },\n tickLabels: {\n type: Array,\n default: () => ([]),\n } as PropValidator,\n ticks: {\n type: [Boolean, String] as PropType,\n default: false,\n validator: v => typeof v === 'boolean' || v === 'always',\n },\n tickSize: {\n type: [Number, String],\n default: 2,\n },\n trackColor: String,\n trackFillColor: String,\n value: [Number, String],\n vertical: Boolean,\n },\n\n data: () => ({\n app: null as any,\n oldValue: null as any,\n thumbPressed: false,\n mouseTimeout: -1,\n isFocused: false,\n isActive: false,\n noClick: false, // Prevent click event if dragging took place, hack for #7915\n startOffset: 0,\n }),\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-input__slider': true,\n 'v-input__slider--vertical': this.vertical,\n 'v-input__slider--inverse-label': this.inverseLabel,\n }\n },\n internalValue: {\n get (): number {\n return this.lazyValue\n },\n set (val: number) {\n val = isNaN(val) ? this.minValue : val\n // Round value to ensure the\n // entire slider range can\n // be selected with step\n const value = this.roundValue(Math.min(Math.max(val, this.minValue), this.maxValue))\n\n if (value === this.lazyValue) return\n\n this.lazyValue = value\n\n this.$emit('input', value)\n },\n },\n trackTransition (): string {\n return this.thumbPressed\n ? this.showTicks || this.stepNumeric\n ? '0.1s cubic-bezier(0.25, 0.8, 0.5, 1)'\n : 'none'\n : ''\n },\n minValue (): number {\n return parseFloat(this.min)\n },\n maxValue (): number {\n return parseFloat(this.max)\n },\n stepNumeric (): number {\n return this.step > 0 ? parseFloat(this.step) : 0\n },\n inputWidth (): number {\n const inputWidth = (this.roundValue(this.internalValue) - this.minValue) / (this.maxValue - this.minValue) * 100\n\n return isNaN(inputWidth) ? 0 : inputWidth\n },\n trackFillStyles (): Partial {\n const startDir = this.vertical ? 'bottom' : 'left'\n const endDir = this.vertical ? 'top' : 'right'\n const valueDir = this.vertical ? 'height' : 'width'\n\n const start = this.$vuetify.rtl ? 'auto' : '0'\n const end = this.$vuetify.rtl ? '0' : 'auto'\n const value = this.isDisabled ? `calc(${this.inputWidth}% - 10px)` : `${this.inputWidth}%`\n\n return {\n transition: this.trackTransition,\n [startDir]: start,\n [endDir]: end,\n [valueDir]: value,\n }\n },\n trackStyles (): Partial {\n const startDir = this.vertical ? this.$vuetify.rtl ? 'bottom' : 'top' : this.$vuetify.rtl ? 'left' : 'right'\n const endDir = this.vertical ? 'height' : 'width'\n\n const start = '0px'\n const end = this.isDisabled ? `calc(${100 - this.inputWidth}% - 10px)` : `calc(${100 - this.inputWidth}%)`\n\n return {\n transition: this.trackTransition,\n [startDir]: start,\n [endDir]: end,\n }\n },\n showTicks (): boolean {\n return this.tickLabels.length > 0 ||\n !!(!this.isDisabled && this.stepNumeric && this.ticks)\n },\n numTicks (): number {\n return Math.ceil((this.maxValue - this.minValue) / this.stepNumeric)\n },\n showThumbLabel (): boolean {\n return !this.isDisabled && !!(\n this.thumbLabel ||\n this.$scopedSlots['thumb-label']\n )\n },\n computedTrackColor (): string | undefined {\n if (this.isDisabled) return undefined\n if (this.trackColor) return this.trackColor\n if (this.isDark) return this.validationState\n return this.validationState || 'primary lighten-3'\n },\n computedTrackFillColor (): string | undefined {\n if (this.isDisabled) return undefined\n if (this.trackFillColor) return this.trackFillColor\n return this.validationState || this.computedColor\n },\n computedThumbColor (): string | undefined {\n if (this.thumbColor) return this.thumbColor\n return this.validationState || this.computedColor\n },\n },\n\n watch: {\n min (val) {\n const parsed = parseFloat(val)\n parsed > this.internalValue && this.$emit('input', parsed)\n },\n max (val) {\n const parsed = parseFloat(val)\n parsed < this.internalValue && this.$emit('input', parsed)\n },\n value: {\n handler (v: number) {\n this.internalValue = v\n },\n },\n },\n\n // If done in as immediate in\n // value watcher, causes issues\n // with vue-test-utils\n beforeMount () {\n this.internalValue = this.value\n },\n\n mounted () {\n // Without a v-app, iOS does not work with body selectors\n this.app = document.querySelector('[data-app]') ||\n consoleWarn('Missing v-app or a non-body wrapping element with the [data-app] attribute', this)\n },\n\n methods: {\n genDefaultSlot (): VNodeChildrenArrayContents {\n const children: VNodeChildrenArrayContents = [this.genLabel()]\n const slider = this.genSlider()\n this.inverseLabel\n ? children.unshift(slider)\n : children.push(slider)\n\n children.push(this.genProgress())\n\n return children\n },\n genSlider (): VNode {\n return this.$createElement('div', {\n class: {\n 'v-slider': true,\n 'v-slider--horizontal': !this.vertical,\n 'v-slider--vertical': this.vertical,\n 'v-slider--focused': this.isFocused,\n 'v-slider--active': this.isActive,\n 'v-slider--disabled': this.isDisabled,\n 'v-slider--readonly': this.isReadonly,\n ...this.themeClasses,\n },\n directives: [{\n name: 'click-outside',\n value: this.onBlur,\n }],\n on: {\n click: this.onSliderClick,\n mousedown: this.onSliderMouseDown,\n touchstart: this.onSliderMouseDown,\n },\n }, this.genChildren())\n },\n genChildren (): VNodeChildrenArrayContents {\n return [\n this.genInput(),\n this.genTrackContainer(),\n this.genSteps(),\n this.genThumbContainer(\n this.internalValue,\n this.inputWidth,\n this.isActive,\n this.isFocused,\n this.onFocus,\n this.onBlur,\n ),\n ]\n },\n genInput (): VNode {\n return this.$createElement('input', {\n attrs: {\n value: this.internalValue,\n id: this.computedId,\n disabled: true,\n readonly: true,\n tabindex: -1,\n ...this.$attrs,\n },\n // on: this.genListeners(), // TODO: do we need to attach the listeners to input?\n })\n },\n genTrackContainer (): VNode {\n const children = [\n this.$createElement('div', this.setBackgroundColor(this.computedTrackColor, {\n staticClass: 'v-slider__track-background',\n style: this.trackStyles,\n })),\n this.$createElement('div', this.setBackgroundColor(this.computedTrackFillColor, {\n staticClass: 'v-slider__track-fill',\n style: this.trackFillStyles,\n })),\n ]\n\n return this.$createElement('div', {\n staticClass: 'v-slider__track-container',\n ref: 'track',\n }, children)\n },\n genSteps (): VNode | null {\n if (!this.step || !this.showTicks) return null\n\n const tickSize = parseFloat(this.tickSize)\n const range = createRange(this.numTicks + 1)\n const direction = this.vertical ? 'bottom' : (this.$vuetify.rtl ? 'right' : 'left')\n const offsetDirection = this.vertical ? (this.$vuetify.rtl ? 'left' : 'right') : 'top'\n\n if (this.vertical) range.reverse()\n\n const ticks = range.map(index => {\n const children = []\n\n if (this.tickLabels[index]) {\n children.push(this.$createElement('div', {\n staticClass: 'v-slider__tick-label',\n }, this.tickLabels[index]))\n }\n\n const width = index * (100 / this.numTicks)\n const filled = this.$vuetify.rtl ? (100 - this.inputWidth) < width : width < this.inputWidth\n\n return this.$createElement('span', {\n key: index,\n staticClass: 'v-slider__tick',\n class: {\n 'v-slider__tick--filled': filled,\n },\n style: {\n width: `${tickSize}px`,\n height: `${tickSize}px`,\n [direction]: `calc(${width}% - ${tickSize / 2}px)`,\n [offsetDirection]: `calc(50% - ${tickSize / 2}px)`,\n },\n }, children)\n })\n\n return this.$createElement('div', {\n staticClass: 'v-slider__ticks-container',\n class: {\n 'v-slider__ticks-container--always-show': this.ticks === 'always' || this.tickLabels.length > 0,\n },\n }, ticks)\n },\n genThumbContainer (\n value: number,\n valueWidth: number,\n isActive: boolean,\n isFocused: boolean,\n onFocus: Function,\n onBlur: Function,\n ref = 'thumb'\n ): VNode {\n const children = [this.genThumb()]\n\n const thumbLabelContent = this.genThumbLabelContent(value)\n this.showThumbLabel && children.push(this.genThumbLabel(thumbLabelContent))\n\n return this.$createElement('div', this.setTextColor(this.computedThumbColor, {\n ref,\n key: ref,\n staticClass: 'v-slider__thumb-container',\n class: {\n 'v-slider__thumb-container--active': isActive,\n 'v-slider__thumb-container--focused': isFocused,\n 'v-slider__thumb-container--show-label': this.showThumbLabel,\n },\n style: this.getThumbContainerStyles(valueWidth),\n attrs: {\n role: 'slider',\n tabindex: this.isDisabled ? -1 : this.$attrs.tabindex ? this.$attrs.tabindex : 0,\n 'aria-label': this.$attrs['aria-label'] || this.label,\n 'aria-valuemin': this.min,\n 'aria-valuemax': this.max,\n 'aria-valuenow': this.internalValue,\n 'aria-readonly': String(this.isReadonly),\n 'aria-orientation': this.vertical ? 'vertical' : 'horizontal',\n },\n on: {\n focus: onFocus,\n blur: onBlur,\n keydown: this.onKeyDown,\n },\n }), children)\n },\n genThumbLabelContent (value: number | string): ScopedSlotChildren {\n return this.$scopedSlots['thumb-label']\n ? this.$scopedSlots['thumb-label']!({ value })\n : [this.$createElement('span', [String(value)])]\n },\n genThumbLabel (content: ScopedSlotChildren): VNode {\n const size = convertToUnit(this.thumbSize)\n\n const transform = this.vertical\n ? `translateY(20%) translateY(${(Number(this.thumbSize) / 3) - 1}px) translateX(55%) rotate(135deg)`\n : `translateY(-20%) translateY(-12px) translateX(-50%) rotate(45deg)`\n\n return this.$createElement(VScaleTransition, {\n props: { origin: 'bottom center' },\n }, [\n this.$createElement('div', {\n staticClass: 'v-slider__thumb-label-container',\n directives: [{\n name: 'show',\n value: this.isFocused || this.isActive || this.thumbLabel === 'always',\n }],\n }, [\n this.$createElement('div', this.setBackgroundColor(this.computedThumbColor, {\n staticClass: 'v-slider__thumb-label',\n style: {\n height: size,\n width: size,\n transform,\n },\n }), [this.$createElement('div', content)]),\n ]),\n ])\n },\n genThumb (): VNode {\n return this.$createElement('div', this.setBackgroundColor(this.computedThumbColor, {\n staticClass: 'v-slider__thumb',\n }))\n },\n getThumbContainerStyles (width: number): object {\n const direction = this.vertical ? 'top' : 'left'\n let value = this.$vuetify.rtl ? 100 - width : width\n value = this.vertical ? 100 - value : value\n\n return {\n transition: this.trackTransition,\n [direction]: `${value}%`,\n }\n },\n onSliderMouseDown (e: MouseEvent | TouchEvent) {\n e.preventDefault()\n\n this.oldValue = this.internalValue\n this.isActive = true\n\n if ((e.target as Element)?.matches('.v-slider__thumb-container, .v-slider__thumb-container *')) {\n this.thumbPressed = true\n const domRect = (e.target as Element).getBoundingClientRect()\n const touch = 'touches' in e ? e.touches[0] : e\n this.startOffset = this.vertical\n ? touch.clientY - (domRect.top + domRect.height / 2)\n : touch.clientX - (domRect.left + domRect.width / 2)\n } else {\n this.startOffset = 0\n window.clearTimeout(this.mouseTimeout)\n this.mouseTimeout = window.setTimeout(() => {\n this.thumbPressed = true\n }, 300)\n }\n\n const mouseUpOptions = passiveSupported ? { passive: true, capture: true } : true\n const mouseMoveOptions = passiveSupported ? { passive: true } : false\n\n const isTouchEvent = 'touches' in e\n\n this.onMouseMove(e)\n this.app.addEventListener(isTouchEvent ? 'touchmove' : 'mousemove', this.onMouseMove, mouseMoveOptions)\n addOnceEventListener(this.app, isTouchEvent ? 'touchend' : 'mouseup', this.onSliderMouseUp, mouseUpOptions)\n\n this.$emit('start', this.internalValue)\n },\n onSliderMouseUp (e: Event) {\n e.stopPropagation()\n window.clearTimeout(this.mouseTimeout)\n this.thumbPressed = false\n const mouseMoveOptions = passiveSupported ? { passive: true } : false\n this.app.removeEventListener('touchmove', this.onMouseMove, mouseMoveOptions)\n this.app.removeEventListener('mousemove', this.onMouseMove, mouseMoveOptions)\n\n this.$emit('mouseup', e)\n this.$emit('end', this.internalValue)\n if (!deepEqual(this.oldValue, this.internalValue)) {\n this.$emit('change', this.internalValue)\n this.noClick = true\n }\n\n this.isActive = false\n },\n onMouseMove (e: MouseEvent | TouchEvent) {\n if (e.type === 'mousemove') {\n this.thumbPressed = true\n }\n this.internalValue = this.parseMouseMove(e)\n },\n onKeyDown (e: KeyboardEvent) {\n if (!this.isInteractive) return\n\n const value = this.parseKeyDown(e, this.internalValue)\n\n if (\n value == null ||\n value < this.minValue ||\n value > this.maxValue\n ) return\n\n this.internalValue = value\n this.$emit('change', value)\n },\n onSliderClick (e: MouseEvent) {\n if (this.noClick) {\n this.noClick = false\n return\n }\n const thumb = this.$refs.thumb as HTMLElement\n thumb.focus()\n\n this.onMouseMove(e)\n this.$emit('change', this.internalValue)\n },\n onBlur (e: Event) {\n this.isFocused = false\n\n this.$emit('blur', e)\n },\n onFocus (e: Event) {\n this.isFocused = true\n\n this.$emit('focus', e)\n },\n parseMouseMove (e: MouseEvent | TouchEvent) {\n const start = this.vertical ? 'top' : 'left'\n const length = this.vertical ? 'height' : 'width'\n const click = this.vertical ? 'clientY' : 'clientX'\n\n const {\n [start]: trackStart,\n [length]: trackLength,\n } = this.$refs.track.getBoundingClientRect()\n const clickOffset = 'touches' in e ? e.touches[0][click] : e[click]\n\n // It is possible for left to be NaN, force to number\n let clickPos = Math.min(Math.max((clickOffset - trackStart - this.startOffset) / trackLength, 0), 1) || 0\n\n if (this.vertical) clickPos = 1 - clickPos\n if (this.$vuetify.rtl) clickPos = 1 - clickPos\n\n return parseFloat(this.min) + clickPos * (this.maxValue - this.minValue)\n },\n parseKeyDown (e: KeyboardEvent, value: number) {\n if (!this.isInteractive) return\n\n const { pageup, pagedown, end, home, left, right, down, up } = keyCodes\n\n if (![pageup, pagedown, end, home, left, right, down, up].includes(e.keyCode)) return\n\n e.preventDefault()\n const step = this.stepNumeric || 1\n const steps = (this.maxValue - this.minValue) / step\n if ([left, right, down, up].includes(e.keyCode)) {\n const increase = this.$vuetify.rtl ? [left, up] : [right, up]\n const direction = increase.includes(e.keyCode) ? 1 : -1\n const multiplier = e.shiftKey ? 3 : (e.ctrlKey ? 2 : 1)\n\n value = value + (direction * step * multiplier)\n } else if (e.keyCode === home) {\n value = this.minValue\n } else if (e.keyCode === end) {\n value = this.maxValue\n } else {\n const direction = e.keyCode === pagedown ? 1 : -1\n value = value - (direction * step * (steps > 100 ? steps / 10 : 10))\n }\n\n return value\n },\n roundValue (value: number): number {\n if (!this.stepNumeric) return value\n // Format input value using the same number\n // of decimals places as in the step prop\n const trimmedStep = this.step.toString().trim()\n const decimals = trimmedStep.indexOf('.') > -1\n ? (trimmedStep.length - trimmedStep.indexOf('.') - 1)\n : 0\n const offset = this.minValue % this.stepNumeric\n\n const newValue = Math.round((value - offset) / this.stepNumeric) * this.stepNumeric + offset\n\n return parseFloat(Math.min(newValue, this.maxValue).toFixed(decimals))\n },\n },\n})\n"],"sourceRoot":""}