mirror of
https://github.com/n8n-io/n8n.git
synced 2025-03-05 20:50:17 -08:00
* 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 unnessary margin * clean unused functionality * remove unnessary css * remove duplicate tracking * only show tooltip when hovering over label * update credentials section * use includes Co-authored-by: ahsan-virani <ahsan.virani@gmail.com> Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
126 lines
2.3 KiB
Vue
126 lines
2.3 KiB
Vue
<template functional>
|
|
<span :class="$style[$options.methods.getClass(props)]" :style="$options.methods.getStyles(props)">
|
|
<slot></slot>
|
|
</span>
|
|
</template>
|
|
|
|
<script lang="ts">
|
|
import Vue from 'vue';
|
|
export default Vue.extend({
|
|
name: 'n8n-text',
|
|
props: {
|
|
bold: {
|
|
type: Boolean,
|
|
default: false,
|
|
},
|
|
size: {
|
|
type: String,
|
|
default: 'medium',
|
|
validator: (value: string): boolean => ['mini', 'small', 'medium', 'large', 'xlarge'].includes(value),
|
|
},
|
|
color: {
|
|
type: String,
|
|
validator: (value: string): boolean => ['primary', 'text-dark', 'text-base', 'text-light'].includes(value),
|
|
},
|
|
align: {
|
|
type: String,
|
|
validator: (value: string): boolean => ['right', 'left', 'center'].includes(value),
|
|
},
|
|
compact: {
|
|
type: Boolean,
|
|
default: false,
|
|
},
|
|
},
|
|
methods: {
|
|
getClass(props: {size: string, bold: boolean}) {
|
|
return `body-${props.size}${props.bold ? '-bold' : '-regular'}`;
|
|
},
|
|
getStyles(props: {color: string, align: string, compact: false}) {
|
|
const styles = {} as any;
|
|
if (props.color) {
|
|
styles.color = `var(--color-${props.color})`;
|
|
}
|
|
if (props.compact) {
|
|
styles['line-height'] = 1;
|
|
}
|
|
if (props.align) {
|
|
styles['text-align'] = props.align;
|
|
}
|
|
return styles;
|
|
},
|
|
},
|
|
});
|
|
</script>
|
|
|
|
<style lang="scss" module>
|
|
.bold {
|
|
font-weight: var(--font-weight-bold);
|
|
}
|
|
|
|
.regular {
|
|
font-weight: var(--font-weight-regular);
|
|
}
|
|
|
|
.body-xlarge {
|
|
font-size: var(--font-size-xl);
|
|
line-height: var(--font-line-height-xloose);
|
|
}
|
|
|
|
.body-xlarge-regular {
|
|
composes: regular;
|
|
composes: body-xlarge;
|
|
}
|
|
|
|
.body-xlarge-bold {
|
|
composes: bold;
|
|
composes: body-xlarge;
|
|
}
|
|
|
|
|
|
.body-large {
|
|
font-size: var(--font-size-m);
|
|
line-height: var(--font-line-height-xloose);
|
|
}
|
|
|
|
.body-large-regular {
|
|
composes: regular;
|
|
composes: body-large;
|
|
}
|
|
|
|
.body-large-bold {
|
|
composes: bold;
|
|
composes: body-large;
|
|
}
|
|
|
|
.body-medium {
|
|
font-size: var(--font-size-s);
|
|
line-height: var(--font-line-height-loose);
|
|
}
|
|
|
|
.body-medium-regular {
|
|
composes: regular;
|
|
composes: body-medium;
|
|
}
|
|
|
|
.body-medium-bold {
|
|
composes: bold;
|
|
composes: body-medium;
|
|
}
|
|
|
|
.body-small {
|
|
font-size: var(--font-size-2xs);
|
|
line-height: var(--font-line-height-loose);
|
|
}
|
|
|
|
.body-small-regular {
|
|
composes: regular;
|
|
composes: body-small;
|
|
}
|
|
|
|
.body-small-bold {
|
|
composes: bold;
|
|
composes: body-small;
|
|
}
|
|
|
|
</style>
|