@amimpact/willy-utils 1.8.0 → 1.8.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/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { createCookie, readCookie, eraseCookie } from './cookie';
2
2
  import { formatCraftDate, formatDateFromNow, formatNewDate, formatUTCDate, parseISODuration } from './date';
3
3
  import { convertObjectToFormData } from './form';
4
- import { bytesToSize, capitalize, checkForScrollbars, convertHexToRGBA, downloadFile, getNestedSet, getUrlsFromString, isPlainObject, observeResize, wrap } from './misc';
4
+ import { bytesToSize, capitalize, checkForScrollbars, convertHexToRGBA, downloadFile, getNestedSet, getUrlsFromString, isHoverableDevice, isPlainObject, isTouchDevice, observeResize, wrap } from './misc';
5
5
  import { $, $$, getParents } from './selectors';
6
6
  import { isCraftActionUrl, isInternalLink, isExternalUrl, isAsset } from './url';
7
- export { $, $$, bytesToSize, capitalize, checkForScrollbars, convertHexToRGBA, createCookie, downloadFile, eraseCookie, formatCraftDate, convertObjectToFormData, formatDateFromNow, formatNewDate, formatUTCDate, getNestedSet, getParents, getUrlsFromString, isAsset, isCraftActionUrl, isExternalUrl, isInternalLink, isPlainObject, observeResize, parseISODuration, readCookie, wrap, };
7
+ export { $, $$, bytesToSize, capitalize, checkForScrollbars, convertHexToRGBA, createCookie, downloadFile, eraseCookie, formatCraftDate, convertObjectToFormData, formatDateFromNow, formatNewDate, formatUTCDate, getNestedSet, getParents, getUrlsFromString, isAsset, isCraftActionUrl, isExternalUrl, isHoverableDevice, isInternalLink, isPlainObject, isTouchDevice, observeResize, parseISODuration, readCookie, wrap, };
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.wrap = exports.readCookie = exports.parseISODuration = exports.observeResize = exports.isPlainObject = exports.isInternalLink = exports.isExternalUrl = exports.isCraftActionUrl = exports.isAsset = exports.getUrlsFromString = exports.getParents = exports.getNestedSet = exports.formatUTCDate = exports.formatNewDate = exports.formatDateFromNow = exports.convertObjectToFormData = exports.formatCraftDate = exports.eraseCookie = exports.downloadFile = exports.createCookie = exports.convertHexToRGBA = exports.checkForScrollbars = exports.capitalize = exports.bytesToSize = exports.$$ = exports.$ = void 0;
3
+ exports.wrap = exports.readCookie = exports.parseISODuration = exports.observeResize = exports.isTouchDevice = exports.isPlainObject = exports.isInternalLink = exports.isHoverableDevice = exports.isExternalUrl = exports.isCraftActionUrl = exports.isAsset = exports.getUrlsFromString = exports.getParents = exports.getNestedSet = exports.formatUTCDate = exports.formatNewDate = exports.formatDateFromNow = exports.convertObjectToFormData = exports.formatCraftDate = exports.eraseCookie = exports.downloadFile = exports.createCookie = exports.convertHexToRGBA = exports.checkForScrollbars = exports.capitalize = exports.bytesToSize = exports.$$ = exports.$ = void 0;
4
4
  var cookie_1 = require("./cookie");
5
5
  Object.defineProperty(exports, "createCookie", { enumerable: true, get: function () { return cookie_1.createCookie; } });
6
6
  Object.defineProperty(exports, "readCookie", { enumerable: true, get: function () { return cookie_1.readCookie; } });
@@ -21,7 +21,9 @@ Object.defineProperty(exports, "convertHexToRGBA", { enumerable: true, get: func
21
21
  Object.defineProperty(exports, "downloadFile", { enumerable: true, get: function () { return misc_1.downloadFile; } });
22
22
  Object.defineProperty(exports, "getNestedSet", { enumerable: true, get: function () { return misc_1.getNestedSet; } });
23
23
  Object.defineProperty(exports, "getUrlsFromString", { enumerable: true, get: function () { return misc_1.getUrlsFromString; } });
24
+ Object.defineProperty(exports, "isHoverableDevice", { enumerable: true, get: function () { return misc_1.isHoverableDevice; } });
24
25
  Object.defineProperty(exports, "isPlainObject", { enumerable: true, get: function () { return misc_1.isPlainObject; } });
26
+ Object.defineProperty(exports, "isTouchDevice", { enumerable: true, get: function () { return misc_1.isTouchDevice; } });
25
27
  Object.defineProperty(exports, "observeResize", { enumerable: true, get: function () { return misc_1.observeResize; } });
26
28
  Object.defineProperty(exports, "wrap", { enumerable: true, get: function () { return misc_1.wrap; } });
27
29
  var selectors_1 = require("./selectors");
package/dist/misc.d.ts CHANGED
@@ -49,6 +49,12 @@ export declare const getNestedSet: (entries: any[] | undefined, level: number |
49
49
  * @param {string} content - html
50
50
  */
51
51
  export declare const getUrlsFromString: (content: string) => RegExpMatchArray | null;
52
+ /**
53
+ * Bepalen of jouw device hover ondersteunt
54
+ *
55
+ * @returns {boolean}
56
+ */
57
+ export declare const isHoverableDevice: () => boolean;
52
58
  /**
53
59
  * Bekijken of een waarde een object is
54
60
  * https://github.com/reduxjs/redux/blob/master/src/utils/isPlainObject.ts
@@ -57,6 +63,13 @@ export declare const getUrlsFromString: (content: string) => RegExpMatchArray |
57
63
  * @returns {boolean}
58
64
  */
59
65
  export declare const isPlainObject: (value: any) => boolean;
66
+ /**
67
+ * Bepalen of je gebruikt maakt van een touchscreen
68
+ * https://gist.github.com/esedic/39a16a7521d42ae205203e3d40dc19f5
69
+ *
70
+ * @returns {boolean}
71
+ */
72
+ export declare const isTouchDevice: () => boolean;
60
73
  /**
61
74
  * Resize observer; checkt of een HTML element zijn dimensies veranderen
62
75
  * en zodra dat gebeurt wordt de callback functie gecalled.
package/dist/misc.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.wrap = exports.observeResize = exports.isPlainObject = exports.getUrlsFromString = exports.getNestedSet = exports.downloadFile = exports.convertHexToRGBA = exports.checkForScrollbars = exports.capitalize = exports.bytesToSize = void 0;
3
+ exports.wrap = exports.observeResize = exports.isTouchDevice = exports.isPlainObject = exports.isHoverableDevice = exports.getUrlsFromString = exports.getNestedSet = exports.downloadFile = exports.convertHexToRGBA = exports.checkForScrollbars = exports.capitalize = exports.bytesToSize = void 0;
4
4
  /**
5
5
  * Toon mooier bestandsformaat
6
6
  * @param {string | number} bytes
@@ -125,6 +125,15 @@ var getUrlsFromString = function (content) {
125
125
  return m || null;
126
126
  };
127
127
  exports.getUrlsFromString = getUrlsFromString;
128
+ /**
129
+ * Bepalen of jouw device hover ondersteunt
130
+ *
131
+ * @returns {boolean}
132
+ */
133
+ var isHoverableDevice = function () {
134
+ return window.matchMedia('(hover: hover) and (pointer: fine)').matches;
135
+ };
136
+ exports.isHoverableDevice = isHoverableDevice;
128
137
  /**
129
138
  * Bekijken of een waarde een object is
130
139
  * https://github.com/reduxjs/redux/blob/master/src/utils/isPlainObject.ts
@@ -143,6 +152,35 @@ var isPlainObject = function (value) {
143
152
  return Object.getPrototypeOf(value) === proto;
144
153
  };
145
154
  exports.isPlainObject = isPlainObject;
155
+ /**
156
+ * Bepalen of je gebruikt maakt van een touchscreen
157
+ * https://gist.github.com/esedic/39a16a7521d42ae205203e3d40dc19f5
158
+ *
159
+ * @returns {boolean}
160
+ */
161
+ var isTouchDevice = function () {
162
+ var result = false;
163
+ if (window.PointerEvent && 'maxTouchPoints' in navigator) {
164
+ // if Pointer Events are supported, just check maxTouchPoints
165
+ if (navigator.maxTouchPoints > 0) {
166
+ result = true;
167
+ }
168
+ }
169
+ else {
170
+ // no Pointer Events...
171
+ if (window.matchMedia &&
172
+ window.matchMedia('(any-pointer:coarse)').matches) {
173
+ // check for any-pointer:coarse which mostly means touchscreen
174
+ result = true;
175
+ }
176
+ else if (window.TouchEvent || 'ontouchstart' in window) {
177
+ // last resort - check for exposed touch events API / event handler
178
+ result = true;
179
+ }
180
+ }
181
+ return result;
182
+ };
183
+ exports.isTouchDevice = isTouchDevice;
146
184
  /**
147
185
  * Resize observer; checkt of een HTML element zijn dimensies veranderen
148
186
  * en zodra dat gebeurt wordt de callback functie gecalled.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amimpact/willy-utils",
3
- "version": "1.8.0",
3
+ "version": "1.8.1",
4
4
  "description": "Javascript utils",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",