@blockspark/chat-widget 1.0.8 → 1.0.10
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 +117 -123
- package/dist/ChatWidget-DFIQ9wIN.js +2 -0
- package/dist/ChatWidget-DFIQ9wIN.js.map +1 -0
- package/dist/{core/stateManager.esm.js → ChatWidget-DqEGRWH3.mjs} +450 -4
- package/dist/ChatWidget-DqEGRWH3.mjs.map +1 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +1338 -7
- package/dist/index.esm.js.map +1 -1
- package/dist/nuxt.cjs.js +1 -1
- package/dist/nuxt.esm.js +4 -5
- package/dist/nuxt.esm.js.map +1 -1
- package/dist/sanitize-7Fj9oshH.js +3 -0
- package/dist/sanitize-7Fj9oshH.js.map +1 -0
- package/dist/sanitize-BNRb-K3t.mjs +2847 -0
- package/dist/sanitize-BNRb-K3t.mjs.map +1 -0
- package/dist/utils/frameworkDetector.d.ts.map +1 -1
- package/dist/utils/sanitize.d.ts.map +1 -1
- package/dist/vue.cjs.js +1 -1
- package/dist/vue.esm.js +4 -5
- package/dist/vue.esm.js.map +1 -1
- package/package.json +1 -1
- package/dist/_virtual/_plugin-vue_export-helper.cjs.js +0 -2
- package/dist/_virtual/_plugin-vue_export-helper.cjs.js.map +0 -1
- package/dist/_virtual/_plugin-vue_export-helper.esm.js +0 -11
- package/dist/_virtual/_plugin-vue_export-helper.esm.js.map +0 -1
- package/dist/components/ChatWidget.cjs.js +0 -2
- package/dist/components/ChatWidget.cjs.js.map +0 -1
- package/dist/components/ChatWidget.esm.js +0 -1129
- package/dist/components/ChatWidget.esm.js.map +0 -1
- package/dist/components/ChatWidget.vue.cjs.js +0 -2
- package/dist/components/ChatWidget.vue.cjs.js.map +0 -1
- package/dist/components/ChatWidget.vue.cjs2.js +0 -2
- package/dist/components/ChatWidget.vue.cjs2.js.map +0 -1
- package/dist/components/ChatWidget.vue.esm.js +0 -8
- package/dist/components/ChatWidget.vue.esm.js.map +0 -1
- package/dist/components/ChatWidget.vue.esm2.js +0 -374
- package/dist/components/ChatWidget.vue.esm2.js.map +0 -1
- package/dist/composables/useChatWidget.cjs.js +0 -2
- package/dist/composables/useChatWidget.cjs.js.map +0 -1
- package/dist/composables/useChatWidget.esm.js +0 -75
- package/dist/composables/useChatWidget.esm.js.map +0 -1
- package/dist/core/stateManager.cjs.js +0 -2
- package/dist/core/stateManager.cjs.js.map +0 -1
- package/dist/core/stateManager.esm.js.map +0 -1
- package/dist/entry/vanilla.cjs.js +0 -2
- package/dist/entry/vanilla.cjs.js.map +0 -1
- package/dist/entry/vanilla.esm.js +0 -50
- package/dist/entry/vanilla.esm.js.map +0 -1
- package/dist/hooks/useChatMode.cjs.js +0 -2
- package/dist/hooks/useChatMode.cjs.js.map +0 -1
- package/dist/hooks/useChatMode.esm.js +0 -61
- package/dist/hooks/useChatMode.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jws/compact/sign.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/jws/compact/sign.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jws/compact/sign.esm.js +0 -21
- package/dist/node_modules/jose/dist/browser/jws/compact/sign.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jws/flattened/sign.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/jws/flattened/sign.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jws/flattened/sign.esm.js +0 -84
- package/dist/node_modules/jose/dist/browser/jws/flattened/sign.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jwt/produce.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/jwt/produce.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jwt/produce.esm.js +0 -72
- package/dist/node_modules/jose/dist/browser/jwt/produce.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jwt/sign.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/jwt/sign.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/jwt/sign.esm.js +0 -22
- package/dist/node_modules/jose/dist/browser/jwt/sign.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/key/import.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/key/import.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/key/import.esm.js +0 -11
- package/dist/node_modules/jose/dist/browser/key/import.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/buffer_utils.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/buffer_utils.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/buffer_utils.esm.js +0 -18
- package/dist/node_modules/jose/dist/browser/lib/buffer_utils.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/check_key_type.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/check_key_type.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/check_key_type.esm.js +0 -77
- package/dist/node_modules/jose/dist/browser/lib/check_key_type.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/crypto_key.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/crypto_key.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/crypto_key.esm.js +0 -101
- package/dist/node_modules/jose/dist/browser/lib/crypto_key.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/epoch.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/epoch.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/epoch.esm.js +0 -5
- package/dist/node_modules/jose/dist/browser/lib/epoch.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/invalid_key_input.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/invalid_key_input.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/invalid_key_input.esm.js +0 -32
- package/dist/node_modules/jose/dist/browser/lib/invalid_key_input.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/is_disjoint.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/is_disjoint.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/is_disjoint.esm.js +0 -25
- package/dist/node_modules/jose/dist/browser/lib/is_disjoint.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/is_jwk.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/is_jwk.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/is_jwk.esm.js +0 -20
- package/dist/node_modules/jose/dist/browser/lib/is_jwk.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/is_object.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/is_object.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/is_object.esm.js +0 -20
- package/dist/node_modules/jose/dist/browser/lib/is_object.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/secs.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/secs.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/secs.esm.js +0 -59
- package/dist/node_modules/jose/dist/browser/lib/secs.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/validate_crit.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/lib/validate_crit.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/lib/validate_crit.esm.js +0 -34
- package/dist/node_modules/jose/dist/browser/lib/validate_crit.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/asn1.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/asn1.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/asn1.esm.js +0 -103
- package/dist/node_modules/jose/dist/browser/runtime/asn1.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/base64url.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/base64url.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/base64url.esm.js +0 -43
- package/dist/node_modules/jose/dist/browser/runtime/base64url.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/check_key_length.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/check_key_length.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/check_key_length.esm.js +0 -12
- package/dist/node_modules/jose/dist/browser/runtime/check_key_length.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/get_sign_verify_key.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/get_sign_verify_key.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/get_sign_verify_key.esm.js +0 -25
- package/dist/node_modules/jose/dist/browser/runtime/get_sign_verify_key.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/is_key_like.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/is_key_like.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/is_key_like.esm.js +0 -13
- package/dist/node_modules/jose/dist/browser/runtime/is_key_like.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/jwk_to_key.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/jwk_to_key.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/jwk_to_key.esm.js +0 -107
- package/dist/node_modules/jose/dist/browser/runtime/jwk_to_key.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/normalize_key.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/normalize_key.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/normalize_key.esm.js +0 -71
- package/dist/node_modules/jose/dist/browser/runtime/normalize_key.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/sign.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/sign.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/sign.esm.js +0 -14
- package/dist/node_modules/jose/dist/browser/runtime/sign.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/subtle_dsa.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/subtle_dsa.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/subtle_dsa.esm.js +0 -32
- package/dist/node_modules/jose/dist/browser/runtime/subtle_dsa.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/webcrypto.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/runtime/webcrypto.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/runtime/webcrypto.esm.js +0 -7
- package/dist/node_modules/jose/dist/browser/runtime/webcrypto.esm.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/util/errors.cjs.js +0 -2
- package/dist/node_modules/jose/dist/browser/util/errors.cjs.js.map +0 -1
- package/dist/node_modules/jose/dist/browser/util/errors.esm.js +0 -131
- package/dist/node_modules/jose/dist/browser/util/errors.esm.js.map +0 -1
- package/dist/node_modules/react-dom/client.cjs.js +0 -2
- package/dist/node_modules/react-dom/client.cjs.js.map +0 -1
- package/dist/node_modules/react-dom/client.esm.js +0 -21
- package/dist/node_modules/react-dom/client.esm.js.map +0 -1
- package/dist/services/chatService.cjs.js +0 -2
- package/dist/services/chatService.cjs.js.map +0 -1
- package/dist/services/chatService.esm.js +0 -482
- package/dist/services/chatService.esm.js.map +0 -1
- package/dist/services/dialogflowClient.cjs.js +0 -2
- package/dist/services/dialogflowClient.cjs.js.map +0 -1
- package/dist/services/dialogflowClient.esm.js +0 -282
- package/dist/services/dialogflowClient.esm.js.map +0 -1
- package/dist/services/sessionManager.cjs.js +0 -2
- package/dist/services/sessionManager.cjs.js.map +0 -1
- package/dist/services/sessionManager.esm.js +0 -48
- package/dist/services/sessionManager.esm.js.map +0 -1
- package/dist/utils/frameworkDetector.cjs.js +0 -2
- package/dist/utils/frameworkDetector.cjs.js.map +0 -1
- package/dist/utils/frameworkDetector.esm.js +0 -125
- package/dist/utils/frameworkDetector.esm.js.map +0 -1
- package/dist/utils/sanitize.cjs.js +0 -2
- package/dist/utils/sanitize.cjs.js.map +0 -1
- package/dist/utils/sanitize.esm.js +0 -52
- package/dist/utils/sanitize.esm.js.map +0 -1
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
let DOMPurify;
|
|
2
|
-
function getDOMPurify() {
|
|
3
|
-
if (typeof window !== "undefined") {
|
|
4
|
-
if (!DOMPurify) {
|
|
5
|
-
DOMPurify = require("dompurify");
|
|
6
|
-
}
|
|
7
|
-
return DOMPurify;
|
|
8
|
-
} else {
|
|
9
|
-
if (!DOMPurify) {
|
|
10
|
-
DOMPurify = require("isomorphic-dompurify");
|
|
11
|
-
}
|
|
12
|
-
return DOMPurify;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function sanitizeHtml(html, options) {
|
|
16
|
-
const DOMPurifyInstance = getDOMPurify();
|
|
17
|
-
const defaultOptions = {
|
|
18
|
-
ALLOWED_TAGS: ["a", "b", "strong", "i", "em", "u", "br", "p", "span"],
|
|
19
|
-
ALLOWED_ATTR: ["href", "target", "rel"],
|
|
20
|
-
ALLOW_DATA_ATTR: false
|
|
21
|
-
};
|
|
22
|
-
const config = {
|
|
23
|
-
...defaultOptions,
|
|
24
|
-
...options?.allowedTags && { ALLOWED_TAGS: options.allowedTags },
|
|
25
|
-
...options?.allowedAttributes && {
|
|
26
|
-
ALLOWED_ATTR: Object.keys(options.allowedAttributes).flatMap(
|
|
27
|
-
(key) => options.allowedAttributes[key]
|
|
28
|
-
)
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
return DOMPurifyInstance.sanitize(html, config);
|
|
32
|
-
}
|
|
33
|
-
function linkifyText(text) {
|
|
34
|
-
const urlRegex = /(https?:\/\/[^\s]+)/g;
|
|
35
|
-
const linked = text.replace(
|
|
36
|
-
urlRegex,
|
|
37
|
-
'<a href="$1" target="_blank" rel="noopener noreferrer">$1</a>'
|
|
38
|
-
);
|
|
39
|
-
return sanitizeHtml(linked, {
|
|
40
|
-
allowedTags: ["a"],
|
|
41
|
-
allowedAttributes: { a: ["href", "target", "rel"] }
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
function safeLinkifyText(text) {
|
|
45
|
-
return linkifyText(text);
|
|
46
|
-
}
|
|
47
|
-
export {
|
|
48
|
-
linkifyText,
|
|
49
|
-
safeLinkifyText,
|
|
50
|
-
sanitizeHtml
|
|
51
|
-
};
|
|
52
|
-
//# sourceMappingURL=sanitize.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sanitize.esm.js","sources":["../../src/utils/sanitize.ts"],"sourcesContent":["/**\n * HTML Sanitization Utilities\n * Safe HTML rendering with XSS protection\n */\n\n// Use isomorphic-dompurify for SSR compatibility\nlet DOMPurify: any;\n\n// Lazy load DOMPurify to avoid SSR issues\nfunction getDOMPurify() {\n if (typeof window !== 'undefined') {\n // Browser: use regular DOMPurify\n if (!DOMPurify) {\n DOMPurify = require('dompurify');\n }\n return DOMPurify;\n } else {\n // SSR: use isomorphic-dompurify\n if (!DOMPurify) {\n DOMPurify = require('isomorphic-dompurify');\n }\n return DOMPurify;\n }\n}\n\n/**\n * Sanitize HTML string\n * Removes dangerous scripts while preserving safe HTML\n */\nexport function sanitizeHtml(html: string, options?: {\n allowedTags?: string[];\n allowedAttributes?: Record<string, string[]>;\n}): string {\n const DOMPurifyInstance = getDOMPurify();\n \n const defaultOptions = {\n ALLOWED_TAGS: ['a', 'b', 'strong', 'i', 'em', 'u', 'br', 'p', 'span'],\n ALLOWED_ATTR: ['href', 'target', 'rel'],\n ALLOW_DATA_ATTR: false,\n };\n\n const config: any = {\n ...defaultOptions,\n ...(options?.allowedTags && { ALLOWED_TAGS: options.allowedTags }),\n ...(options?.allowedAttributes && { \n ALLOWED_ATTR: Object.keys(options.allowedAttributes).flatMap(key => \n options.allowedAttributes![key]\n )\n }),\n };\n\n return DOMPurifyInstance.sanitize(html, config);\n}\n\n/**\n * Linkify text (convert URLs to links) with sanitization\n */\nexport function linkifyText(text: string): string {\n // Simple regex to find URLs\n const urlRegex = /(https?:\\/\\/[^\\s]+)/g;\n \n // Replace URLs with anchor tags\n const linked = text.replace(\n urlRegex,\n '<a href=\"$1\" target=\"_blank\" rel=\"noopener noreferrer\">$1</a>'\n );\n\n // Sanitize the result\n return sanitizeHtml(linked, {\n allowedTags: ['a'],\n allowedAttributes: { a: ['href', 'target', 'rel'] },\n });\n}\n\n/**\n * Safe linkify for Vue v-html (alias for linkifyText)\n */\nexport function safeLinkifyText(text: string): string {\n return linkifyText(text);\n}\n\n/**\n * Sanitize plain text (remove all HTML)\n */\nexport function sanitizeText(text: string): string {\n const DOMPurifyInstance = getDOMPurify();\n return DOMPurifyInstance.sanitize(text, { ALLOWED_TAGS: [] });\n}\n"],"names":[],"mappings":"AAMA,IAAI;AAGJ,SAAS,eAAe;AACtB,MAAI,OAAO,WAAW,aAAa;AAEjC,QAAI,CAAC,WAAW;AACd,kBAAY,QAAQ,WAAW;AAAA,IACjC;AACA,WAAO;AAAA,EACT,OAAO;AAEL,QAAI,CAAC,WAAW;AACd,kBAAY,QAAQ,sBAAsB;AAAA,IAC5C;AACA,WAAO;AAAA,EACT;AACF;AAMO,SAAS,aAAa,MAAc,SAGhC;AACT,QAAM,oBAAoB,aAAA;AAE1B,QAAM,iBAAiB;AAAA,IACrB,cAAc,CAAC,KAAK,KAAK,UAAU,KAAK,MAAM,KAAK,MAAM,KAAK,MAAM;AAAA,IACpE,cAAc,CAAC,QAAQ,UAAU,KAAK;AAAA,IACtC,iBAAiB;AAAA,EAAA;AAGnB,QAAM,SAAc;AAAA,IAClB,GAAG;AAAA,IACH,GAAI,SAAS,eAAe,EAAE,cAAc,QAAQ,YAAA;AAAA,IACpD,GAAI,SAAS,qBAAqB;AAAA,MAChC,cAAc,OAAO,KAAK,QAAQ,iBAAiB,EAAE;AAAA,QAAQ,CAAA,QAC3D,QAAQ,kBAAmB,GAAG;AAAA,MAAA;AAAA,IAChC;AAAA,EACF;AAGF,SAAO,kBAAkB,SAAS,MAAM,MAAM;AAChD;AAKO,SAAS,YAAY,MAAsB;AAEhD,QAAM,WAAW;AAGjB,QAAM,SAAS,KAAK;AAAA,IAClB;AAAA,IACA;AAAA,EAAA;AAIF,SAAO,aAAa,QAAQ;AAAA,IAC1B,aAAa,CAAC,GAAG;AAAA,IACjB,mBAAmB,EAAE,GAAG,CAAC,QAAQ,UAAU,KAAK,EAAA;AAAA,EAAE,CACnD;AACH;AAKO,SAAS,gBAAgB,MAAsB;AACpD,SAAO,YAAY,IAAI;AACzB;"}
|