@anker-in/shopify-next 1.0.8-beta.2 → 1.0.8-beta.3
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/index.d.mts +30 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.js +77 -0
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +68 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +2 -2
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ShopifyProviderProps, RouterAdapter, CookieAdapter } from '@anker-in/shopify-react';
|
|
3
|
+
export * from '@anker-in/shopify-react';
|
|
4
|
+
import { IncomingMessage, ServerResponse } from 'http';
|
|
5
|
+
|
|
6
|
+
interface ShopifyNextProviderProps extends Omit<ShopifyProviderProps, 'routerAdapter' | 'locale'> {
|
|
7
|
+
/**
|
|
8
|
+
* Locale override (optional, will use Next.js router locale by default)
|
|
9
|
+
*/
|
|
10
|
+
locale?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Next.js Shopify Provider
|
|
14
|
+
* Automatically integrates with Next.js router
|
|
15
|
+
*/
|
|
16
|
+
declare function ShopifyNextProvider({ locale: propLocale, children, ...props }: ShopifyNextProviderProps): react_jsx_runtime.JSX.Element;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Next.js router adapter hook
|
|
20
|
+
* Adapts Next.js router to RouterAdapter interface
|
|
21
|
+
*/
|
|
22
|
+
declare function useNextRouterAdapter(): RouterAdapter;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Next.js server-side cookie adapter
|
|
26
|
+
* For use in getServerSideProps, API routes, etc.
|
|
27
|
+
*/
|
|
28
|
+
declare function createNextServerCookieAdapter(req: IncomingMessage, res: ServerResponse): CookieAdapter;
|
|
29
|
+
|
|
30
|
+
export { ShopifyNextProvider, type ShopifyNextProviderProps, createNextServerCookieAdapter, useNextRouterAdapter };
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ShopifyProviderProps, RouterAdapter, CookieAdapter } from '@anker-in/shopify-react';
|
|
3
|
+
export * from '@anker-in/shopify-react';
|
|
4
|
+
import { IncomingMessage, ServerResponse } from 'http';
|
|
5
|
+
|
|
6
|
+
interface ShopifyNextProviderProps extends Omit<ShopifyProviderProps, 'routerAdapter' | 'locale'> {
|
|
7
|
+
/**
|
|
8
|
+
* Locale override (optional, will use Next.js router locale by default)
|
|
9
|
+
*/
|
|
10
|
+
locale?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Next.js Shopify Provider
|
|
14
|
+
* Automatically integrates with Next.js router
|
|
15
|
+
*/
|
|
16
|
+
declare function ShopifyNextProvider({ locale: propLocale, children, ...props }: ShopifyNextProviderProps): react_jsx_runtime.JSX.Element;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Next.js router adapter hook
|
|
20
|
+
* Adapts Next.js router to RouterAdapter interface
|
|
21
|
+
*/
|
|
22
|
+
declare function useNextRouterAdapter(): RouterAdapter;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Next.js server-side cookie adapter
|
|
26
|
+
* For use in getServerSideProps, API routes, etc.
|
|
27
|
+
*/
|
|
28
|
+
declare function createNextServerCookieAdapter(req: IncomingMessage, res: ServerResponse): CookieAdapter;
|
|
29
|
+
|
|
30
|
+
export { ShopifyNextProvider, type ShopifyNextProviderProps, createNextServerCookieAdapter, useNextRouterAdapter };
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var shopifyReact = require('@anker-in/shopify-react');
|
|
4
|
+
var router = require('next/router');
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
|
+
var cookie = require('cookie');
|
|
7
|
+
|
|
8
|
+
// src/provider/provider.tsx
|
|
9
|
+
function useNextRouterAdapter() {
|
|
10
|
+
const router$1 = router.useRouter();
|
|
11
|
+
return {
|
|
12
|
+
locale: router$1.locale || "us",
|
|
13
|
+
locales: router$1.locales,
|
|
14
|
+
pathname: router$1.pathname,
|
|
15
|
+
push: async (url) => {
|
|
16
|
+
await router$1.push(url);
|
|
17
|
+
},
|
|
18
|
+
replace: async (url) => {
|
|
19
|
+
await router$1.replace(url);
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
function ShopifyNextProvider({
|
|
24
|
+
locale: propLocale,
|
|
25
|
+
children,
|
|
26
|
+
...props
|
|
27
|
+
}) {
|
|
28
|
+
const routerAdapter = useNextRouterAdapter();
|
|
29
|
+
const locale = propLocale || routerAdapter.locale;
|
|
30
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
31
|
+
shopifyReact.ShopifyProvider,
|
|
32
|
+
{
|
|
33
|
+
...props,
|
|
34
|
+
locale,
|
|
35
|
+
locales: routerAdapter.locales,
|
|
36
|
+
routerAdapter,
|
|
37
|
+
children
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
function createNextServerCookieAdapter(req, res) {
|
|
42
|
+
return {
|
|
43
|
+
get(key) {
|
|
44
|
+
const cookies = cookie.parse(req.headers.cookie || "");
|
|
45
|
+
return cookies[key];
|
|
46
|
+
},
|
|
47
|
+
set(key, value, options) {
|
|
48
|
+
const cookie$1 = cookie.serialize(key, value, {
|
|
49
|
+
path: options?.path || "/",
|
|
50
|
+
domain: options?.domain,
|
|
51
|
+
expires: options?.expires,
|
|
52
|
+
maxAge: options?.maxAge,
|
|
53
|
+
secure: options?.secure,
|
|
54
|
+
httpOnly: options?.httpOnly,
|
|
55
|
+
sameSite: options?.sameSite
|
|
56
|
+
});
|
|
57
|
+
const existing = res.getHeader("Set-Cookie") || [];
|
|
58
|
+
const cookies = Array.isArray(existing) ? existing : [existing.toString()];
|
|
59
|
+
res.setHeader("Set-Cookie", [...cookies, cookie$1]);
|
|
60
|
+
},
|
|
61
|
+
remove(key) {
|
|
62
|
+
this.set(key, "", { maxAge: -1 });
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
exports.ShopifyNextProvider = ShopifyNextProvider;
|
|
68
|
+
exports.createNextServerCookieAdapter = createNextServerCookieAdapter;
|
|
69
|
+
exports.useNextRouterAdapter = useNextRouterAdapter;
|
|
70
|
+
Object.keys(shopifyReact).forEach(function (k) {
|
|
71
|
+
if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
|
|
72
|
+
enumerable: true,
|
|
73
|
+
get: function () { return shopifyReact[k]; }
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
//# sourceMappingURL=index.js.map
|
|
77
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/adapters/router.ts","../src/provider/provider.tsx","../src/adapters/cookie-server.ts"],"names":["router","useRouter","jsx","ShopifyProvider","parse","cookie","serialize"],"mappings":";;;;;;;;AAOO,SAAS,oBAAA,GAAsC;AACpD,EAAA,MAAMA,WAASC,gBAAA,EAAU;AAEzB,EAAA,OAAO;AAAA,IACL,MAAA,EAAQD,SAAO,MAAA,IAAU,IAAA;AAAA,IACzB,SAASA,QAAA,CAAO,OAAA;AAAA,IAChB,UAAUA,QAAA,CAAO,QAAA;AAAA,IACjB,IAAA,EAAM,OAAO,GAAA,KAAgB;AAAE,MAAA,MAAMA,QAAA,CAAO,KAAK,GAAG,CAAA;AAAA,IAAE,CAAA;AAAA,IACtD,OAAA,EAAS,OAAO,GAAA,KAAgB;AAAE,MAAA,MAAMA,QAAA,CAAO,QAAQ,GAAG,CAAA;AAAA,IAAE;AAAA,GAC9D;AACF;ACDO,SAAS,mBAAA,CAAoB;AAAA,EAClC,MAAA,EAAQ,UAAA;AAAA,EACR,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA6B;AAC3B,EAAA,MAAM,gBAAgB,oBAAA,EAAqB;AAC3C,EAAA,MAAM,MAAA,GAAS,cAAc,aAAA,CAAc,MAAA;AAE3C,EAAA,uBACEE,cAAA;AAAA,IAACC,4BAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,MAAA;AAAA,MACA,SAAS,aAAA,CAAc,OAAA;AAAA,MACvB,aAAA;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ;AC1BO,SAAS,6BAAA,CACd,KACA,GAAA,EACe;AACf,EAAA,OAAO;AAAA,IACL,IAAI,GAAA,EAAiC;AACnC,MAAA,MAAM,OAAA,GAAUC,YAAA,CAAM,GAAA,CAAI,OAAA,CAAQ,UAAU,EAAE,CAAA;AAC9C,MAAA,OAAO,QAAQ,GAAG,CAAA;AAAA,IACpB,CAAA;AAAA,IAEA,GAAA,CAAI,GAAA,EAAa,KAAA,EAAe,OAAA,EAA+B;AAC7D,MAAA,MAAMC,QAAA,GAASC,gBAAA,CAAU,GAAA,EAAK,KAAA,EAAO;AAAA,QACnC,IAAA,EAAM,SAAS,IAAA,IAAQ,GAAA;AAAA,QACvB,QAAQ,OAAA,EAAS,MAAA;AAAA,QACjB,SAAS,OAAA,EAAS,OAAA;AAAA,QAClB,QAAQ,OAAA,EAAS,MAAA;AAAA,QACjB,QAAQ,OAAA,EAAS,MAAA;AAAA,QACjB,UAAU,OAAA,EAAS,QAAA;AAAA,QACnB,UAAU,OAAA,EAAS;AAAA,OACpB,CAAA;AAED,MAAA,MAAM,QAAA,GAAW,GAAA,CAAI,SAAA,CAAU,YAAY,KAAK,EAAC;AACjD,MAAA,MAAM,OAAA,GAAU,MAAM,OAAA,CAAQ,QAAQ,IAClC,QAAA,GACA,CAAC,QAAA,CAAS,QAAA,EAAU,CAAA;AAExB,MAAA,GAAA,CAAI,UAAU,YAAA,EAAc,CAAC,GAAG,OAAA,EAASD,QAAM,CAAC,CAAA;AAAA,IAClD,CAAA;AAAA,IAEA,OAAO,GAAA,EAAmB;AACxB,MAAA,IAAA,CAAK,IAAI,GAAA,EAAK,EAAA,EAAI,EAAE,MAAA,EAAQ,IAAI,CAAA;AAAA,IAClC;AAAA,GACF;AACF","file":"index.js","sourcesContent":["import { useRouter } from 'next/router'\nimport type { RouterAdapter } from '@anker-in/shopify-react'\n\n/**\n * Next.js router adapter hook\n * Adapts Next.js router to RouterAdapter interface\n */\nexport function useNextRouterAdapter(): RouterAdapter {\n const router = useRouter()\n\n return {\n locale: router.locale || 'us',\n locales: router.locales,\n pathname: router.pathname,\n push: async (url: string) => { await router.push(url) },\n replace: async (url: string) => { await router.replace(url) },\n }\n}\n","import React from 'react'\nimport { ShopifyProvider, type ShopifyProviderProps } from '@anker-in/shopify-react'\nimport { useNextRouterAdapter } from '../adapters/router'\n\nexport interface ShopifyNextProviderProps\n extends Omit<ShopifyProviderProps, 'routerAdapter' | 'locale'> {\n /**\n * Locale override (optional, will use Next.js router locale by default)\n */\n locale?: string\n}\n\n/**\n * Next.js Shopify Provider\n * Automatically integrates with Next.js router\n */\nexport function ShopifyNextProvider({\n locale: propLocale,\n children,\n ...props\n}: ShopifyNextProviderProps) {\n const routerAdapter = useNextRouterAdapter()\n const locale = propLocale || routerAdapter.locale\n\n return (\n <ShopifyProvider\n {...props}\n locale={locale}\n locales={routerAdapter.locales}\n routerAdapter={routerAdapter}\n >\n {children}\n </ShopifyProvider>\n )\n}\n","import type { IncomingMessage, ServerResponse } from 'http'\nimport { parse, serialize } from 'cookie'\nimport type { CookieAdapter, CookieOptions } from '@anker-in/shopify-react'\n\n/**\n * Next.js server-side cookie adapter\n * For use in getServerSideProps, API routes, etc.\n */\nexport function createNextServerCookieAdapter(\n req: IncomingMessage,\n res: ServerResponse\n): CookieAdapter {\n return {\n get(key: string): string | undefined {\n const cookies = parse(req.headers.cookie || '')\n return cookies[key]\n },\n\n set(key: string, value: string, options?: CookieOptions): void {\n const cookie = serialize(key, value, {\n path: options?.path || '/',\n domain: options?.domain,\n expires: options?.expires as Date | undefined,\n maxAge: options?.maxAge,\n secure: options?.secure,\n httpOnly: options?.httpOnly,\n sameSite: options?.sameSite,\n })\n\n const existing = res.getHeader('Set-Cookie') || []\n const cookies = Array.isArray(existing)\n ? existing\n : [existing.toString()]\n\n res.setHeader('Set-Cookie', [...cookies, cookie])\n },\n\n remove(key: string): void {\n this.set(key, '', { maxAge: -1 })\n },\n }\n}\n"]}
|
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { ShopifyProvider } from '@anker-in/shopify-react';
|
|
2
|
+
export * from '@anker-in/shopify-react';
|
|
3
|
+
import { useRouter } from 'next/router';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
import { serialize, parse } from 'cookie';
|
|
6
|
+
|
|
7
|
+
// src/provider/provider.tsx
|
|
8
|
+
function useNextRouterAdapter() {
|
|
9
|
+
const router = useRouter();
|
|
10
|
+
return {
|
|
11
|
+
locale: router.locale || "us",
|
|
12
|
+
locales: router.locales,
|
|
13
|
+
pathname: router.pathname,
|
|
14
|
+
push: async (url) => {
|
|
15
|
+
await router.push(url);
|
|
16
|
+
},
|
|
17
|
+
replace: async (url) => {
|
|
18
|
+
await router.replace(url);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function ShopifyNextProvider({
|
|
23
|
+
locale: propLocale,
|
|
24
|
+
children,
|
|
25
|
+
...props
|
|
26
|
+
}) {
|
|
27
|
+
const routerAdapter = useNextRouterAdapter();
|
|
28
|
+
const locale = propLocale || routerAdapter.locale;
|
|
29
|
+
return /* @__PURE__ */ jsx(
|
|
30
|
+
ShopifyProvider,
|
|
31
|
+
{
|
|
32
|
+
...props,
|
|
33
|
+
locale,
|
|
34
|
+
locales: routerAdapter.locales,
|
|
35
|
+
routerAdapter,
|
|
36
|
+
children
|
|
37
|
+
}
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
function createNextServerCookieAdapter(req, res) {
|
|
41
|
+
return {
|
|
42
|
+
get(key) {
|
|
43
|
+
const cookies = parse(req.headers.cookie || "");
|
|
44
|
+
return cookies[key];
|
|
45
|
+
},
|
|
46
|
+
set(key, value, options) {
|
|
47
|
+
const cookie = serialize(key, value, {
|
|
48
|
+
path: options?.path || "/",
|
|
49
|
+
domain: options?.domain,
|
|
50
|
+
expires: options?.expires,
|
|
51
|
+
maxAge: options?.maxAge,
|
|
52
|
+
secure: options?.secure,
|
|
53
|
+
httpOnly: options?.httpOnly,
|
|
54
|
+
sameSite: options?.sameSite
|
|
55
|
+
});
|
|
56
|
+
const existing = res.getHeader("Set-Cookie") || [];
|
|
57
|
+
const cookies = Array.isArray(existing) ? existing : [existing.toString()];
|
|
58
|
+
res.setHeader("Set-Cookie", [...cookies, cookie]);
|
|
59
|
+
},
|
|
60
|
+
remove(key) {
|
|
61
|
+
this.set(key, "", { maxAge: -1 });
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export { ShopifyNextProvider, createNextServerCookieAdapter, useNextRouterAdapter };
|
|
67
|
+
//# sourceMappingURL=index.mjs.map
|
|
68
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/adapters/router.ts","../src/provider/provider.tsx","../src/adapters/cookie-server.ts"],"names":[],"mappings":";;;;;;;AAOO,SAAS,oBAAA,GAAsC;AACpD,EAAA,MAAM,SAAS,SAAA,EAAU;AAEzB,EAAA,OAAO;AAAA,IACL,MAAA,EAAQ,OAAO,MAAA,IAAU,IAAA;AAAA,IACzB,SAAS,MAAA,CAAO,OAAA;AAAA,IAChB,UAAU,MAAA,CAAO,QAAA;AAAA,IACjB,IAAA,EAAM,OAAO,GAAA,KAAgB;AAAE,MAAA,MAAM,MAAA,CAAO,KAAK,GAAG,CAAA;AAAA,IAAE,CAAA;AAAA,IACtD,OAAA,EAAS,OAAO,GAAA,KAAgB;AAAE,MAAA,MAAM,MAAA,CAAO,QAAQ,GAAG,CAAA;AAAA,IAAE;AAAA,GAC9D;AACF;ACDO,SAAS,mBAAA,CAAoB;AAAA,EAClC,MAAA,EAAQ,UAAA;AAAA,EACR,QAAA;AAAA,EACA,GAAG;AACL,CAAA,EAA6B;AAC3B,EAAA,MAAM,gBAAgB,oBAAA,EAAqB;AAC3C,EAAA,MAAM,MAAA,GAAS,cAAc,aAAA,CAAc,MAAA;AAE3C,EAAA,uBACE,GAAA;AAAA,IAAC,eAAA;AAAA,IAAA;AAAA,MACE,GAAG,KAAA;AAAA,MACJ,MAAA;AAAA,MACA,SAAS,aAAA,CAAc,OAAA;AAAA,MACvB,aAAA;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ;AC1BO,SAAS,6BAAA,CACd,KACA,GAAA,EACe;AACf,EAAA,OAAO;AAAA,IACL,IAAI,GAAA,EAAiC;AACnC,MAAA,MAAM,OAAA,GAAU,KAAA,CAAM,GAAA,CAAI,OAAA,CAAQ,UAAU,EAAE,CAAA;AAC9C,MAAA,OAAO,QAAQ,GAAG,CAAA;AAAA,IACpB,CAAA;AAAA,IAEA,GAAA,CAAI,GAAA,EAAa,KAAA,EAAe,OAAA,EAA+B;AAC7D,MAAA,MAAM,MAAA,GAAS,SAAA,CAAU,GAAA,EAAK,KAAA,EAAO;AAAA,QACnC,IAAA,EAAM,SAAS,IAAA,IAAQ,GAAA;AAAA,QACvB,QAAQ,OAAA,EAAS,MAAA;AAAA,QACjB,SAAS,OAAA,EAAS,OAAA;AAAA,QAClB,QAAQ,OAAA,EAAS,MAAA;AAAA,QACjB,QAAQ,OAAA,EAAS,MAAA;AAAA,QACjB,UAAU,OAAA,EAAS,QAAA;AAAA,QACnB,UAAU,OAAA,EAAS;AAAA,OACpB,CAAA;AAED,MAAA,MAAM,QAAA,GAAW,GAAA,CAAI,SAAA,CAAU,YAAY,KAAK,EAAC;AACjD,MAAA,MAAM,OAAA,GAAU,MAAM,OAAA,CAAQ,QAAQ,IAClC,QAAA,GACA,CAAC,QAAA,CAAS,QAAA,EAAU,CAAA;AAExB,MAAA,GAAA,CAAI,UAAU,YAAA,EAAc,CAAC,GAAG,OAAA,EAAS,MAAM,CAAC,CAAA;AAAA,IAClD,CAAA;AAAA,IAEA,OAAO,GAAA,EAAmB;AACxB,MAAA,IAAA,CAAK,IAAI,GAAA,EAAK,EAAA,EAAI,EAAE,MAAA,EAAQ,IAAI,CAAA;AAAA,IAClC;AAAA,GACF;AACF","file":"index.mjs","sourcesContent":["import { useRouter } from 'next/router'\nimport type { RouterAdapter } from '@anker-in/shopify-react'\n\n/**\n * Next.js router adapter hook\n * Adapts Next.js router to RouterAdapter interface\n */\nexport function useNextRouterAdapter(): RouterAdapter {\n const router = useRouter()\n\n return {\n locale: router.locale || 'us',\n locales: router.locales,\n pathname: router.pathname,\n push: async (url: string) => { await router.push(url) },\n replace: async (url: string) => { await router.replace(url) },\n }\n}\n","import React from 'react'\nimport { ShopifyProvider, type ShopifyProviderProps } from '@anker-in/shopify-react'\nimport { useNextRouterAdapter } from '../adapters/router'\n\nexport interface ShopifyNextProviderProps\n extends Omit<ShopifyProviderProps, 'routerAdapter' | 'locale'> {\n /**\n * Locale override (optional, will use Next.js router locale by default)\n */\n locale?: string\n}\n\n/**\n * Next.js Shopify Provider\n * Automatically integrates with Next.js router\n */\nexport function ShopifyNextProvider({\n locale: propLocale,\n children,\n ...props\n}: ShopifyNextProviderProps) {\n const routerAdapter = useNextRouterAdapter()\n const locale = propLocale || routerAdapter.locale\n\n return (\n <ShopifyProvider\n {...props}\n locale={locale}\n locales={routerAdapter.locales}\n routerAdapter={routerAdapter}\n >\n {children}\n </ShopifyProvider>\n )\n}\n","import type { IncomingMessage, ServerResponse } from 'http'\nimport { parse, serialize } from 'cookie'\nimport type { CookieAdapter, CookieOptions } from '@anker-in/shopify-react'\n\n/**\n * Next.js server-side cookie adapter\n * For use in getServerSideProps, API routes, etc.\n */\nexport function createNextServerCookieAdapter(\n req: IncomingMessage,\n res: ServerResponse\n): CookieAdapter {\n return {\n get(key: string): string | undefined {\n const cookies = parse(req.headers.cookie || '')\n return cookies[key]\n },\n\n set(key: string, value: string, options?: CookieOptions): void {\n const cookie = serialize(key, value, {\n path: options?.path || '/',\n domain: options?.domain,\n expires: options?.expires as Date | undefined,\n maxAge: options?.maxAge,\n secure: options?.secure,\n httpOnly: options?.httpOnly,\n sameSite: options?.sameSite,\n })\n\n const existing = res.getHeader('Set-Cookie') || []\n const cookies = Array.isArray(existing)\n ? existing\n : [existing.toString()]\n\n res.setHeader('Set-Cookie', [...cookies, cookie])\n },\n\n remove(key: string): void {\n this.set(key, '', { maxAge: -1 })\n },\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anker-in/shopify-next",
|
|
3
|
-
"version": "1.0.8-beta.
|
|
3
|
+
"version": "1.0.8-beta.3",
|
|
4
4
|
"description": "Next.js adapter for Shopify React SDK",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
],
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"cookie": "^0.6.0",
|
|
21
|
-
"@anker-in/shopify-react": "1.3.0-beta.
|
|
21
|
+
"@anker-in/shopify-react": "1.3.0-beta.3"
|
|
22
22
|
},
|
|
23
23
|
"peerDependencies": {
|
|
24
24
|
"next": ">=14.0.0",
|