jet_cad_2d_kit 0.1.1
jet_cad_2d_kit: ^0.1.1 copied to clipboard
The kit contract for jet_cad_2d plans: plan components, the .jetlib symbol library format and validator, kit words, and a pure-Dart authoring toolkit.
0.1.1 #
PlanTypegains an optionalareacapability (a closed outline in world millimetres, anticlockwise), withhasAreaandareaOf.PlanTypegains an optionalnamecapability (the object's own name), withhasNameandnameOf.
0.1.0 #
- The kit contract's symbol side: the plan components (
jetcad.symbolwith attachment kinds and a size family,jetcad.unit,jetcad.manifest,jetcad.library) andregisterKitComponents. - The
.jetliblibrary format:SymbolLibrary.decodeand its fifteen rules,SymbolLibrary.merge. KitNames,SymbolLibrarySource,bundledLibrary,PlanKit.- The authoring toolkit (pure Dart): the catalog language,
encodeLibrary, the shared shape helpers, the geometry snapshot and the conformance test. - Property specs (
LengthProperty,AngleProperty,NumberProperty,ChoiceProperty,ToggleProperty,TextProperty,ValueDisplay,ActionProperty), their erased bindingPropertyField,PlanGate,ValueUnitandColourTarget. - The code side:
PlanType,PropertySectionBuilder,TypeGuard,PlanTool,PlanToolSettings,PlanServices,KitWords,KitNamesWords,Disposable, the attachment types andKitDiagnostic.PlanKitgainstypes,tools,attachmentsandpropertyIds, andvalidatechecks them; sevenKitProblemCodes for the code side and the kit set;isCodeId. The contract depends onjet_cad_2d_flutter. retiredonjetcad.symbolandCatalogSymbol, written only when true;conformancetakestypeIds,toolIdsandpropertyIds; rule 11 refuses a unit outline by its width, 2·area/perimeter, not by its area.PlanSwatch, the plan's eight-colour palette, andplanSwatchNamed: kits name a swatch without depending on the plan library.- Sub-project 2b:
PlanServices.symbolDefinition(SymbolDefinitionRef) andsymbolsState;SymbolsState, moved from the plan library; a unit's label (kUnitLabelTag,unitLabelHeight,unitLabelStamp,unitLabelPayload,unitLabelAttrib, which builds a generated unit's label as an E5GeneratedAttrib, and the label's constantskUnitLabelMaxHeight,kUnitLabelTopShareandkUnitLabelTextAttrs);PlanGate.relabel; theunit:word namespace andvalidateHostWords;KitProblemCode.unitKindWord, which conformance reports for a unit kind the contract does not name without an English word.UnitLabelling.assigned: the label comes from a kit's type, the property panel or the host. - Sub-project 3a (the architecture kit's contract amendments): the symbol
box family (
SymbolBox,isOrthonormal,boxOfLeaves,boxOfEntry,servedTopOfEntry,boxOfDefinition,footprintOf) andplacementTransform, moved from the plan library; the object a property or section is shown for (PlanObject,DocumentPlanObject, which carry the kit's words), a read-onlyTextDisplay,LengthProperty.range,PropertySpec.visibleandPropertyField.visible; the one-context section builder (PlanSection);PlanType.fieldsOf,commitFieldandsectionFortake aDraftDocument, andfieldsOfandcommitFieldthe kit's words;PlanWords(word,maybe,text,decimalSeparator), whichKitWordsimplements, andKitNamesWords(decimalSeparator:); words with parameters (KitText,fillText,placeholdersOf, thetext:namespace invalidate,validateHostWordsand conformance's placeholder check) andnumberedNameIndex;ToolNotice;PlanKit.prepareandPlanBuild;PlanServices.liveTypeIdOf;KitProblemCode.settingsNeedObjectandplaceholderMismatch;package:jet_cad_2d_kit/testing.dartwithFakePlanServices.