@fayz-ai/plugin-forms 0.1.1
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/dist/CustomFormsContext.d.ts +15 -0
- package/dist/CustomFormsContext.d.ts.map +1 -0
- package/dist/FormBuilder-4VKYVZAC.cjs +619 -0
- package/dist/FormBuilder-4VKYVZAC.cjs.map +1 -0
- package/dist/FormBuilder-KDANEL6Z.js +613 -0
- package/dist/FormBuilder-KDANEL6Z.js.map +1 -0
- package/dist/chunk-32I43T37.js +198 -0
- package/dist/chunk-32I43T37.js.map +1 -0
- package/dist/chunk-XLUULIVL.cjs +200 -0
- package/dist/chunk-XLUULIVL.cjs.map +1 -0
- package/dist/components/AddDocumentDropdown.d.ts +9 -0
- package/dist/components/AddDocumentDropdown.d.ts.map +1 -0
- package/dist/components/BuilderCanvas.d.ts +12 -0
- package/dist/components/BuilderCanvas.d.ts.map +1 -0
- package/dist/components/BuilderField.d.ts +11 -0
- package/dist/components/BuilderField.d.ts.map +1 -0
- package/dist/components/DocumentFormDialog.d.ts +17 -0
- package/dist/components/DocumentFormDialog.d.ts.map +1 -0
- package/dist/components/DocumentList.d.ts +14 -0
- package/dist/components/DocumentList.d.ts.map +1 -0
- package/dist/components/FieldConfigDialog.d.ts +12 -0
- package/dist/components/FieldConfigDialog.d.ts.map +1 -0
- package/dist/components/FieldPalette.d.ts +10 -0
- package/dist/components/FieldPalette.d.ts.map +1 -0
- package/dist/components/FormBuilder.d.ts +14 -0
- package/dist/components/FormBuilder.d.ts.map +1 -0
- package/dist/components/FormRenderer.d.ts +11 -0
- package/dist/components/FormRenderer.d.ts.map +1 -0
- package/dist/components/FormViewer.d.ts +12 -0
- package/dist/components/FormViewer.d.ts.map +1 -0
- package/dist/components/PersonDocumentsWidget.d.ts +17 -0
- package/dist/components/PersonDocumentsWidget.d.ts.map +1 -0
- package/dist/components/TemplateSelector.d.ts +11 -0
- package/dist/components/TemplateSelector.d.ts.map +1 -0
- package/dist/config.d.ts +23 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/data/index.d.ts +4 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/mock.d.ts +3 -0
- package/dist/data/mock.d.ts.map +1 -0
- package/dist/data/supabase.d.ts +3 -0
- package/dist/data/supabase.d.ts.map +1 -0
- package/dist/data/types.d.ts +17 -0
- package/dist/data/types.d.ts.map +1 -0
- package/dist/document-types.d.ts +25 -0
- package/dist/document-types.d.ts.map +1 -0
- package/dist/index.cjs +1612 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1605 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/tenant.d.ts +3 -0
- package/dist/lib/tenant.d.ts.map +1 -0
- package/dist/locales/en.d.ts +2 -0
- package/dist/locales/en.d.ts.map +1 -0
- package/dist/locales/index.d.ts +2 -0
- package/dist/locales/index.d.ts.map +1 -0
- package/dist/locales/pt-BR.d.ts +2 -0
- package/dist/locales/pt-BR.d.ts.map +1 -0
- package/dist/store.d.ts +29 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/types.d.ts +150 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/views/CustomFormsSettingsTab.d.ts +14 -0
- package/dist/views/CustomFormsSettingsTab.d.ts.map +1 -0
- package/dist/views/TemplateListView.d.ts +13 -0
- package/dist/views/TemplateListView.d.ts.map +1 -0
- package/package.json +57 -0
- package/src/CustomFormsContext.tsx +28 -0
- package/src/components/AddDocumentDropdown.tsx +92 -0
- package/src/components/BuilderCanvas.tsx +87 -0
- package/src/components/BuilderField.tsx +81 -0
- package/src/components/DocumentFormDialog.tsx +134 -0
- package/src/components/DocumentList.tsx +250 -0
- package/src/components/FieldConfigDialog.tsx +203 -0
- package/src/components/FieldPalette.tsx +81 -0
- package/src/components/FormBuilder.tsx +345 -0
- package/src/components/FormRenderer.tsx +256 -0
- package/src/components/FormViewer.tsx +84 -0
- package/src/components/PersonDocumentsWidget.tsx +220 -0
- package/src/components/TemplateSelector.tsx +91 -0
- package/src/config.ts +39 -0
- package/src/data/index.ts +3 -0
- package/src/data/mock.ts +193 -0
- package/src/data/supabase.ts +405 -0
- package/src/data/types.ts +33 -0
- package/src/document-types.ts +51 -0
- package/src/index.ts +195 -0
- package/src/lib/tenant.ts +5 -0
- package/src/locales/en.ts +75 -0
- package/src/locales/index.ts +7 -0
- package/src/locales/pt-BR.ts +75 -0
- package/src/migrations/001_frm_base.sql +138 -0
- package/src/migrations/002_document_archetype.sql +135 -0
- package/src/store.ts +167 -0
- package/src/types.ts +203 -0
- package/src/views/CustomFormsSettingsTab.tsx +115 -0
- package/src/views/TemplateListView.tsx +163 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { FormFieldDef, FormFieldType } from '../types';
|
|
3
|
+
interface BuilderCanvasProps {
|
|
4
|
+
fields: FormFieldDef[];
|
|
5
|
+
selectedFieldId: string | null;
|
|
6
|
+
onSelectField: (field: FormFieldDef) => void;
|
|
7
|
+
onRemoveField: (fieldId: string) => void;
|
|
8
|
+
draggingFieldType: FormFieldType | null;
|
|
9
|
+
}
|
|
10
|
+
export declare function BuilderCanvas({ fields, selectedFieldId, onSelectField, onRemoveField, draggingFieldType, }: BuilderCanvasProps): React.JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=BuilderCanvas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BuilderCanvas.d.ts","sourceRoot":"","sources":["../../src/components/BuilderCanvas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAI3D,UAAU,kBAAkB;IAC1B,MAAM,EAAE,YAAY,EAAE,CAAA;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,aAAa,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;IAC5C,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,iBAAiB,EAAE,aAAa,GAAG,IAAI,CAAA;CACxC;AAqBD,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,eAAe,EACf,aAAa,EACb,aAAa,EACb,iBAAiB,GAClB,EAAE,kBAAkB,qBA6CpB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { FormFieldDef } from '../types';
|
|
3
|
+
interface BuilderFieldProps {
|
|
4
|
+
field: FormFieldDef;
|
|
5
|
+
onSelect: (field: FormFieldDef) => void;
|
|
6
|
+
onRemove: (fieldId: string) => void;
|
|
7
|
+
isSelected: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function BuilderField({ field, onSelect, onRemove, isSelected }: BuilderFieldProps): React.JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=BuilderField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BuilderField.d.ts","sourceRoot":"","sources":["../../src/components/BuilderField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAG5C,UAAU,iBAAiB;IACzB,KAAK,EAAE,YAAY,CAAA;IACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;IACvC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,UAAU,EAAE,OAAO,CAAA;CACpB;AAED,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,iBAAiB,qBAiExF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CustomFormsDataProvider } from '../data/types';
|
|
3
|
+
import type { CustomFormsStore } from '../store';
|
|
4
|
+
import type { FormTemplate, FormDocument } from '../types';
|
|
5
|
+
interface DocumentFormDialogProps {
|
|
6
|
+
template: FormTemplate | null;
|
|
7
|
+
existingDocument?: FormDocument;
|
|
8
|
+
personId: string;
|
|
9
|
+
personName?: string;
|
|
10
|
+
provider: CustomFormsDataProvider;
|
|
11
|
+
store: CustomFormsStore;
|
|
12
|
+
onSaved: () => void;
|
|
13
|
+
onBack: () => void;
|
|
14
|
+
}
|
|
15
|
+
export declare function DocumentFormDialog({ template: initialTemplate, existingDocument, personId, personName, provider, store, onSaved, onBack, }: DocumentFormDialogProps): React.JSX.Element;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=DocumentFormDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocumentFormDialog.d.ts","sourceRoot":"","sources":["../../src/components/DocumentFormDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAI/D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAU1D,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAA;IAC7B,gBAAgB,CAAC,EAAE,YAAY,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,uBAAuB,CAAA;IACjC,KAAK,EAAE,gBAAgB,CAAA;IACvB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EAAE,eAAe,EACzB,gBAAgB,EAChB,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,KAAK,EACL,OAAO,EACP,MAAM,GACP,EAAE,uBAAuB,qBAiGzB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CustomFormsDataProvider } from '../data/types';
|
|
3
|
+
import type { CustomFormsStore } from '../store';
|
|
4
|
+
import type { FormDocument } from '../types';
|
|
5
|
+
interface DocumentListProps {
|
|
6
|
+
personId: string;
|
|
7
|
+
provider: CustomFormsDataProvider;
|
|
8
|
+
store: CustomFormsStore;
|
|
9
|
+
onView: (doc: FormDocument) => void;
|
|
10
|
+
onFileDrop?: (files: File[]) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare function DocumentList({ personId, provider, store, onView, onFileDrop }: DocumentListProps): React.JSX.Element;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=DocumentList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocumentList.d.ts","sourceRoot":"","sources":["../../src/components/DocumentList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAA;AAIvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,UAAU,CAAA;AAE5D,UAAU,iBAAiB;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,uBAAuB,CAAA;IACjC,KAAK,EAAE,gBAAgB,CAAA;IACvB,MAAM,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAA;IACnC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAA;CACrC;AA8CD,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,iBAAiB,qBA6LhG"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { FormFieldDef } from '../types';
|
|
3
|
+
interface FieldConfigDrawerProps {
|
|
4
|
+
field: FormFieldDef | null;
|
|
5
|
+
onSave: (updated: FormFieldDef) => void;
|
|
6
|
+
/** Live update without closing — used for visual changes like colSpan */
|
|
7
|
+
onUpdate?: (updated: FormFieldDef) => void;
|
|
8
|
+
onClose: () => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function FieldConfigDrawer({ field, onSave, onUpdate, onClose }: FieldConfigDrawerProps): React.JSX.Element | null;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=FieldConfigDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldConfigDialog.d.ts","sourceRoot":"","sources":["../../src/components/FieldConfigDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAalD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAY5C,UAAU,sBAAsB;IAC9B,KAAK,EAAE,YAAY,GAAG,IAAI,CAAA;IAC1B,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAA;IACvC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,IAAI,CAAA;IAC1C,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,wBAAgB,iBAAiB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,sBAAsB,4BAyK7F"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { FormFieldType } from '../types';
|
|
3
|
+
export interface FieldTypeItem {
|
|
4
|
+
type: FormFieldType;
|
|
5
|
+
icon: React.ElementType;
|
|
6
|
+
}
|
|
7
|
+
export declare const DEFAULT_COL_SPAN: Record<string, number>;
|
|
8
|
+
export declare const FIELD_TYPES: FieldTypeItem[];
|
|
9
|
+
export declare function FieldPalette(): React.JSX.Element;
|
|
10
|
+
//# sourceMappingURL=FieldPalette.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldPalette.d.ts","sourceRoot":"","sources":["../../src/components/FieldPalette.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,aAAa,CAAA;IACnB,IAAI,EAAE,KAAK,CAAC,WAAW,CAAA;CACxB;AAED,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAanD,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,aAAa,EAatC,CAAA;AAwBD,wBAAgB,YAAY,sBAa3B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CustomFormsStore } from '../store';
|
|
3
|
+
import type { CustomFormsDataProvider } from '../data/types';
|
|
4
|
+
import type { CustomFormsConfig } from '../config';
|
|
5
|
+
interface FormBuilderProps {
|
|
6
|
+
templateId?: string;
|
|
7
|
+
store: CustomFormsStore;
|
|
8
|
+
provider: CustomFormsDataProvider;
|
|
9
|
+
config: CustomFormsConfig;
|
|
10
|
+
onBack: () => void;
|
|
11
|
+
}
|
|
12
|
+
export declare function FormBuilder({ templateId, store, provider, config, onBack }: FormBuilderProps): React.JSX.Element;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=FormBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormBuilder.d.ts","sourceRoot":"","sources":["../../src/components/FormBuilder.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAA;AA0B/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAUlD,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,gBAAgB,CAAA;IACvB,QAAQ,EAAE,uBAAuB,CAAA;IACjC,MAAM,EAAE,iBAAiB,CAAA;IACzB,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB;AAED,wBAAgB,WAAW,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,gBAAgB,qBA0S5F"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { FormSchema } from '../types';
|
|
3
|
+
interface FormRendererProps {
|
|
4
|
+
schema: FormSchema;
|
|
5
|
+
data: Record<string, unknown>;
|
|
6
|
+
onChange: (data: Record<string, unknown>) => void;
|
|
7
|
+
readOnly?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function FormRenderer({ schema, data, onChange, readOnly }: FormRendererProps): React.JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=FormRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormRenderer.d.ts","sourceRoot":"","sources":["../../src/components/FormRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAW1C,OAAO,KAAK,EAAgB,UAAU,EAAE,MAAM,UAAU,CAAA;AAExD,UAAU,iBAAiB;IACzB,MAAM,EAAE,UAAU,CAAA;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAA;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAkND,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,iBAAiB,qBA2BnF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CustomFormsDataProvider } from '../data/types';
|
|
3
|
+
import type { FormDocument } from '../types';
|
|
4
|
+
interface FormViewerProps {
|
|
5
|
+
document: FormDocument;
|
|
6
|
+
provider: CustomFormsDataProvider;
|
|
7
|
+
onBack: () => void;
|
|
8
|
+
onEdit?: (doc: FormDocument) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function FormViewer({ document: doc, provider, onBack, onEdit }: FormViewerProps): React.JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=FormViewer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormViewer.d.ts","sourceRoot":"","sources":["../../src/components/FormViewer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAKlD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAgB,MAAM,UAAU,CAAA;AAG1D,UAAU,eAAe;IACvB,QAAQ,EAAE,YAAY,CAAA;IACtB,QAAQ,EAAE,uBAAuB,CAAA;IACjC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAA;CACrC;AASD,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,eAAe,qBA4DtF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CustomFormsConfig } from '../config';
|
|
3
|
+
import type { CustomFormsDataProvider } from '../data/types';
|
|
4
|
+
import type { CustomFormsStore } from '../store';
|
|
5
|
+
interface PersonDocumentsWidgetProps {
|
|
6
|
+
item: {
|
|
7
|
+
id: string;
|
|
8
|
+
name?: string;
|
|
9
|
+
[key: string]: any;
|
|
10
|
+
};
|
|
11
|
+
config: CustomFormsConfig;
|
|
12
|
+
provider: CustomFormsDataProvider;
|
|
13
|
+
store: CustomFormsStore;
|
|
14
|
+
}
|
|
15
|
+
export declare function PersonDocumentsWidget({ item, config, provider, store }: PersonDocumentsWidgetProps): React.JSX.Element;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=PersonDocumentsWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PersonDocumentsWidget.d.ts","sourceRoot":"","sources":["../../src/components/PersonDocumentsWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAA;AAI5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAQhD,UAAU,0BAA0B;IAClC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAA;IACvD,MAAM,EAAE,iBAAiB,CAAA;IACzB,QAAQ,EAAE,uBAAuB,CAAA;IACjC,KAAK,EAAE,gBAAgB,CAAA;CACxB;AAQD,wBAAgB,qBAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,0BAA0B,qBAmJlG"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { CustomFormsDataProvider } from '../data/types';
|
|
3
|
+
import type { FormTemplate } from '../types';
|
|
4
|
+
interface TemplateSelectorProps {
|
|
5
|
+
provider: CustomFormsDataProvider;
|
|
6
|
+
onSelect: (template: FormTemplate) => void;
|
|
7
|
+
onClose: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare function TemplateSelector({ provider, onSelect, onClose }: TemplateSelectorProps): React.JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=TemplateSelector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TemplateSelector.d.ts","sourceRoot":"","sources":["../../src/components/TemplateSelector.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAKlD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE5C,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,uBAAuB,CAAA;IACjC,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAA;IAC1C,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,qBAAqB,qBA4EtF"}
|
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { PluginScope, VerticalId } from '@fayz-ai/core';
|
|
2
|
+
import type { CustomFormsDataProvider } from './data/types';
|
|
3
|
+
export interface CustomFormsPluginOptions {
|
|
4
|
+
scope?: PluginScope;
|
|
5
|
+
verticalId?: VerticalId;
|
|
6
|
+
dataProvider?: CustomFormsDataProvider;
|
|
7
|
+
navSection?: 'main' | 'secondary' | 'settings';
|
|
8
|
+
navPosition?: number;
|
|
9
|
+
labels?: Partial<CustomFormsLabels>;
|
|
10
|
+
}
|
|
11
|
+
export interface CustomFormsLabels {
|
|
12
|
+
pageTitle: string;
|
|
13
|
+
settingsLabel: string;
|
|
14
|
+
templates: string;
|
|
15
|
+
documents: string;
|
|
16
|
+
newTemplate: string;
|
|
17
|
+
addDocument: string;
|
|
18
|
+
}
|
|
19
|
+
export interface CustomFormsConfig {
|
|
20
|
+
labels: CustomFormsLabels;
|
|
21
|
+
}
|
|
22
|
+
export declare function resolveConfig(options?: CustomFormsPluginOptions): CustomFormsConfig;
|
|
23
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AAE3D,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,YAAY,CAAC,EAAE,uBAAuB,CAAA;IACtC,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,UAAU,CAAA;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,iBAAiB,CAAA;CAC1B;AAWD,wBAAgB,aAAa,CAAC,OAAO,CAAC,EAAE,wBAAwB,GAAG,iBAAiB,CAInF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAA;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/data/mock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAsBtD,wBAAgB,uBAAuB,IAAI,uBAAuB,CA0KjE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../src/data/supabase.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAgGtD,wBAAgB,2BAA2B,IAAI,uBAAuB,CAmTrE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { FormTemplate, FormDocument, DocumentFile, TemplateQuery, DocumentQuery, PaginatedResult, CreateTemplateInput, UpdateTemplateInput, CreateDocumentInput, UpdateDocumentInput } from '../types';
|
|
2
|
+
export interface CustomFormsDataProvider {
|
|
3
|
+
getTemplates(query: TemplateQuery): Promise<PaginatedResult<FormTemplate>>;
|
|
4
|
+
getTemplateById(id: string): Promise<FormTemplate | null>;
|
|
5
|
+
createTemplate(input: CreateTemplateInput): Promise<FormTemplate>;
|
|
6
|
+
updateTemplate(id: string, input: UpdateTemplateInput): Promise<FormTemplate>;
|
|
7
|
+
deleteTemplate(id: string): Promise<void>;
|
|
8
|
+
getDocuments(query: DocumentQuery): Promise<PaginatedResult<FormDocument>>;
|
|
9
|
+
getDocumentById(id: string): Promise<FormDocument | null>;
|
|
10
|
+
createDocument(input: CreateDocumentInput): Promise<FormDocument>;
|
|
11
|
+
updateDocument(id: string, input: UpdateDocumentInput): Promise<FormDocument>;
|
|
12
|
+
deleteDocument(id: string): Promise<void>;
|
|
13
|
+
getDocumentFiles(documentId: string): Promise<DocumentFile[]>;
|
|
14
|
+
uploadFile(documentId: string, fieldKey: string, file: File): Promise<DocumentFile>;
|
|
15
|
+
deleteFile(fileId: string): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/data/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,UAAU,CAAA;AAEjB,MAAM,WAAW,uBAAuB;IAEtC,YAAY,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAA;IAC1E,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IACzD,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACjE,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC7E,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAGzC,YAAY,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAA;IAC1E,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAA;IACzD,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACjE,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC7E,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAGzC,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IAC7D,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IACnF,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC1C"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
export interface DocumentTypeOption {
|
|
3
|
+
/** Unique id, e.g. 'custom_forms:template:abc123' or 'core:image' */
|
|
4
|
+
id: string;
|
|
5
|
+
label: string;
|
|
6
|
+
icon: React.ElementType;
|
|
7
|
+
/** Group label for dropdown sections (e.g. 'Formulários', 'Arquivos') */
|
|
8
|
+
group: string;
|
|
9
|
+
/** Group sort order — lower groups appear first */
|
|
10
|
+
groupOrder?: number;
|
|
11
|
+
/** Sort order within group */
|
|
12
|
+
order?: number;
|
|
13
|
+
/** Description shown below label */
|
|
14
|
+
description?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface DocumentTypeProvider {
|
|
17
|
+
/** Unique provider id, e.g. 'custom_forms', 'core_files' */
|
|
18
|
+
id: string;
|
|
19
|
+
/** Returns available document types for a given person */
|
|
20
|
+
getTypes(personId: string): DocumentTypeOption[] | Promise<DocumentTypeOption[]>;
|
|
21
|
+
}
|
|
22
|
+
export declare function registerDocumentTypeProvider(provider: DocumentTypeProvider): void;
|
|
23
|
+
export declare function getDocumentTypeProviders(): DocumentTypeProvider[];
|
|
24
|
+
export declare function getAllDocumentTypes(personId: string): Promise<DocumentTypeOption[]>;
|
|
25
|
+
//# sourceMappingURL=document-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-types.d.ts","sourceRoot":"","sources":["../src/document-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,MAAM,WAAW,kBAAkB;IACjC,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAC,WAAW,CAAA;IACvB,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAA;IACb,mDAAmD;IACnD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAA;IACV,0DAA0D;IAC1D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,EAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAA;CACjF;AAMD,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,oBAAoB,QAG1E;AAED,wBAAgB,wBAAwB,IAAI,oBAAoB,EAAE,CAEjE;AAED,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAQzF"}
|