@flumens/utils 0.3.4 → 0.4.0
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/dist/image.d.ts +10 -0
- package/dist/image.js +1 -1
- package/dist/index.d.ts +11 -11
- package/dist/index.js +1 -1
- package/dist/sentry.js +1 -1
- package/package.json +1 -1
package/dist/image.d.ts
CHANGED
|
@@ -42,6 +42,16 @@ type Options = Partial<ImageOptionsOriginal> & {
|
|
|
42
42
|
*/
|
|
43
43
|
getPhoto?: () => Promise<GalleryPhoto | null>;
|
|
44
44
|
};
|
|
45
|
+
export declare function isDataURL(string: string): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Converts DataURI object to a Blob.
|
|
48
|
+
*
|
|
49
|
+
* @param {type} dataURI
|
|
50
|
+
* @param {type} fileType
|
|
51
|
+
* @returns {undefined}
|
|
52
|
+
*/
|
|
53
|
+
export declare function dataURItoBlob(dataURI: string, fileType: string): Blob;
|
|
54
|
+
export declare function getBlobFromURL(url: string, mediaType: string): Promise<unknown>;
|
|
45
55
|
/**
|
|
46
56
|
* Gets a URL of the selected image from the camera or gallery.
|
|
47
57
|
* If none selected then URL is empty.
|
package/dist/image.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createImage=void 0,exports.getObjectURL=a,exports.saveFile=function(e,o){return t.__awaiter(this,void 0,void 0,(function*(){if(!
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createImage=void 0,exports.getObjectURL=a,exports.saveFile=function(e,o){return t.__awaiter(this,void 0,void 0,(function*(){if(!r.Capacitor.isNativePlatform())return a(e);yield i.Filesystem.writeFile({path:o,data:e,directory:i.Directory.Data});const{uri:t}=yield i.Filesystem.stat({path:o,directory:i.Directory.Data});return t}))},exports.deleteFile=function(e){return t.__awaiter(this,void 0,void 0,(function*(){r.Capacitor.isNativePlatform()&&(yield i.Filesystem.deleteFile({path:e,directory:i.Directory.Data}))}))},exports.resizeImage=o,exports.cropImage=function(e,r){return t.__awaiter(this,arguments,void 0,(function*(t,e,r=0){const i=yield(0,exports.createImage)(t),a=document.createElement("canvas"),o=a.getContext("2d");if(!o)return"";const s=n(r),{width:c,height:l}=function(t,e,r){const i=n(r),a=Math.abs(Math.cos(i)*t)+Math.abs(Math.sin(i)*e),o=Math.abs(Math.sin(i)*t)+Math.abs(Math.cos(i)*e);return{width:a,height:o}}(i.width,i.height,r);a.width=c,a.height=l,o.translate(c/2,l/2),o.rotate(s),o.translate(-i.width/2,-i.height/2),o.drawImage(i,0,0);const u=document.createElement("canvas"),h=u.getContext("2d");return h?(u.width=e.width,u.height=e.height,h.drawImage(a,e.x,e.y,e.width,e.height,0,0,e.width,e.height),u.toDataURL()):""}))},exports.isDataURL=c,exports.dataURItoBlob=l,exports.getBlobFromURL=function(t,e){if(c(t)){const r=l(t,e);return Promise.resolve(r)}return new Promise((e=>{const r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="blob",r.onload=()=>{const t=r.response;e(t)},r.send()}))},exports.captureImage=function(){return t.__awaiter(this,arguments,void 0,(function*(r={}){const i=yield function(r){return t.__awaiter(this,void 0,void 0,(function*(){const{camera:i,multiple:a,getPhoto:o}=r,n=t.__rest(r,["camera","multiple","getPhoto"]);if(o){const t=yield o();return t?[t]:[]}if(a)try{const t=Object.assign({quality:40,correctOrientation:!0,limit:30},n);return(yield e.Camera.pickImages(t)).photos}catch(t){if(t.message.includes("User cancelled photos app")||t.message.includes("No images picked"))return[];throw t}try{const t=Object.assign({quality:40,allowEditing:!1,saveToGallery:!0,webUseInput:!0,correctOrientation:!0,resultType:e.CameraResultType.Uri,source:i?e.CameraSource.Camera:e.CameraSource.Photos},n);return[yield e.Camera.getPhoto(t)]}catch(t){if(t.message.includes("User cancelled photos app")||t.message.includes("No image picked"))return[];throw t}}))}(r),a=[];for(const t of i){if(!t.path){t.webPath&&a.push(t.webPath);continue}const e=yield s(t.path);a.push(e)}return a}))};const t=require("tslib"),e=require("@capacitor/camera"),r=require("@capacitor/core"),i=require("@capacitor/filesystem");function a(t){const e=t.split(",")[0].split(":")[1].split(";")[0],r=window.atob(t.split(",")[1]),i=[];for(let t=0;t<r.length;t++)i.push(r.charCodeAt(t));const a=new Blob([new Uint8Array(i)],{type:e});return window.URL.createObjectURL(a)}function o({url:t,fileType:e="image/jpeg",MAX_WIDTH:r=2e3,MAX_HEIGHT:i=2e3}){return new Promise((a=>{const o=new window.Image;o.onload=()=>{var t;let{width:n}=o,{height:s}=o;let c=null;c=n>s?n/(r>n?n:r):s/(i>s?s:i),n/=c,s/=c;const l=document.createElement("canvas");l.width=n,l.height=s,null===(t=l.getContext("2d"))||void 0===t||t.drawImage(o,0,0,n,s),a([o,l.toDataURL(e)])},o.src=t}))}function n(t){return t*Math.PI/180}function s(e){return t.__awaiter(this,void 0,void 0,(function*(){const t=`${Date.now()}.jpeg`,[,a]=yield o({url:r.Capacitor.convertFileSrc(e)});yield i.Filesystem.writeFile({path:t,data:a,directory:i.Directory.Data});const{uri:n}=yield i.Filesystem.stat({path:t,directory:i.Directory.Data});return n}))}function c(t){if(!t)return!1;return!!t.toString().match(/^\s*data:([a-z]+\/[a-z]+(;[a-z\-]+\=[a-z\-]+)?)?(;base64)?,[a-z0-9\!\$\&\'\,\(\)\*\+\,\;\=\-\.\_\~\:\@\/\?\%\s]*\s*$/i)}function l(t,e){const r=atob(t.split(",")[1]),i=[];for(let t=0;t<r.length;t++)i.push(r.charCodeAt(t));return new Blob([new Uint8Array(i)],{type:e})}exports.createImage=t=>new Promise(((e,r)=>{const i=new window.Image;i.onload=()=>e(i),i.onerror=t=>r(t),i.src=t}));
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export { default as string } from './string';
|
|
2
|
-
export { default as device } from './device';
|
|
3
|
-
export * from './deferred';
|
|
4
|
-
export * from './date';
|
|
5
|
-
export * from './image';
|
|
6
|
-
export * from './location';
|
|
7
|
-
export * from './type';
|
|
8
|
-
export * from './sentry';
|
|
9
|
-
export * from './errors';
|
|
10
|
-
export * from './platform';
|
|
11
|
-
export * from './uuid';
|
|
1
|
+
export { default as string } from './string.js';
|
|
2
|
+
export { default as device } from './device.js';
|
|
3
|
+
export * from './deferred.js';
|
|
4
|
+
export * from './date.js';
|
|
5
|
+
export * from './image.js';
|
|
6
|
+
export * from './location.js';
|
|
7
|
+
export * from './type.js';
|
|
8
|
+
export * from './sentry.js';
|
|
9
|
+
export * from './errors.js';
|
|
10
|
+
export * from './platform.js';
|
|
11
|
+
export * from './uuid.js';
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.device=exports.string=void 0;const e=require("tslib");var r=require("./string");Object.defineProperty(exports,"string",{enumerable:!0,get:function(){return e.__importDefault(r).default}});var t=require("./device");Object.defineProperty(exports,"device",{enumerable:!0,get:function(){return e.__importDefault(t).default}}),e.__exportStar(require("./deferred"),exports),e.__exportStar(require("./date"),exports),e.__exportStar(require("./image"),exports),e.__exportStar(require("./location"),exports),e.__exportStar(require("./type"),exports),e.__exportStar(require("./sentry"),exports),e.__exportStar(require("./errors"),exports),e.__exportStar(require("./platform"),exports),e.__exportStar(require("./uuid"),exports);
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.device=exports.string=void 0;const e=require("tslib");var r=require("./string.js");Object.defineProperty(exports,"string",{enumerable:!0,get:function(){return e.__importDefault(r).default}});var t=require("./device.js");Object.defineProperty(exports,"device",{enumerable:!0,get:function(){return e.__importDefault(t).default}}),e.__exportStar(require("./deferred.js"),exports),e.__exportStar(require("./date.js"),exports),e.__exportStar(require("./image.js"),exports),e.__exportStar(require("./location.js"),exports),e.__exportStar(require("./type.js"),exports),e.__exportStar(require("./sentry.js"),exports),e.__exportStar(require("./errors.js"),exports),e.__exportStar(require("./platform.js"),exports),e.__exportStar(require("./uuid.js"),exports);
|
package/dist/sentry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.options=void 0;const e=require("tslib").__importStar(require("@sentry/browser"));function t(e){return e.replace(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi,"UUID")}const
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.options=void 0;const e=require("tslib").__importStar(require("@sentry/browser"));function t(e){return e.replace(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/gi,"UUID")}const a=["timeout","network error","load failed","request aborted","request failed"],r=["re-login is required","incorrect password","refresh token is invalid"],o=["Unable to preventDefault inside passive event listener invocation.","AbortError: Fetch is aborted","Attempted to load an infinite number of tiles","No images picked","User cancelled photos app","No image picked","User denied access to camera","User denied access to photos","Failed to fetch"];exports.options={maxBreadcrumbs:400,ignoreErrors:o,beforeSend:(e,t)=>{var i,s,n,d;const l=(null===(s=null===(i=null==t?void 0:t.originalException)||void 0===i?void 0:i.message)||void 0===s?void 0:s.toLowerCase())||"";if("[object Object]"===e.message){const{message:t}=(null===(d=null===(n=e.extra)||void 0===n?void 0:n.arguments)||void 0===d?void 0:d[0])||{};if(!t||o.includes(t))return null;e.message=t}return a.find((e=>l.includes(e)))&&(e.tags||(e.tags={}),e.tags.type="network"),r.find((e=>l.includes(e)))&&(e.tags||(e.tags={}),e.tags.type="authentication"),e},beforeBreadcrumb:function(e,a){if("navigation"===e.category)return e.data={to:t(e.data.to),from:t(e.data.from)},e;if(e.category.startsWith("ui")){const{innerText:t,dataset:r}=a.event.target;t&&t.length<15&&(e.message=`[${t}] ${e.message}`),r.label&&(e.message=`[${r.label}] ${e.message}`)}if(["xhr","fetch"].includes(e.category)){if(e.data.url.startsWith("data:"))return null;if("GET"===e.data.method&&e.data.url.match(/api.mapbox.com/))return null;"GET"===e.data.method&&e.data.url.match(/jpeg$/i)&&(e.data.url=e.data.url.replace(/files\/\d+\.jpeg/i,"files/FILENAME.jpeg"))}return e},integrations:[e.captureConsoleIntegration({levels:["error"]}),e.dedupeIntegration()]};
|