@kilivi/payloadcms-theme-management 1.0.8 → 1.0.9
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.
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare function inferTenantFromUrl(): string | undefined;
|
|
2
2
|
export declare function inferTenantFromCookie(): string | undefined;
|
|
3
3
|
export declare function inferTenantFromGlobal(): string | undefined;
|
|
4
|
+
export declare function inferTenantFromDomAttr(): string | undefined;
|
|
4
5
|
export declare function inferTenant(customTenant?: string): string | undefined;
|
|
5
6
|
//# sourceMappingURL=inferTenant.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inferTenant.d.ts","sourceRoot":"","sources":["../../src/utils/inferTenant.ts"],"names":[],"mappings":"AAAA,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAQvD;AAED,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,CAyB1D;AAED,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,CAc1D;AAED,wBAAgB,WAAW,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"inferTenant.d.ts","sourceRoot":"","sources":["../../src/utils/inferTenant.ts"],"names":[],"mappings":"AAAA,wBAAgB,kBAAkB,IAAI,MAAM,GAAG,SAAS,CAQvD;AAED,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,CAyB1D;AAED,wBAAgB,qBAAqB,IAAI,MAAM,GAAG,SAAS,CAc1D;AAED,wBAAgB,sBAAsB,IAAI,MAAM,GAAG,SAAS,CAY3D;AAED,wBAAgB,WAAW,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASrE"}
|
|
@@ -39,8 +39,21 @@ export function inferTenantFromGlobal() {
|
|
|
39
39
|
return undefined;
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
|
+
export function inferTenantFromDomAttr() {
|
|
43
|
+
if (typeof document === 'undefined') return undefined;
|
|
44
|
+
try {
|
|
45
|
+
// Look for common attributes placed on parent elements in the admin UI
|
|
46
|
+
const el = document.querySelector('[data-selected-tenant-id], [data-selected-tenant-slug]');
|
|
47
|
+
if (!el) return undefined;
|
|
48
|
+
const value = el.getAttribute('data-selected-tenant-id') ?? el.getAttribute('data-selected-tenant-slug');
|
|
49
|
+
return value && value.length > 0 ? value : undefined;
|
|
50
|
+
} catch (e) {
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
42
54
|
export function inferTenant(customTenant) {
|
|
43
|
-
|
|
55
|
+
// Order: explicit override -> URL params -> global runtime -> DOM attribute -> cookie
|
|
56
|
+
return customTenant ?? inferTenantFromUrl() ?? inferTenantFromGlobal() ?? inferTenantFromDomAttr() ?? inferTenantFromCookie();
|
|
44
57
|
}
|
|
45
58
|
|
|
46
59
|
//# sourceMappingURL=inferTenant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utils/inferTenant.ts"],"sourcesContent":["export function inferTenantFromUrl(): string | undefined {\n if (typeof window === 'undefined') return undefined\n try {\n const params = new URLSearchParams(window.location.search)\n return params.get('tenant') ?? params.get('tenantSlug') ?? params.get('tenantId') ?? undefined\n } catch (e) {\n return undefined\n }\n}\n\nexport function inferTenantFromCookie(): string | undefined {\n if (typeof document === 'undefined' || !document.cookie) return undefined\n try {\n const cookies = document.cookie.split(';').map((c) => c.trim())\n for (const c of cookies) {\n const [k, v] = c.split('=')\n const key = k?.trim().toLowerCase()\n if (!key || !v) continue\n if (\n [\n 'tenant',\n 'tenantslug',\n 'tenant-slug',\n 'x-tenant-id',\n 'x-tenant',\n 'payload-tenant',\n 'payload-tenant-slug',\n ].includes(key)\n )\n return decodeURIComponent(v)\n }\n return undefined\n } catch (e) {\n return undefined\n }\n}\n\nexport function inferTenantFromGlobal(): string | undefined {\n if (typeof window === 'undefined') return undefined\n try {\n const anyWin = window as unknown as Record<string, any>\n return (\n anyWin?.__payload?.tenant?.slug ||\n anyWin?.payload?.tenant ||\n anyWin?.__PAYLOAD__?.tenantSlug ||\n anyWin?.PAYLOAD?.tenantSlug ||\n undefined\n )\n } catch (e) {\n return undefined\n }\n}\n\nexport function inferTenant(customTenant?: string): string | undefined {\n return customTenant
|
|
1
|
+
{"version":3,"sources":["../../src/utils/inferTenant.ts"],"sourcesContent":["export function inferTenantFromUrl(): string | undefined {\n if (typeof window === 'undefined') return undefined\n try {\n const params = new URLSearchParams(window.location.search)\n return params.get('tenant') ?? params.get('tenantSlug') ?? params.get('tenantId') ?? undefined\n } catch (e) {\n return undefined\n }\n}\n\nexport function inferTenantFromCookie(): string | undefined {\n if (typeof document === 'undefined' || !document.cookie) return undefined\n try {\n const cookies = document.cookie.split(';').map((c) => c.trim())\n for (const c of cookies) {\n const [k, v] = c.split('=')\n const key = k?.trim().toLowerCase()\n if (!key || !v) continue\n if (\n [\n 'tenant',\n 'tenantslug',\n 'tenant-slug',\n 'x-tenant-id',\n 'x-tenant',\n 'payload-tenant',\n 'payload-tenant-slug',\n ].includes(key)\n )\n return decodeURIComponent(v)\n }\n return undefined\n } catch (e) {\n return undefined\n }\n}\n\nexport function inferTenantFromGlobal(): string | undefined {\n if (typeof window === 'undefined') return undefined\n try {\n const anyWin = window as unknown as Record<string, any>\n return (\n anyWin?.__payload?.tenant?.slug ||\n anyWin?.payload?.tenant ||\n anyWin?.__PAYLOAD__?.tenantSlug ||\n anyWin?.PAYLOAD?.tenantSlug ||\n undefined\n )\n } catch (e) {\n return undefined\n }\n}\n\nexport function inferTenantFromDomAttr(): string | undefined {\n if (typeof document === 'undefined') return undefined\n try {\n // Look for common attributes placed on parent elements in the admin UI\n const el = document.querySelector('[data-selected-tenant-id], [data-selected-tenant-slug]')\n if (!el) return undefined\n const value =\n el.getAttribute('data-selected-tenant-id') ?? el.getAttribute('data-selected-tenant-slug')\n return value && value.length > 0 ? value : undefined\n } catch (e) {\n return undefined\n }\n}\n\nexport function inferTenant(customTenant?: string): string | undefined {\n // Order: explicit override -> URL params -> global runtime -> DOM attribute -> cookie\n return (\n customTenant ??\n inferTenantFromUrl() ??\n inferTenantFromGlobal() ??\n inferTenantFromDomAttr() ??\n inferTenantFromCookie()\n )\n}\n"],"names":["inferTenantFromUrl","window","undefined","params","URLSearchParams","location","search","get","e","inferTenantFromCookie","document","cookie","cookies","split","map","c","trim","k","v","key","toLowerCase","includes","decodeURIComponent","inferTenantFromGlobal","anyWin","__payload","tenant","slug","payload","__PAYLOAD__","tenantSlug","PAYLOAD","inferTenantFromDomAttr","el","querySelector","value","getAttribute","length","inferTenant","customTenant"],"mappings":"AAAA,OAAO,SAASA;IACd,IAAI,OAAOC,WAAW,aAAa,OAAOC;IAC1C,IAAI;QACF,MAAMC,SAAS,IAAIC,gBAAgBH,OAAOI,QAAQ,CAACC,MAAM;QACzD,OAAOH,OAAOI,GAAG,CAAC,aAAaJ,OAAOI,GAAG,CAAC,iBAAiBJ,OAAOI,GAAG,CAAC,eAAeL;IACvF,EAAE,OAAOM,GAAG;QACV,OAAON;IACT;AACF;AAEA,OAAO,SAASO;IACd,IAAI,OAAOC,aAAa,eAAe,CAACA,SAASC,MAAM,EAAE,OAAOT;IAChE,IAAI;QACF,MAAMU,UAAUF,SAASC,MAAM,CAACE,KAAK,CAAC,KAAKC,GAAG,CAAC,CAACC,IAAMA,EAAEC,IAAI;QAC5D,KAAK,MAAMD,KAAKH,QAAS;YACvB,MAAM,CAACK,GAAGC,EAAE,GAAGH,EAAEF,KAAK,CAAC;YACvB,MAAMM,MAAMF,GAAGD,OAAOI;YACtB,IAAI,CAACD,OAAO,CAACD,GAAG;YAChB,IACE;gBACE;gBACA;gBACA;gBACA;gBACA;gBACA;gBACA;aACD,CAACG,QAAQ,CAACF,MAEX,OAAOG,mBAAmBJ;QAC9B;QACA,OAAOhB;IACT,EAAE,OAAOM,GAAG;QACV,OAAON;IACT;AACF;AAEA,OAAO,SAASqB;IACd,IAAI,OAAOtB,WAAW,aAAa,OAAOC;IAC1C,IAAI;QACF,MAAMsB,SAASvB;QACf,OACEuB,QAAQC,WAAWC,QAAQC,QAC3BH,QAAQI,SAASF,UACjBF,QAAQK,aAAaC,cACrBN,QAAQO,SAASD,cACjB5B;IAEJ,EAAE,OAAOM,GAAG;QACV,OAAON;IACT;AACF;AAEA,OAAO,SAAS8B;IACd,IAAI,OAAOtB,aAAa,aAAa,OAAOR;IAC5C,IAAI;QACF,uEAAuE;QACvE,MAAM+B,KAAKvB,SAASwB,aAAa,CAAC;QAClC,IAAI,CAACD,IAAI,OAAO/B;QAChB,MAAMiC,QACJF,GAAGG,YAAY,CAAC,8BAA8BH,GAAGG,YAAY,CAAC;QAChE,OAAOD,SAASA,MAAME,MAAM,GAAG,IAAIF,QAAQjC;IAC7C,EAAE,OAAOM,GAAG;QACV,OAAON;IACT;AACF;AAEA,OAAO,SAASoC,YAAYC,YAAqB;IAC/C,sFAAsF;IACtF,OACEA,gBACAvC,wBACAuB,2BACAS,4BACAvB;AAEJ"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kilivi/payloadcms-theme-management",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.9",
|
|
4
4
|
"description": "Theme configuration plugin for Payload CMS v3 with 60+ professional themes and standalone collection support",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|