Skip to content

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

Property Modifier Type Defined in
inputs readonly Readonly<Record<string, { create: z.ZodTypeAny; update: z.ZodTypeAny; }>> pod/src/lib/authoring/schema/types.ts:14
relations readonly TablesRelationalConfig pod/src/lib/authoring/schema/types.ts:13
tables readonly Readonly<Record<string, NorbitalTable<string>>> pod/src/lib/authoring/schema/types.ts:12

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

Property Modifier Type Defined in
aiInferStructured readonly <TSchema>(schema, input) => Promise<z.infer<TSchema>> pod/src/lib/authoring/workspace/hook-api.ts:34
db readonly DbApi<MergedWorkspaceSchema<S>, "direct"> pod/src/lib/authoring/workspace/hook-api.ts:32
fetch readonly typeof fetch pod/src/lib/authoring/workspace/hook-api.ts:39
readFileAsset readonly (assetId) => Promise<ReadFileAssetResult> pod/src/lib/authoring/workspace/hook-api.ts:38
sendNotification readonly (input) => Promise<SendNotificationResult> pod/src/lib/authoring/workspace/hook-api.ts:33

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

Property Modifier Type Defined in
create? readonly FilesystemCollectionDefinition<S, N>["create"] pod/src/lib/authoring/schema/collection-behavior.ts:243
delete? readonly FilesystemCollectionDefinition<S, N>["delete"] pod/src/lib/authoring/schema/collection-behavior.ts:245
update? readonly FilesystemCollectionDefinition<S, N>["update"] pod/src/lib/authoring/schema/collection-behavior.ts:244

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

Property Modifier Type Defined in
export? readonly FilesystemCollectionDefinition<S, N>["export"] pod/src/lib/authoring/schema/collection-behavior.ts:249
import? readonly FilesystemCollectionDefinition<S, N>["import"] pod/src/lib/authoring/schema/collection-behavior.ts:250

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

Property Modifier Type Description Defined in
defaultChild? readonly string Child app key used when navigating to the group itself. pod/src/lib/authoring/filesystem.ts:151
icon readonly string - pod/src/lib/authoring/filesystem.ts:149
label readonly string - pod/src/lib/authoring/filesystem.ts:148

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

Property Modifier Type Defined in
__kind readonly "model" pod/src/lib/authoring/filesystem.ts:21
columns readonly TColumns pod/src/lib/authoring/filesystem.ts:22
extraConfig? readonly ModelExtraConfig<TColumns> pod/src/lib/authoring/filesystem.ts:23
meta? readonly TableMeta pod/src/lib/authoring/filesystem.ts:24

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[]]>