index.js 44 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324
  1. 'use strict';
  2. Object.defineProperty(exports, '__esModule', { value: true });
  3. var helperPluginUtils = require('@babel/helper-plugin-utils');
  4. var syntaxObjectRestSpread = require('@babel/plugin-syntax-object-rest-spread');
  5. var core = require('@babel/core');
  6. var pluginTransformParameters = require('@babel/plugin-transform-parameters');
  7. var helperCompilationTargets = require('@babel/helper-compilation-targets');
  8. function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
  9. var syntaxObjectRestSpread__default = /*#__PURE__*/_interopDefaultLegacy(syntaxObjectRestSpread);
  10. var require$$0 = {
  11. "es6.array.copy-within": {
  12. chrome: "45",
  13. opera: "32",
  14. edge: "12",
  15. firefox: "32",
  16. safari: "9",
  17. node: "4",
  18. ios: "9",
  19. samsung: "5",
  20. rhino: "1.7.13",
  21. electron: "0.31"
  22. },
  23. "es6.array.every": {
  24. chrome: "5",
  25. opera: "10.10",
  26. edge: "12",
  27. firefox: "2",
  28. safari: "3.1",
  29. node: "0.10",
  30. ie: "9",
  31. android: "4",
  32. ios: "6",
  33. phantom: "2",
  34. samsung: "1",
  35. rhino: "1.7.13",
  36. electron: "0.20"
  37. },
  38. "es6.array.fill": {
  39. chrome: "45",
  40. opera: "32",
  41. edge: "12",
  42. firefox: "31",
  43. safari: "7.1",
  44. node: "4",
  45. ios: "8",
  46. samsung: "5",
  47. rhino: "1.7.13",
  48. electron: "0.31"
  49. },
  50. "es6.array.filter": {
  51. chrome: "51",
  52. opera: "38",
  53. edge: "13",
  54. firefox: "48",
  55. safari: "10",
  56. node: "6.5",
  57. ios: "10",
  58. samsung: "5",
  59. electron: "1.2"
  60. },
  61. "es6.array.find": {
  62. chrome: "45",
  63. opera: "32",
  64. edge: "12",
  65. firefox: "25",
  66. safari: "7.1",
  67. node: "4",
  68. ios: "8",
  69. samsung: "5",
  70. rhino: "1.7.13",
  71. electron: "0.31"
  72. },
  73. "es6.array.find-index": {
  74. chrome: "45",
  75. opera: "32",
  76. edge: "12",
  77. firefox: "25",
  78. safari: "7.1",
  79. node: "4",
  80. ios: "8",
  81. samsung: "5",
  82. rhino: "1.7.13",
  83. electron: "0.31"
  84. },
  85. "es7.array.flat-map": {
  86. chrome: "69",
  87. opera: "56",
  88. edge: "79",
  89. firefox: "62",
  90. safari: "12",
  91. node: "11",
  92. ios: "12",
  93. samsung: "10",
  94. electron: "4.0"
  95. },
  96. "es6.array.for-each": {
  97. chrome: "5",
  98. opera: "10.10",
  99. edge: "12",
  100. firefox: "2",
  101. safari: "3.1",
  102. node: "0.10",
  103. ie: "9",
  104. android: "4",
  105. ios: "6",
  106. phantom: "2",
  107. samsung: "1",
  108. rhino: "1.7.13",
  109. electron: "0.20"
  110. },
  111. "es6.array.from": {
  112. chrome: "51",
  113. opera: "38",
  114. edge: "15",
  115. firefox: "36",
  116. safari: "10",
  117. node: "6.5",
  118. ios: "10",
  119. samsung: "5",
  120. electron: "1.2"
  121. },
  122. "es7.array.includes": {
  123. chrome: "47",
  124. opera: "34",
  125. edge: "14",
  126. firefox: "43",
  127. safari: "10",
  128. node: "6",
  129. ios: "10",
  130. samsung: "5",
  131. electron: "0.36"
  132. },
  133. "es6.array.index-of": {
  134. chrome: "5",
  135. opera: "10.10",
  136. edge: "12",
  137. firefox: "2",
  138. safari: "3.1",
  139. node: "0.10",
  140. ie: "9",
  141. android: "4",
  142. ios: "6",
  143. phantom: "2",
  144. samsung: "1",
  145. rhino: "1.7.13",
  146. electron: "0.20"
  147. },
  148. "es6.array.is-array": {
  149. chrome: "5",
  150. opera: "10.50",
  151. edge: "12",
  152. firefox: "4",
  153. safari: "4",
  154. node: "0.10",
  155. ie: "9",
  156. android: "4",
  157. ios: "6",
  158. phantom: "2",
  159. samsung: "1",
  160. rhino: "1.7.13",
  161. electron: "0.20"
  162. },
  163. "es6.array.iterator": {
  164. chrome: "66",
  165. opera: "53",
  166. edge: "12",
  167. firefox: "60",
  168. safari: "9",
  169. node: "10",
  170. ios: "9",
  171. samsung: "9",
  172. rhino: "1.7.13",
  173. electron: "3.0"
  174. },
  175. "es6.array.last-index-of": {
  176. chrome: "5",
  177. opera: "10.10",
  178. edge: "12",
  179. firefox: "2",
  180. safari: "3.1",
  181. node: "0.10",
  182. ie: "9",
  183. android: "4",
  184. ios: "6",
  185. phantom: "2",
  186. samsung: "1",
  187. rhino: "1.7.13",
  188. electron: "0.20"
  189. },
  190. "es6.array.map": {
  191. chrome: "51",
  192. opera: "38",
  193. edge: "13",
  194. firefox: "48",
  195. safari: "10",
  196. node: "6.5",
  197. ios: "10",
  198. samsung: "5",
  199. electron: "1.2"
  200. },
  201. "es6.array.of": {
  202. chrome: "45",
  203. opera: "32",
  204. edge: "12",
  205. firefox: "25",
  206. safari: "9",
  207. node: "4",
  208. ios: "9",
  209. samsung: "5",
  210. rhino: "1.7.13",
  211. electron: "0.31"
  212. },
  213. "es6.array.reduce": {
  214. chrome: "5",
  215. opera: "10.50",
  216. edge: "12",
  217. firefox: "3",
  218. safari: "4",
  219. node: "0.10",
  220. ie: "9",
  221. android: "4",
  222. ios: "6",
  223. phantom: "2",
  224. samsung: "1",
  225. rhino: "1.7.13",
  226. electron: "0.20"
  227. },
  228. "es6.array.reduce-right": {
  229. chrome: "5",
  230. opera: "10.50",
  231. edge: "12",
  232. firefox: "3",
  233. safari: "4",
  234. node: "0.10",
  235. ie: "9",
  236. android: "4",
  237. ios: "6",
  238. phantom: "2",
  239. samsung: "1",
  240. rhino: "1.7.13",
  241. electron: "0.20"
  242. },
  243. "es6.array.slice": {
  244. chrome: "51",
  245. opera: "38",
  246. edge: "13",
  247. firefox: "48",
  248. safari: "10",
  249. node: "6.5",
  250. ios: "10",
  251. samsung: "5",
  252. electron: "1.2"
  253. },
  254. "es6.array.some": {
  255. chrome: "5",
  256. opera: "10.10",
  257. edge: "12",
  258. firefox: "2",
  259. safari: "3.1",
  260. node: "0.10",
  261. ie: "9",
  262. android: "4",
  263. ios: "6",
  264. phantom: "2",
  265. samsung: "1",
  266. rhino: "1.7.13",
  267. electron: "0.20"
  268. },
  269. "es6.array.sort": {
  270. chrome: "63",
  271. opera: "50",
  272. edge: "12",
  273. firefox: "5",
  274. safari: "12",
  275. node: "10",
  276. ie: "9",
  277. ios: "12",
  278. samsung: "8",
  279. rhino: "1.7.13",
  280. electron: "3.0"
  281. },
  282. "es6.array.species": {
  283. chrome: "51",
  284. opera: "38",
  285. edge: "13",
  286. firefox: "48",
  287. safari: "10",
  288. node: "6.5",
  289. ios: "10",
  290. samsung: "5",
  291. electron: "1.2"
  292. },
  293. "es6.date.now": {
  294. chrome: "5",
  295. opera: "10.50",
  296. edge: "12",
  297. firefox: "2",
  298. safari: "4",
  299. node: "0.10",
  300. ie: "9",
  301. android: "4",
  302. ios: "6",
  303. phantom: "2",
  304. samsung: "1",
  305. rhino: "1.7.13",
  306. electron: "0.20"
  307. },
  308. "es6.date.to-iso-string": {
  309. chrome: "5",
  310. opera: "10.50",
  311. edge: "12",
  312. firefox: "3.5",
  313. safari: "4",
  314. node: "0.10",
  315. ie: "9",
  316. android: "4",
  317. ios: "6",
  318. phantom: "2",
  319. samsung: "1",
  320. rhino: "1.7.13",
  321. electron: "0.20"
  322. },
  323. "es6.date.to-json": {
  324. chrome: "5",
  325. opera: "12.10",
  326. edge: "12",
  327. firefox: "4",
  328. safari: "10",
  329. node: "0.10",
  330. ie: "9",
  331. android: "4",
  332. ios: "10",
  333. samsung: "1",
  334. rhino: "1.7.13",
  335. electron: "0.20"
  336. },
  337. "es6.date.to-primitive": {
  338. chrome: "47",
  339. opera: "34",
  340. edge: "15",
  341. firefox: "44",
  342. safari: "10",
  343. node: "6",
  344. ios: "10",
  345. samsung: "5",
  346. electron: "0.36"
  347. },
  348. "es6.date.to-string": {
  349. chrome: "5",
  350. opera: "10.50",
  351. edge: "12",
  352. firefox: "2",
  353. safari: "3.1",
  354. node: "0.10",
  355. ie: "10",
  356. android: "4",
  357. ios: "6",
  358. phantom: "2",
  359. samsung: "1",
  360. rhino: "1.7.13",
  361. electron: "0.20"
  362. },
  363. "es6.function.bind": {
  364. chrome: "7",
  365. opera: "12",
  366. edge: "12",
  367. firefox: "4",
  368. safari: "5.1",
  369. node: "0.10",
  370. ie: "9",
  371. android: "4",
  372. ios: "6",
  373. phantom: "2",
  374. samsung: "1",
  375. rhino: "1.7.13",
  376. electron: "0.20"
  377. },
  378. "es6.function.has-instance": {
  379. chrome: "51",
  380. opera: "38",
  381. edge: "15",
  382. firefox: "50",
  383. safari: "10",
  384. node: "6.5",
  385. ios: "10",
  386. samsung: "5",
  387. electron: "1.2"
  388. },
  389. "es6.function.name": {
  390. chrome: "5",
  391. opera: "10.50",
  392. edge: "14",
  393. firefox: "2",
  394. safari: "4",
  395. node: "0.10",
  396. android: "4",
  397. ios: "6",
  398. phantom: "2",
  399. samsung: "1",
  400. rhino: "1.7.13",
  401. electron: "0.20"
  402. },
  403. "es6.map": {
  404. chrome: "51",
  405. opera: "38",
  406. edge: "15",
  407. firefox: "53",
  408. safari: "10",
  409. node: "6.5",
  410. ios: "10",
  411. samsung: "5",
  412. electron: "1.2"
  413. },
  414. "es6.math.acosh": {
  415. chrome: "38",
  416. opera: "25",
  417. edge: "12",
  418. firefox: "25",
  419. safari: "7.1",
  420. node: "0.12",
  421. ios: "8",
  422. samsung: "3",
  423. rhino: "1.7.13",
  424. electron: "0.20"
  425. },
  426. "es6.math.asinh": {
  427. chrome: "38",
  428. opera: "25",
  429. edge: "12",
  430. firefox: "25",
  431. safari: "7.1",
  432. node: "0.12",
  433. ios: "8",
  434. samsung: "3",
  435. rhino: "1.7.13",
  436. electron: "0.20"
  437. },
  438. "es6.math.atanh": {
  439. chrome: "38",
  440. opera: "25",
  441. edge: "12",
  442. firefox: "25",
  443. safari: "7.1",
  444. node: "0.12",
  445. ios: "8",
  446. samsung: "3",
  447. rhino: "1.7.13",
  448. electron: "0.20"
  449. },
  450. "es6.math.cbrt": {
  451. chrome: "38",
  452. opera: "25",
  453. edge: "12",
  454. firefox: "25",
  455. safari: "7.1",
  456. node: "0.12",
  457. ios: "8",
  458. samsung: "3",
  459. rhino: "1.7.13",
  460. electron: "0.20"
  461. },
  462. "es6.math.clz32": {
  463. chrome: "38",
  464. opera: "25",
  465. edge: "12",
  466. firefox: "31",
  467. safari: "9",
  468. node: "0.12",
  469. ios: "9",
  470. samsung: "3",
  471. rhino: "1.7.13",
  472. electron: "0.20"
  473. },
  474. "es6.math.cosh": {
  475. chrome: "38",
  476. opera: "25",
  477. edge: "12",
  478. firefox: "25",
  479. safari: "7.1",
  480. node: "0.12",
  481. ios: "8",
  482. samsung: "3",
  483. rhino: "1.7.13",
  484. electron: "0.20"
  485. },
  486. "es6.math.expm1": {
  487. chrome: "38",
  488. opera: "25",
  489. edge: "12",
  490. firefox: "25",
  491. safari: "7.1",
  492. node: "0.12",
  493. ios: "8",
  494. samsung: "3",
  495. rhino: "1.7.13",
  496. electron: "0.20"
  497. },
  498. "es6.math.fround": {
  499. chrome: "38",
  500. opera: "25",
  501. edge: "12",
  502. firefox: "26",
  503. safari: "7.1",
  504. node: "0.12",
  505. ios: "8",
  506. samsung: "3",
  507. rhino: "1.7.13",
  508. electron: "0.20"
  509. },
  510. "es6.math.hypot": {
  511. chrome: "38",
  512. opera: "25",
  513. edge: "12",
  514. firefox: "27",
  515. safari: "7.1",
  516. node: "0.12",
  517. ios: "8",
  518. samsung: "3",
  519. rhino: "1.7.13",
  520. electron: "0.20"
  521. },
  522. "es6.math.imul": {
  523. chrome: "30",
  524. opera: "17",
  525. edge: "12",
  526. firefox: "23",
  527. safari: "7",
  528. node: "0.12",
  529. android: "4.4",
  530. ios: "7",
  531. samsung: "2",
  532. rhino: "1.7.13",
  533. electron: "0.20"
  534. },
  535. "es6.math.log1p": {
  536. chrome: "38",
  537. opera: "25",
  538. edge: "12",
  539. firefox: "25",
  540. safari: "7.1",
  541. node: "0.12",
  542. ios: "8",
  543. samsung: "3",
  544. rhino: "1.7.13",
  545. electron: "0.20"
  546. },
  547. "es6.math.log10": {
  548. chrome: "38",
  549. opera: "25",
  550. edge: "12",
  551. firefox: "25",
  552. safari: "7.1",
  553. node: "0.12",
  554. ios: "8",
  555. samsung: "3",
  556. rhino: "1.7.13",
  557. electron: "0.20"
  558. },
  559. "es6.math.log2": {
  560. chrome: "38",
  561. opera: "25",
  562. edge: "12",
  563. firefox: "25",
  564. safari: "7.1",
  565. node: "0.12",
  566. ios: "8",
  567. samsung: "3",
  568. rhino: "1.7.13",
  569. electron: "0.20"
  570. },
  571. "es6.math.sign": {
  572. chrome: "38",
  573. opera: "25",
  574. edge: "12",
  575. firefox: "25",
  576. safari: "9",
  577. node: "0.12",
  578. ios: "9",
  579. samsung: "3",
  580. rhino: "1.7.13",
  581. electron: "0.20"
  582. },
  583. "es6.math.sinh": {
  584. chrome: "38",
  585. opera: "25",
  586. edge: "12",
  587. firefox: "25",
  588. safari: "7.1",
  589. node: "0.12",
  590. ios: "8",
  591. samsung: "3",
  592. rhino: "1.7.13",
  593. electron: "0.20"
  594. },
  595. "es6.math.tanh": {
  596. chrome: "38",
  597. opera: "25",
  598. edge: "12",
  599. firefox: "25",
  600. safari: "7.1",
  601. node: "0.12",
  602. ios: "8",
  603. samsung: "3",
  604. rhino: "1.7.13",
  605. electron: "0.20"
  606. },
  607. "es6.math.trunc": {
  608. chrome: "38",
  609. opera: "25",
  610. edge: "12",
  611. firefox: "25",
  612. safari: "7.1",
  613. node: "0.12",
  614. ios: "8",
  615. samsung: "3",
  616. rhino: "1.7.13",
  617. electron: "0.20"
  618. },
  619. "es6.number.constructor": {
  620. chrome: "41",
  621. opera: "28",
  622. edge: "12",
  623. firefox: "36",
  624. safari: "9",
  625. node: "4",
  626. ios: "9",
  627. samsung: "3.4",
  628. rhino: "1.7.13",
  629. electron: "0.21"
  630. },
  631. "es6.number.epsilon": {
  632. chrome: "34",
  633. opera: "21",
  634. edge: "12",
  635. firefox: "25",
  636. safari: "9",
  637. node: "0.12",
  638. ios: "9",
  639. samsung: "2",
  640. rhino: "1.7.14",
  641. electron: "0.20"
  642. },
  643. "es6.number.is-finite": {
  644. chrome: "19",
  645. opera: "15",
  646. edge: "12",
  647. firefox: "16",
  648. safari: "9",
  649. node: "0.12",
  650. android: "4.1",
  651. ios: "9",
  652. samsung: "1.5",
  653. rhino: "1.7.13",
  654. electron: "0.20"
  655. },
  656. "es6.number.is-integer": {
  657. chrome: "34",
  658. opera: "21",
  659. edge: "12",
  660. firefox: "16",
  661. safari: "9",
  662. node: "0.12",
  663. ios: "9",
  664. samsung: "2",
  665. rhino: "1.7.13",
  666. electron: "0.20"
  667. },
  668. "es6.number.is-nan": {
  669. chrome: "19",
  670. opera: "15",
  671. edge: "12",
  672. firefox: "15",
  673. safari: "9",
  674. node: "0.12",
  675. android: "4.1",
  676. ios: "9",
  677. samsung: "1.5",
  678. rhino: "1.7.13",
  679. electron: "0.20"
  680. },
  681. "es6.number.is-safe-integer": {
  682. chrome: "34",
  683. opera: "21",
  684. edge: "12",
  685. firefox: "32",
  686. safari: "9",
  687. node: "0.12",
  688. ios: "9",
  689. samsung: "2",
  690. rhino: "1.7.13",
  691. electron: "0.20"
  692. },
  693. "es6.number.max-safe-integer": {
  694. chrome: "34",
  695. opera: "21",
  696. edge: "12",
  697. firefox: "31",
  698. safari: "9",
  699. node: "0.12",
  700. ios: "9",
  701. samsung: "2",
  702. rhino: "1.7.13",
  703. electron: "0.20"
  704. },
  705. "es6.number.min-safe-integer": {
  706. chrome: "34",
  707. opera: "21",
  708. edge: "12",
  709. firefox: "31",
  710. safari: "9",
  711. node: "0.12",
  712. ios: "9",
  713. samsung: "2",
  714. rhino: "1.7.13",
  715. electron: "0.20"
  716. },
  717. "es6.number.parse-float": {
  718. chrome: "34",
  719. opera: "21",
  720. edge: "12",
  721. firefox: "25",
  722. safari: "9",
  723. node: "0.12",
  724. ios: "9",
  725. samsung: "2",
  726. rhino: "1.7.14",
  727. electron: "0.20"
  728. },
  729. "es6.number.parse-int": {
  730. chrome: "34",
  731. opera: "21",
  732. edge: "12",
  733. firefox: "25",
  734. safari: "9",
  735. node: "0.12",
  736. ios: "9",
  737. samsung: "2",
  738. rhino: "1.7.14",
  739. electron: "0.20"
  740. },
  741. "es6.object.assign": {
  742. chrome: "49",
  743. opera: "36",
  744. edge: "13",
  745. firefox: "36",
  746. safari: "10",
  747. node: "6",
  748. ios: "10",
  749. samsung: "5",
  750. electron: "0.37"
  751. },
  752. "es6.object.create": {
  753. chrome: "5",
  754. opera: "12",
  755. edge: "12",
  756. firefox: "4",
  757. safari: "4",
  758. node: "0.10",
  759. ie: "9",
  760. android: "4",
  761. ios: "6",
  762. phantom: "2",
  763. samsung: "1",
  764. rhino: "1.7.13",
  765. electron: "0.20"
  766. },
  767. "es7.object.define-getter": {
  768. chrome: "62",
  769. opera: "49",
  770. edge: "16",
  771. firefox: "48",
  772. safari: "9",
  773. node: "8.10",
  774. ios: "9",
  775. samsung: "8",
  776. electron: "3.0"
  777. },
  778. "es7.object.define-setter": {
  779. chrome: "62",
  780. opera: "49",
  781. edge: "16",
  782. firefox: "48",
  783. safari: "9",
  784. node: "8.10",
  785. ios: "9",
  786. samsung: "8",
  787. electron: "3.0"
  788. },
  789. "es6.object.define-property": {
  790. chrome: "5",
  791. opera: "12",
  792. edge: "12",
  793. firefox: "4",
  794. safari: "5.1",
  795. node: "0.10",
  796. ie: "9",
  797. android: "4",
  798. ios: "6",
  799. phantom: "2",
  800. samsung: "1",
  801. rhino: "1.7.13",
  802. electron: "0.20"
  803. },
  804. "es6.object.define-properties": {
  805. chrome: "5",
  806. opera: "12",
  807. edge: "12",
  808. firefox: "4",
  809. safari: "4",
  810. node: "0.10",
  811. ie: "9",
  812. android: "4",
  813. ios: "6",
  814. phantom: "2",
  815. samsung: "1",
  816. rhino: "1.7.13",
  817. electron: "0.20"
  818. },
  819. "es7.object.entries": {
  820. chrome: "54",
  821. opera: "41",
  822. edge: "14",
  823. firefox: "47",
  824. safari: "10.1",
  825. node: "7",
  826. ios: "10.3",
  827. samsung: "6",
  828. rhino: "1.7.14",
  829. electron: "1.4"
  830. },
  831. "es6.object.freeze": {
  832. chrome: "44",
  833. opera: "31",
  834. edge: "12",
  835. firefox: "35",
  836. safari: "9",
  837. node: "4",
  838. ios: "9",
  839. samsung: "4",
  840. rhino: "1.7.13",
  841. electron: "0.30"
  842. },
  843. "es6.object.get-own-property-descriptor": {
  844. chrome: "44",
  845. opera: "31",
  846. edge: "12",
  847. firefox: "35",
  848. safari: "9",
  849. node: "4",
  850. ios: "9",
  851. samsung: "4",
  852. rhino: "1.7.13",
  853. electron: "0.30"
  854. },
  855. "es7.object.get-own-property-descriptors": {
  856. chrome: "54",
  857. opera: "41",
  858. edge: "15",
  859. firefox: "50",
  860. safari: "10.1",
  861. node: "7",
  862. ios: "10.3",
  863. samsung: "6",
  864. electron: "1.4"
  865. },
  866. "es6.object.get-own-property-names": {
  867. chrome: "40",
  868. opera: "27",
  869. edge: "12",
  870. firefox: "33",
  871. safari: "9",
  872. node: "4",
  873. ios: "9",
  874. samsung: "3.4",
  875. rhino: "1.7.13",
  876. electron: "0.21"
  877. },
  878. "es6.object.get-prototype-of": {
  879. chrome: "44",
  880. opera: "31",
  881. edge: "12",
  882. firefox: "35",
  883. safari: "9",
  884. node: "4",
  885. ios: "9",
  886. samsung: "4",
  887. rhino: "1.7.13",
  888. electron: "0.30"
  889. },
  890. "es7.object.lookup-getter": {
  891. chrome: "62",
  892. opera: "49",
  893. edge: "79",
  894. firefox: "36",
  895. safari: "9",
  896. node: "8.10",
  897. ios: "9",
  898. samsung: "8",
  899. electron: "3.0"
  900. },
  901. "es7.object.lookup-setter": {
  902. chrome: "62",
  903. opera: "49",
  904. edge: "79",
  905. firefox: "36",
  906. safari: "9",
  907. node: "8.10",
  908. ios: "9",
  909. samsung: "8",
  910. electron: "3.0"
  911. },
  912. "es6.object.prevent-extensions": {
  913. chrome: "44",
  914. opera: "31",
  915. edge: "12",
  916. firefox: "35",
  917. safari: "9",
  918. node: "4",
  919. ios: "9",
  920. samsung: "4",
  921. rhino: "1.7.13",
  922. electron: "0.30"
  923. },
  924. "es6.object.to-string": {
  925. chrome: "57",
  926. opera: "44",
  927. edge: "15",
  928. firefox: "51",
  929. safari: "10",
  930. node: "8",
  931. ios: "10",
  932. samsung: "7",
  933. electron: "1.7"
  934. },
  935. "es6.object.is": {
  936. chrome: "19",
  937. opera: "15",
  938. edge: "12",
  939. firefox: "22",
  940. safari: "9",
  941. node: "0.12",
  942. android: "4.1",
  943. ios: "9",
  944. samsung: "1.5",
  945. rhino: "1.7.13",
  946. electron: "0.20"
  947. },
  948. "es6.object.is-frozen": {
  949. chrome: "44",
  950. opera: "31",
  951. edge: "12",
  952. firefox: "35",
  953. safari: "9",
  954. node: "4",
  955. ios: "9",
  956. samsung: "4",
  957. rhino: "1.7.13",
  958. electron: "0.30"
  959. },
  960. "es6.object.is-sealed": {
  961. chrome: "44",
  962. opera: "31",
  963. edge: "12",
  964. firefox: "35",
  965. safari: "9",
  966. node: "4",
  967. ios: "9",
  968. samsung: "4",
  969. rhino: "1.7.13",
  970. electron: "0.30"
  971. },
  972. "es6.object.is-extensible": {
  973. chrome: "44",
  974. opera: "31",
  975. edge: "12",
  976. firefox: "35",
  977. safari: "9",
  978. node: "4",
  979. ios: "9",
  980. samsung: "4",
  981. rhino: "1.7.13",
  982. electron: "0.30"
  983. },
  984. "es6.object.keys": {
  985. chrome: "40",
  986. opera: "27",
  987. edge: "12",
  988. firefox: "35",
  989. safari: "9",
  990. node: "4",
  991. ios: "9",
  992. samsung: "3.4",
  993. rhino: "1.7.13",
  994. electron: "0.21"
  995. },
  996. "es6.object.seal": {
  997. chrome: "44",
  998. opera: "31",
  999. edge: "12",
  1000. firefox: "35",
  1001. safari: "9",
  1002. node: "4",
  1003. ios: "9",
  1004. samsung: "4",
  1005. rhino: "1.7.13",
  1006. electron: "0.30"
  1007. },
  1008. "es6.object.set-prototype-of": {
  1009. chrome: "34",
  1010. opera: "21",
  1011. edge: "12",
  1012. firefox: "31",
  1013. safari: "9",
  1014. node: "0.12",
  1015. ie: "11",
  1016. ios: "9",
  1017. samsung: "2",
  1018. rhino: "1.7.13",
  1019. electron: "0.20"
  1020. },
  1021. "es7.object.values": {
  1022. chrome: "54",
  1023. opera: "41",
  1024. edge: "14",
  1025. firefox: "47",
  1026. safari: "10.1",
  1027. node: "7",
  1028. ios: "10.3",
  1029. samsung: "6",
  1030. rhino: "1.7.14",
  1031. electron: "1.4"
  1032. },
  1033. "es6.promise": {
  1034. chrome: "51",
  1035. opera: "38",
  1036. edge: "14",
  1037. firefox: "45",
  1038. safari: "10",
  1039. node: "6.5",
  1040. ios: "10",
  1041. samsung: "5",
  1042. electron: "1.2"
  1043. },
  1044. "es7.promise.finally": {
  1045. chrome: "63",
  1046. opera: "50",
  1047. edge: "18",
  1048. firefox: "58",
  1049. safari: "11.1",
  1050. node: "10",
  1051. ios: "11.3",
  1052. samsung: "8",
  1053. electron: "3.0"
  1054. },
  1055. "es6.reflect.apply": {
  1056. chrome: "49",
  1057. opera: "36",
  1058. edge: "12",
  1059. firefox: "42",
  1060. safari: "10",
  1061. node: "6",
  1062. ios: "10",
  1063. samsung: "5",
  1064. electron: "0.37"
  1065. },
  1066. "es6.reflect.construct": {
  1067. chrome: "49",
  1068. opera: "36",
  1069. edge: "13",
  1070. firefox: "49",
  1071. safari: "10",
  1072. node: "6",
  1073. ios: "10",
  1074. samsung: "5",
  1075. electron: "0.37"
  1076. },
  1077. "es6.reflect.define-property": {
  1078. chrome: "49",
  1079. opera: "36",
  1080. edge: "13",
  1081. firefox: "42",
  1082. safari: "10",
  1083. node: "6",
  1084. ios: "10",
  1085. samsung: "5",
  1086. electron: "0.37"
  1087. },
  1088. "es6.reflect.delete-property": {
  1089. chrome: "49",
  1090. opera: "36",
  1091. edge: "12",
  1092. firefox: "42",
  1093. safari: "10",
  1094. node: "6",
  1095. ios: "10",
  1096. samsung: "5",
  1097. electron: "0.37"
  1098. },
  1099. "es6.reflect.get": {
  1100. chrome: "49",
  1101. opera: "36",
  1102. edge: "12",
  1103. firefox: "42",
  1104. safari: "10",
  1105. node: "6",
  1106. ios: "10",
  1107. samsung: "5",
  1108. electron: "0.37"
  1109. },
  1110. "es6.reflect.get-own-property-descriptor": {
  1111. chrome: "49",
  1112. opera: "36",
  1113. edge: "12",
  1114. firefox: "42",
  1115. safari: "10",
  1116. node: "6",
  1117. ios: "10",
  1118. samsung: "5",
  1119. electron: "0.37"
  1120. },
  1121. "es6.reflect.get-prototype-of": {
  1122. chrome: "49",
  1123. opera: "36",
  1124. edge: "12",
  1125. firefox: "42",
  1126. safari: "10",
  1127. node: "6",
  1128. ios: "10",
  1129. samsung: "5",
  1130. electron: "0.37"
  1131. },
  1132. "es6.reflect.has": {
  1133. chrome: "49",
  1134. opera: "36",
  1135. edge: "12",
  1136. firefox: "42",
  1137. safari: "10",
  1138. node: "6",
  1139. ios: "10",
  1140. samsung: "5",
  1141. electron: "0.37"
  1142. },
  1143. "es6.reflect.is-extensible": {
  1144. chrome: "49",
  1145. opera: "36",
  1146. edge: "12",
  1147. firefox: "42",
  1148. safari: "10",
  1149. node: "6",
  1150. ios: "10",
  1151. samsung: "5",
  1152. electron: "0.37"
  1153. },
  1154. "es6.reflect.own-keys": {
  1155. chrome: "49",
  1156. opera: "36",
  1157. edge: "12",
  1158. firefox: "42",
  1159. safari: "10",
  1160. node: "6",
  1161. ios: "10",
  1162. samsung: "5",
  1163. electron: "0.37"
  1164. },
  1165. "es6.reflect.prevent-extensions": {
  1166. chrome: "49",
  1167. opera: "36",
  1168. edge: "12",
  1169. firefox: "42",
  1170. safari: "10",
  1171. node: "6",
  1172. ios: "10",
  1173. samsung: "5",
  1174. electron: "0.37"
  1175. },
  1176. "es6.reflect.set": {
  1177. chrome: "49",
  1178. opera: "36",
  1179. edge: "12",
  1180. firefox: "42",
  1181. safari: "10",
  1182. node: "6",
  1183. ios: "10",
  1184. samsung: "5",
  1185. electron: "0.37"
  1186. },
  1187. "es6.reflect.set-prototype-of": {
  1188. chrome: "49",
  1189. opera: "36",
  1190. edge: "12",
  1191. firefox: "42",
  1192. safari: "10",
  1193. node: "6",
  1194. ios: "10",
  1195. samsung: "5",
  1196. electron: "0.37"
  1197. },
  1198. "es6.regexp.constructor": {
  1199. chrome: "50",
  1200. opera: "37",
  1201. edge: "79",
  1202. firefox: "40",
  1203. safari: "10",
  1204. node: "6",
  1205. ios: "10",
  1206. samsung: "5",
  1207. electron: "1.1"
  1208. },
  1209. "es6.regexp.flags": {
  1210. chrome: "49",
  1211. opera: "36",
  1212. edge: "79",
  1213. firefox: "37",
  1214. safari: "9",
  1215. node: "6",
  1216. ios: "9",
  1217. samsung: "5",
  1218. electron: "0.37"
  1219. },
  1220. "es6.regexp.match": {
  1221. chrome: "50",
  1222. opera: "37",
  1223. edge: "79",
  1224. firefox: "49",
  1225. safari: "10",
  1226. node: "6",
  1227. ios: "10",
  1228. samsung: "5",
  1229. rhino: "1.7.13",
  1230. electron: "1.1"
  1231. },
  1232. "es6.regexp.replace": {
  1233. chrome: "50",
  1234. opera: "37",
  1235. edge: "79",
  1236. firefox: "49",
  1237. safari: "10",
  1238. node: "6",
  1239. ios: "10",
  1240. samsung: "5",
  1241. electron: "1.1"
  1242. },
  1243. "es6.regexp.split": {
  1244. chrome: "50",
  1245. opera: "37",
  1246. edge: "79",
  1247. firefox: "49",
  1248. safari: "10",
  1249. node: "6",
  1250. ios: "10",
  1251. samsung: "5",
  1252. electron: "1.1"
  1253. },
  1254. "es6.regexp.search": {
  1255. chrome: "50",
  1256. opera: "37",
  1257. edge: "79",
  1258. firefox: "49",
  1259. safari: "10",
  1260. node: "6",
  1261. ios: "10",
  1262. samsung: "5",
  1263. rhino: "1.7.13",
  1264. electron: "1.1"
  1265. },
  1266. "es6.regexp.to-string": {
  1267. chrome: "50",
  1268. opera: "37",
  1269. edge: "79",
  1270. firefox: "39",
  1271. safari: "10",
  1272. node: "6",
  1273. ios: "10",
  1274. samsung: "5",
  1275. electron: "1.1"
  1276. },
  1277. "es6.set": {
  1278. chrome: "51",
  1279. opera: "38",
  1280. edge: "15",
  1281. firefox: "53",
  1282. safari: "10",
  1283. node: "6.5",
  1284. ios: "10",
  1285. samsung: "5",
  1286. electron: "1.2"
  1287. },
  1288. "es6.symbol": {
  1289. chrome: "51",
  1290. opera: "38",
  1291. edge: "79",
  1292. firefox: "51",
  1293. safari: "10",
  1294. node: "6.5",
  1295. ios: "10",
  1296. samsung: "5",
  1297. electron: "1.2"
  1298. },
  1299. "es7.symbol.async-iterator": {
  1300. chrome: "63",
  1301. opera: "50",
  1302. edge: "79",
  1303. firefox: "57",
  1304. safari: "12",
  1305. node: "10",
  1306. ios: "12",
  1307. samsung: "8",
  1308. electron: "3.0"
  1309. },
  1310. "es6.string.anchor": {
  1311. chrome: "5",
  1312. opera: "15",
  1313. edge: "12",
  1314. firefox: "17",
  1315. safari: "6",
  1316. node: "0.10",
  1317. android: "4",
  1318. ios: "7",
  1319. phantom: "2",
  1320. samsung: "1",
  1321. rhino: "1.7.14",
  1322. electron: "0.20"
  1323. },
  1324. "es6.string.big": {
  1325. chrome: "5",
  1326. opera: "15",
  1327. edge: "12",
  1328. firefox: "17",
  1329. safari: "6",
  1330. node: "0.10",
  1331. android: "4",
  1332. ios: "7",
  1333. phantom: "2",
  1334. samsung: "1",
  1335. rhino: "1.7.14",
  1336. electron: "0.20"
  1337. },
  1338. "es6.string.blink": {
  1339. chrome: "5",
  1340. opera: "15",
  1341. edge: "12",
  1342. firefox: "17",
  1343. safari: "6",
  1344. node: "0.10",
  1345. android: "4",
  1346. ios: "7",
  1347. phantom: "2",
  1348. samsung: "1",
  1349. rhino: "1.7.14",
  1350. electron: "0.20"
  1351. },
  1352. "es6.string.bold": {
  1353. chrome: "5",
  1354. opera: "15",
  1355. edge: "12",
  1356. firefox: "17",
  1357. safari: "6",
  1358. node: "0.10",
  1359. android: "4",
  1360. ios: "7",
  1361. phantom: "2",
  1362. samsung: "1",
  1363. rhino: "1.7.14",
  1364. electron: "0.20"
  1365. },
  1366. "es6.string.code-point-at": {
  1367. chrome: "41",
  1368. opera: "28",
  1369. edge: "12",
  1370. firefox: "29",
  1371. safari: "9",
  1372. node: "4",
  1373. ios: "9",
  1374. samsung: "3.4",
  1375. rhino: "1.7.13",
  1376. electron: "0.21"
  1377. },
  1378. "es6.string.ends-with": {
  1379. chrome: "41",
  1380. opera: "28",
  1381. edge: "12",
  1382. firefox: "29",
  1383. safari: "9",
  1384. node: "4",
  1385. ios: "9",
  1386. samsung: "3.4",
  1387. rhino: "1.7.13",
  1388. electron: "0.21"
  1389. },
  1390. "es6.string.fixed": {
  1391. chrome: "5",
  1392. opera: "15",
  1393. edge: "12",
  1394. firefox: "17",
  1395. safari: "6",
  1396. node: "0.10",
  1397. android: "4",
  1398. ios: "7",
  1399. phantom: "2",
  1400. samsung: "1",
  1401. rhino: "1.7.14",
  1402. electron: "0.20"
  1403. },
  1404. "es6.string.fontcolor": {
  1405. chrome: "5",
  1406. opera: "15",
  1407. edge: "12",
  1408. firefox: "17",
  1409. safari: "6",
  1410. node: "0.10",
  1411. android: "4",
  1412. ios: "7",
  1413. phantom: "2",
  1414. samsung: "1",
  1415. rhino: "1.7.14",
  1416. electron: "0.20"
  1417. },
  1418. "es6.string.fontsize": {
  1419. chrome: "5",
  1420. opera: "15",
  1421. edge: "12",
  1422. firefox: "17",
  1423. safari: "6",
  1424. node: "0.10",
  1425. android: "4",
  1426. ios: "7",
  1427. phantom: "2",
  1428. samsung: "1",
  1429. rhino: "1.7.14",
  1430. electron: "0.20"
  1431. },
  1432. "es6.string.from-code-point": {
  1433. chrome: "41",
  1434. opera: "28",
  1435. edge: "12",
  1436. firefox: "29",
  1437. safari: "9",
  1438. node: "4",
  1439. ios: "9",
  1440. samsung: "3.4",
  1441. rhino: "1.7.13",
  1442. electron: "0.21"
  1443. },
  1444. "es6.string.includes": {
  1445. chrome: "41",
  1446. opera: "28",
  1447. edge: "12",
  1448. firefox: "40",
  1449. safari: "9",
  1450. node: "4",
  1451. ios: "9",
  1452. samsung: "3.4",
  1453. rhino: "1.7.13",
  1454. electron: "0.21"
  1455. },
  1456. "es6.string.italics": {
  1457. chrome: "5",
  1458. opera: "15",
  1459. edge: "12",
  1460. firefox: "17",
  1461. safari: "6",
  1462. node: "0.10",
  1463. android: "4",
  1464. ios: "7",
  1465. phantom: "2",
  1466. samsung: "1",
  1467. rhino: "1.7.14",
  1468. electron: "0.20"
  1469. },
  1470. "es6.string.iterator": {
  1471. chrome: "38",
  1472. opera: "25",
  1473. edge: "12",
  1474. firefox: "36",
  1475. safari: "9",
  1476. node: "0.12",
  1477. ios: "9",
  1478. samsung: "3",
  1479. rhino: "1.7.13",
  1480. electron: "0.20"
  1481. },
  1482. "es6.string.link": {
  1483. chrome: "5",
  1484. opera: "15",
  1485. edge: "12",
  1486. firefox: "17",
  1487. safari: "6",
  1488. node: "0.10",
  1489. android: "4",
  1490. ios: "7",
  1491. phantom: "2",
  1492. samsung: "1",
  1493. rhino: "1.7.14",
  1494. electron: "0.20"
  1495. },
  1496. "es7.string.pad-start": {
  1497. chrome: "57",
  1498. opera: "44",
  1499. edge: "15",
  1500. firefox: "48",
  1501. safari: "10",
  1502. node: "8",
  1503. ios: "10",
  1504. samsung: "7",
  1505. rhino: "1.7.13",
  1506. electron: "1.7"
  1507. },
  1508. "es7.string.pad-end": {
  1509. chrome: "57",
  1510. opera: "44",
  1511. edge: "15",
  1512. firefox: "48",
  1513. safari: "10",
  1514. node: "8",
  1515. ios: "10",
  1516. samsung: "7",
  1517. rhino: "1.7.13",
  1518. electron: "1.7"
  1519. },
  1520. "es6.string.raw": {
  1521. chrome: "41",
  1522. opera: "28",
  1523. edge: "12",
  1524. firefox: "34",
  1525. safari: "9",
  1526. node: "4",
  1527. ios: "9",
  1528. samsung: "3.4",
  1529. rhino: "1.7.14",
  1530. electron: "0.21"
  1531. },
  1532. "es6.string.repeat": {
  1533. chrome: "41",
  1534. opera: "28",
  1535. edge: "12",
  1536. firefox: "24",
  1537. safari: "9",
  1538. node: "4",
  1539. ios: "9",
  1540. samsung: "3.4",
  1541. rhino: "1.7.13",
  1542. electron: "0.21"
  1543. },
  1544. "es6.string.small": {
  1545. chrome: "5",
  1546. opera: "15",
  1547. edge: "12",
  1548. firefox: "17",
  1549. safari: "6",
  1550. node: "0.10",
  1551. android: "4",
  1552. ios: "7",
  1553. phantom: "2",
  1554. samsung: "1",
  1555. rhino: "1.7.14",
  1556. electron: "0.20"
  1557. },
  1558. "es6.string.starts-with": {
  1559. chrome: "41",
  1560. opera: "28",
  1561. edge: "12",
  1562. firefox: "29",
  1563. safari: "9",
  1564. node: "4",
  1565. ios: "9",
  1566. samsung: "3.4",
  1567. rhino: "1.7.13",
  1568. electron: "0.21"
  1569. },
  1570. "es6.string.strike": {
  1571. chrome: "5",
  1572. opera: "15",
  1573. edge: "12",
  1574. firefox: "17",
  1575. safari: "6",
  1576. node: "0.10",
  1577. android: "4",
  1578. ios: "7",
  1579. phantom: "2",
  1580. samsung: "1",
  1581. rhino: "1.7.14",
  1582. electron: "0.20"
  1583. },
  1584. "es6.string.sub": {
  1585. chrome: "5",
  1586. opera: "15",
  1587. edge: "12",
  1588. firefox: "17",
  1589. safari: "6",
  1590. node: "0.10",
  1591. android: "4",
  1592. ios: "7",
  1593. phantom: "2",
  1594. samsung: "1",
  1595. rhino: "1.7.14",
  1596. electron: "0.20"
  1597. },
  1598. "es6.string.sup": {
  1599. chrome: "5",
  1600. opera: "15",
  1601. edge: "12",
  1602. firefox: "17",
  1603. safari: "6",
  1604. node: "0.10",
  1605. android: "4",
  1606. ios: "7",
  1607. phantom: "2",
  1608. samsung: "1",
  1609. rhino: "1.7.14",
  1610. electron: "0.20"
  1611. },
  1612. "es6.string.trim": {
  1613. chrome: "5",
  1614. opera: "10.50",
  1615. edge: "12",
  1616. firefox: "3.5",
  1617. safari: "4",
  1618. node: "0.10",
  1619. ie: "9",
  1620. android: "4",
  1621. ios: "6",
  1622. phantom: "2",
  1623. samsung: "1",
  1624. rhino: "1.7.13",
  1625. electron: "0.20"
  1626. },
  1627. "es7.string.trim-left": {
  1628. chrome: "66",
  1629. opera: "53",
  1630. edge: "79",
  1631. firefox: "61",
  1632. safari: "12",
  1633. node: "10",
  1634. ios: "12",
  1635. samsung: "9",
  1636. rhino: "1.7.13",
  1637. electron: "3.0"
  1638. },
  1639. "es7.string.trim-right": {
  1640. chrome: "66",
  1641. opera: "53",
  1642. edge: "79",
  1643. firefox: "61",
  1644. safari: "12",
  1645. node: "10",
  1646. ios: "12",
  1647. samsung: "9",
  1648. rhino: "1.7.13",
  1649. electron: "3.0"
  1650. },
  1651. "es6.typed.array-buffer": {
  1652. chrome: "51",
  1653. opera: "38",
  1654. edge: "13",
  1655. firefox: "48",
  1656. safari: "10",
  1657. node: "6.5",
  1658. ios: "10",
  1659. samsung: "5",
  1660. electron: "1.2"
  1661. },
  1662. "es6.typed.data-view": {
  1663. chrome: "5",
  1664. opera: "12",
  1665. edge: "12",
  1666. firefox: "15",
  1667. safari: "5.1",
  1668. node: "0.10",
  1669. ie: "10",
  1670. android: "4",
  1671. ios: "6",
  1672. phantom: "2",
  1673. samsung: "1",
  1674. rhino: "1.7.13",
  1675. electron: "0.20"
  1676. },
  1677. "es6.typed.int8-array": {
  1678. chrome: "51",
  1679. opera: "38",
  1680. edge: "13",
  1681. firefox: "48",
  1682. safari: "10",
  1683. node: "6.5",
  1684. ios: "10",
  1685. samsung: "5",
  1686. electron: "1.2"
  1687. },
  1688. "es6.typed.uint8-array": {
  1689. chrome: "51",
  1690. opera: "38",
  1691. edge: "13",
  1692. firefox: "48",
  1693. safari: "10",
  1694. node: "6.5",
  1695. ios: "10",
  1696. samsung: "5",
  1697. electron: "1.2"
  1698. },
  1699. "es6.typed.uint8-clamped-array": {
  1700. chrome: "51",
  1701. opera: "38",
  1702. edge: "13",
  1703. firefox: "48",
  1704. safari: "10",
  1705. node: "6.5",
  1706. ios: "10",
  1707. samsung: "5",
  1708. electron: "1.2"
  1709. },
  1710. "es6.typed.int16-array": {
  1711. chrome: "51",
  1712. opera: "38",
  1713. edge: "13",
  1714. firefox: "48",
  1715. safari: "10",
  1716. node: "6.5",
  1717. ios: "10",
  1718. samsung: "5",
  1719. electron: "1.2"
  1720. },
  1721. "es6.typed.uint16-array": {
  1722. chrome: "51",
  1723. opera: "38",
  1724. edge: "13",
  1725. firefox: "48",
  1726. safari: "10",
  1727. node: "6.5",
  1728. ios: "10",
  1729. samsung: "5",
  1730. electron: "1.2"
  1731. },
  1732. "es6.typed.int32-array": {
  1733. chrome: "51",
  1734. opera: "38",
  1735. edge: "13",
  1736. firefox: "48",
  1737. safari: "10",
  1738. node: "6.5",
  1739. ios: "10",
  1740. samsung: "5",
  1741. electron: "1.2"
  1742. },
  1743. "es6.typed.uint32-array": {
  1744. chrome: "51",
  1745. opera: "38",
  1746. edge: "13",
  1747. firefox: "48",
  1748. safari: "10",
  1749. node: "6.5",
  1750. ios: "10",
  1751. samsung: "5",
  1752. electron: "1.2"
  1753. },
  1754. "es6.typed.float32-array": {
  1755. chrome: "51",
  1756. opera: "38",
  1757. edge: "13",
  1758. firefox: "48",
  1759. safari: "10",
  1760. node: "6.5",
  1761. ios: "10",
  1762. samsung: "5",
  1763. electron: "1.2"
  1764. },
  1765. "es6.typed.float64-array": {
  1766. chrome: "51",
  1767. opera: "38",
  1768. edge: "13",
  1769. firefox: "48",
  1770. safari: "10",
  1771. node: "6.5",
  1772. ios: "10",
  1773. samsung: "5",
  1774. electron: "1.2"
  1775. },
  1776. "es6.weak-map": {
  1777. chrome: "51",
  1778. opera: "38",
  1779. edge: "15",
  1780. firefox: "53",
  1781. safari: "9",
  1782. node: "6.5",
  1783. ios: "9",
  1784. samsung: "5",
  1785. electron: "1.2"
  1786. },
  1787. "es6.weak-set": {
  1788. chrome: "51",
  1789. opera: "38",
  1790. edge: "15",
  1791. firefox: "53",
  1792. safari: "9",
  1793. node: "6.5",
  1794. ios: "9",
  1795. samsung: "5",
  1796. electron: "1.2"
  1797. }
  1798. };
  1799. var corejs2BuiltIns = require$$0;
  1800. const {
  1801. isObjectProperty: isObjectProperty$1,
  1802. isArrayPattern,
  1803. isObjectPattern,
  1804. isAssignmentPattern: isAssignmentPattern$1,
  1805. isRestElement,
  1806. isIdentifier
  1807. } = core.types;
  1808. function shouldStoreRHSInTemporaryVariable(node) {
  1809. if (isArrayPattern(node)) {
  1810. const nonNullElements = node.elements.filter(element => element !== null);
  1811. if (nonNullElements.length > 1) return true;else return shouldStoreRHSInTemporaryVariable(nonNullElements[0]);
  1812. } else if (isObjectPattern(node)) {
  1813. const {
  1814. properties
  1815. } = node;
  1816. if (properties.length > 1) return true;else if (properties.length === 0) return false;else {
  1817. const firstProperty = properties[0];
  1818. if (isObjectProperty$1(firstProperty)) {
  1819. return shouldStoreRHSInTemporaryVariable(firstProperty.value);
  1820. } else {
  1821. return shouldStoreRHSInTemporaryVariable(firstProperty);
  1822. }
  1823. }
  1824. } else if (isAssignmentPattern$1(node)) {
  1825. return shouldStoreRHSInTemporaryVariable(node.left);
  1826. } else if (isRestElement(node)) {
  1827. if (isIdentifier(node.argument)) return true;
  1828. return shouldStoreRHSInTemporaryVariable(node.argument);
  1829. } else {
  1830. return false;
  1831. }
  1832. }
  1833. const {
  1834. isAssignmentPattern,
  1835. isObjectProperty
  1836. } = core.types;
  1837. {
  1838. const node = core.types.identifier("a");
  1839. const property = core.types.objectProperty(core.types.identifier("key"), node);
  1840. const pattern = core.types.objectPattern([property]);
  1841. var ZERO_REFS = core.types.isReferenced(node, property, pattern) ? 1 : 0;
  1842. }
  1843. var index = helperPluginUtils.declare((api, opts) => {
  1844. var _api$assumption, _api$assumption2, _api$assumption3, _api$assumption4;
  1845. api.assertVersion(7);
  1846. const targets = api.targets();
  1847. const supportsObjectAssign = !helperCompilationTargets.isRequired("es6.object.assign", targets, {
  1848. compatData: corejs2BuiltIns
  1849. });
  1850. const {
  1851. useBuiltIns = supportsObjectAssign,
  1852. loose = false
  1853. } = opts;
  1854. if (typeof loose !== "boolean") {
  1855. throw new Error(".loose must be a boolean, or undefined");
  1856. }
  1857. const ignoreFunctionLength = (_api$assumption = api.assumption("ignoreFunctionLength")) != null ? _api$assumption : loose;
  1858. const objectRestNoSymbols = (_api$assumption2 = api.assumption("objectRestNoSymbols")) != null ? _api$assumption2 : loose;
  1859. const pureGetters = (_api$assumption3 = api.assumption("pureGetters")) != null ? _api$assumption3 : loose;
  1860. const setSpreadProperties = (_api$assumption4 = api.assumption("setSpreadProperties")) != null ? _api$assumption4 : loose;
  1861. function getExtendsHelper(file) {
  1862. return useBuiltIns ? core.types.memberExpression(core.types.identifier("Object"), core.types.identifier("assign")) : file.addHelper("extends");
  1863. }
  1864. function hasRestElement(path) {
  1865. let foundRestElement = false;
  1866. visitRestElements(path, restElement => {
  1867. foundRestElement = true;
  1868. restElement.stop();
  1869. });
  1870. return foundRestElement;
  1871. }
  1872. function hasObjectPatternRestElement(path) {
  1873. let foundRestElement = false;
  1874. visitRestElements(path, restElement => {
  1875. if (restElement.parentPath.isObjectPattern()) {
  1876. foundRestElement = true;
  1877. restElement.stop();
  1878. }
  1879. });
  1880. return foundRestElement;
  1881. }
  1882. function visitRestElements(path, visitor) {
  1883. path.traverse({
  1884. Expression(path) {
  1885. const {
  1886. parent,
  1887. key
  1888. } = path;
  1889. if (isAssignmentPattern(parent) && key === "right" || isObjectProperty(parent) && parent.computed && key === "key") {
  1890. path.skip();
  1891. }
  1892. },
  1893. RestElement: visitor
  1894. });
  1895. }
  1896. function hasSpread(node) {
  1897. for (const prop of node.properties) {
  1898. if (core.types.isSpreadElement(prop)) {
  1899. return true;
  1900. }
  1901. }
  1902. return false;
  1903. }
  1904. function extractNormalizedKeys(node) {
  1905. const props = node.properties;
  1906. const keys = [];
  1907. let allLiteral = true;
  1908. let hasTemplateLiteral = false;
  1909. for (const prop of props) {
  1910. if (core.types.isIdentifier(prop.key) && !prop.computed) {
  1911. keys.push(core.types.stringLiteral(prop.key.name));
  1912. } else if (core.types.isTemplateLiteral(prop.key)) {
  1913. keys.push(core.types.cloneNode(prop.key));
  1914. hasTemplateLiteral = true;
  1915. } else if (core.types.isLiteral(prop.key)) {
  1916. keys.push(core.types.stringLiteral(String(prop.key.value)));
  1917. } else {
  1918. keys.push(core.types.cloneNode(prop.key));
  1919. allLiteral = false;
  1920. }
  1921. }
  1922. return {
  1923. keys,
  1924. allLiteral,
  1925. hasTemplateLiteral
  1926. };
  1927. }
  1928. function replaceImpureComputedKeys(properties, scope) {
  1929. const impureComputedPropertyDeclarators = [];
  1930. for (const propPath of properties) {
  1931. const key = propPath.get("key");
  1932. if (propPath.node.computed && !key.isPure()) {
  1933. const name = scope.generateUidBasedOnNode(key.node);
  1934. const declarator = core.types.variableDeclarator(core.types.identifier(name), key.node);
  1935. impureComputedPropertyDeclarators.push(declarator);
  1936. key.replaceWith(core.types.identifier(name));
  1937. }
  1938. }
  1939. return impureComputedPropertyDeclarators;
  1940. }
  1941. function removeUnusedExcludedKeys(path) {
  1942. const bindings = path.getOuterBindingIdentifierPaths();
  1943. Object.keys(bindings).forEach(bindingName => {
  1944. const bindingParentPath = bindings[bindingName].parentPath;
  1945. if (path.scope.getBinding(bindingName).references > ZERO_REFS || !bindingParentPath.isObjectProperty()) {
  1946. return;
  1947. }
  1948. bindingParentPath.remove();
  1949. });
  1950. }
  1951. function createObjectRest(path, file, objRef) {
  1952. const props = path.get("properties");
  1953. const last = props[props.length - 1];
  1954. core.types.assertRestElement(last.node);
  1955. const restElement = core.types.cloneNode(last.node);
  1956. last.remove();
  1957. const impureComputedPropertyDeclarators = replaceImpureComputedKeys(path.get("properties"), path.scope);
  1958. const {
  1959. keys,
  1960. allLiteral,
  1961. hasTemplateLiteral
  1962. } = extractNormalizedKeys(path.node);
  1963. if (keys.length === 0) {
  1964. return [impureComputedPropertyDeclarators, restElement.argument, core.types.callExpression(getExtendsHelper(file), [core.types.objectExpression([]), core.types.cloneNode(objRef)])];
  1965. }
  1966. let keyExpression;
  1967. if (!allLiteral) {
  1968. keyExpression = core.types.callExpression(core.types.memberExpression(core.types.arrayExpression(keys), core.types.identifier("map")), [file.addHelper("toPropertyKey")]);
  1969. } else {
  1970. keyExpression = core.types.arrayExpression(keys);
  1971. if (!hasTemplateLiteral && !core.types.isProgram(path.scope.block)) {
  1972. const program = path.findParent(path => path.isProgram());
  1973. const id = path.scope.generateUidIdentifier("excluded");
  1974. program.scope.push({
  1975. id,
  1976. init: keyExpression,
  1977. kind: "const"
  1978. });
  1979. keyExpression = core.types.cloneNode(id);
  1980. }
  1981. }
  1982. return [impureComputedPropertyDeclarators, restElement.argument, core.types.callExpression(file.addHelper(`objectWithoutProperties${objectRestNoSymbols ? "Loose" : ""}`), [core.types.cloneNode(objRef), keyExpression])];
  1983. }
  1984. function replaceRestElement(parentPath, paramPath, container) {
  1985. if (paramPath.isAssignmentPattern()) {
  1986. replaceRestElement(parentPath, paramPath.get("left"), container);
  1987. return;
  1988. }
  1989. if (paramPath.isArrayPattern() && hasRestElement(paramPath)) {
  1990. const elements = paramPath.get("elements");
  1991. for (let i = 0; i < elements.length; i++) {
  1992. replaceRestElement(parentPath, elements[i], container);
  1993. }
  1994. }
  1995. if (paramPath.isObjectPattern() && hasRestElement(paramPath)) {
  1996. const uid = parentPath.scope.generateUidIdentifier("ref");
  1997. const declar = core.types.variableDeclaration("let", [core.types.variableDeclarator(paramPath.node, uid)]);
  1998. if (container) {
  1999. container.push(declar);
  2000. } else {
  2001. parentPath.ensureBlock();
  2002. parentPath.get("body").unshiftContainer("body", declar);
  2003. }
  2004. paramPath.replaceWith(core.types.cloneNode(uid));
  2005. }
  2006. }
  2007. return {
  2008. name: "proposal-object-rest-spread",
  2009. inherits: syntaxObjectRestSpread__default['default'].default,
  2010. visitor: {
  2011. Function(path) {
  2012. const params = path.get("params");
  2013. const paramsWithRestElement = new Set();
  2014. const idsInRestParams = new Set();
  2015. for (let i = 0; i < params.length; ++i) {
  2016. const param = params[i];
  2017. if (hasRestElement(param)) {
  2018. paramsWithRestElement.add(i);
  2019. for (const name of Object.keys(param.getBindingIdentifiers())) {
  2020. idsInRestParams.add(name);
  2021. }
  2022. }
  2023. }
  2024. let idInRest = false;
  2025. const IdentifierHandler = function (path, functionScope) {
  2026. const name = path.node.name;
  2027. if (path.scope.getBinding(name) === functionScope.getBinding(name) && idsInRestParams.has(name)) {
  2028. idInRest = true;
  2029. path.stop();
  2030. }
  2031. };
  2032. let i;
  2033. for (i = 0; i < params.length && !idInRest; ++i) {
  2034. const param = params[i];
  2035. if (!paramsWithRestElement.has(i)) {
  2036. if (param.isReferencedIdentifier() || param.isBindingIdentifier()) {
  2037. IdentifierHandler(path, path.scope);
  2038. } else {
  2039. param.traverse({
  2040. "Scope|TypeAnnotation|TSTypeAnnotation": path => path.skip(),
  2041. "ReferencedIdentifier|BindingIdentifier": IdentifierHandler
  2042. }, path.scope);
  2043. }
  2044. }
  2045. }
  2046. if (!idInRest) {
  2047. for (let i = 0; i < params.length; ++i) {
  2048. const param = params[i];
  2049. if (paramsWithRestElement.has(i)) {
  2050. replaceRestElement(path, param);
  2051. }
  2052. }
  2053. } else {
  2054. const shouldTransformParam = idx => idx >= i - 1 || paramsWithRestElement.has(idx);
  2055. pluginTransformParameters.convertFunctionParams(path, ignoreFunctionLength, shouldTransformParam, replaceRestElement);
  2056. }
  2057. },
  2058. VariableDeclarator(path, file) {
  2059. if (!path.get("id").isObjectPattern()) {
  2060. return;
  2061. }
  2062. let insertionPath = path;
  2063. const originalPath = path;
  2064. visitRestElements(path.get("id"), path => {
  2065. if (!path.parentPath.isObjectPattern()) {
  2066. return;
  2067. }
  2068. if (shouldStoreRHSInTemporaryVariable(originalPath.node.id) && !core.types.isIdentifier(originalPath.node.init)) {
  2069. const initRef = path.scope.generateUidIdentifierBasedOnNode(originalPath.node.init, "ref");
  2070. originalPath.insertBefore(core.types.variableDeclarator(initRef, originalPath.node.init));
  2071. originalPath.replaceWith(core.types.variableDeclarator(originalPath.node.id, core.types.cloneNode(initRef)));
  2072. return;
  2073. }
  2074. let ref = originalPath.node.init;
  2075. const refPropertyPath = [];
  2076. let kind;
  2077. path.findParent(path => {
  2078. if (path.isObjectProperty()) {
  2079. refPropertyPath.unshift(path);
  2080. } else if (path.isVariableDeclarator()) {
  2081. kind = path.parentPath.node.kind;
  2082. return true;
  2083. }
  2084. });
  2085. const impureObjRefComputedDeclarators = replaceImpureComputedKeys(refPropertyPath, path.scope);
  2086. refPropertyPath.forEach(prop => {
  2087. const {
  2088. node
  2089. } = prop;
  2090. ref = core.types.memberExpression(ref, core.types.cloneNode(node.key), node.computed || core.types.isLiteral(node.key));
  2091. });
  2092. const objectPatternPath = path.findParent(path => path.isObjectPattern());
  2093. const [impureComputedPropertyDeclarators, argument, callExpression] = createObjectRest(objectPatternPath, file, ref);
  2094. if (pureGetters) {
  2095. removeUnusedExcludedKeys(objectPatternPath);
  2096. }
  2097. core.types.assertIdentifier(argument);
  2098. insertionPath.insertBefore(impureComputedPropertyDeclarators);
  2099. insertionPath.insertBefore(impureObjRefComputedDeclarators);
  2100. insertionPath = insertionPath.insertAfter(core.types.variableDeclarator(argument, callExpression))[0];
  2101. path.scope.registerBinding(kind, insertionPath);
  2102. if (objectPatternPath.node.properties.length === 0) {
  2103. objectPatternPath.findParent(path => path.isObjectProperty() || path.isVariableDeclarator()).remove();
  2104. }
  2105. });
  2106. },
  2107. ExportNamedDeclaration(path) {
  2108. const declaration = path.get("declaration");
  2109. if (!declaration.isVariableDeclaration()) return;
  2110. const hasRest = declaration.get("declarations").some(path => hasObjectPatternRestElement(path.get("id")));
  2111. if (!hasRest) return;
  2112. const specifiers = [];
  2113. for (const name of Object.keys(path.getOuterBindingIdentifiers(true))) {
  2114. specifiers.push(core.types.exportSpecifier(core.types.identifier(name), core.types.identifier(name)));
  2115. }
  2116. path.replaceWith(declaration.node);
  2117. path.insertAfter(core.types.exportNamedDeclaration(null, specifiers));
  2118. },
  2119. CatchClause(path) {
  2120. const paramPath = path.get("param");
  2121. replaceRestElement(path, paramPath);
  2122. },
  2123. AssignmentExpression(path, file) {
  2124. const leftPath = path.get("left");
  2125. if (leftPath.isObjectPattern() && hasRestElement(leftPath)) {
  2126. const nodes = [];
  2127. const refName = path.scope.generateUidBasedOnNode(path.node.right, "ref");
  2128. nodes.push(core.types.variableDeclaration("var", [core.types.variableDeclarator(core.types.identifier(refName), path.node.right)]));
  2129. const [impureComputedPropertyDeclarators, argument, callExpression] = createObjectRest(leftPath, file, core.types.identifier(refName));
  2130. if (impureComputedPropertyDeclarators.length > 0) {
  2131. nodes.push(core.types.variableDeclaration("var", impureComputedPropertyDeclarators));
  2132. }
  2133. const nodeWithoutSpread = core.types.cloneNode(path.node);
  2134. nodeWithoutSpread.right = core.types.identifier(refName);
  2135. nodes.push(core.types.expressionStatement(nodeWithoutSpread));
  2136. nodes.push(core.types.toStatement(core.types.assignmentExpression("=", argument, callExpression)));
  2137. nodes.push(core.types.expressionStatement(core.types.identifier(refName)));
  2138. path.replaceWithMultiple(nodes);
  2139. }
  2140. },
  2141. ForXStatement(path) {
  2142. const {
  2143. node,
  2144. scope
  2145. } = path;
  2146. const leftPath = path.get("left");
  2147. const left = node.left;
  2148. if (!hasObjectPatternRestElement(leftPath)) {
  2149. return;
  2150. }
  2151. if (!core.types.isVariableDeclaration(left)) {
  2152. const temp = scope.generateUidIdentifier("ref");
  2153. node.left = core.types.variableDeclaration("var", [core.types.variableDeclarator(temp)]);
  2154. path.ensureBlock();
  2155. const body = node.body;
  2156. if (body.body.length === 0 && path.isCompletionRecord()) {
  2157. body.body.unshift(core.types.expressionStatement(scope.buildUndefinedNode()));
  2158. }
  2159. body.body.unshift(core.types.expressionStatement(core.types.assignmentExpression("=", left, core.types.cloneNode(temp))));
  2160. } else {
  2161. const pattern = left.declarations[0].id;
  2162. const key = scope.generateUidIdentifier("ref");
  2163. node.left = core.types.variableDeclaration(left.kind, [core.types.variableDeclarator(key, null)]);
  2164. path.ensureBlock();
  2165. const body = node.body;
  2166. body.body.unshift(core.types.variableDeclaration(node.left.kind, [core.types.variableDeclarator(pattern, core.types.cloneNode(key))]));
  2167. }
  2168. },
  2169. ArrayPattern(path) {
  2170. const objectPatterns = [];
  2171. visitRestElements(path, path => {
  2172. if (!path.parentPath.isObjectPattern()) {
  2173. return;
  2174. }
  2175. const objectPattern = path.parentPath;
  2176. const uid = path.scope.generateUidIdentifier("ref");
  2177. objectPatterns.push(core.types.variableDeclarator(objectPattern.node, uid));
  2178. objectPattern.replaceWith(core.types.cloneNode(uid));
  2179. path.skip();
  2180. });
  2181. if (objectPatterns.length > 0) {
  2182. const statementPath = path.getStatementParent();
  2183. const statementNode = statementPath.node;
  2184. const kind = statementNode.type === "VariableDeclaration" ? statementNode.kind : "var";
  2185. statementPath.insertAfter(core.types.variableDeclaration(kind, objectPatterns));
  2186. }
  2187. },
  2188. ObjectExpression(path, file) {
  2189. if (!hasSpread(path.node)) return;
  2190. let helper;
  2191. if (setSpreadProperties) {
  2192. helper = getExtendsHelper(file);
  2193. } else {
  2194. try {
  2195. helper = file.addHelper("objectSpread2");
  2196. } catch (_unused) {
  2197. this.file.declarations["objectSpread2"] = null;
  2198. helper = file.addHelper("objectSpread");
  2199. }
  2200. }
  2201. let exp = null;
  2202. let props = [];
  2203. function make() {
  2204. const hadProps = props.length > 0;
  2205. const obj = core.types.objectExpression(props);
  2206. props = [];
  2207. if (!exp) {
  2208. exp = core.types.callExpression(helper, [obj]);
  2209. return;
  2210. }
  2211. if (pureGetters) {
  2212. if (hadProps) {
  2213. exp.arguments.push(obj);
  2214. }
  2215. return;
  2216. }
  2217. exp = core.types.callExpression(core.types.cloneNode(helper), [exp, ...(hadProps ? [core.types.objectExpression([]), obj] : [])]);
  2218. }
  2219. for (const prop of path.node.properties) {
  2220. if (core.types.isSpreadElement(prop)) {
  2221. make();
  2222. exp.arguments.push(prop.argument);
  2223. } else {
  2224. props.push(prop);
  2225. }
  2226. }
  2227. if (props.length) make();
  2228. path.replaceWith(exp);
  2229. }
  2230. }
  2231. };
  2232. });
  2233. exports.default = index;
  2234. //# sourceMappingURL=index.js.map