@simitgroup/simpleapp-generator 1.1.2 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/generate.js CHANGED
@@ -226,9 +226,9 @@ const generateSchema = (docname, doctype, rendertype, allmodels) => {
226
226
  }
227
227
  };
228
228
  const mapfiles = {
229
- 'pages.new.vue.eta': {
229
+ 'pages.form.vue.eta': {
230
230
  to: `pages/[xorg]/${docname}`,
231
- as: 'new.vue',
231
+ as: 'form.vue',
232
232
  validate: validateWritePage
233
233
  },
234
234
  'pages.[id].vue.eta': {
@@ -236,6 +236,11 @@ const generateSchema = (docname, doctype, rendertype, allmodels) => {
236
236
  as: '[id].vue',
237
237
  validate: validateWritePage
238
238
  },
239
+ 'pages.new.vue.eta': {
240
+ to: `pages/[xorg]/${docname}`,
241
+ as: 'new.vue',
242
+ validate: validateWritePage
243
+ },
239
244
  'pages.viewer.vue.eta': {
240
245
  to: `pages/[xorg]/${docname}`,
241
246
  as: 'viewer.vue',
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../src/generate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simitgroup/simpleapp-generator",
3
- "version": "1.1.2",
3
+ "version": "1.1.3",
4
4
  "description": "frontend nuxtjs and backend nests code generator using jsonschema",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
package/src/generate.ts CHANGED
@@ -216,9 +216,9 @@ const generateSchema = ( docname: string,
216
216
  }
217
217
  }
218
218
  const mapfiles = {
219
- 'pages.new.vue.eta': {
219
+ 'pages.form.vue.eta': {
220
220
  to:`pages/[xorg]/${docname}`,
221
- as:'new.vue',
221
+ as:'form.vue',
222
222
  validate: validateWritePage
223
223
  },
224
224
  'pages.[id].vue.eta': {
@@ -226,6 +226,11 @@ const generateSchema = ( docname: string,
226
226
  as:'[id].vue',
227
227
  validate: validateWritePage
228
228
  },
229
+ 'pages.new.vue.eta': {
230
+ to:`pages/[xorg]/${docname}`,
231
+ as:'new.vue',
232
+ validate: validateWritePage
233
+ },
229
234
  'pages.viewer.vue.eta': {
230
235
  to:`pages/[xorg]/${docname}`,
231
236
  as:'viewer.vue',
@@ -6,8 +6,9 @@
6
6
  * last change 2023-09-09
7
7
  * author: Ks Tan
8
8
  */
9
- import Crud from './new.vue'
9
+ import Crud from './form.vue'
10
+ defineProps(['_id'])
10
11
  </script>
11
12
  <template>
12
- <Crud/>
13
+ <Crud :_id="_id"/>
13
14
  </template>
@@ -0,0 +1,226 @@
1
+ <% const skipcolumns = ['_id','createdBy','created','updatedBy','updated','orgId','branchId','tenantId','doctype','docNoFormat'] %>
2
+ <% const getBasicElement = ( inputtype, pathStr, modelValue,subtype=undefined,hidelabel=false,instancepath='') =>
3
+ `<SimpleAppInput :input-type="SimpleAppInputType.${inputtype}" :setting="o.getField('${pathStr}')" v-model="${modelValue}"`+
4
+ (subtype? `type="${subtype}"`:'') +' ' +
5
+ (hidelabel? ':hidelabel="true"':'') +
6
+ (instancepath ? `:instancepath="\`${instancepath}\`"` : '') + '/>' %>
7
+ <script setup lang="ts">
8
+ /**
9
+ * This file was automatically generated by simpleapp everytime regenerate code.
10
+ * delete file "delete-me-for-avoid-override" if you want to modify this file and
11
+ * prevent regenerate code override it.
12
+ * last change 2023-09-09
13
+ * author: Ks Tan
14
+ */
15
+ import {SimpleAppInputType} from "~/types"
16
+ import ConfirmPopup from 'primevue/confirmpopup';
17
+ import { useConfirm } from "primevue/useconfirm";
18
+ const confirm = useConfirm();
19
+ const isReadOnly =ref(true)
20
+ const props = defineProps<{_id?:string}>()
21
+ const {$<%= it.typename %>Doc,$event } = useNuxtApp();
22
+ const doc = $<%= it.typename %>Doc()
23
+ const data = doc.getReactiveData();
24
+ const emits = defineEmits(['afterCreate'])
25
+
26
+
27
+ const fetchRecord = async (recordid:string) =>{
28
+ await doc.getById(recordid)
29
+ }
30
+
31
+ const id = computed(() => props._id ?? '');
32
+
33
+
34
+ const disabled = computed(()=>{
35
+ return false
36
+ })
37
+
38
+ const createData = async () => {
39
+ // disabled.value=true
40
+
41
+ doc.create().then((res)=>{
42
+ //refresh()
43
+ emits('afterCreate',res.data)
44
+ }).catch(err=>{
45
+ console.error(err)
46
+ })
47
+
48
+ };
49
+ const updateData = async () => {
50
+ doc.update().then(()=>{
51
+ // visible.value=false
52
+ refresh()
53
+ }).catch(err=>{
54
+ console.error(err)
55
+ })
56
+
57
+ };
58
+ const deleteData = (event:Event) => {
59
+
60
+ confirm.require({
61
+ target: event.currentTarget as HTMLElement,
62
+ message:'Delete?',
63
+ icon: 'pi pi-exclamation-triangle',
64
+ acceptClass: 'p-button-danger',
65
+ accept: ()=>{
66
+ // disabled.value=true
67
+ doc.delete(data.value._id ?? "").then((res) => {
68
+ refresh();
69
+ goTo(doc.getDocName())
70
+ });
71
+ },
72
+ reject: () => {
73
+ console.log("Cancel delete")
74
+ }
75
+ })
76
+ };
77
+ const newData = ()=>{
78
+ goTo(doc.getDocName(),'new')
79
+ }
80
+ const refresh = ()=>{
81
+ $event('RefreshDocumentList',{documentName:doc.getDocName()})
82
+ }
83
+
84
+
85
+ if (id.value && id.value != 'new') {
86
+ fetchRecord(id.value);
87
+ }else{
88
+ isReadOnly.value=false
89
+ }
90
+ </script>
91
+ <template>
92
+
93
+ <SimpleAppForm #default="o" :document="doc" :readonly="isReadOnly">
94
+ <client-only>
95
+ <div v-if="isReadOnly" class="w-full">
96
+ <Button
97
+ class="btn-primary" @click="isReadOnly=false"
98
+ type="button" >Edit</Button>
99
+ <Button class="" :disabled="disabled" @click="newData" type="button" v-if="canPerform(doc.getDocName(),'create')">New</Button>
100
+ </div>
101
+ <div v-else class="simpleapp-tool-bar col-span-4 text-left gap-4" >
102
+ <Button class="" :disabled="disabled" @click="newData" type="button" v-if="canPerform(doc.getDocName(),'create')">New</Button>
103
+ <Button class="btn-primary" :disabled="disabled" @click="createData" type="button" v-if="canPerform(doc.getDocName(),'create') && doc.isNew()">Create</Button>
104
+ <Button class="btn-primary" :disabled="disabled" @click="updateData" type="button" v-if="canPerform(doc.getDocName(),'update') && !doc.isNew()">Update</Button>
105
+ <Button class="btn-danger" :disabled="disabled" @click="deleteData($event)" type="button" v-if="canPerform(doc.getDocName(),'delete') && !doc.isNew()">Delete</Button>
106
+
107
+
108
+ <ProgressSpinner v-if="disabled==true" style="width: 2rem; height: 2rem" ></ProgressSpinner>
109
+ <ConfirmPopup></ConfirmPopup>
110
+ </div>
111
+ <div class="grid grid-cols-4 gap-4">
112
+ <% let isautofocus='' %>
113
+ <%Object.keys(it.jsonschema.properties).forEach(function(key) { %>
114
+
115
+ <% let obj=it.jsonschema.properties[key] %>
116
+ <% if(skipcolumns.indexOf(key)>=0){ %>
117
+ <% } else if(obj.type=='boolean'){ %>
118
+ <%~ getBasicElement('checkbox',`#/properties/${key}`,`data.${key}`) %>
119
+ <% } else if(obj.type=='number' || obj.type=='integer'){ %>
120
+ <%~ getBasicElement('number',`#/properties/${key}`,`data.${key}`) %>
121
+ <% } else if(obj.type=='array' && obj.items && obj.items.type =='string' ){ %>
122
+ <%~ getBasicElement('chip',`#/properties/${key}`,`data.${key}`) %>
123
+ <% } else if(obj.type=='object' && typeof obj['x-foreignkey']!='undefined'){ %>
124
+ <%~ getBasicElement('autocomplete',`#/properties/${key}`,`data.${key}`) %>
125
+ <% } else if(obj.type=='string'){ %>
126
+ <% if(obj.format=='documentno'){ %>
127
+ <%~ getBasicElement('documentno',`#/properties/${key}`,`data.${key}`) %>
128
+ <% }else if(obj.format=='date'){ %>
129
+ <%~ getBasicElement('date',`#/properties/${key}`,`data.${key}`) %>
130
+ <% } else if(obj.format=='text'){ %>
131
+ <%~ getBasicElement('textarea',`#/properties/${key}`,`data.${key}`) %>
132
+ <% } else if(obj.format=='html'){ %>
133
+ <%~ getBasicElement('textarea',`#/properties/${key}`,`data.${key}`) %>
134
+ <% } else if(obj.format=='email'){ %>
135
+ <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`,'email') %>
136
+ <% } else if(obj.enum){ %>
137
+ <%~ getBasicElement('select',`#/properties/${key}`,`data.${key}`) %>
138
+ <% } else if(obj['anyOf']){ %>
139
+ <% for(let f = 0; f < obj['anyOf'].length; f++){ %>
140
+ <%if(obj['anyOf'][f]['format']){ %>
141
+ <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`,obj['anyOf'][f]['format']) %>
142
+ <%}%>
143
+ <%}%>
144
+ <% } else if(obj['oneOf']){ %>
145
+ <% for(let f = 0; f < obj['oneOf'].length; f++){ %>
146
+ <%if(obj['oneOf'][f]['format']){ %>
147
+ <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`,obj['oneOf'][f]['format']) %>
148
+ <%}%>
149
+ <%}%>
150
+
151
+ <% } else {%>
152
+ <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`) %>
153
+ <% }%>
154
+ <% } else if(obj.type=='object' && obj.properties){ %>
155
+ <SimpleAppValue :setting="o.getField('#/properties/<%= key %>')">
156
+ <%Object.keys(obj.properties).forEach(function(skey) { %>
157
+ <% let sobj=obj.properties[skey] %>
158
+ <% let fieldpath=`o.getField('#/properties/${key}/properties/${skey}')` %>
159
+ <% let vmodel=`data.${key}.${skey}` %>
160
+ <% let instancePath=`#/${key}/${skey}` %>
161
+
162
+ <% if(sobj.type=='boolean'){ %>
163
+ <%~ getBasicElement('checkbox',fieldpath,vmodel) %>
164
+ <% } else if(sobj.type=='number' || sobj.type=='integer'){ %>
165
+ <%~ getBasicElement('number',fieldpath,vmodel) %>
166
+ <% } else if(sobj.type=='array' && sobj.items && sobj.items.type =='string' ){ %>
167
+ <%~ getBasicElement('chip',fieldpath,vmodel) %>
168
+ <% } else if(sobj.type=='object' && typeof sobj['x-foreignkey']!='undefined'){ %>
169
+ <%~ getBasicElement('chip',fieldpath,vmodel) %>
170
+ <% } else if(sobj.type=='string'){ %>
171
+ <% if(sobj.format=='date'){ %>
172
+ <SimpleAppText type="<%=sobj.format%>" instancePath="<%=instancePath%>" autofocus :setting="<%~fieldpath%>" v-model="<%= vmodel %>"/>
173
+ <% } else if(sobj.format=='text'){ %>
174
+ <SimpleAppTextarea :setting="<%~fieldpath%>'" instancePath="<%=instancePath%>" v-model="<%= vmodel %>"/>
175
+ <% } else if(sobj.format=='html'){ %>
176
+ <SimpleAppEditor editorStyle="height: 320px" instancePath="<%=instancePath%>" :setting="<%=fieldpath%>" v-model="<%= vmodel %>"/>
177
+ <% } else if(sobj.format=='email'){ %>
178
+ <SimpleAppText autofocus type="<%=~obj.type%>" instancePath="<%=instancePath%>" :setting="<%=fieldpath%>" v-model="<%= vmodel %>"/>
179
+ <% } else if(sobj.enum){ %>
180
+ <SimpleAppSelect autofocus :setting="<%~fieldpath%>" instancePath="<%=instancePath%>" v-model="<%= vmodel %>"/>
181
+ <% } else {%>
182
+ <SimpleAppText autofocus :setting="<%~fieldpath%>" instancePath="<%=instancePath%>" v-model="<%= vmodel %>"/>
183
+ <% }%>
184
+ <% } %>
185
+ <%})%>
186
+ </SimpleAppValue>
187
+ <% } else if(obj.type=='array' && obj.items.type=='object'){%>
188
+ <SimpleAppInputTable :getField="o.getField" class="col-span-4"
189
+ :setting="o.getField('#/properties/<%=key%>')" v-model="data.<%=key%>">
190
+ <%let tablefields = Object.keys(obj.items.properties) %>
191
+ <% for(let a=0;a<tablefields.length;a++){%>
192
+ <%let col= tablefields[a] %>
193
+ <% if(skipcolumns.includes(col)){ continue}%>
194
+ <%let subobj = obj.items.properties[col] %>
195
+ <Column field="<%=col%>" #body="{index}" :header="camelCaseToWords('<%=col%>')">
196
+ <%if(subobj['x-foreignkey']){%>
197
+ <%~ getBasicElement('autocomplete',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
198
+ <% } else if(subobj.type=='boolean'){%>
199
+ <%~ getBasicElement('checkbox',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
200
+ <% } else if(subobj.type=='number' || subobj.type=='integer'){%>
201
+ <%~ getBasicElement('number',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
202
+ <%} else if(subobj.type=='string' && subobj.format){%>
203
+ <%~ getBasicElement('number',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,subobj.format,true,`/${key}/\${index}/${col}`) %>
204
+ <%} else if(subobj.type=='string' && subobj['enum']){%>
205
+ <%~ getBasicElement('select',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
206
+ <%} else if(subobj.type=='string' ){%>
207
+ <%~ getBasicElement('text',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
208
+ <%} else if(subobj.type=='number'){%>
209
+ <%~ getBasicElement('number',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
210
+ <%}%>
211
+ </Column>
212
+ <%}%>
213
+ <Column #body="{index}" header="Delete">
214
+ <Button class="btn-danger" type="button" @click="data.<%=key%>.splice(index,1)">X</Button>
215
+ </Column>
216
+ </SimpleAppInputTable>
217
+ <% } else{%>
218
+ <!-- Can auto generate <%=obj.key %> -->
219
+ <!-- <%~ JSON.stringify(obj) %>-->
220
+ <%}%>
221
+ <%})%>
222
+ </div>
223
+ </client-only>
224
+ </SimpleAppForm>
225
+ <DebugDocumentData v-model="data" :label="doc.getDocName()"/>
226
+ </template>
@@ -12,7 +12,6 @@
12
12
  const {$<%= it.typename %>Doc,$listen } = useNuxtApp();
13
13
  const doc = $<%= it.typename %>Doc()
14
14
  const data = doc.getReactiveData();
15
- const visible = ref(false)
16
15
 
17
16
  definePageMeta({
18
17
  name: '<%= it.typename %>',
@@ -38,30 +37,14 @@
38
37
  <%}%>
39
38
  ]
40
39
 
41
- const exitRecord = ()=>{
42
- goTo(doc.getDocName())
43
- }
44
-
45
- watch(()=> useRoute().fullPath ,(newvalue,oldvalue)=>{
46
- visible.value = useRoute().params.id || useRoute().fullPath.includes("/new") ? true : false;
47
- })
48
-
49
- onNuxtReady(()=>{
50
- visible.value = useRoute().params.id || useRoute().fullPath.includes('/new') ? true : false;
51
- })
40
+ const id=computed(()=>useRoute().params.id)
52
41
  </script>
53
42
  <template>
54
43
 
55
44
  <DocPageList :document="doc" :columns="columns" :sorts="sorts">
56
45
  <div>
57
- <!-- <Dialog v-model:visible="visible"
58
- :pt="{ root: { class: 'w-full h-full bg-white' } , headertitle:{class:'m-2 ml-6 text-2xl font-bold'}}"
59
- modal :header="doc.getDocName()"
60
- :autoZIndex="false"
61
- @update:visible="exitRecord"
62
- > -->
63
- <NuxtPage />
64
- <!-- </Dialog> -->
46
+ <NuxtPage :_id="id ?? 'new'"/>
47
+
65
48
 
66
49
  </div>
67
50
  </DocPageList>
@@ -1,9 +1,3 @@
1
- <% const skipcolumns = ['_id','createdBy','created','updatedBy','updated','orgId','branchId','tenantId','doctype','docNoFormat'] %>
2
- <% const getBasicElement = ( inputtype, pathStr, modelValue,subtype=undefined,hidelabel=false,instancepath='') =>
3
- `<SimpleAppInput :input-type="SimpleAppInputType.${inputtype}" :setting="o.getField('${pathStr}')" v-model="${modelValue}"`+
4
- (subtype? `type="${subtype}"`:'') +' ' +
5
- (hidelabel? ':hidelabel="true"':'') +
6
- (instancepath ? `:instancepath="\`${instancepath}\`"` : '') + '/>' %>
7
1
  <script setup lang="ts">
8
2
  /**
9
3
  * This file was automatically generated by simpleapp everytime regenerate code.
@@ -12,212 +6,14 @@
12
6
  * last change 2023-09-09
13
7
  * author: Ks Tan
14
8
  */
15
- import {SimpleAppInputType} from "~/types"
16
- import ConfirmPopup from 'primevue/confirmpopup';
17
- import { useConfirm } from "primevue/useconfirm";
18
- const confirm = useConfirm();
19
- const props = defineProps<{_id?:string}>()
20
- const isReadOnly =ref(true)
21
- const {$<%= it.typename %>Doc,$event } = useNuxtApp();
22
- const doc = $<%= it.typename %>Doc()
23
- const data = doc.getReactiveData();
24
9
 
25
- const fetchRecord = async (recordid:string) =>{
26
- await doc.getById(recordid)
27
- }
28
-
29
- const id = computed(() => props._id ? props._id : String(useRoute().params.id ?? ""));
30
-
31
-
32
- const disabled = computed(()=>{
33
- return false
34
- })
35
-
36
- const createData = async () => {
37
- // disabled.value=true
38
-
39
- doc.create().then((res)=>{
40
- //refresh()
41
- goTo(doc.getDocName(),res.data._id)
42
- }).catch(err=>{
43
- console.error(err)
44
- })
45
-
46
- };
47
- const updateData = async () => {
48
-
49
-
50
- doc.update().then(()=>{
51
- // visible.value=false
52
- refresh()
53
- }).catch(err=>{
54
- console.error(err)
55
- })
56
-
57
- };
58
- const deleteData = (event:Event) => {
59
-
60
- confirm.require({
61
- target: event.currentTarget as HTMLElement,
62
- message:'Delete?',
63
- icon: 'pi pi-exclamation-triangle',
64
- acceptClass: 'p-button-danger',
65
- accept: ()=>{
66
- // disabled.value=true
67
- doc.delete(data.value._id ?? "").then((res) => {
68
- refresh();
69
- goTo(doc.getDocName())
70
- });
71
- },
72
- reject: () => {
73
- console.log("Cancel delete")
74
- }
75
- })
76
- };
77
- const newData = ()=>{
78
- goTo(doc.getDocName(),'new')
79
- }
80
- const refresh = ()=>{
81
- $event('RefreshDocumentList',{documentName:doc.getDocName()})
82
- }
83
-
84
-
85
- if (id.value) {
86
- fetchRecord(id.value);
87
- }else{
88
- isReadOnly.value=false
10
+ import Crud from './form.vue'
11
+ const {$<%= it.typename %>Doc } = useNuxtApp();
12
+ const doc = $<%= it.typename %>Doc()
13
+ const redirect = (data:any)=>{
14
+ goTo(doc.getDocName(), data._id);
89
15
  }
90
16
  </script>
91
- <template>
92
- <SimpleAppForm #default="o" :document="doc" :readonly="isReadOnly">
93
- <div v-if="isReadOnly" class="w-full">
94
- <Button
95
- class="btn-primary" @click="isReadOnly=false"
96
- type="button" >Edit</Button>
97
- <Button class="" :disabled="disabled" @click="newData" type="button" v-if="canPerform(doc.getDocName(),'create')">New</Button>
98
- </div>
99
- <div v-else class="simpleapp-tool-bar col-span-4 text-left gap-4" >
100
- <Button class="" :disabled="disabled" @click="newData" type="button" v-if="canPerform(doc.getDocName(),'create')">New</Button>
101
- <Button class="btn-primary" :disabled="disabled" @click="createData" type="button" v-if="canPerform(doc.getDocName(),'create') && doc.isNew()">Create</Button>
102
- <Button class="btn-primary" :disabled="disabled" @click="updateData" type="button" v-if="canPerform(doc.getDocName(),'update') && !doc.isNew()">Update</Button>
103
- <Button class="btn-danger" :disabled="disabled" @click="deleteData($event)" type="button" v-if="canPerform(doc.getDocName(),'delete') && !doc.isNew()">Delete</Button>
104
-
105
-
106
- <ProgressSpinner v-if="disabled==true" style="width: 2rem; height: 2rem" ></ProgressSpinner>
107
- <ConfirmPopup></ConfirmPopup>
108
- </div>
109
- <div class="grid grid-cols-4 gap-4">
110
- <% let isautofocus='' %>
111
- <%Object.keys(it.jsonschema.properties).forEach(function(key) { %>
112
-
113
- <% let obj=it.jsonschema.properties[key] %>
114
- <% if(skipcolumns.indexOf(key)>=0){ %>
115
- <% } else if(obj.type=='boolean'){ %>
116
- <%~ getBasicElement('checkbox',`#/properties/${key}`,`data.${key}`) %>
117
- <% } else if(obj.type=='number' || obj.type=='integer'){ %>
118
- <%~ getBasicElement('number',`#/properties/${key}`,`data.${key}`) %>
119
- <% } else if(obj.type=='array' && obj.items && obj.items.type =='string' ){ %>
120
- <%~ getBasicElement('chip',`#/properties/${key}`,`data.${key}`) %>
121
- <% } else if(obj.type=='object' && typeof obj['x-foreignkey']!='undefined'){ %>
122
- <%~ getBasicElement('autocomplete',`#/properties/${key}`,`data.${key}`) %>
123
- <% } else if(obj.type=='string'){ %>
124
- <% if(obj.format=='documentno'){ %>
125
- <%~ getBasicElement('documentno',`#/properties/${key}`,`data.${key}`) %>
126
- <% }else if(obj.format=='date'){ %>
127
- <%~ getBasicElement('date',`#/properties/${key}`,`data.${key}`) %>
128
- <% } else if(obj.format=='text'){ %>
129
- <%~ getBasicElement('textarea',`#/properties/${key}`,`data.${key}`) %>
130
- <% } else if(obj.format=='html'){ %>
131
- <%~ getBasicElement('textarea',`#/properties/${key}`,`data.${key}`) %>
132
- <% } else if(obj.format=='email'){ %>
133
- <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`,'email') %>
134
- <% } else if(obj.enum){ %>
135
- <%~ getBasicElement('select',`#/properties/${key}`,`data.${key}`) %>
136
- <% } else if(obj['anyOf']){ %>
137
- <% for(let f = 0; f < obj['anyOf'].length; f++){ %>
138
- <%if(obj['anyOf'][f]['format']){ %>
139
- <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`,obj['anyOf'][f]['format']) %>
140
- <%}%>
141
- <%}%>
142
- <% } else if(obj['oneOf']){ %>
143
- <% for(let f = 0; f < obj['oneOf'].length; f++){ %>
144
- <%if(obj['oneOf'][f]['format']){ %>
145
- <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`,obj['oneOf'][f]['format']) %>
146
- <%}%>
147
- <%}%>
148
-
149
- <% } else {%>
150
- <%~ getBasicElement('text',`#/properties/${key}`,`data.${key}`) %>
151
- <% }%>
152
- <% } else if(obj.type=='object' && obj.properties){ %>
153
- <SimpleAppValue :setting="o.getField('#/properties/<%= key %>')">
154
- <%Object.keys(obj.properties).forEach(function(skey) { %>
155
- <% let sobj=obj.properties[skey] %>
156
- <% let fieldpath=`o.getField('#/properties/${key}/properties/${skey}')` %>
157
- <% let vmodel=`data.${key}.${skey}` %>
158
- <% let instancePath=`#/${key}/${skey}` %>
159
-
160
- <% if(sobj.type=='boolean'){ %>
161
- <%~ getBasicElement('checkbox',fieldpath,vmodel) %>
162
- <% } else if(sobj.type=='number' || sobj.type=='integer'){ %>
163
- <%~ getBasicElement('number',fieldpath,vmodel) %>
164
- <% } else if(sobj.type=='array' && sobj.items && sobj.items.type =='string' ){ %>
165
- <%~ getBasicElement('chip',fieldpath,vmodel) %>
166
- <% } else if(sobj.type=='object' && typeof sobj['x-foreignkey']!='undefined'){ %>
167
- <%~ getBasicElement('chip',fieldpath,vmodel) %>
168
- <% } else if(sobj.type=='string'){ %>
169
- <% if(sobj.format=='date'){ %>
170
- <SimpleAppText type="<%=sobj.format%>" instancePath="<%=instancePath%>" autofocus :setting="<%~fieldpath%>" v-model="<%= vmodel %>"/>
171
- <% } else if(sobj.format=='text'){ %>
172
- <SimpleAppTextarea :setting="<%~fieldpath%>'" instancePath="<%=instancePath%>" v-model="<%= vmodel %>"/>
173
- <% } else if(sobj.format=='html'){ %>
174
- <SimpleAppEditor editorStyle="height: 320px" instancePath="<%=instancePath%>" :setting="<%=fieldpath%>" v-model="<%= vmodel %>"/>
175
- <% } else if(sobj.format=='email'){ %>
176
- <SimpleAppText autofocus type="<%=~obj.type%>" instancePath="<%=instancePath%>" :setting="<%=fieldpath%>" v-model="<%= vmodel %>"/>
177
- <% } else if(sobj.enum){ %>
178
- <SimpleAppSelect autofocus :setting="<%~fieldpath%>" instancePath="<%=instancePath%>" v-model="<%= vmodel %>"/>
179
- <% } else {%>
180
- <SimpleAppText autofocus :setting="<%~fieldpath%>" instancePath="<%=instancePath%>" v-model="<%= vmodel %>"/>
181
- <% }%>
182
- <% } %>
183
- <%})%>
184
- </SimpleAppValue>
185
- <% } else if(obj.type=='array' && obj.items.type=='object'){%>
186
- <SimpleAppInputTable :getField="o.getField" class="col-span-4"
187
- :setting="o.getField('#/properties/<%=key%>')" v-model="data.<%=key%>">
188
- <%let tablefields = Object.keys(obj.items.properties) %>
189
- <% for(let a=0;a<tablefields.length;a++){%>
190
- <%let col= tablefields[a] %>
191
- <% if(skipcolumns.includes(col)){ continue}%>
192
- <%let subobj = obj.items.properties[col] %>
193
- <Column field="<%=col%>" #body="{index}" :header="camelCaseToWords('<%=col%>')">
194
- <%if(subobj['x-foreignkey']){%>
195
- <%~ getBasicElement('autocomplete',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
196
- <% } else if(subobj.type=='boolean'){%>
197
- <%~ getBasicElement('checkbox',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
198
- <% } else if(subobj.type=='number' || subobj.type=='integer'){%>
199
- <%~ getBasicElement('number',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
200
- <%} else if(subobj.type=='string' && subobj.format){%>
201
- <%~ getBasicElement('number',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,subobj.format,true,`/${key}/\${index}/${col}`) %>
202
- <%} else if(subobj.type=='string' && subobj['enum']){%>
203
- <%~ getBasicElement('select',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
204
- <%} else if(subobj.type=='string' ){%>
205
- <%~ getBasicElement('text',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
206
- <%} else if(subobj.type=='number'){%>
207
- <%~ getBasicElement('number',`#/properties/${key}/items/properties/${col}`,`data.${key}[index].${col}`,undefined,true,`/${key}/\${index}/${col}`) %>
208
- <%}%>
209
- </Column>
210
- <%}%>
211
- <Column #body="{index}" header="Delete">
212
- <Button class="btn-danger" type="button" @click="data.<%=key%>.splice(index,1)">X</Button>
213
- </Column>
214
- </SimpleAppInputTable>
215
- <% } else{%>
216
- <!-- Can auto generate <%=obj.key %> -->
217
- <!-- <%~ JSON.stringify(obj) %>-->
218
- <%}%>
219
- <%})%>
220
- </div>
221
- </SimpleAppForm>
222
- <DebugDocumentData v-model="data" :label="doc.getDocName()"/>
17
+ <template>
18
+ <Crud _id="new" @after-create="redirect"/>
223
19
  </template>