@qxs-bns/components 0.0.46 → 0.0.48
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/es/index.css +83 -0
- package/es/package.json.mjs +1 -1
- package/es/src/data-chart/src/components/area.vue.mjs +1 -1
- package/es/src/data-chart/src/components/card.vue.mjs +1 -1
- package/es/src/data-chart/src/components/card.vue2.mjs +1 -1
- package/es/src/data-chart/src/components/card.vue2.mjs.map +1 -1
- package/es/src/data-chart/src/components/line.vue.mjs +1 -1
- package/es/src/data-chart/src/components/table.vue.mjs +1 -1
- package/es/src/data-chart/src/components/table.vue.mjs.map +1 -1
- package/es/src/file-upload/src/file-upload.vue.mjs +1 -1
- package/es/src/file-upload/src/file-upload.vue.mjs.map +1 -1
- package/es/src/image-upload/src/image-upload.vue.mjs +1 -1
- package/es/src/image-upload/src/image-upload.vue.mjs.map +1 -1
- package/es/src/subject-action/src/subject-action.vue.mjs +1 -1
- package/es/src/subject-action/src/subject-action.vue.mjs.map +1 -1
- package/es/src/subject-list/src/components/SubjectPageEnd.vue.mjs +1 -1
- package/es/src/subject-list/src/components/SubjectPageEnd.vue.mjs.map +1 -1
- package/es/src/subject-list/src/components/subject-blank-fill.vue.mjs +1 -1
- package/es/src/subject-list/src/components/subject-blank-fill.vue.mjs.map +1 -1
- package/es/src/subject-list/src/components/subject-scale.vue.mjs +1 -1
- package/es/src/subject-list/src/components/subject-scale.vue.mjs.map +1 -1
- package/es/src/subject-list/src/components/subject-single.vue.mjs +1 -1
- package/es/src/subject-list/src/components/subject-single.vue.mjs.map +1 -1
- package/es/src/subject-list/src/components/subject-text-fill.vue.mjs +1 -1
- package/es/src/subject-list/src/components/subject-text-fill.vue.mjs.map +1 -1
- package/es/src/subject-list/src/subject-list.vue.mjs +1 -1
- package/es/src/subject-list/src/subject-list.vue.mjs.map +1 -1
- package/es/src/tiny-mce-editor/index.mjs.map +1 -1
- package/es/src/tiny-mce-editor/src/tiny-mce-editor.vue.mjs +1 -1
- package/es/src/tiny-mce-editor/src/tiny-mce-editor.vue.mjs.map +1 -1
- package/lib/index.css +83 -0
- package/lib/package.json.cjs +1 -1
- package/lib/src/data-chart/src/components/area.vue.cjs +1 -1
- package/lib/src/data-chart/src/components/card.vue.cjs +1 -1
- package/lib/src/data-chart/src/components/card.vue2.cjs +1 -1
- package/lib/src/data-chart/src/components/card.vue2.cjs.map +1 -1
- package/lib/src/data-chart/src/components/line.vue.cjs +1 -1
- package/lib/src/data-chart/src/components/table.vue.cjs +1 -1
- package/lib/src/data-chart/src/components/table.vue.cjs.map +1 -1
- package/lib/src/file-upload/src/file-upload.vue.cjs +1 -1
- package/lib/src/file-upload/src/file-upload.vue.cjs.map +1 -1
- package/lib/src/image-upload/src/image-upload.vue.cjs +1 -1
- package/lib/src/image-upload/src/image-upload.vue.cjs.map +1 -1
- package/lib/src/subject-action/src/subject-action.vue.cjs +1 -1
- package/lib/src/subject-action/src/subject-action.vue.cjs.map +1 -1
- package/lib/src/subject-list/src/components/SubjectPageEnd.vue.cjs +1 -1
- package/lib/src/subject-list/src/components/SubjectPageEnd.vue.cjs.map +1 -1
- package/lib/src/subject-list/src/components/subject-blank-fill.vue.cjs +1 -1
- package/lib/src/subject-list/src/components/subject-blank-fill.vue.cjs.map +1 -1
- package/lib/src/subject-list/src/components/subject-scale.vue.cjs +1 -1
- package/lib/src/subject-list/src/components/subject-scale.vue.cjs.map +1 -1
- package/lib/src/subject-list/src/components/subject-single.vue.cjs +1 -1
- package/lib/src/subject-list/src/components/subject-single.vue.cjs.map +1 -1
- package/lib/src/subject-list/src/components/subject-text-fill.vue.cjs +1 -1
- package/lib/src/subject-list/src/components/subject-text-fill.vue.cjs.map +1 -1
- package/lib/src/subject-list/src/subject-list.vue.cjs +1 -1
- package/lib/src/subject-list/src/subject-list.vue.cjs.map +1 -1
- package/lib/src/tiny-mce-editor/index.cjs.map +1 -1
- package/lib/src/tiny-mce-editor/src/tiny-mce-editor.vue.cjs +1 -1
- package/lib/src/tiny-mce-editor/src/tiny-mce-editor.vue.cjs.map +1 -1
- package/package.json +5 -8
- package/theme-chalk/index.css +1 -1
- package/theme-chalk/index.scss +13 -0
- package/theme-chalk/src/base.css +1 -0
- package/theme-chalk/src/base.scss +16 -0
- package/theme-chalk/src/common/element-plus.css +1 -0
- package/theme-chalk/src/common/element-plus.scss +606 -0
- package/theme-chalk/src/data-chart/empty.css +1 -0
- package/theme-chalk/src/data-chart/empty.scss +24 -0
- package/theme-chalk/src/data-chart/index.css +1 -0
- package/theme-chalk/src/data-chart/index.scss +9 -0
- package/theme-chalk/src/data-chart/table.css +1 -0
- package/theme-chalk/src/data-chart/table.scss +39 -0
- package/theme-chalk/src/file-upload.css +1 -0
- package/theme-chalk/src/file-upload.scss +34 -0
- package/theme-chalk/src/fixed-action-bar.css +1 -0
- package/theme-chalk/src/fixed-action-bar.scss +18 -0
- package/theme-chalk/src/image-upload.css +1 -0
- package/theme-chalk/src/image-upload.scss +135 -0
- package/theme-chalk/src/mixins/_var.css +0 -0
- package/theme-chalk/src/mixins/_var.scss +24 -0
- package/theme-chalk/src/mixins/config.css +0 -0
- package/theme-chalk/src/mixins/config.scss +14 -0
- package/theme-chalk/src/mixins/function.css +0 -0
- package/theme-chalk/src/mixins/function.scss +95 -0
- package/theme-chalk/src/mixins/mixins.css +0 -0
- package/theme-chalk/src/mixins/mixins.scss +103 -0
- package/theme-chalk/src/photo-crop-tool.css +1 -0
- package/theme-chalk/src/photo-crop-tool.scss +84 -0
- package/theme-chalk/{subject-action.css → src/subject-action.css} +1 -1
- package/theme-chalk/src/subject-action.scss +36 -0
- package/theme-chalk/src/subject-layout.css +1 -0
- package/theme-chalk/src/subject-layout.scss +28 -0
- package/theme-chalk/src/subject-list.css +1 -0
- package/theme-chalk/src/subject-list.scss +289 -0
- package/theme-chalk/src/subject-template.scss +5 -0
- package/theme-chalk/src/subject-type.css +1 -0
- package/theme-chalk/src/subject-type.scss +32 -0
- package/theme-chalk/src/tiny-mce-editor.css +1 -0
- package/theme-chalk/src/tiny-mce-editor.scss +27 -0
- package/types/src/image-upload/index.d.ts +3 -40
- package/types/src/image-upload/index.d.ts.map +1 -1
- package/types/src/image-upload/src/image-upload.vue.d.ts +11 -20
- package/types/src/image-upload/src/image-upload.vue.d.ts.map +1 -1
- package/types/src/subject-layout/src/subject-layout.vue.d.ts.map +1 -1
- package/types/src/tiny-mce-editor/index.d.ts +1 -1
- package/types/src/tiny-mce-editor/index.d.ts.map +1 -1
- package/types/src/tiny-mce-editor/src/tiny-mce-editor.vue.d.ts +19 -19
- package/types/src/tiny-mce-editor/src/tiny-mce-editor.vue.d.ts.map +1 -1
- package/types/tsconfig.tsbuildinfo +1 -1
- package/es/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs +0 -2
- package/es/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.mjs.map +0 -1
- package/es/src/data-chart/src/components/area.vue3.mjs +0 -2
- package/es/src/data-chart/src/components/area.vue3.mjs.map +0 -1
- package/es/src/data-chart/src/components/card.vue3.mjs +0 -2
- package/es/src/data-chart/src/components/card.vue3.mjs.map +0 -1
- package/es/src/data-chart/src/components/line.vue3.mjs +0 -2
- package/es/src/data-chart/src/components/line.vue3.mjs.map +0 -1
- package/lib/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.cjs +0 -2
- package/lib/node_modules/.pnpm/style-inject@0.3.0/node_modules/style-inject/dist/style-inject.es.cjs.map +0 -1
- package/lib/src/data-chart/src/components/area.vue3.cjs +0 -2
- package/lib/src/data-chart/src/components/area.vue3.cjs.map +0 -1
- package/lib/src/data-chart/src/components/card.vue3.cjs +0 -2
- package/lib/src/data-chart/src/components/card.vue3.cjs.map +0 -1
- package/lib/src/data-chart/src/components/line.vue3.cjs +0 -2
- package/lib/src/data-chart/src/components/line.vue3.cjs.map +0 -1
- package/theme-chalk/base.css +0 -1
- package/theme-chalk/file-upload.css +0 -1
- package/theme-chalk/fixed-action-bar.css +0 -1
- package/theme-chalk/image-upload.css +0 -1
- package/theme-chalk/photo-crop-tool.css +0 -1
- package/theme-chalk/src/base.scss.js +0 -4
- package/theme-chalk/src/base.scss.js.map +0 -1
- package/theme-chalk/src/file-upload.scss.js +0 -4
- package/theme-chalk/src/file-upload.scss.js.map +0 -1
- package/theme-chalk/src/fixed-action-bar.scss.js +0 -4
- package/theme-chalk/src/fixed-action-bar.scss.js.map +0 -1
- package/theme-chalk/src/image-upload.scss.js +0 -4
- package/theme-chalk/src/image-upload.scss.js.map +0 -1
- package/theme-chalk/src/index.scss.js +0 -4
- package/theme-chalk/src/index.scss.js.map +0 -1
- package/theme-chalk/src/photo-crop-tool.scss.js +0 -4
- package/theme-chalk/src/photo-crop-tool.scss.js.map +0 -1
- package/theme-chalk/src/subject-action.scss.js +0 -4
- package/theme-chalk/src/subject-action.scss.js.map +0 -1
- package/theme-chalk/src/subject-layout.scss.js +0 -4
- package/theme-chalk/src/subject-layout.scss.js.map +0 -1
- package/theme-chalk/src/subject-list.scss.js +0 -4
- package/theme-chalk/src/subject-list.scss.js.map +0 -1
- package/theme-chalk/src/subject-template.scss.js +0 -4
- package/theme-chalk/src/subject-template.scss.js.map +0 -1
- package/theme-chalk/src/subject-type.scss.js +0 -4
- package/theme-chalk/src/subject-type.scss.js.map +0 -1
- package/theme-chalk/src/tiny-mce-editor.scss.js +0 -4
- package/theme-chalk/src/tiny-mce-editor.scss.js.map +0 -1
- package/theme-chalk/subject-layout.css +0 -1
- package/theme-chalk/subject-list.css +0 -1
- package/theme-chalk/subject-type.css +0 -1
- package/theme-chalk/tiny-mce-editor.css +0 -1
- /package/theme-chalk/{subject-template.css → src/subject-template.css} +0 -0
@@ -0,0 +1,34 @@
|
|
1
|
+
@use "mixins/config" as *;
|
2
|
+
@use "mixins/mixins" as *;
|
3
|
+
|
4
|
+
@include b(file-upload) {
|
5
|
+
@include e(control) {
|
6
|
+
.is-drag {
|
7
|
+
display: inline-block !important;
|
8
|
+
|
9
|
+
[class$="-upload-dragger"] {
|
10
|
+
padding: 0;
|
11
|
+
|
12
|
+
[class$="-icon--upload"] {
|
13
|
+
margin-bottom: 0;
|
14
|
+
font-size: 40px;
|
15
|
+
}
|
16
|
+
|
17
|
+
[class$="-upload__text"] {
|
18
|
+
padding: 0 6px;
|
19
|
+
font-size: 14px;
|
20
|
+
line-height: 1.5;
|
21
|
+
}
|
22
|
+
}
|
23
|
+
|
24
|
+
&.is-dragover {
|
25
|
+
border-width: 1px;
|
26
|
+
}
|
27
|
+
|
28
|
+
.slot {
|
29
|
+
width: 160px;
|
30
|
+
height: 90px;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
.qxs-fixed-action-bar__actionbar{bottom:0;z-index:10;padding:var(--qxs-fixed-action-bar-actionbar-padding);padding-bottom:calc(env(safe-area-inset-bottom) + var(--qxs-fixed-action-bar-actionbar-padding-bottom));text-align:center;background-color:var(--qxs-bg-color, #fff);box-shadow:0 0 1px 0 var(--qxs-border-color, #f3f3f2);transition:box-shadow .3s,var(--qxs-transition-box-shadow, #f3f3f2)}.qxs-fixed-action-bar__actionbar.is-shadow{box-shadow:0 -10px 10px -10px var(--qxs-border-color, #fff)}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
@use "mixins/mixins" as *;
|
2
|
+
|
3
|
+
@include b(fixed-action-bar) {
|
4
|
+
&__actionbar {
|
5
|
+
bottom: 0;
|
6
|
+
z-index: 10;
|
7
|
+
padding: getCssVar("fixed-action-bar", "actionbar-padding");
|
8
|
+
padding-bottom: calc(env(safe-area-inset-bottom) + getCssVar("fixed-action-bar", "actionbar-padding-bottom"));
|
9
|
+
text-align: center;
|
10
|
+
background-color: var(--qxs-bg-color, #fff);
|
11
|
+
box-shadow: 0 0 1px 0 var(--qxs-border-color, #f3f3f2);
|
12
|
+
transition: box-shadow 0.3s, var(--qxs-transition-box-shadow, #f3f3f2);
|
13
|
+
|
14
|
+
@include when(shadow) {
|
15
|
+
box-shadow: 0 -10px 10px -10px var(--qxs-border-color, #fff);
|
16
|
+
}
|
17
|
+
}
|
18
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
.qxs-image-upload__container{line-height:initial}.qxs-image-upload__control{display:inline-block;vertical-align:top}.qxs-image-upload__control .image{position:relative;overflow:hidden;border-radius:6px}.qxs-image-upload__control .image .mask{position:absolute;top:0;width:100%;height:100%;background-color:var(--qxs-overlay-color-lighter);opacity:0;transition:opacity .3s}.qxs-image-upload__control .image .mask .actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;width:100px;height:100px;position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%)}.qxs-image-upload__control .image .mask .actions span{width:50%;color:var(--qxs-color-white);text-align:center;cursor:pointer;transition:color .1s,transform .1s}.qxs-image-upload__control .image .mask .actions span:hover{transform:scale(1.5)}.qxs-image-upload__control .image .mask .actions span [class=qxs-icon]{font-size:24px}.qxs-image-upload__control .image:hover .mask{opacity:1}.qxs-image-upload__control .is-drag{font-size:0;display:inline-block !important}.qxs-image-upload__control .is-drag [class$=-upload-dragger]{display:inline-block;padding:0;font-size:0}.qxs-image-upload__control .is-drag [class$=-upload-dragger] [class$=-image]{display:block}.qxs-image-upload__control .is-drag [class$=-upload-dragger].is-dragover{border-width:1px}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .image-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;font-size:14px;color:var(--qxs-text-color-placeholder);background-color:#f5f5f5;transition:all .3s}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .image-slot:hover{background-color:#eee}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .image-slot [class$=-icon]{font-size:28px}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .image-slot p{margin-top:10px;margin-bottom:0;line-height:1em;color:#5a5a5a}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .progress{position:absolute;top:0}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .progress::after{position:absolute;top:0;left:0;width:100%;height:100%;content:"";background-color:var(--qxs-overlay-color-lighter)}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .progress [class$=-progress]{z-index:1;position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%)}.qxs-image-upload__control .is-drag [class$=-upload-dragger] .progress [class$=-progress] [class$=-progress__text]{color:var(--qxs-text-color-placeholder)}.qxs-image-upload__container [class$=-upload__tip-text]{font-size:14px;line-height:32px;color:#c8c8c8}
|
@@ -0,0 +1,135 @@
|
|
1
|
+
@use "mixins/mixins" as *;
|
2
|
+
|
3
|
+
@include b(image-upload) {
|
4
|
+
@include e(container) {
|
5
|
+
line-height: initial;
|
6
|
+
|
7
|
+
@include e(control) {
|
8
|
+
display: inline-block;
|
9
|
+
vertical-align: top;
|
10
|
+
|
11
|
+
.image {
|
12
|
+
position: relative;
|
13
|
+
overflow: hidden;
|
14
|
+
border-radius: 6px;
|
15
|
+
|
16
|
+
.mask {
|
17
|
+
position: absolute;
|
18
|
+
top: 0;
|
19
|
+
width: 100%;
|
20
|
+
height: 100%;
|
21
|
+
background-color: var(--#{$namespace}-overlay-color-lighter);
|
22
|
+
opacity: 0;
|
23
|
+
transition: opacity 0.3s;
|
24
|
+
|
25
|
+
.actions {
|
26
|
+
display: flex;
|
27
|
+
flex-wrap: wrap;
|
28
|
+
align-items: center;
|
29
|
+
justify-content: center;
|
30
|
+
width: 100px;
|
31
|
+
height: 100px;
|
32
|
+
|
33
|
+
@include position-center(xy);
|
34
|
+
|
35
|
+
span {
|
36
|
+
width: 50%;
|
37
|
+
color: var(--#{$namespace}-color-white);
|
38
|
+
text-align: center;
|
39
|
+
cursor: pointer;
|
40
|
+
transition: color 0.1s, transform 0.1s;
|
41
|
+
|
42
|
+
&:hover {
|
43
|
+
transform: scale(1.5);
|
44
|
+
}
|
45
|
+
|
46
|
+
[class="#{$namespace}-icon"] {
|
47
|
+
font-size: 24px;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
&:hover .mask {
|
54
|
+
opacity: 1;
|
55
|
+
}
|
56
|
+
}
|
57
|
+
.is-drag {
|
58
|
+
font-size: 0;
|
59
|
+
display: inline-block !important;
|
60
|
+
|
61
|
+
[class$="-upload-dragger"] {
|
62
|
+
display: inline-block;
|
63
|
+
padding: 0;
|
64
|
+
font-size: 0;
|
65
|
+
|
66
|
+
[class$="-image"] {
|
67
|
+
display: block;
|
68
|
+
}
|
69
|
+
|
70
|
+
&.is-dragover {
|
71
|
+
border-width: 1px;
|
72
|
+
}
|
73
|
+
|
74
|
+
.image-slot {
|
75
|
+
display: flex;
|
76
|
+
flex-direction: column;
|
77
|
+
align-items: center;
|
78
|
+
justify-content: center;
|
79
|
+
width: 100%;
|
80
|
+
height: 100%;
|
81
|
+
font-size: 14px;
|
82
|
+
color: var(--#{$namespace}-text-color-placeholder);
|
83
|
+
background-color: #f5f5f5;
|
84
|
+
transition: all 0.3s;
|
85
|
+
|
86
|
+
&:hover {
|
87
|
+
background-color: #eee;
|
88
|
+
}
|
89
|
+
|
90
|
+
[class$="-icon"] {
|
91
|
+
font-size: 28px;
|
92
|
+
}
|
93
|
+
|
94
|
+
p {
|
95
|
+
margin-top: 10px;
|
96
|
+
margin-bottom: 0;
|
97
|
+
line-height: 1em;
|
98
|
+
color: #5a5a5a;
|
99
|
+
}
|
100
|
+
}
|
101
|
+
|
102
|
+
.progress {
|
103
|
+
position: absolute;
|
104
|
+
top: 0;
|
105
|
+
|
106
|
+
&::after {
|
107
|
+
position: absolute;
|
108
|
+
top: 0;
|
109
|
+
left: 0;
|
110
|
+
width: 100%;
|
111
|
+
height: 100%;
|
112
|
+
content: "";
|
113
|
+
background-color: var(--#{$namespace}-overlay-color-lighter);
|
114
|
+
}
|
115
|
+
|
116
|
+
[class$="-progress"] {
|
117
|
+
z-index: 1;
|
118
|
+
|
119
|
+
@include position-center(xy);
|
120
|
+
|
121
|
+
[class$="-progress__text"] {
|
122
|
+
color: var(--#{$namespace}-text-color-placeholder);
|
123
|
+
}
|
124
|
+
}
|
125
|
+
}
|
126
|
+
}
|
127
|
+
}
|
128
|
+
}
|
129
|
+
[class$="-upload__tip-text"] {
|
130
|
+
font-size: 14px;
|
131
|
+
line-height: 32px;
|
132
|
+
color: #c8c8c8;
|
133
|
+
}
|
134
|
+
}
|
135
|
+
}
|
File without changes
|
@@ -0,0 +1,24 @@
|
|
1
|
+
@use "sass:map";
|
2
|
+
@use "sass:color";
|
3
|
+
@use "function" as *;
|
4
|
+
|
5
|
+
// 定位居中,默认水平居中,可选择垂直居中,或者水平垂直都居中
|
6
|
+
@mixin position-center($type: x) {
|
7
|
+
position: absolute;
|
8
|
+
|
9
|
+
@if $type == x {
|
10
|
+
left: 50%;
|
11
|
+
transform: translateX(-50%);
|
12
|
+
}
|
13
|
+
|
14
|
+
@if $type == y {
|
15
|
+
top: 50%;
|
16
|
+
transform: translateY(-50%);
|
17
|
+
}
|
18
|
+
|
19
|
+
@if $type == xy {
|
20
|
+
top: 50%;
|
21
|
+
left: 50%;
|
22
|
+
transform: translateX(-50%) translateY(-50%);
|
23
|
+
}
|
24
|
+
}
|
File without changes
|
@@ -0,0 +1,14 @@
|
|
1
|
+
$namespace: "qxs" !default;
|
2
|
+
$common-separator: "-" !default;
|
3
|
+
$element-separator: "__" !default;
|
4
|
+
$modifier-separator: "--" !default;
|
5
|
+
$state-prefix: "is-" !default;
|
6
|
+
|
7
|
+
|
8
|
+
$text-color-main: #333;
|
9
|
+
$font-size-small: 12px;
|
10
|
+
$color-danger: #f56c6c;
|
11
|
+
$text-color-regular: #606266;
|
12
|
+
$color-success: #30c691;
|
13
|
+
$text-color-primary: #3d61e3;
|
14
|
+
$color-primary: #3d61e3;
|
File without changes
|
@@ -0,0 +1,95 @@
|
|
1
|
+
@use "sass:string";
|
2
|
+
@use "sass:meta";
|
3
|
+
@use "config";
|
4
|
+
|
5
|
+
// BEM support Func
|
6
|
+
@function selectorToString($selector) {
|
7
|
+
$selector: meta.inspect($selector);
|
8
|
+
$selector: string.slice($selector, 2, -2);
|
9
|
+
|
10
|
+
@return $selector;
|
11
|
+
}
|
12
|
+
|
13
|
+
@function containsModifier($selector) {
|
14
|
+
$selector: selectorToString($selector);
|
15
|
+
|
16
|
+
@if string.index($selector, config.$modifier-separator) {
|
17
|
+
@return true;
|
18
|
+
} @else {
|
19
|
+
@return false;
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
@function containWhenFlag($selector) {
|
24
|
+
$selector: selectorToString($selector);
|
25
|
+
|
26
|
+
@if string.index($selector, "." + config.$state-prefix) {
|
27
|
+
@return true;
|
28
|
+
} @else {
|
29
|
+
@return false;
|
30
|
+
}
|
31
|
+
}
|
32
|
+
|
33
|
+
@function hasPseudoClass($selector) {
|
34
|
+
@return string.index($selector, ":") != null;
|
35
|
+
}
|
36
|
+
|
37
|
+
@function containPseudoClass($selector) {
|
38
|
+
$selector: selectorToString($selector);
|
39
|
+
|
40
|
+
@if hasPseudoClass($selector) {
|
41
|
+
@return true;
|
42
|
+
} @else {
|
43
|
+
@return false;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
@function hitAllSpecialNestRule($selector) {
|
48
|
+
@return containsModifier($selector) or containWhenFlag($selector) or
|
49
|
+
containPseudoClass($selector);
|
50
|
+
}
|
51
|
+
|
52
|
+
// join var name
|
53
|
+
// joinVarName(('button', 'text-color')) => '--qxs-button-text-color'
|
54
|
+
@function joinVarName($list) {
|
55
|
+
$name: "--" + config.$namespace;
|
56
|
+
|
57
|
+
@each $item in $list {
|
58
|
+
@if $item != "" {
|
59
|
+
$name: $name + "-" + $item;
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
@return $name;
|
64
|
+
}
|
65
|
+
|
66
|
+
// getCssVarName('button', 'text-color') => '--qxs-button-text-color'
|
67
|
+
@function getCssVarName($args...) {
|
68
|
+
@return joinVarName($args);
|
69
|
+
}
|
70
|
+
|
71
|
+
// getCssVar('button', 'text-color') => var(--qxs-button-text-color)
|
72
|
+
@function getCssVar($args...) {
|
73
|
+
@return var(#{joinVarName($args)});
|
74
|
+
}
|
75
|
+
|
76
|
+
// getCssVarWithDefault(('button', 'text-color'), red) => var(--qxs-button-text-color, red)
|
77
|
+
@function getCssVarWithDefault($args, $default) {
|
78
|
+
@return var(#{joinVarName($args)}, #{$default});
|
79
|
+
}
|
80
|
+
|
81
|
+
// bem('block', 'element', 'modifier') => 'el-block__element--modifier'
|
82
|
+
@function bem($block, $element: "", $modifier: "") {
|
83
|
+
$name: config.$namespace + config.$common-separator + $block;
|
84
|
+
|
85
|
+
@if $element != "" {
|
86
|
+
$name: $name + config.$element-separator + $element;
|
87
|
+
}
|
88
|
+
|
89
|
+
@if $modifier != "" {
|
90
|
+
$name: $name + config.$modifier-separator + $modifier;
|
91
|
+
}
|
92
|
+
|
93
|
+
// @debug $name;
|
94
|
+
@return $name;
|
95
|
+
}
|
File without changes
|
@@ -0,0 +1,103 @@
|
|
1
|
+
@use "function" as *;
|
2
|
+
// forward mixins
|
3
|
+
@forward "config";
|
4
|
+
@forward "function";
|
5
|
+
@forward "_var";
|
6
|
+
@use "config" as *;
|
7
|
+
// 声明变量
|
8
|
+
$B: null;
|
9
|
+
$E: null;
|
10
|
+
|
11
|
+
|
12
|
+
// BEM
|
13
|
+
@mixin b($block) {
|
14
|
+
$B: $namespace + $common-separator + $block !global;
|
15
|
+
|
16
|
+
.#{$B} {
|
17
|
+
@content;
|
18
|
+
}
|
19
|
+
}
|
20
|
+
|
21
|
+
@mixin e($element) {
|
22
|
+
$E: $element !global;
|
23
|
+
$selector: &;
|
24
|
+
$currentSelector: "";
|
25
|
+
|
26
|
+
@each $unit in $element {
|
27
|
+
$currentSelector: #{$currentSelector +
|
28
|
+
"." +
|
29
|
+
$B +
|
30
|
+
$element-separator +
|
31
|
+
$unit +
|
32
|
+
","};
|
33
|
+
}
|
34
|
+
|
35
|
+
@if hitAllSpecialNestRule($selector) {
|
36
|
+
@at-root {
|
37
|
+
#{$selector} {
|
38
|
+
#{$currentSelector} {
|
39
|
+
@content;
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|
43
|
+
} @else {
|
44
|
+
@at-root {
|
45
|
+
#{$currentSelector} {
|
46
|
+
@content;
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
@mixin m($modifier) {
|
53
|
+
$selector: &;
|
54
|
+
$currentSelector: "";
|
55
|
+
|
56
|
+
@each $unit in $modifier {
|
57
|
+
$currentSelector: #{$currentSelector +
|
58
|
+
$selector +
|
59
|
+
$modifier-separator +
|
60
|
+
$unit +
|
61
|
+
","};
|
62
|
+
}
|
63
|
+
|
64
|
+
@at-root {
|
65
|
+
#{$currentSelector} {
|
66
|
+
@content;
|
67
|
+
}
|
68
|
+
}
|
69
|
+
}
|
70
|
+
|
71
|
+
@mixin meb($modifier: false, $element: $E, $block: $B) {
|
72
|
+
$selector: &;
|
73
|
+
$modifierCombo: "";
|
74
|
+
|
75
|
+
@if $modifier {
|
76
|
+
$modifierCombo: $modifier-separator + $modifier;
|
77
|
+
}
|
78
|
+
|
79
|
+
@at-root {
|
80
|
+
#{$selector} {
|
81
|
+
.#{$block + $element-separator + $element + $modifierCombo} {
|
82
|
+
@content;
|
83
|
+
}
|
84
|
+
}
|
85
|
+
}
|
86
|
+
}
|
87
|
+
|
88
|
+
@mixin when($state) {
|
89
|
+
@at-root {
|
90
|
+
&.#{$state-prefix + $state} {
|
91
|
+
@content;
|
92
|
+
}
|
93
|
+
}
|
94
|
+
}
|
95
|
+
|
96
|
+
// dark
|
97
|
+
@mixin dark($block) {
|
98
|
+
html.dark {
|
99
|
+
@include b($block) {
|
100
|
+
@content;
|
101
|
+
}
|
102
|
+
}
|
103
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
.qxs-photo-crop-tool__img-box{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;background-color:#fafafa}.qxs-photo-crop-tool__error-message{color:red}.qxs-photo-crop-tool__image{max-width:100%;max-height:100%;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;user-select:none;-o-object-fit:contain;object-fit:contain;-webkit-user-drag:none}.qxs-photo-crop-tool__crop-tool-box{position:absolute;width:calc(var(--qxs-photo-crop-tool-width)*1px);max-width:100%;height:calc(var(--qxs-photo-crop-tool-height)*1px);max-height:100%;aspect-ratio:var(--qxs-photo-crop-tool-aspect-ratio);overflow:hidden;cursor:move;border:1px dashed #fff;box-shadow:0 0 0 9999px rgba(0,0,0,.4)}.qxs-photo-crop-tool__crop-tool-box>div{position:absolute;z-index:3;width:30%;aspect-ratio:1/1;background-color:rgba(2,2,2,.01);border-radius:50%;transition:all .3s}.qxs-photo-crop-tool__crop-tool-box>div:hover,.qxs-photo-crop-tool__crop-tool-box>div:active{background-color:rgba(2,2,2,.5)}.qxs-photo-crop-tool__top-left{top:0;left:0;cursor:nwse-resize;transform:translate3d(-50%, -50%, 0)}.qxs-photo-crop-tool__top-right{top:0;right:0;cursor:nesw-resize;transform:translate3d(50%, -50%, 0)}.qxs-photo-crop-tool__bottom-right{right:0;bottom:0;cursor:nwse-resize;transform:translate3d(50%, 50%, 0)}.qxs-photo-crop-tool__bottom-left{bottom:0;left:0;cursor:nesw-resize;transform:translate3d(-50%, 50%, 0)}
|
@@ -0,0 +1,84 @@
|
|
1
|
+
@use "mixins/mixins" as *;
|
2
|
+
|
3
|
+
@include b(photo-crop-tool) {
|
4
|
+
@include e(img-box) {
|
5
|
+
position: relative;
|
6
|
+
display: flex;
|
7
|
+
align-items: center;
|
8
|
+
justify-content: center;
|
9
|
+
width: 100%;
|
10
|
+
height: 100%;
|
11
|
+
overflow: hidden;
|
12
|
+
background-color: #fafafa;
|
13
|
+
|
14
|
+
@include e(error-message) {
|
15
|
+
color: red;
|
16
|
+
}
|
17
|
+
|
18
|
+
@include e(image) {
|
19
|
+
max-width: 100%;
|
20
|
+
max-height: 100%;
|
21
|
+
vertical-align: middle;
|
22
|
+
// 禁止选中
|
23
|
+
user-select: none;
|
24
|
+
object-fit: contain;
|
25
|
+
// 禁止过拽
|
26
|
+
-webkit-user-drag: none;
|
27
|
+
}
|
28
|
+
|
29
|
+
@include e(crop-tool-box) {
|
30
|
+
position: absolute;
|
31
|
+
width: calc(getCssVar("photo-crop-tool", "width") * 1px);
|
32
|
+
max-width: 100%;
|
33
|
+
height: calc(getCssVar("photo-crop-tool", "height") * 1px);
|
34
|
+
max-height: 100%;
|
35
|
+
aspect-ratio: getCssVar("photo-crop-tool", "aspect-ratio");
|
36
|
+
overflow: hidden;
|
37
|
+
cursor: move;
|
38
|
+
border: 1px dashed #fff;
|
39
|
+
box-shadow: 0 0 0 9999px rgb(0 0 0 / 40%); /* 扩展阴影以覆盖周围区域 */
|
40
|
+
> div {
|
41
|
+
position: absolute;
|
42
|
+
z-index: 3;
|
43
|
+
width: 30%;
|
44
|
+
aspect-ratio: 1 / 1;
|
45
|
+
background-color: rgba($color: #020202, $alpha: 1%);
|
46
|
+
border-radius: 50%;
|
47
|
+
transition: all 0.3s;
|
48
|
+
|
49
|
+
&:hover,
|
50
|
+
&:active {
|
51
|
+
background-color: rgba($color: #020202, $alpha: 50%);
|
52
|
+
}
|
53
|
+
|
54
|
+
@include e(top-left) {
|
55
|
+
top: 0;
|
56
|
+
left: 0;
|
57
|
+
cursor: nwse-resize;
|
58
|
+
transform: translate3d(-50%, -50%, 0);
|
59
|
+
}
|
60
|
+
|
61
|
+
@include e(top-right) {
|
62
|
+
top: 0;
|
63
|
+
right: 0;
|
64
|
+
cursor: nesw-resize;
|
65
|
+
transform: translate3d(50%, -50%, 0);
|
66
|
+
}
|
67
|
+
|
68
|
+
@include e(bottom-right) {
|
69
|
+
right: 0;
|
70
|
+
bottom: 0;
|
71
|
+
cursor: nwse-resize;
|
72
|
+
transform: translate3d(50%, 50%, 0);
|
73
|
+
}
|
74
|
+
|
75
|
+
@include e(bottom-left) {
|
76
|
+
bottom: 0;
|
77
|
+
left: 0;
|
78
|
+
cursor: nesw-resize;
|
79
|
+
transform: translate3d(-50%, 50%, 0);
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}
|
83
|
+
}
|
84
|
+
}
|
@@ -1 +1 @@
|
|
1
|
-
.qxs-subject-action__action-exam .action{padding:20px 0}.qxs-subject-action__action-exam .active{background-color:#f6f7fb;padding-left:10px;padding-right:10px}.qxs-subject-action__action-exam .btn-margin{margin-right:10px}.qxs-subject-action__action-exam .has-set{align-items:center;
|
1
|
+
.qxs-subject-action__action-exam .action{padding:20px 0}.qxs-subject-action__action-exam .active{background-color:#f6f7fb;padding-left:10px;padding-right:10px}.qxs-subject-action__action-exam .btn-margin{margin-right:10px}.qxs-subject-action__action-exam .has-set{display:flex;align-items:center;font-size:12px;color:#bbb}.qxs-subject-action__action-exam .vertical-radio-group{display:flex;flex-direction:column;align-items:flex-start;margin-left:20px}.qxs-subject-action__action-exam .vertical-radio-group ::v-deep(.qxs-radio){display:block;margin-right:0}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
@use "mixins/mixins" as *;
|
2
|
+
|
3
|
+
@include b(subject-action) {
|
4
|
+
@include e(action-exam) {
|
5
|
+
.action {
|
6
|
+
padding: 20px 0;
|
7
|
+
}
|
8
|
+
|
9
|
+
.active {
|
10
|
+
background-color: #f6f7fb;
|
11
|
+
padding-left: 10px;
|
12
|
+
padding-right: 10px;
|
13
|
+
}
|
14
|
+
|
15
|
+
.btn-margin {
|
16
|
+
margin-right: 10px;
|
17
|
+
}
|
18
|
+
|
19
|
+
.has-set {
|
20
|
+
display: flex;
|
21
|
+
align-items: center;
|
22
|
+
font-size: 12px;
|
23
|
+
color: #bbb;
|
24
|
+
}
|
25
|
+
.vertical-radio-group {
|
26
|
+
display: flex;
|
27
|
+
flex-direction: column; /* 垂直排列 */
|
28
|
+
align-items: flex-start;
|
29
|
+
margin-left: 20px;
|
30
|
+
}
|
31
|
+
.vertical-radio-group ::v-deep(.#{$namespace}-radio) {
|
32
|
+
display: block; /* 关键属性 */
|
33
|
+
margin-right: 0; /* 清除默认右边距 */
|
34
|
+
}
|
35
|
+
}
|
36
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
.qxs-subject-layout__layout-exam{padding:10px;font-size:12px;color:#5a5a5a}.qxs-subject-layout__layout-exam .edit{position:relative;padding:20px 10px;padding-bottom:10px;margin-top:20px;background-color:#f6f7fb}.qxs-subject-layout__layout-exam .edit .triangle-up{position:absolute;top:-20px;left:100px;width:0;height:0;border-right:20px solid rgba(0,0,0,0);border-bottom:20px solid #f6f7fb;border-left:20px solid rgba(0,0,0,0)}
|
@@ -0,0 +1,28 @@
|
|
1
|
+
@use "mixins/mixins" as *;
|
2
|
+
|
3
|
+
@include b(subject-layout) {
|
4
|
+
@include e(layout-exam) {
|
5
|
+
padding: 10px;
|
6
|
+
font-size: 12px;
|
7
|
+
color: #5a5a5a;
|
8
|
+
|
9
|
+
.edit {
|
10
|
+
position: relative;
|
11
|
+
padding: 20px 10px;
|
12
|
+
padding-bottom: 10px;
|
13
|
+
margin-top: 20px;
|
14
|
+
background-color: #f6f7fb;
|
15
|
+
|
16
|
+
.triangle-up {
|
17
|
+
position: absolute;
|
18
|
+
top: -20px;
|
19
|
+
left: 100px;
|
20
|
+
width: 0;
|
21
|
+
height: 0;
|
22
|
+
border-right: 20px solid transparent;
|
23
|
+
border-bottom: 20px solid #f6f7fb;
|
24
|
+
border-left: 20px solid transparent;
|
25
|
+
}
|
26
|
+
}
|
27
|
+
}
|
28
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
.qxs-subject-list__list-exam .flex{display:flex;align-items:center}.qxs-subject-list__list-exam .flex-items-center{display:flex;align-items:center}.qxs-subject-list__list-exam .flex-justify-between{display:flex;justify-content:space-between}.qxs-subject-list__list-exam .flex-justify-center{display:flex;justify-content:center}.qxs-subject-list__list-exam .flex-justify-end{display:flex;justify-content:flex-end}.qxs-subject-list__list-exam .margin-left-10{margin-left:10px}.qxs-subject-list__list-exam .label{min-width:50px}.qxs-subject-list__list-exam .flex-1{flex:1}.qxs-subject-list__list-exam .subject-list-wrapper{width:100%;margin-bottom:20px}.qxs-subject-list__list-exam .margin-bottom{margin-bottom:20px}.qxs-subject-list__list-exam .auto-line{flex:1;background-color:#c8c8c8;height:1px;margin:0 15px}.qxs-subject-list__list-exam .title{font-size:14px;font-weight:500}.qxs-subject-list__list-exam .rich-text img{max-width:100%}.qxs-subject-single__single-exam .preview-answer{display:flex;flex-direction:column;margin-bottom:10px}.qxs-subject-single__single-exam .flex{display:flex;align-items:center}.qxs-subject-single__single-exam .margin-bottom{margin-bottom:20px}.qxs-subject-single__single-exam .answer-list .answer-item{margin-top:15px}.qxs-subject-single__single-exam .answer-list .answer-item .input{width:300px}.qxs-subject-single__single-exam .answer-list .answer-item .input [class$=-input]{font-weight:bold}.qxs-subject-single__single-exam .answer-list .answer-item .correct{margin:0 10px}.qxs-subject-single__single-exam .answer-list .answer-item .correct:hover{color:#3d61e3;cursor:pointer}.qxs-subject-single__single-exam .answer-list .answer-item .is-correct{color:#67c23a}.qxs-subject-single__single-exam .answer-list .answer-item .icon{margin-left:10px;font-size:18px;color:#a3a3a3;cursor:pointer}.qxs-subject-single__single-exam .answer-list .answer-item .disabled{color:#c0c4cc;cursor:not-allowed}.qxs-subject-single__single-exam .preview .answer-radio{padding-left:10px}.qxs-subject-single__single-exam .preview .answer-radio .radio{margin-top:10px}.qxs-subject-blank-fill__blank-fill-exam .flex{display:flex;align-items:center}.qxs-subject-blank-fill__blank-fill-exam .label{min-width:50px;margin-right:10px}.qxs-subject-blank-fill__blank-fill-exam .margin-bottom{margin-bottom:20px}.qxs-subject-blank-fill__blank-fill-exam .answer-list .answer-item{width:100%;margin-top:15px}.qxs-subject-blank-fill__blank-fill-exam .answer-list .answer-item .answer-tags{flex:1;padding:5px 15px;border:1px solid #eee;border-radius:4px}.qxs-subject-blank-fill__blank-fill-exam .answer-list .answer-item .answer-tags [class$=-tag]{margin-right:10px}.qxs-subject-blank-fill__blank-fill-exam .preview .content{min-height:100px;padding-top:10px;background-color:#fff}.qxs-subject-text-fill__text-fill-exam .flex{display:flex;align-items:center}.qxs-subject-text-fill__text-fill-exam .label{min-width:50px;margin-right:10px}.qxs-subject-text-fill__text-fill-exam .margin-bottom{margin-bottom:20px}.qxs-subject-text-fill__text-fill-exam .answer-list .answer-item{width:100%;margin-top:15px}.qxs-subject-text-fill__text-fill-exam .answer-list .answer-item .answer-tags{flex:1;padding:5px 15px;border:1px solid #eee;border-radius:4px}.qxs-subject-text-fill__text-fill-exam .answer-list .answer-item .operation .icon{margin-left:10px;font-size:16px;color:#a3a3a3;cursor:pointer}.qxs-subject-text-fill__text-fill-exam .answer-list .answer-item .operation .disabled{color:#c0c4cc;cursor:not-allowed}.qxs-subject-text-fill__text-fill-exam .preview .content{min-height:100px;margin-top:10px}.qxs-subject-scale__scale-exam .flex{display:flex;align-items:center}.qxs-subject-scale__scale-exam .label{min-width:50px}.qxs-subject-scale__scale-exam .margin-bottom{margin-bottom:20px}.qxs-subject-scale__scale-exam .answer{margin:20px 0}.qxs-subject-scale__scale-exam .answer .answer-list{margin-left:40px}.qxs-subject-scale__scale-exam .answer .answer-list .answer-item{margin-bottom:20px}.qxs-subject-scale__scale-exam .answer .answer-list .answer-item .order{width:16px;margin-right:10px}.qxs-subject-scale__scale-exam .answer .answer-list .answer-item .icon{margin-left:10px;font-size:16px;color:#a3a3a3;cursor:pointer}.qxs-subject-scale__scale-exam .answer .answer-list .answer-item .disabled{color:#c0c4cc;cursor:not-allowed}.qxs-subject-scale__scale-exam .preview .answer-radio .radio-item .qxs-radio-wrapper{margin-inline-end:0}
|