isomorphic-dompurify 2.35.0 → 3.0.0-rc.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 CHANGED
@@ -40,21 +40,24 @@ Please note that DOMPurify library [doesn't follow Semantic Versioning](https://
40
40
 
41
41
  ## Usage
42
42
 
43
- Import:
44
43
  ```javascript
45
44
  import DOMPurify from "isomorphic-dompurify";
46
- ```
47
- _Importing the entire module for the client/browser version is recommended._
48
45
 
49
- Sanitize:
50
- ```javascript
51
46
  const clean = DOMPurify.sanitize(dirtyString);
52
47
  ```
53
- or with [config](https://github.com/cure53/DOMPurify/blob/main/README.md):
48
+
49
+ You can pass [config](https://github.com/cure53/DOMPurify/blob/main/README.md) as a second argument:
54
50
  ```javascript
55
51
  const clean = DOMPurify.sanitize(dirtyString, { USE_PROFILES: { html: true } });
56
52
  ```
57
53
 
54
+ Named imports are also supported:
55
+ ```javascript
56
+ import { sanitize } from "isomorphic-dompurify";
57
+
58
+ const clean = sanitize(dirtyString);
59
+ ```
60
+
58
61
  ## Web Worker Support
59
62
 
60
63
  The `isomorphic-dompurify` library is [compatible with Web Workers](https://github.com/kkomelin/isomorphic-dompurify/pull/242),
@@ -0,0 +1,44 @@
1
+ import * as trusted_types_lib from 'trusted-types/lib';
2
+ import * as dompurify from 'dompurify';
3
+ import dompurify__default from 'dompurify';
4
+ export { default } from 'dompurify';
5
+
6
+ declare const sanitize: {
7
+ (dirty: string | Node, cfg: dompurify.Config & {
8
+ RETURN_TRUSTED_TYPE: true;
9
+ }): trusted_types_lib.TrustedHTML;
10
+ (dirty: Node, cfg: dompurify.Config & {
11
+ IN_PLACE: true;
12
+ }): Node;
13
+ (dirty: string | Node, cfg: dompurify.Config & {
14
+ RETURN_DOM: true;
15
+ }): Node;
16
+ (dirty: string | Node, cfg: dompurify.Config & {
17
+ RETURN_DOM_FRAGMENT: true;
18
+ }): DocumentFragment;
19
+ (dirty: string | Node, cfg?: dompurify.Config): string;
20
+ };
21
+ declare const isSupported: boolean;
22
+ declare const addHook: {
23
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction: dompurify.NodeHook): void;
24
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction: dompurify.ElementHook): void;
25
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction: dompurify.DocumentFragmentHook): void;
26
+ (entryPoint: "uponSanitizeElement", hookFunction: dompurify.UponSanitizeElementHook): void;
27
+ (entryPoint: "uponSanitizeAttribute", hookFunction: dompurify.UponSanitizeAttributeHook): void;
28
+ };
29
+ declare const removeHook: {
30
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction?: dompurify.NodeHook): dompurify.NodeHook | undefined;
31
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction?: dompurify.ElementHook): dompurify.ElementHook | undefined;
32
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction?: dompurify.DocumentFragmentHook): dompurify.DocumentFragmentHook | undefined;
33
+ (entryPoint: "uponSanitizeElement", hookFunction?: dompurify.UponSanitizeElementHook): dompurify.UponSanitizeElementHook | undefined;
34
+ (entryPoint: "uponSanitizeAttribute", hookFunction?: dompurify.UponSanitizeAttributeHook): dompurify.UponSanitizeAttributeHook | undefined;
35
+ };
36
+ declare const removeHooks: (entryPoint: dompurify.HookName) => void;
37
+ declare const removeAllHooks: () => void;
38
+ declare const setConfig: (cfg?: dompurify.Config) => void;
39
+ declare const clearConfig: () => void;
40
+ declare const isValidAttribute: (tag: string, attr: string, value: string) => boolean;
41
+ declare const version: string;
42
+ declare const removed: (dompurify.RemovedElement | dompurify.RemovedAttribute)[];
43
+
44
+ export { addHook, clearConfig, isSupported, isValidAttribute, removeAllHooks, removeHook, removeHooks, removed, sanitize, setConfig, version };
@@ -0,0 +1,44 @@
1
+ import * as trusted_types_lib from 'trusted-types/lib';
2
+ import * as dompurify from 'dompurify';
3
+ import dompurify__default from 'dompurify';
4
+ export { default } from 'dompurify';
5
+
6
+ declare const sanitize: {
7
+ (dirty: string | Node, cfg: dompurify.Config & {
8
+ RETURN_TRUSTED_TYPE: true;
9
+ }): trusted_types_lib.TrustedHTML;
10
+ (dirty: Node, cfg: dompurify.Config & {
11
+ IN_PLACE: true;
12
+ }): Node;
13
+ (dirty: string | Node, cfg: dompurify.Config & {
14
+ RETURN_DOM: true;
15
+ }): Node;
16
+ (dirty: string | Node, cfg: dompurify.Config & {
17
+ RETURN_DOM_FRAGMENT: true;
18
+ }): DocumentFragment;
19
+ (dirty: string | Node, cfg?: dompurify.Config): string;
20
+ };
21
+ declare const isSupported: boolean;
22
+ declare const addHook: {
23
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction: dompurify.NodeHook): void;
24
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction: dompurify.ElementHook): void;
25
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction: dompurify.DocumentFragmentHook): void;
26
+ (entryPoint: "uponSanitizeElement", hookFunction: dompurify.UponSanitizeElementHook): void;
27
+ (entryPoint: "uponSanitizeAttribute", hookFunction: dompurify.UponSanitizeAttributeHook): void;
28
+ };
29
+ declare const removeHook: {
30
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction?: dompurify.NodeHook): dompurify.NodeHook | undefined;
31
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction?: dompurify.ElementHook): dompurify.ElementHook | undefined;
32
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction?: dompurify.DocumentFragmentHook): dompurify.DocumentFragmentHook | undefined;
33
+ (entryPoint: "uponSanitizeElement", hookFunction?: dompurify.UponSanitizeElementHook): dompurify.UponSanitizeElementHook | undefined;
34
+ (entryPoint: "uponSanitizeAttribute", hookFunction?: dompurify.UponSanitizeAttributeHook): dompurify.UponSanitizeAttributeHook | undefined;
35
+ };
36
+ declare const removeHooks: (entryPoint: dompurify.HookName) => void;
37
+ declare const removeAllHooks: () => void;
38
+ declare const setConfig: (cfg?: dompurify.Config) => void;
39
+ declare const clearConfig: () => void;
40
+ declare const isValidAttribute: (tag: string, attr: string, value: string) => boolean;
41
+ declare const version: string;
42
+ declare const removed: (dompurify.RemovedElement | dompurify.RemovedAttribute)[];
43
+
44
+ export { addHook, clearConfig, isSupported, isValidAttribute, removeAllHooks, removeHook, removeHooks, removed, sanitize, setConfig, version };
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/browser.ts
31
+ var browser_exports = {};
32
+ __export(browser_exports, {
33
+ addHook: () => addHook,
34
+ clearConfig: () => clearConfig,
35
+ default: () => browser_default,
36
+ isSupported: () => isSupported,
37
+ isValidAttribute: () => isValidAttribute,
38
+ removeAllHooks: () => removeAllHooks,
39
+ removeHook: () => removeHook,
40
+ removeHooks: () => removeHooks,
41
+ removed: () => removed,
42
+ sanitize: () => sanitize,
43
+ setConfig: () => setConfig,
44
+ version: () => version
45
+ });
46
+ module.exports = __toCommonJS(browser_exports);
47
+ var import_dompurify = __toESM(require("dompurify"));
48
+ var browser_default = import_dompurify.default;
49
+ var sanitize = import_dompurify.default.sanitize.bind(import_dompurify.default);
50
+ var isSupported = import_dompurify.default.isSupported;
51
+ var addHook = import_dompurify.default.addHook.bind(import_dompurify.default);
52
+ var removeHook = import_dompurify.default.removeHook.bind(import_dompurify.default);
53
+ var removeHooks = import_dompurify.default.removeHooks.bind(import_dompurify.default);
54
+ var removeAllHooks = import_dompurify.default.removeAllHooks.bind(import_dompurify.default);
55
+ var setConfig = import_dompurify.default.setConfig.bind(import_dompurify.default);
56
+ var clearConfig = import_dompurify.default.clearConfig.bind(import_dompurify.default);
57
+ var isValidAttribute = import_dompurify.default.isValidAttribute.bind(import_dompurify.default);
58
+ var version = import_dompurify.default.version;
59
+ var removed = import_dompurify.default.removed;
60
+ // Annotate the CommonJS export names for ESM import in node:
61
+ 0 && (module.exports = {
62
+ addHook,
63
+ clearConfig,
64
+ isSupported,
65
+ isValidAttribute,
66
+ removeAllHooks,
67
+ removeHook,
68
+ removeHooks,
69
+ removed,
70
+ sanitize,
71
+ setConfig,
72
+ version
73
+ });
@@ -0,0 +1,28 @@
1
+ // src/browser.ts
2
+ import DOMPurify from "dompurify";
3
+ var browser_default = DOMPurify;
4
+ var sanitize = DOMPurify.sanitize.bind(DOMPurify);
5
+ var isSupported = DOMPurify.isSupported;
6
+ var addHook = DOMPurify.addHook.bind(DOMPurify);
7
+ var removeHook = DOMPurify.removeHook.bind(DOMPurify);
8
+ var removeHooks = DOMPurify.removeHooks.bind(DOMPurify);
9
+ var removeAllHooks = DOMPurify.removeAllHooks.bind(DOMPurify);
10
+ var setConfig = DOMPurify.setConfig.bind(DOMPurify);
11
+ var clearConfig = DOMPurify.clearConfig.bind(DOMPurify);
12
+ var isValidAttribute = DOMPurify.isValidAttribute.bind(DOMPurify);
13
+ var version = DOMPurify.version;
14
+ var removed = DOMPurify.removed;
15
+ export {
16
+ addHook,
17
+ clearConfig,
18
+ browser_default as default,
19
+ isSupported,
20
+ isValidAttribute,
21
+ removeAllHooks,
22
+ removeHook,
23
+ removeHooks,
24
+ removed,
25
+ sanitize,
26
+ setConfig,
27
+ version
28
+ };
@@ -0,0 +1,45 @@
1
+ import * as trusted_types_lib from 'trusted-types/lib';
2
+ import * as dompurify from 'dompurify';
3
+ import { DOMPurify as DOMPurify$1 } from 'dompurify';
4
+
5
+ declare const DOMPurify: DOMPurify$1;
6
+
7
+ declare const sanitize: {
8
+ (dirty: string | Node, cfg: dompurify.Config & {
9
+ RETURN_TRUSTED_TYPE: true;
10
+ }): trusted_types_lib.TrustedHTML;
11
+ (dirty: Node, cfg: dompurify.Config & {
12
+ IN_PLACE: true;
13
+ }): Node;
14
+ (dirty: string | Node, cfg: dompurify.Config & {
15
+ RETURN_DOM: true;
16
+ }): Node;
17
+ (dirty: string | Node, cfg: dompurify.Config & {
18
+ RETURN_DOM_FRAGMENT: true;
19
+ }): DocumentFragment;
20
+ (dirty: string | Node, cfg?: dompurify.Config): string;
21
+ };
22
+ declare const isSupported: boolean;
23
+ declare const addHook: {
24
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction: dompurify.NodeHook): void;
25
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction: dompurify.ElementHook): void;
26
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction: dompurify.DocumentFragmentHook): void;
27
+ (entryPoint: "uponSanitizeElement", hookFunction: dompurify.UponSanitizeElementHook): void;
28
+ (entryPoint: "uponSanitizeAttribute", hookFunction: dompurify.UponSanitizeAttributeHook): void;
29
+ };
30
+ declare const removeHook: {
31
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction?: dompurify.NodeHook): dompurify.NodeHook | undefined;
32
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction?: dompurify.ElementHook): dompurify.ElementHook | undefined;
33
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction?: dompurify.DocumentFragmentHook): dompurify.DocumentFragmentHook | undefined;
34
+ (entryPoint: "uponSanitizeElement", hookFunction?: dompurify.UponSanitizeElementHook): dompurify.UponSanitizeElementHook | undefined;
35
+ (entryPoint: "uponSanitizeAttribute", hookFunction?: dompurify.UponSanitizeAttributeHook): dompurify.UponSanitizeAttributeHook | undefined;
36
+ };
37
+ declare const removeHooks: (entryPoint: dompurify.HookName) => void;
38
+ declare const removeAllHooks: () => void;
39
+ declare const setConfig: (cfg?: dompurify.Config) => void;
40
+ declare const clearConfig: () => void;
41
+ declare const isValidAttribute: (tag: string, attr: string, value: string) => boolean;
42
+ declare const version: string;
43
+ declare const removed: (dompurify.RemovedElement | dompurify.RemovedAttribute)[];
44
+
45
+ export { addHook, clearConfig, DOMPurify as default, isSupported, isValidAttribute, removeAllHooks, removeHook, removeHooks, removed, sanitize, setConfig, version };
@@ -0,0 +1,45 @@
1
+ import * as trusted_types_lib from 'trusted-types/lib';
2
+ import * as dompurify from 'dompurify';
3
+ import { DOMPurify as DOMPurify$1 } from 'dompurify';
4
+
5
+ declare const DOMPurify: DOMPurify$1;
6
+
7
+ declare const sanitize: {
8
+ (dirty: string | Node, cfg: dompurify.Config & {
9
+ RETURN_TRUSTED_TYPE: true;
10
+ }): trusted_types_lib.TrustedHTML;
11
+ (dirty: Node, cfg: dompurify.Config & {
12
+ IN_PLACE: true;
13
+ }): Node;
14
+ (dirty: string | Node, cfg: dompurify.Config & {
15
+ RETURN_DOM: true;
16
+ }): Node;
17
+ (dirty: string | Node, cfg: dompurify.Config & {
18
+ RETURN_DOM_FRAGMENT: true;
19
+ }): DocumentFragment;
20
+ (dirty: string | Node, cfg?: dompurify.Config): string;
21
+ };
22
+ declare const isSupported: boolean;
23
+ declare const addHook: {
24
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction: dompurify.NodeHook): void;
25
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction: dompurify.ElementHook): void;
26
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction: dompurify.DocumentFragmentHook): void;
27
+ (entryPoint: "uponSanitizeElement", hookFunction: dompurify.UponSanitizeElementHook): void;
28
+ (entryPoint: "uponSanitizeAttribute", hookFunction: dompurify.UponSanitizeAttributeHook): void;
29
+ };
30
+ declare const removeHook: {
31
+ (entryPoint: "beforeSanitizeElements" | "afterSanitizeElements" | "uponSanitizeShadowNode", hookFunction?: dompurify.NodeHook): dompurify.NodeHook | undefined;
32
+ (entryPoint: "beforeSanitizeAttributes" | "afterSanitizeAttributes", hookFunction?: dompurify.ElementHook): dompurify.ElementHook | undefined;
33
+ (entryPoint: "beforeSanitizeShadowDOM" | "afterSanitizeShadowDOM", hookFunction?: dompurify.DocumentFragmentHook): dompurify.DocumentFragmentHook | undefined;
34
+ (entryPoint: "uponSanitizeElement", hookFunction?: dompurify.UponSanitizeElementHook): dompurify.UponSanitizeElementHook | undefined;
35
+ (entryPoint: "uponSanitizeAttribute", hookFunction?: dompurify.UponSanitizeAttributeHook): dompurify.UponSanitizeAttributeHook | undefined;
36
+ };
37
+ declare const removeHooks: (entryPoint: dompurify.HookName) => void;
38
+ declare const removeAllHooks: () => void;
39
+ declare const setConfig: (cfg?: dompurify.Config) => void;
40
+ declare const clearConfig: () => void;
41
+ declare const isValidAttribute: (tag: string, attr: string, value: string) => boolean;
42
+ declare const version: string;
43
+ declare const removed: (dompurify.RemovedElement | dompurify.RemovedAttribute)[];
44
+
45
+ export { addHook, clearConfig, DOMPurify as default, isSupported, isValidAttribute, removeAllHooks, removeHook, removeHooks, removed, sanitize, setConfig, version };
package/dist/index.js ADDED
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+
30
+ // src/index.ts
31
+ var src_exports = {};
32
+ __export(src_exports, {
33
+ addHook: () => addHook,
34
+ clearConfig: () => clearConfig,
35
+ default: () => src_default,
36
+ isSupported: () => isSupported,
37
+ isValidAttribute: () => isValidAttribute,
38
+ removeAllHooks: () => removeAllHooks,
39
+ removeHook: () => removeHook,
40
+ removeHooks: () => removeHooks,
41
+ removed: () => removed,
42
+ sanitize: () => sanitize,
43
+ setConfig: () => setConfig,
44
+ version: () => version
45
+ });
46
+ module.exports = __toCommonJS(src_exports);
47
+ var import_dompurify = __toESM(require("dompurify"));
48
+ var import_jsdom = require("jsdom");
49
+ var { window } = new import_jsdom.JSDOM("<!DOCTYPE html>");
50
+ var DOMPurify = (0, import_dompurify.default)(window);
51
+ var src_default = DOMPurify;
52
+ var sanitize = DOMPurify.sanitize.bind(DOMPurify);
53
+ var isSupported = DOMPurify.isSupported;
54
+ var addHook = DOMPurify.addHook.bind(DOMPurify);
55
+ var removeHook = DOMPurify.removeHook.bind(DOMPurify);
56
+ var removeHooks = DOMPurify.removeHooks.bind(DOMPurify);
57
+ var removeAllHooks = DOMPurify.removeAllHooks.bind(DOMPurify);
58
+ var setConfig = DOMPurify.setConfig.bind(DOMPurify);
59
+ var clearConfig = DOMPurify.clearConfig.bind(DOMPurify);
60
+ var isValidAttribute = DOMPurify.isValidAttribute.bind(DOMPurify);
61
+ var version = DOMPurify.version;
62
+ var removed = DOMPurify.removed;
63
+ // Annotate the CommonJS export names for ESM import in node:
64
+ 0 && (module.exports = {
65
+ addHook,
66
+ clearConfig,
67
+ isSupported,
68
+ isValidAttribute,
69
+ removeAllHooks,
70
+ removeHook,
71
+ removeHooks,
72
+ removed,
73
+ sanitize,
74
+ setConfig,
75
+ version
76
+ });
package/dist/index.mjs ADDED
@@ -0,0 +1,31 @@
1
+ // src/index.ts
2
+ import DOMPurifyFactory from "dompurify";
3
+ import { JSDOM } from "jsdom";
4
+ var { window } = new JSDOM("<!DOCTYPE html>");
5
+ var DOMPurify = DOMPurifyFactory(window);
6
+ var src_default = DOMPurify;
7
+ var sanitize = DOMPurify.sanitize.bind(DOMPurify);
8
+ var isSupported = DOMPurify.isSupported;
9
+ var addHook = DOMPurify.addHook.bind(DOMPurify);
10
+ var removeHook = DOMPurify.removeHook.bind(DOMPurify);
11
+ var removeHooks = DOMPurify.removeHooks.bind(DOMPurify);
12
+ var removeAllHooks = DOMPurify.removeAllHooks.bind(DOMPurify);
13
+ var setConfig = DOMPurify.setConfig.bind(DOMPurify);
14
+ var clearConfig = DOMPurify.clearConfig.bind(DOMPurify);
15
+ var isValidAttribute = DOMPurify.isValidAttribute.bind(DOMPurify);
16
+ var version = DOMPurify.version;
17
+ var removed = DOMPurify.removed;
18
+ export {
19
+ addHook,
20
+ clearConfig,
21
+ src_default as default,
22
+ isSupported,
23
+ isValidAttribute,
24
+ removeAllHooks,
25
+ removeHook,
26
+ removeHooks,
27
+ removed,
28
+ sanitize,
29
+ setConfig,
30
+ version
31
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isomorphic-dompurify",
3
- "version": "2.35.0",
3
+ "version": "3.0.0-rc.1",
4
4
  "description": "Makes it possible to use DOMPurify on server and client in the same way.",
5
5
  "keywords": [
6
6
  "security",
@@ -16,44 +16,62 @@
16
16
  "sanitize-html",
17
17
  "sanitizer"
18
18
  ],
19
+ "scripts": {
20
+ "build": "tsup",
21
+ "test": "vitest run"
22
+ },
19
23
  "bugs": {
20
24
  "url": "https://github.com/kkomelin/isomorphic-dompurify/issues"
21
25
  },
22
26
  "files": [
23
- "index.js",
24
- "index.d.ts",
25
- "browser.js"
27
+ "dist"
26
28
  ],
27
29
  "license": "MIT",
28
30
  "repository": "kkomelin/isomorphic-dompurify",
29
- "browser": "browser.js",
30
- "main": "index.js",
31
- "types": "index.d.ts",
31
+ "main": "./dist/index.js",
32
+ "module": "./dist/index.mjs",
33
+ "types": "./dist/index.d.ts",
34
+ "browser": {
35
+ "./dist/index.js": "./dist/browser.js",
36
+ "./dist/index.mjs": "./dist/browser.mjs"
37
+ },
32
38
  "exports": {
33
- "node": {
34
- "types": "./index.d.ts",
35
- "import": "./index.js",
36
- "require": "./index.js"
37
- },
38
- "default": {
39
- "types": "./index.d.ts",
40
- "import": "./browser.js",
41
- "require": "./browser.js"
39
+ ".": {
40
+ "node": {
41
+ "import": {
42
+ "types": "./dist/index.d.mts",
43
+ "default": "./dist/index.mjs"
44
+ },
45
+ "require": {
46
+ "types": "./dist/index.d.ts",
47
+ "default": "./dist/index.js"
48
+ }
49
+ },
50
+ "default": {
51
+ "import": {
52
+ "types": "./dist/browser.d.mts",
53
+ "default": "./dist/browser.mjs"
54
+ },
55
+ "require": {
56
+ "types": "./dist/browser.d.ts",
57
+ "default": "./dist/browser.js"
58
+ }
59
+ }
42
60
  }
43
61
  },
44
62
  "dependencies": {
45
63
  "dompurify": "^3.3.1",
46
- "jsdom": "^27.4.0"
64
+ "jsdom": "^28.0.0"
47
65
  },
48
66
  "devDependencies": {
49
- "terser": "^5.44.1",
67
+ "@types/jsdom": "^27.0.0",
68
+ "@types/trusted-types": "^2.0.7",
69
+ "tsup": "^8.5.1",
70
+ "typescript": "^5.9.3",
50
71
  "vitest": "^4.0.16"
51
72
  },
73
+ "packageManager": "pnpm@10.28.2",
52
74
  "engines": {
53
- "node": ">=20.19.5"
54
- },
55
- "scripts": {
56
- "test": "vitest run",
57
- "build": "terser src/index.js --compress --mangle --module -o index.js"
75
+ "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
58
76
  }
59
- }
77
+ }
package/browser.js DELETED
@@ -1 +0,0 @@
1
- module.exports = self.DOMPurify || (self.DOMPurify = require('dompurify').default || require('dompurify'));
package/index.d.ts DELETED
@@ -1,2 +0,0 @@
1
- import * as DOMPurify from 'dompurify';
2
- export = DOMPurify
package/index.js DELETED
@@ -1 +0,0 @@
1
- function e(e){return e&&e.default||e}module.exports=global.DOMPurify=global.DOMPurify||("undefined"!=typeof window?e(require("dompurify")):function(){const r=e(require("dompurify")),{JSDOM:u}=e(require("jsdom")),{window:o}=new u("<!DOCTYPE html>");return r(o)}());