From 2c4ae43e688a9873e86211ea0e7aeb9ba770dd77 Mon Sep 17 00:00:00 2001 From: Minteck Date: Tue, 18 Oct 2022 08:59:09 +0200 Subject: Update --- alarm/node_modules/graphql/jsutils/Path.js.flow | 30 +++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 alarm/node_modules/graphql/jsutils/Path.js.flow (limited to 'alarm/node_modules/graphql/jsutils/Path.js.flow') diff --git a/alarm/node_modules/graphql/jsutils/Path.js.flow b/alarm/node_modules/graphql/jsutils/Path.js.flow new file mode 100644 index 0000000..4b0e23c --- /dev/null +++ b/alarm/node_modules/graphql/jsutils/Path.js.flow @@ -0,0 +1,30 @@ +// @flow strict +export type Path = {| + +prev: Path | void, + +key: string | number, + +typename: string | void, +|}; + +/** + * Given a Path and a key, return a new Path containing the new key. + */ +export function addPath( + prev: $ReadOnly | void, + key: string | number, + typename: string | void, +): Path { + return { prev, key, typename }; +} + +/** + * Given a Path, return an Array of the path keys. + */ +export function pathToArray(path: ?$ReadOnly): Array { + const flattened = []; + let curr = path; + while (curr) { + flattened.push(curr.key); + curr = curr.prev; + } + return flattened.reverse(); +} -- cgit