@faicad/faijs 0.18.2 → 0.19.0

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 (129) hide show
  1. package/dist/api/api-namespace.d.ts.map +1 -1
  2. package/dist/api/api-namespace.js +4 -1
  3. package/dist/api/api-namespace.js.map +1 -1
  4. package/dist/api/brep-mirror/joinery-brep.d.ts +1 -1
  5. package/dist/api/brep-mirror/joinery-brep.d.ts.map +1 -1
  6. package/dist/api/brep-mirror/joinery-brep.js +19 -19
  7. package/dist/api/brep-mirror/joinery-brep.js.map +1 -1
  8. package/dist/api/index.d.ts +4 -0
  9. package/dist/api/index.d.ts.map +1 -1
  10. package/dist/api/index.js +3 -0
  11. package/dist/api/index.js.map +1 -1
  12. package/dist/api/profile.d.ts.map +1 -1
  13. package/dist/api/profile.js +113 -182
  14. package/dist/api/profile.js.map +1 -1
  15. package/dist/api/punch-hole.d.ts +74 -0
  16. package/dist/api/punch-hole.d.ts.map +1 -0
  17. package/dist/api/punch-hole.js +207 -0
  18. package/dist/api/punch-hole.js.map +1 -0
  19. package/dist/api/sketch-on-face.d.ts +85 -0
  20. package/dist/api/sketch-on-face.d.ts.map +1 -0
  21. package/dist/api/sketch-on-face.js +136 -0
  22. package/dist/api/sketch-on-face.js.map +1 -0
  23. package/dist/api/sketch-on-plane.d.ts +81 -0
  24. package/dist/api/sketch-on-plane.d.ts.map +1 -0
  25. package/dist/api/sketch-on-plane.js +103 -0
  26. package/dist/api/sketch-on-plane.js.map +1 -0
  27. package/dist/boolean/csg-backend.d.ts +6 -6
  28. package/dist/boolean/csg-backend.d.ts.map +1 -1
  29. package/dist/boolean/csg-backend.js +9 -9
  30. package/dist/boolean/csg-backend.js.map +1 -1
  31. package/dist/boolean/csg-core.d.ts +10 -10
  32. package/dist/boolean/csg-core.d.ts.map +1 -1
  33. package/dist/boolean/csg-core.js +24 -24
  34. package/dist/boolean/csg-core.js.map +1 -1
  35. package/dist/boolean/extrude-helpers.d.ts +8 -8
  36. package/dist/boolean/extrude-helpers.d.ts.map +1 -1
  37. package/dist/boolean/extrude-helpers.js +13 -13
  38. package/dist/boolean/extrude-helpers.js.map +1 -1
  39. package/dist/brep/brep-ops.d.ts +20 -6
  40. package/dist/brep/brep-ops.d.ts.map +1 -1
  41. package/dist/brep/brep-ops.js +38 -12
  42. package/dist/brep/brep-ops.js.map +1 -1
  43. package/dist/browser-host/csg-worker-protocol.d.ts +3 -3
  44. package/dist/browser-host/csg-worker-protocol.d.ts.map +1 -1
  45. package/dist/browser-host/csg-worker-protocol.js.map +1 -1
  46. package/dist/browser-host/csg-worker.js +3 -3
  47. package/dist/browser-host/csg-worker.js.map +1 -1
  48. package/dist/browser-host/inline-csg-backend.d.ts +3 -3
  49. package/dist/browser-host/inline-csg-backend.d.ts.map +1 -1
  50. package/dist/browser-host/inline-csg-backend.js +3 -3
  51. package/dist/browser-host/inline-csg-backend.js.map +1 -1
  52. package/dist/browser-host/worker-csg-backend.d.ts +3 -3
  53. package/dist/browser-host/worker-csg-backend.d.ts.map +1 -1
  54. package/dist/browser-host/worker-csg-backend.js.map +1 -1
  55. package/dist/cad-runtime/ports.d.ts +3 -3
  56. package/dist/cad-runtime/ports.d.ts.map +1 -1
  57. package/dist/cad-runtime/ports.js.map +1 -1
  58. package/dist/geometry2d/adapt.d.ts +46 -0
  59. package/dist/geometry2d/adapt.d.ts.map +1 -0
  60. package/dist/geometry2d/adapt.js +41 -0
  61. package/dist/geometry2d/adapt.js.map +1 -0
  62. package/dist/geometry2d/bbox2d.d.ts +82 -0
  63. package/dist/geometry2d/bbox2d.d.ts.map +1 -0
  64. package/dist/geometry2d/bbox2d.js +123 -0
  65. package/dist/geometry2d/bbox2d.js.map +1 -0
  66. package/dist/geometry2d/blueprint-sketcher.d.ts +27 -0
  67. package/dist/geometry2d/blueprint-sketcher.d.ts.map +1 -0
  68. package/dist/geometry2d/blueprint-sketcher.js +29 -0
  69. package/dist/geometry2d/blueprint-sketcher.js.map +1 -0
  70. package/dist/geometry2d/blueprint.d.ts +102 -0
  71. package/dist/geometry2d/blueprint.d.ts.map +1 -0
  72. package/dist/geometry2d/blueprint.js +225 -0
  73. package/dist/geometry2d/blueprint.js.map +1 -0
  74. package/dist/geometry2d/blueprints.d.ts +58 -0
  75. package/dist/geometry2d/blueprints.d.ts.map +1 -0
  76. package/dist/geometry2d/blueprints.js +72 -0
  77. package/dist/geometry2d/blueprints.js.map +1 -0
  78. package/dist/geometry2d/bridge/lift-on-plane.d.ts +50 -0
  79. package/dist/geometry2d/bridge/lift-on-plane.d.ts.map +1 -0
  80. package/dist/geometry2d/bridge/lift-on-plane.js +72 -0
  81. package/dist/geometry2d/bridge/lift-on-plane.js.map +1 -0
  82. package/dist/geometry2d/bridge/on-surface.d.ts +98 -0
  83. package/dist/geometry2d/bridge/on-surface.d.ts.map +1 -0
  84. package/dist/geometry2d/bridge/on-surface.js +94 -0
  85. package/dist/geometry2d/bridge/on-surface.js.map +1 -0
  86. package/dist/geometry2d/bridge/plane.d.ts +69 -0
  87. package/dist/geometry2d/bridge/plane.d.ts.map +1 -0
  88. package/dist/geometry2d/bridge/plane.js +96 -0
  89. package/dist/geometry2d/bridge/plane.js.map +1 -0
  90. package/dist/geometry2d/canned-blueprints.d.ts +44 -0
  91. package/dist/geometry2d/canned-blueprints.d.ts.map +1 -0
  92. package/dist/geometry2d/canned-blueprints.js +94 -0
  93. package/dist/geometry2d/canned-blueprints.js.map +1 -0
  94. package/dist/geometry2d/compound-blueprint.d.ts +72 -0
  95. package/dist/geometry2d/compound-blueprint.d.ts.map +1 -0
  96. package/dist/geometry2d/compound-blueprint.js +95 -0
  97. package/dist/geometry2d/compound-blueprint.js.map +1 -0
  98. package/dist/geometry2d/curve2d.d.ts +298 -0
  99. package/dist/geometry2d/curve2d.d.ts.map +1 -0
  100. package/dist/geometry2d/curve2d.js +1110 -0
  101. package/dist/geometry2d/curve2d.js.map +1 -0
  102. package/dist/geometry2d/index.d.ts +22 -0
  103. package/dist/geometry2d/index.d.ts.map +1 -0
  104. package/dist/geometry2d/index.js +21 -0
  105. package/dist/geometry2d/index.js.map +1 -0
  106. package/dist/geometry2d/organise.d.ts +28 -0
  107. package/dist/geometry2d/organise.d.ts.map +1 -0
  108. package/dist/geometry2d/organise.js +108 -0
  109. package/dist/geometry2d/organise.js.map +1 -0
  110. package/dist/geometry2d/pen-sketcher.d.ts +340 -0
  111. package/dist/geometry2d/pen-sketcher.d.ts.map +1 -0
  112. package/dist/geometry2d/pen-sketcher.js +477 -0
  113. package/dist/geometry2d/pen-sketcher.js.map +1 -0
  114. package/dist/geometry2d/point.d.ts +44 -0
  115. package/dist/geometry2d/point.d.ts.map +1 -0
  116. package/dist/geometry2d/point.js +57 -0
  117. package/dist/geometry2d/point.js.map +1 -0
  118. package/dist/geometry2d/svg-ellipse.d.ts +74 -0
  119. package/dist/geometry2d/svg-ellipse.d.ts.map +1 -0
  120. package/dist/geometry2d/svg-ellipse.js +163 -0
  121. package/dist/geometry2d/svg-ellipse.js.map +1 -0
  122. package/dist/lang/symbol-table.generated.d.ts +3 -0
  123. package/dist/lang/symbol-table.generated.d.ts.map +1 -1
  124. package/dist/lang/symbol-table.generated.js +3 -0
  125. package/dist/lang/symbol-table.generated.js.map +1 -1
  126. package/dist/mesh/types.d.ts +1 -1
  127. package/dist/mesh/types.d.ts.map +1 -1
  128. package/dist/mesh/types.js.map +1 -1
  129. package/package.json +9 -1
@@ -0,0 +1,340 @@
1
+ /**
2
+ * geometry2d — 2D `BaseSketcher2d` pen (C1), adapted for the pure-object base.
3
+ *
4
+ * Ported from brepjs `2d/blueprints/baseSketcher2d.ts` (Apache-2.0).
5
+ *
6
+ * The brepjs original accumulates kernel-backed `Curve2D` handles (mutable:
7
+ * `delete`/`reverse`/`tangentAt`). Here those are replaced by the pure
8
+ * `Curve2dObj` base of `geometry2d/curve2d` — each pen method emits a plain
9
+ * object, the pointer advances by plain arithmetic, and end-tangent lookup maps
10
+ * to `tangentCurve2d`. `curves()`/`close()` return the ordered `Curve2dObj[]`,
11
+ * which feeds `Blueprint` and the 2D→3D placement pipeline.
12
+ *
13
+ * Not-yet-ported (honest `throw`s, per the D-group/port plan):
14
+ * · `ellipse*` — needs the SVG ellipse→arc helper;
15
+ * · `smoothSplit*` — needs the spline control helper;
16
+ * · `customCorner`/`closeWithMirror` — needs 2D corner/mirror ops (D-group).
17
+ *
18
+ * @module
19
+ */
20
+ import { type Curve2dObj } from './curve2d.js';
21
+ /** A `[x, y]` 2D point (plain tuple). */
22
+ export type Point2 = [number, number];
23
+ /** Options accepted by the spline methods. */
24
+ export type SplineOptions = {
25
+ /** Explicit start tangent; defaults to `[1,0]` or the previous segment's end tangent. */
26
+ startTangent?: Point2;
27
+ /** Explicit end tangent, or the literal `'symmetric'` (mirror of the start tangent). */
28
+ endTangent?: Point2 | 'symmetric';
29
+ /** Start control-length factor. */
30
+ startFactor?: number;
31
+ /** End control-length factor. */
32
+ endFactor?: number;
33
+ };
34
+ /** Corner modes accepted by `customCorner` (D-group, not yet ported). */
35
+ export type CornerMode = 'fillet' | 'chamfer' | 'dogbone';
36
+ /**
37
+ * Base class for 2D flood-pen sketchers that accumulate `Curve2dObj` segments.
38
+ *
39
+ * Provides the shared pen-drawing API (lines, arcs, beziers) used by the
40
+ * drawing DSL. Subclasses implement `close()` to package the accumulated curves
41
+ * as a `Blueprint` or plain curve list.
42
+ */
43
+ export declare class BaseSketcher2d {
44
+ /** Current pen position `[x, y]`. */
45
+ pointer: Point2;
46
+ /** The starting point of the pen run. */
47
+ firstPoint: Point2;
48
+ /** Accumulated segments, in draw order. */
49
+ pendingCurves: Curve2dObj[];
50
+ /** A queued one-shot corner transform (D-group; unused until ported). */
51
+ _nextCorner: ((a: Curve2dObj, b: Curve2dObj) => Curve2dObj[]) | null;
52
+ constructor(origin?: Point2);
53
+ /**
54
+ * The most recently drawn curve, or `null`.
55
+ * @returns the last drawn curve, or `null` when nothing has been drawn.
56
+ */
57
+ _lastCurve(): Curve2dObj | null;
58
+ /**
59
+ * Fetch the last drawn curve, or throw a misuse error.
60
+ * @param caller - the calling method name (for the error message).
61
+ * @returns the last curve.
62
+ */
63
+ _requireLastCurve(caller: string): Curve2dObj;
64
+ /**
65
+ * Add a relative offset to the current pointer.
66
+ * @param xDist - relative x distance.
67
+ * @param yDist - relative y distance.
68
+ * @returns the resulting absolute point.
69
+ */
70
+ _resolveRelative(xDist: number, yDist: number): Point2;
71
+ /**
72
+ * Save a curve and advance the pen to `end`.
73
+ * @param curve - the curve to record.
74
+ * @param end - the new pen position.
75
+ * @returns this pen, for chaining.
76
+ */
77
+ _saveCurveAndAdvance(curve: Curve2dObj, end: Point2): this;
78
+ /** The current pen position `[x, y]`. */
79
+ get penPosition(): Point2;
80
+ /** The current pen angle in degrees (direction of the last segment's end tangent). */
81
+ get penAngle(): number;
82
+ /**
83
+ * Move the pen to an absolute position before any segment is drawn.
84
+ * @param point - the absolute start position.
85
+ * @returns this pen, for chaining.
86
+ */
87
+ movePointerTo(point: Point2): this;
88
+ /**
89
+ * Record a segment, applying a queued corner transform if present.
90
+ * @param curve - the curve to record.
91
+ */
92
+ saveCurve(curve: Curve2dObj): void;
93
+ /**
94
+ * Draw a straight line to an absolute point.
95
+ * @param point - the absolute end point.
96
+ * @returns this pen, for chaining.
97
+ */
98
+ lineTo(point: Point2): this;
99
+ /**
100
+ * Draw a straight line by relative horizontal and vertical distances.
101
+ * @param x - relative x distance.
102
+ * @param y - relative y distance.
103
+ * @returns this pen, for chaining.
104
+ */
105
+ line(x: number, y: number): this;
106
+ /**
107
+ * Draw a vertical line of the given signed distance.
108
+ * @param distance - signed vertical distance.
109
+ * @returns this pen, for chaining.
110
+ */
111
+ vLine(distance: number): this;
112
+ /**
113
+ * Draw a horizontal line of the given signed distance.
114
+ * @param distance - signed horizontal distance.
115
+ * @returns this pen, for chaining.
116
+ */
117
+ hLine(distance: number): this;
118
+ /**
119
+ * Draw a vertical line to an absolute Y coordinate.
120
+ * @param yPos - the absolute y.
121
+ * @returns this pen, for chaining.
122
+ */
123
+ vLineTo(yPos: number): this;
124
+ /**
125
+ * Draw a horizontal line to an absolute X coordinate.
126
+ * @param xPos - the absolute x.
127
+ * @returns this pen, for chaining.
128
+ */
129
+ hLineTo(xPos: number): this;
130
+ /**
131
+ * Draw a line to an absolute point in polar form.
132
+ * @param polar - `[radius, angleDeg]`.
133
+ * @returns this pen, for chaining.
134
+ */
135
+ polarLineTo(polar: Point2): this;
136
+ /**
137
+ * Draw a line in polar relative form.
138
+ * @param distance - radial distance.
139
+ * @param angle - angle in degrees.
140
+ * @returns this pen, for chaining.
141
+ */
142
+ polarLine(distance: number, angle: number): this;
143
+ /**
144
+ * Draw a line tangent to the previous curve.
145
+ * @param distance - distance along the tangent.
146
+ * @returns this pen, for chaining.
147
+ */
148
+ tangentLine(distance: number): this;
149
+ /**
150
+ * Draw a circular arc through a mid-point to an absolute end point.
151
+ * @param end - the absolute end point.
152
+ * @param midPoint - a point on the arc.
153
+ * @returns this pen, for chaining.
154
+ */
155
+ threePointsArcTo(end: Point2, midPoint: Point2): this;
156
+ /**
157
+ * Draw a circular arc through a via-point to an end point, both relative.
158
+ * @param x - relative x end distance.
159
+ * @param y - relative y end distance.
160
+ * @param viaX - relative via x distance.
161
+ * @param viaY - relative via y distance.
162
+ * @returns this pen, for chaining.
163
+ */
164
+ threePointsArc(x: number, y: number, viaX: number, viaY: number): this;
165
+ /**
166
+ * Draw a circular arc to an absolute end, bulging `sagitta` off the chord.
167
+ * @param end - the absolute end point.
168
+ * @param sagitta - the sagitta (signed bulge off the chord).
169
+ * @returns this pen, for chaining.
170
+ */
171
+ sagittaArcTo(end: Point2, sagitta: number): this;
172
+ /**
173
+ * Draw a circular arc to a relative end, bulging `sagitta`.
174
+ * @param x - relative x end distance.
175
+ * @param y - relative y end distance.
176
+ * @param sagitta - the sagitta.
177
+ * @returns this pen, for chaining.
178
+ */
179
+ sagittaArc(x: number, y: number, sagitta: number): this;
180
+ /**
181
+ * Draw a vertical sagitta arc of `distance` and `sagitta`.
182
+ * @param distance - vertical distance.
183
+ * @param sagitta - the sagitta.
184
+ * @returns this pen, for chaining.
185
+ */
186
+ vSagittaArc(distance: number, sagitta: number): this;
187
+ /**
188
+ * Draw a horizontal sagitta arc of `distance` and `sagitta`.
189
+ * @param distance - horizontal distance.
190
+ * @param sagitta - the sagitta.
191
+ * @returns this pen, for chaining.
192
+ */
193
+ hSagittaArc(distance: number, sagitta: number): this;
194
+ /**
195
+ * Draw a circular arc to an absolute end via a bulge factor.
196
+ * @param end - the absolute end point.
197
+ * @param bulge - the bulge factor.
198
+ * @returns this pen, for chaining.
199
+ */
200
+ bulgeArcTo(end: Point2, bulge: number): this;
201
+ /**
202
+ * Draw a circular arc to a relative end via a bulge factor.
203
+ * @param x - horizontal end distance.
204
+ * @param y - vertical end distance.
205
+ * @param bulge - the bulge factor.
206
+ * @returns this pen, for chaining.
207
+ */
208
+ bulgeArc(x: number, y: number, bulge: number): this;
209
+ /**
210
+ * Draw a vertical bulge arc.
211
+ * @param distance - vertical distance.
212
+ * @param bulge - the bulge factor.
213
+ * @returns this pen, for chaining.
214
+ */
215
+ vBulgeArc(distance: number, bulge: number): this;
216
+ /**
217
+ * Draw a horizontal bulge arc.
218
+ * @param distance - horizontal distance.
219
+ * @param bulge - the bulge factor.
220
+ * @returns this pen, for chaining.
221
+ */
222
+ hBulgeArc(distance: number, bulge: number): this;
223
+ /**
224
+ * Draw a circular arc tangent to the previous curve, ending at `end`.
225
+ * @param end - the absolute end point.
226
+ * @returns this pen, for chaining.
227
+ */
228
+ tangentArcTo(end: Point2): this;
229
+ /**
230
+ * Draw a tangent arc to a relative offset.
231
+ * @param x - horizontal end distance.
232
+ * @param y - vertical end distance.
233
+ * @returns this pen, for chaining.
234
+ */
235
+ tangentArc(x: number, y: number): this;
236
+ /**
237
+ * Draw an elliptical arc (SVG-style endpoint parameters).
238
+ * @param end - the absolute end point.
239
+ * @param horizontalRadius - the horizontal radius.
240
+ * @param verticalRadius - the vertical radius.
241
+ * @param rotation - rotation in degrees.
242
+ * @param longAxis - SVG large-arc flag.
243
+ * @param sweep - SVG sweep flag.
244
+ * @returns this pen, for chaining.
245
+ */
246
+ ellipseTo(end: Point2, horizontalRadius: number, verticalRadius: number, rotation?: number, longAxis?: boolean, sweep?: boolean): this;
247
+ /**
248
+ * Draw an elliptical arc to a relative end point.
249
+ * @param x - relative x end distance.
250
+ * @param y - relative y end distance.
251
+ * @param horizontalRadius - the horizontal radius.
252
+ * @param verticalRadius - the vertical radius.
253
+ * @param rotation - rotation in degrees.
254
+ * @param longAxis - SVG large-arc flag.
255
+ * @param sweep - SVG sweep flag.
256
+ * @returns this pen, for chaining.
257
+ */
258
+ ellipse(x: number, y: number, horizontalRadius: number, verticalRadius: number, rotation?: number, longAxis?: boolean, sweep?: boolean): this;
259
+ /**
260
+ * Draw a half-ellipse arc to an absolute end point with a given minor radius.
261
+ * @param end - the absolute end point.
262
+ * @param minorRadius - the minor radius.
263
+ * @param sweep - SVG sweep flag.
264
+ * @returns this pen, for chaining.
265
+ */
266
+ halfEllipseTo(end: Point2, minorRadius: number, sweep?: boolean): this;
267
+ /**
268
+ * Draw a half-ellipse arc to a relative end point with a given minor radius.
269
+ * @param x - relative x end distance.
270
+ * @param y - relative y end distance.
271
+ * @param minorRadius - the minor radius.
272
+ * @param sweep - SVG sweep flag.
273
+ * @returns this pen, for chaining.
274
+ */
275
+ halfEllipse(x: number, y: number, minorRadius: number, sweep?: boolean): this;
276
+ /**
277
+ * Draw a Bezier curve to an absolute end through control points.
278
+ * @param end - the absolute end point.
279
+ * @param controlPoints - one control point (quadratic) or two (cubic).
280
+ * @returns this pen, for chaining.
281
+ */
282
+ bezierCurveTo(end: Point2, controlPoints: Point2[]): this;
283
+ /**
284
+ * Draw a quadratic Bezier to an absolute end point.
285
+ * @param end - the absolute end point.
286
+ * @param controlPoint - the single control point.
287
+ * @returns this pen, for chaining.
288
+ */
289
+ quadraticBezierCurveTo(end: Point2, controlPoint: Point2): this;
290
+ /**
291
+ * Draw a cubic Bezier to an absolute end point.
292
+ * @param end - the absolute end point.
293
+ * @param startControlPoint - the start control point.
294
+ * @param endControlPoint - the end control point.
295
+ * @returns this pen, for chaining.
296
+ */
297
+ cubicBezierCurveTo(end: Point2, startControlPoint: Point2, endControlPoint: Point2): this;
298
+ /**
299
+ * Draw a smooth cubic spline to an absolute end point.
300
+ * @param _end - the absolute end point.
301
+ * @param _config - spline smoothing options.
302
+ * @returns this pen, for chaining.
303
+ * @throws not yet ported (needs the spline control helper).
304
+ */
305
+ smoothSplineTo(_end: Point2, _config?: SplineOptions): this;
306
+ /**
307
+ * Draw a smooth cubic spline to a relative end point.
308
+ * @param _x - relative x end distance.
309
+ * @param _y - relative y end distance.
310
+ * @param _config - spline smoothing options.
311
+ * @returns this pen, for chaining.
312
+ * @throws not yet ported (needs the spline control helper).
313
+ */
314
+ smoothSpline(_x: number, _y: number, _config?: SplineOptions): this;
315
+ /**
316
+ * Change the corner between the previous and next segment.
317
+ * @param _radius - the corner radius.
318
+ * @param _mode - the corner kind.
319
+ * @returns this pen, for chaining.
320
+ * @throws D-group corner ops (fillet/chamfer/dogbone) are not yet ported.
321
+ */
322
+ customCorner(_radius: number, _mode?: CornerMode): this;
323
+ /**
324
+ * Close the sketch by drawing a final segment back to the start.
325
+ * @returns the closed, ordered curve list.
326
+ */
327
+ close(): Curve2dObj[];
328
+ /**
329
+ * Close by mirroring the drawn segments across the start→current chord.
330
+ * @returns the closed, mirror-augmented curve list.
331
+ * @throws not yet ported (needs the curve-mirror transform).
332
+ */
333
+ closeWithMirror(): Curve2dObj[];
334
+ /**
335
+ * The ordered drawn curve list (no implicit close).
336
+ * @returns the drawn segments in draw order.
337
+ */
338
+ curves(): Curve2dObj[];
339
+ }
340
+ //# sourceMappingURL=pen-sketcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pen-sketcher.d.ts","sourceRoot":"","sources":["../../src/geometry2d/pen-sketcher.ts"],"names":[],"mappings":"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"}