@heycar/heycars-map 2.12.0-color6 → 2.13.0-relay1

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 (62) hide show
  1. package/README.md +9 -0
  2. package/dist/v2/Demo/DemoBusinessQuoting.d.ts +7 -1
  3. package/dist/v2/Demo/DemoBusinessQuoting.js +60 -30
  4. package/dist/v2/Demo/DemoBusinessTaxiService.d.ts +1 -0
  5. package/dist/v2/Demo/DemoBusinessTaxiService.js +45 -23
  6. package/dist/v2/api/cdn.d.ts +1 -0
  7. package/dist/v2/api/cdn.js +3 -1
  8. package/dist/v2/api/contants.d.ts +1 -1
  9. package/dist/v2/api/contants.js +1 -1
  10. package/dist/v2/business-components/AuxiliaryGraspRoad/AuxiliaryGraspRoad.d.ts +1 -0
  11. package/dist/v2/business-components/AuxiliaryGraspRoad/AuxiliaryGraspRoad.js +6 -3
  12. package/dist/v2/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceMap.d.ts +3 -0
  13. package/dist/v2/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceMap.js +27 -3
  14. package/dist/v2/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceSection.d.ts +6 -0
  15. package/dist/v2/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceSection.js +125 -1
  16. package/dist/v2/business-components/PlaceCircle/PlaceCircle.js +1 -1
  17. package/dist/v2/business-components/StartEndPoint/StartEndPoint.css.d.ts +5 -0
  18. package/dist/v2/business-components/StartEndPoint/StartEndPoint.d.ts +1 -1
  19. package/dist/v2/business-components/StartEndPoint/StartEndPoint.js +10 -8
  20. package/dist/v2/business-components/TaxiCar/TaxiCar.js +1 -1
  21. package/dist/v2/chunks/{StartEndPoint.css.ca6c9719.js → StartEndPoint.css.4d9c0791.js} +4 -4
  22. package/dist/{v3/css/PlaceCircle-00817652.css → v2/css/PlaceCircle-80eb763c.css} +1 -0
  23. package/dist/v2/css/{StartEndPoint-f6a6f7d3.css → StartEndPoint-d1c9154a.css} +7 -2
  24. package/dist/v2/hooks/useDeviationCorrectionDrivingRoute.d.ts +2 -1
  25. package/dist/v2/hooks/useDeviationCorrectionDrivingRoute.js +12 -5
  26. package/dist/v2/hooks/useDrivingRoute.d.ts +4 -3
  27. package/dist/v2/hooks/useDrivingRoute.js +12 -12
  28. package/dist/v2/types/interface.d.ts +1 -1
  29. package/dist/v2/utils/compatibleDrivingRoute.d.ts +5 -5
  30. package/dist/v2/utils/compatibleDrivingRoute.js +23 -11
  31. package/dist/v2/utils/log.js +1 -1
  32. package/dist/v3/Demo/DemoBusinessQuoting.d.ts +7 -3
  33. package/dist/v3/Demo/DemoBusinessQuoting.js +62 -32
  34. package/dist/v3/Demo/DemoBusinessTaxiService.d.ts +1 -0
  35. package/dist/v3/Demo/DemoBusinessTaxiService.js +45 -23
  36. package/dist/v3/api/cdn.d.ts +1 -0
  37. package/dist/v3/api/cdn.js +3 -1
  38. package/dist/v3/api/contants.d.ts +1 -1
  39. package/dist/v3/api/contants.js +1 -1
  40. package/dist/v3/business-components/AuxiliaryGraspRoad/AuxiliaryGraspRoad.d.ts +1 -0
  41. package/dist/v3/business-components/AuxiliaryGraspRoad/AuxiliaryGraspRoad.js +6 -3
  42. package/dist/v3/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceMap.d.ts +3 -0
  43. package/dist/v3/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceMap.js +23 -3
  44. package/dist/v3/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceSection.d.ts +10 -0
  45. package/dist/v3/business-components/BusinessTaxiServiceMap/BusinessTaxiServiceSection.js +101 -1
  46. package/dist/v3/business-components/PlaceCircle/PlaceCircle.js +1 -1
  47. package/dist/v3/business-components/StartEndPoint/StartEndPoint.css.d.ts +5 -0
  48. package/dist/v3/business-components/StartEndPoint/StartEndPoint.d.ts +1 -1
  49. package/dist/v3/business-components/StartEndPoint/StartEndPoint.js +10 -8
  50. package/dist/v3/business-components/TaxiCar/TaxiCar.js +1 -1
  51. package/dist/v3/chunks/{StartEndPoint.css.ca6c9719.js → StartEndPoint.css.4d9c0791.js} +4 -4
  52. package/dist/{v2/css/PlaceCircle-00817652.css → v3/css/PlaceCircle-80eb763c.css} +1 -0
  53. package/dist/v3/css/{StartEndPoint-f6a6f7d3.css → StartEndPoint-d1c9154a.css} +7 -2
  54. package/dist/v3/hooks/useDeviationCorrectionDrivingRoute.d.ts +2 -1
  55. package/dist/v3/hooks/useDeviationCorrectionDrivingRoute.js +12 -5
  56. package/dist/v3/hooks/useDrivingRoute.d.ts +4 -3
  57. package/dist/v3/hooks/useDrivingRoute.js +12 -12
  58. package/dist/v3/types/interface.d.ts +1 -1
  59. package/dist/v3/utils/compatibleDrivingRoute.d.ts +5 -5
  60. package/dist/v3/utils/compatibleDrivingRoute.js +23 -11
  61. package/dist/v3/utils/log.js +1 -1
  62. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import { h } from "vue";
2
2
  import { computed } from "vue-demi";
3
- import { ICON_START_POINT_EN_URL, ICON_END_POINT_ZH_TW_URL, ICON_END_POINT_EN_URL } from "../../api/cdn.js";
3
+ import { ICON_WAYPOINT_URL, ICON_START_POINT_EN_URL, ICON_END_POINT_ZH_TW_URL, ICON_END_POINT_EN_URL } from "../../api/cdn.js";
4
4
  import { ZINDEX_START_END_LOGO_LAYER } from "../../api/contants.js";
5
5
  import { i as imgArrowRight } from "../../chunks/arrow-right.2c34874e.js";
6
6
  import { AmapMarker } from "../../components/AmapMarker/AmapMarker.js";
@@ -11,7 +11,7 @@ import { useMapSupplier } from "../../hooks/useMapSupplier.js";
11
11
  import { defineSetup } from "../../types/helper.js";
12
12
  import { createDom } from "../../utils/dom.js";
13
13
  import { decodeAsterisk, vec2lnglat } from "../../utils/transform.js";
14
- import { p as pointInfoBoxEmphasize, a as pointIcon, b as pointLayout, c as pointSingleInfoBox, d as pointInfoBoxTitle, t as textLayout, e as arrowRight, f as pointInfoBox, g as pointInfoBoxDescription } from "../../chunks/StartEndPoint.css.ca6c9719.js";
14
+ import { p as pointInfoBoxEmphasize, a as pointIcon, b as pointLayout, c as pointSingleInfoBox, d as pointInfoBoxTitle, t as textLayout, e as arrowRight, f as pointInfoBox, g as pointInfoBoxDescription } from "../../chunks/StartEndPoint.css.4d9c0791.js";
15
15
  const imgEndPoint = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMzEiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiIHZpZXdCb3g9IjAgMCAyNCAzMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZGVmcz48bGluZWFyR3JhZGllbnQgeDE9IjcyLjMzOSUiIHkxPSI1MCUiIHgyPSIwJSIgeTI9IjUwJSIgaWQ9ImVuZC1wb2ludF9wcmVmaXhfX2EiPjxzdG9wIHN0b3AtY29sb3I9InZhcigtLUhFWUNBUl9NQVBfU1ZHX1ZBUl9lbmQtcG9pbnRfbGluZWFyR3JhZGllbnRfc3RvcF8xX2NvbG9yLCAjRkY4NDQ3KSIgb2Zmc2V0PSIwJSIvPjxzdG9wIHN0b3AtY29sb3I9InZhcigtLUhFWUNBUl9NQVBfU1ZHX1ZBUl9lbmQtcG9pbnRfbGluZWFyR3JhZGllbnRfc3RvcF8yX2NvbG9yLCAjRkY4QjRBKSIgb2Zmc2V0PSI1MC41OTYlIi8+PHN0b3Agc3RvcC1jb2xvcj0idmFyKC0tSEVZQ0FSX01BUF9TVkdfVkFSX2VuZC1wb2ludF9saW5lYXJHcmFkaWVudF9zdG9wXzNfY29sb3IsICNGRkE5NUEpIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0xMiAzMC4yMTVjMi4xMzQgMCAzLjg2My0uODkzIDMuODYzLTEuOTk1IDAtMS4xLTEuNzMtMS45OTQtMy44NjMtMS45OTQtMi4xMzQgMC0zLjg2My44OTMtMy44NjMgMS45OTQgMCAxLjEwMiAxLjczIDEuOTk1IDMuODYzIDEuOTk1eiIgZmlsbC1vcGFjaXR5PSIuNSIgZmlsbD0idmFyKC0tSEVZQ0FSX01BUF9TVkdfVkFSX2VuZC1wb2ludF9wYXRoX2ZpbGwsICM0MzQ4NUEpIi8+PHBhdGggZD0iTTExIDI3LjAwNmMyLjEyOCAwLS45LTMuNzQzIDUuNjIxLTYuNjQzQzE5Ljg0MiAxOC40NTMgMjIgMTQuOTUzIDIyIDEwLjk1IDIyIDQuOTAyIDE3LjA3NSAwIDExIDBTMCA0LjkwMiAwIDEwLjk1YzAgMy45MTggMi4wNjggNy4zNTYgNS4xNzcgOS4yOUMxMS43NSAyMy4yODQgOS4wNiAyNy4wMDcgMTEgMjcuMDA3eiIgc3Ryb2tlPSIjRkZGIiBmaWxsPSJ1cmwoI2VuZC1wb2ludF9wcmVmaXhfX2EpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxIDEuMjE1KSIvPjx0ZXh0IGZvbnQtZmFtaWx5PSJQaW5nRmFuZ1NDLVNlbWlib2xkLCBQaW5nRmFuZyBTQyIgZm9udC1zaXplPSIxMiIgZm9udC13ZWlnaHQ9IjUwMCIgZmlsbD0iI0ZGRiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxLjIxNSkiPjx0c3BhbiB4PSI1IiB5PSIxNS40NDkiPue7iDwvdHNwYW4+PC90ZXh0PjwvZz48L3N2Zz4=";
16
16
  const imgStartPoint = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMzEiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIG1lZXQiIHZpZXdCb3g9IjAgMCAyNCAzMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZGVmcz48bGluZWFyR3JhZGllbnQgeDE9IjAlIiB5MT0iNTAlIiB4Mj0iMTI5LjU5OSUiIHkyPSI1MCUiIGlkPSJzdGFydC1wb2ludF9wcmVmaXhfX2EiPjxzdG9wIHN0b3AtY29sb3I9InZhcigtLUhFWUNBUl9NQVBfU1ZHX1ZBUl9zdGFydC1wb2ludF9saW5lYXJHcmFkaWVudF9zdG9wXzFfY29sb3IsICMzNkE4RkYpIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0idmFyKC0tSEVZQ0FSX01BUF9TVkdfVkFSX3N0YXJ0LXBvaW50X2xpbmVhckdyYWRpZW50X3N0b3BfMl9jb2xvciwgIzQ4NzFGMSkiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZD0iTTEyIDMwLjIxNWMxLjk1IDAgMy41MzItLjgxNiAzLjUzMi0xLjgyMyAwLTEuMDA3LTEuNTgxLTEuODIzLTMuNTMyLTEuODIzLTEuOTUgMC0zLjUzMi44MTYtMy41MzIgMS44MjMgMCAxLjAwNyAxLjU4MSAxLjgyMyAzLjUzMiAxLjgyM3oiIGZpbGwtb3BhY2l0eT0iLjUiIGZpbGw9InZhcigtLUhFWUNBUl9NQVBfU1ZHX1ZBUl9zdGFydC1wb2ludF9wYXRoX2ZpbGwsICM0MzQ4NUEpIi8+PHBhdGggZD0iTTExIDI3YzIuMTI4IDAtLjktMy43NDIgNS42MjEtNi42NDEgMy4yMjEtMS45MSA1LjM3OS01LjQxIDUuMzc5LTkuNDEyQzIyIDQuOTAxIDE3LjA3NSAwIDExIDBTMCA0LjkwMSAwIDEwLjk0N2MwIDMuOTE4IDIuMDY4IDcuMzU1IDUuMTc3IDkuMjlDMTEuNzUgMjMuMjc3IDkuMDYgMjcgMTEgMjd6IiBzdHJva2U9IiNGRkYiIGZpbGw9InVybCgjc3RhcnQtcG9pbnRfcHJlZml4X19hKSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSAxLjIxNSkiLz48dGV4dCBmb250LWZhbWlseT0iUGluZ0ZhbmdTQy1TZW1pYm9sZCwgUGluZ0ZhbmcgU0MiIGZvbnQtc2l6ZT0iMTIiIGZvbnQtd2VpZ2h0PSI1MDAiIGZpbGw9IiNGRkYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEgMS4yMTUpIj48dHNwYW4geD0iNSIgeT0iMTUuNjI0Ij7otbc8L3RzcGFuPjwvdGV4dD48L2c+PC9zdmc+";
17
17
  const AStartEndPoint = defineSetup("AStartEndPoint", function(props, {
@@ -25,7 +25,8 @@ const AStartEndPoint = defineSetup("AStartEndPoint", function(props, {
25
25
  type,
26
26
  language
27
27
  } = props;
28
- const icon = type === "start" ? language === "zh" || language === "zh-TW" ? imgStartPoint : ICON_START_POINT_EN_URL : language === "zh" ? imgEndPoint : language === "zh-TW" ? ICON_END_POINT_ZH_TW_URL : ICON_END_POINT_EN_URL;
28
+ const icon = type === "waypoint" ? ICON_WAYPOINT_URL : type === "start" ? language === "zh" || language === "zh-TW" ? imgStartPoint : ICON_START_POINT_EN_URL : language === "zh" ? imgEndPoint : language === "zh-TW" ? ICON_END_POINT_ZH_TW_URL : ICON_END_POINT_EN_URL;
29
+ const titleRow = !title ? "" : decodeAsterisk(title).map((item) => item.type === "normal" ? item.value : `<span class="${pointInfoBoxEmphasize}">${item.value}</span>`).join("");
29
30
  const descriptionRow = !description ? "" : decodeAsterisk(description).map((item) => item.type === "normal" ? item.value : `<span class="${pointInfoBoxEmphasize}">${item.value}</span>`).join("");
30
31
  if (!description && !title)
31
32
  return `<${SvgInlineWebComponentTag} class="AStartEndPoint ${pointIcon({
@@ -37,7 +38,7 @@ const AStartEndPoint = defineSetup("AStartEndPoint", function(props, {
37
38
  <div class="${pointSingleInfoBox}">
38
39
  <div class="${pointInfoBoxTitle} ${textLayout({
39
40
  withArrow
40
- })}">${title}</div>
41
+ })}">${titleRow}</div>
41
42
  <${SvgInlineWebComponentTag} class="${arrowRight({
42
43
  withArrow
43
44
  })}" src="${imgArrowRight}" ></${SvgInlineWebComponentTag}>
@@ -53,7 +54,7 @@ const AStartEndPoint = defineSetup("AStartEndPoint", function(props, {
53
54
  <div class="${textLayout({
54
55
  withArrow
55
56
  })}">
56
- <div class="${pointInfoBoxTitle}">${title != null ? title : ""}</div>
57
+ <div class="${pointInfoBoxTitle}">${titleRow}</div>
57
58
  <div class="${pointInfoBoxDescription}">${descriptionRow}</div>
58
59
  </div>
59
60
  <${SvgInlineWebComponentTag} class="${arrowRight({
@@ -93,7 +94,8 @@ const GStartEndPoint = defineSetup("GStartEndPoint", function(props, {
93
94
  type,
94
95
  language = "zh"
95
96
  } = props;
96
- const icon = type === "start" ? language === "zh" || language === "zh-TW" ? imgStartPoint : ICON_START_POINT_EN_URL : language === "zh" || language === "zh-TW" ? imgEndPoint : ICON_END_POINT_EN_URL;
97
+ const icon = type === "waypoint" ? ICON_WAYPOINT_URL : type === "start" ? language === "zh" || language === "zh-TW" ? imgStartPoint : ICON_START_POINT_EN_URL : language === "zh" || language === "zh-TW" ? imgEndPoint : ICON_END_POINT_EN_URL;
98
+ const titleRow = !title ? "" : decodeAsterisk(title).map((item) => item.type === "normal" ? item.value : `<span class="${pointInfoBoxEmphasize}">${item.value}</span>`).join("");
97
99
  const descriptionRow = !description ? "" : decodeAsterisk(description).map((item) => item.type === "normal" ? item.value : `<span class="${pointInfoBoxEmphasize}">${item.value}</span>`).join("");
98
100
  if (!description && !title)
99
101
  return createDom(SvgInlineWebComponentTag, {
@@ -109,7 +111,7 @@ const GStartEndPoint = defineSetup("GStartEndPoint", function(props, {
109
111
  <div class="${pointSingleInfoBox}">
110
112
  <div class="${pointInfoBoxTitle} ${textLayout({
111
113
  withArrow
112
- })}">${title}</div>
114
+ })}">${titleRow}</div>
113
115
  <${SvgInlineWebComponentTag} class="${arrowRight({
114
116
  withArrow
115
117
  })}" src="${imgArrowRight}" ></${SvgInlineWebComponentTag}>
@@ -125,7 +127,7 @@ const GStartEndPoint = defineSetup("GStartEndPoint", function(props, {
125
127
  <div class="${textLayout({
126
128
  withArrow
127
129
  })}">
128
- <div class="${pointInfoBoxTitle}">${title != null ? title : ""}</div>
130
+ <div class="${pointInfoBoxTitle}">${titleRow}</div>
129
131
  <div class="${pointInfoBoxDescription}">${descriptionRow}</div>
130
132
  </div>
131
133
  <${SvgInlineWebComponentTag} class="${arrowRight({
@@ -10,7 +10,7 @@ import { useMapSupplier } from "../../hooks/useMapSupplier.js";
10
10
  import { defineSetup } from "../../types/helper.js";
11
11
  import { createDom } from "../../utils/dom.js";
12
12
  import { decodeAsterisk, vec2lnglat } from "../../utils/transform.js";
13
- import { p as pointInfoBoxEmphasize, b as pointLayout, c as pointSingleInfoBox } from "../../chunks/StartEndPoint.css.ca6c9719.js";
13
+ import { p as pointInfoBoxEmphasize, b as pointLayout, c as pointSingleInfoBox } from "../../chunks/StartEndPoint.css.4d9c0791.js";
14
14
  import { c as createRuntimeFn } from "../../chunks/vanilla-extract-recipes-createRuntimeFn.esm.bd6fc290.js";
15
15
  const TaxiCar_css_ts_vanilla = "";
16
16
  var carIcon = "_65j3sr1";
@@ -1,15 +1,15 @@
1
- import "../css/StartEndPoint-f6a6f7d3.css";
1
+ import "../css/StartEndPoint-d1c9154a.css";
2
2
  import { c as createRuntimeFn } from "./vanilla-extract-recipes-createRuntimeFn.esm.bd6fc290.js";
3
3
  const StartEndPoint_css_ts_vanilla = "";
4
- var arrowRight = createRuntimeFn({ defaultClassName: "_4a4ovka", variantClassNames: { withArrow: { true: "_4a4ovkb", false: "_4a4ovkc" } }, defaultVariants: {}, compoundVariants: [] });
5
- var pointIcon = createRuntimeFn({ defaultClassName: "", variantClassNames: { type: { start: "_4a4ovk6", end: "_4a4ovk7" } }, defaultVariants: {}, compoundVariants: [] });
4
+ var arrowRight = createRuntimeFn({ defaultClassName: "_4a4ovkb", variantClassNames: { withArrow: { true: "_4a4ovkc", false: "_4a4ovkd" } }, defaultVariants: {}, compoundVariants: [] });
5
+ var pointIcon = createRuntimeFn({ defaultClassName: "", variantClassNames: { type: { start: "_4a4ovk6", end: "_4a4ovk7", waypoint: "_4a4ovk8" } }, defaultVariants: {}, compoundVariants: [] });
6
6
  var pointInfoBox = "_4a4ovk1";
7
7
  var pointInfoBoxDescription = "_4a4ovk4";
8
8
  var pointInfoBoxEmphasize = "_4a4ovk5";
9
9
  var pointInfoBoxTitle = "_4a4ovk3";
10
10
  var pointLayout = "_4a4ovk0";
11
11
  var pointSingleInfoBox = "_4a4ovk2";
12
- var textLayout = createRuntimeFn({ defaultClassName: "", variantClassNames: { withArrow: { true: "_4a4ovk8", false: "_4a4ovk9" } }, defaultVariants: {}, compoundVariants: [] });
12
+ var textLayout = createRuntimeFn({ defaultClassName: "", variantClassNames: { withArrow: { true: "_4a4ovk9", false: "_4a4ovka" } }, defaultVariants: {}, compoundVariants: [] });
13
13
  export {
14
14
  pointIcon as a,
15
15
  pointLayout as b,
@@ -43,6 +43,7 @@
43
43
  -webkit-line-clamp: 2;
44
44
  -webkit-box-orient: vertical;
45
45
  overflow: hidden;
46
+ white-space: pre-line;
46
47
  }
47
48
  .fhyw8d {
48
49
  position: absolute;
@@ -59,13 +59,18 @@
59
59
  height: 7.998vw;
60
60
  }
61
61
  ._4a4ovk8 {
62
+ margin-top: 1.33vw;
63
+ width: 6.192vw;
64
+ height: 7.998vw;
65
+ }
66
+ ._4a4ovk9 {
62
67
  padding-right: 2.67vw;
63
68
  }
64
- ._4a4ovka {
69
+ ._4a4ovkb {
65
70
  width: 1.758vw;
66
71
  height: 2.93vw;
67
72
  filter: invert(1);
68
73
  }
69
- ._4a4ovkc {
74
+ ._4a4ovkd {
70
75
  display: none;
71
76
  }
@@ -2,6 +2,7 @@ import type { Point, Route, TrackPoint } from "../types/interface";
2
2
  export interface UseDeviationCorrectionDrivingRouteProps {
3
3
  tracks: TrackPoint[];
4
4
  to: Point;
5
+ waypoints?: Point[];
5
6
  deviation: number;
6
7
  }
7
8
  interface SubRoute extends Route {
@@ -46,6 +47,6 @@ export declare const useDeviationCorrectionDrivingRoute: (props?: UseDeviationCo
46
47
  trackIntersectionPathRef: import("vue-demi").Ref<Point[] | undefined>;
47
48
  routeIntersectionPathRef: import("vue-demi").Ref<Point[] | undefined>;
48
49
  extendedIntersectionPointRef: import("vue-demi").Ref<Point | undefined>;
49
- apiMapDeviationCorrectionDrivingRoute: (tracks: TrackPoint[], to: Point, deviation: number, preRoute: SubRoute) => Promise<ApiMapDeviationCorrectionDrivingRouteOutput>;
50
+ apiMapDeviationCorrectionDrivingRoute: (tracks: TrackPoint[], to: Point, deviation: number, preRoute: SubRoute, waypoints?: Point[]) => Promise<ApiMapDeviationCorrectionDrivingRouteOutput>;
50
51
  };
51
52
  export {};
@@ -19,7 +19,7 @@ const useDeviationCorrectionDrivingRoute = (props) => {
19
19
  const { apiMapToGraspRoadPath } = useMapGraspRoad();
20
20
  const { apiMapDistance, apiMapDistanceOfLine } = useMapGeometry();
21
21
  const { apiMapComputeHeading } = useMapAngle();
22
- const apiMapDeviationCorrectionDrivingRoute = async (tracks, to, deviation, preRoute) => {
22
+ const apiMapDeviationCorrectionDrivingRoute = async (tracks, to, deviation, preRoute, waypoints = []) => {
23
23
  var _a, _b;
24
24
  if (tracks.length === 0) {
25
25
  return { ...createEmptySubRoute(), angle: 0 };
@@ -67,20 +67,21 @@ const useDeviationCorrectionDrivingRoute = (props) => {
67
67
  }
68
68
  const { path: graspRoadPath } = await apiMapToGraspRoadPath(tracks);
69
69
  const from = graspRoadPath[graspRoadPath.length - 1];
70
- const route = await apiMapDrivingRoute(from, to);
70
+ const route = await apiMapDrivingRoute(from, to, waypoints);
71
71
  const angle = (_b = apiMapComputeHeading(route.path[0], route.path[1])) != null ? _b : 0;
72
72
  return { ...route, angle, graspRoadPath, baseRoute: route, index: 0 };
73
73
  };
74
74
  watchEffectForDeepOption(
75
75
  () => {
76
- const { tracks, to, deviation = MAX_DEVIATION_DISTANCE } = props != null ? props : {};
76
+ const { tracks, to, waypoints = [], deviation = MAX_DEVIATION_DISTANCE } = props != null ? props : {};
77
77
  return {
78
78
  tracks: tracks ? [...tracks] : void 0,
79
79
  to: to ? [...to] : void 0,
80
+ waypoints,
80
81
  deviation
81
82
  };
82
83
  },
83
- async ({ tracks, to, deviation }) => {
84
+ async ({ tracks, to, waypoints, deviation }) => {
84
85
  if (!tracks || !to)
85
86
  return;
86
87
  const {
@@ -90,7 +91,13 @@ const useDeviationCorrectionDrivingRoute = (props) => {
90
91
  routeIntersectionPath,
91
92
  extendedIntersectionPoint,
92
93
  ...subRoute
93
- } = await apiMapDeviationCorrectionDrivingRoute(tracks, to, deviation, drivingRoute);
94
+ } = await apiMapDeviationCorrectionDrivingRoute(
95
+ tracks,
96
+ to,
97
+ deviation,
98
+ drivingRoute,
99
+ waypoints
100
+ );
94
101
  Object.assign(drivingRoute, subRoute);
95
102
  angleRef.value = angle;
96
103
  trackIntersectionPathRef.value = trackIntersectionPath;
@@ -2,6 +2,7 @@ import type { Point, Route } from "../types/interface";
2
2
  export interface UseDrivingRouteProps {
3
3
  from: Point;
4
4
  to: Point;
5
+ waypoints?: Point[];
5
6
  }
6
7
  export declare const useADrivingRoute: (props?: UseDrivingRouteProps) => {
7
8
  route: {
@@ -16,7 +17,7 @@ export declare const useADrivingRoute: (props?: UseDrivingRouteProps) => {
16
17
  }[];
17
18
  trafficJams?: import("../types/interface").TrafficJams | undefined;
18
19
  };
19
- apiMapDrivingRoute: (from: Point, to: Point) => Promise<Route>;
20
+ apiMapDrivingRoute: (from: Point, to: Point, waypoints?: Point[]) => Promise<Route>;
20
21
  };
21
22
  export declare const useGDrivingRoute: (props?: UseDrivingRouteProps) => {
22
23
  route: {
@@ -31,7 +32,7 @@ export declare const useGDrivingRoute: (props?: UseDrivingRouteProps) => {
31
32
  }[];
32
33
  trafficJams?: import("../types/interface").TrafficJams | undefined;
33
34
  };
34
- apiMapDrivingRoute: (from: Point, to: Point) => Promise<Route>;
35
+ apiMapDrivingRoute: (from: Point, to: Point, waypoints?: Point[]) => Promise<Route>;
35
36
  };
36
37
  export declare const useDrivingRoute: (props?: UseDrivingRouteProps) => {
37
38
  route: {
@@ -46,5 +47,5 @@ export declare const useDrivingRoute: (props?: UseDrivingRouteProps) => {
46
47
  }[];
47
48
  trafficJams?: import("../types/interface").TrafficJams | undefined;
48
49
  };
49
- apiMapDrivingRoute: (from: Point, to: Point) => Promise<Route>;
50
+ apiMapDrivingRoute: (from: Point, to: Point, waypoints?: Point[]) => Promise<Route>;
50
51
  };
@@ -14,18 +14,18 @@ const useADrivingRoute = (props) => {
14
14
  trafficJams: void 0
15
15
  });
16
16
  const amapDriving = new AMap.Driving({});
17
- const apiMapDrivingRoute = (from, to) => {
18
- return googleRoutesProxyUrl && inTaiwan(from) ? googleServiceApiDrivingRoute(from, to, googleRoutesProxyUrl) : amapJsApiDrivingRoute(from, to, amapDriving);
17
+ const apiMapDrivingRoute = (from, to, waypoints = []) => {
18
+ return googleRoutesProxyUrl && inTaiwan(from) ? googleServiceApiDrivingRoute(from, to, waypoints, googleRoutesProxyUrl) : amapJsApiDrivingRoute(from, to, waypoints, amapDriving);
19
19
  };
20
20
  watchPostEffectForDeepOption(
21
21
  () => {
22
- const { from, to } = props != null ? props : {};
23
- return { from, to };
22
+ const { from, to, waypoints } = props != null ? props : {};
23
+ return { from, to, waypoints };
24
24
  },
25
- async ({ from, to }) => {
25
+ async ({ from, to, waypoints }) => {
26
26
  if (!from || !to)
27
27
  return;
28
- Object.assign(outputRoute, await apiMapDrivingRoute(from, to));
28
+ Object.assign(outputRoute, await apiMapDrivingRoute(from, to, waypoints));
29
29
  }
30
30
  );
31
31
  return { route: outputRoute, apiMapDrivingRoute };
@@ -34,18 +34,18 @@ const useGDrivingRoute = (props) => {
34
34
  const { gaodeDirectionDrivingProxyUrl, googleRoutesProxyUrl } = useMapSupplier();
35
35
  const outputRoute = reactive({ path: [], distance: 0, duration: 0, steps: [] });
36
36
  const gmapDirectionsService = new google.maps.DirectionsService();
37
- const apiMapDrivingRoute = (from, to) => {
38
- return gaodeDirectionDrivingProxyUrl && inKorean(from) ? gaodeServiceApiDrivingRoute(from, to, gaodeDirectionDrivingProxyUrl) : googleRoutesProxyUrl ? googleServiceApiDrivingRoute(from, to, googleRoutesProxyUrl) : gmapJsApiDrivingRoute(from, to, gmapDirectionsService);
37
+ const apiMapDrivingRoute = (from, to, waypoints = []) => {
38
+ return gaodeDirectionDrivingProxyUrl && inKorean(from) ? gaodeServiceApiDrivingRoute(from, to, waypoints, gaodeDirectionDrivingProxyUrl) : googleRoutesProxyUrl ? googleServiceApiDrivingRoute(from, to, waypoints, googleRoutesProxyUrl) : gmapJsApiDrivingRoute(from, to, waypoints, gmapDirectionsService);
39
39
  };
40
40
  watchPostEffectForDeepOption(
41
41
  () => {
42
- const { from, to } = props != null ? props : {};
43
- return { from, to };
42
+ const { from, to, waypoints } = props != null ? props : {};
43
+ return { from, to, waypoints };
44
44
  },
45
- async ({ from, to }) => {
45
+ async ({ from, to, waypoints }) => {
46
46
  if (!from || !to)
47
47
  return;
48
- Object.assign(outputRoute, await apiMapDrivingRoute(from, to));
48
+ Object.assign(outputRoute, await apiMapDrivingRoute(from, to, waypoints));
49
49
  }
50
50
  );
51
51
  return { route: outputRoute, apiMapDrivingRoute };
@@ -91,7 +91,7 @@ export interface CoordinateTrackPoint extends TrackPoint {
91
91
  type: CoordinateType;
92
92
  }
93
93
  export type RecommendType = "Restricted" | "Forbidden" | "Recommend";
94
- export type DriverStatus = "dispatching" | "book-dispatching" | "dispatched" | "driverStartService" | "book-driverStartService" | "book-dispatched" | "driverArrived" | "inService" | "canceled" | "endService" | "completed" | "canceling" | "banlanceRefund" | "waitBanlanceRefund" | "rechargePayed" | "waitRechargePay" | "payed" | "waitpay" | "refund" | "confirmed" | "assign" | "orderReassigned";
94
+ export type DriverStatus = "dispatching" | "book-dispatching" | "dispatched" | "driverStartService" | "driverStartRelayService" | "book-driverStartService" | "book-dispatched" | "driverArrived" | "inService" | "canceled" | "endService" | "completed" | "canceling" | "banlanceRefund" | "waitBanlanceRefund" | "rechargePayed" | "waitRechargePay" | "payed" | "waitpay" | "refund" | "confirmed" | "assign" | "orderReassigned";
95
95
  export declare enum CenterPlaceStatus {
96
96
  GEO_LOADING = "GEO_LOADING",
97
97
  QUERYING_INFO = "QUERYING_INFO",
@@ -1,7 +1,7 @@
1
1
  /// <reference types="google.maps" />
2
2
  import type { Point, Route } from "../types/interface";
3
- export declare function amapJsApiDrivingRoute(from: Point, to: Point, amapDriving: AMap.Driving): Promise<Route>;
4
- export declare function gaodeServiceApiDrivingRoute(from: Point, to: Point, proxyUrl: string): Promise<Route>;
5
- export declare function gmapJsApiDrivingRoute(from: Point, to: Point, gmapDirectionsService: google.maps.DirectionsService): Promise<Route>;
6
- export declare function googleServiceApiDrivingDirection(from: Point, to: Point, proxyUrl: string): Promise<Route>;
7
- export declare function googleServiceApiDrivingRoute(from: Point, to: Point, proxyUrl: string): Promise<Route>;
3
+ export declare function amapJsApiDrivingRoute(from: Point, to: Point, waypoints: Point[], amapDriving: AMap.Driving): Promise<Route>;
4
+ export declare function gaodeServiceApiDrivingRoute(from: Point, to: Point, waypoints: Point[], proxyUrl: string): Promise<Route>;
5
+ export declare function gmapJsApiDrivingRoute(from: Point, to: Point, waypoints: Point[], gmapDirectionsService: google.maps.DirectionsService): Promise<Route>;
6
+ export declare function googleServiceApiDrivingDirection(from: Point, to: Point, waypoints: Point[], proxyUrl: string): Promise<Route>;
7
+ export declare function googleServiceApiDrivingRoute(from: Point, to: Point, waypoints: Point[], proxyUrl: string): Promise<Route>;
@@ -1,7 +1,7 @@
1
1
  import { apiGaodeDirectionDriving } from "../api/gaodeDirectionDriving.js";
2
2
  import { apiGoogleDirections } from "../api/googleDirections.js";
3
3
  import { apiGoogleRoutes } from "../api/googleRoutes.js";
4
- import { amapTraffic2trafficStatus, stringifyPoint } from "./transform.js";
4
+ import { vec2lnglat, amapTraffic2trafficStatus, stringifyPoint } from "./transform.js";
5
5
  const amapTmcs2trafficJams = (tmcs) => {
6
6
  const trafficJams = {};
7
7
  let prevStatus = "UNKNOWN";
@@ -20,12 +20,12 @@ const amapTmcs2trafficJams = (tmcs) => {
20
20
  }
21
21
  return trafficJams;
22
22
  };
23
- function amapJsApiDrivingRoute(from, to, amapDriving) {
23
+ function amapJsApiDrivingRoute(from, to, waypoints, amapDriving) {
24
24
  return new Promise((resolve, reject) => {
25
25
  amapDriving.search(
26
26
  AMap.LngLat.from(from),
27
27
  AMap.LngLat.from(to),
28
- { waypoints: [] },
28
+ { waypoints: waypoints.map((p) => AMap.LngLat.from(p)) },
29
29
  (status, result) => {
30
30
  const trafficJams = {};
31
31
  switch (status) {
@@ -67,11 +67,12 @@ function amapJsApiDrivingRoute(from, to, amapDriving) {
67
67
  );
68
68
  });
69
69
  }
70
- async function gaodeServiceApiDrivingRoute(from, to, proxyUrl) {
70
+ async function gaodeServiceApiDrivingRoute(from, to, waypoints, proxyUrl) {
71
71
  const { status, routes, error_message } = await apiGaodeDirectionDriving({
72
72
  proxyUrl,
73
73
  origin: [from],
74
- destination: to
74
+ destination: to,
75
+ waypoints
75
76
  });
76
77
  const trafficJams = {};
77
78
  switch (status) {
@@ -107,13 +108,14 @@ async function gaodeServiceApiDrivingRoute(from, to, proxyUrl) {
107
108
  throw Error(error_message);
108
109
  }
109
110
  }
110
- function gmapJsApiDrivingRoute(from, to, gmapDirectionsService) {
111
+ function gmapJsApiDrivingRoute(from, to, waypoints, gmapDirectionsService) {
111
112
  return new Promise((resolve, reject) => {
112
113
  gmapDirectionsService.route(
113
114
  {
114
115
  origin: { lng: from[0], lat: from[1] },
115
116
  destination: { lng: to[0], lat: to[1] },
116
- travelMode: google.maps.TravelMode.DRIVING
117
+ travelMode: google.maps.TravelMode.DRIVING,
118
+ waypoints: waypoints.map((p) => ({ location: vec2lnglat(p) }))
117
119
  },
118
120
  (result, status) => {
119
121
  var _a, _b, _c, _d, _e, _f, _g, _h;
@@ -151,12 +153,13 @@ function gmapJsApiDrivingRoute(from, to, gmapDirectionsService) {
151
153
  );
152
154
  });
153
155
  }
154
- async function googleServiceApiDrivingDirection(from, to, proxyUrl) {
156
+ async function googleServiceApiDrivingDirection(from, to, waypoints, proxyUrl) {
155
157
  var _a, _b, _c, _d, _e, _f, _g, _h;
156
158
  const { status, routes, error_message } = await apiGoogleDirections({
157
159
  proxyUrl,
158
160
  origin: from,
159
- destination: to
161
+ destination: to,
162
+ waypoints
160
163
  });
161
164
  switch (status) {
162
165
  case "OK": {
@@ -189,7 +192,7 @@ async function googleServiceApiDrivingDirection(from, to, proxyUrl) {
189
192
  throw Error(error_message != null ? error_message : status);
190
193
  }
191
194
  }
192
- async function googleServiceApiDrivingRoute(from, to, proxyUrl) {
195
+ async function googleServiceApiDrivingRoute(from, to, waypoints, proxyUrl) {
193
196
  var _a, _b, _c, _d, _e;
194
197
  const { routes } = await apiGoogleRoutes({
195
198
  proxyUrl,
@@ -207,8 +210,17 @@ async function googleServiceApiDrivingRoute(from, to, proxyUrl) {
207
210
  latitude: to[1],
208
211
  longitude: to[0]
209
212
  }
213
+ },
214
+ vehicleStopover: true
215
+ },
216
+ intermediates: waypoints.map((p) => ({
217
+ location: {
218
+ latLng: {
219
+ latitude: p[1],
220
+ longitude: p[0]
221
+ }
210
222
  }
211
- }
223
+ }))
212
224
  });
213
225
  const firstRoute = routes == null ? void 0 : routes[0];
214
226
  if (!firstRoute)
@@ -1,6 +1,6 @@
1
1
  const availableLogKeys = /* @__PURE__ */ new Set();
2
2
  const pkgName = "@heycar/heycars-map";
3
- const pkgVersion = "2.12.0-color6";
3
+ const pkgVersion = "2.13.0-relay1";
4
4
  const isEnableLog = (name) => {
5
5
  const searchParam = new URLSearchParams(location.search);
6
6
  return searchParam.has(`log-${name}`);
@@ -1,3 +1,7 @@
1
- export declare const DemoBusinessQuoting: import("vue").DefineComponent<import("vue").ComponentObjectPropsOptions<unknown>, import("../types/helper").Empty, import("../types/helper").Empty, import("../types/helper").Empty, import("../types/helper").Empty, import("../types/helper").Empty, import("../types/helper").Empty, import("../types/helper").EmitByProps<unknown, Required<unknown>>, never, import("vue").PublicProps, unknown, unknown, import("vue").SlotsType<{} & {
2
- default?: import("../demi-polyfill").Slot | undefined;
3
- }>>;
1
+ import type { CoordinatePlace } from "../types/interface";
2
+ export declare const DemoBusinessQuoting: import("vue-demi").DefineComponent<{}, {
3
+ mapContext: import("../hooks-business/useBusinessQuotingMap").BusinessQuotingContext;
4
+ toAmapCoordinateType: (point: import("../types/interface").Point) => import("../types/interface").CoordinateType;
5
+ }, {
6
+ from: CoordinatePlace;
7
+ }, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, import("vue-demi").PublicProps, Readonly<import("vue-demi").ExtractPropTypes<{}>>, {}, {}>;
@@ -1,39 +1,69 @@
1
1
  import { createVNode, createTextVNode } from "vue";
2
+ import { defineComponent } from "vue-demi";
2
3
  import { BusinessQuotingMap } from "../business-components/BusinessQuotingMap/BusinessQuotingMap.js";
3
4
  import { useBusinessQuotingMap } from "../hooks-business/useBusinessQuotingMap.js";
4
- import { defineSetup } from "../types/helper.js";
5
5
  import { d as demo } from "../chunks/Demo.css.e921a2f6.js";
6
- const DemoBusinessQuoting = defineSetup("DemoBusinessQuoting", function() {
7
- const {
8
- mapContext,
9
- toAmapCoordinateType
10
- } = useBusinessQuotingMap();
11
- return () => createVNode("div", null, [createVNode(BusinessQuotingMap, {
12
- "class": demo,
13
- "from": {
14
- displayName: "The Malayan Council",
15
- name: "10 Winstedt Rd, #01-17, Singapore 227977",
16
- type: "wgs84",
17
- lat: 1.311295,
18
- lng: 103.841974
19
- },
20
- "to": {
21
- displayName: "CDG Engie Charging Station",
22
- name: "21 Kent Ridge Rd, Singapore 119220",
23
- type: "wgs84",
24
- lat: 1.2966426,
25
- lng: 103.7763939
26
- },
27
- "fromDescription": "您将在此上车",
28
- "renderDescription": ({
29
- distance,
30
- duration,
31
- tolls
32
- }) => `全程 *${distance / 1e3}公里* 约行驶 *${duration}* 高速费用 *${tolls != null ? tolls : 0}*元`,
33
- "mapContext": mapContext,
34
- "onClickStartPoint": (place) => console.log("点击起点时触发 palce = ", place),
35
- "onClickEndPoint": (place) => console.log("点击终点时触发 palce = ", place)
36
- }, null), createVNode("div", null, [createTextVNode("经度 103.841974, 纬度 1.311295 在高德地图上的坐标类型是:"), toAmapCoordinateType([103.841974, 1.311295])])]);
6
+ const DemoBusinessQuoting = /* @__PURE__ */ defineComponent({
7
+ name: "DemoBusinessQuoting",
8
+ setup() {
9
+ const {
10
+ mapContext,
11
+ toAmapCoordinateType
12
+ } = useBusinessQuotingMap();
13
+ return {
14
+ mapContext,
15
+ toAmapCoordinateType
16
+ };
17
+ },
18
+ data() {
19
+ return {
20
+ from: {
21
+ displayName: "my",
22
+ name: "my",
23
+ type: "wgs84",
24
+ lat: 1.311295,
25
+ lng: 103.841974
26
+ }
27
+ };
28
+ },
29
+ created() {
30
+ window.updateFrom = () => {
31
+ this.from = {
32
+ displayName: "The Malayan Council",
33
+ name: "10 Winstedt Rd, #01-17, Singapore 227977",
34
+ type: "wgs84",
35
+ lat: 1.311295,
36
+ lng: 103.841974
37
+ };
38
+ };
39
+ },
40
+ render() {
41
+ const {
42
+ mapContext,
43
+ toAmapCoordinateType,
44
+ from
45
+ } = this;
46
+ return createVNode("div", null, [createVNode(BusinessQuotingMap, {
47
+ "class": demo,
48
+ "from": from,
49
+ "to": {
50
+ displayName: "CDG Engie Charging Station",
51
+ name: "21 Kent Ridge Rd, Singapore 119220",
52
+ type: "wgs84",
53
+ lat: 1.2966426,
54
+ lng: 103.7763939
55
+ },
56
+ "fromDescription": "您将在此上车",
57
+ "renderDescription": ({
58
+ distance,
59
+ duration,
60
+ tolls
61
+ }) => `全程 *${distance / 1e3}公里* 约行驶 *${duration}* 高速费用 *${tolls != null ? tolls : 0}*元`,
62
+ "mapContext": mapContext,
63
+ "onClickStartPoint": (place) => console.log("点击起点时触发 palce = ", place),
64
+ "onClickEndPoint": (place) => console.log("点击终点时触发 palce = ", place)
65
+ }, null), createVNode("div", null, [createTextVNode("经度 103.841974, 纬度 1.311295 在高德地图上的坐标类型是:"), toAmapCoordinateType([103.841974, 1.311295])])]);
66
+ }
37
67
  });
38
68
  export {
39
69
  DemoBusinessQuoting
@@ -4,6 +4,7 @@ export declare const DemoBusinessTaxiService: import("vue-demi").DefineComponent
4
4
  }, {
5
5
  from: Partial<CoordinatePlace>;
6
6
  to: Partial<CoordinatePlace>;
7
+ relayTo: Partial<CoordinatePlace>;
7
8
  status: DriverStatus;
8
9
  contentHeight: number;
9
10
  }, {}, {