@bagelink/vue 0.0.398 → 0.0.402
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/BglVideo.vue.d.ts.map +1 -1
- package/dist/components/ModalConfirm.vue.d.ts +24 -0
- package/dist/components/ModalConfirm.vue.d.ts.map +1 -0
- package/dist/components/ModalForm.vue.d.ts +10 -6
- package/dist/components/ModalForm.vue.d.ts.map +1 -1
- package/dist/components/form/inputs/RichText.vue.d.ts.map +1 -1
- package/dist/components/form/inputs/SelectInput.vue.d.ts.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/index.cjs +2802 -108
- package/dist/index.mjs +2802 -108
- package/dist/plugins/modal.d.ts +14 -2
- package/dist/plugins/modal.d.ts.map +1 -1
- package/dist/style.css +121 -21
- package/package.json +5 -1
- package/src/components/BglVideo.vue +8 -4
- package/src/components/ModalConfirm.vue +26 -0
- package/src/components/ModalForm.vue +15 -12
- package/src/components/form/inputs/RichText.vue +133 -19
- package/src/components/form/inputs/SelectInput.vue +5 -4
- package/src/components/index.ts +1 -0
- package/src/plugins/modal.ts +26 -4
- package/src/styles/layout.css +9 -0
- package/src/styles/mobilLayout.css +11 -0
package/dist/plugins/modal.d.ts
CHANGED
|
@@ -23,10 +23,20 @@ export interface ModalFormOptions {
|
|
|
23
23
|
modelValue?: Record<string, any>;
|
|
24
24
|
'onUpdate:modelValue'?: (val: any) => void;
|
|
25
25
|
}
|
|
26
|
+
export type ModalConfirmOptions = {
|
|
27
|
+
title?: string;
|
|
28
|
+
message?: string;
|
|
29
|
+
resolve: (val: boolean) => void;
|
|
30
|
+
};
|
|
31
|
+
type ModalType = 'modal' | 'modalForm' | 'confirm';
|
|
32
|
+
type ConfirmModalUserOptions = string | {
|
|
33
|
+
title: string;
|
|
34
|
+
message: string;
|
|
35
|
+
};
|
|
26
36
|
export interface ModalComponentProps {
|
|
27
37
|
componentSlots: Record<string, any>;
|
|
28
|
-
modalType:
|
|
29
|
-
modalOptions: ModalOptions | ModalFormOptions;
|
|
38
|
+
modalType: ModalType;
|
|
39
|
+
modalOptions: ModalOptions | ModalFormOptions | ModalConfirmOptions;
|
|
30
40
|
}
|
|
31
41
|
export interface ModalFormComponentProps {
|
|
32
42
|
componentSlots: Record<string, any>;
|
|
@@ -37,8 +47,10 @@ export interface ModalApi {
|
|
|
37
47
|
showModal: (options: ModalOptions, slots?: Record<string, any>) => void;
|
|
38
48
|
showModalForm: (options: ModalFormOptions, slots?: Record<string, any>) => ModalFormComponentProps | undefined;
|
|
39
49
|
hideModal: (index?: number) => void;
|
|
50
|
+
confirm: (options: ConfirmModalUserOptions) => Promise<boolean>;
|
|
40
51
|
}
|
|
41
52
|
export declare const ModalSymbol: InjectionKey<ModalApi>;
|
|
42
53
|
export declare const useModal: () => ModalApi;
|
|
43
54
|
export declare const ModalPlugin: Plugin;
|
|
55
|
+
export {};
|
|
44
56
|
//# sourceMappingURL=modal.d.ts.map
|
|
@@ -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,MAAM,WAAW,YAAY;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,cAAc,CAAC,GAAG,cAAc,CAAA;IACrE,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC;IAC/B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC;CAC3C;AAED,MAAM,WAAW,mBAAmB;IACnC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../src/plugins/modal.ts"],"names":[],"mappings":"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"}
|
package/dist/style.css
CHANGED
|
@@ -525,11 +525,11 @@ a[data-v-d09a83c5] {
|
|
|
525
525
|
gap: 0;
|
|
526
526
|
}
|
|
527
527
|
|
|
528
|
-
.modal-title[data-v-
|
|
528
|
+
.modal-title[data-v-04d84995] {
|
|
529
529
|
margin-top: 0.5rem;
|
|
530
530
|
}
|
|
531
531
|
@media screen and (max-width: 910px) {
|
|
532
|
-
.modal-title[data-v-
|
|
532
|
+
.modal-title[data-v-04d84995] {
|
|
533
533
|
margin-top: 1rem;
|
|
534
534
|
}
|
|
535
535
|
}
|
|
@@ -896,15 +896,17 @@ display: block;
|
|
|
896
896
|
color: var(--bgl-red);
|
|
897
897
|
}
|
|
898
898
|
|
|
899
|
-
.bgl_vid iframe[data-v-
|
|
900
|
-
.bgl_vid video[data-v-
|
|
899
|
+
.bgl_vid iframe[data-v-b1ad7c32],
|
|
900
|
+
.bgl_vid video[data-v-b1ad7c32] {
|
|
901
901
|
width: 100%;
|
|
902
902
|
height: auto;
|
|
903
903
|
display: block;
|
|
904
|
+
border-radius: var(--input-border-radius);
|
|
904
905
|
}
|
|
905
|
-
.bgl_vid.vid_empty[data-v-
|
|
906
|
+
.bgl_vid.vid_empty[data-v-b1ad7c32] {
|
|
906
907
|
padding-top: 56.25%;
|
|
907
|
-
background:
|
|
908
|
+
background: var(--input-bg);
|
|
909
|
+
border-radius: var(--input-border-radius);
|
|
908
910
|
}
|
|
909
911
|
|
|
910
912
|
.blocker[data-v-068aa914] {
|
|
@@ -1066,10 +1068,10 @@ display: block;
|
|
|
1066
1068
|
}
|
|
1067
1069
|
.resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}.v-popper__popper{z-index:10000;top:0;left:0;outline:none}.v-popper__popper.v-popper__popper--hidden{visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;pointer-events:none}.v-popper__popper.v-popper__popper--shown{visibility:visible;opacity:1;transition:opacity .15s}.v-popper__popper.v-popper__popper--skip-transition,.v-popper__popper.v-popper__popper--skip-transition>.v-popper__wrapper{transition:none!important}.v-popper__backdrop{position:absolute;top:0;left:0;width:100%;height:100%;display:none}.v-popper__inner{position:relative;box-sizing:border-box;overflow-y:auto}.v-popper__inner>div{position:relative;z-index:1;max-width:inherit;max-height:inherit}.v-popper__arrow-container{position:absolute;width:10px;height:10px}.v-popper__popper--arrow-overflow .v-popper__arrow-container,.v-popper__popper--no-positioning .v-popper__arrow-container{display:none}.v-popper__arrow-inner,.v-popper__arrow-outer{border-style:solid;position:absolute;top:0;left:0;width:0;height:0}.v-popper__arrow-inner{visibility:hidden;border-width:7px}.v-popper__arrow-outer{border-width:6px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{left:-2px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{left:-1px}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-outer{border-bottom-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=top] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-container{top:0}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{border-top-width:0;border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-inner{top:-4px}.v-popper__popper[data-popper-placement^=bottom] .v-popper__arrow-outer{top:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{top:-2px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{top:-1px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{border-left-width:0;border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-inner{left:-4px}.v-popper__popper[data-popper-placement^=right] .v-popper__arrow-outer{left:-6px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-container{right:-10px}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner,.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-outer{border-right-width:0;border-top-color:transparent!important;border-right-color:transparent!important;border-bottom-color:transparent!important}.v-popper__popper[data-popper-placement^=left] .v-popper__arrow-inner{left:-2px}.v-popper--theme-tooltip .v-popper__inner{background:rgba(0,0,0,.8);color:#fff;border-radius:6px;padding:7px 12px 6px}.v-popper--theme-tooltip .v-popper__arrow-outer{border-color:#000c}.v-popper--theme-dropdown .v-popper__inner{background:#fff;color:#000;border-radius:6px;border:1px solid #ddd;box-shadow:0 6px 30px #0000001a}.v-popper--theme-dropdown .v-popper__arrow-inner{visibility:visible;border-color:#fff}.v-popper--theme-dropdown .v-popper__arrow-outer{border-color:#ddd}
|
|
1068
1070
|
|
|
1069
|
-
.selectinput[data-v-
|
|
1071
|
+
.selectinput[data-v-fdfda40b] {
|
|
1070
1072
|
width: 100%;
|
|
1071
1073
|
}
|
|
1072
|
-
.selectinput-option[data-v-
|
|
1074
|
+
.selectinput-option[data-v-fdfda40b] {
|
|
1073
1075
|
padding: 6px 12px;
|
|
1074
1076
|
cursor: pointer;
|
|
1075
1077
|
border-radius: 5px;
|
|
@@ -1080,14 +1082,14 @@ display: block;
|
|
|
1080
1082
|
width: 100%;
|
|
1081
1083
|
font-size: var(--input-font-size);
|
|
1082
1084
|
}
|
|
1083
|
-
.selectinput-options[data-v-
|
|
1085
|
+
.selectinput-options[data-v-fdfda40b] {
|
|
1084
1086
|
max-height: 300px;
|
|
1085
1087
|
overflow-y: auto;
|
|
1086
1088
|
}
|
|
1087
|
-
.selectinput-option[data-v-
|
|
1089
|
+
.selectinput-option[data-v-fdfda40b]:hover {
|
|
1088
1090
|
background: var(--bgl-gray-20);
|
|
1089
1091
|
}
|
|
1090
|
-
.isEmpty p[data-v-
|
|
1092
|
+
.isEmpty p[data-v-fdfda40b] {
|
|
1091
1093
|
opacity: 0.3;
|
|
1092
1094
|
}
|
|
1093
1095
|
|
|
@@ -1674,25 +1676,20 @@ img.preview[data-v-0dbacaa0] {
|
|
|
1674
1676
|
.tiptap h1,
|
|
1675
1677
|
.tiptap h2 {
|
|
1676
1678
|
line-height: 1;
|
|
1677
|
-
margin-top: 0;
|
|
1678
1679
|
}
|
|
1679
1680
|
.tiptap h3,
|
|
1680
1681
|
.tiptap h4,
|
|
1681
1682
|
.tiptap h5,
|
|
1682
1683
|
.tiptap h6 {
|
|
1683
1684
|
line-height: 1.1;
|
|
1684
|
-
margin-top: 0;
|
|
1685
|
-
}
|
|
1686
|
-
.tiptap code {
|
|
1687
|
-
background-color: rgba(97, 97, 97, 0.1);
|
|
1688
|
-
color: #616161;
|
|
1689
1685
|
}
|
|
1690
1686
|
.tiptap pre {
|
|
1691
1687
|
background: #0d0d0d;
|
|
1692
|
-
color:
|
|
1688
|
+
color: var(--bgl-white);
|
|
1693
1689
|
font-family: 'JetBrainsMono', monospace;
|
|
1694
1690
|
padding: 0.75rem 1rem;
|
|
1695
1691
|
border-radius: 0.5rem;
|
|
1692
|
+
margin: 0;
|
|
1696
1693
|
}
|
|
1697
1694
|
.tiptap pre code {
|
|
1698
1695
|
color: inherit;
|
|
@@ -1705,12 +1702,13 @@ img.preview[data-v-0dbacaa0] {
|
|
|
1705
1702
|
height: auto;
|
|
1706
1703
|
}
|
|
1707
1704
|
.tiptap blockquote {
|
|
1708
|
-
padding-
|
|
1709
|
-
border-
|
|
1705
|
+
padding-inline-start: 0.5rem;
|
|
1706
|
+
border-inline-start: 2px solid var(--border-color);
|
|
1707
|
+
margin: 0.5rem
|
|
1710
1708
|
}
|
|
1711
1709
|
.tiptap hr {
|
|
1712
1710
|
border: none;
|
|
1713
|
-
border-top: 2px solid
|
|
1711
|
+
border-top: 2px solid var(--border-color);
|
|
1714
1712
|
margin: 1rem 0;
|
|
1715
1713
|
}
|
|
1716
1714
|
.tiptap {
|
|
@@ -1736,6 +1734,89 @@ img.preview[data-v-0dbacaa0] {
|
|
|
1736
1734
|
margin-bottom: 0.125rem;
|
|
1737
1735
|
border-radius: var(--input-border-radius);
|
|
1738
1736
|
}
|
|
1737
|
+
.tiptap {
|
|
1738
|
+
table {
|
|
1739
|
+
border-collapse: collapse;
|
|
1740
|
+
table-layout: fixed;
|
|
1741
|
+
width: 100%;
|
|
1742
|
+
margin: 0;
|
|
1743
|
+
overflow: hidden;
|
|
1744
|
+
td,
|
|
1745
|
+
th {
|
|
1746
|
+
min-width: 1em;
|
|
1747
|
+
border: 2px solid var(--border-color);
|
|
1748
|
+
padding: 3px 5px;
|
|
1749
|
+
vertical-align: top;
|
|
1750
|
+
box-sizing: border-box;
|
|
1751
|
+
position: relative;
|
|
1752
|
+
> * {
|
|
1753
|
+
margin-bottom: 0;
|
|
1754
|
+
margin-top: 0;
|
|
1755
|
+
}
|
|
1756
|
+
}
|
|
1757
|
+
th {
|
|
1758
|
+
font-weight: bold;
|
|
1759
|
+
text-align: start;
|
|
1760
|
+
background-color: var(--bgl-gray-80);
|
|
1761
|
+
}
|
|
1762
|
+
.selectedCell:after {
|
|
1763
|
+
z-index: 2;
|
|
1764
|
+
position: absolute;
|
|
1765
|
+
content: '';
|
|
1766
|
+
left: 0;
|
|
1767
|
+
right: 0;
|
|
1768
|
+
top: 0;
|
|
1769
|
+
bottom: 0;
|
|
1770
|
+
background: var(--bgl-gray-20);
|
|
1771
|
+
pointer-events: none;
|
|
1772
|
+
}
|
|
1773
|
+
.selectedCell p::selection{
|
|
1774
|
+
color: var(--bgl-black)
|
|
1775
|
+
}
|
|
1776
|
+
.column-resize-handle {
|
|
1777
|
+
position: absolute;
|
|
1778
|
+
inset-inline-start: -2px;
|
|
1779
|
+
top: 0;
|
|
1780
|
+
bottom: -2px;
|
|
1781
|
+
width: 4px;
|
|
1782
|
+
background-color: #adf;
|
|
1783
|
+
pointer-events: none;
|
|
1784
|
+
}
|
|
1785
|
+
p {
|
|
1786
|
+
margin: 0;
|
|
1787
|
+
}
|
|
1788
|
+
}
|
|
1789
|
+
}
|
|
1790
|
+
.tableWrapper {
|
|
1791
|
+
padding: 1rem 0;
|
|
1792
|
+
overflow-x: auto;
|
|
1793
|
+
}
|
|
1794
|
+
.resize-cursor {
|
|
1795
|
+
cursor: ew-resize;
|
|
1796
|
+
cursor: col-resize;
|
|
1797
|
+
}
|
|
1798
|
+
.RichText-tools [disabled]{
|
|
1799
|
+
color: var(--bgl-black) !important;
|
|
1800
|
+
opacity: 0.3;
|
|
1801
|
+
}
|
|
1802
|
+
.RichText iframe{
|
|
1803
|
+
width: 100%;
|
|
1804
|
+
max-width: 700px;
|
|
1805
|
+
margin: 0 auto;
|
|
1806
|
+
height: auto;
|
|
1807
|
+
display: block;
|
|
1808
|
+
border-radius: var(--input-border-radius);
|
|
1809
|
+
border: none;
|
|
1810
|
+
aspect-ratio: 16/9;
|
|
1811
|
+
}
|
|
1812
|
+
.RichText img{
|
|
1813
|
+
width: 100%;
|
|
1814
|
+
max-width: 700px;
|
|
1815
|
+
margin: 0 auto;
|
|
1816
|
+
height: auto;
|
|
1817
|
+
display: block;
|
|
1818
|
+
border-radius: var(--input-border-radius);
|
|
1819
|
+
}
|
|
1739
1820
|
|
|
1740
1821
|
.chart-line {
|
|
1741
1822
|
width: 100%;
|
|
@@ -3185,6 +3266,14 @@ img.preview[data-v-0dbacaa0] {
|
|
|
3185
3266
|
height: 1px;
|
|
3186
3267
|
width: 100%;
|
|
3187
3268
|
}
|
|
3269
|
+
.ltr,
|
|
3270
|
+
.direction-ltr {
|
|
3271
|
+
direction: ltr;
|
|
3272
|
+
}
|
|
3273
|
+
.rtl,
|
|
3274
|
+
.direction-rtl {
|
|
3275
|
+
direction: rtl;
|
|
3276
|
+
}
|
|
3188
3277
|
@media screen and (max-width: 910px) {
|
|
3189
3278
|
.grid-wrap-2 {
|
|
3190
3279
|
grid-template-columns: repeat(1, 1fr);
|
|
@@ -4736,6 +4825,17 @@ img.preview[data-v-0dbacaa0] {
|
|
|
4736
4825
|
.m_overflow-y-hidden {
|
|
4737
4826
|
overflow-y: hidden;
|
|
4738
4827
|
}
|
|
4828
|
+
|
|
4829
|
+
.m_ltr,
|
|
4830
|
+
.m_direction-ltr {
|
|
4831
|
+
direction: ltr;
|
|
4832
|
+
}
|
|
4833
|
+
|
|
4834
|
+
.m_rtl,
|
|
4835
|
+
.m_direction-rtl {
|
|
4836
|
+
direction: rtl;
|
|
4837
|
+
}
|
|
4838
|
+
|
|
4739
4839
|
}
|
|
4740
4840
|
input,
|
|
4741
4841
|
textarea,
|
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.402",
|
|
5
5
|
"description": "Bagel core sdk packages",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Neveh Allon",
|
|
@@ -63,6 +63,10 @@
|
|
|
63
63
|
"@tiptap/starter-kit": "^2.2.4",
|
|
64
64
|
"@tiptap/extension-image": "^2.2.4",
|
|
65
65
|
"@tiptap/extension-youtube": "^2.2.4",
|
|
66
|
+
"@tiptap/extension-table": "^2.2.4",
|
|
67
|
+
"@tiptap/extension-table-row": "^2.2.4",
|
|
68
|
+
"@tiptap/extension-table-header": "^2.2.4",
|
|
69
|
+
"@tiptap/extension-table-cell": "^2.2.4",
|
|
66
70
|
"@tiptap/vue-3": "^2.2.4",
|
|
67
71
|
"vue": "*",
|
|
68
72
|
"vue-draggable-next": "^2.2.1",
|
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
:style="{ aspectRatio }"
|
|
7
7
|
frameborder="0"
|
|
8
8
|
allowfullscreen
|
|
9
|
-
title="Video"
|
|
9
|
+
title="Video"
|
|
10
|
+
/>
|
|
10
11
|
<video
|
|
11
12
|
v-else-if="src"
|
|
12
13
|
:src="src"
|
|
@@ -15,7 +16,8 @@
|
|
|
15
16
|
:loop="loop"
|
|
16
17
|
:style="{ aspectRatio }"
|
|
17
18
|
:controls="controls"
|
|
18
|
-
playsinline
|
|
19
|
+
playsinline
|
|
20
|
+
/>
|
|
19
21
|
</div>
|
|
20
22
|
</template>
|
|
21
23
|
|
|
@@ -32,7 +34,7 @@ type Props = {
|
|
|
32
34
|
const props = defineProps<Props>();
|
|
33
35
|
|
|
34
36
|
const aspectRatio = $computed(
|
|
35
|
-
() => props.aspectRatio?.replace(':', '/') || '16/9'
|
|
37
|
+
() => props.aspectRatio?.replace(':', '/') || '16/9',
|
|
36
38
|
);
|
|
37
39
|
|
|
38
40
|
const embedType = $computed<'YouTube' | 'Vimeo' | null>(() => {
|
|
@@ -68,10 +70,12 @@ console.log('Video URL:', videoUrl);
|
|
|
68
70
|
width: 100%;
|
|
69
71
|
height: auto;
|
|
70
72
|
display: block;
|
|
73
|
+
border-radius: var(--input-border-radius);
|
|
71
74
|
}
|
|
72
75
|
|
|
73
76
|
.bgl_vid.vid_empty {
|
|
74
77
|
padding-top: 56.25%;
|
|
75
|
-
background:
|
|
78
|
+
background: var(--input-bg);
|
|
79
|
+
border-radius: var(--input-border-radius);
|
|
76
80
|
}
|
|
77
81
|
</style>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<Modal width="380px" :dismissable="false" :title="title">
|
|
3
|
+
{{ message }}
|
|
4
|
+
<template #footer>
|
|
5
|
+
<Btn @click="select(true)" color="primary" value="Confirm" />
|
|
6
|
+
<Btn @click="select(false)" color="red" value="Cancel" />
|
|
7
|
+
</template>
|
|
8
|
+
</Modal>
|
|
9
|
+
</template>
|
|
10
|
+
|
|
11
|
+
<script lang="ts" setup>
|
|
12
|
+
import { Btn, Modal } from '@bagelink/vue';
|
|
13
|
+
|
|
14
|
+
const props = defineProps<{
|
|
15
|
+
title: string;
|
|
16
|
+
message: string;
|
|
17
|
+
resolve: (value: boolean) => void;
|
|
18
|
+
}>();
|
|
19
|
+
|
|
20
|
+
const emit = defineEmits(['update:visible']);
|
|
21
|
+
|
|
22
|
+
function select(val: boolean) {
|
|
23
|
+
props.resolve(val);
|
|
24
|
+
emit('update:visible');
|
|
25
|
+
}
|
|
26
|
+
</script>
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<Modal
|
|
3
|
-
@
|
|
3
|
+
@update:visible="($event) => emit('update:visible', $event)"
|
|
4
4
|
:side
|
|
5
5
|
ref="modal"
|
|
6
6
|
:width
|
|
7
|
+
:visible="visible"
|
|
7
8
|
:dismissable
|
|
8
9
|
:title="title">
|
|
9
10
|
<BagelForm
|
|
@@ -41,24 +42,26 @@ import {
|
|
|
41
42
|
const bagel = useBagel();
|
|
42
43
|
|
|
43
44
|
const props = defineProps<{
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
45
|
+
side?: boolean;
|
|
46
|
+
title?: string;
|
|
47
|
+
width?: string;
|
|
48
|
+
dismissable?: boolean;
|
|
49
|
+
actions?: BtnOptions[];
|
|
50
|
+
schema: BglFormSchemaT | (() => BglFormSchemaT);
|
|
50
51
|
// eslint-disable-next-line no-unused-vars
|
|
51
|
-
|
|
52
|
+
onSubmit?: (formData: any) => Promise<void>;
|
|
52
53
|
// eslint-disable-next-line no-unused-vars
|
|
53
|
-
|
|
54
|
+
onDelete?: (id: string) => void;
|
|
54
55
|
// eslint-disable-next-line no-unused-vars
|
|
55
|
-
|
|
56
|
+
visible?: boolean;
|
|
56
57
|
// eslint-disable-next-line no-unused-vars
|
|
57
|
-
|
|
58
|
+
onError?: (err: any) => void;
|
|
58
59
|
|
|
59
|
-
|
|
60
|
+
modelValue?: Record<string, any>;
|
|
60
61
|
}>();
|
|
61
62
|
|
|
63
|
+
const emit = defineEmits(['update:visible']);
|
|
64
|
+
|
|
62
65
|
const modal = $ref<InstanceType<typeof Modal>>();
|
|
63
66
|
|
|
64
67
|
const computedFormSchema = $computed(() => {
|
|
@@ -10,7 +10,8 @@
|
|
|
10
10
|
v-tooltip="item.name"
|
|
11
11
|
:key="item.name"
|
|
12
12
|
:icon="item.icon"
|
|
13
|
-
:disabled="item.disabled?.()"
|
|
13
|
+
:disabled="item.disabled?.()"
|
|
14
|
+
/>
|
|
14
15
|
</div>
|
|
15
16
|
<editor-content :editor="editor" />
|
|
16
17
|
</div>
|
|
@@ -29,6 +30,10 @@ import StarterKit from '@tiptap/starter-kit';
|
|
|
29
30
|
import { Editor, EditorContent } from '@tiptap/vue-3';
|
|
30
31
|
import Image from '@tiptap/extension-image';
|
|
31
32
|
import YouTube from '@tiptap/extension-youtube';
|
|
33
|
+
import Table from '@tiptap/extension-table';
|
|
34
|
+
import TableRow from '@tiptap/extension-table-row';
|
|
35
|
+
import TableCell from '@tiptap/extension-table-cell';
|
|
36
|
+
import TableHeader from '@tiptap/extension-table-header';
|
|
32
37
|
import type { MaterialIcons } from '@bagelink/vue';
|
|
33
38
|
// import $el from './FileUploadURL.vue';
|
|
34
39
|
const { txtField } = bagelFormUtils;
|
|
@@ -70,19 +75,22 @@ const config: {
|
|
|
70
75
|
name: 'Bold',
|
|
71
76
|
command: () => focus()?.toggleBold().run(),
|
|
72
77
|
icon: 'format_bold',
|
|
73
|
-
disabled: () => !editor?.can().chain().focus().toggleBold()
|
|
78
|
+
disabled: () => !editor?.can().chain().focus().toggleBold()
|
|
79
|
+
.run(),
|
|
74
80
|
},
|
|
75
81
|
{
|
|
76
82
|
name: 'Italic',
|
|
77
83
|
command: () => focus().toggleItalic().run(),
|
|
78
84
|
icon: 'format_italic',
|
|
79
|
-
disabled: () => !editor?.can().chain().focus().toggleItalic()
|
|
85
|
+
disabled: () => !editor?.can().chain().focus().toggleItalic()
|
|
86
|
+
.run(),
|
|
80
87
|
},
|
|
81
88
|
{
|
|
82
89
|
name: 'Strike',
|
|
83
90
|
command: () => focus().toggleStrike().run(),
|
|
84
91
|
icon: 'format_strikethrough',
|
|
85
|
-
disabled: () => !editor?.can().chain().focus().toggleStrike()
|
|
92
|
+
disabled: () => !editor?.can().chain().focus().toggleStrike()
|
|
93
|
+
.run(),
|
|
86
94
|
},
|
|
87
95
|
{
|
|
88
96
|
name: 'Code Text',
|
|
@@ -187,17 +195,28 @@ const config: {
|
|
|
187
195
|
command: () => focus().setHardBreak().run(),
|
|
188
196
|
icon: 'keyboard_return',
|
|
189
197
|
},
|
|
198
|
+
{
|
|
199
|
+
name: 'Table',
|
|
200
|
+
command: () => editor
|
|
201
|
+
.chain()
|
|
202
|
+
.focus()
|
|
203
|
+
.insertTable({ rows: 3, cols: 3, withHeaderRow: true })
|
|
204
|
+
.run(),
|
|
205
|
+
icon: 'table_chart',
|
|
206
|
+
},
|
|
190
207
|
{
|
|
191
208
|
name: 'Undo',
|
|
192
209
|
command: () => focus().undo().run(),
|
|
193
210
|
icon: 'undo',
|
|
194
|
-
disabled: () => !editor?.can().chain().focus().undo()
|
|
211
|
+
disabled: () => !editor?.can().chain().focus().undo()
|
|
212
|
+
.run(),
|
|
195
213
|
},
|
|
196
214
|
{
|
|
197
215
|
name: 'Redo',
|
|
198
216
|
command: () => focus().redo().run(),
|
|
199
217
|
icon: 'redo',
|
|
200
|
-
disabled: () => !editor?.can().chain().focus().redo()
|
|
218
|
+
disabled: () => !editor?.can().chain().focus().redo()
|
|
219
|
+
.run(),
|
|
201
220
|
},
|
|
202
221
|
];
|
|
203
222
|
|
|
@@ -205,7 +224,15 @@ const emit = defineEmits(['update:modelValue']);
|
|
|
205
224
|
|
|
206
225
|
function initEditor() {
|
|
207
226
|
editor = new Editor({
|
|
208
|
-
extensions: [
|
|
227
|
+
extensions: [
|
|
228
|
+
StarterKit,
|
|
229
|
+
Image,
|
|
230
|
+
YouTube,
|
|
231
|
+
Table,
|
|
232
|
+
TableRow,
|
|
233
|
+
TableCell,
|
|
234
|
+
TableHeader,
|
|
235
|
+
],
|
|
209
236
|
content: props.modelValue,
|
|
210
237
|
onUpdate: ({ editor }) => emit('update:modelValue', editor.getHTML()),
|
|
211
238
|
});
|
|
@@ -217,7 +244,7 @@ watch(
|
|
|
217
244
|
if (editor?.getHTML() === value) return;
|
|
218
245
|
editor?.commands.setContent(value, false);
|
|
219
246
|
},
|
|
220
|
-
{ immediate: true }
|
|
247
|
+
{ immediate: true },
|
|
221
248
|
);
|
|
222
249
|
|
|
223
250
|
onMounted(initEditor);
|
|
@@ -239,7 +266,6 @@ onBeforeUnmount(() => editor?.destroy());
|
|
|
239
266
|
.tiptap h1,
|
|
240
267
|
.tiptap h2 {
|
|
241
268
|
line-height: 1;
|
|
242
|
-
margin-top: 0;
|
|
243
269
|
}
|
|
244
270
|
|
|
245
271
|
.tiptap h3,
|
|
@@ -247,20 +273,15 @@ onBeforeUnmount(() => editor?.destroy());
|
|
|
247
273
|
.tiptap h5,
|
|
248
274
|
.tiptap h6 {
|
|
249
275
|
line-height: 1.1;
|
|
250
|
-
margin-top: 0;
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
.tiptap code {
|
|
254
|
-
background-color: rgba(97, 97, 97, 0.1);
|
|
255
|
-
color: #616161;
|
|
256
276
|
}
|
|
257
277
|
|
|
258
278
|
.tiptap pre {
|
|
259
279
|
background: #0d0d0d;
|
|
260
|
-
color:
|
|
280
|
+
color: var(--bgl-white);
|
|
261
281
|
font-family: 'JetBrainsMono', monospace;
|
|
262
282
|
padding: 0.75rem 1rem;
|
|
263
283
|
border-radius: 0.5rem;
|
|
284
|
+
margin: 0;
|
|
264
285
|
}
|
|
265
286
|
|
|
266
287
|
.tiptap pre code {
|
|
@@ -276,13 +297,14 @@ onBeforeUnmount(() => editor?.destroy());
|
|
|
276
297
|
}
|
|
277
298
|
|
|
278
299
|
.tiptap blockquote {
|
|
279
|
-
padding-
|
|
280
|
-
border-
|
|
300
|
+
padding-inline-start: 0.5rem;
|
|
301
|
+
border-inline-start: 2px solid var(--border-color);
|
|
302
|
+
margin: 0.5rem
|
|
281
303
|
}
|
|
282
304
|
|
|
283
305
|
.tiptap hr {
|
|
284
306
|
border: none;
|
|
285
|
-
border-top: 2px solid
|
|
307
|
+
border-top: 2px solid var(--border-color);
|
|
286
308
|
margin: 1rem 0;
|
|
287
309
|
}
|
|
288
310
|
|
|
@@ -309,4 +331,96 @@ onBeforeUnmount(() => editor?.destroy());
|
|
|
309
331
|
margin-bottom: 0.125rem;
|
|
310
332
|
border-radius: var(--input-border-radius);
|
|
311
333
|
}
|
|
334
|
+
|
|
335
|
+
.tiptap {
|
|
336
|
+
table {
|
|
337
|
+
border-collapse: collapse;
|
|
338
|
+
table-layout: fixed;
|
|
339
|
+
width: 100%;
|
|
340
|
+
margin: 0;
|
|
341
|
+
overflow: hidden;
|
|
342
|
+
|
|
343
|
+
td,
|
|
344
|
+
th {
|
|
345
|
+
min-width: 1em;
|
|
346
|
+
border: 2px solid var(--border-color);
|
|
347
|
+
padding: 3px 5px;
|
|
348
|
+
vertical-align: top;
|
|
349
|
+
box-sizing: border-box;
|
|
350
|
+
position: relative;
|
|
351
|
+
|
|
352
|
+
> * {
|
|
353
|
+
margin-bottom: 0;
|
|
354
|
+
margin-top: 0;
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
th {
|
|
359
|
+
font-weight: bold;
|
|
360
|
+
text-align: start;
|
|
361
|
+
background-color: var(--bgl-gray-80);
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
.selectedCell:after {
|
|
365
|
+
z-index: 2;
|
|
366
|
+
position: absolute;
|
|
367
|
+
content: '';
|
|
368
|
+
left: 0;
|
|
369
|
+
right: 0;
|
|
370
|
+
top: 0;
|
|
371
|
+
bottom: 0;
|
|
372
|
+
background: var(--bgl-gray-20);
|
|
373
|
+
pointer-events: none;
|
|
374
|
+
}
|
|
375
|
+
.selectedCell p::selection{
|
|
376
|
+
color: var(--bgl-black)
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
.column-resize-handle {
|
|
380
|
+
position: absolute;
|
|
381
|
+
inset-inline-start: -2px;
|
|
382
|
+
top: 0;
|
|
383
|
+
bottom: -2px;
|
|
384
|
+
width: 4px;
|
|
385
|
+
background-color: #adf;
|
|
386
|
+
pointer-events: none;
|
|
387
|
+
}
|
|
388
|
+
|
|
389
|
+
p {
|
|
390
|
+
margin: 0;
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
.tableWrapper {
|
|
396
|
+
padding: 1rem 0;
|
|
397
|
+
overflow-x: auto;
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
.resize-cursor {
|
|
401
|
+
cursor: ew-resize;
|
|
402
|
+
cursor: col-resize;
|
|
403
|
+
}
|
|
404
|
+
.RichText-tools [disabled]{
|
|
405
|
+
color: var(--bgl-black) !important;
|
|
406
|
+
opacity: 0.3;
|
|
407
|
+
}
|
|
408
|
+
.RichText iframe{
|
|
409
|
+
width: 100%;
|
|
410
|
+
max-width: 700px;
|
|
411
|
+
margin: 0 auto;
|
|
412
|
+
height: auto;
|
|
413
|
+
display: block;
|
|
414
|
+
border-radius: var(--input-border-radius);
|
|
415
|
+
border: none;
|
|
416
|
+
aspect-ratio: 16/9;
|
|
417
|
+
}
|
|
418
|
+
.RichText img{
|
|
419
|
+
width: 100%;
|
|
420
|
+
max-width: 700px;
|
|
421
|
+
margin: 0 auto;
|
|
422
|
+
height: auto;
|
|
423
|
+
display: block;
|
|
424
|
+
border-radius: var(--input-border-radius);
|
|
425
|
+
}
|
|
312
426
|
</style>
|