This repository has been archived by the owner on Sep 16, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 74
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: field mapping and custom schema (#207)
* prisma migration to add field mapping schemas * seed hs note model (unverified) * seed hs note model (verified) * seed hs note model * transform note acc to schema mapping * (approach 2) transform note acc to schema field mapping * (approach 2) seed all note fields and fix single note structure * minor fix * common func to transform field mapping to model * disunify using field mapping * allow connections to override field mapping * support custom objects in schema; show custom fields as additional * add winston and morgan logger * Field mapping for contact; support custom field mapping to custom crm field * add field mapping config * common unify and disunify methods * seed contact field mapping * use lodash get to transform nested mappings * unify and disunify for contact * disunify based on account config * unify and disunify for company * unify and disunify for deal * unify and disunify for event * unify and disunify for lead * unify and disunify for task * unify and disunify for user * minor refactor * handle 2 level nesting and fix mapping * make target field optional; multi level nesting * fix * fix * fix obj merge * fix pipedrive get format * preprocess * preprocess unify and disunify * disunify postprocess * flatten before disunify * pipedrive fix contact create * minor fixes * fix pipedrive lead disunify * chore: add account id to morgan logs * chore: cleanup * chore: cleanup * chore: cleanup * feat: ui for field mapping (#242) * feat: processing ui * feat: immplememt sse and redis pubsub * feat: read sse data to render failed ui * minor changes * feat: api to fetch mappable details and crm object properties * feat: api to create connection field mapping * feat: add custom field mapped to connection schema * feat: reallly basic ui for std field mapping * feat: reallly basic ui for custom field mapping * feat: add styling * fix: fix add btn order * feat: check for t_id in sse msg; send private token for calling further apis * feat: save mappings on click * feat: fix ui * feat: show done screen * feat: mark form dirty if empty fields * feat: show done stage if config doesnt exist * chore: fix pr comments * chore: use temp tenant token for auth; ui fixes * chore: fix dropdown caret; redis timeout * chore: pubsub fix * chore: cleanup * chore: cleanup * chore: resolve conflicts * feat: add remove mapping btn and divider * fix: fix logger * chore: cleanup * chore: move endpoints to fern * update yarn.lock * fix issues * add hubspot create custom properties api --------- Co-authored-by: jatin <sandilya.jatin@gmail.com>
- Loading branch information
1 parent
ac18977
commit 94d20c6
Showing
71 changed files
with
4,994 additions
and
2,059 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -85,3 +85,4 @@ npm-debug.log* | |
!.github/**/*.yml | ||
!fern/**/*.yml | ||
revert-dev.js | ||
.yarn/install-state.gz |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
# yaml-language-server: $schema=https://raw.githubusercontent.com/fern-api/fern/main/fern.schema.json | ||
|
||
imports: | ||
errors: ../../common/errors.yml | ||
types: ../../common/types.yml | ||
|
||
types: | ||
MappableFieldType: | ||
properties: | ||
fieldName: string | ||
objectName: types.StandardObject | ||
FieldDetailsType: | ||
properties: | ||
fieldName: string | ||
fieldType: string | ||
fieldDescription: string | ||
FieldMappingType: | ||
properties: | ||
sourceFieldName: string | ||
targetFieldName: string | ||
object: string | ||
GetFieldMappingResponse: | ||
properties: | ||
canAddCustomMapping: boolean | ||
mappableFields: list<MappableFieldType> | ||
fieldList: unknown | ||
CreateFieldMappingRequestBody: | ||
properties: | ||
standardMappings: list<FieldMappingType> | ||
customMappings: list<FieldMappingType> | ||
CreateFieldMappingResponse: | ||
properties: | ||
status: types.ResponseStatus | ||
|
||
service: | ||
base-path: /crm/field-mapping | ||
auth: false | ||
headers: | ||
x-revert-api-token: | ||
type: optional<string> | ||
docs: Your official API key for accessing revert apis. | ||
x-revert-t-id: | ||
type: string | ||
docs: The unique customer id used when the customer linked their account. | ||
x-revert-t-token: | ||
type: optional<string> | ||
docs: The temp used to identify tenant. | ||
x-api-version: | ||
type: optional<string> | ||
docs: Optional Revert API version you're using. If missing we default to the latest version of the API. | ||
audiences: | ||
- external | ||
endpoints: | ||
getFieldMapping: | ||
docs: Get field mappings for a connection | ||
method: GET | ||
path: '' | ||
request: | ||
name: GetFieldMappingRequest | ||
response: GetFieldMappingResponse | ||
errors: | ||
- errors.UnAuthorizedError | ||
- errors.InternalServerError | ||
createFieldMapping: | ||
docs: Create field mappings for a connection | ||
method: POST | ||
path: '' | ||
request: | ||
name: CreateFieldMappingRequest | ||
body: CreateFieldMappingRequestBody | ||
response: CreateFieldMappingResponse | ||
errors: | ||
- errors.UnAuthorizedError | ||
- errors.InternalServerError | ||
- errors.NotFoundError |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
# yaml-language-server: $schema=https://raw.githubusercontent.com/fern-api/fern/main/fern.schema.json | ||
|
||
imports: | ||
errors: ../common/errors.yml | ||
types: ../common/types.yml | ||
|
||
types: | ||
FieldDetailsType: | ||
properties: | ||
fieldName: string | ||
fieldType: string | ||
fieldDescription: string | ||
FieldDetailsTypeRequest: | ||
extends: FieldDetailsType | ||
properties: | ||
groupName: string | ||
type: string | ||
SetObjectPropertiesRequest: FieldDetailsTypeRequest | ||
GetObjectPropertiesResponse: unknown | ||
SetObjectPropertiesResponse: unknown | ||
|
||
service: | ||
base-path: /crm/properties | ||
auth: false | ||
headers: | ||
x-revert-api-token: | ||
type: string | ||
docs: Your official API key for accessing revert apis. | ||
x-revert-t-id: | ||
type: string | ||
docs: The unique customer id used when the customer linked their account. | ||
x-api-version: | ||
type: optional<string> | ||
docs: Optional Revert API version you're using. If missing we default to the latest version of the API. | ||
audiences: | ||
- external | ||
endpoints: | ||
getObjectProperties: | ||
docs: Get object properties for connection | ||
method: GET | ||
path: /{objectName} | ||
path-parameters: | ||
objectName: types.StandardObject | ||
request: | ||
name: GetObjectPropertiesRequest | ||
response: GetObjectPropertiesResponse | ||
errors: | ||
- errors.UnAuthorizedError | ||
- errors.InternalServerError | ||
- errors.NotFoundError | ||
setCustomProperties: | ||
docs: Set custom properties on an object for a given connection | ||
method: POST | ||
path: /{objectName} | ||
path-parameters: | ||
objectName: types.StandardObject | ||
request: | ||
name: SetObjectCustomPropertiesRequest | ||
body: SetObjectPropertiesRequest | ||
response: SetObjectPropertiesResponse | ||
errors: | ||
- errors.UnAuthorizedError | ||
- errors.InternalServerError | ||
- errors.NotFoundError |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
import { Subtype } from "./typeHelpers"; | ||
|
||
export type AllAssociation = 'contactId' | 'companyId' | 'leadId' | 'dealId' | 'noteId'; | ||
|
||
export type CompanyAssociation = Subtype<AllAssociation, 'dealId'>; | ||
|
||
export type ContactAssociation = Subtype<AllAssociation, 'dealId'>; | ||
|
||
export type DealAssociation = Subtype<AllAssociation, 'contactId' | 'companyId'>; | ||
|
||
export type EventAssociation = Subtype<AllAssociation, 'dealId' | 'contactId'>; | ||
|
||
export type LeadAssociation = Subtype<AllAssociation, 'contactId' | 'companyId' | 'dealId'>; | ||
|
||
export type NoteAssociation = Subtype<AllAssociation, 'contactId' | 'companyId' | 'leadId' | 'dealId'>; | ||
|
||
export type TaskAssociation = Subtype<AllAssociation, 'dealId'>; | ||
|
||
export type UserAssociation = Subtype<AllAssociation, 'dealId'>; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
94d20c6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Successfully deployed to the following URLs:
revert-client – ./
revert-client-git-main-revertdev.vercel.app
revert-client-revertdev.vercel.app
app.revert.dev