@hbdlzy/ui-core 0.1.1 → 0.1.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/README.md +37 -2
- package/components.manifest.json +198 -161
- package/dist/components/BaseCard/BaseCard.types.d.ts +36 -0
- package/dist/components/BaseCard/BaseCard.vue.d.ts +122 -0
- package/dist/components/BaseCard/index.d.ts +3 -0
- package/dist/components/BaseEChart/BaseEChart.types.d.ts +26 -0
- package/dist/components/BaseEChart/BaseEChart.vue.d.ts +66 -0
- package/dist/components/BaseEChart/index.d.ts +3 -0
- package/dist/components/BaseExportButton/BaseExportButton.types.d.ts +21 -0
- package/dist/components/BaseExportButton/BaseExportButton.utils.d.ts +4 -0
- package/dist/components/BaseExportButton/BaseExportButton.vue.d.ts +128 -0
- package/dist/components/BaseExportButton/index.d.ts +5 -0
- package/dist/components/BaseTable/BaseTable.types.d.ts +163 -0
- package/dist/components/BaseTable/BaseTable.vue.d.ts +157 -0
- package/dist/components/BaseTable/index.d.ts +3 -0
- package/dist/components/OutlinedCascader/OutlinedCascader.types.d.ts +25 -0
- package/dist/components/OutlinedCascader/OutlinedCascader.vue.d.ts +85 -0
- package/dist/components/OutlinedCascader/index.d.ts +3 -0
- package/dist/components/OutlinedDatePicker/OutlinedDatePicker.types.d.ts +27 -0
- package/dist/components/OutlinedDatePicker/OutlinedDatePicker.vue.d.ts +88 -0
- package/dist/components/OutlinedDatePicker/index.d.ts +3 -0
- package/dist/components/OutlinedDateTimePicker/OutlinedDateTimePicker.types.d.ts +26 -0
- package/dist/components/OutlinedDateTimePicker/OutlinedDateTimePicker.vue.d.ts +97 -0
- package/dist/components/OutlinedDateTimePicker/index.d.ts +3 -0
- package/dist/components/OutlinedInput/OutlinedInput.types.d.ts +29 -0
- package/dist/components/OutlinedInput/OutlinedInput.vue.d.ts +97 -0
- package/dist/components/OutlinedInput/index.d.ts +3 -0
- package/dist/components/OutlinedSelect/OutlinedSelect.types.d.ts +38 -0
- package/dist/components/OutlinedSelect/OutlinedSelect.vue.d.ts +116 -0
- package/dist/components/OutlinedSelect/index.d.ts +3 -0
- package/dist/components/OutlinedTimePicker/OutlinedTimePicker.types.d.ts +28 -0
- package/dist/components/OutlinedTimePicker/OutlinedTimePicker.vue.d.ts +94 -0
- package/dist/components/OutlinedTimePicker/index.d.ts +3 -0
- package/dist/components/OutlinedTreeSelect/OutlinedTreeSelect.types.d.ts +46 -0
- package/dist/components/OutlinedTreeSelect/OutlinedTreeSelect.vue.d.ts +137 -0
- package/dist/components/OutlinedTreeSelect/index.d.ts +3 -0
- package/dist/echarts/index.d.ts +9 -0
- package/dist/excel/exportExcel.d.ts +18 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +26 -0
- package/dist/index.js +2181 -41
- package/dist/style.css +1 -1
- package/package.json +6 -4
- package/src/components/BaseCard/BaseCard.types.d.ts +36 -0
- package/src/components/BaseCard/BaseCard.vue.d.ts +122 -0
- package/src/components/BaseCard/index.d.ts +3 -0
- package/src/components/BaseEChart/BaseEChart.types.d.ts +26 -0
- package/src/components/BaseEChart/BaseEChart.vue.d.ts +66 -0
- package/src/components/BaseEChart/index.d.ts +3 -0
- package/src/components/BaseExportButton/BaseExportButton.types.d.ts +21 -0
- package/src/components/BaseExportButton/BaseExportButton.utils.d.ts +4 -0
- package/src/components/BaseExportButton/BaseExportButton.vue.d.ts +128 -0
- package/src/components/BaseExportButton/index.d.ts +5 -0
- package/src/components/BaseTable/BaseTable.types.d.ts +163 -0
- package/src/components/BaseTable/BaseTable.types.ts +12 -0
- package/src/components/BaseTable/BaseTable.vue +412 -13
- package/src/components/BaseTable/BaseTable.vue.d.ts +157 -0
- package/src/components/BaseTable/README.md +106 -120
- package/src/components/BaseTable/index.d.ts +3 -0
- package/src/components/OutlinedCascader/OutlinedCascader.types.d.ts +25 -0
- package/src/components/OutlinedCascader/OutlinedCascader.types.ts +28 -0
- package/src/components/OutlinedCascader/OutlinedCascader.vue +250 -0
- package/src/components/OutlinedCascader/OutlinedCascader.vue.d.ts +85 -0
- package/src/components/OutlinedCascader/README.md +91 -0
- package/src/components/OutlinedCascader/index.d.ts +3 -0
- package/src/components/OutlinedCascader/index.ts +10 -0
- package/src/components/OutlinedDatePicker/OutlinedDatePicker.types.d.ts +27 -0
- package/src/components/OutlinedDatePicker/OutlinedDatePicker.types.ts +40 -0
- package/src/components/OutlinedDatePicker/OutlinedDatePicker.vue +365 -0
- package/src/components/OutlinedDatePicker/OutlinedDatePicker.vue.d.ts +88 -0
- package/src/components/OutlinedDatePicker/README.md +137 -0
- package/src/components/OutlinedDatePicker/index.d.ts +3 -0
- package/src/components/OutlinedDatePicker/index.ts +11 -0
- package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.types.d.ts +26 -0
- package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.types.ts +34 -0
- package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.vue +421 -0
- package/src/components/OutlinedDateTimePicker/OutlinedDateTimePicker.vue.d.ts +97 -0
- package/src/components/OutlinedDateTimePicker/README.md +88 -0
- package/src/components/OutlinedDateTimePicker/index.d.ts +3 -0
- package/src/components/OutlinedDateTimePicker/index.ts +11 -0
- package/src/components/OutlinedInput/OutlinedInput.types.d.ts +29 -0
- package/src/components/OutlinedInput/OutlinedInput.types.ts +32 -0
- package/src/components/OutlinedInput/OutlinedInput.vue +307 -0
- package/src/components/OutlinedInput/OutlinedInput.vue.d.ts +97 -0
- package/src/components/OutlinedInput/README.md +154 -0
- package/src/components/OutlinedInput/index.d.ts +3 -0
- package/src/components/OutlinedInput/index.ts +10 -0
- package/src/components/OutlinedSelect/OutlinedSelect.types.d.ts +38 -0
- package/src/components/OutlinedSelect/OutlinedSelect.types.ts +48 -0
- package/src/components/OutlinedSelect/OutlinedSelect.vue +359 -0
- package/src/components/OutlinedSelect/OutlinedSelect.vue.d.ts +116 -0
- package/src/components/OutlinedSelect/README.md +166 -0
- package/src/components/OutlinedSelect/index.d.ts +3 -0
- package/src/components/OutlinedSelect/index.ts +12 -0
- package/src/components/OutlinedTimePicker/OutlinedTimePicker.types.d.ts +28 -0
- package/src/components/OutlinedTimePicker/OutlinedTimePicker.types.ts +36 -0
- package/src/components/OutlinedTimePicker/OutlinedTimePicker.vue +303 -0
- package/src/components/OutlinedTimePicker/OutlinedTimePicker.vue.d.ts +94 -0
- package/src/components/OutlinedTimePicker/README.md +93 -0
- package/src/components/OutlinedTimePicker/index.d.ts +3 -0
- package/src/components/OutlinedTimePicker/index.ts +10 -0
- package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.types.d.ts +46 -0
- package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.types.ts +56 -0
- package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.vue +354 -0
- package/src/components/OutlinedTreeSelect/OutlinedTreeSelect.vue.d.ts +137 -0
- package/src/components/OutlinedTreeSelect/README.md +107 -0
- package/src/components/OutlinedTreeSelect/index.d.ts +3 -0
- package/src/components/OutlinedTreeSelect/index.ts +12 -0
- package/src/echarts/index.d.ts +9 -0
- package/src/echarts/index.ts +13 -8
- package/src/excel/exportExcel.d.ts +18 -0
- package/src/index.d.ts +26 -0
- package/src/index.ts +14 -0
package/dist/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.base-card[data-v-6bfddf1c]{display:flex;flex-direction:column;min-width:0;min-height:0;padding:var(--base-card-padding);border:1px solid var(--base-card-border-color);background:var(--base-card-background-color);box-shadow:0 0 2px 0 var(--base-card-shadow-color);border-radius:var(--base-card-radius)}.base-card__header[data-v-6bfddf1c]{display:flex;align-items:center;justify-content:space-between;gap:var(--base-card-header-gap);margin-bottom:var(--base-card-header-margin-bottom);min-height:24px;flex-wrap:wrap}.base-card__header-left[data-v-6bfddf1c],.base-card__header-right[data-v-6bfddf1c]{display:flex;align-items:center;min-width:0;flex-wrap:wrap}.base-card__header-left[data-v-6bfddf1c]{flex:1 1 auto;gap:var(--base-card-left-gap)}.base-card__header-right[data-v-6bfddf1c]{flex:0 1 auto;justify-content:flex-end;gap:var(--base-card-right-gap)}.base-card__title-wrap[data-v-6bfddf1c]{display:flex;align-items:center;min-width:0}.base-card__title-marker[data-v-6bfddf1c]{width:var(--base-card-marker-width);height:var(--base-card-marker-height);background:var(--base-card-marker-color);border-radius:var(--base-card-marker-radius);margin-right:var(--base-card-marker-gap);flex:0 0 auto}.base-card__title[data-v-6bfddf1c]{margin:0;min-width:0;color:var(--base-card-title-color);font-size:var(--base-card-title-size);font-weight:var(--base-card-title-weight);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.base-card__meta[data-v-6bfddf1c]{color:var(--base-card-meta-color);font-size:var(--base-card-meta-size);line-height:1.4}.base-card__export[data-v-6bfddf1c]{border:none;background:transparent;padding:0;color:var(--base-card-export-color);cursor:pointer;font-size:var(--base-card-meta-size);line-height:1.4}.base-card__export[data-v-6bfddf1c]:disabled{opacity:.5;cursor:not-allowed}.base-card__body[data-v-6bfddf1c]{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.base-card__tip[data-v-6bfddf1c]{flex:0 0 auto}.base-card__content[data-v-6bfddf1c]{flex:1 1 auto;min-height:0}.base-table[data-v-429ba785]{display:flex;flex-direction:column;height:100%;min-height:0}.base-table__toolbar[data-v-429ba785]{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;min-height:32px;flex-wrap:wrap}.base-table__toolbar-left[data-v-429ba785]{flex:1 1 auto;min-width:0}.base-table__toolbar-right[data-v-429ba785]{flex:0 1 auto}.base-table__actions[data-v-429ba785]{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.base-table__link[data-v-429ba785]{padding:0;border:none;background:transparent;color:var(--el-color-primary);cursor:pointer}.base-table__text[data-v-429ba785]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.base-table__tags[data-v-429ba785]{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.base-table__image[data-v-429ba785]{border-radius:4px;overflow:hidden}.base-echart[data-v-51bc4772],.base-echart__inner[data-v-51bc4772]{width:100%;height:100%}
|
|
1
|
+
.base-card[data-v-6bfddf1c]{display:flex;flex-direction:column;min-width:0;min-height:0;padding:var(--base-card-padding);border:1px solid var(--base-card-border-color);background:var(--base-card-background-color);box-shadow:0 0 2px 0 var(--base-card-shadow-color);border-radius:var(--base-card-radius)}.base-card__header[data-v-6bfddf1c]{display:flex;align-items:center;justify-content:space-between;gap:var(--base-card-header-gap);margin-bottom:var(--base-card-header-margin-bottom);min-height:24px;flex-wrap:wrap}.base-card__header-left[data-v-6bfddf1c],.base-card__header-right[data-v-6bfddf1c]{display:flex;align-items:center;min-width:0;flex-wrap:wrap}.base-card__header-left[data-v-6bfddf1c]{flex:1 1 auto;gap:var(--base-card-left-gap)}.base-card__header-right[data-v-6bfddf1c]{flex:0 1 auto;justify-content:flex-end;gap:var(--base-card-right-gap)}.base-card__title-wrap[data-v-6bfddf1c]{display:flex;align-items:center;min-width:0}.base-card__title-marker[data-v-6bfddf1c]{width:var(--base-card-marker-width);height:var(--base-card-marker-height);background:var(--base-card-marker-color);border-radius:var(--base-card-marker-radius);margin-right:var(--base-card-marker-gap);flex:0 0 auto}.base-card__title[data-v-6bfddf1c]{margin:0;min-width:0;color:var(--base-card-title-color);font-size:var(--base-card-title-size);font-weight:var(--base-card-title-weight);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.base-card__meta[data-v-6bfddf1c]{color:var(--base-card-meta-color);font-size:var(--base-card-meta-size);line-height:1.4}.base-card__export[data-v-6bfddf1c]{border:none;background:transparent;padding:0;color:var(--base-card-export-color);cursor:pointer;font-size:var(--base-card-meta-size);line-height:1.4}.base-card__export[data-v-6bfddf1c]:disabled{opacity:.5;cursor:not-allowed}.base-card__body[data-v-6bfddf1c]{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}.base-card__tip[data-v-6bfddf1c]{flex:0 0 auto}.base-card__content[data-v-6bfddf1c]{flex:1 1 auto;min-height:0}.base-table[data-v-7ae8d382]{display:flex;flex-direction:column;height:100%;min-height:0}.base-table__toolbar[data-v-7ae8d382]{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;min-height:32px;flex-wrap:wrap}.base-table__toolbar-left[data-v-7ae8d382]{flex:1 1 auto;min-width:0}.base-table__toolbar-right[data-v-7ae8d382]{flex:0 1 auto}.base-table__actions[data-v-7ae8d382]{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.base-table__header[data-v-7ae8d382]{display:flex;align-items:center;gap:6px;width:100%;min-width:0}.base-table__header-label[data-v-7ae8d382]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.base-table__header-actions[data-v-7ae8d382]{display:flex;align-items:center;margin-left:auto;flex-shrink:0}.base-table__header-icon[data-v-7ae8d382]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:999px;background:transparent;color:var(--el-text-color-secondary);cursor:pointer;transition:color .2s ease,background-color .2s ease}.base-table__header-icon[data-v-7ae8d382]:hover,.base-table__header-icon.is-active[data-v-7ae8d382]{color:var(--el-color-primary);background:rgba(64,158,255,.12)}.base-table__header-icon-mark[data-v-7ae8d382]{position:relative;display:inline-block;width:14px;height:14px;box-sizing:border-box;border:2px solid currentColor;border-radius:999px}.base-table__header-icon-mark[data-v-7ae8d382]:after{content:"";position:absolute;right:-6px;bottom:-4px;width:7px;height:2px;border-radius:999px;background:currentColor;transform:rotate(45deg);transform-origin:center}.base-table__header-dropdown[data-v-7ae8d382]{display:inline-flex;align-items:center}.base-table__header-search-panel[data-v-7ae8d382]{display:flex;flex-direction:column;gap:12px;padding:8px}[data-v-7ae8d382] .base-table__header-search-menu{padding:0}[data-v-7ae8d382] .base-table__header-search-dropdown{padding:0;border-radius:12px}.base-table__header-search-footer[data-v-7ae8d382]{display:flex;align-items:center;justify-content:space-between}.base-table__link[data-v-7ae8d382]{padding:0;border:none;background:transparent;color:var(--el-color-primary);cursor:pointer}.base-table__text[data-v-7ae8d382]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.base-table__tags[data-v-7ae8d382]{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.base-table__image[data-v-7ae8d382]{border-radius:4px;overflow:hidden}.base-echart[data-v-51bc4772],.base-echart__inner[data-v-51bc4772]{width:100%;height:100%}.outlined-input[data-v-2bf89ccd]{position:relative}.outlined-input__label[data-v-2bf89ccd]{position:absolute;left:-2px;padding:2px 5px;border-radius:2px;background-color:#fff;font-size:12px;line-height:1;transition:color .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);pointer-events:none}.outlined-input__label--floating[data-v-2bf89ccd]{top:18px;z-index:1;opacity:1;transform:translate(14px,-6px) scale(1);color:var(--el-color-primary)}.outlined-input__label--placeholder[data-v-2bf89ccd]{top:50%;left:1px;z-index:-1;opacity:0;transform:translate(14px,6px) scale(1)}.outlined-input__label--filled[data-v-2bf89ccd]{color:var(--el-text-color-regular)}.outlined-input__suffix-text[data-v-2bf89ccd]{white-space:nowrap}[data-v-2bf89ccd] .outlined-input--bordered .el-input__wrapper{box-shadow:none;border-radius:0;border-bottom:1px solid #cccccc}[data-v-2bf89ccd] .outlined-input--bordered .el-input__wrapper.is-focus{border-bottom-color:var(--el-color-primary)}[data-v-2bf89ccd] .outlined-input--bordered .el-textarea__inner{border-width:0 0 1px;border-radius:0;box-shadow:none}[data-v-2bf89ccd] .outlined-input--bordered .el-textarea__inner:focus{border-bottom-color:var(--el-color-primary)}[data-v-2bf89ccd] .outlined-input--textarea-default .el-textarea__inner{min-height:100px!important;max-height:180px}.outlined-select[data-v-7bd2b5f2]{position:relative}.outlined-select__label[data-v-7bd2b5f2]{position:absolute;left:-2px;padding:2px 5px;border-radius:2px;background-color:#fff;font-size:12px;line-height:1;transition:color .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);pointer-events:none}.outlined-select__label--floating[data-v-7bd2b5f2]{top:18px;z-index:1;opacity:1;transform:translate(14px,-6px) scale(1);color:var(--el-color-primary)}.outlined-select__label--placeholder[data-v-7bd2b5f2]{top:50%;left:1px;z-index:-1;opacity:0;transform:translate(14px,6px) scale(1)}.outlined-select__label--filled[data-v-7bd2b5f2]{color:var(--el-text-color-regular)}[data-v-7bd2b5f2] .outlined-select__control.el-select{width:100%}[data-v-7bd2b5f2] .outlined-select__control .el-select__wrapper{min-height:inherit;height:inherit}[data-v-7bd2b5f2] .outlined-select__control .el-select__tags{padding-top:4px}[data-v-7bd2b5f2] .outlined-select__control .el-select__selection{min-height:inherit}[data-v-7bd2b5f2] .outlined-select--bordered .el-select__wrapper{box-shadow:none;border-radius:0;border-bottom:1px solid #cccccc}[data-v-7bd2b5f2] .outlined-select--bordered .el-select__wrapper.is-focused{border-bottom-color:var(--el-color-primary)}.outlined-date-picker[data-v-c95a293c]{position:relative}.outlined-date-picker__label[data-v-c95a293c]{position:absolute;left:-2px;padding:2px 5px;border-radius:2px;background-color:#fff;font-size:12px;line-height:1;transition:color .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);pointer-events:none}.outlined-date-picker__label--floating[data-v-c95a293c]{top:18px;z-index:1;opacity:1;transform:translate(14px,-6px) scale(1);color:var(--el-color-primary)}.outlined-date-picker__label--placeholder[data-v-c95a293c]{top:50%;left:1px;z-index:-1;opacity:0;transform:translate(14px,6px) scale(1)}.outlined-date-picker__label--filled[data-v-c95a293c]{color:var(--el-text-color-regular)}[data-v-c95a293c] .outlined-date-picker__control.el-date-editor{width:100%}[data-v-c95a293c] .outlined-date-picker__control .el-input__wrapper{position:relative;min-height:inherit;height:inherit}[data-v-c95a293c] .outlined-date-picker__control .el-input__prefix{position:absolute;right:0}[data-v-c95a293c] .outlined-date-picker__control .el-input__suffix{position:absolute;right:30px}[data-v-c95a293c] .outlined-date-picker--bordered .el-input__wrapper{box-shadow:none;border-radius:0;border-bottom:1px solid #cccccc}[data-v-c95a293c] .outlined-date-picker--bordered .el-input__wrapper.is-focus{border-bottom-color:var(--el-color-primary)}.outlined-date-time-picker[data-v-f2fefd22]{display:flex;align-items:center;gap:8px}.outlined-date-time-picker__field[data-v-f2fefd22]{position:relative;flex:1}.outlined-date-time-picker__separator[data-v-f2fefd22]{flex:0 0 auto;color:var(--el-text-color-regular)}.outlined-date-time-picker__label[data-v-f2fefd22]{position:absolute;left:-2px;padding:2px 5px;border-radius:2px;background-color:#fff;font-size:12px;line-height:1;transition:color .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);pointer-events:none}.outlined-date-time-picker__label--floating[data-v-f2fefd22]{top:18px;z-index:1;opacity:1;transform:translate(14px,-6px) scale(1);color:var(--el-color-primary)}.outlined-date-time-picker__label--placeholder[data-v-f2fefd22]{top:50%;left:1px;z-index:-1;opacity:0;transform:translate(14px,6px) scale(1)}.outlined-date-time-picker__label--filled[data-v-f2fefd22]{color:var(--el-text-color-regular)}[data-v-f2fefd22] .outlined-date-time-picker__control.el-date-editor{width:100%}[data-v-f2fefd22] .outlined-date-time-picker__control .el-input__wrapper{position:relative;min-height:inherit;height:inherit}[data-v-f2fefd22] .outlined-date-time-picker__control .el-input__prefix{position:absolute;right:0}[data-v-f2fefd22] .outlined-date-time-picker__control .el-input__suffix{position:absolute;right:30px}[data-v-f2fefd22] .outlined-date-time-picker__field--bordered .el-input__wrapper{box-shadow:none;border-radius:0;border-bottom:1px solid #cccccc}[data-v-f2fefd22] .outlined-date-time-picker__field--bordered .el-input__wrapper.is-focus{border-bottom-color:var(--el-color-primary)}.outlined-time-picker[data-v-6a467b88]{position:relative}.outlined-time-picker__label[data-v-6a467b88]{position:absolute;left:-2px;padding:2px 5px;border-radius:2px;background-color:#fff;font-size:12px;line-height:1;transition:color .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);pointer-events:none}.outlined-time-picker__label--floating[data-v-6a467b88]{top:18px;z-index:1;opacity:1;transform:translate(14px,-6px) scale(1);color:var(--el-color-primary)}.outlined-time-picker__label--placeholder[data-v-6a467b88]{top:50%;left:1px;z-index:-1;opacity:0;transform:translate(14px,6px) scale(1)}.outlined-time-picker__label--filled[data-v-6a467b88]{color:var(--el-text-color-regular)}[data-v-6a467b88] .outlined-time-picker__control.el-date-editor{width:100%}[data-v-6a467b88] .outlined-time-picker__control .el-input__wrapper{position:relative;min-height:inherit;height:inherit}[data-v-6a467b88] .outlined-time-picker__control .el-input__prefix{position:absolute;right:0}[data-v-6a467b88] .outlined-time-picker__control .el-input__suffix{position:absolute;right:30px}[data-v-6a467b88] .outlined-time-picker--bordered .el-input__wrapper{box-shadow:none;border-radius:0;border-bottom:1px solid #cccccc}[data-v-6a467b88] .outlined-time-picker--bordered .el-input__wrapper.is-focus{border-bottom-color:var(--el-color-primary)}.outlined-cascader[data-v-2c93c0e4]{position:relative}.outlined-cascader__label[data-v-2c93c0e4]{position:absolute;left:-2px;padding:2px 5px;border-radius:2px;background-color:#fff;font-size:12px;line-height:1;transition:color .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);pointer-events:none}.outlined-cascader__label--floating[data-v-2c93c0e4]{top:18px;z-index:1;opacity:1;transform:translate(14px,-6px) scale(1);color:var(--el-color-primary)}.outlined-cascader__label--placeholder[data-v-2c93c0e4]{top:50%;left:1px;z-index:-1;opacity:0;transform:translate(14px,6px) scale(1)}.outlined-cascader__label--filled[data-v-2c93c0e4]{color:var(--el-text-color-regular)}[data-v-2c93c0e4] .outlined-cascader__control .el-input{height:100%}[data-v-2c93c0e4] .outlined-cascader--bordered .el-input__wrapper{box-shadow:none;border-radius:0;border-bottom:1px solid #cccccc}[data-v-2c93c0e4] .outlined-cascader--bordered .el-input__wrapper.is-focus{border-bottom-color:var(--el-color-primary)}.outlined-tree-select[data-v-8403e6ea]{position:relative}.outlined-tree-select__label[data-v-8403e6ea]{position:absolute;left:-2px;padding:2px 5px;border-radius:2px;background-color:#fff;font-size:12px;line-height:1;transition:color .2s cubic-bezier(0,0,.2,1),transform .2s cubic-bezier(0,0,.2,1);pointer-events:none}.outlined-tree-select__label--floating[data-v-8403e6ea]{top:18px;z-index:1;opacity:1;transform:translate(14px,-6px) scale(1);color:var(--el-color-primary)}.outlined-tree-select__label--placeholder[data-v-8403e6ea]{top:50%;left:1px;z-index:-1;opacity:0;transform:translate(14px,6px) scale(1)}.outlined-tree-select__label--filled[data-v-8403e6ea]{color:var(--el-text-color-regular)}[data-v-8403e6ea] .outlined-tree-select__control.el-select{width:100%}[data-v-8403e6ea] .outlined-tree-select__control .el-select__wrapper{min-height:inherit;height:inherit}[data-v-8403e6ea] .outlined-tree-select__control .el-select__selection{min-height:inherit}[data-v-8403e6ea] .outlined-tree-select__control .el-select__tags{padding-top:4px}[data-v-8403e6ea] .outlined-tree-select--bordered .el-select__wrapper{box-shadow:none;border-radius:0;border-bottom:1px solid #cccccc}[data-v-8403e6ea] .outlined-tree-select--bordered .el-select__wrapper.is-focused{border-bottom-color:var(--el-color-primary)}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hbdlzy/ui-core",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Company shared Vue UI core package.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -10,12 +10,12 @@
|
|
|
10
10
|
},
|
|
11
11
|
"main": "dist/index.cjs",
|
|
12
12
|
"module": "dist/index.js",
|
|
13
|
-
"types": "
|
|
13
|
+
"types": "dist/index.d.ts",
|
|
14
14
|
"exports": {
|
|
15
15
|
".": {
|
|
16
16
|
"import": "./dist/index.js",
|
|
17
17
|
"require": "./dist/index.cjs",
|
|
18
|
-
"types": "./
|
|
18
|
+
"types": "./dist/index.d.ts"
|
|
19
19
|
},
|
|
20
20
|
"./components.manifest.json": "./components.manifest.json"
|
|
21
21
|
},
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"vue": "^3.5.14"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
+
"dayjs": "^1.11.13",
|
|
33
34
|
"echarts": "^5.5.1",
|
|
34
35
|
"exceljs": "^4.4.0",
|
|
35
36
|
"file-saver": "2.0.5"
|
|
@@ -43,6 +44,7 @@
|
|
|
43
44
|
"registry": "https://registry.npmjs.org/"
|
|
44
45
|
},
|
|
45
46
|
"scripts": {
|
|
46
|
-
"build": "vite build"
|
|
47
|
+
"build": "vite build && pnpm run build:types",
|
|
48
|
+
"build:types": "vue-tsc -p tsconfig.build.json --declaration --emitDeclarationOnly"
|
|
47
49
|
}
|
|
48
50
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export type BaseCardCssValue = string | number;
|
|
2
|
+
export interface BaseCardDefaultExportPayload {
|
|
3
|
+
title?: string;
|
|
4
|
+
metaText?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface BaseCardProps {
|
|
7
|
+
title?: string;
|
|
8
|
+
metaText?: string;
|
|
9
|
+
showHeader?: boolean;
|
|
10
|
+
showRight?: boolean;
|
|
11
|
+
showTitleMarker?: boolean;
|
|
12
|
+
showExport?: boolean;
|
|
13
|
+
exportText?: string;
|
|
14
|
+
exportDisabled?: boolean;
|
|
15
|
+
exportPayload?: unknown;
|
|
16
|
+
padding?: BaseCardCssValue;
|
|
17
|
+
radius?: BaseCardCssValue;
|
|
18
|
+
borderColor?: string;
|
|
19
|
+
backgroundColor?: string;
|
|
20
|
+
shadowColor?: string;
|
|
21
|
+
headerGap?: BaseCardCssValue;
|
|
22
|
+
headerMarginBottom?: BaseCardCssValue;
|
|
23
|
+
leftGap?: BaseCardCssValue;
|
|
24
|
+
rightGap?: BaseCardCssValue;
|
|
25
|
+
titleColor?: string;
|
|
26
|
+
titleSize?: BaseCardCssValue;
|
|
27
|
+
titleWeight?: string | number;
|
|
28
|
+
markerColor?: string;
|
|
29
|
+
markerWidth?: BaseCardCssValue;
|
|
30
|
+
markerHeight?: BaseCardCssValue;
|
|
31
|
+
markerRadius?: BaseCardCssValue;
|
|
32
|
+
markerGap?: BaseCardCssValue;
|
|
33
|
+
metaColor?: string;
|
|
34
|
+
metaSize?: BaseCardCssValue;
|
|
35
|
+
exportColor?: string;
|
|
36
|
+
}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import type { BaseCardCssValue, BaseCardProps } from './BaseCard.types';
|
|
2
|
+
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<BaseCardProps>, {
|
|
3
|
+
title: string;
|
|
4
|
+
metaText: string;
|
|
5
|
+
showHeader: boolean;
|
|
6
|
+
showRight: boolean;
|
|
7
|
+
showTitleMarker: boolean;
|
|
8
|
+
showExport: boolean;
|
|
9
|
+
exportText: string;
|
|
10
|
+
exportDisabled: boolean;
|
|
11
|
+
padding: number;
|
|
12
|
+
radius: number;
|
|
13
|
+
borderColor: string;
|
|
14
|
+
backgroundColor: string;
|
|
15
|
+
shadowColor: string;
|
|
16
|
+
headerGap: number;
|
|
17
|
+
headerMarginBottom: number;
|
|
18
|
+
leftGap: number;
|
|
19
|
+
rightGap: number;
|
|
20
|
+
titleColor: string;
|
|
21
|
+
titleSize: number;
|
|
22
|
+
titleWeight: number;
|
|
23
|
+
markerColor: string;
|
|
24
|
+
markerWidth: number;
|
|
25
|
+
markerHeight: number;
|
|
26
|
+
markerRadius: string;
|
|
27
|
+
markerGap: number;
|
|
28
|
+
metaColor: string;
|
|
29
|
+
metaSize: number;
|
|
30
|
+
exportColor: string;
|
|
31
|
+
}>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
32
|
+
export: (payload?: unknown) => void;
|
|
33
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<BaseCardProps>, {
|
|
34
|
+
title: string;
|
|
35
|
+
metaText: string;
|
|
36
|
+
showHeader: boolean;
|
|
37
|
+
showRight: boolean;
|
|
38
|
+
showTitleMarker: boolean;
|
|
39
|
+
showExport: boolean;
|
|
40
|
+
exportText: string;
|
|
41
|
+
exportDisabled: boolean;
|
|
42
|
+
padding: number;
|
|
43
|
+
radius: number;
|
|
44
|
+
borderColor: string;
|
|
45
|
+
backgroundColor: string;
|
|
46
|
+
shadowColor: string;
|
|
47
|
+
headerGap: number;
|
|
48
|
+
headerMarginBottom: number;
|
|
49
|
+
leftGap: number;
|
|
50
|
+
rightGap: number;
|
|
51
|
+
titleColor: string;
|
|
52
|
+
titleSize: number;
|
|
53
|
+
titleWeight: number;
|
|
54
|
+
markerColor: string;
|
|
55
|
+
markerWidth: number;
|
|
56
|
+
markerHeight: number;
|
|
57
|
+
markerRadius: string;
|
|
58
|
+
markerGap: number;
|
|
59
|
+
metaColor: string;
|
|
60
|
+
metaSize: number;
|
|
61
|
+
exportColor: string;
|
|
62
|
+
}>>> & Readonly<{
|
|
63
|
+
onExport?: ((payload?: unknown) => any) | undefined;
|
|
64
|
+
}>, {
|
|
65
|
+
title: string;
|
|
66
|
+
metaText: string;
|
|
67
|
+
showHeader: boolean;
|
|
68
|
+
showRight: boolean;
|
|
69
|
+
showTitleMarker: boolean;
|
|
70
|
+
showExport: boolean;
|
|
71
|
+
exportText: string;
|
|
72
|
+
exportDisabled: boolean;
|
|
73
|
+
padding: BaseCardCssValue;
|
|
74
|
+
radius: BaseCardCssValue;
|
|
75
|
+
borderColor: string;
|
|
76
|
+
backgroundColor: string;
|
|
77
|
+
shadowColor: string;
|
|
78
|
+
headerGap: BaseCardCssValue;
|
|
79
|
+
headerMarginBottom: BaseCardCssValue;
|
|
80
|
+
leftGap: BaseCardCssValue;
|
|
81
|
+
rightGap: BaseCardCssValue;
|
|
82
|
+
titleColor: string;
|
|
83
|
+
titleSize: BaseCardCssValue;
|
|
84
|
+
titleWeight: string | number;
|
|
85
|
+
markerColor: string;
|
|
86
|
+
markerWidth: BaseCardCssValue;
|
|
87
|
+
markerHeight: BaseCardCssValue;
|
|
88
|
+
markerRadius: BaseCardCssValue;
|
|
89
|
+
markerGap: BaseCardCssValue;
|
|
90
|
+
metaColor: string;
|
|
91
|
+
metaSize: BaseCardCssValue;
|
|
92
|
+
exportColor: string;
|
|
93
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
|
|
94
|
+
"title-label"?(_: {}): any;
|
|
95
|
+
title?(_: {}): any;
|
|
96
|
+
"header-right"?(_: {}): any;
|
|
97
|
+
tip?(_: {}): any;
|
|
98
|
+
default?(_: {}): any;
|
|
99
|
+
}>;
|
|
100
|
+
export default _default;
|
|
101
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
102
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
103
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
104
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
105
|
+
} : {
|
|
106
|
+
type: import('vue').PropType<T[K]>;
|
|
107
|
+
required: true;
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
type __VLS_WithDefaults<P, D> = {
|
|
111
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
|
|
112
|
+
default: D[K];
|
|
113
|
+
}> : P[K];
|
|
114
|
+
};
|
|
115
|
+
type __VLS_Prettify<T> = {
|
|
116
|
+
[K in keyof T]: T[K];
|
|
117
|
+
} & {};
|
|
118
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
119
|
+
new (): {
|
|
120
|
+
$slots: S;
|
|
121
|
+
};
|
|
122
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { EChartInitOptions, EChartInstance, EChartLoadingOptions, EChartOption, EChartResizeOptions, EChartSetOptionOptions } from '../../echarts';
|
|
2
|
+
export interface BaseEChartProps {
|
|
3
|
+
option?: EChartOption;
|
|
4
|
+
theme?: string | Record<string, unknown>;
|
|
5
|
+
initOptions?: EChartInitOptions;
|
|
6
|
+
setOptionOptions?: boolean | EChartSetOptionOptions;
|
|
7
|
+
loading?: boolean;
|
|
8
|
+
loadingOptions?: EChartLoadingOptions;
|
|
9
|
+
autoResize?: boolean;
|
|
10
|
+
useDefaultColors?: boolean;
|
|
11
|
+
colorStorageKey?: string;
|
|
12
|
+
defaultColors?: string[];
|
|
13
|
+
group?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface BaseEChartExpose {
|
|
16
|
+
getInstance: () => EChartInstance | null;
|
|
17
|
+
setOption: (option: EChartOption, setOptionOptions?: boolean | EChartSetOptionOptions) => EChartInstance | null;
|
|
18
|
+
resize: (resizeOptions?: EChartResizeOptions) => void;
|
|
19
|
+
dispatchAction: (payload: Record<string, unknown>) => void;
|
|
20
|
+
showLoading: (type?: string, loadingOptions?: EChartLoadingOptions) => void;
|
|
21
|
+
hideLoading: () => void;
|
|
22
|
+
clear: () => void;
|
|
23
|
+
dispose: () => void;
|
|
24
|
+
on: (eventName: string, handler: (...args: any[]) => void, context?: unknown) => void;
|
|
25
|
+
off: (eventName?: string, handler?: (...args: any[]) => void) => void;
|
|
26
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { echarts } from '../../echarts';
|
|
2
|
+
import type { BaseEChartProps } from './BaseEChart.types';
|
|
3
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<BaseEChartProps>, {
|
|
4
|
+
option: () => {};
|
|
5
|
+
initOptions: () => echarts.EChartsInitOpts;
|
|
6
|
+
setOptionOptions: () => echarts.SetOptionOpts;
|
|
7
|
+
loading: boolean;
|
|
8
|
+
autoResize: boolean;
|
|
9
|
+
useDefaultColors: boolean;
|
|
10
|
+
colorStorageKey: string;
|
|
11
|
+
defaultColors: () => never[];
|
|
12
|
+
group: undefined;
|
|
13
|
+
}>>, {
|
|
14
|
+
getInstance: () => echarts.ECharts | null;
|
|
15
|
+
setOption: (option: echarts.EChartsOption, setOptionOptions?: boolean | echarts.SetOptionOpts | undefined) => echarts.ECharts | null;
|
|
16
|
+
resize: (resizeOptions?: echarts.ResizeOpts | undefined) => void;
|
|
17
|
+
dispatchAction: (payload: Record<string, unknown>) => void;
|
|
18
|
+
showLoading: (type?: string | undefined, loadingOptions?: object | undefined) => void;
|
|
19
|
+
hideLoading: () => void;
|
|
20
|
+
clear: () => void;
|
|
21
|
+
dispose: () => void;
|
|
22
|
+
on: (eventName: string, handler: (...args: any[]) => void, context?: unknown) => void;
|
|
23
|
+
off: (eventName?: string | undefined, handler?: ((...args: any[]) => void) | undefined) => void;
|
|
24
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
25
|
+
ready: (chart: echarts.ECharts) => void;
|
|
26
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<BaseEChartProps>, {
|
|
27
|
+
option: () => {};
|
|
28
|
+
initOptions: () => echarts.EChartsInitOpts;
|
|
29
|
+
setOptionOptions: () => echarts.SetOptionOpts;
|
|
30
|
+
loading: boolean;
|
|
31
|
+
autoResize: boolean;
|
|
32
|
+
useDefaultColors: boolean;
|
|
33
|
+
colorStorageKey: string;
|
|
34
|
+
defaultColors: () => never[];
|
|
35
|
+
group: undefined;
|
|
36
|
+
}>>> & Readonly<{
|
|
37
|
+
onReady?: ((chart: echarts.ECharts) => any) | undefined;
|
|
38
|
+
}>, {
|
|
39
|
+
option: echarts.EChartsOption;
|
|
40
|
+
loading: boolean;
|
|
41
|
+
initOptions: echarts.EChartsInitOpts;
|
|
42
|
+
setOptionOptions: boolean | echarts.SetOptionOpts;
|
|
43
|
+
autoResize: boolean;
|
|
44
|
+
useDefaultColors: boolean;
|
|
45
|
+
colorStorageKey: string;
|
|
46
|
+
defaultColors: string[];
|
|
47
|
+
group: string;
|
|
48
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
49
|
+
export default _default;
|
|
50
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
51
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
52
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
53
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
54
|
+
} : {
|
|
55
|
+
type: import('vue').PropType<T[K]>;
|
|
56
|
+
required: true;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
type __VLS_WithDefaults<P, D> = {
|
|
60
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
|
|
61
|
+
default: D[K];
|
|
62
|
+
}> : P[K];
|
|
63
|
+
};
|
|
64
|
+
type __VLS_Prettify<T> = {
|
|
65
|
+
[K in keyof T]: T[K];
|
|
66
|
+
} & {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ExcelExportOptions } from '../../excel/exportExcel';
|
|
2
|
+
export interface ExportResponseHeaders {
|
|
3
|
+
[key: string]: string | undefined;
|
|
4
|
+
}
|
|
5
|
+
export interface ExportResponseLike {
|
|
6
|
+
data: Blob | BlobPart | ArrayBuffer;
|
|
7
|
+
headers?: ExportResponseHeaders;
|
|
8
|
+
}
|
|
9
|
+
export type ExportRequestHandler = () => Promise<ExportResponseLike>;
|
|
10
|
+
export type ExportMode = 'excel' | 'request' | 'none' | 'invalid';
|
|
11
|
+
export type ExportBeforeHandler = () => boolean | void | Promise<boolean | void>;
|
|
12
|
+
export interface ExportSuccessPayload {
|
|
13
|
+
mode: Exclude<ExportMode, 'none' | 'invalid'>;
|
|
14
|
+
fileName?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface BaseExportExcelConfig<Row = Record<string, any>> {
|
|
17
|
+
excelOptions: ExcelExportOptions<Row>;
|
|
18
|
+
}
|
|
19
|
+
export interface BaseExportRequestConfig {
|
|
20
|
+
requestHandler: ExportRequestHandler;
|
|
21
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ExportResponseLike } from './BaseExportButton.types';
|
|
2
|
+
export declare function extractFileNameFromDisposition(contentDisposition?: string): string;
|
|
3
|
+
export declare function normalizeExportFileName(fileName?: string): string;
|
|
4
|
+
export declare function downloadExportResponse(response: ExportResponseLike, fallbackFileName?: string): string;
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import type { PropType } from 'vue';
|
|
2
|
+
import { type ExcelExportOptions } from '../../excel/exportExcel';
|
|
3
|
+
import type { ExportBeforeHandler, ExportRequestHandler, ExportSuccessPayload } from './BaseExportButton.types';
|
|
4
|
+
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
5
|
+
label: {
|
|
6
|
+
type: StringConstructor;
|
|
7
|
+
default: string;
|
|
8
|
+
};
|
|
9
|
+
type: {
|
|
10
|
+
type: PropType<"" | "success" | "warning" | "info" | "danger" | "primary">;
|
|
11
|
+
default: string;
|
|
12
|
+
};
|
|
13
|
+
size: {
|
|
14
|
+
type: PropType<"default" | "small" | "large">;
|
|
15
|
+
default: string;
|
|
16
|
+
};
|
|
17
|
+
plain: {
|
|
18
|
+
type: BooleanConstructor;
|
|
19
|
+
default: boolean;
|
|
20
|
+
};
|
|
21
|
+
link: {
|
|
22
|
+
type: BooleanConstructor;
|
|
23
|
+
default: boolean;
|
|
24
|
+
};
|
|
25
|
+
text: {
|
|
26
|
+
type: BooleanConstructor;
|
|
27
|
+
default: boolean;
|
|
28
|
+
};
|
|
29
|
+
disabled: {
|
|
30
|
+
type: BooleanConstructor;
|
|
31
|
+
default: boolean;
|
|
32
|
+
};
|
|
33
|
+
fileName: {
|
|
34
|
+
type: StringConstructor;
|
|
35
|
+
default: string;
|
|
36
|
+
};
|
|
37
|
+
excelOptions: PropType<ExcelExportOptions<Record<string, any>>>;
|
|
38
|
+
requestHandler: PropType<ExportRequestHandler>;
|
|
39
|
+
beforeExport: PropType<ExportBeforeHandler>;
|
|
40
|
+
successMessage: {
|
|
41
|
+
type: StringConstructor;
|
|
42
|
+
default: string;
|
|
43
|
+
};
|
|
44
|
+
errorMessage: {
|
|
45
|
+
type: StringConstructor;
|
|
46
|
+
default: string;
|
|
47
|
+
};
|
|
48
|
+
autoMessage: {
|
|
49
|
+
type: BooleanConstructor;
|
|
50
|
+
default: boolean;
|
|
51
|
+
};
|
|
52
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
53
|
+
start: () => void;
|
|
54
|
+
success: (payload: ExportSuccessPayload) => void;
|
|
55
|
+
error: (error: unknown) => void;
|
|
56
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
57
|
+
label: {
|
|
58
|
+
type: StringConstructor;
|
|
59
|
+
default: string;
|
|
60
|
+
};
|
|
61
|
+
type: {
|
|
62
|
+
type: PropType<"" | "success" | "warning" | "info" | "danger" | "primary">;
|
|
63
|
+
default: string;
|
|
64
|
+
};
|
|
65
|
+
size: {
|
|
66
|
+
type: PropType<"default" | "small" | "large">;
|
|
67
|
+
default: string;
|
|
68
|
+
};
|
|
69
|
+
plain: {
|
|
70
|
+
type: BooleanConstructor;
|
|
71
|
+
default: boolean;
|
|
72
|
+
};
|
|
73
|
+
link: {
|
|
74
|
+
type: BooleanConstructor;
|
|
75
|
+
default: boolean;
|
|
76
|
+
};
|
|
77
|
+
text: {
|
|
78
|
+
type: BooleanConstructor;
|
|
79
|
+
default: boolean;
|
|
80
|
+
};
|
|
81
|
+
disabled: {
|
|
82
|
+
type: BooleanConstructor;
|
|
83
|
+
default: boolean;
|
|
84
|
+
};
|
|
85
|
+
fileName: {
|
|
86
|
+
type: StringConstructor;
|
|
87
|
+
default: string;
|
|
88
|
+
};
|
|
89
|
+
excelOptions: PropType<ExcelExportOptions<Record<string, any>>>;
|
|
90
|
+
requestHandler: PropType<ExportRequestHandler>;
|
|
91
|
+
beforeExport: PropType<ExportBeforeHandler>;
|
|
92
|
+
successMessage: {
|
|
93
|
+
type: StringConstructor;
|
|
94
|
+
default: string;
|
|
95
|
+
};
|
|
96
|
+
errorMessage: {
|
|
97
|
+
type: StringConstructor;
|
|
98
|
+
default: string;
|
|
99
|
+
};
|
|
100
|
+
autoMessage: {
|
|
101
|
+
type: BooleanConstructor;
|
|
102
|
+
default: boolean;
|
|
103
|
+
};
|
|
104
|
+
}>> & Readonly<{
|
|
105
|
+
onError?: ((error: unknown) => any) | undefined;
|
|
106
|
+
onSuccess?: ((payload: ExportSuccessPayload) => any) | undefined;
|
|
107
|
+
onStart?: (() => any) | undefined;
|
|
108
|
+
}>, {
|
|
109
|
+
type: "" | "success" | "warning" | "info" | "danger" | "primary";
|
|
110
|
+
label: string;
|
|
111
|
+
link: boolean;
|
|
112
|
+
text: boolean;
|
|
113
|
+
disabled: boolean;
|
|
114
|
+
size: "default" | "small" | "large";
|
|
115
|
+
fileName: string;
|
|
116
|
+
plain: boolean;
|
|
117
|
+
successMessage: string;
|
|
118
|
+
errorMessage: string;
|
|
119
|
+
autoMessage: boolean;
|
|
120
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>, {
|
|
121
|
+
default?(_: {}): any;
|
|
122
|
+
}>;
|
|
123
|
+
export default _default;
|
|
124
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
125
|
+
new (): {
|
|
126
|
+
$slots: S;
|
|
127
|
+
};
|
|
128
|
+
};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import BaseExportButton from './BaseExportButton.vue';
|
|
2
|
+
export { BaseExportButton };
|
|
3
|
+
export { downloadExportResponse, extractFileNameFromDisposition, normalizeExportFileName } from './BaseExportButton.utils';
|
|
4
|
+
export type { BaseExportExcelConfig, BaseExportRequestConfig, ExportBeforeHandler, ExportMode, ExportRequestHandler, ExportResponseHeaders, ExportResponseLike, ExportSuccessPayload } from './BaseExportButton.types';
|
|
5
|
+
export default BaseExportButton;
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
export type BaseTableCssValue = string | number;
|
|
2
|
+
export type BaseTableAlign = 'left' | 'center' | 'right';
|
|
3
|
+
export type BaseTableColumnKind = 'text' | 'link' | 'actions' | 'image' | 'tag' | 'html' | 'input';
|
|
4
|
+
export type BaseTableSortOrder = 'ascending' | 'descending' | null;
|
|
5
|
+
export type BaseTableSortDirection = string | null;
|
|
6
|
+
export interface BaseTableHeaderSearchConfig {
|
|
7
|
+
paramKey?: string;
|
|
8
|
+
placeholder?: string;
|
|
9
|
+
width?: BaseTableCssValue;
|
|
10
|
+
searchText?: string;
|
|
11
|
+
resetText?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface BaseTableOption {
|
|
14
|
+
label: string;
|
|
15
|
+
value: string | number | boolean;
|
|
16
|
+
tagType?: '' | 'success' | 'warning' | 'info' | 'danger' | 'primary';
|
|
17
|
+
color?: string;
|
|
18
|
+
}
|
|
19
|
+
export interface BaseTableAction<Row = Record<string, any>> {
|
|
20
|
+
label: string;
|
|
21
|
+
type: string;
|
|
22
|
+
buttonType?: '' | 'primary' | 'success' | 'warning' | 'info' | 'danger';
|
|
23
|
+
disabled?: boolean | ((row: Row) => boolean);
|
|
24
|
+
visible?: boolean | ((row: Row) => boolean);
|
|
25
|
+
}
|
|
26
|
+
export interface BaseTableColumn<Row = Record<string, any>> {
|
|
27
|
+
label: string;
|
|
28
|
+
prop?: keyof Row | string;
|
|
29
|
+
kind?: BaseTableColumnKind;
|
|
30
|
+
type?: string;
|
|
31
|
+
width?: BaseTableCssValue;
|
|
32
|
+
minWidth?: BaseTableCssValue;
|
|
33
|
+
align?: BaseTableAlign;
|
|
34
|
+
headerAlign?: BaseTableAlign;
|
|
35
|
+
fixed?: boolean | 'left' | 'right';
|
|
36
|
+
sortable?: boolean | 'custom';
|
|
37
|
+
sortField?: string;
|
|
38
|
+
headerSearch?: boolean | BaseTableHeaderSearchConfig;
|
|
39
|
+
showOverflowTooltip?: boolean;
|
|
40
|
+
className?: string;
|
|
41
|
+
headerClassName?: string;
|
|
42
|
+
actions?: BaseTableAction<Row>[];
|
|
43
|
+
clickable?: boolean;
|
|
44
|
+
options?: BaseTableOption[];
|
|
45
|
+
optionValueKey?: string;
|
|
46
|
+
optionLabelKey?: string;
|
|
47
|
+
optionTagTypeKey?: string;
|
|
48
|
+
emptyText?: string;
|
|
49
|
+
inputType?: string;
|
|
50
|
+
imageFit?: '' | 'fill' | 'contain' | 'cover' | 'none' | 'scale-down';
|
|
51
|
+
imageWidth?: BaseTableCssValue;
|
|
52
|
+
imageHeight?: BaseTableCssValue;
|
|
53
|
+
slotName?: string;
|
|
54
|
+
headerSlotName?: string;
|
|
55
|
+
formatter?: (row: Row, column: BaseTableColumn<Row>) => unknown;
|
|
56
|
+
html?: (row: Row, column: BaseTableColumn<Row>) => string;
|
|
57
|
+
clickHandler?: (row: Row, column: BaseTableColumn<Row>) => void;
|
|
58
|
+
inputHandler?: (value: string, row: Row, column: BaseTableColumn<Row>) => void;
|
|
59
|
+
}
|
|
60
|
+
export interface BaseTablePagination {
|
|
61
|
+
currentPage: number;
|
|
62
|
+
pageSize: number;
|
|
63
|
+
total: number;
|
|
64
|
+
pageSizes: number[];
|
|
65
|
+
}
|
|
66
|
+
export interface BaseTableRequestParams {
|
|
67
|
+
currentPage: number;
|
|
68
|
+
pageSize: number;
|
|
69
|
+
[key: string]: unknown;
|
|
70
|
+
}
|
|
71
|
+
export interface BaseTableSortState {
|
|
72
|
+
prop?: string;
|
|
73
|
+
order: BaseTableSortOrder;
|
|
74
|
+
}
|
|
75
|
+
export interface BaseTableSortOrderMap {
|
|
76
|
+
ascending: string;
|
|
77
|
+
descending: string;
|
|
78
|
+
}
|
|
79
|
+
export interface BaseTableRequestResult<Row = Record<string, any>> {
|
|
80
|
+
records?: Row[];
|
|
81
|
+
list?: Row[];
|
|
82
|
+
items?: Row[];
|
|
83
|
+
total?: number;
|
|
84
|
+
data?: {
|
|
85
|
+
records?: Row[];
|
|
86
|
+
list?: Row[];
|
|
87
|
+
items?: Row[];
|
|
88
|
+
total?: number;
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
export interface BaseTableNormalizedResult<Row = Record<string, any>> {
|
|
92
|
+
rows?: Row[];
|
|
93
|
+
total?: number;
|
|
94
|
+
}
|
|
95
|
+
export type BaseTableRequestHandler<Row = Record<string, any>> = (params: BaseTableRequestParams) => Promise<BaseTableRequestResult<Row> | Row[]>;
|
|
96
|
+
export type BaseTableResultAdapter<Row = Record<string, any>> = (result: unknown, params: BaseTableRequestParams) => BaseTableNormalizedResult<Row>;
|
|
97
|
+
export interface BaseTableProps<Row = Record<string, any>> {
|
|
98
|
+
columns: BaseTableColumn<Row>[];
|
|
99
|
+
data?: Row[];
|
|
100
|
+
request?: BaseTableRequestHandler<Row>;
|
|
101
|
+
requestParams?: Record<string, unknown>;
|
|
102
|
+
resultAdapter?: BaseTableResultAdapter<Row>;
|
|
103
|
+
autoLoad?: boolean;
|
|
104
|
+
reloadOnParamsChange?: boolean;
|
|
105
|
+
reloadOnSortChange?: boolean;
|
|
106
|
+
rowKey?: string;
|
|
107
|
+
height?: BaseTableCssValue;
|
|
108
|
+
border?: boolean;
|
|
109
|
+
stripe?: boolean;
|
|
110
|
+
showToolbar?: boolean;
|
|
111
|
+
showPagination?: boolean;
|
|
112
|
+
hasSelection?: boolean;
|
|
113
|
+
hasIndex?: boolean;
|
|
114
|
+
indexLabel?: string;
|
|
115
|
+
indexWidth?: BaseTableCssValue;
|
|
116
|
+
selectionWidth?: BaseTableCssValue;
|
|
117
|
+
rowSelectable?: (row: Row, index: number) => boolean;
|
|
118
|
+
pagination?: Partial<BaseTablePagination>;
|
|
119
|
+
currentPageKey?: string;
|
|
120
|
+
pageSizeKey?: string;
|
|
121
|
+
defaultSort?: BaseTableSortState;
|
|
122
|
+
sortFieldKey?: string;
|
|
123
|
+
sortOrderKey?: string;
|
|
124
|
+
sortOrderMap?: BaseTableSortOrderMap;
|
|
125
|
+
sortMapper?: (payload: BaseTableSortPayload<Row>) => Record<string, unknown> | void;
|
|
126
|
+
emptyText?: string;
|
|
127
|
+
loadingText?: string;
|
|
128
|
+
}
|
|
129
|
+
export interface BaseTableSortPayload<Row = Record<string, any>> {
|
|
130
|
+
column: BaseTableColumn<Row> | undefined;
|
|
131
|
+
prop?: string;
|
|
132
|
+
order: BaseTableSortOrder;
|
|
133
|
+
field?: string;
|
|
134
|
+
direction: BaseTableSortDirection;
|
|
135
|
+
}
|
|
136
|
+
export interface BaseTableRowActionPayload<Row = Record<string, any>> {
|
|
137
|
+
row: Row;
|
|
138
|
+
action: BaseTableAction<Row>;
|
|
139
|
+
column: BaseTableColumn<Row>;
|
|
140
|
+
}
|
|
141
|
+
export interface BaseTableCellPayload<Row = Record<string, any>> {
|
|
142
|
+
row: Row;
|
|
143
|
+
column: BaseTableColumn<Row>;
|
|
144
|
+
value: unknown;
|
|
145
|
+
}
|
|
146
|
+
export interface BaseTableLoadedPayload<Row = Record<string, any>> {
|
|
147
|
+
rows: Row[];
|
|
148
|
+
total: number;
|
|
149
|
+
params: BaseTableRequestParams;
|
|
150
|
+
}
|
|
151
|
+
export interface BaseTableExpose<Row = Record<string, any>> {
|
|
152
|
+
load: (data?: Row[]) => Promise<void>;
|
|
153
|
+
refresh: () => Promise<void>;
|
|
154
|
+
setData: (data: Row[]) => void;
|
|
155
|
+
resetPage: () => Promise<void>;
|
|
156
|
+
setHeaderSearchValue: (key: string, value: string, shouldReload?: boolean) => Promise<void>;
|
|
157
|
+
resetHeaderSearch: (key?: string) => Promise<void>;
|
|
158
|
+
getHeaderSearchValues: () => Record<string, string>;
|
|
159
|
+
clearSelection: () => void;
|
|
160
|
+
toggleRowSelection: (row: Row, selected?: boolean) => void;
|
|
161
|
+
getSelectionRows: () => Row[];
|
|
162
|
+
getRows: () => Row[];
|
|
163
|
+
}
|