palbase 0.7.0 → 0.8.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.
- package/dist/ai/index.js +2 -2
- package/dist/backend/engine.js +2 -2
- package/dist/backend/env.js +1 -1
- package/dist/backend/index.js +9 -9
- package/dist/backend/stack.js +1 -1
- package/dist/backend/test.js +2 -2
- package/dist/chunks/5VTGMNPL.js +20 -0
- package/dist/chunks/{ZBOJEH7K.js → BO5KR2EQ.js} +2 -2
- package/dist/chunks/{PJVWGUIT.js → BRBCWPR3.js} +1 -1
- package/dist/chunks/DB3SIBKB.js +2 -0
- package/dist/chunks/EGNEXFTZ.js +2 -0
- package/dist/chunks/{HEXIIGWS.js → FZ3MQOVA.js} +2 -2
- package/dist/chunks/{SU7BP6VF.js → JSJVV43D.js} +1 -1
- package/dist/chunks/K6RRNI23.js +4 -0
- package/dist/chunks/{KDSWK3XW.js → KDWDPSL2.js} +1 -1
- package/dist/chunks/P4Z5E6ZI.js +2 -0
- package/dist/chunks/PDOHT46N.js +2 -0
- package/dist/chunks/PGPQGKH2.js +18 -0
- package/dist/chunks/{G3BK7L3J.js → RBA6V3UO.js} +2 -2
- package/dist/chunks/{X3MTLJRV.js → RO5Y5YU4.js} +1 -1
- package/dist/chunks/{BKVU4I5R.js → TUGRIOFX.js} +2 -2
- package/dist/chunks/WEI32SAJ.js +13 -0
- package/dist/chunks/{5ZJCEQV5.js → WINBISC2.js} +3 -3
- package/dist/chunks/Z5JVQNAZ.js +2 -0
- package/dist/cli.js +121 -120
- package/dist/refuse/ai.js +1 -1
- package/dist/refuse/backend.js +1 -1
- package/dist/refuse/server.js +1 -1
- package/dist/server/index.js +2 -2
- package/dist/server/testing.js +2 -2
- package/dist/web/index.js +2 -2
- package/dist/web/palbe.js +2 -2
- package/dist/web/paywall.js +2 -2
- package/dist/web/ssr.js +2 -2
- package/dist/web/vite.js +2 -2
- package/package.json +2 -2
- package/types/ai/src/ai.d.ts +44 -15
- package/types/ai/src/chats.d.ts +442 -12
- package/types/ai/src/index.d.ts +4 -4
- package/types/ai/src/tools.d.ts +158 -21
- package/types/backend/src/bootstrap.d.ts +8 -0
- package/types/backend/src/container.d.ts +9 -0
- package/types/backend/src/database.d.ts +17 -2
- package/types/backend/src/engine.d.ts +2 -0
- package/types/backend/src/gateways.d.ts +19 -0
- package/types/backend/src/index.d.ts +1 -0
- package/types/backend/src/runtime.d.ts +12 -0
- package/types/backend/src/testing/unit.d.ts +3 -1
- package/types/internal/src/chat.d.ts +168 -3
- package/types/internal/src/modules/ai.d.ts +1305 -57
- package/types/internal/src/modules/auth.d.ts +14 -2
- package/types/internal/src/modules/events.d.ts +2 -2
- package/types/internal/src/modules/machines.d.ts +57 -1
- package/types/internal/src/modules/notify.d.ts +6 -6
- package/types/internal/src/modules/purchases.d.ts +357 -13
- package/types/internal/src/modules/realtime.d.ts +36 -0
- package/types/internal/src/modules/stores.d.ts +259 -22
- package/types/internal/src/transport.d.ts +5 -0
- package/types/server/src/auth/jwt.d.ts +1 -6
- package/types/web/src/auth.d.ts +15 -4
- package/types/web/src/backends.d.ts +1 -1
- package/types/web/src/chat.d.ts +215 -4
- package/types/web/src/client.d.ts +28 -0
- package/types/web/src/gateways.d.ts +4 -3
- package/types/web/src/index.d.ts +3 -2
- package/types/web/src/session.d.ts +11 -1
- package/types/web/src/voice.d.ts +36 -0
- package/dist/chunks/3ALGILOX.js +0 -2
- package/dist/chunks/AIIKXCWN.js +0 -2
- package/dist/chunks/ELEE7XO2.js +0 -18
- package/dist/chunks/G7E26S3Y.js +0 -13
- package/dist/chunks/H2EPK74V.js +0 -20
- package/dist/chunks/JS3TTUHS.js +0 -2
- package/dist/chunks/L3NTI4AZ.js +0 -2
- package/dist/chunks/LEBVOSG6.js +0 -4
- package/dist/chunks/OIA7KLRW.js +0 -2
|
@@ -744,7 +744,7 @@ export type AnonymousConvertRequest = {
|
|
|
744
744
|
*/
|
|
745
745
|
password: string;
|
|
746
746
|
/**
|
|
747
|
-
* Where the verification link lands
|
|
747
|
+
* Where the verification link lands: an address the auth settings' redirect_urls allow, or one of the project's web apps' redirects (apps:env:set --redirect); any other is refused (invalid_redirect).
|
|
748
748
|
*/
|
|
749
749
|
redirect_to?: string;
|
|
750
750
|
};
|
|
@@ -1454,6 +1454,10 @@ export type ErrorResponse = {
|
|
|
1454
1454
|
* On a refused configuration (invalid_auth_config): each field refused, by its JSON Pointer in the request body, and why.
|
|
1455
1455
|
*/
|
|
1456
1456
|
field_errors?: FieldError[];
|
|
1457
|
+
/**
|
|
1458
|
+
* Why a session ended, on a refused refresh: user_deleted (the account was deleted), user_banned (the account was suspended). The refusal's code stays the one a client ends a session on (invalid_token, session_revoked).
|
|
1459
|
+
*/
|
|
1460
|
+
reason?: "user_deleted" | "user_banned";
|
|
1457
1461
|
/**
|
|
1458
1462
|
* Correlation ID for log/audit lookup
|
|
1459
1463
|
*/
|
|
@@ -1956,6 +1960,10 @@ export type MFAVerifyEnrollmentRequest = {
|
|
|
1956
1960
|
};
|
|
1957
1961
|
export type MagicLinkRequest = {
|
|
1958
1962
|
email: string;
|
|
1963
|
+
/**
|
|
1964
|
+
* Where the sign-in link lands instead of the project's site URL: an address the auth settings' redirect_urls allow, or one of the project's web apps' redirects (apps:env:set --redirect); any other is refused (invalid_redirect).
|
|
1965
|
+
*/
|
|
1966
|
+
redirect_to?: string;
|
|
1959
1967
|
};
|
|
1960
1968
|
export type MagicLinkVerifyRequest = {
|
|
1961
1969
|
token: string;
|
|
@@ -2185,6 +2193,10 @@ export type PasswordResetConfirmRequest = {
|
|
|
2185
2193
|
};
|
|
2186
2194
|
export type PasswordResetRequest = {
|
|
2187
2195
|
email: string;
|
|
2196
|
+
/**
|
|
2197
|
+
* Where the reset link lands instead of the project's site URL: an address the auth settings' redirect_urls allow, or one of the project's web apps' redirects (apps:env:set --redirect); any other is refused (invalid_redirect).
|
|
2198
|
+
*/
|
|
2199
|
+
redirect_to?: string;
|
|
2188
2200
|
};
|
|
2189
2201
|
export type PasswordSetRequest = {
|
|
2190
2202
|
/**
|
|
@@ -2599,7 +2611,7 @@ export type SignupRequest = {
|
|
|
2599
2611
|
*/
|
|
2600
2612
|
password: string;
|
|
2601
2613
|
/**
|
|
2602
|
-
* Where the verification link lands
|
|
2614
|
+
* Where the verification link lands: an address the auth settings' redirect_urls allow, or one of the project's web apps' redirects (apps:env:set --redirect); any other is refused (invalid_redirect).
|
|
2603
2615
|
*/
|
|
2604
2616
|
redirect_to?: string;
|
|
2605
2617
|
};
|
|
@@ -9,11 +9,11 @@ export interface PlatformEvents extends AiEvents, PurchasesEvents, StorageEvents
|
|
|
9
9
|
/** A platform event's type: one a module's contract declares. */
|
|
10
10
|
export type EventType = keyof PlatformEvents;
|
|
11
11
|
/** Every platform event's type, as the contracts declare them. */
|
|
12
|
-
export declare const EVENT_TYPES: readonly ["ai.response.completed", "ai.response.failed", "file.deleted", "file.moved", "file.uploaded", "purchases.catalog.applied", "purchases.catalog.changed", "purchases.credits.depleted", "purchases.credits.low", "purchases.customer.changed", "purchases.customer.erased", "purchases.customer.merged", "purchases.entitlement.changed", "purchases.ownership.transferred", "purchases.paywall.published", "purchases.purchase.completed", "purchases.quota.exhausted", "purchases.quota.threshold", "purchases.refund.changed", "purchases.store.changed", "purchases.subscription.changed", "stores.action.changed", "stores.app.changed", "stores.apple.changed", "stores.delivery.changed", "stores.delivery.requested", "stores.group.changed", "stores.package.changed"];
|
|
12
|
+
export declare const EVENT_TYPES: readonly ["ai.goal.updated", "ai.response.completed", "ai.response.failed", "ai.response.started", "ai.voice.closed", "ai.voice.delegated", "ai.voice.started", "ai.workspace.published", "ai.workspace.pushed", "file.deleted", "file.moved", "file.uploaded", "purchases.catalog.applied", "purchases.catalog.changed", "purchases.credits.depleted", "purchases.credits.low", "purchases.customer.changed", "purchases.customer.erased", "purchases.customer.merged", "purchases.entitlement.changed", "purchases.ownership.transferred", "purchases.paywall.published", "purchases.purchase.completed", "purchases.quota.exhausted", "purchases.quota.threshold", "purchases.refund.changed", "purchases.store.changed", "purchases.subscription.changed", "stores.action.changed", "stores.app.changed", "stores.apple.changed", "stores.delivery.changed", "stores.delivery.requested", "stores.google.changed", "stores.group.changed", "stores.package.changed"];
|
|
13
13
|
/**
|
|
14
14
|
* A platform event as delivered: one member per type the contracts declare,
|
|
15
15
|
* its data that type's payload, so a switch on its type narrows it. An
|
|
16
16
|
* event of a type none of them declares (one a newer platform sends) is no
|
|
17
17
|
* member: at run time it reaches the switch's default, which takes it.
|
|
18
18
|
*/
|
|
19
|
-
export type PalbaseEvent = WebhookEvent<PlatformEvents["ai.response.completed"], "ai.response.completed"> | WebhookEvent<PlatformEvents["ai.response.failed"], "ai.response.failed"> | WebhookEvent<PlatformEvents["file.deleted"], "file.deleted"> | WebhookEvent<PlatformEvents["file.moved"], "file.moved"> | WebhookEvent<PlatformEvents["file.uploaded"], "file.uploaded"> | WebhookEvent<PlatformEvents["purchases.catalog.applied"], "purchases.catalog.applied"> | WebhookEvent<PlatformEvents["purchases.catalog.changed"], "purchases.catalog.changed"> | WebhookEvent<PlatformEvents["purchases.credits.depleted"], "purchases.credits.depleted"> | WebhookEvent<PlatformEvents["purchases.credits.low"], "purchases.credits.low"> | WebhookEvent<PlatformEvents["purchases.customer.changed"], "purchases.customer.changed"> | WebhookEvent<PlatformEvents["purchases.customer.erased"], "purchases.customer.erased"> | WebhookEvent<PlatformEvents["purchases.customer.merged"], "purchases.customer.merged"> | WebhookEvent<PlatformEvents["purchases.entitlement.changed"], "purchases.entitlement.changed"> | WebhookEvent<PlatformEvents["purchases.ownership.transferred"], "purchases.ownership.transferred"> | WebhookEvent<PlatformEvents["purchases.paywall.published"], "purchases.paywall.published"> | WebhookEvent<PlatformEvents["purchases.purchase.completed"], "purchases.purchase.completed"> | WebhookEvent<PlatformEvents["purchases.quota.exhausted"], "purchases.quota.exhausted"> | WebhookEvent<PlatformEvents["purchases.quota.threshold"], "purchases.quota.threshold"> | WebhookEvent<PlatformEvents["purchases.refund.changed"], "purchases.refund.changed"> | WebhookEvent<PlatformEvents["purchases.store.changed"], "purchases.store.changed"> | WebhookEvent<PlatformEvents["purchases.subscription.changed"], "purchases.subscription.changed"> | WebhookEvent<PlatformEvents["stores.action.changed"], "stores.action.changed"> | WebhookEvent<PlatformEvents["stores.app.changed"], "stores.app.changed"> | WebhookEvent<PlatformEvents["stores.apple.changed"], "stores.apple.changed"> | WebhookEvent<PlatformEvents["stores.delivery.changed"], "stores.delivery.changed"> | WebhookEvent<PlatformEvents["stores.delivery.requested"], "stores.delivery.requested"> | WebhookEvent<PlatformEvents["stores.group.changed"], "stores.group.changed"> | WebhookEvent<PlatformEvents["stores.package.changed"], "stores.package.changed">;
|
|
19
|
+
export type PalbaseEvent = WebhookEvent<PlatformEvents["ai.goal.updated"], "ai.goal.updated"> | WebhookEvent<PlatformEvents["ai.response.completed"], "ai.response.completed"> | WebhookEvent<PlatformEvents["ai.response.failed"], "ai.response.failed"> | WebhookEvent<PlatformEvents["ai.response.started"], "ai.response.started"> | WebhookEvent<PlatformEvents["ai.voice.closed"], "ai.voice.closed"> | WebhookEvent<PlatformEvents["ai.voice.delegated"], "ai.voice.delegated"> | WebhookEvent<PlatformEvents["ai.voice.started"], "ai.voice.started"> | WebhookEvent<PlatformEvents["ai.workspace.published"], "ai.workspace.published"> | WebhookEvent<PlatformEvents["ai.workspace.pushed"], "ai.workspace.pushed"> | WebhookEvent<PlatformEvents["file.deleted"], "file.deleted"> | WebhookEvent<PlatformEvents["file.moved"], "file.moved"> | WebhookEvent<PlatformEvents["file.uploaded"], "file.uploaded"> | WebhookEvent<PlatformEvents["purchases.catalog.applied"], "purchases.catalog.applied"> | WebhookEvent<PlatformEvents["purchases.catalog.changed"], "purchases.catalog.changed"> | WebhookEvent<PlatformEvents["purchases.credits.depleted"], "purchases.credits.depleted"> | WebhookEvent<PlatformEvents["purchases.credits.low"], "purchases.credits.low"> | WebhookEvent<PlatformEvents["purchases.customer.changed"], "purchases.customer.changed"> | WebhookEvent<PlatformEvents["purchases.customer.erased"], "purchases.customer.erased"> | WebhookEvent<PlatformEvents["purchases.customer.merged"], "purchases.customer.merged"> | WebhookEvent<PlatformEvents["purchases.entitlement.changed"], "purchases.entitlement.changed"> | WebhookEvent<PlatformEvents["purchases.ownership.transferred"], "purchases.ownership.transferred"> | WebhookEvent<PlatformEvents["purchases.paywall.published"], "purchases.paywall.published"> | WebhookEvent<PlatformEvents["purchases.purchase.completed"], "purchases.purchase.completed"> | WebhookEvent<PlatformEvents["purchases.quota.exhausted"], "purchases.quota.exhausted"> | WebhookEvent<PlatformEvents["purchases.quota.threshold"], "purchases.quota.threshold"> | WebhookEvent<PlatformEvents["purchases.refund.changed"], "purchases.refund.changed"> | WebhookEvent<PlatformEvents["purchases.store.changed"], "purchases.store.changed"> | WebhookEvent<PlatformEvents["purchases.subscription.changed"], "purchases.subscription.changed"> | WebhookEvent<PlatformEvents["stores.action.changed"], "stores.action.changed"> | WebhookEvent<PlatformEvents["stores.app.changed"], "stores.app.changed"> | WebhookEvent<PlatformEvents["stores.apple.changed"], "stores.apple.changed"> | WebhookEvent<PlatformEvents["stores.delivery.changed"], "stores.delivery.changed"> | WebhookEvent<PlatformEvents["stores.delivery.requested"], "stores.delivery.requested"> | WebhookEvent<PlatformEvents["stores.google.changed"], "stores.google.changed"> | WebhookEvent<PlatformEvents["stores.group.changed"], "stores.group.changed"> | WebhookEvent<PlatformEvents["stores.package.changed"], "stores.package.changed">;
|
|
@@ -26,6 +26,14 @@ export type Build = {
|
|
|
26
26
|
* The machine may return to this build (POST /machines/{name}/rollback): it succeeded and its image is kept — a machine keeps the images of ten of its builds that succeeded, the one it runs among them.
|
|
27
27
|
*/
|
|
28
28
|
returnable: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* What became of the build's contract: captured; none (an app that says of none); refused — a palbase/backend build whose contract is refused takes no traffic, and fails saying why (contract_error). Absent while it is being read.
|
|
31
|
+
*/
|
|
32
|
+
contract_state?: "captured" | "none" | "refused";
|
|
33
|
+
/**
|
|
34
|
+
* Why the build's contract was refused, in its app's words where it said.
|
|
35
|
+
*/
|
|
36
|
+
contract_error?: string;
|
|
29
37
|
created_at: string;
|
|
30
38
|
started_at?: string;
|
|
31
39
|
finished_at?: string;
|
|
@@ -47,6 +55,18 @@ export type BuildRef = {
|
|
|
47
55
|
id: string;
|
|
48
56
|
commit: string;
|
|
49
57
|
};
|
|
58
|
+
/**
|
|
59
|
+
* A machine's newest build, which failed or was skipped while the machine runs another: the push it was of did not roll out.
|
|
60
|
+
*/
|
|
61
|
+
export type FailedBuild = {
|
|
62
|
+
id: string;
|
|
63
|
+
commit: string;
|
|
64
|
+
state: "failed" | "skipped";
|
|
65
|
+
/**
|
|
66
|
+
* Why it did not roll out: its build failed, its tests failed, its contract was refused, it did not come up, its commit's checks did not pass.
|
|
67
|
+
*/
|
|
68
|
+
reason: string;
|
|
69
|
+
};
|
|
50
70
|
/**
|
|
51
71
|
* Where the project's owner goes to connect GitHub. GitHub asks who they are and comes back to the platform, which shows them the accounts Palbase Cloud is installed on that they can push to — and where to install it on another — and connects the one they choose once they write the project's ref.
|
|
52
72
|
*/
|
|
@@ -102,6 +122,20 @@ export type InstallationLink = {
|
|
|
102
122
|
installation_id: number;
|
|
103
123
|
user_token: string;
|
|
104
124
|
};
|
|
125
|
+
/**
|
|
126
|
+
* Connects an installation another project of the same organization connected, on Studio's word that both are one organization's (the X-Palbase-Studio-Share header, which Studio's backend alone signs; Studio's call that connects an organization's installation asks it) — no GitHub user's token. The project reaches what that project's GitHub user can push to, as it does.
|
|
127
|
+
*/
|
|
128
|
+
export type InstallationShare = {
|
|
129
|
+
installation_id: number;
|
|
130
|
+
/**
|
|
131
|
+
* The project that connected it.
|
|
132
|
+
*/
|
|
133
|
+
from_project: string;
|
|
134
|
+
/**
|
|
135
|
+
* The repositories (owner/name) the project reaches of it, and no other: each one the installation reaches and the GitHub user who connected it can push to (refused otherwise, `repository_not_shared`). Shared for them, the project never reaches a repository the installation reaches later. Left out: what that project reaches.
|
|
136
|
+
*/
|
|
137
|
+
repositories?: string[];
|
|
138
|
+
};
|
|
105
139
|
/**
|
|
106
140
|
* The project's installations.
|
|
107
141
|
*/
|
|
@@ -137,6 +171,10 @@ export type Machine = {
|
|
|
137
171
|
* Why the machine has failed, or why a new version is not up — its image could not be pulled, it could not be started, its process keeps exiting or ran out of its memory, it does not answer 2xx at its health path (it is started again each time it has not in the 90 s it has), nothing answers on its port (past 90 s) — or that a version did not come up and the one before runs; absent otherwise.
|
|
138
172
|
*/
|
|
139
173
|
state_reason?: string;
|
|
174
|
+
/**
|
|
175
|
+
* What kind of thing `state_reason` says: waiting — the version asked for waits before it takes traffic (on its commit's checks, its configuration, its tests, its contract, its database or its migration) and rolls out once that is done; not_up — it does not start or answer, or a copy of the one before it stays; given_up — it did not come up, and the one before it serves until the machine's next change; migration — its database migration failed (to start, and the version does not roll out; or to close); stopped — it was put to sleep for a reason; failed — it cannot run. Absent with no `state_reason`.
|
|
176
|
+
*/
|
|
177
|
+
state_reason_kind?: "failed" | "given_up" | "migration" | "not_up" | "stopped" | "waiting";
|
|
140
178
|
updated_at: string;
|
|
141
179
|
/**
|
|
142
180
|
* Where the machine answers: the project's own address for `backend`, <name>-<ref> under the app domain for any other.
|
|
@@ -158,6 +196,7 @@ export type Machine = {
|
|
|
158
196
|
secrets?: "production" | "development";
|
|
159
197
|
source: Source;
|
|
160
198
|
build?: BuildRef;
|
|
199
|
+
failed_build?: FailedBuild;
|
|
161
200
|
/**
|
|
162
201
|
* A build of the branch's head is asked for — opened, pushed to, deployed, its source changed — and not queued yet: the platform asks GitHub for the head first. Once false, the machine's newest build is the one asked for, or, when the branch was not found, `state` and `state_reason` say so.
|
|
163
202
|
*/
|
|
@@ -199,6 +238,14 @@ export type Machine = {
|
|
|
199
238
|
* The SHA-256 (hex) of the contract the build the machine serves from says it answers (GET /machines/{name}/openapi): a client generated from it is current while the two are the same. Absent while the contract has not been read, or when the app serves none.
|
|
200
239
|
*/
|
|
201
240
|
contract_digest?: string;
|
|
241
|
+
/**
|
|
242
|
+
* What became of the contract of the build the machine serves from: captured; none (an app that says of none); refused (contract_error says why: the events, webhooks and crons of a palbase/backend app are registered from its contract, and none were). Absent while it is being read.
|
|
243
|
+
*/
|
|
244
|
+
contract_state?: "captured" | "none" | "refused";
|
|
245
|
+
/**
|
|
246
|
+
* Why the contract of the build the machine serves from was refused, in its app's words where it said.
|
|
247
|
+
*/
|
|
248
|
+
contract_error?: string;
|
|
202
249
|
};
|
|
203
250
|
/**
|
|
204
251
|
* A machine to open.
|
|
@@ -1356,12 +1403,21 @@ export declare function client(t: Transport): {
|
|
|
1356
1403
|
/**
|
|
1357
1404
|
* Connect an installation
|
|
1358
1405
|
*
|
|
1359
|
-
* Connects an installation of Palbase Cloud the user reaches, with the user's own GitHub token for the App (a CLI's device flow): the project reaches the repositories of it that user can push to — connected again, what they can push to now. Refused when GitHub says the user cannot reach it, or push to any repository of it. The user taking their authorization of the App back on GitHub disconnects what they connected.
|
|
1406
|
+
* Connects an installation of Palbase Cloud the user reaches, with the user's own GitHub token for the App (a CLI's device flow): the project reaches the repositories of it that user can push to — connected again by that user, what they can push to now. Refused when GitHub says the user cannot reach it, or push to any repository of it; and when the project connected it otherwise — by another GitHub user, or for some repositories alone (a share): linking again never widens, narrows or hands over a connection, so it is disconnected and connected anew. The user taking their authorization of the App back on GitHub disconnects what they connected.
|
|
1360
1407
|
*/
|
|
1361
1408
|
linkInstallation(input: {
|
|
1362
1409
|
body: InstallationLink; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
|
|
1363
1410
|
signal?: AbortSignal;
|
|
1364
1411
|
}): Promise<Reply<201, Installation>>;
|
|
1412
|
+
/**
|
|
1413
|
+
* Share an installation of the organization
|
|
1414
|
+
*
|
|
1415
|
+
* Connects an installation of Palbase Cloud that another project of the same organization connected, on Studio's word (X-Palbase-Studio-Share): a program that opens a project for each product connects its own installation to each, with no person's GitHub token. The project reaches the repositories of it the GitHub user who connected it there can push to — and, as with every connection, one created or added to the installation later once that user can push to it (asked when a machine is built from it, and when GitHub says repositories were added). Refused without Studio's word, or when that project has not connected the installation; and when this project connected it otherwise — for other repositories, for all of them where this names some (or some where this names none), or by another GitHub user: linking again never widens, narrows or hands over a connection, so it is disconnected and connected anew. The same share again is as it was.
|
|
1416
|
+
*/
|
|
1417
|
+
shareInstallation(input: {
|
|
1418
|
+
body: InstallationShare; /** Stops the call: the request in flight, a wait before a retry, a proof-of-work being solved. */
|
|
1419
|
+
signal?: AbortSignal;
|
|
1420
|
+
}): Promise<Reply<201, Installation>>;
|
|
1365
1421
|
/**
|
|
1366
1422
|
* Disconnect an installation
|
|
1367
1423
|
*
|
|
@@ -1047,7 +1047,7 @@ export declare function client(t: Transport): {
|
|
|
1047
1047
|
/**
|
|
1048
1048
|
* Override an email template
|
|
1049
1049
|
*
|
|
1050
|
-
* Overrides the template in this locale. It is Handlebars ({{name}}, {{#if}} {{#unless}} {{#each}} {{#with}}, lookup, equal): {{name}} in an HTML body is escaped, {{{name}}} is not; a subject, a text body and an SMS are text; an override of a platform template uses only the variables its sender passes. On the platform's shared sender, auth's templates (auth.*) go out in Palbase's words; the project's edits of them are used with its own email provider.
|
|
1050
|
+
* Overrides the template in this locale. It is Handlebars ({{name}}, {{#if}} {{#unless}} {{#each}} {{#with}}, lookup, equal): {{name}} in an HTML body is escaped, {{{name}}} is not; a subject, a text body and an SMS are text; an override of a platform template uses only the variables its sender passes. On the platform's shared sender, auth's templates (auth.*) go out in Palbase's words; the project's edits of them are used with its own email provider. An environment's token is refused (403 token_out_of_scope) at a template that carries a user's own sign-in or reset credential, a link or a one-time code (the list is catalog.CarriesCredential): closed per slug in the handler, not by an x-palbase-credential mark, which would close the app's own notification templates too. Those stay open.
|
|
1051
1051
|
*/
|
|
1052
1052
|
putEmailTemplate(input: {
|
|
1053
1053
|
path: {
|
|
@@ -1063,7 +1063,7 @@ export declare function client(t: Transport): {
|
|
|
1063
1063
|
/**
|
|
1064
1064
|
* Remove an override
|
|
1065
1065
|
*
|
|
1066
|
-
* Removes the project's override; the platform's default renders again.
|
|
1066
|
+
* Removes the project's override; the platform's default renders again. An environment's token is refused (403 token_out_of_scope) at a template that carries a user's own sign-in or reset credential, a link or a one-time code (the list is catalog.CarriesCredential): closed per slug in the handler, not by an x-palbase-credential mark, which would close the app's own notification templates too. Those stay open.
|
|
1067
1067
|
*/
|
|
1068
1068
|
deleteEmailTemplate(input: {
|
|
1069
1069
|
path: {
|
|
@@ -1098,7 +1098,7 @@ export declare function client(t: Transport): {
|
|
|
1098
1098
|
/**
|
|
1099
1099
|
* Override an SMS template
|
|
1100
1100
|
*
|
|
1101
|
-
* Overrides the SMS template in this locale. It is Handlebars ({{name}}, {{#if}} {{#unless}} {{#each}} {{#with}}, lookup, equal): {{name}} in an HTML body is escaped, {{{name}}} is not; a subject, a text body and an SMS are text; an override of a platform template uses only the variables its sender passes.
|
|
1101
|
+
* Overrides the SMS template in this locale. It is Handlebars ({{name}}, {{#if}} {{#unless}} {{#each}} {{#with}}, lookup, equal): {{name}} in an HTML body is escaped, {{{name}}} is not; a subject, a text body and an SMS are text; an override of a platform template uses only the variables its sender passes. An environment's token is refused (403 token_out_of_scope) at a template that carries a user's own sign-in or reset credential, a link or a one-time code (the list is catalog.CarriesCredential): closed per slug in the handler, not by an x-palbase-credential mark, which would close the app's own notification templates too. Those stay open.
|
|
1102
1102
|
*/
|
|
1103
1103
|
putSmsTemplate(input: {
|
|
1104
1104
|
path: {
|
|
@@ -1114,7 +1114,7 @@ export declare function client(t: Transport): {
|
|
|
1114
1114
|
/**
|
|
1115
1115
|
* Remove an SMS override
|
|
1116
1116
|
*
|
|
1117
|
-
* Removes the project's override; the platform's default renders again.
|
|
1117
|
+
* Removes the project's override; the platform's default renders again. An environment's token is refused (403 token_out_of_scope) at a template that carries a user's own sign-in or reset credential, a link or a one-time code (the list is catalog.CarriesCredential): closed per slug in the handler, not by an x-palbase-credential mark, which would close the app's own notification templates too. Those stay open.
|
|
1118
1118
|
*/
|
|
1119
1119
|
deleteSmsTemplate(input: {
|
|
1120
1120
|
path: {
|
|
@@ -1149,7 +1149,7 @@ export declare function client(t: Transport): {
|
|
|
1149
1149
|
/**
|
|
1150
1150
|
* Map a slug to a WhatsApp template
|
|
1151
1151
|
*
|
|
1152
|
-
* Maps the slug in this locale to a template approved on the project's Meta account.
|
|
1152
|
+
* Maps the slug in this locale to a template approved on the project's Meta account. An environment's token is refused (403 token_out_of_scope) at a template that carries a user's own sign-in or reset credential, a link or a one-time code (the list is catalog.CarriesCredential): closed per slug in the handler, not by an x-palbase-credential mark, which would close the app's own notification templates too. Those stay open.
|
|
1153
1153
|
*/
|
|
1154
1154
|
putWhatsAppTemplate(input: {
|
|
1155
1155
|
path: {
|
|
@@ -1165,7 +1165,7 @@ export declare function client(t: Transport): {
|
|
|
1165
1165
|
/**
|
|
1166
1166
|
* Remove a WhatsApp template mapping
|
|
1167
1167
|
*
|
|
1168
|
-
* Removes the mapping.
|
|
1168
|
+
* Removes the mapping. An environment's token is refused (403 token_out_of_scope) at a template that carries a user's own sign-in or reset credential, a link or a one-time code (the list is catalog.CarriesCredential): closed per slug in the handler, not by an x-palbase-credential mark, which would close the app's own notification templates too. Those stay open.
|
|
1169
1169
|
*/
|
|
1170
1170
|
deleteWhatsAppTemplate(input: {
|
|
1171
1171
|
path: {
|