@mapvx/web-components 0.0.23 → 0.0.24

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.
Files changed (37) hide show
  1. package/dist/cjs/{base-floor-selector-CFWNvVet.cjs → base-floor-selector-CHfESDHE.cjs} +2 -2
  2. package/dist/cjs/{class-map-DfzRTbYX.cjs → class-map-hyA27jHC.cjs} +2 -2
  3. package/dist/cjs/compact-floor-selector-Def-YJ-o.cjs +174 -0
  4. package/dist/cjs/{consume-DvK04Qkq.cjs → consume-De0hbKnD.cjs} +2 -2
  5. package/dist/cjs/{custom-map-Csx71pWL.cjs → custom-map-D5AbTB7G.cjs} +15 -15
  6. package/dist/cjs/{floor-selector-Co3QpwzQ.cjs → floor-selector-urAHbfeG.cjs} +2 -2
  7. package/dist/cjs/{lazy-load-DKre9Iqr.cjs → lazy-load-CxL4pQ50.cjs} +2 -2
  8. package/dist/cjs/map-view-with-modal.cjs +49 -37
  9. package/dist/cjs/{qr-modal-CYh9P4bM.cjs → qr-modal-DMHM405t.cjs} +2 -2
  10. package/dist/cjs/{route-options-DxYiU5zC.cjs → route-options-BZQaj2EM.cjs} +2 -2
  11. package/dist/cjs/route-view-totems.cjs +8 -3
  12. package/dist/components/custom-map.d.ts +13 -0
  13. package/dist/components/custom-map.js +64 -0
  14. package/dist/components/floor-selector.d.ts +6 -0
  15. package/dist/components/floor-selector.js +40 -0
  16. package/dist/components/qr-modal.d.ts +7 -0
  17. package/dist/components/qr-modal.js +69 -0
  18. package/dist/components/route-options.d.ts +6 -0
  19. package/dist/components/route-options.js +51 -0
  20. package/dist/components/zoom-controls.d.ts +6 -0
  21. package/dist/components/zoom-controls.js +40 -0
  22. package/dist/es/assets/{compact-floor-selector-BLLR7mXQ.js → compact-floor-selector-BS3kmZbM.js} +27 -46
  23. package/dist/es/assets/{components-C542vOSv.js → components-Cg181WRf.js} +14 -51
  24. package/dist/es/assets/{map-view-with-modal-C-vcHaJc.js → map-view-with-modal-DRCi4MZE.js} +59 -94
  25. package/dist/es/assets/{route-view-totems-z3hCCsGS.js → route-view-totems-Bpxdz9bU.js} +13 -8
  26. package/dist/es/assets/{utils-HInBaX5h.js → utils-D3oP0BX3.js} +3 -3
  27. package/dist/es/index.js +2 -2
  28. package/dist/es/route-view-totems.js +2 -2
  29. package/dist/iife/map-view-with-modal.js +97 -82
  30. package/dist/iife/route-view-totems.js +28 -23
  31. package/dist/route-view-totems.d.ts +16 -0
  32. package/dist/route-view-totems.js +58 -0
  33. package/dist/utils/styles.d.ts +2 -0
  34. package/dist/utils/styles.js +5 -0
  35. package/package.json +4 -4
  36. package/dist/cjs/compact-floor-selector-BPNEdxm6.cjs +0 -171
  37. package/dist/update-timestamp.txt +0 -1
@@ -0,0 +1,40 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { LitElement, html } from 'lit';
8
+ import { customElement, state } from 'lit/decorators.js';
9
+ let ZoomControls = class ZoomControls extends LitElement {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.zoomLevel = 100;
13
+ }
14
+ render() {
15
+ return html `
16
+ <div class="flex flex-col gap-2 bg-white p-3 rounded-lg shadow-md">
17
+ <button
18
+ class="p-2 bg-gray-100 hover:bg-gray-200 rounded-lg"
19
+ @click=${() => (this.zoomLevel += 10)}
20
+ >
21
+ 🔍+ (${this.zoomLevel}%)
22
+ </button>
23
+ <button
24
+ class="p-2 bg-gray-100 hover:bg-gray-200 rounded-lg"
25
+ @click=${() => (this.zoomLevel = Math.max(50, this.zoomLevel - 10))}
26
+ >
27
+ 🔍-
28
+ </button>
29
+ </div>
30
+ `;
31
+ }
32
+ };
33
+ __decorate([
34
+ state()
35
+ ], ZoomControls.prototype, "zoomLevel", void 0);
36
+ ZoomControls = __decorate([
37
+ customElement('zoom-controls')
38
+ ], ZoomControls);
39
+ export { ZoomControls };
40
+ //# sourceMappingURL=zoom-controls.js.map
@@ -1,5 +1,5 @@
1
- import { x, a as i, n, t } from './route-view-totems-z3hCCsGS.js';
2
- import { B as BaseFloorSelector, e } from './components-C542vOSv.js';
1
+ import { x, i, n, t } from './route-view-totems-Bpxdz9bU.js';
2
+ import { B as BaseFloorSelector, e } from './components-Cg181WRf.js';
3
3
 
4
4
  var __defProp = Object.defineProperty;
5
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -18,12 +18,10 @@ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot
18
18
  var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
19
19
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
20
20
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
21
- var _borderColor, _borderWidth, _disabled;
21
+ var _disabled;
22
22
  let CompactFloorSelector = class extends BaseFloorSelector {
23
23
  constructor() {
24
24
  super(...arguments);
25
- __privateAdd(this, _borderColor, "#251660");
26
- __privateAdd(this, _borderWidth, 1);
27
25
  __privateAdd(this, _disabled, false);
28
26
  this.isOpen = false;
29
27
  this._handleClickOutside = (event) => {
@@ -33,18 +31,6 @@ let CompactFloorSelector = class extends BaseFloorSelector {
33
31
  }
34
32
  };
35
33
  }
36
- get borderColor() {
37
- return __privateGet(this, _borderColor);
38
- }
39
- set borderColor(_) {
40
- __privateSet(this, _borderColor, _);
41
- }
42
- get borderWidth() {
43
- return __privateGet(this, _borderWidth);
44
- }
45
- set borderWidth(_) {
46
- __privateSet(this, _borderWidth, _);
47
- }
48
34
  get disabled() {
49
35
  return __privateGet(this, _disabled);
50
36
  }
@@ -86,7 +72,7 @@ let CompactFloorSelector = class extends BaseFloorSelector {
86
72
  active: !!currentFloor,
87
73
  open: this.isOpen
88
74
  })}
89
- style="border: ${this.borderWidth}px solid ${this.borderColor};"
75
+ style="border: var(--floor-selector-border-width, 1px) solid var(--floor-selector-border-color, #251660);"
90
76
  ?disabled=${this.disabled}
91
77
  @click=${this._toggleDropdown}
92
78
  >
@@ -119,8 +105,6 @@ let CompactFloorSelector = class extends BaseFloorSelector {
119
105
  `;
120
106
  }
121
107
  };
122
- _borderColor = new WeakMap();
123
- _borderWidth = new WeakMap();
124
108
  _disabled = new WeakMap();
125
109
  CompactFloorSelector.styles = [
126
110
  i`
@@ -136,34 +120,36 @@ CompactFloorSelector.styles = [
136
120
  }
137
121
 
138
122
  .floor-button {
139
- background: #fff;
140
- border-radius: 8px;
123
+ font-family: var(--floor-selector-font-family, inherit);
124
+ background: var(--floor-selector-surface, #fff);
125
+ border-radius: var(--floor-selector-radius, 8px);
141
126
  padding: 8px 12px;
142
127
  font-size: 14px;
143
128
  font-weight: 500;
144
- color: #251660;
129
+ color: var(--floor-selector-color, #251660);
145
130
  cursor: pointer;
146
131
  display: flex;
147
132
  align-items: center;
148
133
  gap: 8px;
149
134
  min-width: 120px;
150
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
135
+ box-shadow: var(--floor-selector-shadow, 0 2px 4px rgba(0, 0, 0, 0.1));
151
136
  transition: all 0.2s ease;
152
137
  user-select: none;
153
138
  -webkit-user-select: none;
154
139
  -moz-user-select: none;
155
140
  -ms-user-select: none;
141
+ border: var(--floor-selector-border-width, 1px) solid var(--floor-selector-border-color, #251660);
156
142
  }
157
143
 
158
144
  .floor-button:hover {
159
- border-color: #007bff;
160
- box-shadow: 0 2px 8px rgba(0, 123, 255, 0.2);
145
+ border-color: var(--floor-selector-hover-accent, #007bff);
146
+ box-shadow: 0 2px 8px color-mix(in srgb, var(--floor-selector-hover-accent, #007bff) 20%, transparent);
161
147
  }
162
148
 
163
149
  .floor-button.active {
164
- background: #fff;
165
- color: #251660;
166
- border-color: #251660;
150
+ background: var(--floor-selector-surface, #fff);
151
+ color: var(--floor-selector-color, #251660);
152
+ border-color: var(--floor-selector-border-color, #251660);
167
153
  }
168
154
 
169
155
  .floor-button.disabled {
@@ -172,8 +158,8 @@ CompactFloorSelector.styles = [
172
158
  }
173
159
 
174
160
  .floor-button[disabled] {
175
- background: #fff;
176
- color: #251660;
161
+ background: var(--floor-selector-surface, #fff);
162
+ color: var(--floor-selector-color, #251660);
177
163
  cursor: not-allowed;
178
164
  pointer-events: none;
179
165
  }
@@ -200,9 +186,9 @@ CompactFloorSelector.styles = [
200
186
  top: 100%;
201
187
  left: 0;
202
188
  right: 0;
203
- background: #fff;
204
- border: 1px solid #ddd;
205
- border-radius: 8px;
189
+ background: var(--floor-selector-surface, #fff);
190
+ border: var(--floor-selector-border-width, 1px) solid color-mix(in srgb, var(--floor-selector-border-color, #251660) 30%, #ffffff);
191
+ border-radius: var(--floor-selector-radius, 8px);
206
192
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
207
193
  max-height: 200px;
208
194
  overflow-y: auto;
@@ -216,12 +202,13 @@ CompactFloorSelector.styles = [
216
202
  }
217
203
 
218
204
  .floor-option {
205
+ font-family: var(--floor-selector-font-family, inherit);
219
206
  padding: 8px 12px;
220
207
  cursor: pointer;
221
- border-bottom: 1px solid #f0f0f0;
208
+ border-bottom: 1px solid color-mix(in srgb, var(--floor-selector-border-color, #251660) 20%, #ffffff);
222
209
  transition: background-color 0.2s ease;
223
210
  font-size: 14px;
224
- color: #251660;
211
+ color: var(--floor-selector-color, #251660);
225
212
  user-select: none;
226
213
  -webkit-user-select: none;
227
214
  -moz-user-select: none;
@@ -233,12 +220,12 @@ CompactFloorSelector.styles = [
233
220
  }
234
221
 
235
222
  .floor-option:hover {
236
- background-color: #f8f9fa;
223
+ background-color: color-mix(in srgb, var(--floor-selector-hover-accent, #007bff) 8%, #ffffff);
237
224
  }
238
225
 
239
226
  .floor-option.active {
240
- background-color: #f3e7ff;
241
- color: #251660;
227
+ background-color: var(--floor-selector-active-bg, #f3e7ff);
228
+ color: var(--floor-selector-color, #251660);
242
229
  }
243
230
 
244
231
  .floor-option.disabled {
@@ -269,12 +256,6 @@ CompactFloorSelector.styles = [
269
256
  }
270
257
  `
271
258
  ];
272
- __decorateClass([
273
- n({ type: String })
274
- ], CompactFloorSelector.prototype, "borderColor", 1);
275
- __decorateClass([
276
- n({ type: Number })
277
- ], CompactFloorSelector.prototype, "borderWidth", 1);
278
259
  __decorateClass([
279
260
  n({ type: Boolean })
280
261
  ], CompactFloorSelector.prototype, "disabled", 1);
@@ -283,4 +264,4 @@ CompactFloorSelector = __decorateClass([
283
264
  ], CompactFloorSelector);
284
265
 
285
266
  export { CompactFloorSelector };
286
- //# sourceMappingURL=compact-floor-selector-BLLR7mXQ.js.map
267
+ //# sourceMappingURL=compact-floor-selector-BS3kmZbM.js.map
@@ -1,5 +1,5 @@
1
- import { i as i$2, x, r, a as i$3, n as n$1, t as t$1, T } from './route-view-totems-z3hCCsGS.js';
2
- import { R as RouteAnimationController, M as MarkerController } from './utils-HInBaX5h.js';
1
+ import { a as i$2, x, r, i as i$3, t as t$1, T } from './route-view-totems-Bpxdz9bU.js';
2
+ import { R as RouteAnimationController, M as MarkerController } from './utils-D3oP0BX3.js';
3
3
 
4
4
  /**
5
5
  * @license
@@ -42,13 +42,10 @@ class s{get value(){return this.o}set value(s){this.setValue(s);}setValue(s,t=fa
42
42
 
43
43
  const sdkContext = n("lazarillo-sdk");
44
44
 
45
- const style$3 = ":host{display:block;height:100%;width:100%}#map,.maplibregl-canvas{width:100%;height:100%}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 20px 50px 0}.maplibregl-ctrl{bottom:var(--zoom-button-margin, 80px);right:var(--zoom-button-margin, 40px);border:3px solid #000;padding:0;border-radius:100px;background:#fff;overflow:hidden;display:flex;flex-direction:column;width:var(--zoom-button-size, 70px);height:calc(var(--zoom-button-size, 70px) * 1.8)}.maplibregl-ctrl button{background-color:transparent;box-shadow:none;border-radius:0;margin:0;font-size:calc(var(--zoom-button-size, 70px) * .45);font-weight:400;width:100%;height:100%;color:#000;transition:background-color .4s ease,color .4s ease}.maplibregl-ctrl button:hover{background-color:#000!important;color:#fff}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in{border-bottom:3px solid #000}.maplibregl-ctrl-group .maplibregl-ctrl-icon{background:none!important;display:none!important}.maplibregl-ctrl-group button.maplibregl-ctrl-zoom-in:after{content:\"+\";display:block;font-size:calc(var(--zoom-button-size, 70px) * .46);font-weight:600;line-height:1;text-align:center}.maplibregl-ctrl-group button.maplibregl-ctrl-zoom-out:after{content:\"–\";display:block;font-size:calc(var(--zoom-button-size, 70px) * .46);font-weight:600;line-height:1;text-align:center}#modal{position:absolute;width:100%;height:100%;background:#0003;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;justify-items:center;top:0;left:0;z-index:100}.modal-content{min-width:100px;min-height:100px;background-color:#fff;border:1px solid #000;border-radius:10px;padding:10px;width:fit-content;height:fit-content;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}@media (max-width: 768px){#modal{align-items:flex-start;padding-top:60px}.modal-content{max-width:90%;margin:0 auto;border-radius:12px;box-shadow:0 4px 12px #00000026}}:host([compact-mode]){border-radius:12px!important;overflow:hidden!important;box-shadow:0 4px 12px #00000026!important}:host([compact-mode]) #map{border-radius:12px}:host([compact-mode]) .maplibregl-canvas{border-radius:12px}.modal-text{font-family:Poppins,sans-serif;font-size:20pt;font-weight:500;color:#000}.modal-icon{height:100px;align-self:center}.maplibregl-marker:has(.popup){z-index:10}.maplibregl-marker:not(:has(.popup)){z-index:5}.maplibregl-ctrl-compass{visibility:hidden;height:0px}";
45
+ const style$3 = ":host{display:block;height:100%;width:100%}#map,.maplibregl-canvas{width:100%;height:100%}.maplibregl-ctrl-bottom-right .maplibregl-ctrl{float:right;margin:0 20px 50px 0}.maplibregl-ctrl{bottom:var(--zoom-button-margin, 80px);right:var(--zoom-button-margin, 40px);border:var(--mvx-border-width, 0px) solid var(--mvx-border-color, transparent);padding:0;border-radius:100px;background:#fff;overflow:hidden;display:flex;flex-direction:column;width:var(--zoom-button-size, 70px);height:calc(var(--zoom-button-size, 70px) * 1.8)}.maplibregl-ctrl button{font-family:var(--mvx-font-family, inherit);background-color:transparent;box-shadow:none;border-radius:0;margin:0;font-size:calc(var(--zoom-button-size, 70px) * .45);font-weight:400;width:100%;height:100%;color:var(--mvx-primary-color, #251660);transition:background-color .4s ease,color .4s ease}.maplibregl-ctrl button:hover{background-color:var(--mvx-primary-color, #251660)!important;color:#fff}.maplibregl-ctrl button.maplibregl-ctrl-zoom-in{border-bottom:var(--zoom-border-width, 0px) solid var(--zoom-border-color, transparent)}.maplibregl-ctrl-group .maplibregl-ctrl-icon{background:none!important;display:none!important}.maplibregl-ctrl-group button.maplibregl-ctrl-zoom-in:after{content:\"+\";display:block;font-size:calc(var(--zoom-button-size, 70px) * .46);font-weight:600;line-height:1;text-align:center}.maplibregl-ctrl-group button.maplibregl-ctrl-zoom-out:after{content:\"–\";display:block;font-size:calc(var(--zoom-button-size, 70px) * .46);font-weight:600;line-height:1;text-align:center}#modal{position:absolute;width:100%;height:100%;background:#0003;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;justify-items:center;top:0;left:0;z-index:100}.modal-content{min-width:100px;min-height:100px;background-color:#fff;border:1px solid #000;border-radius:10px;padding:10px;width:fit-content;height:fit-content;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}@media (max-width: 768px){#modal{align-items:flex-start;padding-top:60px}.modal-content{max-width:90%;margin:0 auto;border-radius:12px;box-shadow:0 4px 12px #00000026}}:host([compact-mode]){border-radius:12px!important;overflow:hidden!important;box-shadow:0 4px 12px #00000026!important}:host([compact-mode]) #map{border-radius:12px}:host([compact-mode]) .maplibregl-canvas{border-radius:12px}.modal-text{font-family:Poppins,sans-serif;font-size:20pt;font-weight:500;color:#000}.modal-icon{height:100px;align-self:center}.maplibregl-marker:has(.popup){z-index:10}.maplibregl-marker:not(:has(.popup)){z-index:5}.maplibregl-ctrl-compass{visibility:hidden;height:0px}";
46
46
 
47
47
  var __defProp$3 = Object.defineProperty;
48
48
  var __getOwnPropDesc$3 = Object.getOwnPropertyDescriptor;
49
- var __typeError = (msg) => {
50
- throw TypeError(msg);
51
- };
52
49
  var __decorateClass$4 = (decorators, target, key, kind) => {
53
50
  var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc$3(target, key) : target;
54
51
  for (var i = decorators.length - 1, decorator; i >= 0; i--)
@@ -57,16 +54,9 @@ var __decorateClass$4 = (decorators, target, key, kind) => {
57
54
  if (kind && result) __defProp$3(target, key, result);
58
55
  return result;
59
56
  };
60
- var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
61
- var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
62
- var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
63
- var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
64
- var _zoomBorderColor, _zoomBorderWidth;
65
57
  let CustomMap = class extends i$2 {
66
58
  constructor() {
67
59
  super();
68
- __privateAdd(this, _zoomBorderColor, "#251660");
69
- __privateAdd(this, _zoomBorderWidth, 1);
70
60
  this.mapReady = false;
71
61
  this.routeAnimationHandlers = {
72
62
  onRouteAnimationFinished: () => {
@@ -107,18 +97,6 @@ let CustomMap = class extends i$2 {
107
97
  this.routeAnimationController = new RouteAnimationController(this, this.routeAnimationHandlers);
108
98
  this.markerController = new MarkerController(this);
109
99
  }
110
- get zoomBorderColor() {
111
- return __privateGet(this, _zoomBorderColor);
112
- }
113
- set zoomBorderColor(_) {
114
- __privateSet(this, _zoomBorderColor, _);
115
- }
116
- get zoomBorderWidth() {
117
- return __privateGet(this, _zoomBorderWidth);
118
- }
119
- set zoomBorderWidth(_) {
120
- __privateSet(this, _zoomBorderWidth, _);
121
- }
122
100
  async firstUpdated() {
123
101
  if (this.shadowRoot) {
124
102
  const style2 = document.createElement("style");
@@ -258,17 +236,10 @@ let CustomMap = class extends i$2 {
258
236
  const zoomSize = parentElement.getAttribute("zoom-size") || "normal";
259
237
  if (compactMode) {
260
238
  this.setAttribute("compact-mode", "");
261
- console.log("Modo compacto activado");
262
239
  } else {
263
240
  this.removeAttribute("compact-mode");
264
- console.log("Modo compacto desactivado");
265
241
  }
266
242
  this.setAttribute("zoom-size", zoomSize);
267
- console.log("Tamaño de zoom aplicado:", zoomSize);
268
- const zoomBorderColor = this.getAttribute("zoom-border-color") || this.zoomBorderColor;
269
- const zoomBorderWidth = parseInt(this.getAttribute("zoom-border-width") || this.zoomBorderWidth.toString());
270
- this.style.setProperty("--zoom-border-color", zoomBorderColor);
271
- this.style.setProperty("--zoom-border-width", `${zoomBorderWidth}px`);
272
243
  }
273
244
  }
274
245
  render() {
@@ -281,8 +252,6 @@ let CustomMap = class extends i$2 {
281
252
  </div>`;
282
253
  }
283
254
  };
284
- _zoomBorderColor = new WeakMap();
285
- _zoomBorderWidth = new WeakMap();
286
255
  CustomMap.styles = [
287
256
  i$3`
288
257
  :host {
@@ -322,7 +291,7 @@ CustomMap.styles = [
322
291
  --zoom-button-margin: 16px;
323
292
  }
324
293
 
325
- /* Aplicar variables CSS a los botones de zoom */
294
+ /* Apply CSS variables to zoom buttons */
326
295
  :host([zoom-size='small']) .maplibregl-ctrl {
327
296
  width: 32px !important;
328
297
  height: 58px !important;
@@ -344,7 +313,7 @@ CustomMap.styles = [
344
313
  right: 16px !important;
345
314
  }
346
315
 
347
- /* Ajustar tamaño de fuente según el tamaño del botón */
316
+ /* Adjust font size according to button size */
348
317
  :host([zoom-size='small']) .maplibregl-ctrl button {
349
318
  font-size: 14px !important;
350
319
  }
@@ -369,22 +338,22 @@ CustomMap.styles = [
369
338
  font-size: 22px !important;
370
339
  }
371
340
 
372
- /* Styles for zoom button border */
373
- :host([zoom-border-color]) .maplibregl-ctrl {
374
- border: var(--zoom-border-width, 1px) solid var(--zoom-border-color, #251660) !important;
341
+ /* Zoom button border driven by CSS variables (no attribute gating) */
342
+ .maplibregl-ctrl {
343
+ border: var(--zoom-border-width, 0px) solid var(--zoom-border-color, transparent) !important;
375
344
  }
376
345
 
377
- :host([zoom-border-color]) .maplibregl-ctrl button {
346
+ .maplibregl-ctrl button {
378
347
  border: none;
379
348
  border-radius: unset;
380
349
  }
381
350
 
382
- /* Add divider between zoom buttons */
383
- :host([zoom-border-color]) .maplibregl-ctrl button:first-child {
384
- border-bottom: 1px solid var(--zoom-border-color, #251660) !important;
351
+ /* Divider between zoom buttons based on border width */
352
+ .maplibregl-ctrl button:first-child {
353
+ border-bottom: var(--zoom-border-width, 0px) solid var(--zoom-border-color, transparent) !important;
385
354
  }
386
355
 
387
- :host([zoom-border-color]) .maplibregl-ctrl button:hover {
356
+ .maplibregl-ctrl button:hover {
388
357
  background-color: var(--zoom-border-color, #251660) !important;
389
358
  color: #fff !important;
390
359
  }
@@ -393,12 +362,6 @@ CustomMap.styles = [
393
362
  __decorateClass$4([
394
363
  c({ context: sdkContext, subscribe: true })
395
364
  ], CustomMap.prototype, "sdkData", 2);
396
- __decorateClass$4([
397
- n$1({ type: String })
398
- ], CustomMap.prototype, "zoomBorderColor", 1);
399
- __decorateClass$4([
400
- n$1({ type: Number })
401
- ], CustomMap.prototype, "zoomBorderWidth", 1);
402
365
  CustomMap = __decorateClass$4([
403
366
  t$1("custom-map")
404
367
  ], CustomMap);
@@ -3837,4 +3800,4 @@ const routeOptions = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProper
3837
3800
  }, Symbol.toStringTag, { value: 'Module' }));
3838
3801
 
3839
3802
  export { BaseFloorSelector as B, customMap as c, e, floorSelector as f, i$1 as i, qrModal as q, routeOptions as r, sdkContext as s };
3840
- //# sourceMappingURL=components-C542vOSv.js.map
3803
+ //# sourceMappingURL=components-Cg181WRf.js.map
@@ -1,5 +1,5 @@
1
- import { i, a as i$1, A as AnalyticsController, l as loadCustomMap, b as loadCompactFloorSelector, R as RollbarController, x, n, t } from './route-view-totems-z3hCCsGS.js';
2
- import { S as SDKController } from './utils-HInBaX5h.js';
1
+ import { i, n, a as i$1, A as AnalyticsController, l as loadCustomMap, b as loadCompactFloorSelector, R as RollbarController, x, t } from './route-view-totems-Bpxdz9bU.js';
2
+ import { S as SDKController } from './utils-D3oP0BX3.js';
3
3
 
4
4
  var __defProp = Object.defineProperty;
5
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -18,49 +18,10 @@ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot
18
18
  var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
19
19
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
20
20
  var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), member.set(obj, value), value);
21
- var _apiKey, _parentPlaceId, _locale, _placeId, _compactMode, _zoomButtonSize, _showFloorSelector, _floorSelectorPosition, _floorSelectorBorderColor, _floorSelectorBorderWidth, _floorSelectorDisabled, _zoomButtonBorderColor, _zoomButtonBorderWidth;
22
- let MapViewWithModal = class extends i {
21
+ var _apiKey, _parentPlaceId, _locale, _placeId, _compactMode, _zoomButtonSize, _showFloorSelector, _floorSelectorPosition, _floorSelectorDisabled;
22
+ let MapViewWithModal = class extends i$1 {
23
23
  constructor() {
24
24
  super(...arguments);
25
- this.styles = [
26
- i$1`
27
- :host {
28
- display: block;
29
- height: 100%;
30
- width: 100%;
31
- }
32
- `,
33
- i$1`
34
- .map-container {
35
- height: 100%;
36
- width: 100%;
37
- }
38
- `,
39
- i$1`
40
- :host([compact-mode]) .map-container {
41
- border-radius: 12px;
42
- overflow: hidden;
43
- }
44
- `,
45
- i$1`
46
- :host([zoom-size='small']) ::slotted(*) {
47
- --zoom-button-size: 32px;
48
- --zoom-button-margin: 8px;
49
- }
50
- `,
51
- i$1`
52
- :host([zoom-size='normal']) ::slotted(*) {
53
- --zoom-button-size: 40px;
54
- --zoom-button-margin: 12px;
55
- }
56
- `,
57
- i$1`
58
- :host([zoom-size='large']) ::slotted(*) {
59
- --zoom-button-size: 48px;
60
- --zoom-button-margin: 16px;
61
- }
62
- `
63
- ];
64
25
  __privateAdd(this, _apiKey, "");
65
26
  __privateAdd(this, _parentPlaceId, "");
66
27
  __privateAdd(this, _locale, "es");
@@ -69,11 +30,7 @@ let MapViewWithModal = class extends i {
69
30
  __privateAdd(this, _zoomButtonSize, "normal");
70
31
  __privateAdd(this, _showFloorSelector, true);
71
32
  __privateAdd(this, _floorSelectorPosition, "top-left");
72
- __privateAdd(this, _floorSelectorBorderColor, "#251660");
73
- __privateAdd(this, _floorSelectorBorderWidth, 1);
74
33
  __privateAdd(this, _floorSelectorDisabled, false);
75
- __privateAdd(this, _zoomButtonBorderColor, "#251660");
76
- __privateAdd(this, _zoomButtonBorderWidth, 1);
77
34
  this.sdkController = new SDKController(this);
78
35
  this.analyticsController = AnalyticsController.getInstance();
79
36
  this.currentFloorId = "";
@@ -126,36 +83,12 @@ let MapViewWithModal = class extends i {
126
83
  set floorSelectorPosition(_) {
127
84
  __privateSet(this, _floorSelectorPosition, _);
128
85
  }
129
- get floorSelectorBorderColor() {
130
- return __privateGet(this, _floorSelectorBorderColor);
131
- }
132
- set floorSelectorBorderColor(_) {
133
- __privateSet(this, _floorSelectorBorderColor, _);
134
- }
135
- get floorSelectorBorderWidth() {
136
- return __privateGet(this, _floorSelectorBorderWidth);
137
- }
138
- set floorSelectorBorderWidth(_) {
139
- __privateSet(this, _floorSelectorBorderWidth, _);
140
- }
141
86
  get floorSelectorDisabled() {
142
87
  return __privateGet(this, _floorSelectorDisabled);
143
88
  }
144
89
  set floorSelectorDisabled(_) {
145
90
  __privateSet(this, _floorSelectorDisabled, _);
146
91
  }
147
- get zoomButtonBorderColor() {
148
- return __privateGet(this, _zoomButtonBorderColor);
149
- }
150
- set zoomButtonBorderColor(_) {
151
- __privateSet(this, _zoomButtonBorderColor, _);
152
- }
153
- get zoomButtonBorderWidth() {
154
- return __privateGet(this, _zoomButtonBorderWidth);
155
- }
156
- set zoomButtonBorderWidth(_) {
157
- __privateSet(this, _zoomButtonBorderWidth, _);
158
- }
159
92
  async _loadComponents() {
160
93
  await Promise.all([loadCustomMap(), loadCompactFloorSelector()]);
161
94
  }
@@ -228,8 +161,11 @@ let MapViewWithModal = class extends i {
228
161
  class="map-container"
229
162
  ?compact-mode=${this.compactMode}
230
163
  zoom-size=${this.zoomButtonSize}
231
- zoom-border-color=${this.zoomButtonBorderColor}
232
- zoom-border-width=${this.zoomButtonBorderWidth}
164
+ style="
165
+ /* Forward theme to custom-map */
166
+ --zoom-border-color: var(--mvx-border-color);
167
+ --zoom-border-width: var(--mvx-border-width);
168
+ "
233
169
  @mapReady=${this._mapReadyHandler}
234
170
  @cameraInitialized=${this._cameraInitializedHandler}
235
171
  @floorChange=${this._updateFloorHandler}
@@ -240,9 +176,19 @@ let MapViewWithModal = class extends i {
240
176
  <div style="position: absolute; ${this.getFloorSelectorPositionStyles()} z-index: 1000;">
241
177
  <compact-floor-selector
242
178
  @floorChange=${this._updateFloorHandler}
243
- border-color=${this.floorSelectorBorderColor}
244
- border-width=${this.floorSelectorBorderWidth}
245
179
  ?disabled=${this.floorSelectorDisabled}
180
+ style="
181
+ /* Forward theme to floor selector */
182
+ --floor-selector-surface: var(--mvx-surface-color);
183
+ --floor-selector-color: var(--mvx-on-surface-color);
184
+ --floor-selector-border-color: var(--mvx-border-color);
185
+ --floor-selector-border-width: var(--mvx-border-width);
186
+ --floor-selector-radius: var(--mvx-radius);
187
+ --floor-selector-shadow: var(--mvx-shadow);
188
+ --floor-selector-hover-accent: var(--mvx-primary-color);
189
+ --floor-selector-active-bg: #f3e7ff;
190
+ --floor-selector-font-family: var(--mvx-font-family);
191
+ "
246
192
  ></compact-floor-selector>
247
193
  </div>
248
194
  ` : ""}
@@ -258,11 +204,42 @@ _compactMode = /* @__PURE__ */ new WeakMap();
258
204
  _zoomButtonSize = /* @__PURE__ */ new WeakMap();
259
205
  _showFloorSelector = /* @__PURE__ */ new WeakMap();
260
206
  _floorSelectorPosition = /* @__PURE__ */ new WeakMap();
261
- _floorSelectorBorderColor = /* @__PURE__ */ new WeakMap();
262
- _floorSelectorBorderWidth = /* @__PURE__ */ new WeakMap();
263
207
  _floorSelectorDisabled = /* @__PURE__ */ new WeakMap();
264
- _zoomButtonBorderColor = /* @__PURE__ */ new WeakMap();
265
- _zoomButtonBorderWidth = /* @__PURE__ */ new WeakMap();
208
+ MapViewWithModal.styles = [
209
+ i`
210
+ :host {
211
+ display: block;
212
+ height: 100%;
213
+ width: 100%;
214
+
215
+ /* THEME: Base colors */
216
+ --mvx-primary-color: #251660;
217
+ --mvx-surface-color: #ffffff;
218
+ --mvx-on-surface-color: #251660;
219
+
220
+ /* THEME: Border and elevation */
221
+ --mvx-border-color: var(--mvx-primary-color);
222
+ --mvx-border-width: 1px;
223
+ --mvx-radius: 8px;
224
+ --mvx-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
225
+
226
+ /* THEME: Typography */
227
+ --mvx-font-family: Poppins, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
228
+ }
229
+ `,
230
+ i`
231
+ .map-container {
232
+ height: 100%;
233
+ width: 100%;
234
+ }
235
+ `,
236
+ i`
237
+ :host([compact-mode]) .map-container {
238
+ border-radius: 12px;
239
+ overflow: hidden;
240
+ }
241
+ `
242
+ ];
266
243
  __decorateClass([
267
244
  n({ type: String })
268
245
  ], MapViewWithModal.prototype, "apiKey", 1);
@@ -276,10 +253,10 @@ __decorateClass([
276
253
  n({ type: String })
277
254
  ], MapViewWithModal.prototype, "placeId", 1);
278
255
  __decorateClass([
279
- n({ type: Boolean })
256
+ n({ type: Boolean, attribute: "compact-mode", reflect: true })
280
257
  ], MapViewWithModal.prototype, "compactMode", 1);
281
258
  __decorateClass([
282
- n({ type: String })
259
+ n({ type: String, attribute: "zoom-size", reflect: true })
283
260
  ], MapViewWithModal.prototype, "zoomButtonSize", 1);
284
261
  __decorateClass([
285
262
  n({ type: Boolean })
@@ -287,24 +264,12 @@ __decorateClass([
287
264
  __decorateClass([
288
265
  n({ type: String })
289
266
  ], MapViewWithModal.prototype, "floorSelectorPosition", 1);
290
- __decorateClass([
291
- n({ type: String })
292
- ], MapViewWithModal.prototype, "floorSelectorBorderColor", 1);
293
- __decorateClass([
294
- n({ type: Number })
295
- ], MapViewWithModal.prototype, "floorSelectorBorderWidth", 1);
296
267
  __decorateClass([
297
268
  n({ type: Boolean })
298
269
  ], MapViewWithModal.prototype, "floorSelectorDisabled", 1);
299
- __decorateClass([
300
- n({ type: String })
301
- ], MapViewWithModal.prototype, "zoomButtonBorderColor", 1);
302
- __decorateClass([
303
- n({ type: Number })
304
- ], MapViewWithModal.prototype, "zoomButtonBorderWidth", 1);
305
270
  MapViewWithModal = __decorateClass([
306
271
  t("map-view-with-modal")
307
272
  ], MapViewWithModal);
308
273
 
309
274
  export { MapViewWithModal as M };
310
- //# sourceMappingURL=map-view-with-modal-C-vcHaJc.js.map
275
+ //# sourceMappingURL=map-view-with-modal-DRCi4MZE.js.map
@@ -1,4 +1,4 @@
1
- import { S as SDKController } from './utils-HInBaX5h.js';
1
+ import { S as SDKController } from './utils-D3oP0BX3.js';
2
2
 
3
3
  /**
4
4
  * @license
@@ -184,11 +184,11 @@ class AnalyticsController {
184
184
  }
185
185
  }
186
186
 
187
- const loadCustomMap = () => import('./components-C542vOSv.js').then(n => n.c);
188
- const loadFloorSelector = () => import('./components-C542vOSv.js').then(n => n.f);
189
- const loadCompactFloorSelector = () => import('./compact-floor-selector-BLLR7mXQ.js');
190
- const loadQrModal = () => import('./components-C542vOSv.js').then(n => n.q);
191
- const loadRouteOptions = () => import('./components-C542vOSv.js').then(n => n.r);
187
+ const loadCustomMap = () => import('./components-Cg181WRf.js').then(n => n.c);
188
+ const loadFloorSelector = () => import('./components-Cg181WRf.js').then(n => n.f);
189
+ const loadCompactFloorSelector = () => import('./compact-floor-selector-BS3kmZbM.js');
190
+ const loadQrModal = () => import('./components-Cg181WRf.js').then(n => n.q);
191
+ const loadRouteOptions = () => import('./components-Cg181WRf.js').then(n => n.r);
192
192
 
193
193
  var __defProp = Object.defineProperty;
194
194
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -334,6 +334,11 @@ let RouteViewTotems = class extends i {
334
334
  @mapReady=${this._mapReadyHandler}
335
335
  @cameraInitialized=${this._cameraInitializedHandler}
336
336
  @floorChange=${this._updateFloorHandler}
337
+ style="
338
+ /* Forward theme to custom-map */
339
+ --zoom-border-color: #000;
340
+ --zoom-border-width: 3px;
341
+ "
337
342
  ></custom-map>
338
343
  <floor-selector @floorChange=${this._updateFloorHandler}></floor-selector>
339
344
  <route-options></route-options>
@@ -412,5 +417,5 @@ RouteViewTotems = __decorateClass([
412
417
  t("route-view-totems")
413
418
  ], RouteViewTotems);
414
419
 
415
- export { AnalyticsController as A, RollbarController as R, T, i$3 as a, loadCompactFloorSelector as b, RouteViewTotems as c, i, loadCustomMap as l, n, r$3 as r, t, x };
416
- //# sourceMappingURL=route-view-totems-z3hCCsGS.js.map
420
+ export { AnalyticsController as A, RollbarController as R, T, i as a, loadCompactFloorSelector as b, RouteViewTotems as c, i$3 as i, loadCustomMap as l, n, r$3 as r, t, x };
421
+ //# sourceMappingURL=route-view-totems-Bpxdz9bU.js.map
@@ -1,5 +1,5 @@
1
- import { i, s as sdkContext } from './components-C542vOSv.js';
2
- import { R as RollbarController } from './route-view-totems-z3hCCsGS.js';
1
+ import { i, s as sdkContext } from './components-Cg181WRf.js';
2
+ import { R as RollbarController } from './route-view-totems-Bpxdz9bU.js';
3
3
 
4
4
  var dist = {exports: {}};
5
5
 
@@ -12950,4 +12950,4 @@ class RouteAnimationController {
12950
12950
  }
12951
12951
 
12952
12952
  export { MarkerController as M, RouteAnimationController as R, SDKController as S };
12953
- //# sourceMappingURL=utils-HInBaX5h.js.map
12953
+ //# sourceMappingURL=utils-D3oP0BX3.js.map
package/dist/es/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export { c as RouteViewTotems } from './assets/route-view-totems-z3hCCsGS.js';
2
- export { M as MapViewWithModal } from './assets/map-view-with-modal-C-vcHaJc.js';
1
+ export { c as RouteViewTotems } from './assets/route-view-totems-Bpxdz9bU.js';
2
+ export { M as MapViewWithModal } from './assets/map-view-with-modal-DRCi4MZE.js';
3
3
  //# sourceMappingURL=index.js.map