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,130 @@
import {BaseGridWithPanel} from './BaseWithPanel.js?v=2';
import {
renderResourceWithQueryAndEventType,
renderDeviceWithOs,
renderIpType,
renderIpWithCountry,
renderUserForEvent,
renderTimestampForEvent,
} from '../DataRenderers.js?v=2';
export class EventsGrid extends BaseGridWithPanel {
// 7, 8 - invisible time and id columns to prevent sorting buttons appearence
get orderConfig() {
return this.config.sessionGroup && !this.config.singleUser
? [[6, 'desc'], [7, 'desc'], [8, 'desc']]
: [[7, 'desc'], [8, 'desc']];
}
get columnDefs() {
const columnDefs = [
{
className: 'event-user-col',
targets: 0
},
{
className: 'event-timestamp-col',
targets: 1
},
{
className: 'event-event-type-col',
targets: 2
},
{
className: 'event-ip-col',
targets: 3
},
{
className: 'event-ip-type-col',
targets: 4
},
{
className: 'event-device-col',
targets: 5
},
{
visible: false,
targets: 6
},
{
visible: false,
targets: 7
},
{
visible: false,
targets: 8
},
];
return columnDefs;
}
get columns() {
const userIdRender = (record) => {
return renderUserForEvent(record, 'medium', this.config.sessionGroup, this.config.singleUser);
};
const timestampRender = (record) => {
return renderTimestampForEvent(record, this.config.sessionGroup, this.config.singleUser);
};
const columns = [
{
data: 'userid',
render: (data, type, record) => {
return userIdRender(record);
},
orderable: false
},
{
data: 'time',
render: (data, type, record) => {
return timestampRender(record);
},
orderable: false
},
{
data: 'type',
render: (data, type, record) => {
return renderResourceWithQueryAndEventType(record);
},
orderable: false
},
{
data: 'ip',
render: (data, type, record) => {
return renderIpWithCountry(record);
},
orderable: false
},
{
data: 'ip_type',
name: 'ip_type',
render: (data, type, record) => {
return renderIpType(record);
},
orderable: false
},
{
data: 'device',
render: (data, type, record) => {
return renderDeviceWithOs(record);
},
orderable: false
},
{
data: 'session_id',
name: 'session_id',
},
{
data: 'time',
name: 'time',
},
{
data: 'id',
name: 'id',
},
];
return columns;
}
}