├── .gitignore ├── .prettierignore ├── .eslintignore ├── logo.png ├── generator ├── templates │ ├── nvw │ │ └── src │ │ │ ├── styles │ │ │ ├── style-two.styl │ │ │ ├── style-two.css │ │ │ ├── style-two.less │ │ │ ├── style-two.scss │ │ │ ├── style-one.styl │ │ │ ├── style-one.css │ │ │ ├── style-one.less │ │ │ └── style-one.scss │ │ │ ├── assets │ │ │ └── logo.png │ │ │ ├── components │ │ │ ├── icon.png │ │ │ ├── HelloWorld.ios.vue │ │ │ ├── HelloWorld.android.vue │ │ │ ├── HelloWorld.native.vue │ │ │ └── HelloWorld.vue │ │ │ ├── package.json │ │ │ ├── router.js │ │ │ ├── main.native.js │ │ │ ├── main.js │ │ │ ├── views │ │ │ ├── About.vue │ │ │ └── Home.vue │ │ │ └── App.vue │ ├── simple │ │ └── src │ │ │ ├── styles │ │ │ ├── style-two.styl │ │ │ ├── style-two.css │ │ │ ├── style-two.less │ │ │ ├── style-two.scss │ │ │ ├── style-one.styl │ │ │ ├── style-one.css │ │ │ ├── style-one.less │ │ │ └── style-one.scss │ │ │ ├── assets │ │ │ └── logo.png │ │ │ ├── components │ │ │ ├── icon.png │ │ │ ├── HelloWorld.ios.vue │ │ │ ├── HelloWorld.android.vue │ │ │ ├── HelloWorld.native.vue │ │ │ └── HelloWorld.vue │ │ │ ├── package.json │ │ │ ├── main.js │ │ │ ├── main.native.js │ │ │ ├── router.js │ │ │ ├── views │ │ │ ├── About.vue │ │ │ └── Home.vue │ │ │ └── App.vue │ ├── App_Resources │ │ ├── iOS │ │ │ ├── Assets.xcassets │ │ │ │ ├── Contents.json │ │ │ │ ├── AppIcon.appiconset │ │ │ │ │ ├── icon-29.png │ │ │ │ │ ├── icon-40.png │ │ │ │ │ ├── icon-76.png │ │ │ │ │ ├── icon-1024.png │ │ │ │ │ ├── icon-29@2x.png │ │ │ │ │ ├── icon-29@3x.png │ │ │ │ │ ├── icon-40@2x.png │ │ │ │ │ ├── icon-40@3x.png │ │ │ │ │ ├── icon-60@2x.png │ │ │ │ │ ├── icon-60@3x.png │ │ │ │ │ ├── icon-76@2x.png │ │ │ │ │ ├── icon-83.5@2x.png │ │ │ │ │ └── Contents.json │ │ │ │ ├── LaunchImage.launchimage │ │ │ │ │ ├── Default.png │ │ │ │ │ ├── Default@2x.png │ │ │ │ │ ├── Default-1125h.png │ │ │ │ │ ├── Default-568h@2x.png │ │ │ │ │ ├── Default-667h@2x.png │ │ │ │ │ ├── Default-736h@3x.png │ │ │ │ │ ├── Default-Landscape.png │ │ │ │ │ ├── Default-Portrait.png │ │ │ │ │ ├── Default-Landscape-X.png │ │ │ │ │ ├── Default-Landscape@2x.png │ │ │ │ │ ├── Default-Landscape@3x.png │ │ │ │ │ ├── Default-Portrait@2x.png │ │ │ │ │ └── Contents.json │ │ │ │ ├── LaunchScreen.Center.imageset │ │ │ │ │ ├── LaunchScreen-Center.png │ │ │ │ │ ├── LaunchScreen-Center@2x.png │ │ │ │ │ └── Contents.json │ │ │ │ └── LaunchScreen.AspectFill.imageset │ │ │ │ │ ├── LaunchScreen-AspectFill.png │ │ │ │ │ ├── LaunchScreen-AspectFill@2x.png │ │ │ │ │ └── Contents.json │ │ │ ├── build.xcconfig │ │ │ ├── Info.plist │ │ │ └── LaunchScreen.storyboard │ │ └── Android │ │ │ ├── values-v21 │ │ │ ├── colors.xml │ │ │ ├── strings.xml │ │ │ └── styles.xml │ │ │ ├── drawable-hdpi │ │ │ ├── icon.png │ │ │ ├── logo.png │ │ │ └── background.png │ │ │ ├── drawable-ldpi │ │ │ ├── icon.png │ │ │ ├── logo.png │ │ │ └── background.png │ │ │ ├── drawable-mdpi │ │ │ ├── icon.png │ │ │ ├── logo.png │ │ │ └── background.png │ │ │ ├── drawable-xhdpi │ │ │ ├── icon.png │ │ │ ├── logo.png │ │ │ └── background.png │ │ │ ├── drawable-xxhdpi │ │ │ ├── icon.png │ │ │ ├── logo.png │ │ │ └── background.png │ │ │ ├── drawable-xxxhdpi │ │ │ ├── icon.png │ │ │ ├── logo.png │ │ │ └── background.png │ │ │ ├── values │ │ │ ├── strings.xml │ │ │ ├── colors.xml │ │ │ └── styles.xml │ │ │ ├── app.gradle │ │ │ ├── drawable-nodpi │ │ │ └── splash_screen.xml │ │ │ └── AndroidManifest.xml │ └── vue-sfc-template.vue ├── README.md └── index.js ├── .prettierrc ├── ui.js ├── .eslintrc.js ├── tslint.json ├── LICENSE ├── lib ├── scripts │ └── webpack-maintenance.js └── tslint.js ├── prompts.js ├── package.json ├── README.md └── index.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .vscode -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | generator/templates/* -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | generator/templates/ -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/logo.png -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-two.styl: -------------------------------------------------------------------------------- 1 | ActionBar 2 | color #000000 3 | 4 | .w-navbar 5 | color #000000 -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-two.styl: -------------------------------------------------------------------------------- 1 | ActionBar 2 | color #000000 3 | 4 | .w-navbar 5 | color #000000 -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-two.css: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #000000; 3 | } 4 | 5 | .w-navbar { 6 | color: #000000; 7 | } -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-two.less: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #000000; 3 | } 4 | 5 | .w-navbar { 6 | color: #000000; 7 | } -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-two.scss: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #000000; 3 | } 4 | 5 | .w-navbar { 6 | color: #000000; 7 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-two.css: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #000000; 3 | } 4 | 5 | .w-navbar { 6 | color: #000000; 7 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-two.less: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #000000; 3 | } 4 | 5 | .w-navbar { 6 | color: #000000; 7 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-two.scss: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #000000; 3 | } 4 | 5 | .w-navbar { 6 | color: #000000; 7 | } -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /generator/templates/nvw/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/nvw/src/assets/logo.png -------------------------------------------------------------------------------- /generator/templates/nvw/src/components/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/nvw/src/components/icon.png -------------------------------------------------------------------------------- /generator/templates/simple/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/simple/src/assets/logo.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/values-v21/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3d5afe 4 | -------------------------------------------------------------------------------- /generator/templates/simple/src/components/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/simple/src/components/icon.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-hdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-hdpi/icon.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-hdpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-hdpi/logo.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-ldpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-ldpi/icon.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-ldpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-ldpi/logo.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-mdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-mdpi/icon.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-mdpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-mdpi/logo.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xhdpi/icon.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xhdpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xhdpi/logo.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xxhdpi/icon.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xxhdpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xxhdpi/logo.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xxxhdpi/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xxxhdpi/icon.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xxxhdpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xxxhdpi/logo.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-hdpi/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-hdpi/background.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-ldpi/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-ldpi/background.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-mdpi/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-mdpi/background.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xhdpi/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xhdpi/background.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xxhdpi/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xxhdpi/background.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-xxxhdpi/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/Android/drawable-xxxhdpi/background.png -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 160, 3 | "singleQuote": true, 4 | "trailingComma": "none", 5 | "tabWidth": 2, 6 | "semicolons": true, 7 | "bracketSpacing": true, 8 | "arrowParens": "always", 9 | "useTabs": false 10 | } -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-76.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-1024.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default@2x.png -------------------------------------------------------------------------------- /generator/templates/nvw/src/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "android": { 3 | "v8Flags": "--expose_gc", 4 | "markingMode": "none" 5 | }, 6 | "main": "main.native", 7 | "name": "<%- applicationName %>", 8 | "version": "<%- applicationVersion %>" 9 | } 10 | -------------------------------------------------------------------------------- /generator/templates/simple/src/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "android": { 3 | "v8Flags": "--expose_gc", 4 | "markingMode": "none" 5 | }, 6 | "main": "main.native", 7 | "name": "<%- applicationName %>", 8 | "version": "<%- applicationVersion %>" 9 | } 10 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | <%- applicationName %> 4 | <%- applicationName %> 5 | 6 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-1125h.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-1125h.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-568h@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-667h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-667h@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-736h@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-736h@3x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/values-v21/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | <%- applicationName %> 4 | <%- applicationName %> 5 | 6 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Portrait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Portrait.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape-X.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape-X.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Landscape@3x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Portrait@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchImage.launchimage/Default-Portrait@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/LaunchScreen-Center.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/LaunchScreen-Center.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/LaunchScreen-Center@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/LaunchScreen-Center@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/LaunchScreen-AspectFill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/LaunchScreen-AspectFill.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/LaunchScreen-AspectFill@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nativescript-vue/vue-cli-plugin-nativescript-vue/HEAD/generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/LaunchScreen-AspectFill@2x.png -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/app.gradle: -------------------------------------------------------------------------------- 1 | // Add your native dependencies here: 2 | 3 | android { 4 | defaultConfig { 5 | generatedDensities = [] 6 | applicationId = "__PACKAGE__" 7 | } 8 | aaptOptions { 9 | additionalParameters "--no-version-vectors" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #F5F5F5 4 | #757575 5 | #33B5E5 6 | #272734 7 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/drawable-nodpi/splash_screen.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.Center.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "LaunchScreen-Center.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "LaunchScreen-Center@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/LaunchScreen.AspectFill.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "LaunchScreen-AspectFill.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "LaunchScreen-AspectFill@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/build.xcconfig: -------------------------------------------------------------------------------- 1 | // You can add custom settings here 2 | // for example you can uncomment the following line to force distribution code signing 3 | // CODE_SIGN_IDENTITY = iPhone Distribution 4 | // To build for device with Xcode 8 you need to specify your development team. More info: https://developer.apple.com/library/prerelease/content/releasenotes/DeveloperTools/RN-Xcode/Introduction.html 5 | // DEVELOPMENT_TEAM = YOUR_TEAM_ID; 6 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 7 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 8 | -------------------------------------------------------------------------------- /ui.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable no-unused-vars */ 2 | module.exports = (api) => { 3 | api.describeConfig({ 4 | // Unique ID for the config 5 | id: 'org.nativescript-vue.plugin.cli', 6 | // Displayed name 7 | name: 'Nativescript-Vue CLI 3 Plugin', 8 | // Shown below the name 9 | description: 'A vue cli 3.x plugin for NativeScript-Vue', 10 | // "More info" link 11 | link: 'https://github.com/nativescript-vue/vue-cli-plugin-nativescript-vue#readme', 12 | onRead: ({ data, cwd }) => ({ 13 | // 14 | }), 15 | onWrite: ({ prompts, answers, data, files, cwd, api }) => { 16 | // 17 | } 18 | }); 19 | }; 20 | -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "root": true, 3 | "env": { 4 | "node": true 5 | }, 6 | "extends": [ 7 | "eslint:recommended", 8 | "plugin:vue/recommended", 9 | "@vue/airbnb", 10 | "@vue/prettier" 11 | ], 12 | "rules": { 13 | "import/extensions": 0, 14 | "global-require": 0, 15 | "eol-last": 0, 16 | "no-param-reassign": 0, 17 | "object-curly-newline": 0, 18 | "no-plusplus": 0, 19 | "max-len": [ 20 | 2, 21 | { 22 | "code": 160 23 | } 24 | ], 25 | "prefer-destructuring": [ 26 | 2, 27 | { 28 | "object": true, 29 | "array": false 30 | } 31 | ] 32 | }, 33 | "parserOptions": { 34 | "parser": "babel-eslint" 35 | } 36 | } -------------------------------------------------------------------------------- /tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "defaultSeverity": "warning", 3 | "extends": [ 4 | "tslint:recommended" 5 | ], 6 | "linterOptions": { 7 | "exclude": [ 8 | "node_modules/**", 9 | "dist/**" 10 | ] 11 | }, 12 | "rules": { 13 | "quotemark": [ 14 | true, 15 | "single" 16 | ], 17 | "indent": [ 18 | true, 19 | "spaces", 20 | 2 21 | ], 22 | "interface-name": false, 23 | "ordered-imports": false, 24 | "object-literal-sort-keys": false, 25 | "no-consecutive-blank-lines": false, 26 | "space-before-function-paren": true, 27 | "trailing-comma": false 28 | }, 29 | "exclude": [ 30 | "node_modules", 31 | "dist" 32 | ] 33 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/main.js: -------------------------------------------------------------------------------- 1 | --- 2 | extend: '@vue/cli-service/generator/template/src/main.js' 3 | replace: 4 | - !!js/regexp /import Vue from 'vue'/ 5 | - !!js/regexp /import App from './App.vue'/ 6 | - !!js/regexp /Vue.config.productionTip = false/ 7 | - !!js/regexp /h => h\(App\),/ 8 | - !!js/regexp /}\)\.\$mount\('#app'\)/ 9 | --- 10 | 11 | <%# REPLACE %> 12 | import Vue from 'vue'; 13 | <%# END_REPLACE %> 14 | 15 | <%# REPLACE %> 16 | import App from '~/App.vue'; 17 | <%# END_REPLACE %> 18 | 19 | <%# REPLACE %> 20 | Vue.config.productionTip = false; 21 | <%# END_REPLACE %> 22 | 23 | <%# REPLACE %> 24 | (h) => h(App), 25 | <%# END_REPLACE %> 26 | 27 | <%# REPLACE %> 28 | }).$mount('#app'); 29 | <%# END_REPLACE %> -------------------------------------------------------------------------------- /generator/templates/nvw/src/router.js: -------------------------------------------------------------------------------- 1 | --- 2 | extend: '@vue/cli-service/generator/router.js' 3 | replace: 4 | - !!js/regexp /import Vue from 'vue'/ 5 | - !!js/regexp /import Router from 'vue-router'/ 6 | - !!js/regexp /Vue.use\(Router\)/ 7 | - !!js/regexp /import Home from './views/Home.vue'/ 8 | - !!js/regexp /'./views/About.vue'\)/ 9 | - !!js/regexp /\}\)/ 10 | --- 11 | 12 | <%# REPLACE %> 13 | import Vue from 'vue'; 14 | <%# END_REPLACE %> 15 | 16 | <%# REPLACE %> 17 | import Router from 'vue-router'; 18 | <%# END_REPLACE %> 19 | 20 | <%# REPLACE %> 21 | Vue.use(Router); 22 | <%# END_REPLACE %> 23 | 24 | <%# REPLACE %> 25 | import Home from '~/views/Home.vue'; 26 | <%# END_REPLACE %> 27 | 28 | <%# REPLACE %> 29 | '~/views/About.vue'), 30 | <%# END_REPLACE %> 31 | 32 | <%# REPLACE %> 33 | }); 34 | <%# END_REPLACE %> 35 | -------------------------------------------------------------------------------- /generator/templates/nvw/src/main.native.js: -------------------------------------------------------------------------------- 1 | --- 2 | extend: '@vue/cli-service/generator/template/src/main.js' 3 | replace: 4 | - !!js/regexp /import Vue from 'vue'/ 5 | - !!js/regexp /Vue.config.productionTip = false/ 6 | - !!js/regexp /h => h\(App\),/ 7 | - !!js/regexp /}\)\.\$mount\('#app'\)/ 8 | --- 9 | 10 | <%# REPLACE %> 11 | import Vue from 'nativescript-vue'; 12 | <%# END_REPLACE %> 13 | 14 | <%# REPLACE %> 15 | // Set the following to `true` to hide the logs created by nativescript-vue 16 | Vue.config.silent = false; 17 | // Set the following to `false` to not colorize the logs created by nativescript-vue 18 | // disabled in template due to typing issue for Typescript projects....NEEDS TO BE FIXED 19 | // Vue.config.debug = true; 20 | <%# END_REPLACE %> 21 | 22 | <%# REPLACE %> 23 | (h) => h('frame', [h(App)]), 24 | <%# END_REPLACE %> 25 | 26 | <%# REPLACE %> 27 | }).$start(); 28 | <%# END_REPLACE %> -------------------------------------------------------------------------------- /generator/templates/simple/src/main.native.js: -------------------------------------------------------------------------------- 1 | import Vue from 'nativescript-vue'; 2 | <%_ if (rootOptions.router) { _%> 3 | import Navigator from 'nativescript-vue-navigator' 4 | <%_ } _%> 5 | 6 | import App from './App.vue'; 7 | <%_ if (rootOptions.router) { _%> 8 | import { options } from './router'; 9 | 10 | // adapt vue-router routes to nativescript-vue-navigator 11 | const routes = options.routes.reduce((data, route) => { 12 | data[route.name] = { 13 | component: route.component 14 | } 15 | return data 16 | }, {}); 17 | 18 | Vue.use(Navigator, { routes }); 19 | <%_ } _%> 20 | 21 | // Set the following to `true` to hide the logs created by nativescript-vue 22 | Vue.config.silent = false; 23 | // Set the following to `false` to not colorize the logs created by nativescript-vue 24 | // disabled in template due to typing issue for Typescript projects....NEEDS TO BE FIXED 25 | // Vue.config.debug = true; 26 | 27 | new Vue({ 28 | render: h => h('frame', [h(App)]), 29 | }).$start(); 30 | -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-one.styl: -------------------------------------------------------------------------------- 1 | ActionBar 2 | color #42b983 3 | 4 | .w-navbar 5 | color #42b983 6 | position fixed 7 | z-index 10000 8 | height 3em 9 | width 100% 10 | top 0px 11 | left 0px 12 | margin auto 13 | list-style none 14 | display flex 15 | align-items center 16 | padding 0 10px 17 | -webkit-box-shadow -8px 8px 6px -7px #999 18 | -moz-box-shadow -8px 8px 6px -7px #999 19 | box-shadow -8px 8px 6px -7px #999 20 | 21 | .w-title 22 | margin-left auto 23 | margin-right auto 24 | 25 | .w-container 26 | height 100% 27 | width 100% 28 | padding-top 3em 29 | position relative 30 | overflow hidden 31 | display flex 32 | flex-direction column 33 | justify-content top 34 | align-items center 35 | 36 | .w-button 37 | width 50% 38 | height 2em 39 | margin 0.25em 40 | display flex 41 | justify-content center 42 | align-items center 43 | background-color #d7d7d7 44 | border-width 0px 45 | font-weight 600 46 | border-radius 3px -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/values-v21/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 11 | 14 | 15 | 16 | 19 | 20 | 23 | -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-one.styl: -------------------------------------------------------------------------------- 1 | ActionBar 2 | color #42b983 3 | 4 | .w-navbar 5 | color #42b983 6 | position fixed 7 | z-index 10000 8 | height 3em 9 | width 100% 10 | top 0px 11 | left 0px 12 | margin auto 13 | list-style none 14 | display flex 15 | align-items center 16 | padding 0 10px 17 | -webkit-box-shadow -8px 8px 6px -7px #999 18 | -moz-box-shadow -8px 8px 6px -7px #999 19 | box-shadow -8px 8px 6px -7px #999 20 | 21 | .w-title 22 | margin-left auto 23 | margin-right auto 24 | 25 | .w-container 26 | height 100% 27 | width 100% 28 | padding-top 3em 29 | position relative 30 | overflow hidden 31 | display flex 32 | flex-direction column 33 | justify-content top 34 | align-items center 35 | 36 | .w-button 37 | width 50% 38 | height 2em 39 | margin 0.25em 40 | display flex 41 | justify-content center 42 | align-items center 43 | background-color #d7d7d7 44 | border-width 0px 45 | font-weight 600 46 | border-radius 3px -------------------------------------------------------------------------------- /generator/templates/nvw/src/main.js: -------------------------------------------------------------------------------- 1 | --- 2 | extend: '@vue/cli-service/generator/template/src/main.js' 3 | replace: 4 | - !!js/regexp /import Vue from 'vue'/ 5 | - !!js/regexp /import App from './App.vue'/ 6 | - !!js/regexp /Vue.config.productionTip = false/ 7 | - !!js/regexp /h => h\(App\),/ 8 | - !!js/regexp /}\)\.\$mount\('#app'\)/ 9 | --- 10 | 11 | <%# REPLACE %> 12 | import Vue from 'vue'; 13 | <%# END_REPLACE %> 14 | 15 | <%# REPLACE %> 16 | import App from '~/App.vue'; 17 | import { Page, ActionBar, GridLayout, Button, Img, Label } from 'nativescript-vue-web'; 18 | 19 | Vue.component('Page', Page); 20 | Vue.component('ActionBar', ActionBar); 21 | Vue.component('GridLayout', GridLayout); 22 | Vue.component('Button', Button); 23 | Vue.component('Img', Img); 24 | Vue.component('Label', Label); 25 | 26 | <%# END_REPLACE %> 27 | 28 | <%# REPLACE %> 29 | Vue.config.productionTip = false; 30 | <%# END_REPLACE %> 31 | 32 | <%# REPLACE %> 33 | (h) => h(App), 34 | <%# END_REPLACE %> 35 | 36 | <%# REPLACE %> 37 | }).$mount('#app'); 38 | <%# END_REPLACE %> -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Igor Randjelovic 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-one.css: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #42b983; 3 | } 4 | 5 | .w-navbar { 6 | color: #42b983; 7 | position: fixed; 8 | z-index: 10000; 9 | height: 3em; 10 | width: 100%; 11 | top: 0px; 12 | left: 0px; 13 | margin: auto; 14 | list-style: none; 15 | 16 | display: flex; 17 | align-items: center; 18 | padding: 0 10px; 19 | 20 | -webkit-box-shadow: -8px 8px 6px -7px #999; 21 | -moz-box-shadow: -8px 8px 6px -7px #999; 22 | box-shadow: -8px 8px 6px -7px #999; 23 | } 24 | 25 | .w-navbar .w-title { 26 | margin-left: auto; 27 | margin-right: auto; 28 | } 29 | 30 | .w-container { 31 | height: 100%; 32 | width: 100%; 33 | padding-top: 3em; 34 | position: relative; 35 | overflow: hidden; 36 | display: flex; 37 | flex-direction: column; 38 | justify-content: top; 39 | align-items: center; 40 | } 41 | 42 | .w-container .w-button { 43 | width: 50%; 44 | height: 2em; 45 | margin: .25em; 46 | display: flex; 47 | justify-content: center; 48 | align-items: center; 49 | background-color: #d7d7d7; 50 | border-width: 0px; 51 | font-weight: 600; 52 | border-radius: 3px; 53 | } -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-one.less: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #42b983; 3 | } 4 | 5 | .w-navbar { 6 | color: #42b983; 7 | position: fixed; 8 | z-index: 10000; 9 | height: 3em; 10 | width: 100%; 11 | top: 0px; 12 | left: 0px; 13 | margin: auto; 14 | list-style: none; 15 | 16 | display: flex; 17 | align-items: center; 18 | padding: 0 10px; 19 | 20 | -webkit-box-shadow: -8px 8px 6px -7px #999; 21 | -moz-box-shadow: -8px 8px 6px -7px #999; 22 | box-shadow: -8px 8px 6px -7px #999; 23 | } 24 | 25 | .w-navbar .w-title { 26 | margin-left: auto; 27 | margin-right: auto; 28 | } 29 | 30 | .w-container { 31 | height: 100%; 32 | width: 100%; 33 | padding-top: 3em; 34 | position: relative; 35 | overflow: hidden; 36 | display: flex; 37 | flex-direction: column; 38 | justify-content: top; 39 | align-items: center; 40 | } 41 | 42 | .w-container .w-button { 43 | width: 50%; 44 | height: 2em; 45 | margin: .25em; 46 | display: flex; 47 | justify-content: center; 48 | align-items: center; 49 | background-color: #d7d7d7; 50 | border-width: 0px; 51 | font-weight: 600; 52 | border-radius: 3px; 53 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-one.css: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #42b983; 3 | } 4 | 5 | .w-navbar { 6 | color: #42b983; 7 | position: fixed; 8 | z-index: 10000; 9 | height: 3em; 10 | width: 100%; 11 | top: 0px; 12 | left: 0px; 13 | margin: auto; 14 | list-style: none; 15 | 16 | display: flex; 17 | align-items: center; 18 | padding: 0 10px; 19 | 20 | -webkit-box-shadow: -8px 8px 6px -7px #999; 21 | -moz-box-shadow: -8px 8px 6px -7px #999; 22 | box-shadow: -8px 8px 6px -7px #999; 23 | } 24 | 25 | .w-navbar .w-title { 26 | margin-left: auto; 27 | margin-right: auto; 28 | } 29 | 30 | .w-container { 31 | height: 100%; 32 | width: 100%; 33 | padding-top: 3em; 34 | position: relative; 35 | overflow: hidden; 36 | display: flex; 37 | flex-direction: column; 38 | justify-content: top; 39 | align-items: center; 40 | } 41 | 42 | .w-container .w-button { 43 | width: 50%; 44 | height: 2em; 45 | margin: .25em; 46 | display: flex; 47 | justify-content: center; 48 | align-items: center; 49 | background-color: #d7d7d7; 50 | border-width: 0px; 51 | font-weight: 600; 52 | border-radius: 3px; 53 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-one.less: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #42b983; 3 | } 4 | 5 | .w-navbar { 6 | color: #42b983; 7 | position: fixed; 8 | z-index: 10000; 9 | height: 3em; 10 | width: 100%; 11 | top: 0px; 12 | left: 0px; 13 | margin: auto; 14 | list-style: none; 15 | 16 | display: flex; 17 | align-items: center; 18 | padding: 0 10px; 19 | 20 | -webkit-box-shadow: -8px 8px 6px -7px #999; 21 | -moz-box-shadow: -8px 8px 6px -7px #999; 22 | box-shadow: -8px 8px 6px -7px #999; 23 | } 24 | 25 | .w-navbar .w-title { 26 | margin-left: auto; 27 | margin-right: auto; 28 | } 29 | 30 | .w-container { 31 | height: 100%; 32 | width: 100%; 33 | padding-top: 3em; 34 | position: relative; 35 | overflow: hidden; 36 | display: flex; 37 | flex-direction: column; 38 | justify-content: top; 39 | align-items: center; 40 | } 41 | 42 | .w-container .w-button { 43 | width: 50%; 44 | height: 2em; 45 | margin: .25em; 46 | display: flex; 47 | justify-content: center; 48 | align-items: center; 49 | background-color: #d7d7d7; 50 | border-width: 0px; 51 | font-weight: 600; 52 | border-radius: 3px; 53 | } -------------------------------------------------------------------------------- /generator/templates/nvw/src/styles/style-one.scss: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #42b983; 3 | } 4 | 5 | .w-navbar { 6 | color: #42b983; 7 | position: fixed; 8 | z-index: 10000; 9 | height: 3em; 10 | width: 100%; 11 | top: 0px; 12 | left: 0px; 13 | margin: auto; 14 | list-style: none; 15 | 16 | display: flex; 17 | align-items: center; 18 | padding: 0 10px; 19 | 20 | -webkit-box-shadow: -8px 8px 6px -7px #999; 21 | -moz-box-shadow: -8px 8px 6px -7px #999; 22 | box-shadow: -8px 8px 6px -7px #999; 23 | 24 | .w-title { 25 | margin-left: auto; 26 | margin-right: auto; 27 | } 28 | } 29 | 30 | .w-container { 31 | height: 100%; 32 | width: 100%; 33 | padding-top: 3em; 34 | position: relative; 35 | overflow: hidden; 36 | display: flex; 37 | flex-direction: column; 38 | justify-content: top; 39 | align-items: center; 40 | 41 | 42 | .w-button { 43 | width: 50%; 44 | height: 2em; 45 | margin: .25em; 46 | display: flex; 47 | justify-content: center; 48 | align-items: center; 49 | background-color: #d7d7d7; 50 | border-width: 0px; 51 | font-weight: 600; 52 | border-radius: 3px; 53 | } 54 | 55 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/styles/style-one.scss: -------------------------------------------------------------------------------- 1 | ActionBar { 2 | color: #42b983; 3 | } 4 | 5 | .w-navbar { 6 | color: #42b983; 7 | position: fixed; 8 | z-index: 10000; 9 | height: 3em; 10 | width: 100%; 11 | top: 0px; 12 | left: 0px; 13 | margin: auto; 14 | list-style: none; 15 | 16 | display: flex; 17 | align-items: center; 18 | padding: 0 10px; 19 | 20 | -webkit-box-shadow: -8px 8px 6px -7px #999; 21 | -moz-box-shadow: -8px 8px 6px -7px #999; 22 | box-shadow: -8px 8px 6px -7px #999; 23 | 24 | .w-title { 25 | margin-left: auto; 26 | margin-right: auto; 27 | } 28 | } 29 | 30 | .w-container { 31 | height: 100%; 32 | width: 100%; 33 | padding-top: 3em; 34 | position: relative; 35 | overflow: hidden; 36 | display: flex; 37 | flex-direction: column; 38 | justify-content: top; 39 | align-items: center; 40 | 41 | 42 | .w-button { 43 | width: 50%; 44 | height: 2em; 45 | margin: .25em; 46 | display: flex; 47 | justify-content: center; 48 | align-items: center; 49 | background-color: #d7d7d7; 50 | border-width: 0px; 51 | font-weight: 600; 52 | border-radius: 3px; 53 | } 54 | 55 | } -------------------------------------------------------------------------------- /generator/templates/simple/src/router.js: -------------------------------------------------------------------------------- 1 | --- 2 | extend: '@vue/cli-service/generator/router.js' 3 | replace: 4 | - !!js/regexp /import Vue from 'vue'/ 5 | - !!js/regexp /import Router from 'vue-router'/ 6 | - !!js/regexp /Vue.use\(Router\)/ 7 | - !!js/regexp /export default new Router\(\{/ 8 | - !!js/regexp /import Home from '\./views/Home.vue'/ 9 | - !!js/regexp /\(\) => import(.*)\.\/views\/About\.vue'\)/ 10 | - !!js/regexp /(\s+)\/\/ (.*)/ 11 | - !!js/regexp /(\s+)\/\/ (.*)/ 12 | - !!js/regexp /(\s+)\/\/ (.*)/ 13 | - !!js/regexp /\}\)/ 14 | --- 15 | 16 | <%# REPLACE %> 17 | import Vue from 'vue'; 18 | <%# END_REPLACE %> 19 | 20 | <%# REPLACE %> 21 | import Router from 'vue-router'; 22 | <%# END_REPLACE %> 23 | 24 | <%# REPLACE %> 25 | Vue.use(Router); 26 | <%# END_REPLACE %> 27 | 28 | <%# REPLACE %> 29 | export const options = { 30 | <%# END_REPLACE %> 31 | 32 | <%# REPLACE %> 33 | import Home from '~/views/Home.vue'; 34 | import About from '~/views/About.vue'; 35 | <%# END_REPLACE %> 36 | 37 | <%# REPLACE %> 38 | About, 39 | <%# END_REPLACE %> 40 | 41 | <%# REPLACE %> 42 | <%# END_REPLACE %> 43 | 44 | <%# REPLACE %> 45 | <%# END_REPLACE %> 46 | 47 | <%# REPLACE %> 48 | <%# END_REPLACE %> 49 | 50 | <%# REPLACE %> 51 | }; 52 | export default new Router(options); 53 | <%# END_REPLACE %> 54 | -------------------------------------------------------------------------------- /lib/scripts/webpack-maintenance.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const replace = require('replace-in-file'); 3 | 4 | const mode = process.argv[2]; 5 | 6 | if (mode === 'pre') Pre(); 7 | 8 | if (mode === 'post') Post(); 9 | 10 | function Pre() { 11 | console.log('copying CLI 3 version of webpack.config.js to project'); 12 | // setup string replacement options for webpack.config.js file 13 | const replaceOptions = { 14 | files: './webpack.config.js', 15 | from: './lib/Service', 16 | to: '@vue/cli-service/lib/Service' 17 | }; 18 | 19 | // copy the dynamic webpack config from the cli-service. 20 | fs.copyFile('./node_modules/@vue/cli-service/webpack.config.js', './webpack.config.js', (err) => { 21 | //console.error('copyFile Error occurred:', err); 22 | if (err) { 23 | console.error('copyFile Error occurred:', err); 24 | if (err) throw err; 25 | } 26 | 27 | // edit the file to correct a hard-coded path to be relative 28 | replace(replaceOptions, (err, changes) => { 29 | if (err) { 30 | console.error('replace Error occurred:', err); 31 | if (err) throw err; 32 | } 33 | }); 34 | }); 35 | } 36 | 37 | function Post() { 38 | console.log('starting Post'); 39 | if (fs.existsSync('./webpack.config.js')) { 40 | fs.unlink('./webpack.config.js', (err) => { 41 | if (err) throw err; 42 | }); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | <%- applicationName %> 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | <%- applicationVersion %> 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | <%- applicationVersion %> 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIRequiresFullScreen 28 | 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | UISupportedInterfaceOrientations~ipad 40 | 41 | UIInterfaceOrientationPortrait 42 | UIInterfaceOrientationPortraitUpsideDown 43 | UIInterfaceOrientationLandscapeLeft 44 | UIInterfaceOrientationLandscapeRight 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/Android/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 17 | 18 | 20 | 21 | 22 | 29 | 30 | 32 | 33 | 34 | 39 | 40 | 42 | 43 | -------------------------------------------------------------------------------- /prompts.js: -------------------------------------------------------------------------------- 1 | module.exports = [ 2 | { 3 | name: 'applicationId', 4 | type: 'input', 5 | message: 'Enter a unique application identifier:', 6 | default: 'org.nativescript.application', 7 | validate(applicationId) { 8 | const idRE = /^([A-Za-z][A-Za-z\d_]*\.)+[A-Za-z][A-Za-z\d_]*$/; 9 | 10 | if (!idRE.test(applicationId)) { 11 | return `Invalid application identifier. 12 | A valid identifier: 13 | - must contain two or more strings separated by a dot 14 | - each string must start with a letter 15 | - each string can only contain numbers, letters and the _ character 16 | Example: com.company.app`; 17 | } 18 | 19 | return true; 20 | } 21 | }, 22 | { 23 | name: 'historyMode', 24 | type: 'confirm', 25 | message: 'Use HTML5 history mode? (Default: hash mode)', 26 | default: false 27 | }, 28 | { 29 | name: 'isNewProject', 30 | type: 'confirm', 31 | message: 'Is this a brand new project? (Default: Yes)', 32 | default: true 33 | }, 34 | { 35 | name: 'isNativeOnly', 36 | type: 'list', 37 | message: 'Dual Native AND Web development experience or a Native only? (Default: Dual)', 38 | choices: [ 39 | { 40 | name: 'Dual Native AND Web', 41 | value: false 42 | }, 43 | { 44 | name: 'Native only', 45 | value: true 46 | } 47 | ], 48 | default: false 49 | }, 50 | { 51 | name: 'templateType', 52 | type: 'list', 53 | message: 'What type of template do you want to start with? (Default: Simple)', 54 | choices: [ 55 | { 56 | name: 'Simple', 57 | value: 'simple' 58 | }, 59 | { 60 | name: 'Nativescript-Vue-Web - The Simple template, but with NS-Vue like syntax for web components', 61 | value: 'nvw', 62 | disabled: (answers) => { 63 | return answers.isNativeOnly === true; 64 | } 65 | }, 66 | { 67 | name: 'Sidebar (not yet implemented)', 68 | value: 'sidebar', 69 | disabled: true 70 | } 71 | ], 72 | default: 'simple' 73 | } 74 | ]; 75 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vue-cli-plugin-nativescript-vue", 3 | "version": "0.3.1", 4 | "description": "A vue cli 3.x plugin for NativeScript-Vue", 5 | "main": "index.js", 6 | "files": [ 7 | "index.js", 8 | "lib", 9 | "generator", 10 | "LICENSE", 11 | "prompts.js", 12 | "ui.js", 13 | "logo.png" 14 | ], 15 | "scripts": { 16 | "test": "echo \"Error: no test specified\"", 17 | "preversion": "npm test", 18 | "version": "git add -A", 19 | "postversion": "git push --tags origin master", 20 | "prep:patch": "npm version patch -m \"build %s\"", 21 | "prep:minor": "npm version minor -m \"build %s\"", 22 | "prep:major": "npm version major -m \"build %s\"" 23 | }, 24 | "author": "Igor Randjelovic", 25 | "license": "MIT", 26 | "dependencies": { 27 | "fs-extra": "^8.1.0", 28 | "globby": "^9.2.0", 29 | "replace-in-file": "^4.1.0" 30 | }, 31 | "devDependencies": { 32 | "@vue/cli-plugin-eslint": "^3.11.0", 33 | "@vue/cli-service": "^3.11.0", 34 | "@vue/eslint-config-airbnb": "^4.0.1", 35 | "@vue/eslint-config-prettier": "^5.0.0", 36 | "cross-var": "^1.1.0", 37 | "ejs-lint": "^0.3.0", 38 | "eslint": "^5.16.0", 39 | "eslint-plugin-vue": "^5.2.3", 40 | "fork-ts-checker-webpack-plugin": "^1.5.0", 41 | "nativescript-dev-webpack": "^1.2.0", 42 | "nativescript-vue-template-compiler": "^2.4.0", 43 | "prettier": "^1.18.2", 44 | "prettier-eslint": "^8.8.2", 45 | "terser-webpack-plugin": "^2.0.1", 46 | "tslint": "^5.19.0", 47 | "typescript": "^3.5.1", 48 | "vue-template-compiler": "^2.6.10", 49 | "webpack": ">=4 < 4.29", 50 | "webpack-cli": "^3.3.2" 51 | }, 52 | "prettyhtml": { 53 | "printWidth": 160 54 | }, 55 | "repository": { 56 | "type": "git", 57 | "url": "git+https://github.com/nativescript-vue/vue-cli-plugin-nativescript-vue.git" 58 | }, 59 | "keywords": [ 60 | "vue", 61 | "cli", 62 | "nativescript", 63 | "web", 64 | "plugin" 65 | ], 66 | "bugs": { 67 | "url": "https://github.com/nativescript-vue/vue-cli-plugin-nativescript-vue/issues" 68 | }, 69 | "homepage": "https://github.com/nativescript-vue/vue-cli-plugin-nativescript-vue#readme" 70 | } 71 | -------------------------------------------------------------------------------- /generator/templates/App_Resources/iOS/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "size" : "29x29", 5 | "idiom" : "iphone", 6 | "filename" : "icon-29.png", 7 | "scale" : "1x" 8 | }, 9 | { 10 | "size" : "29x29", 11 | "idiom" : "iphone", 12 | "filename" : "icon-29@2x.png", 13 | "scale" : "2x" 14 | }, 15 | { 16 | "size" : "29x29", 17 | "idiom" : "iphone", 18 | "filename" : "icon-29@3x.png", 19 | "scale" : "3x" 20 | }, 21 | { 22 | "size" : "40x40", 23 | "idiom" : "iphone", 24 | "filename" : "icon-40@2x.png", 25 | "scale" : "2x" 26 | }, 27 | { 28 | "size" : "40x40", 29 | "idiom" : "iphone", 30 | "filename" : "icon-40@3x.png", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "size" : "60x60", 35 | "idiom" : "iphone", 36 | "filename" : "icon-60@2x.png", 37 | "scale" : "2x" 38 | }, 39 | { 40 | "size" : "60x60", 41 | "idiom" : "iphone", 42 | "filename" : "icon-60@3x.png", 43 | "scale" : "3x" 44 | }, 45 | { 46 | "size" : "29x29", 47 | "idiom" : "ipad", 48 | "filename" : "icon-29.png", 49 | "scale" : "1x" 50 | }, 51 | { 52 | "size" : "29x29", 53 | "idiom" : "ipad", 54 | "filename" : "icon-29@2x.png", 55 | "scale" : "2x" 56 | }, 57 | { 58 | "size" : "40x40", 59 | "idiom" : "ipad", 60 | "filename" : "icon-40.png", 61 | "scale" : "1x" 62 | }, 63 | { 64 | "size" : "40x40", 65 | "idiom" : "ipad", 66 | "filename" : "icon-40@2x.png", 67 | "scale" : "2x" 68 | }, 69 | { 70 | "size" : "76x76", 71 | "idiom" : "ipad", 72 | "filename" : "icon-76.png", 73 | "scale" : "1x" 74 | }, 75 | { 76 | "size" : "76x76", 77 | "idiom" : "ipad", 78 | "filename" : "icon-76@2x.png", 79 | "scale" : "2x" 80 | }, 81 | { 82 | "size" : "83.5x83.5", 83 | "idiom" : "ipad", 84 | "filename" : "icon-83.5@2x.png", 85 | "scale" : "2x" 86 | }, 87 | { 88 | "size" : "1024x1024", 89 | "idiom" : "ios-marketing", 90 | "filename" : "icon-1024.png", 91 | "scale" : "1x" 92 | } 93 | ], 94 | "info" : { 95 | "version" : 1, 96 | "author" : "xcode" 97 | } 98 | } -------------------------------------------------------------------------------- /generator/templates/nvw/src/components/HelloWorld.ios.vue: -------------------------------------------------------------------------------- 1 | 8 | <%_ if (!usingTS) { _%> 9 | <%# -------------------- Is Not Using TypeScript -------------------- -%> 10 | 18 | <%_ } else { _%> 19 | <%# -------------------- Is Using TypeScript -------------------- -%> 20 | 31 | <%_ } _%> 32 | 33 | <%_ if (rootOptions.cssPreprocessor) { _%> 34 | <%_ if (rootOptions.cssPreprocessor == 'sass' || rootOptions.cssPreprocessor == 'scss' || rootOptions.cssPreprocessor == 'dart-sass' ) { _%> 35 | <%# -------------------- IS Using sass, scss OR dart-sass -------------------- -%> 36 | 47 | <%_ } else if (rootOptions.cssPreprocessor == 'stylus') { _%> 48 | <%# -------------------- IS Using stylus -------------------- -%> 49 | 58 | <%_ } else if (rootOptions.cssPreprocessor == 'less') { _%> 59 | <%# -------------------- IS Using Less -------------------- -%> 60 | 71 | <%_ } _%> 72 | <%_ } else { _%> 73 | <%# -------------------- IS Using standard CSS -------------------- -%> 74 | 85 | <%_ } _%> -------------------------------------------------------------------------------- /generator/templates/nvw/src/components/HelloWorld.android.vue: -------------------------------------------------------------------------------- 1 | 8 | <%_ if (!usingTS) { _%> 9 | <%# -------------------- Is Not Using TypeScript -------------------- -%> 10 | 18 | <%_ } else { _%> 19 | <%# -------------------- Is Using TypeScript -------------------- -%> 20 | 31 | <%_ } _%> 32 | 33 | <%_ if (rootOptions.cssPreprocessor) { _%> 34 | <%_ if (rootOptions.cssPreprocessor == 'sass' || rootOptions.cssPreprocessor == 'scss' || rootOptions.cssPreprocessor == 'dart-sass' ) { _%> 35 | <%# -------------------- IS Using sass, scss OR dart-sass -------------------- -%> 36 | 47 | <%_ } else if (rootOptions.cssPreprocessor == 'stylus') { _%> 48 | <%# -------------------- IS Using stylus -------------------- -%> 49 | 58 | <%_ } else if (rootOptions.cssPreprocessor == 'less') { _%> 59 | <%# -------------------- IS Using Less -------------------- -%> 60 | 71 | <%_ } _%> 72 | <%_ } else { _%> 73 | <%# -------------------- IS Using standard CSS -------------------- -%> 74 | 85 | <%_ } _%> -------------------------------------------------------------------------------- /generator/templates/nvw/src/components/HelloWorld.native.vue: -------------------------------------------------------------------------------- 1 | 8 | <%_ if (!usingTS) { _%> 9 | <%# -------------------- Is Not Using TypeScript -------------------- -%> 10 | 18 | <%_ } else { _%> 19 | <%# -------------------- Is Using TypeScript -------------------- -%> 20 | 31 | <%_ } _%> 32 | 33 | <%_ if (rootOptions.cssPreprocessor) { _%> 34 | <%_ if (rootOptions.cssPreprocessor == 'sass' || rootOptions.cssPreprocessor == 'scss' || rootOptions.cssPreprocessor == 'dart-sass' ) { _%> 35 | <%# -------------------- IS Using sass, scss OR dart-sass -------------------- -%> 36 | 47 | <%_ } else if (rootOptions.cssPreprocessor == 'stylus') { _%> 48 | <%# -------------------- IS Using stylus -------------------- -%> 49 | 58 | <%_ } else if (rootOptions.cssPreprocessor == 'less') { _%> 59 | <%# -------------------- IS Using Less -------------------- -%> 60 | 71 | <%_ } _%> 72 | <%_ } else { _%> 73 | <%# -------------------- IS Using standard CSS -------------------- -%> 74 | 85 | <%_ } _%> -------------------------------------------------------------------------------- /generator/templates/simple/src/components/HelloWorld.ios.vue: -------------------------------------------------------------------------------- 1 | 8 | <%_ if (!usingTS) { _%> 9 | <%# -------------------- Is Not Using TypeScript -------------------- -%> 10 | 18 | <%_ } else { _%> 19 | <%# -------------------- Is Using TypeScript -------------------- -%> 20 | 31 | <%_ } _%> 32 | 33 | <%_ if (rootOptions.cssPreprocessor) { _%> 34 | <%_ if (rootOptions.cssPreprocessor == 'sass' || rootOptions.cssPreprocessor == 'scss' || rootOptions.cssPreprocessor == 'dart-sass' ) { _%> 35 | <%# -------------------- IS Using sass, scss OR dart-sass -------------------- -%> 36 | 47 | <%_ } else if (rootOptions.cssPreprocessor == 'stylus') { _%> 48 | <%# -------------------- IS Using stylus -------------------- -%> 49 | 58 | <%_ } else if (rootOptions.cssPreprocessor == 'less') { _%> 59 | <%# -------------------- IS Using Less -------------------- -%> 60 | 71 | <%_ } _%> 72 | <%_ } else { _%> 73 | <%# -------------------- IS Using standard CSS -------------------- -%> 74 | 85 | <%_ } _%> -------------------------------------------------------------------------------- /generator/templates/simple/src/components/HelloWorld.android.vue: -------------------------------------------------------------------------------- 1 | 8 | <%_ if (!usingTS) { _%> 9 | <%# -------------------- Is Not Using TypeScript -------------------- -%> 10 | 18 | <%_ } else { _%> 19 | <%# -------------------- Is Using TypeScript -------------------- -%> 20 | 31 | <%_ } _%> 32 | 33 | <%_ if (rootOptions.cssPreprocessor) { _%> 34 | <%_ if (rootOptions.cssPreprocessor == 'sass' || rootOptions.cssPreprocessor == 'scss' || rootOptions.cssPreprocessor == 'dart-sass' ) { _%> 35 | <%# -------------------- IS Using sass, scss OR dart-sass -------------------- -%> 36 | 47 | <%_ } else if (rootOptions.cssPreprocessor == 'stylus') { _%> 48 | <%# -------------------- IS Using stylus -------------------- -%> 49 | 58 | <%_ } else if (rootOptions.cssPreprocessor == 'less') { _%> 59 | <%# -------------------- IS Using Less -------------------- -%> 60 | 71 | <%_ } _%> 72 | <%_ } else { _%> 73 | <%# -------------------- IS Using standard CSS -------------------- -%> 74 | 85 | <%_ } _%> -------------------------------------------------------------------------------- /generator/templates/simple/src/components/HelloWorld.native.vue: -------------------------------------------------------------------------------- 1 | 8 | <%_ if (!usingTS) { _%> 9 | <%# -------------------- Is Not Using TypeScript -------------------- -%> 10 | 18 | <%_ } else { _%> 19 | <%# -------------------- Is Using TypeScript -------------------- -%> 20 | 31 | <%_ } _%> 32 | 33 | <%_ if (rootOptions.cssPreprocessor) { _%> 34 | <%_ if (rootOptions.cssPreprocessor == 'sass' || rootOptions.cssPreprocessor == 'scss' || rootOptions.cssPreprocessor == 'dart-sass' ) { _%> 35 | <%# -------------------- IS Using sass, scss OR dart-sass -------------------- -%> 36 | 47 | <%_ } else if (rootOptions.cssPreprocessor == 'stylus') { _%> 48 | <%# -------------------- IS Using stylus -------------------- -%> 49 | 58 | <%_ } else if (rootOptions.cssPreprocessor == 'less') { _%> 59 | <%# -------------------- IS Using Less -------------------- -%> 60 | 71 | <%_ } _%> 72 | <%_ } else { _%> 73 | <%# -------------------- IS Using standard CSS -------------------- -%> 74 | 85 | <%_ } _%> -------------------------------------------------------------------------------- /generator/templates/vue-sfc-template.vue: -------------------------------------------------------------------------------- 1 | <%_ if (rootOptions.router) { _%> 2 | <%# -------------------- IS Using vue-router -------------------- -%> 3 | <%_ if (!options.isNativeOnly) { _%> 4 | 5 |