diff --git a/.gitignore b/.gitignore index 9caf2cb..ba596fd 100644 --- a/.gitignore +++ b/.gitignore @@ -58,4 +58,4 @@ typings/ .env dist/ -libs/*.js +demo \ No newline at end of file diff --git a/README.md b/README.md index 3f2c13c..649b582 100644 --- a/README.md +++ b/README.md @@ -47,18 +47,22 @@ Vue.use(VueStringFilter) ```javascript import Vue from 'vue' -import append from 'vue-string-filter/libs/append' -import capitalize from 'vue-string-filter/libs/capitalize' -import cut from 'vue-string-filter/libs/cut' -import lowercase from 'vue-string-filter/libs/lowercase' -import remove_first from 'vue-string-filter/libs/remove-first' -import remove from 'vue-string-filter/libs/remove' -import replace_first from 'vue-string-filter/libs/replace-first' -import replace from 'vue-string-filter/libs/replace' -import slug from 'vue-string-filter/libs/slug' -import titlecase from 'vue-string-filter/libs/titlecase' -import truncate from 'vue-string-filter/libs/truncate' -import uppercase from 'vue-string-filter/libs/uppercase' +// using named exports +import { append, capitalize, cut... } from 'vue-string-filter' + +// directly +import append from 'vue-string-filter/dist/append' +import capitalize from 'vue-string-filter/dist/capitalize' +import cut from 'vue-string-filter/dist/cut' +import lowercase from 'vue-string-filter/dist/lowercase' +import remove_first from 'vue-string-filter/dist/remove-first' +import remove from 'vue-string-filter/dist/remove' +import replace_first from 'vue-string-filter/dist/replace-first' +import replace from 'vue-string-filter/dist/replace' +import slug from 'vue-string-filter/dist/slug' +import titlecase from 'vue-string-filter/dist/titlecase' +import truncate from 'vue-string-filter/dist/truncate' +import uppercase from 'vue-string-filter/dist/uppercase' Vue.filter('append', append) Vue.filter('capitalize', capitalize) diff --git a/check-size.js b/check-size.js index 04564dd..83c5c01 100644 --- a/check-size.js +++ b/check-size.js @@ -27,7 +27,7 @@ function readDirs (dirname, onDir, onError) { } setTimeout(() => { - readDirs(path.resolve('./lib/'), async (filepath, filename) => { + readDirs(path.resolve('./dist/'), async (filepath, filename) => { try { console.log(chalk.greenBright(`> ${filename}: ${bytes(gzipSize.fileSync(filepath))}`)) } catch (err) { diff --git a/package.json b/package.json index 711c239..026ceb4 100644 --- a/package.json +++ b/package.json @@ -9,18 +9,17 @@ "test:unit": "vue-cli-service test:unit", "test": "vue-cli-service test:unit", "lint": "vue-cli-service lint --fix", - "build:demo": "cross-env NODE_ENV=production vue-cli-service build", - "build:lib": "cross-env NODE_ENV=production tsc ./src/lib/VueStringFilter.ts -m CommonJS --outDir ./libs", + "build:demo": "cross-env NODE_ENV=production vue-cli-service build --dest demo", + "build:lib": "cross-env NODE_ENV=production tsc ./src/lib/index.ts -m CommonJS --outDir ./dist", "check:size": "node ./check-size.js", "dev": "vue-cli-service serve", "prepare": "yarn build:lib" }, - "main": "libs/VueStringFilter.js", - "module": "libs/VueStringFilter.js", - "unpkg": "libs/VueStringFilter.js", + "main": "dist/index.js", + "module": "dist/index.js", + "unpkg": "dist/index.js", "files": [ - "libs", - "types" + "dist" ], "dependencies": {}, "devDependencies": { @@ -82,7 +81,7 @@ "pre-commit": "lint-staged" } }, - "jsdelivr": "libs/VueStringFilter.js", + "jsdelivr": "dist/VueStringFilter.js", "keywords": [ "vue string", "vue string filter", @@ -99,5 +98,5 @@ "type": "git", "url": "https://github.com/mazipan/vue-string-filter.git" }, - "typings": "types/index.d.ts" + "typings": "dist/index.d.ts" } diff --git a/src/lib/index.ts b/src/lib/index.ts index 5c1025c..4481474 100644 --- a/src/lib/index.ts +++ b/src/lib/index.ts @@ -1,3 +1,4 @@ +import VueStringFilter from './VueStringFilter' export { default as lowercase } from './lowercase' export { default as uppercase } from './uppercase' export { default as capitalize } from './capitalize' @@ -10,3 +11,5 @@ export { default as removeFirst } from './remove-first' export { default as replace } from './replace' export { default as replaceFirst } from './replace-first' export { default as append } from './append' + +export default VueStringFilter diff --git a/tsconfig.json b/tsconfig.json index c64a768..2f73173 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -14,19 +14,13 @@ "esModuleInterop": true, "allowSyntheticDefaultImports": true, "sourceMap": true, + "rootDir": "src/lib", + "outDir": "dist", "baseUrl": ".", "types": [ "node", "jest" ], - "paths": { - "@/*": [ - "src/*" - ], - "@lib/*": [ - "src/lib/*" - ] - }, "lib": [ "esnext", "dom", @@ -37,12 +31,8 @@ "include": [ "src/lib/**/*.ts", "src/lib/**/*.tsx", - "src/lib/**/*.vue", - "src/**/*.ts", - "src/**/*.tsx", - "src/**/*.vue", - "tests/**/*.ts", - "tests/**/*.tsx" + "src/lib/**/*.vue" + ], "exclude": [ "node_modules" diff --git a/types/index.d.ts b/types/index.d.ts deleted file mode 100644 index 89ed0f5..0000000 --- a/types/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { PluginFunction, PluginObject, VueConstructor } from "vue"; - -export interface VueStringFilterOptions {} - -export interface VueStringFilter extends PluginObject { - install(Vue: VueConstructor): PluginFunction; -} - -export type AppDataReturnType = { - textInput: string; -};