express-tsx
Advanced tools
Comparing version 2.0.3 to 2.1.0
@@ -18,3 +18,2 @@ "use strict"; | ||
<meta http-equiv="X-UA-Compatible" content="ie=edge"/> | ||
${heads.join('')} | ||
<title>${title}</title> | ||
@@ -24,2 +23,3 @@ <script src="//cdn.bootcss.com/react/15.5.4/react.js"></script> | ||
<script src="//cdn.bootcss.com/require.js/2.3.3/require.min.js"></script> | ||
${heads.join('')} | ||
</head> | ||
@@ -26,0 +26,0 @@ <body> |
@@ -14,3 +14,3 @@ "use strict"; | ||
const ReactDOM = require("react-dom/server"); | ||
const ts = require("typescript"); | ||
const Compile_1 = require("./Compile"); | ||
class Options { | ||
@@ -24,12 +24,4 @@ constructor() { | ||
this.ssr = false; | ||
/**编译选项 */ | ||
this.compilerOptions = { | ||
allowJs: true, | ||
module: ts.ModuleKind.AMD, | ||
target: ts.ScriptTarget.ES5, | ||
jsx: ts.JsxEmit.React, | ||
outFile: 'bundle.js', | ||
inlineSourceMap: true, | ||
inlineSources: true, | ||
}; | ||
/**编译函数 */ | ||
this.compile = new Compile_1.Compile().compile; | ||
this.ssrRender = (Render, data, filepath, compile) => __awaiter(this, void 0, void 0, function* () { | ||
@@ -50,11 +42,5 @@ let app = React.createElement(Render, data); | ||
const configExtend = require("config-extend"); | ||
exports.getCompile = (compilerOptions) => (file) => new Promise((resolve, reject) => { | ||
ts.createProgram([file], compilerOptions).emit(undefined, (outFile, outputText) => { | ||
resolve(outputText); | ||
}); | ||
}); | ||
const App_1 = require("./App"); | ||
function render(options = exports.defaultOptions) { | ||
const { hotload, doctype, ssr, compilerOptions, ssrRender } = configExtend({}, exports.defaultOptions, options); | ||
let compile = exports.getCompile(compilerOptions); | ||
const { hotload, doctype, ssr, compile, ssrRender } = configExtend({}, exports.defaultOptions, options); | ||
return function (filepath, data, cb) { | ||
@@ -61,0 +47,0 @@ return __awaiter(this, void 0, void 0, function* () { |
{ | ||
"name": "express-tsx", | ||
"version": "2.0.3", | ||
"version": "2.1.0", | ||
"description": "express view tsx render", | ||
"main": "lib/index.js", | ||
"dependencies": { | ||
"chokidar": "^1.6.1", | ||
"config-extend": "^0.1.1" | ||
@@ -16,2 +17,3 @@ }, | ||
"devDependencies": { | ||
"@types/chokidar": "^1.6.0", | ||
"@types/express": "^4.0.35", | ||
@@ -31,4 +33,4 @@ "@types/node": "^7.0.12", | ||
"scripts": { | ||
"test": "ts-node example -F -P .", | ||
"debug": "ts-node --inspect example -F -P ." | ||
"test": "node example/ts.js", | ||
"pretest": "tsc" | ||
}, | ||
@@ -35,0 +37,0 @@ "files": [ |
@@ -8,2 +8,3 @@ import React = require('react'); | ||
import { Compile } from "./Compile"; | ||
export class Options { | ||
@@ -16,13 +17,5 @@ /**模板热更新 */ | ||
ssr?:boolean = false | ||
/**编译选项 */ | ||
compilerOptions?:ts.CompilerOptions = { | ||
allowJs:true, | ||
module:ts.ModuleKind.AMD, | ||
target:ts.ScriptTarget.ES5, | ||
jsx:ts.JsxEmit.React, | ||
outFile:'bundle.js', | ||
inlineSourceMap:true, | ||
inlineSources:true, | ||
} | ||
ssrRender ?= async(Render,data,filepath:string,compile:(filepath:string)=>Promise<string>)=>{ | ||
/**编译函数 */ | ||
compile? = new Compile().compile | ||
ssrRender ?= async(Render,data,filepath:string,compile:(filepath:string)=>(Promise<string>|string))=>{ | ||
let app = React.createElement(Render,data) | ||
@@ -41,14 +34,6 @@ let appModuleName = path.basename(filepath,path.extname(filepath)) | ||
export const getCompile = (compilerOptions:ts.CompilerOptions)=>(file:string):Promise<string>=> | ||
new Promise((resolve,reject)=>{ | ||
ts.createProgram([file],compilerOptions).emit(undefined,(outFile,outputText)=>{ | ||
resolve(outputText) | ||
}) | ||
}) | ||
import { BowserRender, WrapApp } from './App' | ||
export function render(options:Options=defaultOptions){ | ||
const { hotload, doctype, ssr, compilerOptions, ssrRender }:Options = configExtend({},defaultOptions,options) | ||
let compile = getCompile(compilerOptions) | ||
const { hotload, doctype, ssr, compile, ssrRender }:Options = configExtend({},defaultOptions,options) | ||
return async function(filepath:string, data:any, cb){ | ||
@@ -55,0 +40,0 @@ filepath = require.resolve(filepath) |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
16424
12
249
79
0
6
13
+ Addedchokidar@^1.6.1
+ Addedanymatch@1.3.2(transitive)
+ Addedarr-diff@2.0.04.0.0(transitive)
+ Addedarr-flatten@1.1.0(transitive)
+ Addedarr-union@3.1.0(transitive)
+ Addedarray-unique@0.2.10.3.2(transitive)
+ Addedassign-symbols@1.0.0(transitive)
+ Addedasync-each@1.0.6(transitive)
+ Addedatob@2.1.2(transitive)
+ Addedbase@0.11.2(transitive)
+ Addedbinary-extensions@1.13.1(transitive)
+ Addedbindings@1.5.0(transitive)
+ Addedbraces@1.8.52.3.2(transitive)
+ Addedcache-base@1.0.1(transitive)
+ Addedchokidar@1.7.0(transitive)
+ Addedclass-utils@0.3.6(transitive)
+ Addedcollection-visit@1.0.0(transitive)
+ Addedcomponent-emitter@1.3.1(transitive)
+ Addedcopy-descriptor@0.1.1(transitive)
+ Addedcore-util-is@1.0.3(transitive)
+ Addeddecode-uri-component@0.2.2(transitive)
+ Addeddefine-property@0.2.51.0.02.0.2(transitive)
+ Addedexpand-brackets@0.1.52.1.4(transitive)
+ Addedexpand-range@1.8.2(transitive)
+ Addedextend-shallow@2.0.13.0.2(transitive)
+ Addedextglob@0.3.22.0.4(transitive)
+ Addedfile-uri-to-path@1.0.0(transitive)
+ Addedfilename-regex@2.0.1(transitive)
+ Addedfill-range@2.2.44.0.0(transitive)
+ Addedfor-in@1.0.2(transitive)
+ Addedfor-own@0.1.5(transitive)
+ Addedfragment-cache@0.2.1(transitive)
+ Addedfsevents@1.2.13(transitive)
+ Addedget-value@2.0.6(transitive)
+ Addedglob-base@0.3.0(transitive)
+ Addedglob-parent@2.0.0(transitive)
+ Addedgraceful-fs@4.2.11(transitive)
+ Addedhas-value@0.3.11.0.0(transitive)
+ Addedhas-values@0.1.41.0.0(transitive)
+ Addedis-accessor-descriptor@1.0.1(transitive)
+ Addedis-binary-path@1.0.1(transitive)
+ Addedis-buffer@1.1.6(transitive)
+ Addedis-data-descriptor@1.0.1(transitive)
+ Addedis-descriptor@0.1.71.0.3(transitive)
+ Addedis-dotfile@1.0.3(transitive)
+ Addedis-equal-shallow@0.1.3(transitive)
+ Addedis-extendable@0.1.11.0.1(transitive)
+ Addedis-extglob@1.0.0(transitive)
+ Addedis-glob@2.0.1(transitive)
+ Addedis-number@2.1.03.0.04.0.0(transitive)
+ Addedis-plain-object@2.0.4(transitive)
+ Addedis-posix-bracket@0.1.1(transitive)
+ Addedis-primitive@2.0.0(transitive)
+ Addedis-windows@1.0.2(transitive)
+ Addedisarray@1.0.0(transitive)
+ Addedisobject@2.1.03.0.1(transitive)
+ Addedkind-of@3.2.24.0.06.0.3(transitive)
+ Addedmap-cache@0.2.2(transitive)
+ Addedmap-visit@1.0.0(transitive)
+ Addedmath-random@1.0.4(transitive)
+ Addedmicromatch@2.3.113.1.10(transitive)
+ Addedmixin-deep@1.3.2(transitive)
+ Addednan@2.22.2(transitive)
+ Addednanomatch@1.2.13(transitive)
+ Addednormalize-path@2.1.1(transitive)
+ Addedobject-copy@0.1.0(transitive)
+ Addedobject-visit@1.0.1(transitive)
+ Addedobject.omit@2.0.1(transitive)
+ Addedobject.pick@1.3.0(transitive)
+ Addedparse-glob@3.0.4(transitive)
+ Addedpascalcase@0.1.1(transitive)
+ Addedpath-is-absolute@1.0.1(transitive)
+ Addedposix-character-classes@0.1.1(transitive)
+ Addedpreserve@0.2.0(transitive)
+ Addedprocess-nextick-args@2.0.1(transitive)
+ Addedrandomatic@3.1.1(transitive)
+ Addedreadable-stream@2.3.8(transitive)
+ Addedreaddirp@2.2.1(transitive)
+ Addedregex-cache@0.4.4(transitive)
+ Addedregex-not@1.0.2(transitive)
+ Addedremove-trailing-separator@1.1.0(transitive)
+ Addedrepeat-element@1.1.4(transitive)
+ Addedrepeat-string@1.6.1(transitive)
+ Addedresolve-url@0.2.1(transitive)
+ Addedret@0.1.15(transitive)
+ Addedsafe-buffer@5.1.2(transitive)
+ Addedsafe-regex@1.1.0(transitive)
+ Addedset-value@2.0.1(transitive)
+ Addedsnapdragon@0.8.2(transitive)
+ Addedsnapdragon-node@2.1.1(transitive)
+ Addedsnapdragon-util@3.0.1(transitive)
+ Addedsource-map@0.5.7(transitive)
+ Addedsource-map-resolve@0.5.3(transitive)
+ Addedsource-map-url@0.4.1(transitive)
+ Addedsplit-string@3.1.0(transitive)
+ Addedstatic-extend@0.1.2(transitive)
+ Addedstring_decoder@1.1.1(transitive)
+ Addedto-object-path@0.3.0(transitive)
+ Addedto-regex@3.0.2(transitive)
+ Addedto-regex-range@2.1.1(transitive)
+ Addedunion-value@1.0.1(transitive)
+ Addedunset-value@1.0.0(transitive)
+ Addedurix@0.1.0(transitive)
+ Addeduse@3.1.1(transitive)
+ Addedutil-deprecate@1.0.2(transitive)