@geelato/web-vue 2.57.1 → 2.58.1

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 (81) hide show
  1. package/dist/arco-vue.js +872 -535
  2. package/dist/arco-vue.js.map +1 -1
  3. package/dist/arco-vue.min.js +1645 -1546
  4. package/dist/arco-vue.min.js.map +1 -1
  5. package/dist/arco.css +39 -8
  6. package/dist/arco.min.css +1 -1
  7. package/es/_components/picker/input-range.d.ts +2 -2
  8. package/es/_components/picker/input.d.ts +1 -1
  9. package/es/_components/virtual-list-v2/virtual-list.d.ts +3 -3
  10. package/es/_utils/array.d.ts +1 -1
  11. package/es/_utils/array.js +18 -1
  12. package/es/date-picker/index.d.ts +7 -7
  13. package/es/date-picker/panels/date/index.d.ts +2 -2
  14. package/es/date-picker/panels/week/index.d.ts +2 -2
  15. package/es/date-picker/picker-panel.d.ts +4 -4
  16. package/es/date-picker/picker.d.ts +5 -5
  17. package/es/date-picker/range-picker-panel.d.ts +4 -4
  18. package/es/date-picker/range-picker.d.ts +7 -7
  19. package/es/drawer/drawer.d.ts +24 -0
  20. package/es/drawer/drawer.js +61 -6
  21. package/es/drawer/index.d.ts +45 -0
  22. package/es/drawer/style/index.css +10 -0
  23. package/es/drawer/style/index.less +12 -0
  24. package/es/index.css +39 -8
  25. package/es/mention/index.d.ts +3 -3
  26. package/es/mention/mention.d.ts +1 -1
  27. package/es/menu/item.d.ts +1 -1
  28. package/es/menu/sub-menu-pop.d.ts +1 -1
  29. package/es/message/message.d.ts +1 -1
  30. package/es/modal/index.d.ts +33 -3
  31. package/es/modal/modal.d.ts +16 -1
  32. package/es/modal/modal.js +23 -6
  33. package/es/modal/modal.vue_vue_type_script_lang.js +26 -2
  34. package/es/modal/style/index.css +7 -1
  35. package/es/modal/style/index.less +8 -1
  36. package/es/pagination/index.d.ts +3 -3
  37. package/es/pagination/pagination.d.ts +1 -1
  38. package/es/table/context.d.ts +3 -0
  39. package/es/table/hooks/use-row-selection.js +5 -3
  40. package/es/table/interface.d.ts +1 -1
  41. package/es/table/style/index.css +22 -7
  42. package/es/table/style/index.less +25 -8
  43. package/es/table/table-operation-td.js +6 -6
  44. package/es/table/table-operation-th.js +19 -7
  45. package/es/table/table-td.js +2 -2
  46. package/es/table/table.js +165 -33
  47. package/es/table/utils.d.ts +1 -1
  48. package/es/table/utils.js +9 -5
  49. package/es/time-picker/index.d.ts +14 -14
  50. package/es/time-picker/panel.d.ts +2 -2
  51. package/es/time-picker/range-panel.d.ts +2 -2
  52. package/es/time-picker/time-picker.d.ts +7 -7
  53. package/es/tree/index.d.ts +6 -6
  54. package/es/tree/tree.d.ts +3 -3
  55. package/es/tree-select/index.d.ts +12 -12
  56. package/es/tree-select/panel.d.ts +6 -6
  57. package/es/tree-select/tree-select.d.ts +6 -6
  58. package/es/typography/index.d.ts +3 -3
  59. package/es/typography/title.d.ts +3 -3
  60. package/json/vetur-attributes.json +2491 -2491
  61. package/json/vetur-tags.json +889 -889
  62. package/json/web-types.json +4726 -4726
  63. package/lib/_utils/array.js +18 -1
  64. package/lib/drawer/drawer.js +63 -8
  65. package/lib/drawer/style/index.css +10 -0
  66. package/lib/drawer/style/index.less +12 -0
  67. package/lib/index.css +39 -8
  68. package/lib/modal/modal.js +23 -6
  69. package/lib/modal/modal.vue_vue_type_script_lang.js +36 -12
  70. package/lib/modal/style/index.css +7 -1
  71. package/lib/modal/style/index.less +8 -1
  72. package/lib/table/hooks/use-row-selection.js +5 -3
  73. package/lib/table/style/index.css +22 -7
  74. package/lib/table/style/index.less +25 -8
  75. package/lib/table/table-operation-td.js +6 -6
  76. package/lib/table/table-operation-th.js +19 -7
  77. package/lib/table/table-td.js +2 -2
  78. package/lib/table/table.js +164 -32
  79. package/lib/table/utils.js +9 -5
  80. package/package.json +25 -24
  81. package/LICENSE +0 -21
@@ -90,12 +90,21 @@ declare const Drawer: {
90
90
  type: BooleanConstructor;
91
91
  default: boolean;
92
92
  };
93
+ fullscreen: {
94
+ type: BooleanConstructor;
95
+ default: boolean;
96
+ };
97
+ showFullscreen: {
98
+ type: BooleanConstructor;
99
+ default: boolean;
100
+ };
93
101
  }>> & Readonly<{
94
102
  onOpen?: (() => any) | undefined;
95
103
  onCancel?: ((e: Event) => any) | undefined;
96
104
  onClose?: (() => any) | undefined;
97
105
  "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
98
106
  onOk?: ((e: Event) => any) | undefined;
107
+ "onUpdate:fullscreen"?: ((fullscreen: boolean) => any) | undefined;
99
108
  onBeforeOpen?: (() => any) | undefined;
100
109
  onBeforeClose?: (() => any) | undefined;
101
110
  }>, {
@@ -113,8 +122,11 @@ declare const Drawer: {
113
122
  handleMask: (e: Event) => void;
114
123
  isFixed: import("vue").ComputedRef<boolean>;
115
124
  teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
125
+ mergedFullscreen: import("vue").ComputedRef<boolean>;
126
+ toggleFullscreen: () => void;
116
127
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
117
128
  'update:visible': (visible: boolean) => true;
129
+ 'update:fullscreen': (fullscreen: boolean) => true;
118
130
  ok: (e: Event) => true;
119
131
  cancel: (e: Event) => true;
120
132
  open: () => true;
@@ -138,6 +150,8 @@ declare const Drawer: {
138
150
  placement: "top" | "bottom" | "left" | "right";
139
151
  okLoading: boolean;
140
152
  hideCancel: boolean;
153
+ fullscreen: boolean;
154
+ showFullscreen: boolean;
141
155
  }, true, {}, {}, {
142
156
  ClientOnly: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
143
157
  [key: string]: any;
@@ -377,6 +391,8 @@ declare const Drawer: {
377
391
  size: "mini" | "medium" | "large" | "small";
378
392
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
379
393
  IconClose: any;
394
+ IconFullscreen: any;
395
+ IconFullscreenExit: any;
380
396
  } & import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
381
397
  P: {};
382
398
  B: {};
@@ -471,12 +487,21 @@ declare const Drawer: {
471
487
  type: BooleanConstructor;
472
488
  default: boolean;
473
489
  };
490
+ fullscreen: {
491
+ type: BooleanConstructor;
492
+ default: boolean;
493
+ };
494
+ showFullscreen: {
495
+ type: BooleanConstructor;
496
+ default: boolean;
497
+ };
474
498
  }>> & Readonly<{
475
499
  onOpen?: (() => any) | undefined;
476
500
  onCancel?: ((e: Event) => any) | undefined;
477
501
  onClose?: (() => any) | undefined;
478
502
  "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
479
503
  onOk?: ((e: Event) => any) | undefined;
504
+ "onUpdate:fullscreen"?: ((fullscreen: boolean) => any) | undefined;
480
505
  onBeforeOpen?: (() => any) | undefined;
481
506
  onBeforeClose?: (() => any) | undefined;
482
507
  }>, {
@@ -494,6 +519,8 @@ declare const Drawer: {
494
519
  handleMask: (e: Event) => void;
495
520
  isFixed: import("vue").ComputedRef<boolean>;
496
521
  teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
522
+ mergedFullscreen: import("vue").ComputedRef<boolean>;
523
+ toggleFullscreen: () => void;
497
524
  }, {}, {}, {}, {
498
525
  unmountOnClose: boolean;
499
526
  popupContainer: string | HTMLElement;
@@ -511,6 +538,8 @@ declare const Drawer: {
511
538
  placement: "top" | "bottom" | "left" | "right";
512
539
  okLoading: boolean;
513
540
  hideCancel: boolean;
541
+ fullscreen: boolean;
542
+ showFullscreen: boolean;
514
543
  }>;
515
544
  __isFragment?: undefined;
516
545
  __isTeleport?: undefined;
@@ -602,12 +631,21 @@ declare const Drawer: {
602
631
  type: BooleanConstructor;
603
632
  default: boolean;
604
633
  };
634
+ fullscreen: {
635
+ type: BooleanConstructor;
636
+ default: boolean;
637
+ };
638
+ showFullscreen: {
639
+ type: BooleanConstructor;
640
+ default: boolean;
641
+ };
605
642
  }>> & Readonly<{
606
643
  onOpen?: (() => any) | undefined;
607
644
  onCancel?: ((e: Event) => any) | undefined;
608
645
  onClose?: (() => any) | undefined;
609
646
  "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
610
647
  onOk?: ((e: Event) => any) | undefined;
648
+ "onUpdate:fullscreen"?: ((fullscreen: boolean) => any) | undefined;
611
649
  onBeforeOpen?: (() => any) | undefined;
612
650
  onBeforeClose?: (() => any) | undefined;
613
651
  }>, {
@@ -625,8 +663,11 @@ declare const Drawer: {
625
663
  handleMask: (e: Event) => void;
626
664
  isFixed: import("vue").ComputedRef<boolean>;
627
665
  teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
666
+ mergedFullscreen: import("vue").ComputedRef<boolean>;
667
+ toggleFullscreen: () => void;
628
668
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
629
669
  'update:visible': (visible: boolean) => true;
670
+ 'update:fullscreen': (fullscreen: boolean) => true;
630
671
  ok: (e: Event) => true;
631
672
  cancel: (e: Event) => true;
632
673
  open: () => true;
@@ -650,6 +691,8 @@ declare const Drawer: {
650
691
  placement: "top" | "bottom" | "left" | "right";
651
692
  okLoading: boolean;
652
693
  hideCancel: boolean;
694
+ fullscreen: boolean;
695
+ showFullscreen: boolean;
653
696
  }, {}, string, {}, {
654
697
  ClientOnly: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
655
698
  [key: string]: any;
@@ -889,6 +932,8 @@ declare const Drawer: {
889
932
  size: "mini" | "medium" | "large" | "small";
890
933
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
891
934
  IconClose: any;
935
+ IconFullscreen: any;
936
+ IconFullscreenExit: any;
892
937
  } & import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
893
938
  open: (config: DrawerConfig, appContext?: AppContext | undefined) => {
894
939
  close: () => void;
@@ -64,6 +64,12 @@
64
64
  font-size: 12px;
65
65
  cursor: pointer;
66
66
  }
67
+ .arco-drawer-header .arco-drawer-fullscreen-btn {
68
+ margin-left: 8px;
69
+ color: var(--color-text-1);
70
+ font-size: 12px;
71
+ cursor: pointer;
72
+ }
67
73
  .arco-drawer-footer {
68
74
  flex-shrink: 0;
69
75
  box-sizing: border-box;
@@ -83,6 +89,10 @@
83
89
  overflow: auto;
84
90
  color: var(--color-text-1);
85
91
  }
92
+ .arco-drawer-fullscreen {
93
+ width: 100% !important;
94
+ height: 100% !important;
95
+ }
86
96
  .fade-drawer-enter-from,
87
97
  .fade-drawer-appear-from {
88
98
  opacity: 0;
@@ -54,6 +54,13 @@
54
54
  font-size: @drawer-font-size-close-icon;
55
55
  cursor: pointer;
56
56
  }
57
+
58
+ .@{drawer-prefix-cls}-fullscreen-btn {
59
+ margin-left: 8px;
60
+ color: @drawer-color-header-text;
61
+ font-size: @drawer-font-size-close-icon;
62
+ cursor: pointer;
63
+ }
57
64
  }
58
65
 
59
66
  &-footer {
@@ -79,6 +86,11 @@
79
86
  }
80
87
  }
81
88
 
89
+ .@{drawer-prefix-cls}-fullscreen {
90
+ width: 100% !important;
91
+ height: 100% !important;
92
+ }
93
+
82
94
  .fade-drawer-enter-from,
83
95
  .fade-drawer-appear-from {
84
96
  opacity: 0;
package/es/index.css CHANGED
@@ -6169,6 +6169,12 @@ body[arco-theme='dark'] .arco-carousel-indicator-outer .arco-carousel-indicator-
6169
6169
  font-size: 12px;
6170
6170
  cursor: pointer;
6171
6171
  }
6172
+ .arco-drawer-header .arco-drawer-fullscreen-btn {
6173
+ margin-left: 8px;
6174
+ color: var(--color-text-1);
6175
+ font-size: 12px;
6176
+ cursor: pointer;
6177
+ }
6172
6178
  .arco-drawer-footer {
6173
6179
  flex-shrink: 0;
6174
6180
  box-sizing: border-box;
@@ -6188,6 +6194,10 @@ body[arco-theme='dark'] .arco-carousel-indicator-outer .arco-carousel-indicator-
6188
6194
  overflow: auto;
6189
6195
  color: var(--color-text-1);
6190
6196
  }
6197
+ .arco-drawer-fullscreen {
6198
+ width: 100% !important;
6199
+ height: 100% !important;
6200
+ }
6191
6201
  .fade-drawer-enter-from,
6192
6202
  .fade-drawer-appear-from {
6193
6203
  opacity: 0;
@@ -11140,7 +11150,13 @@ body[arco-theme='dark'] .arco-carousel-indicator-outer .arco-carousel-indicator-
11140
11150
  margin-left: 12px;
11141
11151
  }
11142
11152
  .arco-modal-close-btn {
11143
- margin-left: -12px;
11153
+ margin-left: 8px;
11154
+ color: var(--color-text-1);
11155
+ font-size: 12px;
11156
+ cursor: pointer;
11157
+ }
11158
+ .arco-modal-fullscreen-btn {
11159
+ margin-left: 8px;
11144
11160
  color: var(--color-text-1);
11145
11161
  font-size: 12px;
11146
11162
  cursor: pointer;
@@ -14393,6 +14409,24 @@ body[arco-theme='dark'] .arco-radio-button::after {
14393
14409
  justify-content: center;
14394
14410
  padding: 0;
14395
14411
  }
14412
+ .arco-table-th.arco-table-operation.arco-table-checkbox .arco-table-cell,
14413
+ .arco-table-td.arco-table-operation.arco-table-checkbox .arco-table-cell,
14414
+ .arco-table-th.arco-table-operation.arco-table-radio .arco-table-cell,
14415
+ .arco-table-td.arco-table-operation.arco-table-radio .arco-table-cell {
14416
+ padding: 0 4px;
14417
+ }
14418
+ .arco-table-th.arco-table-operation.arco-table-checkbox,
14419
+ .arco-table-td.arco-table-operation.arco-table-checkbox {
14420
+ position: relative;
14421
+ z-index: 11;
14422
+ }
14423
+ .arco-table-th.arco-table-operation.arco-table-checkbox.arco-table-col-fixed-left,
14424
+ .arco-table-td.arco-table-operation.arco-table-checkbox.arco-table-col-fixed-left,
14425
+ .arco-table-th.arco-table-operation.arco-table-checkbox.arco-table-col-fixed-right,
14426
+ .arco-table-td.arco-table-operation.arco-table-checkbox.arco-table-col-fixed-right {
14427
+ position: sticky !important;
14428
+ z-index: 12;
14429
+ }
14396
14430
  .arco-table-radio,
14397
14431
  .arco-table-checkbox {
14398
14432
  justify-content: center;
@@ -14783,13 +14817,10 @@ body[arco-theme='dark'] .arco-radio-button::after {
14783
14817
  .arco-table-virtualized .arco-table-element {
14784
14818
  table-layout: fixed;
14785
14819
  }
14786
- .arco-table-virtualized div.arco-table-body div.arco-table-tr {
14787
- display: flex;
14788
- }
14789
- .arco-table-virtualized div.arco-table-body div.arco-table-td {
14790
- display: flex;
14791
- flex: 1;
14792
- align-items: center;
14820
+ .arco-table-virtualized .arco-table-body .arco-table-td.arco-table-col-fixed-left,
14821
+ .arco-table-virtualized .arco-table-body .arco-table-td.arco-table-col-fixed-right {
14822
+ position: sticky;
14823
+ z-index: 10;
14793
14824
  }
14794
14825
  .arco-table-pagination {
14795
14826
  display: flex;
@@ -58,8 +58,8 @@ declare const Mention: {
58
58
  disabled: boolean;
59
59
  data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
60
60
  type: "textarea" | "input";
61
- defaultValue: string;
62
61
  prefix: string | string[];
62
+ defaultValue: string;
63
63
  allowClear: boolean;
64
64
  split: string;
65
65
  }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
@@ -117,8 +117,8 @@ declare const Mention: {
117
117
  disabled: boolean;
118
118
  data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
119
119
  type: "textarea" | "input";
120
- defaultValue: string;
121
120
  prefix: string | string[];
121
+ defaultValue: string;
122
122
  allowClear: boolean;
123
123
  split: string;
124
124
  }>;
@@ -181,8 +181,8 @@ declare const Mention: {
181
181
  disabled: boolean;
182
182
  data: (string | number | import("..").SelectOptionData | import("..").SelectOptionGroup)[];
183
183
  type: "textarea" | "input";
184
- defaultValue: string;
185
184
  prefix: string | string[];
185
+ defaultValue: string;
186
186
  allowClear: boolean;
187
187
  split: string;
188
188
  }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
@@ -86,8 +86,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
86
86
  disabled: boolean;
87
87
  data: (string | number | SelectOptionData | SelectOptionGroup)[];
88
88
  type: "textarea" | "input";
89
- defaultValue: string;
90
89
  prefix: string | string[];
90
+ defaultValue: string;
91
91
  allowClear: boolean;
92
92
  split: string;
93
93
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
package/es/menu/item.d.ts CHANGED
@@ -4,7 +4,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
4
4
  default: boolean;
5
5
  };
6
6
  }>, {
7
- menuContext: Partial<Readonly<Pick<import("./interface").InternalMenuProps, "tooltipProps" | "mode" | "theme" | "triggerProps" | "popupMaxHeight" | "levelIndent" | "autoScrollIntoView" | "scrollConfig" | "inTrigger"> & {
7
+ menuContext: Partial<Readonly<Pick<import("./interface").InternalMenuProps, "tooltipProps" | "mode" | "triggerProps" | "theme" | "popupMaxHeight" | "levelIndent" | "autoScrollIntoView" | "scrollConfig" | "inTrigger"> & {
8
8
  selectedKeys: string[];
9
9
  openKeys: string[];
10
10
  prefixCls: string;
@@ -26,7 +26,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
26
26
  triggerPrefixCls: string;
27
27
  triggerClassNames: import("vue").ComputedRef<any[]>;
28
28
  triggerProps: import("vue").ComputedRef<Omit<import("../trigger").TriggerProps, "class">>;
29
- menuContext: Partial<Readonly<Pick<import("./interface").InternalMenuProps, "tooltipProps" | "mode" | "theme" | "triggerProps" | "popupMaxHeight" | "levelIndent" | "autoScrollIntoView" | "scrollConfig" | "inTrigger"> & {
29
+ menuContext: Partial<Readonly<Pick<import("./interface").InternalMenuProps, "tooltipProps" | "mode" | "triggerProps" | "theme" | "popupMaxHeight" | "levelIndent" | "autoScrollIntoView" | "scrollConfig" | "inTrigger"> & {
30
30
  selectedKeys: string[];
31
31
  openKeys: string[];
32
32
  prefixCls: string;
@@ -61,8 +61,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
61
61
  type: "normal" | "error" | "loading" | "success" | "warning" | "info";
62
62
  closable: boolean;
63
63
  showIcon: boolean;
64
- resetOnUpdate: boolean;
65
64
  resetOnHover: boolean;
65
+ resetOnUpdate: boolean;
66
66
  }, {}, {
67
67
  AIconHover: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
68
68
  prefix: {
@@ -100,6 +100,10 @@ declare const Modal: {
100
100
  type: BooleanConstructor;
101
101
  default: boolean;
102
102
  };
103
+ showFullscreen: {
104
+ type: BooleanConstructor;
105
+ default: boolean;
106
+ };
103
107
  maskAnimationName: {
104
108
  type: StringConstructor;
105
109
  default: (props: Record<string, any>) => "fade-in-standard" | "fade-modal";
@@ -127,6 +131,7 @@ declare const Modal: {
127
131
  onClose?: (() => any) | undefined;
128
132
  "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
129
133
  onOk?: ((e: Event) => any) | undefined;
134
+ "onUpdate:fullscreen"?: ((fullscreen: boolean) => any) | undefined;
130
135
  onBeforeOpen?: (() => any) | undefined;
131
136
  onBeforeClose?: (() => any) | undefined;
132
137
  }>, {
@@ -155,8 +160,11 @@ declare const Modal: {
155
160
  } | undefined)[]>;
156
161
  teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
157
162
  handleMoveDown: (ev: MouseEvent) => void;
163
+ mergedFullscreen: import("vue").ComputedRef<boolean>;
164
+ toggleFullscreen: () => void;
158
165
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
159
166
  'update:visible': (visible: boolean) => true;
167
+ 'update:fullscreen': (fullscreen: boolean) => true;
160
168
  ok: (e: Event) => true;
161
169
  cancel: (e: Event) => true;
162
170
  open: () => true;
@@ -178,9 +186,10 @@ declare const Modal: {
178
186
  simple: boolean;
179
187
  okLoading: boolean;
180
188
  hideCancel: boolean;
189
+ fullscreen: boolean;
190
+ showFullscreen: boolean;
181
191
  titleAlign: "center" | "start";
182
192
  alignCenter: boolean;
183
- fullscreen: boolean;
184
193
  maskAnimationName: string;
185
194
  modalAnimationName: string;
186
195
  hideTitle: boolean;
@@ -423,6 +432,8 @@ declare const Modal: {
423
432
  size: "mini" | "medium" | "large" | "small";
424
433
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
425
434
  IconClose: any;
435
+ IconFullscreen: any;
436
+ IconFullscreenExit: any;
426
437
  IconInfoCircleFill: any;
427
438
  IconCheckCircleFill: any;
428
439
  IconExclamationCircleFill: any;
@@ -532,6 +543,10 @@ declare const Modal: {
532
543
  type: BooleanConstructor;
533
544
  default: boolean;
534
545
  };
546
+ showFullscreen: {
547
+ type: BooleanConstructor;
548
+ default: boolean;
549
+ };
535
550
  maskAnimationName: {
536
551
  type: StringConstructor;
537
552
  default: (props: Record<string, any>) => "fade-in-standard" | "fade-modal";
@@ -559,6 +574,7 @@ declare const Modal: {
559
574
  onClose?: (() => any) | undefined;
560
575
  "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
561
576
  onOk?: ((e: Event) => any) | undefined;
577
+ "onUpdate:fullscreen"?: ((fullscreen: boolean) => any) | undefined;
562
578
  onBeforeOpen?: (() => any) | undefined;
563
579
  onBeforeClose?: (() => any) | undefined;
564
580
  }>, {
@@ -587,6 +603,8 @@ declare const Modal: {
587
603
  } | undefined)[]>;
588
604
  teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
589
605
  handleMoveDown: (ev: MouseEvent) => void;
606
+ mergedFullscreen: import("vue").ComputedRef<boolean>;
607
+ toggleFullscreen: () => void;
590
608
  }, {}, {}, {}, {
591
609
  unmountOnClose: boolean;
592
610
  popupContainer: string | HTMLElement;
@@ -602,9 +620,10 @@ declare const Modal: {
602
620
  simple: boolean;
603
621
  okLoading: boolean;
604
622
  hideCancel: boolean;
623
+ fullscreen: boolean;
624
+ showFullscreen: boolean;
605
625
  titleAlign: "center" | "start";
606
626
  alignCenter: boolean;
607
- fullscreen: boolean;
608
627
  maskAnimationName: string;
609
628
  modalAnimationName: string;
610
629
  hideTitle: boolean;
@@ -710,6 +729,10 @@ declare const Modal: {
710
729
  type: BooleanConstructor;
711
730
  default: boolean;
712
731
  };
732
+ showFullscreen: {
733
+ type: BooleanConstructor;
734
+ default: boolean;
735
+ };
713
736
  maskAnimationName: {
714
737
  type: StringConstructor;
715
738
  default: (props: Record<string, any>) => "fade-in-standard" | "fade-modal";
@@ -737,6 +760,7 @@ declare const Modal: {
737
760
  onClose?: (() => any) | undefined;
738
761
  "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
739
762
  onOk?: ((e: Event) => any) | undefined;
763
+ "onUpdate:fullscreen"?: ((fullscreen: boolean) => any) | undefined;
740
764
  onBeforeOpen?: (() => any) | undefined;
741
765
  onBeforeClose?: (() => any) | undefined;
742
766
  }>, {
@@ -765,8 +789,11 @@ declare const Modal: {
765
789
  } | undefined)[]>;
766
790
  teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
767
791
  handleMoveDown: (ev: MouseEvent) => void;
792
+ mergedFullscreen: import("vue").ComputedRef<boolean>;
793
+ toggleFullscreen: () => void;
768
794
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
769
795
  'update:visible': (visible: boolean) => true;
796
+ 'update:fullscreen': (fullscreen: boolean) => true;
770
797
  ok: (e: Event) => true;
771
798
  cancel: (e: Event) => true;
772
799
  open: () => true;
@@ -788,9 +815,10 @@ declare const Modal: {
788
815
  simple: boolean;
789
816
  okLoading: boolean;
790
817
  hideCancel: boolean;
818
+ fullscreen: boolean;
819
+ showFullscreen: boolean;
791
820
  titleAlign: "center" | "start";
792
821
  alignCenter: boolean;
793
- fullscreen: boolean;
794
822
  maskAnimationName: string;
795
823
  modalAnimationName: string;
796
824
  hideTitle: boolean;
@@ -1033,6 +1061,8 @@ declare const Modal: {
1033
1061
  size: "mini" | "medium" | "large" | "small";
1034
1062
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1035
1063
  IconClose: any;
1064
+ IconFullscreen: any;
1065
+ IconFullscreenExit: any;
1036
1066
  IconInfoCircleFill: any;
1037
1067
  IconCheckCircleFill: any;
1038
1068
  IconExclamationCircleFill: any;
@@ -98,6 +98,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
98
98
  type: BooleanConstructor;
99
99
  default: boolean;
100
100
  };
101
+ showFullscreen: {
102
+ type: BooleanConstructor;
103
+ default: boolean;
104
+ };
101
105
  maskAnimationName: {
102
106
  type: StringConstructor;
103
107
  default: (props: Record<string, any>) => "fade-in-standard" | "fade-modal";
@@ -145,8 +149,11 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
145
149
  } | undefined)[]>;
146
150
  teleportContainer: import("vue").Ref<string | HTMLElement | undefined, string | HTMLElement | undefined>;
147
151
  handleMoveDown: (ev: MouseEvent) => void;
152
+ mergedFullscreen: import("vue").ComputedRef<boolean>;
153
+ toggleFullscreen: () => void;
148
154
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
149
155
  'update:visible': (visible: boolean) => true;
156
+ 'update:fullscreen': (fullscreen: boolean) => true;
150
157
  ok: (e: Event) => true;
151
158
  cancel: (e: Event) => true;
152
159
  open: () => true;
@@ -251,6 +258,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
251
258
  type: BooleanConstructor;
252
259
  default: boolean;
253
260
  };
261
+ showFullscreen: {
262
+ type: BooleanConstructor;
263
+ default: boolean;
264
+ };
254
265
  maskAnimationName: {
255
266
  type: StringConstructor;
256
267
  default: (props: Record<string, any>) => "fade-in-standard" | "fade-modal";
@@ -278,6 +289,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
278
289
  onClose?: (() => any) | undefined;
279
290
  "onUpdate:visible"?: ((visible: boolean) => any) | undefined;
280
291
  onOk?: ((e: Event) => any) | undefined;
292
+ "onUpdate:fullscreen"?: ((fullscreen: boolean) => any) | undefined;
281
293
  onBeforeOpen?: (() => any) | undefined;
282
294
  onBeforeClose?: (() => any) | undefined;
283
295
  }>, {
@@ -295,9 +307,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
295
307
  simple: boolean;
296
308
  okLoading: boolean;
297
309
  hideCancel: boolean;
310
+ fullscreen: boolean;
311
+ showFullscreen: boolean;
298
312
  titleAlign: "center" | "start";
299
313
  alignCenter: boolean;
300
- fullscreen: boolean;
301
314
  maskAnimationName: string;
302
315
  modalAnimationName: string;
303
316
  hideTitle: boolean;
@@ -540,6 +553,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
540
553
  size: "mini" | "medium" | "large" | "small";
541
554
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
542
555
  IconClose: any;
556
+ IconFullscreen: any;
557
+ IconFullscreenExit: any;
543
558
  IconInfoCircleFill: any;
544
559
  IconCheckCircleFill: any;
545
560
  IconExclamationCircleFill: any;
package/es/modal/modal.js CHANGED
@@ -6,8 +6,10 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
6
6
  const _component_icon_check_circle_fill = resolveComponent("icon-check-circle-fill");
7
7
  const _component_icon_exclamation_circle_fill = resolveComponent("icon-exclamation-circle-fill");
8
8
  const _component_icon_close_circle_fill = resolveComponent("icon-close-circle-fill");
9
- const _component_icon_close = resolveComponent("icon-close");
9
+ const _component_icon_fullscreen = resolveComponent("icon-fullscreen");
10
+ const _component_icon_fullscreen_exit = resolveComponent("icon-fullscreen-exit");
10
11
  const _component_icon_hover = resolveComponent("icon-hover");
12
+ const _component_icon_close = resolveComponent("icon-close");
11
13
  const _component_arco_button = resolveComponent("arco-button");
12
14
  const _component_client_only = resolveComponent("client-only");
13
15
  return openBlock(), createBlock(_component_client_only, null, {
@@ -40,8 +42,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
40
42
  createElementVNode("div", {
41
43
  ref: "wrapperRef",
42
44
  class: normalizeClass(_ctx.wrapperCls),
43
- onClick: _cache[2] || (_cache[2] = withModifiers((...args) => _ctx.handleMaskClick && _ctx.handleMaskClick(...args), ["self"])),
44
- onMousedown: _cache[3] || (_cache[3] = withModifiers((...args) => _ctx.handleMaskMouseDown && _ctx.handleMaskMouseDown(...args), ["self"]))
45
+ onClick: _cache[3] || (_cache[3] = withModifiers((...args) => _ctx.handleMaskClick && _ctx.handleMaskClick(...args), ["self"])),
46
+ onMousedown: _cache[4] || (_cache[4] = withModifiers((...args) => _ctx.handleMaskMouseDown && _ctx.handleMaskMouseDown(...args), ["self"]))
45
47
  }, [
46
48
  createVNode(Transition, {
47
49
  name: _ctx.modalAnimationName,
@@ -59,7 +61,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
59
61
  !_ctx.hideTitle && (_ctx.$slots.title || _ctx.title || _ctx.closable) ? (openBlock(), createElementBlock("div", {
60
62
  key: 0,
61
63
  class: normalizeClass(`${_ctx.prefixCls}-header`),
62
- onMousedown: _cache[1] || (_cache[1] = (...args) => _ctx.handleMoveDown && _ctx.handleMoveDown(...args))
64
+ onMousedown: _cache[2] || (_cache[2] = (...args) => _ctx.handleMoveDown && _ctx.handleMoveDown(...args))
63
65
  }, [
64
66
  _ctx.$slots.title || _ctx.title ? (openBlock(), createElementBlock("div", {
65
67
  key: 0,
@@ -81,13 +83,28 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
81
83
  createTextVNode(toDisplayString(_ctx.title), 1)
82
84
  ])
83
85
  ], 2)) : createCommentVNode("v-if", true),
84
- !_ctx.simple && _ctx.closable ? (openBlock(), createElementBlock("div", {
86
+ !_ctx.simple && _ctx.showFullscreen ? (openBlock(), createElementBlock("div", {
85
87
  key: 1,
86
88
  tabindex: "-1",
87
89
  role: "button",
90
+ "aria-label": "Fullscreen",
91
+ class: normalizeClass(`${_ctx.prefixCls}-fullscreen-btn`),
92
+ onClick: _cache[0] || (_cache[0] = (...args) => _ctx.toggleFullscreen && _ctx.toggleFullscreen(...args))
93
+ }, [
94
+ createVNode(_component_icon_hover, null, {
95
+ default: withCtx(() => [
96
+ !_ctx.mergedFullscreen ? (openBlock(), createBlock(_component_icon_fullscreen, { key: 0 })) : (openBlock(), createBlock(_component_icon_fullscreen_exit, { key: 1 }))
97
+ ]),
98
+ _: 1
99
+ })
100
+ ], 2)) : createCommentVNode("v-if", true),
101
+ !_ctx.simple && _ctx.closable ? (openBlock(), createElementBlock("div", {
102
+ key: 2,
103
+ tabindex: "-1",
104
+ role: "button",
88
105
  "aria-label": "Close",
89
106
  class: normalizeClass(`${_ctx.prefixCls}-close-btn`),
90
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleCancel && _ctx.handleCancel(...args))
107
+ onClick: _cache[1] || (_cache[1] = (...args) => _ctx.handleCancel && _ctx.handleCancel(...args))
91
108
  }, [
92
109
  createVNode(_component_icon_hover, null, {
93
110
  default: withCtx(() => [