Neah/node_modules/cookies-next/lib/client/index.js
2025-04-17 12:39:10 +02:00

116 lines
4.6 KiB
JavaScript

"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.useCookiesNext = exports.useDeleteCookie = exports.useGetCookie = exports.useSetCookie = exports.useHasCookie = exports.useGetCookies = exports.hasCookie = exports.deleteCookie = exports.setCookie = exports.getCookie = exports.getCookies = void 0;
var cookie_1 = require("cookie");
var utils_1 = require("../common/utils");
var react_1 = require("react");
var ensureClientSide = function (options) {
if (!(0, utils_1.isClientSide)(options)) {
throw new Error('You are trying to access cookies on the server side. Please, use the server-side import with `cookies-next/server` instead.');
}
};
var getCookies = function (_options) {
ensureClientSide(_options);
if ((0, utils_1.getRenderPhase)() === 'server') {
return;
}
var cookies = {};
var documentCookies = document.cookie ? document.cookie.split('; ') : [];
for (var i = 0, len = documentCookies.length; i < len; i++) {
var cookieParts = documentCookies[i].split('=');
var cookie = cookieParts.slice(1).join('=');
var name_1 = cookieParts[0];
cookies[name_1] = cookie;
}
return cookies;
};
exports.getCookies = getCookies;
var getCookie = function (key, options) {
ensureClientSide(options);
var _cookies = getCookies(options);
var value = _cookies === null || _cookies === void 0 ? void 0 : _cookies[key];
if (value === undefined)
return undefined;
return (0, utils_1.decode)(value);
};
exports.getCookie = getCookie;
var setCookie = function (key, data, options) {
ensureClientSide(options);
if ((0, utils_1.getRenderPhase)() === 'server') {
return;
}
var _cookieOptions = options || {};
var cookieStr = (0, cookie_1.serialize)(key, (0, utils_1.stringify)(data), __assign({ path: '/' }, _cookieOptions));
document.cookie = cookieStr;
};
exports.setCookie = setCookie;
var deleteCookie = function (key, options) {
ensureClientSide(options);
setCookie(key, '', __assign(__assign({}, options), { maxAge: -1 }));
};
exports.deleteCookie = deleteCookie;
var hasCookie = function (key, options) {
ensureClientSide(options);
if (!key)
return false;
var cookies = getCookies(options);
if (!cookies) {
return false;
}
return Object.prototype.hasOwnProperty.call(cookies, key);
};
exports.hasCookie = hasCookie;
var useWrappedCookieFn = function (cookieFnCb) {
var _a = (0, react_1.useState)(false), isMounted = _a[0], setIsMounted = _a[1];
(0, react_1.useEffect)(function () {
setIsMounted(true);
}, []);
return isMounted ? cookieFnCb : (function () { });
};
var useGetCookies = function () { return useWrappedCookieFn(getCookies); };
exports.useGetCookies = useGetCookies;
var useGetCookie = function () { return useWrappedCookieFn(getCookie); };
exports.useGetCookie = useGetCookie;
var useHasCookie = function () { return useWrappedCookieFn(hasCookie); };
exports.useHasCookie = useHasCookie;
var useSetCookie = function () { return useWrappedCookieFn(setCookie); };
exports.useSetCookie = useSetCookie;
var useDeleteCookie = function () { return useWrappedCookieFn(deleteCookie); };
exports.useDeleteCookie = useDeleteCookie;
var useCookiesNext = function () {
return {
getCookies: useGetCookies(),
getCookie: useGetCookie(),
hasCookie: useHasCookie(),
setCookie: useSetCookie(),
deleteCookie: useDeleteCookie(),
};
};
exports.useCookiesNext = useCookiesNext;
__exportStar(require("../common/types"), exports);