@flumens/utils 0.3.1 → 0.3.2
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/date.js +1 -1
- package/dist/deferred.js +1 -1
- package/dist/device.js +1 -1
- package/dist/errors.js +1 -1
- package/dist/image.js +1 -1
- package/dist/index.js +1 -1
- package/dist/location.js +1 -1
- package/dist/platform.js +1 -1
- package/dist/sentry.js +1 -1
- package/dist/string.js +1 -1
- package/dist/type.js +1 -1
- package/dist/uuid.js +1 -1
- package/package.json +5 -4
- package/dist/globals.d.ts +0 -4
- package/dist/globals.js +0 -1
package/dist/date.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0})
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.toISOTimezoneString=exports.isValidDate=exports.getRelativeDate=exports.timeFormat=exports.dateFormat=void 0,exports.dateFormat=new Intl.DateTimeFormat("en-GB",{day:"numeric",month:"numeric",year:"numeric"}),exports.timeFormat=new Intl.DateTimeFormat("en-GB",{hour:"numeric",minute:"numeric"});exports.getRelativeDate=e=>{const t=new Date(e),r=exports.dateFormat.format(t),a=new Date;if(exports.dateFormat.format(a)===r)return"Today";const o=new Date;o.setDate(o.getDate()-1);return exports.dateFormat.format(o)===r?"Yesterday":r};exports.isValidDate=e=>{const t=new Date(e);return t instanceof Date&&!isNaN(t)};exports.toISOTimezoneString=e=>{const t=-e.getTimezoneOffset(),r=t>=0?"+":"-",a=function(e){return(e<10?"0":"")+e};return`${e.getFullYear()}-${a(e.getMonth()+1)}-${a(e.getDate())}T${a(e.getHours())}:${a(e.getMinutes())}:${a(e.getSeconds())}${r}${a(Math.floor(Math.abs(t)/60))}:${a(Math.abs(t)%60)}`};
|
package/dist/deferred.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Deferred=void 0;exports.Deferred=class{constructor(){this.promise=new Promise(((e,r)=>{this._resolveSelf=e,this._rejectSelf=r}))}then(e,r){return this.promise.then(e,r)}catch(e){return this.promise.catch(e)}finally(e){return this.promise.finally(e)}resolve(e){this._resolveSelf(e)}reject(e){this._rejectSelf(e)}};
|
package/dist/device.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=require("tslib"),n=require("mobx"),i=require("@capacitor/device"),o=require("@capacitor/network"),t=(0,n.observable)({isOnline:!1,connectionType:"unknown",info:void 0});o.Network.addListener("networkStatusChange",(({connected:e})=>{t.isOnline=e})),e.__awaiter(void 0,void 0,void 0,(function*(){const{connected:e,connectionType:n}=yield o.Network.getStatus();t.isOnline=e,t.connectionType=n})),e.__awaiter(void 0,void 0,void 0,(function*(){const e=yield i.Device.getInfo();t.info=e})),exports.default=t;
|
package/dist/errors.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isAxiosNetworkError=exports.HandledError=void 0;const r=require("axios");class o extends Error{constructor(){super(...arguments),this.isHandled=!0}}exports.HandledError=o;exports.isAxiosNetworkError=o=>r.AxiosError.ETIMEDOUT===o.code||r.AxiosError.ECONNABORTED===o.code||r.AxiosError.ERR_CANCELED===o.code||r.AxiosError.ERR_NETWORK===o.code;
|
package/dist/image.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0})
|
|
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(!i.Capacitor.isNativePlatform())return a(e);yield r.Filesystem.writeFile({path:o,data:e,directory:r.Directory.Data});const{uri:t}=yield r.Filesystem.stat({path:o,directory:r.Directory.Data});return t}))},exports.deleteFile=function(e){return t.__awaiter(this,void 0,void 0,(function*(){i.Capacitor.isNativePlatform()&&(yield r.Filesystem.deleteFile({path:e,directory:r.Directory.Data}))}))},exports.resizeImage=o,exports.cropImage=function(e,i){return t.__awaiter(this,arguments,void 0,(function*(t,e,i=0){const r=yield(0,exports.createImage)(t),a=document.createElement("canvas"),o=a.getContext("2d");if(!o)return"";const s=n(i),{width:c,height:l}=function(t,e,i){const r=n(i),a=Math.abs(Math.cos(r)*t)+Math.abs(Math.sin(r)*e),o=Math.abs(Math.sin(r)*t)+Math.abs(Math.cos(r)*e);return{width:a,height:o}}(r.width,r.height,i);a.width=c,a.height=l,o.translate(c/2,l/2),o.rotate(s),o.translate(-r.width/2,-r.height/2),o.drawImage(r,0,0);const h=document.createElement("canvas"),u=h.getContext("2d");return u?(h.width=e.width,h.height=e.height,u.drawImage(a,e.x,e.y,e.width,e.height,0,0,e.width,e.height),h.toDataURL()):""}))},exports.captureImage=function(){return t.__awaiter(this,arguments,void 0,(function*(i={}){const r=yield function(i){return t.__awaiter(this,void 0,void 0,(function*(){const{camera:r,multiple:a,getPhoto:o}=i,n=t.__rest(i,["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:r?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}}))}(i),a=[];for(const t of r){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"),i=require("@capacitor/core"),r=require("@capacitor/filesystem");function a(t){const e=t.split(",")[0].split(":")[1].split(";")[0],i=window.atob(t.split(",")[1]),r=[];for(let t=0;t<i.length;t++)r.push(i.charCodeAt(t));const a=new Blob([new Uint8Array(r)],{type:e});return window.URL.createObjectURL(a)}function o({url:t,fileType:e="image/jpeg",MAX_WIDTH:i=2e3,MAX_HEIGHT:r=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/(i>n?n:i):s/(r>s?s:r),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:i.Capacitor.convertFileSrc(e)});yield r.Filesystem.writeFile({path:t,data:a,directory:r.Directory.Data});const{uri:n}=yield r.Filesystem.stat({path:t,directory:r.Directory.Data});return n}))}exports.createImage=t=>new Promise(((e,i)=>{const r=new window.Image;r.onload=()=>e(r),r.onerror=t=>i(t),r.src=t}));
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
|
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);
|
package/dist/location.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0})
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isValidLocation=exports.normalizeCoords=exports.gridrefAccuracy=void 0,exports.prettyPrintGridRef=i,exports.locationToGrid=n,exports.parseGrid=function(t){let e;const o=r.default.GridRefParser.factory(t);o&&(o.osRef.x+=o.length/2,o.osRef.y+=o.length/2,e=o.osRef);return e},exports.gridrefStringToLatLng=function(t){try{const e=r.default.GridRefParser.factory(t);return e?e.osRef.to_latLng():null}catch(t){console.error(t.message)}return null},exports.isValidGridRef=function(t){try{const e=r.default.GridRefParser.factory(t);return!(!e||!r.default.MappingUtils.is_gb_hectad(e.hectad))}catch(t){console.error(t.message)}return!1},exports.isInGB=function(t){if(t.latitude){const e=r.default.latlng_to_grid_coords(t.latitude,t.longitude);return!!e&&"GB"===e.country}return!1},exports.updateModelLocation=function(e,r){return t.__awaiter(this,arguments,void 0,(function*(t,e,r=!1){var o;if(null===(o=t.metadata)||void 0===o?void 0:o.deleted)return void console.warn("LocationUtils: skipping deleted model location set");const i=Object.assign({},e);i.latitude=parseFloat(parseFloat(`${i.latitude}`).toFixed(5)),i.longitude=parseFloat(parseFloat(`${i.longitude}`).toFixed(5)),(i.accuracy||Number.isFinite(i.accuracy))&&(i.accuracy=parseFloat(parseFloat(`${i.accuracy}`).toFixed(2))),(i.altitude||Number.isFinite(i.altitude))&&(i.altitude=parseFloat(parseFloat(`${i.altitude}`).toFixed(2))),(i.altitudeAccuracy||Number.isFinite(i.altitudeAccuracy))&&(i.altitudeAccuracy=parseFloat(parseFloat(`${i.altitudeAccuracy}`).toFixed(2))),i.source="gps",r||(i.gridref=n(i));const a=t.data.location,c=Object.assign(Object.assign({},a),i);t.setGPSLocation?yield t.setGPSLocation(c):(t.data.location=c,yield t.save())}))},exports.prettyPrintLocation=function(t){if(!t||!t.latitude)return"";if(t.gridref)return i(t.gridref);const e=n(t);if(e)return i(e);return`${parseFloat(t.latitude).toFixed(4)}, ${parseFloat(t.longitude).toFixed(4)}`},exports.checkGridType=function(t,e){if(!e)return!1;const r=t.gridref||"";let{length:o}=exports.gridrefAccuracy[e];/^.\d/.test(r)&&(o-=1);return r.length===o},exports.doesExceedGridRef=a,exports.normalizeGridRefAcc=function t(e,r,o){if(o>=1e4)return null;if(a(e,r,o))return t(e,r,10*o);return e.to_gridref(o)},exports.getGridSquareCenter=function(t){const e=r.default.GridRefParser.factory(t);if(!e)return null;const o=e.osRef;return new e.NationalRef(o.x+e.length/2,o.y+e.length/2).to_latLng()},exports.default=function t(e){const r=new o.SphericalMercator;try{const{type:o}=e;let{coordinates:i}=e;if("Point"===o)i=[i];else if("MultiLineString"===o){const r=e=>t({coordinates:e});return e.coordinates.map(r)}const n=t=>r.inverse(t);return i.map(n)}catch(t){return[]}},exports.getGeomWKT=function(t){const r=new o.SphericalMercator;function i(t){return t.map((([t,e])=>r.forward([t,e])))}const n=JSON.parse(JSON.stringify(t));"Polygon"===n.type?n.coordinates[0]=i(n.coordinates[0]):n.coordinates=i(n.coordinates);return e.default.stringify(n)},exports.getGeomCenter=function(t){const e=JSON.parse(JSON.stringify(t));if("Polygon"===e.type)return[e.coordinates[0][0][0],e.coordinates[0][0][1]];return[e.coordinates[0][0],e.coordinates[0][1]]};const t=require("tslib"),e=t.__importDefault(require("wellknown")),r=t.__importDefault(require("@flumens/bigu")),o=require("@mapbox/sphericalmercator");function i(t){const[,e]=t.match(/^([A-Z]*)\d/i),r=t.replace(e,""),o=r.length;if(o%2)return`${e} ${r}`;return`${e} ${r.slice(0,o/2)} ${r.slice(o/2)}`}function n(t){const e=r.default.latlng_to_grid_coords(t.latitude,t.longitude);if(!e||!Number.isFinite(t.accuracy))return null;const o=r.default.GridRefParser.get_normalized_precision(2*t.accuracy);return e.to_gridref(o)}function a(t,e,r){const{accuracy:o}=e,{x:i}=t,{y:n}=t;return i%r-o<0||(i%r+o>r||(n%r-o<0||n%r+o>r))}exports.gridrefAccuracy={tetrad:{label:"Tetrad (2km square)",length:5},monad:{label:"Monad (1km square)",length:6}};exports.normalizeCoords=({lat:t,lng:e})=>e>180?{lat:t,lng:e-180-180}:e<-180?{lat:t,lng:180+(e+180)}:{lat:t,lng:e};exports.isValidLocation=t=>Number.isFinite(null==t?void 0:t.latitude)&&Number.isFinite(null==t?void 0:t.longitude);
|
package/dist/platform.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var i;Object.defineProperty(exports,"__esModule",{value:!0});
|
|
1
|
+
"use strict";var i;Object.defineProperty(exports,"__esModule",{value:!0}),exports.isPlatform=void 0;const o=!!(window||{}).cordova||!!(null===(i=(window||{}).Capacitor)||void 0===i?void 0:i.isNative);exports.isPlatform=i=>{if("undefined"==typeof window)return!1;const e=(i,o)=>o.test(i.navigator.userAgent);return"android"===i?(r=window,e(r,/android|sink/i)):"ios"===i?(i=>e(i,/iPhone|iPod/i)||(i=>!!e(i,/iPad/i)||!(!e(i,/Macintosh/i)||!(i=>((i,o)=>{var e;return null===(e=i.matchMedia)||void 0===e?void 0:e.call(i,o).matches})(i,"(any-pointer:coarse)"))(i)))(i))(window):"hybrid"===i&&o;var r};
|
package/dist/sentry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.options=void 0;const e=require("@sentry/integrations");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 r=["timeout","network error","load failed","request aborted"],a=["re-login is required","incorrect password","refresh token is invalid"],s=["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:s,beforeSend:e=>{var t,o;if("[object Object]"===e.message){const{message:r}=(null===(o=null===(t=e.extra)||void 0===t?void 0:t.arguments)||void 0===o?void 0:o[0])||{};if(!r||s.includes(r))return null;e.message=r}return r.find((t=>{var r;return null===(r=e.message)||void 0===r?void 0:r.toLowerCase().includes(t)}))&&(e.tags||(e.tags={}),e.tags.type="network"),a.find((t=>{var r;return null===(r=e.message)||void 0===r?void 0:r.toLowerCase().includes(t)}))&&(e.tags||(e.tags={}),e.tags.type="authentication"),e},beforeBreadcrumb:function(e,r){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:a}=r.event.target;t&&t.length<15&&(e.message=`[${t}] ${e.message}`),a.label&&(e.message=`[${a.label}] ${e.message}`)}if(["xhr","fetch"].includes(e.category)){if(e.data.url.startsWith("data:"))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:[new e.CaptureConsole({levels:["error"]}),new e.Dedupe]};
|
package/dist/string.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0})
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default={limit(e,t=20){if(!e)return"";const r=e.toString(),n=r&&r.length>t?"...":"";return r?r.substring(0,t)+n:""},escape(e){const t=document.createElement("div");t.appendChild(document.createTextNode(e.toString()));return t.innerHTML.trim()}};
|
package/dist/type.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});
|
package/dist/uuid.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0})
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.UUIDv7=void 0,exports.hashCode=function(t){let e,r,n=0;if(0===t.length)return n;for(e=0;e<t.length;e++)r=t.charCodeAt(e),n=(n<<5)-n+r,n|=0;return n};exports.UUIDv7=function(t){let e=-1,r=0;return()=>{const n=Math.max(Date.now(),e);r=n===e?r+1:0,e=n;const o=new Uint32Array(2);t(o),o[0]=2<<30|o[0]>>>2;const a=n.toString(16).padStart(12,"0")+"7"+r.toString(16).padStart(3,"0")+o[0].toString(16).padStart(8,"0")+o[1].toString(16).padStart(8,"0");return a.slice(0,8)+"-"+a.slice(8,12)+"-"+a.slice(12,16)+"-"+a.slice(16,20)+"-"+a.slice(20)}}((t=>crypto.getRandomValues(t)));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flumens/utils",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.2",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"scripts": {
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"@rollup/plugin-json": "6.1.0",
|
|
19
19
|
"@rollup/plugin-node-resolve": "16.0.0",
|
|
20
20
|
"@rollup/plugin-typescript": "12.1.2",
|
|
21
|
-
"@types/wellknown": "^0.5.8",
|
|
22
21
|
"@trivago/prettier-plugin-sort-imports": "5.2.2",
|
|
22
|
+
"@types/wellknown": "^0.5.8",
|
|
23
23
|
"prettier": "3.5.0",
|
|
24
24
|
"rollup-plugin-clear": "2.0.7",
|
|
25
25
|
"rollup-plugin-terser": "7.0.2",
|
|
@@ -32,9 +32,10 @@
|
|
|
32
32
|
"@capacitor/device": "^5 || ^6 || ^7",
|
|
33
33
|
"@capacitor/filesystem": "^5 || ^6 || ^7",
|
|
34
34
|
"@capacitor/network": "^5 || ^6 || ^7",
|
|
35
|
-
"@flumens/bigu": "^0.4.
|
|
35
|
+
"@flumens/bigu": "^0.4.1",
|
|
36
|
+
"@mapbox/sphericalmercator": "^2.0.1",
|
|
36
37
|
"@sentry/integrations": "^7 || ^8",
|
|
37
|
-
"@
|
|
38
|
+
"@sentry/browser": "^7 || ^8 || ^9",
|
|
38
39
|
"axios": "^1",
|
|
39
40
|
"geojson": "^0.5.0",
|
|
40
41
|
"mobx": "^6",
|
package/dist/globals.d.ts
DELETED
package/dist/globals.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|