{"version":3,"file":"react-BZww977J.d.cts","names":["SubmitTicketData","Record","TicketResult","TicketDetail","PublicReply","AttachmentMeta","TicketListItem","TrackedTicketResult","CategoryItem","WidgetConfig","ProjectListItem","ApiKeyInfo","WidgetUser","ThemeConfig","CustomerConfig","OidcAuthConfig","WidgetError","WidgetEvent","EventCallback","SupportedLanguage","ApiErrorFingerprint","ApiFieldError","ApiError","ApiFetchError","Error","parseApiErrorBody","asApiFetchError","AuthState","AuthProvider","Promise","ApiClientConfig","ApiClient","File","createApiClient","StorageBackend","T","createLocalStorageBackend","DEFAULT_THEME","Omit","Required","resolveThemeMode","hexToHsl","themeToVars","themeToStyle","en","ar","getTranslations","t","MetadataPreferences","collectMinimalMetadata","collectDiagnosticMetadata","collectAllMetadata","getMetadataPreferences","saveMetadataPreferences","isDiagnosticEnabled","DIAGNOSTIC_FIELDS","_tanstack_react_query0","QueryClient","react_jsx_runtime0","_reqdesk_sdk_core0","ApiClient","AuthProvider","CustomerConfig","StorageBackend","SubmitTicketData","SupportedLanguage","ThemeConfig","TicketResult","TrackedTicketResult","WidgetError","ReqdeskProviderProps","Record","React","ReactNode","ReqdeskContextValue","useReqdeskContext","ReqdeskProvider","apiClient","authProvider","storage","projectId","language","theme","translations","customer","queryClient","children","JSX","Element","SubmitTicketViewProps","SubmitTicketView","onSuccess","onError","isAuthenticated","userEmail","MyTicketsViewProps","MyTicketsView","onSelectTicket","TicketDetailViewProps","TicketDetailView","ticketId","onBack","TrackTicketViewProps","TrackTicketView","onTrackSuccess","UseReqdeskReturn","Promise","useReqdesk","reqdeskTicketDetailOptions","TicketDetail","Error","UseQueryOptions","OmitKeyof","QueryFunction","dataTagSymbol","dataTagErrorSymbol","reqdeskMyTicketsOptions","TicketListItem","reqdeskUserOptions","WidgetUser","reqdeskTrackTicketOptions","reqdeskCategoriesOptions","CategoryItem"],"sources":["../../core/dist/index-C2ZClicD.d.ts","../src/react/types.ts","../src/react/ReqdeskProvider.tsx","../src/react/TicketForm.tsx","../src/react/SupportPortal.tsx","../src/react/FloatingWidget.tsx","../src/react/useReqdesk.ts","../src/react/Trigger.tsx","../src/react/useReqdeskTrigger.ts","../src/registry.ts","../src/react/registry-context.tsx","../src/react/shadow-root.tsx","../src/storage.ts","../src/react/form-errors.tsx","../src/react/notifications.tsx","../src/ofetch-client.ts","../../react/dist/index-B9ztcf4k.d.ts"],"sourcesContent":["//#region src/types.d.ts\ninterface SubmitTicketData {\n title: string;\n description?: string;\n priority?: 'low' | 'medium' | 'high' | 'urgent';\n categoryId?: string;\n email: string;\n clientMetadata?: Record;\n}\ninterface TicketResult {\n id: string;\n ticketNumber: string;\n trackingToken?: string;\n status: string;\n}\ninterface TicketDetail {\n id: string;\n ticketNumber: string;\n title: string;\n description?: string;\n status: string;\n priority: string;\n createdAt: string;\n replies: PublicReply[];\n attachments: AttachmentMeta[];\n}\ninterface TicketListItem {\n id: string;\n ticketNumber: string;\n title: string;\n status: string;\n priority: string;\n createdAt: string;\n}\ninterface TrackedTicketResult {\n id: string;\n ticketNumber: string;\n title: string;\n status: string;\n priority: string;\n createdAt: string;\n replies: PublicReply[];\n}\ninterface PublicReply {\n id: string;\n body: string;\n authorName: string;\n isStaff: boolean;\n createdAt: string;\n}\ninterface AttachmentMeta {\n id: string;\n fileName: string;\n contentType: string;\n fileSize: number;\n downloadUrl?: string;\n downloadUrlExpiresAt?: string;\n}\ninterface CategoryItem {\n id: string;\n name: string;\n parentId?: string;\n hasChildren: boolean;\n}\ninterface WidgetConfig {\n id: string;\n projectName: string;\n brandName: string | null;\n logoUrl: string | null;\n authIssuerUri: string | null;\n authClientId: string | null;\n showAllTickets: boolean;\n workspaceId: string | null;\n}\ninterface ProjectListItem {\n id: string;\n name: string;\n slug: string;\n url?: string | null;\n}\ninterface ApiKeyInfo {\n entityType: string;\n entityId: string;\n workspaceName: string;\n scopes: string | null;\n}\ninterface WidgetUser {\n userId: string;\n email: string;\n displayName: string;\n}\ninterface ThemeConfig {\n primaryColor?: string;\n mode?: 'light' | 'dark' | 'auto';\n borderRadius?: string;\n fontFamily?: string;\n zIndex?: number;\n logo?: string;\n brandName?: string;\n hideBranding?: boolean;\n}\ninterface CustomerConfig {\n email?: string;\n name?: string;\n externalId?: string;\n}\ninterface OidcAuthConfig {\n issuerUri: string;\n clientId: string;\n}\ninterface WidgetError {\n code: string;\n message: string;\n}\ntype WidgetEvent = 'open' | 'close' | 'ticket:created' | 'ticket:tracked' | 'reply:sent' | 'error';\ntype EventCallback = (data?: unknown) => void;\ntype SupportedLanguage = 'en' | 'ar';\n//# sourceMappingURL=types.d.ts.map\n//#endregion\n//#region src/errors.d.ts\n/**\n * Shared error contract for every Reqdesk-fronted HTTP client (widget, dashboard, future\n * host integrations). Centralizes:\n *\n * - The typed error class thrown from an `ofetch.onResponseError` hook.\n * - The `{ code, detail, pointer, field }` per-field shape derived from the backend's\n * JSON:API `errors[]` envelope.\n * - The body parser that turns a JSON:API error document into that shape.\n *\n * Render layers differ between apps (widget = in-panel notification stack + custom form\n * primitives; dashboard = sonner + react-hook-form). This module stays UI-free — each app\n * chooses its own surface and wires it up using the same typed error at the boundary.\n */\n/** Non-reversible fingerprint identifier for log correlation. */\ntype ApiErrorFingerprint = string;\n/**\n * One entry in a JSON:API `errors[]` array, normalized to a shape UIs can consume directly.\n * `pointer` preserves the raw JSON:API source pointer (e.g. `/data/attributes/priority`);\n * `field` is a convenience — the trailing segment of the pointer (`priority`) — so forms can\n * match against their input `name` attribute without re-parsing the pointer.\n */\ninterface ApiFieldError {\n code: string;\n detail: string;\n pointer?: string;\n field?: string;\n}\n/**\n * Normalized error surface returned by the API. Every 4xx/5xx response that carries the\n * Reqdesk JSON:API error envelope is parsed into this shape via {@link parseApiErrorBody}\n * and thrown as an {@link ApiFetchError} from the ofetch interceptor.\n */\ninterface ApiError {\n /** Top-level error code (e.g. `VALIDATION_ERROR`). Matches the server's `responseCode`. */\n code: string;\n /** Human-readable summary (`responseMessage`), safe to show to the user. */\n message: string;\n /** HTTP status from the response, when the error originated from an HTTP call. */\n status?: number;\n /** Per-field errors extracted from the JSON:API `errors[]` array. Populated on 422s. */\n errors?: ApiFieldError[];\n}\n/**\n * `Error` subclass carrying the normalized API error surface as own properties. Throwing a\n * real subclass (rather than a plain object) means:\n *\n * 1. Dev-tools stacks show `ApiFetchError: ` with a usable call site.\n * 2. `instanceof ApiFetchError` works at every layer — cache error handlers, RHF adapters,\n * explicit `catch` blocks — with no structural-duck-typing guesswork.\n * 3. Unlike a plain `FetchError`, callers don't have to split-route between `error.data`,\n * `error.statusCode`, `error.status` depending on how the client was invoked.\n */\ndeclare class ApiFetchError extends Error implements ApiError {\n readonly code: string;\n readonly status?: number;\n readonly errors?: ApiFieldError[];\n constructor(init: ApiError);\n /** Convenience predicate — true when the error is a validation (422) failure. */\n get isValidationError(): boolean;\n /** Returns the field error for a given input `name`, or `undefined` if none. */\n fieldError(name: string): ApiFieldError | undefined;\n /** Returns a map of `field → detail` for quick mass-map into react-hook-form's `setError`. */\n toFieldMap(): Record;\n}\n/**\n * Parse a JSON:API error document into the normalized {@link ApiError} shape. Handles both\n * the Reqdesk envelope (`{ responseCode, responseMessage, httpCode, errors[] }`) and a bare\n * `{ errors[] }` document. Never throws — unknown shapes fall back to a generic entry.\n */\ndeclare function parseApiErrorBody(body: Record | undefined, status: number, statusText: string): ApiError;\n/**\n * Narrow an `unknown` caught error into an {@link ApiFetchError} when possible. Useful in\n * `try/catch` blocks that need to peek at `.errors` / `.status` without a hard type assertion.\n */\ndeclare function asApiFetchError(error: unknown): ApiFetchError | null;\n//# sourceMappingURL=errors.d.ts.map\n//#endregion\n//#region src/auth.d.ts\ninterface AuthState {\n isAuthenticated: boolean;\n isLoading: boolean;\n userEmail?: string;\n userName?: string;\n}\ninterface AuthProvider {\n getAccessToken(): Promise;\n isAuthenticated(): boolean;\n login(): Promise;\n logout(): Promise;\n onAuthStateChange(listener: (state: AuthState) => void): () => void;\n}\n//# sourceMappingURL=auth.d.ts.map\n//#endregion\n//#region src/api-client.d.ts\ninterface ApiClientConfig {\n apiUrl: string;\n apiKey: string;\n authProvider?: AuthProvider;\n timeout?: number;\n}\ninterface ApiClient {\n submitTicket(projectId: string, data: SubmitTicketData): Promise;\n getTicketDetail(ticketId: string): Promise;\n listMyTickets(projectId: string, userId: string, page?: number, pageSize?: number, showAll?: boolean): Promise;\n resolveTicket(ticketId: string): Promise;\n submitReply(ticketId: string, body: string): Promise<{\n id: string;\n }>;\n submitTrackingReply(token: string, body: string): Promise;\n trackTicket(token: string): Promise;\n getCategories(projectId: string, parentId?: string | null): Promise;\n createCategory(projectId: string, name: string, parentId?: string | null): Promise;\n getWidgetConfig(projectId: string): Promise;\n listProjects(workspaceId?: string): Promise;\n uploadAttachment(ticketId: string, file: File, onProgress?: (pct: number) => void): Promise;\n uploadReplyAttachment(ticketId: string, replyId: string, file: File, onProgress?: (pct: number) => void): Promise;\n getAttachmentDownloadUrl(attachmentId: string): Promise<{\n downloadUrl: string;\n expiresAt: string;\n }>;\n validateKey(): Promise;\n checkServerIdentity(baseUrl: string): Promise<{\n name: string;\n version: string;\n signature: string;\n }>;\n resolveWidgetUser(projectId: string, email: string): Promise;\n}\ndeclare function createApiClient(config: ApiClientConfig): ApiClient;\n//# sourceMappingURL=api-client.d.ts.map\n//#endregion\n//#region src/storage.d.ts\ninterface StorageBackend {\n get(key: string): Promise;\n set(key: string, value: T): Promise;\n remove(key: string): Promise;\n}\ndeclare function createLocalStorageBackend(): StorageBackend;\n//# sourceMappingURL=storage.d.ts.map\n\n//#endregion\n//#region src/theme.d.ts\n/**\n * Default theme for the Reqdesk embeddable widget.\n *\n * Ships with the Reqdesk brand — Cedar primary, Bone/Ink surfaces,\n * editorial type — but host customers can override any of these via\n * `ThemeConfig` at widget init. The `--rqd-*` CSS variable public API\n * is unchanged from previous versions.\n *\n * Brand source of truth: `@reqdesk/brand`. Hex values below are kept\n * in sync with `sdk/brand/src/tokens.ts`.\n */\ndeclare const DEFAULT_THEME: Required> & {\n logo?: string;\n brandName?: string;\n hideBranding?: boolean;\n};\ndeclare function resolveThemeMode(mode: ThemeConfig['mode']): 'light' | 'dark';\ndeclare function hexToHsl(hex: string): {\n h: number;\n s: number;\n l: number;\n};\ndeclare function themeToVars(theme?: ThemeConfig): string;\ndeclare function themeToStyle(theme?: ThemeConfig): Record;\n//# sourceMappingURL=theme.d.ts.map\n//#endregion\n//#region src/i18n/en.d.ts\ndeclare const en: Record;\n//# sourceMappingURL=en.d.ts.map\n//#endregion\n//#region src/i18n/ar.d.ts\ndeclare const ar: Record;\n//# sourceMappingURL=ar.d.ts.map\n\n//#endregion\n//#region src/i18n/index.d.ts\ndeclare function getTranslations(lang: SupportedLanguage): Record;\ndeclare function t(key: string, lang: SupportedLanguage, overrides?: Record): string;\n//#endregion\n//#region src/client-metadata.d.ts\ninterface MetadataPreferences {\n screenResolution: boolean;\n deviceType: boolean;\n timezone: boolean;\n referrerUrl: boolean;\n language: boolean;\n platform: boolean;\n}\n/** Always collected — minimal, non-sensitive */\ndeclare function collectMinimalMetadata(): Record;\n/** Full diagnostic set — only included for opted-in fields */\ndeclare function collectDiagnosticMetadata(prefs: MetadataPreferences): Record;\n/** Combine minimal + opted-in diagnostic metadata */\ndeclare function collectAllMetadata(apiKey: string): Record;\ndeclare function getMetadataPreferences(apiKey: string): MetadataPreferences;\ndeclare function saveMetadataPreferences(apiKey: string, prefs: MetadataPreferences): void;\ndeclare function isDiagnosticEnabled(apiKey: string): boolean;\ndeclare const DIAGNOSTIC_FIELDS: readonly [{\n readonly key: \"screenResolution\";\n readonly labelKey: \"diag.screenResolution\";\n}, {\n readonly key: \"deviceType\";\n readonly labelKey: \"diag.deviceType\";\n}, {\n readonly key: \"timezone\";\n readonly labelKey: \"diag.timezone\";\n}, {\n readonly key: \"referrerUrl\";\n readonly labelKey: \"diag.referrerUrl\";\n}, {\n readonly key: \"language\";\n readonly labelKey: \"diag.language\";\n}, {\n readonly key: \"platform\";\n readonly labelKey: \"diag.platform\";\n}];\n//# sourceMappingURL=client-metadata.d.ts.map\n\n//#endregion\nexport { type ApiClient, type ApiClientConfig, type ApiError, type ApiErrorFingerprint, ApiFetchError, type ApiFieldError, type ApiKeyInfo, type AttachmentMeta, type AuthProvider, type AuthState, type CategoryItem, type CustomerConfig, DEFAULT_THEME, DIAGNOSTIC_FIELDS, type EventCallback, type MetadataPreferences, type OidcAuthConfig, type ProjectListItem, type PublicReply, type StorageBackend, type SubmitTicketData, type SupportedLanguage, type ThemeConfig, type TicketDetail, type TicketListItem, type TicketResult, type TrackedTicketResult, type WidgetConfig, type WidgetError, type WidgetEvent, type WidgetUser, ar, asApiFetchError, collectAllMetadata, collectDiagnosticMetadata, collectMinimalMetadata, createApiClient, createLocalStorageBackend, en, getMetadataPreferences, getTranslations, hexToHsl, isDiagnosticEnabled, parseApiErrorBody, resolveThemeMode, saveMetadataPreferences, t, themeToStyle, themeToVars };\n//# sourceMappingURL=index-C2ZClicD.d.ts.map","import * as _tanstack_react_query0 from \"@tanstack/react-query\";\nimport { QueryClient } from \"@tanstack/react-query\";\nimport * as react_jsx_runtime0 from \"react/jsx-runtime\";\nimport * as _reqdesk_sdk_core0 from \"@reqdesk/sdk-core\";\nimport { ApiClient, AuthProvider, CustomerConfig, StorageBackend, SubmitTicketData, SupportedLanguage, ThemeConfig, TicketResult, TrackedTicketResult, WidgetError } from \"@reqdesk/sdk-core\";\n\n//#region src/ReqdeskProvider.d.ts\ninterface ReqdeskProviderProps {\n apiClient: ApiClient;\n authProvider?: AuthProvider;\n storage: StorageBackend;\n projectId: string;\n language?: SupportedLanguage;\n theme?: ThemeConfig;\n translations?: Record;\n customer?: CustomerConfig;\n queryClient?: QueryClient;\n children: React.ReactNode;\n}\ninterface ReqdeskContextValue {\n apiClient: ApiClient;\n authProvider: AuthProvider | null;\n storage: StorageBackend;\n projectId: string;\n language: SupportedLanguage;\n theme: ThemeConfig;\n translations?: Record;\n customer?: CustomerConfig;\n isAuthenticated: boolean;\n userEmail: string | null;\n userName: string | null;\n}\ndeclare function useReqdeskContext(): ReqdeskContextValue;\ndeclare function ReqdeskProvider({\n apiClient,\n authProvider,\n storage,\n projectId,\n language,\n theme,\n translations,\n customer,\n queryClient,\n children\n}: ReqdeskProviderProps): react_jsx_runtime0.JSX.Element;\n//# sourceMappingURL=ReqdeskProvider.d.ts.map\n//#endregion\n//#region src/views/SubmitTicketView.d.ts\ninterface SubmitTicketViewProps {\n onSuccess?: (result: TicketResult) => void;\n onError?: (error: WidgetError) => void;\n isAuthenticated?: boolean;\n userEmail?: string;\n}\ndeclare function SubmitTicketView({\n onSuccess,\n onError,\n isAuthenticated,\n userEmail\n}: SubmitTicketViewProps): react_jsx_runtime0.JSX.Element;\n//#endregion\n//#region src/views/MyTicketsView.d.ts\ninterface MyTicketsViewProps {\n onSelectTicket: (ticketId: string) => void;\n isAuthenticated?: boolean;\n userEmail?: string;\n}\ndeclare function MyTicketsView({\n onSelectTicket,\n isAuthenticated,\n userEmail\n}: MyTicketsViewProps): react_jsx_runtime0.JSX.Element;\n//#endregion\n//#region src/views/TicketDetailView.d.ts\ninterface TicketDetailViewProps {\n ticketId: string;\n onBack: () => void;\n}\ndeclare function TicketDetailView({\n ticketId,\n onBack\n}: TicketDetailViewProps): react_jsx_runtime0.JSX.Element;\n//#endregion\n//#region src/views/TrackTicketView.d.ts\ninterface TrackTicketViewProps {\n onTrackSuccess: (ticketId: string) => void;\n}\ndeclare function TrackTicketView({\n onTrackSuccess\n}: TrackTicketViewProps): react_jsx_runtime0.JSX.Element;\n//#endregion\n//#region src/hooks/useReqdesk.d.ts\ninterface UseReqdeskReturn {\n submitTicket(data: SubmitTicketData): Promise;\n trackTicket(token: string): Promise;\n submitTrackingReply(token: string, body: string): Promise;\n submitReply(ticketId: string, body: string): Promise<{\n id: string;\n }>;\n resolveTicket(ticketId: string): Promise;\n isLoading: boolean;\n error: WidgetError | null;\n}\ndeclare function useReqdesk(): UseReqdeskReturn;\n//# sourceMappingURL=useReqdesk.d.ts.map\n//#endregion\n//#region src/queries.d.ts\ndeclare const reqdeskTicketDetailOptions: (client: ApiClient, ticketId: string) => _tanstack_react_query0.OmitKeyof<_tanstack_react_query0.UseQueryOptions<_reqdesk_sdk_core0.TicketDetail, Error, _reqdesk_sdk_core0.TicketDetail, string[]>, \"queryFn\"> & {\n queryFn?: _tanstack_react_query0.QueryFunction<_reqdesk_sdk_core0.TicketDetail, string[], never> | undefined;\n} & {\n queryKey: string[] & {\n [dataTagSymbol]: _reqdesk_sdk_core0.TicketDetail;\n [dataTagErrorSymbol]: Error;\n };\n};\ndeclare const reqdeskMyTicketsOptions: (client: ApiClient, projectId: string, userId: string, showAll?: boolean) => _tanstack_react_query0.OmitKeyof<_tanstack_react_query0.UseQueryOptions<_reqdesk_sdk_core0.TicketListItem[], Error, _reqdesk_sdk_core0.TicketListItem[], (string | boolean)[]>, \"queryFn\"> & {\n queryFn?: _tanstack_react_query0.QueryFunction<_reqdesk_sdk_core0.TicketListItem[], (string | boolean)[], never> | undefined;\n} & {\n queryKey: (string | boolean)[] & {\n [dataTagSymbol]: _reqdesk_sdk_core0.TicketListItem[];\n [dataTagErrorSymbol]: Error;\n };\n};\ndeclare const reqdeskUserOptions: (client: ApiClient, projectId: string, email: string) => _tanstack_react_query0.OmitKeyof<_tanstack_react_query0.UseQueryOptions<_reqdesk_sdk_core0.WidgetUser | null, Error, _reqdesk_sdk_core0.WidgetUser | null, string[]>, \"queryFn\"> & {\n queryFn?: _tanstack_react_query0.QueryFunction<_reqdesk_sdk_core0.WidgetUser | null, string[], never> | undefined;\n} & {\n queryKey: string[] & {\n [dataTagSymbol]: _reqdesk_sdk_core0.WidgetUser | null;\n [dataTagErrorSymbol]: Error;\n };\n};\ndeclare const reqdeskTrackTicketOptions: (client: ApiClient, token: string) => _tanstack_react_query0.OmitKeyof<_tanstack_react_query0.UseQueryOptions<_reqdesk_sdk_core0.TrackedTicketResult, Error, _reqdesk_sdk_core0.TrackedTicketResult, string[]>, \"queryFn\"> & {\n queryFn?: _tanstack_react_query0.QueryFunction<_reqdesk_sdk_core0.TrackedTicketResult, string[], never> | undefined;\n} & {\n queryKey: string[] & {\n [dataTagSymbol]: _reqdesk_sdk_core0.TrackedTicketResult;\n [dataTagErrorSymbol]: Error;\n };\n};\ndeclare const reqdeskCategoriesOptions: (client: ApiClient, projectId: string, parentId?: string | null) => _tanstack_react_query0.OmitKeyof<_tanstack_react_query0.UseQueryOptions<_reqdesk_sdk_core0.CategoryItem[], Error, _reqdesk_sdk_core0.CategoryItem[], string[]>, \"queryFn\"> & {\n queryFn?: _tanstack_react_query0.QueryFunction<_reqdesk_sdk_core0.CategoryItem[], string[], never> | undefined;\n} & {\n queryKey: string[] & {\n [dataTagSymbol]: _reqdesk_sdk_core0.CategoryItem[];\n [dataTagErrorSymbol]: Error;\n };\n};\n//# sourceMappingURL=queries.d.ts.map\n\n//#endregion\nexport { MyTicketsView, type ReqdeskContextValue, ReqdeskProvider, type ReqdeskProviderProps, SubmitTicketView, TicketDetailView, TrackTicketView, type UseReqdeskReturn, reqdeskCategoriesOptions, reqdeskMyTicketsOptions, reqdeskTicketDetailOptions, reqdeskTrackTicketOptions, reqdeskUserOptions, useReqdesk, useReqdeskContext };\n//# sourceMappingURL=index-B9ztcf4k.d.ts.map"],"mappings":"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"}