giime 0.3.1 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css CHANGED
@@ -741,16 +741,28 @@ video {
741
741
  margin: 0;
742
742
  }
743
743
 
744
- [data-v-cdbd0818] .gmSearchForm .el-form-item {
745
- margin-right: 0;
746
- margin-bottom: 4px;
744
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__body .el-table__cell {
745
+ border-right: none;
747
746
  }
748
- .gm-flex-center[data-v-6829dac1] {
749
- align-items: center;
747
+
748
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__inner-wrapper:before {
749
+ height: 0;
750
750
  }
751
751
 
752
- .gm-flex-justify-between[data-v-6829dac1] {
753
- justify-content: space-between;
752
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
753
+ height: 0;
754
+ }
755
+
756
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:after {
757
+ height: 0;
758
+ }
759
+
760
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:before {
761
+ height: 0;
762
+ }
763
+
764
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__border-left-patch {
765
+ height: 0;
754
766
  }
755
767
  .gm-number-interval-single[data-v-47a13fd0] {
756
768
  border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
@@ -770,28 +782,16 @@ video {
770
782
  .gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
771
783
  display: flex;
772
784
  }
773
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__body .el-table__cell {
774
- border-right: none;
775
- }
776
-
777
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__inner-wrapper:before {
778
- height: 0;
779
- }
780
-
781
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
782
- height: 0;
783
- }
784
-
785
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:after {
786
- height: 0;
785
+ .gm-flex-center[data-v-6829dac1] {
786
+ align-items: center;
787
787
  }
788
788
 
789
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:before {
790
- height: 0;
789
+ .gm-flex-justify-between[data-v-6829dac1] {
790
+ justify-content: space-between;
791
791
  }
792
-
793
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__border-left-patch {
794
- height: 0;
792
+ [data-v-75032027] .gmSearchForm .el-form-item {
793
+ margin-right: 0;
794
+ margin-bottom: 4px;
795
795
  }
796
796
 
797
797
  .pagination-container[data-v-20ed99a8] {
@@ -2,7 +2,7 @@ import _sfc_main from './SearchForm.vue2.mjs';
2
2
  import './SearchForm.vue3.mjs';
3
3
  import _export_sfc from '../../../../_virtual/_plugin-vue_export-helper.mjs';
4
4
 
5
- var SearchForm = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-cdbd0818"], ["__file", "SearchForm.vue"]]);
5
+ var SearchForm = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-75032027"], ["__file", "SearchForm.vue"]]);
6
6
 
7
7
  export { SearchForm as default };
8
8
  //# sourceMappingURL=SearchForm.vue.mjs.map
@@ -1,5 +1,5 @@
1
1
  import { defineComponent, mergeModels, inject, useModel, provide, ref, computed, nextTick, resolveComponent, openBlock, createElementBlock, withDirectives, createVNode, withCtx, createElementVNode, normalizeClass, normalizeStyle, Fragment, renderList, createBlock, resolveDynamicComponent, mergeProps, renderSlot, unref, createTextVNode, toDisplayString, vShow } from 'vue';
2
- import { useElementVisibility, useElementSize } from '@vueuse/core';
2
+ import { useElementSize } from '@vueuse/core';
3
3
  import { TableCtxKey } from '../../../../constants/table.mjs';
4
4
  import { Search, Refresh, ArrowDown } from '@element-plus/icons-vue';
5
5
  import { searchFormProps, searchFormEmits, searchFormItemList } from './searchForm.mjs';
@@ -27,13 +27,12 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
27
27
  const emit = __emit;
28
28
  const queryDivRef = ref();
29
29
  const visibilityMarkRef = ref();
30
- const markIsVisibility = useElementVisibility(visibilityMarkRef);
31
- const { width: queryDivWidth } = useElementSize(queryDivRef);
30
+ const { width: queryDivWidth, height: queryDivHeight } = useElementSize(queryDivRef);
32
31
  const colsCount = computed(() => Math.floor(queryDivWidth.value / 269));
33
- const showMore = ref(false);
34
- const notShowMore = computed(() => showMore.value === false && markIsVisibility.value === true);
32
+ const showMore = ref(true);
33
+ const notShowShowMore = computed(() => showMore.value === true && queryDivHeight.value <= 70);
35
34
  const searchButtonItemStyle = computed(() => {
36
- if (notShowMore.value) {
35
+ if (notShowShowMore.value) {
37
36
  return {};
38
37
  }
39
38
  return {
@@ -123,7 +122,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
123
122
  createElementVNode(
124
123
  "div",
125
124
  {
126
- class: normalizeClass(["gm-flex gm-w-full", notShowMore.value ? "" : " gm-justify-end"])
125
+ class: normalizeClass(["gm-flex gm-w-full", notShowShowMore.value ? "" : " gm-justify-end"])
127
126
  },
128
127
  [
129
128
  createVNode(_component_gm_button, {
@@ -176,7 +175,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
176
175
  512
177
176
  /* NEED_PATCH */
178
177
  ), [
179
- [vShow, !notShowMore.value]
178
+ [vShow, !notShowShowMore.value]
180
179
  ])
181
180
  ],
182
181
  2
@@ -1 +1 @@
1
- {"version":3,"file":"SearchForm.vue2.mjs","sources":["../../../../../../../packages/components/src/composite/searchForm/SearchForm.vue"],"sourcesContent":["<script lang=\"ts\">\nconst itemGap = 8\n</script>\n<template>\r\n <div ref=\"queryDivRef\" class=\"gm-mb-5\">\r\n <gm-form v-show=\"showSearch\" ref=\"queryRef\" :model=\"queryParams\" :inline=\"true\" class=\"gmSearchForm\">\r\n <div :class=\"showMore ? '' : 'gm-h-[36px] gm-overflow-hidden'\">\r\n <div class=\"gm-relative gm-grid gm-w-full\" :style=\"{ gridTemplateColumns: `repeat(${colsCount}, minmax(0, 1fr))`, gap: itemGap + 'px' }\">\r\n <template v-for=\"(item, index) in optionsList\" :key=\"index\">\r\n <component :is=\"item.component\" v-bind=\"item.props\" v-model=\"queryParams[item.props.prop]\" />\r\n </template>\r\n <slot />\r\n <gm-form-item :style=\"searchButtonItemStyle\">\r\n <div class=\"gm-flex gm-w-full\" :class=\"notShowMore ? '' : ' gm-justify-end'\">\r\n <gm-button type=\"primary\" :icon=\"Search\" class=\"\" @click=\"handleQuery\">搜索</gm-button>\r\n <gm-button :icon=\"Refresh\" @click=\"resetQuery\">重置</gm-button>\r\n <gm-button v-show=\"!notShowMore\" type=\"primary\" text @click=\"handleShowMoreChange\">\r\n {{ showMore ? '缩起' : '展开' }} <gm-icon class=\"el-icon--right\"><ArrowDown /></gm-icon>\r\n </gm-button>\r\n </div>\r\n </gm-form-item>\r\n <div ref=\"visibilityMarkRef\" class=\"gm-absolute gm-bottom-3 gm-right-0 -gm-z-10 gm-h-1 gm-w-1\" />\r\n </div>\r\n </div>\r\n </gm-form>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { computed, inject, nextTick, provide, ref } from 'vue';\r\nimport { useElementSize, useElementVisibility } from '@vueuse/core';\r\nimport { TableCtxKey } from '@giime/constants/table';\r\nimport { ArrowDown, Refresh, Search } from '@element-plus/icons-vue';\r\nimport { searchFormEmits, searchFormItemList, searchFormProps } from './searchForm';\r\nimport { queryParamsKey, searchFormHandleQueryKey } from './constants';\r\nimport type { CSSProperties } from 'vue';\r\nimport type { FormInstance } from '../../base/form';\r\ndefineOptions({\r\n name: 'GmSearchForm',\r\n});\r\nconst tableCtx = inject(TableCtxKey, {});\r\n\r\nconst showSearch = defineModel<boolean>('showSearch', { default: true });\r\n\r\nconst queryParams = defineModel<Record<string, any>>('queryParams', { required: true });\r\n\r\nprovide(queryParamsKey, queryParams);\r\n\r\nconst props = defineProps(searchFormProps);\r\nconst emit = defineEmits(searchFormEmits);\r\n\r\nconst queryDivRef = ref<HTMLDivElement>();\r\nconst visibilityMarkRef = ref<HTMLDivElement>();\r\nconst markIsVisibility = useElementVisibility(visibilityMarkRef);\r\n\r\nconst { width: queryDivWidth } = useElementSize(queryDivRef);\r\n// 列个数\r\nconst colsCount = computed(() => Math.floor(queryDivWidth.value / 269));\r\nconst showMore = ref(false);\r\n// 当 showMore展开 为 false 时,标注为可见 则不显示展开按钮\r\nconst notShowMore = computed(() => showMore.value === false && markIsVisibility.value === true);\r\n\r\n/**搜索重置按钮组样式 */\r\nconst searchButtonItemStyle = computed<CSSProperties>(() => {\r\n if (notShowMore.value) {\r\n return {};\r\n }\r\n return {\r\n gridColumn: colsCount.value,\r\n gridRow: showMore.value ? undefined : 1,\r\n };\r\n});\r\nconst handleShowMoreChange = async () => {\r\n showMore.value = !showMore.value;\r\n // 手动触发 scroll 事件\r\n const scrollEvent = new Event('resize');\r\n await nextTick();\r\n // 手动触发事件\r\n window.dispatchEvent(scrollEvent);\r\n};\r\n\r\n// 通过json渲染组件\r\nconst optionsList = computed(() => {\r\n return props.options.map(it => {\r\n const findComponent = searchFormItemList.find(item => item.type === it.type);\r\n if (findComponent) {\r\n it.component = findComponent.component;\r\n }\r\n return it;\r\n });\r\n});\r\n\r\nconst queryRef = ref<FormInstance>();\r\n\r\nconst handleQuery = (...args: any[]) => {\r\n emit('handleQuery', ...args);\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\nprovide(searchFormHandleQueryKey, handleQuery);\r\n\r\nconst resetQuery = () => {\r\n queryRef.value?.resetFields();\r\n emit('resetQuery');\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmSearchForm .el-form-item) {\r\n margin-right: 0;\r\n margin-bottom: 4px;\r\n}\r\n</style>\r\n"],"names":["_useModel"],"mappings":"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"}
1
+ {"version":3,"file":"SearchForm.vue2.mjs","sources":["../../../../../../../packages/components/src/composite/searchForm/SearchForm.vue"],"sourcesContent":["<script lang=\"ts\">\nconst itemGap = 8\n</script>\n<template>\r\n <div ref=\"queryDivRef\" class=\"gm-mb-5\">\r\n <gm-form v-show=\"showSearch\" ref=\"queryRef\" :model=\"queryParams\" :inline=\"true\" class=\"gmSearchForm\">\r\n <div :class=\"showMore ? '' : 'gm-h-[36px] gm-overflow-hidden'\">\r\n <div class=\"gm-relative gm-grid gm-w-full\" :style=\"{ gridTemplateColumns: `repeat(${colsCount}, minmax(0, 1fr))`, gap: itemGap + 'px' }\">\r\n <template v-for=\"(item, index) in optionsList\" :key=\"index\">\r\n <component :is=\"item.component\" v-bind=\"item.props\" v-model=\"queryParams[item.props.prop]\" />\r\n </template>\r\n <slot />\r\n <gm-form-item :style=\"searchButtonItemStyle\">\r\n <div class=\"gm-flex gm-w-full\" :class=\"notShowShowMore ? '' : ' gm-justify-end'\">\r\n <gm-button type=\"primary\" :icon=\"Search\" class=\"\" @click=\"handleQuery\">搜索</gm-button>\r\n <gm-button :icon=\"Refresh\" @click=\"resetQuery\">重置</gm-button>\r\n <gm-button v-show=\"!notShowShowMore\" type=\"primary\" text @click=\"handleShowMoreChange\">\r\n {{ showMore ? '缩起' : '展开' }} <gm-icon class=\"el-icon--right\"><ArrowDown /></gm-icon>\r\n </gm-button>\r\n </div>\r\n </gm-form-item>\r\n <div ref=\"visibilityMarkRef\" class=\"gm-absolute gm-bottom-3 gm-right-0 -gm-z-10 gm-h-1 gm-w-1\" />\r\n </div>\r\n </div>\r\n </gm-form>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { computed, inject, nextTick, provide, ref } from 'vue';\r\nimport { useElementSize } from '@vueuse/core';\r\nimport { TableCtxKey } from '@giime/constants/table';\r\nimport { ArrowDown, Refresh, Search } from '@element-plus/icons-vue';\r\nimport { searchFormEmits, searchFormItemList, searchFormProps } from './searchForm';\r\nimport { queryParamsKey, searchFormHandleQueryKey } from './constants';\r\nimport type { CSSProperties } from 'vue';\r\nimport type { FormInstance } from '../../base/form';\r\ndefineOptions({\r\n name: 'GmSearchForm',\r\n});\r\nconst tableCtx = inject(TableCtxKey, {});\r\n\r\nconst showSearch = defineModel<boolean>('showSearch', { default: true });\r\n\r\nconst queryParams = defineModel<Record<string, any>>('queryParams', { required: true });\r\n\r\nprovide(queryParamsKey, queryParams);\r\n\r\nconst props = defineProps(searchFormProps);\r\nconst emit = defineEmits(searchFormEmits);\r\n\r\nconst queryDivRef = ref<HTMLDivElement>();\r\nconst visibilityMarkRef = ref<HTMLDivElement>();\r\n// const markIsVisibility = useElementVisibility(visibilityMarkRef);\r\n\r\nconst { width: queryDivWidth, height: queryDivHeight } = useElementSize(queryDivRef);\r\n// 列个数\r\nconst colsCount = computed(() => Math.floor(queryDivWidth.value / 269));\r\nconst showMore = ref(true);\r\n// 当 showMore展开 且高度为60时,不显示展开按钮\r\nconst notShowShowMore = computed(() => showMore.value === true && queryDivHeight.value <= 70);\r\n\r\n/**搜索重置按钮组样式 */\r\nconst searchButtonItemStyle = computed<CSSProperties>(() => {\r\n if (notShowShowMore.value) {\r\n return {};\r\n }\r\n return {\r\n gridColumn: colsCount.value,\r\n gridRow: showMore.value ? undefined : 1,\r\n };\r\n});\r\nconst handleShowMoreChange = async () => {\r\n showMore.value = !showMore.value;\r\n // 手动触发 scroll 事件\r\n const scrollEvent = new Event('resize');\r\n await nextTick();\r\n // 手动触发事件\r\n window.dispatchEvent(scrollEvent);\r\n};\r\n\r\n// 通过json渲染组件\r\nconst optionsList = computed(() => {\r\n return props.options.map(it => {\r\n const findComponent = searchFormItemList.find(item => item.type === it.type);\r\n if (findComponent) {\r\n it.component = findComponent.component;\r\n }\r\n return it;\r\n });\r\n});\r\n\r\nconst queryRef = ref<FormInstance>();\r\n\r\nconst handleQuery = (...args: any[]) => {\r\n emit('handleQuery', ...args);\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\nprovide(searchFormHandleQueryKey, handleQuery);\r\n\r\nconst resetQuery = () => {\r\n queryRef.value?.resetFields();\r\n emit('resetQuery');\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmSearchForm .el-form-item) {\r\n margin-right: 0;\r\n margin-bottom: 4px;\r\n}\r\n</style>\r\n"],"names":["_useModel"],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const version = "0.3.1";
1
+ export declare const version = "0.3.3";
@@ -1,4 +1,4 @@
1
- const version = "0.3.0";
1
+ const version = "0.3.3";
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.3.0';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.3.3';\n"],"names":[],"mappings":"AAAO,MAAM,OAAU,GAAA;;;;"}
package/es/index.css CHANGED
@@ -741,16 +741,28 @@ video {
741
741
  margin: 0;
742
742
  }
743
743
 
744
- [data-v-cdbd0818] .gmSearchForm .el-form-item {
745
- margin-right: 0;
746
- margin-bottom: 4px;
744
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__body .el-table__cell {
745
+ border-right: none;
747
746
  }
748
- .gm-flex-center[data-v-6829dac1] {
749
- align-items: center;
747
+
748
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__inner-wrapper:before {
749
+ height: 0;
750
750
  }
751
751
 
752
- .gm-flex-justify-between[data-v-6829dac1] {
753
- justify-content: space-between;
752
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
753
+ height: 0;
754
+ }
755
+
756
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:after {
757
+ height: 0;
758
+ }
759
+
760
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:before {
761
+ height: 0;
762
+ }
763
+
764
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__border-left-patch {
765
+ height: 0;
754
766
  }
755
767
  .gm-number-interval-single[data-v-47a13fd0] {
756
768
  border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
@@ -770,28 +782,16 @@ video {
770
782
  .gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
771
783
  display: flex;
772
784
  }
773
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__body .el-table__cell {
774
- border-right: none;
775
- }
776
-
777
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__inner-wrapper:before {
778
- height: 0;
779
- }
780
-
781
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
782
- height: 0;
783
- }
784
-
785
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:after {
786
- height: 0;
785
+ .gm-flex-center[data-v-6829dac1] {
786
+ align-items: center;
787
787
  }
788
788
 
789
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:before {
790
- height: 0;
789
+ .gm-flex-justify-between[data-v-6829dac1] {
790
+ justify-content: space-between;
791
791
  }
792
-
793
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__border-left-patch {
794
- height: 0;
792
+ [data-v-75032027] .gmSearchForm .el-form-item {
793
+ margin-right: 0;
794
+ margin-bottom: 4px;
795
795
  }
796
796
 
797
797
  .pagination-container[data-v-20ed99a8] {
package/global.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  // GlobalComponents for Volar
2
+ // https://github.com/vuejs/language-tools/issues/4501#issuecomment-2193697696
2
3
  type GiimeGlobalRuntimeCore = import('@vue/runtime-core').GlobalComponents;
3
4
  declare module 'vue' {
4
5
  export interface GlobalComponents extends GiimeGlobalRuntimeCore {
@@ -6,7 +6,7 @@ var SearchForm_vue_vue_type_script_setup_true_lang = require('./SearchForm.vue2.
6
6
  require('./SearchForm.vue3.js');
7
7
  var _pluginVue_exportHelper = require('../../../../_virtual/_plugin-vue_export-helper.js');
8
8
 
9
- var SearchForm = /* @__PURE__ */ _pluginVue_exportHelper.default(SearchForm_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-cdbd0818"], ["__file", "SearchForm.vue"]]);
9
+ var SearchForm = /* @__PURE__ */ _pluginVue_exportHelper.default(SearchForm_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-75032027"], ["__file", "SearchForm.vue"]]);
10
10
 
11
11
  exports.default = SearchForm;
12
12
  //# sourceMappingURL=SearchForm.vue.js.map
@@ -31,13 +31,12 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
31
31
  const emit = __emit;
32
32
  const queryDivRef = vue.ref();
33
33
  const visibilityMarkRef = vue.ref();
34
- const markIsVisibility = core.useElementVisibility(visibilityMarkRef);
35
- const { width: queryDivWidth } = core.useElementSize(queryDivRef);
34
+ const { width: queryDivWidth, height: queryDivHeight } = core.useElementSize(queryDivRef);
36
35
  const colsCount = vue.computed(() => Math.floor(queryDivWidth.value / 269));
37
- const showMore = vue.ref(false);
38
- const notShowMore = vue.computed(() => showMore.value === false && markIsVisibility.value === true);
36
+ const showMore = vue.ref(true);
37
+ const notShowShowMore = vue.computed(() => showMore.value === true && queryDivHeight.value <= 70);
39
38
  const searchButtonItemStyle = vue.computed(() => {
40
- if (notShowMore.value) {
39
+ if (notShowShowMore.value) {
41
40
  return {};
42
41
  }
43
42
  return {
@@ -127,7 +126,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
127
126
  vue.createElementVNode(
128
127
  "div",
129
128
  {
130
- class: vue.normalizeClass(["gm-flex gm-w-full", notShowMore.value ? "" : " gm-justify-end"])
129
+ class: vue.normalizeClass(["gm-flex gm-w-full", notShowShowMore.value ? "" : " gm-justify-end"])
131
130
  },
132
131
  [
133
132
  vue.createVNode(_component_gm_button, {
@@ -180,7 +179,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
180
179
  512
181
180
  /* NEED_PATCH */
182
181
  ), [
183
- [vue.vShow, !notShowMore.value]
182
+ [vue.vShow, !notShowShowMore.value]
184
183
  ])
185
184
  ],
186
185
  2
@@ -1 +1 @@
1
- {"version":3,"file":"SearchForm.vue2.js","sources":["../../../../../../../packages/components/src/composite/searchForm/SearchForm.vue"],"sourcesContent":["<script lang=\"ts\">\nconst itemGap = 8\n</script>\n<template>\r\n <div ref=\"queryDivRef\" class=\"gm-mb-5\">\r\n <gm-form v-show=\"showSearch\" ref=\"queryRef\" :model=\"queryParams\" :inline=\"true\" class=\"gmSearchForm\">\r\n <div :class=\"showMore ? '' : 'gm-h-[36px] gm-overflow-hidden'\">\r\n <div class=\"gm-relative gm-grid gm-w-full\" :style=\"{ gridTemplateColumns: `repeat(${colsCount}, minmax(0, 1fr))`, gap: itemGap + 'px' }\">\r\n <template v-for=\"(item, index) in optionsList\" :key=\"index\">\r\n <component :is=\"item.component\" v-bind=\"item.props\" v-model=\"queryParams[item.props.prop]\" />\r\n </template>\r\n <slot />\r\n <gm-form-item :style=\"searchButtonItemStyle\">\r\n <div class=\"gm-flex gm-w-full\" :class=\"notShowMore ? '' : ' gm-justify-end'\">\r\n <gm-button type=\"primary\" :icon=\"Search\" class=\"\" @click=\"handleQuery\">搜索</gm-button>\r\n <gm-button :icon=\"Refresh\" @click=\"resetQuery\">重置</gm-button>\r\n <gm-button v-show=\"!notShowMore\" type=\"primary\" text @click=\"handleShowMoreChange\">\r\n {{ showMore ? '缩起' : '展开' }} <gm-icon class=\"el-icon--right\"><ArrowDown /></gm-icon>\r\n </gm-button>\r\n </div>\r\n </gm-form-item>\r\n <div ref=\"visibilityMarkRef\" class=\"gm-absolute gm-bottom-3 gm-right-0 -gm-z-10 gm-h-1 gm-w-1\" />\r\n </div>\r\n </div>\r\n </gm-form>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { computed, inject, nextTick, provide, ref } from 'vue';\r\nimport { useElementSize, useElementVisibility } from '@vueuse/core';\r\nimport { TableCtxKey } from '@giime/constants/table';\r\nimport { ArrowDown, Refresh, Search } from '@element-plus/icons-vue';\r\nimport { searchFormEmits, searchFormItemList, searchFormProps } from './searchForm';\r\nimport { queryParamsKey, searchFormHandleQueryKey } from './constants';\r\nimport type { CSSProperties } from 'vue';\r\nimport type { FormInstance } from '../../base/form';\r\ndefineOptions({\r\n name: 'GmSearchForm',\r\n});\r\nconst tableCtx = inject(TableCtxKey, {});\r\n\r\nconst showSearch = defineModel<boolean>('showSearch', { default: true });\r\n\r\nconst queryParams = defineModel<Record<string, any>>('queryParams', { required: true });\r\n\r\nprovide(queryParamsKey, queryParams);\r\n\r\nconst props = defineProps(searchFormProps);\r\nconst emit = defineEmits(searchFormEmits);\r\n\r\nconst queryDivRef = ref<HTMLDivElement>();\r\nconst visibilityMarkRef = ref<HTMLDivElement>();\r\nconst markIsVisibility = useElementVisibility(visibilityMarkRef);\r\n\r\nconst { width: queryDivWidth } = useElementSize(queryDivRef);\r\n// 列个数\r\nconst colsCount = computed(() => Math.floor(queryDivWidth.value / 269));\r\nconst showMore = ref(false);\r\n// 当 showMore展开 为 false 时,标注为可见 则不显示展开按钮\r\nconst notShowMore = computed(() => showMore.value === false && markIsVisibility.value === true);\r\n\r\n/**搜索重置按钮组样式 */\r\nconst searchButtonItemStyle = computed<CSSProperties>(() => {\r\n if (notShowMore.value) {\r\n return {};\r\n }\r\n return {\r\n gridColumn: colsCount.value,\r\n gridRow: showMore.value ? undefined : 1,\r\n };\r\n});\r\nconst handleShowMoreChange = async () => {\r\n showMore.value = !showMore.value;\r\n // 手动触发 scroll 事件\r\n const scrollEvent = new Event('resize');\r\n await nextTick();\r\n // 手动触发事件\r\n window.dispatchEvent(scrollEvent);\r\n};\r\n\r\n// 通过json渲染组件\r\nconst optionsList = computed(() => {\r\n return props.options.map(it => {\r\n const findComponent = searchFormItemList.find(item => item.type === it.type);\r\n if (findComponent) {\r\n it.component = findComponent.component;\r\n }\r\n return it;\r\n });\r\n});\r\n\r\nconst queryRef = ref<FormInstance>();\r\n\r\nconst handleQuery = (...args: any[]) => {\r\n emit('handleQuery', ...args);\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\nprovide(searchFormHandleQueryKey, handleQuery);\r\n\r\nconst resetQuery = () => {\r\n queryRef.value?.resetFields();\r\n emit('resetQuery');\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmSearchForm .el-form-item) {\r\n margin-right: 0;\r\n margin-bottom: 4px;\r\n}\r\n</style>\r\n"],"names":["inject","TableCtxKey","_useModel","provide","queryParamsKey","ref","useElementVisibility","useElementSize","computed","nextTick","searchFormItemList","searchFormHandleQueryKey"],"mappings":"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"}
1
+ {"version":3,"file":"SearchForm.vue2.js","sources":["../../../../../../../packages/components/src/composite/searchForm/SearchForm.vue"],"sourcesContent":["<script lang=\"ts\">\nconst itemGap = 8\n</script>\n<template>\r\n <div ref=\"queryDivRef\" class=\"gm-mb-5\">\r\n <gm-form v-show=\"showSearch\" ref=\"queryRef\" :model=\"queryParams\" :inline=\"true\" class=\"gmSearchForm\">\r\n <div :class=\"showMore ? '' : 'gm-h-[36px] gm-overflow-hidden'\">\r\n <div class=\"gm-relative gm-grid gm-w-full\" :style=\"{ gridTemplateColumns: `repeat(${colsCount}, minmax(0, 1fr))`, gap: itemGap + 'px' }\">\r\n <template v-for=\"(item, index) in optionsList\" :key=\"index\">\r\n <component :is=\"item.component\" v-bind=\"item.props\" v-model=\"queryParams[item.props.prop]\" />\r\n </template>\r\n <slot />\r\n <gm-form-item :style=\"searchButtonItemStyle\">\r\n <div class=\"gm-flex gm-w-full\" :class=\"notShowShowMore ? '' : ' gm-justify-end'\">\r\n <gm-button type=\"primary\" :icon=\"Search\" class=\"\" @click=\"handleQuery\">搜索</gm-button>\r\n <gm-button :icon=\"Refresh\" @click=\"resetQuery\">重置</gm-button>\r\n <gm-button v-show=\"!notShowShowMore\" type=\"primary\" text @click=\"handleShowMoreChange\">\r\n {{ showMore ? '缩起' : '展开' }} <gm-icon class=\"el-icon--right\"><ArrowDown /></gm-icon>\r\n </gm-button>\r\n </div>\r\n </gm-form-item>\r\n <div ref=\"visibilityMarkRef\" class=\"gm-absolute gm-bottom-3 gm-right-0 -gm-z-10 gm-h-1 gm-w-1\" />\r\n </div>\r\n </div>\r\n </gm-form>\r\n </div>\r\n</template>\r\n<script setup lang=\"ts\">\r\nimport { computed, inject, nextTick, provide, ref } from 'vue';\r\nimport { useElementSize } from '@vueuse/core';\r\nimport { TableCtxKey } from '@giime/constants/table';\r\nimport { ArrowDown, Refresh, Search } from '@element-plus/icons-vue';\r\nimport { searchFormEmits, searchFormItemList, searchFormProps } from './searchForm';\r\nimport { queryParamsKey, searchFormHandleQueryKey } from './constants';\r\nimport type { CSSProperties } from 'vue';\r\nimport type { FormInstance } from '../../base/form';\r\ndefineOptions({\r\n name: 'GmSearchForm',\r\n});\r\nconst tableCtx = inject(TableCtxKey, {});\r\n\r\nconst showSearch = defineModel<boolean>('showSearch', { default: true });\r\n\r\nconst queryParams = defineModel<Record<string, any>>('queryParams', { required: true });\r\n\r\nprovide(queryParamsKey, queryParams);\r\n\r\nconst props = defineProps(searchFormProps);\r\nconst emit = defineEmits(searchFormEmits);\r\n\r\nconst queryDivRef = ref<HTMLDivElement>();\r\nconst visibilityMarkRef = ref<HTMLDivElement>();\r\n// const markIsVisibility = useElementVisibility(visibilityMarkRef);\r\n\r\nconst { width: queryDivWidth, height: queryDivHeight } = useElementSize(queryDivRef);\r\n// 列个数\r\nconst colsCount = computed(() => Math.floor(queryDivWidth.value / 269));\r\nconst showMore = ref(true);\r\n// 当 showMore展开 且高度为60时,不显示展开按钮\r\nconst notShowShowMore = computed(() => showMore.value === true && queryDivHeight.value <= 70);\r\n\r\n/**搜索重置按钮组样式 */\r\nconst searchButtonItemStyle = computed<CSSProperties>(() => {\r\n if (notShowShowMore.value) {\r\n return {};\r\n }\r\n return {\r\n gridColumn: colsCount.value,\r\n gridRow: showMore.value ? undefined : 1,\r\n };\r\n});\r\nconst handleShowMoreChange = async () => {\r\n showMore.value = !showMore.value;\r\n // 手动触发 scroll 事件\r\n const scrollEvent = new Event('resize');\r\n await nextTick();\r\n // 手动触发事件\r\n window.dispatchEvent(scrollEvent);\r\n};\r\n\r\n// 通过json渲染组件\r\nconst optionsList = computed(() => {\r\n return props.options.map(it => {\r\n const findComponent = searchFormItemList.find(item => item.type === it.type);\r\n if (findComponent) {\r\n it.component = findComponent.component;\r\n }\r\n return it;\r\n });\r\n});\r\n\r\nconst queryRef = ref<FormInstance>();\r\n\r\nconst handleQuery = (...args: any[]) => {\r\n emit('handleQuery', ...args);\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\nprovide(searchFormHandleQueryKey, handleQuery);\r\n\r\nconst resetQuery = () => {\r\n queryRef.value?.resetFields();\r\n emit('resetQuery');\r\n tableCtx?.tableRef?.value?.scrollTo({ top: 0, behavior: 'smooth' });\r\n tableCtx.tableV2Ref?.value?.scrollTo({ scrollLeft: 0, scrollTop: 0 });\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n:deep(.gmSearchForm .el-form-item) {\r\n margin-right: 0;\r\n margin-bottom: 4px;\r\n}\r\n</style>\r\n"],"names":["inject","TableCtxKey","_useModel","provide","queryParamsKey","ref","useElementSize","computed","nextTick","searchFormItemList","searchFormHandleQueryKey"],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const version = "0.3.1";
1
+ export declare const version = "0.3.3";
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const version = "0.3.0";
3
+ const version = "0.3.3";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.3.0';\n"],"names":[],"mappings":";;AAAO,MAAM,OAAU,GAAA;;;;"}
1
+ {"version":3,"file":"version.js","sources":["../../../../packages/giime/version.ts"],"sourcesContent":["export const version = '0.3.3';\n"],"names":[],"mappings":";;AAAO,MAAM,OAAU,GAAA;;;;"}
package/lib/index.css CHANGED
@@ -741,16 +741,28 @@ video {
741
741
  margin: 0;
742
742
  }
743
743
 
744
- [data-v-cdbd0818] .gmSearchForm .el-form-item {
745
- margin-right: 0;
746
- margin-bottom: 4px;
744
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__body .el-table__cell {
745
+ border-right: none;
747
746
  }
748
- .gm-flex-center[data-v-6829dac1] {
749
- align-items: center;
747
+
748
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__inner-wrapper:before {
749
+ height: 0;
750
750
  }
751
751
 
752
- .gm-flex-justify-between[data-v-6829dac1] {
753
- justify-content: space-between;
752
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
753
+ height: 0;
754
+ }
755
+
756
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:after {
757
+ height: 0;
758
+ }
759
+
760
+ [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:before {
761
+ height: 0;
762
+ }
763
+
764
+ [data-v-2f3b2b52] .gmTableNoBorder .el-table__border-left-patch {
765
+ height: 0;
754
766
  }
755
767
  .gm-number-interval-single[data-v-47a13fd0] {
756
768
  border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
@@ -770,28 +782,16 @@ video {
770
782
  .gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
771
783
  display: flex;
772
784
  }
773
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__body .el-table__cell {
774
- border-right: none;
775
- }
776
-
777
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__inner-wrapper:before {
778
- height: 0;
779
- }
780
-
781
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border .el-table__inner-wrapper:after {
782
- height: 0;
783
- }
784
-
785
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:after {
786
- height: 0;
785
+ .gm-flex-center[data-v-6829dac1] {
786
+ align-items: center;
787
787
  }
788
788
 
789
- [data-v-2f3b2b52] .gmTableNoBorder.el-table--border:before {
790
- height: 0;
789
+ .gm-flex-justify-between[data-v-6829dac1] {
790
+ justify-content: space-between;
791
791
  }
792
-
793
- [data-v-2f3b2b52] .gmTableNoBorder .el-table__border-left-patch {
794
- height: 0;
792
+ [data-v-75032027] .gmSearchForm .el-form-item {
793
+ margin-right: 0;
794
+ margin-bottom: 4px;
795
795
  }
796
796
 
797
797
  .pagination-container[data-v-20ed99a8] {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "giime",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "A Component Library for Vue 3",
5
5
  "keywords": [
6
6
  "giime",