@purestack/ts-common 1.1.13 → 1.1.14
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/ts-common.d.mts +24 -2
- package/dist/ts-common.d.mts.map +1 -1
- package/dist/ts-common.mjs +17 -2
- package/dist/ts-common.mjs.map +1 -1
- package/package.json +4 -4
package/dist/ts-common.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @purestack/ts-common v1.1.
|
|
1
|
+
/*! @purestack/ts-common v1.1.14 | (c) 2026 Ahmed Yasin Koculu | MIT License */
|
|
2
2
|
|
|
3
3
|
import { SemanticTone, ThemeOptions, ThemeOptionsInput, ThemeStylesheetLink } from "@purestack/ts-style";
|
|
4
4
|
import { DeepPartial } from "@purestack/ts-util";
|
|
@@ -560,6 +560,9 @@ interface PageContext {
|
|
|
560
560
|
recordRuntimeEmbed: (name: string, position: 'body' | 'head') => void;
|
|
561
561
|
}
|
|
562
562
|
//#endregion
|
|
563
|
+
//#region packages/ts-common/src/isTocEnabled.d.ts
|
|
564
|
+
export declare function isTocEnabled(frontmatter: PageFrontmatter, outline: PageOutlineItem[] | undefined): boolean;
|
|
565
|
+
//#endregion
|
|
563
566
|
//#region packages/ts-common/src/page-template-types.d.ts
|
|
564
567
|
interface PageInfo {
|
|
565
568
|
relPath: string;
|
|
@@ -589,10 +592,29 @@ interface PageTemplateInput {
|
|
|
589
592
|
}
|
|
590
593
|
type PageTemplate = (input: PageTemplateInput) => TSNode<'html'> | Promise<TSNode<'html'>>;
|
|
591
594
|
type PageTemplateMap = Record<string, PageTemplate>;
|
|
595
|
+
/** Composes head markup before the page template receives it. */
|
|
596
|
+
type PageHeadTemplate = (input: PageTemplateInput) => TSNode<'head'> | Promise<TSNode<'head'>>;
|
|
592
597
|
//#endregion
|
|
593
598
|
//#region packages/ts-common/src/resolvePageContext.d.ts
|
|
594
599
|
export declare function resolvePageContext(head: unknown): PageContext;
|
|
595
600
|
export declare function tryResolvePageContext(head: unknown): PageContext | undefined;
|
|
596
601
|
//#endregion
|
|
597
|
-
|
|
602
|
+
//#region packages/ts-common/src/site-styles.d.ts
|
|
603
|
+
interface WriteStylesResult {
|
|
604
|
+
revision: number;
|
|
605
|
+
outPath: string;
|
|
606
|
+
outputs: string[];
|
|
607
|
+
signature: string;
|
|
608
|
+
}
|
|
609
|
+
/** A plugin's stylesheet output, initialized before component factories. */
|
|
610
|
+
interface SiteStyles {
|
|
611
|
+
readonly revision: number;
|
|
612
|
+
links(cacheKey?: string): ThemeStylesheetLink[];
|
|
613
|
+
write(input: {
|
|
614
|
+
outDir: string;
|
|
615
|
+
cacheKey?: string;
|
|
616
|
+
}): Promise<WriteStylesResult>;
|
|
617
|
+
}
|
|
618
|
+
//#endregion
|
|
619
|
+
export type { AnalyticsConfig, AuthConfig, ClassicLogoConfig, ConsentCategory, ConsentConfig, ConsentScript, ConsentService, DocLayoutConfig, FrontmatterEmbedOptions, FrontmatterLayoutOptions, FrontmatterNavOptions, Ga4Config, I18nConfig, I18nUrlStrategy, LogoAppearance, LogoConfig, LogoLayout, LogoMarkStyle, LogoShape, LogoSize, LogoWordmarkStyle, NavItem, NavigationConfig, NavigationMode, NavigationSort, PageContext, PageFrontmatter, PageHeadTemplate, PageInfo, PageNavigation, PageNavigationLink, PageNavigationLinks, PageOutlineItem, PageTemplate, PageTemplateInput, PageTemplateMap, PageTocConfig, PageTranslationInfo, PagefindConfig, ParsedFrontmatterSource, PreviewConfig, RobotsConfig, SiteConfig, SiteConfigInput, SiteHtmlConfig, SiteLogoConfig, SiteMdxConfig, SiteScriptsConfig, SiteStyleConfig, SiteStyleConfigInput, SiteStyles, SitemapConfig, TsSsgNavigation, WriteStylesResult };
|
|
598
620
|
//# sourceMappingURL=ts-common.d.mts.map
|
package/dist/ts-common.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ts-common.d.mts","names":[],"sources":["../src/consent-types.ts","../src/logo-types.ts","../src/navMenu-types.ts","../src/site-config-types.ts","../src/frontmatter-types.ts","../src/ts-ssg-context.ts","../src/page-template-types.ts","../src/resolvePageContext.ts"],"mappings":";;;;UAAiB;EACf;EACA;EACA;EACA;;UAGe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;UAGe;;EAEf;EACA;EACA;EACA;EACA;EACA,SAAS;;UAGM;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,YAAY;EACZ,UAAU;;;;KCzCA;KACA;KACA;KACA;KACA;KACA;UAEK;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,SAAS;EACT,OAAO;EACP,aAAa;EACb,YAAY;EACZ,gBAAgB;EAChB,QAAQ;EACR,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIe,uBAAuB,YAAY;EAClD;;;;KCtEU;KACA;UAEK;EACf,OAAO;EACP;EACA;EACA;EACA,SAAS;EACT;EACA,OAAO;;EAEP;;EAEA;;UAGe;EACf;EACA;EACA;EACA,WAAW;EACX;EACA;EACA;EACA;EACA,OAAO;;UAGQ;EACf;EACA;;UAGe;EACf,WAAW;EACX,OAAO;;UAGQ;EACf,MAAM;EACN;EACA;EACA,OAAO;EACP,QAAQ;EACR,MAAM;EACN,YAAY;;;;UCtCG;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAM;EACN,WAAW;EACX,OAAO;EACP,MAAM;EACN,YAAY;EACZ,SAAS;EACT,MAAM;EACN,SAAS;EACT,SAAS;EACT,SAAS;EACT,WAAW;EACX,UAAU;EACV,SAAS;EACT,MAAM;EACN,KAAK;;UAGU;;EAEf;;EAEA;;UAGe;EACf;EACA,MAAM;;EAEN;;EAEA;;UAGe;EACf;EACA;EACA;;UAGe;EACf;;UAGe;EACf;EACA;EACA;EACA;EACA,OAAO;;UAGQ;EACf;;UAGe;EACf;EACA;EACA;EACA,QAAQ;;UAGO;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;UAGe;EACf;EACA;EACA;EACA;;UAGe;EACf,KAAK;;UAGU;EACf;EACA;;UAGe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;KAGU;UAEK;EACf;EACA;EACA;EACA,aAAa;EACb;EACA;;UAGe;EACf;EACA;EACA;;KAGU,uBAAuB,YACjC,KAAK;EAEL,QAAQ;;KAGE,kBAAkB,YAAY,KAAK;EAC7C,QAAQ;;;;;;;;;;;;;UCvIO;;;;;;;EAOf;;;;;EAMA;;;;;;;EAQA,OAAO;;;;;;;EAQP,UAAU;;;;;;;;;EAUV;;;;;;EAOA;;;;EAKA;;;;;;EAOA;;;;;;;;EASA;;;;EAKA,KAAK;;;;EAKL,QAAQ;;;;EAKR,QAAQ;;;;GAKP;;;;;;;;UASc;;;;;;;;;;EAUf;;;;;;;;;EAUA;;;;;;;;;EAUA;;;;;;;;;;EAWA;;;;;;;;;EAUA;;;;;;;EAQA,UAAU;;;;;;EAOV;;;;;GAMC;;;;;;;;UASc;;;;;;;EAOf;;;;;;EAOA;;;;EAKA;;;;EAKA;;;;;;;EAQA,OAAO;;;;;;EAOP;;;;GAKC;;;;;;UAOc;;;;;;;EAOf;;;;;;;EAQA;;;;GAKC;;;;;UAMc;;;;EAIf;;;;EAKA,aAAa;;;;UC3QE;EACf;EACA;EACA;EACA,WAAW;;UAGI;EACf;EACA;EACA,SAAS;EACT,QAAQ;EACR,YAAY;;UAGG;EACf,MAAM;EACN,UAAU;EACV,aAAa;EACb,UAAU;EACV,OAAO;EACP;EACA;EACA;EACA;EACA,oBAAoB;EACpB,oBAAoB;EACpB,yBAAyB;EACzB,2BAA2B;EAC3B,qBAAqB,cAAc;;;;
|
|
1
|
+
{"version":3,"file":"ts-common.d.mts","names":[],"sources":["../src/consent-types.ts","../src/logo-types.ts","../src/navMenu-types.ts","../src/site-config-types.ts","../src/frontmatter-types.ts","../src/ts-ssg-context.ts","../src/isTocEnabled.ts","../src/page-template-types.ts","../src/resolvePageContext.ts","../src/site-styles.ts"],"mappings":";;;;UAAiB;EACf;EACA;EACA;EACA;;UAGe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;UAGe;;EAEf;EACA;EACA;EACA;EACA;EACA,SAAS;;UAGM;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,YAAY;EACZ,UAAU;;;;KCzCA;KACA;KACA;KACA;KACA;KACA;UAEK;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,SAAS;EACT,OAAO;EACP,aAAa;EACb,YAAY;EACZ,gBAAgB;EAChB,QAAQ;EACR,OAAO;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIe,uBAAuB,YAAY;EAClD;;;;KCtEU;KACA;UAEK;EACf,OAAO;EACP;EACA;EACA;EACA,SAAS;EACT;EACA,OAAO;;EAEP;;EAEA;;UAGe;EACf;EACA;EACA;EACA,WAAW;EACX;EACA;EACA;EACA;EACA,OAAO;;UAGQ;EACf;EACA;;UAGe;EACf,WAAW;EACX,OAAO;;UAGQ;EACf,MAAM;EACN;EACA;EACA,OAAO;EACP,QAAQ;EACR,MAAM;EACN,YAAY;;;;UCtCG;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAM;EACN,WAAW;EACX,OAAO;EACP,MAAM;EACN,YAAY;EACZ,SAAS;EACT,MAAM;EACN,SAAS;EACT,SAAS;EACT,SAAS;EACT,WAAW;EACX,UAAU;EACV,SAAS;EACT,MAAM;EACN,KAAK;;UAGU;;EAEf;;EAEA;;UAGe;EACf;EACA,MAAM;;EAEN;;EAEA;;UAGe;EACf;EACA;EACA;;UAGe;EACf;;UAGe;EACf;EACA;EACA;EACA;EACA,OAAO;;UAGQ;EACf;;UAGe;EACf;EACA;EACA;EACA,QAAQ;;UAGO;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;UAGe;EACf;EACA;EACA;EACA;;UAGe;EACf,KAAK;;UAGU;EACf;EACA;;UAGe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;KAGU;UAEK;EACf;EACA;EACA;EACA,aAAa;EACb;EACA;;UAGe;EACf;EACA;EACA;;KAGU,uBAAuB,YACjC,KAAK;EAEL,QAAQ;;KAGE,kBAAkB,YAAY,KAAK;EAC7C,QAAQ;;;;;;;;;;;;;UCvIO;;;;;;;EAOf;;;;;EAMA;;;;;;;EAQA,OAAO;;;;;;;EAQP,UAAU;;;;;;;;;EAUV;;;;;;EAOA;;;;EAKA;;;;;;EAOA;;;;;;;;EASA;;;;EAKA,KAAK;;;;EAKL,QAAQ;;;;EAKR,QAAQ;;;;GAKP;;;;;;;;UASc;;;;;;;;;;EAUf;;;;;;;;;EAUA;;;;;;;;;EAUA;;;;;;;;;;EAWA;;;;;;;;;EAUA;;;;;;;EAQA,UAAU;;;;;;EAOV;;;;;GAMC;;;;;;;;UASc;;;;;;;EAOf;;;;;;EAOA;;;;EAKA;;;;EAKA;;;;;;;EAQA,OAAO;;;;;;EAOP;;;;GAKC;;;;;;UAOc;;;;;;;EAOf;;;;;;;EAQA;;;;GAKC;;;;;UAMc;;;;EAIf;;;;EAKA,aAAa;;;;UC3QE;EACf;EACA;EACA;EACA,WAAW;;UAGI;EACf;EACA;EACA,SAAS;EACT,QAAQ;EACR,YAAY;;UAGG;EACf,MAAM;EACN,UAAU;EACV,aAAa;EACb,UAAU;EACV,OAAO;EACP;EACA;EACA;EACA;EACA,oBAAoB;EACpB,oBAAoB;EACpB,yBAAyB;EACzB,2BAA2B;EAC3B,qBAAqB,cAAc;;;;wBClCrB,aACd,aAAa,iBACb,SAAS;;;UCEM;EACf;EACA;EACA,aAAa;EACb;EACA;EACA,eAAe;;UAGA;EACf;EACA;EACA;;UAGe;EACf,MAAM;EACN;EACA,aAAa;EACb,aAAa;EACb;EACA,MAAM;EACN,aAAa;EACb,UAAU;EACV,UAAU;EACV;EACA;;KAGU,gBACV,OAAO,sBACJ,iBAAiB,QAAQ;KAElB,kBAAkB,eAAe;;KAGjC,oBACV,OAAO,sBACJ,iBAAiB,QAAQ;;;wBC3Bd,mBAAmB,gBAAgB;wBASnC,sBAAsB,gBAAgB;;;UCzBrC;EACf;EACA;EACA;EACA;;;UAIe;WACN;EACT,MAAM,oBAAoB;EAC1B,MAAM;IACJ;IACA;MACE,QAAQ"}
|
package/dist/ts-common.mjs
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
|
-
/*! @purestack/ts-common v1.1.
|
|
1
|
+
/*! @purestack/ts-common v1.1.14 | (c) 2026 Ahmed Yasin Koculu | MIT License */
|
|
2
2
|
|
|
3
|
+
//#region packages/ts-common/src/isTocEnabled.ts
|
|
4
|
+
function isTocEnabled(frontmatter, outline) {
|
|
5
|
+
return frontmatter.layout.showToc && hasVisibleTocItems(outline ?? []);
|
|
6
|
+
}
|
|
7
|
+
function hasVisibleTocItems(outline) {
|
|
8
|
+
const [item] = outline;
|
|
9
|
+
if (!item) return false;
|
|
10
|
+
if (outline.length !== 1 || !isDocumentHeading(item)) return true;
|
|
11
|
+
return (item.children?.length ?? 0) > 0;
|
|
12
|
+
}
|
|
13
|
+
function isDocumentHeading(item) {
|
|
14
|
+
return item.depth === 1;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
//#endregion
|
|
3
18
|
//#region packages/ts-common/src/resolvePageContext.ts
|
|
4
19
|
function hasPageContext(value) {
|
|
5
20
|
return typeof value === "object" && value !== null && "pageContext" in value;
|
|
@@ -24,5 +39,5 @@ function tryResolvePageContext(head) {
|
|
|
24
39
|
}
|
|
25
40
|
|
|
26
41
|
//#endregion
|
|
27
|
-
export { resolvePageContext, tryResolvePageContext };
|
|
42
|
+
export { isTocEnabled, resolvePageContext, tryResolvePageContext };
|
|
28
43
|
//# sourceMappingURL=ts-common.mjs.map
|
package/dist/ts-common.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ts-common.mjs","names":[],"sources":["../src/resolvePageContext.ts"],"sourcesContent":["import type { PageContext } from './ts-ssg-context'\n\ntype ContextCarrier = {\n pageContext?: PageContext\n}\n\ntype HeadLike = {\n ctx?: unknown[]\n}\n\nfunction hasPageContext(value: unknown): value is ContextCarrier {\n return typeof value === 'object' && value !== null && 'pageContext' in value\n}\n\nfunction hasContextStack(value: unknown): value is HeadLike {\n return typeof value === 'object' && value !== null && 'ctx' in value\n}\n\nexport function resolvePageContext(head: unknown): PageContext {\n const stack = hasContextStack(head) && Array.isArray(head.ctx) ? head.ctx : []\n for (const ctx of stack) {\n if (!hasPageContext(ctx)) continue\n if (ctx.pageContext) return ctx.pageContext\n }\n throw new Error('pageContext is not available in the Regor context stack.')\n}\n\nexport function tryResolvePageContext(head: unknown): PageContext | undefined {\n const stack = hasContextStack(head) && Array.isArray(head.ctx) ? head.ctx : []\n for (const ctx of stack) {\n if (!hasPageContext(ctx)) continue\n if (ctx.pageContext) return ctx.pageContext\n }\n return undefined\n}\n"],"mappings":";
|
|
1
|
+
{"version":3,"file":"ts-common.mjs","names":[],"sources":["../src/isTocEnabled.ts","../src/resolvePageContext.ts"],"sourcesContent":["import type { PageFrontmatter } from './frontmatter-types'\nimport type { PageOutlineItem } from './ts-ssg-context'\n\nexport function isTocEnabled(\n frontmatter: PageFrontmatter,\n outline: PageOutlineItem[] | undefined,\n) {\n return frontmatter.layout.showToc && hasVisibleTocItems(outline ?? [])\n}\n\nfunction hasVisibleTocItems(outline: PageOutlineItem[]) {\n const [item] = outline\n if (!item) return false\n if (outline.length !== 1 || !isDocumentHeading(item)) return true\n return (item.children?.length ?? 0) > 0\n}\n\nfunction isDocumentHeading(item: PageOutlineItem) {\n return item.depth === 1\n}\n","import type { PageContext } from './ts-ssg-context'\n\ntype ContextCarrier = {\n pageContext?: PageContext\n}\n\ntype HeadLike = {\n ctx?: unknown[]\n}\n\nfunction hasPageContext(value: unknown): value is ContextCarrier {\n return typeof value === 'object' && value !== null && 'pageContext' in value\n}\n\nfunction hasContextStack(value: unknown): value is HeadLike {\n return typeof value === 'object' && value !== null && 'ctx' in value\n}\n\nexport function resolvePageContext(head: unknown): PageContext {\n const stack = hasContextStack(head) && Array.isArray(head.ctx) ? head.ctx : []\n for (const ctx of stack) {\n if (!hasPageContext(ctx)) continue\n if (ctx.pageContext) return ctx.pageContext\n }\n throw new Error('pageContext is not available in the Regor context stack.')\n}\n\nexport function tryResolvePageContext(head: unknown): PageContext | undefined {\n const stack = hasContextStack(head) && Array.isArray(head.ctx) ? head.ctx : []\n for (const ctx of stack) {\n if (!hasPageContext(ctx)) continue\n if (ctx.pageContext) return ctx.pageContext\n }\n return undefined\n}\n"],"mappings":";AAGA,SAAgB,aACd,aACA,SACA;CACA,OAAO,YAAY,OAAO,WAAW,mBAAmB,WAAW,CAAC,CAAC;AACvE;AAEA,SAAS,mBAAmB,SAA4B;CACtD,MAAM,CAAC,QAAQ;CACf,IAAI,CAAC,MAAM,OAAO;CAClB,IAAI,QAAQ,WAAW,KAAK,CAAC,kBAAkB,IAAI,GAAG,OAAO;CAC7D,QAAQ,KAAK,UAAU,UAAU,KAAK;AACxC;AAEA,SAAS,kBAAkB,MAAuB;CAChD,OAAO,KAAK,UAAU;AACxB;;;;ACTA,SAAS,eAAe,OAAyC;CAC/D,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,iBAAiB;AACzE;AAEA,SAAS,gBAAgB,OAAmC;CAC1D,OAAO,OAAO,UAAU,YAAY,UAAU,QAAQ,SAAS;AACjE;AAEA,SAAgB,mBAAmB,MAA4B;CAC7D,MAAM,QAAQ,gBAAgB,IAAI,KAAK,MAAM,QAAQ,KAAK,GAAG,IAAI,KAAK,MAAM,CAAC;CAC7E,KAAK,MAAM,OAAO,OAAO;EACvB,IAAI,CAAC,eAAe,GAAG,GAAG;EAC1B,IAAI,IAAI,aAAa,OAAO,IAAI;CAClC;CACA,MAAM,IAAI,MAAM,0DAA0D;AAC5E;AAEA,SAAgB,sBAAsB,MAAwC;CAC5E,MAAM,QAAQ,gBAAgB,IAAI,KAAK,MAAM,QAAQ,KAAK,GAAG,IAAI,KAAK,MAAM,CAAC;CAC7E,KAAK,MAAM,OAAO,OAAO;EACvB,IAAI,CAAC,eAAe,GAAG,GAAG;EAC1B,IAAI,IAAI,aAAa,OAAO,IAAI;CAClC;AAEF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@purestack/ts-common",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.14",
|
|
4
4
|
"packageManager": "yarn@4.9.2",
|
|
5
5
|
"module": "./dist/ts-common.mjs",
|
|
6
6
|
"types": "./dist/ts-common.d.mts",
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@purestack/ts-html": "^1.1.
|
|
29
|
-
"@purestack/ts-style": "^1.1.
|
|
30
|
-
"@purestack/ts-util": "^1.1.
|
|
28
|
+
"@purestack/ts-html": "^1.1.14",
|
|
29
|
+
"@purestack/ts-style": "^1.1.14",
|
|
30
|
+
"@purestack/ts-util": "^1.1.14"
|
|
31
31
|
},
|
|
32
32
|
"license": "MIT",
|
|
33
33
|
"files": [
|