フロー保存の実装

This commit is contained in:
2023-10-16 13:38:51 +09:00
parent cdfb1d4310
commit 0b414fbfbe
12 changed files with 357 additions and 385 deletions

View File

@@ -1,11 +1,5 @@
<template>
<div
class="row"
style="
border-radius: 2px;
box-shadow: rgba(255, 255, 255, 0.1) 0px 0px 0px 1px inset,
rgba(0, 0, 0, 0.3) 0px 0px 0px 1px;
">
<div class="row app-box">
<q-icon
class="self-center q-ma-sm"
name="widgets"
@@ -13,7 +7,7 @@
style="font-size: 2em"
/>
<div class="col-7 self-center ellipsis">
{{ selectedApp.name }}
{{ store.appInfo?.name }}
</div>
<div class="self-center">
<q-btn
@@ -51,22 +45,19 @@ export default defineComponent({
const store = useFlowEditorStore();
const appDg = ref();
const showSelectApp=ref(false);
const selectedApp =ref<AppInfo>({
appId:"",
name:"",
});
const closeDg=(val :any)=>{
showSelectApp.value=false;
console.log("Dialog closed->",val);
if (val == 'OK') {
const data = appDg.value.selected[0];
console.log(data);
selectedApp.value={
const appInfo={
appId:data.id ,
name:data.name
};
store.setApp(selectedApp.value);
store.setFlow();
store.setApp(appInfo);
store.loadFlow();
}
}
const showAppDialog=()=>{
@@ -74,7 +65,6 @@ export default defineComponent({
}
return {
store,
selectedApp,
showSelectApp,
showAppDialog,
closeDg,
@@ -83,3 +73,9 @@ export default defineComponent({
}
});
</script>
<style lang="scss">
.app-box{
border-radius: 2px;
box-shadow: rgba(255, 255, 255, 0.1) 0px 0px 0px 1px inset,rgba(0, 0, 0, 0.3) 0px 0px 0px 1px;
}
</style>

View File

@@ -1,11 +1,11 @@
<template>
<div class="q-pa-md q-gutter-sm">
<!-- <div class="q-pa-md q-gutter-sm"> -->
<q-tree
:nodes="store.eventTree.screens"
node-key="label"
children-key="events"
no-connectors
v-model:expanded="expanded"
v-model:expanded="store.expandedScreen"
:dense="true"
>
<template v-slot:default-header="prop">
@@ -19,7 +19,7 @@
</div>
</template>
</q-tree>
</div>
<!-- </div> -->
</template>
<script lang="ts">
@@ -36,9 +36,7 @@ export default defineComponent({
// const eventTree=ref(kintoneEvents);
// const selectedFlow = store.currentFlow;
const expanded=ref([
store.currentFlow?.getRoot()?.title
]);
// const expanded=ref();
const selectedEvent = ref<IKintoneEvent|null>(null);
const onSelected=(node:IKintoneEvent)=>{
if(!node.eventId){
@@ -63,7 +61,7 @@ export default defineComponent({
}
return {
// eventTree,
expanded,
// expanded,
onSelected,
selectedEvent,
store

View File

@@ -1,6 +1,6 @@
<template>
<q-input v-model="selectedDate" :label="placeholder" mask="date" :rules="['date']">
<q-input v-model="selectedDate" :label="displayName" :placeholder="placeholder" mask="date" :rules="['date']">
<template v-slot:append>
<q-icon name="event" class="cursor-pointer">
<q-popup-proxy cover transition-show="scale" transition-hide="scale">
@@ -21,6 +21,10 @@ import { defineComponent, ref ,watchEffect} from 'vue';
export default defineComponent({
name: 'DatePicker',
props: {
displayName:{
type: String,
default: '',
},
placeholder: {
type: String,
default: '',

View File

@@ -1,8 +1,8 @@
<template>
<q-input v-model="selectedField" :label="placeholder">
<template v-slot:append>
<q-icon name="search" class="cursor-pointer" @click="showDg"/>
</template>
<q-input v-model="selectedField" :label="displayName" :placeholder="placeholder" >
<template v-slot:append>
<q-icon name="search" class="cursor-pointer" @click="showDg"/>
</template>
</q-input>
<show-dialog v-model:visible="show" name="フィールド一覧" @close="closeDg">
<field-select ref="appDg" name="フィールド" type="single" :appId="store.appInfo?.appId"></field-select>
@@ -21,6 +21,10 @@ export default defineComponent({
FieldSelect,
},
props: {
displayName:{
type: String,
default: '',
},
placeholder: {
type: String,
default: '',

View File

@@ -1,5 +1,5 @@
<template>
<q-input :label="placeholder" v-model="inputValue"/>
<q-input :label="displayName" :placeholder="placeholder" v-model="inputValue"/>
</template>
<script lang="ts">
@@ -8,6 +8,10 @@ import { defineComponent,ref,watchEffect } from 'vue';
export default defineComponent({
name: 'InputText',
props: {
displayName:{
type: String,
default: '',
},
placeholder: {
type: String,
default: '',

View File

@@ -1,5 +1,5 @@
<template>
<q-select v-model="selectedValue" :label="placeholder" :options="options"/>
<q-select v-model="selectedValue" :label="displayName" :options="options"/>
</template>
<script lang="ts">
@@ -8,6 +8,10 @@ import { defineComponent,ref,watchEffect } from 'vue';
export default defineComponent({
name: 'SelectBox',
props: {
displayName:{
type: String,
default: '',
},
placeholder: {
type: String,
default: '',