giime 0.5.3 → 0.5.4
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 +65 -49
- package/es/api/materialApi/cross/postSaveFileResources.d.ts +2 -2
- package/es/api/materialApi/cross/postSaveFileResources.mjs +1 -0
- package/es/api/materialApi/cross/postSaveFileResources.mjs.map +1 -1
- package/es/components/index.mjs +4 -0
- package/es/components/index.mjs.map +1 -1
- package/es/components/src/business/uploadMaterial/UploadMaterial.vue.d.ts +259 -90
- package/es/components/src/business/uploadMaterial/UploadMaterial.vue.mjs +2 -5
- package/es/components/src/business/uploadMaterial/UploadMaterial.vue.mjs.map +1 -1
- package/es/components/src/business/uploadMaterial/UploadMaterial.vue2.mjs +25 -162
- package/es/components/src/business/uploadMaterial/UploadMaterial.vue2.mjs.map +1 -1
- package/es/components/src/business/uploadMaterial/index.d.ts +181 -12
- package/es/components/src/business/uploadMaterial/index.mjs +3 -2
- package/es/components/src/business/uploadMaterial/index.mjs.map +1 -1
- package/es/components/src/business/uploadMaterial/uploadMaterial.d.ts +84 -6
- package/es/components/src/business/uploadMaterial/uploadMaterial.mjs +9 -23
- package/es/components/src/business/uploadMaterial/uploadMaterial.mjs.map +1 -1
- package/es/components/src/composite/fileComponent/FileComponent.vue.d.ts +69 -0
- package/es/components/src/composite/fileComponent/FileComponent.vue.mjs +6 -0
- package/es/components/src/composite/fileComponent/FileComponent.vue.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/FileComponent.vue2.mjs +83 -0
- package/es/components/src/composite/fileComponent/FileComponent.vue2.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/excel.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/excel.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/pdf.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/pdf.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/ppt.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/ppt.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/psd.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/psd.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/text.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/text.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/unknown.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/unknown.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/word.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/word.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/assets/image/zip.svg.mjs +4 -0
- package/es/components/src/composite/fileComponent/assets/image/zip.svg.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/fileComponent.d.ts +41 -0
- package/es/components/src/composite/fileComponent/fileComponent.mjs +40 -0
- package/es/components/src/composite/fileComponent/fileComponent.mjs.map +1 -0
- package/es/components/src/composite/fileComponent/index.d.ts +71 -0
- package/es/components/src/composite/fileComponent/index.mjs +10 -0
- package/es/components/src/composite/fileComponent/index.mjs.map +1 -0
- package/es/components/src/composite/index.d.ts +2 -0
- package/es/components/src/composite/index.mjs +4 -0
- package/es/components/src/composite/index.mjs.map +1 -1
- package/es/components/src/composite/previewFile/PreviewFile.vue.d.ts +97 -0
- package/es/components/src/composite/previewFile/PreviewFile.vue.mjs +6 -0
- package/es/components/src/composite/previewFile/PreviewFile.vue.mjs.map +1 -0
- package/es/components/src/composite/previewFile/PreviewFile.vue2.mjs +120 -0
- package/es/components/src/composite/previewFile/PreviewFile.vue2.mjs.map +1 -0
- package/es/components/src/composite/previewFile/index.d.ts +99 -0
- package/es/components/src/composite/previewFile/index.mjs +10 -0
- package/es/components/src/composite/previewFile/index.mjs.map +1 -0
- package/es/components/src/composite/previewFile/previewFile.d.ts +42 -0
- package/es/components/src/composite/previewFile/previewFile.mjs +19 -0
- package/es/components/src/composite/previewFile/previewFile.mjs.map +1 -0
- package/es/components/src/composite/uploadFile/UploadFile.vue.d.ts +973 -0
- package/es/components/src/composite/uploadFile/UploadFile.vue.mjs +9 -0
- package/es/components/src/composite/uploadFile/UploadFile.vue.mjs.map +1 -0
- package/es/components/src/composite/uploadFile/UploadFile.vue2.mjs +239 -0
- package/es/components/src/composite/uploadFile/UploadFile.vue2.mjs.map +1 -0
- package/es/components/src/{business/uploadMaterial/UploadMaterial.vue3.mjs → composite/uploadFile/UploadFile.vue3.mjs} +1 -1
- package/es/components/src/composite/uploadFile/UploadFile.vue3.mjs.map +1 -0
- package/es/components/src/{business/uploadMaterial/UploadMaterial.vue4.mjs → composite/uploadFile/UploadFile.vue4.mjs} +1 -1
- package/es/components/src/composite/uploadFile/UploadFile.vue4.mjs.map +1 -0
- package/es/components/src/composite/uploadFile/index.d.ts +2486 -0
- package/es/components/src/composite/uploadFile/index.mjs +9 -0
- package/es/components/src/composite/uploadFile/index.mjs.map +1 -0
- package/es/components/src/composite/uploadFile/uploadFile.d.ts +227 -0
- package/es/components/src/composite/uploadFile/uploadFile.mjs +92 -0
- package/es/components/src/composite/uploadFile/uploadFile.mjs.map +1 -0
- package/es/giime/index.mjs +5 -1
- package/es/giime/index.mjs.map +1 -1
- package/es/giime/version.d.ts +1 -1
- package/es/giime/version.mjs +1 -1
- package/es/giime/version.mjs.map +1 -1
- package/es/index.css +65 -49
- package/es/utils/index.mjs +1 -1
- package/es/utils/src/alioss/aliossPutHook.d.ts +79 -0
- package/es/utils/src/alioss/aliossPutHook.mjs +177 -0
- package/es/utils/src/alioss/aliossPutHook.mjs.map +1 -0
- package/es/utils/src/alioss/aliossToken.d.ts +17 -0
- package/es/utils/src/alioss/aliossToken.mjs +51 -0
- package/es/utils/src/alioss/aliossToken.mjs.map +1 -0
- package/es/utils/src/is.d.ts +44 -2
- package/es/utils/src/is.mjs +29 -1
- package/es/utils/src/is.mjs.map +1 -1
- package/lib/api/materialApi/cross/postSaveFileResources.d.ts +2 -2
- package/lib/api/materialApi/cross/postSaveFileResources.js +1 -0
- package/lib/api/materialApi/cross/postSaveFileResources.js.map +1 -1
- package/lib/components/index.js +22 -14
- package/lib/components/index.js.map +1 -1
- package/lib/components/src/business/uploadMaterial/UploadMaterial.vue.d.ts +259 -90
- package/lib/components/src/business/uploadMaterial/UploadMaterial.vue.js +2 -5
- package/lib/components/src/business/uploadMaterial/UploadMaterial.vue.js.map +1 -1
- package/lib/components/src/business/uploadMaterial/UploadMaterial.vue2.js +24 -161
- package/lib/components/src/business/uploadMaterial/UploadMaterial.vue2.js.map +1 -1
- package/lib/components/src/business/uploadMaterial/index.d.ts +181 -12
- package/lib/components/src/business/uploadMaterial/index.js +3 -2
- package/lib/components/src/business/uploadMaterial/index.js.map +1 -1
- package/lib/components/src/business/uploadMaterial/uploadMaterial.d.ts +84 -6
- package/lib/components/src/business/uploadMaterial/uploadMaterial.js +9 -23
- package/lib/components/src/business/uploadMaterial/uploadMaterial.js.map +1 -1
- package/lib/components/src/composite/fileComponent/FileComponent.vue.d.ts +69 -0
- package/lib/components/src/composite/fileComponent/FileComponent.vue.js +10 -0
- package/lib/components/src/composite/fileComponent/FileComponent.vue.js.map +1 -0
- package/lib/components/src/composite/fileComponent/FileComponent.vue2.js +87 -0
- package/lib/components/src/composite/fileComponent/FileComponent.vue2.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/excel.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/excel.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/pdf.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/pdf.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/ppt.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/ppt.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/psd.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/psd.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/text.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/text.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/unknown.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/unknown.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/word.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/word.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/assets/image/zip.svg.js +8 -0
- package/lib/components/src/composite/fileComponent/assets/image/zip.svg.js.map +1 -0
- package/lib/components/src/composite/fileComponent/fileComponent.d.ts +41 -0
- package/lib/components/src/composite/fileComponent/fileComponent.js +42 -0
- package/lib/components/src/composite/fileComponent/fileComponent.js.map +1 -0
- package/lib/components/src/composite/fileComponent/index.d.ts +71 -0
- package/lib/components/src/composite/fileComponent/index.js +16 -0
- package/lib/components/src/composite/fileComponent/index.js.map +1 -0
- package/lib/components/src/composite/index.d.ts +2 -0
- package/lib/components/src/composite/index.js +8 -0
- package/lib/components/src/composite/index.js.map +1 -1
- package/lib/components/src/composite/previewFile/PreviewFile.vue.d.ts +97 -0
- package/lib/components/src/composite/previewFile/PreviewFile.vue.js +10 -0
- package/lib/components/src/composite/previewFile/PreviewFile.vue.js.map +1 -0
- package/lib/components/src/composite/previewFile/PreviewFile.vue2.js +124 -0
- package/lib/components/src/composite/previewFile/PreviewFile.vue2.js.map +1 -0
- package/lib/components/src/composite/previewFile/index.d.ts +99 -0
- package/lib/components/src/composite/previewFile/index.js +16 -0
- package/lib/components/src/composite/previewFile/index.js.map +1 -0
- package/lib/components/src/composite/previewFile/previewFile.d.ts +42 -0
- package/lib/components/src/composite/previewFile/previewFile.js +21 -0
- package/lib/components/src/composite/previewFile/previewFile.js.map +1 -0
- package/lib/components/src/composite/uploadFile/UploadFile.vue.d.ts +973 -0
- package/lib/components/src/composite/uploadFile/UploadFile.vue.js +13 -0
- package/lib/components/src/composite/uploadFile/UploadFile.vue.js.map +1 -0
- package/lib/components/src/composite/uploadFile/UploadFile.vue2.js +243 -0
- package/lib/components/src/composite/uploadFile/UploadFile.vue2.js.map +1 -0
- package/lib/components/src/{business/uploadMaterial/UploadMaterial.vue3.js → composite/uploadFile/UploadFile.vue3.js} +1 -1
- package/lib/components/src/composite/uploadFile/UploadFile.vue3.js.map +1 -0
- package/lib/components/src/{business/uploadMaterial/UploadMaterial.vue4.js → composite/uploadFile/UploadFile.vue4.js} +1 -1
- package/lib/components/src/composite/uploadFile/UploadFile.vue4.js.map +1 -0
- package/lib/components/src/composite/uploadFile/index.d.ts +2486 -0
- package/lib/components/src/composite/uploadFile/index.js +15 -0
- package/lib/components/src/composite/uploadFile/index.js.map +1 -0
- package/lib/components/src/composite/uploadFile/uploadFile.d.ts +227 -0
- package/lib/components/src/composite/uploadFile/uploadFile.js +94 -0
- package/lib/components/src/composite/uploadFile/uploadFile.js.map +1 -0
- package/lib/giime/index.js +75 -60
- package/lib/giime/index.js.map +1 -1
- package/lib/giime/version.d.ts +1 -1
- package/lib/giime/version.js +1 -1
- package/lib/giime/version.js.map +1 -1
- package/lib/index.css +65 -49
- package/lib/utils/index.js +7 -0
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/src/alioss/aliossPutHook.d.ts +79 -0
- package/lib/utils/src/alioss/aliossPutHook.js +181 -0
- package/lib/utils/src/alioss/aliossPutHook.js.map +1 -0
- package/lib/utils/src/alioss/aliossToken.d.ts +17 -0
- package/lib/utils/src/alioss/aliossToken.js +55 -0
- package/lib/utils/src/alioss/aliossToken.js.map +1 -0
- package/lib/utils/src/is.d.ts +44 -2
- package/lib/utils/src/is.js +35 -0
- package/lib/utils/src/is.js.map +1 -1
- package/package.json +1 -1
- package/es/components/src/business/uploadMaterial/UploadMaterial.vue3.mjs.map +0 -1
- package/es/components/src/business/uploadMaterial/UploadMaterial.vue4.mjs.map +0 -1
- package/lib/components/src/business/uploadMaterial/UploadMaterial.vue3.js.map +0 -1
- package/lib/components/src/business/uploadMaterial/UploadMaterial.vue4.js.map +0 -1
package/lib/index.css
CHANGED
|
@@ -638,6 +638,13 @@ video {
|
|
|
638
638
|
.gm-cursor-pointer {
|
|
639
639
|
cursor: pointer;
|
|
640
640
|
}
|
|
641
|
+
.gm-select-none {
|
|
642
|
+
-webkit-user-select: none;
|
|
643
|
+
user-select: none;
|
|
644
|
+
}
|
|
645
|
+
.gm-flex-col {
|
|
646
|
+
flex-direction: column;
|
|
647
|
+
}
|
|
641
648
|
.gm-flex-wrap {
|
|
642
649
|
flex-wrap: wrap;
|
|
643
650
|
}
|
|
@@ -656,6 +663,9 @@ video {
|
|
|
656
663
|
.gm-gap-2 {
|
|
657
664
|
gap: 0.5rem;
|
|
658
665
|
}
|
|
666
|
+
.gm-gap-4 {
|
|
667
|
+
gap: 1rem;
|
|
668
|
+
}
|
|
659
669
|
.gm-overflow-hidden {
|
|
660
670
|
overflow: hidden;
|
|
661
671
|
}
|
|
@@ -665,6 +675,9 @@ video {
|
|
|
665
675
|
.gm-rounded-full {
|
|
666
676
|
border-radius: 9999px;
|
|
667
677
|
}
|
|
678
|
+
.gm-rounded-md {
|
|
679
|
+
border-radius: 0.375rem;
|
|
680
|
+
}
|
|
668
681
|
.gm-border {
|
|
669
682
|
border-width: 1px;
|
|
670
683
|
}
|
|
@@ -694,6 +707,9 @@ video {
|
|
|
694
707
|
.gm-stroke-2 {
|
|
695
708
|
stroke-width: 2;
|
|
696
709
|
}
|
|
710
|
+
.gm-p-1 {
|
|
711
|
+
padding: 0.25rem;
|
|
712
|
+
}
|
|
697
713
|
.gm-p-4 {
|
|
698
714
|
padding: 1rem;
|
|
699
715
|
}
|
|
@@ -754,10 +770,18 @@ video {
|
|
|
754
770
|
--tw-text-opacity: 1;
|
|
755
771
|
color: rgb(59 130 246 / var(--tw-text-opacity));
|
|
756
772
|
}
|
|
773
|
+
.gm-text-blue-700 {
|
|
774
|
+
--tw-text-opacity: 1;
|
|
775
|
+
color: rgb(29 78 216 / var(--tw-text-opacity));
|
|
776
|
+
}
|
|
757
777
|
.gm-text-cyan-500 {
|
|
758
778
|
--tw-text-opacity: 1;
|
|
759
779
|
color: rgb(6 182 212 / var(--tw-text-opacity));
|
|
760
780
|
}
|
|
781
|
+
.gm-text-gray-500 {
|
|
782
|
+
--tw-text-opacity: 1;
|
|
783
|
+
color: rgb(107 114 128 / var(--tw-text-opacity));
|
|
784
|
+
}
|
|
761
785
|
.gm-text-gray-700 {
|
|
762
786
|
--tw-text-opacity: 1;
|
|
763
787
|
color: rgb(55 65 81 / var(--tw-text-opacity));
|
|
@@ -777,27 +801,36 @@ video {
|
|
|
777
801
|
.gm-group:hover .group-hover\:gm-block {
|
|
778
802
|
display: block;
|
|
779
803
|
}
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
margin: 0;
|
|
783
|
-
}
|
|
784
|
-
|
|
785
|
-
[data-v-7c80c3b6] .el-upload-dragger {
|
|
786
|
-
padding: 10px;
|
|
787
|
-
border: none;
|
|
804
|
+
.gm-flex-center[data-v-2a79bac9] {
|
|
805
|
+
align-items: center;
|
|
788
806
|
}
|
|
789
807
|
|
|
790
|
-
.gm-
|
|
808
|
+
.gm-flex-justify-between[data-v-2a79bac9] {
|
|
809
|
+
justify-content: space-between;
|
|
810
|
+
}
|
|
811
|
+
.gm-upload-preview-dialog[data-v-80cd8f61] [data-v-80cd8f61] .el-dialog__body {
|
|
791
812
|
padding: 0;
|
|
792
813
|
}
|
|
793
814
|
|
|
794
|
-
[data-v-
|
|
815
|
+
[data-v-80cd8f61] .el-upload-list__item, [data-v-80cd8f61] .el-upload--picture-card {
|
|
795
816
|
width: 120px;
|
|
796
817
|
height: 120px;
|
|
797
818
|
display: flex;
|
|
798
819
|
align-items: center;
|
|
799
820
|
justify-content: center;
|
|
800
821
|
}
|
|
822
|
+
.el-upload-file {
|
|
823
|
+
line-height: normal;
|
|
824
|
+
}
|
|
825
|
+
.el-upload-file .el-checkbox {
|
|
826
|
+
position: absolute;
|
|
827
|
+
left: 10px;
|
|
828
|
+
top: 0;
|
|
829
|
+
z-index: 9;
|
|
830
|
+
}
|
|
831
|
+
.el-upload-file .el-upload-list__item-file-name {
|
|
832
|
+
line-height: normal;
|
|
833
|
+
}
|
|
801
834
|
.circular[data-v-b391445c] {
|
|
802
835
|
animation: loading-rotate-b391445c 2s linear infinite;
|
|
803
836
|
}
|
|
@@ -829,47 +862,11 @@ video {
|
|
|
829
862
|
stroke-dashoffset: -120px;
|
|
830
863
|
}
|
|
831
864
|
}
|
|
832
|
-
.gm-upload-material .el-overlay-dialog {
|
|
833
|
-
display: flex;
|
|
834
|
-
align-items: center;
|
|
835
|
-
justify-content: center;
|
|
836
|
-
}
|
|
837
|
-
.gm-upload-material .el-dialog {
|
|
838
|
-
margin: 0;
|
|
839
|
-
}
|
|
840
|
-
.gm-upload-material .el-dialog__body {
|
|
841
|
-
max-height: calc(100vh - 100px);
|
|
842
|
-
overflow-y: auto;
|
|
843
|
-
}
|
|
844
|
-
.gm-upload-material .el-dialog__body video,
|
|
845
|
-
.gm-upload-material .el-dialog__body img {
|
|
846
|
-
max-height: calc(100vh - 150px);
|
|
847
|
-
}
|
|
848
|
-
.gm-number-interval-single[data-v-47a13fd0] {
|
|
849
|
-
border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
|
|
850
|
-
box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
|
|
851
|
-
background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
|
|
852
|
-
}
|
|
853
|
-
.gm-number-interval-single[data-v-47a13fd0] [data-v-47a13fd0] .el-input__wrapper {
|
|
854
|
-
box-shadow: none;
|
|
855
|
-
background: none;
|
|
856
|
-
}
|
|
857
|
-
|
|
858
|
-
.gm-number-interval-close[data-v-47a13fd0] {
|
|
859
|
-
display: none;
|
|
860
|
-
color: var(--el-input-icon-color, var(--el-text-color-placeholder));
|
|
861
|
-
}
|
|
862
865
|
|
|
863
|
-
.gm-number
|
|
864
|
-
|
|
865
|
-
}
|
|
866
|
-
.gm-flex-center[data-v-2a79bac9] {
|
|
867
|
-
align-items: center;
|
|
868
|
-
}
|
|
866
|
+
.gm-range-number .el-form-item[data-v-11c39847] {
|
|
867
|
+
margin: 0;
|
|
868
|
+
}
|
|
869
869
|
|
|
870
|
-
.gm-flex-justify-between[data-v-2a79bac9] {
|
|
871
|
-
justify-content: space-between;
|
|
872
|
-
}
|
|
873
870
|
[data-v-7b6755e2] .gmSearchForm .el-form-item {
|
|
874
871
|
margin-right: 0;
|
|
875
872
|
margin-bottom: 4px;
|
|
@@ -905,3 +902,22 @@ video {
|
|
|
905
902
|
.pagination-container.hidden[data-v-19230954] {
|
|
906
903
|
display: none;
|
|
907
904
|
}
|
|
905
|
+
|
|
906
|
+
.gm-number-interval-single[data-v-47a13fd0] {
|
|
907
|
+
border-radius: var(--el-input-border-radius, var(--el-border-radius-base));
|
|
908
|
+
box-shadow: 0 0 0 1px var(--el-input-border-color, var(--el-border-color)) inset;
|
|
909
|
+
background-color: var(--el-input-bg-color, var(--el-fill-color-blank));
|
|
910
|
+
}
|
|
911
|
+
.gm-number-interval-single[data-v-47a13fd0] [data-v-47a13fd0] .el-input__wrapper {
|
|
912
|
+
box-shadow: none;
|
|
913
|
+
background: none;
|
|
914
|
+
}
|
|
915
|
+
|
|
916
|
+
.gm-number-interval-close[data-v-47a13fd0] {
|
|
917
|
+
display: none;
|
|
918
|
+
color: var(--el-input-icon-color, var(--el-text-color-placeholder));
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
.gm-number-interval-single[data-v-47a13fd0]:hover .gm-number-interval-close[data-v-47a13fd0] {
|
|
922
|
+
display: flex;
|
|
923
|
+
}
|
package/lib/utils/index.js
CHANGED
|
@@ -31,6 +31,7 @@ exports.isDate = is.isDate;
|
|
|
31
31
|
exports.isDecimal = is.isDecimal;
|
|
32
32
|
exports.isError = is.isError;
|
|
33
33
|
exports.isEven = is.isEven;
|
|
34
|
+
exports.isExcel = is.isExcel;
|
|
34
35
|
exports.isHttps = is.isHttps;
|
|
35
36
|
exports.isImageUrl = is.isImageUrl;
|
|
36
37
|
exports.isInteger = is.isInteger;
|
|
@@ -40,12 +41,18 @@ exports.isNull = is.isNull;
|
|
|
40
41
|
exports.isNumber = is.isNumber;
|
|
41
42
|
exports.isObjectLike = is.isObjectLike;
|
|
42
43
|
exports.isOdd = is.isOdd;
|
|
44
|
+
exports.isPDF = is.isPDF;
|
|
45
|
+
exports.isPPT = is.isPPT;
|
|
46
|
+
exports.isPSD = is.isPSD;
|
|
43
47
|
exports.isPlainObject = is.isPlainObject;
|
|
44
48
|
exports.isPositive = is.isPositive;
|
|
45
49
|
exports.isString = is.isString;
|
|
46
50
|
exports.isSymbol = is.isSymbol;
|
|
51
|
+
exports.isText = is.isText;
|
|
47
52
|
exports.isUndefined = is.isUndefined;
|
|
48
53
|
exports.isVideoUrl = is.isVideoUrl;
|
|
54
|
+
exports.isWord = is.isWord;
|
|
55
|
+
exports.isZip = is.isZip;
|
|
49
56
|
exports.hasOwn = objects.hasOwn;
|
|
50
57
|
exports.keysOf = objects.keysOf;
|
|
51
58
|
exports.resetObject = objects.resetObject;
|
package/lib/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/// <reference types="@vueuse/shared" />
|
|
2
|
+
import { type PostSaveFileResourcesData } from '../../../api/materialApi';
|
|
3
|
+
export type PostSaveFileResponse = PostSaveFileResourcesData;
|
|
4
|
+
export type UploadAliOssFile = File & {
|
|
5
|
+
uid: number;
|
|
6
|
+
};
|
|
7
|
+
/** 上传文件到阿里云 */
|
|
8
|
+
export type AliOssParams = {
|
|
9
|
+
/** 资源文件 */
|
|
10
|
+
file: UploadAliOssFile;
|
|
11
|
+
/** 文件名 */
|
|
12
|
+
fileName?: string;
|
|
13
|
+
/** 文件存储路径 */
|
|
14
|
+
folder?: string;
|
|
15
|
+
/** 文件存储位置 */
|
|
16
|
+
seat?: string;
|
|
17
|
+
/** 并行上传数量 */
|
|
18
|
+
parallel?: number;
|
|
19
|
+
/** 并行分片大小 */
|
|
20
|
+
partSize?: number;
|
|
21
|
+
/** 阿里上传配置 */
|
|
22
|
+
options?: {
|
|
23
|
+
[key: string]: any;
|
|
24
|
+
};
|
|
25
|
+
/** 阿里服务器 Bucket 名称 */
|
|
26
|
+
bucket?: string;
|
|
27
|
+
/** cdn */
|
|
28
|
+
cdn?: string;
|
|
29
|
+
/** 文件是否保存入库 */
|
|
30
|
+
saveStore?: boolean;
|
|
31
|
+
};
|
|
32
|
+
/** 返回数据 */
|
|
33
|
+
export type AliOssResponse = {
|
|
34
|
+
/** 文件地址 */
|
|
35
|
+
url: string;
|
|
36
|
+
/** 文件名 */
|
|
37
|
+
name: string;
|
|
38
|
+
/** 文件唯一标识 */
|
|
39
|
+
uid: number;
|
|
40
|
+
/** 文件最后修改时间 */
|
|
41
|
+
lastModified: number;
|
|
42
|
+
/** 文件md5 */
|
|
43
|
+
md5: string;
|
|
44
|
+
/** 文件大小 */
|
|
45
|
+
size: number;
|
|
46
|
+
/** 文件后缀 */
|
|
47
|
+
type: string;
|
|
48
|
+
/** 文件库是否存在 */
|
|
49
|
+
isExist: boolean;
|
|
50
|
+
};
|
|
51
|
+
export declare const ts_md5_file: (file: File) => Promise<string>;
|
|
52
|
+
/** 文件分片 */
|
|
53
|
+
export declare const getParallelPartSize: (size: number) => {
|
|
54
|
+
parallel: number;
|
|
55
|
+
partSize: number;
|
|
56
|
+
};
|
|
57
|
+
/** 上传 Hook */
|
|
58
|
+
export declare const useAliossHookStore: import("pinia").StoreDefinition<"aliossHook", import("pinia")._UnwrapAll<Pick<{
|
|
59
|
+
aliossResult: import("@vueuse/shared").EventHookOn<AliOssResponse>;
|
|
60
|
+
aliossError: import("@vueuse/shared").EventHookOn<any>;
|
|
61
|
+
saveFileResult: import("@vueuse/shared").EventHookOn<PostSaveFileResourcesData>;
|
|
62
|
+
saveFileError: import("@vueuse/shared").EventHookOn<any>;
|
|
63
|
+
uploadFile: ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => Promise<unknown>;
|
|
64
|
+
postSaveFile: ({ url, md5_code, file_size }: PostSaveFileResourcesData) => Promise<unknown>;
|
|
65
|
+
}, never>>, Pick<{
|
|
66
|
+
aliossResult: import("@vueuse/shared").EventHookOn<AliOssResponse>;
|
|
67
|
+
aliossError: import("@vueuse/shared").EventHookOn<any>;
|
|
68
|
+
saveFileResult: import("@vueuse/shared").EventHookOn<PostSaveFileResourcesData>;
|
|
69
|
+
saveFileError: import("@vueuse/shared").EventHookOn<any>;
|
|
70
|
+
uploadFile: ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => Promise<unknown>;
|
|
71
|
+
postSaveFile: ({ url, md5_code, file_size }: PostSaveFileResourcesData) => Promise<unknown>;
|
|
72
|
+
}, never>, Pick<{
|
|
73
|
+
aliossResult: import("@vueuse/shared").EventHookOn<AliOssResponse>;
|
|
74
|
+
aliossError: import("@vueuse/shared").EventHookOn<any>;
|
|
75
|
+
saveFileResult: import("@vueuse/shared").EventHookOn<PostSaveFileResourcesData>;
|
|
76
|
+
saveFileError: import("@vueuse/shared").EventHookOn<any>;
|
|
77
|
+
uploadFile: ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => Promise<unknown>;
|
|
78
|
+
postSaveFile: ({ url, md5_code, file_size }: PostSaveFileResourcesData) => Promise<unknown>;
|
|
79
|
+
}, "aliossResult" | "aliossError" | "saveFileResult" | "saveFileError" | "uploadFile" | "postSaveFile">>;
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var pinia = require('pinia');
|
|
4
|
+
var core = require('@vueuse/core');
|
|
5
|
+
var jsMd5 = require('js-md5');
|
|
6
|
+
var AliOss = require('ali-oss');
|
|
7
|
+
require('../../../api/materialApi/index.js');
|
|
8
|
+
var aliossToken = require('./aliossToken.js');
|
|
9
|
+
var getAdFileExist = require('../../../api/materialApi/cross/getAdFileExist.js');
|
|
10
|
+
var postSaveFileResources = require('../../../api/materialApi/cross/postSaveFileResources.js');
|
|
11
|
+
|
|
12
|
+
const ts_md5_file = (file) => {
|
|
13
|
+
return new Promise((resolve) => {
|
|
14
|
+
const reader = new FileReader();
|
|
15
|
+
reader.onload = async function(e) {
|
|
16
|
+
const binary = e.target.result;
|
|
17
|
+
resolve(jsMd5.md5(binary));
|
|
18
|
+
};
|
|
19
|
+
reader.readAsArrayBuffer(file);
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
const getParallelPartSize = (size) => {
|
|
23
|
+
const thresholds = [
|
|
24
|
+
{
|
|
25
|
+
max: 5,
|
|
26
|
+
parallel: 1,
|
|
27
|
+
multiplier: 5
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
max: 10,
|
|
31
|
+
parallel: 2,
|
|
32
|
+
multiplier: 4
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
max: 30,
|
|
36
|
+
parallel: 4,
|
|
37
|
+
multiplier: 5
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
max: 50,
|
|
41
|
+
parallel: 6,
|
|
42
|
+
multiplier: 6
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
max: Number.POSITIVE_INFINITY,
|
|
46
|
+
parallel: 8,
|
|
47
|
+
multiplier: 8
|
|
48
|
+
}
|
|
49
|
+
];
|
|
50
|
+
const { parallel, multiplier } = thresholds.find(({ max }) => size <= max) || thresholds[thresholds.length - 1];
|
|
51
|
+
return {
|
|
52
|
+
parallel,
|
|
53
|
+
partSize: multiplier * 1024 * 1024
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
const useAliossHookStore = pinia.defineStore("aliossHook", () => {
|
|
57
|
+
const aliossResult = core.createEventHook();
|
|
58
|
+
const aliossError = core.createEventHook();
|
|
59
|
+
const saveFileResult = core.createEventHook();
|
|
60
|
+
const saveFileError = core.createEventHook();
|
|
61
|
+
const getFileExist = async ({
|
|
62
|
+
md5Code,
|
|
63
|
+
ext,
|
|
64
|
+
name,
|
|
65
|
+
size,
|
|
66
|
+
uid,
|
|
67
|
+
lastModified
|
|
68
|
+
}) => {
|
|
69
|
+
return new Promise(async (resolve) => {
|
|
70
|
+
const { data } = await getAdFileExist.getAdFileExist({ md5Code, ext });
|
|
71
|
+
if (data.code !== 0 || data.data.count === 0) {
|
|
72
|
+
return resolve(false);
|
|
73
|
+
}
|
|
74
|
+
const result = {
|
|
75
|
+
name,
|
|
76
|
+
uid,
|
|
77
|
+
lastModified,
|
|
78
|
+
size,
|
|
79
|
+
url: data.data.url,
|
|
80
|
+
md5: md5Code,
|
|
81
|
+
type: ext,
|
|
82
|
+
isExist: true
|
|
83
|
+
};
|
|
84
|
+
resolve(result);
|
|
85
|
+
aliossResult.trigger(result);
|
|
86
|
+
});
|
|
87
|
+
};
|
|
88
|
+
const uploadFile = async ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }) => {
|
|
89
|
+
let { name, uid, lastModified, size } = file;
|
|
90
|
+
const ext = name.match(/\.(\w+)$/)?.[0] || "";
|
|
91
|
+
name = (fileName || name).slice(0, name.lastIndexOf("."));
|
|
92
|
+
const md5Code = await ts_md5_file(file);
|
|
93
|
+
const FileName = name + ext;
|
|
94
|
+
const type = ext.replaceAll(".", "");
|
|
95
|
+
try {
|
|
96
|
+
let result = await getFileExist({ md5Code, ext: type, name: FileName, size, uid, lastModified });
|
|
97
|
+
if (result)
|
|
98
|
+
return result;
|
|
99
|
+
const timestr = Date.now();
|
|
100
|
+
const path = `${folder ?? "material"}/${seat ?? "default"}/file-${timestr}-${md5Code}${ext}`;
|
|
101
|
+
const P = getParallelPartSize(size);
|
|
102
|
+
options = {
|
|
103
|
+
...P,
|
|
104
|
+
...{ parallel, partSize },
|
|
105
|
+
ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,
|
|
106
|
+
...options
|
|
107
|
+
};
|
|
108
|
+
const { AccessKeyId, AccessKeySecret, SecurityToken } = await aliossToken.default().getAliossTokenAsync();
|
|
109
|
+
const client = new AliOss({
|
|
110
|
+
// yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
|
|
111
|
+
region: "oss-cn-shenzhen",
|
|
112
|
+
// 从STS服务获取的临时访问密钥(AccessKey ID、AccessKey Secret、StsToken)。
|
|
113
|
+
accessKeyId: AccessKeyId,
|
|
114
|
+
accessKeySecret: AccessKeySecret,
|
|
115
|
+
stsToken: SecurityToken,
|
|
116
|
+
// 刷新临时访问凭证的时间间隔,单位为毫秒。
|
|
117
|
+
refreshSTSTokenInterval: 3e5,
|
|
118
|
+
// 填写Bucket名称。
|
|
119
|
+
bucket: bucket ?? "giikin-material"
|
|
120
|
+
});
|
|
121
|
+
const upload = options.parallel === 1 ? "put" : "multipartUpload";
|
|
122
|
+
const { res } = await client[upload](path, file, options);
|
|
123
|
+
if (res.status !== 200) {
|
|
124
|
+
aliossError.trigger(res);
|
|
125
|
+
return res;
|
|
126
|
+
}
|
|
127
|
+
cdn = cdn ?? "https://sucai.giikin.cn/";
|
|
128
|
+
const resultUrl = cdn + path;
|
|
129
|
+
result = {
|
|
130
|
+
url: resultUrl,
|
|
131
|
+
name: name + ext,
|
|
132
|
+
md5: md5Code,
|
|
133
|
+
type: ext.replaceAll(".", ""),
|
|
134
|
+
uid,
|
|
135
|
+
lastModified,
|
|
136
|
+
size,
|
|
137
|
+
isExist: false
|
|
138
|
+
};
|
|
139
|
+
if (saveStore) {
|
|
140
|
+
postSaveFile({ url: resultUrl, md5_code: md5Code, file_size: size });
|
|
141
|
+
}
|
|
142
|
+
aliossResult.trigger(result);
|
|
143
|
+
return result;
|
|
144
|
+
} catch (error) {
|
|
145
|
+
aliossError.trigger(error);
|
|
146
|
+
return error;
|
|
147
|
+
}
|
|
148
|
+
};
|
|
149
|
+
const postSaveFile = async ({ url, md5_code, file_size }) => {
|
|
150
|
+
try {
|
|
151
|
+
const { data } = await postSaveFileResources.postSaveFileResources({ fileData: { url, md5_code, file_size } });
|
|
152
|
+
if (data?.code !== 0) {
|
|
153
|
+
saveFileError.trigger(data);
|
|
154
|
+
return data;
|
|
155
|
+
}
|
|
156
|
+
const result = {
|
|
157
|
+
url,
|
|
158
|
+
md5_code,
|
|
159
|
+
file_size
|
|
160
|
+
};
|
|
161
|
+
saveFileResult.trigger(result);
|
|
162
|
+
return result;
|
|
163
|
+
} catch (error) {
|
|
164
|
+
saveFileError.trigger(error);
|
|
165
|
+
return error;
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
return {
|
|
169
|
+
aliossResult: aliossResult.on,
|
|
170
|
+
aliossError: aliossError.on,
|
|
171
|
+
saveFileResult: saveFileResult.on,
|
|
172
|
+
saveFileError: saveFileError.on,
|
|
173
|
+
uploadFile,
|
|
174
|
+
postSaveFile
|
|
175
|
+
};
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
exports.getParallelPartSize = getParallelPartSize;
|
|
179
|
+
exports.ts_md5_file = ts_md5_file;
|
|
180
|
+
exports.useAliossHookStore = useAliossHookStore;
|
|
181
|
+
//# sourceMappingURL=aliossPutHook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aliossPutHook.js","sources":["../../../../../../packages/utils/src/alioss/aliossPutHook.ts"],"sourcesContent":["import { defineStore } from 'pinia';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport { md5 } from 'js-md5';\r\nimport AliOss from 'ali-oss';\r\nimport { type PostSaveFileResourcesData, getAdFileExist, postSaveFileResources } from '@giime/api/materialApi';\r\nimport useAliossTokenStore from './aliossToken';\r\n\r\nexport type PostSaveFileResponse = PostSaveFileResourcesData;\r\nexport type UploadAliOssFile = File & { uid: number };\r\n\r\n/** 上传文件到阿里云 */\r\nexport type AliOssParams = {\r\n /** 资源文件 */\r\n file: UploadAliOssFile;\r\n /** 文件名 */\r\n fileName?: string;\r\n /** 文件存储路径 */\r\n folder?: string;\r\n /** 文件存储位置 */\r\n seat?: string;\r\n /** 并行上传数量 */\r\n parallel?: number;\r\n /** 并行分片大小 */\r\n partSize?: number;\r\n /** 阿里上传配置 */\r\n options?: { [key: string]: any };\r\n /** 阿里服务器 Bucket 名称 */\r\n bucket?: string;\r\n /** cdn */\r\n cdn?: string;\r\n /** 文件是否保存入库 */\r\n saveStore?: boolean;\r\n};\r\n\r\n/** 返回数据 */\r\nexport type AliOssResponse = {\r\n /** 文件地址 */\r\n url: string;\r\n /** 文件名 */\r\n name: string;\r\n /** 文件唯一标识 */\r\n uid: number;\r\n /** 文件最后修改时间 */\r\n lastModified: number;\r\n /** 文件md5 */\r\n md5: string;\r\n /** 文件大小 */\r\n size: number;\r\n /** 文件后缀 */\r\n type: string;\r\n /** 文件库是否存在 */\r\n isExist: boolean;\r\n};\r\n\r\nexport const ts_md5_file = (file: File) => {\r\n return new Promise<string>(resolve => {\r\n const reader = new FileReader();\r\n reader.onload = async function (e) {\r\n const binary = (e.target as any).result;\r\n resolve(md5(binary));\r\n };\r\n reader.readAsArrayBuffer(file);\r\n });\r\n};\r\n\r\n/** 文件分片 */\r\nexport const getParallelPartSize = (size: number) => {\r\n const thresholds = [\r\n {\r\n max: 5,\r\n parallel: 1,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 10,\r\n parallel: 2,\r\n multiplier: 4,\r\n },\r\n {\r\n max: 30,\r\n parallel: 4,\r\n multiplier: 5,\r\n },\r\n {\r\n max: 50,\r\n parallel: 6,\r\n multiplier: 6,\r\n },\r\n {\r\n max: Number.POSITIVE_INFINITY,\r\n parallel: 8,\r\n multiplier: 8,\r\n },\r\n ];\r\n const { parallel, multiplier } = thresholds.find(({ max }) => size <= max) || thresholds[thresholds.length - 1];\r\n\r\n return {\r\n parallel,\r\n partSize: multiplier * 1024 * 1024,\r\n };\r\n};\r\n\r\n/** 上传 Hook */\r\nexport const useAliossHookStore = defineStore('aliossHook', () => {\r\n const aliossResult = createEventHook<AliOssResponse>();\r\n const aliossError = createEventHook<any>();\r\n const saveFileResult = createEventHook<PostSaveFileResponse>();\r\n const saveFileError = createEventHook<any>();\r\n\r\n /** 检测广告素材是否已存在 */\r\n const getFileExist = async ({\r\n md5Code,\r\n ext,\r\n name,\r\n size,\r\n uid,\r\n lastModified,\r\n }: {\r\n md5Code: string;\r\n ext: string;\r\n name: string;\r\n size: number;\r\n uid: number;\r\n lastModified: number;\r\n }) => {\r\n // eslint-disable-next-line no-async-promise-executor\r\n return new Promise<AliOssResponse | false>(async resolve => {\r\n const { data } = await getAdFileExist({ md5Code, ext });\r\n if (data.code !== 0 || data.data.count === 0) {\r\n return resolve(false);\r\n }\r\n const result = {\r\n name,\r\n uid,\r\n lastModified,\r\n size,\r\n url: data.data.url,\r\n md5: md5Code,\r\n type: ext,\r\n isExist: true,\r\n };\r\n resolve(result);\r\n aliossResult.trigger(result);\r\n });\r\n };\r\n\r\n /** 上传文件 */\r\n const uploadFile = async ({ file, fileName, folder, seat, parallel, partSize, options, bucket, cdn, saveStore }: AliOssParams) => {\r\n let { name, uid, lastModified, size } = file;\r\n const ext = name.match(/\\.(\\w+)$/)?.[0] || '';\r\n name = (fileName || name).slice(0, name.lastIndexOf('.'));\r\n const md5Code = await ts_md5_file(file);\r\n const FileName = name + ext;\r\n const type = ext.replaceAll('.', '');\r\n\r\n try {\r\n let result = await getFileExist({ md5Code, ext: type, name: FileName, size, uid, lastModified });\r\n if (result) return result;\r\n\r\n // 文件存储路径\r\n const timestr = Date.now();\r\n const path = `${folder ?? 'material'}/${seat ?? 'default'}/file-${timestr}-${md5Code}${ext}`;\r\n\r\n const P = getParallelPartSize(size);\r\n options = {\r\n ...P,\r\n ...{ parallel, partSize },\r\n ContentDisposition: `attachment;filename=${encodeURIComponent(name)}${ext};filename*=${encodeURIComponent(name)}${ext}`,\r\n ...options,\r\n };\r\n\r\n // 阿里云临时上传权限\r\n const { AccessKeyId, AccessKeySecret, SecurityToken } = await useAliossTokenStore().getAliossTokenAsync();\r\n\r\n const client = new AliOss({\r\n // yourRegion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。\r\n region: 'oss-cn-shenzhen',\r\n // 从STS服务获取的临时访问密钥(AccessKey ID、AccessKey Secret、StsToken)。\r\n accessKeyId: AccessKeyId,\r\n accessKeySecret: AccessKeySecret,\r\n stsToken: SecurityToken,\r\n // 刷新临时访问凭证的时间间隔,单位为毫秒。\r\n refreshSTSTokenInterval: 300000,\r\n // 填写Bucket名称。\r\n bucket: bucket ?? 'giikin-material',\r\n });\r\n\r\n const upload = options.parallel === 1 ? 'put' : 'multipartUpload';\r\n const { res } = await client[upload](path, file, options);\r\n if (res.status !== 200) {\r\n aliossError.trigger(res);\r\n return res;\r\n }\r\n cdn = cdn ?? 'https://sucai.giikin.cn/';\r\n const resultUrl = cdn + path;\r\n result = {\r\n url: resultUrl,\r\n name: name + ext,\r\n md5: md5Code,\r\n type: ext.replaceAll('.', ''),\r\n uid,\r\n lastModified,\r\n size,\r\n isExist: false,\r\n };\r\n if (saveStore) {\r\n postSaveFile({ url: resultUrl, md5_code: md5Code, file_size: size });\r\n }\r\n aliossResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n aliossError.trigger(error);\r\n return error;\r\n }\r\n };\r\n\r\n /** 文件入库 */\r\n const postSaveFile = async ({ url, md5_code, file_size }: PostSaveFileResourcesData) => {\r\n try {\r\n const { data } = await postSaveFileResources({ fileData: { url, md5_code, file_size } });\r\n if (data?.code !== 0) {\r\n saveFileError.trigger(data);\r\n return data;\r\n }\r\n const result = {\r\n url,\r\n md5_code,\r\n file_size,\r\n };\r\n saveFileResult.trigger(result);\r\n return result;\r\n } catch (error) {\r\n saveFileError.trigger(error);\r\n return error;\r\n }\r\n };\r\n return {\r\n aliossResult: aliossResult.on,\r\n aliossError: aliossError.on,\r\n saveFileResult: saveFileResult.on,\r\n saveFileError: saveFileError.on,\r\n uploadFile,\r\n postSaveFile,\r\n };\r\n});\r\n"],"names":["md5","defineStore","createEventHook","getAdFileExist","useAliossTokenStore","postSaveFileResources"],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type GetOssAccessTokenResponseData } from '../../../api/materialApi';
|
|
2
|
+
/**
|
|
3
|
+
* @description 素材上传权限
|
|
4
|
+
* @param {*}
|
|
5
|
+
* @return {*}
|
|
6
|
+
**/
|
|
7
|
+
declare const useAliossTokenStore: import("pinia").StoreDefinition<"aliossToken", import("pinia")._UnwrapAll<Pick<{
|
|
8
|
+
isLoading: import("vue").Ref<boolean>;
|
|
9
|
+
getAliossTokenAsync: () => Promise<GetOssAccessTokenResponseData>;
|
|
10
|
+
}, "isLoading">>, Pick<{
|
|
11
|
+
isLoading: import("vue").Ref<boolean>;
|
|
12
|
+
getAliossTokenAsync: () => Promise<GetOssAccessTokenResponseData>;
|
|
13
|
+
}, never>, Pick<{
|
|
14
|
+
isLoading: import("vue").Ref<boolean>;
|
|
15
|
+
getAliossTokenAsync: () => Promise<GetOssAccessTokenResponseData>;
|
|
16
|
+
}, "getAliossTokenAsync">>;
|
|
17
|
+
export default useAliossTokenStore;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var vue = require('vue');
|
|
6
|
+
var pinia = require('pinia');
|
|
7
|
+
require('../../../api/materialApi/index.js');
|
|
8
|
+
var core = require('@vueuse/core');
|
|
9
|
+
var Cookies = require('js-cookie');
|
|
10
|
+
var getOssAccessToken = require('../../../api/materialApi/cross/getOssAccessToken.js');
|
|
11
|
+
|
|
12
|
+
const useAliossTokenStore = pinia.defineStore("aliossToken", () => {
|
|
13
|
+
const isLoading = vue.ref(false);
|
|
14
|
+
const aliossTokenResult = core.createEventHook();
|
|
15
|
+
const setCookie = (data) => {
|
|
16
|
+
if (!data)
|
|
17
|
+
return;
|
|
18
|
+
const { Expiration } = data;
|
|
19
|
+
const time = new Date(new Date(Expiration ?? 0).getTime() - 1e4);
|
|
20
|
+
Cookies.set("aliossStsToken", JSON.stringify(data), { expires: time });
|
|
21
|
+
};
|
|
22
|
+
const getAliossToken = async () => {
|
|
23
|
+
const aliossStsToken = Cookies.get("aliossStsToken");
|
|
24
|
+
if (aliossStsToken) {
|
|
25
|
+
return JSON.parse(aliossStsToken);
|
|
26
|
+
}
|
|
27
|
+
isLoading.value = true;
|
|
28
|
+
try {
|
|
29
|
+
const { data } = await getOssAccessToken.getOssAccessToken();
|
|
30
|
+
if (data.code === 0) {
|
|
31
|
+
setCookie(data.data);
|
|
32
|
+
aliossTokenResult.trigger(data.data);
|
|
33
|
+
}
|
|
34
|
+
return data.data;
|
|
35
|
+
} finally {
|
|
36
|
+
isLoading.value = false;
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const getAliossTokenAsync = () => {
|
|
40
|
+
return new Promise((resolve) => {
|
|
41
|
+
if (isLoading.value) {
|
|
42
|
+
aliossTokenResult.on((value) => resolve(value));
|
|
43
|
+
} else {
|
|
44
|
+
resolve(getAliossToken());
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
return {
|
|
49
|
+
isLoading,
|
|
50
|
+
getAliossTokenAsync
|
|
51
|
+
};
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
exports.default = useAliossTokenStore;
|
|
55
|
+
//# sourceMappingURL=aliossToken.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aliossToken.js","sources":["../../../../../../packages/utils/src/alioss/aliossToken.ts"],"sourcesContent":["import { ref } from 'vue';\r\nimport { defineStore } from 'pinia';\r\nimport { type GetOssAccessTokenResponseData, getOssAccessToken } from '@giime/api/materialApi';\r\nimport { createEventHook } from '@vueuse/core';\r\nimport Cookies from 'js-cookie';\r\n\r\n/**\r\n * @description 素材上传权限\r\n * @param {*}\r\n * @return {*}\r\n **/\r\n\r\nconst useAliossTokenStore = defineStore('aliossToken', () => {\r\n const isLoading = ref(false);\r\n const aliossTokenResult = createEventHook<GetOssAccessTokenResponseData>();\r\n\r\n const setCookie = (data: GetOssAccessTokenResponseData) => {\r\n if (!data) return;\r\n const { Expiration } = data;\r\n const time = new Date(new Date(Expiration ?? 0).getTime() - 10000); //-10秒作为缓冲\r\n Cookies.set('aliossStsToken', JSON.stringify(data), { expires: time });\r\n };\r\n\r\n /* 请求临时上传权限 */\r\n const getAliossToken = async () => {\r\n const aliossStsToken = Cookies.get('aliossStsToken');\r\n if (aliossStsToken) {\r\n return JSON.parse(aliossStsToken) as GetOssAccessTokenResponseData;\r\n }\r\n isLoading.value = true;\r\n try {\r\n const { data } = await getOssAccessToken();\r\n if (data.code === 0) {\r\n setCookie(data.data);\r\n aliossTokenResult.trigger(data.data);\r\n }\r\n return data.data;\r\n } finally {\r\n isLoading.value = false;\r\n }\r\n };\r\n\r\n /* 获取 alioss 临时上传 token*/\r\n const getAliossTokenAsync = () => {\r\n /* 若正在请求请求临时token接口 则其他后进来的等待 */\r\n return new Promise<GetOssAccessTokenResponseData>(resolve => {\r\n if (isLoading.value) {\r\n aliossTokenResult.on(value => resolve(value));\r\n } else {\r\n resolve(getAliossToken());\r\n }\r\n });\r\n };\r\n\r\n return {\r\n isLoading,\r\n getAliossTokenAsync,\r\n };\r\n});\r\n\r\nexport default useAliossTokenStore;\r\n"],"names":["defineStore","ref","createEventHook","getOssAccessToken"],"mappings":";;;;;;;;;;;AAYM,MAAA,mBAAA,GAAsBA,iBAAY,CAAA,aAAA,EAAe,MAAM;AAC3D,EAAM,MAAA,SAAA,GAAYC,QAAI,KAAK,CAAA,CAAA;AAC3B,EAAA,MAAM,oBAAoBC,oBAA+C,EAAA,CAAA;AAEzE,EAAM,MAAA,SAAA,GAAY,CAAC,IAAwC,KAAA;AACzD,IAAA,IAAI,CAAC,IAAA;AAAM,MAAA,OAAA;AACX,IAAM,MAAA,EAAE,YAAe,GAAA,IAAA,CAAA;AACvB,IAAM,MAAA,IAAA,GAAO,IAAI,IAAA,CAAK,IAAI,IAAA,CAAK,cAAc,CAAC,CAAA,CAAE,OAAQ,EAAA,GAAI,GAAK,CAAA,CAAA;AACjE,IAAQ,OAAA,CAAA,GAAA,CAAI,kBAAkB,IAAK,CAAA,SAAA,CAAU,IAAI,CAAG,EAAA,EAAE,OAAS,EAAA,IAAA,EAAM,CAAA,CAAA;AAAA,GACvE,CAAA;AAGA,EAAA,MAAM,iBAAiB,YAAY;AACjC,IAAM,MAAA,cAAA,GAAiB,OAAQ,CAAA,GAAA,CAAI,gBAAgB,CAAA,CAAA;AACnD,IAAA,IAAI,cAAgB,EAAA;AAClB,MAAO,OAAA,IAAA,CAAK,MAAM,cAAc,CAAA,CAAA;AAAA,KAClC;AACA,IAAA,SAAA,CAAU,KAAQ,GAAA,IAAA,CAAA;AAClB,IAAI,IAAA;AACF,MAAA,MAAM,EAAE,IAAA,EAAS,GAAA,MAAMC,mCAAkB,EAAA,CAAA;AACzC,MAAI,IAAA,IAAA,CAAK,SAAS,CAAG,EAAA;AACnB,QAAA,SAAA,CAAU,KAAK,IAAI,CAAA,CAAA;AACnB,QAAkB,iBAAA,CAAA,OAAA,CAAQ,KAAK,IAAI,CAAA,CAAA;AAAA,OACrC;AACA,MAAA,OAAO,IAAK,CAAA,IAAA,CAAA;AAAA,KACZ,SAAA;AACA,MAAA,SAAA,CAAU,KAAQ,GAAA,KAAA,CAAA;AAAA,KACpB;AAAA,GACF,CAAA;AAGA,EAAA,MAAM,sBAAsB,MAAM;AAEhC,IAAO,OAAA,IAAI,QAAuC,CAAW,OAAA,KAAA;AAC3D,MAAA,IAAI,UAAU,KAAO,EAAA;AACnB,QAAA,iBAAA,CAAkB,EAAG,CAAA,CAAA,KAAA,KAAS,OAAQ,CAAA,KAAK,CAAC,CAAA,CAAA;AAAA,OACvC,MAAA;AACL,QAAA,OAAA,CAAQ,gBAAgB,CAAA,CAAA;AAAA,OAC1B;AAAA,KACD,CAAA,CAAA;AAAA,GACH,CAAA;AAEA,EAAO,OAAA;AAAA,IACL,SAAA;AAAA,IACA,mBAAA;AAAA,GACF,CAAA;AACF,CAAC;;;;"}
|
package/lib/utils/src/is.d.ts
CHANGED
|
@@ -40,14 +40,56 @@ export declare function isError(value: any): value is Error;
|
|
|
40
40
|
export declare function isPlainObject(value: any): value is object;
|
|
41
41
|
export declare const isHttps: () => boolean;
|
|
42
42
|
/**
|
|
43
|
-
* @description
|
|
43
|
+
* @description 描述:判断是否为视频
|
|
44
44
|
* @param {string} url 文件链接 或 文件名
|
|
45
45
|
* @return {*}
|
|
46
46
|
**/
|
|
47
47
|
export declare const isVideoUrl: (url: string) => boolean;
|
|
48
48
|
/**
|
|
49
|
-
* @description
|
|
49
|
+
* @description 描述:判断是否为图片
|
|
50
50
|
* @param {string} url 文件链接 或 文件名
|
|
51
51
|
* @return {*}
|
|
52
52
|
**/
|
|
53
53
|
export declare const isImageUrl: (url: string) => boolean;
|
|
54
|
+
/**
|
|
55
|
+
* @description 描述:判断是否为PDF
|
|
56
|
+
* @param {string} url 文件链接 或 文件名
|
|
57
|
+
* @return {*}
|
|
58
|
+
**/
|
|
59
|
+
export declare const isPDF: (url: string) => boolean;
|
|
60
|
+
/**
|
|
61
|
+
* @description 描述:是否为Word
|
|
62
|
+
* @param {string} url 文件链接 或 文件名
|
|
63
|
+
* @return {*}
|
|
64
|
+
**/
|
|
65
|
+
export declare const isWord: (url: string) => boolean;
|
|
66
|
+
/**
|
|
67
|
+
* @description 描述:是否为Excel
|
|
68
|
+
* @param {string} url 文件链接 或 文件名
|
|
69
|
+
* @return {*}
|
|
70
|
+
**/
|
|
71
|
+
export declare const isExcel: (url: string) => boolean;
|
|
72
|
+
/**
|
|
73
|
+
* @description 描述:是否为PPT
|
|
74
|
+
* @param {string} url 文件链接 或 文件名
|
|
75
|
+
* @return {*}
|
|
76
|
+
**/
|
|
77
|
+
export declare const isPPT: (url: string) => boolean;
|
|
78
|
+
/**
|
|
79
|
+
* @description 描述:是否为text
|
|
80
|
+
* @param {string} url 文件链接 或 文件名
|
|
81
|
+
* @return {*}
|
|
82
|
+
**/
|
|
83
|
+
export declare const isText: (url: string) => boolean;
|
|
84
|
+
/**
|
|
85
|
+
* @description 描述:是否为PSD
|
|
86
|
+
* @param {string} url 文件链接 或 文件名
|
|
87
|
+
* @return {*}
|
|
88
|
+
**/
|
|
89
|
+
export declare const isPSD: (url: string) => boolean;
|
|
90
|
+
/**
|
|
91
|
+
* @description 描述:是否为压缩包
|
|
92
|
+
* @param {string} url 文件链接 或 文件名
|
|
93
|
+
* @return {*}
|
|
94
|
+
**/
|
|
95
|
+
export declare const isZip: (url: string) => boolean;
|