mirror of
https://github.com/n8n-io/n8n.git
synced 2024-11-10 22:54:05 -08:00
ce066a160f
* introduce analytics * add user survey backend * add user survey backend * set answers on survey submit Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> * change name to personalization * lint Co-authored-by: Mutasem Aldmour <4711238+mutdmour@users.noreply.github.com> * N8n 2495 add personalization modal (#2280) * update modals * add onboarding modal * implement questions * introduce analytics * simplify impl * implement survey handling * add personalized cateogry * update modal behavior * add thank you view * handle empty cases * rename modal * standarize modal names * update image, add tags to headings * remove unused file * remove unused interfaces * clean up footer spacing * introduce analytics * refactor to fix bug * update endpoint * set min height * update stories * update naming from questions to survey * remove spacing after core categories * fix bug in logic * sort nodes * rename types * merge with be * rename userSurvey * clean up rest api * use constants for keys * use survey keys * clean up types * move personalization to its own file Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> * update parameter inputs to be multiline * update spacing * Survey new options (#2300) * split up options * fix quotes * remove unused import * refactor node credentials * add user created workflow event (#2301) * update multi params * simplify env vars * fix versionCli on FE * update personalization env * clean up node detail settings * fix event User opened Credentials panel * fix font sizes across modals * clean up input spacing * fix select modal spacing * increase spacing * fix input copy * fix webhook, tab spacing, retry button * fix button sizes * fix button size * add mini xlarge sizes * fix webhook spacing * fix nodes panel event * fix workflow id in workflow execute event * improve telemetry error logging * fix config and stop process events * add flush call on n8n stop * ready for release * fix input error highlighting * revert change * update toggle spacing * fix delete positioning * keep tooltip while focused * set strict size * increase left spacing * fix sort icons * remove unnessasry <br/> * remove unnessary break * remove unnessary margin * clean unused functionality * remove unnessary css * remove duplicate tracking * only show tooltip when hovering over label * remove extra space * add br * remove extra space * clean up commas * clean up commas * remove extra space * remove extra space * rewrite desc * add commas * add space * remove extra space * add space * add dot * update credentials section * use includes Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
332 lines
6.4 KiB
TypeScript
332 lines
6.4 KiB
TypeScript
import {
|
||
INodeProperties,
|
||
} from 'n8n-workflow';
|
||
|
||
export const affiliateOperations = [
|
||
{
|
||
displayName: 'Operation',
|
||
name: 'operation',
|
||
type: 'options',
|
||
displayOptions: {
|
||
show: {
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
},
|
||
},
|
||
options: [
|
||
{
|
||
name: 'Create',
|
||
value: 'create',
|
||
description: 'Create an affiliate',
|
||
},
|
||
{
|
||
name: 'Delete',
|
||
value: 'delete',
|
||
description: 'Delete an affiliate',
|
||
},
|
||
{
|
||
name: 'Get',
|
||
value: 'get',
|
||
description: 'Get an affiliate by ID',
|
||
},
|
||
{
|
||
name: 'Get All',
|
||
value: 'getAll',
|
||
description: 'Get all affiliates',
|
||
},
|
||
],
|
||
default: 'create',
|
||
description: 'The operation to perform.',
|
||
},
|
||
] as INodeProperties[];
|
||
|
||
export const affiliateFields = [
|
||
/* -------------------------------------------------------------------------- */
|
||
/* affiliate:create */
|
||
/* -------------------------------------------------------------------------- */
|
||
{
|
||
displayName: 'Email',
|
||
name: 'email',
|
||
type: 'string',
|
||
required: true,
|
||
default: '',
|
||
displayOptions: {
|
||
show: {
|
||
operation: [
|
||
'create',
|
||
],
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
},
|
||
},
|
||
description: `The affiliate’s email.`,
|
||
},
|
||
{
|
||
displayName: 'First Name',
|
||
name: 'firstname',
|
||
type: 'string',
|
||
required: true,
|
||
displayOptions: {
|
||
show: {
|
||
operation: [
|
||
'create',
|
||
],
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
},
|
||
},
|
||
default: '',
|
||
description: `The affiliate’s firstname.`,
|
||
},
|
||
{
|
||
displayName: 'Last Name',
|
||
name: 'lastname',
|
||
type: 'string',
|
||
required: true,
|
||
displayOptions: {
|
||
show: {
|
||
operation: [
|
||
'create',
|
||
],
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
},
|
||
},
|
||
default: '',
|
||
description: `The affiliate’s lastname.`,
|
||
},
|
||
{
|
||
displayName: 'Additional Fields',
|
||
name: 'additionalFields',
|
||
type: 'collection',
|
||
placeholder: 'Add Field',
|
||
default: {},
|
||
displayOptions: {
|
||
show: {
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
operation: [
|
||
'create',
|
||
],
|
||
},
|
||
},
|
||
options: [
|
||
{
|
||
displayName: 'Address',
|
||
name: 'addressUi',
|
||
placeholder: 'Address',
|
||
type: 'fixedCollection',
|
||
typeOptions: {
|
||
multipleValues: false,
|
||
},
|
||
default: {},
|
||
options: [
|
||
{
|
||
name: 'addressValues',
|
||
displayName: 'Address',
|
||
values: [
|
||
{
|
||
displayName: 'Line 1',
|
||
name: 'address',
|
||
type: 'string',
|
||
default: '',
|
||
},
|
||
{
|
||
displayName: 'Line 2',
|
||
name: 'address_two',
|
||
type: 'string',
|
||
default: '',
|
||
},
|
||
{
|
||
displayName: 'Postal Code',
|
||
name: 'postal_code',
|
||
type: 'string',
|
||
default: '',
|
||
},
|
||
{
|
||
displayName: 'City',
|
||
name: 'city',
|
||
type: 'string',
|
||
default: '',
|
||
},
|
||
{
|
||
displayName: 'State',
|
||
name: 'state',
|
||
type: 'string',
|
||
default: '',
|
||
},
|
||
{
|
||
displayName: 'Country Code',
|
||
name: 'country',
|
||
type: 'string',
|
||
default: '',
|
||
description: `The country’s ISO_3166-1 code. <a href="https://en.wikipedia.org/wiki/ISO_3166-1">Codes</a>.`,
|
||
},
|
||
],
|
||
},
|
||
],
|
||
},
|
||
{
|
||
displayName: 'Company Name',
|
||
name: 'companyName',
|
||
type: 'string',
|
||
default: '',
|
||
description: `The affiliate’s company data.`,
|
||
},
|
||
],
|
||
},
|
||
|
||
/* -------------------------------------------------------------------------- */
|
||
/* affiliate:delete */
|
||
/* -------------------------------------------------------------------------- */
|
||
{
|
||
displayName: 'Affiliate ID',
|
||
name: 'affiliateId',
|
||
required: true,
|
||
type: 'string',
|
||
displayOptions: {
|
||
show: {
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
operation: [
|
||
'delete',
|
||
],
|
||
},
|
||
},
|
||
description: 'The ID of the affiliate.',
|
||
},
|
||
|
||
/* -------------------------------------------------------------------------- */
|
||
/* affiliate:get */
|
||
/* -------------------------------------------------------------------------- */
|
||
{
|
||
displayName: 'Affiliate ID',
|
||
name: 'affiliateId',
|
||
type: 'string',
|
||
required: true,
|
||
displayOptions: {
|
||
show: {
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
operation: [
|
||
'get',
|
||
],
|
||
},
|
||
},
|
||
description: 'The ID of the affiliate.',
|
||
},
|
||
|
||
/* -------------------------------------------------------------------------- */
|
||
/* affiliate:getAll */
|
||
/* -------------------------------------------------------------------------- */
|
||
{
|
||
displayName: 'Return All',
|
||
name: 'returnAll',
|
||
type: 'boolean',
|
||
displayOptions: {
|
||
show: {
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
operation: [
|
||
'getAll',
|
||
],
|
||
},
|
||
},
|
||
default: false,
|
||
description: 'If set to true, all the results will be returned.',
|
||
},
|
||
{
|
||
displayName: 'Limit',
|
||
name: 'limit',
|
||
type: 'number',
|
||
displayOptions: {
|
||
show: {
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
operation: [
|
||
'getAll',
|
||
],
|
||
returnAll: [
|
||
false,
|
||
],
|
||
},
|
||
},
|
||
typeOptions: {
|
||
minValue: 1,
|
||
maxValue: 1000,
|
||
},
|
||
default: 100,
|
||
description: 'How many results to return.',
|
||
},
|
||
{
|
||
displayName: 'Filters',
|
||
name: 'filters',
|
||
type: 'collection',
|
||
placeholder: 'Add Field',
|
||
default: {},
|
||
displayOptions: {
|
||
show: {
|
||
resource: [
|
||
'affiliate',
|
||
],
|
||
operation: [
|
||
'getAll',
|
||
],
|
||
},
|
||
},
|
||
options: [
|
||
{
|
||
displayName: 'Affiliate Group ID',
|
||
name: 'affiliate_group_id',
|
||
type: 'string',
|
||
default: '',
|
||
description: 'Retrieves affiliates for a certain affiliate group.',
|
||
},
|
||
{
|
||
displayName: 'Click ID',
|
||
name: 'click_id',
|
||
type: 'string',
|
||
default: '',
|
||
description: 'Click ID.',
|
||
},
|
||
{
|
||
displayName: 'Email',
|
||
name: 'email',
|
||
type: 'string',
|
||
default: '',
|
||
description: 'An email address,',
|
||
},
|
||
{
|
||
displayName: 'Parent ID',
|
||
name: 'parentId',
|
||
type: 'string',
|
||
default: '',
|
||
description: 'Retrieves children for a certain parent affiliate.',
|
||
},
|
||
{
|
||
displayName: 'Referral Code',
|
||
name: 'referral_code',
|
||
type: 'string',
|
||
default: '',
|
||
description: 'An affiliate’s referral code. This corresponds to the value of ref= in their referral link.',
|
||
},
|
||
{
|
||
displayName: 'Source ID',
|
||
name: 'source_id',
|
||
type: 'string',
|
||
default: '',
|
||
description: 'The Source ID.',
|
||
},
|
||
],
|
||
},
|
||
] as INodeProperties[];
|