Assigning values to chart.js

Hi all,

I’m working with Chart.js querying multiple collections, passing the info to a function to create an object and ultimately display it.

I can get the chart working using sample data from a query but not with my custom object, I get the following error:

item.map is not a function

The full code is:

export function populateChart(
    owner,
    month_current,
    month_minus_1,
    month_minus_2,
    month_minus_3,
    month_minus_4,
    month_minus_5,
    month_minus_6,
    month_minus_7,
    month_minus_8,
    month_minus_9,
    month_minus_10,
    month_minus_11,
) {

    let months = [
        "January",
        "February",
        "March",
        "April",
        "May",
        "June",
        "July",
        "August",
        "September",
        "October",
        "November",
        "December"
    ];

    let currentMonth = new Date().getMonth();
    let monthsB = months.splice((currentMonth + 1) % 12).reverse();
    months = months.reverse();
    months.push(monthsB);
    months = months.flat();

    let item = {
        label: [
            months[0],
            months[1],
            months[2],
            months[3],
            months[4],
            months[5],
            months[6],
            months[7],
            months[8],
            months[9],
            months[10],
            months[11]
        ],
        data: [
            month_current,
            month_minus_1,
            month_minus_2,
            month_minus_3,
            month_minus_4,
            month_minus_5,
            month_minus_6,
            month_minus_7,
            month_minus_8,
            month_minus_9,
            month_minus_10,
            month_minus_11,
        ],
        background_colour: [
            "rgba(54, 162, 235, 0.2)",
            "rgba(255, 206, 86, 0.2)",
            "rgba(75, 192, 192, 0.2)",
            "rgba(153, 102, 255, 0.2)",
            "rgba(255, 159, 64, 0.2)",
            "rgba(255, 99, 132, 0.2)",
            "rgba(85, 162, 235, 0.2)",
            "rgba(33, 206, 86, 0.2)",
            "rgba(180, 192, 192, 0.2)",
            "rgba(153, 102, 255, 0.2)",
            "rgba(200, 159, 64, 0.2)",
            "rgba(100, 99, 132, 0.2)"
        ],
        border_colour: [
            "rgba(54, 162, 235, 1)",
            "rgba(255, 206, 86, 1)",
            "rgba(75, 192, 192, 1)",
            "rgba(153, 102, 255, 1)",
            "rgba(255, 159, 64, 1)",
            "rgba(255, 99, 132, 1)",
            "rgba(85, 162, 235, 1)",
            "rgba(33, 206, 86, 1)",
            "rgba(180, 192, 192, 1)",
            "rgba(200, 102, 255, 1)",
            "rgba(255, 159, 64, 1)",
            "rgba(100, 99, 132, 1)"
        ]

    };

    let chart = new ChartJSAPI($w('#customElement1'));
    chart.customization = chartCustomization;
    const labels = item.map(item => item.label);
    const data = item.map(item => Number(item.data));
    const background_colour = item.map(item => item.background_colour);
    const border_colour = item.map(item => item.border_colour);

    chart.data = {
        labels,
        datasets: [{ data, background_colour, border_colour }]
    }

Any ideas where I am going wrong?