@pantheon-systems/css-client 0.12.0 → 0.14.0

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.
Files changed (80) hide show
  1. package/README.md +1 -1
  2. package/dist/auth.js +0 -25
  3. package/dist/auth.js.map +1 -1
  4. package/dist/broker.d.ts +30 -2
  5. package/dist/broker.d.ts.map +1 -1
  6. package/dist/broker.js +92 -33
  7. package/dist/broker.js.map +1 -1
  8. package/dist/client.d.ts +12 -4
  9. package/dist/client.d.ts.map +1 -1
  10. package/dist/client.js +5 -97
  11. package/dist/client.js.map +1 -1
  12. package/dist/content.js +0 -8
  13. package/dist/content.js.map +1 -1
  14. package/dist/endpoints/agent-edit.js +0 -66
  15. package/dist/endpoints/agent-edit.js.map +1 -1
  16. package/dist/endpoints/agent-registry.js +0 -46
  17. package/dist/endpoints/agent-registry.js.map +1 -1
  18. package/dist/endpoints/base.js +1 -56
  19. package/dist/endpoints/base.js.map +1 -1
  20. package/dist/endpoints/branches.js +0 -20
  21. package/dist/endpoints/branches.js.map +1 -1
  22. package/dist/endpoints/checkpoints.js +0 -23
  23. package/dist/endpoints/checkpoints.js.map +1 -1
  24. package/dist/endpoints/documents.d.ts.map +1 -1
  25. package/dist/endpoints/documents.js +3 -32
  26. package/dist/endpoints/documents.js.map +1 -1
  27. package/dist/endpoints/index.d.ts +2 -0
  28. package/dist/endpoints/index.d.ts.map +1 -1
  29. package/dist/endpoints/index.js +2 -7
  30. package/dist/endpoints/index.js.map +1 -1
  31. package/dist/endpoints/merge.d.ts +17 -1
  32. package/dist/endpoints/merge.d.ts.map +1 -1
  33. package/dist/endpoints/merge.js +26 -32
  34. package/dist/endpoints/merge.js.map +1 -1
  35. package/dist/endpoints/migration-conflicts.js +0 -11
  36. package/dist/endpoints/migration-conflicts.js.map +1 -1
  37. package/dist/endpoints/presence.js +0 -44
  38. package/dist/endpoints/presence.js.map +1 -1
  39. package/dist/endpoints/relations.d.ts +20 -0
  40. package/dist/endpoints/relations.d.ts.map +1 -0
  41. package/dist/endpoints/relations.js +10 -0
  42. package/dist/endpoints/relations.js.map +1 -0
  43. package/dist/endpoints/sites.js +0 -11
  44. package/dist/endpoints/sites.js.map +1 -1
  45. package/dist/endpoints/templates.js +0 -41
  46. package/dist/endpoints/templates.js.map +1 -1
  47. package/dist/endpoints/translations.d.ts +44 -0
  48. package/dist/endpoints/translations.d.ts.map +1 -0
  49. package/dist/endpoints/translations.js +39 -0
  50. package/dist/endpoints/translations.js.map +1 -0
  51. package/dist/endpoints/versions.js +0 -25
  52. package/dist/endpoints/versions.js.map +1 -1
  53. package/dist/errors.js +0 -65
  54. package/dist/errors.js.map +1 -1
  55. package/dist/index.d.ts +4 -4
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +1 -13
  58. package/dist/index.js.map +1 -1
  59. package/dist/jwt-utils.js +0 -6
  60. package/dist/jwt-utils.js.map +1 -1
  61. package/dist/oauth.d.ts +2 -1
  62. package/dist/oauth.d.ts.map +1 -1
  63. package/dist/oauth.js +0 -27
  64. package/dist/oauth.js.map +1 -1
  65. package/dist/realtime.d.ts +21 -11
  66. package/dist/realtime.d.ts.map +1 -1
  67. package/dist/realtime.js +57 -232
  68. package/dist/realtime.js.map +1 -1
  69. package/dist/sdk-version.d.ts +1 -1
  70. package/dist/sdk-version.js +1 -9
  71. package/dist/sdk-version.js.map +1 -1
  72. package/dist/telemetry-headers.js +0 -28
  73. package/dist/telemetry-headers.js.map +1 -1
  74. package/dist/types.d.ts +180 -6
  75. package/dist/types.d.ts.map +1 -1
  76. package/dist/types.js +7 -6
  77. package/dist/types.js.map +1 -1
  78. package/dist/utils.js +0 -11
  79. package/dist/utils.js.map +1 -1
  80. package/package.json +3 -3
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @pantheon-systems/css-client
2
2
 
3
- TypeScript API client for Pantheon's Collaborative State System (CSS) — documents, content,
3
+ TypeScript API client for Pantheon's P1 content platform — documents, content,
4
4
  authentication, and the realtime collaboration channel.
5
5
 
6
6
  > Part of Pantheon's **P1** platform. It is published publicly so P1 applications can install
package/dist/auth.js CHANGED
@@ -1,24 +1,6 @@
1
- /**
2
- * P1 Client Authentication Utilities
3
- *
4
- * Functions for creating authentication providers.
5
- */
6
- /**
7
- * Creates an API key authentication provider.
8
- * Uses X-API-Key header format for agent API keys.
9
- *
10
- * @param apiKey - The API key to use
11
- * @returns Auth provider function
12
- */
13
1
  export function createApiKeyAuth(apiKey) {
14
2
  return async () => `ApiKey ${apiKey}`;
15
3
  }
16
- /**
17
- * Creates a token-based authentication provider.
18
- *
19
- * @param tokenStorage - Storage for the auth token
20
- * @returns Auth provider function
21
- */
22
4
  export function createTokenAuth(tokenStorage) {
23
5
  return async () => {
24
6
  const token = await tokenStorage.getToken();
@@ -28,10 +10,6 @@ export function createTokenAuth(tokenStorage) {
28
10
  return `Bearer ${token}`;
29
11
  };
30
12
  }
31
- /**
32
- * In-memory token storage implementation.
33
- * Useful for testing or single-session apps.
34
- */
35
13
  export class InMemoryTokenStorage {
36
14
  token = null;
37
15
  async getToken() {
@@ -44,9 +22,6 @@ export class InMemoryTokenStorage {
44
22
  this.token = null;
45
23
  }
46
24
  }
47
- /**
48
- * Browser localStorage token storage implementation.
49
- */
50
25
  export class LocalStorageTokenStorage {
51
26
  key;
52
27
  constructor(key = 'p1_auth_token') {
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,OAAO,KAAK,IAAI,EAAE,CAAC,UAAU,MAAM,EAAE,CAAC;AACxC,CAAC;AAWD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,YAA0B;IACxD,OAAO,KAAK,IAAI,EAAE;QAChB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,UAAU,KAAK,EAAE,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,oBAAoB;IACvB,KAAK,GAAkB,IAAI,CAAC;IAEpC,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,wBAAwB;IACN;IAA7B,YAA6B,MAAM,eAAe;QAArB,QAAG,GAAH,GAAG,CAAkB;IAAG,CAAC;IAEtD,KAAK,CAAC,QAAQ;QACZ,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAmBA,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,OAAO,KAAK,IAAI,EAAE,CAAC,UAAU,MAAM,EAAE,CAAC;AACxC,CAAC;AAiBD,MAAM,UAAU,eAAe,CAAC,YAA0B;IACxD,OAAO,KAAK,IAAI,EAAE;QAChB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,UAAU,KAAK,EAAE,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC;AAMD,MAAM,OAAO,oBAAoB;IACvB,KAAK,GAAkB,IAAI,CAAC;IAEpC,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CACF;AAKD,MAAM,OAAO,wBAAwB;IACN;IAA7B,YAA6B,MAAM,eAAe;QAArB,QAAG,GAAH,GAAG,CAAkB;IAAG,CAAC;IAEtD,KAAK,CAAC,QAAQ;QACZ,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,OAAO,YAAY,KAAK,WAAW,EAAE,CAAC;YACxC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;CACF"}
package/dist/broker.d.ts CHANGED
@@ -4,10 +4,10 @@
4
4
  * Implements the brokered auth flow. Supports two modes:
5
5
  *
6
6
  * **Proxy mode** (default): calls go to /p1/auth/login and /p1/auth/redeem
7
- * on the app's own server, which proxies to the CSS backend with the API key.
7
+ * on the app's own server, which proxies to the backend with the API key.
8
8
  *
9
9
  * **Direct mode**: when siteApiToken is provided, calls go straight to the
10
- * CSS backend with a Bearer token. Used for standalone (non-Next.js) apps.
10
+ * backend with a Bearer token. Used for standalone (non-Next.js) apps.
11
11
  *
12
12
  * Flow:
13
13
  * 1. POST login endpoint → { transactionId, loginUrl }
@@ -30,11 +30,39 @@ export interface BrokerRedeemResult {
30
30
  token: string;
31
31
  userInfo: OAuthUserInfo | null;
32
32
  }
33
+ export interface BrokerLogoutConfig {
34
+ cssBaseUrl: string;
35
+ siteApiToken?: string;
36
+ storageKey?: string;
37
+ }
38
+ export type LogoutOutcome = {
39
+ status: 'signed_out';
40
+ logoutUrl: string;
41
+ } | {
42
+ status: 'no_session';
43
+ } | {
44
+ status: 'error';
45
+ message: string;
46
+ };
33
47
  export interface BrokerRedeemConfig {
34
48
  cssBaseUrl: string;
35
49
  siteApiToken?: string;
36
50
  storageKey?: string;
37
51
  }
52
+ /**
53
+ * Initiates broker logout by calling the backend and returning the Auth0
54
+ * logout URL. Does NOT navigate — the caller is responsible for redirecting.
55
+ *
56
+ * Outcomes:
57
+ * signed_out — the backend returned a logout URL; caller should navigate there.
58
+ * no_session — No stored broker token; nothing to sign out of.
59
+ * error — Backend unreachable or returned an error; credentials left intact
60
+ * so the caller can retry or fall back gracefully.
61
+ *
62
+ * The broker token is removed from storage only on `signed_out`, after the
63
+ * URL is successfully obtained. On `error`, the token is preserved for retry.
64
+ */
65
+ export declare function brokerLogout(config: BrokerLogoutConfig): Promise<LogoutOutcome>;
38
66
  export declare function createBrokerAuth(config: BrokerAuthConfig): OAuthSession;
39
67
  export declare function hasPendingBrokerLogin(): boolean;
40
68
  export declare function redeemPendingBrokerLogin(config: BrokerRedeemConfig): Promise<BrokerRedeemResult | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../src/broker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI9D,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA0CD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,YAAY,CA0HvE;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAG/C;AAED,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAqDpC"}
1
+ {"version":3,"file":"broker.d.ts","sourceRoot":"","sources":["../src/broker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAI9D,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,GACxB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAwDD;;;;;;;;;;;;GAYG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CAmDrF;AAwBD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,YAAY,CAqIvE;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAI/C;AAED,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAsDpC"}
package/dist/broker.js CHANGED
@@ -1,23 +1,30 @@
1
- /**
2
- * Broker Authentication
3
- *
4
- * Implements the brokered auth flow. Supports two modes:
5
- *
6
- * **Proxy mode** (default): calls go to /p1/auth/login and /p1/auth/redeem
7
- * on the app's own server, which proxies to the CSS backend with the API key.
8
- *
9
- * **Direct mode**: when siteApiToken is provided, calls go straight to the
10
- * CSS backend with a Bearer token. Used for standalone (non-Next.js) apps.
11
- *
12
- * Flow:
13
- * 1. POST login endpoint → { transactionId, loginUrl }
14
- * 2. Open loginUrl for the user (via onLoginUrl callback)
15
- * 3. Poll POST redeem endpoint with transactionId until approved
16
- * 4. Store the broker JWT and populate user info
17
- */
18
1
  import { isTokenExpiredOrExpiring, extractUserInfo } from './jwt-utils.js';
19
2
  import { sleep, trimTrailingSlash } from './utils.js';
20
- const PENDING_TX_KEY = 'css_broker_pending_tx';
3
+ const PENDING_TX_KEY = 'ccr_broker_pending_tx';
4
+ const DEFAULT_TOKEN_KEY = 'ccr_broker_token';
5
+ const LEGACY_PENDING_TX_KEY = 'css_broker_pending_tx';
6
+ const LEGACY_TOKEN_KEY = 'css_broker_token';
7
+ function migrateLegacyKey(storage, legacyKey, key) {
8
+ const legacy = storage.getItem(legacyKey);
9
+ if (legacy !== null) {
10
+ if (storage.getItem(key) === null) {
11
+ storage.setItem(key, legacy);
12
+ }
13
+ storage.removeItem(legacyKey);
14
+ }
15
+ }
16
+ function resolveTokenKey(config) {
17
+ const storageKey = config.storageKey ?? DEFAULT_TOKEN_KEY;
18
+ if (typeof window !== 'undefined' && storageKey === DEFAULT_TOKEN_KEY) {
19
+ migrateLegacyKey(window.localStorage, LEGACY_TOKEN_KEY, storageKey);
20
+ }
21
+ return storageKey;
22
+ }
23
+ function migratePendingTxKey() {
24
+ if (typeof window !== 'undefined') {
25
+ migrateLegacyKey(window.sessionStorage, LEGACY_PENDING_TX_KEY, PENDING_TX_KEY);
26
+ }
27
+ }
21
28
  const PROXY_PATH = '/p1/auth';
22
29
  function brokerEndpoint(config, action) {
23
30
  if (config.siteApiToken) {
@@ -25,21 +32,63 @@ function brokerEndpoint(config, action) {
25
32
  }
26
33
  return `${PROXY_PATH}/${action}`;
27
34
  }
35
+ function brokerLogoutEndpoint(config) {
36
+ if (config.siteApiToken) {
37
+ return `${trimTrailingSlash(config.cssBaseUrl)}/broker/logout`;
38
+ }
39
+ return `${PROXY_PATH}/logout`;
40
+ }
28
41
  function brokerHeaders(config) {
29
42
  if (config.siteApiToken) {
30
43
  return { 'Authorization': `Bearer ${config.siteApiToken}` };
31
44
  }
32
45
  return {};
33
46
  }
34
- /**
35
- * State the browser's origin so the server side can propose it as the post-login
36
- * redirect target (PCC-3531). Makes no security decision — CCR validates it.
37
- *
38
- * Two shapes because the hops differ: proxy mode sends `origin` only, since the
39
- * app's route composes the full URL from that plus its own base path; direct mode
40
- * has no server hop, so it sends the complete URL. Undefined with no location, so
41
- * the request stays as it was before this existed.
42
- */
47
+ export async function brokerLogout(config) {
48
+ if (typeof window === 'undefined') {
49
+ return { status: 'no_session' };
50
+ }
51
+ const storageKey = resolveTokenKey(config);
52
+ const token = window.localStorage.getItem(storageKey);
53
+ const headers = { 'Content-Type': 'application/json' };
54
+ if (token) {
55
+ headers['Authorization'] = `Bearer ${token}`;
56
+ }
57
+ try {
58
+ const response = await fetch(brokerLogoutEndpoint(config), {
59
+ method: 'POST',
60
+ headers,
61
+ body: JSON.stringify({ returnTo: window.location.origin }),
62
+ signal: AbortSignal.timeout(10_000),
63
+ });
64
+ if (!response.ok) {
65
+ return { status: 'error', message: `Broker logout failed (${response.status})` };
66
+ }
67
+ const { logoutUrl } = (await response.json());
68
+ if (typeof logoutUrl !== 'string') {
69
+ return { status: 'error', message: 'Broker logout response missing logoutUrl' };
70
+ }
71
+ let parsedLogoutUrl;
72
+ try {
73
+ parsedLogoutUrl = new URL(logoutUrl);
74
+ }
75
+ catch {
76
+ return { status: 'error', message: 'Broker logout response has a malformed logoutUrl' };
77
+ }
78
+ if (parsedLogoutUrl.protocol !== 'https:') {
79
+ return { status: 'error', message: 'Broker logout response has a non-HTTPS logoutUrl' };
80
+ }
81
+ if (token)
82
+ window.localStorage.removeItem(storageKey);
83
+ return { status: 'signed_out', logoutUrl };
84
+ }
85
+ catch (err) {
86
+ return {
87
+ status: 'error',
88
+ message: err instanceof Error ? err.message : 'Broker logout request failed',
89
+ };
90
+ }
91
+ }
43
92
  function buildLoginBody(config) {
44
93
  const location = typeof window === 'undefined' ? undefined : window.location;
45
94
  const origin = location?.origin;
@@ -52,7 +101,7 @@ function buildLoginBody(config) {
52
101
  return { origin };
53
102
  }
54
103
  export function createBrokerAuth(config) {
55
- const storageKey = config.storageKey ?? 'css_broker_token';
104
+ const storageKey = resolveTokenKey(config);
56
105
  const pollIntervalMs = config.pollIntervalMs ?? 2000;
57
106
  const maxPollAttempts = config.maxPollAttempts ?? 150;
58
107
  const loginMode = config.loginMode ?? 'popup';
@@ -75,12 +124,11 @@ export function createBrokerAuth(config) {
75
124
  if (!loginResponse.ok) {
76
125
  let detail = '';
77
126
  try {
78
- const body = await loginResponse.json();
127
+ const body = (await loginResponse.json());
79
128
  if (body.error)
80
129
  detail = `: ${body.error}`;
81
130
  }
82
131
  catch {
83
- // non-JSON body — status code alone is still useful
84
132
  }
85
133
  throw new Error(`Broker login failed (${loginResponse.status})${detail}`);
86
134
  }
@@ -126,10 +174,19 @@ export function createBrokerAuth(config) {
126
174
  throw new Error('Broker login timed out waiting for user approval');
127
175
  },
128
176
  async logout() {
129
- if (typeof window !== 'undefined') {
130
- window.localStorage.removeItem(storageKey);
177
+ const outcome = await brokerLogout({
178
+ cssBaseUrl: config.cssBaseUrl,
179
+ storageKey,
180
+ ...(config.siteApiToken !== undefined ? { siteApiToken: config.siteApiToken } : {}),
181
+ });
182
+ if (outcome.status === 'error') {
183
+ return outcome;
131
184
  }
132
185
  userInfo = null;
186
+ if (outcome.status === 'signed_out' && typeof window !== 'undefined') {
187
+ window.location.href = outcome.logoutUrl;
188
+ }
189
+ return outcome;
133
190
  },
134
191
  isAuthenticated() {
135
192
  if (typeof window === 'undefined')
@@ -158,11 +215,13 @@ export function createBrokerAuth(config) {
158
215
  export function hasPendingBrokerLogin() {
159
216
  if (typeof window === 'undefined')
160
217
  return false;
218
+ migratePendingTxKey();
161
219
  return window.sessionStorage.getItem(PENDING_TX_KEY) !== null;
162
220
  }
163
221
  export async function redeemPendingBrokerLogin(config) {
164
222
  if (typeof window === 'undefined')
165
223
  return null;
224
+ migratePendingTxKey();
166
225
  const raw = window.sessionStorage.getItem(PENDING_TX_KEY);
167
226
  if (!raw)
168
227
  return null;
@@ -174,7 +233,7 @@ export async function redeemPendingBrokerLogin(config) {
174
233
  window.sessionStorage.removeItem(PENDING_TX_KEY);
175
234
  return null;
176
235
  }
177
- const storageKey = config.storageKey ?? 'css_broker_token';
236
+ const storageKey = resolveTokenKey(config);
178
237
  const endpoint = config.siteApiToken
179
238
  ? `${trimTrailingSlash(config.cssBaseUrl)}/broker/redeem`
180
239
  : `${PROXY_PATH}/redeem`;
@@ -1 +1 @@
1
- {"version":3,"file":"broker.js","sourceRoot":"","sources":["../src/broker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"broker.js","sourceRoot":"","sources":["../src/broker.ts"],"names":[],"mappings":"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"}
package/dist/client.d.ts CHANGED
@@ -1,12 +1,12 @@
1
1
  /**
2
- * CSS Client
2
+ * P1 API Client
3
3
  *
4
- * Main client class for interacting with the Collaborative State System API.
4
+ * Main client class for interacting with Pantheon's P1 content platform API.
5
5
  */
6
6
  import type { AuthProvider } from './auth.js';
7
7
  import type { Principal } from './types.js';
8
8
  import type { SdkIdentity } from './telemetry-headers.js';
9
- import { BaseEndpoint, SitesEndpoint, BranchesEndpoint, DocumentsEndpoint, VersionsEndpoint, CheckpointsEndpoint, PresenceEndpoint, AgentRegistryEndpoint, AgentEditEndpoint, MergeEndpoint, TemplatesEndpoint, MigrationConflictsEndpoint, QueriesEndpoint } from './endpoints/index.js';
9
+ import { BaseEndpoint, SitesEndpoint, BranchesEndpoint, DocumentsEndpoint, VersionsEndpoint, CheckpointsEndpoint, PresenceEndpoint, AgentRegistryEndpoint, AgentEditEndpoint, MergeEndpoint, TemplatesEndpoint, MigrationConflictsEndpoint, QueriesEndpoint, TranslationsEndpoint, RelationsEndpoint } from './endpoints/index.js';
10
10
  /**
11
11
  * Configuration options for P1Client.
12
12
  */
@@ -68,7 +68,7 @@ interface InternalConfig {
68
68
  baseEndpoint: BaseEndpoint;
69
69
  }
70
70
  /**
71
- * Client for the Collaborative State System API.
71
+ * Client for Pantheon's P1 content platform API.
72
72
  *
73
73
  * @example
74
74
  * ```typescript
@@ -142,6 +142,14 @@ export declare class P1Client {
142
142
  * Query operations (content type queries and results).
143
143
  */
144
144
  readonly queries: QueriesEndpoint;
145
+ /**
146
+ * Localization operations (create and list translation variants).
147
+ */
148
+ readonly translations: TranslationsEndpoint;
149
+ /**
150
+ * Relation edges: upstream drift for localization and template derivation.
151
+ */
152
+ readonly relations: RelationsEndpoint;
145
153
  constructor(config: P1ClientConfig | InternalConfig);
146
154
  /**
147
155
  * Create a new client instance with a different principal.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE9C;;;;OAIG;IACH,GAAG,CAAC,EAAE,WAAW,CAAC;IAElB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C;;OAEG;IACH,SAAgB,KAAK,EAAE,aAAa,CAAC;IAErC;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAE7C;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,WAAW,EAAE,mBAAmB,CAAC;IAEjD;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,aAAa,EAAE,qBAAqB,CAAC;IAErD;;OAEG;IACH,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAE7C;;OAEG;IACH,SAAgB,KAAK,EAAE,aAAa,CAAC;IAErC;;OAEG;IACH,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAE7C;;OAEG;IACH,SAAgB,kBAAkB,EAAE,0BAA0B,CAAC;IAE/D;;OAEG;IACH,SAAgB,OAAO,EAAE,eAAe,CAAC;gBAE7B,MAAM,EAAE,cAAc,GAAG,cAAc;IA4CnD;;;;;;OAMG;IACH,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,QAAQ;IAK7C;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ;CAI3C"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE9C;;;;OAIG;IACH,GAAG,CAAC,EAAE,WAAW,CAAC;IAElB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;CAC3C;AAED;;GAEG;AACH,UAAU,cAAc;IACtB,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAE5C;;OAEG;IACH,SAAgB,KAAK,EAAE,aAAa,CAAC;IAErC;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAE7C;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,WAAW,EAAE,mBAAmB,CAAC;IAEjD;;OAEG;IACH,SAAgB,QAAQ,EAAE,gBAAgB,CAAC;IAE3C;;OAEG;IACH,SAAgB,aAAa,EAAE,qBAAqB,CAAC;IAErD;;OAEG;IACH,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAE7C;;OAEG;IACH,SAAgB,KAAK,EAAE,aAAa,CAAC;IAErC;;OAEG;IACH,SAAgB,SAAS,EAAE,iBAAiB,CAAC;IAE7C;;OAEG;IACH,SAAgB,kBAAkB,EAAE,0BAA0B,CAAC;IAE/D;;OAEG;IACH,SAAgB,OAAO,EAAE,eAAe,CAAC;IAEzC;;OAEG;IACH,SAAgB,YAAY,EAAE,oBAAoB,CAAC;IAEnD;;OAEG;IACH,SAAgB,SAAS,EAAE,iBAAiB,CAAC;gBAEjC,MAAM,EAAE,cAAc,GAAG,cAAc;IAkDnD;;;;;;OAMG;IACH,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,QAAQ;IAK7C;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ;CAI3C"}
package/dist/client.js CHANGED
@@ -1,92 +1,25 @@
1
- /**
2
- * CSS Client
3
- *
4
- * Main client class for interacting with the Collaborative State System API.
5
- */
6
- import { BaseEndpoint, SitesEndpoint, BranchesEndpoint, DocumentsEndpoint, VersionsEndpoint, CheckpointsEndpoint, PresenceEndpoint, AgentRegistryEndpoint, AgentEditEndpoint, MergeEndpoint, TemplatesEndpoint, MigrationConflictsEndpoint, QueriesEndpoint, } from './endpoints/index.js';
7
- /**
8
- * Client for the Collaborative State System API.
9
- *
10
- * @example
11
- * ```typescript
12
- * const client = new P1Client({
13
- * baseUrl: 'http://localhost:8787',
14
- * apiKey: 'your-api-key',
15
- * principal: { id: 'user-123', type: 'user' },
16
- * });
17
- *
18
- * // List sites
19
- * const sites = await client.sites.list();
20
- *
21
- * // Get branches for a site
22
- * const branches = await client.branches.list(siteId);
23
- *
24
- * // Create a document version
25
- * const version = await client.versions.create(siteId, {
26
- * documentId: 'doc-123',
27
- * branchId: 'branch-456',
28
- * snapshot: { content: [], root: {} },
29
- * });
30
- * ```
31
- */
1
+ import { BaseEndpoint, SitesEndpoint, BranchesEndpoint, DocumentsEndpoint, VersionsEndpoint, CheckpointsEndpoint, PresenceEndpoint, AgentRegistryEndpoint, AgentEditEndpoint, MergeEndpoint, TemplatesEndpoint, MigrationConflictsEndpoint, QueriesEndpoint, TranslationsEndpoint, RelationsEndpoint, } from './endpoints/index.js';
32
2
  export class P1Client {
33
3
  baseEndpoint;
34
- /**
35
- * Site operations.
36
- */
37
4
  sites;
38
- /**
39
- * Branch operations.
40
- */
41
5
  branches;
42
- /**
43
- * Document operations.
44
- */
45
6
  documents;
46
- /**
47
- * Document version operations.
48
- */
49
7
  versions;
50
- /**
51
- * Checkpoint operations.
52
- */
53
8
  checkpoints;
54
- /**
55
- * Presence queries for sites, branches, and agents.
56
- */
57
9
  presence;
58
- /**
59
- * Agent registry operations.
60
- */
61
10
  agentRegistry;
62
- /**
63
- * Agent edit workflow operations.
64
- */
65
11
  agentEdit;
66
- /**
67
- * Merge operations (checks, previews, execution, merge requests).
68
- */
69
12
  merge;
70
- /**
71
- * Content type template operations.
72
- */
73
13
  templates;
74
- /**
75
- * Migration conflict operations.
76
- */
77
14
  migrationConflicts;
78
- /**
79
- * Query operations (content type queries and results).
80
- */
81
15
  queries;
16
+ translations;
17
+ relations;
82
18
  constructor(config) {
83
- // Check if this is an internal config (has baseEndpoint)
84
19
  if ('baseEndpoint' in config) {
85
20
  this.baseEndpoint = config.baseEndpoint;
86
21
  }
87
22
  else {
88
- // Create auth provider from API key if provided
89
- // Use "ApiKey " prefix to signal X-API-Key header should be used
90
23
  const authProvider = config.authProvider ?? (config.apiKey ? async () => `ApiKey ${config.apiKey}` : undefined);
91
24
  this.baseEndpoint = new BaseEndpoint({
92
25
  baseUrl: config.baseUrl,
@@ -98,50 +31,25 @@ export class P1Client {
98
31
  getTraceparent: config.getTraceparent,
99
32
  });
100
33
  }
101
- // Initialize endpoint instances
102
34
  this.sites = new SitesEndpoint(this.baseEndpoint);
103
35
  this.branches = new BranchesEndpoint(this.baseEndpoint);
104
36
  this.documents = new DocumentsEndpoint(this.baseEndpoint);
105
37
  this.versions = new VersionsEndpoint(this.baseEndpoint);
106
38
  this.checkpoints = new CheckpointsEndpoint(this.baseEndpoint);
107
- // Agent Politeness endpoints
108
39
  this.presence = new PresenceEndpoint(this.baseEndpoint);
109
40
  this.agentRegistry = new AgentRegistryEndpoint(this.baseEndpoint);
110
41
  this.agentEdit = new AgentEditEndpoint(this.baseEndpoint);
111
- // Merge endpoints
112
42
  this.merge = new MergeEndpoint(this.baseEndpoint);
113
- // Template endpoints
114
43
  this.templates = new TemplatesEndpoint(this.baseEndpoint);
115
44
  this.migrationConflicts = new MigrationConflictsEndpoint(this.baseEndpoint);
116
- // Query endpoints
117
45
  this.queries = new QueriesEndpoint(this.baseEndpoint);
46
+ this.translations = new TranslationsEndpoint(this.baseEndpoint);
47
+ this.relations = new RelationsEndpoint(this.baseEndpoint);
118
48
  }
119
- /**
120
- * Create a new client instance with a different principal.
121
- * Useful for making requests on behalf of different users.
122
- *
123
- * @param principal - The principal to use for requests
124
- * @returns A new P1Client instance with the updated principal
125
- */
126
49
  withPrincipal(principal) {
127
50
  const newBaseEndpoint = this.baseEndpoint.withPrincipal(principal);
128
51
  return new P1Client({ baseEndpoint: newBaseEndpoint });
129
52
  }
130
- /**
131
- * Create a new client instance with session ID for agent authorization.
132
- * The session ID is obtained from startEdit() and enables server-side
133
- * enforcement of the Agent Politeness Protocol.
134
- *
135
- * @param sessionId - The session ID from startEdit()
136
- * @returns A new P1Client instance with the session ID set
137
- *
138
- * @example
139
- * ```typescript
140
- * const session = await client.agentEdit.startEdit(siteId, branchId, docPath, context);
141
- * const authorizedClient = client.withSessionId(session.sessionId);
142
- * await authorizedClient.versions.create(siteId, params);
143
- * ```
144
- */
145
53
  withSessionId(sessionId) {
146
54
  const newBaseEndpoint = this.baseEndpoint.withSessionId(sessionId);
147
55
  return new P1Client({ baseEndpoint: newBaseEndpoint });
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,0BAA0B,EAC1B,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAuE9B;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,QAAQ;IACF,YAAY,CAAe;IAE5C;;OAEG;IACa,KAAK,CAAgB;IAErC;;OAEG;IACa,QAAQ,CAAmB;IAE3C;;OAEG;IACa,SAAS,CAAoB;IAE7C;;OAEG;IACa,QAAQ,CAAmB;IAE3C;;OAEG;IACa,WAAW,CAAsB;IAEjD;;OAEG;IACa,QAAQ,CAAmB;IAE3C;;OAEG;IACa,aAAa,CAAwB;IAErD;;OAEG;IACa,SAAS,CAAoB;IAE7C;;OAEG;IACa,KAAK,CAAgB;IAErC;;OAEG;IACa,SAAS,CAAoB;IAE7C;;OAEG;IACa,kBAAkB,CAA6B;IAE/D;;OAEG;IACa,OAAO,CAAkB;IAEzC,YAAY,MAAuC;QACjD,yDAAyD;QACzD,IAAI,cAAc,IAAI,MAAM,EAAE,CAAC;YAC7B,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,gDAAgD;YAChD,iEAAiE;YACjE,MAAM,YAAY,GAChB,MAAM,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAE7F,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC;gBACnC,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,YAAY;gBACZ,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,cAAc,EAAE,MAAM,CAAC,cAAc;aACtC,CAAC,CAAC;QACL,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,KAAK,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,WAAW,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE9D,6BAA6B;QAC7B,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,aAAa,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE1D,kBAAkB;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAElD,qBAAqB;QACrB,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,kBAAkB,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE5E,kBAAkB;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,SAAoB;QAChC,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACnE,OAAO,IAAI,QAAQ,CAAC,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,aAAa,CAAC,SAAiB;QAC7B,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACnE,OAAO,IAAI,QAAQ,CAAC,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC,CAAC;IACzD,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/content.js CHANGED
@@ -1,10 +1,3 @@
1
- /**
2
- * P1 Content Client
3
- *
4
- * Read-only client for fetching published content from the P1 content delivery API.
5
- * Designed for server-side use (e.g., Next.js SSR/SSG) without pulling in
6
- * browser dependencies like partysocket.
7
- */
8
1
  import { P1ApiError } from './errors.js';
9
2
  function trimTrailingSlashes(value) {
10
3
  let end = value.length;
@@ -30,7 +23,6 @@ export class P1ContentClient {
30
23
  this.branchId = config.branchId;
31
24
  }
32
25
  async getPage(documentPath) {
33
- // Special case: "/" is the root page - don't include it in the URL path
34
26
  const cleanPath = documentPath === '/' ? '' : trimLeadingSlashes(documentPath);
35
27
  const pathSegment = cleanPath ? `/${cleanPath}` : '';
36
28
  let url = `${this.baseUrl}/api/sites/${this.siteId}/content${pathSegment}`;
@@ -1 +1 @@
1
- {"version":3,"file":"content.js","sourceRoot":"","sources":["../src/content.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AA0DzC,SAAS,mBAAmB,CAAC,KAAa;IACxC,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;IACvB,OAAO,GAAG,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG;QAAE,GAAG,EAAE,CAAC;IAChD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,OAAO,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG;QAAE,KAAK,EAAE,CAAC;IAC7D,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,OAAO,eAAe;IAClB,OAAO,CAAS;IAChB,QAAQ,CAAS;IACjB,MAAM,CAAS;IACf,QAAQ,CAAU;IAE1B,YAAY,MAA6B;QACvC,IAAI,CAAC,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,YAAoB;QAChC,wEAAwE;QACxE,MAAM,SAAS,GAAG,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,cAAc,IAAI,CAAC,MAAM,WAAW,WAAW,EAAE,CAAC;QAC3E,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,GAAG,IAAI,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;YAC7E,MAAM,IAAI,UAAU,CACjB,IAA2B,CAAC,KAAK,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAC/D,QAAQ,CAAC,MAAM,CAChB,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAA0B,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAY;QAC5B,MAAM,SAAS,GAAG,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,cAAc,IAAI,CAAC,MAAM,qBAAqB,WAAW,EAAE,CAAC;QACvF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;YAC7E,MAAM,IAAI,UAAU,CACjB,IAA2B,CAAC,KAAK,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAC/D,QAAQ,CAAC,MAAM,CAChB,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAA2B,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,cAAc,IAAI,CAAC,MAAM,gBAAgB,CAAC;QACnE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,GAAG,IAAI,WAAW,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;YAC7E,MAAM,IAAI,UAAU,CACjB,IAA2B,CAAC,KAAK,IAAI,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAC/D,QAAQ,CAAC,MAAM,CAChB,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC,IAAI,EAA6B,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"content.js","sourceRoot":"","sources":["../src/content.ts"],"names":[],"mappings":"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"}