maxxton-loadable-ts-transformer
Version:
TypeScript custom transformer for lodable-components SSR
21 lines (18 loc) • 1.14 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : {"default": mod};
};
Object.defineProperty(exports, "__esModule", {value: true});
var typescript_1 = __importDefault(require("typescript"));
var util_1 = require("../util");
var isReadyFunctionTemplate = "function __loadable_isReady__(self, props) {\n if (typeof __webpack_modules__ !== \"undefined\") {\n if( !!__webpack_modules__[self.resolve(props)]){\ntry\n{\n self.requireSync(self, props);\n return true;\n }\n catch(err){}\n} \n }\n \n return false;\n}";
function isReadyProperty(ctx) {
util_1.emitGlobalFunction(ctx, 'loadable:isReadyHelper', isReadyFunctionTemplate);
return util_1.createObjectMethod('isReady', ['props'], typescript_1.default.createBlock([
typescript_1.default.createReturn(typescript_1.default.createCall(typescript_1.default.createIdentifier('__loadable_isReady__'), undefined, [
typescript_1.default.createIdentifier('this'),
typescript_1.default.createIdentifier('props'),
])),
], true));
}
exports.default = isReadyProperty;