{"version":3,"file":"default/js/storeLocator.js","mappings":"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","sources":["webpack://SFRA-JnJ/./storefront-reference-architecture/cartridges/app_storefront_base/cartridge/client/default/js/storeLocator/storeLocator.js","webpack://SFRA-JnJ/./storefront-reference-architecture/cartridges/app_storefront_base/cartridge/client/default/js/util.js","webpack://SFRA-JnJ/webpack/bootstrap","webpack://SFRA-JnJ/./storefront-reference-architecture/cartridges/app_storefront_base/cartridge/client/default/js/storeLocator.js"],"sourcesContent":["/* globals google */\n'use strict';\n\n/**\n * appends params to a url\n * @param {string} url - Original url\n * @param {Object} params - Parameters to append\n * @returns {string} result url with appended parameters\n */\nfunction appendToUrl(url, params) {\n var newUrl = url;\n newUrl += (newUrl.indexOf('?') !== -1 ? '&' : '?') + Object.keys(params).map(function (key) {\n return key + '=' + encodeURIComponent(params[key]);\n }).join('&');\n\n return newUrl;\n}\n\n/**\n * Uses google maps api to render a map\n */\nfunction maps() {\n var map;\n var infowindow = new google.maps.InfoWindow();\n\n // Init U.S. Map in the center of the viewport\n var latlng = new google.maps.LatLng(37.09024, -95.712891);\n var mapOptions = {\n scrollwheel: false,\n zoom: 4,\n center: latlng\n };\n\n map = new google.maps.Map($('.map-canvas')[0], mapOptions);\n var mapdiv = $('.map-canvas').attr('data-locations');\n\n mapdiv = JSON.parse(mapdiv);\n\n var bounds = new google.maps.LatLngBounds();\n\n // Customized google map marker icon with svg format\n var markerImg = {\n path: 'M13.5,30.1460153 L16.8554555,25.5 L20.0024287,25.5 C23.039087,25.5 25.5,' +\n '23.0388955 25.5,20.0024287 L25.5,5.99757128 C25.5,2.96091298 23.0388955,0.5 ' +\n '20.0024287,0.5 L5.99757128,0.5 C2.96091298,0.5 0.5,2.96110446 0.5,5.99757128 ' +\n 'L0.5,20.0024287 C0.5,23.039087 2.96110446,25.5 5.99757128,25.5 L10.1445445,' +\n '25.5 L13.5,30.1460153 Z',\n fillColor: '#0070d2',\n fillOpacity: 1,\n scale: 1.1,\n strokeColor: 'white',\n strokeWeight: 1,\n anchor: new google.maps.Point(13, 30),\n labelOrigin: new google.maps.Point(12, 12)\n };\n\n Object.keys(mapdiv).forEach(function (key) {\n var item = mapdiv[key];\n var lable = parseInt(key, 10) + 1;\n var storeLocation = new google.maps.LatLng(item.latitude, item.longitude);\n var marker = new google.maps.Marker({\n position: storeLocation,\n map: map,\n title: item.name,\n icon: markerImg,\n label: { text: lable.toString(), color: 'white', fontSize: '16px' }\n });\n\n marker.addListener('click', function () {\n infowindow.setOptions({\n content: item.infoWindowHtml\n });\n infowindow.open(map, marker);\n });\n\n // Create a minimum bound based on a set of storeLocations\n bounds.extend(marker.position);\n });\n // Fit the all the store marks in the center of a minimum bounds when any store has been found.\n if (mapdiv && mapdiv.length !== 0) {\n map.fitBounds(bounds);\n }\n}\n\n/**\n * Renders the results of the search and updates the map\n * @param {Object} data - Response from the server\n */\nfunction updateStoresResults(data) {\n var $resultsDiv = $('.results');\n var $mapDiv = $('.map-canvas');\n var hasResults = data.stores.length > 0;\n\n if (!hasResults) {\n $('.store-locator-no-results').show();\n } else {\n $('.store-locator-no-results').hide();\n }\n\n $resultsDiv.empty()\n .data('has-results', hasResults)\n .data('radius', data.radius)\n .data('search-key', data.searchKey);\n\n $mapDiv.attr('data-locations', data.locations);\n\n if ($mapDiv.data('has-google-api')) {\n maps();\n } else {\n $('.store-locator-no-apiKey').show();\n }\n\n if (data.storesResultsHtml) {\n $resultsDiv.append(data.storesResultsHtml);\n }\n}\n\n/**\n * Search for stores with new zip code\n * @param {HTMLElement} element - the target html element\n * @returns {boolean} false to prevent default event\n */\nfunction search(element) {\n var dialog = element.closest('.in-store-inventory-dialog');\n var spinner = dialog.length ? dialog.spinner() : $.spinner();\n spinner.start();\n var $form = element.closest('.store-locator');\n var radius = $('.results').data('radius');\n var url = $form.attr('action');\n var urlParams = { radius: radius };\n\n var payload = $form.is('form') ? $form.serialize() : { postalCode: $form.find('[name=\"postalCode\"]').val() };\n\n url = appendToUrl(url, urlParams);\n\n $.ajax({\n url: url,\n type: $form.attr('method'),\n data: payload,\n dataType: 'json',\n success: function (data) {\n spinner.stop();\n updateStoresResults(data);\n $('.select-store').prop('disabled', true);\n }\n });\n return false;\n}\n\nmodule.exports = {\n init: function () {\n if ($('.map-canvas').data('has-google-api')) {\n maps();\n } else {\n $('.store-locator-no-apiKey').show();\n }\n\n if (!$('.results').data('has-results')) {\n $('.store-locator-no-results').show();\n }\n },\n\n detectLocation: function () {\n // clicking on detect location.\n $('.detect-location').on('click', function () {\n $.spinner().start();\n if (!navigator.geolocation) {\n $.spinner().stop();\n return;\n }\n\n navigator.geolocation.getCurrentPosition(function (position) {\n var $detectLocationButton = $('.detect-location');\n var url = $detectLocationButton.data('action');\n var radius = $('.results').data('radius');\n var urlParams = {\n radius: radius,\n lat: position.coords.latitude,\n long: position.coords.longitude\n };\n\n url = appendToUrl(url, urlParams);\n $.ajax({\n url: url,\n type: 'get',\n dataType: 'json',\n success: function (data) {\n $.spinner().stop();\n updateStoresResults(data);\n $('.select-store').prop('disabled', true);\n }\n });\n });\n });\n },\n\n search: function () {\n $('.store-locator-container form.store-locator').submit(function (e) {\n e.preventDefault();\n search($(this));\n });\n $('.store-locator-container .btn-storelocator-search[type=\"button\"]').click(function (e) {\n e.preventDefault();\n search($(this));\n });\n },\n\n changeRadius: function () {\n $('.store-locator-container .radius').change(function () {\n var radius = $(this).val();\n var searchKeys = $('.results').data('search-key');\n var url = $(this).data('action-url');\n var urlParams = {};\n\n if (searchKeys.postalCode) {\n urlParams = {\n radius: radius,\n postalCode: searchKeys.postalCode\n };\n } else if (searchKeys.lat && searchKeys.long) {\n urlParams = {\n radius: radius,\n lat: searchKeys.lat,\n long: searchKeys.long\n };\n }\n\n url = appendToUrl(url, urlParams);\n var dialog = $(this).closest('.in-store-inventory-dialog');\n var spinner = dialog.length ? dialog.spinner() : $.spinner();\n spinner.start();\n $.ajax({\n url: url,\n type: 'get',\n dataType: 'json',\n success: function (data) {\n spinner.stop();\n updateStoresResults(data);\n $('.select-store').prop('disabled', true);\n }\n });\n });\n },\n selectStore: function () {\n $('.store-locator-container').on('click', '.select-store', (function (e) {\n e.preventDefault();\n var selectedStore = $(':checked', '.results-card .results');\n var data = {\n storeID: selectedStore.val(),\n searchRadius: $('#radius').val(),\n searchPostalCode: $('.results').data('search-key').postalCode,\n storeDetailsHtml: selectedStore.siblings('label').find('.store-details').html(),\n event: e\n };\n\n $('body').trigger('store:selected', data);\n }));\n },\n updateSelectStoreButton: function () {\n $('body').on('change', '.select-store-input', (function () {\n $('.select-store').prop('disabled', false);\n }));\n }\n};\n","'use strict';\n\nmodule.exports = function (include) {\n if (typeof include === 'function') {\n include();\n } else if (typeof include === 'object') {\n Object.keys(include).forEach(function (key) {\n if (typeof include[key] === 'function') {\n include[key]();\n }\n });\n }\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","'use strict';\n\nvar processInclude = require('./util');\n\n$(document).ready(function () {\n processInclude(require('./storeLocator/storeLocator'));\n});\n"],"names":["appendToUrl","url","params","newUrl","indexOf","Object","keys","map","key","encodeURIComponent","join","maps","infowindow","google","InfoWindow","latlng","LatLng","mapOptions","scrollwheel","zoom","center","Map","$","mapdiv","attr","JSON","parse","bounds","LatLngBounds","markerImg","path","fillColor","fillOpacity","scale","strokeColor","strokeWeight","anchor","Point","labelOrigin","forEach","item","lable","parseInt","storeLocation","latitude","longitude","marker","Marker","position","title","name","icon","label","text","toString","color","fontSize","addListener","setOptions","content","infoWindowHtml","open","extend","length","fitBounds","updateStoresResults","data","$resultsDiv","$mapDiv","hasResults","stores","show","hide","empty","radius","searchKey","locations","storesResultsHtml","append","search","element","dialog","closest","spinner","start","$form","urlParams","payload","is","serialize","postalCode","find","val","ajax","type","dataType","success","stop","prop","module","exports","init","detectLocation","on","navigator","geolocation","getCurrentPosition","$detectLocationButton","lat","coords","submit","e","preventDefault","click","changeRadius","change","searchKeys","selectStore","selectedStore","storeID","searchRadius","searchPostalCode","storeDetailsHtml","siblings","html","event","trigger","updateSelectStoreButton","_typeof","o","Symbol","iterator","constructor","prototype","include","processInclude","require","document","ready"],"sourceRoot":""}