first commit
This commit is contained in:
18
ui/generators/new/view/prompt.js
Normal file
18
ui/generators/new/view/prompt.js
Normal file
@@ -0,0 +1,18 @@
|
||||
module.exports = [
|
||||
{
|
||||
type: 'input',
|
||||
name: 'name',
|
||||
message: 'Name:',
|
||||
validate(value) {
|
||||
if (!value.length) {
|
||||
return 'View components must have a name.'
|
||||
}
|
||||
return true
|
||||
},
|
||||
},
|
||||
{
|
||||
type: 'confirm',
|
||||
name: 'useStyles',
|
||||
message: 'Add <style> block?',
|
||||
},
|
||||
]
|
||||
13
ui/generators/new/view/unit.ejs.t
Normal file
13
ui/generators/new/view/unit.ejs.t
Normal file
@@ -0,0 +1,13 @@
|
||||
---
|
||||
to: "src/router/views/<%= h.changeCase.kebab(name) %>.unit.js"
|
||||
---
|
||||
<%
|
||||
const fileName = h.changeCase.kebab(name)
|
||||
const importName = h.changeCase.pascal(fileName)
|
||||
%>import <%= importName %> from './<%= fileName %>'
|
||||
|
||||
describe('@views/<%= fileName %>', () => {
|
||||
it('is a valid view', () => {
|
||||
expect(<%= importName %>).toBeAViewComponent()
|
||||
})
|
||||
})
|
||||
31
ui/generators/new/view/view.ejs.t
Normal file
31
ui/generators/new/view/view.ejs.t
Normal file
@@ -0,0 +1,31 @@
|
||||
---
|
||||
to: "src/router/views/<%= h.changeCase.kebab(name) %>.vue"
|
||||
---
|
||||
<%
|
||||
const fileName = h.changeCase.kebab(name)
|
||||
const importName = h.changeCase.pascal(fileName)
|
||||
const titleName = h.changeCase.title(name)
|
||||
%><script>
|
||||
import Layout from '@layouts/main.vue'
|
||||
|
||||
export default {
|
||||
page: {
|
||||
title: '<%= titleName %>',
|
||||
meta: [{ name: 'description', content: 'The <%= titleName %> page.' }],
|
||||
},
|
||||
components: { Layout }
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<Layout>
|
||||
<%= titleName %>
|
||||
</Layout>
|
||||
</template>
|
||||
<%
|
||||
|
||||
if (useStyles) { %>
|
||||
<style lang="scss" module>
|
||||
@import '@design';
|
||||
</style>
|
||||
<% } %>
|
||||
Reference in New Issue
Block a user