Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F95427421
import-builder.js
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sun, Dec 15, 16:06
Size
5 KB
Mime Type
text/x-c++
Expires
Tue, Dec 17, 16:06 (1 d, 23 h)
Engine
blob
Format
Raw Data
Handle
22980378
Attached To
rOACCT Open Access Compliance Check Tool (OACCT)
import-builder.js
View Options
"use strict"
;
Object
.
defineProperty
(
exports
,
"__esModule"
,
{
value
:
true
});
exports
.
default
=
void
0
;
var
_assert
=
_interopRequireDefault
(
require
(
"assert"
));
var
t
=
_interopRequireWildcard
(
require
(
"@babel/types"
));
function
_getRequireWildcardCache
()
{
if
(
typeof
WeakMap
!==
"function"
)
return
null
;
var
cache
=
new
WeakMap
();
_getRequireWildcardCache
=
function
()
{
return
cache
;
};
return
cache
;
}
function
_interopRequireWildcard
(
obj
)
{
if
(
obj
&&
obj
.
__esModule
)
{
return
obj
;
}
if
(
obj
===
null
||
typeof
obj
!==
"object"
&&
typeof
obj
!==
"function"
)
{
return
{
default
:
obj
};
}
var
cache
=
_getRequireWildcardCache
();
if
(
cache
&&
cache
.
has
(
obj
))
{
return
cache
.
get
(
obj
);
}
var
newObj
=
{};
var
hasPropertyDescriptor
=
Object
.
defineProperty
&&
Object
.
getOwnPropertyDescriptor
;
for
(
var
key
in
obj
)
{
if
(
Object
.
prototype
.
hasOwnProperty
.
call
(
obj
,
key
))
{
var
desc
=
hasPropertyDescriptor
?
Object
.
getOwnPropertyDescriptor
(
obj
,
key
)
:
null
;
if
(
desc
&&
(
desc
.
get
||
desc
.
set
))
{
Object
.
defineProperty
(
newObj
,
key
,
desc
);
}
else
{
newObj
[
key
]
=
obj
[
key
];
}
}
}
newObj
.
default
=
obj
;
if
(
cache
)
{
cache
.
set
(
obj
,
newObj
);
}
return
newObj
;
}
function
_interopRequireDefault
(
obj
)
{
return
obj
&&
obj
.
__esModule
?
obj
:
{
default
:
obj
};
}
class
ImportBuilder
{
constructor
(
importedSource
,
scope
,
hub
)
{
this
.
_statements
=
[];
this
.
_resultName
=
null
;
this
.
_scope
=
null
;
this
.
_hub
=
null
;
this
.
_scope
=
scope
;
this
.
_hub
=
hub
;
this
.
_importedSource
=
importedSource
;
}
done
()
{
return
{
statements
:
this
.
_statements
,
resultName
:
this
.
_resultName
};
}
import
()
{
this
.
_statements
.
push
(
t
.
importDeclaration
([],
t
.
stringLiteral
(
this
.
_importedSource
)));
return
this
;
}
require
()
{
this
.
_statements
.
push
(
t
.
expressionStatement
(
t
.
callExpression
(
t
.
identifier
(
"require"
),
[
t
.
stringLiteral
(
this
.
_importedSource
)])));
return
this
;
}
namespace
(
name
=
"namespace"
)
{
name
=
this
.
_scope
.
generateUidIdentifier
(
name
);
const
statement
=
this
.
_statements
[
this
.
_statements
.
length
-
1
];
(
0
,
_assert
.
default
)(
statement
.
type
===
"ImportDeclaration"
);
(
0
,
_assert
.
default
)(
statement
.
specifiers
.
length
===
0
);
statement
.
specifiers
=
[
t
.
importNamespaceSpecifier
(
name
)];
this
.
_resultName
=
t
.
cloneNode
(
name
);
return
this
;
}
default
(
name
)
{
name
=
this
.
_scope
.
generateUidIdentifier
(
name
);
const
statement
=
this
.
_statements
[
this
.
_statements
.
length
-
1
];
(
0
,
_assert
.
default
)(
statement
.
type
===
"ImportDeclaration"
);
(
0
,
_assert
.
default
)(
statement
.
specifiers
.
length
===
0
);
statement
.
specifiers
=
[
t
.
importDefaultSpecifier
(
name
)];
this
.
_resultName
=
t
.
cloneNode
(
name
);
return
this
;
}
named
(
name
,
importName
)
{
if
(
importName
===
"default"
)
return
this
.
default
(
name
);
name
=
this
.
_scope
.
generateUidIdentifier
(
name
);
const
statement
=
this
.
_statements
[
this
.
_statements
.
length
-
1
];
(
0
,
_assert
.
default
)(
statement
.
type
===
"ImportDeclaration"
);
(
0
,
_assert
.
default
)(
statement
.
specifiers
.
length
===
0
);
statement
.
specifiers
=
[
t
.
importSpecifier
(
name
,
t
.
identifier
(
importName
))];
this
.
_resultName
=
t
.
cloneNode
(
name
);
return
this
;
}
var
(
name
)
{
name
=
this
.
_scope
.
generateUidIdentifier
(
name
);
let
statement
=
this
.
_statements
[
this
.
_statements
.
length
-
1
];
if
(
statement
.
type
!==
"ExpressionStatement"
)
{
(
0
,
_assert
.
default
)(
this
.
_resultName
);
statement
=
t
.
expressionStatement
(
this
.
_resultName
);
this
.
_statements
.
push
(
statement
);
}
this
.
_statements
[
this
.
_statements
.
length
-
1
]
=
t
.
variableDeclaration
(
"var"
,
[
t
.
variableDeclarator
(
name
,
statement
.
expression
)]);
this
.
_resultName
=
t
.
cloneNode
(
name
);
return
this
;
}
defaultInterop
()
{
return
this
.
_interop
(
this
.
_hub
.
addHelper
(
"interopRequireDefault"
));
}
wildcardInterop
()
{
return
this
.
_interop
(
this
.
_hub
.
addHelper
(
"interopRequireWildcard"
));
}
_interop
(
callee
)
{
const
statement
=
this
.
_statements
[
this
.
_statements
.
length
-
1
];
if
(
statement
.
type
===
"ExpressionStatement"
)
{
statement
.
expression
=
t
.
callExpression
(
callee
,
[
statement
.
expression
]);
}
else
if
(
statement
.
type
===
"VariableDeclaration"
)
{
(
0
,
_assert
.
default
)(
statement
.
declarations
.
length
===
1
);
statement
.
declarations
[
0
].
init
=
t
.
callExpression
(
callee
,
[
statement
.
declarations
[
0
].
init
]);
}
else
{
_assert
.
default
.
fail
(
"Unexpected type."
);
}
return
this
;
}
prop
(
name
)
{
const
statement
=
this
.
_statements
[
this
.
_statements
.
length
-
1
];
if
(
statement
.
type
===
"ExpressionStatement"
)
{
statement
.
expression
=
t
.
memberExpression
(
statement
.
expression
,
t
.
identifier
(
name
));
}
else
if
(
statement
.
type
===
"VariableDeclaration"
)
{
(
0
,
_assert
.
default
)(
statement
.
declarations
.
length
===
1
);
statement
.
declarations
[
0
].
init
=
t
.
memberExpression
(
statement
.
declarations
[
0
].
init
,
t
.
identifier
(
name
));
}
else
{
_assert
.
default
.
fail
(
"Unexpected type:"
+
statement
.
type
);
}
return
this
;
}
read
(
name
)
{
this
.
_resultName
=
t
.
memberExpression
(
this
.
_resultName
,
t
.
identifier
(
name
));
}
}
exports
.
default
=
ImportBuilder
;
Event Timeline
Log In to Comment