@docyrus/ui-pro-ai-assistant 0.4.3 → 0.4.5

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.
Files changed (96) hide show
  1. package/dist/components/field-form-layout.d.ts +9 -0
  2. package/dist/components/field-value-layout.d.ts +7 -0
  3. package/dist/components/form-fields/approval-status-form-field.d.ts +2 -0
  4. package/dist/components/form-fields/checkbox-form-field.d.ts +2 -0
  5. package/dist/components/form-fields/color-form-field.d.ts +2 -0
  6. package/dist/components/form-fields/currency-code-form-field.d.ts +2 -0
  7. package/dist/components/form-fields/date-form-field.d.ts +2 -0
  8. package/dist/components/form-fields/date-range-form-field.d.ts +2 -0
  9. package/dist/components/form-fields/datetime-form-field.d.ts +2 -0
  10. package/dist/components/form-fields/duration-form-field.d.ts +2 -0
  11. package/dist/components/form-fields/dynamic-form-field.d.ts +8 -0
  12. package/dist/components/form-fields/email-form-field.d.ts +2 -0
  13. package/dist/components/form-fields/enum-form-field.d.ts +2 -0
  14. package/dist/components/form-fields/file-form-field.d.ts +2 -0
  15. package/dist/components/form-fields/icon-form-field.d.ts +2 -0
  16. package/dist/components/form-fields/index.d.ts +35 -0
  17. package/dist/components/form-fields/lib/utils.d.ts +138 -0
  18. package/dist/components/form-fields/location-select-form-field.d.ts +2 -0
  19. package/dist/components/form-fields/money-form-field.d.ts +2 -0
  20. package/dist/components/form-fields/multi-select-form-field.d.ts +5 -0
  21. package/dist/components/form-fields/number-form-field.d.ts +11 -0
  22. package/dist/components/form-fields/percent-form-field.d.ts +2 -0
  23. package/dist/components/form-fields/phone-form-field.d.ts +2 -0
  24. package/dist/components/form-fields/radio-group-form-field.d.ts +2 -0
  25. package/dist/components/form-fields/rating-form-field.d.ts +2 -0
  26. package/dist/components/form-fields/relation-form-field.d.ts +5 -0
  27. package/dist/components/form-fields/select-form-field.d.ts +2 -0
  28. package/dist/components/form-fields/status-form-field.d.ts +2 -0
  29. package/dist/components/form-fields/switch-form-field.d.ts +2 -0
  30. package/dist/components/form-fields/tag-select-form-field.d.ts +2 -0
  31. package/dist/components/form-fields/task-list-form-field.d.ts +2 -0
  32. package/dist/components/form-fields/text-form-field.d.ts +2 -0
  33. package/dist/components/form-fields/textarea-form-field.d.ts +2 -0
  34. package/dist/components/form-fields/time-form-field.d.ts +2 -0
  35. package/dist/components/form-fields/types/index.d.ts +97 -0
  36. package/dist/components/form-fields/url-form-field.d.ts +2 -0
  37. package/dist/components/form-fields/user-multi-select-form-field.d.ts +2 -0
  38. package/dist/components/form-fields/user-select-form-field.d.ts +2 -0
  39. package/dist/components/value-renderers/approval-status-value.d.ts +2 -0
  40. package/dist/components/value-renderers/avatar-value.d.ts +2 -0
  41. package/dist/components/value-renderers/button-value.d.ts +2 -0
  42. package/dist/components/value-renderers/checkbox-value.d.ts +2 -0
  43. package/dist/components/value-renderers/code-value.d.ts +2 -0
  44. package/dist/components/value-renderers/color-value.d.ts +2 -0
  45. package/dist/components/value-renderers/conversation-channel-value.d.ts +2 -0
  46. package/dist/components/value-renderers/currency-code-value.d.ts +2 -0
  47. package/dist/components/value-renderers/date-range-value.d.ts +2 -0
  48. package/dist/components/value-renderers/date-value.d.ts +2 -0
  49. package/dist/components/value-renderers/datetime-value.d.ts +2 -0
  50. package/dist/components/value-renderers/doc-editor-value.d.ts +2 -0
  51. package/dist/components/value-renderers/duration-value.d.ts +2 -0
  52. package/dist/components/value-renderers/dynamic-value.d.ts +6 -0
  53. package/dist/components/value-renderers/email-value.d.ts +2 -0
  54. package/dist/components/value-renderers/file-storage-folder-value.d.ts +2 -0
  55. package/dist/components/value-renderers/file-value.d.ts +2 -0
  56. package/dist/components/value-renderers/formula-value.d.ts +2 -0
  57. package/dist/components/value-renderers/icon-value.d.ts +2 -0
  58. package/dist/components/value-renderers/identity-value.d.ts +2 -0
  59. package/dist/components/value-renderers/image-value.d.ts +2 -0
  60. package/dist/components/value-renderers/index.d.ts +45 -0
  61. package/dist/components/value-renderers/inline-data-value.d.ts +2 -0
  62. package/dist/components/value-renderers/json-value.d.ts +2 -0
  63. package/dist/components/value-renderers/list-value.d.ts +2 -0
  64. package/dist/components/value-renderers/location-value.d.ts +2 -0
  65. package/dist/components/value-renderers/money-value.d.ts +2 -0
  66. package/dist/components/value-renderers/multi-select-value.d.ts +2 -0
  67. package/dist/components/value-renderers/number-value.d.ts +2 -0
  68. package/dist/components/value-renderers/percent-value.d.ts +2 -0
  69. package/dist/components/value-renderers/phone-value.d.ts +2 -0
  70. package/dist/components/value-renderers/rating-value.d.ts +2 -0
  71. package/dist/components/value-renderers/related-field-value.d.ts +2 -0
  72. package/dist/components/value-renderers/relation-value.d.ts +2 -0
  73. package/dist/components/value-renderers/rich-text-value.d.ts +2 -0
  74. package/dist/components/value-renderers/select-value.d.ts +2 -0
  75. package/dist/components/value-renderers/status-value.d.ts +2 -0
  76. package/dist/components/value-renderers/switch-value.d.ts +2 -0
  77. package/dist/components/value-renderers/task-list-value.d.ts +2 -0
  78. package/dist/components/value-renderers/text-value.d.ts +2 -0
  79. package/dist/components/value-renderers/time-value.d.ts +2 -0
  80. package/dist/components/value-renderers/todo-value.d.ts +2 -0
  81. package/dist/components/value-renderers/types.d.ts +61 -0
  82. package/dist/components/value-renderers/url-value.d.ts +2 -0
  83. package/dist/components/value-renderers/user-multi-value.d.ts +2 -0
  84. package/dist/components/value-renderers/user-value.d.ts +2 -0
  85. package/dist/components/value-renderers/utils.d.ts +12 -0
  86. package/dist/hooks/index.d.ts +1 -0
  87. package/dist/hooks/use-resolved-record-fields.d.ts +23 -0
  88. package/dist/index.d.ts +1 -1
  89. package/dist/index.js +6083 -509
  90. package/dist/index.js.map +1 -1
  91. package/dist/internal/plate-editor/plate-ui/dialog.d.ts +1 -1
  92. package/dist/lib/assistant-config.d.ts +7 -0
  93. package/dist/styles.css +589 -0
  94. package/dist/tools/update-record.d.ts +13 -0
  95. package/dist/tools/view-record.d.ts +11 -0
  96. package/package.json +4 -3
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function MoneyValue({ field, value, record, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function MultiSelectValue({ value, enumOptions, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function NumberValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function PercentValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function PhoneValue({ field, value, record, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function RatingValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function RelatedFieldValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function RelationValue({ value, enumOptions, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function RichTextValue({ field, value, record, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function SelectValue({ value, enumOptions, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function StatusValue({ field, value, record, enumOptions, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function SwitchValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function TaskListValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function TextValue({ field, value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function TimeValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function TodoValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,61 @@
1
+ export type IFieldType = 'field-text' | 'field-textarea' | 'field-email' | 'field-phone' | 'field-url' | 'field-color' | 'field-icon' | 'field-currency' | 'field-display' | 'field-htmlEditor' | 'field-emailEditor' | 'field-codeEditor' | 'field-formula' | 'field-relatedField' | 'field-enum' | 'field-code' | 'field-button' | 'field-number' | 'field-money' | 'field-percent' | 'field-duration' | 'field-rating' | 'field-identity' | 'field-autonumber' | 'field-checkbox' | 'field-switch' | 'field-date' | 'field-dateTime' | 'field-time' | 'field-dateRange' | 'field-select' | 'field-radioGroup' | 'field-status' | 'field-relation' | 'field-userSelect' | 'field-multiSelect' | 'field-tagSelect' | 'field-userMultiSelect' | 'field-json' | 'field-file' | 'field-image' | 'field-avatar' | 'field-docEditor' | 'field-inlineData' | 'field-inlineForm' | 'field-taskList' | 'field-approvalStatus' | 'field-locationSelect' | 'field-list' | 'field-todo' | 'field-conversationChannel' | 'field-queryBuilder' | 'field-dynamic' | 'field-schema' | 'field-schemaRepeater' | 'field-fileStorageFolder' | 'field-systemEnum' | 'field-systemBuffer' | 'field-systemVector' | 'field-systemTextArray' | 'field-systemUuidArray';
2
+ export interface IField {
3
+ id: string;
4
+ name: string;
5
+ slug: string;
6
+ type: IFieldType;
7
+ defaultValue?: string | null;
8
+ validations?: Array<string> | null;
9
+ readOnly?: boolean | null;
10
+ options?: Record<string, unknown> | null;
11
+ relationDataSourceId?: string | null;
12
+ avatarMapping?: {
13
+ iconField?: string | null;
14
+ colorField?: string | null;
15
+ imageField?: string | null;
16
+ } | null;
17
+ }
18
+ export interface EnumOption {
19
+ id: string;
20
+ name: string;
21
+ color?: string;
22
+ icon?: string;
23
+ parent?: string;
24
+ slug?: string;
25
+ sort_order?: number;
26
+ active?: boolean;
27
+ is_final_option?: boolean;
28
+ force_description?: boolean;
29
+ force_followup_date?: boolean;
30
+ description?: string;
31
+ }
32
+ /** Common props for all TanStack Form field components */
33
+ export interface DocyrusFormFieldProps {
34
+ /** Field configuration from the data source */
35
+ field: IField;
36
+ /** TanStack Form instance — the result of useForm() */
37
+ form: any;
38
+ /** Whether the field is disabled */
39
+ disabled?: boolean;
40
+ /** Additional CSS class */
41
+ className?: string;
42
+ /** Enum options for select-based fields */
43
+ enumOptions?: Array<EnumOption>;
44
+ /** App slug for dynamic enum loading */
45
+ appSlug?: string;
46
+ /** Data source slug for dynamic enum loading */
47
+ dataSourceSlug?: string;
48
+ }
49
+ /** Common props for all value renderer components */
50
+ export interface DocyrusValueProps {
51
+ /** Field configuration from the data source */
52
+ field: IField;
53
+ /** The field value to display */
54
+ value: unknown;
55
+ /** Full record for accessing companion columns */
56
+ record?: Record<string, unknown>;
57
+ /** Enum options for select-based fields */
58
+ enumOptions?: Array<EnumOption>;
59
+ /** Additional CSS class */
60
+ className?: string;
61
+ }
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function UrlValue({ value, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function UserMultiValue({ value, enumOptions, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { type DocyrusValueProps } from './types';
2
+ export declare function UserValue({ value, enumOptions, className }: DocyrusValueProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,12 @@
1
+ export declare function formatDuration(seconds: number | null | undefined): string;
2
+ export declare function getCurrencySymbol(code: string): string;
3
+ export declare function formatMoney(amount: number | null | undefined, currency?: string): string;
4
+ export declare function getCompanionFieldSlug(fieldSlug: string, suffix: string): string;
5
+ export declare function getCompanionValue(record: Record<string, unknown> | undefined, fieldSlug: string, suffix: string): unknown;
6
+ export declare function parseDateRange(value: string | null | undefined): {
7
+ start: Date;
8
+ end: Date;
9
+ } | null;
10
+ export declare function formatDateRange(start: Date, end: Date): string;
11
+ export declare function formatTime(value: string | null | undefined): string;
12
+ export declare function formatPhoneDisplay(phone: string | null | undefined, countryCode: string | null | undefined): string;
@@ -6,3 +6,4 @@ export { type SessionState, useSessionState } from './use-session-state';
6
6
  export { useSpeechRecognition } from './use-speech-recognition';
7
7
  export { createInitialUIState, type UIState, useUIState } from './use-ui-state';
8
8
  export { useWorksState, type WorksState } from './use-works-state';
9
+ export { useResolvedRecordFields, clearRecordFieldsCache, type ResolvedDataSource, type UseResolvedRecordFieldsResult } from './use-resolved-record-fields';
@@ -0,0 +1,23 @@
1
+ import { type DataSourceField } from '../lib/assistant-config';
2
+ export interface ResolvedDataSource {
3
+ name?: string;
4
+ appSlug: string;
5
+ dsSlug: string;
6
+ labelField?: {
7
+ slug: string;
8
+ };
9
+ }
10
+ export declare function clearRecordFieldsCache(): void;
11
+ export interface UseResolvedRecordFieldsResult {
12
+ fields: DataSourceField[];
13
+ dataSource: ResolvedDataSource | null;
14
+ loading: boolean;
15
+ resolved: boolean;
16
+ }
17
+ /**
18
+ * Resolves data-source metadata, enum options, and user names for record tools.
19
+ * Pass `recordSlugs` to filter the returned fields to only those keys present
20
+ * in the record payload (create/update flows). Omit to return all non-excluded
21
+ * fields (view flow).
22
+ */
23
+ export declare function useResolvedRecordFields(dataSourceId: string | null | undefined, recordSlugs?: string[] | null): UseResolvedRecordFieldsResult;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { DocyAssistant } from './docy-assistant';
2
- export { type AssistantConfig, AssistantProvider, type AssistantUser, useAssistantConfig } from './lib/assistant-config';
2
+ export { type AssistantConfig, AssistantProvider, type AssistantUser, type DataSourceField, type DataSourceSchema, useAssistantConfig } from './lib/assistant-config';
3
3
  export { AssistantI18nProvider, useAssistantTranslation } from './i18n';
4
4
  export { AgentTriggerWidget, type AgentTriggerWidgetProps } from './components/agent-trigger-widget';
5
5
  export { type PromptFeatureFlags } from './components/agent-trigger-widget/agent-trigger-prompt';