plotboilerplate 1.15.0 → 1.17.1

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 (237) hide show
  1. package/README.md +1 -0
  2. package/changelog.md +65 -0
  3. package/dist/index.esm.js +760 -667
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/index.esm.min.js +1 -1
  6. package/dist/index.esm.min.js.map +1 -1
  7. package/dist/plotboilerplate.browser.min.js +1 -1
  8. package/dist/plotboilerplate.browser.min.js.map +1 -1
  9. package/dist/plotboilerplate.js +765 -571
  10. package/dist/plotboilerplate.min.js +1 -1
  11. package/package.json +1 -1
  12. package/src/cjs/BezierPath.d.ts +32 -14
  13. package/src/cjs/BezierPath.js +65 -24
  14. package/src/cjs/BezierPath.js.map +1 -1
  15. package/src/cjs/Bounds.d.ts +33 -1
  16. package/src/cjs/Bounds.js +38 -1
  17. package/src/cjs/Bounds.js.map +1 -1
  18. package/src/cjs/Circle.d.ts +15 -13
  19. package/src/cjs/Circle.js +16 -34
  20. package/src/cjs/Circle.js.map +1 -1
  21. package/src/cjs/CircleSector.d.ts +17 -16
  22. package/src/cjs/CircleSector.js +12 -24
  23. package/src/cjs/CircleSector.js.map +1 -1
  24. package/src/cjs/CubicBezierCurve.d.ts +16 -15
  25. package/src/cjs/CubicBezierCurve.js +57 -94
  26. package/src/cjs/CubicBezierCurve.js.map +1 -1
  27. package/src/cjs/KeyHandler.d.ts +10 -3
  28. package/src/cjs/KeyHandler.js +28 -23
  29. package/src/cjs/KeyHandler.js.map +1 -1
  30. package/src/cjs/Line.d.ts +2 -15
  31. package/src/cjs/Line.js +6 -31
  32. package/src/cjs/Line.js.map +1 -1
  33. package/src/cjs/MouseHandler.js +43 -53
  34. package/src/cjs/MouseHandler.js.map +1 -1
  35. package/src/cjs/PBImage.d.ts +15 -13
  36. package/src/cjs/PBImage.js +11 -15
  37. package/src/cjs/PBImage.js.map +1 -1
  38. package/src/cjs/PBText.d.ts +13 -12
  39. package/src/cjs/PBText.js +8 -12
  40. package/src/cjs/PBText.js.map +1 -1
  41. package/src/cjs/PlotBoilerplate.d.ts +3 -1
  42. package/src/cjs/PlotBoilerplate.js +9 -2
  43. package/src/cjs/PlotBoilerplate.js.map +1 -1
  44. package/src/cjs/Polygon.d.ts +23 -14
  45. package/src/cjs/Polygon.js +22 -35
  46. package/src/cjs/Polygon.js.map +1 -1
  47. package/src/cjs/Triangle.d.ts +15 -13
  48. package/src/cjs/Triangle.js +23 -64
  49. package/src/cjs/Triangle.js.map +1 -1
  50. package/src/cjs/VEllipse.d.ts +14 -9
  51. package/src/cjs/VEllipse.js +10 -18
  52. package/src/cjs/VEllipse.js.map +1 -1
  53. package/src/cjs/VEllipseSector.d.ts +15 -1
  54. package/src/cjs/VEllipseSector.js +11 -1
  55. package/src/cjs/VEllipseSector.js.map +1 -1
  56. package/src/cjs/Vector.d.ts +3 -15
  57. package/src/cjs/Vector.js +9 -49
  58. package/src/cjs/Vector.js.map +1 -1
  59. package/src/cjs/VertTuple.d.ts +15 -1
  60. package/src/cjs/VertTuple.js +14 -19
  61. package/src/cjs/VertTuple.js.map +1 -1
  62. package/src/cjs/Vertex.d.ts +23 -13
  63. package/src/cjs/Vertex.js +24 -22
  64. package/src/cjs/Vertex.js.map +1 -1
  65. package/src/cjs/VertexListeners.d.ts +12 -8
  66. package/src/cjs/VertexListeners.js +18 -25
  67. package/src/cjs/VertexListeners.js.map +1 -1
  68. package/src/cjs/draw.d.ts +45 -3
  69. package/src/cjs/draw.js +149 -6
  70. package/src/cjs/draw.js.map +1 -1
  71. package/src/cjs/drawgl.d.ts +41 -3
  72. package/src/cjs/drawgl.js +45 -3
  73. package/src/cjs/drawgl.js.map +1 -1
  74. package/src/cjs/drawutilssvg.d.ts +69 -4
  75. package/src/cjs/drawutilssvg.js +147 -16
  76. package/src/cjs/drawutilssvg.js.map +1 -1
  77. package/src/cjs/index.d.ts +0 -1
  78. package/src/cjs/index.js +0 -1
  79. package/src/cjs/index.js.map +1 -1
  80. package/src/cjs/interfaces/DrawLib.d.ts +64 -27
  81. package/src/cjs/interfaces/DrawLib.js +3 -0
  82. package/src/cjs/interfaces/DrawLib.js.map +1 -1
  83. package/src/cjs/interfaces/core.d.ts +2 -12
  84. package/src/cjs/interfaces/core.js +1 -0
  85. package/src/cjs/interfaces/core.js.map +1 -1
  86. package/src/cjs/module.d.ts +1 -3
  87. package/src/cjs/module.js +2 -5
  88. package/src/cjs/module.js.map +1 -1
  89. package/src/cjs/utils/creategui.js +16 -2
  90. package/src/cjs/utils/datastructures/Color.d.ts +3 -1
  91. package/src/cjs/utils/datastructures/Color.js +17 -6
  92. package/src/cjs/utils/datastructures/Color.js.map +1 -1
  93. package/src/cjs/utils/datastructures/Girih.d.ts +5 -0
  94. package/src/cjs/utils/datastructures/Girih.js +18 -14
  95. package/src/cjs/utils/datastructures/Girih.js.map +1 -1
  96. package/src/cjs/utils/datastructures/GirihPenroseRhombus.js +42 -25
  97. package/src/cjs/utils/datastructures/GirihPenroseRhombus.js.map +1 -1
  98. package/src/cjs/utils/datastructures/GirihTile.js +2 -13
  99. package/src/cjs/utils/datastructures/GirihTile.js.map +1 -1
  100. package/src/cjs/utils/helpers/BezierPathInteractionHelper.d.ts +17 -1
  101. package/src/cjs/utils/helpers/BezierPathInteractionHelper.js +50 -32
  102. package/src/cjs/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
  103. package/src/cjs/utils/io/DndFileHandler.d.ts +63 -0
  104. package/src/cjs/utils/io/DndFileHandler.js +112 -0
  105. package/src/cjs/utils/io/DndFileHandler.js.map +1 -0
  106. package/src/cjs/utils/io/FileDrop.d.ts +98 -0
  107. package/src/cjs/utils/io/FileDrop.js +142 -0
  108. package/src/cjs/utils/io/FileDrop.js.map +1 -0
  109. package/src/esm/BezierPath.d.ts +32 -14
  110. package/src/esm/BezierPath.js +65 -24
  111. package/src/esm/BezierPath.js.map +1 -1
  112. package/src/esm/Bounds.d.ts +33 -1
  113. package/src/esm/Bounds.js +38 -1
  114. package/src/esm/Bounds.js.map +1 -1
  115. package/src/esm/Circle.d.ts +15 -13
  116. package/src/esm/Circle.js +16 -34
  117. package/src/esm/Circle.js.map +1 -1
  118. package/src/esm/CircleSector.d.ts +17 -16
  119. package/src/esm/CircleSector.js +12 -24
  120. package/src/esm/CircleSector.js.map +1 -1
  121. package/src/esm/CubicBezierCurve.d.ts +16 -15
  122. package/src/esm/CubicBezierCurve.js +57 -94
  123. package/src/esm/CubicBezierCurve.js.map +1 -1
  124. package/src/esm/KeyHandler.d.ts +10 -3
  125. package/src/esm/KeyHandler.js +28 -23
  126. package/src/esm/KeyHandler.js.map +1 -1
  127. package/src/esm/Line.d.ts +2 -15
  128. package/src/esm/Line.js +6 -31
  129. package/src/esm/Line.js.map +1 -1
  130. package/src/esm/MouseHandler.js +43 -53
  131. package/src/esm/MouseHandler.js.map +1 -1
  132. package/src/esm/PBImage.d.ts +15 -13
  133. package/src/esm/PBImage.js +11 -15
  134. package/src/esm/PBImage.js.map +1 -1
  135. package/src/esm/PBText.d.ts +13 -12
  136. package/src/esm/PBText.js +8 -12
  137. package/src/esm/PBText.js.map +1 -1
  138. package/src/esm/PlotBoilerplate.d.ts +3 -1
  139. package/src/esm/PlotBoilerplate.js +9 -2
  140. package/src/esm/PlotBoilerplate.js.map +1 -1
  141. package/src/esm/Polygon.d.ts +23 -14
  142. package/src/esm/Polygon.js +22 -35
  143. package/src/esm/Polygon.js.map +1 -1
  144. package/src/esm/Triangle.d.ts +15 -13
  145. package/src/esm/Triangle.js +23 -64
  146. package/src/esm/Triangle.js.map +1 -1
  147. package/src/esm/VEllipse.d.ts +14 -9
  148. package/src/esm/VEllipse.js +10 -18
  149. package/src/esm/VEllipse.js.map +1 -1
  150. package/src/esm/VEllipseSector.d.ts +15 -1
  151. package/src/esm/VEllipseSector.js +11 -1
  152. package/src/esm/VEllipseSector.js.map +1 -1
  153. package/src/esm/Vector.d.ts +3 -15
  154. package/src/esm/Vector.js +9 -49
  155. package/src/esm/Vector.js.map +1 -1
  156. package/src/esm/VertTuple.d.ts +15 -1
  157. package/src/esm/VertTuple.js +14 -19
  158. package/src/esm/VertTuple.js.map +1 -1
  159. package/src/esm/Vertex.d.ts +23 -13
  160. package/src/esm/Vertex.js +24 -22
  161. package/src/esm/Vertex.js.map +1 -1
  162. package/src/esm/VertexListeners.d.ts +12 -8
  163. package/src/esm/VertexListeners.js +18 -25
  164. package/src/esm/VertexListeners.js.map +1 -1
  165. package/src/esm/draw.d.ts +45 -3
  166. package/src/esm/draw.js +147 -6
  167. package/src/esm/draw.js.map +1 -1
  168. package/src/esm/drawgl.d.ts +41 -3
  169. package/src/esm/drawgl.js +44 -3
  170. package/src/esm/drawgl.js.map +1 -1
  171. package/src/esm/drawutilssvg.d.ts +69 -4
  172. package/src/esm/drawutilssvg.js +146 -16
  173. package/src/esm/drawutilssvg.js.map +1 -1
  174. package/src/esm/index.d.ts +0 -1
  175. package/src/esm/index.js +0 -1
  176. package/src/esm/index.js.map +1 -1
  177. package/src/esm/interfaces/DrawLib.d.ts +64 -27
  178. package/src/esm/interfaces/DrawLib.js +3 -0
  179. package/src/esm/interfaces/DrawLib.js.map +1 -1
  180. package/src/esm/interfaces/core.d.ts +2 -12
  181. package/src/esm/interfaces/core.js +1 -0
  182. package/src/esm/interfaces/core.js.map +1 -1
  183. package/src/esm/module.d.ts +1 -3
  184. package/src/esm/module.js +5 -4
  185. package/src/esm/module.js.map +1 -1
  186. package/src/esm/utils/datastructures/Color.d.ts +3 -1
  187. package/src/esm/utils/datastructures/Color.js +17 -6
  188. package/src/esm/utils/datastructures/Color.js.map +1 -1
  189. package/src/esm/utils/datastructures/Girih.d.ts +5 -0
  190. package/src/esm/utils/datastructures/Girih.js +18 -14
  191. package/src/esm/utils/datastructures/Girih.js.map +1 -1
  192. package/src/esm/utils/datastructures/GirihPenroseRhombus.js +42 -25
  193. package/src/esm/utils/datastructures/GirihPenroseRhombus.js.map +1 -1
  194. package/src/esm/utils/datastructures/GirihTile.js +2 -13
  195. package/src/esm/utils/datastructures/GirihTile.js.map +1 -1
  196. package/src/esm/utils/helpers/BezierPathInteractionHelper.d.ts +17 -1
  197. package/src/esm/utils/helpers/BezierPathInteractionHelper.js +49 -32
  198. package/src/esm/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
  199. package/src/esm/utils/io/DndFileHandler.d.ts +63 -0
  200. package/src/esm/utils/io/DndFileHandler.js +106 -0
  201. package/src/esm/utils/io/DndFileHandler.js.map +1 -0
  202. package/src/esm/utils/io/FileDrop.d.ts +98 -0
  203. package/src/esm/utils/io/FileDrop.js +136 -0
  204. package/src/esm/utils/io/FileDrop.js.map +1 -0
  205. package/src/ts/BezierPath.ts +78 -22
  206. package/src/ts/Bounds.ts +40 -1
  207. package/src/ts/Circle.ts +187 -200
  208. package/src/ts/CircleSector.ts +141 -141
  209. package/src/ts/CubicBezierCurve.ts +738 -810
  210. package/src/ts/KeyHandler.ts +221 -212
  211. package/src/ts/Line.ts +48 -80
  212. package/src/ts/MouseHandler.ts +356 -368
  213. package/src/ts/PBImage.ts +67 -69
  214. package/src/ts/PBText.ts +16 -14
  215. package/src/ts/PlotBoilerplate.ts +9 -2
  216. package/src/ts/Polygon.ts +34 -34
  217. package/src/ts/Triangle.ts +444 -489
  218. package/src/ts/VEllipse.ts +18 -17
  219. package/src/ts/VEllipseSector.ts +20 -1
  220. package/src/ts/Vector.ts +124 -160
  221. package/src/ts/VertTuple.ts +333 -338
  222. package/src/ts/Vertex.ts +35 -21
  223. package/src/ts/VertexListeners.ts +248 -266
  224. package/src/ts/draw.ts +201 -6
  225. package/src/ts/drawgl.ts +47 -3
  226. package/src/ts/drawutilssvg.ts +187 -16
  227. package/src/ts/index.ts +0 -1
  228. package/src/ts/interfaces/DrawLib.ts +72 -27
  229. package/src/ts/interfaces/core.ts +3 -13
  230. package/src/ts/module.ts +2 -4
  231. package/src/ts/utils/datastructures/Color.ts +17 -6
  232. package/src/ts/utils/datastructures/Girih.ts +204 -209
  233. package/src/ts/utils/datastructures/GirihPenroseRhombus.ts +170 -152
  234. package/src/ts/utils/datastructures/GirihTile.ts +394 -419
  235. package/src/ts/utils/helpers/BezierPathInteractionHelper.ts +56 -34
  236. package/src/ts/utils/io/FileDrop.ts +178 -0
  237. package/src/ts/SVGBuilder.ts +0 -109
@@ -15,7 +15,11 @@
15
15
  * @modified 2021-11-12 Added `text()` params fontSize, fontFamily, rotation, textAlign.
16
16
  * @modified 2021-11-16 Added `text()` params fontWeight and fontStyle.
17
17
  * @modified 2021-11-19 Added the `color` param to the `label(...)` function.
18
+ * @modified 2022-02-03 Added the `lineWidth` param to the `crosshair` function.
19
+ * @modified 2022-02-03 Added the `cross(...)` function.
20
+ * @modified 2022-07-26 Adding `alpha` to the `image(...)` function.
18
21
  **/
22
+ import { Bounds } from "../Bounds";
19
23
  import { Polygon } from "../Polygon";
20
24
  import { Vertex } from "../Vertex";
21
25
  import { SVGPathParams, UID, XYCoords } from "./core";
@@ -104,7 +108,7 @@ export interface DrawLib<R> {
104
108
  * @param {number=1} lineWidth? - [optional] The line's width.
105
109
  * @return {void}
106
110
  * @instance
107
- * @memberof drawutils
111
+ * @memberof DrawLib
108
112
  **/
109
113
  line: (zA: Vertex, zB: Vertex, color: string, lineWidth?: number) => R;
110
114
  /**
@@ -117,7 +121,7 @@ export interface DrawLib<R> {
117
121
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
118
122
  * @return {void}
119
123
  * @instance
120
- * @memberof drawutils
124
+ * @memberof DrawLib
121
125
  **/
122
126
  arrow: (zA: Vertex, zB: Vertex, color: string, lineWidth?: number) => R;
123
127
  /**
@@ -129,11 +133,28 @@ export interface DrawLib<R> {
129
133
  * @param {Image} image - The image object to draw.
130
134
  * @param {Vertex} position - The position to draw the the upper left corner at.
131
135
  * @param {Vertex} size - The x/y-size to draw the image with.
136
+ * @param {number=1.0} alpha - (optional, default=0.0) The transparency (1.0=opaque, 0.0=transparent).
132
137
  * @return {void}
133
138
  * @instance
134
- * @memberof drawutils
139
+ * @memberof DrawLib
135
140
  **/
136
- image: (image: HTMLImageElement, position: Vertex, size: Vertex) => R;
141
+ image: (image: HTMLImageElement, position: Vertex, size: Vertex, alpha?: number) => R;
142
+ /**
143
+ * Draw an image at the given position with the given size.<br>
144
+ * <br>
145
+ * Note: SVG images may have resizing issues at the moment.Draw a line and an arrow at the end (zB) of the given line with the specified (CSS-) color.
146
+ *
147
+ * @method texturedPoly
148
+ * @param {Image} textureImage - The image object to draw.
149
+ * @param {Bounds} textureSize - The texture size to use; these are the original bounds to map the polygon vertices to.
150
+ * @param {Polygon} polygon - The polygon to use as clip path.
151
+ * @param {Vertex} polygonPosition - The polygon's position (relative), measured at the bounding box's center.
152
+ * @param {number} rotation - The rotation to use for the polygon (and for the texture).
153
+ * @return {void}
154
+ * @instance
155
+ * @memberof DrawLib
156
+ **/
157
+ texturedPoly: (textureImage: HTMLImageElement, textureSize: Bounds, polygon: Polygon, polygonPosition: Vertex, rotation: number) => R;
137
158
  /**
138
159
  * Draw the given (cubic) bézier curve.
139
160
  *
@@ -146,7 +167,7 @@ export interface DrawLib<R> {
146
167
  * @param {number} lineWidth - (optional) The line width to use.
147
168
  * @return {void}
148
169
  * @instance
149
- * @memberof drawutils
170
+ * @memberof DrawLib
150
171
  */
151
172
  cubicBezier: (startPoint: Vertex, endPoint: Vertex, startControlPoint: Vertex, endControlPoint: Vertex, color: string, lineWidth?: number) => R;
152
173
  /**
@@ -162,7 +183,7 @@ export interface DrawLib<R> {
162
183
  * @param {number=1} lineWidth - (optional) The line width to use.
163
184
  * @return {void}
164
185
  * @instance
165
- * @memberof drawutils
186
+ * @memberof DrawLib
166
187
  */
167
188
  cubicBezierPath: (path: Array<Vertex>, color: string, lineWidth?: number) => R;
168
189
  /**
@@ -175,7 +196,7 @@ export interface DrawLib<R> {
175
196
  * @param {Vertex} endPoint - The end point of the handle.
176
197
  * @return {void}
177
198
  * @instance
178
- * @memberof drawutils
199
+ * @memberof DrawLib
179
200
  */
180
201
  handle: (startPoint: Vertex, endPoint: Vertex) => R;
181
202
  /**
@@ -186,7 +207,7 @@ export interface DrawLib<R> {
186
207
  * @param {Vertex} endPoint - The end point to draw the handle at.
187
208
  * @return {void}
188
209
  * @instance
189
- * @memberof drawutils
210
+ * @memberof DrawLib
190
211
  */
191
212
  handleLine: (startPoint: Vertex, endPoint: Vertex) => R;
192
213
  /**
@@ -197,7 +218,7 @@ export interface DrawLib<R> {
197
218
  * @param {string} color - The CSS color to draw the dot with.
198
219
  * @return {void}
199
220
  * @instance
200
- * @memberof drawutils
221
+ * @memberof DrawLib
201
222
  */
202
223
  dot: (p: Vertex, color: string) => R;
203
224
  /**
@@ -208,7 +229,7 @@ export interface DrawLib<R> {
208
229
  * @param {string} color - The CSS color to draw the point with.
209
230
  * @return {void}
210
231
  * @instance
211
- * @memberof drawutils
232
+ * @memberof DrawLib
212
233
  */
213
234
  point: (p: Vertex, color: string) => R;
214
235
  /**
@@ -223,7 +244,7 @@ export interface DrawLib<R> {
223
244
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
224
245
  * @return {void}
225
246
  * @instance
226
- * @memberof drawutils
247
+ * @memberof DrawLib
227
248
  */
228
249
  circle: (center: Vertex, radius: number, color: string, lineWidth?: number) => R;
229
250
  /**
@@ -238,7 +259,7 @@ export interface DrawLib<R> {
238
259
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
239
260
  * @return {void}
240
261
  * @instance
241
- * @memberof drawutils
262
+ * @memberof DrawLib
242
263
  */
243
264
  circleArc: (center: Vertex, radius: number, startAngle: number, endAngle: number, color: string, lineWidth?: number) => R;
244
265
  /**
@@ -253,7 +274,7 @@ export interface DrawLib<R> {
253
274
  * @param {number=} rotation - (optional, default=0) The rotation of the ellipse.
254
275
  * @return {void}
255
276
  * @instance
256
- * @memberof drawutils
277
+ * @memberof DrawLib
257
278
  */
258
279
  ellipse: (center: Vertex, radiusX: number, radiusY: number, color: string, lineWidth?: number, rotation?: number) => R;
259
280
  /**
@@ -268,7 +289,7 @@ export interface DrawLib<R> {
268
289
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
269
290
  * @return {void}
270
291
  * @instance
271
- * @memberof drawutils
292
+ * @memberof DrawLib
272
293
  */
273
294
  square: (center: XYCoords, size: number, color: string, lineWidth?: number) => R;
274
295
  /**
@@ -282,7 +303,7 @@ export interface DrawLib<R> {
282
303
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
283
304
  * @return {void}
284
305
  * @instance
285
- * @memberof drawutils
306
+ * @memberof DrawLib
286
307
  */
287
308
  rect: (upperLeft: XYCoords, width: number, height: number, color: string, lineWidth?: number) => R;
288
309
  /**
@@ -297,7 +318,7 @@ export interface DrawLib<R> {
297
318
  * @param {string} color - The CSS color to draw the grid with.
298
319
  * @return {void}
299
320
  * @instance
300
- * @memberof drawutils
321
+ * @memberof DrawLib
301
322
  */
302
323
  grid: (center: Vertex, width: number, height: number, sizeX: number, sizeY: number, color: string) => R;
303
324
  /**
@@ -314,7 +335,7 @@ export interface DrawLib<R> {
314
335
  * @param {string} color - The CSS color to draw the raster with.
315
336
  * @return {void}
316
337
  * @instance
317
- * @memberof drawutils
338
+ * @memberof DrawLib
318
339
  */
319
340
  raster: (center: Vertex, width: number, height: number, sizeX: number, sizeY: number, color: string) => R;
320
341
  /**
@@ -330,7 +351,7 @@ export interface DrawLib<R> {
330
351
  * @param {string} color - The CSS color to draw the diamond with.
331
352
  * @return {void}
332
353
  * @instance
333
- * @memberof drawutils
354
+ * @memberof DrawLib
334
355
  */
335
356
  diamondHandle: (center: Vertex, size: number, color: string) => R;
336
357
  /**
@@ -346,7 +367,7 @@ export interface DrawLib<R> {
346
367
  * @param {string} color - The CSS color to draw the square with.
347
368
  * @return {void}
348
369
  * @instance
349
- * @memberof drawutils
370
+ * @memberof DrawLib
350
371
  */
351
372
  squareHandle: (center: Vertex, size: number, color: string) => R;
352
373
  /**
@@ -362,7 +383,7 @@ export interface DrawLib<R> {
362
383
  * @param {string} color - The CSS color to draw the circle with.
363
384
  * @return {void}
364
385
  * @instance
365
- * @memberof drawutils
386
+ * @memberof DrawLib
366
387
  */
367
388
  circleHandle: (center: Vertex, size: number, color: string) => R;
368
389
  /**
@@ -374,11 +395,27 @@ export interface DrawLib<R> {
374
395
  * @param {XYCoords} center - The center of the crosshair.
375
396
  * @param {number} radius - The radius of the crosshair.
376
397
  * @param {string} color - The CSS color to draw the crosshair with.
398
+ * @param {number=0.5} lineWidth - (optional, default=0.5) The line width to use.
399
+ * @return {void}
400
+ * @instance
401
+ * @memberof DrawLib
402
+ */
403
+ crosshair: (center: XYCoords, radius: number, color: string, lineWidth?: number) => R;
404
+ /**
405
+ * Draw a cross with diagonal axes with given radius, color and lineWidth at the given position.<br>
406
+ * <br>
407
+ * Note that the x's radius will not be affected by scaling.
408
+ *
409
+ * @method crosshair
410
+ * @param {XYCoords} center - The center of the crosshair.
411
+ * @param {number} radius - The radius of the crosshair.
412
+ * @param {string} color - The CSS color to draw the crosshair with.
413
+ * @param {number=1} lineWidth - (optional, default=1.0) The line width to use.
377
414
  * @return {void}
378
415
  * @instance
379
- * @memberof drawutils
416
+ * @memberof DrawLib
380
417
  */
381
- crosshair: (center: XYCoords, radius: number, color: string) => R;
418
+ cross: (center: XYCoords, radius: number, color: string, lineWidth?: number) => R;
382
419
  /**
383
420
  * Draw a polygon.
384
421
  *
@@ -387,7 +424,7 @@ export interface DrawLib<R> {
387
424
  * @param {string} color - The CSS color to draw the polygon with.
388
425
  * @return {void}
389
426
  * @instance
390
- * @memberof drawutils
427
+ * @memberof DrawLib
391
428
  */
392
429
  polygon: (polygon: Polygon, color: string, lineWidth?: number) => R;
393
430
  /**
@@ -400,7 +437,7 @@ export interface DrawLib<R> {
400
437
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
401
438
  * @return {void}
402
439
  * @instance
403
- * @memberof drawutils
440
+ * @memberof DrawLib
404
441
  */
405
442
  polyline: (vertices: Array<Vertex>, isOpen: boolean, color: string, lineWidth?: number) => R;
406
443
  /**
@@ -420,7 +457,7 @@ export interface DrawLib<R> {
420
457
  * @param {string=} options.textAlign - The text align to use. According to the specifiactions (https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign) valid values are `"left" || "right" || "center" || "start" || "end"`.
421
458
  * @return {void}
422
459
  * @instance
423
- * @memberof drawutils
460
+ * @memberof DrawLib
424
461
  */
425
462
  text: (text: string, x: number, y: number, options?: FontOptions) => R;
426
463
  /**
@@ -434,7 +471,7 @@ export interface DrawLib<R> {
434
471
  * @param {string="black"} color - The color to use (default is black).
435
472
  * @return {void}
436
473
  * @instance
437
- * @memberof drawutils
474
+ * @memberof DrawLib
438
475
  */
439
476
  label: (text: string, x: number, y: number, rotation?: number, color?: string) => R;
440
477
  /**
@@ -446,7 +483,7 @@ export interface DrawLib<R> {
446
483
  * @param {number=1} lineWidth - (optional) the line width to use (default is 1).
447
484
  * @param {boolean=false} options.inplace - (optional) If set to true then path transforamtions (scale and translate) will be done in-place in the array. This can boost the performance.
448
485
  * @instance
449
- * @memberof drawutils
486
+ * @memberof DrawLib
450
487
  * @return {R} An instance representing the drawn path.
451
488
  */
452
489
  path: (pathData: SVGPathParams, color?: string, lineWidth?: number, options?: {
@@ -16,6 +16,9 @@
16
16
  * @modified 2021-11-12 Added `text()` params fontSize, fontFamily, rotation, textAlign.
17
17
  * @modified 2021-11-16 Added `text()` params fontWeight and fontStyle.
18
18
  * @modified 2021-11-19 Added the `color` param to the `label(...)` function.
19
+ * @modified 2022-02-03 Added the `lineWidth` param to the `crosshair` function.
20
+ * @modified 2022-02-03 Added the `cross(...)` function.
21
+ * @modified 2022-07-26 Adding `alpha` to the `image(...)` function.
19
22
  **/
20
23
  Object.defineProperty(exports, "__esModule", { value: true });
21
24
  //# sourceMappingURL=DrawLib.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DrawLib.js","sourceRoot":"","sources":["../../ts/interfaces/DrawLib.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;IAiBI"}
1
+ {"version":3,"file":"DrawLib.js","sourceRoot":"","sources":["../../ts/interfaces/DrawLib.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;IAoBI"}
@@ -14,6 +14,7 @@
14
14
  * @modified 2021-05-31 Splitted the large interfaces.ts file into this one and others.
15
15
  * @modified 2021-06-21 Added `IBounds.getCenter()`.
16
16
  * @modified 2021-11-16 Added `text` options to the `DrawConfig`.
17
+ * @modified 2022-08-01 Added `title` param to the `PBParams` interface.
17
18
  **/
18
19
  import { Vertex } from "../Vertex";
19
20
  import { Vector } from "../Vector";
@@ -120,6 +121,7 @@ export interface Config {
120
121
  * For initialization the constructor needs a mix of config and draw-settings.
121
122
  */
122
123
  export interface PBParams extends Config {
124
+ title?: string;
123
125
  }
124
126
  export interface DrawSettings {
125
127
  color: string;
@@ -169,18 +171,6 @@ export interface SVGSerializable {
169
171
  * Required to generate proper CSS classes and other class related IDs.
170
172
  **/
171
173
  readonly className: string;
172
- /**
173
- * Convert this vertex to SVG code.
174
- *
175
- * @method toSVGString
176
- * @param {object=} options - An optional set of options, like 'className'.
177
- * @return {string} A string representing the SVG code for this vertex.
178
- * @instance
179
- * @memberof Vertex
180
- **/
181
- toSVGString: (options: {
182
- className?: string;
183
- }) => string;
184
174
  }
185
175
  /**
186
176
  * A type for SVG &lt;path d="..." /> params.
@@ -15,6 +15,7 @@
15
15
  * @modified 2021-05-31 Splitted the large interfaces.ts file into this one and others.
16
16
  * @modified 2021-06-21 Added `IBounds.getCenter()`.
17
17
  * @modified 2021-11-16 Added `text` options to the `DrawConfig`.
18
+ * @modified 2022-08-01 Added `title` param to the `PBParams` interface.
18
19
  **/
19
20
  Object.defineProperty(exports, "__esModule", { value: true });
20
21
  //# sourceMappingURL=core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../ts/interfaces/core.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;IAgBI"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../ts/interfaces/core.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;IAiBI"}
@@ -4,7 +4,6 @@ import { Circle } from "./Circle";
4
4
  import { CircleSector } from "./CircleSector";
5
5
  import { CubicBezierCurve } from "./CubicBezierCurve";
6
6
  import { drawutils } from "./draw";
7
- import { drawutilsgl } from "./drawgl";
8
7
  import { geomutils } from "./geomutils";
9
8
  import { Grid } from "./Grid";
10
9
  import { KeyHandler } from "./KeyHandler";
@@ -13,7 +12,6 @@ import { MouseHandler } from "./MouseHandler";
13
12
  import { PBImage } from "./PBImage";
14
13
  import { PlotBoilerplate } from "./PlotBoilerplate";
15
14
  import { Polygon } from "./Polygon";
16
- import { SVGBuilder } from "./SVGBuilder";
17
15
  import { Triangle } from "./Triangle";
18
16
  import { UIDGenerator } from "./UIDGenerator";
19
17
  import { Vector } from "./Vector";
@@ -24,5 +22,5 @@ import { VertexAttr } from "./VertexAttr";
24
22
  import { VertexListeners } from "./VertexListeners";
25
23
  import { VertTuple } from "./VertTuple";
26
24
  import { drawutilssvg } from "./drawutilssvg";
27
- export { BezierPath, Bounds, Circle, CircleSector, CubicBezierCurve, drawutils, drawutilsgl, geomutils, Grid, KeyHandler, Line, MouseHandler, PBImage, PlotBoilerplate, Polygon, SVGBuilder, Triangle, UIDGenerator, Vector, VEllipse, VEllipseSector, Vertex, VertexAttr, VertexListeners, VertTuple, drawutilssvg };
25
+ export { BezierPath, Bounds, Circle, CircleSector, CubicBezierCurve, drawutils, geomutils, Grid, KeyHandler, Line, MouseHandler, PBImage, PlotBoilerplate, Polygon, Triangle, UIDGenerator, Vector, VEllipse, VEllipseSector, Vertex, VertexAttr, VertexListeners, VertTuple, drawutilssvg };
28
26
  export default PlotBoilerplate;
package/src/cjs/module.js CHANGED
@@ -6,7 +6,7 @@
6
6
  //
7
7
  // @date 2021-02
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.drawutilssvg = exports.VertTuple = exports.VertexListeners = exports.VertexAttr = exports.Vertex = exports.VEllipseSector = exports.VEllipse = exports.Vector = exports.UIDGenerator = exports.Triangle = exports.SVGBuilder = exports.Polygon = exports.PlotBoilerplate = exports.PBImage = exports.MouseHandler = exports.Line = exports.KeyHandler = exports.Grid = exports.geomutils = exports.drawutilsgl = exports.drawutils = exports.CubicBezierCurve = exports.CircleSector = exports.Circle = exports.Bounds = exports.BezierPath = void 0;
9
+ exports.drawutilssvg = exports.VertTuple = exports.VertexListeners = exports.VertexAttr = exports.Vertex = exports.VEllipseSector = exports.VEllipse = exports.Vector = exports.UIDGenerator = exports.Triangle = exports.Polygon = exports.PlotBoilerplate = exports.PBImage = exports.MouseHandler = exports.Line = exports.KeyHandler = exports.Grid = exports.geomutils = exports.drawutils = exports.CubicBezierCurve = exports.CircleSector = exports.Circle = exports.Bounds = exports.BezierPath = void 0;
10
10
  var BezierPath_1 = require("./BezierPath");
11
11
  Object.defineProperty(exports, "BezierPath", { enumerable: true, get: function () { return BezierPath_1.BezierPath; } });
12
12
  var Bounds_1 = require("./Bounds");
@@ -19,8 +19,7 @@ var CubicBezierCurve_1 = require("./CubicBezierCurve");
19
19
  Object.defineProperty(exports, "CubicBezierCurve", { enumerable: true, get: function () { return CubicBezierCurve_1.CubicBezierCurve; } });
20
20
  var draw_1 = require("./draw");
21
21
  Object.defineProperty(exports, "drawutils", { enumerable: true, get: function () { return draw_1.drawutils; } });
22
- var drawgl_1 = require("./drawgl");
23
- Object.defineProperty(exports, "drawutilsgl", { enumerable: true, get: function () { return drawgl_1.drawutilsgl; } });
22
+ // import { drawutilsgl } from "./drawgl";
24
23
  var geomutils_1 = require("./geomutils");
25
24
  Object.defineProperty(exports, "geomutils", { enumerable: true, get: function () { return geomutils_1.geomutils; } });
26
25
  var Grid_1 = require("./Grid");
@@ -37,8 +36,6 @@ var PlotBoilerplate_1 = require("./PlotBoilerplate");
37
36
  Object.defineProperty(exports, "PlotBoilerplate", { enumerable: true, get: function () { return PlotBoilerplate_1.PlotBoilerplate; } });
38
37
  var Polygon_1 = require("./Polygon");
39
38
  Object.defineProperty(exports, "Polygon", { enumerable: true, get: function () { return Polygon_1.Polygon; } });
40
- var SVGBuilder_1 = require("./SVGBuilder");
41
- Object.defineProperty(exports, "SVGBuilder", { enumerable: true, get: function () { return SVGBuilder_1.SVGBuilder; } });
42
39
  var Triangle_1 = require("./Triangle");
43
40
  Object.defineProperty(exports, "Triangle", { enumerable: true, get: function () { return Triangle_1.Triangle; } });
44
41
  var UIDGenerator_1 = require("./UIDGenerator");
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../ts/module.ts"],"names":[],"mappings":";AAAA,mBAAmB;AACnB,uEAAuE;AACvE,MAAM;AACN,+EAA+E;AAC/E,EAAE;AACF,gBAAgB;;;AAEhB,2CAA0C;AA4BxC,2FA5BO,uBAAU,OA4BP;AA3BZ,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AA3Bd,uDAAsD;AA4BpD,iGA5BO,mCAAgB,OA4BP;AA3BlB,+BAAmC;AA4BjC,0FA5BO,gBAAS,OA4BP;AA3BX,mCAAuC;AA4BrC,4FA5BO,oBAAW,OA4BP;AA3Bb,yCAAwC;AA4BtC,0FA5BO,qBAAS,OA4BP;AA3BX,+BAA8B;AA4B5B,qFA5BO,WAAI,OA4BP;AA3BN,2CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA5BZ,+BAA8B;AA6B5B,qFA7BO,WAAI,OA6BP;AA5BN,+CAA8C;AA6B5C,6FA7BO,2BAAY,OA6BP;AA5Bd,qCAAoC;AA6BlC,wFA7BO,iBAAO,OA6BP;AA5BT,qDAAoD;AA6BlD,gGA7BO,iCAAe,OA6BP;AA5BjB,qCAAoC;AA6BlC,wFA7BO,iBAAO,OA6BP;AA5BT,2CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA5BZ,uCAAsC;AA6BpC,yFA7BO,mBAAQ,OA6BP;AA5BV,+CAA8C;AA6B5C,6FA7BO,2BAAY,OA6BP;AA5Bd,mCAAkC;AA6BhC,uFA7BO,eAAM,OA6BP;AA5BR,uCAAsC;AA6BpC,yFA7BO,mBAAQ,OA6BP;AA5BV,mDAAkD;AA6BhD,+FA7BO,+BAAc,OA6BP;AA5BhB,mCAAkC;AA6BhC,uFA7BO,eAAM,OA6BP;AA5BR,2CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA5BZ,qDAAoD;AA6BlD,gGA7BO,iCAAe,OA6BP;AA5BjB,yCAAwC;AA6BtC,0FA7BO,qBAAS,OA6BP;AA5BX,+CAA8C;AA6B5C,6FA7BO,2BAAY,OA6BP;AAEd,kBAAe,iCAAe,CAAC"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../ts/module.ts"],"names":[],"mappings":";AAAA,mBAAmB;AACnB,uEAAuE;AACvE,MAAM;AACN,+EAA+E;AAC/E,EAAE;AACF,gBAAgB;;;AAEhB,2CAA0C;AA2BxC,2FA3BO,uBAAU,OA2BP;AA1BZ,mCAAkC;AA2BhC,uFA3BO,eAAM,OA2BP;AA1BR,mCAAkC;AA2BhC,uFA3BO,eAAM,OA2BP;AA1BR,+CAA8C;AA2B5C,6FA3BO,2BAAY,OA2BP;AA1Bd,uDAAsD;AA2BpD,iGA3BO,mCAAgB,OA2BP;AA1BlB,+BAAmC;AA2BjC,0FA3BO,gBAAS,OA2BP;AA1BX,0CAA0C;AAC1C,yCAAwC;AA2BtC,0FA3BO,qBAAS,OA2BP;AA1BX,+BAA8B;AA2B5B,qFA3BO,WAAI,OA2BP;AA1BN,2CAA0C;AA4BxC,2FA5BO,uBAAU,OA4BP;AA3BZ,+BAA8B;AA4B5B,qFA5BO,WAAI,OA4BP;AA3BN,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AA3Bd,qCAAoC;AA4BlC,wFA5BO,iBAAO,OA4BP;AA3BT,qDAAoD;AA4BlD,gGA5BO,iCAAe,OA4BP;AA3BjB,qCAAoC;AA4BlC,wFA5BO,iBAAO,OA4BP;AA3BT,uCAAsC;AA4BpC,yFA5BO,mBAAQ,OA4BP;AA3BV,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AA3Bd,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,uCAAsC;AA4BpC,yFA5BO,mBAAQ,OA4BP;AA3BV,mDAAkD;AA4BhD,+FA5BO,+BAAc,OA4BP;AA3BhB,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,2CAA0C;AA4BxC,2FA5BO,uBAAU,OA4BP;AA3BZ,qDAAoD;AA4BlD,gGA5BO,iCAAe,OA4BP;AA3BjB,yCAAwC;AA4BtC,0FA5BO,qBAAS,OA4BP;AA3BX,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AAEd,kBAAe,iCAAe,CAAC"}
@@ -11,6 +11,16 @@
11
11
  **/
12
12
  var utils = (globalThis.utils = globalThis.utils || {});
13
13
 
14
+ /**
15
+ * Need to access the dat.gui folders of plotboilerplate? You will find them here.
16
+ *
17
+ * Following keys are currently available:
18
+ * - editor_settings
19
+ * - editor_settings.export (if enableSVGExport=true)
20
+ * - draw_settings
21
+ */
22
+ globalThis.utils.guiFolders = globalThis.utils.guiFolders || {};
23
+
14
24
  /**
15
25
  * Creates a control GUI (a dat.gui instance) for this
16
26
  * plot boilerplate instance.
@@ -255,9 +265,13 @@ globalThis.utils.createGUI = function (pb, props) {
255
265
  fold0.add(dummy, "resetScale").title("Reset the draw scale to (1.,1.).");
256
266
 
257
267
  if (pb.config.enableSVGExport) {
258
- var fold1 = gui.addFolder("Export");
259
- fold1.add(pb.config, "saveFile").name("Save a file").title("Save as SVG.");
268
+ var foldExport = gui.addFolder("Export");
269
+ foldExport.add(pb.config, "saveFile").name("SVG Image").title("Save as SVG.");
270
+ globalThis.utils.guiFolders["editor_settings.export"] = foldExport;
260
271
  }
261
272
 
273
+ globalThis.utils.guiFolders["editor_settings"] = fold0;
274
+ globalThis.utils.guiFolders["draw_settings"] = fold01;
275
+
262
276
  return gui;
263
277
  }; // END creategui
@@ -14,7 +14,9 @@
14
14
  * @modified 2021-11-07 Did the same with `saturate` and `desaturate`.
15
15
  * @modified 2021-11-07 Did the same with the `fadein` and `fadeout` functions.
16
16
  * @modified 2021-11-07 Added setRed, setGreen, setBlue, setHue, setSaturation, setLiminance functions.
17
- * @version 0.0.10
17
+ * @modified 2022-05-11 Modified the `clone` function by just copying the numeric calues, not re-calculating the whole color.
18
+ * @modified 2022-05-11 Fixed the `interpolate` function.
19
+ * @version 0.0.11
18
20
  **/
19
21
  /**
20
22
  * @classdesc A color class, inspired by neolitec's Javascript class.
@@ -15,7 +15,9 @@
15
15
  * @modified 2021-11-07 Did the same with `saturate` and `desaturate`.
16
16
  * @modified 2021-11-07 Did the same with the `fadein` and `fadeout` functions.
17
17
  * @modified 2021-11-07 Added setRed, setGreen, setBlue, setHue, setSaturation, setLiminance functions.
18
- * @version 0.0.10
18
+ * @modified 2022-05-11 Modified the `clone` function by just copying the numeric calues, not re-calculating the whole color.
19
+ * @modified 2022-05-11 Fixed the `interpolate` function.
20
+ * @version 0.0.11
19
21
  **/
20
22
  Object.defineProperty(exports, "__esModule", { value: true });
21
23
  exports.Color = void 0;
@@ -529,7 +531,16 @@ var Color = /** @class */ (function () {
529
531
  * @return {Color} A clone of this color (in RGB mode).
530
532
  */
531
533
  Color.prototype.clone = function () {
532
- return Color.makeRGB(this.r, this.g, this.b, this.a);
534
+ // return Color.makeRGB(this.r, this.g, this.b, this.a);
535
+ var col = new Color();
536
+ col.r = this.r;
537
+ col.g = this.g;
538
+ col.b = this.b;
539
+ col.a = this.a;
540
+ col.h = this.h;
541
+ col.s = this.s;
542
+ col.l = this.l;
543
+ return col;
533
544
  };
534
545
  /**
535
546
  * Interpolate this color on the RGB scale.
@@ -542,10 +553,10 @@ var Color = /** @class */ (function () {
542
553
  * @return {Color} A clone of this color (in RGB mode).
543
554
  */
544
555
  Color.prototype.interpolate = function (c, t) {
545
- this.r += (c.r - c.r) * t;
546
- this.g += (c.g - c.g) * t;
547
- this.b += (c.b - c.b) * t;
548
- this.a += (c.a - c.a) * t;
556
+ this.r += (c.r - this.r) * t;
557
+ this.g += (c.g - this.g) * t;
558
+ this.b += (c.b - this.b) * t;
559
+ this.a += (c.a - this.a) * t;
549
560
  return this;
550
561
  };
551
562
  Color.Sanitizer = {
@@ -1 +1 @@
1
- {"version":3,"file":"Color.js","sourceRoot":"","sources":["../../../ts/utils/datastructures/Color.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;IAiBI;;;AAEJ;;;;;GAKG;AACH;IAkDE;;;;;;;;OAQG;IACH;QACE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACb,CAAC;IAED,6CAA6C;IAC7C;;;;;;;;;OASG;IACH,sBAAM,GAAN;QACE,OAAO,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IACnH,CAAC;IAED;;;;;;;;;OASG;IACH,uBAAO,GAAP;QACE,OAAO,UAAQ,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,SAAI,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,SAAI,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,SAAI,IAAI,CAAC,CAAC,MAAG,CAAC;IAC/G,CAAC;IAED;;;;;;;OAOG;IACH,mBAAG,GAAH;QACE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,qBAAK,GAAL;QACE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,oBAAI,GAAJ;QACE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED,sBAAM,GAAN,UAAO,CAAS;QACd,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uBAAO,GAAP,UAAQ,CAAS;QACf,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAQ,GAAR,UAAS,CAAS;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAQ,GAAR,UAAS,CAAS;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAM,GAAN,UAAO,CAAS;QACd,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6BAAa,GAAb,UAAc,CAAS;QACrB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4BAAY,GAAZ,UAAa,CAAS;QACpB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAA6C;IAC7C;;;;;;;OAOG;IACH,sBAAM,GAAN;QACE,OAAO,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IACrH,CAAC;IAED;;;;;;;OAOG;IACH,uBAAO,GAAP;QACE,OAAO,CACL,OAAO;YACP,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;YACxB,GAAG;YACH,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;YACxB,IAAI;YACJ,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;YACxB,IAAI;YACJ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YAClB,GAAG,CACJ,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,mBAAG,GAAH;QACE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,0BAAU,GAAV;QACE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,yBAAS,GAAT;QACE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED,6CAA6C;IAC7C;;;;;;;OAOG;IACH,sBAAM,GAAN;QACE,OAAO,CACL,GAAG;YACH,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CACtC,CAAC;IACJ,CAAC;IAED,sDAAsD;IAEtD;;;;;;;OAOG;IACH,qBAAK,GAAL;QACE,OAAO,IAAI,CAAC,CAAC,CAAC;IAChB,CAAC;IAED,mDAAmD;IAEnD,0CAA0C;IAC1C,qFAAqF;IACrF,2BAA2B;IAC3B,yCAAyC;IACzC,qBAAqB;IACrB,2BAA2B;IAC3B,eAAe;IACf,2EAA2E;IAC3E,QAAQ;IACR,kCAAkC;IAClC,uCAAuC;IACvC,sCAAsC;IACtC,mBAAmB;IACnB,MAAM;IACN,wBAAQ,GAAR,UAAS,CAAkB;QACzB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;YAC3E,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SACpC;aAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;gBACzB,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM;gBACL,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aACpC;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;SACnE;QACD,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,0BAAU,GAAV,UAAW,CAAkB;QAC3B,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;YAC3E,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;SACnB;aAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;gBACxB,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB;iBAAM;gBACL,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aAC9B;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;SACnE;QACD,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,yCAAyC;IACzC,qFAAqF;IACrF,2BAA2B;IAC3B,yCAAyC;IACzC,qCAAqC;IACrC,6BAA6B;IAC7B,uBAAuB;IACvB,iBAAiB;IACjB,uBAAuB;IACvB,6BAA6B;IAC7B,UAAU;IACV,eAAe;IACf,2EAA2E;IAC3E,QAAQ;IACR,kCAAkC;IAClC,uCAAuC;IACvC,sCAAsC;IACtC,mBAAmB;IACnB,MAAM;IACN,uBAAO,GAAP,UAAQ,CAAkB;QACxB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;YAC3E,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SACpC;aAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;gBACxB,kBAAkB;gBAClB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM;gBACL,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aACpC;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;SACnE;QACD,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,sBAAM,GAAN,UAAO,CAAkB;QACvB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;YAC3E,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SAC9B;aAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;gBACxB,kBAAkB;gBAClB,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB;iBAAM;gBACL,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aAC9B;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;SACnE;QACD,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,sBAAM,GAAN,UAAO,CAAkB;QACvB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;YAC3E,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SACpC;aAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;gBACxB,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM;gBACL,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aACpC;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;SACnE;QACD,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,uBAAO,GAAP,UAAQ,CAAkB;QACxB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;YAC3E,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;SACnB;aAAM,IAAI,QAAQ,IAAI,OAAO,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;gBACxB,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;aACb;iBAAM;gBACL,YAAY;gBACZ,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;aACnB;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;SACnE;QACD,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IACD,oBAAI,GAAJ,UAAK,CAAkB;QACrB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;YAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;aAC1F,IAAI,QAAQ,IAAI,OAAO,CAAC;YAC3B,YAAY;YACZ,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;;YACf,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACvE,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;aACtB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAChC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAO,GAAd;QAAe,cAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,yBAAc;;QAC3B,IAAM,CAAC,GAAU,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,SAAwB,CAAC;QAC7B,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7F,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE;YACzB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;SACpB;aAAM;YACL,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;SACX;QACD,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IAEM,aAAO,GAAd;QAAe,cAA+B;aAA/B,UAA+B,EAA/B,qBAA+B,EAA/B,IAA+B;YAA/B,yBAA+B;;QAC5C,IAAM,CAAC,GAAU,IAAI,KAAK,EAAE,CAAC;QAC7B,IAAI,SAAwB,CAAC;QAC7B,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7F,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC;YAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;;YACzC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACf,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IAEM,aAAO,GAAd,UAAe,KAAa;QAC1B,IAAI,CAAC,GAAG,IAAI,KAAK,EAAE,EACjB,SAAS,CAAC;QACZ,qBAAqB;QACrB,oBAAoB;QACpB,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5D,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;YACrB,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAC7B,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EACrD,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EACrD,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CACtD,CAAC;SACH;aAAM,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;YAC5B,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAC7B,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAChC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAChC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CACjC,CAAC;SACH;;YAAM,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,mDAAmD;QAC9D,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;;;;;OAQG;IACI,WAAK,GAAZ,UAAa,GAAW;QACtB,IAAI,OAAO,GAAG,IAAI,WAAW;YAAE,OAAO,IAAI,CAAC;QAC3C,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9D,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5E,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;YACzB,IAAI,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,mFAAmF,CAAC,CAAC;YAC3G,IAAI,CAAC,KAAK,EAAE;gBACV,MAAM,iCAAiC,GAAG,GAAG,CAAC;aAC/C;YACD,gCAAgC;YAChC,iCAAiC;YACjC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,WAAW,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;gBACzE,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aACpD;iBAAM;gBACL,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACtE;SACF;aAAM;YACL,MAAM,iCAAiC,GAAG,GAAG,CAAC;SAC/C;IACH,CAAC;IA4ID;;;;;;;OAOG;IACH,qBAAK,GAAL;QACE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;OASG;IACH,2BAAW,GAAX,UAAY,CAAQ,EAAE,CAAS;QAC7B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAtKc,eAAS,GAAG;QACzB,GAAG,EAAE;YAAU,cAAc;iBAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;gBAAd,yBAAc;;YAC3B,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE;gBACzB,OAAO,EAAE,CAAC;aACX;YACD,kDAAkD;YAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;oBAC/C,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;wBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC5D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG;wBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;oBACpD,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;iBAChB;qBAAM;oBACL,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE;wBACpD,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;qBAC/B;oBACD,IAAI,CAAC,GAAG,CAAC,EAAE;wBACT,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;qBAC/B;oBACD,2DAA2D;yBACtD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;wBACxB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;qBACV;oBACD,0CAA0C;yBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE;wBAC1B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;qBAChB;oBACD,MAAM;oBACN,2CAA2C;;wBACtC,MAAM,IAAI,KAAK,CAAC,cAAc,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;iBAChD;aACF;YACD,OAAO,CAAC,CAAC;QACX,CAAC;QAED,GAAG,EAAE;YAAU,cAA+B;iBAA/B,UAA+B,EAA/B,qBAA+B,EAA/B,IAA+B;gBAA/B,yBAA+B;;YAC5C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC/F,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAClB,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAChB,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;YAC9F,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;iBAC9D,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAAE,CAAC,IAAI,GAAG,CAAC;YACxF,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC/C,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;oBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBAC3E,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG;oBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACnE,CAAC,IAAI,GAAG,CAAC;aACV;iBAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACxE,IAAI,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;gBAC/C,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG;oBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAC1E,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG;oBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAClE,CAAC,IAAI,GAAG,CAAC;aACV;iBAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;YACvE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC;KACF,CAAC,CAAC,gBAAgB;IAEJ,eAAS,GAAG;QACzB;;WAEG;QACH,QAAQ,EAAE,UAAC,KAAa;YACtB,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,KAAK,CAAC,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,CAAC;YACtH,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAC5B,yBAAyB;YACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,IAAI,CAAC,GAAW,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACpC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;oBAClD,MAAM,IAAI,KAAK,CAAC,oCAAiC,KAAK,uBAAiB,CAAC,MAAG,CAAC,CAAC;aAChF;QACH,CAAC;KACF,CAAC;IAEa,eAAS,GAAG;QACzB;;;;WAIG;QACH,QAAQ,EAAE,UAAC,KAAY;YACrB,IAAI,CAAC,GAAW,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,GAAW,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,GAAW,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,GAAG,GAAW,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACpC,IAAI,GAAG,GAAW,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YACpC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,GAAG,IAAI,GAAG,EAAE;gBACd,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa;aACrC;iBAAM;gBACL,IAAI,CAAC,GAAW,GAAG,GAAG,GAAG,CAAC;gBAC1B,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;gBAChE,QAAQ,GAAG,EAAE;oBACX,KAAK,CAAC;wBACJ,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACxC,MAAM;oBACR,KAAK,CAAC;wBACJ,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAC1B,MAAM;oBACR,KAAK,CAAC;wBACJ,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAC1B,MAAM;iBACT;gBACD,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;aACd;QACH,CAAC;QAED;;;;;WAKG;QACH,QAAQ,EAAE,UAAC,KAAY;YACrB,IAAI,CAAC,GAAW,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,GAAW,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,GAAW,KAAK,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,EAAE;gBACV,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa;aAC/C;iBAAM;gBACL,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC9C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAClB,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;gBACnD,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC3C,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;aACpD;QACH,CAAC;QAED,OAAO,EAAE,UAAC,CAAS,EAAE,CAAS,EAAE,CAAS;YACvC,IAAI,CAAC,GAAG,CAAC;gBAAE,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC;gBAAE,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAC;YACxB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACpD,OAAO,CAAC,CAAC;QACX,CAAC;KACF,CAAC;IA+BJ,YAAC;CAAA,AAvrBD,IAurBC,CAAC,YAAY;AAvrBD,sBAAK"}
1
+ {"version":3,"file":"Color.js","sourceRoot":"","sources":["../../../ts/utils/datastructures/Color.ts"],"names":[],"mappings":"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"}
@@ -86,6 +86,11 @@ export declare class Girih {
86
86
  * @return {void}
87
87
  */
88
88
  removeTileAt(index: number): void;
89
+ /**
90
+ *
91
+ * @param tiles
92
+ */
93
+ replaceTiles(tiles: GirihTile): void;
89
94
  /**
90
95
  * Find that tile (index) which contains the given position. First match will be returned.
91
96
  *