* #7349 - Add "use strict" directive to transformed class bodies * Update tests (#7349) * Add test for program with use strict directive (#7349) * Update tests (#7349) * Update source mapping (#7349) * Add test for parent blockStatement with use strict directive (#7349) * Update tests (#7349) * Update tests (#7349) * Update tests (#7349) * Add test for constructor-only class (#7349) * Constructor only classes are strict, too But constructor only that use non-simple parameters must use a strict function wrapper. * Fix test * Wrapper not needed if class is already strict * Revert change to lerna.json
25 lines
682 B
JavaScript
25 lines
682 B
JavaScript
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
|
|
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }
|
|
|
|
let B = function B() {
|
|
"use strict";
|
|
};
|
|
|
|
let A =
|
|
/*#__PURE__*/
|
|
function (_B) {
|
|
"use strict";
|
|
|
|
_inheritsLoose(A, _B);
|
|
|
|
function A(track) {
|
|
var _this;
|
|
|
|
if (track !== undefined) _this = _B.call(this, track) || this;else _this = _B.call(this) || this;
|
|
return _assertThisInitialized(_this);
|
|
}
|
|
|
|
return A;
|
|
}(B);
|