{"version":3,"file":"supplier-TJYcGDUk.js","sources":["../../../app/frontend/entrypoints/controllers/erp/product/overview/show/supplier.ts"],"sourcesContent":["import jQuery from 'jquery/dist/jquery';\nimport Swal from 'sweetalert2';\nimport * as bootstrap from 'bootstrap'\nimport Utils from '../../../../../utils'\nimport ErpProductSupplierEntity from \"../../../product_supplier/entity\";\nexport default class ErpProductSupplier{\n private parent: any;\n private entity = \"erp/supplier_products\";\n private toastr: any;\n private datatable: any = null;\n private datatableElem: any;\n private editModal: bootstrap.Modal;\n\n constructor(parent: any) {\n this.parent = parent\n this.toastr = parent.toastr\n this.datatableElem = jQuery(\".datatables-erp-product-supplier\")\n this.editModal = new bootstrap.Modal((document.querySelector(\"#editErpProductSupplierModal\") as HTMLElement));\n this.bindListeners();\n }\n\n getEntityData(elem: any) {\n return {...ErpProductSupplierEntity.getEntityData(elem), productId: this.parent.id}\n }\n\n bindListeners() {\n (document.querySelector(\"#addNewErpProductSupplierForm\") as HTMLFormElement).addEventListener(\"submit\", async (e: any) => {\n e.preventDefault();\n const elem = document.querySelector(\"#addNewErpProductSupplierForm\") as HTMLFormElement;\n const valid = elem.checkValidity();\n if (valid) {\n await Utils.showLoader();\n await Utils.entity.upsert(this.getEntityData(elem), this.entity)\n this.toastr.success(`${Utils.translate('erp.supplier.name')} ${Utils.translate('generic.saved')}`, `${Utils.translate('generic.success')}`)\n\n\n const bsElem = bootstrap.Offcanvas.getInstance((document.querySelector(\"#offcanvasAddErpProductSupplier\") as HTMLElement))\n if (bsElem) {\n bsElem.hide();\n }\n await Utils.hideLoader();\n await this.parent.getEntity()\n }\n });\n\n (document.querySelector(\"#editErpProductSupplierForm\") as HTMLFormElement).addEventListener(\"submit\", async (e) => {\n e.preventDefault();\n const elem = document.querySelector(\"#editErpProductSupplierForm\") as HTMLFormElement;\n const valid = elem.checkValidity();\n if (valid) {\n const r = await Utils.entity.upsert(this.getEntityData(elem), this.entity)\n if (r.status === 200) {\n await this.parent.getEntity()\n const bsElem = bootstrap.Modal.getInstance((document.querySelector(\"#editErpProductSupplierModal\") as HTMLElement))\n if (bsElem) {\n bsElem.hide();\n }\n this.toastr.success(`${Utils.translate('erp.supplier.name')} ${Utils.translate('generic.saved')}`, `${Utils.translate('generic.success')}`)\n }\n }\n });\n\n\n this.datatableElem.delegate(\".edit-record\", \"click\", async (e: any) => {\n const id = e.currentTarget.getAttribute(\"data-id\")\n const requestData = await Utils.entity.get(id, this.entity)\n if (requestData.status === 200) {\n const data = requestData.data[0]\n const form = (document.querySelector(\"#editErpProductSupplierForm\") as HTMLFormElement);\n Object.keys(data).forEach((key) => {\n const elem = form.querySelector(`#erp_product_supplier_${key}`) as HTMLInputElement | null\n if(elem && data[key]) {\n elem.value = data[key]\n }\n })\n\n const $newOption = jQuery(\"\").val(data.supplierId).text(data.supplier[0].name)\n jQuery(\"#editErpProductSupplierForm #erp_product_supplier_supplier_id\").append($newOption).trigger('change');\n\n // @ts-ignore\n this.editModal.show();\n }\n\n });\n\n this.datatableElem.delegate(\".delete-record\", \"click\", async (e: any) => {\n e.preventDefault();const confirm = await Swal.fire({\n title: 'Are you sure?',\n text: \"You won't be able to revert this!\",\n icon: 'warning',\n showCancelButton: true,\n confirmButtonText: 'Yes, delete it!',\n customClass: {\n confirmButton: 'btn btn-primary me-3',\n cancelButton: 'btn btn-label-secondary'\n },\n buttonsStyling: false\n })\n if(confirm.value === true) {\n const id = e.currentTarget.getAttribute(\"data-id\");\n const r = await Utils.entity.destroy(id, this.entity);\n if (r.status === 200) {\n this.toastr.success(`${Utils.translate('erp.supplier.name')} ${Utils.translate('generic.deleted')}`, `${Utils.translate('generic.success')}`)\n } else {\n this.toastr.error(`${Utils.translate('erp.supplier.name')} ${Utils.translate('generic.messages.not_deleted')}`, `${Utils.translate('generic.error')}`)\n }\n await this.parent.getEntity()\n }\n });\n }\n\n createDataTable() {\n this.datatable = new DataTable(\".datatables-erp-product-supplier\", {\n processing: true,\n dom:\n '<\"row me-2 align-items-center\"' +\n '<\"col-md-2\"<\"me-3 m-3\"l>>' +\n '<\"col-md-10\"<\"dt-action-buttons text-xl-end text-lg-start text-md-end text-start d-flex align-items-center justify-content-end flex-md-row flex-column mb-3 mb-md-0\"fB>>' +\n '>t' +\n '<\"row mx-2 align-items-center justify-content-between\"' +\n '<\"col-6\"i>' +\n '<\"col-6 mt-3\"p>' +\n '>',\n language: {\n sLengthMenu: '_MENU_',\n search: '',\n searchPlaceholder: `${Utils.translate('generic.search')}...`,\n \"zeroRecords\": `${Utils.translate('generic.datatable.no_results')}`,\n \"emptyTable\": `${Utils.translate('generic.datatable.no_results')}`,\n \"paginate\": {\n \"first\": `${Utils.translate('generic.datatable.pagination.first')}`,\n \"last\": `${Utils.translate('generic.datatable.pagination.last')}`,\n \"next\": `${Utils.translate('generic.datatable.pagination.next')}`,\n \"previous\": `${Utils.translate('generic.datatable.pagination.previous')}`\n },\n \"info\": `${Utils.translate('generic.datatable.info.info')}`,\n \"infoEmpty\": `${Utils.translate('generic.datatable.info.empty')}`,\n \"infoFiltered\": `${Utils.translate('generic.datatable.info.filtered')}`,\n },\n buttons: [\n {\n text: `${Utils.translate('generic.add')}`,\n className: 'dt-button add-new btn btn-primary m-2',\n attr: {\n 'data-bs-toggle': 'offcanvas',\n 'data-bs-target': '#offcanvasAddErpProductSupplier'\n }\n }\n ]\n });\n }\n\n async update(data: any) {\n if (this.datatable) {\n this.datatable.destroy();\n }\n await Utils.updateElements(data, '', (document.querySelector(\"#erp_product_supplier\") as HTMLElement))\n const table = document.querySelector(\".datatables-erp-product-supplier tbody\") as HTMLElement;\n table.innerHTML = \"\";\n data.suppliers.forEach((supplier: any) => {\n const tr = `\n ${supplier.name}\n ${supplier.stockNotify}\n ${supplier.isDefault}\n
\n \n \n
\n `\n table.innerHTML = table.innerHTML + tr;\n });\n this.createDataTable();\n }\n}"],"names":["bootstrap.Modal","bootstrap.Offcanvas"],"mappings":"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"}