Skip to content

Commit e58c8e1

Browse files
committed
updated project structure
1 parent 25bda76 commit e58c8e1

File tree

9 files changed

+61
-29
lines changed

9 files changed

+61
-29
lines changed

.eslintrc.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,8 @@ module.exports = {
66
env: {
77
node: true
88
},
9-
extends: ['plugin:vue/vue3-recommended', 'eslint:recommended', '@vue/eslint-config-typescript/recommended', '@vue/eslint-config-prettier']
9+
extends: ['plugin:vue/vue3-recommended', 'eslint:recommended', '@vue/eslint-config-typescript/recommended', '@vue/eslint-config-prettier'],
10+
rules: {
11+
// '@typescript-eslint/ban-ts-comment': 'warn'
12+
}
1013
}

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
},
2121
"sideeffects": false,
2222
"scripts": {
23-
"prebuild": "rimraf dist .temp/types",
24-
"build": "tsc --emitDeclarationOnly --declaration --outDir .temp/types && rollup -c rollup.config.js",
23+
"prebuild": "rimraf dist",
24+
"build": "rollup -c rollup.config.js && rimraf dist/src",
2525
"docs:dev": "vuepress dev docs",
2626
"docs:build": "vuepress build docs",
2727
"test": "vitest",
@@ -63,7 +63,7 @@
6363
"@types/jest": "^29.4.0",
6464
"@typescript-eslint/eslint-plugin": "^5.38.1",
6565
"@typescript-eslint/parser": "^5.38.1",
66-
"@vitejs/plugin-vue": "latest",
66+
"@vitejs/plugin-vue": "^4.0.0",
6767
"@vitest/coverage-c8": "^0.23.4",
6868
"@vue/eslint-config-prettier": "^7.0.0",
6969
"@vue/eslint-config-typescript": "^11.0.2",
@@ -84,10 +84,11 @@
8484
"rollup-plugin-dts": "^4.2.2",
8585
"rollup-plugin-filesize": "^9.1.2",
8686
"rollup-plugin-typescript2": "^0.34.0",
87+
"rollup-plugin-vue": "^6.0.0",
8788
"simple-git-hooks": "^2.8.0",
8889
"typescript": "^4.8.4",
8990
"unplugin-vue-components": "^0.22.7",
90-
"vite": "^3.2.3",
91+
"vite": "^4.1.1",
9192
"vite-plugin-windicss": "^1.8.1",
9293
"vitest": "latest",
9394
"vue": "^3.0.0",

rollup.config.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import typescript from 'rollup-plugin-typescript2'
2+
import vue from 'rollup-plugin-vue'
23
import dts from 'rollup-plugin-dts'
34
import cleanup from 'rollup-plugin-cleanup'
45
import filesize from 'rollup-plugin-filesize'
@@ -31,18 +32,19 @@ export default [
3132
typescript({
3233
tsconfigOverride: {
3334
compilerOptions: {
34-
declaration: false
35+
declaration: true
3536
}
3637
}
3738
}),
39+
vue(),
3840
cleanup({ extensions: ['js', 'ts'] }),
3941
filesize()
4042
],
4143
external: ['vue']
4244
},
4345
{
44-
input: './.temp/types/src/index.d.ts',
45-
output: [{ file: 'dist/index.d.ts', format: 'es' }],
46+
input: 'dist/src/index.d.ts',
47+
output: [{ file: pkg.types, format: 'es' }],
4648
plugins: [dts()]
4749
}
4850
]

src/component.ts renamed to src/component.vue

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1+
<template>
2+
<input
3+
v-number="config"
4+
type="text"
5+
autocomplete="off"
6+
:value="maskedValue"
7+
class="v-number vue-number-format"
8+
@change="change"
9+
@input="input"
10+
/>
11+
</template>
12+
13+
<script lang="ts">
114
import { defineComponent } from 'vue'
215
import { cloneDeep, CustomInputEvent, Input } from './core'
316
import directive from './directive'
@@ -93,23 +106,15 @@ export default defineComponent({
93106
}
94107
},
95108
methods: {
96-
input(event: CustomInputEvent) {
97-
const { target } = event
109+
input(event: Event) {
110+
const { target } = event as CustomInputEvent
98111
this.maskedValue = target.value
99112
this.unmaskedValue = target.unmaskedValue
100113
this.$emit('input:model-value', this.emittedValue)
101114
},
102115
change() {
103116
this.$emit('update:model-value', this.emittedValue)
104117
}
105-
},
106-
template: `<input
107-
v-number="config"
108-
type="text"
109-
autocomplete="off"
110-
:value="maskedValue"
111-
class="v-number vue-number-format"
112-
@change="change"
113-
@input="input"
114-
/>`
118+
}
115119
})
120+
</script>

src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import component from './component'
1+
import component from './component.vue'
22
import directive from './directive'
33
import options, { Options as Config } from './options'
44
import NumberFormat from './number-format'

tests/vue-number-input.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { shallowMount } from '@vue/test-utils'
2-
import Component from '../src/component'
2+
import Component from '../src/component.vue'
33

44
test('test component', async () => {
55
expect(Component).toBeTruthy()

tsconfig.json

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,18 @@
1212
"rootDir": ".",
1313
"skipLibCheck": true,
1414
"noUnusedLocals": true,
15-
"baseUrl": "."
16-
}
15+
"declaration": true,
16+
"declarationDir": "./.temp/types",
17+
"baseUrl": ".",
18+
"paths": {
19+
"@/*": [
20+
"src/*"
21+
]
22+
},
23+
},
24+
"include": [
25+
"src/**/*.ts",
26+
"src/**/*.tsx",
27+
"src/**/*.vue"
28+
],
1729
}

vitest.config.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/// <reference types="vitest" />
22

33
import { defineConfig } from 'vitest/config'
4-
// import Vue from '@vitejs/plugin-vue'
4+
import Vue from '@vitejs/plugin-vue'
55

66
export default defineConfig({
7-
// plugins: [Vue()],
7+
plugins: [Vue()],
88
test: {
99
globals: true,
1010
environment: 'jsdom'

yarn.lock

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -637,7 +637,7 @@
637637
resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-2.2.2.tgz#df5d4464ad8cb97c9fb7407a1e5a3a34f716febb"
638638
integrity sha512-3C0s45VOwIFEDU+2ownJOpb0zD5fnjXWaHVOLID2R1mYOlAx3doNBFnNbVjaZvpke/L7IdPJXjpyYpXZToDKig==
639639

640-
"@vitejs/plugin-vue@latest":
640+
"@vitejs/plugin-vue@^4.0.0":
641641
version "4.0.0"
642642
resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz#93815beffd23db46288c787352a8ea31a0c03e5e"
643643
integrity sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==
@@ -4988,6 +4988,15 @@ rollup-plugin-typescript2@^0.34.0:
49884988
semver "^7.3.7"
49894989
tslib "^2.4.0"
49904990

4991+
rollup-plugin-vue@^6.0.0:
4992+
version "6.0.0"
4993+
resolved "https://registry.yarnpkg.com/rollup-plugin-vue/-/rollup-plugin-vue-6.0.0.tgz#e379e93e5ae9a8648522f698be2e452e8672aaf2"
4994+
integrity sha512-oVvUd84d5u73M2HYM3XsMDLtZRIA/tw2U0dmHlXU2UWP5JARYHzh/U9vcxaN/x/9MrepY7VH3pHFeOhrWpxs/Q==
4995+
dependencies:
4996+
debug "^4.1.1"
4997+
hash-sum "^2.0.0"
4998+
rollup-pluginutils "^2.8.2"
4999+
49915000
rollup-pluginutils@^2.8.2:
49925001
version "2.8.2"
49935002
resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e"
@@ -5726,7 +5735,7 @@ vite@^2.7.13:
57265735
optionalDependencies:
57275736
fsevents "~2.3.2"
57285737

5729-
"vite@^2.9.12 || ^3.0.0-0", vite@^3.2.3:
5738+
"vite@^2.9.12 || ^3.0.0-0":
57305739
version "3.2.5"
57315740
resolved "https://registry.yarnpkg.com/vite/-/vite-3.2.5.tgz#dee5678172a8a0ab3e547ad4148c3d547f90e86a"
57325741
integrity sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ==
@@ -5738,7 +5747,7 @@ vite@^2.7.13:
57385747
optionalDependencies:
57395748
fsevents "~2.3.2"
57405749

5741-
"vite@^3.0.0 || ^4.0.0":
5750+
"vite@^3.0.0 || ^4.0.0", vite@^4.1.1:
57425751
version "4.1.1"
57435752
resolved "https://registry.yarnpkg.com/vite/-/vite-4.1.1.tgz#3b18b81a4e85ce3df5cbdbf4c687d93ebf402e6b"
57445753
integrity sha512-LM9WWea8vsxhr782r9ntg+bhSFS06FJgCvvB0+8hf8UWtvaiDagKYWXndjfX6kGl74keHJUcpzrQliDXZlF5yg==

0 commit comments

Comments
 (0)