{"version":3,"sources":["webpack:///./src/components/vuetifyOverrides/J1LTextFieldNumber.vue","webpack:///./src/components/vuetifyOverrides/J1LTextFieldNumber.vue?1207","webpack:///./src/components/vuetifyOverrides/J1LTextFieldNumber.vue?7946","webpack:///./src/components/vuetifyOverrides/J1LTextFieldNumber.vue?4004","webpack:///./src/helpers/WebHelper.ts","webpack:///./src/helpers/ColorHelper.ts","webpack:///./src/helpers/AuthHelper.ts","webpack:///./src/helpers/CommandHelper.ts","webpack:///./src/components/vuetifyOverrides/J1LSearch.vue","webpack:///./src/components/vuetifyOverrides/J1LSearch.vue?de1b","webpack:///./src/components/vuetifyOverrides/J1LSearch.vue?8cf0","webpack:///./src/components/vuetifyOverrides/J1LSearch.vue?808c"],"names":["_c","_self","_setup","staticClass","attrs","_vm","quantity","test","$event","default_1","_Vue","_this","_classCallCheck","_inherits","_createClass","key","value","val","this","$emit","$refs","quantityTextField","focus","newValue","parseInt","toString","replace","get","StringHelper","formatQuantity","Vue","__decorate","Watch","Component","component","staticRenderFns","DisableFormAutofill","formId","inputs","document","querySelectorAll","concat","forEach","input","setAttribute","DisableFieldAutofill","id","getElementById","Wait","func","time","arguments","length","undefined","setTimeout","ColorHelpers","getPacklistStatus","status","getInvoiceStatus","Confirm","action","confirmationTitle","confirmationText","cancelButtonText","commitButtonText","newConfirmationDialog","ConfirmationDialogInfo","store","commit","PaginationCommand","typeName","model","CurrentPage","SearchModel","dispatch","ref","staticStyle","searchText","indexOf","searchBySearchQuery","scopedSlots","_v","on","data","Description","PO","fn","domProps","NoItemFound","item","PartNumber","selectedSuggestion","expression","J1LSearchBox","refreshImg","suggestions","searchValue","searchType","isLoading","getSuggestions","_onSelect","_asyncToGenerator","_regeneratorRuntime","mark","_callee","searchSuggestion","_this$getSearchSugges","SearchValue","TypeValue","wrap","_context","prev","next","getSearchSuggestionValueAndType","buildSearchModel","searchBox","blur","stop","onSelect","_x","apply","removeSpecialCharacters","substring","firstItem","secondItem","doesFirstStringContainSecond","typeValue","SearchRequestModel","suggestionList","_this2","matchedItems","filter","s","doesMatch","searchTextFormatted","matchedPOs","push","_toConsumableArray","NoPOFound","list","header","stringToChange","location","toLowerCase","search","trim","stringStart","stringEnd","stringMatch","_getSuggestions","_callee3","_this3","_context3","clearTimeout","typingTimer","_callee2","response","_context2","Take","Skip","Query","OrdersService","GetAutocompleteSuggestionsBySearchQuery","sent","formatSuggestions","Type","t0","SetSnackBar","clearSearch","ItemId","text"],"mappings":"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","file":"js/Orders~21833f8f.c60ba183.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-text-field',{ref:\"quantityTextField\",staticClass:\"text-box-with-commas\",attrs:{\"value\":_vm.formattedQuantity,\"label\":\"Exact Quantity\",\"outlined\":\"\",\"rules\":[\n () => _vm.quantity > 0 || _vm.quantity == null || 'Please enter a number greater than 0',\n () =>\n _vm.quantity <= 100000 ||\n _vm.quantity == null ||\n 'Please enter a number less than 100000',\n v => /^[0-9\\,]+$/.test(v) || 'Please use whole numbers only',\n () => _vm.quantity % 1 === 0 || 'Please use whole numbers only'\n ],\"data-testid\":\"quantityTextField\"},on:{\"input\":_vm.handleQuantityInput,\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.submit()}}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { StringHelper } from '@/helpers/StringHelper';\r\nimport { Vue, Component, Watch, Prop } from 'vue-property-decorator';\r\n@Component\r\nexport default class extends Vue {\r\n $refs!: {\r\n quantityTextField: HTMLFormElement;\r\n };\r\n /* Properties */\r\n /* Store Actions */\r\n /* Watchers */\r\n @Watch('quantity')\r\n onQuantityChanged(val: number) {\r\n this.$emit('quantityChanged', val);\r\n }\r\n /* Data */\r\n quantity: number = 0;\r\n /* Async Functions */\r\n /* Utility Functions */\r\n focus() {\r\n this.$refs.quantityTextField.focus();\r\n }\r\n handleQuantityInput(newValue: any) {\r\n this.quantity = parseInt(newValue.toString().replace(/\\D/g, ''));\r\n }\r\n setQuantity(val: number) {\r\n this.quantity = val;\r\n }\r\n submit() {\r\n this.$emit('submit');\r\n }\r\n /* Loaders */\r\n /* Mounted */\r\n /* Created */\r\n /* Emmited Functions */\r\n /* Getters */\r\n get formattedQuantity() {\r\n return StringHelper.formatQuantity(this.quantity);\r\n }\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./J1LTextFieldNumber.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./J1LTextFieldNumber.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./J1LTextFieldNumber.vue?vue&type=template&id=a024f458\"\nimport script from \"./J1LTextFieldNumber.vue?vue&type=script&lang=ts\"\nexport * from \"./J1LTextFieldNumber.vue?vue&type=script&lang=ts\"\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 null,\n null\n \n)\n\nexport default component.exports","export function DisableFormAutofill(formId: string) {\r\n var inputs = document.querySelectorAll(`#${formId} input[type=text]`);\r\n inputs.forEach(input => {\r\n input.setAttribute('role', 'presentation');\r\n input.setAttribute('autocomplete', 'off');\r\n });\r\n}\r\nexport function DisableFieldAutofill(id: string) {\r\n const input = document.getElementById(id);\r\n if (input) {\r\n input.setAttribute('role', 'presentation');\r\n input.setAttribute('autocomplete', 'off');\r\n }\r\n}\r\nexport function Wait(func: () => any, time: number = 50) {\r\n setTimeout(() => {\r\n func();\r\n }, time);\r\n}\r\n","export const ColorHelpers = {\r\n getPacklistStatus(status: string) {\r\n switch (status) {\r\n case 'Delivered':\r\n return 'j1lblack';\r\n case 'In Transit':\r\n return 'j1lbrown';\r\n case 'Pending':\r\n return 'hot-pink';\r\n\r\n default:\r\n return 'j1lGreen';\r\n }\r\n },\r\n getInvoiceStatus(status: string) {\r\n switch (status) {\r\n case 'Paid':\r\n return 'j1lGreen';\r\n case 'Unpaid':\r\n return 'j1lOrange';\r\n case 'Past Due':\r\n return 'hot-pink';\r\n\r\n default:\r\n return 'j1lGreen';\r\n }\r\n }\r\n};\r\n","import { ConfirmationDialogInfo } from '@/store/models/CustomerModel';\r\nimport store from '@/store/modules/index';\r\n\r\nexport function Confirm(\r\n action: any,\r\n confirmationTitle: string,\r\n confirmationText: string,\r\n cancelButtonText: string = 'Cancel',\r\n commitButtonText: string = 'I am sure'\r\n) {\r\n const newConfirmationDialog = new ConfirmationDialogInfo({\r\n action,\r\n confirmationTitle,\r\n confirmationText,\r\n cancelButtonText,\r\n commitButtonText\r\n });\r\n store.commit('profile/setConfirmationAction', newConfirmationDialog);\r\n return;\r\n}\r\n","import { Store } from 'vuex';\r\nimport { PaginationModel } from '@/store/models/PaginationModel';\r\nimport { SearchRequestModel } from '@/store/models/OrderlineModel';\r\n\r\nexport function PaginationCommand(\r\n typeName: string,\r\n store: Store,\r\n model: PaginationModel\r\n) {\r\n switch (typeName) {\r\n case 'items': {\r\n store.commit('items/setCurrentPage', model.CurrentPage);\r\n if (model.SearchModel) {\r\n store.dispatch('items/GetSearchedItemsByEntity', model);\r\n return;\r\n }\r\n store.dispatch('items/GetItems', model);\r\n return;\r\n }\r\n case 'orderlines': {\r\n store.commit('orderlines/setCurrentPage', model.CurrentPage);\r\n if (model.SearchModel) {\r\n store.dispatch('orderlines/GetSearchedOrderlinesByEntity', model);\r\n } else {\r\n store.dispatch('orderlines/GetOrderlinePagination', model);\r\n }\r\n return;\r\n }\r\n }\r\n}\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-autocomplete',{ref:\"searchBox\",staticStyle:{\"border\":\"1px rgb(238, 238, 238) solid\"},attrs:{\"light\":\"\",\"hide-details\":\"\",\"solo\":\"\",\"flat\":\"\",\"single-line\":\"\",\"no-filter\":\"\",\"return-object\":\"\",\"maxlength\":\"25\",\"height\":\"50\",\"clearable\":\"\",\"counter\":\"\",\"loading\":_vm.isLoading,\"items\":_vm.suggestions,\"search-input\":_vm.searchText,\"item-text\":\"PartNumber\"},on:{\"update:searchInput\":function($event){_vm.searchText=$event},\"update:search-input\":function($event){_vm.searchText=$event},\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.searchBySearchQuery()}},scopedSlots:_vm._u([{key:\"prepend-inner\",fn:function(){return [_c('v-icon',{staticStyle:{\"color\":\"rgb(97,97,97)\"}},[_vm._v(\"search\")])]},proxy:true},{key:\"label\",fn:function(){return [_c('span',{staticStyle:{\"color\":\"#9E9E9E\"}},[_vm._v(\"Search for part numbers, descriptions, dies, and status\")])]},proxy:true},{key:\"selection\",fn:function(data){return [_c('v-chip',{attrs:{\"color\":\"#eeeee\",\"close\":\"\"},on:{\"click:close\":function($event){return _vm.clearSearch()}}},[(data.item.Description)?_c('span',{staticClass:\"roboto-bold\"},[_vm._v(_vm._s(data.item.PartNumber)+\" - \"+_vm._s(data.item.Description))]):(data.item.PO)?_c('span',{staticClass:\"roboto-bold\"},[_vm._v(_vm._s(data.item.PO))]):_c('span',[_vm._v(_vm._s(data.item))])])]}},{key:\"item\",fn:function(data){return [(data.item && data.item.header)?[_c('span',[_vm._v(_vm._s(data.item.header))])]:[(\n data.item.Description &&\n _vm.doesMatch(\n `${data.item.PartNumber} - ${data.item.Description}`,\n _vm.searchTextFormatted\n )\n )?_c('span',{staticClass:\"roboto-regular\",domProps:{\"innerHTML\":_vm._s(\n _vm.formatMatchedString(`${data.item.PartNumber} - ${data.item.Description}`)\n )}}):(data.item.NoItemFound)?_c('span',[_vm._v(\"No Items Found\")]):_c('span',{staticClass:\"roboto-regular\"},[_vm._v(_vm._s(data.item.PartNumber ? `${data.item.PartNumber} - ${data.item.Description}` : ''))]),(data.item.PO && _vm.doesMatch(data.item.PO, _vm.searchTextFormatted))?_c('span',{staticClass:\"roboto-regular\",domProps:{\"innerHTML\":_vm._s(_vm.formatMatchedString(`${data.item.PO}`))}}):_vm._e(),(data.item.NoPOFound)?_c('span',[_vm._v(\"No Orders Found\")]):_vm._e()]]}}]),model:{value:(_vm.selectedSuggestion),callback:function ($$v) {_vm.selectedSuggestion=$$v},expression:\"selectedSuggestion\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\nimport { SetSnackBar } from '@/helpers/SnackbarHelper';\r\nimport { removeSpecialCharacters, StringHelper } from '@/helpers/StringHelper';\r\nimport { Wait } from '@/helpers/WebHelper';\r\nimport { OrdersService } from '@/services/orders-service';\r\nimport { SearchRequestModel } from '@/store/models/OrderlineModel';\r\nimport { Vue, Component, Watch, Prop } from 'vue-property-decorator';\r\nclass Search {\r\n SearchValue!: string;\r\n TypeValue!: number;\r\n}\r\n@Component\r\nexport default class J1LSearchBox extends Vue {\r\n $refs!: {\r\n searchBox: HTMLFormElement;\r\n };\r\n /* Properties */\r\n /* Store Actions */\r\n /* Watchers */\r\n @Watch('searchText')\r\n onSearchTextChange(val: string) {\r\n val && val !== this.selectedSuggestion && this.getSuggestions();\r\n }\r\n @Watch('selectedSuggestion')\r\n async onSelect(searchSuggestion: any) {\r\n //emit\r\n const { SearchValue, TypeValue } = this.getSearchSuggestionValueAndType(\r\n searchSuggestion\r\n );\r\n if (SearchValue) {\r\n this.$emit('suggestionSelected', this.buildSearchModel(SearchValue, TypeValue));\r\n } else {\r\n this.$emit('suggestionSelected');\r\n }\r\n this.$refs.searchBox.blur();\r\n }\r\n /* Data */\r\n refreshImg: boolean = true;\r\n suggestions: any[] = [];\r\n selectedSuggestion: any = null;\r\n searchText: string = 'PartNumber';\r\n searchValue: string = '';\r\n searchType: number = -1;\r\n typingTimer: any;\r\n isLoading: boolean = false;\r\n /* Computed */\r\n get searchTextFormatted() {\r\n return removeSpecialCharacters(this.searchText).substring(0, 25);\r\n }\r\n /* Async Functions */\r\n /* Utility Functions */\r\n doesMatch(firstItem: string, secondItem: string) {\r\n return StringHelper.doesFirstStringContainSecond(firstItem, secondItem);\r\n }\r\n\r\n buildSearchModel(searchValue: string, typeValue: number) {\r\n return new SearchRequestModel({\r\n SearchValue: searchValue,\r\n TypeValue: typeValue\r\n });\r\n }\r\n\r\n formatSuggestions(suggestionList: any[]) {\r\n let matchedItems = suggestionList.filter(\r\n s =>\r\n this.doesMatch(s.Description, this.searchTextFormatted) ||\r\n this.doesMatch(s.PartNumber, this.searchTextFormatted)\r\n );\r\n let matchedPOs = suggestionList.filter(s =>\r\n this.doesMatch(s.PO, this.searchTextFormatted)\r\n );\r\n if (!matchedItems[0] && !matchedPOs[0] && suggestionList[0]) {\r\n matchedItems.push(...suggestionList);\r\n }\r\n if (!matchedItems[0]) matchedItems[0] = { NoItemFound: true };\r\n if (!matchedPOs[0]) matchedPOs[0] = { NoPOFound: true };\r\n let list = [\r\n { header: 'Items' },\r\n ...matchedItems,\r\n { header: 'Orders' },\r\n ...matchedPOs\r\n ];\r\n return list;\r\n }\r\n formatMatchedString(stringToChange: string) {\r\n if (!this.searchTextFormatted) return stringToChange;\r\n let location = stringToChange\r\n .toLowerCase()\r\n .search(this.searchTextFormatted.trim().toLowerCase());\r\n let stringStart = stringToChange.substring(0, location);\r\n let stringEnd = stringToChange.substring(\r\n location + this.searchTextFormatted.trim().length,\r\n 9999\r\n );\r\n let stringMatch = stringToChange.substring(\r\n location,\r\n location + this.searchTextFormatted.trim().length\r\n );\r\n return `${stringStart}${stringMatch}${stringEnd}`;\r\n }\r\n async getSuggestions() {\r\n clearTimeout(this.typingTimer);\r\n this.typingTimer = Wait(async () => {\r\n this.isLoading = true;\r\n try {\r\n let model = {\r\n Take: 10,\r\n Skip: 0,\r\n Query: !this.searchTextFormatted\r\n ? this.searchTextFormatted\r\n : this.searchTextFormatted.trim()\r\n };\r\n const response = await OrdersService.GetAutocompleteSuggestionsBySearchQuery(\r\n model\r\n );\r\n this.suggestions = [];\r\n this.suggestions = [...this.formatSuggestions(response.data)];\r\n this.searchType = response.data.Type;\r\n } catch (err) {\r\n // empty\r\n }\r\n this.isLoading = false;\r\n });\r\n }\r\n searchBySearchValue(response: any) {\r\n if (response && response.value) {\r\n this.$emit('search', response);\r\n } else {\r\n this.$emit('clearFilteredItems');\r\n }\r\n }\r\n searchBySearchQuery() {\r\n if (this.selectedSuggestion) return;\r\n if (this.searchTextFormatted.length <= 2) {\r\n SetSnackBar('Please enter more than 2 characters');\r\n return;\r\n }\r\n if (this.searchTextFormatted) this.suggestions.push(this.searchTextFormatted);\r\n this.selectedSuggestion = this.suggestions[this.suggestions.length - 1];\r\n if (!this.searchTextFormatted) {\r\n this.clearSearch();\r\n this.$refs.searchBox.blur();\r\n }\r\n }\r\n getSearchSuggestionValueAndType(searchSuggestion: any): Search {\r\n if (!searchSuggestion) return { SearchValue: '', TypeValue: -1 };\r\n let searchValue = searchSuggestion;\r\n let typeValue = -1;\r\n if (searchSuggestion.PartNumber) {\r\n searchValue = searchSuggestion.ItemId;\r\n typeValue = 0;\r\n }\r\n if (searchSuggestion.PO) {\r\n searchValue = searchSuggestion.PO;\r\n typeValue = 1;\r\n }\r\n return { SearchValue: searchValue, TypeValue: typeValue };\r\n }\r\n clearSearch() {\r\n this.selectedSuggestion = null;\r\n this.$emit('clearFilteredItems');\r\n }\r\n setSearchText(text: string) {\r\n this.searchText = text;\r\n if (!text) {\r\n this.clearSearch();\r\n } else {\r\n this.searchBySearchQuery();\r\n }\r\n }\r\n /* Loaders */\r\n /* Mounted */\r\n mounted() {\r\n this.getSuggestions();\r\n }\r\n /* Created */\r\n /* Emmited Functions */\r\n}\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./J1LSearch.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--15-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./J1LSearch.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./J1LSearch.vue?vue&type=template&id=4d988915\"\nimport script from \"./J1LSearch.vue?vue&type=script&lang=ts\"\nexport * from \"./J1LSearch.vue?vue&type=script&lang=ts\"\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 null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}