@jx3box/jx3box-common-ui 9.4.2 → 9.4.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.
@@ -0,0 +1,337 @@
1
+ @bgColor: #24292E;
2
+ @color: #FEDAA3;
3
+ @color2: #24292E;
4
+
5
+ .p-suspend {
6
+ .pf;
7
+ .lb(0);
8
+ .z(1994);
9
+ bottom: 0;
10
+ //margin: 0 calc(calc(100% - 23.438rem) / 2);
11
+ .w(100vw);
12
+ padding: 1.25rem 0px 1.5rem 0px;
13
+ border-radius: 1.25rem 1.25rem 0 0;
14
+ background: @bgColor;
15
+ color: @color;
16
+ .fz(1rem, 1.5rem);
17
+ .bold(700);
18
+
19
+ .m-home-box,
20
+ .m-pin-box,
21
+ .m-icon-box {
22
+ .flex;
23
+ .flex(o);
24
+ }
25
+
26
+ .m-pin-box {
27
+ gap: 1.125rem;
28
+
29
+ .u-item {
30
+ .flex;
31
+ .flex(o);
32
+
33
+ img {
34
+ .size(1.5rem);
35
+ .r(50%);
36
+ }
37
+
38
+ .u-text-r {
39
+ .size(1.5rem);
40
+ .r(50%);
41
+ background-color: #D9D9D9;
42
+ .flex;
43
+ .flex(o);
44
+ }
45
+ }
46
+
47
+ }
48
+
49
+ .m-btn-box {
50
+ .flex;
51
+ align-items: center;
52
+ justify-content: space-between;
53
+ flex: auto;
54
+ // gap: 3rem;
55
+ padding: 0 1.25rem;
56
+
57
+ .u-icon-d {
58
+ .flex;
59
+ .flex(o);
60
+ .size(1.5rem);
61
+
62
+ .u-icon {
63
+ &.active {
64
+ fill: #FEDAA3;
65
+ stroke: #FEDAA3
66
+ }
67
+ }
68
+ }
69
+ }
70
+
71
+ .m-more {
72
+ .w(7.5rem);
73
+ .flex;
74
+ .flex(o);
75
+ flex-shrink: 0;
76
+ border-left: 0.5px solid rgba(254, 218, 163, 0.2);
77
+ gap: 0.5rem
78
+ }
79
+ }
80
+
81
+ .p-drawer-suspend {
82
+ .size(100%);
83
+ .lt(0);
84
+
85
+ .u-drawer {
86
+ border-radius: 1.25rem 1.25rem 0 0;
87
+ position: fixed !important;
88
+ bottom: 0;
89
+ margin: auto;
90
+ outline: none;
91
+ -webkit-tap-highlight-color: transparent;
92
+ user-select: none;
93
+ -webkit-touch-callout: none;
94
+ .w(100%);
95
+ .h(auto) !important;
96
+ padding: 1.25rem 0.75rem 2.5rem 0.75rem;
97
+ background: @bgColor;
98
+
99
+ // .el-drawer__body {}
100
+
101
+ .p-drawer-suspend_box {
102
+ .flex;
103
+ flex-direction: column;
104
+ gap: 0.75rem;
105
+ }
106
+
107
+ .u-drawer-box {
108
+ .flex;
109
+ .w(100%);
110
+ align-items: center;
111
+ justify-content: space-between;
112
+ gap: 0.75rem;
113
+
114
+ .u-item {
115
+ border-radius: 12px;
116
+ background: rgba(255, 255, 255, 0.05);
117
+ .flex;
118
+ .flex(o);
119
+ flex-direction: column;
120
+ gap: 0.75rem;
121
+ flex: auto;
122
+ padding: 0.75rem 0;
123
+ box-sizing: border-box;
124
+
125
+ &.top {
126
+ .h(6.875rem);
127
+ }
128
+
129
+
130
+ &.report {
131
+ max-width: 50%;
132
+ }
133
+
134
+ .u-icon {
135
+ .flex;
136
+ .flex(o);
137
+ }
138
+
139
+ .u-self {
140
+ .h(2.5rem);
141
+
142
+ .flex;
143
+ flex-direction: column;
144
+ .flex(o);
145
+
146
+ img {
147
+ .size(1.5rem);
148
+ .r(50%);
149
+ }
150
+
151
+ .u-circle-top {
152
+ .pr;
153
+ bottom: -0.75rem;
154
+ }
155
+
156
+ .u-circle-bottom {
157
+ .flex;
158
+ gap: 0;
159
+ }
160
+
161
+ .u-text-r {
162
+ .size(1.5rem);
163
+ .r(50%);
164
+ background-color: #D9D9D9;
165
+ .flex;
166
+ .flex(o);
167
+ }
168
+ }
169
+
170
+ .u-text {
171
+ color: #ACAEAF;
172
+ .fz(0.875rem, 1.25rem);
173
+ .bold(700);
174
+
175
+ &.search,
176
+ &.fix {
177
+ color: #FEDAA3;
178
+ }
179
+
180
+ }
181
+
182
+ .u-author {
183
+ //作者名字最多显示8个中文字符,超出后,第八个中文字符用...代替
184
+
185
+ .fz(0.875rem, 1.25rem);
186
+ .bold(700);
187
+ .flex;
188
+ .flex(o);
189
+ gap: 0.2rem;
190
+ padding: 0 0.75rem;
191
+ box-sizing: border-box;
192
+ color: #ACAEAF;
193
+ .w(100%);
194
+
195
+ .u-avatar {
196
+ .size(1.25rem);
197
+ overflow: hidden;
198
+ .r(50%);
199
+ flex-shrink: 0;
200
+ }
201
+
202
+ .u-author-name {
203
+ flex: auto;
204
+ overflow: hidden;
205
+ text-overflow: ellipsis;
206
+ white-space: nowrap;
207
+ min-width: 0;
208
+ }
209
+ }
210
+ }
211
+ }
212
+
213
+ .p-drawer-fix,
214
+ .p-drawer-collect {
215
+ color: rgba(255, 255, 255, 0.40);
216
+
217
+ .u-collect-icon {
218
+ .flex;
219
+ .flex(o);
220
+ flex-direction: column;
221
+ .w(100%);
222
+ .mb(1.25rem);
223
+
224
+ .u-text {
225
+ .fz(0.875rem, 1.25rem);
226
+ }
227
+ }
228
+
229
+ .u-collect-tips {
230
+ .fz(0.75rem, 1rem);
231
+ text-align: center;
232
+
233
+ .mb(1.25rem);
234
+
235
+ &.edit {
236
+ .flex;
237
+ align-items: center;
238
+ .fz(0.875rem, 1.25rem);
239
+ }
240
+ }
241
+
242
+ .u-btn-box {
243
+ .flex;
244
+ .flex(o);
245
+ gap: 0.75rem;
246
+ .mb(1.25rem);
247
+
248
+ .u-btn {
249
+ .flex;
250
+ .flex(o);
251
+ .fz(1rem, 1.5rem);
252
+ .bold(700);
253
+ border-radius: 0.75rem;
254
+ background: rgba(255, 255, 255, 0.10);
255
+ padding: 0.75rem 1rem;
256
+ color: rgba(255, 255, 255, 0.40);
257
+ flex: auto;
258
+
259
+ &.collect {
260
+ background-color: @color;
261
+ color: @color2;
262
+ }
263
+ }
264
+ }
265
+ }
266
+
267
+ .p-drawer-fix {
268
+ .u-edit-title {
269
+ .mb(1.25rem);
270
+ color: rgba(255, 255, 255, 0.60);
271
+ .fz(0.875rem, 1.25rem);
272
+ .bold(700);
273
+ }
274
+
275
+ .u-pin-box {
276
+ .mb(1.25rem);
277
+ .flex;
278
+ flex-direction: column;
279
+ gap: 0.75rem;
280
+
281
+ .u-item {
282
+ .flex;
283
+ align-items: center;
284
+ gap: 0.75rem;
285
+ padding: 0.5rem 1rem;
286
+ align-self: stretch;
287
+ .r(0.5rem);
288
+ background: rgba(255, 255, 255, 0.10);
289
+
290
+ .u-text-r,
291
+ .u-icon {
292
+ .size(1.875rem);
293
+ .r(50%);
294
+ flex-shrink: 0;
295
+ }
296
+
297
+ .u-text-r {
298
+ .flex;
299
+ .flex(o);
300
+ background-color: #D9D9D9;
301
+ color: #000;
302
+ }
303
+
304
+ .u-text {
305
+ flex: auto;
306
+ overflow: hidden;
307
+ text-overflow: ellipsis;
308
+ white-space: nowrap;
309
+ min-width: 0;
310
+ color: #fff;
311
+ }
312
+
313
+ .u-slash {
314
+ .flex;
315
+ .flex(o);
316
+ .size(1.875rem);
317
+ flex-shrink: 0;
318
+ }
319
+ }
320
+ }
321
+ }
322
+
323
+ .p-drawer-fixData{
324
+ .h(70vh);
325
+ .pr;
326
+ .u-icon{
327
+ .pa;
328
+ .z(3);
329
+ right:1.25rem;
330
+ }
331
+ span{
332
+ color:#fff;
333
+ }
334
+ }
335
+ }
336
+
337
+ }
@@ -57,7 +57,7 @@ export function dispatchEventStorage() {
57
57
 
58
58
  // search 跳转公共函数
59
59
  export function searchJump({ searchValue, isPhone = false, client = "std", url }) {
60
- searchValue = searchValue.trim()?.toLowerCase();
60
+ searchValue = searchValue.trim().toLowerCase();
61
61
  // 检查输入是否为纯数字
62
62
  if (/^\d+$/.test(searchValue)) {
63
63
  // 如果是纯数字,直接跳转到 /{id}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jx3box/jx3box-common-ui",
3
- "version": "9.4.2",
3
+ "version": "9.4.4",
4
4
  "description": "JX3BOX UI",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -31,7 +31,8 @@
31
31
  <slot name="default"></slot>
32
32
  </div>
33
33
  <div class="m-more" v-if="btnConfig.showMore" @click="setMore">
34
- <img class="u-icon" src="../assets/img/suspend/more.svg" svg-inline /> 更多
34
+ <!-- <img class="u-icon" src="../assets/img/suspend/more.svg" svg-inline /> -->
35
+ 更多
35
36
  </div>
36
37
  </div>
37
38
  <!-- 样式分类(icon&more) -->
@@ -60,7 +61,8 @@
60
61
 
61
62
  </div>
62
63
  <div class="m-more" v-if="btnConfig.showMore" @click="setMore">
63
- <img class="u-icon" src="../assets/img/suspend/more.svg" svg-inline /> 更多
64
+ <!-- <img class="u-icon" src="../assets/img/suspend/more.svg" svg-inline /> -->
65
+ 更多
64
66
  </div>
65
67
  </div>
66
68
  <!-- 横向固定内容区域 -->
@@ -78,8 +80,8 @@
78
80
  </div>
79
81
  <!-- 抽屉弹出层,支持默认样式和自定义插槽样式 -->
80
82
  <el-drawer :title="drawerConfig.drawerTitle" :visible.sync="drawer" :direction="drawerConfig.direction"
81
- :with-header="false" custom-class="u-drawer" :modal-append-to-body="false" append-to-body class="p-drawer">
82
- <div class="p-drawer-box" v-show="areaKey === 'home'">
83
+ :with-header="false" custom-class="u-drawer" :modal-append-to-body="false" append-to-body class="p-drawer-suspend">
84
+ <div class="p-drawer-suspend_box" v-show="areaKey === 'home'">
83
85
  <div class="u-drawer-box">
84
86
  <div class="u-item top" v-for="item in drawerFiltration(drawerType.one)" :key="item.type"
85
87
  @click="clickDrawer(item)">
@@ -201,7 +203,7 @@
201
203
  <div class="u-text">{{ fixPageConfig.title }}</div>
202
204
  </div>
203
205
  <!-- 只在编辑界面显示 -->
204
- <div class="u-item" v-for="(item, index) in fixIsEdit ? fixList : []" :key="'fix' + index">
206
+ <div class="u-item" v-for="(item, index) in fixIsEdit ? fixList : []" :key="'fix' + index" @click="fixDataClick(item)">
205
207
  <div class="u-text-r" v-if="item.type == 'text'">
206
208
  {{ item.title.match(/[\u3400-\u9FFF\uF900-\uFAFF]/)?.[0] || '固' }}
207
209
  </div>
@@ -230,7 +232,15 @@
230
232
  将页面固定
231
233
  </div>
232
234
  </div>
233
-
235
+ <!-- 固定页面查看数据-->
236
+ <div class="p-drawer-fixData" v-show="areaKey === 'fixData'">
237
+ <!-- 展开界面图标-->
238
+ <div class="u-icon" @click="openUrl">
239
+ <img src="../assets/img/suspend/pin_touchbar_24.svg" svg-inline/>
240
+ </div>
241
+ <iframe :src="iframeInfo.openurl" frameborder="0" width="100%" height="100%" v-if="iframeInfo?.url"/>
242
+ <span v-else>查找页面失败</span>
243
+ </div>
234
244
  </el-drawer>
235
245
  </div>
236
246
  </template>
@@ -308,6 +318,7 @@ export default {
308
318
  //是否已订阅
309
319
  isSubscribe: false,
310
320
  subscribeInfo: {},
321
+ iframeInfo:{}
311
322
  };
312
323
  },
313
324
  computed: {
@@ -466,6 +477,26 @@ export default {
466
477
  this.areaKey = 'home';
467
478
  this.$emit('fixCancelIndividually');
468
479
  },
480
+ /**
481
+ * @description: 固定数据点击查看,默认追加disabled标识,弹出层需隐藏掉按钮处理,点击展开按钮后跳转进页面
482
+ * @param {*} value
483
+ */
484
+ fixDataClick(value) {
485
+ console.log(value)
486
+ if(value.url.indexOf('?') !=-1){
487
+ value.openurl= value.url+'&disabled=true'
488
+ }else{
489
+ value.openurl= value.url+'?disabled=true'
490
+ }
491
+ this.iframeInfo=value;
492
+ this.areaKey='fixData'
493
+ this.$emit('fixDataSwitch')
494
+
495
+ },
496
+ //打开界面
497
+ openUrl(){
498
+ location.href=this.iframeInfo.url;
499
+ },
469
500
  /**
470
501
  * @description: 收藏或订阅,操作完成后areaKey转到home界面
471
502
  * @return {*}
@@ -634,331 +665,9 @@ export default {
634
665
  </script>
635
666
 
636
667
  <style lang="less">
637
- @bgColor: #24292E;
638
- @color: #FEDAA3;
639
- @color2: #24292E;
640
668
 
641
669
  html {
642
670
  font-size: clamp(16px, calc(100vw / 414 * 16), 36px);
643
671
  }
644
-
645
- .p-suspend {
646
- .pf;
647
- .z(1994);
648
- bottom: 0;
649
- margin: 0 calc(calc(100% - 23.438rem) / 2);
650
- .w(23.438rem);
651
- padding: 1.25rem 0px 1.5rem 0px;
652
- border-radius: 1.25rem 1.25rem 0 0;
653
- background: @bgColor;
654
- color: @color;
655
- .fz(1rem, 1.5rem);
656
- .bold(700);
657
-
658
- .m-home-box,
659
- .m-pin-box,
660
- .m-icon-box {
661
- .flex;
662
- .flex(o);
663
- }
664
-
665
- .m-pin-box {
666
- gap: 1.125rem;
667
-
668
- .u-item {
669
- .flex;
670
- .flex(o);
671
-
672
- img {
673
- .size(1.5rem);
674
- .r(50%);
675
- }
676
-
677
- .u-text-r {
678
- .size(1.5rem);
679
- .r(50%);
680
- background-color: #D9D9D9;
681
- .flex;
682
- .flex(o);
683
- }
684
- }
685
-
686
- }
687
-
688
- .m-btn-box {
689
- .flex;
690
- align-items: center;
691
- justify-content: space-between;
692
- flex: auto;
693
- // gap: 3rem;
694
- padding: 0 1.25rem;
695
-
696
- .u-icon-d {
697
- .flex;
698
- .flex(o);
699
- .size(1.5rem);
700
-
701
- .u-icon {
702
- &.active {
703
- fill: #FEDAA3;
704
- stroke: #FEDAA3
705
- }
706
- }
707
- }
708
- }
709
-
710
- .m-more {
711
- .w(7.5rem);
712
- .flex;
713
- .flex(o);
714
- flex-shrink: 0;
715
- border-left: 0.5px solid rgba(254, 218, 163, 0.2);
716
- gap: 0.5rem
717
- }
718
- }
719
-
720
- .p-drawer {
721
- .size(100%);
722
- .lt(0);
723
-
724
- .u-drawer {
725
- border-radius: 1.25rem 1.25rem 0 0;
726
- position: fixed !important;
727
- bottom: 0;
728
- margin: auto;
729
- outline: none;
730
- -webkit-tap-highlight-color: transparent;
731
- user-select: none;
732
- -webkit-touch-callout: none;
733
- .w(23.438rem);
734
- .h(auto) !important;
735
- padding: 1.25rem 0.75rem 2.5rem 0.75rem;
736
- background: @bgColor;
737
-
738
- // .el-drawer__body {}
739
-
740
- .p-drawer-box {
741
- .flex;
742
- flex-direction: column;
743
- gap: 0.75rem;
744
- }
745
-
746
- .u-drawer-box {
747
- .flex;
748
- .w(100%);
749
- align-items: center;
750
- justify-content: space-between;
751
- gap: 0.75rem;
752
-
753
- .u-item {
754
- border-radius: 12px;
755
- background: rgba(255, 255, 255, 0.05);
756
- .flex;
757
- .flex(o);
758
- flex-direction: column;
759
- gap: 0.75rem;
760
- flex: auto;
761
- padding: 0.75rem 0;
762
- box-sizing: border-box;
763
-
764
- &.top {
765
- .h(6.875rem);
766
- }
767
-
768
-
769
- &.report {
770
- max-width: 50%;
771
- }
772
-
773
- .u-icon {
774
- .flex;
775
- .flex(o);
776
- }
777
-
778
- .u-self {
779
- .h(2.5rem);
780
-
781
- .flex;
782
- flex-direction: column;
783
- .flex(o);
784
-
785
- img {
786
- .size(1.5rem);
787
- .r(50%);
788
- }
789
-
790
- .u-circle-top {
791
- .pr;
792
- bottom: -0.75rem;
793
- }
794
-
795
- .u-circle-bottom {
796
- .flex;
797
- gap: 0;
798
- }
799
-
800
- .u-text-r {
801
- .size(1.5rem);
802
- .r(50%);
803
- background-color: #D9D9D9;
804
- .flex;
805
- .flex(o);
806
- }
807
- }
808
-
809
- .u-text {
810
- color: #ACAEAF;
811
- .fz(0.875rem, 1.25rem);
812
- .bold(700);
813
-
814
- &.search,
815
- &.fix {
816
- color: #FEDAA3;
817
- }
818
-
819
- }
820
-
821
- .u-author {
822
- //作者名字最多显示8个中文字符,超出后,第八个中文字符用...代替
823
-
824
- .fz(0.875rem, 1.25rem);
825
- .bold(700);
826
- .flex;
827
- .flex(o);
828
- gap: 0.2rem;
829
- padding: 0 0.75rem;
830
- box-sizing: border-box;
831
- color: #ACAEAF;
832
- .w(100%);
833
-
834
- .u-avatar {
835
- .size(1.25rem);
836
- overflow: hidden;
837
- .r(50%);
838
- flex-shrink: 0;
839
- }
840
-
841
- .u-author-name {
842
- flex: auto;
843
- overflow: hidden;
844
- text-overflow: ellipsis;
845
- white-space: nowrap;
846
- min-width: 0;
847
- }
848
- }
849
- }
850
- }
851
-
852
- .p-drawer-fix,
853
- .p-drawer-collect {
854
- color: rgba(255, 255, 255, 0.40);
855
-
856
- .u-collect-icon {
857
- .flex;
858
- .flex(o);
859
- flex-direction: column;
860
- .w(100%);
861
- .mb(1.25rem);
862
-
863
- .u-text {
864
- .fz(0.875rem, 1.25rem);
865
- }
866
- }
867
-
868
- .u-collect-tips {
869
- .fz(0.75rem, 1rem);
870
- text-align: center;
871
-
872
- .mb(1.25rem);
873
-
874
- &.edit {
875
- .flex;
876
- align-items: center;
877
- .fz(0.875rem, 1.25rem);
878
- }
879
- }
880
-
881
- .u-btn-box {
882
- .flex;
883
- .flex(o);
884
- gap: 0.75rem;
885
- .mb(1.25rem);
886
-
887
- .u-btn {
888
- .flex;
889
- .flex(o);
890
- .fz(1rem, 1.5rem);
891
- .bold(700);
892
- border-radius: 0.75rem;
893
- background: rgba(255, 255, 255, 0.10);
894
- padding: 0.75rem 1rem;
895
- color: rgba(255, 255, 255, 0.40);
896
- flex: auto;
897
-
898
- &.collect {
899
- background-color: @color;
900
- color: @color2;
901
- }
902
- }
903
- }
904
- }
905
-
906
- .p-drawer-fix {
907
- .u-edit-title {
908
- .mb(1.25rem);
909
- color: rgba(255, 255, 255, 0.60);
910
- .fz(0.875rem, 1.25rem);
911
- .bold(700);
912
- }
913
-
914
- .u-pin-box {
915
- .mb(1.25rem);
916
- .flex;
917
- flex-direction: column;
918
- gap: 0.75rem;
919
-
920
- .u-item {
921
- .flex;
922
- align-items: center;
923
- gap: 0.75rem;
924
- padding: 0.5rem 1rem;
925
- align-self: stretch;
926
- .r(0.5rem);
927
- background: rgba(255, 255, 255, 0.10);
928
-
929
- .u-text-r,
930
- .u-icon {
931
- .size(1.875rem);
932
- .r(50%);
933
- flex-shrink: 0;
934
- }
935
-
936
- .u-text-r {
937
- .flex;
938
- .flex(o);
939
- background-color: #D9D9D9;
940
- color: #000;
941
- }
942
-
943
- .u-text {
944
- flex: auto;
945
- overflow: hidden;
946
- text-overflow: ellipsis;
947
- white-space: nowrap;
948
- min-width: 0;
949
- color: #fff;
950
- }
951
-
952
- .u-slash {
953
- .flex;
954
- .flex(o);
955
- .size(1.875rem);
956
- flex-shrink: 0;
957
- }
958
- }
959
- }
960
- }
961
- }
962
-
963
- }
672
+ @import "../assets/css/suspendCommon.less";
964
673
  </style>