ソースを参照

restructure: remove entires directory

Evan You 9 年 前
コミット
7b8b0e48f7

+ 1 - 1
build/alias.js

@@ -1,7 +1,7 @@
 const path = require('path')
 
 module.exports = {
-  vue: path.resolve(__dirname, '../src/entries/web-runtime-with-compiler'),
+  vue: path.resolve(__dirname, '../src/platforms/web/runtime-with-compiler'),
   compiler: path.resolve(__dirname, '../src/compiler'),
   core: path.resolve(__dirname, '../src/core'),
   shared: path.resolve(__dirname, '../src/shared'),

+ 25 - 17
build/config.js

@@ -22,19 +22,27 @@ const weexFactoryPlugin = {
   }
 }
 
-const resolve = p => path.resolve(__dirname, '../' + p)
+const aliases = require('./alias')
+const resolve = p => {
+  const base = p.split('/')[0]
+  if (aliases[base]) {
+    return path.resolve(aliases[base], p.slice(base.length + 1))
+  } else {
+    return path.resolve(__dirname, '../', p)
+  }
+}
 
 const builds = {
   // Runtime only (CommonJS). Used by bundlers e.g. Webpack & Browserify
   'web-runtime-cjs': {
-    entry: resolve('src/entries/web-runtime.js'),
+    entry: resolve('web/runtime.js'),
     dest: resolve('dist/vue.runtime.common.js'),
     format: 'cjs',
     banner
   },
   // Runtime+compiler CommonJS build (CommonJS)
   'web-full-cjs': {
-    entry: resolve('src/entries/web-runtime-with-compiler.js'),
+    entry: resolve('web/runtime-with-compiler.js'),
     dest: resolve('dist/vue.common.js'),
     format: 'cjs',
     alias: { he: './entity-decoder' },
@@ -43,14 +51,14 @@ const builds = {
   // Runtime only (ES Modules). Used by bundlers that support ES Modules,
   // e.g. Rollup & Webpack 2
   'web-runtime-esm': {
-    entry: resolve('src/entries/web-runtime.js'),
+    entry: resolve('web/runtime.js'),
     dest: resolve('dist/vue.runtime.esm.js'),
     format: 'es',
     banner
   },
   // Runtime+compiler CommonJS build (ES Modules)
   'web-full-esm': {
-    entry: resolve('src/entries/web-runtime-with-compiler.js'),
+    entry: resolve('web/runtime-with-compiler.js'),
     dest: resolve('dist/vue.esm.js'),
     format: 'es',
     alias: { he: './entity-decoder' },
@@ -58,7 +66,7 @@ const builds = {
   },
   // runtime-only build (Browser)
   'web-runtime-dev': {
-    entry: resolve('src/entries/web-runtime.js'),
+    entry: resolve('web/runtime.js'),
     dest: resolve('dist/vue.runtime.js'),
     format: 'umd',
     env: 'development',
@@ -66,7 +74,7 @@ const builds = {
   },
   // runtime-only production build (Browser)
   'web-runtime-prod': {
-    entry: resolve('src/entries/web-runtime.js'),
+    entry: resolve('web/runtime.js'),
     dest: resolve('dist/vue.runtime.min.js'),
     format: 'umd',
     env: 'production',
@@ -74,7 +82,7 @@ const builds = {
   },
   // Runtime+compiler development build (Browser)
   'web-full-dev': {
-    entry: resolve('src/entries/web-runtime-with-compiler.js'),
+    entry: resolve('web/runtime-with-compiler.js'),
     dest: resolve('dist/vue.js'),
     format: 'umd',
     env: 'development',
@@ -83,7 +91,7 @@ const builds = {
   },
   // Runtime+compiler production build  (Browser)
   'web-full-prod': {
-    entry: resolve('src/entries/web-runtime-with-compiler.js'),
+    entry: resolve('web/runtime-with-compiler.js'),
     dest: resolve('dist/vue.min.js'),
     format: 'umd',
     env: 'production',
@@ -92,26 +100,26 @@ const builds = {
   },
   // Web compiler (CommonJS).
   'web-compiler': {
-    entry: resolve('src/entries/web-compiler.js'),
+    entry: resolve('web/compiler.js'),
     dest: resolve('packages/vue-template-compiler/build.js'),
     format: 'cjs',
     external: Object.keys(require('../packages/vue-template-compiler/package.json').dependencies)
   },
   // Web server renderer (CommonJS).
   'web-server-renderer': {
-    entry: resolve('src/entries/web-server-renderer.js'),
+    entry: resolve('server/index.js'),
     dest: resolve('packages/vue-server-renderer/build.js'),
     format: 'cjs',
     external: Object.keys(require('../packages/vue-server-renderer/package.json').dependencies)
   },
   'web-server-renderer-webpack-server-plugin': {
-    entry: resolve('src/server/webpack-plugin/server.js'),
+    entry: resolve('server/webpack-plugin/server.js'),
     dest: resolve('packages/vue-server-renderer/server-plugin.js'),
     format: 'cjs',
     external: Object.keys(require('../packages/vue-server-renderer/package.json').dependencies)
   },
   'web-server-renderer-webpack-client-plugin': {
-    entry: resolve('src/server/webpack-plugin/client.js'),
+    entry: resolve('server/webpack-plugin/client.js'),
     dest: resolve('packages/vue-server-renderer/client-plugin.js'),
     format: 'cjs',
     external: Object.keys(require('../packages/vue-server-renderer/package.json').dependencies)
@@ -119,7 +127,7 @@ const builds = {
   // Weex runtime factory
   'weex-factory': {
     weex: true,
-    entry: resolve('src/entries/weex-factory.js'),
+    entry: resolve('weex/runtime-factory.js'),
     dest: resolve('packages/weex-vue-framework/factory.js'),
     format: 'cjs',
     plugins: [weexFactoryPlugin]
@@ -127,14 +135,14 @@ const builds = {
   // Weex runtime framework (CommonJS).
   'weex-framework': {
     weex: true,
-    entry: resolve('src/entries/weex-framework.js'),
+    entry: resolve('weex/framework.js'),
     dest: resolve('packages/weex-vue-framework/index.js'),
     format: 'cjs'
   },
   // Weex compiler (CommonJS). Used by Weex's Webpack loader.
   'weex-compiler': {
     weex: true,
-    entry: resolve('src/entries/weex-compiler.js'),
+    entry: resolve('weex/compiler.js'),
     dest: resolve('packages/weex-template-compiler/build.js'),
     format: 'cjs',
     external: Object.keys(require('../packages/weex-template-compiler/package.json').dependencies)
@@ -157,7 +165,7 @@ function genConfig (opts) {
       }),
       flow(),
       buble(),
-      alias(Object.assign({}, require('./alias'), opts.alias))
+      alias(Object.assign({}, aliases, opts.alias))
     ].concat(opts.plugins || [])
   }
 

+ 0 - 4
src/entries/web-compiler.js

@@ -1,4 +0,0 @@
-/* @flow */
-
-export { parseComponent } from 'sfc/parser'
-export { compile, compileToFunctions } from 'web/compiler/index'

+ 0 - 1
src/entries/weex-framework.js

@@ -1 +0,0 @@
-export * from 'weex/framework'

+ 4 - 0
src/platforms/web/compiler.js

@@ -0,0 +1,4 @@
+/* @flow */
+
+export { parseComponent } from 'sfc/parser'
+export { compile, compileToFunctions } from './compiler/index'

+ 5 - 4
src/entries/web-runtime-with-compiler.js → src/platforms/web/runtime-with-compiler.js

@@ -1,12 +1,13 @@
 /* @flow */
 
-import Vue from './web-runtime'
 import config from 'core/config'
-import { query } from 'web/util/index'
 import { warn, cached } from 'core/util/index'
 import { mark, measure } from 'core/util/perf'
-import { shouldDecodeNewlines } from 'web/util/compat'
-import { compileToFunctions } from 'web/compiler/index'
+
+import Vue from './runtime/index'
+import { query } from './util/index'
+import { shouldDecodeNewlines } from './util/compat'
+import { compileToFunctions } from './compiler/index'
 
 const idToTemplate = cached(id => {
   const el = query(id)

+ 5 - 0
src/platforms/web/runtime.js

@@ -0,0 +1,5 @@
+/* @flow */
+
+import Vue from './runtime/index'
+
+export default Vue

+ 4 - 3
src/entries/web-runtime.js → src/platforms/web/runtime/index.js

@@ -2,12 +2,9 @@
 
 import Vue from 'core/index'
 import config from 'core/config'
-import { patch } from 'web/runtime/patch'
 import { extend, noop } from 'shared/util'
 import { mountComponent } from 'core/instance/lifecycle'
 import { devtools, inBrowser, isChrome } from 'core/util/index'
-import platformDirectives from 'web/runtime/directives/index'
-import platformComponents from 'web/runtime/components/index'
 
 import {
   query,
@@ -18,6 +15,10 @@ import {
   isUnknownElement
 } from 'web/util/index'
 
+import { patch } from './patch'
+import platformDirectives from './directives/index'
+import platformComponents from './components/index'
+
 // install platform specific utils
 Vue.config.mustUseProp = mustUseProp
 Vue.config.isReservedTag = isReservedTag

+ 0 - 2
src/entries/weex-compiler.js → src/platforms/weex/compiler.js

@@ -1,3 +1 @@
-/* @flow */
-
 export { compile } from 'weex/compiler/index'

+ 1 - 1
src/entries/weex-factory.js → src/platforms/weex/runtime-factory.js

@@ -1,6 +1,6 @@
 // this entry is built and wrapped with a factory function
 // used to generate a fresh copy of Vue for every Weex instance.
 
-import Vue from 'weex/runtime/index'
+import Vue from './runtime/index'
 
 exports.Vue = Vue

+ 4 - 3
src/entries/web-server-renderer.js → src/server/index.js

@@ -2,11 +2,12 @@
 
 process.env.VUE_ENV = 'server'
 
-import { createRenderer as _createRenderer } from 'server/create-renderer'
-import { createBundleRendererCreator } from 'server/bundle-renderer/create-bundle-renderer'
-import { isUnaryTag, canBeLeftOpenTag } from 'web/compiler/util'
 import modules from 'web/server/modules/index'
 import baseDirectives from 'web/server/directives/index'
+import { isUnaryTag, canBeLeftOpenTag } from 'web/compiler/util'
+
+import { createRenderer as _createRenderer } from './create-renderer'
+import { createBundleRendererCreator } from './bundle-renderer/create-bundle-renderer'
 
 export function createRenderer (options?: Object = {}): {
   renderToString: Function,

+ 1 - 1
test/unit/features/options/render.spec.js

@@ -1,4 +1,4 @@
-import Vue from 'entries/web-runtime'
+import Vue from 'vue'
 
 describe('Options render', () => {
   it('basic usage', () => {

+ 1 - 1
test/unit/modules/compiler/compiler-options.spec.js

@@ -1,5 +1,5 @@
 import Vue from 'vue'
-import { compile } from 'entries/web-compiler'
+import { compile } from 'web/compiler'
 import { getAndRemoveAttr } from 'compiler/helpers'
 
 describe('compile options', () => {