prettier 4.0.3 → 4.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -1
  3. data/node_modules/prettier/LICENSE +53 -124
  4. data/node_modules/prettier/doc.js +5 -5
  5. data/node_modules/prettier/index.cjs +1 -1
  6. data/node_modules/prettier/index.d.ts +5 -7
  7. data/node_modules/prettier/index.mjs +7854 -7334
  8. data/node_modules/prettier/internal/cli.mjs +18 -19
  9. data/node_modules/prettier/package.json +1 -2
  10. data/node_modules/prettier/plugins/acorn.js +1 -1
  11. data/node_modules/prettier/plugins/acorn.mjs +1 -1
  12. data/node_modules/prettier/plugins/angular.js +1 -2
  13. data/node_modules/prettier/plugins/angular.mjs +1 -2
  14. data/node_modules/prettier/plugins/babel.js +1 -1
  15. data/node_modules/prettier/plugins/babel.mjs +1 -1
  16. data/node_modules/prettier/plugins/estree.js +26 -26
  17. data/node_modules/prettier/plugins/estree.mjs +26 -26
  18. data/node_modules/prettier/plugins/flow.js +17 -17
  19. data/node_modules/prettier/plugins/flow.mjs +16 -16
  20. data/node_modules/prettier/plugins/glimmer.js +20 -20
  21. data/node_modules/prettier/plugins/glimmer.mjs +20 -20
  22. data/node_modules/prettier/plugins/markdown.js +40 -40
  23. data/node_modules/prettier/plugins/markdown.mjs +40 -40
  24. data/node_modules/prettier/plugins/meriyah.js +5 -5
  25. data/node_modules/prettier/plugins/meriyah.mjs +5 -5
  26. data/node_modules/prettier/plugins/postcss.js +1 -1
  27. data/node_modules/prettier/plugins/postcss.mjs +1 -1
  28. data/node_modules/prettier/plugins/typescript.js +20 -20
  29. data/node_modules/prettier/plugins/typescript.mjs +20 -20
  30. data/node_modules/prettier/standalone.d.ts +1 -1
  31. data/node_modules/prettier/standalone.js +15 -18
  32. data/node_modules/prettier/standalone.mjs +16 -19
  33. data/package.json +1 -1
  34. data/src/plugin.js +7 -4
  35. metadata +2 -3
  36. data/node_modules/prettier/internal/internal.mjs +0 -712
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d5a9354249ad3a6eabfd2a7428a80d502044d642ced87208c09ad851228218cb
4
- data.tar.gz: '088007ad44d0774daf8a3b40cfed6dadc61d528e4e329932a3fbb36270e15b39'
3
+ metadata.gz: e23318c4ecbba93027a77783c06a53a824c84f9d28bffaa959d1aa2ebdffe842
4
+ data.tar.gz: 0d26d619f830e9516e493efa6d3264315a9af728707bc3869d5d67fe659546e2
5
5
  SHA512:
6
- metadata.gz: 49d9ec602df56c98d0fc1c6751bf08939c3762f6bd256ae578be65acf8d415ddb50be7f0210a769a520ad9636d802cb13069f4a8461e7eac3879116fd6e39b46
7
- data.tar.gz: 6c7b277cf8b896e89c4ddab36c2a6ac0383a92bc9c517d69914b6c51596d8d0e6f19d669605b6ade8346631d579dc7fee320d3f407acdd030b8991b76c95d83f
6
+ metadata.gz: 311de395f7a33b53f0c57764473984006988f6225f565bf4ea84bcc65c803ad34fcfd19ab02f20d500952879c1b4d3d725b35492de7117271b17285160949389
7
+ data.tar.gz: ca32227c84bc54c62852ceb885e6997f88f04fa4bbd61b0fa00229b860900d894f9c2ceb65a2d6e8d5c10dabccd190e0719b582fea6264775de156be1abff574
data/CHANGELOG.md CHANGED
@@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [4.0.4] - 2023-12-12
10
+
11
+ ### Changed
12
+
13
+ - [#1413](https://github.com/prettier/plugin-ruby/pull/1413) - hrabe - Fix the cwd detection for mono-repos.
14
+
9
15
  ## [4.0.3] - 2023-11-27
10
16
 
11
17
  ### Changed
@@ -1298,7 +1304,8 @@ would previously result in `array[]`, but now prints properly.
1298
1304
 
1299
1305
  - Initial release 🎉
1300
1306
 
1301
- [unreleased]: https://github.com/prettier/plugin-ruby/compare/v4.0.3...HEAD
1307
+ [unreleased]: https://github.com/prettier/plugin-ruby/compare/v4.0.4...HEAD
1308
+ [4.0.4]: https://github.com/prettier/plugin-ruby/compare/v4.0.3...v4.0.4
1302
1309
  [4.0.3]: https://github.com/prettier/plugin-ruby/compare/v4.0.2...v4.0.3
1303
1310
  [4.0.2]: https://github.com/prettier/plugin-ruby/compare/v4.0.1...v4.0.2
1304
1311
  [4.0.1]: https://github.com/prettier/plugin-ruby/compare/v4.0.0...v4.0.1
@@ -27,7 +27,7 @@ Author: angular
27
27
 
28
28
  ----------------------------------------
29
29
 
30
- ### @babel/code-frame@v7.22.13
30
+ ### @babel/code-frame@v7.23.5
31
31
 
32
32
  > Generate errors that contain a code frame that point to source locations.
33
33
 
@@ -94,7 +94,7 @@ Author: The Babel Team (https://babel.dev/team)
94
94
 
95
95
  ----------------------------------------
96
96
 
97
- ### @babel/highlight@v7.22.13
97
+ ### @babel/highlight@v7.23.4
98
98
 
99
99
  > Syntax highlight JavaScript strings for output in terminals.
100
100
 
@@ -128,7 +128,7 @@ Author: The Babel Team (https://babel.dev/team)
128
128
 
129
129
  ----------------------------------------
130
130
 
131
- ### @babel/parser@v7.23.3
131
+ ### @babel/parser@v7.23.5
132
132
 
133
133
  > A JavaScript parser
134
134
 
@@ -187,7 +187,7 @@ License: MIT
187
187
 
188
188
  ----------------------------------------
189
189
 
190
- ### @glimmer/syntax@v0.85.12
190
+ ### @glimmer/syntax@v0.85.13
191
191
 
192
192
  > Copyright (c) 2015 Tilde, Inc.
193
193
  >
@@ -211,7 +211,7 @@ License: MIT
211
211
 
212
212
  ----------------------------------------
213
213
 
214
- ### @glimmer/util@v0.85.12
214
+ ### @glimmer/util@v0.85.13
215
215
 
216
216
  > Common utilities used in Glimmer
217
217
 
@@ -239,7 +239,7 @@ License: MIT
239
239
 
240
240
  ----------------------------------------
241
241
 
242
- ### @glimmer/wire-format@v0.85.12
242
+ ### @glimmer/wire-format@v0.85.13
243
243
 
244
244
  License: MIT
245
245
 
@@ -454,7 +454,7 @@ Author: Alex Bell <alex@bellandwhistle.net>
454
454
 
455
455
  ----------------------------------------
456
456
 
457
- ### @typescript-eslint/types@v6.10.0
457
+ ### @typescript-eslint/types@v6.13.2
458
458
 
459
459
  > Types for the TypeScript-ESTree AST spec
460
460
 
@@ -485,7 +485,7 @@ Repository: <https://github.com/typescript-eslint/typescript-eslint.git>
485
485
 
486
486
  ----------------------------------------
487
487
 
488
- ### @typescript-eslint/typescript-estree@v6.10.0
488
+ ### @typescript-eslint/typescript-estree@v6.13.2
489
489
 
490
490
  > A parser that converts TypeScript source code into an ESTree compatible form
491
491
 
@@ -583,7 +583,7 @@ Repository: <https://github.com/acornjs/acorn-jsx>
583
583
 
584
584
  ----------------------------------------
585
585
 
586
- ### angular-estree-parser@v8.0.3
586
+ ### angular-estree-parser@v9.0.0
587
587
 
588
588
  > A parser that converts Angular source code into an ESTree-compatible form
589
589
 
@@ -1599,7 +1599,7 @@ Author: Matteo Collina <hello@matteocollina.com>
1599
1599
 
1600
1600
  ----------------------------------------
1601
1601
 
1602
- ### file-entry-cache@v7.0.1
1602
+ ### file-entry-cache@v7.0.2
1603
1603
 
1604
1604
  > Super simple cache for file metadata, useful for process that work o a given series of files and that only need to repeat the job on the changed ones since the previous run of the process
1605
1605
 
@@ -1688,41 +1688,6 @@ Author: Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
1688
1688
 
1689
1689
  ----------------------------------------
1690
1690
 
1691
- ### find-parent-dir@v0.3.1
1692
-
1693
- > Finds the first parent directory that contains a given file or directory.
1694
-
1695
- License: MIT
1696
- Homepage: <https://github.com/thlorenz/find-parent-dir>
1697
- Repository: <git://github.com/thlorenz/find-parent-dir.git>
1698
- Author: Thorsten Lorenz <thlorenz@gmx.de> (http://thlorenz.com)
1699
-
1700
- > Copyright 2013 Thorsten Lorenz.
1701
- > All rights reserved.
1702
- >
1703
- > Permission is hereby granted, free of charge, to any person
1704
- > obtaining a copy of this software and associated documentation
1705
- > files (the "Software"), to deal in the Software without
1706
- > restriction, including without limitation the rights to use,
1707
- > copy, modify, merge, publish, distribute, sublicense, and/or sell
1708
- > copies of the Software, and to permit persons to whom the
1709
- > Software is furnished to do so, subject to the following
1710
- > conditions:
1711
- >
1712
- > The above copyright notice and this permission notice shall be
1713
- > included in all copies or substantial portions of the Software.
1714
- >
1715
- > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
1716
- > EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
1717
- > OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
1718
- > NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
1719
- > HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
1720
- > WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
1721
- > FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
1722
- > OTHER DEALINGS IN THE SOFTWARE.
1723
-
1724
- ----------------------------------------
1725
-
1726
1691
  ### find-up@v6.3.0
1727
1692
 
1728
1693
  > Find a file or directory by walking up parent directories
@@ -1742,7 +1707,7 @@ Author: Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
1742
1707
 
1743
1708
  ----------------------------------------
1744
1709
 
1745
- ### flat-cache@v3.1.1
1710
+ ### flat-cache@v3.2.0
1746
1711
 
1747
1712
  > A stupidly simple key/value storage using files to persist some data
1748
1713
 
@@ -1835,7 +1800,7 @@ Contributors:
1835
1800
 
1836
1801
  ----------------------------------------
1837
1802
 
1838
- ### flow-parser@v0.221.0
1803
+ ### flow-parser@v0.223.3
1839
1804
 
1840
1805
  > JavaScript parser written in OCaml. Produces ESTree AST
1841
1806
 
@@ -2049,7 +2014,7 @@ Author: Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
2049
2014
 
2050
2015
  ----------------------------------------
2051
2016
 
2052
- ### ignore@v5.2.4
2017
+ ### ignore@v5.3.0
2053
2018
 
2054
2019
  > Ignore is a manager and filter for .gitignore rules, the one used by eslint, gitbook and many others.
2055
2020
 
@@ -2630,6 +2595,38 @@ Contributors:
2630
2595
 
2631
2596
  ----------------------------------------
2632
2597
 
2598
+ ### iterate-directory-up@v1.1.1
2599
+
2600
+ > Iterate directory up.
2601
+
2602
+ License: MIT
2603
+ Homepage: <https://github.com/fisker/iterate-directory-up#readme>
2604
+ Author: fisker Cheung <lionkay@gmail.com> (https://www.fiskercheung.com/)
2605
+
2606
+ > MIT License
2607
+ >
2608
+ > Copyright (c) fisker Cheung <lionkay@gmail.com> (https://www.fiskercheung.com/)
2609
+ >
2610
+ > Permission is hereby granted, free of charge, to any person obtaining a copy
2611
+ > of this software and associated documentation files (the "Software"), to deal
2612
+ > in the Software without restriction, including without limitation the rights
2613
+ > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2614
+ > copies of the Software, and to permit persons to whom the Software is
2615
+ > furnished to do so, subject to the following conditions:
2616
+ >
2617
+ > The above copyright notice and this permission notice shall be included in all
2618
+ > copies or substantial portions of the Software.
2619
+ >
2620
+ > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2621
+ > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2622
+ > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2623
+ > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2624
+ > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2625
+ > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2626
+ > SOFTWARE.
2627
+
2628
+ ----------------------------------------
2629
+
2633
2630
  ### jest-docblock@v29.7.0
2634
2631
 
2635
2632
  License: MIT
@@ -2759,42 +2756,6 @@ Author: Dominic Tarr <dominic.tarr@gmail.com> (http://dominictarr.com)
2759
2756
 
2760
2757
  ----------------------------------------
2761
2758
 
2762
- ### json-parse-even-better-errors@v3.0.0
2763
-
2764
- > JSON.parse with context information on error
2765
-
2766
- License: MIT
2767
- Repository: <https://github.com/npm/json-parse-even-better-errors.git>
2768
- Author: GitHub Inc.
2769
-
2770
- > Copyright 2017 Kat Marchán
2771
- > Copyright npm, Inc.
2772
- >
2773
- > Permission is hereby granted, free of charge, to any person obtaining a
2774
- > copy of this software and associated documentation files (the "Software"),
2775
- > to deal in the Software without restriction, including without limitation
2776
- > the rights to use, copy, modify, merge, publish, distribute, sublicense,
2777
- > and/or sell copies of the Software, and to permit persons to whom the
2778
- > Software is furnished to do so, subject to the following conditions:
2779
- >
2780
- > The above copyright notice and this permission notice shall be included in
2781
- > all copies or substantial portions of the Software.
2782
- >
2783
- > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2784
- > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2785
- > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2786
- > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2787
- > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
2788
- > FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
2789
- > DEALINGS IN THE SOFTWARE.
2790
- >
2791
- > ---
2792
- >
2793
- > This library is a fork of 'better-json-errors' by Kat Marchán, extended and
2794
- > distributed under the terms of the MIT license above.
2795
-
2796
- ----------------------------------------
2797
-
2798
2759
  ### json5@v2.2.3
2799
2760
 
2800
2761
  > JSON for Humans
@@ -2834,7 +2795,7 @@ Contributors:
2834
2795
 
2835
2796
  ----------------------------------------
2836
2797
 
2837
- ### keyv@v4.5.3
2798
+ ### keyv@v4.5.4
2838
2799
 
2839
2800
  > Simple key-value storage with support for multiple backends
2840
2801
 
@@ -2864,38 +2825,6 @@ Author: Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
2864
2825
 
2865
2826
  ----------------------------------------
2866
2827
 
2867
- ### lilconfig@v2.1.0
2868
-
2869
- > A zero-dependency alternative to cosmiconfig
2870
-
2871
- License: MIT
2872
- Repository: <https://github.com/antonk52/lilconfig>
2873
- Author: antonk52
2874
-
2875
- > MIT License
2876
- >
2877
- > Copyright (c) 2022 Anton Kastritskiy
2878
- >
2879
- > Permission is hereby granted, free of charge, to any person obtaining a copy
2880
- > of this software and associated documentation files (the "Software"), to deal
2881
- > in the Software without restriction, including without limitation the rights
2882
- > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
2883
- > copies of the Software, and to permit persons to whom the Software is
2884
- > furnished to do so, subject to the following conditions:
2885
- >
2886
- > The above copyright notice and this permission notice shall be included in all
2887
- > copies or substantial portions of the Software.
2888
- >
2889
- > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
2890
- > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
2891
- > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
2892
- > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
2893
- > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2894
- > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2895
- > SOFTWARE.
2896
-
2897
- ----------------------------------------
2898
-
2899
2828
  ### lines-and-columns@v2.0.4
2900
2829
 
2901
2830
  > Maps lines and columns to character offsets and back.
@@ -3077,7 +3006,7 @@ Repository: <git@github.com:teambition/merge2.git>
3077
3006
 
3078
3007
  ----------------------------------------
3079
3008
 
3080
- ### meriyah@v4.3.8
3009
+ ### meriyah@v4.3.9
3081
3010
 
3082
3011
  > A 100% compliant, self-hosted javascript parser with high focus on both performance and stability
3083
3012
 
@@ -3252,7 +3181,7 @@ Author: Yoan Arnaudov <jonidev@gmail.com>
3252
3181
 
3253
3182
  ----------------------------------------
3254
3183
 
3255
- ### nanoid@v3.3.6
3184
+ ### nanoid@v3.3.7
3256
3185
 
3257
3186
  > A tiny (116 bytes), secure URL-friendly unique string ID generator
3258
3187
 
@@ -3411,7 +3340,7 @@ Contributors:
3411
3340
 
3412
3341
  ----------------------------------------
3413
3342
 
3414
- ### parse-json@v8.0.1
3343
+ ### parse-json@v8.1.0
3415
3344
 
3416
3345
  > Parse JSON with more helpful errors
3417
3346
 
@@ -3589,7 +3518,7 @@ Author: typicode
3589
3518
 
3590
3519
  ----------------------------------------
3591
3520
 
3592
- ### postcss@v8.4.31
3521
+ ### postcss@v8.4.32
3593
3522
 
3594
3523
  > Tool for transforming styles with JS plugins
3595
3524
 
@@ -4344,7 +4273,7 @@ Contributors:
4344
4273
 
4345
4274
  ----------------------------------------
4346
4275
 
4347
- ### ts-api-utils@v1.0.1
4276
+ ### ts-api-utils@v1.0.3
4348
4277
 
4349
4278
  > Utility functions for working with TypeScript's API. Successor to the wonderful tsutils.
4350
4279
 
@@ -4375,7 +4304,7 @@ Author: Josh Goldberg <npm@joshuakgoldberg.com>
4375
4304
 
4376
4305
  ----------------------------------------
4377
4306
 
4378
- ### typescript@v5.2.2
4307
+ ### typescript@v5.3.2
4379
4308
 
4380
4309
  > TypeScript is a language for application scale JavaScript development
4381
4310
 
@@ -4720,7 +4649,7 @@ Contributors:
4720
4649
 
4721
4650
  ----------------------------------------
4722
4651
 
4723
- ### url-or-path@v2.1.0
4652
+ ### url-or-path@v2.3.0
4724
4653
 
4725
4654
  > Convert between file URL and path.
4726
4655
 
@@ -13,13 +13,13 @@
13
13
  typeof globalThis !== "undefined"
14
14
  ? globalThis
15
15
  : typeof global !== "undefined"
16
- ? global
17
- : typeof self !== "undefined"
18
- ? self
19
- : this || {};
16
+ ? global
17
+ : typeof self !== "undefined"
18
+ ? self
19
+ : this || {};
20
20
  root.doc = interopModuleDefault();
21
21
  }
22
- })(function() {
22
+ })(function () {
23
23
  "use strict";
24
24
  var __defProp = Object.defineProperty;
25
25
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -585,7 +585,7 @@ var init_public = __esm({
585
585
  // src/main/version.evaluate.cjs
586
586
  var require_version_evaluate = __commonJS({
587
587
  "src/main/version.evaluate.cjs"(exports2, module2) {
588
- module2.exports = "3.1.0";
588
+ module2.exports = "3.1.1";
589
589
  }
590
590
  });
591
591
 
@@ -50,8 +50,8 @@ type IndexValue<T, P> = T extends any[]
50
50
  ? T[P]
51
51
  : never
52
52
  : P extends keyof T
53
- ? T[P]
54
- : never;
53
+ ? T[P]
54
+ : never;
55
55
 
56
56
  // Determines if an object T is an array like string[] (in which case this
57
57
  // evaluates to false) or a tuple like [string] (in which case this evaluates to
@@ -60,8 +60,8 @@ type IndexValue<T, P> = T extends any[]
60
60
  type IsTuple<T> = T extends []
61
61
  ? true
62
62
  : T extends [infer First, ...infer Remain]
63
- ? IsTuple<Remain>
64
- : false;
63
+ ? IsTuple<Remain>
64
+ : false;
65
65
 
66
66
  type CallProperties<T> = T extends any[] ? IndexProperties<T> : keyof T;
67
67
  type IterProperties<T> = T extends any[]
@@ -548,8 +548,6 @@ export interface CursorOptions extends Options {
548
548
  * Specify where the cursor is.
549
549
  */
550
550
  cursorOffset: number;
551
- rangeStart?: never;
552
- rangeEnd?: never;
553
551
  }
554
552
 
555
553
  export interface CursorResult {
@@ -572,7 +570,7 @@ export function check(source: string, options?: Options): Promise<boolean>;
572
570
  * `formatWithCursor` both formats the code, and translates a cursor position from unformatted code to formatted code.
573
571
  * This is useful for editor integrations, to prevent the cursor from moving when code is formatted.
574
572
  *
575
- * The `cursorOffset` option should be provided, to specify where the cursor is. This option cannot be used with `rangeStart` and `rangeEnd`.
573
+ * The `cursorOffset` option should be provided, to specify where the cursor is.
576
574
  */
577
575
  export function formatWithCursor(
578
576
  source: string,