prepack
Version:
Execute a JS bundle, serialize global state and side effects to a snapshot that can be quickly restored.
41 lines (33 loc) • 1.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _index = require("../../values/index.js");
var _singletons = require("../../singletons.js");
/**
* Copyright (c) 2017-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
/* strict-local */
function _default(realm) {
// ECMA262 18.2.6.2
let name = "decodeURI";
return new _index.NativeFunctionValue(realm, name, name, 1, (context, [_encodedURI], argCount, NewTarget) => {
let encodedURI = _encodedURI;
if (NewTarget) throw realm.createErrorThrowCompletion(realm.intrinsics.TypeError, `${name} is not a constructor`);
encodedURI = encodedURI.throwIfNotConcrete(); // 1. Let uriString be ? ToString(encodedURI).
let uriString = _singletons.To.ToString(realm, encodedURI); // 2. Let reservedURISet be a String containing one instance of each code unit valid in uriReserved plus "#".
// 3. Return ? Decode(uriString, reservedURISet).
try {
return new _index.StringValue(realm, decodeURI(uriString));
} catch (e) {
throw realm.createErrorThrowCompletion(realm.intrinsics.URIError, e.message);
}
});
}
//# sourceMappingURL=decodeURI.js.map