@realsee/dnalogel 2.0.0-alpha.35 → 2.0.0-alpha.36

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 (211) hide show
  1. package/dist/ItemLabelPlugin/index.js +21 -41
  2. package/dist/ModelItemLabelPlugin/index.js +16 -36
  3. package/dist/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +1 -1
  4. package/dist/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +0 -4
  5. package/dist/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +0 -3
  6. package/dist/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +2 -0
  7. package/dist/PanoMeasurePlugin/Modules/UIController/{NewMainBtnController.d.ts → mobileMainBtnController.d.ts} +1 -1
  8. package/dist/PanoMeasurePlugin/Modules/UIController/style.d.ts +0 -3
  9. package/dist/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +1 -1
  10. package/dist/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +2 -0
  11. package/dist/PanoMeasurePlugin/index.js +298 -331
  12. package/dist/PanoMeasurePlugin/typings/data.d.ts +5 -0
  13. package/dist/PanoMeasurePlugin/utils/mouseGroup.d.ts +6 -1
  14. package/dist/base/BasePlugin.d.ts +100 -0
  15. package/dist/base/BasePluginWithData.d.ts +34 -0
  16. package/dist/floorplan/ModelFloorplanPlugin/Controller.d.ts +70 -78
  17. package/dist/floorplan/ModelFloorplanPlugin/index.d.ts +5 -7
  18. package/dist/floorplan/ModelFloorplanPlugin/index.js +1059 -569
  19. package/dist/floorplan/ModelFloorplanPlugin/typing.d.ts +107 -0
  20. package/dist/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +23 -14
  21. package/dist/floorplan/PanoFloorplanRadarPlugin/index.d.ts +5 -6
  22. package/dist/floorplan/PanoFloorplanRadarPlugin/index.js +489 -129
  23. package/dist/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +52 -0
  24. package/dist/floorplan/TopviewFloorplanPlugin/Controller.d.ts +50 -58
  25. package/dist/floorplan/TopviewFloorplanPlugin/index.d.ts +5 -3
  26. package/dist/floorplan/TopviewFloorplanPlugin/index.js +1031 -443
  27. package/dist/floorplan/TopviewFloorplanPlugin/typing.d.ts +86 -0
  28. package/{libs/floorplan/ModelFloorplanPlugin → dist/floorplan}/utils/constant.d.ts +10 -3
  29. package/{libs/floorplan/ModelFloorplanPlugin → dist/floorplan}/utils/correctFiveState.d.ts +2 -1
  30. package/dist/index.es.js +2184 -1411
  31. package/dist/index.js +2188 -1415
  32. package/dist/index.umd.js +2142 -1369
  33. package/dist/shared-utils/five/changeMode.d.ts +4 -1
  34. package/dist/shared-utils/getPxmm.d.ts +8 -0
  35. package/docs/assets/search.js +1 -1
  36. package/docs/classes/Magnifier.html +4 -4
  37. package/docs/classes/ModelRoomLabelController.html +4 -4
  38. package/docs/enums/CameraMovementEffect.html +2 -2
  39. package/docs/enums/DIRECTION.html +1 -1
  40. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +1 -1
  41. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +1 -1
  42. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +1 -1
  43. package/docs/enums/Rotation.html +2 -2
  44. package/docs/index.html +2 -2
  45. package/docs/interfaces/CSS3DRenderPluginExportType.html +2 -2
  46. package/docs/interfaces/CameraMovementPluginExportType.html +2 -2
  47. package/docs/interfaces/FloorplanBounding.html +4 -4
  48. package/docs/interfaces/FloorplanData.html +2 -2
  49. package/docs/interfaces/FloorplanEntrance.html +7 -7
  50. package/docs/interfaces/FloorplanExtraObject.html +3 -3
  51. package/docs/interfaces/FloorplanExtraObject3D.html +2 -2
  52. package/docs/interfaces/FloorplanFloorData.html +2 -2
  53. package/docs/interfaces/FloorplanImagePosition.html +2 -2
  54. package/docs/interfaces/FloorplanObserver.html +2 -2
  55. package/docs/interfaces/FloorplanOutlineItem.html +2 -2
  56. package/docs/interfaces/FloorplanPosition.html +2 -2
  57. package/docs/interfaces/FloorplanRoomItem.html +6 -6
  58. package/docs/interfaces/FloorplanRoomLabelItem.html +3 -3
  59. package/docs/interfaces/FloorplanServerBounding.html +4 -4
  60. package/docs/interfaces/FloorplanServerComputedData.html +1 -1
  61. package/docs/interfaces/FloorplanServerData.html +2 -2
  62. package/docs/interfaces/FloorplanServerEntrance.html +7 -7
  63. package/docs/interfaces/FloorplanServerFloorData.html +2 -2
  64. package/docs/interfaces/FloorplanServerImagePosition.html +2 -2
  65. package/docs/interfaces/FloorplanServerObserver.html +2 -2
  66. package/docs/interfaces/FloorplanServerOutlineItem.html +2 -2
  67. package/docs/interfaces/FloorplanServerPosition.html +2 -2
  68. package/docs/interfaces/FloorplanServerRoomItem.html +7 -7
  69. package/docs/interfaces/FloorplanServerRoomLabelItem.html +3 -3
  70. package/docs/interfaces/ItemLabelPluginData.html +1 -1
  71. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +1 -1
  72. package/docs/interfaces/ItemLabelPluginParametersType.html +1 -1
  73. package/docs/interfaces/LineJson.html +1 -1
  74. package/docs/interfaces/ModelChassisCompassPluginData.html +1 -1
  75. package/docs/interfaces/ModelChassisCompassPluginExportType.html +1 -1
  76. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +1 -1
  77. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +1 -1
  78. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +1 -1
  79. package/docs/interfaces/ModelItemLabelPluginData.html +1 -1
  80. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +1 -1
  81. package/docs/interfaces/ModelItemLabelPluginParametersType.html +1 -1
  82. package/docs/interfaces/ModelRoomLabelPluginData.html +1 -1
  83. package/docs/interfaces/ModelTVVideoPluginData.html +1 -1
  84. package/docs/interfaces/ModelTVVideoPluginExportType.html +1 -1
  85. package/docs/interfaces/ModelTVVideoPluginParameterType.html +1 -1
  86. package/docs/interfaces/ModelViewPluginExportType.html +1 -1
  87. package/docs/interfaces/OpenParameter.html +2 -2
  88. package/docs/interfaces/PanoCompassPluginData.html +1 -1
  89. package/docs/interfaces/PanoCompassPluginParameterType.html +1 -1
  90. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +6 -6
  91. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +1 -1
  92. package/docs/interfaces/PanoMeasureParameterType.html +1 -1
  93. package/docs/interfaces/PanoRulerPluginExportType.html +1 -1
  94. package/docs/interfaces/PanoRulerPluginOptions.html +1 -1
  95. package/docs/interfaces/PanoRulerPluginParameterType.html +1 -1
  96. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +1 -1
  97. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +1 -1
  98. package/docs/interfaces/PanoSpatialTagPluginData.html +1 -1
  99. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +1 -1
  100. package/docs/interfaces/PanoSpatialTagPluginExportType.html +1 -1
  101. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +1 -1
  102. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +1 -1
  103. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +1 -1
  104. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +1 -1
  105. package/docs/interfaces/Point.html +1 -1
  106. package/docs/interfaces/PointJson.html +1 -1
  107. package/docs/interfaces/Room.html +1 -1
  108. package/docs/interfaces/RoomInfo.html +1 -1
  109. package/docs/interfaces/RoomLabel.html +7 -7
  110. package/docs/interfaces/RoomRules.html +1 -1
  111. package/docs/interfaces/Rooms.html +1 -1
  112. package/docs/modules.html +17 -27
  113. package/libs/ItemLabelPlugin/ItemLabelComponent.js +21 -41
  114. package/libs/ModelItemLabelPlugin/ItemLabelComponent.js +16 -36
  115. package/libs/PanoMeasurePlugin/Controller/index.js +4 -2
  116. package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +1 -1
  117. package/libs/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js +1 -1
  118. package/libs/PanoMeasurePlugin/Modules/GuideController.js +2 -2
  119. package/libs/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +0 -4
  120. package/libs/PanoMeasurePlugin/Modules/UIController/HTML.js +66 -55
  121. package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +0 -3
  122. package/libs/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +51 -73
  123. package/libs/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +7 -4
  124. package/libs/PanoMeasurePlugin/Modules/UIController/index.js +10 -12
  125. package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +2 -0
  126. package/libs/PanoMeasurePlugin/Modules/UIController/mobileHTML.js +2 -2
  127. package/libs/PanoMeasurePlugin/Modules/UIController/{NewMainBtnController.d.ts → mobileMainBtnController.d.ts} +1 -1
  128. package/libs/PanoMeasurePlugin/Modules/UIController/{NewMainBtnController.js → mobileMainBtnController.js} +4 -4
  129. package/libs/PanoMeasurePlugin/Modules/UIController/style.d.ts +0 -3
  130. package/libs/PanoMeasurePlugin/Modules/UIController/style.js +7 -24
  131. package/libs/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +1 -1
  132. package/libs/PanoMeasurePlugin/Modules/rangePiece/html.js +1 -1
  133. package/libs/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +2 -0
  134. package/libs/PanoMeasurePlugin/Modules/rangePiece/index.js +1 -2
  135. package/libs/PanoMeasurePlugin/typings/data.d.ts +5 -0
  136. package/libs/PanoMeasurePlugin/utils/mouseGroup.d.ts +6 -1
  137. package/libs/PanoMeasurePlugin/utils/mouseGroup.js +55 -7
  138. package/libs/base/BasePlugin.d.ts +100 -0
  139. package/libs/base/BasePlugin.js +31 -0
  140. package/libs/base/BasePluginWithData.d.ts +34 -0
  141. package/libs/base/BasePluginWithData.js +4 -0
  142. package/libs/floorplan/Components/Compass.js +11 -11
  143. package/libs/floorplan/Components/CurrentFloor.js +24 -11
  144. package/libs/floorplan/Components/Main.js +21 -15
  145. package/libs/floorplan/Components/RoomHighlight/Room.js +44 -5
  146. package/libs/floorplan/Components/RoomHighlight/RoomHighlight.js +29 -12
  147. package/libs/floorplan/Components/RoomLabels/RoomLabel.js +164 -15
  148. package/libs/floorplan/Components/RoomLabels/RoomLabels.js +68 -24
  149. package/libs/floorplan/Components/RoomMaterials/RoomMaterial_1.js +1 -0
  150. package/libs/floorplan/Components/RoomMaterials/RoomMaterial_2.js +11 -9
  151. package/libs/floorplan/Components/RuleLabels/RuleItem.js +2 -2
  152. package/libs/floorplan/ModelFloorplanPlugin/Controller.d.ts +70 -78
  153. package/libs/floorplan/ModelFloorplanPlugin/Controller.js +434 -274
  154. package/libs/floorplan/ModelFloorplanPlugin/index.d.ts +5 -7
  155. package/libs/floorplan/ModelFloorplanPlugin/index.js +2 -2
  156. package/libs/floorplan/ModelFloorplanPlugin/typing.d.ts +107 -0
  157. package/libs/floorplan/ModelFloorplanPlugin/{typings/events.type.js → typing.js} +0 -0
  158. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Camera.js +5 -5
  159. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Main.js +114 -53
  160. package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +23 -14
  161. package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.js +162 -52
  162. package/libs/floorplan/PanoFloorplanRadarPlugin/index.d.ts +5 -6
  163. package/libs/floorplan/PanoFloorplanRadarPlugin/index.js +2 -2
  164. package/libs/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +52 -0
  165. package/libs/floorplan/PanoFloorplanRadarPlugin/typing.js +1 -0
  166. package/libs/floorplan/TopviewFloorplanPlugin/Controller.d.ts +50 -58
  167. package/libs/floorplan/TopviewFloorplanPlugin/Controller.js +320 -174
  168. package/libs/floorplan/TopviewFloorplanPlugin/index.d.ts +5 -3
  169. package/libs/floorplan/TopviewFloorplanPlugin/index.js +2 -2
  170. package/libs/floorplan/TopviewFloorplanPlugin/style.js +1 -1
  171. package/libs/floorplan/TopviewFloorplanPlugin/typing.d.ts +86 -0
  172. package/libs/floorplan/TopviewFloorplanPlugin/typing.js +1 -0
  173. package/{dist/floorplan/ModelFloorplanPlugin → libs/floorplan}/utils/constant.d.ts +10 -3
  174. package/libs/floorplan/{ModelFloorplanPlugin/utils → utils}/constant.js +9 -2
  175. package/{dist/floorplan/ModelFloorplanPlugin → libs/floorplan}/utils/correctFiveState.d.ts +2 -1
  176. package/libs/floorplan/{ModelFloorplanPlugin/utils → utils}/correctFiveState.js +16 -16
  177. package/libs/shared-utils/five/changeMode.d.ts +4 -1
  178. package/libs/shared-utils/five/changeMode.js +34 -13
  179. package/libs/shared-utils/getPxmm.d.ts +8 -0
  180. package/libs/shared-utils/getPxmm.js +25 -20
  181. package/package.json +2 -2
  182. package/dist/floorplan/ModelFloorplanPlugin/typings/events.type.d.ts +0 -23
  183. package/docs/classes/PanoFloorplanRadarPluginController.html +0 -3
  184. package/docs/enums/ModelFloorplanErrorType.html +0 -1
  185. package/docs/interfaces/ModelFloorplanParameterType.html +0 -1
  186. package/docs/interfaces/ModelFloorplanViewEvent.html +0 -5
  187. package/docs/interfaces/PanoFloorplanRadarPluginControllerParameter.html +0 -1
  188. package/docs/interfaces/TopviewFloorplanPluginParameterType.html +0 -19
  189. package/libs/ModelSimulationPlugin/index.d.ts +0 -33
  190. package/libs/ModelSimulationPlugin/index.js +0 -166
  191. package/libs/ModelSimulationPlugin/shaders/fragment.d.ts +0 -2
  192. package/libs/ModelSimulationPlugin/shaders/fragment.js +0 -96
  193. package/libs/ModelSimulationPlugin/shaders/vertex.d.ts +0 -2
  194. package/libs/ModelSimulationPlugin/shaders/vertex.js +0 -23
  195. package/libs/floorplan/ModelFloorplanPlugin/Assets/compass.d.ts +0 -1
  196. package/libs/floorplan/ModelFloorplanPlugin/Assets/compass.js +0 -1
  197. package/libs/floorplan/ModelFloorplanPlugin/Components/Camera.js +0 -120
  198. package/libs/floorplan/ModelFloorplanPlugin/Components/Compass.js +0 -106
  199. package/libs/floorplan/ModelFloorplanPlugin/Components/CurrentFloor/CurrentFloor.js +0 -463
  200. package/libs/floorplan/ModelFloorplanPlugin/Components/Main.js +0 -375
  201. package/libs/floorplan/ModelFloorplanPlugin/Components/RoomLabels/RoomLabel.js +0 -171
  202. package/libs/floorplan/ModelFloorplanPlugin/Components/RoomLabels/RoomLabels.js +0 -265
  203. package/libs/floorplan/ModelFloorplanPlugin/Components/RuleLabels/RuleItem.js +0 -301
  204. package/libs/floorplan/ModelFloorplanPlugin/Components/RuleLabels/RuleLabels.js +0 -219
  205. package/libs/floorplan/ModelFloorplanPlugin/typings/events.type.d.ts +0 -23
  206. package/libs/shared-utils/five/useFivePlugin.d.ts +0 -1
  207. package/libs/shared-utils/five/useFivePlugin.js +0 -8
  208. package/libs/shared-utils/useDebounce.d.ts +0 -8
  209. package/libs/shared-utils/useDebounce.js +0 -22
  210. package/libs/shared-utils/useThrottle.d.ts +0 -8
  211. package/libs/shared-utils/useThrottle.js +0 -25
@@ -1,7 +1,4 @@
1
- export const MAIN_NORMAL_PATH = 'M31.379 15.466a1.045 1.045 0 0 1-.92 1.076l-11.276.607a1.6 1.6 0 0 0-1.512 1.511l-.599 11.113a1.045 1.045 0 0 1-.92 1.075l-.164.008a1.183 1.183 0 0 1-1.123-.975l-.016-.164-.221-10.768a1.6 1.6 0 0 0-1.567-1.567l-11.3-.231-.165-.016a1.187 1.187 0 0 1-.964-.996l-.01-.127.007-.164c.061-.496.455-.876.958-.917l.118-.003 11.112-.599a1.6 1.6 0 0 0 1.498-1.37l.014-.142.607-11.276a1.045 1.045 0 0 1 1.076-.92c.573.015 1.055.46 1.13 1.019l.009.121.221 10.766a1.6 1.6 0 0 0 1.567 1.566l11.3.234a1.181 1.181 0 0 1 1.14 1.139z';
2
- export const MAIN_DONE_PATH = 'M27.1772552,8.15828895 C27.8664561,7.48070421 28.5574369,7.81156875 28.8336646,8.04968716 C29.1098924,8.28780557 29.3990219,9.110014 28.8256559,9.79263351 L28.7110903,9.9165024 L13.9697229,25.1399531 C13.3288458,25.7700285 12.3239388,25.8070917 11.6402346,25.2511429 L11.5159715,25.1399531 L3.7056151,18.0063788 C3.01641417,17.3287941 3.00699739,16.2207954 3.68458213,15.5315945 C4.32230894,14.8829348 5.3413021,14.8364368 6.03356826,15.3981178 L6.15936649,15.5105615 L12.6856594,21.9049888 L27.1772552,8.15828895 Z';
3
- export const MAIN_MOUSE_ENTER_FILL = 'url(#fpm__main-b)';
4
- export const MAIN_MOUSE_LEAVE_FILL = 'url(#fpm__main-c)';
1
+ import { endIconImage, startIconImage } from "./mobileHTML";
5
2
  const revokeSvg = `
6
3
  <svg class="fpm__revoke-icon" width="40" height="40" viewBox="0 0 40 40" xmlns="http://www.w3.org/2000/svg">
7
4
  <defs>
@@ -45,73 +42,87 @@ const exitSvg = `
45
42
  />
46
43
  </svg>
47
44
  `;
48
- const mainSvg = `
49
- <svg class="fpm__main-icon" width="60" height="60" viewBox="0 0 60 60" xmlns="http://www.w3.org/2000/svg">
50
- <defs>
51
- <mask id="fpm__main-icon-mask">
52
- <rect id="fpm__main-icon-mask-black" x="0" y="0" width="30" height="30" fill="black"></rect>
53
- <rect id="fpm__main-icon-mask-white" x="0" y="0" width="0" height="30" fill="white"></rect>
54
- </mask>
55
- <linearGradient id="fpm__main-a" x1="25.371%" y1="0%" x2="109.587%" y2="172.268%">
56
- <stop stop-color="#FFF" offset="0%" />
57
- <stop stop-color="#FFF" stop-opacity=".77" offset="44.051%" />
58
- <stop stop-color="#FFF" stop-opacity=".201" offset="100%" />
59
- </linearGradient>
60
- <radialGradient id="fpm__main-b" fx="50%" fy="50%" r="50.864%" gradientTransform="matrix(-.98302 0 0 -1 .992 1)">
61
- <stop stop-color="#2D7CFF" offset="0%" />
62
- <stop stop-color="#2D7CFF" stop-opacity=".3" offset="100%" />
63
- </radialGradient>
64
- <radialGradient id="fpm__main-c" fx="50%" fy="50%" r="50.864%" gradientTransform="matrix(-.98302 0 0 -1 .992 1)">
65
- <stop stop-opacity=".4" offset="0%" />
66
- <stop stop-opacity=".12" offset="100%" />
67
- </radialGradient>
68
- </defs>
69
- <g fill="none" fill-rule="evenodd">
70
- <circle fill="url(#fpm__main-a)" cx="30" cy="30" r="30" />
71
- <path
72
- class="fpm__main-icon-path"
73
- d="${MAIN_NORMAL_PATH}"
74
- fill="${MAIN_MOUSE_LEAVE_FILL}"
75
- fill-rule="nonzero"
76
- transform="translate(14 14)"
77
- />
78
- </g>
79
- </svg>
80
- `;
81
45
  export default `
82
46
  <style>
47
+ .fpm__other-btn {
48
+ height: 40px;
49
+ width: 88px;
50
+ background: rgba(0, 0, 0, 0.15);
51
+ border-radius: 20px;
52
+ overflow: hidden;
53
+ }
54
+
55
+ .fpm__other-content {
56
+ height: 100%;
57
+ display: flex;
58
+ align-items: center;
59
+ justify-content: center;
60
+ }
61
+
83
62
  .fpm__revoke {
84
63
  opacity: 0.3;
85
- }
86
-
64
+ }
87
65
  .fpm__revoke.enabled {
88
- opacity: 0.7;
89
- }
90
-
66
+ opacity: 0.85;
67
+ }
91
68
  .fpm__revoke.enabled:hover {
92
69
  opacity: 1;
93
70
  }
94
71
 
95
72
  .fpm__revoke-icon {
96
- width: 40px;
97
- height: 40px;
98
- margin-top: 10px;
73
+ width: 24px;
74
+ height: 24px;
75
+ margin-right: 4px;
99
76
  cursor: pointer;
100
- }
77
+ }
78
+
79
+ .fpm__main-btn {
80
+ display: flex;
81
+ justify-content: center;
82
+ align-items: center;
83
+ }
84
+ .fpm__main-btn-text {
85
+ position: absolute;
86
+ font-weight: 500;
87
+ font-size: 14px;
88
+ color: #FFFFFF;
89
+ text-align: center;
90
+ text-shadow: 0 2px 8px rgba(0,0,0,0.50);
91
+ transition: all 200ms ease-in-out;
92
+ }
93
+ .fpm__main-text__hide {
94
+ transform: scale(0.8) translateY(4px);
95
+ opacity: 0;
96
+ }
97
+ .fpm__main-text__show {
98
+ transform: scale(1) translateY(0);
99
+ opacity: 1;
100
+ }
101
+ .fpm__main__start {
102
+ background-image: url(${startIconImage});
103
+ }
104
+ .fpm__main__end {
105
+ background-image: url(${endIconImage});
106
+ }
107
+
101
108
  </style>
102
109
  <div class="fpm_ui-bg"></div>
103
110
  <div class="fpm_operating-space">
104
- <div class="fpm__ui-item fpm__revoke">
105
- ${revokeSvg}
106
- <span class="fpm__text fpm__revoke-text">撤销</span>
111
+ <div class="fpm__other-btn">
112
+ <div class="fpm__other-content fpm__revoke">
113
+ ${revokeSvg}
114
+ <span class="fpm__text fpm__revoke-text">撤销</span>
115
+ </div>
107
116
  </div>
108
- <div class="fpm__ui-item fpm__main">
109
- ${mainSvg}
110
- <span class="fpm__text fpm__main-text">添加</span>
117
+ <div class="fpm__main fpm__main-btn">
118
+ <div class="fpm__main-icon fpm__main__start"></div>
119
+ <div class="fpm__main-text fpm__main-btn-text">开始</div>
111
120
  </div>
112
- <div class="fpm__ui-item fpm__exit">
113
- ${exitSvg}
114
- <span class="fpm__text fpm__exit-text">退出</span>
121
+ <div class="fpm__other-btn">
122
+ <div class="fpm__other-content fpm__exit">
123
+ ${exitSvg}
124
+ <span class="fpm__text fpm__exit-text">退出</span>
125
+ </div>
115
126
  </div>
116
127
  </div>
117
128
  `;
@@ -2,17 +2,14 @@ import type MeasureController from '../../Controller';
2
2
  export declare class MainBtnController {
3
3
  private container;
4
4
  private measureController;
5
- private mainIconMaskTween?;
6
5
  private mainElement;
7
6
  constructor(measureController: MeasureController, container: Element);
8
7
  dispose(): void;
9
8
  private getMainElement;
10
9
  private change2Add;
11
- private change2Cancel;
12
10
  private change2Done;
13
11
  private onMouseEnter;
14
12
  private onMouseLeave;
15
13
  private onClick;
16
- private editedLineChangeHandler;
17
14
  private modeChangeHandler;
18
15
  }
@@ -1,7 +1,4 @@
1
- import TWEEN from '@tweenjs/tween.js';
2
1
  import { mainIconStyle, mainItemStyle } from './style';
3
- import { tweenProgress } from '../../../shared-utils/animationFrame/BetterTween';
4
- import { MAIN_NORMAL_PATH, MAIN_DONE_PATH, MAIN_MOUSE_ENTER_FILL, MAIN_MOUSE_LEAVE_FILL } from './HTML';
5
2
  export class MainBtnController {
6
3
  constructor(measureController, container) {
7
4
  Object.defineProperty(this, "container", {
@@ -16,38 +13,30 @@ export class MainBtnController {
16
13
  writable: true,
17
14
  value: void 0
18
15
  });
19
- Object.defineProperty(this, "mainIconMaskTween", {
20
- enumerable: true,
21
- configurable: true,
22
- writable: true,
23
- value: void 0
24
- });
25
16
  Object.defineProperty(this, "mainElement", {
26
17
  enumerable: true,
27
18
  configurable: true,
28
19
  writable: true,
29
20
  value: void 0
30
21
  });
31
- /* 鼠标移入时变成蓝色 */
22
+ /* 鼠标移入时 */
32
23
  Object.defineProperty(this, "onMouseEnter", {
33
24
  enumerable: true,
34
25
  configurable: true,
35
26
  writable: true,
36
27
  value: () => {
37
- const { mainItem, pathDom } = this.mainElement;
28
+ const { mainItem } = this.mainElement;
38
29
  mainItem.style.opacity = '1';
39
- pathDom.setAttribute('fill', MAIN_MOUSE_ENTER_FILL);
40
30
  }
41
31
  });
42
- /* 鼠标移出时变成灰色 */
32
+ /* 鼠标移出时 */
43
33
  Object.defineProperty(this, "onMouseLeave", {
44
34
  enumerable: true,
45
35
  configurable: true,
46
36
  writable: true,
47
37
  value: () => {
48
- const { mainItem, pathDom } = this.mainElement;
49
- mainItem.style.opacity = '0.7';
50
- pathDom.setAttribute('fill', MAIN_MOUSE_LEAVE_FILL);
38
+ const { mainItem } = this.mainElement;
39
+ mainItem.style.opacity = '0.85';
51
40
  }
52
41
  });
53
42
  Object.defineProperty(this, "onClick", {
@@ -59,26 +48,12 @@ export class MainBtnController {
59
48
  mode === 'Watch' ? this.measureController.changeMode('Edit') : this.measureController.save().changeMode('Watch');
60
49
  }
61
50
  });
62
- Object.defineProperty(this, "editedLineChangeHandler", {
63
- enumerable: true,
64
- configurable: true,
65
- writable: true,
66
- value: (lines) => {
67
- // 线的数量大于 1 时,没有状态的变化
68
- if (lines.length > 1)
69
- return;
70
- // 因为撤销导致的状态变更 -> 取消
71
- if (lines.length === 0)
72
- return this.change2Cancel(false);
73
- this.change2Done();
74
- }
75
- });
76
51
  Object.defineProperty(this, "modeChangeHandler", {
77
52
  enumerable: true,
78
53
  configurable: true,
79
54
  writable: true,
80
55
  value: (mode) => {
81
- mode === 'Watch' ? this.change2Add() : this.change2Cancel();
56
+ mode === 'Watch' ? this.change2Add() : this.change2Done();
82
57
  }
83
58
  });
84
59
  this.measureController = measureController;
@@ -88,61 +63,64 @@ export class MainBtnController {
88
63
  Object.assign(this.mainElement.mainItem.style, mainItemStyle);
89
64
  this.change2Add();
90
65
  this.measureController.hook.on('modeChange', this.modeChangeHandler);
91
- this.mainElement.mainIcon.addEventListener('click', this.onClick);
92
- this.mainElement.mainIcon.addEventListener('mouseenter', this.onMouseEnter);
93
- this.mainElement.mainIcon.addEventListener('mouseleave', this.onMouseLeave);
66
+ this.mainElement.mainItem.addEventListener('click', this.onClick);
67
+ this.mainElement.mainItem.addEventListener('mouseenter', this.onMouseEnter);
68
+ this.mainElement.mainItem.addEventListener('mouseleave', this.onMouseLeave);
94
69
  }
95
70
  dispose() {
96
71
  this.measureController.hook.off('modeChange', this.modeChangeHandler);
97
- this.measureController.hook.off('editedLineChange', this.editedLineChangeHandler);
98
- this.mainElement.mainIcon.removeEventListener('click', this.onClick);
99
- this.mainElement.mainIcon.removeEventListener('mouseenter', this.onMouseEnter);
100
- this.mainElement.mainIcon.removeEventListener('mouseleave', this.onMouseLeave);
72
+ this.mainElement.mainItem.removeEventListener('click', this.onClick);
73
+ this.mainElement.mainItem.removeEventListener('mouseenter', this.onMouseEnter);
74
+ this.mainElement.mainItem.removeEventListener('mouseleave', this.onMouseLeave);
101
75
  }
102
76
  getMainElement() {
103
77
  const mainTextDom = this.container.querySelector('.fpm__main-text');
104
78
  const mainItem = this.container.querySelector('.fpm__main');
105
79
  const mainIcon = this.container.querySelector('.fpm__main-icon');
106
- const pathDom = mainItem === null || mainItem === void 0 ? void 0 : mainItem.querySelector('.fpm__main-icon-path');
107
- const maskWhiteRect = mainIcon === null || mainIcon === void 0 ? void 0 : mainIcon.querySelector('#fpm__main-icon-mask-white');
108
- if (!mainItem || !mainTextDom || !mainIcon || !pathDom || !maskWhiteRect)
80
+ if (!mainItem || !mainTextDom || !mainIcon)
109
81
  throw new Error('cannot find dom');
110
- return { mainTextDom, mainItem, mainIcon, pathDom, maskWhiteRect };
82
+ return { mainTextDom, mainItem, mainIcon };
111
83
  }
112
84
  change2Add() {
113
- this.measureController.hook.off('editedLineChange', this.editedLineChangeHandler);
114
- const { mainIcon, mainTextDom, pathDom } = this.mainElement;
115
- mainIcon.style.transition = mainTextDom.innerText === '完成' ? 'none' : 'transform 300ms ease-in-out';
116
- mainIcon.style.transform = 'rotate(0deg)';
117
- mainTextDom.innerText = '添加';
118
- pathDom === null || pathDom === void 0 ? void 0 : pathDom.setAttribute('d', MAIN_NORMAL_PATH);
119
- }
120
- change2Cancel(withAnime = true) {
121
- const { mainIcon, mainTextDom, pathDom } = this.mainElement;
122
- pathDom.setAttribute('d', MAIN_NORMAL_PATH);
123
- pathDom.setAttribute('mask', '');
124
- mainIcon.style.transition = withAnime ? 'transform 300ms ease-in-out' : 'none';
125
- mainIcon.style.transform = 'rotate(45deg)';
126
- mainTextDom && (mainTextDom.innerText = '取消');
127
- this.measureController.hook.on('editedLineChange', this.editedLineChangeHandler);
85
+ const { mainIcon, mainTextDom } = this.mainElement;
86
+ if (mainIcon.className.includes('fpm__main__start'))
87
+ return;
88
+ if (mainIcon.className.includes('fpm__main__end')) {
89
+ mainIcon.style.transform = `scale(0.8)`;
90
+ if (mainTextDom.className.includes('fpm__main-text__show')) {
91
+ mainTextDom.classList.replace('fpm__main-text__show', 'fpm__main-text__hide');
92
+ }
93
+ else {
94
+ mainTextDom.classList.add('fpm__main-text__hide');
95
+ }
96
+ setTimeout(() => {
97
+ mainIcon.classList.replace('fpm__main__end', 'fpm__main__start');
98
+ mainIcon.style.transform = 'scale(1)';
99
+ mainTextDom.innerText = '开始';
100
+ mainTextDom.classList.replace('fpm__main-text__hide', 'fpm__main-text__show');
101
+ }, 200);
102
+ }
128
103
  }
129
104
  change2Done() {
130
- var _a;
131
- const { mainTextDom, mainIcon, pathDom, maskWhiteRect } = this.getMainElement();
132
- if (mainTextDom.innerText === '完成')
105
+ const { mainTextDom, mainIcon } = this.getMainElement();
106
+ if (mainTextDom.innerText === '结束')
107
+ return;
108
+ if (mainIcon.className.includes('fpm__main__end'))
133
109
  return;
134
- mainIcon.style.transition = 'none';
135
- mainIcon.style.transform = 'rotate(0deg)';
136
- mainTextDom.innerText = '完成';
137
- pathDom.setAttribute('d', MAIN_DONE_PATH);
138
- pathDom.setAttribute('mask', `url(#fpm__main-icon-mask)`);
139
- (_a = this.mainIconMaskTween) === null || _a === void 0 ? void 0 : _a.dispose();
140
- this.mainIconMaskTween = tweenProgress()
141
- .easing(TWEEN.Easing.Quartic.InOut)
142
- .onUpdate(({ progress }) => {
143
- maskWhiteRect.setAttribute('width', (progress * 30).toString());
144
- })
145
- .onComplete(() => { var _a; return (_a = this.mainIconMaskTween) === null || _a === void 0 ? void 0 : _a.dispose(); })
146
- .play();
110
+ if (mainIcon.className.includes('fpm__main__start')) {
111
+ mainIcon.style.transform = `scale(0.8)`;
112
+ if (mainTextDom.className.includes('fpm__main-text__show')) {
113
+ mainTextDom.classList.replace('fpm__main-text__show', 'fpm__main-text__hide');
114
+ }
115
+ else {
116
+ mainTextDom.classList.add('fpm__main-text__hide');
117
+ }
118
+ setTimeout(() => {
119
+ mainIcon.classList.replace('fpm__main__start', 'fpm__main__end');
120
+ mainIcon.style.transform = 'scale(1)';
121
+ mainTextDom.innerText = '结束';
122
+ mainTextDom.classList.replace('fpm__main-text__hide', 'fpm__main-text__show');
123
+ }, 200);
124
+ }
147
125
  }
148
126
  }
@@ -37,11 +37,14 @@ export default class Revoke {
37
37
  configurable: true,
38
38
  writable: true,
39
39
  value: (mode) => {
40
- if (mode !== 'Edit') {
40
+ if (mode !== 'Edit' && this.revokeItem.className.includes('enabled')) {
41
41
  this.revokeItem.classList.remove('enabled');
42
42
  return;
43
43
  }
44
- this.revokeItem.classList.add('enabled');
44
+ // 开始测量标记一个点后才能撤销
45
+ this.measureController.hook.on('anchorChange', (anchor) => {
46
+ anchor && this.revokeItem.classList.add('enabled');
47
+ });
45
48
  }
46
49
  });
47
50
  Object.defineProperty(this, "handleRevoke", {
@@ -60,11 +63,11 @@ export default class Revoke {
60
63
  throw new Error('不正确的选择器');
61
64
  this.revokeIcon = revokeIcon;
62
65
  this.revokeItem = revokeItem;
63
- this.revokeIcon.addEventListener('click', this.onClick);
66
+ this.revokeItem.addEventListener('click', this.onClick);
64
67
  measureController.hook.on('modeChange', this.onModeChange);
65
68
  }
66
69
  dispose() {
67
- this.revokeIcon.removeEventListener('click', this.onClick);
70
+ this.revokeItem.removeEventListener('click', this.onClick);
68
71
  this.measureController.hook.off('modeChange', this.onModeChange);
69
72
  }
70
73
  }
@@ -1,8 +1,8 @@
1
1
  import htmlString from './HTML';
2
2
  import mobileHTMLString from './mobileHTML';
3
- import { uiWrapperStyle, operatingSpaceStyle, controllerBackgroundStyle, buttonGroupStyle, exitIconStyle, exitItemStyle, textStyle, } from './style';
3
+ import { uiWrapperStyle, operatingSpaceStyle, controllerBackgroundStyle, exitIconStyle, exitItemStyle, textStyle, } from './style';
4
4
  import { MainBtnController } from './MainBtnController';
5
- import { NewMainBtnController } from './NewMainBtnController';
5
+ import { mobileMainBtnController } from './mobileMainBtnController';
6
6
  import Revoke from './Revoke';
7
7
  export class UIController {
8
8
  constructor(measureController, params) {
@@ -57,17 +57,17 @@ export class UIController {
57
57
  Object.assign(exitIcon === null || exitIcon === void 0 ? void 0 : exitIcon.style, exitIconStyle);
58
58
  }
59
59
  const onMouseEnter = () => (exitItem.style.opacity = '1');
60
- const onMouseLeave = () => (exitItem.style.opacity = '0.7');
60
+ const onMouseLeave = () => (exitItem.style.opacity = '0.85');
61
61
  const handleClick = () => {
62
62
  this.measureController.disable();
63
63
  };
64
- exitIcon.addEventListener('click', handleClick);
65
- exitIcon.addEventListener('mouseenter', onMouseEnter);
66
- exitIcon.addEventListener('mouseleave', onMouseLeave);
64
+ exitItem.addEventListener('click', handleClick);
65
+ exitItem.addEventListener('mouseenter', onMouseEnter);
66
+ exitItem.addEventListener('mouseleave', onMouseLeave);
67
67
  return () => {
68
- exitIcon.removeEventListener('click', handleClick);
69
- exitIcon.removeEventListener('mouseenter', onMouseEnter);
70
- exitIcon.removeEventListener('mouseleave', onMouseLeave);
68
+ exitItem.removeEventListener('click', handleClick);
69
+ exitItem.removeEventListener('mouseenter', onMouseEnter);
70
+ exitItem.removeEventListener('mouseleave', onMouseLeave);
71
71
  };
72
72
  }
73
73
  });
@@ -78,13 +78,11 @@ export class UIController {
78
78
  this.container.classList.add('fpm__ui-controller', this.mode);
79
79
  params.container.appendChild(this.container);
80
80
  const textDoms = this.container.querySelectorAll('.fpm__text');
81
- const UIItems = this.container.querySelectorAll('.fpm__ui-item');
82
81
  const bgDom = this.container.querySelector('.fpm_ui-bg');
83
82
  const operatingSpaceDom = this.container.querySelector('.fpm_operating-space');
84
83
  Object.assign(bgDom === null || bgDom === void 0 ? void 0 : bgDom.style, controllerBackgroundStyle);
85
84
  Object.assign(operatingSpaceDom === null || operatingSpaceDom === void 0 ? void 0 : operatingSpaceDom.style, operatingSpaceStyle);
86
85
  Object.assign(this.container.style, uiWrapperStyle);
87
- UIItems.forEach((item) => Object.assign(item.style, buttonGroupStyle));
88
86
  textDoms.forEach((item) => Object.assign(item.style, textStyle));
89
87
  }
90
88
  dispose() {
@@ -100,7 +98,7 @@ export class UIController {
100
98
  this.mainController = new MainBtnController(this.measureController, this.container);
101
99
  }
102
100
  else {
103
- this.mainController = new NewMainBtnController(this.measureController, this.container);
101
+ this.mainController = new mobileMainBtnController(this.measureController, this.container);
104
102
  }
105
103
  this.disposers.push(this.handleExit());
106
104
  return this;
@@ -1,2 +1,4 @@
1
+ export declare const startIconImage = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxmaWx0ZXIgeD0iLTUuMyUiIHk9Ii01LjMlIiB3aWR0aD0iMTEwLjUlIiBoZWlnaHQ9IjExMC41JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19hIj48ZmVPZmZzZXQgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93Qmx1ck91dGVyMSIgaW4yPSJTb3VyY2VBbHBoYSIgb3BlcmF0b3I9Im91dCIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIi8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjUgMCIgaW49InNoYWRvd0JsdXJPdXRlcjEiLz48L2ZpbHRlcj48ZmlsdGVyIHg9Ii0xMS40JSIgeT0iLTExLjQlIiB3aWR0aD0iMTIyLjklIiBoZWlnaHQ9IjEyMi45JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19jIj48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0LjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIi8+PGZlT2Zmc2V0IGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4zIDAiIGluPSJzaGFkb3dJbm5lcklubmVyMSIvPjwvZmlsdGVyPjxmaWx0ZXIgeD0iLTEyNi42JSIgeT0iLTMzNy41JSIgd2lkdGg9IjM1My4xJSIgaGVpZ2h0PSI3NzUlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJwcmVmaXhfX2UiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjE2IiBpbj0iU291cmNlR3JhcGhpYyIvPjwvZmlsdGVyPjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19kIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii43IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2YiPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48Y2lyY2xlIGlkPSJwcmVmaXhfX2IiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC40NDQiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBmaWxsPSIjMDAwIiBmaWx0ZXI9InVybCgjcHJlZml4X19jKSIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjxjaXJjbGUgc3Ryb2tlPSJ1cmwoI3ByZWZpeF9fZCkiIHN0cm9rZS13aWR0aD0iLjQiIGZpbGwtb3BhY2l0eT0iLjI0MSIgZmlsbD0iI0ZGRiIgc3Ryb2tlLWxpbmVqb2luPSJzcXVhcmUiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC4yNDQiLz48ZWxsaXBzZSBmaWxsPSIjRkZGIiBvcGFjaXR5PSIuNTk2IiBmaWx0ZXI9InVybCgjcHJlZml4X19lKSIgY3g9IjM2IiBjeT0iMzYiIHJ4PSIxOC45NjMiIHJ5PSI3LjExMSIvPjxwYXRoIGQ9Ik0zNiAwQzE2LjExOCAwIDAgMTYuMTE4IDAgMzZzMTYuMTE4IDM2IDM2IDM2IDM2LTE2LjExOCAzNi0zNlM1NS44ODIgMCAzNiAwem0wIDQuNDQ0YzE3LjQyOCAwIDMxLjU1NiAxNC4xMjggMzEuNTU2IDMxLjU1NlM1My40MjggNjcuNTU2IDM2IDY3LjU1NiA0LjQ0NCA1My40MjggNC40NDQgMzYgMTguNTcyIDQuNDQ0IDM2IDQuNDQ0eiIgZmlsbD0idXJsKCNwcmVmaXhfX2YpIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L2c+PC9zdmc+";
2
+ export declare const endIconImage = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxNS41MSUiIHkxPSIxMi40OTclIiB4Mj0iODUuMjY1JSIgeTI9Ijg2LjE0MyUiIGlkPSJwcmVmaXhfX2IiPjxzdG9wIHN0b3AtY29sb3I9IiM5NUFFRkYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjNjM4NkZGIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjOTlBRUZGIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiM5OUFFRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2QiPjxzdG9wIHN0b3AtY29sb3I9IiM4Nzk3RDIiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzYyNzdDNyIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48ZmlsdGVyIHg9Ii02My4zJSIgeT0iLTE2OC44JSIgd2lkdGg9IjIyNi42JSIgaGVpZ2h0PSI0MzcuNSUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9InByZWZpeF9fYyI+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iOCIgaW49IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48Y2lyY2xlIHN0cm9rZT0idXJsKCNwcmVmaXhfX2EpIiBzdHJva2Utd2lkdGg9Ii40IiBmaWxsPSJ1cmwoI3ByZWZpeF9fYikiIG9wYWNpdHk9Ii43IiBjeD0iMzYiIGN5PSIzNiIgcj0iMjguMjQ0Ii8+PGVsbGlwc2UgZmlsbD0iIzdDOTBEQSIgb3BhY2l0eT0iLjU5NiIgZmlsdGVyPSJ1cmwoI3ByZWZpeF9fYykiIGN4PSIzNiIgY3k9IjM2IiByeD0iMTguOTYzIiByeT0iNy4xMTEiLz48cGF0aCBkPSJNMzYgMEMxNi4xMTggMCAwIDE2LjExOCAwIDM2czE2LjExOCAzNiAzNiAzNiAzNi0xNi4xMTggMzYtMzZTNTUuODgyIDAgMzYgMHptMCA0LjQ0NGMxNy40MjggMCAzMS41NTYgMTQuMTI4IDMxLjU1NiAzMS41NTZTNTMuNDI4IDY3LjU1NiAzNiA2Ny41NTYgNC40NDQgNTMuNDI4IDQuNDQ0IDM2IDE4LjU3MiA0LjQ0NCAzNiA0LjQ0NHoiIGZpbGw9InVybCgjcHJlZml4X19kKSIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==";
1
3
  declare const _default: string;
2
4
  export default _default;
@@ -1,5 +1,5 @@
1
- const startIconImage = `data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxmaWx0ZXIgeD0iLTUuMyUiIHk9Ii01LjMlIiB3aWR0aD0iMTEwLjUlIiBoZWlnaHQ9IjExMC41JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19hIj48ZmVPZmZzZXQgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93Qmx1ck91dGVyMSIgaW4yPSJTb3VyY2VBbHBoYSIgb3BlcmF0b3I9Im91dCIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIi8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjUgMCIgaW49InNoYWRvd0JsdXJPdXRlcjEiLz48L2ZpbHRlcj48ZmlsdGVyIHg9Ii0xMS40JSIgeT0iLTExLjQlIiB3aWR0aD0iMTIyLjklIiBoZWlnaHQ9IjEyMi45JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19jIj48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0LjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIi8+PGZlT2Zmc2V0IGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4zIDAiIGluPSJzaGFkb3dJbm5lcklubmVyMSIvPjwvZmlsdGVyPjxmaWx0ZXIgeD0iLTEyNi42JSIgeT0iLTMzNy41JSIgd2lkdGg9IjM1My4xJSIgaGVpZ2h0PSI3NzUlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJwcmVmaXhfX2UiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjE2IiBpbj0iU291cmNlR3JhcGhpYyIvPjwvZmlsdGVyPjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19kIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii43IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2YiPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48Y2lyY2xlIGlkPSJwcmVmaXhfX2IiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC40NDQiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBmaWxsPSIjMDAwIiBmaWx0ZXI9InVybCgjcHJlZml4X19jKSIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjxjaXJjbGUgc3Ryb2tlPSJ1cmwoI3ByZWZpeF9fZCkiIHN0cm9rZS13aWR0aD0iLjQiIGZpbGwtb3BhY2l0eT0iLjI0MSIgZmlsbD0iI0ZGRiIgc3Ryb2tlLWxpbmVqb2luPSJzcXVhcmUiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC4yNDQiLz48ZWxsaXBzZSBmaWxsPSIjRkZGIiBvcGFjaXR5PSIuNTk2IiBmaWx0ZXI9InVybCgjcHJlZml4X19lKSIgY3g9IjM2IiBjeT0iMzYiIHJ4PSIxOC45NjMiIHJ5PSI3LjExMSIvPjxwYXRoIGQ9Ik0zNiAwQzE2LjExOCAwIDAgMTYuMTE4IDAgMzZzMTYuMTE4IDM2IDM2IDM2IDM2LTE2LjExOCAzNi0zNlM1NS44ODIgMCAzNiAwem0wIDQuNDQ0YzE3LjQyOCAwIDMxLjU1NiAxNC4xMjggMzEuNTU2IDMxLjU1NlM1My40MjggNjcuNTU2IDM2IDY3LjU1NiA0LjQ0NCA1My40MjggNC40NDQgMzYgMTguNTcyIDQuNDQ0IDM2IDQuNDQ0eiIgZmlsbD0idXJsKCNwcmVmaXhfX2YpIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L2c+PC9zdmc+`;
2
- const endIconImage = `data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxNS41MSUiIHkxPSIxMi40OTclIiB4Mj0iODUuMjY1JSIgeTI9Ijg2LjE0MyUiIGlkPSJwcmVmaXhfX2IiPjxzdG9wIHN0b3AtY29sb3I9IiM5NUFFRkYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjNjM4NkZGIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjOTlBRUZGIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiM5OUFFRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2QiPjxzdG9wIHN0b3AtY29sb3I9IiM4Nzk3RDIiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzYyNzdDNyIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48ZmlsdGVyIHg9Ii02My4zJSIgeT0iLTE2OC44JSIgd2lkdGg9IjIyNi42JSIgaGVpZ2h0PSI0MzcuNSUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9InByZWZpeF9fYyI+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iOCIgaW49IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48Y2lyY2xlIHN0cm9rZT0idXJsKCNwcmVmaXhfX2EpIiBzdHJva2Utd2lkdGg9Ii40IiBmaWxsPSJ1cmwoI3ByZWZpeF9fYikiIG9wYWNpdHk9Ii43IiBjeD0iMzYiIGN5PSIzNiIgcj0iMjguMjQ0Ii8+PGVsbGlwc2UgZmlsbD0iIzdDOTBEQSIgb3BhY2l0eT0iLjU5NiIgZmlsdGVyPSJ1cmwoI3ByZWZpeF9fYykiIGN4PSIzNiIgY3k9IjM2IiByeD0iMTguOTYzIiByeT0iNy4xMTEiLz48cGF0aCBkPSJNMzYgMEMxNi4xMTggMCAwIDE2LjExOCAwIDM2czE2LjExOCAzNiAzNiAzNiAzNi0xNi4xMTggMzYtMzZTNTUuODgyIDAgMzYgMHptMCA0LjQ0NGMxNy40MjggMCAzMS41NTYgMTQuMTI4IDMxLjU1NiAzMS41NTZTNTMuNDI4IDY3LjU1NiAzNiA2Ny41NTYgNC40NDQgNTMuNDI4IDQuNDQ0IDM2IDE4LjU3MiA0LjQ0NCAzNiA0LjQ0NHoiIGZpbGw9InVybCgjcHJlZml4X19kKSIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==`;
1
+ export const startIconImage = `data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxmaWx0ZXIgeD0iLTUuMyUiIHk9Ii01LjMlIiB3aWR0aD0iMTEwLjUlIiBoZWlnaHQ9IjExMC41JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19hIj48ZmVPZmZzZXQgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93Qmx1ck91dGVyMSIgaW4yPSJTb3VyY2VBbHBoYSIgb3BlcmF0b3I9Im91dCIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIi8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjUgMCIgaW49InNoYWRvd0JsdXJPdXRlcjEiLz48L2ZpbHRlcj48ZmlsdGVyIHg9Ii0xMS40JSIgeT0iLTExLjQlIiB3aWR0aD0iMTIyLjklIiBoZWlnaHQ9IjEyMi45JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19jIj48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0LjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIi8+PGZlT2Zmc2V0IGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4zIDAiIGluPSJzaGFkb3dJbm5lcklubmVyMSIvPjwvZmlsdGVyPjxmaWx0ZXIgeD0iLTEyNi42JSIgeT0iLTMzNy41JSIgd2lkdGg9IjM1My4xJSIgaGVpZ2h0PSI3NzUlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJwcmVmaXhfX2UiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjE2IiBpbj0iU291cmNlR3JhcGhpYyIvPjwvZmlsdGVyPjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19kIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii43IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2YiPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48Y2lyY2xlIGlkPSJwcmVmaXhfX2IiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC40NDQiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBmaWxsPSIjMDAwIiBmaWx0ZXI9InVybCgjcHJlZml4X19jKSIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjxjaXJjbGUgc3Ryb2tlPSJ1cmwoI3ByZWZpeF9fZCkiIHN0cm9rZS13aWR0aD0iLjQiIGZpbGwtb3BhY2l0eT0iLjI0MSIgZmlsbD0iI0ZGRiIgc3Ryb2tlLWxpbmVqb2luPSJzcXVhcmUiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC4yNDQiLz48ZWxsaXBzZSBmaWxsPSIjRkZGIiBvcGFjaXR5PSIuNTk2IiBmaWx0ZXI9InVybCgjcHJlZml4X19lKSIgY3g9IjM2IiBjeT0iMzYiIHJ4PSIxOC45NjMiIHJ5PSI3LjExMSIvPjxwYXRoIGQ9Ik0zNiAwQzE2LjExOCAwIDAgMTYuMTE4IDAgMzZzMTYuMTE4IDM2IDM2IDM2IDM2LTE2LjExOCAzNi0zNlM1NS44ODIgMCAzNiAwem0wIDQuNDQ0YzE3LjQyOCAwIDMxLjU1NiAxNC4xMjggMzEuNTU2IDMxLjU1NlM1My40MjggNjcuNTU2IDM2IDY3LjU1NiA0LjQ0NCA1My40MjggNC40NDQgMzYgMTguNTcyIDQuNDQ0IDM2IDQuNDQ0eiIgZmlsbD0idXJsKCNwcmVmaXhfX2YpIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L2c+PC9zdmc+`;
2
+ export const endIconImage = `data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxNS41MSUiIHkxPSIxMi40OTclIiB4Mj0iODUuMjY1JSIgeTI9Ijg2LjE0MyUiIGlkPSJwcmVmaXhfX2IiPjxzdG9wIHN0b3AtY29sb3I9IiM5NUFFRkYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjNjM4NkZGIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjOTlBRUZGIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiM5OUFFRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2QiPjxzdG9wIHN0b3AtY29sb3I9IiM4Nzk3RDIiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzYyNzdDNyIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48ZmlsdGVyIHg9Ii02My4zJSIgeT0iLTE2OC44JSIgd2lkdGg9IjIyNi42JSIgaGVpZ2h0PSI0MzcuNSUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9InByZWZpeF9fYyI+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iOCIgaW49IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48Y2lyY2xlIHN0cm9rZT0idXJsKCNwcmVmaXhfX2EpIiBzdHJva2Utd2lkdGg9Ii40IiBmaWxsPSJ1cmwoI3ByZWZpeF9fYikiIG9wYWNpdHk9Ii43IiBjeD0iMzYiIGN5PSIzNiIgcj0iMjguMjQ0Ii8+PGVsbGlwc2UgZmlsbD0iIzdDOTBEQSIgb3BhY2l0eT0iLjU5NiIgZmlsdGVyPSJ1cmwoI3ByZWZpeF9fYykiIGN4PSIzNiIgY3k9IjM2IiByeD0iMTguOTYzIiByeT0iNy4xMTEiLz48cGF0aCBkPSJNMzYgMEMxNi4xMTggMCAwIDE2LjExOCAwIDM2czE2LjExOCAzNiAzNiAzNiAzNi0xNi4xMTggMzYtMzZTNTUuODgyIDAgMzYgMHptMCA0LjQ0NGMxNy40MjggMCAzMS41NTYgMTQuMTI4IDMxLjU1NiAzMS41NTZTNTMuNDI4IDY3LjU1NiAzNiA2Ny41NTYgNC40NDQgNTMuNDI4IDQuNDQ0IDM2IDE4LjU3MiA0LjQ0NCAzNiA0LjQ0NHoiIGZpbGw9InVybCgjcHJlZml4X19kKSIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==`;
3
3
  const exitIconSvg = `
4
4
  <svg class="fpm__exit-icon width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
5
5
  <defs>
@@ -1,5 +1,5 @@
1
1
  import type MeasureController from '../../Controller';
2
- export declare class NewMainBtnController {
2
+ export declare class mobileMainBtnController {
3
3
  private container;
4
4
  private measureController;
5
5
  private mainElement;
@@ -1,5 +1,5 @@
1
- import { newMainIconStyle, newMainItemStyle } from './style';
2
- export class NewMainBtnController {
1
+ import { mainIconStyle, mainItemStyle } from './style';
2
+ export class mobileMainBtnController {
3
3
  constructor(measureController, container) {
4
4
  Object.defineProperty(this, "container", {
5
5
  enumerable: true,
@@ -37,8 +37,8 @@ export class NewMainBtnController {
37
37
  this.measureController = measureController;
38
38
  this.container = container;
39
39
  this.mainElement = this.getMainElement();
40
- Object.assign(this.mainElement.mainIcon.style, newMainIconStyle);
41
- Object.assign(this.mainElement.mainItem.style, newMainItemStyle);
40
+ Object.assign(this.mainElement.mainIcon.style, mainIconStyle);
41
+ Object.assign(this.mainElement.mainItem.style, mainItemStyle);
42
42
  this.change2Add();
43
43
  this.mainElement.mainItem.addEventListener('click', this.onClick);
44
44
  }
@@ -8,12 +8,9 @@ export declare const exitImage = "//vrlab-static.ljcdn.com/release/web/measure/e
8
8
  export declare const revokeImage = "//vrlab-static.ljcdn.com/release/web/measure/revoke.3e424843.png";
9
9
  export declare const uiWrapperStyle: Partial<CSSStyleDeclaration>;
10
10
  export declare const operatingSpaceStyle: Partial<CSSStyleDeclaration>;
11
- export declare const buttonGroupStyle: Partial<CSSStyleDeclaration>;
12
11
  export declare const controllerBackgroundStyle: Partial<CSSStyleDeclaration>;
13
12
  export declare const mainItemStyle: Partial<CSSStyleDeclaration>;
14
- export declare const newMainItemStyle: Partial<CSSStyleDeclaration>;
15
13
  export declare const exitItemStyle: Partial<CSSStyleDeclaration>;
16
14
  export declare const mainIconStyle: Partial<CSSStyleDeclaration>;
17
- export declare const newMainIconStyle: Partial<CSSStyleDeclaration>;
18
15
  export declare const exitIconStyle: Partial<CSSStyleDeclaration>;
19
16
  export declare const textStyle: Partial<CSSStyleDeclaration>;
@@ -25,19 +25,12 @@ export const operatingSpaceStyle = {
25
25
  height: '89px',
26
26
  display: 'flex',
27
27
  justifyContent: 'space-between',
28
- fontSize: '16px',
28
+ alignItems: 'center',
29
+ fontSize: '14px',
29
30
  pointerEvents: 'all',
30
31
  color: '#fff',
31
32
  zIndex: '10',
32
33
  };
33
- export const buttonGroupStyle = {
34
- height: '100%',
35
- width: 'max-content',
36
- display: 'flex',
37
- flexDirection: 'column',
38
- justifyContent: 'space-between',
39
- alignItems: 'center',
40
- };
41
34
  // 操作区下方的背景
42
35
  export const controllerBackgroundStyle = {
43
36
  position: 'absolute',
@@ -51,23 +44,13 @@ export const controllerBackgroundStyle = {
51
44
  };
52
45
  // item
53
46
  export const mainItemStyle = {
54
- margin: '0 80px',
55
- opacity: '0.7',
56
- };
57
- export const newMainItemStyle = {
58
- margin: '0 80px',
47
+ margin: '0 64px',
59
48
  };
60
49
  export const exitItemStyle = {
61
- opacity: '0.7',
50
+ opacity: '0.85',
62
51
  };
63
52
  // icon
64
53
  export const mainIconStyle = {
65
- width: '60px',
66
- height: '60px',
67
- backgroundSize: '100%',
68
- cursor: 'pointer',
69
- };
70
- export const newMainIconStyle = {
71
54
  width: '72px',
72
55
  height: '72px',
73
56
  backgroundSize: '100%',
@@ -75,9 +58,9 @@ export const newMainIconStyle = {
75
58
  transition: 'all 200ms ease-in-out',
76
59
  };
77
60
  export const exitIconStyle = {
78
- width: '40px',
79
- height: '40px',
80
- marginTop: '10px',
61
+ width: '24px',
62
+ height: '24px',
63
+ marginRight: '4px',
81
64
  backgroundSize: '100%',
82
65
  cursor: 'pointer',
83
66
  };