Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18,211 changes: 7,920 additions & 10,291 deletions frontend-dev/pnpm-lock.yaml

Large diffs are not rendered by default.

12 changes: 10 additions & 2 deletions frontend-dev/src/Utils/StaticData/userField.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,38 +3,46 @@ export const userFields = [
{
key: 'user_email',
name: 'Email',
required: true,
required: true
},
{
key: 'user_login',
name: 'Username',
required: false
},
{
key: 'nickname',
name: 'Nickname',
required: false
},
{
key: 'display_name',
name: 'Display Name',
required: false
},
{
key: 'first_name',
name: 'First Name',
required: false
},
{
key: 'last_name',
name: 'Last Name',
required: false
},
{
key: 'user_pass',
name: 'Password',
required: false
},
{
key: 'user_url',
name: 'Website',
required: false
},
{
key: 'description',
name: 'Biographical Info',
},
required: false
}
]
Original file line number Diff line number Diff line change
Expand Up @@ -27,41 +27,54 @@ function KlaviyoIntegLayout({ klaviyoConf, setKlaviyoConf, formFields, loading,
return (
<div>
<b className="wdt-200 d-in-b mt-2">{__('List:', 'bit-integrations')}</b>
<select name="listId" value={klaviyoConf.listId} onChange={handleList} className="btcd-paper-inp w-5">
<select
name="listId"
value={klaviyoConf.listId}
onChange={handleList}
className="btcd-paper-inp w-5">
<option value="">{__('Select List', 'bit-integrations')}</option>
{
klaviyoConf?.default?.lists && klaviyoConf.default.lists.map(list => (
<option key={list.id} value={list.id}>
{list.attributes.name}
{klaviyoConf?.default?.lists &&
klaviyoConf.default.lists.map((list, key) => (
<option key={key} value={list?.id}>
{list?.attributes?.name}
</option>
))
}
))}
</select>
<button onClick={() => getAllLists(klaviyoConf, setKlaviyoConf, loading, setLoading)} className="icn-btn sh-sm ml-2 mr-2 tooltip" style={{ '--tooltip-txt': '"Refresh list"' }} type="button" disabled={loading.list}>&#x21BB;</button>
<button
onClick={() => getAllLists(klaviyoConf, setKlaviyoConf, loading, setLoading)}
className="icn-btn sh-sm ml-2 mr-2 tooltip"
style={{ '--tooltip-txt': '"Refresh list"' }}
type="button"
disabled={loading.list}>
&#x21BB;
</button>

{/* When user refresh the List then loader call */}

{loading.list && (
<Loader style={{
display: 'flex',
justifyContent: 'center',
alignItems: 'center',
height: 100,
transform: 'scale(0.7)',
}}
<Loader
style={{
display: 'flex',
justifyContent: 'center',
alignItems: 'center',
height: 100,
transform: 'scale(0.7)'
}}
/>
)}

{klaviyoConf?.listId && (
<div className="mt-5">
<b className="wdt-100">
{__('Field Map', 'bit-integrations')}
</b>
<b className="wdt-100">{__('Field Map', 'bit-integrations')}</b>

<div className="btcd-hr mt-2 mb-4" />
<div className="flx flx-around mt-2 mb-2 btcbi-field-map-label">
<div className="txt-dp"><b>{__('Form Fields', 'bit-integrations')}</b></div>
<div className="txt-dp"><b>{__('Klaviyo Fields', 'bit-integrations')}</b></div>
<div className="txt-dp">
<b>{__('Form Fields', 'bit-integrations')}</b>
</div>
<div className="txt-dp">
<b>{__('Klaviyo Fields', 'bit-integrations')}</b>
</div>
</div>
{klaviyoConf?.field_map.map((itm, i) => (
<KlaviyoFieldMap
Expand All @@ -73,7 +86,16 @@ function KlaviyoIntegLayout({ klaviyoConf, setKlaviyoConf, formFields, loading,
setKlaviyoConf={setKlaviyoConf}
/>
))}
<div className="txt-center btcbi-field-map-button mt-2"><button onClick={() => addFieldMap(klaviyoConf.field_map.length, klaviyoConf, setKlaviyoConf, false)} className="icn-btn sh-sm" type="button">+</button></div>
<div className="txt-center btcbi-field-map-button mt-2">
<button
onClick={() =>
addFieldMap(klaviyoConf.field_map.length, klaviyoConf, setKlaviyoConf, false)
}
className="icn-btn sh-sm"
type="button">
+
</button>
</div>
</div>
)}
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ import TableCheckBox from '../../Utilities/TableCheckBox'
import ConditionalLogic from '../../ConditionalLogic'
import CheckBox from '../../Utilities/CheckBox'
import Note from '../../Utilities/Note'
import RegistrationActions from './RegistrationActions'
import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'

export default function EditRegistration({ allIntegURL }) {
const navigate = useNavigate()
Expand All @@ -30,14 +33,11 @@ export default function EditRegistration({ allIntegURL }) {
const [flow, setFlow] = useRecoilState($newFlow)
const formFields = useRecoilValue($formFields)
const [userConf, setUserConf] = useRecoilState($actionConf)
const { registration } = tutorialLinks

useEffect(() => {
const tmpConf = { ...userConf }
bitsFetch({}, 'role/list', null, 'GET').then((res) => {
if (res?.success && res !== undefined) {
setRoles(Object.values(res?.data))
}
})

if (!tmpConf?.user_map?.[0]?.userField) {
tmpConf.user_map = userFields
.filter((fld) => fld.required)
Expand Down Expand Up @@ -103,13 +103,20 @@ export default function EditRegistration({ allIntegURL }) {
</ul>`

return (
<div>
<div style={{ width: 900 }}>
<SnackMsg snack={snack} setSnackbar={setSnackbar} />
{registration?.youTubeLink && (
<TutorialLink title="Registration" youTubeLink={registration?.youTubeLink} />
)}
{registration?.docLink && (
<TutorialLink title="Registration" docLink={registration?.docLink} />
)}
<br />
<br />

<SetEditIntegComponents entity={flow.triggered_entity} setSnackbar={setSnackbar} />
<div className="font-w-m mt-3">{__('Action type', 'bit-integrations')}</div>
<div>
<div className="flx mt-3">
<div className="wdt-200 d-in-b">{__('Action type', 'bit-integrations')}</div>
<CheckBox
radio
name="action_type"
Expand All @@ -127,6 +134,8 @@ export default function EditRegistration({ allIntegURL }) {
title={__('Updated User', 'bit-integrations')}
/>
</div>
<br />
<br />

<div>
<UserFieldMap
Expand All @@ -137,6 +146,7 @@ export default function EditRegistration({ allIntegURL }) {
roles={roles}
userFields={userFields}
/>
<br />
</div>
<div>
<UserMetaField
Expand All @@ -148,6 +158,19 @@ export default function EditRegistration({ allIntegURL }) {
<br />
</div>

<div className="mt-4">
<b className="wdt-100">{__('Utilities', 'bit-integrations')}</b>
</div>
<div className="btcd-hr mt-1" />
<RegistrationActions userConf={userConf} setUserConf={setUserConf} />

<br />
<Note
note={
userConf?.action_type === 'updated_user' ? userUpdateInstruction : userCreateInstruction
}
/>

{userConf?.condition && (
<>
<div className="flx">
Expand All @@ -170,12 +193,6 @@ export default function EditRegistration({ allIntegURL }) {
</>
)}

{userConf?.action_type === 'updated_user' ? (
<Note note={userUpdateInstruction} />
) : (
<Note note={userCreateInstruction} />
)}

<button
className="btn f-left btcd-btn-lg purple sh-sm flx"
type="button"
Expand Down
Loading