diff --git a/backend/Actions/PostCreation/PostCreationController.php b/backend/Actions/PostCreation/PostCreationController.php
index 9206ee36d..09619d45a 100644
--- a/backend/Actions/PostCreation/PostCreationController.php
+++ b/backend/Actions/PostCreation/PostCreationController.php
@@ -120,20 +120,30 @@ public static function mbFileMapping($metaboxMapField, $fieldValues, $metaboxFie
{
foreach ($metaboxMapField as $fieldPair) {
if (property_exists($fieldPair, 'metaboxFileUpload')) {
- if (!empty($fieldValues[$fieldPair->formField])) {
- $triggerValue = $fieldPair->formField;
- $actionValue = $fieldPair->metaboxFile;
- $fieldObject = $metaboxFields->{$actionValue};
+ if (empty($fieldPair->formField) || empty($fieldPair->metaboxFileUpload)) {
+ continue;
+ }
- if ($fieldObject['multiple'] == false) {
- static::uploadMBFile($postId, $fieldValues[$triggerValue], $fieldObject);
- } elseif ($fieldObject['multiple'] == true) {
- $attachMentId = Helper::multiFileMoveWpMedia($fieldValues[$triggerValue], $postId);
+ if (empty($fieldValues[$fieldPair->formField])) {
+ continue;
+ }
+
+ $triggerValue = $fieldPair->formField;
+ $actionValue = $fieldPair->metaboxFileUpload;
+ $fieldObject = isset($metaboxFields[$actionValue]) ? $metaboxFields[$actionValue] : null;
+
+ if (empty($fieldObject)) {
+ continue;
+ }
+
+ if (empty($fieldObject['multiple'])) {
+ static::uploadMBFile($postId, $fieldValues[$triggerValue], $fieldObject);
+ } else {
+ $attachMentId = Helper::multiFileMoveWpMedia($fieldValues[$triggerValue], $postId);
- if (!empty($attachMentId) && \is_array($attachMentId)) {
- foreach ($attachMentId as $attachemnt) {
- add_post_meta($postId, $fieldObject['field_name'], $attachemnt);
- }
+ if (!empty($attachMentId) && \is_array($attachMentId)) {
+ foreach ($attachMentId as $attachemnt) {
+ add_post_meta($postId, $fieldObject['field_name'], $attachemnt);
}
}
}
@@ -286,6 +296,10 @@ public function execute($integrationData, $fieldValues)
if (\in_array($fieldValues['bit-integrator%trigger_data%']['triggered_entity'], $triggers)) {
$fieldValues = Helper::splitStringToarray($fieldValues);
}
+ $actionType = isset($flowDetails->action_type) ? $flowDetails->action_type : 'createNewPost';
+ if ($actionType !== 'createNewPost') {
+ return $this->executeWordPressPostAction($flowDetails, $fieldValues, $actionType, $integrationData->id);
+ }
$postData = $this->postFieldData($flowDetails);
$postFieldMap = $flowDetails->post_map;
@@ -363,6 +377,49 @@ public function execute($integrationData, $fieldValues)
}
}
+ private function executeWordPressPostAction($flowDetails, $fieldValues, $actionType, $integrationId)
+ {
+ $defaultResponse = [
+ 'success' => false,
+ 'message' => wp_sprintf(
+ // translators: %s: Plugin name
+ __('%s plugin is not installed or activated', 'bit-integrations'),
+ 'Bit Integrations Pro'
+ ),
+ ];
+
+ $response = Hooks::apply(
+ Config::withPrefix($actionType),
+ $defaultResponse,
+ $this->buildRequestDataFromPostMap(isset($flowDetails->post_map) ? $flowDetails->post_map : [], $fieldValues),
+ );
+
+ $responseType = isset($response['success']) && $response['success'] ? 'success' : 'error';
+ LogHandler::save($integrationId, ['type' => 'WP Post Creation', 'type_name' => $actionType], $responseType, $response);
+
+ return true;
+ }
+
+ private function buildRequestDataFromPostMap($postMap, $fieldValues)
+ {
+ $dataFinal = [];
+
+ foreach ($postMap as $mapItem) {
+ if (empty($mapItem->formField) || empty($mapItem->postField)) {
+ continue;
+ }
+
+ $triggerValue = $mapItem->formField;
+ $actionValue = $mapItem->postField;
+
+ $dataFinal[$actionValue] = $triggerValue === 'custom' && isset($mapItem->customValue)
+ ? Common::replaceFieldWithValue($mapItem->customValue, $fieldValues)
+ : ($fieldValues[$triggerValue] ?? '');
+ }
+
+ return $dataFinal;
+ }
+
private static function setPostCategories($postId, $postCategories)
{
if (empty($postCategories)) {
diff --git a/backend/Actions/Registration/RegistrationController.php b/backend/Actions/Registration/RegistrationController.php
index f865e5995..98a3efe0c 100644
--- a/backend/Actions/Registration/RegistrationController.php
+++ b/backend/Actions/Registration/RegistrationController.php
@@ -2,7 +2,9 @@
namespace BitApps\Integrations\Actions\Registration;
+use BitApps\Integrations\Config;
use BitApps\Integrations\Core\Util\Common;
+use BitApps\Integrations\Core\Util\Hooks;
use BitApps\Integrations\Flow\Flow;
use BitApps\Integrations\Log\LogHandler;
@@ -46,6 +48,14 @@ public function createUser($userData, $flowDetails, $fieldValues)
public function execute($integrationData, $fieldValues)
{
$flowDetails = $integrationData->flow_details;
+ $actionType = isset($flowDetails->action_type) ? $flowDetails->action_type : 'new_user';
+
+ if (!\in_array($actionType, ['new_user', 'updated_user'], true)) {
+ $this->executeWordPressUserAction($flowDetails, $fieldValues, $actionType);
+
+ return;
+ }
+
$userFieldMap = $flowDetails->user_map;
$specialTagValue = Flow::specialTagMappingValue($userFieldMap);
@@ -57,13 +67,54 @@ public function execute($integrationData, $fieldValues)
$userData['role'] = $flowDetails->user_role;
}
- if (isset($flowDetails->action_type) && $flowDetails->action_type == 'updated_user') {
+ if ($actionType === 'updated_user') {
$this->updateUser($userData, $flowDetails, $updatedvalues);
- } elseif (isset($flowDetails->action_type) && $flowDetails->action_type == 'new_user') {
+ } else {
$this->createUser($userData, $flowDetails, $updatedvalues);
}
}
+ private function executeWordPressUserAction($flowDetails, $fieldValues, $actionType)
+ {
+ $defaultResponse = [
+ 'success' => false,
+ 'message' => wp_sprintf(
+ // translators: %s: Plugin name
+ __('%s plugin is not installed or activated', 'bit-integrations'),
+ 'Bit Integrations Pro'
+ ),
+ ];
+
+ $response = Hooks::apply(
+ Config::withPrefix($actionType),
+ $defaultResponse,
+ $this->buildRequestDataFromUserMap(isset($flowDetails->user_map) ? $flowDetails->user_map : [], $fieldValues),
+ );
+
+ $responseType = isset($response['success']) && $response['success'] ? 'success' : 'error';
+ LogHandler::save($this->_integrationID, ['type' => 'WP User Registration', 'type_name' => $actionType], $responseType, $response);
+ }
+
+ private function buildRequestDataFromUserMap($userMap, $fieldValues)
+ {
+ $dataFinal = [];
+
+ foreach ($userMap as $mapItem) {
+ if (empty($mapItem->formField) || empty($mapItem->userField)) {
+ continue;
+ }
+
+ $triggerValue = $mapItem->formField;
+ $actionValue = $mapItem->userField;
+
+ $dataFinal[$actionValue] = $triggerValue === 'custom' && isset($mapItem->customValue)
+ ? Common::replaceFieldWithValue($mapItem->customValue, $fieldValues)
+ : ($fieldValues[$triggerValue] ?? '');
+ }
+
+ return $dataFinal;
+ }
+
private function userFieldMapping($user_map, $fieldValues, $flowDetails)
{
$fieldData = [];
diff --git a/backend/Actions/WordPress/RecordApiHelper.php b/backend/Actions/WordPress/RecordApiHelper.php
new file mode 100644
index 000000000..f4ec7ac5a
--- /dev/null
+++ b/backend/Actions/WordPress/RecordApiHelper.php
@@ -0,0 +1,247 @@
+_integrationDetails = $integrationDetails;
+ $this->_integrationID = $integId;
+ }
+
+ public function execute($fieldValues, $fieldMap, $integrationDetails)
+ {
+ $fieldData = $this->generateReqDataFromFieldMap($fieldMap, $fieldValues);
+ $mainAction = isset($this->_integrationDetails->mainAction) ? $this->_integrationDetails->mainAction : '';
+
+ $defaultResponse = [
+ 'success' => false,
+ 'message' => wp_sprintf(
+ // translators: %s: Plugin name
+ __('%s plugin is not installed or activated', 'bit-integrations'),
+ 'Bit Integrations Pro'
+ ),
+ ];
+
+ if (strpos($mainAction, 'get') === 0) {
+ $response = [
+ 'success' => false,
+ 'message' => __('Get data actions are no longer available in WordPress integration.', 'bit-integrations'),
+ ];
+
+ LogHandler::save($this->_integrationID, ['type' => 'WordPress', 'type_name' => $mainAction], 'error', $response);
+
+ return $response;
+ }
+
+ switch ($mainAction) {
+ // === Post Types ===
+ case 'registerPostType':
+ $response = Hooks::apply(Config::withPrefix('wordpress_registerPostType'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'unregisterPostType':
+ $response = Hooks::apply(Config::withPrefix('wordpress_unregisterPostType'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'addPostTypeFeatures':
+ $response = Hooks::apply(Config::withPrefix('wordpress_addPostTypeFeatures'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ // === Post Tags ===
+ case 'createPostTag':
+ $response = Hooks::apply(Config::withPrefix('wordpress_createPostTag'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'updatePostTag':
+ $response = Hooks::apply(Config::withPrefix('wordpress_updatePostTag'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'deletePostTag':
+ $response = Hooks::apply(Config::withPrefix('wordpress_deletePostTag'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+ case 'addTaxonomyToPost':
+ $response = Hooks::apply(Config::withPrefix('wordpress_addTaxonomyToPost'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'removeTaxonomyFromPost':
+ $response = Hooks::apply(Config::withPrefix('wordpress_removeTaxonomyFromPost'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'addTagsToPost':
+ $response = Hooks::apply(Config::withPrefix('wordpress_addTagsToPost'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'removeTagsFromPost':
+ $response = Hooks::apply(Config::withPrefix('wordpress_removeTagsFromPost'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ // === Media ===
+ case 'addNewImage':
+ $response = Hooks::apply(Config::withPrefix('wordpress_addNewImage'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'deleteMedia':
+ $response = Hooks::apply(Config::withPrefix('wordpress_deleteMedia'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'renameMedia':
+ $response = Hooks::apply(Config::withPrefix('wordpress_renameMedia'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+ // === Taxonomies ===
+ case 'registerTaxonomy':
+ $response = Hooks::apply(Config::withPrefix('wordpress_registerTaxonomy'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'unregisterTaxonomy':
+ $response = Hooks::apply(Config::withPrefix('wordpress_unregisterTaxonomy'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ // === Terms ===
+ case 'createNewTerm':
+ $response = Hooks::apply(Config::withPrefix('wordpress_createNewTerm'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'updateTerm':
+ $response = Hooks::apply(Config::withPrefix('wordpress_updateTerm'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'termDelete':
+ $response = Hooks::apply(Config::withPrefix('wordpress_termDelete'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ // === Categories ===
+ case 'createCategory':
+ $response = Hooks::apply(Config::withPrefix('wordpress_createCategory'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'updateCategory':
+ $response = Hooks::apply(Config::withPrefix('wordpress_updateCategory'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'deleteCategory':
+ $response = Hooks::apply(Config::withPrefix('wordpress_deleteCategory'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'addCategoryToPost':
+ $response = Hooks::apply(Config::withPrefix('wordpress_addCategoryToPost'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+ // === Product Tags (WooCommerce) ===
+ case 'createProductTag':
+ $response = Hooks::apply(Config::withPrefix('wordpress_createProductTag'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'updateProductTag':
+ $response = Hooks::apply(Config::withPrefix('wordpress_updateProductTag'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'deleteProductTag':
+ $response = Hooks::apply(Config::withPrefix('wordpress_deleteProductTag'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+ // === Product Categories (WooCommerce) ===
+ case 'createProductCategory':
+ $response = Hooks::apply(Config::withPrefix('wordpress_createProductCategory'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'updateProductCategory':
+ $response = Hooks::apply(Config::withPrefix('wordpress_updateProductCategory'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'deleteProductCategory':
+ $response = Hooks::apply(Config::withPrefix('wordpress_deleteProductCategory'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+ // === Product Types (WooCommerce) ===
+ case 'createProductType':
+ $response = Hooks::apply(Config::withPrefix('wordpress_createProductType'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'updateProductType':
+ $response = Hooks::apply(Config::withPrefix('wordpress_updateProductType'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'deleteProductType':
+ $response = Hooks::apply(Config::withPrefix('wordpress_deleteProductType'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+ // === Plugin Management ===
+ case 'checkPluginActivationStatus':
+ $response = Hooks::apply(Config::withPrefix('wordpress_checkPluginActivationStatus'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ case 'activatePlugin':
+ $response = Hooks::apply(Config::withPrefix('wordpress_activatePlugin'), $defaultResponse, $fieldData, $integrationDetails);
+
+ break;
+
+ default:
+ $response = [
+ 'success' => false,
+ 'message' => __('Invalid action', 'bit-integrations'),
+ ];
+
+ break;
+ }
+
+ $responseType = isset($response['success']) && $response['success'] ? 'success' : 'error';
+ LogHandler::save($this->_integrationID, ['type' => 'WordPress', 'type_name' => $mainAction], $responseType, $response);
+
+ return $response;
+ }
+
+ private function generateReqDataFromFieldMap($fieldMap, $fieldValues)
+ {
+ $dataFinal = [];
+
+ foreach ($fieldMap as $item) {
+ $triggerValue = $item->formField;
+ $actionValue = $item->wordPressField;
+
+ $dataFinal[$actionValue] = $triggerValue === 'custom' && isset($item->customValue)
+ ? Common::replaceFieldWithValue($item->customValue, $fieldValues)
+ : ($fieldValues[$triggerValue] ?? '');
+ }
+
+ return $dataFinal;
+ }
+}
diff --git a/backend/Actions/WordPress/Routes.php b/backend/Actions/WordPress/Routes.php
new file mode 100644
index 000000000..71ec270e8
--- /dev/null
+++ b/backend/Actions/WordPress/Routes.php
@@ -0,0 +1,10 @@
+flow_details;
+ $integId = $integrationData->id;
+ $fieldMap = isset($integrationDetails->field_map) ? $integrationDetails->field_map : [];
+
+ $recordApiHelper = new RecordApiHelper($integrationDetails, $integId);
+
+ return $recordApiHelper->execute($fieldValues, $fieldMap, $integrationDetails);
+ }
+}
diff --git a/backend/Core/Util/AllTriggersName.php b/backend/Core/Util/AllTriggersName.php
index 951b8dc7c..467479f3a 100644
--- a/backend/Core/Util/AllTriggersName.php
+++ b/backend/Core/Util/AllTriggersName.php
@@ -144,6 +144,7 @@ public static function allTriggersName()
'WCMemberships' => ['name' => 'WooCommerce Memberships', 'isPro' => true, 'is_active' => false],
'WCSubscriptions' => ['name' => 'WooCommerce Subscriptions', 'isPro' => true, 'is_active' => false],
'Webhook' => ['name' => 'Webhook', 'isPro' => true, 'is_active' => false],
+ 'WordPress' => ['name' => 'WordPress', 'isPro' => true, 'is_active' => false],
'WeForms' => ['name' => 'WeForms', 'isPro' => true, 'is_active' => false],
'WeDocs' => ['name' => 'weDocs', 'isPro' => true, 'is_active' => false],
'WPCourseware' => ['name' => 'WP Courseware', 'isPro' => true, 'is_active' => false],
diff --git a/frontend/src/Utils/StaticData/webhookIntegrations.js b/frontend/src/Utils/StaticData/webhookIntegrations.js
index bd468f03a..cec3a619d 100644
--- a/frontend/src/Utils/StaticData/webhookIntegrations.js
+++ b/frontend/src/Utils/StaticData/webhookIntegrations.js
@@ -94,7 +94,10 @@ export const customFormIntegrations = [
'WeDocs',
'UserRegistrationMembership',
'UltimateAffiliatePro',
- "FluentPdfGenerator"
+ 'Registration',
+ 'Post',
+ 'WordPress',
+ 'FluentPdfGenerator'
]
export const actionHookIntegrations = ['ActionHook']
diff --git a/frontend/src/components/AllIntegrations/ACPT/ACPTAuthorization.jsx b/frontend/src/components/AllIntegrations/ACPT/ACPTAuthorization.jsx
index 0a3833bd1..b861b748a 100644
--- a/frontend/src/components/AllIntegrations/ACPT/ACPTAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/ACPT/ACPTAuthorization.jsx
@@ -2,7 +2,6 @@
/* eslint-disable no-unused-expressions */
import { useCallback, useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -47,7 +46,7 @@ const handleInput = useCallback(e => {
-
+
diff --git a/frontend/src/components/AllIntegrations/AcademyLms/AcademyLmsAuthorization.jsx b/frontend/src/components/AllIntegrations/AcademyLms/AcademyLmsAuthorization.jsx
index 4e674f68a..119bec35b 100644
--- a/frontend/src/components/AllIntegrations/AcademyLms/AcademyLmsAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/AcademyLms/AcademyLmsAuthorization.jsx
@@ -4,7 +4,6 @@ import { deepCopy } from '../../../Utils/Helpers'
import bitsFetch from '../../../Utils/bitsFetch'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function AcademyLmsAuthorization({
@@ -46,7 +45,7 @@ const [isAuthorized, setisAuthorized] = useState(false)
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/ActiveCampaign/ActiveCampaignAuthorization.jsx b/frontend/src/components/AllIntegrations/ActiveCampaign/ActiveCampaignAuthorization.jsx
index 098263665..b7a63552b 100644
--- a/frontend/src/components/AllIntegrations/ActiveCampaign/ActiveCampaignAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/ActiveCampaign/ActiveCampaignAuthorization.jsx
@@ -6,8 +6,6 @@ import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshActiveCampaingHeader, refreshActiveCampaingList } from './ActiveCampaignCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function ActiveCampaignAuthorization({
formID,
activeCampaingConf,
@@ -77,7 +75,7 @@ export default function ActiveCampaignAuthorization({
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Acumbamail/AcumbamailAuthorization.jsx b/frontend/src/components/AllIntegrations/Acumbamail/AcumbamailAuthorization.jsx
index 6a8791821..d825c8d60 100644
--- a/frontend/src/components/AllIntegrations/Acumbamail/AcumbamailAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Acumbamail/AcumbamailAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { fetchAllList, handleAuthorize } from './AcumbamailCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function AcumbamailAuthorization({
@@ -43,7 +42,7 @@ export default function AcumbamailAuthorization({
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/AdvancedFormIntegration/AdvancedFormIntegration.jsx b/frontend/src/components/AllIntegrations/AdvancedFormIntegration/AdvancedFormIntegration.jsx
index 0025ec7bb..8ee457890 100644
--- a/frontend/src/components/AllIntegrations/AdvancedFormIntegration/AdvancedFormIntegration.jsx
+++ b/frontend/src/components/AllIntegrations/AdvancedFormIntegration/AdvancedFormIntegration.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function AdvancedFormIntegration({ formFields, setFlow, flow, allIntegURL }) {
@@ -33,7 +32,7 @@ return (
-
+
{
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/AgiledCRM/AgiledAuthorization.jsx b/frontend/src/components/AllIntegrations/AgiledCRM/AgiledAuthorization.jsx
index 5f7929bb7..155904376 100644
--- a/frontend/src/components/AllIntegrations/AgiledCRM/AgiledAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/AgiledCRM/AgiledAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { agiledAuthentication } from './AgiledCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function AgiledAuthorization({
@@ -40,7 +39,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Airtable/AirtableAuthorization.jsx b/frontend/src/components/AllIntegrations/Airtable/AirtableAuthorization.jsx
index a19f5505e..8c20f61af 100644
--- a/frontend/src/components/AllIntegrations/Airtable/AirtableAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Airtable/AirtableAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { airtableAuthentication } from './AirtableCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function AirtableAuthorization({
@@ -41,7 +40,7 @@ export default function AirtableAuthorization({
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Albato/Albato.jsx b/frontend/src/components/AllIntegrations/Albato/Albato.jsx
index b452dd05b..5fac1ceef 100644
--- a/frontend/src/components/AllIntegrations/Albato/Albato.jsx
+++ b/frontend/src/components/AllIntegrations/Albato/Albato.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function Albato({ formFields, setFlow, flow, allIntegURL }) {
@@ -35,7 +34,7 @@ const [albato, setAlbato] = useState({
-
+
-
+
{
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/AutomatorWP/AutomatorWP.jsx b/frontend/src/components/AllIntegrations/AutomatorWP/AutomatorWP.jsx
index 5802e573c..2cb74b385 100644
--- a/frontend/src/components/AllIntegrations/AutomatorWP/AutomatorWP.jsx
+++ b/frontend/src/components/AllIntegrations/AutomatorWP/AutomatorWP.jsx
@@ -8,8 +8,6 @@ import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
function AutomatorWP({ formFields, setFlow, flow, allIntegURL }) {
const navigate = useNavigate()
const { formID } = useParams()
@@ -34,7 +32,7 @@ const [automatorWP, setAutomatorWP] = useState({
-
+
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/BenchMark/BenchMarkAuthorization.jsx b/frontend/src/components/AllIntegrations/BenchMark/BenchMarkAuthorization.jsx
index 2be98e62d..06c245288 100644
--- a/frontend/src/components/AllIntegrations/BenchMark/BenchMarkAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/BenchMark/BenchMarkAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshBenchMarkList, refreshBenchMarkHeader } from './BenchMarkCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function BenchMarkAuthorization({
@@ -76,7 +75,7 @@ const [isAuthorized, setisAuthorized] = useState(false)
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Bento/BentoAuthorization.jsx b/frontend/src/components/AllIntegrations/Bento/BentoAuthorization.jsx
index bf85717e8..cf700ef9d 100644
--- a/frontend/src/components/AllIntegrations/Bento/BentoAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Bento/BentoAuthorization.jsx
@@ -2,7 +2,6 @@
/* eslint-disable no-unused-expressions */
import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -42,7 +41,7 @@ const [error, setError] = useState({ publishable_key: '', secret_key: '' })
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/BitForm/BitFormAuthorization.jsx b/frontend/src/components/AllIntegrations/BitForm/BitFormAuthorization.jsx
index e722eecae..787590b30 100644
--- a/frontend/src/components/AllIntegrations/BitForm/BitFormAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/BitForm/BitFormAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { fetchAllForm, handleAuthorize } from './BitFormCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function BitFormAuthorization({
@@ -43,7 +42,7 @@ const [error, setError] = useState({ dataCenter: '', api_key: '' })
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/BuddyBoss/BuddyBossAuthorization.jsx b/frontend/src/components/AllIntegrations/BuddyBoss/BuddyBossAuthorization.jsx
index 6383aa401..06df0561b 100644
--- a/frontend/src/components/AllIntegrations/BuddyBoss/BuddyBossAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/BuddyBoss/BuddyBossAuthorization.jsx
@@ -5,8 +5,6 @@ import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function BuddyBossAuthorization({
formID,
buddyBossConf,
@@ -48,7 +46,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/CampaignMonitor/CampaignMonitorAuthorization.jsx b/frontend/src/components/AllIntegrations/CampaignMonitor/CampaignMonitorAuthorization.jsx
index 605ae69f9..14f333c60 100644
--- a/frontend/src/components/AllIntegrations/CampaignMonitor/CampaignMonitorAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/CampaignMonitor/CampaignMonitorAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshCampaignMonitorLists } from './CampaignMonitorCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function CampaignMonitorAuthorization({
@@ -94,7 +93,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/CapsuleCRM/CapsuleCRMAuthorization.jsx b/frontend/src/components/AllIntegrations/CapsuleCRM/CapsuleCRMAuthorization.jsx
index 29e7127e3..2e5b89112 100644
--- a/frontend/src/components/AllIntegrations/CapsuleCRM/CapsuleCRMAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/CapsuleCRM/CapsuleCRMAuthorization.jsx
@@ -5,8 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { capsulecrmAuthentication } from './CapsuleCRMCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function CapsuleCRMAuthorization({
capsulecrmConf,
setCapsuleCRMConf,
@@ -40,7 +38,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Clickup/ClickupAuthorization.jsx b/frontend/src/components/AllIntegrations/Clickup/ClickupAuthorization.jsx
index e94ab3bc8..1034646ca 100644
--- a/frontend/src/components/AllIntegrations/Clickup/ClickupAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Clickup/ClickupAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { clickupAuthentication } from './ClickupCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import Note from '../../Utilities/Note'
@@ -51,7 +50,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/ClinchPad/ClinchPadAuthorization.jsx b/frontend/src/components/AllIntegrations/ClinchPad/ClinchPadAuthorization.jsx
index 639d49539..ef8759988 100644
--- a/frontend/src/components/AllIntegrations/ClinchPad/ClinchPadAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/ClinchPad/ClinchPadAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { clinchPadAuthentication } from './ClinchPadCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function ClinchPadAuthorization({
@@ -40,7 +39,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/CompanyHub/CompanyHubAuthorization.jsx b/frontend/src/components/AllIntegrations/CompanyHub/CompanyHubAuthorization.jsx
index b0fcb7aa7..fc29dd636 100644
--- a/frontend/src/components/AllIntegrations/CompanyHub/CompanyHubAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/CompanyHub/CompanyHubAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { companyHubAuthentication } from './CompanyHubCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function CompanyHubAuthorization({
@@ -51,7 +50,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/ConstantContact/ConstantContactAuthorization.jsx b/frontend/src/components/AllIntegrations/ConstantContact/ConstantContactAuthorization.jsx
index 7983f8314..6bb5d4774 100644
--- a/frontend/src/components/AllIntegrations/ConstantContact/ConstantContactAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/ConstantContact/ConstantContactAuthorization.jsx
@@ -5,7 +5,6 @@ import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import CopyText from '../../Utilities/CopyText'
import { handleConstantContactAuthorize } from './ConstantContactCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import { $appConfigState } from '../../../GlobalStates'
import { useRecoilValue } from 'recoil'
@@ -83,7 +82,7 @@ const [error, setError] = useState({
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/ConvertKit/ConvertKitAuthorization.jsx b/frontend/src/components/AllIntegrations/ConvertKit/ConvertKitAuthorization.jsx
index 02967242e..bd0686eb2 100644
--- a/frontend/src/components/AllIntegrations/ConvertKit/ConvertKitAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/ConvertKit/ConvertKitAuthorization.jsx
@@ -5,7 +5,6 @@ import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshConvertKitForm } from './ConvertKitCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function ConvertKitAuthorization({
@@ -79,7 +78,7 @@ const [isAuthorized, setisAuthorized] = useState(false)
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/CopperCRM/CopperCRMAuthorization.jsx b/frontend/src/components/AllIntegrations/CopperCRM/CopperCRMAuthorization.jsx
index 0a93acfd1..e68db80da 100644
--- a/frontend/src/components/AllIntegrations/CopperCRM/CopperCRMAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/CopperCRM/CopperCRMAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { coppercrmAuthentication } from './CopperCRMCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function CopperCRMAuthorization({
@@ -49,7 +48,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/CreatorLms/CreatorLmsAuthorization.jsx b/frontend/src/components/AllIntegrations/CreatorLms/CreatorLmsAuthorization.jsx
index f39404b7e..df5d019cc 100644
--- a/frontend/src/components/AllIntegrations/CreatorLms/CreatorLmsAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/CreatorLms/CreatorLmsAuthorization.jsx
@@ -2,7 +2,6 @@ import { useState } from 'react'
import BackIcn from '../../../Icons/BackIcn'
import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -19,7 +18,6 @@ export default function CreatorLmsAuthorization({
}) {
const [isAuthorized, setIsAuthorized] = useState(false)
const [showAuthMsg, setShowAuthMsg] = useState(false)
- const { creatorLms } = tutorialLinks
const authorizeHandler = () => {
setIsLoading('auth')
@@ -49,10 +47,8 @@ export default function CreatorLmsAuthorization({
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
- {creatorLms?.youTubeLink && (
-
- )}
- {creatorLms?.docLink &&
}
+
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/CustomAction/CustomAction.jsx b/frontend/src/components/AllIntegrations/CustomAction/CustomAction.jsx
index c6502e036..ccd835dec 100644
--- a/frontend/src/components/AllIntegrations/CustomAction/CustomAction.jsx
+++ b/frontend/src/components/AllIntegrations/CustomAction/CustomAction.jsx
@@ -9,7 +9,6 @@ import CustomActionStepTwo from './CustomActionStepTwo'
import CustomFuncEditor from './CustomFuncEditor'
import { checkFunctionValidity } from './CustomFunctionHelper'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
const CustomAction = ({ formFields, setFlow, flow, allIntegURL }) => {
@@ -61,7 +60,7 @@ const CustomAction = ({ formFields, setFlow, flow, allIntegURL }) => {
-
+
diff --git a/frontend/src/components/AllIntegrations/CustomAction/EditCustomAction.jsx b/frontend/src/components/AllIntegrations/CustomAction/EditCustomAction.jsx
index 73061e068..3210f6d3c 100644
--- a/frontend/src/components/AllIntegrations/CustomAction/EditCustomAction.jsx
+++ b/frontend/src/components/AllIntegrations/CustomAction/EditCustomAction.jsx
@@ -14,8 +14,6 @@ import CustomFuncEditor from './CustomFuncEditor'
import { checkFunctionValidity } from './CustomFunctionHelper'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
function EditCustomAction({ allIntegURL }) {
const navigate = useNavigate()
const { formID } = useParams()
@@ -51,7 +49,7 @@ function EditCustomAction({ allIntegURL }) {
-
+
custom action
{
-
+
diff --git a/frontend/src/components/AllIntegrations/Demio/DemioAuthorization.jsx b/frontend/src/components/AllIntegrations/Demio/DemioAuthorization.jsx
index 943536ad4..47ef096f2 100644
--- a/frontend/src/components/AllIntegrations/Demio/DemioAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Demio/DemioAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { demioAuthentication, getAllEvents } from './DemioCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function DemioAuthorization({
@@ -53,7 +52,7 @@ const [error, setError] = useState({ api_key: '', api_secret: '' })
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/DirectIq/DirectIqAuthorization.jsx b/frontend/src/components/AllIntegrations/DirectIq/DirectIqAuthorization.jsx
index 0aea411e4..d137bdb07 100644
--- a/frontend/src/components/AllIntegrations/DirectIq/DirectIqAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/DirectIq/DirectIqAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshDirectIqList } from './DirectIqCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function DirectIqAuthorization({
@@ -78,7 +77,7 @@ const [isAuthorized, setisAuthorized] = useState(false)
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Discord/DiscordAuthorization.jsx b/frontend/src/components/AllIntegrations/Discord/DiscordAuthorization.jsx
index 62a266665..9baf6df51 100644
--- a/frontend/src/components/AllIntegrations/Discord/DiscordAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Discord/DiscordAuthorization.jsx
@@ -3,7 +3,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getAllServers, handleAuthorize } from './DiscordCommonFunc'
import Note from '../../Utilities/Note'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function DiscordAuthorization({
@@ -61,7 +60,7 @@ export default function DiscordAuthorization({
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Dokan/DokanAuthorization.jsx b/frontend/src/components/AllIntegrations/Dokan/DokanAuthorization.jsx
index b63102395..508b60391 100644
--- a/frontend/src/components/AllIntegrations/Dokan/DokanAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Dokan/DokanAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { dokanAuthentication } from './dokanCommonFunctions'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function DokanAuthorization({
@@ -40,7 +39,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Drip/DripAuthorization.jsx b/frontend/src/components/AllIntegrations/Drip/DripAuthorization.jsx
index df6fe73e0..4035be8ef 100644
--- a/frontend/src/components/AllIntegrations/Drip/DripAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Drip/DripAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { dripAuthentication } from './DripCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import toast from 'react-hot-toast'
@@ -56,7 +55,7 @@ const [isAuthorized, setisAuthorized] = useState(false)
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Dropbox/DropboxAuthorization.jsx b/frontend/src/components/AllIntegrations/Dropbox/DropboxAuthorization.jsx
index 4744709a8..d82f8bea4 100644
--- a/frontend/src/components/AllIntegrations/Dropbox/DropboxAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Dropbox/DropboxAuthorization.jsx
@@ -3,7 +3,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getAllDropboxFolders, handleAuthorize } from './DropboxCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function DropboxAuthorization({
@@ -56,7 +55,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/EditInteg.jsx b/frontend/src/components/AllIntegrations/EditInteg.jsx
index a87818398..3f8a3bf63 100644
--- a/frontend/src/components/AllIntegrations/EditInteg.jsx
+++ b/frontend/src/components/AllIntegrations/EditInteg.jsx
@@ -173,6 +173,7 @@ const EditWishlistMember = lazy(() => import('./WishlistMember/EditWishlistMembe
const EditCreatorLms = lazy(() => import('./CreatorLms/EditCreatorLms'))
const EditUltimateAffiliatePro = lazy(() => import('./UltimateAffiliatePro/EditUltimateAffiliatePro'))
const EditFluentCart = lazy(() => import('./FluentCart/EditFluentCart'))
+const EditWordPress = lazy(() => import('./WordPress/EditWordPress'))
const EditPeepSo = lazy(() => import('./PeepSo/EditPeepSo'))
const EditNinjaTables = lazy(() => import('./NinjaTables/EditNinjaTables'))
const EditWCAffiliate = lazy(() => import('./WCAffiliate/EditWCAffiliate'))
@@ -597,6 +598,8 @@ const IntegType = memo(({ allIntegURL, flow }) => {
return
case 'FluentCart':
return
+ case 'WordPress':
+ return
case 'PeepSo':
return
case 'Ninja Tables':
diff --git a/frontend/src/components/AllIntegrations/ElasticEmail/ElasticEmailAuthorization.jsx b/frontend/src/components/AllIntegrations/ElasticEmail/ElasticEmailAuthorization.jsx
index d26e69ded..977577ad2 100644
--- a/frontend/src/components/AllIntegrations/ElasticEmail/ElasticEmailAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/ElasticEmail/ElasticEmailAuthorization.jsx
@@ -7,8 +7,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getAllList } from './ElasticEmailCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function ElasticEmailAuthorization({
elasticEmailConf,
setElasticEmailConf,
@@ -60,7 +58,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/EmailOctopus/EmailOctopusAuthorization.jsx b/frontend/src/components/AllIntegrations/EmailOctopus/EmailOctopusAuthorization.jsx
index 33b628aea..8cb91ac75 100644
--- a/frontend/src/components/AllIntegrations/EmailOctopus/EmailOctopusAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/EmailOctopus/EmailOctopusAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { emailOctopusAuthentication } from './EmailOctopusCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function EmailOctopusAuthorization({
@@ -40,7 +39,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Encharge/EnchargeAuthorization.jsx b/frontend/src/components/AllIntegrations/Encharge/EnchargeAuthorization.jsx
index e9bb3fc8d..9a2f23beb 100644
--- a/frontend/src/components/AllIntegrations/Encharge/EnchargeAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Encharge/EnchargeAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { refreshEnchargeHeader } from './EnchargeCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function EnchargeAuthorization({
@@ -61,7 +60,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Fabman/FabmanAuthorization.jsx b/frontend/src/components/AllIntegrations/Fabman/FabmanAuthorization.jsx
index 4f575a832..5bc149082 100644
--- a/frontend/src/components/AllIntegrations/Fabman/FabmanAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Fabman/FabmanAuthorization.jsx
@@ -5,7 +5,6 @@ import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { fabmanAuthentication, fetchFabmanWorkspaces } from './FabmanCommonFunc'
import Note from '../../Utilities/Note'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
const STEP_ONE_STYLE = { width: 900, height: 'auto' }
@@ -41,7 +40,7 @@ export default function FabmanAuthorization({
return (
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/FlowMattic/FlowMattic.jsx b/frontend/src/components/AllIntegrations/FlowMattic/FlowMattic.jsx
index fe635d96b..5b63db90d 100644
--- a/frontend/src/components/AllIntegrations/FlowMattic/FlowMattic.jsx
+++ b/frontend/src/components/AllIntegrations/FlowMattic/FlowMattic.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function FlowMattic({ formFields, setFlow, flow, allIntegURL }) {
@@ -34,7 +33,7 @@ const [flowMattic, setFlowMattic] = useState({
-
+
{
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/FluentCRM/FluentCrmAuthorization.jsx b/frontend/src/components/AllIntegrations/FluentCRM/FluentCrmAuthorization.jsx
index ce899ce77..2eebec83f 100644
--- a/frontend/src/components/AllIntegrations/FluentCRM/FluentCrmAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/FluentCRM/FluentCrmAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import bitsFetch from '../../../Utils/bitsFetch'
import LoaderSm from '../../Loaders/LoaderSm'
import BackIcn from '../../../Icons/BackIcn'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function FluentCrmAuthorization({
@@ -55,7 +54,7 @@ const [isMounted, setIsMounted] = useState(true)
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/FluentCart/FluentCartAuthorization.jsx b/frontend/src/components/AllIntegrations/FluentCart/FluentCartAuthorization.jsx
index c02163691..8b1949073 100644
--- a/frontend/src/components/AllIntegrations/FluentCart/FluentCartAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/FluentCart/FluentCartAuthorization.jsx
@@ -2,7 +2,6 @@ import { useState } from 'react'
import BackIcn from '../../../Icons/BackIcn'
import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -46,7 +45,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/FluentSupport/FluentSupportAuthorization.jsx b/frontend/src/components/AllIntegrations/FluentSupport/FluentSupportAuthorization.jsx
index e97b681fb..65baf1b4b 100644
--- a/frontend/src/components/AllIntegrations/FluentSupport/FluentSupportAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/FluentSupport/FluentSupportAuthorization.jsx
@@ -2,7 +2,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getCustomFields, handleAuthorize } from './FluentSupportCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function FluentSupportAuthorization({
@@ -43,7 +42,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/FreshSales/FreshSalesAuthorization.jsx b/frontend/src/components/AllIntegrations/FreshSales/FreshSalesAuthorization.jsx
index b20d45537..dbb35ec97 100644
--- a/frontend/src/components/AllIntegrations/FreshSales/FreshSalesAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/FreshSales/FreshSalesAuthorization.jsx
@@ -1,6 +1,5 @@
/* eslint-disable no-unused-expressions */
import { useState } from 'react'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
@@ -58,7 +57,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Bundle Alias(Your Account URL):', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Freshdesk/FreshdeskAuthorization.jsx b/frontend/src/components/AllIntegrations/Freshdesk/FreshdeskAuthorization.jsx
index 85fe17a49..26c280cf3 100644
--- a/frontend/src/components/AllIntegrations/Freshdesk/FreshdeskAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Freshdesk/FreshdeskAuthorization.jsx
@@ -3,7 +3,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getAllTicketFields, handleAuthorize } from './FreshdeskCommonFunc'
import Note from '../../Utilities/Note'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function FreshdeskAuthorization({
@@ -78,7 +77,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/GamiPress/GamiPressAuthorization.jsx b/frontend/src/components/AllIntegrations/GamiPress/GamiPressAuthorization.jsx
index 5aade949d..4e18a15d2 100644
--- a/frontend/src/components/AllIntegrations/GamiPress/GamiPressAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/GamiPress/GamiPressAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GamiPressAuthorization({
@@ -47,7 +46,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/GetResponse/GetResponseAuthorization.jsx b/frontend/src/components/AllIntegrations/GetResponse/GetResponseAuthorization.jsx
index ae8ff215c..5faf845dd 100644
--- a/frontend/src/components/AllIntegrations/GetResponse/GetResponseAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/GetResponse/GetResponseAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { fetchCustomFields, getresponseAuthentication } from './GetResponseCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GetResponseAuthorization({
@@ -63,7 +62,7 @@ useEffect(() => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Getgist/GetgistAuthorization.jsx b/frontend/src/components/AllIntegrations/Getgist/GetgistAuthorization.jsx
index 5b7865506..1103b0190 100644
--- a/frontend/src/components/AllIntegrations/Getgist/GetgistAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Getgist/GetgistAuthorization.jsx
@@ -3,7 +3,6 @@ import BackIcn from '../../../Icons/BackIcn'
import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GetgistAuthorization({ getgistConf, setGetgistConf, step, setstep, isInfo }) {
@@ -52,7 +51,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/GiveWp/GiveWpAuthorization.jsx b/frontend/src/components/AllIntegrations/GiveWp/GiveWpAuthorization.jsx
index 0df7f4fd7..8d0bcd513 100644
--- a/frontend/src/components/AllIntegrations/GiveWp/GiveWpAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/GiveWp/GiveWpAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GiveWpAuthorization({
@@ -47,7 +46,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/GoogleCalendar/GoogleCalendarAuthorization.jsx b/frontend/src/components/AllIntegrations/GoogleCalendar/GoogleCalendarAuthorization.jsx
index 4bd950bf8..fc94c800d 100644
--- a/frontend/src/components/AllIntegrations/GoogleCalendar/GoogleCalendarAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/GoogleCalendar/GoogleCalendarAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { getAllGoogleCalendarLists, handleAuthorize } from './GoogleCalendarCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GoogleCalendarAuthorization({
@@ -46,7 +45,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/GoogleContacts/GoogleContactsAuthorization.jsx b/frontend/src/components/AllIntegrations/GoogleContacts/GoogleContactsAuthorization.jsx
index 7ca2f6bde..3bc654906 100644
--- a/frontend/src/components/AllIntegrations/GoogleContacts/GoogleContactsAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/GoogleContacts/GoogleContactsAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleAuthorize } from './GoogleContactsCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GoogleContactsAuthorization({
@@ -45,7 +44,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/GoogleDrive/GoogleDriveAuthorization.jsx b/frontend/src/components/AllIntegrations/GoogleDrive/GoogleDriveAuthorization.jsx
index 54be78e86..70485a19a 100644
--- a/frontend/src/components/AllIntegrations/GoogleDrive/GoogleDriveAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/GoogleDrive/GoogleDriveAuthorization.jsx
@@ -7,8 +7,6 @@ import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { getAllGoogleDriveFolders, handleAuthorize } from './GoogleDriveCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function GoogleDriveAuthorization({
flowID,
googleDriveConf,
@@ -46,7 +44,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/GoogleSheet/GoogleSheetAuthorization.jsx b/frontend/src/components/AllIntegrations/GoogleSheet/GoogleSheetAuthorization.jsx
index ed69d906a..ab875e064 100644
--- a/frontend/src/components/AllIntegrations/GoogleSheet/GoogleSheetAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/GoogleSheet/GoogleSheetAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleAuthorize, refreshSpreadsheets, tokenHelper } from './GoogleSheetCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import SelectAuthorizationType from '../../OneClickRadioComponents/SelectAuthorizationType'
import AuthorizationAccountList from '../../OneClickRadioComponents/AuthorizationAccountList'
@@ -95,7 +94,7 @@ const [authData, setAuthData] = useState([])
-
+
{selectedAuthType === 'Custom Authorization' && (
diff --git a/frontend/src/components/AllIntegrations/Gravitec/GravitecAuthorization.jsx b/frontend/src/components/AllIntegrations/Gravitec/GravitecAuthorization.jsx
index c6dbb2f6b..6167d3165 100644
--- a/frontend/src/components/AllIntegrations/Gravitec/GravitecAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Gravitec/GravitecAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { gravitecAuthentication } from './GravitecCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GravitecAuthorization({
@@ -50,7 +49,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Groundhogg/GroundhoggAuthorization.jsx b/frontend/src/components/AllIntegrations/Groundhogg/GroundhoggAuthorization.jsx
index 932d11ccf..0aaacb7bb 100644
--- a/frontend/src/components/AllIntegrations/Groundhogg/GroundhoggAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Groundhogg/GroundhoggAuthorization.jsx
@@ -5,7 +5,6 @@ import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import Note from '../../Utilities/Note'
import { handleAuthorize, fetchAllTags } from './GroundhoggCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function GroundhoggAuthorization({
@@ -51,7 +50,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/HighLevel/HighLevelAuthorization.jsx b/frontend/src/components/AllIntegrations/HighLevel/HighLevelAuthorization.jsx
index 4f50e424e..691771334 100644
--- a/frontend/src/components/AllIntegrations/HighLevel/HighLevelAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/HighLevel/HighLevelAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { highLevelAuthentication } from './HighLevelCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import toast from 'react-hot-toast'
import { useRecoilValue } from 'recoil'
@@ -48,7 +47,7 @@ const [isAuthorized, setisAuthorized] = useState(false)
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Hubspot/HubspotAuthorization.jsx b/frontend/src/components/AllIntegrations/Hubspot/HubspotAuthorization.jsx
index 1e82f6def..9bc42f64f 100644
--- a/frontend/src/components/AllIntegrations/Hubspot/HubspotAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Hubspot/HubspotAuthorization.jsx
@@ -7,7 +7,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { hubspotAuthorization } from './HubspotCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function HubspotAuthorization({
@@ -57,7 +56,7 @@ const handleInput = e => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/IFTTT/IFTTT.jsx b/frontend/src/components/AllIntegrations/IFTTT/IFTTT.jsx
index 2a9c38c2b..91e7458e6 100644
--- a/frontend/src/components/AllIntegrations/IFTTT/IFTTT.jsx
+++ b/frontend/src/components/AllIntegrations/IFTTT/IFTTT.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function IFTTT({ formFields, setFlow, flow, allIntegURL }) {
@@ -34,7 +33,7 @@ const [ifttt, setIfttt] = useState({
-
+
{
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/IntegInfo.jsx b/frontend/src/components/AllIntegrations/IntegInfo.jsx
index 0a797372c..0566f2956 100644
--- a/frontend/src/components/AllIntegrations/IntegInfo.jsx
+++ b/frontend/src/components/AllIntegrations/IntegInfo.jsx
@@ -176,6 +176,7 @@ const UltimateAffiliateProAuthorization = lazy(
() => import('./UltimateAffiliatePro/UltimateAffiliateProAuthorization')
)
const FluentCartAuthorization = lazy(() => import('./FluentCart/FluentCartAuthorization'))
+const WordPressAuthorization = lazy(() => import('./WordPress/WordPressAuthorization'))
const PeepSoAuthorization = lazy(() => import('./PeepSo/PeepSoAuthorization'))
const NinjaTablesAuthorization = lazy(() => import('./NinjaTables/NinjaTablesAuthorization'))
const WCAffiliateAuthorization = lazy(() => import('./WCAffiliate/WCAffiliateAuthorization'))
@@ -640,6 +641,8 @@ export default function IntegInfo() {
)
case 'FluentCart':
return
+ case 'WordPress':
+ return
case 'PeepSo':
return
case 'Ninja Tables':
diff --git a/frontend/src/components/AllIntegrations/Integrately/Integrately.jsx b/frontend/src/components/AllIntegrations/Integrately/Integrately.jsx
index 289d17ae3..59475b8ca 100644
--- a/frontend/src/components/AllIntegrations/Integrately/Integrately.jsx
+++ b/frontend/src/components/AllIntegrations/Integrately/Integrately.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function Integrately({ formFields, setFlow, flow, allIntegURL }) {
@@ -35,7 +34,7 @@ const [integrately, setIntegrately] = useState({
-
+
-
+
{__('Integration Name', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Integromat/Integromat.jsx b/frontend/src/components/AllIntegrations/Integromat/Integromat.jsx
index ffd1caf0a..2eba42906 100644
--- a/frontend/src/components/AllIntegrations/Integromat/Integromat.jsx
+++ b/frontend/src/components/AllIntegrations/Integromat/Integromat.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function Integromat({ formFields, setFlow, flow, allIntegURL }) {
@@ -35,7 +34,7 @@ const [integromat, setIntegromat] = useState({
-
+
{
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Keap/KeapAuthorization.jsx b/frontend/src/components/AllIntegrations/Keap/KeapAuthorization.jsx
index 936f48109..d56943908 100644
--- a/frontend/src/components/AllIntegrations/Keap/KeapAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Keap/KeapAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleAuthorize, refreshCustomFields } from './KeapCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function KeapAuthorization({
@@ -45,7 +44,7 @@ export default function KeapAuthorization({
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/KirimEmail/KirimEmailAuthorization.jsx b/frontend/src/components/AllIntegrations/KirimEmail/KirimEmailAuthorization.jsx
index 02da0323e..b8a4923d1 100644
--- a/frontend/src/components/AllIntegrations/KirimEmail/KirimEmailAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/KirimEmail/KirimEmailAuthorization.jsx
@@ -2,7 +2,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { handleAuthorize } from './KirimEmailCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function KirmilEmailAuthorization({
@@ -42,7 +41,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Klaviyo/KlaviyoAuthorization.jsx b/frontend/src/components/AllIntegrations/Klaviyo/KlaviyoAuthorization.jsx
index c9fec2dba..b9fb7713f 100644
--- a/frontend/src/components/AllIntegrations/Klaviyo/KlaviyoAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Klaviyo/KlaviyoAuthorization.jsx
@@ -3,7 +3,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { handleAuthorize } from './KlaviyoCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function KlaviyoAuthorization({
@@ -57,7 +56,7 @@ const handleInput = e => {
-
+
diff --git a/frontend/src/components/AllIntegrations/KonnectzIT/KonnectzIT.jsx b/frontend/src/components/AllIntegrations/KonnectzIT/KonnectzIT.jsx
index abe1c0a41..187e613e2 100644
--- a/frontend/src/components/AllIntegrations/KonnectzIT/KonnectzIT.jsx
+++ b/frontend/src/components/AllIntegrations/KonnectzIT/KonnectzIT.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function KonnectzIT({ formFields, setFlow, flow, allIntegURL }) {
@@ -35,7 +34,7 @@ const [konnectzIT, setKonnectzIT] = useState({
-
+
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/LearnDash/LearnDashAuthorization.jsx b/frontend/src/components/AllIntegrations/LearnDash/LearnDashAuthorization.jsx
index a69f4446d..f400fe4eb 100644
--- a/frontend/src/components/AllIntegrations/LearnDash/LearnDashAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/LearnDash/LearnDashAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function LearnDashAuthorization({
@@ -48,7 +47,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Lemlist/LemlistAuthorization.jsx b/frontend/src/components/AllIntegrations/Lemlist/LemlistAuthorization.jsx
index 02714e07f..eb6a09d8c 100644
--- a/frontend/src/components/AllIntegrations/Lemlist/LemlistAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Lemlist/LemlistAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshLemlistCampaign } from './LemlistCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function LemlistAuthorization({
@@ -91,7 +90,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/LifterLms/LifterLmsAuthorization.jsx b/frontend/src/components/AllIntegrations/LifterLms/LifterLmsAuthorization.jsx
index c06f80b13..4c700ce73 100644
--- a/frontend/src/components/AllIntegrations/LifterLms/LifterLmsAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/LifterLms/LifterLmsAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function LifterLmsAuthorization({
@@ -47,7 +46,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Line/LineAuthorization.jsx b/frontend/src/components/AllIntegrations/Line/LineAuthorization.jsx
index 1c3a4a683..f73e8d6c8 100644
--- a/frontend/src/components/AllIntegrations/Line/LineAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Line/LineAuthorization.jsx
@@ -3,7 +3,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { handleAuthorize } from './LineCommonFunc'
import Note from '../../Utilities/Note'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function LineAuthorization({
@@ -44,7 +43,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/LionDesk/LionDeskAuthorization.jsx b/frontend/src/components/AllIntegrations/LionDesk/LionDeskAuthorization.jsx
index 508ddc95e..34ac54b7f 100644
--- a/frontend/src/components/AllIntegrations/LionDesk/LionDeskAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/LionDesk/LionDeskAuthorization.jsx
@@ -9,8 +9,6 @@ import CopyText from '../../Utilities/CopyText'
import Note from '../../Utilities/Note'
import { handleAuthorize } from './LionDeskCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function LionDeskAuthorization({
lionDeskConf,
setLionDeskConf,
@@ -58,7 +56,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Livestorm/LivestormAuthorization.jsx b/frontend/src/components/AllIntegrations/Livestorm/LivestormAuthorization.jsx
index 75bd1fa0d..e528debd9 100644
--- a/frontend/src/components/AllIntegrations/Livestorm/LivestormAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Livestorm/LivestormAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { getAllEvents, livestormAuthentication } from './LivestormCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function LivestormAuthorization({
@@ -52,7 +51,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Mail/Mail.jsx b/frontend/src/components/AllIntegrations/Mail/Mail.jsx
index 113484ce3..4bd19f778 100644
--- a/frontend/src/components/AllIntegrations/Mail/Mail.jsx
+++ b/frontend/src/components/AllIntegrations/Mail/Mail.jsx
@@ -6,7 +6,6 @@ import { useRecoilState, useRecoilValue } from 'recoil'
import { $actionConf, $appConfigState, $formFields, $newFlow } from '../../../GlobalStates'
import { __ } from '../../../Utils/i18nwrap'
import { SmartTagField } from '../../../Utils/StaticData/SmartTagField'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import ConditionalLogic from '../../ConditionalLogic'
import LoaderSm from '../../Loaders/LoaderSm'
import DropDown from '../../Utilities/DropDown'
@@ -171,7 +170,7 @@ const btcbi = useRecoilValue($appConfigState)
return (
-
+
{__('Integration Name', 'bit-integration')}
{
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/MailChimp/MailChimpAuthorization.jsx b/frontend/src/components/AllIntegrations/MailChimp/MailChimpAuthorization.jsx
index 401458bf3..0ead95f79 100644
--- a/frontend/src/components/AllIntegrations/MailChimp/MailChimpAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MailChimp/MailChimpAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleMailChimpAuthorize, refreshAudience, refreshModules } from './MailChimpCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailChimpAuthorization({
@@ -42,7 +41,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/MailMint/MailMintAuthorization.jsx b/frontend/src/components/AllIntegrations/MailMint/MailMintAuthorization.jsx
index 1a145c454..569f7a64d 100644
--- a/frontend/src/components/AllIntegrations/MailMint/MailMintAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MailMint/MailMintAuthorization.jsx
@@ -5,7 +5,6 @@ import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getAllList, getAllTags, mailMintRefreshFields } from './MailMintCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailMintAuthorization({
@@ -51,7 +50,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/MailPoet/MailPoetAuthorization.jsx b/frontend/src/components/AllIntegrations/MailPoet/MailPoetAuthorization.jsx
index 691f0e497..2f91e5f4b 100644
--- a/frontend/src/components/AllIntegrations/MailPoet/MailPoetAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MailPoet/MailPoetAuthorization.jsx
@@ -3,7 +3,6 @@ import { __ } from '../../../Utils/i18nwrap'
import bitsFetch from '../../../Utils/bitsFetch'
import LoaderSm from '../../Loaders/LoaderSm'
import BackIcn from '../../../Icons/BackIcn'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailPoetAuthorization({
@@ -43,7 +42,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/MailRelay/MailRelayAuthorization.jsx b/frontend/src/components/AllIntegrations/MailRelay/MailRelayAuthorization.jsx
index 4fe85c025..a1f1711a1 100644
--- a/frontend/src/components/AllIntegrations/MailRelay/MailRelayAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MailRelay/MailRelayAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { mailRelayAuthentication } from './MailRelayCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailRelayAuthorization({
@@ -40,7 +39,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/MailerLite/MailerLiteAuthorization.jsx b/frontend/src/components/AllIntegrations/MailerLite/MailerLiteAuthorization.jsx
index 46cd780a2..fb5af28b0 100644
--- a/frontend/src/components/AllIntegrations/MailerLite/MailerLiteAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MailerLite/MailerLiteAuthorization.jsx
@@ -1,7 +1,6 @@
/* eslint-disable no-unused-expressions */
import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -57,7 +56,7 @@ const url =
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/MailerPress/MailerPressAuthorization.jsx b/frontend/src/components/AllIntegrations/MailerPress/MailerPressAuthorization.jsx
index c2d850bc8..7403142ec 100644
--- a/frontend/src/components/AllIntegrations/MailerPress/MailerPressAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MailerPress/MailerPressAuthorization.jsx
@@ -2,7 +2,6 @@ import { useState } from 'react'
import BackIcn from '../../../Icons/BackIcn'
import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -46,7 +45,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Mailercloud/MailercloudAuthorization.jsx b/frontend/src/components/AllIntegrations/Mailercloud/MailercloudAuthorization.jsx
index 855e0197d..9f0649ef6 100644
--- a/frontend/src/components/AllIntegrations/Mailercloud/MailercloudAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Mailercloud/MailercloudAuthorization.jsx
@@ -6,7 +6,6 @@ import Input from '../../Utilities/Input'
import Note from '../../Utilities/Note'
import StepPage from '../../Utilities/StepPage'
import { getAllLists, handleAuthorize, handleInput } from './MailercloudCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import { __ } from '../../../Utils/i18nwrap'
@@ -55,7 +54,7 @@ const nextPage = async () => {
return (
-
+
{/* Mailercloud Authorization */}
diff --git a/frontend/src/components/AllIntegrations/Mailify/MailifyAuthorization.jsx b/frontend/src/components/AllIntegrations/Mailify/MailifyAuthorization.jsx
index 55273b2ca..16575859a 100644
--- a/frontend/src/components/AllIntegrations/Mailify/MailifyAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Mailify/MailifyAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshMailifyList } from './MailifyCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailifyAuthorization({
@@ -100,7 +99,7 @@ const [isAuthorized, setisAuthorized] = useState(false)
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Mailjet/MailjetAuthorization.jsx b/frontend/src/components/AllIntegrations/Mailjet/MailjetAuthorization.jsx
index f2bf9cb19..593b8dd98 100644
--- a/frontend/src/components/AllIntegrations/Mailjet/MailjetAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Mailjet/MailjetAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { mailjetAuthentication } from './MailjetCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailjetAuthorization({
@@ -40,7 +39,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Mailster/MailsterAuthorization.jsx b/frontend/src/components/AllIntegrations/Mailster/MailsterAuthorization.jsx
index 70b340e8e..ae70c11c9 100644
--- a/frontend/src/components/AllIntegrations/Mailster/MailsterAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Mailster/MailsterAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { mailsterAuthentication } from './MailsterCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailsterAuthorization({
@@ -43,7 +42,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Mailup/MailupAuthorization.jsx b/frontend/src/components/AllIntegrations/Mailup/MailupAuthorization.jsx
index 4df8c25d4..41b57e298 100644
--- a/frontend/src/components/AllIntegrations/Mailup/MailupAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Mailup/MailupAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleMailupAuthorize, fetchAllList } from './MailupCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MailupAuthorization({
@@ -42,7 +41,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLms.jsx b/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLms.jsx
index 2994fa020..fb8967705 100644
--- a/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLms.jsx
+++ b/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLms.jsx
@@ -11,7 +11,6 @@ import IntegrationStepThree from '../IntegrationHelpers/IntegrationStepThree'
import { handleInput, checkMappedFields } from './MasterStudyLmsCommonFunc'
import MasterStudyLmsAuthorization from './MasterStudyLmsAuthorization'
import MasterStudyLmsIntegLayout from './MasterStudyLmsIntegLayout'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function MasterStudyLms({ formFields, setFlow, flow, allIntegURL, isInfo, edit }) {
diff --git a/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLmsAuthorization.jsx b/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLmsAuthorization.jsx
index 1248280ee..7892fab5c 100644
--- a/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLmsAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MasterStudyLms/MasterStudyLmsAuthorization.jsx
@@ -5,8 +5,6 @@ import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function MasterStudyLmsAuthorization({
formID,
msLmsConf,
@@ -47,7 +45,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Mautic/MauticAuthorization.jsx b/frontend/src/components/AllIntegrations/Mautic/MauticAuthorization.jsx
index e7ca87081..d52f291d2 100644
--- a/frontend/src/components/AllIntegrations/Mautic/MauticAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Mautic/MauticAuthorization.jsx
@@ -5,8 +5,6 @@ import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleMauticAuthorize, getAllFields } from './MauticCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function MauticAuthorization({
mauticConf,
setMauticConf,
@@ -41,7 +39,7 @@ export default function MauticAuthorization({
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Memberpress/MemberpressAuthorization.jsx b/frontend/src/components/AllIntegrations/Memberpress/MemberpressAuthorization.jsx
index 15ec26acb..dbe68e998 100644
--- a/frontend/src/components/AllIntegrations/Memberpress/MemberpressAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Memberpress/MemberpressAuthorization.jsx
@@ -5,7 +5,6 @@ import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getAllMemberShip, paymentGateway } from './MemberpressCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MemberpressAuthorization({
@@ -51,7 +50,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Moosend/MoosendAuthorization.jsx b/frontend/src/components/AllIntegrations/Moosend/MoosendAuthorization.jsx
index cbfc5436a..67316b7a2 100644
--- a/frontend/src/components/AllIntegrations/Moosend/MoosendAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Moosend/MoosendAuthorization.jsx
@@ -6,7 +6,6 @@ import Input from '../../Utilities/Input'
import Note from '../../Utilities/Note'
import StepPage from '../../Utilities/StepPage'
import { getAllLists, handleAuthorize, handleInput } from './MoosendCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import { __ } from '../../../Utils/i18nwrap'
@@ -50,7 +49,7 @@ function MoosendAuthorization({
return (
-
+
{/* Moosend Authorization */}
diff --git a/frontend/src/components/AllIntegrations/MoxieCRM/MoxieCRMAuthorization.jsx b/frontend/src/components/AllIntegrations/MoxieCRM/MoxieCRMAuthorization.jsx
index 439b1da09..18460e669 100644
--- a/frontend/src/components/AllIntegrations/MoxieCRM/MoxieCRMAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/MoxieCRM/MoxieCRMAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { moxiecrmAuthentication } from './MoxieCRMCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function MoxieCRMAuthorization({
@@ -50,7 +49,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/N8n/N8n.jsx b/frontend/src/components/AllIntegrations/N8n/N8n.jsx
index 856f61f23..4c1802acf 100644
--- a/frontend/src/components/AllIntegrations/N8n/N8n.jsx
+++ b/frontend/src/components/AllIntegrations/N8n/N8n.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function N8n({ formFields, setFlow, flow, allIntegURL }) {
@@ -35,7 +34,7 @@ const [n8n, setN8n] = useState({
-
+
import('./WishlistMember/WishlistMember'))
const CreatorLms = lazy(() => import('./CreatorLms/CreatorLms'))
const UltimateAffiliatePro = lazy(() => import('./UltimateAffiliatePro/UltimateAffiliatePro'))
const FluentCart = lazy(() => import('./FluentCart/FluentCart'))
+const WordPress = lazy(() => import('./WordPress/WordPress'))
const PeepSo = lazy(() => import('./PeepSo/PeepSo'))
const NinjaTables = lazy(() => import('./NinjaTables/NinjaTables'))
const WCAffiliate = lazy(() => import('./WCAffiliate/WCAffiliate'))
@@ -1679,6 +1680,15 @@ export default function NewInteg({ allIntegURL }) {
setFlow={setFlow}
/>
)
+ case 'WordPress':
+ return (
+
+ )
case 'PeepSo':
return (
{
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Nimble/NimbleAuthorization.jsx b/frontend/src/components/AllIntegrations/Nimble/NimbleAuthorization.jsx
index 7e544e86f..4ffda11f3 100644
--- a/frontend/src/components/AllIntegrations/Nimble/NimbleAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Nimble/NimbleAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { getAllFields, nimbleAuthentication } from './NimbleCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function NimbleAuthorization({
@@ -51,7 +50,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/NinjaTables/NinjaTablesAuthorization.jsx b/frontend/src/components/AllIntegrations/NinjaTables/NinjaTablesAuthorization.jsx
index 6051107f3..ea479e079 100644
--- a/frontend/src/components/AllIntegrations/NinjaTables/NinjaTablesAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/NinjaTables/NinjaTablesAuthorization.jsx
@@ -1,7 +1,6 @@
import { useState } from 'react'
import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
diff --git a/frontend/src/components/AllIntegrations/NotificationX/NotificationXAuthorization.jsx b/frontend/src/components/AllIntegrations/NotificationX/NotificationXAuthorization.jsx
index a3764a079..7213600f5 100644
--- a/frontend/src/components/AllIntegrations/NotificationX/NotificationXAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/NotificationX/NotificationXAuthorization.jsx
@@ -1,6 +1,5 @@
import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -28,7 +27,7 @@ const handleInput = e => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Notion/NotionAuthorization.jsx b/frontend/src/components/AllIntegrations/Notion/NotionAuthorization.jsx
index e6220e188..bf68b575e 100644
--- a/frontend/src/components/AllIntegrations/Notion/NotionAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Notion/NotionAuthorization.jsx
@@ -8,7 +8,6 @@ import Input from '../../Utilities/Input'
import Note from '../../Utilities/Note'
import StepPage from '../../Utilities/StepPage'
import { getAllDatabaseLists, handleAuthorize, handleInput } from './NotionCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import { __ } from '../../../Utils/i18nwrap'
@@ -51,7 +50,7 @@ const nextPage = async () => {
`
return (
-
+
{/* Notion Authorization */}
diff --git a/frontend/src/components/AllIntegrations/NutshellCRM/NutshellCRMAuthorization.jsx b/frontend/src/components/AllIntegrations/NutshellCRM/NutshellCRMAuthorization.jsx
index 1f1b1fafb..1893afe4f 100644
--- a/frontend/src/components/AllIntegrations/NutshellCRM/NutshellCRMAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/NutshellCRM/NutshellCRMAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { nutshellCRMAuthentication } from './NutshellCRMCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function NutshellCRMAuthorization({
@@ -52,7 +51,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/OmniSend/OmniSendAuthorization.jsx b/frontend/src/components/AllIntegrations/OmniSend/OmniSendAuthorization.jsx
index 4db277038..5dc9a1872 100644
--- a/frontend/src/components/AllIntegrations/OmniSend/OmniSendAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/OmniSend/OmniSendAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { handleOmniSendAuthorize } from './OmniSendCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function OmniSendAuthorization({
@@ -59,7 +58,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/OneDrive/OneDriveAuthorization.jsx b/frontend/src/components/AllIntegrations/OneDrive/OneDriveAuthorization.jsx
index af07d0488..1ec2843e9 100644
--- a/frontend/src/components/AllIntegrations/OneDrive/OneDriveAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/OneDrive/OneDriveAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { getAllOneDriveFolders, handleAuthorize } from './OneDriveCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function OneDriveAuthorization({
@@ -46,7 +45,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/OneHashCRM/OneHashCRMAuthorization.jsx b/frontend/src/components/AllIntegrations/OneHashCRM/OneHashCRMAuthorization.jsx
index ed592a6ba..6706c23ac 100644
--- a/frontend/src/components/AllIntegrations/OneHashCRM/OneHashCRMAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/OneHashCRM/OneHashCRMAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { oneHashCRMAuthentication } from './OneHashCRMCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function OneHashCRMAuthorization({
@@ -59,7 +58,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/PCloud/PCloudAuthorization.jsx b/frontend/src/components/AllIntegrations/PCloud/PCloudAuthorization.jsx
index 5aff8489a..de12b5aea 100644
--- a/frontend/src/components/AllIntegrations/PCloud/PCloudAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/PCloud/PCloudAuthorization.jsx
@@ -7,7 +7,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { getAllPCloudFolders, handleAuthorization } from './PCloudCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function PCloudAuthorization({
@@ -47,7 +46,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Pabbly/Pabbly.jsx b/frontend/src/components/AllIntegrations/Pabbly/Pabbly.jsx
index 3245b78a2..42823b915 100644
--- a/frontend/src/components/AllIntegrations/Pabbly/Pabbly.jsx
+++ b/frontend/src/components/AllIntegrations/Pabbly/Pabbly.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function Pabbly({ formFields, setFlow, flow, allIntegURL }) {
@@ -35,7 +34,7 @@ const [pabbly, setPabbly] = useState({
-
+
{
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/PerfexCRM/PerfexCRMAuthorization.jsx b/frontend/src/components/AllIntegrations/PerfexCRM/PerfexCRMAuthorization.jsx
index e5966be57..d16fd8f9c 100644
--- a/frontend/src/components/AllIntegrations/PerfexCRM/PerfexCRMAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/PerfexCRM/PerfexCRMAuthorization.jsx
@@ -7,8 +7,6 @@ import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { perfexCRMAuthentication } from './PerfexCRMCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function PerfexCRMAuthorization({
perfexCRMConf,
setPerfexCRMConf,
@@ -69,7 +67,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/PipeDrive/PipeDriveAuthorization.jsx b/frontend/src/components/AllIntegrations/PipeDrive/PipeDriveAuthorization.jsx
index 4dd2dc61e..9f3b0e7da 100644
--- a/frontend/src/components/AllIntegrations/PipeDrive/PipeDriveAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/PipeDrive/PipeDriveAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { handleAuthorize } from './PipeDriveCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function PipeDriveAuthorization({
@@ -55,7 +54,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Pods/Pods.jsx b/frontend/src/components/AllIntegrations/Pods/Pods.jsx
index 29b66a204..c6c66483a 100644
--- a/frontend/src/components/AllIntegrations/Pods/Pods.jsx
+++ b/frontend/src/components/AllIntegrations/Pods/Pods.jsx
@@ -11,7 +11,6 @@ import { postFields } from '../../../Utils/StaticData/postField'
import LoaderSm from '../../Loaders/LoaderSm'
import TableCheckBox from '../../Utilities/TableCheckBox'
import ConditionalLogic from '../../ConditionalLogic'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function Pods({ formFields, setFlow, flow, allIntegURL }) {
@@ -119,7 +118,7 @@ const [podsConf, setPodsConf] = useState({
return (
-
+
{__('Integration Name', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/PostCreation/Post.jsx b/frontend/src/components/AllIntegrations/PostCreation/Post.jsx
index 947c48f99..e54026d56 100644
--- a/frontend/src/components/AllIntegrations/PostCreation/Post.jsx
+++ b/frontend/src/components/AllIntegrations/PostCreation/Post.jsx
@@ -1,18 +1,20 @@
import { useEffect, useState } from 'react'
-import { useNavigate, useParams } from 'react-router'
+import { useNavigate } from 'react-router'
import { __ } from '../../../Utils/i18nwrap'
-// import { postFields } from '../../../Utils/StaticData/postField'
import Cooltip from '../../Utilities/Cooltip'
import SnackMsg from '../../Utilities/SnackMsg'
import Steps from '../../Utilities/Steps'
import CustomField from './CustomField'
-import { postFields } from '../../../Utils/StaticData/postField'
import {
addFieldMap,
checkMappedAcfFields,
checkMappedJEFields,
checkMappedMbFields,
checkMappedPostFields,
+ generatePostCreationFieldMap,
+ getPostCreationFieldsByAction,
+ isLegacyPostCreationAction,
+ postCreationExtraActions,
refreshPostCategories,
refreshPostTypes
} from './PostHelperFunction'
@@ -20,33 +22,33 @@ import FieldMap from './FieldMap'
import bitsFetch from '../../../Utils/bitsFetch'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import IntegrationStepThree from '../IntegrationHelpers/IntegrationStepThree'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import MultiSelect from 'react-multiple-select-dropdown-lite'
import 'react-multiple-select-dropdown-lite/dist/index.css'
import { useRecoilValue } from 'recoil'
import { $appConfigState } from '../../../GlobalStates'
import { ProFeatureTitle } from '../IntegrationHelpers/ActionProFeatureLabels'
+import { checkIsPro, getProLabel } from '../../Utilities/ProUtilHelpers'
function Post({ formFields, setFlow, flow, allIntegURL }) {
const [users, setUsers] = useState([])
const [postTypes, setPostTypes] = useState([])
const [postCategories, setPostCategories] = useState([])
const navigate = useNavigate()
- const { formID } = useParams()
const [isLoading, setIsLoading] = useState(false)
const [step, setstep] = useState(1)
const [snack, setSnackbar] = useState({ show: false })
const [acf, setAcf] = useState({ fields: [], files: [] })
const [mb, setMb] = useState({ fields: [], files: [] })
const [jeCPTMeta, setJeCPTMeta] = useState({ fields: [], files: [] })
-const btcbi = useRecoilValue($appConfigState)
+ const btcbi = useRecoilValue($appConfigState)
const { isPro } = btcbi
const [postConf, setPostConf] = useState({
name: 'WP Post Creation',
type: 'WP Post Creation',
- post_map: [{ post_author: 'logged_in_user' }],
+ action_type: 'createNewPost',
+ post_map: generatePostCreationFieldMap('createNewPost'),
acf_map: [{}],
acf_file_map: [{}],
metabox_map: [{}],
@@ -72,10 +74,14 @@ const btcbi = useRecoilValue($appConfigState)
const { data } = res
setPostTypes(data)
})
+
const newConf = { ...postConf }
- newConf.post_map = postFields
- .filter(fld => fld.required)
- .map(fl => ({ formField: '', postField: fl.key, required: fl.required }))
+ if (!newConf.action_type) {
+ newConf.action_type = 'createNewPost'
+ }
+ if (!newConf?.post_map?.[0]?.postField) {
+ newConf.post_map = generatePostCreationFieldMap(newConf.action_type)
+ }
setPostConf(newConf)
}, [])
@@ -116,11 +122,22 @@ const btcbi = useRecoilValue($appConfigState)
}
})
- // tmpData.metabox_map = postFields.filter(fld => fld.required).map(fl => ({ formField: '', postFormField: fl.key, required: fl.required }))
setPostConf(tmpData)
- // setLoad(false)
}
+ const setActionType = actionType => {
+ const nextAction = actionType || 'createNewPost'
+ setPostConf(prevConf => ({
+ ...prevConf,
+ action_type: nextAction,
+ post_map: generatePostCreationFieldMap(nextAction)
+ }))
+ setstep(1)
+ }
+
+ const isLegacyAction = isLegacyPostCreationAction(postConf?.action_type)
+ const selectedPostFields = getPostCreationFieldsByAction(postConf?.action_type || 'createNewPost')
+
const nextPage = stepNo => {
setTimeout(() => {
document.getElementById('btcd-settings-wrp').scrollTop = 0
@@ -130,16 +147,17 @@ const btcbi = useRecoilValue($appConfigState)
setSnackbar({ show: true, msg: __('Please map mandatory fields', 'bit-integrations') })
return
}
- if (!postConf.post_type) {
+
+ if (isLegacyAction && !postConf.post_type) {
setSnackbar({ show: true, msg: __("Post Type can't be empty", 'bit-integrations') })
return
}
- if (!postConf.post_status) {
+ if (isLegacyAction && !postConf.post_status) {
setSnackbar({ show: true, msg: __("Post Status can't be empty", 'bit-integrations') })
return
}
- if (stepNo === 3) {
+ if (isLegacyAction && stepNo === 3) {
if (!checkMappedAcfFields(postConf)) {
setSnackbar({ show: true, msg: __('Please map mandatory fields', 'bit-integrations') })
return
@@ -174,7 +192,7 @@ const btcbi = useRecoilValue($appConfigState)
return (
-
+
@@ -194,155 +212,176 @@ const btcbi = useRecoilValue($appConfigState)
placeholder={__('Integration Name...', 'bit-integrations')}
/>
-
-
{__('Post Type', 'bit-integrations')}
-
-
- {__(
- 'Select one of the defined WordPress post types Or custom post types for the post',
- 'bit-integrations'
- )}
-
-
-
+
+ {__('Action Type', 'bit-integrations')}
-
- getCustomFields(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-1">
-
- {__('Select Post Type', 'bit-integrations')}
+ setActionType(e.target.value)}>
+ {postCreationExtraActions.map(action => (
+
+ {checkIsPro(isPro, action.is_pro) ? action.label : getProLabel(action.label)}
- {postTypes?.map((postType, key) => (
-
- {postType?.title}
-
- ))}
-
- refreshPostTypes(postTypes, setPostTypes)}
- className="icn-btn sh-sm ml-2 mr-2 tooltip"
- style={{ '--tooltip-txt': `'${__('Refresh Post Types', 'bit-integrations')}'` }}
- type="button">
- ↻
-
-
+ ))}
+
-
-
{__('Post Categories', 'bit-integrations')}
-
-
- {__('Select one or multiple categories for the post', 'bit-integrations')}
-
+ {isLegacyAction && (
+ <>
+
+
{__('Post Type', 'bit-integrations')}
+
+
+ {__(
+ 'Select one of the defined WordPress post types Or custom post types for the post',
+ 'bit-integrations'
+ )}
+
+
+
+
+
+ getCustomFields(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-1">
+
+ {__('Select Post Type', 'bit-integrations')}
+
+ {postTypes?.map((postType, key) => (
+
+ {postType?.title}
+
+ ))}
+
+ refreshPostTypes(setPostTypes)}
+ className="icn-btn sh-sm ml-2 mr-2 tooltip"
+ style={{ '--tooltip-txt': `'${__('Refresh Post Types', 'bit-integrations')}'` }}
+ type="button">
+ ↻
+
-
-
-
- handleInput('post_categories', val)}
- />
- refreshPostCategories(postConf?.post_type, setPostCategories)}
- className="icn-btn sh-sm ml-2 mr-2 tooltip"
- style={{ '--tooltip-txt': `'${__('Refresh Post Categories', 'bit-integrations')}'` }}
- type="button">
- ↻
-
-
-
-
{__('Post Status', 'bit-integrations')}
-
-
- {__(
- 'Select the status for the post. If published status is selected and the post date is in the future, it will automatically be changed to scheduled',
- 'bit-integrations'
- )}
-
+
+
{__('Post Categories', 'bit-integrations')}
+
+
+ {__('Select one or multiple categories for the post', 'bit-integrations')}
+
+
+
+
+
+ handleInput('post_categories', val)}
+ />
+ refreshPostCategories(postConf?.post_type, setPostCategories)}
+ className="icn-btn sh-sm ml-2 mr-2 tooltip"
+ style={{ '--tooltip-txt': `'${__('Refresh Post Categories', 'bit-integrations')}'` }}
+ type="button">
+ ↻
+
-
-
- handleInput(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-2">
-
- {__('Select Status', 'bit-integrations')}
-
- {__('Publish', 'bit-integrations')}
- {__('Draft', 'bit-integrations')}
- {__('Auto-Draft', 'bit-integrations')}
- {__('Private', 'bit-integrations')}
- {__('Pending', 'bit-integrations')}
-
-
-
{__('Author', 'bit-integrations')}
-
-
- {('Select the user to be assigned to the post', 'bit-integrations')}
-
+
+
{__('Post Status', 'bit-integrations')}
+
+
+ {__(
+ 'Select the status for the post. If published status is selected and the post date is in the future, it will automatically be changed to scheduled',
+ 'bit-integrations'
+ )}
+
+
+
-
-
-
- handleInput(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-2">
-
- {__('Select Author', 'bit-integrations')}
-
- {__('Logged In User', 'bit-integrations')}
- {users?.map((user, key) => (
-
- {user.display_name}
+ handleInput(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-2">
+
+ {__('Select Status', 'bit-integrations')}
- ))}
-
-
-
-
- {__('Comment Status', 'bit-integrations')}
-
- handleInput(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-2">
-
- {__('Select Status', 'bit-integrations')}
-
- {__('Open', 'bit-integrations')}
- {__('Closed', 'bit-integrations')}
-
+ {__('Publish', 'bit-integrations')}
+ {__('Draft', 'bit-integrations')}
+ {__('Auto-Draft', 'bit-integrations')}
+ {__('Private', 'bit-integrations')}
+ {__('Pending', 'bit-integrations')}
+
+
+
+
{__('Author', 'bit-integrations')}
+
+
+ {__('Select the user to be assigned to the post', 'bit-integrations')}
+
+
+
+
+
+ handleInput(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-2">
+
+ {__('Select Author', 'bit-integrations')}
+
+ {__('Logged In User', 'bit-integrations')}
+ {users?.map((user, key) => (
+
+ {user.display_name}
+
+ ))}
+
+
-
-
-
-
-
-
-
- {__('Use commas to separate multiple tags. Example: tag1, tag2, tag3', 'bit-integrations')}
-
+
+ {__('Comment Status', 'bit-integrations')}
+
+
handleInput(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-2">
+
+ {__('Select Status', 'bit-integrations')}
+
+ {__('Open', 'bit-integrations')}
+ {__('Closed', 'bit-integrations')}
+
+
+
+
+
+
+
+
+
+ {__(
+ 'Use commas to separate multiple tags. Example: tag1, tag2, tag3',
+ 'bit-integrations'
+ )}
+
+
+
-
-
- handleInput(e.target.name, e.target.value)}
- name="post_tags"
- value={postConf.post_tags}
- type="text"
- placeholder={__('Add Post Tags...', 'bit-integrations')}
- disabled={!isPro}
- />
+ handleInput(e.target.name, e.target.value)}
+ name="post_tags"
+ value={postConf.post_tags}
+ type="text"
+ placeholder={__('Add Post Tags...', 'bit-integrations')}
+ disabled={!isPro}
+ />
+ >
+ )}
@@ -368,13 +407,15 @@ const btcbi = useRecoilValue($appConfigState)
formFields={formFields}
postConf={postConf}
setPostConf={setPostConf}
- customFields={postFields}
+ customFields={selectedPostFields}
/>
))}
addFieldMap('post_map', postConf.post_map.length, postConf, setPostConf)}
+ onClick={() =>
+ addFieldMap('post_map', postConf?.post_map?.length || 0, postConf, setPostConf)
+ }
className="icn-btn sh-sm"
type="button">
+
@@ -382,38 +423,36 @@ const btcbi = useRecoilValue($appConfigState)
nextPage(2)}
+ onClick={() => nextPage(isLegacyAction ? 2 : 3)}
className="btn f-right btcd-btn-lg purple sh-sm flx"
type="button">
{__('Next', 'bit-integrations')}
-
-
handleInput(e, postConf, setPostConf, formID, setIsLoading, setSnackbar)}
- postConf={postConf}
- setPostConf={setPostConf}
- isLoading={isLoading}
- setIsLoading={setIsLoading}
- setSnackbar={setSnackbar}
- acfFields={acf}
- mbFields={mb}
- jeCPTFields={jeCPTMeta}
- />
- nextPage(3)}
- className="btn f-right btcd-btn-lg purple sh-sm flx"
- type="button">
- {__('Next', 'bit-integrations')}
-
-
-
+ {isLegacyAction && (
+
+
+
+
nextPage(3)}
+ className="btn f-right btcd-btn-lg purple sh-sm flx"
+ type="button">
+ {__('Next', 'bit-integrations')}
+
+
+
+ )}
{
const tmpData = { ...postConf }
tmpData[typ] = val
@@ -66,15 +70,22 @@ function Post({ allIntegURL }) {
setPostTypes(data)
})
- refreshPostCategories(postConf?.post_type, setPostCategories)
+ if (!tmpData.action_type) {
+ tmpData.action_type = 'createNewPost'
+ }
+ if (!tmpData?.post_map?.[0]?.postField) {
+ tmpData.post_map = generatePostCreationFieldMap(tmpData.action_type)
+ }
+
+ refreshPostCategories(tmpData?.post_type, setPostCategories)
- bitsFetch({ post_type: postConf?.post_type }, 'customfield/list').then(res => {
+ bitsFetch({ post_type: tmpData?.post_type }, 'customfield/list').then(res => {
const { data } = res
setAcf({ fields: data.acf_fields, files: data.acf_files })
setMb({ fields: data.mb_fields, files: data.mb_files })
setJeCPTMeta({ fields: data.je_cpt_fields, files: data.je_cpt_files })
})
- // setLoad(false)
+
setPostConf(tmpData)
}, [])
@@ -114,23 +125,34 @@ function Post({ allIntegURL }) {
}
})
setPostConf(tmpData)
- // setLoad(false)
}
+ const setActionType = actionType => {
+ const nextAction = actionType || 'createNewPost'
+ setPostConf(prevConf => ({
+ ...prevConf,
+ action_type: nextAction,
+ post_map: generatePostCreationFieldMap(nextAction)
+ }))
+ }
+
+ const isLegacyAction = isLegacyPostCreationAction(postConf?.action_type)
+ const selectedPostFields = getPostCreationFieldsByAction(postConf?.action_type || 'createNewPost')
+
const saveConfig = () => {
if (!checkMappedPostFields(postConf)) {
setSnackbar({ show: true, msg: __('Please map mandatory fields', 'bit-integrations') })
return
}
- if (!checkMappedAcfFields(postConf)) {
+ if (isLegacyAction && !checkMappedAcfFields(postConf)) {
setSnackbar({ show: true, msg: __('Please map mandatory fields', 'bit-integrations') })
return
}
- if (!checkMappedMbFields(postConf)) {
+ if (isLegacyAction && !checkMappedMbFields(postConf)) {
setSnackbar({ show: true, msg: __('Please map mandatory fields', 'bit-integrations') })
return
}
- if (!checkMappedJEFields(postConf)) {
+ if (isLegacyAction && !checkMappedJEFields(postConf)) {
setSnackbar({ show: true, msg: __('Please map mandatory fields', 'bit-integrations') })
return
}
@@ -139,7 +161,6 @@ function Post({ allIntegURL }) {
resp.then(res => {
if (res.success) {
setSnackbar({ show: true, msg: res.data })
- // navigate(allIntegURL)
} else {
setSnackbar({ show: true, msg: res.data || res })
}
@@ -150,177 +171,202 @@ function Post({ allIntegURL }) {
-
-
{__('Integration Name', 'bit-integrations')}
+
+
+
+ {__('Integration Name', 'bit-integrations')}
+
+
handleInput(e.target.name, e.target.value)}
+ name="name"
+ value={postConf.name}
+ type="text"
+ placeholder={__('Integration Name...', 'bit-integrations')}
+ />
-
handleInput(e.target.name, e.target.value)}
- name="name"
- value={postConf.name}
- type="text"
- placeholder={__('Integration Name...', 'bit-integrations')}
- />
-
-
-
{__('Post Type', 'bit-integrations')}
-
-
- {__(
- 'Select one of the defined WordPress post types Or custom post types for the post',
- 'bit-integrations'
- )}
-
-
-
-
-
+
+
+ {__('Action type', 'bit-integrations')}
+
getCustomFields(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-1">
-
- {__('Select Post Type', 'bit-integrations')}
-
- {postTypes?.map((postType, key) => (
-
- {postType?.title}
+ className="btcd-paper-inp w-5 mt-1"
+ value={postConf?.action_type || 'createNewPost'}
+ onChange={e => setActionType(e.target.value)}>
+ {postCreationExtraActions.map(action => (
+
+ {checkIsPro(isPro, action.is_pro) ? action.label : getProLabel(action.label)}
))}
-
refreshPostTypes(postTypes, setPostTypes)}
- className="icn-btn sh-sm ml-2 mr-2 tooltip"
- style={{ '--tooltip-txt': `'${__('Refresh Post Types', 'bit-integrations')}'` }}
- type="button">
- ↻
-
-
-
{__('Post Categories', 'bit-integrations')}
-
-
- {__('Select one or multiple categories for the post', 'bit-integrations')}
-
+ {isLegacyAction && (
+ <>
+
+
{__('Post Type', 'bit-integrations')}
+
+
+ {__(
+ 'Select one of the defined WordPress post types Or custom post types for the post',
+ 'bit-integrations'
+ )}
+
+
+
+
+
+ getCustomFields(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-1">
+
+ {__('Select Post Type', 'bit-integrations')}
+
+ {postTypes?.map((postType, key) => (
+
+ {postType?.title}
+
+ ))}
+
+ refreshPostTypes(setPostTypes)}
+ className="icn-btn sh-sm ml-2 mr-2 tooltip"
+ style={{ '--tooltip-txt': `'${__('Refresh Post Types', 'bit-integrations')}'` }}
+ type="button">
+ ↻
+
-
-
-
- ({
- label: category?.label,
- value: category?.value?.toString()
- }))}
- onChange={val => handleInput('post_categories', val)}
- />
- refreshPostCategories(postConf?.post_type, setPostCategories)}
- className="icn-btn sh-sm ml-2 mr-2 tooltip"
- style={{ '--tooltip-txt': `'${__('Refresh Post Categories', 'bit-integrations')}'` }}
- type="button">
- ↻
-
-
-
-
{__('Post Status', 'bit-integrations')}
-
-
- {__(
- 'Select the status for the post. If published status is selected and the post date is in the future, it will automatically be changed to scheduled',
- 'bit-integrations'
- )}
-
+
+
{__('Post Categories', 'bit-integrations')}
+
+
+ {__('Select one or multiple categories for the post', 'bit-integrations')}
+
+
+
+
+
+ ({
+ label: category?.label,
+ value: category?.value?.toString()
+ }))}
+ onChange={val => handleInput('post_categories', val)}
+ />
+ refreshPostCategories(postConf?.post_type, setPostCategories)}
+ className="icn-btn sh-sm ml-2 mr-2 tooltip"
+ style={{ '--tooltip-txt': `'${__('Refresh Post Categories', 'bit-integrations')}'` }}
+ type="button">
+ ↻
+
-
-
- handleInput(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-2">
-
- {__('Select Status', 'bit-integrations')}
-
- {__('Publish', 'bit-integrations')}
- {__('Draft', 'bit-integrations')}
- {__('Auto-Draft', 'bit-integrations')}
- {__('Private', 'bit-integrations')}
- {__('Pending', 'bit-integrations')}
-
-
-
{__('Author', 'bit-integrations')}
-
-
- {__('Select the user to be assigned to the post', 'bit-integrations')}
-
+
+
{__('Post Status', 'bit-integrations')}
+
+
+ {__(
+ 'Select the status for the post. If published status is selected and the post date is in the future, it will automatically be changed to scheduled',
+ 'bit-integrations'
+ )}
+
+
+
-
-
-
- handleInput(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-2">
-
- {__('Select Author', 'bit-integrations')}
-
- {__('Logged In User', 'bit-integrations')}
- {users?.map((user, key) => (
-
- {user.display_name}
+ handleInput(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-2">
+
+ {__('Select Status', 'bit-integrations')}
- ))}
-
-
+ {__('Publish', 'bit-integrations')}
+ {__('Draft', 'bit-integrations')}
+ {__('Auto-Draft', 'bit-integrations')}
+ {__('Private', 'bit-integrations')}
+ {__('Pending', 'bit-integrations')}
+
-
- {__('Comment Status', 'bit-integrations')}
-
- handleInput(e.target.name, e.target.value)}
- className="btcd-paper-inp w-5 mt-2">
-
- {__('Select Status', 'bit-integrations')}
-
- {__('Open', 'bit-integrations')}
- {__('Closed', 'bit-integrations')}
-
+
+
{__('Author', 'bit-integrations')}
+
+
+ {__('Select the user to be assigned to the post', 'bit-integrations')}
+
+
+
+
+
+ handleInput(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-2">
+
+ {__('Select Author', 'bit-integrations')}
+
+ {__('Logged In User', 'bit-integrations')}
+ {users?.map((user, key) => (
+
+ {user.display_name}
+
+ ))}
+
+
-
-
-
-
+
+ {__('Comment Status', 'bit-integrations')}
+
+
handleInput(e.target.name, e.target.value)}
+ className="btcd-paper-inp w-5 mt-2">
+
+ {__('Select Status', 'bit-integrations')}
+
+ {__('Open', 'bit-integrations')}
+ {__('Closed', 'bit-integrations')}
+
+
+
+
+
+
-
-
- {__('Use commas to separate multiple tags. Example: tag1, tag2, tag3', 'bit-integrations')}
-
+
+
+ {__(
+ 'Use commas to separate multiple tags. Example: tag1, tag2, tag3',
+ 'bit-integrations'
+ )}
+
+
+
-
-
-
handleInput(e.target.name, e.target.value)}
- name="post_tags"
- value={postConf.post_tags}
- type="text"
- placeholder={__('Add Post Tags...', 'bit-integrations')}
- disabled={!isPro}
- />
+
handleInput(e.target.name, e.target.value)}
+ name="post_tags"
+ value={postConf.post_tags}
+ type="text"
+ placeholder={__('Add Post Tags...', 'bit-integrations')}
+ disabled={!isPro}
+ />
+ >
+ )}
@@ -346,34 +392,35 @@ function Post({ allIntegURL }) {
formFields={formFields}
postConf={postConf}
setPostConf={setPostConf}
- customFields={postFields}
+ customFields={selectedPostFields}
/>
))}
addFieldMap('post_map', postConf.post_map.length, postConf, setPostConf)}
+ onClick={() =>
+ addFieldMap('post_map', postConf?.post_map?.length || 0, postConf, setPostConf)
+ }
className="icn-btn sh-sm"
type="button">
+
-
- handleInput(e, postConf, setPostConf, formID, setIsLoading, setSnackbar)}
- postConf={postConf}
- setPostConf={setPostConf}
- isLoading={isLoading}
- setIsLoading={setIsLoading}
- setSnackbar={setSnackbar}
- acfFields={acf}
- mbFields={mb}
- jeCPTFields={jeCPTMeta}
- />
-
+
+ {isLegacyAction && (
+
+
+
+ )}
+
!actionType || actionType === 'createNewPost'
+
+const postCreationActionFields = {
+ updateExistingPost: [
+ { key: 'post_id', name: __('Post ID', 'bit-integrations'), required: true },
+ { key: 'post_title', name: __('Post Title', 'bit-integrations'), required: false },
+ { key: 'post_content', name: __('Post Content', 'bit-integrations'), required: false },
+ { key: 'post_status', name: __('Post Status', 'bit-integrations'), required: false },
+ { key: 'post_type', name: __('Post Type', 'bit-integrations'), required: false },
+ { key: 'post_author', name: __('Post Author ID', 'bit-integrations'), required: false },
+ { key: 'post_date', name: __('Post Date', 'bit-integrations'), required: false },
+ { key: 'post_name', name: __('Post Slug', 'bit-integrations'), required: false },
+ { key: 'post_excerpt', name: __('Post Excerpt', 'bit-integrations'), required: false },
+ { key: 'featured_image_url', name: __('Featured Image URL', 'bit-integrations'), required: false }
+ ],
+ updatePostStatus: [
+ { key: 'post_id', name: __('Post ID', 'bit-integrations'), required: true },
+ { key: 'post_status', name: __('Post Status', 'bit-integrations'), required: true }
+ ],
+ deleteExistingPost: [
+ { key: 'post_id', name: __('Post ID', 'bit-integrations'), required: true },
+ { key: 'force_delete', name: __('Force Delete (true/false)', 'bit-integrations'), required: false }
+ ],
+ createNewComment: [
+ { key: 'comment_post_ID', name: __('Post ID', 'bit-integrations'), required: true },
+ { key: 'comment_content', name: __('Comment Content', 'bit-integrations'), required: true },
+ { key: 'comment_author', name: __('Author Name', 'bit-integrations'), required: false },
+ { key: 'comment_author_email', name: __('Author Email', 'bit-integrations'), required: false },
+ { key: 'comment_author_url', name: __('Author URL', 'bit-integrations'), required: false },
+ { key: 'comment_parent', name: __('Parent Comment ID', 'bit-integrations'), required: false }
+ ],
+ replyToComment: [
+ { key: 'comment_parent', name: __('Parent Comment ID', 'bit-integrations'), required: true },
+ { key: 'comment_content', name: __('Comment Content', 'bit-integrations'), required: true },
+ { key: 'comment_post_ID', name: __('Post ID', 'bit-integrations'), required: true },
+ { key: 'comment_author', name: __('Author Name', 'bit-integrations'), required: false },
+ { key: 'comment_author_email', name: __('Author Email', 'bit-integrations'), required: false }
+ ],
+ deleteExistingComment: [
+ { key: 'comment_id', name: __('Comment ID', 'bit-integrations'), required: true },
+ { key: 'force_delete', name: __('Force Delete (true/false)', 'bit-integrations'), required: false }
+ ]
+}
+
+export const getPostCreationFieldsByAction = actionType => {
+ if (isLegacyPostCreationAction(actionType)) {
+ return defaultPostFields
+ }
+
+ return postCreationActionFields[actionType] || defaultPostFields
+}
+
+export const generatePostCreationFieldMap = actionType => {
+ const fields = getPostCreationFieldsByAction(actionType)
+ const requiredFields = fields.filter(field => field.required)
+
+ if (requiredFields.length > 0) {
+ return requiredFields.map(field => ({
+ formField: '',
+ postField: field.key,
+ required: true
+ }))
+ }
+
+ return [{ formField: '', postField: '' }]
+}
export const addFieldMap = (fldProp, i, confTmp, setConf) => {
const newConf = { ...confTmp }
@@ -76,7 +158,7 @@ export const checkMappedJEFields = data => {
return true
}
-export const refreshPostTypes = (postTypes, setPostTypes) => {
+export const refreshPostTypes = setPostTypes => {
const loadPostTypes = bitsFetch({}, 'post-types/list').then(result => {
if (result && result.success) {
const { data } = result
@@ -102,7 +184,8 @@ export const refreshPostCategories = (postType, setPostCategories) => {
if (data) {
setPostCategories(data)
}
- if (data && data.length > 0) return __('Successfully refreshed Post Categories.', 'bit-integrations')
+ if (data && data.length > 0)
+ return __('Successfully refreshed Post Categories.', 'bit-integrations')
return __('Post Categories not found', 'bit-integrations')
}
})
diff --git a/frontend/src/components/AllIntegrations/PropovoiceCRM/PropovoiceCrmAuthorization.jsx b/frontend/src/components/AllIntegrations/PropovoiceCRM/PropovoiceCrmAuthorization.jsx
index 7e9d18ef6..e084592ef 100644
--- a/frontend/src/components/AllIntegrations/PropovoiceCRM/PropovoiceCrmAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/PropovoiceCRM/PropovoiceCrmAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function PropovoiceCrmAuthorization({
@@ -47,7 +46,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Rapidmail/RapidmailAuthorization.jsx b/frontend/src/components/AllIntegrations/Rapidmail/RapidmailAuthorization.jsx
index dff743527..a1057c8ec 100644
--- a/frontend/src/components/AllIntegrations/Rapidmail/RapidmailAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Rapidmail/RapidmailAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { getAllRecipient, handleAuthorize } from './RapidmailCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function RapidmailAuthorization({
@@ -59,7 +58,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Registration/EditRegistration.jsx b/frontend/src/components/AllIntegrations/Registration/EditRegistration.jsx
index 82e1e0c6c..733fbf6cd 100644
--- a/frontend/src/components/AllIntegrations/Registration/EditRegistration.jsx
+++ b/frontend/src/components/AllIntegrations/Registration/EditRegistration.jsx
@@ -1,56 +1,70 @@
/* eslint-disable no-param-reassign */
import { useEffect, useState } from 'react'
import 'react-multiple-select-dropdown-lite/dist/index.css'
-import { useNavigate, useParams } from 'react-router'
+import { useNavigate } from 'react-router'
import { useRecoilState, useRecoilValue } from 'recoil'
-import bitsFetch from '../../../Utils/bitsFetch'
+import { $actionConf, $appConfigState, $formFields, $newFlow } from '../../../GlobalStates'
import { __ } from '../../../Utils/i18nwrap'
-import SnackMsg from '../../Utilities/SnackMsg'
-import { saveActionConf, saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
-import UserFieldMap from './UserFieldMap'
-import UserMetaField from './UserMetaField'
-import { userFields } from '../../../Utils/StaticData/userField'
-import { checkMappedUserFields } from './UserHelperFunction'
-import EditFormInteg from '../EditFormInteg'
-import SetEditIntegComponents from '../IntegrationHelpers/SetEditIntegComponents'
-import LoaderSm from '../../Loaders/LoaderSm'
-import { $actionConf, $formFields, $newFlow } from '../../../GlobalStates'
-import EditWebhookInteg from '../EditWebhookInteg'
-import TableCheckBox from '../../Utilities/TableCheckBox'
import ConditionalLogic from '../../ConditionalLogic'
-import CheckBox from '../../Utilities/CheckBox'
+import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
-import RegistrationActions from './RegistrationActions'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
+import { checkIsPro, getProLabel } from '../../Utilities/ProUtilHelpers'
+import SnackMsg from '../../Utilities/SnackMsg'
+import TableCheckBox from '../../Utilities/TableCheckBox'
import TutorialLink from '../../Utilities/TutorialLink'
+import { saveActionConf } from '../IntegrationHelpers/IntegrationHelpers'
+import SetEditIntegComponents from '../IntegrationHelpers/SetEditIntegComponents'
+import RegistrationActions from './RegistrationActions'
+import UserFieldMap from './UserFieldMap'
+import {
+ checkMappedUserFields,
+ generateRegistrationFieldMap,
+ getRegistrationFieldsByAction,
+ isLegacyRegistrationAction,
+ registrationMainActions
+} from './UserHelperFunction'
+import UserMetaField from './UserMetaField'
export default function EditRegistration({ allIntegURL }) {
const navigate = useNavigate()
- const { formID } = useParams()
const [snack, setSnackbar] = useState({ show: false })
- const [roles, setRoles] = useState([])
const [isLoading, setIsLoading] = useState(false)
const [flow, setFlow] = useRecoilState($newFlow)
+ const { isPro } = useRecoilValue($appConfigState)
const formFields = useRecoilValue($formFields)
const [userConf, setUserConf] = useRecoilState($actionConf)
-useEffect(() => {
+ useEffect(() => {
const tmpConf = { ...userConf }
+ if (!tmpConf.action_type) {
+ tmpConf.action_type = 'new_user'
+ }
+
if (!tmpConf?.user_map?.[0]?.userField) {
- tmpConf.user_map = userFields
- .filter(fld => fld.required)
- .map(fl => ({ formField: '', userField: fl.key, required: fl.required }))
+ tmpConf.user_map = generateRegistrationFieldMap(tmpConf.action_type)
}
setUserConf(tmpConf)
}, [])
+ const setActionType = actionType => {
+ const nextAction = actionType || 'new_user'
+ setUserConf(prevConf => ({
+ ...prevConf,
+ action_type: nextAction,
+ user_map: generateRegistrationFieldMap(nextAction)
+ }))
+ }
+
+ const isLegacyAction = isLegacyRegistrationAction(userConf?.action_type)
+ const selectedUserFields = getRegistrationFieldsByAction(userConf?.action_type || 'new_user')
+
const saveConfig = () => {
if (!userConf.action_type) {
setSnackbar({ show: true, msg: __('Please select action type', 'bit-integrations') })
return
}
- if (!userConf.user_role && userConf.action_type !== 'updated_user') {
+ if (userConf.action_type === 'new_user' && !userConf.user_role) {
setSnackbar({ show: true, msg: __("User Role can't be empty", 'bit-integrations') })
return
}
@@ -80,58 +94,36 @@ useEffect(() => {
setUserConf(tmpConf)
}
- const actionHandler = e => {
- const newConf = { ...userConf }
- const { name, value } = e.target
- if (e.target.checked) {
- newConf[name] = value
+ const actionTypeHandler = e => {
+ if (!e.target.value) {
+ return
}
- setUserConf({ ...newConf })
+ setActionType(e.target.value)
}
- const userUpdateInstruction = `
-
- ${__('The user must be logged in when updating profile', 'bit-integrations')}
- ${__(
- 'The user cannot change the value of the username field when updating the user profile.',
- 'bit-integrations'
- )}
-
- `
- const userCreateInstruction = `
-
- ${__(
- 'If the Username and Password fields are blank then the user will take the value of the email field as the field and the password will be auto-generated.',
- 'bit-integrations'
- )}
- `
-
return (
-
+
-
{__('Action type', 'bit-integrations')}
-
-
+
+ {__('Action type', 'bit-integrations')}
+
+
+ {__('Select Action', 'bit-integrations')}
+ {registrationMainActions.map(action => (
+
+ {checkIsPro(isPro, action.is_pro) ? action.label : getProLabel(action.label)}
+
+ ))}
+
@@ -139,34 +131,33 @@ useEffect(() => {
-
-
-
-
+ {isLegacyAction && (
+ <>
+
+
+
+
-
- {__('Utilities', 'bit-integrations')}
-
-
-
+
+ {__('Utilities', 'bit-integrations')}
+
+
+
-
-
+
+
+ >
+ )}
{userConf?.condition && (
<>
@@ -198,3 +189,22 @@ useEffect(() => {
)
}
+
+
+
+const userUpdateInstruction = `
+
+ ${__('The user must be logged in when updating profile', 'bit-integrations')}
+ ${__(
+ 'The user cannot change the value of the username field when updating the user profile.',
+ 'bit-integrations'
+)}
+
+ `
+const userCreateInstruction = `
+
+ ${__(
+ 'If the Username and Password fields are blank then the user will take the value of the email field as the field and the password will be auto-generated.',
+ 'bit-integrations'
+)}
+ `
\ No newline at end of file
diff --git a/frontend/src/components/AllIntegrations/Registration/Registration.jsx b/frontend/src/components/AllIntegrations/Registration/Registration.jsx
index a736d9250..4ff7f867f 100644
--- a/frontend/src/components/AllIntegrations/Registration/Registration.jsx
+++ b/frontend/src/components/AllIntegrations/Registration/Registration.jsx
@@ -1,34 +1,39 @@
/* eslint-disable no-param-reassign */
import { useEffect, useState } from 'react'
import 'react-multiple-select-dropdown-lite/dist/index.css'
-import { useNavigate, useParams } from 'react-router'
-import bitsFetch from '../../../Utils/bitsFetch'
+import { useNavigate } from 'react-router'
+import { useRecoilValue } from 'recoil'
+import { $appConfigState } from '../../../GlobalStates'
import { __ } from '../../../Utils/i18nwrap'
-import SnackMsg from '../../Utilities/SnackMsg'
-import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
-import UserFieldMap from './UserFieldMap'
-import UserMetaField from './UserMetaField'
-import { userFields } from '../../../Utils/StaticData/userField'
-import { checkMappedUserFields } from './UserHelperFunction'
-import LoaderSm from '../../Loaders/LoaderSm'
import ConditionalLogic from '../../ConditionalLogic'
-import TableCheckBox from '../../Utilities/TableCheckBox'
-import CheckBox from '../../Utilities/CheckBox'
+import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
+import { checkIsPro, getProLabel } from '../../Utilities/ProUtilHelpers'
+import SnackMsg from '../../Utilities/SnackMsg'
+import TableCheckBox from '../../Utilities/TableCheckBox'
import TutorialLink from '../../Utilities/TutorialLink'
+import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import RegistrationActions from './RegistrationActions'
+import UserFieldMap from './UserFieldMap'
+import {
+ checkMappedUserFields,
+ generateRegistrationFieldMap,
+ getRegistrationFieldsByAction,
+ isLegacyRegistrationAction,
+ registrationMainActions
+} from './UserHelperFunction'
+import UserMetaField from './UserMetaField'
export default function Registration({ formFields, setFlow, flow, allIntegURL }) {
- const { formID } = useParams()
const [snack, setSnackbar] = useState({ show: false })
- const [roles, setRoles] = useState([])
const navigate = useNavigate()
+ const { isPro } = useRecoilValue($appConfigState)
const [isLoading, setIsLoading] = useState(false)
-const [userConf, setUserConf] = useState({
+ const [userConf, setUserConf] = useState({
name: 'WP User Registration',
type: 'WP User Registration',
- user_map: [{}],
+ action_type: 'new_user',
+ user_map: generateRegistrationFieldMap('new_user'),
meta_map: [{}],
condition: {
action_behavior: '',
@@ -39,25 +44,35 @@ const [userConf, setUserConf] = useState({
useEffect(() => {
const tmpConf = { ...userConf }
- bitsFetch({}, 'role/list', null, 'GET').then(res => {
- if (res?.success && res !== undefined) {
- setRoles(Object.values(res?.data))
- }
- })
+
+ if (!tmpConf.action_type) {
+ tmpConf.action_type = 'new_user'
+ }
if (!tmpConf?.user_map?.[0]?.userField) {
- tmpConf.user_map = userFields
- .filter(fld => fld.required)
- .map(fl => ({ formField: '', userField: fl.key, required: fl.required }))
+ tmpConf.user_map = generateRegistrationFieldMap(tmpConf.action_type)
}
setUserConf(tmpConf)
}, [])
+
+ const setActionType = actionType => {
+ const newAction = actionType || 'new_user'
+ setUserConf(prevConf => ({
+ ...prevConf,
+ action_type: newAction,
+ user_map: generateRegistrationFieldMap(newAction)
+ }))
+ }
+
+ const isLegacyAction = isLegacyRegistrationAction(userConf?.action_type)
+ const selectedUserFields = getRegistrationFieldsByAction(userConf?.action_type || 'new_user')
+
const saveConfig = () => {
if (!userConf.action_type) {
setSnackbar({ show: true, msg: __('Please select action type', 'bit-integrations') })
return
}
- if (!userConf.user_role && userConf.action_type !== 'updated_user') {
+ if (userConf.action_type === 'new_user' && !userConf.user_role) {
setSnackbar({ show: true, msg: __("User Role can't be empty", 'bit-integrations') })
return
}
@@ -79,83 +94,66 @@ const [userConf, setUserConf] = useState({
setUserConf(tmpConf)
}
- const actionHandler = e => {
- const newConf = { ...userConf }
- const { name, value } = e.target
- if (e.target.checked) {
- newConf[name] = value
+ const actionTypeHandler = e => {
+ if (!e.target.value) {
+ return
}
- setUserConf({ ...newConf })
+ setActionType(e.target.value)
}
- const userUpdateInstruction = `
-
- ${__('The user must be logged in when updating profile', 'bit-integrations')}
- ${__(
- 'The user cannot change the value of the username field when updating the user profile.',
- 'bit-integrations'
- )}
-
- `
- const userCreateInstruction = `
-
- ${__(
- 'If the Username and Password fields are blank then the user will take the value of the email field as the field and the password will be auto-generated.',
- 'bit-integrations'
- )}
- `
-
return (
-
+
{' '}
-
-
+
+ {__('Select Action', 'bit-integrations')}
+
+
+
+ {__('Select Action', 'bit-integrations')}
+ {registrationMainActions.map(action => (
+
+ {checkIsPro(isPro, action.is_pro) ? action.label : getProLabel(action.label)}
+
+ ))}
+
+
-
-
-
-
- {__('Utilities', 'bit-integrations')}
-
-
-
-
-
+ {isLegacyAction && (
+ <>
+
+
+
+
+ {__('Utilities', 'bit-integrations')}
+
+
+
+
+
+ >
+ )}
{userConf?.condition && (
<>
@@ -184,3 +182,20 @@ const [userConf, setUserConf] = useState({
)
}
+
+const userUpdateInstruction = `
+
+ ${__('The user must be logged in when updating profile', 'bit-integrations')}
+ ${__(
+ 'The user cannot change the value of the username field when updating the user profile.',
+ 'bit-integrations'
+)}
+
+ `
+const userCreateInstruction = `
+
+ ${__(
+ 'If the Username and Password fields are blank then the user will take the value of the email field as the field and the password will be auto-generated.',
+ 'bit-integrations'
+)}
+ `
\ No newline at end of file
diff --git a/frontend/src/components/AllIntegrations/Registration/UserFieldMap.jsx b/frontend/src/components/AllIntegrations/Registration/UserFieldMap.jsx
index 3795c5de4..5c9fa91d1 100644
--- a/frontend/src/components/AllIntegrations/Registration/UserFieldMap.jsx
+++ b/frontend/src/components/AllIntegrations/Registration/UserFieldMap.jsx
@@ -6,7 +6,7 @@ import TableCheckBox from '../../Utilities/TableCheckBox'
import FieldMap from './FieldMap'
import { addFieldMap } from './UserHelperFunction'
-export default function UserFieldMap({ formFields, userConf, setUserConf, roles, userFields }) {
+export default function UserFieldMap({ formFields, userConf, setUserConf, userFields }) {
const [snack, setSnackbar] = useState({ show: false })
const handleInput = e => {
const tmpConf = { ...userConf }
diff --git a/frontend/src/components/AllIntegrations/Registration/UserHelperFunction.js b/frontend/src/components/AllIntegrations/Registration/UserHelperFunction.js
index 413e9a396..1be8a613a 100644
--- a/frontend/src/components/AllIntegrations/Registration/UserHelperFunction.js
+++ b/frontend/src/components/AllIntegrations/Registration/UserHelperFunction.js
@@ -1,6 +1,124 @@
/* eslint-disable no-param-reassign */
import bitsFetch from '../../../Utils/bitsFetch'
+import { __ } from '../../../Utils/i18nwrap'
+import { userFields as defaultUserFields } from '../../../Utils/StaticData/userField'
+
+export const registrationMainActions = [
+ { value: 'new_user', label: __('New User Create', 'bit-integrations'), is_pro: false },
+ { value: 'updated_user', label: __('Updated User', 'bit-integrations'), is_pro: false },
+ { value: 'deleteExistingUser', label: __('Delete Existing User', 'bit-integrations'), is_pro: true },
+ { value: 'updateUserMetadata', label: __('Update User Metadata', 'bit-integrations'), is_pro: true },
+ { value: 'createRole', label: __('Create Role', 'bit-integrations'), is_pro: true },
+ { value: 'deleteRole', label: __('Delete Role', 'bit-integrations'), is_pro: true },
+ { value: 'addUserRoles', label: __('Add User Roles', 'bit-integrations'), is_pro: true },
+ { value: 'removeUserRole', label: __('Remove User Role', 'bit-integrations'), is_pro: true },
+ { value: 'updateUserRole', label: __('Update User Role', 'bit-integrations'), is_pro: true },
+ { value: 'addRoleCapabilities', label: __('Add Role Capabilities', 'bit-integrations'), is_pro: true },
+ {
+ value: 'removeRoleCapabilities',
+ label: __('Remove Role Capabilities', 'bit-integrations'),
+ is_pro: true
+ },
+ { value: 'addUserCapabilities', label: __('Add User Capabilities', 'bit-integrations'), is_pro: true },
+ {
+ value: 'removeUserCapabilities',
+ label: __('Remove User Capabilities', 'bit-integrations'),
+ is_pro: true
+ }
+]
+
+export const isLegacyRegistrationAction = actionType =>
+ actionType === 'new_user' || actionType === 'updated_user'
+
+const registrationActionFields = {
+ deleteExistingUser: [
+ { key: 'user_email', name: __('User Email', 'bit-integrations'), required: true},
+ { key: 'reassign_id', name: __('Reassign ID', 'bit-integrations'), required: false}
+ ],
+ updateUserMetadata: [
+ { key: 'user_email', name: __('User Email', 'bit-integrations'), required: true },
+ { key: 'meta_key', name: __('Meta Key', 'bit-integrations'), required: true },
+ { key: 'meta_value', name: __('Meta Value', 'bit-integrations'), required: true }
+ ],
+ createRole: [
+ { key: 'role_name', name: __('Role Name', 'bit-integrations'), required: true },
+ { key: 'role_display_name', name: __('Display Name', 'bit-integrations'), required: true },
+ {
+ key: 'role_capabilities',
+ name: __('Capabilities (comma separated)', 'bit-integrations'),
+ required: false
+ }
+ ],
+ deleteRole: [{ key: 'role_name', name: __('Role Name', 'bit-integrations'), required: true }],
+ addUserRoles: [
+ { key: 'user_email', name: __('User Email', 'bit-integrations'), required: true },
+ { key: 'user_role', name: __('Role', 'bit-integrations'), required: true }
+ ],
+ removeUserRole: [
+ { key: 'user_email', name: __('User Email', 'bit-integrations'), required: true },
+ { key: 'user_role', name: __('Role', 'bit-integrations'), required: true }
+ ],
+ updateUserRole: [
+ { key: 'user_email', name: __('User Email', 'bit-integrations'), required: true },
+ { key: 'new_role', name: __('New Role', 'bit-integrations'), required: true }
+ ],
+ addRoleCapabilities: [
+ { key: 'role_name', name: __('Role Name', 'bit-integrations'), required: true },
+ {
+ key: 'role_capabilities',
+ name: __('Capabilities (comma separated)', 'bit-integrations'),
+ required: true
+ }
+ ],
+ removeRoleCapabilities: [
+ { key: 'role_name', name: __('Role Name', 'bit-integrations'), required: true },
+ {
+ key: 'role_capabilities',
+ name: __('Capabilities (comma separated)', 'bit-integrations'),
+ required: true
+ }
+ ],
+ addUserCapabilities: [
+ { key: 'user_email', name: __('User Email', 'bit-integrations'), required: true },
+ {
+ key: 'role_capabilities',
+ name: __('Capabilities (comma separated)', 'bit-integrations'),
+ required: true
+ }
+ ],
+ removeUserCapabilities: [
+ { key: 'user_email', name: __('User Email', 'bit-integrations'), required: true },
+ {
+ key: 'role_capabilities',
+ name: __('Capabilities (comma separated)', 'bit-integrations'),
+ required: true
+ }
+ ]
+}
+
+export const getRegistrationFieldsByAction = actionType => {
+ if (isLegacyRegistrationAction(actionType)) {
+ return defaultUserFields
+ }
+
+ return registrationActionFields[actionType] || defaultUserFields
+}
+
+export const generateRegistrationFieldMap = actionType => {
+ const fields = getRegistrationFieldsByAction(actionType)
+ const requiredFields = fields.filter(field => field.required)
+
+ if (requiredFields.length > 0) {
+ return requiredFields.map(field => ({
+ formField: '',
+ userField: field.key,
+ required: true
+ }))
+ }
+
+ return [{ formField: '', userField: '' }]
+}
export const addFieldMap = (fldProp, i, confTmp, setConf) => {
const newConf = { ...confTmp }
diff --git a/frontend/src/components/AllIntegrations/Registration/UserMetaField.jsx b/frontend/src/components/AllIntegrations/Registration/UserMetaField.jsx
index d5b6424b2..1c88be5a4 100644
--- a/frontend/src/components/AllIntegrations/Registration/UserMetaField.jsx
+++ b/frontend/src/components/AllIntegrations/Registration/UserMetaField.jsx
@@ -1,10 +1,9 @@
-import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import FieldMap from './FieldMap'
import { addFieldMap } from './UserHelperFunction'
export default function CustomFieldMap({ formFields, userConf, setUserConf }) {
- const [metaFields, setMetaFields] = useState([])
+ const metaFields = []
return (
diff --git a/frontend/src/components/AllIntegrations/RestrictContent/RestrictContentAuthorization.jsx b/frontend/src/components/AllIntegrations/RestrictContent/RestrictContentAuthorization.jsx
index 8ebcfd399..382fad49f 100644
--- a/frontend/src/components/AllIntegrations/RestrictContent/RestrictContentAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/RestrictContent/RestrictContentAuthorization.jsx
@@ -6,8 +6,6 @@ import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { getAllLevels } from './RestrictContentCommonFunc'
import TutorialLink from '../../Utilities/TutorialLink'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
-
export default function RestrictContentAuthorization({
formID,
restrictConf,
@@ -55,7 +53,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Salesflare/SalesflareAuthorization.jsx b/frontend/src/components/AllIntegrations/Salesflare/SalesflareAuthorization.jsx
index 4b1194012..c1bcbed08 100644
--- a/frontend/src/components/AllIntegrations/Salesflare/SalesflareAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Salesflare/SalesflareAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { salesflareAuthentication } from './SalesflareCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SalesflareAuthorization({
@@ -49,7 +48,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Salesforce/SalesforceAuthorization.jsx b/frontend/src/components/AllIntegrations/Salesforce/SalesforceAuthorization.jsx
index 5e13bd392..2f10298d3 100644
--- a/frontend/src/components/AllIntegrations/Salesforce/SalesforceAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Salesforce/SalesforceAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleAuthorize } from './SalesforceCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import { $appConfigState } from '../../../GlobalStates'
import { useRecoilValue } from 'recoil'
@@ -51,7 +50,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Salesmate/SalesmateAuthorization.jsx b/frontend/src/components/AllIntegrations/Salesmate/SalesmateAuthorization.jsx
index 1dcc9b7d0..0cf1f0c54 100644
--- a/frontend/src/components/AllIntegrations/Salesmate/SalesmateAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Salesmate/SalesmateAuthorization.jsx
@@ -6,7 +6,6 @@ import LoaderSm from '../../Loaders/LoaderSm'
import { salesmateAuthentication } from './SalesmateCommonFunc'
import Note from '../../Utilities/Note'
import { toast } from 'react-hot-toast'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SalesmateAuthorization({
@@ -64,7 +63,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Selzy/SelzyAuthorization.jsx b/frontend/src/components/AllIntegrations/Selzy/SelzyAuthorization.jsx
index b83e0f78f..7ad43d1a7 100644
--- a/frontend/src/components/AllIntegrations/Selzy/SelzyAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Selzy/SelzyAuthorization.jsx
@@ -6,7 +6,6 @@ import Input from '../../Utilities/Input'
import Note from '../../Utilities/Note'
import StepPage from '../../Utilities/StepPage'
import { getAllTags, handleAuthorize, handleInput } from './SelzyCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import { __ } from '../../../Utils/i18nwrap'
@@ -47,7 +46,7 @@ const nextPage = async () => {
return (
-
+
{/* SelzyAuthorization */}
diff --git a/frontend/src/components/AllIntegrations/SendFox/SendFoxAuthorization.jsx b/frontend/src/components/AllIntegrations/SendFox/SendFoxAuthorization.jsx
index 33cf5eac8..8764f14e8 100644
--- a/frontend/src/components/AllIntegrations/SendFox/SendFoxAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SendFox/SendFoxAuthorization.jsx
@@ -4,7 +4,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import CopyText from '../../Utilities/CopyText'
import { handleAuthorize } from './SendFoxCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SendFoxAuthorization({
@@ -43,7 +42,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SendGrid/SendGridAuthorization.jsx b/frontend/src/components/AllIntegrations/SendGrid/SendGridAuthorization.jsx
index 5286746c0..b0e0eddb2 100644
--- a/frontend/src/components/AllIntegrations/SendGrid/SendGridAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SendGrid/SendGridAuthorization.jsx
@@ -4,7 +4,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { sendGridAuthentication } from './SendGridCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SendGridAuthorization({
@@ -40,7 +39,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SendPulse/SendPulseAuthorization.jsx b/frontend/src/components/AllIntegrations/SendPulse/SendPulseAuthorization.jsx
index 41a6d7c34..158c60935 100644
--- a/frontend/src/components/AllIntegrations/SendPulse/SendPulseAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SendPulse/SendPulseAuthorization.jsx
@@ -6,7 +6,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { refreshSendPulseList } from './SendPulseCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SendPulseAuthorization({
@@ -92,7 +91,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SendinBlue/SendinBlueAuthorization.jsx b/frontend/src/components/AllIntegrations/SendinBlue/SendinBlueAuthorization.jsx
index 2da337a14..c0cdd180a 100644
--- a/frontend/src/components/AllIntegrations/SendinBlue/SendinBlueAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SendinBlue/SendinBlueAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { refreshLists } from './SendinBlueCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SendinBlueAuthorization({
@@ -61,7 +60,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Sendy/SendyAuthorization.jsx b/frontend/src/components/AllIntegrations/Sendy/SendyAuthorization.jsx
index 1a74c2428..c32d6028e 100644
--- a/frontend/src/components/AllIntegrations/Sendy/SendyAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Sendy/SendyAuthorization.jsx
@@ -6,7 +6,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
// import { getAllList } from './ElasticEmailCommonFunc'
@@ -56,7 +55,7 @@ const handleAuthorize = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SeoPress/SeoPressAuthorization.jsx b/frontend/src/components/AllIntegrations/SeoPress/SeoPressAuthorization.jsx
index faffd0b3a..9a003c9e9 100644
--- a/frontend/src/components/AllIntegrations/SeoPress/SeoPressAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SeoPress/SeoPressAuthorization.jsx
@@ -2,7 +2,6 @@ import { useState } from 'react'
import BackIcn from '../../../Icons/BackIcn'
import bitsFetch from '../../../Utils/bitsFetch'
import { __ } from '../../../Utils/i18nwrap'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import LoaderSm from '../../Loaders/LoaderSm'
import TutorialLink from '../../Utilities/TutorialLink'
@@ -47,7 +46,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Slack/SlackAuthorization.jsx b/frontend/src/components/AllIntegrations/Slack/SlackAuthorization.jsx
index 9ee657ac5..b4ff513ed 100644
--- a/frontend/src/components/AllIntegrations/Slack/SlackAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Slack/SlackAuthorization.jsx
@@ -3,7 +3,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { handleAuthorize } from './SlackCommonFunc'
import Note from '../../Utilities/Note'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SlackAuthorization({
@@ -57,7 +56,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SliceWp/SliceWpAuthorization.jsx b/frontend/src/components/AllIntegrations/SliceWp/SliceWpAuthorization.jsx
index 1c50452d8..80dd07041 100644
--- a/frontend/src/components/AllIntegrations/SliceWp/SliceWpAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SliceWp/SliceWpAuthorization.jsx
@@ -4,7 +4,6 @@ import bitsFetch from '../../../Utils/bitsFetch'
import { deepCopy } from '../../../Utils/Helpers'
import { __, sprintf } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SliceWpAuthorization({
@@ -47,7 +46,7 @@ const authorizeHandler = () => {
width: step === 1 && 900,
height: step === 1 && 'auto'
}}>
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/Smaily/SmailyAuthorization.jsx b/frontend/src/components/AllIntegrations/Smaily/SmailyAuthorization.jsx
index 063739427..e99f8b3f7 100644
--- a/frontend/src/components/AllIntegrations/Smaily/SmailyAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/Smaily/SmailyAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { smailyAuthentication } from './SmailyCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SmailyAuthorization({
@@ -63,7 +62,7 @@ const nextPage = () => {
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SmartSuite/SmartSuiteAuthorization.jsx b/frontend/src/components/AllIntegrations/SmartSuite/SmartSuiteAuthorization.jsx
index 19b49633c..c3a39e3d2 100644
--- a/frontend/src/components/AllIntegrations/SmartSuite/SmartSuiteAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SmartSuite/SmartSuiteAuthorization.jsx
@@ -5,7 +5,6 @@ import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import Note from '../../Utilities/Note'
import { smartSuiteAuthentication, getAllSolutions } from './SmartSuiteCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
import { create } from 'mutative'
@@ -62,7 +61,7 @@ const [error, setError] = useState({ workspaceId: '', apiToken: '' })
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SperseIO/SperseIO.jsx b/frontend/src/components/AllIntegrations/SperseIO/SperseIO.jsx
index 623b70ff8..1deb78032 100644
--- a/frontend/src/components/AllIntegrations/SperseIO/SperseIO.jsx
+++ b/frontend/src/components/AllIntegrations/SperseIO/SperseIO.jsx
@@ -7,7 +7,6 @@ import Steps from '../../Utilities/Steps'
import { saveIntegConfig } from '../IntegrationHelpers/IntegrationHelpers'
import WebHooksIntegration from '../IntegrationHelpers/WebHook/WebHooksIntegration'
import WebHooksStepTwo from '../IntegrationHelpers/WebHook/WebHooksStepTwo'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
function SperseIO({ formFields, setFlow, flow, allIntegURL }) {
@@ -35,7 +34,7 @@ function SperseIO({ formFields, setFlow, flow, allIntegURL }) {
-
+
{
-
+
{__('Integration Name:', 'bit-integrations')}
diff --git a/frontend/src/components/AllIntegrations/SureCart/SureCartAuthorization.jsx b/frontend/src/components/AllIntegrations/SureCart/SureCartAuthorization.jsx
index d0b182f25..d4533a801 100644
--- a/frontend/src/components/AllIntegrations/SureCart/SureCartAuthorization.jsx
+++ b/frontend/src/components/AllIntegrations/SureCart/SureCartAuthorization.jsx
@@ -2,7 +2,6 @@ import { useState } from 'react'
import { __ } from '../../../Utils/i18nwrap'
import LoaderSm from '../../Loaders/LoaderSm'
import { handleAuthorize } from './SureCartCommonFunc'
-import tutorialLinks from '../../../Utils/StaticData/tutorialLinks'
import TutorialLink from '../../Utilities/TutorialLink'
export default function SureCartAuthorization({
@@ -42,7 +41,7 @@ const nextPage = () => {
...{ width: step === 1 && 900 },
...{ height: step === 1 && 'auto' }
}}>
-
+