feat(cloudron): add tirreno package artifacts

- Add CloudronStack/output/CloudronPackages-Artifacts/tirreno/ directory and its contents
- Includes package manifest, Dockerfile, source code, documentation, and build artifacts
- Add tirreno-1761840148.tar.gz as a build artifact
- Add tirreno-cloudron-package-1761841304.tar.gz as the Cloudron package
- Include all necessary files for the tirreno Cloudron package

This adds the complete tirreno Cloudron package artifacts to the repository.
This commit is contained in:
2025-10-30 11:43:06 -05:00
parent 0ce353ea9d
commit 91d52d2de5
1692 changed files with 202851 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
const addDays = (date, days) => {
const dateCopy = new Date(date);
dateCopy.setDate(date.getDate() + days);
return dateCopy;
};
const addHours = (date, hours) => {
const ms = hours * 60 * 60 * 1000;
const dateCopy = new Date(date);
dateCopy.setTime(date.getTime() + ms);
return dateCopy;
};
//https://stackoverflow.com/a/12550320
const padZero = (n, s = 2) => {
return (s > 0) ? ('000'+n).slice(-s) : (n+'000').slice(0, -s);
};
const notificationTime = () => {
const dt = new Date();
const day = padZero(dt.getDate());
const month = padZero(dt.getMonth() + 1);
const year = padZero(dt.getFullYear(), 4);
const hours = padZero(dt.getHours());
const minutes = padZero(dt.getMinutes());
const seconds = padZero(dt.getSeconds());
return `[${day}/${month}/${year} ${hours}:${minutes}:${seconds}]`;
};
// offsetInSeconds is not inverted as .getTimezoneOffset() result
const formatIntTimeUtc = (ts, useTime, offsetInSeconds = 0) => {
const dt = new Date(ts + ((new Date()).getTimezoneOffset() * 60 + offsetInSeconds) * 1000);
let m = dt.getMonth() + 1;
let d = dt.getDate();
let y = dt.getFullYear();
m = padZero(m);
d = padZero(d);
y = padZero(y, 4);
if (!useTime) {
return `${d}/${m}/${y}`;
}
let h = dt.getHours();
let i = dt.getMinutes();
let s = dt.getSeconds();
h = padZero(h);
i = padZero(i);
s = padZero(s);
return `${d}/${m}/${y} ${h}:${i}:${s}`;
};
const formatStringTime = (dt) => {
let m = dt.getMonth() + 1;
let d = dt.getDate();
let y = dt.getFullYear();
m = padZero(m);
d = padZero(d);
y = padZero(y, 4);
let h = dt.getHours();
let i = dt.getMinutes();
let s = dt.getSeconds();
h = padZero(h);
i = padZero(i);
s = padZero(s);
return `${y}-${m}-${d}T${h}:${i}:${s}`;
};
export {
formatIntTimeUtc,
formatStringTime,
notificationTime,
padZero,
addDays,
addHours,
};