diff --git a/backend/internal/interfaces/http/dto/typescript/index.ts b/backend/internal/interfaces/http/dto/typescript/index.ts new file mode 100644 index 0000000..7139a7f --- /dev/null +++ b/backend/internal/interfaces/http/dto/typescript/index.ts @@ -0,0 +1,62 @@ +// Code generated by tygo. DO NOT EDIT. + +////////// +// source: activity.go + +export interface Activity { + ID: number /* int */; + Name: string; + BillingRate: number /* float64 */; +} + +////////// +// source: company.go + +export interface Company { + ID: number /* int */; + Name: string; +} + +////////// +// source: customer.go + +export interface Customer { + ID: number /* int */; + Name: string; + CompanyID: number /* int */; +} + +////////// +// source: project.go + +export interface Project { + ID: number /* int */; + Name: string; + CustomerID: number /* int */; +} + +////////// +// source: timeentry.go + +export interface TimeEntry { + ID: number /* int */; + UserID: number /* int */; + ProjectID: number /* int */; + ActivityID: number /* int */; + Start: string; + End: string; + Description: string; + Billable: number /* int */; // Percentage (0-100) +} + +////////// +// source: user.go + +export interface User { + ID: number /* int */; + Username: string; + Password: string; + Role: string; + CompanyID: number /* int */; + HourlyRate: number /* float64 */; +} diff --git a/backend/tygo.yml b/backend/tygo.yml new file mode 100644 index 0000000..04f926a --- /dev/null +++ b/backend/tygo.yml @@ -0,0 +1,5 @@ +packages: + - path: github.com/timetracker/backend/internal/domain/entities + type_mappings: + "time.Time": "string" + output_path: ./internal/interfaces/http/dto/typescript diff --git a/frontend/src/types/index.ts b/frontend/src/types/index.ts new file mode 100644 index 0000000..1f3d001 --- /dev/null +++ b/frontend/src/types/index.ts @@ -0,0 +1,62 @@ +// Code generated by tygo. DO NOT EDIT. + +////////// +// source: activity.go + +export interface Activity { + ID: number /* int */; + Name: string; + BillingRate: number /* float64 */; +} + +////////// +// source: company.go + +export interface Company { + ID: number /* int */; + Name: string; +} + +////////// +// source: customer.go + +export interface Customer { + ID: number /* int */; + Name: string; + CompanyID: number /* int */; +} + +////////// +// source: project.go + +export interface Project { + ID: number /* int */; + Name: string; + CustomerID: number /* int */; +} + +////////// +// source: timeentry.go + +export interface TimeEntry { + ID: number /* int */; + UserID: number /* int */; + ProjectID: number /* int */; + ActivityID: number /* int */; + Start: string; + End: string; + Description: string; + Billable: number /* int */; // Percentage (0-100) +} + +////////// +// source: user.go + +export interface User { + ID: number /* int */; + Username: string; + Password: string; + Role: string; + CompanyID: number /* int */; + HourlyRate: number /* float64 */; +}