@fern-api/fdr-sdk 1.2.96-b1b20d1d34 → 1.2.97-401342676c
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/js/converters/index.js +38 -0
- package/dist/js/converters/index.js.map +1 -1
- package/dist/js/converters/index.mjs +38 -0
- package/dist/js/converters/index.mjs.map +1 -1
- package/dist/js/index.js +38 -0
- package/dist/js/index.js.map +1 -1
- package/dist/js/index.mjs +38 -0
- package/dist/js/index.mjs.map +1 -1
- package/dist/js/navigation/index.js +38 -0
- package/dist/js/navigation/index.js.map +1 -1
- package/dist/js/navigation/index.mjs +38 -0
- package/dist/js/navigation/index.mjs.map +1 -1
- package/dist/types/navigation/versions/v1/converters/SlugGenerator.d.ts +5 -0
- package/dist/types/navigation/versions/v1/converters/SlugGenerator.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -11852,6 +11852,12 @@ var NodeIdGenerator = class {
|
|
|
11852
11852
|
};
|
|
11853
11853
|
|
|
11854
11854
|
// src/navigation/versions/v1/converters/SlugGenerator.ts
|
|
11855
|
+
function isScopedTo(slug, prefix) {
|
|
11856
|
+
return prefix.length > 0 && (slug === prefix || slug.startsWith(`${prefix}/`));
|
|
11857
|
+
}
|
|
11858
|
+
function isNestedUnder(slug, prefix) {
|
|
11859
|
+
return prefix.length > 0 && slug.startsWith(`${prefix}/`);
|
|
11860
|
+
}
|
|
11855
11861
|
var SlugGenerator = class _SlugGenerator {
|
|
11856
11862
|
constructor(baseSlug, productSlug, versionSlug, slug) {
|
|
11857
11863
|
this.baseSlug = baseSlug;
|
|
@@ -11922,6 +11928,8 @@ var SlugGenerator = class _SlugGenerator {
|
|
|
11922
11928
|
}
|
|
11923
11929
|
return fullSlug;
|
|
11924
11930
|
};
|
|
11931
|
+
const relativeProductSlug = this.relativeToBase(this.productSlug);
|
|
11932
|
+
const relativeVersionSlug = this.relativeToBase(this.versionSlug);
|
|
11925
11933
|
if (this.productSlug != null && this.versionSlug != null) {
|
|
11926
11934
|
if (slug.startsWith(this.productSlug)) {
|
|
11927
11935
|
const remaining = getRemainingAfterProduct(slug);
|
|
@@ -11931,6 +11939,13 @@ var SlugGenerator = class _SlugGenerator {
|
|
|
11931
11939
|
const remaining = getRemainingAfterBase(slug);
|
|
11932
11940
|
return createWithSlug(navigation_exports.V1.slugjoin(this.baseSlug, remaining));
|
|
11933
11941
|
}
|
|
11942
|
+
if (relativeVersionSlug != null && isScopedTo(slug, relativeVersionSlug)) {
|
|
11943
|
+
return createWithSlug(navigation_exports.V1.slugjoin(this.baseSlug, slug));
|
|
11944
|
+
}
|
|
11945
|
+
if (relativeProductSlug != null && isScopedTo(slug, relativeProductSlug)) {
|
|
11946
|
+
const remaining = slug.substring(relativeProductSlug.length);
|
|
11947
|
+
return createWithSlug(navigation_exports.V1.slugjoin(this.versionSlug, remaining));
|
|
11948
|
+
}
|
|
11934
11949
|
return createWithSlug(navigation_exports.V1.slugjoin(this.versionSlug, slug));
|
|
11935
11950
|
}
|
|
11936
11951
|
if (this.versionSlug != null) {
|
|
@@ -11940,6 +11955,9 @@ var SlugGenerator = class _SlugGenerator {
|
|
|
11940
11955
|
if (this.baseSlug.length > 0 && slug.startsWith(this.baseSlug)) {
|
|
11941
11956
|
return createWithSlug(navigation_exports.V1.slugjoin(this.versionSlug, getRemainingAfterBase(slug)));
|
|
11942
11957
|
}
|
|
11958
|
+
if (relativeVersionSlug != null && isScopedTo(slug, relativeVersionSlug)) {
|
|
11959
|
+
return createWithSlug(navigation_exports.V1.slugjoin(this.baseSlug, slug));
|
|
11960
|
+
}
|
|
11943
11961
|
return createWithSlug(navigation_exports.V1.slugjoin(this.versionSlug, slug));
|
|
11944
11962
|
}
|
|
11945
11963
|
if (this.productSlug != null) {
|
|
@@ -11949,6 +11967,9 @@ var SlugGenerator = class _SlugGenerator {
|
|
|
11949
11967
|
if (this.baseSlug.length > 0 && slug.startsWith(this.baseSlug)) {
|
|
11950
11968
|
return createWithSlug(navigation_exports.V1.slugjoin(getRemainingAfterBase(slug)));
|
|
11951
11969
|
}
|
|
11970
|
+
if (relativeProductSlug != null && isScopedTo(slug, relativeProductSlug)) {
|
|
11971
|
+
return createWithSlug(navigation_exports.V1.slugjoin(this.baseSlug, slug));
|
|
11972
|
+
}
|
|
11952
11973
|
return createWithSlug(navigation_exports.V1.slugjoin(this.productSlug, slug));
|
|
11953
11974
|
}
|
|
11954
11975
|
if (this.baseSlug.length > 0) {
|
|
@@ -11970,8 +11991,25 @@ var SlugGenerator = class _SlugGenerator {
|
|
|
11970
11991
|
if (fullSlug != null) {
|
|
11971
11992
|
return this.set(fullSlug.join("/"));
|
|
11972
11993
|
}
|
|
11994
|
+
if (this.slug === this.scopeSlug && isNestedUnder(navigation_exports.V1.slugjoin(urlSlug), this.relativeScopeSlug)) {
|
|
11995
|
+
return this.set(urlSlug);
|
|
11996
|
+
}
|
|
11973
11997
|
return this.append(urlSlug);
|
|
11974
11998
|
}
|
|
11999
|
+
/** The product/version prefix that child slugs hang off of. */
|
|
12000
|
+
get scopeSlug() {
|
|
12001
|
+
return this.versionSlug ?? this.productSlug ?? this.baseSlug;
|
|
12002
|
+
}
|
|
12003
|
+
/** {@link scopeSlug} as authored in the config, i.e. without the basepath. */
|
|
12004
|
+
get relativeScopeSlug() {
|
|
12005
|
+
return this.relativeToBase(this.scopeSlug);
|
|
12006
|
+
}
|
|
12007
|
+
relativeToBase(slug) {
|
|
12008
|
+
if (slug == null || this.baseSlug.length === 0 || !isScopedTo(slug, this.baseSlug)) {
|
|
12009
|
+
return slug;
|
|
12010
|
+
}
|
|
12011
|
+
return slug.substring(this.baseSlug.length + 1);
|
|
12012
|
+
}
|
|
11975
12013
|
};
|
|
11976
12014
|
|
|
11977
12015
|
// src/navigation/versions/v1/converters/ApiReferenceNavigationConverter.ts
|