cliss21
/
wagtail-maps
Archivé
5
0
Bifurcation 0
Ce dépôt a été archivé le 2022-02-25. Vous pouvez voir ses fichiers ou le cloner, mais pas ouvrir de ticket ou de demandes d'ajout, ni soumettre de changements.
wagtail-maps/wagtail_maps/static/wagtail_maps/js/admin-form.js.map

1 ligne
5.9 KiB
Plaintext

{"version":3,"file":"admin-form.js","mappings":"MAIA,MAAMA,EACJ,oEAUIC,EAAyB,iBAQ/B,SAASC,EAASC,GAChB,OAAOA,IAAUC,OAAOD,GAAOE,WAGjC,SAASC,EAAIC,EAAaC,GACxB,OAAOD,EAAcC,EAQvBC,SAASC,iBAAiB,oBAAoB,KAC5C,MAAMC,EAAWF,SAASG,eA9BD,sBA+BnBC,EAAWJ,SAASG,eA9BA,uBA+BpBE,EAAaL,SAASG,eA9BF,wBA+BpBG,EAAeD,EAAWE,cAAcC,cAC5ChB,GAGFa,EAAWJ,iBAAiB,SAAS,KACnC,MAAMQ,EAAM,GACNC,EAAM,GAEZJ,EAAaK,aAAa,SAAU,IAGpCX,SAASY,iBAlCgB,uCAkCsBC,SAASC,IACtD,MAAMC,EAAWD,EAAMN,cAAc,qBAAqBd,MACpDsB,EAAYF,EAAMN,cAAc,sBAAsBd,MAExDD,EAASsB,IAAatB,EAASuB,KACjCP,EAAIQ,KAAKtB,OAAOoB,IAChBL,EAAIO,KAAKtB,OAAOqB,QAIfP,EAAIS,QAKThB,EAASR,MAAQe,EAAIU,OAAOtB,GAAOY,EAAIS,OACvCd,EAASV,MAAQgB,EAAIS,OAAOtB,GAAOa,EAAIQ,QALrCZ,EAAac,gBAAgB,gBAUnCpB,SAASC,iBAAiB,oBAAoB,KAC5C,MAAMoB,EAAiBrB,SAASG,eA/DF,wBAgExBmB,EAAOD,EAAeb,cAAc,QACpCe,EAAcD,EAAKd,cAAe,wBAClCgB,EAAWF,EAAKd,cAAe,yBAC/BF,EAAegB,EAAKd,cAAchB,GAExCiC,OAAOC,OAAOL,GAAgBM,GAAG,iBAAkBC,IACjDJ,EAAS9B,MAAQ,GACjBY,EAAaK,aAAa,SAAU,IAGpCY,EAAY7B,MAAQkC,EAAMC,cAAcC,aAAa,wBAGvDR,EAAKrB,iBAAiB,UAAW2B,IAC/BA,EAAMG,iBACNH,EAAMI,kBAEN1B,EAAaK,aAAa,SAAU,IAEpC,MAAMsB,EAAO,IAAIC,SAASZ,GACpBa,EAAWF,EAAKG,IAjFC,WAiFuBC,MAAM9C,GAEpD,IAAK4C,EAEH,YADA7B,EAAac,gBAAgB,UAI/B,MAAMkB,EAASL,EAAKG,IAzFE,UA0FhBlC,EAAWF,SAASQ,cAAe,UAAS8B,gBAC5ClC,EAAWJ,SAASQ,cAAe,UAAS8B,iBAElDpC,EAASR,MAAQC,OAAOwC,EAAS,IACjC/B,EAASV,MAAQC,OAAOwC,EAAS,IAEjCV,OAAOC,OAAOL,GAAgBkB,MAAM,e","sources":["webpack://wagtail-maps/./wagtail_maps/static_src/admin-form.js"],"sourcesContent":["// =============================================================================\n// Constants\n// =============================================================================\n\nconst RE_GEO_URI =\n /^geo:([-+]?\\d+(?:\\.\\d+)?),([-+]?\\d+(?:\\.\\d+)?)(?:\\?z=(\\d{1,2}))?$/;\n\nconst ID_CENTER_LATITUDE = 'id_center_latitude';\nconst ID_CENTER_LONGITUDE = 'id_center_longitude';\nconst ID_CENTER_CALCULATE = 'map-center-calculate';\nconst ID_POINT_FROM_GEO_MODAL = 'point-from-geo-modal';\n\nconst NAME_POINT_PREFIX = 'prefix';\nconst NAME_POINT_GEO_URI = 'geo-uri';\n\nconst SELECTOR_ERROR_MESSAGE = '.error-message';\nconst SELECTOR_POINTS_FORMS = '#id_points-FORMS';\nconst SELECTOR_POINT_FORM = `${SELECTOR_POINTS_FORMS} > li:not(.deleted)`;\n\n// =============================================================================\n// Helpers\n// =============================================================================\n\nfunction isNumber(value) {\n return value === Number(value).toString();\n}\n\nfunction add(accumulator, a) {\n return accumulator + a;\n}\n\n// =============================================================================\n// Main functions\n// =============================================================================\n\n// Calculate the center of the map from the centroïd of the points.\ndocument.addEventListener('DOMContentLoaded', () => {\n const latInput = document.getElementById(ID_CENTER_LATITUDE);\n const lngInput = document.getElementById(ID_CENTER_LONGITUDE);\n const calcButton = document.getElementById(ID_CENTER_CALCULATE);\n const errorMessage = calcButton.parentElement.querySelector(\n SELECTOR_ERROR_MESSAGE\n );\n\n calcButton.addEventListener('click', () => {\n const lat = [];\n const lng = [];\n\n errorMessage.setAttribute('hidden', '');\n\n // iterate over points and append its latitude and longitude\n document.querySelectorAll(SELECTOR_POINT_FORM).forEach((child) => {\n const latitude = child.querySelector('[name$=-latitude]').value;\n const longitude = child.querySelector('[name$=-longitude]').value;\n\n if (isNumber(latitude) && isNumber(longitude)) {\n lat.push(Number(latitude));\n lng.push(Number(longitude));\n }\n });\n\n if (!lat.length) {\n errorMessage.removeAttribute('hidden');\n return;\n }\n\n latInput.value = lat.reduce(add) / lat.length;\n lngInput.value = lng.reduce(add) / lng.length;\n });\n});\n\n// Handle the modal for getting a point's coordinates from a geo URI.\ndocument.addEventListener('DOMContentLoaded', () => {\n const modalContainer = document.getElementById(ID_POINT_FROM_GEO_MODAL);\n const form = modalContainer.querySelector('form');\n const prefixInput = form.querySelector(`input[name=\"${NAME_POINT_PREFIX}\"]`);\n const geoInput = form.querySelector(`input[name=\"${NAME_POINT_GEO_URI}\"]`);\n const errorMessage = form.querySelector(SELECTOR_ERROR_MESSAGE);\n\n window.jQuery(modalContainer).on('show.bs.modal', (event) => {\n geoInput.value = '';\n errorMessage.setAttribute('hidden', '');\n\n // store the prefix of the point's form\n prefixInput.value = event.relatedTarget.getAttribute('data-point-prefix');\n });\n\n form.addEventListener('submit', (event) => {\n event.preventDefault();\n event.stopPropagation();\n\n errorMessage.setAttribute('hidden', '');\n\n const data = new FormData(form);\n const geoMatch = data.get(NAME_POINT_GEO_URI).match(RE_GEO_URI);\n\n if (!geoMatch) {\n errorMessage.removeAttribute('hidden');\n return;\n }\n\n const prefix = data.get(NAME_POINT_PREFIX);\n const latInput = document.querySelector(`[name=\"${prefix}-latitude\"]`);\n const lngInput = document.querySelector(`[name=\"${prefix}-longitude\"]`);\n\n latInput.value = Number(geoMatch[1]);\n lngInput.value = Number(geoMatch[2]);\n\n window.jQuery(modalContainer).modal('hide');\n });\n});\n"],"names":["RE_GEO_URI","SELECTOR_ERROR_MESSAGE","isNumber","value","Number","toString","add","accumulator","a","document","addEventListener","latInput","getElementById","lngInput","calcButton","errorMessage","parentElement","querySelector","lat","lng","setAttribute","querySelectorAll","forEach","child","latitude","longitude","push","length","reduce","removeAttribute","modalContainer","form","prefixInput","geoInput","window","jQuery","on","event","relatedTarget","getAttribute","preventDefault","stopPropagation","data","FormData","geoMatch","get","match","prefix","modal"],"sourceRoot":""}