Builder
Builder est la classe principale de Unified Builder.
import {Builder} from "@adlcz/unifiedbuilder/builder"🏗️ Constructeur
Builder.prototype.constructor = (EntryComponent: entryComponent<any>, Hmi: Hmi, Options?: Partial<BuilderOptions>) => BuilderEntryComponent
Vous fournissez un entryComponent dans le constructeur.
Ce composant est le point central de votre application.
Composants.Hmi
Objet Hmi qui réprésente l'hmi dans TiaPortal sur laquelle UnifiedBuilder va compiler vos données.
Options
interface BuilderOptions {
AutoNaming: boolean
ForceOverride: boolean
}BuilderOptions est un objet optionnel donnant des directives à Manager lors de la compilation.
AutoNaming permet de renommer tous les objets si ceci ont un nom qui apparaît plusieurs fois.
Par exemple, si un écran possède 2 boutons possédant le même nom, le second boutons sera renommé Bouton_1.
Items / Screens. Si plusieurs éléments possèdent le même nom, seul le dernier sera compilé.
ForceOverride indique que toutes les données déjà existantes dans TiaPortal peuvent être écrasés.
Items, Screens, Tables.... Autrement dit son acivation écrasera les données déjà existantes de façon définitivees si vous enregistrez le projet apres que Unified Builder ait fini de compiler.
Exemple
import {Builder , entryComponent } from "@adclz/unifiedbuilder/builder"import {Hmi } from "@adclz/fevertypes/devices" const MyEntryComponent : entryComponent <void> = { Props : undefined , Template : "", Data : {}} const MyHmi = new Hmi ("Uid", "MyHmi", "OrderNumber:6AV2 128-3GB06-0AX0", )const MyBuilder = new Builder (MyEntryComponent , MyHmi , {AutoNaming : true, ForceOverride : true})
📜 Champs
EntryScreen
Builder.prototype.EntryScreen = ScreenDataCe champ représente les valeurs de l'écran principal.
Builder charge des valeurs par défaut pour ce champ.
Screen pour en savoir plus.TagTables
Builder.prototype.TagTables = TablePermet de définir les variables Hmi.
Tags pour en savoir plus.🧪 Méthodes
Build
Builder.prototype.Build = (Div: HTMLDivElement) : voidCette méthode permet de faire le rendu de votre application.
Vous devez fournir un HTMLDIVElement que Unified Builder utilisera afin d'effectuer le rendu.
LoadScreen
Builder.prototype.LoadScreen = (Screen: number) : voidCharge un écran dans le rendu de votre application.
L'HTMLDIVElement que vous avez choisi dans le champ Build prendra la forme du numéro de l'écran que vous avez passé en paramètre.
JsonData
Builder.prototype.JsonData = async () => Promise<HmiSource>Compile toutes vos données sous la forme d'uh object JSON que vous pouvez envoyer à Manager. Cette méthode retourne une promesse.
ScaleBy
Builder.prototype.ScaleBy = (ScaleBy: number) => voidRedimensionne la vue en utilisant la propriété css transform.
De plus la position de la vue sera toujours la même dans le
DOM.