export const containerCard = (data) => { let { name, service, state, external_port, internal_port, ports, link } = data; let wrapped = name; let disable = ""; let chartName = name.replace(/-/g, ''); // shorten long names if (name.length > 13) { wrapped = name.slice(0, 10) + '...'; } // disable buttons for dweebui if (name.startsWith('dweebui')) { disable = 'disabled=""'; } if ( external_port == undefined ) { external_port = 0; } if ( internal_port == undefined ) { internal_port = 0; } let state_indicator = 'green'; if (state == 'exited') { state = 'stopped'; state_indicator = 'red'; } else if (state == 'paused') { state_indicator = 'orange'; } let noChart = 'hx-swap="none"'; if (state == 'running') { noChart = ''; } let ports_data = []; if (ports) { ports_data = ports; } else { for (let i = 0; i < 12; i++) { let port_check = "checked"; let external = i; let internal = i; let protocol = "tcp"; ports_data.push({ check: port_check, external: external, internal: internal, protocol: protocol }); } } return `
${external_port}:${internal_port}
`; }