Skip to content

Commit e5b79cd

Browse files
markusvoelterslisson
authored andcommitted
create-delete-render utility
1 parent f681a07 commit e5b79cd

File tree

8 files changed

+323
-89
lines changed

8 files changed

+323
-89
lines changed

mps/modules/ReactDemoLanguage.editor/models/ReactDemoLanguage.editor.modelix.mps

Lines changed: 43 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,6 @@
2828
<reference id="8310867745953086698" name="concept" index="3JBHV4" />
2929
<child id="8876946878573903455" name="component" index="gmrTS" />
3030
</concept>
31-
<concept id="8876946878573903439" name="org.modelix.mps.react.structure.GenericReactComponent" flags="ng" index="gmrTC">
32-
<property id="8876946878573977569" name="componentType" index="gmPZ6" />
33-
<child id="8876946878574187976" name="children" index="gn1nJ" />
34-
</concept>
3531
<concept id="5355184975888307501" name="org.modelix.mps.react.structure.StateVariable" flags="ng" index="2o1qlL">
3632
<child id="5355184975888310505" name="initializer" index="2o1p2P" />
3733
<child id="5355184975888307510" name="type" index="2o1qlE" />
@@ -61,24 +57,12 @@
6157
<child id="5355184975881056561" name="parameters" index="2rHO5H" />
6258
<child id="5355184975881056562" name="component" index="2rHO5I" />
6359
</concept>
64-
<concept id="2833354970324652966" name="org.modelix.mps.react.structure.When" flags="ng" index="1nAWFN">
65-
<child id="2833354970324652969" name="else" index="1nAWFW" />
66-
<child id="2833354970324652971" name="cases" index="1nAWFY" />
67-
</concept>
68-
<concept id="2833354970324652974" name="org.modelix.mps.react.structure.WhenCase" flags="ng" index="1nAWFV">
69-
<child id="2833354970324652977" name="compnent" index="1nAWF$" />
70-
<child id="2833354970324652975" name="condition" index="1nAWFU" />
71-
</concept>
7260
<concept id="2833354970324905743" name="org.modelix.mps.react.structure.RenderNode" flags="ng" index="1nBVpq">
7361
<child id="2833354970324905746" name="nodeToRender" index="1nBVp7" />
7462
</concept>
7563
<concept id="793519207835900435" name="org.modelix.mps.react.structure.EmptyContent" flags="ng" index="3ywjYg" />
7664
</language>
7765
<language id="f3061a53-9226-4cc5-a443-f952ceaf5816" name="jetbrains.mps.baseLanguage">
78-
<concept id="1215693861676" name="jetbrains.mps.baseLanguage.structure.BaseAssignmentExpression" flags="nn" index="d038R">
79-
<child id="1068498886297" name="rValue" index="37vLTx" />
80-
<child id="1068498886295" name="lValue" index="37vLTJ" />
81-
</concept>
8266
<concept id="4836112446988635817" name="jetbrains.mps.baseLanguage.structure.UndefinedType" flags="in" index="2jxLKc" />
8367
<concept id="1197027756228" name="jetbrains.mps.baseLanguage.structure.DotExpression" flags="nn" index="2OqwBi">
8468
<child id="1197027771414" name="operand" index="2Oq$k0" />
@@ -95,7 +79,6 @@
9579
<concept id="1068498886296" name="jetbrains.mps.baseLanguage.structure.VariableReference" flags="nn" index="37vLTw">
9680
<reference id="1068581517664" name="variableDeclaration" index="3cqZAo" />
9781
</concept>
98-
<concept id="1068498886294" name="jetbrains.mps.baseLanguage.structure.AssignmentExpression" flags="nn" index="37vLTI" />
9982
<concept id="1225271177708" name="jetbrains.mps.baseLanguage.structure.StringType" flags="in" index="17QB3L" />
10083
<concept id="4972933694980447171" name="jetbrains.mps.baseLanguage.structure.BaseVariableDeclaration" flags="ng" index="19Szcq">
10184
<child id="5680397130376446158" name="type" index="1tU5fm" />
@@ -165,6 +148,7 @@
165148
<concept id="3230484732402340359" name="org.modelix.mps.react.muicomponents.structure.TreeView" flags="ng" index="2zZIUS">
166149
<child id="3230484732402373646" name="selectionStateTracker" index="2zZAyL" />
167150
</concept>
151+
<concept id="184368653051773198" name="org.modelix.mps.react.muicomponents.structure.CreateDeleteRenderChild" flags="ng" index="Ekkdu" />
168152
<concept id="223742654172176291" name="org.modelix.mps.react.muicomponents.structure.Alignment" flags="ng" index="G4ZHx" />
169153
<concept id="223742654177875992" name="org.modelix.mps.react.muicomponents.structure.Typography" flags="ng" index="GuJNq">
170154
<property id="793519207812312126" name="style" index="3z6gAX" />
@@ -230,7 +214,6 @@
230214
<concept id="2879488090856848295" name="org.modelix.mps.react.muicomponents.structure.TextField" flags="ng" index="2Ly8ie">
231215
<child id="2041619518470150050" name="valueConverter" index="28JTQ0" />
232216
</concept>
233-
<concept id="6743690039082362463" name="org.modelix.mps.react.muicomponents.structure.NodeFactory" flags="ng" index="Vj$03" />
234217
<concept id="6743690039083720913" name="org.modelix.mps.react.muicomponents.structure.IHasSingleChildBinding" flags="ngI" index="VuCqd">
235218
<child id="6743690039083720914" name="data" index="VuCqe" />
236219
</concept>
@@ -299,7 +282,6 @@
299282
<concept id="1143234257716" name="jetbrains.mps.lang.smodel.structure.Node_GetModelOperation" flags="nn" index="I4A8Y" />
300283
<concept id="1171305280644" name="jetbrains.mps.lang.smodel.structure.Node_GetDescendantsOperation" flags="nn" index="2Rf3mk" />
301284
<concept id="1171323947159" name="jetbrains.mps.lang.smodel.structure.Model_NodesOperation" flags="nn" index="2SmgA7" />
302-
<concept id="1171999116870" name="jetbrains.mps.lang.smodel.structure.Node_IsNullOperation" flags="nn" index="3w_OXm" />
303285
<concept id="1144101972840" name="jetbrains.mps.lang.smodel.structure.OperationParm_Concept" flags="ng" index="1xMEDy">
304286
<child id="1207343664468" name="conceptArgument" index="ri$Ld" />
305287
</concept>
@@ -432,72 +414,53 @@
432414
</node>
433415
</node>
434416
<node concept="3ywjYg" id="5Qmp_LAzkEU" role="gmrQt" />
435-
<node concept="gmrQT" id="3XUo8X8ivOm" role="gmrQt">
436-
<ref role="3JBHV4" to="oyym:1XYAF4MuQ5s" resolve="Member" />
437-
<node concept="gmrTC" id="3XUo8X8ixcz" role="gmrTS">
438-
<property role="gmPZ6" value="mui.Box" />
439-
<node concept="2Ln$92" id="3XUo8X8iUVI" role="gn1nJ">
440-
<node concept="G4ZHx" id="3XUo8X8iUVJ" role="G4MFJ" />
441-
<node concept="2Ly8ie" id="3XUo8X8iTbp" role="2Ln$9p">
442-
<node concept="2Ly3GW" id="3XUo8X8iTbq" role="2Ly3GP">
443-
<ref role="2Ly3GY" to="tpck:h0TrG11" resolve="name" />
444-
<node concept="ggAI9" id="3XUo8X8iTu1" role="2Ly3GZ" />
417+
<node concept="gmrQT" id="af0_0CZGgg" role="gmrQt">
418+
<ref role="3JBHV4" to="oyym:1XYAF4MuPcd" resolve="Record" />
419+
<node concept="2LhRxX" id="af0_0CZH2u" role="gmrTS">
420+
<node concept="G4ZHx" id="af0_0CZH2v" role="G4Vnm" />
421+
<node concept="2Ln$92" id="af0_0Df4l9" role="2Ln$9p">
422+
<node concept="G4ZHx" id="af0_0Df4la" role="G4MFJ" />
423+
<node concept="2Lk9xs" id="af0_0CZHlp" role="2Ln$9p">
424+
<node concept="3z9kRR" id="af0_0CZHlq" role="3z8GDl">
425+
<ref role="3z9kRQ" to="6g1h:1LliyakInqe" resolve="default" />
445426
</node>
446-
</node>
447-
<node concept="2Lfa6Z" id="3XUo8X8iUmi" role="2Ln$9p" />
448-
<node concept="1nAWFN" id="3XUo8X8i_p3" role="2Ln$9p">
449-
<node concept="1nAWFV" id="3XUo8X8i_FH" role="1nAWFY">
450-
<node concept="2OqwBi" id="3XUo8X8iAp2" role="1nAWFU">
451-
<node concept="2OqwBi" id="5Qmp_LAFy$O" role="2Oq$k0">
452-
<node concept="ggAI9" id="3XUo8X8i_Yi" role="2Oq$k0" />
453-
<node concept="3TrEf2" id="5Qmp_LAFzaf" role="2OqNvi">
454-
<ref role="3Tt5mk" to="oyym:1XYAF4MuUxD" resolve="type" />
455-
</node>
456-
</node>
457-
<node concept="3w_OXm" id="3XUo8X8iAOR" role="2OqNvi" />
458-
</node>
459-
<node concept="Vj$03" id="5Qmp_LAQXbN" role="1nAWF$">
460-
<node concept="Vvv9j" id="5Qmp_LAWeAc" role="VuCqe">
461-
<ref role="Vvshh" to="oyym:1XYAF4MuUxD" resolve="type" />
462-
<node concept="ggAI9" id="5Qmp_LAWeTn" role="VvvGQ" />
463-
</node>
464-
</node>
427+
<node concept="Xl_RD" id="af0_0CZHWj" role="2Lk3Fj">
428+
<property role="Xl_RC" value="record" />
465429
</node>
466-
<node concept="2Ln$92" id="3XUo8X8iC1n" role="1nAWFW">
467-
<node concept="G4ZHx" id="3XUo8X8iC1o" role="G4MFJ" />
468-
<node concept="1nBVpq" id="5Qmp_LAzn9Z" role="2Ln$9p">
469-
<node concept="2OqwBi" id="5Qmp_LAzn_G" role="1nBVp7">
470-
<node concept="ggAI9" id="5Qmp_LAzntu" role="2Oq$k0" />
471-
<node concept="3TrEf2" id="5Qmp_LAzo9i" role="2OqNvi">
472-
<ref role="3Tt5mk" to="oyym:1XYAF4MuUxD" resolve="type" />
473-
</node>
474-
</node>
475-
</node>
476-
<node concept="2L3P8c" id="3XUo8X8iCTb" role="2Ln$9p">
477-
<node concept="2KN1Qe" id="3XUo8X8iCTf" role="2KN1Qq">
478-
<node concept="3clFbS" id="3XUo8X8iCTh" role="2KN1Q1">
479-
<node concept="3clFbF" id="3XUo8X8iQNP" role="3cqZAp">
480-
<node concept="37vLTI" id="5Qmp_LAr8rn" role="3clFbG">
481-
<node concept="10Nm6u" id="5Qmp_LAr8Iz" role="37vLTx" />
482-
<node concept="2OqwBi" id="5Qmp_LAr6cm" role="37vLTJ">
483-
<node concept="ggAI9" id="5Qmp_LAr626" role="2Oq$k0" />
484-
<node concept="3TrEf2" id="5Qmp_LAr6Cb" role="2OqNvi">
485-
<ref role="3Tt5mk" to="oyym:1XYAF4MuUxD" resolve="type" />
486-
</node>
487-
</node>
488-
</node>
489-
</node>
490-
</node>
491-
</node>
492-
<node concept="2KPZRd" id="3XUo8X8iDKW" role="2L3P8e">
493-
<node concept="2Kq$Lj" id="3XUo8X8iDKY" role="2Kq$h0">
494-
<property role="2Kq$Li" value="mui.icons.Clear" />
495-
</node>
496-
</node>
497-
</node>
430+
</node>
431+
<node concept="2Ly8ie" id="af0_0CZJVe" role="2Ln$9p">
432+
<node concept="2Ly3GW" id="af0_0CZJVi" role="2Ly3GP">
433+
<ref role="2Ly3GY" to="tpck:h0TrG11" resolve="name" />
434+
<node concept="ggAI9" id="af0_0CZKel" role="2Ly3GZ" />
498435
</node>
499436
</node>
500437
</node>
438+
<node concept="Ekkdu" id="af0_0D5LHB" role="2Ln$9p">
439+
<node concept="Vvv9j" id="af0_0D5LHD" role="VuCqe">
440+
<ref role="Vvshh" to="oyym:1XYAF4MuRh6" resolve="members" />
441+
<node concept="ggAI9" id="af0_0D5M0$" role="VvvGQ" />
442+
</node>
443+
</node>
444+
</node>
445+
</node>
446+
<node concept="3ywjYg" id="af0_0CZFPJ" role="gmrQt" />
447+
<node concept="gmrQT" id="3XUo8X8ivOm" role="gmrQt">
448+
<ref role="3JBHV4" to="oyym:1XYAF4MuQ5s" resolve="Member" />
449+
<node concept="2Ln$92" id="af0_0CUnym" role="gmrTS">
450+
<node concept="G4ZHx" id="af0_0CUnyn" role="G4MFJ" />
451+
<node concept="2Ly8ie" id="af0_0CUnyo" role="2Ln$9p">
452+
<node concept="2Ly3GW" id="af0_0CUnyp" role="2Ly3GP">
453+
<ref role="2Ly3GY" to="tpck:h0TrG11" resolve="name" />
454+
<node concept="ggAI9" id="af0_0CUnyq" role="2Ly3GZ" />
455+
</node>
456+
</node>
457+
<node concept="2Lfa6Z" id="af0_0CUnyr" role="2Ln$9p" />
458+
<node concept="Ekkdu" id="af0_0D5Nbh" role="2Ln$9p">
459+
<node concept="Vvv9j" id="af0_0D5Nbj" role="VuCqe">
460+
<ref role="Vvshh" to="oyym:1XYAF4MuUxD" resolve="type" />
461+
<node concept="ggAI9" id="af0_0D5Nue" role="VvvGQ" />
462+
</node>
463+
</node>
501464
</node>
502465
</node>
503466
<node concept="3ywjYg" id="3XUo8X8ivpv" role="gmrQt" />

mps/modules/ReactDemoLanguage.sandbox/models/ReactDemoLanguage.sandbox.m1.mps

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,9 @@
2525
</concept>
2626
<concept id="223742654175067082" name="ReactDemoLanguage.structure.Blank" flags="ng" index="GbXW8" />
2727
<concept id="2269421348088157535" name="ReactDemoLanguage.structure.IntType" flags="ng" index="H1gZI" />
28+
<concept id="2269421348088140557" name="ReactDemoLanguage.structure.Record" flags="ng" index="H1sAW">
29+
<child id="2269421348088149062" name="members" index="H1uVR" />
30+
</concept>
2831
<concept id="2269421348088144220" name="ReactDemoLanguage.structure.Member" flags="ng" index="H1vJH">
2932
<child id="2269421348088162409" name="type" index="H1jbo" />
3033
</concept>
@@ -3707,7 +3710,14 @@
37073710
</node>
37083711
<node concept="H1vJH" id="3XUo8X8irsG">
37093712
<property role="TrG5h" value="StringMember" />
3710-
<node concept="H1gZI" id="af0_0CHm$E" role="H1jbo" />
3713+
<node concept="H1gZI" id="af0_0CZEv6" role="H1jbo" />
3714+
</node>
3715+
<node concept="H1sAW" id="af0_0Da16s">
3716+
<property role="TrG5h" value="R1" />
3717+
<node concept="H1vJH" id="af0_0DjA4u" role="H1uVR">
3718+
<property role="TrG5h" value="M1" />
3719+
<node concept="H1gZI" id="af0_0DjADz" role="H1jbo" />
3720+
</node>
37113721
</node>
37123722
</model>
37133723

mps/modules/ReactDemoLanguage/models/ReactDemoLanguage.structure.mps

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,15 +229,18 @@
229229
<property role="IQ2ns" value="2269421348088149062" />
230230
<property role="20lmBu" value="fLJjDmT/aggregation" />
231231
<property role="20kJfa" value="members" />
232-
<property role="20lbJX" value="fLJekj4/_1" />
233232
<ref role="20lvS9" node="1XYAF4MuQ5s" resolve="Member" />
234233
</node>
234+
<node concept="PrWs8" id="af0_0CZKxl" role="PzmwI">
235+
<ref role="PrY4T" to="tpck:h0TrEE$" resolve="INamedConcept" />
236+
</node>
235237
</node>
236238
<node concept="1TIwiD" id="1XYAF4MuQ5s">
237239
<property role="EcuMT" value="2269421348088144220" />
238240
<property role="3GE5qa" value="record" />
239241
<property role="TrG5h" value="Member" />
240242
<property role="19KtqR" value="true" />
243+
<property role="34LRSv" value="member" />
241244
<ref role="1TJDcQ" to="tpck:gw2VY9q" />
242245
<node concept="PrWs8" id="1XYAF4MuQFh" role="PzmwI">
243246
<ref role="PrY4T" to="tpck:h0TrEE$" resolve="INamedConcept" />

0 commit comments

Comments
 (0)