From e63ed4144a659519d36e73576ebc440348e54b55 Mon Sep 17 00:00:00 2001 From: Arjo Bruijnes Date: Fri, 3 Jul 2026 14:49:54 +0200 Subject: [PATCH 1/6] Use a template for generating interfaces --- .../typings-generator/generateClientTypes.ts | 68 +++++++++---------- .../typings-generator/generatePreviewTypes.ts | 49 ++++++------- .../src/typings-generator/helpers.ts | 9 +++ 3 files changed, 65 insertions(+), 61 deletions(-) diff --git a/packages/pluggable-widgets-tools/src/typings-generator/generateClientTypes.ts b/packages/pluggable-widgets-tools/src/typings-generator/generateClientTypes.ts index be6883d5..8aa83a5b 100644 --- a/packages/pluggable-widgets-tools/src/typings-generator/generateClientTypes.ts +++ b/packages/pluggable-widgets-tools/src/typings-generator/generateClientTypes.ts @@ -1,5 +1,5 @@ import { ActionVariableTypes, Property, ReturnType, SystemProperty } from "./WidgetXml"; -import { capitalizeFirstLetter, commasAnd, extractProperties } from "./helpers"; +import { capitalizeFirstLetter, commasAnd, extractProperties, templateInterface } from "./helpers"; export function generateClientTypes( widgetName: string, @@ -13,33 +13,31 @@ export function generateClientTypes( const isLabeled = systemProperties.some(p => p.$.key === "Label"); const results = Array.of(); + const propertyTypes = generateClientTypeProperties(properties, isNative, results, resolveProp); results.push( isNative - ? `export interface ${widgetName}Props