{"version":3,"file":"AddressModal-legacy.WyX4j3MQ.js","sources":["../../../../components/SettingsPhone.vue","../../../../composables/usePAF.js","../../../../components/AddressModal.vue"],"sourcesContent":["\n\n\n","// Adapted from https://github.com/AllenJB/PafUtils.\n\n/**\n * Assemble the address lines (excluding post town and post code) according to the rule laid out by Royal Mail.\n * The primary reference for these rules is the Royal Mail programmers guide. In some cases (particularly those\n * not covered by the programmers guide), the layout used by the RM online address finder has been followed.\n **/\nexport function constructAddress(\n udprn,\n postcode,\n postTown,\n dependentLocality,\n doubleDependentLocality,\n thoroughfare,\n dependentThoroughfare,\n buildingNumber,\n buildingName,\n subBuildingName,\n poBox,\n departmentName,\n organizationName,\n postcodeType,\n suOrganizationIndicator,\n deliveryPointSuffix\n) {\n let processed = false\n let processingError = false\n const addressLines = []\n let nextLinePrefix = null\n\n if (buildingNumber === 0) {\n buildingNumber = null\n }\n\n // Exception 4 regex: Any of the specified prefixes followed by either a number with an alpha suffix or a numeric range\n const specialPrefixes = [\n 'Back of',\n 'Block',\n 'Blocks',\n 'Building',\n 'Maisonette',\n 'Maisonettes',\n 'Rear of',\n 'Shop',\n 'Shops',\n 'Stall',\n 'Stalls',\n 'Suite',\n 'Suites',\n 'Unit',\n 'Units',\n ]\n\n const ex4Regex = new RegExp(\n '/^(' +\n specialPrefixes.join('|') +\n ')\\\\s([0-9]+[a-zA-Z]+|[0-9]+\\\\-[0-9]+|[a-zA-Z])$/'\n )\n\n // Do we need to split the building name - see Table 27c / 27d\n if (buildingName && !buildingNumber) {\n if (\n buildingName.match(/\\s[0-9]+[a-zA-Z]+$/) ||\n buildingName.match(/\\s[0-9]+-[0-9]+$/)\n ) {\n if (!buildingName.match(ex4Regex)) {\n const parts = buildingName.split(' ')\n buildingNumber = parts.pop()\n buildingName = parts.join(' ')\n }\n }\n }\n // Table 19, note b: If an organization name is present, it should appear on the first address line\n if (organizationName) {\n addressLines.push(organizationName)\n }\n // Table 19, note c: If a department name is present, it should appear on the second line (after organization name)\n if (departmentName) {\n addressLines.push(departmentName)\n }\n // Table 19, note d: If a PO Box is present, it should appear on the first address line after any organization / dept. name\n // The PO Box number MUST be preceded by 'PO Box'\n if (poBox) {\n addressLines.push('PO Box ' + poBox)\n }\n nextLinePrefix = null\n // Rule 1 - Organisation name only\n if (!subBuildingName && !buildingName && buildingNumber) {\n if (organizationName) {\n processed = true\n // No actual manipulation code as the organization name is handled above\n }\n }\n // The following code is based on Table 20\n // Rule 2 - Building number only\n if (!subBuildingName && !buildingName && buildingNumber) {\n processed = true\n nextLinePrefix = buildingNumber + ' '\n }\n // Rule 3 - Building Name only\n if (!subBuildingName && buildingName && !buildingNumber) {\n processed = true\n // Exceptions:\n // i) First and last characters of the building name are numeric (eg. '1to1' or '100:1')\n // ii) First and penultimate characters are numeric, last character is alphabetic\n // iii) Building name has only 1 character\n if (\n buildingName.match(/^[0-9].*[0-9]$/) ||\n buildingName.match(/^[0-9].*[0-9][a-zA-Z]$/) ||\n buildingName.length === 1\n ) {\n if (nextLinePrefix !== null) {\n processingError = true\n }\n nextLinePrefix = buildingName\n if (buildingName.length === 1 && isNaN(buildingName)) {\n nextLinePrefix += ','\n }\n nextLinePrefix += ' '\n } else {\n addressLines.push(buildingName)\n }\n }\n // Rule 4 - Building Name & Building Number\n if (!subBuildingName && buildingName && buildingNumber) {\n processed = true\n addressLines.push(buildingName)\n nextLinePrefix = buildingNumber + ' '\n }\n // Rule 5 - Sub building name & Building Number\n // The programmers guide talks about an exception involving the 'concatenation indicator',\n // But as far as I can see this field doesn't exist in the CSV format files\n if (subBuildingName && !buildingName && buildingNumber) {\n processed = true\n addressLines.push(subBuildingName)\n nextLinePrefix = buildingNumber + ' '\n }\n // Rule 6 - Sub Building Name & Building Name\n if (subBuildingName && buildingName && !buildingNumber) {\n processed = true\n let exceptionSubBuildingName = false\n // Exceptions:\n // i) First and last characters of the building name are numeric (eg. '1to1' or '100:1')\n // ii) First and penultimate characters are numeric, last character is alphabetic\n // iii) Building name has only 1 character\n if (\n subBuildingName.match(/^[0-9].*[0-9]$/) ||\n subBuildingName.match(/^[0-9].*[0-9][a-zA-Z]$/) ||\n subBuildingName.length === 1\n ) {\n exceptionSubBuildingName = true\n if (nextLinePrefix !== null) {\n processingError = true\n }\n nextLinePrefix = subBuildingName\n if (subBuildingName.length === 1 && isNaN(subBuildingName)) {\n nextLinePrefix += ','\n }\n nextLinePrefix += ' '\n } else {\n addressLines.push(subBuildingName)\n }\n // Exceptions:\n // i) First and last characters of the building name are numeric (eg. '1to1' or '100:1')\n // ii) First and penultimate characters are numeric, last character is alphabetic\n // iii) Building name has only 1 character\n if (\n buildingName.match(/^[0-9].*[0-9]$/) ||\n buildingName.match(/^[0-9].*[0-9][a-zA-Z]$/) ||\n buildingName.length === 1\n ) {\n if (nextLinePrefix?.length && !exceptionSubBuildingName) {\n addressLines.push(nextLinePrefix.trim())\n }\n nextLinePrefix = (nextLinePrefix?.trim() + ' ' + buildingName).trim()\n if (buildingName.length === 1 && isNaN(buildingName)) {\n nextLinePrefix += ','\n }\n nextLinePrefix += ' '\n } else {\n addressLines.push(\n (nextLinePrefix ? nextLinePrefix?.trim() + ' ' : '') + buildingName\n )\n nextLinePrefix = null\n }\n }\n // Rule 7 - Sub building name, building name & building number\n if (!(!subBuildingName || !buildingName || !buildingNumber)) {\n processed = true\n // Exceptions:\n // i) First and last characters of the building name are numeric (eg. '1to1' or '100:1')\n // ii) First and penultimate characters are numeric, last character is alphabetic\n // iii) Building name has only 1 character\n if (\n subBuildingName.match(/^[0-9].*[0-9]$/) ||\n subBuildingName.match(/^[0-9].*[0-9][a-zA-Z]$/) ||\n subBuildingName.length === 1\n ) {\n if (nextLinePrefix !== null) {\n processingError = true\n }\n nextLinePrefix = subBuildingName\n if (subBuildingName.length === 1 && isNaN(subBuildingName)) {\n nextLinePrefix += ','\n }\n nextLinePrefix += ' '\n } else {\n addressLines.push(\n (nextLinePrefix ? nextLinePrefix.trim() + ' ' : '') + subBuildingName\n )\n nextLinePrefix = null\n }\n addressLines.push(\n (nextLinePrefix ? nextLinePrefix.trim() + ' ' : '') + buildingName\n )\n nextLinePrefix = null\n nextLinePrefix =\n (nextLinePrefix ? nextLinePrefix.trim() + ' ' : '') + buildingNumber\n }\n // Rule C1 - Self-written rule: Sub-building name occurs, but no building name or number\n // This occurred in the Y14M09 update - 8350793 / EH12 5DD (15Gf Eglinton Crescent)\n // And was still the same on the Royal Mail Postcode Lookup website data as of 2014-10-21\n if (!buildingName && !buildingNumber && subBuildingName) {\n processed = true\n nextLinePrefix = subBuildingName\n }\n if (nextLinePrefix && nextLinePrefix.charAt(nextLinePrefix.length !== ' ')) {\n nextLinePrefix += ' '\n }\n // Dependent Thoroughfare\n if (dependentThoroughfare) {\n addressLines.push((nextLinePrefix || '') + dependentThoroughfare)\n nextLinePrefix = null\n }\n // Thoroughfare\n if (thoroughfare) {\n addressLines.push((nextLinePrefix || '') + thoroughfare)\n nextLinePrefix = null\n }\n // Double dependent locality\n if (doubleDependentLocality) {\n addressLines.push((nextLinePrefix || '') + doubleDependentLocality)\n nextLinePrefix = null\n }\n // Dependent locality\n if (dependentLocality) {\n addressLines.push((nextLinePrefix || '') + dependentLocality)\n nextLinePrefix = null\n }\n // Yup, apparently there's addresses in the database with no locality / thoroughfare. Just a number.\n // UDPRNs affected as of 2014-02-06: 2431986 and 328392\n if (nextLinePrefix !== null) {\n addressLines.push(nextLinePrefix)\n }\n // Send a notification to developers if an address was not processed by any of the above rules\n // (and should have been) or if we think there was an error in processing the address correctly\n // (because the RM programmers guide does not specify how to correctly handle the address encountered)\n if (!processed || processingError) {\n if (!(subBuildingName && buildingName && buildingNumber)) {\n if (processingError) {\n console.error(\n 'An address (with UDPRN: {udprn}) was probably processed incorrectly'\n )\n } else {\n console.error(\n 'An address (with UDPRN: {udprn}) was not processed by any rules'\n )\n }\n }\n }\n\n // EH additions.\n if (\n addressLines.length >= 2 &&\n addressLines[1].includes(addressLines[0] + ' ')\n ) {\n // House number which appears in the first line and the second line.\n addressLines.shift()\n }\n\n if (addressLines.length > 0) {\n addressLines[0] = addressLines[0].replace('PO Box Flat', 'Flat')\n addressLines[0] = addressLines[0].replace('PO Box ', '')\n }\n\n if (\n addressLines.length >= 3 &&\n addressLines[2].includes(addressLines[1] + ' ')\n ) {\n // House number which appears in the third line and the fourth line.\n addressLines.splice(1, 1)\n }\n\n return addressLines\n}\n\nexport function constructMultiLine(address) {\n if (!address) {\n return null\n }\n\n const delimiter = '\\n'\n const addressLines = constructAddress(\n address.id,\n address.postcode,\n address.posttown,\n address.dependentlocality,\n address.doubledependentlocality,\n address.thoroughfaredescriptor,\n address.dependentthoroughfaredescriptor,\n address.buildingnumber,\n address.buildingname,\n address.subbuildingname,\n address.pobox,\n address.departmentname,\n address.organizationname,\n address.postcodetype,\n address.suorganizationindicator,\n address.deliverypointsuffix\n )\n\n let ret =\n addressLines.join(delimiter) +\n delimiter +\n address.posttown +\n ' ' +\n address.postcode\n ret = ret.indexOf(', ') === 0 ? ret.substring(2) : ret\n\n return ret\n}\n\nexport function constructSingleLine(address) {\n let ret = constructMultiLine(address)\n\n if (ret) {\n ret = ret.replace(/\\n/g, ', ')\n }\n\n return ret\n}\n","\n\n"],"names":["_sfc_main","components","SpinButton","props","size","type","String","required","default","label","description","hideRemove","Boolean","autoSave","inputClass","setup","authStore","useAuthStore","computed","notMobile","_this$me","this","me","phone","startsWith","watch","savePhone","methods","callback","_this","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","prev","next","saveAndGet","stop","removePhone","_this2","_callee2","_callee2$","_context2","setTimeout","_hoisted_1","class","_hoisted_2","_createElementBlock","_createElementVNode","_createVNode","_component_b_form_group","$props","_component_b_input_group","_ctx","_createBlock","_component_b_form_input","modelValue","_cache","$event","placeholder","lazy","_component_b_input_group_append","key","_component_SpinButton","ref","disabled","$options","variant","onHandle","_component_v_icon","icon","_ctx$me","_component_b_button","onClick","_hoisted_3","constructMultiLine","address","ret","udprn","postcode","postTown","dependentLocality","doubleDependentLocality","thoroughfare","dependentThoroughfare","buildingNumber","buildingName","subBuildingName","poBox","departmentName","organizationName","postcodeType","suOrganizationIndicator","deliveryPointSuffix","processed","processingError","addressLines","nextLinePrefix","ex4Regex","RegExp","join","match","parts","split","pop","push","length","isNaN","_nextLinePrefix","_nextLinePrefix2","_nextLinePrefix3","exceptionSubBuildingName","trim","charAt","console","error","includes","shift","replace","splice","constructAddress","id","posttown","dependentlocality","doubledependentlocality","thoroughfaredescriptor","dependentthoroughfaredescriptor","buildingnumber","buildingname","subbuildingname","pobox","departmentname","organizationname","postcodetype","suorganizationindicator","deliverypointsuffix","indexOf","substring","constructSingleLine","PostCode","choose","emits","addressStore","useAddressStore","_useModal","useModal","modal","hide","osmtile","attribution","data","showAdd","updatedInstructions","properties","selectedProperty","showMap","addresses","_this$addressStore","list","addressOptions","_this$addresses","forEach","value","text","propertyOptions","_this$addressStore2","singles","Object","values","singleline","selectedAddress","get","_this$me2","_this$addresses2","selected","settings","find","set","newValue","_this3","_callee3","_context3","selectedAddressObject","_this$addresses3","_this4","a","markerLatLng","lat","lng","instructions","_this$selectedAddress","newVal","selectFirst","_this$addresses5","_this5","_this$addresses4","sel","onShow","_this$addresses6","onHide","$emit","add","_this6","_callee4","_context4","pafid","sent","deleteIt","_this7","_callee5","_callee5$","_context5","delete","postcodeCleared","postcodeSelect","pc","_this8","_callee6","_callee6$","_context6","fetchProperties","saveInstructions","_this9","_callee7","_callee7$","_context7","update","addnew","chooseIt","updateMarker","val","_this10","_callee8","_callee8$","_context8","_hoisted_6","style","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_12","_hoisted_13","_hoisted_15","_component_b_modal","scrollable","title","alt","onShown","onHidden","_openBlock","_component_b_row","_component_b_col","cols","sm","_component_b_form_select","options","_hoisted_5","$data","_component_l_map","zoom","center","_component_l_tile_layer","url","$setup","_component_l_marker","draggable","_component_b_form_textarea","rows","_hoisted_11","_component_PostCode","focus","onSelected","onCleared","_hoisted_14","footer","_hoisted_16"],"mappings":"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"}