musarehmani100's picture
Upload folder using huggingface_hub
3206347 verified
import defineAction from '../../../../helpers/define-action.js';
export default defineAction({
name: 'Create card widget',
key: 'createCardWidget',
description: 'Creates a new card widget on an existing board.',
arguments: [
{
label: 'Board',
key: 'boardId',
type: 'dropdown',
required: true,
description: '',
variables: true,
source: {
type: 'query',
name: 'getDynamicData',
arguments: [
{
name: 'key',
value: 'listBoards',
},
],
},
},
{
label: 'Frame',
key: 'frameId',
type: 'dropdown',
required: true,
dependsOn: ['parameters.boardId'],
description:
'You need to create a frame prior to this step. Switch frame to grid mode to avoid cards overlap.',
variables: true,
source: {
type: 'query',
name: 'getDynamicData',
arguments: [
{
name: 'key',
value: 'listFrames',
},
{
name: 'parameters.boardId',
value: '{parameters.boardId}',
},
],
},
},
{
label: 'Card Title',
key: 'cardTitle',
type: 'string',
required: true,
description: '',
variables: true,
},
{
label: 'Card Title Link',
key: 'cardTitleLink',
type: 'string',
required: false,
description: '',
variables: true,
},
{
label: 'Card Description',
key: 'cardDescription',
type: 'string',
required: false,
description: '',
variables: true,
},
{
label: 'Card Due Date',
key: 'cardDueDate',
type: 'string',
required: false,
description:
'format: date-time. Example value: 2023-10-12 22:00:55+00:00',
variables: true,
},
{
label: 'Card Border Color',
key: 'cardBorderColor',
type: 'dropdown',
required: false,
description: 'In hex format. Default is blue (#2399F3).',
variables: true,
options: [
{ label: 'white', value: '#FFFFFF' },
{ label: 'yellow', value: '#FEF445' },
{ label: 'orange', value: '#FAC710' },
{ label: 'red', value: '#F24726' },
{ label: 'bright red', value: '#DA0063' },
{ label: 'light gray', value: '#E6E6E6' },
{ label: 'gray', value: '#808080' },
{ label: 'black', value: '#1A1A1A' },
{ label: 'light green', value: '#CEE741' },
{ label: 'green', value: '#8FD14F' },
{ label: 'dark green', value: '#0CA789' },
{ label: 'light blue', value: '#12CDD4' },
{ label: 'blue', value: '#2D9BF0' },
{ label: 'dark blue', value: '#414BB2' },
{ label: 'purple', value: '#9510AC' },
{ label: 'dark purple', value: '#652CB3' },
],
},
],
async run($) {
const {
boardId,
frameId,
cardTitle,
cardTitleLink,
cardDescription,
cardDueDate,
cardBorderColor,
} = $.step.parameters;
let title;
if (cardTitleLink) {
title = `<a href='${cardTitleLink}'>${cardTitle}</a>`;
} else {
title = cardTitle;
}
const body = {
data: {
title: title,
description: cardDescription,
},
style: {},
parent: {
id: frameId,
},
};
if (cardBorderColor) {
body.style.cardTheme = cardBorderColor;
}
if (cardDueDate) {
body.data.dueDate = cardDueDate;
}
const response = await $.http.post(`/v2/boards/${boardId}/cards`, body);
$.setActionItem({
raw: response.data,
});
},
});