immosquare-cleaner 0.1.63 → 0.1.65

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 (1339) hide show
  1. checksums.yaml +4 -4
  2. data/lib/immosquare-cleaner/version.rb +1 -1
  3. data/lib/immosquare-cleaner.rb +37 -37
  4. data/lib/tasks/immosquare_cleaner.rake +17 -1
  5. data/linters/rubocop/cop/custom_cops/style/font_awesome_normalization.rb +106 -0
  6. data/linters/rubocop-3.4.1.yml +3 -1
  7. data/linters/rubocop.yml +4 -0
  8. data/node_modules/@babel/compat-data/data/plugins.json +6 -7
  9. data/node_modules/@babel/compat-data/package.json +2 -2
  10. data/node_modules/@babel/core/lib/config/files/configuration.js +3 -0
  11. data/node_modules/@babel/core/lib/config/files/configuration.js.map +1 -1
  12. data/node_modules/@babel/core/lib/config/files/module-types.js +74 -63
  13. data/node_modules/@babel/core/lib/config/files/module-types.js.map +1 -1
  14. data/node_modules/@babel/core/lib/config/files/plugins.js +1 -0
  15. data/node_modules/@babel/core/lib/config/files/plugins.js.map +1 -1
  16. data/node_modules/@babel/core/lib/config/partial.js +1 -1
  17. data/node_modules/@babel/core/lib/config/partial.js.map +1 -1
  18. data/node_modules/@babel/core/lib/index.js +1 -2
  19. data/node_modules/@babel/core/lib/index.js.map +1 -1
  20. data/node_modules/@babel/core/lib/parser/index.js.map +1 -1
  21. data/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs +3 -1
  22. data/node_modules/@babel/core/lib/transformation/file/babel-7-helpers.cjs.map +1 -1
  23. data/node_modules/@babel/core/lib/transformation/file/file.js +2 -4
  24. data/node_modules/@babel/core/lib/transformation/file/file.js.map +1 -1
  25. data/node_modules/@babel/core/lib/transformation/normalize-file.js.map +1 -1
  26. data/node_modules/@babel/core/lib/transformation/util/clone-deep.js +27 -7
  27. data/node_modules/@babel/core/lib/transformation/util/clone-deep.js.map +1 -1
  28. data/node_modules/@babel/core/package.json +13 -14
  29. data/node_modules/@babel/generator/lib/generators/classes.js +7 -4
  30. data/node_modules/@babel/generator/lib/generators/classes.js.map +1 -1
  31. data/node_modules/@babel/generator/lib/generators/deprecated.js +28 -0
  32. data/node_modules/@babel/generator/lib/generators/deprecated.js.map +1 -0
  33. data/node_modules/@babel/generator/lib/generators/expressions.js +9 -3
  34. data/node_modules/@babel/generator/lib/generators/expressions.js.map +1 -1
  35. data/node_modules/@babel/generator/lib/generators/jsx.js +6 -1
  36. data/node_modules/@babel/generator/lib/generators/jsx.js.map +1 -1
  37. data/node_modules/@babel/generator/lib/generators/template-literals.js +16 -11
  38. data/node_modules/@babel/generator/lib/generators/template-literals.js.map +1 -1
  39. data/node_modules/@babel/generator/lib/generators/types.js +0 -9
  40. data/node_modules/@babel/generator/lib/generators/types.js.map +1 -1
  41. data/node_modules/@babel/generator/lib/generators/typescript.js +36 -18
  42. data/node_modules/@babel/generator/lib/generators/typescript.js.map +1 -1
  43. data/node_modules/@babel/generator/lib/node/parentheses.js +40 -3
  44. data/node_modules/@babel/generator/lib/node/parentheses.js.map +1 -1
  45. data/node_modules/@babel/generator/lib/printer.js +4 -3
  46. data/node_modules/@babel/generator/lib/printer.js.map +1 -1
  47. data/node_modules/@babel/generator/package.json +5 -5
  48. data/node_modules/@babel/helper-compilation-targets/lib/index.js +1 -1
  49. data/node_modules/@babel/helper-compilation-targets/lib/index.js.map +1 -1
  50. data/node_modules/@babel/helper-compilation-targets/package.json +2 -2
  51. data/node_modules/@babel/helper-create-class-features-plugin/lib/decorators-2018-09.js +1 -9
  52. data/node_modules/@babel/helper-create-class-features-plugin/lib/decorators-2018-09.js.map +1 -1
  53. data/node_modules/@babel/helper-create-class-features-plugin/lib/decorators.js +9 -0
  54. data/node_modules/@babel/helper-create-class-features-plugin/lib/decorators.js.map +1 -1
  55. data/node_modules/@babel/helper-create-class-features-plugin/lib/features.js +1 -1
  56. data/node_modules/@babel/helper-create-class-features-plugin/lib/features.js.map +1 -1
  57. data/node_modules/@babel/helper-create-class-features-plugin/lib/index.js +8 -8
  58. data/node_modules/@babel/helper-create-class-features-plugin/lib/index.js.map +1 -1
  59. data/node_modules/@babel/helper-create-class-features-plugin/package.json +5 -5
  60. data/node_modules/@babel/helper-plugin-utils/lib/index.js.map +1 -1
  61. data/node_modules/@babel/helper-plugin-utils/package.json +2 -2
  62. data/node_modules/@babel/helper-replace-supers/lib/index.js.map +1 -1
  63. data/node_modules/@babel/helper-replace-supers/package.json +3 -3
  64. data/node_modules/@babel/helpers/lib/helpers/asyncIterator.js.map +1 -1
  65. data/node_modules/@babel/helpers/lib/helpers/isNativeFunction.js.map +1 -1
  66. data/node_modules/@babel/helpers/lib/helpers/objectWithoutProperties.js +1 -1
  67. data/node_modules/@babel/helpers/lib/helpers/objectWithoutProperties.js.map +1 -1
  68. data/node_modules/@babel/helpers/lib/helpers/objectWithoutPropertiesLoose.js +1 -1
  69. data/node_modules/@babel/helpers/lib/helpers/objectWithoutPropertiesLoose.js.map +1 -1
  70. data/node_modules/@babel/helpers/lib/helpers/wrapRegExp.js +7 -3
  71. data/node_modules/@babel/helpers/lib/helpers/wrapRegExp.js.map +1 -1
  72. data/node_modules/@babel/helpers/lib/helpers-generated.js +3 -3
  73. data/node_modules/@babel/helpers/lib/helpers-generated.js.map +1 -1
  74. data/node_modules/@babel/helpers/package.json +5 -5
  75. data/node_modules/@babel/parser/lib/index.js +426 -236
  76. data/node_modules/@babel/parser/lib/index.js.map +1 -1
  77. data/node_modules/@babel/parser/package.json +2 -2
  78. data/node_modules/@babel/parser/typings/babel-parser.d.ts +127 -164
  79. data/node_modules/@babel/plugin-transform-flow-strip-types/lib/index.js +6 -0
  80. data/node_modules/@babel/plugin-transform-flow-strip-types/lib/index.js.map +1 -1
  81. data/node_modules/@babel/plugin-transform-flow-strip-types/package.json +4 -4
  82. data/node_modules/@babel/plugin-transform-nullish-coalescing-operator/lib/index.js +3 -2
  83. data/node_modules/@babel/plugin-transform-nullish-coalescing-operator/lib/index.js.map +1 -1
  84. data/node_modules/@babel/plugin-transform-nullish-coalescing-operator/package.json +3 -3
  85. data/node_modules/@babel/plugin-transform-typescript/lib/const-enum.js +3 -1
  86. data/node_modules/@babel/plugin-transform-typescript/lib/const-enum.js.map +1 -1
  87. data/node_modules/@babel/plugin-transform-typescript/lib/enum.js +24 -11
  88. data/node_modules/@babel/plugin-transform-typescript/lib/enum.js.map +1 -1
  89. data/node_modules/@babel/plugin-transform-typescript/lib/index.js +38 -9
  90. data/node_modules/@babel/plugin-transform-typescript/lib/index.js.map +1 -1
  91. data/node_modules/@babel/plugin-transform-typescript/lib/namespace.js +2 -0
  92. data/node_modules/@babel/plugin-transform-typescript/lib/namespace.js.map +1 -1
  93. data/node_modules/@babel/plugin-transform-typescript/package.json +5 -5
  94. data/node_modules/@babel/template/lib/options.js.map +1 -1
  95. data/node_modules/@babel/template/lib/parse.js.map +1 -1
  96. data/node_modules/@babel/template/package.json +4 -4
  97. data/node_modules/@babel/traverse/lib/cache.js +4 -5
  98. data/node_modules/@babel/traverse/lib/cache.js.map +1 -1
  99. data/node_modules/@babel/traverse/lib/path/conversion.js +1 -2
  100. data/node_modules/@babel/traverse/lib/path/conversion.js.map +1 -1
  101. data/node_modules/@babel/traverse/lib/path/evaluation.js +17 -0
  102. data/node_modules/@babel/traverse/lib/path/evaluation.js.map +1 -1
  103. data/node_modules/@babel/traverse/lib/path/lib/hoister.js.map +1 -1
  104. data/node_modules/@babel/traverse/lib/path/modification.js +1 -1
  105. data/node_modules/@babel/traverse/lib/path/modification.js.map +1 -1
  106. data/node_modules/@babel/traverse/lib/path/replacement.js.map +1 -1
  107. data/node_modules/@babel/traverse/lib/scope/index.js +9 -2
  108. data/node_modules/@babel/traverse/lib/scope/index.js.map +1 -1
  109. data/node_modules/@babel/traverse/lib/visitors.js +1 -1
  110. data/node_modules/@babel/traverse/lib/visitors.js.map +1 -1
  111. data/node_modules/@babel/traverse/package.json +6 -6
  112. data/node_modules/@babel/types/lib/asserts/generated/index.js +8 -0
  113. data/node_modules/@babel/types/lib/asserts/generated/index.js.map +1 -1
  114. data/node_modules/@babel/types/lib/ast-types/generated/index.js.map +1 -1
  115. data/node_modules/@babel/types/lib/builders/generated/index.js +22 -2858
  116. data/node_modules/@babel/types/lib/builders/generated/index.js.map +1 -1
  117. data/node_modules/@babel/types/lib/builders/generated/lowercase.js +2886 -0
  118. data/node_modules/@babel/types/lib/builders/generated/lowercase.js.map +1 -0
  119. data/node_modules/@babel/types/lib/builders/generated/uppercase.js +267 -255
  120. data/node_modules/@babel/types/lib/builders/generated/uppercase.js.map +1 -1
  121. data/node_modules/@babel/types/lib/converters/gatherSequenceExpressions.js.map +1 -1
  122. data/node_modules/@babel/types/lib/converters/toSequenceExpression.js.map +1 -1
  123. data/node_modules/@babel/types/lib/definitions/core.js +26 -17
  124. data/node_modules/@babel/types/lib/definitions/core.js.map +1 -1
  125. data/node_modules/@babel/types/lib/definitions/flow.js +6 -3
  126. data/node_modules/@babel/types/lib/definitions/flow.js.map +1 -1
  127. data/node_modules/@babel/types/lib/definitions/jsx.js +9 -4
  128. data/node_modules/@babel/types/lib/definitions/jsx.js.map +1 -1
  129. data/node_modules/@babel/types/lib/definitions/typescript.js +51 -26
  130. data/node_modules/@babel/types/lib/definitions/typescript.js.map +1 -1
  131. data/node_modules/@babel/types/lib/definitions/utils.js +2 -2
  132. data/node_modules/@babel/types/lib/definitions/utils.js.map +1 -1
  133. data/node_modules/@babel/types/lib/index-legacy.d.ts +27 -7
  134. data/node_modules/@babel/types/lib/index.d.ts +1178 -1156
  135. data/node_modules/@babel/types/lib/index.js +10 -21
  136. data/node_modules/@babel/types/lib/index.js.flow +26 -6
  137. data/node_modules/@babel/types/lib/index.js.map +1 -1
  138. data/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js +9 -8
  139. data/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js.map +1 -1
  140. data/node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js +1 -0
  141. data/node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js.map +1 -1
  142. data/node_modules/@babel/types/lib/validators/generated/index.js +17 -0
  143. data/node_modules/@babel/types/lib/validators/generated/index.js.map +1 -1
  144. data/node_modules/@babel/types/package.json +12 -12
  145. data/node_modules/{@babel/eslint-parser/node_modules/eslint-visitor-keys → @eslint/config-helpers}/LICENSE +2 -2
  146. data/node_modules/@eslint/config-helpers/README.md +97 -0
  147. data/node_modules/@eslint/config-helpers/dist/cjs/index.cjs +546 -0
  148. data/node_modules/@eslint/config-helpers/dist/cjs/index.d.cts +22 -0
  149. data/node_modules/@eslint/config-helpers/dist/cjs/types.cts +31 -0
  150. data/node_modules/@eslint/config-helpers/dist/esm/index.d.ts +22 -0
  151. data/node_modules/@eslint/config-helpers/dist/esm/index.js +544 -0
  152. data/node_modules/@eslint/config-helpers/dist/esm/types.d.ts +23 -0
  153. data/node_modules/@eslint/config-helpers/dist/esm/types.ts +31 -0
  154. data/node_modules/@eslint/config-helpers/package.json +60 -0
  155. data/node_modules/@eslint/js/package.json +1 -1
  156. data/node_modules/@eslint-community/eslint-utils/index.js +21 -1
  157. data/node_modules/@eslint-community/eslint-utils/index.js.map +1 -1
  158. data/node_modules/@eslint-community/eslint-utils/index.mjs +21 -1
  159. data/node_modules/@eslint-community/eslint-utils/index.mjs.map +1 -1
  160. data/node_modules/@eslint-community/eslint-utils/package.json +1 -1
  161. data/node_modules/acorn/CHANGELOG.md +12 -0
  162. data/node_modules/acorn/dist/acorn.js +33 -24
  163. data/node_modules/acorn/dist/acorn.mjs +33 -24
  164. data/node_modules/acorn/package.json +1 -1
  165. data/node_modules/async-function/CHANGELOG.md +16 -0
  166. data/node_modules/{jscodeshift → async-function}/LICENSE +1 -1
  167. data/node_modules/async-function/README.md +51 -0
  168. data/node_modules/async-function/index.d.mts +3 -0
  169. data/node_modules/async-function/index.d.ts +13 -0
  170. data/node_modules/async-function/index.js +8 -0
  171. data/node_modules/async-function/index.mjs +4 -0
  172. data/node_modules/async-function/legacy.js +18 -0
  173. data/node_modules/async-function/package.json +86 -0
  174. data/node_modules/async-function/require.mjs +5 -0
  175. data/node_modules/async-function/test/index.js +40 -0
  176. data/node_modules/async-function/tsconfig.json +9 -0
  177. data/node_modules/browserslist/index.js +23 -4
  178. data/node_modules/browserslist/node.js +69 -60
  179. data/node_modules/browserslist/package.json +1 -1
  180. data/node_modules/call-bind-apply-helpers/CHANGELOG.md +7 -0
  181. data/node_modules/call-bind-apply-helpers/index.d.ts +38 -20
  182. data/node_modules/call-bind-apply-helpers/index.js +1 -1
  183. data/node_modules/call-bind-apply-helpers/package.json +8 -8
  184. data/node_modules/call-bind-apply-helpers/test/index.js +4 -4
  185. data/node_modules/call-bound/CHANGELOG.md +8 -0
  186. data/node_modules/call-bound/index.d.ts +91 -10
  187. data/node_modules/call-bound/index.js +4 -3
  188. data/node_modules/call-bound/package.json +10 -10
  189. data/node_modules/call-bound/test/index.js +11 -4
  190. data/node_modules/call-bound/tsconfig.json +2 -1
  191. data/node_modules/caniuse-lite/data/agents.js +1 -1
  192. data/node_modules/caniuse-lite/data/browserVersions.js +1 -1
  193. data/node_modules/caniuse-lite/data/features/aac.js +1 -1
  194. data/node_modules/caniuse-lite/data/features/abortcontroller.js +1 -1
  195. data/node_modules/caniuse-lite/data/features/ac3-ec3.js +1 -1
  196. data/node_modules/caniuse-lite/data/features/accelerometer.js +1 -1
  197. data/node_modules/caniuse-lite/data/features/addeventlistener.js +1 -1
  198. data/node_modules/caniuse-lite/data/features/alternate-stylesheet.js +1 -1
  199. data/node_modules/caniuse-lite/data/features/ambient-light.js +1 -1
  200. data/node_modules/caniuse-lite/data/features/apng.js +1 -1
  201. data/node_modules/caniuse-lite/data/features/array-find-index.js +1 -1
  202. data/node_modules/caniuse-lite/data/features/array-find.js +1 -1
  203. data/node_modules/caniuse-lite/data/features/array-flat.js +1 -1
  204. data/node_modules/caniuse-lite/data/features/array-includes.js +1 -1
  205. data/node_modules/caniuse-lite/data/features/arrow-functions.js +1 -1
  206. data/node_modules/caniuse-lite/data/features/asmjs.js +1 -1
  207. data/node_modules/caniuse-lite/data/features/async-clipboard.js +1 -1
  208. data/node_modules/caniuse-lite/data/features/async-functions.js +1 -1
  209. data/node_modules/caniuse-lite/data/features/atob-btoa.js +1 -1
  210. data/node_modules/caniuse-lite/data/features/audio-api.js +1 -1
  211. data/node_modules/caniuse-lite/data/features/audio.js +1 -1
  212. data/node_modules/caniuse-lite/data/features/audiotracks.js +1 -1
  213. data/node_modules/caniuse-lite/data/features/autofocus.js +1 -1
  214. data/node_modules/caniuse-lite/data/features/auxclick.js +1 -1
  215. data/node_modules/caniuse-lite/data/features/av1.js +1 -1
  216. data/node_modules/caniuse-lite/data/features/avif.js +1 -1
  217. data/node_modules/caniuse-lite/data/features/background-attachment.js +1 -1
  218. data/node_modules/caniuse-lite/data/features/background-clip-text.js +1 -1
  219. data/node_modules/caniuse-lite/data/features/background-img-opts.js +1 -1
  220. data/node_modules/caniuse-lite/data/features/background-position-x-y.js +1 -1
  221. data/node_modules/caniuse-lite/data/features/background-repeat-round-space.js +1 -1
  222. data/node_modules/caniuse-lite/data/features/background-sync.js +1 -1
  223. data/node_modules/caniuse-lite/data/features/battery-status.js +1 -1
  224. data/node_modules/caniuse-lite/data/features/beacon.js +1 -1
  225. data/node_modules/caniuse-lite/data/features/beforeafterprint.js +1 -1
  226. data/node_modules/caniuse-lite/data/features/bigint.js +1 -1
  227. data/node_modules/caniuse-lite/data/features/blobbuilder.js +1 -1
  228. data/node_modules/caniuse-lite/data/features/bloburls.js +1 -1
  229. data/node_modules/caniuse-lite/data/features/border-image.js +1 -1
  230. data/node_modules/caniuse-lite/data/features/border-radius.js +1 -1
  231. data/node_modules/caniuse-lite/data/features/broadcastchannel.js +1 -1
  232. data/node_modules/caniuse-lite/data/features/brotli.js +1 -1
  233. data/node_modules/caniuse-lite/data/features/calc.js +1 -1
  234. data/node_modules/caniuse-lite/data/features/canvas-blending.js +1 -1
  235. data/node_modules/caniuse-lite/data/features/canvas-text.js +1 -1
  236. data/node_modules/caniuse-lite/data/features/canvas.js +1 -1
  237. data/node_modules/caniuse-lite/data/features/ch-unit.js +1 -1
  238. data/node_modules/caniuse-lite/data/features/chacha20-poly1305.js +1 -1
  239. data/node_modules/caniuse-lite/data/features/channel-messaging.js +1 -1
  240. data/node_modules/caniuse-lite/data/features/childnode-remove.js +1 -1
  241. data/node_modules/caniuse-lite/data/features/classlist.js +1 -1
  242. data/node_modules/caniuse-lite/data/features/client-hints-dpr-width-viewport.js +1 -1
  243. data/node_modules/caniuse-lite/data/features/clipboard.js +1 -1
  244. data/node_modules/caniuse-lite/data/features/colr-v1.js +1 -1
  245. data/node_modules/caniuse-lite/data/features/colr.js +1 -1
  246. data/node_modules/caniuse-lite/data/features/comparedocumentposition.js +1 -1
  247. data/node_modules/caniuse-lite/data/features/console-basic.js +1 -1
  248. data/node_modules/caniuse-lite/data/features/console-time.js +1 -1
  249. data/node_modules/caniuse-lite/data/features/const.js +1 -1
  250. data/node_modules/caniuse-lite/data/features/constraint-validation.js +1 -1
  251. data/node_modules/caniuse-lite/data/features/contenteditable.js +1 -1
  252. data/node_modules/caniuse-lite/data/features/contentsecuritypolicy.js +1 -1
  253. data/node_modules/caniuse-lite/data/features/contentsecuritypolicy2.js +1 -1
  254. data/node_modules/caniuse-lite/data/features/cookie-store-api.js +1 -1
  255. data/node_modules/caniuse-lite/data/features/cors.js +1 -1
  256. data/node_modules/caniuse-lite/data/features/createimagebitmap.js +1 -1
  257. data/node_modules/caniuse-lite/data/features/credential-management.js +1 -1
  258. data/node_modules/caniuse-lite/data/features/cryptography.js +1 -1
  259. data/node_modules/caniuse-lite/data/features/css-all.js +1 -1
  260. data/node_modules/caniuse-lite/data/features/css-anchor-positioning.js +1 -1
  261. data/node_modules/caniuse-lite/data/features/css-animation.js +1 -1
  262. data/node_modules/caniuse-lite/data/features/css-any-link.js +1 -1
  263. data/node_modules/caniuse-lite/data/features/css-appearance.js +1 -1
  264. data/node_modules/caniuse-lite/data/features/css-at-counter-style.js +1 -1
  265. data/node_modules/caniuse-lite/data/features/css-autofill.js +1 -1
  266. data/node_modules/caniuse-lite/data/features/css-backdrop-filter.js +1 -1
  267. data/node_modules/caniuse-lite/data/features/css-background-offsets.js +1 -1
  268. data/node_modules/caniuse-lite/data/features/css-backgroundblendmode.js +1 -1
  269. data/node_modules/caniuse-lite/data/features/css-boxdecorationbreak.js +1 -1
  270. data/node_modules/caniuse-lite/data/features/css-boxshadow.js +1 -1
  271. data/node_modules/caniuse-lite/data/features/css-canvas.js +1 -1
  272. data/node_modules/caniuse-lite/data/features/css-caret-color.js +1 -1
  273. data/node_modules/caniuse-lite/data/features/css-cascade-layers.js +1 -1
  274. data/node_modules/caniuse-lite/data/features/css-cascade-scope.js +1 -1
  275. data/node_modules/caniuse-lite/data/features/css-case-insensitive.js +1 -1
  276. data/node_modules/caniuse-lite/data/features/css-clip-path.js +1 -1
  277. data/node_modules/caniuse-lite/data/features/css-color-adjust.js +1 -1
  278. data/node_modules/caniuse-lite/data/features/css-color-function.js +1 -1
  279. data/node_modules/caniuse-lite/data/features/css-conic-gradients.js +1 -1
  280. data/node_modules/caniuse-lite/data/features/css-container-queries-style.js +1 -1
  281. data/node_modules/caniuse-lite/data/features/css-container-queries.js +1 -1
  282. data/node_modules/caniuse-lite/data/features/css-container-query-units.js +1 -1
  283. data/node_modules/caniuse-lite/data/features/css-containment.js +1 -1
  284. data/node_modules/caniuse-lite/data/features/css-content-visibility.js +1 -1
  285. data/node_modules/caniuse-lite/data/features/css-counters.js +1 -1
  286. data/node_modules/caniuse-lite/data/features/css-crisp-edges.js +1 -1
  287. data/node_modules/caniuse-lite/data/features/css-cross-fade.js +1 -1
  288. data/node_modules/caniuse-lite/data/features/css-default-pseudo.js +1 -1
  289. data/node_modules/caniuse-lite/data/features/css-descendant-gtgt.js +1 -1
  290. data/node_modules/caniuse-lite/data/features/css-deviceadaptation.js +1 -1
  291. data/node_modules/caniuse-lite/data/features/css-dir-pseudo.js +1 -1
  292. data/node_modules/caniuse-lite/data/features/css-display-contents.js +1 -1
  293. data/node_modules/caniuse-lite/data/features/css-element-function.js +1 -1
  294. data/node_modules/caniuse-lite/data/features/css-env-function.js +1 -1
  295. data/node_modules/caniuse-lite/data/features/css-exclusions.js +1 -1
  296. data/node_modules/caniuse-lite/data/features/css-featurequeries.js +1 -1
  297. data/node_modules/caniuse-lite/data/features/css-file-selector-button.js +1 -1
  298. data/node_modules/caniuse-lite/data/features/css-filter-function.js +1 -1
  299. data/node_modules/caniuse-lite/data/features/css-filters.js +1 -1
  300. data/node_modules/caniuse-lite/data/features/css-first-letter.js +1 -1
  301. data/node_modules/caniuse-lite/data/features/css-first-line.js +1 -1
  302. data/node_modules/caniuse-lite/data/features/css-fixed.js +1 -1
  303. data/node_modules/caniuse-lite/data/features/css-focus-visible.js +1 -1
  304. data/node_modules/caniuse-lite/data/features/css-focus-within.js +1 -1
  305. data/node_modules/caniuse-lite/data/features/css-font-palette.js +1 -1
  306. data/node_modules/caniuse-lite/data/features/css-font-rendering-controls.js +1 -1
  307. data/node_modules/caniuse-lite/data/features/css-font-stretch.js +1 -1
  308. data/node_modules/caniuse-lite/data/features/css-gencontent.js +1 -1
  309. data/node_modules/caniuse-lite/data/features/css-gradients.js +1 -1
  310. data/node_modules/caniuse-lite/data/features/css-grid-animation.js +1 -1
  311. data/node_modules/caniuse-lite/data/features/css-grid.js +1 -1
  312. data/node_modules/caniuse-lite/data/features/css-hanging-punctuation.js +1 -1
  313. data/node_modules/caniuse-lite/data/features/css-has.js +1 -1
  314. data/node_modules/caniuse-lite/data/features/css-hyphens.js +1 -1
  315. data/node_modules/caniuse-lite/data/features/css-image-orientation.js +1 -1
  316. data/node_modules/caniuse-lite/data/features/css-image-set.js +1 -1
  317. data/node_modules/caniuse-lite/data/features/css-in-out-of-range.js +1 -1
  318. data/node_modules/caniuse-lite/data/features/css-indeterminate-pseudo.js +1 -1
  319. data/node_modules/caniuse-lite/data/features/css-initial-letter.js +1 -1
  320. data/node_modules/caniuse-lite/data/features/css-initial-value.js +1 -1
  321. data/node_modules/caniuse-lite/data/features/css-lch-lab.js +1 -1
  322. data/node_modules/caniuse-lite/data/features/css-letter-spacing.js +1 -1
  323. data/node_modules/caniuse-lite/data/features/css-line-clamp.js +1 -1
  324. data/node_modules/caniuse-lite/data/features/css-logical-props.js +1 -1
  325. data/node_modules/caniuse-lite/data/features/css-marker-pseudo.js +1 -1
  326. data/node_modules/caniuse-lite/data/features/css-masks.js +1 -1
  327. data/node_modules/caniuse-lite/data/features/css-matches-pseudo.js +1 -1
  328. data/node_modules/caniuse-lite/data/features/css-math-functions.js +1 -1
  329. data/node_modules/caniuse-lite/data/features/css-media-interaction.js +1 -1
  330. data/node_modules/caniuse-lite/data/features/css-media-range-syntax.js +1 -1
  331. data/node_modules/caniuse-lite/data/features/css-media-resolution.js +1 -1
  332. data/node_modules/caniuse-lite/data/features/css-media-scripting.js +1 -1
  333. data/node_modules/caniuse-lite/data/features/css-mediaqueries.js +1 -1
  334. data/node_modules/caniuse-lite/data/features/css-mixblendmode.js +1 -1
  335. data/node_modules/caniuse-lite/data/features/css-module-scripts.js +1 -1
  336. data/node_modules/caniuse-lite/data/features/css-motion-paths.js +1 -1
  337. data/node_modules/caniuse-lite/data/features/css-namespaces.js +1 -1
  338. data/node_modules/caniuse-lite/data/features/css-nesting.js +1 -1
  339. data/node_modules/caniuse-lite/data/features/css-not-sel-list.js +1 -1
  340. data/node_modules/caniuse-lite/data/features/css-nth-child-of.js +1 -1
  341. data/node_modules/caniuse-lite/data/features/css-opacity.js +1 -1
  342. data/node_modules/caniuse-lite/data/features/css-optional-pseudo.js +1 -1
  343. data/node_modules/caniuse-lite/data/features/css-overflow-anchor.js +1 -1
  344. data/node_modules/caniuse-lite/data/features/css-overflow-overlay.js +1 -1
  345. data/node_modules/caniuse-lite/data/features/css-overflow.js +1 -1
  346. data/node_modules/caniuse-lite/data/features/css-overscroll-behavior.js +1 -1
  347. data/node_modules/caniuse-lite/data/features/css-page-break.js +1 -1
  348. data/node_modules/caniuse-lite/data/features/css-paged-media.js +1 -1
  349. data/node_modules/caniuse-lite/data/features/css-paint-api.js +1 -1
  350. data/node_modules/caniuse-lite/data/features/css-placeholder-shown.js +1 -1
  351. data/node_modules/caniuse-lite/data/features/css-placeholder.js +1 -1
  352. data/node_modules/caniuse-lite/data/features/css-print-color-adjust.js +1 -1
  353. data/node_modules/caniuse-lite/data/features/css-read-only-write.js +1 -1
  354. data/node_modules/caniuse-lite/data/features/css-rebeccapurple.js +1 -1
  355. data/node_modules/caniuse-lite/data/features/css-reflections.js +1 -1
  356. data/node_modules/caniuse-lite/data/features/css-regions.js +1 -1
  357. data/node_modules/caniuse-lite/data/features/css-relative-colors.js +1 -1
  358. data/node_modules/caniuse-lite/data/features/css-repeating-gradients.js +1 -1
  359. data/node_modules/caniuse-lite/data/features/css-resize.js +1 -1
  360. data/node_modules/caniuse-lite/data/features/css-revert-value.js +1 -1
  361. data/node_modules/caniuse-lite/data/features/css-rrggbbaa.js +1 -1
  362. data/node_modules/caniuse-lite/data/features/css-scroll-behavior.js +1 -1
  363. data/node_modules/caniuse-lite/data/features/css-scrollbar.js +1 -1
  364. data/node_modules/caniuse-lite/data/features/css-sel2.js +1 -1
  365. data/node_modules/caniuse-lite/data/features/css-sel3.js +1 -1
  366. data/node_modules/caniuse-lite/data/features/css-selection.js +1 -1
  367. data/node_modules/caniuse-lite/data/features/css-shapes.js +1 -1
  368. data/node_modules/caniuse-lite/data/features/css-snappoints.js +1 -1
  369. data/node_modules/caniuse-lite/data/features/css-sticky.js +1 -1
  370. data/node_modules/caniuse-lite/data/features/css-subgrid.js +1 -1
  371. data/node_modules/caniuse-lite/data/features/css-supports-api.js +1 -1
  372. data/node_modules/caniuse-lite/data/features/css-table.js +1 -1
  373. data/node_modules/caniuse-lite/data/features/css-text-align-last.js +1 -1
  374. data/node_modules/caniuse-lite/data/features/css-text-box-trim.js +1 -1
  375. data/node_modules/caniuse-lite/data/features/css-text-indent.js +1 -1
  376. data/node_modules/caniuse-lite/data/features/css-text-justify.js +1 -1
  377. data/node_modules/caniuse-lite/data/features/css-text-orientation.js +1 -1
  378. data/node_modules/caniuse-lite/data/features/css-text-spacing.js +1 -1
  379. data/node_modules/caniuse-lite/data/features/css-text-wrap-balance.js +1 -1
  380. data/node_modules/caniuse-lite/data/features/css-textshadow.js +1 -1
  381. data/node_modules/caniuse-lite/data/features/css-touch-action.js +1 -1
  382. data/node_modules/caniuse-lite/data/features/css-transitions.js +1 -1
  383. data/node_modules/caniuse-lite/data/features/css-unicode-bidi.js +1 -1
  384. data/node_modules/caniuse-lite/data/features/css-unset-value.js +1 -1
  385. data/node_modules/caniuse-lite/data/features/css-variables.js +1 -1
  386. data/node_modules/caniuse-lite/data/features/css-when-else.js +1 -1
  387. data/node_modules/caniuse-lite/data/features/css-widows-orphans.js +1 -1
  388. data/node_modules/caniuse-lite/data/features/css-width-stretch.js +1 -1
  389. data/node_modules/caniuse-lite/data/features/css-writing-mode.js +1 -1
  390. data/node_modules/caniuse-lite/data/features/css-zoom.js +1 -1
  391. data/node_modules/caniuse-lite/data/features/css3-attr.js +1 -1
  392. data/node_modules/caniuse-lite/data/features/css3-boxsizing.js +1 -1
  393. data/node_modules/caniuse-lite/data/features/css3-colors.js +1 -1
  394. data/node_modules/caniuse-lite/data/features/css3-cursors-grab.js +1 -1
  395. data/node_modules/caniuse-lite/data/features/css3-cursors-newer.js +1 -1
  396. data/node_modules/caniuse-lite/data/features/css3-cursors.js +1 -1
  397. data/node_modules/caniuse-lite/data/features/css3-tabsize.js +1 -1
  398. data/node_modules/caniuse-lite/data/features/currentcolor.js +1 -1
  399. data/node_modules/caniuse-lite/data/features/custom-elements.js +1 -1
  400. data/node_modules/caniuse-lite/data/features/custom-elementsv1.js +1 -1
  401. data/node_modules/caniuse-lite/data/features/customevent.js +1 -1
  402. data/node_modules/caniuse-lite/data/features/datalist.js +1 -1
  403. data/node_modules/caniuse-lite/data/features/dataset.js +1 -1
  404. data/node_modules/caniuse-lite/data/features/datauri.js +1 -1
  405. data/node_modules/caniuse-lite/data/features/date-tolocaledatestring.js +1 -1
  406. data/node_modules/caniuse-lite/data/features/declarative-shadow-dom.js +1 -1
  407. data/node_modules/caniuse-lite/data/features/decorators.js +1 -1
  408. data/node_modules/caniuse-lite/data/features/details.js +1 -1
  409. data/node_modules/caniuse-lite/data/features/deviceorientation.js +1 -1
  410. data/node_modules/caniuse-lite/data/features/devicepixelratio.js +1 -1
  411. data/node_modules/caniuse-lite/data/features/dialog.js +1 -1
  412. data/node_modules/caniuse-lite/data/features/dispatchevent.js +1 -1
  413. data/node_modules/caniuse-lite/data/features/dnssec.js +1 -1
  414. data/node_modules/caniuse-lite/data/features/do-not-track.js +1 -1
  415. data/node_modules/caniuse-lite/data/features/document-currentscript.js +1 -1
  416. data/node_modules/caniuse-lite/data/features/document-evaluate-xpath.js +1 -1
  417. data/node_modules/caniuse-lite/data/features/document-execcommand.js +1 -1
  418. data/node_modules/caniuse-lite/data/features/document-policy.js +1 -1
  419. data/node_modules/caniuse-lite/data/features/document-scrollingelement.js +1 -1
  420. data/node_modules/caniuse-lite/data/features/documenthead.js +1 -1
  421. data/node_modules/caniuse-lite/data/features/dom-manip-convenience.js +1 -1
  422. data/node_modules/caniuse-lite/data/features/dom-range.js +1 -1
  423. data/node_modules/caniuse-lite/data/features/domcontentloaded.js +1 -1
  424. data/node_modules/caniuse-lite/data/features/dommatrix.js +1 -1
  425. data/node_modules/caniuse-lite/data/features/download.js +1 -1
  426. data/node_modules/caniuse-lite/data/features/dragndrop.js +1 -1
  427. data/node_modules/caniuse-lite/data/features/element-closest.js +1 -1
  428. data/node_modules/caniuse-lite/data/features/element-from-point.js +1 -1
  429. data/node_modules/caniuse-lite/data/features/element-scroll-methods.js +1 -1
  430. data/node_modules/caniuse-lite/data/features/eme.js +1 -1
  431. data/node_modules/caniuse-lite/data/features/eot.js +1 -1
  432. data/node_modules/caniuse-lite/data/features/es5.js +1 -1
  433. data/node_modules/caniuse-lite/data/features/es6-class.js +1 -1
  434. data/node_modules/caniuse-lite/data/features/es6-generators.js +1 -1
  435. data/node_modules/caniuse-lite/data/features/es6-module-dynamic-import.js +1 -1
  436. data/node_modules/caniuse-lite/data/features/es6-module.js +1 -1
  437. data/node_modules/caniuse-lite/data/features/es6-number.js +1 -1
  438. data/node_modules/caniuse-lite/data/features/es6-string-includes.js +1 -1
  439. data/node_modules/caniuse-lite/data/features/es6.js +1 -1
  440. data/node_modules/caniuse-lite/data/features/eventsource.js +1 -1
  441. data/node_modules/caniuse-lite/data/features/extended-system-fonts.js +1 -1
  442. data/node_modules/caniuse-lite/data/features/feature-policy.js +1 -1
  443. data/node_modules/caniuse-lite/data/features/fetch.js +1 -1
  444. data/node_modules/caniuse-lite/data/features/fieldset-disabled.js +1 -1
  445. data/node_modules/caniuse-lite/data/features/fileapi.js +1 -1
  446. data/node_modules/caniuse-lite/data/features/filereader.js +1 -1
  447. data/node_modules/caniuse-lite/data/features/filereadersync.js +1 -1
  448. data/node_modules/caniuse-lite/data/features/filesystem.js +1 -1
  449. data/node_modules/caniuse-lite/data/features/flac.js +1 -1
  450. data/node_modules/caniuse-lite/data/features/flexbox-gap.js +1 -1
  451. data/node_modules/caniuse-lite/data/features/flexbox.js +1 -1
  452. data/node_modules/caniuse-lite/data/features/flow-root.js +1 -1
  453. data/node_modules/caniuse-lite/data/features/focusin-focusout-events.js +1 -1
  454. data/node_modules/caniuse-lite/data/features/font-family-system-ui.js +1 -1
  455. data/node_modules/caniuse-lite/data/features/font-feature.js +1 -1
  456. data/node_modules/caniuse-lite/data/features/font-kerning.js +1 -1
  457. data/node_modules/caniuse-lite/data/features/font-loading.js +1 -1
  458. data/node_modules/caniuse-lite/data/features/font-size-adjust.js +1 -1
  459. data/node_modules/caniuse-lite/data/features/font-smooth.js +1 -1
  460. data/node_modules/caniuse-lite/data/features/font-unicode-range.js +1 -1
  461. data/node_modules/caniuse-lite/data/features/font-variant-alternates.js +1 -1
  462. data/node_modules/caniuse-lite/data/features/font-variant-numeric.js +1 -1
  463. data/node_modules/caniuse-lite/data/features/fontface.js +1 -1
  464. data/node_modules/caniuse-lite/data/features/form-attribute.js +1 -1
  465. data/node_modules/caniuse-lite/data/features/form-submit-attributes.js +1 -1
  466. data/node_modules/caniuse-lite/data/features/form-validation.js +1 -1
  467. data/node_modules/caniuse-lite/data/features/forms.js +1 -1
  468. data/node_modules/caniuse-lite/data/features/fullscreen.js +1 -1
  469. data/node_modules/caniuse-lite/data/features/gamepad.js +1 -1
  470. data/node_modules/caniuse-lite/data/features/geolocation.js +1 -1
  471. data/node_modules/caniuse-lite/data/features/getboundingclientrect.js +1 -1
  472. data/node_modules/caniuse-lite/data/features/getcomputedstyle.js +1 -1
  473. data/node_modules/caniuse-lite/data/features/getelementsbyclassname.js +1 -1
  474. data/node_modules/caniuse-lite/data/features/getrandomvalues.js +1 -1
  475. data/node_modules/caniuse-lite/data/features/gyroscope.js +1 -1
  476. data/node_modules/caniuse-lite/data/features/hardwareconcurrency.js +1 -1
  477. data/node_modules/caniuse-lite/data/features/hashchange.js +1 -1
  478. data/node_modules/caniuse-lite/data/features/heif.js +1 -1
  479. data/node_modules/caniuse-lite/data/features/hevc.js +1 -1
  480. data/node_modules/caniuse-lite/data/features/hidden.js +1 -1
  481. data/node_modules/caniuse-lite/data/features/high-resolution-time.js +1 -1
  482. data/node_modules/caniuse-lite/data/features/history.js +1 -1
  483. data/node_modules/caniuse-lite/data/features/html-media-capture.js +1 -1
  484. data/node_modules/caniuse-lite/data/features/html5semantic.js +1 -1
  485. data/node_modules/caniuse-lite/data/features/http-live-streaming.js +1 -1
  486. data/node_modules/caniuse-lite/data/features/http2.js +1 -1
  487. data/node_modules/caniuse-lite/data/features/http3.js +1 -1
  488. data/node_modules/caniuse-lite/data/features/iframe-sandbox.js +1 -1
  489. data/node_modules/caniuse-lite/data/features/iframe-seamless.js +1 -1
  490. data/node_modules/caniuse-lite/data/features/iframe-srcdoc.js +1 -1
  491. data/node_modules/caniuse-lite/data/features/imagecapture.js +1 -1
  492. data/node_modules/caniuse-lite/data/features/ime.js +1 -1
  493. data/node_modules/caniuse-lite/data/features/img-naturalwidth-naturalheight.js +1 -1
  494. data/node_modules/caniuse-lite/data/features/import-maps.js +1 -1
  495. data/node_modules/caniuse-lite/data/features/imports.js +1 -1
  496. data/node_modules/caniuse-lite/data/features/indeterminate-checkbox.js +1 -1
  497. data/node_modules/caniuse-lite/data/features/indexeddb.js +1 -1
  498. data/node_modules/caniuse-lite/data/features/indexeddb2.js +1 -1
  499. data/node_modules/caniuse-lite/data/features/inline-block.js +1 -1
  500. data/node_modules/caniuse-lite/data/features/innertext.js +1 -1
  501. data/node_modules/caniuse-lite/data/features/input-autocomplete-onoff.js +1 -1
  502. data/node_modules/caniuse-lite/data/features/input-color.js +1 -1
  503. data/node_modules/caniuse-lite/data/features/input-datetime.js +1 -1
  504. data/node_modules/caniuse-lite/data/features/input-email-tel-url.js +1 -1
  505. data/node_modules/caniuse-lite/data/features/input-event.js +1 -1
  506. data/node_modules/caniuse-lite/data/features/input-file-accept.js +1 -1
  507. data/node_modules/caniuse-lite/data/features/input-file-directory.js +1 -1
  508. data/node_modules/caniuse-lite/data/features/input-file-multiple.js +1 -1
  509. data/node_modules/caniuse-lite/data/features/input-inputmode.js +1 -1
  510. data/node_modules/caniuse-lite/data/features/input-minlength.js +1 -1
  511. data/node_modules/caniuse-lite/data/features/input-number.js +1 -1
  512. data/node_modules/caniuse-lite/data/features/input-pattern.js +1 -1
  513. data/node_modules/caniuse-lite/data/features/input-placeholder.js +1 -1
  514. data/node_modules/caniuse-lite/data/features/input-range.js +1 -1
  515. data/node_modules/caniuse-lite/data/features/input-search.js +1 -1
  516. data/node_modules/caniuse-lite/data/features/input-selection.js +1 -1
  517. data/node_modules/caniuse-lite/data/features/insert-adjacent.js +1 -1
  518. data/node_modules/caniuse-lite/data/features/insertadjacenthtml.js +1 -1
  519. data/node_modules/caniuse-lite/data/features/internationalization.js +1 -1
  520. data/node_modules/caniuse-lite/data/features/intersectionobserver-v2.js +1 -1
  521. data/node_modules/caniuse-lite/data/features/intersectionobserver.js +1 -1
  522. data/node_modules/caniuse-lite/data/features/intl-pluralrules.js +1 -1
  523. data/node_modules/caniuse-lite/data/features/intrinsic-width.js +1 -1
  524. data/node_modules/caniuse-lite/data/features/jpeg2000.js +1 -1
  525. data/node_modules/caniuse-lite/data/features/jpegxl.js +1 -1
  526. data/node_modules/caniuse-lite/data/features/jpegxr.js +1 -1
  527. data/node_modules/caniuse-lite/data/features/js-regexp-lookbehind.js +1 -1
  528. data/node_modules/caniuse-lite/data/features/json.js +1 -1
  529. data/node_modules/caniuse-lite/data/features/justify-content-space-evenly.js +1 -1
  530. data/node_modules/caniuse-lite/data/features/kerning-pairs-ligatures.js +1 -1
  531. data/node_modules/caniuse-lite/data/features/keyboardevent-charcode.js +1 -1
  532. data/node_modules/caniuse-lite/data/features/keyboardevent-code.js +1 -1
  533. data/node_modules/caniuse-lite/data/features/keyboardevent-getmodifierstate.js +1 -1
  534. data/node_modules/caniuse-lite/data/features/keyboardevent-key.js +1 -1
  535. data/node_modules/caniuse-lite/data/features/keyboardevent-location.js +1 -1
  536. data/node_modules/caniuse-lite/data/features/keyboardevent-which.js +1 -1
  537. data/node_modules/caniuse-lite/data/features/lazyload.js +1 -1
  538. data/node_modules/caniuse-lite/data/features/let.js +1 -1
  539. data/node_modules/caniuse-lite/data/features/link-icon-png.js +1 -1
  540. data/node_modules/caniuse-lite/data/features/link-icon-svg.js +1 -1
  541. data/node_modules/caniuse-lite/data/features/link-rel-dns-prefetch.js +1 -1
  542. data/node_modules/caniuse-lite/data/features/link-rel-modulepreload.js +1 -1
  543. data/node_modules/caniuse-lite/data/features/link-rel-preconnect.js +1 -1
  544. data/node_modules/caniuse-lite/data/features/link-rel-prefetch.js +1 -1
  545. data/node_modules/caniuse-lite/data/features/link-rel-preload.js +1 -1
  546. data/node_modules/caniuse-lite/data/features/link-rel-prerender.js +1 -1
  547. data/node_modules/caniuse-lite/data/features/loading-lazy-attr.js +1 -1
  548. data/node_modules/caniuse-lite/data/features/localecompare.js +1 -1
  549. data/node_modules/caniuse-lite/data/features/magnetometer.js +1 -1
  550. data/node_modules/caniuse-lite/data/features/matchesselector.js +1 -1
  551. data/node_modules/caniuse-lite/data/features/matchmedia.js +1 -1
  552. data/node_modules/caniuse-lite/data/features/mathml.js +1 -1
  553. data/node_modules/caniuse-lite/data/features/maxlength.js +1 -1
  554. data/node_modules/caniuse-lite/data/features/mdn-css-backdrop-pseudo-element.js +1 -1
  555. data/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate-override.js +1 -1
  556. data/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-isolate.js +1 -1
  557. data/node_modules/caniuse-lite/data/features/mdn-css-unicode-bidi-plaintext.js +1 -1
  558. data/node_modules/caniuse-lite/data/features/mdn-text-decoration-color.js +1 -1
  559. data/node_modules/caniuse-lite/data/features/mdn-text-decoration-line.js +1 -1
  560. data/node_modules/caniuse-lite/data/features/mdn-text-decoration-shorthand.js +1 -1
  561. data/node_modules/caniuse-lite/data/features/mdn-text-decoration-style.js +1 -1
  562. data/node_modules/caniuse-lite/data/features/media-fragments.js +1 -1
  563. data/node_modules/caniuse-lite/data/features/mediacapture-fromelement.js +1 -1
  564. data/node_modules/caniuse-lite/data/features/mediarecorder.js +1 -1
  565. data/node_modules/caniuse-lite/data/features/mediasource.js +1 -1
  566. data/node_modules/caniuse-lite/data/features/menu.js +1 -1
  567. data/node_modules/caniuse-lite/data/features/meta-theme-color.js +1 -1
  568. data/node_modules/caniuse-lite/data/features/meter.js +1 -1
  569. data/node_modules/caniuse-lite/data/features/midi.js +1 -1
  570. data/node_modules/caniuse-lite/data/features/minmaxwh.js +1 -1
  571. data/node_modules/caniuse-lite/data/features/mp3.js +1 -1
  572. data/node_modules/caniuse-lite/data/features/mpeg-dash.js +1 -1
  573. data/node_modules/caniuse-lite/data/features/mpeg4.js +1 -1
  574. data/node_modules/caniuse-lite/data/features/multibackgrounds.js +1 -1
  575. data/node_modules/caniuse-lite/data/features/multicolumn.js +1 -1
  576. data/node_modules/caniuse-lite/data/features/mutation-events.js +1 -1
  577. data/node_modules/caniuse-lite/data/features/mutationobserver.js +1 -1
  578. data/node_modules/caniuse-lite/data/features/namevalue-storage.js +1 -1
  579. data/node_modules/caniuse-lite/data/features/native-filesystem-api.js +1 -1
  580. data/node_modules/caniuse-lite/data/features/nav-timing.js +1 -1
  581. data/node_modules/caniuse-lite/data/features/netinfo.js +1 -1
  582. data/node_modules/caniuse-lite/data/features/notifications.js +1 -1
  583. data/node_modules/caniuse-lite/data/features/object-entries.js +1 -1
  584. data/node_modules/caniuse-lite/data/features/object-fit.js +1 -1
  585. data/node_modules/caniuse-lite/data/features/object-observe.js +1 -1
  586. data/node_modules/caniuse-lite/data/features/object-values.js +1 -1
  587. data/node_modules/caniuse-lite/data/features/objectrtc.js +1 -1
  588. data/node_modules/caniuse-lite/data/features/offline-apps.js +1 -1
  589. data/node_modules/caniuse-lite/data/features/offscreencanvas.js +1 -1
  590. data/node_modules/caniuse-lite/data/features/ogg-vorbis.js +1 -1
  591. data/node_modules/caniuse-lite/data/features/ogv.js +1 -1
  592. data/node_modules/caniuse-lite/data/features/ol-reversed.js +1 -1
  593. data/node_modules/caniuse-lite/data/features/once-event-listener.js +1 -1
  594. data/node_modules/caniuse-lite/data/features/online-status.js +1 -1
  595. data/node_modules/caniuse-lite/data/features/opus.js +1 -1
  596. data/node_modules/caniuse-lite/data/features/orientation-sensor.js +1 -1
  597. data/node_modules/caniuse-lite/data/features/outline.js +1 -1
  598. data/node_modules/caniuse-lite/data/features/pad-start-end.js +1 -1
  599. data/node_modules/caniuse-lite/data/features/page-transition-events.js +1 -1
  600. data/node_modules/caniuse-lite/data/features/pagevisibility.js +1 -1
  601. data/node_modules/caniuse-lite/data/features/passive-event-listener.js +1 -1
  602. data/node_modules/caniuse-lite/data/features/passkeys.js +1 -1
  603. data/node_modules/caniuse-lite/data/features/passwordrules.js +1 -1
  604. data/node_modules/caniuse-lite/data/features/path2d.js +1 -1
  605. data/node_modules/caniuse-lite/data/features/payment-request.js +1 -1
  606. data/node_modules/caniuse-lite/data/features/pdf-viewer.js +1 -1
  607. data/node_modules/caniuse-lite/data/features/permissions-api.js +1 -1
  608. data/node_modules/caniuse-lite/data/features/permissions-policy.js +1 -1
  609. data/node_modules/caniuse-lite/data/features/picture-in-picture.js +1 -1
  610. data/node_modules/caniuse-lite/data/features/picture.js +1 -1
  611. data/node_modules/caniuse-lite/data/features/ping.js +1 -1
  612. data/node_modules/caniuse-lite/data/features/png-alpha.js +1 -1
  613. data/node_modules/caniuse-lite/data/features/pointer-events.js +1 -1
  614. data/node_modules/caniuse-lite/data/features/pointer.js +1 -1
  615. data/node_modules/caniuse-lite/data/features/pointerlock.js +1 -1
  616. data/node_modules/caniuse-lite/data/features/portals.js +1 -1
  617. data/node_modules/caniuse-lite/data/features/prefers-color-scheme.js +1 -1
  618. data/node_modules/caniuse-lite/data/features/prefers-reduced-motion.js +1 -1
  619. data/node_modules/caniuse-lite/data/features/progress.js +1 -1
  620. data/node_modules/caniuse-lite/data/features/promise-finally.js +1 -1
  621. data/node_modules/caniuse-lite/data/features/promises.js +1 -1
  622. data/node_modules/caniuse-lite/data/features/proximity.js +1 -1
  623. data/node_modules/caniuse-lite/data/features/proxy.js +1 -1
  624. data/node_modules/caniuse-lite/data/features/publickeypinning.js +1 -1
  625. data/node_modules/caniuse-lite/data/features/push-api.js +1 -1
  626. data/node_modules/caniuse-lite/data/features/queryselector.js +1 -1
  627. data/node_modules/caniuse-lite/data/features/readonly-attr.js +1 -1
  628. data/node_modules/caniuse-lite/data/features/referrer-policy.js +1 -1
  629. data/node_modules/caniuse-lite/data/features/registerprotocolhandler.js +1 -1
  630. data/node_modules/caniuse-lite/data/features/rel-noopener.js +1 -1
  631. data/node_modules/caniuse-lite/data/features/rel-noreferrer.js +1 -1
  632. data/node_modules/caniuse-lite/data/features/rellist.js +1 -1
  633. data/node_modules/caniuse-lite/data/features/rem.js +1 -1
  634. data/node_modules/caniuse-lite/data/features/requestanimationframe.js +1 -1
  635. data/node_modules/caniuse-lite/data/features/requestidlecallback.js +1 -1
  636. data/node_modules/caniuse-lite/data/features/resizeobserver.js +1 -1
  637. data/node_modules/caniuse-lite/data/features/resource-timing.js +1 -1
  638. data/node_modules/caniuse-lite/data/features/rest-parameters.js +1 -1
  639. data/node_modules/caniuse-lite/data/features/rtcpeerconnection.js +1 -1
  640. data/node_modules/caniuse-lite/data/features/ruby.js +1 -1
  641. data/node_modules/caniuse-lite/data/features/run-in.js +1 -1
  642. data/node_modules/caniuse-lite/data/features/same-site-cookie-attribute.js +1 -1
  643. data/node_modules/caniuse-lite/data/features/screen-orientation.js +1 -1
  644. data/node_modules/caniuse-lite/data/features/script-async.js +1 -1
  645. data/node_modules/caniuse-lite/data/features/script-defer.js +1 -1
  646. data/node_modules/caniuse-lite/data/features/scrollintoview.js +1 -1
  647. data/node_modules/caniuse-lite/data/features/scrollintoviewifneeded.js +1 -1
  648. data/node_modules/caniuse-lite/data/features/sdch.js +1 -1
  649. data/node_modules/caniuse-lite/data/features/selection-api.js +1 -1
  650. data/node_modules/caniuse-lite/data/features/selectlist.js +1 -1
  651. data/node_modules/caniuse-lite/data/features/server-timing.js +1 -1
  652. data/node_modules/caniuse-lite/data/features/serviceworkers.js +1 -1
  653. data/node_modules/caniuse-lite/data/features/setimmediate.js +1 -1
  654. data/node_modules/caniuse-lite/data/features/shadowdom.js +1 -1
  655. data/node_modules/caniuse-lite/data/features/shadowdomv1.js +1 -1
  656. data/node_modules/caniuse-lite/data/features/sharedarraybuffer.js +1 -1
  657. data/node_modules/caniuse-lite/data/features/sharedworkers.js +1 -1
  658. data/node_modules/caniuse-lite/data/features/sni.js +1 -1
  659. data/node_modules/caniuse-lite/data/features/spdy.js +1 -1
  660. data/node_modules/caniuse-lite/data/features/speech-recognition.js +1 -1
  661. data/node_modules/caniuse-lite/data/features/speech-synthesis.js +1 -1
  662. data/node_modules/caniuse-lite/data/features/spellcheck-attribute.js +1 -1
  663. data/node_modules/caniuse-lite/data/features/sql-storage.js +1 -1
  664. data/node_modules/caniuse-lite/data/features/srcset.js +1 -1
  665. data/node_modules/caniuse-lite/data/features/stream.js +1 -1
  666. data/node_modules/caniuse-lite/data/features/streams.js +1 -1
  667. data/node_modules/caniuse-lite/data/features/stricttransportsecurity.js +1 -1
  668. data/node_modules/caniuse-lite/data/features/style-scoped.js +1 -1
  669. data/node_modules/caniuse-lite/data/features/subresource-bundling.js +1 -1
  670. data/node_modules/caniuse-lite/data/features/subresource-integrity.js +1 -1
  671. data/node_modules/caniuse-lite/data/features/svg-css.js +1 -1
  672. data/node_modules/caniuse-lite/data/features/svg-filters.js +1 -1
  673. data/node_modules/caniuse-lite/data/features/svg-fonts.js +1 -1
  674. data/node_modules/caniuse-lite/data/features/svg-fragment.js +1 -1
  675. data/node_modules/caniuse-lite/data/features/svg-html.js +1 -1
  676. data/node_modules/caniuse-lite/data/features/svg-html5.js +1 -1
  677. data/node_modules/caniuse-lite/data/features/svg-img.js +1 -1
  678. data/node_modules/caniuse-lite/data/features/svg-smil.js +1 -1
  679. data/node_modules/caniuse-lite/data/features/svg.js +1 -1
  680. data/node_modules/caniuse-lite/data/features/sxg.js +1 -1
  681. data/node_modules/caniuse-lite/data/features/tabindex-attr.js +1 -1
  682. data/node_modules/caniuse-lite/data/features/template-literals.js +1 -1
  683. data/node_modules/caniuse-lite/data/features/template.js +1 -1
  684. data/node_modules/caniuse-lite/data/features/temporal.js +1 -1
  685. data/node_modules/caniuse-lite/data/features/testfeat.js +1 -1
  686. data/node_modules/caniuse-lite/data/features/text-decoration.js +1 -1
  687. data/node_modules/caniuse-lite/data/features/text-emphasis.js +1 -1
  688. data/node_modules/caniuse-lite/data/features/text-overflow.js +1 -1
  689. data/node_modules/caniuse-lite/data/features/text-size-adjust.js +1 -1
  690. data/node_modules/caniuse-lite/data/features/text-stroke.js +1 -1
  691. data/node_modules/caniuse-lite/data/features/textcontent.js +1 -1
  692. data/node_modules/caniuse-lite/data/features/textencoder.js +1 -1
  693. data/node_modules/caniuse-lite/data/features/tls1-1.js +1 -1
  694. data/node_modules/caniuse-lite/data/features/tls1-2.js +1 -1
  695. data/node_modules/caniuse-lite/data/features/tls1-3.js +1 -1
  696. data/node_modules/caniuse-lite/data/features/touch.js +1 -1
  697. data/node_modules/caniuse-lite/data/features/transforms2d.js +1 -1
  698. data/node_modules/caniuse-lite/data/features/transforms3d.js +1 -1
  699. data/node_modules/caniuse-lite/data/features/trusted-types.js +1 -1
  700. data/node_modules/caniuse-lite/data/features/ttf.js +1 -1
  701. data/node_modules/caniuse-lite/data/features/typedarrays.js +1 -1
  702. data/node_modules/caniuse-lite/data/features/u2f.js +1 -1
  703. data/node_modules/caniuse-lite/data/features/unhandledrejection.js +1 -1
  704. data/node_modules/caniuse-lite/data/features/upgradeinsecurerequests.js +1 -1
  705. data/node_modules/caniuse-lite/data/features/url-scroll-to-text-fragment.js +1 -1
  706. data/node_modules/caniuse-lite/data/features/url.js +1 -1
  707. data/node_modules/caniuse-lite/data/features/urlsearchparams.js +1 -1
  708. data/node_modules/caniuse-lite/data/features/use-strict.js +1 -1
  709. data/node_modules/caniuse-lite/data/features/user-select-none.js +1 -1
  710. data/node_modules/caniuse-lite/data/features/user-timing.js +1 -1
  711. data/node_modules/caniuse-lite/data/features/variable-fonts.js +1 -1
  712. data/node_modules/caniuse-lite/data/features/vector-effect.js +1 -1
  713. data/node_modules/caniuse-lite/data/features/vibration.js +1 -1
  714. data/node_modules/caniuse-lite/data/features/video.js +1 -1
  715. data/node_modules/caniuse-lite/data/features/videotracks.js +1 -1
  716. data/node_modules/caniuse-lite/data/features/view-transitions.js +1 -1
  717. data/node_modules/caniuse-lite/data/features/viewport-unit-variants.js +1 -1
  718. data/node_modules/caniuse-lite/data/features/viewport-units.js +1 -1
  719. data/node_modules/caniuse-lite/data/features/wai-aria.js +1 -1
  720. data/node_modules/caniuse-lite/data/features/wake-lock.js +1 -1
  721. data/node_modules/caniuse-lite/data/features/wasm-bigint.js +1 -1
  722. data/node_modules/caniuse-lite/data/features/wasm-bulk-memory.js +1 -1
  723. data/node_modules/caniuse-lite/data/features/wasm-extended-const.js +1 -1
  724. data/node_modules/caniuse-lite/data/features/wasm-gc.js +1 -1
  725. data/node_modules/caniuse-lite/data/features/wasm-multi-memory.js +1 -1
  726. data/node_modules/caniuse-lite/data/features/wasm-multi-value.js +1 -1
  727. data/node_modules/caniuse-lite/data/features/wasm-mutable-globals.js +1 -1
  728. data/node_modules/caniuse-lite/data/features/wasm-nontrapping-fptoint.js +1 -1
  729. data/node_modules/caniuse-lite/data/features/wasm-reference-types.js +1 -1
  730. data/node_modules/caniuse-lite/data/features/wasm-relaxed-simd.js +1 -1
  731. data/node_modules/caniuse-lite/data/features/wasm-signext.js +1 -1
  732. data/node_modules/caniuse-lite/data/features/wasm-simd.js +1 -1
  733. data/node_modules/caniuse-lite/data/features/wasm-tail-calls.js +1 -1
  734. data/node_modules/caniuse-lite/data/features/wasm-threads.js +1 -1
  735. data/node_modules/caniuse-lite/data/features/wasm.js +1 -1
  736. data/node_modules/caniuse-lite/data/features/wav.js +1 -1
  737. data/node_modules/caniuse-lite/data/features/wbr-element.js +1 -1
  738. data/node_modules/caniuse-lite/data/features/web-animation.js +1 -1
  739. data/node_modules/caniuse-lite/data/features/web-app-manifest.js +1 -1
  740. data/node_modules/caniuse-lite/data/features/web-bluetooth.js +1 -1
  741. data/node_modules/caniuse-lite/data/features/web-serial.js +1 -1
  742. data/node_modules/caniuse-lite/data/features/web-share.js +1 -1
  743. data/node_modules/caniuse-lite/data/features/webauthn.js +1 -1
  744. data/node_modules/caniuse-lite/data/features/webcodecs.js +1 -1
  745. data/node_modules/caniuse-lite/data/features/webgl.js +1 -1
  746. data/node_modules/caniuse-lite/data/features/webgl2.js +1 -1
  747. data/node_modules/caniuse-lite/data/features/webgpu.js +1 -1
  748. data/node_modules/caniuse-lite/data/features/webhid.js +1 -1
  749. data/node_modules/caniuse-lite/data/features/webkit-user-drag.js +1 -1
  750. data/node_modules/caniuse-lite/data/features/webm.js +1 -1
  751. data/node_modules/caniuse-lite/data/features/webnfc.js +1 -1
  752. data/node_modules/caniuse-lite/data/features/webp.js +1 -1
  753. data/node_modules/caniuse-lite/data/features/websockets.js +1 -1
  754. data/node_modules/caniuse-lite/data/features/webtransport.js +1 -1
  755. data/node_modules/caniuse-lite/data/features/webusb.js +1 -1
  756. data/node_modules/caniuse-lite/data/features/webvr.js +1 -1
  757. data/node_modules/caniuse-lite/data/features/webvtt.js +1 -1
  758. data/node_modules/caniuse-lite/data/features/webworkers.js +1 -1
  759. data/node_modules/caniuse-lite/data/features/webxr.js +1 -1
  760. data/node_modules/caniuse-lite/data/features/will-change.js +1 -1
  761. data/node_modules/caniuse-lite/data/features/woff.js +1 -1
  762. data/node_modules/caniuse-lite/data/features/woff2.js +1 -1
  763. data/node_modules/caniuse-lite/data/features/word-break.js +1 -1
  764. data/node_modules/caniuse-lite/data/features/wordwrap.js +1 -1
  765. data/node_modules/caniuse-lite/data/features/x-doc-messaging.js +1 -1
  766. data/node_modules/caniuse-lite/data/features/x-frame-options.js +1 -1
  767. data/node_modules/caniuse-lite/data/features/xhr2.js +1 -1
  768. data/node_modules/caniuse-lite/data/features/xhtml.js +1 -1
  769. data/node_modules/caniuse-lite/data/features/xhtmlsmil.js +1 -1
  770. data/node_modules/caniuse-lite/data/features/xml-serializer.js +1 -1
  771. data/node_modules/caniuse-lite/data/features/zstd.js +1 -1
  772. data/node_modules/caniuse-lite/data/regions/AD.js +1 -1
  773. data/node_modules/caniuse-lite/data/regions/AE.js +1 -1
  774. data/node_modules/caniuse-lite/data/regions/AF.js +1 -1
  775. data/node_modules/caniuse-lite/data/regions/AG.js +1 -1
  776. data/node_modules/caniuse-lite/data/regions/AI.js +1 -1
  777. data/node_modules/caniuse-lite/data/regions/AL.js +1 -1
  778. data/node_modules/caniuse-lite/data/regions/AM.js +1 -1
  779. data/node_modules/caniuse-lite/data/regions/AO.js +1 -1
  780. data/node_modules/caniuse-lite/data/regions/AR.js +1 -1
  781. data/node_modules/caniuse-lite/data/regions/AS.js +1 -1
  782. data/node_modules/caniuse-lite/data/regions/AT.js +1 -1
  783. data/node_modules/caniuse-lite/data/regions/AU.js +1 -1
  784. data/node_modules/caniuse-lite/data/regions/AW.js +1 -1
  785. data/node_modules/caniuse-lite/data/regions/AX.js +1 -1
  786. data/node_modules/caniuse-lite/data/regions/AZ.js +1 -1
  787. data/node_modules/caniuse-lite/data/regions/BA.js +1 -1
  788. data/node_modules/caniuse-lite/data/regions/BB.js +1 -1
  789. data/node_modules/caniuse-lite/data/regions/BD.js +1 -1
  790. data/node_modules/caniuse-lite/data/regions/BE.js +1 -1
  791. data/node_modules/caniuse-lite/data/regions/BF.js +1 -1
  792. data/node_modules/caniuse-lite/data/regions/BG.js +1 -1
  793. data/node_modules/caniuse-lite/data/regions/BH.js +1 -1
  794. data/node_modules/caniuse-lite/data/regions/BI.js +1 -1
  795. data/node_modules/caniuse-lite/data/regions/BJ.js +1 -1
  796. data/node_modules/caniuse-lite/data/regions/BM.js +1 -1
  797. data/node_modules/caniuse-lite/data/regions/BN.js +1 -1
  798. data/node_modules/caniuse-lite/data/regions/BO.js +1 -1
  799. data/node_modules/caniuse-lite/data/regions/BR.js +1 -1
  800. data/node_modules/caniuse-lite/data/regions/BS.js +1 -1
  801. data/node_modules/caniuse-lite/data/regions/BT.js +1 -1
  802. data/node_modules/caniuse-lite/data/regions/BW.js +1 -1
  803. data/node_modules/caniuse-lite/data/regions/BY.js +1 -1
  804. data/node_modules/caniuse-lite/data/regions/BZ.js +1 -1
  805. data/node_modules/caniuse-lite/data/regions/CA.js +1 -1
  806. data/node_modules/caniuse-lite/data/regions/CD.js +1 -1
  807. data/node_modules/caniuse-lite/data/regions/CF.js +1 -1
  808. data/node_modules/caniuse-lite/data/regions/CG.js +1 -1
  809. data/node_modules/caniuse-lite/data/regions/CH.js +1 -1
  810. data/node_modules/caniuse-lite/data/regions/CI.js +1 -1
  811. data/node_modules/caniuse-lite/data/regions/CK.js +1 -1
  812. data/node_modules/caniuse-lite/data/regions/CL.js +1 -1
  813. data/node_modules/caniuse-lite/data/regions/CM.js +1 -1
  814. data/node_modules/caniuse-lite/data/regions/CN.js +1 -1
  815. data/node_modules/caniuse-lite/data/regions/CO.js +1 -1
  816. data/node_modules/caniuse-lite/data/regions/CR.js +1 -1
  817. data/node_modules/caniuse-lite/data/regions/CU.js +1 -1
  818. data/node_modules/caniuse-lite/data/regions/CV.js +1 -1
  819. data/node_modules/caniuse-lite/data/regions/CX.js +1 -1
  820. data/node_modules/caniuse-lite/data/regions/CY.js +1 -1
  821. data/node_modules/caniuse-lite/data/regions/CZ.js +1 -1
  822. data/node_modules/caniuse-lite/data/regions/DE.js +1 -1
  823. data/node_modules/caniuse-lite/data/regions/DJ.js +1 -1
  824. data/node_modules/caniuse-lite/data/regions/DK.js +1 -1
  825. data/node_modules/caniuse-lite/data/regions/DM.js +1 -1
  826. data/node_modules/caniuse-lite/data/regions/DO.js +1 -1
  827. data/node_modules/caniuse-lite/data/regions/DZ.js +1 -1
  828. data/node_modules/caniuse-lite/data/regions/EC.js +1 -1
  829. data/node_modules/caniuse-lite/data/regions/EE.js +1 -1
  830. data/node_modules/caniuse-lite/data/regions/EG.js +1 -1
  831. data/node_modules/caniuse-lite/data/regions/ER.js +1 -1
  832. data/node_modules/caniuse-lite/data/regions/ES.js +1 -1
  833. data/node_modules/caniuse-lite/data/regions/ET.js +1 -1
  834. data/node_modules/caniuse-lite/data/regions/FI.js +1 -1
  835. data/node_modules/caniuse-lite/data/regions/FJ.js +1 -1
  836. data/node_modules/caniuse-lite/data/regions/FK.js +1 -1
  837. data/node_modules/caniuse-lite/data/regions/FM.js +1 -1
  838. data/node_modules/caniuse-lite/data/regions/FO.js +1 -1
  839. data/node_modules/caniuse-lite/data/regions/FR.js +1 -1
  840. data/node_modules/caniuse-lite/data/regions/GA.js +1 -1
  841. data/node_modules/caniuse-lite/data/regions/GB.js +1 -1
  842. data/node_modules/caniuse-lite/data/regions/GD.js +1 -1
  843. data/node_modules/caniuse-lite/data/regions/GE.js +1 -1
  844. data/node_modules/caniuse-lite/data/regions/GF.js +1 -1
  845. data/node_modules/caniuse-lite/data/regions/GG.js +1 -1
  846. data/node_modules/caniuse-lite/data/regions/GH.js +1 -1
  847. data/node_modules/caniuse-lite/data/regions/GI.js +1 -1
  848. data/node_modules/caniuse-lite/data/regions/GL.js +1 -1
  849. data/node_modules/caniuse-lite/data/regions/GM.js +1 -1
  850. data/node_modules/caniuse-lite/data/regions/GN.js +1 -1
  851. data/node_modules/caniuse-lite/data/regions/GP.js +1 -1
  852. data/node_modules/caniuse-lite/data/regions/GQ.js +1 -1
  853. data/node_modules/caniuse-lite/data/regions/GR.js +1 -1
  854. data/node_modules/caniuse-lite/data/regions/GT.js +1 -1
  855. data/node_modules/caniuse-lite/data/regions/GU.js +1 -1
  856. data/node_modules/caniuse-lite/data/regions/GW.js +1 -1
  857. data/node_modules/caniuse-lite/data/regions/GY.js +1 -1
  858. data/node_modules/caniuse-lite/data/regions/HK.js +1 -1
  859. data/node_modules/caniuse-lite/data/regions/HN.js +1 -1
  860. data/node_modules/caniuse-lite/data/regions/HR.js +1 -1
  861. data/node_modules/caniuse-lite/data/regions/HT.js +1 -1
  862. data/node_modules/caniuse-lite/data/regions/HU.js +1 -1
  863. data/node_modules/caniuse-lite/data/regions/ID.js +1 -1
  864. data/node_modules/caniuse-lite/data/regions/IE.js +1 -1
  865. data/node_modules/caniuse-lite/data/regions/IL.js +1 -1
  866. data/node_modules/caniuse-lite/data/regions/IM.js +1 -1
  867. data/node_modules/caniuse-lite/data/regions/IN.js +1 -1
  868. data/node_modules/caniuse-lite/data/regions/IQ.js +1 -1
  869. data/node_modules/caniuse-lite/data/regions/IR.js +1 -1
  870. data/node_modules/caniuse-lite/data/regions/IS.js +1 -1
  871. data/node_modules/caniuse-lite/data/regions/IT.js +1 -1
  872. data/node_modules/caniuse-lite/data/regions/JE.js +1 -1
  873. data/node_modules/caniuse-lite/data/regions/JM.js +1 -1
  874. data/node_modules/caniuse-lite/data/regions/JO.js +1 -1
  875. data/node_modules/caniuse-lite/data/regions/JP.js +1 -1
  876. data/node_modules/caniuse-lite/data/regions/KE.js +1 -1
  877. data/node_modules/caniuse-lite/data/regions/KG.js +1 -1
  878. data/node_modules/caniuse-lite/data/regions/KH.js +1 -1
  879. data/node_modules/caniuse-lite/data/regions/KI.js +1 -1
  880. data/node_modules/caniuse-lite/data/regions/KM.js +1 -1
  881. data/node_modules/caniuse-lite/data/regions/KN.js +1 -1
  882. data/node_modules/caniuse-lite/data/regions/KP.js +1 -1
  883. data/node_modules/caniuse-lite/data/regions/KR.js +1 -1
  884. data/node_modules/caniuse-lite/data/regions/KW.js +1 -1
  885. data/node_modules/caniuse-lite/data/regions/KY.js +1 -1
  886. data/node_modules/caniuse-lite/data/regions/KZ.js +1 -1
  887. data/node_modules/caniuse-lite/data/regions/LA.js +1 -1
  888. data/node_modules/caniuse-lite/data/regions/LB.js +1 -1
  889. data/node_modules/caniuse-lite/data/regions/LC.js +1 -1
  890. data/node_modules/caniuse-lite/data/regions/LI.js +1 -1
  891. data/node_modules/caniuse-lite/data/regions/LK.js +1 -1
  892. data/node_modules/caniuse-lite/data/regions/LR.js +1 -1
  893. data/node_modules/caniuse-lite/data/regions/LS.js +1 -1
  894. data/node_modules/caniuse-lite/data/regions/LT.js +1 -1
  895. data/node_modules/caniuse-lite/data/regions/LU.js +1 -1
  896. data/node_modules/caniuse-lite/data/regions/LV.js +1 -1
  897. data/node_modules/caniuse-lite/data/regions/LY.js +1 -1
  898. data/node_modules/caniuse-lite/data/regions/MA.js +1 -1
  899. data/node_modules/caniuse-lite/data/regions/MC.js +1 -1
  900. data/node_modules/caniuse-lite/data/regions/MD.js +1 -1
  901. data/node_modules/caniuse-lite/data/regions/ME.js +1 -1
  902. data/node_modules/caniuse-lite/data/regions/MG.js +1 -1
  903. data/node_modules/caniuse-lite/data/regions/MH.js +1 -1
  904. data/node_modules/caniuse-lite/data/regions/MK.js +1 -1
  905. data/node_modules/caniuse-lite/data/regions/ML.js +1 -1
  906. data/node_modules/caniuse-lite/data/regions/MM.js +1 -1
  907. data/node_modules/caniuse-lite/data/regions/MN.js +1 -1
  908. data/node_modules/caniuse-lite/data/regions/MO.js +1 -1
  909. data/node_modules/caniuse-lite/data/regions/MP.js +1 -1
  910. data/node_modules/caniuse-lite/data/regions/MQ.js +1 -1
  911. data/node_modules/caniuse-lite/data/regions/MR.js +1 -1
  912. data/node_modules/caniuse-lite/data/regions/MS.js +1 -1
  913. data/node_modules/caniuse-lite/data/regions/MT.js +1 -1
  914. data/node_modules/caniuse-lite/data/regions/MU.js +1 -1
  915. data/node_modules/caniuse-lite/data/regions/MV.js +1 -1
  916. data/node_modules/caniuse-lite/data/regions/MW.js +1 -1
  917. data/node_modules/caniuse-lite/data/regions/MX.js +1 -1
  918. data/node_modules/caniuse-lite/data/regions/MY.js +1 -1
  919. data/node_modules/caniuse-lite/data/regions/MZ.js +1 -1
  920. data/node_modules/caniuse-lite/data/regions/NA.js +1 -1
  921. data/node_modules/caniuse-lite/data/regions/NC.js +1 -1
  922. data/node_modules/caniuse-lite/data/regions/NE.js +1 -1
  923. data/node_modules/caniuse-lite/data/regions/NF.js +1 -1
  924. data/node_modules/caniuse-lite/data/regions/NG.js +1 -1
  925. data/node_modules/caniuse-lite/data/regions/NI.js +1 -1
  926. data/node_modules/caniuse-lite/data/regions/NL.js +1 -1
  927. data/node_modules/caniuse-lite/data/regions/NO.js +1 -1
  928. data/node_modules/caniuse-lite/data/regions/NP.js +1 -1
  929. data/node_modules/caniuse-lite/data/regions/NR.js +1 -1
  930. data/node_modules/caniuse-lite/data/regions/NU.js +1 -1
  931. data/node_modules/caniuse-lite/data/regions/NZ.js +1 -1
  932. data/node_modules/caniuse-lite/data/regions/OM.js +1 -1
  933. data/node_modules/caniuse-lite/data/regions/PA.js +1 -1
  934. data/node_modules/caniuse-lite/data/regions/PE.js +1 -1
  935. data/node_modules/caniuse-lite/data/regions/PF.js +1 -1
  936. data/node_modules/caniuse-lite/data/regions/PG.js +1 -1
  937. data/node_modules/caniuse-lite/data/regions/PH.js +1 -1
  938. data/node_modules/caniuse-lite/data/regions/PK.js +1 -1
  939. data/node_modules/caniuse-lite/data/regions/PL.js +1 -1
  940. data/node_modules/caniuse-lite/data/regions/PM.js +1 -1
  941. data/node_modules/caniuse-lite/data/regions/PN.js +1 -1
  942. data/node_modules/caniuse-lite/data/regions/PR.js +1 -1
  943. data/node_modules/caniuse-lite/data/regions/PS.js +1 -1
  944. data/node_modules/caniuse-lite/data/regions/PT.js +1 -1
  945. data/node_modules/caniuse-lite/data/regions/PW.js +1 -1
  946. data/node_modules/caniuse-lite/data/regions/PY.js +1 -1
  947. data/node_modules/caniuse-lite/data/regions/QA.js +1 -1
  948. data/node_modules/caniuse-lite/data/regions/RE.js +1 -1
  949. data/node_modules/caniuse-lite/data/regions/RO.js +1 -1
  950. data/node_modules/caniuse-lite/data/regions/RS.js +1 -1
  951. data/node_modules/caniuse-lite/data/regions/RU.js +1 -1
  952. data/node_modules/caniuse-lite/data/regions/RW.js +1 -1
  953. data/node_modules/caniuse-lite/data/regions/SA.js +1 -1
  954. data/node_modules/caniuse-lite/data/regions/SB.js +1 -1
  955. data/node_modules/caniuse-lite/data/regions/SC.js +1 -1
  956. data/node_modules/caniuse-lite/data/regions/SD.js +1 -1
  957. data/node_modules/caniuse-lite/data/regions/SE.js +1 -1
  958. data/node_modules/caniuse-lite/data/regions/SG.js +1 -1
  959. data/node_modules/caniuse-lite/data/regions/SH.js +1 -1
  960. data/node_modules/caniuse-lite/data/regions/SI.js +1 -1
  961. data/node_modules/caniuse-lite/data/regions/SK.js +1 -1
  962. data/node_modules/caniuse-lite/data/regions/SL.js +1 -1
  963. data/node_modules/caniuse-lite/data/regions/SM.js +1 -1
  964. data/node_modules/caniuse-lite/data/regions/SN.js +1 -1
  965. data/node_modules/caniuse-lite/data/regions/SO.js +1 -1
  966. data/node_modules/caniuse-lite/data/regions/SR.js +1 -1
  967. data/node_modules/caniuse-lite/data/regions/ST.js +1 -1
  968. data/node_modules/caniuse-lite/data/regions/SV.js +1 -1
  969. data/node_modules/caniuse-lite/data/regions/SY.js +1 -1
  970. data/node_modules/caniuse-lite/data/regions/SZ.js +1 -1
  971. data/node_modules/caniuse-lite/data/regions/TC.js +1 -1
  972. data/node_modules/caniuse-lite/data/regions/TD.js +1 -1
  973. data/node_modules/caniuse-lite/data/regions/TG.js +1 -1
  974. data/node_modules/caniuse-lite/data/regions/TH.js +1 -1
  975. data/node_modules/caniuse-lite/data/regions/TJ.js +1 -1
  976. data/node_modules/caniuse-lite/data/regions/TL.js +1 -1
  977. data/node_modules/caniuse-lite/data/regions/TM.js +1 -1
  978. data/node_modules/caniuse-lite/data/regions/TN.js +1 -1
  979. data/node_modules/caniuse-lite/data/regions/TO.js +1 -1
  980. data/node_modules/caniuse-lite/data/regions/TR.js +1 -1
  981. data/node_modules/caniuse-lite/data/regions/TT.js +1 -1
  982. data/node_modules/caniuse-lite/data/regions/TV.js +1 -1
  983. data/node_modules/caniuse-lite/data/regions/TW.js +1 -1
  984. data/node_modules/caniuse-lite/data/regions/TZ.js +1 -1
  985. data/node_modules/caniuse-lite/data/regions/UA.js +1 -1
  986. data/node_modules/caniuse-lite/data/regions/UG.js +1 -1
  987. data/node_modules/caniuse-lite/data/regions/US.js +1 -1
  988. data/node_modules/caniuse-lite/data/regions/UY.js +1 -1
  989. data/node_modules/caniuse-lite/data/regions/UZ.js +1 -1
  990. data/node_modules/caniuse-lite/data/regions/VA.js +1 -1
  991. data/node_modules/caniuse-lite/data/regions/VC.js +1 -1
  992. data/node_modules/caniuse-lite/data/regions/VE.js +1 -1
  993. data/node_modules/caniuse-lite/data/regions/VG.js +1 -1
  994. data/node_modules/caniuse-lite/data/regions/VI.js +1 -1
  995. data/node_modules/caniuse-lite/data/regions/VN.js +1 -1
  996. data/node_modules/caniuse-lite/data/regions/VU.js +1 -1
  997. data/node_modules/caniuse-lite/data/regions/WF.js +1 -1
  998. data/node_modules/caniuse-lite/data/regions/WS.js +1 -1
  999. data/node_modules/caniuse-lite/data/regions/YE.js +1 -1
  1000. data/node_modules/caniuse-lite/data/regions/YT.js +1 -1
  1001. data/node_modules/caniuse-lite/data/regions/ZA.js +1 -1
  1002. data/node_modules/caniuse-lite/data/regions/ZM.js +1 -1
  1003. data/node_modules/caniuse-lite/data/regions/ZW.js +1 -1
  1004. data/node_modules/caniuse-lite/data/regions/alt-af.js +1 -1
  1005. data/node_modules/caniuse-lite/data/regions/alt-an.js +1 -1
  1006. data/node_modules/caniuse-lite/data/regions/alt-as.js +1 -1
  1007. data/node_modules/caniuse-lite/data/regions/alt-eu.js +1 -1
  1008. data/node_modules/caniuse-lite/data/regions/alt-na.js +1 -1
  1009. data/node_modules/caniuse-lite/data/regions/alt-oc.js +1 -1
  1010. data/node_modules/caniuse-lite/data/regions/alt-sa.js +1 -1
  1011. data/node_modules/caniuse-lite/data/regions/alt-ww.js +1 -1
  1012. data/node_modules/caniuse-lite/package.json +1 -1
  1013. data/node_modules/electron-to-chromium/chromium-versions.js +4 -1
  1014. data/node_modules/electron-to-chromium/chromium-versions.json +1 -1
  1015. data/node_modules/electron-to-chromium/full-chromium-versions.js +75 -3
  1016. data/node_modules/electron-to-chromium/full-chromium-versions.json +1 -1
  1017. data/node_modules/electron-to-chromium/full-versions.js +45 -1
  1018. data/node_modules/electron-to-chromium/full-versions.json +1 -1
  1019. data/node_modules/electron-to-chromium/package.json +1 -1
  1020. data/node_modules/electron-to-chromium/versions.js +8 -1
  1021. data/node_modules/electron-to-chromium/versions.json +1 -1
  1022. data/node_modules/es-object-atoms/CHANGELOG.md +21 -0
  1023. data/node_modules/es-object-atoms/README.md +7 -0
  1024. data/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +2 -2
  1025. data/node_modules/es-object-atoms/ToObject.d.ts +6 -2
  1026. data/node_modules/es-object-atoms/isObject.d.ts +3 -0
  1027. data/node_modules/es-object-atoms/isObject.js +6 -0
  1028. data/node_modules/es-object-atoms/package.json +9 -8
  1029. data/node_modules/es-object-atoms/test/index.js +11 -1
  1030. data/node_modules/es-shim-unscopables/CHANGELOG.md +8 -0
  1031. data/node_modules/es-shim-unscopables/index.d.ts +8 -0
  1032. data/node_modules/es-shim-unscopables/index.js +2 -1
  1033. data/node_modules/es-shim-unscopables/package.json +20 -11
  1034. data/node_modules/es-shim-unscopables/test/index.js +4 -1
  1035. data/node_modules/es-shim-unscopables/test/with.js +8 -0
  1036. data/node_modules/es-shim-unscopables/tsconfig.json +10 -0
  1037. data/node_modules/eslint/README.md +6 -4
  1038. data/node_modules/eslint/lib/config-api.js +12 -0
  1039. data/node_modules/eslint/lib/languages/js/source-code/source-code.js +18 -14
  1040. data/node_modules/eslint/lib/rules/no-console.js +19 -11
  1041. data/node_modules/eslint/lib/rules/no-native-reassign.js +1 -1
  1042. data/node_modules/eslint/lib/rules/no-negated-in-lhs.js +1 -1
  1043. data/node_modules/eslint/lib/types/config-api.d.ts +8 -0
  1044. data/node_modules/eslint/lib/types/rules.d.ts +5199 -0
  1045. data/node_modules/eslint/package.json +14 -6
  1046. data/node_modules/eslint-scope/README.md +4 -3
  1047. data/node_modules/eslint-scope/dist/eslint-scope.cjs +59 -2
  1048. data/node_modules/eslint-scope/lib/index.js +1 -0
  1049. data/node_modules/eslint-scope/lib/referencer.js +52 -0
  1050. data/node_modules/eslint-scope/lib/scope-manager.js +4 -0
  1051. data/node_modules/eslint-scope/lib/scope.js +1 -1
  1052. data/node_modules/eslint-scope/lib/version.js +1 -1
  1053. data/node_modules/eslint-scope/package.json +1 -1
  1054. data/node_modules/flatted/index.js +3 -3
  1055. data/node_modules/flatted/min.js +1 -1
  1056. data/node_modules/flatted/package.json +21 -8
  1057. data/node_modules/flatted/python/flatted.py +4 -4
  1058. data/node_modules/flow-parser/flow_parser.js +5550 -5530
  1059. data/node_modules/flow-parser/package.json +1 -1
  1060. data/node_modules/for-each/CHANGELOG.md +107 -0
  1061. data/node_modules/for-each/README.md +0 -4
  1062. data/node_modules/for-each/index.d.ts +35 -0
  1063. data/node_modules/for-each/index.js +11 -4
  1064. data/node_modules/for-each/package.json +47 -36
  1065. data/node_modules/for-each/test/test.js +54 -12
  1066. data/node_modules/for-each/tsconfig.json +8 -0
  1067. data/node_modules/get-intrinsic/CHANGELOG.md +8 -0
  1068. data/node_modules/get-intrinsic/index.js +1 -0
  1069. data/node_modules/get-intrinsic/package.json +8 -8
  1070. data/node_modules/import-fresh/index.js +2 -1
  1071. data/node_modules/import-fresh/package.json +6 -1
  1072. data/node_modules/import-fresh/readme.md +14 -8
  1073. data/node_modules/is-async-function/CHANGELOG.md +13 -0
  1074. data/node_modules/is-async-function/index.d.ts +4 -2
  1075. data/node_modules/is-async-function/index.js +3 -18
  1076. data/node_modules/is-async-function/package.json +8 -3
  1077. data/node_modules/is-boolean-object/CHANGELOG.md +11 -0
  1078. data/node_modules/is-boolean-object/index.js +1 -1
  1079. data/node_modules/is-boolean-object/package.json +8 -6
  1080. data/node_modules/is-boolean-object/test/index.js +24 -1
  1081. data/node_modules/is-weakref/CHANGELOG.md +8 -0
  1082. data/node_modules/is-weakref/index.d.ts +1 -1
  1083. data/node_modules/is-weakref/index.js +3 -1
  1084. data/node_modules/is-weakref/package.json +6 -6
  1085. data/node_modules/object-inspect/CHANGELOG.md +8 -0
  1086. data/node_modules/object-inspect/index.js +10 -7
  1087. data/node_modules/object-inspect/package.json +5 -4
  1088. data/node_modules/object-inspect/test/values.js +50 -0
  1089. data/node_modules/possible-typed-array-names/CHANGELOG.md +14 -0
  1090. data/node_modules/possible-typed-array-names/README.md +4 -2
  1091. data/node_modules/possible-typed-array-names/index.d.ts +1 -0
  1092. data/node_modules/possible-typed-array-names/index.js +1 -0
  1093. data/node_modules/possible-typed-array-names/package.json +10 -9
  1094. data/node_modules/possible-typed-array-names/test/index.js +6 -3
  1095. data/node_modules/possible-typed-array-names/tsconfig.json +2 -42
  1096. data/node_modules/recast/lib/lines.d.ts +2 -2
  1097. data/node_modules/recast/lib/printer.js +17 -5
  1098. data/node_modules/recast/package.json +1 -1
  1099. data/node_modules/typescript/README.md +1 -1
  1100. data/node_modules/typescript/lib/_tsc.js +931 -500
  1101. data/node_modules/typescript/lib/_tsserver.js +43 -7
  1102. data/node_modules/typescript/lib/cs/diagnosticMessages.generated.json +14 -8
  1103. data/node_modules/typescript/lib/de/diagnosticMessages.generated.json +14 -8
  1104. data/node_modules/typescript/lib/es/diagnosticMessages.generated.json +14 -8
  1105. data/node_modules/typescript/lib/fr/diagnosticMessages.generated.json +14 -8
  1106. data/node_modules/typescript/lib/it/diagnosticMessages.generated.json +14 -8
  1107. data/node_modules/typescript/lib/ja/diagnosticMessages.generated.json +14 -8
  1108. data/node_modules/typescript/lib/ko/diagnosticMessages.generated.json +14 -8
  1109. data/node_modules/typescript/lib/lib.dom.d.ts +769 -142
  1110. data/node_modules/typescript/lib/lib.dom.iterable.d.ts +9 -7
  1111. data/node_modules/typescript/lib/lib.es2015.iterable.d.ts +69 -54
  1112. data/node_modules/typescript/lib/lib.es2020.bigint.d.ts +41 -7
  1113. data/node_modules/typescript/lib/lib.es2023.array.d.ts +24 -24
  1114. data/node_modules/typescript/lib/lib.es5.d.ts +60 -51
  1115. data/node_modules/typescript/lib/lib.esnext.d.ts +2 -0
  1116. data/node_modules/typescript/lib/lib.esnext.float16.d.ts +443 -0
  1117. data/node_modules/typescript/lib/lib.esnext.iterator.d.ts +1 -1
  1118. data/node_modules/typescript/lib/lib.esnext.promise.d.ts +34 -0
  1119. data/node_modules/typescript/lib/lib.webworker.d.ts +262 -55
  1120. data/node_modules/typescript/lib/lib.webworker.iterable.d.ts +6 -7
  1121. data/node_modules/typescript/lib/pl/diagnosticMessages.generated.json +14 -8
  1122. data/node_modules/typescript/lib/pt-br/diagnosticMessages.generated.json +14 -8
  1123. data/node_modules/typescript/lib/ru/diagnosticMessages.generated.json +14 -8
  1124. data/node_modules/typescript/lib/tr/diagnosticMessages.generated.json +14 -8
  1125. data/node_modules/typescript/lib/typescript.d.ts +14 -3
  1126. data/node_modules/typescript/lib/typescript.js +1035 -570
  1127. data/node_modules/typescript/lib/zh-cn/diagnosticMessages.generated.json +14 -8
  1128. data/node_modules/typescript/lib/zh-tw/diagnosticMessages.generated.json +14 -8
  1129. data/node_modules/typescript/package.json +22 -22
  1130. data/node_modules/update-browserslist-db/index.js +5 -7
  1131. data/node_modules/update-browserslist-db/package.json +2 -2
  1132. data/node_modules/which-typed-array/CHANGELOG.md +10 -0
  1133. data/node_modules/which-typed-array/index.js +21 -20
  1134. data/node_modules/which-typed-array/package.json +9 -7
  1135. data/node_modules/which-typed-array/tsconfig.json +1 -1
  1136. data/package.json +2 -3
  1137. metadata +41 -206
  1138. data/linters/jscodeshift/arrow-function-transform.js +0 -42
  1139. data/node_modules/.bin/jscodeshift +0 -1
  1140. data/node_modules/@babel/eslint-parser/LICENSE +0 -22
  1141. data/node_modules/@babel/eslint-parser/README.md +0 -142
  1142. data/node_modules/@babel/eslint-parser/lib/analyze-scope.cjs +0 -322
  1143. data/node_modules/@babel/eslint-parser/lib/analyze-scope.cjs.map +0 -1
  1144. data/node_modules/@babel/eslint-parser/lib/client.cjs +0 -106
  1145. data/node_modules/@babel/eslint-parser/lib/client.cjs.map +0 -1
  1146. data/node_modules/@babel/eslint-parser/lib/configuration.cjs +0 -23
  1147. data/node_modules/@babel/eslint-parser/lib/configuration.cjs.map +0 -1
  1148. data/node_modules/@babel/eslint-parser/lib/convert/convertAST.cjs +0 -134
  1149. data/node_modules/@babel/eslint-parser/lib/convert/convertAST.cjs.map +0 -1
  1150. data/node_modules/@babel/eslint-parser/lib/convert/convertComments.cjs +0 -10
  1151. data/node_modules/@babel/eslint-parser/lib/convert/convertComments.cjs.map +0 -1
  1152. data/node_modules/@babel/eslint-parser/lib/convert/convertTokens.cjs +0 -159
  1153. data/node_modules/@babel/eslint-parser/lib/convert/convertTokens.cjs.map +0 -1
  1154. data/node_modules/@babel/eslint-parser/lib/convert/index.cjs +0 -25
  1155. data/node_modules/@babel/eslint-parser/lib/convert/index.cjs.map +0 -1
  1156. data/node_modules/@babel/eslint-parser/lib/experimental-worker.cjs +0 -32
  1157. data/node_modules/@babel/eslint-parser/lib/experimental-worker.cjs.map +0 -1
  1158. data/node_modules/@babel/eslint-parser/lib/index.cjs +0 -32
  1159. data/node_modules/@babel/eslint-parser/lib/index.cjs.map +0 -1
  1160. data/node_modules/@babel/eslint-parser/lib/parse.cjs +0 -37
  1161. data/node_modules/@babel/eslint-parser/lib/parse.cjs.map +0 -1
  1162. data/node_modules/@babel/eslint-parser/lib/utils/eslint-version.cjs +0 -5
  1163. data/node_modules/@babel/eslint-parser/lib/utils/eslint-version.cjs.map +0 -1
  1164. data/node_modules/@babel/eslint-parser/lib/worker/ast-info.cjs +0 -37
  1165. data/node_modules/@babel/eslint-parser/lib/worker/ast-info.cjs.map +0 -1
  1166. data/node_modules/@babel/eslint-parser/lib/worker/babel-core.cjs +0 -21
  1167. data/node_modules/@babel/eslint-parser/lib/worker/babel-core.cjs.map +0 -1
  1168. data/node_modules/@babel/eslint-parser/lib/worker/configuration.cjs +0 -91
  1169. data/node_modules/@babel/eslint-parser/lib/worker/configuration.cjs.map +0 -1
  1170. data/node_modules/@babel/eslint-parser/lib/worker/extract-parser-options-plugin.cjs +0 -11
  1171. data/node_modules/@babel/eslint-parser/lib/worker/extract-parser-options-plugin.cjs.map +0 -1
  1172. data/node_modules/@babel/eslint-parser/lib/worker/handle-message.cjs +0 -32
  1173. data/node_modules/@babel/eslint-parser/lib/worker/handle-message.cjs.map +0 -1
  1174. data/node_modules/@babel/eslint-parser/lib/worker/index.cjs +0 -39
  1175. data/node_modules/@babel/eslint-parser/lib/worker/index.cjs.map +0 -1
  1176. data/node_modules/@babel/eslint-parser/lib/worker/maybeParse.cjs +0 -48
  1177. data/node_modules/@babel/eslint-parser/lib/worker/maybeParse.cjs.map +0 -1
  1178. data/node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys/CHANGELOG.md +0 -36
  1179. data/node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys/README.md +0 -98
  1180. data/node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys/lib/index.js +0 -81
  1181. data/node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys/lib/visitor-keys.json +0 -289
  1182. data/node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys/package.json +0 -39
  1183. data/node_modules/@babel/eslint-parser/node_modules/semver/LICENSE +0 -15
  1184. data/node_modules/@babel/eslint-parser/node_modules/semver/README.md +0 -443
  1185. data/node_modules/@babel/eslint-parser/node_modules/semver/bin/semver.js +0 -174
  1186. data/node_modules/@babel/eslint-parser/node_modules/semver/package.json +0 -38
  1187. data/node_modules/@babel/eslint-parser/node_modules/semver/range.bnf +0 -16
  1188. data/node_modules/@babel/eslint-parser/node_modules/semver/semver.js +0 -1643
  1189. data/node_modules/@babel/eslint-parser/package.json +0 -53
  1190. data/node_modules/@babel/eslint-parser/types.d.cts +0 -9
  1191. data/node_modules/@babel/plugin-proposal-decorators/LICENSE +0 -22
  1192. data/node_modules/@babel/plugin-proposal-decorators/README.md +0 -19
  1193. data/node_modules/@babel/plugin-proposal-decorators/lib/index.js +0 -41
  1194. data/node_modules/@babel/plugin-proposal-decorators/lib/index.js.map +0 -1
  1195. data/node_modules/@babel/plugin-proposal-decorators/lib/transformer-legacy.js +0 -165
  1196. data/node_modules/@babel/plugin-proposal-decorators/lib/transformer-legacy.js.map +0 -1
  1197. data/node_modules/@babel/plugin-proposal-decorators/package.json +0 -42
  1198. data/node_modules/@babel/plugin-syntax-decorators/LICENSE +0 -22
  1199. data/node_modules/@babel/plugin-syntax-decorators/README.md +0 -19
  1200. data/node_modules/@babel/plugin-syntax-decorators/lib/index.js +0 -81
  1201. data/node_modules/@babel/plugin-syntax-decorators/lib/index.js.map +0 -1
  1202. data/node_modules/@babel/plugin-syntax-decorators/package.json +0 -33
  1203. data/node_modules/@babel/plugin-transform-react-display-name/LICENSE +0 -22
  1204. data/node_modules/@babel/plugin-transform-react-display-name/README.md +0 -19
  1205. data/node_modules/@babel/plugin-transform-react-display-name/lib/index.js +0 -92
  1206. data/node_modules/@babel/plugin-transform-react-display-name/lib/index.js.map +0 -1
  1207. data/node_modules/@babel/plugin-transform-react-display-name/package.json +0 -34
  1208. data/node_modules/@babel/plugin-transform-react-jsx/LICENSE +0 -22
  1209. data/node_modules/@babel/plugin-transform-react-jsx/README.md +0 -19
  1210. data/node_modules/@babel/plugin-transform-react-jsx/lib/create-plugin.js +0 -505
  1211. data/node_modules/@babel/plugin-transform-react-jsx/lib/create-plugin.js.map +0 -1
  1212. data/node_modules/@babel/plugin-transform-react-jsx/lib/development.js +0 -13
  1213. data/node_modules/@babel/plugin-transform-react-jsx/lib/development.js.map +0 -1
  1214. data/node_modules/@babel/plugin-transform-react-jsx/lib/index.js +0 -13
  1215. data/node_modules/@babel/plugin-transform-react-jsx/lib/index.js.map +0 -1
  1216. data/node_modules/@babel/plugin-transform-react-jsx/package.json +0 -39
  1217. data/node_modules/@babel/plugin-transform-react-jsx-development/LICENSE +0 -22
  1218. data/node_modules/@babel/plugin-transform-react-jsx-development/README.md +0 -19
  1219. data/node_modules/@babel/plugin-transform-react-jsx-development/lib/index.js +0 -10
  1220. data/node_modules/@babel/plugin-transform-react-jsx-development/lib/index.js.map +0 -1
  1221. data/node_modules/@babel/plugin-transform-react-jsx-development/package.json +0 -33
  1222. data/node_modules/@babel/plugin-transform-react-pure-annotations/LICENSE +0 -22
  1223. data/node_modules/@babel/plugin-transform-react-pure-annotations/README.md +0 -19
  1224. data/node_modules/@babel/plugin-transform-react-pure-annotations/lib/index.js +0 -49
  1225. data/node_modules/@babel/plugin-transform-react-pure-annotations/lib/index.js.map +0 -1
  1226. data/node_modules/@babel/plugin-transform-react-pure-annotations/package.json +0 -34
  1227. data/node_modules/@babel/preset-react/LICENSE +0 -22
  1228. data/node_modules/@babel/preset-react/README.md +0 -19
  1229. data/node_modules/@babel/preset-react/lib/index.js +0 -79
  1230. data/node_modules/@babel/preset-react/lib/index.js.map +0 -1
  1231. data/node_modules/@babel/preset-react/package.json +0 -37
  1232. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/LICENSE +0 -7
  1233. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/index.js +0 -8
  1234. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/CHANGELOG.md +0 -70
  1235. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/LICENSE +0 -22
  1236. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/README.md +0 -54
  1237. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/definition.js +0 -86
  1238. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/index.js +0 -165
  1239. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/pattern-visitor.js +0 -152
  1240. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/reference.js +0 -167
  1241. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/referencer.js +0 -629
  1242. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/scope-manager.js +0 -247
  1243. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/scope.js +0 -748
  1244. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/lib/variable.js +0 -88
  1245. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/node_modules/estraverse/LICENSE.BSD +0 -19
  1246. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/node_modules/estraverse/README.md +0 -153
  1247. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/node_modules/estraverse/estraverse.js +0 -782
  1248. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/node_modules/estraverse/gulpfile.js +0 -70
  1249. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/node_modules/estraverse/package.json +0 -40
  1250. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/node_modules/eslint-scope/package.json +0 -48
  1251. data/node_modules/@nicolo-ribaudo/eslint-scope-5-internals/package.json +0 -14
  1252. data/node_modules/eslint/lib/types/rules/best-practices.d.ts +0 -1143
  1253. data/node_modules/eslint/lib/types/rules/deprecated.d.ts +0 -252
  1254. data/node_modules/eslint/lib/types/rules/ecmascript-6.d.ts +0 -647
  1255. data/node_modules/eslint/lib/types/rules/index.d.ts +0 -50
  1256. data/node_modules/eslint/lib/types/rules/node-commonjs.d.ts +0 -171
  1257. data/node_modules/eslint/lib/types/rules/possible-errors.d.ts +0 -685
  1258. data/node_modules/eslint/lib/types/rules/strict-mode.d.ts +0 -38
  1259. data/node_modules/eslint/lib/types/rules/stylistic-issues.d.ts +0 -2043
  1260. data/node_modules/eslint/lib/types/rules/variables.d.ts +0 -234
  1261. data/node_modules/flatted/python/test.py +0 -63
  1262. data/node_modules/jscodeshift/CHANGELOG.md +0 -226
  1263. data/node_modules/jscodeshift/CODE_OF_CONDUCT.md +0 -3
  1264. data/node_modules/jscodeshift/CONTRIBUTING.md +0 -48
  1265. data/node_modules/jscodeshift/README.md +0 -671
  1266. data/node_modules/jscodeshift/bin/jscodeshift.js +0 -182
  1267. data/node_modules/jscodeshift/bin/jscodeshift.sh +0 -12
  1268. data/node_modules/jscodeshift/dist/Collection.js +0 -472
  1269. data/node_modules/jscodeshift/dist/Runner.js +0 -322
  1270. data/node_modules/jscodeshift/dist/Worker.js +0 -210
  1271. data/node_modules/jscodeshift/dist/__testfixtures__/test-async-transform.input.js +0 -1
  1272. data/node_modules/jscodeshift/dist/__testfixtures__/test-async-transform.js +0 -11
  1273. data/node_modules/jscodeshift/dist/__testfixtures__/test-async-transform.output.js +0 -1
  1274. data/node_modules/jscodeshift/dist/__testfixtures__/test-sync-transform.input.js +0 -1
  1275. data/node_modules/jscodeshift/dist/__testfixtures__/test-sync-transform.js +0 -7
  1276. data/node_modules/jscodeshift/dist/__testfixtures__/test-sync-transform.output.js +0 -1
  1277. data/node_modules/jscodeshift/dist/argsParser.js +0 -273
  1278. data/node_modules/jscodeshift/dist/collections/ImportDeclaration.js +0 -113
  1279. data/node_modules/jscodeshift/dist/collections/JSXElement.js +0 -221
  1280. data/node_modules/jscodeshift/dist/collections/Node.js +0 -187
  1281. data/node_modules/jscodeshift/dist/collections/VariableDeclarator.js +0 -210
  1282. data/node_modules/jscodeshift/dist/collections/index.js +0 -14
  1283. data/node_modules/jscodeshift/dist/core.js +0 -183
  1284. data/node_modules/jscodeshift/dist/getParser.js +0 -25
  1285. data/node_modules/jscodeshift/dist/ignoreFiles.js +0 -68
  1286. data/node_modules/jscodeshift/dist/matchNode.js +0 -40
  1287. data/node_modules/jscodeshift/dist/template.js +0 -173
  1288. data/node_modules/jscodeshift/dist/testUtils.js +0 -173
  1289. data/node_modules/jscodeshift/dist/utils/intersection.js +0 -27
  1290. data/node_modules/jscodeshift/dist/utils/once.js +0 -21
  1291. data/node_modules/jscodeshift/dist/utils/union.js +0 -20
  1292. data/node_modules/jscodeshift/index.js +0 -9
  1293. data/node_modules/jscodeshift/package.json +0 -74
  1294. data/node_modules/jscodeshift/parser/babel5Compat.js +0 -50
  1295. data/node_modules/jscodeshift/parser/babylon.js +0 -57
  1296. data/node_modules/jscodeshift/parser/flow.js +0 -34
  1297. data/node_modules/jscodeshift/parser/ts.js +0 -24
  1298. data/node_modules/jscodeshift/parser/tsOptions.js +0 -46
  1299. data/node_modules/jscodeshift/parser/tsx.js +0 -27
  1300. data/node_modules/jscodeshift/src/Collection.js +0 -472
  1301. data/node_modules/jscodeshift/src/Runner.js +0 -322
  1302. data/node_modules/jscodeshift/src/Worker.js +0 -210
  1303. data/node_modules/jscodeshift/src/__testfixtures__/test-async-transform.input.js +0 -1
  1304. data/node_modules/jscodeshift/src/__testfixtures__/test-async-transform.js +0 -11
  1305. data/node_modules/jscodeshift/src/__testfixtures__/test-async-transform.output.js +0 -1
  1306. data/node_modules/jscodeshift/src/__testfixtures__/test-sync-transform.input.js +0 -1
  1307. data/node_modules/jscodeshift/src/__testfixtures__/test-sync-transform.js +0 -7
  1308. data/node_modules/jscodeshift/src/__testfixtures__/test-sync-transform.output.js +0 -1
  1309. data/node_modules/jscodeshift/src/argsParser.js +0 -273
  1310. data/node_modules/jscodeshift/src/collections/ImportDeclaration.js +0 -113
  1311. data/node_modules/jscodeshift/src/collections/JSXElement.js +0 -221
  1312. data/node_modules/jscodeshift/src/collections/Node.js +0 -187
  1313. data/node_modules/jscodeshift/src/collections/VariableDeclarator.js +0 -210
  1314. data/node_modules/jscodeshift/src/collections/index.js +0 -14
  1315. data/node_modules/jscodeshift/src/core.js +0 -183
  1316. data/node_modules/jscodeshift/src/getParser.js +0 -25
  1317. data/node_modules/jscodeshift/src/ignoreFiles.js +0 -68
  1318. data/node_modules/jscodeshift/src/matchNode.js +0 -40
  1319. data/node_modules/jscodeshift/src/template.js +0 -173
  1320. data/node_modules/jscodeshift/src/testUtils.js +0 -173
  1321. data/node_modules/jscodeshift/src/utils/intersection.js +0 -27
  1322. data/node_modules/jscodeshift/src/utils/once.js +0 -21
  1323. data/node_modules/jscodeshift/src/utils/union.js +0 -20
  1324. data/node_modules/jscodeshift/utils/requirePackage.js +0 -24
  1325. data/node_modules/jscodeshift/utils/testUtils.js +0 -49
  1326. data/node_modules/jscodeshift/website/README.md +0 -44
  1327. data/node_modules/jscodeshift/website/astro.config.mjs +0 -36
  1328. data/node_modules/jscodeshift/website/package.json +0 -17
  1329. data/node_modules/jscodeshift/website/public/favicon.svg +0 -1
  1330. data/node_modules/jscodeshift/website/src/assets/houston.webp +0 -0
  1331. data/node_modules/jscodeshift/website/src/content/config.ts +0 -6
  1332. data/node_modules/jscodeshift/website/src/content/docs/build/api-reference.mdx +0 -406
  1333. data/node_modules/jscodeshift/website/src/content/docs/build/ast-grammar.mdx +0 -3086
  1334. data/node_modules/jscodeshift/website/src/content/docs/index.mdx +0 -15
  1335. data/node_modules/jscodeshift/website/src/content/docs/overview/introduction.mdx +0 -45
  1336. data/node_modules/jscodeshift/website/src/content/docs/run/cli.mdx +0 -161
  1337. data/node_modules/jscodeshift/website/src/env.d.ts +0 -2
  1338. data/node_modules/jscodeshift/website/tsconfig.json +0 -3
  1339. data/node_modules/typescript/lib/cancellationToken.js +0 -90
@@ -6,30 +6,35 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.TaggedTemplateExpression = TaggedTemplateExpression;
7
7
  exports.TemplateElement = TemplateElement;
8
8
  exports.TemplateLiteral = TemplateLiteral;
9
+ exports._printTemplate = _printTemplate;
9
10
  function TaggedTemplateExpression(node) {
10
11
  this.print(node.tag);
11
- this.print(node.typeParameters);
12
+ {
13
+ this.print(node.typeParameters);
14
+ }
12
15
  this.print(node.quasi);
13
16
  }
14
17
  function TemplateElement() {
15
18
  throw new Error("TemplateElement printing is handled in TemplateLiteral");
16
19
  }
17
- function TemplateLiteral(node) {
20
+ function _printTemplate(node, substitutions) {
18
21
  const quasis = node.quasis;
19
22
  let partRaw = "`";
20
- for (let i = 0; i < quasis.length; i++) {
23
+ for (let i = 0; i < quasis.length - 1; i++) {
21
24
  partRaw += quasis[i].value.raw;
22
- if (i + 1 < quasis.length) {
23
- this.token(partRaw + "${", true);
24
- this.print(node.expressions[i]);
25
- partRaw = "}";
26
- if (this.tokenMap) {
27
- const token = this.tokenMap.findMatching(node, "}", i);
28
- if (token) this._catchUpTo(token.loc.start);
29
- }
25
+ this.token(partRaw + "${", true);
26
+ this.print(substitutions[i]);
27
+ partRaw = "}";
28
+ if (this.tokenMap) {
29
+ const token = this.tokenMap.findMatching(node, "}", i);
30
+ if (token) this._catchUpTo(token.loc.start);
30
31
  }
31
32
  }
33
+ partRaw += quasis[quasis.length - 1].value.raw;
32
34
  this.token(partRaw + "`", true);
33
35
  }
36
+ function TemplateLiteral(node) {
37
+ this._printTemplate(node, node.expressions);
38
+ }
34
39
 
35
40
  //# sourceMappingURL=template-literals.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["TaggedTemplateExpression","node","print","tag","typeParameters","quasi","TemplateElement","Error","TemplateLiteral","quasis","partRaw","i","length","value","raw","token","expressions","tokenMap","findMatching","_catchUpTo","loc","start"],"sources":["../../src/generators/template-literals.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\n\nexport function TaggedTemplateExpression(\n this: Printer,\n node: t.TaggedTemplateExpression,\n) {\n this.print(node.tag);\n this.print(node.typeParameters); // TS\n this.print(node.quasi);\n}\n\nexport function TemplateElement(this: Printer) {\n throw new Error(\"TemplateElement printing is handled in TemplateLiteral\");\n}\n\nexport function TemplateLiteral(this: Printer, node: t.TemplateLiteral) {\n const quasis = node.quasis;\n\n let partRaw = \"`\";\n\n for (let i = 0; i < quasis.length; i++) {\n partRaw += quasis[i].value.raw;\n\n if (i + 1 < quasis.length) {\n this.token(partRaw + \"${\", true);\n this.print(node.expressions[i]);\n partRaw = \"}\";\n\n // In Babel 7 we have indivirual tokens for ${ and }, so the automatic\n // catchup logic does not work. Manually look for those tokens.\n if (!process.env.BABEL_8_BREAKING && this.tokenMap) {\n const token = this.tokenMap.findMatching(node, \"}\", i);\n if (token) this._catchUpTo(token.loc.start);\n }\n }\n }\n\n this.token(partRaw + \"`\", true);\n}\n"],"mappings":";;;;;;;;AAGO,SAASA,wBAAwBA,CAEtCC,IAAgC,EAChC;EACA,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,GAAG,CAAC;EACpB,IAAI,CAACD,KAAK,CAACD,IAAI,CAACG,cAAc,CAAC;EAC/B,IAAI,CAACF,KAAK,CAACD,IAAI,CAACI,KAAK,CAAC;AACxB;AAEO,SAASC,eAAeA,CAAA,EAAgB;EAC7C,MAAM,IAAIC,KAAK,CAAC,wDAAwD,CAAC;AAC3E;AAEO,SAASC,eAAeA,CAAgBP,IAAuB,EAAE;EACtE,MAAMQ,MAAM,GAAGR,IAAI,CAACQ,MAAM;EAE1B,IAAIC,OAAO,GAAG,GAAG;EAEjB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,MAAM,CAACG,MAAM,EAAED,CAAC,EAAE,EAAE;IACtCD,OAAO,IAAID,MAAM,CAACE,CAAC,CAAC,CAACE,KAAK,CAACC,GAAG;IAE9B,IAAIH,CAAC,GAAG,CAAC,GAAGF,MAAM,CAACG,MAAM,EAAE;MACzB,IAAI,CAACG,KAAK,CAACL,OAAO,GAAG,IAAI,EAAE,IAAI,CAAC;MAChC,IAAI,CAACR,KAAK,CAACD,IAAI,CAACe,WAAW,CAACL,CAAC,CAAC,CAAC;MAC/BD,OAAO,GAAG,GAAG;MAIb,IAAqC,IAAI,CAACO,QAAQ,EAAE;QAClD,MAAMF,KAAK,GAAG,IAAI,CAACE,QAAQ,CAACC,YAAY,CAACjB,IAAI,EAAE,GAAG,EAAEU,CAAC,CAAC;QACtD,IAAII,KAAK,EAAE,IAAI,CAACI,UAAU,CAACJ,KAAK,CAACK,GAAG,CAACC,KAAK,CAAC;MAC7C;IACF;EACF;EAEA,IAAI,CAACN,KAAK,CAACL,OAAO,GAAG,GAAG,EAAE,IAAI,CAAC;AACjC","ignoreList":[]}
1
+ {"version":3,"names":["TaggedTemplateExpression","node","print","tag","typeParameters","quasi","TemplateElement","Error","_printTemplate","substitutions","quasis","partRaw","i","length","value","raw","token","tokenMap","findMatching","_catchUpTo","loc","start","TemplateLiteral","expressions"],"sources":["../../src/generators/template-literals.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\n\nexport function TaggedTemplateExpression(\n this: Printer,\n node: t.TaggedTemplateExpression,\n) {\n this.print(node.tag);\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n this.print(node.typeArguments);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n this.print(node.typeParameters);\n }\n this.print(node.quasi);\n}\n\nexport function TemplateElement(this: Printer) {\n throw new Error(\"TemplateElement printing is handled in TemplateLiteral\");\n}\n\nexport type TemplateLiteralBase = t.Node & {\n quasis: t.TemplateElement[];\n};\n\nexport function _printTemplate<T extends t.Node>(\n this: Printer,\n node: TemplateLiteralBase,\n substitutions: T[],\n) {\n const quasis = node.quasis;\n let partRaw = \"`\";\n for (let i = 0; i < quasis.length - 1; i++) {\n partRaw += quasis[i].value.raw;\n this.token(partRaw + \"${\", true);\n this.print(substitutions[i]);\n partRaw = \"}\";\n\n // In Babel 7 we have individual tokens for ${ and }, so the automatic\n // catchup logic does not work. Manually look for those tokens.\n if (!process.env.BABEL_8_BREAKING && this.tokenMap) {\n const token = this.tokenMap.findMatching(node, \"}\", i);\n if (token) this._catchUpTo(token.loc.start);\n }\n }\n partRaw += quasis[quasis.length - 1].value.raw;\n this.token(partRaw + \"`\", true);\n}\n\nexport function TemplateLiteral(this: Printer, node: t.TemplateLiteral) {\n this._printTemplate(node, node.expressions);\n}\n"],"mappings":";;;;;;;;;AAGO,SAASA,wBAAwBA,CAEtCC,IAAgC,EAChC;EACA,IAAI,CAACC,KAAK,CAACD,IAAI,CAACE,GAAG,CAAC;EAIb;IAEL,IAAI,CAACD,KAAK,CAACD,IAAI,CAACG,cAAc,CAAC;EACjC;EACA,IAAI,CAACF,KAAK,CAACD,IAAI,CAACI,KAAK,CAAC;AACxB;AAEO,SAASC,eAAeA,CAAA,EAAgB;EAC7C,MAAM,IAAIC,KAAK,CAAC,wDAAwD,CAAC;AAC3E;AAMO,SAASC,cAAcA,CAE5BP,IAAyB,EACzBQ,aAAkB,EAClB;EACA,MAAMC,MAAM,GAAGT,IAAI,CAACS,MAAM;EAC1B,IAAIC,OAAO,GAAG,GAAG;EACjB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,MAAM,CAACG,MAAM,GAAG,CAAC,EAAED,CAAC,EAAE,EAAE;IAC1CD,OAAO,IAAID,MAAM,CAACE,CAAC,CAAC,CAACE,KAAK,CAACC,GAAG;IAC9B,IAAI,CAACC,KAAK,CAACL,OAAO,GAAG,IAAI,EAAE,IAAI,CAAC;IAChC,IAAI,CAACT,KAAK,CAACO,aAAa,CAACG,CAAC,CAAC,CAAC;IAC5BD,OAAO,GAAG,GAAG;IAIb,IAAqC,IAAI,CAACM,QAAQ,EAAE;MAClD,MAAMD,KAAK,GAAG,IAAI,CAACC,QAAQ,CAACC,YAAY,CAACjB,IAAI,EAAE,GAAG,EAAEW,CAAC,CAAC;MACtD,IAAII,KAAK,EAAE,IAAI,CAACG,UAAU,CAACH,KAAK,CAACI,GAAG,CAACC,KAAK,CAAC;IAC7C;EACF;EACAV,OAAO,IAAID,MAAM,CAACA,MAAM,CAACG,MAAM,GAAG,CAAC,CAAC,CAACC,KAAK,CAACC,GAAG;EAC9C,IAAI,CAACC,KAAK,CAACL,OAAO,GAAG,GAAG,EAAE,IAAI,CAAC;AACjC;AAEO,SAASW,eAAeA,CAAgBrB,IAAuB,EAAE;EACtE,IAAI,CAACO,cAAc,CAACP,IAAI,EAAEA,IAAI,CAACsB,WAAW,CAAC;AAC7C","ignoreList":[]}
@@ -7,7 +7,6 @@ exports.ArgumentPlaceholder = ArgumentPlaceholder;
7
7
  exports.ArrayPattern = exports.ArrayExpression = ArrayExpression;
8
8
  exports.BigIntLiteral = BigIntLiteral;
9
9
  exports.BooleanLiteral = BooleanLiteral;
10
- exports.DecimalLiteral = DecimalLiteral;
11
10
  exports.Identifier = Identifier;
12
11
  exports.NullLiteral = NullLiteral;
13
12
  exports.NumericLiteral = NumericLiteral;
@@ -209,14 +208,6 @@ function BigIntLiteral(node) {
209
208
  }
210
209
  this.word(node.value + "n");
211
210
  }
212
- function DecimalLiteral(node) {
213
- const raw = this.getPossibleRaw(node);
214
- if (!this.format.minified && raw !== undefined) {
215
- this.word(raw);
216
- return;
217
- }
218
- this.word(node.value + "m");
219
- }
220
211
  const validTopicTokenSet = new Set(["^^", "@@", "^", "%", "#"]);
221
212
  function TopicReference() {
222
213
  const {
@@ -1 +1 @@
1
- {"version":3,"names":["_t","require","_jsesc","isAssignmentPattern","isIdentifier","lastRawIdentNode","lastRawIdentResult","_getRawIdentifier","node","name","token","tokenMap","find","tok","value","_originalCode","slice","start","end","Identifier","_node$loc","sourceIdentifierName","loc","identifierName","word","ArgumentPlaceholder","RestElement","print","argument","ObjectExpression","props","properties","length","exit","enterDelimited","space","printList","shouldPrintTrailingComma","sourceWithOffset","ObjectMethod","printJoin","decorators","_methodHead","body","ObjectProperty","computed","key","left","shorthand","ArrayExpression","elems","elements","len","i","elem","RecordExpression","startToken","endToken","format","recordAndTupleSyntaxType","Error","JSON","stringify","TupleExpression","RegExpLiteral","pattern","flags","BooleanLiteral","NullLiteral","NumericLiteral","raw","getPossibleRaw","opts","jsescOption","str","numbers","number","jsesc","minified","StringLiteral","undefined","val","BigIntLiteral","DecimalLiteral","validTopicTokenSet","Set","TopicReference","topicToken","has","givenTopicTokenJSON","validTopics","Array","from","v","join","PipelineTopicExpression","expression","PipelineBareFunction","callee","PipelinePrimaryTopicReference"],"sources":["../../src/generators/types.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport { isAssignmentPattern, isIdentifier } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport jsesc from \"jsesc\";\n\nlet lastRawIdentNode: t.Identifier | null = null;\nlet lastRawIdentResult: string = \"\";\nexport function _getRawIdentifier(this: Printer, node: t.Identifier) {\n if (node === lastRawIdentNode) return lastRawIdentResult;\n lastRawIdentNode = node;\n\n const { name } = node;\n const token = this.tokenMap.find(node, tok => tok.value === name);\n if (token) {\n lastRawIdentResult = this._originalCode.slice(token.start, token.end);\n return lastRawIdentResult;\n }\n return (lastRawIdentResult = node.name);\n}\n\nexport function Identifier(this: Printer, node: t.Identifier) {\n this.sourceIdentifierName(node.loc?.identifierName || node.name);\n\n this.word(this.tokenMap ? this._getRawIdentifier(node) : node.name);\n}\n\nexport function ArgumentPlaceholder(this: Printer) {\n this.token(\"?\");\n}\n\nexport function RestElement(this: Printer, node: t.RestElement) {\n this.token(\"...\");\n this.print(node.argument);\n}\n\nexport { RestElement as SpreadElement };\n\nexport function ObjectExpression(this: Printer, node: t.ObjectExpression) {\n const props = node.properties;\n\n this.token(\"{\");\n\n if (props.length) {\n const exit = this.enterDelimited();\n this.space();\n this.printList(props, this.shouldPrintTrailingComma(\"}\"), true, true);\n this.space();\n exit();\n }\n\n this.sourceWithOffset(\"end\", node.loc, -1);\n\n this.token(\"}\");\n}\n\nexport { ObjectExpression as ObjectPattern };\n\nexport function ObjectMethod(this: Printer, node: t.ObjectMethod) {\n this.printJoin(node.decorators);\n this._methodHead(node);\n this.space();\n this.print(node.body);\n}\n\nexport function ObjectProperty(this: Printer, node: t.ObjectProperty) {\n this.printJoin(node.decorators);\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key);\n this.token(\"]\");\n } else {\n // print `({ foo: foo = 5 } = {})` as `({ foo = 5 } = {});`\n if (\n isAssignmentPattern(node.value) &&\n isIdentifier(node.key) &&\n // @ts-expect-error todo(flow->ts) `.name` does not exist on some types in union\n node.key.name === node.value.left.name\n ) {\n this.print(node.value);\n return;\n }\n\n this.print(node.key);\n\n // shorthand!\n if (\n node.shorthand &&\n isIdentifier(node.key) &&\n isIdentifier(node.value) &&\n node.key.name === node.value.name\n ) {\n return;\n }\n }\n\n this.token(\":\");\n this.space();\n this.print(node.value);\n}\n\nexport function ArrayExpression(this: Printer, node: t.ArrayExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n this.token(\"[\");\n\n const exit = this.enterDelimited();\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem);\n if (i < len - 1 || this.shouldPrintTrailingComma(\"]\")) {\n this.token(\",\", false, i);\n }\n } else {\n // If the array expression ends with a hole, that hole\n // will be ignored by the interpreter, but if it ends with\n // two (or more) holes, we need to write out two (or more)\n // commas so that the resulting code is interpreted with\n // both (all) of the holes.\n this.token(\",\", false, i);\n }\n }\n\n exit();\n\n this.token(\"]\");\n}\n\nexport { ArrayExpression as ArrayPattern };\n\nexport function RecordExpression(this: Printer, node: t.RecordExpression) {\n const props = node.properties;\n\n let startToken;\n let endToken;\n if (process.env.BABEL_8_BREAKING) {\n startToken = \"#{\";\n endToken = \"}\";\n } else {\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"{|\";\n endToken = \"|}\";\n } else if (\n this.format.recordAndTupleSyntaxType !== \"hash\" &&\n this.format.recordAndTupleSyntaxType != null\n ) {\n throw new Error(\n `The \"recordAndTupleSyntaxType\" generator option must be \"bar\" or \"hash\" (${JSON.stringify(\n this.format.recordAndTupleSyntaxType,\n )} received).`,\n );\n } else {\n startToken = \"#{\";\n endToken = \"}\";\n }\n }\n\n this.token(startToken);\n\n if (props.length) {\n this.space();\n this.printList(props, this.shouldPrintTrailingComma(endToken), true, true);\n this.space();\n }\n this.token(endToken);\n}\n\nexport function TupleExpression(this: Printer, node: t.TupleExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n let startToken;\n let endToken;\n if (process.env.BABEL_8_BREAKING) {\n startToken = \"#[\";\n endToken = \"]\";\n } else {\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"[|\";\n endToken = \"|]\";\n } else if (this.format.recordAndTupleSyntaxType === \"hash\") {\n startToken = \"#[\";\n endToken = \"]\";\n } else {\n throw new Error(\n `${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`,\n );\n }\n }\n\n this.token(startToken);\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem);\n if (i < len - 1 || this.shouldPrintTrailingComma(endToken)) {\n this.token(\",\", false, i);\n }\n }\n }\n\n this.token(endToken);\n}\n\nexport function RegExpLiteral(this: Printer, node: t.RegExpLiteral) {\n this.word(`/${node.pattern}/${node.flags}`);\n}\n\nexport function BooleanLiteral(this: Printer, node: t.BooleanLiteral) {\n this.word(node.value ? \"true\" : \"false\");\n}\n\nexport function NullLiteral(this: Printer) {\n this.word(\"null\");\n}\n\nexport function NumericLiteral(this: Printer, node: t.NumericLiteral) {\n const raw = this.getPossibleRaw(node);\n const opts = this.format.jsescOption;\n const value = node.value;\n const str = value + \"\";\n if (opts.numbers) {\n this.number(jsesc(value, opts), value);\n } else if (raw == null) {\n this.number(str, value); // normalize\n } else if (this.format.minified) {\n this.number(raw.length < str.length ? raw : str, value);\n } else {\n this.number(raw, value);\n }\n}\n\nexport function StringLiteral(this: Printer, node: t.StringLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.token(raw);\n return;\n }\n\n const val = jsesc(node.value, this.format.jsescOption);\n\n this.token(val);\n}\n\nexport function BigIntLiteral(this: Printer, node: t.BigIntLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.word(raw);\n return;\n }\n this.word(node.value + \"n\");\n}\n\n// TODO: Remove in Babel 8\nexport function DecimalLiteral(this: Printer, node: any) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.word(raw);\n return;\n }\n this.word(node.value + \"m\");\n}\n\n// Hack pipe operator\nconst validTopicTokenSet = new Set([\"^^\", \"@@\", \"^\", \"%\", \"#\"]);\nexport function TopicReference(this: Printer) {\n const { topicToken } = this.format;\n\n if (validTopicTokenSet.has(topicToken)) {\n this.token(topicToken);\n } else {\n const givenTopicTokenJSON = JSON.stringify(topicToken);\n const validTopics = Array.from(validTopicTokenSet, v => JSON.stringify(v));\n throw new Error(\n `The \"topicToken\" generator option must be one of ` +\n `${validTopics.join(\", \")} (${givenTopicTokenJSON} received instead).`,\n );\n }\n}\n\n// Smart-mix pipe operator\nexport function PipelineTopicExpression(\n this: Printer,\n node: t.PipelineTopicExpression,\n) {\n this.print(node.expression);\n}\n\nexport function PipelineBareFunction(\n this: Printer,\n node: t.PipelineBareFunction,\n) {\n this.print(node.callee);\n}\n\nexport function PipelinePrimaryTopicReference(this: Printer) {\n this.token(\"#\");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,EAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAA0B;EAFjBE,mBAAmB;EAAEC;AAAY,IAAAJ,EAAA;AAI1C,IAAIK,gBAAqC,GAAG,IAAI;AAChD,IAAIC,kBAA0B,GAAG,EAAE;AAC5B,SAASC,iBAAiBA,CAAgBC,IAAkB,EAAE;EACnE,IAAIA,IAAI,KAAKH,gBAAgB,EAAE,OAAOC,kBAAkB;EACxDD,gBAAgB,GAAGG,IAAI;EAEvB,MAAM;IAAEC;EAAK,CAAC,GAAGD,IAAI;EACrB,MAAME,KAAK,GAAG,IAAI,CAACC,QAAQ,CAACC,IAAI,CAACJ,IAAI,EAAEK,GAAG,IAAIA,GAAG,CAACC,KAAK,KAAKL,IAAI,CAAC;EACjE,IAAIC,KAAK,EAAE;IACTJ,kBAAkB,GAAG,IAAI,CAACS,aAAa,CAACC,KAAK,CAACN,KAAK,CAACO,KAAK,EAAEP,KAAK,CAACQ,GAAG,CAAC;IACrE,OAAOZ,kBAAkB;EAC3B;EACA,OAAQA,kBAAkB,GAAGE,IAAI,CAACC,IAAI;AACxC;AAEO,SAASU,UAAUA,CAAgBX,IAAkB,EAAE;EAAA,IAAAY,SAAA;EAC5D,IAAI,CAACC,oBAAoB,CAAC,EAAAD,SAAA,GAAAZ,IAAI,CAACc,GAAG,qBAARF,SAAA,CAAUG,cAAc,KAAIf,IAAI,CAACC,IAAI,CAAC;EAEhE,IAAI,CAACe,IAAI,CAAC,IAAI,CAACb,QAAQ,GAAG,IAAI,CAACJ,iBAAiB,CAACC,IAAI,CAAC,GAAGA,IAAI,CAACC,IAAI,CAAC;AACrE;AAEO,SAASgB,mBAAmBA,CAAA,EAAgB;EACjD,IAAI,CAACf,SAAK,GAAI,CAAC;AACjB;AAEO,SAASgB,WAAWA,CAAgBlB,IAAmB,EAAE;EAC9D,IAAI,CAACE,KAAK,CAAC,KAAK,CAAC;EACjB,IAAI,CAACiB,KAAK,CAACnB,IAAI,CAACoB,QAAQ,CAAC;AAC3B;AAIO,SAASC,gBAAgBA,CAAgBrB,IAAwB,EAAE;EACxE,MAAMsB,KAAK,GAAGtB,IAAI,CAACuB,UAAU;EAE7B,IAAI,CAACrB,SAAK,IAAI,CAAC;EAEf,IAAIoB,KAAK,CAACE,MAAM,EAAE;IAChB,MAAMC,IAAI,GAAG,IAAI,CAACC,cAAc,CAAC,CAAC;IAClC,IAAI,CAACC,KAAK,CAAC,CAAC;IACZ,IAAI,CAACC,SAAS,CAACN,KAAK,EAAE,IAAI,CAACO,wBAAwB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;IACrE,IAAI,CAACF,KAAK,CAAC,CAAC;IACZF,IAAI,CAAC,CAAC;EACR;EAEA,IAAI,CAACK,gBAAgB,CAAC,KAAK,EAAE9B,IAAI,CAACc,GAAG,EAAE,CAAC,CAAC,CAAC;EAE1C,IAAI,CAACZ,SAAK,IAAI,CAAC;AACjB;AAIO,SAAS6B,YAAYA,CAAgB/B,IAAoB,EAAE;EAChE,IAAI,CAACgC,SAAS,CAAChC,IAAI,CAACiC,UAAU,CAAC;EAC/B,IAAI,CAACC,WAAW,CAAClC,IAAI,CAAC;EACtB,IAAI,CAAC2B,KAAK,CAAC,CAAC;EACZ,IAAI,CAACR,KAAK,CAACnB,IAAI,CAACmC,IAAI,CAAC;AACvB;AAEO,SAASC,cAAcA,CAAgBpC,IAAsB,EAAE;EACpE,IAAI,CAACgC,SAAS,CAAChC,IAAI,CAACiC,UAAU,CAAC;EAE/B,IAAIjC,IAAI,CAACqC,QAAQ,EAAE;IACjB,IAAI,CAACnC,SAAK,GAAI,CAAC;IACf,IAAI,CAACiB,KAAK,CAACnB,IAAI,CAACsC,GAAG,CAAC;IACpB,IAAI,CAACpC,SAAK,GAAI,CAAC;EACjB,CAAC,MAAM;IAEL,IACEP,mBAAmB,CAACK,IAAI,CAACM,KAAK,CAAC,IAC/BV,YAAY,CAACI,IAAI,CAACsC,GAAG,CAAC,IAEtBtC,IAAI,CAACsC,GAAG,CAACrC,IAAI,KAAKD,IAAI,CAACM,KAAK,CAACiC,IAAI,CAACtC,IAAI,EACtC;MACA,IAAI,CAACkB,KAAK,CAACnB,IAAI,CAACM,KAAK,CAAC;MACtB;IACF;IAEA,IAAI,CAACa,KAAK,CAACnB,IAAI,CAACsC,GAAG,CAAC;IAGpB,IACEtC,IAAI,CAACwC,SAAS,IACd5C,YAAY,CAACI,IAAI,CAACsC,GAAG,CAAC,IACtB1C,YAAY,CAACI,IAAI,CAACM,KAAK,CAAC,IACxBN,IAAI,CAACsC,GAAG,CAACrC,IAAI,KAAKD,IAAI,CAACM,KAAK,CAACL,IAAI,EACjC;MACA;IACF;EACF;EAEA,IAAI,CAACC,SAAK,GAAI,CAAC;EACf,IAAI,CAACyB,KAAK,CAAC,CAAC;EACZ,IAAI,CAACR,KAAK,CAACnB,IAAI,CAACM,KAAK,CAAC;AACxB;AAEO,SAASmC,eAAeA,CAAgBzC,IAAuB,EAAE;EACtE,MAAM0C,KAAK,GAAG1C,IAAI,CAAC2C,QAAQ;EAC3B,MAAMC,GAAG,GAAGF,KAAK,CAAClB,MAAM;EAExB,IAAI,CAACtB,SAAK,GAAI,CAAC;EAEf,MAAMuB,IAAI,GAAG,IAAI,CAACC,cAAc,CAAC,CAAC;EAElC,KAAK,IAAImB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAAClB,MAAM,EAAEqB,CAAC,EAAE,EAAE;IACrC,MAAMC,IAAI,GAAGJ,KAAK,CAACG,CAAC,CAAC;IACrB,IAAIC,IAAI,EAAE;MACR,IAAID,CAAC,GAAG,CAAC,EAAE,IAAI,CAAClB,KAAK,CAAC,CAAC;MACvB,IAAI,CAACR,KAAK,CAAC2B,IAAI,CAAC;MAChB,IAAID,CAAC,GAAGD,GAAG,GAAG,CAAC,IAAI,IAAI,CAACf,wBAAwB,CAAC,GAAG,CAAC,EAAE;QACrD,IAAI,CAAC3B,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE2C,CAAC,CAAC;MAC3B;IACF,CAAC,MAAM;MAML,IAAI,CAAC3C,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE2C,CAAC,CAAC;IAC3B;EACF;EAEApB,IAAI,CAAC,CAAC;EAEN,IAAI,CAACvB,SAAK,GAAI,CAAC;AACjB;AAIO,SAAS6C,gBAAgBA,CAAgB/C,IAAwB,EAAE;EACxE,MAAMsB,KAAK,GAAGtB,IAAI,CAACuB,UAAU;EAE7B,IAAIyB,UAAU;EACd,IAAIC,QAAQ;EAIL;IACL,IAAI,IAAI,CAACC,MAAM,CAACC,wBAAwB,KAAK,KAAK,EAAE;MAClDH,UAAU,GAAG,IAAI;MACjBC,QAAQ,GAAG,IAAI;IACjB,CAAC,MAAM,IACL,IAAI,CAACC,MAAM,CAACC,wBAAwB,KAAK,MAAM,IAC/C,IAAI,CAACD,MAAM,CAACC,wBAAwB,IAAI,IAAI,EAC5C;MACA,MAAM,IAAIC,KAAK,CACb,4EAA4EC,IAAI,CAACC,SAAS,CACxF,IAAI,CAACJ,MAAM,CAACC,wBACd,CAAC,aACH,CAAC;IACH,CAAC,MAAM;MACLH,UAAU,GAAG,IAAI;MACjBC,QAAQ,GAAG,GAAG;IAChB;EACF;EAEA,IAAI,CAAC/C,KAAK,CAAC8C,UAAU,CAAC;EAEtB,IAAI1B,KAAK,CAACE,MAAM,EAAE;IAChB,IAAI,CAACG,KAAK,CAAC,CAAC;IACZ,IAAI,CAACC,SAAS,CAACN,KAAK,EAAE,IAAI,CAACO,wBAAwB,CAACoB,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;IAC1E,IAAI,CAACtB,KAAK,CAAC,CAAC;EACd;EACA,IAAI,CAACzB,KAAK,CAAC+C,QAAQ,CAAC;AACtB;AAEO,SAASM,eAAeA,CAAgBvD,IAAuB,EAAE;EACtE,MAAM0C,KAAK,GAAG1C,IAAI,CAAC2C,QAAQ;EAC3B,MAAMC,GAAG,GAAGF,KAAK,CAAClB,MAAM;EAExB,IAAIwB,UAAU;EACd,IAAIC,QAAQ;EAIL;IACL,IAAI,IAAI,CAACC,MAAM,CAACC,wBAAwB,KAAK,KAAK,EAAE;MAClDH,UAAU,GAAG,IAAI;MACjBC,QAAQ,GAAG,IAAI;IACjB,CAAC,MAAM,IAAI,IAAI,CAACC,MAAM,CAACC,wBAAwB,KAAK,MAAM,EAAE;MAC1DH,UAAU,GAAG,IAAI;MACjBC,QAAQ,GAAG,GAAG;IAChB,CAAC,MAAM;MACL,MAAM,IAAIG,KAAK,CACb,GAAG,IAAI,CAACF,MAAM,CAACC,wBAAwB,4CACzC,CAAC;IACH;EACF;EAEA,IAAI,CAACjD,KAAK,CAAC8C,UAAU,CAAC;EAEtB,KAAK,IAAIH,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,KAAK,CAAClB,MAAM,EAAEqB,CAAC,EAAE,EAAE;IACrC,MAAMC,IAAI,GAAGJ,KAAK,CAACG,CAAC,CAAC;IACrB,IAAIC,IAAI,EAAE;MACR,IAAID,CAAC,GAAG,CAAC,EAAE,IAAI,CAAClB,KAAK,CAAC,CAAC;MACvB,IAAI,CAACR,KAAK,CAAC2B,IAAI,CAAC;MAChB,IAAID,CAAC,GAAGD,GAAG,GAAG,CAAC,IAAI,IAAI,CAACf,wBAAwB,CAACoB,QAAQ,CAAC,EAAE;QAC1D,IAAI,CAAC/C,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE2C,CAAC,CAAC;MAC3B;IACF;EACF;EAEA,IAAI,CAAC3C,KAAK,CAAC+C,QAAQ,CAAC;AACtB;AAEO,SAASO,aAAaA,CAAgBxD,IAAqB,EAAE;EAClE,IAAI,CAACgB,IAAI,CAAC,IAAIhB,IAAI,CAACyD,OAAO,IAAIzD,IAAI,CAAC0D,KAAK,EAAE,CAAC;AAC7C;AAEO,SAASC,cAAcA,CAAgB3D,IAAsB,EAAE;EACpE,IAAI,CAACgB,IAAI,CAAChB,IAAI,CAACM,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAC1C;AAEO,SAASsD,WAAWA,CAAA,EAAgB;EACzC,IAAI,CAAC5C,IAAI,CAAC,MAAM,CAAC;AACnB;AAEO,SAAS6C,cAAcA,CAAgB7D,IAAsB,EAAE;EACpE,MAAM8D,GAAG,GAAG,IAAI,CAACC,cAAc,CAAC/D,IAAI,CAAC;EACrC,MAAMgE,IAAI,GAAG,IAAI,CAACd,MAAM,CAACe,WAAW;EACpC,MAAM3D,KAAK,GAAGN,IAAI,CAACM,KAAK;EACxB,MAAM4D,GAAG,GAAG5D,KAAK,GAAG,EAAE;EACtB,IAAI0D,IAAI,CAACG,OAAO,EAAE;IAChB,IAAI,CAACC,MAAM,CAACC,MAAK,CAAC/D,KAAK,EAAE0D,IAAI,CAAC,EAAE1D,KAAK,CAAC;EACxC,CAAC,MAAM,IAAIwD,GAAG,IAAI,IAAI,EAAE;IACtB,IAAI,CAACM,MAAM,CAACF,GAAG,EAAE5D,KAAK,CAAC;EACzB,CAAC,MAAM,IAAI,IAAI,CAAC4C,MAAM,CAACoB,QAAQ,EAAE;IAC/B,IAAI,CAACF,MAAM,CAACN,GAAG,CAACtC,MAAM,GAAG0C,GAAG,CAAC1C,MAAM,GAAGsC,GAAG,GAAGI,GAAG,EAAE5D,KAAK,CAAC;EACzD,CAAC,MAAM;IACL,IAAI,CAAC8D,MAAM,CAACN,GAAG,EAAExD,KAAK,CAAC;EACzB;AACF;AAEO,SAASiE,aAAaA,CAAgBvE,IAAqB,EAAE;EAClE,MAAM8D,GAAG,GAAG,IAAI,CAACC,cAAc,CAAC/D,IAAI,CAAC;EACrC,IAAI,CAAC,IAAI,CAACkD,MAAM,CAACoB,QAAQ,IAAIR,GAAG,KAAKU,SAAS,EAAE;IAC9C,IAAI,CAACtE,KAAK,CAAC4D,GAAG,CAAC;IACf;EACF;EAEA,MAAMW,GAAG,GAAGJ,MAAK,CAACrE,IAAI,CAACM,KAAK,EAAE,IAAI,CAAC4C,MAAM,CAACe,WAAW,CAAC;EAEtD,IAAI,CAAC/D,KAAK,CAACuE,GAAG,CAAC;AACjB;AAEO,SAASC,aAAaA,CAAgB1E,IAAqB,EAAE;EAClE,MAAM8D,GAAG,GAAG,IAAI,CAACC,cAAc,CAAC/D,IAAI,CAAC;EACrC,IAAI,CAAC,IAAI,CAACkD,MAAM,CAACoB,QAAQ,IAAIR,GAAG,KAAKU,SAAS,EAAE;IAC9C,IAAI,CAACxD,IAAI,CAAC8C,GAAG,CAAC;IACd;EACF;EACA,IAAI,CAAC9C,IAAI,CAAChB,IAAI,CAACM,KAAK,GAAG,GAAG,CAAC;AAC7B;AAGO,SAASqE,cAAcA,CAAgB3E,IAAS,EAAE;EACvD,MAAM8D,GAAG,GAAG,IAAI,CAACC,cAAc,CAAC/D,IAAI,CAAC;EACrC,IAAI,CAAC,IAAI,CAACkD,MAAM,CAACoB,QAAQ,IAAIR,GAAG,KAAKU,SAAS,EAAE;IAC9C,IAAI,CAACxD,IAAI,CAAC8C,GAAG,CAAC;IACd;EACF;EACA,IAAI,CAAC9C,IAAI,CAAChB,IAAI,CAACM,KAAK,GAAG,GAAG,CAAC;AAC7B;AAGA,MAAMsE,kBAAkB,GAAG,IAAIC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACxD,SAASC,cAAcA,CAAA,EAAgB;EAC5C,MAAM;IAAEC;EAAW,CAAC,GAAG,IAAI,CAAC7B,MAAM;EAElC,IAAI0B,kBAAkB,CAACI,GAAG,CAACD,UAAU,CAAC,EAAE;IACtC,IAAI,CAAC7E,KAAK,CAAC6E,UAAU,CAAC;EACxB,CAAC,MAAM;IACL,MAAME,mBAAmB,GAAG5B,IAAI,CAACC,SAAS,CAACyB,UAAU,CAAC;IACtD,MAAMG,WAAW,GAAGC,KAAK,CAACC,IAAI,CAACR,kBAAkB,EAAES,CAAC,IAAIhC,IAAI,CAACC,SAAS,CAAC+B,CAAC,CAAC,CAAC;IAC1E,MAAM,IAAIjC,KAAK,CACb,mDAAmD,GACjD,GAAG8B,WAAW,CAACI,IAAI,CAAC,IAAI,CAAC,KAAKL,mBAAmB,qBACrD,CAAC;EACH;AACF;AAGO,SAASM,uBAAuBA,CAErCvF,IAA+B,EAC/B;EACA,IAAI,CAACmB,KAAK,CAACnB,IAAI,CAACwF,UAAU,CAAC;AAC7B;AAEO,SAASC,oBAAoBA,CAElCzF,IAA4B,EAC5B;EACA,IAAI,CAACmB,KAAK,CAACnB,IAAI,CAAC0F,MAAM,CAAC;AACzB;AAEO,SAASC,6BAA6BA,CAAA,EAAgB;EAC3D,IAAI,CAACzF,SAAK,GAAI,CAAC;AACjB","ignoreList":[]}
1
+ {"version":3,"names":["_t","require","_jsesc","isAssignmentPattern","isIdentifier","lastRawIdentNode","lastRawIdentResult","_getRawIdentifier","node","name","token","tokenMap","find","tok","value","_originalCode","slice","start","end","Identifier","_node$loc","sourceIdentifierName","loc","identifierName","word","ArgumentPlaceholder","RestElement","print","argument","ObjectExpression","props","properties","length","exit","enterDelimited","space","printList","shouldPrintTrailingComma","sourceWithOffset","ObjectMethod","printJoin","decorators","_methodHead","body","ObjectProperty","computed","key","left","shorthand","ArrayExpression","elems","elements","len","i","elem","RecordExpression","startToken","endToken","format","recordAndTupleSyntaxType","Error","JSON","stringify","TupleExpression","RegExpLiteral","pattern","flags","BooleanLiteral","NullLiteral","NumericLiteral","raw","getPossibleRaw","opts","jsescOption","str","numbers","number","jsesc","minified","StringLiteral","undefined","val","BigIntLiteral","validTopicTokenSet","Set","TopicReference","topicToken","has","givenTopicTokenJSON","validTopics","Array","from","v","join","PipelineTopicExpression","expression","PipelineBareFunction","callee","PipelinePrimaryTopicReference"],"sources":["../../src/generators/types.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport { isAssignmentPattern, isIdentifier } from \"@babel/types\";\nimport type * as t from \"@babel/types\";\nimport jsesc from \"jsesc\";\n\nlet lastRawIdentNode: t.Identifier | null = null;\nlet lastRawIdentResult: string = \"\";\nexport function _getRawIdentifier(this: Printer, node: t.Identifier) {\n if (node === lastRawIdentNode) return lastRawIdentResult;\n lastRawIdentNode = node;\n\n const { name } = node;\n const token = this.tokenMap.find(node, tok => tok.value === name);\n if (token) {\n lastRawIdentResult = this._originalCode.slice(token.start, token.end);\n return lastRawIdentResult;\n }\n return (lastRawIdentResult = node.name);\n}\n\nexport function Identifier(this: Printer, node: t.Identifier) {\n this.sourceIdentifierName(node.loc?.identifierName || node.name);\n\n this.word(this.tokenMap ? this._getRawIdentifier(node) : node.name);\n}\n\nexport function ArgumentPlaceholder(this: Printer) {\n this.token(\"?\");\n}\n\nexport function RestElement(this: Printer, node: t.RestElement) {\n this.token(\"...\");\n this.print(node.argument);\n}\n\nexport { RestElement as SpreadElement };\n\nexport function ObjectExpression(this: Printer, node: t.ObjectExpression) {\n const props = node.properties;\n\n this.token(\"{\");\n\n if (props.length) {\n const exit = this.enterDelimited();\n this.space();\n this.printList(props, this.shouldPrintTrailingComma(\"}\"), true, true);\n this.space();\n exit();\n }\n\n this.sourceWithOffset(\"end\", node.loc, -1);\n\n this.token(\"}\");\n}\n\nexport { ObjectExpression as ObjectPattern };\n\nexport function ObjectMethod(this: Printer, node: t.ObjectMethod) {\n this.printJoin(node.decorators);\n this._methodHead(node);\n this.space();\n this.print(node.body);\n}\n\nexport function ObjectProperty(this: Printer, node: t.ObjectProperty) {\n this.printJoin(node.decorators);\n\n if (node.computed) {\n this.token(\"[\");\n this.print(node.key);\n this.token(\"]\");\n } else {\n // print `({ foo: foo = 5 } = {})` as `({ foo = 5 } = {});`\n if (\n isAssignmentPattern(node.value) &&\n isIdentifier(node.key) &&\n // @ts-expect-error todo(flow->ts) `.name` does not exist on some types in union\n node.key.name === node.value.left.name\n ) {\n this.print(node.value);\n return;\n }\n\n this.print(node.key);\n\n // shorthand!\n if (\n node.shorthand &&\n isIdentifier(node.key) &&\n isIdentifier(node.value) &&\n node.key.name === node.value.name\n ) {\n return;\n }\n }\n\n this.token(\":\");\n this.space();\n this.print(node.value);\n}\n\nexport function ArrayExpression(this: Printer, node: t.ArrayExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n this.token(\"[\");\n\n const exit = this.enterDelimited();\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem);\n if (i < len - 1 || this.shouldPrintTrailingComma(\"]\")) {\n this.token(\",\", false, i);\n }\n } else {\n // If the array expression ends with a hole, that hole\n // will be ignored by the interpreter, but if it ends with\n // two (or more) holes, we need to write out two (or more)\n // commas so that the resulting code is interpreted with\n // both (all) of the holes.\n this.token(\",\", false, i);\n }\n }\n\n exit();\n\n this.token(\"]\");\n}\n\nexport { ArrayExpression as ArrayPattern };\n\nexport function RecordExpression(this: Printer, node: t.RecordExpression) {\n const props = node.properties;\n\n let startToken;\n let endToken;\n if (process.env.BABEL_8_BREAKING) {\n startToken = \"#{\";\n endToken = \"}\";\n } else {\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"{|\";\n endToken = \"|}\";\n } else if (\n this.format.recordAndTupleSyntaxType !== \"hash\" &&\n this.format.recordAndTupleSyntaxType != null\n ) {\n throw new Error(\n `The \"recordAndTupleSyntaxType\" generator option must be \"bar\" or \"hash\" (${JSON.stringify(\n this.format.recordAndTupleSyntaxType,\n )} received).`,\n );\n } else {\n startToken = \"#{\";\n endToken = \"}\";\n }\n }\n\n this.token(startToken);\n\n if (props.length) {\n this.space();\n this.printList(props, this.shouldPrintTrailingComma(endToken), true, true);\n this.space();\n }\n this.token(endToken);\n}\n\nexport function TupleExpression(this: Printer, node: t.TupleExpression) {\n const elems = node.elements;\n const len = elems.length;\n\n let startToken;\n let endToken;\n if (process.env.BABEL_8_BREAKING) {\n startToken = \"#[\";\n endToken = \"]\";\n } else {\n if (this.format.recordAndTupleSyntaxType === \"bar\") {\n startToken = \"[|\";\n endToken = \"|]\";\n } else if (this.format.recordAndTupleSyntaxType === \"hash\") {\n startToken = \"#[\";\n endToken = \"]\";\n } else {\n throw new Error(\n `${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`,\n );\n }\n }\n\n this.token(startToken);\n\n for (let i = 0; i < elems.length; i++) {\n const elem = elems[i];\n if (elem) {\n if (i > 0) this.space();\n this.print(elem);\n if (i < len - 1 || this.shouldPrintTrailingComma(endToken)) {\n this.token(\",\", false, i);\n }\n }\n }\n\n this.token(endToken);\n}\n\nexport function RegExpLiteral(this: Printer, node: t.RegExpLiteral) {\n this.word(`/${node.pattern}/${node.flags}`);\n}\n\nexport function BooleanLiteral(this: Printer, node: t.BooleanLiteral) {\n this.word(node.value ? \"true\" : \"false\");\n}\n\nexport function NullLiteral(this: Printer) {\n this.word(\"null\");\n}\n\nexport function NumericLiteral(this: Printer, node: t.NumericLiteral) {\n const raw = this.getPossibleRaw(node);\n const opts = this.format.jsescOption;\n const value = node.value;\n const str = value + \"\";\n if (opts.numbers) {\n this.number(jsesc(value, opts), value);\n } else if (raw == null) {\n this.number(str, value); // normalize\n } else if (this.format.minified) {\n this.number(raw.length < str.length ? raw : str, value);\n } else {\n this.number(raw, value);\n }\n}\n\nexport function StringLiteral(this: Printer, node: t.StringLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.token(raw);\n return;\n }\n\n const val = jsesc(node.value, this.format.jsescOption);\n\n this.token(val);\n}\n\nexport function BigIntLiteral(this: Printer, node: t.BigIntLiteral) {\n const raw = this.getPossibleRaw(node);\n if (!this.format.minified && raw !== undefined) {\n this.word(raw);\n return;\n }\n this.word(node.value + \"n\");\n}\n\n// Hack pipe operator\nconst validTopicTokenSet = new Set([\"^^\", \"@@\", \"^\", \"%\", \"#\"]);\nexport function TopicReference(this: Printer) {\n const { topicToken } = this.format;\n\n if (validTopicTokenSet.has(topicToken)) {\n this.token(topicToken);\n } else {\n const givenTopicTokenJSON = JSON.stringify(topicToken);\n const validTopics = Array.from(validTopicTokenSet, v => JSON.stringify(v));\n throw new Error(\n `The \"topicToken\" generator option must be one of ` +\n `${validTopics.join(\", \")} (${givenTopicTokenJSON} received instead).`,\n );\n }\n}\n\n// Smart-mix pipe operator\nexport function PipelineTopicExpression(\n this: Printer,\n node: t.PipelineTopicExpression,\n) {\n this.print(node.expression);\n}\n\nexport function PipelineBareFunction(\n this: Printer,\n node: t.PipelineBareFunction,\n) {\n this.print(node.callee);\n}\n\nexport function PipelinePrimaryTopicReference(this: Printer) {\n this.token(\"#\");\n}\n"],"mappings":"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","ignoreList":[]}
@@ -9,12 +9,13 @@ exports.TSSatisfiesExpression = exports.TSAsExpression = TSTypeExpression;
9
9
  exports.TSBigIntKeyword = TSBigIntKeyword;
10
10
  exports.TSBooleanKeyword = TSBooleanKeyword;
11
11
  exports.TSCallSignatureDeclaration = TSCallSignatureDeclaration;
12
- exports.TSInterfaceHeritage = exports.TSExpressionWithTypeArguments = exports.TSClassImplements = TSClassImplements;
12
+ exports.TSInterfaceHeritage = exports.TSClassImplements = TSClassImplements;
13
13
  exports.TSConditionalType = TSConditionalType;
14
14
  exports.TSConstructSignatureDeclaration = TSConstructSignatureDeclaration;
15
15
  exports.TSConstructorType = TSConstructorType;
16
16
  exports.TSDeclareFunction = TSDeclareFunction;
17
17
  exports.TSDeclareMethod = TSDeclareMethod;
18
+ exports.TSEnumBody = TSEnumBody;
18
19
  exports.TSEnumDeclaration = TSEnumDeclaration;
19
20
  exports.TSEnumMember = TSEnumMember;
20
21
  exports.TSExportAssignment = TSExportAssignment;
@@ -50,6 +51,7 @@ exports.TSQualifiedName = TSQualifiedName;
50
51
  exports.TSRestType = TSRestType;
51
52
  exports.TSStringKeyword = TSStringKeyword;
52
53
  exports.TSSymbolKeyword = TSSymbolKeyword;
54
+ exports.TSTemplateLiteralType = TSTemplateLiteralType;
53
55
  exports.TSThisType = TSThisType;
54
56
  exports.TSTupleType = TSTupleType;
55
57
  exports.TSTypeAliasDeclaration = TSTypeAliasDeclaration;
@@ -279,8 +281,9 @@ function tsPrintFunctionOrConstructorType(node) {
279
281
  this.print(returnType);
280
282
  }
281
283
  function TSTypeReference(node) {
282
- this.print(node.typeName, !!node.typeParameters);
283
- this.print(node.typeParameters);
284
+ const typeArguments = node.typeParameters;
285
+ this.print(node.typeName, !!typeArguments);
286
+ this.print(typeArguments);
284
287
  }
285
288
  function TSTypePredicate(node) {
286
289
  if (node.asserts) {
@@ -299,8 +302,9 @@ function TSTypeQuery(node) {
299
302
  this.word("typeof");
300
303
  this.space();
301
304
  this.print(node.exprName);
302
- if (node.typeParameters) {
303
- this.print(node.typeParameters);
305
+ const typeArguments = node.typeParameters;
306
+ if (typeArguments) {
307
+ this.print(typeArguments);
304
308
  }
305
309
  }
306
310
  function TSTypeLiteral(node) {
@@ -435,12 +439,15 @@ function tokenIfPlusMinus(self, tok) {
435
439
  self.token(tok);
436
440
  }
437
441
  }
442
+ function TSTemplateLiteralType(node) {
443
+ this._printTemplate(node, node.types);
444
+ }
438
445
  function TSLiteralType(node) {
439
446
  this.print(node.literal);
440
447
  }
441
448
  function TSClassImplements(node) {
442
449
  this.print(node.expression);
443
- this.print(node.typeParameters);
450
+ this.print(node.typeArguments);
444
451
  }
445
452
  function TSInterfaceDeclaration(node) {
446
453
  const {
@@ -516,14 +523,15 @@ function TSTypeAssertion(node) {
516
523
  }
517
524
  function TSInstantiationExpression(node) {
518
525
  this.print(node.expression);
519
- this.print(node.typeParameters);
526
+ {
527
+ this.print(node.typeParameters);
528
+ }
520
529
  }
521
530
  function TSEnumDeclaration(node) {
522
531
  const {
523
532
  declare,
524
533
  const: isConst,
525
- id,
526
- members
534
+ id
527
535
  } = node;
528
536
  if (declare) {
529
537
  this.word("declare");
@@ -537,9 +545,14 @@ function TSEnumDeclaration(node) {
537
545
  this.space();
538
546
  this.print(id);
539
547
  this.space();
548
+ {
549
+ TSEnumBody.call(this, node);
550
+ }
551
+ }
552
+ function TSEnumBody(node) {
540
553
  printBraced(this, node, () => {
541
554
  var _this$shouldPrintTrai;
542
- return this.printList(members, (_this$shouldPrintTrai = this.shouldPrintTrailingComma("}")) != null ? _this$shouldPrintTrai : true, true, true);
555
+ return this.printList(node.members, (_this$shouldPrintTrai = this.shouldPrintTrailingComma("}")) != null ? _this$shouldPrintTrai : true, true, true);
543
556
  });
544
557
  }
545
558
  function TSEnumMember(node) {
@@ -592,27 +605,31 @@ function TSImportType(node) {
592
605
  const {
593
606
  argument,
594
607
  qualifier,
595
- typeParameters
608
+ options
596
609
  } = node;
597
610
  this.word("import");
598
611
  this.tokenChar(40);
599
612
  this.print(argument);
613
+ if (options) {
614
+ this.tokenChar(44);
615
+ this.print(options);
616
+ }
600
617
  this.tokenChar(41);
601
618
  if (qualifier) {
602
619
  this.tokenChar(46);
603
620
  this.print(qualifier);
604
621
  }
605
- if (typeParameters) {
606
- this.print(typeParameters);
622
+ const typeArguments = node.typeParameters;
623
+ if (typeArguments) {
624
+ this.print(typeArguments);
607
625
  }
608
626
  }
609
627
  function TSImportEqualsDeclaration(node) {
610
628
  const {
611
- isExport,
612
629
  id,
613
630
  moduleReference
614
631
  } = node;
615
- if (isExport) {
632
+ if (node.isExport) {
616
633
  this.word("export");
617
634
  this.space();
618
635
  }
@@ -664,13 +681,14 @@ function tsPrintSignatureDeclarationBase(node) {
664
681
  this.print(returnType);
665
682
  }
666
683
  function tsPrintClassMemberModifiers(node) {
667
- const isField = node.type === "ClassAccessorProperty" || node.type === "ClassProperty";
668
- printModifiersList(this, node, [isField && node.declare && "declare", node.accessibility]);
684
+ const isPrivateField = node.type === "ClassPrivateProperty";
685
+ const isPublicField = node.type === "ClassAccessorProperty" || node.type === "ClassProperty";
686
+ printModifiersList(this, node, [isPublicField && node.declare && "declare", !isPrivateField && node.accessibility]);
669
687
  if (node.static) {
670
688
  this.word("static");
671
689
  this.space();
672
690
  }
673
- printModifiersList(this, node, [node.override && "override", node.abstract && "abstract", isField && node.readonly && "readonly"]);
691
+ printModifiersList(this, node, [!isPrivateField && node.abstract && "abstract", !isPrivateField && node.override && "override", (isPublicField || isPrivateField) && node.readonly && "readonly"]);
674
692
  }
675
693
  function printBraced(printer, node, cb) {
676
694
  printer.token("{");
@@ -1 +1 @@
1
- {"version":3,"names":["TSTypeAnnotation","node","parent","token","type","typeAnnotation","space","optional","print","TSTypeParameterInstantiation","printTrailingSeparator","params","length","tokenMap","start","end","find","t","matchesOriginal","shouldPrintTrailingComma","printList","TSTypeParameter","in","word","out","name","constraint","default","TSParameterProperty","accessibility","readonly","_param","parameter","TSDeclareFunction","declare","_functionHead","semicolon","TSDeclareMethod","_classMethodHead","TSQualifiedName","left","right","TSCallSignatureDeclaration","tsPrintSignatureDeclarationBase","maybePrintTrailingCommaOrSemicolon","printer","endMatches","TSConstructSignatureDeclaration","TSPropertySignature","tsPrintPropertyOrMethodName","computed","key","TSMethodSignature","kind","TSIndexSignature","static","isStatic","_parameters","parameters","TSAnyKeyword","TSBigIntKeyword","TSUnknownKeyword","TSNumberKeyword","TSObjectKeyword","TSBooleanKeyword","TSStringKeyword","TSSymbolKeyword","TSVoidKeyword","TSUndefinedKeyword","TSNullKeyword","TSNeverKeyword","TSIntrinsicKeyword","TSThisType","TSFunctionType","tsPrintFunctionOrConstructorType","TSConstructorType","abstract","typeParameters","returnType","TSTypeReference","typeName","TSTypePredicate","asserts","parameterName","TSTypeQuery","exprName","TSTypeLiteral","printBraced","printJoin","members","TSArrayType","elementType","TSTupleType","elementTypes","TSOptionalType","TSRestType","TSNamedTupleMember","label","TSUnionType","tsPrintUnionOrIntersectionType","TSIntersectionType","sep","_printer$tokenMap","hasLeadingToken","startMatches","types","undefined","i","TSConditionalType","checkType","extendsType","trueType","falseType","TSInferType","typeParameter","TSParenthesizedType","TSTypeOperator","operator","TSIndexedAccessType","objectType","indexType","TSMappedType","nameType","exit","enterDelimited","tokenIfPlusMinus","self","tok","TSLiteralType","literal","TSClassImplements","expression","TSInterfaceDeclaration","id","extends","extendz","body","TSInterfaceBody","TSTypeAliasDeclaration","TSTypeExpression","TSTypeAssertion","TSInstantiationExpression","TSEnumDeclaration","const","isConst","_this$shouldPrintTrai","TSEnumMember","initializer","TSModuleDeclaration","global","TSModuleBlock","printSequence","TSImportType","argument","qualifier","TSImportEqualsDeclaration","isExport","moduleReference","TSExternalModuleReference","TSNonNullExpression","TSExportAssignment","TSNamespaceExportDeclaration","tsPrintClassMemberModifiers","isField","printModifiersList","override","cb","rightBrace","modifiers","_printer$tokenMap2","modifiersSet","Set","modifier","add","has","value","delete","size"],"sources":["../../src/generators/typescript.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\n\nexport function TSTypeAnnotation(\n this: Printer,\n node: t.TSTypeAnnotation,\n parent: t.Node,\n) {\n // TODO(@nicolo-ribaudo): investigate not including => in the range\n // of the return type of an arrow function type\n this.token(\n (parent.type === \"TSFunctionType\" || parent.type === \"TSConstructorType\") &&\n (process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n parent.returnType\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n parent.typeAnnotation) === node\n ? \"=>\"\n : \":\",\n );\n this.space();\n // @ts-expect-error todo(flow->ts) can this be removed? `.optional` looks to be not existing property\n if (node.optional) this.token(\"?\");\n this.print(node.typeAnnotation);\n}\n\nexport function TSTypeParameterInstantiation(\n this: Printer,\n node: t.TSTypeParameterInstantiation,\n parent: t.Node,\n): void {\n this.token(\"<\");\n\n let printTrailingSeparator =\n parent.type === \"ArrowFunctionExpression\" && node.params.length === 1;\n if (this.tokenMap && node.start != null && node.end != null) {\n // Only force the trailing comma for pre-existing nodes if they\n // already had a comma (either because they were multi-param, or\n // because they had a trailing comma)\n printTrailingSeparator &&= !!this.tokenMap.find(node, t =>\n this.tokenMap.matchesOriginal(t, \",\"),\n );\n // Preseve the trailing comma if it was there before\n printTrailingSeparator ||= this.shouldPrintTrailingComma(\">\");\n }\n\n this.printList(node.params, printTrailingSeparator);\n this.token(\">\");\n}\n\nexport { TSTypeParameterInstantiation as TSTypeParameterDeclaration };\n\nexport function TSTypeParameter(this: Printer, node: t.TSTypeParameter) {\n if (node.in) {\n this.word(\"in\");\n this.space();\n }\n\n if (node.out) {\n this.word(\"out\");\n this.space();\n }\n\n this.word(\n !process.env.BABEL_8_BREAKING\n ? (node.name as unknown as string)\n : (node.name as unknown as t.Identifier).name,\n );\n\n if (node.constraint) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.constraint);\n }\n\n if (node.default) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.default);\n }\n}\n\nexport function TSParameterProperty(\n this: Printer,\n node: t.TSParameterProperty,\n) {\n if (node.accessibility) {\n this.word(node.accessibility);\n this.space();\n }\n\n if (node.readonly) {\n this.word(\"readonly\");\n this.space();\n }\n\n this._param(node.parameter);\n}\n\nexport function TSDeclareFunction(\n this: Printer,\n node: t.TSDeclareFunction,\n parent: t.ParentMaps[\"TSDeclareFunction\"],\n) {\n if (node.declare) {\n this.word(\"declare\");\n this.space();\n }\n this._functionHead(node, parent);\n this.semicolon();\n}\n\nexport function TSDeclareMethod(this: Printer, node: t.TSDeclareMethod) {\n this._classMethodHead(node);\n this.semicolon();\n}\n\nexport function TSQualifiedName(this: Printer, node: t.TSQualifiedName) {\n this.print(node.left);\n this.token(\".\");\n this.print(node.right);\n}\n\nexport function TSCallSignatureDeclaration(\n this: Printer,\n node: t.TSCallSignatureDeclaration,\n) {\n this.tsPrintSignatureDeclarationBase(node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nfunction maybePrintTrailingCommaOrSemicolon(printer: Printer, node: t.Node) {\n if (!printer.tokenMap || !node.start || !node.end) {\n printer.semicolon();\n return;\n }\n\n if (printer.tokenMap.endMatches(node, \",\")) {\n printer.token(\",\");\n } else if (printer.tokenMap.endMatches(node, \";\")) {\n printer.semicolon();\n }\n}\n\nexport function TSConstructSignatureDeclaration(\n this: Printer,\n node: t.TSConstructSignatureDeclaration,\n) {\n this.word(\"new\");\n this.space();\n this.tsPrintSignatureDeclarationBase(node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSPropertySignature(\n this: Printer,\n node: t.TSPropertySignature,\n) {\n const { readonly } = node;\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n this.tsPrintPropertyOrMethodName(node);\n this.print(node.typeAnnotation);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function tsPrintPropertyOrMethodName(\n this: Printer,\n node: t.TSPropertySignature | t.TSMethodSignature,\n) {\n if (node.computed) {\n this.token(\"[\");\n }\n this.print(node.key);\n if (node.computed) {\n this.token(\"]\");\n }\n if (node.optional) {\n this.token(\"?\");\n }\n}\n\nexport function TSMethodSignature(this: Printer, node: t.TSMethodSignature) {\n const { kind } = node;\n if (kind === \"set\" || kind === \"get\") {\n this.word(kind);\n this.space();\n }\n this.tsPrintPropertyOrMethodName(node);\n this.tsPrintSignatureDeclarationBase(node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSIndexSignature(this: Printer, node: t.TSIndexSignature) {\n const { readonly, static: isStatic } = node;\n if (isStatic) {\n this.word(\"static\");\n this.space();\n }\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n this.token(\"[\");\n this._parameters(node.parameters, \"]\");\n this.print(node.typeAnnotation);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSAnyKeyword(this: Printer) {\n this.word(\"any\");\n}\nexport function TSBigIntKeyword(this: Printer) {\n this.word(\"bigint\");\n}\nexport function TSUnknownKeyword(this: Printer) {\n this.word(\"unknown\");\n}\nexport function TSNumberKeyword(this: Printer) {\n this.word(\"number\");\n}\nexport function TSObjectKeyword(this: Printer) {\n this.word(\"object\");\n}\nexport function TSBooleanKeyword(this: Printer) {\n this.word(\"boolean\");\n}\nexport function TSStringKeyword(this: Printer) {\n this.word(\"string\");\n}\nexport function TSSymbolKeyword(this: Printer) {\n this.word(\"symbol\");\n}\nexport function TSVoidKeyword(this: Printer) {\n this.word(\"void\");\n}\nexport function TSUndefinedKeyword(this: Printer) {\n this.word(\"undefined\");\n}\nexport function TSNullKeyword(this: Printer) {\n this.word(\"null\");\n}\nexport function TSNeverKeyword(this: Printer) {\n this.word(\"never\");\n}\nexport function TSIntrinsicKeyword(this: Printer) {\n this.word(\"intrinsic\");\n}\n\nexport function TSThisType(this: Printer) {\n this.word(\"this\");\n}\n\nexport function TSFunctionType(this: Printer, node: t.TSFunctionType) {\n this.tsPrintFunctionOrConstructorType(node);\n}\n\nexport function TSConstructorType(this: Printer, node: t.TSConstructorType) {\n if (node.abstract) {\n this.word(\"abstract\");\n this.space();\n }\n this.word(\"new\");\n this.space();\n this.tsPrintFunctionOrConstructorType(node);\n}\n\nexport function tsPrintFunctionOrConstructorType(\n this: Printer,\n node: t.TSFunctionType | t.TSConstructorType,\n) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.params\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.parameters;\n this.print(typeParameters);\n this.token(\"(\");\n this._parameters(parameters, \")\");\n this.space();\n const returnType = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.returnType\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.typeAnnotation;\n this.print(returnType);\n}\n\nexport function TSTypeReference(this: Printer, node: t.TSTypeReference) {\n this.print(node.typeName, !!node.typeParameters);\n this.print(node.typeParameters);\n}\n\nexport function TSTypePredicate(this: Printer, node: t.TSTypePredicate) {\n if (node.asserts) {\n this.word(\"asserts\");\n this.space();\n }\n this.print(node.parameterName);\n if (node.typeAnnotation) {\n this.space();\n this.word(\"is\");\n this.space();\n this.print(node.typeAnnotation.typeAnnotation);\n }\n}\n\nexport function TSTypeQuery(this: Printer, node: t.TSTypeQuery) {\n this.word(\"typeof\");\n this.space();\n this.print(node.exprName);\n\n if (node.typeParameters) {\n this.print(node.typeParameters);\n }\n}\n\nexport function TSTypeLiteral(this: Printer, node: t.TSTypeLiteral) {\n printBraced(this, node, () => this.printJoin(node.members, true, true));\n}\n\nexport function TSArrayType(this: Printer, node: t.TSArrayType) {\n this.print(node.elementType, true);\n\n this.token(\"[\");\n this.token(\"]\");\n}\n\nexport function TSTupleType(this: Printer, node: t.TSTupleType) {\n this.token(\"[\");\n this.printList(node.elementTypes, this.shouldPrintTrailingComma(\"]\"));\n this.token(\"]\");\n}\n\nexport function TSOptionalType(this: Printer, node: t.TSOptionalType) {\n this.print(node.typeAnnotation);\n this.token(\"?\");\n}\n\nexport function TSRestType(this: Printer, node: t.TSRestType) {\n this.token(\"...\");\n this.print(node.typeAnnotation);\n}\n\nexport function TSNamedTupleMember(this: Printer, node: t.TSNamedTupleMember) {\n this.print(node.label);\n if (node.optional) this.token(\"?\");\n this.token(\":\");\n this.space();\n this.print(node.elementType);\n}\n\nexport function TSUnionType(this: Printer, node: t.TSUnionType) {\n tsPrintUnionOrIntersectionType(this, node, \"|\");\n}\n\nexport function TSIntersectionType(this: Printer, node: t.TSIntersectionType) {\n tsPrintUnionOrIntersectionType(this, node, \"&\");\n}\n\nfunction tsPrintUnionOrIntersectionType(\n printer: Printer,\n node: t.TSUnionType | t.TSIntersectionType,\n sep: \"|\" | \"&\",\n) {\n let hasLeadingToken = 0;\n if (printer.tokenMap?.startMatches(node, sep)) {\n hasLeadingToken = 1;\n printer.token(sep);\n }\n\n printer.printJoin(node.types, undefined, undefined, function (i) {\n this.space();\n this.token(sep, null, i + hasLeadingToken);\n this.space();\n });\n}\n\nexport function TSConditionalType(this: Printer, node: t.TSConditionalType) {\n this.print(node.checkType);\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.extendsType);\n this.space();\n this.token(\"?\");\n this.space();\n this.print(node.trueType);\n this.space();\n this.token(\":\");\n this.space();\n this.print(node.falseType);\n}\n\nexport function TSInferType(this: Printer, node: t.TSInferType) {\n this.word(\"infer\");\n this.print(node.typeParameter);\n}\n\nexport function TSParenthesizedType(\n this: Printer,\n node: t.TSParenthesizedType,\n) {\n this.token(\"(\");\n this.print(node.typeAnnotation);\n this.token(\")\");\n}\n\nexport function TSTypeOperator(this: Printer, node: t.TSTypeOperator) {\n this.word(node.operator);\n this.space();\n this.print(node.typeAnnotation);\n}\n\nexport function TSIndexedAccessType(\n this: Printer,\n node: t.TSIndexedAccessType,\n) {\n this.print(node.objectType, true);\n this.token(\"[\");\n this.print(node.indexType);\n this.token(\"]\");\n}\n\nexport function TSMappedType(this: Printer, node: t.TSMappedType) {\n const { nameType, optional, readonly, typeAnnotation } = node;\n this.token(\"{\");\n const exit = this.enterDelimited();\n this.space();\n if (readonly) {\n tokenIfPlusMinus(this, readonly);\n this.word(\"readonly\");\n this.space();\n }\n\n this.token(\"[\");\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n this.word(node.key.name);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.word(node.typeParameter.name);\n }\n\n this.space();\n this.word(\"in\");\n this.space();\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n this.print(node.constraint);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.print(node.typeParameter.constraint);\n }\n\n if (nameType) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(nameType);\n }\n\n this.token(\"]\");\n\n if (optional) {\n tokenIfPlusMinus(this, optional);\n this.token(\"?\");\n }\n\n if (typeAnnotation) {\n this.token(\":\");\n this.space();\n this.print(typeAnnotation);\n }\n this.space();\n exit();\n this.token(\"}\");\n}\n\nfunction tokenIfPlusMinus(self: Printer, tok: true | \"+\" | \"-\") {\n if (tok !== true) {\n self.token(tok);\n }\n}\n\nexport function TSLiteralType(this: Printer, node: t.TSLiteralType) {\n this.print(node.literal);\n}\n\nexport function TSClassImplements(\n this: Printer,\n // TODO(Babel 8): Just use t.TSClassImplements\n node: Extract<\n t.Node,\n { type: \"TSClassImplements\" | \"TSExpressionWithTypeArguments\" }\n >,\n) {\n this.print(node.expression);\n this.print(node.typeParameters);\n}\n\nexport {\n // TODO: Remove this in Babel 8\n TSClassImplements as TSExpressionWithTypeArguments,\n TSClassImplements as TSInterfaceHeritage,\n};\n\nexport function TSInterfaceDeclaration(\n this: Printer,\n node: t.TSInterfaceDeclaration,\n) {\n const { declare, id, typeParameters, extends: extendz, body } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"interface\");\n this.space();\n this.print(id);\n this.print(typeParameters);\n if (extendz?.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(extendz);\n }\n this.space();\n this.print(body);\n}\n\nexport function TSInterfaceBody(this: Printer, node: t.TSInterfaceBody) {\n printBraced(this, node, () => this.printJoin(node.body, true, true));\n}\n\nexport function TSTypeAliasDeclaration(\n this: Printer,\n node: t.TSTypeAliasDeclaration,\n) {\n const { declare, id, typeParameters, typeAnnotation } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"type\");\n this.space();\n this.print(id);\n this.print(typeParameters);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(typeAnnotation);\n this.semicolon();\n}\n\nfunction TSTypeExpression(\n this: Printer,\n node: t.TSAsExpression | t.TSSatisfiesExpression,\n) {\n const { type, expression, typeAnnotation } = node;\n this.print(expression, true);\n this.space();\n this.word(type === \"TSAsExpression\" ? \"as\" : \"satisfies\");\n this.space();\n this.print(typeAnnotation);\n}\n\nexport {\n TSTypeExpression as TSAsExpression,\n TSTypeExpression as TSSatisfiesExpression,\n};\n\nexport function TSTypeAssertion(this: Printer, node: t.TSTypeAssertion) {\n const { typeAnnotation, expression } = node;\n this.token(\"<\");\n this.print(typeAnnotation);\n this.token(\">\");\n this.space();\n this.print(expression);\n}\n\nexport function TSInstantiationExpression(\n this: Printer,\n node: t.TSInstantiationExpression,\n) {\n this.print(node.expression);\n this.print(node.typeParameters);\n}\n\nexport function TSEnumDeclaration(this: Printer, node: t.TSEnumDeclaration) {\n const { declare, const: isConst, id, members } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n if (isConst) {\n this.word(\"const\");\n this.space();\n }\n this.word(\"enum\");\n this.space();\n this.print(id);\n this.space();\n\n printBraced(this, node, () =>\n this.printList(\n members,\n // TODO: Default to false for consistency with everything else\n this.shouldPrintTrailingComma(\"}\") ?? true,\n true,\n true,\n ),\n );\n}\n\nexport function TSEnumMember(this: Printer, node: t.TSEnumMember) {\n const { id, initializer } = node;\n this.print(id);\n if (initializer) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(initializer);\n }\n}\n\nexport function TSModuleDeclaration(\n this: Printer,\n node: t.TSModuleDeclaration,\n) {\n const { declare, id, kind } = node;\n\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n\n if (process.env.BABEL_8_BREAKING) {\n if (kind !== \"global\") {\n this.word(kind);\n this.space();\n }\n\n this.print(node.id);\n if (!node.body) {\n this.semicolon();\n return;\n }\n this.space();\n this.print(node.body);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n if (!node.global) {\n this.word(kind ?? (id.type === \"Identifier\" ? \"namespace\" : \"module\"));\n this.space();\n }\n\n this.print(id);\n\n if (!node.body) {\n this.semicolon();\n return;\n }\n\n let body = node.body;\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n while (body.type === \"TSModuleDeclaration\") {\n this.token(\".\");\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.print(body.id);\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n body = body.body;\n }\n\n this.space();\n this.print(body);\n }\n}\n\nexport function TSModuleBlock(this: Printer, node: t.TSModuleBlock) {\n printBraced(this, node, () => this.printSequence(node.body, true));\n}\n\nexport function TSImportType(this: Printer, node: t.TSImportType) {\n const { argument, qualifier, typeParameters } = node;\n this.word(\"import\");\n this.token(\"(\");\n this.print(argument);\n this.token(\")\");\n if (qualifier) {\n this.token(\".\");\n this.print(qualifier);\n }\n if (typeParameters) {\n this.print(typeParameters);\n }\n}\n\nexport function TSImportEqualsDeclaration(\n this: Printer,\n node: t.TSImportEqualsDeclaration,\n) {\n const { isExport, id, moduleReference } = node;\n if (isExport) {\n this.word(\"export\");\n this.space();\n }\n this.word(\"import\");\n this.space();\n this.print(id);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(moduleReference);\n this.semicolon();\n}\n\nexport function TSExternalModuleReference(\n this: Printer,\n node: t.TSExternalModuleReference,\n) {\n this.token(\"require(\");\n this.print(node.expression);\n this.token(\")\");\n}\n\nexport function TSNonNullExpression(\n this: Printer,\n node: t.TSNonNullExpression,\n) {\n this.print(node.expression);\n this.token(\"!\");\n}\n\nexport function TSExportAssignment(this: Printer, node: t.TSExportAssignment) {\n this.word(\"export\");\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.expression);\n this.semicolon();\n}\n\nexport function TSNamespaceExportDeclaration(\n this: Printer,\n node: t.TSNamespaceExportDeclaration,\n) {\n this.word(\"export\");\n this.space();\n this.word(\"as\");\n this.space();\n this.word(\"namespace\");\n this.space();\n this.print(node.id);\n this.semicolon();\n}\n\nexport function tsPrintSignatureDeclarationBase(this: Printer, node: any) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? node.params\n : node.parameters;\n this.print(typeParameters);\n this.token(\"(\");\n this._parameters(parameters, \")\");\n const returnType = process.env.BABEL_8_BREAKING\n ? node.returnType\n : node.typeAnnotation;\n this.print(returnType);\n}\n\nexport function tsPrintClassMemberModifiers(\n this: Printer,\n node:\n | t.ClassProperty\n | t.ClassAccessorProperty\n | t.ClassMethod\n | t.ClassPrivateMethod\n | t.TSDeclareMethod,\n) {\n const isField =\n node.type === \"ClassAccessorProperty\" || node.type === \"ClassProperty\";\n printModifiersList(this, node, [\n isField && node.declare && \"declare\",\n node.accessibility,\n ]);\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n printModifiersList(this, node, [\n node.override && \"override\",\n node.abstract && \"abstract\",\n isField && node.readonly && \"readonly\",\n ]);\n}\n\nfunction printBraced(printer: Printer, node: t.Node, cb: () => void) {\n printer.token(\"{\");\n const exit = printer.enterDelimited();\n cb();\n exit();\n printer.rightBrace(node);\n}\n\nfunction printModifiersList(\n printer: Printer,\n node: t.Node,\n modifiers: (string | false | null)[],\n) {\n const modifiersSet = new Set<string>();\n for (const modifier of modifiers) {\n if (modifier) modifiersSet.add(modifier);\n }\n\n printer.tokenMap?.find(node, tok => {\n if (modifiersSet.has(tok.value)) {\n printer.token(tok.value);\n printer.space();\n modifiersSet.delete(tok.value);\n return modifiersSet.size === 0;\n }\n });\n\n for (const modifier of modifiersSet) {\n printer.word(modifier);\n printer.space();\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["TSTypeAnnotation","node","parent","token","type","typeAnnotation","space","optional","print","TSTypeParameterInstantiation","printTrailingSeparator","params","length","tokenMap","start","end","find","t","matchesOriginal","shouldPrintTrailingComma","printList","TSTypeParameter","in","word","out","name","constraint","default","TSParameterProperty","accessibility","readonly","_param","parameter","TSDeclareFunction","declare","_functionHead","semicolon","TSDeclareMethod","_classMethodHead","TSQualifiedName","left","right","TSCallSignatureDeclaration","tsPrintSignatureDeclarationBase","maybePrintTrailingCommaOrSemicolon","printer","endMatches","TSConstructSignatureDeclaration","TSPropertySignature","tsPrintPropertyOrMethodName","computed","key","TSMethodSignature","kind","TSIndexSignature","static","isStatic","_parameters","parameters","TSAnyKeyword","TSBigIntKeyword","TSUnknownKeyword","TSNumberKeyword","TSObjectKeyword","TSBooleanKeyword","TSStringKeyword","TSSymbolKeyword","TSVoidKeyword","TSUndefinedKeyword","TSNullKeyword","TSNeverKeyword","TSIntrinsicKeyword","TSThisType","TSFunctionType","tsPrintFunctionOrConstructorType","TSConstructorType","abstract","typeParameters","returnType","TSTypeReference","typeArguments","typeName","TSTypePredicate","asserts","parameterName","TSTypeQuery","exprName","TSTypeLiteral","printBraced","printJoin","members","TSArrayType","elementType","TSTupleType","elementTypes","TSOptionalType","TSRestType","TSNamedTupleMember","label","TSUnionType","tsPrintUnionOrIntersectionType","TSIntersectionType","sep","_printer$tokenMap","hasLeadingToken","startMatches","types","undefined","i","TSConditionalType","checkType","extendsType","trueType","falseType","TSInferType","typeParameter","TSParenthesizedType","TSTypeOperator","operator","TSIndexedAccessType","objectType","indexType","TSMappedType","nameType","exit","enterDelimited","tokenIfPlusMinus","self","tok","TSTemplateLiteralType","_printTemplate","TSLiteralType","literal","TSClassImplements","expression","TSInterfaceDeclaration","id","extends","extendz","body","TSInterfaceBody","TSTypeAliasDeclaration","TSTypeExpression","TSTypeAssertion","TSInstantiationExpression","TSEnumDeclaration","const","isConst","TSEnumBody","call","_this$shouldPrintTrai","TSEnumMember","initializer","TSModuleDeclaration","global","TSModuleBlock","printSequence","TSImportType","argument","qualifier","options","TSImportEqualsDeclaration","moduleReference","isExport","TSExternalModuleReference","TSNonNullExpression","TSExportAssignment","TSNamespaceExportDeclaration","tsPrintClassMemberModifiers","isPrivateField","isPublicField","printModifiersList","override","cb","rightBrace","modifiers","_printer$tokenMap2","modifiersSet","Set","modifier","add","has","value","delete","size"],"sources":["../../src/generators/typescript.ts"],"sourcesContent":["import type Printer from \"../printer.ts\";\nimport type * as t from \"@babel/types\";\n\nexport function TSTypeAnnotation(\n this: Printer,\n node: t.TSTypeAnnotation,\n parent: t.Node,\n) {\n // TODO(@nicolo-ribaudo): investigate not including => in the range\n // of the return type of an arrow function type\n this.token(\n (parent.type === \"TSFunctionType\" || parent.type === \"TSConstructorType\") &&\n (process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n parent.returnType\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n parent.typeAnnotation) === node\n ? \"=>\"\n : \":\",\n );\n this.space();\n // @ts-expect-error todo(flow->ts) can this be removed? `.optional` looks to be not existing property\n if (node.optional) this.token(\"?\");\n this.print(node.typeAnnotation);\n}\n\nexport function TSTypeParameterInstantiation(\n this: Printer,\n node: t.TSTypeParameterInstantiation,\n parent: t.Node,\n): void {\n this.token(\"<\");\n\n let printTrailingSeparator =\n parent.type === \"ArrowFunctionExpression\" && node.params.length === 1;\n if (this.tokenMap && node.start != null && node.end != null) {\n // Only force the trailing comma for pre-existing nodes if they\n // already had a comma (either because they were multi-param, or\n // because they had a trailing comma)\n printTrailingSeparator &&= !!this.tokenMap.find(node, t =>\n this.tokenMap.matchesOriginal(t, \",\"),\n );\n // Preseve the trailing comma if it was there before\n printTrailingSeparator ||= this.shouldPrintTrailingComma(\">\");\n }\n\n this.printList(node.params, printTrailingSeparator);\n this.token(\">\");\n}\n\nexport { TSTypeParameterInstantiation as TSTypeParameterDeclaration };\n\nexport function TSTypeParameter(this: Printer, node: t.TSTypeParameter) {\n if (node.in) {\n this.word(\"in\");\n this.space();\n }\n\n if (node.out) {\n this.word(\"out\");\n this.space();\n }\n\n this.word(\n !process.env.BABEL_8_BREAKING\n ? (node.name as unknown as string)\n : (node.name as unknown as t.Identifier).name,\n );\n\n if (node.constraint) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.constraint);\n }\n\n if (node.default) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.default);\n }\n}\n\nexport function TSParameterProperty(\n this: Printer,\n node: t.TSParameterProperty,\n) {\n if (node.accessibility) {\n this.word(node.accessibility);\n this.space();\n }\n\n if (node.readonly) {\n this.word(\"readonly\");\n this.space();\n }\n\n this._param(node.parameter);\n}\n\nexport function TSDeclareFunction(\n this: Printer,\n node: t.TSDeclareFunction,\n parent: t.ParentMaps[\"TSDeclareFunction\"],\n) {\n if (node.declare) {\n this.word(\"declare\");\n this.space();\n }\n this._functionHead(node, parent);\n this.semicolon();\n}\n\nexport function TSDeclareMethod(this: Printer, node: t.TSDeclareMethod) {\n this._classMethodHead(node);\n this.semicolon();\n}\n\nexport function TSQualifiedName(this: Printer, node: t.TSQualifiedName) {\n this.print(node.left);\n this.token(\".\");\n this.print(node.right);\n}\n\nexport function TSCallSignatureDeclaration(\n this: Printer,\n node: t.TSCallSignatureDeclaration,\n) {\n this.tsPrintSignatureDeclarationBase(node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nfunction maybePrintTrailingCommaOrSemicolon(printer: Printer, node: t.Node) {\n if (!printer.tokenMap || !node.start || !node.end) {\n printer.semicolon();\n return;\n }\n\n if (printer.tokenMap.endMatches(node, \",\")) {\n printer.token(\",\");\n } else if (printer.tokenMap.endMatches(node, \";\")) {\n printer.semicolon();\n }\n}\n\nexport function TSConstructSignatureDeclaration(\n this: Printer,\n node: t.TSConstructSignatureDeclaration,\n) {\n this.word(\"new\");\n this.space();\n this.tsPrintSignatureDeclarationBase(node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSPropertySignature(\n this: Printer,\n node: t.TSPropertySignature,\n) {\n const { readonly } = node;\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n this.tsPrintPropertyOrMethodName(node);\n this.print(node.typeAnnotation);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function tsPrintPropertyOrMethodName(\n this: Printer,\n node: t.TSPropertySignature | t.TSMethodSignature,\n) {\n if (node.computed) {\n this.token(\"[\");\n }\n this.print(node.key);\n if (node.computed) {\n this.token(\"]\");\n }\n if (node.optional) {\n this.token(\"?\");\n }\n}\n\nexport function TSMethodSignature(this: Printer, node: t.TSMethodSignature) {\n const { kind } = node;\n if (kind === \"set\" || kind === \"get\") {\n this.word(kind);\n this.space();\n }\n this.tsPrintPropertyOrMethodName(node);\n this.tsPrintSignatureDeclarationBase(node);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSIndexSignature(this: Printer, node: t.TSIndexSignature) {\n const { readonly, static: isStatic } = node;\n if (isStatic) {\n this.word(\"static\");\n this.space();\n }\n if (readonly) {\n this.word(\"readonly\");\n this.space();\n }\n this.token(\"[\");\n this._parameters(node.parameters, \"]\");\n this.print(node.typeAnnotation);\n maybePrintTrailingCommaOrSemicolon(this, node);\n}\n\nexport function TSAnyKeyword(this: Printer) {\n this.word(\"any\");\n}\nexport function TSBigIntKeyword(this: Printer) {\n this.word(\"bigint\");\n}\nexport function TSUnknownKeyword(this: Printer) {\n this.word(\"unknown\");\n}\nexport function TSNumberKeyword(this: Printer) {\n this.word(\"number\");\n}\nexport function TSObjectKeyword(this: Printer) {\n this.word(\"object\");\n}\nexport function TSBooleanKeyword(this: Printer) {\n this.word(\"boolean\");\n}\nexport function TSStringKeyword(this: Printer) {\n this.word(\"string\");\n}\nexport function TSSymbolKeyword(this: Printer) {\n this.word(\"symbol\");\n}\nexport function TSVoidKeyword(this: Printer) {\n this.word(\"void\");\n}\nexport function TSUndefinedKeyword(this: Printer) {\n this.word(\"undefined\");\n}\nexport function TSNullKeyword(this: Printer) {\n this.word(\"null\");\n}\nexport function TSNeverKeyword(this: Printer) {\n this.word(\"never\");\n}\nexport function TSIntrinsicKeyword(this: Printer) {\n this.word(\"intrinsic\");\n}\n\nexport function TSThisType(this: Printer) {\n this.word(\"this\");\n}\n\nexport function TSFunctionType(this: Printer, node: t.TSFunctionType) {\n this.tsPrintFunctionOrConstructorType(node);\n}\n\nexport function TSConstructorType(this: Printer, node: t.TSConstructorType) {\n if (node.abstract) {\n this.word(\"abstract\");\n this.space();\n }\n this.word(\"new\");\n this.space();\n this.tsPrintFunctionOrConstructorType(node);\n}\n\nexport function tsPrintFunctionOrConstructorType(\n this: Printer,\n node: t.TSFunctionType | t.TSConstructorType,\n) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.params\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.parameters;\n this.print(typeParameters);\n this.token(\"(\");\n this._parameters(parameters, \")\");\n this.space();\n const returnType = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.returnType\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.typeAnnotation;\n this.print(returnType);\n}\n\nexport function TSTypeReference(this: Printer, node: t.TSTypeReference) {\n const typeArguments = process.env.BABEL_8_BREAKING\n ? // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n node.typeArguments\n : // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n node.typeParameters;\n this.print(node.typeName, !!typeArguments);\n this.print(typeArguments);\n}\n\nexport function TSTypePredicate(this: Printer, node: t.TSTypePredicate) {\n if (node.asserts) {\n this.word(\"asserts\");\n this.space();\n }\n this.print(node.parameterName);\n if (node.typeAnnotation) {\n this.space();\n this.word(\"is\");\n this.space();\n this.print(node.typeAnnotation.typeAnnotation);\n }\n}\n\nexport function TSTypeQuery(this: Printer, node: t.TSTypeQuery) {\n this.word(\"typeof\");\n this.space();\n this.print(node.exprName);\n\n const typeArguments = process.env.BABEL_8_BREAKING\n ? //@ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n node.typeArguments\n : //@ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n node.typeParameters;\n if (typeArguments) {\n this.print(typeArguments);\n }\n}\n\nexport function TSTypeLiteral(this: Printer, node: t.TSTypeLiteral) {\n printBraced(this, node, () => this.printJoin(node.members, true, true));\n}\n\nexport function TSArrayType(this: Printer, node: t.TSArrayType) {\n this.print(node.elementType, true);\n\n this.token(\"[\");\n this.token(\"]\");\n}\n\nexport function TSTupleType(this: Printer, node: t.TSTupleType) {\n this.token(\"[\");\n this.printList(node.elementTypes, this.shouldPrintTrailingComma(\"]\"));\n this.token(\"]\");\n}\n\nexport function TSOptionalType(this: Printer, node: t.TSOptionalType) {\n this.print(node.typeAnnotation);\n this.token(\"?\");\n}\n\nexport function TSRestType(this: Printer, node: t.TSRestType) {\n this.token(\"...\");\n this.print(node.typeAnnotation);\n}\n\nexport function TSNamedTupleMember(this: Printer, node: t.TSNamedTupleMember) {\n this.print(node.label);\n if (node.optional) this.token(\"?\");\n this.token(\":\");\n this.space();\n this.print(node.elementType);\n}\n\nexport function TSUnionType(this: Printer, node: t.TSUnionType) {\n tsPrintUnionOrIntersectionType(this, node, \"|\");\n}\n\nexport function TSIntersectionType(this: Printer, node: t.TSIntersectionType) {\n tsPrintUnionOrIntersectionType(this, node, \"&\");\n}\n\nfunction tsPrintUnionOrIntersectionType(\n printer: Printer,\n node: t.TSUnionType | t.TSIntersectionType,\n sep: \"|\" | \"&\",\n) {\n let hasLeadingToken = 0;\n if (printer.tokenMap?.startMatches(node, sep)) {\n hasLeadingToken = 1;\n printer.token(sep);\n }\n\n printer.printJoin(node.types, undefined, undefined, function (i) {\n this.space();\n this.token(sep, null, i + hasLeadingToken);\n this.space();\n });\n}\n\nexport function TSConditionalType(this: Printer, node: t.TSConditionalType) {\n this.print(node.checkType);\n this.space();\n this.word(\"extends\");\n this.space();\n this.print(node.extendsType);\n this.space();\n this.token(\"?\");\n this.space();\n this.print(node.trueType);\n this.space();\n this.token(\":\");\n this.space();\n this.print(node.falseType);\n}\n\nexport function TSInferType(this: Printer, node: t.TSInferType) {\n this.word(\"infer\");\n this.print(node.typeParameter);\n}\n\nexport function TSParenthesizedType(\n this: Printer,\n node: t.TSParenthesizedType,\n) {\n this.token(\"(\");\n this.print(node.typeAnnotation);\n this.token(\")\");\n}\n\nexport function TSTypeOperator(this: Printer, node: t.TSTypeOperator) {\n this.word(node.operator);\n this.space();\n this.print(node.typeAnnotation);\n}\n\nexport function TSIndexedAccessType(\n this: Printer,\n node: t.TSIndexedAccessType,\n) {\n this.print(node.objectType, true);\n this.token(\"[\");\n this.print(node.indexType);\n this.token(\"]\");\n}\n\nexport function TSMappedType(this: Printer, node: t.TSMappedType) {\n const { nameType, optional, readonly, typeAnnotation } = node;\n this.token(\"{\");\n const exit = this.enterDelimited();\n this.space();\n if (readonly) {\n tokenIfPlusMinus(this, readonly);\n this.word(\"readonly\");\n this.space();\n }\n\n this.token(\"[\");\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n this.word(node.key.name);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.word(node.typeParameter.name);\n }\n\n this.space();\n this.word(\"in\");\n this.space();\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST shape\n this.print(node.constraint);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.print(node.typeParameter.constraint);\n }\n\n if (nameType) {\n this.space();\n this.word(\"as\");\n this.space();\n this.print(nameType);\n }\n\n this.token(\"]\");\n\n if (optional) {\n tokenIfPlusMinus(this, optional);\n this.token(\"?\");\n }\n\n if (typeAnnotation) {\n this.token(\":\");\n this.space();\n this.print(typeAnnotation);\n }\n this.space();\n exit();\n this.token(\"}\");\n}\n\nfunction tokenIfPlusMinus(self: Printer, tok: true | \"+\" | \"-\") {\n if (tok !== true) {\n self.token(tok);\n }\n}\n\nexport function TSTemplateLiteralType(\n this: Printer,\n node: t.TSTemplateLiteralType,\n) {\n this._printTemplate(node, node.types);\n}\n\nexport function TSLiteralType(this: Printer, node: t.TSLiteralType) {\n this.print(node.literal);\n}\n\nexport function TSClassImplements(\n this: Printer,\n // TODO(Babel 8): Just use t.TSClassImplements\n node: t.Node & {\n expression: t.TSEntityName;\n typeArguments?: t.TSTypeParameterInstantiation;\n },\n) {\n this.print(node.expression);\n this.print(node.typeArguments);\n}\n\nexport { TSClassImplements as TSInterfaceHeritage };\n\nexport function TSInterfaceDeclaration(\n this: Printer,\n node: t.TSInterfaceDeclaration,\n) {\n const { declare, id, typeParameters, extends: extendz, body } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"interface\");\n this.space();\n this.print(id);\n this.print(typeParameters);\n if (extendz?.length) {\n this.space();\n this.word(\"extends\");\n this.space();\n this.printList(extendz);\n }\n this.space();\n this.print(body);\n}\n\nexport function TSInterfaceBody(this: Printer, node: t.TSInterfaceBody) {\n printBraced(this, node, () => this.printJoin(node.body, true, true));\n}\n\nexport function TSTypeAliasDeclaration(\n this: Printer,\n node: t.TSTypeAliasDeclaration,\n) {\n const { declare, id, typeParameters, typeAnnotation } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n this.word(\"type\");\n this.space();\n this.print(id);\n this.print(typeParameters);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(typeAnnotation);\n this.semicolon();\n}\n\nfunction TSTypeExpression(\n this: Printer,\n node: t.TSAsExpression | t.TSSatisfiesExpression,\n) {\n const { type, expression, typeAnnotation } = node;\n this.print(expression, true);\n this.space();\n this.word(type === \"TSAsExpression\" ? \"as\" : \"satisfies\");\n this.space();\n this.print(typeAnnotation);\n}\n\nexport {\n TSTypeExpression as TSAsExpression,\n TSTypeExpression as TSSatisfiesExpression,\n};\n\nexport function TSTypeAssertion(this: Printer, node: t.TSTypeAssertion) {\n const { typeAnnotation, expression } = node;\n this.token(\"<\");\n this.print(typeAnnotation);\n this.token(\">\");\n this.space();\n this.print(expression);\n}\n\nexport function TSInstantiationExpression(\n this: Printer,\n node: t.TSInstantiationExpression,\n) {\n this.print(node.expression);\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n this.print(node.typeArguments);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Removed in Babel 8\n this.print(node.typeParameters);\n }\n}\n\nexport function TSEnumDeclaration(this: Printer, node: t.TSEnumDeclaration) {\n const { declare, const: isConst, id } = node;\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n if (isConst) {\n this.word(\"const\");\n this.space();\n }\n this.word(\"enum\");\n this.space();\n this.print(id);\n this.space();\n\n if (process.env.BABEL_8_BREAKING) {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n this.print(node.body);\n } else {\n // cast to TSEnumBody for Babel 7 AST\n TSEnumBody.call(this, node as unknown as t.TSEnumBody);\n }\n}\n\nexport function TSEnumBody(this: Printer, node: t.TSEnumBody) {\n printBraced(this, node, () =>\n this.printList(\n node.members,\n this.shouldPrintTrailingComma(\"}\") ??\n (process.env.BABEL_8_BREAKING ? false : true),\n true,\n true,\n ),\n );\n}\n\nexport function TSEnumMember(this: Printer, node: t.TSEnumMember) {\n const { id, initializer } = node;\n this.print(id);\n if (initializer) {\n this.space();\n this.token(\"=\");\n this.space();\n this.print(initializer);\n }\n}\n\nexport function TSModuleDeclaration(\n this: Printer,\n node: t.TSModuleDeclaration,\n) {\n const { declare, id, kind } = node;\n\n if (declare) {\n this.word(\"declare\");\n this.space();\n }\n\n if (process.env.BABEL_8_BREAKING) {\n if (kind !== \"global\") {\n this.word(kind);\n this.space();\n }\n\n this.print(node.id);\n if (!node.body) {\n this.semicolon();\n return;\n }\n this.space();\n this.print(node.body);\n } else {\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n if (!node.global) {\n this.word(kind ?? (id.type === \"Identifier\" ? \"namespace\" : \"module\"));\n this.space();\n }\n\n this.print(id);\n\n if (!node.body) {\n this.semicolon();\n return;\n }\n\n let body = node.body;\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n while (body.type === \"TSModuleDeclaration\") {\n this.token(\".\");\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n this.print(body.id);\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST shape\n body = body.body;\n }\n\n this.space();\n this.print(body);\n }\n}\n\nexport function TSModuleBlock(this: Printer, node: t.TSModuleBlock) {\n printBraced(this, node, () => this.printSequence(node.body, true));\n}\n\nexport function TSImportType(this: Printer, node: t.TSImportType) {\n const { argument, qualifier, options } = node;\n this.word(\"import\");\n this.token(\"(\");\n this.print(argument);\n if (options) {\n this.token(\",\");\n this.print(options);\n }\n this.token(\")\");\n if (qualifier) {\n this.token(\".\");\n this.print(qualifier);\n }\n const typeArguments = process.env.BABEL_8_BREAKING\n ? //@ts-ignore(Babel 7 vs Babel 8) Babel 8 AST\n node.typeArguments\n : //@ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n node.typeParameters;\n if (typeArguments) {\n this.print(typeArguments);\n }\n}\n\nexport function TSImportEqualsDeclaration(\n this: Printer,\n node: t.TSImportEqualsDeclaration,\n) {\n const { id, moduleReference } = node;\n if (\n !process.env.BABEL_8_BREAKING &&\n // @ts-ignore(Babel 7 vs Babel 8) Babel 7 AST\n node.isExport\n ) {\n this.word(\"export\");\n this.space();\n }\n this.word(\"import\");\n this.space();\n this.print(id);\n this.space();\n this.token(\"=\");\n this.space();\n this.print(moduleReference);\n this.semicolon();\n}\n\nexport function TSExternalModuleReference(\n this: Printer,\n node: t.TSExternalModuleReference,\n) {\n this.token(\"require(\");\n this.print(node.expression);\n this.token(\")\");\n}\n\nexport function TSNonNullExpression(\n this: Printer,\n node: t.TSNonNullExpression,\n) {\n this.print(node.expression);\n this.token(\"!\");\n}\n\nexport function TSExportAssignment(this: Printer, node: t.TSExportAssignment) {\n this.word(\"export\");\n this.space();\n this.token(\"=\");\n this.space();\n this.print(node.expression);\n this.semicolon();\n}\n\nexport function TSNamespaceExportDeclaration(\n this: Printer,\n node: t.TSNamespaceExportDeclaration,\n) {\n this.word(\"export\");\n this.space();\n this.word(\"as\");\n this.space();\n this.word(\"namespace\");\n this.space();\n this.print(node.id);\n this.semicolon();\n}\n\nexport function tsPrintSignatureDeclarationBase(this: Printer, node: any) {\n const { typeParameters } = node;\n const parameters = process.env.BABEL_8_BREAKING\n ? node.params\n : node.parameters;\n this.print(typeParameters);\n this.token(\"(\");\n this._parameters(parameters, \")\");\n const returnType = process.env.BABEL_8_BREAKING\n ? node.returnType\n : node.typeAnnotation;\n this.print(returnType);\n}\n\nexport function tsPrintClassMemberModifiers(\n this: Printer,\n node:\n | t.ClassProperty\n | t.ClassAccessorProperty\n | t.ClassPrivateProperty\n | t.ClassMethod\n | t.ClassPrivateMethod\n | t.TSDeclareMethod,\n) {\n const isPrivateField = node.type === \"ClassPrivateProperty\";\n const isPublicField =\n node.type === \"ClassAccessorProperty\" || node.type === \"ClassProperty\";\n printModifiersList(this, node, [\n isPublicField && node.declare && \"declare\",\n !isPrivateField && node.accessibility,\n ]);\n if (node.static) {\n this.word(\"static\");\n this.space();\n }\n printModifiersList(this, node, [\n !isPrivateField && node.abstract && \"abstract\",\n !isPrivateField && node.override && \"override\",\n (isPublicField || isPrivateField) && node.readonly && \"readonly\",\n ]);\n}\n\nfunction printBraced(printer: Printer, node: t.Node, cb: () => void) {\n printer.token(\"{\");\n const exit = printer.enterDelimited();\n cb();\n exit();\n printer.rightBrace(node);\n}\n\nfunction printModifiersList(\n printer: Printer,\n node: t.Node,\n modifiers: (string | false | null)[],\n) {\n const modifiersSet = new Set<string>();\n for (const modifier of modifiers) {\n if (modifier) modifiersSet.add(modifier);\n }\n\n printer.tokenMap?.find(node, tok => {\n if (modifiersSet.has(tok.value)) {\n printer.token(tok.value);\n printer.space();\n modifiersSet.delete(tok.value);\n return modifiersSet.size === 0;\n }\n });\n\n for (const modifier of modifiersSet) {\n printer.word(modifier);\n printer.space();\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -19,10 +19,14 @@ exports.OptionalIndexedAccessType = OptionalIndexedAccessType;
19
19
  exports.OptionalCallExpression = exports.OptionalMemberExpression = OptionalMemberExpression;
20
20
  exports.SequenceExpression = SequenceExpression;
21
21
  exports.TSSatisfiesExpression = exports.TSAsExpression = TSAsExpression;
22
+ exports.TSConditionalType = TSConditionalType;
23
+ exports.TSConstructorType = exports.TSFunctionType = TSFunctionType;
22
24
  exports.TSInferType = TSInferType;
23
25
  exports.TSInstantiationExpression = TSInstantiationExpression;
26
+ exports.TSIntersectionType = TSIntersectionType;
24
27
  exports.UnaryLike = exports.TSTypeAssertion = UnaryLike;
25
- exports.TSIntersectionType = exports.TSUnionType = TSUnionType;
28
+ exports.TSTypeOperator = TSTypeOperator;
29
+ exports.TSUnionType = TSUnionType;
26
30
  exports.IntersectionTypeAnnotation = exports.UnionTypeAnnotation = UnionTypeAnnotation;
27
31
  exports.UpdateExpression = UpdateExpression;
28
32
  exports.AwaitExpression = exports.YieldExpression = YieldExpression;
@@ -116,18 +120,51 @@ function TSAsExpression(node, parent) {
116
120
  }
117
121
  return Binary(node, parent);
118
122
  }
123
+ function TSConditionalType(node, parent) {
124
+ const parentType = parent.type;
125
+ if (parentType === "TSArrayType" || parentType === "TSIndexedAccessType" && parent.objectType === node || parentType === "TSOptionalType" || parentType === "TSTypeOperator" || parentType === "TSTypeParameter") {
126
+ return true;
127
+ }
128
+ if ((parentType === "TSIntersectionType" || parentType === "TSUnionType") && parent.types[0] === node) {
129
+ return true;
130
+ }
131
+ if (parentType === "TSConditionalType" && (parent.checkType === node || parent.extendsType === node)) {
132
+ return true;
133
+ }
134
+ return false;
135
+ }
119
136
  function TSUnionType(node, parent) {
120
137
  const parentType = parent.type;
121
- return parentType === "TSArrayType" || parentType === "TSOptionalType" || parentType === "TSIntersectionType" || parentType === "TSRestType";
138
+ return parentType === "TSIntersectionType" || parentType === "TSTypeOperator" || parentType === "TSArrayType" || parentType === "TSIndexedAccessType" && parent.objectType === node || parentType === "TSOptionalType";
139
+ }
140
+ function TSIntersectionType(node, parent) {
141
+ const parentType = parent.type;
142
+ return parentType === "TSTypeOperator" || parentType === "TSArrayType" || parentType === "TSIndexedAccessType" && parent.objectType === node || parentType === "TSOptionalType";
122
143
  }
123
144
  function TSInferType(node, parent) {
124
145
  const parentType = parent.type;
125
- return parentType === "TSArrayType" || parentType === "TSOptionalType";
146
+ if (parentType === "TSArrayType" || parentType === "TSIndexedAccessType" && parent.objectType === node || parentType === "TSOptionalType") {
147
+ return true;
148
+ }
149
+ if (node.typeParameter.constraint) {
150
+ if ((parentType === "TSIntersectionType" || parentType === "TSUnionType") && parent.types[0] === node) {
151
+ return true;
152
+ }
153
+ }
154
+ return false;
155
+ }
156
+ function TSTypeOperator(node, parent) {
157
+ const parentType = parent.type;
158
+ return parentType === "TSArrayType" || parentType === "TSIndexedAccessType" && parent.objectType === node || parentType === "TSOptionalType";
126
159
  }
127
160
  function TSInstantiationExpression(node, parent) {
128
161
  const parentType = parent.type;
129
162
  return (parentType === "CallExpression" || parentType === "OptionalCallExpression" || parentType === "NewExpression" || parentType === "TSInstantiationExpression") && !!parent.typeParameters;
130
163
  }
164
+ function TSFunctionType(node, parent) {
165
+ const parentType = parent.type;
166
+ return parentType === "TSIntersectionType" || parentType === "TSUnionType" || parentType === "TSTypeOperator" || parentType === "TSOptionalType" || parentType === "TSArrayType" || parentType === "TSIndexedAccessType" && parent.objectType === node || parentType === "TSConditionalType" && (parent.checkType === node || parent.extendsType === node);
167
+ }
131
168
  function BinaryExpression(node, parent, tokenContext, inForStatementInit) {
132
169
  return node.operator === "in" && inForStatementInit;
133
170
  }