@cossistant/types 0.0.26 → 0.0.28
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/api/ai-agent.d.ts +85 -0
- package/api/ai-agent.d.ts.map +1 -0
- package/api/ai-agent.js +174 -0
- package/api/ai-agent.js.map +1 -0
- package/api/common.d.ts.map +1 -1
- package/api/conversation.d.ts +3 -0
- package/api/conversation.d.ts.map +1 -1
- package/api/index.d.ts +3 -1
- package/api/index.js +3 -1
- package/api/knowledge.d.ts +494 -0
- package/api/knowledge.d.ts.map +1 -0
- package/api/knowledge.js +434 -0
- package/api/knowledge.js.map +1 -0
- package/api/timeline-item.d.ts.map +1 -1
- package/api/upload.d.ts +2 -2
- package/api/upload.d.ts.map +1 -1
- package/api/upload.js +2 -2
- package/api/upload.js.map +1 -1
- package/api/website.d.ts +4 -4
- package/api/website.d.ts.map +1 -1
- package/api/website.js +3 -3
- package/api/website.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.d.ts.map +1 -1
- package/index.js +3 -1
- package/package.json +17 -1
- package/realtime-events.d.ts +39 -0
- package/realtime-events.d.ts.map +1 -1
- package/realtime-events.js +35 -1
- package/realtime-events.js.map +1 -1
- package/schemas.d.ts +1 -0
- package/schemas.d.ts.map +1 -1
- package/schemas.js +1 -0
- package/schemas.js.map +1 -1
package/api/website.js
CHANGED
|
@@ -85,7 +85,7 @@ const websiteSummarySchema = z.object({
|
|
|
85
85
|
description: "The primary email visitors can use to reach you.",
|
|
86
86
|
example: "support@dub.co"
|
|
87
87
|
}),
|
|
88
|
-
logoUrl: z.
|
|
88
|
+
logoUrl: z.url().nullable().openapi({
|
|
89
89
|
description: "Public URL to the website's logo.",
|
|
90
90
|
example: "https://cdn.example.com/logo.png"
|
|
91
91
|
}),
|
|
@@ -148,7 +148,7 @@ const websiteUpdateDataSchema = z.object({
|
|
|
148
148
|
domain: z.string().min(1).optional(),
|
|
149
149
|
contactEmail: z.string().email().nullable().optional(),
|
|
150
150
|
description: z.string().nullable().optional(),
|
|
151
|
-
logoUrl: z.
|
|
151
|
+
logoUrl: z.url().nullable().optional(),
|
|
152
152
|
whitelistedDomains: z.array(z.url()).optional(),
|
|
153
153
|
defaultParticipantIds: z.array(z.string()).nullable().optional(),
|
|
154
154
|
installationTarget: z.nativeEnum(WebsiteInstallationTarget).optional(),
|
|
@@ -306,7 +306,7 @@ const websiteListItemSchema = z.object({
|
|
|
306
306
|
description: "The website's slug.",
|
|
307
307
|
example: "dub-co"
|
|
308
308
|
}),
|
|
309
|
-
logoUrl: z.
|
|
309
|
+
logoUrl: z.url().nullable().openapi({
|
|
310
310
|
description: "Public URL to the website's logo.",
|
|
311
311
|
example: "https://cdn.example.com/logo.png"
|
|
312
312
|
}),
|
package/api/website.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"website.js","names":[],"sources":["../../src/api/website.ts"],"sourcesContent":["import { z } from \"@hono/zod-openapi\";\nimport { APIKeyType, WebsiteInstallationTarget, WebsiteStatus } from \"../enums\";\nimport { publicVisitorResponseSchema } from \"./visitor\";\n\n/**\n * Website creation request schema\n */\nexport const createWebsiteRequestSchema = z.object({\n\tname: z\n\t\t.string()\n\t\t.openapi({\n\t\t\tdescription: \"The website's name.\",\n\t\t\texample: \"Dub\",\n\t\t})\n\t\t.min(3, {\n\t\t\tmessage: \"Name must be at least 3 characters\",\n\t\t})\n\t\t.max(30, {\n\t\t\tmessage: \"Name must be less than 30 characters\",\n\t\t}),\n\tdomain: z\n\t\t.string()\n\t\t.regex(/^[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*$/)\n\t\t.openapi({\n\t\t\tdescription: \"The website's domain.\",\n\t\t\texample: \"dub.co\",\n\t\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tinstallationTarget: z.nativeEnum(WebsiteInstallationTarget).openapi({\n\t\tdescription: \"The website's library installation target.\",\n\t\texample: WebsiteInstallationTarget.NEXTJS,\n\t}),\n});\n\nexport type CreateWebsiteRequest = z.infer<typeof createWebsiteRequestSchema>;\n\nconst API_KEY_TYPE_VALUES = [APIKeyType.PUBLIC, APIKeyType.PRIVATE] as const;\n\nconst WEBSITE_STATUS_VALUES = [\n\tWebsiteStatus.ACTIVE,\n\tWebsiteStatus.INACTIVE,\n] as const;\n\nexport const websiteApiKeySchema = z\n\t.object({\n\t\tid: z.ulid().openapi({\n\t\t\tdescription: \"The API key's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tname: z.string().openapi({\n\t\t\tdescription: \"The API key's display name.\",\n\t\t\texample: \"Production public key\",\n\t\t}),\n\t\tkey: z.string().nullable().openapi({\n\t\t\tdescription:\n\t\t\t\t\"The API key's raw value when available. Private keys will be null when fetched after creation.\",\n\t\t\texample: \"pk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n\t\t}),\n\t\tkeyType: z.enum(API_KEY_TYPE_VALUES).openapi({\n\t\t\tdescription: \"The API key's type (public or private).\",\n\t\t\texample: APIKeyType.PUBLIC,\n\t\t}),\n\t\tisTest: z.boolean().openapi({\n\t\t\tdescription: \"Whether the API key is a test key.\",\n\t\t\texample: false,\n\t\t}),\n\t\tisActive: z.boolean().openapi({\n\t\t\tdescription: \"Whether the API key is active.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcreatedAt: z.string().openapi({\n\t\t\tdescription: \"Timestamp indicating when the API key was created.\",\n\t\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t\t}),\n\t\tlastUsedAt: z.string().nullable().openapi({\n\t\t\tdescription: \"Timestamp indicating when the API key was last used.\",\n\t\t\texample: \"2024-01-10T12:00:00.000Z\",\n\t\t}),\n\t\trevokedAt: z.string().nullable().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Timestamp indicating when the API key was revoked, if applicable.\",\n\t\t\texample: null,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"A website API key summary.\",\n\t});\n\nexport type WebsiteApiKey = z.infer<typeof websiteApiKeySchema>;\n\nexport const websiteSummarySchema = z\n\t.object({\n\t\tid: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tslug: z.string().openapi({\n\t\t\tdescription: \"The website's slug.\",\n\t\t\texample: \"dub-co\",\n\t\t}),\n\t\tname: z.string().openapi({\n\t\t\tdescription: \"The website's name.\",\n\t\t\texample: \"Dub\",\n\t\t}),\n\t\tdomain: z.string().openapi({\n\t\t\tdescription: \"The website's domain.\",\n\t\t\texample: \"dub.co\",\n\t\t}),\n\t\tcontactEmail: z.string().email().nullable().openapi({\n\t\t\tdescription: \"The primary email visitors can use to reach you.\",\n\t\t\texample: \"support@dub.co\",\n\t\t}),\n\t\tlogoUrl: z.string().url().nullable().openapi({\n\t\t\tdescription: \"Public URL to the website's logo.\",\n\t\t\texample: \"https://cdn.example.com/logo.png\",\n\t\t}),\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The owning organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twhitelistedDomains: z.array(z.url()).openapi({\n\t\t\tdescription: \"The domains allowed to use the website's public keys.\",\n\t\t\texample: [\"https://dub.co\", \"http://localhost:3000\"],\n\t\t}),\n\t\tdefaultParticipantIds: z\n\t\t\t.array(z.string())\n\t\t\t.nullable()\n\t\t\t.openapi({\n\t\t\t\tdescription:\n\t\t\t\t\t\"Default participant user IDs for new conversations. null = disabled, [] = auto (admin/owner), [...ids] = specific users.\",\n\t\t\t\texample: [\"01JG000000000000000000000\"],\n\t\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Summary information for a website used in settings screens.\",\n\t});\n\nexport type WebsiteSummary = z.infer<typeof websiteSummarySchema>;\n\nexport const websiteDeveloperSettingsResponseSchema = z\n\t.object({\n\t\twebsite: websiteSummarySchema,\n\t\tapiKeys: z.array(websiteApiKeySchema),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Developer settings payload including website information and API keys.\",\n\t});\n\nexport type WebsiteDeveloperSettingsResponse = z.infer<\n\ttypeof websiteDeveloperSettingsResponseSchema\n>;\n\nexport const createWebsiteApiKeyRequestSchema = z\n\t.object({\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twebsiteId: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tname: z.string().min(3).max(80).openapi({\n\t\t\tdescription: \"A human-friendly label for the API key.\",\n\t\t\texample: \"Docs integration\",\n\t\t}),\n\t\tkeyType: z.enum(API_KEY_TYPE_VALUES).openapi({\n\t\t\tdescription: \"The type of API key to generate.\",\n\t\t\texample: APIKeyType.PRIVATE,\n\t\t}),\n\t\tisTest: z.boolean().openapi({\n\t\t\tdescription: \"Whether to generate a test key scoped to localhost.\",\n\t\t\texample: false,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload to create a website API key.\",\n\t});\n\nexport type CreateWebsiteApiKeyRequest = z.infer<\n\ttypeof createWebsiteApiKeyRequestSchema\n>;\n\nexport const revokeWebsiteApiKeyRequestSchema = z\n\t.object({\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twebsiteId: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tapiKeyId: z.ulid().openapi({\n\t\t\tdescription: \"The API key's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload to revoke a website API key.\",\n\t});\n\nexport type RevokeWebsiteApiKeyRequest = z.infer<\n\ttypeof revokeWebsiteApiKeyRequestSchema\n>;\n\nconst websiteUpdateDataSchema = z\n\t.object({\n\t\tname: z.string().min(1).max(120).optional(),\n\t\tslug: z.string().min(1).optional(),\n\t\tdomain: z.string().min(1).optional(),\n\t\tcontactEmail: z.string().email().nullable().optional(),\n\t\tdescription: z.string().nullable().optional(),\n\t\tlogoUrl: z.string().url().nullable().optional(),\n\t\twhitelistedDomains: z.array(z.url()).optional(),\n\t\tdefaultParticipantIds: z.array(z.string()).nullable().optional(),\n\t\tinstallationTarget: z.nativeEnum(WebsiteInstallationTarget).optional(),\n\t\tstatus: z.enum(WEBSITE_STATUS_VALUES).optional(),\n\t\tteamId: z.string().nullable().optional(),\n\t})\n\t.refine((value) => Object.keys(value).length > 0, {\n\t\tmessage: \"Provide at least one field to update.\",\n\t});\n\nexport const updateWebsiteRequestSchema = z\n\t.object({\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twebsiteId: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tdata: websiteUpdateDataSchema.openapi({\n\t\t\tdescription: \"The fields to update on the website.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload to update website settings.\",\n\t});\n\nexport type UpdateWebsiteRequest = z.infer<typeof updateWebsiteRequestSchema>;\n\n/**\n * Website creation response schema\n */\nexport const createWebsiteResponseSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The website's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The website's name.\",\n\t\texample: \"Dub\",\n\t}),\n\tslug: z.string().openapi({\n\t\tdescription: \"The website's slug.\",\n\t\texample: \"dubdotco\",\n\t}),\n\twhitelistedDomains: z.array(z.url()).openapi({\n\t\tdescription: \"The website's whitelisted domains.\",\n\t\texample: [\"http://localhost:3000\", \"https://dub.co\"],\n\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tapiKeys: z.array(websiteApiKeySchema).openapi({\n\t\tdescription: \"The website's API keys.\",\n\t\texample: [\n\t\t\t{\n\t\t\t\tid: \"01JG000000000000000000000\",\n\t\t\t\tkey: \"pk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n\t\t\t\tcreatedAt: \"2021-01-01T00:00:00.000Z\",\n\t\t\t\tisTest: true,\n\t\t\t\tisActive: true,\n\t\t\t\tkeyType: APIKeyType.PUBLIC,\n\t\t\t\tlastUsedAt: null,\n\t\t\t\trevokedAt: null,\n\t\t\t},\n\t\t],\n\t}),\n});\n\nexport type CreateWebsiteResponse = z.infer<typeof createWebsiteResponseSchema>;\n\n/**\n * Website domain validation request schema\n */\nexport const checkWebsiteDomainRequestSchema = z.object({\n\tdomain: z\n\t\t.string()\n\t\t.regex(/^[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*$/)\n\t\t.openapi({\n\t\t\tdescription: \"The website's domain.\",\n\t\t\texample: \"dub.co\",\n\t\t}),\n});\n\nexport type CheckWebsiteDomainRequest = z.infer<\n\ttypeof checkWebsiteDomainRequestSchema\n>;\n\nexport const availableHumanAgentSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The human agent's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The agent's name.\",\n\t\texample: \"John Doe\",\n\t}),\n\timage: z.string().nullable().openapi({\n\t\tdescription: \"The agent's avatar URL.\",\n\t\texample: \"https://cossistant.com/avatar.png\",\n\t}),\n\tlastSeenAt: z.string().nullable().openapi({\n\t\tdescription:\n\t\t\t\"The agent's last online timestamp, used to determine if the agent is online. If the agent is offline, this will be null or more than 5 minutes ago.\",\n\t\texample: \"2021-01-01T00:00:00.000Z\",\n\t}),\n});\n\nexport const AvailableAIAgentSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The AI agent's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The AI agent's name.\",\n\t\texample: \"John Doe\",\n\t}),\n\timage: z.string().nullable().openapi({\n\t\tdescription: \"The AI agent's avatar URL.\",\n\t\texample: \"https://cossistant.com/avatar.png\",\n\t}),\n});\n\n/**\n * Website information response schema\n */\nexport const publicWebsiteResponseSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The website's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The website's name.\",\n\t\texample: \"Dub\",\n\t}),\n\tdomain: z.string().openapi({\n\t\tdescription: \"The website's domain.\",\n\t\texample: \"dub.co\",\n\t}),\n\tdescription: z.string().nullable().openapi({\n\t\tdescription: \"The website's description.\",\n\t\texample: \"Link management for modern marketing teams.\",\n\t}),\n\tlogoUrl: z.string().nullable().openapi({\n\t\tdescription: \"The website's logo URL.\",\n\t\texample: \"https://dub.co/logo.png\",\n\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tstatus: z.string().openapi({\n\t\tdescription: \"The website's status.\",\n\t\texample: \"active\",\n\t}),\n\tlastOnlineAt: z.string().nullable().openapi({\n\t\tdescription: \"The website's support last online date.\",\n\t\texample: \"2021-01-01T00:00:00.000Z\",\n\t}),\n\tavailableHumanAgents: z.array(availableHumanAgentSchema),\n\tavailableAIAgents: z.array(AvailableAIAgentSchema),\n\tvisitor: publicVisitorResponseSchema.openapi({\n\t\tdescription:\n\t\t\t\"The visitor information. Either existing visitor data or newly created visitor.\",\n\t}),\n});\n\nexport type PublicWebsiteResponse = z.infer<typeof publicWebsiteResponseSchema>;\nexport type AvailableHumanAgent = z.infer<typeof availableHumanAgentSchema>;\nexport type AvailableAIAgent = z.infer<typeof AvailableAIAgentSchema>;\n\n/**\n * List websites by organization request schema\n */\nexport const listByOrganizationRequestSchema = z.object({\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n});\n\nexport type ListByOrganizationRequest = z.infer<\n\ttypeof listByOrganizationRequestSchema\n>;\n\n/**\n * Website list item schema - simplified website info for listing\n */\nexport const websiteListItemSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The website's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The website's name.\",\n\t\texample: \"Dub\",\n\t}),\n\tslug: z.string().openapi({\n\t\tdescription: \"The website's slug.\",\n\t\texample: \"dub-co\",\n\t}),\n\tlogoUrl: z.string().url().nullable().openapi({\n\t\tdescription: \"Public URL to the website's logo.\",\n\t\texample: \"https://cdn.example.com/logo.png\",\n\t}),\n\tdomain: z.string().openapi({\n\t\tdescription: \"The website's domain.\",\n\t\texample: \"dub.co\",\n\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The owning organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n});\n\nexport type WebsiteListItem = z.infer<typeof websiteListItemSchema>;\n"],"mappings":";;;;;;;;AAOA,MAAa,6BAA6B,EAAE,OAAO;CAClD,MAAM,EACJ,QAAQ,CACR,QAAQ;EACR,aAAa;EACb,SAAS;EACT,CAAC,CACD,IAAI,GAAG,EACP,SAAS,sCACT,CAAC,CACD,IAAI,IAAI,EACR,SAAS,wCACT,CAAC;CACH,QAAQ,EACN,QAAQ,CACR,MAAM,oCAAoC,CAC1C,QAAQ;EACR,aAAa;EACb,SAAS;EACT,CAAC;CACH,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,oBAAoB,EAAE,WAAW,0BAA0B,CAAC,QAAQ;EACnE,aAAa;EACb,SAAS,0BAA0B;EACnC,CAAC;CACF,CAAC;AAIF,MAAM,sBAAsB,CAAC,WAAW,QAAQ,WAAW,QAAQ;AAEnE,MAAM,wBAAwB,CAC7B,cAAc,QACd,cAAc,SACd;AAED,MAAa,sBAAsB,EACjC,OAAO;CACP,IAAI,EAAE,MAAM,CAAC,QAAQ;EACpB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EAClC,aACC;EACD,SAAS;EACT,CAAC;CACF,SAAS,EAAE,KAAK,oBAAoB,CAAC,QAAQ;EAC5C,aAAa;EACb,SAAS,WAAW;EACpB,CAAC;CACF,QAAQ,EAAE,SAAS,CAAC,QAAQ;EAC3B,aAAa;EACb,SAAS;EACT,CAAC;CACF,UAAU,EAAE,SAAS,CAAC,QAAQ;EAC7B,aAAa;EACb,SAAS;EACT,CAAC;CACF,WAAW,EAAE,QAAQ,CAAC,QAAQ;EAC7B,aAAa;EACb,SAAS;EACT,CAAC;CACF,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EACzC,aAAa;EACb,SAAS;EACT,CAAC;CACF,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EACxC,aACC;EACD,SAAS;EACT,CAAC;CACF,CAAC,CACD,QAAQ,EACR,aAAa,8BACb,CAAC;AAIH,MAAa,uBAAuB,EAClC,OAAO;CACP,IAAI,EAAE,MAAM,CAAC,QAAQ;EACpB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,QAAQ,EAAE,QAAQ,CAAC,QAAQ;EAC1B,aAAa;EACb,SAAS;EACT,CAAC;CACF,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ;EACnD,aAAa;EACb,SAAS;EACT,CAAC;CACF,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ;EAC5C,aAAa;EACb,SAAS;EACT,CAAC;CACF,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,oBAAoB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ;EAC5C,aAAa;EACb,SAAS,CAAC,kBAAkB,wBAAwB;EACpD,CAAC;CACF,uBAAuB,EACrB,MAAM,EAAE,QAAQ,CAAC,CACjB,UAAU,CACV,QAAQ;EACR,aACC;EACD,SAAS,CAAC,4BAA4B;EACtC,CAAC;CACH,CAAC,CACD,QAAQ,EACR,aAAa,+DACb,CAAC;AAIH,MAAa,yCAAyC,EACpD,OAAO;CACP,SAAS;CACT,SAAS,EAAE,MAAM,oBAAoB;CACrC,CAAC,CACD,QAAQ,EACR,aACC,0EACD,CAAC;AAMH,MAAa,mCAAmC,EAC9C,OAAO;CACP,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,WAAW,EAAE,MAAM,CAAC,QAAQ;EAC3B,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,QAAQ;EACvC,aAAa;EACb,SAAS;EACT,CAAC;CACF,SAAS,EAAE,KAAK,oBAAoB,CAAC,QAAQ;EAC5C,aAAa;EACb,SAAS,WAAW;EACpB,CAAC;CACF,QAAQ,EAAE,SAAS,CAAC,QAAQ;EAC3B,aAAa;EACb,SAAS;EACT,CAAC;CACF,CAAC,CACD,QAAQ,EACR,aAAa,wCACb,CAAC;AAMH,MAAa,mCAAmC,EAC9C,OAAO;CACP,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,WAAW,EAAE,MAAM,CAAC,QAAQ;EAC3B,aAAa;EACb,SAAS;EACT,CAAC;CACF,UAAU,EAAE,MAAM,CAAC,QAAQ;EAC1B,aAAa;EACb,SAAS;EACT,CAAC;CACF,CAAC,CACD,QAAQ,EACR,aAAa,wCACb,CAAC;AAMH,MAAM,0BAA0B,EAC9B,OAAO;CACP,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU;CAC3C,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU;CAClC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU;CACpC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU;CACtD,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;CAC7C,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU;CAC/C,oBAAoB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,UAAU;CAC/C,uBAAuB,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,UAAU,CAAC,UAAU;CAChE,oBAAoB,EAAE,WAAW,0BAA0B,CAAC,UAAU;CACtE,QAAQ,EAAE,KAAK,sBAAsB,CAAC,UAAU;CAChD,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;CACxC,CAAC,CACD,QAAQ,UAAU,OAAO,KAAK,MAAM,CAAC,SAAS,GAAG,EACjD,SAAS,yCACT,CAAC;AAEH,MAAa,6BAA6B,EACxC,OAAO;CACP,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,WAAW,EAAE,MAAM,CAAC,QAAQ;EAC3B,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,wBAAwB,QAAQ,EACrC,aAAa,wCACb,CAAC;CACF,CAAC,CACD,QAAQ,EACR,aAAa,uCACb,CAAC;;;;AAOH,MAAa,8BAA8B,EAAE,OAAO;CACnD,IAAI,EAAE,MAAM,CAAC,QAAQ;EACpB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,oBAAoB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ;EAC5C,aAAa;EACb,SAAS,CAAC,yBAAyB,iBAAiB;EACpD,CAAC;CACF,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,SAAS,EAAE,MAAM,oBAAoB,CAAC,QAAQ;EAC7C,aAAa;EACb,SAAS,CACR;GACC,IAAI;GACJ,KAAK;GACL,WAAW;GACX,QAAQ;GACR,UAAU;GACV,SAAS,WAAW;GACpB,YAAY;GACZ,WAAW;GACX,CACD;EACD,CAAC;CACF,CAAC;;;;AAOF,MAAa,kCAAkC,EAAE,OAAO,EACvD,QAAQ,EACN,QAAQ,CACR,MAAM,oCAAoC,CAC1C,QAAQ;CACR,aAAa;CACb,SAAS;CACT,CAAC,EACH,CAAC;AAMF,MAAa,4BAA4B,EAAE,OAAO;CACjD,IAAI,EAAE,MAAM,CAAC,QAAQ;EACpB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EACpC,aAAa;EACb,SAAS;EACT,CAAC;CACF,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EACzC,aACC;EACD,SAAS;EACT,CAAC;CACF,CAAC;AAEF,MAAa,yBAAyB,EAAE,OAAO;CAC9C,IAAI,EAAE,MAAM,CAAC,QAAQ;EACpB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EACpC,aAAa;EACb,SAAS;EACT,CAAC;CACF,CAAC;;;;AAKF,MAAa,8BAA8B,EAAE,OAAO;CACnD,IAAI,EAAE,MAAM,CAAC,QAAQ;EACpB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,QAAQ,EAAE,QAAQ,CAAC,QAAQ;EAC1B,aAAa;EACb,SAAS;EACT,CAAC;CACF,aAAa,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EAC1C,aAAa;EACb,SAAS;EACT,CAAC;CACF,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EACtC,aAAa;EACb,SAAS;EACT,CAAC;CACF,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,QAAQ,EAAE,QAAQ,CAAC,QAAQ;EAC1B,aAAa;EACb,SAAS;EACT,CAAC;CACF,cAAc,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ;EAC3C,aAAa;EACb,SAAS;EACT,CAAC;CACF,sBAAsB,EAAE,MAAM,0BAA0B;CACxD,mBAAmB,EAAE,MAAM,uBAAuB;CAClD,SAAS,4BAA4B,QAAQ,EAC5C,aACC,mFACD,CAAC;CACF,CAAC;;;;AASF,MAAa,kCAAkC,EAAE,OAAO,EACvD,gBAAgB,EAAE,MAAM,CAAC,QAAQ;CAChC,aAAa;CACb,SAAS;CACT,CAAC,EACF,CAAC;;;;AASF,MAAa,wBAAwB,EAAE,OAAO;CAC7C,IAAI,EAAE,MAAM,CAAC,QAAQ;EACpB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,MAAM,EAAE,QAAQ,CAAC,QAAQ;EACxB,aAAa;EACb,SAAS;EACT,CAAC;CACF,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ;EAC5C,aAAa;EACb,SAAS;EACT,CAAC;CACF,QAAQ,EAAE,QAAQ,CAAC,QAAQ;EAC1B,aAAa;EACb,SAAS;EACT,CAAC;CACF,gBAAgB,EAAE,MAAM,CAAC,QAAQ;EAChC,aAAa;EACb,SAAS;EACT,CAAC;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"website.js","names":[],"sources":["../../src/api/website.ts"],"sourcesContent":["import { z } from \"@hono/zod-openapi\";\nimport { APIKeyType, WebsiteInstallationTarget, WebsiteStatus } from \"../enums\";\nimport { publicVisitorResponseSchema } from \"./visitor\";\n\n/**\n * Website creation request schema\n */\nexport const createWebsiteRequestSchema = z.object({\n\tname: z\n\t\t.string()\n\t\t.openapi({\n\t\t\tdescription: \"The website's name.\",\n\t\t\texample: \"Dub\",\n\t\t})\n\t\t.min(3, {\n\t\t\tmessage: \"Name must be at least 3 characters\",\n\t\t})\n\t\t.max(30, {\n\t\t\tmessage: \"Name must be less than 30 characters\",\n\t\t}),\n\tdomain: z\n\t\t.string()\n\t\t.regex(/^[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*$/)\n\t\t.openapi({\n\t\t\tdescription: \"The website's domain.\",\n\t\t\texample: \"dub.co\",\n\t\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tinstallationTarget: z.nativeEnum(WebsiteInstallationTarget).openapi({\n\t\tdescription: \"The website's library installation target.\",\n\t\texample: WebsiteInstallationTarget.NEXTJS,\n\t}),\n});\n\nexport type CreateWebsiteRequest = z.infer<typeof createWebsiteRequestSchema>;\n\nconst API_KEY_TYPE_VALUES = [APIKeyType.PUBLIC, APIKeyType.PRIVATE] as const;\n\nconst WEBSITE_STATUS_VALUES = [\n\tWebsiteStatus.ACTIVE,\n\tWebsiteStatus.INACTIVE,\n] as const;\n\nexport const websiteApiKeySchema = z\n\t.object({\n\t\tid: z.ulid().openapi({\n\t\t\tdescription: \"The API key's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tname: z.string().openapi({\n\t\t\tdescription: \"The API key's display name.\",\n\t\t\texample: \"Production public key\",\n\t\t}),\n\t\tkey: z.string().nullable().openapi({\n\t\t\tdescription:\n\t\t\t\t\"The API key's raw value when available. Private keys will be null when fetched after creation.\",\n\t\t\texample: \"pk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n\t\t}),\n\t\tkeyType: z.enum(API_KEY_TYPE_VALUES).openapi({\n\t\t\tdescription: \"The API key's type (public or private).\",\n\t\t\texample: APIKeyType.PUBLIC,\n\t\t}),\n\t\tisTest: z.boolean().openapi({\n\t\t\tdescription: \"Whether the API key is a test key.\",\n\t\t\texample: false,\n\t\t}),\n\t\tisActive: z.boolean().openapi({\n\t\t\tdescription: \"Whether the API key is active.\",\n\t\t\texample: true,\n\t\t}),\n\t\tcreatedAt: z.string().openapi({\n\t\t\tdescription: \"Timestamp indicating when the API key was created.\",\n\t\t\texample: \"2024-01-01T00:00:00.000Z\",\n\t\t}),\n\t\tlastUsedAt: z.string().nullable().openapi({\n\t\t\tdescription: \"Timestamp indicating when the API key was last used.\",\n\t\t\texample: \"2024-01-10T12:00:00.000Z\",\n\t\t}),\n\t\trevokedAt: z.string().nullable().openapi({\n\t\t\tdescription:\n\t\t\t\t\"Timestamp indicating when the API key was revoked, if applicable.\",\n\t\t\texample: null,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"A website API key summary.\",\n\t});\n\nexport type WebsiteApiKey = z.infer<typeof websiteApiKeySchema>;\n\nexport const websiteSummarySchema = z\n\t.object({\n\t\tid: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tslug: z.string().openapi({\n\t\t\tdescription: \"The website's slug.\",\n\t\t\texample: \"dub-co\",\n\t\t}),\n\t\tname: z.string().openapi({\n\t\t\tdescription: \"The website's name.\",\n\t\t\texample: \"Dub\",\n\t\t}),\n\t\tdomain: z.string().openapi({\n\t\t\tdescription: \"The website's domain.\",\n\t\t\texample: \"dub.co\",\n\t\t}),\n\t\tcontactEmail: z.string().email().nullable().openapi({\n\t\t\tdescription: \"The primary email visitors can use to reach you.\",\n\t\t\texample: \"support@dub.co\",\n\t\t}),\n\t\tlogoUrl: z.url().nullable().openapi({\n\t\t\tdescription: \"Public URL to the website's logo.\",\n\t\t\texample: \"https://cdn.example.com/logo.png\",\n\t\t}),\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The owning organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twhitelistedDomains: z.array(z.url()).openapi({\n\t\t\tdescription: \"The domains allowed to use the website's public keys.\",\n\t\t\texample: [\"https://dub.co\", \"http://localhost:3000\"],\n\t\t}),\n\t\tdefaultParticipantIds: z\n\t\t\t.array(z.string())\n\t\t\t.nullable()\n\t\t\t.openapi({\n\t\t\t\tdescription:\n\t\t\t\t\t\"Default participant user IDs for new conversations. null = disabled, [] = auto (admin/owner), [...ids] = specific users.\",\n\t\t\t\texample: [\"01JG000000000000000000000\"],\n\t\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Summary information for a website used in settings screens.\",\n\t});\n\nexport type WebsiteSummary = z.infer<typeof websiteSummarySchema>;\n\nexport const websiteDeveloperSettingsResponseSchema = z\n\t.object({\n\t\twebsite: websiteSummarySchema,\n\t\tapiKeys: z.array(websiteApiKeySchema),\n\t})\n\t.openapi({\n\t\tdescription:\n\t\t\t\"Developer settings payload including website information and API keys.\",\n\t});\n\nexport type WebsiteDeveloperSettingsResponse = z.infer<\n\ttypeof websiteDeveloperSettingsResponseSchema\n>;\n\nexport const createWebsiteApiKeyRequestSchema = z\n\t.object({\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twebsiteId: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tname: z.string().min(3).max(80).openapi({\n\t\t\tdescription: \"A human-friendly label for the API key.\",\n\t\t\texample: \"Docs integration\",\n\t\t}),\n\t\tkeyType: z.enum(API_KEY_TYPE_VALUES).openapi({\n\t\t\tdescription: \"The type of API key to generate.\",\n\t\t\texample: APIKeyType.PRIVATE,\n\t\t}),\n\t\tisTest: z.boolean().openapi({\n\t\t\tdescription: \"Whether to generate a test key scoped to localhost.\",\n\t\t\texample: false,\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload to create a website API key.\",\n\t});\n\nexport type CreateWebsiteApiKeyRequest = z.infer<\n\ttypeof createWebsiteApiKeyRequestSchema\n>;\n\nexport const revokeWebsiteApiKeyRequestSchema = z\n\t.object({\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twebsiteId: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tapiKeyId: z.ulid().openapi({\n\t\t\tdescription: \"The API key's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload to revoke a website API key.\",\n\t});\n\nexport type RevokeWebsiteApiKeyRequest = z.infer<\n\ttypeof revokeWebsiteApiKeyRequestSchema\n>;\n\nconst websiteUpdateDataSchema = z\n\t.object({\n\t\tname: z.string().min(1).max(120).optional(),\n\t\tslug: z.string().min(1).optional(),\n\t\tdomain: z.string().min(1).optional(),\n\t\tcontactEmail: z.string().email().nullable().optional(),\n\t\tdescription: z.string().nullable().optional(),\n\t\tlogoUrl: z.url().nullable().optional(),\n\t\twhitelistedDomains: z.array(z.url()).optional(),\n\t\tdefaultParticipantIds: z.array(z.string()).nullable().optional(),\n\t\tinstallationTarget: z.nativeEnum(WebsiteInstallationTarget).optional(),\n\t\tstatus: z.enum(WEBSITE_STATUS_VALUES).optional(),\n\t\tteamId: z.string().nullable().optional(),\n\t})\n\t.refine((value) => Object.keys(value).length > 0, {\n\t\tmessage: \"Provide at least one field to update.\",\n\t});\n\nexport const updateWebsiteRequestSchema = z\n\t.object({\n\t\torganizationId: z.ulid().openapi({\n\t\t\tdescription: \"The organization's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\twebsiteId: z.ulid().openapi({\n\t\t\tdescription: \"The website's unique identifier.\",\n\t\t\texample: \"01JG000000000000000000000\",\n\t\t}),\n\t\tdata: websiteUpdateDataSchema.openapi({\n\t\t\tdescription: \"The fields to update on the website.\",\n\t\t}),\n\t})\n\t.openapi({\n\t\tdescription: \"Payload to update website settings.\",\n\t});\n\nexport type UpdateWebsiteRequest = z.infer<typeof updateWebsiteRequestSchema>;\n\n/**\n * Website creation response schema\n */\nexport const createWebsiteResponseSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The website's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The website's name.\",\n\t\texample: \"Dub\",\n\t}),\n\tslug: z.string().openapi({\n\t\tdescription: \"The website's slug.\",\n\t\texample: \"dubdotco\",\n\t}),\n\twhitelistedDomains: z.array(z.url()).openapi({\n\t\tdescription: \"The website's whitelisted domains.\",\n\t\texample: [\"http://localhost:3000\", \"https://dub.co\"],\n\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tapiKeys: z.array(websiteApiKeySchema).openapi({\n\t\tdescription: \"The website's API keys.\",\n\t\texample: [\n\t\t\t{\n\t\t\t\tid: \"01JG000000000000000000000\",\n\t\t\t\tkey: \"pk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\",\n\t\t\t\tcreatedAt: \"2021-01-01T00:00:00.000Z\",\n\t\t\t\tisTest: true,\n\t\t\t\tisActive: true,\n\t\t\t\tkeyType: APIKeyType.PUBLIC,\n\t\t\t\tlastUsedAt: null,\n\t\t\t\trevokedAt: null,\n\t\t\t},\n\t\t],\n\t}),\n});\n\nexport type CreateWebsiteResponse = z.infer<typeof createWebsiteResponseSchema>;\n\n/**\n * Website domain validation request schema\n */\nexport const checkWebsiteDomainRequestSchema = z.object({\n\tdomain: z\n\t\t.string()\n\t\t.regex(/^[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)*$/)\n\t\t.openapi({\n\t\t\tdescription: \"The website's domain.\",\n\t\t\texample: \"dub.co\",\n\t\t}),\n});\n\nexport type CheckWebsiteDomainRequest = z.infer<\n\ttypeof checkWebsiteDomainRequestSchema\n>;\n\nexport const availableHumanAgentSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The human agent's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The agent's name.\",\n\t\texample: \"John Doe\",\n\t}),\n\timage: z.string().nullable().openapi({\n\t\tdescription: \"The agent's avatar URL.\",\n\t\texample: \"https://cossistant.com/avatar.png\",\n\t}),\n\tlastSeenAt: z.string().nullable().openapi({\n\t\tdescription:\n\t\t\t\"The agent's last online timestamp, used to determine if the agent is online. If the agent is offline, this will be null or more than 5 minutes ago.\",\n\t\texample: \"2021-01-01T00:00:00.000Z\",\n\t}),\n});\n\nexport const AvailableAIAgentSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The AI agent's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The AI agent's name.\",\n\t\texample: \"John Doe\",\n\t}),\n\timage: z.string().nullable().openapi({\n\t\tdescription: \"The AI agent's avatar URL.\",\n\t\texample: \"https://cossistant.com/avatar.png\",\n\t}),\n});\n\n/**\n * Website information response schema\n */\nexport const publicWebsiteResponseSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The website's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The website's name.\",\n\t\texample: \"Dub\",\n\t}),\n\tdomain: z.string().openapi({\n\t\tdescription: \"The website's domain.\",\n\t\texample: \"dub.co\",\n\t}),\n\tdescription: z.string().nullable().openapi({\n\t\tdescription: \"The website's description.\",\n\t\texample: \"Link management for modern marketing teams.\",\n\t}),\n\tlogoUrl: z.string().nullable().openapi({\n\t\tdescription: \"The website's logo URL.\",\n\t\texample: \"https://dub.co/logo.png\",\n\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tstatus: z.string().openapi({\n\t\tdescription: \"The website's status.\",\n\t\texample: \"active\",\n\t}),\n\tlastOnlineAt: z.string().nullable().openapi({\n\t\tdescription: \"The website's support last online date.\",\n\t\texample: \"2021-01-01T00:00:00.000Z\",\n\t}),\n\tavailableHumanAgents: z.array(availableHumanAgentSchema),\n\tavailableAIAgents: z.array(AvailableAIAgentSchema),\n\tvisitor: publicVisitorResponseSchema.openapi({\n\t\tdescription:\n\t\t\t\"The visitor information. Either existing visitor data or newly created visitor.\",\n\t}),\n});\n\nexport type PublicWebsiteResponse = z.infer<typeof publicWebsiteResponseSchema>;\nexport type AvailableHumanAgent = z.infer<typeof availableHumanAgentSchema>;\nexport type AvailableAIAgent = z.infer<typeof AvailableAIAgentSchema>;\n\n/**\n * List websites by organization request schema\n */\nexport const listByOrganizationRequestSchema = z.object({\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n});\n\nexport type ListByOrganizationRequest = z.infer<\n\ttypeof listByOrganizationRequestSchema\n>;\n\n/**\n * Website list item schema - simplified website info for listing\n */\nexport const websiteListItemSchema = z.object({\n\tid: z.ulid().openapi({\n\t\tdescription: \"The website's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n\tname: z.string().openapi({\n\t\tdescription: \"The website's name.\",\n\t\texample: \"Dub\",\n\t}),\n\tslug: z.string().openapi({\n\t\tdescription: \"The website's slug.\",\n\t\texample: \"dub-co\",\n\t}),\n\tlogoUrl: z.url().nullable().openapi({\n\t\tdescription: \"Public URL to the website's logo.\",\n\t\texample: \"https://cdn.example.com/logo.png\",\n\t}),\n\tdomain: z.string().openapi({\n\t\tdescription: \"The website's domain.\",\n\t\texample: \"dub.co\",\n\t}),\n\torganizationId: z.ulid().openapi({\n\t\tdescription: \"The owning organization's unique identifier.\",\n\t\texample: \"01JG000000000000000000000\",\n\t}),\n});\n\nexport type WebsiteListItem = z.infer<typeof websiteListItemSchema>;\n"],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { AIModel, AI_MODELS, AiAgentResponse, CreateAiAgentRequest, GetAiAgentRequest, ToggleAiAgentActiveRequest, UpdateAiAgentRequest, aiAgentResponseSchema, createAiAgentRequestSchema, getAiAgentRequestSchema, toggleAiAgentActiveRequestSchema, updateAiAgentRequestSchema } from "./api/ai-agent.js";
|
|
1
2
|
import { PaginationInput, PaginationResponse, emailSchema, optionalUserIdSchema, paginationResponseSchema, paginationSchema, userIdSchema } from "./api/common.js";
|
|
2
3
|
import { Contact, ContactMetadata, ContactOrganizationResponse, ContactResponse, CreateContactOrganizationRequest, CreateContactRequest, IdentifyContactRequest, IdentifyContactResponse, UpdateContactMetadataRequest, UpdateContactOrganizationRequest, UpdateContactRequest, contactMetadataSchema, contactOrganization, contactOrganizationResponseSchema, contactResponseSchema, createContactOrganizationRequestSchema, createContactRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema } from "./api/contact.js";
|
|
3
4
|
import { CreateConversationRequestBody, CreateConversationResponseBody, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, ListConversationsRequest, ListConversationsResponse, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, SetConversationTypingRequestBody, SetConversationTypingResponseBody, createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema } from "./api/conversation.js";
|
|
5
|
+
import { ArticleKnowledgePayload, CreateKnowledgeRequest, CreateKnowledgeRestRequest, FaqKnowledgePayload, GetKnowledgeRequest, Knowledge, KnowledgeCreateInput, KnowledgeResponse, KnowledgeType, ListKnowledgeRequest, ListKnowledgeResponse, ListKnowledgeRestRequest, UpdateKnowledgeRequest, UpdateKnowledgeRestRequest, UrlKnowledgePayload, articleKnowledgePayloadSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, deleteKnowledgeRequestSchema, faqKnowledgePayloadSchema, getKnowledgeRequestSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, urlKnowledgePayloadSchema } from "./api/knowledge.js";
|
|
4
6
|
import { ContactNotificationSettings, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, MemberNotificationChannelDefinition, MemberNotificationPreference, MemberNotificationSettingsResponse, UpdateMemberNotificationSettingsRequest, UpdateMemberNotificationSettingsResponse, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, getDefaultMemberNotificationPreference, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema } from "./api/notification.js";
|
|
5
7
|
import { OrganizationResponse, organizationResponseSchema } from "./api/organization.js";
|
|
6
8
|
import { GetConversationTimelineItemsRequest, GetConversationTimelineItemsResponse, SendTimelineItemRequest, SendTimelineItemResponse, TimelineItem, TimelineItemParts, TimelinePartEvent, TimelinePartFile, TimelinePartImage, TimelinePartMetadata, TimelinePartText, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, timelineItemPartsSchema, timelineItemSchema } from "./api/timeline-item.js";
|
|
@@ -37,5 +39,5 @@ type DefaultMessage = {
|
|
|
37
39
|
senderId?: string;
|
|
38
40
|
};
|
|
39
41
|
//#endregion
|
|
40
|
-
export { APIKeyType, AnyRealtimeEvent, AvailableAIAgent, AvailableAIAgentSchema, AvailableHumanAgent, BlockVisitorResponse, CheckWebsiteDomainRequest, Contact, ContactDetailResponse, ContactListItem, ContactListVisitorStatus, ContactMetadata, ContactNotificationSettings, ContactOrganizationResponse, ContactResponse, ContactVisitorSummary, type Conversation, ConversationEventType, ConversationHeader, ConversationMutationResponse, ConversationParticipationStatus, ConversationPriority, ConversationRecordResponse, ConversationSentiment, ConversationStatus, ConversationTimelineType, CossistantConfig, CossistantError, CreateContactOrganizationRequest, CreateContactRequest, CreateConversationRequestBody, CreateConversationResponseBody, CreateWebsiteApiKeyRequest, CreateWebsiteRequest, CreateWebsiteResponse, DefaultMessage, GenerateUploadUrlRequest, GenerateUploadUrlResponse, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, GetConversationTimelineItemsRequest, GetConversationTimelineItemsResponse, IdentifyContactRequest, IdentifyContactResponse, ListByOrganizationRequest, ListContactsResponse, ListConversationsRequest, ListConversationsResponse, ListVisitorPresenceResponse, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, MemberNotificationChannel, MemberNotificationChannelDefinition, MemberNotificationPreference, MemberNotificationSettingsResponse, OrganizationResponse, PRESENCE_AWAY_WINDOW_MS, PRESENCE_ONLINE_WINDOW_MS, PRESENCE_PING_INTERVAL_MS, PaginationInput, PaginationResponse, PublicContact, PublicVisitor, PublicVisitorResponse, PublicWebsiteResponse, RealtimeEvent, RealtimeEventData, RealtimeEventPayload, RealtimeEventType, RevokeWebsiteApiKeyRequest, SendTimelineItemRequest, SendTimelineItemResponse, SenderType, SetConversationTypingRequestBody, SetConversationTypingResponseBody, TimelineItem, TimelineItemParts, TimelineItemVisibility, TimelinePartEvent, TimelinePartFile, TimelinePartImage, TimelinePartMetadata, TimelinePartText, UpdateContactMetadataRequest, UpdateContactOrganizationRequest, UpdateContactRequest, UpdateMemberNotificationSettingsRequest, UpdateMemberNotificationSettingsResponse, UpdateUserProfileRequest, UpdateVisitorMetadataRequest, UpdateVisitorRequest, UpdateWebsiteRequest, UserResponse, Visitor, VisitorMetadata, VisitorPresenceEntry, VisitorResponse, WebsiteApiKey, WebsiteDeveloperSettingsResponse, WebsiteInstallationTarget, WebsiteListItem, WebsiteStatus, WebsiteSummary, availableHumanAgentSchema, baseRealtimeEvent, blockVisitorResponseSchema, checkWebsiteDomainRequestSchema, contactDetailResponseSchema, contactListItemSchema, contactListVisitorStatusSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganization, contactOrganizationResponseSchema, contactResponseSchema, contactVisitorSummarySchema, conversationHeaderSchema, conversationMutationResponseSchema, conversationPrioritySchema, conversationRecordSchema, conversationSchema, conversationSentimentSchema, conversationStatusSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, emailSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getDefaultMemberNotificationPreference, getEventPayload, identifyContactRequestSchema, identifyContactResponseSchema, isValidEventType, listByOrganizationRequestSchema, listContactsResponseSchema, listConversationHeadersResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, listVisitorPresenceResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, realtimeSchema, revokeWebsiteApiKeyRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, timelineItemPartsSchema, timelineItemSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, userIdSchema, userResponseSchema, validateRealtimeEvent, visitorMetadataSchema, visitorPresenceEntrySchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };
|
|
42
|
+
export { AIModel, AI_MODELS, APIKeyType, AiAgentResponse, AnyRealtimeEvent, ArticleKnowledgePayload, AvailableAIAgent, AvailableAIAgentSchema, AvailableHumanAgent, BlockVisitorResponse, CheckWebsiteDomainRequest, Contact, ContactDetailResponse, ContactListItem, ContactListVisitorStatus, ContactMetadata, ContactNotificationSettings, ContactOrganizationResponse, ContactResponse, ContactVisitorSummary, type Conversation, ConversationEventType, ConversationHeader, ConversationMutationResponse, ConversationParticipationStatus, ConversationPriority, ConversationRecordResponse, ConversationSentiment, ConversationStatus, ConversationTimelineType, CossistantConfig, CossistantError, CreateAiAgentRequest, CreateContactOrganizationRequest, CreateContactRequest, CreateConversationRequestBody, CreateConversationResponseBody, CreateKnowledgeRequest, CreateKnowledgeRestRequest, CreateWebsiteApiKeyRequest, CreateWebsiteRequest, CreateWebsiteResponse, DefaultMessage, FaqKnowledgePayload, GenerateUploadUrlRequest, GenerateUploadUrlResponse, GetAiAgentRequest, GetConversationRequest, GetConversationResponse, GetConversationSeenDataResponse, GetConversationTimelineItemsRequest, GetConversationTimelineItemsResponse, GetKnowledgeRequest, IdentifyContactRequest, IdentifyContactResponse, Knowledge, KnowledgeCreateInput, KnowledgeResponse, KnowledgeType, ListByOrganizationRequest, ListContactsResponse, ListConversationsRequest, ListConversationsResponse, ListKnowledgeRequest, ListKnowledgeResponse, ListKnowledgeRestRequest, ListVisitorPresenceResponse, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MarkConversationSeenRequestBody, MarkConversationSeenResponseBody, MemberNotificationChannel, MemberNotificationChannelDefinition, MemberNotificationPreference, MemberNotificationSettingsResponse, OrganizationResponse, PRESENCE_AWAY_WINDOW_MS, PRESENCE_ONLINE_WINDOW_MS, PRESENCE_PING_INTERVAL_MS, PaginationInput, PaginationResponse, PublicContact, PublicVisitor, PublicVisitorResponse, PublicWebsiteResponse, RealtimeEvent, RealtimeEventData, RealtimeEventPayload, RealtimeEventType, RevokeWebsiteApiKeyRequest, SendTimelineItemRequest, SendTimelineItemResponse, SenderType, SetConversationTypingRequestBody, SetConversationTypingResponseBody, TimelineItem, TimelineItemParts, TimelineItemVisibility, TimelinePartEvent, TimelinePartFile, TimelinePartImage, TimelinePartMetadata, TimelinePartText, ToggleAiAgentActiveRequest, UpdateAiAgentRequest, UpdateContactMetadataRequest, UpdateContactOrganizationRequest, UpdateContactRequest, UpdateKnowledgeRequest, UpdateKnowledgeRestRequest, UpdateMemberNotificationSettingsRequest, UpdateMemberNotificationSettingsResponse, UpdateUserProfileRequest, UpdateVisitorMetadataRequest, UpdateVisitorRequest, UpdateWebsiteRequest, UrlKnowledgePayload, UserResponse, Visitor, VisitorMetadata, VisitorPresenceEntry, VisitorResponse, WebsiteApiKey, WebsiteDeveloperSettingsResponse, WebsiteInstallationTarget, WebsiteListItem, WebsiteStatus, WebsiteSummary, aiAgentResponseSchema, articleKnowledgePayloadSchema, availableHumanAgentSchema, baseRealtimeEvent, blockVisitorResponseSchema, checkWebsiteDomainRequestSchema, contactDetailResponseSchema, contactListItemSchema, contactListVisitorStatusSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganization, contactOrganizationResponseSchema, contactResponseSchema, contactVisitorSummarySchema, conversationHeaderSchema, conversationMutationResponseSchema, conversationPrioritySchema, conversationRecordSchema, conversationSchema, conversationSentimentSchema, conversationStatusSchema, createAiAgentRequestSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, deleteKnowledgeRequestSchema, emailSchema, faqKnowledgePayloadSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getAiAgentRequestSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getDefaultMemberNotificationPreference, getEventPayload, getKnowledgeRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, isValidEventType, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, listByOrganizationRequestSchema, listContactsResponseSchema, listConversationHeadersResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, listVisitorPresenceResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, realtimeSchema, revokeWebsiteApiKeyRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, timelineItemPartsSchema, timelineItemSchema, toggleAiAgentActiveRequestSchema, updateAiAgentRequestSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, urlKnowledgePayloadSchema, userIdSchema, userResponseSchema, validateRealtimeEvent, visitorMetadataSchema, visitorPresenceEntrySchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };
|
|
41
43
|
//# sourceMappingURL=index.d.ts.map
|
package/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/index.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;KAYY,gBAAA;;;;;;;;KASA,eAAA;;;YAGD;AAZX,CAAA;AASY,KAMA,cAAA,GANe;EAMf,OAAA,EAAA,MAAA;cAEC"}
|
package/index.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { APIKeyType, ConversationEventType, ConversationParticipationStatus, ConversationPriority, ConversationSentiment, ConversationStatus, ConversationTimelineType, SenderType, TimelineItemVisibility, WebsiteInstallationTarget, WebsiteStatus } from "./enums.js";
|
|
2
|
+
import { AI_MODELS, aiAgentResponseSchema, createAiAgentRequestSchema, getAiAgentRequestSchema, toggleAiAgentActiveRequestSchema, updateAiAgentRequestSchema } from "./api/ai-agent.js";
|
|
2
3
|
import { emailSchema, optionalUserIdSchema, paginationResponseSchema, paginationSchema, userIdSchema } from "./api/common.js";
|
|
3
4
|
import { contactMetadataSchema, contactOrganizationResponseSchema, contactResponseSchema, createContactOrganizationRequestSchema, createContactRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema } from "./api/contact.js";
|
|
4
5
|
import { getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, timelineItemPartsSchema, timelineItemSchema } from "./api/timeline-item.js";
|
|
5
6
|
import { conversationSchema } from "./schemas.js";
|
|
6
7
|
import { createConversationRequestSchema, createConversationResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema } from "./api/conversation.js";
|
|
8
|
+
import { articleKnowledgePayloadSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, deleteKnowledgeRequestSchema, faqKnowledgePayloadSchema, getKnowledgeRequestSchema, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, urlKnowledgePayloadSchema } from "./api/knowledge.js";
|
|
7
9
|
import { MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, getDefaultMemberNotificationPreference, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema } from "./api/notification.js";
|
|
8
10
|
import { organizationResponseSchema } from "./api/organization.js";
|
|
9
11
|
import { generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema } from "./api/upload.js";
|
|
@@ -16,4 +18,4 @@ import { baseRealtimeEvent, getEventPayload, isValidEventType, realtimeSchema, v
|
|
|
16
18
|
import { contactDetailResponseSchema, contactListItemSchema, contactListVisitorStatusSchema, contactVisitorSummarySchema, listContactsResponseSchema } from "./trpc/contact.js";
|
|
17
19
|
import { blockVisitorResponseSchema, listVisitorPresenceResponseSchema, visitorPresenceEntrySchema } from "./trpc/visitor.js";
|
|
18
20
|
|
|
19
|
-
export { APIKeyType, AvailableAIAgentSchema, ConversationEventType, ConversationParticipationStatus, ConversationPriority, ConversationSentiment, ConversationStatus, ConversationTimelineType, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, PRESENCE_AWAY_WINDOW_MS, PRESENCE_ONLINE_WINDOW_MS, PRESENCE_PING_INTERVAL_MS, SenderType, TimelineItemVisibility, WebsiteInstallationTarget, WebsiteStatus, availableHumanAgentSchema, baseRealtimeEvent, blockVisitorResponseSchema, checkWebsiteDomainRequestSchema, contactDetailResponseSchema, contactListItemSchema, contactListVisitorStatusSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganizationResponseSchema, contactResponseSchema, contactVisitorSummarySchema, conversationHeaderSchema, conversationMutationResponseSchema, conversationPrioritySchema, conversationRecordSchema, conversationSchema, conversationSentimentSchema, conversationStatusSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, emailSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getDefaultMemberNotificationPreference, getEventPayload, identifyContactRequestSchema, identifyContactResponseSchema, isValidEventType, listByOrganizationRequestSchema, listContactsResponseSchema, listConversationHeadersResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, listVisitorPresenceResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, realtimeSchema, revokeWebsiteApiKeyRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, timelineItemPartsSchema, timelineItemSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, userIdSchema, userResponseSchema, validateRealtimeEvent, visitorMetadataSchema, visitorPresenceEntrySchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };
|
|
21
|
+
export { AI_MODELS, APIKeyType, AvailableAIAgentSchema, ConversationEventType, ConversationParticipationStatus, ConversationPriority, ConversationSentiment, ConversationStatus, ConversationTimelineType, MEMBER_NOTIFICATION_CHANNEL_DEFINITIONS, MEMBER_NOTIFICATION_DEFINITION_MAP, MemberNotificationChannel, PRESENCE_AWAY_WINDOW_MS, PRESENCE_ONLINE_WINDOW_MS, PRESENCE_PING_INTERVAL_MS, SenderType, TimelineItemVisibility, WebsiteInstallationTarget, WebsiteStatus, aiAgentResponseSchema, articleKnowledgePayloadSchema, availableHumanAgentSchema, baseRealtimeEvent, blockVisitorResponseSchema, checkWebsiteDomainRequestSchema, contactDetailResponseSchema, contactListItemSchema, contactListVisitorStatusSchema, contactMetadataSchema, contactNotificationChannelConfigSchema, contactNotificationSettingsSchema, contactOrganizationResponseSchema, contactResponseSchema, contactVisitorSummarySchema, conversationHeaderSchema, conversationMutationResponseSchema, conversationPrioritySchema, conversationRecordSchema, conversationSchema, conversationSentimentSchema, conversationStatusSchema, createAiAgentRequestSchema, createContactOrganizationRequestSchema, createContactRequestSchema, createConversationRequestSchema, createConversationResponseSchema, createKnowledgeRequestSchema, createKnowledgeRestRequestSchema, createWebsiteApiKeyRequestSchema, createWebsiteRequestSchema, createWebsiteResponseSchema, deleteKnowledgeRequestSchema, emailSchema, faqKnowledgePayloadSchema, generateUploadUrlRequestSchema, generateUploadUrlResponseSchema, getAiAgentRequestSchema, getConversationRequestSchema, getConversationResponseSchema, getConversationSeenDataResponseSchema, getConversationTimelineItemsRequestSchema, getConversationTimelineItemsResponseSchema, getDefaultMemberNotificationPreference, getEventPayload, getKnowledgeRequestSchema, identifyContactRequestSchema, identifyContactResponseSchema, isValidEventType, knowledgeCreateSchema, knowledgeResponseSchema, knowledgeSchema, knowledgeTypeSchema, listByOrganizationRequestSchema, listContactsResponseSchema, listConversationHeadersResponseSchema, listConversationsRequestSchema, listConversationsResponseSchema, listKnowledgeRequestSchema, listKnowledgeResponseSchema, listKnowledgeRestRequestSchema, listVisitorPresenceResponseSchema, markConversationSeenRequestSchema, markConversationSeenResponseSchema, memberNotificationChannelSchema, memberNotificationPreferenceSchema, memberNotificationSettingsResponseSchema, optionalUserIdSchema, organizationResponseSchema, paginationResponseSchema, paginationSchema, publicContactResponseSchema, publicVisitorResponseSchema, publicWebsiteResponseSchema, realtimeSchema, revokeWebsiteApiKeyRequestSchema, sendTimelineItemRequestSchema, sendTimelineItemResponseSchema, setConversationTypingRequestSchema, setConversationTypingResponseSchema, timelineItemPartsSchema, timelineItemSchema, toggleAiAgentActiveRequestSchema, updateAiAgentRequestSchema, updateContactMetadataRequestSchema, updateContactOrganizationRequestSchema, updateContactRequestSchema, updateKnowledgeRequestSchema, updateKnowledgeRestRequestSchema, updateMemberNotificationSettingsRequestSchema, updateMemberNotificationSettingsResponseSchema, updateUserProfileRequestSchema, updateVisitorMetadataRequestSchema, updateVisitorRequestSchema, updateWebsiteRequestSchema, uploadContactIdSchema, uploadConversationIdSchema, uploadFileExtensionSchema, uploadFileNameSchema, uploadOrganizationIdSchema, uploadPathSchema, uploadScopeContactSchema, uploadScopeConversationSchema, uploadScopeSchema, uploadScopeUserSchema, uploadScopeVisitorSchema, uploadUserIdSchema, uploadVisitorIdSchema, uploadWebsiteIdSchema, urlKnowledgePayloadSchema, userIdSchema, userResponseSchema, validateRealtimeEvent, visitorMetadataSchema, visitorPresenceEntrySchema, visitorProfileSchema, visitorResponseSchema, websiteApiKeySchema, websiteDeveloperSettingsResponseSchema, websiteListItemSchema, websiteSummarySchema };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cossistant/types",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.28",
|
|
5
5
|
"private": false,
|
|
6
6
|
"author": "Cossistant Team",
|
|
7
7
|
"description": "Shared TypeScript types for Cossistant packages",
|
|
@@ -20,6 +20,22 @@
|
|
|
20
20
|
"./*": {
|
|
21
21
|
"types": "./*.d.ts",
|
|
22
22
|
"import": "./*.js"
|
|
23
|
+
},
|
|
24
|
+
"./api": {
|
|
25
|
+
"types": "./api/index.d.ts",
|
|
26
|
+
"import": "./api/index.js"
|
|
27
|
+
},
|
|
28
|
+
"./api/*": {
|
|
29
|
+
"types": "./api/*.d.ts",
|
|
30
|
+
"import": "./api/*.js"
|
|
31
|
+
},
|
|
32
|
+
"./trpc/*": {
|
|
33
|
+
"types": "./trpc/*.d.ts",
|
|
34
|
+
"import": "./trpc/*.js"
|
|
35
|
+
},
|
|
36
|
+
"./enums": {
|
|
37
|
+
"types": "./enums.d.ts",
|
|
38
|
+
"import": "./enums.js"
|
|
23
39
|
}
|
|
24
40
|
},
|
|
25
41
|
"main": "./index.js",
|
package/realtime-events.d.ts
CHANGED
|
@@ -119,6 +119,7 @@ declare const realtimeSchema: {
|
|
|
119
119
|
spam: "spam";
|
|
120
120
|
}>>;
|
|
121
121
|
deletedAt: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
122
|
+
visitorLastSeenAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
122
123
|
lastTimelineItem: z.ZodOptional<z.ZodObject<{
|
|
123
124
|
id: z.ZodOptional<z.ZodString>;
|
|
124
125
|
conversationId: z.ZodString;
|
|
@@ -432,6 +433,44 @@ declare const realtimeSchema: {
|
|
|
432
433
|
}, z.core.$strip>>;
|
|
433
434
|
}, z.core.$strip>;
|
|
434
435
|
}, z.core.$strip>;
|
|
436
|
+
readonly conversationEventCreated: z.ZodObject<{
|
|
437
|
+
websiteId: z.ZodString;
|
|
438
|
+
organizationId: z.ZodString;
|
|
439
|
+
visitorId: z.ZodNullable<z.ZodString>;
|
|
440
|
+
userId: z.ZodNullable<z.ZodString>;
|
|
441
|
+
conversationId: z.ZodString;
|
|
442
|
+
aiAgentId: z.ZodNullable<z.ZodString>;
|
|
443
|
+
event: z.ZodObject<{
|
|
444
|
+
id: z.ZodString;
|
|
445
|
+
conversationId: z.ZodString;
|
|
446
|
+
organizationId: z.ZodString;
|
|
447
|
+
type: z.ZodEnum<{
|
|
448
|
+
resolved: "resolved";
|
|
449
|
+
assigned: "assigned";
|
|
450
|
+
unassigned: "unassigned";
|
|
451
|
+
participant_requested: "participant_requested";
|
|
452
|
+
participant_joined: "participant_joined";
|
|
453
|
+
participant_left: "participant_left";
|
|
454
|
+
status_changed: "status_changed";
|
|
455
|
+
priority_changed: "priority_changed";
|
|
456
|
+
tag_added: "tag_added";
|
|
457
|
+
tag_removed: "tag_removed";
|
|
458
|
+
reopened: "reopened";
|
|
459
|
+
visitor_blocked: "visitor_blocked";
|
|
460
|
+
visitor_unblocked: "visitor_unblocked";
|
|
461
|
+
visitor_identified: "visitor_identified";
|
|
462
|
+
}>;
|
|
463
|
+
actorUserId: z.ZodNullable<z.ZodString>;
|
|
464
|
+
actorAiAgentId: z.ZodNullable<z.ZodString>;
|
|
465
|
+
targetUserId: z.ZodNullable<z.ZodString>;
|
|
466
|
+
targetAiAgentId: z.ZodNullable<z.ZodString>;
|
|
467
|
+
message: z.ZodNullable<z.ZodString>;
|
|
468
|
+
metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
469
|
+
createdAt: z.ZodString;
|
|
470
|
+
updatedAt: z.ZodString;
|
|
471
|
+
deletedAt: z.ZodNullable<z.ZodString>;
|
|
472
|
+
}, z.core.$strip>;
|
|
473
|
+
}, z.core.$strip>;
|
|
435
474
|
};
|
|
436
475
|
type RealtimeEventType = keyof typeof realtimeSchema;
|
|
437
476
|
type RealtimeEventPayload<T extends RealtimeEventType> = z.infer<(typeof realtimeSchema)[T]>;
|
package/realtime-events.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime-events.d.ts","names":[],"sources":["../src/realtime-events.ts"],"sourcesContent":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"realtime-events.d.ts","names":[],"sources":["../src/realtime-events.ts"],"sourcesContent":[],"mappings":";;;cAUa,mBAAiB,CAAA,CAAA;;EAAjB,cAAA,aAKX;;;;;;;;AAL4B,cAWjB,cAXiB,EAAA;EAAA,SAAA,aAAA,aAAA,CAAA;IAWjB,SAAA,aAmGH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEE,iBAAA,gBAAiC;KAEjC,+BAA+B,qBAAqB,CAAA,CAAE,cACzD,gBAAgB;KAGb,wBAAwB;QAC7B;WACG,qBAAqB;;KAGnB,gBAAA,WACL,oBAAoB,cAAc,KACvC;KAEU,4BAA4B,qBACvC,qBAAqB;;;;iBAKN,gCAAgC,yBACzC,mBAEJ,qBAAqB;;;;iBAQR,gBAAA,yBAAyC;iBAIzC,0BAA0B,0BAClC,cAAc,KACnB,qBAAqB"}
|
package/realtime-events.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ConversationTimelineType, TimelineItemVisibility } from "./enums.js";
|
|
1
|
+
import { ConversationEventType, ConversationTimelineType, TimelineItemVisibility } from "./enums.js";
|
|
2
2
|
import { conversationSchema } from "./schemas.js";
|
|
3
3
|
import { visitorResponseSchema } from "./api/visitor.js";
|
|
4
4
|
import { conversationHeaderSchema } from "./trpc/conversation.js";
|
|
@@ -76,6 +76,40 @@ const realtimeSchema = {
|
|
|
76
76
|
visitorIdentified: baseRealtimeEvent.extend({
|
|
77
77
|
visitorId: z.string(),
|
|
78
78
|
visitor: visitorResponseSchema
|
|
79
|
+
}),
|
|
80
|
+
conversationEventCreated: baseRealtimeEvent.extend({
|
|
81
|
+
conversationId: z.string(),
|
|
82
|
+
aiAgentId: z.string().nullable(),
|
|
83
|
+
event: z.object({
|
|
84
|
+
id: z.string(),
|
|
85
|
+
conversationId: z.string(),
|
|
86
|
+
organizationId: z.string(),
|
|
87
|
+
type: z.enum([
|
|
88
|
+
ConversationEventType.ASSIGNED,
|
|
89
|
+
ConversationEventType.UNASSIGNED,
|
|
90
|
+
ConversationEventType.PARTICIPANT_REQUESTED,
|
|
91
|
+
ConversationEventType.PARTICIPANT_JOINED,
|
|
92
|
+
ConversationEventType.PARTICIPANT_LEFT,
|
|
93
|
+
ConversationEventType.STATUS_CHANGED,
|
|
94
|
+
ConversationEventType.PRIORITY_CHANGED,
|
|
95
|
+
ConversationEventType.TAG_ADDED,
|
|
96
|
+
ConversationEventType.TAG_REMOVED,
|
|
97
|
+
ConversationEventType.RESOLVED,
|
|
98
|
+
ConversationEventType.REOPENED,
|
|
99
|
+
ConversationEventType.VISITOR_BLOCKED,
|
|
100
|
+
ConversationEventType.VISITOR_UNBLOCKED,
|
|
101
|
+
ConversationEventType.VISITOR_IDENTIFIED
|
|
102
|
+
]),
|
|
103
|
+
actorUserId: z.string().nullable(),
|
|
104
|
+
actorAiAgentId: z.string().nullable(),
|
|
105
|
+
targetUserId: z.string().nullable(),
|
|
106
|
+
targetAiAgentId: z.string().nullable(),
|
|
107
|
+
message: z.string().nullable(),
|
|
108
|
+
metadata: z.record(z.string(), z.unknown()).nullable(),
|
|
109
|
+
createdAt: z.string(),
|
|
110
|
+
updatedAt: z.string(),
|
|
111
|
+
deletedAt: z.string().nullable()
|
|
112
|
+
})
|
|
79
113
|
})
|
|
80
114
|
};
|
|
81
115
|
/**
|
package/realtime-events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime-events.js","names":[],"sources":["../src/realtime-events.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { visitorResponseSchema } from \"./api/visitor\";\nimport {
|
|
1
|
+
{"version":3,"file":"realtime-events.js","names":[],"sources":["../src/realtime-events.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { visitorResponseSchema } from \"./api/visitor\";\nimport {\n\tConversationEventType,\n\tConversationTimelineType,\n\tTimelineItemVisibility,\n} from \"./enums\";\nimport { conversationSchema } from \"./schemas\";\nimport { conversationHeaderSchema } from \"./trpc/conversation\";\n\nexport const baseRealtimeEvent = z.object({\n\twebsiteId: z.string(),\n\torganizationId: z.string(),\n\tvisitorId: z.string().nullable(),\n\tuserId: z.string().nullable(),\n});\n\n/**\n * Central event system for real-time communication\n * All WebSocket and Redis Pub/Sub events are defined here\n */\nexport const realtimeSchema = {\n\tuserConnected: baseRealtimeEvent.extend({\n\t\tconnectionId: z.string(),\n\t}),\n\tuserDisconnected: baseRealtimeEvent.extend({\n\t\tconnectionId: z.string(),\n\t}),\n\tvisitorConnected: baseRealtimeEvent.extend({\n\t\tvisitorId: z.string(),\n\t\tconnectionId: z.string(),\n\t}),\n\tvisitorDisconnected: baseRealtimeEvent.extend({\n\t\tvisitorId: z.string(),\n\t\tconnectionId: z.string(),\n\t}),\n\tuserPresenceUpdate: baseRealtimeEvent.extend({\n\t\tuserId: z.string(),\n\t\tstatus: z.enum([\"online\", \"away\", \"offline\"]),\n\t\tlastSeen: z.string(),\n\t}),\n\tconversationSeen: baseRealtimeEvent.extend({\n\t\tconversationId: z.string(),\n\t\taiAgentId: z.string().nullable(),\n\t\tlastSeenAt: z.string(),\n\t}),\n\tconversationTyping: baseRealtimeEvent.extend({\n\t\tconversationId: z.string(),\n\t\taiAgentId: z.string().nullable(),\n\t\tisTyping: z.boolean(),\n\t\tvisitorPreview: z.string().max(2000).nullable().optional(),\n\t}),\n\ttimelineItemCreated: baseRealtimeEvent.extend({\n\t\tconversationId: z.string(),\n\t\titem: z.object({\n\t\t\tid: z.string(),\n\t\t\tconversationId: z.string(),\n\t\t\torganizationId: z.string(),\n\t\t\tvisibility: z.enum([\n\t\t\t\tTimelineItemVisibility.PUBLIC,\n\t\t\t\tTimelineItemVisibility.PRIVATE,\n\t\t\t]),\n\t\t\ttype: z.enum([\n\t\t\t\tConversationTimelineType.MESSAGE,\n\t\t\t\tConversationTimelineType.EVENT,\n\t\t\t\tConversationTimelineType.IDENTIFICATION,\n\t\t\t]),\n\t\t\ttext: z.string().nullable(),\n\t\t\tparts: z.array(z.unknown()),\n\t\t\tuserId: z.string().nullable(),\n\t\t\tvisitorId: z.string().nullable(),\n\t\t\taiAgentId: z.string().nullable(),\n\t\t\tcreatedAt: z.string(),\n\t\t\tdeletedAt: z.string().nullable(),\n\t\t\ttool: z.string().nullable().optional(),\n\t\t}),\n\t}),\n\tconversationCreated: baseRealtimeEvent.extend({\n\t\tconversationId: z.string(),\n\t\tconversation: conversationSchema,\n\t\theader: conversationHeaderSchema,\n\t}),\n\tvisitorIdentified: baseRealtimeEvent.extend({\n\t\tvisitorId: z.string(),\n\t\tvisitor: visitorResponseSchema,\n\t}),\n\tconversationEventCreated: baseRealtimeEvent.extend({\n\t\tconversationId: z.string(),\n\t\taiAgentId: z.string().nullable(),\n\t\tevent: z.object({\n\t\t\tid: z.string(),\n\t\t\tconversationId: z.string(),\n\t\t\torganizationId: z.string(),\n\t\t\ttype: z.enum([\n\t\t\t\tConversationEventType.ASSIGNED,\n\t\t\t\tConversationEventType.UNASSIGNED,\n\t\t\t\tConversationEventType.PARTICIPANT_REQUESTED,\n\t\t\t\tConversationEventType.PARTICIPANT_JOINED,\n\t\t\t\tConversationEventType.PARTICIPANT_LEFT,\n\t\t\t\tConversationEventType.STATUS_CHANGED,\n\t\t\t\tConversationEventType.PRIORITY_CHANGED,\n\t\t\t\tConversationEventType.TAG_ADDED,\n\t\t\t\tConversationEventType.TAG_REMOVED,\n\t\t\t\tConversationEventType.RESOLVED,\n\t\t\t\tConversationEventType.REOPENED,\n\t\t\t\tConversationEventType.VISITOR_BLOCKED,\n\t\t\t\tConversationEventType.VISITOR_UNBLOCKED,\n\t\t\t\tConversationEventType.VISITOR_IDENTIFIED,\n\t\t\t]),\n\t\t\tactorUserId: z.string().nullable(),\n\t\t\tactorAiAgentId: z.string().nullable(),\n\t\t\ttargetUserId: z.string().nullable(),\n\t\t\ttargetAiAgentId: z.string().nullable(),\n\t\t\tmessage: z.string().nullable(),\n\t\t\tmetadata: z.record(z.string(), z.unknown()).nullable(),\n\t\t\tcreatedAt: z.string(),\n\t\t\tupdatedAt: z.string(),\n\t\t\tdeletedAt: z.string().nullable(),\n\t\t}),\n\t}),\n} as const;\n\nexport type RealtimeEventType = keyof typeof realtimeSchema;\n\nexport type RealtimeEventPayload<T extends RealtimeEventType> = z.infer<\n\t(typeof realtimeSchema)[T]\n>;\n\nexport type RealtimeEvent<T extends RealtimeEventType> = {\n\ttype: T;\n\tpayload: RealtimeEventPayload<T>;\n};\n\nexport type AnyRealtimeEvent = {\n\t[K in RealtimeEventType]: RealtimeEvent<K>;\n}[RealtimeEventType];\n\nexport type RealtimeEventData<T extends RealtimeEventType> =\n\tRealtimeEventPayload<T>;\n\n/**\n * Validates an event against its schema\n */\nexport function validateRealtimeEvent<T extends RealtimeEventType>(\n\ttype: T,\n\tdata: unknown\n): RealtimeEventPayload<T> {\n\tconst schema = realtimeSchema[type];\n\treturn schema.parse(data) as RealtimeEventPayload<T>;\n}\n\n/**\n * Type guard to check if a string is a valid event type\n */\nexport function isValidEventType(type: unknown): type is RealtimeEventType {\n\treturn typeof type === \"string\" && type in realtimeSchema;\n}\n\nexport function getEventPayload<T extends RealtimeEventType>(\n\tevent: RealtimeEvent<T>\n): RealtimeEventPayload<T> {\n\treturn event.payload;\n}\n"],"mappings":"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"}
|
package/schemas.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ declare const conversationSchema: z.ZodObject<{
|
|
|
26
26
|
spam: "spam";
|
|
27
27
|
}>>;
|
|
28
28
|
deletedAt: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
29
|
+
visitorLastSeenAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
29
30
|
lastTimelineItem: z.ZodOptional<z.ZodObject<{
|
|
30
31
|
id: z.ZodOptional<z.ZodString>;
|
|
31
32
|
conversationId: z.ZodString;
|
package/schemas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","names":[],"sources":["../src/schemas.ts"],"sourcesContent":[],"mappings":";;;cAIa,YAAU,CAAA,CAAA;;EAAV,IAAA,aAUX;;;;;;;;;KAEU,SAAA,GAAY,CAAA,CAAE,aAAa;cAE1B,oBAAkB,CAAA,CAAA;;;;EAdR,SAAA,aAAA;EAAA,SAAA,aAAA;EAYX,SAAA,aAAS;EAER,MAAA,cAAA,
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","names":[],"sources":["../src/schemas.ts"],"sourcesContent":[],"mappings":";;;cAIa,YAAU,CAAA,CAAA;;EAAV,IAAA,aAUX;;;;;;;;;KAEU,SAAA,GAAY,CAAA,CAAE,aAAa;cAE1B,oBAAkB,CAAA,CAAA;;;;EAdR,SAAA,aAAA;EAAA,SAAA,aAAA;EAYX,SAAA,aAAS;EAER,MAAA,cAAA,UAiBX,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEU,YAAA,GAAe,CAAA,CAAE,aAAa;cAE7B,wBAAsB,CAAA,CAAA;;;;;;;;;;CArBJ,eAAA,CAAA;AAAA,KAiCnB,gBAAA,GAAmB,CAAA,CAAE,KAjCF,CAAA,OAiCe,sBAjCf,CAAA"}
|
package/schemas.js
CHANGED
|
@@ -27,6 +27,7 @@ const conversationSchema = z.object({
|
|
|
27
27
|
ConversationStatus.SPAM
|
|
28
28
|
]).default(ConversationStatus.OPEN),
|
|
29
29
|
deletedAt: z.string().nullable().default(null),
|
|
30
|
+
visitorLastSeenAt: z.string().nullable().optional(),
|
|
30
31
|
lastTimelineItem: timelineItemSchema.optional()
|
|
31
32
|
});
|
|
32
33
|
const conversationSeenSchema = z.object({
|
package/schemas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.js","names":[],"sources":["../src/schemas.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { timelineItemSchema } from \"./api/timeline-item\";\nimport { ConversationEventType, ConversationStatus } from \"./enums\";\n\nexport const viewSchema = z.object({\n\tid: z.string(),\n\tname: z.string(),\n\tdescription: z.string().nullable(),\n\tprompt: z.string().nullable(),\n\torganizationId: z.string(),\n\twebsiteId: z.string(),\n\tcreatedAt: z.string(),\n\tupdatedAt: z.string(),\n\tdeletedAt: z.string().nullable(),\n});\n\nexport type InboxView = z.infer<typeof viewSchema>;\n\nexport const conversationSchema = z.object({\n\tid: z.string(),\n\ttitle: z.string().optional(),\n\tcreatedAt: z.string(),\n\tupdatedAt: z.string(),\n\tvisitorId: z.string(),\n\twebsiteId: z.string(),\n\tstatus: z\n\t\t.enum([\n\t\t\tConversationStatus.OPEN,\n\t\t\tConversationStatus.RESOLVED,\n\t\t\tConversationStatus.SPAM,\n\t\t])\n\t\t.default(ConversationStatus.OPEN),\n\tdeletedAt: z.string().nullable().default(null),\n\tlastTimelineItem: timelineItemSchema.optional(),\n});\n\nexport type Conversation = z.infer<typeof conversationSchema>;\n\nexport const conversationSeenSchema = z.object({\n\tid: z.string(),\n\tconversationId: z.string(),\n\tuserId: z.string().nullable(),\n\tvisitorId: z.string().nullable(),\n\taiAgentId: z.string().nullable(),\n\tlastSeenAt: z.string(),\n\tcreatedAt: z.string(),\n\tupdatedAt: z.string(),\n\tdeletedAt: z.string().nullable(),\n});\n\nexport type ConversationSeen = z.infer<typeof conversationSeenSchema>;\n"],"mappings":";;;;;AAIA,MAAa,aAAa,EAAE,OAAO;CAClC,IAAI,EAAE,QAAQ;CACd,MAAM,EAAE,QAAQ;CAChB,aAAa,EAAE,QAAQ,CAAC,UAAU;CAClC,QAAQ,EAAE,QAAQ,CAAC,UAAU;CAC7B,gBAAgB,EAAE,QAAQ;CAC1B,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC;AAIF,MAAa,qBAAqB,EAAE,OAAO;CAC1C,IAAI,EAAE,QAAQ;CACd,OAAO,EAAE,QAAQ,CAAC,UAAU;CAC5B,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,QAAQ,EACN,KAAK;EACL,mBAAmB;EACnB,mBAAmB;EACnB,mBAAmB;EACnB,CAAC,CACD,QAAQ,mBAAmB,KAAK;CAClC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,KAAK;CAC9C,kBAAkB,mBAAmB,UAAU;CAC/C,CAAC;AAIF,MAAa,yBAAyB,EAAE,OAAO;CAC9C,IAAI,EAAE,QAAQ;CACd,gBAAgB,EAAE,QAAQ;CAC1B,QAAQ,EAAE,QAAQ,CAAC,UAAU;CAC7B,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,YAAY,EAAE,QAAQ;CACtB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC"}
|
|
1
|
+
{"version":3,"file":"schemas.js","names":[],"sources":["../src/schemas.ts"],"sourcesContent":["import { z } from \"zod\";\nimport { timelineItemSchema } from \"./api/timeline-item\";\nimport { ConversationEventType, ConversationStatus } from \"./enums\";\n\nexport const viewSchema = z.object({\n\tid: z.string(),\n\tname: z.string(),\n\tdescription: z.string().nullable(),\n\tprompt: z.string().nullable(),\n\torganizationId: z.string(),\n\twebsiteId: z.string(),\n\tcreatedAt: z.string(),\n\tupdatedAt: z.string(),\n\tdeletedAt: z.string().nullable(),\n});\n\nexport type InboxView = z.infer<typeof viewSchema>;\n\nexport const conversationSchema = z.object({\n\tid: z.string(),\n\ttitle: z.string().optional(),\n\tcreatedAt: z.string(),\n\tupdatedAt: z.string(),\n\tvisitorId: z.string(),\n\twebsiteId: z.string(),\n\tstatus: z\n\t\t.enum([\n\t\t\tConversationStatus.OPEN,\n\t\t\tConversationStatus.RESOLVED,\n\t\t\tConversationStatus.SPAM,\n\t\t])\n\t\t.default(ConversationStatus.OPEN),\n\tdeletedAt: z.string().nullable().default(null),\n\tvisitorLastSeenAt: z.string().nullable().optional(),\n\tlastTimelineItem: timelineItemSchema.optional(),\n});\n\nexport type Conversation = z.infer<typeof conversationSchema>;\n\nexport const conversationSeenSchema = z.object({\n\tid: z.string(),\n\tconversationId: z.string(),\n\tuserId: z.string().nullable(),\n\tvisitorId: z.string().nullable(),\n\taiAgentId: z.string().nullable(),\n\tlastSeenAt: z.string(),\n\tcreatedAt: z.string(),\n\tupdatedAt: z.string(),\n\tdeletedAt: z.string().nullable(),\n});\n\nexport type ConversationSeen = z.infer<typeof conversationSeenSchema>;\n"],"mappings":";;;;;AAIA,MAAa,aAAa,EAAE,OAAO;CAClC,IAAI,EAAE,QAAQ;CACd,MAAM,EAAE,QAAQ;CAChB,aAAa,EAAE,QAAQ,CAAC,UAAU;CAClC,QAAQ,EAAE,QAAQ,CAAC,UAAU;CAC7B,gBAAgB,EAAE,QAAQ;CAC1B,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC;AAIF,MAAa,qBAAqB,EAAE,OAAO;CAC1C,IAAI,EAAE,QAAQ;CACd,OAAO,EAAE,QAAQ,CAAC,UAAU;CAC5B,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,QAAQ,EACN,KAAK;EACL,mBAAmB;EACnB,mBAAmB;EACnB,mBAAmB;EACnB,CAAC,CACD,QAAQ,mBAAmB,KAAK;CAClC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,KAAK;CAC9C,mBAAmB,EAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;CACnD,kBAAkB,mBAAmB,UAAU;CAC/C,CAAC;AAIF,MAAa,yBAAyB,EAAE,OAAO;CAC9C,IAAI,EAAE,QAAQ;CACd,gBAAgB,EAAE,QAAQ;CAC1B,QAAQ,EAAE,QAAQ,CAAC,UAAU;CAC7B,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,YAAY,EAAE,QAAQ;CACtB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ;CACrB,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC"}
|