umaki 0.3.2 → 0.4.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/README.md +31 -0
- package/dist/_virtual/_commonjsHelpers.cjs.js +1 -1
- package/dist/_virtual/_commonjsHelpers.es.js +1 -1
- package/dist/_virtual/isBetween.cjs.js +1 -1
- package/dist/_virtual/isBetween.es.js +1 -1
- package/dist/index.cjs.js +3 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.es.js +3 -1
- package/dist/libs/control/bgScrollStop.cjs.js +1 -1
- package/dist/libs/control/bgScrollStop.es.js +1 -1
- package/dist/libs/control/pd.cjs.js +1 -1
- package/dist/libs/control/pd.es.js +1 -1
- package/dist/libs/control/scrollToHash.cjs.js +1 -1
- package/dist/libs/control/scrollToHash.es.js +1 -1
- package/dist/libs/control/videoPlayControl.cjs.js +1 -1
- package/dist/libs/control/videoPlayControl.es.js +1 -1
- package/dist/libs/convert/changeDateStringToSpecificFormat.cjs.js +1 -1
- package/dist/libs/convert/changeDateStringToSpecificFormat.es.js +1 -1
- package/dist/libs/convert/jsonStringToJsonObject.cjs.js +1 -1
- package/dist/libs/convert/jsonStringToJsonObject.es.js +1 -1
- package/dist/libs/eventControl/debounce.cjs.js +1 -1
- package/dist/libs/eventControl/debounce.es.js +1 -1
- package/dist/libs/eventControl/throttle.cjs.js +1 -1
- package/dist/libs/eventControl/throttle.es.js +1 -1
- package/dist/libs/get/getAspectRatio.cjs.js +1 -1
- package/dist/libs/get/getAspectRatio.es.js +1 -1
- package/dist/libs/get/getClassNames.cjs.js +1 -1
- package/dist/libs/get/getClassNames.es.js +1 -1
- package/dist/libs/get/getDocumentHeight.cjs.js +1 -1
- package/dist/libs/get/getDocumentHeight.es.js +1 -1
- package/dist/libs/get/getEventPaths.cjs.js +1 -1
- package/dist/libs/get/getEventPaths.es.js +1 -1
- package/dist/libs/get/getGcd.cjs.js +1 -1
- package/dist/libs/get/getGcd.es.js +1 -1
- package/dist/libs/get/getOrientation.cjs.js +1 -1
- package/dist/libs/get/getOrientation.es.js +1 -1
- package/dist/libs/get/getParentList.cjs.js +1 -1
- package/dist/libs/get/getParentList.es.js +1 -1
- package/dist/libs/get/getQueryParams.cjs.js +1 -1
- package/dist/libs/get/getQueryParams.es.js +1 -1
- package/dist/libs/get/getRem.cjs.js +1 -1
- package/dist/libs/get/getRem.es.js +1 -1
- package/dist/libs/get/getScrollbarWidth.cjs.js +1 -1
- package/dist/libs/get/getScrollbarWidth.es.js +1 -1
- package/dist/libs/get/getSessionStorage.cjs.js +1 -1
- package/dist/libs/get/getSessionStorage.es.js +1 -1
- package/dist/libs/get/getStringLength.cjs.js +1 -1
- package/dist/libs/get/getStringLength.es.js +1 -1
- package/dist/libs/get/getStylePropertyValue.cjs.js +1 -1
- package/dist/libs/get/getStylePropertyValue.es.js +1 -1
- package/dist/libs/get/getStylePropertyValueToNumber.cjs.js +1 -1
- package/dist/libs/get/getStylePropertyValueToNumber.es.js +1 -1
- package/dist/libs/get/getUaData.cjs.js +1 -1
- package/dist/libs/get/getUaData.es.js +1 -1
- package/dist/libs/is/isBetweenDateTime.cjs.js +1 -1
- package/dist/libs/is/isBetweenDateTime.es.js +1 -1
- package/dist/libs/is/isExistAllElements.cjs.js +1 -1
- package/dist/libs/is/isExistAllElements.es.js +1 -1
- package/dist/libs/is/isIpad.cjs.js +1 -1
- package/dist/libs/is/isIpad.es.js +1 -1
- package/dist/libs/is/isKeyExists.cjs.js +1 -1
- package/dist/libs/is/isKeyExists.es.js +1 -1
- package/dist/libs/is/isSafari.cjs.js +1 -1
- package/dist/libs/is/isSafari.es.js +1 -1
- package/dist/libs/is/isScrollable.cjs.js +1 -1
- package/dist/libs/is/isScrollable.es.js +1 -1
- package/dist/libs/is/isTouchSupport.cjs.js +1 -1
- package/dist/libs/is/isTouchSupport.es.js +1 -1
- package/dist/libs/remove/removeAllHtmlTags.cjs.js +1 -1
- package/dist/libs/remove/removeAllHtmlTags.es.js +1 -1
- package/dist/libs/remove/removeAttribute.cjs.js +1 -1
- package/dist/libs/remove/removeAttribute.es.js +1 -1
- package/dist/libs/remove/removeSessionStorage.cjs.js +1 -1
- package/dist/libs/remove/removeSessionStorage.es.js +1 -1
- package/dist/libs/remove/removeStylePropertyValue.cjs.js +1 -1
- package/dist/libs/remove/removeStylePropertyValue.es.js +1 -1
- package/dist/libs/security/htmlSanitize.cjs.js +18 -0
- package/dist/libs/security/htmlSanitize.d.ts +9 -0
- package/dist/libs/security/htmlSanitize.es.js +18 -0
- package/dist/libs/security/htmlSanitize.test.d.ts +1 -0
- package/dist/libs/security/index.d.ts +4 -0
- package/dist/libs/set/set100vh.cjs.js +1 -1
- package/dist/libs/set/set100vh.es.js +1 -1
- package/dist/libs/set/set100vw.cjs.js +1 -1
- package/dist/libs/set/set100vw.es.js +1 -1
- package/dist/libs/set/setAttribute.cjs.js +1 -1
- package/dist/libs/set/setAttribute.es.js +1 -1
- package/dist/libs/set/setScrollPositionToCenter.cjs.js +1 -1
- package/dist/libs/set/setScrollPositionToCenter.es.js +1 -1
- package/dist/libs/set/setSessionStorage.cjs.js +1 -1
- package/dist/libs/set/setSessionStorage.es.js +1 -1
- package/dist/libs/set/setStylePropertyValue.cjs.js +1 -1
- package/dist/libs/set/setStylePropertyValue.es.js +1 -1
- package/dist/libs/to/toBoolean.cjs.js +1 -1
- package/dist/libs/to/toBoolean.es.js +1 -1
- package/dist/libs/to/toPositiveNumber.cjs.js +1 -1
- package/dist/libs/to/toPositiveNumber.es.js +1 -1
- package/dist/libs/transform/wrapTextWithSpans.cjs.js +1 -1
- package/dist/libs/transform/wrapTextWithSpans.es.js +1 -1
- package/dist/libs/wait/sleep.cjs.js +1 -1
- package/dist/libs/wait/sleep.es.js +1 -1
- package/dist/libs/wait/waitForAllMediaLoaded.cjs.js +1 -1
- package/dist/libs/wait/waitForAllMediaLoaded.es.js +1 -1
- package/dist/node_modules/dayjs/plugin/isBetween.cjs.js +1 -1
- package/dist/node_modules/dayjs/plugin/isBetween.es.js +1 -1
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -73,6 +73,8 @@ import { foo } from "umaki";
|
|
|
73
73
|
- [Wait](#wait)
|
|
74
74
|
- [sleep](#sleep)
|
|
75
75
|
- [waitForAllMediaLoaded](#waitforallmedialoaded)
|
|
76
|
+
- [Security](#security)
|
|
77
|
+
- [sanitizeHtml](#sanitizehtml)
|
|
76
78
|
|
|
77
79
|
## Control
|
|
78
80
|
|
|
@@ -756,6 +758,35 @@ import { waitForAllMediaLoaded } from "umaki";
|
|
|
756
758
|
|
|
757
759
|
[View file →](src/libs/wait/waitForAllMediaLoaded.ts)
|
|
758
760
|
|
|
761
|
+
## Security
|
|
762
|
+
|
|
763
|
+
### sanitizeHtml
|
|
764
|
+
|
|
765
|
+
A function that sanitizes HTML strings to prevent XSS attacks.
|
|
766
|
+
|
|
767
|
+
```ts
|
|
768
|
+
import { sanitizeHtml } from "umaki";
|
|
769
|
+
|
|
770
|
+
// Basic usage
|
|
771
|
+
const sanitized = sanitizeHtml(
|
|
772
|
+
'<script>alert("xss")</script><p>Hello World</p>'
|
|
773
|
+
);
|
|
774
|
+
console.log(sanitized); // '<p>Hello World</p>'
|
|
775
|
+
|
|
776
|
+
// With custom config
|
|
777
|
+
const config = { ALLOWED_TAGS: ["p"] };
|
|
778
|
+
const sanitizedWithConfig = sanitizeHtml("<p>Hello World</p>", config);
|
|
779
|
+
console.log(sanitizedWithConfig); // '<p>Hello World</p>'
|
|
780
|
+
```
|
|
781
|
+
|
|
782
|
+
This function uses `isomorphic-dompurify` and has the following features:
|
|
783
|
+
|
|
784
|
+
- Removes dangerous HTML tags and attributes by default
|
|
785
|
+
- Allows flexible control through custom configuration
|
|
786
|
+
- Can be used on both server-side and client-side
|
|
787
|
+
|
|
788
|
+
[View file →](src/libs/security/htmlSanitize.ts)
|
|
789
|
+
|
|
759
790
|
## Using for framework and tools
|
|
760
791
|
|
|
761
792
|
Specific usage for frameworks or various tools is described below.
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*!
|
|
3
3
|
* name: umaki
|
|
4
|
-
* version: v0.
|
|
4
|
+
* version: v0.4.1
|
|
5
5
|
* description: A utility that is often used in web production.
|
|
6
6
|
* author: TsubasaHiga
|
|
7
7
|
* homepage: https://github.com/TsubasaHiga/umaki
|
|
@@ -45,6 +45,7 @@ const removeAllHtmlTags = require("./libs/remove/removeAllHtmlTags.cjs.js");
|
|
|
45
45
|
const removeAttribute = require("./libs/remove/removeAttribute.cjs.js");
|
|
46
46
|
const removeSessionStorage = require("./libs/remove/removeSessionStorage.cjs.js");
|
|
47
47
|
const removeStylePropertyValue = require("./libs/remove/removeStylePropertyValue.cjs.js");
|
|
48
|
+
const htmlSanitize = require("./libs/security/htmlSanitize.cjs.js");
|
|
48
49
|
const set100vh = require("./libs/set/set100vh.cjs.js");
|
|
49
50
|
const set100vw = require("./libs/set/set100vw.cjs.js");
|
|
50
51
|
const setAttribute = require("./libs/set/setAttribute.cjs.js");
|
|
@@ -90,6 +91,7 @@ exports.removeAllHtmlTags = removeAllHtmlTags.removeAllHtmlTags;
|
|
|
90
91
|
exports.removeAttribute = removeAttribute.removeAttribute;
|
|
91
92
|
exports.removeSessionStorage = removeSessionStorage.removeSessionStorage;
|
|
92
93
|
exports.removeStylePropertyValue = removeStylePropertyValue.removeStylePropertyValue;
|
|
94
|
+
exports.htmlSanitize = htmlSanitize.htmlSanitize;
|
|
93
95
|
exports.set100vh = set100vh.set100vh;
|
|
94
96
|
exports.set100vw = set100vw.set100vw;
|
|
95
97
|
exports.setAttribute = setAttribute.setAttribute;
|
package/dist/index.d.ts
CHANGED
package/dist/index.es.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* name: umaki
|
|
3
|
-
* version: v0.
|
|
3
|
+
* version: v0.4.1
|
|
4
4
|
* description: A utility that is often used in web production.
|
|
5
5
|
* author: TsubasaHiga
|
|
6
6
|
* homepage: https://github.com/TsubasaHiga/umaki
|
|
@@ -43,6 +43,7 @@ import { removeAllHtmlTags } from "./libs/remove/removeAllHtmlTags.es.js";
|
|
|
43
43
|
import { removeAttribute } from "./libs/remove/removeAttribute.es.js";
|
|
44
44
|
import { removeSessionStorage } from "./libs/remove/removeSessionStorage.es.js";
|
|
45
45
|
import { removeStylePropertyValue } from "./libs/remove/removeStylePropertyValue.es.js";
|
|
46
|
+
import { htmlSanitize } from "./libs/security/htmlSanitize.es.js";
|
|
46
47
|
import { set100vh } from "./libs/set/set100vh.es.js";
|
|
47
48
|
import { set100vw } from "./libs/set/set100vw.es.js";
|
|
48
49
|
import { setAttribute } from "./libs/set/setAttribute.es.js";
|
|
@@ -73,6 +74,7 @@ export {
|
|
|
73
74
|
getStylePropertyValue,
|
|
74
75
|
getStylePropertyValueToNumber,
|
|
75
76
|
getUaData,
|
|
77
|
+
htmlSanitize,
|
|
76
78
|
isBetweenDateTime,
|
|
77
79
|
isExistAllElements,
|
|
78
80
|
isIpad,
|