@rnacanvas/utilities 7.0.1 → 7.1.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/README.md CHANGED
@@ -107,23 +107,24 @@ splitLines('asdf\n\n\nqwer'); // ["asdf", "", "", "qwer"]
107
107
 
108
108
  ## `function isJSONSerializable()`
109
109
 
110
- Return `true` if the provided value can be serialized
111
- using the `JSON.stringify()` method
112
- without the `JSON.stringify()` method throwing.
110
+ Returns `true` if a value can be serialized to a JSON string.
113
111
 
114
112
  Returns `false` otherwise.
115
113
 
116
114
  ```javascript
117
- var obj1 = { 'a': 1, 'b': 2 };
115
+ isJSONSerializable({ "a": 1, "b": 2 }); // true
118
116
 
119
- isJSONSerializable(obj1); // true
120
-
121
- var obj2 = {};
117
+ var o = {};
122
118
 
123
119
  // a circular reference
124
- obj2.obj2 = obj2;
120
+ o.o = o;
121
+
122
+ isJSONSerializable(o); // false
125
123
 
126
- isJSONSerializable(obj2); // false
124
+ // some simple cases
125
+ isJSONSerializable([1, 2, 3]); // true
126
+ isJSONSerializable('asdf'); // true
127
+ isJSONSerializable(2); // true
127
128
  ```
128
129
 
129
130
  ## `function shuffled()`
package/dist/index.d.ts CHANGED
@@ -8,6 +8,8 @@ import { middleFour } from './middleFour';
8
8
  export { middleFour };
9
9
  import { splitLines } from './splitLines';
10
10
  export { splitLines };
11
+ import { isJSON } from '@rnacanvas/value-check';
12
+ export { isJSON };
11
13
  import { isJSONSerializable } from '@rnacanvas/value-check';
12
14
  export { isJSONSerializable };
13
15
  import { shuffled } from './shuffled';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,CAAC;AAEjB,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.utilities=t():e.utilities=t()}(this,()=>(()=>{var e={992(e){var t;t=()=>(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{KeyBinding:()=>y});var r,n,i,o,s,a,u,l,c,h,f=function(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?i.call(e,r):i?i.value=r:t.set(e,r),r},d=function(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)};class y{constructor(e,t,a){r.add(this),this.key=e,n.set(this,void 0),i.set(this,void 0),o.set(this,void 0),s.set(this,void 0),f(this,n,t,"f"),f(this,i,e=>d(this,r,"m",h).call(this,e),"f"),f(this,o,a,"f")}get owner(){return d(this,s,"f")}set owner(e){var t;null===(t=d(this,s,"f"))||void 0===t||t.removeEventListener("keydown",d(this,i,"f")),null==e||e.addEventListener("keydown",d(this,i,"f"),{passive:!1}),f(this,s,e,"f")}}return n=new WeakMap,i=new WeakMap,o=new WeakMap,s=new WeakMap,r=new WeakSet,a=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.altKey)&&void 0!==t&&t},u=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.ctrlKey)&&void 0!==t&&t},l=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.metaKey)&&void 0!==t&&t},c=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.shiftKey)&&void 0!==t&&t},h=function(e){this.owner&&this.owner===document.activeElement&&e.key.toUpperCase()===this.key.toUpperCase()&&e.altKey===d(this,r,"a",a)&&e.ctrlKey===d(this,r,"a",u)&&e.metaKey===d(this,r,"a",l)&&e.shiftKey===d(this,r,"a",c)&&(e.preventDefault(),d(this,n,"f").call(this))},t})(),e.exports=t()},854(e){e.exports=(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e){return"number"==typeof e}function n(e){return r(e)&&Number.isFinite(e)}function i(e){return r(e)&&!Number.isFinite(e)}function o(e){return n(e)&&e>0}function s(e){return n(e)&&e>=0}function a(e){return"string"==typeof e}function u(e){if(!a(e))return!1;try{return JSON.parse(e),!0}catch{return!1}}function l(e){try{return JSON.stringify(e),!0}catch{return!1}}function c(e){return null==e}function h(e){return"object"==typeof e&&null!==e}function f(e){return Array.isArray(e)}function d(e){return f(e)&&0==e.length}function y(e){return f(e)&&e.length>0}function p(e){return f(e)&&e.every(r)}function v(e){return p(e)&&e.length>0}function m(e){return f(e)&&e.every(n)}function w(e){return f(e)&&e.every(i)}function g(e){return f(e)&&e.every(a)}function b(e){return g(e)&&e.length>0}return e.r(t),e.d(t,{isArray:()=>f,isEmptyArray:()=>d,isFiniteNumber:()=>n,isFiniteNumbersArray:()=>m,isJSON:()=>u,isJSONSerializable:()=>l,isNonEmptyArray:()=>y,isNonEmptyNumbersArray:()=>v,isNonEmptyStringsArray:()=>b,isNonFiniteNumber:()=>i,isNonFiniteNumbersArray:()=>w,isNonNegativeFiniteNumber:()=>s,isNonNullObject:()=>h,isNullish:()=>c,isNumber:()=>r,isNumbersArray:()=>p,isPositiveFiniteNumber:()=>o,isString:()=>a,isStringsArray:()=>g}),t})()}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={exports:{}};return e[n].call(o.exports,o,o.exports,r),o.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{"use strict";function e(e){if(e.length>0)return e[0];throw new Error("Array is empty.")}function t(e){if(e.length>0)return e[e.length-1];throw new Error("Array is empty.")}function i(e){if(e.length<3)throw new Error("Array has less than 3 items.");if(e.length%2==0)throw new Error("Array has an even number of items.");let t=Math.floor(e.length/2);return[e[t-1],e[t],e[t+1]]}function o(e){if(e.length<4)throw new Error("Array has less than 4 items.");if(e.length%2!=0)throw new Error("Array has an odd number of items.");let t=Math.floor(e.length/2);return[e[t-2],e[t-1],e[t],e[t+1]]}function s(e){return e.split(/\r\n|\r|\n/)}r.r(n),r.d(n,{DownloadableFile:()=>m,EventfulSet:()=>w,FiniteStack:()=>O,KeyBinding:()=>h.KeyBinding,containsFocus:()=>c,detectMacOS:()=>d,detectWindows:()=>f,first:()=>e,hasFocus:()=>l,isJSONSerializable:()=>a.isJSONSerializable,isURL:()=>j,last:()=>t,middleFour:()=>o,middleThree:()=>i,shuffled:()=>u,splitLines:()=>s});var a=r(854);function u(e){return e.map(e=>({v:e,priority:Math.random()})).sort((e,t)=>e.priority-t.priority).map(({v:e})=>e)}function l(e){return e===document.activeElement}function c(e){return!!document.activeElement&&e.contains(document.activeElement)}var h=r(992);function f(){return-1!==navigator.userAgent.indexOf("Windows")}function d(){try{return window.navigator.platform.toLowerCase().includes("mac")}catch(e){return!1}}var y,p=function(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?i.call(e,r):i?i.value=r:t.set(e,r),r},v=function(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)};class m{constructor(e,t,r){y.set(this,void 0),this.name=null!=e?e:"Unnamed.txt",this.content=null!=t?t:"",p(this,y,null==r?void 0:r.type,"f")}get type(){return null!=v(this,y,"f")?v(this,y,"f"):this.content instanceof Blob?this.content.type:"text/plain"}set type(e){p(this,y,e,"f")}download(){let e=new File([this.content],this.name,{type:this.type}),t=URL.createObjectURL(e),r=document.createElement("a");r.href=t,r.download=e.name,document.body.appendChild(r),r.click(),r.remove(),URL.revokeObjectURL(t)}}y=new WeakMap;class w{constructor(){this.eventListeners={change:[]},this.underlyingSet=new Set}[Symbol.iterator](){return this.underlyingSet.values()}includes(e){return this.underlyingSet.has(e)}include(e){return this.includes(e)}addAll(e){let t=[...e];0!=t.length&&(t.every(e=>this.includes(e))||(t.forEach(e=>this.underlyingSet.add(e)),this.callEventListeners("change")))}removeAll(e){let t=[...e];0!=t.length&&(t.every(e=>!this.includes(e))||(t.forEach(e=>this.underlyingSet.delete(e)),this.callEventListeners("change")))}clear(){0!=this.underlyingSet.size&&(this.underlyingSet.clear(),this.callEventListeners("change"))}addEventListener(e,t){this.eventListeners[e].push(t)}callEventListeners(e){this.eventListeners[e].forEach(e=>e())}removeEventListener(e,t){this.eventListeners[e]=this.eventListeners[e].filter(e=>e!==t)}}var g,b,E,S,N=function(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)};class O{constructor(e){g.add(this),this.maxSize=e,b.set(this,[]),E.set(this,{change:[]})}get size(){return N(this,b,"f").length}isEmpty(){return 0==this.size}empty(){0!=this.size&&(function(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");"a"===n?i.call(e,r):i?i.value=r:t.set(e,r)}(this,b,[],"f"),N(this,g,"m",S).call(this,"change"))}peek(){if(0==this.size)throw new Error("The stack is empty.");return N(this,b,"f")[N(this,b,"f").length-1]}push(e){N(this,b,"f").push(e),this.size>this.maxSize&&N(this,b,"f").shift(),N(this,g,"m",S).call(this,"change")}pop(){if(0==this.size)throw new Error("The stack is empty.");let e=N(this,b,"f").pop();return N(this,g,"m",S).call(this,"change"),e}addEventListener(e,t){N(this,E,"f")[e].push(t)}removeEventListener(e,t){N(this,E,"f")[e]=N(this,E,"f")[e].filter(e=>e!==t)}}function j(e){try{return new URL(e),!0}catch(e){return!1}}b=new WeakMap,E=new WeakMap,g=new WeakSet,S=function(e){N(this,E,"f")[e].forEach(e=>e())}})(),n})());
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.utilities=t():e.utilities=t()}(this,()=>(()=>{var e={992(e){var t;t=()=>(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{KeyBinding:()=>y});var r,n,i,o,s,a,u,l,c,h,f=function(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?i.call(e,r):i?i.value=r:t.set(e,r),r},d=function(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)};class y{constructor(e,t,a){r.add(this),this.key=e,n.set(this,void 0),i.set(this,void 0),o.set(this,void 0),s.set(this,void 0),f(this,n,t,"f"),f(this,i,e=>d(this,r,"m",h).call(this,e),"f"),f(this,o,a,"f")}get owner(){return d(this,s,"f")}set owner(e){var t;null===(t=d(this,s,"f"))||void 0===t||t.removeEventListener("keydown",d(this,i,"f")),null==e||e.addEventListener("keydown",d(this,i,"f"),{passive:!1}),f(this,s,e,"f")}}return n=new WeakMap,i=new WeakMap,o=new WeakMap,s=new WeakMap,r=new WeakSet,a=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.altKey)&&void 0!==t&&t},u=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.ctrlKey)&&void 0!==t&&t},l=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.metaKey)&&void 0!==t&&t},c=function(){var e,t;return null!==(t=null===(e=d(this,o,"f"))||void 0===e?void 0:e.shiftKey)&&void 0!==t&&t},h=function(e){this.owner&&this.owner===document.activeElement&&e.key.toUpperCase()===this.key.toUpperCase()&&e.altKey===d(this,r,"a",a)&&e.ctrlKey===d(this,r,"a",u)&&e.metaKey===d(this,r,"a",l)&&e.shiftKey===d(this,r,"a",c)&&(e.preventDefault(),d(this,n,"f").call(this))},t})(),e.exports=t()},854(e){e.exports=(()=>{"use strict";var e={d:(t,r)=>{for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e){return"number"==typeof e}function n(e){return r(e)&&Number.isFinite(e)}function i(e){return r(e)&&!Number.isFinite(e)}function o(e){return n(e)&&e>0}function s(e){return n(e)&&e>=0}function a(e){return"string"==typeof e}function u(e){if(!a(e))return!1;try{return JSON.parse(e),!0}catch{return!1}}function l(e){try{return JSON.stringify(e),!0}catch{return!1}}function c(e){return null==e}function h(e){return"object"==typeof e&&null!==e}function f(e){return Array.isArray(e)}function d(e){return f(e)&&0==e.length}function y(e){return f(e)&&e.length>0}function p(e){return f(e)&&e.every(r)}function v(e){return p(e)&&e.length>0}function m(e){return f(e)&&e.every(n)}function w(e){return f(e)&&e.every(i)}function g(e){return f(e)&&e.every(a)}function b(e){return g(e)&&e.length>0}return e.r(t),e.d(t,{isArray:()=>f,isEmptyArray:()=>d,isFiniteNumber:()=>n,isFiniteNumbersArray:()=>m,isJSON:()=>u,isJSONSerializable:()=>l,isNonEmptyArray:()=>y,isNonEmptyNumbersArray:()=>v,isNonEmptyStringsArray:()=>b,isNonFiniteNumber:()=>i,isNonFiniteNumbersArray:()=>w,isNonNegativeFiniteNumber:()=>s,isNonNullObject:()=>h,isNullish:()=>c,isNumber:()=>r,isNumbersArray:()=>p,isPositiveFiniteNumber:()=>o,isString:()=>a,isStringsArray:()=>g}),t})()}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={exports:{}};return e[n].call(o.exports,o,o.exports,r),o.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{"use strict";function e(e){if(e.length>0)return e[0];throw new Error("Array is empty.")}function t(e){if(e.length>0)return e[e.length-1];throw new Error("Array is empty.")}function i(e){if(e.length<3)throw new Error("Array has less than 3 items.");if(e.length%2==0)throw new Error("Array has an even number of items.");let t=Math.floor(e.length/2);return[e[t-1],e[t],e[t+1]]}function o(e){if(e.length<4)throw new Error("Array has less than 4 items.");if(e.length%2!=0)throw new Error("Array has an odd number of items.");let t=Math.floor(e.length/2);return[e[t-2],e[t-1],e[t],e[t+1]]}function s(e){return e.split(/\r\n|\r|\n/)}r.r(n),r.d(n,{DownloadableFile:()=>m,EventfulSet:()=>w,FiniteStack:()=>O,KeyBinding:()=>h.KeyBinding,containsFocus:()=>c,detectMacOS:()=>d,detectWindows:()=>f,first:()=>e,hasFocus:()=>l,isJSON:()=>a.isJSON,isJSONSerializable:()=>a.isJSONSerializable,isURL:()=>j,last:()=>t,middleFour:()=>o,middleThree:()=>i,shuffled:()=>u,splitLines:()=>s});var a=r(854);function u(e){return e.map(e=>({v:e,priority:Math.random()})).sort((e,t)=>e.priority-t.priority).map(({v:e})=>e)}function l(e){return e===document.activeElement}function c(e){return!!document.activeElement&&e.contains(document.activeElement)}var h=r(992);function f(){return-1!==navigator.userAgent.indexOf("Windows")}function d(){try{return window.navigator.platform.toLowerCase().includes("mac")}catch(e){return!1}}var y,p=function(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?i.call(e,r):i?i.value=r:t.set(e,r),r},v=function(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)};class m{constructor(e,t,r){y.set(this,void 0),this.name=null!=e?e:"Unnamed.txt",this.content=null!=t?t:"",p(this,y,null==r?void 0:r.type,"f")}get type(){return null!=v(this,y,"f")?v(this,y,"f"):this.content instanceof Blob?this.content.type:"text/plain"}set type(e){p(this,y,e,"f")}download(){let e=new File([this.content],this.name,{type:this.type}),t=URL.createObjectURL(e),r=document.createElement("a");r.href=t,r.download=e.name,document.body.appendChild(r),r.click(),r.remove(),URL.revokeObjectURL(t)}}y=new WeakMap;class w{constructor(){this.eventListeners={change:[]},this.underlyingSet=new Set}[Symbol.iterator](){return this.underlyingSet.values()}includes(e){return this.underlyingSet.has(e)}include(e){return this.includes(e)}addAll(e){let t=[...e];0!=t.length&&(t.every(e=>this.includes(e))||(t.forEach(e=>this.underlyingSet.add(e)),this.callEventListeners("change")))}removeAll(e){let t=[...e];0!=t.length&&(t.every(e=>!this.includes(e))||(t.forEach(e=>this.underlyingSet.delete(e)),this.callEventListeners("change")))}clear(){0!=this.underlyingSet.size&&(this.underlyingSet.clear(),this.callEventListeners("change"))}addEventListener(e,t){this.eventListeners[e].push(t)}callEventListeners(e){this.eventListeners[e].forEach(e=>e())}removeEventListener(e,t){this.eventListeners[e]=this.eventListeners[e].filter(e=>e!==t)}}var g,b,E,S,N=function(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)};class O{constructor(e){g.add(this),this.maxSize=e,b.set(this,[]),E.set(this,{change:[]})}get size(){return N(this,b,"f").length}isEmpty(){return 0==this.size}empty(){0!=this.size&&(function(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");"a"===n?i.call(e,r):i?i.value=r:t.set(e,r)}(this,b,[],"f"),N(this,g,"m",S).call(this,"change"))}peek(){if(0==this.size)throw new Error("The stack is empty.");return N(this,b,"f")[N(this,b,"f").length-1]}push(e){N(this,b,"f").push(e),this.size>this.maxSize&&N(this,b,"f").shift(),N(this,g,"m",S).call(this,"change")}pop(){if(0==this.size)throw new Error("The stack is empty.");let e=N(this,b,"f").pop();return N(this,g,"m",S).call(this,"change"),e}addEventListener(e,t){N(this,E,"f")[e].push(t)}removeEventListener(e,t){N(this,E,"f")[e]=N(this,E,"f")[e].filter(e=>e!==t)}}function j(e){try{return new URL(e),!0}catch(e){return!1}}b=new WeakMap,E=new WeakMap,g=new WeakSet,S=function(e){N(this,E,"f")[e].forEach(e=>e())}})(),n})());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rnacanvas/utilities",
3
- "version": "7.0.1",
3
+ "version": "7.1.0",
4
4
  "description": "General utilities",
5
5
  "main": "./dist/index.js",
6
6
  "scripts": {