palbase 0.28.0 → 0.29.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 (50) hide show
  1. package/dist/ai/index.js +2 -2
  2. package/dist/backend/engine.js +2 -2
  3. package/dist/backend/env.js +1 -1
  4. package/dist/backend/index.js +3 -3
  5. package/dist/backend/stack.js +1 -1
  6. package/dist/backend/test.js +2 -2
  7. package/dist/chunks/{YZCJVWWC.js → 3NB2Z2MF.js} +1 -1
  8. package/dist/chunks/{ZVQZVVBH.js → 4Q5QXL7S.js} +1 -1
  9. package/dist/chunks/{2XAUD7E5.js → 62XTQSVZ.js} +2 -2
  10. package/dist/chunks/{FJWAFNAZ.js → 66PTYGSE.js} +2 -2
  11. package/dist/chunks/{GP56VUVJ.js → A6CGX34F.js} +2 -2
  12. package/dist/chunks/{EL7LGFXD.js → AMWYOTRD.js} +2 -2
  13. package/dist/chunks/C2SU644S.js +2 -0
  14. package/dist/chunks/{36Q4EJBD.js → EWMPKYBN.js} +1 -1
  15. package/dist/chunks/{QUBQS6S5.js → GJPGCOTW.js} +2 -2
  16. package/dist/chunks/{D5YY344U.js → GV63GJ4D.js} +2 -2
  17. package/dist/chunks/{LIB2AHJU.js → HC2AGD3N.js} +2 -2
  18. package/dist/chunks/{MVXEPZPI.js → I5IDPWDM.js} +2 -2
  19. package/dist/chunks/{EXT5BO4H.js → IOU6E244.js} +2 -2
  20. package/dist/chunks/{CQ2AKEKI.js → IQ6QJDM4.js} +2 -2
  21. package/dist/chunks/{7M5HEXJC.js → IYJRPKS2.js} +2 -2
  22. package/dist/chunks/{RUQZFFRU.js → KN6YJGWP.js} +2 -2
  23. package/dist/chunks/{LTS573ZP.js → MKLUERPB.js} +2 -2
  24. package/dist/chunks/{FXV6V457.js → OAVOR7X5.js} +1 -1
  25. package/dist/chunks/{DJIO7ZRV.js → OCZ5XVNP.js} +1 -1
  26. package/dist/chunks/{3G43SAQ7.js → OLRLJB7H.js} +1 -1
  27. package/dist/chunks/{DJE7B7X4.js → VCUKXTAR.js} +2 -2
  28. package/dist/chunks/{53VJSMGY.js → WNEUGMU4.js} +1 -1
  29. package/dist/chunks/{5SSYP4TM.js → ZVRYGPBA.js} +2 -2
  30. package/dist/cli.js +138 -138
  31. package/dist/cloud/index.js +2 -2
  32. package/dist/refuse/ai.js +1 -1
  33. package/dist/refuse/backend.js +1 -1
  34. package/dist/refuse/cloud.js +1 -1
  35. package/dist/refuse/server.js +1 -1
  36. package/dist/server/index.js +2 -2
  37. package/dist/server/testing.js +2 -2
  38. package/dist/web/calls-ui.js +2 -2
  39. package/dist/web/index.js +2 -2
  40. package/dist/web/message.js +2 -2
  41. package/dist/web/palbe.js +2 -2
  42. package/dist/web/paywall.js +2 -2
  43. package/dist/web/push-sw.js +1 -1
  44. package/dist/web/ssr.js +2 -2
  45. package/dist/web/vite.js +2 -2
  46. package/package.json +2 -2
  47. package/types/cloud/src/generated/project.d.ts +1 -1
  48. package/types/internal/src/modules/machines.d.ts +118 -8
  49. package/types/internal/src/modules/messaging.d.ts +2 -2
  50. package/dist/chunks/UYPJY7TK.js +0 -2
@@ -1714,9 +1714,9 @@ export type Preview = {
1714
1714
  */
1715
1715
  url: string;
1716
1716
  /**
1717
- * building, ready, failed — or closed: its pull request closed, and its address answers no more.
1717
+ * authorization_required — a fork's head waiting for an admin of the environment to authorize it (fork protection): nothing of it is built until one does, and each push asks again —, building, ready, failed — or closed: its pull request closed, its address answers no more.
1718
1718
  */
1719
- state: "building" | "ready" | "failed" | "closed";
1719
+ state: "authorization_required" | "building" | "ready" | "failed" | "closed";
1720
1720
  /**
1721
1721
  * A machine's preview: its own machine, by name.
1722
1722
  */
@@ -1724,6 +1724,15 @@ export type Preview = {
1724
1724
  created_at: string;
1725
1725
  updated_at: string;
1726
1726
  closed_at?: string;
1727
+ /**
1728
+ * The fork's head an admin last authorized.
1729
+ */
1730
+ authorized_commit?: string;
1731
+ /**
1732
+ * Who authorized it: a developer's id, or the credential the call presented.
1733
+ */
1734
+ authorized_by?: string;
1735
+ authorized_at?: string;
1727
1736
  };
1728
1737
  /**
1729
1738
  * A site's or a machine's previews, the fifty newest first.
@@ -1735,12 +1744,12 @@ export type PreviewList = {
1735
1744
  * One record of a domain's DNS.
1736
1745
  */
1737
1746
  export type DNSRecord = {
1738
- type: "CNAME" | "TXT";
1747
+ type: "A" | "CNAME" | "TXT";
1739
1748
  name: string;
1740
1749
  value: string;
1741
1750
  };
1742
1751
  /**
1743
- * A domain of the customer's own a site or a machine answers at too. Its owner adds its records to its DNS: the CNAME points it at the platform (at the apex, where DNS takes no CNAME: an ALIAS, ANAME or flattened CNAME to the same target), the TXT shows it is this environment's. It answers once Cloudflare has its certificate and the TXT record is there. A domain is one environment's, platform-wide, until it is deleted there.
1752
+ * A domain of the customer's own a site or a machine answers at too. Its owner adds its records to its DNS: a subdomain's CNAME points it at the platform through Cloudflare; an apex's A record names the platform's address for apexes, which any DNS host takes (its certificate the edge's, from Let's Encrypt) — or, where its DNS host has one, an ALIAS, ANAME or flattened CNAME to the subdomains' target keeps it behind Cloudflare. The TXT shows it is this environment's. It answers once its certificate is issued and the TXT record is there. A domain may send its visitors to another domain of the same site or machine (redirect_to). A domain is one environment's, platform-wide, until it is deleted there.
1744
1753
  */
1745
1754
  export type Domain = {
1746
1755
  /**
@@ -1752,9 +1761,21 @@ export type Domain = {
1752
1761
  */
1753
1762
  state: "pending" | "active";
1754
1763
  /**
1755
- * A domain of its own, not a subdomain: most DNS hosts take no CNAME there.
1764
+ * A domain of its own, not a subdomain: its DNS takes an A record at the platform's address for apexes (records), or an ALIAS, ANAME or flattened CNAME to the subdomains' target.
1756
1765
  */
1757
1766
  apex: boolean;
1767
+ /**
1768
+ * How it reaches the platform, as last read: cdn through Cloudflare (its certificate Cloudflare's), ip an apex's A record at the platform's address for apexes (its certificate Let's Encrypt's); null while its DNS says neither.
1769
+ */
1770
+ via: ("cdn" | "ip") | null;
1771
+ /**
1772
+ * Another domain of the same site or machine its visitors are sent to, the same path and query there (Vercel's "Redirect to"); null when it answers itself.
1773
+ */
1774
+ redirect_to: string | null;
1775
+ /**
1776
+ * The redirect's status: 308 unless said; null with redirect_to.
1777
+ */
1778
+ redirect_status: (301 | 302 | 307 | 308) | null;
1758
1779
  /**
1759
1780
  * What its owner adds to its DNS.
1760
1781
  */
@@ -1774,13 +1795,50 @@ export type DomainList = {
1774
1795
  domains: Domain[];
1775
1796
  };
1776
1797
  /**
1777
- * A domain to add.
1798
+ * A domain to add — sending its visitors to another of the same site's or machine's when redirect_to names one.
1778
1799
  */
1779
1800
  export type DomainCreate = {
1780
1801
  /**
1781
1802
  * The domain: www.example.com, or example.com — none of the platform's own.
1782
1803
  */
1783
1804
  host: string;
1805
+ /**
1806
+ * Another domain of the same site or machine, added before, its visitors are sent to (an apex to its www, or a www to its apex). It may not redirect itself, and this one may not be another's target.
1807
+ */
1808
+ redirect_to?: string;
1809
+ /**
1810
+ * The redirect's status, with redirect_to: 308 unless said.
1811
+ */
1812
+ redirect_status?: 301 | 302 | 307 | 308;
1813
+ };
1814
+ /**
1815
+ * Where a domain sends its visitors: another domain of the same site or machine, or null to have it answer itself. It holds at once.
1816
+ */
1817
+ export type DomainUpdate = {
1818
+ /**
1819
+ * Another domain of the same site or machine (one that redirects nowhere itself), or null.
1820
+ */
1821
+ redirect_to: string | null;
1822
+ /**
1823
+ * The redirect's status, with redirect_to: 308 unless said.
1824
+ */
1825
+ redirect_status?: 301 | 302 | 307 | 308;
1826
+ };
1827
+ /**
1828
+ * The fork's head an admin authorizes: the one they looked at, which must be the pull request's newest.
1829
+ */
1830
+ export type PreviewAuthorize = {
1831
+ /**
1832
+ * The pull request's head, as its preview says (Preview.commit).
1833
+ */
1834
+ commit: string;
1835
+ };
1836
+ /**
1837
+ * An authorization taken: the preview is being built at the commit.
1838
+ */
1839
+ export type PreviewAuthorized = {
1840
+ pull_request: number;
1841
+ commit: string;
1784
1842
  };
1785
1843
  /** Palbase Machines */
1786
1844
  export declare function client(t: Transport): {
@@ -1975,7 +2033,7 @@ export declare function client(t: Transport): {
1975
2033
  /**
1976
2034
  * Delete a machine's domain
1977
2035
  *
1978
- * Takes a domain away: it answers no more at once, and another environment may add it.
2036
+ * Takes a domain away: it answers no more at once, and another environment may add it. One another domain redirects to is kept (409 domain_redirected_to): change that one's redirect first.
1979
2037
  */
1980
2038
  deleteMachineDomain(input: {
1981
2039
  path: {
@@ -1984,6 +2042,19 @@ export declare function client(t: Transport): {
1984
2042
  }; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
1985
2043
  signal?: AbortSignal;
1986
2044
  }): Promise<Reply<204, undefined>>;
2045
+ /**
2046
+ * Set where a machine's domain redirects
2047
+ *
2048
+ * Sends the domain's visitors to another domain of the same machine — the same path and query there, with redirect_status (308 unless said) — or, redirect_to null, has it answer itself. It holds at the edge at once. A domain redirects to one that redirects nowhere, and one others redirect to answers itself.
2049
+ */
2050
+ updateMachineDomain(input: {
2051
+ path: {
2052
+ name: string; /** The domain. */
2053
+ host: string;
2054
+ };
2055
+ body: DomainUpdate; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
2056
+ signal?: AbortSignal;
2057
+ }): Promise<Reply<200, Domain>>;
1987
2058
  /**
1988
2059
  * Read a build
1989
2060
  *
@@ -2570,7 +2641,7 @@ export declare function client(t: Transport): {
2570
2641
  /**
2571
2642
  * Delete a site's domain
2572
2643
  *
2573
- * Takes a domain away: it answers no more at once, and another environment may add it.
2644
+ * Takes a domain away: it answers no more at once, and another environment may add it. One another domain redirects to is kept (409 domain_redirected_to): change that one's redirect first.
2574
2645
  */
2575
2646
  deleteSiteDomain(input: {
2576
2647
  path: {
@@ -2579,6 +2650,19 @@ export declare function client(t: Transport): {
2579
2650
  }; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
2580
2651
  signal?: AbortSignal;
2581
2652
  }): Promise<Reply<204, undefined>>;
2653
+ /**
2654
+ * Set where a site's domain redirects
2655
+ *
2656
+ * Sends the domain's visitors to another domain of the same site — the same path and query there, with redirect_status (308 unless said) — or, redirect_to null, has it answer itself. It holds at the edge at once. A domain redirects to one that redirects nowhere, and one others redirect to answers itself.
2657
+ */
2658
+ updateSiteDomain(input: {
2659
+ path: {
2660
+ name: string; /** The domain. */
2661
+ host: string;
2662
+ };
2663
+ body: DomainUpdate; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
2664
+ signal?: AbortSignal;
2665
+ }): Promise<Reply<200, Domain>>;
2582
2666
  /**
2583
2667
  * Get a site's build
2584
2668
  *
@@ -2591,5 +2675,31 @@ export declare function client(t: Transport): {
2591
2675
  }; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
2592
2676
  signal?: AbortSignal;
2593
2677
  }): Promise<Reply<200, SiteBuild>>;
2678
+ /**
2679
+ * Authorize a fork's pull request's preview
2680
+ *
2681
+ * Builds the preview of a pull request from a fork at the head an admin looked at (fork protection, Vercel's Git Fork Protection: a fork's code runs with the environment's settings and secrets). The head must be the pull request's newest: a push since answers 409 preview_head_moved. Each new push asks again.
2682
+ */
2683
+ authorizeSitePreview(input: {
2684
+ path: {
2685
+ name: string; /** The pull request's number. */
2686
+ pull_request: number;
2687
+ };
2688
+ body: PreviewAuthorize; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
2689
+ signal?: AbortSignal;
2690
+ }): Promise<Reply<202, PreviewAuthorized>>;
2691
+ /**
2692
+ * Authorize a fork's pull request's preview
2693
+ *
2694
+ * Builds the preview of a pull request from a fork at the head an admin looked at (fork protection, Vercel's Git Fork Protection: a fork's code runs with the environment's settings and secrets). The head must be the pull request's newest: a push since answers 409 preview_head_moved. Each new push asks again.
2695
+ */
2696
+ authorizeMachinePreview(input: {
2697
+ path: {
2698
+ name: string; /** The pull request's number. */
2699
+ pull_request: number;
2700
+ };
2701
+ body: PreviewAuthorize; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
2702
+ signal?: AbortSignal;
2703
+ }): Promise<Reply<202, PreviewAuthorized>>;
2594
2704
  };
2595
2705
  export type Client = ReturnType<typeof client>;
@@ -868,9 +868,9 @@ export type Message = {
868
868
  */
869
869
  attachments: Attachment[];
870
870
  /**
871
- * What a call message keeps of its call (kind call): written as the call starts, and again as it is answered and as it ends. It counts as no unread message.
871
+ * What a call message keeps of its call (kind call): written as the call starts, and again as it is answered and as it ends. It counts as no unread message. Always sent (null on any other message); absent (an answer kept from before it was): null.
872
872
  */
873
- call: CallRecord | null;
873
+ call?: CallRecord | null;
874
874
  /**
875
875
  * The writer's app's own id of it.
876
876
  */