authoring
authoring
Interfaces
CollectionIntegrationDefinition
Defined in: pod/src/lib/authoring/integrations/integrations.ts:69
Properties
connection?
readonly optional connection?: HttpConnection;Defined in: pod/src/lib/authoring/integrations/integrations.ts:70
receive?
readonly optional receive?: Readonly<Record<string, CollectionReceiveBinding>>;Defined in: pod/src/lib/authoring/integrations/integrations.ts:71
send?
readonly optional send?: Readonly<Record<string, CollectionSendBinding>>;Defined in: pod/src/lib/authoring/integrations/integrations.ts:72
CollectionReceiveBinding
Defined in: pod/src/lib/authoring/integrations/integrations.ts:46
Properties
input?
readonly optional input?: ZodType<unknown, unknown, $ZodTypeInternals<unknown, unknown>>;Defined in: pod/src/lib/authoring/integrations/integrations.ts:50
pull?
readonly optional pull?: PullTrigger;Defined in: pod/src/lib/authoring/integrations/integrations.ts:48
systemEvent?
readonly optional systemEvent?: SystemEventTrigger;Defined in: pod/src/lib/authoring/integrations/integrations.ts:49
webhook?
readonly optional webhook?: WebhookTrigger;Defined in: pod/src/lib/authoring/integrations/integrations.ts:47
HttpConnection
Defined in: pod/src/lib/authoring/integrations/integrations.ts:7
Properties
authentication?
readonly optional authentication?:
| {
token: PrivateEnvReference;
type: "bearer";
}
| {
header: string;
type: "header";
value: PrivateEnvReference;
};Defined in: pod/src/lib/authoring/integrations/integrations.ts:9
baseUrl
readonly baseUrl: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:8
IntegrationRequest
Defined in: pod/src/lib/authoring/integrations/integrations.ts:38
Properties
headers?
readonly optional headers?: Readonly<Record<string, string>>;Defined in: pod/src/lib/authoring/integrations/integrations.ts:41
method
readonly method: "POST" | "PUT" | "PATCH" | "DELETE";Defined in: pod/src/lib/authoring/integrations/integrations.ts:39
path
readonly path: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:40
PrivateEnvReference
Defined in: pod/src/lib/authoring/integrations/integrations.ts:3
Properties
env
readonly env: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:4
PullTrigger
Defined in: pod/src/lib/authoring/integrations/integrations.ts:26
Properties
cursorQuery?
readonly optional cursorQuery?: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:30
method?
readonly optional method?: "POST" | "GET";Defined in: pod/src/lib/authoring/integrations/integrations.ts:28
nextCursorHeader?
readonly optional nextCursorHeader?: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:31
path
readonly path: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:29
schedule
readonly schedule: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:27
WebhookTrigger
Defined in: pod/src/lib/authoring/integrations/integrations.ts:16
Properties
authentication?
readonly optional authentication?: object;Defined in: pod/src/lib/authoring/integrations/integrations.ts:18
secret
readonly secret: PrivateEnvReference;signatureHeader?
readonly optional signatureHeader?: string;type
readonly type: "hmac-sha256";
eventIdHeader?
readonly optional eventIdHeader?: string;Defined in: pod/src/lib/authoring/integrations/integrations.ts:23
events?
readonly optional events?: readonly string[];Defined in: pod/src/lib/authoring/integrations/integrations.ts:17
Type Aliases
AfterApi
type AfterApi<S> = Omit<BeforeApi<S>, "db"> & object;Defined in: pod/src/lib/authoring/workspace/hook-api.ts:55
Type Declaration
db
readonly db: AfterDbApi<S>;Type Parameters
| Type Parameter | Default type |
|---|---|
S extends AnySchema |
AnySchema |
AnySchema
type AnySchema = object;Defined in: pod/src/lib/authoring/schema/types.ts:11
Workspace schema value produced by defineRegistry.
Properties
BeforeApi
type BeforeApi<S> = object;Defined in: pod/src/lib/authoring/workspace/hook-api.ts:31
Server hook/automation/handler API — direct db ops (Promise, not RemoteQuery) + builtins.
Type Parameters
| Type Parameter | Default type |
|---|---|
S extends AnySchema |
AnySchema |
Properties
CollectionHooks
type CollectionHooks<S, N> = object;Defined in: pod/src/lib/authoring/schema/collection-behavior.ts:242
Type Parameters
| Type Parameter |
|---|
S extends AnySchema |
N extends TableName<S> |
Properties
CollectionIntegrations
type CollectionIntegrations<S, N> = NonNullable<FilesystemCollectionDefinition<S, N>["integrations"]>;Defined in: pod/src/lib/authoring/schema/collection-behavior.ts:253
Type Parameters
| Type Parameter |
|---|
S extends AnySchema |
N extends TableName<S> |
CollectionMutationEvent
type CollectionMutationEvent = "create" | "update" | "delete";Defined in: pod/src/lib/authoring/integrations/integrations.ts:44
CollectionPipelines
type CollectionPipelines<S, N> = object;Defined in: pod/src/lib/authoring/schema/collection-behavior.ts:248
Type Parameters
| Type Parameter |
|---|
S extends AnySchema |
N extends TableName<S> |
Properties
CollectionRegistryFor
type CollectionRegistryFor<S, THooks> = { readonly [N in TableName<S>]: CollectionType<SchemaRow<S, N>, HookMutationInput<THooks[N], "create", MutationInsertFor<S, N>>, HookMutationInput<THooks[N], "update", MutationUpdateFor<S, N>>> };Defined in: pod/src/lib/authoring/filesystem.ts:62
Type Parameters
| Type Parameter | Default type |
|---|---|
S extends AnySchema |
- |
THooks extends Readonly<Partial<Record<TableName<S>, unknown>>> |
Readonly<Partial<Record<TableName<S>, unknown>>> |
CollectionSendBinding
type CollectionSendBinding = CollectionSendDestination & object;Defined in: pod/src/lib/authoring/integrations/integrations.ts:63
Type Declaration
on
readonly on:
| CollectionMutationEvent
| Readonly<Partial<Record<CollectionMutationEvent, unknown>>>;transform?
readonly optional transform?: unknown;GroupDefinition
type GroupDefinition = object;Defined in: pod/src/lib/authoring/filesystem.ts:147
Properties
ModelDeclaration
type ModelDeclaration<TColumns> = object;Defined in: pod/src/lib/authoring/filesystem.ts:20
Type Parameters
| Type Parameter | Default type |
|---|---|
TColumns extends NorbitalColumns |
NorbitalColumns |
Properties
ModelsDefinition
type ModelsDefinition = Readonly<Record<string, ModelDeclaration>>;Defined in: pod/src/lib/authoring/filesystem.ts:51
RelationshipsFor
type RelationshipsFor<TModels> = (helpers) => RelationsBuilderConfig<TablesForModels<TModels>>;Defined in: pod/src/lib/authoring/filesystem.ts:94
Type Parameters
| Type Parameter |
|---|
TModels extends ModelsDefinition |
Parameters
| Parameter | Type |
|---|---|
helpers |
RelationsBuilder<TablesForModels<TModels>> |
Returns
RelationsBuilderConfig<TablesForModels<TModels>>
SchemaQueryConfig
type SchemaQueryConfig<S, N> = DBQueryConfigWithComment<"many", S["relations"], S["relations"][N]>;Defined in: pod/src/lib/authoring/schema/types.ts:29
Type Parameters
| Type Parameter |
|---|
S extends AnySchema |
N extends TableName<S> |
SchemaQueryRow
type SchemaQueryRow<S, N, Cfg> = [Cfg] extends [undefined] ? SchemaRow<S, N> : Cfg extends SchemaQueryConfig<S, N> ? BuildQueryResult<S["relations"], S["relations"][N], Cfg> : never;Defined in: pod/src/lib/authoring/schema/types.ts:34
Type Parameters
| Type Parameter | Default type |
|---|---|
S extends AnySchema |
- |
N extends TableName<S> |
- |
Cfg extends | SchemaQueryConfig<S, N> | undefined |
undefined |
SchemaRow
type SchemaRow<S, N> = S["tables"][N]["$inferSelect"];Defined in: pod/src/lib/authoring/schema/types.ts:27
Type Parameters
| Type Parameter |
|---|
S extends AnySchema |
N extends TableName<S> |
TableName
type TableName<S> = keyof S["tables"] & string;Defined in: pod/src/lib/authoring/schema/types.ts:25
Type Parameters
| Type Parameter |
|---|
S extends AnySchema |
TablesForModels
type TablesForModels<TModels> = { readonly [K in keyof TModels & string]: NorbitalTable<K, InferTableSelect<ModelColumns<TModels[K]>>> };Defined in: pod/src/lib/authoring/filesystem.ts:87
Type Parameters
| Type Parameter |
|---|
TModels extends ModelsDefinition |
TExportAction
type TExportAction = object;Defined in: pod/src/lib/authoring/automations/pipelines.ts:13
Properties
| Property | Type | Defined in |
|---|---|---|
attachments |
TFileAttachment[] |
pod/src/lib/authoring/automations/pipelines.ts:15 |
label |
string |
pod/src/lib/authoring/automations/pipelines.ts:14 |
metadata? |
Record<string, unknown> |
pod/src/lib/authoring/automations/pipelines.ts:16 |
TExportManifest
type TExportManifest = TExportAction[];Defined in: pod/src/lib/authoring/automations/pipelines.ts:19
TFileAttachment
type TFileAttachment =
| {
content: string;
contentType: "HTML";
name: string;
}
| {
content: string;
contentType: "PDF";
name: string;
}
| {
content: unknown;
contentType: "CSV";
name: string;
}
| {
content: number[];
contentType: "XLSX";
name: string;
}
| {
content: unknown;
contentType: "JSON";
name: string;
}
| {
content: string;
contentType: "TEXT";
name: string;
}
| {
content: number[];
contentType: "BINARY";
name: string;
};Defined in: pod/src/lib/authoring/automations/pipelines.ts:4
WorkspaceAppDef
type WorkspaceAppDef = object;Defined in: pod/src/lib/authoring/workspace/define-workspace.ts:38
Properties
| Property | Modifier | Type | Description | Defined in |
|---|---|---|---|---|
banner? |
readonly |
string | null |
- | pod/src/lib/authoring/workspace/define-workspace.ts:46 |
component? |
readonly |
| Component<Record<string, never>> | Record<string, WorkspaceAppDef> |
- | pod/src/lib/authoring/workspace/define-workspace.ts:47 |
config? |
readonly |
object |
- | pod/src/lib/authoring/workspace/define-workspace.ts:48 |
config.whitelist? |
readonly |
object |
- | pod/src/lib/authoring/workspace/define-workspace.ts:49 |
config.whitelist.origins? |
readonly |
readonly string[] |
- | pod/src/lib/authoring/workspace/define-workspace.ts:49 |
defaultChild? |
readonly |
string | null |
Child key used as this application group's landing destination. | pod/src/lib/authoring/workspace/define-workspace.ts:44 |
description |
readonly |
string | null |
- | pod/src/lib/authoring/workspace/define-workspace.ts:40 |
icon |
readonly |
string | null |
- | pod/src/lib/authoring/workspace/define-workspace.ts:41 |
layout? |
readonly |
"flow" | "contain" |
- | pod/src/lib/authoring/workspace/define-workspace.ts:42 |
name |
readonly |
string |
- | pod/src/lib/authoring/workspace/define-workspace.ts:39 |
thumbnail? |
readonly |
string | null |
- | pod/src/lib/authoring/workspace/define-workspace.ts:45 |
WorkspaceCollectionRegistry
type WorkspaceCollectionRegistry<TWorkspace> = TWorkspace extends WorkspaceInstance<infer S, infer TCollections, infer _TInvoke> ? { readonly [TName in TCollections[number]["name"]]: CollectionType<S["tables"][TName]["$inferSelect"], CreateInput<S, TName, Extract<TCollections[number], { name: TName }>["def"]>, UpdateInput<S, TName, Extract<TCollections[number], { name: TName }>["def"]>> } : never;Defined in: pod/src/lib/authoring/workspace/define-workspace.ts:135
Concrete collection row/create/update types carried from a tenant workspace into shared UI.
Type Parameters
| Type Parameter |
|---|
TWorkspace |
WorkspaceConnections
type WorkspaceConnections = Readonly<Record<string, HttpConnection>>;Defined in: pod/src/lib/authoring/integrations/integrations.ts:14
Variables
dateRangeZodSchema
const dateRangeZodSchema: ZodObject<{
end: ZodString;
start: ZodString;
}, $strip>;Defined in: pod/src/lib/authoring/builtin/custom_types.ts:23
fileZodSchema
const fileZodSchema: ZodUUID;Defined in: pod/src/lib/authoring/builtin/custom_types.ts:45
UUID reference to a platform document_asset record.
geolocationZodSchema
const geolocationZodSchema: ZodObject<{
formatted_address: ZodString;
geometry: ZodNullable<ZodObject<{
lat: ZodNumber;
lon: ZodNumber;
}, $strip>>;
srid: ZodNumber;
type: ZodLiteral<"Point">;
}, $strip>;Defined in: pod/src/lib/authoring/builtin/custom_types.ts:32
ISO_CURRENCY
const ISO_CURRENCY: readonly [{
code: "AED";
country: "AE";
flag: "🇦🇪";
name: "UAE Dirham";
symbol: "د.إ";
}, {
code: "AFN";
country: "AF";
flag: "🇦🇫";
name: "Afghan Afghani";
symbol: "؋";
}, {
code: "ALL";
country: "AL";
flag: "🇦🇱";
name: "Albanian Lek";
symbol: "L";
}, {
code: "AMD";
country: "AM";
flag: "🇦🇲";
name: "Armenian Dram";
symbol: "֏";
}, {
code: "ANG";
country: "CW";
flag: "🇨🇼";
name: "Netherlands Antillean Guilder";
symbol: "ƒ";
}, {
code: "AOA";
country: "AO";
flag: "🇦🇴";
name: "Angolan Kwanza";
symbol: "Kz";
}, {
code: "ARS";
country: "AR";
flag: "🇦🇷";
name: "Argentine Peso";
symbol: "$";
}, {
code: "AUD";
country: "AU";
flag: "🇦🇺";
name: "Australian Dollar";
symbol: "A$";
}, {
code: "AWG";
country: "AW";
flag: "🇦🇼";
name: "Aruban Florin";
symbol: "ƒ";
}, {
code: "AZN";
country: "AZ";
flag: "🇦🇿";
name: "Azerbaijani Manat";
symbol: "₼";
}, {
code: "BAM";
country: "BA";
flag: "🇧🇦";
name: "Bosnia and Herzegovina Convertible Mark";
symbol: "КМ";
}, {
code: "BBD";
country: "BB";
flag: "🇧🇧";
name: "Barbadian Dollar";
symbol: "$";
}, {
code: "BDT";
country: "BD";
flag: "🇧🇩";
name: "Bangladeshi Taka";
symbol: "৳";
}, {
code: "BGN";
country: "BG";
flag: "🇧🇬";
name: "Bulgarian Lev";
symbol: "лв";
}, {
code: "BHD";
country: "BH";
flag: "🇧🇭";
name: "Bahraini Dinar";
symbol: ".د.ب";
}, {
code: "BIF";
country: "BI";
flag: "🇧🇮";
name: "Burundian Franc";
symbol: "Fr";
}, {
code: "BMD";
country: "BM";
flag: "🇧🇲";
name: "Bermudian Dollar";
symbol: "$";
}, {
code: "BND";
country: "BN";
flag: "🇧🇳";
name: "Brunei Dollar";
symbol: "$";
}, {
code: "BOB";
country: "BO";
flag: "🇧🇴";
name: "Bolivian Boliviano";
symbol: "Bs.";
}, {
code: "BOV";
country: "BO";
flag: "🇧🇴";
name: "Bolivian Mvdol";
symbol: "¤";
}, {
code: "BRL";
country: "BR";
flag: "🇧🇷";
name: "Brazilian Real";
symbol: "R$";
}, {
code: "BSD";
country: "BS";
flag: "🇧🇸";
name: "Bahamian Dollar";
symbol: "$";
}, {
code: "BTN";
country: "BT";
flag: "🇧🇹";
name: "Bhutanese Ngultrum";
symbol: "Nu.";
}, {
code: "BWP";
country: "BW";
flag: "🇧🇼";
name: "Botswana Pula";
symbol: "P";
}, {
code: "BYN";
country: "BY";
flag: "🇧🇾";
name: "Belarusian Ruble";
symbol: "Br";
}, {
code: "BZD";
country: "BZ";
flag: "🇧🇿";
name: "Belize Dollar";
symbol: "$";
}, {
code: "CAD";
country: "CA";
flag: "🇨🇦";
name: "Canadian Dollar";
symbol: "C$";
}, {
code: "CDF";
country: "CD";
flag: "🇨🇩";
name: "Congolese Franc";
symbol: "Fr";
}, {
code: "CHE";
country: "CH";
flag: "🇨🇭";
name: "WIR Euro";
symbol: "¤";
}, {
code: "CHF";
country: "CH";
flag: "🇨🇭";
name: "Swiss Franc";
symbol: "Fr";
}, {
code: "CHW";
country: "CH";
flag: "🇨🇭";
name: "WIR Franc";
symbol: "¤";
}, {
code: "CLF";
country: "CL";
flag: "🇨🇱";
name: "Chilean Unit of Account";
symbol: "¤";
}, {
code: "CLP";
country: "CL";
flag: "🇨🇱";
name: "Chilean Peso";
symbol: "$";
}, {
code: "CNY";
country: "CN";
flag: "🇨🇳";
name: "Chinese Yuan";
symbol: "¥";
}, {
code: "COP";
country: "CO";
flag: "🇨🇴";
name: "Colombian Peso";
symbol: "$";
}, {
code: "COU";
country: "CO";
flag: "🇨🇴";
name: "Unidad de Valor Real";
symbol: "¤";
}, {
code: "CRC";
country: "CR";
flag: "🇨🇷";
name: "Costa Rican Colón";
symbol: "₡";
}, {
code: "CUC";
country: "CU";
flag: "🇨🇺";
name: "Cuban Convertible Peso";
symbol: "$";
}, {
code: "CUP";
country: "CU";
flag: "🇨🇺";
name: "Cuban Peso";
symbol: "$";
}, {
code: "CVE";
country: "CV";
flag: "🇨🇻";
name: "Cape Verdean Escudo";
symbol: "$";
}, {
code: "CZK";
country: "CZ";
flag: "🇨🇿";
name: "Czech Koruna";
symbol: "Kč";
}, {
code: "DJF";
country: "DJ";
flag: "🇩🇯";
name: "Djiboutian Franc";
symbol: "Fr";
}, {
code: "DKK";
country: "DK";
flag: "🇩🇰";
name: "Danish Krone";
symbol: "kr";
}, {
code: "DOP";
country: "DO";
flag: "🇩🇴";
name: "Dominican Peso";
symbol: "$";
}, {
code: "DZD";
country: "DZ";
flag: "🇩🇿";
name: "Algerian Dinar";
symbol: "د.ج";
}, {
code: "EGP";
country: "EG";
flag: "🇪🇬";
name: "Egyptian Pound";
symbol: "£";
}, {
code: "ERN";
country: "ER";
flag: "🇪🇷";
name: "Eritrean Nakfa";
symbol: "Nfk";
}, {
code: "ETB";
country: "ET";
flag: "🇪🇹";
name: "Ethiopian Birr";
symbol: "Br";
}, {
code: "EUR";
country: "DE";
flag: "🇩🇪";
name: "Euro";
symbol: "€";
}, {
code: "FJD";
country: "FJ";
flag: "🇫🇯";
name: "Fijian Dollar";
symbol: "$";
}, {
code: "FKP";
country: "FK";
flag: "🇫🇰";
name: "Falkland Islands Pound";
symbol: "£";
}, {
code: "GBP";
country: "GB";
flag: "🇬🇧";
name: "British Pound";
symbol: "£";
}, {
code: "GEL";
country: "GE";
flag: "🇬🇪";
name: "Georgian Lari";
symbol: "₾";
}, {
code: "GHS";
country: "GH";
flag: "🇬🇭";
name: "Ghanaian Cedi";
symbol: "₵";
}, {
code: "GIP";
country: "GI";
flag: "🇬🇮";
name: "Gibraltar Pound";
symbol: "£";
}, {
code: "GMD";
country: "GM";
flag: "🇬🇲";
name: "Gambian Dalasi";
symbol: "D";
}, {
code: "GNF";
country: "GN";
flag: "🇬🇳";
name: "Guinean Franc";
symbol: "Fr";
}, {
code: "GTQ";
country: "GT";
flag: "🇬🇹";
name: "Guatemalan Quetzal";
symbol: "Q";
}, {
code: "GYD";
country: "GY";
flag: "🇬🇾";
name: "Guyanese Dollar";
symbol: "$";
}, {
code: "HKD";
country: "HK";
flag: "🇭🇰";
name: "Hong Kong Dollar";
symbol: "HK$";
}, {
code: "HNL";
country: "HN";
flag: "🇭🇳";
name: "Honduran Lempira";
symbol: "L";
}, {
code: "HRK";
country: "HR";
flag: "🇭🇷";
name: "Croatian Kuna";
symbol: "kn";
}, {
code: "HTG";
country: "HT";
flag: "🇭🇹";
name: "Haitian Gourde";
symbol: "G";
}, {
code: "HUF";
country: "HU";
flag: "🇭🇺";
name: "Hungarian Forint";
symbol: "Ft";
}, {
code: "IDR";
country: "ID";
flag: "🇮🇩";
name: "Indonesian Rupiah";
symbol: "Rp";
}, {
code: "ILS";
country: "IL";
flag: "🇮🇱";
name: "Israeli Shekel";
symbol: "₪";
}, {
code: "INR";
country: "IN";
flag: "🇮🇳";
name: "Indian Rupee";
symbol: "₹";
}, {
code: "IQD";
country: "IQ";
flag: "🇮🇶";
name: "Iraqi Dinar";
symbol: "ع.د";
}, {
code: "IRR";
country: "IR";
flag: "🇮🇷";
name: "Iranian Rial";
symbol: "﷼";
}, {
code: "ISK";
country: "IS";
flag: "🇮🇸";
name: "Icelandic Króna";
symbol: "kr";
}, {
code: "JMD";
country: "JM";
flag: "🇯🇲";
name: "Jamaican Dollar";
symbol: "$";
}, {
code: "JOD";
country: "JO";
flag: "🇯🇴";
name: "Jordanian Dinar";
symbol: "د.ا";
}, {
code: "JPY";
country: "JP";
flag: "🇯🇵";
name: "Japanese Yen";
symbol: "¥";
}, {
code: "KES";
country: "KE";
flag: "🇰🇪";
name: "Kenyan Shilling";
symbol: "Sh";
}, {
code: "KGS";
country: "KG";
flag: "🇰🇬";
name: "Kyrgyzstani Som";
symbol: "с";
}, {
code: "KHR";
country: "KH";
flag: "🇰🇭";
name: "Cambodian Riel";
symbol: "៛";
}, {
code: "KMF";
country: "KM";
flag: "🇰🇲";
name: "Comorian Franc";
symbol: "Fr";
}, {
code: "KPW";
country: "KP";
flag: "🇰🇵";
name: "North Korean Won";
symbol: "₩";
}, {
code: "KRW";
country: "KR";
flag: "🇰🇷";
name: "South Korean Won";
symbol: "₩";
}, {
code: "KWD";
country: "KW";
flag: "🇰🇼";
name: "Kuwaiti Dinar";
symbol: "د.ك";
}, {
code: "KYD";
country: "KY";
flag: "🇰🇾";
name: "Cayman Islands Dollar";
symbol: "$";
}, {
code: "KZT";
country: "KZ";
flag: "🇰🇿";
name: "Kazakhstani Tenge";
symbol: "₸";
}, {
code: "LAK";
country: "LA";
flag: "🇱🇦";
name: "Lao Kip";
symbol: "₭";
}, {
code: "LBP";
country: "LB";
flag: "🇱🇧";
name: "Lebanese Pound";
symbol: "ل.ل";
}, {
code: "LKR";
country: "LK";
flag: "🇱🇰";
name: "Sri Lankan Rupee";
symbol: "Rs";
}, {
code: "LRD";
country: "LR";
flag: "🇱🇷";
name: "Liberian Dollar";
symbol: "$";
}, {
code: "LSL";
country: "LS";
flag: "🇱🇸";
name: "Lesotho Loti";
symbol: "L";
}, {
code: "LYD";
country: "LY";
flag: "🇱🇾";
name: "Libyan Dinar";
symbol: "ل.د";
}, {
code: "MAD";
country: "MA";
flag: "🇲🇦";
name: "Moroccan Dirham";
symbol: "د.م.";
}, {
code: "MDL";
country: "MD";
flag: "🇲🇩";
name: "Moldovan Leu";
symbol: "L";
}, {
code: "MGA";
country: "MG";
flag: "🇲🇬";
name: "Malagasy Ariary";
symbol: "Ar";
}, {
code: "MKD";
country: "MK";
flag: "🇲🇰";
name: "Macedonian Denar";
symbol: "ден";
}, {
code: "MMK";
country: "MM";
flag: "🇲🇲";
name: "Myanmar Kyat";
symbol: "Ks";
}, {
code: "MNT";
country: "MN";
flag: "🇲🇳";
name: "Mongolian Tugrik";
symbol: "₮";
}, {
code: "MOP";
country: "MO";
flag: "🇲🇴";
name: "Macanese Pataca";
symbol: "P";
}, {
code: "MRU";
country: "MR";
flag: "🇲🇷";
name: "Mauritanian Ouguiya";
symbol: "UM";
}, {
code: "MUR";
country: "MU";
flag: "🇲🇺";
name: "Mauritian Rupee";
symbol: "₨";
}, {
code: "MVR";
country: "MV";
flag: "🇲🇻";
name: "Maldivian Rufiyaa";
symbol: ".ރ";
}, {
code: "MWK";
country: "MW";
flag: "🇲🇼";
name: "Malawian Kwacha";
symbol: "MK";
}, {
code: "MXN";
country: "MX";
flag: "🇲🇽";
name: "Mexican Peso";
symbol: "$";
}, {
code: "MXV";
country: "MX";
flag: "🇲🇽";
name: "Mexican Unidad de Inversion";
symbol: "¤";
}, {
code: "MYR";
country: "MY";
flag: "🇲🇾";
name: "Malaysian Ringgit";
symbol: "RM";
}, {
code: "MZN";
country: "MZ";
flag: "🇲🇿";
name: "Mozambican Metical";
symbol: "MT";
}, {
code: "NAD";
country: "NA";
flag: "🇳🇦";
name: "Namibian Dollar";
symbol: "$";
}, {
code: "NGN";
country: "NG";
flag: "🇳🇬";
name: "Nigerian Naira";
symbol: "₦";
}, {
code: "NIO";
country: "NI";
flag: "🇳🇮";
name: "Nicaraguan Córdoba";
symbol: "C$";
}, {
code: "NOK";
country: "NO";
flag: "🇳🇴";
name: "Norwegian Krone";
symbol: "kr";
}, {
code: "NPR";
country: "NP";
flag: "🇳🇵";
name: "Nepalese Rupee";
symbol: "₨";
}, {
code: "NZD";
country: "NZ";
flag: "🇳🇿";
name: "New Zealand Dollar";
symbol: "NZ$";
}, {
code: "OMR";
country: "OM";
flag: "🇴🇲";
name: "Omani Rial";
symbol: "ر.ع.";
}, {
code: "PAB";
country: "PA";
flag: "🇵🇦";
name: "Panamanian Balboa";
symbol: "B/.";
}, {
code: "PEN";
country: "PE";
flag: "🇵🇪";
name: "Peruvian Sol";
symbol: "S/";
}, {
code: "PGK";
country: "PG";
flag: "🇵🇬";
name: "Papua New Guinean Kina";
symbol: "K";
}, {
code: "PHP";
country: "PH";
flag: "🇵🇭";
name: "Philippine Peso";
symbol: "₱";
}, {
code: "PKR";
country: "PK";
flag: "🇵🇰";
name: "Pakistani Rupee";
symbol: "₨";
}, {
code: "PLN";
country: "PL";
flag: "🇵🇱";
name: "Polish Złoty";
symbol: "zł";
}, {
code: "PYG";
country: "PY";
flag: "🇵🇾";
name: "Paraguayan Guaraní";
symbol: "₲";
}, {
code: "QAR";
country: "QA";
flag: "🇶🇦";
name: "Qatari Riyal";
symbol: "ر.ق";
}, {
code: "RON";
country: "RO";
flag: "🇷🇴";
name: "Romanian Leu";
symbol: "lei";
}, {
code: "RSD";
country: "RS";
flag: "🇷🇸";
name: "Serbian Dinar";
symbol: "дин.";
}, {
code: "RUB";
country: "RU";
flag: "🇷🇺";
name: "Russian Ruble";
symbol: "₽";
}, {
code: "RWF";
country: "RW";
flag: "🇷🇼";
name: "Rwandan Franc";
symbol: "Fr";
}, {
code: "SAR";
country: "SA";
flag: "🇸🇦";
name: "Saudi Riyal";
symbol: "﷼";
}, {
code: "SBD";
country: "SB";
flag: "🇸🇧";
name: "Solomon Islands Dollar";
symbol: "$";
}, {
code: "SCR";
country: "SC";
flag: "🇸🇨";
name: "Seychellois Rupee";
symbol: "₨";
}, {
code: "SDG";
country: "SD";
flag: "🇸🇩";
name: "Sudanese Pound";
symbol: "ج.س.";
}, {
code: "SEK";
country: "SE";
flag: "🇸🇪";
name: "Swedish Krona";
symbol: "kr";
}, {
code: "SGD";
country: "SG";
flag: "🇸🇬";
name: "Singapore Dollar";
symbol: "S$";
}, {
code: "SHP";
country: "SH";
flag: "🇸🇭";
name: "Saint Helena Pound";
symbol: "£";
}, {
code: "SLL";
country: "SL";
flag: "🇸🇱";
name: "Sierra Leonean Leone";
symbol: "Le";
}, {
code: "SOS";
country: "SO";
flag: "🇸🇴";
name: "Somali Shilling";
symbol: "Sh";
}, {
code: "SRD";
country: "SR";
flag: "🇸🇷";
name: "Surinamese Dollar";
symbol: "$";
}, {
code: "SSP";
country: "SS";
flag: "🇸🇸";
name: "South Sudanese Pound";
symbol: "£";
}, {
code: "STN";
country: "ST";
flag: "🇸🇹";
name: "São Tomé and Príncipe Dobra";
symbol: "Db";
}, {
code: "SVC";
country: "SV";
flag: "🇸🇻";
name: "Salvadoran Colón";
symbol: "$";
}, {
code: "SYP";
country: "SY";
flag: "🇸🇾";
name: "Syrian Pound";
symbol: "£S";
}, {
code: "SZL";
country: "SZ";
flag: "🇸🇿";
name: "Swazi Lilangeni";
symbol: "L";
}, {
code: "THB";
country: "TH";
flag: "🇹🇭";
name: "Thai Baht";
symbol: "฿";
}, {
code: "TJS";
country: "TJ";
flag: "🇹🇯";
name: "Tajikistani Somoni";
symbol: "ЅМ";
}, {
code: "TMT";
country: "TM";
flag: "🇹🇲";
name: "Turkmenistani Manat";
symbol: "m";
}, {
code: "TND";
country: "TN";
flag: "🇹🇳";
name: "Tunisian Dinar";
symbol: "د.ت";
}, {
code: "TOP";
country: "TO";
flag: "🇹🇴";
name: "Tongan Paʻanga";
symbol: "T$";
}, {
code: "TRY";
country: "TR";
flag: "🇹🇷";
name: "Turkish Lira";
symbol: "₺";
}, {
code: "TTD";
country: "TT";
flag: "🇹🇹";
name: "Trinidad and Tobago Dollar";
symbol: "$";
}, {
code: "TWD";
country: "TW";
flag: "🇹🇼";
name: "New Taiwan Dollar";
symbol: "$";
}, {
code: "TZS";
country: "TZ";
flag: "🇹🇿";
name: "Tanzanian Shilling";
symbol: "Sh";
}, {
code: "UAH";
country: "UA";
flag: "🇺🇦";
name: "Ukrainian Hryvnia";
symbol: "₴";
}, {
code: "UGX";
country: "UG";
flag: "🇺🇬";
name: "Ugandan Shilling";
symbol: "Sh";
}, {
code: "USD";
country: "US";
flag: "🇺🇸";
name: "US Dollar";
symbol: "$";
}, {
code: "USN";
country: "US";
flag: "🇺🇸";
name: "US Dollar (Next day)";
symbol: "$";
}, {
code: "UYI";
country: "UY";
flag: "🇺🇾";
name: "Uruguay Peso en Unidades Indexadas";
symbol: "¤";
}, {
code: "UYU";
country: "UY";
flag: "🇺🇾";
name: "Uruguayan Peso";
symbol: "$";
}, {
code: "UYW";
country: "UY";
flag: "🇺🇾";
name: "Unidad Previsional";
symbol: "¤";
}, {
code: "UZS";
country: "UZ";
flag: "🇺🇿";
name: "Uzbekistani Som";
symbol: "сўм";
}, {
code: "VED";
country: "VE";
flag: "🇻🇪";
name: "Venezuelan Bolívar Digital";
symbol: "Bs.D";
}, {
code: "VES";
country: "VE";
flag: "🇻🇪";
name: "Venezuelan Bolívar Soberano";
symbol: "Bs.S";
}, {
code: "VND";
country: "VN";
flag: "🇻🇳";
name: "Vietnamese Dong";
symbol: "₫";
}, {
code: "VUV";
country: "VU";
flag: "🇻🇺";
name: "Vanuatu Vatu";
symbol: "Vt";
}, {
code: "WST";
country: "WS";
flag: "🇼🇸";
name: "Samoan Tala";
symbol: "T";
}, {
code: "XAF";
country: "CM";
flag: "🇨🇲";
name: "Central African CFA Franc";
symbol: "Fr";
}, {
code: "XAG";
country: null;
flag: null;
name: "Silver Ounce";
symbol: "oz";
}, {
code: "XAU";
country: null;
flag: null;
name: "Gold Ounce";
symbol: "oz";
}, {
code: "XBA";
country: null;
flag: null;
name: "European Composite Unit";
symbol: "¤";
}, {
code: "XBB";
country: null;
flag: null;
name: "European Monetary Unit";
symbol: "¤";
}, {
code: "XBC";
country: null;
flag: null;
name: "European Unit of Account 9";
symbol: "¤";
}, {
code: "XBD";
country: null;
flag: null;
name: "European Unit of Account 17";
symbol: "¤";
}, {
code: "XCD";
country: "AG";
flag: "🇦🇬";
name: "Eastern Caribbean Dollar";
symbol: "$";
}, {
code: "XDR";
country: null;
flag: null;
name: "Special Drawing Rights";
symbol: "¤";
}, {
code: "XOF";
country: "SN";
flag: "🇸🇳";
name: "West African CFA Franc";
symbol: "Fr";
}, {
code: "XPD";
country: null;
flag: null;
name: "Palladium Ounce";
symbol: "oz";
}, {
code: "XPF";
country: "PF";
flag: "🇵🇫";
name: "CFP Franc";
symbol: "Fr";
}, {
code: "XPT";
country: null;
flag: null;
name: "Platinum Ounce";
symbol: "oz";
}, {
code: "XSU";
country: null;
flag: null;
name: "SUCRE";
symbol: "¤";
}, {
code: "XTS";
country: null;
flag: null;
name: "Testing Currency Code";
symbol: "¤";
}, {
code: "XUA";
country: null;
flag: null;
name: "ADB Unit of Account";
symbol: "¤";
}, {
code: "XXX";
country: null;
flag: null;
name: "Unknown Currency";
symbol: "¤";
}, {
code: "YER";
country: "YE";
flag: "🇾🇪";
name: "Yemeni Rial";
symbol: "﷼";
}, {
code: "ZAR";
country: "ZA";
flag: "🇿🇦";
name: "South African Rand";
symbol: "R";
}, {
code: "ZMW";
country: "ZM";
flag: "🇿🇲";
name: "Zambian Kwacha";
symbol: "ZK";
}, {
code: "ZWL";
country: "ZW";
flag: "🇿🇼";
name: "Zimbabwean Dollar";
symbol: "$";
}];Defined in: std/build/finance/currency.d.ts:8
Consolidated ISO Currency constant with all currency information Each object contains: code, symbol, name, country, and flag
moneyZodSchema
const moneyZodSchema: ZodObject<{
currency: ZodString;
value: ZodNumber;
}, $strip>;Defined in: pod/src/lib/authoring/builtin/money.ts:5
Functions
custom()
function custom<T>(schema, options?): PgCustomColumnBuilder<{
}>;Defined in: pod/src/lib/authoring/builtin/columns.ts:87
JSONB column validated by an inline Zod schema. Use .array() for list columns.
Type Parameters
| Type Parameter |
|---|
T |
Parameters
| Parameter | Type |
|---|---|
schema |
ZodType<T> |
options |
{ kind?: string; } |
options.kind? |
string |
Returns
PgCustomColumnBuilder<{
}>
dateRange()
function dateRange(): PgCustomColumnBuilder<{
}>;Defined in: pod/src/lib/authoring/builtin/columns.ts:55
Calendar date range { start, end } stored as UTC ISO JSONB. Use .array() for list columns.
Returns
PgCustomColumnBuilder<{
}>
defineAutomation()
Call Signature
function defineAutomation(trigger, spec): AutomationDefinition;Defined in: pod/src/lib/authoring/automations/automations.ts:74
Parameters
| Parameter | Type |
|---|---|
trigger |
AutomationTrigger |
spec |
AutomationSpec |
Returns
AutomationDefinition
Call Signature
function defineAutomation<S, TTrigger>(trigger, handler): AutomationDefinition;Defined in: pod/src/lib/authoring/automations/automations.ts:78
Type Parameters
| Type Parameter | Default type |
|---|---|
S extends AnySchema |
- |
TTrigger extends AutomationTrigger |
AutomationTrigger |
Parameters
| Parameter | Type |
|---|---|
trigger |
TTrigger |
handler |
AutomationHandler<S, TTrigger> |
Returns
AutomationDefinition
defineCommandHandler()
function defineCommandHandler<TSchema, S, TOutput>(def): CommandHandlerDefinition<TSchema, TOutput>;Defined in: pod/src/lib/authoring/automations/handlers.ts:61
Type Parameters
| Type Parameter | Default type |
|---|---|
TSchema extends StandardSchemaV1<unknown, unknown> |
- |
S extends AnySchema |
AnySchema |
TOutput |
unknown |
Parameters
| Parameter | Type |
|---|---|
def |
{ handler: TypedHandlerFn<S, TSchema, TOutput>; schema: TSchema; } |
def.handler |
TypedHandlerFn<S, TSchema, TOutput> |
def.schema |
TSchema |
Returns
CommandHandlerDefinition<TSchema, TOutput>
defineModel()
Call Signature
function defineModel<TColumns>(columns, meta?): ModelDeclaration<TColumns>;Defined in: pod/src/lib/authoring/filesystem.ts:27
Type Parameters
| Type Parameter |
|---|
TColumns extends NorbitalColumns |
Parameters
| Parameter | Type |
|---|---|
columns |
TColumns |
meta? |
TableMeta |
Returns
ModelDeclaration<TColumns>
Call Signature
function defineModel<TColumns>(
columns,
extraConfig,
meta?): ModelDeclaration<TColumns>;Defined in: pod/src/lib/authoring/filesystem.ts:31
Type Parameters
| Type Parameter |
|---|
TColumns extends NorbitalColumns |
Parameters
| Parameter | Type |
|---|---|
columns |
TColumns |
extraConfig |
(self) => PgTableExtraConfigValue[] |
meta? |
TableMeta |
Returns
ModelDeclaration<TColumns>
defineModels()
function defineModels<TModels>(models): TModels;Defined in: pod/src/lib/authoring/filesystem.ts:75
Type Parameters
| Type Parameter |
|---|
TModels extends Readonly<Record<string, ModelDeclaration<NorbitalColumns>>> |
Parameters
| Parameter | Type |
|---|---|
models |
TModels |
Returns
TModels
defineQueryHandler()
function defineQueryHandler<TSchema, S, TOutput>(def): QueryHandlerDefinition<TSchema, TOutput>;Defined in: pod/src/lib/authoring/automations/handlers.ts:46
Type Parameters
| Type Parameter | Default type |
|---|---|
TSchema extends StandardSchemaV1<unknown, unknown> |
- |
S extends AnySchema |
AnySchema |
TOutput |
unknown |
Parameters
| Parameter | Type |
|---|---|
def |
{ handler: TypedHandlerFn<S, TSchema, TOutput>; schema: TSchema; } |
def.handler |
TypedHandlerFn<S, TSchema, TOutput> |
def.schema |
TSchema |
Returns
QueryHandlerDefinition<TSchema, TOutput>
defineRegistry()
function defineRegistry<TModels, TConfig>(input): RegistryFor<TModels, TConfig>;Defined in: pod/src/lib/authoring/filesystem.ts:130
Type Parameters
| Type Parameter |
|---|
TModels extends Readonly<Record<string, ModelDeclaration<NorbitalColumns>>> |
TConfig extends RelationsBuilderConfig<TablesForModels<TModels>> |
Parameters
| Parameter | Type |
|---|---|
input |
{ models: TModels; relationships: (helpers) => TConfig; } |
input.models |
TModels |
input.relationships |
(helpers) => TConfig |
Returns
RegistryFor<TModels, TConfig>
defineWorkspace()
function defineWorkspace<S, TCollections, TInvoke>(schema, input): WorkspaceInstance<S, TCollections, TInvoke>;Defined in: pod/src/lib/authoring/workspace/define-workspace.ts:407
Type Parameters
| Type Parameter | Default type |
|---|---|
S extends AnySchema |
- |
TCollections extends readonly WorkspaceCollectionEntry<S>[] |
- |
TInvoke extends Readonly<Record<string, HandlerDefinition>> |
Readonly<Record<string, HandlerDefinition>> |
Parameters
| Parameter | Type |
|---|---|
schema |
SchemaBuilder<S> |
input |
DefineWorkspaceInput<S, TCollections> & object |
Returns
WorkspaceInstance<S, TCollections, TInvoke>
enums()
function enums(options): PgCustomColumnBuilder<{
}>;Defined in: pod/src/lib/authoring/builtin/columns.ts:79
Text column restricted to a fixed set of values. Use .array() for list columns.
Parameters
| Parameter | Type |
|---|---|
options |
EnumsColumnOptions |
Returns
PgCustomColumnBuilder<{
}>
extract()
function extract<S, N>(schema, collection): S["inputs"][N]["create"];Defined in: pod/src/lib/authoring/schema/extract.ts:5
Collection mutation Zod schema — omit input to use the full schema; .pick() / .omit() to narrow.
Type Parameters
| Type Parameter |
|---|
S extends AnySchema |
N extends string |
Parameters
| Parameter | Type |
|---|---|
schema |
S |
collection |
N |
Returns
S["inputs"][N]["create"]
file()
function file(options?): PgUUIDBuilder;Defined in: pod/src/lib/authoring/builtin/columns.ts:72
Reference to a platform document_asset record (UUID column). Use .array() for list columns.
Parameters
| Parameter | Type |
|---|---|
options |
FileColumnOptions |
Returns
PgUUIDBuilder
geolocation()
function geolocation(): PgCustomColumnBuilder<{
}>;Defined in: pod/src/lib/authoring/builtin/columns.ts:60
GeoJSON-style point with formatted address, stored as JSONB. Use .array() for list columns.
Returns
PgCustomColumnBuilder<{
}>
group()
function group<TGroup>(definition): TGroup;Defined in: pod/src/lib/authoring/filesystem.ts:154
Type Parameters
| Type Parameter |
|---|
TGroup extends GroupDefinition |
Parameters
| Parameter | Type |
|---|---|
definition |
TGroup |
Returns
TGroup
money()
function money(options?): PgCustomColumnBuilder<{
}>;Defined in: pod/src/lib/authoring/builtin/columns.ts:47
Monetary amount { value, currency } stored as JSONB. Use .array() for list columns.
Parameters
| Parameter | Type |
|---|---|
options |
MoneyColumnOptions |
Returns
PgCustomColumnBuilder<{
}>
numeric()
function numeric(options?): PgNumericNumberBuilder;Defined in: pod/src/lib/authoring/builtin/columns.ts:35
Numeric column read as a JS number (drizzle defaults numeric to string mode).
Parameters
| Parameter | Type |
|---|---|
options |
NumericColumnOptions |
Returns
PgNumericNumberBuilder
phone()
function phone(): PgTextBuilder<[string, ...string[]]>;Defined in: pod/src/lib/authoring/builtin/columns.ts:65
Telephone number stored as text with telephone-specific editing semantics.
Returns
PgTextBuilder<[string, ...string[]]>