giime 0.6.16 → 0.6.17

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 (120) hide show
  1. package/dist/index.css +43 -43
  2. package/es/components/src/composite/searchForm/composables/useWatchModelChange.d.ts +1 -0
  3. package/es/components/src/composite/searchForm/composables/useWatchModelChange.mjs +1 -1
  4. package/es/components/src/composite/searchForm/composables/useWatchModelChange.mjs.map +1 -1
  5. package/es/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue.d.ts +9 -0
  6. package/es/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.mjs +1 -1
  7. package/es/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.mjs.map +1 -1
  8. package/es/components/src/composite/searchForm/searchFormItems/cascader/index.d.ts +9 -0
  9. package/es/components/src/composite/searchForm/searchFormItems/cascader/searchFormCascader.d.ts +4 -0
  10. package/es/components/src/composite/searchForm/searchFormItems/common.d.ts +5 -0
  11. package/es/components/src/composite/searchForm/searchFormItems/common.mjs +5 -0
  12. package/es/components/src/composite/searchForm/searchFormItems/common.mjs.map +1 -1
  13. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +9 -0
  14. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.mjs +1 -1
  15. package/es/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.mjs.map +1 -1
  16. package/es/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +9 -0
  17. package/es/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +4 -0
  18. package/es/components/src/composite/searchForm/searchFormItems/input/SearchFormInput.vue.d.ts +9 -0
  19. package/es/components/src/composite/searchForm/searchFormItems/input/SearchFormInput.vue2.mjs +1 -1
  20. package/es/components/src/composite/searchForm/searchFormItems/input/SearchFormInput.vue2.mjs.map +1 -1
  21. package/es/components/src/composite/searchForm/searchFormItems/input/index.d.ts +9 -0
  22. package/es/components/src/composite/searchForm/searchFormItems/input/searchFormInput.d.ts +4 -0
  23. package/es/components/src/composite/searchForm/searchFormItems/numberInterval/SearchFormNumberInterval.vue.d.ts +9 -0
  24. package/es/components/src/composite/searchForm/searchFormItems/numberInterval/SearchFormNumberInterval.vue2.mjs +1 -1
  25. package/es/components/src/composite/searchForm/searchFormItems/numberInterval/SearchFormNumberInterval.vue2.mjs.map +1 -1
  26. package/es/components/src/composite/searchForm/searchFormItems/numberInterval/index.d.ts +9 -0
  27. package/es/components/src/composite/searchForm/searchFormItems/numberInterval/searchFormNumberInterval.d.ts +4 -0
  28. package/es/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue.d.ts +9 -0
  29. package/es/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.mjs +1 -1
  30. package/es/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.mjs.map +1 -1
  31. package/es/components/src/composite/searchForm/searchFormItems/select/index.d.ts +9 -0
  32. package/es/components/src/composite/searchForm/searchFormItems/select/searchFormSelect.d.ts +4 -0
  33. package/es/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue.d.ts +9 -0
  34. package/es/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue2.mjs +1 -1
  35. package/es/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue2.mjs.map +1 -1
  36. package/es/components/src/composite/searchForm/searchFormItems/selectV2/index.d.ts +9 -0
  37. package/es/components/src/composite/searchForm/searchFormItems/selectV2/searchFormSelectV2.d.ts +4 -0
  38. package/es/giime/index.mjs +1 -0
  39. package/es/giime/index.mjs.map +1 -1
  40. package/es/giime/version.d.ts +1 -1
  41. package/es/giime/version.mjs +1 -1
  42. package/es/giime/version.mjs.map +1 -1
  43. package/es/hooks/base/index.d.ts +1 -0
  44. package/es/hooks/base/index.mjs +1 -0
  45. package/es/hooks/base/index.mjs.map +1 -1
  46. package/es/hooks/base/useComputedFields/index.d.ts +15 -0
  47. package/es/hooks/base/useComputedFields/index.mjs +22 -0
  48. package/es/hooks/base/useComputedFields/index.mjs.map +1 -0
  49. package/es/hooks/index.mjs +1 -0
  50. package/es/hooks/index.mjs.map +1 -1
  51. package/es/index.css +43 -43
  52. package/es/utils/src/regexPatterns/index.d.ts +2 -0
  53. package/es/utils/src/regexPatterns/index.mjs +3 -0
  54. package/es/utils/src/regexPatterns/index.mjs.map +1 -0
  55. package/es/utils/src/regexPatterns/number.d.ts +40 -0
  56. package/es/utils/src/regexPatterns/number.mjs +11 -0
  57. package/es/utils/src/regexPatterns/number.mjs.map +1 -0
  58. package/es/utils/src/regexPatterns/url.d.ts +20 -0
  59. package/es/utils/src/regexPatterns/url.mjs +7 -0
  60. package/es/utils/src/regexPatterns/url.mjs.map +1 -0
  61. package/lib/components/src/composite/searchForm/composables/useWatchModelChange.d.ts +1 -0
  62. package/lib/components/src/composite/searchForm/composables/useWatchModelChange.js +1 -1
  63. package/lib/components/src/composite/searchForm/composables/useWatchModelChange.js.map +1 -1
  64. package/lib/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue.d.ts +9 -0
  65. package/lib/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.js +1 -1
  66. package/lib/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue2.js.map +1 -1
  67. package/lib/components/src/composite/searchForm/searchFormItems/cascader/index.d.ts +9 -0
  68. package/lib/components/src/composite/searchForm/searchFormItems/cascader/searchFormCascader.d.ts +4 -0
  69. package/lib/components/src/composite/searchForm/searchFormItems/common.d.ts +5 -0
  70. package/lib/components/src/composite/searchForm/searchFormItems/common.js +5 -0
  71. package/lib/components/src/composite/searchForm/searchFormItems/common.js.map +1 -1
  72. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue.d.ts +9 -0
  73. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.js +1 -1
  74. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/SearchFormDatePicker.vue2.js.map +1 -1
  75. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/index.d.ts +9 -0
  76. package/lib/components/src/composite/searchForm/searchFormItems/datePicker/searchFormDatePicker.d.ts +4 -0
  77. package/lib/components/src/composite/searchForm/searchFormItems/input/SearchFormInput.vue.d.ts +9 -0
  78. package/lib/components/src/composite/searchForm/searchFormItems/input/SearchFormInput.vue2.js +1 -1
  79. package/lib/components/src/composite/searchForm/searchFormItems/input/SearchFormInput.vue2.js.map +1 -1
  80. package/lib/components/src/composite/searchForm/searchFormItems/input/index.d.ts +9 -0
  81. package/lib/components/src/composite/searchForm/searchFormItems/input/searchFormInput.d.ts +4 -0
  82. package/lib/components/src/composite/searchForm/searchFormItems/numberInterval/SearchFormNumberInterval.vue.d.ts +9 -0
  83. package/lib/components/src/composite/searchForm/searchFormItems/numberInterval/SearchFormNumberInterval.vue2.js +1 -1
  84. package/lib/components/src/composite/searchForm/searchFormItems/numberInterval/SearchFormNumberInterval.vue2.js.map +1 -1
  85. package/lib/components/src/composite/searchForm/searchFormItems/numberInterval/index.d.ts +9 -0
  86. package/lib/components/src/composite/searchForm/searchFormItems/numberInterval/searchFormNumberInterval.d.ts +4 -0
  87. package/lib/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue.d.ts +9 -0
  88. package/lib/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.js +1 -1
  89. package/lib/components/src/composite/searchForm/searchFormItems/select/SearchFormSelect.vue2.js.map +1 -1
  90. package/lib/components/src/composite/searchForm/searchFormItems/select/index.d.ts +9 -0
  91. package/lib/components/src/composite/searchForm/searchFormItems/select/searchFormSelect.d.ts +4 -0
  92. package/lib/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue.d.ts +9 -0
  93. package/lib/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue2.js +1 -1
  94. package/lib/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue2.js.map +1 -1
  95. package/lib/components/src/composite/searchForm/searchFormItems/selectV2/index.d.ts +9 -0
  96. package/lib/components/src/composite/searchForm/searchFormItems/selectV2/searchFormSelectV2.d.ts +4 -0
  97. package/lib/giime/index.js +38 -36
  98. package/lib/giime/index.js.map +1 -1
  99. package/lib/giime/version.d.ts +1 -1
  100. package/lib/giime/version.js +1 -1
  101. package/lib/giime/version.js.map +1 -1
  102. package/lib/hooks/base/index.d.ts +1 -0
  103. package/lib/hooks/base/index.js +2 -0
  104. package/lib/hooks/base/index.js.map +1 -1
  105. package/lib/hooks/base/useComputedFields/index.d.ts +15 -0
  106. package/lib/hooks/base/useComputedFields/index.js +24 -0
  107. package/lib/hooks/base/useComputedFields/index.js.map +1 -0
  108. package/lib/hooks/index.js +38 -36
  109. package/lib/hooks/index.js.map +1 -1
  110. package/lib/index.css +43 -43
  111. package/lib/utils/src/regexPatterns/index.d.ts +2 -0
  112. package/lib/utils/src/regexPatterns/index.js +20 -0
  113. package/lib/utils/src/regexPatterns/index.js.map +1 -0
  114. package/lib/utils/src/regexPatterns/number.d.ts +40 -0
  115. package/lib/utils/src/regexPatterns/number.js +20 -0
  116. package/lib/utils/src/regexPatterns/number.js.map +1 -0
  117. package/lib/utils/src/regexPatterns/url.d.ts +20 -0
  118. package/lib/utils/src/regexPatterns/url.js +12 -0
  119. package/lib/utils/src/regexPatterns/url.js.map +1 -0
  120. package/package.json +1 -1
@@ -41,6 +41,10 @@ export declare const GmSearchFormSelect: import("../../../../../../utils").SFCWi
41
41
  type: BooleanConstructor;
42
42
  default: false;
43
43
  };
44
+ noDefaultSync: {
45
+ type: BooleanConstructor;
46
+ default: false;
47
+ };
44
48
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
45
49
  "update:modelValue": (modelValue: import("element-plus/es/utils/index.js").EpPropMergeType<(ObjectConstructor | BooleanConstructor | ArrayConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | undefined) => void;
46
50
  change: (...args: any[]) => void;
@@ -86,6 +90,10 @@ export declare const GmSearchFormSelect: import("../../../../../../utils").SFCWi
86
90
  type: BooleanConstructor;
87
91
  default: false;
88
92
  };
93
+ noDefaultSync: {
94
+ type: BooleanConstructor;
95
+ default: false;
96
+ };
89
97
  }>> & {
90
98
  onChange?: ((...args: any[]) => any) | undefined;
91
99
  "onUpdate:modelValue"?: ((modelValue: import("element-plus/es/utils/index.js").EpPropMergeType<(ObjectConstructor | BooleanConstructor | ArrayConstructor | StringConstructor | NumberConstructor)[], unknown, unknown> | undefined) => any) | undefined;
@@ -96,6 +104,7 @@ export declare const GmSearchFormSelect: import("../../../../../../utils").SFCWi
96
104
  clearable: boolean;
97
105
  loading: boolean;
98
106
  label: string;
107
+ noDefaultSync: boolean;
99
108
  optionLabel: string;
100
109
  optionValue: string;
101
110
  labelKey: string | boolean;
@@ -44,6 +44,10 @@ export declare const searchFormSelectProps: {
44
44
  type: BooleanConstructor;
45
45
  default: false;
46
46
  };
47
+ noDefaultSync: {
48
+ type: BooleanConstructor;
49
+ default: false;
50
+ };
47
51
  };
48
52
  export declare const searchFormSelectEmits: {
49
53
  change: (...value: any[]) => boolean;
@@ -32,6 +32,10 @@ declare const _default: import("vue").DefineComponent<{
32
32
  type: BooleanConstructor;
33
33
  default: false;
34
34
  };
35
+ noDefaultSync: {
36
+ type: BooleanConstructor;
37
+ default: false;
38
+ };
35
39
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
36
40
  "update:modelValue": (modelValue: any) => void;
37
41
  change: (...args: any[]) => void;
@@ -69,6 +73,10 @@ declare const _default: import("vue").DefineComponent<{
69
73
  type: BooleanConstructor;
70
74
  default: false;
71
75
  };
76
+ noDefaultSync: {
77
+ type: BooleanConstructor;
78
+ default: false;
79
+ };
72
80
  }>> & {
73
81
  onChange?: ((...args: any[]) => any) | undefined;
74
82
  "onUpdate:modelValue"?: ((modelValue: any) => any) | undefined;
@@ -77,6 +85,7 @@ declare const _default: import("vue").DefineComponent<{
77
85
  disabled: boolean;
78
86
  options: import("../../..").SelectOptionsOptionType[];
79
87
  label: string;
88
+ noDefaultSync: boolean;
80
89
  optionLabel: string;
81
90
  optionValue: string;
82
91
  labelKey: string | boolean;
@@ -18,7 +18,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
18
18
  const props = __props;
19
19
  const modelValue = useModel(__props, "modelValue");
20
20
  const emit = __emit;
21
- useWatchModelChange(modelValue, { prop: props.prop });
21
+ useWatchModelChange(modelValue, { prop: props.prop, noDefaultSync: props.noDefaultSync });
22
22
  const optionsList = computed(() => {
23
23
  return props.options.map((v, i) => {
24
24
  const res = {
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFormSelectV2.vue2.mjs","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue"],"sourcesContent":["<template>\r\n <gm-form-item :prop=\"prop\">\r\n <gm-select-v2\r\n v-model=\"modelValue\"\r\n :placeholder=\"label\"\r\n :multiple=\"multiple\"\r\n filterable\r\n clearable\r\n collapse-tags\r\n collapse-tags-tooltip\r\n :disabled=\"disabled\"\r\n :options=\"optionsList\"\r\n class=\"gm-w-full\"\r\n @change=\"emit('change', $event)\"\r\n />\r\n </gm-form-item>\r\n</template>\r\n<script lang=\"ts\" setup>\r\nimport { computed } from 'vue';\r\nimport { isString } from '@giime/utils';\r\nimport { useWatchModelChange } from '../../composables/useWatchModelChange';\r\nimport { SearchFormSelectV2Name, searchFormSelectV2Emits, searchFormSelectV2Props } from './searchFormSelectV2';\r\nimport type { SelectV2Props } from '@giime/components/src/base/selectV2';\r\n\r\ndefineOptions({\r\n name: SearchFormSelectV2Name,\r\n});\r\nconst props = defineProps(searchFormSelectV2Props);\r\nconst modelValue = defineModel<SelectV2Props['modelValue'] | undefined>();\r\n\r\nconst emit = defineEmits(searchFormSelectV2Emits);\r\nuseWatchModelChange(modelValue, { prop: props.prop });\r\n\r\nconst optionsList = computed(() => {\r\n return props.options.map((v, i) => {\r\n const res = {\r\n ...v,\r\n label: v[props.optionLabel],\r\n value: v[props.optionValue],\r\n };\r\n if (props.labelKey === true) {\r\n res.label = `${v.id}. ${res.label}`;\r\n } else if (props.labelKey === 'index') {\r\n res.label = `${i + 1}. ${res.label}`;\r\n } else if (isString(props.labelKey) && Object.prototype.hasOwnProperty.call(v, props.labelKey)) {\r\n res.label = `${v[props.labelKey]}. ${res.label}`;\r\n }\r\n return res;\r\n });\r\n});\r\n</script>\r\n"],"names":["_useModel"],"mappings":";;;;;;;;;;;;;;;;;AA2BA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAM,MAAA,UAAA,GAAaA,QAAqD,CAAA,OAAA,EAAA,YAAA,CAAA,CAAA;AAExE,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAA,mBAAA,CAAoB,UAAY,EAAA,EAAE,IAAM,EAAA,KAAA,CAAM,MAAM,CAAA,CAAA;AAEpD,IAAM,MAAA,WAAA,GAAc,SAAS,MAAM;AACjC,MAAA,OAAO,KAAM,CAAA,OAAA,CAAQ,GAAI,CAAA,CAAC,GAAG,CAAM,KAAA;AACjC,QAAA,MAAM,GAAM,GAAA;AAAA,UACV,GAAG,CAAA;AAAA,UACH,KAAA,EAAO,CAAE,CAAA,KAAA,CAAM,WAAW,CAAA;AAAA,UAC1B,KAAA,EAAO,CAAE,CAAA,KAAA,CAAM,WAAW,CAAA;AAAA,SAC5B,CAAA;AACA,QAAI,IAAA,KAAA,CAAM,aAAa,IAAM,EAAA;AAC3B,UAAA,GAAA,CAAI,QAAQ,CAAG,EAAA,CAAA,CAAE,EAAE,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SACnC,MAAA,IAAW,KAAM,CAAA,QAAA,KAAa,OAAS,EAAA;AACrC,UAAA,GAAA,CAAI,QAAQ,CAAG,EAAA,CAAA,GAAI,CAAC,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SACzB,MAAA,IAAA,QAAA,CAAS,KAAM,CAAA,QAAQ,CAAK,IAAA,MAAA,CAAO,SAAU,CAAA,cAAA,CAAe,IAAK,CAAA,CAAA,EAAG,KAAM,CAAA,QAAQ,CAAG,EAAA;AAC9F,UAAI,GAAA,CAAA,KAAA,GAAQ,GAAG,CAAE,CAAA,KAAA,CAAM,QAAQ,CAAC,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SAChD;AACA,QAAO,OAAA,GAAA,CAAA;AAAA,OACR,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SearchFormSelectV2.vue2.mjs","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/selectV2/SearchFormSelectV2.vue"],"sourcesContent":["<template>\n <gm-form-item :prop=\"prop\">\n <gm-select-v2\n v-model=\"modelValue\"\n :placeholder=\"label\"\n :multiple=\"multiple\"\n filterable\n clearable\n collapse-tags\n collapse-tags-tooltip\n :disabled=\"disabled\"\n :options=\"optionsList\"\n class=\"gm-w-full\"\n @change=\"emit('change', $event)\"\n />\n </gm-form-item>\n</template>\n<script lang=\"ts\" setup>\nimport { computed } from 'vue';\nimport { isString } from '@giime/utils';\nimport { useWatchModelChange } from '../../composables/useWatchModelChange';\nimport { SearchFormSelectV2Name, searchFormSelectV2Emits, searchFormSelectV2Props } from './searchFormSelectV2';\nimport type { SelectV2Props } from '@giime/components/src/base/selectV2';\n\ndefineOptions({\n name: SearchFormSelectV2Name,\n});\nconst props = defineProps(searchFormSelectV2Props);\nconst modelValue = defineModel<SelectV2Props['modelValue'] | undefined>();\n\nconst emit = defineEmits(searchFormSelectV2Emits);\nuseWatchModelChange(modelValue, { prop: props.prop, noDefaultSync: props.noDefaultSync });\n\nconst optionsList = computed(() => {\n return props.options.map((v, i) => {\n const res = {\n ...v,\n label: v[props.optionLabel],\n value: v[props.optionValue],\n };\n if (props.labelKey === true) {\n res.label = `${v.id}. ${res.label}`;\n } else if (props.labelKey === 'index') {\n res.label = `${i + 1}. ${res.label}`;\n } else if (isString(props.labelKey) && Object.prototype.hasOwnProperty.call(v, props.labelKey)) {\n res.label = `${v[props.labelKey]}. ${res.label}`;\n }\n return res;\n });\n});\n</script>\n"],"names":["_useModel"],"mappings":";;;;;;;;;;;;;;;;;AA2BA,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAM,MAAA,UAAA,GAAaA,QAAoD,CAAA,OAAA,EAAA,YAAC,CAAA,CAAA;AAExE,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAoB,mBAAA,CAAA,UAAA,EAAY,EAAE,IAAM,EAAA,KAAA,CAAM,MAAM,aAAe,EAAA,KAAA,CAAM,eAAe,CAAA,CAAA;AAExF,IAAM,MAAA,WAAA,GAAc,SAAS,MAAM;AACjC,MAAA,OAAO,KAAM,CAAA,OAAA,CAAQ,GAAI,CAAA,CAAC,GAAG,CAAM,KAAA;AACjC,QAAA,MAAM,GAAM,GAAA;AAAA,UACV,GAAG,CAAA;AAAA,UACH,KAAA,EAAO,CAAE,CAAA,KAAA,CAAM,WAAW,CAAA;AAAA,UAC1B,KAAA,EAAO,CAAE,CAAA,KAAA,CAAM,WAAW,CAAA;AAAA,SAC5B,CAAA;AACA,QAAI,IAAA,KAAA,CAAM,aAAa,IAAM,EAAA;AAC3B,UAAA,GAAA,CAAI,QAAQ,CAAG,EAAA,CAAA,CAAE,EAAE,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SACnC,MAAA,IAAW,KAAM,CAAA,QAAA,KAAa,OAAS,EAAA;AACrC,UAAA,GAAA,CAAI,QAAQ,CAAG,EAAA,CAAA,GAAI,CAAC,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SACzB,MAAA,IAAA,QAAA,CAAS,KAAM,CAAA,QAAQ,CAAK,IAAA,MAAA,CAAO,SAAU,CAAA,cAAA,CAAe,IAAK,CAAA,CAAA,EAAG,KAAM,CAAA,QAAQ,CAAG,EAAA;AAC9F,UAAI,GAAA,CAAA,KAAA,GAAQ,GAAG,CAAE,CAAA,KAAA,CAAM,QAAQ,CAAC,CAAA,EAAA,EAAK,IAAI,KAAK,CAAA,CAAA,CAAA;AAAA,SAChD;AACA,QAAO,OAAA,GAAA,CAAA;AAAA,OACR,CAAA,CAAA;AAAA,KACF,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -33,6 +33,10 @@ export declare const GmSearchFormSelectV2: import("../../../../../../utils").SFC
33
33
  type: BooleanConstructor;
34
34
  default: false;
35
35
  };
36
+ noDefaultSync: {
37
+ type: BooleanConstructor;
38
+ default: false;
39
+ };
36
40
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
37
41
  "update:modelValue": (modelValue: any) => void;
38
42
  change: (...args: any[]) => void;
@@ -70,6 +74,10 @@ export declare const GmSearchFormSelectV2: import("../../../../../../utils").SFC
70
74
  type: BooleanConstructor;
71
75
  default: false;
72
76
  };
77
+ noDefaultSync: {
78
+ type: BooleanConstructor;
79
+ default: false;
80
+ };
73
81
  }>> & {
74
82
  onChange?: ((...args: any[]) => any) | undefined;
75
83
  "onUpdate:modelValue"?: ((modelValue: any) => any) | undefined;
@@ -78,6 +86,7 @@ export declare const GmSearchFormSelectV2: import("../../../../../../utils").SFC
78
86
  disabled: boolean;
79
87
  options: import("../../../index.js").SelectOptionsOptionType[];
80
88
  label: string;
89
+ noDefaultSync: boolean;
81
90
  optionLabel: string;
82
91
  optionValue: string;
83
92
  labelKey: string | boolean;
@@ -31,6 +31,10 @@ export declare const searchFormSelectV2Props: {
31
31
  type: BooleanConstructor;
32
32
  default: false;
33
33
  };
34
+ noDefaultSync: {
35
+ type: BooleanConstructor;
36
+ default: false;
37
+ };
34
38
  };
35
39
  export declare const searchFormSelectV2Emits: {
36
40
  change: (...arg: any[]) => boolean;
@@ -305,6 +305,7 @@ export { useLoading } from '../hooks/base/useLoading/index.mjs';
305
305
  export { useTimeoutPromise } from '../hooks/base/useTimeout/index.mjs';
306
306
  export { useRectSelect } from '../hooks/base/useRectSelect/index.mjs';
307
307
  export { usePageHtmlClass } from '../hooks/base/usePageHtmlClass/index.mjs';
308
+ export { useComputedFields } from '../hooks/base/useComputedFields/index.mjs';
308
309
  export { useLangListStore } from '../hooks/store/useLangList/index.mjs';
309
310
  export { useLoginStore } from '../hooks/store/useLogin/index.mjs';
310
311
  export { useCustomSettingsStore } from '../hooks/store/useCustomSettings/index.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../packages/giime/index.ts"],"sourcesContent":["import installer from './defaults';\r\nimport './tailwind.css';\r\nexport * from '@giime/utils';\r\nexport * from '@giime/components';\r\nexport * from '@giime/hooks';\r\n// export * from '@giime/api'; // 用户通过giime/es/api 导入类型\r\nexport const install = installer.install;\r\nexport const version = installer.version;\r\nexport default installer;\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,MAAM,UAAU,SAAU,CAAA,QAAA;AAC1B,MAAM,UAAU,SAAU,CAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../packages/giime/index.ts"],"sourcesContent":["import installer from './defaults';\r\nimport './tailwind.css';\r\nexport * from '@giime/utils';\r\nexport * from '@giime/components';\r\nexport * from '@giime/hooks';\r\n// export * from '@giime/api'; // 用户通过giime/es/api 导入类型\r\nexport const install = installer.install;\r\nexport const version = installer.version;\r\nexport default installer;\r\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,MAAM,UAAU,SAAU,CAAA,QAAA;AAC1B,MAAM,UAAU,SAAU,CAAA;;;;"}
@@ -1 +1 @@
1
- export declare const version = "0.6.16";
1
+ export declare const version = "0.6.17";
@@ -1,4 +1,4 @@
1
- const version = "0.6.16";
1
+ const version = "0.6.17";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.6.16';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.6.17';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
@@ -5,3 +5,4 @@ export * from './useLoading';
5
5
  export * from './useTimeout';
6
6
  export * from './useRectSelect';
7
7
  export * from './usePageHtmlClass';
8
+ export * from './useComputedFields';
@@ -5,4 +5,5 @@ export { useLoading } from './useLoading/index.mjs';
5
5
  export { useTimeoutPromise } from './useTimeout/index.mjs';
6
6
  export { useRectSelect } from './useRectSelect/index.mjs';
7
7
  export { usePageHtmlClass } from './usePageHtmlClass/index.mjs';
8
+ export { useComputedFields } from './useComputedFields/index.mjs';
8
9
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -0,0 +1,15 @@
1
+ import { type Ref, type UnwrapRef } from 'vue';
2
+ /**
3
+ * 创建字段数组的computed属性
4
+ * @param queryParams 查询参数对象
5
+ * @param fields 字段名数组
6
+ * @returns computed数组
7
+ * @example
8
+ * // 价格区间
9
+ * const priceRange = useComputedFields(queryParams, ['min_price', 'max_price']);
10
+ * // 多个状态
11
+ * const statusList = useComputedFields(queryParams, ['status1', 'status2', 'status3']);
12
+ * // 多个时间点
13
+ * const timePoints = useComputedFields(queryParams, ['create_time_start', 'create_time_end']);
14
+ */
15
+ export declare const useComputedFields: <R = unknown, T extends Ref<Record<string, any>> = Ref<Record<string, any>>, K extends keyof UnwrapRef<T> & string = keyof UnwrapRef<T> & string>(queryParams: T, fields: K[]) => import("vue").WritableComputedRef<R extends unknown ? UnwrapRef<T>[K][] : R>;
@@ -0,0 +1,22 @@
1
+ import { computed } from 'vue';
2
+
3
+ const useComputedFields = (queryParams, fields) => {
4
+ return computed({
5
+ get: () => {
6
+ return fields.map((field) => queryParams.value[field]);
7
+ },
8
+ set: (val) => {
9
+ val = val ?? [];
10
+ if (!Array.isArray(val)) {
11
+ console.warn("Value array length does not match fields array length");
12
+ return;
13
+ }
14
+ fields.forEach((field, index) => {
15
+ queryParams.value[field] = val[index];
16
+ });
17
+ }
18
+ });
19
+ };
20
+
21
+ export { useComputedFields };
22
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../packages/hooks/base/useComputedFields/index.ts"],"sourcesContent":["import { type Ref, type UnwrapRef, computed } from 'vue';\n\n/**\n * 创建字段数组的computed属性\n * @param queryParams 查询参数对象\n * @param fields 字段名数组\n * @returns computed数组\n * @example\n * // 价格区间\n * const priceRange = useComputedFields(queryParams, ['min_price', 'max_price']);\n * // 多个状态\n * const statusList = useComputedFields(queryParams, ['status1', 'status2', 'status3']);\n * // 多个时间点\n * const timePoints = useComputedFields(queryParams, ['create_time_start', 'create_time_end']);\n */\nexport const useComputedFields = <\n R = unknown,\n T extends Ref<Record<string, any>> = Ref<Record<string, any>>,\n K extends keyof UnwrapRef<T> & string = keyof UnwrapRef<T> & string,\n>(\n queryParams: T,\n fields: K[],\n) => {\n type InferredType = R extends unknown ? Array<UnwrapRef<T>[K]> : R;\n\n return computed<InferredType>({\n get: () => {\n return fields.map(field => queryParams.value[field]) as unknown as InferredType;\n },\n set: (val: InferredType) => {\n val = (val ?? ([] as InferredType)) as InferredType & any[];\n if (!Array.isArray(val)) {\n console.warn('Value array length does not match fields array length');\n\n return;\n }\n fields.forEach((field, index) => {\n queryParams.value[field] = (val as Array<UnwrapRef<T>[K]>)[index];\n });\n },\n });\n};\n"],"names":[],"mappings":";;AAea,MAAA,iBAAA,GAAoB,CAK/B,WAAA,EACA,MACG,KAAA;AAGH,EAAA,OAAO,QAAuB,CAAA;AAAA,IAC5B,KAAK,MAAM;AACT,MAAA,OAAO,OAAO,GAAI,CAAA,CAAA,KAAA,KAAS,WAAY,CAAA,KAAA,CAAM,KAAK,CAAC,CAAA,CAAA;AAAA,KACrD;AAAA,IACA,GAAA,EAAK,CAAC,GAAsB,KAAA;AAC1B,MAAA,GAAA,GAAO,OAAQ,EAAC,CAAA;AAChB,MAAA,IAAI,CAAC,KAAA,CAAM,OAAQ,CAAA,GAAG,CAAG,EAAA;AACvB,QAAA,OAAA,CAAQ,KAAK,uDAAuD,CAAA,CAAA;AAEpE,QAAA,OAAA;AAAA,OACF;AACA,MAAO,MAAA,CAAA,OAAA,CAAQ,CAAC,KAAA,EAAO,KAAU,KAAA;AAC/B,QAAA,WAAA,CAAY,KAAM,CAAA,KAAK,CAAK,GAAA,GAAA,CAA+B,KAAK,CAAA,CAAA;AAAA,OACjE,CAAA,CAAA;AAAA,KACH;AAAA,GACD,CAAA,CAAA;AACH;;;;"}
@@ -7,6 +7,7 @@ export { useLoading } from './base/useLoading/index.mjs';
7
7
  export { useTimeoutPromise } from './base/useTimeout/index.mjs';
8
8
  export { useRectSelect } from './base/useRectSelect/index.mjs';
9
9
  export { usePageHtmlClass } from './base/usePageHtmlClass/index.mjs';
10
+ export { useComputedFields } from './base/useComputedFields/index.mjs';
10
11
  export { useLangListStore } from './store/useLangList/index.mjs';
11
12
  export { useLoginStore } from './store/useLogin/index.mjs';
12
13
  export { useCustomSettingsStore } from './store/useCustomSettings/index.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/es/index.css CHANGED
@@ -809,42 +809,16 @@ video {
809
809
  margin: 0;
810
810
  }
811
811
 
812
- .gm-upload-file {
813
- line-height: normal;
814
- }
815
- .gm-upload-file .el-checkbox {
816
- position: absolute;
817
- left: 10px;
818
- top: 0;
819
- z-index: 9;
820
- }
821
- .gm-upload-file .el-upload-list__item-file-name {
822
- line-height: normal;
823
- }
824
- .gm-upload-file .el-upload-dragger {
825
- padding: 0;
826
- border: none;
827
- width: 100%;
828
- height: 100%;
829
- display: flex;
830
- }
831
- .gm-upload-file .el-upload--picture-card {
832
- border: none;
833
- }
834
-
835
- .gm-upload-file-disabled .el-upload--picture-card {
836
- display: none;
837
- }
838
- .gm-upload-file-disabled .el-upload-list__item-status-label {
839
- display: none;
812
+ [data-v-7b6755e2] .gmSearchForm .el-form-item {
813
+ margin-right: 0;
814
+ margin-bottom: 4px;
840
815
  }
841
- .gm-upload-preview-dialog[data-v-29be6cd7] [data-v-29be6cd7] .el-dialog__body {
842
- padding: 0;
816
+ .gm-flex-center[data-v-2a79bac9] {
817
+ align-items: center;
843
818
  }
844
819
 
845
- .gm-upload-file-picture-card[data-v-29be6cd7] [data-v-29be6cd7] .el-upload-list__item, .gm-upload-file-picture-card[data-v-29be6cd7] [data-v-29be6cd7] .el-upload--picture-card {
846
- width: auto;
847
- height: auto;
820
+ .gm-flex-justify-between[data-v-2a79bac9] {
821
+ justify-content: space-between;
848
822
  }
849
823
  .circular[data-v-b391445c] {
850
824
  animation: loading-rotate-b391445c 2s linear infinite;
@@ -877,9 +851,13 @@ video {
877
851
  stroke-dashoffset: -120px;
878
852
  }
879
853
  }
880
- [data-v-7b6755e2] .gmSearchForm .el-form-item {
881
- margin-right: 0;
882
- margin-bottom: 4px;
854
+ .gm-upload-preview-dialog[data-v-29be6cd7] [data-v-29be6cd7] .el-dialog__body {
855
+ padding: 0;
856
+ }
857
+
858
+ .gm-upload-file-picture-card[data-v-29be6cd7] [data-v-29be6cd7] .el-upload-list__item, .gm-upload-file-picture-card[data-v-29be6cd7] [data-v-29be6cd7] .el-upload--picture-card {
859
+ width: auto;
860
+ height: auto;
883
861
  }
884
862
  .gm-number-interval-single[data-v-47a13fd0] {
885
863
  border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
@@ -899,13 +877,6 @@ video {
899
877
  .gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
900
878
  display: flex;
901
879
  }
902
- .gm-flex-center[data-v-2a79bac9] {
903
- align-items: center;
904
- }
905
-
906
- .gm-flex-justify-between[data-v-2a79bac9] {
907
- justify-content: space-between;
908
- }
909
880
  [data-v-668dc408] .gmTableNoBorder .el-table__body .el-table__cell {
910
881
  border-right: none;
911
882
  }
@@ -929,6 +900,35 @@ video {
929
900
  [data-v-668dc408] .gmTableNoBorder .el-table__border-left-patch {
930
901
  height: 0;
931
902
  }
903
+ .gm-upload-file {
904
+ line-height: normal;
905
+ }
906
+ .gm-upload-file .el-checkbox {
907
+ position: absolute;
908
+ left: 10px;
909
+ top: 0;
910
+ z-index: 9;
911
+ }
912
+ .gm-upload-file .el-upload-list__item-file-name {
913
+ line-height: normal;
914
+ }
915
+ .gm-upload-file .el-upload-dragger {
916
+ padding: 0;
917
+ border: none;
918
+ width: 100%;
919
+ height: 100%;
920
+ display: flex;
921
+ }
922
+ .gm-upload-file .el-upload--picture-card {
923
+ border: none;
924
+ }
925
+
926
+ .gm-upload-file-disabled .el-upload--picture-card {
927
+ display: none;
928
+ }
929
+ .gm-upload-file-disabled .el-upload-list__item-status-label {
930
+ display: none;
931
+ }
932
932
 
933
933
  .pagination-container[data-v-19230954] {
934
934
  background: #fff;
@@ -0,0 +1,2 @@
1
+ export * from './number';
2
+ export * from './url';
@@ -0,0 +1,3 @@
1
+ export { integerPattern, moneyPattern, nonNegativeIntegerPattern, nonNegativeNumberPattern, nonZeroNumberPattern, numberPattern, positiveIntegerPattern, positiveNumberPattern } from './number.mjs';
2
+ export { base64Pattern, domainPattern, emailPattern, urlPattern } from './url.mjs';
3
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * 整数(包括正整数、负整数和零)
3
+ * @example [-1, 0, 1, 123, -456]
4
+ */
5
+ export declare const integerPattern: RegExp;
6
+ /**
7
+ * 数字(包括正负整数和浮点数)
8
+ * @example [-1.1, 0, 1.2, 123.456, -456.789]
9
+ */
10
+ export declare const numberPattern: RegExp;
11
+ /**
12
+ * 正整数(不包括零)
13
+ * @example [1, 123, 456]
14
+ */
15
+ export declare const positiveIntegerPattern: RegExp;
16
+ /**
17
+ * 正整数和零(非负整数)
18
+ * @example [0, 1, 123, 456]
19
+ */
20
+ export declare const nonNegativeIntegerPattern: RegExp;
21
+ /**
22
+ * 正数(包括正整数和正浮点数,不包括零)
23
+ * @example [1, 1.2, 123.456]
24
+ */
25
+ export declare const positiveNumberPattern: RegExp;
26
+ /**
27
+ * 正数和零(非负数字 包括正整数、正浮点数和零)
28
+ * @example [0, 1, 1.2, 123.456]
29
+ */
30
+ export declare const nonNegativeNumberPattern: RegExp;
31
+ /**
32
+ * 金额数字 (正数和0,最多2位小数)
33
+ * @example [100, 0.99, 3, 234.32, 0, 900, 235.09]
34
+ */
35
+ export declare const moneyPattern: RegExp;
36
+ /**
37
+ * 非0数字
38
+ * @example [1, 1.2, 123.456]
39
+ */
40
+ export declare const nonZeroNumberPattern: RegExp;
@@ -0,0 +1,11 @@
1
+ const integerPattern = /^-?\d+$/;
2
+ const numberPattern = /^-?\d+(\.\d+)?$/;
3
+ const positiveIntegerPattern = /^[1-9]\d*$/;
4
+ const nonNegativeIntegerPattern = /^\d+$/;
5
+ const positiveNumberPattern = /^(?!0(\.0+)?$)\d+(\.\d+)?$/;
6
+ const nonNegativeNumberPattern = /^\d+(\.\d+)?$/;
7
+ const moneyPattern = /^\d+(\.\d{1,2})?$/;
8
+ const nonZeroNumberPattern = /^(?!0(\.0+)?$)\d+(\.\d+)?$/;
9
+
10
+ export { integerPattern, moneyPattern, nonNegativeIntegerPattern, nonNegativeNumberPattern, nonZeroNumberPattern, numberPattern, positiveIntegerPattern, positiveNumberPattern };
11
+ //# sourceMappingURL=number.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.mjs","sources":["../../../../../../packages/utils/src/regexPatterns/number.ts"],"sourcesContent":["/**\n * 整数(包括正整数、负整数和零)\n * @example [-1, 0, 1, 123, -456]\n */\nexport const integerPattern = /^-?\\d+$/;\n\n/**\n * 数字(包括正负整数和浮点数)\n * @example [-1.1, 0, 1.2, 123.456, -456.789]\n */\nexport const numberPattern = /^-?\\d+(\\.\\d+)?$/;\n\n/**\n * 正整数(不包括零)\n * @example [1, 123, 456]\n */\nexport const positiveIntegerPattern = /^[1-9]\\d*$/;\n\n/**\n * 正整数和零(非负整数)\n * @example [0, 1, 123, 456]\n */\nexport const nonNegativeIntegerPattern = /^\\d+$/;\n\n/**\n * 正数(包括正整数和正浮点数,不包括零)\n * @example [1, 1.2, 123.456]\n */\nexport const positiveNumberPattern = /^(?!0(\\.0+)?$)\\d+(\\.\\d+)?$/;\n\n/**\n * 正数和零(非负数字 包括正整数、正浮点数和零)\n * @example [0, 1, 1.2, 123.456]\n */\nexport const nonNegativeNumberPattern = /^\\d+(\\.\\d+)?$/;\n\n/**\n * 金额数字 (正数和0,最多2位小数)\n * @example [100, 0.99, 3, 234.32, 0, 900, 235.09]\n */\nexport const moneyPattern = /^\\d+(\\.\\d{1,2})?$/;\n\n/**\n * 非0数字\n * @example [1, 1.2, 123.456]\n */\nexport const nonZeroNumberPattern = /^(?!0(\\.0+)?$)\\d+(\\.\\d+)?$/;\n"],"names":[],"mappings":"AAIO,MAAM,cAAiB,GAAA,UAAA;AAMvB,MAAM,aAAgB,GAAA,kBAAA;AAMtB,MAAM,sBAAyB,GAAA,aAAA;AAM/B,MAAM,yBAA4B,GAAA,QAAA;AAMlC,MAAM,qBAAwB,GAAA,6BAAA;AAM9B,MAAM,wBAA2B,GAAA,gBAAA;AAMjC,MAAM,YAAe,GAAA,oBAAA;AAMrB,MAAM,oBAAuB,GAAA;;;;"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 网址(URL)
3
+ * @example ['www.qq.com', 'https://vuejs.org/v2/api/#v-model', 'www.qq.99', '//www.qq.com', 'www.腾讯.cs', 'ftp://baidu.qq', 'http://baidu.com', 'https://www.amap.com/search?id=BV10060895&city=420111&geoobj=113.207951%7C29.992557%7C115.785782%7C31.204369&query_type=IDQ&query=%E5%85%89%E8%B0%B7%E5%B9%BF%E5%9C%BA(%E5%9C%B0%E9%93%81%E7%AB%99)&zoom=10.15', '360.com:8080/vue/#/a=1&b=2'],
4
+ */
5
+ export declare const urlPattern: RegExp;
6
+ /**
7
+ * 域名(非网址,不包含协议)
8
+ * @example ['www.baidu.com','baidu.com', 'baidu.com.cn', 'api.baidu.com', 'nodejs.org', 'nodejs.cn']
9
+ */
10
+ export declare const domainPattern: RegExp;
11
+ /**
12
+ * email(邮箱)
13
+ * @example ['90203918@qq.com', 'nbilly@126.com', '汉字@qq.com']
14
+ */
15
+ export declare const emailPattern: RegExp;
16
+ /**
17
+ * base64格式
18
+ * @example ['data:image/gif;base64,xxxx==']
19
+ */
20
+ export declare const base64Pattern: RegExp;
@@ -0,0 +1,7 @@
1
+ const urlPattern = /^(((ht|f)tps?):\/\/)?([^!@#$%^&*?.\s-]([^!@#$%^&*?.\s]{0,63}[^!@#$%^&*?.\s])?\.)+[a-z]{2,6}\/?/;
2
+ const domainPattern = /^([0-9a-zA-Z-]{1,}\.)+([a-zA-Z]{2,})$/;
3
+ const emailPattern = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
4
+ const base64Pattern = /^\s*data:(?:[a-z]+\/[a-z0-9-+.]+(?:;[a-z-]+=[a-z0-9-]+)?)?(?:;base64)?,([a-z0-9!$&',()*+;=\-._~:@/?%\s]*?)\s*$/i;
5
+
6
+ export { base64Pattern, domainPattern, emailPattern, urlPattern };
7
+ //# sourceMappingURL=url.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url.mjs","sources":["../../../../../../packages/utils/src/regexPatterns/url.ts"],"sourcesContent":["/**\n * 网址(URL)\n * @example ['www.qq.com', 'https://vuejs.org/v2/api/#v-model', 'www.qq.99', '//www.qq.com', 'www.腾讯.cs', 'ftp://baidu.qq', 'http://baidu.com', 'https://www.amap.com/search?id=BV10060895&city=420111&geoobj=113.207951%7C29.992557%7C115.785782%7C31.204369&query_type=IDQ&query=%E5%85%89%E8%B0%B7%E5%B9%BF%E5%9C%BA(%E5%9C%B0%E9%93%81%E7%AB%99)&zoom=10.15', '360.com:8080/vue/#/a=1&b=2'],\n */\nexport const urlPattern = /^(((ht|f)tps?):\\/\\/)?([^!@#$%^&*?.\\s-]([^!@#$%^&*?.\\s]{0,63}[^!@#$%^&*?.\\s])?\\.)+[a-z]{2,6}\\/?/;\n\n/**\n * 域名(非网址,不包含协议)\n * @example ['www.baidu.com','baidu.com', 'baidu.com.cn', 'api.baidu.com', 'nodejs.org', 'nodejs.cn']\n */\nexport const domainPattern = /^([0-9a-zA-Z-]{1,}\\.)+([a-zA-Z]{2,})$/;\n\n/**\n * email(邮箱)\n * @example ['90203918@qq.com', 'nbilly@126.com', '汉字@qq.com']\n */\nexport const emailPattern =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n\n/**\n * base64格式\n * @example ['data:image/gif;base64,xxxx==']\n */\nexport const base64Pattern = /^\\s*data:(?:[a-z]+\\/[a-z0-9-+.]+(?:;[a-z-]+=[a-z0-9-]+)?)?(?:;base64)?,([a-z0-9!$&',()*+;=\\-._~:@/?%\\s]*?)\\s*$/i;\n"],"names":[],"mappings":"AAIO,MAAM,UAAa,GAAA,iGAAA;AAMnB,MAAM,aAAgB,GAAA,wCAAA;AAMtB,MAAM,YACX,GAAA,wJAAA;AAMK,MAAM,aAAgB,GAAA;;;;"}
@@ -7,4 +7,5 @@ import type { ModelRef } from 'vue';
7
7
  */
8
8
  export declare const useWatchModelChange: <T>(modelValue: ModelRef<T>, options: {
9
9
  prop: string;
10
+ noDefaultSync?: boolean;
10
11
  }) => void;
@@ -5,7 +5,7 @@ var constants = require('../constants.js');
5
5
 
6
6
  const useWatchModelChange = (modelValue, options) => {
7
7
  const queryParams = vue.inject(constants.queryParamsKey);
8
- if (queryParams) {
8
+ if (queryParams && !options.noDefaultSync) {
9
9
  modelValue.value = queryParams.value[options.prop];
10
10
  }
11
11
  vue.watch(modelValue, (newValue) => {
@@ -1 +1 @@
1
- {"version":3,"file":"useWatchModelChange.js","sources":["../../../../../../../../packages/components/src/composite/searchForm/composables/useWatchModelChange.ts"],"sourcesContent":["import { inject, watch } from 'vue';\r\nimport { queryParamsKey } from '../constants';\r\nimport type { ModelRef } from 'vue';\r\n\r\n/**\r\n * 监听modelValue变化 赋值给queryParams\r\n * 用于search-form item 不传v-model\r\n * @param modelValue\r\n * @param options\r\n */\r\nexport const useWatchModelChange = <T>(modelValue: ModelRef<T>, options: { prop: string }) => {\r\n const queryParams = inject(queryParamsKey);\r\n if (queryParams) {\r\n modelValue.value = queryParams.value[options.prop];\r\n }\r\n watch(modelValue, newValue => {\r\n if (queryParams) {\r\n queryParams.value[options.prop] = newValue;\r\n }\r\n });\r\n watch(\r\n () => queryParams?.value?.[options.prop],\r\n newValue => {\r\n modelValue.value = newValue;\r\n },\r\n );\r\n};\r\n"],"names":["inject","queryParamsKey","watch"],"mappings":";;;;;AAUa,MAAA,mBAAA,GAAsB,CAAI,UAAA,EAAyB,OAA8B,KAAA;AAC5F,EAAM,MAAA,WAAA,GAAcA,WAAOC,wBAAc,CAAA,CAAA;AACzC,EAAA,IAAI,WAAa,EAAA;AACf,IAAA,UAAA,CAAW,KAAQ,GAAA,WAAA,CAAY,KAAM,CAAA,OAAA,CAAQ,IAAI,CAAA,CAAA;AAAA,GACnD;AACA,EAAAC,SAAA,CAAM,YAAY,CAAY,QAAA,KAAA;AAC5B,IAAA,IAAI,WAAa,EAAA;AACf,MAAY,WAAA,CAAA,KAAA,CAAM,OAAQ,CAAA,IAAI,CAAI,GAAA,QAAA,CAAA;AAAA,KACpC;AAAA,GACD,CAAA,CAAA;AACD,EAAAA,SAAA;AAAA,IACE,MAAM,WAAA,EAAa,KAAQ,GAAA,OAAA,CAAQ,IAAI,CAAA;AAAA,IACvC,CAAY,QAAA,KAAA;AACV,MAAA,UAAA,CAAW,KAAQ,GAAA,QAAA,CAAA;AAAA,KACrB;AAAA,GACF,CAAA;AACF;;;;"}
1
+ {"version":3,"file":"useWatchModelChange.js","sources":["../../../../../../../../packages/components/src/composite/searchForm/composables/useWatchModelChange.ts"],"sourcesContent":["import { inject, watch } from 'vue';\nimport { queryParamsKey } from '../constants';\nimport type { ModelRef } from 'vue';\n\n/**\n * 监听modelValue变化 赋值给queryParams\n * 用于search-form item 不传v-model\n * @param modelValue\n * @param options\n */\nexport const useWatchModelChange = <T>(modelValue: ModelRef<T>, options: { prop: string; noDefaultSync?: boolean }) => {\n const queryParams = inject(queryParamsKey);\n if (queryParams && !options.noDefaultSync) {\n modelValue.value = queryParams.value[options.prop];\n }\n watch(modelValue, newValue => {\n if (queryParams) {\n queryParams.value[options.prop] = newValue;\n }\n });\n watch(\n () => queryParams?.value?.[options.prop],\n newValue => {\n modelValue.value = newValue;\n },\n );\n};\n"],"names":["inject","queryParamsKey","watch"],"mappings":";;;;;AAUa,MAAA,mBAAA,GAAsB,CAAI,UAAA,EAAyB,OAAuD,KAAA;AACrH,EAAM,MAAA,WAAA,GAAcA,WAAOC,wBAAc,CAAA,CAAA;AACzC,EAAI,IAAA,WAAA,IAAe,CAAC,OAAA,CAAQ,aAAe,EAAA;AACzC,IAAA,UAAA,CAAW,KAAQ,GAAA,WAAA,CAAY,KAAM,CAAA,OAAA,CAAQ,IAAI,CAAA,CAAA;AAAA,GACnD;AACA,EAAAC,SAAA,CAAM,YAAY,CAAY,QAAA,KAAA;AAC5B,IAAA,IAAI,WAAa,EAAA;AACf,MAAY,WAAA,CAAA,KAAA,CAAM,OAAQ,CAAA,IAAI,CAAI,GAAA,QAAA,CAAA;AAAA,KACpC;AAAA,GACD,CAAA,CAAA;AACD,EAAAA,SAAA;AAAA,IACE,MAAM,WAAA,EAAa,KAAQ,GAAA,OAAA,CAAQ,IAAI,CAAA;AAAA,IACvC,CAAY,QAAA,KAAA;AACV,MAAA,UAAA,CAAW,KAAQ,GAAA,QAAA,CAAA;AAAA,KACrB;AAAA,GACF,CAAA;AACF;;;;"}
@@ -20,6 +20,10 @@ declare const _default: import("vue").DefineComponent<{
20
20
  type: BooleanConstructor;
21
21
  default: false;
22
22
  };
23
+ noDefaultSync: {
24
+ type: BooleanConstructor;
25
+ default: false;
26
+ };
23
27
  }, {
24
28
  cascaderExposes: {
25
29
  getCheckedNodes: (leafOnly: boolean) => import("element-plus/es/components/cascader-panel/src/node").default[] | undefined;
@@ -448,6 +452,10 @@ declare const _default: import("vue").DefineComponent<{
448
452
  type: BooleanConstructor;
449
453
  default: false;
450
454
  };
455
+ noDefaultSync: {
456
+ type: BooleanConstructor;
457
+ default: false;
458
+ };
451
459
  }>> & {
452
460
  onChange?: ((...args: any[]) => any) | undefined;
453
461
  "onUpdate:modelValue"?: ((modelValue: import("element-plus/es/components/cascader-panel/src/node").CascaderValue | undefined) => any) | undefined;
@@ -455,6 +463,7 @@ declare const _default: import("vue").DefineComponent<{
455
463
  disabled: boolean;
456
464
  options: import("./searchFormCascader").SearchFormCascaderPropsOption[];
457
465
  label: string;
466
+ noDefaultSync: boolean;
458
467
  cascaderProps: import("element-plus").CascaderProps;
459
468
  }, {}>;
460
469
  export default _default;
@@ -26,7 +26,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
26
26
  const modelValue = vue.useModel(__props, "modelValue");
27
27
  const props = __props;
28
28
  const emit = __emit;
29
- useWatchModelChange.useWatchModelChange(modelValue, { prop: props.prop });
29
+ useWatchModelChange.useWatchModelChange(modelValue, { prop: props.prop, noDefaultSync: props.noDefaultSync });
30
30
  const onChange = (value) => {
31
31
  emit("change", value);
32
32
  };
@@ -1 +1 @@
1
- {"version":3,"file":"SearchFormCascader.vue2.js","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue"],"sourcesContent":["<template>\r\n <gm-form-item ref=\"formItemRef\" :prop=\"prop\">\r\n <gm-cascader\r\n ref=\"cascaderRef\"\r\n v-model=\"modelValue\"\r\n :options=\"options\"\r\n :props=\"{ ...cascaderProps, expandTrigger: 'hover' }\"\r\n clearable\r\n filterable\r\n :disabled=\"disabled\"\r\n collapse-tags\r\n collapse-tags-tooltip\r\n class=\"gm-w-full\"\r\n :placeholder=\"label\"\r\n @change=\"onChange\"\r\n />\r\n </gm-form-item>\r\n</template>\r\n<script lang=\"ts\" setup>\r\n// import { inject } from 'vue';\r\nimport { ref } from 'vue';\r\nimport { getGmObjExports } from '@giime/utils';\r\nimport { type FormItemInstance, formItemExposeNames } from '@giime/components/src/base/formItem';\r\nimport { type CascaderInstance, type CascaderProps, cascaderExposeNames } from '@giime/components/src/base/cascader';\r\nimport { useWatchModelChange } from '../../composables/useWatchModelChange';\r\n// import { searchFormHandleQueryKey } from '../../searchForm';\r\nimport { SearchFormCascaderName, searchFormCascaderEmits, searchFormCascaderProps } from './searchFormCascader';\r\nimport type { CascaderValue } from 'element-plus';\r\ndefineOptions({\r\n name: SearchFormCascaderName,\r\n});\r\nconst modelValue = defineModel<CascaderProps['modelValue'] | undefined>();\r\nconst props = defineProps(searchFormCascaderProps);\r\nconst emit = defineEmits(searchFormCascaderEmits);\r\nuseWatchModelChange(modelValue, { prop: props.prop });\r\n// const handleQuery = inject(searchFormHandleQueryKey);\r\nconst onChange = (value: CascaderValue) => {\r\n // handleQuery?.();\r\n emit('change', value);\r\n};\r\nconst cascaderRef = ref<CascaderInstance>();\r\nconst formItemRef = ref<FormItemInstance>();\r\nconst { exposeFns: cascaderFns } = getGmObjExports(cascaderRef, cascaderExposeNames);\r\nconst { exposeFns: formItemFns } = getGmObjExports(formItemRef, formItemExposeNames);\r\ndefineExpose({\r\n cascaderExposes: {\r\n ...cascaderFns,\r\n },\r\n formItemExposes: {\r\n ...formItemFns,\r\n },\r\n});\r\n</script>\r\n"],"names":["_useModel","useWatchModelChange","ref","getGmObjExports","cascaderExposeNames","formItemExposeNames"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,IAAM,MAAA,UAAA,GAAaA,YAAqD,CAAA,OAAA,EAAA,YAAA,CAAA,CAAA;AACxE,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAAC,uCAAA,CAAoB,UAAY,EAAA,EAAE,IAAM,EAAA,KAAA,CAAM,MAAM,CAAA,CAAA;AAEpD,IAAM,MAAA,QAAA,GAAW,CAAC,KAAyB,KAAA;AAEzC,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AAAA,KACtB,CAAA;AACA,IAAA,MAAM,cAAcC,OAAsB,EAAA,CAAA;AAC1C,IAAA,MAAM,cAAcA,OAAsB,EAAA,CAAA;AAC1C,IAAA,MAAM,EAAE,SAAW,EAAA,WAAA,EAAgB,GAAAC,yBAAA,CAAgB,aAAaC,4BAAmB,CAAA,CAAA;AACnF,IAAA,MAAM,EAAE,SAAW,EAAA,WAAA,EAAgB,GAAAD,yBAAA,CAAgB,aAAaE,4BAAmB,CAAA,CAAA;AACnF,IAAa,QAAA,CAAA;AAAA,MACX,eAAiB,EAAA;AAAA,QACf,GAAG,WAAA;AAAA,OACL;AAAA,MACA,eAAiB,EAAA;AAAA,QACf,GAAG,WAAA;AAAA,OACL;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SearchFormCascader.vue2.js","sources":["../../../../../../../../../packages/components/src/composite/searchForm/searchFormItems/cascader/SearchFormCascader.vue"],"sourcesContent":["<template>\n <gm-form-item ref=\"formItemRef\" :prop=\"prop\">\n <gm-cascader\n ref=\"cascaderRef\"\n v-model=\"modelValue\"\n :options=\"options\"\n :props=\"{ ...cascaderProps, expandTrigger: 'hover' }\"\n clearable\n filterable\n :disabled=\"disabled\"\n collapse-tags\n collapse-tags-tooltip\n class=\"gm-w-full\"\n :placeholder=\"label\"\n @change=\"onChange\"\n />\n </gm-form-item>\n</template>\n<script lang=\"ts\" setup>\n// import { inject } from 'vue';\nimport { ref } from 'vue';\nimport { getGmObjExports } from '@giime/utils';\nimport { type FormItemInstance, formItemExposeNames } from '@giime/components/src/base/formItem';\nimport { type CascaderInstance, type CascaderProps, cascaderExposeNames } from '@giime/components/src/base/cascader';\nimport { useWatchModelChange } from '../../composables/useWatchModelChange';\n// import { searchFormHandleQueryKey } from '../../searchForm';\nimport { SearchFormCascaderName, searchFormCascaderEmits, searchFormCascaderProps } from './searchFormCascader';\nimport type { CascaderValue } from 'element-plus';\ndefineOptions({\n name: SearchFormCascaderName,\n});\nconst modelValue = defineModel<CascaderProps['modelValue'] | undefined>();\nconst props = defineProps(searchFormCascaderProps);\nconst emit = defineEmits(searchFormCascaderEmits);\nuseWatchModelChange(modelValue, { prop: props.prop, noDefaultSync: props.noDefaultSync });\n// const handleQuery = inject(searchFormHandleQueryKey);\nconst onChange = (value: CascaderValue) => {\n // handleQuery?.();\n emit('change', value);\n};\nconst cascaderRef = ref<CascaderInstance>();\nconst formItemRef = ref<FormItemInstance>();\nconst { exposeFns: cascaderFns } = getGmObjExports(cascaderRef, cascaderExposeNames);\nconst { exposeFns: formItemFns } = getGmObjExports(formItemRef, formItemExposeNames);\ndefineExpose({\n cascaderExposes: {\n ...cascaderFns,\n },\n formItemExposes: {\n ...formItemFns,\n },\n});\n</script>\n"],"names":["_useModel","useWatchModelChange","ref","getGmObjExports","cascaderExposeNames","formItemExposeNames"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,IAAM,MAAA,UAAA,GAAaA,YAAoD,CAAA,OAAA,EAAA,YAAC,CAAA,CAAA;AACxE,IAAA,MAAM,KAAQ,GAAA,OAAA,CAAA;AACd,IAAA,MAAM,IAAO,GAAA,MAAA,CAAA;AACb,IAAoBC,uCAAA,CAAA,UAAA,EAAY,EAAE,IAAM,EAAA,KAAA,CAAM,MAAM,aAAe,EAAA,KAAA,CAAM,eAAe,CAAA,CAAA;AAExF,IAAM,MAAA,QAAA,GAAW,CAAC,KAAyB,KAAA;AAEzC,MAAA,IAAA,CAAK,UAAU,KAAK,CAAA,CAAA;AAAA,KACtB,CAAA;AACA,IAAA,MAAM,cAAcC,OAAsB,EAAA,CAAA;AAC1C,IAAA,MAAM,cAAcA,OAAsB,EAAA,CAAA;AAC1C,IAAA,MAAM,EAAE,SAAW,EAAA,WAAA,EAAgB,GAAAC,yBAAA,CAAgB,aAAaC,4BAAmB,CAAA,CAAA;AACnF,IAAA,MAAM,EAAE,SAAW,EAAA,WAAA,EAAgB,GAAAD,yBAAA,CAAgB,aAAaE,4BAAmB,CAAA,CAAA;AACnF,IAAa,QAAA,CAAA;AAAA,MACX,eAAiB,EAAA;AAAA,QACf,GAAG,WAAA;AAAA,OACL;AAAA,MACA,eAAiB,EAAA;AAAA,QACf,GAAG,WAAA;AAAA,OACL;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -21,6 +21,10 @@ export declare const GmSearchFormCascader: import("../../../../../../utils").SFC
21
21
  type: BooleanConstructor;
22
22
  default: false;
23
23
  };
24
+ noDefaultSync: {
25
+ type: BooleanConstructor;
26
+ default: false;
27
+ };
24
28
  }, {
25
29
  cascaderExposes: {
26
30
  getCheckedNodes: (leafOnly: boolean) => import("element-plus/es/components/cascader-panel/src/node.js").default[] | undefined;
@@ -449,6 +453,10 @@ export declare const GmSearchFormCascader: import("../../../../../../utils").SFC
449
453
  type: BooleanConstructor;
450
454
  default: false;
451
455
  };
456
+ noDefaultSync: {
457
+ type: BooleanConstructor;
458
+ default: false;
459
+ };
452
460
  }>> & {
453
461
  onChange?: ((...args: any[]) => any) | undefined;
454
462
  "onUpdate:modelValue"?: ((modelValue: import("element-plus/es/components/cascader-panel/src/node.js").CascaderValue | undefined) => any) | undefined;
@@ -456,6 +464,7 @@ export declare const GmSearchFormCascader: import("../../../../../../utils").SFC
456
464
  disabled: boolean;
457
465
  options: import("./searchFormCascader").SearchFormCascaderPropsOption[];
458
466
  label: string;
467
+ noDefaultSync: boolean;
459
468
  cascaderProps: import("element-plus").CascaderProps;
460
469
  }, {}>> & Record<string, any>;
461
470
  export type SearchFormCascaderInstance = InstanceType<typeof SearchFormCascader>;
@@ -33,6 +33,10 @@ export declare const searchFormCascaderProps: {
33
33
  type: BooleanConstructor;
34
34
  default: false;
35
35
  };
36
+ noDefaultSync: {
37
+ type: BooleanConstructor;
38
+ default: false;
39
+ };
36
40
  };
37
41
  export declare const searchFormCascaderEmits: {
38
42
  change: (...value: any[]) => boolean;
@@ -3,4 +3,9 @@ export declare const searchFormCommonProps: {
3
3
  type: BooleanConstructor;
4
4
  default: false;
5
5
  };
6
+ /**禁止同步默认值 */
7
+ noDefaultSync: {
8
+ type: BooleanConstructor;
9
+ default: false;
10
+ };
6
11
  };