@sanity/client 6.8.0-pink-lizard.2 → 6.8.0-pink-lizard.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/_chunks/{createEditLink-bPyBa1lS.cjs → createEditLink-0f5ZQ7Jc.cjs} +124 -15
- package/dist/_chunks/createEditLink-0f5ZQ7Jc.cjs.map +1 -0
- package/dist/_chunks/{createEditLink-Ege4X8Rp.js → createEditLink-_oYp8h9J.js} +122 -15
- package/dist/_chunks/createEditLink-_oYp8h9J.js.map +1 -0
- package/dist/_chunks/{nodeMiddleware-BXOJX6rg.js → nodeMiddleware-bM1My_Ph.js} +2 -2
- package/dist/_chunks/{nodeMiddleware-BXOJX6rg.js.map → nodeMiddleware-bM1My_Ph.js.map} +1 -1
- package/dist/_chunks/{nodeMiddleware-rH1LzcAC.cjs → nodeMiddleware-uskcyilj.cjs} +2 -2
- package/dist/_chunks/{nodeMiddleware-rH1LzcAC.cjs.map → nodeMiddleware-uskcyilj.cjs.map} +1 -1
- package/dist/csm.cjs +15 -122
- package/dist/csm.cjs.map +1 -1
- package/dist/csm.js +14 -121
- package/dist/csm.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +2 -2
- package/dist/stega.browser.cjs +32 -13
- package/dist/stega.browser.cjs.map +1 -1
- package/dist/stega.browser.js +32 -13
- package/dist/stega.browser.js.map +1 -1
- package/dist/stega.cjs +2 -2
- package/dist/stega.js +3 -3
- package/package.json +1 -1
- package/src/csm/createEditLink.ts +11 -8
- package/src/csm/jsonpath.test.ts +1 -1
- package/src/csm/paths.test.ts +1 -1
- package/dist/_chunks/createEditLink-Ege4X8Rp.js.map +0 -1
- package/dist/_chunks/createEditLink-bPyBa1lS.cjs.map +0 -1
|
@@ -1,5 +1,123 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
const rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
|
|
4
|
+
const reKeySegment = /_key\s*==\s*['"](.*)['"]/;
|
|
5
|
+
const reIndexTuple = /^\d*:\d*$/;
|
|
6
|
+
function isIndexSegment(segment) {
|
|
7
|
+
return typeof segment === "number" || typeof segment === "string" && /^\[\d+\]$/.test(segment);
|
|
8
|
+
}
|
|
9
|
+
function isKeySegment(segment) {
|
|
10
|
+
if (typeof segment === "string") {
|
|
11
|
+
return reKeySegment.test(segment.trim());
|
|
12
|
+
}
|
|
13
|
+
return typeof segment === "object" && "_key" in segment;
|
|
14
|
+
}
|
|
15
|
+
function isIndexTuple(segment) {
|
|
16
|
+
if (typeof segment === "string" && reIndexTuple.test(segment)) {
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
if (!Array.isArray(segment) || segment.length !== 2) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
const [from, to] = segment;
|
|
23
|
+
return (typeof from === "number" || from === "") && (typeof to === "number" || to === "");
|
|
24
|
+
}
|
|
25
|
+
function get(obj, path, defaultVal) {
|
|
26
|
+
const select = typeof path === "string" ? fromString(path) : path;
|
|
27
|
+
if (!Array.isArray(select)) {
|
|
28
|
+
throw new Error("Path must be an array or a string");
|
|
29
|
+
}
|
|
30
|
+
let acc = obj;
|
|
31
|
+
for (let i = 0; i < select.length; i++) {
|
|
32
|
+
const segment = select[i];
|
|
33
|
+
if (isIndexSegment(segment)) {
|
|
34
|
+
if (!Array.isArray(acc)) {
|
|
35
|
+
return defaultVal;
|
|
36
|
+
}
|
|
37
|
+
acc = acc[segment];
|
|
38
|
+
}
|
|
39
|
+
if (isKeySegment(segment)) {
|
|
40
|
+
if (!Array.isArray(acc)) {
|
|
41
|
+
return defaultVal;
|
|
42
|
+
}
|
|
43
|
+
acc = acc.find(item => item._key === segment._key);
|
|
44
|
+
}
|
|
45
|
+
if (typeof segment === "string") {
|
|
46
|
+
acc = typeof acc === "object" && acc !== null ? acc[segment] : void 0;
|
|
47
|
+
}
|
|
48
|
+
if (typeof acc === "undefined") {
|
|
49
|
+
return defaultVal;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return acc;
|
|
53
|
+
}
|
|
54
|
+
function toString(path) {
|
|
55
|
+
if (!Array.isArray(path)) {
|
|
56
|
+
throw new Error("Path is not an array");
|
|
57
|
+
}
|
|
58
|
+
return path.reduce((target, segment, i) => {
|
|
59
|
+
const segmentType = typeof segment;
|
|
60
|
+
if (segmentType === "number") {
|
|
61
|
+
return "".concat(target, "[").concat(segment, "]");
|
|
62
|
+
}
|
|
63
|
+
if (segmentType === "string") {
|
|
64
|
+
const separator = i === 0 ? "" : ".";
|
|
65
|
+
return "".concat(target).concat(separator).concat(segment);
|
|
66
|
+
}
|
|
67
|
+
if (isKeySegment(segment) && segment._key) {
|
|
68
|
+
return "".concat(target, '[_key=="').concat(segment._key, '"]');
|
|
69
|
+
}
|
|
70
|
+
if (Array.isArray(segment)) {
|
|
71
|
+
const [from, to] = segment;
|
|
72
|
+
return "".concat(target, "[").concat(from, ":").concat(to, "]");
|
|
73
|
+
}
|
|
74
|
+
throw new Error("Unsupported path segment `".concat(JSON.stringify(segment), "`"));
|
|
75
|
+
}, "");
|
|
76
|
+
}
|
|
77
|
+
function fromString(path) {
|
|
78
|
+
if (typeof path !== "string") {
|
|
79
|
+
throw new Error("Path is not a string");
|
|
80
|
+
}
|
|
81
|
+
const segments = path.match(rePropName);
|
|
82
|
+
if (!segments) {
|
|
83
|
+
throw new Error("Invalid path string");
|
|
84
|
+
}
|
|
85
|
+
return segments.map(parsePathSegment);
|
|
86
|
+
}
|
|
87
|
+
function parsePathSegment(segment) {
|
|
88
|
+
if (isIndexSegment(segment)) {
|
|
89
|
+
return parseIndexSegment(segment);
|
|
90
|
+
}
|
|
91
|
+
if (isKeySegment(segment)) {
|
|
92
|
+
return parseKeySegment(segment);
|
|
93
|
+
}
|
|
94
|
+
if (isIndexTuple(segment)) {
|
|
95
|
+
return parseIndexTupleSegment(segment);
|
|
96
|
+
}
|
|
97
|
+
return segment;
|
|
98
|
+
}
|
|
99
|
+
function parseIndexSegment(segment) {
|
|
100
|
+
return Number(segment.replace(/[^\d]/g, ""));
|
|
101
|
+
}
|
|
102
|
+
function parseKeySegment(segment) {
|
|
103
|
+
const segments = segment.match(reKeySegment);
|
|
104
|
+
return {
|
|
105
|
+
_key: segments[1]
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
function parseIndexTupleSegment(segment) {
|
|
109
|
+
const [from, to] = segment.split(":").map(seg => seg === "" ? seg : Number(seg));
|
|
110
|
+
return [from, to];
|
|
111
|
+
}
|
|
112
|
+
var paths = /*#__PURE__*/Object.freeze({
|
|
113
|
+
__proto__: null,
|
|
114
|
+
fromString: fromString,
|
|
115
|
+
get: get,
|
|
116
|
+
isIndexSegment: isIndexSegment,
|
|
117
|
+
isIndexTuple: isIndexTuple,
|
|
118
|
+
isKeySegment: isKeySegment,
|
|
119
|
+
toString: toString
|
|
120
|
+
});
|
|
3
121
|
const ESCAPE = {
|
|
4
122
|
"\f": "\\f",
|
|
5
123
|
"\n": "\\n",
|
|
@@ -158,17 +276,6 @@ function resolvedKeyedSourcePath(options) {
|
|
|
158
276
|
const inferredPathSuffix = inferredPath.length ? jsonPath(inferredPath).slice(1) : "";
|
|
159
277
|
return parseJsonPath(sourceBasePath + inferredPathSuffix);
|
|
160
278
|
}
|
|
161
|
-
function simplifyPath(path) {
|
|
162
|
-
return path.map((segment, index) => {
|
|
163
|
-
if (typeof segment === "number") {
|
|
164
|
-
return "[".concat(segment, "]");
|
|
165
|
-
}
|
|
166
|
-
if (typeof segment === "string") {
|
|
167
|
-
return index === 0 ? segment : ".".concat(segment);
|
|
168
|
-
}
|
|
169
|
-
return '[_key=="'.concat(segment._key, '"]');
|
|
170
|
-
}).join("");
|
|
171
|
-
}
|
|
172
279
|
function createEditLink(options) {
|
|
173
280
|
const {
|
|
174
281
|
studioUrl: resolveStudioUrl,
|
|
@@ -194,11 +301,11 @@ function createEditLink(options) {
|
|
|
194
301
|
const studioUrl = typeof resolveStudioUrl === "function" ? resolveStudioUrl(sourceDoc, parseJsonPath(sourceBasePath)) : resolveStudioUrl;
|
|
195
302
|
if (!studioUrl) return void 0;
|
|
196
303
|
const _studioUrl = studioUrl.replace(/\/$/, "");
|
|
197
|
-
const _path = encodeURIComponent(
|
|
304
|
+
const _path = encodeURIComponent(toString(jsonPathToMappingPath(resolvedKeyedSourcePath({
|
|
198
305
|
keyedResultPath: parseJsonPath(sourceBasePath),
|
|
199
306
|
pathSuffix,
|
|
200
307
|
sourceBasePath
|
|
201
|
-
})));
|
|
308
|
+
}))));
|
|
202
309
|
const {
|
|
203
310
|
_id,
|
|
204
311
|
_type
|
|
@@ -219,11 +326,13 @@ function createEditLink(options) {
|
|
|
219
326
|
return void 0;
|
|
220
327
|
}
|
|
221
328
|
exports.createEditLink = createEditLink;
|
|
329
|
+
exports.get = get;
|
|
222
330
|
exports.getPublishedId = getPublishedId;
|
|
223
331
|
exports.jsonPath = jsonPath;
|
|
224
332
|
exports.parseJsonPath = parseJsonPath;
|
|
333
|
+
exports.paths = paths;
|
|
225
334
|
exports.resolveMapping = resolveMapping;
|
|
226
335
|
exports.resolvedKeyedSourcePath = resolvedKeyedSourcePath;
|
|
227
|
-
exports.
|
|
336
|
+
exports.toString = toString;
|
|
228
337
|
exports.walkMap = walkMap;
|
|
229
|
-
//# sourceMappingURL=createEditLink-
|
|
338
|
+
//# sourceMappingURL=createEditLink-0f5ZQ7Jc.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createEditLink-0f5ZQ7Jc.cjs","sources":["../../src/csm/paths.ts","../../src/csm/jsonpath.ts","../../src/csm/resolveMapping.ts","../../src/csm/isArray.ts","../../src/csm/isRecord.ts","../../src/csm/walkMap.ts","../../src/csm/getPublishedId.ts","../../src/csm/resolvedKeyedSourcePath.ts","../../src/csm/createEditLink.ts"],"sourcesContent":["/** @public */\nexport type KeyedSegment = {_key: string}\n\n/** @public */\nexport type IndexTuple = [number | '', number | '']\n\n/** @public */\nexport type PathSegment = string | number | KeyedSegment | IndexTuple\n\n/** @public */\nexport type Path = PathSegment[]\n\nconst rePropName =\n /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g\nconst reKeySegment = /_key\\s*==\\s*['\"](.*)['\"]/\nconst reIndexTuple = /^\\d*:\\d*$/\n\n/** @internal */\nexport function isIndexSegment(segment: PathSegment): segment is number {\n return typeof segment === 'number' || (typeof segment === 'string' && /^\\[\\d+\\]$/.test(segment))\n}\n\n/** @internal */\nexport function isKeySegment(segment: PathSegment): segment is KeyedSegment {\n if (typeof segment === 'string') {\n return reKeySegment.test(segment.trim())\n }\n\n return typeof segment === 'object' && '_key' in segment\n}\n\n/** @internal */\nexport function isIndexTuple(segment: PathSegment): segment is IndexTuple {\n if (typeof segment === 'string' && reIndexTuple.test(segment)) {\n return true\n }\n\n if (!Array.isArray(segment) || segment.length !== 2) {\n return false\n }\n\n const [from, to] = segment\n return (typeof from === 'number' || from === '') && (typeof to === 'number' || to === '')\n}\n\n/** @internal */\nexport function get<Result = unknown, Fallback = unknown>(\n obj: unknown,\n path: Path | string,\n defaultVal?: Fallback,\n): Result | typeof defaultVal {\n const select = typeof path === 'string' ? fromString(path) : path\n if (!Array.isArray(select)) {\n throw new Error('Path must be an array or a string')\n }\n\n let acc: unknown | undefined = obj\n for (let i = 0; i < select.length; i++) {\n const segment = select[i]\n if (isIndexSegment(segment)) {\n if (!Array.isArray(acc)) {\n return defaultVal\n }\n\n acc = acc[segment]\n }\n\n if (isKeySegment(segment)) {\n if (!Array.isArray(acc)) {\n return defaultVal\n }\n\n acc = acc.find((item) => item._key === segment._key)\n }\n\n if (typeof segment === 'string') {\n acc =\n typeof acc === 'object' && acc !== null\n ? ((acc as Record<string, unknown>)[segment] as Result)\n : undefined\n }\n\n if (typeof acc === 'undefined') {\n return defaultVal\n }\n }\n\n return acc as Result\n}\n\n/** @public */\nexport function toString(path: Path): string {\n if (!Array.isArray(path)) {\n throw new Error('Path is not an array')\n }\n\n return path.reduce<string>((target, segment, i) => {\n const segmentType = typeof segment\n if (segmentType === 'number') {\n return `${target}[${segment}]`\n }\n\n if (segmentType === 'string') {\n const separator = i === 0 ? '' : '.'\n return `${target}${separator}${segment}`\n }\n\n if (isKeySegment(segment) && segment._key) {\n return `${target}[_key==\"${segment._key}\"]`\n }\n\n if (Array.isArray(segment)) {\n const [from, to] = segment\n return `${target}[${from}:${to}]`\n }\n\n throw new Error(`Unsupported path segment \\`${JSON.stringify(segment)}\\``)\n }, '')\n}\n\n/** @public */\nexport function fromString(path: string): Path {\n if (typeof path !== 'string') {\n throw new Error('Path is not a string')\n }\n\n const segments = path.match(rePropName)\n if (!segments) {\n throw new Error('Invalid path string')\n }\n\n return segments.map(parsePathSegment)\n}\n\nfunction parsePathSegment(segment: string): PathSegment {\n if (isIndexSegment(segment)) {\n return parseIndexSegment(segment)\n }\n\n if (isKeySegment(segment)) {\n return parseKeySegment(segment)\n }\n\n if (isIndexTuple(segment)) {\n return parseIndexTupleSegment(segment)\n }\n\n return segment\n}\n\nfunction parseIndexSegment(segment: string): PathSegment {\n return Number(segment.replace(/[^\\d]/g, ''))\n}\n\nfunction parseKeySegment(segment: string): KeyedSegment {\n const segments = segment.match(reKeySegment)\n return {_key: segments![1]}\n}\n\nfunction parseIndexTupleSegment(segment: string): IndexTuple {\n const [from, to] = segment.split(':').map((seg) => (seg === '' ? seg : Number(seg)))\n return [from, to]\n}\n","import type {ContentSourceMapParsedPath, ContentSourceMapPaths, Path} from './types'\n\nconst ESCAPE: Record<string, string> = {\n '\\f': '\\\\f',\n '\\n': '\\\\n',\n '\\r': '\\\\r',\n '\\t': '\\\\t',\n \"'\": \"\\\\'\",\n '\\\\': '\\\\\\\\',\n}\n\nconst UNESCAPE: Record<string, string> = {\n '\\\\f': '\\f',\n '\\\\n': '\\n',\n '\\\\r': '\\r',\n '\\\\t': '\\t',\n \"\\\\'\": \"'\",\n '\\\\\\\\': '\\\\',\n}\n\n/**\n * @internal\n */\nexport function jsonPath(path: ContentSourceMapParsedPath): ContentSourceMapPaths[number] {\n return `$${path\n .map((segment) => {\n if (typeof segment === 'string') {\n const escapedKey = segment.replace(/[\\f\\n\\r\\t'\\\\]/g, (match) => {\n return ESCAPE[match]\n })\n return `['${escapedKey}']`\n }\n\n if (typeof segment === 'number') {\n return `[${segment}]`\n }\n\n if (segment._key !== '') {\n const escapedKey = segment._key.replace(/['\\\\]/g, (match) => {\n return ESCAPE[match]\n })\n return `[?(@._key=='${escapedKey}')]`\n }\n\n return `[${segment._index}]`\n })\n .join('')}`\n}\n\n/**\n * @internal\n */\nexport function parseJsonPath(path: ContentSourceMapPaths[number]): ContentSourceMapParsedPath {\n const parsed: ContentSourceMapParsedPath = []\n\n const parseRe = /\\['(.*?)'\\]|\\[(\\d+)\\]|\\[\\?\\(@\\._key=='(.*?)'\\)\\]/g\n let match: RegExpExecArray | null\n\n while ((match = parseRe.exec(path)) !== null) {\n if (match[1] !== undefined) {\n const key = match[1].replace(/\\\\(\\\\|f|n|r|t|')/g, (m) => {\n return UNESCAPE[m]\n })\n\n parsed.push(key)\n continue\n }\n\n if (match[2] !== undefined) {\n parsed.push(parseInt(match[2], 10))\n continue\n }\n\n if (match[3] !== undefined) {\n const _key = match[3].replace(/\\\\(\\\\')/g, (m) => {\n return UNESCAPE[m]\n })\n\n parsed.push({\n _key,\n _index: -1,\n })\n continue\n }\n }\n\n return parsed\n}\n\n/**\n * @internal\n */\nexport function jsonPathToStudioPath(path: ContentSourceMapParsedPath): Path {\n return path.map((segment) => {\n if (typeof segment === 'string') {\n return segment\n }\n\n if (typeof segment === 'number') {\n return segment\n }\n\n if (segment._key !== '') {\n return {_key: segment._key}\n }\n\n if (segment._index !== -1) {\n return segment._index\n }\n\n throw new Error(`invalid segment:${JSON.stringify(segment)}`)\n })\n}\n\n/**\n * @internal\n */\nexport function jsonPathToMappingPath(path: ContentSourceMapParsedPath): (string | number)[] {\n return path.map((segment) => {\n if (typeof segment === 'string') {\n return segment\n }\n\n if (typeof segment === 'number') {\n return segment\n }\n\n if (segment._index !== -1) {\n return segment._index\n }\n\n throw new Error(`invalid segment:${JSON.stringify(segment)}`)\n })\n}\n","import {jsonPath, jsonPathToMappingPath} from './jsonpath'\nimport type {ContentSourceMap, ContentSourceMapMapping, ContentSourceMapParsedPath} from './types'\n\n/**\n * @internal\n */\nexport function resolveMapping(\n resultPath: ContentSourceMapParsedPath,\n csm?: ContentSourceMap,\n):\n | {\n mapping: ContentSourceMapMapping\n matchedPath: string\n pathSuffix: string\n }\n | undefined {\n if (!csm?.mappings) {\n throw new Error('missing mappings')\n return undefined\n }\n const resultMappingPath = jsonPath(jsonPathToMappingPath(resultPath))\n\n if (csm.mappings[resultMappingPath] !== undefined) {\n return {\n mapping: csm.mappings[resultMappingPath],\n matchedPath: resultMappingPath,\n pathSuffix: '',\n }\n }\n\n const mappings = Object.entries(csm.mappings)\n .filter(([key]) => resultMappingPath.startsWith(key))\n .sort(([key1], [key2]) => key2.length - key1.length)\n\n if (mappings.length == 0) {\n return undefined\n }\n\n const [matchedPath, mapping] = mappings[0]\n const pathSuffix = resultMappingPath.substring(matchedPath.length)\n return {mapping, matchedPath, pathSuffix}\n}\n","/** @internal */\nexport function isArray(value: unknown): value is Array<unknown> {\n return value !== null && Array.isArray(value)\n}\n","/** @internal */\nexport function isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null\n}\n","import {isArray} from './isArray'\nimport {isRecord} from './isRecord'\nimport type {ContentSourceMapParsedPath, WalkMapFn} from './types'\n\n/**\n * generic way to walk a nested object or array and apply a mapping function to each value\n * @internal\n */\nexport function walkMap(\n value: unknown,\n mappingFn: WalkMapFn,\n path: ContentSourceMapParsedPath = [],\n): unknown {\n if (isArray(value)) {\n return value.map((v, idx) => {\n if (isRecord(v)) {\n const _key = v['_key']\n if (typeof _key === 'string') {\n return walkMap(v, mappingFn, path.concat({_key, _index: idx}))\n }\n }\n\n return walkMap(v, mappingFn, path.concat(idx))\n })\n }\n\n if (isRecord(value)) {\n return Object.fromEntries(\n Object.entries(value).map(([k, v]) => [k, walkMap(v, mappingFn, path.concat(k))]),\n )\n }\n\n return mappingFn(value, path)\n}\n","const DRAFTS_PREFIX = 'drafts.'\n\n/** @internal */\nexport function getPublishedId(id: string): string {\n if (id.startsWith(DRAFTS_PREFIX)) {\n return id.slice(DRAFTS_PREFIX.length)\n }\n\n return id\n}\n","import {jsonPath, parseJsonPath} from './jsonpath'\nimport type {ContentSourceMapParsedPath} from './types'\n\n/**\n * @internal\n */\nexport function resolvedKeyedSourcePath(options: {\n keyedResultPath: ContentSourceMapParsedPath\n pathSuffix?: string\n sourceBasePath: string\n}): ContentSourceMapParsedPath {\n const {keyedResultPath, pathSuffix, sourceBasePath} = options\n\n const inferredResultPath = pathSuffix === undefined ? [] : parseJsonPath(pathSuffix)\n\n const inferredPath = keyedResultPath.slice(keyedResultPath.length - inferredResultPath.length)\n\n const inferredPathSuffix = inferredPath.length ? jsonPath(inferredPath).slice(1) : ''\n\n return parseJsonPath(sourceBasePath + inferredPathSuffix)\n}\n","import {getPublishedId} from './getPublishedId'\nimport {jsonPathToMappingPath, parseJsonPath} from './jsonpath'\nimport * as path from './paths'\nimport {resolvedKeyedSourcePath} from './resolvedKeyedSourcePath'\nimport {resolveMapping} from './resolveMapping'\nimport type {CreateEditLinkOptions, EditIntentLink, StudioUrl} from './types'\n\n/** @public */\n// eslint-disable-next-line no-warning-comments\n// @TODO refactor to creating just the link, with a SourcePath already converted to a \"StudioPathLike\" as input\nexport function createEditLink(\n options: CreateEditLinkOptions,\n): `${StudioUrl}${EditIntentLink}` | undefined {\n const {studioUrl: resolveStudioUrl, resultSourceMap: csm, resultPath} = options\n const {mapping, pathSuffix} = resolveMapping(resultPath, csm) || {}\n\n if (!mapping) {\n // console.warn('no mapping for path', { path: resultPath, sourceMap: csm })\n return undefined\n }\n\n if (mapping.source.type === 'literal') {\n return undefined\n }\n\n if (mapping.source.type === 'unknown') {\n return undefined\n }\n\n const sourceDoc = csm.documents[mapping.source.document]\n const sourceBasePath = csm.paths[mapping.source.path]\n\n if (sourceDoc && sourceBasePath) {\n const studioUrl =\n typeof resolveStudioUrl === 'function'\n ? resolveStudioUrl(sourceDoc, parseJsonPath(sourceBasePath))\n : resolveStudioUrl\n if (!studioUrl) return undefined\n const _studioUrl = studioUrl.replace(/\\/$/, '')\n const _path = encodeURIComponent(\n path.toString(\n jsonPathToMappingPath(\n resolvedKeyedSourcePath({\n keyedResultPath: parseJsonPath(sourceBasePath),\n pathSuffix,\n sourceBasePath,\n }),\n ),\n ),\n )\n const {_id, _type} = sourceDoc\n const params = new URLSearchParams()\n if (sourceDoc._projectId) {\n params.set('projectId', sourceDoc._projectId)\n }\n if (sourceDoc._dataset) {\n params.set('dataset', sourceDoc._dataset)\n }\n params.set('id', getPublishedId(sourceDoc._id))\n params.set('type', sourceDoc._type)\n params.set('path', decodeURIComponent(_path))\n params.set('baseUrl', _studioUrl)\n return `${_studioUrl}/intent/edit/id=${getPublishedId(\n _id,\n )};type=${_type};path=${_path}?${params}`\n }\n\n return undefined\n}\n"],"names":["rePropName","reKeySegment","reIndexTuple","isIndexSegment","segment","test","isKeySegment","trim","isIndexTuple","Array","isArray","length","from","to","get","obj","path","defaultVal","select","fromString","Error","acc","i","find","item","_key","toString","reduce","target","segmentType","concat","separator","stringify","segments","match","map","parsePathSegment","parseIndexSegment","parseKeySegment","parseIndexTupleSegment","Number","replace","split","seg","ESCAPE","UNESCAPE","jsonPath","escapedKey","_index","join","parseJsonPath","parsed","parseRe","exec","key","m","push","parseInt","jsonPathToMappingPath","JSON","resolveMapping","resultPath","csm","mappings","resultMappingPath","mapping","matchedPath","pathSuffix","Object","entries","filter","_ref","startsWith","sort","_ref2","_ref3","key1","key2","substring","value","isRecord","walkMap","mappingFn","arguments","undefined","v","idx","fromEntries","_ref4","k","DRAFTS_PREFIX","getPublishedId","id","slice","resolvedKeyedSourcePath","options","keyedResultPath","sourceBasePath","inferredResultPath","inferredPath","inferredPathSuffix","createEditLink","studioUrl","resolveStudioUrl","resultSourceMap","source","type","sourceDoc","documents","document","paths","_studioUrl","_path","encodeURIComponent","path.toString","_id","_type","params","URLSearchParams","_projectId","set","_dataset","decodeURIComponent"],"mappings":"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"}
|
|
@@ -1,3 +1,121 @@
|
|
|
1
|
+
const rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
|
|
2
|
+
const reKeySegment = /_key\s*==\s*['"](.*)['"]/;
|
|
3
|
+
const reIndexTuple = /^\d*:\d*$/;
|
|
4
|
+
function isIndexSegment(segment) {
|
|
5
|
+
return typeof segment === "number" || typeof segment === "string" && /^\[\d+\]$/.test(segment);
|
|
6
|
+
}
|
|
7
|
+
function isKeySegment(segment) {
|
|
8
|
+
if (typeof segment === "string") {
|
|
9
|
+
return reKeySegment.test(segment.trim());
|
|
10
|
+
}
|
|
11
|
+
return typeof segment === "object" && "_key" in segment;
|
|
12
|
+
}
|
|
13
|
+
function isIndexTuple(segment) {
|
|
14
|
+
if (typeof segment === "string" && reIndexTuple.test(segment)) {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
if (!Array.isArray(segment) || segment.length !== 2) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
const [from, to] = segment;
|
|
21
|
+
return (typeof from === "number" || from === "") && (typeof to === "number" || to === "");
|
|
22
|
+
}
|
|
23
|
+
function get(obj, path, defaultVal) {
|
|
24
|
+
const select = typeof path === "string" ? fromString(path) : path;
|
|
25
|
+
if (!Array.isArray(select)) {
|
|
26
|
+
throw new Error("Path must be an array or a string");
|
|
27
|
+
}
|
|
28
|
+
let acc = obj;
|
|
29
|
+
for (let i = 0; i < select.length; i++) {
|
|
30
|
+
const segment = select[i];
|
|
31
|
+
if (isIndexSegment(segment)) {
|
|
32
|
+
if (!Array.isArray(acc)) {
|
|
33
|
+
return defaultVal;
|
|
34
|
+
}
|
|
35
|
+
acc = acc[segment];
|
|
36
|
+
}
|
|
37
|
+
if (isKeySegment(segment)) {
|
|
38
|
+
if (!Array.isArray(acc)) {
|
|
39
|
+
return defaultVal;
|
|
40
|
+
}
|
|
41
|
+
acc = acc.find(item => item._key === segment._key);
|
|
42
|
+
}
|
|
43
|
+
if (typeof segment === "string") {
|
|
44
|
+
acc = typeof acc === "object" && acc !== null ? acc[segment] : void 0;
|
|
45
|
+
}
|
|
46
|
+
if (typeof acc === "undefined") {
|
|
47
|
+
return defaultVal;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return acc;
|
|
51
|
+
}
|
|
52
|
+
function toString(path) {
|
|
53
|
+
if (!Array.isArray(path)) {
|
|
54
|
+
throw new Error("Path is not an array");
|
|
55
|
+
}
|
|
56
|
+
return path.reduce((target, segment, i) => {
|
|
57
|
+
const segmentType = typeof segment;
|
|
58
|
+
if (segmentType === "number") {
|
|
59
|
+
return "".concat(target, "[").concat(segment, "]");
|
|
60
|
+
}
|
|
61
|
+
if (segmentType === "string") {
|
|
62
|
+
const separator = i === 0 ? "" : ".";
|
|
63
|
+
return "".concat(target).concat(separator).concat(segment);
|
|
64
|
+
}
|
|
65
|
+
if (isKeySegment(segment) && segment._key) {
|
|
66
|
+
return "".concat(target, '[_key=="').concat(segment._key, '"]');
|
|
67
|
+
}
|
|
68
|
+
if (Array.isArray(segment)) {
|
|
69
|
+
const [from, to] = segment;
|
|
70
|
+
return "".concat(target, "[").concat(from, ":").concat(to, "]");
|
|
71
|
+
}
|
|
72
|
+
throw new Error("Unsupported path segment `".concat(JSON.stringify(segment), "`"));
|
|
73
|
+
}, "");
|
|
74
|
+
}
|
|
75
|
+
function fromString(path) {
|
|
76
|
+
if (typeof path !== "string") {
|
|
77
|
+
throw new Error("Path is not a string");
|
|
78
|
+
}
|
|
79
|
+
const segments = path.match(rePropName);
|
|
80
|
+
if (!segments) {
|
|
81
|
+
throw new Error("Invalid path string");
|
|
82
|
+
}
|
|
83
|
+
return segments.map(parsePathSegment);
|
|
84
|
+
}
|
|
85
|
+
function parsePathSegment(segment) {
|
|
86
|
+
if (isIndexSegment(segment)) {
|
|
87
|
+
return parseIndexSegment(segment);
|
|
88
|
+
}
|
|
89
|
+
if (isKeySegment(segment)) {
|
|
90
|
+
return parseKeySegment(segment);
|
|
91
|
+
}
|
|
92
|
+
if (isIndexTuple(segment)) {
|
|
93
|
+
return parseIndexTupleSegment(segment);
|
|
94
|
+
}
|
|
95
|
+
return segment;
|
|
96
|
+
}
|
|
97
|
+
function parseIndexSegment(segment) {
|
|
98
|
+
return Number(segment.replace(/[^\d]/g, ""));
|
|
99
|
+
}
|
|
100
|
+
function parseKeySegment(segment) {
|
|
101
|
+
const segments = segment.match(reKeySegment);
|
|
102
|
+
return {
|
|
103
|
+
_key: segments[1]
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
function parseIndexTupleSegment(segment) {
|
|
107
|
+
const [from, to] = segment.split(":").map(seg => seg === "" ? seg : Number(seg));
|
|
108
|
+
return [from, to];
|
|
109
|
+
}
|
|
110
|
+
var paths = /*#__PURE__*/Object.freeze({
|
|
111
|
+
__proto__: null,
|
|
112
|
+
fromString: fromString,
|
|
113
|
+
get: get,
|
|
114
|
+
isIndexSegment: isIndexSegment,
|
|
115
|
+
isIndexTuple: isIndexTuple,
|
|
116
|
+
isKeySegment: isKeySegment,
|
|
117
|
+
toString: toString
|
|
118
|
+
});
|
|
1
119
|
const ESCAPE = {
|
|
2
120
|
"\f": "\\f",
|
|
3
121
|
"\n": "\\n",
|
|
@@ -156,17 +274,6 @@ function resolvedKeyedSourcePath(options) {
|
|
|
156
274
|
const inferredPathSuffix = inferredPath.length ? jsonPath(inferredPath).slice(1) : "";
|
|
157
275
|
return parseJsonPath(sourceBasePath + inferredPathSuffix);
|
|
158
276
|
}
|
|
159
|
-
function simplifyPath(path) {
|
|
160
|
-
return path.map((segment, index) => {
|
|
161
|
-
if (typeof segment === "number") {
|
|
162
|
-
return "[".concat(segment, "]");
|
|
163
|
-
}
|
|
164
|
-
if (typeof segment === "string") {
|
|
165
|
-
return index === 0 ? segment : ".".concat(segment);
|
|
166
|
-
}
|
|
167
|
-
return '[_key=="'.concat(segment._key, '"]');
|
|
168
|
-
}).join("");
|
|
169
|
-
}
|
|
170
277
|
function createEditLink(options) {
|
|
171
278
|
const {
|
|
172
279
|
studioUrl: resolveStudioUrl,
|
|
@@ -192,11 +299,11 @@ function createEditLink(options) {
|
|
|
192
299
|
const studioUrl = typeof resolveStudioUrl === "function" ? resolveStudioUrl(sourceDoc, parseJsonPath(sourceBasePath)) : resolveStudioUrl;
|
|
193
300
|
if (!studioUrl) return void 0;
|
|
194
301
|
const _studioUrl = studioUrl.replace(/\/$/, "");
|
|
195
|
-
const _path = encodeURIComponent(
|
|
302
|
+
const _path = encodeURIComponent(toString(jsonPathToMappingPath(resolvedKeyedSourcePath({
|
|
196
303
|
keyedResultPath: parseJsonPath(sourceBasePath),
|
|
197
304
|
pathSuffix,
|
|
198
305
|
sourceBasePath
|
|
199
|
-
})));
|
|
306
|
+
}))));
|
|
200
307
|
const {
|
|
201
308
|
_id,
|
|
202
309
|
_type
|
|
@@ -216,5 +323,5 @@ function createEditLink(options) {
|
|
|
216
323
|
}
|
|
217
324
|
return void 0;
|
|
218
325
|
}
|
|
219
|
-
export { createEditLink, getPublishedId, jsonPath, parseJsonPath, resolveMapping, resolvedKeyedSourcePath,
|
|
220
|
-
//# sourceMappingURL=createEditLink-
|
|
326
|
+
export { createEditLink, get, getPublishedId, jsonPath, parseJsonPath, paths, resolveMapping, resolvedKeyedSourcePath, toString, walkMap };
|
|
327
|
+
//# sourceMappingURL=createEditLink-_oYp8h9J.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createEditLink-_oYp8h9J.js","sources":["../../src/csm/paths.ts","../../src/csm/jsonpath.ts","../../src/csm/resolveMapping.ts","../../src/csm/isArray.ts","../../src/csm/isRecord.ts","../../src/csm/walkMap.ts","../../src/csm/getPublishedId.ts","../../src/csm/resolvedKeyedSourcePath.ts","../../src/csm/createEditLink.ts"],"sourcesContent":["/** @public */\nexport type KeyedSegment = {_key: string}\n\n/** @public */\nexport type IndexTuple = [number | '', number | '']\n\n/** @public */\nexport type PathSegment = string | number | KeyedSegment | IndexTuple\n\n/** @public */\nexport type Path = PathSegment[]\n\nconst rePropName =\n /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g\nconst reKeySegment = /_key\\s*==\\s*['\"](.*)['\"]/\nconst reIndexTuple = /^\\d*:\\d*$/\n\n/** @internal */\nexport function isIndexSegment(segment: PathSegment): segment is number {\n return typeof segment === 'number' || (typeof segment === 'string' && /^\\[\\d+\\]$/.test(segment))\n}\n\n/** @internal */\nexport function isKeySegment(segment: PathSegment): segment is KeyedSegment {\n if (typeof segment === 'string') {\n return reKeySegment.test(segment.trim())\n }\n\n return typeof segment === 'object' && '_key' in segment\n}\n\n/** @internal */\nexport function isIndexTuple(segment: PathSegment): segment is IndexTuple {\n if (typeof segment === 'string' && reIndexTuple.test(segment)) {\n return true\n }\n\n if (!Array.isArray(segment) || segment.length !== 2) {\n return false\n }\n\n const [from, to] = segment\n return (typeof from === 'number' || from === '') && (typeof to === 'number' || to === '')\n}\n\n/** @internal */\nexport function get<Result = unknown, Fallback = unknown>(\n obj: unknown,\n path: Path | string,\n defaultVal?: Fallback,\n): Result | typeof defaultVal {\n const select = typeof path === 'string' ? fromString(path) : path\n if (!Array.isArray(select)) {\n throw new Error('Path must be an array or a string')\n }\n\n let acc: unknown | undefined = obj\n for (let i = 0; i < select.length; i++) {\n const segment = select[i]\n if (isIndexSegment(segment)) {\n if (!Array.isArray(acc)) {\n return defaultVal\n }\n\n acc = acc[segment]\n }\n\n if (isKeySegment(segment)) {\n if (!Array.isArray(acc)) {\n return defaultVal\n }\n\n acc = acc.find((item) => item._key === segment._key)\n }\n\n if (typeof segment === 'string') {\n acc =\n typeof acc === 'object' && acc !== null\n ? ((acc as Record<string, unknown>)[segment] as Result)\n : undefined\n }\n\n if (typeof acc === 'undefined') {\n return defaultVal\n }\n }\n\n return acc as Result\n}\n\n/** @public */\nexport function toString(path: Path): string {\n if (!Array.isArray(path)) {\n throw new Error('Path is not an array')\n }\n\n return path.reduce<string>((target, segment, i) => {\n const segmentType = typeof segment\n if (segmentType === 'number') {\n return `${target}[${segment}]`\n }\n\n if (segmentType === 'string') {\n const separator = i === 0 ? '' : '.'\n return `${target}${separator}${segment}`\n }\n\n if (isKeySegment(segment) && segment._key) {\n return `${target}[_key==\"${segment._key}\"]`\n }\n\n if (Array.isArray(segment)) {\n const [from, to] = segment\n return `${target}[${from}:${to}]`\n }\n\n throw new Error(`Unsupported path segment \\`${JSON.stringify(segment)}\\``)\n }, '')\n}\n\n/** @public */\nexport function fromString(path: string): Path {\n if (typeof path !== 'string') {\n throw new Error('Path is not a string')\n }\n\n const segments = path.match(rePropName)\n if (!segments) {\n throw new Error('Invalid path string')\n }\n\n return segments.map(parsePathSegment)\n}\n\nfunction parsePathSegment(segment: string): PathSegment {\n if (isIndexSegment(segment)) {\n return parseIndexSegment(segment)\n }\n\n if (isKeySegment(segment)) {\n return parseKeySegment(segment)\n }\n\n if (isIndexTuple(segment)) {\n return parseIndexTupleSegment(segment)\n }\n\n return segment\n}\n\nfunction parseIndexSegment(segment: string): PathSegment {\n return Number(segment.replace(/[^\\d]/g, ''))\n}\n\nfunction parseKeySegment(segment: string): KeyedSegment {\n const segments = segment.match(reKeySegment)\n return {_key: segments![1]}\n}\n\nfunction parseIndexTupleSegment(segment: string): IndexTuple {\n const [from, to] = segment.split(':').map((seg) => (seg === '' ? seg : Number(seg)))\n return [from, to]\n}\n","import type {ContentSourceMapParsedPath, ContentSourceMapPaths, Path} from './types'\n\nconst ESCAPE: Record<string, string> = {\n '\\f': '\\\\f',\n '\\n': '\\\\n',\n '\\r': '\\\\r',\n '\\t': '\\\\t',\n \"'\": \"\\\\'\",\n '\\\\': '\\\\\\\\',\n}\n\nconst UNESCAPE: Record<string, string> = {\n '\\\\f': '\\f',\n '\\\\n': '\\n',\n '\\\\r': '\\r',\n '\\\\t': '\\t',\n \"\\\\'\": \"'\",\n '\\\\\\\\': '\\\\',\n}\n\n/**\n * @internal\n */\nexport function jsonPath(path: ContentSourceMapParsedPath): ContentSourceMapPaths[number] {\n return `$${path\n .map((segment) => {\n if (typeof segment === 'string') {\n const escapedKey = segment.replace(/[\\f\\n\\r\\t'\\\\]/g, (match) => {\n return ESCAPE[match]\n })\n return `['${escapedKey}']`\n }\n\n if (typeof segment === 'number') {\n return `[${segment}]`\n }\n\n if (segment._key !== '') {\n const escapedKey = segment._key.replace(/['\\\\]/g, (match) => {\n return ESCAPE[match]\n })\n return `[?(@._key=='${escapedKey}')]`\n }\n\n return `[${segment._index}]`\n })\n .join('')}`\n}\n\n/**\n * @internal\n */\nexport function parseJsonPath(path: ContentSourceMapPaths[number]): ContentSourceMapParsedPath {\n const parsed: ContentSourceMapParsedPath = []\n\n const parseRe = /\\['(.*?)'\\]|\\[(\\d+)\\]|\\[\\?\\(@\\._key=='(.*?)'\\)\\]/g\n let match: RegExpExecArray | null\n\n while ((match = parseRe.exec(path)) !== null) {\n if (match[1] !== undefined) {\n const key = match[1].replace(/\\\\(\\\\|f|n|r|t|')/g, (m) => {\n return UNESCAPE[m]\n })\n\n parsed.push(key)\n continue\n }\n\n if (match[2] !== undefined) {\n parsed.push(parseInt(match[2], 10))\n continue\n }\n\n if (match[3] !== undefined) {\n const _key = match[3].replace(/\\\\(\\\\')/g, (m) => {\n return UNESCAPE[m]\n })\n\n parsed.push({\n _key,\n _index: -1,\n })\n continue\n }\n }\n\n return parsed\n}\n\n/**\n * @internal\n */\nexport function jsonPathToStudioPath(path: ContentSourceMapParsedPath): Path {\n return path.map((segment) => {\n if (typeof segment === 'string') {\n return segment\n }\n\n if (typeof segment === 'number') {\n return segment\n }\n\n if (segment._key !== '') {\n return {_key: segment._key}\n }\n\n if (segment._index !== -1) {\n return segment._index\n }\n\n throw new Error(`invalid segment:${JSON.stringify(segment)}`)\n })\n}\n\n/**\n * @internal\n */\nexport function jsonPathToMappingPath(path: ContentSourceMapParsedPath): (string | number)[] {\n return path.map((segment) => {\n if (typeof segment === 'string') {\n return segment\n }\n\n if (typeof segment === 'number') {\n return segment\n }\n\n if (segment._index !== -1) {\n return segment._index\n }\n\n throw new Error(`invalid segment:${JSON.stringify(segment)}`)\n })\n}\n","import {jsonPath, jsonPathToMappingPath} from './jsonpath'\nimport type {ContentSourceMap, ContentSourceMapMapping, ContentSourceMapParsedPath} from './types'\n\n/**\n * @internal\n */\nexport function resolveMapping(\n resultPath: ContentSourceMapParsedPath,\n csm?: ContentSourceMap,\n):\n | {\n mapping: ContentSourceMapMapping\n matchedPath: string\n pathSuffix: string\n }\n | undefined {\n if (!csm?.mappings) {\n throw new Error('missing mappings')\n return undefined\n }\n const resultMappingPath = jsonPath(jsonPathToMappingPath(resultPath))\n\n if (csm.mappings[resultMappingPath] !== undefined) {\n return {\n mapping: csm.mappings[resultMappingPath],\n matchedPath: resultMappingPath,\n pathSuffix: '',\n }\n }\n\n const mappings = Object.entries(csm.mappings)\n .filter(([key]) => resultMappingPath.startsWith(key))\n .sort(([key1], [key2]) => key2.length - key1.length)\n\n if (mappings.length == 0) {\n return undefined\n }\n\n const [matchedPath, mapping] = mappings[0]\n const pathSuffix = resultMappingPath.substring(matchedPath.length)\n return {mapping, matchedPath, pathSuffix}\n}\n","/** @internal */\nexport function isArray(value: unknown): value is Array<unknown> {\n return value !== null && Array.isArray(value)\n}\n","/** @internal */\nexport function isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null\n}\n","import {isArray} from './isArray'\nimport {isRecord} from './isRecord'\nimport type {ContentSourceMapParsedPath, WalkMapFn} from './types'\n\n/**\n * generic way to walk a nested object or array and apply a mapping function to each value\n * @internal\n */\nexport function walkMap(\n value: unknown,\n mappingFn: WalkMapFn,\n path: ContentSourceMapParsedPath = [],\n): unknown {\n if (isArray(value)) {\n return value.map((v, idx) => {\n if (isRecord(v)) {\n const _key = v['_key']\n if (typeof _key === 'string') {\n return walkMap(v, mappingFn, path.concat({_key, _index: idx}))\n }\n }\n\n return walkMap(v, mappingFn, path.concat(idx))\n })\n }\n\n if (isRecord(value)) {\n return Object.fromEntries(\n Object.entries(value).map(([k, v]) => [k, walkMap(v, mappingFn, path.concat(k))]),\n )\n }\n\n return mappingFn(value, path)\n}\n","const DRAFTS_PREFIX = 'drafts.'\n\n/** @internal */\nexport function getPublishedId(id: string): string {\n if (id.startsWith(DRAFTS_PREFIX)) {\n return id.slice(DRAFTS_PREFIX.length)\n }\n\n return id\n}\n","import {jsonPath, parseJsonPath} from './jsonpath'\nimport type {ContentSourceMapParsedPath} from './types'\n\n/**\n * @internal\n */\nexport function resolvedKeyedSourcePath(options: {\n keyedResultPath: ContentSourceMapParsedPath\n pathSuffix?: string\n sourceBasePath: string\n}): ContentSourceMapParsedPath {\n const {keyedResultPath, pathSuffix, sourceBasePath} = options\n\n const inferredResultPath = pathSuffix === undefined ? [] : parseJsonPath(pathSuffix)\n\n const inferredPath = keyedResultPath.slice(keyedResultPath.length - inferredResultPath.length)\n\n const inferredPathSuffix = inferredPath.length ? jsonPath(inferredPath).slice(1) : ''\n\n return parseJsonPath(sourceBasePath + inferredPathSuffix)\n}\n","import {getPublishedId} from './getPublishedId'\nimport {jsonPathToMappingPath, parseJsonPath} from './jsonpath'\nimport * as path from './paths'\nimport {resolvedKeyedSourcePath} from './resolvedKeyedSourcePath'\nimport {resolveMapping} from './resolveMapping'\nimport type {CreateEditLinkOptions, EditIntentLink, StudioUrl} from './types'\n\n/** @public */\n// eslint-disable-next-line no-warning-comments\n// @TODO refactor to creating just the link, with a SourcePath already converted to a \"StudioPathLike\" as input\nexport function createEditLink(\n options: CreateEditLinkOptions,\n): `${StudioUrl}${EditIntentLink}` | undefined {\n const {studioUrl: resolveStudioUrl, resultSourceMap: csm, resultPath} = options\n const {mapping, pathSuffix} = resolveMapping(resultPath, csm) || {}\n\n if (!mapping) {\n // console.warn('no mapping for path', { path: resultPath, sourceMap: csm })\n return undefined\n }\n\n if (mapping.source.type === 'literal') {\n return undefined\n }\n\n if (mapping.source.type === 'unknown') {\n return undefined\n }\n\n const sourceDoc = csm.documents[mapping.source.document]\n const sourceBasePath = csm.paths[mapping.source.path]\n\n if (sourceDoc && sourceBasePath) {\n const studioUrl =\n typeof resolveStudioUrl === 'function'\n ? resolveStudioUrl(sourceDoc, parseJsonPath(sourceBasePath))\n : resolveStudioUrl\n if (!studioUrl) return undefined\n const _studioUrl = studioUrl.replace(/\\/$/, '')\n const _path = encodeURIComponent(\n path.toString(\n jsonPathToMappingPath(\n resolvedKeyedSourcePath({\n keyedResultPath: parseJsonPath(sourceBasePath),\n pathSuffix,\n sourceBasePath,\n }),\n ),\n ),\n )\n const {_id, _type} = sourceDoc\n const params = new URLSearchParams()\n if (sourceDoc._projectId) {\n params.set('projectId', sourceDoc._projectId)\n }\n if (sourceDoc._dataset) {\n params.set('dataset', sourceDoc._dataset)\n }\n params.set('id', getPublishedId(sourceDoc._id))\n params.set('type', sourceDoc._type)\n params.set('path', decodeURIComponent(_path))\n params.set('baseUrl', _studioUrl)\n return `${_studioUrl}/intent/edit/id=${getPublishedId(\n _id,\n )};type=${_type};path=${_path}?${params}`\n }\n\n return undefined\n}\n"],"names":["rePropName","reKeySegment","reIndexTuple","isIndexSegment","segment","test","isKeySegment","trim","isIndexTuple","Array","isArray","length","from","to","get","obj","path","defaultVal","select","fromString","Error","acc","i","find","item","_key","toString","reduce","target","segmentType","concat","separator","stringify","segments","match","map","parsePathSegment","parseIndexSegment","parseKeySegment","parseIndexTupleSegment","Number","replace","split","seg","ESCAPE","UNESCAPE","jsonPath","escapedKey","_index","join","parseJsonPath","parsed","parseRe","exec","key","m","push","parseInt","jsonPathToMappingPath","JSON","resolveMapping","resultPath","csm","mappings","resultMappingPath","mapping","matchedPath","pathSuffix","Object","entries","filter","_ref","startsWith","sort","_ref2","_ref3","key1","key2","substring","value","isRecord","walkMap","mappingFn","arguments","undefined","v","idx","fromEntries","_ref4","k","DRAFTS_PREFIX","getPublishedId","id","slice","resolvedKeyedSourcePath","options","keyedResultPath","sourceBasePath","inferredResultPath","inferredPath","inferredPathSuffix","createEditLink","studioUrl","resolveStudioUrl","resultSourceMap","source","type","sourceDoc","documents","document","paths","_studioUrl","_path","encodeURIComponent","path.toString","_id","_type","params","URLSearchParams","_projectId","set","_dataset","decodeURIComponent"],"mappings":"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"}
|
|
@@ -1858,7 +1858,7 @@ function defineCreateClientExports(envMiddleware, ClassConstructor) {
|
|
|
1858
1858
|
};
|
|
1859
1859
|
}
|
|
1860
1860
|
var name = "@sanity/client";
|
|
1861
|
-
var version = "6.8.0-pink-lizard.
|
|
1861
|
+
var version = "6.8.0-pink-lizard.3";
|
|
1862
1862
|
const middleware = [debug({
|
|
1863
1863
|
verbose: true,
|
|
1864
1864
|
namespace: "sanity:client"
|
|
@@ -1879,4 +1879,4 @@ agent({
|
|
|
1879
1879
|
maxTotalSockets: 256
|
|
1880
1880
|
})];
|
|
1881
1881
|
export { BasePatch, BaseTransaction, ClientError, ObservablePatch, ObservableSanityClient, ObservableTransaction, Patch, SanityClient, ServerError, Transaction, defaultConfig, defineCreateClientExports, middleware, printNoDefaultExport };
|
|
1882
|
-
//# sourceMappingURL=nodeMiddleware-
|
|
1882
|
+
//# sourceMappingURL=nodeMiddleware-bM1My_Ph.js.map
|