@rsltda/components 1.0.19 → 1.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,10 @@
1
- var W = Object.defineProperty;
2
- var J = (p, C, t) => C in p ? W(p, C, { enumerable: !0, configurable: !0, writable: !0, value: t }) : p[C] = t;
3
- var c = (p, C, t) => J(p, typeof C != "symbol" ? C + "" : C, t);
4
- function F(p, C) {
1
+ var J = Object.defineProperty;
2
+ var V = (p, C, e) => C in p ? J(p, C, { enumerable: !0, configurable: !0, writable: !0, value: e }) : p[C] = e;
3
+ var c = (p, C, e) => V(p, typeof C != "symbol" ? C + "" : C, e);
4
+ function _(p, C) {
5
5
  customElements.get(p) || customElements.define(p, C);
6
6
  }
7
- const V = "data:image/png;base64,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", j = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABXFJREFUeNrUW0tsE0cY/u0aBC3YRtCSQBCO6COkUkuqAlEuJCggwQEw5EClKsR9obZAidQeWoRIyoGqqtQEEIgL4SWBxCuckJIUzAUoqIp7SVukCkuJUah4ODYvJelj/vHs4KSJ45mdmV3/0mjt9fze+b/5/sfM7nrAkFz1vx4kh0WkVZMWYJ+z5Qo7RkmLVaVuJU2My6PZ6BA5rCNt0xgGTyQIxFHS2nWC4dFo+C7SGhT8HRrfTlqjDiA8GmiOhm/XgCsa30pAaHIlAMR4pPh50kKa3TZGWpgAEVfxZ15FxiPVLxswHlgs6WaAO88AZnwbmBd0iRrChJhjADhovDIQPDZ9vhucFwShQjYmeCWNDzKfd4MEWfA1GgTb2IXdIovIpPxoxAXIhaplZ39q+TyY/+VWmFwyJ2+d/sPH4K9THfl2LxV1BZ+EHbtkjH9l40pYcGifsF6ovEwEAGRmjTYGyM7+pNkBqPjlJ3hh+nT6faDzEtw7cx6GBtJ56T+8eE3kckIsEGXAFzKzP2vtCm58/94DcHtnq854gAyNKGcAi/wPZUZUfuYgBFYsh7/TabhR8i49V3b4e5ixYe2Eutk6+aZFwoAZOhhQLWM80h+NR0l1XOLB0DL+6W9/wD+p1MjU5PfD1IVvjNARSYvoqgSEqGoAlsnS35K7pzPpuui99c9XNpVr/qfzautODsCDji6Zy1az/QSlAEgtPgKVS+hxqO8OD2Yz16/j9H6r4wT9PJxKQ0/dp5kprF3OfxfIANnytg4XkALAvzJjTLLrOZW9gUxAxMD40tLF9HP8qx2Z/lVvwiRWJ0jQn2dPHQBIVX5jBbBcQW3OR5v4Z0n6C02WDzQKBrtsf5+w/8IyHjDRZSTpLyQ+3Rco2vaZsA76/q2PtxhZRGgF4GlPL/y5eSsUfVCft84TkhYTh45QXRMiUgj9CwUkpA7wqGZAcrxAOJav9+0/Qo8lWxroEctfjPAzV9XyPsMDKeg/fo734SvAk+dg+H4qp651PsdYlbtAbLxqsPTbb2Ba5WJ4dP0m+PyZFOcjRrzWsoenOTQq1PQ1TCGru2c9v3O6L9izg6bKbN37F7vostmqFpNXb0Dxh/U0QD7++SY9N0iC5ARjVQ5APFep27f7Oyje/jnN7RjE5m5uoMZjqYtV3azVtbTYsYy3gEFAHpy9QIsfK//jTKPxlm6wagkMJu5w41Enj8lSviP061gnp71TTo+zI/XUODQe5eWG90fU+fi7NcPZNT8ChsYPJhJcFzOHpYvnsHJ8kZXG3H1SaeGx2g2C426CFn9SB1PmzeV+bUnvD238d+4aAT89PutNwL0LnXStMFoX+2AMGbo7wP8b+2f3w9iBv9vdExDdELkNZm5+2BG8s1yhwwVQ2gsgAx4V6ezV+ecOSbs2ANgdmJibjRfdFZa5L9DqYgCExyZ1a8ylwTBOZr9UVEn2zpAbY0Gz1sXQKAYEWU0QKuTZl2YAe1an2UWzH5FVtPt8QDdI7hUqlCiZkBpZZbuPyDS6YPZtjcEWAOzmg5PVYYvdR2S8imYg6YDxSuKQbQBY5eVEQIyoeHBS5XOCl0Hy/qHpwKfaBUwHxKSdtKcNABaMTLhCs6qnRJW6gKHaQBn1dbiAbldQSn1tALDaoMXt1NfJAGtlFldMfR2g6gGA5eeIQuqHdUVUXQxQ6QqRgntlRmFWwD2+sM7xeUG/RGxQP6J7cNoBYAWSTGoMm3h1zgQDgEXwqGDKi5oYmxEArBnNc9kcVf1mmCsAYHQO5+H3YYOTYpQBVmrMtWCqMfXKrCMAMBCaxokHjXa3twoCgKx4EB+V71ucGIgjAIyKB3ET+d6Vgu8dqnoDVFb+E2AAEkYQxr2UiokAAAAASUVORK5CYII=", K = "data:image/png;base64,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", X = "data:image/png;base64,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", $ = "data:image/png;base64,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", tt = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABG5JREFUeNrkW01ME0EUfm0UDxgoqOGgCa1EPWBiBZSDBwsoZxuNeNNe0JuSmBi8ABeBk3BS8EC44V9s4s2D1sQLEW09ikFqwsXESDV4QRN8L51Kf2bbnd2Z2dn4kkmbne523jff996b2d0AaLKtAQjhRxRbDFsj+15sr9lnClsm8BByOsYVUOx0GD/OYbvMcbiWERDz2JIqwQgodHwE2xUJlyPnk9iGVAARUEBzcvyGAlzJ+WkEYdRIANB5ovgzbGHFss1giyMQWRkXC0pynqj+SoPzwGJJmgHuPQOY83Og30gSPciEjGcAeOi8NBACLjWfBu+NQDjuNCYEHTofYpo3wUIs+GoNgnPsj02xKE7KXS0SwD+KGTT75RYRlYITBoyAuTanlAGGz74jFogy4DqYbyNKGMAi/7rIxb/8wBN+S4x0e+2lRWRAk91r7hD4/5jogDteAnzflON8F7r0tt9eWiSpIggp2QCcFhnwz18Aw4f5fSvYd3+18vi1CEBbPf+cMy1CeMXYfoJUACwXH7exEH1XtlI/uw/gZnteBoNF9WInCqmprvIazXjs3sn896cYwmbLwliknkngD8ClxUppPT4B0LAN3jEVEohazfT4x8rjk0fzjpDzBRkMHAC4g8f3PK/8/cX9285fWKzsv3UoD6aVrBpKmWN7VSqSBbiV3ywn4bTtBni0lnekMNjhIwALp9DBNb4DVw9aO18rpvS32GerGwZwbXy58tj6ZikrnnQDnA9XB2xlo7rzfW+s+0hunmyI0IzxZsQq8pNcXnzl91Vzvma2CXkEwMSyvd9RHCD9TnyyyAob7ljY2+IBAJlvAEucsogCHY8RROGZVXv5XqSP5ONGyCIAlCS6mc/8YLTQzR8ozXKtoohiRZcFnalGmGy3rf+cCgAyxVrmFTKD4fxskCPNdWIzUQiUSzl+H9UI7zl9naHqY5WZBf7F74ZdAOk+61q9tREH22t/HdC0M38O2YMO6z4CuLwijGoE4EPxWbUWJjToVskLHip2ovWCY5UogRT4x1LSAWBbz1kfOJ9RuSGS9AEA8yrrgHkfAJBUBgCTQcZk53XsCk8bDIDw2BzdGtsagFXQcydYxLI4+xFdawETY8GYk5OcMoDqr7RBLHA0+44ZwJ7VGTNo9hNOT3T7fACxIOqx8ymckB5PNkTQhgyYfVdjcAUAu/ngZXU45fYRmaAk/eU8cF5KHHINgIcBMSHjwUmZzwnSbfOYHwKfbAnoDog5N2lPGQAsGOmQwpisp0SlSkBTbSCN+iokoFoKUqmvDABWG0yZTn1lElC0WJJOfZUSKNQGCYnUj6uKqEFVF5YohYTvXpmRmBVojy+ucnxBUG8JF9RPqB6ccgBYgeQkNcZ1vDqngwEEAsWClGDKS2kZm66lG0uNtJtc64EWZSnPMwYUpca4Dd3HQaMFdf4Zo3W1BVOPrldmPQGAgTBqEQ+G3G5v+QKAQoSH0lvtSRYo4b8AoCweZHXkeyON3juU9QaoU/srwAB77Uga7jO8tAAAAABJRU5ErkJggg==", et = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hJREFUeNrkWv91sjAUTXv6v+0EuoFsIJ2gdgM2KE4gTsBxAusE6ATRCdAJaCdAJ+DLTX2U9tNWKCSB3HPeIUgE7s19+QHcMHW4F+GIcEX0TuUitqftRsROxIF1AAMRvohYRFYyuAjvJFwriS8qkD4X6elcrRACNxnWRPycEIHJ5JHTSUPkixGfHGYUvFMLZYoiPdOJaiWfaQgjRNBF3ggRHM3kiyIMdPT2qSECUMeoFJFB5ClCVeRdA8lTKEkFbrAA3ObWV+KCqAUCLMoQuqnQ85cbLu4/1jCHw8fq1nEc9vb2JrfngGMI13VlnMNms5FxAbjQQxOtP67SIlEUZYvFQpYFoQzAfhzH2SWMx+PsJwRB8Nt13SYEKLXKA0kiikA5SRJJLk3TzPO8//4ThmFOEMB+xTQItPb+IEtAq4s0kKQBYX0ZJMJgMJB1EHALOYDqX3LIL/cQNSFAei15EAE5AATpdzgA5LFPIvi+/4Us5zw/FwlDQalRrKNyZngVedgdhBAgXHQEEaU+gVoa5KhPOJcaFHDSlQJkygUAKSJebE2y9Xfgd+Q6iEMoOAVbcsUfO8GsiWHw4knFzTMhwOfj3e2W9Xq9fKjDsPb+/p4f7/f78j/AbreTQ+V6vZb1ptMp2+/3X+rgfLSP+vP5XNatg9tdHdagcXs2m7HRaJSP+SCGMsitVqvP3pTz/NhyuWQiFSQ57GP7/Pws64AsiQABUT4ej0y4hj081DPU39WZIyBPQpAIaLmnpye5j2Ovr6+yBeEO1Ad5YDgcSlFo4gRMJhN5vDhpgrN+mAQ1KsDhp0fTuKnHx0cm8lOSQGuBIAAHFGdvLy8vOSlKATgEZRCk3+ECAIKhDpwGAa+8V6tWgZVXhbdlUr1FL2Z2TQiwb5EAjdyr06IUaOyZQNIC8qWmwbclBVi1wP5LG94FaH0wGhtMPlJhMc9gAVxVeWZiZ5hUIXJrYkdTETOVF7s3zAWJDsU9G3PfxBGB68w7E16Vaf9KROfrstCE3lfXxxIpM+jbQV+DAGPTxmFuS8ene6Gk5aOoaxEoEMA3fT0e22Z9VXMDo63/HaGN1m9yscRZC+GyDk54dKTCmLUcfxkVItYBODZav461gss6hjJrhYB1ENcumznrMFyb8r7KgslhloC3fapb91Q5YhaC5geJDXl/CZ7uvP8nwAAeipVa4iJE4AAAAABJRU5ErkJggg==", nt = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABIlJREFUeNrkWs11ozAQlnf3bm8H7iD4treQCuKtIKSCcM0p5LgnXiqwOyCpAPu2NzsV4A5wKmD1sR4iE4k/I4HN9948jBlAM5o/jRgxc5hwsjjZnMaH3yLWh+OK05bTnl0AppxcThtOSU0KOTkHxZ2l4IsGQssoPjzrLBSBQfotCS5ThNf2gEctPgs+HRxmX81kWWw6naZHEdvtlu12u/RYAjD85rTr08w7hxmSzt58Pk8Wi0USx3FSBvCA17btMmuw+iS8dKCO4yRRFCVNgXuhvD4rQSo8N/EkDMOkLeBZeGbflGCpZr2KqdcFnqlwi7gs7uiK9rFMeN3AOyRK2JhWQNCF8CVK8E0Jb+dfDtM0CbgDT6MyJRhxhVB86WQyOSnSN8Vms1GVz2Zn3/f9pCt4nmfcCoJ8uusScAVYYE4BC12lMEX+DLxiYzwgFd603/9f1fKBZiUvSmFVyYtroNVqxdbrtZTn+vqa8biT/n5+fmbcEo5eyemnjtmf582tSr5HJUcZAgUNZQxFEEspCILChRFMX6wWJTy2DgX4+fq+LFWRoCD8hstAOJgt6v08XNfNBMQR51UgUaanPfoXBT8xT2PWRV9F9AaREjCD4AFR3U9KKrKQkmAY6FDAUeWnqvUhPK3+wEcpkiwAwlMag5BQpCisWFOQYojINfJ1h8RltFSGpf5PJg+BQJQlyCJIUIoJNNMQjsxY5hpi1JcpgGJLjvQqQCY8CS7Opmo5i/9huhAcioKl4EhWUTUIEpoqYFRTAZ8nyecpOjn39/ef1RJPUUh/lOootYn8IOoQgff29jblQVrDfyIPnkfnuPbw8HD0vFSQ0aiRbD9a6YAe8jbyMY7j8TirAZD/IRyf8Yz/5uYmu3Z3d8fe3t5S4XCOI3eNlIcUQe8gntlsxrg7fKk1mqCxAjCY/CxAeNDT01NW+IAPAuIchQ0Exgy+v7+nvLgG4Pzj4+NIGO4K7PX1Nb0mCktFkNhPNKGAvdiazisAg+LBKDVhDBLXISAAC8B1GvjLy0s26Kurq8wFyB3INWAFABSG/6E8WeUpsYC99jpAFoi6AhVQTVaF3+pYfVtm1zbI0nKt89bhNlkL6IZiLeDosIAval4ul53PPuJJlbG2hegM+gG1yuDvDTY9f4nRFwVIPi2ZwuPjo8z//3D6a2wvoGc9QSON0S97/ajnTQZEvEuxUxSYsDxHtSNkCgXdJGO+GHWhBMx8wWZpZDL+eKqlKpbAOtwBcaaoj1gn97e1NxipBoPAmG9bnQI0SYpaZKZnv/S7ANEaTtkmx70lH0oY9/3SjCAjmC66PFXSJdIbeBVRvvXtsFO/EbLrDgB9ASx16UgLK+ogNWhuzHQtfhpvlRskn/UA0o8lDFDMevTtoNuBAuasZwgNCh+yHsIyaPpT1lN4BhTgsp5jMzTTl9UGgzP9PPwhmn7lxdKlmr4uV+hVwdOFK8zZmeOUrBCwC4A1RNNvY61gswtDnbWCxy4QVZfNIbtg2EPy+yYLJosNBOG5l7ptl8oBGyCoPoiG4PcqOF37/T8BBgCThigH5VpvfwAAAABJRU5ErkJggg==", ot = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABJZJREFUeNrsW79PE1Ec/9ZWfoWDm4yLeOwidZaEDg4mLDiqgx1hsk7oRJmECV10BBZ0McUB49aSYOJgUrAOJg4t8Ae0iAFKgPN966Fce+/uvbt77+6on+RLmvbufd/3+76/7wBoc8Qk8VEJpQiNEkoapDZdUyO0YdAaoYLxXaSBQucI6S4pZ6wRScGLHgRvpnxUFKF6PHEWi1DDGgOSxgY1R/MY6QG1/xIkb/5hv/FVh9ruKRTW91n4VAjdM2JFaJAmVKWdnNqf0DOTffrGepeu18CW8Bq8Fu+xsYSqwTM0wlMFX3ytOApNI7zXQRGBKyFJO/n0A0WvbsddC39GuAauZWMJySADXtlqY15O3c4abJSgBqGAnCzhGZSQCyLPSxWeQQlS64S8lc+LFv6MKDGhLKsOSBkK+BcM+hNQLumg9p1AZacDtrYTtgtcHzgG7dqRa+3Xfsbh1kgCKtv15p+wPliR7vvnTX9+VnGs6DC1lUsdIlwhJyPym5hqA50taQu/c1ICqQY9uwKFD1dGSLgwf3MV9LCD/P1niugG+dU4cYMe24UeP9Uhxpm8ss8UmJ7aM/HOPm9xg3FCi6IsYL5Z4yzlrRWhCzhUeY5ug7wtrp0XaQHJ5uA3fOOQevH7D72wUYrZBsM0Nkaq7sx4SCeB85fpO+SNe6jtHlP36De4/JhyQiYaH+v1FAdwDxbrMiPOqYCsydnGuuHunTr14qtXjiEWU0ibS095338cEQtQoF5PwNbO5RbaJSkP16Fhs9QNn7+07GFGlAuYUwKD6WLQmp6i/772qQdSY3v0oDOr2LoZyx7scCnodnL09n5DSCsQ94DMxJ5Q/glZgmJAfPHqlPLrCZCcbqTUc6lych/CBk/FzPBQt21AXFnulR4EeV2gYBrObZ9w3byyfNJIW9TR0uQhLL1RGv0EKyz2UBCpgIqZeZ1rs9gAVbeOgZxcC5HavpHPM08PiJLYFIu8LRqiikgFrLWc6mqnL7716P4eZCb7iCK6GuU0k0VZ814TGQM0p2bISxnMO1OgNEOa6EBY9GMS1Nw2o0J4hqiUdrgoIxNk/LCC5gjOmwEop5+RoQDNKoWRVtW1K+CDEJ77kBcllWogCXm/8jjvZAh5AP0BqrRSeImWxze/dfGZE8dsENdGHjx7EokqbXDhxhJYTt5mgFJ2K0TcgwK6rUZkh/VTePvuqNEGp0aOfNH0zJwCE09+Ndam4CVvBShkQGqVHQqr7oefeC/DgDWwR2OIBZZ5HjZBmPdZAh5egzneqXE6R1kvAnh9QULj9T8iGAwOxP++HHEGfEmiTBqbzdIB1zMSQoMQ8MtUCyDulRihpy+0MJJAvvh+3AcF1AxXSklW/Byhj2GZFKlg846QACoHGfmZmySBlIaQoixB+DyEGCkJCkhCyCHyTdF5iAA0QQGxGsbAR0O2nQIf8+zwogY+GpI+mr4GEYUfrpCBiKPYbqbvlytE2vT9cIUMXDAU28303RZIkSp4eJFmUMA4XHAsRL3W92N4YhUPitBGaP5fowuV8tzEg8D8PhGgAhYJDRufV+A/gsFvAQYAGFubR/xBobMAAAAASUVORK5CYII=", at = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA9xJREFUeNrsWz124jAQHjY5gEtK7wkwJ1hKSvYGvkGcE4Qtt+JxAucGpkxn6NKZdOnMDUyZzqvhmd2gSLJk/dmw33vzSBxjSaOZb37kANw4Ro7GCYjMiPwgEjUSUPcciewb2RHZNtcGDVx0RqTuKFnzjEEuvNBYOC35UBQRaO64jEUEfeWAqJlg2GoesxkEQQBRFJ1+3+/3cDweYbvdyoxzIPKz4YreICZS8XaOLLZOkqQuiqJuA96D9+J3BJZQNWP2ZvHchadpWncFfrdFEd6VEPF2Po7juqqqWhf4DHyWwBIin4RXsiams+siaxAoIfChgMzV4iWUkPmI804XL6EEp3lCzvJ5V+BwQukqD5g1CvhHBiSml2V5+jwcDicRIQzDk3QF5gzT6ZQ1DuYHG+e+/9n0V6tVa0aHoY0ozIYrZC6Y/2JQspNfwhZea1MCyQa1XYEzjlJEuO9g/pdZUHyZi6Ab5Hne6gaPj48wGql54HK5hKenp4ux8RqFBZFnWxawojUuk96ygC7QkuW1ug2Ozbh3ZdMCInq3zwUNC5vNBt7e3oRkeC6M2jCZTL4QJ46N30VS5M3RNJT8mLNDF7JYLLR4AOfAeK407hQVcOFwZPIwn8+5N4/H45Ofi8rc9/f30y5+fHz8DaGfBXcXn8MDWtjr6yt9+ZcTCyAEpM3khDCFFoJhVQScg44FfPPeOyMcQBbJ/BtaWJIkVse/d7VQJMT1ei0kRDqkPjw89K7np5XMENYWmnuWZc5JUKsIorNA3dh/7iCppMmMbDC3qYCUnrRuTk/n9qgE2U4Sjs1QZGqTBHcs3zbSWCT+j4RHFCGVGAnG3tm0gLCtGNJxBdWeAqcYCm0TYWGiE0SXzSqmLyiHCxeRIDFhBTSDq0YAzu4nLhQQshi8S1Z4dgU8CFEBJ/tzYv7cnmDXOK4aRXAM4B+g+j0Nwt3s2h+QAT5bkEc4PyWqeEroYgkyOy9YfAkesBSltSYqRQmfP8vS19GYcGLI1Fju6pTKEg1Wb0djzNSYJVgEYdyXITy8B2N8W+FkavdHBkKikv9hHw9LX7qXiC9JYAcIP1XOSIh8B88vU6Vg75WYXvq+VGLkQIz4/p0BBRwbV5o5VvxvIi996RQFIHhHyIKUPplfukiyKDH0FKWDxefQY8wcKCCCnsPmm6IrGABCS4RY9ZH4OhVK10Z80r3DayU+btpv0PRDGChMuEICA0dxa6ZvyhUGbfomXCGBK0Nxa6bfNUEaVMKjilhCAQu4cqRDz/VNNE9YfFDADYH+X6OrCnld+MCb3997VMAzkUnz8wb+ww/+CDAA4q4zpysTtacAAAAASUVORK5CYII=", it = /* @__PURE__ */ Object.assign({
7
+ const j = "data:image/png;base64,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", K = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABXFJREFUeNrUW0tsE0cY/u0aBC3YRtCSQBCO6COkUkuqAlEuJCggwQEw5EClKsR9obZAidQeWoRIyoGqqtQEEIgL4SWBxCuckJIUzAUoqIp7SVukCkuJUah4ODYvJelj/vHs4KSJ45mdmV3/0mjt9fze+b/5/sfM7nrAkFz1vx4kh0WkVZMWYJ+z5Qo7RkmLVaVuJU2My6PZ6BA5rCNt0xgGTyQIxFHS2nWC4dFo+C7SGhT8HRrfTlqjDiA8GmiOhm/XgCsa30pAaHIlAMR4pPh50kKa3TZGWpgAEVfxZ15FxiPVLxswHlgs6WaAO88AZnwbmBd0iRrChJhjADhovDIQPDZ9vhucFwShQjYmeCWNDzKfd4MEWfA1GgTb2IXdIovIpPxoxAXIhaplZ39q+TyY/+VWmFwyJ2+d/sPH4K9THfl2LxV1BZ+EHbtkjH9l40pYcGifsF6ovEwEAGRmjTYGyM7+pNkBqPjlJ3hh+nT6faDzEtw7cx6GBtJ56T+8eE3kckIsEGXAFzKzP2vtCm58/94DcHtnq854gAyNKGcAi/wPZUZUfuYgBFYsh7/TabhR8i49V3b4e5ixYe2Eutk6+aZFwoAZOhhQLWM80h+NR0l1XOLB0DL+6W9/wD+p1MjU5PfD1IVvjNARSYvoqgSEqGoAlsnS35K7pzPpuui99c9XNpVr/qfzautODsCDji6Zy1az/QSlAEgtPgKVS+hxqO8OD2Yz16/j9H6r4wT9PJxKQ0/dp5kprF3OfxfIANnytg4XkALAvzJjTLLrOZW9gUxAxMD40tLF9HP8qx2Z/lVvwiRWJ0jQn2dPHQBIVX5jBbBcQW3OR5v4Z0n6C02WDzQKBrtsf5+w/8IyHjDRZSTpLyQ+3Rco2vaZsA76/q2PtxhZRGgF4GlPL/y5eSsUfVCft84TkhYTh45QXRMiUgj9CwUkpA7wqGZAcrxAOJav9+0/Qo8lWxroEctfjPAzV9XyPsMDKeg/fo734SvAk+dg+H4qp651PsdYlbtAbLxqsPTbb2Ba5WJ4dP0m+PyZFOcjRrzWsoenOTQq1PQ1TCGru2c9v3O6L9izg6bKbN37F7vostmqFpNXb0Dxh/U0QD7++SY9N0iC5ARjVQ5APFep27f7Oyje/jnN7RjE5m5uoMZjqYtV3azVtbTYsYy3gEFAHpy9QIsfK//jTKPxlm6wagkMJu5w41Enj8lSviP061gnp71TTo+zI/XUODQe5eWG90fU+fi7NcPZNT8ChsYPJhJcFzOHpYvnsHJ8kZXG3H1SaeGx2g2C426CFn9SB1PmzeV+bUnvD238d+4aAT89PutNwL0LnXStMFoX+2AMGbo7wP8b+2f3w9iBv9vdExDdELkNZm5+2BG8s1yhwwVQ2gsgAx4V6ezV+ecOSbs2ANgdmJibjRfdFZa5L9DqYgCExyZ1a8ylwTBOZr9UVEn2zpAbY0Gz1sXQKAYEWU0QKuTZl2YAe1an2UWzH5FVtPt8QDdI7hUqlCiZkBpZZbuPyDS6YPZtjcEWAOzmg5PVYYvdR2S8imYg6YDxSuKQbQBY5eVEQIyoeHBS5XOCl0Hy/qHpwKfaBUwHxKSdtKcNABaMTLhCs6qnRJW6gKHaQBn1dbiAbldQSn1tALDaoMXt1NfJAGtlFldMfR2g6gGA5eeIQuqHdUVUXQxQ6QqRgntlRmFWwD2+sM7xeUG/RGxQP6J7cNoBYAWSTGoMm3h1zgQDgEXwqGDKi5oYmxEArBnNc9kcVf1mmCsAYHQO5+H3YYOTYpQBVmrMtWCqMfXKrCMAMBCaxokHjXa3twoCgKx4EB+V71ucGIgjAIyKB3ET+d6Vgu8dqnoDVFb+E2AAEkYQxr2UiokAAAAASUVORK5CYII=", X = "data:image/png;base64,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", $ = "data:image/png;base64,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", ee = "data:image/png;base64,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", te = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABG5JREFUeNrkW01ME0EUfm0UDxgoqOGgCa1EPWBiBZSDBwsoZxuNeNNe0JuSmBi8ABeBk3BS8EC44V9s4s2D1sQLEW09ikFqwsXESDV4QRN8L51Kf2bbnd2Z2dn4kkmbne523jff996b2d0AaLKtAQjhRxRbDFsj+15sr9lnClsm8BByOsYVUOx0GD/OYbvMcbiWERDz2JIqwQgodHwE2xUJlyPnk9iGVAARUEBzcvyGAlzJ+WkEYdRIANB5ovgzbGHFss1giyMQWRkXC0pynqj+SoPzwGJJmgHuPQOY83Og30gSPciEjGcAeOi8NBACLjWfBu+NQDjuNCYEHTofYpo3wUIs+GoNgnPsj02xKE7KXS0SwD+KGTT75RYRlYITBoyAuTanlAGGz74jFogy4DqYbyNKGMAi/7rIxb/8wBN+S4x0e+2lRWRAk91r7hD4/5jogDteAnzflON8F7r0tt9eWiSpIggp2QCcFhnwz18Aw4f5fSvYd3+18vi1CEBbPf+cMy1CeMXYfoJUACwXH7exEH1XtlI/uw/gZnteBoNF9WInCqmprvIazXjs3sn896cYwmbLwliknkngD8ClxUppPT4B0LAN3jEVEohazfT4x8rjk0fzjpDzBRkMHAC4g8f3PK/8/cX9285fWKzsv3UoD6aVrBpKmWN7VSqSBbiV3ywn4bTtBni0lnekMNjhIwALp9DBNb4DVw9aO18rpvS32GerGwZwbXy58tj6ZikrnnQDnA9XB2xlo7rzfW+s+0hunmyI0IzxZsQq8pNcXnzl91Vzvma2CXkEwMSyvd9RHCD9TnyyyAob7ljY2+IBAJlvAEucsogCHY8RROGZVXv5XqSP5ONGyCIAlCS6mc/8YLTQzR8ozXKtoohiRZcFnalGmGy3rf+cCgAyxVrmFTKD4fxskCPNdWIzUQiUSzl+H9UI7zl9naHqY5WZBf7F74ZdAOk+61q9tREH22t/HdC0M38O2YMO6z4CuLwijGoE4EPxWbUWJjToVskLHip2ovWCY5UogRT4x1LSAWBbz1kfOJ9RuSGS9AEA8yrrgHkfAJBUBgCTQcZk53XsCk8bDIDw2BzdGtsagFXQcydYxLI4+xFdawETY8GYk5OcMoDqr7RBLHA0+44ZwJ7VGTNo9hNOT3T7fACxIOqx8ymckB5PNkTQhgyYfVdjcAUAu/ngZXU45fYRmaAk/eU8cF5KHHINgIcBMSHjwUmZzwnSbfOYHwKfbAnoDog5N2lPGQAsGOmQwpisp0SlSkBTbSCN+iokoFoKUqmvDABWG0yZTn1lElC0WJJOfZUSKNQGCYnUj6uKqEFVF5YohYTvXpmRmBVojy+ucnxBUG8JF9RPqB6ccgBYgeQkNcZ1vDqngwEEAsWClGDKS2kZm66lG0uNtJtc64EWZSnPMwYUpca4Dd3HQaMFdf4Zo3W1BVOPrldmPQGAgTBqEQ+G3G5v+QKAQoSH0lvtSRYo4b8AoCweZHXkeyON3juU9QaoU/srwAB77Uga7jO8tAAAAABJRU5ErkJggg==", ne = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hJREFUeNrkWv91sjAUTXv6v+0EuoFsIJ2gdgM2KE4gTsBxAusE6ATRCdAJaCdAJ+DLTX2U9tNWKCSB3HPeIUgE7s19+QHcMHW4F+GIcEX0TuUitqftRsROxIF1AAMRvohYRFYyuAjvJFwriS8qkD4X6elcrRACNxnWRPycEIHJ5JHTSUPkixGfHGYUvFMLZYoiPdOJaiWfaQgjRNBF3ggRHM3kiyIMdPT2qSECUMeoFJFB5ClCVeRdA8lTKEkFbrAA3ObWV+KCqAUCLMoQuqnQ85cbLu4/1jCHw8fq1nEc9vb2JrfngGMI13VlnMNms5FxAbjQQxOtP67SIlEUZYvFQpYFoQzAfhzH2SWMx+PsJwRB8Nt13SYEKLXKA0kiikA5SRJJLk3TzPO8//4ThmFOEMB+xTQItPb+IEtAq4s0kKQBYX0ZJMJgMJB1EHALOYDqX3LIL/cQNSFAei15EAE5AATpdzgA5LFPIvi+/4Us5zw/FwlDQalRrKNyZngVedgdhBAgXHQEEaU+gVoa5KhPOJcaFHDSlQJkygUAKSJebE2y9Xfgd+Q6iEMoOAVbcsUfO8GsiWHw4knFzTMhwOfj3e2W9Xq9fKjDsPb+/p4f7/f78j/AbreTQ+V6vZb1ptMp2+/3X+rgfLSP+vP5XNatg9tdHdagcXs2m7HRaJSP+SCGMsitVqvP3pTz/NhyuWQiFSQ57GP7/Pws64AsiQABUT4ej0y4hj081DPU39WZIyBPQpAIaLmnpye5j2Ovr6+yBeEO1Ad5YDgcSlFo4gRMJhN5vDhpgrN+mAQ1KsDhp0fTuKnHx0cm8lOSQGuBIAAHFGdvLy8vOSlKATgEZRCk3+ECAIKhDpwGAa+8V6tWgZVXhbdlUr1FL2Z2TQiwb5EAjdyr06IUaOyZQNIC8qWmwbclBVi1wP5LG94FaH0wGhtMPlJhMc9gAVxVeWZiZ5hUIXJrYkdTETOVF7s3zAWJDsU9G3PfxBGB68w7E16Vaf9KROfrstCE3lfXxxIpM+jbQV+DAGPTxmFuS8ene6Gk5aOoaxEoEMA3fT0e22Z9VXMDo63/HaGN1m9yscRZC+GyDk54dKTCmLUcfxkVItYBODZav461gss6hjJrhYB1ENcumznrMFyb8r7KgslhloC3fapb91Q5YhaC5geJDXl/CZ7uvP8nwAAeipVa4iJE4AAAAABJRU5ErkJggg==", oe = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABIlJREFUeNrkWs11ozAQlnf3bm8H7iD4treQCuKtIKSCcM0p5LgnXiqwOyCpAPu2NzsV4A5wKmD1sR4iE4k/I4HN9948jBlAM5o/jRgxc5hwsjjZnMaH3yLWh+OK05bTnl0AppxcThtOSU0KOTkHxZ2l4IsGQssoPjzrLBSBQfotCS5ThNf2gEctPgs+HRxmX81kWWw6naZHEdvtlu12u/RYAjD85rTr08w7hxmSzt58Pk8Wi0USx3FSBvCA17btMmuw+iS8dKCO4yRRFCVNgXuhvD4rQSo8N/EkDMOkLeBZeGbflGCpZr2KqdcFnqlwi7gs7uiK9rFMeN3AOyRK2JhWQNCF8CVK8E0Jb+dfDtM0CbgDT6MyJRhxhVB86WQyOSnSN8Vms1GVz2Zn3/f9pCt4nmfcCoJ8uusScAVYYE4BC12lMEX+DLxiYzwgFd603/9f1fKBZiUvSmFVyYtroNVqxdbrtZTn+vqa8biT/n5+fmbcEo5eyemnjtmf582tSr5HJUcZAgUNZQxFEEspCILChRFMX6wWJTy2DgX4+fq+LFWRoCD8hstAOJgt6v08XNfNBMQR51UgUaanPfoXBT8xT2PWRV9F9AaREjCD4AFR3U9KKrKQkmAY6FDAUeWnqvUhPK3+wEcpkiwAwlMag5BQpCisWFOQYojINfJ1h8RltFSGpf5PJg+BQJQlyCJIUIoJNNMQjsxY5hpi1JcpgGJLjvQqQCY8CS7Opmo5i/9huhAcioKl4EhWUTUIEpoqYFRTAZ8nyecpOjn39/ef1RJPUUh/lOootYn8IOoQgff29jblQVrDfyIPnkfnuPbw8HD0vFSQ0aiRbD9a6YAe8jbyMY7j8TirAZD/IRyf8Yz/5uYmu3Z3d8fe3t5S4XCOI3eNlIcUQe8gntlsxrg7fKk1mqCxAjCY/CxAeNDT01NW+IAPAuIchQ0Exgy+v7+nvLgG4Pzj4+NIGO4K7PX1Nb0mCktFkNhPNKGAvdiazisAg+LBKDVhDBLXISAAC8B1GvjLy0s26Kurq8wFyB3INWAFABSG/6E8WeUpsYC99jpAFoi6AhVQTVaF3+pYfVtm1zbI0nKt89bhNlkL6IZiLeDosIAval4ul53PPuJJlbG2hegM+gG1yuDvDTY9f4nRFwVIPi2ZwuPjo8z//3D6a2wvoGc9QSON0S97/ajnTQZEvEuxUxSYsDxHtSNkCgXdJGO+GHWhBMx8wWZpZDL+eKqlKpbAOtwBcaaoj1gn97e1NxipBoPAmG9bnQI0SYpaZKZnv/S7ANEaTtkmx70lH0oY9/3SjCAjmC66PFXSJdIbeBVRvvXtsFO/EbLrDgB9ASx16UgLK+ogNWhuzHQtfhpvlRskn/UA0o8lDFDMevTtoNuBAuasZwgNCh+yHsIyaPpT1lN4BhTgsp5jMzTTl9UGgzP9PPwhmn7lxdKlmr4uV+hVwdOFK8zZmeOUrBCwC4A1RNNvY61gswtDnbWCxy4QVZfNIbtg2EPy+yYLJosNBOG5l7ptl8oBGyCoPoiG4PcqOF37/T8BBgCThigH5VpvfwAAAABJRU5ErkJggg==", ae = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABJZJREFUeNrsW79PE1Ec/9ZWfoWDm4yLeOwidZaEDg4mLDiqgx1hsk7oRJmECV10BBZ0McUB49aSYOJgUrAOJg4t8Ae0iAFKgPN966Fce+/uvbt77+6on+RLmvbufd/3+76/7wBoc8Qk8VEJpQiNEkoapDZdUyO0YdAaoYLxXaSBQucI6S4pZ6wRScGLHgRvpnxUFKF6PHEWi1DDGgOSxgY1R/MY6QG1/xIkb/5hv/FVh9ruKRTW91n4VAjdM2JFaJAmVKWdnNqf0DOTffrGepeu18CW8Bq8Fu+xsYSqwTM0wlMFX3ytOApNI7zXQRGBKyFJO/n0A0WvbsddC39GuAauZWMJySADXtlqY15O3c4abJSgBqGAnCzhGZSQCyLPSxWeQQlS64S8lc+LFv6MKDGhLKsOSBkK+BcM+hNQLumg9p1AZacDtrYTtgtcHzgG7dqRa+3Xfsbh1kgCKtv15p+wPliR7vvnTX9+VnGs6DC1lUsdIlwhJyPym5hqA50taQu/c1ICqQY9uwKFD1dGSLgwf3MV9LCD/P1niugG+dU4cYMe24UeP9Uhxpm8ss8UmJ7aM/HOPm9xg3FCi6IsYL5Z4yzlrRWhCzhUeY5ug7wtrp0XaQHJ5uA3fOOQevH7D72wUYrZBsM0Nkaq7sx4SCeB85fpO+SNe6jtHlP36De4/JhyQiYaH+v1FAdwDxbrMiPOqYCsydnGuuHunTr14qtXjiEWU0ibS095338cEQtQoF5PwNbO5RbaJSkP16Fhs9QNn7+07GFGlAuYUwKD6WLQmp6i/772qQdSY3v0oDOr2LoZyx7scCnodnL09n5DSCsQ94DMxJ5Q/glZgmJAfPHqlPLrCZCcbqTUc6lych/CBk/FzPBQt21AXFnulR4EeV2gYBrObZ9w3byyfNJIW9TR0uQhLL1RGv0EKyz2UBCpgIqZeZ1rs9gAVbeOgZxcC5HavpHPM08PiJLYFIu8LRqiikgFrLWc6mqnL7716P4eZCb7iCK6GuU0k0VZ814TGQM0p2bISxnMO1OgNEOa6EBY9GMS1Nw2o0J4hqiUdrgoIxNk/LCC5gjOmwEop5+RoQDNKoWRVtW1K+CDEJ77kBcllWogCXm/8jjvZAh5AP0BqrRSeImWxze/dfGZE8dsENdGHjx7EokqbXDhxhJYTt5mgFJ2K0TcgwK6rUZkh/VTePvuqNEGp0aOfNH0zJwCE09+Ndam4CVvBShkQGqVHQqr7oefeC/DgDWwR2OIBZZ5HjZBmPdZAh5egzneqXE6R1kvAnh9QULj9T8iGAwOxP++HHEGfEmiTBqbzdIB1zMSQoMQ8MtUCyDulRihpy+0MJJAvvh+3AcF1AxXSklW/Byhj2GZFKlg846QACoHGfmZmySBlIaQoixB+DyEGCkJCkhCyCHyTdF5iAA0QQGxGsbAR0O2nQIf8+zwogY+GpI+mr4GEYUfrpCBiKPYbqbvlytE2vT9cIUMXDAU28303RZIkSp4eJFmUMA4XHAsRL3W92N4YhUPitBGaP5fowuV8tzEg8D8PhGgAhYJDRufV+A/gsFvAQYAGFubR/xBobMAAAAASUVORK5CYII=", ie = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA9xJREFUeNrsWz124jAQHjY5gEtK7wkwJ1hKSvYGvkGcE4Qtt+JxAucGpkxn6NKZdOnMDUyZzqvhmd2gSLJk/dmw33vzSBxjSaOZb37kANw4Ro7GCYjMiPwgEjUSUPcciewb2RHZNtcGDVx0RqTuKFnzjEEuvNBYOC35UBQRaO64jEUEfeWAqJlg2GoesxkEQQBRFJ1+3+/3cDweYbvdyoxzIPKz4YreICZS8XaOLLZOkqQuiqJuA96D9+J3BJZQNWP2ZvHchadpWncFfrdFEd6VEPF2Po7juqqqWhf4DHyWwBIin4RXsiams+siaxAoIfChgMzV4iWUkPmI804XL6EEp3lCzvJ5V+BwQukqD5g1CvhHBiSml2V5+jwcDicRIQzDk3QF5gzT6ZQ1DuYHG+e+/9n0V6tVa0aHoY0ozIYrZC6Y/2JQspNfwhZea1MCyQa1XYEzjlJEuO9g/pdZUHyZi6Ab5Hne6gaPj48wGql54HK5hKenp4ux8RqFBZFnWxawojUuk96ygC7QkuW1ug2Ozbh3ZdMCInq3zwUNC5vNBt7e3oRkeC6M2jCZTL4QJ46N30VS5M3RNJT8mLNDF7JYLLR4AOfAeK407hQVcOFwZPIwn8+5N4/H45Ofi8rc9/f30y5+fHz8DaGfBXcXn8MDWtjr6yt9+ZcTCyAEpM3khDCFFoJhVQScg44FfPPeOyMcQBbJ/BtaWJIkVse/d7VQJMT1ei0kRDqkPjw89K7np5XMENYWmnuWZc5JUKsIorNA3dh/7iCppMmMbDC3qYCUnrRuTk/n9qgE2U4Sjs1QZGqTBHcs3zbSWCT+j4RHFCGVGAnG3tm0gLCtGNJxBdWeAqcYCm0TYWGiE0SXzSqmLyiHCxeRIDFhBTSDq0YAzu4nLhQQshi8S1Z4dgU8CFEBJ/tzYv7cnmDXOK4aRXAM4B+g+j0Nwt3s2h+QAT5bkEc4PyWqeEroYgkyOy9YfAkesBSltSYqRQmfP8vS19GYcGLI1Fju6pTKEg1Wb0djzNSYJVgEYdyXITy8B2N8W+FkavdHBkKikv9hHw9LX7qXiC9JYAcIP1XOSIh8B88vU6Vg75WYXvq+VGLkQIz4/p0BBRwbV5o5VvxvIi996RQFIHhHyIKUPplfukiyKDH0FKWDxefQY8wcKCCCnsPmm6IrGABCS4RY9ZH4OhVK10Z80r3DayU+btpv0PRDGChMuEICA0dxa6ZvyhUGbfomXCGBK0Nxa6bfNUEaVMKjilhCAQu4cqRDz/VNNE9YfFDADYH+X6OrCnld+MCb3997VMAzkUnz8wb+ww/+CDAA4q4zpysTtacAAAAASUVORK5CYII=", se = /* @__PURE__ */ Object.assign({
8
8
  "../json/PuntosMapas_gasgas_0.json": () => import("./PuntosMapas_gasgas_0-CjccjpQ8.js").then((p) => p.default),
9
9
  "../json/PuntosMapas_gasgas_1.json": () => import("./PuntosMapas_gasgas_1-inakGBZ_.js").then((p) => p.default),
10
10
  "../json/PuntosMapas_hqv_0.json": () => import("./PuntosMapas_hqv_0-OSIxCcrz.js").then((p) => p.default),
@@ -13,28 +13,30 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
13
13
  "../json/PuntosMapas_ktm_1.json": () => import("./PuntosMapas_ktm_1-DCq6GRnp.js").then((p) => p.default),
14
14
  "../json/PuntosMapas_voge_0.json": () => import("./PuntosMapas_voge_0-DL0EWJWf.js").then((p) => p.default),
15
15
  "../json/PuntosMapas_voge_1.json": () => import("./PuntosMapas_voge_1-Clawdtrj.js").then((p) => p.default)
16
- }), st = /* @__PURE__ */ Object.assign({
17
- "../pin/gasgas.png": V,
18
- "../pin/gasgas_distribuidor.png": j,
19
- "../pin/hqv.png": K,
20
- "../pin/hqv_distribuidor.png": X,
21
- "../pin/ktm.png": $,
22
- "../pin/ktm_distribuidor.png": tt,
23
- "../pin/rs.png": et,
24
- "../pin/rs_distribuidor.png": nt,
25
- "../pin/voge.png": ot,
26
- "../pin/voge_distribuidor.png": at
27
- }), G = "#000000", I = "/assets/fontawesome/css/all.min.css", q = "https://ap2.rs-shop.cl/web/PuntosMapas", rt = {
16
+ }), re = /* @__PURE__ */ Object.assign({
17
+ "../pin/gasgas.png": j,
18
+ "../pin/gasgas_distribuidor.png": K,
19
+ "../pin/hqv.png": X,
20
+ "../pin/hqv_distribuidor.png": $,
21
+ "../pin/ktm.png": ee,
22
+ "../pin/ktm_distribuidor.png": te,
23
+ "../pin/rs.png": ne,
24
+ "../pin/rs_distribuidor.png": oe,
25
+ "../pin/voge.png": ae,
26
+ "../pin/voge_distribuidor.png": ie
27
+ }), q = "#000000", U = "/assets/fontawesome/css/all.min.css", H = "https://ap2.rs-shop.cl/web/PuntosMapas", le = {
28
28
  gasgas: "#cb0d25",
29
+ hqv: "#2b3d60",
29
30
  ktm: "#ff6600"
30
- }, H = {
31
+ }, Y = {
31
32
  gas: "gasgas",
32
33
  gasgas: "gasgas",
34
+ rsltda: "rs",
33
35
  husqvarna: "hqv"
34
36
  }, N = {
35
37
  sucursal: 0,
36
38
  distribuidor: 1
37
- }, lt = ["norte", "rm", "centro", "sur"], ct = {
39
+ }, ce = ["norte", "rm", "centro", "sur"], de = {
38
40
  norte: "Zona Norte",
39
41
  rm: "RM",
40
42
  centro: "Zona Centro",
@@ -47,7 +49,7 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
47
49
  maxLat: -17,
48
50
  minLng: -76,
49
51
  maxLng: -66
50
- }, R = 720 * 60 * 60 * 1e3, dt = "rs-map-cache", v = "points", Y = {
52
+ }, R = 720 * 60 * 60 * 1e3, O = 0, pe = "rs-map-cache", v = "points", W = {
51
53
  "region de arica y parinacota": "norte",
52
54
  "arica y parinacota": "norte",
53
55
  "region de tarapaca": "norte",
@@ -118,27 +120,30 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
118
120
  c(this, "activeZone", "all");
119
121
  c(this, "mapHeight", "");
120
122
  c(this, "googleMapsApiKey", "");
121
- c(this, "pointsApiUrl", q);
123
+ c(this, "pointsApiUrl", H);
122
124
  c(this, "markerIconBaseUrl", "");
123
125
  c(this, "defaultMarkerIconUrl", "");
124
126
  c(this, "pointsCacheTtlMs", R);
127
+ c(this, "refreshIntervalMs", O);
128
+ c(this, "refreshIntervalId", null);
125
129
  c(this, "panAnimationFrame", null);
126
130
  c(this, "highlightTimeout", null);
127
131
  c(this, "isSyncingInitialAttributes", !1);
128
132
  c(this, "refreshQueued", !1);
133
+ c(this, "refreshQueuedForce", !1);
129
134
  c(this, "localPointsRequests", /* @__PURE__ */ new Map());
130
135
  c(this, "closePointModal", () => {
131
- var t;
132
- this.pointModalOverlayEl && (this.pointModalOverlayEl.setAttribute("hidden", ""), (t = this.pointModalBodyEl) == null || t.replaceChildren());
136
+ var e;
137
+ this.pointModalOverlayEl && (this.pointModalOverlayEl.setAttribute("hidden", ""), (e = this.pointModalBodyEl) == null || e.replaceChildren());
133
138
  });
134
- c(this, "handlePointModalOverlayClick", (t) => {
135
- t.target === this.pointModalOverlayEl && this.closePointModal();
139
+ c(this, "handlePointModalOverlayClick", (e) => {
140
+ e.target === this.pointModalOverlayEl && this.closePointModal();
136
141
  });
137
- c(this, "handlePointModalKeydown", (t) => {
138
- t.key === "Escape" && this.pointModalOverlayEl && !this.pointModalOverlayEl.hasAttribute("hidden") && this.closePointModal();
142
+ c(this, "handlePointModalKeydown", (e) => {
143
+ e.key === "Escape" && this.pointModalOverlayEl && !this.pointModalOverlayEl.hasAttribute("hidden") && this.closePointModal();
139
144
  });
140
- c(this, "handleZoneButtonClick", (t) => {
141
- const n = t.currentTarget.dataset.zone;
145
+ c(this, "handleZoneButtonClick", (e) => {
146
+ const n = e.currentTarget.dataset.zone;
142
147
  n && (this.setActiveZone(n), this.scrollToZoneSection(n));
143
148
  });
144
149
  c(this, "handleNearestClick", () => {
@@ -147,8 +152,8 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
147
152
  return;
148
153
  }
149
154
  navigator.geolocation.getCurrentPosition(
150
- (t) => {
151
- const { latitude: e, longitude: n } = t.coords, o = this.findNearestPoint(e, n);
155
+ (e) => {
156
+ const { latitude: t, longitude: n } = e.coords, o = this.findNearestPoint(t, n);
152
157
  if (o) {
153
158
  const a = this.getPointPosition(o);
154
159
  a && this.centerMapOnPoint(a.lat, a.lng), this.scrollToPointCard(o.id);
@@ -160,15 +165,18 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
160
165
  }
161
166
  );
162
167
  });
168
+ c(this, "handleVisibilityChange", () => {
169
+ !document.hidden && this.isConnected && this.refreshIntervalMs > 0 && this.forceRefresh();
170
+ });
163
171
  A.ensureFontAwesome(), this.root = this.attachShadow({ mode: "open" }), this.root.innerHTML = `
164
- <link rel="stylesheet" href="${I}" />
172
+ <link rel="stylesheet" href="${U}" />
165
173
  <style>
166
174
  :host {
167
175
  display: block;
168
176
  position: relative;
169
177
  width: 100%;
170
178
  height: var(--map-height, 520px);
171
- --rs-map-accent: ${G};
179
+ --rs-map-accent: ${q};
172
180
  }
173
181
  .map-layout {
174
182
  display: grid;
@@ -624,7 +632,7 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
624
632
  justify-content: space-between;
625
633
  gap: 12px;
626
634
  padding: 14px 18px;
627
- background: #000;
635
+ background: var(--rs-map-accent);
628
636
  color: #fff;
629
637
  }
630
638
  .point-modal__title {
@@ -699,7 +707,10 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
699
707
  }
700
708
  .point-modal__extra a,
701
709
  .point-modal__link {
702
- color: #111;
710
+ display: inline-flex;
711
+ align-items: center;
712
+ gap: 8px;
713
+ color: var(--rs-map-accent);
703
714
  font-weight: 600;
704
715
  text-decoration: none;
705
716
  border-bottom: 1px solid currentColor;
@@ -708,7 +719,7 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
708
719
  .point-modal__extra a:focus-visible,
709
720
  .point-modal__link:hover,
710
721
  .point-modal__link:focus-visible {
711
- color: var(--rs-map-accent);
722
+ filter: brightness(0.92);
712
723
  }
713
724
  .point-modal__actions {
714
725
  display: flex;
@@ -776,29 +787,31 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
776
787
  "google-maps-key",
777
788
  "points-api-url",
778
789
  "cache-days",
790
+ "refresh-interval",
791
+ "refresh-token",
779
792
  "marker-icon-base",
780
793
  "marker-icon-default"
781
794
  ];
782
795
  }
783
796
  connectedCallback() {
784
- this.mapEl = this.root.querySelector("#map"), this.panelTitleEl = this.root.querySelector("[data-panel-title]"), this.zonesContainer = this.root.querySelector("[data-zone-container]"), this.componentMessageEl = this.root.querySelector("[data-component-message]"), this.mapLayoutEl = this.root.querySelector("[data-map-layout]"), this.pointModalOverlayEl = this.root.querySelector("[data-point-modal-overlay]"), this.pointModalTitleEl = this.root.querySelector("[data-point-modal-title]"), this.pointModalBodyEl = this.root.querySelector("[data-point-modal-body]"), this.pointModalCloseButton = this.root.querySelector("[data-point-modal-close]"), this.zoneButtons = Array.from(this.root.querySelectorAll("[data-zone]")), this.nearestButton = this.root.querySelector('[data-action="nearest"]'), this.zoneButtons.forEach((t) => t.addEventListener("click", this.handleZoneButtonClick)), this.nearestButton && this.nearestButton.addEventListener("click", this.handleNearestClick), this.pointModalOverlayEl.addEventListener("click", this.handlePointModalOverlayClick), this.pointModalCloseButton.addEventListener("click", this.closePointModal), window.addEventListener("keydown", this.handlePointModalKeydown), this.updateZoneButtons(), this.setMapHeight(this.getAttribute("height")), this.setComponentState("loading"), this.syncAttributesToState();
797
+ this.mapEl = this.root.querySelector("#map"), this.panelTitleEl = this.root.querySelector("[data-panel-title]"), this.zonesContainer = this.root.querySelector("[data-zone-container]"), this.componentMessageEl = this.root.querySelector("[data-component-message]"), this.mapLayoutEl = this.root.querySelector("[data-map-layout]"), this.pointModalOverlayEl = this.root.querySelector("[data-point-modal-overlay]"), this.pointModalTitleEl = this.root.querySelector("[data-point-modal-title]"), this.pointModalBodyEl = this.root.querySelector("[data-point-modal-body]"), this.pointModalCloseButton = this.root.querySelector("[data-point-modal-close]"), this.zoneButtons = Array.from(this.root.querySelectorAll("[data-zone]")), this.nearestButton = this.root.querySelector('[data-action="nearest"]'), this.zoneButtons.forEach((e) => e.addEventListener("click", this.handleZoneButtonClick)), this.nearestButton && this.nearestButton.addEventListener("click", this.handleNearestClick), this.pointModalOverlayEl.addEventListener("click", this.handlePointModalOverlayClick), this.pointModalCloseButton.addEventListener("click", this.closePointModal), window.addEventListener("keydown", this.handlePointModalKeydown), this.updateZoneButtons(), this.setMapHeight(this.getAttribute("height")), this.setComponentState("loading"), this.applyRefreshInterval(this.getAttribute("refresh-interval")), document.addEventListener("visibilitychange", this.handleVisibilityChange), this.syncAttributesToState();
785
798
  }
786
799
  disconnectedCallback() {
787
- var t, e, n;
788
- (t = this.pointsController) == null || t.abort(), this.zoneButtons.forEach((o) => o.removeEventListener("click", this.handleZoneButtonClick)), this.nearestButton && this.nearestButton.removeEventListener("click", this.handleNearestClick), (e = this.pointModalOverlayEl) == null || e.removeEventListener("click", this.handlePointModalOverlayClick), (n = this.pointModalCloseButton) == null || n.removeEventListener("click", this.closePointModal), window.removeEventListener("keydown", this.handlePointModalKeydown);
800
+ var e, t, n;
801
+ (e = this.pointsController) == null || e.abort(), this.clearRefreshTimer(), this.zoneButtons.forEach((o) => o.removeEventListener("click", this.handleZoneButtonClick)), this.nearestButton && this.nearestButton.removeEventListener("click", this.handleNearestClick), (t = this.pointModalOverlayEl) == null || t.removeEventListener("click", this.handlePointModalOverlayClick), (n = this.pointModalCloseButton) == null || n.removeEventListener("click", this.closePointModal), window.removeEventListener("keydown", this.handlePointModalKeydown), document.removeEventListener("visibilitychange", this.handleVisibilityChange);
789
802
  }
790
- attributeChangedCallback(t, e, n) {
791
- t === "marca" ? this.setMarca(n != null ? n : "") : t === "tipo" ? this.setTipo(n != null ? n : "") : t === "height" ? this.setMapHeight(n) : t === "google-maps-key" ? this.setGoogleMapsKey(n) : t === "points-api-url" ? this.setPointsApiUrl(n) : t === "cache-days" ? this.setCacheDays(n) : t === "marker-icon-base" ? this.setMarkerIconBase(n) : t === "marker-icon-default" && this.setDefaultMarkerIcon(n);
803
+ attributeChangedCallback(e, t, n) {
804
+ e === "marca" ? this.setMarca(n != null ? n : "") : e === "tipo" ? this.setTipo(n != null ? n : "") : e === "height" ? this.setMapHeight(n) : e === "google-maps-key" ? this.setGoogleMapsKey(n) : e === "points-api-url" ? this.setPointsApiUrl(n) : e === "cache-days" ? this.setCacheDays(n) : e === "refresh-interval" ? this.applyRefreshInterval(n) : e === "refresh-token" ? this.isConnected && n !== t && this.queueRefreshPoints(!0) : e === "marker-icon-base" ? this.setMarkerIconBase(n) : e === "marker-icon-default" && this.setDefaultMarkerIcon(n);
792
805
  }
793
806
  loadGoogleMaps() {
794
807
  return window._rsGoogleMapsLoaded ? Promise.resolve().then(() => {
795
808
  this.initMap();
796
- }) : this.googleMapsApiKey ? (A.googleMapsLoaderPromise || (A.googleMapsLoaderPromise = new Promise((t, e) => {
809
+ }) : this.googleMapsApiKey ? (A.googleMapsLoaderPromise || (A.googleMapsLoaderPromise = new Promise((e, t) => {
797
810
  const n = document.querySelector('script[data-rs-google-maps="true"]');
798
811
  if (n) {
799
- n.addEventListener("load", () => t(), { once: !0 }), n.addEventListener(
812
+ n.addEventListener("load", () => e(), { once: !0 }), n.addEventListener(
800
813
  "error",
801
- () => e(new Error("Error al cargar la API de Google Maps")),
814
+ () => t(new Error("Error al cargar la API de Google Maps")),
802
815
  { once: !0 }
803
816
  );
804
817
  return;
@@ -808,95 +821,115 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
808
821
  v: "weekly"
809
822
  });
810
823
  o.src = `https://maps.googleapis.com/maps/api/js?${a.toString()}`, o.async = !0, o.defer = !0, o.dataset.rsGoogleMaps = "true", o.onload = () => {
811
- window._rsGoogleMapsLoaded = !0, t();
824
+ window._rsGoogleMapsLoaded = !0, e();
812
825
  }, o.onerror = () => {
813
- A.googleMapsLoaderPromise = null, e(new Error("Error al cargar la API de Google Maps"));
826
+ A.googleMapsLoaderPromise = null, t(new Error("Error al cargar la API de Google Maps"));
814
827
  }, document.head.appendChild(o);
815
828
  })), A.googleMapsLoaderPromise.then(() => {
816
829
  window._rsGoogleMapsLoaded = !0, this.initMap();
817
- }).catch((t) => {
818
- console.error(t instanceof Error ? t.message : "Error al cargar la API de Google Maps");
830
+ }).catch((e) => {
831
+ console.error(e instanceof Error ? e.message : "Error al cargar la API de Google Maps");
819
832
  })) : (console.error('Falta la clave de Google Maps. Define el atributo "google-maps-key" en <rs-map>.'), Promise.resolve());
820
833
  }
821
834
  initMap() {
822
- const t = window.google;
823
- if (!t) {
835
+ const e = window.google;
836
+ if (!e) {
824
837
  console.error("Google Maps aun no esta disponible.");
825
838
  return;
826
839
  }
827
- const e = this.getInitialCenter();
828
- this.map = new t.maps.Map(this.mapEl, {
829
- center: e,
840
+ const t = this.getInitialCenter();
841
+ this.map = new e.maps.Map(this.mapEl, {
842
+ center: t,
830
843
  zoom: 14,
831
844
  mapTypeId: "roadmap"
832
845
  }), this.points.length && this.updateMarkers(this.points);
833
846
  }
834
847
  getInitialCenter() {
835
- const t = this.getFirstValidPoint();
836
- return t || { lat: -33.4489, lng: -70.6693 };
848
+ const e = this.getFirstValidPoint();
849
+ return e || { lat: -33.4489, lng: -70.6693 };
837
850
  }
838
851
  getFirstValidPoint() {
839
- for (const t of this.points) {
840
- const e = this.getPointPosition(t);
841
- if (e)
842
- return e;
852
+ for (const e of this.points) {
853
+ const t = this.getPointPosition(e);
854
+ if (t)
855
+ return t;
843
856
  }
844
857
  return null;
845
858
  }
846
859
  syncAttributesToState() {
847
- var t, e;
848
- this.isSyncingInitialAttributes = !0, this.setMarca((t = this.getAttribute("marca")) != null ? t : ""), this.setTipo((e = this.getAttribute("tipo")) != null ? e : ""), this.setGoogleMapsKey(this.getAttribute("google-maps-key")), this.setPointsApiUrl(this.getAttribute("points-api-url")), this.setCacheDays(this.getAttribute("cache-days")), this.setMarkerIconBase(this.getAttribute("marker-icon-base")), this.setDefaultMarkerIcon(this.getAttribute("marker-icon-default")), this.isSyncingInitialAttributes = !1, this.queueRefreshPoints();
860
+ var e, t;
861
+ this.isSyncingInitialAttributes = !0, this.setMarca((e = this.getAttribute("marca")) != null ? e : ""), this.setTipo((t = this.getAttribute("tipo")) != null ? t : ""), this.setGoogleMapsKey(this.getAttribute("google-maps-key")), this.setPointsApiUrl(this.getAttribute("points-api-url")), this.setCacheDays(this.getAttribute("cache-days")), this.setMarkerIconBase(this.getAttribute("marker-icon-base")), this.setDefaultMarkerIcon(this.getAttribute("marker-icon-default")), this.isSyncingInitialAttributes = !1, this.queueRefreshPoints();
849
862
  }
850
- setMapHeight(t) {
851
- const e = (t != null ? t : "").trim();
852
- if (!e) {
863
+ setMapHeight(e) {
864
+ const t = (e != null ? e : "").trim();
865
+ if (!t) {
853
866
  this.mapHeight = "", this.style.removeProperty("--map-height");
854
867
  return;
855
868
  }
856
- this.mapHeight = e, this.style.setProperty("--map-height", e);
869
+ this.mapHeight = t, this.style.setProperty("--map-height", t);
857
870
  }
858
- setGoogleMapsKey(t) {
859
- this.googleMapsApiKey = (t != null ? t : "").trim(), this.googleMapsApiKey && this.isConnected && this.loadGoogleMaps();
871
+ setGoogleMapsKey(e) {
872
+ this.googleMapsApiKey = (e != null ? e : "").trim(), this.googleMapsApiKey && this.isConnected && this.loadGoogleMaps();
860
873
  }
861
- setPointsApiUrl(t) {
862
- const e = (t != null ? t : "").trim();
863
- this.pointsApiUrl = e || q, this.pointsApiUrl && this.isConnected && !this.isSyncingInitialAttributes && this.queueRefreshPoints();
874
+ setPointsApiUrl(e) {
875
+ const t = (e != null ? e : "").trim();
876
+ this.pointsApiUrl = t || H, this.pointsApiUrl && this.isConnected && !this.isSyncingInitialAttributes && this.queueRefreshPoints();
864
877
  }
865
- setCacheDays(t) {
866
- const e = (t != null ? t : "").trim();
867
- if (!e) {
878
+ setCacheDays(e) {
879
+ const t = (e != null ? e : "").trim();
880
+ if (!t) {
868
881
  this.pointsCacheTtlMs = R;
869
882
  return;
870
883
  }
871
- const n = Number(e);
884
+ const n = Number(t);
872
885
  if (!Number.isFinite(n) || n < 0) {
873
886
  this.pointsCacheTtlMs = R;
874
887
  return;
875
888
  }
876
889
  this.pointsCacheTtlMs = n * 24 * 60 * 60 * 1e3;
877
890
  }
878
- setMarkerIconBase(t) {
879
- const e = (t != null ? t : "").trim();
880
- if (!e) {
891
+ applyRefreshInterval(e) {
892
+ const t = (e != null ? e : "").trim(), n = this.parseRefreshInterval(t);
893
+ this.refreshIntervalMs = n, this.clearRefreshTimer(), this.isConnected && this.refreshIntervalMs > 0 && (this.refreshIntervalId = window.setInterval(() => {
894
+ document.hidden || this.forceRefresh();
895
+ }, this.refreshIntervalMs));
896
+ }
897
+ parseRefreshInterval(e) {
898
+ if (!e)
899
+ return O;
900
+ const t = Number(e);
901
+ return !Number.isFinite(t) || t <= 0 ? O : Math.round(t * 60 * 1e3);
902
+ }
903
+ clearRefreshTimer() {
904
+ this.refreshIntervalId !== null && (window.clearInterval(this.refreshIntervalId), this.refreshIntervalId = null);
905
+ }
906
+ setMarkerIconBase(e) {
907
+ const t = (e != null ? e : "").trim();
908
+ if (!t) {
881
909
  this.markerIconBaseUrl = "";
882
910
  return;
883
911
  }
884
- this.markerIconBaseUrl = e.endsWith("/") ? e : `${e}/`;
912
+ this.markerIconBaseUrl = t.endsWith("/") ? t : `${t}/`;
885
913
  }
886
- setDefaultMarkerIcon(t) {
887
- this.defaultMarkerIconUrl = (t != null ? t : "").trim();
914
+ setDefaultMarkerIcon(e) {
915
+ this.defaultMarkerIconUrl = (e != null ? e : "").trim();
888
916
  }
889
- setMarca(t) {
890
- this.marca = t.trim(), this.marcaKey = this.normalizeBrandKey(this.marca), this.applyBrandColor(), this.isSyncingInitialAttributes || this.queueRefreshPoints();
917
+ setMarca(e) {
918
+ this.marca = e.trim(), this.marcaKey = this.normalizeBrandKey(this.marca), this.applyBrandColor(), this.isSyncingInitialAttributes || this.queueRefreshPoints();
891
919
  }
892
- setTipo(t) {
893
- this.tipo = t.trim(), this.tipoCode = this.normalizeTipo(this.tipo), this.updatePanelTitle(), this.isSyncingInitialAttributes || this.queueRefreshPoints();
920
+ setTipo(e) {
921
+ this.tipo = e.trim(), this.tipoCode = this.normalizeTipo(this.tipo), this.updatePanelTitle(), this.isSyncingInitialAttributes || this.queueRefreshPoints();
894
922
  }
895
- queueRefreshPoints() {
896
- this.refreshQueued || (this.refreshQueued = !0, queueMicrotask(() => {
897
- this.refreshQueued = !1, this.refreshPoints();
923
+ queueRefreshPoints(e = !1) {
924
+ e && (this.refreshQueuedForce = !0), !this.refreshQueued && (this.refreshQueued = !0, queueMicrotask(() => {
925
+ this.refreshQueued = !1;
926
+ const t = this.refreshQueuedForce;
927
+ this.refreshQueuedForce = !1, this.refreshPoints({ force: t });
898
928
  }));
899
929
  }
930
+ forceRefresh() {
931
+ this.queueRefreshPoints(!0);
932
+ }
900
933
  get marcaFilter() {
901
934
  return this.marca;
902
935
  }
@@ -906,130 +939,135 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
906
939
  updatePanelTitle() {
907
940
  if (!this.panelTitleEl)
908
941
  return;
909
- const t = this.getTipoLabel();
910
- this.panelTitleEl.textContent = t != null ? t : "Puntos del mapa";
942
+ const e = this.getTipoLabel();
943
+ this.panelTitleEl.textContent = e != null ? e : "Puntos del mapa";
911
944
  }
912
945
  getTipoLabel() {
913
946
  if (this.tipoCode !== null && this.tipoCode in L)
914
947
  return L[this.tipoCode];
915
- const t = this.tipo.trim().toLowerCase(), e = t && t in N ? N[t] : null;
916
- return e !== null && e in L ? L[e] : null;
948
+ const e = this.tipo.trim().toLowerCase(), t = e && e in N ? N[e] : null;
949
+ return t !== null && t in L ? L[t] : null;
917
950
  }
918
951
  applyBrandColor() {
919
- var e;
920
- const t = (e = rt[this.marcaKey]) != null ? e : G;
921
- this.style.setProperty("--rs-map-accent", t);
952
+ var t;
953
+ const e = (t = le[this.marcaKey]) != null ? t : q;
954
+ this.style.setProperty("--rs-map-accent", e);
922
955
  }
923
- normalizeTipo(t) {
924
- if (!t)
956
+ normalizeTipo(e) {
957
+ if (!e)
925
958
  return null;
926
- const e = t.trim().toLowerCase();
927
- if (e in N)
928
- return N[e];
929
- const n = Number(e);
959
+ const t = e.trim().toLowerCase();
960
+ if (t in N)
961
+ return N[t];
962
+ const n = Number(t);
930
963
  return Number.isFinite(n) && (n === 0 || n === 1) ? n : null;
931
964
  }
932
- async refreshPoints() {
933
- var g;
965
+ async refreshPoints(e = {}) {
966
+ var r, u;
967
+ const t = (r = e.force) != null ? r : !1;
934
968
  if (!this.isConnected || !this.marca || this.tipoCode === null)
935
969
  return;
936
970
  if (!this.pointsApiUrl) {
937
971
  console.error('Falta la URL de la API de puntos. Define el atributo "points-api-url" en <rs-map>.'), this.setComponentState("error");
938
972
  return;
939
973
  }
940
- (g = this.pointsController) == null || g.abort();
941
- const t = new AbortController();
942
- this.pointsController = t;
943
- const e = this.getMarcaRequestValue(), n = new URLSearchParams({
944
- marca: e,
974
+ (u = this.pointsController) == null || u.abort();
975
+ const n = new AbortController();
976
+ this.pointsController = n;
977
+ const o = this.getMarcaRequestValue(), a = new URLSearchParams({
978
+ marca: o,
945
979
  tipo: String(this.tipoCode)
946
- }), o = this.pointsApiUrl.includes("?"), a = o && !/[?&]$/.test(this.pointsApiUrl), s = o ? a ? "&" : "" : "?", i = `${this.pointsApiUrl}${s}${n.toString()}`, r = this.getPointsCacheKey(i), d = await this.readPointsCache(r), h = d && Date.now() - d.timestamp < this.pointsCacheTtlMs, m = d ? null : await this.getLocalPointsFallback(e, this.tipoCode);
947
- if (d) {
948
- if (this.applyPointsPayload(d.data), this.setComponentState("ready"), h)
980
+ }), s = this.pointsApiUrl.includes("?"), i = s && !/[?&]$/.test(this.pointsApiUrl), l = s ? i ? "&" : "" : "?", d = `${this.pointsApiUrl}${l}${a.toString()}`, m = this.getPointsCacheKey(d), h = t ? null : await this.readPointsCache(m), f = h && Date.now() - h.timestamp < this.pointsCacheTtlMs, b = !t && !h ? await this.getLocalPointsFallback(o, this.tipoCode) : null;
981
+ if (h) {
982
+ if (this.applyPointsPayload(h.data), this.setComponentState("ready"), f)
949
983
  return;
950
- } else m ? (this.applyPointsPayload(m), this.setComponentState("ready")) : this.setComponentState("loading");
984
+ } else b ? (this.applyPointsPayload(b), this.setComponentState("ready")) : (!t || this.points.length === 0) && this.setComponentState("loading");
951
985
  try {
952
- const f = await fetch(i, {
953
- signal: t.signal
986
+ const g = await fetch(d, {
987
+ signal: n.signal
954
988
  });
955
- if (!f.ok)
956
- throw new Error(`Respuesta ${f.status}`);
957
- const l = await f.json();
958
- if (!Array.isArray(l))
989
+ if (!g.ok)
990
+ throw new Error(`Respuesta ${g.status}`);
991
+ const x = await g.json();
992
+ if (!Array.isArray(x))
959
993
  throw new Error("La respuesta de puntos no es valida.");
960
- const u = l;
961
- await this.writePointsCache(r, u), this.applyPointsPayload(u), this.setComponentState("ready");
962
- } catch (f) {
963
- if (f instanceof DOMException && f.name === "AbortError")
994
+ const w = x;
995
+ await this.writePointsCache(m, w), this.applyPointsPayload(w), this.setComponentState("ready");
996
+ } catch (g) {
997
+ if (g instanceof DOMException && g.name === "AbortError")
964
998
  return;
965
- if (d || m) {
966
- console.warn("Se mantienen puntos locales por error al refrescar el mapa", f);
999
+ if (h || b) {
1000
+ console.warn("Se mantienen puntos locales por error al refrescar el mapa", g);
967
1001
  return;
968
1002
  }
969
- console.error("No se pudieron cargar los puntos del mapa", f), this.setComponentState("error");
1003
+ if (t && this.points.length > 0) {
1004
+ console.warn("No se pudo forzar la actualizacion de puntos, se conservan los datos actuales", g);
1005
+ return;
1006
+ }
1007
+ console.error("No se pudieron cargar los puntos del mapa", g), this.setComponentState("error");
970
1008
  }
971
1009
  }
972
- applyPointsPayload(t) {
973
- this.points = this.transformPoints(t), this.reportUnmappablePoints(this.points), this.renderPoints(this.points), this.initialViewApplied = !1, this.updateMarkers(this.points);
1010
+ applyPointsPayload(e) {
1011
+ this.points = this.transformPoints(e), this.reportUnmappablePoints(this.points), this.renderPoints(this.points), this.initialViewApplied = !1, this.updateMarkers(this.points);
974
1012
  }
975
- reportUnmappablePoints(t) {
976
- const e = t.filter((n) => !this.getPointPosition(n)).map((n) => ({
1013
+ reportUnmappablePoints(e) {
1014
+ const t = e.filter((n) => !this.getPointPosition(n)).map((n) => ({
977
1015
  id: n.id,
978
1016
  titulo: n.titulo,
979
1017
  direccion: n.direccion,
980
1018
  lat: n.lat,
981
1019
  lng: n.lng
982
1020
  }));
983
- e.length && console.warn("Puntos con coordenadas fuera de rango o invalidas; no se muestran como markers.", e);
1021
+ t.length && console.warn("Puntos con coordenadas fuera de rango o invalidas; no se muestran como markers.", t);
984
1022
  }
985
- getPointsCacheKey(t) {
986
- return `rs-map:points:${t}`;
1023
+ getPointsCacheKey(e) {
1024
+ return `rs-map:points:${e}`;
987
1025
  }
988
- async getLocalPointsFallback(t, e) {
989
- const o = `../json/PuntosMapas_${this.normalizeBrandKey(t)}_${e}.json`, a = this.localPointsRequests.get(o);
1026
+ async getLocalPointsFallback(e, t) {
1027
+ const o = `../json/PuntosMapas_${this.normalizeBrandKey(e)}_${t}.json`, a = this.localPointsRequests.get(o);
990
1028
  if (a)
991
1029
  return a;
992
- const s = it[o];
1030
+ const s = se[o];
993
1031
  if (!s)
994
1032
  return null;
995
- const i = s().then((r) => {
996
- const d = this.parseLocalPointsPayload(r);
1033
+ const i = s().then((l) => {
1034
+ const d = this.parseLocalPointsPayload(l);
997
1035
  return d != null && d.length ? d : null;
998
1036
  }).catch(() => null);
999
1037
  return this.localPointsRequests.set(o, i), i;
1000
1038
  }
1001
- parseLocalPointsPayload(t) {
1002
- return Array.isArray(t) ? t : null;
1039
+ parseLocalPointsPayload(e) {
1040
+ return Array.isArray(e) ? e : null;
1003
1041
  }
1004
- async readPointsCache(t) {
1005
- const e = await this.readPointsCacheFromIndexedDb(t);
1006
- if (e)
1007
- return e;
1042
+ async readPointsCache(e) {
1043
+ const t = await this.readPointsCacheFromIndexedDb(e);
1044
+ if (t)
1045
+ return t;
1008
1046
  try {
1009
- const n = window.localStorage.getItem(t);
1047
+ const n = window.localStorage.getItem(e);
1010
1048
  if (!n)
1011
1049
  return null;
1012
1050
  const o = JSON.parse(n);
1013
- return !o || !Array.isArray(o.data) || !Number.isFinite(o.timestamp) ? (window.localStorage.removeItem(t), null) : o;
1051
+ return !o || !Array.isArray(o.data) || !Number.isFinite(o.timestamp) ? (window.localStorage.removeItem(e), null) : o;
1014
1052
  } catch {
1015
1053
  return null;
1016
1054
  }
1017
1055
  }
1018
- async writePointsCache(t, e) {
1056
+ async writePointsCache(e, t) {
1019
1057
  const n = {
1020
1058
  timestamp: Date.now(),
1021
- data: e
1059
+ data: t
1022
1060
  };
1023
- await this.writePointsCacheToIndexedDb(t, n);
1061
+ await this.writePointsCacheToIndexedDb(e, n);
1024
1062
  try {
1025
- window.localStorage.setItem(t, JSON.stringify(n));
1063
+ window.localStorage.setItem(e, JSON.stringify(n));
1026
1064
  } catch {
1027
1065
  }
1028
1066
  }
1029
- async readPointsCacheFromIndexedDb(t) {
1030
- const e = await A.openPointsCacheDb();
1031
- return e ? new Promise((n) => {
1032
- const s = e.transaction(v, "readonly").objectStore(v).get(t);
1067
+ async readPointsCacheFromIndexedDb(e) {
1068
+ const t = await A.openPointsCacheDb();
1069
+ return t ? new Promise((n) => {
1070
+ const s = t.transaction(v, "readonly").objectStore(v).get(e);
1033
1071
  s.onsuccess = () => {
1034
1072
  const i = s.result;
1035
1073
  if (!i || !Array.isArray(i.data) || !Number.isFinite(i.timestamp)) {
@@ -1043,141 +1081,141 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
1043
1081
  }, s.onerror = () => n(null);
1044
1082
  }) : null;
1045
1083
  }
1046
- async writePointsCacheToIndexedDb(t, e) {
1084
+ async writePointsCacheToIndexedDb(e, t) {
1047
1085
  const n = await A.openPointsCacheDb();
1048
1086
  n && await new Promise((o) => {
1049
1087
  const i = n.transaction(v, "readwrite").objectStore(v).put({
1050
- key: t,
1051
- timestamp: e.timestamp,
1052
- data: e.data
1088
+ key: e,
1089
+ timestamp: t.timestamp,
1090
+ data: t.data
1053
1091
  });
1054
1092
  i.onsuccess = () => o(), i.onerror = () => o();
1055
1093
  });
1056
1094
  }
1057
1095
  static openPointsCacheDb() {
1058
- return typeof window == "undefined" || !("indexedDB" in window) ? Promise.resolve(null) : (A.pointsCacheDbPromise || (A.pointsCacheDbPromise = new Promise((t) => {
1059
- const e = window.indexedDB.open(dt, 1);
1060
- e.onupgradeneeded = () => {
1061
- const n = e.result;
1096
+ return typeof window == "undefined" || !("indexedDB" in window) ? Promise.resolve(null) : (A.pointsCacheDbPromise || (A.pointsCacheDbPromise = new Promise((e) => {
1097
+ const t = window.indexedDB.open(pe, 1);
1098
+ t.onupgradeneeded = () => {
1099
+ const n = t.result;
1062
1100
  n.objectStoreNames.contains(v) || n.createObjectStore(v, { keyPath: "key" });
1063
- }, e.onsuccess = () => t(e.result), e.onerror = () => t(null);
1101
+ }, t.onsuccess = () => e(t.result), t.onerror = () => e(null);
1064
1102
  })), A.pointsCacheDbPromise);
1065
1103
  }
1066
- transformPoints(t) {
1067
- return t.map((e) => ({
1068
- ...e,
1069
- zone: this.getZoneForPoint(e)
1104
+ transformPoints(e) {
1105
+ return e.map((t) => ({
1106
+ ...t,
1107
+ zone: this.getZoneForPoint(t)
1070
1108
  }));
1071
1109
  }
1072
- renderPoints(t) {
1110
+ renderPoints(e) {
1073
1111
  if (!this.zonesContainer)
1074
1112
  return;
1075
- const e = this.groupPoints(t);
1076
- this.pointsByZone = e, this.updateZoneButtonCounts();
1113
+ const t = this.groupPoints(e);
1114
+ this.pointsByZone = t, this.updateZoneButtonCounts();
1077
1115
  const n = document.createDocumentFragment();
1078
- lt.forEach((o) => {
1116
+ ce.forEach((o) => {
1079
1117
  const a = document.createElement("section");
1080
1118
  a.className = "zone-section", a.dataset.zoneSection = o;
1081
1119
  const s = document.createElement("div");
1082
1120
  s.className = "zone-section__header";
1083
1121
  const i = document.createElement("span");
1084
- if (i.textContent = ct[o], s.appendChild(i), a.appendChild(s), e[o].length === 0) {
1085
- const r = document.createElement("p");
1086
- r.className = "zone-section__empty", r.textContent = "Sin puntos en esta zona.", a.appendChild(r);
1122
+ if (i.textContent = de[o], s.appendChild(i), a.appendChild(s), t[o].length === 0) {
1123
+ const l = document.createElement("p");
1124
+ l.className = "zone-section__empty", l.textContent = "Sin puntos en esta zona.", a.appendChild(l);
1087
1125
  } else {
1088
- const r = document.createElement("div");
1089
- r.className = "zone-section__list", e[o].forEach((d) => {
1090
- r.appendChild(this.createPointCard(d));
1091
- }), a.appendChild(r);
1126
+ const l = document.createElement("div");
1127
+ l.className = "zone-section__list", t[o].forEach((d) => {
1128
+ l.appendChild(this.createPointCard(d));
1129
+ }), a.appendChild(l);
1092
1130
  }
1093
1131
  n.appendChild(a);
1094
1132
  }), this.zonesContainer.replaceChildren(n), this.updateZoneVisibility();
1095
1133
  }
1096
- groupPoints(t) {
1097
- const e = {
1134
+ groupPoints(e) {
1135
+ const t = {
1098
1136
  norte: [],
1099
1137
  rm: [],
1100
1138
  centro: [],
1101
1139
  sur: []
1102
1140
  };
1103
- return t.forEach((n) => {
1104
- e[n.zone].push(n);
1105
- }), e;
1106
- }
1107
- createPointCard(t) {
1108
- var f;
1109
- const e = document.createElement("article");
1110
- e.className = "point-card", e.dataset.pointId = String(t.id);
1111
- const n = this.getPointCoordinateWarning(t), o = document.createElement("h3");
1112
- o.className = "point-card__title", o.textContent = t.titulo || "Sin nombre", e.appendChild(o);
1141
+ return e.forEach((n) => {
1142
+ t[n.zone].push(n);
1143
+ }), t;
1144
+ }
1145
+ createPointCard(e) {
1146
+ var b;
1147
+ const t = document.createElement("article");
1148
+ t.className = "point-card", t.dataset.pointId = String(e.id);
1149
+ const n = this.getPointCoordinateWarning(e), o = document.createElement("h3");
1150
+ o.className = "point-card__title", o.textContent = e.titulo || "Sin nombre", t.appendChild(o);
1113
1151
  const a = document.createElement("div");
1114
1152
  a.className = "point-card__address-block";
1115
1153
  const s = document.createElement("p");
1116
- if (s.className = "point-card__address", s.textContent = t.direccion || "Sin direccion", a.appendChild(s), t.comuna_name) {
1117
- const l = document.createElement("p");
1118
- l.className = "point-card__meta", l.textContent = t.comuna_name, a.appendChild(l);
1154
+ if (s.className = "point-card__address", s.textContent = e.direccion || "Sin direccion", a.appendChild(s), e.comuna_name) {
1155
+ const r = document.createElement("p");
1156
+ r.className = "point-card__meta", r.textContent = e.comuna_name, a.appendChild(r);
1119
1157
  }
1120
- if (t.provincia_name) {
1121
- const l = document.createElement("p");
1122
- l.className = "point-card__meta", l.textContent = t.provincia_name, a.appendChild(l);
1158
+ if (e.provincia_name) {
1159
+ const r = document.createElement("p");
1160
+ r.className = "point-card__meta", r.textContent = e.provincia_name, a.appendChild(r);
1123
1161
  }
1124
- if (t.region_name) {
1125
- const l = document.createElement("p");
1126
- l.className = "point-card__meta", l.textContent = t.region_name, a.appendChild(l);
1162
+ if (e.region_name) {
1163
+ const r = document.createElement("p");
1164
+ r.className = "point-card__meta", r.textContent = e.region_name, a.appendChild(r);
1127
1165
  }
1128
- e.appendChild(a);
1166
+ t.appendChild(a);
1129
1167
  let i = null;
1130
- const r = this.getPointPosition(t);
1131
- if (r) {
1132
- const l = document.createElement("div");
1133
- l.className = "point-card__map-actions";
1168
+ const l = this.getPointPosition(e);
1169
+ if (l) {
1170
+ const r = document.createElement("div");
1171
+ r.className = "point-card__map-actions";
1134
1172
  const u = document.createElement("button");
1135
1173
  u.type = "button", u.className = "point-card__focus";
1136
- const b = this.createIconElement("fa-solid fa-location-crosshairs");
1137
- u.appendChild(b), u.appendChild(document.createTextNode(" Ver en el mapa")), u.addEventListener("click", () => {
1138
- this.focusPointWithZoom(r.lat, r.lng), this.scrollToPointCard(t.id);
1139
- }), l.appendChild(u), l.appendChild(this.createMobileNavigationActions(r)), i = l;
1174
+ const g = this.createIconElement("fa-solid fa-location-crosshairs");
1175
+ u.appendChild(g), u.appendChild(document.createTextNode(" Ver en el mapa")), u.addEventListener("click", () => {
1176
+ this.focusPointWithZoom(l.lat, l.lng), this.scrollToPointCard(e.id);
1177
+ }), r.appendChild(u), r.appendChild(this.createMobileNavigationActions(l)), i = r;
1140
1178
  } else if (n) {
1141
- const l = document.createElement("div");
1142
- l.className = "point-card__coordinate-warning";
1179
+ const r = document.createElement("div");
1180
+ r.className = "point-card__coordinate-warning";
1143
1181
  const u = this.createIconElement("fa-solid fa-circle-info");
1144
- l.appendChild(u);
1145
- const b = document.createElement("span");
1146
- b.textContent = n, l.appendChild(b), i = l;
1182
+ r.appendChild(u);
1183
+ const g = document.createElement("span");
1184
+ g.textContent = n, r.appendChild(g), i = r;
1147
1185
  }
1148
1186
  const d = document.createElement("div");
1149
1187
  d.className = "point-card__details", d.hidden = !0;
1150
- let h = !1;
1151
- const m = document.createElement("div");
1152
- m.className = "point-card__actions";
1153
- let g = null;
1154
- if (t.url && t.url !== "#") {
1155
- const l = document.createElement("a");
1156
- l.href = t.url, l.target = "_blank", l.rel = "noopener noreferrer", l.className = "point-card__action";
1188
+ let m = !1;
1189
+ const h = document.createElement("div");
1190
+ h.className = "point-card__actions";
1191
+ let f = null;
1192
+ if (e.url && e.url !== "#") {
1193
+ const r = document.createElement("a");
1194
+ r.href = e.url, r.target = "_blank", r.rel = "noopener noreferrer", r.className = "point-card__action";
1157
1195
  const u = this.createIconElement("fa-solid fa-globe");
1158
- l.appendChild(u), l.appendChild(document.createTextNode("Sitio web")), m.appendChild(l);
1196
+ r.appendChild(u), r.appendChild(document.createTextNode("Sitio web")), h.appendChild(r);
1159
1197
  }
1160
- if (t.email) {
1161
- const l = document.createElement("a");
1162
- l.href = `mailto:${t.email}`, l.target = "_blank", l.rel = "noopener noreferrer", l.className = "point-card__action point-card__action--text";
1198
+ if (e.email) {
1199
+ const r = document.createElement("a");
1200
+ r.href = `mailto:${e.email}`, r.target = "_blank", r.rel = "noopener noreferrer", r.className = "point-card__action point-card__action--text";
1163
1201
  const u = this.createIconElement("fa-solid fa-envelope");
1164
- l.appendChild(u), l.appendChild(document.createTextNode(t.email)), m.appendChild(l);
1202
+ r.appendChild(u), r.appendChild(document.createTextNode(e.email)), h.appendChild(r);
1165
1203
  }
1166
- if (m.childElementCount && (d.appendChild(m), h = !0), (f = t.telefonos) != null && f.length) {
1167
- const l = document.createElement("div");
1168
- l.className = "point-card__contact";
1204
+ if (h.childElementCount && (d.appendChild(h), m = !0), (b = e.telefonos) != null && b.length) {
1205
+ const r = document.createElement("div");
1206
+ r.className = "point-card__contact";
1169
1207
  const u = document.createElement("div");
1170
1208
  u.className = "point-card__contact-title";
1171
- const b = this.createIconElement("fa-solid fa-phone");
1172
- u.appendChild(b), u.appendChild(document.createTextNode("Telefonos")), l.appendChild(u);
1209
+ const g = this.createIconElement("fa-solid fa-phone");
1210
+ u.appendChild(g), u.appendChild(document.createTextNode("Telefonos")), r.appendChild(u);
1173
1211
  const x = document.createElement("ul");
1174
- x.className = "point-card__phone-list", t.telefonos.slice().sort((w, y) => w.orden - y.orden).forEach((w) => {
1212
+ x.className = "point-card__phone-list", e.telefonos.slice().sort((w, y) => w.orden - y.orden).forEach((w) => {
1175
1213
  const y = document.createElement("li");
1176
1214
  y.className = "point-card__phone-item";
1177
1215
  const k = document.createElement("span");
1178
1216
  k.className = "point-card__phone-icon";
1179
- const z = this.isWhatsappPhone(w);
1180
- if (z) {
1217
+ const D = this.isWhatsappPhone(w);
1218
+ if (D) {
1181
1219
  const B = this.createIconElement("fa-brands fa-whatsapp");
1182
1220
  k.appendChild(B);
1183
1221
  } else
@@ -1185,134 +1223,134 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
1185
1223
  y.appendChild(k);
1186
1224
  const S = document.createElement("div");
1187
1225
  S.className = "point-card__phone-content";
1188
- const U = document.createElement("span");
1189
- U.className = "point-card__phone-name", U.textContent = w.nombre, S.appendChild(U);
1190
- const E = z ? document.createElement("a") : document.createElement("span");
1191
- if (E.className = "point-card__phone-number", z) {
1226
+ const z = document.createElement("span");
1227
+ z.className = "point-card__phone-name", z.textContent = w.nombre, S.appendChild(z);
1228
+ const E = D ? document.createElement("a") : document.createElement("span");
1229
+ if (E.className = "point-card__phone-number", D) {
1192
1230
  const B = this.getWhatsappLink(w.telefono);
1193
1231
  B && (E.href = B, E.target = "_blank", E.rel = "noopener noreferrer", E.classList.add("point-card__phone-number--link"));
1194
1232
  }
1195
1233
  E.textContent = w.telefono, S.appendChild(E), y.appendChild(S), x.appendChild(y);
1196
- }), l.appendChild(x), d.appendChild(l), h = !0;
1234
+ }), r.appendChild(x), d.appendChild(r), m = !0;
1197
1235
  }
1198
- if (t.adicional) {
1199
- const l = document.createElement("p");
1200
- l.className = "point-card__extra", l.innerHTML = t.adicional, l.querySelectorAll("a").forEach((u) => {
1236
+ if (e.adicional) {
1237
+ const r = document.createElement("p");
1238
+ r.className = "point-card__extra", r.innerHTML = e.adicional, r.querySelectorAll("a").forEach((u) => {
1201
1239
  u.classList.add("point-card__extra-link");
1202
- const b = this.createIconElement("fa-solid fa-arrow-up-right-from-square");
1203
- b.classList.add("point-card__extra-icon"), u.appendChild(b);
1204
- }), d.appendChild(l), h = !0;
1240
+ const g = this.createIconElement("fa-solid fa-arrow-up-right-from-square");
1241
+ g.classList.add("point-card__extra-icon"), u.appendChild(g);
1242
+ }), d.appendChild(r), m = !0;
1205
1243
  }
1206
- if (t.googlelink) {
1207
- g = document.createElement("a"), g.href = t.googlelink, g.target = "_blank", g.rel = "noopener noreferrer", g.className = "point-card__action";
1208
- const l = this.createIconElement("fa-solid fa-map-location-dot");
1209
- g.appendChild(l), g.appendChild(document.createTextNode("Google Maps"));
1244
+ if (e.googlelink) {
1245
+ f = document.createElement("a"), f.href = e.googlelink, f.target = "_blank", f.rel = "noopener noreferrer", f.className = "point-card__action";
1246
+ const r = this.createIconElement("fa-solid fa-map-location-dot");
1247
+ f.appendChild(r), f.appendChild(document.createTextNode("Google Maps"));
1210
1248
  }
1211
- if (g) {
1212
- const l = document.createElement("div");
1213
- l.className = "point-card__actions", l.appendChild(g), d.appendChild(l), h = !0;
1249
+ if (f) {
1250
+ const r = document.createElement("div");
1251
+ r.className = "point-card__actions", r.appendChild(f), d.appendChild(r), m = !0;
1214
1252
  }
1215
- if (h) {
1216
- const l = document.createElement("button");
1217
- l.type = "button", l.className = "point-card__toggle";
1218
- const u = this.createIconElement("fa-solid fa-circle-info"), b = document.createElement("span");
1219
- b.textContent = "Mas informacion", l.appendChild(u), l.appendChild(b), l.addEventListener("click", () => {
1253
+ if (m) {
1254
+ const r = document.createElement("button");
1255
+ r.type = "button", r.className = "point-card__toggle";
1256
+ const u = this.createIconElement("fa-solid fa-circle-info"), g = document.createElement("span");
1257
+ g.textContent = "Mas informacion", r.appendChild(u), r.appendChild(g), r.addEventListener("click", () => {
1220
1258
  const x = d.hidden;
1221
- d.hidden = !x, b.textContent = x ? "Ocultar informacion" : "Mas informacion", u.className = x ? "fa-solid fa-circle-xmark" : "fa-solid fa-circle-info";
1222
- }), e.appendChild(l), e.appendChild(d);
1259
+ d.hidden = !x, g.textContent = x ? "Ocultar informacion" : "Mas informacion", u.className = x ? "fa-solid fa-circle-xmark" : "fa-solid fa-circle-info";
1260
+ }), t.appendChild(r), t.appendChild(d);
1223
1261
  }
1224
- return i && e.appendChild(i), e;
1262
+ return i && t.appendChild(i), t;
1225
1263
  }
1226
- createMobileNavigationActions(t) {
1227
- const e = document.createElement("div");
1228
- return e.className = "point-card__mobile-navigation", e.appendChild(
1264
+ createMobileNavigationActions(e) {
1265
+ const t = document.createElement("div");
1266
+ return t.className = "point-card__mobile-navigation", t.appendChild(
1229
1267
  this.createMobileNavigationLink(
1230
- `https://www.google.com/maps/dir/?api=1&destination=${t.lat},${t.lng}&travelmode=driving`,
1268
+ `https://www.google.com/maps/dir/?api=1&destination=${e.lat},${e.lng}&travelmode=driving`,
1231
1269
  "Ir con Google Maps",
1232
1270
  "fa-brands fa-google"
1233
1271
  )
1234
- ), e.appendChild(
1272
+ ), t.appendChild(
1235
1273
  this.createMobileNavigationLink(
1236
- `https://waze.com/ul?ll=${t.lat},${t.lng}&navigate=yes`,
1274
+ `https://waze.com/ul?ll=${e.lat},${e.lng}&navigate=yes`,
1237
1275
  "Ir con Waze",
1238
1276
  "fa-brands fa-waze"
1239
1277
  )
1240
- ), e;
1278
+ ), t;
1241
1279
  }
1242
- createMobileNavigationLink(t, e, n) {
1280
+ createMobileNavigationLink(e, t, n) {
1243
1281
  const o = document.createElement("a");
1244
- return o.href = t, o.target = "_blank", o.rel = "noopener noreferrer", o.className = "point-card__mobile-nav-link", o.appendChild(this.createIconElement(n)), o.appendChild(document.createTextNode(e)), o;
1282
+ return o.href = e, o.target = "_blank", o.rel = "noopener noreferrer", o.className = "point-card__mobile-nav-link", o.appendChild(this.createIconElement(n)), o.appendChild(document.createTextNode(t)), o;
1245
1283
  }
1246
- getZoneForPoint(t) {
1247
- const e = this.normalizeRegionName(t.region_name || "");
1248
- return e && e in Y ? Y[e] : e.includes("metropolitana") ? "rm" : e.includes("araucania") || e.includes("rios") || e.includes("lagos") || e.includes("aysen") || e.includes("magallanes") ? "sur" : e.includes("arica") || e.includes("tarapaca") || e.includes("antofagasta") || e.includes("atacama") || e.includes("coquimbo") ? "norte" : "centro";
1284
+ getZoneForPoint(e) {
1285
+ const t = this.normalizeRegionName(e.region_name || "");
1286
+ return t && t in W ? W[t] : t.includes("metropolitana") ? "rm" : t.includes("araucania") || t.includes("rios") || t.includes("lagos") || t.includes("aysen") || t.includes("magallanes") ? "sur" : t.includes("arica") || t.includes("tarapaca") || t.includes("antofagasta") || t.includes("atacama") || t.includes("coquimbo") ? "norte" : "centro";
1249
1287
  }
1250
- normalizeRegionName(t) {
1251
- return t.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "").trim();
1288
+ normalizeRegionName(e) {
1289
+ return e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "").trim();
1252
1290
  }
1253
1291
  getMarcaRequestValue() {
1254
- var e;
1255
- const t = this.normalizeBrandToken(this.marca);
1256
- return (e = H[t]) != null ? e : this.marca;
1292
+ var t;
1293
+ const e = this.normalizeBrandToken(this.marca);
1294
+ return (t = Y[e]) != null ? t : this.marca;
1257
1295
  }
1258
- normalizeBrandKey(t) {
1296
+ normalizeBrandKey(e) {
1259
1297
  var n;
1260
- const e = this.normalizeBrandToken(t);
1261
- return e ? (n = H[e]) != null ? n : e : "default";
1298
+ const t = this.normalizeBrandToken(e);
1299
+ return t ? (n = Y[t]) != null ? n : t : "default";
1262
1300
  }
1263
- normalizeBrandToken(t) {
1264
- return t.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^a-z0-9]+/g, "");
1301
+ normalizeBrandToken(e) {
1302
+ return e.toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^a-z0-9]+/g, "");
1265
1303
  }
1266
- getMarkerIcon(t) {
1267
- const e = this.marcaKey || "default", n = this.getLocalMarkerIconUrl(e, t);
1268
- return n || (this.markerIconBaseUrl ? `${this.markerIconBaseUrl}${e}.png` : this.defaultMarkerIconUrl ? this.defaultMarkerIconUrl : null);
1304
+ getMarkerIcon(e) {
1305
+ const t = this.marcaKey || "default", n = this.getLocalMarkerIconUrl(t, e);
1306
+ return n || (this.markerIconBaseUrl ? `${this.markerIconBaseUrl}${t}.png` : this.defaultMarkerIconUrl ? this.defaultMarkerIconUrl : null);
1269
1307
  }
1270
- getLocalMarkerIconUrl(t, e) {
1308
+ getLocalMarkerIconUrl(e, t) {
1271
1309
  var s;
1272
- const n = e ? Number(e.tipo) : NaN, a = (Number.isFinite(n) ? n : this.tipoCode) === 1 ? `${t}_distribuidor.png` : `${t}.png`;
1273
- return (s = st[`../pin/${a}`]) != null ? s : null;
1310
+ const n = t ? Number(t.tipo) : NaN, a = (Number.isFinite(n) ? n : this.tipoCode) === 1 ? `${e}_distribuidor.png` : `${e}.png`;
1311
+ return (s = re[`../pin/${a}`]) != null ? s : null;
1274
1312
  }
1275
- getPointCoordinateWarning(t) {
1276
- if (this.getPointPosition(t))
1313
+ getPointCoordinateWarning(e) {
1314
+ if (this.getPointPosition(e))
1277
1315
  return null;
1278
- const e = Number(t.lat), n = Number(t.lng), o = `lat ${t.lat || "sin dato"}, lng ${t.lng || "sin dato"}`;
1279
- return !Number.isFinite(e) || !Number.isFinite(n) ? `Ubicacion por revisar: ${o}.` : `Ubicacion por revisar: ${o}.`;
1316
+ const t = Number(e.lat), n = Number(e.lng), o = `lat ${e.lat || "sin dato"}, lng ${e.lng || "sin dato"}`;
1317
+ return !Number.isFinite(t) || !Number.isFinite(n) ? `Ubicacion por revisar: ${o}.` : `Ubicacion por revisar: ${o}.`;
1280
1318
  }
1281
- getPointPosition(t) {
1282
- const e = Number(t.lat), n = Number(t.lng);
1283
- return this.isMappableCoordinate(e, n) ? { lat: e, lng: n } : null;
1319
+ getPointPosition(e) {
1320
+ const t = Number(e.lat), n = Number(e.lng);
1321
+ return this.isMappableCoordinate(t, n) ? { lat: t, lng: n } : null;
1284
1322
  }
1285
- isMappableCoordinate(t, e) {
1286
- return Number.isFinite(t) && Number.isFinite(e) && t >= T.minLat && t <= T.maxLat && e >= T.minLng && e <= T.maxLng;
1323
+ isMappableCoordinate(e, t) {
1324
+ return Number.isFinite(e) && Number.isFinite(t) && e >= T.minLat && e <= T.maxLat && t >= T.minLng && t <= T.maxLng;
1287
1325
  }
1288
- updateMarkers(t) {
1289
- const e = window.google;
1290
- if (!e || !this.map)
1326
+ updateMarkers(e) {
1327
+ const t = window.google;
1328
+ if (!t || !this.map)
1291
1329
  return;
1292
1330
  this.markers.forEach((a) => a.setMap(null)), this.markers = [];
1293
1331
  const n = [];
1294
- if (t.forEach((a) => {
1332
+ if (e.forEach((a) => {
1295
1333
  const s = this.getPointPosition(a);
1296
1334
  s && n.push({ point: a, position: s });
1297
1335
  }), !n.length)
1298
1336
  return;
1299
- const o = new e.maps.LatLngBounds();
1337
+ const o = new t.maps.LatLngBounds();
1300
1338
  if (n.forEach(({ point: a, position: s }) => {
1301
- const { lat: i, lng: r } = s, d = this.getMarkerIcon(a), h = d && this.map ? {
1339
+ const { lat: i, lng: l } = s, d = this.getMarkerIcon(a), m = d && this.map ? {
1302
1340
  url: d,
1303
- scaledSize: new e.maps.Size(64, 64),
1304
- anchor: new e.maps.Point(32, 64)
1305
- } : void 0, m = new e.maps.Marker({
1341
+ scaledSize: new t.maps.Size(64, 64),
1342
+ anchor: new t.maps.Point(32, 64)
1343
+ } : void 0, h = new t.maps.Marker({
1306
1344
  map: this.map,
1307
- position: { lat: i, lng: r },
1345
+ position: { lat: i, lng: l },
1308
1346
  title: a.titulo,
1309
- icon: h
1347
+ icon: m
1310
1348
  });
1311
- m.addListener("click", () => {
1349
+ h.addListener("click", () => {
1312
1350
  this.openPointModal(a), this.scrollToPointCard(a.id);
1313
- }), this.markers.push(m);
1314
- const g = m.getPosition();
1315
- g && o.extend(g);
1351
+ }), this.markers.push(h);
1352
+ const f = h.getPosition();
1353
+ f && o.extend(f);
1316
1354
  }), !this.initialViewApplied && this.markers.length) {
1317
1355
  const a = this.markers[0].getPosition();
1318
1356
  if (a) {
@@ -1326,103 +1364,103 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
1326
1364
  } else
1327
1365
  this.map.fitBounds(o);
1328
1366
  }
1329
- openPointModal(t) {
1330
- var e;
1331
- !this.pointModalOverlayEl || !this.pointModalTitleEl || !this.pointModalBodyEl || (this.pointModalTitleEl.textContent = t.titulo || "Sin nombre", this.pointModalBodyEl.replaceChildren(this.createPointModalContent(t)), this.pointModalOverlayEl.removeAttribute("hidden"), (e = this.pointModalCloseButton) == null || e.focus());
1367
+ openPointModal(e) {
1368
+ var t;
1369
+ !this.pointModalOverlayEl || !this.pointModalTitleEl || !this.pointModalBodyEl || (this.pointModalTitleEl.textContent = e.titulo || "Sin nombre", this.pointModalBodyEl.replaceChildren(this.createPointModalContent(e)), this.pointModalOverlayEl.removeAttribute("hidden"), (t = this.pointModalCloseButton) == null || t.focus());
1332
1370
  }
1333
- createPointModalContent(t) {
1371
+ createPointModalContent(e) {
1334
1372
  var s;
1335
- const e = document.createDocumentFragment();
1336
- if (t.portada) {
1373
+ const t = document.createDocumentFragment();
1374
+ if (e.portada) {
1337
1375
  const i = document.createElement("img");
1338
- i.className = "point-modal__cover", i.src = t.portada, i.alt = t.titulo || "Imagen del punto", i.loading = "lazy", i.addEventListener("error", () => i.remove(), { once: !0 }), e.appendChild(i);
1376
+ i.className = "point-modal__cover", i.src = e.portada, i.alt = e.titulo || "Imagen del punto", i.loading = "lazy", i.addEventListener("error", () => i.remove(), { once: !0 }), t.appendChild(i);
1339
1377
  }
1340
1378
  const n = this.createPointModalSection();
1341
- this.appendPointModalLine(n, "Direccion", t.direccion), this.appendPointModalLine(n, "Comuna", t.comuna_name), this.appendPointModalLine(n, "Provincia", t.provincia_name), this.appendPointModalLine(n, "Region", t.region_name), this.appendPointModalLine(n, "RUT", t.rut), n.childElementCount && e.appendChild(n);
1379
+ this.appendPointModalLine(n, "Direccion", e.direccion), this.appendPointModalLine(n, "Comuna", e.comuna_name), this.appendPointModalLine(n, "Provincia", e.provincia_name), this.appendPointModalLine(n, "Region", e.region_name), this.appendPointModalLine(n, "RUT", e.rut), n.childElementCount && t.appendChild(n);
1342
1380
  const o = this.createPointModalSection();
1343
- if (this.appendPointModalLine(o, "Correo", t.email), (s = t.telefonos) != null && s.length) {
1381
+ if (this.appendPointModalLine(o, "Correo", e.email), (s = e.telefonos) != null && s.length) {
1344
1382
  const i = document.createElement("p");
1345
1383
  i.className = "point-modal__line";
1346
- const r = document.createElement("span");
1347
- r.className = "point-modal__label", r.textContent = "Telefonos:", i.appendChild(r), o.appendChild(i);
1384
+ const l = document.createElement("span");
1385
+ l.className = "point-modal__label", l.textContent = "Telefonos:", i.appendChild(l), o.appendChild(i);
1348
1386
  const d = document.createElement("ul");
1349
- d.className = "point-modal__phone-list", t.telefonos.slice().sort((h, m) => h.orden - m.orden).forEach((h) => {
1350
- d.appendChild(this.createPointModalPhoneItem(h));
1387
+ d.className = "point-modal__phone-list", e.telefonos.slice().sort((m, h) => m.orden - h.orden).forEach((m) => {
1388
+ d.appendChild(this.createPointModalPhoneItem(m));
1351
1389
  }), o.appendChild(d);
1352
1390
  }
1353
- if (o.childElementCount && e.appendChild(o), t.adicional) {
1354
- const i = this.createPointModalSection(), r = document.createElement("div");
1355
- r.className = "point-modal__extra", r.innerHTML = t.adicional, r.querySelectorAll("a").forEach((d) => {
1391
+ if (o.childElementCount && t.appendChild(o), e.adicional) {
1392
+ const i = this.createPointModalSection(), l = document.createElement("div");
1393
+ l.className = "point-modal__extra", l.innerHTML = e.adicional, l.querySelectorAll("a").forEach((d) => {
1356
1394
  d.target = "_blank", d.rel = "noopener noreferrer";
1357
- }), i.appendChild(r), e.appendChild(i);
1395
+ }), i.appendChild(l), t.appendChild(i);
1358
1396
  }
1359
- const a = this.createPointModalActions(t);
1360
- return a.childElementCount && e.appendChild(a), e;
1397
+ const a = this.createPointModalActions(e);
1398
+ return a.childElementCount && t.appendChild(a), t;
1361
1399
  }
1362
1400
  createPointModalSection() {
1363
- const t = document.createElement("div");
1364
- return t.className = "point-modal__section", t;
1401
+ const e = document.createElement("div");
1402
+ return e.className = "point-modal__section", e;
1365
1403
  }
1366
- appendPointModalLine(t, e, n) {
1404
+ appendPointModalLine(e, t, n) {
1367
1405
  const o = (n != null ? n : "").trim();
1368
1406
  if (!o || o === "#")
1369
1407
  return;
1370
1408
  const a = document.createElement("p");
1371
1409
  a.className = "point-modal__line";
1372
1410
  const s = document.createElement("span");
1373
- s.className = "point-modal__label", s.textContent = `${e}: `, a.appendChild(s), a.appendChild(document.createTextNode(o)), t.appendChild(a);
1411
+ s.className = "point-modal__label", s.textContent = `${t}: `, a.appendChild(s), a.appendChild(document.createTextNode(o)), e.appendChild(a);
1374
1412
  }
1375
- createPointModalPhoneItem(t) {
1413
+ createPointModalPhoneItem(e) {
1376
1414
  var s;
1377
- const e = document.createElement("li");
1378
- e.className = "point-modal__phone-item";
1415
+ const t = document.createElement("li");
1416
+ t.className = "point-modal__phone-item";
1379
1417
  const n = document.createElement("span");
1380
- n.className = "point-modal__label", n.textContent = `${t.nombre || "Telefono"}: `, e.appendChild(n);
1381
- const o = ((s = t.telefono) != null ? s : "").trim(), a = this.isWhatsappPhone(t) ? this.getWhatsappLink(o) : null;
1418
+ n.className = "point-modal__label", n.textContent = `${e.nombre || "Telefono"}: `, t.appendChild(n);
1419
+ const o = ((s = e.telefono) != null ? s : "").trim(), a = this.isWhatsappPhone(e) ? this.getWhatsappLink(o) : null;
1382
1420
  if (a) {
1383
1421
  const i = document.createElement("a");
1384
- i.href = a, i.target = "_blank", i.rel = "noopener noreferrer", i.className = "point-modal__link", i.textContent = o, e.appendChild(i);
1422
+ i.href = a, i.target = "_blank", i.rel = "noopener noreferrer", i.className = "point-modal__link", i.textContent = o, t.appendChild(i);
1385
1423
  } else
1386
- e.appendChild(document.createTextNode(o));
1387
- return e;
1424
+ t.appendChild(document.createTextNode(o));
1425
+ return t;
1388
1426
  }
1389
- createPointModalActions(t) {
1390
- const e = document.createElement("div");
1391
- return e.className = "point-modal__section point-modal__actions", t.url && t.url !== "#" && e.appendChild(this.createPointModalLink(t.url, "Sitio web")), t.googlelink && e.appendChild(this.createPointModalLink(t.googlelink, "Google Maps")), t.email && e.appendChild(this.createPointModalLink(`mailto:${t.email}`, "Enviar correo", !1)), e;
1427
+ createPointModalActions(e) {
1428
+ const t = document.createElement("div");
1429
+ return t.className = "point-modal__section point-modal__actions", e.url && e.url !== "#" && t.appendChild(this.createPointModalLink(e.url, "Sitio web", !0, "fa-solid fa-globe")), e.googlelink && t.appendChild(this.createPointModalLink(e.googlelink, "Google Maps")), e.email && t.appendChild(this.createPointModalLink(`mailto:${e.email}`, "Enviar correo", !1, "fa-solid fa-envelope")), t;
1392
1430
  }
1393
- createPointModalLink(t, e, n = !0) {
1394
- const o = document.createElement("a");
1395
- return o.href = t, o.className = "point-modal__link", o.textContent = e, n && (o.target = "_blank", o.rel = "noopener noreferrer"), o;
1431
+ createPointModalLink(e, t, n = !0, o) {
1432
+ const a = document.createElement("a");
1433
+ return a.href = e, a.className = "point-modal__link", o && a.appendChild(this.createIconElement(o)), a.appendChild(document.createTextNode(t)), n && (a.target = "_blank", a.rel = "noopener noreferrer"), a;
1396
1434
  }
1397
- setActiveZone(t) {
1435
+ setActiveZone(e) {
1398
1436
  }
1399
- scrollToZoneSection(t) {
1437
+ scrollToZoneSection(e) {
1400
1438
  if (!this.zonesContainer)
1401
1439
  return;
1402
- const e = this.zonesContainer.querySelector(`[data-zone-section="${t}"]`);
1403
- e && e.scrollIntoView({ behavior: "smooth", block: "start" });
1440
+ const t = this.zonesContainer.querySelector(`[data-zone-section="${e}"]`);
1441
+ t && t.scrollIntoView({ behavior: "smooth", block: "start" });
1404
1442
  }
1405
1443
  updateZoneButtons() {
1406
- this.zoneButtons.forEach((t) => {
1407
- const e = t.dataset.zone, n = this.activeZone === e;
1408
- t.classList.toggle("is-active", n), t.setAttribute("aria-pressed", String(n));
1444
+ this.zoneButtons.forEach((e) => {
1445
+ const t = e.dataset.zone, n = this.activeZone === t;
1446
+ e.classList.toggle("is-active", n), e.setAttribute("aria-pressed", String(n));
1409
1447
  });
1410
1448
  }
1411
1449
  updateZoneButtonCounts() {
1412
- this.zoneButtons.forEach((t) => {
1413
- t.dataset.zone;
1414
- const e = t.dataset.label || t.textContent || "";
1415
- t.textContent = e;
1450
+ this.zoneButtons.forEach((e) => {
1451
+ e.dataset.zone;
1452
+ const t = e.dataset.label || e.textContent || "";
1453
+ e.textContent = t;
1416
1454
  });
1417
1455
  }
1418
1456
  updateZoneVisibility() {
1419
1457
  if (!this.zonesContainer)
1420
1458
  return;
1421
- this.zonesContainer.querySelectorAll("[data-zone-section]").forEach((e) => {
1422
- e.removeAttribute("hidden");
1459
+ this.zonesContainer.querySelectorAll("[data-zone-section]").forEach((t) => {
1460
+ t.removeAttribute("hidden");
1423
1461
  });
1424
1462
  }
1425
- findNearestPoint(t, e) {
1463
+ findNearestPoint(e, t) {
1426
1464
  if (!this.points.length)
1427
1465
  return null;
1428
1466
  let n = null, o = 1 / 0;
@@ -1430,143 +1468,144 @@ const V = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAA
1430
1468
  const s = this.getPointPosition(a);
1431
1469
  if (!s)
1432
1470
  return;
1433
- const i = this.haversine(t, e, s.lat, s.lng);
1471
+ const i = this.haversine(e, t, s.lat, s.lng);
1434
1472
  i < o && (o = i, n = a);
1435
1473
  }), n;
1436
1474
  }
1437
- haversine(t, e, n, o) {
1438
- const a = (m) => m * Math.PI / 180, i = a(n - t), r = a(o - e), d = Math.sin(i / 2) * Math.sin(i / 2) + Math.cos(a(t)) * Math.cos(a(n)) * Math.sin(r / 2) * Math.sin(r / 2);
1475
+ haversine(e, t, n, o) {
1476
+ const a = (h) => h * Math.PI / 180, i = a(n - e), l = a(o - t), d = Math.sin(i / 2) * Math.sin(i / 2) + Math.cos(a(e)) * Math.cos(a(n)) * Math.sin(l / 2) * Math.sin(l / 2);
1439
1477
  return 6371e3 * (2 * Math.atan2(Math.sqrt(d), Math.sqrt(1 - d)));
1440
1478
  }
1441
- scrollToPointCard(t) {
1479
+ scrollToPointCard(e) {
1442
1480
  if (!this.zonesContainer)
1443
1481
  return;
1444
- const e = this.zonesContainer.querySelector(`[data-point-id="${t}"]`);
1445
- e && (e.scrollIntoView({ behavior: "smooth", block: "center" }), this.highlightPointCard(e));
1482
+ const t = this.zonesContainer.querySelector(`[data-point-id="${e}"]`);
1483
+ t && (t.scrollIntoView({ behavior: "smooth", block: "center" }), this.highlightPointCard(t));
1446
1484
  }
1447
- highlightPointCard(t) {
1448
- var e;
1449
- this.highlightTimeout !== null && (clearTimeout(this.highlightTimeout), this.highlightTimeout = null), (e = this.zonesContainer) == null || e.querySelectorAll(".point-card--highlight").forEach((n) => {
1485
+ highlightPointCard(e) {
1486
+ var t;
1487
+ this.highlightTimeout !== null && (clearTimeout(this.highlightTimeout), this.highlightTimeout = null), (t = this.zonesContainer) == null || t.querySelectorAll(".point-card--highlight").forEach((n) => {
1450
1488
  n.classList.remove("point-card--highlight");
1451
- }), t.classList.add("point-card--highlight"), this.highlightTimeout = window.setTimeout(() => {
1452
- t.classList.remove("point-card--highlight"), this.highlightTimeout = null;
1489
+ }), e.classList.add("point-card--highlight"), this.highlightTimeout = window.setTimeout(() => {
1490
+ e.classList.remove("point-card--highlight"), this.highlightTimeout = null;
1453
1491
  }, 3500);
1454
1492
  }
1455
- setComponentState(t) {
1493
+ setComponentState(e) {
1456
1494
  if (!(!this.componentMessageEl || !this.mapLayoutEl))
1457
- if (t === "ready")
1495
+ if (e === "ready")
1458
1496
  this.componentMessageEl.setAttribute("hidden", ""), this.mapLayoutEl.removeAttribute("hidden");
1459
1497
  else {
1460
- const e = t === "loading" ? "Cargando puntos..." : "Mapa temporalmente no disponible";
1461
- this.componentMessageEl.textContent = e, this.componentMessageEl.removeAttribute("hidden"), this.mapLayoutEl.setAttribute("hidden", "");
1498
+ const t = e === "loading" ? "Cargando puntos..." : "Mapa temporalmente no disponible";
1499
+ this.componentMessageEl.textContent = t, this.componentMessageEl.removeAttribute("hidden"), this.mapLayoutEl.setAttribute("hidden", "");
1462
1500
  }
1463
1501
  }
1464
- centerMapOnPoint(t, e, n = 14) {
1465
- if (!window.google || !this.map || !Number.isFinite(t) || !Number.isFinite(e))
1502
+ centerMapOnPoint(e, t, n = 14) {
1503
+ if (!window.google || !this.map || !Number.isFinite(e) || !Number.isFinite(t))
1466
1504
  return;
1467
1505
  const a = typeof this.map.getZoom == "function" ? this.map.getZoom() : null, s = !a || a < n;
1468
- this.animateMapPan(t, e, () => {
1506
+ this.animateMapPan(e, t, () => {
1469
1507
  s && this.map.setZoom(n);
1470
1508
  });
1471
1509
  }
1472
- async focusPointWithZoom(t, e) {
1473
- !window.google || !this.map || !Number.isFinite(t) || !Number.isFinite(e) || (await this.animateZoomTo(8, 800), await this.wait(500), await new Promise((o) => {
1474
- this.animateMapPan(t, e, o);
1510
+ async focusPointWithZoom(e, t) {
1511
+ !window.google || !this.map || !Number.isFinite(e) || !Number.isFinite(t) || (await this.animateZoomTo(8, 800), await this.wait(500), await new Promise((o) => {
1512
+ this.animateMapPan(e, t, o);
1475
1513
  }), await this.wait(500), await this.animateZoomTo(18, 800));
1476
1514
  }
1477
- wait(t) {
1478
- return new Promise((e) => {
1479
- window.setTimeout(e, t);
1515
+ wait(e) {
1516
+ return new Promise((t) => {
1517
+ window.setTimeout(t, e);
1480
1518
  });
1481
1519
  }
1482
- async animateZoomTo(t, e = 600) {
1520
+ async animateZoomTo(e, t = 600) {
1483
1521
  if (!window.google || !this.map || typeof this.map.getZoom != "function" || typeof this.map.setZoom != "function")
1484
1522
  return;
1485
1523
  const o = this.map.getZoom();
1486
1524
  if (!Number.isFinite(o)) {
1487
- this.map.setZoom(t);
1525
+ this.map.setZoom(e);
1488
1526
  return;
1489
1527
  }
1490
- const a = t - o;
1528
+ const a = e - o;
1491
1529
  if (Math.abs(a) < 0.01) {
1492
- this.map.setZoom(t);
1530
+ this.map.setZoom(e);
1493
1531
  return;
1494
1532
  }
1495
1533
  await new Promise((s) => {
1496
- const i = performance.now(), r = (h) => 1 - Math.pow(1 - h, 3), d = (h) => {
1497
- const m = h - i, g = Math.min(m / e, 1), f = r(g), l = o + a * f;
1498
- this.map.setZoom(Math.round(l * 100) / 100), g < 1 ? requestAnimationFrame(d) : (this.map.setZoom(t), s());
1534
+ const i = performance.now(), l = (m) => 1 - Math.pow(1 - m, 3), d = (m) => {
1535
+ const h = m - i, f = Math.min(h / t, 1), b = l(f), r = o + a * b;
1536
+ this.map.setZoom(Math.round(r * 100) / 100), f < 1 ? requestAnimationFrame(d) : (this.map.setZoom(e), s());
1499
1537
  };
1500
1538
  requestAnimationFrame(d);
1501
1539
  });
1502
1540
  }
1503
- animateMapPan(t, e, n) {
1541
+ animateMapPan(e, t, n) {
1504
1542
  if (!window.google || !this.map)
1505
1543
  return;
1506
1544
  this.panAnimationFrame !== null && (cancelAnimationFrame(this.panAnimationFrame), this.panAnimationFrame = null);
1507
1545
  const a = this.map.getCenter();
1508
1546
  if (!a) {
1509
- this.map.setCenter({ lat: t, lng: e }), n == null || n();
1547
+ this.map.setCenter({ lat: e, lng: t }), n == null || n();
1510
1548
  return;
1511
1549
  }
1512
- const s = a.lat(), i = a.lng(), r = t - s, d = e - i, h = 600, m = performance.now(), g = (l) => 1 - Math.pow(1 - l, 3), f = (l) => {
1513
- const u = l - m, b = Math.min(u / h, 1), x = g(b), w = s + r * x, y = i + d * x;
1514
- this.map.setCenter({ lat: w, lng: y }), b < 1 ? this.panAnimationFrame = requestAnimationFrame(f) : (this.panAnimationFrame = null, n == null || n());
1550
+ const s = a.lat(), i = a.lng(), l = e - s, d = t - i, m = 600, h = performance.now(), f = (r) => 1 - Math.pow(1 - r, 3), b = (r) => {
1551
+ const u = r - h, g = Math.min(u / m, 1), x = f(g), w = s + l * x, y = i + d * x;
1552
+ this.map.setCenter({ lat: w, lng: y }), g < 1 ? this.panAnimationFrame = requestAnimationFrame(b) : (this.panAnimationFrame = null, n == null || n());
1515
1553
  };
1516
- this.panAnimationFrame = requestAnimationFrame(f);
1554
+ this.panAnimationFrame = requestAnimationFrame(b);
1517
1555
  }
1518
1556
  static ensureFontAwesome() {
1519
1557
  if (A.fontAwesomeAttached)
1520
1558
  return;
1521
- if (document.querySelector(`link[href="${I}"]`)) {
1559
+ if (document.querySelector(`link[href="${U}"]`)) {
1522
1560
  A.fontAwesomeAttached = !0;
1523
1561
  return;
1524
1562
  }
1525
- const e = document.createElement("link");
1526
- e.rel = "stylesheet", e.href = I, e.crossOrigin = "anonymous", e.referrerPolicy = "no-referrer", e.addEventListener("load", () => {
1563
+ const t = document.createElement("link");
1564
+ t.rel = "stylesheet", t.href = U, t.crossOrigin = "anonymous", t.referrerPolicy = "no-referrer", t.addEventListener("load", () => {
1527
1565
  A.fontAwesomeAttached = !0;
1528
- }), document.head.appendChild(e);
1566
+ }), document.head.appendChild(t);
1529
1567
  }
1530
- createIconElement(t) {
1531
- const e = document.createElement("i");
1532
- return e.className = t, e.setAttribute("aria-hidden", "true"), e;
1568
+ createIconElement(e) {
1569
+ const t = document.createElement("i");
1570
+ return t.className = e, t.setAttribute("aria-hidden", "true"), t;
1533
1571
  }
1534
- isWhatsappPhone(t) {
1535
- return !!(t.whatsapp || t.watshapp);
1572
+ isWhatsappPhone(e) {
1573
+ return !!(e.whatsapp || e.watshapp);
1536
1574
  }
1537
- getWhatsappLink(t) {
1538
- const e = t.replace(/\D+/g, "");
1539
- return e ? `https://wa.me/${e}` : null;
1575
+ getWhatsappLink(e) {
1576
+ const t = e.replace(/\D+/g, "");
1577
+ return t ? `https://wa.me/${t}` : null;
1540
1578
  }
1541
1579
  };
1542
1580
  c(A, "tag", "rs-map"), c(A, "googleMapsLoaderPromise", null), c(A, "pointsCacheDbPromise", null), c(A, "fontAwesomeAttached", !1);
1543
- let _ = A;
1544
- const pt = `<?xml version="1.0" encoding="utf-8"?>\r
1581
+ let I = A;
1582
+ const he = `<?xml version="1.0" encoding="utf-8"?>\r
1545
1583
  <!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->\r
1546
1584
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\r
1547
1585
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve" style="fill: #ffffff;">\r
1548
1586
  <metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>\r
1549
1587
  <g><path d="M965.1,437.2c-24.9-8.4-52.2-8.7-78.1-13.5c-41.3-8.3-45.5-55.5-61.6-87c-17.4-27.9-1.8-58.7,17.9-80.2c16.7-22.2,45.4-50.8,21.8-78.9c-22.1-17.9-37.3-48.8-67.4-53.1c-30.2,2.7-50,30-74.7,45.2c-33.8,26.5-71.6-3.8-105.1-14.8c-30.2-6.9-45.2-36.2-45.6-65.2c-5.5-27.6-1.1-66.3-34.8-76.6c-36.1-3.3-99-13.6-104.1,37.7c-7.8,33.8-0.3,78.4-36.1,97.9c-30.8,10.5-59.5,30.1-92.3,31.9c-38.2-5.7-59.8-46-96.2-55.8c-32.6-2.2-48.3,31.8-70.7,49.7c-23.6,20.9-7.6,51.7,9.9,70.3c18.9,24.9,47.2,54.4,28.4,87.8c-16.4,31.3-19.6,75.8-57,89.7c-29.6,7.7-62.6,3.9-89.8,18.5c-25.6,30-28.1,94.8,5.4,120.4c36.3,14.9,84.8,0.8,111.7,35.3c13.3,29.6,28.4,59.5,35.6,91.1c-0.7,43.9-48.4,67.1-58.2,107.8c9.5,38.8,52.5,81.3,96.4,74.3c33.2-16.3,57.3-56.9,98.4-51.3c30.2,11.8,62.2,21.7,89.5,39.2c29.7,30.2,13.4,78.3,33.4,112.9c29.9,25.7,94.7,28.3,120.1-5.4c14.8-36.3,0.9-84.9,35.2-111.8c29.5-13.3,59.5-28.4,91-35.6c42.3,0,64.7,46,103.3,56c32.5,2.2,48.3-31.8,70.7-49.7c24.5-22.1,6.1-53.2-11.6-72.5c-18.9-24-45-53.3-26.7-85.6c16.4-31.3,19.6-75.7,57-89.6c29.6-7.7,62.6-4,89.8-18.5C996.1,527.5,998.6,462.7,965.1,437.2z M577.6,593.4c-21.6,18-49.5,28-77.5,27.9c-79.1,3-142.8-83.6-116.4-158.4c20.6-76,121.1-111.4,184.6-64.9C634.9,439.4,640,545.6,577.6,593.4z"/></g>\r
1550
- </svg>`, ht = `<?xml version="1.0" encoding="utf-8"?>\r
1588
+ </svg>`, me = `<?xml version="1.0" encoding="utf-8"?>\r
1551
1589
  <!-- Svg Vector Icons : http://www.onlinewebfonts.com/icon -->\r
1552
1590
  <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\r
1553
1591
  <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 1000 1000" enable-background="new 0 0 1000 1000" xml:space="preserve" style="fill: #ffffff;">\r
1554
1592
  <metadata> Svg Vector Icons : http://www.onlinewebfonts.com/icon </metadata>\r
1555
1593
  <g><g><g><path d="M171.2,451.6c-89,0-161.2,72.2-161.2,161.2c0,89,72.2,161.2,161.2,161.2c65,0,120.9-38.6,146.4-94l38.3,29.5c0,0,281.5,2,296.9-6.7c0,0-34.9-95.4,9.4-135.7c4.7-4.2,10.5-9.1,17-14.2c-7.4,18.5-11.6,38.7-11.6,59.9c0,89,72.2,161.2,161.2,161.2c89,0,161.2-72.2,161.2-161.2c0-89.1-72.2-161.2-161.2-161.2c-1.5,0-2.9,0.2-4.3,0.2c11.6-7.6,19.1-12.3,19.1-12.3l-12.1-10.8c0,0,34.9-8,26.9-25.5c-8.1-17.5-92.7-122.3-92.7-122.3s15-32.2-16-55.1l-14.9,32.2c0,0-38-26.2-53.1-21.2c-15.1,5-37.8,7.6-44.8,18.6l-7,6.6c0,0-2,11.6,9.6,28.7c0,0,116.4,35.8,121.9,62c0,0,8.1,16.6-26.7,20.6l-7,9.1l-18.7,1l-33.7-77.1c0,0-32.3,8.6-48.9,21.7l2.5,13.1c0,0-135.5-92.2-263,44.3c0,0-94.2,27.2-160.2-56.4c0,0-1-27.2-160.2-22.2l11.1,11.6c0,0-11.1,1-15.6,8.1c-4.5,7,2.5,14.6,38.8,14.6c0,0,82.1,93.7,145.1,88.2l89.7,43.3l39.8,68c0,0,0.1,5.8,0.5,14.8c-9.2,2-19.6,4.2-30.6,6.5C302.9,497.9,242.5,451.6,171.2,451.6z M828.8,501c61.7,0,111.8,50.2,111.8,111.8c0,61.7-50.2,111.8-111.8,111.8c-61.7,0-111.8-50.2-111.8-111.8C717,551.2,767.1,501,828.8,501z M171.2,724.7c-61.6,0-111.8-50.2-111.8-111.8c0-61.7,50.2-111.8,111.8-111.8c47.4,0,87.9,29.7,104.1,71.4c-59.3,12.6-118.1,25.2-118.1,25.2l7.6,41.8l116.1-5.1C270.9,685.7,225.5,724.7,171.2,724.7z M364.8,630.6c3.3,11.2,7.6,20.1,13.2,23.9l-51.8,2c2.2-7.9,3.9-16.1,4.9-24.5L364.8,630.6z"/></g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></g>\r
1556
- </svg>`, mt = "WhatsApp", ut = "Contactar por WhatsApp", gt = "compra de motos", ft = "En este momento no es posible atender su solicitud. Le invitamos a contactarnos dentro de nuestro horario de atencion.", O = "#25d366", At = "#000000", Z = "motorcycle", bt = "https://wa.me/", Ct = /* @__PURE__ */ Object.assign({
1557
- "../ws/gear.svg": pt,
1558
- "../ws/motorcycle.svg": ht
1559
- }), xt = {
1594
+ </svg>`, ue = "WhatsApp", ge = "Contactar por WhatsApp", fe = "compra de motos", Ae = "En este momento no es posible atender su solicitud. Le invitamos a contactarnos dentro de nuestro horario de atencion.", Z = "#25d366", be = "#000000", Q = "motorcycle", Ce = "https://wa.me/", xe = /* @__PURE__ */ Object.assign({
1595
+ "../ws/gear.svg": he,
1596
+ "../ws/motorcycle.svg": me
1597
+ }), we = {
1560
1598
  gasgas: "#cb0d25",
1561
- hqv: "#002550",
1599
+ hqv: "#2b3d60",
1562
1600
  ktm: "#ff6600",
1563
1601
  rs: "#000000",
1564
1602
  voge: "#000000"
1565
- }, wt = {
1603
+ }, ye = {
1566
1604
  gas: "gasgas",
1567
1605
  gasgas: "gasgas",
1606
+ rsltda: "rs",
1568
1607
  husqvarna: "hqv"
1569
- }, yt = {
1608
+ }, Ee = {
1570
1609
  0: 0,
1571
1610
  7: 0,
1572
1611
  dom: 0,
@@ -1603,7 +1642,7 @@ const pt = `<?xml version="1.0" encoding="utf-8"?>\r
1603
1642
  sabado: 6,
1604
1643
  sat: 6,
1605
1644
  saturday: 6
1606
- }, Et = {
1645
+ }, ve = {
1607
1646
  sun: 0,
1608
1647
  mon: 1,
1609
1648
  tue: 2,
@@ -1611,23 +1650,23 @@ const pt = `<?xml version="1.0" encoding="utf-8"?>\r
1611
1650
  thu: 4,
1612
1651
  fri: 5,
1613
1652
  sat: 6
1614
- }, vt = Object.fromEntries(
1615
- Object.entries(Ct).map(([p, C]) => {
1616
- var e, n;
1617
- const t = (n = (e = p.split("/").pop()) == null ? void 0 : e.replace(/\.svg$/i, "")) != null ? n : "";
1618
- return [P(t), Pt(C)];
1653
+ }, Pe = Object.fromEntries(
1654
+ Object.entries(xe).map(([p, C]) => {
1655
+ var t, n;
1656
+ const e = (n = (t = p.split("/").pop()) == null ? void 0 : t.replace(/\.svg$/i, "")) != null ? n : "";
1657
+ return [P(e), Me(C)];
1619
1658
  })
1620
1659
  );
1621
- function Pt(p) {
1660
+ function Me(p) {
1622
1661
  return p.replace(/<\?xml[\s\S]*?\?>\s*/i, "").replace(/<!DOCTYPE[\s\S]*?>\s*/i, "").replace(/<metadata>[\s\S]*?<\/metadata>\s*/i, "").replace(/<svg\b/i, '<svg class="menu-link-icon" aria-hidden="true" focusable="false"').replace(/style="fill:\s*#ffffff;?"/i, 'style="fill: currentColor;"');
1623
1662
  }
1624
1663
  function P(p) {
1625
1664
  return p.normalize("NFD").replace(/[\u0300-\u036f]/g, "").trim().toLowerCase().replace(/[^a-z0-9]+/g, "");
1626
1665
  }
1627
- function Mt(p) {
1666
+ function ke(p) {
1628
1667
  return /^(https?:\/\/|\/\/|data:image\/|blob:|\/|\.\/|\.\.\/)/i.test(p.trim());
1629
1668
  }
1630
- class Q extends HTMLElement {
1669
+ class G extends HTMLElement {
1631
1670
  constructor() {
1632
1671
  super();
1633
1672
  c(this, "root");
@@ -1642,13 +1681,13 @@ class Q extends HTMLElement {
1642
1681
  c(this, "handleButtonClick", () => {
1643
1682
  this.menuEl.hidden && this.syncAttributesToState(), this.setMenuOpen(this.menuEl.hidden);
1644
1683
  });
1645
- c(this, "handleMenuClick", (t) => {
1646
- const e = t.composedPath();
1647
- if (e.find((a) => a instanceof HTMLAnchorElement && a.getAttribute("aria-disabled") === "true")) {
1648
- t.preventDefault();
1684
+ c(this, "handleMenuClick", (e) => {
1685
+ const t = e.composedPath();
1686
+ if (t.find((a) => a instanceof HTMLAnchorElement && a.getAttribute("aria-disabled") === "true")) {
1687
+ e.preventDefault();
1649
1688
  return;
1650
1689
  }
1651
- e.find((a) => a instanceof HTMLAnchorElement || a instanceof HTMLButtonElement) && this.setMenuOpen(!1);
1690
+ t.find((a) => a instanceof HTMLAnchorElement || a instanceof HTMLButtonElement) && this.setMenuOpen(!1);
1652
1691
  });
1653
1692
  c(this, "handleCustomMenuSlotChange", () => {
1654
1693
  this.syncAttributesToState();
@@ -1656,11 +1695,11 @@ class Q extends HTMLElement {
1656
1695
  c(this, "handleChildrenMutation", () => {
1657
1696
  this.syncAttributesToState();
1658
1697
  });
1659
- c(this, "handleDocumentClick", (t) => {
1660
- this.menuEl.hidden || t.composedPath().includes(this) || this.setMenuOpen(!1);
1698
+ c(this, "handleDocumentClick", (e) => {
1699
+ this.menuEl.hidden || e.composedPath().includes(this) || this.setMenuOpen(!1);
1661
1700
  });
1662
- c(this, "handleDocumentKeydown", (t) => {
1663
- this.menuEl.hidden || t.key !== "Escape" || (this.setMenuOpen(!1), this.buttonEl.focus());
1701
+ c(this, "handleDocumentKeydown", (e) => {
1702
+ this.menuEl.hidden || e.key !== "Escape" || (this.setMenuOpen(!1), this.buttonEl.focus());
1664
1703
  });
1665
1704
  this.root = this.attachShadow({ mode: "open" }), this.root.innerHTML = `
1666
1705
  <style>
@@ -1670,7 +1709,7 @@ class Q extends HTMLElement {
1670
1709
  bottom: var(--rs-whatsapp-bottom, 24px);
1671
1710
  z-index: var(--rs-whatsapp-z-index, 9999);
1672
1711
  display: inline-block;
1673
- --rs-whatsapp-brand-color: ${O};
1712
+ --rs-whatsapp-brand-color: ${Z};
1674
1713
  font-family: var(--rs-whatsapp-font-family, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
1675
1714
  }
1676
1715
  :host([position="bottom-left"]) {
@@ -1702,7 +1741,7 @@ class Q extends HTMLElement {
1702
1741
  justify-content: center;
1703
1742
  gap: 10px;
1704
1743
  border-radius: 999px;
1705
- background: var(--rs-whatsapp-bg, ${O});
1744
+ background: var(--rs-whatsapp-bg, ${Z});
1706
1745
  color: var(--rs-whatsapp-color, #ffffff);
1707
1746
  box-shadow: var(--rs-whatsapp-shadow, 0 10px 24px rgb(0 0 0 / 22%));
1708
1747
  cursor: pointer;
@@ -1941,7 +1980,7 @@ class Q extends HTMLElement {
1941
1980
  </span>
1942
1981
  <span class="label"></span>
1943
1982
  </button>
1944
- `;
1983
+ `, this.cacheShadowElements();
1945
1984
  }
1946
1985
  static get observedAttributes() {
1947
1986
  return [
@@ -1962,7 +2001,7 @@ class Q extends HTMLElement {
1962
2001
  ];
1963
2002
  }
1964
2003
  connectedCallback() {
1965
- this.buttonEl = this.root.querySelector("button"), this.menuEl = this.root.querySelector(".menu"), this.generatedOptionsEl = this.root.querySelector("[data-generated-options]"), this.customMenuSlotEl = this.root.querySelector('slot[name="menu"]'), this.closedMessageEl = this.root.querySelector("[data-closed-message]"), this.closedMessageTextEl = this.root.querySelector("[data-closed-message-text]"), this.labelEl = this.root.querySelector(".label"), this.buttonEl.addEventListener("click", this.handleButtonClick), this.menuEl.addEventListener("click", this.handleMenuClick), this.customMenuSlotEl.addEventListener("slotchange", this.handleCustomMenuSlotChange), document.addEventListener("click", this.handleDocumentClick), document.addEventListener("keydown", this.handleDocumentKeydown), this.childrenObserver = new MutationObserver(this.handleChildrenMutation), this.childrenObserver.observe(this, {
2004
+ this.cacheShadowElements(), this.buttonEl.addEventListener("click", this.handleButtonClick), this.menuEl.addEventListener("click", this.handleMenuClick), this.customMenuSlotEl.addEventListener("slotchange", this.handleCustomMenuSlotChange), document.addEventListener("click", this.handleDocumentClick), document.addEventListener("keydown", this.handleDocumentKeydown), this.childrenObserver = new MutationObserver(this.handleChildrenMutation), this.childrenObserver.observe(this, {
1966
2005
  childList: !0,
1967
2006
  subtree: !0,
1968
2007
  characterData: !0,
@@ -1970,93 +2009,96 @@ class Q extends HTMLElement {
1970
2009
  attributeFilter: ["label", "telefono", "mensaje", "target", "icon", "dias", "desde", "hasta"]
1971
2010
  }), this.syncAttributesToState();
1972
2011
  }
2012
+ cacheShadowElements() {
2013
+ this.buttonEl = this.root.querySelector("button"), this.menuEl = this.root.querySelector(".menu"), this.generatedOptionsEl = this.root.querySelector("[data-generated-options]"), this.customMenuSlotEl = this.root.querySelector('slot[name="menu"]'), this.closedMessageEl = this.root.querySelector("[data-closed-message]"), this.closedMessageTextEl = this.root.querySelector("[data-closed-message-text]"), this.labelEl = this.root.querySelector(".label");
2014
+ }
1973
2015
  disconnectedCallback() {
1974
- var t, e, n, o;
1975
- (t = this.buttonEl) == null || t.removeEventListener("click", this.handleButtonClick), (e = this.menuEl) == null || e.removeEventListener("click", this.handleMenuClick), (n = this.customMenuSlotEl) == null || n.removeEventListener("slotchange", this.handleCustomMenuSlotChange), document.removeEventListener("click", this.handleDocumentClick), document.removeEventListener("keydown", this.handleDocumentKeydown), (o = this.childrenObserver) == null || o.disconnect();
2016
+ var e, t, n, o;
2017
+ (e = this.buttonEl) == null || e.removeEventListener("click", this.handleButtonClick), (t = this.menuEl) == null || t.removeEventListener("click", this.handleMenuClick), (n = this.customMenuSlotEl) == null || n.removeEventListener("slotchange", this.handleCustomMenuSlotChange), document.removeEventListener("click", this.handleDocumentClick), document.removeEventListener("keydown", this.handleDocumentKeydown), (o = this.childrenObserver) == null || o.disconnect();
1976
2018
  }
1977
2019
  attributeChangedCallback() {
1978
2020
  this.isConnected && this.syncAttributesToState();
1979
2021
  }
1980
2022
  syncAttributesToState() {
1981
- var i, r, d, h, m;
1982
- const t = ((i = this.getAttribute("label")) != null ? i : "").trim() || mt, e = ((r = this.getAttribute("menu-label")) != null ? r : "").trim() || gt, n = ((d = this.getAttribute("aria-label")) != null ? d : "").trim() || ut, o = ((h = this.getAttribute("target")) != null ? h : "_blank").trim() || "_blank", a = ((m = this.getAttribute("icon")) != null ? m : Z).trim() || Z, s = this.isOutsideBusinessHours();
1983
- if (this.labelEl.textContent = t, this.buttonEl.setAttribute("aria-label", n), this.buttonEl.setAttribute("title", n), this.syncBrandVariant(), this.closedMessageTextEl.textContent = this.getClosedMessage(), this.closedMessageEl.hidden = !s, this.customMenuSlotEl.hidden = s, s) {
2023
+ var i, l, d, m, h;
2024
+ const e = ((i = this.getAttribute("label")) != null ? i : "").trim() || ue, t = ((l = this.getAttribute("menu-label")) != null ? l : "").trim() || fe, n = ((d = this.getAttribute("aria-label")) != null ? d : "").trim() || ge, o = ((m = this.getAttribute("target")) != null ? m : "_blank").trim() || "_blank", a = ((h = this.getAttribute("icon")) != null ? h : Q).trim() || Q, s = this.isOutsideBusinessHours();
2025
+ if (this.labelEl.textContent = e, this.buttonEl.setAttribute("aria-label", n), this.buttonEl.setAttribute("title", n), this.syncBrandVariant(), this.closedMessageTextEl.textContent = this.getClosedMessage(), this.closedMessageEl.hidden = !s, this.customMenuSlotEl.hidden = s, s) {
1984
2026
  this.generatedOptionsEl.hidden = !0, this.generatedOptionsEl.replaceChildren();
1985
2027
  return;
1986
2028
  }
1987
- this.renderMenuOptions(e, o, a);
2029
+ this.renderMenuOptions(t, o, a);
1988
2030
  }
1989
- buildWhatsappUrl(t, e) {
1990
- const n = this.sanitizePhone(t);
2031
+ buildWhatsappUrl(e, t) {
2032
+ const n = this.sanitizePhone(e);
1991
2033
  if (!n)
1992
2034
  return "";
1993
- const o = (e != null ? e : "").trim(), a = o ? `?text=${encodeURIComponent(o)}` : "";
1994
- return `${bt}${n}${a}`;
2035
+ const o = (t != null ? t : "").trim(), a = o ? `?text=${encodeURIComponent(o)}` : "";
2036
+ return `${Ce}${n}${a}`;
1995
2037
  }
1996
- sanitizePhone(t) {
1997
- return (t != null ? t : "").replace(/[^\d]/g, "");
2038
+ sanitizePhone(e) {
2039
+ return (e != null ? e : "").replace(/[^\d]/g, "");
1998
2040
  }
1999
2041
  syncBrandVariant() {
2000
2042
  var o, a;
2001
- const t = ((o = this.getAttribute("marca")) != null ? o : "").trim();
2002
- if (!t) {
2003
- this.style.setProperty("--rs-whatsapp-brand-color", O);
2043
+ const e = ((o = this.getAttribute("marca")) != null ? o : "").trim();
2044
+ if (!e) {
2045
+ this.style.setProperty("--rs-whatsapp-brand-color", Z);
2004
2046
  return;
2005
2047
  }
2006
- const e = this.normalizeBrandKey(t), n = (a = xt[e]) != null ? a : At;
2048
+ const t = this.normalizeBrandKey(e), n = (a = we[t]) != null ? a : be;
2007
2049
  this.style.setProperty("--rs-whatsapp-brand-color", n);
2008
2050
  }
2009
- normalizeBrandKey(t) {
2051
+ normalizeBrandKey(e) {
2010
2052
  var n;
2011
- const e = P(t);
2012
- return (n = wt[e]) != null ? n : e;
2053
+ const t = P(e);
2054
+ return (n = ye[t]) != null ? n : t;
2013
2055
  }
2014
- renderMenuOptions(t, e, n) {
2056
+ renderMenuOptions(e, t, n) {
2015
2057
  if (this.customMenuSlotEl.assignedElements({ flatten: !0 }).length > 0) {
2016
2058
  this.generatedOptionsEl.hidden = !0, this.generatedOptionsEl.replaceChildren();
2017
2059
  return;
2018
2060
  }
2019
- const s = this.getWhatsappOptions(t, e, n).filter((i) => this.sanitizePhone(i.telefono)).map((i) => this.createMenuLink(i));
2061
+ const s = this.getWhatsappOptions(e, t, n).filter((i) => this.sanitizePhone(i.telefono)).map((i) => this.createMenuLink(i));
2020
2062
  this.generatedOptionsEl.replaceChildren(...s), this.generatedOptionsEl.hidden = !1;
2021
2063
  }
2022
- getWhatsappOptions(t, e, n) {
2064
+ getWhatsappOptions(e, t, n) {
2023
2065
  var a, s;
2024
- const o = Array.from(this.querySelectorAll(D.tag));
2066
+ const o = Array.from(this.querySelectorAll(F.tag));
2025
2067
  return o.length ? o.map((i) => {
2026
- var r, d, h, m, g, f;
2068
+ var l, d, m, h, f, b;
2027
2069
  return {
2028
- label: ((d = (r = i.getAttribute("label")) != null ? r : i.textContent) != null ? d : "").trim() || t,
2029
- telefono: ((h = i.getAttribute("telefono")) != null ? h : "").trim(),
2030
- mensaje: ((m = i.getAttribute("mensaje")) != null ? m : "").trim(),
2031
- target: ((g = i.getAttribute("target")) != null ? g : e).trim() || e,
2032
- icon: ((f = i.getAttribute("icon")) != null ? f : n).trim() || n
2070
+ label: ((d = (l = i.getAttribute("label")) != null ? l : i.textContent) != null ? d : "").trim() || e,
2071
+ telefono: ((m = i.getAttribute("telefono")) != null ? m : "").trim(),
2072
+ mensaje: ((h = i.getAttribute("mensaje")) != null ? h : "").trim(),
2073
+ target: ((f = i.getAttribute("target")) != null ? f : t).trim() || t,
2074
+ icon: ((b = i.getAttribute("icon")) != null ? b : n).trim() || n
2033
2075
  };
2034
2076
  }) : [
2035
2077
  {
2036
- label: t,
2078
+ label: e,
2037
2079
  telefono: ((a = this.getAttribute("telefono")) != null ? a : "").trim(),
2038
2080
  mensaje: ((s = this.getAttribute("mensaje")) != null ? s : "").trim(),
2039
- target: e,
2081
+ target: t,
2040
2082
  icon: n
2041
2083
  }
2042
2084
  ];
2043
2085
  }
2044
- createMenuLink(t) {
2045
- const e = document.createElement("a"), n = document.createElement("span"), o = this.buildWhatsappUrl(t.telefono, t.mensaje);
2046
- e.className = "menu-link", e.rel = "noopener noreferrer", e.target = t.target, n.className = "menu-label", n.textContent = t.label;
2047
- const a = this.createOptionIcon(t.icon);
2048
- return a && e.append(a), e.append(n), o ? (e.href = o, e.tabIndex = 0, e) : (e.setAttribute("aria-disabled", "true"), e.tabIndex = -1, e);
2086
+ createMenuLink(e) {
2087
+ const t = document.createElement("a"), n = document.createElement("span"), o = this.buildWhatsappUrl(e.telefono, e.mensaje);
2088
+ t.className = "menu-link", t.rel = "noopener noreferrer", t.target = e.target, n.className = "menu-label", n.textContent = e.label;
2089
+ const a = this.createOptionIcon(e.icon);
2090
+ return a && t.append(a), t.append(n), o ? (t.href = o, t.tabIndex = 0, t) : (t.setAttribute("aria-disabled", "true"), t.tabIndex = -1, t);
2049
2091
  }
2050
- createOptionIcon(t) {
2092
+ createOptionIcon(e) {
2051
2093
  var s, i;
2052
- const e = t.trim(), n = P(e);
2094
+ const t = e.trim(), n = P(t);
2053
2095
  if (n === "none")
2054
2096
  return null;
2055
- if (Mt(e)) {
2056
- const r = document.createElement("img");
2057
- return r.className = "menu-link-icon", r.src = e, r.alt = "", r.setAttribute("aria-hidden", "true"), r.decoding = "async", r;
2097
+ if (ke(t)) {
2098
+ const l = document.createElement("img");
2099
+ return l.className = "menu-link-icon", l.src = t, l.alt = "", l.setAttribute("aria-hidden", "true"), l.decoding = "async", l;
2058
2100
  }
2059
- const o = vt[n || Z];
2101
+ const o = Pe[n || Q];
2060
2102
  if (!o)
2061
2103
  return null;
2062
2104
  const a = document.createElement("template");
@@ -2064,131 +2106,131 @@ class Q extends HTMLElement {
2064
2106
  }
2065
2107
  getClosedMessage() {
2066
2108
  var n;
2067
- const t = ((n = this.getAttribute("mensaje-fuera-horario")) != null ? n : "").trim() || ft, e = this.getScheduleSummary();
2068
- return e ? `${t}
2109
+ const e = ((n = this.getAttribute("mensaje-fuera-horario")) != null ? n : "").trim() || Ae, t = this.getScheduleSummary();
2110
+ return t ? `${e}
2069
2111
  Horario de atencion:
2070
- ${e}` : t;
2112
+ ${t}` : e;
2071
2113
  }
2072
2114
  isOutsideBusinessHours() {
2073
- const t = this.getAttribute("fuera-horario");
2074
- if (t !== null) {
2075
- const n = P(t);
2115
+ const e = this.getAttribute("fuera-horario");
2116
+ if (e !== null) {
2117
+ const n = P(e);
2076
2118
  return n !== "false" && n !== "0" && n !== "no";
2077
2119
  }
2078
- const e = this.getScheduleSegments().join(";");
2079
- return e ? !this.isWithinBusinessHours(e) : !1;
2120
+ const t = this.getScheduleSegments().join(";");
2121
+ return t ? !this.isWithinBusinessHours(t) : !1;
2080
2122
  }
2081
2123
  getScheduleSegments() {
2082
- var e;
2083
- const t = Array.from(this.querySelectorAll(M.tag));
2084
- return t.length ? t.map((n) => {
2085
- var i, r, d;
2086
- const o = ((i = n.getAttribute("dias")) != null ? i : "").trim(), a = ((r = n.getAttribute("desde")) != null ? r : "").trim(), s = ((d = n.getAttribute("hasta")) != null ? d : "").trim();
2124
+ var t;
2125
+ const e = Array.from(this.querySelectorAll(M.tag));
2126
+ return e.length ? e.map((n) => {
2127
+ var i, l, d;
2128
+ const o = ((i = n.getAttribute("dias")) != null ? i : "").trim(), a = ((l = n.getAttribute("desde")) != null ? l : "").trim(), s = ((d = n.getAttribute("hasta")) != null ? d : "").trim();
2087
2129
  return !o || !a || !s ? "" : `${o} ${a}-${s}`;
2088
- }).filter(Boolean) : ((e = this.getAttribute("horario")) != null ? e : "").split(";").map((n) => n.trim()).filter(Boolean);
2130
+ }).filter(Boolean) : ((t = this.getAttribute("horario")) != null ? t : "").split(";").map((n) => n.trim()).filter(Boolean);
2089
2131
  }
2090
2132
  getScheduleSummary() {
2091
- var e;
2092
- const t = Array.from(this.querySelectorAll(M.tag));
2093
- return t.length ? t.map((n) => {
2094
- var i, r, d;
2095
- const o = ((i = n.getAttribute("dias")) != null ? i : "").trim(), a = ((r = n.getAttribute("desde")) != null ? r : "").trim(), s = ((d = n.getAttribute("hasta")) != null ? d : "").trim();
2133
+ var t;
2134
+ const e = Array.from(this.querySelectorAll(M.tag));
2135
+ return e.length ? e.map((n) => {
2136
+ var i, l, d;
2137
+ const o = ((i = n.getAttribute("dias")) != null ? i : "").trim(), a = ((l = n.getAttribute("desde")) != null ? l : "").trim(), s = ((d = n.getAttribute("hasta")) != null ? d : "").trim();
2096
2138
  return !o || !a || !s ? "" : `${o} ${a}-${s}`;
2097
2139
  }).filter(Boolean).join(`
2098
- `) : ((e = this.getAttribute("horario")) != null ? e : "").split(";").map((n) => n.trim()).filter(Boolean).join(`
2140
+ `) : ((t = this.getAttribute("horario")) != null ? t : "").split(";").map((n) => n.trim()).filter(Boolean).join(`
2099
2141
  `);
2100
2142
  }
2101
- isWithinBusinessHours(t) {
2102
- const e = this.getCurrentTimeParts();
2103
- return t.split(";").some((n) => this.isScheduleSegmentActive(n, e.day, e.minutes));
2143
+ isWithinBusinessHours(e) {
2144
+ const t = this.getCurrentTimeParts();
2145
+ return e.split(";").some((n) => this.isScheduleSegmentActive(n, t.day, t.minutes));
2104
2146
  }
2105
2147
  getCurrentTimeParts() {
2106
- var e, n, o, a, s, i;
2107
- const t = ((e = this.getAttribute("time-zone")) != null ? e : "").trim();
2108
- if (!t) {
2109
- const r = /* @__PURE__ */ new Date();
2148
+ var t, n, o, a, s, i;
2149
+ const e = ((t = this.getAttribute("time-zone")) != null ? t : "").trim();
2150
+ if (!e) {
2151
+ const l = /* @__PURE__ */ new Date();
2110
2152
  return {
2111
- day: r.getDay(),
2112
- minutes: r.getHours() * 60 + r.getMinutes()
2153
+ day: l.getDay(),
2154
+ minutes: l.getHours() * 60 + l.getMinutes()
2113
2155
  };
2114
2156
  }
2115
2157
  try {
2116
- const r = /* @__PURE__ */ new Date(), d = new Intl.DateTimeFormat("en-US", {
2117
- timeZone: t,
2158
+ const l = /* @__PURE__ */ new Date(), d = new Intl.DateTimeFormat("en-US", {
2159
+ timeZone: e,
2118
2160
  weekday: "short"
2119
- }).format(r).toLowerCase(), h = new Intl.DateTimeFormat("en-US", {
2120
- timeZone: t,
2161
+ }).format(l).toLowerCase(), m = new Intl.DateTimeFormat("en-US", {
2162
+ timeZone: e,
2121
2163
  hour12: !1,
2122
2164
  hour: "2-digit",
2123
2165
  minute: "2-digit"
2124
- }).formatToParts(r), m = Number((o = (n = h.find((f) => f.type === "hour")) == null ? void 0 : n.value) != null ? o : 0) % 24, g = Number((s = (a = h.find((f) => f.type === "minute")) == null ? void 0 : a.value) != null ? s : 0);
2166
+ }).formatToParts(l), h = Number((o = (n = m.find((b) => b.type === "hour")) == null ? void 0 : n.value) != null ? o : 0) % 24, f = Number((s = (a = m.find((b) => b.type === "minute")) == null ? void 0 : a.value) != null ? s : 0);
2125
2167
  return {
2126
- day: (i = Et[d]) != null ? i : r.getDay(),
2127
- minutes: m * 60 + g
2168
+ day: (i = ve[d]) != null ? i : l.getDay(),
2169
+ minutes: h * 60 + f
2128
2170
  };
2129
2171
  } catch {
2130
- const r = /* @__PURE__ */ new Date();
2172
+ const l = /* @__PURE__ */ new Date();
2131
2173
  return {
2132
- day: r.getDay(),
2133
- minutes: r.getHours() * 60 + r.getMinutes()
2174
+ day: l.getDay(),
2175
+ minutes: l.getHours() * 60 + l.getMinutes()
2134
2176
  };
2135
2177
  }
2136
2178
  }
2137
- isScheduleSegmentActive(t, e, n) {
2138
- const o = t.trim().normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().match(/^(.+?)\s+(\d{1,2}:\d{2})\s*-\s*(\d{1,2}:\d{2})$/);
2179
+ isScheduleSegmentActive(e, t, n) {
2180
+ const o = e.trim().normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().match(/^(.+?)\s+(\d{1,2}:\d{2})\s*-\s*(\d{1,2}:\d{2})$/);
2139
2181
  if (!o)
2140
2182
  return !1;
2141
2183
  const a = this.parseScheduleDays(o[1]), s = this.parseScheduleTime(o[2]), i = this.parseScheduleTime(o[3]);
2142
- return !a.includes(e) || s === null || i === null ? !1 : s <= i ? n >= s && n <= i : n >= s || n <= i;
2184
+ return !a.includes(t) || s === null || i === null ? !1 : s <= i ? n >= s && n <= i : n >= s || n <= i;
2143
2185
  }
2144
- parseScheduleDays(t) {
2145
- const e = t.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/g, "");
2146
- return e === "*" || e === "todos" || e === "all" ? [0, 1, 2, 3, 4, 5, 6] : e.split(",").flatMap((n) => {
2186
+ parseScheduleDays(e) {
2187
+ const t = e.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/g, "");
2188
+ return t === "*" || t === "todos" || t === "all" ? [0, 1, 2, 3, 4, 5, 6] : t.split(",").flatMap((n) => {
2147
2189
  const [o, a] = n.split("-"), s = this.parseScheduleDay(o), i = a ? this.parseScheduleDay(a) : s;
2148
2190
  if (s === null || i === null)
2149
2191
  return [];
2150
2192
  if (s === i)
2151
2193
  return [s];
2152
- const r = [];
2194
+ const l = [];
2153
2195
  let d = s;
2154
2196
  for (; ; ) {
2155
- if (r.push(d), d === i)
2156
- return r;
2197
+ if (l.push(d), d === i)
2198
+ return l;
2157
2199
  d = (d + 1) % 7;
2158
2200
  }
2159
2201
  });
2160
2202
  }
2161
- parseScheduleDay(t) {
2203
+ parseScheduleDay(e) {
2162
2204
  var n;
2163
- if (!t)
2205
+ if (!e)
2164
2206
  return null;
2165
- const e = P(t);
2166
- return (n = yt[e]) != null ? n : null;
2207
+ const t = P(e);
2208
+ return (n = Ee[t]) != null ? n : null;
2167
2209
  }
2168
- parseScheduleTime(t) {
2169
- const [e, n] = t.split(":"), o = Number(e), a = Number(n);
2210
+ parseScheduleTime(e) {
2211
+ const [t, n] = e.split(":"), o = Number(t), a = Number(n);
2170
2212
  return !Number.isInteger(o) || !Number.isInteger(a) || o < 0 || o > 23 || a < 0 || a > 59 ? null : o * 60 + a;
2171
2213
  }
2172
- setMenuOpen(t) {
2173
- this.menuEl.hidden = !t, this.buttonEl.setAttribute("aria-expanded", String(t)), this.toggleAttribute("open", t);
2214
+ setMenuOpen(e) {
2215
+ this.menuEl.hidden = !e, this.buttonEl.setAttribute("aria-expanded", String(e)), this.toggleAttribute("open", e);
2174
2216
  }
2175
2217
  }
2176
- c(Q, "tag", "rs-whatsapp");
2177
- class D extends HTMLElement {
2218
+ c(G, "tag", "rs-whatsapp");
2219
+ class F extends HTMLElement {
2178
2220
  }
2179
- c(D, "tag", "rs-whatsapp-option");
2221
+ c(F, "tag", "rs-whatsapp-option");
2180
2222
  class M extends HTMLElement {
2181
2223
  }
2182
2224
  c(M, "tag", "rs-whatsapp-schedule");
2183
- F(_.tag, _);
2184
- F(D.tag, D);
2185
- F(M.tag, M);
2186
- F(Q.tag, Q);
2225
+ _(I.tag, I);
2226
+ _(F.tag, F);
2227
+ _(M.tag, M);
2228
+ _(G.tag, G);
2187
2229
  export {
2188
- _ as RsMap,
2189
- Q as RsWhatsapp,
2190
- D as RsWhatsappOption,
2230
+ I as RsMap,
2231
+ G as RsWhatsapp,
2232
+ F as RsWhatsappOption,
2191
2233
  M as RsWhatsappSchedule,
2192
- F as safeDefine
2234
+ _ as safeDefine
2193
2235
  };
2194
2236
  //# sourceMappingURL=rs-components.es.js.map