Skip to content

Commit

Permalink
chore: @urql/next formatting for 4b7011b
Browse files Browse the repository at this point in the history
  • Loading branch information
kitten committed Jan 30, 2024
1 parent 4b7011b commit 30d22e2
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 13 deletions.
4 changes: 3 additions & 1 deletion packages/next-urql/src/DataHydrationContext.ts
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,9 @@ const DataHydrationContext = React.createContext<

function transportDataToJS(data: any) {
const key = 'urql_transport';
return `(window[Symbol.for("${key}")] ??= []).push(${htmlEscapeJsonString(JSON.stringify(data))})`;
return `(window[Symbol.for("${key}")] ??= []).push(${htmlEscapeJsonString(
JSON.stringify(data)
)})`;
}

export const DataHydrationContextProvider = ({
Expand Down
19 changes: 7 additions & 12 deletions packages/next-urql/src/htmlescape.ts
Original file line number Diff line number Diff line change
@@ -1,24 +1,19 @@
// --------------------------------------------------------------------------------
//
// copied from
// https://github.com/vercel/next.js/blob/6bc07792a4462a4bf921a72ab30dc4ab2c4e1bda/packages/next/src/server/htmlescape.ts
// See: https://github.com/vercel/next.js/blob/6bc07792a4462a4bf921a72ab30dc4ab2c4e1bda/packages/next/src/server/htmlescape.ts
// License: https://github.com/vercel/next.js/blob/6bc07792a4462a4bf921a72ab30dc4ab2c4e1bda/packages/next/license.md
//
// --------------------------------------------------------------------------------

// This utility is based on https://github.com/zertosh/htmlescape
// License: https://github.com/zertosh/htmlescape/blob/0527ca7156a524d256101bb310a9f970f63078ad/LICENSE

const ESCAPE_LOOKUP: { [match: string]: string } = {
"&": "\\u0026",
">": "\\u003e",
"<": "\\u003c",
"\u2028": "\\u2028",
"\u2029": "\\u2029",
'&': '\\u0026',
'>': '\\u003e',
'<': '\\u003c',
'\u2028': '\\u2028',
'\u2029': '\\u2029',
};

export const ESCAPE_REGEX = /[&><\u2028\u2029]/g;

export function htmlEscapeJsonString(str: string): string {
return str.replace(ESCAPE_REGEX, (match) => ESCAPE_LOOKUP[match]);
return str.replace(ESCAPE_REGEX, match => ESCAPE_LOOKUP[match]);
}

0 comments on commit 30d22e2

Please sign in to comment.