@bagelink/vue 0.0.235-beta.0 → 0.0.237

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.
Files changed (55) hide show
  1. package/dist/components/Btn.vue.d.ts +5 -0
  2. package/dist/components/Btn.vue.d.ts.map +1 -1
  3. package/dist/components/DataPreview.vue.d.ts.map +1 -1
  4. package/dist/components/ListItem.vue.d.ts +4 -0
  5. package/dist/components/ListItem.vue.d.ts.map +1 -1
  6. package/dist/components/Modal.vue.d.ts +3 -1
  7. package/dist/components/Modal.vue.d.ts.map +1 -1
  8. package/dist/components/ModalBglForm.vue.d.ts +2 -2
  9. package/dist/components/ModalForm.vue.d.ts +48 -41
  10. package/dist/components/ModalForm.vue.d.ts.map +1 -1
  11. package/dist/components/TableSchema.vue.d.ts +2 -2
  12. package/dist/components/Title.vue.d.ts +9 -0
  13. package/dist/components/Title.vue.d.ts.map +1 -1
  14. package/dist/components/form/BglField.vue.d.ts.map +1 -1
  15. package/dist/components/form/BglForm.vue.d.ts +2 -2
  16. package/dist/components/form/ItemRef.vue.d.ts +0 -1
  17. package/dist/components/form/ItemRef.vue.d.ts.map +1 -1
  18. package/dist/components/form/inputs/SelectField.vue.d.ts +4 -1
  19. package/dist/components/form/inputs/SelectField.vue.d.ts.map +1 -1
  20. package/dist/components/form/inputs/SelectInput.vue.d.ts +4 -4
  21. package/dist/components/form/inputs/SelectInput.vue.d.ts.map +1 -1
  22. package/dist/components/index.d.ts +1 -2
  23. package/dist/components/index.d.ts.map +1 -1
  24. package/dist/components/whatsapp/form/MsgTemplate.vue.d.ts +4 -3
  25. package/dist/components/whatsapp/form/MsgTemplate.vue.d.ts.map +1 -1
  26. package/dist/index.cjs +222 -299
  27. package/dist/index.mjs +223 -300
  28. package/dist/plugins/modal.d.ts +1 -1
  29. package/dist/plugins/modal.d.ts.map +1 -1
  30. package/dist/style.css +82 -82
  31. package/dist/utils/index.d.ts.map +1 -1
  32. package/package.json +1 -1
  33. package/src/components/Btn.vue +8 -24
  34. package/src/components/DataPreview.vue +4 -15
  35. package/src/components/ListItem.vue +5 -5
  36. package/src/components/Modal.vue +12 -22
  37. package/src/components/ModalForm.vue +25 -55
  38. package/src/components/TableSchema.vue +1 -1
  39. package/src/components/Title.vue +5 -1
  40. package/src/components/form/BglField.vue +6 -12
  41. package/src/components/form/BglForm.vue +1 -1
  42. package/src/components/form/inputs/DateInput.vue +6 -2
  43. package/src/components/form/inputs/SelectInput.vue +2 -2
  44. package/src/components/index.ts +1 -2
  45. package/src/components/whatsapp/form/MsgTemplate.vue +6 -12
  46. package/src/plugins/modal.ts +5 -7
  47. package/src/styles/theme.css +1 -0
  48. package/src/utils/index.ts +6 -5
  49. package/dist/components/Drop.vue.d.ts +0 -34
  50. package/dist/components/Drop.vue.d.ts.map +0 -1
  51. package/dist/components/FileUploader.vue.d.ts +0 -60
  52. package/dist/components/FileUploader.vue.d.ts.map +0 -1
  53. package/src/components/FormKitTable.vue +0 -280
  54. package/src/components/FormSchema.vue +0 -76
  55. package/src/components/ModalBglForm.vue +0 -106
@@ -13,7 +13,7 @@ interface ModalFormOptions extends ModalOptions {
13
13
  'onUpdate:modelValue'?: (val: any) => void;
14
14
  onSubmit: (val: any) => void;
15
15
  onDelete?: (id: string) => void;
16
- schema: BglFormSchemaT<any>;
16
+ schema: BglFormSchemaT<any> | (() => BglFormSchemaT<any>);
17
17
  }
18
18
  interface ModalApi {
19
19
  showModal: (options: ModalOptions, slots?: Record<string, any>) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../src/plugins/modal.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACf,MAAM,KAAK,CAAC;AACb,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhE,UAAU,YAAY;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,gBAAiB,SAAQ,YAAY;IAC9C,UAAU,CAAC,EAAE,GAAG,CAAC;IAEjB,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAE3C,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAE7B,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;CAC5B;AAED,UAAU,QAAQ;IAEjB,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IAExE,aAAa,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IAEhF,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAEpC;AAED,eAAO,MAAM,WAAW,EAAE,YAAY,CAAC,QAAQ,CAAmB,CAAC;AAEnE,eAAO,MAAM,QAAQ,QAAO,QAI3B,CAAC;AAQF,eAAO,MAAM,WAAW,EAAE,MAoDzB,CAAC"}
1
+ {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../src/plugins/modal.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACf,MAAM,KAAK,CAAC;AACb,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGhE,UAAU,YAAY;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,gBAAiB,SAAQ,YAAY;IAC9C,UAAU,CAAC,EAAE,GAAG,CAAC;IAEjB,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAE3C,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;IAE7B,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;CAE1D;AAED,UAAU,QAAQ;IAEjB,SAAS,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IAExE,aAAa,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;IAEhF,SAAS,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAEpC;AAED,eAAO,MAAM,WAAW,EAAE,YAAY,CAAC,QAAQ,CAAmB,CAAC;AAEnE,eAAO,MAAM,QAAQ,QAAO,QAI3B,CAAC;AAQF,eAAO,MAAM,WAAW,EAAE,MAiDzB,CAAC"}
package/dist/style.css CHANGED
@@ -306,16 +306,16 @@
306
306
  }
307
307
  }
308
308
 
309
- .loading[data-v-0ca0d3de] {
309
+ .loading[data-v-593b2146] {
310
310
  border: 1px solid var(--bgl-white);
311
311
  border-bottom: 2px solid var(--bgl-white);
312
- animation: spin-0ca0d3de 1s linear infinite;
312
+ animation: spin-593b2146 1s linear infinite;
313
313
  border-radius: 100px;
314
314
  width: 1rem;
315
315
  height: 1rem;
316
316
  margin: auto;
317
317
  }
318
- @keyframes spin-0ca0d3de {
318
+ @keyframes spin-593b2146 {
319
319
  0% {
320
320
  transform: rotate(0deg);
321
321
  }
@@ -323,7 +323,7 @@
323
323
  transform: rotate(360deg);
324
324
  }
325
325
  }
326
- .btn-icon[data-v-0ca0d3de] {
326
+ .btn-icon[data-v-593b2146] {
327
327
  height: var(--btn-height);
328
328
  width: var(--btn-height);
329
329
  border-radius: 100%;
@@ -333,97 +333,97 @@
333
333
  flex-shrink: 0;
334
334
  transition: var(--bgl-transition);
335
335
  }
336
- .btn[data-v-0ca0d3de] {
336
+ .btn[data-v-593b2146] {
337
337
  padding-left: var(--btn-padding);
338
338
  padding-right: var(--btn-padding);
339
339
  transition: var(--bgl-transition);
340
340
  text-decoration: none;
341
341
  }
342
- .btn[disabled="true"][data-v-0ca0d3de] {
342
+ .btn[disabled="true"][data-v-593b2146] {
343
343
  opacity: 0.5;
344
344
  cursor: not-allowed;
345
345
  }
346
- .btn-flex[data-v-0ca0d3de] {
346
+ .btn-flex[data-v-593b2146] {
347
347
  display: flex;
348
348
  align-items: center;
349
349
  gap: 0.5rem;
350
350
  justify-content: center;
351
351
  }
352
- .btn .icon-font[data-v-0ca0d3de] {
352
+ .btn .icon-font[data-v-593b2146] {
353
353
  font-size: calc(var(--input-font-size) * 1.3);
354
354
  }
355
- .btn[data-v-0ca0d3de],
356
- .btn-icon[data-v-0ca0d3de] {
357
- background-color: var(--0b5510c0);
358
- color: var(--18db167b);
355
+ .btn[data-v-593b2146],
356
+ .btn-icon[data-v-593b2146] {
357
+ background-color: var(--bfb3f9c4);
358
+ color: var(--5ae19879);
359
359
  }
360
- .btn[data-v-0ca0d3de]:hover,
361
- .btn-icon[data-v-0ca0d3de]:hover {
360
+ .btn[data-v-593b2146]:hover,
361
+ .btn-icon[data-v-593b2146]:hover {
362
362
  filter: var(--bgl-hover-filter);
363
363
  }
364
- .btn[data-v-0ca0d3de]:active,
365
- .btn-icon[data-v-0ca0d3de]:active {
364
+ .btn[data-v-593b2146]:active,
365
+ .btn-icon[data-v-593b2146]:active {
366
366
  filter: var(--bgl-active-filter);
367
367
  }
368
- .btn.flatBtn[data-v-0ca0d3de] {
368
+ .btn.flatBtn[data-v-593b2146] {
369
369
  padding-left: var(--btn-padding);
370
370
  padding-right: var(--btn-padding);
371
371
  background: transparent;
372
372
  }
373
- .btn-icon.flatBtn[data-v-0ca0d3de] {
373
+ .btn-icon.flatBtn[data-v-593b2146] {
374
374
  background: transparent;
375
375
  }
376
- .btn.flatBtn[data-v-0ca0d3de]:hover,
377
- .btn-icon.flatBtn[data-v-0ca0d3de]:hover {
376
+ .btn.flatBtn[data-v-593b2146]:hover,
377
+ .btn-icon.flatBtn[data-v-593b2146]:hover {
378
378
  filter: var(--bgl-active-filter);
379
379
  }
380
- .btn.flatBtn[data-v-0ca0d3de]:active,
381
- .btn-icon.flatBtn[data-v-0ca0d3de]:active {
380
+ .btn.flatBtn[data-v-593b2146]:active,
381
+ .btn-icon.flatBtn[data-v-593b2146]:active {
382
382
  background: var(--bgl-white);
383
383
  filter: var(--bgl-hover-filter);
384
384
  }
385
- .btn.flatBtn.red[data-v-0ca0d3de],
386
- .btn-icon.flatBtn.red[data-v-0ca0d3de] {
385
+ .btn.flatBtn.red[data-v-593b2146],
386
+ .btn-icon.flatBtn.red[data-v-593b2146] {
387
387
  color: var(--bgl-red);
388
388
  }
389
- .btn.flatBtn.light[data-v-0ca0d3de],
390
- .btn-icon.flatBtn.light[data-v-0ca0d3de] {
389
+ .btn.flatBtn.light[data-v-593b2146],
390
+ .btn-icon.flatBtn.light[data-v-593b2146] {
391
391
  color: var(--bgl-primary-tint);
392
392
  }
393
- .btn.flatBtn.black[data-v-0ca0d3de],
394
- .btn-icon.flatBtn.black[data-v-0ca0d3de] {
393
+ .btn.flatBtn.black[data-v-593b2146],
394
+ .btn-icon.flatBtn.black[data-v-593b2146] {
395
395
  color: var(--bgl-black);
396
396
  }
397
- .btn.flatBtn.gray[data-v-0ca0d3de],
398
- .btn-icon.flatBtn.gray[data-v-0ca0d3de] {
397
+ .btn.flatBtn.gray[data-v-593b2146],
398
+ .btn-icon.flatBtn.gray[data-v-593b2146] {
399
399
  color: var(--bgl-gray);
400
400
  }
401
- .btn.thin[data-v-0ca0d3de] {
401
+ .btn.thin[data-v-593b2146] {
402
402
  padding-left: calc(var(--btn-padding) / 2);
403
403
  padding-right: calc(var(--btn-padding) / 2);
404
404
  }
405
- .btn.round[data-v-0ca0d3de] {
405
+ .btn.round[data-v-593b2146] {
406
406
  border-radius: calc(var(--btn-border-radius) * 2);
407
407
  }
408
- .btn-icon.thin[data-v-0ca0d3de] {
408
+ .btn-icon.thin[data-v-593b2146] {
409
409
  height: calc(var(--btn-height) / 1.5);
410
410
  width: calc(var(--btn-height) / 1.5);
411
411
  line-height: 1;
412
412
  }
413
- [dir="rtl"] .icon-font[data-v-0ca0d3de] {
413
+ [dir="rtl"] .icon-font[data-v-593b2146] {
414
414
  transform: rotateY(180deg);
415
415
  }
416
- .btn-border[data-v-0ca0d3de] {
417
- outline: 1px solid var(--0b5510c0);
418
- color: var(--0b5510c0);
416
+ .btn-border[data-v-593b2146] {
417
+ outline: 1px solid var(--bfb3f9c4);
418
+ color: var(--bfb3f9c4);
419
419
  background: transparent;
420
420
  }
421
- .btn-border[data-v-0ca0d3de]:hover {
421
+ .btn-border[data-v-593b2146]:hover {
422
422
  color: var(--bgl-white);
423
- background: var(--0b5510c0);
423
+ background: var(--bfb3f9c4);
424
424
  filter: brightness(100%);
425
425
  }
426
- .btn-border[data-v-0ca0d3de]:active {
426
+ .btn-border[data-v-593b2146]:active {
427
427
  filter: brightness(80%);
428
428
  }
429
429
  .bg-dark {
@@ -521,11 +521,11 @@
521
521
  }
522
522
  }
523
523
 
524
- .modal-title[data-v-b81f66ed] {
524
+ .modal-title[data-v-6badff9e] {
525
525
  margin-top: 0.5rem;
526
526
  }
527
527
  @media screen and (max-width: 910px) {
528
- .modal-title[data-v-b81f66ed] {
528
+ .modal-title[data-v-6badff9e] {
529
529
  margin-top: 1rem;
530
530
  }
531
531
  }
@@ -716,41 +716,37 @@
716
716
  border-radius: var(--btn-border-radius);
717
717
  }
718
718
 
719
- .del-top {
720
- transform: translateY(-2.6rem);
721
- }
722
-
723
- .list-arrows[data-v-89607f2f] {
719
+ .list-arrows[data-v-a167604a] {
724
720
  opacity: 0;
725
721
  }
726
- .list-arrows .icon-font[data-v-89607f2f] {
722
+ .list-arrows .icon-font[data-v-a167604a] {
727
723
  transition: all ease-in-out 0.2s;
728
724
  }
729
- .list-arrows.sorted[data-v-89607f2f] {
725
+ .list-arrows.sorted[data-v-a167604a] {
730
726
  opacity: 1;
731
727
  }
732
- .col img[data-v-89607f2f] {
728
+ .col img[data-v-a167604a] {
733
729
  height: 35px;
734
730
  margin-top: -14px;
735
731
  margin-bottom: -14px;
736
732
  border-radius: 5px;
737
733
  }
738
- .list-arrows.sorted .desc[data-v-89607f2f] {
734
+ .list-arrows.sorted .desc[data-v-a167604a] {
739
735
  transform: rotate(180deg);
740
736
  }
741
- table[data-v-89607f2f] {
737
+ table[data-v-a167604a] {
742
738
  border-collapse: separate;
743
739
  border-spacing: 0 15px;
744
740
  border-collapse: collapse;
745
741
  }
746
- th[data-v-89607f2f] {
742
+ th[data-v-a167604a] {
747
743
  font-weight: 400;
748
744
  }
749
- .row[data-v-89607f2f] {
745
+ .row[data-v-a167604a] {
750
746
  border-bottom: 1px solid var(--border-color);
751
747
  cursor: pointer;
752
748
  }
753
- .row.first-row[data-v-89607f2f] {
749
+ .row.first-row[data-v-a167604a] {
754
750
  font-size: 0.8rem;
755
751
  color: var(--bgl-black-tint);
756
752
  position: sticky;
@@ -760,7 +756,7 @@ th[data-v-89607f2f] {
760
756
  height: 50px;
761
757
  vertical-align: bottom;
762
758
  }
763
- .row.first-row[data-v-89607f2f]::after {
759
+ .row.first-row[data-v-a167604a]::after {
764
760
  content: "";
765
761
  border-bottom: 1px solid var(--border-color);
766
762
  position: absolute;
@@ -768,11 +764,11 @@ th[data-v-89607f2f] {
768
764
  right: 0;
769
765
  bottom: -1px;
770
766
  }
771
- .first-row .col[data-v-89607f2f] {
767
+ .first-row .col[data-v-a167604a] {
772
768
  cursor: pointer;
773
769
  background: var(--bgl-white);
774
770
  }
775
- .col[data-v-89607f2f] {
771
+ .col[data-v-a167604a] {
776
772
  white-space: nowrap;
777
773
  padding: 14px;
778
774
  transition: var(--bgl-transition);
@@ -781,16 +777,16 @@ th[data-v-89607f2f] {
781
777
  padding-right: 1rem;
782
778
  align-items: center;
783
779
  }
784
- .col>div[data-v-89607f2f] {
780
+ .col>div[data-v-a167604a] {
785
781
  display: flex;
786
782
  gap: 0.5rem;
787
783
  }
788
- .max-col-width[data-v-89607f2f] {
784
+ .max-col-width[data-v-a167604a] {
789
785
  max-width: 30vw;
790
786
  overflow: hidden;
791
787
  text-overflow: ellipsis;
792
788
  }
793
- .col.check .icon-font[data-v-89607f2f] {
789
+ .col.check .icon-font[data-v-a167604a] {
794
790
  border-radius: 100%;
795
791
  background: var(--bgl-blue-20);
796
792
  color: var(--bgl-primary);
@@ -801,44 +797,44 @@ th[data-v-89607f2f] {
801
797
  justify-content: center;
802
798
  margin-top: -2px;
803
799
  }
804
- .rows[data-v-89607f2f] {
800
+ .rows[data-v-a167604a] {
805
801
  font-size: 0.8125em;
806
802
  }
807
- .table-list[data-v-89607f2f] {
803
+ .table-list[data-v-a167604a] {
808
804
  height: 100%;
809
805
  position: relative;
810
806
  padding-left: 0 !important;
811
807
  padding-right: 0 !important;
812
808
  overflow: auto;
813
809
  }
814
- .BagelTable .table-list[data-v-89607f2f] {
810
+ .BagelTable .table-list[data-v-a167604a] {
815
811
  overflow: unset;
816
812
  }
817
- .row-item[data-v-89607f2f] {
813
+ .row-item[data-v-a167604a] {
818
814
  height: 50px;
819
815
  transition: all 200ms ease;
820
816
  }
821
- .row-item[data-v-89607f2f]:hover {
817
+ .row-item[data-v-a167604a]:hover {
822
818
  background: var(--bgl-gray-light);
823
819
  }
824
- .infinite-wrapper[data-v-89607f2f] {
820
+ .infinite-wrapper[data-v-a167604a] {
825
821
  overflow-y: auto;
826
822
  width: 100%;
827
823
  }
828
824
 
829
- .data[data-v-a752f355] {
825
+ .data[data-v-bb2526f9] {
830
826
  border: 1.1px solid var(--border-color);
831
827
  padding: 20px;
832
828
  border-radius: var(--input-border-radius);
833
829
  }
834
- .data-row[data-v-a752f355] {
830
+ .data-row[data-v-bb2526f9] {
835
831
  display: flex;
836
832
  justify-content: space-between;
837
833
  padding-bottom: 0.5rem;
838
834
  margin-bottom: 0.5rem;
839
835
  border-bottom: 1px solid var(--border-color);
840
836
  }
841
- .data-link[data-v-a752f355] {
837
+ .data-link[data-v-bb2526f9] {
842
838
  display: block;
843
839
  font-size: var(--input-font-size);
844
840
  margin-bottom: 2px;
@@ -1092,6 +1088,9 @@ th[data-v-89607f2f] {
1092
1088
  .dp__input_wrap input {
1093
1089
  padding-inline-start: 2rem !important;
1094
1090
  }
1091
+ .dp__calendar_row>div:last-child {
1092
+ pointer-events: auto !important;
1093
+ }
1095
1094
 
1096
1095
  .bagel-input textarea[data-v-1fc4f739] {
1097
1096
  font-family: monospace;
@@ -2072,10 +2071,10 @@ input:checked + .slider[data-v-4955b9bd]:before {
2072
2071
  }
2073
2072
  }
2074
2073
 
2075
- .btn-end[data-v-7031e613] {
2074
+ .btn-end[data-v-d3e2966e] {
2076
2075
  text-align: end;
2077
2076
  }
2078
- .whatsapp-preview[data-v-7031e613] {
2077
+ .whatsapp-preview[data-v-d3e2966e] {
2079
2078
  direction: ltr;
2080
2079
  width: 400px;
2081
2080
  padding: 1rem;
@@ -2087,18 +2086,18 @@ input:checked + .slider[data-v-4955b9bd]:before {
2087
2086
  top: 15px;
2088
2087
  flex: 1 1 40%;
2089
2088
  }
2090
- .whatsapp-wrap[data-v-7031e613] {
2089
+ .whatsapp-wrap[data-v-d3e2966e] {
2091
2090
  display: flex;
2092
2091
  gap: 1rem;
2093
2092
  max-width: 1200px;
2094
2093
  overflow: auto;
2095
2094
  height: 100%;
2096
2095
  }
2097
- .create-template-form[data-v-7031e613] {
2096
+ .create-template-form[data-v-d3e2966e] {
2098
2097
  flex: 1 0 50%;
2099
2098
  min-width: 300px;
2100
2099
  }
2101
- .whatsapp-msg[data-v-7031e613] {
2100
+ .whatsapp-msg[data-v-d3e2966e] {
2102
2101
  background: var(--whatsapp-green);
2103
2102
  border-radius: 0.5rem;
2104
2103
  border-start-start-radius: 0px;
@@ -2109,7 +2108,7 @@ input:checked + .slider[data-v-4955b9bd]:before {
2109
2108
  position: relative;
2110
2109
  min-height: 30px;
2111
2110
  }
2112
- .whatsapp-msg[data-v-7031e613]::after {
2111
+ .whatsapp-msg[data-v-d3e2966e]::after {
2113
2112
  content: '';
2114
2113
  inset-inline-start: -5px;
2115
2114
  border-radius: 0.1rem;
@@ -2120,27 +2119,27 @@ input:checked + .slider[data-v-4955b9bd]:before {
2120
2119
  background: var(--whatsapp-green);
2121
2120
  position: absolute;
2122
2121
  }
2123
- .whatsapp-body[data-v-7031e613] {
2122
+ .whatsapp-body[data-v-d3e2966e] {
2124
2123
  margin: 2px 0;
2125
2124
  }
2126
- .whatsapp-footer[data-v-7031e613] {
2125
+ .whatsapp-footer[data-v-d3e2966e] {
2127
2126
  margin: 0;
2128
2127
  opacity: 0.6;
2129
2128
  font-size: 0.8rem;
2130
2129
  }
2131
- .whatsappHebrew[data-v-7031e613] {
2130
+ .whatsappHebrew[data-v-d3e2966e] {
2132
2131
  direction: rtl;
2133
2132
  }
2134
- .whatsappHebrew .whatsapp-msg[data-v-7031e613]::after {
2133
+ .whatsappHebrew .whatsapp-msg[data-v-d3e2966e]::after {
2135
2134
  transform: skew(-45deg);
2136
2135
  }
2137
2136
  @media screen and (max-width: 1200px) {
2138
- .whatsapp-preview[data-v-7031e613] {
2137
+ .whatsapp-preview[data-v-d3e2966e] {
2139
2138
  width: 300px;
2140
2139
  }
2141
2140
  }
2142
2141
  @media screen and (max-width: 910px) {
2143
- .whatsapp-preview[data-v-7031e613] {
2142
+ .whatsapp-preview[data-v-d3e2966e] {
2144
2143
  display: none;
2145
2144
  }
2146
2145
  }
@@ -2869,6 +2868,7 @@ h6 {}
2869
2868
  gap: 1rem;
2870
2869
  display: flex;
2871
2870
  justify-content: space-between;
2871
+ align-items: center;
2872
2872
  }
2873
2873
  * {
2874
2874
  box-sizing: border-box;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGtC,eAAO,MAAM,QAAQ,OAAQ,MAAM,IAAI,yBAGtC,CAAC;AAEF,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,MAAM,GAAG,SAEjC,CAAC;AAEnB,eAAO,MAAM,QAAQ,SACd,MAAM,cAED,MAAM,KAAK,IAAI,+BAI1B,CAAC;AAEF,eAAO,MAAM,QAAQ,cAAe,MAAM,EAAE,WAG3C,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,QAIrE;AAED,wBAAgB,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,UAKpE;AAED,wBAAgB,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,OAS7F;AAED,eAAO,MAAM,KAAK,UAAW,GAAG,YAAY,GAAG,QAK9C,CAAC;AAEF,eAAO,MAAM,SAAS,cAAe,OAAO,MAAM,EAAE,GAAG,CAAC,YAAY,MAAM,QAAqD,CAAC;AAEhI,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAGtC,eAAO,MAAM,QAAQ,OAAQ,MAAM,IAAI,yBAGtC,CAAC;AAEF,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,MAAM,GAAG,SAEjC,CAAC;AAEnB,eAAO,MAAM,QAAQ,SACd,MAAM,cAED,MAAM,KAAK,IAAI,+BAI1B,CAAC;AAEF,eAAO,MAAM,QAAQ,cAAe,MAAM,EAAE,WAG3C,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,QAIrE;AAED,wBAAgB,QAAQ,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,UAKpE;AAED,wBAAgB,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,OAS7F;AAED,eAAO,MAAM,KAAK,UAAW,GAAG,YAAY,GAAG,QAM9C,CAAC;AAEF,eAAO,MAAM,SAAS,cAAe,OAAO,MAAM,EAAE,GAAG,CAAC,YAAY,MAAM,QAAqD,CAAC;AAEhI,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.235-beta.0",
4
+ "version": "0.0.237",
5
5
  "description": "Bagel core sdk packages",
6
6
  "author": {
7
7
  "name": "Neveh Allon",
@@ -1,10 +1,5 @@
1
1
  <template>
2
- <component
3
- :is="to ? 'router-link' : is"
4
- :to="to"
5
- :type="type"
6
- :role="role"
7
- :disabled="disabled"
2
+ <component :is="to ? 'router-link' : is" :to="to" @click.stop="onClick" :type="type" :role="role" :disabled="disabled"
8
3
  :class="{
9
4
  'btn-icon': icon && !slots['default'] && !value,
10
5
  btn: !icon || slots['default'] || value,
@@ -12,28 +7,15 @@
12
7
  round,
13
8
  'flatBtn': flat,
14
9
  'btn-border': border
15
- }"
16
- >
17
- <div
18
- class="loading"
19
- v-if="loading"
20
- />
21
- <div
22
- v-else
23
- class="btn-flex"
24
- >
25
- <MaterialIcon
26
- v-if="icon"
27
- :icon="icon"
28
- />
10
+ }">
11
+ <div class="loading" v-if="loading" />
12
+ <div v-else class="btn-flex">
13
+ <MaterialIcon v-if="icon" :icon="icon" />
29
14
  <slot />
30
15
  <template v-if="!slots['default'] && value">
31
16
  {{ value }}
32
17
  </template>
33
- <MaterialIcon
34
- v-if="props['icon.end']"
35
- :icon="props['icon.end']"
36
- />
18
+ <MaterialIcon v-if="props['icon.end']" :icon="props['icon.end']" />
37
19
  </div>
38
20
  </component>
39
21
  </template>
@@ -62,8 +44,10 @@ const props = withDefaults(
62
44
  to?: string;
63
45
  round?: boolean;
64
46
  is?: string;
47
+ onClick?: (e: MouseEvent) => void;
65
48
  }>(),
66
49
  {
50
+ onClick: () => '',
67
51
  loading: false,
68
52
  round: false,
69
53
  disabled: false,
@@ -1,23 +1,12 @@
1
1
  <template>
2
2
  <div v-if="data" class="data">
3
- <h3 class="mb-3 mt-0" v-if="title">
4
- {{ title }}
5
- </h3>
3
+ <Title v-if="title" :label="title" />
6
4
  <template v-for="field in schema" :key="field.id">
7
5
  <div class="data-row" v-if="iffer(field, itemData)">
8
6
  <div class="key">
9
7
  {{ field?.label || keyToLabel(field.id) }}
10
8
  </div>
11
- <component :is="field.$el || 'div'" class="value" :modelValue="denullify(itemData, field.id)"
12
- @update:modelValue="($event: any) => field?.onUpdate?.($event, denullify(data, field.id), itemData)"
13
- v-bind="bindAttrs(field.attrs, field.id ? itemData[field.id] : null, itemData)">
14
- {{
15
- field?.transform?.(denullify(itemData, field.id)
16
- || field.defaultValue, itemData)
17
- || denullify(itemData, field.id)
18
- || ''
19
- }}
20
- </component>
9
+ <BglField :field="field" v-model="itemData" />
21
10
  </div>
22
11
  </template>
23
12
  <div v-if="!schema?.length">
@@ -38,9 +27,9 @@
38
27
  import {
39
28
  type BglFormSchemaT,
40
29
  keyToLabel,
41
- bindAttrs,
42
30
  iffer,
43
- denullify,
31
+ Title,
32
+ BglField,
44
33
  } from '@bagelink/vue';
45
34
 
46
35
  defineProps<{
@@ -1,13 +1,11 @@
1
1
  <template>
2
- <component
3
- :is="to ? 'RouterLink' : 'div'"
4
- :to="to"
5
- class="list-item ellipsis"
6
- >
2
+ <component :is="to ? 'RouterLink' : 'div'" :to="to" class="list-item ellipsis">
7
3
  <p class="txt16 no-margin">
4
+ {{ title }}
8
5
  <slot />
9
6
  </p>
10
7
  <p class="txt14 no-margin txtgray">
8
+ {{ subtitle }}
11
9
  <slot name="subtitle" />
12
10
  </p>
13
11
  </component>
@@ -16,5 +14,7 @@
16
14
  <script lang="ts" setup>
17
15
  defineProps<{
18
16
  to?: string;
17
+ title?: string;
18
+ subtitle?: string;
19
19
  }>();
20
20
  </script>
@@ -1,27 +1,26 @@
1
1
  <template>
2
2
  <div class="bg-dark" :class="{ 'is-side': side, 'is-active': isActive }"
3
3
  @click="() => (dismissable ? closeModal() : '')" @keydown.esc="closeModal">
4
-
5
- <div class="card modal" @click.stop>
4
+ <Card class="modal" @click.stop>
6
5
  <header class="tool-bar">
7
6
  <slot name="toolbar" />
8
7
  <Btn :style="{ float: side ? 'left' : 'right' }" flat icon="close" @click="closeModal" />
9
- <h3 class="modal-title">
10
- {{ title }}
11
- </h3>
8
+ <Title class="modal-title" tag="h3" v-if="title" :label="title" />
12
9
  </header>
13
10
  <slot />
14
11
  <footer class="modal-footer mt-3">
15
12
  <Btn v-for="(action, i) in actions" :key="i" @click="closeModal" color="gray" v-bind="action" />
16
13
  <slot name="footer" />
17
14
  </footer>
18
- </div>
15
+ </Card>
19
16
  </div>
20
17
  </template>
21
18
 
22
19
  <script lang="ts" setup>
23
20
  import { onMounted, onUnmounted } from 'vue';
24
- import { type BtnOptions, Btn, useEscape } from '@bagelink/vue';
21
+ import {
22
+ type BtnOptions, Btn, useEscape, Title, Card,
23
+ } from '@bagelink/vue';
25
24
  import '../styles/modal.css';
26
25
 
27
26
  const props = defineProps<{
@@ -37,27 +36,18 @@ const emit = defineEmits(['update:isModalVisible']);
37
36
 
38
37
  const closeModal = () => {
39
38
  isActive = false;
40
- setTimeout(() => {
41
- emit('update:isModalVisible', false);
42
- }, 200);
39
+ setTimeout(() => emit('update:isModalVisible', false), 200);
43
40
  };
44
41
 
42
+ defineExpose({ closeModal });
43
+
45
44
  const escapeKeyClose = (e: KeyboardEvent) => props?.dismissable && useEscape(e, () => closeModal());
46
45
 
47
46
  onMounted(() => {
48
- setTimeout(() => {
49
- isActive = true;
50
- }, 1);
51
-
52
- document.addEventListener(
53
- 'keydown',
54
- escapeKeyClose,
55
- );
47
+ setTimeout(() => isActive = true, 1);
48
+ document.addEventListener('keydown', escapeKeyClose);
56
49
  });
57
50
  onUnmounted(() => {
58
- document.removeEventListener(
59
- 'keydown',
60
- escapeKeyClose,
61
- );
51
+ document.removeEventListener('keydown', escapeKeyClose);
62
52
  });
63
53
  </script>