@dargmuesli/nuxt-cookie-control 8.1.3 → 8.2.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/dist/module.json +5 -1
- package/dist/module.mjs +92 -72
- package/dist/runtime/components/CookieIframe.vue +1 -2
- package/dist/runtime/composables.d.ts +1 -1
- package/dist/runtime/constants.d.ts +2 -1
- package/dist/runtime/constants.mjs +1 -0
- package/dist/runtime/locale/ar.d.ts +1 -1
- package/dist/runtime/locale/az.d.ts +1 -1
- package/dist/runtime/locale/be.d.ts +1 -1
- package/dist/runtime/locale/bg.d.ts +1 -1
- package/dist/runtime/locale/ca.d.ts +1 -1
- package/dist/runtime/locale/cs.d.ts +1 -1
- package/dist/runtime/locale/da.d.ts +1 -1
- package/dist/runtime/locale/de.d.ts +1 -1
- package/dist/runtime/locale/en.d.ts +1 -1
- package/dist/runtime/locale/es.d.ts +1 -1
- package/dist/runtime/locale/fi.d.ts +1 -1
- package/dist/runtime/locale/fr.d.ts +1 -1
- package/dist/runtime/locale/hr.d.ts +1 -1
- package/dist/runtime/locale/hu.d.ts +1 -1
- package/dist/runtime/locale/id.d.ts +1 -1
- package/dist/runtime/locale/it.d.ts +1 -1
- package/dist/runtime/locale/ja.d.ts +1 -1
- package/dist/runtime/locale/km.d.ts +1 -1
- package/dist/runtime/locale/ko.d.ts +1 -1
- package/dist/runtime/locale/lt.d.ts +1 -1
- package/dist/runtime/locale/nl.d.ts +1 -1
- package/dist/runtime/locale/no.d.ts +1 -1
- package/dist/runtime/locale/oc.d.ts +1 -1
- package/dist/runtime/locale/pl.d.ts +1 -1
- package/dist/runtime/locale/pt.d.ts +1 -1
- package/dist/runtime/locale/ro.d.ts +1 -1
- package/dist/runtime/locale/rs.d.ts +1 -1
- package/dist/runtime/locale/ru.d.ts +1 -1
- package/dist/runtime/locale/sk.d.ts +1 -1
- package/dist/runtime/locale/sv.d.ts +1 -1
- package/dist/runtime/locale/tr.d.ts +1 -1
- package/dist/runtime/locale/uk.d.ts +1 -1
- package/dist/runtime/locale/zh-CN.d.ts +1 -1
- package/dist/runtime/methods.d.ts +3 -3
- package/dist/runtime/methods.mjs +1 -1
- package/dist/runtime/plugin.d.ts +5 -4
- package/dist/runtime/plugin.mjs +4 -5
- package/dist/runtime/types.d.ts +0 -1
- package/dist/runtime/types.mjs +0 -56
- package/package.json +20 -11
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -1,26 +1,48 @@
|
|
|
1
1
|
import { resolve } from 'node:path';
|
|
2
2
|
import { pathToFileURL } from 'node:url';
|
|
3
|
-
import { createResolver, defineNuxtModule, addPlugin, addImports,
|
|
3
|
+
import { createResolver, defineNuxtModule, addPlugin, addImports, addTypeTemplate, updateTemplates, extendWebpackConfig, extendViteConfig, resolvePath } from '@nuxt/kit';
|
|
4
4
|
|
|
5
|
-
const
|
|
6
|
-
const version = "8.1.3";
|
|
5
|
+
const CONFIG_KEY = "cookieControl";
|
|
7
6
|
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
7
|
+
const execSrcReplacements = (src, replacements) => {
|
|
8
|
+
for (const replacement of replacements) {
|
|
9
|
+
if ((typeof replacement.from === "string" || replacement.from instanceof RegExp) === false) {
|
|
10
|
+
throw new TypeError(
|
|
11
|
+
"[vite-plugin-replace]: The replacement option 'from' is not of type 'string' or 'RegExp'."
|
|
12
|
+
);
|
|
13
|
+
} else if ((typeof replacement.to === "string" || replacement.to instanceof Function) === false) {
|
|
14
|
+
throw new TypeError(
|
|
15
|
+
"[vite-plugin-replace]: The replacement option 'to' is not of type 'string' or 'Function'"
|
|
16
|
+
);
|
|
17
|
+
} else
|
|
18
|
+
src = src.replace(replacement.from, replacement.to);
|
|
19
|
+
}
|
|
20
|
+
return src;
|
|
21
|
+
};
|
|
22
|
+
const replaceCodePlugin = (config) => {
|
|
23
|
+
if (config === void 0) {
|
|
24
|
+
config = {
|
|
25
|
+
replacements: []
|
|
26
|
+
};
|
|
27
|
+
} else if ((typeof config === "object" || config !== null) === false) {
|
|
28
|
+
throw new TypeError(
|
|
29
|
+
"[vite-plugin-replace]: The configuration is not of type 'Object'."
|
|
30
|
+
);
|
|
31
|
+
} else if (Array.isArray(config.replacements) === false) {
|
|
32
|
+
throw new TypeError(
|
|
33
|
+
"[vite-plugin-replace]: The configuration option 'replacement' is not of type 'Array'."
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
return {
|
|
37
|
+
name: "transform-file",
|
|
38
|
+
enforce: "pre",
|
|
39
|
+
transform: function(src) {
|
|
40
|
+
return {
|
|
41
|
+
code: execSrcReplacements(src, config.replacements),
|
|
42
|
+
map: null
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
};
|
|
24
46
|
};
|
|
25
47
|
|
|
26
48
|
const DEFAULTS = {
|
|
@@ -76,57 +98,38 @@ const DEFAULTS = {
|
|
|
76
98
|
isIframeBlocked: false,
|
|
77
99
|
isModalForced: false,
|
|
78
100
|
locales: ["en"],
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const replaceCodePlugin = (config) => {
|
|
98
|
-
if (config === void 0) {
|
|
99
|
-
config = {
|
|
100
|
-
replacements: []
|
|
101
|
-
};
|
|
102
|
-
} else if ((typeof config === "object" || config !== null) === false) {
|
|
103
|
-
throw new TypeError(
|
|
104
|
-
"[vite-plugin-replace]: The configuration is not of type 'Object'."
|
|
105
|
-
);
|
|
106
|
-
} else if (Array.isArray(config.replacements) === false) {
|
|
107
|
-
throw new TypeError(
|
|
108
|
-
"[vite-plugin-replace]: The configuration option 'replacement' is not of type 'Array'."
|
|
109
|
-
);
|
|
110
|
-
}
|
|
111
|
-
return {
|
|
112
|
-
name: "transform-file",
|
|
113
|
-
enforce: "pre",
|
|
114
|
-
transform: function(src) {
|
|
115
|
-
return {
|
|
116
|
-
code: execSrcReplacements(src, config.replacements),
|
|
117
|
-
map: null
|
|
118
|
-
};
|
|
101
|
+
// TODO: use Nuxt module "i18n"
|
|
102
|
+
localeTexts: {
|
|
103
|
+
en: {
|
|
104
|
+
accept: "Accept",
|
|
105
|
+
acceptAll: "Accept all",
|
|
106
|
+
bannerDescription: "We use our own cookies and third-party cookies so that we can display this website correctly and better understand how this website is used, with a view to improving the services we offer. A decision on cookie usage permissions can be changed anytime using the cookie button that will appear after a selection has been made on this banner.",
|
|
107
|
+
bannerTitle: "Cookies",
|
|
108
|
+
close: "Close",
|
|
109
|
+
cookiesFunctional: "Functional cookies",
|
|
110
|
+
cookiesNecessary: "Necessary cookies",
|
|
111
|
+
cookiesOptional: "Optional cookies",
|
|
112
|
+
decline: "Decline",
|
|
113
|
+
declineAll: "Decline all",
|
|
114
|
+
here: "here",
|
|
115
|
+
iframeBlocked: "To see this, please enable functional cookies",
|
|
116
|
+
manageCookies: "Learn more and customize",
|
|
117
|
+
save: "Save",
|
|
118
|
+
settingsUnsaved: "You have unsaved settings"
|
|
119
119
|
}
|
|
120
|
-
}
|
|
120
|
+
}
|
|
121
121
|
};
|
|
122
122
|
|
|
123
|
+
const name = "@dargmuesli/nuxt-cookie-control";
|
|
124
|
+
const version = "8.2.1";
|
|
125
|
+
|
|
123
126
|
const resolver = createResolver(import.meta.url);
|
|
124
127
|
const runtimeDir = resolver.resolve("./runtime");
|
|
125
128
|
const module = defineNuxtModule({
|
|
126
129
|
meta: {
|
|
127
130
|
name,
|
|
128
131
|
version,
|
|
129
|
-
configKey:
|
|
132
|
+
configKey: CONFIG_KEY,
|
|
130
133
|
compatibility: { nuxt: "^3.0.0" }
|
|
131
134
|
},
|
|
132
135
|
defaults: DEFAULTS,
|
|
@@ -141,7 +144,7 @@ const module = defineNuxtModule({
|
|
|
141
144
|
async setup(moduleOptions, nuxt) {
|
|
142
145
|
nuxt.options.alias["#cookie-control/set-vars"] = moduleOptions.isCssPonyfillEnabled ? resolver.resolve(runtimeDir, "set-vars/ponyfill") : resolver.resolve(runtimeDir, "set-vars/native");
|
|
143
146
|
nuxt.options.alias["#cookie-control"] = runtimeDir;
|
|
144
|
-
nuxt.options.build.transpile.push(
|
|
147
|
+
nuxt.options.build.transpile.push("#cookie-control");
|
|
145
148
|
pushCss(moduleOptions, nuxt);
|
|
146
149
|
blockIframes(moduleOptions);
|
|
147
150
|
await loadLocales(moduleOptions);
|
|
@@ -151,16 +154,17 @@ const module = defineNuxtModule({
|
|
|
151
154
|
as: "useCookieControl",
|
|
152
155
|
from: resolver.resolve(runtimeDir, "composables")
|
|
153
156
|
});
|
|
154
|
-
|
|
155
|
-
filename: "cookie-control
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
157
|
+
addTypeTemplate({
|
|
158
|
+
filename: "types/cookie-control.d.ts",
|
|
159
|
+
getContents: getTypeTemplate,
|
|
160
|
+
options: moduleOptions
|
|
161
|
+
});
|
|
162
|
+
nuxt.hook("builder:watch", async (_event, path) => {
|
|
163
|
+
if (path.includes(`${CONFIG_KEY}.cookies`)) {
|
|
164
|
+
updateTemplates({
|
|
165
|
+
filter: (t) => t.filename === "types/cookie-control.d.ts"
|
|
166
|
+
});
|
|
167
|
+
}
|
|
164
168
|
});
|
|
165
169
|
}
|
|
166
170
|
});
|
|
@@ -204,6 +208,22 @@ const blockIframes = (moduleOptions) => {
|
|
|
204
208
|
});
|
|
205
209
|
}
|
|
206
210
|
};
|
|
211
|
+
const getTypeTemplate = (data) => `// Generated by ${name}
|
|
212
|
+
|
|
213
|
+
import type { ModuleOptions } from '#cookie-control/types'
|
|
214
|
+
|
|
215
|
+
export default ${JSON.stringify(data.options, void 0, 2)} as ModuleOptions
|
|
216
|
+
|
|
217
|
+
/**
|
|
218
|
+
* Union of the cookie ids specified in the Nuxt configuration.
|
|
219
|
+
*/
|
|
220
|
+
export type CookieID = ${Object.values([
|
|
221
|
+
...data.options.cookies.necessary,
|
|
222
|
+
...data.options.cookies.optional
|
|
223
|
+
]).map((cookie) => `"${cookie.id}"`).join(" | ") || "never"};
|
|
224
|
+
|
|
225
|
+
export type CookieIDs = Array<CookieID>;
|
|
226
|
+
`;
|
|
207
227
|
const loadLocales = async (moduleOptions) => {
|
|
208
228
|
const locales = moduleOptions.locales;
|
|
209
229
|
moduleOptions.locales = [];
|
|
@@ -21,8 +21,7 @@
|
|
|
21
21
|
<script setup lang="ts">
|
|
22
22
|
import { computed } from 'vue'
|
|
23
23
|
|
|
24
|
-
import type { Cookie } from '
|
|
25
|
-
|
|
24
|
+
import type { Cookie } from '#cookie-control/types'
|
|
26
25
|
import { useNuxtApp, useCookieControl } from '#imports'
|
|
27
26
|
|
|
28
27
|
const { cookiesEnabled, isModalActive, moduleOptions } = useCookieControl()
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { State } from '
|
|
1
|
+
import type { State } from '#cookie-control/types';
|
|
2
2
|
export declare const useCookieControl: () => State;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { Cookie, ModuleOptions, Translatable } from '
|
|
1
|
+
import type { Cookie, ModuleOptions, Translatable } from '#cookie-control/types';
|
|
2
2
|
export declare const getAllCookieIdsString: (moduleOptions: ModuleOptions) => string;
|
|
3
3
|
export declare const getCookieIds: (cookies: Cookie[]) => string[];
|
|
4
4
|
export declare const removeCookie: (name: string) => undefined;
|
|
5
|
-
export declare const resolveTranslatable: (translatable: Translatable, locale?: import("
|
|
6
|
-
export declare const useResolveTranslatable: (locale?: import("
|
|
5
|
+
export declare const resolveTranslatable: (translatable: Translatable, locale?: import("#cookie-control/types").Locale) => string;
|
|
6
|
+
export declare const useResolveTranslatable: (locale?: import("#cookie-control/types").Locale) => (translatable: Translatable) => string;
|
package/dist/runtime/methods.mjs
CHANGED
package/dist/runtime/plugin.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import type { State } from '
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import type { State } from '#cookie-control/types';
|
|
2
|
+
declare const _default: import("nuxt/app").Plugin<{
|
|
3
|
+
cookies: State;
|
|
4
|
+
}> & import("nuxt/app").ObjectPlugin<{
|
|
4
5
|
cookies: State;
|
|
5
6
|
}>;
|
|
6
|
-
export default
|
|
7
|
+
export default _default;
|
package/dist/runtime/plugin.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ref } from "vue";
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
2
|
+
import moduleOptions from "#build/types/cookie-control";
|
|
3
|
+
import { COOKIE_ID_SEPARATOR } from "#cookie-control/constants";
|
|
4
|
+
import { getAllCookieIdsString } from "#cookie-control/methods";
|
|
4
5
|
import { defineNuxtPlugin, useCookie } from "#imports";
|
|
5
|
-
|
|
6
|
-
const plugin = defineNuxtPlugin((_nuxtApp) => {
|
|
6
|
+
export default defineNuxtPlugin((_nuxtApp) => {
|
|
7
7
|
const cookieIsConsentGiven = useCookie(
|
|
8
8
|
moduleOptions.cookieNameIsConsentGiven,
|
|
9
9
|
moduleOptions.cookieOptions
|
|
@@ -42,4 +42,3 @@ const plugin = defineNuxtPlugin((_nuxtApp) => {
|
|
|
42
42
|
}
|
|
43
43
|
};
|
|
44
44
|
});
|
|
45
|
-
export default plugin;
|
package/dist/runtime/types.d.ts
CHANGED
|
@@ -58,7 +58,6 @@ export interface ModuleOptions {
|
|
|
58
58
|
locales: Locale[];
|
|
59
59
|
localeTexts: PartialRecord<Locale, Partial<LocaleStrings>>;
|
|
60
60
|
}
|
|
61
|
-
export declare const DEFAULTS: Required<ModuleOptions>;
|
|
62
61
|
export interface State {
|
|
63
62
|
cookiesEnabled: Ref<Cookie[] | undefined>;
|
|
64
63
|
cookiesEnabledIds: Ref<string[] | undefined>;
|
package/dist/runtime/types.mjs
CHANGED
|
@@ -1,61 +1,5 @@
|
|
|
1
|
-
import en from "./locale/en.mjs";
|
|
2
1
|
export var CookieType = /* @__PURE__ */ ((CookieType2) => {
|
|
3
2
|
CookieType2["NECESSARY"] = "necessary";
|
|
4
3
|
CookieType2["OPTIONAL"] = "optional";
|
|
5
4
|
return CookieType2;
|
|
6
5
|
})(CookieType || {});
|
|
7
|
-
export const DEFAULTS = {
|
|
8
|
-
barPosition: "bottom-full",
|
|
9
|
-
closeModalOnClickOutside: false,
|
|
10
|
-
colors: {
|
|
11
|
-
barBackground: "#000",
|
|
12
|
-
barButtonBackground: "#fff",
|
|
13
|
-
barButtonColor: "#000",
|
|
14
|
-
barButtonHoverBackground: "#333",
|
|
15
|
-
barButtonHoverColor: "#fff",
|
|
16
|
-
barTextColor: "#fff",
|
|
17
|
-
checkboxActiveBackground: "#000",
|
|
18
|
-
checkboxActiveCircleBackground: "#fff",
|
|
19
|
-
checkboxDisabledBackground: "#ddd",
|
|
20
|
-
checkboxDisabledCircleBackground: "#fff",
|
|
21
|
-
checkboxInactiveBackground: "#000",
|
|
22
|
-
checkboxInactiveCircleBackground: "#fff",
|
|
23
|
-
controlButtonBackground: "#fff",
|
|
24
|
-
controlButtonHoverBackground: "#000",
|
|
25
|
-
controlButtonIconColor: "#000",
|
|
26
|
-
controlButtonIconHoverColor: "#fff",
|
|
27
|
-
focusRingColor: "#808080",
|
|
28
|
-
modalBackground: "#fff",
|
|
29
|
-
modalButtonBackground: "#000",
|
|
30
|
-
modalButtonColor: "#fff",
|
|
31
|
-
modalButtonHoverBackground: "#333",
|
|
32
|
-
modalButtonHoverColor: "#fff",
|
|
33
|
-
modalOverlay: "#000",
|
|
34
|
-
modalOverlayOpacity: 0.8,
|
|
35
|
-
modalTextColor: "#000",
|
|
36
|
-
modalUnsavedColor: "#fff"
|
|
37
|
-
},
|
|
38
|
-
cookies: {
|
|
39
|
-
necessary: [],
|
|
40
|
-
optional: []
|
|
41
|
-
},
|
|
42
|
-
cookieExpiryOffsetMs: 1e3 * 60 * 60 * 24 * 365,
|
|
43
|
-
// one year
|
|
44
|
-
cookieNameIsConsentGiven: "ncc_c",
|
|
45
|
-
cookieNameCookiesEnabledIds: "ncc_e",
|
|
46
|
-
cookieOptions: {
|
|
47
|
-
path: "/",
|
|
48
|
-
sameSite: "strict",
|
|
49
|
-
secure: process.env.NODE_ENV === "development" ? void 0 : true
|
|
50
|
-
},
|
|
51
|
-
isAcceptNecessaryButtonEnabled: true,
|
|
52
|
-
isControlButtonEnabled: true,
|
|
53
|
-
isCookieIdVisible: false,
|
|
54
|
-
isCssEnabled: true,
|
|
55
|
-
isCssPonyfillEnabled: false,
|
|
56
|
-
isDashInDescriptionEnabled: true,
|
|
57
|
-
isIframeBlocked: false,
|
|
58
|
-
isModalForced: false,
|
|
59
|
-
locales: ["en"],
|
|
60
|
-
localeTexts: { en }
|
|
61
|
-
};
|
package/package.json
CHANGED
|
@@ -13,20 +13,27 @@
|
|
|
13
13
|
"@commitlint/cli": "19.3.0",
|
|
14
14
|
"@commitlint/config-conventional": "19.2.2",
|
|
15
15
|
"@dargmuesli/nuxt-cookie-control": "link:",
|
|
16
|
-
"@nuxt/eslint-config": "0.3.
|
|
17
|
-
"@nuxt/module-builder": "0.
|
|
16
|
+
"@nuxt/eslint-config": "0.3.10",
|
|
17
|
+
"@nuxt/module-builder": "0.6.0",
|
|
18
18
|
"@nuxt/schema": "3.11.2",
|
|
19
|
-
"
|
|
19
|
+
"@semantic-release/changelog": "6.0.3",
|
|
20
|
+
"@semantic-release/commit-analyzer": "12.0.0",
|
|
21
|
+
"@semantic-release/git": "10.0.1",
|
|
22
|
+
"@semantic-release/github": "10.0.3",
|
|
23
|
+
"@semantic-release/npm": "12.0.0",
|
|
24
|
+
"@semantic-release/release-notes-generator": "13.0.0",
|
|
25
|
+
"eslint": "9.2.0",
|
|
20
26
|
"eslint-config-prettier": "9.1.0",
|
|
21
27
|
"eslint-plugin-prettier": "5.1.3",
|
|
22
28
|
"husky": "9.0.11",
|
|
23
29
|
"lint-staged": "15.2.2",
|
|
24
30
|
"nuxt": "3.11.2",
|
|
25
31
|
"prettier": "3.2.5",
|
|
32
|
+
"semantic-release": "23.0.8",
|
|
26
33
|
"typescript": "5.4.5",
|
|
27
|
-
"vite": "5.2.
|
|
28
|
-
"vue": "3.4.
|
|
29
|
-
"vue-tsc": "2.0.
|
|
34
|
+
"vite": "5.2.11",
|
|
35
|
+
"vue": "3.4.27",
|
|
36
|
+
"vue-tsc": "2.0.16",
|
|
30
37
|
"webpack": "5.91.0"
|
|
31
38
|
},
|
|
32
39
|
"engines": {
|
|
@@ -62,7 +69,7 @@
|
|
|
62
69
|
"Jonas Thelemann"
|
|
63
70
|
],
|
|
64
71
|
"name": "@dargmuesli/nuxt-cookie-control",
|
|
65
|
-
"packageManager": "pnpm@9.0
|
|
72
|
+
"packageManager": "pnpm@9.1.0",
|
|
66
73
|
"publishConfig": {
|
|
67
74
|
"access": "public"
|
|
68
75
|
},
|
|
@@ -73,12 +80,14 @@
|
|
|
73
80
|
"scripts": {
|
|
74
81
|
"build": "nuxt-module-build build",
|
|
75
82
|
"dev": "pnpm --dir playground run dev",
|
|
76
|
-
"lint": "
|
|
77
|
-
"lint:fix": "
|
|
83
|
+
"lint": "pnpm run lint:js && pnpm run lint:ts",
|
|
84
|
+
"lint:fix": "pnpm run lint:js --fix . && pnpm run lint:ts --fix",
|
|
85
|
+
"lint:js": "eslint --cache",
|
|
86
|
+
"lint:ts": "vue-tsc --noEmit",
|
|
78
87
|
"prepack": "pnpm build",
|
|
79
88
|
"prepare": "husky && nuxt-module-build prepare"
|
|
80
89
|
},
|
|
81
90
|
"type": "module",
|
|
82
|
-
"types": "./dist/
|
|
83
|
-
"version": "8.1
|
|
91
|
+
"types": "./dist/types.d.ts",
|
|
92
|
+
"version": "8.2.1"
|
|
84
93
|
}
|