From c6b4e626989d95203722368d8a941bc0e31cf4f9 Mon Sep 17 00:00:00 2001 From: Priec Date: Fri, 31 Jul 2026 01:13:12 +0200 Subject: [PATCH] typst file generating syntax --- common/proto/table_definition.proto | 19 +++++++++---------- common/src/proto/descriptor.bin | Bin 134037 -> 133762 bytes common/src/proto/komp_ac.table_definition.rs | 19 +++++++++---------- server | 2 +- 4 files changed, 19 insertions(+), 21 deletions(-) diff --git a/common/proto/table_definition.proto b/common/proto/table_definition.proto index 4f2b4dc..b3572b3 100644 --- a/common/proto/table_definition.proto +++ b/common/proto/table_definition.proto @@ -99,20 +99,19 @@ message PostTableDefinitionRequest { string accounting_currency = 8; } -// Defines the input for explicitly creating a table backed by one invoice -// template. typst_source must contain exactly one declaration of the form: +// Defines the input for explicitly creating tables backed by one invoice +// template. typst_source must contain exactly one field declaration: // // #let komp_ac_fields = ( -// "invoice.number": (source: "local", field_type: "TEXT", write: "user"), -// "items[].product": (source: "reference", table: "stock", required: true), -// "items[].quantity": (source: "local", field_type: "DECIMAL(12,3)", write: "user"), -// "items[].total": (source: "local", field_type: "MONEY", write: "script"), +// "sidlo.nazov", +// "people[].name", +// "people[].requested_quantity", // ) // -// Root fields create columns and references on table_name. Every [] collection -// creates a child table with a required FK to its immediate parent; fields in -// that collection create columns and references on the child table. Multiple -// template paths in one scope may reuse the same reference. +// A path matching an existing profile table and column becomes a reference to +// that table. Otherwise its final segment becomes a local TEXT column for an +// administrator to refine later. Every [] creates a child table with a required +// FK to its immediate generated parent. message CreateInvoiceTemplateTableRequest { string profile_name = 1; string table_name = 2; diff --git a/common/src/proto/descriptor.bin b/common/src/proto/descriptor.bin index 92d12c847bd6e75ffd4cce788410623f5c0b1a34..339888cf74b3ebbb87b0e6bd546c5d6f70d2125b 100644 GIT binary patch delta 5643 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 delta 5936 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 evoESQX3?}^7v0%dlvTEo1A=n#NZD*!b>ctY