@lipemat/js-helpers 1.0.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 +61 -0
- package/dist/classes/classes.d.ts +28 -0
- package/dist/classes/classes.d.ts.map +1 -0
- package/dist/classes/classes.js +50 -0
- package/dist/classes/classes.js.map +1 -0
- package/dist/colors/colors.d.ts +14 -0
- package/dist/colors/colors.d.ts.map +1 -0
- package/dist/colors/colors.js +63 -0
- package/dist/colors/colors.js.map +1 -0
- package/dist/csvExport/csvExport.d.ts +19 -0
- package/dist/csvExport/csvExport.d.ts.map +1 -0
- package/dist/csvExport/csvExport.js +74 -0
- package/dist/csvExport/csvExport.js.map +1 -0
- package/dist/date/date.d.ts +10 -0
- package/dist/date/date.d.ts.map +1 -0
- package/dist/date/date.js +20 -0
- package/dist/date/date.js.map +1 -0
- package/dist/debounce/debounce.d.ts +17 -0
- package/dist/debounce/debounce.d.ts.map +1 -0
- package/dist/debounce/debounce.js +34 -0
- package/dist/debounce/debounce.js.map +1 -0
- package/dist/delay/delay.d.ts +18 -0
- package/dist/delay/delay.d.ts.map +1 -0
- package/dist/delay/delay.js +20 -0
- package/dist/delay/delay.js.map +1 -0
- package/dist/device/device.d.ts +26 -0
- package/dist/device/device.d.ts.map +1 -0
- package/dist/device/device.js +42 -0
- package/dist/device/device.js.map +1 -0
- package/dist/dom-ready/dom-ready.d.ts +12 -0
- package/dist/dom-ready/dom-ready.d.ts.map +1 -0
- package/dist/dom-ready/dom-ready.js +19 -0
- package/dist/dom-ready/dom-ready.js.map +1 -0
- package/dist/error/error.d.ts +28 -0
- package/dist/error/error.d.ts.map +1 -0
- package/dist/error/error.js +33 -0
- package/dist/error/error.js.map +1 -0
- package/dist/escaping/escaping.d.ts +17 -0
- package/dist/escaping/escaping.d.ts.map +1 -0
- package/dist/escaping/escaping.js +39 -0
- package/dist/escaping/escaping.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +25 -0
- package/dist/index.js.map +1 -0
- package/dist/injectScript/injectScript.d.ts +14 -0
- package/dist/injectScript/injectScript.d.ts.map +1 -0
- package/dist/injectScript/injectScript.js +30 -0
- package/dist/injectScript/injectScript.js.map +1 -0
- package/dist/memoize/memoize.d.ts +13 -0
- package/dist/memoize/memoize.d.ts.map +1 -0
- package/dist/memoize/memoize.js +19 -0
- package/dist/memoize/memoize.js.map +1 -0
- package/dist/noop/noop.d.ts +9 -0
- package/dist/noop/noop.d.ts.map +1 -0
- package/dist/noop/noop.js +10 -0
- package/dist/noop/noop.js.map +1 -0
- package/dist/objects/objects.d.ts +20 -0
- package/dist/objects/objects.d.ts.map +1 -0
- package/dist/objects/objects.js +24 -0
- package/dist/objects/objects.js.map +1 -0
- package/dist/once/once.d.ts +9 -0
- package/dist/once/once.d.ts.map +1 -0
- package/dist/once/once.js +17 -0
- package/dist/once/once.js.map +1 -0
- package/dist/string/string.d.ts +34 -0
- package/dist/string/string.d.ts.map +1 -0
- package/dist/string/string.js +65 -0
- package/dist/string/string.js.map +1 -0
- package/dist/throttle/throttle.d.ts +17 -0
- package/dist/throttle/throttle.d.ts.map +1 -0
- package/dist/throttle/throttle.js +43 -0
- package/dist/throttle/throttle.js.map +1 -0
- package/dist/url/url.d.ts +17 -0
- package/dist/url/url.d.ts.map +1 -0
- package/dist/url/url.js +28 -0
- package/dist/url/url.js.map +1 -0
- package/package.json +71 -0
- package/src/classes/Readme.md +28 -0
- package/src/classes/classes.ts +51 -0
- package/src/colors/Readme.md +28 -0
- package/src/colors/colors.ts +80 -0
- package/src/csvExport/Readme.md +35 -0
- package/src/csvExport/csvExport.ts +89 -0
- package/src/date/Readme.md +21 -0
- package/src/date/date.ts +23 -0
- package/src/debounce/Readme.md +27 -0
- package/src/debounce/debounce.ts +47 -0
- package/src/delay/Readme.md +20 -0
- package/src/delay/delay.ts +19 -0
- package/src/device/Readme.md +31 -0
- package/src/device/device.ts +46 -0
- package/src/dom-ready/Readme.md +27 -0
- package/src/dom-ready/dom-ready.ts +22 -0
- package/src/error/Readme.md +40 -0
- package/src/error/error.ts +49 -0
- package/src/escaping/Readme.md +23 -0
- package/src/escaping/escaping.ts +41 -0
- package/src/index.ts +24 -0
- package/src/injectScript/Readme.md +26 -0
- package/src/injectScript/injectScript.ts +31 -0
- package/src/memoize/Readme.md +28 -0
- package/src/memoize/memoize.ts +27 -0
- package/src/noop/Readme.md +19 -0
- package/src/noop/noop.ts +9 -0
- package/src/objects/Readme.md +31 -0
- package/src/objects/objects.ts +26 -0
- package/src/once/Readme.md +26 -0
- package/src/once/once.ts +22 -0
- package/src/string/Readme.md +37 -0
- package/src/string/string.ts +72 -0
- package/src/throttle/Readme.md +27 -0
- package/src/throttle/throttle.ts +57 -0
- package/src/url/Readme.md +32 -0
- package/src/url/url.ts +35 -0
package/src/url/url.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import DOMPurify from 'dompurify';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @notice More robust versions are available from the `@lipemat/js-boilerplate-gutenberg` package.
|
|
5
|
+
*
|
|
6
|
+
* @notice More URL helpers are available within `@wordpress/url` package
|
|
7
|
+
* when being used in the admin or when added as a dependency.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @see @lipemat/js-boilerplate-gutenberg{getQueryArg} for more robust version.
|
|
12
|
+
*/
|
|
13
|
+
export function getUrlParam(
|
|
14
|
+
parameter: string,
|
|
15
|
+
defaultValue: string = '',
|
|
16
|
+
): string | null {
|
|
17
|
+
const urlParams = new URLSearchParams( DOMPurify.sanitize( window.location.search ) );
|
|
18
|
+
|
|
19
|
+
if ( urlParams.has( parameter ) ) {
|
|
20
|
+
return urlParams.get( parameter );
|
|
21
|
+
}
|
|
22
|
+
return defaultValue;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* @see @lipemat/js-boilerplate-gutenberg{addQueryArgs} for more robust version.
|
|
27
|
+
*/
|
|
28
|
+
export function addQueryArgs( url: string = '', args: { [ name: string ]: string | number } ) {
|
|
29
|
+
const path = new URL( url );
|
|
30
|
+
Object.keys( args ).forEach( arg => {
|
|
31
|
+
path.searchParams.append( DOMPurify.sanitize( arg ), args[ arg ].toString() );
|
|
32
|
+
} );
|
|
33
|
+
|
|
34
|
+
return path.toString();
|
|
35
|
+
}
|