1+ /**
2+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3+ *
4+ * This source code is licensed under the MIT license found in the
5+ * LICENSE file in the root directory of this source tree.
6+ *
7+ * @generated
8+ * @noformat
9+ * @noflow
10+ * @nolint
11+ *
12+ * This is a snapshot of the transform output for testing purposes.
13+ * To update, run: js1 test transform-snapshot-test.js -u
14+ *
15+ * Transform configuration:
16+ * - Hermes stable transform profile in development mode with unstable_preserveAsync enabled
17+ * - Options: {"dev":true,"unstable_transformProfile":"hermes-stable","customTransformOptions":{"unstable_preserveAsync":true}}
18+ */
19+
20+ var _interopRequireDefault = require ( "@babel/runtime/helpers/interopRequireDefault" ) ;
21+ Object . defineProperty ( exports , "__esModule" , {
22+ value : true
23+ } ) ;
24+ exports . LegacyComponent = exports . Dog = exports . Counter = exports . Animal = void 0 ;
25+ exports . ModernComponent = ModernComponent ;
26+ exports . MyClass = void 0 ;
27+ exports . asyncNumberGenerator = asyncNumberGenerator ;
28+ Object . defineProperty ( exports , "default" , {
29+ enumerable : true ,
30+ get : function ( ) {
31+ return _dataUtils . fetchData ;
32+ }
33+ } ) ;
34+ exports . getNestedValue = getNestedValue ;
35+ exports . loadModule = loadModule ;
36+ exports . matchEmoji = matchEmoji ;
37+ exports . mergeConfigs = mergeConfigs ;
38+ exports . parseDate = parseDate ;
39+ exports . processUser = processUser ;
40+ exports . safeJsonParse = safeJsonParse ;
41+ exports . sumPairs = sumPairs ;
42+ var _inherits2 = _interopRequireDefault ( require ( "@babel/runtime/helpers/inherits" ) ) ;
43+ var _setPrototypeOf2 = _interopRequireDefault ( require ( "@babel/runtime/helpers/setPrototypeOf" ) ) ;
44+ var _slicedToArray2 = _interopRequireDefault ( require ( "@babel/runtime/helpers/slicedToArray" ) ) ;
45+ var _classPrivateFieldLooseBase2 = _interopRequireDefault ( require ( "@babel/runtime/helpers/classPrivateFieldLooseBase" ) ) ;
46+ var _classPrivateFieldLooseKey2 = _interopRequireDefault ( require ( "@babel/runtime/helpers/classPrivateFieldLooseKey" ) ) ;
47+ var _react = _interopRequireWildcard ( require ( "react" ) ) ;
48+ var React = _react ;
49+ var _jsxRuntime = require ( "react/jsx-runtime" ) ;
50+ var _dataUtils = require ( "./data-utils" ) ;
51+ var _jsxFileName = "/absolute/path/to/input.js" ;
52+ function _interopRequireWildcard ( e , t ) { if ( "function" == typeof WeakMap ) var r = new WeakMap ( ) , n = new WeakMap ( ) ; return ( _interopRequireWildcard = function ( e , t ) { if ( ! t && e && e . __esModule ) return e ; var o , i , f = { __proto__ : null , default : e } ; if ( null === e || "object" != typeof e && "function" != typeof e ) return f ; if ( o = t ? n : r ) { if ( o . has ( e ) ) return o . get ( e ) ; o . set ( e , f ) ; } for ( var _t in e ) "default" !== _t && { } . hasOwnProperty . call ( e , _t ) && ( ( i = ( o = Object . defineProperty ) && Object . getOwnPropertyDescriptor ( e , _t ) ) && ( i . get || i . set ) ? o ( f , _t , i ) : f [ _t ] = e [ _t ] ) ; return f ; } ) ( e , t ) ; }
53+ function _wrapRegExp ( ) { _wrapRegExp = function ( e , r ) { return new BabelRegExp ( e , void 0 , r ) ; } ; var e = RegExp . prototype , r = new WeakMap ( ) ; function BabelRegExp ( e , t , p ) { var o = RegExp ( e , t ) ; return r . set ( o , p || r . get ( e ) ) , ( 0 , _setPrototypeOf2 . default ) ( o , BabelRegExp . prototype ) ; } function buildGroups ( e , t ) { var p = r . get ( t ) ; return Object . keys ( p ) . reduce ( function ( r , t ) { var o = p [ t ] ; if ( "number" == typeof o ) r [ t ] = e [ o ] ; else { for ( var i = 0 ; void 0 === e [ o [ i ] ] && i + 1 < o . length ; ) i ++ ; r [ t ] = e [ o [ i ] ] ; } return r ; } , Object . create ( null ) ) ; } return ( 0 , _inherits2 . default ) ( BabelRegExp , RegExp ) , BabelRegExp . prototype . exec = function ( r ) { var t = e . exec . call ( this , r ) ; if ( t ) { t . groups = buildGroups ( t , this ) ; var p = t . indices ; p && ( p . groups = buildGroups ( p , this ) ) ; } return t ; } , BabelRegExp . prototype [ Symbol . replace ] = function ( t , p ) { if ( "string" == typeof p ) { var o = r . get ( this ) ; return e [ Symbol . replace ] . call ( this , t , p . replace ( / \$ < ( [ ^ > ] + ) ( > | $ ) / g, function ( e , r , t ) { if ( "" === t ) return e ; var p = o [ r ] ; return Array . isArray ( p ) ? "$" + p . join ( "$" ) : "number" == typeof p ? "$" + p : "" ; } ) ) ; } if ( "function" == typeof p ) { var i = this ; return e [ Symbol . replace ] . call ( this , t , function ( ) { var e = arguments ; return "object" != typeof e [ e . length - 1 ] && ( e = [ ] . slice . call ( e ) ) . push ( buildGroups ( e , i ) ) , p . apply ( this , e ) ; } ) ; } return e [ Symbol . replace ] . call ( this , t , p ) ; } , _wrapRegExp . apply ( this , arguments ) ; }
54+ function _createForOfIteratorHelperLoose ( r , e ) { var t = "undefined" != typeof Symbol && r [ Symbol . iterator ] || r [ "@@iterator" ] ; if ( t ) return ( t = t . call ( r ) ) . next . bind ( t ) ; if ( Array . isArray ( r ) || ( t = _unsupportedIterableToArray ( r ) ) || e && r && "number" == typeof r . length ) { t && ( r = t ) ; var o = 0 ; return function ( ) { return o >= r . length ? { done : ! 0 } : { done : ! 1 , value : r [ o ++ ] } ; } ; } throw new TypeError ( "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method." ) ; }
55+ function _unsupportedIterableToArray ( r , a ) { if ( r ) { if ( "string" == typeof r ) return _arrayLikeToArray ( r , a ) ; var t = { } . toString . call ( r ) . slice ( 8 , - 1 ) ; return "Object" === t && r . constructor && ( t = r . constructor . name ) , "Map" === t || "Set" === t ? Array . from ( r ) : "Arguments" === t || / ^ (?: U i | I ) n t (?: 8 | 1 6 | 3 2 ) (?: C l a m p e d ) ? A r r a y $ / . test ( t ) ? _arrayLikeToArray ( r , a ) : void 0 ; } }
56+ function _arrayLikeToArray ( r , a ) { ( null == a || a > r . length ) && ( a = r . length ) ; for ( var e = 0 , n = Array ( a ) ; e < a ; e ++ ) n [ e ] = r [ e ] ; return n ; }
57+ var _count = ( 0 , _classPrivateFieldLooseKey2 . default ) ( "count" ) ;
58+ var _instances = ( 0 , _classPrivateFieldLooseKey2 . default ) ( "instances" ) ;
59+ var _increment = ( 0 , _classPrivateFieldLooseKey2 . default ) ( "increment" ) ;
60+ class Counter {
61+ constructor ( ) {
62+ Object . defineProperty ( this , _increment , {
63+ value : _increment2
64+ } ) ;
65+ Object . defineProperty ( this , _count , {
66+ writable : true ,
67+ value : 0
68+ } ) ;
69+ ( 0 , _classPrivateFieldLooseBase2 . default ) ( Counter , _instances ) [ _instances ] ++ ;
70+ }
71+ get value ( ) {
72+ return ( 0 , _classPrivateFieldLooseBase2 . default ) ( this , _count ) [ _count ] ;
73+ }
74+ increment ( ) {
75+ ( 0 , _classPrivateFieldLooseBase2 . default ) ( this , _increment ) [ _increment ] ( ) ;
76+ }
77+ static get instanceCount ( ) {
78+ return ( 0 , _classPrivateFieldLooseBase2 . default ) ( Counter , _instances ) [ _instances ] ;
79+ }
80+ }
81+ exports . Counter = Counter ;
82+ function _increment2 ( ) {
83+ ( 0 , _classPrivateFieldLooseBase2 . default ) ( this , _count ) [ _count ] ++ ;
84+ }
85+ Object . defineProperty ( Counter , _instances , {
86+ writable : true ,
87+ value : 0
88+ } ) ;
89+ async function * asyncNumberGenerator ( max ) {
90+ for ( var i = 0 ; i < max ; i ++ ) {
91+ await new Promise ( resolve => setTimeout ( resolve , 100 ) ) ;
92+ yield i ;
93+ }
94+ }
95+ async function fetchData ( url ) {
96+ var response = await fetch ( url ) ;
97+ var data = await response . json ( ) ;
98+ return {
99+ data
100+ } ;
101+ }
102+ function getNestedValue ( obj ) {
103+ var _obj$a$b$c , _obj$a ;
104+ return ( _obj$a$b$c = obj == null || ( _obj$a = obj . a ) == null || ( _obj$a = _obj$a . b ) == null ? void 0 : _obj$a . c ) != null ? _obj$a$b$c : 42 ;
105+ }
106+ class Animal {
107+ #age;
108+ constructor ( name , age ) {
109+ this . name = name ;
110+ this . #age = age ;
111+ }
112+ speak ( ) {
113+ return `${ this . name } makes a sound` ;
114+ }
115+ get age ( ) {
116+ return this . #age;
117+ }
118+ }
119+ exports . Animal = Animal ;
120+ class Dog extends Animal {
121+ constructor ( name , age , breed ) {
122+ super ( name , age ) ;
123+ this . breed = breed ;
124+ }
125+ speak ( ) {
126+ return `${ this . name } barks!` ;
127+ }
128+ async fetchTreats ( ) {
129+ await new Promise ( resolve => setTimeout ( resolve , 100 ) ) ;
130+ return [ 'bone' , 'biscuit' , 'toy' ] ;
131+ }
132+ }
133+ exports . Dog = Dog ;
134+ function processUser ( {
135+ name,
136+ age = 18 ,
137+ ...rest
138+ } ) {
139+ var _rest$city = rest . city ,
140+ city = _rest$city === void 0 ? 'Unknown' : _rest$city ;
141+ return `${ name } (${ age } ) from ${ city } ` ;
142+ }
143+ function mergeConfigs ( base , ...overrides ) {
144+ return {
145+ ...base ,
146+ ...overrides . reduce ( ( acc , o ) => ( {
147+ ...acc ,
148+ ...o
149+ } ) , { } )
150+ } ;
151+ }
152+ function sumPairs ( pairs ) {
153+ var total = 0 ;
154+ for ( var _iterator = _createForOfIteratorHelperLoose ( pairs ) , _step ; ! ( _step = _iterator ( ) ) . done ; ) {
155+ var _ref = _step . value ;
156+ var _ref2 = ( 0 , _slicedToArray2 . default ) ( _ref , 2 ) ;
157+ var a = _ref2 [ 0 ] ;
158+ var b = _ref2 [ 1 ] ;
159+ total += a + b ;
160+ }
161+ return total ;
162+ }
163+ function parseDate ( dateString ) {
164+ var regex = _wrapRegExp ( / ( \d { 4 } ) - ( \d { 2 } ) - ( \d { 2 } ) / , {
165+ year : 1 ,
166+ month : 2 ,
167+ day : 3
168+ } ) ;
169+ var match = dateString . match ( regex ) ;
170+ if ( match != null && match . groups ) {
171+ return {
172+ year : match . groups . year ,
173+ month : match . groups . month ,
174+ day : match . groups . day
175+ } ;
176+ }
177+ return null ;
178+ }
179+ function safeJsonParse ( input ) {
180+ try {
181+ return JSON . parse ( input ) ;
182+ } catch ( _unused ) {
183+ return null ;
184+ }
185+ }
186+ function matchEmoji ( text ) {
187+ var match = text . match ( / (?: [ # \* 0 - 9 \xA9 \xAE \u203C \u2049 \u2122 \u2139 \u2194 - \u2199 \u21A9 \u21AA \u231A \u231B \u2328 \u23CF \u23E9 - \u23F3 \u23F8 - \u23FA \u24C2 \u25AA \u25AB \u25B6 \u25C0 \u25FB - \u25FE \u2600 - \u2604 \u260E \u2611 \u2614 \u2615 \u2618 \u261D \u2620 \u2622 \u2623 \u2626 \u262A \u262E \u262F \u2638 - \u263A \u2640 \u2642 \u2648 - \u2653 \u265F \u2660 \u2663 \u2665 \u2666 \u2668 \u267B \u267E \u267F \u2692 - \u2697 \u2699 \u269B \u269C \u26A0 \u26A1 \u26A7 \u26AA \u26AB \u26B0 \u26B1 \u26BD \u26BE \u26C4 \u26C5 \u26C8 \u26CE \u26CF \u26D1 \u26D3 \u26D4 \u26E9 \u26EA \u26F0 - \u26F5 \u26F7 - \u26FA \u26FD \u2702 \u2705 \u2708 - \u270D \u270F \u2712 \u2714 \u2716 \u271D \u2721 \u2728 \u2733 \u2734 \u2744 \u2747 \u274C \u274E \u2753 - \u2755 \u2757 \u2763 \u2764 \u2795 - \u2797 \u27A1 \u27B0 \u27BF \u2934 \u2935 \u2B05 - \u2B07 \u2B1B \u2B1C \u2B50 \u2B55 \u3030 \u303D \u3297 \u3299 ] | \uD83C [ \uDC04 \uDCCF \uDD70 \uDD71 \uDD7E \uDD7F \uDD8E \uDD91 - \uDD9A \uDDE6 - \uDDFF \uDE01 \uDE02 \uDE1A \uDE2F \uDE32 - \uDE3A \uDE50 \uDE51 \uDF00 - \uDF21 \uDF24 - \uDF93 \uDF96 \uDF97 \uDF99 - \uDF9B \uDF9E - \uDFF0 \uDFF3 - \uDFF5 \uDFF7 - \uDFFF ] | \uD83D [ \uDC00 - \uDCFD \uDCFF - \uDD3D \uDD49 - \uDD4E \uDD50 - \uDD67 \uDD6F \uDD70 \uDD73 - \uDD7A \uDD87 \uDD8A - \uDD8D \uDD90 \uDD95 \uDD96 \uDDA4 \uDDA5 \uDDA8 \uDDB1 \uDDB2 \uDDBC \uDDC2 - \uDDC4 \uDDD1 - \uDDD3 \uDDDC - \uDDDE \uDDE1 \uDDE3 \uDDE8 \uDDEF \uDDF3 \uDDFA - \uDE4F \uDE80 - \uDEC5 \uDECB - \uDED2 \uDED5 - \uDED7 \uDEDC - \uDEE5 \uDEE9 \uDEEB \uDEEC \uDEF0 \uDEF3 - \uDEFC \uDFE0 - \uDFEB \uDFF0 ] | \uD83E [ \uDD0C - \uDD3A \uDD3C - \uDD45 \uDD47 - \uDDFF \uDE70 - \uDE7C \uDE80 - \uDE89 \uDE8F - \uDEC6 \uDECE - \uDEDC \uDEDF - \uDEE9 \uDEF0 - \uDEF8 ] ) / ) ;
188+ return match == null ? void 0 : match [ 0 ] ;
189+ }
190+ var MyClass = class {
191+ constructor ( value ) {
192+ this . value = value ;
193+ }
194+ } ;
195+ exports . MyClass = MyClass ;
196+ async function loadModule ( ) {
197+ var module = await import ( './some-module' ) ;
198+ return module . default ;
199+ }
200+ var LegacyComponent = exports . LegacyComponent = React . createClass ( {
201+ displayName : 'LegacyComponent' ,
202+ getInitialState ( ) {
203+ return {
204+ count : 0
205+ } ;
206+ } ,
207+ render ( ) {
208+ return ( 0 , _jsxRuntime . jsx ) ( "div" , {
209+ children : this . state . count
210+ } ) ;
211+ }
212+ } ) ;
213+ function ModernComponent ( {
214+ initialCount = 0
215+ } ) {
216+ var _useState = ( 0 , _react . useState ) ( initialCount ) ,
217+ _useState2 = ( 0 , _slicedToArray2 . default ) ( _useState , 2 ) ,
218+ count = _useState2 [ 0 ] ,
219+ setCount = _useState2 [ 1 ] ;
220+ var _useState3 = ( 0 , _react . useState ) ( Status . Active ) ,
221+ _useState4 = ( 0 , _slicedToArray2 . default ) ( _useState3 , 2 ) ,
222+ status = _useState4 [ 0 ] ,
223+ setStatus = _useState4 [ 1 ] ;
224+ ( 0 , _react . useEffect ) ( ( ) => {
225+ var timer = setInterval ( ( ) => {
226+ setCount ( c => c + 1 ) ;
227+ } , 1000 ) ;
228+ return ( ) => clearInterval ( timer ) ;
229+ } , [ ] ) ;
230+ async function handleAsyncClick ( ) {
231+ var data = await fetchData ( '/api/data' ) ;
232+ console . log ( data ) ;
233+ }
234+ var handleClick = async ( ) => {
235+ await handleAsyncClick ( ) ;
236+ setStatus ( Status . Pending ) ;
237+ } ;
238+ return ( 0 , _jsxRuntime . jsxs ) ( "div" , {
239+ children : [ ( 0 , _jsxRuntime . jsx ) ( "span" , {
240+ "data-testid" : "count" ,
241+ children : count
242+ } ) , ( 0 , _jsxRuntime . jsx ) ( "span" , {
243+ "data-testid" : "status" ,
244+ children : String ( status )
245+ } ) , ( 0 , _jsxRuntime . jsx ) ( "button" , {
246+ onClick : handleClick ,
247+ children : "Increment"
248+ } ) , ( 0 , _jsxRuntime . jsx ) ( LegacyComponent , { } ) ]
249+ } ) ;
250+ }
0 commit comments