ablok-components 0.2.49 → 0.2.51

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.
@@ -93,6 +93,10 @@ declare const __VLS_component: import('../../../../vue/dist/vue.esm-bundler.js')
93
93
  type: BooleanConstructor;
94
94
  default: boolean;
95
95
  };
96
+ sanitize: {
97
+ type: BooleanConstructor;
98
+ default: boolean;
99
+ };
96
100
  }>, {}, {}, {}, {}, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, {
97
101
  "update:modelValue": (...args: any[]) => void;
98
102
  "update:valid": (...args: any[]) => void;
@@ -174,6 +178,10 @@ declare const __VLS_component: import('../../../../vue/dist/vue.esm-bundler.js')
174
178
  type: BooleanConstructor;
175
179
  default: boolean;
176
180
  };
181
+ sanitize: {
182
+ type: BooleanConstructor;
183
+ default: boolean;
184
+ };
177
185
  }>> & Readonly<{
178
186
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
179
187
  "onUpdate:valid"?: ((...args: any[]) => any) | undefined;
@@ -195,6 +203,7 @@ declare const __VLS_component: import('../../../../vue/dist/vue.esm-bundler.js')
195
203
  autocomplete: string;
196
204
  validate: boolean;
197
205
  valid: boolean;
206
+ sanitize: boolean;
198
207
  }, {}, {}, {}, string, import('../../../../vue/dist/vue.esm-bundler.js').ComponentProvideOptions, true, {
199
208
  input: HTMLInputElement;
200
209
  }, HTMLDivElement>;
@@ -4,5 +4,20 @@ type __VLS_Props = {
4
4
  text?: string;
5
5
  className?: string;
6
6
  };
7
- declare const _default: import('../../../../vue/dist/vue.esm-bundler.js').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, {}, string, import('../../../../vue/dist/vue.esm-bundler.js').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('../../../../vue/dist/vue.esm-bundler.js').ComponentProvideOptions, false, {}, HTMLParagraphElement>;
7
+ declare function __VLS_template(): {
8
+ attrs: Partial<{}>;
9
+ slots: {
10
+ default?(_: {}): any;
11
+ };
12
+ refs: {};
13
+ rootEl: any;
14
+ };
15
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
16
+ declare const __VLS_component: import('../../../../vue/dist/vue.esm-bundler.js').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, {}, string, import('../../../../vue/dist/vue.esm-bundler.js').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('../../../../vue/dist/vue.esm-bundler.js').ComponentProvideOptions, false, {}, any>;
17
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
8
18
  export default _default;
19
+ type __VLS_WithTemplateSlots<T, S> = T & {
20
+ new (): {
21
+ $slots: S;
22
+ };
23
+ };
@@ -61,6 +61,10 @@ declare const __VLS_component: import('../../../../vue/dist/vue.esm-bundler.js')
61
61
  type: BooleanConstructor;
62
62
  default: boolean;
63
63
  };
64
+ sanitize: {
65
+ type: BooleanConstructor;
66
+ default: boolean;
67
+ };
64
68
  }>, {}, {}, {}, {}, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, import('../../../../vue/dist/vue.esm-bundler.js').ComponentOptionsMixin, {
65
69
  "update:modelValue": (...args: any[]) => void;
66
70
  }, string, import('../../../../vue/dist/vue.esm-bundler.js').PublicProps, Readonly<import('../../../../vue/dist/vue.esm-bundler.js').ExtractPropTypes<{
@@ -115,6 +119,10 @@ declare const __VLS_component: import('../../../../vue/dist/vue.esm-bundler.js')
115
119
  type: BooleanConstructor;
116
120
  default: boolean;
117
121
  };
122
+ sanitize: {
123
+ type: BooleanConstructor;
124
+ default: boolean;
125
+ };
118
126
  }>> & Readonly<{
119
127
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
120
128
  }>, {
@@ -129,6 +137,7 @@ declare const __VLS_component: import('../../../../vue/dist/vue.esm-bundler.js')
129
137
  name: string;
130
138
  placeholder: string;
131
139
  readOnly: boolean;
140
+ sanitize: boolean;
132
141
  checked: boolean;
133
142
  }, {}, {}, {}, string, import('../../../../vue/dist/vue.esm-bundler.js').ComponentProvideOptions, true, {}, HTMLDivElement>;
134
143
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
@@ -70,8 +70,11 @@ declare const _default: __VLS_WithTemplateSlots<import('../../../../vue/dist/vue
70
70
  }, {}, {}, {}, string, import('../../../../vue/dist/vue.esm-bundler.js').ComponentProvideOptions, true, {}, HTMLDivElement>, {
71
71
  item?(_: {
72
72
  item: {
73
- [key: string]: any;
73
+ content: string;
74
74
  id: string;
75
+ closeTimeout?: number;
76
+ title?: string;
77
+ visible?: boolean;
75
78
  };
76
79
  }): any;
77
80
  }>;
@@ -0,0 +1,10 @@
1
+ import { ComputedRef } from '../../vue/dist/vue.esm-bundler.js';
2
+ /**
3
+ * Composable for sanitizing HTML content using DOMPurify
4
+ * Safe for use with v-html directive
5
+ */
6
+ export declare function useSanitize(html: string | ComputedRef<string> | (() => string)): ComputedRef<string>;
7
+ /**
8
+ * Direct sanitization function for simple use cases
9
+ */
10
+ export declare function sanitizeHtml(html: string): string;
@@ -1 +1,8 @@
1
1
  export declare function uniqueId(): string;
2
+ /**
3
+ * Simple input sanitizer for user input
4
+ * Removes/escapes dangerous patterns while preserving normal text
5
+ * @param input - The user input string to sanitize
6
+ * @returns Sanitized string safe for storage/display
7
+ */
8
+ export declare function sanitizeInput(input: string): string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ablok-components",
3
3
  "private": false,
4
- "version": "0.2.49",
4
+ "version": "0.2.51",
5
5
  "scripts": {
6
6
  "dev": "vite --host",
7
7
  "build": "vue-tsc --noEmit && vite build",
@@ -15,44 +15,45 @@
15
15
  "test:headed": "playwright test --headed"
16
16
  },
17
17
  "dependencies": {
18
- "@oddbird/css-anchor-positioning": "^0.6.1",
19
- "@popperjs/core": "^2.11.6",
20
- "@tiptap/extension-highlight": "^3.2.0",
21
- "@tiptap/extension-link": "^3.2.0",
22
- "@tiptap/extension-text-align": "^3.2.0",
23
- "@tiptap/pm": "^3.2.0",
24
- "@tiptap/starter-kit": "^3.2.0",
25
- "@tiptap/vue-3": "^3.2.0",
26
- "@vuepic/vue-datepicker": "^11.0.2",
27
- "bootstrap": "^5.2.3",
18
+ "@popperjs/core": "^2.11.8",
19
+ "@tiptap/extension-highlight": "^3.18.0",
20
+ "@tiptap/extension-link": "^3.18.0",
21
+ "@tiptap/extension-text-align": "^3.18.0",
22
+ "@tiptap/pm": "^3.18.0",
23
+ "@tiptap/starter-kit": "^3.18.0",
24
+ "@tiptap/vue-3": "^3.18.0",
25
+ "@types/dompurify": "^3.0.5",
26
+ "@vuepic/vue-datepicker": "^12.1.0",
27
+ "bootstrap": "^5.3.8",
28
28
  "canvas-confetti": "^1.9.4",
29
+ "dompurify": "^3.3.1",
29
30
  "html2canvas": "^1.4.1",
30
- "lodash": "^4.17.21",
31
- "ofetch": "^1.3.3",
31
+ "lodash": "^4.17.23",
32
+ "ofetch": "^1.5.1",
32
33
  "qr-code-styling": "^1.9.2",
33
- "vue-i18n": "^11.1.11"
34
+ "vue-i18n": "^11.2.8"
34
35
  },
35
36
  "peerDependencies": {
36
- "vue": "^3.2.47"
37
+ "vue": "^3.5.27"
37
38
  },
38
39
  "devDependencies": {
39
40
  "@frctl/fractal": "^1.5.15",
40
- "@playwright/experimental-ct-vue": "^1.55.1",
41
- "@playwright/test": "^1.55.1",
41
+ "@playwright/experimental-ct-vue": "^1.58.0",
42
+ "@playwright/test": "^1.58.0",
42
43
  "@types/canvas-confetti": "^1.9.0",
43
- "@types/lodash": "^4.17.20",
44
- "@types/node": "^24.3.0",
45
- "@vitejs/plugin-vue": "^6.0.1",
44
+ "@types/lodash": "^4.17.23",
45
+ "@types/node": "^25.1.0",
46
+ "@vitejs/plugin-vue": "^6.0.3",
46
47
  "fractal-theme-hydrogen": "^1.0.4",
47
- "glob": "^11.0.3",
48
+ "glob": "^13.0.0",
48
49
  "path": "^0.12.7",
49
- "sass": "^1.58.3",
50
- "typescript": "^5.3.3",
51
- "vite": "^7.1.3",
50
+ "sass": "^1.97.3",
51
+ "typescript": "^5.9.3",
52
+ "vite": "^7.3.1",
52
53
  "vite-plugin-devtools-json": "^1.0.0",
53
54
  "vite-plugin-dts": "^4.5.4",
54
- "vite-plugin-mkcert": "^1.17.1",
55
- "vue-tsc": "^3.0.6"
55
+ "vite-plugin-mkcert": "^1.17.9",
56
+ "vue-tsc": "^3.2.4"
56
57
  },
57
58
  "files": [
58
59
  "dist"