mix-public 1.0.3 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -45,4 +45,6 @@
45
45
  - v1.0.0 项目初始化
46
46
  - v1.0.1 调整文档调用方式
47
47
  - v1.0.2 调整publicLib调用方式(区分类app样式及单公共调用方法)
48
- - v1.0.3 添加pag依赖(调整单独调用方法参数)
48
+ - v1.0.3 添加pag依赖(调整单独调用方法参数)
49
+ - v1.0.4 title模块添加背景色配置
50
+ - v1.0.5 优化网页端实现方法(优化统一图片选择回调参数/APP跳转/小程序跳转/添加 onstart 生命周期/优化返回根页面/优化链接分享/添加 web 图片下载方法)
package/mixRender.css CHANGED
@@ -12,7 +12,7 @@
12
12
  }
13
13
 
14
14
  #mix-navigation {
15
- height: 50px;
15
+ height: 46px;
16
16
  width: 100vw;
17
17
  display: flex;
18
18
  align-items: center;
@@ -44,8 +44,8 @@
44
44
 
45
45
  #mix-navigation .mix-navigation-left img,
46
46
  #mix-navigation .mix-navigation-right img {
47
- width: 22px;
48
- height: 22px;
47
+ width: 20px;
48
+ height: 20px;
49
49
  }
50
50
 
51
51
  .mix-navigation-left-1,
@@ -61,7 +61,7 @@
61
61
  }
62
62
 
63
63
  #mix-navigation .mix-navigation-center .mix-navigation-title {
64
- font-size: 20px;
64
+ font-size: 16px;
65
65
  }
66
66
 
67
67
  #mix-navigation .mix-navigation-right,
@@ -125,4 +125,171 @@
125
125
  display: flex;
126
126
  align-items: center;
127
127
  justify-content: center;
128
- }
128
+ }
129
+
130
+ @font-face {
131
+ src: url("data:application/x-font-ttf;base64,AAEAAAAKAIAAAwAgT1MvMlbe5goAAACsAAAAYGNtYXAMWhQPAAABDAAAAVJnbHlmDHw5gwAAAmAAAAVkaGVhZLax7SsAAAfEAAAANmhoZWEFhgDYAAAH/AAAACRobXR4BaoAvQAACCAAAAAebG9jYQfaBrQAAAhAAAAAGm1heHAAEgBaAAAIXAAAACBuYW1l9Spy4AAACHwAAAM0cG9zdAAyALEAAAuwAAAAOgAEAYACvAADAAQCigJYAAAASwKKAlgAAAFeADIBMAAAAAAFAAAAAAAAAIAAAK8QAAAAAAAAAAAAAABFQkRBACAALQA5Asj+4ADIA6kA+gAAAAEAAAAAAfsCyAAgACAAAgAAAAMAAAADAAAAHAABAAAAAABMAAMAAQAAABwABAAwAAAACAAIAAIAAAAtADn/////AAAALQAw///////U/9IAAQABAAAAAAAAAAAAAAEGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAACAwQFBgcICQoLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAB9AK8AAMABgAJAAwADwAANxEhEQM3IRMXEQEhJwMRNwAB9Pqq/qzIqv6OAVSqyKoAArz9RAGL//7U/wH+/dX/ASz+Av8AAAEALADiAVkBSAADAAA3NSEVLAEt4mZmAAIAIv/6AVICzgAZACcAABM0Njc+ATMyFhceARURFAYHDgEjIiYnLgE1MxQWMzI2NRE0JiMiBhUiGRUVNx4eNxUVGRkVFTceHjcVFRlmHBYWHBwWFhwCNSQ4FBQVFRQUOCT+XiQ4FBQVFRQUOCQWHR0WAaIWHR0WAAEANQAAAQECyAAGAAA3EQc1NzMRm2ZmZgACXEtsS/04AAAAAAEAIgAAAVICzgAmAAA3NRM+ATU0JicuASMiBh0BIzU0Njc+ATMyFhceARUUBgcOAQcDMxUiuA4EAQUFFBMXG2YYFRQ4ICg5ExIRAgMDDgyWuABgAVsaJx0NHQsLDxoZOjggOBUVGR0ZGUAkGiMQECAX/t9mAAAAAAEAIv/6AVICzgBFAAATMjY9ATQmIyIGHQEjNTQ2Nz4BMzIWFx4BFxYVFAYHDgEHHgEXHgEVFAYHDgEHDgEjIiYnLgE9ATMVFBYzMjY9ATQnLgEjmy4jGxcbF2YYFRU4ICo3DgoPBQkDBgcZFhgZBgYCAwMDCggTOzAYNhYWHWYbFxcbEAkfGQGcFihcFhwiEDo7HzgUFBghEQwYESFBJS4PEBYNDxoREjEmIy4PEBYMHCUQEhI6Kjo1GB8fGmYqDQgEAAABAAkAAAFrAsgADgAANzUjNRMzAzM1MxUzFSMV1MuTbJllZjExAGpgAf7+AsvLYGoAAAAAAQAi//oBUgLIACwAAAEVIxU+ATMyFh0BFAYHDgEjIiYnLgE9ATMVFBYzMjY9ATQmIyIGBwYHBgcjEQFSyg4sGzRBGRUVNx4eNxUVGWYdFxcZGxUNEgYGAwUBWgLIYMAOEz8/uCQ4FBQVFRQUOCQeGhodHBmnFR4JBgYHCQIBgAACACL/+gFSAsgAJwA1AAABAxc+ATMyFhceARceARUUBgcOAQcOASMiJicuAScuATU0Njc+ATcbATQmIyIGHQEUFjMyNjUBLXQCBRURGy4NBwgDAgICAgMJBxRDKipCFAgJAgMCAgICCAWGMR4UFB4eFBQeAsj+1QIEBRoUCxYSEjcqIy0PEBYMISQlIAwWEA8tIyErEA8ZDgFm/k8XHBwXhBccHBcAAAABACIAAAFSAsgACAAANxMjFSM1IRUDObNwWgEwrQACaFKyZv2eAAAAAwAi//oBUgLOAA0ASQBXAAATNCYjIgYdARQWMzI2NSc0Njc+ATc+ATMyFhceARceARUUBgcOAQceARceARUUBgcOAQcOASMiJicuAScuATU0Njc+ATcuAScuARc0JiMiBh0BFBYzMjY17B4UFB4eFBQeygQFBQ0KFDwjIzwUCg4FBQMCBQUVEhIVBQUCAwMDCwgRPi0tPhEICwMDAwIFBRUSEhUFBQLKHhQUHh4UFB4CNhUdHRVoFR0dFUAdKQ8PGA0aHR0aDRgPDykdICwRERsPDhwTEzcoISsQEBYMGiUlGgwWEBArISg3ExMcDg8bEREs0BUdHRWMFR0dFQAAAAIAIgAAAVICzgAnADUAADcTJw4BIyImJy4BJy4BNTQ2Nz4BNz4BMzIWFx4BFx4BFRQGBw4BBwsBFBYzMjY9ATQmIyIGFUd0AgUVERsuDQcIAgMCAgMCCQcUQyoqQhQHCgMCAgICAwcFhjEeFBQeHhQUHgABKwIEBRoUChcSEjcqIy0QDxYMISQlIAwWDxAtIyErDxAZDv6aAbEXHBwXhBccHBcAAQAAAAEBBkfZJz9fDzz1AAkD6AAAAAB8JYZQAAAAANl6IicAAP/6AfQCzgABAAkAAgAAAAAAAAABAAACyP7gAMgB9AAAAAAB9AABAAAAAAAAAAAAAAAAAAAAAwH0AAABhQAsAXQAIgA1ACIAIgAJACIAIgAiACIAIgAAAAAAJgAyAG4AgAC8AR4BOAF4AcwB4AJgArIAAAABAAAADABYAAUAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAEgDeAAEAAAAAAAAATAAAAAEAAAAAAAEADQBMAAEAAAAAAAIABABZAAEAAAAAAAMAKABdAAEAAAAAAAQAEgCFAAEAAAAAAAUACACXAAEAAAAAAAYAEQCfAAEAAAAAAAcACgCwAAEAAAAAAAkADgC6AAMAAQQJAAAAlgDIAAMAAQQJAAEAGgFeAAMAAQQJAAIACAF4AAMAAQQJAAMAUAGAAAMAAQQJAAQAJAHQAAMAAQQJAAUAEAH0AAMAAQQJAAYAIgIEAAMAAQQJAAcAFAImAAMAAQQJAAkAHAI6Q29weXJpZ2h0IMKpIDE5ODEsIDIwMDIgSGVpZGVsYmVyZ2VyIERydWNrbWFzY2hpbmVuIEFHLiBBbGwgcmlnaHRzIHJlc2VydmVkLkRJTiBDb25kZW5zZWRCb2xkRElOIENvbmRlbnNlZCBCb2xkOyAxMy4yZDJlMTsgMjAxOC0wMS0yMkRJTiBDb25kZW5zZWQgQm9sZDEzLjJkMmUxRElOQ29uZGVuc2VkLUJvbGRESU5TY2hyaWZ0TGlub3R5cGUgU3RhZmYAQwBvAHAAeQByAGkAZwBoAHQAIACpACAAMQA5ADgAMQAsACAAMgAwADAAMgAgAEgAZQBpAGQAZQBsAGIAZQByAGcAZQByACAARAByAHUAYwBrAG0AYQBzAGMAaABpAG4AZQBuACAAQQBHAC4AIABBAGwAbAAgAHIAaQBnAGgAdABzACAAcgBlAHMAZQByAHYAZQBkAC4ARABJAE4AIABDAG8AbgBkAGUAbgBzAGUAZABCAG8AbABkAEQASQBOACAAQwBvAG4AZABlAG4AcwBlAGQAIABCAG8AbABkADsAIAAxADMALgAyAGQAMgBlADEAOwAgADIAMAAxADgALQAwADEALQAyADIARABJAE4AIABDAG8AbgBkAGUAbgBzAGUAZAAgAEIAbwBsAGQAMQAzAC4AMgBkADIAZQAxAEQASQBOAEMAbwBuAGQAZQBuAHMAZQBkAC0AQgBvAGwAZABEAEkATgBTAGMAaAByAGkAZgB0AEwAaQBuAG8AdAB5AHAAZQAgAFMAdABhAGYAZgACAAAAAAAA/5wAMgAAAAAAAAAAAAAAAAAAAAAAAAAMAAwAAAAQABMAFAAVABYAFwAYABkAGgAbABwAAA==");
132
+ font-family: DINCondensed-Bold;
133
+ }
134
+
135
+ .crop-whole-cover {
136
+ position: fixed;
137
+ inset: 0;
138
+ z-index: 9999;
139
+ background-color: #5c5c5c;
140
+ }
141
+
142
+ .crop-component {
143
+ position: absolute;
144
+ inset: 0;
145
+ margin: auto;
146
+ width: 100%;
147
+ height: 100%;
148
+ }
149
+
150
+ .crop-component .crop-mask {
151
+ overflow: hidden;
152
+ position: absolute;
153
+ inset: 0;
154
+ width: 100%;
155
+ height: 100%;
156
+ }
157
+
158
+ .crop-component .crop-cover {
159
+ position: absolute;
160
+ inset: 0;
161
+ width: 100%;
162
+ height: 100%;
163
+ }
164
+
165
+ .crop-component .crop-rotate {
166
+ overflow: hidden;
167
+ position: absolute;
168
+ left: 0;
169
+ right: 0;
170
+ bottom: 68px;
171
+ margin: auto;
172
+ width: 92%;
173
+ height: 66px;
174
+ mask-image: linear-gradient(
175
+ 90deg,
176
+ rgb(255 255 255 / 0%) 0,
177
+ rgb(255 255 255 / 64%) 50%,
178
+ rgb(255 255 255 / 0%) 100%
179
+ );
180
+ }
181
+
182
+ .crop-component .crop-rotate .current {
183
+ margin: auto;
184
+ border-left: 5px solid transparent;
185
+ border-right: 5px solid transparent;
186
+ border-bottom: 9px solid #d8d8d8;
187
+ border-radius: 1px;
188
+ width: 0;
189
+ height: 0;
190
+ }
191
+
192
+ .crop-component .crop-rotate .lineation {
193
+ display: flex;
194
+ justify-content: flex-start;
195
+ align-items: center;
196
+ margin: 0;
197
+ padding: 0 0 8px;
198
+ height: 50px;
199
+ -webkit-touch-callout: none;
200
+ user-select: none;
201
+ font-size: 0;
202
+ }
203
+
204
+ .crop-component .crop-rotate .lineation li {
205
+ display: inline-block;
206
+ flex: 1;
207
+ height: 100%;
208
+ }
209
+
210
+ .crop-component .crop-rotate .lineation .number {
211
+ overflow: hidden;
212
+ width: 100%;
213
+ height: 32px;
214
+ line-height: 36px;
215
+ text-align: center;
216
+ font-family: DINCondensed-Bold;
217
+ font-size: 16px;
218
+ color: #fff;
219
+ }
220
+
221
+ .crop-component .crop-rotate .lineation .bg {
222
+ width: 100%;
223
+ height: 18px;
224
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFEAAAAkCAQAAABbaR7PAAAA3ElEQVR42u2YMQ6DMAxFfSOuVRjKWSBsyRT3nq9zFxvJpEQoGbEUvTzs6CsiFy4mdnYm6Xexoyhbz4iViqJ9IypKHRYvsDgQ+0dkZjHrK2sM0d5BhMUmEA4Os54pDuLHnmgK2SFINmJyEXPQYrEO6Us6YzGKmKMWPcTi/ujmFpN9BtdibW/xH72Y2/Ziub8XU/jSiVtMLS2qn3Tut1jbW7xiXB5gsfQ/0eGru/uJfgRi+6s7nHRGXhx5ceTFkRdHXnxUXtyoKHtbizOz89zxNqonHpLtHURYeP1++QJbckm6SmQBuQAAAABJRU5ErkJggg==");
225
+ background-repeat: no-repeat;
226
+ background-size: 100% 100%;
227
+ }
228
+
229
+ .crop-component .crop-btns {
230
+ display: flex;
231
+ position: absolute;
232
+ bottom: 16px;
233
+ justify-content: flex-start;
234
+ align-items: center;
235
+ width: 100%;
236
+ height: 24px;
237
+ }
238
+
239
+ .crop-component .crop-btns button {
240
+ display: inline-block;
241
+ position: relative;
242
+ flex: 1;
243
+ margin: auto;
244
+ padding: 0;
245
+ border: none;
246
+ height: 100%;
247
+ background-color: transparent;
248
+ }
249
+
250
+ .crop-component .crop-btns button::after {
251
+ display: inline-block;
252
+ position: absolute;
253
+ inset: 0;
254
+ margin: auto;
255
+ content: "";
256
+ }
257
+
258
+ .crop-component .crop-close::after {
259
+ width: 18px;
260
+ height: 18px;
261
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAQAAABLCVATAAAArElEQVR42q2WWw6AIAwEuQ/eh+t4cMkajCERH7R1+ifZnSCUtikdoawUi4tTqzaVCEpFm1Z1TIsA6sC0aCjl88ON6pjmzOOCGfXo8qNeHT7Up9qOmiptKJNqLjLv+1voOsl3sftunw2hbLubYkl7N0YxA6qqhjED6g/mRNWOqWEMBoJ+DTps6PqhhISeCPRooTICFTao1ELFH2pHUIOEWrYWbohgxhpw0GJGvx1lZkUZoxUOQQAAAABJRU5ErkJggg==");
262
+ background-size: 100% 100%;
263
+ }
264
+
265
+ .crop-component .crop-btn::after {
266
+ width: 21px;
267
+ height: 15px;
268
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAeCAYAAABaKIzgAAAAgklEQVR4AezOAQaEMQwF4d4nB+p1evBlFn4KFBheyAOCjG+lDqiVPmADP+DkI+9OByTfXR2QuwtykIMc5CCB6oA89zEb+Q4EIOsdcpBC0Ec6YaHlY4WGhxWQAlZAClgBKWAFpIcVkA5WQDpYASlgBaSCjUb+h+TYACB+DMUBSFKjAAABevZOv672hAAAAABJRU5ErkJggg==");
269
+ background-size: 100% 100%;
270
+ }
271
+
272
+ .crop-component .crop-reset::after {
273
+ width: 22px;
274
+ height: 19px;
275
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAmCAQAAAAVFrHsAAAB3klEQVR42u3XPUhVUQAH8OuzngaF1pAFVkQJElFEoPaxRELY0uAQVLS5REM0JCQYpNELiqitpoaGdKjN0cCKIFoSxOGRROJTEBoqkj6ev/B0faJpXOk9IvD8h3M4h/Pjcr7gRqKiJi0jJycTaTHq78ssnJnrKAY7B+fmOvwfcOZ3uOibV1y4kBW4hHCJTsUf4RrVS06rULVoUkngl96o0Wh8Xt6Hse4lLsj2JPAek7IaXAt5ZyzUV2P4m7NxJvQX2muTrfFuN5SF1gF5V1QURrpNidzWq1feYKh71S5389KG8NC4vfPgYVk9cZ5iVxK43quQmY3qkUe7rLfWz4NfaI9zLylc65Y+bDDgq9M4r8kPj+LX61OAc57FGUwKz+QU7vrimMoAR7pwVOS+bID7tMbpXC5crUlUgFc7E7bziQGRIXl504Q6vzz416mYhWfzXI9InQsqtYUFO+J48it9B1sWgdM+65L22oh1MfzYh6THrcO0YWPOaVLnsmZbbVOvRjP2uynvsMjFAG80qT/Jla7yUadyl0wtuLYnnDQi5YHrUiZ8N6FcpNWgTUm+uEE61Cmb7dPooEMha0R2hpGywLXZEc9Y9Y+fzRV4BS5RKSE8WhJ3tFi/CgtYLZES5Sdy/jxAWzo1BgAAAABJRU5ErkJggg==");
276
+ background-size: 100% 100%;
277
+ }
278
+
279
+ .crop-component .crop-around::after {
280
+ width: 18px;
281
+ height: 22px;
282
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAsCAQAAACnWtJ+AAABHklEQVR42u3UsUrDQBzH8YvFrYOhvoLp0BcohA5dhIzZdexrZHMU+wrt2sG9Q9LBICg4CkV0CfQFdBP9OpikqebSS//UQfJbj3zucv/7/5WqCBaWkocBz9xIkUMu+ACQMSfckUbCjHgDIcQx12xkN+aUFYghLvmkPK8siZhwhr2d6WGSd0L8auiAK+2JfibGrX1H2oxp1a4abRyGBDxsLM052vkd0WVWoB63UQ73+vLT56Vwqpag1+iwWN+VSfc/cavdaE25Jo9UO4/o5D8YS0dNPz+TL6WyCoZSqJs3ji2lsid6rvBIjFoiwSuBgnR1qgwZgKQEGqZrkaJGSnvgO0sp1M5GnxBS+fcN9AfQL7GBGuifQaJRW4REw38P+QIQNLRX56aQYgAAAABJRU5ErkJggg==");
283
+ background-size: 100% 100%;
284
+ }
285
+
286
+ @media only screen and (device-width <= 375px) and (device-height <= 812px) and (device-pixel-ratio: 3),
287
+ (device-width <= 414px) and (device-height <= 896px) {
288
+ .crop-component .crop-btns {
289
+ bottom: 43px;
290
+ }
291
+
292
+ .crop-component .crop-rotate {
293
+ bottom: 95px;
294
+ }
295
+ }
package/mixRender.js CHANGED
@@ -36,9 +36,33 @@ export default (op) => {
36
36
  mixDeviceInfo: op.mixDeviceInfo || ""
37
37
  };
38
38
  if(!mixJustMethod){
39
+ // 创建onstart生命周期事件代理
40
+ const onStartEventList = []
41
+ window.OnStartLoad = function (event, config) {
42
+ onStartEventList.push(event)
43
+ if (config?.immediate) {
44
+ event()
45
+ }
46
+ }
47
+ window.OnStart = function () {
48
+ onStartEventList.forEach((event) => {
49
+ event()
50
+ })
51
+ }
39
52
  renderBasic();
40
53
  mixNavigation(mixAppParameter);
41
54
  mixTabbar(mixAppParameter);
55
+ // 若为web端且页面为非首次加载,则执行OnStart(需转为异步延迟执行)
56
+ if(mixAppParameter.mixIsWeb){
57
+ if (window.performance) {
58
+ const navigationType = window.performance.navigation.type;
59
+ if (navigationType === window.performance.navigation.TYPE_BACK_FORWARD) {
60
+ setTimeout(() => {
61
+ window.OnStart();
62
+ },10);
63
+ }
64
+ }
65
+ }
42
66
  }
43
67
  return mixPublicLib(mixAppParameter.mixIsWeb)
44
68
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mix-public",
3
- "version": "1.0.3",
3
+ "version": "1.0.5",
4
4
  "description": "use mix-app",
5
5
  "main": "mixRender.js",
6
6
  "scripts": {
@@ -6,6 +6,7 @@ export default (op) => {
6
6
  const currentObj = res;
7
7
  if(currentObj && currentObj.showTitle){
8
8
  titleModule.style.display = 'flex'
9
+ titleModule.style.backgroundColor = "#" + currentObj.backgroudColor
9
10
  // 自定义标题内容
10
11
  if(currentObj.title){
11
12
  const title = document.querySelector(".mix-navigation-title");