Frontmatter
| id | 8503 |
| title | Create Portal.model.Ticket |
| state | Closed |
| labels | enhancementaicore |
| assignees | tobiu |
| createdAt | Jan 10, 2026, 3:54 PM |
| updatedAt | Jan 10, 2026, 3:57 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8503 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 8398 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Jan 10, 2026, 3:57 PM |
Create Portal.model.Ticket
tobiu added parent issue #8398 on Jan 10, 2026, 3:54 PM

tobiu
Jan 10, 2026, 3:56 PM
Input from Gemini 3 Pro:
✦ I have created the
Portal.model.Ticketclass.Features:
- Extends
Neo.data.Model.- Fields:
id,parentId,title,path,isLeaf,collapsed.- Computed Field:
treeNodeNameformats tickets as<b>#123</b> Titleand folders asFolderName.Code committed and pushed to
dev.
tobiu assigned to @tobiu on Jan 10, 2026, 3:57 PM
tobiu closed this issue on Jan 10, 2026, 3:57 PM
Create a new data model
apps/portal/model/Ticket.mjsextendingNeo.data.Model.Requirements:
id,parentId,title,path,isLeaf(defaulttrue),collapsed(defaulttrue).treeNodeNamefor the TreeList display.isLeafis true (it's a ticket): format as<b>#{id}</b> {title}.isLeafis false (it's a folder/group): just return{id}(e.g., "Latest" or "11.19.1").apps/portal/model/Release.mjs.This model will be used by the Portal's Ticket Store.