@das-fed/ui 1.1.4 → 6.3.0-beta.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 (152) hide show
  1. package/global/icons/index.local.js +1 -1
  2. package/global/style/index.css +1 -1
  3. package/global/style/scrollbar.css +22 -22
  4. package/global/theme/index.js +12 -12
  5. package/global/theme/module/color.js +31 -31
  6. package/global/theme/module/fontSize.js +5 -5
  7. package/global/theme/module/scrollbar.js +6 -6
  8. package/package.json +15 -9
  9. package/packages/business-components/app-container/index.js +154 -147
  10. package/packages/business-components/change-enterprises/index.css +1 -0
  11. package/packages/business-components/change-enterprises/index.js +241 -0
  12. package/packages/business-components/change-pwd/index.css +1 -0
  13. package/packages/business-components/change-pwd/index.js +330 -0
  14. package/packages/business-components/currency-page/index.css +1 -0
  15. package/packages/business-components/currency-page/index.js +99 -0
  16. package/packages/business-components/device-panel/index.css +1 -0
  17. package/packages/business-components/device-panel/index.js +115939 -0
  18. package/packages/business-components/echarts/index.js +93 -122
  19. package/packages/business-components/export-button/index.js +73 -66
  20. package/packages/business-components/import-button/index.js +213 -170
  21. package/packages/business-components/index.js +8 -1
  22. package/packages/business-components/layout-breadcrumb/index.js +82 -66
  23. package/packages/business-components/model-table-dialog/index.js +299 -289
  24. package/packages/business-components/process-configuration/index.css +1 -0
  25. package/packages/business-components/process-configuration/index.js +612 -0
  26. package/packages/business-components/process-form/index.css +1 -0
  27. package/packages/business-components/process-form/index.js +524 -0
  28. package/packages/business-components/process-search-form/index.js +73 -315
  29. package/packages/business-components/process-table/index.css +1 -1
  30. package/packages/business-components/process-table/index.js +186 -152
  31. package/packages/business-components/urgent-panel/index.css +1 -0
  32. package/packages/business-components/urgent-panel/index.js +3914 -0
  33. package/packages/business-components/user-org-dialog/index.js +466 -375
  34. package/packages/business-components/video-dialog/index.css +1 -0
  35. package/packages/business-components/video-dialog/index.js +1041 -0
  36. package/packages/business.js +1 -2
  37. package/packages/components/alert/index.js +449 -633
  38. package/packages/components/audio-video/index.css +1 -1
  39. package/packages/components/audio-video/index.js +312 -126
  40. package/packages/components/autocomplete/index.css +1 -1
  41. package/packages/components/autocomplete/index.js +312 -2923
  42. package/packages/components/breadcrumb/index.js +97 -82
  43. package/packages/components/button/index.css +1 -1
  44. package/packages/components/button/index.js +646 -787
  45. package/packages/components/calendar/index.css +1 -1
  46. package/packages/components/calendar/index.js +655 -3879
  47. package/packages/components/cascader/index.js +209 -203
  48. package/packages/components/checkbox/index.css +1 -1
  49. package/packages/components/checkbox/index.js +710 -872
  50. package/packages/components/collapse-panel/index.css +1 -1
  51. package/packages/components/collapse-panel/index.js +419 -601
  52. package/packages/components/collapse-transition/index.js +23 -21
  53. package/packages/components/collaspe/index.css +1 -1
  54. package/packages/components/collaspe/index.js +413 -595
  55. package/packages/components/color-picker/index.css +1 -1
  56. package/packages/components/color-picker/index.js +176 -133
  57. package/packages/components/custom-search-item/index.js +43 -37
  58. package/packages/components/date-picker/index.js +1338 -1459
  59. package/packages/components/dialog/index.js +429 -215
  60. package/packages/components/dimple-layout/index.css +1 -1
  61. package/packages/components/dimple-layout/index.js +1298 -1794
  62. package/packages/components/drawer/index.js +105 -77
  63. package/packages/components/dropdown/index.js +129 -109
  64. package/packages/components/edit-table/index.css +1 -1
  65. package/packages/components/edit-table/index.js +868 -752
  66. package/packages/components/empty/index.js +83 -78
  67. package/packages/components/form/index.js +22 -15
  68. package/packages/components/form-item/index.css +1 -1
  69. package/packages/components/form-item/index.js +601 -440
  70. package/packages/components/icon/index.css +1 -1
  71. package/packages/components/icon/index.js +38 -22
  72. package/packages/components/image-preview/index.css +1 -0
  73. package/packages/components/image-preview/index.js +2714 -0
  74. package/packages/components/image-upload/index.js +601 -765
  75. package/packages/components/image-viewer/index.css +1 -1
  76. package/packages/components/image-viewer/index.js +909 -990
  77. package/packages/components/index.js +2 -2
  78. package/packages/components/input/index.css +1 -1
  79. package/packages/components/input/index.js +284 -256
  80. package/packages/components/input-dialog-select/index.css +1 -1
  81. package/packages/components/input-dialog-select/index.js +179 -156
  82. package/packages/components/input-number/index.css +1 -1
  83. package/packages/components/input-number/index.js +157 -170
  84. package/packages/components/live-player/index.css +1 -0
  85. package/packages/components/live-player/index.js +170 -0
  86. package/packages/components/loading/index.js +17 -26
  87. package/packages/components/map/index.css +1 -1
  88. package/packages/components/map/index.js +18913 -461
  89. package/packages/components/menu-aside/index.css +1 -1
  90. package/packages/components/menu-aside/index.js +648 -713
  91. package/packages/components/menu-header/index.js +446 -629
  92. package/packages/components/message/index.js +25 -16
  93. package/packages/components/notification/index.js +386 -575
  94. package/packages/components/overlay/index.js +112 -103
  95. package/packages/components/pagination/index.js +260 -330
  96. package/packages/components/popover/index.js +104 -93
  97. package/packages/components/popup-mask/index.css +1 -1
  98. package/packages/components/popup-mask/index.js +77 -72
  99. package/packages/components/preview/index.js +33 -28
  100. package/packages/components/progress/index.js +214 -221
  101. package/packages/components/radio/index.css +1 -1
  102. package/packages/components/radio/index.js +699 -862
  103. package/packages/components/radio-tabs/index.js +144 -107
  104. package/packages/components/rich-editor/index.css +1 -1
  105. package/packages/components/rich-editor/index.js +105 -106
  106. package/packages/components/scrollbar/index.css +3 -2
  107. package/packages/components/scrollbar/index.js +2262 -1201
  108. package/packages/components/search/index.js +500 -664
  109. package/packages/components/search-form/index.css +1 -1
  110. package/packages/components/search-form/index.js +724 -626
  111. package/packages/components/select/index.css +1 -1
  112. package/packages/components/select/index.js +1052 -950
  113. package/packages/components/select-input/index.js +63 -53
  114. package/packages/components/select-list/index.css +1 -1
  115. package/packages/components/select-list/index.js +258 -235
  116. package/packages/components/special-range-picker-month/index.css +1 -1
  117. package/packages/components/special-range-picker-month/index.js +3068 -72555
  118. package/packages/components/special-range-picker-year/index.css +1 -1
  119. package/packages/components/special-range-picker-year/index.js +345 -339
  120. package/packages/components/spin/index.js +415 -594
  121. package/packages/components/split-panel/index.css +1 -1
  122. package/packages/components/split-panel/index.js +146 -127
  123. package/packages/components/step/index.js +414 -597
  124. package/packages/components/steps/index.js +407 -590
  125. package/packages/components/switch/index.js +23 -23
  126. package/packages/components/table/index.css +1 -1
  127. package/packages/components/table/index.js +80813 -27734
  128. package/packages/components/tabs/index.css +1 -1
  129. package/packages/components/tabs/index.js +620 -813
  130. package/packages/components/tag/index.js +63 -63
  131. package/packages/components/text-tooltip/index.css +9 -0
  132. package/packages/components/text-tooltip/index.js +2739 -33
  133. package/packages/components/time-line/index.js +464 -643
  134. package/packages/components/tooltip/index.css +1 -1
  135. package/packages/components/tooltip/index.js +108 -79
  136. package/packages/components/tree/index.css +1 -1
  137. package/packages/components/tree/index.js +840 -809
  138. package/packages/components/tree-select/index.js +271 -303
  139. package/packages/components/tree-table/index.js +461 -352
  140. package/packages/components/upload/index.js +682 -858
  141. package/packages/components/virtual-tree/index.css +1 -1
  142. package/packages/components/virtual-tree/index.js +144 -126
  143. package/packages/index.d.ts +1 -0
  144. package/packages/index.js +2 -2
  145. package/style/business.css +11 -4
  146. package/style/index.css +52 -42
  147. package/packages/business-components/low-code/index.css +0 -1
  148. package/packages/business-components/low-code/index.js +0 -60
  149. package/packages/components/audio-video-player/index.css +0 -1
  150. package/packages/components/audio-video-player/index.js +0 -83
  151. package/packages/components/table-column/index.css +0 -1
  152. package/packages/components/table-column/index.js +0 -82021
@@ -1,6 +1,6 @@
1
1
  import { withInstall as withInstall$1 } from '@das-fed/utils';
2
- import { defineComponent, openBlock, createElementBlock, createElementVNode, warn as warn$1, watch, unref as unref$1, onMounted, watchEffect, onBeforeUnmount, inject, ref as ref$1, computed as computed$1, isRef, getCurrentInstance, onScopeDispose as onScopeDispose$1, mergeProps, renderSlot, provide, nextTick, createVNode, h, normalizeClass, normalizeStyle, toDisplayString, withCtx, createBlock, resolveDynamicComponent, createCommentVNode, useSlots, Teleport, Transition, withDirectives, createSlots, vShow, createTextVNode } from 'vue';
3
- import { DasSpin, vOverlay, DasButton } from '@das-fed/ui';
2
+ import { defineComponent, openBlock, createElementBlock, createElementVNode, warn as warn$1, watch, unref as unref$1, onMounted, watchEffect, onBeforeUnmount, inject, ref as ref$1, computed as computed$1, isRef, getCurrentInstance, onScopeDispose as onScopeDispose$1, mergeProps, renderSlot, provide, nextTick, createVNode, h, normalizeClass, normalizeStyle, toDisplayString, withCtx, createBlock, resolveDynamicComponent, createCommentVNode, useSlots, Teleport, Transition, withDirectives, createSlots, vShow, mergeModels, useModel, onBeforeMount, onActivated, onDeactivated, createTextVNode } from 'vue';
3
+ import { vOverlay, DasSpin, DasButton } from '@das-fed/ui';
4
4
  import { i18n as i18n$1, getVarValue, t, getVar, setThemeRule, setI18nRule } from '@das-fed/web';
5
5
  import { ref, readonly, getCurrentScope, onScopeDispose, unref } from 'vue-demi';
6
6
 
@@ -59,11 +59,13 @@ function useTimeoutFn(cb, interval, options = {}) {
59
59
  }
60
60
 
61
61
  /**
62
- * @vue/shared v3.4.21
62
+ * @vue/shared v3.4.27
63
63
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
64
64
  * @license MIT
65
65
  **/
66
66
 
67
+
68
+
67
69
  !!(process.env.NODE_ENV !== "production") ? Object.freeze({}) : {};
68
70
  !!(process.env.NODE_ENV !== "production") ? Object.freeze([]) : [];
69
71
  const NOOP$1 = () => {
@@ -1410,15 +1412,10 @@ const CloseComponents = {
1410
1412
 
1411
1413
  const withInstall = (main, extra) => {
1412
1414
  main.install = (app) => {
1413
- for (const comp of [main, ...Object.values(extra != null ? extra : {})]) {
1415
+ for (const comp of [main, ...Object.values({})]) {
1414
1416
  app.component(comp.name, comp);
1415
1417
  }
1416
1418
  };
1417
- if (extra) {
1418
- for (const [key, comp] of Object.entries(extra)) {
1419
- main[key] = comp;
1420
- }
1421
- }
1422
1419
  return main;
1423
1420
  };
1424
1421
 
@@ -1724,16 +1721,18 @@ const buildLocaleContext = (locale) => {
1724
1721
  };
1725
1722
  const localeContextKey = Symbol("localeContextKey");
1726
1723
  const useLocale = (localeOverrides) => {
1727
- const locale = localeOverrides || inject(localeContextKey, ref$1());
1724
+ const locale = inject(localeContextKey, ref$1());
1728
1725
  return buildLocaleContext(computed$1(() => locale.value || English));
1729
1726
  };
1730
1727
 
1731
1728
  /**
1732
- * @vue/shared v3.4.19
1729
+ * @vue/shared v3.4.30
1733
1730
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
1734
1731
  * @license MIT
1735
1732
  **/
1736
1733
 
1734
+
1735
+
1737
1736
  !!(process.env.NODE_ENV !== "production") ? Object.freeze({}) : {};
1738
1737
  !!(process.env.NODE_ENV !== "production") ? Object.freeze([]) : [];
1739
1738
  const NOOP = () => {
@@ -1744,7 +1743,7 @@ const isSymbol = (val) => typeof val === "symbol";
1744
1743
  const hasChanged = (value, oldValue) => !Object.is(value, oldValue);
1745
1744
 
1746
1745
  /**
1747
- * @vue/reactivity v3.4.19
1746
+ * @vue/reactivity v3.4.30
1748
1747
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
1749
1748
  * @license MIT
1750
1749
  **/
@@ -1771,7 +1770,7 @@ class ReactiveEffect {
1771
1770
  /**
1772
1771
  * @internal
1773
1772
  */
1774
- this._dirtyLevel = 4;
1773
+ this._dirtyLevel = 5;
1775
1774
  /**
1776
1775
  * @internal
1777
1776
  */
@@ -1791,14 +1790,20 @@ class ReactiveEffect {
1791
1790
  recordEffectScope(this, scope);
1792
1791
  }
1793
1792
  get dirty() {
1794
- if (this._dirtyLevel === 2 || this._dirtyLevel === 3) {
1793
+ if (this._dirtyLevel === 2)
1794
+ return false;
1795
+ if (this._dirtyLevel === 3 || this._dirtyLevel === 4) {
1795
1796
  this._dirtyLevel = 1;
1796
1797
  pauseTracking();
1797
1798
  for (let i = 0; i < this._depsLength; i++) {
1798
1799
  const dep = this.deps[i];
1799
1800
  if (dep.computed) {
1801
+ if (dep.computed.effect._dirtyLevel === 2) {
1802
+ resetTracking();
1803
+ return true;
1804
+ }
1800
1805
  triggerComputed(dep.computed);
1801
- if (this._dirtyLevel >= 4) {
1806
+ if (this._dirtyLevel >= 5) {
1802
1807
  break;
1803
1808
  }
1804
1809
  }
@@ -1808,10 +1813,10 @@ class ReactiveEffect {
1808
1813
  }
1809
1814
  resetTracking();
1810
1815
  }
1811
- return this._dirtyLevel >= 4;
1816
+ return this._dirtyLevel >= 5;
1812
1817
  }
1813
1818
  set dirty(v) {
1814
- this._dirtyLevel = v ? 4 : 0;
1819
+ this._dirtyLevel = v ? 5 : 0;
1815
1820
  }
1816
1821
  run() {
1817
1822
  this._dirtyLevel = 0;
@@ -1834,11 +1839,10 @@ class ReactiveEffect {
1834
1839
  }
1835
1840
  }
1836
1841
  stop() {
1837
- var _a;
1838
1842
  if (this.active) {
1839
1843
  preCleanupEffect(this);
1840
1844
  postCleanupEffect(this);
1841
- (_a = this.onStop) == null ? void 0 : _a.call(this);
1845
+ this.onStop && this.onStop();
1842
1846
  this.active = false;
1843
1847
  }
1844
1848
  }
@@ -1911,8 +1915,17 @@ function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
1911
1915
  pauseScheduling();
1912
1916
  for (const effect2 of dep.keys()) {
1913
1917
  let tracking;
1918
+ if (!dep.computed && effect2.computed) {
1919
+ if (effect2._runnings > 0 && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
1920
+ effect2._dirtyLevel = 2;
1921
+ continue;
1922
+ }
1923
+ }
1914
1924
  if (effect2._dirtyLevel < dirtyLevel && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
1915
1925
  effect2._shouldSchedule || (effect2._shouldSchedule = effect2._dirtyLevel === 0);
1926
+ if (effect2.computed && effect2._dirtyLevel === 2) {
1927
+ effect2._shouldSchedule = true;
1928
+ }
1916
1929
  effect2._dirtyLevel = dirtyLevel;
1917
1930
  }
1918
1931
  if (effect2._shouldSchedule && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
@@ -1920,7 +1933,7 @@ function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
1920
1933
  (_a = effect2.onTrigger) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));
1921
1934
  }
1922
1935
  effect2.trigger();
1923
- if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 2) {
1936
+ if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 3) {
1924
1937
  effect2._shouldSchedule = false;
1925
1938
  if (effect2.scheduler) {
1926
1939
  queueEffectSchedulers.push(effect2.scheduler);
@@ -1950,6 +1963,7 @@ function toRaw(observed) {
1950
1963
  const COMPUTED_SIDE_EFFECT_WARN = `Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free`;
1951
1964
  class ComputedRefImpl {
1952
1965
  constructor(getter, _setter, isReadonly, isSSR) {
1966
+ this.getter = getter;
1953
1967
  this._setter = _setter;
1954
1968
  this.dep = void 0;
1955
1969
  this.__v_isRef = true;
@@ -1958,7 +1972,7 @@ class ComputedRefImpl {
1958
1972
  () => getter(this._value),
1959
1973
  () => triggerRefValue(
1960
1974
  this,
1961
- this.effect._dirtyLevel === 2 ? 2 : 3
1975
+ this.effect._dirtyLevel === 3 ? 3 : 4
1962
1976
  )
1963
1977
  );
1964
1978
  this.effect.computed = this;
@@ -1967,13 +1981,20 @@ class ComputedRefImpl {
1967
1981
  }
1968
1982
  get value() {
1969
1983
  const self = toRaw(this);
1984
+ const lastDirtyLevel = self.effect._dirtyLevel;
1970
1985
  if ((!self._cacheable || self.effect.dirty) && hasChanged(self._value, self._value = self.effect.run())) {
1971
- triggerRefValue(self, 4);
1986
+ if (lastDirtyLevel !== 3) {
1987
+ triggerRefValue(self, 5);
1988
+ }
1972
1989
  }
1973
1990
  trackRefValue(self);
1974
1991
  if (self.effect._dirtyLevel >= 2) {
1975
- !!(process.env.NODE_ENV !== "production") && warn(COMPUTED_SIDE_EFFECT_WARN);
1976
- triggerRefValue(self, 2);
1992
+ if (!!(process.env.NODE_ENV !== "production") && this._warnRecursive) {
1993
+ warn(COMPUTED_SIDE_EFFECT_WARN, `
1994
+
1995
+ getter: `, this.getter);
1996
+ }
1997
+ triggerRefValue(self, 3);
1977
1998
  }
1978
1999
  return self._value;
1979
2000
  }
@@ -2028,7 +2049,7 @@ function trackRefValue(ref2) {
2028
2049
  );
2029
2050
  }
2030
2051
  }
2031
- function triggerRefValue(ref2, dirtyLevel = 4, newVal) {
2052
+ function triggerRefValue(ref2, dirtyLevel = 5, newVal, oldVal) {
2032
2053
  ref2 = toRaw(ref2);
2033
2054
  const dep = ref2.dep;
2034
2055
  if (dep) {
@@ -2039,7 +2060,8 @@ function triggerRefValue(ref2, dirtyLevel = 4, newVal) {
2039
2060
  target: ref2,
2040
2061
  type: "set",
2041
2062
  key: "value",
2042
- newValue: newVal
2063
+ newValue: newVal,
2064
+ oldValue: oldVal
2043
2065
  } : void 0
2044
2066
  );
2045
2067
  }
@@ -2062,14 +2084,14 @@ const _bem = (namespace, block, blockSuffix, element, modifier) => {
2062
2084
  };
2063
2085
  const namespaceContextKey = Symbol("namespaceContextKey");
2064
2086
  const useGetDerivedNamespace = (namespaceOverrides) => {
2065
- const derivedNamespace = namespaceOverrides || (getCurrentInstance() ? inject(namespaceContextKey, ref$1(defaultNamespace)) : ref$1(defaultNamespace));
2087
+ const derivedNamespace = (getCurrentInstance() ? inject(namespaceContextKey, ref$1(defaultNamespace)) : ref$1(defaultNamespace));
2066
2088
  const namespace = computed$1(() => {
2067
2089
  return unref$1(derivedNamespace) || defaultNamespace;
2068
2090
  });
2069
2091
  return namespace;
2070
2092
  };
2071
2093
  const useNamespace = (block, namespaceOverrides) => {
2072
- const namespace = useGetDerivedNamespace(namespaceOverrides);
2094
+ const namespace = useGetDerivedNamespace();
2073
2095
  const b = (blockSuffix = "") => _bem(namespace.value, block, blockSuffix, "", "");
2074
2096
  const e = (element) => element ? _bem(namespace.value, block, "", element, "") : "";
2075
2097
  const m = (modifier) => modifier ? _bem(namespace.value, block, "", "", modifier) : "";
@@ -2229,7 +2251,7 @@ const zIndex = ref$1(0);
2229
2251
  const defaultInitialZIndex = 2e3;
2230
2252
  const zIndexContextKey = Symbol("zIndexContextKey");
2231
2253
  const useZIndex = (zIndexOverrides) => {
2232
- const zIndexInjection = zIndexOverrides || (getCurrentInstance() ? inject(zIndexContextKey, void 0) : void 0);
2254
+ const zIndexInjection = (getCurrentInstance() ? inject(zIndexContextKey, void 0) : void 0);
2233
2255
  const initialZIndex = computed$1(() => {
2234
2256
  const zIndexFromInjection = unref$1(zIndexInjection);
2235
2257
  return isNumber(zIndexFromInjection) ? zIndexFromInjection : defaultInitialZIndex;
@@ -2251,13 +2273,11 @@ const configProviderContextKey = Symbol();
2251
2273
  const globalConfig = ref$1();
2252
2274
  function useGlobalConfig(key, defaultValue = void 0) {
2253
2275
  const config = getCurrentInstance() ? inject(configProviderContextKey, globalConfig) : globalConfig;
2254
- if (key) {
2276
+ {
2255
2277
  return computed$1(() => {
2256
2278
  var _a, _b;
2257
2279
  return (_b = (_a = config.value) == null ? void 0 : _a[key]) != null ? _b : defaultValue;
2258
2280
  });
2259
- } else {
2260
- return config;
2261
2281
  }
2262
2282
  }
2263
2283
 
@@ -2697,10 +2717,10 @@ const _sfc_main$3 = defineComponent({
2697
2717
  };
2698
2718
  }
2699
2719
  });
2700
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
2720
+ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
2701
2721
  return renderSlot(_ctx.$slots, "default", { handleKeydown: _ctx.onKeydown });
2702
2722
  }
2703
- var ElFocusTrap = /* @__PURE__ */ _export_sfc$1(_sfc_main$3, [["render", _sfc_render], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/focus-trap/src/focus-trap.vue"]]);
2723
+ var ElFocusTrap = /* @__PURE__ */ _export_sfc$1(_sfc_main$3, [["render", _sfc_render$1], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/focus-trap/src/focus-trap.vue"]]);
2704
2724
 
2705
2725
  const overlayProps = buildProps({
2706
2726
  mask: {
@@ -3271,29 +3291,123 @@ var img$1 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAV4AAADICAYAAACgY4nwA
3271
3291
 
3272
3292
  var img = "data:image/png;base64,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";
3273
3293
 
3274
- const _hoisted_1 = {
3275
- key: 0,
3276
- class: "das-dialog__notice-bg"
3294
+ const sendMessageToMainApp = (type, data) => {
3295
+ const { __IN_DAS_MICRO_APP, __DAS_MAIN_APP_HREF } = window;
3296
+ if (!__IN_DAS_MICRO_APP || !__DAS_MAIN_APP_HREF) return;
3297
+ const { origin } = new URL(__DAS_MAIN_APP_HREF);
3298
+ window.top?.postMessage({ type, data }, origin);
3277
3299
  };
3278
- const _hoisted_2 = ["src"];
3279
- const _hoisted_3 = {
3280
- key: 0,
3281
- class: "das-dialog-box"
3300
+ const addEventFromMainApp = (type) => {
3301
+ let handler;
3302
+ const listen = (cb) => {
3303
+ handler = (e) => {
3304
+ const { type: messageType, data } = e.data || {};
3305
+ if (messageType !== type) return;
3306
+ cb(data);
3307
+ };
3308
+ window.addEventListener("message", handler, false);
3309
+ };
3310
+ const remove = () => {
3311
+ if (!handler) return;
3312
+ window.removeEventListener("message", handler, false);
3313
+ };
3314
+ return { listen, remove };
3282
3315
  };
3283
- const _hoisted_4 = {
3284
- key: 0,
3285
- class: "das-dialog__feed-img"
3316
+ const microFrontend = {
3317
+ sendMessageToMainApp,
3318
+ setMainAppOverlay: (visible, style) => {
3319
+ sendMessageToMainApp("bodyOverlay", { visible, style });
3320
+ },
3321
+ addEventFromMainApp,
3322
+ getMicroAppContainerRect: () => {
3323
+ return window.__DAS_MICRO_APP_CONTAINER_RECT || { top: 0, left: 0 };
3324
+ }
3286
3325
  };
3287
- const _hoisted_5 = ["src"];
3326
+
3327
+ const instances = {};
3328
+ const useMicroAppDialog = (options) => {
3329
+ const instanceId = (/* @__PURE__ */ new Date()).getTime() + Math.random().toString(36).slice(-8);
3330
+ const { dialogWidth, dialogHeight } = options || {};
3331
+ const microAppTranslateX = ref$1(0);
3332
+ const microAppTranslateY = ref$1(0);
3333
+ const microAppMaxWidth = ref$1(null);
3334
+ const microAppMaxHeight = ref$1(null);
3335
+ const microAppStyle = computed$1(() => {
3336
+ const style = {
3337
+ right: `${microAppTranslateX.value}px`,
3338
+ top: `${microAppTranslateY.value}px`
3339
+ };
3340
+ if (microAppMaxWidth.value) style["maxWidth"] = `${microAppMaxWidth.value}px`;
3341
+ if (microAppMaxHeight.value) style["maxHeight"] = `${microAppMaxHeight.value}px`;
3342
+ return style;
3343
+ });
3344
+ const setStyle = async (e) => {
3345
+ let translateX = e.x / 2;
3346
+ let translateY = e.y / 2;
3347
+ microAppMaxWidth.value = null;
3348
+ microAppMaxHeight.value = null;
3349
+ let currentDialogWidth = dialogWidth.value;
3350
+ let currentDialogHeight = dialogHeight.value;
3351
+ if ((document.documentElement.scrollWidth - currentDialogWidth) / 2 < e.x / 2) {
3352
+ currentDialogWidth = document.documentElement.scrollWidth - e.x - 20;
3353
+ microAppMaxWidth.value = currentDialogWidth;
3354
+ }
3355
+ if ((document.documentElement.scrollHeight - currentDialogHeight) / 2 < e.y / 2) {
3356
+ currentDialogHeight = document.documentElement.scrollHeight - e.y - 20;
3357
+ microAppMaxHeight.value = currentDialogHeight;
3358
+ }
3359
+ const innerLeft = (e.width - currentDialogWidth) / 2;
3360
+ if (translateX >= innerLeft) {
3361
+ translateX = innerLeft - 10;
3362
+ if (innerLeft < 0) translateX = -10;
3363
+ }
3364
+ const innerTop = (e.height - currentDialogHeight) / 2;
3365
+ if (translateY >= innerTop) {
3366
+ translateY = innerTop - 10;
3367
+ if (innerTop < 0) translateY = -10;
3368
+ }
3369
+ microAppTranslateX.value = translateX;
3370
+ microAppTranslateY.value = -translateY;
3371
+ };
3372
+ const resetStyle = () => {
3373
+ microAppTranslateX.value = 0;
3374
+ microAppTranslateY.value = 0;
3375
+ microAppMaxWidth.value = null;
3376
+ microAppMaxHeight.value = null;
3377
+ };
3378
+ const resizeEvent = microFrontend.addEventFromMainApp("resize");
3379
+ const onOpen = async () => {
3380
+ const microAppContainerRect = microFrontend.getMicroAppContainerRect();
3381
+ setStyle(microAppContainerRect);
3382
+ resizeEvent.listen((e) => {
3383
+ window.__DAS_MICRO_APP_CONTAINER_RECT = e;
3384
+ setStyle(e);
3385
+ });
3386
+ instances[instanceId] = true;
3387
+ microFrontend.setMainAppOverlay(true);
3388
+ };
3389
+ const onClose = (destroy) => {
3390
+ if (instances[instanceId]) delete instances[instanceId];
3391
+ if (Object.keys(instances).length === 0) {
3392
+ microFrontend.setMainAppOverlay(destroy ?? false);
3393
+ }
3394
+ resizeEvent.remove();
3395
+ setTimeout(() => {
3396
+ resetStyle();
3397
+ }, 300);
3398
+ };
3399
+ return { instanceId, microAppStyle, microAppMaxWidth, microAppMaxHeight, onOpen, onClose };
3400
+ };
3401
+
3288
3402
  const __default__ = {
3289
3403
  name: "DasDialog"
3290
3404
  };
3291
3405
  var _sfc_main = /* @__PURE__ */ defineComponent({
3292
3406
  ...__default__,
3293
- props: {
3407
+ props: /* @__PURE__ */ mergeModels({
3408
+ modelValue: { type: Boolean, required: true },
3294
3409
  type: { type: String, required: false, default: "basic" },
3295
3410
  feedType: { type: String, required: false, default: "primary" },
3296
- customClass: { type: String, required: false, default: "" },
3297
3411
  title: { type: String, required: false },
3298
3412
  headerStyle: { type: null, required: false },
3299
3413
  bodyStyle: { type: null, required: false },
@@ -3308,11 +3422,18 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
3308
3422
  closeOnClickModal: { type: Boolean, required: false, default: false },
3309
3423
  closeOnPressEscape: { type: Boolean, required: false, default: true },
3310
3424
  loading: { type: Boolean, required: false, default: false }
3311
- },
3312
- emits: ["cancel", "confirm"],
3313
- setup(__props, { emit: __emit }) {
3425
+ }, {
3426
+ "modelValue": {},
3427
+ "modelModifiers": {}
3428
+ }),
3429
+ emits: /* @__PURE__ */ mergeModels(["cancel", "confirm", "open", "close"], ["update:modelValue"]),
3430
+ setup(__props, { expose: __expose, emit: __emit }) {
3431
+ __expose();
3432
+ const modelValue = useModel(__props, "modelValue");
3314
3433
  let props = __props;
3315
3434
  const $emit = __emit;
3435
+ const customClass = computed$1(() => props.customClass);
3436
+ const type = computed$1(() => props.type);
3316
3437
  const sizeMap = {
3317
3438
  mini: {
3318
3439
  width: 460,
@@ -3329,6 +3450,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
3329
3450
  large: {
3330
3451
  width: 980,
3331
3452
  height: 750
3453
+ },
3454
+ max: {
3455
+ width: 1170,
3456
+ height: 689
3332
3457
  }
3333
3458
  };
3334
3459
  const feedbackDefHeight = ref$1(340);
@@ -3336,30 +3461,37 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
3336
3461
  const noticeDefWidth = ref$1(368);
3337
3462
  const noticeDefHeight = ref$1(368);
3338
3463
  const dialogWidth = computed$1(() => {
3339
- if (props.width) {
3340
- return props.width;
3341
- } else if (props.type == "feedback") {
3342
- return feedbackDefWidth.value;
3343
- } else if (props.type == "notice") {
3344
- return noticeDefWidth.value;
3345
- } else {
3346
- return sizeMap[props.size].width;
3464
+ let width = sizeMap[props.size].width;
3465
+ if (props.type == "feedback") width = feedbackDefWidth.value;
3466
+ if (props.type == "notice") width = noticeDefWidth.value;
3467
+ if (props.width) width = props.width;
3468
+ if (typeof width === "string") {
3469
+ if (width?.endsWith?.("px")) width = Number(width.replace("px", ""));
3470
+ if (width?.endsWith?.("vh")) width = Number(width.replace("vh", "")) * document.documentElement.clientHeight;
3471
+ if (width?.endsWith?.("vw")) width = Number(width.replace("vw", "")) * document.documentElement.clientWidth;
3472
+ if (width?.endsWith?.("%")) width = Number(width.replace("%", "")) * document.documentElement.clientWidth;
3473
+ width = Number(width);
3347
3474
  }
3475
+ return width;
3348
3476
  });
3349
3477
  const dialogHeight = computed$1(() => {
3350
- if (props.height) {
3351
- return props.height;
3352
- } else if (props.type == "feedback") {
3353
- return feedbackDefHeight.value;
3354
- } else if (props.type == "notice") {
3355
- return noticeDefHeight.value;
3356
- } else {
3357
- return sizeMap[props.size].height;
3478
+ let height = sizeMap[props.size].height;
3479
+ if (props.type == "feedback") height = feedbackDefHeight.value;
3480
+ if (props.type == "notice") height = noticeDefHeight.value;
3481
+ if (props.height) height = props.height;
3482
+ if (typeof height === "string") {
3483
+ if (height?.endsWith?.("px")) height = Number(height.replace("px", ""));
3484
+ if (height?.endsWith?.("vh")) height = Number(height.replace("vh", "")) * document.documentElement.clientHeight;
3485
+ if (height?.endsWith?.("vw")) height = Number(height.replace("vw", "")) * document.documentElement.clientWidth;
3486
+ if (height?.endsWith?.("%")) height = Number(height.replace("%", "")) * document.documentElement.clientHeight;
3487
+ height = Number(height);
3358
3488
  }
3489
+ return height;
3359
3490
  });
3360
3491
  const dialogStyle = computed$1(() => {
3361
3492
  return {
3362
- height: typeof dialogHeight.value == "number" ? dialogHeight.value + "px" : dialogHeight.value
3493
+ height: typeof dialogHeight.value == "number" ? dialogHeight.value + "px" : dialogHeight.value,
3494
+ flexShrink: 0
3363
3495
  };
3364
3496
  });
3365
3497
  const feedDefMap = ref$1({
@@ -3397,8 +3529,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
3397
3529
  const currNoticeBg = computed$1(() => {
3398
3530
  return props.noticeBg ? props.noticeBg : img;
3399
3531
  });
3400
- computed$1(() => {
3401
- return getVarValue(`--das-ui-color-${props.feedType == "delete" ? "primary" : props.feedType}`);
3532
+ const dotColor = computed$1(() => {
3533
+ return getVarValue(`--das-ui-color-${props.feedType == "delete" ? "primary" : props.feedType}`).value;
3402
3534
  });
3403
3535
  const cancel = () => {
3404
3536
  $emit("cancel");
@@ -3406,151 +3538,68 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
3406
3538
  const confirm = () => {
3407
3539
  $emit("confirm");
3408
3540
  };
3409
- return (_ctx, _cache) => {
3410
- return openBlock(), createElementBlock(
3411
- "div",
3412
- {
3413
- class: normalizeClass(["das-ui-dialog", _ctx.type])
3414
- },
3415
- [
3416
- createVNode(unref$1(ElDialog), mergeProps(_ctx.$attrs, {
3417
- width: dialogWidth.value,
3418
- "align-center": _ctx.alignCenter,
3419
- "close-on-click-modal": unref$1(props).closeOnClickModal,
3420
- "close-on-press-escape": unref$1(props).closeOnPressEscape,
3421
- style: dialogStyle.value,
3422
- class: ["das-ui-dialog", [_ctx.customClass, _ctx.type]]
3423
- }), {
3424
- header: withCtx(() => [
3425
- createElementVNode(
3426
- "div",
3427
- {
3428
- class: normalizeClass(["das-dialog__header", _ctx.feedType]),
3429
- style: normalizeStyle(_ctx.headerStyle)
3430
- },
3431
- [
3432
- _ctx.type === "notice" ? (openBlock(), createElementBlock("div", _hoisted_1, [
3433
- renderSlot(_ctx.$slots, "noticeBg", {}, () => [
3434
- createElementVNode("img", {
3435
- src: currNoticeBg.value,
3436
- alt: ""
3437
- }, null, 8, _hoisted_2)
3438
- ], true)
3439
- ])) : createCommentVNode("v-if", true),
3440
- renderSlot(_ctx.$slots, "header", {}, () => [
3441
- createElementVNode(
3442
- "span",
3443
- null,
3444
- toDisplayString(currTitle.value),
3445
- 1
3446
- /* TEXT */
3447
- )
3448
- ], true)
3449
- ],
3450
- 6
3451
- /* CLASS, STYLE */
3452
- )
3453
- ]),
3454
- default: withCtx(() => [
3455
- createVNode(unref$1(DasSpin), {
3456
- spinning: unref$1(props).loading
3457
- }, {
3458
- default: withCtx(() => [
3459
- _ctx.$attrs.modelValue || _ctx.$attrs["model-value"] ? (openBlock(), createElementBlock("div", _hoisted_3, [
3460
- withDirectives((openBlock(), createElementBlock(
3461
- "div",
3462
- {
3463
- class: "das-dialog__body",
3464
- style: normalizeStyle(_ctx.bodyStyle)
3465
- },
3466
- [
3467
- _ctx.type == "feedback" && _ctx.isFeedbackImg ? (openBlock(), createElementBlock("div", _hoisted_4, [
3468
- renderSlot(_ctx.$slots, "feedbackImg", {}, () => [
3469
- createElementVNode("img", {
3470
- src: currFeedbackIcon.value,
3471
- alt: ""
3472
- }, null, 8, _hoisted_5)
3473
- ], true)
3474
- ])) : createCommentVNode("v-if", true),
3475
- renderSlot(_ctx.$slots, "default", {}, void 0, true)
3476
- ],
3477
- 4
3478
- /* STYLE */
3479
- )), [
3480
- [unref$1(vOverlay)]
3481
- ]),
3482
- _ctx.$slots.footer ? (openBlock(), createElementBlock(
3483
- "div",
3484
- {
3485
- key: 0,
3486
- class: "das-dialog__footer",
3487
- style: normalizeStyle(_ctx.footerStyle)
3488
- },
3489
- [
3490
- renderSlot(_ctx.$slots, "footer", {}, void 0, true)
3491
- ],
3492
- 4
3493
- /* STYLE */
3494
- )) : _ctx.defaultFooter ? (openBlock(), createElementBlock(
3495
- "div",
3496
- {
3497
- key: 1,
3498
- class: "das-dialog__footer",
3499
- style: normalizeStyle(_ctx.footerStyle)
3500
- },
3501
- [
3502
- renderSlot(_ctx.$slots, "footer", {}, () => [
3503
- createElementVNode("div", null, [
3504
- createVNode(unref$1(DasButton), {
3505
- size: "middle",
3506
- onClick: cancel
3507
- }, {
3508
- default: withCtx(() => [
3509
- createTextVNode(
3510
- toDisplayString(unref$1(i18n$1)("dialog-close-text").value),
3511
- 1
3512
- /* TEXT */
3513
- )
3514
- ]),
3515
- _: 1
3516
- /* STABLE */
3517
- }),
3518
- createVNode(unref$1(DasButton), {
3519
- btnType: "primary",
3520
- size: "middle",
3521
- style: { "margin-left": "10px" },
3522
- onClick: confirm
3523
- }, {
3524
- default: withCtx(() => [
3525
- createTextVNode(
3526
- toDisplayString(unref$1(t)("dialog-confirm-text")),
3527
- 1
3528
- /* TEXT */
3529
- )
3530
- ]),
3531
- _: 1
3532
- /* STABLE */
3533
- })
3534
- ])
3535
- ], true)
3536
- ],
3537
- 4
3538
- /* STYLE */
3539
- )) : createCommentVNode("v-if", true)
3540
- ])) : createCommentVNode("v-if", true)
3541
- ]),
3542
- _: 3
3543
- /* FORWARDED */
3544
- }, 8, ["spinning"])
3545
- ]),
3546
- _: 3
3547
- /* FORWARDED */
3548
- }, 16, ["width", "align-center", "close-on-click-modal", "close-on-press-escape", "style", "class"])
3549
- ],
3550
- 2
3551
- /* CLASS */
3552
- );
3541
+ const { microAppStyle, onOpen, onClose } = useMicroAppDialog({
3542
+ dialogWidth,
3543
+ dialogHeight
3544
+ });
3545
+ watch(
3546
+ () => modelValue.value,
3547
+ (isOpen) => {
3548
+ if (isOpen) onOpen();
3549
+ if (!isOpen) onClose();
3550
+ }
3551
+ );
3552
+ const closeFromDeactivated = ref$1(false);
3553
+ const handleOpen = () => {
3554
+ closeFromDeactivated.value = false;
3555
+ onOpen();
3556
+ setTimeout(() => {
3557
+ $emit("open");
3558
+ }, 0);
3559
+ };
3560
+ const handleClose = () => {
3561
+ onClose();
3562
+ setTimeout(() => {
3563
+ if (closeFromDeactivated.value) return;
3564
+ $emit("close");
3565
+ }, 0);
3553
3566
  };
3567
+ onBeforeMount(() => {
3568
+ closeFromDeactivated.value = false;
3569
+ if (modelValue.value) onOpen();
3570
+ });
3571
+ onBeforeUnmount(() => {
3572
+ onClose("destroy");
3573
+ setTimeout(() => {
3574
+ onClose("destroy");
3575
+ }, 0);
3576
+ });
3577
+ onActivated(() => {
3578
+ closeFromDeactivated.value = false;
3579
+ });
3580
+ onDeactivated(() => {
3581
+ closeFromDeactivated.value = true;
3582
+ modelValue.value = false;
3583
+ });
3584
+ const __returned__ = { modelValue, get props() {
3585
+ return props;
3586
+ }, set props(v) {
3587
+ props = v;
3588
+ }, $emit, customClass, type, sizeMap, feedbackDefHeight, feedbackDefWidth, noticeDefWidth, noticeDefHeight, dialogWidth, dialogHeight, dialogStyle, feedDefMap, defaultTitle, currTitle, currFeedbackIcon, currNoticeBg, dotColor, cancel, confirm, microAppStyle, onOpen, onClose, closeFromDeactivated, handleOpen, handleClose, get ElDialog() {
3589
+ return ElDialog;
3590
+ }, get vOverlay() {
3591
+ return vOverlay;
3592
+ }, get DasSpin() {
3593
+ return DasSpin;
3594
+ }, get DasButton() {
3595
+ return DasButton;
3596
+ }, get i18n() {
3597
+ return i18n$1;
3598
+ }, get t() {
3599
+ return t;
3600
+ } };
3601
+ Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
3602
+ return __returned__;
3554
3603
  }
3555
3604
  });
3556
3605
 
@@ -3562,7 +3611,172 @@ var _export_sfc = (sfc, props) => {
3562
3611
  return target;
3563
3612
  };
3564
3613
 
3565
- var dialog = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-aaca839f"], ["__file", "E:\\company-code\\v6r3\\framework-3\\packages\\das-ui\\packages\\components\\dialog\\src\\Index.vue"]]);
3614
+ const _hoisted_1 = {
3615
+ key: 0,
3616
+ class: "das-dialog__notice-bg"
3617
+ };
3618
+ const _hoisted_2 = ["src"];
3619
+ const _hoisted_3 = {
3620
+ key: 0,
3621
+ class: "das-dialog-box"
3622
+ };
3623
+ const _hoisted_4 = {
3624
+ key: 0,
3625
+ class: "das-dialog__feed-img"
3626
+ };
3627
+ const _hoisted_5 = ["src"];
3628
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
3629
+ return openBlock(), createElementBlock(
3630
+ "div",
3631
+ {
3632
+ class: normalizeClass(["das-ui-dialog", $setup.type])
3633
+ },
3634
+ [
3635
+ createVNode($setup["ElDialog"], mergeProps(_ctx.$attrs, {
3636
+ modelValue: $setup.modelValue,
3637
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $setup.modelValue = $event),
3638
+ width: $setup.dialogWidth,
3639
+ "align-center": $props.alignCenter,
3640
+ "close-on-click-modal": $setup.props.closeOnClickModal,
3641
+ "close-on-press-escape": $setup.props.closeOnPressEscape,
3642
+ style: [$setup.dialogStyle, $setup.microAppStyle],
3643
+ class: ["das-ui-dialog", [$setup.customClass, $setup.type]],
3644
+ onOpen: $setup.handleOpen,
3645
+ onClose: $setup.handleClose
3646
+ }), {
3647
+ header: withCtx(() => [
3648
+ createElementVNode(
3649
+ "div",
3650
+ {
3651
+ class: normalizeClass(["das-dialog__header", $props.feedType]),
3652
+ style: normalizeStyle($props.headerStyle)
3653
+ },
3654
+ [
3655
+ $setup.type === "notice" ? (openBlock(), createElementBlock("div", _hoisted_1, [
3656
+ renderSlot(_ctx.$slots, "noticeBg", {}, () => [
3657
+ createElementVNode("img", {
3658
+ src: $setup.currNoticeBg,
3659
+ alt: ""
3660
+ }, null, 8, _hoisted_2)
3661
+ ], true)
3662
+ ])) : createCommentVNode("v-if", true),
3663
+ renderSlot(_ctx.$slots, "header", {}, () => [
3664
+ createElementVNode(
3665
+ "span",
3666
+ null,
3667
+ toDisplayString($setup.currTitle),
3668
+ 1
3669
+ /* TEXT */
3670
+ )
3671
+ ], true)
3672
+ ],
3673
+ 6
3674
+ /* CLASS, STYLE */
3675
+ )
3676
+ ]),
3677
+ default: withCtx(() => [
3678
+ createVNode($setup["DasSpin"], {
3679
+ spinning: $setup.props.loading
3680
+ }, {
3681
+ default: withCtx(() => [
3682
+ $setup.modelValue ? (openBlock(), createElementBlock("div", _hoisted_3, [
3683
+ createCommentVNode(" <DasScrollbar> "),
3684
+ withDirectives((openBlock(), createElementBlock(
3685
+ "div",
3686
+ {
3687
+ class: "das-dialog__body",
3688
+ style: normalizeStyle($props.bodyStyle)
3689
+ },
3690
+ [
3691
+ $setup.type == "feedback" && $props.isFeedbackImg ? (openBlock(), createElementBlock("div", _hoisted_4, [
3692
+ renderSlot(_ctx.$slots, "feedbackImg", {}, () => [
3693
+ createElementVNode("img", {
3694
+ src: $setup.currFeedbackIcon,
3695
+ alt: ""
3696
+ }, null, 8, _hoisted_5)
3697
+ ], true)
3698
+ ])) : createCommentVNode("v-if", true),
3699
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
3700
+ ],
3701
+ 4
3702
+ /* STYLE */
3703
+ )), [
3704
+ [$setup["vOverlay"], { usePrevOverlay: true }]
3705
+ ]),
3706
+ createCommentVNode(" </DasScrollbar> "),
3707
+ _ctx.$slots.footer ? (openBlock(), createElementBlock(
3708
+ "div",
3709
+ {
3710
+ key: 0,
3711
+ class: "das-dialog__footer",
3712
+ style: normalizeStyle($props.footerStyle)
3713
+ },
3714
+ [
3715
+ renderSlot(_ctx.$slots, "footer", {}, void 0, true)
3716
+ ],
3717
+ 4
3718
+ /* STYLE */
3719
+ )) : $props.defaultFooter ? (openBlock(), createElementBlock(
3720
+ "div",
3721
+ {
3722
+ key: 1,
3723
+ class: "das-dialog__footer",
3724
+ style: normalizeStyle($props.footerStyle)
3725
+ },
3726
+ [
3727
+ renderSlot(_ctx.$slots, "footer", {}, () => [
3728
+ createElementVNode("div", null, [
3729
+ createVNode($setup["DasButton"], {
3730
+ size: "middle",
3731
+ onClick: $setup.cancel
3732
+ }, {
3733
+ default: withCtx(() => [
3734
+ createTextVNode(
3735
+ toDisplayString($setup.i18n("dialog-close-text").value),
3736
+ 1
3737
+ /* TEXT */
3738
+ )
3739
+ ]),
3740
+ _: 1
3741
+ /* STABLE */
3742
+ }),
3743
+ createVNode($setup["DasButton"], {
3744
+ btnType: "primary",
3745
+ size: "middle",
3746
+ style: { "margin-left": "10px" },
3747
+ onClick: $setup.confirm
3748
+ }, {
3749
+ default: withCtx(() => [
3750
+ createTextVNode(
3751
+ toDisplayString($setup.t("dialog-confirm-text")),
3752
+ 1
3753
+ /* TEXT */
3754
+ )
3755
+ ]),
3756
+ _: 1
3757
+ /* STABLE */
3758
+ })
3759
+ ])
3760
+ ], true)
3761
+ ],
3762
+ 4
3763
+ /* STYLE */
3764
+ )) : createCommentVNode("v-if", true)
3765
+ ])) : createCommentVNode("v-if", true)
3766
+ ]),
3767
+ _: 3
3768
+ /* FORWARDED */
3769
+ }, 8, ["spinning"])
3770
+ ]),
3771
+ _: 3
3772
+ /* FORWARDED */
3773
+ }, 16, ["modelValue", "width", "align-center", "close-on-click-modal", "close-on-press-escape", "style", "class"])
3774
+ ],
3775
+ 2
3776
+ /* CLASS */
3777
+ );
3778
+ }
3779
+ var DasDialogComponent = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__scopeId", "data-v-aaca839f"], ["__file", "/Users/xiecp/das/das-fe/framework/packages/das-ui/packages/components/dialog/src/Index.vue"]]);
3566
3780
 
3567
3781
  var theme = {
3568
3782
  "--das-ui-dialog-title": getVar("--das-ui-color-normal"),
@@ -3606,7 +3820,7 @@ var i18n = {
3606
3820
 
3607
3821
  setThemeRule(theme);
3608
3822
  setI18nRule(i18n);
3609
- const DasDialog = withInstall$1(dialog);
3823
+ const DasDialog = withInstall$1(DasDialogComponent);
3610
3824
  var index = { name: "dialog \u5F39\u7A97" };
3611
3825
 
3612
3826
  export { DasDialog, index as default };