@bagelink/vue 0.0.138 → 0.0.142
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/components/FormSchema.vue.d.ts +2 -2
- package/dist/components/FormSchema.vue.d.ts.map +1 -1
- package/dist/components/Modal.vue.d.ts.map +1 -1
- package/dist/components/ModalForm.vue.d.ts.map +1 -1
- package/dist/components/formkit/AddressArray.vue.d.ts +15 -11
- package/dist/components/formkit/AddressArray.vue.d.ts.map +1 -1
- package/dist/components/formkit/BankDetailsArray.vue.d.ts +17 -13
- package/dist/components/formkit/BankDetailsArray.vue.d.ts.map +1 -1
- package/dist/components/formkit/ContactArrayFormKit.vue.d.ts +13 -9
- package/dist/components/formkit/ContactArrayFormKit.vue.d.ts.map +1 -1
- package/dist/components/formkit/FileUploader.vue.d.ts +4 -4
- package/dist/components/formkit/FileUploader.vue.d.ts.map +1 -1
- package/dist/index.cjs +99 -59
- package/dist/index.mjs +100 -60
- package/dist/plugins/modal.d.ts.map +1 -1
- package/dist/style.css +37 -37
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/components/FormSchema.vue +1 -1
- package/src/components/Modal.vue +21 -8
- package/src/components/ModalForm.vue +23 -8
- package/src/components/formkit/AddressArray.vue +25 -22
- package/src/components/formkit/BankDetailsArray.vue +29 -24
- package/src/components/formkit/ContactArrayFormKit.vue +22 -16
- package/src/components/formkit/FileUploader.vue +2 -2
- package/src/plugins/modal.ts +12 -10
- package/src/utils/index.ts +6 -0
package/dist/style.css
CHANGED
|
@@ -748,11 +748,11 @@
|
|
|
748
748
|
border-radius: var(--btn-border-radius);
|
|
749
749
|
}
|
|
750
750
|
|
|
751
|
-
.modal-title[data-v-
|
|
751
|
+
.modal-title[data-v-ca1b8501] {
|
|
752
752
|
margin-top: 0.5rem;
|
|
753
753
|
}
|
|
754
754
|
@media screen and (max-width: 910px) {
|
|
755
|
-
.modal-title[data-v-
|
|
755
|
+
.modal-title[data-v-ca1b8501] {
|
|
756
756
|
margin-top: 1rem;
|
|
757
757
|
}
|
|
758
758
|
}
|
|
@@ -1159,34 +1159,34 @@ th[data-v-fa7146ce] {
|
|
|
1159
1159
|
border: none;
|
|
1160
1160
|
}
|
|
1161
1161
|
|
|
1162
|
-
.bglform-contact[data-v-
|
|
1162
|
+
.bglform-contact[data-v-0533667e] {
|
|
1163
1163
|
display: flex;
|
|
1164
1164
|
align-items: center;
|
|
1165
1165
|
gap: 0.5rem;
|
|
1166
1166
|
max-width: 700px;
|
|
1167
1167
|
position: relative;
|
|
1168
1168
|
}
|
|
1169
|
-
.bglform-contact-label[data-v-
|
|
1169
|
+
.bglform-contact-label[data-v-0533667e] {
|
|
1170
1170
|
flex-basis: 140px;
|
|
1171
1171
|
}
|
|
1172
|
-
.bglform-contact input[type='checkbox'][data-v-
|
|
1172
|
+
.bglform-contact input[type='checkbox'][data-v-0533667e] {
|
|
1173
1173
|
width: 30px;
|
|
1174
1174
|
min-width: 0;
|
|
1175
1175
|
}
|
|
1176
|
-
.light.thin.btn-txt.btn[data-v-
|
|
1176
|
+
.light.thin.btn-txt.btn[data-v-0533667e] {
|
|
1177
1177
|
padding-left: calc(var(--btn-padding) / 4);
|
|
1178
1178
|
padding-right: calc(var(--btn-padding) / 4);
|
|
1179
1179
|
}
|
|
1180
|
-
.add-btn[data-v-
|
|
1180
|
+
.add-btn[data-v-0533667e] {
|
|
1181
1181
|
display: flex;
|
|
1182
1182
|
gap: 0.5rem;
|
|
1183
1183
|
align-items: center;
|
|
1184
1184
|
margin-inline-start: 1rem;
|
|
1185
1185
|
}
|
|
1186
|
-
.add-btn[data-v-
|
|
1186
|
+
.add-btn[data-v-0533667e]:active {
|
|
1187
1187
|
background: none !important;
|
|
1188
1188
|
}
|
|
1189
|
-
.add-btn[data-v-
|
|
1189
|
+
.add-btn[data-v-0533667e]::before {
|
|
1190
1190
|
content: '+';
|
|
1191
1191
|
font-size: 10px;
|
|
1192
1192
|
background: var(--bgl-blue-light);
|
|
@@ -1198,12 +1198,12 @@ th[data-v-fa7146ce] {
|
|
|
1198
1198
|
justify-content: center;
|
|
1199
1199
|
color: var(--bgl-blue);
|
|
1200
1200
|
}
|
|
1201
|
-
.add-btn[data-v-
|
|
1201
|
+
.add-btn[data-v-0533667e]:hover::before {
|
|
1202
1202
|
background: var(--bgl-blue);
|
|
1203
1203
|
color: var(--bgl-white);
|
|
1204
1204
|
}
|
|
1205
1205
|
@media screen and (max-width: 910px) {
|
|
1206
|
-
.bglform-contact-label[data-v-
|
|
1206
|
+
.bglform-contact-label[data-v-0533667e] {
|
|
1207
1207
|
min-width: 0;
|
|
1208
1208
|
}
|
|
1209
1209
|
}
|
|
@@ -1220,45 +1220,45 @@ th[data-v-fa7146ce] {
|
|
|
1220
1220
|
backdrop-filter: blur(1px);
|
|
1221
1221
|
}
|
|
1222
1222
|
|
|
1223
|
-
.bglform-contact[data-v-
|
|
1223
|
+
.bglform-contact[data-v-98a4f943] {
|
|
1224
1224
|
display: flex;
|
|
1225
1225
|
gap: 0.5rem;
|
|
1226
1226
|
max-width: 700px;
|
|
1227
1227
|
position: relative;
|
|
1228
1228
|
}
|
|
1229
|
-
.bglform-contact-label[data-v-
|
|
1229
|
+
.bglform-contact-label[data-v-98a4f943] {
|
|
1230
1230
|
flex-basis: 140px;
|
|
1231
1231
|
}
|
|
1232
|
-
.bglform-contact-address[data-v-
|
|
1232
|
+
.bglform-contact-address[data-v-98a4f943] {
|
|
1233
1233
|
display: flex;
|
|
1234
1234
|
flex-direction: column;
|
|
1235
1235
|
gap: 0.5rem;
|
|
1236
1236
|
}
|
|
1237
|
-
.bglform-contact input[type='checkbox'][data-v-
|
|
1237
|
+
.bglform-contact input[type='checkbox'][data-v-98a4f943] {
|
|
1238
1238
|
width: 30px;
|
|
1239
1239
|
min-width: 0;
|
|
1240
1240
|
}
|
|
1241
|
-
.light.thin.btn-txt.btn[data-v-
|
|
1241
|
+
.light.thin.btn-txt.btn[data-v-98a4f943] {
|
|
1242
1242
|
padding-left: calc(var(--btn-padding) / 4);
|
|
1243
1243
|
padding-right: calc(var(--btn-padding) / 4);
|
|
1244
1244
|
}
|
|
1245
|
-
.bglform-address-del[data-v-
|
|
1245
|
+
.bglform-address-del[data-v-98a4f943] {
|
|
1246
1246
|
margin-top: 6px;
|
|
1247
1247
|
}
|
|
1248
|
-
.bglform-contact-address-flex[data-v-
|
|
1248
|
+
.bglform-contact-address-flex[data-v-98a4f943] {
|
|
1249
1249
|
display: flex;
|
|
1250
1250
|
gap: 0.5rem;
|
|
1251
1251
|
}
|
|
1252
|
-
.add-btn[data-v-
|
|
1252
|
+
.add-btn[data-v-98a4f943] {
|
|
1253
1253
|
display: flex;
|
|
1254
1254
|
gap: 0.5rem;
|
|
1255
1255
|
align-items: center;
|
|
1256
1256
|
margin-inline-start: 1rem;
|
|
1257
1257
|
}
|
|
1258
|
-
.add-btn[data-v-
|
|
1258
|
+
.add-btn[data-v-98a4f943]:active {
|
|
1259
1259
|
background: none !important;
|
|
1260
1260
|
}
|
|
1261
|
-
.add-btn[data-v-
|
|
1261
|
+
.add-btn[data-v-98a4f943]::before {
|
|
1262
1262
|
content: '+';
|
|
1263
1263
|
font-size: 10px;
|
|
1264
1264
|
background: var(--bgl-blue-light);
|
|
@@ -1270,15 +1270,15 @@ th[data-v-fa7146ce] {
|
|
|
1270
1270
|
justify-content: center;
|
|
1271
1271
|
color: var(--bgl-blue);
|
|
1272
1272
|
}
|
|
1273
|
-
.add-btn[data-v-
|
|
1273
|
+
.add-btn[data-v-98a4f943]:hover::before {
|
|
1274
1274
|
background: var(--bgl-blue);
|
|
1275
1275
|
color: var(--bgl-white);
|
|
1276
1276
|
}
|
|
1277
1277
|
@media screen and (max-width: 910px) {
|
|
1278
|
-
.bglform-contact-address-flex[data-v-
|
|
1278
|
+
.bglform-contact-address-flex[data-v-98a4f943] {
|
|
1279
1279
|
flex-wrap: wrap;
|
|
1280
1280
|
}
|
|
1281
|
-
.bglform-contact-label[data-v-
|
|
1281
|
+
.bglform-contact-label[data-v-98a4f943] {
|
|
1282
1282
|
min-width: 0;
|
|
1283
1283
|
}
|
|
1284
1284
|
}
|
|
@@ -1295,45 +1295,45 @@ th[data-v-fa7146ce] {
|
|
|
1295
1295
|
backdrop-filter: blur(1px);
|
|
1296
1296
|
}
|
|
1297
1297
|
|
|
1298
|
-
.bglform-contact[data-v-
|
|
1298
|
+
.bglform-contact[data-v-0928eb22] {
|
|
1299
1299
|
display: flex;
|
|
1300
1300
|
gap: 0.5rem;
|
|
1301
1301
|
max-width: 700px;
|
|
1302
1302
|
position: relative;
|
|
1303
1303
|
}
|
|
1304
|
-
.bglform-contact-label[data-v-
|
|
1304
|
+
.bglform-contact-label[data-v-0928eb22] {
|
|
1305
1305
|
flex-basis: 140px;
|
|
1306
1306
|
}
|
|
1307
|
-
.bglform-contact-address[data-v-
|
|
1307
|
+
.bglform-contact-address[data-v-0928eb22] {
|
|
1308
1308
|
display: flex;
|
|
1309
1309
|
flex-direction: column;
|
|
1310
1310
|
gap: 0.5rem;
|
|
1311
1311
|
}
|
|
1312
|
-
.bglform-contact input[type='checkbox'][data-v-
|
|
1312
|
+
.bglform-contact input[type='checkbox'][data-v-0928eb22] {
|
|
1313
1313
|
width: 30px;
|
|
1314
1314
|
min-width: 0;
|
|
1315
1315
|
}
|
|
1316
|
-
.light.thin.btn-txt.btn[data-v-
|
|
1316
|
+
.light.thin.btn-txt.btn[data-v-0928eb22] {
|
|
1317
1317
|
padding-left: calc(var(--btn-padding) / 4);
|
|
1318
1318
|
padding-right: calc(var(--btn-padding) / 4);
|
|
1319
1319
|
}
|
|
1320
|
-
.bglform-address-del[data-v-
|
|
1320
|
+
.bglform-address-del[data-v-0928eb22] {
|
|
1321
1321
|
margin-top: 6px;
|
|
1322
1322
|
}
|
|
1323
|
-
.bglform-contact-address-flex[data-v-
|
|
1323
|
+
.bglform-contact-address-flex[data-v-0928eb22] {
|
|
1324
1324
|
display: flex;
|
|
1325
1325
|
gap: 0.5rem;
|
|
1326
1326
|
}
|
|
1327
|
-
.add-btn[data-v-
|
|
1327
|
+
.add-btn[data-v-0928eb22] {
|
|
1328
1328
|
display: flex;
|
|
1329
1329
|
gap: 0.5rem;
|
|
1330
1330
|
align-items: center;
|
|
1331
1331
|
margin-inline-start: 1rem;
|
|
1332
1332
|
}
|
|
1333
|
-
.add-btn[data-v-
|
|
1333
|
+
.add-btn[data-v-0928eb22]:active {
|
|
1334
1334
|
background: none !important;
|
|
1335
1335
|
}
|
|
1336
|
-
.add-btn[data-v-
|
|
1336
|
+
.add-btn[data-v-0928eb22]::before {
|
|
1337
1337
|
content: '+';
|
|
1338
1338
|
font-size: 10px;
|
|
1339
1339
|
background: var(--bgl-blue-light);
|
|
@@ -1345,15 +1345,15 @@ th[data-v-fa7146ce] {
|
|
|
1345
1345
|
justify-content: center;
|
|
1346
1346
|
color: var(--bgl-blue);
|
|
1347
1347
|
}
|
|
1348
|
-
.add-btn[data-v-
|
|
1348
|
+
.add-btn[data-v-0928eb22]:hover::before {
|
|
1349
1349
|
background: var(--bgl-blue);
|
|
1350
1350
|
color: var(--bgl-white);
|
|
1351
1351
|
}
|
|
1352
1352
|
@media screen and (max-width: 910px) {
|
|
1353
|
-
.bglform-contact-address-flex[data-v-
|
|
1353
|
+
.bglform-contact-address-flex[data-v-0928eb22] {
|
|
1354
1354
|
flex-wrap: wrap;
|
|
1355
1355
|
}
|
|
1356
|
-
.bglform-contact-label[data-v-
|
|
1356
|
+
.bglform-contact-label[data-v-0928eb22] {
|
|
1357
1357
|
min-width: 0;
|
|
1358
1358
|
}
|
|
1359
1359
|
}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -5,5 +5,6 @@ export declare function computeFields(modelValue: Record<string, any>): BagelFie
|
|
|
5
5
|
export declare const copyText: (text: string, cb?: ((msg: string) => void) | undefined) => Promise<void>;
|
|
6
6
|
export declare const useFormkit: () => unknown;
|
|
7
7
|
export declare const initials: (...strArr: string[]) => string;
|
|
8
|
+
export declare function useEscape(event: KeyboardEvent, closeModel: () => void): void;
|
|
8
9
|
export { formatString } from './strings';
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,eAAO,MAAM,QAAQ,OAAQ,MAAM,IAAI,yBAGtC,CAAC;AAEF,eAAO,MAAM,UAAU,QAAS,MAAM,WAG3B,CAAC;AAEZ,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,UAAU,EAAE,CAmB3E;AAED,eAAO,MAAM,QAAQ,SACd,MAAM,cAED,MAAM,KAAK,IAAI,+BAI1B,CAAC;AAEF,eAAO,MAAM,UAAU,eAGtB,CAAC;AAEF,eAAO,MAAM,QAAQ,cAAe,MAAM,EAAE,WAAiD,CAAC;AAE9F,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhD,eAAO,MAAM,QAAQ,OAAQ,MAAM,IAAI,yBAGtC,CAAC;AAEF,eAAO,MAAM,UAAU,QAAS,MAAM,WAG3B,CAAC;AAEZ,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,UAAU,EAAE,CAmB3E;AAED,eAAO,MAAM,QAAQ,SACd,MAAM,cAED,MAAM,KAAK,IAAI,+BAI1B,CAAC;AAEF,eAAO,MAAM,UAAU,eAGtB,CAAC;AAEF,eAAO,MAAM,QAAQ,cAAe,MAAM,EAAE,WAAiD,CAAC;AAE9F,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,QAIrE;AAED,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bagelink/vue",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.142",
|
|
5
5
|
"description": "Bagel core sdk packages",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Neveh Allon",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"./vite.config.ts"
|
|
52
52
|
],
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"vue": "^3.3.
|
|
54
|
+
"vue": "^3.3.9"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"@vue-macros/reactivity-transform": "^0.4.0"
|
|
@@ -43,7 +43,7 @@ const props = withDefaults(defineProps<{
|
|
|
43
43
|
// eslint-disable-next-line no-unused-vars
|
|
44
44
|
onDelete?: ((id: string) => void);
|
|
45
45
|
// eslint-disable-next-line no-unused-vars
|
|
46
|
-
i18nT
|
|
46
|
+
i18nT?: (key: string) => string;
|
|
47
47
|
}>(), {
|
|
48
48
|
i18nT: (key: string) => key,
|
|
49
49
|
});
|
package/src/components/Modal.vue
CHANGED
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
</template>
|
|
32
32
|
|
|
33
33
|
<script lang="ts" setup>
|
|
34
|
-
import { onMounted } from 'vue';
|
|
35
|
-
import { type BtnOptions, Btn } from '@bagelink/vue';
|
|
34
|
+
import { onMounted, onUnmounted } from 'vue';
|
|
35
|
+
import { type BtnOptions, Btn, useEscape } from '@bagelink/vue';
|
|
36
36
|
import '../styles/modal.css';
|
|
37
37
|
|
|
38
38
|
defineProps<{
|
|
@@ -44,12 +44,6 @@ defineProps<{
|
|
|
44
44
|
|
|
45
45
|
let isActive = $ref<boolean>(false);
|
|
46
46
|
|
|
47
|
-
onMounted(() => {
|
|
48
|
-
setTimeout(() => {
|
|
49
|
-
isActive = true;
|
|
50
|
-
}, 1);
|
|
51
|
-
});
|
|
52
|
-
|
|
53
47
|
const emit = defineEmits(['update:isModalVisible']);
|
|
54
48
|
|
|
55
49
|
const closeModal = () => {
|
|
@@ -58,4 +52,23 @@ const closeModal = () => {
|
|
|
58
52
|
emit('update:isModalVisible', false);
|
|
59
53
|
}, 200);
|
|
60
54
|
};
|
|
55
|
+
|
|
56
|
+
const escapeKeyClose = (e: KeyboardEvent) => useEscape(e, () => closeModal());
|
|
57
|
+
|
|
58
|
+
onMounted(() => {
|
|
59
|
+
setTimeout(() => {
|
|
60
|
+
isActive = true;
|
|
61
|
+
}, 1);
|
|
62
|
+
|
|
63
|
+
document.addEventListener(
|
|
64
|
+
'keydown',
|
|
65
|
+
escapeKeyClose,
|
|
66
|
+
);
|
|
67
|
+
});
|
|
68
|
+
onUnmounted(() => {
|
|
69
|
+
document.removeEventListener(
|
|
70
|
+
'keydown',
|
|
71
|
+
escapeKeyClose,
|
|
72
|
+
);
|
|
73
|
+
});
|
|
61
74
|
</script>
|
|
@@ -34,8 +34,10 @@
|
|
|
34
34
|
|
|
35
35
|
<script lang="ts" setup>
|
|
36
36
|
import { type FormKitSchemaDefinition } from '@formkit/core';
|
|
37
|
-
import { onMounted } from 'vue';
|
|
38
|
-
import {
|
|
37
|
+
import { onMounted, onUnmounted } from 'vue';
|
|
38
|
+
import {
|
|
39
|
+
Btn, FormSchema, BtnOptions, useEscape,
|
|
40
|
+
} from '@bagelink/vue';
|
|
39
41
|
import '../styles/modal.css';
|
|
40
42
|
|
|
41
43
|
// import { BagelField } from '@bagelink/vue';
|
|
@@ -62,12 +64,6 @@ const computedFormSchema = $computed(() => {
|
|
|
62
64
|
|
|
63
65
|
let isActive = $ref<boolean>(false);
|
|
64
66
|
|
|
65
|
-
onMounted(() => {
|
|
66
|
-
setTimeout(() => {
|
|
67
|
-
isActive = true;
|
|
68
|
-
}, 1);
|
|
69
|
-
});
|
|
70
|
-
|
|
71
67
|
const emit = defineEmits(['update:isModalVisible', 'update:modelValue']);
|
|
72
68
|
const handleEmit = (value: any) => {
|
|
73
69
|
emit('update:modelValue', value);
|
|
@@ -93,6 +89,25 @@ const runDelete = () => {
|
|
|
93
89
|
props.onDelete?.(props.modelValue?.id);
|
|
94
90
|
closeModal();
|
|
95
91
|
};
|
|
92
|
+
|
|
93
|
+
const escapeKeyClose = (e: KeyboardEvent) => useEscape(e, () => closeModal());
|
|
94
|
+
|
|
95
|
+
onMounted(() => {
|
|
96
|
+
setTimeout(() => {
|
|
97
|
+
isActive = true;
|
|
98
|
+
}, 1);
|
|
99
|
+
|
|
100
|
+
document.addEventListener(
|
|
101
|
+
'keydown',
|
|
102
|
+
escapeKeyClose,
|
|
103
|
+
);
|
|
104
|
+
});
|
|
105
|
+
onUnmounted(() => {
|
|
106
|
+
document.removeEventListener(
|
|
107
|
+
'keydown',
|
|
108
|
+
escapeKeyClose,
|
|
109
|
+
);
|
|
110
|
+
});
|
|
96
111
|
</script>
|
|
97
112
|
|
|
98
113
|
<style scoped>
|
|
@@ -11,20 +11,20 @@
|
|
|
11
11
|
v-if="deleteCandidate === i"
|
|
12
12
|
>
|
|
13
13
|
<p class="txt14">
|
|
14
|
-
{{
|
|
14
|
+
{{ formPlaceholders?.sure }}
|
|
15
15
|
</p>
|
|
16
16
|
<Btn
|
|
17
17
|
thin
|
|
18
18
|
color="red"
|
|
19
19
|
@click="deleteContact(address.id)"
|
|
20
20
|
>
|
|
21
|
-
{{
|
|
21
|
+
{{ formPlaceholders?.delete }}
|
|
22
22
|
</Btn>
|
|
23
23
|
<Btn
|
|
24
24
|
thin
|
|
25
25
|
@click="deleteCandidate = -1"
|
|
26
26
|
>
|
|
27
|
-
{{
|
|
27
|
+
{{ formPlaceholders?.cancel }}
|
|
28
28
|
</Btn>
|
|
29
29
|
</div>
|
|
30
30
|
<Checkbox
|
|
@@ -35,29 +35,29 @@
|
|
|
35
35
|
class="bglform-contact-label"
|
|
36
36
|
v-model="address.label"
|
|
37
37
|
type="text"
|
|
38
|
-
:placeholder="
|
|
38
|
+
:placeholder="formPlaceholders?.label"
|
|
39
39
|
>
|
|
40
40
|
<div class="bglform-contact-address">
|
|
41
41
|
<input
|
|
42
42
|
v-model="address.street"
|
|
43
|
-
:placeholder="
|
|
43
|
+
:placeholder="formPlaceholders?.street"
|
|
44
44
|
type="text"
|
|
45
45
|
>
|
|
46
46
|
<div class="bglform-contact-address-flex">
|
|
47
47
|
<input
|
|
48
48
|
v-model="address.city"
|
|
49
|
-
:placeholder="
|
|
49
|
+
:placeholder="formPlaceholders?.city"
|
|
50
50
|
type="text"
|
|
51
51
|
>
|
|
52
52
|
<input
|
|
53
53
|
v-model="address.postal_code"
|
|
54
|
-
:placeholder="
|
|
54
|
+
:placeholder="formPlaceholders?.zip"
|
|
55
55
|
type="text"
|
|
56
56
|
>
|
|
57
57
|
</div>
|
|
58
58
|
<input
|
|
59
59
|
v-model="address.country"
|
|
60
|
-
:placeholder="
|
|
60
|
+
:placeholder="formPlaceholders?.country"
|
|
61
61
|
type="text"
|
|
62
62
|
>
|
|
63
63
|
</div>
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
thin
|
|
78
78
|
@click="addNew"
|
|
79
79
|
>
|
|
80
|
-
{{
|
|
80
|
+
{{ formPlaceholders?.add }}
|
|
81
81
|
{{ context?.label }}
|
|
82
82
|
</Btn>
|
|
83
83
|
</div>
|
|
@@ -92,26 +92,29 @@ import { Btn, useBagel } from '@bagelink/vue';
|
|
|
92
92
|
import Checkbox from '../form/inputs/Checkbox.vue';
|
|
93
93
|
|
|
94
94
|
export interface AddressArrContext {
|
|
95
|
-
|
|
96
95
|
label?: string;
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
96
|
+
id?: string;
|
|
97
|
+
value: any[];
|
|
98
|
+
node: Record<string, any>;
|
|
99
|
+
attrs: {
|
|
100
|
+
formPlaceholders?: {
|
|
101
|
+
add?: string;
|
|
102
|
+
cancel?: string;
|
|
103
|
+
city?: string;
|
|
104
|
+
country?: string;
|
|
105
|
+
delete?: string;
|
|
106
|
+
label?: string;
|
|
107
|
+
sure?: string;
|
|
108
|
+
zip?: string;
|
|
109
|
+
street?: string;
|
|
110
|
+
};
|
|
107
111
|
};
|
|
108
|
-
[key: string]: any;
|
|
109
|
-
|
|
110
112
|
}
|
|
111
113
|
const bagel = useBagel();
|
|
112
114
|
const props = defineProps<{
|
|
113
115
|
context: AddressArrContext
|
|
114
116
|
}>();
|
|
117
|
+
const formPlaceholders = $computed(() => props.context?.attrs?.formPlaceholders);
|
|
115
118
|
|
|
116
119
|
let val = $ref<any[]>([]);
|
|
117
120
|
const addNew = () => {
|
|
@@ -11,20 +11,20 @@
|
|
|
11
11
|
v-if="deleteCandidate === i"
|
|
12
12
|
>
|
|
13
13
|
<p class="txt14">
|
|
14
|
-
{{
|
|
14
|
+
{{ formPlaceholders?.sure }}
|
|
15
15
|
</p>
|
|
16
16
|
<Btn
|
|
17
17
|
thin
|
|
18
18
|
color="red"
|
|
19
19
|
@click="deleteContact(bank_account.id)"
|
|
20
20
|
>
|
|
21
|
-
{{
|
|
21
|
+
{{ formPlaceholders?.delete }}
|
|
22
22
|
</Btn>
|
|
23
23
|
<Btn
|
|
24
24
|
thin
|
|
25
25
|
@click="deleteCandidate = -1"
|
|
26
26
|
>
|
|
27
|
-
{{
|
|
27
|
+
{{ formPlaceholders?.cancel }}
|
|
28
28
|
</Btn>
|
|
29
29
|
</div>
|
|
30
30
|
<Checkbox
|
|
@@ -35,25 +35,25 @@
|
|
|
35
35
|
class="bglform-contact-label"
|
|
36
36
|
v-model="bank_account.label"
|
|
37
37
|
type="text"
|
|
38
|
-
:placeholder="
|
|
38
|
+
:placeholder="formPlaceholders?.label"
|
|
39
39
|
>
|
|
40
40
|
<div class="bglform-contact-address">
|
|
41
41
|
<input
|
|
42
42
|
v-model="bank_account.bank_name"
|
|
43
|
-
:placeholder="
|
|
43
|
+
:placeholder="formPlaceholders?.bankName"
|
|
44
44
|
type="text"
|
|
45
45
|
required
|
|
46
46
|
>
|
|
47
47
|
<div class="bglform-contact-address-flex">
|
|
48
48
|
<input
|
|
49
49
|
v-model="bank_account.branch"
|
|
50
|
-
:placeholder="
|
|
50
|
+
:placeholder="formPlaceholders?.bankBranch"
|
|
51
51
|
type="text"
|
|
52
52
|
required
|
|
53
53
|
>
|
|
54
54
|
<input
|
|
55
55
|
v-model="bank_account.account_number"
|
|
56
|
-
:placeholder="
|
|
56
|
+
:placeholder="formPlaceholders?.bankAccount"
|
|
57
57
|
type="text"
|
|
58
58
|
required
|
|
59
59
|
>
|
|
@@ -61,13 +61,13 @@
|
|
|
61
61
|
<div class="grid gap-2">
|
|
62
62
|
<input
|
|
63
63
|
v-model="bank_account.bank_account_holder"
|
|
64
|
-
:placeholder="
|
|
64
|
+
:placeholder="formPlaceholders?.bankAccountHolder"
|
|
65
65
|
type="text"
|
|
66
66
|
required
|
|
67
67
|
>
|
|
68
68
|
<input
|
|
69
69
|
v-model="bank_account.bank_account_holder_id"
|
|
70
|
-
:placeholder="
|
|
70
|
+
:placeholder="formPlaceholders?.bankAccountHolderID"
|
|
71
71
|
type="text"
|
|
72
72
|
>
|
|
73
73
|
<input
|
|
@@ -82,7 +82,7 @@
|
|
|
82
82
|
>
|
|
83
83
|
<input
|
|
84
84
|
v-model="bank_account.bank_address"
|
|
85
|
-
:placeholder="
|
|
85
|
+
:placeholder="formPlaceholders?.bankAddress"
|
|
86
86
|
type="text"
|
|
87
87
|
>
|
|
88
88
|
</div>
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
thin
|
|
104
104
|
@click="val.push({})"
|
|
105
105
|
>
|
|
106
|
-
{{
|
|
106
|
+
{{ formPlaceholders?.add }} {{ context?.label }}
|
|
107
107
|
</Btn>
|
|
108
108
|
</div>
|
|
109
109
|
</div>
|
|
@@ -118,26 +118,31 @@ import Checkbox from '../form/inputs/Checkbox.vue';
|
|
|
118
118
|
|
|
119
119
|
export interface BankDetailsContext {
|
|
120
120
|
label?: string;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
121
|
+
id?: string;
|
|
122
|
+
value: any[];
|
|
123
|
+
node: Record<string, any>;
|
|
124
|
+
attrs: {
|
|
125
|
+
formPlaceholders?: {
|
|
126
|
+
sure?: string;
|
|
127
|
+
delete?: string;
|
|
128
|
+
cancel?: string;
|
|
129
|
+
label?: string;
|
|
130
|
+
bankName?: string;
|
|
131
|
+
bankBranch?: string;
|
|
132
|
+
bankAccount?: string;
|
|
133
|
+
bankAccountHolder?: string;
|
|
134
|
+
bankAccountHolderID?: string;
|
|
135
|
+
bankAddress?: string;
|
|
136
|
+
add?: string;
|
|
137
|
+
};
|
|
133
138
|
};
|
|
134
|
-
[key: string]: any;
|
|
135
139
|
}
|
|
136
140
|
const bagel = useBagel();
|
|
137
141
|
|
|
138
142
|
const props = defineProps<{
|
|
139
143
|
context: BankDetailsContext;
|
|
140
144
|
}>();
|
|
145
|
+
const formPlaceholders = $computed(() => props.context?.attrs?.formPlaceholders);
|
|
141
146
|
|
|
142
147
|
let val = $ref<any[]>([]);
|
|
143
148
|
|