@liquidcars/atlas 0.1.46 → 0.1.48

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.
package/demo/index.html CHANGED
@@ -1,5 +1,5 @@
1
1
  <!doctype html>
2
- <html lang="es">
2
+ <html lang="en">
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1">
@@ -19,7 +19,7 @@
19
19
  <body>
20
20
  <header>
21
21
  <h1>LiquidCars Atlas</h1>
22
- <p>Prueba de distribución del componente <code>&lt;liquidcars-atlas&gt;</code> · v0.1.28</p>
22
+ <p>Distribution test for the <code>&lt;liquidcars-atlas&gt;</code> component · v0.1.28</p>
23
23
  </header>
24
24
  <main>
25
25
  <liquidcars-atlas id="atlas" height="720" relation-mode="selected" shell-labels="on"></liquidcars-atlas>
@@ -27,7 +27,7 @@
27
27
  <script type="module">
28
28
  const atlas = document.querySelector('#atlas');
29
29
  const model = await fetch(new URL('./model.json', import.meta.url)).then((response) => {
30
- if (!response.ok) throw new Error(`No se pudo cargar el modelo (${response.status})`);
30
+ if (!response.ok) throw new Error(`Could not load the model (${response.status})`);
31
31
  return response.json();
32
32
  });
33
33
  atlas.model = model;
package/demo/model.json CHANGED
@@ -16,7 +16,7 @@
16
16
  {
17
17
  "id": "offers",
18
18
  "name": "OFFERS",
19
- "sub": "Stock y servicios",
19
+ "sub": "Inventory and services",
20
20
  "p": [
21
21
  0,
22
22
  -3,
@@ -29,12 +29,12 @@
29
29
  ],
30
30
  "c": "offers",
31
31
  "type": "container",
32
- "text": "La base del modelo contiene inventarios, ofertas y servicios. El dealer aporta la Base Offer, que referencia el vehículo físico; el proveedor aporta el servicio asociado."
32
+ "text": "The model base contains inventories, offers and services. The dealer provides the Base Offer, which references the physical vehicle; the provider supplies the associated service."
33
33
  },
34
34
  {
35
35
  "id": "ole",
36
36
  "name": "OLE",
37
- "sub": "Cálculo de la oferta de canal",
37
+ "sub": "Channel offer calculation",
38
38
  "p": [
39
39
  -2.75,
40
40
  0.4,
@@ -47,12 +47,12 @@
47
47
  ],
48
48
  "c": "ole",
49
49
  "type": "container",
50
- "text": "El Offer Listing Engine aplica revenue management, etiquetas y condiciones de distribución para calcular la oferta que observa cada canal."
50
+ "text": "The Offer Listing Engine applies revenue management, tags and distribution conditions to calculate the offer shown by each channel."
51
51
  },
52
52
  {
53
53
  "id": "agreements",
54
54
  "name": "AGREEMENTS",
55
- "sub": "Reglas y operaciones",
55
+ "sub": "Rules and operations",
56
56
  "p": [
57
57
  2.75,
58
58
  0.4,
@@ -65,12 +65,12 @@
65
65
  ],
66
66
  "c": "agreements",
67
67
  "type": "container",
68
- "text": "Agrupa el acuerdo de distribución y sus ámbitos funcionales: atribución, reservas y pedidos. El acuerdo vincula las ofertas y servicios con su distribución autorizada."
68
+ "text": "Groups the distribution agreement and its functional areas: attribution, bookings and orders. The agreement links offers and services to their authorised distribution."
69
69
  },
70
70
  {
71
71
  "id": "channels",
72
72
  "name": "CHANNELS",
73
- "sub": "Presentación y acceso",
73
+ "sub": "Presentation and access",
74
74
  "p": [
75
75
  0,
76
76
  3.2,
@@ -83,13 +83,13 @@
83
83
  ],
84
84
  "c": "channels",
85
85
  "type": "container",
86
- "text": "Agrupa los canales de distribución. Cada CHANNEL está contenido en CHANNELS y contiene la oferta de canal que presenta al comprador."
86
+ "text": "Groups the distribution channels. Each CHANNEL is contained in CHANNELS and contains the channel offer presented to the buyer."
87
87
  },
88
88
  {
89
89
  "id": "physical",
90
90
  "parent": "offers",
91
91
  "name": "Physical Inventory",
92
- "sub": "Fuente directa",
92
+ "sub": "Direct source",
93
93
  "p": [
94
94
  -2.5,
95
95
  -0.8500000000000001,
@@ -102,13 +102,13 @@
102
102
  ],
103
103
  "c": "offers",
104
104
  "type": "container",
105
- "text": "Colección de ofertas alimentada directamente por el dealer o su sistema de stock. Contiene la Base Offer y propaga sus actualizaciones."
105
+ "text": "A collection of offers supplied directly by the dealer or its inventory system. It contains the Base Offer and propagates its updates."
106
106
  },
107
107
  {
108
108
  "id": "baseoffer",
109
109
  "parent": "physical",
110
110
  "name": "Base Offer",
111
- "sub": "Oferta de origen",
111
+ "sub": "Source offer",
112
112
  "p": [
113
113
  0.95,
114
114
  0,
@@ -120,7 +120,7 @@
120
120
  2.5
121
121
  ],
122
122
  "c": "dealer",
123
- "text": "La oferta de origen referencia el vehículo físico y aporta las condiciones de base a las vistas posteriores. La representación separa el activo de su oferta comercial.",
123
+ "text": "The source offer references the physical vehicle and provides the base conditions for subsequent views. The representation separates the asset from its commercial offer.",
124
124
  "geometry": "cylinder",
125
125
  "radius": 0.08
126
126
  },
@@ -128,7 +128,7 @@
128
128
  "id": "vehicle",
129
129
  "parent": "physical",
130
130
  "name": "Vehicle",
131
- "sub": "Activo físico único",
131
+ "sub": "Unique physical asset",
132
132
  "p": [
133
133
  -0.95,
134
134
  0,
@@ -140,7 +140,7 @@
140
140
  2.5
141
141
  ],
142
142
  "c": "dealer",
143
- "text": "Activo físico único al que referencia la Base Offer. Su disponibilidad debe ser coherente en todas las ofertas y canales donde se distribuye.",
143
+ "text": "The unique physical asset referenced by the Base Offer. Its availability must remain consistent across every offer and channel through which it is distributed.",
144
144
  "geometry": "cylinder",
145
145
  "radius": 0.08
146
146
  },
@@ -148,7 +148,7 @@
148
148
  "id": "virtual",
149
149
  "parent": "offers",
150
150
  "name": "Virtual Inventory",
151
- "sub": "Vista derivada",
151
+ "sub": "Derived view",
152
152
  "p": [
153
153
  -2.5,
154
154
  0.73,
@@ -161,13 +161,13 @@
161
161
  ],
162
162
  "c": "offers",
163
163
  "type": "container",
164
- "text": "Vista calculada de un inventario mediante filtros y reglas. Está apoyada sobre el inventario físico para expresar su dependencia; no duplica el vehículo."
164
+ "text": "A calculated view of an inventory produced through filters and rules. It rests on the physical inventory to express that dependency; it does not duplicate the vehicle."
165
165
  },
166
166
  {
167
167
  "id": "virtualoffer",
168
168
  "parent": "virtual",
169
169
  "name": "Virtual Offer",
170
- "sub": "Oferta en una vista",
170
+ "sub": "Offer in a view",
171
171
  "p": [
172
172
  0,
173
173
  0,
@@ -179,7 +179,7 @@
179
179
  2.5
180
180
  ],
181
181
  "c": "dealer",
182
- "text": "Representa la oferta observada en el contexto de un inventario virtual. Conserva la referencia a la oferta de origen; las reglas de la vista determinan su inclusión y condiciones.",
182
+ "text": "Represents the offer observed in the context of a virtual inventory. It retains the reference to the source offer; the view rules determine its inclusion and conditions.",
183
183
  "geometry": "cylinder",
184
184
  "radius": 0.08
185
185
  },
@@ -187,7 +187,7 @@
187
187
  "id": "service",
188
188
  "parent": "offers",
189
189
  "name": "Service",
190
- "sub": "Servicio asociado",
190
+ "sub": "Associated service",
191
191
  "p": [
192
192
  2.7,
193
193
  0,
@@ -199,7 +199,7 @@
199
199
  3
200
200
  ],
201
201
  "c": "serviceProvider",
202
- "text": "Servicio que puede acompañar a la oferta o a la operación, como garantía o transporte. El proveedor externo lo aporta y el acuerdo gobierna su incorporación.",
202
+ "text": "A service that may accompany the offer or transaction, such as a warranty or transport. The external provider supplies it and the agreement governs its inclusion.",
203
203
  "geometry": "pyramid-square",
204
204
  "radius": 0.08,
205
205
  "segments": 12
@@ -208,7 +208,7 @@
208
208
  "id": "tags",
209
209
  "parent": "ole",
210
210
  "name": "RevMan Tag System",
211
- "sub": "Condiciones y etiquetas",
211
+ "sub": "Conditions and tags",
212
212
  "p": [
213
213
  0,
214
214
  -1.05,
@@ -221,7 +221,7 @@
221
221
  ],
222
222
  "c": "ole",
223
223
  "type": "container",
224
- "text": "Etiquetas estáticas o dinámicas, activas o inactivas, que alimentan las reglas de selección, precio y disponibilidad. Su efecto procede de las fórmulas donde se utilizan."
224
+ "text": "Static or dynamic, active or inactive tags that feed selection, pricing and availability rules. Their effect comes from the formulas in which they are used."
225
225
  },
226
226
  {
227
227
  "id": "tagA",
@@ -239,7 +239,7 @@
239
239
  0.5
240
240
  ],
241
241
  "c": "ole",
242
- "text": "Etiqueta de revenue management que marca elmententos para condicionar el cálculo de precio y disponibilidad.",
242
+ "text": "A revenue management tag that marks items to influence price and availability calculations.",
243
243
  "geometry": "box",
244
244
  "radius": 0.08,
245
245
  "segments": 12
@@ -260,7 +260,7 @@
260
260
  0.5
261
261
  ],
262
262
  "c": "ole",
263
- "text": "Etiqueta de revenue management que marca elmententos para condicionar el cálculo de precio y disponibilidad.",
263
+ "text": "A revenue management tag that marks items to influence price and availability calculations.",
264
264
  "geometry": "box",
265
265
  "radius": 0.08,
266
266
  "segments": 12
@@ -281,7 +281,7 @@
281
281
  0.5
282
282
  ],
283
283
  "c": "ole",
284
- "text": "Etiqueta de revenue management que marca elmententos para condicionar el cálculo de precio y disponibilidad.",
284
+ "text": "A revenue management tag that marks items to influence price and availability calculations.",
285
285
  "geometry": "box",
286
286
  "radius": 0.08,
287
287
  "segments": 12
@@ -302,7 +302,7 @@
302
302
  0.5
303
303
  ],
304
304
  "c": "ole",
305
- "text": "Etiqueta de revenue management que marca elmententos para condicionar el cálculo de precio y disponibilidad.",
305
+ "text": "A revenue management tag that marks items to influence price and availability calculations.",
306
306
  "geometry": "box",
307
307
  "radius": 0.08,
308
308
  "segments": 12
@@ -323,7 +323,7 @@
323
323
  0.5
324
324
  ],
325
325
  "c": "ole",
326
- "text": "Etiqueta de revenue management que marca elmententos para condicionar el cálculo de precio y disponibilidad.",
326
+ "text": "A revenue management tag that marks items to influence price and availability calculations.",
327
327
  "geometry": "box",
328
328
  "radius": 0.08,
329
329
  "segments": 12
@@ -344,7 +344,7 @@
344
344
  0.5
345
345
  ],
346
346
  "c": "ole",
347
- "text": "Etiqueta de revenue management que marca elmententos para condicionar el cálculo de precio y disponibilidad.",
347
+ "text": "A revenue management tag that marks items to influence price and availability calculations.",
348
348
  "geometry": "box",
349
349
  "radius": 0.08,
350
350
  "segments": 12
@@ -353,7 +353,7 @@
353
353
  "id": "rm",
354
354
  "parent": "ole",
355
355
  "name": "Revenue Management",
356
- "sub": "Aplicación de reglas",
356
+ "sub": "Rule application",
357
357
  "p": [
358
358
  0,
359
359
  0.5499999999999999,
@@ -366,13 +366,13 @@
366
366
  ],
367
367
  "c": "ole",
368
368
  "type": "container",
369
- "text": "Aplica las reglas comerciales autorizadas al contexto de distribución. Contiene la Channel Offer calculada; el sistema ejecuta las decisiones de las partes."
369
+ "text": "Applies authorised commercial rules to the distribution context. It contains the calculated Channel Offer; the system executes the parties' decisions."
370
370
  },
371
371
  {
372
372
  "id": "revmanoffer",
373
373
  "parent": "rm",
374
374
  "name": "RevMan Offer",
375
- "sub": "Resultado contextual",
375
+ "sub": "Contextual result",
376
376
  "p": [
377
377
  0,
378
378
  0,
@@ -384,7 +384,7 @@
384
384
  2.5
385
385
  ],
386
386
  "c": "channelOffer",
387
- "text": "Oferta calculada para un canal a partir de los inventarios, el acuerdo y las reglas de revenue management. Es el resultado que la capa CHANNELS presenta.",
387
+ "text": "An offer calculated for a channel from the inventories, agreement and revenue management rules. It is the result presented by the CHANNELS layer.",
388
388
  "geometry": "cylinder",
389
389
  "radius": 0.08
390
390
  },
@@ -392,7 +392,7 @@
392
392
  "id": "da",
393
393
  "parent": "agreements",
394
394
  "name": "Distribution Agreement",
395
- "sub": "Acuerdo aceptado",
395
+ "sub": "Accepted agreement",
396
396
  "p": [
397
397
  -1.25,
398
398
  0,
@@ -404,7 +404,7 @@
404
404
  2.35
405
405
  ],
406
406
  "c": "agreements",
407
- "text": "Establece el stock y servicios incluidos, así como las condiciones comerciales y operativas aceptadas por las partes. Su versión vigente da contexto a cada operación.",
407
+ "text": "Defines the included inventory and services, together with the commercial and operational conditions accepted by the parties. Its current version provides context for each transaction.",
408
408
  "geometry": "icosahedron",
409
409
  "radius": 0.08
410
410
  },
@@ -412,7 +412,7 @@
412
412
  "id": "attribution",
413
413
  "parent": "agreements",
414
414
  "name": "Attribution",
415
- "sub": "Contribución de canales",
415
+ "sub": "Channel contribution",
416
416
  "p": [
417
417
  1.5,
418
418
  1,
@@ -424,7 +424,7 @@
424
424
  2.5
425
425
  ],
426
426
  "c": "agreements",
427
- "text": "Valora eventos y contribuciones conforme a pesos acordados. El enfoque actual no resuelve identidad del comprador entre canales y distingue reportante, canal contribuyente y sujeto.",
427
+ "text": "Values events and contributions according to agreed weights. The current approach does not resolve buyer identity across channels and distinguishes the reporter, contributing channel and subject.",
428
428
  "geometry": "box",
429
429
  "radius": 0.08,
430
430
  "segments": 12
@@ -433,7 +433,7 @@
433
433
  "id": "bookings",
434
434
  "parent": "agreements",
435
435
  "name": "Bookings",
436
- "sub": "Derecho exclusivo",
436
+ "sub": "Exclusive right",
437
437
  "p": [
438
438
  1.5,
439
439
  0,
@@ -445,7 +445,7 @@
445
445
  2.5
446
446
  ],
447
447
  "c": "agreements",
448
- "text": "La reserva concede un derecho exclusivo de compra por un plazo bajo las reglas pactadas, manteniendo la coherencia de la disponibilidad del vehículo entre canales.",
448
+ "text": "A booking grants an exclusive right to purchase for a period under the agreed rules, while keeping vehicle availability consistent across channels.",
449
449
  "geometry": "box",
450
450
  "radius": 0.08,
451
451
  "segments": 12
@@ -454,7 +454,7 @@
454
454
  "id": "orders",
455
455
  "parent": "agreements",
456
456
  "name": "Orders",
457
- "sub": "Avance de la operación",
457
+ "sub": "Transaction progress",
458
458
  "p": [
459
459
  1.5,
460
460
  -1,
@@ -466,7 +466,7 @@
466
466
  2.5
467
467
  ],
468
468
  "c": "agreements",
469
- "text": "El pedido articula el avance de la operación comercial bajo el acuerdo aplicable y conserva la trazabilidad de sus condiciones y estados.",
469
+ "text": "The order structures the progress of the commercial transaction under the applicable agreement and preserves the traceability of its conditions and states.",
470
470
  "geometry": "box",
471
471
  "radius": 0.08,
472
472
  "segments": 12
@@ -475,7 +475,7 @@
475
475
  "id": "buyeroffer",
476
476
  "parent": "channel",
477
477
  "name": "Buyer Offer",
478
- "sub": "Vista para el comprador",
478
+ "sub": "Buyer view",
479
479
  "p": [
480
480
  -2,
481
481
  0,
@@ -487,7 +487,7 @@
487
487
  2.5
488
488
  ],
489
489
  "c": "channels",
490
- "text": "Representa la presentación de la Channel Offer por el canal. Esta pieza de lectura conecta el resultado de OLE con el punto de acceso del comprador; no añade una nueva oferta de origen.",
490
+ "text": "Represents the channel's presentation of the Channel Offer. This read model connects the OLE result to the buyer's access point; it does not add a new source offer.",
491
491
  "geometry": "cylinder",
492
492
  "radius": 0.08
493
493
  },
@@ -495,7 +495,7 @@
495
495
  "id": "engagement",
496
496
  "parent": "channel",
497
497
  "name": "Engagement",
498
- "sub": "Gestión de la interacción",
498
+ "sub": "Interaction management",
499
499
  "p": [
500
500
  2,
501
501
  0,
@@ -507,14 +507,14 @@
507
507
  2.5
508
508
  ],
509
509
  "c": "channels",
510
- "text": "Toda la lógica de interacción con el comprador se gestiona en la pieza Engagement. Contiene la información de contacto, el estado de la interacción y los eventos que alimentan la atribución.",
510
+ "text": "All buyer interaction logic is managed by Engagement. It contains contact information, interaction state and the events that feed attribution.",
511
511
  "geometry": "box",
512
512
  "radius": 0.08
513
513
  },
514
514
  {
515
515
  "id": "buyer",
516
516
  "name": "BUYER",
517
- "sub": "Comprador",
517
+ "sub": "Buyer",
518
518
  "p": [
519
519
  0,
520
520
  5.6,
@@ -527,14 +527,14 @@
527
527
  ],
528
528
  "c": "buyer",
529
529
  "type": "actor",
530
- "text": "Accede a la propuesta comercial a través del canal y puede iniciar las acciones de compra bajo las condiciones mostradas.",
530
+ "text": "Accesses the commercial proposition through the channel and can initiate purchase actions under the displayed conditions.",
531
531
  "geometry": "sphere"
532
532
  },
533
533
  {
534
534
  "id": "channel",
535
535
  "parent": "channels",
536
536
  "name": "CHANNEL",
537
- "sub": "Canal de distribución",
537
+ "sub": "Distribution channel",
538
538
  "p": [
539
539
  0,
540
540
  0,
@@ -547,12 +547,12 @@
547
547
  ],
548
548
  "c": "channels",
549
549
  "type": "container",
550
- "text": "Representa un canal de distribución dentro de CHANNELS: un marketplace, la web del dealer u otro canal autorizado. Contiene la oferta de canal presentada al comprador."
550
+ "text": "Represents a distribution channel within CHANNELS: a marketplace, the dealer's website or another authorised channel. It contains the channel offer presented to the buyer."
551
551
  },
552
552
  {
553
553
  "id": "dealer",
554
554
  "name": "DEALER",
555
- "sub": "Titular y control comercial",
555
+ "sub": "Ownership and commercial control",
556
556
  "p": [
557
557
  -8,
558
558
  -3,
@@ -565,13 +565,13 @@
565
565
  ],
566
566
  "c": "dealer",
567
567
  "type": "actor",
568
- "text": "Aporta y mantiene el stock. Conserva la titularidad del vehículo y el control de sus decisiones comerciales, y acepta las condiciones de distribución.",
568
+ "text": "Provides and maintains the inventory. It retains ownership of the vehicle and control over its commercial decisions, and accepts the distribution conditions.",
569
569
  "geometry": "dodecahedron"
570
570
  },
571
571
  {
572
572
  "id": "provider",
573
573
  "name": "SERVICE PROVIDER",
574
- "sub": "Proveedor externo",
574
+ "sub": "External provider",
575
575
  "p": [
576
576
  8,
577
577
  -3,
@@ -584,7 +584,7 @@
584
584
  ],
585
585
  "c": "serviceProvider",
586
586
  "type": "actor",
587
- "text": "Aporta los servicios asociados a la oferta o a la operación. Su posición externa distingue al proveedor de la pieza Service contenida en OFFERS.",
587
+ "text": "Provides the services associated with the offer or transaction. Its external position distinguishes the provider from the Service item contained in OFFERS.",
588
588
  "geometry": "dodecahedron"
589
589
  }
590
590
  ],
@@ -592,87 +592,87 @@
592
592
  [
593
593
  "dealer",
594
594
  "vehicle",
595
- "alimenta"
595
+ "supplies"
596
596
  ],
597
597
  [
598
598
  "baseoffer",
599
599
  "vehicle",
600
- "referencia"
600
+ "references"
601
601
  ],
602
602
  [
603
603
  "baseoffer",
604
604
  "virtualoffer",
605
- "da origen a"
605
+ "originates"
606
606
  ],
607
607
  [
608
608
  "virtualoffer",
609
609
  "da",
610
- "se distribuye bajo"
610
+ "is distributed under"
611
611
  ],
612
612
  [
613
613
  "baseoffer",
614
614
  "da",
615
- "se distribuye bajo"
615
+ "is distributed under"
616
616
  ],
617
617
  [
618
618
  "provider",
619
619
  "service",
620
- "aporta"
620
+ "provides"
621
621
  ],
622
622
  [
623
623
  "service",
624
624
  "da",
625
- "se incorpora bajo"
625
+ "is included under"
626
626
  ],
627
627
  [
628
628
  "tagA",
629
629
  "revmanoffer",
630
- "alimenta reglas"
630
+ "feeds rules"
631
631
  ],
632
632
  [
633
633
  "tagB",
634
634
  "revmanoffer",
635
- "alimenta reglas"
635
+ "feeds rules"
636
636
  ],
637
637
  [
638
638
  "tagC",
639
639
  "revmanoffer",
640
- "alimenta reglas"
640
+ "feeds rules"
641
641
  ],
642
642
  [
643
643
  "tagD",
644
644
  "revmanoffer",
645
- "alimenta reglas"
645
+ "feeds rules"
646
646
  ],
647
647
  [
648
648
  "tagE",
649
649
  "revmanoffer",
650
- "alimenta reglas"
650
+ "feeds rules"
651
651
  ],
652
652
  [
653
653
  "tagF",
654
654
  "revmanoffer",
655
- "alimenta reglas"
655
+ "feeds rules"
656
656
  ],
657
657
  [
658
658
  "da",
659
659
  "revmanoffer",
660
- "calcula"
660
+ "calculates"
661
661
  ],
662
662
  [
663
663
  "revmanoffer",
664
664
  "buyeroffer",
665
- "se presenta como"
665
+ "is presented as"
666
666
  ],
667
667
  [
668
668
  "buyeroffer",
669
669
  "buyer",
670
- "accede a través de"
670
+ "accesses through"
671
671
  ],
672
672
  [
673
673
  "buyer",
674
674
  "engagement",
675
- "interactua con"
675
+ "interacts with"
676
676
  ],
677
677
  [
678
678
  "engagement",
@@ -682,19 +682,20 @@
682
682
  [
683
683
  "da",
684
684
  "attribution",
685
- "gobierna"
685
+ "governs"
686
686
  ],
687
687
  [
688
688
  "da",
689
689
  "bookings",
690
- "gobierna"
690
+ "governs"
691
691
  ],
692
692
  [
693
693
  "da",
694
694
  "orders",
695
- "gobierna"
695
+ "governs"
696
696
  ]
697
697
  ]
698
698
  }
699
699
 
700
700
 
701
+