@polyv/utils 2.4.0-beta.1 → 2.6.0-beta.1

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/cjs/event.d.ts CHANGED
@@ -59,7 +59,7 @@
59
59
  /**
60
60
  * 事件类型
61
61
  */
62
- export declare type EventType = string | symbol;
62
+ export declare type EventType = number | string | symbol;
63
63
  /**
64
64
  * 事件参数关系类型
65
65
  */
package/cjs/image.js CHANGED
@@ -1 +1 @@
1
- "use strict";function supportWebP(){var A=document.createElement("canvas");if(A.getContext&&A.getContext("2d")){var e="image/webp";return 0===A.toDataURL(e).indexOf("data:"+e)}return!1}function supportAVIF(){return new Promise((function(A){var e=new Image;e.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A=",e.onerror=function(){A(!1)},e.onload=function(){A(!0)},setTimeout((function(){A(!1)}),1e3)}))}function ossCompress(A,e){var s=document.createElement("a");s.href=A;var t=s.search;if("liveimages.videocc.net"!==s.hostname.toLowerCase()||/(?:\?|&)x-oss-process(?:=|&|$)/.test(t))return A;var o="";return null==e.width&&null==e.height||(o+="/resize,mfit",e.width&&(o+=",w_"+e.width),e.height&&(o+=",h_"+e.height),o+=",limit_1"),e.allowAVIF?o+="/format,avif":e.allowWebP&&(o+="/format,webp"),o&&(o="x-oss-process=image"+o,A+=(-1===A.indexOf("?")?"?":"&")+o),A}function compressHTMLImgs(A,e){return A?A.replace(/(<img.*?\ssrc=)(["']?)(.+?)\2(.*?>)/gi,(function(A,s,t,o,r){return s+'"'+ossCompress(o,e)+'" data-src="'+o+'"'+r})):""}Object.defineProperty(exports,"__esModule",{value:!0}),exports.compressHTMLImgs=exports.ossCompress=exports.supportAVIF=exports.supportWebP=void 0,exports.supportWebP=supportWebP,exports.supportAVIF=supportAVIF,exports.ossCompress=ossCompress,exports.compressHTMLImgs=compressHTMLImgs;
1
+ "use strict";function supportWebP(){var A=document.createElement("canvas");if(A.getContext&&A.getContext("2d")){var e="image/webp";return 0===A.toDataURL(e).indexOf("data:"+e)}return!1}function supportAVIF(){return new Promise((function(A){var e=new Image;e.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A=",e.onerror=function(){A(!1)},e.onload=function(){A(!0)},setTimeout((function(){A(!1)}),1e3)}))}function ossCompress(A,e){var s=document.createElement("a");s.href=A;var t=s.search,o=s.hostname.toLowerCase();if(-1===["liveimages.videocc.net","vod-assets.videocc.net"].indexOf(o)||/(?:\?|&)x-oss-process(?:=|&|$)/.test(t))return A;var r="";return null==e.width&&null==e.height||(r+="/resize",e.width&&(r+=",w_"+e.width),e.height&&(r+=",h_"+e.height),r+=",limit_1"),e.allowAVIF?r+="/format,avif":e.allowWebP&&(r+="/format,webp"),r&&(r="x-oss-process=image"+r,A+=(-1===A.indexOf("?")?"?":"&")+r),A}function compressHTMLImgs(A,e){return A?A.replace(/(<img.*?\ssrc=)(["']?)(.+?)\2(.*?>)/gi,(function(A,s,t,o,r){return s+'"'+ossCompress(o,e)+'" data-src="'+o+'"'+r})):""}Object.defineProperty(exports,"__esModule",{value:!0}),exports.compressHTMLImgs=exports.ossCompress=exports.supportAVIF=exports.supportWebP=void 0,exports.supportWebP=supportWebP,exports.supportAVIF=supportAVIF,exports.ossCompress=ossCompress,exports.compressHTMLImgs=compressHTMLImgs;
package/cjs/net.d.ts CHANGED
@@ -30,6 +30,17 @@ export declare function startsWithProtocol(str: string, protocols?: string[]): b
30
30
  * ```
31
31
  */
32
32
  export declare function changeProtocol(url: string, protocol: string): string;
33
+ /**
34
+ * 移除指定 URL 中的协议头。
35
+ * @param url 指定 URL。
36
+ * @returns 处理后的字符串。
37
+ * @example
38
+ * ```javascript
39
+ * removeProtocol('https://abc.com/abc.html'); // 'abc.com/abc.html'
40
+ * removeProtocol('abc.com/abc.html'); // 'abc.com/abc.html'
41
+ * ```
42
+ */
43
+ export declare function removeProtocol(url: string): string;
33
44
  /**
34
45
  * 标准化(如果当前页面协议为 http,则为 http,否则为 https)目标字符串中的 URL 协议。
35
46
  * @param url 目标字符串。
package/cjs/net.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.normalizeProtocol=exports.changeProtocol=exports.startsWithProtocol=void 0;var reProtocol=/^(?:([a-z]+):)?\/{2,3}/i;function startsWithProtocol(o,t){var r=reProtocol.test(o);if(r&&t){for(var e=(RegExp.$1||"").toLowerCase(),c=t.length-1;c>=0;c--)if(e===t[c].toLowerCase())return!0;return!1}return r}function changeProtocol(o,t){return reProtocol.test(t)||(t+="://"),startsWithProtocol(o)?o.replace(reProtocol,t):t+o}function normalizeProtocol(o){return changeProtocol(o,"http:"===window.location.protocol?"http":"https")}exports.startsWithProtocol=startsWithProtocol,exports.changeProtocol=changeProtocol,exports.normalizeProtocol=normalizeProtocol;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.normalizeProtocol=exports.removeProtocol=exports.changeProtocol=exports.startsWithProtocol=void 0;var reProtocol=/^(?:([a-z]+):)?\/{2,3}/i;function startsWithProtocol(o,t){var r=reProtocol.test(o);if(r&&t){for(var e=(RegExp.$1||"").toLowerCase(),c=t.length-1;c>=0;c--)if(e===t[c].toLowerCase())return!0;return!1}return r}function changeProtocol(o,t){return reProtocol.test(t)||(t+="://"),startsWithProtocol(o)?o.replace(reProtocol,t):t+o}function removeProtocol(o){return o.replace(reProtocol,"")}function normalizeProtocol(o){return changeProtocol(o,"http:"===window.location.protocol?"http":"https")}exports.startsWithProtocol=startsWithProtocol,exports.changeProtocol=changeProtocol,exports.removeProtocol=removeProtocol,exports.normalizeProtocol=normalizeProtocol;
package/cjs/validate.d.ts CHANGED
@@ -13,6 +13,13 @@
13
13
  * ```
14
14
  */
15
15
  export declare function isChsPhoneNO(str: string): boolean;
16
+ /**
17
+ * 检查目标字符串是否手机号。
18
+ * @param str 目标字符串。
19
+ * @param areaCode 区号,例如中国为 +86。
20
+ * @returns 目标字符串是否手机号。
21
+ */
22
+ export declare function isPhoneNO(str: string, areaCode?: string): boolean;
16
23
  /**
17
24
  * 检查目标字符串是否电子邮箱地址。
18
25
  * @param str 目标字符串。
package/cjs/validate.js CHANGED
@@ -1 +1 @@
1
- "use strict";function isChsPhoneNO(e){return/^1[3-9]\d{9}$/.test(e)}function isEmail(e){if(/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*\.[a-zA-Z]{2,}$/.test(e)){for(var s=e.replace("@",".").split("."),t=s.length-1;t>=0;t--)if(/^[-_]/.test(s[t])||/[_-]$/.test(s[t]))return!1;return!0}return!1}Object.defineProperty(exports,"__esModule",{value:!0}),exports.isEmail=exports.isChsPhoneNO=void 0,exports.isChsPhoneNO=isChsPhoneNO,exports.isEmail=isEmail;
1
+ "use strict";function isChsPhoneNO(e){return/^1[3-9]\d{9}$/.test(e)}function isPhoneNO(e,s){return void 0===s&&(s="+86"),"+86"===s?isChsPhoneNO(e):/^\d{5,20}$/.test(e)}function isEmail(e){if(/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*\.[a-zA-Z]{2,}$/.test(e)){for(var s=e.replace("@",".").split("."),t=s.length-1;t>=0;t--)if(/^[-_]/.test(s[t])||/[_-]$/.test(s[t]))return!1;return!0}return!1}Object.defineProperty(exports,"__esModule",{value:!0}),exports.isEmail=exports.isPhoneNO=exports.isChsPhoneNO=void 0,exports.isChsPhoneNO=isChsPhoneNO,exports.isPhoneNO=isPhoneNO,exports.isEmail=isEmail;
package/es/event.d.ts CHANGED
@@ -59,7 +59,7 @@
59
59
  /**
60
60
  * 事件类型
61
61
  */
62
- export declare type EventType = string | symbol;
62
+ export declare type EventType = number | string | symbol;
63
63
  /**
64
64
  * 事件参数关系类型
65
65
  */
package/es/image.js CHANGED
@@ -1 +1 @@
1
- export function supportWebP(){const A=document.createElement("canvas");if(A.getContext&&A.getContext("2d")){const e="image/webp";return 0===A.toDataURL(e).indexOf("data:"+e)}return!1}export function supportAVIF(){return new Promise((A=>{const e=new Image;e.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A=",e.onerror=()=>{A(!1)},e.onload=()=>{A(!0)},setTimeout((()=>{A(!1)}),1e3)}))}export function ossCompress(A,e){const t=document.createElement("a");t.href=A;const o=t.search;if("liveimages.videocc.net"!==t.hostname.toLowerCase()||/(?:\?|&)x-oss-process(?:=|&|$)/.test(o))return A;let s="";return null==e.width&&null==e.height||(s+="/resize,mfit",e.width&&(s+=",w_"+e.width),e.height&&(s+=",h_"+e.height),s+=",limit_1"),e.allowAVIF?s+="/format,avif":e.allowWebP&&(s+="/format,webp"),s&&(s="x-oss-process=image"+s,A+=(-1===A.indexOf("?")?"?":"&")+s),A}export function compressHTMLImgs(A,e){return A?A.replace(/(<img.*?\ssrc=)(["']?)(.+?)\2(.*?>)/gi,((A,t,o,s,r)=>t+'"'+ossCompress(s,e)+'" data-src="'+s+'"'+r)):""}
1
+ export function supportWebP(){const A=document.createElement("canvas");if(A.getContext&&A.getContext("2d")){const e="image/webp";return 0===A.toDataURL(e).indexOf("data:"+e)}return!1}export function supportAVIF(){return new Promise((A=>{const e=new Image;e.src="data:image/avif;base64,AAAAIGZ0eXBhdmlmAAAAAGF2aWZtaWYxbWlhZk1BMUIAAADybWV0YQAAAAAAAAAoaGRscgAAAAAAAAAAcGljdAAAAAAAAAAAAAAAAGxpYmF2aWYAAAAADnBpdG0AAAAAAAEAAAAeaWxvYwAAAABEAAABAAEAAAABAAABGgAAAB0AAAAoaWluZgAAAAAAAQAAABppbmZlAgAAAAABAABhdjAxQ29sb3IAAAAAamlwcnAAAABLaXBjbwAAABRpc3BlAAAAAAAAAAIAAAACAAAAEHBpeGkAAAAAAwgICAAAAAxhdjFDgQ0MAAAAABNjb2xybmNseAACAAIAAYAAAAAXaXBtYQAAAAAAAAABAAEEAQKDBAAAACVtZGF0EgAKCBgANogQEAwgMg8f8D///8WfhwB8+ErK42A=",e.onerror=()=>{A(!1)},e.onload=()=>{A(!0)},setTimeout((()=>{A(!1)}),1e3)}))}export function ossCompress(A,e){const t=document.createElement("a");t.href=A;const o=t.search,s=t.hostname.toLowerCase();if(-1===["liveimages.videocc.net","vod-assets.videocc.net"].indexOf(s)||/(?:\?|&)x-oss-process(?:=|&|$)/.test(o))return A;let a="";return null==e.width&&null==e.height||(a+="/resize",e.width&&(a+=",w_"+e.width),e.height&&(a+=",h_"+e.height),a+=",limit_1"),e.allowAVIF?a+="/format,avif":e.allowWebP&&(a+="/format,webp"),a&&(a="x-oss-process=image"+a,A+=(-1===A.indexOf("?")?"?":"&")+a),A}export function compressHTMLImgs(A,e){return A?A.replace(/(<img.*?\ssrc=)(["']?)(.+?)\2(.*?>)/gi,((A,t,o,s,a)=>t+'"'+ossCompress(s,e)+'" data-src="'+s+'"'+a)):""}
package/es/net.d.ts CHANGED
@@ -30,6 +30,17 @@ export declare function startsWithProtocol(str: string, protocols?: string[]): b
30
30
  * ```
31
31
  */
32
32
  export declare function changeProtocol(url: string, protocol: string): string;
33
+ /**
34
+ * 移除指定 URL 中的协议头。
35
+ * @param url 指定 URL。
36
+ * @returns 处理后的字符串。
37
+ * @example
38
+ * ```javascript
39
+ * removeProtocol('https://abc.com/abc.html'); // 'abc.com/abc.html'
40
+ * removeProtocol('abc.com/abc.html'); // 'abc.com/abc.html'
41
+ * ```
42
+ */
43
+ export declare function removeProtocol(url: string): string;
33
44
  /**
34
45
  * 标准化(如果当前页面协议为 http,则为 http,否则为 https)目标字符串中的 URL 协议。
35
46
  * @param url 目标字符串。
package/es/net.js CHANGED
@@ -1 +1 @@
1
- const reProtocol=/^(?:([a-z]+):)?\/{2,3}/i;export function startsWithProtocol(o,t){const r=reProtocol.test(o);if(r&&t){const o=(RegExp.$1||"").toLowerCase();for(let r=t.length-1;r>=0;r--)if(o===t[r].toLowerCase())return!0;return!1}return r}export function changeProtocol(o,t){return reProtocol.test(t)||(t+="://"),startsWithProtocol(o)?o.replace(reProtocol,t):t+o}export function normalizeProtocol(o){return changeProtocol(o,"http:"===window.location.protocol?"http":"https")}
1
+ const reProtocol=/^(?:([a-z]+):)?\/{2,3}/i;export function startsWithProtocol(o,t){const r=reProtocol.test(o);if(r&&t){const o=(RegExp.$1||"").toLowerCase();for(let r=t.length-1;r>=0;r--)if(o===t[r].toLowerCase())return!0;return!1}return r}export function changeProtocol(o,t){return reProtocol.test(t)||(t+="://"),startsWithProtocol(o)?o.replace(reProtocol,t):t+o}export function removeProtocol(o){return o.replace(reProtocol,"")}export function normalizeProtocol(o){return changeProtocol(o,"http:"===window.location.protocol?"http":"https")}
package/es/validate.d.ts CHANGED
@@ -13,6 +13,13 @@
13
13
  * ```
14
14
  */
15
15
  export declare function isChsPhoneNO(str: string): boolean;
16
+ /**
17
+ * 检查目标字符串是否手机号。
18
+ * @param str 目标字符串。
19
+ * @param areaCode 区号,例如中国为 +86。
20
+ * @returns 目标字符串是否手机号。
21
+ */
22
+ export declare function isPhoneNO(str: string, areaCode?: string): boolean;
16
23
  /**
17
24
  * 检查目标字符串是否电子邮箱地址。
18
25
  * @param str 目标字符串。
package/es/validate.js CHANGED
@@ -1 +1 @@
1
- export function isChsPhoneNO(t){return/^1[3-9]\d{9}$/.test(t)}export function isEmail(t){if(/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*\.[a-zA-Z]{2,}$/.test(t)){const e=t.replace("@",".").split(".");for(let t=e.length-1;t>=0;t--)if(/^[-_]/.test(e[t])||/[_-]$/.test(e[t]))return!1;return!0}return!1}
1
+ export function isChsPhoneNO(t){return/^1[3-9]\d{9}$/.test(t)}export function isPhoneNO(t,e="+86"){return"+86"===e?isChsPhoneNO(t):/^\d{5,20}$/.test(t)}export function isEmail(t){if(/^[\w-]+(?:\.[\w-]+)*@[\w-]+(?:\.[\w-]+)*\.[a-zA-Z]{2,}$/.test(t)){const e=t.replace("@",".").split(".");for(let t=e.length-1;t>=0;t--)if(/^[-_]/.test(e[t])||/[_-]$/.test(e[t]))return!1;return!0}return!1}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@polyv/utils",
3
- "version": "2.4.0-beta.1",
3
+ "version": "2.6.0-beta.1",
4
4
  "description": "Utility functions of Polyv frontend development.",
5
5
  "keywords": [
6
6
  "polyv",