hzzt-plus 0.0.1-dev-01 → 0.0.1-dev-02

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 (162) hide show
  1. package/dist/index.full.js +291 -55
  2. package/dist/index.full.min.js +11 -11
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +11 -11
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +287 -57
  7. package/dist/locale/en.js +7 -2
  8. package/dist/locale/en.min.js +1 -1
  9. package/dist/locale/en.min.js.map +1 -1
  10. package/dist/locale/en.min.mjs +1 -1
  11. package/dist/locale/en.min.mjs.map +1 -1
  12. package/dist/locale/en.mjs +7 -2
  13. package/dist/locale/zh-cn.js +7 -2
  14. package/dist/locale/zh-cn.min.js +1 -1
  15. package/dist/locale/zh-cn.min.js.map +1 -1
  16. package/dist/locale/zh-cn.min.mjs +1 -1
  17. package/dist/locale/zh-cn.min.mjs.map +1 -1
  18. package/dist/locale/zh-cn.mjs +7 -2
  19. package/es/component.mjs +5 -1
  20. package/es/component.mjs.map +1 -1
  21. package/es/components/collapse/index.d.ts +55 -0
  22. package/es/components/collapse/src/index.vue.d.ts +55 -0
  23. package/es/components/collapse/style/css.d.ts +2 -0
  24. package/es/components/collapse/style/index.d.ts +2 -0
  25. package/es/components/config-provider/index.d.ts +41 -0
  26. package/es/components/config-provider/src/config-provider-props.d.ts +19 -0
  27. package/es/components/config-provider/src/config-provider.d.ts +38 -0
  28. package/es/components/config-provider/src/constants.d.ts +4 -0
  29. package/es/components/config-provider/src/hooks/use-global-config.d.ts +6 -0
  30. package/es/components/config-provider/style/css.d.ts +2 -0
  31. package/es/components/config-provider/style/index.d.ts +2 -0
  32. package/es/components/dropdown/index.d.ts +1 -0
  33. package/es/components/dropdown/src/index.vue.d.ts +1 -0
  34. package/es/components/index.d.ts +2 -0
  35. package/es/defaults.d.ts +1 -1
  36. package/es/hooks/index.d.ts +2 -0
  37. package/es/hooks/use-locale/index.d.ts +15 -0
  38. package/es/hooks/use-size/index.d.ts +21 -0
  39. package/es/index.d.ts +1 -1
  40. package/es/index.mjs +5 -0
  41. package/es/index.mjs.map +1 -1
  42. package/es/locale/index.d.ts +1 -1
  43. package/es/locale/lang/en.d.ts +6 -1
  44. package/es/locale/lang/zh-cn.d.ts +6 -1
  45. package/es/make-installer.d.ts +1 -1
  46. package/es/make-installer.mjs +5 -1
  47. package/es/make-installer.mjs.map +1 -1
  48. package/es/packages/components/collapse/index.mjs +8 -0
  49. package/es/packages/components/collapse/index.mjs.map +1 -0
  50. package/es/packages/components/collapse/src/index.mjs +69 -0
  51. package/es/packages/components/collapse/src/index.mjs.map +1 -0
  52. package/es/packages/components/collapse/style/css.mjs +3 -0
  53. package/es/packages/components/collapse/style/css.mjs.map +1 -0
  54. package/es/packages/components/collapse/style/index.mjs +3 -0
  55. package/es/packages/components/collapse/style/index.mjs.map +1 -0
  56. package/es/packages/components/config-provider/index.mjs +11 -0
  57. package/es/packages/components/config-provider/index.mjs.map +1 -0
  58. package/es/packages/components/config-provider/src/config-provider-props.mjs +22 -0
  59. package/es/packages/components/config-provider/src/config-provider-props.mjs.map +1 -0
  60. package/es/packages/components/config-provider/src/config-provider.mjs +15 -0
  61. package/es/packages/components/config-provider/src/config-provider.mjs.map +1 -0
  62. package/es/packages/components/config-provider/src/constants.mjs +4 -0
  63. package/es/packages/components/config-provider/src/constants.mjs.map +1 -0
  64. package/es/packages/components/config-provider/src/hooks/use-global-config.mjs +57 -0
  65. package/es/packages/components/config-provider/src/hooks/use-global-config.mjs.map +1 -0
  66. package/es/packages/components/config-provider/style/css.mjs +3 -0
  67. package/es/packages/components/config-provider/style/css.mjs.map +1 -0
  68. package/es/packages/components/config-provider/style/index.mjs +3 -0
  69. package/es/packages/components/config-provider/style/index.mjs.map +1 -0
  70. package/es/packages/components/dropdown/src/index.mjs +4 -2
  71. package/es/packages/components/dropdown/src/index.mjs.map +1 -1
  72. package/es/packages/components/index.mjs +5 -0
  73. package/es/packages/components/index.mjs.map +1 -1
  74. package/es/packages/hooks/index.mjs +3 -0
  75. package/es/packages/hooks/index.mjs.map +1 -0
  76. package/es/packages/hooks/use-locale/index.mjs +26 -0
  77. package/es/packages/hooks/use-locale/index.mjs.map +1 -0
  78. package/es/packages/hooks/use-size/index.mjs +24 -0
  79. package/es/packages/hooks/use-size/index.mjs.map +1 -0
  80. package/es/packages/locale/lang/en.mjs +8 -3
  81. package/es/packages/locale/lang/en.mjs.map +1 -1
  82. package/es/packages/locale/lang/zh-cn.mjs +6 -1
  83. package/es/packages/locale/lang/zh-cn.mjs.map +1 -1
  84. package/es/utils/vue/vnode.d.ts +6 -6
  85. package/es/version.d.ts +1 -1
  86. package/es/version.mjs +1 -1
  87. package/es/version.mjs.map +1 -1
  88. package/global.d.ts +2 -0
  89. package/lib/component.js +8 -4
  90. package/lib/component.js.map +1 -1
  91. package/lib/components/collapse/index.d.ts +55 -0
  92. package/lib/components/collapse/src/index.vue.d.ts +55 -0
  93. package/lib/components/collapse/style/css.d.ts +2 -0
  94. package/lib/components/collapse/style/index.d.ts +2 -0
  95. package/lib/components/config-provider/index.d.ts +41 -0
  96. package/lib/components/config-provider/src/config-provider-props.d.ts +19 -0
  97. package/lib/components/config-provider/src/config-provider.d.ts +38 -0
  98. package/lib/components/config-provider/src/constants.d.ts +4 -0
  99. package/lib/components/config-provider/src/hooks/use-global-config.d.ts +6 -0
  100. package/lib/components/config-provider/style/css.d.ts +2 -0
  101. package/lib/components/config-provider/style/index.d.ts +2 -0
  102. package/lib/components/dropdown/index.d.ts +1 -0
  103. package/lib/components/dropdown/src/index.vue.d.ts +1 -0
  104. package/lib/components/index.d.ts +2 -0
  105. package/lib/defaults.d.ts +1 -1
  106. package/lib/hooks/index.d.ts +2 -0
  107. package/lib/hooks/use-locale/index.d.ts +15 -0
  108. package/lib/hooks/use-size/index.d.ts +21 -0
  109. package/lib/index.d.ts +1 -1
  110. package/lib/index.js +11 -0
  111. package/lib/index.js.map +1 -1
  112. package/lib/locale/index.d.ts +1 -1
  113. package/lib/locale/lang/en.d.ts +6 -1
  114. package/lib/locale/lang/zh-cn.d.ts +6 -1
  115. package/lib/make-installer.d.ts +1 -1
  116. package/lib/make-installer.js +5 -1
  117. package/lib/make-installer.js.map +1 -1
  118. package/lib/packages/components/collapse/index.js +13 -0
  119. package/lib/packages/components/collapse/index.js.map +1 -0
  120. package/lib/packages/components/collapse/src/index.js +73 -0
  121. package/lib/packages/components/collapse/src/index.js.map +1 -0
  122. package/lib/packages/components/collapse/style/css.js +6 -0
  123. package/lib/packages/components/collapse/style/css.js.map +1 -0
  124. package/lib/packages/components/collapse/style/index.js +6 -0
  125. package/lib/packages/components/collapse/style/index.js.map +1 -0
  126. package/lib/packages/components/config-provider/index.js +20 -0
  127. package/lib/packages/components/config-provider/index.js.map +1 -0
  128. package/lib/packages/components/config-provider/src/config-provider-props.js +26 -0
  129. package/lib/packages/components/config-provider/src/config-provider-props.js.map +1 -0
  130. package/lib/packages/components/config-provider/src/config-provider.js +19 -0
  131. package/lib/packages/components/config-provider/src/config-provider.js.map +1 -0
  132. package/lib/packages/components/config-provider/src/constants.js +8 -0
  133. package/lib/packages/components/config-provider/src/constants.js.map +1 -0
  134. package/lib/packages/components/config-provider/src/hooks/use-global-config.js +62 -0
  135. package/lib/packages/components/config-provider/src/hooks/use-global-config.js.map +1 -0
  136. package/lib/packages/components/config-provider/style/css.js +6 -0
  137. package/lib/packages/components/config-provider/style/css.js.map +1 -0
  138. package/lib/packages/components/config-provider/style/index.js +6 -0
  139. package/lib/packages/components/config-provider/style/index.js.map +1 -0
  140. package/lib/packages/components/dropdown/src/index.js +3 -1
  141. package/lib/packages/components/dropdown/src/index.js.map +1 -1
  142. package/lib/packages/components/index.js +11 -0
  143. package/lib/packages/components/index.js.map +1 -1
  144. package/lib/packages/hooks/index.js +19 -0
  145. package/lib/packages/hooks/index.js.map +1 -0
  146. package/lib/packages/hooks/use-locale/index.js +34 -0
  147. package/lib/packages/hooks/use-locale/index.js.map +1 -0
  148. package/lib/packages/hooks/use-size/index.js +31 -0
  149. package/lib/packages/hooks/use-size/index.js.map +1 -0
  150. package/lib/packages/locale/lang/en.js +8 -3
  151. package/lib/packages/locale/lang/en.js.map +1 -1
  152. package/lib/packages/locale/lang/zh-cn.js +6 -1
  153. package/lib/packages/locale/lang/zh-cn.js.map +1 -1
  154. package/lib/utils/vue/vnode.d.ts +6 -6
  155. package/lib/version.d.ts +1 -1
  156. package/lib/version.js +1 -1
  157. package/lib/version.js.map +1 -1
  158. package/package.json +1 -1
  159. package/theme/hzzt-collapse.css +1 -0
  160. package/theme/hzzt-config-provider.css +0 -0
  161. package/theme/src/collapse.scss +56 -0
  162. package/theme/src/config-provider.scss +0 -0
@@ -1,4 +1,4 @@
1
- /*! Hzzt Plus v0.0.0-dev.1 */
1
+ /*! Hzzt Plus v0.0.1 */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue')) :
@@ -6,27 +6,15 @@
6
6
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.HzztPlus = {}, global.Vue));
7
7
  })(this, (function (exports, vue) { 'use strict';
8
8
 
9
- const INSTALLED_KEY = Symbol("INSTALLED_KEY");
10
-
11
- const version$1 = "0.0.0-dev.1";
12
-
13
- const makeInstaller = (components = []) => {
14
- const install = (app) => {
15
- if (app[INSTALLED_KEY])
16
- return;
17
- app[INSTALLED_KEY] = true;
18
- components.forEach((c) => app.use(c));
19
- };
20
- return {
21
- version: version$1,
22
- install
23
- };
24
- };
25
-
26
9
  var _a;
27
10
  const isClient = typeof window !== "undefined";
28
11
  isClient && ((_a = window == null ? void 0 : window.navigator) == null ? void 0 : _a.userAgent) && /iP(ad|hone|od)/.test(window.navigator.userAgent);
29
12
 
13
+ const hasOwnProperty$p = Object.prototype.hasOwnProperty;
14
+ const hasOwn = (val, key) => hasOwnProperty$p.call(val, key);
15
+ const isArray$1 = Array.isArray;
16
+ const isObject$1 = (val) => val !== null && typeof val === "object";
17
+
30
18
  var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
31
19
 
32
20
  var freeSelf = typeof self == "object" && self && self.Object === Object && self;
@@ -2217,7 +2205,7 @@
2217
2205
 
2218
2206
  var Promise$1 = getNative(root, "Promise");
2219
2207
 
2220
- var Set = getNative(root, "Set");
2208
+ var Set$1 = getNative(root, "Set");
2221
2209
 
2222
2210
  var mapTag$8 = "[object Map]";
2223
2211
  var objectTag$2 = "[object Object]";
@@ -2228,10 +2216,10 @@
2228
2216
  var dataViewCtorString = toSource(DataView);
2229
2217
  var mapCtorString = toSource(Map$1);
2230
2218
  var promiseCtorString = toSource(Promise$1);
2231
- var setCtorString = toSource(Set);
2219
+ var setCtorString = toSource(Set$1);
2232
2220
  var weakMapCtorString = toSource(WeakMap);
2233
2221
  var getTag = baseGetTag;
2234
- if (DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag$3 || Map$1 && getTag(new Map$1()) != mapTag$8 || Promise$1 && getTag(Promise$1.resolve()) != promiseTag || Set && getTag(new Set()) != setTag$8 || WeakMap && getTag(new WeakMap()) != weakMapTag$2) {
2222
+ if (DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag$3 || Map$1 && getTag(new Map$1()) != mapTag$8 || Promise$1 && getTag(Promise$1.resolve()) != promiseTag || Set$1 && getTag(new Set$1()) != setTag$8 || WeakMap && getTag(new WeakMap()) != weakMapTag$2) {
2235
2223
  getTag = function(value) {
2236
2224
  var result = baseGetTag(value), Ctor = result == objectTag$2 ? value.constructor : void 0, ctorString = Ctor ? toSource(Ctor) : "";
2237
2225
  if (ctorString) {
@@ -4022,7 +4010,7 @@
4022
4010
  var setTag$2 = "[object Set]";
4023
4011
  var objectProto$3 = Object.prototype;
4024
4012
  var hasOwnProperty$3 = objectProto$3.hasOwnProperty;
4025
- function isEmpty(value) {
4013
+ function isEmpty$1(value) {
4026
4014
  if (value == null) {
4027
4015
  return true;
4028
4016
  }
@@ -5657,8 +5645,8 @@
5657
5645
  }
5658
5646
 
5659
5647
  var INFINITY = 1 / 0;
5660
- var createSet = !(Set && 1 / setToArray(new Set([, -0]))[1] == INFINITY) ? noop : function(values) {
5661
- return new Set(values);
5648
+ var createSet = !(Set$1 && 1 / setToArray(new Set$1([, -0]))[1] == INFINITY) ? noop : function(values) {
5649
+ return new Set$1(values);
5662
5650
  };
5663
5651
 
5664
5652
  var LARGE_ARRAY_SIZE = 200;
@@ -6054,7 +6042,7 @@
6054
6042
  isBuffer,
6055
6043
  isDate,
6056
6044
  isElement: isElement$1,
6057
- isEmpty,
6045
+ isEmpty: isEmpty$1,
6058
6046
  isEqual,
6059
6047
  isEqualWith,
6060
6048
  isError,
@@ -6837,8 +6825,52 @@
6837
6825
  * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
6838
6826
  */
6839
6827
 
6828
+ const isEmpty = (val) => !val && val !== 0 || isArray$1(val) && val.length === 0 || isObject$1(val) && !Object.keys(val).length;
6829
+
6830
+ const keysOf = (arr) => Object.keys(arr);
6831
+
6840
6832
  !isClient ? void 0 : document.body;
6841
6833
 
6834
+ const epPropKey = "__epPropKey";
6835
+ const definePropType = (val) => val;
6836
+ const isEpProp = (val) => isObject$1(val) && !!val[epPropKey];
6837
+ const buildProp = (prop, key) => {
6838
+ if (!isObject$1(prop) || isEpProp(prop))
6839
+ return prop;
6840
+ const { values, required, default: defaultValue, type, validator } = prop;
6841
+ const _validator = values || validator ? (val) => {
6842
+ let valid = false;
6843
+ let allowedValues = [];
6844
+ if (values) {
6845
+ allowedValues = Array.from(values);
6846
+ if (hasOwn(prop, "default")) {
6847
+ allowedValues.push(defaultValue);
6848
+ }
6849
+ valid || (valid = allowedValues.includes(val));
6850
+ }
6851
+ if (validator)
6852
+ valid || (valid = validator(val));
6853
+ if (!valid && allowedValues.length > 0) {
6854
+ const allowValuesText = [...new Set(allowedValues)].map((value) => JSON.stringify(value)).join(", ");
6855
+ vue.warn(`Invalid prop: validation failed${key ? ` for prop "${key}"` : ""}. Expected one of [${allowValuesText}], got value ${JSON.stringify(val)}.`);
6856
+ }
6857
+ return valid;
6858
+ } : void 0;
6859
+ const epProp = {
6860
+ type,
6861
+ required: !!required,
6862
+ validator: _validator,
6863
+ [epPropKey]: true
6864
+ };
6865
+ if (hasOwn(prop, "default"))
6866
+ epProp.default = defaultValue;
6867
+ return epProp;
6868
+ };
6869
+ const buildProps = (props) => fromPairs(Object.entries(props).map(([key, option]) => [
6870
+ key,
6871
+ buildProp(option, key)
6872
+ ]));
6873
+
6842
6874
  const withInstall = (main, extra) => {
6843
6875
  main.install = (app) => {
6844
6876
  for (const comp of [main, ...Object.values(extra != null ? extra : {})]) {
@@ -6853,6 +6885,138 @@
6853
6885
  return main;
6854
6886
  };
6855
6887
 
6888
+ const INSTALLED_KEY = Symbol("INSTALLED_KEY");
6889
+
6890
+ const componentSizes = ["", "default", "small", "large"];
6891
+
6892
+ var English = {
6893
+ name: "en",
6894
+ hzzt: {
6895
+ collapse: {
6896
+ expand: "expand",
6897
+ retract: "retract"
6898
+ }
6899
+ }
6900
+ };
6901
+
6902
+ const buildTranslator = (locale) => (path, option) => translate(path, option, vue.unref(locale));
6903
+ const translate = (path, option, locale) => get(locale, path, path).replace(/\{(\w+)\}/g, (_, key) => {
6904
+ var _a;
6905
+ return `${(_a = option == null ? void 0 : option[key]) != null ? _a : `{${key}}`}`;
6906
+ });
6907
+ const buildLocaleContext = (locale) => {
6908
+ const lang = vue.computed(() => vue.unref(locale).name);
6909
+ const localeRef = vue.isRef(locale) ? locale : vue.ref(locale);
6910
+ return {
6911
+ lang,
6912
+ locale: localeRef,
6913
+ t: buildTranslator(locale)
6914
+ };
6915
+ };
6916
+ const localeContextKey = Symbol("localeContextKey");
6917
+ const useLocale = (localeOverrides) => {
6918
+ const locale = localeOverrides || vue.inject(localeContextKey, vue.ref());
6919
+ return buildLocaleContext(vue.computed(() => locale.value || English));
6920
+ };
6921
+
6922
+ const useSizeProp = buildProp({
6923
+ type: String,
6924
+ values: componentSizes,
6925
+ required: false
6926
+ });
6927
+ const SIZE_INJECTION_KEY = Symbol("size");
6928
+
6929
+ const configProviderContextKey = Symbol();
6930
+
6931
+ const globalConfig = vue.ref();
6932
+ function useGlobalConfig(key, defaultValue = void 0) {
6933
+ const config = vue.getCurrentInstance() ? vue.inject(configProviderContextKey, globalConfig) : globalConfig;
6934
+ if (key) {
6935
+ return vue.computed(() => {
6936
+ var _a, _b;
6937
+ return (_b = (_a = config.value) == null ? void 0 : _a[key]) != null ? _b : defaultValue;
6938
+ });
6939
+ } else {
6940
+ return config;
6941
+ }
6942
+ }
6943
+ const provideGlobalConfig = (config, app, global = false) => {
6944
+ var _a;
6945
+ const inSetup = !!vue.getCurrentInstance();
6946
+ const oldConfig = inSetup ? useGlobalConfig() : void 0;
6947
+ const provideFn = (_a = app == null ? void 0 : app.provide) != null ? _a : inSetup ? vue.provide : void 0;
6948
+ if (!provideFn) {
6949
+ return;
6950
+ }
6951
+ const context = vue.computed(() => {
6952
+ const cfg = vue.unref(config);
6953
+ if (!(oldConfig == null ? void 0 : oldConfig.value))
6954
+ return cfg;
6955
+ return mergeConfig(oldConfig.value, cfg);
6956
+ });
6957
+ provideFn(configProviderContextKey, context);
6958
+ provideFn(localeContextKey, vue.computed(() => context.value.locale));
6959
+ provideFn(SIZE_INJECTION_KEY, {
6960
+ size: vue.computed(() => context.value.size || "")
6961
+ });
6962
+ if (global || !globalConfig.value) {
6963
+ globalConfig.value = context.value;
6964
+ }
6965
+ return context;
6966
+ };
6967
+ const mergeConfig = (a, b) => {
6968
+ const keys = [.../* @__PURE__ */ new Set([...keysOf(a), ...keysOf(b)])];
6969
+ const obj = {};
6970
+ for (const key of keys) {
6971
+ obj[key] = b[key] !== void 0 ? b[key] : a[key];
6972
+ }
6973
+ return obj;
6974
+ };
6975
+
6976
+ const configProviderProps = buildProps({
6977
+ a11y: {
6978
+ type: Boolean,
6979
+ default: true
6980
+ },
6981
+ locale: {
6982
+ type: definePropType(Object)
6983
+ },
6984
+ size: useSizeProp,
6985
+ keyboardNavigation: {
6986
+ type: Boolean,
6987
+ default: true
6988
+ }
6989
+ });
6990
+
6991
+ const ConfigProvider = vue.defineComponent({
6992
+ name: "HzztConfigProvider",
6993
+ props: configProviderProps,
6994
+ setup(props, { slots }) {
6995
+ const config = provideGlobalConfig(props);
6996
+ return () => vue.renderSlot(slots, "default", { config: config == null ? void 0 : config.value });
6997
+ }
6998
+ });
6999
+ var ConfigProvider$1 = ConfigProvider;
7000
+
7001
+ const HzztConfigProvider = withInstall(ConfigProvider$1);
7002
+
7003
+ const version$1 = "0.0.1";
7004
+
7005
+ const makeInstaller = (components = []) => {
7006
+ const install = (app, options) => {
7007
+ if (app[INSTALLED_KEY])
7008
+ return;
7009
+ app[INSTALLED_KEY] = true;
7010
+ components.forEach((c) => app.use(c));
7011
+ if (options)
7012
+ provideGlobalConfig(options, app, true);
7013
+ };
7014
+ return {
7015
+ version: version$1,
7016
+ install
7017
+ };
7018
+ };
7019
+
6856
7020
  var _export_sfc = (sfc, props) => {
6857
7021
  const target = sfc.__vccOpts || sfc;
6858
7022
  for (const [key, val] of props) {
@@ -6861,20 +7025,20 @@
6861
7025
  return target;
6862
7026
  };
6863
7027
 
6864
- const _hoisted_1$1 = {
7028
+ const _hoisted_1$2 = {
6865
7029
  key: 0,
6866
7030
  class: "hzzt-title flex align-items-center"
6867
7031
  };
6868
- const _hoisted_2$1 = {
7032
+ const _hoisted_2$2 = {
6869
7033
  key: 0,
6870
7034
  class: "decorative-line"
6871
7035
  };
6872
- const _hoisted_3$1 = { class: "label-name" };
6873
- const __default__$1 = vue.defineComponent({
7036
+ const _hoisted_3$2 = { class: "label-name" };
7037
+ const __default__$2 = vue.defineComponent({
6874
7038
  name: "HzztTitle"
6875
7039
  });
6876
- const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
6877
- ...__default__$1,
7040
+ const _sfc_main$2 = /* @__PURE__ */ vue.defineComponent({
7041
+ ...__default__$2,
6878
7042
  props: {
6879
7043
  label: String,
6880
7044
  sideline: {
@@ -6890,10 +7054,10 @@
6890
7054
  return props.label || ((_c = (_b = (_a = slots == null ? void 0 : slots.default) == null ? void 0 : _a.call(slots)) == null ? void 0 : _b[0]) == null ? void 0 : _c.children);
6891
7055
  });
6892
7056
  return (_ctx, _cache) => {
6893
- return vue.unref(showLabel) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1, [
6894
- __props.sideline ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$1)) : vue.createCommentVNode("v-if", true),
7057
+ return vue.unref(showLabel) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$2, [
7058
+ __props.sideline ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_2$2)) : vue.createCommentVNode("v-if", true),
6895
7059
  vue.renderSlot(_ctx.$slots, "before"),
6896
- vue.createElementVNode("label", _hoisted_3$1, [
7060
+ vue.createElementVNode("label", _hoisted_3$2, [
6897
7061
  vue.renderSlot(_ctx.$slots, "default", {}, () => [
6898
7062
  vue.createTextVNode(vue.toDisplayString(__props.label), 1)
6899
7063
  ])
@@ -6902,7 +7066,7 @@
6902
7066
  };
6903
7067
  }
6904
7068
  });
6905
- var Title = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "index.vue"]]);
7069
+ var Title = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__file", "index.vue"]]);
6906
7070
 
6907
7071
  const HzztTitle = withInstall(Title);
6908
7072
 
@@ -6978,18 +7142,18 @@
6978
7142
  }
6979
7143
  };
6980
7144
 
6981
- const _hoisted_1 = ["onClick"];
6982
- const _hoisted_2 = { class: "hzzt-dropdown-name" };
6983
- const _hoisted_3 = /* @__PURE__ */ vue.createElementVNode("span", { class: "caret" }, null, -1);
6984
- const _hoisted_4 = { class: "hzzt-dropdown-menu" };
6985
- const _hoisted_5 = ["onClick"];
6986
- const _hoisted_6 = { class: "submenu" };
6987
- const _hoisted_7 = ["onClick"];
6988
- const __default__ = vue.defineComponent({
7145
+ const _hoisted_1$1 = ["onClick"];
7146
+ const _hoisted_2$1 = { class: "hzzt-dropdown-name" };
7147
+ const _hoisted_3$1 = /* @__PURE__ */ vue.createElementVNode("span", { class: "caret" }, null, -1);
7148
+ const _hoisted_4$1 = { class: "hzzt-dropdown-menu" };
7149
+ const _hoisted_5$1 = ["onClick"];
7150
+ const _hoisted_6$1 = { class: "submenu" };
7151
+ const _hoisted_7$1 = ["onClick"];
7152
+ const __default__$1 = vue.defineComponent({
6989
7153
  name: "HzztDropDown"
6990
7154
  });
6991
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
6992
- ...__default__,
7155
+ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
7156
+ ...__default__$1,
6993
7157
  props: {
6994
7158
  options: {
6995
7159
  type: Array,
@@ -7044,24 +7208,24 @@
7044
7208
  vue.createElementVNode("li", {
7045
7209
  class: vue.normalizeClass({ "hzzt-dropdown-li": true, "hzzt-dropdown-li-show": toggle.value })
7046
7210
  }, [
7047
- vue.createElementVNode("span", _hoisted_2, vue.toDisplayString(__props.label), 1),
7048
- _hoisted_3,
7049
- vue.createElementVNode("ul", _hoisted_4, [
7211
+ vue.createElementVNode("span", _hoisted_2$1, vue.toDisplayString(__props.label), 1),
7212
+ _hoisted_3$1,
7213
+ vue.createElementVNode("ul", _hoisted_4$1, [
7050
7214
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.options, (option, index) => {
7051
7215
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
7052
- option[__props.props.children] && option[__props.props.children].length ? (vue.openBlock(), vue.createElementBlock("li", {
7216
+ vue.unref(isEmpty)(option[__props.props.children]) ? (vue.openBlock(), vue.createElementBlock("li", {
7053
7217
  class: vue.normalizeClass({ "hzzt-dropdown-menu-item": true, selected: __props.defaultValue.includes(option[__props.props.value]) }),
7054
7218
  key: index
7055
7219
  }, [
7056
7220
  vue.createElementVNode("a", {
7057
7221
  onClick: ($event) => selectValue([option[__props.props.value]]),
7058
7222
  class: "hzzt-dropdown-menu-item-label"
7059
- }, vue.toDisplayString(option[__props.props.label]), 9, _hoisted_5)
7223
+ }, vue.toDisplayString(option[__props.props.label]), 9, _hoisted_5$1)
7060
7224
  ], 2)) : (vue.openBlock(), vue.createElementBlock("li", {
7061
7225
  key: index + "submenu",
7062
7226
  class: "hzzt-dropdown-menu-item hzzt-dropdown-submenu"
7063
7227
  }, [
7064
- vue.createElementVNode("a", _hoisted_6, vue.toDisplayString(option[__props.props.label]), 1),
7228
+ vue.createElementVNode("a", _hoisted_6$1, vue.toDisplayString(option[__props.props.label]), 1),
7065
7229
  vue.createElementVNode("ul", {
7066
7230
  class: vue.normalizeClass([["pull-" + __props.position], "hzzt-dropdown-menu"])
7067
7231
  }, [
@@ -7073,7 +7237,7 @@
7073
7237
  vue.createElementVNode("a", {
7074
7238
  onClick: ($event) => selectValue([option[__props.props.value], child[__props.props.value]]),
7075
7239
  class: "hzzt-dropdown-menu-item-label"
7076
- }, vue.toDisplayString(child[__props.props.label]), 9, _hoisted_7)
7240
+ }, vue.toDisplayString(child[__props.props.label]), 9, _hoisted_7$1)
7077
7241
  ], 2);
7078
7242
  }), 128))
7079
7243
  ], 2)
@@ -7086,19 +7250,85 @@
7086
7250
  }), 256))
7087
7251
  ])
7088
7252
  ], 2)
7089
- ], 8, _hoisted_1)), [
7253
+ ], 8, _hoisted_1$1)), [
7090
7254
  [vue.unref(ClickOutside), close]
7091
7255
  ]);
7092
7256
  };
7093
7257
  }
7094
7258
  });
7095
- var Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "index.vue"]]);
7259
+ var Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "index.vue"]]);
7096
7260
 
7097
7261
  const HzztDropdown = withInstall(Dropdown);
7098
7262
 
7263
+ const _hoisted_1 = { class: "hzzt-collapse" };
7264
+ const _hoisted_2 = { class: "flex align-items-center" };
7265
+ const _hoisted_3 = { class: "hzzt-collapse-title-wrapper" };
7266
+ const _hoisted_4 = /* @__PURE__ */ vue.createElementVNode("div", { class: "hzzt-collapse-title-block" }, null, -1);
7267
+ const _hoisted_5 = { class: "hzzt-collapse-title" };
7268
+ const _hoisted_6 = /* @__PURE__ */ vue.createElementVNode("div", { class: "hzzt-collapse-line" }, null, -1);
7269
+ const _hoisted_7 = {
7270
+ key: 0,
7271
+ class: "hzzt-collapse-text"
7272
+ };
7273
+ const __default__ = vue.defineComponent({
7274
+ name: "HzztCollapse"
7275
+ });
7276
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
7277
+ ...__default__,
7278
+ props: {
7279
+ defaultActive: {
7280
+ type: Boolean,
7281
+ default: false
7282
+ },
7283
+ title: {
7284
+ type: String,
7285
+ default: ""
7286
+ },
7287
+ expand: {
7288
+ type: Boolean,
7289
+ default: true
7290
+ }
7291
+ },
7292
+ setup(__props) {
7293
+ const props = __props;
7294
+ const { t } = useLocale();
7295
+ const active = vue.ref(props.defaultActive);
7296
+ const slots = vue.useSlots();
7297
+ vue.watch(() => props.defaultActive, (val) => {
7298
+ active.value = val;
7299
+ });
7300
+ function toggle() {
7301
+ active.value = !active.value;
7302
+ }
7303
+ return (_ctx, _cache) => {
7304
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
7305
+ vue.createElementVNode("div", {
7306
+ class: "hzzt-collapse-header",
7307
+ onClick: toggle
7308
+ }, [
7309
+ vue.createElementVNode("div", _hoisted_2, [
7310
+ vue.createElementVNode("div", _hoisted_3, [
7311
+ _hoisted_4,
7312
+ vue.createElementVNode("div", _hoisted_5, vue.toDisplayString(__props.title) + "}", 1)
7313
+ ]),
7314
+ _hoisted_6
7315
+ ]),
7316
+ __props.expand ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_7, vue.toDisplayString(active.value ? vue.unref(t)("hzzt.collapse.") : vue.unref(t)("hzzt.collapse.expand")), 1)) : vue.createCommentVNode("v-if", true)
7317
+ ]),
7318
+ vue.createTextVNode(" " + vue.toDisplayString(vue.unref(slots).active ? vue.unref(slots).active(active.value) : vue.unref(slots).default()), 1)
7319
+ ]);
7320
+ };
7321
+ }
7322
+ });
7323
+ var Collapse = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "index.vue"]]);
7324
+
7325
+ const HzztCollapse = withInstall(Collapse);
7326
+
7099
7327
  var Components = [
7328
+ HzztConfigProvider,
7100
7329
  HzztTitle,
7101
- HzztDropdown
7330
+ HzztDropdown,
7331
+ HzztCollapse
7102
7332
  ];
7103
7333
 
7104
7334
  var Plugins = [];
@@ -7108,11 +7338,17 @@
7108
7338
  const install = installer.install;
7109
7339
  const version = installer.version;
7110
7340
 
7341
+ exports.HzztCollapse = HzztCollapse;
7342
+ exports.HzztConfigProvider = HzztConfigProvider;
7111
7343
  exports.HzztDropdown = HzztDropdown;
7112
7344
  exports.HzztTitle = HzztTitle;
7345
+ exports.configProviderContextKey = configProviderContextKey;
7346
+ exports.configProviderProps = configProviderProps;
7113
7347
  exports["default"] = installer;
7114
7348
  exports.install = install;
7115
7349
  exports.makeInstaller = makeInstaller;
7350
+ exports.provideGlobalConfig = provideGlobalConfig;
7351
+ exports.useGlobalConfig = useGlobalConfig;
7116
7352
  exports.version = version;
7117
7353
 
7118
7354
  Object.defineProperty(exports, '__esModule', { value: true });