UNPKG

@animech-public/playcanvas

Version:
2 lines (1 loc) 1.51 kB
const t="abcdefghijklmnopqrstuvwxyz",n="ABCDEFGHIJKLMNOPQRSTUVWXYZ",r=55296,o=127462,e=127487,s=65024,u=65039;function c(t,n=0){const o=t.length;if(n<0||n>=o)return null;const e=t.charCodeAt(n);if(o>1&&e>=r&&e<=56319){const o=t.charCodeAt(n+1);if(o>=56320&&o<=57343)return{code:1024*(e-r)+o-56320+65536,long:!0}}return{code:e,long:!1}}function i(t,n,r){if(!t)return!1;const o=c(t);if(o){const t=o.code;return t>=n&&t<=r}return!1}function f(t,n){if(n===t.length-1)return 1;if(i(t[n],r,56319)){const r=t.substring(n,n+2),c=t.substring(n+2,n+4);return i(c,127995,127999)||i(r,o,e)&&i(c,o,e)?4:i(c,s,u)?3:2}return i(t[n+1],s,u)?2:1}const l={ASCII_LOWERCASE:t,ASCII_UPPERCASE:n,ASCII_LETTERS:t+n,format(t,...n){for(let r=0;r<n.length;r++)t=t.replace(`{${r}}`,n[r]);return t},getCodePoint(t,n){const r=c(t,n);return r&&r.code},getCodePoints(t){if("string"!=typeof t)throw new TypeError("Not a string");let n=0;const r=[];let o;for(;o=c(t,n);)r.push(o.code),n+=o.long?2:1;return r},getSymbols(t){if("string"!=typeof t)throw new TypeError("Not a string");let n=0;const r=t.length,o=[];let e,c=0;for(;n<r;){if(c+=f(t,n+c),e=t[n+c],i(e,8400,8447)&&(e=t[n+c++]),i(e,s,u)&&(e=t[n+c++]),e&&8205===e.charCodeAt(0)){e=t[n+c++];continue}const r=t.substring(n,n+c);o.push(r),n+=c,c=0}return o},fromCodePoint(){const t=[];let n,r,o;for(let e=0;e<arguments.length;++e)n=Number(arguments[e]),r=n-65536,o=n>65535?[55296+(r>>10),r%1024+56320]:[n],t.push(String.fromCharCode.apply(null,o));return t.join("")}};export{l as string};